:root{--olive:#565b20;--deep:#30351b;--cream:#eeebdd;--paper:#faf9f4;--ink:#272c21;--muted:#62665b;--line:#d6d6c7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a67b29;outline-offset:6px}.skip{position:fixed;left:20px;top:-100px;padding:12px;background:white;z-index:20}.skip:focus{top:10px}.header{height:116px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;background:var(--cream);border-bottom:1px solid #565b2025}.brand{text-decoration:none;display:inline-block;color:var(--olive)}.brand-name{font-size:28px;line-height:1;letter-spacing:.16em;display:block;font-weight:500}.brand-small{display:block;font-size:11px;letter-spacing:.37em;line-height:2.6;text-align:center}.header nav{display:flex;align-items:center;gap:36px;font-size:14px}.header nav a{text-decoration:none}.header nav a:hover{text-decoration:underline;text-underline-offset:5px}.nav-contact{border:1px solid var(--olive);padding:11px 24px}.menu-toggle{display:none}.mobile-menu[hidden]{display:none}.hero{background:var(--cream);display:grid;grid-template-columns:1.1fr .9fr;position:relative}.hero-copy{padding:75px 5% 60px 11%;align-self:center}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.17em;line-height:1.6;margin:0 0 26px;color:var(--olive)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em;line-height:1.08}h1{font-size:clamp(48px,4.7vw,76px);margin-bottom:27px;max-width:680px}h1 em,h2 em{font-weight:400;color:var(--olive)}.hero-description{font-size:17px;line-height:1.75;max-width:450px;margin-bottom:31px;color:#55594c}.button{display:inline-flex;background:var(--olive);color:white;padding:16px 27px;text-decoration:none;font-size:14px;transition:background .2s}.button:hover{background:var(--deep)}.hero-note{font-size:12px;line-height:1.8;letter-spacing:.025em;color:var(--muted);margin:27px 0 0}.hero-photo{position:relative;min-height:600px;overflow:hidden;background:#ddd}.hero-photo img{position:absolute;inset:0;width:100%;height:auto;min-height:132%;object-fit:cover;object-position:center top}.portrait-caption{position:absolute;bottom:0;left:0;right:0;background:var(--olive);color:var(--cream);padding:25px 8%;display:flex;justify-content:space-between;align-items:center;gap:14px}.portrait-caption span:first-child{font-size:13px;letter-spacing:.15em}.portrait-caption span:last-child{font:italic 19px Georgia,serif}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;padding:21px 6%;border-top:1px solid #565b202b;color:var(--olive);font-size:11px;letter-spacing:.16em}.section{padding:95px 6%;max-width:1600px;margin:auto}h2{font-size:clamp(35px,3.4vw,52px);margin-bottom:28px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.intro-copy{color:var(--muted);max-width:510px;padding-top:28px}.intro-copy p:first-child{font-size:21px;line-height:1.65;color:var(--ink)}.services{padding-top:5px}.section-heading{display:flex;gap:50px;justify-content:space-between;align-items:end;margin-bottom:28px}.section-heading>p{max-width:340px;color:var(--muted);margin-bottom:35px}.service{border-top:1px solid var(--line)}.service:last-child{border-bottom:1px solid var(--line)}.service summary{display:flex;align-items:center;gap:36px;padding:28px 0;cursor:pointer;list-style:none}.service summary::-webkit-details-marker{display:none}.number{font:italic 20px Georgia,serif;color:var(--olive);width:32px}.service-title{font:30px Georgia,serif;letter-spacing:-.02em;flex:1}.service-title>span{display:block;font:14px Arial,sans-serif;color:var(--muted);letter-spacing:0;margin-top:12px}.expand{width:32px;height:32px;position:relative;flex-shrink:0}.expand:before,.expand:after{content:'';position:absolute;top:15px;left:8px;background:var(--olive);width:16px;height:1px}.expand:after{transform:rotate(90deg)}details[open] .expand:after{transform:rotate(0deg)}.service-body{padding:0 62px 28px 68px;display:grid;grid-template-columns:1fr 1fr;gap:0 8%;color:var(--muted)}.service-body p{max-width:470px}.service-body ul{list-style:none;margin:0;padding:0;font-size:14px}.service-body li{padding:2px 0 8px 16px;position:relative}.service-body li:before{content:'—';position:absolute;left:0;color:var(--olive)}.fine-print{font-size:12px;grid-column:1/-1;margin-bottom:0}.clarity{background:var(--olive);color:var(--cream)}.clarity-inner{padding-top:80px;padding-bottom:82px}.clarity .eyebrow,.clarity em{color:#d9dbaf}.clarity h2{font-size:clamp(44px,4.8vw,72px)}.clarity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6%;margin-top:55px}.clarity-grid>div{border-top:1px solid #eeebdd55;padding-top:28px}.small-label{display:block;font-size:11px;font-weight:600;letter-spacing:.14em;margin-bottom:17px}.clarity h3{font:25px Georgia,serif;margin-bottom:18px}.clarity-grid p{font-size:15px;color:#e0e1cc;margin:0}.about{display:grid;grid-template-columns:.65fr 1.35fr;gap:12%;align-items:center}.about-mark{aspect-ratio:1/1.1;background:var(--cream);color:var(--olive);font:italic 100px Georgia,serif;display:flex;flex-direction:column;justify-content:center;align-items:center;border-top:6px solid var(--olive)}.about-mark span{text-align:center;font:11px/2 Arial,sans-serif;letter-spacing:.12em;margin-top:20px}.about p:not(.eyebrow){color:var(--muted);max-width:655px}.text-link{text-decoration-thickness:1px;text-underline-offset:7px;color:var(--olive);display:inline-block;margin-top:9px;font-size:14px}.fit{padding-top:0;display:grid;grid-template-columns:1fr 1fr;gap:10%}.fit-list p{border-bottom:1px solid var(--line);padding:0 0 20px;margin:0 0 20px;line-height:1.65;color:var(--muted)}.contact{background:var(--cream);max-width:none;display:grid;grid-template-columns:1.15fr .85fr;gap:10%;padding-top:85px;padding-bottom:85px}.contact h2{font-size:clamp(43px,4.3vw,66px)}.contact p:not(.eyebrow){max-width:480px;color:var(--muted)}.contact-details{border-left:1px solid #565b2050;padding-left:14%;align-self:center}.contact-details a{text-decoration:none;color:var(--olive);display:block}.contact-details a:hover{text-decoration:underline;text-underline-offset:5px}.contact-details .email{font:clamp(23px,2.3vw,35px)/1.35 Georgia,serif;margin-bottom:33px;overflow-wrap:anywhere}.contact-details .phone{font:29px Georgia,serif}.footer{padding:40px 6%;display:flex;gap:28px;align-items:center;justify-content:space-between}.footer p{font-size:12px;color:var(--muted);margin:0}.footer>span,.footer>a:last-child{font-size:12px;color:var(--muted)}.footer .brand-name{font-size:21px}.footer .brand-small{font-size:9px}.privacy{max-width:820px;min-height:65vh}.privacy h1{font-size:52px}.privacy h2{font:28px Georgia,serif;margin-top:35px}
@media(min-width:1600px){.hero-copy{padding-left:max(11%,calc((100vw - 1400px)/2))}.hero-photo{max-height:760px}}
@media(max-width:900px){.header{height:92px}.header nav{gap:22px}.hero-copy{padding:48px 8% 45px 12%}.hero-photo{min-height:600px}.portrait-caption{display:block;padding:21px 8%}.portrait-caption span{display:block}.portrait-caption span:last-child{margin-top:6px}.hero-note{font-size:11px}h1{font-size:49px}.section{padding-top:70px;padding-bottom:70px}.services{padding-top:0}.about{gap:7%;grid-template-columns:.7fr 1.3fr}.about-mark{font-size:75px}.fit{padding-top:0}.service-title{font-size:26px}.service-body{gap:5%;padding-right:0}.clarity-grid{gap:5%}.footer{flex-wrap:wrap}}
@media(max-width:640px){html{scroll-padding-top:20px}.header{height:88px;padding:0 6%}.brand-name{font-size:24px}.brand-small{font-size:10px}.header nav{display:none}.menu-toggle{display:flex;gap:18px;align-items:center;border:0;background:transparent;color:var(--olive);padding:10px 0;font-size:14px}.menu-toggle span{font-size:25px}.mobile-menu{display:flex;flex-direction:column;background:var(--cream);padding:8px 6% 25px;gap:17px;border-bottom:1px solid var(--line)}.mobile-menu a{text-decoration:none}.hero{display:block}.hero-copy{padding:48px 6% 42px}.eyebrow{font-size:11px;margin-bottom:22px}h1{font-size:clamp(42px,10.8vw,63px);max-width:550px;line-height:1.05}.hero-description{font-size:16px;max-width:420px}.hero-note{margin-top:24px;font-size:12px}.hero-photo{height:480px;min-height:0;margin:0 6%;}.hero-photo img{object-fit:cover;object-position:center 12%;transform:none;clip-path:inset(0 0 0 0);height:auto;min-height:100%;top:-20px}.portrait-caption{padding:18px 6%;display:flex}.portrait-caption span:first-child{font-size:11px}.portrait-caption span:last-child{font-size:17px;margin:0}.hero-bottom{display:block;padding:23px 6%;font-size:10px;line-height:1.9;border:0}.hero-bottom span{display:block}.section{padding:56px 6%}.intro,.fit,.about,.contact{grid-template-columns:1fr;gap:20px}.intro h2{margin-bottom:0}h2{font-size:36px}.intro-copy{padding:0}.intro-copy p:first-child{font-size:19px}.services{padding-top:0}.section-heading{display:block;margin-bottom:22px}.section-heading>p{max-width:100%;margin-bottom:0}.service summary{gap:14px;padding:24px 0}.number{font-size:17px;width:22px}.service-title{font-size:24px;line-height:1.18}.service-title>span{font-size:13px;line-height:1.5}.service-body{display:block;padding:0 0 23px 36px;font-size:15px}.service-body ul{font-size:13px}.expand{width:26px}.clarity h2{font-size:46px}.clarity-grid{grid-template-columns:1fr;gap:28px;margin-top:35px}.clarity-grid>div{padding-top:22px}.clarity-grid h3{margin-bottom:12px}.small-label{font-size:11px}.about-mark{display:none}.fit{padding-top:0;gap:10px}.fit h2{font-size:34px}.contact h2{font-size:43px}.contact-details{border-left:0;border-top:1px solid #565b2050;padding:28px 0 0}.contact-details .email{font-size:29px}.contact-details .email br{display:none}.contact-details .phone{font-size:27px}.footer{display:grid;grid-template-columns:1fr auto;gap:25px 15px;padding:32px 6%}.footer p{max-width:150px}.footer>span{font-size:11px}.footer>a:last-child{text-align:right}.privacy h1{font-size:43px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
