:root {
  --ink: #11110f;
  --ink-soft: #34332f;
  --paper: #f1eadf;
  --paper-2: #e6ddcf;
  --paper-bright: #fbf7ef;
  --signal: #e64b32;
  --line: rgba(17, 17, 15, .18);
  --white: #fff;
  --black: #090909;
  --shell: 1240px;
  --article: 720px;
  --radius-sm: 10px;
  --radius: 22px;
  --radius-lg: 36px;
  --section: clamp(5rem, 9vw, 10rem);
  --sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --display: "Arial Narrow", "Helvetica Neue", Arial, sans-serif;
  --serif: Iowan Old Style, Baskerville, "Times New Roman", serif;
  --ease: cubic-bezier(.2,.75,.2,1);
  --shadow: 0 28px 80px rgba(17,17,15,.14);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--sans); line-height: 1.6; text-rendering: optimizeLegibility; }
body.menu-open { overflow: hidden; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration-thickness: .08em; text-underline-offset: .2em; }
button, input, textarea, select { font: inherit; }
button { color: inherit; }
::selection { background: var(--signal); color: var(--white); }

.shell { width: min(calc(100% - 40px), var(--shell)); margin-inline: auto; }
.shell--wide { width: min(calc(100% - 32px), 1480px); }
.shell--article { width: min(calc(100% - 40px), var(--article)); }
.section-pad { padding-block: var(--section); }
.section-pad--compact { padding-block: clamp(4rem, 7vw, 7.5rem); }
.screen-reader-text { 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; }
.screen-reader-text:focus { position: fixed!important; top: 12px; left: 12px; width: auto!important; height: auto!important; clip: auto!important; padding: 10px 14px!important; margin: 0!important; background: #fff; color: #000; z-index: 100000; }

/* Header */
.site-header { position: relative; z-index: 100; background: rgba(241,234,223,.93); border-bottom: 1px solid var(--line); backdrop-filter: blur(14px); }
.site-header__inner { min-height: 118px; display: grid; grid-template-columns: 1fr 124px 1fr; align-items: center; gap: 28px; position: relative; }
.site-header__nav--left { justify-self: end; width: 100%; }
.site-header__nav--right { justify-self: start; width: 100%; }
.site-nav { list-style: none; padding: 0; margin: 0; display: flex; align-items: center; gap: clamp(1.5rem, 3.4vw, 4rem); }
.site-header__nav--left .site-nav { justify-content: flex-end; }
.site-header__nav--right .site-nav { justify-content: flex-start; }
.site-nav a { text-decoration: none; font-size: .76rem; letter-spacing: .12em; text-transform:none; font-weight: 750; position: relative; white-space: nowrap; }
.site-nav a::after { content:""; position:absolute; left:0; bottom:-6px; width:100%; height:1px; background:currentColor; transform:scaleX(0); transform-origin:right; transition:transform .3s var(--ease); }
.site-nav a:hover::after, .site-nav .current-menu-item a::after, .site-nav a:focus-visible::after { transform:scaleX(1); transform-origin:left; }
.site-brand { width: 110px; aspect-ratio: 1; border-radius: 50%; display:grid; place-items:center; justify-self:center; text-decoration:none; overflow:hidden; background:var(--ink); color:var(--paper); box-shadow:0 0 0 1px var(--ink); transition:transform .35s var(--ease); }
.site-brand:hover { transform: rotate(-3deg) scale(1.03); }
.site-brand__logo { width:100%; height:100%; object-fit:contain; }
.site-brand__fallback { font-family:var(--display); line-height:.84; text-align:center; font-weight:900; letter-spacing:-.05em; font-size:1.15rem; display:flex; flex-direction:column; }
.menu-toggle { display:none; border:0; background:transparent; width:48px; height:48px; padding:10px; cursor:pointer; }
.menu-toggle__line { display:block; height:2px; background:var(--ink); margin:7px 0; transition:transform .25s, opacity .25s; }
.menu-toggle[aria-expanded="true"] .menu-toggle__line:first-child { transform:translateY(4.5px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] .menu-toggle__line:nth-child(2) { transform:translateY(-4.5px) rotate(-45deg); }
.mobile-menu { position:fixed; inset:88px 0 0; background:var(--paper); z-index:99; padding:30px 0; overflow:auto; }
.mobile-menu[hidden] { display:none; }
.mobile-nav { list-style:none; padding:0; margin:0; }
.mobile-nav + .mobile-nav { margin-top:0; }
.mobile-nav a { display:block; padding:18px 0; border-bottom:1px solid var(--line); font-family:var(--display); font-size:clamp(2rem,9vw,4rem); line-height:.95; text-transform:none; text-decoration:none; font-weight:900; letter-spacing:-.04em; }

/* Shared typography */
.micro-label, .section-heading__kicker { margin:0 0 .7rem; font-size:.69rem; font-weight:800; letter-spacing:.18em; text-transform:none; color:var(--ink-soft); }
.section-heading { display:grid; grid-template-columns:minmax(0,1fr); gap:0; margin-bottom:clamp(2.4rem,5vw,5rem); }
.section-heading__title { margin:0; font-family:var(--display); font-size:clamp(3rem,7vw,7.4rem); letter-spacing:-.065em; line-height:.83; text-transform:none; font-weight:900; max-width:12ch; }
.text-link, .button-link { display:inline-flex; align-items:center; gap:.55em; font-size:.78rem; font-weight:800; letter-spacing:.1em; text-transform:none; text-decoration:none; border-bottom:1px solid currentColor; padding-bottom:.2rem; }
.button-link span, .text-link span { transition:transform .2s var(--ease); }
.button-link:hover span, .text-link:hover span { transform:translate(3px,-3px); }
.media-placeholder { width:100%; height:100%; min-height:220px; display:grid; place-items:center; background:var(--ink); color:var(--paper); font-family:var(--display); font-weight:900; font-size:clamp(3rem,9vw,8rem); }

/* Hero — dense native corridor, 28 cards, no JS dependency */
.hero-stream{position:relative;overflow:hidden;container-type:inline-size;width:100%;height:max(680px,calc(100svh - 119px));min-height:680px;background:#090909;color:#f5f0e7;isolation:isolate}
.hero-stream__scene{position:absolute;inset:0;pointer-events:none;perspective:30cqw;perspective-origin:50% 55%;z-index:1}
.hero-stream__stage{position:absolute;inset:0;transform-style:preserve-3d}
.hero-stream__card{position:absolute;left:50%;top:55%;width:18cqw;height:25cqw;margin-left:-9cqw;margin-top:-12.5cqw;overflow:hidden;border-radius:.4cqw;backface-visibility:hidden;animation-duration:20s;animation-timing-function:linear;animation-iteration-count:infinite;will-change:transform;background:#202020}
.hero-stream__card--right{animation-name:moodyStreamRight}
.hero-stream__card--left{animation-name:moodyStreamLeft}
.hero-stream__card img,.hero-stream__placeholder{display:block;width:100%;height:100%;object-fit:cover}
.hero-stream__placeholder{background:linear-gradient(135deg,#151515,#383838)}
@keyframes moodyStreamRight{0.00%{transform:translate3d(-11.00cqw,0,-258.46cqw) rotateY(-6.00deg)}4.17%{transform:translate3d(-3.79cqw,0,-225.92cqw) rotateY(-6.92deg)}8.33%{transform:translate3d(2.73cqw,0,-197.04cqw) rotateY(-7.83deg)}12.50%{transform:translate3d(8.60cqw,0,-171.43cqw) rotateY(-8.75deg)}16.67%{transform:translate3d(13.87cqw,0,-148.70cqw) rotateY(-9.67deg)}20.83%{transform:translate3d(18.56cqw,0,-128.54cqw) rotateY(-10.58deg)}25.00%{transform:translate3d(22.72cqw,0,-110.65cqw) rotateY(-11.50deg)}29.17%{transform:translate3d(26.37cqw,0,-94.78cqw) rotateY(-12.42deg)}33.33%{transform:translate3d(29.57cqw,0,-80.70cqw) rotateY(-13.33deg)}37.50%{transform:translate3d(32.34cqw,0,-68.21cqw) rotateY(-14.25deg)}41.67%{transform:translate3d(34.71cqw,0,-57.13cqw) rotateY(-15.17deg)}45.83%{transform:translate3d(36.73cqw,0,-47.30cqw) rotateY(-16.08deg)}50.00%{transform:translate3d(38.42cqw,0,-38.58cqw) rotateY(-17.00deg)}54.17%{transform:translate3d(39.81cqw,0,-30.84cqw) rotateY(-17.92deg)}58.33%{transform:translate3d(40.94cqw,0,-23.98cqw) rotateY(-18.83deg)}62.50%{transform:translate3d(41.84cqw,0,-17.89cqw) rotateY(-19.75deg)}66.67%{transform:translate3d(42.53cqw,0,-12.48cqw) rotateY(-20.67deg)}70.83%{transform:translate3d(43.06cqw,0,-7.69cqw) rotateY(-21.58deg)}75.00%{transform:translate3d(43.43cqw,0,-3.44cqw) rotateY(-22.50deg)}79.17%{transform:translate3d(43.69cqw,0,0.33cqw) rotateY(-23.42deg)}83.33%{transform:translate3d(43.85cqw,0,3.68cqw) rotateY(-24.33deg)}87.50%{transform:translate3d(43.94cqw,0,6.65cqw) rotateY(-25.25deg)}91.67%{transform:translate3d(43.98cqw,0,9.28cqw) rotateY(-26.17deg)}95.83%{transform:translate3d(44.00cqw,0,11.62cqw) rotateY(-27.08deg)}100.00%{transform:translate3d(44.00cqw,0,13.70cqw) rotateY(-28.00deg)}}
@keyframes moodyStreamLeft{0.00%{transform:translate3d(11.00cqw,0,-258.46cqw) rotateY(6.00deg)}4.17%{transform:translate3d(3.79cqw,0,-225.92cqw) rotateY(6.92deg)}8.33%{transform:translate3d(-2.73cqw,0,-197.04cqw) rotateY(7.83deg)}12.50%{transform:translate3d(-8.60cqw,0,-171.43cqw) rotateY(8.75deg)}16.67%{transform:translate3d(-13.87cqw,0,-148.70cqw) rotateY(9.67deg)}20.83%{transform:translate3d(-18.56cqw,0,-128.54cqw) rotateY(10.58deg)}25.00%{transform:translate3d(-22.72cqw,0,-110.65cqw) rotateY(11.50deg)}29.17%{transform:translate3d(-26.37cqw,0,-94.78cqw) rotateY(12.42deg)}33.33%{transform:translate3d(-29.57cqw,0,-80.70cqw) rotateY(13.33deg)}37.50%{transform:translate3d(-32.34cqw,0,-68.21cqw) rotateY(14.25deg)}41.67%{transform:translate3d(-34.71cqw,0,-57.13cqw) rotateY(15.17deg)}45.83%{transform:translate3d(-36.73cqw,0,-47.30cqw) rotateY(16.08deg)}50.00%{transform:translate3d(-38.42cqw,0,-38.58cqw) rotateY(17.00deg)}54.17%{transform:translate3d(-39.81cqw,0,-30.84cqw) rotateY(17.92deg)}58.33%{transform:translate3d(-40.94cqw,0,-23.98cqw) rotateY(18.83deg)}62.50%{transform:translate3d(-41.84cqw,0,-17.89cqw) rotateY(19.75deg)}66.67%{transform:translate3d(-42.53cqw,0,-12.48cqw) rotateY(20.67deg)}70.83%{transform:translate3d(-43.06cqw,0,-7.69cqw) rotateY(21.58deg)}75.00%{transform:translate3d(-43.43cqw,0,-3.44cqw) rotateY(22.50deg)}79.17%{transform:translate3d(-43.69cqw,0,0.33cqw) rotateY(23.42deg)}83.33%{transform:translate3d(-43.85cqw,0,3.68cqw) rotateY(24.33deg)}87.50%{transform:translate3d(-43.94cqw,0,6.65cqw) rotateY(25.25deg)}91.67%{transform:translate3d(-43.98cqw,0,9.28cqw) rotateY(26.17deg)}95.83%{transform:translate3d(-44.00cqw,0,11.62cqw) rotateY(27.08deg)}100.00%{transform:translate3d(-44.00cqw,0,13.70cqw) rotateY(28.00deg)}}
.hero-stream__veil{position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(circle at 50% 55%,rgba(0,0,0,0) 0 10%,rgba(0,0,0,.08) 27%,rgba(0,0,0,.48) 100%)}
.hero-stream__content{position:relative;z-index:3;height:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:48px 24px;text-align:center;pointer-events:none}
.hero-stream__headline{padding-inline:24px}
.hero-stream__eyebrow{font-size:.65rem;letter-spacing:.28em;font-weight:800;margin:0 0 1.3rem;opacity:.88}
.hero-stream__title{font-family:var(--display);text-transform:none;margin:0;font-size:clamp(4.5rem,13.2vw,13rem);line-height:.72;letter-spacing:-.075em;font-weight:950;text-shadow:0 12px 34px rgba(0,0,0,.3)}
.hero-stream__tagline{margin:0;max-width:34rem;padding-inline:24px;font-family:var(--serif);font-style:italic;font-size:clamp(1rem,1.45vw,1.3rem)}
.hero-stream__scroll{position:absolute;z-index:4;left:50%;bottom:28px;transform:translateX(-50%);width:48px;height:48px;border:1px solid rgba(255,255,255,.4);border-radius:50%;display:grid;place-items:center}
.hero-stream__scroll span{width:6px;height:6px;border-right:1px solid white;border-bottom:1px solid white;transform:rotate(45deg) translate(-1px,-1px)}
@media(max-width:780px){.hero-stream{height:72svh;min-height:560px}.hero-stream__title{font-size:clamp(3.5rem,18vw,7rem)}}
/* Timeline */
.decades-section { background:var(--paper-bright); overflow:hidden; }
.timeline { position:relative; }
.timeline__line { position:absolute; left:0; right:0; top:43px; height:2px; background:var(--line); overflow:hidden; }
.timeline__progress { display:block; width:0; height:100%; background:var(--signal); transition:width .08s linear; }
.timeline__items { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(1rem,2vw,2rem); position:relative; }
.timeline-card { min-width:0; }
.timeline-card__link { display:block; color:inherit; text-decoration:none; padding-top:1.2rem; }
.timeline-card__node { width:18px; height:18px; margin-left:18px; margin-bottom:16px; border:4px solid var(--paper-bright); box-shadow:0 0 0 1px var(--ink); background:var(--paper-bright); border-radius:50%; position:relative; z-index:2; transition:background .25s, transform .25s; }
.timeline-card__link:hover .timeline-card__node { background:var(--signal); transform:scale(1.15); }
.timeline-card__decade { font-family:var(--display); font-size:clamp(3.5rem,7.8vw,8rem); line-height:.75; letter-spacing:-.08em; font-weight:950; margin:0 0 1.4rem; }
.timeline-card__media { aspect-ratio:4/3; border-radius:var(--radius); overflow:hidden; background:var(--paper-2); margin-bottom:1.2rem; }
.timeline-card__media img { width:100%; height:100%; object-fit:cover; filter:grayscale(.15); transition:transform .55s var(--ease), filter .55s; }
.timeline-card__link:hover img { transform:scale(1.05); filter:grayscale(0); }
.timeline-card__text { max-width:28ch; color:var(--ink-soft); font-size:.94rem; min-height:4.6em; }

/* Artist */
.artist-week { background:var(--ink); color:var(--paper); }
.artist-week .section-heading__kicker { color:#bbb5aa; }
.artist-week__grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,6vw,7rem); align-items:center; }
.artist-week__media { aspect-ratio:1.15/1; overflow:hidden; border-radius:var(--radius-lg); box-shadow:0 38px 90px rgba(0,0,0,.35); }
.artist-week__media img { width:100%; height:100%; object-fit:cover; filter:grayscale(.2) contrast(1.04); transition:transform .65s var(--ease), filter .5s; }
.artist-week__media:hover img { transform:scale(1.035); filter:grayscale(0); }
.artist-week__copy h3 { margin:.4rem 0 1.2rem; font-family:var(--serif); font-style:italic; font-weight:500; font-size:clamp(3rem,6.5vw,7rem); line-height:.92; letter-spacing:-.05em; }
.artist-week__copy > p:not(.micro-label) { font-size:clamp(1rem,1.5vw,1.22rem); max-width:44ch; color:#d4cdc2; }
.artist-week .button-link { margin-top:1.5rem; }

/* Squeeze carousel */
.stories-feature { background:var(--paper); }
.squeeze-carousel { position:relative; }
.squeeze-carousel__panels { height:clamp(430px,52vw,650px); display:flex; gap:10px; overflow:hidden; border-radius:var(--radius-lg); }
.squeeze-panel { flex:1 1 7%; min-width:58px; position:relative; transition:flex .65s var(--ease); overflow:hidden; border-radius:18px; }
.squeeze-panel.is-active { flex:1 1 68%; }
.squeeze-panel__button { border:0; padding:0; width:100%; height:100%; display:block; cursor:pointer; background:#1d1d1d; position:relative; overflow:hidden; color:white; }
.squeeze-panel__media { position:absolute; inset:0; background-size:cover; background-position:center; transform:scale(1.02); transition:transform .7s var(--ease), filter .4s; filter:saturate(.7) brightness(.78); }
.squeeze-panel.is-active .squeeze-panel__media { filter:saturate(.95) brightness(.92); }
.squeeze-panel__button:hover .squeeze-panel__media { transform:scale(1.055); }
.squeeze-panel__button::after { content:""; position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,.76),transparent 55%); }
.squeeze-panel__number { position:absolute; z-index:2; left:20px; top:18px; font-size:.72rem; font-weight:800; letter-spacing:.12em; }
.squeeze-panel__vertical-title { position:absolute; z-index:2; left:50%; bottom:22px; transform:translateX(-50%) rotate(-90deg); transform-origin:center; width:360px; text-align:left; font-family:var(--display); font-size:1.05rem; font-weight:900; letter-spacing:-.02em; text-transform:none; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; transition:opacity .25s; }
.squeeze-panel.is-active .squeeze-panel__vertical-title { opacity:0; }
.squeeze-carousel__details { position:relative; min-height:220px; margin-top:2.2rem; max-width:900px; }
.squeeze-detail { animation:detailIn .45s var(--ease) both; }
.squeeze-detail[hidden] { display:none; }
.squeeze-detail__meta { display:flex; gap:1rem; align-items:center; font-size:.7rem; font-weight:750; text-transform:none; letter-spacing:.12em; }
.squeeze-detail__meta a { text-decoration:none; }
.squeeze-detail h3 { font-family:var(--serif); font-size:clamp(2.1rem,4.2vw,4.7rem); line-height:.95; letter-spacing:-.045em; margin:.7rem 0 1rem; }
.squeeze-detail h3 a { text-decoration:none; }
.squeeze-detail p { max-width:60ch; color:var(--ink-soft); }
.squeeze-carousel__controls { position:absolute; right:0; bottom:0; display:flex; gap:8px; }
.squeeze-carousel__controls button { width:52px; height:52px; border-radius:50%; border:1px solid var(--ink); background:transparent; cursor:pointer; transition:background .2s,color .2s; }
.squeeze-carousel__controls button:hover { background:var(--ink); color:var(--paper); }
@keyframes detailIn { from{opacity:0;transform:translateY(12px)} to{opacity:1;transform:none} }

/* Song */
.song-week { background:var(--paper-bright); overflow:hidden; }
.song-week__grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(280px,.85fr) minmax(0,1fr); gap:clamp(2rem,5vw,6rem); align-items:center; }
.song-week__identity h3 { margin:.5rem 0 .7rem; font-family:var(--display); font-size:clamp(3rem,6.5vw,7rem); line-height:.82; letter-spacing:-.065em; text-transform:none; font-weight:950; overflow-wrap:anywhere; }
.song-week__artist { margin:0; font-family:var(--serif); font-style:italic; font-size:clamp(1.5rem,2.4vw,2.6rem); }
.song-week__facts { font-size:.72rem; text-transform:none; letter-spacing:.12em; font-weight:750; color:var(--ink-soft); }
.music-artwork { position:relative; width:min(100%,390px); aspect-ratio:1; margin-inline:auto; outline:none; }
.music-artwork__cover { position:absolute; inset:0; z-index:2; border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow); background:var(--ink); transition:transform .35s var(--ease); }
.music-artwork__cover img { width:100%; height:100%; object-fit:cover; transition:transform .45s var(--ease); }
.music-artwork:hover .music-artwork__cover, .music-artwork:focus-visible .music-artwork__cover { transform:scale(1.025); }
.music-artwork:hover .music-artwork__cover img, .music-artwork:focus-visible .music-artwork__cover img { transform:scale(1.045); }
.music-artwork__vinyl { position:absolute; z-index:1; width:96%; aspect-ratio:1; border-radius:50%; left:-35%; top:2%; background:repeating-radial-gradient(circle at center,#111 0 2px,#1e1e1e 3px 5px,#111 6px 8px); box-shadow:0 25px 60px rgba(0,0,0,.28); opacity:1; transform:translateX(0) rotate(0deg); }
.music-artwork:hover .music-artwork__vinyl, .music-artwork:focus-within .music-artwork__vinyl, .music-artwork.is-active .music-artwork__vinyl { opacity:1; transform:translateX(0); }
.music-artwork__vinyl { animation:vinylSpin 2.2s linear infinite; animation-play-state:running; }
.music-artwork.is-paused .music-artwork__vinyl { animation-play-state:paused; }
.music-artwork__groove { position:absolute; border:1px solid rgba(255,255,255,.06); border-radius:50%; inset:12%; }
.music-artwork__groove--2 { inset:23%; }.music-artwork__groove--3 { inset:34%; }
.music-artwork__label { position:absolute; width:26%; aspect-ratio:1; border-radius:50%; background:var(--signal); color:white; left:37%; top:37%; display:grid; place-items:center; font-family:var(--display); font-weight:950; }
.music-artwork__label::after { content:""; width:8%; aspect-ratio:1; border-radius:50%; background:#111; position:absolute; }
.music-artwork__play { position:absolute; left:14px; bottom:14px; z-index:4; width:46px; height:46px; border-radius:50%; border:1px solid rgba(255,255,255,.65); background:rgba(0,0,0,.45); backdrop-filter:blur(6px); cursor:pointer; }
.music-artwork__play span { display:block; width:0; height:0; border-left:10px solid white; border-top:6px solid transparent; border-bottom:6px solid transparent; margin-left:4px; margin-inline:auto; }
.music-artwork.is-playing .music-artwork__play span { width:9px; height:14px; border:0; border-left:3px solid white; border-right:3px solid white; margin:0 auto; }
.music-artwork__tooltip { position:absolute; z-index:6; left:50%; bottom:-50px; transform:translate(-50%,8px); white-space:nowrap; background:var(--ink); color:white; padding:7px 12px; border-radius:8px; font-size:.76rem; opacity:0; pointer-events:none; transition:.25s var(--ease); }
.music-artwork:hover .music-artwork__tooltip { opacity:1; transform:translate(-50%,0); }
.song-week__editorial p { font-family:var(--serif); font-size:clamp(1.25rem,2vw,1.9rem); line-height:1.35; margin-top:0; }
.platform-links { display:flex; flex-wrap:wrap; gap:10px; margin-top:1.8rem; }
.platform-links a { text-decoration:none; border:1px solid var(--ink); border-radius:999px; padding:.75rem 1rem; font-size:.72rem; font-weight:800; letter-spacing:.09em; text-transform:none; transition:background .2s,color .2s; }
.platform-links a:hover { background:var(--ink); color:var(--paper-bright); }
@keyframes vinylSpin { from { transform:translateX(0) rotate(0deg); } to { transform:translateX(0) rotate(360deg); } } }

/* Parallax */
.parallax-window { height:150vh; position:relative; background:var(--black); }
.parallax-window__sticky { position:sticky; top:0; height:100vh; overflow:hidden; display:grid; place-items:center; }
.parallax-window__image { position:absolute; inset:-8%; background-size:cover; background-position:center; transform:scale(1.08); will-change:transform; }
.parallax-window__veil { position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.16),rgba(0,0,0,.38)); }
.parallax-window__word { position:relative; z-index:2; margin:0; color:white; font-family:var(--display); font-size:clamp(6rem,22vw,25rem); font-weight:950; line-height:.7; letter-spacing:-.08em; opacity:.86; mix-blend-mode:overlay; }

/* Archives */
.archive-page, .decades-page, .efemerides-page, .standard-page, .single-ephemeris, .error-page { min-height:70vh; }
.archive-hero { max-width:920px; margin-bottom:clamp(3rem,7vw,7rem); }
.archive-hero h1, .standard-page__header h1, .single-ephemeris__header h1, .error-page h1 { margin:.2rem 0 1rem; font-family:var(--display); text-transform:none; font-size:clamp(4rem,10vw,10rem); line-height:.78; letter-spacing:-.075em; font-weight:950; }
.archive-hero > p:last-child, .standard-page__header > p { max-width:56ch; font-family:var(--serif); font-size:clamp(1.2rem,2vw,1.8rem); }
.filter-nav { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:3rem; }
.filter-nav a { padding:.65rem 1rem; border:1px solid var(--ink); border-radius:999px; text-decoration:none; font-size:.72rem; font-weight:800; letter-spacing:.1em; text-transform:none; }
.filter-nav a.is-active, .filter-nav a:hover { background:var(--ink); color:var(--paper); }
.story-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(2rem,4vw,4.5rem) clamp(1.4rem,3vw,3rem); }
.story-grid--three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.story-card__media { display:block; aspect-ratio:1.35/1; overflow:hidden; border-radius:var(--radius); background:var(--paper-2); text-decoration:none; }
.story-card__media img { width:100%; height:100%; object-fit:cover; transition:transform .55s var(--ease), filter .4s; }
.story-card:hover .story-card__media img { transform:scale(1.035); }
.story-card__body { padding-top:1.25rem; }
.story-card__meta { display:flex; flex-wrap:wrap; gap:.8rem; font-size:.67rem; font-weight:800; text-transform:none; letter-spacing:.11em; }
.story-card__meta a { text-decoration:none; }
.story-card h2 { font-family:var(--serif); font-size:clamp(1.6rem,2.7vw,3rem); line-height:1; letter-spacing:-.035em; margin:.7rem 0; }
.story-card h2 a { text-decoration:none; }
.story-card p { color:var(--ink-soft); }
.pagination { margin-top:5rem; }
.pagination ul { list-style:none; padding:0; display:flex; gap:8px; }
.pagination a, .pagination span { width:42px; height:42px; display:grid; place-items:center; border:1px solid var(--ink); text-decoration:none; border-radius:50%; }
.pagination .current { background:var(--ink); color:var(--paper); }

/* Decade index */
.decade-index { border-top:1px solid var(--ink); }
.decade-index__item { min-height:170px; display:grid; grid-template-columns:1.2fr 2fr 1fr auto; align-items:center; gap:2rem; border-bottom:1px solid var(--ink); text-decoration:none; position:relative; overflow:hidden; }
.decade-index__number { font-family:var(--display); font-size:clamp(4rem,9vw,9rem); line-height:.8; font-weight:950; letter-spacing:-.07em; }
.decade-index__image { height:140px; width:100%; background-size:cover; background-position:center; border-radius:14px; filter:grayscale(1); transition:filter .35s, transform .35s; }
.decade-index__item:hover .decade-index__image { filter:grayscale(0); transform:scale(.98); }
.decade-index__meta { text-transform:none; letter-spacing:.12em; font-size:.7rem; font-weight:800; }
.decade-index__arrow { font-size:2rem; }

/* Single story */
.single-story { padding-bottom:var(--section); }
.single-story__hero { padding-top:clamp(5rem,9vw,9rem); padding-bottom:clamp(3rem,5vw,5rem); max-width:1080px; }
.single-story__meta { display:flex; gap:1rem; text-transform:none; letter-spacing:.12em; font-size:.7rem; font-weight:800; }
.single-story__meta a { text-decoration:none; }
.single-story__hero h1 { font-family:var(--display); font-size:clamp(4rem,9.5vw,10rem); text-transform:none; line-height:.79; letter-spacing:-.075em; margin:.8rem 0 1.8rem; font-weight:950; }
.single-story__dek { font-family:var(--serif); font-size:clamp(1.35rem,2.4vw,2.2rem); line-height:1.25; max-width:36ch; }
.single-story__byline { font-size:.75rem; text-transform:none; letter-spacing:.12em; font-weight:800; }
.single-story__featured { margin-bottom:clamp(3rem,7vw,7rem); }
.single-story__featured img { width:100%; max-height:80vh; object-fit:cover; border-radius:var(--radius-lg); }
.entry-content { width:min(calc(100% - 40px),var(--article)); margin-inline:auto; font-family:var(--serif); font-size:clamp(1.08rem,1.45vw,1.23rem); line-height:1.78; }
.entry-content > * { margin-block:1.4em; }
.entry-content h2, .entry-content h3 { font-family:var(--sans); line-height:1.08; letter-spacing:-.04em; margin-top:2em; }
.entry-content h2 { font-size:clamp(2rem,4vw,3.6rem); }
.entry-content h3 { font-size:clamp(1.5rem,2.8vw,2.4rem); }
.entry-content blockquote { width:min(100%,920px); margin:2.5em 50% 2.5em; transform:translateX(-50%); border:0; border-left:4px solid var(--signal); padding:.1em 0 .1em 1em; font-size:clamp(1.7rem,3.4vw,3.6rem); line-height:1.08; font-style:italic; }
.entry-content .alignwide { width:min(90vw,1100px); max-width:none; margin-left:50%; transform:translateX(-50%); }
.entry-content .alignfull { width:100vw; max-width:none; margin-left:50%; transform:translateX(-50%); }
.single-story__footer { margin-top:clamp(5rem,10vw,10rem); }
.post-navigation { border-top:1px solid var(--ink); border-bottom:1px solid var(--ink); padding:1.5rem 0; }
.post-navigation .nav-links { display:grid; grid-template-columns:1fr 1fr; gap:2rem; }
.post-navigation a { display:flex; flex-direction:column; text-decoration:none; }
.post-navigation span { font-size:.66rem; text-transform:none; letter-spacing:.12em; }
.post-navigation strong { font-family:var(--serif); font-size:1.2rem; }
.related-stories { margin-top:6rem; }
.related-stories > h2 { font-family:var(--display); font-size:clamp(3rem,6vw,6rem); text-transform:none; line-height:.85; letter-spacing:-.06em; }

/* Ephemeris */
.ephemeris-list { border-top:1px solid var(--ink); }
.ephemeris-day { display:grid; grid-template-columns:220px 1fr; border-bottom:1px solid var(--ink); padding:2rem 0; gap:2rem; }
.ephemeris-day__date { position:sticky; top:30px; align-self:start; display:flex; flex-direction:column; }
.ephemeris-day__date span { font-family:var(--display); font-size:5rem; font-weight:950; line-height:.8; }
.ephemeris-day__date strong { text-transform:none; font-size:.74rem; letter-spacing:.13em; margin-top:.6rem; }
.ephemeris-event { display:grid; grid-template-columns:100px 1fr; gap:1.3rem; padding:1.4rem 0; border-bottom:1px solid var(--line); }
.ephemeris-event:last-child { border:0; }
.ephemeris-event time { font-family:var(--display); font-size:2.4rem; font-weight:900; line-height:1; }
.ephemeris-event h2 { font-family:var(--serif); font-size:clamp(1.5rem,2.6vw,2.6rem); margin:0 0 .5rem; line-height:1; }
.ephemeris-event h2 a { text-decoration:none; }
.ephemeris-event p { margin:0; color:var(--ink-soft); }
.single-ephemeris__date { font-family:var(--display); text-transform:none; font-weight:900; letter-spacing:-.02em; }
.single-ephemeris__date span { font-size:3rem; }
.single-ephemeris__image { margin:2rem 0; }
.single-ephemeris__image img { border-radius:var(--radius); }

/* Footer */
.site-footer { background:var(--ink); color:var(--paper); padding:clamp(4rem,8vw,8rem) 0 2rem; }
.site-footer__inner { display:grid; grid-template-columns:1.3fr 1fr; gap:5rem; }
.site-footer__name { margin:0; font-family:var(--display); font-weight:950; font-size:clamp(3.5rem,8vw,8rem); line-height:.75; letter-spacing:-.07em; }
.site-footer__tagline { font-family:var(--serif); font-style:italic; font-size:1.4rem; }
.site-footer__copy { max-width:38ch; color:#c7c0b5; }
.footer-nav { list-style:none; padding:0; margin:0; display:grid; gap:.8rem; }
.footer-nav a { text-decoration:none; font-family:var(--serif); font-size:1.8rem; }
.site-footer__legal { grid-column:1/-1; padding-top:2rem; border-top:1px solid rgba(255,255,255,.2); display:flex; justify-content:space-between; gap:1rem; font-size:.68rem; text-transform:none; letter-spacing:.1em; }

/* Reveal */
.reveal-on-scroll { opacity:0; transform:translateY(26px); transition:opacity .7s var(--ease),transform .7s var(--ease); }
.reveal-on-scroll.is-visible { opacity:1; transform:none; }

/* Focus */
a:focus-visible, button:focus-visible, [tabindex]:focus-visible { outline:3px solid var(--signal); outline-offset:4px; }

@media (max-width: 1050px) {
  .site-header__inner { grid-template-columns:1fr 96px 1fr; gap:18px; min-height:104px; }
  .site-brand { width:86px; }
  .site-nav { gap:1.2rem; }
  .site-nav a { font-size:.66rem; }
  .song-week__grid { grid-template-columns:1fr 1fr; }
  .song-week__editorial { grid-column:1/-1; max-width:700px; }
  .story-grid--three { grid-template-columns:repeat(2,1fr); }
}

@media (max-width: 780px) {
  .shell { width:min(calc(100% - 28px),var(--shell)); }
  .site-header { position:sticky; top:0; }
  .site-header__inner { min-height:88px; display:flex; justify-content:center; }
  .site-header__nav { display:none; }
  .site-brand { width:68px; }
  .menu-toggle { display:block; position:absolute; right:0; }
  .hero-stream { min-height:calc(100svh - 88px); height:700px; }
  .hero-stream__title { font-size:clamp(4.2rem,21vw,8rem); }
  .timeline { overflow-x:auto; overflow-y:hidden; margin-inline:-14px; padding-inline:14px; scrollbar-width:none; scroll-snap-type:x mandatory; }
  .timeline::-webkit-scrollbar { display:none; }
  .timeline__line { left:14px; right:auto; width:calc(4 * 76vw - 28px); }
  .timeline__items { width:calc(4 * 76vw); grid-template-columns:repeat(4,76vw); gap:0; }
  .timeline-card { padding-right:22px; scroll-snap-align:start; }
  .timeline-card__decade { font-size:clamp(4.4rem,22vw,8rem); }
  .artist-week__grid { grid-template-columns:1fr; }
  .artist-week__copy { padding-top:1rem; }
  .squeeze-carousel__panels { height:auto; overflow-x:auto; scroll-snap-type:x mandatory; border-radius:0; gap:12px; margin-inline:-14px; padding-inline:14px; scrollbar-width:none; }
  .squeeze-panel, .squeeze-panel.is-active { flex:0 0 82vw; min-width:0; height:490px; scroll-snap-align:center; border-radius:var(--radius); }
  .squeeze-panel__vertical-title { opacity:0; }
  .squeeze-carousel__details { min-height:260px; }
  .squeeze-carousel__controls { position:static; justify-content:flex-end; margin-top:1rem; }
  .song-week__grid { grid-template-columns:1fr; }
  .song-week__identity { text-align:left; }
  .music-artwork { width:min(78vw,360px); margin-block:1rem 3rem; }
  .music-artwork__vinyl { opacity:.92; transform:translateX(0); left:-24%; }
  .music-artwork__tooltip { display:none; }
  .parallax-window { height:110vh; }
  .parallax-window__sticky { height:82vh; top:88px; }
  .parallax-window__image { inset:-2%; }
  .story-grid, .story-grid--three { grid-template-columns:1fr; }
  .decade-index__item { grid-template-columns:1fr auto; padding:1.5rem 0; gap:1rem; }
  .decade-index__image { grid-column:1/-1; grid-row:2; height:180px; }
  .decade-index__meta { grid-column:1; }
  .decade-index__arrow { grid-column:2; grid-row:1; }
  .single-story__hero h1 { font-size:clamp(3.6rem,17vw,7rem); }
  .entry-content blockquote { width:100%; margin-left:0; transform:none; }
  .entry-content .alignwide, .entry-content .alignfull { width:auto; margin-left:0; transform:none; }
  .post-navigation .nav-links { grid-template-columns:1fr; }
  .ephemeris-day { grid-template-columns:1fr; gap:.7rem; }
  .ephemeris-day__date { position:static; flex-direction:row; gap:.8rem; align-items:baseline; }
  .ephemeris-event { grid-template-columns:70px 1fr; }
  .site-footer__inner { grid-template-columns:1fr; gap:3rem; }
  .site-footer__legal { flex-direction:column; }
}

@media (max-width: 480px) {
  .section-heading__title { font-size:clamp(2.8rem,16vw,5rem); }
  .squeeze-panel, .squeeze-panel.is-active { flex-basis:86vw; height:430px; }
  .squeeze-detail h3 { font-size:2.4rem; }
  .ephemeris-event { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  .reveal-on-scroll { opacity:1; transform:none; }
  .parallax-window { height:70vh; }
  .parallax-window__sticky { position:relative; height:70vh; top:0; }
}

/* Vinyl final fix: position + rotation live in the same keyframes. */
.music-artwork__vinyl {
  opacity: 1 !important;
  visibility: visible !important;
  transform-origin: 50% 50% !important;
  animation-name: vinylSpin !important;
  animation-duration: 2.2s !important;
  animation-timing-function: linear !important;
  animation-iteration-count: infinite !important;
  animation-play-state: running !important;
  will-change: transform;
}
.music-artwork.is-paused .music-artwork__vinyl {
  animation-play-state: paused !important;
}

/* Typography update: Helvetica throughout Moody Stereo */
html, body, button, input, textarea, select {
  font-family: Helvetica, Arial, sans-serif !important;
}
h1, h2, h3, h4, h5, h6,
.section-title,
.hero-stream__title,
.hero-stream__eyebrow,
.card-story__title,
.music-copy__title,
.artist-week__name {
  font-family: Helvetica, Arial, sans-serif !important;
  font-style: normal !important;
  font-weight: 700 !important;
}
.hero-stream__tagline {
  font-family: Helvetica, Arial, sans-serif !important;
  font-style: normal !important;
}

/* Hero palette update */
.hero-stream {
  background: #fff !important;
  color: #111 !important;
}
.hero-stream__veil {
  background: radial-gradient(circle at 50% 55%, rgba(255,255,255,0) 0 10%, rgba(255,255,255,.06) 28%, rgba(255,255,255,.38) 100%) !important;
}
.hero-stream__title {
  color: #111 !important;
  text-shadow: none !important;
}
.hero-stream__eyebrow,
.hero-stream__tagline {
  color: #111 !important;
}
.hero-stream__scroll {
  border-color: rgba(17,17,17,.4) !important;
}
.hero-stream__scroll span {
  border-color: #111 !important;
}

/* Vinyl interaction: hidden until the cover is hovered/focused */
.music-artwork__vinyl {
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateX(38%) rotate(0deg) !important;
  transform-origin: 50% 50% !important;
  animation: none !important;
  transition: opacity .28s ease, visibility 0s linear .32s !important;
  pointer-events: none;
}
.music-artwork:hover .music-artwork__vinyl,
.music-artwork:focus-within .music-artwork__vinyl {
  opacity: 1 !important;
  visibility: visible !important;
  animation: vinylRevealSpin 2.2s linear infinite !important;
  transition: opacity .28s ease, visibility 0s linear 0s !important;
}
@keyframes vinylRevealSpin {
  from { transform: translateX(0) rotate(0deg); }
  to   { transform: translateX(0) rotate(360deg); }
}

/* MusicArtwork — native WordPress port of supplied 21st.dev component */
.music-artwork {
  position: relative;
  font-family: Helvetica, Arial, sans-serif !important;
}
.music-artwork__vinyl {
  opacity: 0 !important;
  visibility: visible !important;
  left: -38% !important;
  top: 50% !important;
  width: 100% !important;
  transform: translate(48%, -50%) rotate(0deg) !important;
  transform-origin: 50% 50% !important;
  animation: none !important;
  transition: opacity .5s ease-out, transform .5s ease-out !important;
  pointer-events: none;
}
.music-artwork.is-hovered .music-artwork__vinyl,
.music-artwork:hover .music-artwork__vinyl,
.music-artwork:focus-within .music-artwork__vinyl {
  opacity: 1 !important;
  transform: translate(0, -50%) rotate(0deg) !important;
}
.music-artwork.is-playing .music-artwork__vinyl {
  animation: moodyVinylSpin 1.333333s linear infinite !important;
}
@keyframes moodyVinylSpin {
  from { transform: translate(0, -50%) rotate(0deg); }
  to   { transform: translate(0, -50%) rotate(360deg); }
}
.music-artwork__cover {
  cursor: pointer;
  transition: transform .3s ease-out, box-shadow .3s ease-out !important;
}
.music-artwork:hover .music-artwork__cover,
.music-artwork:focus-within .music-artwork__cover {
  transform: scale(1.05);
}
.music-artwork__cover img {
  transition: transform .3s ease-out, opacity .3s ease-out !important;
}
.music-artwork:hover .music-artwork__cover img,
.music-artwork:focus-within .music-artwork__cover img {
  transform: scale(1.10);
}
.moody-music-tooltip {
  position: fixed;
  z-index: 9999;
  pointer-events: none;
  display: none;
  padding: 8px 16px;
  border-radius: 8px;
  background: rgba(23,23,23,.90);
  color: #fff;
  border: 1px solid rgba(82,82,82,.5);
  box-shadow: 0 8px 24px rgba(0,0,0,.22);
  font: 500 14px/1.35 Helvetica, Arial, sans-serif;
  white-space: nowrap;
  backdrop-filter: blur(10px);
}
@media (min-width: 640px) {
  .moody-music-tooltip.is-visible { display:block; }
}

/* Force the complete decade timeline to Helvetica, including large 60s/70s labels. */
.timeline,
.timeline *,
.decades-timeline,
.decades-timeline *,
[class*="timeline"] [class*="decade"],
[class*="decade"] {
  font-family: Helvetica, Arial, sans-serif !important;
}
.timeline h2, .timeline h3,
.decades-timeline h2, .decades-timeline h3,
[class*="timeline"] [class*="decade"] {
  font-weight: 700 !important;
  font-style: normal !important;
}

/* === Moody Stereo — white editorial system / sentence case === */
:root {
  --paper: #ffffff !important;
  --ink: #111111 !important;
  --muted: #6d6d6d !important;
  --line: #dedede !important;
}
html, body {
  background:#fff !important;
  color:#111 !important;
  font-family:Helvetica, Arial, sans-serif !important;
}

/* Never force uppercase anywhere in the visible site. */
body * {
  text-transform:none !important;
}
h1,h2,h3,h4,h5,h6,
.section-title,
[class*="title"],
[class*="heading"],
[class*="decade"] {
  font-family:Helvetica, Arial, sans-serif !important;
  font-weight:700 !important;
  text-transform:none !important;
}

/* White-first surfaces */
.site-header,
.site-nav,
main,
.home-section,
.timeline,
.artist-week,
.stories-carousel,
.song-week,
.site-footer {
  background-color:#fff;
  color:#111;
}
.site-header {
  border-bottom:1px solid #dedede !important;
}

/* Main navigation */
.site-header a,
.site-nav a,
.primary-menu a {
  color:#111 !important;
  font-family:Helvetica, Arial, sans-serif !important;
  text-transform:none !important;
}

/* Brand image: no frame/background; deliberately hangs below the navigation. */
.site-branding,
.site-brand,
.custom-logo-link {
  overflow:visible !important;
}
.custom-logo-link {
  position:relative !important;
  z-index:20 !important;
  display:block !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 0 -18px 0 !important;
  transform:translateY(9px);
}
.custom-logo-link img,
.custom-logo {
  display:block !important;
  width:auto !important;
  height:72px !important;
  max-height:none !important;
  object-fit:contain !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}

/* Catch theme-specific brand wrappers too. */
[class*="brand"] img,
[class*="logo"] img {
  border:0 !important;
  box-shadow:none !important;
}

/* Keep hero white and sentence case. */
.hero-stream {
  background:#fff !important;
  color:#111 !important;
}
.hero-stream__title,
.hero-stream__eyebrow,
.hero-stream__tagline {
  color:#111 !important;
  text-transform:none !important;
}
.hero-stream__title { font-weight:700 !important; }

/* Timeline labels are Helvetica + sentence case. */
.timeline *, .decades-timeline *, [class*="timeline"] [class*="decade"] {
  font-family:Helvetica, Arial, sans-serif !important;
  text-transform:none !important;
}
@media (max-width:780px) {
  .custom-logo-link { margin-bottom:-12px !important; transform:translateY(6px); }
  .custom-logo-link img,.custom-logo { height:58px !important; }
}

/* === Requested layout refinement === */

/* Entire site is white by default. */
html, body, #page, .site, main, .site-main {
  background:#fff !important;
}

/* Hero: white, slower/airier cards are set in PHP/CSS below. */
.hero-stream {
  background:#fff !important;
}
.hero-stream__card {
  width:16cqw !important;
  height:22cqw !important;
  margin-left:-8cqw !important;
  margin-top:-11cqw !important;
  animation-duration:28s !important;
}
.hero-stream__content {
  justify-content:flex-start !important;
  padding-top:7vh !important;
}
.hero-stream__headline {
  margin-top:0 !important;
}
.hero-stream__eyebrow {
  font-family:Helvetica, Arial, sans-serif !important;
  font-size:clamp(.9rem,1.25vw,1.2rem) !important;
  font-weight:700 !important;
  letter-spacing:.04em !important;
  margin-bottom:1.6rem !important;
  text-transform:none !important;
}
.hero-stream__scroll { display:none !important; }

/* Decades: full black block, white typography. */
.decades-section,
#decades,
.timeline,
.decades-timeline {
  background:#050505 !important;
  color:#fff !important;
}
.decades-section *,
#decades *,
.timeline *,
.decades-timeline * {
  color:#fff !important;
  border-color:rgba(255,255,255,.24);
}
.decades-section a,
#decades a {
  color:#fff !important;
}
.decades-section .section-heading__title,
#decades .section-heading__title {
  font-family:Helvetica, Arial, sans-serif !important;
  font-weight:700 !important;
}

/* Artist of the week: heading on the right; image right, copy/title left. */
.artist-week .section-heading {
  text-align:right !important;
  margin-left:auto !important;
}
.artist-week__grid {
  direction:rtl;
}
.artist-week__grid > * {
  direction:ltr;
}
.artist-week__media,
.artist-week__image {
  order:2 !important;
}
.artist-week__content,
.artist-week__copy {
  order:1 !important;
}

/* Stories: navigation controls at the upper right. */
.stories-carousel {
  position:relative;
}
.stories-carousel__controls,
.stories-carousel__nav,
[data-carousel-controls] {
  position:absolute !important;
  top:0 !important;
  right:max(24px, calc((100vw - 1240px)/2)) !important;
  left:auto !important;
  z-index:5;
  display:flex;
  gap:8px;
}

/* Song of the week: section heading aligned right. */
.song-week .section-heading {
  text-align:right !important;
  margin-left:auto !important;
}
.song-week__title,
.music-copy__title {
  font-size:clamp(1.8rem,3.2vw,3.6rem) !important;
  line-height:.95 !important;
}
.song-week__text,
.song-week__description,
.music-copy__text,
.music-copy p {
  font-family:Helvetica, Arial, sans-serif !important;
}

/* Vinyl: hidden behind cover; on hover exactly half-disc is exposed and spins. */
.music-artwork {
  position:relative;
  overflow:visible !important;
}
.music-artwork__vinyl {
  z-index:1 !important;
  left:50% !important;
  top:50% !important;
  width:92% !important;
  opacity:0 !important;
  visibility:visible !important;
  transform:translate(-50%,-50%) rotate(0deg) !important;
  animation:none !important;
  transition:opacity .25s ease, left .5s ease-out !important;
  pointer-events:none;
}
.music-artwork__cover {
  position:relative;
  z-index:2 !important;
}
.music-artwork:hover .music-artwork__vinyl,
.music-artwork:focus-within .music-artwork__vinyl,
.music-artwork.is-hovered .music-artwork__vinyl {
  left:100% !important;
  opacity:1 !important;
  animation:moodyHalfVinylSpin 1.333333s linear infinite !important;
}
@keyframes moodyHalfVinylSpin {
  from { transform:translate(-50%,-50%) rotate(0deg); }
  to   { transform:translate(-50%,-50%) rotate(360deg); }
}

@media(max-width:780px) {
  .hero-stream__content { padding-top:5vh !important; }
  .artist-week__grid { direction:ltr; }
  .artist-week .section-heading,
  .song-week .section-heading { text-align:left !important; }
  .stories-carousel__controls,
  .stories-carousel__nav,
  [data-carousel-controls] { right:20px !important; }
}

/* === Layout refinement v2 === */

/* Helvetica everywhere, including footer and song copy. */
html, body, body *, .site-footer, .site-footer *, .song-week, .song-week * {
  font-family: Helvetica, Arial, sans-serif !important;
}

/* Hero subtitle: large, bold, centered at bottom. */
.hero-stream__content {
  justify-content:flex-end !important;
  align-items:center !important;
  padding:48px 24px 54px !important;
}
.hero-stream__headline {
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  text-align:center !important;
}
.hero-stream__eyebrow {
  margin:0 !important;
  font-family:Helvetica, Arial, sans-serif !important;
  font-size:clamp(1.5rem,3vw,3rem) !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:-.035em !important;
  text-align:center !important;
}
.hero-stream__title,
.hero-stream__tagline {
  display:none !important;
}

/* Decades heading gets a wider editorial measure. */
.decades-section .section-heading,
#decades .section-heading {
  max-width:1120px !important;
  width:100% !important;
}
.decades-section .section-heading__title,
#decades .section-heading__title {
  max-width:1050px !important;
  width:100% !important;
  text-wrap:balance;
}

