/* Detail pages and interactive surfaces. */
.page-hero{padding-top:50px;padding-bottom:60px}.page-hero h1{font-size:clamp(78px,12vw,192px);font-weight:600;line-height:.86;margin:70px 0 40px}.page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:35px}.page-intro>p{max-width:420px;font-size:16px;color:var(--muted)}.page-intro>.micro{font-size:9px;color:var(--muted)}.work-index{padding-top:10px}.filter-bar{display:flex;justify-content:space-between;align-items:center;gap:25px;border-block:1px solid var(--line);margin-bottom:44px}.filter-bar>div{display:flex;gap:30px}.filter-button{padding:22px 0;color:var(--muted);font-size:12px;min-height:60px;border-bottom:1px solid transparent}.filter-button sup{font:8px monospace;margin-left:5px}.filter-button.active{color:var(--lime);border-color:var(--lime)}.filter-count{font:9px monospace;color:var(--muted);white-space:nowrap}.work-index-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 35px;align-items:start}.work-index-grid .aether{grid-column:1/-1}.work-index-grid .aether .card-image{aspect-ratio:2}.work-index-grid.is-filtered .work-card{grid-column:auto}.work-index-grid.is-filtered .card-image{aspect-ratio:1.25}.work-index-grid .form01{margin-top:80px}.work-index-grid.is-filtered .form01{margin-top:0}.work-note{max-width:550px;color:var(--muted);font-size:12px;margin-top:60px;border-left:1px solid var(--lime);padding-left:20px}
.case-hero{padding-top:36px;padding-bottom:45px}.breadcrumb{display:inline-flex;min-height:44px;align-items:center;color:var(--muted)}.case-title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin:55px 0 35px}.case-title-row h1{font-size:clamp(70px,15vw,235px);line-height:.85;font-weight:500;white-space:nowrap}.case-no{font:12px monospace;text-align:right;color:var(--project-accent);white-space:nowrap}.case-no small{display:block;margin-top:15px;font:8px monospace;color:var(--muted)}.case-summary{display:flex;justify-content:space-between;align-items:flex-end;gap:35px}.case-summary p{font-size:18px;max-width:470px}.case-summary>span{font:10px monospace;color:var(--muted);max-width:240px;line-height:1.6;text-align:right}.case-cover{margin:0 var(--pad)}.case-cover>img{width:100%;height:auto;max-height:84vh;object-fit:cover}.case-cover figcaption{padding:20px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px;font:10px monospace;color:var(--muted)}.case-cover .text-link{font:10px monospace}.story-lead{display:grid;grid-template-columns:1fr 2fr;gap:70px;padding:65px 0}.story-lead>.micro{color:var(--muted)}.story-lead h2{font-size:clamp(30px,3.8vw,62px);letter-spacing:-.045em;line-height:1.12}.story-columns{display:grid;grid-template-columns:1fr 1fr;gap:8vw;margin-left:calc(33.333% + 23px);border-top:1px solid var(--line);padding-top:35px}.story-columns h3{font-size:24px;line-height:1.2;letter-spacing:-.04em;margin:24px 0 16px}.story-columns p:not(.micro){font-size:13px;color:var(--muted)}.case-poster{margin:0 var(--pad);position:relative;min-height:650px;padding:40px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.case-poster>div{display:flex;flex-direction:column;font-size:clamp(55px,10vw,155px);font-weight:600;letter-spacing:-.075em;line-height:.85;margin-block:60px}.case-poster>p{font:10px monospace}.poster-cross{position:absolute;right:35px;top:30px;font:32px monospace}.aether-poster{background:var(--lime);color:var(--bg)}.aether-poster>div>span:nth-child(2){padding-left:12vw}.aether-poster>div>span:last-child{font-size:.8em;color:transparent;-webkit-text-stroke:1px var(--bg)}.vanta-poster{background:repeating-linear-gradient(90deg,transparent 0 calc(25% - 1px),#12140e15 25%),#e5e4da;color:var(--bg)}.vanta-poster>div>span:nth-child(2){align-self:flex-end}.vanta-poster>div>span:last-child{color:transparent;-webkit-text-stroke:1px var(--bg)}.form01-poster{background:radial-gradient(ellipse at 80% 90%,#c5e8de40,transparent 50%),repeating-linear-gradient(0deg,transparent 0 39px,#c5e8de10 40px),#111b18;color:#c5e8de;border:1px solid #c5e8de30}.form01-poster>div>span:nth-child(2){font-family:'Courier New',monospace;font-weight:400;font-size:.55em;line-height:1.3}.form01-poster>div>span:last-child{align-self:flex-end}.system-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:25px;margin-top:50px}.system-type{border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;justify-content:space-between;min-height:400px}.system-type .micro{font-size:8px;color:var(--muted)}.system-aa{font-size:clamp(90px,11vw,170px);letter-spacing:-.06em}.system-aa>span{font-size:18px;color:var(--lime);font-family:monospace;margin-left:15px;letter-spacing:0}.system-type p{font-size:14px;color:var(--muted)}.system-detail{border:1px solid var(--line);overflow:hidden}.detail-crop{height:calc(100% - 46px);min-height:360px;overflow:hidden}.detail-crop img{width:100%;height:100%;object-fit:cover;object-position:80% center;transform:scale(1.4)}.system-detail>.micro{display:block;padding:16px;font-size:8px;color:var(--muted)}.system-swatches{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 1fr}.system-swatches>span{height:100px;padding:20px;display:flex;align-items:flex-end;font:9px monospace;border:1px solid var(--line)}.concept-note{font:11px/1.8 monospace;color:var(--muted);max-width:700px;margin-top:30px}.next-project{padding:60px var(--pad);border-block:1px solid var(--line);position:relative;isolation:isolate;overflow:hidden;background:#13170e}.next-project>.micro{color:var(--muted)}.next-project>a{display:flex;align-items:center;justify-content:space-between;padding:60px 0;gap:30px}.next-project h2{font-size:clamp(65px,11vw,170px)}.next-project a>span{font-size:100px;color:var(--lime)}.next-project>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.14;z-index:-1;filter:grayscale(1)}
.studio-hero h1{font-size:clamp(60px,9.9vw,155px)}.studio-manifesto{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7vw;background:#11140e;border-block:1px solid var(--line)}.manifesto-symbol{position:relative}.manifesto-symbol img{width:100%;height:auto;transform:rotate(-6deg)}.manifesto-symbol>span{font:8px monospace;letter-spacing:.1em;color:var(--muted);display:block;margin-top:30px}.studio-manifesto h2{font-size:clamp(36px,4.1vw,68px);margin:30px 0}.studio-manifesto p:not(.micro){color:var(--muted);font-size:14px;max-width:420px;margin-top:18px}.capability-row{display:grid;grid-template-columns:55px 1fr 1fr;gap:25px;align-items:center;padding:45px 0;border-bottom:1px solid var(--line)}.capability-row>span{font:10px monospace;color:var(--muted)}.capability-row h2{font-size:clamp(30px,4.6vw,74px)}.capability-row>p{font:11px/1.9 monospace;color:var(--muted);justify-self:end}.process{background:#11140e;border-block:1px solid var(--line)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.process-grid article{border-top:1px solid var(--line);padding-top:24px}.process-grid .micro{font-size:9px;color:var(--lime)}.process-grid h3{font-size:28px;letter-spacing:-.04em;line-height:1.05;margin:35px 0 20px}.process-grid p{font-size:13px;color:var(--muted)}.faq details{border-bottom:1px solid var(--line)}.faq summary{display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:24px;letter-spacing:-.035em;padding:28px 0;line-height:1.2}.faq summary>span{font-size:24px;color:var(--lime);font-family:monospace;font-weight:400}.faq details[open] summary>span{transform:rotate(45deg)}.faq details>p{color:var(--muted);font-size:14px;max-width:650px;padding:0 50px 30px 0}
/* Lab controls. */
.lab-heading{padding:40px var(--pad) 45px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:55px}.lab-heading .eyebrow-row{border:0;padding:0;font-size:9px}.lab-heading .eyebrow-row>span:last-child{display:none}.lab-heading h1{font-size:clamp(60px,8.3vw,135px);font-weight:600;line-height:.88;margin-top:35px}.lab-heading>p{font-size:13px;color:var(--muted);padding-bottom:5px}.playground{display:grid;grid-template-columns:minmax(0,1fr) 300px;margin:0 var(--pad);border:1px solid var(--line)}.lab-canvas-wrap{position:relative;background:#080b07;min-height:630px;overflow:hidden;isolation:isolate}.lab-canvas-wrap canvas{width:100%;height:100%;min-height:630px;position:absolute;inset:0;touch-action:pan-y}.canvas-top,.canvas-bottom{position:absolute;left:24px;right:24px;display:flex;justify-content:space-between;gap:15px;pointer-events:none;font:8px/1.5 monospace;letter-spacing:.1em;color:#a5ad95}.canvas-top{top:24px}.canvas-bottom{bottom:24px}.canvas-status{display:flex;align-items:center;gap:8px}.canvas-status i{width:5px;height:5px;background:var(--lime);border-radius:50%}.lab-controls{border-left:1px solid var(--line);padding:24px;background:#10140d}.control-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px}.control-title h2{font-size:24px;letter-spacing:-.04em}.control-title>span{font-size:26px;color:var(--lime)}.lab-controls legend,.range-label{font:9px/1.5 monospace;color:var(--muted);letter-spacing:.04em}.lab-controls fieldset{margin-bottom:28px}.mode-buttons{display:flex;gap:6px;margin-top:12px}.mode-buttons>button{border:1px solid var(--line);padding:10px 13px;min-height:44px;font-size:11px;flex:1}.mode-buttons>button[aria-pressed=true]{background:var(--lime);color:var(--bg);border-color:var(--lime)}.range-label{display:flex;align-items:center;justify-content:space-between}.range-label output{color:var(--fg)}.lab-controls input[type=range]{width:100%;height:28px;margin:8px 0 24px;accent-color:var(--lime);cursor:pointer}.swatch-buttons{display:flex;gap:12px;margin-top:8px}.swatch{width:44px;height:44px;position:relative;border:1px solid transparent;border-radius:50%;padding:6px;background-clip:content-box}.swatch[aria-pressed=true]{border-color:var(--fg)}.lime-swatch{background-color:#d8ff3e}.ice-swatch{background-color:#b8e2ff}.ember-swatch{background-color:#ff875b}.lab-actions{border-top:1px solid var(--line);padding-top:10px}.lab-actions button{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:11px;min-height:42px;text-align:left}.lab-actions button>span{font-size:18px;color:var(--muted)}.lab-actions button:hover{color:var(--lime)}.lab-control-note{font-size:10px;line-height:1.7;color:var(--muted);margin-top:20px}.lab-footnote{padding:60px var(--pad) 90px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end}.lab-footnote h2{font-size:40px;letter-spacing:-.05em;line-height:1.05;margin-top:24px}.lab-footnote>p{color:var(--muted);font-size:14px;max-width:430px}.nojs-lab{position:absolute;inset:40% 15%;color:var(--lime);text-align:center}
/* Browser-local brief builder. */
.contact-hero h1{font-size:clamp(80px,13vw,210px)}.contact-hero .page-intro>a{font-size:22px;letter-spacing:-.03em;min-height:44px}.brief-section{display:grid;grid-template-columns:1fr 1.4fr;gap:9vw;padding-top:20px;padding-bottom:100px}.brief-aside h2{font-size:clamp(30px,3.4vw,52px);margin:30px 0;line-height:1}.brief-aside>p:not(.micro){font-size:14px;color:var(--muted);max-width:320px}.brief-note{display:flex;gap:20px;border-top:1px solid var(--line);padding-top:25px;margin-top:40px;max-width:320px}.brief-note>span{color:var(--lime);font-size:24px}.brief-note p{font-size:11px;color:var(--muted)}#brief-form{min-width:0}#brief-form legend{font:10px monospace;letter-spacing:.07em;color:var(--muted);margin-bottom:20px}.service-options{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:40px}.service-options label{position:relative}.service-options input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.service-options span{display:block;border:1px solid var(--line);border-radius:30px;padding:13px 18px;font-size:11px;min-height:44px}.service-options input:checked+span{background:var(--lime);color:var(--bg);border-color:var(--lime)}.service-options input:focus-visible+span{outline:2px solid var(--lime);outline-offset:4px}#brief-form>label,.form-two>label{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;color:var(--muted);margin-bottom:28px}#brief-form label>span:not(.service-options span){color:var(--lime)}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:25px}#brief-form input:not([type=checkbox]),#brief-form textarea,#brief-form select{width:100%;color:var(--fg);background:transparent;border:0;border-bottom:1px solid #464b3d;border-radius:0;min-height:48px;padding:12px 0;outline-offset:3px;font-size:14px;line-height:1.6}#brief-form select option{background:var(--bg)}#brief-form textarea{resize:vertical;min-height:150px}#brief-form input::placeholder,#brief-form textarea::placeholder{color:#72796a}.form-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;font:9px/1.5 monospace;color:var(--muted)}.form-bottom button{min-height:44px;text-decoration:underline;text-underline-offset:4px;font:inherit}.submit-brief{display:flex;align-items:center;justify-content:space-between;width:100%;background:var(--lime);color:var(--bg);padding:22px 24px;font-size:15px;margin-top:20px}.submit-brief>span{font-size:24px}.brief-preview{border:1px solid var(--line);background:var(--panel);padding:28px;min-width:0}.brief-preview .eyebrow-row{font-size:8px}.brief-preview .eyebrow-row button{font:inherit;white-space:nowrap}.brief-preview h2{font-size:44px;line-height:.95;margin:35px 0}.brief-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.9 monospace;color:var(--muted);border-block:1px solid var(--line);padding:25px 0}.brief-preview-actions{display:flex;gap:20px;flex-wrap:wrap;align-items:center;margin:25px 0}.brief-preview-actions>button{min-height:44px;font-size:11px}.brief-preview>.micro{font-size:8px;color:var(--muted)}.not-found{min-height:75vh;display:flex;flex-direction:column;align-items:flex-start;gap:25px}.not-found h1{font-size:clamp(80px,12vw,170px);font-weight:600}.not-found>p{max-width:350px;font-size:14px;color:var(--muted)}
.command-dialog{position:fixed;inset:10vh 0 auto;width:min(600px,calc(100vw - 32px));max-height:80svh;margin:0 auto;padding:25px;border:1px solid #505a3b;background:#11160e;color:var(--fg);overflow:auto;z-index:100}.command-dialog::backdrop,.image-dialog::backdrop{background:#000c;backdrop-filter:blur(14px)}.command-head{display:flex;align-items:center;justify-content:space-between;gap:25px}.command-head h2{font-size:28px;letter-spacing:-.04em}.command-head button{font:10px monospace;min-height:44px}.command-dialog input{width:100%;border:0;border-bottom:1px solid #596445;background:none;color:var(--fg);padding:22px 0;font-size:14px;margin:10px 0}.command-results a{display:flex;justify-content:space-between;align-items:center;padding:12px 10px;border-bottom:1px solid var(--line);font-size:15px}.command-results a:focus,.command-results a:hover{background:#d8ff3e12;outline-offset:-2px}.command-results small{font:10px/1.5 monospace;color:var(--muted);display:block;margin-top:5px}.command-hint,.command-empty{font:9px/1.6 monospace;color:var(--muted);margin-top:18px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,12px);background:var(--lime);color:var(--bg);padding:16px 22px;font-size:12px;max-width:calc(100vw - 32px);opacity:0;visibility:hidden;transition:opacity .25s,transform .25s;z-index:150;text-align:center}.toast.show{opacity:1;visibility:visible;transform:translate(-50%,0)}.image-dialog{position:fixed;inset:0;margin:auto;width:min(1250px,94vw);max-height:94svh;background:var(--bg);color:var(--fg);border:1px solid var(--line);padding:24px;overflow:auto}.image-dialog header{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:22px}.image-dialog h2{font-size:30px}.image-dialog header button{min-height:44px;font-size:12px}.image-dialog img{width:100%;height:auto;max-height:75svh;object-fit:contain}.image-dialog>a{display:inline-flex;font-size:11px;min-height:44px;align-items:center;margin-top:14px}body.modal-open{overflow:hidden}
