/* Active private Home; the shared Quiet Contemporary masthead stays global. */
body[data-sde-home] { --paper:#faf8f4; --ink:#252522; --muted:#64635f; --accent:#486875; --rule:#c6c4bc; --home-gutter:clamp(24px,4.1vw,64px); background:var(--paper); color:var(--ink); }
body[data-sde-home] .shell { max-width:1568px; padding-inline:var(--home-gutter); }
body[data-sde-home] a:focus-visible,body[data-sde-home] button:focus-visible,body[data-sde-home] summary:focus-visible { outline:2px solid #486875; outline-offset:5px; }
body[data-sde-home] main { padding-top:0; }
.sde-hero { position:relative; display:grid; grid-template-columns:minmax(0,.31fr) minmax(0,.42fr) minmax(140px,.27fr); align-items:center; gap:clamp(20px,2.4vw,36px); padding:30px 0 34px; min-height:580px; }
.sde-opening { position:relative; z-index:2; padding-top:24px; }
.sde-opening .eyebrow { color:#526f7e; font:12px/1.8 'Baskerville',Georgia,serif; letter-spacing:.16em; max-width:340px; margin-bottom:24px; }
body[data-sde-home] .sde-title { font:400 clamp(65px,6.25vw,99px)/.98 'Didot','Bodoni 72',serif; letter-spacing:.025em; margin:0 0 10px; overflow-wrap:normal; color:#141616; }
.sde-subtitle { font:italic clamp(25px,2.55vw,38px)/1.1 'Baskerville',Georgia,serif; white-space:nowrap; margin:0 0 29px; letter-spacing:.01em; }
.sde-opening .lead { font:400 18px/1.55 'Baskerville',Georgia,serif; color:#575852; max-width:370px; margin:0 0 22px; }
.sde-opening .actions { display:flex; flex-direction:column; align-items:flex-start; gap:0; margin-top:22px; padding-top:19px; position:relative; }
.sde-opening .actions:before { content:''; position:absolute; top:0; left:0; width:30px; border-top:1px solid var(--ink); }
.sde-opening .actions .button,.sde-opening .actions button { background:none; border:0; color:var(--ink); padding:10px 0; min-height:44px; font:11px/1.5 var(--sans); letter-spacing:.16em; text-transform:uppercase; text-decoration:none; justify-content:flex-start; }
.sde-opening .actions a:hover,.sde-opening .actions button:hover { color:var(--accent); text-decoration:underline; }
.sde-portrait-stage { position:relative; isolation:isolate; width:100%; max-width:540px; justify-self:center; }
.sde-portrait { position:relative; z-index:1; margin:0; width:100%; aspect-ratio:1; }
.sde-portrait img { display:block; width:100%; height:100%; object-fit:contain; }
.sde-wash { position:absolute; z-index:0; pointer-events:none; }
.sde-wash.blue { left:-18%; top:-4%; width:36%; height:100%; object-fit:fill; }
.sde-wash.blush { right:-18%; bottom:-2%; width:48%; height:42%; object-fit:fill; }
.sde-side { align-self:center; padding-top:40px; padding-left:clamp(70px,14vw,210px); z-index:2; }
.sde-side .sde-side-label { font:11px/1.4 var(--sans); text-transform:uppercase; letter-spacing:.18em; margin-bottom:12px; color:var(--muted); }
.sde-side a { display:block; font:15px/1.4 'Baskerville',Georgia,serif; letter-spacing:.13em; text-transform:uppercase; min-height:44px; padding:11px 0; text-decoration:none; }
.sde-side a:hover { text-decoration:underline; }
.sde-side .sde-side-meta { display:grid; gap:7px; border-top:1px solid var(--ink); padding-top:22px; margin-top:18px; max-width:190px; }
.sde-side .sde-side-meta span { font:10px/1.5 var(--sans); text-transform:uppercase; letter-spacing:.13em; color:var(--muted); }
.sde-side .sde-side-meta strong { font:400 22px/1.1 'Baskerville',Georgia,serif; letter-spacing:.035em; }
.sde-filmstrip { width:calc(100% + (2 * var(--home-gutter))); margin-inline:calc(-1 * var(--home-gutter)); overflow-x:auto; overscroll-behavior-inline:contain; scrollbar-width:thin; scrollbar-color:#879398 transparent; background:#171717; }
.sde-filmstrip:focus-visible { outline:3px solid #597f91; outline-offset:3px; }
.sde-filmstrip img { display:block; width:100%; height:auto; aspect-ratio:1448/206; }
.sde-quote { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.08fr); align-items:center; gap:clamp(30px,5vw,80px); margin-top:clamp(54px,7vw,96px); }
.sde-quote figure { position:relative; margin:0; padding-left:38px; }
.sde-quote figure:before { content:''; position:absolute; inset:0 auto 0 0; width:48px; background-image:url('blush-wash.webp'); background-size:100% 100%; }
.sde-quote img { display:block; width:100%; height:auto; aspect-ratio:571/172; }
.sde-pause-copy { align-self:center; max-width:560px; border-top:1px solid var(--rule); padding-top:24px; }
.sde-pause-copy .eyebrow { margin:0 0 14px; color:#526f7e; }
.sde-pause-title { margin:0 0 16px; font:400 clamp(27px,2.2vw,36px)/1.16 'Baskerville',Georgia,serif; letter-spacing:-.018em; }
.sde-pause-text { margin:0; max-width:480px; color:var(--muted); font:15px/1.65 var(--sans); }
.sde-record { margin-top:clamp(42px,5vw,68px); }
.open-record { border-top:1px solid var(--rule); padding-top:clamp(24px,3vw,40px); }
.open-record-layout { display:grid; grid-template-columns:minmax(190px,.55fr) minmax(0,1.45fr); align-items:start; gap:clamp(32px,6vw,90px); }
.open-record-heading .eyebrow { margin:0 0 12px; }
.open-record-heading h2 { max-width:390px; margin:0; font:400 clamp(34px,3.5vw,50px)/1.04 'Baskerville',Georgia,serif; letter-spacing:-.025em; }
.open-record-layout aside { padding:0; border-left:0; }
.sde-record .big-number { font-size:clamp(58px,6vw,84px); line-height:.92; margin:3px 0 10px; }
.sde-record .number-caption { margin-bottom:16px; }
.open-record .stats { grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(18px,3vw,44px); margin-top:24px; padding-top:24px; border-top:1px solid var(--rule); }
.open-record .stats strong { font-size:clamp(27px,2.7vw,40px); }
.open-record .metric-help { margin-top:16px; }
.sde-record .coverage { border-color:var(--rule); }
.sde-record .portrait-entry { margin-top:clamp(54px,7vw,92px); padding-top:clamp(26px,3vw,38px); border-top:1px solid var(--rule); border-bottom:0; }
.home-archive-sequence { margin-top:clamp(58px,8vw,108px); }
.home-archive-sequence>.section { margin-top:0; }
.home-archive-sequence>.section+.section { margin-top:clamp(48px,6vw,82px); padding-top:clamp(24px,3vw,36px); border-top:1px solid var(--rule); }
.sde-record>.section>.section-head { border-top-color:var(--rule); }
.home-archive-sequence>.section:first-child>.section-head { border-top-color:var(--rule); }
.home-archive-sequence>.section+.section h2 { font:400 clamp(27px,2.4vw,36px)/1.1 'Baskerville',Georgia,serif; letter-spacing:-.015em; }
.home-archive-sequence>.section+.section .ranked a { font:400 clamp(19px,1.65vw,24px)/1.24 'Baskerville',Georgia,serif; letter-spacing:-.01em; }
.home-archive-sequence>.section+.section .ranked li { padding-block:14px; }
.sde-record .year-row { padding-block:20px; }
.sde-record .histogram i { background:#839596; }
@media(min-width:1500px) { .sde-hero { min-height:620px; } }
@media(max-width:1100px) and (min-width:701px) { .sde-hero { grid-template-columns:minmax(0,1fr) minmax(0,1.3fr); min-height:520px; } .sde-side { display:none; } .sde-wash.blue { left:-14%; } .sde-wash.blush { right:-5%; } .sde-opening .eyebrow { font-size:10px; } .sde-subtitle { font-size:27px; } }
@media(max-width:700px) {
 body[data-sde-home] { --home-gutter:24px; }
 .sde-hero { display:grid; grid-template-columns:1fr; gap:0; min-height:0; padding:30px 0 22px; }
 .sde-opening { display:contents; }
 .sde-opening .eyebrow { grid-row:1; font-size:10px; letter-spacing:.12em; margin:0 0 14px; max-width:none; }
 body[data-sde-home] .sde-title { grid-row:2; font-size:clamp(58px,17vw,74px); letter-spacing:.045em; margin:0 0 6px; }
 .sde-subtitle { grid-row:3; font-size:27px; margin:0 0 20px; }
 .sde-portrait-stage { grid-row:4; width:min(100%,370px); margin:0 auto 20px; }
 .sde-opening .lead { grid-row:5; font-size:18px; line-height:1.45; max-width:none; margin:0 0 11px; }
 .sde-opening .actions { grid-row:6; margin:0; padding-top:0; gap:0; }
 .sde-opening .actions:before { display:none; }
 .sde-opening .actions .button,.sde-opening .actions button { font-size:11px; min-height:44px; }
 .sde-opening [data-random-status] { grid-row:7; }
 .sde-wash.blue { top:1%; left:-4%; width:39%; height:96%; }
 .sde-wash.blush { right:-3%; bottom:0; width:43%; height:42%; }
 .sde-side { display:none; }
 .sde-filmstrip img { width:1000px; max-width:none; height:auto; }
 .sde-filmstrip { scroll-snap-type:none; }
 .sde-quote { grid-template-columns:1fr; gap:28px; padding-top:30px; }
 .sde-quote figure { padding-left:20px; }
 .sde-quote figure:before { width:27px; }
 .sde-pause-copy { padding-top:20px; margin-inline:0; }
 .sde-pause-title { font-size:27px; }
 .sde-record { margin-top:36px; }
 .open-record { padding-top:24px; }
 .open-record-layout { grid-template-columns:1fr; gap:18px; }
 .open-record-heading h2 { max-width:none; font-size:34px; }
 .sde-record .big-number { font-size:62px; }
 .open-record .stats { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:20px; padding-top:20px; }
 .open-record .stats strong { font-size:30px; }
 .sde-record .portrait-entry { margin-top:48px; padding-top:25px; }
 .home-archive-sequence { margin-top:58px; }
 .home-archive-sequence>.section+.section { margin-top:46px; }
}
@media(max-width:350px) {
 body[data-sde-home] { --home-gutter:20px; }
 .sde-hero { padding-top:25px; }
 body[data-sde-home] .sde-title { font-size:55px; letter-spacing:.025em; }
 .sde-subtitle { white-space:normal; font-size:25px; line-height:1.08; margin-bottom:18px; }
 .sde-portrait-stage { width:min(100%,280px); margin-bottom:18px; }
 .sde-wash.blue { left:-2%; width:36%; }
 .sde-wash.blush { right:-1%; width:40%; }
 .sde-opening .lead { font-size:17px; }
 .sde-record .big-number { font-size:54px; }
 .open-record .stats strong { font-size:27px; }
}
@media(prefers-reduced-motion:reduce) { body[data-sde-home] * { transition:none !important; animation:none !important; } }

.sde-month-ledger { border-top:1px solid var(--rule); }
.sde-month-ledger>summary { min-height:48px; padding:14px 0; cursor:pointer; font:17px/1.5 'Baskerville',Georgia,serif; }
.sde-month-ledger[open]>summary { border-bottom:1px solid var(--rule); }

/* Human-first Home index: music first, deeper archive controls on demand. */
.home-top100 { scroll-margin-top:24px; }
.home-top100-heading { max-width:760px; margin-bottom:22px; }
.home-top100-heading .eyebrow { margin-bottom:10px; }
.home-top100-heading h2 { margin-bottom:10px; font:400 clamp(29px,2.6vw,38px)/1.08 'Baskerville',Georgia,serif; letter-spacing:-.018em; }
.home-top100-heading > p:last-child { max-width:620px; margin:0; color:var(--muted); font:15px/1.6 var(--sans); }
.home-top100-list { max-width:920px; }
.home-top100-list li { min-height:42px; grid-template-columns:32px minmax(0,1fr) auto; gap:12px; padding:6px 8px; }
.home-top100-list a { min-height:36px; padding:3px 0; font:400 17px/1.3 'Baskerville',Georgia,serif; letter-spacing:-.005em; }
.home-top100-list .rank { font-size:10px; }
.home-top100-list .count { font-size:11px; }
.home-top100-more { max-width:920px; margin-top:10px; }
.home-top100-more > summary { min-height:44px; display:flex; align-items:center; gap:10px; padding:10px 8px; border-bottom:1px solid var(--rule); cursor:pointer; color:var(--accent); font:12px/1.4 var(--sans); }
.home-top100-more[open] > summary { margin-bottom:4px; }
.home-top100-list--more { margin-top:0; }
.home-top100 + .home-years { margin-top:clamp(48px,6vw,82px) !important; padding-top:clamp(24px,3vw,36px); border-top:1px solid var(--rule); }
.home-years .sde-month-ledger { margin-top:14px; }
.home-years .sde-month-ledger > summary { font-size:14px; }

@media(max-width:700px) {
 .home-top100-heading { margin-bottom:18px; }
 .home-top100-heading h2 { font-size:29px; }
 .home-top100-heading > p:last-child { font-size:14px; line-height:1.55; }
 .home-top100-list li { min-height:40px; grid-template-columns:27px minmax(0,1fr) auto; gap:9px; padding:5px 3px; }
 .home-top100-list a { min-height:34px; font-size:16.5px; line-height:1.28; }
 .home-top100-list .count { font-size:10px; }
 .home-top100-more > summary { padding-inline:3px; }
}


/* Top 100 is self-contained: rank, preview, track, credited artist, record count. */
.home-top100-list li {
  grid-template-columns: 28px 44px minmax(0,1fr) 46px;
  align-items: center;
  gap: 10px;
  min-height: 56px;
  padding-block: 6px;
}
.home-top100-track {
  display: block;
  min-width: 0;
}
.home-top100-track > a {
  display: block;
  min-height: 0;
  padding: 0;
  font: 400 17px/1.28 'Baskerville',Georgia,serif;
  letter-spacing: -.005em;
}
.home-top100-artists {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font: 11px/1.35 var(--sans);
  letter-spacing: .01em;
}
.home-top100-artists a {
  display: inline;
  min-height: 0;
  padding: 0;
  color: inherit;
  font: inherit;
  text-decoration: none;
}
.home-top100-artists a:hover,
.home-top100-artists a:focus-visible {
  color: var(--accent);
  text-decoration: underline;
  text-underline-offset: .16em;
}
.home-top100 button.track-preview {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 0;
  border: 1px solid var(--rule);
  border-radius: 50%;
  background: transparent;
  color: var(--editorial, var(--accent));
  font: 12px/1 var(--sans);
  cursor: pointer;
}
.home-top100 button.track-preview:hover,
.home-top100 button.track-preview:focus-visible {
  border-color: var(--accent);
  background: var(--wash);
  color: var(--accent);
}
.home-top100 button.track-preview[aria-pressed="true"] {
  border-color: var(--accent);
  background: var(--accent);
  color: var(--paper);
}
.home-top100 .inline-play {
  display: inline-block;
  padding-inline: .12em;
  color: var(--editorial, var(--accent));
  font-size: .78em;
}
.home-preview-note {
  max-width: 920px;
  margin: 12px 0 0;
  color: var(--muted);
  font: 10px/1.5 var(--sans);
}
@media(max-width:700px) {
  .home-top100-list li {
    grid-template-columns: 25px 44px minmax(0,1fr) 39px;
    gap: 8px;
    min-height: 54px;
    padding-block: 5px;
  }
  .home-top100 button.track-preview {
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
  }
  .home-top100-track > a { font-size: 16.5px; }
  .home-top100-artists { margin-top: 2px; font-size: 10.5px; }
  .home-top100-list .count { font-size: 10px; }
}