/* Timeline progress/scroll accent: purple, never orange. */
.timeline-progress,
.timeline__progress,
.timeline-progress__bar,
.timeline__progress-bar,
.decades-progress,
[class*="timeline"][class*="progress"],
[class*="decade"][class*="progress"] {
  background-color:#7c3aed !important;
  border-color:#7c3aed !important;
}
.timeline-progress::before,
.timeline-progress::after,
.timeline__progress::before,
.timeline__progress::after {
  background:#7c3aed !important;
}

/* Artist: title flush right; image right, text left in parallel columns. */
.artist-week {
  position:relative;
}
.artist-week .section-heading {
  width:min(1240px,calc(100% - 48px)) !important;
  max-width:none !important;
  margin-left:auto !important;
  margin-right:0 !important;
  padding-right:0 !important;
  text-align:right !important;
}
.artist-week__grid {
  direction:ltr !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(340px,.92fr) !important;
  align-items:center !important;
  gap:clamp(40px,7vw,110px) !important;
}
.artist-week__content,
.artist-week__copy {
  grid-column:1 !important;
  order:1 !important;
}
.artist-week__media,
.artist-week__image {
  grid-column:2 !important;
  order:2 !important;
  justify-self:end !important;
}

/* Stories arrows: always at the top edge on the right. */
.stories-carousel .stories-carousel__controls,
.stories-carousel .stories-carousel__nav,
.stories-carousel [data-carousel-controls] {
  top:0 !important;
  bottom:auto !important;
  right:max(24px,calc((100vw - 1240px)/2)) !important;
  left:auto !important;
  transform:none !important;
  margin:0 !important;
}

