@import url('/assets/fonts/fonts.css');
:root{--espresso:#352b26;--cream:#f2ebdd;--paper:#faf7f0;--brass:#ad8c60;--muted:#756a61;--line:#d8cec0;--serif:'Source Serif 4',Georgia,serif;--sans:Manrope,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--espresso);font:16px/1.7 var(--sans)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #a36a29;outline-offset:6px}.skip{position:fixed;top:-80px;left:20px;background:var(--cream);padding:12px;z-index:20}.skip:focus{top:10px}.header{height:112px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--cream);gap:28px}.brand{font:600 35px/.95 var(--serif);letter-spacing:-1.5px;display:inline-block}.brand span{display:block;font:500 8px/1.8 var(--sans);letter-spacing:2px;margin-top:9px}.header nav{display:flex;gap:32px;font-size:14px}.header nav a:hover,.text-link:hover{color:#947044}.header-cta{font-size:14px;border-bottom:1px solid var(--espresso);padding:10px 0}.header-cta span{margin-left:32px;font-size:20px}.hero{display:grid;grid-template-columns:48% 52%;min-height:660px;background:var(--espresso);color:var(--cream)}.hero-copy{padding:66px 8% 30px 10.4%;display:flex;flex-direction:column;align-items:flex-start}.eyebrow,.section-label,.small-index{font-size:12px;letter-spacing:2px;font-weight:500}.hero .eyebrow{color:#d0b994;letter-spacing:1.8px;margin:0 0 25px}h1,h2,h3,p{margin-top:0}h1{font:400 clamp(58px,5.7vw,91px)/1.06 var(--serif);letter-spacing:-3px;margin-bottom:28px}em{font-weight:400;color:#cfb58f}h1 em{font-size:1.07em}.hero-description{font-size:16px;line-height:1.9;color:#e0d6ca;margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:18px 25px;font-size:14px;font-weight:600;cursor:pointer;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:23px;line-height:1}.light{background:var(--cream);color:var(--espresso)}.light:hover{background:#fffaf1}.dark{background:var(--espresso);color:var(--cream)}.dark:hover{background:#514137}.hero-bottom{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:auto;padding-top:45px}.hero-bottom span{font-size:10px;letter-spacing:1.8px;line-height:1.8;color:#c9bfb3}.hero-bottom a{font-size:26px}.hero-visual{margin:0;position:relative;overflow:hidden;min-height:660px}.hero-visual img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:56% 50%}.hero-visual:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#201b1588)}figcaption{position:absolute;z-index:1;bottom:30px;left:30px;right:30px;font-size:11px;letter-spacing:2px;color:white;display:flex;justify-content:space-between;gap:20px}figcaption span{font-size:10px;letter-spacing:.5px;opacity:.8}.section{padding:100px 7%;scroll-margin-top:20px}.section-label{display:flex;align-items:center;gap:35px;color:var(--muted);margin-bottom:36px}.short-line{display:block;width:52px;height:1px;background:var(--brass)}h2{font:400 clamp(36px,3.6vw,57px)/1.14 var(--serif);letter-spacing:-1.6px;margin-bottom:32px}h3{font:400 29px/1.25 var(--serif);letter-spacing:-.4px}.approach{display:grid;grid-template-columns:24% 1fr;padding-top:105px;padding-bottom:105px}.approach .section-label{align-items:flex-start;padding-top:13px;gap:20px}.approach h2{font-size:clamp(35px,3.2vw,49px)}.approach h2 span{color:#8a7d70}.intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px;font-size:15px;color:#665c54}.intro-columns p{margin-bottom:0}.scope{background:var(--cream)}.scope-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:70px}.scope-heading>p{max-width:330px;margin-top:6px;color:#665c54;font-size:15px}.service-list{margin-top:28px}.service-list details{border-top:1px solid #c9bdad}.service-list details:last-child{border-bottom:1px solid #c9bdad}summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:28px;padding:26px 0}summary::-webkit-details-marker{display:none}summary h3{margin:0;font-size:30px}.number{font-size:13px;color:#8a7359;min-width:40px}.plus{margin-left:auto;font:300 28px/1 var(--sans);transition:transform .2s}details[open] .plus{transform:rotate(45deg)}.service-body{margin-left:68px;display:grid;grid-template-columns:1.05fr 1fr;gap:80px;padding:0 0 30px;color:#665c54;font-size:15px}.service-body p{margin-bottom:0;max-width:440px}.service-body ul{margin:0;padding-left:20px}.service-body li{padding:2px 0}.audience h2{margin-bottom:52px}.audience-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr}.audience article{padding:0 32px;border-left:1px solid var(--line);display:flex;flex-direction:column}.audience article:first-child{padding-left:0;border:0}.audience article:last-child{padding-right:0}.small-index{color:#7f6a50;font-size:10px;letter-spacing:1.6px}.audience h3{margin:23px 0;font-size:30px}.audience p{font-size:15px;color:#665c54}.audience a{font-size:13px;font-weight:600;margin-top:auto;padding-top:16px;display:flex;gap:20px;align-items:center}.audience a span{font-size:22px}.transition{display:grid;grid-template-columns:1fr 1fr;gap:100px;background:var(--espresso);color:var(--cream)}.transition .eyebrow{color:#c5aa85}.transition h2{font-size:clamp(38px,3.5vw,55px);margin-top:35px}.transition-title>p:not(.eyebrow){max-width:380px;color:#d0c4b8;font-size:15px}.text-link{border-bottom:1px solid #8a7560;padding:14px 0;display:inline-flex;gap:50px;font-size:14px;margin-top:22px}.steps{list-style:none;margin:0;padding:0}.steps li{display:flex;gap:28px;border-top:1px solid #625248;padding:24px 0 12px}.steps li>span{font-size:12px;color:#c4a77f;padding-top:6px}.steps h3{font-size:26px;margin-bottom:10px}.steps p{color:#cbbfb3;font-size:14px;line-height:1.8}.questions{display:grid;grid-template-columns:1fr 1.35fr;gap:70px}.questions .eyebrow{color:#826c53}.questions h2{font-size:45px}.questions details{border-bottom:1px solid var(--line)}.questions summary{font-size:16px;font-weight:500;gap:25px;padding:22px 0}.questions details:first-child summary{padding-top:0}.questions details p{font-size:15px;color:#665c54;padding-right:25px}.contact{background:var(--cream);display:grid;grid-template-columns:1fr 1.1fr;gap:95px}.contact .eyebrow{color:#7f6a50}.contact h2{font-size:clamp(45px,4.5vw,70px);margin-top:28px}.contact em{color:#8c704d}.contact-copy>p:not(.eyebrow){max-width:360px;color:#665c54;font-size:15px}.contact .next-step{border-top:1px solid #c9bdad;padding-top:24px;margin-top:30px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}label{display:block;font-size:13px;font-weight:600;margin-bottom:9px}label span{font-weight:400;color:#6f6358}input,select,textarea{width:100%;background:transparent;border:0;border-bottom:1px solid #a79a88;border-radius:0;padding:10px 0;font-size:16px;color:var(--espresso);margin-bottom:24px;min-height:46px}textarea{resize:vertical;min-height:110px}input[aria-invalid=true]{border-bottom:2px solid #a33829}::placeholder{color:#756b60;font-size:14px}.error{display:block;color:#922d20;font-size:12px;margin-top:-19px;margin-bottom:15px}.error:empty{display:none}.privacy-note{font-size:12px;color:#756b60;margin-top:-7px;margin-bottom:23px}.preview-notice{font-size:12px;line-height:1.6;background:#e5dccd;border-left:2px solid #a1845f;padding:12px 15px;margin-bottom:25px}[hidden]{display:none!important}#form-status{font-size:14px;margin:15px 0 0}button:disabled{opacity:.65;cursor:wait}footer{padding:50px 7% 24px;background:var(--espresso);color:var(--cream)}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-bottom:44px}.footer-top p{font:italic 28px var(--serif);margin:0;color:#c5ad8b}.footer-top>a:last-child{font-size:12px}.footer-bottom{border-top:1px solid #625248;padding-top:20px;display:flex;justify-content:space-between;font-size:10px;color:#b9ab9d;letter-spacing:.6px}
@media(min-width:1600px){.hero{min-height:760px}.hero-visual{min-height:760px}.hero-copy{padding-top:90px}.section{padding-left:max(7%,calc((100vw - 1380px)/2));padding-right:max(7%,calc((100vw - 1380px)/2))}}@media(max-width:1100px){.header nav{gap:20px}.header{padding:0 4%;gap:20px}.hero-copy{padding-left:8%;padding-right:7%}h1{font-size:67px}.hero .eyebrow{font-size:10px}.button{padding:16px 18px;gap:18px;font-size:13px}.approach{grid-template-columns:1fr}.approach .section-label{margin-bottom:30px}.section{padding:75px 6%}.transition,.contact{gap:50px}.audience article{padding:0 20px}.audience h3{font-size:26px}.service-body{gap:40px}}@media(max-width:760px){html{scroll-padding-top:20px}.header{height:88px;padding:0 6%}.brand{font-size:29px}.brand span{font-size:6px;letter-spacing:1.6px;margin-top:7px}.header nav{display:none}.header-cta{font-size:12px}.header-cta span{margin-left:12px;font-size:17px}.hero{grid-template-columns:1fr}.hero-copy{padding:44px 7% 30px}.hero .eyebrow{font-size:9px;letter-spacing:1.6px;margin-bottom:23px}h1{font-size:clamp(57px,11vw,80px);letter-spacing:-2px;margin-bottom:22px}.hero-description{font-size:15px;margin-bottom:24px}.button{font-size:13px;padding:17px 20px;gap:22px}.hero-bottom{padding-top:30px}.hero-bottom span{font-size:9px}.hero-visual{min-height:380px;max-height:450px;aspect-ratio:1.15}.hero-visual img{object-position:center 52%}figcaption{bottom:19px;left:7%;right:7%;font-size:9px;letter-spacing:1px}figcaption span{font-size:9px;max-width:80px;text-align:right}.section{padding:60px 7%}.section-label{font-size:10px;letter-spacing:1.6px;margin-bottom:25px}h2,.approach h2{font-size:36px;letter-spacing:-1px}.intro-columns{grid-template-columns:1fr;gap:18px;font-size:15px}.scope-heading{display:block}.scope-heading>p{max-width:none}.service-list{margin-top:34px}summary{gap:13px;padding:23px 0}summary h3{font-size:23px}.number{font-size:11px;min-width:23px}.plus{font-size:23px}.service-body{margin-left:36px;grid-template-columns:1fr;gap:17px;font-size:14px;padding-bottom:25px}.audience h2{margin-bottom:36px}.audience-grid{grid-template-columns:1fr}.audience article,.audience article:first-child,.audience article:last-child{padding:28px 0;border-left:0;border-top:1px solid var(--line)}.audience article:last-child{padding-bottom:0}.audience h3{font-size:29px;margin:17px 0}.audience a{padding-top:4px;justify-content:space-between}.transition{grid-template-columns:1fr;gap:35px}.transition h2{font-size:39px;margin-top:24px}.transition-title>p:not(.eyebrow){max-width:none}.text-link{margin-top:8px}.steps li{gap:23px;padding:22px 0 12px}.steps h3{font-size:26px}.questions{grid-template-columns:1fr;gap:20px}.questions h2{font-size:39px;margin-bottom:10px}.questions summary{font-size:15px}.questions details:first-child summary{padding-top:12px}.contact{grid-template-columns:1fr;gap:22px}.contact h2{font-size:51px;margin-bottom:25px}.contact-copy>p:not(.eyebrow){max-width:none}.contact .next-step{margin-top:23px;padding-top:20px}.form-row{grid-template-columns:1fr;gap:0}.contact .button{width:100%}.preview-notice{font-size:12px}footer{padding:40px 7% 25px}.footer-top{flex-wrap:wrap;row-gap:30px;padding-bottom:30px}.footer-top p{font-size:24px;order:3;width:100%}.footer-bottom{gap:20px;align-items:flex-start}.footer-bottom>span:last-child{max-width:185px;text-align:right}}
.hero-visual{min-width:0;width:100%}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Brand lockup from the supplied reference. */
.brand{display:block;flex-shrink:0;line-height:0;width:290px;letter-spacing:normal}.brand img{display:block;width:100%;height:auto}footer .brand img{filter:brightness(0) invert(92%) sepia(12%) saturate(330%) hue-rotate(348deg)}@media(max-width:1100px){.brand{width:245px}.header nav{gap:20px}}@media(max-width:760px){.brand{width:205px}.header{gap:12px}.header-cta{white-space:nowrap}.header-cta span{margin-left:8px}}@media(max-width:370px){.brand{width:175px}}
@media(max-width:370px){.brand{width:155px}.hero .button{font-size:12px;gap:12px;padding:16px 14px}}
