/* Shared brand palette. Product captures keep their original colors. */
:root{--brand-black:#080707;--brand-surface:#130e0f;--brand-raised:#201416;--brand-cream:#f4e6cf;--brand-muted:#c2b5a4;--brand-quiet:#a79886;--brand-maroon:#681c32;--brand-maroon-hover:#81253f;--brand-edge:#a96174;--brand-rule:#403032;--paper:var(--brand-black);--ink:var(--brand-cream);--muted:var(--brand-muted);--line:var(--brand-rule);--orange:var(--brand-cream);color-scheme:dark}
html{background:var(--brand-black);scrollbar-color:#79565c var(--brand-black)}
body.site-page,body.project-page{background:var(--brand-black);color:var(--brand-cream)}
::selection{background:var(--brand-maroon);color:var(--brand-cream)}
.site-page :is(a,button,summary,input,canvas):focus-visible,.project-page :is(a,button,summary,input,select,video):focus-visible{outline-color:var(--brand-cream)}
.site-page .skip-link,.project-page .skip-link{background:var(--brand-cream);color:var(--brand-black)}
.site-header{background:#080707ed;border-color:var(--brand-rule)}
.site-header .brand-name,.site-footer .footer-brand{color:var(--brand-cream)}
.brand-name small{color:var(--brand-muted)}
.site-nav a,.site-nav .contact-trigger,.site-menu-toggle,.site-motion{color:var(--brand-cream);border-color:#77535a}
.site-nav a{border-color:transparent}
.site-nav a:hover,.site-menu-toggle:hover,.site-menu-toggle[aria-expanded="true"],.site-motion:hover{background:var(--brand-raised);color:var(--brand-cream)}
.site-nav a[aria-current="page"]{background:var(--brand-maroon);border-color:var(--brand-edge);color:var(--brand-cream)}
.site-nav .contact-trigger{background:var(--brand-maroon);border-color:var(--brand-edge)}
.site-nav .contact-trigger:hover{background:var(--brand-maroon-hover);border-color:var(--brand-edge);color:var(--brand-cream)}
.site-motion{background:var(--brand-surface)}
.site-page .hero,.hero-atmosphere,.site-page .work,.site-page .about,.site-page .process{background:var(--brand-black);border-color:var(--brand-rule)}
.ambient-halo{background:radial-gradient(ellipse at 60% 45%,#681c3245,transparent 66%)}
.ambient-vignette{background:linear-gradient(0deg,#080707 0%,transparent 20%,transparent 85%,#080707cc),linear-gradient(90deg,#080707a8,transparent 40%,#08070770)}
.hero-monogram{filter:blur(24px) saturate(.9)}
.site-page .hero-copy h1,.site-page .hero-copy h1 em,.site-page .about-copy h1,.site-page .about-copy h1 em{color:var(--brand-cream)}
.site-page .hero-top,.site-page .hero-foot,.site-page .hero-foot a,.site-page .hero-foot button,.site-page .hero-foot>span:last-child{color:var(--brand-muted);border-color:var(--brand-rule)}
.hero-top .live-dot{background:var(--brand-cream);box-shadow:0 0 12px #bd6b7655}
.site-page .hero-side p{color:var(--brand-muted)}
.site-page .hero-side .pill,.pill.dark{background:var(--brand-maroon);border:1px solid var(--brand-edge);color:var(--brand-cream)}
.site-page .hero-side .pill:hover,.pill.dark:hover{background:var(--brand-maroon-hover);color:var(--brand-cream);border-color:var(--brand-edge)}
.site-page .hero-side .pill>span{background:var(--brand-cream);color:var(--brand-maroon)}
.scroll-progress{background:linear-gradient(90deg,#681c32,#9d3d53 45%,#f4e6cf)}
.intro-caption{color:var(--brand-cream)}
.intro-sparks{background:radial-gradient(circle at 27% 38%,#e5cbaa 0 1px,transparent 2px),radial-gradient(circle at 72% 30%,#a23751 0 1px,transparent 2px),radial-gradient(circle at 75% 70%,#d3b998 0 1px,transparent 2px),radial-gradient(circle at 30% 75%,#8c2840 0 1px,transparent 2px);background-size:191px 183px,267px 209px,213px 263px,337px 283px}
.site-page .section-kicker,.site-page .section-kicker>span:first-child,.site-page .page-intro>.mono,.site-page .all-work-link,.site-page .home-work-hint,.site-page .project-category{color:var(--brand-muted)}
.site-page .project-info h3,.site-page .section-heading h2,.site-page .project-info h3 a:hover,.site-page .all-work-link:hover{color:var(--brand-cream)}
.site-page .project-info p,.site-page .page-intro p{color:var(--brand-muted)}
.site-page .project-info .project-story,.site-page .project-info .project-visit{color:var(--brand-muted)}
.site-page .project-info .project-story:hover,.site-page .project-info .project-visit:hover{color:var(--brand-cream)}
.site-page .it-collection,.collection-links a{border-color:var(--brand-rule)}
.it-collection .mono,.it-collection p,.collection-links a small{color:var(--brand-muted)}
.collection-links a>span:last-child,.collection-links a:hover{color:var(--brand-cream)}
.site-page .work-filters{border-color:var(--brand-rule)}
.site-page .work-filters button,.site-page .work-filters button:first-child{color:var(--brand-muted)}
.site-page .work-filters button.active{background:var(--brand-maroon);color:var(--brand-cream);border-color:var(--brand-edge)}
.site-page .home-projects{scrollbar-color:#79565c transparent}
.site-page .path-card{background:var(--brand-surface);border-color:var(--brand-rule)}
.site-page .path-card:hover{background:var(--brand-raised);border-color:var(--brand-edge)}
.site-page .play-path{background:radial-gradient(ellipse at 95% 15%,#681c3240,transparent 65%),var(--brand-surface)}
.site-page .path-card>.mono,.site-page .path-card p{color:var(--brand-muted)}
.site-page .path-card>.icon{color:var(--brand-cream)}
.site-page .contact-strip{background:var(--brand-surface);border-color:var(--brand-rule)}
.site-page .contact-strip .mono,.site-page .contact-strip p{color:var(--brand-muted)}
.site-page .contact-strip .contact-trigger{background:var(--brand-maroon);border-color:var(--brand-edge);color:var(--brand-cream)}
.site-page .contact-strip .contact-trigger:hover{background:var(--brand-maroon-hover);color:var(--brand-cream)}
.site-page .about-text,.site-page .about-left>p,.site-page .about-emblem>span,.site-page .process-list details p,.site-page .process-list summary .mono{color:var(--brand-muted)}
.site-page .about-text strong,.site-page .about-text a,.site-page .about-text a:hover{color:var(--brand-cream);text-decoration-color:var(--brand-edge)}
.site-page .about-monogram{filter:drop-shadow(0 0 26px #681c3230)}
.site-page .skill-tags span{color:var(--brand-muted);border-color:#79565c}
.site-page .process-list details,.site-page .process-list details:first-child{border-color:var(--brand-rule)}
.site-page .process-list details[open] .process-plus{color:var(--brand-cream)}
footer.site-footer{background:var(--brand-black)}
.site-footer nav a,.site-footer .contact-trigger,.site-footer>.mono,.site-footer .footer-copyright{color:var(--brand-muted);border-color:var(--brand-rule)}
.site-footer nav a:hover,.site-footer .contact-trigger:hover,.site-footer nav a[aria-current="page"]{color:var(--brand-cream)}
dialog{background:var(--brand-surface);color:var(--brand-cream);border-color:#79565c}
dialog::backdrop{background:#080707df}
#contact-dialog>p,.contact-handle,.case-label,.case-role,.case-section p{color:var(--brand-muted)}
.dialog-close{border-color:var(--brand-edge);color:var(--brand-cream)}
.dialog-close:hover{background:var(--brand-maroon);color:var(--brand-cream)}
.toast{background:var(--brand-cream);color:var(--brand-black)}

/* Shared case-study controls and text use the same brand palette. */
body.project-page{--project-accent:var(--brand-cream);--project-accent-dark:#38141f;--project-rule:var(--brand-rule);--project-text:var(--brand-muted)}
.project-page .project-heading h1,.project-page .project-section-body>h2,.project-page .project-status-panel h2,.project-page .feature-item h3,.project-page .build-notes h3{color:var(--brand-cream)}
.project-page .project-deck,.project-page .breadcrumbs,.project-page .breadcrumbs a,.project-page .project-eyebrow,.project-page .project-meta dt,.project-page .project-meta dd,.project-page .project-section-label,.project-page .feature-item p,.project-page .build-notes p,.project-page .project-tags span{color:var(--brand-muted)}
.project-page .project-status{border-color:#79565c;color:var(--brand-cream)}
.project-page .project-link,.project-page .copy-project{color:var(--brand-cream);border-color:#79565c}
.project-page .project-link.primary{background:var(--brand-maroon);border-color:var(--brand-edge);color:var(--brand-cream)}
.project-page .project-link.primary:hover{background:var(--brand-maroon-hover);border-color:var(--brand-edge);color:var(--brand-cream)}
.project-page .project-link:not(.primary):hover,.project-page .copy-project:hover{background:var(--brand-raised);border-color:var(--brand-edge)}
.project-page .copy-project{border-color:transparent;color:var(--brand-muted)}
.project-page .case-nav{background:#080707ef;border-color:var(--brand-rule)}
.project-page .case-nav a,.project-page .case-section-picker>span{color:var(--brand-muted)}
.project-page .case-nav a:hover,.project-page .case-nav a[aria-current],.project-page .case-nav a.active{color:var(--brand-cream)}
.project-page .case-nav a[aria-current]:after,.project-page .case-nav a.active:after{background:var(--brand-cream)}
.project-page .case-section-picker select{background:var(--brand-surface);border-color:#79565c;color:var(--brand-cream)}
.project-page .feature-item,.project-page .build-notes article{border-color:var(--brand-rule)}
.project-page .project-tags span{border-color:#79565c}
.project-page .project-status-panel{background:radial-gradient(ellipse at 100% 0,#38141f,transparent 70%),var(--brand-surface);border-color:#79565c}
.project-page .next-project-link{background:linear-gradient(125deg,#26141a,#110d0e);border-color:var(--brand-rule)}
.project-page .next-project-link:hover{background:linear-gradient(125deg,#381722,#181011);border-color:var(--brand-edge)}
.project-page .next-project-link strong,.project-page .next-project-link>.icon{color:var(--brand-cream)}
.project-page .next-project-link>.icon{border-color:#957b79}
.project-page .next-project-link p,.project-page .next-project-link>div>.mono,.project-page .all-projects{color:var(--brand-muted)}
.project-page .all-projects:hover{color:var(--brand-cream)}
.project-page .capture-kicker,.project-page .capture-detail-heading>.mono,.project-page .vault-capture-copy>.mono,.project-page .vault-fullsize,.project-page .vault-video-description summary{color:var(--brand-cream)}
.project-page .capture-detail-heading h3,.project-page .vault-capture-copy h3{color:var(--brand-cream)}
.project-page .capture-detail-heading p,.project-page .capture-description p,.project-page .capture-video figcaption,.project-page .capture-detail figcaption,.project-page .project-cover figcaption,.project-page .vault-capture-copy p,.project-page .vault-video figcaption{color:var(--brand-muted)}
.project-page .capture-description{border-color:var(--brand-rule)}
.project-page .capture-description summary{color:var(--brand-cream)}
.project-page .capture-image-link,.project-page .capture-video video{border-color:#79565c}
.project-page .capture-image-link:hover{border-color:var(--brand-cream)}
.project-page .capture-video video:focus-visible,.project-page .vault-video video:focus-visible,.project-page .site-header :is(a,button):focus-visible,.project-page .site-footer :is(a,button):focus-visible{outline-color:var(--brand-cream)}

/* The Playground's controls share the palette; visitors can still change finishes. */
.lab-page{--lab-line:var(--brand-rule);--lab-accent:var(--brand-cream);--lab-soft:var(--brand-muted);background:var(--brand-black)}
.lab-studio,.lab-tabs,.lab-controls,.lab-transport{background:var(--brand-surface)}
.lab-tabs button{color:var(--brand-muted)}
.lab-tabs button:hover{color:var(--brand-cream);background:var(--brand-raised)}
.lab-tabs button[aria-selected="true"]{background:var(--brand-maroon);color:var(--brand-cream)}
.lab-tabs button[aria-selected="true"]::after{background:linear-gradient(90deg,#a23751,#f4e6cf)}
.lab-stage{background:var(--brand-black)}
.form-stage{background:radial-gradient(ellipse at 40% 50%,#32121d 0%,#170f10 46%,#080707 80%)}
.lab-eyebrow,.lab-heading p,.lab-heading .mono,.lab-tabs .mono,.lab-stage-top,.lab-stage-bottom,.lab-stage-top span:last-child,.lab-control-kicker,.lab-controls>p,.lab-palette output,.lab-range output,.lab-text-label>span,.lab-reset,.lab-transport>.mono,.lab-transport button,.lab-note>.mono,.lab-note p,.lab-note a,.lab-exploration p{color:var(--brand-muted)}
.lab-eyebrow i,.lab-transport i{background:var(--brand-cream)}
.lab-stage-bottom span:last-child,.lab-palette legend,.lab-range,.lab-text-label,.lab-exploration h3,.lab-form-fallback,.lab-form-fallback p,.lab-canvas-error{color:var(--brand-cream)}
.lab-orbit,.lab-orbit::after{border-color:#c9ae8f25}
.lab-cross{color:#a79886}
.lab-swatches button[aria-pressed="true"]{border-color:var(--brand-cream)}
.lab-range input::-webkit-slider-runnable-track{background:#79565c}
.lab-options button{color:var(--brand-muted);border-color:#79565c}
.lab-options button[aria-pressed="true"]{background:var(--brand-maroon);color:var(--brand-cream);border-color:var(--brand-edge)}
.lab-primary{background:var(--brand-maroon);color:var(--brand-cream);border:1px solid var(--brand-edge)}
.lab-primary:hover{background:var(--brand-maroon-hover)}
.lab-text-label input{background:var(--brand-raised);border-color:#79565c;color:var(--brand-cream)}
.type-stage{background:radial-gradient(ellipse at 50% 90%,#681c3255,transparent 65%),#100b0c}
.lab-type-display{color:var(--brand-cream)}
.lab-type-orbit,.lab-type-orbit::before{border-color:#a961744d}
.lab-type-orbit::after{border-color:#a9617426}
@keyframes lab-echo{0%,100%{text-shadow:var(--echo) var(--echo) #a2375166,var(--echo2) var(--echo2) #a2375122}50%{text-shadow:calc(var(--echo) * -1) calc(var(--echo) * -1) #e5cbaa66,calc(var(--echo2) * -1) calc(var(--echo2) * -1) #e5cbaa22}}
@media(max-width:900px){.site-nav{border-top-color:var(--brand-rule)}}

@media(max-width:760px){.hero-monogram{filter:blur(17px) saturate(.9)}}