/* Song heading flush to the right side of the section/page. */
.song-week .section-heading {
  width:min(1240px,calc(100% - 48px)) !important;
  max-width:none !important;
  margin-left:auto !important;
  margin-right:0 !important;
  padding-right:0 !important;
  text-align:right !important;
}
.song-week__title,
.music-copy__title {
  font-family:Helvetica, Arial, sans-serif !important;
}
.song-week__text,
.song-week__description,
.music-copy,
.music-copy p {
  font-family:Helvetica, Arial, sans-serif !important;
}

/* Vinyl: hidden behind cover. Hover reveals a small slice on the LEFT.
   The slide uses the wrapper position; rotation stays independent and fluid. */
.music-artwork {
  position:relative !important;
  overflow:visible !important;
}
.music-artwork__vinyl {
  z-index:1 !important;
  top:50% !important;
  left:50% !important;
  width:92% !important;
  opacity:0 !important;
  visibility:visible !important;
  transform:translate(-50%,-50%) rotate(0deg) !important;
  transform-origin:center !important;
  animation:none !important;
  transition:left .62s cubic-bezier(.22,1,.36,1), opacity .24s ease !important;
  will-change:left,transform,opacity;
  pointer-events:none !important;
}
.music-artwork__cover {
  position:relative !important;
  z-index:2 !important;
}
.music-artwork:hover .music-artwork__vinyl,
.music-artwork:focus-within .music-artwork__vinyl,
.music-artwork.is-hovered .music-artwork__vinyl {
  left:34% !important;
  opacity:1 !important;
  animation:moodyVinylLeftSpin 1.333333s linear infinite !important;
}
@keyframes moodyVinylLeftSpin {
  from { transform:translate(-50%,-50%) rotate(0deg); }
  to   { transform:translate(-50%,-50%) rotate(360deg); }
}

