:root{--ink:#26364a;--navy:#243f65;--navy-dark:#1c304d;--rust:#b96b50;--cream:#f4efe5;--paper:#fffdf8;--sky:#e4edf1;--line:#d2d8d8;--muted:#5d6770;--max:1240px;--serif:Georgia,"Times New Roman",serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;color:var(--ink);background:var(--paper);font:17px/1.62 var(--sans);overflow-x:hidden}a{color:inherit}img{max-width:100%;display:block}button,input,textarea{font:inherit}h1,h2,h3,p{overflow-wrap:normal;word-break:normal}h1,h2,h3{margin:0;font-family:var(--serif);font-weight:500;line-height:1.04}h1{font-size:clamp(50px,5.55vw,82px);letter-spacing:-.045em}h2{font-size:clamp(43px,4.8vw,70px);letter-spacing:-.035em}.skip-link{position:fixed;z-index:100;top:12px;left:12px;padding:10px 14px;color:#fff;background:var(--navy);transform:translateY(-150%)}.skip-link:focus{transform:none}
.site-header{position:sticky;z-index:40;top:0;min-height:86px;padding:0 max(24px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:1fr auto 110px;align-items:center;gap:42px;border-bottom:1px solid var(--line);background:rgba(255,253,248,.97)}.site-name{text-decoration:none;font:700 22px/1 var(--serif)}.site-name span{color:var(--rust);font:800 11px/1 var(--sans)}.main-nav{display:flex;gap:31px}.main-nav a{text-decoration:none;font-size:14px;font-weight:760}.main-nav a:hover,.main-nav a:focus-visible{color:var(--rust)}.brand{width:108px;justify-self:end}.brand img{width:100%;height:auto}.menu-button{display:none}.eyebrow{margin:0 0 17px;color:var(--rust);font-size:11px;font-weight:850;letter-spacing:.17em;text-transform:uppercase}.eyebrow.navy{color:var(--navy)}.button{min-height:52px;width:fit-content;padding:13px 24px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:14px;font-weight:850}.button.rust{color:#fff;background:var(--rust)}.button.rust:hover,.button.rust:focus-visible{background:#a2523a}.image-frame{position:relative;margin:0;overflow:hidden}.image-frame img{width:100%;height:100%;object-fit:cover}.image-frame figcaption{position:absolute;right:9px;bottom:9px;padding:4px 7px;color:#fff;background:rgba(28,48,77,.86);font-size:10px;line-height:1.15}
.hero{min-height:760px;display:grid;grid-template-columns:1.06fr .94fr;background:var(--cream)}.hero-image{min-height:760px}.hero-image img{object-position:32% center}.hero-copy{padding:80px max(24px,calc((100vw - var(--max))/2)) 80px 70px;display:flex;flex-direction:column;justify-content:center}.hero-copy>p:not(.eyebrow){max-width:570px;margin:31px 0 34px;color:var(--muted);font-size:18px}.details-section{padding:118px max(24px,calc((100vw - var(--max))/2)) 127px;background:var(--paper)}.details-lead{max-width:880px}.details-grid{margin-top:80px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.details-grid article{min-height:255px;padding:34px 32px;border:1px solid var(--line);background:var(--paper)}.details-grid article:before{content:"";width:50px;height:5px;display:block;margin-bottom:43px;background:var(--rust)}.details-grid article:nth-child(2):before{background:var(--navy)}.details-grid article:nth-child(3):before{background:#8a9b82}.details-grid strong{font:36px/1 var(--serif)}.details-grid p{margin:18px 0 0;color:var(--muted);font-size:15px}
.place-section{min-height:735px;display:grid;grid-template-columns:.9fr 1.1fr;background:var(--navy)}.place-copy{max-width:680px;padding:96px 66px 96px max(24px,calc((100vw - var(--max))/2));display:flex;flex-direction:column;justify-content:center;color:#fff}.place-copy .eyebrow{color:#f4bca7}.place-copy h2{font-size:clamp(44px,4.8vw,68px)}.place-copy>p:not(.eyebrow){margin:29px 0;color:#d9e4ee}.text-cta{width:fit-content;margin-top:6px;padding-bottom:8px;border-bottom:1px solid #f4bca7;color:#fff;text-decoration:none;font-size:15px;font-weight:800}.text-cta span{margin-left:15px;color:#f4bca7}.place-image{min-height:735px}.place-image img{object-position:58% center}
.contact-section{padding:110px 0 122px;background:var(--sky)}.contact-heading,.contact-layout{width:min(calc(100% - 48px),var(--max));margin-right:auto;margin-left:auto}.contact-heading{margin-bottom:48px}.contact-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:46px;align-items:start}#contact-form{padding:42px;border:1px solid var(--line);background:#fff}fieldset{margin:0;padding:0;border:0}legend{margin-bottom:15px;font-size:14px;font-weight:800}.radio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.radio-grid label{position:relative;cursor:pointer}.radio-grid input{position:absolute;opacity:0;pointer-events:none}.radio-grid span{min-height:54px;padding:10px 12px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);font-size:14px;font-weight:750;text-align:center}.radio-grid input:checked+span{color:#fff;border-color:var(--navy);background:var(--navy)}.radio-grid input:focus-visible+span{outline:3px solid rgba(36,63,101,.23);outline-offset:2px}.form-grid{margin-top:25px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.wide{grid-column:1/-1}.field>span{font-size:14px;font-weight:760}.field input,.field textarea{width:100%;border:1px solid var(--line);border-radius:0;background:var(--paper)}.field input{height:50px;padding:10px 12px}.field textarea{min-height:135px;padding:12px;resize:vertical}.field input:focus,.field textarea:focus{border-color:var(--navy);outline:0;box-shadow:0 0 0 3px rgba(36,63,101,.12)}.honeypot{position:absolute;left:-9999px}.privacy{margin-top:22px;display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:start;font-size:14px;cursor:pointer}.privacy input{width:17px;height:17px;margin:4px 0 0;accent-color:var(--navy)}.privacy a,.terms a{text-underline-offset:3px}.terms{margin:10px 0 0 28px;font-size:14px}.form-status{min-height:0;margin:15px 0 0;color:#9b3c30;font-size:14px;font-weight:700}.form-status:empty{display:none}#contact-form button{min-height:52px;margin-top:24px;padding:12px 24px;border:0;color:#fff;background:var(--rust);font-weight:850;cursor:pointer}#contact-form button:hover,#contact-form button:focus-visible{background:#a2523a}.personal-contact{position:sticky;top:110px;padding:41px 33px 38px;border-left:9px solid var(--rust);color:#fff;background:var(--navy)}.contact-kicker{margin:0 0 31px;color:#f4bca7;font-size:11px;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.personal-contact h2{font-size:43px}.personal-contact>p:nth-of-type(2){margin:4px 0 25px;color:#d9e4ee}.personal-contact a{display:block;width:fit-content;margin-top:8px;font-weight:760;text-underline-offset:4px}.contact-note{margin:30px 0 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.24);color:#d9e4ee;font-size:14px}footer{padding:36px max(24px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:28px;color:#d6e2ec;background:var(--navy-dark);font-size:13px}.footer-name{display:flex;flex-direction:column}.footer-name span{color:#fff;font:19px var(--serif)}.footer-name small{color:#aabbd0;font-size:11px}footer nav{display:flex;gap:18px}footer a{text-underline-offset:4px}
@media(max-width:1080px){.site-header{grid-template-columns:1fr auto 104px;gap:21px}.brand{width:101px}.main-nav{gap:20px}.hero{grid-template-columns:1fr 1fr}.hero-copy{padding-left:50px}.place-copy{padding-right:49px}.contact-layout{grid-template-columns:minmax(0,1fr) 292px}}
@media(max-width:850px){html{scroll-padding-top:0}.site-header{position:relative;min-height:76px;padding:0 18px;grid-template-columns:1fr auto auto;gap:12px}.menu-button{width:42px;height:42px;padding:10px;border:0;display:flex;flex-direction:column;justify-content:center;gap:7px;background:transparent;cursor:pointer}.menu-button i{width:22px;height:2px;display:block;background:var(--ink);transition:transform 170ms ease}.menu-button[aria-expanded="true"] i:first-of-type{transform:translateY(4.5px) rotate(45deg)}.menu-button[aria-expanded="true"] i:last-of-type{transform:translateY(-4.5px) rotate(-45deg)}.main-nav{position:absolute;z-index:20;top:76px;right:0;left:0;padding:18px 24px 24px;display:none;flex-direction:column;gap:0;border-top:1px solid var(--line);background:var(--paper)}.main-nav.is-open{display:flex}.main-nav a{padding:11px 0;font-size:16px}.brand{width:91px}.hero{min-height:0;grid-template-columns:1fr}.hero-copy{grid-row:1;padding:72px max(24px,calc((100vw - 690px))/2) 79px}.hero-image{min-height:540px}.hero-image img{object-position:30% center}.details-section{padding-top:88px;padding-bottom:98px}.details-grid{grid-template-columns:1fr}.details-grid article{min-height:0}.details-grid article:before{margin-bottom:25px}.place-section{grid-template-columns:1fr}.place-copy{max-width:690px;padding:75px max(24px,calc((100vw - 690px))/2) 82px}.place-image{min-height:590px}.contact-section{padding:88px 0 98px}.contact-layout{grid-template-columns:1fr}.personal-contact{position:static}footer{grid-template-columns:1fr auto}footer>span:last-child{grid-column:1/-1}}
@media(max-width:560px){body{font-size:16px}.site-header{padding:0 14px;gap:7px}.site-name{font-size:19px}.site-name span{font-size:10px}.brand{width:82px}.hero-copy{padding:57px 16px 67px}h1{font-size:clamp(43px,12.4vw,56px)}.hero-copy>p:not(.eyebrow){font-size:17px}.hero-image{min-height:390px}.hero-image img{object-position:27% center}.details-section{padding:70px 16px 77px}.details-lead h2,.place-copy h2,.contact-heading h2{font-size:clamp(38px,11vw,49px)}.details-grid{margin-top:50px}.details-grid article{padding:29px 26px}.place-copy{padding:63px 16px 71px}.place-image{min-height:390px}.place-image img{object-position:60% center}.contact-section{padding:70px 0 78px}.contact-heading,.contact-layout{width:calc(100% - 32px)}.contact-heading{margin-bottom:34px}#contact-form{padding:23px 18px 25px}.radio-grid,.form-grid{grid-template-columns:1fr}.radio-grid span{min-height:48px;justify-content:flex-start;text-align:left}.field.wide{grid-column:auto}#contact-form button{width:100%;padding-right:12px;padding-left:12px}.personal-contact{padding:32px 24px}footer{padding:30px 16px;grid-template-columns:1fr;gap:20px}footer nav{flex-wrap:wrap}footer>span:last-child{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important}}
