@font-face{font-family:Space Grotesk;src:url("../fonts/SpaceGrotesk-Variable.ttf") format("truetype");font-weight:300 700;font-display:swap}
@font-face{font-family:IBM Plex Mono;src:url("../fonts/IBMPlexMono-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
:root{--bg:#151515;--panel:#1b1b1b;--ink:#e7e6e2;--muted:#8b8b85;--line:#3a3a37;--accent:#ff4b19;--mono:'IBM Plex Mono','Courier New',monospace;--sans:'Space Grotesk',Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{overflow-x:clip;margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans)}a{color:inherit;text-decoration:none}button,select{font:inherit}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{background:var(--accent);color:#151515}.mono,.eyebrow,.tag,.metadata,.site-nav,.folio-footer,.explorer{font-family:var(--mono);font-size:11px;line-height:1.5;letter-spacing:.045em}.eyebrow{text-transform:uppercase;color:var(--muted);display:block;margin-bottom:24px}.orange{color:var(--accent)}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);min-height:92px;margin:0 3.5%;position:relative;z-index:5}.brand{font-size:19px;font-weight:900;letter-spacing:-1px}.brand strong{border:1px solid var(--accent);padding:3px 6px;display:block;transform:skew(-5deg)}.brand small{display:block;font:9px var(--mono);text-align:center;letter-spacing:.18em;margin-top:5px}.site-nav{display:flex;gap:32px}.site-nav a:first-child{color:var(--accent)}.status{font:10px var(--mono);color:var(--muted)}.status::before{content:'';display:inline-block;width:5px;height:5px;background:var(--accent);margin-right:10px}
.page{padding:24px 3.5% 0;max-width:1800px;margin:auto}.hero{position:relative;min-height:680px;isolation:isolate;border:1px solid var(--line)}.cell{padding:30px;position:relative;min-width:0}.cell h1,.cell h2,.cell p{position:relative;z-index:2}h1,h2,h3,p,figure{margin:0}h1{font-size:clamp(64px,8vw,134px);font-weight:800;letter-spacing:-.065em;line-height:.87}h2{font-size:clamp(30px,3.4vw,54px);letter-spacing:-.055em;line-height:1.03}h3{font-size:22px;letter-spacing:-.035em}.copy{font:13px/1.7 var(--mono);color:#b4b4ae;max-width:360px;margin-top:22px}.tag{display:inline-block;padding:7px 10px;border:1px solid var(--line);color:var(--muted)}.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:26px}.cta{display:inline-flex;justify-content:space-between;gap:50px;font:11px var(--mono);border-bottom:1px solid var(--accent);padding:13px 0;margin-top:28px;color:var(--accent)}.visual{position:relative;min-height:350px}.render{position:absolute;width:100%;height:100%;object-fit:contain;mix-blend-mode:screen;pointer-events:none;z-index:1;mask-image:radial-gradient(ellipse at center,#000 42%,rgba(0,0,0,.83) 49%,rgba(0,0,0,.48) 56%,rgba(0,0,0,.19) 63%,rgba(0,0,0,.04) 70%,transparent 76%)}.visual .eyebrow{position:absolute;top:25px;left:30px;z-index:3}.visual .caption{position:absolute;bottom:28px;left:30px;right:30px;z-index:3;display:flex;justify-content:space-between;align-items:end}.caption p{font:11px/1.6 var(--mono);color:var(--muted)}.caption strong{display:block;color:var(--ink);font-weight:400}.cross{position:absolute;color:var(--muted);font:19px var(--mono);z-index:3}.cross.tl{top:14px;left:14px}.cross.br{bottom:14px;right:14px}.big-index{font-size:150px;line-height:.8;letter-spacing:-.09em;color:#30302e;font-weight:800}.barcode{height:25px;width:90px;background:repeating-linear-gradient(90deg,var(--muted) 0 1px,transparent 1px 3px,var(--muted) 3px 6px,transparent 6px 8px);opacity:.65}.specs{margin-top:28px;border-top:1px solid var(--line)}.specs div{display:flex;justify-content:space-between;font:10px/1.5 var(--mono);padding:12px 0;border-bottom:1px solid var(--line);color:var(--muted)}.specs b{font-weight:400;color:var(--ink)}.strip{display:flex;justify-content:space-between;gap:12px;padding:17px 25px;border-top:1px solid var(--line);font:10px var(--mono);color:var(--muted)}.strip span:first-child{color:var(--accent)}.folio-footer{display:flex;justify-content:space-between;padding:22px 0 30px;border-top:1px solid var(--line);margin-top:28px;color:var(--muted)}.section-head{display:flex;justify-content:space-between;align-items:center;padding:40px 0 20px}.section-head h2{font-size:32px}.work-list{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.work-item{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px;display:grid;grid-template-columns:35px 1fr;gap:15px}.work-item .mono{color:var(--accent)}.work-item p{font:11px var(--mono);color:var(--muted);margin-top:12px}.work-item:hover{background:#20201d}.about-row{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:40px 0 55px}.about-row .copy{margin:0;max-width:480px}.explorer{position:sticky;top:0;z-index:50;display:flex;justify-content:space-between;align-items:center;gap:15px;background:#101010;border-bottom:1px solid var(--line);padding:12px 3.5%;color:var(--muted)}.explorer button{font:10px var(--mono);border:1px solid var(--line);padding:6px 10px;background:transparent;color:var(--ink);cursor:pointer}.explorer button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.explorer .controls{display:flex;gap:20px;align-items:center}.guide-layer{display:none;position:absolute;inset:0;z-index:10;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(100% / 12 - 1px),#ff4b1940 calc(100% / 12 - 1px),#ff4b1940 calc(100% / 12))}.guides-on .guide-layer{display:block}.guides-on .cell,.guides-on .visual{outline:1px dashed #ff4b1970;outline-offset:-1px}
/* 01: exact golden split, a 38.2% column opposite a 61.8% visual. */
.l01 .hero{display:grid;grid-template-columns:1fr 1.618fr}.l01 .intro{border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}.l01 h1{font-size:clamp(65px,6.6vw,112px)}.l01 .visual .render{width:118%;height:112%;left:-10%;top:-6%}.l01 .intro .copy{margin-top:30px}.l01 .visual{background:linear-gradient(90deg,transparent 49.9%,#30302b 50%,transparent 50.1%)}.l01 .strip{grid-column:1/-1}
/* 02: two columns, three explicit rows on the left. */
.l02 .hero{display:grid;grid-template-columns:42% 58%;grid-template-rows:300px 185px 195px}.l02 .intro{grid-column:1;grid-row:1;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.l02 h1{font-size:clamp(55px,6vw,98px)}.l02 .method{grid-column:1;grid-row:2;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;gap:25px}.l02 .method .copy{margin-top:10px;font-size:11px}.l02 .data{grid-column:1;grid-row:3;border-right:1px solid var(--line)}.l02 .data .specs{margin-top:0}.l02 .visual{grid-column:2;grid-row:1/4}.l02 .visual .render{width:118%;left:-12%;height:120%;top:-10%}.l02 .big-index{font-size:80px;color:var(--accent)}
/* 03: recursive golden rectangle: 61.8 / 38.2, then 61.8 / 38.2 again. */
.l03 .hero{display:grid;grid-template-columns:1.618fr 1fr;min-height:730px}.l03 .main-square{border-right:1px solid var(--line);position:relative;padding:32px}.l03 h1{font-size:clamp(70px,8vw,130px);position:relative;z-index:2}.l03 .main-square .render{height:80%;width:110%;left:-5%;top:16%}.l03 .main-square .caption{font:11px/1.8 var(--mono);position:absolute;bottom:28px;left:32px;z-index:3}.l03 .recursive{display:grid;grid-template-rows:1.618fr 1fr}.l03 .recursive>.cell{border-bottom:1px solid var(--line)}.l03 .nested{display:grid;grid-template-columns:1fr 1.618fr}.l03 .nested>.cell:first-child{border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}.l03 .nested>.cell:last-child{display:flex;flex-direction:column;justify-content:space-between;background:var(--accent);color:var(--bg)}.l03 .nested .eyebrow{color:#652712}.l03 .nested .big-index{font-size:90px;color:var(--bg)}
/* 04: vertical manual spine and technical data around the specimen. */
.l04 .hero{display:grid;grid-template-columns:65px 1fr 2.1fr 1fr;grid-template-rows:165px 1fr}.l04 .spine{grid-row:1/3;background:var(--accent);color:var(--bg);writing-mode:vertical-rl;transform:rotate(180deg);display:flex;justify-content:space-between;padding:25px 17px;font:18px var(--mono)}.l04 .intro{grid-column:2/5;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.l04 h1{font-size:clamp(55px,6.5vw,105px)}.l04 .intro .eyebrow{margin:0}.l04 .data{border-right:1px solid var(--line)}.l04 .notes{border-left:1px solid var(--line)}.l04 .notes h2,.l04 .data h2{font-size:27px}.l04 .notes .copy,.l04 .data .copy{font-size:11px}.l04 .visual .render{width:145%;left:-22%;height:110%;top:-7%}.l04 .specs div{flex-direction:column;gap:5px}
/* 05: a 12-column editorial grid with crossing typography and image. */
.l05 .hero{display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:140px 330px 200px;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(100% / 6 - 1px),#242422 calc(100% / 6 - 1px),#242422 calc(100% / 6))}.l05 .intro{grid-column:1/13;grid-row:1/3;z-index:2;pointer-events:none}.l05 h1{font-size:clamp(90px,13.7vw,220px);line-height:.83}.l05 h1 span{display:block;color:var(--accent)}.l05 .visual{grid-column:5/13;grid-row:1/4}.l05 .visual .render{height:105%;width:125%;top:0;left:-10%}.l05 .data{grid-column:1/5;grid-row:3;border-top:1px solid var(--line);z-index:3}.l05 .data .copy{font-size:11px;margin-top:0}.l05 .visual .caption{left:35%;bottom:24px}.l05 .intro .eyebrow{margin-bottom:30px}
/* 06: cinematic image band between two rigorous typographic bands. */
/* Pick 05B: the 05 composition with the substantial orange rail from 04. */
.l05-orange .hero{grid-template-columns:72px repeat(12,minmax(0,1fr))}
.l05-orange .orange-spine{grid-column:1;grid-row:1/4;background:var(--accent);color:var(--bg);writing-mode:vertical-rl;transform:rotate(180deg);display:flex;justify-content:space-between;padding:25px 20px;font:18px var(--mono)}
.l05-orange .intro{grid-column:2/14}
.l05-orange .visual{grid-column:6/14}
.l05-orange .data{grid-column:2/6}
.l06 .hero{display:grid;grid-template-rows:190px 390px 110px}.l06 .intro{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--line)}.l06 h1{font-size:clamp(60px,9.8vw,156px)}.l06 .intro .copy{max-width:240px;font-size:11px;margin-left:25px}.l06 .visual{min-height:0;overflow:visible}.l06 .visual .render{height:150%;width:85%;top:-26%;left:7.5%}.l06 .bottom-band{display:grid;grid-template-columns:2fr 1fr 1fr;border-top:1px solid var(--line);z-index:2}.l06 .bottom-band>.cell{border-right:1px solid var(--line);padding:22px}.l06 .bottom-band h2{font-size:30px}.l06 .bottom-band .eyebrow{margin-bottom:8px}
/* 07: an intentionally quiet, off-center composition on a modular field. */
.l07 .hero{min-height:740px;display:grid;grid-template-columns:1fr 1.618fr 1fr;grid-template-rows:170px 390px 180px;background:linear-gradient(90deg,transparent 27.55%,#30302d 27.6%,transparent 27.65%,transparent 72.3%,#30302d 72.35%,transparent 72.4%)}.l07 .intro{grid-column:1/3;grid-row:1/3;padding:36px;z-index:2}.l07 h1{font-size:clamp(75px,9vw,146px)}.l07 .visual{grid-column:2/4;grid-row:2/4}.l07 .visual .render{height:130%;width:115%;left:-6%;top:-16%}.l07 .top-note{grid-column:3;grid-row:1;border-bottom:1px solid var(--line)}.l07 .data{grid-column:1;grid-row:3;border-top:1px solid var(--line)}.l07 .data .copy{font-size:11px;margin:0}.l07 .intro h1 span{display:block;color:var(--muted);font-weight:400}.l07 .top-note .eyebrow{margin-bottom:12px}.l07 .intro h1 .orange{color:var(--accent);font-weight:700}
/* 08: equal triptych, with an image crossing all three bays. */
.l08 .hero{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:195px 360px 150px}.l08 .intro{grid-column:1/4;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:end}.l08 h1{font-size:clamp(55px,6.8vw,108px)}.l08 .bay{grid-row:2;border-right:1px solid var(--line);padding:24px;font:11px var(--mono);color:var(--muted);position:relative}.l08 .bay:after{content:'+';position:absolute;bottom:20px;left:25px}.l08 .visual{position:absolute;left:9%;top:19%;width:82%;height:70%;pointer-events:none}.l08 .visual .render{width:110%;height:115%;left:-5%;top:-5%}.l08 .bottom{grid-row:3;border-top:1px solid var(--line);border-right:1px solid var(--line);z-index:3}.l08 .bottom h2{font-size:29px}.l08 .bottom .eyebrow{margin-bottom:14px}.l08 .bottom .copy{font-size:11px;margin:0}
/* 09: a 2:1 main column and a stacked, numbered project rail. */
.l09 .hero{display:grid;grid-template-columns:2fr 1fr}.l09 .main-square{border-right:1px solid var(--line);position:relative;padding:32px}.l09 h1{font-size:clamp(65px,7.6vw,120px);z-index:2;position:relative}.l09 .main-square .render{top:21%;height:70%;width:118%;left:-8%}.l09 .main-square>.copy{position:absolute;bottom:28px;font-size:11px;max-width:270px;z-index:3}.l09 .rail{display:grid;grid-template-rows:repeat(3,1fr)}.l09 .rail-item{position:relative;border-bottom:1px solid var(--line);padding:23px;overflow:hidden;min-height:225px;display:flex;flex-direction:column;justify-content:space-between}.l09 .rail-item:last-child{border-bottom:0}.l09 .rail-item .render{left:30%;width:85%;height:115%;top:-10%;opacity:.8}.l09 .rail-item .mono,.l09 .rail-item h3{position:relative;z-index:3}.l09 .rail-item .mono{color:var(--accent)}.l09 .rail-item h3{font-size:25px;max-width:160px}.l09 .rail-item:hover{background:#242420}
/* 10: wide feature / stacked 38.2% sidebar / an independent bottom ledger. */
.l10 .hero{display:grid;grid-template-columns:1.618fr 1fr;grid-template-rows:550px 180px}.l10 .visual{grid-column:1;grid-row:1;border-right:1px solid var(--line)}.l10 .visual h1{position:relative;z-index:2;padding:30px;font-size:clamp(70px,8.2vw,132px)}.l10 .visual .render{top:18%;height:97%;width:120%;left:-10%}.l10 .side{grid-column:2;grid-row:1;display:grid;grid-template-rows:1.618fr 1fr}.l10 .side>.cell:first-child{border-bottom:1px solid var(--line)}.l10 .side h2{font-size:clamp(40px,4.5vw,72px)}.l10 .side .copy{font-size:11px}.l10 .side .specs{margin-top:0}.l10 .ledger{grid-column:1/3;display:grid;grid-template-columns:1fr 2fr 1fr;border-top:1px solid var(--line);z-index:2}.l10 .ledger>.cell{border-right:1px solid var(--line)}.l10 .ledger .copy{font-size:11px;margin:0}.l10 .ledger .big-index{font-size:100px;color:var(--accent)}
@media(min-width:1700px){.hero{min-height:800px}.l02 .hero{grid-template-rows:350px 220px 230px}.l05 .hero{grid-template-rows:170px 400px 230px}}
@media(max-width:900px){.site-nav{gap:16px}.status{display:none}.cell{padding:24px}.l04 .hero{grid-template-columns:45px 1fr 1.8fr 1fr}.l04 .cell{padding:18px}.l04 .spine{padding:20px 10px}.l05 h1{font-size:13vw}.l04 .intro .eyebrow{max-width:160px}.l06 .intro .copy{max-width:170px}.l03 .nested .cell{padding:18px}.l03 .nested .big-index{font-size:65px}.l08 .intro .eyebrow{max-width:170px}}
@media(max-width:900px){.site-header{min-height:105px;flex-wrap:wrap;gap:10px;padding:16px 0}.brand{font-size:16px}.site-nav{width:100%;justify-content:space-between;gap:8px;font-size:9px}.explorer{font-size:9px;gap:8px;flex-wrap:wrap}.explorer .controls{gap:14px}.page{padding-top:15px}.hero{min-height:0!important;display:flex!important;flex-direction:column!important;background:none!important}.cell{padding:25px!important;border-right:0!important}.hero h1{font-size:clamp(62px,16vw,100px)!important}.hero h2{font-size:35px}.hero .intro{display:block!important;pointer-events:auto}.hero .intro .eyebrow{max-width:none}.hero .intro .copy{margin-left:0;max-width:360px}.visual{min-height:410px!important;border-right:0!important}.render{max-width:120%}.hero .visual .render{width:110%;height:110%;left:-5%;top:-5%}.hero .visual .caption{left:25px;bottom:20px}.hero .intro,.hero .data,.hero .method,.hero .top-note{border-bottom:1px solid var(--line)}.l01 .intro{gap:20px}.l01 .visual{background:none}.l03 .main-square,.l09 .main-square{min-height:640px;border-right:0}.l03 .main-square .render{top:24%;height:65%}.l03 .recursive{grid-template-rows:auto auto}.l03 .nested{min-height:180px}.l04 .spine{writing-mode:horizontal-tb;transform:none;font-size:12px;padding:16px}.l04 .notes{border-left:0;border-top:1px solid var(--line)}.l04 .data .specs div{flex-direction:row}.l05 .visual{margin-top:-35px}.l05 .data{order:3}.l06 .visual .render{width:120%!important;left:-10%!important}.l06 .bottom-band{grid-template-columns:1fr}.l06 .bottom-band>.cell{border-bottom:1px solid var(--line)}.l07 .top-note{order:3}.l07 .data{order:4}.l08 .visual{position:relative;left:0;top:0;width:100%;height:420px;order:1}.l08 .bay{display:none}.l08 .bottom{order:2;border-right:0}.l09 .rail{grid-template-rows:repeat(3,210px);border-top:1px solid var(--line)}.l09 .rail-item{min-height:210px}.l10 .visual{min-height:570px!important}.l10 .visual .render{top:20%!important;height:80%!important}.l10 .side{display:block}.l10 .ledger{grid-template-columns:1fr 2fr}.l10 .ledger>.cell:last-child{grid-column:1/3;border-top:1px solid var(--line)}.work-list{grid-template-columns:1fr}.about-row{grid-template-columns:1fr;gap:25px}.folio-footer{gap:20px;font-size:9px}.strip{flex-wrap:wrap;font-size:9px}.section-head h2{font-size:26px}.guide-layer{background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),#ff4b1940 calc(25% - 1px),#ff4b1940 25%)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Shared layer order: structure and guides → renders → typography.
   Normal compositing lets the opaque parts of a render cover the rules below.
   Keep containers out of stacking contexts so their borders stay behind images. */
.hero .render{mix-blend-mode:normal;z-index:1}
.hero .guide-layer{z-index:0}
.l05 .intro,.l05 .data,.l06 .bottom-band,.l07 .intro,.l08 .bottom,.l10 .ledger{z-index:auto}
.hero h1,.hero h2,.hero h3,.hero p{z-index:3}
.cell :is(.eyebrow,.tags,.cta,.big-index,.barcode),
.main-square>.eyebrow,.hero .specs :is(span,b),.hero .strip span,.hero .bay span{
 position:relative;z-index:3
}
.hero .cross{z-index:0}
.l08 .bay:after{z-index:0}

/* 02: each slice grows with its copy; typography fits the narrow left column. */
.l02 .hero{grid-template-rows:minmax(300px,auto) minmax(240px,auto) minmax(210px,auto)}
.l02 .intro .eyebrow{margin-bottom:18px}
.l02 h1{font-size:clamp(48px,5.2vw,84px)}
.l02 .method{display:grid;grid-template-columns:72px minmax(0,1fr);gap:24px;align-items:start}
.l02 .method .big-index{font-size:72px}
.l02 .method .eyebrow{margin-bottom:12px}
.l02 .method h2{font-size:clamp(28px,2.8vw,40px);line-height:1.08}
.l02 .method .copy{font-size:12px;line-height:1.65;margin-top:14px}
.l02 .data .cta{margin-top:18px}
@media(min-width:1700px){.l02 .hero{grid-template-rows:minmax(350px,auto) minmax(260px,auto) minmax(230px,auto)}}
@media(max-width:900px){.l02 .method{grid-template-columns:64px minmax(0,1fr)}}

.thumbnail{scrollbar-width:none}.thumbnail::-webkit-scrollbar{display:none}
/* Dedicated case study: project context above the original golden grid. */
.breadcrumbs{font:11px var(--mono);color:var(--muted);padding:0 0 20px}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:0;padding:0}
.breadcrumbs li+li:before{content:'/';margin-right:12px;color:var(--line)}
.breadcrumbs [aria-current]{color:var(--ink)}
.case-banner{display:grid;grid-template-columns:auto minmax(180px,.618fr) 1fr;align-items:stretch;font:11px var(--mono);letter-spacing:.07em;border:1px solid var(--line);background:var(--bg);margin-bottom:20px;color:var(--ink)}
.case-label,.case-name,.case-note{display:flex;align-items:center;min-height:42px;padding:10px 22px}
.case-label{background:var(--accent);color:var(--bg)}
.case-name{background:var(--bg);color:var(--ink);font:700 18px var(--sans);letter-spacing:-.03em}
.case-note{justify-content:flex-end;color:var(--muted)}
.case-divider{color:var(--accent);padding:0 6px}
.case-study .site-nav a:first-child{color:var(--ink)}
.case-study .site-nav [aria-current]{color:var(--accent)}
.case-study .recursive>.cell{padding-bottom:35px}
.case-study .recursive>.cell .eyebrow{margin-bottom:18px}
.case-study .recursive>.cell .copy{font-size:12px;line-height:1.65;margin-top:18px}
.case-study .recursive>.cell .specs{margin-top:20px}
.case-study .recursive>.cell .cta{margin-top:16px}
.case-study .case-jump{position:relative;z-index:3}
.case-study .nested>.cell:first-child .eyebrow{color:var(--muted)}
.dynamic-study .main-square h1{font-size:clamp(56px,6.8vw,105px);max-width:95%;overflow-wrap:anywhere}
.case-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.case-step{padding:30px;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}
.case-step h2{font-size:32px;line-height:1.08}
.case-step .copy{font-size:12px}
.case-end{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:35px 0 20px;color:var(--muted)}
.case-end .cta{margin-top:0}
.case-sample{font-size:10px;display:inline-block;margin-top:8px;color:var(--muted)}
@media(max-width:900px){.case-steps{grid-template-columns:1fr}.case-step{padding:25px}.case-end{align-items:start;flex-direction:column}.case-study .hero h1{font-size:clamp(70px,20vw,110px)!important}.case-study .nested>.cell{padding:20px!important}.case-study .nested .mono{font-size:10px}}
@media(max-width:640px){.case-banner{grid-template-columns:auto 1fr}.case-label,.case-name,.case-note{min-height:38px;padding:9px 14px}.case-label,.case-note{font-size:10px}.case-name{font-size:17px}.case-note{grid-column:1/-1;justify-content:flex-start;border-top:1px solid var(--line);min-height:32px;padding-top:7px;padding-bottom:7px}}
@media(max-width:900px){
 html{overflow-x:clip}
 .explorer{display:grid;grid-template-columns:1fr auto;padding:10px 3.5%;gap:8px}
 .explorer>span{grid-column:1/-1;grid-row:2;white-space:normal}
 .explorer .controls{grid-column:2;grid-row:1}
 .hero h1{font-size:clamp(46px,15.5vw,96px)!important}
 .l06 h1 .orange{display:block}
 .l02 .method{gap:16px}
 .l02 .method .big-index{font-size:64px}
 .l02 .method h2{font-size:28px}
 .l09 .main-square .render{width:110%;left:-5%}
 .l01 .intro .eyebrow{font-size:10px}
 .l05-orange .orange-spine{writing-mode:horizontal-tb;transform:none;font-size:11px;padding:18px 20px;gap:20px}
}

/* Display the supplied logo as artwork, preserving its original lettering. */
.brand{display:block;flex-shrink:0}.brand-logo{display:block;width:160px;height:auto}
@media(max-width:640px){.brand-logo{width:140px}}
