/* A shared optical identity for every collection and route, independent of artwork. */
#gallery{isolation:isolate}
#overview{background:transparent;overflow-x:hidden;z-index:1}
header,.artwork,footer{position:relative;z-index:1}
.artwork,footer{position:absolute}
.is-overview header{background:#f4fafbe8;backdrop-filter:blur(12px)}
.overview-inner{position:relative;padding-top:42px;overflow:clip}
.gallery-atmosphere{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;contain:strict;background:radial-gradient(ellipse at 100% 0,#d8eff8 0,transparent 50%),linear-gradient(140deg,#f8fcfd,#eff8fb 70%,#f4f7fd)}
.gallery-atmosphere::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 390px 330px at var(--light-x,75%) var(--light-y,25%),#c4eaf74d,transparent 80%);opacity:var(--light-presence,0);transition:opacity .6s}
#atmosphere-optic{position:absolute;width:clamp(340px,49vw,740px);height:auto;right:-18%;top:-18%;opacity:.42;transform:translate3d(var(--optic-x,0px),var(--optic-y,0px),0) rotate(-18deg);filter:drop-shadow(0 12px 24px #70b3cb15)}
.gallery-atmosphere canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.9}
#gallery:not(.is-overview) #atmosphere-optic{opacity:.23}
#gallery:not(.is-overview) .gallery-atmosphere canvas{opacity:.6}
.featured-work{isolation:isolate}
.feature-copy{z-index:2;position:relative;border-image:linear-gradient(90deg,#84b6ca,#b5cbd5 65%,#d4e4e8) 1}
.feature-copy .eyebrow{display:flex;align-items:center;gap:12px;letter-spacing:2.5px}
.feature-copy .eyebrow::before{content:'';display:block;width:22px;height:1px;background:#6babca;flex:none}
.feature-copy h1{position:relative;color:#164b62}
.blue-hour{color:#277f9f}
.feature-description{color:#426b80}
.feature-person{color:#355c71}
.feature-person span{color:#648396}
.featured-open{position:relative;z-index:1;perspective:1400px;background:transparent;overflow:visible}
.feature-visual{position:relative;display:block;aspect-ratio:1600/1124;width:100%;background:#e5f4fc;transform-style:preserve-3d;transform:rotateX(var(--card-rx,0deg)) rotateY(var(--card-ry,0deg));box-shadow:0 42px 42px -32px #16718a55;transition:transform .22s ease-out,box-shadow .6s}
.feature-visual::before{content:'';position:absolute;inset:-7px;z-index:-1;border:1px solid #fff;background:linear-gradient(135deg,#fff,#eefaffc7 45%,#c2e8f599);box-shadow:0 0 0 1px #96c7d140;transform:translateZ(-4px)}
.feature-visual::after{content:'';position:absolute;inset:auto -7px -12px;height:5px;background:linear-gradient(90deg,#c4e4e9,#f8ffff 30%,#97c4d6 76%,#d0edf0);transform:translateZ(-6px)}
.feature-visual>img{display:block;width:100%;height:100%;aspect-ratio:1600/1124;object-fit:contain;border-radius:0;filter:none}
.glass-surface,.tile-image::after{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at var(--glint-x,50%) var(--glint-y,50%),#fff 0,#e4f8ff80 22%,transparent 62%);mix-blend-mode:screen;opacity:0;transition:opacity .3s}
.tile-image::after{content:'';z-index:1}
[data-optical=active] .glass-surface{opacity:.11}
.tile-image[data-optical=active]::after{opacity:.15}
.feature-visual[data-optical=active]{box-shadow:0 44px 48px -30px #09699270}
.tile-open{perspective:950px}
.tile-image{box-shadow:0 8px 24px -16px #2d769331;transform:rotateX(var(--card-rx,0deg)) rotateY(var(--card-ry,0deg));transition:transform .22s ease-out,box-shadow .3s}
.tile-image[data-optical=active]{box-shadow:0 16px 30px -17px #2d769366}
.featured-caption{z-index:3}
.featured-caption .feature-action{align-items:center}
.feature-action{gap:14px;transition:color .2s}
.feature-action>svg{width:34px;height:34px;padding:8px;border:1px solid #78adc3;border-radius:50%;background:#f7fcff80;transition:background .3s}
.feature-action>span{margin-left:34px;transition:transform .3s}
.featured-open:hover .feature-action>span{transform:translate(2px,-2px)}
.collection-heading h2{color:#255269}
.overview-toolbar{border-color:#c2d9e2}
.gallery-tabs button[aria-pressed=true]{color:#1a7494;box-shadow:0 2px #70b6cf}
.gallery-end{border-color:#c6dce4}
.icon-button[data-optical=active],.collection-card[data-optical=active],.music-track[data-optical=active],.gallery-tabs button[data-optical=active],.main-nav button[data-optical=active],.back-to-gallery[data-optical=active]{background-image:radial-gradient(circle 75px at var(--glint-x,50%) var(--glint-y,50%),#a9deef77,transparent 95%)}
.overview-search[data-optical=active]{background-image:radial-gradient(ellipse at var(--glint-x,50%) 50%,#d7f1fa,transparent);border-radius:4px}
#atmosphere-toggle{width:34px;height:34px;margin-right:8px;color:#729bad}
#atmosphere-toggle svg{width:19px;height:19px}
#atmosphere-toggle[aria-pressed=true]{background-color:#e5f1f6;color:#317f9e}
#atmosphere-toggle:hover{background-color:#d7edf5}
#atmosphere-toggle::after{font-size:10px}
.effects-off .gallery-atmosphere{display:none}
.effects-off .feature-visual,.effects-off .tile-image{transform:none!important;box-shadow:none}
.effects-off .feature-visual::before,.effects-off .feature-visual::after,.effects-off .glass-surface,.effects-off .tile-image::after{display:none}
.effects-off [data-optical]{background-image:none!important}
@media(max-width:1000px){.overview-inner{padding-top:34px}.feature-copy .eyebrow{letter-spacing:1.8px;gap:8px}.feature-copy .eyebrow::before{width:15px}}
@media(max-width:760px),(pointer:coarse){.gallery-atmosphere canvas{display:none}.feature-visual,.tile-image{transform:none!important}.glass-surface,.tile-image::after{display:none}}
@media(max-width:640px){
 .overview-inner{padding-top:30px}.featured-open{position:static;perspective:none}
 .feature-visual{box-shadow:0 20px 26px -24px #09699288}.feature-visual::before{inset:-5px}.feature-visual::after{inset:auto -5px -9px;height:4px}
 .feature-copy h1 br{display:block}.feature-copy h1{font-size:35px}
 .feature-copy .eyebrow{font-size:10px;letter-spacing:2px}.feature-copy{padding-top:26px}
 .feature-action{font-size:12px}.feature-action>span{margin-left:24px}
 #atmosphere-toggle{width:30px;height:30px;margin-right:0}.header-actions{gap:2px}
 #atmosphere-optic{width:380px;right:-230px;top:-95px;opacity:.2}
}
@media(prefers-reduced-motion:reduce){.feature-visual,.glass-surface,.tile-image,.feature-action>span{transition:none}.feature-visual,.tile-image{transform:none!important}.glass-surface,.tile-image::after,.gallery-atmosphere canvas{display:none}}