/* Footer: explicitly Helvetica. */
.site-footer,
.site-footer a,
.site-footer p,
.site-footer li,
.site-footer span,
.site-footer strong {
  font-family:Helvetica, Arial, sans-serif !important;
}

@media(max-width:780px) {
  .hero-stream__content { padding:32px 20px 38px !important; }
  .hero-stream__eyebrow { font-size:clamp(1.35rem,7vw,2.2rem) !important; }
  .artist-week__grid { grid-template-columns:1fr !important; }
  .artist-week__content,.artist-week__copy,
  .artist-week__media,.artist-week__image { grid-column:1 !important; }
  .artist-week .section-heading,
  .song-week .section-heading {
    width:calc(100% - 40px) !important;
    margin-inline:20px !important;
    text-align:right !important;
  }
}

/* === v3 corrections === */

/* Restore the main Hero copy removed by the previous override. */
.hero-stream__title,
.hero-stream__tagline {
  display:block !important;
}
.hero-stream__content {
  justify-content:center !important;
  align-items:center !important;
  padding:40px 24px 78px !important;
}
.hero-stream__headline {
  position:static !important;
  width:100% !important;
  text-align:center !important;
}
.hero-stream__title {
  font-family:Helvetica,Arial,sans-serif !important;
  font-weight:700 !important;
}
.hero-stream__tagline {
  font-family:Helvetica,Arial,sans-serif !important;
}
.hero-stream__eyebrow {
  position:absolute !important;
  left:50% !important;
  bottom:38px !important;
  transform:translateX(-50%) !important;
  width:max-content !important;
  max-width:calc(100% - 40px) !important;
  margin:0 !important;
  font-family:Helvetica,Arial,sans-serif !important;
  font-size:clamp(1.5rem,3vw,3rem) !important;
  line-height:1 !important;
  font-weight:700 !important;
  text-align:center !important;
  white-space:nowrap;
}

