:root{--ink:#131313;--muted:#757575;--line:#dcdcdc;--paper:#fff;--soft:#f4f4f2;--pad:clamp(20px,4.3vw,72px);--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Geist,Arial,sans-serif;font-size:16px;word-break:keep-all}a{color:inherit;text-decoration:none}button{font:inherit}.site-header{position:absolute;z-index:10;inset:0 0 auto;display:flex;justify-content:space-between;align-items:center;padding:22px var(--pad);color:#fff}.site-header.on-light{position:relative;color:var(--ink);padding-bottom:18px}.brand{font-size:20px;font-weight:600;letter-spacing:-.055em}.nav{display:flex;align-items:center;gap:clamp(20px,3vw,54px);font-size:15px;font-weight:500}.nav a{transition:opacity .24s ease}.nav a:hover,.nav a[aria-current=page]{opacity:.48}.contact-pill{border:1px solid #131313;border-radius:999px;padding:9px 14px;font-size:13px}.on-light .contact-pill{border-color:#131313}.menu-button{display:none;border:0;background:transparent;color:inherit;font-size:25px;line-height:1;cursor:pointer}.hero{position:relative;min-height:min(92vh,920px);margin:8px;overflow:hidden;border-radius:var(--radius);color:#fff;background:#152a33}.hero-media,.project-image,.feature-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-media{animation:heroBreathe 12s ease-in-out infinite alternate}.hero::after,.project-stage::after,.feature-stage::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.18),transparent 40%,rgba(0,0,0,.56))}.hero-content{position:absolute;z-index:2;inset:auto var(--pad) clamp(34px,7vw,84px);display:flex;justify-content:space-between;align-items:end;gap:30px}.eyebrow{margin:0 0 18px;font-size:14px}.hero h1{margin:0;font-size:clamp(58px,11vw,156px);line-height:.84;letter-spacing:-.095em;font-weight:600}.hero-note{max-width:310px;margin:0 0 4px;font-size:17px;line-height:1.28;letter-spacing:-.045em}.section{padding:clamp(88px,12vw,182px) var(--pad)}.section--short{padding-top:0}.label{margin:0;color:var(--muted);font-size:14px}.intro{display:grid;grid-template-columns:1fr minmax(330px,1.7fr);gap:clamp(30px,8vw,142px);align-items:end}.intro-copy{margin:0;max-width:920px;font-size:clamp(34px,5.4vw,78px);line-height:.97;letter-spacing:-.078em;font-weight:500}.under-link{display:inline-flex;align-items:center;gap:10px;margin-top:34px;padding-bottom:6px;border-bottom:1px solid currentColor;font-size:15px;transition:gap .24s ease}.under-link:hover{gap:16px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px}.display-title{margin:7px 0 0;font-size:clamp(40px,5.2vw,76px);line-height:.9;letter-spacing:-.08em;font-weight:500}.project-stage,.feature-stage{position:relative;display:block;overflow:hidden;aspect-ratio:16/9;border-radius:var(--radius);background:#1d1d1d;color:#fff}.project-image,.feature-media{transition:transform .9s cubic-bezier(.2,.8,.2,1)}.project-card:hover .project-image,.feature-stage:hover .feature-media{transform:scale(1.045)}.project-overlay{position:absolute;z-index:2;inset:auto 26px 23px;display:flex;justify-content:space-between;align-items:end;gap:22px}.project-index,.project-type{font-size:13px;opacity:.72}.project-name{margin:7px 0 0;font-size:clamp(26px,3.2vw,48px);line-height:.95;letter-spacing:-.065em;font-weight:500}.project-arrow{font-size:14px;white-space:nowrap;transition:transform .25s ease}.project-card:hover .project-arrow{transform:translateX(8px)}.project-meta{display:flex;justify-content:space-between;padding:14px 2px 0;color:var(--muted);font-size:14px}.arrows{display:flex;gap:8px;margin-top:22px}.arrows button{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:#fff;cursor:pointer;transition:background .2s,color .2s}.arrows button:hover{background:var(--ink);color:#fff}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.feature-stage{aspect-ratio:4/3}.feature-stage.wide{grid-column:span 2;aspect-ratio:16/7}.feature-copy{position:absolute;z-index:2;inset:auto 22px 20px}.feature-copy p{margin:0 0 8px;font-size:13px;opacity:.72}.feature-copy h2{margin:0;font-size:clamp(25px,3vw,44px);line-height:.95;letter-spacing:-.065em;font-weight:500}.soft{background:var(--soft)}.about-grid{display:grid;grid-template-columns:1fr 1.8fr;gap:clamp(30px,8vw,142px)}.about-copy{margin:0;max-width:880px;font-size:clamp(33px,4.7vw,67px);line-height:.99;letter-spacing:-.075em;font-weight:500}.about-points{display:grid;grid-template-columns:1fr 1fr;gap:40px 56px;margin-top:64px}.about-points h3{margin:0 0 12px;font-size:18px;font-weight:500;letter-spacing:-.04em}.about-points p{margin:0;color:#555;line-height:1.48;letter-spacing:-.025em}.page-hero{position:relative;min-height:62vh;margin:8px;overflow:hidden;border-radius:var(--radius);color:#fff;background:#151515}.page-hero .hero-content{inset:auto var(--pad) clamp(38px,7vw,76px)}.page-hero h1{font-size:clamp(62px,10vw,140px)}.page-kicker{margin:0 0 16px;font-size:14px}.project-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(38px,6vw,90px) 18px}.project-list .project-stage{aspect-ratio:16/10}.project-list .project-name{font-size:clamp(25px,2.7vw,40px)}.project-list .project-overlay{inset:auto 20px 18px}.project-list .project-meta{padding-top:12px}.archive-intro{max-width:740px;margin:0;font-size:clamp(25px,3.4vw,50px);line-height:1.04;letter-spacing:-.06em}.contact{background:#141414;color:#fff}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:end}.contact h2{margin:0;font-size:clamp(50px,8vw,124px);line-height:.84;letter-spacing:-.095em;font-weight:500}.contact-copy{max-width:320px;margin:0 0 24px;color:#b8b8b8;line-height:1.43}.contact-links{display:flex;flex-wrap:wrap;gap:16px 26px;padding-top:22px;border-top:1px solid #3d3d3d;font-size:15px}.contact-links a:hover{text-decoration:underline}footer{display:flex;justify-content:space-between;gap:24px;padding:22px var(--pad);color:#777;font-size:13px}.top-button{position:fixed;z-index:30;right:24px;bottom:24px;border:1px solid #bdbdbd;border-radius:999px;padding:10px 14px;background:rgba(255,255,255,.88);color:var(--ink);backdrop-filter:blur(12px);opacity:0;pointer-events:none;transform:translateY(12px);transition:.25s ease;cursor:pointer}.top-button.is-visible{opacity:1;pointer-events:auto;transform:none}.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.8,.2,1)}.reveal.is-shown{opacity:1;transform:none}@keyframes heroBreathe{from{transform:scale(1)}to{transform:scale(1.045)}}@media(max-width:720px){.site-header{padding:18px 20px}.nav,.contact-pill{display:none}.menu-button{display:block}.hero{min-height:calc(100svh - 16px);border-radius:15px}.hero-content{inset:auto 20px 28px;display:block}.hero h1,.page-hero h1{font-size:clamp(58px,17vw,92px)}.hero-note{margin:24px 0 0 auto;text-align:right;font-size:15px}.section{padding:84px 20px}.intro,.about-grid,.contact-grid{grid-template-columns:1fr;gap:28px}.intro-copy,.about-copy{font-size:clamp(35px,10vw,57px)}.section-head{display:block}.section-head .under-link{margin-top:20px}.project-overlay{inset:auto 16px 16px}.project-name{font-size:clamp(26px,7vw,38px)}.feature-grid,.project-list{grid-template-columns:1fr}.feature-stage.wide{grid-column:auto;aspect-ratio:4/3}.about-points{grid-template-columns:1fr;gap:28px;margin-top:44px}.page-hero{min-height:58svh;border-radius:15px}.page-hero .hero-content{inset:auto 20px 30px}.contact h2{font-size:clamp(60px,17vw,96px)}footer{display:block;padding:18px 20px 26px}footer span{display:block;margin-top:8px}.top-button{right:16px;bottom:16px}}
.site-header:not(.on-light) .contact-pill{border-color:#fff}
.contact-pill{font-size:16px;font-weight:600}
.contact-pill{padding:8px 12px}
.contact-pill{transition:background-color 280ms cubic-bezier(.2,.8,.2,1),color 280ms cubic-bezier(.2,.8,.2,1),border-color 280ms cubic-bezier(.2,.8,.2,1)}
.site-header:not(.on-light) .contact-pill:hover,.site-header:not(.on-light) .contact-pill:focus-visible{border-color:#fff;background:#fff;color:#131313}
.site-header.on-light .contact-pill:hover,.site-header.on-light .contact-pill:focus-visible{border-color:#131313;background:#131313;color:#fff}
