﻿:root {
  --bg: #05070c;
  --ice: #eef6ff;
  --muted: rgba(238, 246, 255, 0.62);
  --purple: #b84dff;
  --purple-hot: #e05cff;
  --cyan: #62d7ff;
  --line: rgba(219, 230, 255, 0.22);
}

* { box-sizing: border-box; }
html, body { width: 100%; min-height: 100%; margin: 0; }
body {
  background: var(--bg);
  color: var(--ice);
  font-family: Inter, Arial, Helvetica, sans-serif;
  overflow: hidden;
}
button { font: inherit; color: inherit; }
button:focus-visible { outline: 1px solid var(--ice); outline-offset: 5px; }

.site { position: relative; width: 100vw; height: 100vh; overflow: hidden; background: var(--bg); }
.bg, .rain, .grain, .vignette, .scanlines, .cursor-glow, .menu-haze { position: absolute; inset: -3%; pointer-events: none; }
.hero-bg, .menu-bg {
  background-image: url('../assets/home-background.png');
  background-size: cover;
  background-position: center;
  will-change: transform, opacity, filter;
}
.hero-bg { opacity: 0; transform: scale(1.04); }
.menu-bg { opacity: 0; transform: scale(1.12); filter: saturate(.92) brightness(.77) blur(.2px); }
.menu-haze {
  opacity: 0;
  background:
    radial-gradient(circle at 50% 55%, rgba(102, 56, 179, .12), transparent 32%),
    radial-gradient(circle at 18% 64%, rgba(36, 154, 227, .09), transparent 24%),
    linear-gradient(180deg, rgba(3,5,11,.28), rgba(0,0,0,.18));
  mix-blend-mode: screen;
}
.cursor-glow {
  inset: auto;
  width: 280px; height: 280px;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(181, 77, 255, .11), rgba(80, 193, 255, .04) 35%, transparent 68%);
  filter: blur(9px);
  opacity: 0;
  transition: opacity .35s ease;
  mix-blend-mode: screen;
  z-index: 3;
}

.rain {
  opacity: .18;
  background-image:
    repeating-linear-gradient(103deg, transparent 0 28px, rgba(255,255,255,.22) 29px, transparent 30px 84px),
    repeating-linear-gradient(79deg, transparent 0 56px, rgba(185,137,255,.18) 57px, transparent 58px 130px);
  background-size: 100% 170%, 100% 130%;
  animation: rainMove 7s linear infinite;
  mix-blend-mode: screen;
}
@keyframes rainMove { from { transform: translate3d(0,-4%,0); } to { transform: translate3d(1%,4%,0); } }

.scanlines {
  opacity: .06;
  background: repeating-linear-gradient(180deg, rgba(255,255,255,.08) 0 1px, transparent 1px 5px);
  mix-blend-mode: screen;
}
.grain {
  opacity: .08;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");
  mix-blend-mode: soft-light;
}
.vignette {
  background: radial-gradient(circle at center, transparent 42%, rgba(0,0,0,.23) 68%, rgba(0,0,0,.72) 100%);
}

.topbar {
  position: absolute;
  z-index: 100;
  top: 0; left: 0; right: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 28px;
  opacity: 0;
  transform: translateY(-12px);
  transition: opacity .65s ease, transform .65s ease;
}
.site.menu-open .topbar { opacity: 1; transform: translateY(0); }
.brand-mini {
  border: 0; background: none; cursor: pointer;
  font-size: 12px; font-weight: 800; letter-spacing: .18em;
  opacity: .9;
  text-shadow: 0 0 18px rgba(190,76,255,.28);
}
.nav-links { display: flex; gap: 22px; align-items: center; }
.nav-links button {
  border: 0; background: none; cursor: pointer;
  font-size: 10px; letter-spacing: .24em; color: rgba(238,246,255,.72);
  padding: 8px 0; position: relative;
}
.nav-links button::after {
  content:""; position:absolute; left:0; right:100%; bottom:2px; height:1px;
  background: linear-gradient(90deg, var(--purple), var(--cyan)); transition:right .25s ease;
}
.nav-links button:hover { color: #fff; }
.nav-links button:hover::after { right: 0; }
.world-mark { display: flex; align-items: center; gap: 12px; font-size: 9px; letter-spacing: .29em; color: rgba(238,246,255,.55); white-space: nowrap; }
.world-mark span { width: 33px; height: 1px; background: rgba(238,246,255,.7); display:block; }

.intro-screen, .home-screen, .panel { position:absolute; inset:0; z-index: 4; }
.intro-screen { display:grid; place-items:center; }
.intro-content { width:min(940px,90vw); text-align:center; transform:translateY(-3vh); }
.logo { width:min(650px,75vw); height:auto; opacity:0; filter: drop-shadow(0 0 20px rgba(208,71,255,.2)); }
.tagline, .home-tagline {
  margin: 8px 0 26px;
  font-size: 12px; line-height:1.4; letter-spacing: .48em;
  color: rgba(238,246,255,.76);
}
.enter-button {
  position:relative; min-width: 160px; padding: 13px 30px;
  background: rgba(7,8,15,.22); border: 1px solid rgba(195,90,255,.85);
  cursor:pointer; letter-spacing:.42em; font-size:12px;
  text-indent:.42em; transition: background .25s ease, box-shadow .25s ease, transform .25s ease;
  opacity:0;
}
.enter-button::before { content:""; position:absolute; inset:-5px; border:1px solid rgba(115,215,255,.16); }
.enter-button i { position:absolute; inset:-2px; pointer-events:none; box-shadow: inset 0 0 0 1px rgba(224,92,255,.22), 0 0 18px rgba(182,77,255,.18); }
.enter-button:hover { background:rgba(164,62,255,.12); box-shadow:0 0 28px rgba(190,70,255,.22); transform: translateY(-1px); }

.home-screen { display:flex; align-items:center; justify-content:center; opacity:0; pointer-events:none; overflow:hidden; }
.site.menu-open .home-screen { pointer-events:auto; }
.home-content { width:min(1160px, 88vw); padding-top: 7vh; text-align:center; position:relative; z-index:2; }
.home-heading { display:flex; flex-direction:column; align-items:center; }
.eyebrow { font-size:10px; letter-spacing:.52em; color:rgba(238,246,255,.55); }
.logo-small { width:min(360px, 52vw); margin:10px 0 2px; filter:drop-shadow(0 0 24px rgba(192,70,255,.13)); }
.home-tagline { margin: 4px 0 34px; font-size:9px; }
 .portal-grid {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
  perspective:1700px;
  padding:14px 8px 22px;
}
.portal-card {
  --lift:0px;
  --tilt:0deg;
  --offset:0px;
  position:relative;
  min-height:305px;
  overflow:hidden;
  border:1px solid rgba(238,246,255,.34);
  border-radius:22px 10px 24px 12px;
  background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(15,10,28,.28) 38%,rgba(2,5,14,.42));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16), inset 0 -1px 0 rgba(0,0,0,.42), 0 18px 40px rgba(0,0,0,.26);
  backdrop-filter:blur(14px) saturate(1.12);
  -webkit-backdrop-filter:blur(14px) saturate(1.12);
  cursor:pointer;
  padding:0;
  text-align:left;
  transform:translateY(calc(var(--lift) + var(--offset))) rotateZ(var(--tilt));
  transform-origin:center bottom;
  transition:transform .45s cubic-bezier(.2,.75,.2,1), border-color .35s ease, box-shadow .35s ease, opacity .35s ease;
  isolation:isolate;
  will-change:transform;
}
.portal-card:nth-child(1){--tilt:-6deg;--offset:8px;border-radius:28px 10px 20px 12px}
.portal-card:nth-child(2){--tilt:-3deg;--offset:-2px;border-radius:10px 26px 14px 28px}
.portal-card:nth-child(3){--tilt:0deg;--offset:12px;border-radius:24px 12px 30px 10px}
.portal-card:nth-child(4){--tilt:3deg;--offset:-4px;border-radius:12px 28px 10px 26px}
.portal-card:nth-child(5){--tilt:6deg;--offset:8px;border-radius:26px 10px 22px 12px}
.portal-card::before { content:""; position:absolute; inset:7px; z-index:4; pointer-events:none; border:1px solid rgba(255,255,255,.10); border-radius:inherit; background:linear-gradient(135deg,rgba(255,255,255,.10),transparent 28%,transparent 72%,rgba(167,81,255,.08)); }
.portal-card::after { content:""; position:absolute; left:11px; right:11px; bottom:11px; height:28%; z-index:2; pointer-events:none; background:linear-gradient(180deg,transparent,rgba(2,4,10,.22) 32%,rgba(2,4,10,.88)); }
.portal-image { position:absolute; inset:11px; z-index:0; display:block; width:calc(100% - 22px); height:calc(100% - 22px); border:0; border-radius:inherit; object-fit:cover; object-position:center; filter:saturate(.88) contrast(1.06) brightness(.62); transform:scale(1.018); transition:transform .7s cubic-bezier(.2,.75,.2,1), filter .55s ease; box-shadow:inset 0 0 0 1px rgba(255,255,255,.10), inset 0 0 50px rgba(2,4,12,.24); }
.portal-overlay { position:absolute; inset:11px; z-index:1; border-radius:inherit; background:linear-gradient(180deg,rgba(7,10,18,.04) 0%,rgba(4,5,12,.14) 42%,rgba(3,4,10,.78) 100%),linear-gradient(135deg,rgba(130,73,255,.10),transparent 42%,rgba(85,215,255,.05)); pointer-events:none; }
.portal-gridline { position:absolute; inset:11px; border:1px solid rgba(255,255,255,.12); border-radius:inherit; z-index:3; transition:border-color .35s ease,box-shadow .35s ease; pointer-events:none; }
.portal-index { position:absolute; top:21px; left:21px; z-index:5; font-size:7px; letter-spacing:.24em; color:rgba(238,246,255,.66); text-shadow:0 1px 10px rgba(0,0,0,.58); }
.portal-label { position:absolute; left:20px; bottom:49px; z-index:5; font-size:17px; letter-spacing:.16em; font-weight:800; text-shadow:0 2px 18px rgba(0,0,0,.72); }
.portal-sub { position:absolute; left:20px; bottom:24px; z-index:5; font-size:6px; letter-spacing:.16em; color:rgba(238,246,255,.64); text-shadow:0 1px 8px rgba(0,0,0,.6); }
.portal-arrow { position:absolute; right:20px; bottom:39px; z-index:5; font-size:18px; color:rgba(225,245,255,.72); transition:transform .35s ease,color .35s ease; text-shadow:0 0 18px rgba(180,90,255,.42); }
.portal-card:hover { --lift:-10px; border-color:rgba(225,132,255,.94); box-shadow:0 28px 62px rgba(50,18,92,.38),inset 0 0 34px rgba(176,71,255,.10),inset 0 1px 0 rgba(255,255,255,.22); }
.portal-card:hover .portal-image { transform:scale(1.045); filter:saturate(1.05) contrast(1.08) brightness(.70); }
.portal-card:hover .portal-gridline { border-color:rgba(232,156,255,.46); box-shadow:inset 0 0 24px rgba(179,75,255,.11),0 0 18px rgba(179,75,255,.08); }
.portal-card:hover .portal-arrow { transform:translate(3px,-3px); color:#fff; }
.portal-card:focus-visible { --lift:-6px; outline:none; border-color:rgba(225,132,255,.92); }
.portal-grid:hover .portal-card:not(:hover) { opacity:.78; }
.home-orbit { position:absolute; border:1px solid rgba(188,78,255,.08); border-radius:50%; transform:translate(-50%,-50%); pointer-events:none; z-index:1; }
.orbit-one { width:78vw; height:32vw; top:54%; left:50%; animation:orbitFloat 13s ease-in-out infinite; }
.orbit-two { width:54vw; height:20vw; top:58%; left:50%; border-color:rgba(99,215,255,.06); animation:orbitFloat 17s ease-in-out infinite reverse; }
@keyframes orbitFloat { 0%,100%{ transform:translate(-50%,-50%) rotate(-2deg); } 50%{ transform:translate(-50%,-50%) rotate(2deg); } }
.home-footer { margin-top:22px; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:18px; color:rgba(238,246,255,.36); font-size:8px; letter-spacing:.28em; }
.home-footer > :last-child { text-align:right; }
.home-status { display:flex; align-items:center; gap:8px; justify-content:center; }
.home-status b { width:5px; height:5px; border-radius:50%; background:var(--cyan); box-shadow:0 0 8px var(--cyan); animation:statusPulse 1.6s ease-in-out infinite; }
@keyframes statusPulse { 0%,100%{opacity:.45} 50%{opacity:1} }

.panel { z-index:20; background:rgba(2,4,10,.89); backdrop-filter: blur(14px); display:flex; align-items:center; justify-content:center; opacity:0; pointer-events:none; overflow:hidden; }
.panel.open { pointer-events:auto; }
.panel-backdrop { position:absolute; inset:0; background-image:url('../assets/home-background.png'); background-size:cover; background-position:center; opacity:.12; filter:saturate(.7) blur(2px); transform:scale(1.06); }
.panel::after { content:""; position:absolute; inset:0; background:radial-gradient(circle at 50% 50%, rgba(120,53,179,.07), transparent 42%), linear-gradient(180deg, rgba(0,0,0,.2), rgba(0,0,0,.45)); pointer-events:none; }
.panel-inner { width:min(860px,82vw); text-align:left; transform:translateY(30px); position:relative; z-index:2; }
.panel-close { border:0; background:none; padding:0; cursor:pointer; float:right; font-size:9px; letter-spacing:.3em; color:rgba(238,246,255,.58); }
.panel-eyebrow { font-size:9px; letter-spacing:.5em; color:var(--purple-hot); margin:0 0 8px; }
.panel h1 { margin:0; font-size:clamp(42px,8vw,90px); letter-spacing:.12em; font-weight:700; }
.panel p { max-width:650px; font-size:14px; line-height:1.75; color:rgba(238,246,255,.64); }
.panel-line { width:160px; height:1px; margin:26px 0; background:linear-gradient(90deg,var(--purple),transparent); }
.panel-meta { font-size:9px; letter-spacing:.35em; color:rgba(238,246,255,.35); }

@media (max-width: 980px) {
  .nav-links { gap:14px; }
  .nav-links button { font-size:9px; letter-spacing:.17em; }
  .world-mark { display:none; }
  .portal-card { min-height:300px; }
}

@media (max-width: 820px) {
  .topbar { padding:16px 18px; }
  .nav-links { gap:12px; }
  .nav-links button { font-size:8px; letter-spacing:.15em; }
  .portal-grid { grid-template-columns:1fr 1fr; max-width:720px; margin:0 auto; max-height:58vh; overflow:auto; padding:10px 8px 14px; scrollbar-width:none; gap:14px; }
  .portal-grid::-webkit-scrollbar { display:none; }
  .portal-card { min-height:175px; }
  .portal-card:nth-child(1),.portal-card:nth-child(2),.portal-card:nth-child(3),.portal-card:nth-child(4),.portal-card:nth-child(5){--tilt:0deg;--offset:0px;}
  .portal-label { font-size:14px; bottom:40px; }
  .portal-sub { bottom:19px; font-size:5.5px; }
  .portal-index { top:18px; left:18px; }
  .portal-arrow { bottom:31px; right:18px; }
  .home-content { padding-top:10vh; width:92vw; }
  .home-tagline { margin-bottom:22px; }
  .home-footer { display:flex; justify-content:center; gap:16px; flex-wrap:wrap; }
  .home-footer > :last-child { text-align:center; }
  .orbit-one, .orbit-two { display:none; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important; }
}


.route-cover {
  position: fixed;
  inset: 0;
  z-index: 100;
  pointer-events: none;
  background: #03050a;
  opacity: 0;
  transition: opacity .42s ease;
}
.route-cover.show { opacity: 1; }

/* Persistent MUSIC shell: the iframe stays mounted and hidden when WORLD is shown,
   so the music Audio element keeps playing across section changes. */
.pt-music-frame {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  z-index: 200;
  background: #03050a;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .28s ease, visibility 0s linear .28s;
}
.pt-music-frame.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: opacity .28s ease, visibility 0s;
}
body.music-frame-open { overflow: hidden; }