/* All home-section headings aligned to the right. */
.home-section .section-heading,
.decades-section .section-heading,
.artist-week .section-heading,
.stories-carousel .section-heading,
.song-week .section-heading,
.parallax-section .section-heading {
  width:min(1240px,calc(100% - 48px)) !important;
  max-width:none !important;
  margin-left:auto !important;
  margin-right:0 !important;
  padding-right:0 !important;
  text-align:right !important;
}
.home-section .section-heading__title,
.decades-section .section-heading__title,
.artist-week .section-heading__title,
.stories-carousel .section-heading__title,
.song-week .section-heading__title,
.parallax-section .section-heading__title {
  margin-left:auto !important;
  text-align:right !important;
}

/* Vinyl v3: cover stays above it. Hover reveals only a slice on LEFT.
   Position transition and rotation use separate properties so they don't fight. */
.music-artwork {
  position:relative !important;
  overflow:visible !important;
  isolation:isolate;
}
.music-artwork__cover {
  position:relative !important;
  z-index:3 !important;
}
.music-artwork__vinyl {
  position:absolute !important;
  z-index:1 !important;
  top:50% !important;
  left:50% !important;
  width:90% !important;
  height:auto !important;
  aspect-ratio:1 !important;
  opacity:0 !important;
  visibility:visible !important;
  transform:translate(-50%,-50%) !important;
  rotate:0deg !important;
  animation:none !important;
  transition:left .7s cubic-bezier(.16,1,.3,1), opacity .24s ease !important;
  transform-origin:50% 50% !important;
  will-change:left,rotate,opacity;
  pointer-events:none !important;
}
.music-artwork:hover .music-artwork__vinyl,
.music-artwork:focus-within .music-artwork__vinyl,
.music-artwork.is-hovered .music-artwork__vinyl {
  left:24% !important;
  opacity:1 !important;
  animation:moodyVinylRotateV3 1.333333s linear infinite !important;
}
@keyframes moodyVinylRotateV3 {
  from { rotate:0deg; }
  to { rotate:360deg; }
}

