@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Libre+Caslon+Display&display=swap');
:root{--ink:#152e2c;--muted:#596965;--paper:#f8f7f2;--mint:#c7d9b7;--line:#d9ddd2;--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a17e35;outline-offset:5px}::selection{background:var(--mint);color:var(--ink)}.skip{position:fixed;top:-100px;left:20px;background:white;padding:12px;z-index:50}.skip:focus{top:10px}.header{height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:550;line-height:1.2;letter-spacing:3px}.brand-sub{display:block;font-size:10px;letter-spacing:5.1px;margin-top:5px}.brand-mark{display:block;position:relative;font-family:var(--serif);font-size:47px;line-height:1;width:45px;height:48px;border-left:1px solid #9ba890;padding-left:6px}.brand-mark span{position:absolute;width:17px;border-top:1px solid #9ba890;top:1px;left:0}.header nav{display:flex;align-items:center;gap:35px;font-size:14px;font-weight:500}.header nav a:not(.nav-cta):hover{text-decoration:underline;text-underline-offset:6px}.nav-cta{padding:12px 20px;border:1px solid var(--ink);display:flex;gap:35px;transition:.2s}.nav-cta:hover{color:var(--paper);background:var(--ink)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.45fr 1fr;background:var(--ink);color:var(--paper);min-height:650px;overflow:hidden}.hero-content{padding:85px 0 68px 10.4%;position:relative;z-index:1}.eyebrow{font-size:11px;font-weight:600;letter-spacing:2.4px;margin:0 0 25px;line-height:1.5}.hero .eyebrow{display:flex;align-items:center;gap:12px;color:var(--mint)}.eyebrow span{width:6px;height:6px;background:var(--mint);border-radius:50%}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-1.8px;line-height:1.06}h1{font-size:clamp(50px,5.5vw,82px);margin-bottom:28px;white-space:nowrap}em{font-weight:400;color:#aebf9e}h2{font-size:clamp(42px,4.2vw,60px);margin-bottom:26px}h2 em{color:#658064}.hero-copy{max-width:490px;color:#d1d9d1;font-size:17px;line-height:1.8;margin-bottom:32px}.hero-actions{display:flex;align-items:center;gap:29px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:16px 23px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.light{background:var(--mint);color:var(--ink)}.button:hover{background:#dfebd2;transform:translateY(-2px)}.text-link{font-size:13px;display:inline-flex;align-items:center;gap:15px;border-bottom:1px solid #819587;padding:6px 0}.hero-note{margin:35px 0 0;color:#a6b5aa;font-size:11px;letter-spacing:.25px}.hero-art{position:relative;min-height:650px;overflow:hidden;background:linear-gradient(130deg,transparent,#23433b)}.art-grid{position:absolute;inset:0;background-image:linear-gradient(#c7d9b70a 1px,transparent 1px),linear-gradient(90deg,#c7d9b70a 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(transparent,black)}.orbit{position:absolute;border:1px solid #78907935;border-radius:50%;width:520px;height:520px;right:-100px;top:0}.orbit-two{width:370px;height:370px;right:-25px;top:75px}.pillar{position:absolute;bottom:108px;width:24%;background:linear-gradient(95deg,#8da585,#b2c5a1 74%,#7d9978 74%,#678263);box-shadow:12px 15px 30px #081b1830;border-top:1px solid #d3dfba80}.p1{height:100px;left:2%;opacity:.55}.p2{height:200px;left:25%;opacity:.7}.p3{height:300px;left:48%;opacity:.85}.p4{height:400px;left:71%}.art-caption{position:absolute;bottom:30px;left:5%;right:6%;border-top:1px solid #78907960;padding-top:20px;display:flex;flex-direction:column;gap:7px;font-size:10px;color:#c7d9b7;letter-spacing:1.5px}.art-caption span:last-child{font-size:12px;color:#a9baaa;letter-spacing:0}.focus-strip{padding:25px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:25px}.focus-strip>span{font-size:9px;letter-spacing:1.9px;color:var(--muted);max-width:120px}.focus-strip p{margin:0;font-family:var(--serif);font-size:25px}.focus-strip i{width:5px;height:5px;transform:rotate(45deg);background:#99aa8c}.section{padding:95px 6%}.intro{display:grid;grid-template-columns:1.05fr 1fr;gap:9%}.intro-copy{padding-top:40px;color:var(--muted);font-size:16px}.intro-copy p{margin-bottom:20px}.intro h2{margin-bottom:0}.services{padding-top:5px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:42px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:14px;color:var(--muted);margin-bottom:5px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-grid article{padding:30px 30px 28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;transition:background .2s}.service-grid article:hover{background:#f0f1e8}.service-num{font-size:12px;color:#6a8262;letter-spacing:1px;margin-bottom:36px}.service-grid h3{font-size:22px;line-height:1.3;letter-spacing:-.7px;font-weight:500;margin-bottom:18px;max-width:260px}.service-grid p{font-size:14px;line-height:1.8;color:var(--muted);margin-bottom:24px}.service-detail{font-size:11px;font-weight:600;letter-spacing:.15px;margin-top:auto}.perspective{background:#e9eddf;text-align:center;padding-top:76px;padding-bottom:80px}.perspective h2{font-size:clamp(44px,4.8vw,70px)}.perspective>p:not(.eyebrow){max-width:510px;margin:0 auto 24px;color:var(--muted)}.perspective .eyebrow{color:#52704e}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:60px}.steps article{border-top:1px solid #afb9a5;padding-top:23px}.steps span{font-family:var(--serif);color:#6f8666;font-size:38px}.steps h3{font-weight:500;margin:24px 0 15px;font-size:21px}.steps p{font-size:14px;line-height:1.8;color:var(--muted);margin:0}.about{background:#f0f0e8;display:grid;grid-template-columns:.72fr 1fr;gap:12%;align-items:center}.about-label{border:1px solid #b9c5b2;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;max-width:430px}.about-label:before{content:'';position:absolute;inset:17px;border:1px solid #ccd3c4}.large{font-size:140px;width:130px;height:145px;padding-left:15px;border-left-color:#788c6d}.large span{width:65px;border-color:#788c6d}.about-label p{margin:35px 0 0;font-size:11px;letter-spacing:2px;text-align:center;color:#6b7b64}.about>div>p:not(.eyebrow){max-width:540px;color:var(--muted)}.dark-link{margin-top:12px}.faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;justify-content:space-between;gap:25px;list-style:none;cursor:pointer;padding:22px 0;font-size:15px;font-weight:500}summary::-webkit-details-marker{display:none}summary span{font-size:23px;color:#658064;font-weight:400;transition:transform .2s}details[open] summary span{transform:rotate(45deg)}details p{color:var(--muted);font-size:14px;padding-right:35px;padding-bottom:8px}.contact{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1.1fr 1fr;gap:12%;align-items:center}.contact .eyebrow{color:var(--mint)}.contact h2{font-size:clamp(48px,5vw,72px)}.contact h2 em{color:var(--mint)}.contact>div>p:not(.eyebrow){color:#becbc0;max-width:400px;margin-bottom:0}.contact-box{border-top:1px solid #6a826c;padding-top:28px}.contact-label{font-size:10px;letter-spacing:2px;color:#b6c8ac}.contact-box h3{font-size:30px;font-weight:400;margin:20px 0 0}.contact-box>p{font-size:14px;margin-top:4px!important}.contact-email{display:flex;align-items:center;gap:15px;margin:24px 0 30px;font-size:clamp(14px,1.5vw,20px);border-bottom:1px solid #6a826c;padding-bottom:12px;overflow-wrap:anywhere}.contact-email span{margin-left:auto}.contact-box .button{min-width:195px}.contact-box small{display:block;font-size:11px;color:#9caf9e;max-width:300px;margin-top:17px}footer{padding:35px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:11px;color:var(--muted)}.footer-brand{font-size:15px;letter-spacing:2px;gap:7px;color:var(--ink)}.footer-brand span{font-size:9px;letter-spacing:1px}footer p{margin:0}footer>a:last-child{white-space:nowrap}
@media(min-width:1600px){.header,.section,.focus-strip,footer{padding-left:max(6%,calc((100vw - 1400px)/2));padding-right:max(6%,calc((100vw - 1400px)/2))}.hero-content{padding-left:max(10.4%,calc((100vw - 1400px)/2))}}
@media(max-width:1050px){.hero{grid-template-columns:1.6fr .8fr}.hero-content{padding-left:9%;padding-top:65px}.hero-art{min-height:620px}h1{font-size:60px}.hero-actions{gap:20px;flex-wrap:wrap}.hero-copy{max-width:420px}.service-grid article{padding:24px}.hero-art .pillar{width:28%}.p1{left:-8%}.p2{left:18%}.p3{left:44%}.p4{left:70%}.steps{gap:24px}.contact{gap:7%}.focus-strip{gap:18px}.focus-strip p{font-size:22px}footer p{display:none}}
@media(max-width:760px){html{scroll-padding-top:80px}.header{height:80px;padding:0 6%}.brand{font-size:18px}.brand-sub{font-size:8px}.brand-mark{font-size:39px;height:42px;width:38px}.menu-toggle{display:flex;align-items:center;gap:22px;border:0;background:transparent;padding:12px 0;font-size:13px}.menu-toggle span{font-size:22px}.header nav{display:none;position:absolute;left:0;right:0;top:80px;background:var(--paper);padding:25px 6%;border-bottom:1px solid var(--line);align-items:stretch;gap:24px}.header nav.open{display:flex;flex-direction:column}.nav-cta{justify-content:space-between}.hero{grid-template-columns:1fr;min-height:0}.hero-content{padding:52px 6% 30px}h1{font-size:clamp(43px,8.7vw,65px);white-space:normal;letter-spacing:-1.1px;line-height:1.08}.hero-copy{font-size:15px;max-width:540px}.hero-actions{gap:20px}.hero-note{font-size:10px;margin-top:24px}.hero-art{min-height:240px;margin-left:22%;margin-right:0}.pillar{bottom:40px}.p1{height:45px}.p2{height:100px}.p3{height:155px}.p4{height:210px}.art-caption{display:none}.orbit{width:260px;height:260px;top:-10px;right:-15px}.orbit-two{width:190px;height:190px;top:25px;right:20px}.focus-strip{flex-wrap:wrap;gap:12px 20px;padding:22px 6%}.focus-strip>span{flex-basis:100%;max-width:none;font-size:9px}.focus-strip p{font-size:18px}.focus-strip i:last-of-type{display:none}.focus-strip p:last-child{display:none}.section{padding:60px 6%}.intro,.about,.faq,.contact{grid-template-columns:1fr;gap:30px}.intro-copy{padding:0}.intro-copy p:last-child{margin-bottom:0}.eyebrow{font-size:10px;margin-bottom:19px}h2{font-size:44px;letter-spacing:-1.1px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:24px}.section-heading>p br{display:none}.services{padding-top:0}.service-grid{grid-template-columns:repeat(2,1fr)}.service-grid article{padding:23px 19px}.service-num{margin-bottom:24px}.service-grid h3{font-size:20px}.service-grid p{font-size:13px}.service-detail{font-size:10px}.perspective h2{font-size:43px}.perspective>p:not(.eyebrow){font-size:15px}.steps{grid-template-columns:1fr 1fr;gap:30px;margin-top:35px}.steps h3{margin-top:12px}.about-label{display:none}.about h2{margin-bottom:24px}.about>div>p:not(.eyebrow){font-size:15px}.faq h2{margin-bottom:0}.faq-list{margin-top:5px}.contact{gap:35px}.contact h2{font-size:54px}.contact-email{font-size:17px}.contact-box{padding-top:25px}footer{flex-wrap:wrap;padding:30px 6%;gap:22px}.footer-brand{width:100%}footer>span{flex:1}.button{font-size:13px;padding:14px 18px}.hero .text-link{font-size:12px}}
@media(max-width:390px){h1{font-size:41px}.service-grid{grid-template-columns:1fr}.hero-actions{gap:12px}.steps{gap:22px}h2{font-size:39px}.contact-email{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
