:root {
  color-scheme: dark;
  --ink: #03060a;
  --ink-soft: #07101a;
  --paper: #f3f4ed;
  --muted: rgba(243, 244, 237, .64);
  --faint: rgba(243, 244, 237, .1);
  --blue: #2cb7ff;
  --green: #55f5c3;
  --red: #ff5149;
  --amber: #ffc94d;
  --max: 1320px;
  --sans: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

* { box-sizing: border-box; }
html { background: var(--ink); scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 320px;
  overflow-x: hidden;
  background:
    radial-gradient(circle at 15% 20%, rgba(20, 105, 158, .11), transparent 28%),
    radial-gradient(circle at 84% 63%, rgba(110, 22, 32, .1), transparent 32%),
    var(--ink);
  color: var(--paper);
  font-family: var(--sans);
  -webkit-font-smoothing: antialiased;
}
body.ceremony-locked { height: 100vh; overflow: hidden; }
body::selection { background: rgba(99, 230, 221, .95); color: #031016; }
button, input { font: inherit; }
a { color: inherit; }

.arrival-ceremony {
  position: fixed;
  inset: 0;
  z-index: 9000;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: #020407;
  transition: visibility 0s linear 1.4s, opacity 1.2s ease 1.1s;
}
.arrival-ceremony.is-gone { visibility: hidden; opacity: 0; pointer-events: none; }
.ceremony-fold {
  position: absolute;
  inset-block: 0;
  z-index: 12;
  width: 50.2%;
  background:
    radial-gradient(circle at 50% 42%, rgba(255,255,255,.025) 0 1px, transparent 1.6px) 0 0/7px 7px,
    linear-gradient(100deg, rgba(8,20,33,.96), rgba(2,5,9,.99));
  transition: transform 1.7s cubic-bezier(.76,0,.18,1);
  pointer-events: none;
}
.ceremony-fold-left { left: 0; transform-origin: left center; border-right: 1px solid rgba(255,255,255,.08); }
.ceremony-fold-right { right: 0; transform-origin: right center; border-left: 1px solid rgba(255,255,255,.08); }
.arrival-ceremony.is-playing .ceremony-fold { opacity: .2; transition: opacity 2s ease; }
.arrival-ceremony.is-opening .ceremony-fold-left { transform: translateX(-102%); opacity: 1; }
.arrival-ceremony.is-opening .ceremony-fold-right { transform: translateX(102%); opacity: 1; }
.ceremony-stars {
  position: absolute;
  inset: -10%;
  z-index: 1;
  background:
    radial-gradient(circle at 22% 19%, rgba(255,255,255,.7) 0 1px, transparent 1.4px) 0 0/19px 23px,
    radial-gradient(circle at 68% 55%, rgba(139,192,255,.42) 0 .8px, transparent 1.4px) 0 0/13px 17px,
    radial-gradient(circle at 46% 52%, rgba(48,123,177,.22), transparent 29%),
    radial-gradient(circle at 77% 52%, rgba(151,39,45,.15), transparent 31%);
  opacity: .37;
  transform: scale(1.06);
  animation: starDrift 24s ease-in-out infinite alternate;
}
.ceremony-network { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; opacity: .16; }
.route path { fill: none; stroke-width: 5; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 1; stroke-dashoffset: 1; }
.route circle { fill: #fff; stroke-width: 5; opacity: 0; filter: drop-shadow(0 0 8px currentColor); }
.route-blue, .track-route-blue { color: var(--blue); }
.route-green, .track-route-green { color: var(--green); }
.route-red, .track-route-red { color: var(--red); }
.route-cyan { color: #50dddf; }
.route-blue path, .route-blue circle { stroke: var(--blue); }
.route-green path, .route-green circle { stroke: var(--green); }
.route-red path, .route-red circle { stroke: var(--red); }
.route-cyan path, .route-cyan circle { stroke: #50dddf; }
.arrival-ceremony.is-playing .ceremony-network { opacity: .94; transition: opacity 1.4s ease; animation: networkYield 12.55s linear forwards; }
.arrival-ceremony.is-playing .route path { animation: routeDraw 8s cubic-bezier(.22,.68,.24,1) forwards; }
.arrival-ceremony.is-playing .route-blue path { animation-delay: .15s; }
.arrival-ceremony.is-playing .route-green path { animation-delay: 1.3s; }
.arrival-ceremony.is-playing .route-red path { animation: routeRedDraw 7.1s linear 2.15s forwards; }
.arrival-ceremony.is-playing .route-cyan path { animation-delay: 3.4s; }
.arrival-ceremony.is-playing .route circle { animation: stationWake .9s ease forwards, stationBreath 2.8s ease-in-out infinite 1.2s; }
.arrival-ceremony.is-playing .route circle:nth-of-type(1) { animation-delay: 1s, 1.9s; }
.arrival-ceremony.is-playing .route circle:nth-of-type(2) { animation-delay: 1.75s, 2.65s; }
.arrival-ceremony.is-playing .route circle:nth-of-type(3) { animation-delay: 2.5s, 3.4s; }
.arrival-ceremony.is-playing .route circle:nth-of-type(4) { animation-delay: 3.25s, 4.15s; }
.arrival-ceremony.is-playing .route circle:nth-of-type(5) { animation-delay: 4s, 4.9s; }
.arrival-ceremony.is-playing .route circle:nth-of-type(6) { animation-delay: 4.75s, 5.65s; }
.arrival-ceremony.is-playing .route circle:nth-of-type(7) { animation-delay: 5.5s, 6.4s; }
.arrival-ceremony.is-playing .route circle:nth-of-type(8) { animation-delay: 6.25s, 7.15s; }
.route-red circle.ceremony-final-red-dot { fill: var(--red); stroke: var(--red); opacity: 0; transform-origin: 610px 815px; }
.arrival-ceremony.is-playing .route-red circle.ceremony-final-red-dot { animation: redFinalSignal 1.05s 11.45s cubic-bezier(.2,.72,.2,1) forwards; }
.ceremony-sa {
  position: absolute;
  top: 50%; left: 50%;
  z-index: 3;
  width: min(42vw, 610px); aspect-ratio: .78;
  transform: translate(-50%, -46%) scale(.86);
  background:
    radial-gradient(circle, rgba(222,225,255,.92) 0 1px, transparent 1.45px) 0 0/7px 7px,
    linear-gradient(180deg, rgba(105,119,189,.5), rgba(217,220,255,.74));
  -webkit-mask: url('/assets/logo_mark_512.png') center/contain no-repeat;
  mask: url('/assets/logo_mark_512.png') center/contain no-repeat;
  opacity: 0;
  filter: drop-shadow(0 0 32px rgba(101,110,211,.28));
  will-change: transform, opacity, filter;
}
.arrival-ceremony.is-playing .ceremony-sa { animation: emblemGather 9.7s .45s linear forwards; }
.ceremony-copy { position: relative; z-index: 20; width: min(90vw, 880px); text-align: center; }
.ceremony-label { margin: 0 0 34px; color: rgba(255,255,255,.45); font-size: 10px; letter-spacing: .42em; }
.ceremony-copy h1 { margin: 0; font-size: clamp(36px, 7vw, 92px); font-weight: 400; letter-spacing: .16em; line-height: .94; }
.ceremony-album { margin: 18px 0 0; font-size: clamp(17px, 2vw, 26px); letter-spacing: .5em; }
.ceremony-release { margin: 14px 0 0; color: rgba(255,255,255,.58); font-size: 9px; font-weight: 650; letter-spacing: .28em; text-transform: uppercase; }
.ceremony-promise { margin: 42px auto 28px; max-width: 580px; color: var(--muted); font-size: clamp(15px, 1.4vw, 19px); font-weight: 300; letter-spacing: .035em; line-height: 1.7; }
.enter-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 16px;
  min-height: 54px;
  padding: 0 25px;
  border: 1px solid rgba(255,255,255,.27);
  border-radius: 999px;
  background: rgba(2,7,12,.65);
  color: #fff;
  cursor: pointer;
  font-size: 11px;
  letter-spacing: .18em;
  text-transform: uppercase;
  backdrop-filter: blur(12px);
  transition: border-color .25s ease, background .25s ease, transform .25s ease;
}
.enter-button:hover { border-color: rgba(255,255,255,.7); background: rgba(15,29,42,.8); transform: translateY(-2px); }
.enter-pulse { width: 8px; height: 8px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 0 rgba(76,226,222,.5); animation: enterPulse 2.3s ease-out infinite; }
.silent-button { display: block; margin: 18px auto 0; border: 0; background: none; color: rgba(255,255,255,.42); cursor: pointer; font-size: 10px; letter-spacing: .14em; text-transform: uppercase; }
.arrival-ceremony.is-playing .ceremony-copy { animation: copyDissolve 2.9s 3.95s cubic-bezier(.38,0,.22,1) forwards; pointer-events: none; }
.ceremony-status { position: absolute; bottom: max(22px, env(safe-area-inset-bottom)); z-index: 20; margin: 0; color: rgba(255,255,255,.45); font-size: 9px; letter-spacing: .23em; text-transform: uppercase; }

.private-header {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 100;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 18px;
  min-height: 72px;
  padding: 0 max(24px, 4vw);
  background: linear-gradient(180deg, rgba(2,5,9,.94), rgba(2,5,9,.2));
  backdrop-filter: blur(10px);
}
.brand-link { display: inline-flex; align-items: center; gap: 12px; width: max-content; color: #fff; text-decoration: none; font-size: 10px; letter-spacing: .25em; }
.brand-link img { width: 28px; height: 28px; object-fit: contain; filter: invert(1) brightness(2); }
.confidential { margin: 0; color: rgba(255,255,255,.4); font-size: 9px; letter-spacing: .27em; }
.language-switch { justify-self: end; display: flex; align-items: center; gap: 6px; padding: 6px; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; background: rgba(2,7,12,.58); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
.language-switch button { min-width: 34px; height: 30px; padding: 0 8px; border: 0; border-radius: 999px; background: none; color: rgba(255,255,255,.36); cursor: pointer; font-size: 10px; letter-spacing: .12em; transition: color .18s ease, background .18s ease; }
.language-switch button:hover, .language-switch button:focus-visible { color: #fff; outline: none; }
.language-switch button[aria-pressed="true"] { background: var(--blue); color: #02070c; box-shadow: 0 0 24px rgba(44,183,255,.22); }
.language-switch span { color: rgba(255,255,255,.18); font-size: 9px; }

.hero {
  position: relative;
  min-height: 100svh;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, .72fr);
  align-items: center;
  gap: 6vw;
  padding: 120px max(6vw, 34px) 34px;
  overflow: hidden;
}
.hero-gatefold { position: absolute; inset: 0; background: radial-gradient(circle at 18% 24%, rgba(40,128,190,.19), transparent 29%), radial-gradient(circle at 83% 28%, rgba(151,39,45,.15), transparent 28%), radial-gradient(circle at 52% 60%, rgba(99,89,184,.12), transparent 34%), radial-gradient(circle, rgba(255,255,255,.17) 0 .75px, transparent 1.25px) 0 0/11px 11px, #03070c; transform: scale(1.02); }
.hero-network { position: absolute; inset: 0; width: 100%; height: 100%; opacity: .36; filter: saturate(.9); }
.hero-network .route path { stroke-width: 3.25; stroke-dashoffset: 0; opacity: .68; filter: drop-shadow(0 0 8px currentColor); }
.hero-network .route circle { fill: #fff; opacity: .72; filter: drop-shadow(0 0 10px currentColor); }
.hero-sa { position: absolute; top: 50%; left: 53%; width: min(54vw, 780px); aspect-ratio: .78; transform: translate(-50%,-47%); background: radial-gradient(circle, rgba(207,211,248,.7) 0 .8px, transparent 1.2px) 0 0/6px 6px; -webkit-mask: url('/assets/logo_mark_512.png') center/contain no-repeat; mask: url('/assets/logo_mark_512.png') center/contain no-repeat; opacity: .11; filter: drop-shadow(0 0 34px rgba(95,116,208,.16)); }
.hero-vignette { position: absolute; inset: 0; background: radial-gradient(ellipse at 27% 36%, rgba(2,5,9,.97) 0%, rgba(2,5,9,.84) 36%, transparent 68%), linear-gradient(90deg, rgba(2,5,9,.91) 0%, rgba(2,5,9,.62) 46%, rgba(2,5,9,.34) 100%), linear-gradient(0deg, rgba(2,5,9,.84), transparent 38%, rgba(2,5,9,.42)); }
.hero-copy { position: relative; z-index: 2; max-width: 820px; }
.eyebrow, .section-number { margin: 0 0 24px; color: rgba(255,255,255,.5); font-size: 9px; font-weight: 600; letter-spacing: .35em; text-transform: uppercase; }
.hero-copy h2 { margin: 0; font-size: clamp(48px, 8.1vw, 126px); font-weight: 350; letter-spacing: .115em; line-height: .88; }
.hero-album { margin: 28px 0 0; font-size: clamp(20px, 3.2vw, 48px); letter-spacing: .46em; }
.hero-line { margin: 42px 0 0; max-width: 600px; color: rgba(255,255,255,.76); font-size: clamp(17px, 1.6vw, 24px); font-weight: 300; line-height: 1.65; }
.hero-cta { display: inline-flex; align-items: center; gap: 22px; margin-top: 46px; color: #fff; text-decoration: none; font-size: 10px; letter-spacing: .22em; text-transform: uppercase; }
.hero-cta b { font-size: 18px; font-weight: 300; animation: arrowDown 1.8s ease-in-out infinite; }
.hero-cover { position: relative; z-index: 9; width: min(38vw, 580px); margin: 0; justify-self: end; opacity: var(--hero-feedback-opacity, 1); box-shadow: 0 36px 100px rgba(0,0,0,.64), 0 0 0 1px rgba(255,255,255,.13); transform: translateZ(0) rotate(.5deg); will-change: opacity, transform; }
.hero-cover img { display: block; width: 100%; height: auto; }
.hero-cover figcaption, .gatefold-figure figcaption { display: flex; justify-content: space-between; gap: 20px; padding-top: 13px; color: rgba(255,255,255,.48); font-size: 8px; letter-spacing: .17em; }

.deep-forest-endorsement {
  --endorsement-scene-opacity: .04;
  --endorsement-copy-opacity: .06;
  --endorsement-copy-shift: 220px;
  --endorsement-copy-scale: .965;
  --endorsement-orbit-opacity: .12;
  --endorsement-kicker-opacity: 0;
  --endorsement-kicker-shift: 22px;
  --endorsement-title-opacity: 0;
  --endorsement-title-shift: 32px;
  --endorsement-title-scale-x: .82;
  --endorsement-name-opacity: 0;
  --endorsement-name-shift: 20px;
  --endorsement-quote-opacity: 0;
  --endorsement-quote-shift: 36px;
  --endorsement-card-rotate-x: 8.5deg;
  --endorsement-card-rotate-z: -.65deg;
  --endorsement-card-z: -180px;
  --editorial-card-opacity: 0;
  --editorial-card-shift: 420px;
  --editorial-card-scale: .93;
  --editorial-card-rotate-x: 8deg;
  --editorial-card-rotate-z: .5deg;
  --editorial-card-z: -150px;
  --editorial-kicker-opacity: 0;
  --editorial-kicker-shift: 18px;
  --editorial-title-opacity: 0;
  --editorial-title-shift: 28px;
  --editorial-brands-opacity: 0;
  --editorial-brands-shift: 24px;
  --editorial-quote-opacity: 0;
  --editorial-quote-shift: 32px;
  --editorial-animation-state: running;
  position: relative;
  z-index: 11;
  isolation: isolate;
  min-height: 280svh;
  margin-top: -30svh;
  background: transparent;
}
.endorsement-stage {
  position: sticky;
  top: 0;
  isolation: isolate;
  display: grid;
  place-items: start center;
  height: 100svh;
  padding: clamp(56px, 8svh, 76px) max(6vw, 28px) 70px;
  overflow: hidden;
  perspective: 1400px;
  background: transparent;
  text-align: center;
}
.endorsement-stage::before {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 0;
  width: min(72vw, 930px);
  aspect-ratio: 1;
  border: 1px solid rgba(255, 255, 255, .055);
  border-radius: 50%;
  content: "";
  opacity: var(--endorsement-orbit-opacity);
  transform: translate(-50%, -50%);
  box-shadow:
    0 0 0 9vw rgba(255, 255, 255, .012),
    0 0 110px rgba(220, 206, 171, .052),
    inset 0 0 90px rgba(235, 224, 196, .025);
}
.endorsement-stage::after {
  position: absolute;
  inset: 0;
  z-index: 0;
  content: "";
  background:
    radial-gradient(circle at 50% 47%, rgba(176, 158, 118, .105), transparent 28%),
    radial-gradient(circle at 50% 47%, rgba(255, 252, 237, .145) 0 .7px, transparent 1.25px) 0 0 / 10px 10px,
    linear-gradient(180deg, rgba(3, 7, 12, .16), rgba(5, 10, 16, .16) 48%, rgba(3, 7, 11, .16)),
    radial-gradient(ellipse at 50% 45%, transparent 0 18%, rgba(3, 7, 12, .12) 76%),
    linear-gradient(90deg, rgba(3, 7, 12, .15), transparent 20% 80%, rgba(3, 7, 12, .15));
  opacity: var(--endorsement-scene-opacity);
  pointer-events: none;
  will-change: opacity;
}
.endorsement-card-wrap { position: relative; z-index: 5; width: min(100%, 1080px); animation: endorsementFloat 6.4s ease-in-out infinite; will-change: transform; }
.endorsement-copy { position: relative; width: 100%; padding: 68px 72px; contain: layout paint; border: 1px solid rgba(244, 238, 218, .42); background: radial-gradient(circle, rgba(255,255,255,.026) 0 .7px, transparent 1.1px) 0 0/7px 7px, linear-gradient(145deg, rgba(13,19,26,.28), rgba(2,5,9,.39)); opacity: var(--endorsement-copy-opacity); transform: translate3d(0, var(--endorsement-copy-shift), var(--endorsement-card-z)) scale(var(--endorsement-copy-scale)) rotateX(var(--endorsement-card-rotate-x)) rotateZ(var(--endorsement-card-rotate-z)); transform-origin: center bottom; box-shadow: 0 2px 0 rgba(255,255,255,.12), 0 6px 0 rgba(0,0,0,.58), 0 20px 42px rgba(0,0,0,.3), 0 64px 140px rgba(0,0,0,.68), 0 0 0 10px rgba(255,248,226,.014), inset 0 0 90px rgba(210,196,160,.04); backface-visibility: hidden; will-change: opacity, transform; }
.editorial-endorsement-card {
  position: absolute;
  top: clamp(56px, 8svh, 76px);
  left: 50%;
  z-index: 7;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: min(calc(100% - max(12vw, 56px)), 980px);
  min-height: 390px;
  padding: 46px 58px 48px;
  border: 1px solid rgba(244, 238, 218, .26);
  background:
    radial-gradient(circle, rgba(255,255,255,.024) 0 .65px, transparent 1.05px) 0 0 / 7px 7px,
    linear-gradient(148deg, rgba(18, 22, 27, .34), rgba(4, 7, 11, .45));
  contain: layout paint;
  text-align: center;
  opacity: var(--editorial-card-opacity);
  transform: translate3d(-50%, var(--editorial-card-shift), var(--editorial-card-z)) scale(var(--editorial-card-scale)) rotateX(var(--editorial-card-rotate-x)) rotateZ(var(--editorial-card-rotate-z));
  transform-origin: center bottom;
  box-shadow:
    0 1px 0 rgba(255,255,255,.12),
    0 5px 0 rgba(0,0,0,.86),
    0 16px 34px rgba(0,0,0,.46),
    0 50px 110px rgba(0,0,0,.68),
    inset 0 0 72px rgba(215,201,169,.024);
  backface-visibility: hidden;
  animation: editorialFloat 8.8s cubic-bezier(.42, 0, .58, 1) infinite;
  animation-play-state: var(--editorial-animation-state);
  will-change: opacity, transform, translate;
}
.editorial-endorsement-card::before { position: absolute; inset: 8px; border: 1px solid rgba(247,241,222,.075); content: ""; pointer-events: none; }
.editorial-endorsement-card::after { position: absolute; top: -1px; left: 50%; width: 54px; height: 1px; content: ""; background: rgba(255,248,225,.82); transform: translateX(-50%); box-shadow: 0 0 14px rgba(255,246,216,.18); }
.editorial-endorsement-kicker { margin: 0 0 18px; color: rgba(255,255,255,.42); font-size: 9px; font-weight: 600; letter-spacing: .34em; text-indent: .34em; opacity: var(--editorial-kicker-opacity); transform: translate3d(0, var(--editorial-kicker-shift), 0); }
.editorial-endorsement-card h3 { margin: 0; font-family: "Arial Narrow", "Helvetica Neue Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: clamp(38px, 4.3vw, 60px); font-stretch: condensed; font-weight: 700; letter-spacing: .19em; line-height: .88; text-indent: .19em; opacity: var(--editorial-title-opacity); transform: translate3d(0, var(--editorial-title-shift), 0); }
.editorial-endorsement-alias { margin: 14px 0 0; color: rgba(255,255,255,.55); font-size: 10px; letter-spacing: .31em; text-indent: .31em; opacity: var(--editorial-title-opacity); transform: translate3d(0, var(--editorial-title-shift), 0); }
.editorial-endorsement-role { margin: 17px 0 0; color: rgba(255,255,255,.7); font-size: clamp(10px, 1vw, 12px); font-weight: 400; letter-spacing: .12em; opacity: var(--editorial-title-opacity); transform: translate3d(0, var(--editorial-title-shift), 0); }
.editorial-brand-strip { display: flex; align-items: center; justify-content: center; gap: clamp(18px, 3vw, 38px); width: min(100%, 690px); min-height: 42px; margin: 22px auto 0; padding: 13px 0 12px; border-top: 1px solid rgba(255,255,255,.095); border-bottom: 1px solid rgba(255,255,255,.095); color: rgba(255,255,255,.82); opacity: var(--editorial-brands-opacity); transform: translate3d(0, var(--editorial-brands-shift), 0); }
.editorial-brand-strip img { display: block; width: clamp(92px, 11vw, 128px); height: auto; opacity: .77; filter: grayscale(1) invert(1) brightness(1.16); }
.editorial-wordmark { display: inline-flex; align-items: baseline; white-space: nowrap; line-height: 1; }
.editorial-wordmark-djmag { font-family: Impact, "Arial Narrow", "Helvetica Neue Condensed", sans-serif; font-size: clamp(18px, 2.1vw, 27px); font-stretch: condensed; font-weight: 900; letter-spacing: -.045em; transform: skewX(-5deg); }
.editorial-wordmark-djmag b, .editorial-wordmark-djmag i { font: inherit; }
.editorial-wordmark-djmag i { margin-left: .08em; font-size: .68em; letter-spacing: -.035em; }
.editorial-wordmark-djmag::after { align-self: flex-end; margin: 0 0 .08em .42em; color: rgba(255,255,255,.48); content: "ES"; font-family: Arial, sans-serif; font-size: 6px; font-style: normal; font-weight: 700; letter-spacing: .12em; }
.editorial-wordmark-mixmag { font-family: Impact, "Arial Narrow", "Helvetica Neue Condensed", sans-serif; font-size: clamp(18px, 2.15vw, 28px); font-stretch: condensed; font-weight: 900; letter-spacing: -.025em; transform: skewX(-8deg) scaleX(.94); }
.editorial-wordmark-mixmag::after { align-self: flex-end; margin: 0 0 .07em .4em; color: rgba(255,255,255,.48); content: "SPAIN"; font-family: Arial, sans-serif; font-size: 6px; font-weight: 700; letter-spacing: .1em; transform: skewX(8deg); }
.deep-forest-endorsement .editorial-endorsement-card blockquote { max-width: 850px; margin: 22px auto 0; color: rgba(255,255,255,.94); font-size: clamp(22px, 2.55vw, 34px); font-weight: 300; letter-spacing: -.015em; line-height: 1.2; opacity: var(--editorial-quote-opacity); transform: translate3d(0, var(--editorial-quote-shift), 0); }
.endorsement-copy::before { position: absolute; inset: 10px; border: 1px solid rgba(247, 241, 222, .085); content: ""; pointer-events: none; }
.endorsement-copy::after { position: absolute; top: -1px; left: 50%; width: 74px; height: 1px; content: ""; background: rgba(255, 248, 225, .9); transform: translateX(-50%); box-shadow: 0 0 18px rgba(255, 246, 216, .22); }
.endorsement-kicker { margin: 0 0 40px; color: rgba(255, 255, 255, .58); font-size: clamp(19px, 2vw, 28px); font-weight: 500; letter-spacing: .38em; line-height: 1; text-indent: .38em; text-transform: uppercase; opacity: var(--endorsement-kicker-opacity); transform: translate3d(0, var(--endorsement-kicker-shift), 0); will-change: opacity, transform; }
.deep-forest-endorsement h2 { display: inline-block; margin: 0; font-family: "Arial Narrow", "Helvetica Neue Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: clamp(48px, 6.2vw, 90px); font-stretch: condensed; font-weight: 700; letter-spacing: .16em; line-height: .88; text-indent: .16em; text-shadow: 0 3px 20px rgba(0,0,0,.96), 0 0 34px rgba(255, 255, 255, .18); opacity: var(--endorsement-title-opacity); transform: translate3d(0, var(--endorsement-title-shift), 0) scaleX(var(--endorsement-title-scale-x)); will-change: opacity, transform; }
.endorsement-name { margin: 18px 0 0; color: rgba(255, 255, 255, .72); font-size: clamp(14px, 1.2vw, 18px); font-weight: 400; letter-spacing: .27em; text-indent: .27em; text-shadow: 0 2px 12px rgba(0,0,0,.96); opacity: var(--endorsement-name-opacity); transform: translate3d(0, var(--endorsement-name-shift), 0); will-change: opacity, transform; }
.deep-forest-endorsement blockquote { max-width: 990px; margin: 38px auto 0; color: rgba(255, 255, 255, .98); font-size: clamp(27px, 3.5vw, 50px); font-weight: 300; letter-spacing: -.018em; line-height: 1.23; text-shadow: 0 3px 18px rgba(0,0,0,.98); opacity: var(--endorsement-quote-opacity); transform: translate3d(0, var(--endorsement-quote-shift), 0); will-change: opacity, transform; }

.listening-room { position: relative; z-index: 4; margin-top: -48svh; padding: 90px max(6vw, 34px) 140px; background: radial-gradient(circle at 50% 20%, rgba(32,104,153,.14), transparent 31%), linear-gradient(180deg, rgba(4,8,13,0), #04080d 18svh, #04080d 100%); }
.listening-room::before { position: absolute; inset: 0; content: ""; background: radial-gradient(circle, rgba(255,255,255,.15) 0 .8px, transparent 1.3px) 0 0/11px 11px; opacity: .15; pointer-events: none; }
.section-heading { position: relative; z-index: 1; display: grid; grid-template-columns: .72fr 1.1fr 1fr; gap: 6vw; align-items: end; max-width: var(--max); margin: 0 auto 70px; }
.section-heading .section-number { align-self: start; }
.section-heading h2, .story-copy h2, .motivation-heading h2, .gatefold-heading h2, .mastering-section h2, .studio-section h2 { margin: 0; font-size: clamp(36px, 5vw, 72px); font-weight: 350; letter-spacing: -.025em; line-height: 1.02; }
.section-heading > p:last-child, .gatefold-heading > p:last-child { margin: 0; color: var(--muted); font-size: 16px; line-height: 1.75; }
.player-shell { position: relative; z-index: 2; max-width: var(--max); margin: 0 auto; padding: 54px; overflow: hidden; border: 1px solid rgba(255,255,255,.13); background: linear-gradient(135deg, rgba(9,22,34,.88), rgba(3,7,12,.86)); box-shadow: 0 30px 90px rgba(0,0,0,.4); }
.player-shell::after { position: absolute; inset: 0; content: ""; background: linear-gradient(90deg, transparent, rgba(255,255,255,.035), transparent); transform: translateX(-100%); animation: slowScan 9s ease-in-out infinite; pointer-events: none; }
.player-signal { position: absolute; top: 33px; right: 44px; display: flex; align-items: center; gap: 5px; height: 50px; opacity: .28; }
.player-signal i { display: block; width: 2px; height: var(--h, 15px); background: #fff; animation: signalIdle 2.2s ease-in-out infinite alternate; }
.player-signal i:nth-child(2n) { --h: 30px; animation-delay: -.5s; }.player-signal i:nth-child(3n) { --h: 42px; animation-delay: -1.1s; }.player-signal i:nth-child(5n) { --h: 22px; animation-delay: -.8s; }
.player-shell.is-playing .player-signal { opacity: .8; }.player-shell.is-playing .player-signal i { animation-duration: .45s; }
.player-now { max-width: 800px; }
.player-overline { display: flex; gap: 20px; align-items: center; margin: 0 0 22px; color: rgba(255,255,255,.43); font-size: 9px; letter-spacing: .26em; }
.player-overline span { color: var(--green); }.player-overline b { font-weight: 500; }
.player-now h3 { margin: 0; font-size: clamp(44px, 7vw, 100px); font-weight: 350; letter-spacing: .08em; line-height: .92; }
#player-version { margin: 18px 0 0; color: rgba(255,255,255,.55); font-size: 10px; letter-spacing: .22em; }
#player-story { margin: 32px 0 0; max-width: 660px; color: rgba(255,255,255,.7); font-size: 16px; line-height: 1.75; }
#press-player { display: none; }
.jd-player-transport { display: grid; grid-template-columns: 48px 45px minmax(120px,1fr) 45px; gap: 14px; align-items: center; margin-top: 48px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.11); }
.jd-player-toggle { appearance: none; width: 48px; height: 48px; display: grid; place-items: center; padding: 0; border: 1px solid var(--player-accent, var(--blue)); border-radius: 50%; background: var(--player-accent, var(--blue)); color: #031016; box-shadow: 0 0 22px rgba(44,183,255,.22); cursor: pointer; transition: transform .2s ease, box-shadow .2s ease, filter .2s ease; }
.jd-player-toggle:hover, .jd-player-toggle:focus-visible { outline: none; filter: brightness(1.12); box-shadow: 0 0 32px rgba(255,255,255,.2); transform: scale(1.04); }
.jd-player-toggle span { margin-left: 2px; font-size: 14px; }.player-shell.is-playing .jd-player-toggle span { margin-left: 0; }
.jd-player-transport > time { color: rgba(255,255,255,.54); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 9px; font-weight: 700; text-align: center; }
.jd-player-seek-wrap { position: relative; display: flex; align-items: center; min-width: 0; height: 48px; cursor: pointer; touch-action: none; -webkit-user-select: none; user-select: none; }
.jd-player-touch-seek { position: absolute; z-index: 5; inset: 0; display: none; width: 100%; height: 100%; margin: 0; opacity: .001; cursor: pointer; touch-action: none; }
@media (pointer: coarse) { .jd-player-touch-seek { display: block; } }
.jd-player-seek { --seek: 0%; position: relative; width: 100%; height: 48px; margin: 0; padding: 0; border: 0; background: transparent; cursor: pointer; }
.jd-player-seek::before { position: absolute; top: 22px; right: 0; left: 0; height: 3px; background: linear-gradient(90deg, var(--player-accent, var(--blue)) 0 var(--seek), rgba(255,255,255,.18) var(--seek) 100%); content: ""; }
.jd-player-seek::after { position: absolute; top: 15px; left: var(--seek); width: 17px; height: 17px; border: 3px solid #06101a; border-radius: 50%; background: var(--player-accent, var(--blue)); box-shadow: 0 0 0 1px rgba(255,255,255,.28), 0 0 16px rgba(44,183,255,.3); transform: translateX(-50%); content: ""; }
.jd-player-seek-zones { position: absolute; z-index: 2; inset: 0; display: grid; grid-template-columns: repeat(100,1fr); }.jd-player-seek-hit { display: block; min-width: 0; height: 100%; }
.jd-player-seek:focus-visible { outline: 1px solid var(--player-accent, var(--blue)); outline-offset: 1px; }
.visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
.quality-line { display: flex; flex-wrap: wrap; gap: 12px 30px; margin: 34px 0 0; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.09); color: rgba(255,255,255,.34); font-size: 8px; letter-spacing: .16em; }
.track-list { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(3, 1fr); max-width: var(--max); margin: 28px auto 0; border-left: 1px solid rgba(255,255,255,.11); }
.track-card { position: relative; display: grid; grid-template-columns: 44px 34px 1fr; gap: 16px; min-height: 190px; padding: 30px; border: 0; border-right: 1px solid rgba(255,255,255,.11); border-bottom: 1px solid rgba(255,255,255,.11); background: rgba(255,255,255,.015); color: #fff; text-align: left; cursor: pointer; transition: background .25s ease; }
.track-card:hover, .track-card.is-active { background: rgba(255,255,255,.055); }
.track-card.is-active::before { position: absolute; top: 0; left: 0; right: 0; height: 2px; content: ""; background: currentColor; box-shadow: 0 0 16px currentColor; }
.track-index { color: rgba(255,255,255,.43); font-size: 10px; letter-spacing: .1em; }
.track-route { width: 25px; height: 2px; margin-top: 6px; background: currentColor; box-shadow: 0 0 9px currentColor; }
.track-copy { display: flex; flex-direction: column; }.track-copy b { font-size: 14px; font-weight: 500; letter-spacing: .08em; }.track-copy small { margin-top: 9px; color: rgba(255,255,255,.45); font-size: 8px; letter-spacing: .13em; }.track-copy em { margin-top: 25px; color: rgba(255,255,255,.62); font-size: 12px; font-style: normal; line-height: 1.6; }

.album-programme { position: relative; z-index: 2; max-width: var(--max); margin: 96px auto 0; padding: clamp(38px, 5vw, 72px); scroll-margin-top: 92px; border: 1px solid rgba(255,255,255,.13); background: linear-gradient(145deg, rgba(11,24,34,.86), rgba(3,8,13,.96)); box-shadow: 0 32px 100px rgba(0,0,0,.34); }
.album-programme::before { position: absolute; top: 0; left: 0; width: 58%; height: 1px; content: ""; background: linear-gradient(90deg, var(--green), var(--blue), transparent); box-shadow: 0 0 18px rgba(85,245,195,.26); }
.album-programme-head { display: grid; grid-template-columns: minmax(190px,.52fr) minmax(0,1.48fr); gap: clamp(34px, 6vw, 98px); align-items: start; }
.album-programme-kicker { margin: 5px 0 0; color: rgba(85,245,195,.82); font-size: 9px; font-weight: 600; letter-spacing: .23em; line-height: 1.7; text-transform: uppercase; }
.album-programme-head h3 { margin: 0; font-size: clamp(32px, 4.3vw, 64px); font-weight: 330; letter-spacing: -.03em; line-height: 1.02; }
.album-programme-head div > p { max-width: 720px; margin: 24px 0 0; color: rgba(255,255,255,.62); font-size: 15px; line-height: 1.78; }
.album-tracklist { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); margin: 58px 0 0; padding: 0; border-top: 1px solid rgba(255,255,255,.11); border-left: 1px solid rgba(255,255,255,.11); list-style: none; counter-reset: none; }
.album-tracklist li { position: relative; display: grid; grid-template-columns: 42px minmax(0,1fr) auto; gap: 18px; align-items: center; min-height: 112px; padding: 24px 26px; border-right: 1px solid rgba(255,255,255,.11); border-bottom: 1px solid rgba(255,255,255,.11); background: rgba(255,255,255,.012); }
.album-tracklist li.is-preview { background: linear-gradient(90deg, rgba(85,245,195,.055), rgba(255,255,255,.012) 46%); }
.album-tracklist li.is-preview::before { position: absolute; top: 50%; left: -4px; width: 7px; height: 7px; content: ""; border-radius: 50%; background: var(--green); box-shadow: 0 0 16px rgba(85,245,195,.9); transform: translateY(-50%); }
.album-track-number { color: rgba(255,255,255,.32); font-size: 10px; letter-spacing: .14em; }
.album-track-copy { display: flex; min-width: 0; flex-direction: column; }
.album-track-copy b { overflow-wrap: anywhere; font-size: 14px; font-weight: 520; letter-spacing: .075em; line-height: 1.35; }
.album-track-copy small { margin-top: 8px; color: rgba(255,255,255,.42); font-size: 8px; letter-spacing: .16em; line-height: 1.45; }
.album-tracklist time { color: rgba(255,255,255,.55); font-size: 10px; font-variant-numeric: tabular-nums; letter-spacing: .12em; }
.album-programme-note { max-width: 790px; margin: 30px 0 0 auto; color: rgba(255,255,255,.4); font-size: 10px; letter-spacing: .08em; line-height: 1.75; text-align: right; text-transform: uppercase; }

.chapter-panel {
  --chapter-page-opacity: .18;
  --chapter-page-shift: 72px;
  --chapter-page-scale: .986;
  --chapter-seam-opacity: .12;
  --chapter-content-opacity: .12;
  --chapter-content-shift: 48px;
  --chapter-content-blur: 1.6px;
  position: relative;
  margin-top: -14svh;
  opacity: var(--chapter-page-opacity);
  transform: translate3d(0, var(--chapter-page-shift), 0) scale(var(--chapter-page-scale));
  transform-origin: 50% 0;
  -webkit-mask-image: linear-gradient(180deg, transparent 0, rgba(0,0,0,.28) 3svh, rgba(0,0,0,.78) 8svh, #000 15svh, #000 100%);
  mask-image: linear-gradient(180deg, transparent 0, rgba(0,0,0,.28) 3svh, rgba(0,0,0,.78) 8svh, #000 15svh, #000 100%);
  will-change: opacity, transform;
}
.chapter-panel::before { position: absolute; inset: 0 0 auto; z-index: 3; height: 18svh; content: ""; pointer-events: none; background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(117,176,196,.025) 36%, transparent 100%); opacity: var(--chapter-seam-opacity); }
.chapter-panel > :not(.press-note-sa) { position: relative; z-index: 2; opacity: var(--chapter-content-opacity); filter: blur(var(--chapter-content-blur)); transform: translate3d(0, var(--chapter-content-shift), 0); will-change: opacity, filter, transform; }
.listening-room.chapter-panel { margin-top: -48svh; -webkit-mask-image: linear-gradient(180deg, transparent 0, rgba(0,0,0,.55) 2svh, #000 9svh, #000 100%); mask-image: linear-gradient(180deg, transparent 0, rgba(0,0,0,.55) 2svh, #000 9svh, #000 100%); }
.listening-room.chapter-panel::before { background: linear-gradient(180deg, rgba(62,158,194,.13), rgba(4,8,13,.035) 46%, transparent 100%); }
.story-section { z-index: 5; }
.motivation-section { z-index: 6; }
.gatefold-section { z-index: 7; }
.mastering-section { z-index: 8; }
.studio-section { z-index: 9; }
.press-note { z-index: 10; }
.journal-portal { z-index: 11; }

.story-section { display: grid; grid-template-columns: minmax(300px, .82fr) minmax(0, 1.18fr); align-items: stretch; min-height: 920px; background: #07080a; }
.story-visual { position: relative; min-height: 760px; overflow: hidden; }.story-visual::after { position: absolute; inset: 0; content: ""; background: linear-gradient(90deg, transparent 55%, #07080a), linear-gradient(180deg, rgba(2,5,9,.42), transparent 30%), linear-gradient(0deg, rgba(2,5,9,.8), transparent 42%); }
.story-visual img { width: 100%; height: 100%; object-fit: cover; object-position: center 67%; image-rendering: auto; }.story-visual p { position: absolute; left: 40px; bottom: 38px; z-index: 2; margin: 0; font-size: 8px; letter-spacing: .25em; }
.story-copy { align-self: center; max-width: 780px; padding: 100px max(7vw, 54px); }
.story-copy > p:not(.section-number) { margin: 35px 0 0; color: var(--muted); font-size: clamp(16px, 1.35vw, 20px); line-height: 1.85; }
.story-copy blockquote { margin: 52px 0 0; padding: 30px 0 30px 30px; border-left: 2px solid var(--blue); color: rgba(255,255,255,.9); font-size: clamp(20px, 2.1vw, 32px); font-weight: 300; line-height: 1.5; }

.motivation-section { padding: 122px max(6vw, 34px); background: linear-gradient(180deg, #07080a, #05090e); }
.motivation-heading { max-width: var(--max); margin: 0 auto 75px; }
.motivation-grid { display: grid; grid-template-columns: repeat(3, 1fr); max-width: var(--max); margin: 0 auto; border-top: 1px solid rgba(255,255,255,.14); border-left: 1px solid rgba(255,255,255,.14); }
.motivation-grid article { min-height: 390px; padding: 40px; border-right: 1px solid rgba(255,255,255,.14); border-bottom: 1px solid rgba(255,255,255,.14); background: rgba(255,255,255,.012); }
.motivation-grid span { color: var(--green); font-size: 9px; letter-spacing: .22em; }.motivation-grid h3 { margin: 55px 0 0; font-size: 25px; font-weight: 400; }.motivation-grid p { margin: 28px 0 0; color: var(--muted); font-size: 14px; line-height: 1.8; }

.gatefold-section { padding: 120px max(3vw, 18px); background: #020509; }
.gatefold-heading { display: grid; grid-template-columns: .55fr 1.1fr .9fr; gap: 5vw; align-items: end; max-width: var(--max); margin: 0 auto 68px; }
.gatefold-title-group { align-self: end; }
.gatefold-kicker { margin: 0 0 20px; color: rgba(91,225,221,.75); font-size: 8px; font-weight: 600; letter-spacing: .28em; text-transform: uppercase; }
.gatefold-figure { max-width: 1680px; margin: 0 auto; }.gatefold-figure img { display: block; width: 100%; height: auto; border: 1px solid rgba(255,255,255,.11); box-shadow: 0 30px 110px rgba(0,0,0,.65); }
.object-intention {
  position: relative;
  display: grid;
  grid-template-columns: minmax(260px,.72fr) minmax(0,1.28fr);
  gap: 5vw;
  max-width: 1680px;
  margin: 46px auto 0;
  padding: clamp(42px,5vw,76px);
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(circle at 14% 18%, rgba(62,184,191,.13), transparent 29%),
    linear-gradient(135deg, rgba(12,25,34,.92), rgba(3,7,11,.97));
  box-shadow: 0 28px 90px rgba(0,0,0,.38);
}
.object-intention::before { position: absolute; top: 0; left: 0; width: 68%; height: 1px; content: ""; background: linear-gradient(90deg, var(--green), rgba(67,177,255,.7), transparent); box-shadow: 0 0 18px rgba(85,245,195,.32); }
.object-intention::after { position: absolute; top: -34px; right: 1.5%; content: "002"; color: rgba(255,255,255,.018); font-size: clamp(150px,24vw,390px); font-weight: 300; letter-spacing: -.09em; line-height: .8; pointer-events: none; }
.object-intention-heading, .object-intention-copy, .object-path { position: relative; z-index: 1; }
.object-intention-heading > p { margin: 0 0 28px; color: rgba(255,255,255,.46); font-size: 8px; font-weight: 600; letter-spacing: .3em; text-transform: uppercase; }
.object-intention-heading h3 { max-width: 570px; margin: 0; font-size: clamp(30px,3.6vw,58px); font-weight: 320; letter-spacing: -.025em; line-height: 1.08; }
.object-intention-copy { align-self: end; max-width: 830px; margin: 0; color: rgba(255,255,255,.72); font-size: clamp(15px,1.25vw,19px); font-weight: 300; line-height: 1.85; }
.object-path { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3,1fr); margin-top: 18px; border-top: 1px solid rgba(255,255,255,.13); border-bottom: 1px solid rgba(255,255,255,.08); }
.object-path div { min-height: 118px; padding: 28px 30px 26px 0; border-right: 1px solid rgba(255,255,255,.1); }
.object-path div + div { padding-left: 30px; }
.object-path div:last-child { border-right: 0; }
.object-path span, .object-path strong { display: block; }
.object-path span { color: rgba(85,245,195,.66); font-size: 8px; letter-spacing: .23em; }
.object-path strong { margin-top: 22px; color: rgba(255,255,255,.84); font-size: 10px; font-weight: 500; letter-spacing: .16em; line-height: 1.55; }
.object-partner-link { display: block; width: fit-content; margin-top: 18px; border-radius: 2px; }
.object-partner-logo { display: block; width: auto; max-width: 178px; height: 27px; object-fit: contain; object-position: left center; opacity: .78; transition: opacity .25s ease, filter .25s ease; }
.object-partner-logo--metropolis { filter: drop-shadow(0 0 14px rgba(255,255,255,.05)); }
.object-partner-link:hover .object-partner-logo { opacity: 1; filter: drop-shadow(0 0 17px rgba(255,255,255,.14)); }
.object-partner-link:focus-visible { outline: 1px solid rgba(255,255,255,.75); outline-offset: 7px; }

.mastering-section { display: grid; grid-template-columns: .75fr 1.25fr; gap: 8vw; align-items: center; padding: 125px max(8vw, 40px); background: radial-gradient(circle at 25% 50%, rgba(30,115,144,.14), transparent 30%), #070b0e; }
.mastering-mark { position: relative; display: grid; place-items: center; justify-self: center; width: min(38vw, 460px); aspect-ratio: 1; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; box-shadow: inset 0 0 0 18px #070b0e, inset 0 0 0 19px rgba(255,255,255,.11), 0 0 80px rgba(61,170,183,.09); }
.mastering-mark::before, .mastering-mark::after { position: absolute; content: ""; background: rgba(255,255,255,.12); }.mastering-mark::before { width: 1px; height: 118%; }.mastering-mark::after { width: 118%; height: 1px; }
.mastering-mark span { position: absolute; top: 28%; font-size: 9px; letter-spacing: .36em; }.mastering-logo-link { position: relative; z-index: 2; display: block; width: 66%; border-radius: 2px; transition: filter .25s ease, transform .25s ease; }.mastering-logo-link img { display: block; width: 100%; height: auto; filter: drop-shadow(0 0 22px rgba(255,255,255,.08)); }.mastering-logo-link:hover { transform: scale(1.018); filter: brightness(1.12) drop-shadow(0 0 14px rgba(255,255,255,.08)); }.mastering-logo-link:focus-visible { outline: 1px solid rgba(255,255,255,.8); outline-offset: 8px; }.mastering-mark i { position: absolute; bottom: 25%; font-size: 9px; font-style: normal; letter-spacing: .28em; }
.mastering-section article { max-width: 760px; }.mastering-lead { margin: 42px 0 0; color: rgba(255,255,255,.92); font-size: clamp(20px, 2vw, 29px); font-weight: 300; line-height: 1.6; }.mastering-section article > p:last-child { margin: 30px 0 0; color: var(--muted); font-size: 15px; line-height: 1.85; }

.studio-section { display: grid; grid-template-columns: .85fr 1.15fr; gap: 8vw; padding: 120px max(8vw, 40px); background: #050608; }
.studio-section > div > p:last-child { max-width: 620px; margin: 36px 0 0; color: var(--muted); font-size: 15px; line-height: 1.85; }.gear-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(255,255,255,.15); }.gear-list li { display: grid; grid-template-columns: .8fr 1.2fr; gap: 30px; padding: 25px 0; border-bottom: 1px solid rgba(255,255,255,.15); }.gear-list span { color: rgba(255,255,255,.44); font-size: 9px; letter-spacing: .17em; }.gear-list b { font-size: 11px; font-weight: 500; letter-spacing: .14em; }

.press-note { position: relative; display: grid; place-items: center; min-height: 500px; padding: 88px 30px; overflow: hidden; background: radial-gradient(circle at 50% 50%, rgba(77,92,169,.13), transparent 30%), #020407; text-align: center; }.press-note-sa { position: absolute; top: 50%; left: 50%; width: 410px; aspect-ratio: .78; transform: translate(-50%,-50%); background: radial-gradient(circle, rgba(200,205,247,.6) 0 .8px, transparent 1.2px) 0 0/6px 6px; -webkit-mask: url('/assets/logo_mark_512.png') center/contain no-repeat; mask: url('/assets/logo_mark_512.png') center/contain no-repeat; opacity: .13; }.press-note p { position: relative; max-width: 780px; margin: 0; color: rgba(255,255,255,.74); font-size: 16px; line-height: 1.85; }.press-note button { position: relative; margin-top: 42px; padding: 16px 24px; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; background: rgba(255,255,255,.03); color: #fff; cursor: pointer; font-size: 9px; letter-spacing: .18em; text-transform: uppercase; }
.journal-portal { position: relative; display: grid; place-items: center; min-height: 82svh; padding: 120px max(7vw, 34px); overflow: hidden; background: radial-gradient(circle at 77% 24%, rgba(255,92,24,.12), transparent 24%), radial-gradient(circle at 18% 74%, rgba(57,156,194,.09), transparent 27%), #030405; }
.journal-portal::after { position: absolute; inset: 14% 5% 8% auto; width: min(46vw, 640px); content: ""; background: radial-gradient(circle, rgba(255,255,255,.7) 0 .7px, transparent 1px) 0 0/6px 6px; -webkit-mask: url('/assets/logo_mark_512.png') center/contain no-repeat; mask: url('/assets/logo_mark_512.png') center/contain no-repeat; opacity: .045; pointer-events: none; }
.journal-portal-backdrop { position: absolute !important; inset: 50% -7vw auto; z-index: 1 !important; height: 1px; background: linear-gradient(90deg, transparent 0, rgba(44,183,255,.48) 10%, rgba(44,183,255,.48) 35%, rgba(85,245,195,.48) 35%, rgba(85,245,195,.48) 64%, rgba(255,81,73,.52) 64%, rgba(255,81,73,.52) 90%, transparent 100%); box-shadow: 0 0 18px rgba(100,188,205,.14); opacity: calc(var(--chapter-content-opacity) * .58) !important; filter: none !important; transform: none !important; }
.journal-portal-backdrop::before, .journal-portal-backdrop::after { position: absolute; top: 50%; width: 9px; aspect-ratio: 1; border-radius: 50%; content: ""; transform: translateY(-50%); }
.journal-portal-backdrop::before { left: 18%; background: #2cb7ff; box-shadow: 0 0 18px rgba(44,183,255,.82), 25vw 0 0 #55f5c3, 25vw 0 18px rgba(85,245,195,.74); }
.journal-portal-backdrop::after { right: 17%; background: #ff5149; box-shadow: 0 0 18px rgba(255,81,73,.82); }
.journal-portal-copy { width: min(1160px, 100%); }
.journal-portal-kicker { margin: 0 0 42px; color: rgba(255,118,58,.84); font-size: 9px; letter-spacing: .38em; text-indent: .38em; }
.journal-portal-mark { width: 48px; aspect-ratio: .78; margin: 0 0 34px; background: rgba(255,255,255,.86); -webkit-mask: url('/assets/logo_mark_512.png') center/contain no-repeat; mask: url('/assets/logo_mark_512.png') center/contain no-repeat; filter: drop-shadow(0 0 18px rgba(255,255,255,.12)); }
.journal-portal h2 { margin: 0; font-size: clamp(82px, 18vw, 255px); font-weight: 250; letter-spacing: -.055em; line-height: .72; }
.journal-portal-intro { max-width: 640px; margin: clamp(64px, 9vw, 112px) 0 0; color: rgba(255,255,255,.64); font-size: clamp(16px, 1.3vw, 20px); font-weight: 300; line-height: 1.75; }
.journal-portal-link { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 36px; width: min(780px, 100%); margin-top: 48px; padding: 23px 26px 22px; border: 1px solid rgba(255,255,255,.2); background: rgba(255,255,255,.025); color: #fff; text-decoration: none; transition: border-color .35s ease, background .35s ease, transform .35s ease; }
.journal-portal-link span { font-size: 9px; letter-spacing: .25em; }
.journal-portal-link b { color: rgba(255,255,255,.26); font-size: 22px; font-weight: 300; letter-spacing: .1em; }
.journal-portal-link:hover { border-color: rgba(255,112,48,.7); background: rgba(255,92,24,.075); transform: translateY(-3px); }
.journal-portal-link:focus-visible { outline: 1px solid #fff; outline-offset: 6px; }
footer { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 30px; min-height: 130px; padding: 30px max(6vw, 30px); border-top: 1px solid rgba(255,255,255,.11); color: rgba(255,255,255,.42); font-size: 8px; letter-spacing: .2em; } footer p { margin: 0; } footer p:nth-child(2) { text-align: center; } footer a { justify-self: end; text-decoration: none; }

@keyframes routeDraw { to { stroke-dashoffset: 0; filter: drop-shadow(0 0 8px currentColor); } }
@keyframes routeRedDraw {
  0% { stroke-dashoffset: 1; filter: drop-shadow(0 0 1px currentColor); }
  18% { stroke-dashoffset: .95; }
  48% { stroke-dashoffset: .58; }
  72% { stroke-dashoffset: .39; }
  100% { stroke-dashoffset: 0; filter: drop-shadow(0 0 11px currentColor); }
}
@keyframes redFinalSignal {
  0% { opacity: 0; transform: scale(.2); filter: drop-shadow(0 0 0 rgba(255,81,73,0)); }
  28% { opacity: 1; transform: scale(1.65); filter: drop-shadow(0 0 20px rgba(255,81,73,.95)); }
  48% { opacity: .38; transform: scale(.72); }
  72% { opacity: 1; transform: scale(1.25); filter: drop-shadow(0 0 26px rgba(255,81,73,1)); }
  100% { opacity: 1; transform: scale(1); filter: drop-shadow(0 0 15px rgba(255,81,73,.9)); }
}
@keyframes networkYield {
  0%, 87.5% { opacity: .94; filter: brightness(1); }
  90.5% { opacity: .74; filter: brightness(.76); }
  100% { opacity: .74; filter: brightness(.76); }
}
@keyframes stationWake { 0% { opacity: 0; transform: scale(.25); transform-origin: center; } 70% { opacity: 1; transform: scale(1.5); } 100% { opacity: 1; transform: scale(1); } }
@keyframes stationBreath { 0%,100% { opacity: .7; } 50% { opacity: 1; filter: drop-shadow(0 0 17px currentColor); } }
@keyframes emblemGather {
  0% {
    opacity: 0;
    transform: translate(-50%,-46%) scale(.045);
    filter: blur(18px) brightness(.28) contrast(.72) drop-shadow(0 0 2px rgba(101,110,211,0));
  }
  12% {
    opacity: .018;
    transform: translate(-50%,-46%) scale(.075);
    filter: blur(16px) brightness(.34) contrast(.76) drop-shadow(0 0 4px rgba(101,110,211,.035));
  }
  28% {
    opacity: .055;
    transform: translate(-50%,-46%) scale(.15);
    filter: blur(13px) brightness(.43) contrast(.8) drop-shadow(0 0 7px rgba(101,110,211,.07));
  }
  46% {
    opacity: .14;
    transform: translate(-50%,-46%) scale(.3);
    filter: blur(9px) brightness(.57) contrast(.86) drop-shadow(0 0 12px rgba(101,110,211,.12));
  }
  64% {
    opacity: .3;
    transform: translate(-50%,-46%) scale(.53);
    filter: blur(5.5px) brightness(.73) contrast(.92) drop-shadow(0 0 19px rgba(101,110,211,.18));
  }
  82% {
    opacity: .52;
    transform: translate(-50%,-46%) scale(.8);
    filter: blur(2.2px) brightness(.91) contrast(.98) drop-shadow(0 0 28px rgba(101,110,211,.25));
  }
  100% {
    opacity: .74;
    transform: translate(-50%,-46%) scale(1);
    filter: blur(0) brightness(1.08) contrast(1.03) drop-shadow(0 0 38px rgba(101,110,211,.32));
  }
}
@keyframes copyDissolve {
  0% { opacity: 1; transform: scale(1); filter: blur(0); }
  24% { opacity: .94; transform: scale(.998); filter: blur(.15px); }
  52% { opacity: .68; transform: scale(.993); filter: blur(1px); }
  76% { opacity: .31; transform: scale(.986); filter: blur(3.2px); }
  100% { opacity: 0; transform: scale(.98); filter: blur(7px); }
}
@keyframes enterPulse { to { box-shadow: 0 0 0 18px rgba(76,226,222,0); } }
@keyframes starDrift { to { transform: scale(1.1) translate3d(1.2%, -.7%, 0); } }
@keyframes arrowDown { 50% { transform: translateY(6px); } }
@keyframes slowScan { 0%,35% { transform: translateX(-100%); } 65%,100% { transform: translateX(100%); } }
@keyframes signalIdle { from { transform: scaleY(.4); } to { transform: scaleY(1); } }
@keyframes endorsementFloat { 0%,100% { transform: translate3d(0, 0, 0); } 50% { transform: translate3d(0, -7px, 0); } }
@keyframes editorialFloat { 0%,100% { translate: 0 0; } 50% { translate: 0 -9px; } }

@media (max-width: 900px) {
  .private-header { grid-template-columns: 1fr auto; min-height: 64px; padding-inline: 20px; }.confidential { display: none; }
  .hero { grid-template-columns: 1fr; align-content: center; padding-top: 110px; }.hero-cover { width: min(67vw, 480px); margin-top: 48px; justify-self: center; }.hero-vignette { background: linear-gradient(0deg, rgba(2,5,9,.95), rgba(2,5,9,.48) 68%, rgba(2,5,9,.68)); }.hero-copy { text-align: center; }.hero-line { margin-inline: auto; }.hero-cta { justify-content: center; }
  .deep-forest-endorsement { min-height: 275svh; margin-top: -26svh; }.endorsement-card-wrap { width: min(100%, 760px); }.endorsement-copy { padding-inline: 52px; }.endorsement-kicker { font-size: clamp(19px, 3.5vw, 27px); }.deep-forest-endorsement h2 { font-size: clamp(43px, 7.8vw, 68px); }.editorial-endorsement-card { top: clamp(56px, 8svh, 72px); width: min(calc(100% - 48px), 760px); min-height: 380px; padding-inline: 44px; }
  .listening-room { padding-top: 85px; }
  .section-heading, .gatefold-heading { grid-template-columns: 1fr; gap: 24px; }.section-heading .section-number { margin-bottom: 5px; }.object-intention { grid-template-columns: 1fr; }.object-path { margin-top: 8px; }
  .track-list { grid-template-columns: 1fr; border-top: 1px solid rgba(255,255,255,.11); }.track-card { min-height: 154px; border-left: 0; }
  .album-programme-head { grid-template-columns: 1fr; gap: 22px; }.album-tracklist { grid-template-columns: 1fr; }.album-programme-note { margin-left: 0; text-align: left; }
  .story-section { grid-template-columns: 1fr; }.story-visual { min-height: 0; aspect-ratio: 9 / 16; }.story-visual img { object-fit: contain; object-position: center; }.story-visual::after { background: linear-gradient(180deg, rgba(2,5,9,.48), transparent 29%), linear-gradient(0deg, #07080a, transparent 19%); }.story-copy { padding: 90px 32px; }
  .motivation-grid { grid-template-columns: 1fr; }.motivation-grid article { min-height: 300px; }
  .mastering-section, .studio-section { grid-template-columns: 1fr; }.mastering-mark { width: min(75vw, 440px); margin-bottom: 40px; }.mastering-section article { max-width: none; }
  .journal-portal { min-height: 72svh; }.journal-portal::after { width: min(62vw, 520px); }.journal-portal h2 { font-size: clamp(78px, 19vw, 170px); }.journal-portal-intro { margin-top: 72px; }
  footer { grid-template-columns: 1fr; text-align: center; } footer a { justify-self: center; }
}

@media (max-width: 560px) {
  .brand-link span { display: none; }.language-switch { gap: 6px; }
  .ceremony-label { margin-bottom: 26px; letter-spacing: .25em; }.ceremony-copy h1 { font-size: 37px; letter-spacing: .11em; }.ceremony-album { font-size: 15px; letter-spacing: .35em; }.ceremony-release { font-size: 8px; letter-spacing: .2em; }.ceremony-promise { padding-inline: 20px; }.enter-button { min-height: 50px; padding-inline: 18px; font-size: 9px; letter-spacing: .13em; }
  .ceremony-sa { width: 76vw; }.ceremony-network { width: 180%; left: -40%; }
  .hero { padding-inline: 22px; }.hero-copy h2 { font-size: 44px; letter-spacing: .08em; }.hero-album { font-size: 19px; letter-spacing: .32em; }.hero-cover { width: 78vw; }
  .deep-forest-endorsement { min-height: 320svh; margin-top: -22svh; }.endorsement-stage { padding: 58px 22px 82px; }.endorsement-stage::before { width: 115vw; }.endorsement-card-wrap { width: 100%; }.endorsement-copy { padding: 48px 26px; }.endorsement-kicker { margin-bottom: 34px; font-size: clamp(18px, 6vw, 24px); letter-spacing: .25em; text-indent: .25em; }.deep-forest-endorsement h2 { font-size: clamp(36px, 10vw, 48px); letter-spacing: .16em; text-indent: .16em; }.endorsement-name { margin-top: 15px; font-size: 13px; letter-spacing: .2em; text-indent: .2em; }.deep-forest-endorsement blockquote { margin-top: 32px; font-size: clamp(24px, 7.5vw, 34px); }.editorial-endorsement-card { top: 58px; width: calc(100% - 34px); min-height: 410px; padding: 34px 22px 36px; }.editorial-brand-strip { gap: 15px; margin-top: 22px; padding-block: 11px 10px; }.editorial-brand-strip img { width: 83px; }.editorial-wordmark-djmag, .editorial-wordmark-mixmag { font-size: 19px; }.deep-forest-endorsement .editorial-endorsement-card blockquote { margin-top: 22px; font-size: clamp(22px, 6.5vw, 29px); }
  .listening-room { margin-top: -14svh; }.listening-room, .motivation-section { padding: 100px 20px; }.player-shell { padding: 34px 24px; }.player-signal { display: none; }.player-now h3 { font-size: 41px; }.jd-player-transport { grid-template-columns: 44px 36px minmax(72px,1fr) 36px; gap: 7px; margin-top: 38px; }.jd-player-toggle { width: 44px; height: 44px; }.jd-player-seek-wrap { height: 100px; margin: -18px 0; }.jd-player-seek { height: 100px; }.jd-player-seek::before { top: 48px; }.jd-player-seek::after { top: 40px; width: 20px; height: 20px; }.quality-line { display: grid; gap: 8px; }.track-card { grid-template-columns: 34px 22px 1fr; gap: 10px; padding: 25px 18px; }
  .album-programme { margin-top: 64px; padding: 36px 19px; }.album-programme-head h3 { font-size: 34px; }.album-tracklist { margin-top: 38px; }.album-tracklist li { grid-template-columns: 30px minmax(0,1fr) auto; gap: 11px; min-height: 96px; padding: 20px 14px; }.album-track-copy b { font-size: 12px; letter-spacing: .055em; }.album-track-copy small { font-size: 7px; }.album-tracklist time { min-width: 31px; margin-right: 36px; font-size: 9px; text-align: right; }
  .chapter-panel { margin-top: -8svh; -webkit-mask-image: linear-gradient(180deg, transparent 0, rgba(0,0,0,.32) 2.5svh, rgba(0,0,0,.8) 5svh, #000 10svh, #000 100%); mask-image: linear-gradient(180deg, transparent 0, rgba(0,0,0,.32) 2.5svh, rgba(0,0,0,.8) 5svh, #000 10svh, #000 100%); }
  .listening-room.chapter-panel { margin-top: -40svh; }
  .story-copy blockquote { padding-left: 20px; }.gatefold-section { padding: 90px 12px; }.gatefold-figure figcaption { display: grid; padding-inline: 3px; }.object-intention { gap: 34px; margin-top: 32px; padding: 38px 25px; }.object-intention::after { top: 12px; right: 5%; font-size: 145px; }.object-path { grid-template-columns: 1fr; }.object-path div, .object-path div + div { min-height: 0; padding: 24px 0; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.09); }.object-path div:last-child { border-bottom: 0; }
  .mastering-section, .studio-section { padding: 105px 24px; }.gear-list li { grid-template-columns: 1fr; gap: 8px; }.press-note-sa { width: 76vw; }
  .journal-portal { min-height: 680px; padding: 100px 22px 86px; }.journal-portal::after { inset: 18% -8% 12% auto; width: 88vw; }.journal-portal-kicker { margin-bottom: 28px; font-size: 8px; line-height: 1.7; }.journal-portal-mark { width: 42px; margin-bottom: 28px; }.journal-portal h2 { font-size: clamp(58px, 17vw, 76px); letter-spacing: -.065em; line-height: .78; }.journal-portal-intro { margin-top: 72px; font-size: 15px; }.journal-portal-link { grid-template-columns: 1fr; gap: 14px; margin-top: 38px; padding: 20px; }.journal-portal-link span { font-size: 8px; line-height: 1.7; }.journal-portal-link b { justify-self: end; font-size: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
  .deep-forest-endorsement { min-height: auto; }
  .deep-forest-endorsement { --endorsement-scene-opacity: 1; --endorsement-copy-opacity: 1; --endorsement-copy-shift: 0px; --endorsement-copy-scale: 1; --endorsement-orbit-opacity: .55; --endorsement-kicker-opacity: 1; --endorsement-kicker-shift: 0px; --endorsement-title-opacity: 1; --endorsement-title-shift: 0px; --endorsement-title-scale-x: .9; --endorsement-name-opacity: 1; --endorsement-name-shift: 0px; --endorsement-quote-opacity: 1; --endorsement-quote-shift: 0px; --endorsement-card-rotate-x: 0deg; --endorsement-card-rotate-z: 0deg; --endorsement-card-z: 30px; --editorial-kicker-opacity: 1; --editorial-kicker-shift: 0px; --editorial-title-opacity: 1; --editorial-title-shift: 0px; --editorial-brands-opacity: 1; --editorial-brands-shift: 0px; --editorial-quote-opacity: 1; --editorial-quote-shift: 0px; margin-top: 0; }
  .endorsement-card-wrap { animation: none; }
  .endorsement-stage { position: relative; display: block; min-height: 720px; height: auto; }
  .editorial-endorsement-card { position: relative; top: auto; left: auto; width: min(100%, 760px); margin: 28px auto 0; opacity: 1; filter: none; animation: none; translate: none; transform: none; }
  .listening-room { margin-top: 0; }
  .chapter-panel { --chapter-page-opacity: 1; --chapter-page-shift: 0px; --chapter-page-scale: 1; --chapter-seam-opacity: 0; --chapter-content-opacity: 1; --chapter-content-shift: 0px; --chapter-content-blur: 0px; margin-top: 0; opacity: 1; transform: none; -webkit-mask-image: none; mask-image: none; }
  .listening-room.chapter-panel { margin-top: 0; -webkit-mask-image: none; mask-image: none; }
}