@media(max-width:780px) {
  .hero-stream__eyebrow {
    bottom:24px !important;
    white-space:normal;
    width:calc(100% - 40px) !important;
    font-size:clamp(1.3rem,7vw,2rem) !important;
  }
  .home-section .section-heading,
  .decades-section .section-heading,
  .artist-week .section-heading,
  .stories-carousel .section-heading,
  .song-week .section-heading,
  .parallax-section .section-heading {
    width:calc(100% - 40px) !important;
    margin-inline:20px !important;
    text-align:right !important;
  }
}

/* === v4: requested structure corrections === */

/* HERO
   Moody Stereo moves upward.
   The existing lower "La historia del rock" remains in its current lower position.
   No duplicate "La historia del rock" is added under Moody Stereo. */
.hero-stream__content {
  justify-content:flex-start !important;
  align-items:center !important;
  padding:clamp(58px,9vh,105px) 24px 78px !important;
}
.hero-stream__headline {
  width:100% !important;
  text-align:center !important;
}
.hero-stream__title {
  display:block !important;
  margin:0 !important;
  font-family:Helvetica,Arial,sans-serif !important;
  font-weight:700 !important;
}
.hero-stream__tagline {
  display:block !important;
  font-family:Helvetica,Arial,sans-serif !important;
}
/* Keep the lower hero text where it already was. */
.hero-stream__eyebrow {
  bottom:38px !important;
}

/* DECADES: centered heading and slightly smaller title. */
.decades-section .section-heading,
#decades .section-heading {
  width:min(1180px,calc(100% - 48px)) !important;
  max-width:none !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}
.decades-section .section-heading__title,
#decades .section-heading__title {
  width:100% !important;
  max-width:1000px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
  font-size:clamp(2.4rem,5.2vw,5.7rem) !important;
  line-height:.96 !important;
}

/* ARTIST / MUSIC RECOMMENDATION: restore original left-led structure. */
.artist-week .section-heading,
.song-week .section-heading {
  width:min(1240px,calc(100% - 48px)) !important;
  max-width:none !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:left !important;
}
.artist-week .section-heading__title,
.song-week .section-heading__title {
  margin-left:0 !important;
  margin-right:auto !important;
  text-align:left !important;
}
.artist-week__grid {
  direction:ltr !important;
  display:grid !important;
  grid-template-columns:minmax(340px,.92fr) minmax(0,1fr) !important;
  align-items:center !important;
  gap:clamp(40px,7vw,110px) !important;
}
.artist-week__media,
.artist-week__image {
  grid-column:1 !important;
  order:1 !important;
  justify-self:start !important;
}
.artist-week__content,
.artist-week__copy {
  grid-column:2 !important;
  order:2 !important;
}

/* Helvetica is mandatory in artist/music recommendation areas. */
.artist-week,
.artist-week *,
.song-week,
.song-week *,
.music-copy,
.music-copy * {
  font-family:Helvetica,Arial,sans-serif !important;
}
/* Album descriptive copy: Helvetica bold. */
.song-week__text,
.song-week__description,
.music-copy__text,
.music-copy p {
  font-family:Helvetica,Arial,sans-serif !important;
  font-weight:700 !important;
}

/* VINYL v4
   Resting: completely behind the cover.
   Hover: smoothly slides LEFT until exactly half of the disc is outside.
   It stays there while hovered, then returns smoothly. */
.music-artwork {
  position:relative !important;
  overflow:visible !important;
  isolation:isolate !important;
}
.music-artwork__cover {
  position:relative !important;
  z-index:3 !important;
}
.music-artwork__vinyl {
  position:absolute !important;
  z-index:1 !important;
  top:50% !important;
  left:50% !important;
  width:92% !important;
  height:auto !important;
  aspect-ratio:1/1 !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:translate(-50%,-50%) !important;
  rotate:0deg !important;
  animation:none !important;
  transition:left .72s cubic-bezier(.22,1,.36,1) !important;
  will-change:left !important;
  pointer-events:none !important;
}
/* With disc width = 92% of cover, left:4% places its right edge at 50%:
   therefore half of the vinyl remains behind the cover and half protrudes left. */
.music-artwork:hover .music-artwork__vinyl,
.music-artwork:focus-within .music-artwork__vinyl,
.music-artwork.is-hovered .music-artwork__vinyl {
  left:4% !important;
  opacity:1 !important;
  animation:none !important;
}

@media(max-width:780px) {
  .hero-stream__content {
    padding:48px 20px 68px !important;
  }
  .decades-section .section-heading,
  #decades .section-heading,
  .artist-week .section-heading,
  .song-week .section-heading {
    width:calc(100% - 40px) !important;
    margin-inline:20px !important;
  }
  .artist-week__grid {
    grid-template-columns:1fr !important;
  }
  .artist-week__media,.artist-week__image,
  .artist-week__content,.artist-week__copy {
    grid-column:1 !important;
  }
}

/* === v5 requested corrections === */

/* HERO: keep the lower "La historia del rock", remove the line directly under Moody Stereo. */
.hero-stream__tagline {
  display:none !important;
}
.hero-stream__title {
  margin-bottom:0 !important;
}

/* Artist and song headings: align farther left with the main content edge. */
.artist-week .section-heading,
.song-week .section-heading {
  width:min(1240px,calc(100% - 48px)) !important;
  max-width:1240px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:0 !important;
  text-align:left !important;
}
.artist-week .section-heading__title,
.song-week .section-heading__title {
  margin-left:0 !important;
  margin-right:auto !important;
  text-align:left !important;
}

/* STORIES: full black block with white typography and controls. */
.stories-carousel,
.stories-section,
#stories {
  background:#050505 !important;
  color:#fff !important;
}
.stories-carousel *,
.stories-section *,
#stories * {
  color:#fff !important;
  border-color:rgba(255,255,255,.25) !important;
}
.stories-carousel a,
.stories-section a,
#stories a {
  color:#fff !important;
}
.stories-carousel button,
.stories-section button,
#stories button {
  color:#fff !important;
  border-color:rgba(255,255,255,.55) !important;
  background:transparent !important;
}

/* SONG: right-side copy is Helvetica Bold. */
.song-week__content,
.song-week__content *,
.song-week__copy,
.song-week__copy *,
.music-copy,
.music-copy *,
.song-week__text,
.song-week__description {
  font-family:Helvetica,Arial,sans-serif !important;
  font-weight:700 !important;
}

/* VINYL v5:
   Separate slide motion (outer vinyl) from rotation (its visual contents).
   Hidden behind cover -> hover slides left -> half disc visible -> mouse out returns. */
.music-artwork {
  position:relative !important;
  overflow:visible !important;
  isolation:isolate !important;
}
.music-artwork__cover {
  position:relative !important;
  z-index:4 !important;
}
.music-artwork__vinyl {
  position:absolute !important;
  z-index:2 !important;
  top:50% !important;
  left:50% !important;
  width:92% !important;
  height:92% !important;
  aspect-ratio:1/1 !important;
  opacity:0 !important;
  visibility:visible !important;
  transform:translate(-50%,-50%) !important;
  rotate:0deg !important;
  animation:none !important;
  transition:
    left .72s cubic-bezier(.22,1,.36,1),
    opacity .18s ease !important;
  will-change:left,opacity !important;
  pointer-events:none !important;
}
/* left:4% with a 92%-wide disc exposes roughly half of it beyond the left cover edge. */
.music-artwork:hover .music-artwork__vinyl,
.music-artwork:focus-within .music-artwork__vinyl,
.music-artwork.is-hovered .music-artwork__vinyl {
  left:4% !important;
  opacity:1 !important;
}
/* Spin the vinyl's inner visual instead of the sliding wrapper. */
.music-artwork__vinyl > *,
.music-artwork__vinyl img {
  transform-origin:50% 50% !important;
}
.music-artwork:hover .music-artwork__vinyl > *,
.music-artwork:focus-within .music-artwork__vinyl > *,
.music-artwork.is-hovered .music-artwork__vinyl > *,
.music-artwork:hover .music-artwork__vinyl img,
.music-artwork:focus-within .music-artwork__vinyl img,
.music-artwork.is-hovered .music-artwork__vinyl img {
  animation:moodyVinylInnerSpin 1.6s linear infinite !important;
}
@keyframes moodyVinylInnerSpin {
  from { transform:rotate(0deg); }
  to { transform:rotate(360deg); }
}

