:root{--sc-canvas:#f2f2ee;--sc-surface:#e7e8e2;--sc-ink:#121417;--sc-ink-soft:#5b6068;--sc-accent:#1f5c46;--sc-accent-ink:#ffffff;--sc-font-display:var(--font-display);--sc-font-text:var(--font-body);--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--hair:rgba(18,20,23,.14);--ease:cubic-bezier(.23,1,.32,1)}
body{background:var(--sc-canvas);color:var(--sc-ink)}
::selection{background:var(--sc-accent);color:#fff}
:focus-visible{outline:2px solid var(--sc-accent);outline-offset:3px}
.meta{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--sc-ink-soft)}
.header-meta{flex:1;text-align:center}
@media(max-width:900px){.header-meta{display:none}}
h1,h2,h3{text-wrap:balance}
p{text-wrap:pretty}
.hero{padding-block:calc(72px + 12vh) 12vh}
.hero h1{font-size:clamp(2.8rem,7.4vw,6.5rem);line-height:.98;letter-spacing:-.035em;font-weight:560;margin:0}
.hero--big h1{font-size:clamp(3rem,10vw,9rem)}
.hero .lead{font-size:clamp(1.06rem,1.4vw,1.2rem);line-height:1.6;color:var(--sc-ink-soft);max-width:44ch}
.facts{list-style:none;margin:0;padding:0;border-top:1px solid var(--hair);align-self:center}
.facts li{display:grid;grid-template-columns:140px 1fr;gap:16px;align-items:center;min-height:24px;padding:16px 0;border-bottom:1px solid var(--hair);white-space:nowrap}
.facts .k{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--sc-ink-soft)}
@media(max-width:700px){.facts li{white-space:normal;grid-template-columns:110px 1fr}}
.quote{margin:0;align-self:center;border-top:1px solid var(--hair);padding-top:24px;font-size:clamp(1.3rem,2vw,1.8rem);line-height:1.25;letter-spacing:-.02em;font-weight:500}
.statement-stage{min-height:100vh;display:grid;place-items:center;text-align:center;padding:0 var(--gutter,24px)}
.statement-stage .line{grid-area:1/1;font-family:var(--font-display);font-size:clamp(2.4rem,6vw,5.4rem);line-height:1;letter-spacing:-.035em;font-weight:560;max-width:16ch;margin:0}
.statement-stage .line em{font-style:normal;color:var(--sc-accent)}
@media(max-width:700px){.statement-stage{min-height:auto;display:flex;flex-direction:column;gap:24px;padding:20vh 20px}.statement-stage .line{opacity:1!important;transform:none!important;visibility:visible!important;font-size:clamp(2rem,9vw,3rem)}}
.list{list-style:none;margin:0;padding:0;border-top:1px solid var(--hair)}
.list li a,.list li>div{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr) 24px;gap:24px;align-items:baseline;padding:28px 0;border-bottom:1px solid var(--hair);color:inherit;text-decoration:none}
.list h3{margin:0;font-size:clamp(1.4rem,2.4vw,2rem);letter-spacing:-.02em;font-weight:560}
.list p{margin:0;color:var(--sc-ink-soft)}
.list .arr{transition:transform .2s var(--ease)}
.list--big li>div{grid-template-columns:64px minmax(0,5fr) minmax(0,6fr);padding:48px 0}
.list--big h3{font-size:clamp(1.8rem,3.6vw,3rem)}
.list--big .idx{font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--sc-accent)}
@media(hover:hover) and (pointer:fine){.list li a:hover .arr{transform:translateX(4px)}.list li a:hover h3{color:var(--sc-accent)}}
@media(max-width:700px){.list li a,.list li>div,.list--big li>div{grid-template-columns:1fr;gap:8px}.list .arr{display:none}}
.works{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}
.work{border:1px solid var(--hair);border-radius:6px;padding:32px;background:var(--sc-surface);display:flex;flex-direction:column;gap:16px;min-height:280px;justify-content:space-between}
.work h3{margin:0;font-size:clamp(1.5rem,2.6vw,2.2rem);letter-spacing:-.02em;font-weight:560;line-height:1.05}
.work:nth-child(1){grid-column:span 7}.work:nth-child(2){grid-column:span 5}.work:nth-child(3){grid-column:span 12;min-height:200px}
@media(max-width:800px){.work:nth-child(n){grid-column:span 12;min-height:0}}
.close{text-align:center;background:var(--sc-ink);color:var(--sc-canvas);--ink:var(--sc-canvas);--ink-soft:#a9ada6}
.close h2{font-size:clamp(2.4rem,5.6vw,4.6rem);letter-spacing:-.03em;line-height:1;margin:0 auto 32px;max-width:16ch;color:var(--sc-canvas)}
.close .btn{background:var(--sc-accent);color:#fff}
.folio{position:fixed;left:12px;top:50%;transform:translateY(-50%);z-index:5;display:flex;gap:12px;align-items:stretch;height:40vh}
.folio__rule{width:1px;background:var(--hair);position:relative;overflow:hidden}
.folio__rule i{position:absolute;inset:0;background:var(--sc-accent);transform-origin:top;transform:scaleY(var(--fp,0))}
.folio__label{writing-mode:vertical-rl;transform:rotate(180deg);font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--sc-ink-soft)}
@media(max-width:1500px){.folio__label{display:none}}
@media(max-width:1023px){.folio{display:none}}
.steps{list-style:none;margin:0;padding:0;border-left:1px solid var(--hair)}
.steps li{padding:0 0 40px 32px;position:relative}
.steps li::before{content:"";position:absolute;left:-5px;top:.5em;width:9px;height:9px;border-radius:50%;background:var(--sc-accent)}
.steps h3{margin:0 0 8px;font-size:1.5rem;letter-spacing:-.02em}
.site-footer .meta{display:block}
.contact-actions{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}
@media(prefers-reduced-motion:reduce){.folio__rule i{transform:scaleY(1)}.list .arr{transition:none}}