:root{--paper:#eeeee5;--ink:#262a25;--green:#334f3b;--muted:#62675e;--line:#c8ccbf;--dark:#243b2d;--light:#d7dfbf;--mono:'IBM Plex Mono',monospace;--sans:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:#d1dab6;color:#213527}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:6px}.wrap{width:calc(100% - 112px);max-width:1536px;margin:auto}.header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{font-size:25px;letter-spacing:-1.35px;line-height:1;font-weight:800}.header nav{display:flex;gap:38px;align-items:center;font-size:14px;font-weight:500}.header nav a{position:relative}.header nav a:after{content:'';height:1px;background:currentColor;position:absolute;bottom:-5px;left:0;right:100%;transition:right .25s}.header nav a:hover:after{right:0}.nav-contact{margin-left:40px}.nav-contact span{margin-left:20px}.hero{padding-top:57px}.eyebrow{text-transform:uppercase;font:400 12px/1.6 var(--mono);letter-spacing:1.1px;margin:0}.hero-label{display:flex;align-items:center;gap:14px}.mini-rule{height:15px;width:28px;background:repeating-linear-gradient(to right,var(--green) 0 2px,transparent 2px 6px)}h1{font-size:clamp(80px,10.75vw,168px);font-weight:500;line-height:.97;letter-spacing:-.075em;margin:49px 0 43px}h1 span{color:var(--green)}.hero-bottom{display:flex;justify-content:space-between;align-items:flex-end;padding-bottom:59px}.circle-link{display:inline-flex;align-items:center;gap:16px;font-size:14px}.circle{width:47px;height:47px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-size:24px;transition:background .25s,color .25s,transform .25s}.circle-link:hover .circle{background:var(--ink);color:var(--paper);transform:translateY(3px)}.hero-intro{width:40%;padding-right:25px}.hero-intro p{margin:0;font-size:clamp(18px,1.5vw,23px);line-height:1.45;letter-spacing:-.4px}.hero-intro p.muted{font-size:15px;margin-top:17px;line-height:1.55;letter-spacing:0;color:var(--muted)}.calibration{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:30px;padding:20px 0;font:400 12px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.7px}.ticks{height:10px;flex:1;background:repeating-linear-gradient(90deg,var(--line) 0 1px,transparent 1px 8px)}.section-space{padding-top:122px;padding-bottom:122px}.intro{display:grid;grid-template-columns:1fr 2.02fr;gap:40px}.intro .eyebrow{padding-top:9px}h2{font-weight:450;font-size:clamp(36px,4.15vw,64px);line-height:1.12;letter-spacing:-.052em;margin:0}.intro-copy{color:var(--muted);font-size:18px;max-width:570px;margin:30px 0 0}.skip{position:fixed;left:20px;top:-100px;background:var(--ink);color:white;padding:10px;z-index:20}.skip:focus{top:10px}@media(min-width:1600px){.hero{padding-top:75px}.hero-bottom{padding-bottom:85px}}@media(max-width:800px){.wrap{width:calc(100% - 48px)}.header{height:86px}.wordmark{font-size:22px}.header nav{gap:20px}.header nav a:not(.nav-contact){display:none}.nav-contact{margin-left:0}.hero{padding-top:38px}h1{font-size:clamp(52px,16.6vw,104px);margin:45px 0 44px}.hero-bottom{align-items:flex-start;gap:35px;flex-direction:column-reverse;padding-bottom:38px}.hero-intro{width:100%;padding:0}.hero-intro p{font-size:21px}.hero-intro p.muted{font-size:16px}.calibration{gap:12px;font-size:12px;letter-spacing:0}.ticks{display:none}.calibration span{flex:1}.calibration span:last-child{text-align:right}.section-space{padding-top:76px;padding-bottom:76px}.intro{grid-template-columns:1fr;gap:28px}.intro-copy{font-size:17px}.eyebrow{font-size:12px}h2{font-size:39px}.nav-contact span{margin-left:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.section-heading{display:grid;grid-template-columns:1fr 2.02fr;gap:40px;align-items:start}.section-heading>.eyebrow{padding-top:9px}.services{padding-bottom:110px}.services .section-heading{padding-bottom:56px}.service{border-top:1px solid var(--line)}.service:last-child{border-bottom:1px solid var(--line)}.service summary{list-style:none;display:grid;grid-template-columns:55px 1.3fr 1fr 28px;gap:20px;align-items:center;min-height:119px;cursor:pointer;padding:24px 0;transition:color .2s}.service summary::-webkit-details-marker{display:none}.service summary:hover{color:var(--green)}.service-no{font:400 12px var(--mono);color:var(--muted)}.service h3{font-size:clamp(24px,2.4vw,37px);font-weight:450;letter-spacing:-1.2px;line-height:1.2;margin:0}.service-short{font-size:15px;color:var(--muted)}.toggle{height:25px;width:25px;position:relative}.toggle:before,.toggle:after{content:'';position:absolute;background:currentColor;width:18px;height:1px;top:12px;left:3px;transition:transform .2s}.toggle:after{transform:rotate(90deg)}details[open]:not([data-expanded="false"]) .toggle:after{transform:rotate(0)}.service-content{padding:0 0 38px 75px;max-width:790px}.service-content p{margin:0;color:var(--muted);max-width:625px;font-size:18px;line-height:1.65}.tags{padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:9px;margin:22px 0 26px}.tags li{padding:5px 10px;border:1px solid var(--line);font-size:12px;line-height:1.6}.text-link{font-size:14px;font-weight:550;display:inline-flex;gap:24px;border-bottom:1px solid var(--ink);padding-bottom:3px}.text-link span{transition:transform .2s}.text-link:hover span{transform:translate(2px,-2px)}.services-note{display:flex;justify-content:space-between;align-items:start;padding-top:25px}.services-note p{font-size:17px;text-align:right;margin:0;line-height:1.4;letter-spacing:-.3px}.approach{background:var(--dark);color:var(--paper)}.approach h2{color:var(--light)}.approach .eyebrow{color:#c2cdb5}.approach-intro{font-size:17px;color:#bdc8b9;margin:27px 0 0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:57px;margin-top:90px}.step-top{display:flex;align-items:center;gap:22px}.step-line{height:1px;background:#60725c;flex:1;position:relative}.step-line:before{content:'';position:absolute;width:35%;height:3px;top:-1px;background:#cedabb}.step:nth-child(2) .step-line:before{width:65%}.step:nth-child(3) .step-line:before{width:100%}.step h3{font-size:28px;font-weight:450;letter-spacing:-1px;margin:33px 0 19px;line-height:1.2}.step p{font-size:16px;color:#c3cdbd;line-height:1.7;margin:0 0 36px}.step-outcome{font:400 12px var(--mono);color:#d7dfc7}.approach-foot{border-top:1px solid #56664f;margin-top:72px;padding-top:22px;display:flex;justify-content:space-between;gap:25px}.approach-foot p{font-size:15px;margin:0}.positioning{display:grid;grid-template-columns:1.05fr 1fr;gap:100px}.positioning h2{margin-top:40px;font-size:clamp(36px,4.3vw,67px);line-height:1.13}.serif{font-family:Georgia,'Times New Roman',serif;font-style:italic;letter-spacing:-.06em;font-weight:400}.positioning h2 .serif{color:var(--green);font-size:.98em}.positioning-lead{font-size:21px;letter-spacing:-.45px;line-height:1.5;margin:0 0 39px}.principles article{border-top:1px solid var(--line);padding:21px 0 22px}.principles article:last-child{padding-bottom:0}.principles h3{font-size:17px;font-weight:550;margin:0 0 7px}.principles article p{color:var(--muted);font-size:16px;line-height:1.65;margin:0}.contact{background:#dce2cf;padding:40px 0 75px}.contact-top{display:flex;justify-content:space-between;border-top:1px solid #a8b49d;padding-top:18px}.contact-main{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:end;padding-top:62px}.contact h2{font-size:clamp(68px,8vw,126px);line-height:.98;letter-spacing:-.065em}.contact h2 .serif{color:var(--green);font-size:1.14em;line-height:.95}.contact-detail{padding-bottom:8px}.contact-detail p{font-size:20px;line-height:1.5;letter-spacing:-.4px;margin:0 0 41px}.contact-email{display:flex;justify-content:space-between;gap:20px;font-size:clamp(19px,2.1vw,32px);line-height:1.6;letter-spacing:-.7px;border-bottom:1px solid var(--ink);padding:0 0 10px;white-space:nowrap}.contact-email span{transition:transform .25s}.contact-email:hover span{transform:translate(4px,-4px)}.contact-aside{display:block;color:#57634f;font-size:13px;margin-top:15px}.footer{padding-top:37px;padding-bottom:24px}.footer-meta{display:flex;justify-content:space-between;font-size:13px;gap:20px}.back-top span{margin-left:18px}.footer-wordmark{display:block;font-weight:800;letter-spacing:-.065em;line-height:.95;font-size:clamp(47px,13.93vw,210px);margin-top:63px;margin-left:-.006em}.footer-bottom{display:flex;justify-content:space-between;font:400 12px var(--mono);padding-top:30px;gap:20px}.reveal-ready{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.65,.3,1)}.reveal-ready.is-visible{opacity:1;transform:none}.hero h1{animation:enter .9s cubic-bezier(.2,.65,.3,1) both}.hero-bottom{animation:enter 1s .15s both}@keyframes enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1050px){.service-short{display:none}.service summary{grid-template-columns:40px 1fr 28px}.service-content{padding-left:60px}.positioning{gap:55px}.steps{gap:30px}.step h3{font-size:25px}.contact-main{gap:36px}.contact-email{font-size:23px}}@media(max-width:800px){.section-heading{grid-template-columns:1fr;gap:28px}.services{padding-bottom:73px}.services .section-heading{padding-bottom:35px}.service summary{min-height:92px;gap:10px;grid-template-columns:30px 1fr 23px}.service h3{font-size:26px;letter-spacing:-.9px}.service-content{padding-left:40px;padding-bottom:30px}.service-content p{font-size:16px}.tags{gap:6px}.tags li{font-size:12px}.services-note{gap:20px}.services-note .eyebrow{max-width:155px}.services-note p{font-size:15px}.steps{grid-template-columns:1fr;margin-top:48px;gap:40px}.step h3{font-size:29px;margin-top:24px;margin-bottom:15px}.step p{max-width:560px;margin-bottom:18px}.step-line{max-width:220px}.approach-foot{margin-top:45px;flex-direction:column;gap:8px}.positioning{grid-template-columns:1fr;gap:36px}.positioning h2{font-size:45px;margin-top:27px}.positioning-lead{font-size:20px;margin-bottom:28px}.contact{padding:29px 0 49px}.contact-top{gap:25px}.contact-top .eyebrow{font-size:12px}.contact-main{grid-template-columns:1fr;gap:35px;padding-top:39px}.contact h2{font-size:76px}.contact-detail p{font-size:18px;margin-bottom:25px}.contact-email{font-size:25px}.contact-aside{font-size:12px}.footer{padding-top:26px}.footer-meta{font-size:12px;align-items:start}.footer-meta>span{max-width:200px}.footer-wordmark{font-size:13.4vw;margin-top:42px}.footer-bottom{font-size:12px;padding-top:23px}.back-top{white-space:nowrap}.back-top span{margin-left:8px}.desktop-break{display:none}}@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;transform:none}}

/* Compact, consistent directional icons for contact links. */
.cta-arrow{display:inline-flex;align-items:center;justify-content:center;flex:none;width:16px;height:16px;vertical-align:-2px}
.cta-arrow svg{display:block;width:100%;height:100%}
.text-link{align-items:center}
.contact-email{align-items:center}
.contact-email .cta-arrow{width:22px;height:22px}
.contact-email:hover .cta-arrow{transform:translate(2px,-2px)}
.footer-wordmark{white-space:nowrap;margin-left:0}
.footer-wordmark>span{display:inline-block}
.service[data-expanded="false"] .toggle:after{transform:rotate(90deg)}
