
:root{--bg:#05070a;--bg2:#0a0d12;--ink:#f5f7fb;--muted:#aab3c2;--line:rgba(255,255,255,.13);--cyan:#4cbcff;--electric:#237ee8;--pad:clamp(24px,4vw,76px);--sans:"Helvetica Neue",Helvetica,Arial,sans-serif;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);overflow-x:hidden}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%}button{font:inherit}.skip-link{position:fixed;left:12px;top:-100px;z-index:200;background:#fff;color:#000;padding:12px 16px}.skip-link:focus{top:12px}::selection{background:var(--cyan);color:#00111d}.section-pad{padding-left:var(--pad);padding-right:var(--pad)}.page-noise{position:fixed;inset:0;pointer-events:none;z-index:99;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.72'/%3E%3C/svg%3E")}.cursor-glow{position:fixed;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(52,155,255,.08),transparent 66%);pointer-events:none;z-index:1;transform:translate(-50%,-50%)}
.site-header{height:90px;position:fixed;inset:0 0 auto;z-index:80;padding:0 var(--pad);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid transparent;transition:.3s;background:linear-gradient(180deg,rgba(5,7,10,.65),transparent)}.site-header.scrolled{height:72px;background:rgba(5,7,10,.88);backdrop-filter:blur(18px);border-color:var(--line)}.brand{width:154px;display:block}.brand img{height:43px;width:auto;object-fit:contain}.desktop-nav{display:flex;gap:40px;font-family:var(--mono);font-size:12px;letter-spacing:.11em;text-transform:uppercase}.desktop-nav a{color:#c8ced8;position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-9px;height:1px;background:var(--cyan);transition:.25s}.desktop-nav a:hover:after,.desktop-nav a.active:after{right:0}.project-link{justify-self:end;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase}.project-link span,.text-link span{color:var(--cyan);margin-left:9px}.menu-toggle{display:none;background:none;border:0;width:40px;height:40px;position:relative}.menu-toggle span{position:absolute;left:6px;right:6px;height:1px;background:#fff;top:14px;transition:.3s}.menu-toggle span:last-child{top:24px}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-5px) rotate(-45deg)}.mobile-menu{position:fixed;inset:0;z-index:70;background:rgba(5,7,10,.98);display:none;align-items:center;padding:var(--pad);opacity:0;visibility:hidden;transition:.3s}.mobile-menu.open{opacity:1;visibility:visible}.mobile-menu nav{display:grid;gap:22px}.mobile-menu a{font-size:clamp(38px,11vw,72px);letter-spacing:-.06em}
.hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;overflow:hidden}.hero-media,.hero-frame,.hero-shade,.hero-grid{position:absolute;inset:0}.hero-frame{opacity:0;transform:scale(1.025);transition:opacity 1.1s ease,transform 7s ease}.hero-frame img{height:100%;object-fit:cover}.hero-frame.active{opacity:1;transform:scale(1)}.hero-shade{background:linear-gradient(90deg,rgba(5,7,10,.94) 0,rgba(5,7,10,.65) 43%,rgba(5,7,10,.22) 78%),linear-gradient(0deg,rgba(5,7,10,.92),transparent 56%)}.hero-grid{opacity:.15;background-image:linear-gradient(rgba(255,255,255,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.11) 1px,transparent 1px);background-size:82px 82px;mask-image:linear-gradient(90deg,#000,transparent 68%)}.hero-copy{position:relative;z-index:2;width:100%;padding:0 var(--pad) 10vh}.eyebrow{font-family:var(--mono);font-size:12px;line-height:1.5;letter-spacing:.11em;color:#c0c8d4;text-transform:uppercase;margin:0 0 34px}.eyebrow span{color:var(--cyan);margin-right:13px}.hero h1,.work-head h2,.cap-heading h2,.method h2,.archive-hero h1,.inner-hero h1{font-size:clamp(68px,9.7vw,166px);line-height:.86;letter-spacing:-.072em;margin:0;font-weight:700}.hero h1 em,.work-head h2 em,.cap-heading h2 em,.method h2 em,.archive-hero h1 em,.inner-hero h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.7);letter-spacing:-.022em;line-height:1.02}.hero-bottom{display:grid;grid-template-columns:minmax(300px,680px) 1fr;gap:7vw;align-items:end;margin-top:44px;padding-left:26vw}.hero-bottom p{font-size:clamp(18px,1.55vw,24px);line-height:1.58;color:#d7dde7;margin:0}.text-link{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;display:inline-flex;align-items:center;justify-self:end}.hero-status{position:absolute;z-index:3;left:var(--pad);right:var(--pad);bottom:28px;display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:#8997aa}.pulse-label{display:flex;align-items:center;gap:8px}.pulse-label i{width:7px;height:7px;border-radius:50%;background:#48de88;box-shadow:0 0 0 0 rgba(72,222,136,.55);animation:pulse 2s infinite}@keyframes pulse{60%{box-shadow:0 0 0 9px transparent}}.hero-counter{position:absolute;z-index:3;right:var(--pad);top:50%;font-family:var(--mono);font-size:12px;color:#94a0b1}.hero-counter b{font-weight:400;margin:0 7px;color:#566172}.hero-labels{position:absolute;z-index:3;right:var(--pad);bottom:67px;text-align:right;font-family:var(--mono);font-size:11px;line-height:1.55;letter-spacing:.08em;color:#a6b0bf;text-transform:uppercase}.hero-project-label{display:none}.hero-project-label.active{display:block}.hero-project-label b{color:var(--cyan);font-weight:400;margin-right:8px}
.statement{min-height:84vh;padding-top:15vh;padding-bottom:15vh;display:grid;grid-template-columns:1fr 3fr;gap:8vw;border-bottom:1px solid var(--line)}.section-code{font-family:var(--mono);font-size:11px;letter-spacing:.09em;color:#7b8799}.statement-copy{max-width:1190px}.kicker{font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--cyan);text-transform:uppercase}.statement h2{font-size:clamp(45px,6vw,95px);line-height:.99;letter-spacing:-.065em;margin:36px 0 0;font-weight:600}.statement h2 em{font-style:normal;color:#86cfff}.body-copy{font-size:clamp(18px,1.5vw,23px);line-height:1.7;color:var(--muted);max-width:760px;margin:58px 0 0 27%}
.work{padding-top:14vh;padding-bottom:12vh}.work-head{display:flex;justify-content:space-between;gap:7vw;align-items:end;padding-bottom:8vh}.work-head h2,.cap-heading h2,.method h2{font-size:clamp(60px,8vw,132px)}.work-intro{max-width:540px}.work-intro p{color:var(--muted);font-size:18px;line-height:1.72;margin:0 0 25px}.work-intro .text-link{justify-self:auto}.featured-stack{display:grid;gap:7vh}.feature-card{padding:0 var(--pad)}.feature-card:nth-child(even){padding-left:18vw}.feature-card:nth-child(odd):not(:first-child){padding-right:18vw}.feature-media{position:relative;height:min(62vw,800px);min-height:520px;display:block;overflow:hidden;background:#10141b}.feature-card--hero .feature-media{height:min(70vw,900px)}.feature-media img{height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1),filter .4s}.feature-media:hover img{transform:scale(1.018);filter:saturate(1.04)}.feature-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,5,8,.87),transparent 55%),linear-gradient(90deg,rgba(3,5,8,.34),transparent 54%)}.feature-index,.feature-arrow{position:absolute;top:24px;font-family:var(--mono);font-size:11px;letter-spacing:.1em}.feature-index{left:24px;color:#d2d8e2}.feature-arrow{right:24px;font-size:24px;color:var(--cyan);transition:.25s}.feature-media:hover .feature-arrow{transform:rotate(45deg)}.feature-title{position:absolute;left:clamp(24px,4vw,64px);bottom:clamp(28px,5vw,70px);max-width:84%}.feature-title p{font-family:var(--mono);font-size:12px;line-height:1.5;letter-spacing:.11em;color:var(--cyan);text-transform:uppercase}.feature-title h3{font-size:clamp(44px,6.4vw,106px);line-height:.86;letter-spacing:-.068em;margin:13px 0 0;max-width:1020px}.feature-meta{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:17px 0 0;font-family:var(--mono);font-size:11px;line-height:1.55;letter-spacing:.07em;color:#8995a7;text-transform:uppercase}.archive-cta{padding-top:15vh;display:grid;grid-template-columns:1fr 2.2fr;gap:6vw;align-items:start}.archive-cta>span{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--cyan)}.archive-cta h3{font-size:clamp(42px,5vw,78px);line-height:1;letter-spacing:-.06em;margin:0}.archive-cta a{grid-column:2;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--line);padding:23px 0;display:flex;justify-content:space-between}.archive-cta a b{color:var(--cyan);font-size:20px;font-weight:400}
.capabilities{display:grid;grid-template-columns:1fr 1.7fr;gap:9vw;padding-top:14vh;padding-bottom:14vh;background:#070a0f;border-top:1px solid var(--line)}.cap-heading{position:sticky;top:120px;align-self:start}.cap-heading>p:last-child{max-width:500px;color:var(--muted);line-height:1.72;font-size:18px;margin-top:42px}.cap-list{border-top:1px solid var(--line)}.cap-item{min-height:160px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:55px 1.15fr 1fr 30px;gap:22px;align-items:center}.cap-item>span{font-family:var(--mono);font-size:11px;color:var(--cyan)}.cap-item h3{font-size:clamp(25px,2.2vw,36px);font-weight:500;letter-spacing:-.04em;margin:0}.cap-item p{font-family:var(--mono);font-size:13px;line-height:1.75;color:#929daf}.cap-item b{font-weight:400;color:#536074;transition:.25s}.cap-item:hover b{color:var(--cyan);transform:rotate(45deg)}.systems-strip{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0}.ticker{display:flex;width:max-content;align-items:center;gap:28px;font-family:var(--mono);font-size:12px;letter-spacing:.1em;animation:ticker 30s linear infinite}.ticker i{color:var(--cyan);font-style:normal}@keyframes ticker{to{transform:translateX(-50%)}}
.method{padding-top:14vh;padding-bottom:14vh}.method-intro{display:grid;grid-template-columns:1fr 2fr;gap:8vw;align-items:start}.method-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:10vh;border-top:1px solid var(--line);border-left:1px solid var(--line)}.method-grid article{min-height:330px;padding:32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.method-grid span{font-family:var(--mono);font-size:11px;color:var(--cyan)}.method-grid h3{font-size:29px;line-height:1.05;letter-spacing:-.045em;margin:86px 0 24px}.method-grid p{font-size:16px;line-height:1.72;color:var(--muted);margin:0}
.contact{min-height:100svh;position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:14vh var(--pad) 30px}.contact-bg{position:absolute;inset:0;background:radial-gradient(circle at 78% 25%,rgba(38,131,233,.32),transparent 27%),radial-gradient(circle at 65% 72%,rgba(76,188,255,.14),transparent 23%),linear-gradient(120deg,#06080d,#0d1420)}.contact-bg:after{content:"";position:absolute;inset:-50%;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:75px 75px;transform:perspective(700px) rotateX(58deg) translateY(20%);mask-image:linear-gradient(black,transparent 70%)}.contact-copy{position:relative;z-index:2}.contact h2{font-size:clamp(60px,8.6vw,145px);line-height:.9;letter-spacing:-.068em;margin:0}.contact h2 em{font-style:normal;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.68);letter-spacing:-.02em;line-height:1.02}.contact-actions{width:min(720px,100%);margin-top:8vh}.contact-cta{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.38);padding:22px 0;font-size:clamp(21px,2vw,30px);letter-spacing:-.04em}.contact-cta--small{font-size:18px;color:#c0c7d2}.contact-cta b{font-weight:400;color:var(--cyan);transition:.25s}.contact-cta:hover b{transform:rotate(45deg)}.site-footer{position:relative;z-index:2;display:flex;align-items:end;justify-content:space-between;border-top:1px solid var(--line);padding:28px var(--pad);background:#05070a}.contact .site-footer{padding-left:0;padding-right:0;background:transparent;margin-top:10vh}.footer-logo{width:136px;opacity:.75}.footer-meta{display:flex;gap:26px;flex-wrap:wrap;justify-content:flex-end;font-family:var(--mono);font-size:11px;line-height:1.6;letter-spacing:.07em;color:#8d98a9}.footer-meta b{font-weight:400}
.archive-hero{min-height:78svh;padding:23vh var(--pad) 8vh;display:flex;flex-direction:column;justify-content:flex-end;background:radial-gradient(circle at 78% 28%,rgba(39,136,239,.23),transparent 24%),linear-gradient(120deg,#05070a,#0a1019);border-bottom:1px solid var(--line)}.archive-hero h1{font-size:clamp(67px,10vw,168px)}.archive-hero-bottom{display:flex;justify-content:space-between;gap:50px;align-items:end;padding-left:28vw;margin-top:46px}.archive-hero-bottom p{max-width:660px;color:#bdc6d3;font-size:clamp(18px,1.55vw,23px);line-height:1.6;margin:0}.archive-hero-bottom span{font-family:var(--mono);font-size:11px;line-height:1.55;letter-spacing:.09em;color:#788599}.archive-controls{padding-top:52px;padding-bottom:30px;position:sticky;top:71px;z-index:35;background:rgba(5,7,10,.91);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.filter-list{display:flex;gap:10px;flex-wrap:wrap}.filter{border:1px solid var(--line);background:transparent;color:#aab3c0;border-radius:999px;padding:12px 18px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.filter:hover,.filter.active{border-color:rgba(76,188,255,.7);color:#e9f7ff;background:rgba(76,188,255,.09)}.archive-grid{padding-top:6vh;padding-bottom:12vh;display:grid;grid-template-columns:1fr 1fr;gap:8vh 2.4vw}.archive-card{display:block;min-width:0}.archive-card.hidden{display:none}.archive-media{aspect-ratio:16/10;position:relative;overflow:hidden;background:#0c1017}.archive-media img{height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.7,.2,1)}a.archive-card:hover .archive-media img{transform:scale(1.02)}.legacy-image .archive-media{max-height:520px}.archive-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,7,10,.58),transparent 55%)}.archive-badge{position:absolute;left:18px;top:18px;padding:10px 12px;background:rgba(5,7,10,.8);backdrop-filter:blur(10px);font-family:var(--mono);font-size:10px;letter-spacing:.09em;color:var(--cyan)}.archive-badge--muted{color:#a5afbd}.archive-copy{display:flex;justify-content:space-between;gap:30px;padding-top:20px}.archive-copy span{font-family:var(--mono);font-size:11px;line-height:1.5;letter-spacing:.08em;text-transform:uppercase;color:var(--cyan)}.archive-copy h2{font-size:clamp(29px,3vw,49px);line-height:.95;letter-spacing:-.055em;margin:12px 0 0;font-weight:600;max-width:650px}.archive-copy>p{font-family:var(--mono);font-size:11px;line-height:1.55;letter-spacing:.07em;color:#828ea0;text-transform:uppercase;margin:0;text-align:right}.archive-end{padding-top:10vh;padding-bottom:14vh;border-top:1px solid var(--line)}.archive-end p{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--cyan)}.archive-end h2{font-size:clamp(48px,7vw,112px);letter-spacing:-.07em;line-height:.92;margin:25px 0 8vh}.archive-end a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:22px 0;font-size:clamp(22px,2.2vw,33px)}.archive-end a b{color:var(--cyan);font-weight:400}.archive-end .contact-cta{font-size:clamp(21px,2vw,30px);letter-spacing:-.04em}.archive-end .contact-cta--small{font-size:18px;color:#c0c7d2}.inner-cta h2 em{font-style:normal;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.68);letter-spacing:-.018em;line-height:1.04}
.project-hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;padding:0 var(--pad) 9vh;overflow:hidden}.project-hero-media{position:absolute;inset:0}.project-hero-media img{height:100%;object-fit:cover}.project-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,7,10,.96) 0,rgba(5,7,10,.48) 48%,rgba(5,7,10,.12) 78%),linear-gradient(90deg,rgba(5,7,10,.48),transparent 58%)}.project-hero-copy{position:relative;z-index:2;width:100%}.project-hero-copy h1{font-size:clamp(58px,8.7vw,146px);line-height:.82;letter-spacing:-.073em;margin:0;font-weight:700;max-width:1450px}.project-hero-meta{display:flex;gap:34px;flex-wrap:wrap;margin-top:38px;font-family:var(--mono);font-size:11px;line-height:1.55;letter-spacing:.09em;color:#c3cad5;text-transform:uppercase}.project-hero-meta span{padding-right:34px;border-right:1px solid var(--line)}.project-hero-meta span:last-child{border:0}.project-back{position:absolute;left:var(--pad);top:118px;z-index:3;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#cbd2dc}.project-back b{font-weight:400;color:var(--cyan);margin-right:9px}.project-hero--legacy{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:7vw;padding-top:16vh;padding-bottom:10vh;background:linear-gradient(135deg,#06090e,#0d1521)}.project-hero--legacy .project-back{top:110px}.legacy-hero-image{position:relative;z-index:2;max-width:920px}.legacy-hero-image img{aspect-ratio:4/3;object-fit:cover}.project-hero--legacy .project-hero-copy{align-self:end}.project-hero--legacy .project-hero-copy h1{font-size:clamp(54px,6.8vw,116px)}
.project-overview{display:grid;grid-template-columns:1fr 2.5fr;gap:8vw;padding-top:14vh;padding-bottom:14vh;border-bottom:1px solid var(--line)}.project-overview .label{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--cyan)}.project-overview h2{font-size:clamp(40px,5vw,80px);line-height:1.02;letter-spacing:-.058em;margin:0;font-weight:600}.project-overview p{max-width:820px;color:var(--muted);font-size:clamp(18px,1.45vw,23px);line-height:1.7;margin:42px 0 0}.project-facts{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}.project-fact{padding:40px var(--pad);border-right:1px solid var(--line)}.project-fact:last-child{border-right:0}.project-fact span{display:block;font-family:var(--mono);font-size:11px;color:#788599;letter-spacing:.09em;margin-bottom:15px}.project-fact b{font-size:20px;font-weight:500;letter-spacing:-.03em}.project-gallery{padding:var(--pad);display:grid;grid-template-columns:1fr 1fr;gap:var(--pad);background:#090c11}.project-gallery-item{margin:0;min-height:560px;overflow:hidden}.project-gallery-item:first-child{grid-column:1/3;min-height:min(70vw,900px)}.project-gallery-item img{width:100%;height:100%;object-fit:cover}.project-next{min-height:70vh;padding:12vh var(--pad);display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(135deg,#070a0f,#101927)}.project-next>span{font-family:var(--mono);font-size:11px;color:var(--cyan);letter-spacing:.1em}.project-next a{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:1px solid var(--line);padding-bottom:28px}.project-next p{font-family:var(--mono);font-size:11px;line-height:1.55;letter-spacing:.1em;color:#8793a5;text-transform:uppercase}.project-next h2{font-size:clamp(48px,7vw,112px);line-height:.86;letter-spacing:-.066em;margin:12px 0 0;max-width:1100px}.project-next b{font-size:44px;font-weight:300;color:var(--cyan);transition:.25s}.project-next a:hover b{transform:rotate(45deg)}
.inner-hero{min-height:82svh;padding:23vh var(--pad) 10vh;display:flex;flex-direction:column;justify-content:flex-end;background:radial-gradient(circle at 78% 24%,rgba(39,136,239,.24),transparent 25%),linear-gradient(120deg,#05070a,#0a1019);border-bottom:1px solid var(--line)}.inner-hero>p:last-child{font-size:clamp(18px,1.6vw,24px);line-height:1.65;color:#c1c9d5;max-width:720px;margin:48px 0 0 29%}.inner-hero--about{background:radial-gradient(circle at 18% 72%,rgba(39,136,239,.19),transparent 28%),linear-gradient(120deg,#05070a,#0b121c)}.capability-page{padding-top:10vh;padding-bottom:13vh}.capability-page article{display:grid;grid-template-columns:90px 1.25fr 1fr;gap:4vw;padding:54px 0;border-bottom:1px solid var(--line);align-items:start}.capability-page article>span{font-family:var(--mono);font-size:12px;color:var(--cyan)}.capability-page h2{font-size:clamp(38px,4.4vw,72px);line-height:.96;letter-spacing:-.06em;margin:0}.capability-page p{font-size:19px;line-height:1.72;color:var(--muted);margin:0}.capability-page b{grid-column:2/4;font-family:var(--mono);font-size:12px;letter-spacing:.07em;color:#8793a5;font-weight:400}.about-story{display:grid;grid-template-columns:1fr 3fr;gap:8vw;padding-top:14vh;padding-bottom:14vh}.about-story h2{font-size:clamp(45px,6vw,94px);line-height:.98;letter-spacing:-.066em;margin:0 0 60px}.about-story p{font-size:clamp(18px,1.45vw,23px);line-height:1.72;color:var(--muted);max-width:850px}.principles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-top:0;padding-bottom:0}.principles article{padding:56px 40px;min-height:380px;border-right:1px solid var(--line)}.principles article:last-child{border-right:0}.principles span{font-family:var(--mono);font-size:12px;color:var(--cyan)}.principles h3{font-size:clamp(28px,2.6vw,43px);line-height:1;letter-spacing:-.05em;margin:100px 0 28px}.principles p{font-size:17px;line-height:1.72;color:var(--muted)}.inner-cta{padding-top:14vh;padding-bottom:14vh}.inner-cta h2{font-size:clamp(48px,7vw,112px);letter-spacing:-.062em;line-height:1.0;margin:25px 0 8vh}.inner-cta a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:22px 0;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase}.inner-cta a b{font-size:20px;color:var(--cyan);font-weight:400}.contact-page{min-height:100svh;position:relative;padding:22vh var(--pad) 8vh;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.contact-page-copy{position:relative;z-index:2}.contact-page h1{font-size:clamp(66px,9vw,152px);line-height:.88;letter-spacing:-.07em;margin:0}.contact-page h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.7);letter-spacing:-.02em;line-height:1.02}.contact-page-copy>p:last-of-type{font-size:clamp(18px,1.55vw,24px);line-height:1.6;color:#c7cfda;max-width:620px;margin:46px 0 0 29%}.contact-page-meta{position:relative;z-index:2;display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:#8490a2}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}.reveal.in-view{opacity:1;transform:none}

/* Production V1.1 — museum/gallery track record and editorial treatment for selected legacy photography */
.museum-track{padding-top:14vh;padding-bottom:14vh;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#05070a,#080c12)}
.museum-track-head{display:grid;grid-template-columns:1.55fr 1fr;gap:9vw;align-items:end}
.museum-track h2{font-size:clamp(60px,7.4vw,124px);line-height:.9;letter-spacing:-.068em;margin:0;font-weight:700}
.museum-track h2 em{font-style:normal;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.7);letter-spacing:-.02em;line-height:1.02}
.museum-track-copy p{margin:0 0 30px;color:var(--muted);font-size:18px;line-height:1.72;max-width:590px}
.museum-track-copy .text-link{justify-self:auto}
.museum-project-index{margin-top:9vh;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr}
.museum-project-index>a,.museum-project-index>span{min-height:104px;padding:24px 28px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:46px 1fr auto;gap:20px;align-items:center;transition:background .25s}
.museum-project-index>a:nth-child(odd),.museum-project-index>span:nth-child(odd){border-right:1px solid var(--line)}
.museum-project-index>a:hover{background:rgba(76,188,255,.055)}
.museum-project-index span span,.museum-project-index>a>span,.museum-project-index small{font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--cyan);font-weight:400}
.museum-project-index b{font-size:clamp(20px,1.65vw,29px);letter-spacing:-.035em;font-weight:500}
.museum-project-index i{font-style:normal;font-family:var(--mono);font-size:11px;letter-spacing:.07em;color:#7f8b9d;text-transform:uppercase;text-align:right}
.project-hero--editorial{background:#05070a;isolation:isolate}
.project-hero--editorial .project-hero-media{display:flex;align-items:center;justify-content:center;background:#080b10;overflow:hidden}
.project-hero--editorial .project-hero-media:before{content:"";position:absolute;inset:-40px;background:inherit;z-index:-2}
.project-hero--editorial .project-hero-media img{width:min(1600px,100%);height:auto;max-height:100%;object-fit:contain;filter:saturate(1.02) contrast(1.02)}
.project-hero--editorial .project-hero-media:after{background:linear-gradient(0deg,rgba(5,7,10,.98) 0,rgba(5,7,10,.54) 42%,rgba(5,7,10,.14) 76%),linear-gradient(90deg,rgba(5,7,10,.54),transparent 62%)}

@media(max-width:950px){.site-header{grid-template-columns:1fr auto;height:76px}.desktop-nav,.project-link{display:none}.menu-toggle{display:block;justify-self:end}.mobile-menu{display:flex}.cursor-glow{display:none}.hero{min-height:760px}.hero-copy{padding-bottom:11vh}.hero-bottom{grid-template-columns:1fr;padding-left:0}.text-link{justify-self:start}.hero-counter{top:auto;bottom:84px}.hero-labels{left:var(--pad);right:auto;text-align:left}.hero-status span:first-child{display:none}.statement{grid-template-columns:1fr;gap:42px;padding-top:11vh;padding-bottom:11vh}.body-copy{margin-left:0}.work-head{display:grid;gap:40px}.feature-card:nth-child(n){padding-left:var(--pad);padding-right:var(--pad)}.feature-media,.feature-card--hero .feature-media{height:74vh;min-height:540px}.archive-cta{grid-template-columns:1fr}.archive-cta a{grid-column:1}.capabilities{grid-template-columns:1fr;padding-top:11vh}.cap-heading{position:static;margin-bottom:60px}.cap-item{grid-template-columns:45px 1fr 30px}.cap-item p{grid-column:2/4;max-width:520px}.method-intro{grid-template-columns:1fr;gap:40px}.method-grid{grid-template-columns:1fr 1fr}.archive-hero-bottom{padding-left:0}.project-overview{grid-template-columns:1fr}.project-facts{grid-template-columns:1fr 1fr}.project-fact:nth-child(2){border-right:0}.project-fact{border-bottom:1px solid var(--line)}.project-gallery-item{min-height:480px}.project-hero--legacy{grid-template-columns:1fr;padding-top:16vh}.legacy-hero-image{max-width:760px}.site-footer{align-items:flex-start;gap:30px}.footer-meta{flex-direction:column;gap:7px}.inner-hero>p:last-child,.contact-page-copy>p:last-of-type{margin-left:0}.capability-page article{grid-template-columns:60px 1fr}.capability-page p{grid-column:2}.capability-page b{grid-column:2}.about-story{grid-template-columns:1fr}.principles{grid-template-columns:1fr}.principles article{border-right:0;border-bottom:1px solid var(--line);min-height:300px}.principles article:last-child{border-bottom:0}}
@media(max-width:650px){:root{--pad:20px}.site-header{padding:0 20px}.brand{width:126px}.brand img{height:36px}.hero h1{font-size:clamp(50px,17vw,80px)}.hero-grid{background-size:48px 48px}.hero-bottom{margin-top:30px}.hero-bottom p{font-size:17px}.hero-status{left:20px;right:20px}.hero-counter{right:20px}.hero-labels{left:20px}.statement{min-height:auto}.statement h2{font-size:42px}.body-copy{margin-top:35px;font-size:17px}.work{padding-top:10vh}.work-head h2,.cap-heading h2,.method h2{font-size:50px}.work-intro p{font-size:17px}.work-head{padding-bottom:6vh}.featured-stack{gap:60px}.feature-media,.feature-card--hero .feature-media{height:65vh;min-height:460px}.feature-title h3{font-size:39px}.feature-meta{flex-direction:column;gap:7px;font-size:10px}.archive-cta{padding-top:11vh}.archive-cta h3{font-size:42px}.capabilities{padding-bottom:11vh}.cap-item{grid-template-columns:34px 1fr 20px;gap:12px;min-height:155px}.cap-item h3{font-size:22px}.cap-item p{font-size:13px}.method-grid{grid-template-columns:1fr}.method-grid article{min-height:240px}.method-grid h3{margin-top:55px}.contact{min-height:760px;padding-top:11vh}.contact h2{font-size:clamp(48px,14vw,78px)}.site-footer{flex-direction:column}.footer-logo{width:112px}.archive-hero{min-height:700px;padding-top:18vh}.archive-hero h1{font-size:clamp(54px,16vw,82px)}.archive-hero-bottom{display:grid}.archive-controls{top:71px;padding-top:24px;padding-bottom:20px}.archive-grid{grid-template-columns:1fr;gap:56px}.archive-copy h2{font-size:36px}.archive-copy{display:grid}.archive-copy>p{text-align:left}.project-hero{min-height:760px}.project-hero-copy h1{font-size:clamp(50px,16vw,77px)}.project-back{top:95px}.project-hero-meta{gap:13px}.project-hero-meta span{padding-right:13px}.project-overview{padding-top:10vh;padding-bottom:10vh}.project-overview p{font-size:17px}.project-facts{grid-template-columns:1fr}.project-fact{border-right:0}.project-gallery{grid-template-columns:1fr;padding:20px;gap:20px}.project-gallery-item,.project-gallery-item:first-child{grid-column:auto;min-height:54vh}.project-next{min-height:580px}.project-next h2{font-size:49px}.inner-hero{min-height:700px;padding-top:18vh}.inner-hero h1{font-size:clamp(54px,16vw,82px)}.inner-hero>p:last-child{font-size:17px;margin-top:36px}.capability-page article{grid-template-columns:38px 1fr;gap:16px;padding:40px 0}.capability-page p{font-size:17px}.capability-page h2{font-size:38px}.about-story h2{font-size:42px}.about-story p{font-size:17px}.principles article{padding:42px 0}.principles h3{margin-top:66px}.inner-cta h2{font-size:48px}.contact-page{padding-top:18vh;min-height:800px}.contact-page h1{font-size:clamp(54px,16vw,82px)}.contact-page-copy>p:last-of-type{font-size:17px;margin-top:34px}.contact-page-meta{flex-direction:column;gap:8px}}

@media(max-width:950px){.museum-track-head{grid-template-columns:1fr;gap:42px}.museum-project-index{grid-template-columns:1fr}.museum-project-index>a:nth-child(odd),.museum-project-index>span:nth-child(odd){border-right:0}.project-hero--editorial .project-hero-media img{width:100%;height:100%;object-fit:cover}}
@media(max-width:650px){.museum-track{padding-top:11vh;padding-bottom:11vh}.museum-track h2{font-size:50px}.museum-track-copy p{font-size:17px}.museum-project-index{margin-top:7vh}.museum-project-index>a,.museum-project-index>span{min-height:96px;padding:20px 0;grid-template-columns:34px 1fr}.museum-project-index i{grid-column:2;text-align:left;margin-top:-9px}.museum-project-index b{font-size:21px}.project-hero--editorial .project-hero-media img{object-position:center}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker,.pulse-label i{animation:none}.hero-frame,.feature-media img,.archive-media img,.reveal{transition:none}.reveal{opacity:1;transform:none}}

/* Production V1.2: every archive card opens a project page. */
a.archive-card .archive-copy h2::after{content:"  ↗";font-size:.48em;color:var(--cyan);vertical-align:top;opacity:0;transition:opacity .25s}a.archive-card:hover .archive-copy h2::after{opacity:1}

/* Production V1.4 — V1.2 visual language retained; dual-market contact labels only. */
.contact-cta--small span{display:flex;align-items:baseline;gap:20px}
.contact-cta--small small{min-width:92px;font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--cyan);font-weight:400}
@media(max-width:650px){.contact-cta--small span{gap:12px}.contact-cta--small small{min-width:80px;font-size:9px}}


/* Production release V1.5.0 — image QA treatments */
.project-gallery--contained .project-gallery-item{background:#05070a;display:flex;align-items:center;justify-content:center;min-height:500px;padding:36px}
.project-gallery--contained .project-gallery-item:first-child{min-height:620px}
.project-gallery--contained .project-gallery-item img{width:auto;height:auto;max-width:100%;max-height:720px;object-fit:contain}
@media(max-width:650px){.project-gallery--contained .project-gallery-item,.project-gallery--contained .project-gallery-item:first-child{min-height:auto;padding:0}.project-gallery--contained .project-gallery-item img{width:100%;height:auto;max-height:none}}
