/* AfterDark: the original nocturnal identity, with a layered mascot scene. */
body.landing-refined {
  --n-bg: #09070e; --n-panel: #120e18; --n-text: #f8f3f8;
  --n-muted: #b6aabc; --n-line: #ffffff20; --n-pink: #ff318b;
  --n-glass: #1b1225c9; --n-soft: #ffffff05; --n-shadow: #00000066;
  margin: 0; background: var(--n-bg); color: var(--n-text); overflow-x: clip;
}
html[data-theme="light"] body.landing-refined {
  --n-bg: #fffafb; --n-panel: #fff; --n-text: #251624;
  --n-muted: #6b596c; --n-line: #572e4b26; --n-pink: #c90960;
  --n-glass: #fffffff0; --n-soft: #aa1a6505; --n-shadow: #63264920;
  background: var(--n-bg); color: var(--n-text);
}
.landing-refined *, .landing-refined *::before, .landing-refined *::after { box-sizing: border-box; }
.landing-refined :is(h1,h2,h3,p) { color: inherit; }
.landing-refined a { color: inherit; text-decoration: none; }
.landing-refined a:focus-visible, .landing-refined button:focus-visible { outline: 3px solid var(--n-pink); outline-offset: 6px; }
.landing-refined :is(section,main) { scroll-margin-top: 30px; }
.night-header { width: 100%; min-height: 112px; padding: 20px 5vw; display: flex; align-items: center; justify-content: space-between; gap: 28px; border-bottom: 1px solid var(--n-line); background: var(--n-bg); position: relative; z-index: 5; }
.night-header .brand, .night-footer .brand { display: block; flex-shrink: 0; width: 174px; height: 66px; }
html[data-theme="light"] .landing-refined :is(.night-header,.night-footer) .brand { background-image: url('../images/afterdark-logo-light.png'); }
.night-navigation, .night-account { display: flex; align-items: center; gap: clamp(18px,2.2vw,38px); font-size: .875rem; font-weight: 650; }
.night-navigation a { color: var(--n-muted); }
.night-navigation a:hover, .night-login:hover { color: var(--n-pink); }
.night-account { gap: 20px; }
.night-nav-cta { display: inline-flex; align-items: center; gap: 22px; border: 1px solid var(--n-line); padding: 13px 20px; border-radius: 99px; min-height: 46px; }
.night-nav-cta:hover { background: var(--n-soft); border-color: var(--n-pink); }
.night-landing { background: var(--n-bg); }
.night-hero { position: relative; isolation: isolate; display: grid; grid-template-columns: 1fr 1fr; gap: 2vw; align-items: center; min-height: min(880px,calc(100svh - 112px)); padding: 60px 6vw 78px; overflow: hidden; background: radial-gradient(ellipse at 82% 45%,#f2208a13,transparent 49%); }
.night-hero-copy { position: relative; z-index: 2; max-width: 690px; }
.night-eyebrow { margin: 0 0 28px; font-size: .75rem; font-weight: 750; letter-spacing: .14em; line-height: 1.7; }
.night-hero-copy .night-eyebrow { display: flex; align-items: center; gap: 12px; color: var(--n-muted); }
.night-eyebrow > span { display: grid; place-items: center; width: 36px; min-width: 36px; height: 28px; border: 1px solid var(--n-pink); border-radius: 7px; color: var(--n-pink); letter-spacing: 0; }
.night-hero h1 { margin: 0; font-size: clamp(4.8rem,7.9vw,8rem); font-weight: 850; letter-spacing: -.067em; line-height: .96; }
.night-landing em { color: var(--n-pink); font-family: Georgia,serif; font-weight: 400; }
.night-hero h1 em { display: inline-block; padding-right: .1em; font-size: 1.11em; line-height: 1.04; }
.night-hero .night-lead { font-size: clamp(1.25rem,1.7vw,1.65rem); margin: 30px 0 10px; font-weight: 700; letter-spacing: -.03em; }
.night-hero .night-description { max-width: 450px; margin: 0; color: var(--n-muted); font-size: 1.0625rem; line-height: 1.75; }
.night-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; margin-top: 30px; }
.landing-refined .night-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 28px; min-height: 60px; padding: 8px 9px 8px 25px; border-radius: 99px; color: #fff; background: #dc0967; box-shadow: 0 12px 45px #ef187a26,inset 0 1px #ffffff40; font-size: .9375rem; font-weight: 750; transition: transform .2s,box-shadow .2s; }
.night-button > span { width: 42px; height: 42px; display: grid; place-items: center; background: #ffffff21; border-radius: 50%; font-size: 1.4rem; }
.night-button:hover { transform: translateY(-3px); box-shadow: 0 18px 50px #ef187a40; }
.night-text-link { display: inline-flex; align-items: center; gap: 18px; font-size: .875rem; min-height: 44px; border-bottom: 1px solid var(--n-line); }
.night-text-link:hover { border-color: var(--n-pink); }
.night-hero-notes { display: flex; flex-wrap: wrap; gap: 10px 20px; margin-top: 32px; font-size: .75rem; color: var(--n-muted); }
.night-hero-notes span + span { border-left: 1px solid var(--n-line); padding-left: 20px; }
.night-scene-wrap { height: clamp(590px,49vw,760px); min-width: 0; perspective: 1200px; position: relative; }
.night-scene { position: absolute; inset: 0; transform-style: preserve-3d; transform: rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)); transition: transform .25s ease-out; }
.night-halo { position: absolute; inset: 8% -5% 8%; border-radius: 50%; background: radial-gradient(ellipse,#f710812b,transparent 67%); transform: translateZ(-70px); }
.night-orbit { position: absolute; left: 50%; top: 49%; width: 96%; aspect-ratio: 1; border: 1px solid #f6348d55; border-radius: 50%; transform: translate(-50%,-50%) rotateX(22deg) rotateY(-28deg) rotateZ(-18deg); box-shadow: inset 0 0 38px #ff208010,0 0 30px #ff208010; }
.night-orbit-two { width: 112%; border-color: var(--n-line); transform: translate(-50%,-50%) rotateX(62deg) rotateY(24deg) rotateZ(20deg); }
.night-scene-word { position: absolute; inset: 17% -3% auto; color: transparent; -webkit-text-stroke: 1px #b15d892e; font-size: clamp(6rem,12vw,12rem); font-weight: 900; letter-spacing: -.08em; line-height: .78; transform: translateZ(-45px); }
.night-devil { position: absolute; display: block; width: 100%; height: 100%; max-width: 100%; object-fit: contain; object-position: center bottom; inset: 0; transform: translateZ(45px); filter: drop-shadow(0 30px 32px var(--n-shadow)); mask-image: linear-gradient(#000 0 84%,transparent 100%); }
.night-glass { position: absolute; display: flex; align-items: center; gap: 14px; padding: 17px 21px; border: 1px solid var(--n-line); border-radius: 18px; background: var(--n-glass); backdrop-filter: blur(18px); box-shadow: 0 20px 40px var(--n-shadow),inset 0 1px #ffffff1a; }
.night-glass-top { top: 20%; right: -1%; transform: translateZ(90px) rotate(7deg); }
.night-glass-bottom { bottom: 18%; left: -4%; transform: translateZ(110px) rotate(-7deg); }
.night-glass-icon { font-size: 1.9rem; color: var(--n-pink); }
.night-glass div { display: grid; gap: 4px; }
.night-glass small { color: var(--n-muted); font-size: .75rem; letter-spacing: .08em; }
.night-glass strong { font-size: 1rem; }
.night-scene-caption { position: absolute; bottom: 3%; right: 4%; color: var(--n-muted); font-size: .75rem; letter-spacing: .09em; }
.night-scroll { position: absolute; bottom: 24px; left: 6vw; display: flex; gap: 24px; align-items: center; font-size: .75rem; color: var(--n-muted); letter-spacing: .12em; }
.night-scroll span { color: var(--n-pink); font-size: 1.25rem; }
.night-ribbon { border-block: 1px solid var(--n-line); display: flex; justify-content: space-evenly; align-items: center; padding: 29px 5vw; gap: 20px; background: var(--n-soft); }
.night-ribbon span { font-weight: 750; font-size: clamp(1.1rem,2.5vw,2.4rem); letter-spacing: -.04em; }
.night-ribbon i { font-style: normal; color: var(--n-pink); font-size: 1.5rem; }
.night-section { max-width: 1600px; margin: 0 auto; padding: 110px 6vw; }
.night-section > .night-eyebrow, .night-section-heading .night-eyebrow { color: var(--n-pink); }
.night-landing h2 { font-size: clamp(2.75rem,4.7vw,5rem); letter-spacing: -.055em; line-height: 1.04; margin: 0; }
.night-manifesto-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 8vw; align-items: start; }
.night-manifesto-grid p { color: var(--n-muted); font-size: 1.125rem; line-height: 1.8; margin: 0 0 16px; }
.night-manifesto-grid .night-text-link { margin-top: 10px; }
.night-features { padding-top: 0; }
.night-section-heading { margin-bottom: 42px; }
.night-feature-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.night-feature { position: relative; display: flex; flex-direction: column; padding: 30px; min-height: 460px; border: 1px solid var(--n-line); border-radius: 22px; background: var(--n-panel); transition: transform .25s,border-color .25s; overflow: hidden; }
.night-feature:hover { transform: translateY(-7px); border-color: var(--n-pink); }
.night-feature-top { display: flex; justify-content: space-between; gap: 20px; color: var(--n-muted); font-size: .75rem; letter-spacing: .08em; }
.night-feature-top > span:last-child { font-size: 1.25rem; color: var(--n-pink); }
.night-feature-mark { font-size: 6.5rem; line-height: 1.3; color: var(--n-pink); font-weight: 600; letter-spacing: -.075em; }
.night-live-mark { font-family: Georgia,serif; font-style: italic; }
.night-feature-live { background: radial-gradient(ellipse at 90% 10%,#ff2b8820,transparent 75%),var(--n-panel); border-color: #ff2b8848; }
.night-feature h3 { font-size: clamp(1.5rem,2.2vw,2.2rem); letter-spacing: -.045em; line-height: 1.12; margin: 0 0 17px; }
.night-feature p { color: var(--n-muted); font-size: 1rem; line-height: 1.7; margin: 0 0 24px; }
.night-feature-link { margin-top: auto; font-size: .875rem; font-weight: 650; padding-top: 15px; }
.night-rules { border-top: 1px solid var(--n-line); display: grid; grid-template-columns: 1fr 1fr; gap: 7vw; }
.night-rules .night-eyebrow { color: var(--n-pink); }
.night-rules .night-text-link { margin-top: 28px; }
.night-principles article { display: flex; gap: 24px; padding: 25px 0; border-bottom: 1px solid var(--n-line); }
.night-principles article:first-child { padding-top: 0; }
.night-principles article > span { flex: 0 0 42px; width: 42px; height: 42px; border: 1px solid var(--n-line); display: grid; place-items: center; border-radius: 50%; font-size: .875rem; color: var(--n-pink); }
.night-principles h3 { font-size: 1.2rem; margin: 0 0 10px; letter-spacing: -.025em; }
.night-principles p { font-size: 1rem; line-height: 1.75; color: var(--n-muted); margin: 0; }
.night-final { text-align: center; padding: 100px 24px 110px; border-top: 1px solid var(--n-line); background: radial-gradient(ellipse at 50% 100%,#ee127720,transparent 65%); }
.night-final .night-eyebrow { color: var(--n-muted); }
.night-final h2 { font-size: clamp(4rem,8vw,8rem); }
.night-final .night-button { margin-top: 38px; }
.night-final > p:last-child { font-size: .875rem; color: var(--n-muted); margin-top: 22px; }
.night-final > p:last-child a { text-decoration: underline; text-underline-offset: 4px; }
.night-footer { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; padding: 50px 6vw 28px; border-top: 1px solid var(--n-line); }
.night-footer .footer-brand { display: block; }
.night-footer .footer-brand p { font-size: .875rem; line-height: 1.6; color: var(--n-muted); margin: 16px 0 0; }
.night-footer nav { display: flex; flex-wrap: wrap; align-content: center; justify-content: flex-end; gap: 20px 28px; font-size: .875rem; }
.night-footer nav a:hover { color: var(--n-pink); }
.night-footer-bottom { grid-column: 1/-1; display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; border-top: 1px solid var(--n-line); padding-top: 25px; color: var(--n-muted); font-size: .75rem; }
.night-footer-bottom small { font-size: inherit; }
@media(min-width:1600px) { .night-hero { padding-inline: max(6vw,calc((100vw - 1400px)/2)); } }
@media(max-width:1100px) {
  .night-navigation { display: none; }
  .night-hero { padding-inline: 5vw; }
  .night-hero h1 { font-size: clamp(4.5rem,8.7vw,6rem); }
  .night-scene-wrap { height: 610px; }
  .night-glass { padding: 13px; gap: 10px; }
  .night-glass-top { right: -4%; }
  .night-glass-bottom { left: -3%; }
  .night-feature { padding: 24px; }
}
@media(max-width:760px) {
  .night-header { min-height: 88px; padding: 12px 20px; gap: 12px; }
  .night-header .brand { width: 135px; height: 58px; }
  .night-account { gap: 12px; font-size: .875rem; }
  .night-nav-cta { padding: 10px 16px; gap: 8px; }
  .night-hero { display: flex; flex-direction: column; align-items: stretch; gap: 16px; padding: 44px 24px 45px; min-height: 0; }
  .night-hero-copy { max-width: 560px; width: 100%; margin: auto; }
  .night-hero h1 { font-size: clamp(4rem,14vw,6.5rem); }
  .night-hero-copy .night-eyebrow { font-size: .75rem; letter-spacing: .07em; margin-bottom: 25px; }
  .night-hero .night-lead { margin-top: 23px; }
  .night-description { max-width: 100%; }
  .night-scene-wrap { width: min(100%,510px); height: auto; aspect-ratio: .88; margin: 0 auto; }
  .night-scene { transform: none; }
  .night-devil { transform: none; }
  .night-scene-word { font-size: clamp(5rem,23vw,9rem); }
  .night-glass-top { right: 0; top: 23%; transform: rotate(5deg); }
  .night-glass-bottom { left: 0; bottom: 14%; transform: rotate(-5deg); }
  .night-glass small { font-size: .75rem; }
  .night-glass strong { font-size: .875rem; }
  .night-scene-caption { display: none; }
  .night-scroll { display: none; }
  .night-ribbon { flex-wrap: wrap; gap: 12px 18px; padding: 23px 20px; }
  .night-ribbon span { font-size: 1.2rem; }
  .night-ribbon i { font-size: 1rem; }
  .night-ribbon i:last-of-type, .night-ribbon span:last-child { display: none; }
  .night-section { padding: 65px 24px; }
  .night-manifesto-grid, .night-rules { grid-template-columns: 1fr; gap: 32px; }
  .night-manifesto-grid p { font-size: 1rem; }
  .night-features { padding-top: 0; }
  .night-feature-grid { grid-template-columns: 1fr; gap: 16px; }
  .night-feature { min-height: 0; padding: 28px; }
  .night-feature-mark { font-size: 5.4rem; line-height: 1.25; }
  .night-feature h3 { font-size: 2rem; }
  .night-feature p { max-width: 440px; }
  .night-principles article { gap: 18px; }
  .night-final { padding: 70px 24px; }
  .night-footer { grid-template-columns: 1fr; padding: 40px 24px 28px; gap: 28px; }
  .night-footer nav { justify-content: flex-start; gap: 16px 24px; }
}
@media(max-width:440px) {
  .night-header { padding-inline: 14px; }
  .night-header .brand { width: 115px; }
  .night-account { gap: 9px; }
  .night-nav-cta { padding-inline: 12px; }
  .night-nav-cta span { display: none; }
  .night-login { font-size: .75rem; }
  .night-actions { gap: 14px; }
  .night-actions .night-button { width: 100%; }
  .night-actions .night-text-link { margin: 0 auto; }
  .night-hero-notes { gap: 10px; justify-content: space-between; }
  .night-hero-notes span + span { padding-left: 10px; }
  .night-glass { padding: 10px; gap: 8px; }
  .night-glass-icon { font-size: 1.5rem; }
}
@media(max-width:350px) {
  .night-header { flex-wrap: wrap; justify-content: center; }
  .night-hero h1 { font-size: 3.65rem; }
  .night-hero, .night-section { padding-inline: 18px; }
  .night-glass small { display: none; }
}
@media(prefers-reduced-motion:reduce) {
  .landing-refined *, .landing-refined *::before, .landing-refined *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .night-scene { transform: none; }
}

/* Cinematic finish, preserving the original content and composition. */
body.landing-refined {
  --n-bg: #09090e; --n-panel: #121117; --n-muted: #b6afb9;
  --n-line: #ede1f019; --n-pink: #f13a85; --n-glass: #18151dc9;
  --night-ease: cubic-bezier(.22,1,.36,1);
}
.night-header { background: linear-gradient(180deg,var(--n-panel),var(--n-bg)); }
.night-header .brand, .night-footer .brand { filter: drop-shadow(0 3px 14px #e8227012); }
.night-navigation a { position: relative; padding-block: 12px; }
.night-navigation a::after {
  content: ''; position: absolute; left: 0; right: 0; bottom: 3px;
  height: 1px; background: var(--n-pink); transform: scaleX(0);
  transform-origin: left; transition: transform .45s var(--night-ease);
}
.night-navigation a:hover::after, .night-navigation a:focus-visible::after { transform: scaleX(1); }
.night-nav-cta { box-shadow: inset 0 1px #ffffff08; transition: background .3s,border-color .3s; }
.night-hero { background: radial-gradient(ellipse at 78% 38%,#7c718319,transparent 52%),var(--n-bg); }
.night-hero::before, .night-hero::after { content: ''; position: absolute; pointer-events: none; z-index: -1; }
.night-hero::before { inset: 0; background: linear-gradient(112deg,transparent 45%,#dfcfe507 54%,transparent 69%); }
.night-hero::after {
  width: 60%; height: 1px; right: -8%; bottom: 12%;
  background: linear-gradient(90deg,transparent,#f7e9f02a,transparent); transform: rotate(-24deg);
}
.night-hero h1 { text-shadow: 0 8px 50px #00000012; }
.night-hero h1 em { text-shadow: 0 0 75px #f13a8518; }
.night-eyebrow, .night-hero-copy .night-eyebrow { font-size: .6875rem; letter-spacing: .17em; }
.night-scene-wrap { perspective: 1500px; }
.night-scene { transition: none; }
.night-halo {
  inset: 4% -14% 0;
  background: radial-gradient(ellipse at 50% 44%,#e3c5e41a,transparent 46%),radial-gradient(ellipse at 63% 54%,#ed277019,transparent 64%);
}
.night-orbit { border-color: #d9bfcd44; box-shadow: inset 0 1px #fff5,0 1px #08070e,inset 0 0 38px #e8ccda04; }
.night-orbit-two { border-color: #d3bdce20; box-shadow: inset 0 1px #ffffff18; }
.night-scene-word { -webkit-text-stroke-color: #e4cddc25; letter-spacing: -.07em; }
.night-devil { filter: drop-shadow(0 32px 40px #0009); }
.night-glass {
  border-radius: 14px; border-color: #efdeee30;
  background: linear-gradient(135deg,#ffffff0b,transparent 55%),var(--n-glass);
  box-shadow: 0 25px 60px #0005,inset 0 1px #ffffff12; backdrop-filter: blur(20px) saturate(.8);
}
.night-glass small { font-size: .625rem; letter-spacing: .13em; }
.night-scene-caption { font-size: .625rem; letter-spacing: .15em; }
.landing-refined .night-button {
  background: linear-gradient(125deg,#df236a,#c61157);
  box-shadow: 0 10px 30px #db155322,inset 0 1px #ffffff42,inset 0 -1px #8c0932;
  transition: transform .45s var(--night-ease),box-shadow .45s;
}
.night-button > span { transition: transform .5s var(--night-ease),background .3s; }
.night-button:hover > span { transform: rotate(45deg); background: #ffffff30; }
.night-text-link > span, .night-nav-cta > span { transition: transform .45s var(--night-ease); }
.night-text-link:hover > span, .night-nav-cta:hover > span { transform: translate(3px,-3px); }
.night-scroll span { display: grid; place-items: center; width: 26px; height: 38px; border: 1px solid var(--n-line); border-radius: 30px; font-size: .9rem; }
.night-ribbon {
  position: relative; z-index: 2; padding-block: 35px;
  background: linear-gradient(90deg,var(--n-bg),var(--n-panel),var(--n-bg)); box-shadow: 0 -25px 70px #00000012;
}
.night-ribbon span { font-weight: 600; }
.night-ribbon i { font-size: 1rem; color: #d6c4d0; }
.night-section { padding-block: clamp(90px,10vw,156px); }
.night-manifesto { position: relative; }
.night-manifesto::before {
  content: ''; position: absolute; left: 6vw; right: 6vw; bottom: 36px; height: 1px;
  background: linear-gradient(90deg,var(--n-line),transparent 80%);
}
.night-manifesto-grid { align-items: center; }
.night-manifesto-grid p { max-width: 520px; }
.night-features { padding-top: 55px; }
.night-section-heading { margin-bottom: 58px; }
.night-feature-grid { perspective: 1400px; gap: 22px; }
.night-feature {
  isolation: isolate; min-height: 510px; padding: 34px; border-radius: 18px; border-color: #e3d3e223;
  background: linear-gradient(155deg,#ffffff05,transparent 45%),var(--n-panel);
  box-shadow: 0 24px 52px -30px #000b,inset 0 1px #ffffff0c;
  transition: transform .6s var(--night-ease),border-color .4s,box-shadow .4s;
}
.night-feature::before {
  content: ''; position: absolute; z-index: -1; pointer-events: none;
  width: 300px; height: 300px; right: -100px; top: -150px; border-radius: 50%;
  background: radial-gradient(circle,#d1bcc81a,transparent 68%);
  transform: translate3d(var(--light-x,0px),var(--light-y,0px),0);
}
.night-feature::after {
  content: ''; position: absolute; top: 0; left: 14%; right: 14%; height: 1px;
  background: linear-gradient(90deg,transparent,#e2cdda60,transparent);
}
.night-feature:hover { border-color: #ebcddd66; box-shadow: 0 35px 65px -30px #000c,inset 0 1px #ffffff16; }
.night-feature-live { background: radial-gradient(ellipse at 100% 0%,#db226817,transparent 65%),var(--n-panel); }
.night-feature-mark {
  display: block; align-self: flex-start; margin: 22px 0 24px; font-size: 7.3rem; line-height: 1.1;
  background: linear-gradient(145deg,#f5e7ee 9%,#d193b0 35%,#795c70 63%,#dcb3c8 82%);
  background-clip: text; -webkit-background-clip: text; color: transparent; filter: drop-shadow(0 12px 15px #0004);
}
.night-live-mark { background-image: linear-gradient(145deg,#f6becf,#ef5593 45%,#a82959 78%); }
.night-feature h3 { margin-bottom: 20px; }
.night-feature-link { border-top: 1px solid var(--n-line); padding-top: 22px; }
.night-rules { border-top-color: transparent; position: relative; }
.night-rules::before {
  content: ''; position: absolute; top: 0; left: 6vw; right: 6vw; height: 1px;
  background: linear-gradient(90deg,transparent,var(--n-line),transparent);
}
.night-principles article { padding-block: 30px; }
.night-principles article > span { background: linear-gradient(135deg,#ffffff08,transparent); box-shadow: inset 0 1px #ffffff0a; }
.night-final {
  position: relative; isolation: isolate; overflow: hidden; padding-block: clamp(100px,11vw,170px);
  background: radial-gradient(ellipse at 50% 100%,#de226419,transparent 60%),var(--n-bg);
}
.night-final::before, .night-final::after {
  content: ''; position: absolute; z-index: -1; pointer-events: none; border: 1px solid #ceb9c71e; border-radius: 50%;
  left: 50%; top: 55%; width: min(1100px,100%); height: 70%;
  transform: translate(-50%,-50%) rotate(-18deg) scale(var(--final-orbit,1));
}
.night-final::after { width: min(920px,90%); height: 96%; transform: translate(-50%,-50%) rotate(28deg) scale(var(--final-orbit,1)); border-color: #ceb9c710; }
.night-final h2 { position: relative; }
.night-footer { background: var(--n-bg); }

/* Content remains visible without JS or when motion is reduced. */
.night-title-line { display: block; padding-bottom: .12em; margin-bottom: -.12em; overflow: clip; }
.night-title-line > span { display: block; }
.night-motion .night-reveal { transition: opacity .9s var(--night-ease),transform 1.1s var(--night-ease); }
.night-motion .night-reveal:not(.is-visible) { opacity: 0; transform: translate3d(0,25px,0); }
.night-motion .night-title-line > span { transition: transform 1.25s var(--night-ease),opacity .9s; transition-delay: var(--line-delay,0ms); }
.night-motion .night-title-reveal:not(.is-visible) .night-title-line > span { transform: translateY(110%) rotate(2deg); opacity: 0; }
.night-motion .night-reveal:focus-within { opacity: 1; transform: none; }
@media(min-width:1000px) and (prefers-reduced-motion:no-preference) {
  .night-motion-desktop .night-hero-track { height: calc(var(--hero-height) + 32svh); }
  .night-motion-desktop .night-hero { position: sticky; top: var(--hero-pin-top,0px); }
  .night-motion-desktop .night-hero-copy { transform: translate3d(0,var(--copy-y,0px),0); }
  .night-motion-desktop .night-scene { transform: translate3d(0,var(--scene-y,0px),0) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) scale(var(--scene-scale,1)); }
  .night-motion-desktop .night-devil { transform: translate3d(0,var(--figure-y,0px),65px); }
  .night-motion-desktop .night-scene-word { transform: translate3d(var(--word-x,0px),0,-85px); }
  .night-motion-desktop .night-orbit-one { transform: translate(-50%,-50%) rotateX(22deg) rotateY(var(--orbit-turn,-28deg)) rotateZ(-18deg); }
  .night-motion-desktop .night-orbit-two { transform: translate(-50%,-50%) rotateX(62deg) rotateY(24deg) rotateZ(var(--orbit-roll,20deg)); }
  .night-motion-desktop .night-glass-top { transform: translate3d(var(--glass-x,0px),var(--glass-top-y,0px),100px) rotate(var(--glass-top-turn,7deg)); }
  .night-motion-desktop .night-glass-bottom { transform: translate3d(calc(-1 * var(--glass-x,0px)),var(--glass-bottom-y,0px),130px) rotate(var(--glass-bottom-turn,-7deg)); }
  .night-motion-desktop .night-feature { transform: translate3d(var(--card-x,0px),var(--card-y,0px),0) rotateX(var(--card-pitch,0deg)) rotateY(var(--card-turn,0deg)) rotateZ(var(--card-roll,0deg)); transition: border-color .4s,box-shadow .4s; }
  .night-motion-desktop .night-feature:focus-visible { transform: none; }
  .night-rules > div:first-child { position: sticky; top: 70px; align-self: start; }
}
html[data-theme="light"] .night-feature { border-color: var(--n-line); box-shadow: 0 24px 50px -35px #6b375838,inset 0 1px #fff; }
html[data-theme="light"] .night-feature-mark { background-image: linear-gradient(145deg,#853d66,#b0658c 45%,#56223c); }
html[data-theme="light"] .night-live-mark { background-image: linear-gradient(145deg,#b7195b,#d42f75); }
/* Light surfaces need tinted edges and shadows instead of pale light emission. */
html[data-theme="light"] .night-hero {
  background: radial-gradient(ellipse at 79% 44%,#bda6c32b,transparent 53%),var(--n-bg);
}
html[data-theme="light"] .night-hero::before {
  background: linear-gradient(112deg,transparent 45%,#9f7d9910 54%,transparent 69%);
}
html[data-theme="light"] .night-hero::after {
  background: linear-gradient(90deg,transparent,#79566e38,transparent);
}
html[data-theme="light"] .night-scene-word {
  -webkit-text-stroke-color: #79556e52;
}
html[data-theme="light"] .night-halo {
  background: radial-gradient(ellipse at 50% 44%,#9374a02b,transparent 49%),
    radial-gradient(ellipse at 63% 54%,#d8477c22,transparent 66%);
}
html[data-theme="light"] .night-orbit {
  border-color: #775c735c;
  box-shadow: inset 0 1px #fff9,0 1px #775c731a,inset 0 0 38px #97758c08;
}
html[data-theme="light"] .night-orbit-two {
  border-color: #8b66834d;
  box-shadow: inset 0 1px #fff8;
}
html[data-theme="light"] .night-glass {
  border-color: #865b7638;
  background: linear-gradient(135deg,#ffffffeb,#f8edf5cc 65%,#eadcebc9);
  box-shadow: 0 25px 50px #63354c20,inset 0 1px #fff,inset 0 -1px #ad829c12;
}
html[data-theme="light"] .night-devil { filter: drop-shadow(0 28px 35px var(--n-shadow)); }
html[data-theme="light"] .night-final::before, html[data-theme="light"] .night-final::after { border-color: var(--n-line); }
@media(max-width:1100px) { .night-feature { padding: 26px; } }
@media(max-width:760px) {
  .night-section { padding-block: 76px; }
  .night-features { padding-top: 20px; }
  .night-section-heading { margin-bottom: 32px; }
  .night-feature { min-height: 0; padding: 28px; }
  .night-feature-mark { margin: 18px 0 22px; font-size: 6rem; }
  .night-manifesto::before { bottom: 20px; }
  .night-ribbon { display: grid; grid-template-columns: 1fr auto 1fr; padding: 23px 24px; text-align: center; gap: 16px; }
  .night-ribbon i:nth-of-type(2) { display: none; }
  .night-ribbon i:last-of-type, .night-ribbon span:last-child { display: block; }
  .night-final { padding-block: 95px; }
  .night-final::before { width: 150%; height: 52%; }
  .night-final::after { width: 110%; height: 85%; }
  .night-glass { backdrop-filter: none; background: var(--n-panel); }
}
@media(prefers-reduced-motion:reduce) {
  .night-hero-track { height: auto !important; }
  .night-reveal, .night-title-line > span { opacity: 1 !important; transform: none !important; }
}
body.age-gate-open{overflow:hidden}.age-gate{width:min(calc(100% - 32px),540px);max-height:calc(100dvh - 32px);margin:auto;padding:0;overflow:auto;border:1px solid #ffffff24;border-radius:16px;color:#f8f3f6;background:#0d0a10;box-shadow:0 30px 90px #000b}.age-gate::backdrop{background:#050307e8;backdrop-filter:blur(10px)}.age-gate[open]{animation:age-gate-enter .28s cubic-bezier(.16,1,.3,1)}.age-gate-content{display:grid;justify-items:start;padding:36px}.age-gate-brand{margin-bottom:28px;color:#fff;font-size:18px;font-weight:950;letter-spacing:.13em}.age-gate-brand span{color:#ff2b86}.age-gate-mark{display:grid;place-items:center;width:64px;height:64px;margin-bottom:22px;border:1px solid #ff2b86;border-radius:14px;color:#ff78b1;background:#ff2b8612;font-size:20px;font-weight:950}.age-gate h2{max-width:460px;margin:0 0 14px;color:#fff;font-size:clamp(28px,6vw,40px);line-height:1.05;letter-spacing:-.025em}.age-gate p{max-width:62ch;margin:0;color:#c8bec6;font-size:15px;line-height:1.65}.age-gate-actions{width:100%;display:grid;gap:10px;margin-top:28px}.age-gate-confirm{min-height:50px;border:0;border-radius:25px;padding:13px 20px;color:#1b1017;background:#ff2b86;font:800 14px/1.35 Inter,Arial,sans-serif;cursor:pointer}.age-gate-confirm:hover{background:#ff5ca1}.age-gate-confirm:focus-visible,.age-gate-exit:focus-visible{outline:3px solid #d7ff32;outline-offset:3px}.age-gate-exit{min-height:44px;display:grid;place-items:center;padding:10px;color:#d2c8d0;font-size:13px;font-weight:700;text-align:center;text-decoration:underline;text-decoration-color:#ffffff4d;text-underline-offset:4px}.age-gate-exit:hover{color:#fff;text-decoration-color:#ff2b86}.age-gate small{margin-top:18px;color:#8f848d;font-size:11px;line-height:1.5}@keyframes age-gate-enter{from{opacity:0;filter:blur(8px);transform:translateY(18px) scale(.98)}to{opacity:1;filter:none;transform:none}}@media(max-width:560px){.age-gate{width:calc(100% - 20px);max-height:calc(100dvh - 20px)}.age-gate-content{padding:28px 22px}.age-gate-brand{margin-bottom:22px}.age-gate-mark{width:56px;height:56px;margin-bottom:18px}.age-gate p{font-size:14px}.age-gate-confirm{min-height:52px}}@media(prefers-reduced-motion:reduce){.age-gate[open]{animation:none}}
