
/* Zettlerei / open-source typography; SIL OFL 1.1.
   Licenses: /_assets/type/IBMPlex-OFL.txt, /_assets/type/Newsreader-OFL.txt, /_assets/type/PaperMono-OFL.txt */
@font-face{font-family:"IBM Plex Sans";src:url("/_assets/type/ibm-plex-sans-400-v1.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url("/_assets/type/ibm-plex-sans-500-v1.woff2") format("woff2");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url("/_assets/type/ibm-plex-sans-600-v1.woff2") format("woff2");font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url("/_assets/type/ibm-plex-sans-bold-latin1-v1.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap;unicode-range:U+0000-00FF}
@font-face{font-family:"IBM Plex Sans";src:url("/_assets/type/ibm-plex-sans-italic-400-v1.woff2") format("woff2");font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:"Newsreader";src:url("/_assets/type/newsreader-variable-v1.woff2") format("woff2");font-style:normal;font-weight:300 800;font-display:swap}
@font-face{font-family:"Newsreader";src:url("/_assets/type/newsreader-display-italic-400-v1.woff2") format("woff2");font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:"Paper Mono";src:url("/_assets/type/paper-mono-variable-v0320.woff2") format("woff2");font-style:normal;font-weight:100 800;font-display:swap}
:root{--zett-body:"IBM Plex Sans",Arial,sans-serif;--zett-editorial:"Newsreader",Georgia,serif;--zett-technical:"Paper Mono",ui-monospace,monospace}
body{font-kerning:normal}
/* Sitewide defensive foundation / 2026-10-09 */
:root{overflow-wrap:break-word;-webkit-text-size-adjust:100%}
:where(img,video){max-inline-size:100%}


:root{--paper:#F7FAF7;--ink:#18343F;--soft:#4B6670;--dim:#6A878D;--line:#C6DADA;--dark:#E4F5F3;--accent:#249CB6;--pad:clamp(21px,4.2vw,76px);--mono:"Paper Mono",ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"IBM Plex Sans",Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}body:before{content:"";pointer-events:none;position:fixed;inset:0;z-index:30;opacity:.12;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='.76' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E")}::selection{background:var(--accent);color:white}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button{font:inherit;cursor:pointer}button:disabled{cursor:default}
.frame{max-width:1920px;margin:auto}.mono,.count,.category,.status,.meta,.eyebrow,.nav,.legal-note{font:11px/1.5 var(--mono);letter-spacing:.075em;text-transform:uppercase}.muted{color:var(--dim)}.border-top{border-top:1px solid var(--line)}
#progress{position:fixed;height:2px;background:var(--accent);left:0;top:0;width:0;z-index:80;pointer-events:none}#top{padding:27px var(--pad);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);gap:16px}.brand{font-size:clamp(25px,2.3vw,33px);letter-spacing:-.092em;font-weight:790;line-height:1}.brand i{color:var(--accent);font-family:"Newsreader",Georgia,serif;font-weight:normal;font-style:normal}.head-center{text-align:center;color:var(--dim);font:10px/1.5 var(--mono);letter-spacing:.1em;text-transform:uppercase}.nav{display:flex;justify-content:end;align-items:center;gap:clamp(12px,2.1vw,35px)}.nav a{position:relative;white-space:nowrap}.nav a:after,.site-link:after{content:"";height:1px;background:var(--accent);left:0;bottom:-4px;position:absolute;width:0;transition:width .25s cubic-bezier(.25,.9,.25,1)}.nav a:hover:after,.nav a[aria-current]:after,.site-link:hover:after{width:100%}.language{border:1px solid var(--line);padding:6px 10px}
main{padding:0 var(--pad)}.hero{min-height:clamp(650px,86svh,1100px);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(315px,.9fr);gap:clamp(32px,5vw,95px);align-items:center;border-bottom:1px solid var(--ink);padding:clamp(45px,6vw,110px) 0}.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 clamp(25px,4vw,62px)}.pulse{width:8px;height:8px;background:var(--accent);border-radius:50%;display:block;box-shadow:0 0 0 4px #249CB628}.hero h1{font-weight:690;font-size:clamp(65px,9.65vw,150px);line-height:.96;letter-spacing:-.098em;max-width:1100px;margin:0}.hero h1 span{display:block}.serif{color:var(--accent);font-family:"Newsreader",Georgia,"Times New Roman",serif;font-style:italic;font-weight:400;letter-spacing:-.085em}.hero-sub{font-size:clamp(16px,1.55vw,22px);max-width:530px;letter-spacing:-.023em;line-height:1.52;margin:clamp(35px,4vw,68px) 0 0}.hero-note{display:flex;gap:36px;margin:clamp(43px,5vw,80px) 0 0}.hero-note .mono{color:var(--dim);border-left:1px solid var(--line);padding-left:13px}.site-link{display:inline-block;position:relative;font-size:14px;font-weight:600;padding-bottom:3px}.site-link:after{bottom:0}.arrow{font-weight:400;margin-left:7px}
.experiment{align-self:stretch;min-height:480px;background:var(--dark);position:relative;overflow:hidden;color:#dae1d6;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;cursor:crosshair}.experiment canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:pan-y}.exp-bar,.exp-bottom{pointer-events:none;z-index:2;position:relative;display:flex;align-items:start;justify-content:space-between;gap:14px;padding:clamp(20px,2.1vw,35px)}.exp-bottom{align-items:end}.exp-title{font:10px/1.5 var(--mono);letter-spacing:.12em;color:#9aa79b;text-transform:uppercase}.exp-id{font:10px/1.5 var(--mono);color:#9aa79b}.coordinate{font:clamp(43px,5vw,86px)/.91 "IBM Plex Sans",Arial,sans-serif;letter-spacing:-.085em;font-weight:680;color:#dce3da;max-width:250px}.experiment .exp-bottom .exp-id{max-width:145px;text-align:right}
.intro-strip{display:grid;grid-template-columns:1fr 2fr;gap:30px;padding:clamp(28px,4vw,64px) 0 clamp(24px,3vw,45px);border-bottom:1px solid var(--line)}.intro-strip p{margin:0;max-width:900px;font-size:clamp(23px,3.1vw,49px);line-height:1.16;letter-spacing:-.063em;font-weight:560}
.section-heading{padding:clamp(73px,10vw,165px) 0 28px;display:flex;align-items:end;justify-content:space-between;gap:22px}.section-heading h2{margin:0;font-size:clamp(52px,7.3vw,112px);line-height:.9;letter-spacing:-.087em;font-weight:680}.section-heading h2 em{font:italic 400 .95em "Newsreader",Georgia,serif;color:var(--accent)}.section-heading .mono{max-width:240px;text-align:right;color:var(--dim)}
.index{margin-bottom:clamp(80px,11vw,160px)}.project{display:grid;grid-template-columns:60px minmax(0,1.2fr) minmax(0,1fr) 138px;gap:clamp(14px,2vw,35px);align-items:start;padding:clamp(26px,3vw,45px) 0;border-top:1px solid var(--line);position:relative;transition:padding .35s ease,border-color .35s ease}.project:last-child{border-bottom:1px solid var(--line)}.project:hover{padding-left:13px;border-top-color:var(--ink)}.project .count{color:var(--accent);padding-top:12px}.project h3{margin:0;font-size:clamp(36px,5.7vw,81px);font-weight:690;line-height:1.03;letter-spacing:-.079em}.project p{margin:8px 0 0;color:var(--soft);font-size:clamp(14px,1.2vw,18px);line-height:1.55;max-width:480px}.project .status{text-align:right;color:var(--dim);margin-top:10px}.project h3 small{font:11px/1.3 var(--mono);letter-spacing:0;display:block;margin:13px 0 0;color:var(--dim);text-transform:uppercase}.project .subref{display:inline-block;font-size:12px;text-decoration:underline;text-underline-offset:4px;margin-top:20px;color:var(--ink)}.project .subref:hover{color:var(--accent)}
.practice{display:grid;grid-template-columns:1fr 1.15fr;border-top:1px solid var(--ink);padding:clamp(70px,9vw,145px) 0;gap:clamp(40px,8vw,130px)}.practice h2{margin:15px 0 0;letter-spacing:-.085em;font-size:clamp(48px,7vw,111px);font-weight:700;line-height:.91}.practice h2 em{font:italic 400 1em "Newsreader",Georgia,serif;color:var(--accent)}.practice-list{display:grid;grid-template-columns:1fr;align-content:center}.practice-item{border-top:1px solid var(--line);display:grid;grid-template-columns:35px minmax(0,1fr);gap:16px;padding:22px 0}.practice-item:last-child{border-bottom:1px solid var(--line)}.practice-item .count{color:var(--accent)}.practice-item h3{font-size:clamp(19px,2vw,29px);line-height:1.15;letter-spacing:-.05em;margin:0 0 8px}.practice-item p{font-size:14px;line-height:1.56;color:var(--soft);margin:0;max-width:530px}
.contact{border-top:1px solid var(--ink);padding:clamp(70px,9vw,150px) 0;display:flex;justify-content:space-between;gap:35px;align-items:end}.contact h2{font-size:clamp(58px,8.5vw,126px);max-width:1000px;line-height:.91;letter-spacing:-.09em;font-weight:700;margin:20px 0 0}.contact h2 em{font:italic 400 1em "Newsreader",Georgia,serif;color:var(--accent)}.contact-address{font-size:clamp(16px,1.6vw,22px);font-weight:600;border-bottom:1px solid var(--ink);padding-bottom:7px;white-space:nowrap}.contact-address:hover{color:var(--accent);border-color:var(--accent)}
footer{padding:22px var(--pad) 28px;display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);flex-wrap:wrap}.footlinks{display:flex;gap:25px;flex-wrap:wrap}.footlinks a{color:var(--soft)}.footlinks a:hover{color:var(--accent)}
/* About editorial */
.about-hero{border-bottom:1px solid var(--ink);padding:clamp(110px,15vw,230px) 0 clamp(70px,8vw,120px);display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.5fr);gap:50px;align-items:end}.about-hero h1{font-size:clamp(64px,10vw,160px);letter-spacing:-.095em;line-height:.93;margin:23px 0 0;font-weight:690;max-width:1000px}.about-marker{font:12px/1.5 var(--mono);letter-spacing:.06em;color:var(--dim);text-transform:uppercase;border-left:1px solid var(--line);padding-left:22px}.essay{padding:clamp(70px,9vw,145px) 0;display:grid;grid-template-columns:1fr minmax(0,2.1fr);gap:60px;border-bottom:1px solid var(--line)}.essay .mono{color:var(--dim)}.essay-copy{max-width:920px}.essay-copy p{font-size:clamp(22px,3.35vw,49px);letter-spacing:-.057em;line-height:1.25;margin:0 0 37px}.essay-copy p:last-child{margin-bottom:0}.essay-copy .small{font-size:clamp(16px,1.55vw,21px);line-height:1.6;letter-spacing:-.02em;color:var(--soft);max-width:680px}
.principles{padding:clamp(80px,10vw,140px) 0;border-bottom:1px solid var(--ink)}.principles h2{font-size:clamp(45px,7vw,101px);letter-spacing:-.085em;line-height:.98;margin:0 0 40px}.principle{padding:22px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:60px minmax(0,1.1fr) minmax(0,1fr);gap:25px}.principle:last-child{border-bottom:1px solid var(--line)}.principle h3{font-size:clamp(25px,3vw,45px);letter-spacing:-.055em;margin:0;font-weight:630}.principle p{margin:4px 0 0;color:var(--soft);line-height:1.55;max-width:510px;font-size:16px}
.reveal{opacity:0;transform:translateY(25px);transition:opacity .85s cubic-bezier(.19,1,.22,1),transform .85s cubic-bezier(.19,1,.22,1)}.reveal.visible{opacity:1;transform:translateY(0)}@view-transition{navigation:auto}
@media(max-width:1030px){#top{grid-template-columns:1fr auto}.head-center{display:none}.hero{grid-template-columns:1fr 0.95fr;gap:30px}.hero h1{font-size:clamp(64px,8.8vw,112px)}.project{grid-template-columns:40px minmax(0,1fr) minmax(0,1.05fr) 110px}}
@media(max-width:780px){#top{padding-top:21px;padding-bottom:20px}.nav{gap:14px}.nav a{font-size:10px}.hero{min-height:auto;grid-template-columns:1fr;gap:36px;padding:75px 0 35px}.hero h1{font-size:clamp(63px,12.2vw,105px)}.hero-sub{margin-top:32px}.hero-note{margin-top:34px}.experiment{height:clamp(370px,75vw,560px);min-height:0}.intro-strip{grid-template-columns:1fr;gap:17px}.intro-strip p{font-size:clamp(26px,5vw,43px)}.section-heading{padding-top:100px;align-items:start;flex-direction:column}.section-heading .mono{text-align:left}.project{grid-template-columns:40px minmax(0,1fr) auto;gap:12px}.project p{grid-column:2/-1;margin:7px 0 0}.project .status{grid-column:3;grid-row:1;margin-top:10px}.project h3{font-size:clamp(40px,8.2vw,64px)}.practice{grid-template-columns:1fr}.practice h2{font-size:clamp(55px,9vw,88px)}.contact{align-items:start;flex-direction:column;gap:35px}.about-hero{grid-template-columns:1fr;gap:32px}.about-hero h1{font-size:clamp(65px,11vw,105px)}.essay{grid-template-columns:1fr;gap:25px}.principle{grid-template-columns:35px 1fr}.principle p{grid-column:2/-1;margin-top:0}}
@media(max-width:480px){.brand{font-size:25px}.nav{gap:10px}.nav .language{padding:5px 7px}.nav a{font-size:9px}.hero h1{font-size:clamp(58px,13vw,73px)}.hero .eyebrow{margin-bottom:27px}.hero-note{gap:20px;flex-wrap:wrap}.project{grid-template-columns:29px 1fr}.project .status{grid-column:2;grid-row:2;text-align:left;margin:4px 0 0}.project p{grid-column:2;grid-row:3}.project h3{font-size:clamp(36px,9vw,51px)}.project .subref{margin-top:13px}.about-hero h1{font-size:clamp(60px,12.6vw,81px)}.contact h2{font-size:clamp(57px,12vw,82px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}.reveal{transform:none;opacity:1}}
:root{--paper:#F7FAF7;--ink:#18343F;--soft:#4B6670;--dim:#6A878D;--line:#C6DADA;--dark:#E4F5F3;--accent:#249CB6}body{background:#F7FAF7;color:#18343F}body:before{opacity:.04}.experiment{background:#E4F5F3!important;color:#18536A!important;border:1px solid #B8D9DA}.exp-title,.exp-id{color:#466F7A!important}.coordinate{color:#187A95!important}.project:hover{background:linear-gradient(90deg,#E6F6F4,#F7FAF7)}.about-essay{display:grid;grid-template-columns:minmax(170px,.65fr) minmax(0,1.35fr);gap:clamp(25px,6vw,110px);padding:clamp(60px,8vw,130px) 0;border-bottom:1px solid var(--line)}.about-essay p{font-size:clamp(21px,3vw,43px);line-height:1.29;letter-spacing:-.05em;margin:0 0 32px}.about-essay .small{font-size:clamp(16px,1.5vw,20px);line-height:1.6;letter-spacing:-.015em;color:var(--soft)}.about-prose{max-width:850px}.method{padding:clamp(70px,8vw,125px) 0;border-bottom:1px solid var(--line)}.method h2{font-size:clamp(43px,6vw,85px);letter-spacing:-.08em;margin:0 0 35px}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}.method-item{background:#EEF8F5;padding:clamp(25px,3vw,50px)}.method-item h3{font-size:clamp(25px,3vw,42px);letter-spacing:-.065em;margin:25px 0 14px}.method-item p{font-size:15px;line-height:1.56;color:var(--soft);margin:0}.method-item .mono{color:#197C93}.loom-drawing{position:relative;height:310px;margin:45px 0 0;border:1px solid var(--line);background:repeating-linear-gradient(90deg,transparent 0,transparent 22px,#249CB633 23px,#249CB633 24px),repeating-linear-gradient(0deg,transparent 0,transparent 22px,#178F9A36 23px,#178F9A36 24px),#E4F5F3}.loom-drawing:after{content:"";position:absolute;left:32%;top:0;bottom:0;width:29%;border-left:2px solid #249CB6;border-right:2px solid #249CB6;background:repeating-linear-gradient(0deg,#249CB61A 0,#249CB61A 11px,transparent 11px,transparent 23px);animation:loom 9s ease-in-out infinite alternate}@keyframes loom{to{transform:translateX(19px) skewX(8deg)}}.imprint{padding:clamp(90px,13vw,185px) 0 140px;min-height:62vh;max-width:1050px}.imprint h1{font-size:clamp(70px,10vw,140px);letter-spacing:-.09em;margin:18px 0 35px}.imprint p,.imprint dd{font-size:clamp(16px,1.5vw,20px);line-height:1.65;color:var(--soft)}.imprint .warning{border-left:3px solid #249CB6;padding:0 0 0 22px}.imprint dl{border-top:1px solid var(--line);margin-top:40px}.imprint dl>div{border-bottom:1px solid var(--line);padding:22px 0;display:grid;grid-template-columns:35% 1fr;gap:24px}.imprint dt{font:11px/1.5 var(--mono);text-transform:uppercase;color:var(--dim)}.imprint dd{margin:0}@media(max-width:780px){.about-essay{grid-template-columns:1fr;gap:20px}.method-grid{grid-template-columns:1fr}.imprint dl>div{grid-template-columns:1fr;gap:4px}}@media(prefers-reduced-motion:reduce){.loom-drawing:after{animation:none}}/* cover/layout overflow patch */
.frame,main,.hero,.hero-copy,.experiment,.exp-bottom,.exp-bar,.project,.about-hero{min-width:0}
.hero{grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:clamp(26px,3.4vw,72px)}
.hero h1{font-size:clamp(3.65rem,7.6vw,8.6rem);line-height:.95;letter-spacing:-.085em;max-width:100%;text-wrap:balance}
.hero h1 .serif{font-size:.81em;white-space:nowrap;letter-spacing:-.07em}
.hero-note{min-width:0;flex-wrap:wrap}
.exp-bar{flex-wrap:wrap;align-items:start}
.exp-title,.exp-id{overflow-wrap:anywhere}
.exp-bottom{display:grid;grid-template-columns:minmax(0,1fr) minmax(84px,28%);align-items:end;gap:14px;width:100%}
.exp-bottom .coordinate{font-family:"Newsreader",Georgia,"Times New Roman",serif;font-size:clamp(2.45rem,3.9vw,4.45rem);font-weight:400;font-style:italic;letter-spacing:-.076em;line-height:.92;max-width:100%;min-width:0;white-space:normal;overflow-wrap:normal;color:#176A7E}
.exp-bottom .coordinate .turq-dot{color:#249CB6}
.experiment .exp-bottom .exp-id{max-width:100%;min-width:0;text-align:right;line-height:1.55;font-size:clamp(9px,.78vw,11px)}
.experiment canvas{max-width:100%}
.project .status{max-width:100%;overflow-wrap:anywhere}
.imprint .warning{display:none}
.imprint a{color:#176F86;text-decoration:underline;text-underline-offset:4px}
.imprint .legal-sub{margin:40px 0 0;color:var(--soft);font-size:clamp(15px,1.5vw,18px);max-width:760px}
.imprint dd{overflow-wrap:anywhere}
@media(max-width:1030px){.hero{grid-template-columns:minmax(0,1fr) minmax(0,.94fr);gap:26px}.hero h1{font-size:clamp(3.45rem,7.4vw,6.4rem)}.exp-bottom .coordinate{font-size:clamp(2.25rem,4.5vw,3.8rem)}}
@media(max-width:780px){.hero{grid-template-columns:minmax(0,1fr)}.hero h1{font-size:clamp(3.4rem,10.3vw,6rem)}.hero h1 .serif{font-size:.82em}.experiment{width:100%;height:clamp(365px,76vw,550px)}.exp-bottom .coordinate{font-size:clamp(2.65rem,8vw,4.8rem)}.about-hero h1{font-size:clamp(3.2rem,9.2vw,5.8rem);overflow-wrap:normal}}
@media(max-width:480px){.hero h1{font-size:clamp(3.05rem,10.7vw,3.8rem)}.hero h1 .serif{font-size:.86em}.hero-sub{font-size:16px}.exp-bar,.exp-bottom{padding:19px}.exp-bottom{grid-template-columns:minmax(0,1fr) minmax(85px,34%);gap:9px}.exp-bottom .coordinate{font-size:clamp(2.15rem,9.4vw,3.25rem)}.experiment .exp-bottom .exp-id{font-size:9px}.about-hero h1{font-size:clamp(2.6rem,10.2vw,3.5rem)}}
.exp-bottom .coordinate{line-height:1.13;padding:4px 0;display:block}.exp-bottom .coordinate .turq-dot{line-height:inherit}@media(max-width:480px){.exp-bottom .coordinate{line-height:1.15;padding:4px 0}}
/* Studio details v3 */
.studio-summary{display:grid;grid-template-columns:minmax(165px,.65fr) minmax(0,1.35fr);gap:clamp(28px,6vw,105px);border-bottom:1px solid var(--line);padding:clamp(40px,5vw,75px) 0}
.studio-summary .mono{color:var(--dim)}
.studio-summary p{margin:0;max-width:960px;font-size:clamp(22px,3vw,46px);line-height:1.21;font-weight:480;letter-spacing:-.065em}
.studio-summary strong{color:#167D93;font-weight:620}
.threads{padding:clamp(35px,4vw,60px) 0;border-bottom:1px solid var(--line)}
.threads-head{display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin-bottom:22px}
.threads-head .mono{color:var(--dim)}
.threads-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--line);border:1px solid var(--line);gap:1px}
.thread{background:#EAF8F5;min-height:clamp(120px,12vw,175px);padding:clamp(16px,2.2vw,32px);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.thread:nth-child(2){background:#E5F5F3}.thread:nth-child(3){background:#DEF1EE}.thread:nth-child(4){background:#D8EEEC}
.thread .mono{color:#49727D}.thread strong{font-size:clamp(22px,3vw,43px);letter-spacing:-.065em;line-height:1.1;font-weight:560}
.thread:after{content:"";background:#249CB6;position:absolute;bottom:0;left:0;height:3px;width:100%;transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.19,1,.22,1)}
.thread:hover:after{transform:scaleX(1)}
.studies{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:clamp(66px,9vw,145px) 0}
.studies-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px}
.studies-head h2{font-size:clamp(45px,7vw,104px);letter-spacing:-.08em;font-weight:650;line-height:.97;margin:14px 0 0}
.studies-head h2 em{font-family:"Newsreader",Georgia,serif;font-weight:400;color:#17869A}.studies-head p{font-size:16px;color:var(--soft);line-height:1.6;margin:0;max-width:320px}
.studies-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.study{min-width:0;background:#EFF9F6;min-height:clamp(275px,30vw,425px);padding:clamp(22px,2.8vw,44px);display:flex;flex-direction:column;justify-content:space-between;gap:32px;transition:background .4s}
.study:hover{background:#E3F5F0}.study .mono{color:var(--dim)}.study h3{font-size:clamp(33px,4vw,58px);margin:14px 0;letter-spacing:-.078em;line-height:1.05;font-weight:640}
.study p{color:var(--soft);font-size:15px;line-height:1.6;margin:0}
.steps{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.steps span{font-size:11px;font-weight:550;padding:7px 9px;border:1px solid #A9CCCB;background:#F9FCFB}.steps i{font-style:normal;color:#13869D;font:12px var(--mono)}.steps span:last-child{background:#D2EFEA}
.study a{align-self:start;color:#0E7387;border-bottom:1px solid currentColor;padding-bottom:4px;font:12px/1.5 var(--mono);letter-spacing:.03em}
.project-note{display:inline-block;margin:17px 0 0;border-bottom:1px solid #7AB1B4;padding:0 0 4px;color:#0A778B;font:12px/1.4 var(--mono);letter-spacing:.025em}
.org-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(32px,6vw,100px);padding:clamp(65px,9vw,145px) 0;border-bottom:1px solid var(--ink)}
.org-section h2{font-size:clamp(39px,5.7vw,84px);letter-spacing:-.081em;line-height:1.04;margin:21px 0;font-weight:650}.org-section h2 em{font-family:"Newsreader",Georgia,serif;font-weight:400;color:#16879B}
.org-section p{font-size:clamp(15px,1.4vw,19px);color:var(--soft);line-height:1.65;max-width:550px}
.org-catalogue{background:#E7F6F2;border:1px solid var(--line);padding:clamp(24px,3vw,53px);align-self:center}
.org-catalogue .mono{color:var(--dim)}.org-catalogue .address{font:clamp(19px,2.4vw,32px)/1.3 var(--mono);letter-spacing:-.075em;margin:60px 0 24px;color:#18657B;overflow-wrap:anywhere}
.org-catalogue a{display:inline-block;border-bottom:1px solid #1D8497;padding-bottom:4px;font-weight:560;font-size:14px}
@media(max-width:920px){.studies-grid{grid-template-columns:1fr}.study{min-height:220px}.org-section{grid-template-columns:1fr}}
@media(max-width:700px){.studio-summary{grid-template-columns:1fr;gap:16px}.threads-grid{grid-template-columns:1fr 1fr}.threads-head{flex-direction:column;gap:8px}.thread{min-height:125px}.studies-head{flex-direction:column;align-items:start;gap:20px}.org-catalogue .address{margin:35px 0 22px}}
@media(prefers-reduced-motion:reduce){.thread:after,.study{transition:none}}

/* Project note routes */
.case-hero{padding:clamp(85px,12vw,175px) 0 clamp(50px,7vw,105px);border-bottom:1px solid var(--ink)}
.case-hero .back{display:inline-block;color:#177E95;border-bottom:1px solid #83BAB9;padding-bottom:5px;font:12px var(--mono);margin-bottom:clamp(54px,7vw,105px)}
.case-hero h1{font-size:clamp(60px,11vw,160px);letter-spacing:-.091em;line-height:1.04;margin:19px 0 25px;font-weight:680}
.case-hero .lead{font-size:clamp(21px,2.65vw,37px);letter-spacing:-.045em;color:var(--soft);line-height:1.38;max-width:940px;margin:0}
.case-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:clamp(60px,7vw,105px);border-top:1px solid var(--line);padding-top:28px}
.case-facts div{border-left:1px solid var(--line);padding-left:15px}
.case-facts .mono{color:var(--dim)}.case-facts strong{display:block;margin-top:10px;font-weight:590;font-size:clamp(15px,1.6vw,22px);line-height:1.38}
.case-chapter{display:grid;grid-template-columns:minmax(155px,.62fr) minmax(0,1.38fr);gap:clamp(32px,6vw,110px);border-bottom:1px solid var(--line);padding:clamp(75px,9vw,144px) 0}
.case-chapter>.mono{color:var(--dim)}.case-chapter h2{font-size:clamp(36px,5vw,73px);letter-spacing:-.074em;line-height:1.07;font-weight:625;margin:0 0 28px}
.case-chapter p{font-size:clamp(16px,1.7vw,21px);line-height:1.7;max-width:820px;color:var(--soft)}
.case-chapter .caveat{border-left:2px solid #249CB6;background:#E7F6F1;padding:20px 28px;margin-top:38px}.case-chapter .caveat p{font-size:15px;margin:5px 0}
.case-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;border:1px solid var(--line);background:var(--line);margin:40px 0}
.case-step{padding:clamp(17px,2.4vw,30px);background:#EDF9F5;min-height:165px}
.case-step .mono{color:#14849B}.case-step strong{font-weight:590;font-size:clamp(18px,2vw,29px);letter-spacing:-.045em;display:block;margin-top:33px;line-height:1.2}
.case-next{padding:clamp(70px,8vw,115px) 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}
.case-next a{font-size:clamp(27px,3.6vw,54px);letter-spacing:-.06em;font-weight:620;line-height:1.2}.case-next a:hover{color:#147C91}
@media(max-width:800px){.case-chapter{grid-template-columns:1fr}.case-facts{grid-template-columns:1fr;gap:17px}.case-steps{grid-template-columns:1fr 1fr}.case-step{min-height:125px}}
@media(max-width:440px){.case-hero h1{font-size:clamp(54px,11vw,70px)}}

/* Paper Mono's wider glyph spacing: preserve the bilingual header at 320px. */
@media(max-width:360px){#top .nav{gap:7px;letter-spacing:.045em}}


/* ARKHE editorial review v2 / image-led, no illustrative CAD */
.ak{--ink:#202a27;--muted:#52615b;--line:#bec7bf;--paper:#ebece5;color:var(--ink);background:var(--paper);margin:0 calc(-1*var(--pad));padding:0 var(--pad);overflow:clip}
.ak *{box-sizing:border-box}.ak a:focus-visible{outline:2px solid #a8523c;outline-offset:4px}
.ak-mono{font:500 11px/1.5 var(--zett-technical),monospace;letter-spacing:.045em;text-transform:uppercase}
.ak-top{border-bottom:1px solid var(--line);padding:23px 0;display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap}
.ak-top a{text-decoration:none;border-bottom:1px solid currentColor;color:var(--ink)}.ak-top span{color:var(--muted);overflow-wrap:anywhere}
.ak-hero{padding:clamp(48px,7vw,100px) 0 0}
.ak-hero .ak-mono{color:var(--muted);display:block;margin-bottom:20px}
.ak-hero h1{font:600 clamp(76px,19vw,285px)/.83 var(--zett-body),sans-serif;letter-spacing:-.105em;white-space:nowrap;margin:0 0 clamp(36px,6vw,80px);transform:translateX(-.025em)}
.ak-deck{border-top:1px solid var(--ink);padding:22px 0 clamp(36px,5vw,75px);display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(25px,8vw,120px);align-items:start}
.ak-deck h2{font:400 clamp(34px,4.3vw,69px)/1.06 var(--zett-editorial),Georgia,serif;letter-spacing:-.052em;margin:0}
.ak-deck p{font:400 clamp(17px,1.6vw,22px)/1.58 var(--zett-body),sans-serif;color:var(--muted);margin:0;max-width:560px}
.ak-archive{margin:0;background:transparent}
.ak-archive img{display:block;inline-size:100%;block-size:auto}
.ak-caption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;border-bottom:1px solid var(--line);padding:16px 0 18px;color:var(--muted)}
.ak-story{display:grid;grid-template-columns:minmax(150px,.43fr) minmax(0,1.57fr);gap:clamp(20px,7vw,130px);padding:clamp(80px,12vw,175px) 0;border-bottom:1px solid var(--line)}
.ak-story>.ak-mono{color:var(--muted);padding-top:11px}
.ak-story h2{font:400 clamp(43px,6.2vw,104px)/1 var(--zett-editorial),Georgia,serif;letter-spacing:-.065em;max-width:970px;margin:0 0 28px}
.ak-story h2 em{color:#688276}
.ak-story p{font:400 clamp(17px,1.55vw,22px)/1.62 var(--zett-body),sans-serif;color:var(--muted);max-width:740px;margin:0}
.ak-pair{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);margin:0 calc(-1*var(--pad))}
.ak-pair article{padding:clamp(38px,5vw,75px) var(--pad);background:#e2e7df;min-width:0}
.ak-pair article+article{background:#f0f0e8}
.ak-pair h3{font:400 clamp(34px,4.2vw,66px)/1.03 var(--zett-editorial),Georgia,serif;letter-spacing:-.055em;margin:25px 0}
.ak-pair p{font:400 clamp(16px,1.4vw,20px)/1.65 var(--zett-body),sans-serif;max-width:520px;color:var(--muted);margin:0}

.ak-mkii{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(45px,6vw,110px);padding:clamp(80px,11vw,175px) 0;border-bottom:1px solid var(--line)}
.ak-mkii h2{font:400 clamp(42px,6vw,100px)/1 var(--zett-editorial),Georgia,serif;letter-spacing:-.06em;margin:22px 0 26px}
.ak-mkii p{font:400 clamp(16px,1.5vw,21px)/1.6 var(--zett-body),sans-serif;color:var(--muted);max-width:500px;margin:0 0 30px}
/* ARKHE poster occupies its own natural portrait frame; no square letterboxing. */
.ak-mkii figure{margin:0;background:transparent;min-width:0}
.ak-mkii figure img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.ak-link{display:inline-flex;gap:44px;justify-content:space-between;border-bottom:1px solid var(--ink);padding:0 0 10px;max-width:100%;font:500 13px/1.5 var(--zett-technical),monospace;letter-spacing:0;text-decoration:none;color:var(--ink)}
.ak-link:hover{color:#a2523e;border-color:#a2523e}
.ak-method{padding:clamp(80px,11vw,160px) 0;border-bottom:1px solid var(--line)}
.ak-method h2{font:400 clamp(44px,6.5vw,105px)/1 var(--zett-editorial),Georgia,serif;letter-spacing:-.06em;max-width:980px;margin:25px 0 65px}
.ak-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,3vw,48px)}
.ak-steps article{border-top:1px solid var(--ink);padding-top:20px;min-width:0}
.ak-steps h3{font:500 clamp(21px,2.1vw,34px)/1.15 var(--zett-body),sans-serif;letter-spacing:-.045em;margin:18px 0}
.ak-steps p{font:400 clamp(14px,1.26vw,18px)/1.65 var(--zett-body),sans-serif;color:var(--muted);margin:0}
.ak-final{padding:clamp(85px,12vw,175px) 0;display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,110px);align-items:end}
.ak-final h2{font:400 clamp(47px,7vw,113px)/.98 var(--zett-editorial),Georgia,serif;letter-spacing:-.06em;margin:23px 0 35px}
.ak-final p{font:400 16px/1.65 var(--zett-body),sans-serif;color:var(--muted);margin:0 0 22px}
.ak-final .ak-credit{border-top:1px solid var(--line);padding-top:22px;font-size:13px;margin-top:35px}
@media(max-width:800px){.ak-deck,.ak-story,.ak-mkii,.ak-final{grid-template-columns:1fr}.ak-story{gap:20px}.ak-steps{grid-template-columns:1fr 1fr;gap:30px}}
@media(max-width:560px){.ak-hero h1{font-size:19vw}.ak-top>.ak-mono:last-child{font-size:10px;max-width:100%;text-align:right}.ak-mkii h2{font-size:clamp(39px,10vw,60px)}.ak-pair{grid-template-columns:1fr}.ak-pair article+article{border-top:1px solid var(--line)}.ak-pair article{padding:45px var(--pad)}.ak-steps{grid-template-columns:1fr}.ak-story,.ak-method,.ak-mkii,.ak-final{padding:70px 0}.ak-caption{font-size:9px}.ak-top{gap:6px}}
@media(prefers-reduced-motion:reduce){.ak *{scroll-behavior:auto!important;transition:none!important}}

/* 2026-10-09 · Reflow: contact link wraps rather than pushing the page horizontally. */
@media screen {
  .contact{min-width:0}
  .contact > *{min-width:0}
  .contact-address{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
}
