:root{
  --ink:#151515;
  --paper:#efe7d5;
  --orange:#f05a28;
  --pool:#73d9df;
  --acid:#d7ff49;
  --muted:#9e988a;
  --line:rgba(21,21,21,.2);
  --pad:clamp(20px,4vw,64px);
  --display:"Helvetica Neue",Helvetica,Arial,sans-serif;
  --mono:"Courier New",Courier,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--display);overflow-x:hidden}
button,a{font:inherit}
a{color:inherit;text-decoration:none}
button{color:inherit}
::selection{background:var(--acid);color:var(--ink)}
.skip-link{position:fixed;left:12px;top:12px;z-index:999;transform:translateY(-150%);background:var(--acid);padding:10px 14px;border:2px solid var(--ink)}
.skip-link:focus{transform:none}
.site-header{position:fixed;z-index:50;left:0;right:0;top:0;display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center;padding:16px var(--pad);mix-blend-mode:difference;color:#fff;pointer-events:none}
.site-header>*{pointer-events:auto}
.wordmark{display:inline-flex;flex-direction:column;width:max-content;font-weight:900;letter-spacing:-.04em}
.wordmark small{font-family:var(--mono);font-size:9px;letter-spacing:.12em;font-weight:400}
.site-nav{display:flex;gap:24px;text-transform:uppercase;font-family:var(--mono);font-size:11px;letter-spacing:.08em}
.site-nav a:hover{text-decoration:line-through}
.build-chip{justify-self:end;font:10px var(--mono);display:flex;gap:8px;align-items:center}
.status-dot{width:8px;height:8px;border-radius:50%;background:var(--acid);box-shadow:0 0 12px var(--acid)}
.hero{position:relative;min-height:100svh;background:var(--ink);color:var(--paper);padding:96px var(--pad) 42px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.hero-kicker{display:flex;justify-content:space-between;gap:20px;font:10px var(--mono);letter-spacing:.12em;position:relative;z-index:2}
.hero-title-wrap{position:relative;z-index:2;margin-top:auto;margin-bottom:auto}
.hero-title{font-size:clamp(88px,18vw,290px);line-height:.73;letter-spacing:-.09em;margin:0;text-transform:uppercase;font-weight:900}
.hero-title span{display:block}
.hero-title span:last-child{margin-left:8vw}
.hero-orbit{position:absolute;right:2vw;top:20%;width:160px;height:160px;border:1px solid rgba(239,231,213,.35);border-radius:50%;font:9px var(--mono);text-transform:uppercase;animation:spin 16s linear infinite}
.hero-orbit span{position:absolute}
.hero-orbit span:nth-child(1){top:-6px;left:55px}
.hero-orbit span:nth-child(2){right:-27px;top:72px}
.hero-orbit span:nth-child(3){bottom:-6px;left:66px}
.hero-orbit span:nth-child(4){left:-35px;top:72px}
@keyframes spin{to{transform:rotate(360deg)}}
.hero-bottom{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr 1fr auto;gap:32px;align-items:end}
.hero-deck{font-size:clamp(24px,3vw,52px);line-height:.95;letter-spacing:-.05em;margin:0;font-weight:700}
.hero-thesis{font-size:clamp(18px,2vw,30px);line-height:1.05;margin:0;max-width:520px}
.bench-link{font:10px var(--mono);text-transform:uppercase;display:flex;gap:14px;align-items:center;border-bottom:1px solid currentColor;padding-bottom:8px}
.sun-disc{position:absolute;right:-10vw;bottom:-22vw;width:52vw;height:52vw;border-radius:50%;background:var(--orange);filter:saturate(.9)}
.registration{position:absolute;font:60px var(--mono);opacity:.25}
.registration-one{left:2vw;top:32%}
.registration-two{right:30%;bottom:12%}
.section{padding:110px var(--pad)}
.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:56px}
.eyebrow{font:11px var(--mono);letter-spacing:.12em;margin:0 0 14px;text-transform:uppercase}
.section-heading h2{font-size:clamp(44px,7vw,110px);line-height:.88;letter-spacing:-.07em;margin:0;max-width:1050px}
.section-note{font:13px/1.45 var(--mono);max-width:360px;margin:0}
.work-section{background:var(--paper)}
.project{border-top:2px solid var(--ink);padding:18px 0 96px;margin-bottom:90px}
.project-topline{display:grid;grid-template-columns:1fr 1fr auto;gap:20px;font:10px var(--mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:42px}
.project-status{border:1px solid currentColor;padding:5px 8px}
.project-grid{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(420px,1.15fr);gap:7vw;align-items:center}
.project-copy h3{font-size:clamp(64px,9vw,155px);line-height:.76;letter-spacing:-.085em;margin:0 0 32px}
.project-pitch{font-size:clamp(22px,2.5vw,40px);line-height:1.02;letter-spacing:-.035em;max-width:680px}
.project-button{margin-top:18px;border:0;border-bottom:2px solid var(--ink);background:transparent;padding:9px 0;display:flex;gap:26px;cursor:pointer;font:12px var(--mono);text-transform:uppercase}
.project-button:hover{background:var(--acid)}
.civic-machine{height:min(52vw,560px);min-height:430px;background:var(--ink);color:var(--paper);position:relative;overflow:hidden;border-radius:2px}
.civic-machine svg{position:absolute;inset:0;width:100%;height:100%}
.civic-machine path{stroke:rgba(115,217,223,.65);fill:none;stroke-width:1.5;stroke-dasharray:5 7}
.civic-node{position:absolute;background:var(--paper);color:var(--ink);padding:10px 12px;z-index:2;box-shadow:8px 8px 0 var(--orange);font:10px var(--mono)}
.civic-node span,.civic-node b{display:block}
.node-a{left:8%;top:10%}.node-b{right:7%;top:11%}.node-c{left:8%;bottom:10%}.node-d{right:8%;bottom:12%}
.civic-core{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);width:190px;height:190px;border:1px solid var(--pool);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font:10px var(--mono)}
.civic-core strong{font-size:36px;color:var(--acid)}
.project-turtle{background:var(--pool);margin-left:calc(var(--pad)*-1);margin-right:calc(var(--pad)*-1);padding:18px var(--pad) 96px;border-top-color:var(--ink)}
.turtle-lab{height:min(52vw,560px);min-height:430px;background:#f6f1e7;border:2px solid var(--ink);position:relative;overflow:hidden}
.terminal-line{font:11px var(--mono);padding:13px;border-bottom:1px solid var(--ink)}
.terminal-line span{color:var(--orange)}
.turtle-stage{width:100%;height:100%;padding:40px}
.turtle-path{fill:none;stroke:var(--orange);stroke-width:4;stroke-linejoin:round;stroke-dasharray:1800;stroke-dashoffset:1800}
.turtle-stage.run .turtle-path{animation:draw 3.8s cubic-bezier(.2,.7,.2,1) forwards}
@keyframes draw{to{stroke-dashoffset:0}}
.turtle-cursor path{fill:var(--ink)}
.turtle-stage.run .turtle-cursor{animation:wander 3.8s ease-in-out}
@keyframes wander{0%{transform:translate(320px,210px)}25%{transform:translate(430px,115px) rotate(45deg)}50%{transform:translate(470px,250px) rotate(120deg)}75%{transform:translate(220px,260px) rotate(250deg)}100%{transform:translate(195px,125px) rotate(350deg)}}
.coordinate-tag{position:absolute;right:12px;bottom:12px;font:9px var(--mono);background:var(--acid);padding:7px 9px;border:1px solid var(--ink)}
.project-salonities{background:var(--orange);margin-left:calc(var(--pad)*-1);margin-right:calc(var(--pad)*-1);padding:18px var(--pad) 96px}
.salonities-field{height:min(48vw,540px);min-height:400px;background:var(--paper);position:relative;display:grid;grid-template-columns:repeat(5,1fr);place-items:center;overflow:hidden}
.salonities-field span{font-size:clamp(42px,7vw,110px);font-weight:900;mix-blend-mode:multiply;z-index:2}
.salonities-wave{position:absolute;width:150%;height:50%;border:4px solid var(--pool);border-radius:50%;transform:rotate(-12deg)}
.wave-two{transform:rotate(18deg);border-color:var(--ink);width:120%;height:72%}
.project-sloaf{background:var(--ink);color:var(--paper);margin-left:calc(var(--pad)*-1);margin-right:calc(var(--pad)*-1);padding:18px var(--pad) 96px;border-top-color:var(--paper)}
.project-sloaf .project-button{color:var(--paper);border-bottom-color:var(--paper)}
.project-sloaf .project-button:hover{background:var(--acid);color:var(--ink)}
.hotline-panel{height:min(52vw,560px);min-height:430px;background:#292929;border:1px solid rgba(239,231,213,.55);position:relative;display:flex;flex-direction:column;padding:18px;box-shadow:inset 0 0 0 8px #1d1d1d}
.hotline-head{display:flex;justify-content:space-between;align-items:center;font:10px var(--mono);letter-spacing:.12em;border-bottom:1px solid rgba(239,231,213,.28);padding-bottom:13px}
.hotline-light{width:11px;height:11px;border-radius:50%;background:var(--orange);box-shadow:0 0 18px var(--orange)}
.hotline-panel.connected .hotline-light{background:var(--acid);box-shadow:0 0 24px var(--acid)}
.hotline-display{margin:22px 0;background:#101010;border:1px solid rgba(215,255,73,.38);min-height:130px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;font-family:var(--mono);color:var(--acid)}
.hotline-display small{font-size:9px;letter-spacing:.14em}
.hotline-display strong{font-size:clamp(30px,5vw,68px);line-height:.86;letter-spacing:-.06em}
.hotline-display span{font-size:9px;letter-spacing:.08em;color:var(--paper)}
.hotline-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;flex:1}
.hotline-keypad span{display:grid;place-items:center;border:1px solid rgba(239,231,213,.35);font:18px var(--mono);background:#1d1d1d}
.hotline-panel.connected .hotline-keypad span:nth-child(3n+2){background:var(--orange);color:var(--ink)}
.hotline-foot{font:9px var(--mono);letter-spacing:.09em;margin-top:14px;opacity:.65}
.hotline-detail{color:var(--ink)}
.project-detail{margin-top:28px;border:2px solid var(--ink);padding:22px;max-width:780px;background:var(--paper)}
.detail-label{font:10px var(--mono);text-transform:uppercase}
.project-detail>p:not(.detail-label):not(.stamp){font-size:24px;line-height:1.15}
.stamp{display:inline-block;border:3px solid var(--orange);color:var(--orange);font:11px var(--mono);padding:8px 11px;transform:rotate(-1deg)}
.workshop-section{background:var(--ink);color:var(--paper)}
.split-heading{align-items:flex-start}
.bench-board{border-top:1px solid rgba(239,231,213,.4);margin:65px 0}
.progress-row{display:grid;grid-template-columns:180px 1fr 100px;gap:22px;align-items:center;border-bottom:1px solid rgba(239,231,213,.25);padding:18px 0;font:11px var(--mono)}
.progress-track{height:8px;background:rgba(239,231,213,.12);overflow:hidden}
.progress-track i{display:block;height:100%;width:var(--progress);background:var(--acid)}
.artifact-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.artifact{border:0;min-height:230px;padding:18px;text-align:left;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;transition:transform .18s ease}
.artifact:hover{transform:translateY(-7px) rotate(-.6deg)}
.artifact span{font:10px var(--mono)}
.artifact b{font-size:28px;line-height:.98;letter-spacing:-.04em}
.artifact-orange{background:var(--orange)}
.artifact-paper{background:var(--paper)}
.artifact-blue{background:var(--pool)}
.artifact-acid{background:var(--acid)}
.studio-section{background:#f7f0df}
.studio-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;align-items:start}
.sticky-heading{display:block;position:sticky;top:120px}
.sticky-heading h2{font-size:clamp(52px,7vw,108px)}
.manifesto{font-size:clamp(30px,4.3vw,70px);line-height:1.01;letter-spacing:-.055em}
.manifesto p{margin:0 0 1.1em}
.manifesto-finale{font-size:1.55em;font-weight:900;text-transform:uppercase;color:var(--orange)}
.archive-section{background:var(--acid)}
.archive-heading{align-items:flex-start}
.lineage{margin:0 0 72px;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);padding:18px 0 24px}
.lineage-label{font:10px var(--mono);letter-spacing:.1em;margin:0 0 20px}
.lineage-track{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:18px;align-items:center}
.lineage-track div{min-height:120px;border:1px solid var(--ink);background:var(--paper);padding:16px;display:flex;flex-direction:column;justify-content:space-between}
.lineage-track small{font:9px var(--mono);letter-spacing:.1em}
.lineage-track strong{font-size:clamp(24px,3.2vw,48px);line-height:.9;letter-spacing:-.05em}
.lineage-track>span{font-size:28px}
.archive-table{border-top:2px solid var(--ink)}
.archive-row{display:grid;grid-template-columns:1.2fr 1fr 180px;gap:20px;align-items:center;border-bottom:1px solid var(--ink);min-height:84px;font:12px var(--mono);transition:padding .18s ease,background .18s ease}
.archive-row:not(.archive-head):hover{background:var(--paper);padding-left:14px}
.archive-row strong{font:700 clamp(25px,3.4vw,52px) var(--display);letter-spacing:-.05em}
.archive-head{min-height:44px;font-size:9px}
.ghost-row{opacity:.55}
.site-footer{background:var(--orange);padding:34px var(--pad);display:grid;grid-template-columns:1fr 1fr auto;gap:30px;align-items:end}
.site-footer>div{display:flex;flex-direction:column;gap:5px}
.site-footer strong{font-size:25px;letter-spacing:-.04em}
.site-footer span,.site-footer p,.footer-build{font:10px/1.4 var(--mono)}
.site-footer p{margin:0}
.footer-build{border:1px solid var(--ink);background:transparent;padding:8px;cursor:pointer}
.system-toast{position:fixed;z-index:100;right:18px;bottom:18px;max-width:340px;background:var(--ink);color:var(--acid);border:1px solid var(--acid);padding:14px 16px;font:11px/1.45 var(--mono);box-shadow:10px 10px 0 rgba(0,0,0,.18)}
body.system-glitch{animation:glitch .16s steps(2) 4}
@keyframes glitch{25%{transform:translateX(4px)}50%{filter:hue-rotate(60deg)}75%{transform:translateX(-4px)}}
@media (max-width:900px){
  :root{--pad:clamp(18px,5vw,36px)}
  .site-header{grid-template-columns:1fr;padding-top:14px;padding-bottom:14px;position:absolute}
  .site-nav,.build-chip{display:none}
  .hero{min-height:100svh;padding-top:84px;padding-bottom:58px}
  .hero-bottom,.project-grid,.studio-grid{grid-template-columns:1fr}
  .hero-bottom{gap:18px}
  .bench-link{width:max-content;min-height:44px;align-items:center}
  .hero-orbit{display:none}
  .project-grid{gap:34px}
  .project-copy h3{font-size:clamp(58px,15vw,108px);line-height:.8}
  .project-salonities .project-copy h3{font-size:clamp(48px,12vw,78px);letter-spacing:-.065em}
  .artifact-strip{grid-template-columns:1fr 1fr}
  .sticky-heading{position:static}
  .lineage-track{grid-template-columns:1fr}
  .lineage-track>span{transform:rotate(90deg);justify-self:center}
  .archive-row{grid-template-columns:1.4fr 1fr}
  .archive-row>*:last-child{display:none}
  .site-footer{grid-template-columns:1fr}
  .project-button{min-height:44px;align-items:center}
}

@media (max-width:600px){
  .hero{padding-top:76px;padding-bottom:54px}
  .hero-kicker{font-size:9px;gap:10px}
  .hero-kicker span:nth-child(2){display:none}
  .hero-title{font-size:min(25vw,104px);line-height:.78;letter-spacing:-.075em}
  .hero-title span:last-child{margin-left:0}
  .sun-disc{width:78vw;height:78vw;right:-32vw;bottom:-16vw}
  .hero-deck{font-size:clamp(25px,8.5vw,38px);line-height:.94}
  .hero-thesis{font-size:18px;line-height:1.12;max-width:22rem}
  .section{padding-top:64px;padding-bottom:64px}
  .section-heading{display:block;margin-bottom:38px}
  .section-heading h2{font-size:clamp(42px,12vw,64px);line-height:.9}
  .section-note{margin-top:16px;font-size:11px}
  .project{padding-top:14px;padding-bottom:56px;margin-bottom:52px}
  .project-turtle,.project-salonities,.project-sloaf{padding-top:14px;padding-bottom:56px}
  .project-topline{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin-bottom:26px;font-size:9px}
  .project-topline span:nth-child(2){display:block;flex-basis:100%;order:3;opacity:.66}
  .project-status{padding:4px 7px}
  .project-grid{gap:26px}
  .project-copy h3{font-size:clamp(52px,15vw,78px);line-height:.82;margin-bottom:22px}
  .project-salonities .project-copy h3{font-size:clamp(44px,12.2vw,62px);white-space:nowrap}
  .project-pitch{font-size:20px;line-height:1.08;max-width:29rem}
  .project-button{width:100%;justify-content:space-between;padding:12px 0;margin-top:12px}
  .civic-machine,.turtle-lab,.salonities-field,.hotline-panel{min-height:0;height:auto;aspect-ratio:1/1}
  .civic-core{width:148px;height:148px;font-size:9px}
  .civic-core strong{font-size:28px}
  .civic-node{padding:7px 8px;font-size:8px;box-shadow:5px 5px 0 var(--orange)}
  .turtle-stage{padding:14px}
  .terminal-line{font-size:9px;padding:10px}
  .coordinate-tag{font-size:8px;right:8px;bottom:8px}
  .salonities-field{grid-template-columns:repeat(5,1fr)}
  .salonities-field span{font-size:clamp(30px,10vw,46px)}
  .hotline-panel{padding:14px;box-shadow:inset 0 0 0 5px #1d1d1d}
  .hotline-head{font-size:8px}
  .hotline-display{margin:14px 0;min-height:104px;padding:14px}
  .hotline-display strong{font-size:clamp(34px,11vw,52px)}
  .hotline-keypad{gap:6px}
  .hotline-keypad span{font-size:16px}
  .hotline-foot{font-size:8px}
  .project-detail{margin-top:20px;padding:16px}
  .project-detail>p:not(.detail-label):not(.stamp){font-size:19px;line-height:1.18}
  .bench-board{margin:42px 0}
  .progress-row{grid-template-columns:104px 1fr;gap:14px;padding:14px 0;font-size:9px}
  .progress-row>*:last-child{display:none}
  .artifact-strip{grid-template-columns:1fr}
  .artifact{min-height:165px;padding:16px}
  .artifact b{font-size:25px}
  .manifesto{font-size:clamp(25px,7.4vw,34px);line-height:1.04;letter-spacing:-.045em}
  .manifesto-finale{font-size:1.3em}
  .lineage{margin-bottom:46px}
  .lineage-track{gap:12px}
  .lineage-track div{min-height:96px;padding:14px}
  .lineage-track strong{font-size:clamp(26px,9vw,40px)}
  .archive-head{display:none}
  .archive-row{grid-template-columns:1fr!important;gap:5px;align-items:start;padding:14px 0;min-height:0}
  .archive-row>*{display:block!important}
  .archive-row strong{font-size:clamp(28px,9vw,40px)}
  .archive-row span{font-size:9px}
  .site-footer{gap:16px}
  .site-footer strong{font-size:22px}
  .system-toast{left:14px;right:14px;bottom:14px;max-width:none}
}

@media (max-width:380px){
  :root{--pad:16px}
  .hero-title{font-size:24vw}
  .project-copy h3{font-size:14.4vw}
  .project-salonities .project-copy h3{font-size:11.4vw}
  .hero-deck{font-size:26px}
}

@media (hover:none){
  .artifact:hover{transform:none}
  .archive-row:not(.archive-head):hover{padding-left:0}
}
@media (prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}
/* Tighter studio navigation and genuinely linked artifacts */
.section{padding-top:78px;padding-bottom:78px}
.section-heading{margin-bottom:36px}
.project{padding-bottom:64px;margin-bottom:54px}
.project-topline{margin-bottom:28px}
.project-grid{gap:4vw}
.civic-machine,.turtle-lab,.hotline-panel{height:min(40vw,470px);min-height:350px}
.salonities-field{height:min(40vw,470px);min-height:350px}
.project-copy .project-button{width:fit-content;align-items:center}
a.project-button{display:flex;text-decoration:none}
.manifesto{font-size:clamp(26px,3.4vw,54px)}
.manifesto p{margin-bottom:.75em}
.bench-board{margin:38px 0}
.artifact{min-height:175px;text-decoration:none;color:var(--ink)}
.archive-row a{color:inherit;text-decoration:none;border-bottom:1px solid transparent}
.archive-row a:hover,.archive-row a:focus-visible{border-bottom-color:currentColor}
.archive-notes{border-top:2px solid var(--ink);margin-top:64px;padding-top:24px;max-width:850px}
.archive-notes h3{font-size:clamp(30px,4vw,62px);line-height:1;letter-spacing:-.05em;margin:12px 0 18px}
.archive-notes>p:not(.eyebrow){font-size:clamp(17px,2vw,23px);line-height:1.3}
.archive-return{display:inline-block;margin-top:10px;color:inherit;font:12px var(--mono);text-transform:uppercase}
@media(max-width:600px){.section{padding-top:56px;padding-bottom:56px}.project{padding-bottom:44px;margin-bottom:36px}.civic-machine,.turtle-lab,.salonities-field,.hotline-panel{height:auto;min-height:0}.artifact{min-height:145px}.project-copy .project-button{width:100%}}

/* Project network, distinct from the experimental workshop controls */
.studio-network{padding:32px 0 44px;border-top:2px solid var(--ink)}
.studio-network h3{font-size:clamp(34px,5vw,72px);letter-spacing:-.06em;line-height:.95;margin:10px 0 20px}
.studio-network>p:not(.eyebrow){font-size:clamp(16px,1.8vw,21px);line-height:1.3;max-width:780px}
.network-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:30px}
.network-grid a{background:var(--paper);color:var(--ink);border:2px solid var(--ink);padding:20px;text-decoration:none;display:flex;flex-direction:column;gap:12px;min-height:125px;transition:transform .15s ease,background .15s ease}
.network-grid a:hover{transform:translate(-3px,-3px);background:var(--pool)}
.network-grid strong{font-size:clamp(20px,2.4vw,34px);line-height:1;letter-spacing:-.05em}
.network-grid span,.studio-network .network-note{font:11px/1.5 var(--mono)}
@media(max-width:600px){.network-grid{grid-template-columns:1fr}.network-grid a{min-height:100px}}

/* Distinct experimental controls and accessible modal. */
[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
.experiment-open{overflow:hidden}
.experiment-backdrop{position:fixed;inset:0;z-index:120;background:rgba(0,0,0,.72);display:grid;place-items:center;padding:18px}
.experiment-dialog{background:var(--paper);color:var(--ink);border:3px solid var(--ink);box-shadow:12px 12px 0 var(--orange);width:min(760px,100%);max-height:min(88dvh,820px);overflow:auto;padding:clamp(20px,4vw,40px)}
.experiment-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:16px;font:11px var(--mono);border-bottom:2px solid var(--ink);padding-bottom:12px}
.experiment-dialog button{background:var(--acid);border:2px solid var(--ink);padding:12px 14px;cursor:pointer;font:12px var(--mono);font-weight:bold}
.experiment-dialog-top button{background:transparent;border:0}
.experiment-dialog h2{font-size:clamp(44px,9vw,96px);line-height:.85;letter-spacing:-.075em;margin:28px 0}
.experiment-output{background:var(--ink);color:var(--paper);padding:clamp(18px,4vw,30px);min-height:190px}
.experiment-main{display:block;font-size:clamp(23px,4vw,43px);font-weight:900;line-height:1.05;letter-spacing:-.04em;color:var(--acid)}
.experiment-output p:not(.experiment-main){font:clamp(13px,1.7vw,18px)/1.4 var(--mono)}
.experiment-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.experiment-actions button:last-child{background:transparent}
.studio-xray main section,.studio-xray .project,.studio-xray .project-grid,.studio-xray .project-copy,.studio-xray .civic-machine,.studio-xray .archive-row,.studio-xray .network-grid a{outline:1px dashed var(--orange);outline-offset:-2px}
.studio-xray .project-grid{background-image:linear-gradient(90deg,transparent calc(50% - 1px),rgba(240,90,40,.4) 50%,transparent calc(50% + 1px))}
.studio-xray .artifact-blue{box-shadow:inset 0 0 0 4px var(--ink)}
@media(max-width:900px){.site-header{grid-template-columns:1fr auto;align-items:start}.site-nav{display:flex;grid-column:2;grid-row:1;flex-wrap:wrap;justify-content:flex-end;gap:10px 14px;max-width:210px;font-size:10px}.build-chip{display:none}}
@media(max-width:600px){.site-nav{max-width:175px;font-size:9px;gap:8px 10px}.wordmark{font-size:13px}.wordmark small{font-size:8px}.experiment-dialog{box-shadow:6px 6px 0 var(--orange)}.experiment-actions button{width:100%}}

/* SLOAF Hotline: working keypad, accessible playback, responsive controls. */
.hotline-keypad button{display:grid;place-items:center;border:1px solid rgba(239,231,213,.35);font:18px var(--mono);background:#1d1d1d;color:var(--paper);cursor:pointer;min-height:38px}
.hotline-keypad button:hover,.hotline-keypad button:focus-visible{background:var(--acid);color:var(--ink)}
.hotline-panel.connected .hotline-keypad button:nth-child(3n+2){background:var(--orange);color:var(--ink)}
.hotline-panel.connected .hotline-keypad button:nth-child(3n+2):hover{background:var(--acid)}
.hotline-controls{display:flex;gap:8px;margin-top:10px}
.hotline-controls button{flex:1;background:transparent;color:var(--paper);border:1px solid rgba(239,231,213,.5);padding:8px;font:10px var(--mono);cursor:pointer;min-height:38px}
.hotline-controls button:disabled{opacity:.35;cursor:not-allowed}
.hotline-progress{height:3px;background:#4c4c4c;margin-top:10px;overflow:hidden}
.hotline-progress i{display:block;width:0;height:100%;background:var(--acid)}
.hotline-help{font:9px/1.4 var(--mono);margin:8px 0 4px}
.hotline-display strong{overflow-wrap:anywhere;font-size:clamp(25px,3.8vw,54px)}
@media(max-width:600px){.hotline-panel{aspect-ratio:auto;min-height:510px}.hotline-keypad button{min-height:42px}.hotline-display{min-height:112px}}
