
:root{--dark:#101c1b;--paper:#f4f3ec;--ink:#152522;--muted:#52605c;--teal:#90e3c4;--line:#d6ddd5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;font:17px/1.65 'DM Sans',Arial,sans-serif;background:var(--paper);color:var(--ink)}a{color:inherit;text-underline-offset:5px}a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #398766;outline-offset:5px}.wrap{max-width:1200px;margin:auto;padding:0 48px}.dark{background:var(--dark);color:var(--paper)}header .wrap{display:flex;align-items:center;justify-content:space-between;min-height:88px;gap:24px;border-bottom:1px solid #ffffff26}.brand{font-size:22px;font-weight:700;text-decoration:none;letter-spacing:-1px}.brand span{color:var(--teal)}nav{display:flex;gap:30px;align-items:center;font-size:14px}nav a{text-decoration:none}.btn{display:inline-flex;justify-content:center;align-items:center;background:var(--teal);color:var(--dark);border-radius:4px;min-height:48px;padding:12px 23px;font-size:15px;font-weight:700;text-decoration:none;border:0;cursor:pointer;transition:transform .2s}.btn:hover{transform:translateY(-2px)}.hero{padding:65px 0 56px}.kicker{font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:600;color:var(--teal)}h1{font-size:clamp(44px,5.8vw,78px);line-height:1.04;letter-spacing:-4px;max-width:850px;margin:20px 0 25px;font-weight:500}h1 em{font-style:normal;color:var(--teal)}.lead{max-width:630px;font-size:20px;line-height:1.6;color:#cbd8d1;margin:0}.actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap;margin-top:30px}.secondary{font-size:15px}.signature{margin-top:38px;display:flex;align-items:center;gap:18px;color:#cbd8d1;font-size:14px}.signature strong{color:var(--paper)}.signature:before{content:'';width:42px;height:1px;background:var(--teal)}.proof{margin-top:46px;display:grid;grid-template-columns:1fr 1fr;gap:32px;border-top:1px solid #ffffff26;padding-top:24px}.proof p{font-size:14px;color:#cbd8d1;margin:0}.proof strong{display:block;color:var(--paper);font-size:17px;margin-bottom:4px}.section{padding:80px 0}.intro{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-bottom:40px}.eyebrow{color:#3a6e5c;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:700;margin-bottom:14px}h2{font-size:clamp(30px,3vw,43px);line-height:1.12;letter-spacing:-1.5px;margin:0}p{margin:0 0 20px}.intro p{color:var(--muted);max-width:500px}.service{border-top:1px solid var(--line);padding:30px 0;display:grid;grid-template-columns:55px 1fr 1fr;gap:25px}.service:last-child{border-bottom:1px solid var(--line)}.num{color:#3a6e5c;font-size:13px}.service h3{font-size:25px;letter-spacing:-1px;line-height:1.3;margin:0 0 18px}.service p{color:var(--muted)}.service a{font-size:14px;font-weight:700}.project{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}.project .eyebrow{color:var(--teal)}.project h2{font-size:clamp(42px,4vw,58px)}.project p{color:#cbd8d1}.tags{margin:28px 0;padding:0;list-style:none;border-top:1px solid #ffffff26}.tags li{border-bottom:1px solid #ffffff26;padding:12px 0;font-size:15px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:40px}.steps h3{font-size:20px;margin:14px 0 12px}.steps p{color:var(--muted);font-size:16px}.contact{border-top:1px solid var(--line)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px}.contact-copy{max-width:450px;margin:24px 0;color:var(--muted)}.contact-links{display:flex;flex-wrap:wrap;gap:18px;font-size:14px}.field{margin-bottom:22px}label{display:block;font-size:14px;font-weight:600;margin-bottom:7px}input,textarea{background:transparent;border:1px solid #85958b;border-radius:4px;padding:12px;width:100%;font:inherit;color:var(--ink)}textarea{min-height:100px;resize:vertical}.hint{font-size:13px;color:var(--muted);margin-top:5px}.form-note{font-size:13px;color:var(--muted);margin-top:14px}footer{padding:28px 0;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}footer .wrap{display:flex;justify-content:space-between;gap:20px}.preview{font-size:11px;color:#cad9d1;border-top:1px solid #ffffff26;padding:8px 0;text-align:center}.hero-content{animation:enter .55s both}@keyframes enter{from{opacity:.2;transform:translateY(12px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-content{animation:none}.btn{transition:none}}@media(max-width:760px){.wrap{padding:0 22px}header .wrap{min-height:76px}nav{gap:12px}nav a:not(.btn){display:none}nav .btn{padding:9px 13px;font-size:13px;min-height:42px}.hero{padding:38px 0 35px}h1{font-size:47px;letter-spacing:-2px;margin-top:18px}.lead{font-size:18px}.actions{gap:18px;margin-top:24px}.signature{margin-top:26px}.proof{margin-top:32px;grid-template-columns:1fr;gap:18px}.section{padding:52px 0}.intro,.project,.contact-grid{grid-template-columns:1fr;gap:24px}.service{grid-template-columns:25px 1fr;gap:14px}.service>div:last-child{grid-column:2}.steps{grid-template-columns:1fr;gap:12px}.steps h3{margin-top:8px}footer .wrap{display:block}.preview{padding:7px 22px}}
.hero-content{position:relative;padding-right:300px}.portrait{position:absolute;right:48px;top:80px;width:200px;height:200px;object-fit:cover;border-radius:50%;border:1px solid #ffffff40}.hero .proof{margin-right:-252px}@media(max-width:1000px){.hero-content{padding-right:48px}.portrait{position:static;float:right;width:96px;height:96px;margin:0 0 18px 24px}.hero .proof{margin-right:0}}@media(max-width:760px){.hero-content{padding-right:22px}.portrait{width:72px;height:72px;margin:0 0 12px 16px}.kicker{max-width:240px;min-height:72px;display:flex;align-items:center}h1{clear:both}}
.button{display:inline-flex;align-items:center;justify-content:center;background:var(--teal);color:var(--dark);border-radius:4px;min-height:48px;padding:12px 23px;font-size:15px;font-weight:700;text-decoration:none;transition:transform .2s}.button:hover{transform:translateY(-2px)}.brand{white-space:nowrap}.desktop-nav{gap:24px}.mobile-menu{display:none}.skip{position:absolute;top:-100px;left:20px;z-index:10;background:var(--paper);color:var(--ink);padding:12px}.skip:focus{top:10px}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-bottom:36px}.section-heading p,.copy{color:var(--muted)}.rows{margin:0}.row{display:grid;grid-template-columns:40px 1fr 1.4fr;gap:24px;padding:26px 0;border-top:1px solid var(--line)}.row h3{font-size:23px;line-height:1.2;letter-spacing:-.5px;margin:0}.row p{color:var(--muted);margin:0}.number{color:#3a6e5c;font-size:13px}.split{display:grid;grid-template-columns:1fr 1fr;gap:64px}.split h3{font-size:23px;margin:0 0 12px}.line-link{font-size:14px}.note{border-left:2px solid #3a6e5c;padding-left:20px}.crumbs{font-size:13px;color:#cbd8d1;margin:0 0 26px}.service-hero h1{font-size:clamp(38px,4.5vw,62px);letter-spacing:-2.5px;margin:20px 0 24px}.service-hero .intro{display:block;font-size:19px;color:#cbd8d1;margin:0;max-width:740px}.service-hero .accent{color:var(--teal)}.service-hero .eyebrow{color:var(--teal)}.hero-art{display:flex;align-items:center;gap:24px;margin-top:32px}.hero-art svg{width:150px;height:60px;flex-shrink:0}.hero-art p{font-size:14px;color:#cbd8d1;margin:0;max-width:600px}.table-wrap{overflow:auto}table{border-collapse:collapse;min-width:550px;width:100%;font-size:15px}th,td{text-align:left;padding:18px 12px;border-bottom:1px solid var(--line);vertical-align:top}th{color:#3a6e5c}td{color:var(--muted)}.sources{font-size:14px;color:var(--muted)}details:not(.mobile-menu){border-top:1px solid var(--line);padding:20px 0}summary{cursor:pointer;display:flex;justify-content:space-between;gap:20px;list-style:none;font-weight:600}summary::-webkit-details-marker{display:none}summary:after{content:'+'}details[open]>summary:after{content:'−'}details p{margin:18px 0 0;color:var(--muted)}ul{padding-left:22px}li{padding:4px 0}.mobile-menu summary{color:var(--paper);font-size:14px}.contact-grid h2{max-width:500px}.contact-form button:disabled{opacity:.6;cursor:wait;transform:none}.form-note[data-state=error]{color:#a22727}.form-note[data-state=success]{color:#256142}.form-note{min-height:42px}.form-honeypot{display:none}input,textarea{font-size:16px}.footer-links{display:flex;flex-wrap:wrap;gap:16px}footer .wrap{flex-wrap:wrap}.portrait{width:190px;height:190px}.service-hero .portrait{top:110px;width:150px;height:150px}.service-hero .hero-content{padding-right:250px}.related-project{margin-top:30px}.related-project a{font-weight:600}.portrait{background:#eae9e1}
@media(max-width:1000px){.hero-content,.service-hero .hero-content{padding-right:48px}.service-hero .portrait{position:static;float:right;max-width:100px;height:100px}.desktop-nav{gap:14px;font-size:13px}}
@media(max-width:760px){.desktop-nav{display:none}.mobile-menu{display:block;position:relative}.mobile-menu .menu-links{position:absolute;right:0;top:35px;min-width:235px;padding:20px;background:var(--dark);border:1px solid #ffffff40;z-index:5;display:flex;flex-direction:column;gap:18px}.mobile-menu a{color:var(--paper)}.mobile-menu .btn{color:var(--dark)}header .wrap{gap:16px}.hero-content,.service-hero .hero-content{padding-right:22px}.section-heading,.split{grid-template-columns:1fr;gap:20px}.row{grid-template-columns:24px 1fr;gap:14px}.row p{grid-column:2}.hero-art{gap:15px}.hero-art svg{width:80px}.service-hero h1{font-size:38px;letter-spacing:-1.5px}.service-hero .portrait,.portrait{position:static;float:right;width:72px;height:72px;margin:0 0 16px 16px}.service-hero .eyebrow{min-height:72px;display:flex;align-items:center}.service-hero .crumbs{margin-bottom:22px}.hero-art{clear:both}.footer-links{margin-top:15px}}
.mobile-menu .menu-links a{display:block}.desktop-nav a[aria-current=page]{color:var(--teal)}