/* Brand constants remain unchanged; these tokens control the two surfaces. */
:root { --surface:#0a0c0a;--surface-alt:#101410;--surface-card:#161c17;--text:#f6f7f4;--muted:#acb6ae;--line:#2c362e;--accent-text:#47e38b;--art-panel:#0f1812; }
:root[data-theme="light"] { --surface:#f6f7f4;--surface-alt:#edf1eb;--surface-card:#fff;--text:#0a0c0a;--muted:#4c5b50;--line:#d2dbd1;--accent-text:#137d42;--art-panel:#e6eee5; }
body { background:var(--surface);color:var(--text); }
body .header,body .header.scrolled {background:var(--surface);border-bottom:1px solid var(--line);backdrop-filter:none;}
.header-inner{gap:24px;}
.header .logo,.header .nav a{color:var(--text);}
.header .logo span:last-child{color:var(--accent-text);}
.header .nav-toggle span{background:var(--text);}
.logo{gap:0;white-space:nowrap;letter-spacing:-.03em;}
.logo-mark{margin-right:9px;flex-shrink:0;}
.header-actions{display:flex;align-items:center;gap:20px;margin-left:auto;}
.nav{gap:24px;}
.theme-toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 0;background:transparent;color:var(--text);border:0;cursor:pointer;font:500 13px var(--font-b);}
.theme-icon{font-size:24px;line-height:1;width:26px;text-align:center;}
.skip-link{position:fixed;top:8px;left:16px;z-index:200;transform:translateY(-150%);background:var(--green);color:var(--ink);padding:12px;}
.skip-link:focus{transform:none;}
.agency-hero{padding:154px 0 0;overflow:hidden;background:var(--surface);}
.hero-layout{display:grid;grid-template-columns:1.12fr 1fr;gap:50px;align-items:center;min-height:560px;}
.hero-copy{padding:10px 0 30px;min-width:0;}
.hero-eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:600;letter-spacing:.14em;margin-bottom:30px;color:var(--muted);}
.hero-eyebrow>span{width:7px;height:7px;border-radius:50%;background:var(--green);}
.hero-copy h1{font-size:clamp(44px,4.5vw,66px);letter-spacing:-.06em;line-height:1.06;font-weight:500;}
.hero-copy h1 em{font-style:normal;color:var(--accent-text);display:inline;white-space:nowrap;}
.hero-description{color:var(--muted);font-size:16px;line-height:1.8;max-width:470px;margin:26px 0 32px;}
.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;}
.hero-actions .btn{padding:16px 22px;font-size:14px;border-radius:7px;}
.hero-secondary{font-size:13px;color:var(--text);border-bottom:1px solid var(--line);padding:9px 0;display:inline-flex;gap:18px;align-items:center;}
.hero-footnote{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:11px;line-height:1.7;margin-top:36px;}
.small-star{font-size:32px;color:var(--accent-text);}
.hero-art{position:relative;background:var(--art-panel);border:1px solid var(--line);border-radius:20px;min-width:0;}
.art-topline,.art-bottomline{position:absolute;left:24px;right:24px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font:10px var(--font-b);letter-spacing:.06em;}
.art-topline{top:24px;}.art-topline>span:last-child{font-size:22px;color:var(--accent-text);}
.art-bottomline{bottom:25px;font-size:9px;}
.growth-sculpture{display:block;width:100%;height:auto;aspect-ratio:600/640;overflow:visible;padding:24px 0;}
.art-orbits{color:var(--accent-text);opacity:.25;}
.hero-service-line{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);margin-top:55px;padding-top:26px;padding-bottom:26px;font-size:12px;color:var(--muted);}
.hero-service-line a{color:var(--text);}.hero-service-line a span{margin-left:18px;color:var(--accent-text);font-size:20px;}
/* Preserve lower-page layout, apply a coherent theme to its surfaces. */
.section{background:var(--surface);color:var(--text);}
.section-dark,.section-alt{background:var(--surface-alt);color:var(--text);}
.service-card,.section-alt .service-card,.work-card{background:var(--surface-card);color:var(--text);border-color:var(--line);}
.service-card--dark{background:var(--surface-alt);border-color:var(--accent-text);color:var(--text);}
.service-card p,.service-card li,.service-card--dark p,.service-card--dark li,.work-meta p,.work-tags span,.big-statement p,.value p,.process-step p,.testi footer{color:var(--muted);}
.service-card--dark ul li{color:var(--muted);}
.value h4,.testi p{color:var(--text);}
.testi{background:var(--surface-card);border-color:var(--line);}
.value,.process-step,.work-tags span{border-color:var(--line);}
.kicker,.kicker-green,.green,.service-num,.service-link,.service-card--dark .service-link,.process-num{color:var(--accent-text);}
.btn-primary{color:#0a0c0a;background:#47e38b;}
.btn-primary:hover{background:#b4ffd4;color:#0a0c0a;}
.header-cta{border-radius:7px;}
.footer{background:#0a0c0a;color:#f6f7f4;}
.cta{background:#47e38b;color:#0a0c0a;}
.cta-form input:focus{background:#f6f7f4;}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--accent-text);outline-offset:5px;}
.cta input:focus-visible{outline-color:#0a0c0a;}
@media(max-width:1100px){.header-inner{gap:16px;}.header-actions{gap:12px;}.nav{gap:17px;}.hero-layout{gap:28px;}.hero-copy h1{font-size:clamp(42px,4.8vw,62px);}.header-cta{padding:12px 16px;}}
@media(max-width:900px){.header .header-cta{display:none;}.hero-layout{gap:24px;}.hero-copy h1{font-size:44px;}.hero-description{font-size:15px;}.hero-actions{gap:14px;}.hero-art .art-topline{font-size:8px;}.art-bottomline{font-size:8px;left:15px;right:15px;}.hero-eyebrow{font-size:9px;}}
@media(max-width:720px){
 .header-inner{gap:12px;}.header-actions{margin-left:auto;}.theme-text{display:none;}.theme-toggle{width:44px;justify-content:center;}
 .agency-hero{padding-top:124px;}.hero-layout{display:flex;flex-direction:column;gap:28px;align-items:stretch;min-height:0;}
 .hero-copy{padding:0;}.hero-copy h1{font-size:clamp(40px,8vw,56px);line-height:1.06;}.hero-description{margin:22px 0 26px;max-width:500px;}
 .hero-eyebrow{font-size:9px;margin-bottom:22px;}.hero-actions{gap:14px;}.hero-actions .btn{padding:15px 18px;font-size:13px;}.hero-secondary{font-size:12px;}
 .hero-footnote{display:none;}.growth-sculpture{aspect-ratio:600/430;padding:12px 0;height:280px;}.art-topline{top:16px;left:16px;right:16px;}.art-bottomline{bottom:16px;}
 .hero-service-line{margin-top:32px;flex-direction:column;align-items:flex-start;gap:8px;padding-top:20px;padding-bottom:20px;font-size:11px;}
 .header .nav.open{background:var(--surface-card);border-color:var(--line);}.header .nav.open a{color:var(--text);}
 html:not(.js) .header-actions{display:none;}html:not(.js) .header{position:relative;}html:not(.js) .agency-hero{padding-top:40px;}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*,*::before,*::after{animation:none!important;transition:none!important;}.reveal{opacity:1;transform:none;}}
