/* Supplied Twenty Fifth Frame identity; colors sampled from its PDF render. */
:root{--brand-magenta:#bd1592;--brand-charcoal:#3a2e33;--brand-white:#ffffff;--brand-accent:#e879cf;--brand-copy:#f4edf2;--brand-muted:#c4b5c0;--brand-rule:#c26caa55;--cream:#f4edf2;--muted:#c4b5c0;--red:#e879cf;--line:#c26caa55}
:root[data-theme=day]{--brand-accent:#bd1592;--brand-copy:#3a2e33;--brand-muted:#6f5b67;--brand-rule:#bd15923d;--cream:#3a2e33;--muted:#6f5b67;--red:#bd1592;--line:#bd15923d}
:root .site-header>.brand,:root .site-footer>.brand{display:block;flex-shrink:0;padding:0}
:root .brand-logo{position:relative;display:block;width:186px;height:63px;flex-shrink:0}
:root .brand-logo img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;object-position:left center;transition:opacity .4s}
:root .brand-logo .logo-day{opacity:0}
:root .brand-logo .logo-night{opacity:1}
:root[data-theme=day] .brand-logo .logo-day{opacity:1}
:root[data-theme=day] .brand-logo .logo-night{opacity:0}
:root .site-header{align-items:center}
:root .site-footer .brand-logo{width:147px;height:50px}
:root .case-brand{padding:0}
:root .case-brand .brand-logo{width:123px;height:42px}
:root .site-header nav a,:root .gallery-title h1,:root .object-label,:root .object-label strong,:root .object-label .object-no,:root .object-label>span:not(.object-no),:root .station-heading h2,:root .contact-intro h2,:root .object-annotation h3{color:var(--brand-copy)}
:root .site-header nav a[aria-current=true],:root .object-label em,:root .motion-control[aria-pressed=true],:root .journey-status #journey-number,:root .cube-reveal em{color:var(--brand-accent)}
:root .site-header nav a[aria-current=true]:after{background:var(--brand-accent)}
:root .object-label{border-color:var(--brand-rule)}
:root .object-label:hover,:root .object-label:focus-visible,:root .object-label.is-hover{border-color:var(--brand-accent)}
:root .gallery-manifesto,:root .handwritten,:root .gallery-bottom,:root .gallery-rail,:root .explore-link,:root .station-aside,:root .station-caption,:root .station-next,:root .station-next>span,:root .object-annotation p,:root .exhibit-marker,:root .frame-footnote,:root .journey-status,:root #object-drag-hint,:root .contact-coordinate{color:var(--brand-muted)}
:root .cube-reveal{color:var(--brand-copy)}
:root .label-lines line{stroke:var(--brand-rule)}
:root #living-line,:root #contact-trail,:root .contact-outline path{stroke:var(--brand-magenta)}
:root .gallery-title h1 span{color:var(--brand-copy)}
:root .gallery-title .explore-link i,:root .gallery-rail b{background:var(--brand-magenta);box-shadow:0 0 13px #bd159266}
:root #hidden-24{color:var(--brand-white);text-shadow:0 0 60px #bd159277}
:root[data-theme=day] #hidden-24{color:var(--brand-magenta)}
:root .theme-toggle,:root .language-select{border-color:var(--brand-rule);color:var(--brand-copy);background:#261d2488}
:root .theme-toggle:hover,:root .language-select:hover{border-color:var(--brand-accent);background:#bd159214}
:root .theme-toggle:focus-visible,:root .language-select:focus-visible{outline-color:var(--brand-accent)}
:root .motion-control{border-color:var(--brand-muted);color:var(--brand-copy)}
:root[data-theme=day] .theme-toggle,:root[data-theme=day] .language-select{background:#fff9fdba;color:var(--brand-charcoal);border-color:var(--brand-rule)}
:root[data-theme=day] .theme-toggle:hover{background:#bd159210;border-color:var(--brand-magenta)}
:root .project-image-wrap{background:linear-gradient(132deg,#86506f,#191319 4%,#191319 94%,#c784b1);box-shadow:16px 24px 40px #0008,-1px -1px 0 #c784b177}
:root .project-grid .project-view,:root .project-grid .concept-badge,:root .project-grid .motion-toggle{background:#21171fed;color:#f4edf2;border-color:#a2679366}
:root .work-index button{color:var(--brand-muted);border-color:var(--brand-rule)}
:root .work-index button[aria-pressed=true],:root .work-index button[aria-pressed=true]>span{color:var(--brand-accent);border-color:var(--brand-accent)}
:root .work-index button[aria-pressed=true] i{background:var(--brand-accent)}
:root .service-list,:root .service,:root .service[open],:root .work-caption .exhibit-marker{border-color:var(--brand-rule)}
:root .service[open]{background:#bd15920b}
:root .service[open] h3{color:var(--brand-accent)}
:root .service h3,:root .studio-copy p,:root .studio-copy p:last-child,:root .column-intro,:root .contact-intro>p{color:var(--brand-copy)}
:root .service-body p,:root .service-tags,:root .services-note,:root .project-grid .project>p,:root .project-grid .project-meta>span,:root .contact-address,:root .contact-address>.eyebrow,:root .contact-demo,:root .form-coordinate,:root #form-mode,:root .form-row label,:root .contact #form-status{color:var(--brand-muted)}
:root .service-symbol:before,:root .service-symbol:after,:root .station-next i{background:var(--brand-accent)}
:root .contact-frame{background:linear-gradient(115deg,#21161fdb,#2b1d2899)}
:root .form-row input,:root .form-row textarea{color:var(--brand-copy);border-color:var(--brand-rule)}
:root .form-row input::placeholder,:root .form-row textarea::placeholder{color:var(--brand-muted)}
:root .form-actions .button,:root .button-dark{color:var(--brand-copy);border-color:var(--brand-accent)}
:root .form-actions .button:hover,:root .button-dark:hover{background:#bd159226;color:var(--brand-copy);border-color:var(--brand-accent)}
:root[data-theme=day] .contact-frame{background:linear-gradient(115deg,#ffffffdf,#f5eaf1b3)}
:root[data-theme=day] .project-image-wrap{background:linear-gradient(132deg,#ead5e4,#986b8a 4%,#986b8a 94%,#f1dfea);box-shadow:12px 22px 35px #3a2e3333,-1px -1px 0 #fff}
:root[data-theme=day] .project-grid .project-view,:root[data-theme=day] .project-grid .concept-badge,:root[data-theme=day] .project-grid .motion-toggle{background:#fff9fde8;color:#3a2e33;border-color:#bd159244}
:root[data-theme=day] .contact-address>#agency-email,:root[data-theme=day] .project-grid .project-meta h3{color:var(--brand-charcoal)}
:root .site-footer{border-color:var(--brand-rule)}
:root dialog{background:#211a20f5;border-color:#bd159244;color:#f4edf2}
:root .case-toolbar{background:#211a20f2;border-color:#bd159244}
:root .case-close,:root .case-info,:root .case-intro>p,:root .case-section>p,:root .case-end p,:root .case-end .text-link{color:var(--brand-muted)}
:root .case-intro h2,:root .case-detail-word{color:var(--brand-copy)}
:root .case-hero{border-color:#3a2e33;outline-color:#bd159244}
:root .case-detail-board{background:#30232c;border-color:#bd159244}
:root .case-deliverables span{border-color:#bd159244}
:root[data-theme=day] dialog{background:#fff9fdfa;color:#3a2e33;border-color:#bd159244}
:root[data-theme=day] .case-toolbar{background:#fff9fdf5;border-color:#bd159244}
:root[data-theme=day] .case-close,:root[data-theme=day] .case-info,:root[data-theme=day] .case-section>p,:root[data-theme=day] .case-end p{color:#6f5b67}
:root[data-theme=day] .case-detail-board{background:#f2e8ef;color:#3a2e33;border-color:#bd159244}
@media(max-width:1000px) and (min-width:641px){
:root .site-header .brand-logo{width:150px;height:51px}}
@media(max-width:760px){
:root .site-header{align-items:flex-start}}
@media(max-width:640px){
:root .site-header .brand-logo{width:122px;height:42px}
:root .site-footer .brand-logo{width:120px;height:41px}
:root .case-brand .brand-logo{width:100px;height:34px}
:root .case-language{margin-right:10px}
:root .service-column,:root .studio-column{background:linear-gradient(#21161fad,#21161f44)}
:root[data-theme=day] .service-column,:root[data-theme=day] .studio-column{background:linear-gradient(#fff9fdd9,#f2e8ef99)}}
@media(max-width:359px){
:root .site-header .brand-logo{width:100px;height:34px}
:root .header-controls{gap:5px}
:root .header-controls .language-select{width:79px}}
@media(prefers-reduced-motion:reduce){
:root .brand-logo img{transition:none}}
/* Override the original daylight palette, including its grouped selectors. */
:root[data-theme=day] :is(.unified-exhibition,.station,.object-label,.object-label strong,.object-label .object-no,.object-label>span:not(.object-no),.station-heading h2,.contact-intro h2,.object-annotation h3,.column-intro,.service h3,.studio-copy p,.studio-copy p:last-child,.contact-intro>p){color:var(--brand-copy)}
:root[data-theme=day] :is(.gallery-manifesto,.handwritten,.gallery-bottom,.gallery-rail,.explore-link,.station-heading>.eyebrow,.station-aside,.station-caption,.exhibit-marker,.frame-footnote,.station-next,.station-next>span,.object-annotation>span,.object-annotation p,.contact-coordinate,.service-index,.service-tags,.services-note,.service-body p,.contact-demo,.form-coordinate,.form-row label,.form-actions>span,.site-footer){color:var(--brand-muted)}
:root[data-theme=day] :is(.object-label em,.station-next:hover,.service[open] h3){color:var(--brand-accent)}
:root[data-theme=day] :is(.service-list,.service,.service[open],.object-label){border-color:var(--brand-rule)}
:root[data-theme=day] :is(.object-label:hover,.object-label:focus-visible,.object-label.is-hover){border-color:var(--brand-accent)}
:root[data-theme=day] .project-grid :is(.project-meta>span,.project>p){color:var(--brand-muted)}
:root[data-theme=day] .contact-address,:root[data-theme=day] .contact-address>.eyebrow{color:var(--brand-muted)}
:root[data-theme=day] .contact-address>#agency-email{color:var(--brand-copy)}
:root[data-theme=day] .work-index button>span{color:var(--brand-muted)}
:root[data-theme=day] .work-index button[aria-pressed=true]>span{color:var(--brand-accent)}
:root[data-theme=day] :is(.form-row input,.form-row textarea){color:var(--brand-copy);border-color:var(--brand-rule)}
:root[data-theme=day] :is(.form-row input:focus,.form-row textarea:focus){border-color:var(--brand-accent)}
:root[data-theme=day] :is(.form-actions .button,.button-dark){color:var(--brand-copy);border-color:var(--brand-accent);background:#bd15920b}
:root[data-theme=day] :is(.form-actions .button:hover,.button-dark:hover){color:var(--brand-copy);border-color:var(--brand-accent);background:#bd159226}
:root[data-theme=day] :is(.gallery-bottom i,.explore-link span,.gallery-rail i){background:var(--brand-rule)}
:root[data-theme=day] .studio-composition{filter:grayscale(.6) brightness(.96);border-color:#986b8a;outline-color:var(--brand-rule);box-shadow:9px 16px 30px #3a2e3338}
:root[data-theme=day] .case-intro>p,:root[data-theme=day] .case-end .text-link,:root[data-theme=day] dialog .eyebrow{color:var(--brand-muted)}
:root[data-theme=day] dialog::backdrop{background:#d9cbd577}
:root[data-theme=day] .case-hero{border-color:#986b8a;outline-color:var(--brand-rule);box-shadow:10px 16px 35px #3a2e3333}
:root[data-theme=day] #hidden-24{text-shadow:0 0 60px #bd159233}
:root[data-theme=day] .scene-fallback .object-label{background:#fff9fddd}

:root :focus-visible{outline-color:var(--brand-accent)}
:root ::selection{background:var(--brand-magenta);color:var(--brand-white)}
:root .form-row input:focus,:root .form-row textarea:focus{border-color:var(--brand-accent)}
:root .work-index button[aria-pressed=true] i{box-shadow:0 0 9px #bd159266}
:root .motion-art i{border-color:#bd1592}
:root .motion-art i:nth-child(2){border-color:#ffffff77}
:root .motion-art i:nth-child(3){border-color:#bd159277}
:root .strategy-art,:root .digital-art>span:nth-child(2){background:var(--brand-magenta);color:var(--brand-white)}

/* A reading surface separates fixed navigation from passing exhibit text. */
:root{--site-header-height:103px;--header-surface:rgba(21,17,22,.97)}
:root[data-theme=day]{--header-surface:rgba(245,248,250,.97)}
:root{scroll-padding-top:calc(var(--site-header-height) + 24px)}
:root .site-header{height:var(--site-header-height);isolation:isolate}
:root .site-header::before{z-index:-2}
:root .site-header::after{content:'';position:absolute;inset:0 0 -24px;z-index:-1;pointer-events:none;background:var(--header-surface);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);mask-image:linear-gradient(#000 0,#000 calc(100% - 24px),transparent 100%);-webkit-mask-image:linear-gradient(#000 0,#000 calc(100% - 24px),transparent 100%);opacity:0;transition:opacity .24s ease,background-color .45s ease}
:root .site-header[data-scrolled]::after{opacity:1}
@media(max-width:760px){:root{--site-header-height:128px}}
@media(prefers-reduced-motion:reduce){:root .site-header::after{transition:none}}

/* Conversational navigation, with room for the full labels in every language. */
:root .site-header{gap:clamp(16px,2vw,30px)}
:root .site-header nav{gap:clamp(16px,1.8vw,30px);margin:0 0 0 auto;min-width:0;flex-shrink:0}
:root .site-header nav a{text-transform:none;letter-spacing:.035em;white-space:nowrap;flex-shrink:0;font-size:12px}
@media(max-width:1100px){
 :root{--site-header-height:132px}
 :root .site-header{align-items:flex-start;padding-top:19px}
 :root .header-controls{margin-left:auto}
 :root .site-header nav{position:absolute;left:5%;right:5%;top:83px;margin:0;justify-content:space-between;gap:18px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--brand-rule) transparent}
 :root .site-header nav a{min-height:42px;display:flex;align-items:center;padding:8px 0;font-size:11px;line-height:1.5}
 :root .handwritten{top:max(150px,18%)}
}
@media(max-width:640px){
 :root .site-header{gap:10px}
 :root{--site-header-height:140px}
 :root .site-header nav{justify-content:flex-start;gap:22px;padding-bottom:3px;padding-right:10px;scroll-padding-inline:10px}
 :root .site-header nav a{font-size:11px}
 :root .site-header nav::-webkit-scrollbar{height:3px}
 :root .site-header nav::-webkit-scrollbar-thumb{background:var(--brand-rule);border-radius:3px}
}
