/* Local UI material studies; the canonical desk photographs and screen planes stay fixed. */
:root{--study-material:url(material.png);--study-filter:none;--study-ink:#192c31;--study-muted:#34464a;--study-radius:12px;--study-shadow:0 6px 15px #19130e22;--study-slice:110}
html[data-theme=dark]{--study-filter:brightness(.18) saturate(.6);--study-ink:#f6f0e7;--study-muted:#e0d6c8;--study-shadow:0 6px 18px #0004}
:root,:root[data-theme=light],:root[data-theme=dark]{--ink:var(--study-ink);--muted:var(--study-muted)}
.studio .material,.studio .key,.studio .object-label,.studio .theme-switch{border:0!important;border-image:none!important;background:none!important;isolation:isolate;color:var(--study-ink)}
.studio .material::before,.studio .key::before,.studio .object-label::before,.studio .theme-switch::before,.study-hero-surface::before{content:'';position:absolute;inset:0;z-index:-1;border:15px solid transparent;border-image:var(--study-material) var(--study-slice) fill/15px/0 stretch;filter:var(--study-filter);pointer-events:none}
.studio .material::before{filter:var(--study-filter) drop-shadow(0 4px 6px #1b160d1c)}
.study-hero-surface{filter:drop-shadow(0 4px 6px #1b160d1c)}
.studio .key,.studio .object-label{position:relative;isolation:isolate}
.studio .key span,.studio .object-label>span{transform:none!important}
.studio .key:hover{filter:none;transform:translateY(-1px)}
.studio .theme-switch:hover{filter:brightness(1.035)}
.studio .object-label{padding:10px 12px;font-size:14px;letter-spacing:-.015em;min-height:44px}
.studio .nav-object{gap:3px}.studio .nav-object:hover{transform:translateY(-2px)}
.studio .theme-switch{top:8px;right:20px;width:148px;height:44px;display:flex;align-items:center;justify-content:center;font:500 13px/1.2 Manrope,Arial,sans-serif;padding:0}
.studio .switch-title{position:static;display:flex;align-items:center;justify-content:center;gap:11px;color:var(--study-ink);font-size:13px;line-height:1.2}
.switch-divider{width:1px;height:13px;background:currentColor;opacity:.3}
html[data-theme=light] .light-word,html[data-theme=dark] .dark-word{font-weight:800;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.studio .studio-header .masthead{border:0;padding:0 15px;top:8px;height:44px;gap:18px}
.scene-canvas>.study-hero-surface{position:absolute;left:6.15%;top:9.35%;width:42.5%;height:34.5%;z-index:0;isolation:isolate;pointer-events:none}
.scene-canvas>.study-hero-surface::before{border-width:18px;border-image-width:18px}
.scene-canvas .screen-plane{z-index:1}
.studio .title-on-object,.studio .scene-label,.studio.home-view .exhibit-note,.studio.home-view .exhibit-note .disclosure,.studio.home-view .hero-counter{color:var(--study-ink)!important}
.studio.home-view .exhibit-note .disclosure,.studio.home-view .hero-counter{color:var(--study-muted)!important}
.studio.home-view .title-desktop{left:8.2%!important;width:38.5%!important}
.studio.home-view .title-desktop h1{font-size:clamp(26px,2.7vw,40px)!important}
.studio .hero-browser>.key{width:56px;min-width:56px;height:48px;min-height:48px;padding:4px 12px;font-size:25px}
.studio .hero-browser>.key::before{border-width:12px;border-image-width:12px}
.studio .hero-current{max-width:none}.studio .hero-browser{gap:14px}
.studio.home-view .exhibit-note{padding:0 7px}
.studio .slim-footer{color:var(--study-ink);padding:2px 14px!important}
.studio .slim-footer::before{border-width:10px;border-image-width:10px}
.studio .inner-content{padding:32px!important}
.studio .inner-content::before{border-width:22px;border-image-width:22px}
.studio .inner-content .material::before{display:none}
.studio .studio-menu{padding:30px 18px}
.studio .studio-menu::before{border-width:22px;border-image-width:22px}
.studio .mobile-bar>.material{isolation:isolate;position:relative}
.studio .mobile-bar>.material::before{border-width:12px;border-image-width:12px}
.studio .mobile-project{font-weight:700}
@media(min-width:769px){.studio.home-view .exhibit-note::before{display:none}}
@media(max-width:768px){
.scene-mobile>.study-hero-surface{left:10.7%;top:10.05%;width:78.8%;height:18.4%}
.studio .studio-header .masthead{left:12px;width:calc(100% - 162px);padding:0 8px}
.studio .theme-switch{right:10px;top:8px;width:140px;height:44px}
.studio .title-mobile{padding:5px!important}
.studio .title-mobile h1{font-size:24px!important}.studio .title-mobile .title-price{font-size:16px!important}
.studio.home-view .exhibit-note{padding:13px 14px;min-height:138px}
.studio.home-view .exhibit-note::before{border-width:15px;border-image-width:15px}
.studio .hero-browser{gap:6px}.studio .hero-browser>.key{width:44px;min-width:44px;height:44px;min-height:44px;font-size:24px;padding:2px 8px}
.studio .hero-name{font-size:14px!important}.studio .hero-counter{font-size:12px}
.studio .inner-content{padding:18px 14px!important}
.studio .studio-menu{padding:25px 12px}
.studio .studio-menu .object-label{width:134px;min-height:44px}
.studio .menu-heading h2{font-size:24px}.studio .menu-heading .key{min-width:86px}
.studio .mobile-bar>a,.studio .mobile-bar>button{padding:6px 9px}
.studio .mobile-bar .mobile-project{padding:6px 6px}
}
@media(prefers-reduced-motion:reduce){.studio .nav-object,.studio .key{transition:none}}
/* Keep the keyboard skip link out of document flow. */
.studio .skip-link{position:fixed}
/* Opaque backing also masks the original photographed fixing points beneath
   semi-translucent material pixels. The photographic face/edge remains above it. */
.study-hero-surface::after{content:'';position:absolute;inset:6px;z-index:-2;border-radius:8px;background:var(--study-base,#bfc2be);filter:var(--study-filter);pointer-events:none}
@media(max-width:768px){.scene-mobile>.study-hero-surface{left:9.5%;top:9.55%;width:81%;height:20%}}

/* Horizon Glass — photographic frosted glass, concealed fittings. */
:root{--study-radius:14px;--study-ink:#163138;--study-muted:#345057}
html[data-theme=dark]{--study-filter:brightness(.20) saturate(.75);--study-ink:#f1f4ee;--study-muted:#cfdcdb}
.studio .object-label::before,.studio .theme-switch::before{border-width:12px;border-image-width:12px}
.studio .hero-browser>.key{border-radius:50%}.studio .hero-browser>.key::before{clip-path:inset(1px round 20px)}
.studio .object-dock{gap:16px}.studio .object-label{letter-spacing:.01em;font-weight:500}
.studio .theme-switch{border-radius:20px;overflow:hidden}
.studio .title-kicker{letter-spacing:.12em!important}
:root{--study-base:#bfc3c0}
:root{--study-muted:#253e44}