/* V13 â€” THE WORLD / interactive archive environment */
.world-screen { position:absolute; inset:0; z-index:8; overflow:hidden; opacity:0; pointer-events:none; background:#03050a; color:#eef6ff; }
.world-screen.open { opacity:1; pointer-events:auto; }
.world-sky { position:absolute; inset:-8%; background:
  radial-gradient(circle at 58% 22%, rgba(85,31,138,.24), transparent 28%),
  radial-gradient(circle at 18% 72%, rgba(33,113,155,.16), transparent 30%),
  linear-gradient(180deg, #060812 0%, #02040a 72%, #010205 100%); transform:scale(1.04); }
.world-grid { position:absolute; inset:-30%; opacity:.14; background:
  linear-gradient(rgba(103,215,255,.14) 1px, transparent 1px),
  linear-gradient(90deg, rgba(103,215,255,.14) 1px, transparent 1px);
  background-size:46px 46px; transform:perspective(900px) rotateX(66deg) translateY(32%); transform-origin:50% 100%; }
.world-noise { position:absolute; inset:0; opacity:.18; background:repeating-linear-gradient(0deg, rgba(255,255,255,.025) 0 1px, transparent 1px 4px); mix-blend-mode:screen; pointer-events:none; }
.world-head { position:relative; z-index:3; display:flex; justify-content:space-between; gap:30px; padding:118px 6vw 20px; }
.world-kicker { margin:0 0 8px; font-size:9px; letter-spacing:.52em; color:var(--purple-hot); }
.world-head h1 { margin:0; font-size:clamp(48px,9vw,112px); line-height:.85; letter-spacing:-.045em; }
.world-head h1 em { color:#70dcff; font-style:normal; text-shadow:0 0 24px rgba(112,220,255,.17); }
.world-lead { max-width:580px; margin:18px 0 0; font-size:13px; line-height:1.75; color:rgba(238,246,255,.56); }
.world-readout { min-width:220px; padding-top:7px; text-align:right; }
.world-readout span,.world-readout small,.world-status span { display:block; font-size:7px; letter-spacing:.24em; color:rgba(238,246,255,.32); }
.world-readout strong { display:block; margin-top:9px; font-size:9px; letter-spacing:.2em; font-weight:500; }
.world-readout strong b,.world-status strong b { display:inline-block; width:6px; height:6px; margin-right:7px; border-radius:50%; background:#6ee8a9; box-shadow:0 0 12px rgba(110,232,169,.65); }
.world-readout small { margin-top:9px; font-size:6px; }
.world-map { position:absolute; left:50%; top:57%; width:min(900px,74vw); height:min(500px,50vh); transform:translate(-50%,-50%); z-index:2; }
.world-orbit { position:absolute; left:50%; top:50%; border:1px solid rgba(102,215,255,.18); border-radius:50%; transform:translate(-50%,-50%) rotate(-10deg); }
.world-orbit::before { content:""; position:absolute; inset:-1px; border-radius:50%; border:1px dashed rgba(196,92,255,.18); }
.orbit-a { width:66%; height:66%; animation:worldSpinA 18s linear infinite; }
.orbit-b { width:38%; height:38%; animation:worldSpinB 12s linear infinite reverse; }
.world-core { position:absolute; left:50%; top:50%; width:132px; height:132px; transform:translate(-50%,-50%); display:grid; place-items:center; border:1px solid rgba(255,255,255,.14); border-radius:50%; background:radial-gradient(circle, rgba(111,221,255,.08), rgba(3,5,10,.72) 58%, rgba(3,5,10,0) 70%); box-shadow:0 0 70px rgba(87,208,255,.07), inset 0 0 35px rgba(195,92,255,.06); }
.world-core-logo { position:relative; z-index:2; display:block; width:84%; height:auto; max-height:72%; object-fit:contain; opacity:.96; }
.world-core i { position:absolute; inset:20px; border:1px solid rgba(195,92,255,.22); border-radius:50%; animation:corePulse 2.8s ease-in-out infinite alternate; }
.world-node { position:absolute; display:block; text-align:left; border:0; padding:0 0 0 26px; background:none; color:#fff; cursor:pointer; width:190px; transition:transform .25s ease, opacity .25s ease; }
.world-node:hover { transform:translateY(-4px) scale(1.02); }
.world-node .node-dot { position:absolute; left:0; top:3px; width:12px; height:12px; border:1px solid currentColor; border-radius:50%; box-shadow:0 0 18px currentColor; }
.world-node .node-dot::after { content:""; position:absolute; inset:3px; border-radius:50%; background:currentColor; }
.world-node small,.world-node em { display:block; font-style:normal; font-size:6px; letter-spacing:.22em; color:rgba(238,246,255,.32); }
.world-node strong { display:block; margin:5px 0 4px; font-size:15px; letter-spacing:.16em; font-weight:600; }
.world-node em { color:rgba(238,246,255,.46); }
.node-releases { left:2%; top:28%; color:#f3c36d; }
.node-lore { left:0%; top:70%; color:#c45cff; }
.node-visuals { right:3%; left:auto; top:30%; color:#62d7ff; }
.node-places { right:2%; top:8%; color:#79e0b0; }
.node-signals { right:0%; top:70%; color:#f47ba8; }
.node-characters { left:50%; bottom:0%; transform:translateX(-50%); color:#d3e3ff; width:220px; text-align:center; padding-left:0; }
.world-node::before { content:""; position:absolute; top:9px; width:112px; height:1px; background:linear-gradient(90deg,currentColor,transparent); opacity:.22; transform-origin:left center; }
.node-releases::before,.node-lore::before { left:12px; transform:rotate(18deg); }
.node-visuals::before { left:12px; transform:rotate(90deg); width:70px; }
.node-places::before,.node-signals::before { left:12px; transform:rotate(-18deg); width:125px; }
.node-characters::before { left:50%; transform:translateX(-50%) rotate(-90deg); transform-origin:center; width:70px; }
.world-bottom { position:absolute; left:6vw; right:6vw; bottom:24px; z-index:4; display:grid; grid-template-columns:auto 1fr auto; align-items:end; gap:30px; }
.world-status strong { display:block; margin-top:8px; font-size:8px; letter-spacing:.23em; }
.world-bottom > p { margin:0; text-align:center; font-size:9px; letter-spacing:.08em; color:rgba(238,246,255,.34); }
.world-return,.world-detail-close { border:0; background:none; color:rgba(238,246,255,.5); cursor:pointer; font:inherit; font-size:8px; letter-spacing:.24em; }
.world-return:hover,.world-detail-close:hover { color:#fff; }
.world-detail { position:absolute; z-index:8; right:0; top:0; bottom:0; width:min(500px,92vw); padding:132px 6vw 40px 44px; background:linear-gradient(90deg, rgba(3,5,10,.12), rgba(3,5,10,.96) 25%); border-left:1px solid rgba(238,246,255,.08); transform:translateX(101%); transition:transform .48s cubic-bezier(.2,.8,.2,1); pointer-events:none; }
.world-detail.open { transform:translateX(0); pointer-events:auto; }
.world-detail-close { float:right; margin-bottom:90px; }
.world-detail-kicker { clear:both; margin:0 0 9px; font-size:8px; letter-spacing:.4em; color:var(--purple-hot); }
.world-detail h2 { margin:0; font-size:clamp(42px,7vw,78px); line-height:.9; letter-spacing:-.04em; }
.world-detail > p { max-width:440px; margin:18px 0 0; color:rgba(238,246,255,.56); font-size:13px; line-height:1.8; }
.world-detail-rule { width:180px; height:1px; margin:28px 0; background:linear-gradient(90deg,#62d7ff,transparent); }
.world-detail-lines > div { padding:10px 0; border-bottom:1px solid rgba(238,246,255,.07); font-size:8px; letter-spacing:.2em; color:rgba(238,246,255,.42); }
.world-detail-lines strong { float:right; color:rgba(255,255,255,.76); font-weight:500; }
@keyframes worldSpinA { to { transform:translate(-50%,-50%) rotate(350deg); } }
@keyframes worldSpinB { to { transform:translate(-50%,-50%) rotate(-350deg); } }
@keyframes corePulse { from { transform:scale(.92); opacity:.42; } to { transform:scale(1.04); opacity:.92; } }

@media (max-width:900px){
  .world-head { padding-top:105px; }
  .world-readout { display:none; }
  .world-map { width:92vw; height:54vh; top:58%; }
  .world-node { width:150px; }
  .world-node strong { font-size:12px; }
  .world-bottom { grid-template-columns:1fr auto; gap:14px; }
  .world-bottom > p { display:none; }
}
@media (max-width:640px){
  .world-head { padding:100px 20px 0; }
  .world-head h1 { font-size:54px; }
  .world-lead { max-width:340px; font-size:11px; }
  .world-map { height:58vh; }
  /* Keep the rotating rings genuinely circular on phones instead of stretching with the map container. */
  .world-orbit { transform:translate(-50%,-50%); }
  .orbit-a { width:min(80vw,312px); height:min(80vw,312px); }
  .orbit-b { width:min(48vw,188px); height:min(48vw,188px); }
  .world-core { width:96px; height:96px; }
  .world-core i { inset:15px; }
  .world-node { width:146px; padding-left:20px; }
  .world-node small { font-size:5px; }
  .world-node strong { font-size:11px; letter-spacing:.10em; }
  .world-node em { font-size:5px; }
  .node-signals strong { max-width:126px; line-height:1.1; }
  .node-releases { left:0; top:30%; }
  .node-lore { left:0; top:72%; }
  .node-visuals { right:0; left:auto; top:30%; }
  .node-places { right:0; top:10%; }
  .node-signals { right:0; top:72%; }
  .node-characters { left:50%; bottom:0; width:150px; transform:translateX(-50%); }
  .world-bottom { left:20px; right:20px; bottom:15px; }
  .world-detail { width:100%; padding:110px 24px 35px; background:rgba(3,5,10,.95); border-left:0; }
}
@media (max-width:390px){
  .world-core-logo { width:82%; max-height:70%; }
  .world-node { width:142px; }
}

/* V13.1 â€” protected navigation zones for THE WORLD */
.world-head { pointer-events:none; }
.world-head * { pointer-events:none; }
.node-characters:hover { transform:translateX(-50%) translateY(-4px) scale(1.02); }
@media (max-width:900px){
  .world-head { padding-top:105px; }
  .world-map { top:59%; }
  .node-releases { left:0; top:32%; }
  .node-visuals { right:0; left:auto; top:32%; }
}
@media (max-width:640px){
  .world-map { top:60%; }
  .node-releases { left:0; top:34%; }
  .node-visuals { right:0; left:auto; top:34%; }
  .node-places { right:0; top:14%; }
}

/* V14 â€” RELEASE + VISUAL ARCHIVES */
.world-archive { position:absolute; inset:0; z-index:12; opacity:0; pointer-events:none; background:
  radial-gradient(circle at 18% 18%, rgba(85,31,138,.14), transparent 28%),
  radial-gradient(circle at 82% 72%, rgba(40,139,184,.10), transparent 30%),
  linear-gradient(180deg, rgba(3,5,10,.97), rgba(2,4,9,.99)); transform:scale(1.015); overflow:hidden; }
.world-archive.open { opacity:1; pointer-events:auto; }
.world-archive::before { content:""; position:absolute; inset:0; background:
  linear-gradient(rgba(103,215,255,.055) 1px, transparent 1px),
  linear-gradient(90deg, rgba(103,215,255,.045) 1px, transparent 1px); background-size:68px 68px; opacity:.65; transform:perspective(1200px) rotateX(66deg) translateY(28%); transform-origin:50% 100%; }
.world-archive::after { content:""; position:absolute; inset:0; pointer-events:none; background:radial-gradient(circle at 50% 42%, transparent 0 34%, rgba(0,0,0,.28) 72%, rgba(0,0,0,.75) 100%); }
.archive-shell { position:relative; z-index:2; width:min(1380px,90vw); height:100%; margin:0 auto; padding:112px 0 42px; display:flex; flex-direction:column; }
.archive-topline { display:flex; justify-content:space-between; gap:36px; align-items:flex-start; }
.archive-kicker { margin:0 0 10px; font-size:8px; letter-spacing:.48em; color:#c45cff; }
.archive-topline h2 { margin:0; font-size:clamp(50px,8vw,108px); line-height:.82; letter-spacing:-.055em; }
.archive-topline h2 em { font-style:normal; color:#70dcff; text-shadow:0 0 32px rgba(112,220,255,.16); }
.archive-lead { max-width:620px; margin:18px 0 0; font-size:13px; line-height:1.75; color:rgba(238,246,255,.55); }
.archive-readout { min-width:255px; padding:9px 0 0 22px; border-left:1px solid rgba(238,246,255,.12); text-align:right; }
.archive-readout span,.archive-readout small { display:block; font-size:7px; letter-spacing:.25em; color:rgba(238,246,255,.30); }
.archive-readout strong { display:block; margin:10px 0 8px; font-size:9px; letter-spacing:.20em; font-weight:500; }
.archive-readout strong b { display:inline-block; width:6px; height:6px; margin-right:8px; border-radius:50%; background:#6ee8a9; box-shadow:0 0 12px rgba(110,232,169,.6); }
.release-archive-grid { flex:1; display:grid; grid-template-columns:repeat(3,1fr); grid-template-rows:repeat(2,minmax(0,1fr)); gap:14px; margin:38px 0 22px; min-height:0; }
.world-release-card { position:relative; overflow:hidden; min-height:190px; border:1px solid rgba(238,246,255,.12); background:rgba(6,9,15,.52); color:#fff; text-align:left; cursor:pointer; padding:20px; transition:transform .35s cubic-bezier(.2,.8,.2,1), border-color .35s ease, box-shadow .35s ease; }
.world-release-card::before { content:""; position:absolute; inset:-15%; background:radial-gradient(circle at 74% 20%, var(--release-accent, #62d7ff), transparent 37%), linear-gradient(140deg, rgba(255,255,255,.025), transparent 64%); opacity:.16; }
.world-release-card::after { content:""; position:absolute; right:-15%; bottom:-48%; width:75%; aspect-ratio:1; border:1px solid color-mix(in srgb, var(--release-accent,#62d7ff) 36%, transparent); border-radius:50%; box-shadow:0 0 70px color-mix(in srgb, var(--release-accent,#62d7ff) 8%, transparent); }
.world-release-card:hover { transform:translateY(-6px) scale(1.012); border-color:color-mix(in srgb, var(--release-accent,#62d7ff) 55%, white 5%); box-shadow:0 20px 80px rgba(0,0,0,.34), 0 0 45px color-mix(in srgb, var(--release-accent,#62d7ff) 9%, transparent); }
.world-release-card > * { position:relative; z-index:2; }
.world-release-card .wrc-sigil { position:absolute; top:18px; left:20px; font-size:8px; letter-spacing:.22em; color:color-mix(in srgb, var(--release-accent,#62d7ff) 76%, white); }
.world-release-card small { position:absolute; top:18px; right:20px; font-size:7px; letter-spacing:.25em; color:rgba(255,255,255,.35); }
.world-release-card strong { position:absolute; left:20px; bottom:48px; font-size:clamp(24px,3.1vw,46px); line-height:.80; letter-spacing:-.04em; font-weight:760; }
.world-release-card em { position:absolute; left:20px; bottom:20px; font-style:normal; font-size:7px; letter-spacing:.22em; color:rgba(255,255,255,.34); }
.world-release-card i { position:absolute; right:20px; bottom:17px; font-style:normal; font-size:12px; color:var(--release-accent,#62d7ff); }
.release-blue { --release-accent:#63d9ff; background:linear-gradient(135deg,rgba(62,175,255,.10),rgba(3,7,13,.8)); }
.release-night { --release-accent:#a77aff; background:linear-gradient(135deg,rgba(109,73,189,.11),rgba(4,5,12,.82)); }
.release-electric { --release-accent:#4fe4ff; background:linear-gradient(135deg,rgba(62,198,220,.10),rgba(2,9,13,.82)); }
.release-purple { --release-accent:#d25cff; background:linear-gradient(135deg,rgba(203,71,255,.11),rgba(10,3,12,.83)); }
.release-amber { --release-accent:#f3c56d; background:linear-gradient(135deg,rgba(243,195,109,.11),rgba(12,8,3,.84)); }
.release-green { --release-accent:#73efae; background:linear-gradient(135deg,rgba(62,194,132,.10),rgba(3,10,8,.84)); }
.world-release-card.is-live { box-shadow:inset 0 0 0 1px rgba(243,197,109,.09); }
.world-release-card.incoming { border-style:dashed; }
.archive-bottomline { display:flex; justify-content:space-between; align-items:center; gap:20px; font-size:7px; letter-spacing:.26em; color:rgba(238,246,255,.30); }
.archive-action { border:0; background:none; color:rgba(238,246,255,.72); cursor:pointer; font:inherit; letter-spacing:inherit; }
.archive-action:hover { color:#fff; }
.archive-close { position:absolute; z-index:5; right:5vw; top:112px; border:0; background:none; color:rgba(238,246,255,.50); cursor:pointer; font:inherit; font-size:8px; letter-spacing:.24em; }
.archive-back { position:absolute; z-index:6; left:5vw; top:112px; border:1px solid rgba(238,246,255,.16); background:rgba(6,8,14,.28); color:rgba(238,246,255,.72); cursor:pointer; font:inherit; font-size:8px; letter-spacing:.24em; padding:10px 14px; backdrop-filter:blur(8px); transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease; }
.archive-back:hover { background:rgba(255,255,255,.07); border-color:rgba(238,246,255,.34); color:#fff; transform:translateX(-2px); }
.archive-close:hover { color:#fff; }
.visual-archive-grid { flex:1; display:grid; grid-template-columns:repeat(4,1fr); grid-template-rows:repeat(2,minmax(0,1fr)); gap:10px; margin:36px 0 22px; min-height:0; }
.visual-card { position:relative; overflow:hidden; border:1px solid rgba(238,246,255,.12); min-height:180px; padding:16px; text-align:left; background:#05070c; color:#fff; cursor:pointer; transition:transform .35s ease,border-color .35s ease,filter .35s ease,box-shadow .35s ease; }
.visual-card::before,.visual-viewer-art::before { content:""; position:absolute; inset:-8%; background-size:cover; background-position:center; transform:scale(1.04); transition:transform .8s cubic-bezier(.2,.8,.2,1), filter .8s ease; }
.visual-card::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(3,5,10,.18),rgba(3,5,10,.88)); }
.visual-card:hover { transform:translateY(-5px); border-color:rgba(255,255,255,.26); box-shadow:0 18px 70px rgba(0,0,0,.32); }
.visual-card:hover::before { transform:scale(1.10); }
.visual-card > * { position:relative; z-index:2; }
.visual-card span { font-size:7px; letter-spacing:.22em; color:rgba(255,255,255,.38); }
.visual-card strong { display:block; margin-top:auto; position:absolute; left:16px; bottom:34px; font-size:22px; letter-spacing:-.03em; }
.visual-card em { position:absolute; left:16px; bottom:15px; font-size:6px; letter-spacing:.20em; font-style:normal; color:rgba(255,255,255,.38); }
.visual-night::before,.visual-viewer-art.visual-night::before { background:
  radial-gradient(circle at 78% 26%, rgba(51,212,255,.95), transparent 13%),
  linear-gradient(115deg,rgba(9,11,25,.92) 0 50%,rgba(115,20,135,.45) 60%,rgba(10,12,20,.96) 100%),
  repeating-linear-gradient(102deg,transparent 0 34px,rgba(255,255,255,.05) 35px 36px); }
.visual-sunset::before,.visual-viewer-art.visual-sunset::before { background:
  radial-gradient(circle at 70% 46%, rgba(255,190,83,.96), transparent 16%),
  linear-gradient(150deg,#1c0710,#8a2c36 44%,#ec8b44 66%,#21100a 100%); }
.visual-indigo::before,.visual-viewer-art.visual-indigo::before { background:
  radial-gradient(circle at 42% 38%, rgba(203,92,255,.80), transparent 13%),
  radial-gradient(circle at 60% 62%, rgba(51,215,255,.28), transparent 22%),
  linear-gradient(140deg,#050611,#250d44 55%,#02040a); }
.visual-tunnel::before,.visual-viewer-art.visual-tunnel::before { background:
  repeating-linear-gradient(90deg,rgba(255,123,51,.80) 0 2px,transparent 2px 64px),
  linear-gradient(180deg,#090b0e,#342018 48%,#050609); }
.visual-mirror::before,.visual-viewer-art.visual-mirror::before { background:
  linear-gradient(90deg,rgba(77,188,255,.16),transparent 42%),
  linear-gradient(140deg,#10131d 0 33%,#0a0d12 34% 66%,#141321 67%),
  linear-gradient(180deg,transparent 48%,rgba(198,80,255,.18) 49%,transparent 51%); }
.visual-beach::before,.visual-viewer-art.visual-beach::before { background:
  linear-gradient(180deg,#8bd4ef 0 43%,#314d6e 44% 62%,#0a1820 63% 100%),
  radial-gradient(circle at 53% 42%,#f5cd8a,transparent 10%); }
.visual-violet::before,.visual-viewer-art.visual-violet::before { background:
  radial-gradient(circle at 28% 28%,rgba(223,94,255,.92),transparent 14%),
  linear-gradient(140deg,#08050e,#3b0d54 45%,#020309); }
.visual-static::before,.visual-viewer-art.visual-static::before { background:
  repeating-linear-gradient(0deg,rgba(255,255,255,.07) 0 1px,transparent 1px 4px),
  repeating-linear-gradient(90deg,rgba(86,215,255,.08) 0 2px,transparent 2px 19px),
  radial-gradient(circle at 52% 50%,rgba(255,255,255,.14),transparent 20%),#03060b; }
.visual-viewer { position:absolute; inset:0; z-index:12; opacity:0; pointer-events:none; background:rgba(2,4,9,.90); backdrop-filter:blur(16px); }
.visual-viewer.open { opacity:1; pointer-events:auto; }
.visual-viewer-backdrop { position:absolute; inset:0; background:radial-gradient(circle at 65% 45%,rgba(79,210,255,.11),transparent 30%),rgba(2,4,9,.70); }
.visual-viewer-art { position:absolute; left:7vw; top:16vh; width:min(57vw,860px); height:min(64vh,610px); overflow:hidden; border:1px solid rgba(238,246,255,.15); box-shadow:0 30px 120px rgba(0,0,0,.48); background:#06080e; }
.visual-viewer-art::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 50%,rgba(2,4,9,.18) 100%),repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 4px); pointer-events:none; }
.visual-viewer-copy { position:absolute; right:7vw; top:22vh; width:min(30vw,430px); }
.viewer-kicker { margin:0 0 10px; font-size:8px; letter-spacing:.44em; color:#c45cff; }
.visual-viewer-copy h3 { margin:0; font-size:clamp(36px,5vw,76px); line-height:.86; letter-spacing:-.04em; }
.visual-viewer-copy > p:not(.viewer-kicker) { margin:20px 0 28px; color:rgba(238,246,255,.58); font-size:13px; line-height:1.8; }
.viewer-meta { border-top:1px solid rgba(238,246,255,.12); padding-top:15px; }
.viewer-meta span,.viewer-meta strong { display:block; font-size:7px; letter-spacing:.24em; }
.viewer-meta span { color:rgba(238,246,255,.28); margin-bottom:7px; }
.viewer-meta strong { color:rgba(238,246,255,.64); font-weight:500; }
.viewer-close { position:absolute; top:28px; right:5vw; border:0; background:none; color:rgba(238,246,255,.54); cursor:pointer; font:inherit; font-size:8px; letter-spacing:.24em; }
.viewer-close:hover { color:#fff; }

@media (max-width:1000px){
  .archive-topline{padding-right:110px}
  .archive-readout{display:none}
  .release-archive-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,minmax(0,1fr))}
  .visual-archive-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(4,minmax(0,1fr))}
  .visual-viewer-art{left:5vw;top:18vh;width:55vw;height:52vh}
  .visual-viewer-copy{right:5vw;top:18vh;width:31vw}
}
@media (max-width:680px){
  .archive-shell{width:92vw;padding-top:98px;padding-bottom:24px}
  .archive-topline{display:block;padding-right:60px}
  .archive-topline h2{font-size:50px}
  .archive-lead{font-size:11px;max-width:340px}
  .archive-close{top:98px;right:20px}
  .archive-back{top:96px;left:20px;font-size:7px;padding:9px 11px}
  .release-archive-grid{margin-top:24px;grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,minmax(125px,1fr));gap:8px}
  .world-release-card{padding:13px;min-height:0}
  .world-release-card .wrc-sigil{top:12px;left:13px;font-size:7px}
  .world-release-card small{top:12px;right:13px;font-size:5px}
  .world-release-card strong{left:13px;bottom:34px;font-size:22px}
  .world-release-card em{left:13px;bottom:13px;font-size:5px}
  .world-release-card i{right:13px;bottom:10px}
  .archive-bottomline{font-size:5px}
  .visual-archive-grid{margin-top:24px;grid-template-columns:1fr 1fr;grid-template-rows:repeat(4,minmax(110px,1fr));gap:7px}
  .visual-card{min-height:0;padding:12px}
  .visual-card strong{left:12px;bottom:31px;font-size:16px}
  .visual-card em{left:12px;bottom:12px;font-size:4px}
  .visual-viewer-art{left:5vw;top:14vh;width:90vw;height:48vh}
  .visual-viewer-copy{left:6vw;right:6vw;top:65vh;width:auto}
  .visual-viewer-copy h3{font-size:42px}
  .visual-viewer-copy > p:not(.viewer-kicker){font-size:11px;margin:14px 0 18px}
  .viewer-close{top:24px;right:20px}
}

/* V15 â€” PLACES / THE UNDERPASS */
.world-places-archive { z-index: 9; }
.places-shell { position:absolute; inset:0; width:min(1120px,88vw); height:100%; margin:auto; padding:140px 0 44px; display:flex; flex-direction:column; }
.places-topline { display:flex; justify-content:space-between; gap:30px; }
.places-topline h2 { margin:0; font-size:clamp(56px,8vw,98px); line-height:.82; letter-spacing:-.055em; }
.places-topline h2 em { color:#79e0b0; font-style:normal; text-shadow:0 0 28px rgba(121,224,176,.14); }
.places-lead { max-width:640px; margin:18px 0 0; color:rgba(238,246,255,.54); font-size:13px; line-height:1.75; }
.places-readout { min-width:230px; padding-top:7px; text-align:right; }
.places-readout span,.places-readout small { display:block; font-size:7px; letter-spacing:.24em; color:rgba(238,246,255,.32); }
.places-readout strong { display:block; margin-top:9px; font-size:9px; letter-spacing:.2em; font-weight:500; }
.places-readout strong b { display:inline-block; width:6px; height:6px; margin-right:7px; border-radius:50%; background:#6ee8a9; box-shadow:0 0 12px rgba(110,232,169,.65); }
.places-readout small { margin-top:9px; font-size:6px; }
.places-grid { flex:1; display:grid; grid-template-columns:1.12fr 1fr 1fr; gap:12px; align-items:stretch; margin:44px 0 24px; min-height:0; }
.place-card { position:relative; overflow:hidden; min-height:300px; border:1px solid rgba(238,246,255,.12); background:#05070c; color:#fff; text-align:left; cursor:pointer; transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease; }
.place-card::before { content:""; position:absolute; inset:-8%; background-size:cover; background-position:center; transform:scale(1.02); transition:transform .8s cubic-bezier(.2,.8,.2,1), filter .8s ease; }
.place-card::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(3,5,10,.10),rgba(3,5,10,.92)); }
.place-card:hover { transform:translateY(-7px); border-color:rgba(255,255,255,.30); box-shadow:0 25px 90px rgba(0,0,0,.38); }
.place-card:hover::before { transform:scale(1.10); }
.place-card > * { position:relative; z-index:2; }
.place-underpass { --place:#f09a58; }
.place-sunset { --place:#f3b35e; }
.place-night { --place:#62d7ff; }
.place-underpass::before { background-image: linear-gradient(180deg,rgba(2,4,10,.08),rgba(2,4,10,.64)), url("../assets/thumb-take-it-easy.jpg"); background-size:cover; background-position:center; }
.place-sunset::before { background-image: linear-gradient(180deg,rgba(2,4,10,.08),rgba(2,4,10,.56)), url("../assets/thumb-dont-fall-for-me-v2.jpg"); background-size:cover; background-position:center; }
.place-night::before { background-image: linear-gradient(180deg,rgba(2,4,10,.08),rgba(2,4,10,.56)), url("../assets/thumb-bad-decisions.jpg"); background-size:cover; background-position:center; }
.place-index { position:absolute; top:18px; left:20px; font-size:8px; letter-spacing:.23em; color:var(--place); }
.place-status { position:absolute; top:17px; right:18px; font-size:7px; letter-spacing:.22em; color:rgba(255,255,255,.44); }
.place-status b { display:inline-block; width:6px; height:6px; margin-right:6px; border-radius:50%; background:var(--place); box-shadow:0 0 12px var(--place); }
.place-card strong { position:absolute; left:20px; bottom:66px; font-size:clamp(28px,3.2vw,46px); line-height:.82; letter-spacing:-.045em; font-weight:760; }
.place-card em { position:absolute; left:20px; bottom:34px; font-style:normal; font-size:7px; letter-spacing:.20em; color:rgba(255,255,255,.38); }
.place-card i { position:absolute; right:18px; bottom:30px; font-style:normal; font-size:8px; letter-spacing:.16em; color:var(--place); }
.places-bottomline { display:flex; justify-content:space-between; gap:20px; font-size:7px; letter-spacing:.24em; color:rgba(238,246,255,.28); }

.place-experience { position:absolute; inset:0; z-index:16; opacity:0; pointer-events:none; overflow:hidden; background:#020407; }
.place-experience.open { opacity:1; pointer-events:auto; }
.underpass-sky { position:absolute; inset:-8%; background:
  radial-gradient(ellipse at 62% 38%,rgba(255,174,102,.24),transparent 22%),
  radial-gradient(ellipse at 50% 28%,rgba(93,114,133,.20),transparent 34%),
  linear-gradient(180deg,#0a0d12 0%,#14171b 42%,#262223 68%,#0a0b0f 100%); transform:scale(1.04); }
.underpass-tunnel { display:none !important; position:absolute; left:10%; right:10%; top:8%; height:64%; border-top:1px solid rgba(255,186,119,.16); background:
  linear-gradient(180deg,rgba(14,16,19,.12),rgba(14,16,19,.74) 52%,rgba(5,7,10,.94) 100%),
  repeating-linear-gradient(90deg,rgba(255,174,104,.06) 0 2px,transparent 2px 88px); clip-path:polygon(7% 0,93% 0,100% 100%,0 100%); box-shadow:inset 0 -90px 110px rgba(0,0,0,.75); }
.underpass-columns { position:absolute; inset:13% 7% 14% 7%; background:
  linear-gradient(90deg,transparent 0 7%,rgba(255,255,255,.06) 7% 8%,transparent 8% 21%,rgba(255,255,255,.05) 21% 22%,transparent 22% 78%,rgba(255,255,255,.05) 78% 79%,transparent 79% 93%,rgba(255,255,255,.05) 93% 94%,transparent 94%),
  linear-gradient(180deg,transparent 62%,rgba(255,147,84,.08) 63%,transparent 64%); opacity:.55; }
.underpass-road { position:absolute; left:-5%; right:-5%; bottom:-8%; height:46%; background:
  linear-gradient(180deg,rgba(3,5,7,.2),rgba(2,3,5,.98)),
  repeating-linear-gradient(96deg,transparent 0 90px,rgba(255,255,255,.04) 91px 93px),
  linear-gradient(104deg,rgba(255,173,102,.14),transparent 30% 68%,rgba(93,216,255,.08)); clip-path:polygon(16% 0,84% 0,100% 100%,0 100%); transform:perspective(900px) rotateX(54deg); transform-origin:50% 100%; }
.underpass-light { position:absolute; width:9px; height:160px; top:13%; background:linear-gradient(180deg,rgba(255,196,132,.98),rgba(255,127,58,.42),transparent); filter:blur(.2px); opacity:.78; box-shadow:0 0 26px rgba(255,146,71,.44); animation:underpassFlicker 5.4s ease-in-out infinite; }
.light-one { left:33%; transform:rotate(18deg); }
.light-two { left:50%; top:9%; height:190px; transform:rotate(0deg); animation-delay:.8s; }
.light-three { right:31%; transform:rotate(-18deg); animation-delay:1.7s; }
.underpass-puddle { position:absolute; border-radius:50%; background:radial-gradient(ellipse,rgba(83,194,220,.12),rgba(255,142,76,.08) 34%,transparent 70%); filter:blur(3px); mix-blend-mode:screen; }
.puddle-a { width:360px; height:70px; left:12%; bottom:20%; transform:rotate(-8deg); }
.puddle-b { width:300px; height:60px; right:14%; bottom:17%; transform:rotate(7deg); }
.underpass-fog { position:absolute; left:-15%; width:130%; height:22%; background:radial-gradient(ellipse,rgba(185,205,218,.09),transparent 65%); filter:blur(20px); animation:fogDrift 16s ease-in-out infinite alternate; pointer-events:none; }
.fog-a { bottom:26%; }
.fog-b { bottom:36%; opacity:.55; animation-duration:22s; animation-direction:alternate-reverse; }
.underpass-grain { position:absolute; inset:0; background:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 4px),linear-gradient(90deg,transparent 0 50%,rgba(98,208,255,.03) 50% 50.1%,transparent 50.1%); mix-blend-mode:screen; opacity:.7; pointer-events:none; }
.underpass-topbar { position:absolute; z-index:5; top:32px; left:5vw; right:5vw; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; }
.place-back,.place-home { border:1px solid rgba(238,246,255,.13); background:rgba(3,5,10,.24); backdrop-filter:blur(10px); color:rgba(238,246,255,.70); cursor:pointer; padding:10px 14px; font:inherit; font-size:8px; letter-spacing:.24em; transition:.2s ease; }
.place-back { justify-self:start; }
.place-home { justify-self:end; }
.place-back:hover,.place-home:hover { color:#fff; border-color:rgba(238,246,255,.34); background:rgba(255,255,255,.05); }
.place-live { justify-self:center; font-size:7px; letter-spacing:.22em; color:rgba(238,246,255,.56); }
.place-live b { display:inline-block; width:6px; height:6px; margin-right:7px; border-radius:50%; background:#6ee8a9; box-shadow:0 0 12px rgba(110,232,169,.68); }
.underpass-copy { position:absolute; z-index:5; left:6vw; top:27%; max-width:620px; }
.place-kicker { margin:0 0 10px; font-size:8px; letter-spacing:.42em; color:#f0a56d; }
.underpass-copy h2 { margin:0; font-size:clamp(48px,8vw,106px); line-height:.82; letter-spacing:-.06em; text-shadow:0 14px 48px rgba(0,0,0,.45); }
.underpass-copy h2 em { color:#7bd5ff; font-style:normal; }
.place-description { max-width:500px; margin:20px 0 0; font-size:13px; line-height:1.82; color:rgba(238,246,255,.56); }
.underpass-coordinate { position:absolute; z-index:5; right:6vw; top:29%; text-align:right; }
.underpass-coordinate span,.underpass-coordinate small { display:block; font-size:7px; letter-spacing:.24em; color:rgba(238,246,255,.30); }
.underpass-coordinate strong { display:block; margin:8px 0; font-size:28px; letter-spacing:.08em; font-weight:500; color:rgba(255,255,255,.82); }
.underpass-hotspot { position:absolute; z-index:6; width:60px; height:60px; border:0; background:none; cursor:pointer; color:#f3a268; }
.hotspot-phone { left:34%; bottom:29%; }
.hotspot-symbol { right:27%; top:45%; color:#71d7ff; }
.hotspot-exit { right:7%; bottom:8%; color:#79e0b0; }
.hotspot-ring { position:absolute; inset:10px; border:1px solid currentColor; border-radius:50%; opacity:.4; animation:hotspotPulse 2.4s ease-in-out infinite; }
.hotspot-dot { position:absolute; left:25px; top:25px; width:10px; height:10px; border-radius:50%; background:currentColor; box-shadow:0 0 20px currentColor; }
.underpass-hotspot em { position:absolute; left:50px; top:26px; white-space:nowrap; font-style:normal; font-size:6px; letter-spacing:.20em; color:rgba(238,246,255,.36); }
.underpass-inspect { position:absolute; z-index:10; top:15%; right:5vw; width:min(390px,86vw); padding:28px; background:linear-gradient(180deg,rgba(7,10,14,.84),rgba(3,5,9,.96)); border:1px solid rgba(238,246,255,.13); box-shadow:0 25px 90px rgba(0,0,0,.42); backdrop-filter:blur(16px); opacity:0; transform:translateY(-12px); pointer-events:none; transition:.32s ease; }
.underpass-inspect.open { opacity:1; transform:translateY(0); pointer-events:auto; }
.underpass-inspect-close { position:absolute; right:18px; top:16px; border:0; background:none; color:rgba(238,246,255,.46); cursor:pointer; font:inherit; font-size:7px; letter-spacing:.22em; }
.underpass-inspect h3 { margin:0; font-size:36px; line-height:.9; letter-spacing:-.035em; }
.underpass-inspect p:not(.place-kicker) { margin:18px 0 24px; color:rgba(238,246,255,.56); font-size:12px; line-height:1.75; }
.underpass-inspect-rule { width:130px; height:1px; margin-bottom:15px; background:linear-gradient(90deg,#f0a56d,transparent); }
.underpass-inspect span { font-size:6px; letter-spacing:.20em; color:rgba(238,246,255,.30); }
.underpass-footer { position:absolute; z-index:6; left:6vw; right:6vw; bottom:24px; display:grid; grid-template-columns:auto 1fr auto; gap:30px; align-items:end; font-size:7px; letter-spacing:.22em; color:rgba(238,246,255,.32); }
.underpass-footer b { display:inline-block; width:6px; height:6px; margin-right:6px; border-radius:50%; background:#f1b56f; box-shadow:0 0 12px rgba(241,181,111,.55); }
.underpass-footer span:nth-child(2) { text-align:center; }
.underpass-footer button { border:0; background:none; color:rgba(238,246,255,.62); cursor:pointer; font:inherit; letter-spacing:.22em; }
.underpass-footer button:hover { color:#fff; }
@keyframes underpassFlicker { 0%,6%,12%,100%{opacity:.74} 8%{opacity:.36} 10%{opacity:.88} 61%{opacity:.74} 63%{opacity:.55} 64%{opacity:.82} }
@keyframes fogDrift { from{transform:translateX(-4%) scaleY(1)} to{transform:translateX(4%) scaleY(1.08)} }
@keyframes hotspotPulse { 0%,100%{transform:scale(.96);opacity:.24} 50%{transform:scale(1.06);opacity:.62} }

@media (max-width:1000px){
  .places-shell{width:90vw;padding-top:126px}
  .places-readout{display:none}
  .places-grid{grid-template-columns:1fr 1fr;grid-template-rows:1.2fr 1fr;}
  .place-underpass{grid-row:span 2;}
  .underpass-copy{top:25%;max-width:58vw}
  .underpass-coordinate{top:24%}
  .hotspot-phone{left:31%;bottom:27%}
  .hotspot-symbol{right:25%;top:48%}
}
@media (max-width:680px){
  .places-shell{width:92vw;padding-top:104px;padding-bottom:24px}
  .places-topline h2{font-size:50px}
  .places-lead{font-size:11px;max-width:340px}
  .places-grid{margin-top:26px;grid-template-columns:1fr 1fr;grid-template-rows:1.05fr .95fr;gap:8px}
  .place-card{min-height:150px}
  .place-underpass{grid-row:span 2}
  .place-index{top:12px;left:13px;font-size:7px}
  .place-status{top:12px;right:12px;font-size:5px}
  .place-card strong{left:13px;bottom:48px;font-size:24px}
  .place-card em{left:13px;bottom:22px;font-size:4px}
  .place-card i{right:12px;bottom:18px;font-size:6px}
  .places-bottomline{font-size:5px}
  .places-topline{padding-right:50px}
  .places-shell .archive-back{top:74px;left:0;font-size:6px;padding:8px 10px}
  .places-shell .archive-close{top:74px;right:0}
  .underpass-topbar{left:20px;right:20px;top:20px}
  .place-back,.place-home{padding:8px 9px;font-size:6px;letter-spacing:.18em}
  .place-live{font-size:5px}
  .underpass-copy{left:20px;right:20px;top:23%;max-width:none}
  .underpass-copy h2{font-size:54px}
  .place-description{font-size:10px;max-width:330px;margin-top:14px}
  .underpass-coordinate{right:20px;top:42%;text-align:right}
  .underpass-coordinate strong{font-size:20px}
  .underpass-hotspot em{display:none}
  .hotspot-phone{left:26%;bottom:26%}
  .hotspot-symbol{right:22%;top:52%}
  .hotspot-exit{right:5%;bottom:12%}
  .underpass-footer{left:20px;right:20px;bottom:14px;grid-template-columns:1fr auto;gap:8px 12px;font-size:5px}
  .underpass-footer span:nth-child(2){display:none}
  .underpass-footer button{grid-column:2}
  .underpass-inspect{top:14vh;right:20px;left:20px;width:auto;padding:22px}
  .underpass-inspect h3{font-size:30px}
}

/* V16 â€” COASTING SUNSET: the open, warm counterpoint to THE UNDERPASS */
.sunset-experience{position:absolute;inset:0;z-index:30;overflow:hidden;opacity:0;pointer-events:none;background:#07111a;color:#f5f7fb;}
.sunset-experience.open{opacity:1;pointer-events:auto}
.sunset-sky{position:absolute;inset:0;background:linear-gradient(180deg,#172e4a 0%,#5b6482 35%,#d08a72 60%,#f0ad69 74%,#8d5863 100%);transform:scale(1.02);animation:sunsetDrift 18s ease-in-out infinite alternate}
.sunset-horizon{display:none}
.sunset-water{display:none}
.sunset-water:before{content:"";position:absolute;inset:5% 0 0;background:repeating-linear-gradient(180deg,rgba(255,255,255,.12) 0 1px,transparent 1px 11px);opacity:.22;transform:skewY(-1deg);animation:sunsetRipples 7s ease-in-out infinite alternate}
.sunset-shore{display:none}
.sunset-sun{display:none}
.sunset-cloud{position:absolute;height:18%;width:42%;border-radius:50%;background:rgba(255,228,214,.08);filter:blur(24px);animation:cloudDrift 24s linear infinite}
.cloud-a{left:4%;top:26%}.cloud-b{right:-8%;top:39%;width:36%;animation-duration:31s;animation-direction:reverse}
.sunset-fog{position:absolute;inset:58% -10% 0;background:linear-gradient(180deg,transparent,rgba(208,176,161,.09),transparent);filter:blur(14px);animation:fogFloat 9s ease-in-out infinite alternate}
.sunset-grain{position:absolute;inset:0;opacity:.16;background:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 4px);mix-blend-mode:screen;pointer-events:none}
.sunset-topbar{position:absolute;left:0;right:0;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:30px 5vw}
.sunset-copy{position:absolute;left:7vw;top:22%;z-index:4;max-width:560px;text-shadow:0 3px 22px rgba(0,0,0,.25)}
.sunset-copy h2{margin:0;font-size:clamp(48px,8vw,110px);line-height:.84;letter-spacing:-.045em}.sunset-copy h2 em{font-style:normal;color:#ffe0a8;text-shadow:0 0 28px rgba(255,205,143,.22)}
.sunset-copy .place-description{max-width:480px;color:rgba(255,255,255,.7)}
.sunset-coordinate{position:absolute;right:6vw;top:23%;z-index:4;text-align:right}.sunset-coordinate span{display:block;font-size:7px;letter-spacing:.3em;color:rgba(255,255,255,.45)}.sunset-coordinate strong{display:block;margin-top:7px;font-size:18px;letter-spacing:.14em}.sunset-coordinate small{display:block;margin-top:6px;font-size:6px;letter-spacing:.18em;color:rgba(255,255,255,.38)}
.sunset-hotspot{position:absolute;z-index:5;width:150px;height:70px;border:0;background:none;color:#fff;cursor:pointer;text-align:left;padding-left:32px}.sunset-hotspot .hotspot-ring{position:absolute;left:0;top:0;width:26px;height:26px;border:1px solid rgba(255,225,173,.8);border-radius:50%;box-shadow:0 0 24px rgba(255,202,137,.35);animation:hotspotPulse 2.4s ease-in-out infinite}.sunset-hotspot .hotspot-dot{position:absolute;left:9px;top:9px;width:8px;height:8px;border-radius:50%;background:#fff1cb;box-shadow:0 0 12px #ffd08b}.sunset-hotspot em{font-style:normal;font-size:6px;letter-spacing:.2em;color:rgba(255,255,255,.55)}.sunset-phone{left:39%;top:70%}.sunset-marker{left:71%;top:64%}.sunset-exit{right:5vw;bottom:14%;width:150px}
.sunset-inspect{position:absolute;right:0;top:0;bottom:0;width:min(440px,88vw);z-index:10;padding:130px 6vw 40px 44px;background:linear-gradient(90deg,rgba(7,17,26,.08),rgba(7,17,26,.94) 25%);border-left:1px solid rgba(255,255,255,.1);transform:translateX(101%);transition:transform .45s cubic-bezier(.2,.8,.2,1);pointer-events:none}.sunset-inspect.open{transform:translateX(0);pointer-events:auto}.sunset-inspect h3{font-size:42px;letter-spacing:.04em;margin:10px 0}.sunset-inspect p{color:rgba(255,255,255,.62);line-height:1.7}.sunset-footer{position:absolute;left:6vw;right:6vw;bottom:25px;z-index:5;display:flex;justify-content:space-between;align-items:center;font-size:7px;letter-spacing:.22em;color:rgba(255,255,255,.46)}.sunset-footer button{border:0;background:none;color:rgba(255,255,255,.62);font:inherit;cursor:pointer}.sunset-footer b{display:inline-block;width:6px;height:6px;border-radius:50%;background:#9ff0c3;box-shadow:0 0 12px rgba(159,240,195,.6);margin-right:7px}
@keyframes sunsetRipples{to{transform:translateY(7px) scaleX(1.03);opacity:.32}}@keyframes sunsetSun{to{transform:translateY(8px);filter:brightness(1.05)}}@keyframes cloudDrift{from{transform:translateX(-3%)}to{transform:translateX(8%)}}@keyframes fogFloat{to{transform:translate3d(2%, -5px,0) scale(1.04)}}@keyframes sunsetDrift{from{transform:scale(1.02) translate3d(0,0,0)}to{transform:scale(1.07) translate3d(-1.5%,-.5%,0)}}
@media(max-width:820px){.sunset-copy{left:7vw;top:19%;max-width:80vw}.sunset-coordinate{left:7vw;right:auto;top:42%;text-align:left}.sunset-sun{left:58%;top:45%}.sunset-phone{left:24%;top:70%}.sunset-marker{left:62%;top:64%}.sunset-exit{right:5vw;bottom:16%}.sunset-footer{flex-wrap:wrap;gap:12px}.sunset-footer span:nth-child(2){display:none}}

/* V16.2 â€” actual location experiences: cinematic artwork-backed scenes */
.underpass-sky,.sunset-sky{background-position:center;background-size:cover;background-repeat:no-repeat}
.underpass-sky{background-image:url('../assets/underpass-artwork.png')!important;}
.sunset-sky{background-image:url('../assets/dont-fall-for-me-bg-v2.jpg')!important;}
.night-experience{position:absolute;inset:0;z-index:30;overflow:hidden;opacity:0;pointer-events:none;background:#05070d;color:#f6f7fb}
.night-experience.open{opacity:1;pointer-events:auto}
.night-art{position:absolute;inset:0;background-image:url('../assets/night-district-bg-v4.png');background-size:cover;background-position:center;transform:scale(1.02);animation:nightDrift 18s ease-in-out infinite alternate}
.night-vignette{display:none}
.night-rain{position:absolute;inset:-20%;opacity:.24;background:repeating-linear-gradient(112deg,transparent 0 9px,rgba(255,255,255,.14) 10px 11px,transparent 12px 25px);animation:nightRain 1.1s linear infinite;pointer-events:none}
.night-grain{position:absolute;inset:0;opacity:.13;background:repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 4px);pointer-events:none}
.night-topbar{position:absolute;left:0;right:0;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:30px 5vw}
.night-copy{position:absolute;left:7vw;top:22%;z-index:4;max-width:620px;text-shadow:0 4px 26px rgba(0,0,0,.55)}
.night-copy h2{margin:0;font-size:clamp(48px,8vw,110px);line-height:.84;letter-spacing:-.045em}.night-copy h2 em{font-style:normal;color:#e8b8ff;text-shadow:0 0 28px rgba(205,92,255,.35)}
.night-copy .place-description{max-width:500px;color:rgba(255,255,255,.72)}
.night-coordinate{position:absolute;right:6vw;top:23%;z-index:4;text-align:right}.night-coordinate span{display:block;font-size:7px;letter-spacing:.3em;color:rgba(255,255,255,.48)}.night-coordinate strong{display:block;margin-top:7px;font-size:18px;letter-spacing:.14em}.night-coordinate small{display:block;margin-top:6px;font-size:6px;letter-spacing:.18em;color:rgba(255,255,255,.4)}
.night-hotspot{position:absolute;z-index:12;width:170px;height:52px;border:0;background:none;color:#fff;cursor:pointer;text-align:left;padding-left:38px}.night-hotspot .hotspot-ring{position:absolute;left:0;top:50%;width:28px;height:28px;border:1px solid rgba(227,151,255,.9);border-radius:50%;box-shadow:0 0 26px rgba(207,83,255,.42);transform:translateY(-50%);animation:hotspotPulse 2.2s ease-in-out infinite}.night-hotspot .hotspot-dot{position:absolute;left:50%;top:50%;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:9px solid currentColor;background:none;transform:translate(-35%,-50%);filter:drop-shadow(0 0 6px currentColor)}.night-hotspot em{font-style:normal;font-size:6px;letter-spacing:.2em;color:rgba(255,255,255,.62)}.night-mark{left:48%;top:49%}.night-phone{left:27%;top:70%}.night-exit{right:5vw;bottom:14%}
.night-inspect{position:absolute;right:0;top:0;bottom:0;width:min(440px,88vw);z-index:10;padding:130px 6vw 40px 44px;background:linear-gradient(90deg,rgba(5,7,13,.08),rgba(5,7,13,.95) 25%);border-left:1px solid rgba(255,255,255,.1);transform:translateX(101%);transition:transform .45s cubic-bezier(.2,.8,.2,1);pointer-events:none}.night-inspect.open{transform:translateX(0);pointer-events:auto}.night-inspect h3{font-size:42px;letter-spacing:.04em;margin:10px 0}.night-inspect p{color:rgba(255,255,255,.64);line-height:1.7}.night-footer{position:absolute;left:6vw;right:6vw;bottom:25px;z-index:5;display:flex;justify-content:space-between;align-items:center;font-size:7px;letter-spacing:.22em;color:rgba(255,255,255,.48)}.night-footer button{border:0;background:none;color:rgba(255,255,255,.65);font:inherit;cursor:pointer}.night-footer b{display:inline-block;width:6px;height:6px;border-radius:50%;background:#cf82ff;box-shadow:0 0 12px rgba(207,130,255,.7);margin-right:7px}
@keyframes nightDrift{from{transform:scale(1.02) translate3d(0,0,0)}to{transform:scale(1.07) translate3d(-1.5%,-.5%,0)}}@keyframes nightRain{to{transform:translate3d(-5%,8%,0)}}
@media(max-width:820px){.night-copy{left:7vw;top:19%;max-width:82vw}.night-copy h2{font-size:54px}.night-coordinate{left:7vw;right:auto;top:43%;text-align:left}.night-hotspot em{display:none}.night-signal{left:58%;top:54%}.night-phone{left:23%;top:70%}.night-exit{right:5vw;bottom:16%}.night-footer{left:20px;right:20px;flex-wrap:wrap;gap:12px}.night-footer span:nth-child(2){display:none}}


/* V18 â€” SIGNALS / LORE ARCHIVES */
.world-lore-archive::before,.world-signals-archive::before { opacity:.82; }
.world-lore-archive .signal-shell,.world-signals-archive .signal-shell { position:relative; z-index:2; width:min(1380px,90vw); height:100%; margin:0 auto; padding:112px 0 42px; display:flex; flex-direction:column; }
.signal-topline { display:flex; justify-content:space-between; gap:36px; align-items:flex-start; }
.signal-topline h2 { margin:0; font-size:clamp(48px,7.4vw,104px); line-height:.82; letter-spacing:-.055em; }
.signal-topline h2 em { font-style:normal; color:#c45cff; text-shadow:0 0 30px rgba(196,92,255,.13); }
.lore-grid,.signal-grid { flex:1; display:grid; grid-template-columns:repeat(3,1fr); grid-template-rows:repeat(2,minmax(0,1fr)); gap:12px; margin:34px 0 22px; min-height:0; }
.lore-card,.signal-card { position:relative; overflow:hidden; border:1px solid rgba(238,246,255,.12); background:linear-gradient(140deg,rgba(10,14,22,.78),rgba(4,6,12,.92)); color:#fff; text-align:left; cursor:pointer; padding:20px; transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s ease,box-shadow .35s ease,background .35s ease; }
.lore-card::before,.signal-card::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 78% 18%,rgba(196,92,255,.16),transparent 30%),linear-gradient(135deg,transparent 56%,rgba(100,215,255,.05)); }
.signal-card::before { background:radial-gradient(circle at 78% 18%,rgba(112,220,255,.16),transparent 30%),linear-gradient(135deg,transparent 56%,rgba(196,92,255,.07)); }
.lore-card::after,.signal-card::after { content:""; position:absolute; right:-16%; bottom:-46%; width:70%; aspect-ratio:1; border:1px solid rgba(196,92,255,.16); border-radius:50%; box-shadow:0 0 80px rgba(196,92,255,.05); }
.lore-card:hover,.signal-card:hover { transform:translateY(-6px) scale(1.01); border-color:rgba(255,255,255,.28); box-shadow:0 20px 80px rgba(0,0,0,.34),0 0 48px rgba(196,92,255,.08); }
.lore-card > *,.signal-card > * { position:relative; z-index:2; }
.lore-card span,.signal-card span { font-size:7px; letter-spacing:.25em; color:rgba(238,246,255,.34); }
.lore-card strong,.signal-card strong { display:block; margin-top:34px; font-size:clamp(22px,2.4vw,38px); line-height:.86; letter-spacing:-.04em; font-weight:750; }
.lore-card em,.signal-card em { position:absolute; left:20px; bottom:19px; font-style:normal; font-size:6px; letter-spacing:.22em; color:rgba(238,246,255,.38); }
.lore-card i,.signal-card i { position:absolute; right:20px; bottom:16px; font-style:normal; font-size:8px; letter-spacing:.18em; color:#c45cff; }
.signal-card i { color:#70dcff; }
.lore-card-muted { background:linear-gradient(140deg,rgba(10,12,18,.62),rgba(3,5,10,.95)); }
.lore-card-locked { border-style:dashed; opacity:.84; }
.lore-card-locked strong { filter:blur(.4px); letter-spacing:.06em; }
.signal-hot { border-color:rgba(112,220,255,.16); }
.signal-hot i::before { content:""; display:inline-block; width:5px; height:5px; margin-right:6px; border-radius:50%; background:#6ee8a9; box-shadow:0 0 10px rgba(110,232,169,.65); }
.signal-unknown { border-style:dashed; }
.signal-footer { display:flex; justify-content:space-between; align-items:center; gap:20px; font-size:7px; letter-spacing:.25em; color:rgba(238,246,255,.30); }
.signal-inspect { position:absolute; z-index:8; right:5vw; top:17vh; width:min(430px,36vw); padding:34px 34px 30px; border:1px solid rgba(238,246,255,.16); background:rgba(4,7,13,.86); backdrop-filter:blur(18px); box-shadow:0 30px 100px rgba(0,0,0,.40); opacity:0; transform:translateX(18px); pointer-events:none; transition:opacity .28s ease,transform .28s ease; }
.signal-inspect.open { opacity:1; transform:translateX(0); pointer-events:auto; }
.signal-inspect-close { position:absolute; top:16px; right:18px; border:0; background:none; color:rgba(238,246,255,.48); cursor:pointer; font:inherit; font-size:8px; letter-spacing:.20em; }
.signal-inspect-close:hover { color:#fff; }
.signal-inspect h3 { margin:0; font-size:clamp(34px,4.2vw,62px); line-height:.88; letter-spacing:-.045em; }
.signal-inspect p:not(.archive-kicker) { margin:18px 0 24px; color:rgba(238,246,255,.58); font-size:12px; line-height:1.8; }
.signal-inspect-rule { height:1px; background:linear-gradient(90deg,rgba(196,92,255,.65),transparent); margin-bottom:14px; }
.signal-inspect span { font-size:6px; letter-spacing:.24em; color:rgba(238,246,255,.34); }
@media (max-width:900px){
  .signal-shell{width:92vw!important;padding-top:98px!important;}
  .signal-topline{display:block;padding-right:50px;}
  .signal-topline .archive-readout{display:none;}
  .lore-grid,.signal-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,minmax(110px,1fr));gap:9px;margin-top:24px;}
  .lore-card strong,.signal-card strong{font-size:24px;margin-top:24px;}
  .signal-inspect{left:5vw;right:5vw;top:23vh;width:auto;}
}
@media (max-width:640px){
  .signal-topline h2{font-size:50px;}
  .lore-grid,.signal-grid{grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,minmax(96px,1fr));gap:7px;}
  .lore-card,.signal-card{padding:12px;}
  .lore-card strong,.signal-card strong{font-size:17px;margin-top:20px;}
  .lore-card em,.signal-card em{left:12px;bottom:12px;font-size:4px;max-width:70%;}
  .lore-card i,.signal-card i{right:12px;bottom:10px;}
  .signal-footer{font-size:5px;}
  .signal-inspect{top:auto;bottom:20px;padding:26px 24px 22px;}
  .signal-inspect h3{font-size:38px;}
}

/* =========================
   V19 ARCADE
   ========================= */
.arcade-screen{
  position:fixed; inset:0; z-index:58; display:none; overflow:hidden;
  background:#05060a; color:#f8f7ff;
}
.arcade-screen.open{display:block;}
.arcade-backdrop{
  position:absolute; inset:-6%;
  background:
    radial-gradient(circle at 20% 20%, rgba(115,76,255,.20), transparent 26%),
    radial-gradient(circle at 80% 70%, rgba(0,230,255,.13), transparent 24%),
    linear-gradient(180deg, rgba(4,5,11,.26), rgba(4,5,11,.94)),
    url('../assets/arcade-card.png') center/cover no-repeat;
  filter:saturate(1.15) contrast(1.15) brightness(.58);
  transform:scale(1.04);
}
.arcade-scan{position:absolute;inset:0;opacity:.28;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.035) 0,rgba(255,255,255,.035) 1px,transparent 1px,transparent 4px);mix-blend-mode:screen;}
.arcade-glow{position:absolute;pointer-events:none;border-radius:999px;filter:blur(40px);opacity:.32;animation:arcadePulse 5s ease-in-out infinite;}
.arcade-glow-a{width:34vw;height:34vw;left:-7vw;top:20vh;background:#7d3cff;}.arcade-glow-b{width:30vw;height:30vw;right:-8vw;bottom:-5vh;background:#00d9ff;animation-delay:-2.4s;}
@keyframes arcadePulse{50%{transform:scale(1.12);opacity:.43}}
.arcade-shell{position:relative;z-index:1;max-width:1500px;height:100%;margin:0 auto;padding:22px 34px 28px;display:flex;flex-direction:column;}
.arcade-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:54px;border-bottom:1px solid rgba(255,255,255,.12);}
.arcade-nav{border:1px solid rgba(255,255,255,.14);background:rgba(7,9,15,.48);color:rgba(255,255,255,.88);padding:11px 14px;font:inherit;font-size:11px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;backdrop-filter:blur(10px);}
.arcade-nav:hover{border-color:rgba(208,166,255,.65);transform:translateX(-2px)}
.arcade-brand{display:flex;align-items:baseline;gap:11px;letter-spacing:.18em;text-transform:uppercase}.arcade-brand span{font-weight:900;font-size:23px}.arcade-brand small{font-size:9px;opacity:.52}
.arcade-status{display:flex;align-items:center;gap:9px;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.65)}.arcade-status b,.arcade-game-footer b{width:7px;height:7px;border-radius:50%;display:inline-block;background:#a7ffb8;box-shadow:0 0 12px rgba(167,255,184,.8)}.arcade-status em{font-style:normal;color:#d8c8ff}
.arcade-intro{flex:1;display:flex;flex-direction:column;justify-content:center;padding:34px 0 18px;text-align:center;min-height:0}.arcade-kicker{font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:rgba(220,212,255,.7)}
.arcade-intro h1{margin:8px 0 8px;font-size:clamp(56px,9vw,118px);line-height:.82;letter-spacing:-.055em;text-transform:uppercase;text-shadow:0 0 32px rgba(160,110,255,.22)}.arcade-intro h1 em,.arcade-game-head h2 em{font-style:normal;color:#d5b7ff}
.arcade-intro>p{margin:0 auto 26px;color:rgba(255,255,255,.62);font-size:12px;letter-spacing:.12em;text-transform:uppercase;max-width:560px}
.arcade-machine-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:1060px;width:100%;margin:0 auto 22px}.arcade-game-card{position:relative;overflow:hidden;min-height:188px;border:1px solid rgba(255,255,255,.12);background:rgba(8,10,17,.58);padding:19px;text-align:left;color:white;cursor:pointer;transition:.35s ease;backdrop-filter:blur(12px)}.arcade-game-card:hover,.arcade-game-card.is-active{transform:translateY(-5px);border-color:rgba(205,177,255,.62);box-shadow:0 18px 50px rgba(0,0,0,.35),inset 0 0 0 1px rgba(205,177,255,.08)}
.game-card-image{position:absolute;inset:0;background:linear-gradient(135deg,rgba(128,62,255,.7),rgba(0,0,0,.1) 45%,rgba(0,218,255,.44)),url('../assets/night-district-bg-v4.png') center/cover;opacity:.4;filter:saturate(1.25) contrast(1.2)}.signal-card{background:linear-gradient(135deg,rgba(0,219,255,.48),rgba(10,10,16,.5)),radial-gradient(circle at 70% 30%,rgba(222,176,255,.8),transparent 30%)}.rush-card{background:linear-gradient(135deg,rgba(255,68,107,.42),rgba(10,10,16,.5)),radial-gradient(circle at 30% 70%,rgba(126,78,255,.8),transparent 32%)}
.game-card-glitch{position:absolute;inset:auto -20% 34px;height:1px;background:linear-gradient(90deg,transparent,#fff,transparent);opacity:.25;transform:translateX(-30%);animation:glitchSlide 3.8s linear infinite}@keyframes glitchSlide{to{transform:translateX(130%)}}
.arcade-game-card small,.arcade-game-card strong,.arcade-game-card em,.arcade-game-card i{position:relative;z-index:1;display:block}.arcade-game-card small{font-size:8px;letter-spacing:.22em;opacity:.63}.arcade-game-card strong{margin-top:28px;font-size:31px;line-height:.88;letter-spacing:-.035em}.arcade-game-card em{margin-top:9px;font-size:8px;letter-spacing:.14em;font-style:normal;color:rgba(255,255,255,.66)}.arcade-game-card i{margin-top:18px;font-size:9px;letter-spacing:.18em;font-style:normal;color:#e5d5ff}
.arcade-instructions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 22px;margin-bottom:18px;color:rgba(255,255,255,.48);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.arcade-instructions b{color:#e5d5ff}.arcade-instructions strong{color:#fff}
.arcade-start{align-self:center;border:1px solid rgba(213,183,255,.65);background:linear-gradient(180deg,rgba(39,22,66,.94),rgba(18,12,30,.94));color:white;padding:13px 18px;font:inherit;font-size:10px;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;box-shadow:0 0 24px rgba(148,82,255,.15);transition:.25s}.arcade-start:hover{transform:translateY(-2px);box-shadow:0 0 30px rgba(148,82,255,.28)}.arcade-start span{margin-left:10px;color:#d8baff}
.arcade-game{display:none;flex:1;min-height:0;padding-top:24px}.arcade-game.open{display:flex;flex-direction:column}.arcade-game-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:14px}.arcade-game-head p{margin:0 0 3px;font-size:9px;letter-spacing:.22em;color:rgba(255,255,255,.45)}.arcade-game-head h2{margin:0;font-size:clamp(32px,4vw,56px);line-height:.9;letter-spacing:-.045em}.arcade-hud{display:flex;gap:10px;flex-wrap:wrap}.arcade-hud span{border:1px solid rgba(255,255,255,.11);background:rgba(8,10,16,.58);padding:9px 11px;min-width:98px;font-size:8px;letter-spacing:.15em;color:rgba(255,255,255,.46);text-transform:uppercase}.arcade-hud strong{display:block;color:#fff;font-size:15px;letter-spacing:.08em;margin-top:4px}.arcade-cabinet{position:relative;flex:1;min-height:0;border:1px solid rgba(255,255,255,.14);background:#05070c;box-shadow:0 0 0 5px rgba(4,5,9,.6),0 28px 80px rgba(0,0,0,.45),0 0 60px rgba(128,72,255,.08);overflow:hidden}.arcade-cabinet::before{content:"";position:absolute;inset:0;box-shadow:inset 0 0 100px rgba(0,0,0,.56),inset 0 0 0 1px rgba(255,255,255,.03);pointer-events:none;z-index:4}.arcade-cabinet-label{position:absolute;left:14px;top:10px;z-index:5;font-size:8px;letter-spacing:.2em;color:rgba(255,255,255,.4);text-transform:uppercase;pointer-events:none}.arcade-cabinet canvas{display:block;width:100%;height:100%;background:#05060a;image-rendering:auto}.arcade-game-overlay{display:none;position:absolute;inset:0;align-items:center;justify-content:center;background:rgba(4,5,9,.68);backdrop-filter:blur(5px);z-index:8}.arcade-game-overlay.open{display:flex}.arcade-overlay-panel{width:min(420px,90%);padding:30px;text-align:center;border:1px solid rgba(211,179,255,.35);background:rgba(9,10,17,.88);box-shadow:0 24px 70px rgba(0,0,0,.5)}.arcade-overlay-panel h3{margin:7px 0 7px;font-size:42px;letter-spacing:-.04em}.arcade-overlay-panel p:not(.arcade-kicker){margin:0;color:rgba(255,255,255,.55);font-size:11px;letter-spacing:.08em}.arcade-final-score{display:flex;justify-content:space-between;align-items:end;margin:24px 0 18px;border-top:1px solid rgba(255,255,255,.1);padding-top:16px}.arcade-final-score span{font-size:9px;letter-spacing:.18em;color:rgba(255,255,255,.45)}.arcade-final-score strong{font-size:26px;letter-spacing:.08em}.arcade-retry{border:1px solid rgba(213,183,255,.55);background:rgba(27,18,44,.9);color:white;padding:12px 16px;font:inherit;font-size:9px;letter-spacing:.18em;text-transform:uppercase;cursor:pointer}.arcade-game-footer{display:flex;justify-content:space-between;gap:16px;align-items:center;padding-top:11px;color:rgba(255,255,255,.42);font-size:8px;letter-spacing:.13em;text-transform:uppercase}.arcade-game-footer button{background:transparent;border:0;color:rgba(255,255,255,.7);padding:0;font:inherit;cursor:pointer}.arcade-game-footer span:last-child{display:flex;gap:7px;align-items:center;color:#d7e4ff}
@media (max-width:900px){.arcade-shell{padding:17px 17px 20px}.arcade-machine-grid{grid-template-columns:1fr;max-width:560px}.arcade-game-card{min-height:130px}.arcade-game-card strong{font-size:27px;margin-top:16px}.arcade-hud span{min-width:86px}.arcade-game-head{align-items:flex-start;flex-direction:column}.arcade-cabinet{min-height:52vh}.arcade-game-footer{flex-wrap:wrap}.arcade-status em{display:none}}
@media (max-width:560px){.arcade-brand small{display:none}.arcade-status span{display:none}.arcade-intro h1{font-size:58px}.arcade-intro>p{font-size:10px}.arcade-instructions{gap:8px 14px;font-size:8px}.arcade-game-card{padding:14px}.arcade-game-card strong{font-size:25px}.arcade-cabinet{min-height:56vh}.arcade-game-footer span:nth-child(2){display:none}.arcade-hud{width:100%}.arcade-hud span{flex:1;min-width:0}.arcade-overlay-panel h3{font-size:34px}}


/* V19.1 â€” PLACE NODE TRIANGLES + TRANSMISSION MINI PLAYER */
.underpass-hotspot .hotspot-dot,
.night-hotspot .hotspot-dot,
.sunset-hotspot .hotspot-dot{
  left:12px;
  top:8px;
  width:0;
  height:0;
  border-top:5px solid transparent;
  border-bottom:5px solid transparent;
  border-left:9px solid currentColor;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  filter:drop-shadow(0 0 4px currentColor);
}
.sunset-hotspot .hotspot-dot{border-left-color:#fff1cb}

.place-mini-player{
  position:absolute;
  left:50%;
  bottom:72px;
  transform:translate(-50%,18px);
  width:min(500px,88vw);
  z-index:22;
  padding:14px 16px 13px;
  border:1px solid rgba(238,246,255,.16);
  background:linear-gradient(145deg,rgba(4,7,13,.92),rgba(12,7,18,.90));
  box-shadow:0 24px 80px rgba(0,0,0,.45),0 0 48px rgba(196,92,255,.10);
  backdrop-filter:blur(18px);
  opacity:0;
  pointer-events:none;
  transition:opacity .28s ease,transform .28s cubic-bezier(.2,.8,.2,1);
}
.place-mini-player.open{opacity:1;transform:translate(-50%,0);pointer-events:auto}
.place-mini-top{position:relative;display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
.place-mini-copy p{margin:0 0 4px;font-size:6px;letter-spacing:.24em;color:rgba(238,246,255,.34)}
.place-mini-copy strong{display:block;font-size:17px;letter-spacing:.08em;line-height:1}
.place-mini-copy span{display:block;margin-top:6px;font-size:6px;letter-spacing:.20em;color:rgba(238,246,255,.44)}
.place-mini-close{border:0;background:none;color:rgba(238,246,255,.48);cursor:pointer;font-size:16px;line-height:1;padding:0 2px}
.place-mini-close:hover{color:#fff}
.place-mini-controls{position:relative;display:flex;align-items:center;gap:12px;margin-top:13px}
.place-mini-play{flex:0 0 30px;width:30px;height:30px;padding:0;border:1px solid rgba(196,92,255,.52);border-radius:50%;background:rgba(196,92,255,.06);color:#fff;cursor:pointer;font-size:9px;box-shadow:0 0 22px rgba(196,92,255,.10)}
.place-mini-track{flex:1}
.place-mini-progress{height:2px;background:rgba(238,246,255,.12);overflow:hidden}
.place-mini-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,#65d6ff,#c45cff);box-shadow:0 0 12px rgba(196,92,255,.6)}
.place-mini-times{display:flex;justify-content:space-between;margin-top:5px;font-size:5px;letter-spacing:.16em;color:rgba(238,246,255,.32)}
.place-mini-player audio{display:none}
@media(max-width:680px){
  .place-mini-player{left:20px;right:20px;bottom:72px;width:auto;transform:translateY(18px)}
  .place-mini-player.open{transform:translateY(0)}
}


/* V19.2 â€” NIGHT DISTRICT CLEAN PLATE / CENTERED NODE ARROWS / STREAM LINKS */
.night-hotspot .hotspot-ring{left:0;top:0;width:26px;height:26px}
.night-hotspot .hotspot-dot{left:50%;top:50%;transform:translate(-35%,-50%);width:0;height:0}
.night-stream{left:72%;top:75%;width:180px}
.night-stream .hotspot-dot{transform:translate(-50%,-28%);border-top:9px solid currentColor;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:0}
.night-links-panel{position:absolute;right:0;top:0;bottom:0;width:min(460px,90vw);z-index:11;padding:130px 6vw 40px 44px;background:linear-gradient(90deg,rgba(5,7,13,.08),rgba(5,7,13,.96) 25%);border-left:1px solid rgba(255,255,255,.1);transform:translateX(101%);transition:transform .45s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.night-links-panel.open{transform:translateX(0);pointer-events:auto}
.night-links-panel h3{font-size:42px;letter-spacing:.04em;margin:10px 0}.night-links-panel p{color:rgba(255,255,255,.64);line-height:1.7}
.night-link-list{display:grid;gap:10px;margin:28px 0}.night-link-list a{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.03);color:#fff;text-decoration:none;font-size:9px;letter-spacing:.22em;transition:background .25s ease,border-color .25s ease,transform .25s ease}.night-link-list a:hover{background:rgba(196,92,255,.12);border-color:rgba(196,92,255,.4);transform:translateX(3px)}.night-link-list a span{color:#c45cff;font-size:11px}
@media(max-width:820px){.night-stream{left:63%;top:77%}.night-links-panel{width:min(420px,94vw);padding:110px 28px 30px}.night-links-panel h3{font-size:36px}}

/* Final center alignment for every place node arrow */
.underpass-hotspot .hotspot-dot,.sunset-hotspot .hotspot-dot,.night-hotspot .hotspot-dot{left:50%;top:50%;transform:translate(-40%,-50%)}
.sunset-hotspot .hotspot-dot{transform:translate(-50%,-40%)}
.night-stream .hotspot-dot{transform:translate(-50%,-28%)}

.night-links{display:none !important;}
.night-experience .night-art{z-index:0}.night-experience .night-copy,.night-experience .night-topbar,.night-experience .night-footer,.night-hotspot,.night-inspect,.night-links-panel{position:absolute;}


/* V19.3 FINAL â€” Night District clean plate + reliable node controls */
.night-art{
  background-image:linear-gradient(90deg,rgba(3,5,12,.24),rgba(3,5,12,.04) 62%,rgba(3,5,12,.22)),url('../assets/night-district-clean-final.jpg') !important;
  background-size:cover !important;
  background-position:center !important;
}
.night-hotspot .hotspot-ring{
  position:absolute !important;
  left:0 !important; top:0 !important;
  width:30px !important; height:30px !important;
  border-radius:50% !important;
  border:1px solid currentColor !important;
  background:rgba(5,7,13,.22) !important;
  box-shadow:0 0 20px rgba(196,92,255,.24), inset 0 0 0 1px rgba(255,255,255,.08) !important;
}
.night-hotspot .hotspot-dot{
  position:absolute !important;
  left:15px !important; top:15px !important;
  width:0 !important; height:0 !important;
  border-top:6px solid transparent !important;
  border-bottom:6px solid transparent !important;
  border-left:10px solid currentColor !important;
  border-right:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  transform:translate(-50%,-50%) !important;
  filter:drop-shadow(0 0 5px currentColor) !important;
}
.night-stream{
  left:66% !important;
  top:72% !important;
  width:220px !important;
  height:52px !important;
}
.night-stream .hotspot-ring{left:0 !important;top:0 !important;}
.night-stream .hotspot-dot{
  left:15px !important; top:15px !important;
  border-top:10px solid currentColor !important;
  border-left:6px solid transparent !important;
  border-right:6px solid transparent !important;
  border-bottom:0 !important;
  transform:translate(-50%,-50%) !important;
}
.night-hotspot em{left:42px !important;top:6px !important;line-height:1.4 !important;}
.night-stream em{top:8px !important;}


/* V19.4 â€” reliable section tabs + Night District controls */
.night-topbar,.night-footer{z-index:40 !important}
.night-footer button{position:relative;z-index:60 !important;pointer-events:auto !important;padding:8px 0}
.night-stream{left:70% !important;top:68% !important;width:270px !important;height:58px !important;z-index:55 !important}
.night-stream .hotspot-ring{left:0 !important;top:50% !important;width:34px !important;height:34px !important;transform:translateY(-50%) !important}
.night-stream .hotspot-dot{left:17px !important;top:50% !important;transform:translate(-50%,-50%) !important;border-top:10px solid currentColor !important;border-left:6px solid transparent !important;border-right:6px solid transparent !important;border-bottom:0 !important}
.night-stream em{left:50px !important;top:10px !important;display:block !important}
@media(max-width:820px){.night-stream{left:57% !important;top:70% !important}.night-stream em{display:block !important;font-size:5px !important;line-height:1.3 !important}.topbar{z-index:100 !important}}


/* V6 â€” Night District final background + bulletproof panel exits */
.night-art{background-image:linear-gradient(90deg,rgba(3,5,12,.16),rgba(3,5,12,.02) 62%,rgba(3,5,12,.12)),url('../assets/night-district-clean-final.jpg') !important;background-size:cover !important;background-position:center !important;}
.night-links-panel{z-index:90 !important;}
.night-links-panel .underpass-inspect-close{z-index:120 !important;pointer-events:auto !important;position:absolute !important;right:18px !important;top:16px !important;}
.night-footer{z-index:100 !important;}
.night-footer button{z-index:130 !important;pointer-events:auto !important;position:relative !important;}
.night-hotspot .hotspot-ring,.night-hotspot .hotspot-dot{pointer-events:none !important;}
.night-hotspot .hotspot-dot{left:50% !important;top:50% !important;transform:translate(-40%,-50%) !important;}
.night-stream .hotspot-dot{left:50% !important;top:50% !important;transform:translate(-50%,-50%) !important;}
.night-stream .hotspot-ring{left:0 !important;top:50% !important;transform:translateY(-50%) !important;}


/* V7 â€” unified place-node geometry + softer home portals */
.underpass-hotspot,.sunset-hotspot,.night-hotspot{
  width:210px !important;
  height:56px !important;
  padding-left:48px !important;
  box-sizing:border-box !important;
}
.underpass-hotspot .hotspot-ring,.sunset-hotspot .hotspot-ring,.night-hotspot .hotspot-ring{
  left:0 !important;
  top:50% !important;
  width:34px !important;
  height:34px !important;
  margin:0 !important;
  transform:translateY(-50%) !important;
  box-sizing:border-box !important;
}
.underpass-hotspot .hotspot-dot,.sunset-hotspot .hotspot-dot,.night-hotspot .hotspot-dot{
  left:17px !important;
  top:50% !important;
  width:0 !important;
  height:0 !important;
  transform:translate(-50%,-50%) !important;
  border-top:6px solid transparent !important;
  border-bottom:6px solid transparent !important;
  border-left:10px solid currentColor !important;
  border-right:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  filter:drop-shadow(0 0 5px currentColor) !important;
}
.night-stream .hotspot-dot{
  left:17px !important;
  top:50% !important;
  border-top:10px solid currentColor !important;
  border-bottom:0 !important;
  border-left:6px solid transparent !important;
  border-right:6px solid transparent !important;
  transform:translate(-50%,-50%) !important;
}
.underpass-hotspot em,.sunset-hotspot em,.night-hotspot em{
  left:48px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  line-height:1.35 !important;
}
.night-exit{right:5vw !important;bottom:14% !important}
@media(max-width:820px){
  .underpass-hotspot,.sunset-hotspot,.night-hotspot{width:190px !important;height:52px !important;padding-left:44px !important}
  .underpass-hotspot .hotspot-ring,.sunset-hotspot .hotspot-ring,.night-hotspot .hotspot-ring{width:32px !important;height:32px !important}
  .underpass-hotspot .hotspot-dot,.sunset-hotspot .hotspot-dot,.night-hotspot .hotspot-dot{left:16px !important}
  .underpass-hotspot em,.sunset-hotspot em,.night-hotspot em{left:44px !important}
  .night-hotspot em{display:block !important;font-size:5px !important}
}

@media (min-width:1280px){ .portal-card{min-height:325px;} .portal-label{font-size:19px;} }

/* V10 â€” image-backed glass portals */
.portal-card { -webkit-transform:translateY(calc(var(--lift) + var(--offset))) rotateZ(var(--tilt)); transform:translateY(calc(var(--lift) + var(--offset))) rotateZ(var(--tilt)); }
.portal-card .portal-overlay { mix-blend-mode:normal; }
.portal-card img { user-select:none; -webkit-user-drag:none; }


/* TAKE IT EASY ON ME â€” streaming node + links panel */
.hotspot-links{left:66%;top:68%;width:240px !important;height:56px !important;z-index:20 !important}
.hotspot-links .hotspot-ring{left:0 !important;top:50% !important}
.hotspot-links .hotspot-dot{left:17px !important;top:50% !important;transform:translate(-50%,-50%) rotate(0deg) !important;border-top:10px solid currentColor !important;border-bottom:0 !important;border-left:6px solid transparent !important;border-right:6px solid transparent !important}
.hotspot-links em{left:48px !important;top:50% !important;transform:translateY(-50%) !important}
.underpass-links-panel{position:absolute;right:0;top:0;bottom:0;width:min(460px,90vw);z-index:90;padding:130px 6vw 40px 44px;background:linear-gradient(90deg,rgba(5,7,13,.08),rgba(5,7,13,.96) 25%);border-left:1px solid rgba(255,255,255,.1);transform:translateX(101%);transition:transform .45s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.underpass-links-panel.open{transform:translateX(0);pointer-events:auto}
.underpass-links-panel h3{font-size:42px;letter-spacing:.04em;line-height:.92;margin:10px 0}
.underpass-links-panel p{color:rgba(255,255,255,.64);line-height:1.7}
.underpass-links-panel .underpass-inspect-close{z-index:120 !important;pointer-events:auto !important;position:absolute !important;right:18px !important;top:16px !important}
@media(max-width:820px){.hotspot-links{left:54% !important;top:72% !important}.hotspot-links em{display:block !important;font-size:5px !important}.underpass-links-panel{width:min(420px,94vw);padding:110px 28px 30px}.underpass-links-panel h3{font-size:36px}}


/* V19.5 â€” DON'T FALL FOR ME + Take It Easy readability/controls */
.sunset-sky{
  background-image:linear-gradient(180deg,rgba(4,9,16,.34),rgba(4,9,16,.16) 42%,rgba(4,9,16,.60)),url('../assets/dont-fall-for-me-bg-v2.jpg') !important;
  background-size:cover !important; background-position:center 34% !important;
}
.sunset-experience::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(3,6,12,.46),rgba(3,6,12,.10) 48%,rgba(3,6,12,.30)),linear-gradient(180deg,rgba(3,6,12,.22),transparent 30%,rgba(3,6,12,.18));}
.sunset-copy,.sunset-coordinate{z-index:12 !important;text-shadow:0 3px 18px rgba(0,0,0,.62);}
.sunset-copy .place-description{color:rgba(255,255,255,.82);}
.sunset-copy h2 em{color:#dca6ff;text-shadow:0 0 18px rgba(196,92,255,.25);}
.sunset-coordinate{padding:12px 15px;border:1px solid rgba(255,255,255,.14);background:rgba(3,7,13,.48);backdrop-filter:blur(9px);}
.sunset-hotspot{z-index:20 !important;color:#dba1ff !important;}
.sunset-hotspot em{left:48px !important;top:50% !important;transform:translateY(-50%) !important;color:#fff !important;font-size:8px !important;letter-spacing:.18em !important;padding:8px 10px;background:rgba(4,8,15,.78);border:1px solid rgba(220,166,255,.32);box-shadow:0 8px 22px rgba(0,0,0,.28);backdrop-filter:blur(8px);}
.sunset-phone{left:40% !important;top:69% !important}
.sunset-marker{left:70% !important;top:58% !important}
.sunset-stream{left:61% !important;top:78% !important;width:260px !important}
.sunset-exit{right:5vw !important;bottom:13% !important;z-index:30 !important}
.sunset-footer{z-index:31 !important}
.sunset-footer button{position:relative !important;z-index:40 !important;padding:9px 12px;border:1px solid rgba(255,255,255,.22);background:rgba(3,7,13,.60);color:#fff !important;backdrop-filter:blur(8px);}
.sunset-inspect{z-index:80 !important;background:linear-gradient(90deg,rgba(3,7,13,.12),rgba(3,7,13,.96) 27%) !important;}
.sunset-links-panel{position:absolute;right:0;top:0;bottom:0;width:min(470px,90vw);z-index:90;padding:130px 6vw 40px 44px;background:linear-gradient(90deg,rgba(3,7,13,.10),rgba(3,7,13,.97) 24%);border-left:1px solid rgba(220,166,255,.22);transform:translateX(101%);transition:transform .45s cubic-bezier(.2,.8,.2,1);pointer-events:none;backdrop-filter:blur(16px);}
.sunset-links-panel.open{transform:translateX(0);pointer-events:auto}
.sunset-links-panel h3{font-size:42px;line-height:.92;margin:10px 0;letter-spacing:.02em}.sunset-links-panel p{color:rgba(255,255,255,.70);line-height:1.7}.sunset-links-panel .underpass-inspect-close{z-index:120 !important;pointer-events:auto !important;position:absolute !important;right:18px !important;top:16px !important}
.place-link-list{display:grid;gap:10px;margin:28px 0}.place-link-list div{display:flex;justify-content:space-between;align-items:center;padding:15px 16px;border:1px solid rgba(220,166,255,.18);background:rgba(255,255,255,.035)}.place-link-list span{font-size:9px;letter-spacing:.22em;color:#fff}.place-link-list em{font-style:normal;font-size:7px;letter-spacing:.18em;color:rgba(255,255,255,.42)}
/* Take It Easy on Me: stronger readability against the bright lifestyle plate. */
.underpassExperience::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(2,6,12,.38),rgba(2,6,12,.10) 44%,rgba(2,6,12,.20)),linear-gradient(180deg,rgba(2,6,12,.14),rgba(2,6,12,.06) 36%,rgba(2,6,12,.28));}
.underpass-sky{background-image:linear-gradient(90deg,rgba(0,0,0,.40) 0%,rgba(0,0,0,.18) 42%,rgba(0,0,0,0) 72%),url('../assets/underpass-take-it-easy-bg.jpg') !important;background-size:cover !important;background-position:center !important;filter:saturate(.90) brightness(.88);}
.underpass-copy{z-index:12 !important;padding:18px 24px 20px;border-left:1px solid rgba(123,213,255,.55);background:linear-gradient(90deg,rgba(2,6,12,.78),rgba(2,6,12,.26),transparent);backdrop-filter:blur(7px);text-shadow:0 3px 18px rgba(0,0,0,.62);}
.underpass-copy .place-description{color:rgba(255,255,255,.84);}
.underpass-coordinate{z-index:12 !important;padding:12px 15px;background:rgba(2,6,12,.58);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(9px);}
.underpass-hotspot{z-index:20 !important;}
.underpass-hotspot em{color:#fff !important;font-size:8px !important;letter-spacing:.18em !important;padding:8px 10px;background:rgba(2,6,12,.80);border:1px solid rgba(255,255,255,.18);box-shadow:0 8px 22px rgba(0,0,0,.30);backdrop-filter:blur(8px);}
.underpass-footer{z-index:31 !important}.underpass-footer button{position:relative !important;z-index:40 !important;padding:9px 12px;border:1px solid rgba(255,255,255,.20);background:rgba(2,6,12,.60);color:#fff !important;backdrop-filter:blur(8px);}
@media(max-width:820px){.sunset-links-panel{width:min(420px,94vw);padding:110px 28px 30px}.sunset-links-panel h3{font-size:36px}.sunset-stream{left:50% !important;top:76% !important}.underpass-hotspot em,.sunset-hotspot em{font-size:7px !important}}

/* V24.7.2 â€” unified, responsive EXIT TO PLACES control + lighter cinematic overlays */
.place-exit{
  position:relative !important;
  z-index:160 !important;
  pointer-events:auto !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:9px 12px !important;
  border:1px solid rgba(255,255,255,.22) !important;
  background:rgba(3,7,13,.46) !important;
  color:#fff !important;
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  font:inherit;
  letter-spacing:.22em;
  cursor:pointer;
  transition:background .18s ease,border-color .18s ease,transform .18s ease,color .18s ease;
  touch-action:manipulation;
}
.place-exit:hover,
.place-exit:focus-visible{
  background:rgba(255,255,255,.08) !important;
  border-color:rgba(255,255,255,.42) !important;
  color:#fff !important;
  transform:translateY(-1px);
  outline:none;
}
.place-exit:active{transform:translateY(0);}
.night-footer .place-exit,
.sunset-footer .place-exit,
.underpass-footer .place-exit{z-index:160 !important;}
@media(max-width:820px){
  .place-exit{min-height:32px;padding:8px 10px !important;font-size:6px !important;letter-spacing:.18em !important;}
}

/* V24.7.3 â€” force Bad Decisions EXIT to use the same boxed control as every other Place. */
#nightExit.place-exit{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:34px !important;
  padding:9px 12px !important;
  border:1px solid rgba(255,255,255,.22) !important;
  border-radius:0 !important;
  background:rgba(3,7,13,.46) !important;
  color:#fff !important;
  font:inherit !important;
  letter-spacing:.22em !important;
  line-height:1 !important;
  text-decoration:none !important;
  -webkit-appearance:none !important;
  appearance:none !important;
  -webkit-backdrop-filter:blur(8px) !important;
  backdrop-filter:blur(8px) !important;
  cursor:pointer !important;
  touch-action:manipulation !important;
}
#nightExit.place-exit:hover,
#nightExit.place-exit:focus-visible{
  background:rgba(255,255,255,.08) !important;
  border-color:rgba(255,255,255,.42) !important;
  color:#fff !important;
  transform:translateY(-1px) !important;
  outline:none !important;
}
#nightExit.place-exit:active{transform:translateY(0) !important;}
@media(max-width:820px){
  #nightExit.place-exit{min-height:32px !important;padding:8px 10px !important;font-size:6px !important;letter-spacing:.18em !important;}
}

.sunset-marker{left:66% !important;top:63% !important}.sunset-stream{left:61% !important;top:76% !important}


/* V19.6 â€” unified interactive place nodes across all three locations */
.underpass-hotspot,.sunset-hotspot,.night-hotspot{
  width:220px !important;
  height:58px !important;
  padding-left:50px !important;
  box-sizing:border-box !important;
  text-align:left !important;
}
.underpass-hotspot .hotspot-ring,.sunset-hotspot .hotspot-ring,.night-hotspot .hotspot-ring{
  left:0 !important; top:50% !important; width:36px !important; height:36px !important;
  margin:0 !important; transform:translateY(-50%) !important; box-sizing:border-box !important;
}
.underpass-hotspot .hotspot-dot,.sunset-hotspot .hotspot-dot,.night-hotspot .hotspot-dot{
  pointer-events:none !important;
}
.underpass-hotspot em,.sunset-hotspot em,.night-hotspot em{
  left:50px !important; top:50% !important; transform:translateY(-50%) !important;
  display:block !important; white-space:nowrap !important; line-height:1.3 !important;
  padding:9px 12px !important; border:1px solid rgba(255,255,255,.18) !important;
  background:rgba(3,7,13,.72) !important; box-shadow:0 10px 26px rgba(0,0,0,.28) !important;
  backdrop-filter:blur(9px) !important; border-radius:2px !important;
  color:rgba(255,255,255,.94) !important; font-size:8px !important; letter-spacing:.18em !important;
  text-shadow:0 2px 9px rgba(0,0,0,.65) !important;
}
.sunset-hotspot{color:#d8a7ff !important;}
.underpass-hotspot{color:#7bd5ff !important;}
.night-hotspot{color:#e1a8ff !important;}
.sunset-hotspot em{border-color:rgba(216,167,255,.32) !important;}
.underpass-hotspot em{border-color:rgba(123,213,255,.28) !important;}
.night-hotspot em{border-color:rgba(225,168,255,.30) !important;}
.hotspot-links em,.sunset-stream em,.night-stream em{min-width:160px !important;}
@media(max-width:820px){
  .underpass-hotspot,.sunset-hotspot,.night-hotspot{width:200px !important;height:54px !important;padding-left:46px !important;}
  .underpass-hotspot .hotspot-ring,.sunset-hotspot .hotspot-ring,.night-hotspot .hotspot-ring{width:32px !important;height:32px !important;}
  .underpass-hotspot em,.sunset-hotspot em,.night-hotspot em{left:46px !important;font-size:7px !important;padding:8px 10px !important;}
}

/* V20 â€” SIGNALS RADAR / UNRELEASED MUSIC */
.world-signals-archive{
  background:
    radial-gradient(circle at 50% 42%,rgba(31,83,126,.18),transparent 40%),
    linear-gradient(180deg,rgba(2,5,10,.72),rgba(2,4,9,.97)),
    url('../assets/night-district-clean-final.jpg') center/cover no-repeat;
}
.world-signals-archive::before{opacity:.28;background-size:82px 82px;}
.world-signals-archive::after{background:radial-gradient(circle at 50% 45%,transparent 0 28%,rgba(0,0,0,.18) 60%,rgba(0,0,0,.72) 100%);}
.signal-radar-shell{position:relative;z-index:2;width:min(1480px,92vw);height:100%;margin:0 auto;padding:104px 0 24px;display:flex;flex-direction:column;overflow:hidden;}
.signal-radar-head{display:flex;justify-content:space-between;gap:36px;align-items:flex-end;flex:0 0 auto;}
.signal-radar-head h2{margin:0;font-size:clamp(42px,5.4vw,80px);line-height:.86;letter-spacing:-.055em;}
.signal-radar-head h2 em{font-style:normal;color:#d65dff;text-shadow:0 0 28px rgba(214,93,255,.16);}
.signal-radar-head .archive-lead{max-width:700px;margin-top:14px;}
.signal-radar-readout{min-width:255px;padding:6px 0 0 20px;border-left:1px solid rgba(238,246,255,.12);text-align:right;}
.signal-radar-readout span,.signal-radar-readout small{display:block;font-size:7px;letter-spacing:.24em;color:rgba(238,246,255,.30);}
.signal-radar-readout strong{display:block;margin:9px 0 7px;font-size:10px;letter-spacing:.18em;font-weight:500;}
.signal-radar-readout strong b{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:7px;background:#6ee8a9;box-shadow:0 0 12px rgba(110,232,169,.75);animation:signalBlink 1.2s steps(2,end) infinite;}
@keyframes signalBlink{50%{opacity:.28}}
.signal-radar-layout{display:grid;grid-template-columns:150px minmax(480px,1fr) 320px;gap:26px;align-items:stretch;flex:1;min-height:0;margin:22px 0 16px;}
.signal-radar-side,.signal-radar-detail{background:linear-gradient(135deg,rgba(7,11,18,.74),rgba(3,5,10,.56));border:1px solid rgba(238,246,255,.10);backdrop-filter:blur(12px);box-shadow:0 18px 70px rgba(0,0,0,.26);}
.signal-radar-side-left{padding:20px 16px;display:flex;flex-direction:column;gap:18px;}
.signal-side-block{padding-bottom:16px;border-bottom:1px solid rgba(238,246,255,.09);}
.signal-side-label{display:block;font-size:6px;letter-spacing:.25em;color:rgba(238,246,255,.30);margin-bottom:8px;}
.signal-side-block strong{display:block;font-size:18px;letter-spacing:.05em;line-height:1;}
.signal-side-block small{display:block;margin-top:6px;font-size:6px;letter-spacing:.18em;color:rgba(238,246,255,.38);}
.signal-side-note{margin-top:auto;}
.signal-side-note span{font-size:6px;letter-spacing:.22em;color:#c65cff;}
.signal-side-note p{font-size:10px;line-height:1.65;color:rgba(238,246,255,.48);margin:10px 0 0;}
.signal-radar-viewport{position:relative;overflow:hidden;min-height:440px;border:1px solid rgba(153,225,255,.13);background:radial-gradient(circle at center,rgba(42,88,126,.13),rgba(2,6,11,.20) 56%,rgba(1,3,7,.58));box-shadow:inset 0 0 0 1px rgba(255,255,255,.02),0 0 80px rgba(89,181,255,.06);}
.signal-radar-grid{position:absolute;left:50%;top:50%;width:min(74vh,650px);height:min(74vh,650px);max-width:88%;max-height:92%;aspect-ratio:1;transform:translate(-50%,-50%);border:1px solid rgba(156,220,255,.46);border-radius:50%;background:repeating-radial-gradient(circle at center,transparent 0 14%,rgba(110,210,255,.055) 14.2% 14.5%,transparent 14.7% 25%),radial-gradient(circle at center,rgba(99,207,255,.05),transparent 62%);box-shadow:0 0 45px rgba(91,196,255,.07),inset 0 0 80px rgba(91,196,255,.05);}
.radar-ring{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid rgba(172,226,255,.28);border-radius:50%;}
.ring-1{width:25%;height:25%}.ring-2{width:50%;height:50%}.ring-3{width:75%;height:75%}.ring-4{width:100%;height:100%}
.radar-cross{position:absolute;left:50%;top:50%;background:rgba(159,220,255,.16);transform-origin:center;}
.cross-h{width:100%;height:1px;transform:translate(-50%,-50%)}.cross-v{width:1px;height:100%;transform:translate(-50%,-50%)}.cross-d1,.cross-d2{width:100%;height:1px}.cross-d1{transform:translate(-50%,-50%) rotate(45deg)}.cross-d2{transform:translate(-50%,-50%) rotate(-45deg)}
.radar-sweep{position:absolute;left:50%;top:50%;width:49%;height:12px;transform-origin:0 50%;transform:rotate(-42deg);background:linear-gradient(90deg,rgba(117,223,255,.34),rgba(117,223,255,.16) 52%,rgba(117,223,255,0));filter:drop-shadow(0 0 9px rgba(92,213,255,.5));clip-path:polygon(0 34%,100% 0,100% 100%,0 66%);border-radius:999px;animation:radarSweep 5.4s linear infinite;}
@keyframes radarSweep{to{transform:rotate(318deg)}}
.radar-origin{position:absolute;left:50%;top:50%;width:10px;height:10px;border-radius:50%;background:#f7fbff;transform:translate(-50%,-50%);box-shadow:0 0 0 5px rgba(111,219,255,.10),0 0 28px rgba(111,219,255,.75);}
.radar-noise{position:absolute;inset:0;opacity:.13;background:repeating-linear-gradient(0deg,rgba(255,255,255,.06) 0,rgba(255,255,255,.06) 1px,transparent 1px,transparent 5px);mix-blend-mode:screen;pointer-events:none;}
.radar-center-readout{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;text-shadow:0 2px 16px rgba(0,0,0,.8);}
.radar-center-readout span,.radar-center-readout small{display:block;font-size:6px;letter-spacing:.30em;color:rgba(238,246,255,.35)}
.radar-center-readout strong{display:block;margin:7px 0;font-size:18px;letter-spacing:.25em;color:#fff}.radar-center-readout small{color:rgba(112,220,255,.45)}
.radar-node{position:absolute;z-index:4;width:42px;height:42px;border:0;background:none;color:#fff;padding:0;cursor:pointer;opacity:0;transform:scale(.4);transition:transform .3s ease,opacity .4s ease;}
.radar-node.is-visible{opacity:1;transform:scale(1);}
.radar-node:hover,.radar-node.is-active{transform:scale(1.12);}
.radar-blip{position:absolute;left:50%;top:50%;width:18px;height:18px;border:1px solid #e48aff;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 6px rgba(211,91,255,.08),0 0 24px rgba(211,91,255,.68);}
.radar-blip::after{content:"";position:absolute;left:50%;top:50%;width:5px;height:5px;border-radius:50%;background:#f8f4ff;transform:translate(-50%,-50%);box-shadow:0 0 9px #fff;}
.radar-node::before{content:"";position:absolute;left:50%;top:50%;width:42px;height:42px;border:1px dashed rgba(116,219,255,.35);border-radius:50%;transform:translate(-50%,-50%);animation:signalPulse 2.2s ease-out infinite;}
@keyframes signalPulse{0%{opacity:.7;transform:translate(-50%,-50%) scale(.9)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.9)}}
.radar-node-label{position:absolute;left:34px;top:-14px;display:block;width:190px;padding:9px 11px 8px;text-align:left;background:rgba(4,8,14,.78);border:1px solid rgba(152,220,255,.15);backdrop-filter:blur(9px);box-shadow:0 10px 30px rgba(0,0,0,.3);}
.radar-node-label small{display:block;font-size:5px;letter-spacing:.24em;color:rgba(112,220,255,.62)}
.radar-node-label strong{display:block;margin-top:5px;font-size:9px;line-height:1.05;letter-spacing:.10em;font-weight:550}.radar-node-label em{display:block;margin-top:5px;font-style:normal;font-size:5px;letter-spacing:.22em;color:#c95dff;}
.radar-node-1{left:28%;top:36%}.radar-node-2{left:63%;top:57%}.radar-node-3{left:44%;top:73%}.radar-node-2 .radar-node-label{left:auto;right:34px;text-align:right}.radar-node-3 .radar-node-label{top:auto;bottom:28px;left:34px;}
.signal-radar-detail{padding:26px 24px;display:flex;flex-direction:column;min-width:0;}
.signal-radar-detail h3{margin:0;font-size:clamp(30px,3.2vw,48px);line-height:.9;letter-spacing:-.045em;}
.signal-radar-detail>p:not(.archive-kicker){margin:14px 0 20px;color:rgba(238,246,255,.54);font-size:11px;line-height:1.65;}
.signal-detail-meta{padding:10px 0;border-top:1px solid rgba(238,246,255,.08);display:flex;justify-content:space-between;gap:12px;align-items:baseline}.signal-detail-meta span{font-size:5px;letter-spacing:.22em;color:rgba(238,246,255,.3)}.signal-detail-meta strong{font-size:6px;letter-spacing:.16em;text-align:right;font-weight:500;color:rgba(238,246,255,.58)}
.signal-player{margin-top:auto;padding:14px;border:1px solid rgba(196,92,255,.18);background:rgba(196,92,255,.035);display:flex;align-items:center;gap:12px;}
.signal-player>button{width:42px;height:42px;border-radius:50%;border:1px solid rgba(225,163,255,.62);background:rgba(7,9,15,.72);color:#fff;cursor:pointer;box-shadow:0 0 24px rgba(196,92,255,.18);font:inherit;font-size:12px;}
.signal-player-main{flex:1;min-width:0}.signal-player-line{display:flex;justify-content:space-between;font-size:6px;letter-spacing:.18em;color:rgba(238,246,255,.40);margin-bottom:5px}
#signalSeek{width:100%;accent-color:#c45cff;cursor:pointer}
.signal-link-placeholder{margin-top:13px;padding:14px;border:1px dashed rgba(238,246,255,.12);background:rgba(255,255,255,.018)}.signal-link-placeholder span{display:block;font-size:6px;letter-spacing:.24em;color:#c45cff}.signal-link-placeholder strong{display:block;margin-top:7px;font-size:9px;letter-spacing:.14em}.signal-link-placeholder small{display:block;margin-top:5px;font-size:5px;line-height:1.5;letter-spacing:.15em;color:rgba(238,246,255,.30)}
.signal-track-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;flex:0 0 auto;}
.signal-track-card{position:relative;min-height:92px;padding:14px 16px;border:1px solid rgba(238,246,255,.10);background:linear-gradient(140deg,rgba(9,13,21,.72),rgba(3,5,10,.78));color:#fff;text-align:left;cursor:pointer;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;overflow:hidden}
.signal-track-card::after{content:"";position:absolute;right:-10%;bottom:-75%;width:52%;aspect-ratio:1;border:1px solid rgba(196,92,255,.15);border-radius:50%;}.signal-track-card:hover{transform:translateY(-3px);border-color:rgba(196,92,255,.38);box-shadow:0 16px 40px rgba(0,0,0,.26)}.signal-track-card.is-active{border-color:rgba(196,92,255,.58);box-shadow:inset 0 0 0 1px rgba(196,92,255,.11),0 0 28px rgba(196,92,255,.07)}
.signal-track-card>*{position:relative;z-index:2}.signal-track-card span{display:block;font-size:5px;letter-spacing:.24em;color:rgba(112,220,255,.52)}.signal-track-card strong{display:block;margin-top:11px;font-size:18px;line-height:.86;letter-spacing:-.03em}.signal-track-card em{display:block;margin-top:10px;font-size:5px;letter-spacing:.20em;font-style:normal;color:rgba(238,246,255,.33)}.signal-track-card i{position:absolute;right:15px;top:14px;font-style:normal;color:#c45cff;font-size:11px}
.signal-radar-footer{display:flex;justify-content:space-between;gap:20px;margin-top:12px;font-size:6px;letter-spacing:.24em;color:rgba(238,246,255,.28);flex:0 0 auto}
@media (max-width:1050px){.signal-radar-layout{grid-template-columns:minmax(0,1fr) 300px;gap:14px;}.signal-radar-side-left{display:none}.signal-radar-viewport{grid-column:1;min-height:390px}.signal-radar-detail{grid-column:2;min-height:0}.signal-radar-head .signal-radar-readout{display:none}.signal-radar-head h2{font-size:56px}.signal-track-row{display:none !important}}
@media (max-width:760px){.signal-radar-shell{width:94vw;padding-top:88px;overflow:auto}.signal-radar-head{display:block}.signal-radar-head h2{font-size:43px}.signal-radar-layout{display:flex;flex-direction:column;gap:10px;margin-top:16px}.signal-radar-side-left{display:none}.signal-radar-viewport{min-height:370px}.signal-radar-detail{min-height:290px}.signal-track-row{display:none !important}.signal-radar-footer{padding-bottom:12px}.radar-node-label{width:145px}.radar-node-1{left:24%;top:34%}.radar-node-2{left:62%;top:55%}.radar-node-3{left:39%;top:72%}}
@media (max-width:480px){.signal-radar-viewport{min-height:330px}.signal-radar-grid{max-width:92%;max-height:80%}.radar-node-label{width:122px;padding:7px 8px}.radar-node-label strong{font-size:7px}.radar-node-label em{font-size:4px}.signal-radar-detail{padding:20px}.signal-radar-detail h3{font-size:32px}.signal-player{padding:10px}.signal-track-card strong{font-size:16px}}

/* V21 â€” THREE PORTAL HOME / circular glass gateways */
.home-screen{align-items:flex-start;justify-content:center;overflow:hidden;background:radial-gradient(circle at 50% 48%,rgba(97,64,166,.10),transparent 42%)}
.home-content{width:min(1260px,92vw);padding-top:9vh}
.home-heading{position:relative;z-index:3}
.home-heading .eyebrow{font-size:9px;letter-spacing:.55em;color:rgba(238,246,255,.48)}
.home-heading .logo-small{width:min(300px,42vw);margin:8px 0 0}
.home-tagline{margin:3px 0 22px;font-size:8px;letter-spacing:.46em;color:rgba(238,246,255,.46)}
.portal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start;justify-items:center;perspective:1600px;padding:18px 8px 16px;max-width:1240px;margin:0 auto}
.portal-card{--lift:0px;--tilt:0deg;--glow:rgba(206,239,255,.90);position:relative;width:min(100%,370px);min-height:420px;padding:0;background:none;border:0;border-radius:0;box-shadow:none;cursor:pointer;text-align:center;transform:translateY(var(--lift)) rotateZ(var(--tilt));transition:transform .5s cubic-bezier(.2,.8,.2,1),filter .4s ease;isolation:isolate;overflow:visible}
.portal-card:nth-child(1){--tilt:-2deg;--offset:0}
.portal-card:nth-child(2){--tilt:0deg;--offset:0;--glow:rgba(221,166,255,.96)}
.portal-card:nth-child(3){--tilt:2deg;--offset:0}
.portal-ring{position:relative;display:block;width:min(30vw,360px);height:min(30vw,360px);margin:0 auto;border-radius:50%;overflow:hidden;border:2px solid rgba(221,238,255,.88);background:radial-gradient(circle at 50% 58%,rgba(12,18,30,.40),rgba(6,8,15,.74) 68%,rgba(4,5,12,.96));box-shadow:0 0 0 3px rgba(89,184,255,.10),0 0 30px rgba(91,211,255,.18),0 26px 58px rgba(0,0,0,.42),inset 0 0 42px rgba(136,212,255,.12);transform:translateZ(0);transition:box-shadow .45s ease,border-color .4s ease,transform .5s cubic-bezier(.2,.8,.2,1)}
.portal-world .portal-ring{border-color:rgba(230,188,255,.92);box-shadow:0 0 0 3px rgba(207,103,255,.10),0 0 34px rgba(196,91,255,.24),0 26px 58px rgba(0,0,0,.45),inset 0 0 46px rgba(194,89,255,.12)}
.portal-image{position:absolute;inset:10px;width:calc(100% - 20px);height:calc(100% - 20px);margin:0;border:0;border-radius:50%;object-fit:cover;object-position:center;filter:saturate(.52) contrast(1.12) brightness(.44);transform:scale(1.025);transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .55s ease}
.portal-glass{position:absolute;inset:11px;border-radius:50%;background:radial-gradient(circle at 46% 38%,rgba(255,255,255,.11),transparent 21%),radial-gradient(circle at 50% 72%,rgba(102,215,255,.10),transparent 47%),linear-gradient(135deg,rgba(255,255,255,.12),transparent 32%,rgba(153,91,255,.10));mix-blend-mode:screen;pointer-events:none}
.portal-gridline{position:absolute;inset:18px;border-radius:50%;border:1px solid rgba(255,255,255,.15);box-shadow:inset 0 0 24px rgba(255,255,255,.05);pointer-events:none}
.portal-beam{position:absolute;left:50%;top:50%;width:50%;height:2px;transform-origin:left center;transform:rotate(-90deg);background:linear-gradient(90deg,rgba(255,255,255,.94),rgba(151,220,255,.58),transparent);box-shadow:0 0 14px rgba(171,233,255,.8);opacity:.86;pointer-events:none;animation:portalScan 5s linear infinite}
.portal-world .portal-beam{background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(215,122,255,.65),transparent);box-shadow:0 0 14px rgba(213,102,255,.85)}
@keyframes portalScan{to{transform:rotate(270deg)}}
.portal-symbol{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:84px;height:84px;border:1px solid rgba(238,248,255,.34);border-radius:50%;font-size:48px;line-height:1;color:#eef7ff;text-shadow:0 0 16px currentColor,0 0 34px rgba(116,207,255,.26);background:radial-gradient(circle,rgba(255,255,255,.08),rgba(7,12,20,.06) 60%,transparent 72%);backdrop-filter:blur(3px);pointer-events:none}
.portal-world .portal-symbol{color:#f3d7ff;text-shadow:0 0 16px currentColor,0 0 34px rgba(214,105,255,.34)}
.portal-copy{display:block;position:relative;z-index:4;margin-top:18px;text-align:center}
.portal-index,.portal-label,.portal-sub,.portal-arrow{position:static;display:block}
.portal-index{font-size:7px;letter-spacing:.34em;color:rgba(238,246,255,.42);margin-bottom:7px}
.portal-label{font-size:22px;letter-spacing:.24em;font-weight:700;color:#f3f8ff;text-shadow:0 2px 16px rgba(0,0,0,.75)}
.portal-sub{margin-top:8px;font-size:7px;letter-spacing:.28em;color:rgba(238,246,255,.52)}
.portal-arrow{margin-top:15px;font-size:8px;letter-spacing:.28em;color:rgba(238,246,255,.72);transition:transform .35s ease,color .35s ease}
.portal-card:hover,.portal-card:focus-visible{--lift:-10px;outline:none;filter:brightness(1.06)}
.portal-card:hover .portal-ring,.portal-card:focus-visible .portal-ring{transform:translateY(-5px) scale(1.012);border-color:rgba(245,251,255,.98);box-shadow:0 0 0 4px rgba(176,225,255,.10),0 0 44px rgba(108,218,255,.32),0 32px 70px rgba(0,0,0,.52),inset 0 0 48px rgba(150,221,255,.15)}
.portal-world:hover .portal-ring,.portal-world:focus-visible .portal-ring{box-shadow:0 0 0 4px rgba(221,166,255,.10),0 0 50px rgba(201,96,255,.38),0 32px 72px rgba(0,0,0,.54),inset 0 0 52px rgba(208,98,255,.16)}
.portal-card:hover .portal-image,.portal-card:focus-visible .portal-image{transform:scale(1.06);filter:saturate(.72) contrast(1.15) brightness(.52)}
.portal-card:hover .portal-symbol,.portal-card:focus-visible .portal-symbol{box-shadow:0 0 20px rgba(181,231,255,.12),inset 0 0 28px rgba(181,231,255,.08)}
.portal-world:hover .portal-symbol,.portal-world:focus-visible .portal-symbol{box-shadow:0 0 22px rgba(205,104,255,.14),inset 0 0 28px rgba(205,104,255,.08)}
.portal-card:hover .portal-arrow,.portal-card:focus-visible .portal-arrow{transform:translateY(-2px);color:#fff}
.portal-grid:hover .portal-card:not(:hover){opacity:.72;transform:translateY(4px) rotateZ(var(--tilt)) scale(.985)}
.home-orbit{opacity:.18}
.home-footer{margin-top:8px;position:relative;z-index:4}
.home-status b{background:var(--purple-hot);box-shadow:0 0 9px var(--purple-hot)}


/* V23.2.8 â€” responsive artwork pairs */
.responsive-artwork-grid{display:grid;grid-template-columns:1fr;gap:14px;grid-auto-rows:auto;}
.image-archive-pair{display:grid;grid-template-columns:minmax(0,2.05fr) minmax(190px,.72fr);gap:10px;align-items:stretch;}
.image-archive-pair .image-archive-card{grid-column:auto!important;grid-row:auto!important;height:360px;min-height:0;}
.image-archive-pair .artwork-wide img,.image-archive-pair .artwork-mobile img{display:block;width:100%;height:100%;object-fit:cover;}
.image-archive-pair .artwork-mobile img{object-position:center;}
.archive-art-tag{position:absolute;left:10px;top:10px;z-index:2;padding:7px 9px;background:rgba(3,5,10,.58);border:1px solid rgba(255,255,255,.14);font-size:6px;letter-spacing:.18em;color:rgba(238,246,255,.75);backdrop-filter:blur(5px);}
.archive-lower-card{height:260px!important;}
@media (max-width:760px){.responsive-artwork-grid{gap:12px}.image-archive-pair{grid-template-columns:1fr 1fr;gap:8px}.image-archive-pair .image-archive-card{height:52vw;min-height:190px;max-height:300px}.image-archive-pair .artwork-mobile{height:52vw;max-height:300px}.archive-lower-card{height:220px!important}.archive-art-tag{left:7px;top:7px;font-size:5px;padding:6px 7px;}}
.store-product-art{position:relative;}
.store-gallery-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:34px;height:34px;border:1px solid rgba(238,246,255,.18);background:rgba(3,5,10,.58);backdrop-filter:blur(9px);color:#fff;cursor:pointer;font-size:24px;line-height:1;display:grid;place-items:center;opacity:.75;transition:opacity .2s ease,border-color .2s ease,background .2s ease;}
.store-gallery-arrow:hover{opacity:1;border-color:rgba(201,151,255,.62);background:rgba(10,8,18,.78);}
.store-gallery-prev{left:12px;}.store-gallery-next{right:12px;}
.store-product-thumbs{position:absolute;z-index:4;left:12px;right:12px;bottom:12px;display:flex;gap:7px;overflow:auto;padding:2px;scrollbar-width:thin;}
.store-product-thumb{flex:0 0 58px;width:58px;height:58px;padding:0;border:1px solid rgba(238,246,255,.16);background:rgba(3,5,10,.72);cursor:pointer;opacity:.72;transition:opacity .2s ease,border-color .2s ease,transform .2s ease;}
.store-product-thumb:hover{opacity:1;transform:translateY(-1px);}.store-product-thumb.is-selected{opacity:1;border-color:rgba(201,151,255,.78);box-shadow:0 0 0 1px rgba(201,151,255,.16);}
.store-product-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.store-option-list{display:flex;flex-wrap:wrap;gap:7px;}
.store-option{border:1px solid rgba(238,246,255,.16);background:rgba(255,255,255,.025);padding:9px 11px;min-width:62px;color:rgba(238,246,255,.72);cursor:pointer;font-size:7px;letter-spacing:.08em;text-align:center;transition:background .2s ease,border-color .2s ease,transform .2s ease;color .2s ease;}
.store-option:hover{border-color:rgba(201,151,255,.52);transform:translateY(-1px);}.store-option.is-selected{border-color:rgba(201,151,255,.84);background:rgba(201,151,255,.12);color:#fff;box-shadow:inset 0 0 18px rgba(201,151,255,.07);}.store-option.is-unavailable{opacity:.30;text-decoration:line-through;cursor:not-allowed;transform:none;}
.store-selection-note{margin-top:4px;min-height:12px;color:rgba(238,246,255,.34);font-size:5px;letter-spacing:.18em;}
.store-option-block[hidden],.store-variation-block[hidden]{display:none!important;}

@media (max-width:980px){
  .home-content{padding-top:8vh;width:94vw}
  .portal-grid{gap:8px;padding-top:12px}
  .portal-card{min-height:380px}
}
@media (max-width:820px){
  .home-screen{overflow:auto;align-items:flex-start}
  .home-content{padding-top:11vh;padding-bottom:5vh}
  .home-heading .logo-small{width:min(250px,54vw)}
  .home-tagline{font-size:7px;letter-spacing:.35em;margin-bottom:16px}
  .portal-grid{grid-template-columns:1fr;gap:14px;max-width:470px;max-height:none;overflow:visible}
  .portal-card{width:100%;min-height:0}
  .portal-ring{width:min(70vw,320px);height:min(70vw,320px)}
  .portal-copy{margin-top:12px}
  .portal-label{font-size:19px}
  .portal-sub{font-size:6px}
  .home-footer{display:flex;justify-content:center;gap:15px;flex-wrap:wrap;margin-top:14px}
}

/* V22 â€” HOME PORTALS / energy halos + integrated text treatment */
.home-screen{background:radial-gradient(ellipse at 50% 54%,rgba(96,84,158,.12),transparent 46%),linear-gradient(180deg,rgba(2,4,9,.10),rgba(2,4,9,.28));}
.home-orbit{display:none;}
.portal-grid{gap:0;max-width:1320px;padding:18px 0 8px;align-items:start;}
.portal-card{width:min(100%,440px);min-height:430px;padding:0;background:transparent !important;border:0 !important;border-radius:0 !important;box-shadow:none !important;overflow:visible;}
.portal-card::before,.portal-card::after{display:none !important;}
.portal-ring{width:min(31vw,390px);height:min(31vw,390px);overflow:visible;border:2px solid rgba(231,242,255,.92);background:radial-gradient(circle at 50% 55%,rgba(6,12,20,.26),rgba(4,7,13,.56) 67%,rgba(3,5,10,.88) 100%);box-shadow:0 0 0 2px rgba(226,239,255,.08),0 0 26px rgba(105,185,255,.16),0 0 70px rgba(92,145,212,.10),0 28px 65px rgba(0,0,0,.44),inset 0 0 42px rgba(160,215,255,.12);}
.portal-world .portal-ring{border-color:rgba(239,212,255,.96);box-shadow:0 0 0 2px rgba(235,197,255,.08),0 0 30px rgba(200,94,255,.20),0 0 72px rgba(173,82,255,.10),0 28px 65px rgba(0,0,0,.46),inset 0 0 44px rgba(196,92,255,.12);}
.portal-ring::before{content:"";position:absolute;inset:-10px;border-radius:50%;padding:2px;background:conic-gradient(from 0deg,transparent 0deg 20deg,rgba(242,250,255,.92) 23deg 38deg,transparent 42deg 112deg,rgba(164,221,255,.66) 118deg 138deg,transparent 144deg 228deg,rgba(240,248,255,.74) 234deg 250deg,transparent 256deg 332deg,rgba(130,211,255,.52) 338deg 350deg,transparent 352deg 360deg);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;filter:drop-shadow(0 0 9px rgba(119,214,255,.50));animation:portalEnergySpin 8s linear infinite;pointer-events:none;z-index:3;}
.portal-world .portal-ring::before{background:conic-gradient(from 0deg,transparent 0deg 26deg,rgba(249,228,255,.96) 30deg 44deg,transparent 49deg 108deg,rgba(212,116,255,.78) 114deg 132deg,transparent 138deg 220deg,rgba(242,216,255,.76) 226deg 246deg,transparent 252deg 322deg,rgba(203,104,255,.62) 328deg 346deg,transparent 352deg 360deg);filter:drop-shadow(0 0 10px rgba(206,98,255,.62));}
.portal-ring::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:1px solid rgba(226,239,255,.18);box-shadow:0 0 18px rgba(116,210,255,.14);animation:portalEnergyPulse 3.8s ease-in-out infinite;pointer-events:none;z-index:4;}
.portal-world .portal-ring::after{border-color:rgba(230,202,255,.20);box-shadow:0 0 20px rgba(206,98,255,.16);}
.portal-image{z-index:1;width:calc(100% - 16px);height:calc(100% - 16px);inset:8px;filter:saturate(.48) contrast(1.16) brightness(.46);transform:scale(1.018);}
.portal-glass{display:none;}
.portal-gridline{inset:15px;z-index:5;border:1px solid rgba(245,250,255,.13);border-style:solid;box-shadow:inset 0 0 18px rgba(255,255,255,.035);}
.portal-beam{display:none;}
.portal-symbol{display:none;}
.portal-copy{position:absolute;left:0;right:0;top:calc(min(31vw,390px) - 48px);margin:0;z-index:8;text-align:center;pointer-events:none;}
.portal-index{font-size:6px;letter-spacing:.34em;margin-bottom:6px;color:rgba(238,246,255,.34);text-shadow:0 2px 14px rgba(0,0,0,.95);}
.portal-label{font-size:23px;letter-spacing:.31em;line-height:1;color:#f4f8ff;text-shadow:0 2px 18px rgba(0,0,0,.92),0 0 14px rgba(255,255,255,.10);}
.portal-sub{margin-top:8px;font-size:6px;letter-spacing:.28em;color:rgba(238,246,255,.58);text-shadow:0 2px 14px rgba(0,0,0,.95);}
.portal-arrow{margin-top:11px;font-size:7px;letter-spacing:.30em;color:rgba(238,246,255,.76);text-shadow:0 2px 14px rgba(0,0,0,.95);}
.portal-card:hover .portal-ring,.portal-card:focus-visible .portal-ring{transform:translateY(-4px) scale(1.012);}
.portal-card:hover .portal-image,.portal-card:focus-visible .portal-image{transform:scale(1.055);filter:saturate(.62) contrast(1.18) brightness(.52);}
.portal-grid:hover .portal-card:not(:hover){opacity:.80;}
.portal-card:hover .portal-ring::before,.portal-card:focus-visible .portal-ring::before{filter:drop-shadow(0 0 13px rgba(142,223,255,.68));}
.portal-world:hover .portal-ring::before,.portal-world:focus-visible .portal-ring::before{filter:drop-shadow(0 0 14px rgba(214,113,255,.80));}
@keyframes portalEnergySpin{to{transform:rotate(360deg)}}
@keyframes portalEnergyPulse{0%,100%{opacity:.34;transform:scale(.995)}50%{opacity:.88;transform:scale(1.012)}}
.store-product-art{position:relative;}
.store-gallery-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:34px;height:34px;border:1px solid rgba(238,246,255,.18);background:rgba(3,5,10,.58);backdrop-filter:blur(9px);color:#fff;cursor:pointer;font-size:24px;line-height:1;display:grid;place-items:center;opacity:.75;transition:opacity .2s ease,border-color .2s ease,background .2s ease;}
.store-gallery-arrow:hover{opacity:1;border-color:rgba(201,151,255,.62);background:rgba(10,8,18,.78);}
.store-gallery-prev{left:12px;}.store-gallery-next{right:12px;}
.store-product-thumbs{position:absolute;z-index:4;left:12px;right:12px;bottom:12px;display:flex;gap:7px;overflow:auto;padding:2px;scrollbar-width:thin;}
.store-product-thumb{flex:0 0 58px;width:58px;height:58px;padding:0;border:1px solid rgba(238,246,255,.16);background:rgba(3,5,10,.72);cursor:pointer;opacity:.72;transition:opacity .2s ease,border-color .2s ease,transform .2s ease;}
.store-product-thumb:hover{opacity:1;transform:translateY(-1px);}.store-product-thumb.is-selected{opacity:1;border-color:rgba(201,151,255,.78);box-shadow:0 0 0 1px rgba(201,151,255,.16);}
.store-product-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.store-option-list{display:flex;flex-wrap:wrap;gap:7px;}
.store-option{border:1px solid rgba(238,246,255,.16);background:rgba(255,255,255,.025);padding:9px 11px;min-width:62px;color:rgba(238,246,255,.72);cursor:pointer;font-size:7px;letter-spacing:.08em;text-align:center;transition:background .2s ease,border-color .2s ease,transform .2s ease;color .2s ease;}
.store-option:hover{border-color:rgba(201,151,255,.52);transform:translateY(-1px);}.store-option.is-selected{border-color:rgba(201,151,255,.84);background:rgba(201,151,255,.12);color:#fff;box-shadow:inset 0 0 18px rgba(201,151,255,.07);}.store-option.is-unavailable{opacity:.30;text-decoration:line-through;cursor:not-allowed;transform:none;}
.store-selection-note{margin-top:4px;min-height:12px;color:rgba(238,246,255,.34);font-size:5px;letter-spacing:.18em;}
.store-option-block[hidden],.store-variation-block[hidden]{display:none!important;}

@media (max-width:980px){.portal-grid{gap:0}.portal-ring{width:min(31vw,350px);height:min(31vw,350px)}.portal-copy{top:calc(min(31vw,350px) - 44px)}}
@media (max-width:820px){.portal-grid{gap:20px;padding-top:10px}.portal-card{width:100%;min-height:340px}.portal-ring{width:min(70vw,320px);height:min(70vw,320px)}.portal-copy{top:calc(min(70vw,320px) - 42px)}.portal-label{font-size:19px}}

/* V22.1 â€” smaller portals + clean labels beneath + distinct portal interiors */
.portal-grid{gap:8px;max-width:1180px;padding-top:10px;}
.portal-card{width:min(100%,390px);min-height:365px;}
.portal-ring{width:min(27vw,330px);height:min(27vw,330px);}
.portal-image{inset:9px;width:calc(100% - 18px);height:calc(100% - 18px);filter:saturate(.60) contrast(1.14) brightness(.50);}
.portal-music .portal-image{filter:saturate(.48) contrast(1.16) brightness(.50) hue-rotate(-6deg);}
.portal-world .portal-image{filter:saturate(.66) contrast(1.12) brightness(.48) hue-rotate(5deg);}
.portal-visuals .portal-image{filter:saturate(.54) contrast(1.16) brightness(.50) hue-rotate(10deg);}
.portal-copy{position:relative;left:auto;right:auto;top:auto;margin-top:15px;pointer-events:none;}
.portal-index{font-size:6px;letter-spacing:.34em;margin-bottom:7px;color:rgba(238,246,255,.38);}
.portal-label{font-size:20px;letter-spacing:.28em;line-height:1.05;}
.portal-sub{margin-top:8px;font-size:6px;letter-spacing:.25em;color:rgba(238,246,255,.56);}
.portal-arrow{margin-top:12px;font-size:7px;letter-spacing:.28em;}
.portal-card:hover .portal-ring,.portal-card:focus-visible .portal-ring{transform:translateY(-5px) scale(1.018);}
.portal-card:hover .portal-image,.portal-card:focus-visible .portal-image{transform:scale(1.045);}
.store-product-art{position:relative;}
.store-gallery-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:34px;height:34px;border:1px solid rgba(238,246,255,.18);background:rgba(3,5,10,.58);backdrop-filter:blur(9px);color:#fff;cursor:pointer;font-size:24px;line-height:1;display:grid;place-items:center;opacity:.75;transition:opacity .2s ease,border-color .2s ease,background .2s ease;}
.store-gallery-arrow:hover{opacity:1;border-color:rgba(201,151,255,.62);background:rgba(10,8,18,.78);}
.store-gallery-prev{left:12px;}.store-gallery-next{right:12px;}
.store-product-thumbs{position:absolute;z-index:4;left:12px;right:12px;bottom:12px;display:flex;gap:7px;overflow:auto;padding:2px;scrollbar-width:thin;}
.store-product-thumb{flex:0 0 58px;width:58px;height:58px;padding:0;border:1px solid rgba(238,246,255,.16);background:rgba(3,5,10,.72);cursor:pointer;opacity:.72;transition:opacity .2s ease,border-color .2s ease,transform .2s ease;}
.store-product-thumb:hover{opacity:1;transform:translateY(-1px);}.store-product-thumb.is-selected{opacity:1;border-color:rgba(201,151,255,.78);box-shadow:0 0 0 1px rgba(201,151,255,.16);}
.store-product-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.store-option-list{display:flex;flex-wrap:wrap;gap:7px;}
.store-option{border:1px solid rgba(238,246,255,.16);background:rgba(255,255,255,.025);padding:9px 11px;min-width:62px;color:rgba(238,246,255,.72);cursor:pointer;font-size:7px;letter-spacing:.08em;text-align:center;transition:background .2s ease,border-color .2s ease,transform .2s ease;color .2s ease;}
.store-option:hover{border-color:rgba(201,151,255,.52);transform:translateY(-1px);}.store-option.is-selected{border-color:rgba(201,151,255,.84);background:rgba(201,151,255,.12);color:#fff;box-shadow:inset 0 0 18px rgba(201,151,255,.07);}.store-option.is-unavailable{opacity:.30;text-decoration:line-through;cursor:not-allowed;transform:none;}
.store-selection-note{margin-top:4px;min-height:12px;color:rgba(238,246,255,.34);font-size:5px;letter-spacing:.18em;}
.store-option-block[hidden],.store-variation-block[hidden]{display:none!important;}

@media (max-width:980px){
  .portal-grid{gap:2px;max-width:1050px;}
  .portal-card{min-height:350px;}
  .portal-ring{width:min(27vw,300px);height:min(27vw,300px);}
}
@media (max-width:820px){
  .portal-grid{gap:22px;}
  .portal-card{min-height:0;}
  .portal-ring{width:min(62vw,300px);height:min(62vw,300px);}
  .portal-copy{margin-top:12px;}
  .portal-label{font-size:18px;}
}

/* V22.2 â€” smaller circular gateways + clean labels + distinct realm artwork */
.portal-grid{gap:2px;max-width:1120px;padding-top:8px;}
.portal-card{width:min(100%,370px);min-height:350px;}
.portal-ring{width:min(26vw,315px);height:min(26vw,315px);}
.portal-image{inset:8px;width:calc(100% - 16px);height:calc(100% - 16px);object-fit:cover;filter:none;transform:scale(1.01);}
.portal-music .portal-image,.portal-world .portal-image,.portal-visuals .portal-image{filter:contrast(1.05) brightness(.92);}
.portal-copy{position:relative;left:auto;right:auto;top:auto;margin-top:14px;z-index:8;pointer-events:none;}
.portal-index{font-size:6px;letter-spacing:.34em;margin-bottom:7px;}
.portal-label{font-size:20px;letter-spacing:.28em;line-height:1.05;text-shadow:0 2px 18px rgba(0,0,0,.95),0 0 10px rgba(181,117,255,.10);}
.portal-sub{margin-top:8px;font-size:6px;letter-spacing:.25em;}
.portal-arrow{margin-top:11px;font-size:7px;letter-spacing:.28em;}
.store-product-art{position:relative;}
.store-gallery-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:34px;height:34px;border:1px solid rgba(238,246,255,.18);background:rgba(3,5,10,.58);backdrop-filter:blur(9px);color:#fff;cursor:pointer;font-size:24px;line-height:1;display:grid;place-items:center;opacity:.75;transition:opacity .2s ease,border-color .2s ease,background .2s ease;}
.store-gallery-arrow:hover{opacity:1;border-color:rgba(201,151,255,.62);background:rgba(10,8,18,.78);}
.store-gallery-prev{left:12px;}.store-gallery-next{right:12px;}
.store-product-thumbs{position:absolute;z-index:4;left:12px;right:12px;bottom:12px;display:flex;gap:7px;overflow:auto;padding:2px;scrollbar-width:thin;}
.store-product-thumb{flex:0 0 58px;width:58px;height:58px;padding:0;border:1px solid rgba(238,246,255,.16);background:rgba(3,5,10,.72);cursor:pointer;opacity:.72;transition:opacity .2s ease,border-color .2s ease,transform .2s ease;}
.store-product-thumb:hover{opacity:1;transform:translateY(-1px);}.store-product-thumb.is-selected{opacity:1;border-color:rgba(201,151,255,.78);box-shadow:0 0 0 1px rgba(201,151,255,.16);}
.store-product-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.store-option-list{display:flex;flex-wrap:wrap;gap:7px;}
.store-option{border:1px solid rgba(238,246,255,.16);background:rgba(255,255,255,.025);padding:9px 11px;min-width:62px;color:rgba(238,246,255,.72);cursor:pointer;font-size:7px;letter-spacing:.08em;text-align:center;transition:background .2s ease,border-color .2s ease,transform .2s ease;color .2s ease;}
.store-option:hover{border-color:rgba(201,151,255,.52);transform:translateY(-1px);}.store-option.is-selected{border-color:rgba(201,151,255,.84);background:rgba(201,151,255,.12);color:#fff;box-shadow:inset 0 0 18px rgba(201,151,255,.07);}.store-option.is-unavailable{opacity:.30;text-decoration:line-through;cursor:not-allowed;transform:none;}
.store-selection-note{margin-top:4px;min-height:12px;color:rgba(238,246,255,.34);font-size:5px;letter-spacing:.18em;}
.store-option-block[hidden],.store-variation-block[hidden]{display:none!important;}

@media (max-width:980px){.portal-grid{max-width:1010px}.portal-card{min-height:335px}.portal-ring{width:min(26vw,285px);height:min(26vw,285px)}}
@media (max-width:820px){.portal-grid{gap:20px}.portal-ring{width:min(60vw,290px);height:min(60vw,290px)}.portal-copy{margin-top:11px}.portal-label{font-size:18px}}

/* V22.2 â€” final portal interior imagery */
.portal-music .portal-image{filter:saturate(.74) contrast(1.08) brightness(.70);}
.portal-world .portal-image{filter:saturate(.82) contrast(1.08) brightness(.70);}
.portal-visuals .portal-image{filter:saturate(.68) contrast(1.10) brightness(.64);object-position:center;}
.portal-card .portal-image{box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),inset 0 0 34px rgba(3,6,14,.42);}


/* =========================
   VISUALS HUB / V23
   ========================= */
.visuals-screen{position:fixed;inset:0;z-index:24;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;opacity:0;pointer-events:none;background:#03050a;color:#eef6ff;}
.visuals-screen.open{opacity:1;pointer-events:auto;}
.visuals-backdrop{position:absolute;inset:0;background:radial-gradient(circle at 76% 42%,rgba(116,70,186,.11),transparent 30%),radial-gradient(circle at 20% 70%,rgba(61,142,190,.08),transparent 32%),linear-gradient(180deg,#02040a 0%,#05070e 55%,#02040a 100%);}
.visuals-gridline{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:90px 90px;mask-image:linear-gradient(to bottom,transparent,#000 16%,#000 84%,transparent);opacity:.35;pointer-events:none;}
.visuals-noise{position:absolute;inset:0;opacity:.11;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.26'/%3E%3C/svg%3E");pointer-events:none;mix-blend-mode:screen;}
.visuals-shell{position:relative;z-index:2;width:min(1500px,92vw);min-height:100%;height:auto;margin:0 auto;padding:24px 0 40px;display:flex;flex-direction:column;overflow:visible;}
.visuals-topbar{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding-top:24px;padding-bottom:12px;background:linear-gradient(180deg,rgba(3,5,10,.96) 0%,rgba(3,5,10,.78) 72%,rgba(3,5,10,0) 100%);backdrop-filter:blur(5px);}
.visuals-home,.visuals-close{border:0;background:none;color:rgba(238,246,255,.68);cursor:pointer;font:inherit;font-size:9px;letter-spacing:.22em;padding:8px 0;text-transform:uppercase;}
.visuals-home{justify-self:start;font-weight:800;font-size:12px;color:#f4f6fa;letter-spacing:.16em;}
.visuals-close{justify-self:end;}
.visuals-navline{display:flex;align-items:center;gap:12px;font-size:7px;letter-spacing:.3em;color:rgba(238,246,255,.45);}
.visuals-navline b{display:block;width:28px;height:1px;background:linear-gradient(90deg,#7ed5ff,#c45cff);}
.visuals-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;padding:8vh 0 34px;}
.visuals-kicker{margin:0 0 8px;font-size:8px;letter-spacing:.3em;color:rgba(238,246,255,.45);}
.visuals-heading h1{margin:0;font-size:clamp(48px,7vw,92px);line-height:.82;letter-spacing:-.05em;text-transform:uppercase;text-shadow:0 0 36px rgba(151,86,255,.12);}
.visuals-heading p:not(.visuals-kicker){max-width:610px;margin:15px 0 0;color:rgba(238,246,255,.60);font-size:12px;line-height:1.65;letter-spacing:.04em;}
.visuals-readout{min-width:260px;padding:14px 0 2px;border-top:1px solid rgba(238,246,255,.13);text-align:right;}
.visuals-readout span,.visuals-readout small{display:block;font-size:7px;letter-spacing:.24em;color:rgba(238,246,255,.39);}
.visuals-readout strong{display:block;margin:8px 0;font-size:10px;letter-spacing:.16em;color:rgba(238,246,255,.78);}
.visuals-readout strong b,.visuals-hub-footer b{display:inline-block;width:5px;height:5px;border-radius:50%;background:#b989ff;box-shadow:0 0 12px rgba(185,137,255,.7);margin-right:7px;}
.visuals-hub{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;flex:0 0 auto;min-height:0;}
.visuals-hub.is-hidden{display:none;}
.visuals-category{position:relative;min-height:390px;border:1px solid rgba(238,246,255,.14);background:#06080f;overflow:hidden;text-align:left;color:#fff;cursor:pointer;padding:0;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease;}
.visuals-category::before{content:"";position:absolute;inset:10px;border:1px solid rgba(255,255,255,.07);z-index:5;pointer-events:none;}
.visuals-category:hover,.visuals-category:focus-visible{transform:translateY(-5px);border-color:rgba(196,92,255,.46);box-shadow:0 22px 60px rgba(0,0,0,.35),0 0 32px rgba(143,87,255,.08);}
.visuals-category-image{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.015);transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .45s ease;}
.visuals-category:hover .visuals-category-image{transform:scale(1.06);}
.visuals-category-video .visuals-category-image{background-image:url('../assets/thumb-dont-fall-for-me-v2.jpg');}
.visuals-category-wallpapers .visuals-category-image{background-image:url('../assets/wallpapers/posters/001-drift.jpg');}
.visuals-category-images .visuals-category-image{background-image:url('../assets/release-covers/parallax.jpg');}
.visuals-category-wallpapers .visuals-category-image{background-size:cover;background-position:center 42%;}
.visuals-category-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,5,10,.06),rgba(3,5,10,.10) 38%,rgba(3,5,10,.92) 100%),linear-gradient(90deg,rgba(3,5,10,.18),transparent 55%,rgba(116,61,195,.12));z-index:1;}
.visuals-category-copy{position:absolute;left:28px;right:28px;bottom:28px;z-index:6;display:block;}
.visuals-category-copy small{display:block;font-size:7px;letter-spacing:.24em;color:rgba(238,246,255,.46);}
.visuals-category-copy strong{display:block;margin-top:8px;font-size:clamp(28px,3.6vw,48px);line-height:.86;letter-spacing:-.04em;}
.visuals-category-copy em{display:block;margin-top:12px;font-style:normal;font-size:7px;letter-spacing:.2em;color:rgba(238,246,255,.56);}
.visuals-category-copy i{display:block;margin-top:18px;font-style:normal;font-size:8px;letter-spacing:.22em;color:rgba(238,246,255,.82);}
.visuals-hub-footer{display:flex;justify-content:space-between;align-items:center;padding-top:14px;color:rgba(238,246,255,.34);font-size:7px;letter-spacing:.22em;}
.visuals-hub-footer span:last-child{color:rgba(238,246,255,.5);}
.visuals-view{display:none;flex:0 0 auto;min-height:0;overflow:visible;padding-bottom:20px;}
.visuals-view.open{display:block;}
.visuals-view-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:22px;}
.visuals-view-head p{margin:12px 0 5px;font-size:7px;letter-spacing:.25em;color:rgba(238,246,255,.42);}
.visuals-view-head h2{margin:0;font-size:clamp(38px,5vw,66px);line-height:.88;letter-spacing:-.045em;}
.visuals-view-head h2 em{font-style:normal;color:#c997ff;}
.visuals-view-head>span{font-size:7px;letter-spacing:.22em;color:rgba(238,246,255,.38);}
.visuals-view-back{border:0;border-left:1px solid rgba(197,151,255,.58);background:none;color:rgba(238,246,255,.68);cursor:pointer;padding:4px 0 4px 12px;font:inherit;font-size:7px;letter-spacing:.2em;}
.visuals-feature-video{position:relative;min-height:46vh;border:1px solid rgba(238,246,255,.13);overflow:hidden;background:#070a10;}
.visuals-feature-video>iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;background:#070a10;}
.feature-video-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,5,10,.76),rgba(3,5,10,.18) 55%,rgba(3,5,10,.46)),linear-gradient(180deg,rgba(3,5,10,.08),rgba(3,5,10,.60));pointer-events:none;}
.feature-video-copy{position:absolute;left:38px;bottom:36px;max-width:540px;z-index:3;pointer-events:none;}
.feature-video-copy small{font-size:7px;letter-spacing:.28em;color:rgba(238,246,255,.46);}
.feature-video-copy h3{margin:8px 0 6px;font-size:clamp(34px,5vw,72px);line-height:.86;letter-spacing:-.05em;}
.feature-video-copy p{margin:0;color:rgba(238,246,255,.62);font-size:10px;letter-spacing:.12em;}
.visuals-placeholder-button{margin-top:18px;padding:11px 14px;border:1px solid rgba(199,149,255,.44);background:rgba(7,8,14,.48);color:rgba(238,246,255,.78);font:inherit;font-size:7px;letter-spacing:.2em;cursor:default;}
.visuals-watch-link{display:inline-flex;pointer-events:auto;align-items:center;gap:10px;margin-top:18px;padding:11px 14px;border:1px solid rgba(199,149,255,.50);background:rgba(7,8,14,.54);color:rgba(238,246,255,.86);font:inherit;font-size:7px;letter-spacing:.2em;cursor:pointer;transition:border-color .25s ease,background .25s ease,color .25s ease;}.visuals-watch-link span{color:#c997ff;}
.visuals-watch-link:hover{border-color:rgba(201,151,255,.9);background:rgba(25,12,40,.62);color:#fff;}
.visuals-play-mark{position:absolute;right:28px;top:28px;width:52px;height:52px;border:1px solid rgba(255,255,255,.28);display:grid;place-items:center;border-radius:50%;z-index:3;color:#fff;font-size:15px;padding-left:3px;box-shadow:0 0 30px rgba(181,105,255,.12);}
.visuals-thumb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px;}
.visuals-thumb-grid article{min-width:0;}
.visual-thumb-link{display:block;width:100%;padding:0;border:0;background:none;color:inherit;text-decoration:none;cursor:pointer;text-align:left;}
.visual-thumb{position:relative;aspect-ratio:16/9;overflow:hidden;border:1px solid rgba(238,246,255,.12);background:#070a10;}
.visual-thumb img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .55s ease;}
.visuals-thumb-grid article:hover .visual-thumb img{transform:scale(1.045);}
.visual-thumb span{position:absolute;right:12px;top:12px;width:30px;height:30px;border:1px solid rgba(255,255,255,.3);display:grid;place-items:center;font-size:9px;background:rgba(4,6,11,.52);border-radius:50%;}
.visuals-thumb-grid small,.visuals-thumb-grid strong,.visuals-thumb-grid em{display:block;}
.visuals-thumb-grid small{margin-top:9px;font-size:6px;letter-spacing:.2em;color:rgba(238,246,255,.36);}.visuals-thumb-grid strong{margin-top:6px;font-size:13px;letter-spacing:.12em}.visuals-thumb-grid em{margin-top:5px;font-style:normal;font-size:6px;letter-spacing:.18em;color:rgba(238,246,255,.44);}
.wallpaper-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.wallpaper-card{position:relative;min-height:240px;border:1px solid rgba(238,246,255,.12);overflow:hidden;background:#070a10;}
.wallpaper-card img{width:100%;height:100%;display:block;object-fit:cover;min-height:240px;transition:transform .65s ease;}.wallpaper-card:hover img{transform:scale(1.035);}
.wallpaper-card>div{position:absolute;left:0;right:0;bottom:0;padding:22px;background:linear-gradient(180deg,transparent,rgba(2,4,9,.94));display:grid;grid-template-columns:1fr auto;gap:7px 20px;align-items:end;}
.wallpaper-card small{grid-column:1/-1;font-size:6px;letter-spacing:.22em;color:rgba(238,246,255,.46);}.wallpaper-card strong{font-size:18px;letter-spacing:.12em;}.wallpaper-card a{color:#c997ff;font-size:7px;letter-spacing:.2em;text-decoration:none;white-space:nowrap;}.wallpaper-card a:hover{text-decoration:underline;}.wallpaper-wide{min-height:300px;}
.image-archive-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:90px;grid-auto-flow:dense;gap:10px;}
.image-archive-card{position:relative;border:1px solid rgba(238,246,255,.10);padding:0;background:#070a10;overflow:hidden;cursor:pointer;}
.image-archive-card picture{display:block;width:100%;height:100%;}.image-archive-card picture img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s ease,filter .45s ease;}.image-archive-card:hover img{transform:scale(1.045);filter:saturate(1.08) contrast(1.06);}.image-archive-card::after{content:"OPEN â†—";position:absolute;right:10px;top:10px;padding:7px 8px;background:rgba(3,5,10,.56);border:1px solid rgba(255,255,255,.14);font-size:6px;letter-spacing:.18em;opacity:0;transition:opacity .25s ease;}.image-archive-card:hover::after{opacity:1;}
.ratio-tall{grid-column:span 3;grid-row:span 4}.ratio-wide{grid-column:span 6;grid-row:span 4}.ratio-square{grid-column:span 3;grid-row:span 4}
.visuals-image-note{padding-top:12px;font-size:6px;letter-spacing:.2em;color:rgba(238,246,255,.35);}.visuals-image-note span{padding:0 6px;color:#c997ff;}
.visuals-lightbox{position:fixed;inset:0;width:100vw;height:100dvh;z-index:999;opacity:0;pointer-events:none;display:grid;place-items:center;padding:clamp(18px,3vw,42px);box-sizing:border-box;overflow:hidden;background:rgba(2,4,9,.95);backdrop-filter:blur(12px);transition:opacity .25s ease;}.visuals-lightbox.open{opacity:1;pointer-events:auto;}.visuals-lightbox-backdrop{position:absolute;inset:0;}.visuals-lightbox img{position:relative;z-index:2;display:block;width:auto;height:auto;max-width:min(92vw,1400px);max-height:calc(100dvh - 110px);object-fit:contain;box-shadow:0 35px 120px rgba(0,0,0,.68);}.visuals-lightbox-close{position:absolute;z-index:4;right:24px;top:22px;border:0;background:none;color:rgba(238,246,255,.84);font:inherit;font-size:8px;letter-spacing:.22em;cursor:pointer;}.visuals-lightbox.open img{max-height:calc(100dvh - 110px);}body.visuals-lightbox-open{overflow:hidden;height:100%;touch-action:none;}
@media (max-width:760px){.visuals-lightbox{padding:12px;}.visuals-lightbox img{max-width:96vw;max-height:calc(100dvh - 78px);}.visuals-lightbox-close{right:14px;top:12px;font-size:7px;}}
.visuals-video-lightbox{position:absolute;inset:0;z-index:32;opacity:0;pointer-events:none;display:grid;place-items:center;padding:clamp(18px,3vw,42px);background:rgba(2,4,9,.96);backdrop-filter:blur(14px);transition:opacity .25s ease;}.visuals-video-lightbox.open{opacity:1;pointer-events:auto;}.visuals-video-lightbox-backdrop{position:absolute;inset:0;}.visuals-video-lightbox-frame{position:relative;z-index:2;width:min(1180px,94vw);max-height:92vh;display:flex;flex-direction:column;background:#05070d;border:1px solid rgba(238,246,255,.15);box-shadow:0 40px 120px rgba(0,0,0,.7);}.visuals-video-lightbox-topline{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid rgba(238,246,255,.08);font-size:7px;letter-spacing:.22em;color:rgba(238,246,255,.44);}.visuals-video-lightbox-close{border:0;background:none;color:rgba(238,246,255,.72);font:inherit;font-size:8px;letter-spacing:.2em;cursor:pointer;}.visuals-video-embed-wrap{position:relative;aspect-ratio:16/9;background:#000;}.visuals-video-embed-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;}.visuals-video-lightbox-copy{display:grid;grid-template-columns:1fr auto;gap:7px 20px;padding:18px 20px 20px;align-items:end;}.visuals-video-lightbox-copy p,.visuals-video-lightbox-copy span{margin:0;font-size:6px;letter-spacing:.22em;color:rgba(238,246,255,.4);}.visuals-video-lightbox-copy p{grid-column:1/-1;}.visuals-video-lightbox-copy h3{margin:0;font-size:clamp(22px,3vw,42px);letter-spacing:-.04em;line-height:.9;}.visuals-video-lightbox-copy span{text-align:right;color:#c997ff;}
@media (max-width:760px){.visuals-video-lightbox{padding:12px}.visuals-video-lightbox-frame{width:96vw}.visuals-video-lightbox-copy{grid-template-columns:1fr}.visuals-video-lightbox-copy span{text-align:left;}.visuals-video-lightbox-topline{padding:10px 12px;}}
.store-product-art{position:relative;}
.store-gallery-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:34px;height:34px;border:1px solid rgba(238,246,255,.18);background:rgba(3,5,10,.58);backdrop-filter:blur(9px);color:#fff;cursor:pointer;font-size:24px;line-height:1;display:grid;place-items:center;opacity:.75;transition:opacity .2s ease,border-color .2s ease,background .2s ease;}
.store-gallery-arrow:hover{opacity:1;border-color:rgba(201,151,255,.62);background:rgba(10,8,18,.78);}
.store-gallery-prev{left:12px;}.store-gallery-next{right:12px;}
.store-product-thumbs{position:absolute;z-index:4;left:12px;right:12px;bottom:12px;display:flex;gap:7px;overflow:auto;padding:2px;scrollbar-width:thin;}
.store-product-thumb{flex:0 0 58px;width:58px;height:58px;padding:0;border:1px solid rgba(238,246,255,.16);background:rgba(3,5,10,.72);cursor:pointer;opacity:.72;transition:opacity .2s ease,border-color .2s ease,transform .2s ease;}
.store-product-thumb:hover{opacity:1;transform:translateY(-1px);}.store-product-thumb.is-selected{opacity:1;border-color:rgba(201,151,255,.78);box-shadow:0 0 0 1px rgba(201,151,255,.16);}
.store-product-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.store-option-list{display:flex;flex-wrap:wrap;gap:7px;}
.store-option{border:1px solid rgba(238,246,255,.16);background:rgba(255,255,255,.025);padding:9px 11px;min-width:62px;color:rgba(238,246,255,.72);cursor:pointer;font-size:7px;letter-spacing:.08em;text-align:center;transition:background .2s ease,border-color .2s ease,transform .2s ease;color .2s ease;}
.store-option:hover{border-color:rgba(201,151,255,.52);transform:translateY(-1px);}.store-option.is-selected{border-color:rgba(201,151,255,.84);background:rgba(201,151,255,.12);color:#fff;box-shadow:inset 0 0 18px rgba(201,151,255,.07);}.store-option.is-unavailable{opacity:.30;text-decoration:line-through;cursor:not-allowed;transform:none;}
.store-selection-note{margin-top:4px;min-height:12px;color:rgba(238,246,255,.34);font-size:5px;letter-spacing:.18em;}
.store-option-block[hidden],.store-variation-block[hidden]{display:none!important;}

@media (max-width:980px){.visuals-shell{width:94vw}.visuals-heading{padding-top:6vh}.visuals-hub{gap:10px}.visuals-category{min-height:340px}.visuals-category-copy{left:20px;right:20px;bottom:20px}.visuals-readout{min-width:220px}.wallpaper-grid{grid-template-columns:1fr}.visuals-view-head{align-items:flex-start;flex-direction:column;}.visuals-view-head>span{align-self:flex-end;}.image-archive-grid{grid-template-columns:repeat(6,1fr);grid-auto-rows:100px}.ratio-tall,.ratio-wide,.ratio-square{grid-column:span 3;grid-row:span 3;}}
@media (max-width:760px){.visuals-topbar{grid-template-columns:auto 1fr auto}.visuals-navline{justify-self:center;display:none}.visuals-heading{display:block;padding:5vh 0 24px}.visuals-readout{text-align:left;margin-top:20px}.visuals-hub{grid-template-columns:1fr;overflow:auto;padding-right:3px}.visuals-category{min-height:270px}.visuals-hub-footer{display:none}.visuals-feature-video{min-height:34vh}.feature-video-copy{left:20px;bottom:22px}.visuals-thumb-grid{grid-template-columns:1fr}.wallpaper-card,.wallpaper-wide{min-height:260px}.image-archive-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px}.ratio-tall,.ratio-wide,.ratio-square{grid-column:span 1;grid-row:span 1}.visuals-view{padding-right:2px;overflow:visible}.visuals-close{font-size:7px}.visuals-heading h1{font-size:52px;}}

/* V23.1 â€” RELEASE COVERS INSIDE IMAGE ARCHIVE */
.visuals-release-label{display:flex;align-items:center;gap:12px;margin:6px 0 12px;color:rgba(238,246,255,.42);font-size:7px;letter-spacing:.24em;text-transform:uppercase;}
.visuals-release-label b{display:block;width:42px;height:1px;background:linear-gradient(90deg,rgba(126,213,255,.75),rgba(201,151,255,.72));}
.visuals-release-label em{font-style:normal;color:rgba(238,246,255,.24);font-size:6px;letter-spacing:.18em;}
.visuals-release-label-archive{margin-top:26px;}
.visuals-release-covers{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
.release-cover-card{position:relative;aspect-ratio:1/1;border:1px solid rgba(238,246,255,.11);padding:0;background:#070a10;overflow:hidden;cursor:pointer;color:#fff;text-align:left;}
.release-cover-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s ease,filter .45s ease;}
.release-cover-card::after{content:"OPEN â†—";position:absolute;right:9px;top:9px;padding:6px 7px;background:rgba(3,5,10,.58);border:1px solid rgba(255,255,255,.14);font-size:6px;letter-spacing:.18em;opacity:0;transition:opacity .25s ease;}
.release-cover-card:hover img{transform:scale(1.045);filter:saturate(1.08) contrast(1.06);}
.release-cover-card:hover::after,.release-cover-card:focus-visible::after{opacity:1;}
.release-cover-card span{position:absolute;left:0;right:0;bottom:0;padding:34px 12px 11px;background:linear-gradient(180deg,transparent,rgba(2,4,9,.9));z-index:2;}
.release-cover-card span small{display:block;margin-bottom:5px;font-size:5px;letter-spacing:.2em;color:rgba(238,246,255,.42);}
.release-cover-card span strong{display:block;font-size:9px;letter-spacing:.16em;line-height:1.1;}
.store-product-art{position:relative;}
.store-gallery-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:34px;height:34px;border:1px solid rgba(238,246,255,.18);background:rgba(3,5,10,.58);backdrop-filter:blur(9px);color:#fff;cursor:pointer;font-size:24px;line-height:1;display:grid;place-items:center;opacity:.75;transition:opacity .2s ease,border-color .2s ease,background .2s ease;}
.store-gallery-arrow:hover{opacity:1;border-color:rgba(201,151,255,.62);background:rgba(10,8,18,.78);}
.store-gallery-prev{left:12px;}.store-gallery-next{right:12px;}
.store-product-thumbs{position:absolute;z-index:4;left:12px;right:12px;bottom:12px;display:flex;gap:7px;overflow:auto;padding:2px;scrollbar-width:thin;}
.store-product-thumb{flex:0 0 58px;width:58px;height:58px;padding:0;border:1px solid rgba(238,246,255,.16);background:rgba(3,5,10,.72);cursor:pointer;opacity:.72;transition:opacity .2s ease,border-color .2s ease,transform .2s ease;}
.store-product-thumb:hover{opacity:1;transform:translateY(-1px);}.store-product-thumb.is-selected{opacity:1;border-color:rgba(201,151,255,.78);box-shadow:0 0 0 1px rgba(201,151,255,.16);}
.store-product-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.store-option-list{display:flex;flex-wrap:wrap;gap:7px;}
.store-option{border:1px solid rgba(238,246,255,.16);background:rgba(255,255,255,.025);padding:9px 11px;min-width:62px;color:rgba(238,246,255,.72);cursor:pointer;font-size:7px;letter-spacing:.08em;text-align:center;transition:background .2s ease,border-color .2s ease,transform .2s ease;color .2s ease;}
.store-option:hover{border-color:rgba(201,151,255,.52);transform:translateY(-1px);}.store-option.is-selected{border-color:rgba(201,151,255,.84);background:rgba(201,151,255,.12);color:#fff;box-shadow:inset 0 0 18px rgba(201,151,255,.07);}.store-option.is-unavailable{opacity:.30;text-decoration:line-through;cursor:not-allowed;transform:none;}
.store-selection-note{margin-top:4px;min-height:12px;color:rgba(238,246,255,.34);font-size:5px;letter-spacing:.18em;}
.store-option-block[hidden],.store-variation-block[hidden]{display:none!important;}

@media (max-width:980px){.visuals-release-covers{grid-template-columns:repeat(4,1fr);}.visuals-release-label{flex-wrap:wrap;row-gap:6px;}}
@media (max-width:760px){.visuals-release-covers{grid-template-columns:repeat(2,1fr);gap:8px;}.release-cover-card span{padding:30px 10px 9px}.visuals-release-label{margin-top:2px}.visuals-release-label-archive{margin-top:22px;}}


/* V22.5 â€” SEASONAL WALLPAPER STORE */
.wallpaper-season-banner{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;padding:18px 0 22px;margin-bottom:6px;border-top:1px solid rgba(238,246,255,.08);border-bottom:1px solid rgba(238,246,255,.08);}
.wallpaper-season-banner small{display:block;font-size:6px;letter-spacing:.24em;color:rgba(238,246,255,.38);}
.wallpaper-season-banner strong{display:block;margin-top:7px;font-size:clamp(28px,4vw,54px);letter-spacing:-.045em;line-height:.9;}
.wallpaper-season-banner strong em{font-style:normal;color:#c997ff;}
.wallpaper-season-banner p{max-width:680px;margin:10px 0 0;color:rgba(238,246,255,.5);font-size:8px;line-height:1.6;letter-spacing:.08em;}
.wallpaper-season-meta{display:flex;align-items:center;gap:10px;color:rgba(238,246,255,.34);font-size:6px;letter-spacing:.2em;white-space:nowrap;}
.wallpaper-season-meta b{display:block;width:34px;height:1px;background:linear-gradient(90deg,rgba(126,213,255,.55),rgba(201,151,255,.72));}
.wallpaper-pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0 24px;}
.wallpaper-price-card{position:relative;display:grid;grid-template-columns:1fr auto;align-items:end;gap:5px 14px;padding:17px 18px 15px;border:1px solid rgba(238,246,255,.11);background:rgba(8,10,17,.62);color:#eef6ff;text-align:left;cursor:pointer;transition:transform .25s ease,border-color .25s ease,background .25s ease;}
.wallpaper-price-card:hover,.wallpaper-price-card:focus-visible{transform:translateY(-3px);border-color:rgba(201,151,255,.62);background:rgba(16,10,25,.78);}
.wallpaper-price-card.is-featured{border-color:rgba(201,151,255,.42);box-shadow:0 14px 40px rgba(106,47,153,.12);}
.wallpaper-price-card small{grid-column:1/-1;font-size:6px;letter-spacing:.24em;color:rgba(238,246,255,.4);}
.wallpaper-price-card strong{font-size:clamp(26px,3.2vw,42px);letter-spacing:-.045em;line-height:.9;}
.wallpaper-price-card span{font-size:7px;letter-spacing:.2em;color:rgba(238,246,255,.46);align-self:end;padding-bottom:2px;}
.wallpaper-price-card b{font-size:20px;letter-spacing:-.03em;justify-self:end;color:#fff;}
.wallpaper-price-card em{grid-column:1/-1;font-style:normal;font-size:6px;letter-spacing:.18em;color:#c997ff;margin-top:5px;}
.wallpaper-section-label{display:flex;align-items:center;gap:12px;margin:0 0 12px;color:rgba(238,246,255,.42);font-size:6px;letter-spacing:.22em;text-transform:uppercase;}
.wallpaper-section-label b{display:block;width:42px;height:1px;background:linear-gradient(90deg,rgba(126,213,255,.62),rgba(201,151,255,.72));}
.wallpaper-section-label em{font-style:normal;color:rgba(238,246,255,.25);}
.wallpaper-card>div{grid-template-columns:1fr auto;}
.wallpaper-card button{border:0;background:none;color:#c997ff;padding:0;font:inherit;font-size:7px;letter-spacing:.2em;cursor:pointer;white-space:nowrap;}
.wallpaper-card button:hover{text-decoration:underline;color:#fff;}
.wallpaper-season-note{padding:14px 0 4px;font-size:6px;letter-spacing:.18em;color:rgba(238,246,255,.28);}
.wallpaper-purchase-modal{position:fixed;inset:0;width:100vw;height:100dvh;box-sizing:border-box;z-index:35;display:grid;place-items:center;padding:24px;background:rgba(2,4,9,.9);backdrop-filter:blur(14px);opacity:0;pointer-events:none;transition:opacity .2s ease;}
.wallpaper-purchase-modal.open{opacity:1;pointer-events:auto;}
.wallpaper-purchase-backdrop{position:absolute;inset:0;}
.wallpaper-purchase-card{position:relative;z-index:2;width:min(720px,92vw);background:#06080f;border:1px solid rgba(238,246,255,.14);box-shadow:0 35px 110px rgba(0,0,0,.65);}
.wallpaper-purchase-topline{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid rgba(238,246,255,.08);font-size:6px;letter-spacing:.22em;color:rgba(238,246,255,.38);}
.wallpaper-purchase-close{border:0;background:none;color:rgba(238,246,255,.72);font:inherit;font-size:7px;letter-spacing:.2em;cursor:pointer;}
.wallpaper-purchase-copy{padding:24px 26px 18px;}
.wallpaper-purchase-copy small{font-size:6px;letter-spacing:.24em;color:rgba(238,246,255,.38);}
.wallpaper-purchase-copy h3{margin:8px 0 10px;font-size:clamp(30px,4vw,52px);line-height:.9;letter-spacing:-.045em;}
.wallpaper-purchase-copy p{margin:0;max-width:620px;color:rgba(238,246,255,.54);font-size:8px;line-height:1.6;letter-spacing:.08em;}
.wallpaper-purchase-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:0 26px 20px;}
.wallpaper-purchase-options button{display:grid;gap:5px;padding:16px;border:1px solid rgba(238,246,255,.11);background:rgba(12,14,22,.84);color:#eef6ff;text-align:left;cursor:pointer;}
.wallpaper-purchase-options button:hover,.wallpaper-purchase-options button:focus-visible{border-color:rgba(201,151,255,.62);background:rgba(22,12,31,.88);}
.wallpaper-purchase-options strong{font-size:24px;letter-spacing:-.04em;}.wallpaper-purchase-options span{font-size:6px;letter-spacing:.18em;color:rgba(238,246,255,.42);}.wallpaper-purchase-options b{font-size:15px;margin-top:4px;color:#c997ff;}
.wallpaper-purchase-footer{padding:12px 26px 14px;border-top:1px solid rgba(238,246,255,.07);font-size:5px;letter-spacing:.18em;color:rgba(238,246,255,.24);}
.store-product-art{position:relative;}
.store-gallery-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:34px;height:34px;border:1px solid rgba(238,246,255,.18);background:rgba(3,5,10,.58);backdrop-filter:blur(9px);color:#fff;cursor:pointer;font-size:24px;line-height:1;display:grid;place-items:center;opacity:.75;transition:opacity .2s ease,border-color .2s ease,background .2s ease;}
.store-gallery-arrow:hover{opacity:1;border-color:rgba(201,151,255,.62);background:rgba(10,8,18,.78);}
.store-gallery-prev{left:12px;}.store-gallery-next{right:12px;}
.store-product-thumbs{position:absolute;z-index:4;left:12px;right:12px;bottom:12px;display:flex;gap:7px;overflow:auto;padding:2px;scrollbar-width:thin;}
.store-product-thumb{flex:0 0 58px;width:58px;height:58px;padding:0;border:1px solid rgba(238,246,255,.16);background:rgba(3,5,10,.72);cursor:pointer;opacity:.72;transition:opacity .2s ease,border-color .2s ease,transform .2s ease;}
.store-product-thumb:hover{opacity:1;transform:translateY(-1px);}.store-product-thumb.is-selected{opacity:1;border-color:rgba(201,151,255,.78);box-shadow:0 0 0 1px rgba(201,151,255,.16);}
.store-product-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.store-option-list{display:flex;flex-wrap:wrap;gap:7px;}
.store-option{border:1px solid rgba(238,246,255,.16);background:rgba(255,255,255,.025);padding:9px 11px;min-width:62px;color:rgba(238,246,255,.72);cursor:pointer;font-size:7px;letter-spacing:.08em;text-align:center;transition:background .2s ease,border-color .2s ease,transform .2s ease;color .2s ease;}
.store-option:hover{border-color:rgba(201,151,255,.52);transform:translateY(-1px);}.store-option.is-selected{border-color:rgba(201,151,255,.84);background:rgba(201,151,255,.12);color:#fff;box-shadow:inset 0 0 18px rgba(201,151,255,.07);}.store-option.is-unavailable{opacity:.30;text-decoration:line-through;cursor:not-allowed;transform:none;}
.store-selection-note{margin-top:4px;min-height:12px;color:rgba(238,246,255,.34);font-size:5px;letter-spacing:.18em;}
.store-option-block[hidden],.store-variation-block[hidden]{display:none!important;}

@media (max-width:980px){.wallpaper-pricing{grid-template-columns:1fr;}.wallpaper-season-banner{align-items:flex-start;flex-direction:column;}.wallpaper-season-meta{align-self:flex-end;}.wallpaper-purchase-options{grid-template-columns:1fr;}}
@media (max-width:760px){.wallpaper-season-banner{padding:14px 0 18px}.wallpaper-season-banner p{font-size:7px}.wallpaper-season-meta{align-self:flex-start}.wallpaper-price-card{padding:15px}.wallpaper-purchase-card{width:96vw;max-height:calc(100dvh - 32px);overflow-y:auto;overflow-x:hidden;box-sizing:border-box}.wallpaper-purchase-copy{padding:20px}.wallpaper-purchase-options{padding:0 20px 16px}.wallpaper-purchase-footer{padding-left:20px;padding-right:20px;}}

/* V23.0 â€” 15-PIECE ANIMATED WALLPAPER DROP */
.wallpaper-live-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.wallpaper-live{min-width:0;overflow:hidden;border:1px solid rgba(238,246,255,.12);background:#070a10;}
.wallpaper-preview-trigger{display:block;position:relative;width:100%;aspect-ratio:9/16;border:0;padding:0;background:#05070d;cursor:pointer;overflow:hidden;}
.wallpaper-preview-trigger img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .4s ease;}
.wallpaper-preview-trigger::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,5,10,.02),rgba(3,5,10,.06) 40%,rgba(2,4,9,.52));pointer-events:none;}
.wallpaper-live:hover .wallpaper-preview-trigger img{transform:scale(1.035);filter:saturate(1.06) contrast(1.04);}
.wallpaper-preview-icon{position:absolute;right:12px;top:12px;z-index:2;width:32px;height:32px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.22);background:rgba(3,5,10,.54);font-size:9px;color:#fff;}
.wallpaper-live>div{padding:12px 13px 14px;}
.wallpaper-live>div>small{display:block;font-size:6px;letter-spacing:.2em;color:rgba(238,246,255,.36);}
.wallpaper-live>div>strong{display:block;margin:7px 0 10px;font-size:13px;letter-spacing:.12em;line-height:1;}
.wallpaper-card-actions{display:flex;justify-content:space-between;align-items:center;gap:14px;}
.wallpaper-card-actions button{border:0;background:none;color:#c997ff;padding:0;font:inherit;font-size:6px;letter-spacing:.2em;cursor:pointer;white-space:nowrap;}
.wallpaper-card-actions button:first-child{color:rgba(238,246,255,.58);}
.wallpaper-card-actions button:hover{text-decoration:underline;color:#fff;}
.wallpaper-preview-modal{position:fixed;inset:0;width:100vw;height:100dvh;box-sizing:border-box;z-index:37;display:grid;place-items:center;padding:28px;background:rgba(2,4,9,.92);backdrop-filter:blur(15px);opacity:0;pointer-events:none;transition:opacity .2s ease;}
.wallpaper-preview-modal.open{opacity:1;pointer-events:auto;}
.wallpaper-preview-backdrop{position:absolute;inset:0;}
.wallpaper-preview-card{position:relative;z-index:2;width:min(860px,94vw);background:#05070d;border:1px solid rgba(238,246,255,.14);box-shadow:0 40px 120px rgba(0,0,0,.72);overflow:hidden;}
.wallpaper-preview-topline{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid rgba(238,246,255,.08);font-size:6px;letter-spacing:.22em;color:rgba(238,246,255,.38);}
.wallpaper-preview-close{border:0;background:none;color:rgba(238,246,255,.74);font:inherit;font-size:7px;letter-spacing:.2em;cursor:pointer;}
.wallpaper-preview-media{display:grid;place-items:center;background:#020308;padding:12px;max-height:72vh;}
.wallpaper-preview-media video{display:block;width:min(56vh,72vw);height:min(56vh,72vw);max-width:100%;max-height:68vh;aspect-ratio:9/16;object-fit:contain;background:#000;}
.wallpaper-preview-copy{display:flex;justify-content:space-between;gap:24px;align-items:end;padding:17px 20px 16px;border-top:1px solid rgba(238,246,255,.07);}
.wallpaper-preview-copy small{font-size:6px;letter-spacing:.2em;color:rgba(238,246,255,.38);}
.wallpaper-preview-copy h3{margin:7px 0 0;font-size:clamp(26px,4vw,46px);line-height:.9;letter-spacing:-.04em;}
.wallpaper-preview-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.wallpaper-preview-actions button{padding:10px 12px;border:1px solid rgba(238,246,255,.13);background:rgba(12,14,22,.84);color:#eef6ff;font:inherit;font-size:7px;letter-spacing:.16em;cursor:pointer;}
.wallpaper-preview-actions button:hover{border-color:rgba(201,151,255,.62);background:rgba(22,12,31,.88);}
.wallpaper-preview-footer{padding:10px 20px 12px;border-top:1px solid rgba(238,246,255,.06);font-size:5px;letter-spacing:.18em;color:rgba(238,246,255,.24);}
.store-product-art{position:relative;}
.store-gallery-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:34px;height:34px;border:1px solid rgba(238,246,255,.18);background:rgba(3,5,10,.58);backdrop-filter:blur(9px);color:#fff;cursor:pointer;font-size:24px;line-height:1;display:grid;place-items:center;opacity:.75;transition:opacity .2s ease,border-color .2s ease,background .2s ease;}
.store-gallery-arrow:hover{opacity:1;border-color:rgba(201,151,255,.62);background:rgba(10,8,18,.78);}
.store-gallery-prev{left:12px;}.store-gallery-next{right:12px;}
.store-product-thumbs{position:absolute;z-index:4;left:12px;right:12px;bottom:12px;display:flex;gap:7px;overflow:auto;padding:2px;scrollbar-width:thin;}
.store-product-thumb{flex:0 0 58px;width:58px;height:58px;padding:0;border:1px solid rgba(238,246,255,.16);background:rgba(3,5,10,.72);cursor:pointer;opacity:.72;transition:opacity .2s ease,border-color .2s ease,transform .2s ease;}
.store-product-thumb:hover{opacity:1;transform:translateY(-1px);}.store-product-thumb.is-selected{opacity:1;border-color:rgba(201,151,255,.78);box-shadow:0 0 0 1px rgba(201,151,255,.16);}
.store-product-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.store-option-list{display:flex;flex-wrap:wrap;gap:7px;}
.store-option{border:1px solid rgba(238,246,255,.16);background:rgba(255,255,255,.025);padding:9px 11px;min-width:62px;color:rgba(238,246,255,.72);cursor:pointer;font-size:7px;letter-spacing:.08em;text-align:center;transition:background .2s ease,border-color .2s ease,transform .2s ease;color .2s ease;}
.store-option:hover{border-color:rgba(201,151,255,.52);transform:translateY(-1px);}.store-option.is-selected{border-color:rgba(201,151,255,.84);background:rgba(201,151,255,.12);color:#fff;box-shadow:inset 0 0 18px rgba(201,151,255,.07);}.store-option.is-unavailable{opacity:.30;text-decoration:line-through;cursor:not-allowed;transform:none;}
.store-selection-note{margin-top:4px;min-height:12px;color:rgba(238,246,255,.34);font-size:5px;letter-spacing:.18em;}
.store-option-block[hidden],.store-variation-block[hidden]{display:none!important;}

@media (max-width:980px){.wallpaper-live-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.wallpaper-preview-copy{align-items:flex-start;flex-direction:column;}.wallpaper-preview-actions{justify-content:flex-start;}}
@media (max-width:620px){.wallpaper-live-grid{grid-template-columns:1fr;}.wallpaper-preview-media{padding:8px;}.wallpaper-preview-media video{width:min(78vw,54vh);height:min(78vw,54vh);max-height:56vh;}.wallpaper-preview-actions{width:100%;}.wallpaper-preview-actions button{flex:1 1 auto;}}
.visuals-screen{height:100dvh;max-height:100dvh;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:auto;touch-action:pan-y;scrollbar-gutter:stable;}
.visuals-backdrop{pointer-events:none;}
.visuals-shell{min-height:max(100%,100dvh);height:auto;overflow:visible;}


/* V23.2 â€” P&T TRANSMISSIONS */
.transmission-node{position:relative;display:flex;align-items:center;gap:12px;width:min(430px,calc(100vw - 40px));margin:18px auto 0;padding:12px 14px;border:1px solid rgba(201,151,255,.24);background:rgba(4,7,14,.52);color:#eef6ff;text-align:left;cursor:pointer;backdrop-filter:blur(10px);box-shadow:0 0 30px rgba(120,70,190,.08);transition:border-color .25s,background .25s,transform .25s;}
.transmission-node:hover,.transmission-node:focus-visible{border-color:rgba(201,151,255,.65);background:rgba(15,10,25,.7);transform:translateY(-2px);outline:none;}
.transmission-pulse{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:#c997ff;box-shadow:0 0 10px #c997ff,0 0 22px rgba(201,151,255,.55);animation:transmissionPulse 2.2s ease-in-out infinite;}
.transmission-node-copy{display:grid;gap:3px;flex:1;}.transmission-node-copy small{font-size:6px;letter-spacing:.22em;color:rgba(238,246,255,.38);}.transmission-node-copy strong{font-size:10px;letter-spacing:.18em;}.transmission-node-copy em{font-style:normal;font-size:6px;letter-spacing:.18em;color:rgba(238,246,255,.42);}.transmission-node-arrow{font-size:15px;color:#c997ff;}
@keyframes transmissionPulse{0%,100%{opacity:.65;transform:scale(.8)}50%{opacity:1;transform:scale(1.25)}}
.transmission-panel{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:24px;background:rgba(2,4,9,.82);backdrop-filter:blur(18px);opacity:0;pointer-events:none;transition:opacity .22s ease;}.transmission-panel.open{opacity:1;pointer-events:auto;}
.transmission-backdrop{position:absolute;inset:0;border:0;background:transparent;cursor:pointer;}
.transmission-card{position:relative;z-index:2;width:min(780px,94vw);max-height:88vh;overflow:auto;background:linear-gradient(145deg,rgba(7,9,17,.98),rgba(4,5,11,.96));border:1px solid rgba(238,246,255,.14);box-shadow:0 40px 120px rgba(0,0,0,.72),0 0 80px rgba(126,72,190,.08);}
.transmission-topline{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;border-bottom:1px solid rgba(238,246,255,.08);font-size:6px;letter-spacing:.22em;color:rgba(238,246,255,.4);}.transmission-topline button{border:0;background:none;color:rgba(238,246,255,.72);font:inherit;font-size:6px;letter-spacing:.18em;cursor:pointer;}.transmission-topline button:hover{color:#fff;}
.transmission-head{display:flex;justify-content:space-between;gap:24px;padding:28px 28px 22px;border-bottom:1px solid rgba(238,246,255,.08);}.transmission-head p{margin:0 0 8px;font-size:6px;letter-spacing:.24em;color:#c997ff;}.transmission-head h2{margin:0;font-size:clamp(34px,6vw,62px);line-height:.88;letter-spacing:-.045em;}.transmission-head span{display:block;margin-top:10px;font-size:8px;letter-spacing:.08em;color:rgba(238,246,255,.44);}.transmission-status{min-width:150px;font-size:7px;line-height:1.7;letter-spacing:.15em;color:rgba(238,246,255,.5);}.transmission-status b{display:inline-block;width:6px;height:6px;border-radius:50%;background:#c997ff;box-shadow:0 0 10px #c997ff;margin-right:7px;}.transmission-status small{font-size:5px;color:rgba(238,246,255,.26);}
.transmission-list{padding:8px 28px 16px;}.transmission-item{width:100%;display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:15px;padding:17px 0;border:0;border-bottom:1px solid rgba(238,246,255,.07);background:none;color:#eef6ff;text-align:left;cursor:pointer;}.transmission-item:hover,.transmission-item:focus-visible{background:linear-gradient(90deg,rgba(201,151,255,.07),transparent);outline:none;}.transmission-item.is-new .transmission-index{color:#c997ff;}.transmission-index{font-size:9px;letter-spacing:.14em;color:rgba(238,246,255,.24);}.transmission-item span:nth-child(2){display:grid;gap:4px;}.transmission-item small{font-size:5px;letter-spacing:.2em;color:rgba(238,246,255,.3);}.transmission-item strong{font-size:14px;letter-spacing:.08em;}.transmission-item em{font-style:normal;font-size:6px;letter-spacing:.17em;color:rgba(238,246,255,.4);}.transmission-item i{font-style:normal;font-size:6px;letter-spacing:.16em;color:#c997ff;}.transmission-footer{padding:13px 28px 15px;border-top:1px solid rgba(238,246,255,.06);font-size:5px;letter-spacing:.18em;color:rgba(238,246,255,.24);display:flex;justify-content:space-between;gap:12px;}.transmission-footer span{color:rgba(201,151,255,.45);}
@media(max-width:620px){.transmission-panel{padding:12px}.transmission-card{width:97vw}.transmission-head{padding:22px 18px 18px;flex-direction:column}.transmission-status{min-width:0}.transmission-list{padding:4px 18px 12px}.transmission-item{grid-template-columns:32px 1fr;gap:10px}.transmission-item i{display:none}.transmission-footer{padding-left:18px;padding-right:18px;flex-direction:column}.transmission-node{width:calc(100vw - 32px);}}


/* V23.2.9 â€” GALLERY ARTWORK PAIRS: explicit wide + portrait rendering */
.gallery-responsive-list{display:grid!important;grid-template-columns:1fr!important;grid-auto-rows:auto!important;grid-auto-flow:row!important;gap:16px!important;}
.gallery-pair-row{display:grid!important;grid-template-columns:minmax(0,2.35fr) minmax(190px,.78fr)!important;gap:12px!important;align-items:stretch!important;width:100%;min-width:0;}
.gallery-pair-row .image-archive-card{grid-column:auto!important;grid-row:auto!important;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;position:relative;overflow:hidden;background:#05070d;border:1px solid rgba(238,246,255,.10);padding:0;}
.gallery-pair-row .gallery-wide-card{aspect-ratio:16/9!important;}
.gallery-pair-row .gallery-mobile-card{aspect-ratio:9/16!important;}
.gallery-pair-row .image-archive-card img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;background:#05070d;}
.gallery-pair-row .gallery-wide-card img{object-fit:contain!important;}
.gallery-pair-row .gallery-mobile-card img{object-fit:contain!important;}
@media (max-width:760px){
  .gallery-responsive-list{gap:12px!important;}
  .gallery-pair-row{grid-template-columns:minmax(0,1.45fr) minmax(118px,.68fr)!important;gap:8px!important;}
  .gallery-pair-row .gallery-wide-card{aspect-ratio:16/9!important;}
  .gallery-pair-row .gallery-mobile-card{aspect-ratio:9/16!important;}
}

/* V23.2.10 â€” THE INDY INTERVIEW: monthly web-series transmission */
.transmission-feature{width:calc(100% - 56px);margin:4px 28px 8px;padding:0;display:grid;grid-template-columns:154px 1fr;gap:0;border:1px solid rgba(201,151,255,.18);background:linear-gradient(115deg,rgba(18,12,28,.88),rgba(5,7,13,.96));color:#eef6ff;text-align:left;cursor:pointer;overflow:hidden;position:relative;min-height:218px;transition:border-color .25s,transform .25s,box-shadow .25s;}
.transmission-feature::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0 34%,rgba(201,151,255,.08) 55%,transparent);pointer-events:none;opacity:.7;}
.transmission-feature:hover,.transmission-feature:focus-visible{border-color:rgba(201,151,255,.58);transform:translateY(-2px);box-shadow:0 24px 70px rgba(0,0,0,.42),0 0 55px rgba(126,72,190,.12);outline:none;}
.transmission-feature-image{position:relative;display:block;overflow:hidden;background:#03050a;}
.transmission-feature-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,5,10,.08),rgba(3,5,10,.6));pointer-events:none;}
.transmission-feature-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.94) contrast(1.03);}
.transmission-feature-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:25px 28px 24px;gap:7px;}
.transmission-feature-copy small{font-size:6px;letter-spacing:.22em;color:#c997ff;}
.transmission-feature-copy strong{font-size:clamp(22px,4vw,40px);letter-spacing:-.035em;line-height:.96;}
.transmission-feature-copy b{font-size:10px;letter-spacing:.22em;color:rgba(238,246,255,.55);}
.transmission-feature-copy em{font-style:normal;font-size:7px;letter-spacing:.13em;color:rgba(238,246,255,.42);}
.transmission-feature-copy i{font-style:normal;margin-top:8px;font-size:7px;letter-spacing:.18em;color:#c997ff;}

.indy-episode-panel{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:18px;background:rgba(1,3,8,.9);backdrop-filter:blur(18px);opacity:0;pointer-events:none;visibility:hidden;transition:opacity .22s ease,visibility .22s ease;}
.indy-episode-panel.open{opacity:1;pointer-events:auto;visibility:visible;}
.indy-episode-backdrop{position:absolute;inset:0;border:0;background:transparent;cursor:pointer;}
.indy-episode-card{position:relative;z-index:2;width:min(1120px,96vw);max-height:94dvh;overflow:auto;background:linear-gradient(145deg,rgba(8,10,18,.985),rgba(4,5,11,.985));border:1px solid rgba(238,246,255,.13);box-shadow:0 45px 140px rgba(0,0,0,.8),0 0 90px rgba(126,72,190,.1);}
.indy-episode-topline{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:18px;padding:12px 16px;border-bottom:1px solid rgba(238,246,255,.07);font-size:6px;letter-spacing:.22em;color:rgba(238,246,255,.34);}
.indy-episode-topline button{border:0;background:none;color:rgba(238,246,255,.68);font:inherit;font-size:6px;letter-spacing:.18em;cursor:pointer;padding:2px 0;}
.indy-episode-topline button:hover,.indy-episode-topline button:focus-visible{color:#fff;outline:none;}
.indy-episode-layout{display:grid;grid-template-columns:minmax(250px,44%) 1fr;min-height:min(82dvh,820px);}
.indy-episode-art{position:relative;min-height:620px;background:#03050a;display:flex;align-items:center;justify-content:center;overflow:hidden;border-right:1px solid rgba(238,246,255,.07);}
.indy-episode-art img{display:block;width:100%;height:100%;max-height:calc(94dvh - 46px);object-fit:contain;object-position:center;}
.indy-episode-art-tag{position:absolute;left:14px;bottom:14px;padding:7px 9px;border:1px solid rgba(238,246,255,.15);background:rgba(1,3,8,.66);font-size:5px;letter-spacing:.2em;color:rgba(238,246,255,.48);backdrop-filter:blur(8px);}
.indy-episode-info{padding:clamp(28px,4vw,48px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;}
.indy-episode-kicker{margin:0 0 12px;font-size:6px;letter-spacing:.24em;color:#c997ff;}
.indy-episode-info h2{margin:0;font-size:clamp(38px,6vw,76px);letter-spacing:-.05em;line-height:.86;}
.indy-episode-info h2 em{font-style:normal;color:#c997ff;}
.indy-episode-episode{margin-top:18px;font-size:8px;letter-spacing:.18em;color:rgba(238,246,255,.45);}
.indy-episode-episode b{color:#c997ff;font-weight:400;}
.indy-episode-intro{max-width:510px;margin:24px 0 0;font-size:11px;line-height:1.7;color:rgba(238,246,255,.62);}
.indy-episode-rule{width:100%;max-width:510px;height:1px;background:rgba(238,246,255,.08);margin:24px 0 18px;}
.indy-episode-meta{width:100%;max-width:510px;display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid rgba(238,246,255,.06);}
.indy-episode-meta span{font-size:5px;letter-spacing:.2em;color:rgba(238,246,255,.28);}
.indy-episode-meta strong{font-size:6px;letter-spacing:.14em;color:rgba(238,246,255,.62);text-align:right;}
.indy-episode-video-slot{width:100%;max-width:510px;margin-top:22px;padding:14px;border:1px dashed rgba(201,151,255,.24);background:rgba(201,151,255,.025);display:grid;gap:6px;}
.indy-episode-video-slot small{font-size:5px;letter-spacing:.2em;color:#c997ff;}
.indy-episode-video-slot strong{font-size:9px;letter-spacing:.12em;}
.indy-episode-video-slot em{font-style:normal;font-size:6px;letter-spacing:.08em;color:rgba(238,246,255,.34);line-height:1.6;}

@media(max-width:760px){
  .transmission-feature{width:calc(100% - 36px);margin-left:18px;margin-right:18px;grid-template-columns:112px 1fr;min-height:176px;}
  .transmission-feature-copy{padding:18px 16px;gap:5px;}
  .transmission-feature-copy strong{font-size:24px;}
  .transmission-feature-copy em{font-size:6px;}
  .transmission-feature-copy i{font-size:6px;margin-top:5px;}
  .indy-episode-panel{padding:8px;}
  .indy-episode-card{width:98vw;max-height:96dvh;}
  .indy-episode-topline{grid-template-columns:auto 1fr auto;padding:11px 12px;gap:8px;}
  .indy-episode-topline span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;}
  .indy-episode-layout{grid-template-columns:1fr;min-height:0;}
  .indy-episode-art{min-height:0;height:min(62dvh,650px);border-right:0;border-bottom:1px solid rgba(238,246,255,.07);}
  .indy-episode-art img{height:100%;width:100%;max-height:none;object-fit:contain;}
  .indy-episode-info{padding:24px 18px 26px;}
  .indy-episode-info h2{font-size:42px;}
  .indy-episode-intro{font-size:10px;}
}

/* V23.2.12 â€” IMAGE ARCHIVE FINAL POLISH */
.image-archive-grid.gallery-responsive-list{display:flex!important;flex-direction:column!important;gap:20px!important;}
.gallery-pair-row{display:grid!important;grid-template-columns:minmax(0,2.35fr) minmax(170px,.78fr)!important;gap:12px!important;align-items:start!important;width:100%!important;margin:0!important;}
.gallery-pair-row .image-archive-card{display:block!important;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;align-self:start!important;background:#05070d!important;}
.gallery-pair-row .gallery-wide-card{aspect-ratio:16/9!important;}
.gallery-pair-row[data-gallery-pair="pool"] .gallery-wide-card{aspect-ratio:1942/809!important;}
.gallery-pair-row .gallery-mobile-card{aspect-ratio:9/16!important;}
.gallery-pair-row .image-archive-card img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;background:#05070d!important;}
.gallery-pair-row .gallery-wide-card img{object-fit:contain!important;}
.gallery-pair-row .gallery-mobile-card img{object-fit:contain!important;}
.gallery-pair-row .archive-art-tag{z-index:3;}
@media(max-width:760px){
  .image-archive-grid.gallery-responsive-list{gap:14px!important;}
  .gallery-pair-row{grid-template-columns:minmax(0,1.42fr) minmax(112px,.68fr)!important;gap:8px!important;}
  .gallery-pair-row .gallery-wide-card{aspect-ratio:16/9!important;}
  .gallery-pair-row[data-gallery-pair="pool"] .gallery-wide-card{aspect-ratio:1942/809!important;}
  .gallery-pair-row .gallery-mobile-card{aspect-ratio:9/16!important;}
}

/* V23.2.13 â€” Indy helipad gallery pair uses its native 3:2 widescreen artwork. */
.gallery-pair-row[data-gallery-pair="indy-helipad"] .gallery-wide-card{aspect-ratio:3/2!important;}
@media (max-width:760px){.gallery-pair-row[data-gallery-pair="indy-helipad"] .gallery-wide-card{aspect-ratio:3/2!important;}}

/* V24.2 â€” SQUARE STORE */
.panel.store-mode{overflow:auto;align-items:flex-start;padding:72px 0 48px;}
.panel.store-mode .panel-inner{width:min(1120px,92vw);}
.panel.store-mode .panel-default{display:none;}
.store-view{display:block;padding-top:8px;}
.store-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:38px;align-items:end;padding:4px 0 24px;border-bottom:1px solid rgba(238,246,255,.10);}
.store-kicker{margin:0 0 9px;font-size:8px;letter-spacing:.34em;color:#c997ff;}
.store-head h1{margin:0;font-size:clamp(42px,7vw,84px);line-height:.88;letter-spacing:-.055em;}
.store-head h1 em{font-style:normal;color:#c997ff;}
.store-intro{max-width:690px;margin:16px 0 0;color:rgba(238,246,255,.52);font-size:8px;line-height:1.7;letter-spacing:.08em;}
.store-sync{min-width:170px;padding:12px 0 2px;text-align:right;color:rgba(238,246,255,.50);}
.store-sync>b{display:inline-block;width:6px;height:6px;border-radius:50%;background:#c997ff;box-shadow:0 0 12px #c997ff;margin-right:7px;vertical-align:middle;}
.store-sync[data-state="error"] b{background:#ff6f9e;box-shadow:0 0 12px #ff6f9e;}
.store-sync[data-state="ready"] b{background:#7ed5ff;box-shadow:0 0 12px #7ed5ff;}
.store-sync span{font-size:7px;letter-spacing:.20em;vertical-align:middle;}
.store-sync small{display:block;margin-top:7px;font-size:5px;letter-spacing:.23em;color:rgba(238,246,255,.28);}
.store-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 0 13px;}
.store-toolbar-label{display:flex;align-items:center;gap:10px;font-size:6px;letter-spacing:.24em;color:rgba(238,246,255,.44);}
.store-toolbar-label b{width:42px;height:1px;background:linear-gradient(90deg,#62d7ff,#c997ff);display:block;}
.store-toolbar-label small{font-size:6px;color:rgba(238,246,255,.24);}
.store-refresh{border:0;background:none;color:rgba(238,246,255,.44);cursor:pointer;font-size:6px;letter-spacing:.22em;padding:5px 0;}
.store-refresh:hover{color:#fff;}
.store-message{display:none;margin:8px 0 18px;padding:15px 16px;border:1px solid rgba(238,246,255,.10);background:rgba(6,8,15,.64);color:rgba(238,246,255,.58);font-size:7px;letter-spacing:.12em;line-height:1.6;}
.store-message.is-visible{display:block;}
.store-message.is-error{border-color:rgba(255,111,158,.26);color:rgba(255,205,222,.72);}
.store-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.store-card{position:relative;display:flex;flex-direction:column;min-width:0;border:1px solid rgba(238,246,255,.11);background:linear-gradient(150deg,rgba(255,255,255,.075),rgba(9,10,18,.86) 38%,rgba(4,5,11,.95));transition:transform .32s ease,border-color .32s ease,box-shadow .32s ease;overflow:hidden;}
.store-card:hover{transform:translateY(-4px);border-color:rgba(201,151,255,.48);box-shadow:0 22px 46px rgba(0,0,0,.40),0 0 35px rgba(126,72,190,.10);}
.store-card-media{position:relative;aspect-ratio:1/1.12;overflow:hidden;background:radial-gradient(circle at 40% 30%,rgba(201,151,255,.16),transparent 38%),linear-gradient(145deg,#10131c,#05060b 70%);}
.store-card-media::after{content:"P&T";position:absolute;right:11px;bottom:9px;font-size:6px;letter-spacing:.24em;color:rgba(238,246,255,.25);}
.store-card-media img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.88) contrast(1.04) brightness(.78);transition:transform .55s ease,filter .4s ease;}
.store-card:hover .store-card-media img{transform:scale(1.035);filter:saturate(1) contrast(1.05) brightness(.88);}
.store-card-body{display:flex;flex-direction:column;gap:9px;padding:14px 14px 15px;flex:1;}
.store-card-kicker{font-size:5px;letter-spacing:.24em;color:rgba(238,246,255,.30);}
.store-card-title{margin:0;font-size:14px;line-height:1.12;letter-spacing:.06em;}
.store-card-desc{margin:0;color:rgba(238,246,255,.44);font-size:7px;line-height:1.55;min-height:32px;}
.store-card-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-top:auto;padding-top:4px;}
.store-card-price{font-size:20px;letter-spacing:-.03em;white-space:nowrap;}
.store-card-stock{display:block;margin-top:4px;font-size:5px;letter-spacing:.17em;color:rgba(238,246,255,.35);}
.store-card-stock.is-low{color:#c997ff;}.store-card-stock.is-out{color:rgba(255,111,158,.78);}
.store-card-buy{border:1px solid rgba(201,151,255,.32);background:rgba(201,151,255,.055);padding:8px 9px;cursor:pointer;font-size:6px;letter-spacing:.18em;white-space:nowrap;transition:background .25s ease,border-color .25s ease,transform .25s ease;}
.store-card-buy:hover{background:rgba(201,151,255,.14);border-color:rgba(201,151,255,.68);transform:translateY(-1px);}
.store-card-buy[disabled]{opacity:.35;cursor:not-allowed;transform:none;}
.store-foot{display:flex;justify-content:space-between;gap:18px;margin-top:22px;padding-top:14px;border-top:1px solid rgba(238,246,255,.08);color:rgba(238,246,255,.25);font-size:5px;letter-spacing:.22em;}
.store-product-modal{position:fixed;inset:0;z-index:130;display:grid;place-items:center;padding:24px;background:rgba(2,4,9,.84);backdrop-filter:blur(18px);opacity:0;pointer-events:none;transition:opacity .2s ease;}
.store-product-modal.open{opacity:1;pointer-events:auto;}
.store-product-backdrop{position:absolute;inset:0;border:0;background:transparent;cursor:pointer;}
.store-product-card{position:relative;z-index:2;width:min(980px,94vw);max-height:88vh;overflow:auto;background:linear-gradient(145deg,rgba(7,9,17,.99),rgba(4,5,11,.98));border:1px solid rgba(238,246,255,.13);box-shadow:0 40px 120px rgba(0,0,0,.78),0 0 80px rgba(126,72,190,.10);}
.store-product-topline{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;border-bottom:1px solid rgba(238,246,255,.08);font-size:6px;letter-spacing:.22em;color:rgba(238,246,255,.34);}
.store-product-topline button{border:0;background:none;color:rgba(238,246,255,.66);cursor:pointer;font-size:6px;letter-spacing:.18em;}
.store-product-layout{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(340px,.98fr);}
.store-product-art{min-height:500px;background:radial-gradient(circle at 45% 30%,rgba(201,151,255,.14),transparent 36%),#05070d;display:grid;place-items:center;overflow:hidden;border-right:1px solid rgba(238,246,255,.08);}
.store-product-art img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.92) contrast(1.05) brightness(.82);}
.store-product-art.is-empty::after{content:"P&T";font-size:28px;letter-spacing:.28em;color:rgba(238,246,255,.18);}
.store-product-info{padding:30px 30px 26px;display:flex;flex-direction:column;align-items:stretch;}
.store-product-kicker{margin:0 0 8px;color:#c997ff;font-size:6px;letter-spacing:.28em;}
.store-product-info h2{margin:0;font-size:clamp(30px,4vw,56px);line-height:.92;letter-spacing:-.045em;}
.store-product-desc{margin:13px 0 0;color:rgba(238,246,255,.50);font-size:8px;line-height:1.65;}
.store-product-price{margin:19px 0 24px;font-size:28px;letter-spacing:-.04em;}
.store-product-block{padding:14px 0;border-top:1px solid rgba(238,246,255,.08);}
.store-product-block>span{display:block;margin-bottom:10px;font-size:5px;letter-spacing:.21em;color:rgba(238,246,255,.30);}
.store-variation-list{display:flex;flex-wrap:wrap;gap:7px;}
.store-variation{border:1px solid rgba(238,246,255,.16);background:rgba(255,255,255,.025);padding:9px 10px;color:rgba(238,246,255,.70);cursor:pointer;font-size:7px;letter-spacing:.10em;min-width:56px;text-align:center;}
.store-variation:hover{border-color:rgba(201,151,255,.48);}
.store-variation.is-selected{border-color:rgba(201,151,255,.82);background:rgba(201,151,255,.10);color:#fff;box-shadow:inset 0 0 18px rgba(201,151,255,.07);}
.store-variation.is-unavailable{opacity:.33;text-decoration:line-through;cursor:not-allowed;}
.store-qty-block{display:flex;justify-content:space-between;align-items:center;gap:18px;}
.store-qty-block>span{margin:0;}
.store-qty{display:flex;align-items:center;gap:13px;}
.store-qty button{width:28px;height:28px;border:1px solid rgba(238,246,255,.13);background:rgba(255,255,255,.025);color:#eef6ff;cursor:pointer;}
.store-qty strong{min-width:18px;text-align:center;font-size:9px;}
.store-buy-button{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;border:1px solid rgba(201,151,255,.66);background:linear-gradient(90deg,rgba(132,62,191,.22),rgba(90,194,245,.08));padding:14px 15px;color:#fff;cursor:pointer;font-size:8px;letter-spacing:.23em;transition:transform .25s ease,background .25s ease,border-color .25s ease;}
.store-buy-button:hover{transform:translateY(-2px);border-color:rgba(238,246,255,.72);background:linear-gradient(90deg,rgba(132,62,191,.30),rgba(90,194,245,.12));}
.store-buy-button[disabled]{opacity:.45;cursor:not-allowed;transform:none;}
.store-buy-button b{font-size:16px;color:#c997ff;}
.store-product-note{margin:11px 0 0!important;max-width:none!important;font-size:5px!important;line-height:1.5!important;letter-spacing:.10em;color:rgba(238,246,255,.26)!important;}

.store-product-art{position:relative;}
.store-gallery-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:34px;height:34px;border:1px solid rgba(238,246,255,.18);background:rgba(3,5,10,.58);backdrop-filter:blur(9px);color:#fff;cursor:pointer;font-size:24px;line-height:1;display:grid;place-items:center;opacity:.75;transition:opacity .2s ease,border-color .2s ease,background .2s ease;}
.store-gallery-arrow:hover{opacity:1;border-color:rgba(201,151,255,.62);background:rgba(10,8,18,.78);}
.store-gallery-prev{left:12px;}.store-gallery-next{right:12px;}
.store-product-thumbs{position:absolute;z-index:4;left:12px;right:12px;bottom:12px;display:flex;gap:7px;overflow:auto;padding:2px;scrollbar-width:thin;}
.store-product-thumb{flex:0 0 58px;width:58px;height:58px;padding:0;border:1px solid rgba(238,246,255,.16);background:rgba(3,5,10,.72);cursor:pointer;opacity:.72;transition:opacity .2s ease,border-color .2s ease,transform .2s ease;}
.store-product-thumb:hover{opacity:1;transform:translateY(-1px);}.store-product-thumb.is-selected{opacity:1;border-color:rgba(201,151,255,.78);box-shadow:0 0 0 1px rgba(201,151,255,.16);}
.store-product-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.store-option-list{display:flex;flex-wrap:wrap;gap:7px;}
.store-option{border:1px solid rgba(238,246,255,.16);background:rgba(255,255,255,.025);padding:9px 11px;min-width:62px;color:rgba(238,246,255,.72);cursor:pointer;font-size:7px;letter-spacing:.08em;text-align:center;transition:background .2s ease,border-color .2s ease,transform .2s ease;color .2s ease;}
.store-option:hover{border-color:rgba(201,151,255,.52);transform:translateY(-1px);}.store-option.is-selected{border-color:rgba(201,151,255,.84);background:rgba(201,151,255,.12);color:#fff;box-shadow:inset 0 0 18px rgba(201,151,255,.07);}.store-option.is-unavailable{opacity:.30;text-decoration:line-through;cursor:not-allowed;transform:none;}
.store-selection-note{margin-top:4px;min-height:12px;color:rgba(238,246,255,.34);font-size:5px;letter-spacing:.18em;}
.store-option-block[hidden],.store-variation-block[hidden]{display:none!important;}

@media (max-width:980px){
  .panel.store-mode{padding:64px 0 38px;}
  .store-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .store-head{grid-template-columns:1fr;gap:16px;}
  .store-sync{text-align:left;padding:0;}
  .store-product-layout{grid-template-columns:1fr;}
  .store-product-art{min-height:340px;max-height:54vh;border-right:0;border-bottom:1px solid rgba(238,246,255,.08);}
}
@media (max-width:620px){
  .panel.store-mode{padding:58px 0 26px;}
  .panel.store-mode .panel-inner{width:94vw;}
  .store-head h1{font-size:46px;}
  .store-intro{font-size:7px;}
  .store-grid{grid-template-columns:1fr;gap:10px;}
  .store-card-media{aspect-ratio:1/1;}
  .store-foot{display:block;line-height:1.8;}
  .store-foot span{display:block;}
  .store-product-card{width:96vw;max-height:92vh;}
  .store-product-info{padding:22px 20px 20px;}
  .store-product-art{min-height:300px;}
}


/* V24.4 â€” store interaction / image presentation refinements */
.store-card{cursor:pointer;}
.store-card:focus-visible{outline:1px solid rgba(201,151,255,.75);outline-offset:3px;}
.store-card-media{background:radial-gradient(circle at 45% 35%,rgba(201,151,255,.13),transparent 38%),linear-gradient(145deg,#0d1018,#05060b 72%);}
.store-card-media img{object-fit:contain;padding:16px;filter:saturate(.90) contrast(1.02) brightness(.82);}
.store-card:hover .store-card-media img{transform:scale(1.02);}
.store-product-art{padding:24px 24px 88px;box-sizing:border-box;}
.store-product-art img{width:auto;height:auto;max-width:100%;max-height:calc(100% - 8px);object-fit:contain;object-position:center;filter:saturate(.92) contrast(1.04) brightness(.86);}
.store-product-thumb img{object-fit:contain;padding:4px;}
@media (max-width:980px){
  .store-product-art{padding:16px 16px 78px;min-height:340px;}
  .store-product-art img{max-width:94%;max-height:100%;}
}
@media (max-width:620px){
  .store-product-art{min-height:300px;padding:12px 12px 72px;}
  .store-product-art img{max-width:94%;max-height:100%;}
}


.store-card-media-button{position:relative;display:grid;place-items:center;width:100%;border:0;margin:0;padding:0;cursor:pointer;color:inherit;font:inherit;text-align:left;appearance:none;overflow:hidden;}
.store-card-media-button:focus-visible{outline:1px solid rgba(201,151,255,.78);outline-offset:-2px;}
.store-card-media-cta{position:absolute;left:12px;bottom:12px;padding:7px 9px;border:1px solid rgba(238,246,255,.18);background:rgba(3,5,10,.66);backdrop-filter:blur(8px);font-size:6px;letter-spacing:.18em;color:rgba(238,246,255,.72);opacity:0;transform:translateY(4px);transition:opacity .24s ease,transform .24s ease,border-color .24s ease;pointer-events:none;}
.store-card:hover .store-card-media-cta,.store-card-media-button:focus-visible .store-card-media-cta{opacity:1;transform:translateY(0);border-color:rgba(201,151,255,.55);}


/* V24.5 â€” P&T BAG / SQUARE CHECKOUT */
.store-toolbar-actions{display:flex;align-items:center;gap:10px;}
.store-bag-button{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(201,151,255,.42);background:rgba(201,151,255,.075);color:#fff;padding:8px 10px;cursor:pointer;font-size:6px;letter-spacing:.18em;transition:background .2s ease,border-color .2s ease,transform .2s ease;}
.store-bag-button:hover{background:rgba(201,151,255,.14);border-color:rgba(201,151,255,.76);transform:translateY(-1px);}
.store-bag-button b{min-width:16px;height:16px;display:grid;place-items:center;border:1px solid rgba(238,246,255,.16);font-size:7px;font-weight:500;}
.store-bag{position:fixed;inset:0;z-index:140;opacity:0;pointer-events:none;transition:opacity .22s ease;background:rgba(2,4,9,.66);backdrop-filter:blur(12px);}
.store-bag.open{opacity:1;pointer-events:auto;}
.store-bag-backdrop{position:absolute;inset:0;border:0;background:transparent;cursor:pointer;}
.store-bag-card{position:absolute;top:0;right:0;height:100%;width:min(470px,94vw);background:linear-gradient(160deg,rgba(8,10,18,.99),rgba(4,5,11,.99));border-left:1px solid rgba(238,246,255,.13);box-shadow:-30px 0 100px rgba(0,0,0,.58);display:flex;flex-direction:column;overflow:hidden;transform:translateX(24px);transition:transform .26s ease;}
.store-bag.open .store-bag-card{transform:translateX(0);}
.store-bag-topline{display:flex;align-items:center;justify-content:space-between;padding:14px 17px;border-bottom:1px solid rgba(238,246,255,.08);color:rgba(238,246,255,.35);font-size:6px;letter-spacing:.22em;}
.store-bag-topline button{border:0;background:none;color:rgba(238,246,255,.68);cursor:pointer;font:inherit;font-size:6px;letter-spacing:.18em;}
.store-bag-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:24px 20px 18px;border-bottom:1px solid rgba(238,246,255,.08);}
.store-bag-head p{margin:0 0 7px;color:#c997ff;font-size:6px;letter-spacing:.25em;}
.store-bag-head h2{margin:0;font-size:clamp(32px,7vw,54px);line-height:.88;letter-spacing:-.05em;}
.store-bag-count-label{color:rgba(238,246,255,.34);font-size:6px;letter-spacing:.19em;white-space:nowrap;}
.store-bag-count-label b{color:#fff;font-weight:500;}
.store-bag-empty{padding:40px 20px;color:rgba(238,246,255,.30);font-size:7px;letter-spacing:.2em;}
.store-bag-items{padding:8px 20px 18px;overflow:auto;display:flex;flex-direction:column;gap:10px;min-height:0;}
.store-bag-item{display:grid;grid-template-columns:82px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid rgba(238,246,255,.07);}
.store-bag-item-image{width:82px;aspect-ratio:1/1;background:radial-gradient(circle at 45% 35%,rgba(201,151,255,.10),transparent 42%),#05070d;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(238,246,255,.08);}
.store-bag-item-image img{width:100%;height:100%;object-fit:contain;padding:5px;display:block;}
.store-bag-item-image-empty{font-size:8px;letter-spacing:.2em;color:rgba(238,246,255,.22);}
.store-bag-item-main{min-width:0;display:flex;flex-direction:column;gap:7px;}
.store-bag-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
.store-bag-item-head h3{margin:0;font-size:11px;line-height:1.15;letter-spacing:.06em;}
.store-bag-item-head button{border:0;background:none;color:rgba(238,246,255,.30);cursor:pointer;font-size:5px;letter-spacing:.14em;padding:0;}
.store-bag-item-head button:hover{color:#c997ff;}
.store-bag-item-main>p{margin:0;color:rgba(238,246,255,.40);font-size:6px;letter-spacing:.12em;}
.store-bag-item-foot{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;}
.store-bag-item-foot>span{font-size:13px;letter-spacing:-.02em;}
.store-bag-qty{display:flex;align-items:center;gap:10px;}
.store-bag-qty button{width:25px;height:25px;border:1px solid rgba(238,246,255,.12);background:rgba(255,255,255,.025);color:#fff;cursor:pointer;}
.store-bag-qty strong{min-width:14px;text-align:center;font-size:8px;}
.store-bag-summary{margin-top:auto;padding:18px 20px 20px;border-top:1px solid rgba(238,246,255,.09);background:linear-gradient(180deg,rgba(6,8,14,.96),rgba(4,5,10,.99));}
.store-bag-summary>div{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;}
.store-bag-summary>div span{font-size:6px;letter-spacing:.2em;color:rgba(238,246,255,.36);}
.store-bag-summary>div strong{font-size:24px;letter-spacing:-.04em;}
.store-bag-checkout{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid rgba(201,151,255,.66);background:linear-gradient(90deg,rgba(132,62,191,.22),rgba(90,194,245,.08));padding:14px 15px;color:#fff;cursor:pointer;font-size:7px;letter-spacing:.20em;}
.store-bag-checkout:hover{border-color:rgba(238,246,255,.74);background:linear-gradient(90deg,rgba(132,62,191,.30),rgba(90,194,245,.12));}
.store-bag-checkout[disabled]{opacity:.38;cursor:not-allowed;}
.store-bag-checkout b{font-size:16px;color:#c997ff;}
.store-bag-summary small{display:block;margin-top:10px;color:rgba(238,246,255,.26);font-size:5px;letter-spacing:.10em;line-height:1.5;}
.store-bag-summary p{margin:8px 0 0;color:rgba(201,151,255,.8);font-size:5px;letter-spacing:.16em;}
body.store-bag-open{overflow:hidden;}
@media (max-width:760px){.store-toolbar-actions{width:100%;justify-content:space-between}.store-bag-button{padding:9px 10px}.store-bag-card{width:100%;border-left:0}.store-bag-item{grid-template-columns:74px 1fr}.store-bag-item-image{width:74px}}

/* V24.6 â€” store bag / order confirmation polish */
.store-bag-continue{width:100%;margin-top:8px;padding:11px 14px;border:1px solid rgba(238,246,255,.10);background:rgba(255,255,255,.025);color:rgba(238,246,255,.68);cursor:pointer;font-size:6px;letter-spacing:.18em;transition:background .2s ease,border-color .2s ease,color .2s ease;}
.store-bag-continue:hover{background:rgba(255,255,255,.045);border-color:rgba(201,151,255,.34);color:#fff;}
.store-bag-item-main>p em{font-style:normal;color:#c997ff;margin-left:8px;font-size:5px;letter-spacing:.12em;}
.store-bag-qty button[disabled]{opacity:.25;cursor:not-allowed;}
.store-order-modal{position:fixed;inset:0;z-index:160;display:grid;place-items:center;padding:24px;background:rgba(2,4,9,.84);backdrop-filter:blur(18px);opacity:0;pointer-events:none;transition:opacity .22s ease;}
.store-order-modal.open{opacity:1;pointer-events:auto;}
.store-order-backdrop{position:absolute;inset:0;border:0;background:transparent;cursor:pointer;}
.store-order-card{position:relative;z-index:2;width:min(620px,94vw);padding:28px 28px 26px;background:linear-gradient(150deg,rgba(8,10,18,.99),rgba(4,5,11,.99));border:1px solid rgba(238,246,255,.13);box-shadow:0 40px 120px rgba(0,0,0,.78),0 0 90px rgba(126,72,190,.12);}
.store-order-topline{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid rgba(238,246,255,.08);color:rgba(238,246,255,.32);font-size:6px;letter-spacing:.22em;}
.store-order-topline button{border:0;background:none;color:rgba(238,246,255,.68);cursor:pointer;font-size:6px;letter-spacing:.18em;}
.store-order-icon{width:44px;height:44px;margin-top:28px;border:1px solid rgba(201,151,255,.46);display:grid;place-items:center;color:#d9b6ff;font-size:22px;}
.store-order-kicker{margin:18px 0 8px;color:#c997ff;font-size:6px;letter-spacing:.25em;}
.store-order-card h2{margin:0;font-size:clamp(34px,6vw,60px);line-height:.9;letter-spacing:-.05em;}
.store-order-lead{margin:14px 0 0;max-width:54ch;color:rgba(238,246,255,.52);font-size:8px;line-height:1.6;}
.store-order-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:24px;}
.store-order-grid>div{padding:14px;border:1px solid rgba(238,246,255,.08);background:rgba(255,255,255,.018);}
.store-order-grid span{display:block;color:rgba(238,246,255,.28);font-size:5px;letter-spacing:.16em;margin-bottom:7px;}
.store-order-grid strong{font-size:15px;font-weight:500;letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;}
.store-order-note{margin:15px 0 0;color:rgba(238,246,255,.28);font-size:6px;line-height:1.5;letter-spacing:.06em;}
.store-order-actions{display:flex;justify-content:flex-end;margin-top:22px;}
.store-order-actions button{border:1px solid rgba(201,151,255,.58);background:linear-gradient(90deg,rgba(132,62,191,.20),rgba(90,194,245,.07));color:#fff;padding:12px 16px;cursor:pointer;font-size:6px;letter-spacing:.18em;}
@media(max-width:560px){.store-order-card{padding:22px 18px}.store-order-grid{grid-template-columns:1fr;gap:8px}.store-order-grid strong{white-space:normal}}


/* V24.7.0 â€” SPACES / PLACES / MOBILE POLISH
   Stable section transitions, tighter phone layout, clearer place identity,
   lighter Places overlay and clean artwork for DON'T FALL FOR ME. */
html, body {
  max-width:100%;
  overflow:hidden;
  overscroll-behavior:none;
  overscroll-behavior-x:none;
}
.site {
  max-width:100vw;
  width:100%;
  overflow:hidden;
  overflow-x:clip;
  touch-action:pan-y;
  isolation:isolate;
}

/* Replace the route Web Animations with predictable CSS compositing. */
.world-screen,
.world-archive,
.place-experience,
.sunset-experience,
.night-experience {
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  -webkit-transform:translate3d(0,0,0) scale(1.01);
  transform:translate3d(0,0,0) scale(1.01);
  transition:opacity .42s cubic-bezier(.2,.8,.2,1), transform .42s cubic-bezier(.2,.8,.2,1);
  will-change:opacity;
}
.world-screen.open,
.world-archive.open,
.place-experience.open,
.sunset-experience.open,
.night-experience.open {
  -webkit-transform:translate3d(0,0,0) scale(1);
  transform:translate3d(0,0,0) scale(1);
}

/* Places should read as cinematic locations rather than a dark database screen. */
.world-places-archive {
  background:
    radial-gradient(circle at 20% 18%, rgba(121,224,176,.11), transparent 27%),
    radial-gradient(circle at 82% 72%, rgba(196,92,255,.10), transparent 30%),
    linear-gradient(180deg, rgba(4,7,12,.70), rgba(2,4,9,.80));
}
.world-places-archive::before {
  opacity:.34;
  background-size:72px 72px;
  background-image:
    linear-gradient(rgba(103,215,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(103,215,255,.035) 1px, transparent 1px);
}
.world-places-archive::after {
  background:radial-gradient(circle at 50% 42%, transparent 0 36%, rgba(0,0,0,.08) 72%, rgba(0,0,0,.28) 100%);
}
.world-places-archive .places-lead {
  max-width:700px;
  color:rgba(238,246,255,.66);
}
.world-places-archive .places-bottomline {
  color:rgba(238,246,255,.38);
}
.place-card::before {
  filter:saturate(1.05) contrast(1.03) brightness(.78);
}
.place-card::after {
  background:linear-gradient(180deg, rgba(3,5,10,.03) 0%, rgba(3,5,10,.10) 42%, rgba(3,5,10,.62) 76%, rgba(3,5,10,.84) 100%);
}
.place-card:hover::before { filter:saturate(1.14) contrast(1.05) brightness(.86); }
.place-sunset::before {
  background-image:url('../assets/images/gallery-rooftop-wide.png');
  background-size:cover;
  background-position:center;
}

/* The location itself should feel like the P&T artwork, not a UI placeholder. */
.sunset-sky {
  background-image:url('../assets/images/gallery-rooftop-wide.png') !important;
  background-size:cover !important;
  background-position:center !important;
  filter:saturate(.92) contrast(1.04) brightness(.88);
}
.sunset-experience::after {
  background:
    linear-gradient(90deg, rgba(3,6,12,.10), rgba(3,6,12,.02) 52%, rgba(3,6,12,.06)),
    linear-gradient(180deg, rgba(3,6,12,.07), transparent 28%, rgba(3,6,12,.07));
}

/* One exit control per location: keep the explicit footer action. */
.hotspot-exit,
.sunset-exit,
.night-exit { display:none !important; }

/* Phone: avoid nested scrolling and oversized portals. */
@media (max-width:820px){
  .home-screen { overflow:hidden !important; align-items:flex-start; }
  .home-content { width:94vw; padding-top:7.5vh; padding-bottom:1.5vh; }
  .home-heading .logo-small { width:min(210px,48vw); }
  .home-tagline { margin-bottom:12px; font-size:6px; }
  .transmission-node { width:min(430px,88vw); margin-top:10px; }
  .portal-grid {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px 10px !important;
    max-width:430px !important;
    padding:4px 0 2px !important;
    overflow:visible !important;
  }
  .portal-card,
  .portal-card:nth-child(1),
  .portal-card:nth-child(2),
  .portal-card:nth-child(3) {
    width:100% !important;
    min-height:0 !important;
  }
  .portal-card:nth-child(3) { grid-column:1 / -1; }
  .portal-ring {
    width:min(39vw,164px) !important;
    height:min(39vw,164px) !important;
  }
  .portal-copy { margin-top:6px !important; }
  .portal-index { font-size:5px !important; margin-bottom:4px !important; }
  .portal-label { font-size:13px !important; letter-spacing:.22em !important; }
  .portal-sub { margin-top:5px !important; font-size:4.5px !important; letter-spacing:.20em !important; }
  .portal-arrow { margin-top:6px !important; font-size:6px !important; }
  .home-footer { margin-top:6px !important; gap:8px !important; font-size:5px !important; }
}
@media (max-width:480px){
  .home-content { padding-top:6.5vh; }
  .home-heading .eyebrow { font-size:6px; }
  .home-heading .logo-small { width:min(185px,46vw); }
  .transmission-node { padding:9px 10px; }
  .portal-ring { width:min(35vw,142px) !important; height:min(35vw,142px) !important; }
  .portal-symbol { display:none !important; }
  .portal-label { font-size:12px !important; }
  .portal-sub { display:none !important; }
  .portal-arrow { margin-top:5px !important; }
}

/* Phone treatment for Places itself. */
@media (max-width:680px){
  .world-places-archive { overflow:hidden; }
  .world-places-archive .places-shell { width:92vw; padding-top:98px; padding-bottom:18px; }
  .world-places-archive .places-topline h2 { font-size:47px; }
  .world-places-archive .places-lead { font-size:10px; line-height:1.6; max-width:350px; }
  .world-places-archive .places-grid { margin-top:20px; gap:8px; }
  .world-places-archive .place-card { min-height:146px; }
  .world-places-archive .place-card strong { font-size:21px; }
  .world-places-archive .places-bottomline { font-size:4.5px; }
}

/* Clean rooftop pair on small screens. */
@media (max-width:820px){
  .sunset-sky { background-image:url('../assets/images/gallery-rooftop-mobile.png') !important; background-position:center !important; }
  .sunset-experience::after {
    background:linear-gradient(180deg, rgba(3,6,12,.14), transparent 34%, rgba(3,6,12,.12));
  }
}

/* V24.7.1 â€” compact three-up mobile portal layout */
@media (max-width:820px){
  .home-screen{overflow:hidden !important;}
  .home-content{width:94vw !important;padding-top:7vh !important;padding-bottom:1vh !important;}
  .portal-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:6px !important;
    max-width:460px !important;
    width:100% !important;
    padding:4px 0 0 !important;
  }
  .portal-card{width:100% !important;min-height:0 !important;}
  .portal-ring{width:min(29vw,116px) !important;height:min(29vw,116px) !important;}
  .portal-copy{top:calc(min(29vw,116px) - 34px) !important;margin-top:0 !important;}
  .portal-label{font-size:12px !important;letter-spacing:.20em !important;}
  .portal-index{font-size:5px !important;letter-spacing:.28em !important;margin-bottom:4px !important;}
  .portal-arrow{margin-top:8px !important;font-size:5px !important;}
  .portal-sub{display:none !important;}
}
@media (max-width:480px){
  .home-content{padding-top:6vh !important;}
  .home-heading .logo-small{width:min(185px,48vw) !important;}
  .home-tagline{font-size:6px !important;letter-spacing:.26em !important;margin-bottom:10px !important;}
  .transmission-node{width:min(430px,88vw) !important;padding:8px 10px !important;}
  .portal-grid{gap:5px !important;}
  .portal-ring{width:min(27vw,106px) !important;height:min(27vw,106px) !important;}
  .portal-copy{top:calc(min(27vw,106px) - 31px) !important;}
  .portal-label{font-size:10px !important;letter-spacing:.15em !important;}
  .portal-index{font-size:4px !important;}
  .portal-arrow{font-size:4px !important;margin-top:6px !important;}
}
@media (max-width:820px){
  .portal-card:nth-child(3){grid-column:auto !important;}
}

/* V24.7.6 â€” MOBILE STABILITY HOTFIX
   The page keeps several full-screen worlds mounted for instant navigation. On mobile,
   hiding the inactive layers and pausing their effects prevents Safari/WebKit from
   continuously compositing invisible filters, animations and large artwork textures. */
@media (max-width:820px){
  .world-screen:not(.open),
  .world-archive:not(.open),
  .visual-viewer:not(.open),
  .place-experience:not(.open),
  .panel:not(.open),
  .transmission-panel:not(.open),
  .indy-episode-panel:not(.open),
  .store-product-modal:not(.open),
  .store-bag:not(.open),
  .store-order-modal:not(.open),
  .wallpaper-purchase-modal:not(.open),
  .wallpaper-preview-modal:not(.open){
    visibility:hidden !important;
    pointer-events:none !important;
  }

  .world-screen.open,
  .world-archive.open,
  .visual-viewer.open,
  .place-experience.open,
  .panel.open,
  .transmission-panel.open,
  .indy-episode-panel.open,
  .store-product-modal.open,
  .store-bag.open,
  .store-order-modal.open,
  .wallpaper-purchase-modal.open,
  .wallpaper-preview-modal.open{
    visibility:visible !important;
  }

  .world-screen:not(.open) *,
  .world-archive:not(.open) *,
  .place-experience:not(.open) *,
  .transmission-panel:not(.open) *,
  .indy-episode-panel:not(.open) *{
    animation-play-state:paused !important;
  }

  /* Keep the landing screen visually rich, but remove the heaviest mobile GPU work. */
  .hero-bg,
  .menu-bg,
  .rain,
  .scanlines,
  .grain,
  .vignette,
  .portal-card,
  .portal-image{
    will-change:auto !important;
  }
  .rain{animation:none !important;opacity:.11;}
  .portal-card{
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.16),inset 0 -1px 0 rgba(0,0,0,.38),0 12px 28px rgba(0,0,0,.24);
    transition:transform .22s ease,border-color .22s ease,opacity .22s ease !important;
  }
  .portal-image{filter:saturate(.9) contrast(1.05) brightness(.64);transition:none !important;}
}


/* V24.7.7 â€” MOBILE MEMORY / STARTUP HOTFIX
   Keep heavy background artwork completely out of the initial mobile render.
   The previous hotfix reduced compositing, but hidden screens could still retain
   their CSS image resources. Load the artwork only when that screen is actually open. */
@media (max-width:820px){
  /* Intro only needs the hero background. The same image is restored when the menu opens. */
  .menu-bg{background-image:none !important;}
  .site.menu-open .menu-bg{background-image:url('../assets/home-background.png') !important;}

  /* Keep secondary modal/section artwork unloaded until its view is active. */
  .panel:not(.open) .panel-backdrop{background-image:none !important;}
  .arcade-screen:not(.open) .arcade-backdrop{background-image:none !important;}
  .arcade-screen:not(.open) .game-card-image{background-image:none !important;}
  .visuals-screen:not(.open) .visuals-category-image{background-image:none !important;}

  /* World / Places artwork only exists while WORLD is actually open. */
  .world-screen:not(.open) .place-underpass::before,
  .world-screen:not(.open) .place-sunset::before,
  .world-screen:not(.open) .place-night::before,
  .world-screen:not(.open) .underpass-sky,
  .world-screen:not(.open) .sunset-sky,
  .world-screen:not(.open) .night-art{background-image:none !important;}

  /* Within WORLD, don't load the three full-screen location backdrops until opened. */
  .place-experience:not(.open) .underpass-sky,
  .place-experience:not(.open) .sunset-sky,
  .place-experience:not(.open) .night-art{background-image:none !important;}

  /* Avoid keeping duplicate large thumbnails active behind closed Places archives. */
  .world-places-archive:not(.open) .place-card::before{background-image:none !important;}

  /* The global grain uses an SVG turbulence filter; remove that GPU work during startup. */
  .site:not(.menu-open) .grain{display:none !important;}
}

/* V24.7.8 â€” MOBILE HOME ORDER / TRANSMISSIONS + UNDERPASS CLEANUP */
/* Remove the three added orange beam lights from TAKE IT EASY ON ME.
   The core underpass artwork already carries the intended lighting. */
#underpassExperience .underpass-light{
  display:none !important;
}

@media (max-width:820px){
  /* Keep the home screen in the intended reading order: portals first, transmissions below. */
  .home-content{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
  }
  .home-heading{order:1 !important;}
  .portal-grid{order:2 !important;}
  .transmission-node{order:3 !important; margin-top:8px !important;}
  .home-footer{order:4 !important;}
}


/* V24.7.9 â€” MOBILE TRANSMISSIONS ORDER REPAIR
   The HTML already places TRANSMISSIONS before the portal grid. Previous passes
   forced the home shell into flex ordering and pinned the node underneath the
   portals. Restore the natural mobile reading order. */
@media (max-width:820px){
  .home-content {
    display:block !important;
  }
  .home-heading,
  .portal-grid,
  .transmission-node,
  .home-footer {
    order:initial !important;
  }
  .transmission-node {
    margin-top:10px !important;
    margin-bottom:8px !important;
  }
  .portal-grid {
    margin-top:0 !important;
  }
}

/* V24.7.12 â€” MOBILE HOME: TRANSMISSIONS PHYSICALLY BELOW PORTALS
   Final mobile layout override. The node is intentionally re-ordered here so
   the visible page reads: heading -> portals -> transmissions -> footer. */
@media (max-width:820px){
  .home-content{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
  }
  .home-heading{order:1 !important;}
  .portal-grid{order:2 !important;}
  .transmission-node{order:3 !important; margin-top:14px !important; margin-bottom:8px !important;}
  .home-footer{order:4 !important;}
}

/* V24.7.13 â€” MOBILE HOME: PREVENT TRANSMISSIONS COLLISION
   The portal copy was being visually shifted with `top` while remaining in normal flow.
   That made the Transmissions node start before the visible portal text had finished.
   Keep the copy in normal flow so the portal grid reserves the space it visibly occupies. */
@media (max-width:820px){
  .portal-copy{
    top:auto !important;
    margin-top:8px !important;
    position:relative !important;
  }
  .portal-grid{
    margin-bottom:10px !important;
  }
  .transmission-node{
    margin-top:0 !important;
  }
}
@media (max-width:480px){
  .portal-copy{top:auto !important;margin-top:6px !important;}
  .portal-grid{margin-bottom:12px !important;}
}

/* V24.7.14 â€” PLACES: SAFARI UI CLEARANCE + CLEAN UNDERPASS TEXT TREATMENT
   Move the top controls down, lift the main exit control clear of mobile browser chrome,
   remove the old coordinate/timestamp readout, and strip the black text backing from
   TAKE IT EASY ON ME so the artwork carries the scene. */

/* Remove the legacy time / coordinate boxes from all three Place experiences. */
#underpassExperience .underpass-coordinate,
#sunsetExperience .sunset-coordinate,
#nightExperience .night-coordinate{
  display:none !important;
}

/* The Take It Easy copy should sit directly on the artwork â€” no dark gradient plate. */
#underpassExperience::after{
  display:none !important;
}
#underpassExperience .underpass-copy{
  background:transparent !important;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
  text-shadow:0 3px 18px rgba(0,0,0,.48) !important;
}

/* Give every Place the same safe top-control position. */
#underpassExperience .underpass-topbar,
#sunsetExperience .sunset-topbar,
#nightExperience .night-topbar{
  top:72px !important;
}

/* Lift EXIT TO PLACES slightly so it sits above bottom browser controls. */
#underpassExperience .place-exit,
#sunsetExperience .place-exit,
#nightExperience .place-exit{
  transform:translateY(-16px);
}

@media (max-width:820px){
  /* On phones, leave a larger clear band for Safari/browser chrome. */
  #underpassExperience .underpass-topbar,
  #sunsetExperience .sunset-topbar,
  #nightExperience .night-topbar{
    top:max(70px, calc(env(safe-area-inset-top, 0px) + 58px)) !important;
  }

  #underpassExperience .place-exit,
  #sunsetExperience .place-exit,
  #nightExperience .place-exit{
    transform:translateY(-42px);
  }
}

/* V24.7.15 â€” PLACES: MOBILE MATCH TO SAFARI CLEARANCE PASS
   Apply the same Place cleanup to phone layouts without changing the desktop treatment. */
@media (max-width:820px){
  /* Keep Take It Easy directly on the artwork on mobile too. */
  #underpassExperience .underpass-copy{
    background:transparent !important;
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
    padding-left:20px !important;
    padding-right:20px !important;
  }

  /* The legacy LAST SIGNAL / time blocks are removed from the mobile layout as well. */
  #underpassExperience .underpass-coordinate,
  #sunsetExperience .sunset-coordinate,
  #nightExperience .night-coordinate{
    display:none !important;
  }

  /* Push the Places / World controls safely below the Safari top chrome area. */
  #underpassExperience .underpass-topbar,
  #sunsetExperience .sunset-topbar,
  #nightExperience .night-topbar{
    top:max(82px, calc(env(safe-area-inset-top, 0px) + 68px)) !important;
  }

  /* Lift the main exit further into the page, clear of Safari's bottom controls. */
  #underpassExperience .place-exit,
  #sunsetExperience .place-exit,
  #nightExperience .place-exit{
    transform:translateY(-54px) !important;
  }
}

/* ==========================================================================
   V24.8.2 â€” ARCADE / NEON NIGHT RUSH
   ========================================================================== */
.arcade-cabinet iframe{
  position:relative;
  z-index:2;
  display:block;
  width:100%;
  height:100%;
  border:0;
  background:#05060a;
}
.arcade-cabinet iframe.is-slow{opacity:.82;}
.arcade-cabinet iframe.is-ready{visibility:visible;}
.arcade-game-head .arcade-hud-copy span{min-width:118px;}
@media (max-width:900px){
  .arcade-screen.open{
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }
  .arcade-screen.open .arcade-shell{
    height:auto;
    min-height:100%;
  }
  .arcade-intro{
    justify-content:flex-start;
    padding-top:24px;
  }
  .arcade-cabinet{
    height:min(62vh, 720px);
    min-height:360px;
    flex:none;
  }
}
@media (max-width:560px){
  .arcade-screen.open{
    padding-bottom:max(16px, env(safe-area-inset-bottom));
  }
  .arcade-shell{
    padding:12px 12px 22px;
  }
  .arcade-topbar{
    min-height:44px;
    gap:8px;
    padding-bottom:9px;
  }
  .arcade-nav{
    padding:8px 9px;
    font-size:8px;
    letter-spacing:.1em;
  }
  .arcade-brand{
    flex:1;
    justify-content:center;
    gap:6px;
  }
  .arcade-brand span{font-size:18px;}
  .arcade-brand small,.arcade-status{display:none;}
  .arcade-intro{
    padding:22px 0 28px;
    text-align:center;
  }
  .arcade-kicker{font-size:7px;letter-spacing:.2em;}
  .arcade-intro h1{
    font-size:clamp(44px, 15vw, 62px);
    line-height:.88;
    margin:7px 0 10px;
  }
  .arcade-intro>p{
    font-size:9px;
    line-height:1.5;
    max-width:310px;
    margin-bottom:16px;
  }
  .arcade-machine-grid{
    gap:9px;
    margin-bottom:14px;
  }
  .arcade-game-card{
    min-height:108px;
    padding:13px;
  }
  .arcade-game-card strong{
    font-size:24px;
    margin-top:16px;
  }
  .arcade-game-card em{font-size:7px;margin-top:7px;}
  .arcade-game-card i{font-size:8px;margin-top:11px;}
  .arcade-instructions{
    gap:7px 12px;
    margin-bottom:14px;
    font-size:7px;
  }
  .arcade-start{padding:12px 15px;font-size:9px;}
  .arcade-game{padding-top:16px;}
  .arcade-game-head{
    gap:12px;
    margin-bottom:10px;
  }
  .arcade-game-head h2{font-size:34px;}
  .arcade-hud-copy{width:100%;gap:7px;}
  .arcade-game-head .arcade-hud-copy span{
    min-width:0;
    flex:1;
    padding:7px 8px;
    font-size:7px;
  }
  .arcade-game-head .arcade-hud-copy strong{font-size:11px;}
  .arcade-cabinet{
    width:100%;
    height:auto;
    aspect-ratio:16/9;
    min-height:0;
  }
  .arcade-cabinet-label{font-size:6px;left:9px;top:7px;}
  .arcade-game-footer{
    font-size:7px;
    gap:9px;
    padding-top:9px;
  }
  .arcade-game-footer span:first-of-type{display:none;}
}


/* V24.8.21 â€” HOMEPAGE TRANSMISSION CAROUSEL */
.home-transmissions{position:relative;width:min(1000px,92vw);margin:2px auto 10px;border:1px solid rgba(201,151,255,.28);background:linear-gradient(112deg,rgba(6,9,17,.78),rgba(9,7,16,.70));box-shadow:0 18px 60px rgba(0,0,0,.22),0 0 55px rgba(121,67,178,.08);backdrop-filter:blur(12px);overflow:hidden;text-align:left;isolation:isolate;}
.home-transmissions::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(201,151,255,.08),transparent 22%,transparent 76%,rgba(93,208,255,.06));}
.home-transmissions-topline{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 13px;border-bottom:1px solid rgba(238,246,255,.08);font-size:6px;letter-spacing:.24em;color:rgba(238,246,255,.44);}
.home-transmissions-topline>span{display:flex;align-items:center;gap:8px}.home-transmissions-topline i{width:6px;height:6px;border-radius:50%;background:#c997ff;box-shadow:0 0 10px #c997ff,0 0 18px rgba(201,151,255,.5);animation:transmissionPulse 2.2s ease-in-out infinite;}
.home-transmissions-readout{display:flex;align-items:center;gap:8px}.home-transmissions-readout>span{color:rgba(238,246,255,.68);letter-spacing:.18em}.home-transmission-nav{width:22px;height:20px;border:1px solid rgba(238,246,255,.12);background:rgba(255,255,255,.025);color:rgba(238,246,255,.72);cursor:pointer;font:inherit;font-size:14px;line-height:1;display:grid;place-items:center;transition:border-color .2s,background .2s,color .2s,transform .2s}.home-transmission-nav:hover,.home-transmission-nav:focus-visible{border-color:rgba(201,151,255,.55);background:rgba(201,151,255,.08);color:#fff;outline:none;transform:translateY(-1px)}
.home-transmission-viewport{position:relative;overflow:hidden}.home-transmission-track{display:flex;width:400%;transform:translateX(0);transition:transform .55s cubic-bezier(.2,.8,.2,1);will-change:transform}.home-transmission-slide{width:25%;flex:0 0 25%;display:grid;grid-template-columns:180px 1fr;min-height:156px;opacity:.18;transform:scale(.985);transition:opacity .4s ease,transform .4s ease;pointer-events:none}.home-transmission-slide.is-active{opacity:1;transform:scale(1);pointer-events:auto}.home-transmission-art{position:relative;min-height:156px;overflow:hidden;background:#03050a;border-right:1px solid rgba(238,246,255,.08)}.home-transmission-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.83) contrast(1.08) brightness(.62);transform:scale(1.015);transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .4s ease}.home-transmission-slide.is-active .home-transmission-art img{transform:scale(1.04);filter:saturate(.96) contrast(1.09) brightness(.71)}.home-transmission-art::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(201,151,255,.08),transparent 42%),linear-gradient(180deg,rgba(0,0,0,.04),rgba(1,3,8,.64));pointer-events:none}.home-transmission-art-tag{position:absolute;left:9px;bottom:9px;z-index:2;padding:5px 7px;border:1px solid rgba(255,255,255,.15);background:rgba(1,3,8,.60);font-size:5px;letter-spacing:.19em;color:rgba(238,246,255,.7);backdrop-filter:blur(6px)}
.home-transmission-art-dragon{display:grid;place-items:center;background:radial-gradient(circle at 50% 42%,rgba(201,151,255,.18),transparent 34%),radial-gradient(circle at 80% 70%,rgba(83,213,255,.10),transparent 34%),linear-gradient(145deg,#0a0711,#03060d 65%,#080711)}.home-transmission-art-dragon::before{content:"";position:absolute;inset:16px;border:1px solid rgba(201,151,255,.18);background:repeating-linear-gradient(120deg,transparent 0 18px,rgba(201,151,255,.035) 19px 20px);transform:skewX(-7deg)}.dragon-mark{position:relative;z-index:1;display:grid;place-items:center;text-align:center;gap:7px;color:#f5f7ff}.dragon-mark span{font-size:19px;font-weight:900;letter-spacing:.10em;color:#c997ff;text-shadow:0 0 16px rgba(201,151,255,.65)}.dragon-mark b{font-size:10px;font-weight:400;letter-spacing:.18em;color:rgba(238,246,255,.45)}.dragon-mark strong{font-size:9px;line-height:1.15;letter-spacing:.22em;font-weight:800}.dragon-mark::after{content:"LIMITED COLLABORATION";margin-top:3px;font-size:4px;letter-spacing:.24em;color:rgba(238,246,255,.34)}
.home-transmission-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:18px 24px 17px;gap:6px}.home-transmission-copy small{font-size:5px;letter-spacing:.23em;color:#c997ff}.home-transmission-copy h2{margin:0;font-size:clamp(22px,3vw,34px);line-height:.88;letter-spacing:-.045em}.home-transmission-copy h2 em{font-style:normal;color:#c997ff}.home-transmission-copy p{max-width:560px;margin:3px 0 0;font-size:7px;line-height:1.55;letter-spacing:.06em;color:rgba(238,246,255,.52)}.home-transmission-meta{display:flex;align-items:center;gap:11px;margin-top:2px;font-size:5px;letter-spacing:.18em;color:rgba(238,246,255,.28)}.home-transmission-meta b{font-size:5px;font-weight:500;color:rgba(238,246,255,.58)}.home-transmission-action{margin-top:3px;padding:8px 12px;border:1px solid rgba(201,151,255,.32);background:rgba(201,151,255,.045);color:#eef6ff;cursor:pointer;font:inherit;font-size:6px;letter-spacing:.18em;transition:border-color .2s,background .2s,transform .2s,color .2s}.home-transmission-action span{color:#c997ff;margin-left:7px}.home-transmission-action:hover,.home-transmission-action:focus-visible{border-color:rgba(201,151,255,.76);background:rgba(201,151,255,.10);color:#fff;transform:translateY(-1px);outline:none}
.home-transmissions-footer{position:relative;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:7px 13px;border-top:1px solid rgba(238,246,255,.07);font-size:4.5px;letter-spacing:.21em;color:rgba(238,246,255,.24)}.home-transmission-dots{display:flex;align-items:center;gap:5px}.home-transmission-dot{width:4px;height:4px;border-radius:50%;border:1px solid rgba(201,151,255,.4);background:transparent;padding:0;cursor:pointer}.home-transmission-dot.is-active{background:#c997ff;box-shadow:0 0 7px rgba(201,151,255,.7)}
@media(max-width:820px){.home-transmissions{width:min(94vw,620px);margin-top:0}.home-transmission-slide{grid-template-columns:120px 1fr;min-height:138px}.home-transmission-art{min-height:138px}.home-transmission-copy{padding:15px 15px 14px}.home-transmission-copy p{font-size:6px}.home-transmission-copy h2{font-size:22px}.home-transmission-meta{gap:8px}.home-transmission-action{font-size:5px;padding:7px 9px}.home-transmissions-topline{padding:8px 10px}.home-transmissions-footer{padding:6px 10px}}
@media(max-width:520px){.home-transmission-slide{grid-template-columns:100px 1fr;min-height:126px}.home-transmission-art{min-height:126px}.home-transmission-copy{padding:12px 12px 11px;gap:5px}.home-transmission-copy small{font-size:4px}.home-transmission-copy h2{font-size:19px}.home-transmission-copy p{font-size:5px;line-height:1.45}.home-transmission-meta{display:none}.home-transmission-art-tag{left:6px;bottom:6px;padding:4px 5px;font-size:4px}.home-transmission-action{margin-top:2px;padding:6px 8px;font-size:4.5px}.home-transmissions-footer>span:last-child{font-size:4px}.home-transmissions-readout{gap:4px}.home-transmission-nav{width:20px;height:19px}}

/* V24.8.24 â€” ARCADE HEADER + REDACTED LOCKED TITLES
   Keep the arcade page visually isolated from the global site nav. The arcade
   header becomes the only navigation chrome while the two future machines
   remain deliberately unidentified. */
body.pnt-arcade-page #topbar,
body.pnt-arcade-page .topbar{display:none !important;}
body.pnt-arcade-page .arcade-topbar{
  position:relative;
  min-height:58px;
  padding:0 2px;
  border-bottom:1px solid rgba(255,255,255,.12);
}
body.pnt-arcade-page .arcade-nav{
  position:relative;
  z-index:3;
  flex:0 0 auto;
}
body.pnt-arcade-page .arcade-brand{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  z-index:2;
  justify-content:center;
  margin:0;
}
body.pnt-arcade-page .arcade-brand span{
  font-size:25px;
  letter-spacing:.08em;
}
body.pnt-arcade-page .arcade-status{
  margin-left:auto;
}
.arcade-redacted-title{
  color:rgba(255,255,255,.9) !important;
  letter-spacing:.08em !important;
  font-size:clamp(24px,3vw,38px) !important;
  line-height:.82 !important;
  filter:blur(.2px);
  text-shadow:0 0 16px rgba(213,183,255,.08);
}
@media (max-width:560px){
  body.pnt-arcade-page .arcade-topbar{min-height:48px;padding-bottom:9px;}
  body.pnt-arcade-page .arcade-brand{position:absolute;}
  body.pnt-arcade-page .arcade-brand span{font-size:19px;}
  body.pnt-arcade-page .arcade-nav{padding:8px 9px;font-size:8px;}
  body.pnt-arcade-page .arcade-status{display:none;}
  .arcade-redacted-title{font-size:24px !important;}
}

/* V24.8.22 â€” homepage transmissions refinement */
.home-transmissions {
  width: min(760px, 82vw);
  margin: 14px auto 18px;
}

.home-transmission-slide {
  grid-template-columns: 135px 1fr;
  min-height: 112px;
}

.home-transmission-art {
  min-height: 112px;
}

.home-transmission-copy {
  padding: 13px 18px 12px;
  gap: 4px;
}

.home-transmission-copy h2 {
  font-size: clamp(19px, 2.4vw, 28px);
}

.home-transmission-copy p {
  max-width: 460px;
  font-size: 6px;
}

.home-transmission-meta {
  gap: 8px;
  margin-top: 1px;
}

.home-transmission-action {
  margin-top: 1px;
  padding: 6px 9px;
  font-size: 5px;
}

.home-transmissions-topline {
  padding: 7px 11px;
}

.home-transmissions-footer {
  padding: 5px 11px;
}

@media (max-width: 820px) {
  .home-transmissions {
    width: min(92vw, 620px);
  }

  .home-transmission-slide {
    grid-template-columns: 105px 1fr;
    min-height: 104px;
  }

  .home-transmission-art {
    min-height: 104px;
  }
}

@media (max-width: 520px) {
  .home-transmissions {
    width: 92vw;
    margin-top: 10px;
    margin-bottom: 14px;
  }

  .home-transmission-slide {
    grid-template-columns: 88px 1fr;
    min-height: 96px;
  }

  .home-transmission-art {
    min-height: 96px;
  }

  .home-transmission-copy {
    padding: 10px 11px 9px;
  }

  .home-transmission-copy h2 {
    font-size: 18px;
  }
}

/* V24.8.23 â€” compact homepage transmissions */
.home-transmissions {
  width: min(600px, 68vw);
  margin: 8px auto 10px;
}

.home-transmission-slide {
  grid-template-columns: 100px 1fr;
  min-height: 88px;
}

.home-transmission-art {
  min-height: 88px;
}

.home-transmission-copy {
  padding: 9px 14px 8px;
  gap: 3px;
}

.home-transmission-copy h2 {
  font-size: clamp(17px, 2vw, 23px);
  line-height: .9;
}

.home-transmission-copy p {
  max-width: 390px;
  font-size: 5px;
  line-height: 1.35;
}

.home-transmission-meta {
  gap: 6px;
  margin-top: 0;
}

.home-transmission-action {
  margin-top: 0;
  padding: 5px 8px;
  font-size: 4.5px;
}

.home-transmissions-topline {
  padding: 5px 9px;
}

.home-transmissions-footer {
  padding: 4px 9px;
}

@media (max-width: 820px) {
  .home-transmissions {
    width: min(88vw, 520px);
  }

  .home-transmission-slide {
    grid-template-columns: 82px 1fr;
    min-height: 82px;
  }

  .home-transmission-art {
    min-height: 82px;
  }
}

@media (max-width: 520px) {
  .home-transmissions {
    width: 90vw;
    margin-top: 6px;
    margin-bottom: 8px;
  }

  .home-transmission-slide {
    grid-template-columns: 70px 1fr;
    min-height: 78px;
  }

  .home-transmission-art {
    min-height: 78px;
  }

  .home-transmission-copy {
    padding: 7px 9px 6px;
  }

  .home-transmission-copy h2 {
    font-size: 16px;
  }

  .home-transmission-copy p {
    font-size: 4.5px;
  }
}

/* V24.8.24 â€” transmissions become a floating HUD */
@media (min-width: 821px) {
  .home-content {
    position: relative;
  }

  .home-transmissions {
    position: absolute;
    top: 165px;
    left: 50%;
    transform: translateX(-50%);
    width: min(600px, 68vw);
    margin: 0;
    z-index: 5;
  }

  .portal-grid {
    margin-top: 150px;
  }
}

@media (max-width: 820px) {
  .home-transmissions {
    position: relative;
    width: min(88vw, 520px);
    margin: 8px auto 10px;
  }
}


/* V24.8.25 â€” transmission HUD final compact form */
@media (min-width: 821px) {
  .home-transmissions {
    top: 190px;
    width: min(600px, 68vw);
    height: 108px;
    overflow: hidden;
  }

  .home-transmission-slide {
    grid-template-columns: 78px 1fr;
    height: 76px;
    min-height: 76px;
    overflow: hidden;
  }

  .home-transmission-art {
    min-height: 76px;
    height: 76px;
  }

  .home-transmission-copy {
    padding: 7px 12px 6px;
    gap: 2px;
    overflow: hidden;
  }

  .home-transmission-copy h2 {
    font-size: 19px;
    line-height: .88;
  }

  .home-transmission-copy p {
    max-width: 360px;
    font-size: 4.5px;
    line-height: 1.2;
    margin: 0;
  }

  .home-transmission-meta {
    gap: 5px;
    margin: 0;
  }

  .home-transmission-action {
    padding: 4px 7px;
    font-size: 4px;
  }

  .home-transmissions-topline {
    height: 26px;
    box-sizing: border-box;
    padding: 5px 9px;
  }

  .home-transmissions-footer {
    height: 6px;
    box-sizing: border-box;
    padding: 2px 9px;
  }
}


/* V24.8.26 â€” centre transmission HUD */
@media (min-width: 821px) {
  .home-transmissions {
    top: 233px;
    width: min(540px, 62vw);
  }
}


/* V24.8.27 â€” expandable transmission HUD */

/* collapsed state */
.home-transmissions {
  cursor: default;
  transition:
    width .35s cubic-bezier(.2,.8,.2,1),
    height .35s cubic-bezier(.2,.8,.2,1),
    transform .35s cubic-bezier(.2,.8,.2,1),
    box-shadow .35s ease;
}

.home-transmission-slide.is-active {
  cursor: zoom-in;
}

.home-transmission-slide.is-active:hover {
  filter: brightness(1.04);
}

/* expanded state */
.home-transmissions.is-expanded {
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  width: min(760px, 84vw) !important;
  height: 300px !important;
  margin: 0 !important;
  transform: translate(-50%, -50%) !important;
  z-index: 1000 !important;
  box-shadow:
    0 30px 100px rgba(0,0,0,.6),
    0 0 0 100vmax rgba(1,3,8,.76),
    0 0 60px rgba(121,67,178,.18);
}

.home-transmissions.is-expanded .home-transmission-slide {
  grid-template-columns: 190px 1fr;
  min-height: 236px;
  height: 236px;
  cursor: default;
}

.home-transmissions.is-expanded .home-transmission-art {
  min-height: 236px;
  height: 236px;
}

.home-transmissions.is-expanded .home-transmission-copy {
  padding: 18px 24px 16px;
  gap: 7px;
}

.home-transmissions.is-expanded .home-transmission-copy h2 {
  font-size: clamp(28px, 4vw, 46px);
  line-height: .88;
}

.home-transmissions.is-expanded .home-transmission-copy p {
  max-width: 480px;
  font-size: 7px;
  line-height: 1.5;
}

.home-transmissions.is-expanded .home-transmission-meta {
  gap: 10px;
  margin-top: 3px;
}

.home-transmissions.is-expanded .home-transmission-action {
  padding: 8px 12px;
  font-size: 5.5px;
}

.home-transmissions.is-expanded .home-transmission-art-tag {
  left: 12px;
  bottom: 12px;
}

.home-transmission-close {
  width: 22px;
  height: 20px;
  margin-left: 2px;
  border: 1px solid rgba(238,246,255,.12);
  background: rgba(255,255,255,.025);
  color: rgba(238,246,255,.72);
  cursor: pointer;
  font: inherit;
  font-size: 15px;
  line-height: 1;
  display: none;
  place-items: center;
  transition: border-color .2s, background .2s, color .2s;
}

.home-transmissions.is-expanded .home-transmission-close {
  display: grid;
}

.home-transmission-close:hover,
.home-transmission-close:focus-visible {
  border-color: rgba(201,151,255,.55);
  background: rgba(201,151,255,.08);
  color: #fff;
  outline: none;
}

@media (max-width: 820px) {
  .home-transmissions.is-expanded {
    width: 92vw !important;
    height: 290px !important;
  }

  .home-transmissions.is-expanded .home-transmission-slide {
    grid-template-columns: 150px 1fr;
    min-height: 226px;
    height: 226px;
  }

  .home-transmissions.is-expanded .home-transmission-art {
    min-height: 226px;
    height: 226px;
  }
}

@media (max-width: 520px) {
  .home-transmissions.is-expanded {
    width: 94vw !important;
    height: 270px !important;
  }

  .home-transmissions.is-expanded .home-transmission-slide {
    grid-template-columns: 105px 1fr;
    min-height: 206px;
    height: 206px;
  }

  .home-transmissions.is-expanded .home-transmission-art {
    min-height: 206px;
    height: 206px;
  }

  .home-transmissions.is-expanded .home-transmission-copy {
    padding: 12px 13px 11px;
  }

  .home-transmissions.is-expanded .home-transmission-copy h2 {
    font-size: 25px;
  }

  .home-transmissions.is-expanded .home-transmission-copy p {
    font-size: 5.5px;
  }
}


/* V24.8.25 — HOME PORTALS / LOWER-THIRD COPY LOCK */

.portal-card {
  position: relative;
}

.portal-copy {
  position: absolute !important;
  left: 50% !important;
  right: auto !important;
  top: auto !important;
  bottom: 16% !important;
  width: 82% !important;
  margin: 0 !important;
  transform: translateX(-50%) !important;
  z-index: 8 !important;
  text-align: center !important;
  pointer-events: none !important;
}

.portal-index,
.portal-label,
.portal-sub,
.portal-arrow {
  position: static !important;
  transform: none !important;
}

.portal-label {
  display: block !important;
  white-space: nowrap !important;
}

.portal-sub {
  display: block !important;
}

.portal-arrow {
  display: block !important;
}

@media (max-width: 820px) {
  .portal-copy {
    position: absolute !important;
    left: 50% !important;
    top: auto !important;
    bottom: 15% !important;
    width: 82% !important;
    margin: 0 !important;
    transform: translateX(-50%) !important;
  }

  .portal-label {
    font-size: 14px !important;
  }
}

@media (max-width: 480px) {
  .portal-copy {
    bottom: 14% !important;
    width: 86% !important;
  }
}

/* Keep mobile reading order: portals first, transmissions underneath. */
@media (max-width: 820px) {
  .home-content {
    display: flex !important;
    flex-direction: column !important;
  }

  .home-heading {
    order: 1 !important;
  }

  .portal-grid {
    order: 2 !important;
  }

  .home-transmissions {
    order: 3 !important;
  }

  .transmission-node {
    order: 3 !important;
  }

  .home-footer {
    order: 4 !important;
  }
}


/* PT_TRANSMISSIONS_LIVE_FIX_V2_START */

/* DESKTOP */
.home-transmissions:not(.is-expanded) {
  width: min(620px, 70vw) !important;
  top: 215px !important;
  height: 176px !important;
  overflow: hidden !important;
}

.home-transmissions:not(.is-expanded) .home-transmission-slide {
  grid-template-columns: 180px 1fr !important;
  height: 145px !important;
  min-height: 145px !important;
  overflow: hidden !important;
}

.home-transmissions:not(.is-expanded) .home-transmission-art {
  width: 180px !important;
  height: 145px !important;
  min-height: 145px !important;
  overflow: hidden !important;
}

.home-transmissions:not(.is-expanded) .home-transmission-art img {
  width: 100% !important;
  height: 145px !important;
  min-height: 145px !important;
  object-fit: cover !important;
}

.home-transmissions:not(.is-expanded) .home-transmission-copy {
  padding: 14px 20px 13px !important;
  gap: 6px !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.home-transmissions:not(.is-expanded) .home-transmission-copy small {
  font-size: 8px !important;
  line-height: 1.2 !important;
  letter-spacing: .18em !important;
}

.home-transmissions:not(.is-expanded) .home-transmission-copy h2 {
  font-size: 30px !important;
  line-height: .9 !important;
  letter-spacing: -.04em !important;
}

.home-transmissions:not(.is-expanded) .home-transmission-copy p {
  max-width: 420px !important;
  margin: 2px 0 0 !important;
  font-size: 9px !important;
  line-height: 1.45 !important;
  letter-spacing: .04em !important;
}

.home-transmissions:not(.is-expanded) .home-transmission-meta {
  gap: 10px !important;
  margin-top: 2px !important;
  font-size: 7px !important;
}

.home-transmissions:not(.is-expanded) .home-transmission-meta b {
  font-size: 7px !important;
}

.home-transmissions:not(.is-expanded) .home-transmission-action {
  margin-top: 3px !important;
  padding: 8px 11px !important;
  font-size: 7px !important;
  letter-spacing: .15em !important;
}

.home-transmissions:not(.is-expanded) .home-transmissions-topline {
  height: 31px !important;
  padding: 7px 12px !important;
  box-sizing: border-box !important;
  font-size: 7px !important;
}

.home-transmissions:not(.is-expanded) .home-transmissions-footer {
  height: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* TABLET */
@media (max-width: 820px) {
  .home-transmissions:not(.is-expanded) {
    width: 92vw !important;
    height: 178px !important;
  }

  .home-transmissions:not(.is-expanded) .home-transmission-slide {
    grid-template-columns: 150px 1fr !important;
    height: 147px !important;
    min-height: 147px !important;
  }

  .home-transmissions:not(.is-expanded) .home-transmission-art {
    width: 150px !important;
    height: 147px !important;
    min-height: 147px !important;
  }

  .home-transmissions:not(.is-expanded) .home-transmission-art img {
    height: 147px !important;
  }

  .home-transmissions:not(.is-expanded) .home-transmission-copy {
    padding: 13px 16px 12px !important;
  }

  .home-transmissions:not(.is-expanded) .home-transmission-copy h2 {
    font-size: 26px !important;
  }

  .home-transmissions:not(.is-expanded) .home-transmission-copy p {
    font-size: 8px !important;
  }
}

/* MOBILE */
@media (max-width: 520px) {
  .home-transmissions:not(.is-expanded) {
    width: 94vw !important;
    height: 184px !important;
  }

  .home-transmissions:not(.is-expanded) .home-transmission-slide {
    grid-template-columns: 125px 1fr !important;
    height: 153px !important;
    min-height: 153px !important;
  }

  .home-transmissions:not(.is-expanded) .home-transmission-art {
    width: 125px !important;
    height: 153px !important;
    min-height: 153px !important;
  }

  .home-transmissions:not(.is-expanded) .home-transmission-art img {
    height: 153px !important;
  }

  .home-transmissions:not(.is-expanded) .home-transmission-copy {
    padding: 12px 13px 11px !important;
    gap: 5px !important;
  }

  .home-transmissions:not(.is-expanded) .home-transmission-copy small {
    font-size: 6px !important;
  }

  .home-transmissions:not(.is-expanded) .home-transmission-copy h2 {
    font-size: 23px !important;
  }

  .home-transmissions:not(.is-expanded) .home-transmission-copy p {
    font-size: 7px !important;
    line-height: 1.4 !important;
  }
}

/* PT_TRANSMISSIONS_LIVE_FIX_V2_END */

.portal-card{--tilt:0deg !important;}
.portal-card:nth-child(1),.portal-card:nth-child(2),.portal-card:nth-child(3){--tilt:0deg !important;}

/* P&T SIGNAL RADAR - reveal node labels only when selected */
.world-signals-archive .radar-node .radar-node-label { opacity:0 !important; visibility:hidden !important; transform:translateY(6px) !important; pointer-events:none !important; }
.world-signals-archive .radar-node.is-active .radar-node-label { opacity:1 !important; visibility:visible !important; transform:translateY(0) !important; }

.store-collab-brand{display:flex;align-items:center;gap:14px;margin:0 0 16px;min-height:54px;}
.store-collab-brand span{font-size:8px;letter-spacing:.22em;color:rgba(238,246,255,.68);white-space:nowrap;}
.store-collab-brand b{font-size:18px;font-weight:400;color:rgba(238,246,255,.28);}
.store-collab-brand img{display:block;width:auto;max-width:min(260px,42vw);max-height:58px;object-fit:contain;background:#000;}

/* P&T Ã— DRAGON STREETWEAR â€” COLLAB PASS */
.store-kicker{color:#d9ff00;}
.store-collab-brand{gap:18px;margin:0 0 20px;min-height:72px;}
.store-collab-brand span{color:rgba(238,246,255,.72);}
.store-collab-brand b{font-size:22px;color:#d9ff00;text-shadow:0 0 12px rgba(217,255,0,.35);}
.store-collab-brand img{max-width:340px;max-height:72px;}
.store-toolbar-label b{background:linear-gradient(90deg,#d9ff00,#c997ff);}
@media (max-width:620px){.store-collab-brand{gap:11px;margin-bottom:15px;min-height:54px;}.store-collab-brand b{font-size:16px;}.store-collab-brand img{max-width:205px;max-height:52px;}}

.store-collab-brand img{mix-blend-mode:screen;}

.store-collab-brand img{mix-blend-mode:screen;}

.store-collab-brand img{background:transparent;mix-blend-mode:normal;}

.store-collab-brand .store-pnt-logo{width:145px;max-width:145px;height:auto;max-height:none;object-fit:contain;background:transparent;mix-blend-mode:normal;}
.store-collab-brand .store-dragon-logo{width:185px;max-width:185px;height:auto;max-height:none;object-fit:contain;background:transparent;mix-blend-mode:normal;}
@media (max-width:620px){.store-collab-brand .store-pnt-logo{width:105px;max-width:105px;}.store-collab-brand .store-dragon-logo{width:145px;max-width:145px;}}

/* STORE â€” COLLECTION 001 EDITORIAL MARKER */
.store-collection-intro{padding:18px 0 20px;border-bottom:1px solid rgba(238,246,255,.10);}
.store-collection-meta{display:flex;align-items:center;gap:12px;margin:0 0 9px;}
.store-collection-meta:after{content:\"\";width:38px;height:1px;background:linear-gradient(90deg,#d9ff00,#c997ff);}
.store-collection-meta b{font-size:6px;font-weight:500;letter-spacing:.28em;color:#d9ff00;}
.store-collection-intro h2{margin:0;font-size:clamp(17px,2.2vw,25px);font-weight:500;letter-spacing:.08em;color:rgba(238,246,255,.88);}
.store-collection-intro p{margin:8px 0 0;font-size:6px;letter-spacing:.20em;color:rgba(238,246,255,.34);}
@media (max-width:620px){.store-collection-intro{padding:14px 0 17px;}.store-collection-intro h2{font-size:16px;}.store-collection-intro p{font-size:5px;letter-spacing:.16em;}}

/* STORE â€” COLLECTION 001 PRODUCT CARD PASS */
.store-card{border-color:rgba(238,246,255,.10);background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,.008));}
.store-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#d9ff00 0%,#c997ff 100%);}
/* STORE â€” COLLECTION 001 CARD IDENTITY */
.store-card{
  border-color:rgba(238,246,255,.16);
  background:linear-gradient(150deg,rgba(255,255,255,.065),rgba(9,10,18,.92) 42%,rgba(4,5,11,.98));
}

.store-card::before{
  height:3px;
  background:linear-gradient(90deg,#d9ff00 0%,#d9ff00 30%,#c997ff 100%);
  opacity:1;
}

.store-card::after{
  content:"001";
  position:absolute;
  top:10px;
  right:11px;
  z-index:4;
  font-size:5px;
  letter-spacing:.24em;
  color:#d9ff00;
  padding:5px 6px;
  border:1px solid rgba(217,255,0,.28);
  background:rgba(4,5,11,.72);
  backdrop-filter:blur(6px);
}

.store-card:hover{
  border-color:rgba(217,255,0,.48);
  box-shadow:0 20px 42px rgba(0,0,0,.45),0 0 32px rgba(217,255,0,.10);
}

.store-card-media{
  background:
    radial-gradient(circle at 30% 25%,rgba(217,255,0,.09),transparent 30%),
    radial-gradient(circle at 75% 80%,rgba(201,151,255,.10),transparent 35%),
    linear-gradient(145deg,#11151c,#05060b 72%);
}

.store-card-media::after{
  content:"";
  position:absolute;
  inset:8px;
  border:1px solid rgba(217,255,0,.16);
  pointer-events:none;
  z-index:2;
}

.store-card:hover .store-card-media::after{
  border-color:rgba(217,255,0,.34);
}

.store-card-media img{
  filter:saturate(.94) contrast(1.05) brightness(.84);
}

.store-card:hover .store-card-media img{
  filter:saturate(1.04) contrast(1.07) brightness(.92);
}

.store-card-kicker{
  color:rgba(217,255,0,.55);
}

.store-card-title{
  color:rgba(238,246,255,.94);
}

.store-card-price{
  color:#fff;
}

/* PLACES â€” DON'T FALL FOR ME / remove boxed copy treatment */
#sunsetExperience .sunset-copy{
  padding:0 !important;
  background:transparent !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  border-left:0 !important;
  max-width:600px !important;
  text-shadow:0 4px 28px rgba(0,0,0,.78) !important;
}

#sunsetExperience .sunset-copy h2{
  text-shadow:0 5px 30px rgba(0,0,0,.82) !important;
}

#sunsetExperience .sunset-copy .place-description{
  text-shadow:0 3px 18px rgba(0,0,0,.82) !important;
}

/* PLACES FINAL â€” cinematic copy, no boxed overlays */
#underpassExperience .underpass-copy,
#sunsetExperience .sunset-copy{
  padding:0 !important;
  background:none !important;
  background-image:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  border-left:0 !important;
  box-shadow:none !important;
  max-width:620px !important;
  text-shadow:0 4px 28px rgba(0,0,0,.82) !important;
}

#underpassExperience .underpass-copy .place-description,
#sunsetExperience .sunset-copy .place-description{
  text-shadow:0 3px 18px rgba(0,0,0,.88) !important;
}

#underpassExperience .underpass-copy h2,
#sunsetExperience .sunset-copy h2{
  text-shadow:0 5px 30px rgba(0,0,0,.86) !important;
}

/* Keep the cursor spotlight above every Places layer */
.site.menu-open .cursor-glow{
  z-index:9999 !important;
  opacity:.78 !important;
}


/* PLACES FINAL â€” remove cinematic copy boxes completely */
#underpassExperience .underpass-copy,
#sunsetExperience .sunset-copy{
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  background-image:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  border:0 !important;
  border-left:0 !important;
  box-shadow:none !important;
  clip-path:none !important;
  -webkit-mask:none !important;
  max-width:620px !important;
}

#underpassExperience .underpass-copy *,
#sunsetExperience .sunset-copy *{
  background:transparent !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}


/* PLACES â€” final visual cleanup */
#underpassExperience::after,
#sunsetExperience::after {
  display: none !important;
}

#underpassExperience .underpass-copy,
#sunsetExperience .sunset-copy,
#nightExperience .night-copy {
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  background-image: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

.site .cursor-glow {
  z-index: 99999 !important;
  pointer-events: none !important;
  opacity: .8 !important;
}

/* STORE - mobile overflow cleanup */
@media (max-width:620px){
  .panel.store-mode{overflow-x:hidden;overflow-y:auto;}
  .panel.store-mode .panel-inner{width:94vw;max-width:94vw;min-width:0;box-sizing:border-box;}
  .store-view,.store-head,.store-toolbar,.store-grid,.store-foot{min-width:0;max-width:100%;}
  .store-toolbar{flex-wrap:wrap;}
  .store-toolbar-label{min-width:0;max-width:100%;}
  .store-toolbar-actions{max-width:100%;}
}

/* STORE - prevent mobile backdrop overflow */
.panel.store-mode .panel-backdrop{
  transform:none !important;
}
/* V24.8.42 - MOBILE NAV + WALLPAPER MODAL CONTAINMENT */
@media (max-width:620px){
  .topbar{
    flex-wrap:wrap !important;
    align-items:flex-start !important;
    padding:12px 16px 10px !important;
    row-gap:4px !important;
  }

  .brand-mini{
    flex:0 0 100% !important;
    text-align:center !important;
    margin:0 !important;
  }

  .nav-links{
    width:100% !important;
    justify-content:center !important;
    flex-wrap:wrap !important;
    gap:4px 12px !important;
    margin-top:4px !important;
  }

  .nav-links button{
    padding:6px 0 !important;
    font-size:7px !important;
    letter-spacing:.12em !important;
  }

  .wallpaper-preview-modal,
  .wallpaper-purchase-modal,
  .wallpaper-download-modal{
    padding:16px !important;
    box-sizing:border-box !important;
    overflow-x:hidden !important;
  }

  .wallpaper-preview-card,
  .wallpaper-purchase-card,
  .wallpaper-download-card{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }
}


/* V24.8.44 - STORE MOBILE BACKDROP WIDTH FIX */
@media (max-width:620px){.panel.store-mode .panel-backdrop{left:0 !important;right:0 !important;width:100% !important;max-width:100% !important;transform:none !important;box-sizing:border-box !important;}}

/* V24.8.45 - FORCE STORE MOBILE BACKDROP CONTAINMENT */
@media (max-width:620px){#panel.store-mode.open .panel-backdrop{transform:none !important;left:0 !important;top:0 !important;right:0 !important;bottom:0 !important;width:100% !important;height:100% !important;}}

/* V24.8.47 - LOCK MOBILE STORE PAGE MOVEMENT */
@media (max-width:620px){html:has(#panel.store-mode.open),body:has(#panel.store-mode.open){overflow:hidden !important;}#panel.store-mode.open{overflow-x:hidden !important;overflow-y:auto !important;overscroll-behavior:contain !important;touch-action:pan-y !important;}}

/* V24.8.50 - LOCK MOBILE STORE HORIZONTAL SCROLL */
@media (max-width:620px){
  #panel.store-mode.open{
    overflow-x:hidden !important;
  }
}





/* LORE ? FINAL CLEAN LAYOUT */

.world-lore-archive .signal-shell{
  display:block !important;
  width:min(1380px,90vw) !important;
  height:100% !important;
  min-height:100% !important;
  margin:0 auto !important;
  padding:112px 0 42px !important;
  box-sizing:border-box !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
}

.world-lore-archive .lore-grid{
  display:grid !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  margin:34px 0 22px !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  grid-template-rows:repeat(2,150px) !important;
  gap:12px !important;
}

.world-lore-archive .lore-grid .lore-card{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
  height:150px !important;
  min-height:150px !important;
  box-sizing:border-box !important;
  padding:20px !important;
  overflow:hidden !important;
}

.world-lore-archive .lore-grid .lore-card span{
  flex:0 0 auto !important;
  margin:0 !important;
}

.world-lore-archive .lore-grid .lore-card strong{
  flex:1 1 auto !important;
  display:flex !important;
  align-items:center !important;
  margin:0 !important;
  padding:8px 0 18px !important;
  max-width:100% !important;
  font-size:clamp(25px,2.25vw,34px) !important;
  line-height:.88 !important;
  letter-spacing:-.04em !important;
  white-space:normal !important;
}

.world-lore-archive .lore-grid .lore-card em{
  position:absolute !important;
  left:20px !important;
  bottom:16px !important;
  right:38px !important;
  max-width:none !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

.world-lore-archive .lore-people-block{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:18px 0 30px !important;
  padding:26px 0 0 !important;
  box-sizing:border-box !important;
  border-top:1px solid rgba(238,246,255,.10) !important;
}

.world-lore-archive .lore-section-head{
  display:flex !important;
  width:100% !important;
  justify-content:space-between !important;
  align-items:flex-end !important;
  gap:32px !important;
  margin:0 0 18px !important;
}

.world-lore-archive .lore-section-head h3{
  margin:0 !important;
  font-size:clamp(28px,3.4vw,48px) !important;
  line-height:.9 !important;
  letter-spacing:-.05em !important;
}

.world-lore-archive .lore-section-head h3 em{
  font-style:normal !important;
  color:#c45cff !important;
}

.world-lore-archive .lore-section-head>p{
  max-width:430px !important;
  margin:0 0 2px !important;
  font-size:9px !important;
  line-height:1.6 !important;
  color:rgba(238,246,255,.42) !important;
}

.world-lore-archive .lore-people-grid{
  display:grid !important;
  width:100% !important;
  max-width:none !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:10px !important;
  margin:0 !important;
}

.world-lore-archive .lore-person-card{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
  height:150px !important;
  min-height:150px !important;
  min-width:0 !important;
  box-sizing:border-box !important;
  margin:0 !important;
  padding:16px 17px 30px !important;
  overflow:hidden !important;
  appearance:none !important;
  -webkit-appearance:none !important;
  border:1px solid rgba(238,246,255,.12) !important;
  border-radius:0 !important;
  background:linear-gradient(140deg,rgba(10,14,22,.78),rgba(4,6,12,.94)) !important;
  color:#fff !important;
  text-align:left !important;
  font:inherit !important;
  cursor:pointer !important;
}

.world-lore-archive .lore-person-card strong{
  flex:1 1 auto !important;
  display:flex !important;
  align-items:center !important;
  margin:0 !important;
  padding:8px 0 10px !important;
  width:100% !important;
  font-size:clamp(23px,2.3vw,34px) !important;
  line-height:.9 !important;
  letter-spacing:-.04em !important;
  white-space:nowrap !important;
}

.world-lore-archive .lore-person-card em{
  position:absolute !important;
  left:17px !important;
  right:30px !important;
  bottom:12px !important;
  margin:0 !important;
  font-style:normal !important;
  font-size:6px !important;
  line-height:1.2 !important;
  letter-spacing:.18em !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  color:rgba(238,246,255,.38) !important;
}

.world-lore-archive .lore-person-card i{
  position:absolute !important;
  right:15px !important;
  bottom:10px !important;
  margin:0 !important;
  font-style:normal !important;
  font-size:8px !important;
  color:#c45cff !important;
}

.world-lore-archive .lore-person-confirmed{
  border-color:rgba(196,92,255,.30) !important;
}

@media(max-width:900px){
  .world-lore-archive .signal-shell{
    width:92vw !important;
    padding-top:98px !important;
  }

  .world-lore-archive .lore-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-template-rows:repeat(3,110px) !important;
    gap:9px !important;
    margin-top:24px !important;
  }

  .world-lore-archive .lore-grid .lore-card{
    height:110px !important;
    min-height:110px !important;
    padding:12px !important;
  }

  .world-lore-archive .lore-grid .lore-card strong{
    font-size:21px !important;
    padding:5px 0 14px !important;
  }

  .world-lore-archive .lore-grid .lore-card em{
    left:12px !important;
    bottom:10px !important;
  }

  .world-lore-archive .lore-section-head{
    display:block !important;
  }

  .world-lore-archive .lore-section-head>p{
    max-width:560px !important;
    margin-top:10px !important;
  }

  .world-lore-archive .lore-people-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .world-lore-archive .lore-person-card{
    height:132px !important;
    min-height:132px !important;
  }
}

@media(max-width:640px){
  .world-lore-archive .lore-grid{
    grid-template-rows:repeat(3,96px) !important;
    gap:7px !important;
  }

  .world-lore-archive .lore-grid .lore-card{
    height:96px !important;
    min-height:96px !important;
    padding:12px !important;
  }

  .world-lore-archive .lore-grid .lore-card strong{
    font-size:17px !important;
    padding:3px 0 12px !important;
  }

  .world-lore-archive .lore-grid .lore-card em{
    left:12px !important;
    right:28px !important;
    bottom:9px !important;
    font-size:4px !important;
  }

  .world-lore-archive .lore-people-block{
    padding-top:22px !important;
    margin-bottom:22px !important;
  }

  .world-lore-archive .lore-people-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:7px !important;
  }

  .world-lore-archive .lore-person-card{
    height:120px !important;
    min-height:120px !important;
    padding:13px 13px 27px !important;
  }

  .world-lore-archive .lore-person-card strong{
    font-size:20px !important;
  }

  .world-lore-archive .lore-person-card em{
    left:13px !important;
    right:25px !important;
    bottom:9px !important;
    font-size:5px !important;
  }
}
/* =========================================================
   P&T RELEASE POLISH â€” TRANSMISSIONS FINAL
   ========================================================= */

.home-transmissions {
  width: min(620px, 70vw) !important;
  height: 176px !important;
  overflow: hidden !important;
}

.home-transmission-slide {
  grid-template-columns: 180px 1fr !important;
  height: 145px !important;
  min-height: 145px !important;
  overflow: hidden !important;
}

.home-transmission-art,
.home-transmission-art img {
  width: 100% !important;
  height: 145px !important;
  min-height: 145px !important;
}

.home-transmission-art {
  width: 180px !important;
}

.home-transmission-copy {
  padding: 14px 20px 13px !important;
  gap: 6px !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.home-transmission-copy small {
  font-size: 8px !important;
  line-height: 1.2 !important;
  letter-spacing: .18em !important;
}

.home-transmission-copy h2 {
  font-size: 30px !important;
  line-height: .9 !important;
  letter-spacing: -.04em !important;
}

.home-transmission-copy p {
  max-width: 420px !important;
  margin: 2px 0 0 !important;
  font-size: 9px !important;
  line-height: 1.45 !important;
  letter-spacing: .04em !important;
  color: rgba(238,246,255,.72) !important;
}

.home-transmission-meta {
  gap: 10px !important;
  margin-top: 2px !important;
  font-size: 7px !important;
}

.home-transmission-meta b {
  font-size: 7px !important;
}

.home-transmission-action {
  margin-top: 3px !important;
  padding: 8px 11px !important;
  font-size: 7px !important;
  letter-spacing: .15em !important;
}

.home-transmissions-topline {
  height: 31px !important;
  padding: 7px 12px !important;
  box-sizing: border-box !important;
  font-size: 7px !important;
}

.home-transmissions-footer {
  height: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}


/* TABLET */
@media (max-width: 820px) {
  .home-transmissions {
    width: 92vw !important;
    height: 178px !important;
  }

  .home-transmission-slide {
    grid-template-columns: 150px 1fr !important;
    height: 147px !important;
    min-height: 147px !important;
  }

  .home-transmission-art {
    width: 150px !important;
    height: 147px !important;
    min-height: 147px !important;
  }

  .home-transmission-art img {
    height: 147px !important;
  }

  .home-transmission-copy {
    padding: 13px 16px 12px !important;
  }

  .home-transmission-copy small {
    font-size: 7px !important;
  }

  .home-transmission-copy h2 {
    font-size: 26px !important;
  }

  .home-transmission-copy p {
    font-size: 8px !important;
  }

  .home-transmission-meta {
    font-size: 6px !important;
  }

  .home-transmission-action {
    font-size: 6px !important;
    padding: 7px 9px !important;
  }
}


/* MOBILE */
@media (max-width: 520px) {
  .home-transmissions {
    width: 94vw !important;
    height: 184px !important;
  }

  .home-transmission-slide {
    grid-template-columns: 125px 1fr !important;
    height: 153px !important;
    min-height: 153px !important;
  }

  .home-transmission-art {
    width: 125px !important;
    height: 153px !important;
    min-height: 153px !important;
  }

  .home-transmission-art img {
    height: 153px !important;
  }

  .home-transmission-copy {
    padding: 12px 13px 11px !important;
    gap: 5px !important;
  }

  .home-transmission-copy small {
    font-size: 6px !important;
  }

  .home-transmission-copy h2 {
    font-size: 23px !important;
  }

  .home-transmission-copy p {
    font-size: 7px !important;
    line-height: 1.4 !important;
  }

  .home-transmission-meta {
    display: none !important;
  }

  .home-transmission-action {
    font-size: 5.5px !important;
    padding: 7px 9px !important;
  }

  .home-transmissions-topline {
    height: 31px !important;
  }
}

/* P&T COLLAB LOGO LOCKUP */
.home-transmission-art-dragon .dragon-mark-logos {
  width: calc(100% - 28px) !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  text-align: center !important;
}
.home-transmission-art-dragon .dragon-mark-logos .dragon-collab-logo {
  display: block !important;
  position: relative !important;
  z-index: 2 !important;
  flex: 0 1 auto !important;
  width: auto !important;
  max-width: 38% !important;
  height: auto !important;
  max-height: 45px !important;
  object-fit: contain !important;
  object-position: center !important;
  filter: none !important;
  transform: none !important;
  transition: none !important;
}
.home-transmission-art-dragon .dragon-mark-logos > b {
  display: block !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 1 !important;
  color: rgba(238,246,255,.7) !important;
}
.home-transmission-art-dragon .dragon-mark-logos::after {
  content: none !important;
}
.home-transmission-art-dragon .dragon-mark-logos .dragon-collab-caption {
  flex: 0 0 100% !important;
  margin: 0 !important;
  font-size: 4px !important;
  line-height: 1.4 !important;
  letter-spacing: .2em !important;
  color: rgba(238,246,255,.42) !important;
}
@media (max-width: 520px) {
  .home-transmission-art-dragon .dragon-mark-logos .dragon-collab-logo {
    max-height: 34px !important;
  }
}

/* P&T COLLAB LOGOS — COMPACT BALANCED LOCKUP */
.home-transmission-art.home-transmission-art-dragon
.dragon-mark-logos img.dragon-collab-logo {
  width: 58px !important;
  height: 30px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 58px !important;
  max-height: 30px !important;
  object-fit: contain !important;
  object-position: center !important;
}

.home-transmission-art.home-transmission-art-dragon
.dragon-mark-logos > b {
  font-size: 10px !important;
}

@media (max-width: 520px) {
  .home-transmission-art.home-transmission-art-dragon
  .dragon-mark-logos img.dragon-collab-logo {
    width: 48px !important;
    height: 26px !important;
    max-width: 48px !important;
    max-height: 26px !important;
  }
}
/* P&T COLLAB — definitive compact logo sizing */
.home-transmission-art.home-transmission-art-dragon
.dragon-mark-logos img.dragon-collab-logo {
  width: 48px !important;
  height: 28px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 48px !important;
  max-height: 28px !important;
  object-fit: contain !important;
  object-position: center !important;
  filter: none !important;
  transform: none !important;
}

.home-transmission-art.home-transmission-art-dragon
.dragon-mark-logos > b {
  font-size: 10px !important;
  margin: 0 2px !important;
}


/* P&T COLLAB — BALANCED SIDE-BY-SIDE LOGOS */
.home-transmission-art.home-transmission-art-dragon .dragon-mark-logos {
  width: calc(100% - 16px) !important;
  gap: 2px !important;
  flex-wrap: wrap !important;
}
.home-transmission-art.home-transmission-art-dragon .dragon-mark-logos .dragon-collab-logo {
  width: 70px !important;
  height: 44px !important;
  max-width: 70px !important;
  max-height: 44px !important;
  flex: 0 0 70px !important;
  object-fit: contain !important;
}
/* P&T COLLAB — FINAL THREE-COLUMN LOGO LAYOUT */
.home-transmission-art.home-transmission-art-dragon .dragon-mark.dragon-mark-logos {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
  grid-template-rows: 48px auto !important;
  align-items: center !important;
  justify-items: center !important;
  column-gap: 4px !important;
  row-gap: 4px !important;
  width: calc(100% - 20px) !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.home-transmission-art.home-transmission-art-dragon .dragon-mark.dragon-mark-logos img.dragon-collab-logo:first-of-type {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 70px !important;
  height: 44px !important;
  max-width: 100% !important;
  max-height: 44px !important;
  object-fit: contain !important;
}

.home-transmission-art.home-transmission-art-dragon .dragon-mark.dragon-mark-logos > b {
  grid-column: 2 !important;
  grid-row: 1 !important;
  margin: 0 !important;
  font-size: 11px !important;
}

.home-transmission-art.home-transmission-art-dragon .dragon-mark.dragon-mark-logos img.dragon-collab-logo:nth-of-type(2) {
  grid-column: 3 !important;
  grid-row: 1 !important;
  width: 70px !important;
  height: 44px !important;
  max-width: 100% !important;
  max-height: 44px !important;
  object-fit: contain !important;
}

.home-transmission-art.home-transmission-art-dragon .dragon-mark.dragon-mark-logos .dragon-collab-caption {
  grid-column: 1 / 4 !important;
  grid-row: 2 !important;
  width: 100% !important;
  margin: 0 !important;
  text-align: center !important;
  font-size: 4px !important;
  line-height: 1.4 !important;
  white-space: nowrap !important;
}

.home-transmission-art.home-transmission-art-dragon .dragon-mark.dragon-mark-logos::after {
  content: none !important;
  display: none !important;
}
/* P&T COLLAB — FINAL THREE-COLUMN LOGO LAYOUT */
.home-transmission-art.home-transmission-art-dragon .dragon-mark.dragon-mark-logos {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
  grid-template-rows: 48px auto !important;
  align-items: center !important;
  justify-items: center !important;
  column-gap: 4px !important;
  row-gap: 4px !important;
  width: calc(100% - 20px) !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.home-transmission-art.home-transmission-art-dragon .dragon-mark.dragon-mark-logos img.dragon-collab-logo:first-of-type {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 70px !important;
  height: 44px !important;
  max-width: 100% !important;
  max-height: 44px !important;
  object-fit: contain !important;
}

.home-transmission-art.home-transmission-art-dragon .dragon-mark.dragon-mark-logos > b {
  grid-column: 2 !important;
  grid-row: 1 !important;
  margin: 0 !important;
  font-size: 11px !important;
}

.home-transmission-art.home-transmission-art-dragon .dragon-mark.dragon-mark-logos img.dragon-collab-logo:nth-of-type(2) {
  grid-column: 3 !important;
  grid-row: 1 !important;
  width: 70px !important;
  height: 44px !important;
  max-width: 100% !important;
  max-height: 44px !important;
  object-fit: contain !important;
}

.home-transmission-art.home-transmission-art-dragon .dragon-mark.dragon-mark-logos .dragon-collab-caption {
  grid-column: 1 / 4 !important;
  grid-row: 2 !important;
  width: 100% !important;
  margin: 0 !important;
  text-align: center !important;
  font-size: 4px !important;
  line-height: 1.4 !important;
  white-space: nowrap !important;
}

.home-transmission-art.home-transmission-art-dragon .dragon-mark.dragon-mark-logos::after {
  content: none !important;
  display: none !important;
}

/* V24.8.57 MOBILE HOME/WORLD FIX */
@media (max-width: 820px) {
  .portal-grid { align-items: start !important; gap: 6px !important; padding-bottom: 4px !important; }
  .portal-card { min-height: 0 !important; height: auto !important; align-self: start !important; }
  .home-footer { margin-top: 8px !important; }
  .home-transmissions { position: relative !important; top: auto !important; left: auto !important; right: auto !important; transform: none !important; margin: 10px auto 16px !important; }
  #homeTransmissions.home-transmissions { top: auto !important; }
  .home-content .home-transmissions { order: 2 !important; }
  .home-content .portal-grid { order: 3 !important; }
  .home-content .home-footer { order: 4 !important; }
  .world-orbit { transform: translate(-50%, -50%) rotate(-10deg); }
  .orbit-a { width: min(82vw, 310px) !important; height: min(58vw, 220px) !important; animation: worldSpinA 18s linear infinite !important; }
  .orbit-b { width: min(58vw, 220px) !important; height: min(38vw, 145px) !important; animation: worldSpinB 12s linear infinite reverse !important; }
}
@media (max-width: 520px) {
  .orbit-a { width: min(88vw, 310px) !important; height: min(62vw, 220px) !important; }
  .orbit-b { width: min(62vw, 220px) !important; height: min(42vw, 145px) !important; }
  .home-content { padding-top: 10vh !important; }
}