@media(max-width:780px) {
  .artist-week .section-heading,
  .song-week .section-heading {
    width:calc(100% - 40px) !important;
    margin-inline:20px !important;
  }
}

/* === v6: exact section alignment + Stories black === */

/* Artist heading: same left edge as the image/grid below. */
.artist-week .section-heading {
  width:min(1240px, calc(100% - 48px)) !important;
  max-width:1240px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:0 !important;
  padding-right:0 !important;
  text-align:left !important;
}
.artist-week .section-heading__title,
.artist-week .section-heading__kicker {
  margin-left:0 !important;
  margin-right:auto !important;
  padding-left:0 !important;
  text-align:left !important;
}

/* Song heading: same left edge as its content/artwork grid below. */
.song-week .section-heading {
  width:min(1240px, calc(100% - 48px)) !important;
  max-width:1240px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:0 !important;
  padding-right:0 !important;
  text-align:left !important;
}
.song-week .section-heading__title,
.song-week .section-heading__kicker {
  margin-left:0 !important;
  margin-right:auto !important;
  padding-left:0 !important;
  text-align:left !important;
}

/* Stories: force the complete section and its inner wrappers to black/white. */
.stories-carousel,
.stories-carousel .shell,
.stories-carousel__inner,
.stories-carousel__track,
.stories-section,
.stories-section .shell,
#stories,
#stories .shell {
  background-color:#050505 !important;
  color:#fff !important;
}
.stories-carousel h1,
.stories-carousel h2,
.stories-carousel h3,
.stories-carousel h4,
.stories-carousel p,
.stories-carousel span,
.stories-carousel a,
.stories-carousel time,
.stories-carousel .section-heading__title,
.stories-carousel .section-heading__kicker,
.stories-section h1,
.stories-section h2,
.stories-section h3,
.stories-section p,
.stories-section span,
.stories-section a,
#stories h1,
#stories h2,
#stories h3,
#stories p,
#stories span,
#stories a {
  color:#fff !important;
}
.stories-carousel article,
.stories-carousel__card,
.story-card,
.stories-section article {
  background:#050505 !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.24) !important;
}
.stories-carousel button,
.stories-carousel__prev,
.stories-carousel__next,
.stories-section button,
#stories button {
  color:#fff !important;
  border-color:rgba(255,255,255,.55) !important;
  background:transparent !important;
}
.stories-carousel button svg,
.stories-section button svg,
#stories button svg {
  color:#fff !important;
  stroke:currentColor !important;
}

@media(max-width:780px) {
  .artist-week .section-heading,
  .song-week .section-heading {
    width:calc(100% - 40px) !important;
    margin-left:20px !important;
    margin-right:20px !important;
  }
}

/* === v7: headings use the exact Historias alignment; real Stories class black === */

/* All three headings live inside .shell. Do not give Artist/Song a second width/margin:
   this makes their left edge exactly the same as Historias. */
.artist-week .section-heading,
.song-week .section-heading,
.stories-feature .section-heading {
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
  text-align:left !important;
}
.artist-week .section-heading__title,
.artist-week .section-heading__kicker,
.song-week .section-heading__title,
.song-week .section-heading__kicker,
.stories-feature .section-heading__title,
.stories-feature .section-heading__kicker {
  margin-left:0 !important;
  margin-right:auto !important;
  padding-left:0 !important;
  text-align:left !important;
}

/* The actual blog-post section is .stories-feature (not .stories-carousel).
   Force the entire section, cards/details and controls to black/white. */
.stories-feature,
.stories-feature > .shell,
.stories-feature .squeeze-carousel,
.stories-feature .squeeze-carousel__panels,
.stories-feature .squeeze-carousel__details,
.stories-feature .squeeze-detail {
  background:#050505 !important;
  color:#fff !important;
}
.stories-feature .section-heading,
.stories-feature .section-heading *,
.stories-feature .squeeze-detail,
.stories-feature .squeeze-detail *,
.stories-feature .squeeze-panel__number,
.stories-feature .squeeze-panel__vertical-title,
.stories-feature .button-link {
  color:#fff !important;
}
.stories-feature .squeeze-detail,
.stories-feature .squeeze-carousel__details,
.stories-feature .squeeze-carousel__controls button,
.stories-feature .squeeze-panel {
  border-color:rgba(255,255,255,.28) !important;
}
.stories-feature .squeeze-carousel__controls button {
  background:#050505 !important;
  color:#fff !important;
}
.stories-feature .squeeze-carousel__controls button:hover,
.stories-feature .squeeze-carousel__controls button:focus-visible {
  background:#fff !important;
  color:#050505 !important;
}

/* === v8: artist description + song typography === */

/* Artist of the week: short descriptive copy in black. */
.artist-week__content p,
.artist-week__copy p,
.artist-week__description,
.artist-week .entry-summary {
  color:#050505 !important;
}

/* Song of the week: descriptive/editorial copy clearly smaller than the song title. */
.song-week__text,
.song-week__description,
.music-copy__text,
.music-copy p {
  font-family:Helvetica,Arial,sans-serif !important;
  font-size:clamp(.95rem,1.15vw,1.12rem) !important;
  line-height:1.55 !important;
}

/* Editorial text in the music recommendation is bold. */
.song-week__editorial,
.music-copy__editorial,
.song-week [class*="editorial"],
.music-copy [class*="editorial"] {
  font-family:Helvetica,Arial,sans-serif !important;
  font-weight:700 !important;
}

/* === v9: smaller song typography + simple reliable vinyl === */

/* "Canción" / song name: smaller than before. */
.song-week__title,
.music-copy__title {
  font-size:clamp(1.45rem,2.35vw,2.65rem) !important;
  line-height:1.02 !important;
}

/* Editorial/descriptive copy: smaller, still Helvetica Bold. */
.song-week__text,
.song-week__description,
.music-copy__text,
.music-copy p,
.song-week__editorial,
.music-copy__editorial,
.song-week [class*="editorial"],
.music-copy [class*="editorial"] {
  font-family:Helvetica,Arial,sans-serif !important;
  font-size:clamp(.82rem,.92vw,.98rem) !important;
  line-height:1.5 !important;
  font-weight:700 !important;
}

/* VINYL v9 — intentionally simple:
   no JS state, no rotation, one transition only.
   Default: centered behind cover.
   Hover: slides left until half of the disc protrudes.
   Mouse out: returns to center. */
.music-artwork {
  position:relative !important;
  overflow:visible !important;
}
.music-artwork__cover {
  position:relative !important;
  z-index:2 !important;
}
.music-artwork__vinyl {
  position:absolute !important;
  z-index:1 !important;
  top:50% !important;
  left:50% !important;
  width:92% !important;
  height:92% !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:translate(-50%,-50%) !important;
  animation:none !important;
  transition:left .6s ease !important;
  pointer-events:none !important;
}
.music-artwork:hover .music-artwork__vinyl {
  left:4% !important;
}
/* Kill older nested spin rules so only the slide remains. */
.music-artwork__vinyl *,
.music-artwork__vinyl img,
.music-artwork:hover .music-artwork__vinyl *,
.music-artwork:hover .music-artwork__vinyl img {
  animation:none !important;
}

/* === v10: smaller recommendation copy + corrected vinyl hover direction === */

/* Recommendation text under/around "Canción": smaller. */
.song-week__text,
.song-week__description,
.music-copy__text,
.music-copy p {
  font-family:Helvetica,Arial,sans-serif !important;
  font-size:clamp(.74rem,.80vw,.88rem) !important;
  line-height:1.48 !important;
  font-weight:700 !important;
}

/* Editorial text: a little smaller too. */
.song-week__editorial,
.music-copy__editorial,
.song-week [class*="editorial"],
.music-copy [class*="editorial"] {
  font-family:Helvetica,Arial,sans-serif !important;
  font-size:clamp(.70rem,.76vw,.84rem) !important;
  line-height:1.45 !important;
  font-weight:700 !important;
}

/* VINYL v10:
   Hidden behind the cover at rest.
   It becomes visible and slides LEFT only while the mouse is over the artwork.
   On mouse-out it slides back and fades behind the cover. */
.music-artwork {
  position:relative !important;
  overflow:visible !important;
}
.music-artwork__cover {
  position:relative !important;
  z-index:3 !important;
}
.music-artwork__vinyl {
  position:absolute !important;
  z-index:1 !important;
  top:50% !important;
  left:50% !important;
  width:92% !important;
  height:92% !important;
  visibility:visible !important;
  opacity:0 !important;
  transform:translate(-50%,-50%) !important;
  animation:none !important;
  transition:left .6s ease, opacity .12s ease !important;
  pointer-events:none !important;
}
/* IMPORTANT: appearance happens on hover, not on mouse-out. */
.music-artwork:hover .music-artwork__vinyl {
  left:4% !important;
  opacity:1 !important;
}
/* Neutralize old focus/JS hover rules from previous versions. */
.music-artwork:focus-within:not(:hover) .music-artwork__vinyl,
.music-artwork.is-hovered:not(:hover) .music-artwork__vinyl {
  left:50% !important;
  opacity:0 !important;
}
.music-artwork__vinyl *,
.music-artwork__vinyl img,
.music-artwork:hover .music-artwork__vinyl *,
.music-artwork:hover .music-artwork__vinyl img {
  animation:none !important;
}

/* === v11: target the real Song Week markup === */

