*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--color-background);color:var(--color-text);font:var(--font-size-body)/1.6 var(--font-body)}a{color:inherit;text-underline-offset:.3em}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button,a,input,textarea{touch-action:manipulation}:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}[hidden]{display:none!important}.skip{position:absolute;top:0;left:1rem;transform:translateY(-150%);background:var(--color-text);color:var(--color-background);padding:1rem;z-index:20}.skip:focus{transform:none}.wrap{width:min(92%,var(--layout-content-max-width));margin:auto}.mast{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:2rem 0;border-bottom:1px solid var(--color-border);font:700 .78rem var(--font-display);letter-spacing:.06em}.brand{font-size:.95rem;text-decoration:none;display:flex;align-items:center;gap:1rem}.brand i{height:30px;width:27px;background:repeating-linear-gradient(90deg,var(--color-accent) 0 2px,transparent 2px 4px);transform:skewY(-15deg)}nav{display:flex;gap:2rem;flex-wrap:wrap}main{overflow:clip}.eyebrow,.caption{font: .75rem/1.5 var(--font-display);letter-spacing:.09em;text-transform:uppercase}.eyebrow{color:var(--color-accent);font-weight:700}h1,h2,h3{font-family:var(--font-display);line-height:1.05;font-weight:400;letter-spacing:-.045em}h1{font-size:clamp(3.5rem,6.3vw,6.5rem);margin:1.5rem 0 2rem}h2{font-size:clamp(2rem,3.5vw,3.5rem);margin:1rem 0 2rem}h3{font-size:1.5rem;margin:.5rem 0}.journey{display:grid;grid-template-columns:.85fr 1.4fr;gap:3rem;padding-top:4rem}.intro{padding-bottom:3rem}.intro p:not(.eyebrow){max-width:30ch;font-size:1.15rem}.intro .link{display:inline-block;margin-top:1rem;font:700 .85rem var(--font-display);padding-bottom:.6rem;border-bottom:1px solid var(--color-accent)}.study{grid-column:2;grid-row:1/3;margin:0;align-self:start;position:sticky;top:1rem}.scene{position:relative;height:540px;border-bottom:1px solid var(--color-border)}canvas,.scene svg{width:100%;height:100%;display:block}.scene:before{content:'01 / OBJECT STUDY';position:absolute;top:0;left:0;font:.65rem var(--font-display);letter-spacing:.12em}.scene:after{content:'COPPER · 7 PLATES';position:absolute;right:0;bottom:1rem;font:.65rem var(--font-display);letter-spacing:.08em}.study figcaption{display:flex;justify-content:space-between;gap:1rem;font: .75rem/1.5 var(--font-display);padding:1rem 0}.runtime-status{font:.7rem/1.5 var(--font-display);margin:0;color:var(--color-muted)}.tool-buttons{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}button{border:1px solid var(--color-border);background:transparent;padding:.65rem .9rem;font: .8rem/1.4 var(--font-display)}button:hover{background:var(--color-surface)}button[aria-pressed=true],.solid{background:var(--color-accent);color:var(--color-on-accent);border-color:var(--color-accent)}button:disabled{opacity:.65;cursor:default}.scenarios{grid-column:1;padding:1rem 0 4rem}.story{display:grid;grid-template-columns:2rem 1fr;gap:1rem;padding:1.5rem 0;border-top:1px solid var(--color-border)}.story>span{font:.7rem var(--font-display);color:var(--color-accent)}.story p{font-size:.95rem}.story button{margin-top:.5rem}.marker{display:block;width:22px;height:55px;background:var(--color-accent);clip-path:polygon(0 15%,100% 0,100% 85%,0 100%);margin-top:1rem}.character{padding:3rem 0;border-top:1px solid var(--color-border);display:grid;grid-template-columns:1fr 1fr;gap:3rem}.character p{max-width:45ch}.character-options{display:flex;flex-wrap:wrap;gap:.5rem}.audio-state{font:.75rem var(--font-display);color:var(--color-muted)}.process{border-top:1px solid var(--color-border);padding:3rem 0}.process ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;counter-reset:steps}.process li{border-top:1px solid var(--color-border);padding:1rem 0;counter-increment:steps}.process li:before{content:'0' counter(steps);font:.7rem var(--font-display);color:var(--color-accent)}.process h3{margin-top:1rem}.process p{font-size:.95rem}.enquiry{background:var(--color-text);color:var(--color-background);padding:4rem 4%;margin:2rem 0 4rem;display:grid;grid-template-columns:.8fr 1.2fr;gap:4rem}.enquiry .eyebrow,.enquiry .caption{color:var(--color-background)}.enquiry :focus-visible{outline-color:var(--color-background)}.enquiry label{display:block;font:.85rem var(--font-display);margin-bottom:1rem}.enquiry input,.enquiry textarea{display:block;width:100%;border:1px solid var(--color-background);border-radius:0;margin-top:.5rem;padding:.8rem;background:transparent;color:var(--color-background)}.enquiry textarea{font:.85rem/1.5 var(--font-display);resize:vertical;min-height:160px}.enquiry button{color:var(--color-background);border-color:var(--color-background)}.enquiry button:hover{background:var(--color-text);outline:1px solid var(--color-background)}.form-status{min-height:1.5rem;font:.8rem var(--font-display)}.selection-readout{font:.85rem/1.6 var(--font-display);border-top:1px solid var(--color-background);padding-top:1rem}.footer{font:.72rem/1.6 var(--font-display);display:flex;justify-content:space-between;gap:2rem;padding-bottom:2rem}.workshop-intro{display:grid;grid-template-columns:1.5fr .6fr;align-items:end;gap:3rem;padding:3rem 0}.workshop-intro h1{margin:1rem 0}.workshop-intro p{max-width:35ch}.workbench{display:grid;grid-template-columns:180px minmax(0,1fr) 210px;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:2rem 0;gap:2rem}.workbench .study{position:static;grid-column:auto;grid-row:auto;min-width:0}.workbench .scene{height:420px}.workbench aside{padding:1rem 0}.workbench aside h2{font-size:1.2rem;letter-spacing:-.02em}.scenario-options{display:flex;flex-direction:column;gap:.6rem}.workbench .character-options{flex-direction:column}.workbench .character-description{font-size:.9rem}.comparison{padding:3rem 0}.comparison-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem}.comparison-heading h2{margin:0}.compare-list{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:2rem}.compare-list li{border-top:1px solid var(--color-border);padding:1.5rem 0}.compare-list .empty-slot{color:var(--color-muted);font-style:italic}.compare-list h3{margin:1rem 0}.compare-list p{font-size:.95rem}.variant-b .process{padding-bottom:0}.variant-b .process ol{grid-template-columns:1fr;gap:0}.variant-b .process li{display:grid;grid-template-columns:2rem 1fr 2fr;gap:2rem;align-items:start}.variant-b .process h3{margin:0}.variant-b .process p{margin:0}@media(max-width:1000px){.workbench{grid-template-columns:150px minmax(0,1fr)}.workbench aside:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:2rem}.workbench .character-options{flex-direction:row}.journey{gap:2rem;grid-template-columns:1fr 1.25fr}.scene{height:440px}.enquiry{gap:2rem}}@media(max-width:650px){.mast{padding:1.25rem 0;align-items:start;gap:1rem}.mast nav{gap:.7rem;font-size:.65rem;justify-content:end}.brand{font-size:.72rem;gap:.6rem;white-space:nowrap}.brand i{width:20px;flex-shrink:0}.wrap{width:90%}.journey{display:flex;flex-direction:column;gap:1rem;padding-top:2rem}.study{position:static;order:-1}.scene{height:330px}.intro{padding-bottom:1rem}.intro h1{font-size:4rem}.intro p:not(.eyebrow){max-width:100%}.scenarios{padding-bottom:2rem}.character{grid-template-columns:1fr;gap:1rem}.process ol{grid-template-columns:1fr;gap:1rem}.process li p{margin-bottom:0}.enquiry{grid-template-columns:1fr;padding:2rem 1.25rem;gap:1.5rem;margin-bottom:2rem}.enquiry h2{font-size:2.4rem}.footer{flex-direction:column;gap:1rem}.workshop-intro{grid-template-columns:1fr;gap:1rem;padding:2rem 0}.workshop-intro h1{font-size:3.4rem}.workbench{display:flex;flex-direction:column;gap:1rem}.workbench .study{order:-1}.workbench .scene{height:330px}.workbench aside:last-child{display:block}.scenario-options,.workbench .character-options{flex-direction:row;flex-wrap:wrap}.workbench aside{padding:0}.comparison-heading{align-items:start}.comparison-heading h2{font-size:2rem}.compare-list{grid-template-columns:1fr;gap:0}.variant-b .process li{grid-template-columns:1.5rem 1fr;gap:1rem}.variant-b .process li p{grid-column:2}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

@media(prefers-reduced-motion:no-preference){.marker{transform:translateY(12px);transition:transform .7s ease-out}.arrived .marker{transform:translateY(0)}}
