:root{--paper:#ecebe6;--ink:#0a0a09;--acid:#d8ff00;--pad:clamp(20px,3vw,52px);--sans:"Helvetica Neue",Helvetica,Arial,sans-serif;--serif:Georgia,"Times New Roman",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);overflow-x:hidden}body.loading{height:100vh;overflow:hidden;background:var(--acid)}body.loading>.site-header,body.loading>main,body.loading>footer,body.loading>.cursor,body.loading>.noise,body.loading>.lightbox{visibility:hidden}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}.noise{position:fixed;inset:0;z-index:99;pointer-events:none;opacity:.035;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='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.loader{position:relative;width:100%;height:100vh;height:100svh;background:var(--acid);display:flex;flex-direction:column;justify-content:space-between;padding:var(--pad);overflow:hidden}.loader.done{display:none}.loader-mark{display:flex;justify-content:space-between;font-size:clamp(80px,18vw,270px);font-weight:700;line-height:.8;letter-spacing:-.09em}.loader-count{font-variant-numeric:tabular-nums}.loader-line{height:2px;background:#0002;overflow:hidden}.loader-line i{display:block;width:0;height:100%;background:#000;transition:width .1s linear}
.cursor{position:fixed;z-index:150;width:72px;height:72px;border-radius:50%;background:var(--acid);display:grid;place-items:center;pointer-events:none;transform:translate(-50%,-50%) scale(0);transition:transform .25s;font-size:11px;font-weight:700;text-transform:uppercase}.cursor.visible{transform:translate(-50%,-50%) scale(1)}
.site-header{position:fixed;z-index:80;inset:0 0 auto;display:grid;grid-template-columns:1fr 1fr auto;align-items:start;padding:20px var(--pad);mix-blend-mode:difference;color:#fff;pointer-events:none}.site-header>*{pointer-events:auto}.brand{display:flex;gap:.16em;font-size:21px;font-weight:700;letter-spacing:-.06em}.brand span:first-child{font-style:italic}.header-role{margin:0;font-size:10px;line-height:1.25;text-transform:uppercase;letter-spacing:.08em}.menu-toggle{background:none;border:0;padding:0;display:flex;align-items:center;gap:12px;text-transform:uppercase;font-size:11px;font-weight:700;cursor:pointer}.menu-toggle i{width:28px;height:1px;background:currentColor;position:relative}.menu-toggle i:after{content:"";position:absolute;right:0;top:6px;width:17px;height:1px;background:currentColor}.site-nav{position:fixed;z-index:70;inset:0;background:var(--acid);color:var(--ink);padding:110px var(--pad) var(--pad);display:flex;flex-direction:column;transform:translateY(-105%);transition:transform .8s cubic-bezier(.77,0,.18,1)}.site-nav.open{transform:none}.nav-label{font-size:11px;text-transform:uppercase;margin:0 0 auto}.site-nav>a:not(.nav-pdf){display:flex;align-items:baseline;gap:30px;border-top:1px solid #000;padding:.06em 0;font-size:clamp(50px,8vw,120px);font-weight:700;letter-spacing:-.07em;line-height:.9}.site-nav>a span{font-size:11px;letter-spacing:0}.nav-pdf{align-self:flex-end;margin-top:30px;border-bottom:1px solid;font-size:13px}
.hero{height:100svh;min-height:650px;position:relative;background:#b9b9b6;overflow:hidden}.hero-media{position:absolute;inset:0;display:flex;justify-content:center}.hero-media img{width:auto;height:112%;object-fit:contain}.hero-kicker{position:absolute;top:20%;left:var(--pad);font-size:11px;line-height:1.25;text-transform:uppercase;letter-spacing:.12em}.hero h1{position:absolute;z-index:2;inset:auto var(--pad) 13%;margin:0;display:flex;flex-direction:column;font-size:clamp(70px,12.3vw,188px);font-weight:700;line-height:.67;letter-spacing:-.085em;text-transform:uppercase;pointer-events:none}.hero h1 span:nth-child(2){align-self:center}.hero h1 span:nth-child(3){align-self:flex-end}.hero h1 .outline{color:transparent;-webkit-text-stroke:1.5px var(--ink)}.hero-foot{position:absolute;z-index:3;bottom:22px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;align-items:end;font-size:10px;text-transform:uppercase;line-height:1.25}.hero-foot p{margin:0}.hero-foot a{font-size:12px;border-bottom:1px solid;padding-bottom:3px}.hero-foot a span{margin-left:18px}
.section-index{font-size:10px;text-transform:uppercase;letter-spacing:.12em;margin:0}.statement{min-height:100svh;padding:120px var(--pad) 60px;display:grid;grid-template-columns:1fr 8fr 2fr;gap:3vw;align-items:start}.statement-copy{font-size:clamp(44px,7.2vw,110px);line-height:.95;letter-spacing:-.06em;margin:12vh 0 0}.statement-copy em{font-family:var(--serif);font-weight:400}.statement-side{align-self:end;font-size:10px;text-transform:uppercase;line-height:1.5}
.work-header{min-height:80svh;padding:120px var(--pad) 70px;display:grid;grid-template-columns:2fr 7fr 2fr;gap:3vw;align-items:start}.work-header h2{font-size:clamp(62px,10vw,150px);line-height:.84;letter-spacing:-.075em;margin:14vh 0 0;font-weight:700}.work-header>p:last-child{align-self:end;font-size:10px;text-transform:uppercase}
.project{position:relative;min-height:115svh;padding:10vh var(--pad);overflow:hidden}.project.dark{background:var(--ink);color:var(--paper)}.project.acid{background:var(--acid)}.project-copy{position:relative;z-index:4}.project-copy span,.project-copy p{font-size:10px;line-height:1.4;text-transform:uppercase}.project-copy h3{font-size:clamp(48px,7vw,105px);line-height:.84;letter-spacing:-.06em;margin:25px 0}.frame{margin:0;position:absolute}.frame button,.archive button{border:0;padding:0;background:none;cursor:none;width:100%;height:100%;overflow:hidden}.frame img,.archive img{height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.16,1,.3,1),filter .5s}.frame button:hover img,.archive button:hover img{transform:scale(1.025)}.project-a .project-copy{position:absolute;left:7%;top:25%;mix-blend-mode:difference;color:#fff}.project-a .frame-main{width:43%;right:8%;top:10%}.project-a .frame-float{width:22%;left:14%;bottom:5%}.project-b .project-copy{position:absolute;right:7%;top:12%;text-align:right}.project-b .frame-wide{width:48%;left:7%;top:8%;height:85%}.project-b .frame-small{width:23%;right:12%;bottom:7%}.frame figcaption{display:flex;justify-content:space-between;margin-top:8px;font-size:9px;text-transform:uppercase}.project-c .project-copy{position:absolute;z-index:5;left:41%;top:42%}.project-c .frame-left{width:49%;height:70%;left:0;top:0}.project-c .frame-right{width:35%;height:70%;right:5%;bottom:0}.project-d{min-height:110svh}.project-d .project-copy{display:flex;justify-content:space-between;align-items:start}.project-d .project-copy h3{margin:0}.triptych{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5vw;margin-top:12vh}.triptych .frame{position:relative;aspect-ratio:2/3}.triptych .frame:nth-child(2){transform:translateY(9vh)}.project-e{min-height:130svh}.project-e .project-copy{position:absolute;z-index:4;top:12%;left:var(--pad);mix-blend-mode:difference;color:#fff}.project-e .frame-full{inset:12% 0 auto;height:88vh}.project-e .frame-full img{object-position:center}
.archive{padding:120px var(--pad);overflow:hidden}.archive-track{display:flex;gap:12px;margin-top:40px;width:max-content;animation:drift 60s linear infinite}.archive-track:hover{animation-play-state:paused}.archive button{width:clamp(160px,18vw,280px);height:38vh;max-height:440px}.archive button:nth-child(3n+2){height:30vh;margin-top:8vh}.archive button:nth-child(4n){height:46vh}.archive img{filter:saturate(.75)}@keyframes drift{to{transform:translateX(-50%)}}
.about-section{background:var(--ink);color:var(--paper);padding:120px var(--pad) 70px;min-height:110svh;position:relative;overflow:hidden}.about-section h2{font-size:clamp(52px,8.5vw,130px);line-height:.9;letter-spacing:-.07em;max-width:1280px;margin:15vh 0 12vh}.about-meta{display:grid;grid-template-columns:1fr 1fr;gap:8vw;margin-left:35%;max-width:800px;font-size:14px;line-height:1.5}.about-monogram{position:absolute;font-size:40vw;font-weight:700;letter-spacing:-.12em;line-height:.7;color:#ffffff08;bottom:-10%;left:-4%;margin:0}
.contact-section{min-height:100svh;background:var(--acid);padding:100px var(--pad) 40px;display:flex;flex-direction:column}.contact-section h2{font-size:clamp(70px,12vw,180px);line-height:.69;letter-spacing:-.085em;margin:auto 0;text-transform:uppercase}.contact-section h2 em{font-family:var(--serif);font-weight:400;text-transform:none}.contact-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:4vw;align-items:end;border-top:1px solid;padding-top:16px;font-size:12px}.contact-grid>a{font-size:22px;font-weight:700;display:flex;justify-content:space-between;max-width:360px}.contact-grid div{display:flex;flex-direction:column}.contact-grid p{text-transform:uppercase;font-size:9px;opacity:.6;margin:0 0 10px}footer{padding:20px var(--pad);display:flex;justify-content:space-between;font-size:10px;text-transform:uppercase}
.lightbox{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;border:0;padding:25px;background:#080808;color:#fff;overflow:hidden}.lightbox[open]{display:grid;grid-template-columns:70px 1fr 70px;grid-template-rows:40px 1fr 30px;place-items:center}.lightbox::backdrop{background:#080808}.lightbox-image{grid-column:2;grid-row:2;max-width:80vw;max-height:82vh;width:auto;height:auto;object-fit:contain}.lightbox button{border:0;background:none;color:#fff;cursor:pointer}.lightbox-close{grid-column:3;grid-row:1;font-size:11px;text-transform:uppercase}.lightbox-prev{grid-column:1;grid-row:2;font-size:26px}.lightbox-next{grid-column:3;grid-row:2;font-size:26px}.lightbox-count{grid-column:2;grid-row:3;font-size:10px}
.reveal{opacity:0;transform:translateY(50px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;transform:none}
@media(max-width:800px){.cursor{display:none}.site-header{grid-template-columns:1fr auto}.header-role{display:none}.hero{min-height:720px}.hero-media{justify-content:center}.hero-media img{height:84%;margin-top:56px}.hero-kicker{top:15%;z-index:2}.hero h1{font-size:18vw;bottom:17%;line-height:.74}.hero h1 span:nth-child(2){align-self:flex-start}.hero-foot{bottom:20px}.hero-foot p{display:none}.statement{grid-template-columns:1fr;min-height:auto;padding-top:100px;padding-bottom:120px}.statement-copy{margin:80px 0;font-size:13vw}.statement-side{justify-self:end}.work-header{grid-template-columns:1fr;min-height:auto;padding-top:100px}.work-header h2{margin:80px 0}.work-header>p:last-child{display:none}.project{min-height:auto;padding:100px var(--pad)}.project-copy,.project-a .project-copy,.project-b .project-copy,.project-c .project-copy,.project-e .project-copy{position:relative;inset:auto;text-align:left;color:inherit;mix-blend-mode:normal;margin-bottom:50px}.project-copy h3{font-size:16vw}.frame,.project-a .frame-main,.project-a .frame-float,.project-b .frame-wide,.project-b .frame-small,.project-c .frame-left,.project-c .frame-right,.project-e .frame-full{position:relative;inset:auto;width:100%;height:auto;margin:0 0 22px}.frame button{height:auto}.frame img{height:auto}.project-a .frame-float,.project-b .frame-small{width:65%;margin-left:auto}.project-c .frame-right{width:70%;margin-left:auto}.triptych{grid-template-columns:1fr 1fr;margin-top:40px}.triptych .frame:nth-child(2){transform:translateY(40px)}.triptych .frame:nth-child(3){grid-column:1/-1;width:70%;margin:50px auto 0}.project-e{padding-left:0;padding-right:0}.project-e .project-copy{padding:0 var(--pad)}.archive{padding-top:90px}.archive-track{animation:none;overflow-x:auto;width:auto;padding-bottom:20px}.about-section{min-height:auto;padding-top:100px;padding-bottom:120px}.about-section h2{font-size:14vw;margin:90px 0}.about-meta{grid-template-columns:1fr;margin-left:15%;font-size:13px}.contact-section{min-height:800px}.contact-section h2{font-size:17vw;line-height:.76}.contact-grid{grid-template-columns:1fr 1fr}.contact-grid>a{grid-column:1/-1;margin-bottom:30px}footer span:nth-child(2){display:none}.site-nav>a:not(.nav-pdf){font-size:13vw}.nav-pdf{align-self:flex-start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}.loader{display:flex}.reveal{opacity:1;transform:none}}
@media(min-width:801px){.project-c .project-copy{left:58%;top:40%}.project-c .frame-left{width:55%;height:82%}}

.featured-interlude{position:relative;background:var(--paper);padding:120px var(--pad) 180px}.featured-interlude header{min-height:70vh;display:grid;grid-template-columns:2fr 7fr 2fr;gap:3vw;align-items:start}.featured-interlude header span,.featured-interlude header p{font-size:10px;line-height:1.4;text-transform:uppercase}.featured-interlude header h3{font-size:clamp(70px,11vw,165px);line-height:.78;letter-spacing:-.075em;margin:15vh 0 0}.featured-interlude header p{align-self:end}.interlude-frame{margin:0 0 18vh}.interlude-frame button{display:block;width:100%;border:0;padding:0;background:none;cursor:none;overflow:hidden}.interlude-frame img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.16,1,.3,1)}.interlude-frame button:hover img{transform:scale(1.018)}.interlude-one{width:62%;margin-left:auto}.interlude-one img{max-height:110vh;object-position:center}.interlude-two{width:58%;margin-right:auto}.interlude-two img{max-height:115vh;object-position:center top}.interlude-three{width:72%;margin:0 auto}.interlude-three img{max-height:120vh;object-position:center}

@media(max-width:800px){.featured-interlude{padding:100px var(--pad)}.featured-interlude header{display:block;min-height:70vh}.featured-interlude header h3{font-size:20vw;margin:20vh 0 24px}.featured-interlude header p{margin:0}.interlude-frame,.interlude-one,.interlude-two,.interlude-three{width:calc(100% + (var(--pad) * 2));margin:0 calc(var(--pad) * -1) 90px}.interlude-frame img{width:100%;height:auto;max-height:none}.interlude-two{width:82%;margin-left:calc(var(--pad) * -1)}.interlude-three{width:88%;margin-left:auto;margin-right:calc(var(--pad) * -1)}.archive{padding:100px var(--pad)}.archive-track{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;overflow:visible;margin-top:30px}.archive button,.archive button:nth-child(n){width:100%;height:auto!important;min-height:0;max-height:none;margin:0!important;aspect-ratio:3/4}.archive button:nth-child(5n+1){grid-column:1/-1;aspect-ratio:4/3}.archive button:nth-child(3n+2){aspect-ratio:2/3}.archive img{width:100%;height:100%;object-fit:cover}}

/* V6 hero — original composition, now with a single fluorescent title */
.hero h1,.hero h1 .outline{color:var(--acid);-webkit-text-stroke:0;text-shadow:0 1px 12px rgba(0,0,0,.08)}
.hero h1 .outline{color:var(--acid);-webkit-text-stroke:0;text-shadow:0 1px 12px rgba(0,0,0,.08)}
.hero h1{inset:auto var(--pad) 10% auto;width:min(72vw,980px);align-items:flex-end;text-align:right;font-size:clamp(58px,9.2vw,140px);line-height:.72;letter-spacing:-.075em;text-transform:none}.hero h1 span,.hero h1 span:nth-child(2),.hero h1 span:nth-child(3){align-self:flex-end}
@media(max-width:800px){.hero h1{left:auto;right:var(--pad);bottom:13%;width:88vw;align-items:flex-end;text-align:right;font-size:15vw;line-height:.76}.hero h1 span,.hero h1 span:nth-child(2),.hero h1 span:nth-child(3){align-self:flex-end}}

/* V13 — isolated, readable mobile menu */
body.menu-open .site-header{mix-blend-mode:normal;color:var(--ink)}body.menu-open .site-nav{background:var(--acid);color:var(--ink)}
@media(max-width:800px){.site-nav{inset:0;min-height:100svh;padding:90px var(--pad) 28px;justify-content:flex-start;gap:0;background:var(--acid)}.nav-label{margin:0 0 auto}.site-nav>a:not(.nav-pdf){flex:0 0 auto;font-size:clamp(40px,11.5vw,62px);line-height:.82;letter-spacing:-.06em;padding:.14em 0}.site-nav>a:not(.nav-pdf) span{font-size:9px;min-width:22px}.nav-pdf{margin-top:auto;align-self:flex-start;font-size:11px}.site-nav.open{display:flex}}

/* V14 — restore the fluorescent blue/yellow blend, without text collision */
body.menu-open .site-header{mix-blend-mode:difference;color:#fff}body.menu-open .site-nav{background:var(--acid);color:#fff}body.menu-open .hero h1{opacity:0}

/* V15 — blended image treatment behind genuinely white menu labels */
body.menu-open .site-header{mix-blend-mode:normal;color:#fff}body.menu-open .site-nav{background:transparent!important;color:#fff}body.menu-open .site-nav:before{content:"";position:absolute;z-index:0;inset:0;background:var(--acid);mix-blend-mode:difference;pointer-events:none}body.menu-open .site-nav>*{position:relative;z-index:1;color:#fff}body.menu-open .site-nav>a{border-color:rgba(255,255,255,.65);text-shadow:0 1px 12px rgba(0,0,0,.12)}

/* V16 — dedicated close control */
body.menu-open .brand,body.menu-open .header-role{opacity:0;pointer-events:none}body.menu-open .menu-toggle{position:fixed;z-index:95;top:20px;left:var(--pad);right:auto;color:#fff;display:flex;flex-direction:row-reverse;font-size:11px}body.menu-open .menu-toggle i{display:none}

/* V17 — real close button and guaranteed white navigation */
.menu-close{display:none}body.menu-open .menu-toggle{display:none}body.menu-open .menu-close{display:block;position:absolute;z-index:5;top:20px;left:var(--pad);border:0;padding:0;background:none;color:#fff!important;font-size:11px;font-weight:700;text-transform:uppercase;cursor:pointer}body.menu-open .site-nav a,body.menu-open .site-nav .nav-label,body.menu-open .site-nav .nav-pdf{color:#fff!important;position:relative;z-index:2}

/* V18 — stable cobalt/fluorescent photo treatment */
body.menu-open .menu-close{left:auto;right:var(--pad)}body.menu-open .site-nav:before{background:rgba(19,65,190,.16);mix-blend-mode:normal}body.menu-open .hero{background:#1749c9}body.menu-open .hero-media img{filter:sepia(1) saturate(18) hue-rotate(18deg) brightness(1.28) contrast(1.08);mix-blend-mode:screen}body.menu-open .hero-media{background:#1749c9}

/* V19 — true difference duotone: cobalt shadows, fluorescent highlights */
body.menu-open:before{content:"";position:fixed;z-index:60;inset:0;background:var(--acid);mix-blend-mode:difference;pointer-events:none}body.menu-open .site-nav:before{display:none}body.menu-open .hero,body.menu-open .hero-media{background:var(--hero-bg)}body.menu-open .hero-media img{filter:none;mix-blend-mode:normal}body.menu-open .site-nav{z-index:70;background:transparent!important}body.menu-open .site-nav a,body.menu-open .site-nav .nav-label,body.menu-open .site-nav .nav-pdf,body.menu-open .menu-close{color:#fff!important;mix-blend-mode:normal;text-shadow:0 1px 10px rgba(0,0,0,.18)}

/* V21 — equalise the JPEG background with the surrounding cobalt */
body.menu-open .hero-media img{filter:brightness(1.17) contrast(.96);mix-blend-mode:normal}

/* V23 — upright black FX on the opening panel */
.loader-mark span:first-child{color:#000;font-style:normal;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;transform:none;-webkit-text-stroke:0}

/* V24 — upright black identity on the opening hero */
.brand span:first-child{font-style:normal}.site-header.on-hero{mix-blend-mode:normal;color:var(--ink)}body.menu-open .site-header.on-hero{color:#fff}

.approach-image{position:relative;background:var(--ink);height:115svh;min-height:760px;overflow:hidden}.approach-image button{display:block;width:100%;height:100%;border:0;padding:0;background:none;cursor:none;overflow:hidden}.approach-image img{width:100%;height:100%;object-fit:cover;object-position:center 35%;filter:saturate(.9);transition:transform 1.4s cubic-bezier(.16,1,.3,1)}.approach-image button:hover img{transform:scale(1.015)}.approach-image p{position:absolute;z-index:2;left:var(--pad);right:var(--pad);bottom:24px;margin:0;display:flex;justify-content:space-between;color:#fff;font-size:10px;letter-spacing:.1em;text-transform:uppercase;mix-blend-mode:difference;pointer-events:none}
@media(max-width:800px){.approach-image{height:86svh;min-height:580px}.approach-image img{object-position:center}.approach-image p{bottom:18px}}