/* Actual song title inside "Canción de la semana". */
.song-week .song-week__identity h3 {
  font-family:Helvetica,Arial,sans-serif !important;
  font-size:clamp(1.65rem,2.6vw,2.85rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.035em !important;
  font-weight:700 !important;
  margin:.35rem 0 .55rem !important;
}

/* Actual editorial paragraph on the right. */
.song-week .song-week__editorial p {
  font-family:Helvetica,Arial,sans-serif !important;
  font-size:clamp(.78rem,.9vw,.94rem) !important;
  line-height:1.5 !important;
  font-weight:700 !important;
  margin-top:0 !important;
}

/* VINYL v11
   Resting state: fully hidden behind the cover.
   Mouse enters artwork: disc becomes visible and slides LEFT.
   Mouse leaves: NO exit animation — it immediately resets behind the cover. */
.song-week .music-artwork {
  position:relative !important;
  overflow:visible !important;
}
.song-week .music-artwork__cover {
  position:absolute !important;
  inset:0 !important;
  z-index:3 !important;
}
.song-week .music-artwork__vinyl {
  position:absolute !important;
  z-index:1 !important;
  top:50% !important;
  left:50% !important;
  width:92% !important;
  height:92% !important;
  border-radius:50% !important;
  opacity:0 !important;
  visibility:hidden !important;
  transform:translate(-50%,-50%) !important;
  animation:none !important;
  transition:none !important;
  pointer-events:none !important;
}

/* Transition exists ONLY while :hover is active, so there is no mouse-out animation. */
.song-week .music-artwork:hover .music-artwork__vinyl {
  left:4% !important;
  opacity:1 !important;
  visibility:visible !important;
  transition:left .62s cubic-bezier(.22,1,.36,1), opacity .12s ease !important;
  animation:none !important;
}

/* Remove every previous focus/class-based trigger. Hover is the only trigger. */
.song-week .music-artwork:focus-within:not(:hover) .music-artwork__vinyl,
.song-week .music-artwork.is-hovered:not(:hover) .music-artwork__vinyl,
.song-week .music-artwork.is-active:not(:hover) .music-artwork__vinyl,
.song-week .music-artwork.is-playing:not(:hover) .music-artwork__vinyl {
  left:50% !important;
  opacity:0 !important;
  visibility:hidden !important;
  transition:none !important;
  animation:none !important;
}

/* No spin: simple reliable slide only. */
.song-week .music-artwork__vinyl *,
.song-week .music-artwork:hover .music-artwork__vinyl * {
  animation:none !important;
}

/* === v12: one step larger + rebuilt vinyl hover === */

/* Both texts one step larger than v11. */
.song-week .song-week__identity h3 {
  font-size:clamp(1.8rem,2.85vw,3.05rem) !important;
}
.song-week .song-week__editorial p {
  font-size:clamp(.86rem,.98vw,1.02rem) !important;
}

/* VINYL v12 — rebuilt from scratch.
   Base: disc is centered behind the cover and invisible.
   Hover IN: it becomes visible immediately and slides left.
   Hover OUT: it resets instantly; there is no exit animation. */
.song-week .music-artwork {
  position:relative !important;
  overflow:visible !important;
  isolation:isolate !important;
}
.song-week .music-artwork__cover {
  position:relative !important;
  z-index:10 !important;
}
.song-week .music-artwork__vinyl {
  position:absolute !important;
  z-index:1 !important;
  top:50% !important;
  left:50% !important;
  width:92% !important;
  height:92% !important;
  opacity:0 !important;
  visibility:hidden !important;
  transform:translate(-50%,-50%) !important;
  animation:none !important;
  transition:none !important;
  pointer-events:none !important;
}

/* The transition is declared ONLY in the hover state.
   Therefore it runs entering hover, never when leaving it. */
.song-week .music-artwork:hover > .music-artwork__vinyl,
.song-week .music-artwork:hover .music-artwork__vinyl {
  visibility:visible !important;
  opacity:1 !important;
  left:4% !important;
  transition:left .58s cubic-bezier(.2,.8,.2,1) !important;
}

/* Explicitly neutralize every legacy state when the pointer is not over artwork. */
.song-week .music-artwork:not(:hover) .music-artwork__vinyl,
.song-week .music-artwork.is-hovered:not(:hover) .music-artwork__vinyl,
.song-week .music-artwork.is-playing:not(:hover) .music-artwork__vinyl,
.song-week .music-artwork:focus-within:not(:hover) .music-artwork__vinyl {
  left:50% !important;
  opacity:0 !important;
  visibility:hidden !important;
  transition:none !important;
  animation:none !important;
}
.song-week .music-artwork__vinyl *,
.song-week .music-artwork__vinyl img {
  animation:none !important;
  transition:none !important;
}

/* === v13: larger Song Week copy + cover-only vinyl hover === */

/* Two steps larger than v12, using the confirmed real markup. */
.song-week .song-week__identity h3 {
  font-size:clamp(2.05rem,3.2vw,3.4rem) !important;
  line-height:1.02 !important;
}
.song-week .song-week__editorial p {
  font-size:clamp(1rem,1.12vw,1.14rem) !important;
  line-height:1.5 !important;
}

/*
 * VINYL v13 — completely rebuilt around the COVER itself.
 *
 * The cover is after the vinyl in the DOM, so :has() lets the parent react
 * specifically when the pointer is on .music-artwork__cover.
 *
 * Rest:
 *   vinyl sits centered behind the cover and is invisible.
 *
 * Pointer touches/enters the IMAGE/COVER:
 *   vinyl becomes visible immediately and slides left to half exposure.
 *
 * Pointer remains over the cover:
 *   vinyl stays exposed.
 *
 * Pointer leaves the cover:
 *   vinyl resets immediately. No mouse-out animation.
 */
.song-week .music-artwork {
  position:relative !important;
  overflow:visible !important;
  isolation:isolate !important;
}

.song-week .music-artwork__cover {
  position:relative !important;
  z-index:10 !important;
}

.song-week .music-artwork__vinyl {
  position:absolute !important;
  z-index:1 !important;
  top:50% !important;
  left:50% !important;
  width:92% !important;
  height:92% !important;
  transform:translate(-50%,-50%) !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  animation:none !important;
  transition:none !important;
}

/* ONLY the cover/image hover triggers the vinyl. */
.song-week .music-artwork:has(.music-artwork__cover:hover) .music-artwork__vinyl {
  left:4% !important;
  opacity:1 !important;
  visibility:visible !important;
  transition:left .62s cubic-bezier(.22,1,.36,1) !important;
}

/* No legacy parent-hover, focus, playing or JS-class trigger. */
.song-week .music-artwork:hover:not(:has(.music-artwork__cover:hover)) .music-artwork__vinyl,
.song-week .music-artwork.is-hovered:not(:has(.music-artwork__cover:hover)) .music-artwork__vinyl,
.song-week .music-artwork.is-playing:not(:has(.music-artwork__cover:hover)) .music-artwork__vinyl,
.song-week .music-artwork:focus-within:not(:has(.music-artwork__cover:hover)) .music-artwork__vinyl {
  left:50% !important;
  opacity:0 !important;
  visibility:hidden !important;
  transition:none !important;
  animation:none !important;
}

.song-week .music-artwork__vinyl *,
.song-week .music-artwork__vinyl img {
  animation:none !important;
  transition:none !important;
}


/* === v14: compact Historias + reliable vinyl peek === */

/* Historias: less vertical bulk. */
.stories-feature {
  padding-top:clamp(48px,6vw,76px) !important;
  padding-bottom:clamp(48px,6vw,76px) !important;
}
.stories-feature__header {
  position:relative;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  margin-bottom:clamp(20px,2.4vw,32px);
}
.stories-feature__header .section-heading {
  flex:1 1 auto;
  margin-bottom:0 !important;
}
.stories-feature__header .squeeze-carousel__controls {
  position:static !important;
  flex:0 0 auto;
  display:flex !important;
  gap:8px;
  margin:0 !important;
  padding-top:4px;
}
.stories-feature .squeeze-carousel__panels {
  height:clamp(330px,40vw,500px) !important;
}
.stories-feature .squeeze-carousel__details {
  min-height:170px !important;
  margin-top:1.45rem !important;
}
.stories-feature .squeeze-detail h3 {
  font-size:clamp(1.8rem,3.35vw,3.65rem) !important;
  margin:.55rem 0 .75rem !important;
}
.stories-feature .squeeze-carousel__controls button {
  width:46px !important;
  height:46px !important;
}

/* Timeline: replace orange hover/accent circle with green. */
.decades-section .timeline-dot:hover,
.decades-section .timeline-item:hover .timeline-dot,
.decades-section [class*="timeline"] button:hover::before,
.decades-section [class*="timeline"] a:hover::before,
#decades .timeline-dot:hover,
#decades .timeline-item:hover .timeline-dot {
  background:#22c55e !important;
  border-color:#22c55e !important;
  color:#22c55e !important;
}

/* Also cover the actual decade marker variants used by the theme. */
.decades-section [class*="dot"]:hover,
.decades-section [class*="marker"]:hover,
.decades-section [class*="year"]:hover [class*="dot"],
.decades-section [class*="year"]:hover [class*="marker"],
#decades [class*="dot"]:hover,
#decades [class*="marker"]:hover {
  background-color:#22c55e !important;
  border-color:#22c55e !important;
}

/* Header logo: let it hang slightly below the menu divider line. */
.site-header {
  overflow:visible !important;
}
.site-header__inner {
  overflow:visible !important;
}
.site-brand {
  position:relative !important;
  z-index:20 !important;
  transform:translateY(10px) !important;
}
.site-brand img,
.custom-logo-link,
.custom-logo {
  position:relative !important;
  z-index:20 !important;
}


/* === v16: exact timeline node, lower logo, bold nav/footer, stronger vinyl peek === */

/* Exact timeline markup is .timeline-card__node. Override the original
   .timeline-card__link:hover .timeline-card__node { background:var(--signal) }. */
.decades-section .timeline-card__link:hover .timeline-card__node,
#decades .timeline-card__link:hover .timeline-card__node {
  background:#22c55e !important;
  border-color:var(--paper-bright) !important;
  box-shadow:0 0 0 1px #22c55e !important;
}

/* Header navigation: Helvetica Bold. */
.site-header .site-nav,
.site-header .site-nav a,
.site-header__nav,
.site-header__nav a,
.mobile-menu .mobile-nav,
.mobile-menu .mobile-nav a {
  font-family:Helvetica,Arial,sans-serif !important;
  font-weight:700 !important;
}

/* Push the central logo farther below the menu divider. */
.site-header,
.site-header__inner {
  overflow:visible !important;
}
.site-header .site-brand {
  transform:translateY(22px) !important;
  z-index:30 !important;
}
.site-header .site-brand:hover {
  transform:translateY(22px) rotate(-3deg) scale(1.03) !important;
}

/* Footer: Helvetica Bold everywhere + custom logo. */
.site-footer,
.site-footer *,
.site-footer a,
.site-footer p,
.site-footer li,
.site-footer span,
.site-footer strong {
  font-family:Helvetica,Arial,sans-serif !important;
  font-weight:700 !important;
}
.site-footer__tagline {
  font-style:normal !important;
}
.site-footer__logo {
  display:inline-block;
  width:clamp(90px,9vw,132px);
  margin:0 0 2rem;
  text-decoration:none;
}
.site-footer__logo-image {
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
.site-footer__logo-fallback {
  display:block;
  font-size:1rem;
  line-height:.9;
  letter-spacing:-.03em;
}


/* === v17: larger Helvetica Bold nav + 21st.dev-style vinyl slide === */

/* Larger navigation so the menu occupies more horizontal space. */
.site-header .site-nav,
.site-header .site-nav a,
.site-header__nav,
.site-header__nav a {
  font-family:Helvetica,Arial,sans-serif !important;
  font-weight:700 !important;
}
.site-header .site-nav a,
.site-header__nav a {
  font-size:clamp(1rem,1.18vw,1.22rem) !important;
  letter-spacing:-.015em !important;
}
.site-header .site-nav ul,
.site-header__nav ul,
.site-header .menu {
  gap:clamp(26px,3.25vw,54px) !important;
}
