/* Amplified-Dreams 8.14.37 — cinematic gallery experience */
:root{
    --ad-electric:#2f8dff;
    --ad-electric-soft:rgba(47,141,255,.34);
    --ad-ink:#04070c;
}

body.ad-intro-open,body.ad-immersive-open{overflow:hidden}

.ad-cinematic-intro{
    position:fixed;inset:0;z-index:10000;display:grid;place-items:center;overflow:hidden;
    background:#02050a;color:#fff;opacity:1;transition:opacity .72s ease,visibility .72s ease;
}
.ad-cinematic-intro.is-leaving{opacity:0;visibility:hidden;pointer-events:none}
.ad-cinematic-bg{position:absolute;inset:-4%;width:108%;height:108%;object-fit:cover;filter:brightness(.36) saturate(.72) blur(1px);transform:scale(1.025);animation:adIntroDrift 7s ease-out both}
.ad-cinematic-shade{position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,rgba(2,5,10,.08),rgba(2,5,10,.82) 68%,#02050a 100%)}
.ad-cinematic-content{position:relative;z-index:2;width:min(900px,86vw);text-align:center;padding:2rem;animation:adIntroText 1.15s cubic-bezier(.22,.8,.24,1) both}
.ad-cinematic-kicker{margin:0 0 1.3rem;letter-spacing:.34em;font-size:.7rem;color:#8fbcff;text-transform:uppercase}
.ad-cinematic-content h2{margin:0;font-size:clamp(2.2rem,6vw,6.2rem);line-height:.94;font-weight:400;letter-spacing:-.035em;text-wrap:balance;text-shadow:0 0 40px rgba(47,141,255,.18)}
.ad-cinematic-description{max-width:650px;margin:1.5rem auto 0;color:rgba(255,255,255,.72);font-size:clamp(.95rem,1.5vw,1.15rem);line-height:1.7}
.ad-cinematic-enter{margin-top:2rem;border:1px solid rgba(111,175,255,.62);background:rgba(4,12,24,.42);color:#dcecff;border-radius:999px;padding:.78rem 1.35rem;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;cursor:pointer;backdrop-filter:blur(8px);transition:.2s ease}
.ad-cinematic-enter:hover,.ad-cinematic-enter:focus-visible{background:rgba(47,141,255,.22);box-shadow:0 0 34px rgba(47,141,255,.2);outline:none}
.ad-cinematic-progress{position:absolute;z-index:3;left:0;bottom:0;height:2px;width:100%;transform-origin:left;background:linear-gradient(90deg,transparent,#5aa5ff,#d9efff);animation:adIntroProgress 4.2s linear both}
@keyframes adIntroText{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes adIntroDrift{from{transform:scale(1.08)}to{transform:scale(1.015)}}
@keyframes adIntroProgress{from{transform:scaleX(0)}to{transform:scaleX(1)}}

.ad-immersive-launch{
    position:fixed;right:1.25rem;bottom:1.25rem;z-index:1200;display:flex;align-items:center;gap:.58rem;
    border:1px solid rgba(98,166,255,.42);border-radius:999px;background:rgba(4,9,17,.82);color:#e8f3ff;
    padding:.7rem 1rem;box-shadow:0 10px 35px rgba(0,0,0,.36),0 0 22px rgba(47,141,255,.08);
    backdrop-filter:blur(14px);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:.22s ease
}
.ad-immersive-launch:hover,.ad-immersive-launch:focus-visible{transform:translateY(-2px);border-color:rgba(98,166,255,.85);box-shadow:0 12px 40px rgba(0,0,0,.46),0 0 30px rgba(47,141,255,.18);outline:none}
.ad-immersive-dot{width:.48rem;height:.48rem;border-radius:50%;background:#66b0ff;box-shadow:0 0 12px #2f8dff,0 0 24px #2f8dff}

.ad-immersive{position:fixed;inset:0;z-index:9999;background:#000;color:#fff;opacity:0;transition:opacity .3s ease;overflow:hidden}
.ad-immersive[hidden]{display:none}
.ad-immersive.is-open{opacity:1}
.ad-immersive-stage{position:absolute;inset:0;display:grid;place-items:center;touch-action:pan-y;background:radial-gradient(circle at center,#07101c 0,#010204 68%,#000 100%)}
.ad-immersive-image{display:block;max-width:100vw;max-height:100vh;width:auto;height:auto;object-fit:contain;opacity:0;transform:scale(.992);transition:opacity .38s ease,transform .55s ease;user-select:none;-webkit-user-drag:none}
.ad-immersive-image.is-visible{opacity:1;transform:scale(1)}
.ad-immersive-topbar{position:absolute;z-index:3;left:0;right:0;top:0;display:flex;justify-content:space-between;align-items:center;padding:1.15rem 1.35rem 3rem;background:linear-gradient(180deg,rgba(0,0,0,.72),transparent);pointer-events:none}
.ad-immersive-label{display:flex;flex-direction:column;gap:.2rem;min-width:0;pointer-events:auto}
.ad-immersive-label span{font-size:.58rem;letter-spacing:.28em;color:#72b4ff}
.ad-immersive-label strong{font-size:.94rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70vw}
.ad-immersive-close,.ad-immersive-nav,.ad-immersive-auto{border:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.44);color:#fff;cursor:pointer;backdrop-filter:blur(10px);transition:.2s ease}
.ad-immersive-close{pointer-events:auto;width:2.7rem;height:2.7rem;border-radius:50%;font-size:1.8rem;line-height:1}
.ad-immersive-close:hover,.ad-immersive-close:focus-visible,.ad-immersive-nav:hover,.ad-immersive-nav:focus-visible,.ad-immersive-auto:hover,.ad-immersive-auto:focus-visible{border-color:#65adff;background:rgba(47,141,255,.18);outline:none}
.ad-immersive-nav{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:3.15rem;height:4.8rem;border-radius:999px;font-size:2.2rem}
.ad-immersive-prev{left:1rem}.ad-immersive-next{right:1rem}
.ad-immersive-footer{position:absolute;z-index:3;left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:1rem;padding:3rem 1.35rem 1.15rem;background:linear-gradient(0deg,rgba(0,0,0,.74),transparent)}
.ad-immersive-caption{min-width:0;color:rgba(255,255,255,.78);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.82rem}
.ad-immersive-counter{font-variant-numeric:tabular-nums;color:rgba(255,255,255,.58);font-size:.72rem;letter-spacing:.1em}
.ad-immersive-auto{border-radius:999px;padding:.48rem .82rem;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}
.ad-immersive-auto.is-active{border-color:#65adff;color:#b9dcff;box-shadow:0 0 18px rgba(47,141,255,.16)}

.ad-gallery-tags{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.1rem}
.ad-gallery-tags span{display:inline-flex;align-items:center;border:1px solid rgba(83,151,236,.25);border-radius:999px;padding:.38rem .65rem;color:rgba(205,226,255,.76);background:rgba(26,75,132,.09);font-size:.67rem;letter-spacing:.08em;text-transform:uppercase}

.ad-related-galleries{margin:clamp(4rem,8vw,7rem) auto 1rem;padding-top:clamp(2.2rem,5vw,4rem);border-top:1px solid rgba(255,255,255,.09)}
.ad-related-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:1.35rem}
.ad-related-head h2{margin:.15rem 0 0;font-size:clamp(1.6rem,3vw,2.6rem);font-weight:450}
.ad-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}
.ad-related-card{position:relative;display:block;overflow:hidden;aspect-ratio:4/3;border-radius:.55rem;background:#0b1119;color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.07)}
.ad-related-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.75,.2,1),filter .4s ease;filter:saturate(.86) brightness(.78)}
.ad-related-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.76))}
.ad-related-title{position:absolute;left:1rem;right:1rem;bottom:.85rem;font-size:.92rem;line-height:1.2;text-shadow:0 2px 12px #000}
.ad-related-card:hover img,.ad-related-card:focus-visible img{transform:scale(1.045);filter:saturate(1) brightness(.9)}
.ad-related-card:focus-visible{outline:2px solid #5ba5ff;outline-offset:3px}

@media(max-width:900px){.ad-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ad-immersive-nav{width:2.8rem;height:4rem}.ad-immersive-prev{left:.45rem}.ad-immersive-next{right:.45rem}}
@media(max-width:600px){
    .ad-immersive-launch{right:.8rem;bottom:.8rem;padding:.62rem .82rem}.ad-immersive-launch span:last-child{display:none}
    .ad-cinematic-content{width:92vw;padding:1.25rem}.ad-cinematic-content h2{font-size:clamp(2.2rem,12vw,4rem)}.ad-cinematic-description{font-size:.92rem;max-height:7.2em;overflow:hidden}
    .ad-immersive-footer{grid-template-columns:1fr auto;padding:2.4rem .85rem .8rem}.ad-immersive-caption{grid-column:1/-1;order:-1}.ad-immersive-topbar{padding:.85rem .9rem 2.5rem}.ad-immersive-label strong{max-width:62vw}
    .ad-related-grid{gap:.55rem}.ad-related-title{left:.7rem;right:.7rem;bottom:.65rem;font-size:.78rem}
}
@media(prefers-reduced-motion:reduce){.ad-cinematic-intro{display:none}.ad-immersive-image,.ad-related-card img,.ad-immersive-launch{transition:none}.ad-related-card:hover img{transform:none}}
