
:root{
  --ink:#1d2a4d;
  --orange:#f58214;
  --blue:#2f6ecf;
  --violet:#6746ca;
  --muted:#6b7280;
  --paper:#fbfbf8;
  --line:#e7e8ec;
  --card:#ffffff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:#182033;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{width:min(1180px,calc(100% - 40px));margin:auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(251,251,248,.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.header-inner{height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand img{width:auto;height:auto}
nav{display:flex;gap:24px;font-size:14px;font-weight:650;color:var(--ink)}
nav a:hover{color:var(--orange)}
.hero{padding:56px 0 38px}
.kicker{font-size:12px;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:var(--orange)}
.hero-grid{display:grid;grid-template-columns:1.55fr .85fr;gap:34px;align-items:stretch}
.hero-card{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden}
.hero-card .media{aspect-ratio:16/9;background:linear-gradient(135deg,#dde6f7,#f7efe5)}
.hero-card .media img{width:100%;height:100%;object-fit:cover}
.hero-copy{padding:30px}
.hero-copy h1{font-family:Georgia,"Times New Roman",serif;color:var(--ink);font-size:clamp(36px,5vw,68px);line-height:1.02;margin:10px 0 16px;font-weight:500}
.hero-copy p{font-size:18px;color:#4d5565;max-width:66ch}
.side-panel{border-radius:24px;padding:34px;background:var(--ink);color:white;display:flex;flex-direction:column;justify-content:space-between}
.side-panel .tagline{font-family:Georgia,"Times New Roman",serif;font-size:34px;line-height:1.05}
.horizon{height:8px;border-radius:999px;background:linear-gradient(90deg,var(--blue),var(--violet));margin:24px 0}
.section{padding:34px 0 54px}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px}
.section-head h2{font-family:Georgia,"Times New Roman",serif;font-size:36px;color:var(--ink);margin:0;font-weight:500}
.section-head a{font-size:14px;font-weight:700;color:var(--blue)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden}
.card .thumb{aspect-ratio:16/10;background:#eef1f6;overflow:hidden}
.card .thumb img{width:100%;height:100%;object-fit:cover}
.card .body{padding:20px}
.meta{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}
.card h3{font-family:Georgia,"Times New Roman",serif;color:var(--ink);font-size:25px;line-height:1.15;margin:8px 0 10px;font-weight:500}
.card p{font-size:14px;color:#626979}
.archive-row{display:grid;grid-template-columns:95px 1fr auto;gap:20px;padding:18px 0;border-top:1px solid var(--line);align-items:center}
.archive-row .year{font-family:Georgia,"Times New Roman",serif;font-size:26px;color:var(--ink)}
.archive-row h3{margin:0;font-size:18px}
.pill{display:inline-block;border:1px solid #d7dbea;border-radius:999px;padding:5px 9px;font-size:11px;color:var(--ink);margin:2px}
.article{width:min(780px,calc(100% - 40px));margin:50px auto 80px}
.article h1{font-family:Georgia,"Times New Roman",serif;color:var(--ink);font-weight:500;font-size:clamp(42px,7vw,74px);line-height:1.02;margin:12px 0 18px}
.article .article-meta{color:var(--muted);margin-bottom:28px}
.article-content{font-family:Georgia,"Times New Roman",serif;font-size:20px;color:#252b36}
.article-content img{margin:30px auto;border-radius:14px}
.article-content iframe{max-width:100%}
.note{background:#f2f4f8;border-left:4px solid var(--orange);padding:16px 18px;margin:24px 0;font-family:Inter,ui-sans-serif,system-ui;font-size:14px}
footer{border-top:1px solid var(--line);padding:40px 0 60px;color:var(--muted);font-size:14px}
@media(max-width:850px){
  .header-inner{height:auto;padding:18px 0;align-items:flex-start}
  .brand img{height:auto}
  nav{gap:14px;flex-wrap:wrap;justify-content:flex-end}
  .hero-grid,.grid{grid-template-columns:1fr}
  .hero{padding-top:30px}
  .archive-row{grid-template-columns:70px 1fr}
  .archive-row .count{display:none}
}


/* ===== Theme controls ===== */
:root{color-scheme:light}
html[data-theme="dark"]{
  color-scheme:dark;
  --ink:#eef2ff;
  --orange:#ff9a3c;
  --blue:#6ea8ff;
  --violet:#9a7cff;
  --muted:#aeb7c8;
  --paper:#101726;
  --line:#2b3448;
  --card:#182134;
}
html[data-theme="dark"] body{background:var(--paper);color:#eef2f7}
html[data-theme="dark"] .site-header{background:rgba(16,23,38,.94);border-bottom-color:var(--line)}
html[data-theme="dark"] .hero-card,
html[data-theme="dark"] .card{background:var(--card);border-color:var(--line)}
html[data-theme="dark"] .hero-card .media,
html[data-theme="dark"] .card .thumb{background:#202b42}
html[data-theme="dark"] .hero-copy p,
html[data-theme="dark"] .card p{color:#c0c8d6}
html[data-theme="dark"] .side-panel{background:#0b1120}
html[data-theme="dark"] .article-content{color:#e4e8ef}
html[data-theme="dark"] .note{background:#182235;color:#dfe6f1}
html[data-theme="dark"] footer{border-top-color:var(--line)}
html[data-theme="dark"] .archive-row{border-top-color:var(--line)}
html[data-theme="dark"] .pill{border-color:#46516a;color:#e6ebf5}
.theme-toggle{
  appearance:none;
  border:1px solid var(--line);
  background:var(--card);
  color:var(--ink);
  width:42px;height:42px;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  cursor:pointer;font-size:18px;line-height:1;
  transition:transform .15s ease,background .2s ease,border-color .2s ease;
}
.theme-toggle:hover{transform:translateY(-1px)}
.header-actions{display:flex;align-items:center;gap:16px}
@media(max-width:850px){
  .header-actions{width:100%;justify-content:space-between}
}


/* ===== Theme-aware logos and panel ===== */
.brand{
  display:flex;
  align-items:center;
  flex:0 0 auto;
}
.brand-logo{
  display:block;
  width:118px;
  height:auto !important;
  max-height:68px;
  object-fit:contain;
}
.panel-mark{
  width:120px;
  height:auto;
  opacity:.98;
}
html[data-theme="dark"] .side-panel{
  background:#ffffff;
  color:#1d2a4d;
  border:1px solid var(--line);
}
html[data-theme="dark"] .side-panel .tagline{color:#1d2a4d}
html[data-theme="dark"] .side-panel p{color:#34415f}
html[data-theme="dark"] .side-panel .kicker{color:#f58214 !important}
html[data-theme="dark"] .side-panel .horizon{
  background:linear-gradient(90deg,var(--blue),var(--violet));
}
@media(max-width:850px){
  .brand-logo{width:102px;max-height:60px}
  .panel-mark{width:108px}
}


/* ===== Photo captions ===== */
.ha-caption{
  margin:32px auto;
  max-width:100%;
}
.ha-caption img{
  margin:0 auto;
  border-radius:14px;
}
.ha-caption > a{
  display:block;
}
.ha-caption figcaption{
  margin:9px auto 0;
  max-width:92%;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:13px;
  line-height:1.45;
  color:var(--muted);
  text-align:left;
}
.ha-caption.aligncenter figcaption{
  text-align:center;
}
html[data-theme="dark"] .ha-caption figcaption{
  color:#aeb7c8;
}


/* ===== Opening quotations ===== */
.opening-quote{
  position:relative;
  margin:4px 0 34px;
  padding:4px 0 4px 18px;
  border-left:3px solid var(--orange);
  font-family:Georgia,"Times New Roman",serif;
  font-size:22px;
  line-height:1.45;
  font-style:italic;
  color:var(--ink);
}
.opening-quote em{font-style:italic}
.opening-quote a{
  color:var(--orange);
  text-decoration:none;
}
.opening-quote a:hover{text-decoration:underline}
.opening-quote + p,
.opening-quote + div,
.opening-quote + figure{
  margin-top:0;
}
html[data-theme="dark"] .opening-quote{
  color:#edf1f7;
}
@media(max-width:850px){
  .opening-quote{
    font-size:20px;
    margin-bottom:28px;
    padding-left:16px;
  }
}


/* ===== Article subheads ===== */
.article-subhead{
  display:block;
  margin:0 0 14px;
  padding-top:38px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:24px;
  line-height:1.22;
  font-weight:750;
  letter-spacing:-0.015em;
  color:var(--ink);
}
.article-subhead + *{
  margin-top:0;
}
html[data-theme="dark"] .article-subhead{
  color:#f0f3f8;
}
@media(max-width:850px){
  .article-subhead{
    padding-top:32px;
    margin-bottom:12px;
    font-size:22px;
  }
}


/* ===== Editorial concept boxes ===== */
.concept-box{
  margin:42px 0;
  border:1px solid var(--line);
  border-radius:16px;
  overflow:hidden;
  background:var(--card);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.concept-box__title{
  padding:14px 20px;
  background:var(--ink);
  color:#fff;
  font-family:Georgia,"Times New Roman",serif;
  font-size:21px;
  line-height:1.25;
  text-align:left;
}
.concept-box__items{
  padding:4px 22px 8px;
}
.concept-item{
  padding:22px 0;
  border-bottom:1px solid var(--line);
}
.concept-item:last-child{
  border-bottom:0;
}
.concept-item h3{
  margin:0 0 8px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:17px;
  line-height:1.25;
  font-weight:800;
  color:var(--ink);
}
.concept-item p{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:18px;
  line-height:1.62;
  color:inherit;
}
html[data-theme="dark"] .concept-box{
  background:#172033;
  border-color:#33405a;
}
html[data-theme="dark"] .concept-box__title{
  background:#ffffff;
  color:#1d2a4d;
}
html[data-theme="dark"] .concept-item{
  border-bottom-color:#33405a;
}
html[data-theme="dark"] .concept-item h3{
  color:#f0f3f8;
}
@media(max-width:850px){
  .concept-box{margin:34px 0}
  .concept-box__title{font-size:19px;padding:13px 16px}
  .concept-box__items{padding:2px 16px 6px}
  .concept-item{padding:18px 0}
  .concept-item p{font-size:17px}
}


/* ===== Generic legacy callout body ===== */
.concept-box__body{
  padding:22px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:18px;
  line-height:1.62;
  color:inherit;
}
.concept-box__body > :first-child{margin-top:0}
.concept-box__body > :last-child{margin-bottom:0}
.concept-box__body p{
  margin:0 0 16px;
}
.concept-box__body p:last-child{
  margin-bottom:0;
}
.concept-box__body strong{
  font-weight:700;
}
html[data-theme="dark"] .concept-box__body{
  color:#e4e8ef;
}
@media(max-width:850px){
  .concept-box__body{
    padding:18px 16px;
    font-size:17px;
  }
}




/* ===== Concept-box title theme fix ===== */
html:not([data-theme="dark"]) .concept-box__title,
html:not([data-theme="dark"]) .concept-box__title *{
  background:var(--ink);
  color:#ffffff !important;
}

html[data-theme="dark"] .concept-box__title,
html[data-theme="dark"] .concept-box__title *{
  background:#ffffff;
  color:#1d2a4d !important;
}


/* ===== Final archive restoration ===== */
.article-content > p{
  margin:0 0 1.15em;
}
.video-figure{
  margin:34px 0;
}
.video-frame{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius:14px;
  background:#000;
}
.video-frame iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
}
.video-figure figcaption{
  margin:9px auto 0;
  max-width:92%;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:13px;
  line-height:1.45;
  color:var(--muted);
  text-align:center;
}
.interactive-embed{
  margin:34px 0;
}
.interactive-embed iframe{
  width:100%;
  min-height:620px;
  border:0;
  border-radius:14px;
  background:var(--card);
}
.source-note{
  margin:34px 0;
  padding:16px 18px;
  border-left:3px solid var(--orange);
  background:rgba(127,127,127,.07);
  border-radius:0 10px 10px 0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:14px;
  line-height:1.5;
  color:var(--muted);
}
.source-note__label{
  display:block;
  margin-bottom:4px;
  color:var(--orange);
  font-size:11px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.source-note p,
.source-note div{margin:0}
.text-inset{
  margin:36px 0;
  padding:24px 26px;
  border-left:3px solid var(--orange);
  border-radius:0 12px 12px 0;
  background:rgba(127,127,127,.08);
  font-family:Georgia,"Times New Roman",serif;
  font-size:18px;
  line-height:1.65;
}
.text-inset p:first-child{margin-top:0}
.text-inset p:last-child{margin-bottom:0}
.references{
  margin:42px 0 20px;
  padding-top:22px;
  border-top:1px solid var(--line);
}
.references h2{
  margin:0 0 16px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:20px;
  color:var(--ink);
}
.references ol{
  margin:0;
  padding-left:26px;
}
.references li{
  margin:0 0 12px;
  padding-left:4px;
  font-size:16px;
  line-height:1.55;
}
.references li::marker{
  color:var(--orange);
  font-weight:800;
}
.data-table-wrap{
  overflow-x:auto;
}
.data-table{
  width:100%;
  border-collapse:collapse;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:14px;
}
.data-table th,
.data-table td{
  padding:12px 14px;
  text-align:left;
  vertical-align:top;
  border-bottom:1px solid var(--line);
}
.data-table th{
  font-weight:800;
  color:var(--ink);
  background:rgba(127,127,127,.06);
}
.data-table tr:last-child td{border-bottom:0}
html[data-theme="dark"] .source-note,
html[data-theme="dark"] .text-inset{
  background:rgba(255,255,255,.05);
}
html[data-theme="dark"] .references h2,
html[data-theme="dark"] .data-table th{
  color:#f0f3f8;
}
@media(max-width:850px){
  .video-figure{margin:28px 0}
  .interactive-embed iframe{min-height:500px}
  .text-inset{padding:20px 18px;font-size:17px}
  .data-table{font-size:13px;min-width:650px}
}


/* ===== Archive final polish v15 ===== */
.dedication{
  margin:0 0 26px;
  padding:12px 16px;
  border-left:3px solid var(--orange);
  background:rgba(127,127,127,.07);
  border-radius:0 10px 10px 0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:16px;
  font-style:italic;
  color:var(--muted);
}
.twitter-tweet{
  margin:30px auto !important;
}
.table-note{
  margin:-18px 0 30px;
  padding:12px 16px;
  background:rgba(127,127,127,.06);
  border-radius:0 0 12px 12px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:13px;
  line-height:1.45;
  color:var(--muted);
}
.highlight-row td{
  font-weight:750;
  color:var(--orange);
}
.song-card{
  margin:36px 0 20px;
  padding:18px 20px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.song-card__title{
  font-family:Georgia,"Times New Roman",serif;
  font-size:24px;
  color:var(--ink);
}
.song-card__meta{
  margin-top:4px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:13px;
  color:var(--muted);
}
.lyrics{
  margin:0 0 34px;
  padding:0 10px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:18px;
  line-height:1.65;
  color:inherit;
}
.lyrics p{margin:0 0 1.1em}
.translation-box{
  margin:36px 0;
  border-left:3px solid var(--orange);
  background:rgba(127,127,127,.08);
  border-radius:0 12px 12px 0;
  overflow:hidden;
}
.translation-box__label{
  padding:14px 22px 0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:11px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--orange);
}
.translation-box__body{
  padding:10px 22px 22px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:18px;
  line-height:1.68;
}
.translation-box__body h3{
  margin:0 0 16px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:21px;
  color:var(--ink);
}
.translation-box__body p{
  margin:0 0 1.15em;
}
.translation-box__body p:last-child{margin-bottom:0}
.download-card{
  margin:34px 0;
  padding:18px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--card);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.download-card strong{display:block;color:var(--ink);font-size:16px}
.download-card span{display:block;color:var(--muted);font-size:13px;margin-top:2px}
.download-card a{
  flex:0 0 auto;
  padding:9px 13px;
  border-radius:999px;
  background:var(--ink);
  color:#fff;
  font-size:13px;
  font-weight:750;
}
.attribution-note{
  margin:36px 0;
  padding:18px 20px;
  border:1px solid var(--line);
  border-radius:12px;
  background:rgba(127,127,127,.06);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.attribution-note span{
  display:block;
  color:var(--orange);
  font-size:11px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.attribution-note strong{display:block;margin-top:4px;color:var(--ink);font-size:17px}
.attribution-note small{display:block;margin-top:3px;color:var(--muted);font-size:13px}
.mission-goals{
  margin:34px 0;
}
.mission-goals > h2{
  margin:0 0 18px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:22px;
  color:var(--ink);
}
.mission-goal{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:14px;
  padding:20px 0;
  border-top:1px solid var(--line);
}
.mission-goal > span{
  width:34px;height:34px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:var(--ink);color:#fff;
  font-family:Inter,ui-sans-serif,system-ui;font-weight:800;
}
.mission-goal h3{
  margin:3px 0 10px;
  font-family:Inter,ui-sans-serif,system-ui;
  font-size:18px;line-height:1.35;color:var(--ink);
}
.mission-goal ul{margin:0;padding-left:20px}
.mission-goal li{margin:0 0 7px}
.music-list{
  margin:34px 0;
}
.music-list > h2{
  font-family:Inter,ui-sans-serif,system-ui;
  font-size:23px;color:var(--ink);margin-bottom:20px;
}
.music-year{
  display:grid;
  grid-template-columns:72px 1fr;
  gap:18px;
  padding:18px 0;
  border-top:1px solid var(--line);
}
.music-year h3{
  margin:0;
  color:var(--orange);
  font-family:Inter,ui-sans-serif,system-ui;
  font-size:18px;
}
.music-year ol{margin:0;padding-left:25px}
.music-year li{margin:0 0 10px;padding-left:4px}
.footnote{
  margin:32px 0;
  padding-top:16px;
  border-top:1px solid var(--line);
  display:grid;
  grid-template-columns:20px 1fr;
  gap:8px;
  font-family:Inter,ui-sans-serif,system-ui;
  font-size:13px;
  line-height:1.5;
  color:var(--muted);
}
.footnote > span{color:var(--orange);font-weight:800}
.footnote p{margin:0}
.legacy-note{
  margin:30px 0;
  padding:16px 18px;
  border-left:3px solid var(--orange);
  background:rgba(127,127,127,.06);
  border-radius:0 10px 10px 0;
  font-family:Inter,ui-sans-serif,system-ui;
  font-size:14px;
  line-height:1.5;
  color:var(--muted);
}
.scale-embed iframe{min-height:620px}
.scale-embed figcaption{
  margin-top:8px;
  font-family:Inter,ui-sans-serif,system-ui;
  font-size:13px;color:var(--muted);text-align:center;
}
html[data-theme="dark"] .dedication,
html[data-theme="dark"] .translation-box,
html[data-theme="dark"] .legacy-note{
  background:rgba(255,255,255,.05);
}
html[data-theme="dark"] .song-card__title,
html[data-theme="dark"] .translation-box__body h3,
html[data-theme="dark"] .download-card strong,
html[data-theme="dark"] .attribution-note strong,
html[data-theme="dark"] .mission-goals > h2,
html[data-theme="dark"] .mission-goal h3,
html[data-theme="dark"] .music-list > h2{
  color:#f0f3f8;
}
html[data-theme="dark"] .download-card a,
html[data-theme="dark"] .mission-goal > span{
  background:#fff;color:#1d2a4d;
}
@media(max-width:850px){
  .translation-box__body{padding:10px 18px 18px;font-size:17px}
  .translation-box__label{padding-left:18px}
  .download-card{align-items:flex-start;flex-direction:column}
  .mission-goal{grid-template-columns:36px 1fr}
  .music-year{grid-template-columns:1fr;gap:8px}
  .lyrics{font-size:17px;padding:0}
  .scale-embed iframe{min-height:500px}
}


/* ===== Final polish v16 ===== */
.nebula-heading{
  margin:40px 0 16px;
  padding-top:4px;
}
.nebula-heading h2{
  margin:0 0 10px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:24px;
  line-height:1.2;
  font-weight:750;
  letter-spacing:-0.015em;
  color:var(--ink);
}
.nebula-meta{
  display:flex;
  flex-wrap:wrap;
  gap:7px 14px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:13px;
  line-height:1.4;
  color:var(--muted);
}
.nebula-meta span{
  position:relative;
}
.nebula-meta span:not(:last-child)::after{
  content:"·";
  margin-left:14px;
  color:var(--orange);
}
.nebula-heading + p{
  margin-top:0;
}
.song-translation .translation-box__body{
  font-size:18px;
}
.song-translation .translation-box__body h3{
  margin-bottom:4px;
}
.song-meta{
  margin:0 0 18px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:13px;
  color:var(--muted);
}
.resource-link{
  margin:34px 0;
  padding:18px 20px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--card);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.resource-link strong{
  display:block;
  margin-bottom:3px;
  color:var(--ink);
  font-size:16px;
}
.resource-link span{
  display:block;
  color:var(--muted);
  font-size:13px;
  line-height:1.45;
}
.resource-link a{
  flex:0 0 auto;
  padding:9px 13px;
  border-radius:999px;
  background:var(--ink);
  color:#fff;
  font-size:13px;
  font-weight:750;
  text-decoration:none;
}
.quote-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin:30px 0 34px;
}
.quote-card{
  position:relative;
  padding:22px 20px 20px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--card);
}
.quote-number{
  display:block;
  margin-bottom:9px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  color:var(--orange);
}
.quote-card p{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:18px;
  line-height:1.55;
  color:var(--ink);
}
html[data-theme="dark"] .nebula-heading h2,
html[data-theme="dark"] .resource-link strong,
html[data-theme="dark"] .quote-card p{
  color:#f0f3f8;
}
html[data-theme="dark"] .resource-link a{
  background:#fff;
  color:#1d2a4d;
}
@media(max-width:850px){
  .nebula-heading{margin-top:34px}
  .nebula-heading h2{font-size:22px}
  .nebula-meta{display:block}
  .nebula-meta span{display:block;margin-bottom:3px}
  .nebula-meta span:not(:last-child)::after{content:"";margin:0}
  .resource-link{align-items:flex-start;flex-direction:column}
  .quote-grid{grid-template-columns:1fr}
  .quote-card p{font-size:17px}
}


/* ===== Unified article tables v18 ===== */
.article-content .data-table-wrap{
  width:100%;
  margin:30px 0 34px;
  overflow-x:auto;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--card);
}
.article-content .data-table{
  width:100%;
  min-width:640px;
  border-collapse:collapse;
  border-spacing:0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:14px;
  line-height:1.45;
  background:transparent;
}
.article-content .data-table thead th{
  padding:13px 15px;
  text-align:left;
  vertical-align:bottom;
  font-weight:800;
  color:var(--ink);
  background:rgba(127,127,127,.07);
  border-bottom:1px solid var(--line);
  white-space:nowrap;
}
.article-content .data-table tbody td{
  padding:12px 15px;
  text-align:left;
  vertical-align:top;
  border-bottom:1px solid var(--line);
  color:inherit;
}
.article-content .data-table tbody tr:last-child td{
  border-bottom:0;
}
.article-content .data-table tbody tr:hover{
  background:rgba(127,127,127,.035);
}
.article-content .data-table .highlight-row td{
  color:var(--orange);
  font-weight:750;
}
html[data-theme="dark"] .article-content .data-table-wrap{
  background:#172033;
  border-color:#33405a;
}
html[data-theme="dark"] .article-content .data-table thead th{
  color:#f0f3f8;
  background:rgba(255,255,255,.05);
  border-bottom-color:#33405a;
}
html[data-theme="dark"] .article-content .data-table tbody td{
  border-bottom-color:#33405a;
}
html[data-theme="dark"] .article-content .data-table tbody tr:hover{
  background:rgba(255,255,255,.03);
}
@media(max-width:850px){
  .article-content .data-table-wrap{
    margin:26px 0 30px;
    border-radius:12px;
  }
  .article-content .data-table{
    font-size:13px;
    min-width:620px;
  }
  .article-content .data-table thead th,
  .article-content .data-table tbody td{
    padding:11px 12px;
  }
}


/* ===== Mobile article image aspect-ratio fix v21 ===== */
.article-content img,
.article-content figure img,
.ha-caption img{
  max-width:100%;
  width:auto;
  height:auto !important;
}
.article-content figure > a{
  display:block;
}
@media(max-width:850px){
  .article-content img,
  .article-content figure img,
  .ha-caption img{
    max-width:100%;
    width:100%;
    height:auto !important;
    object-fit:contain;
  }
}


/* ===== Medium 2025 integration v22 ===== */
.article-deck{
  margin:12px 0 10px;
  max-width:820px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:20px;
  line-height:1.45;
  color:var(--muted);
}
.article-callout{
  margin:30px 0;
  padding:18px 22px;
  border-left:3px solid var(--orange);
  border-radius:0 10px 10px 0;
  background:rgba(127,127,127,.07);
  font-family:Georgia,"Times New Roman",serif;
  font-size:20px;
  line-height:1.55;
  color:var(--ink);
}
.medium-references .references-list p{
  margin:0 0 11px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:14px;
  line-height:1.5;
  color:var(--muted);
}
.medium-references .references-list a:not(.footnote-back){
  color:var(--blue);
}
html[data-theme="dark"] .medium-references .references-list a:not(.footnote-back){
  color:#8ab7ff;
}
.medium-references .references-list a:not(.footnote-back):hover{
  color:var(--orange);
}
html[data-theme="dark"] .medium-references .references-list a:not(.footnote-back):hover{
  color:#ffad61;
}
.archive-row{
  grid-template-columns:95px 1fr;
}
html[data-theme="dark"] .article-callout{
  background:rgba(255,255,255,.05);
  color:#f0f3f8;
}
@media(max-width:850px){
  .article-deck{font-size:18px}
  .article-callout{font-size:18px;padding:16px 18px}
  .archive-row{grid-template-columns:70px 1fr}
}


/* ===== Flourish embeds v27 ===== */
.flourish-embed-wrapper{
  width:100%;
  margin:28px 0 34px;
  overflow:hidden;
  border-radius:12px;
  background:transparent;
}
.flourish-embed-wrapper iframe{
  display:block;
  width:100%;
  min-height:640px;
  border:0;
}
@media(max-width:850px){
  .flourish-embed-wrapper{
    margin:22px 0 28px;
    border-radius:8px;
  }
  .flourish-embed-wrapper iframe{
    min-height:560px;
  }
}


/* ===== Navigation, topics and link audit v29 ===== */
.article-content a:not(.pill):not(.music-track),
.source-note a,
.references a,
.ha-caption figcaption a{
  color:var(--blue);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  cursor:pointer;
  transition:color .16s ease, text-shadow .16s ease, background-color .16s ease;
}
.article-content a:not(.pill):not(.music-track):hover,
.source-note a:hover,
.references a:hover,
.ha-caption figcaption a:hover{
  color:var(--orange);
  text-shadow:0 0 12px rgba(245,130,20,.18);
}
html[data-theme="dark"] .article-content a:not(.pill):not(.music-track),
html[data-theme="dark"] .source-note a,
html[data-theme="dark"] .references a,
html[data-theme="dark"] .ha-caption figcaption a{
  color:#8ab7ff;
}
html[data-theme="dark"] .article-content a:not(.pill):not(.music-track):hover,
html[data-theme="dark"] .source-note a:hover,
html[data-theme="dark"] .references a:hover,
html[data-theme="dark"] .ha-caption figcaption a:hover{
  color:#ffad61;
}
.kicker a{
  color:inherit;
  text-decoration:none;
}
.kicker a:hover{
  color:var(--blue);
}
.kicker-sep{opacity:.72}
.pill{
  cursor:pointer;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}
a.pill:hover{
  border-color:var(--blue);
  background:rgba(47,110,207,.08);
  transform:translateY(-1px);
}
html[data-theme="dark"] a.pill:hover{
  background:rgba(110,168,255,.10);
}

/* Functional Temas page */
.topics-page{padding-top:54px}
.topics-title{margin:5px 0 8px}
.topics-title h1{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(48px,7vw,78px);
  line-height:1;
  font-weight:500;
  color:var(--ink);
  margin:0;
}
.topics-intro{color:var(--muted);margin:0 0 24px}
.topic-cloud{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:42px}
.topic-cloud .pill{font-size:13px;padding:8px 12px;margin:0}
.topic-cloud .pill span{opacity:.6;margin-left:4px}
.topic-cloud .pill.active{
  background:var(--ink);
  color:var(--paper);
  border-color:var(--ink);
}
.topics-results-head{
  display:flex;align-items:baseline;justify-content:space-between;
  gap:18px;border-bottom:1px solid var(--line);padding-bottom:12px;
}
.topics-results-head h2{
  font-family:Georgia,"Times New Roman",serif;
  color:var(--ink);font-size:32px;font-weight:500;margin:0
}
.topics-results-head span{font-size:13px;color:var(--muted)}
.topic-result{padding:18px 0;border-bottom:1px solid var(--line)}
.topic-result[hidden]{display:none}
.topic-result h3{margin:0 0 5px;font-size:20px}
.topic-result h3 a{color:var(--ink)}
.topic-result h3 a:hover{color:var(--orange)}
html[data-theme="dark"] .topic-cloud .pill.active{
  background:#eef2ff;color:#101726;border-color:#eef2ff;
}

/* Symphony of Science showcase */
.music-showcase{
  margin:42px 0 20px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.music-showcase > h2{
  margin:0 0 28px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:34px;
  line-height:1.15;
  font-weight:500;
  color:var(--ink);
}
.music-year-group{margin:0 0 34px}
.music-year-group > h3{
  margin:0 0 12px;
  padding-bottom:9px;
  border-bottom:1px solid var(--line);
  color:var(--orange);
  font-size:20px;
  letter-spacing:.06em;
}
.music-track-grid{display:grid;gap:10px}
.music-track{
  display:grid;
  grid-template-columns:42px 1fr 28px;
  gap:12px;
  align-items:center;
  padding:15px 16px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--card);
  color:var(--ink) !important;
  text-decoration:none !important;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.music-track:hover{
  transform:translateY(-2px);
  border-color:var(--blue);
  box-shadow:0 8px 24px rgba(29,42,77,.08);
}
.music-track__number{
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  color:var(--orange);
}
.music-track__content{display:flex;flex-direction:column;gap:3px;min-width:0}
.music-track__content strong{
  font-family:Georgia,"Times New Roman",serif;
  font-size:20px;
  font-weight:600;
  line-height:1.2;
}
.music-track__content span{
  font-size:13px;
  line-height:1.4;
  color:var(--muted);
}
.music-track__icon{
  text-align:center;
  font-size:13px;
  color:var(--blue);
}
html[data-theme="dark"] .music-track{
  background:rgba(255,255,255,.035);
}
@media(max-width:850px){
  .header-actions{flex:1;justify-content:flex-end}
  nav{flex-wrap:nowrap;gap:18px}
  .music-showcase > h2{font-size:30px}
  .music-track{grid-template-columns:34px 1fr 22px;padding:14px 13px}
  .music-track__content strong{font-size:18px}
  .topics-results-head{align-items:flex-start;flex-direction:column;gap:4px}
}


/* ===== Local audio player v30 ===== */
.audio-card{
  margin:30px 0 34px;
  padding:20px 22px;
  border-left:3px solid var(--orange);
  border-radius:0 14px 14px 0;
  background:rgba(127,127,127,.07);
}
.audio-card__eyebrow{
  margin-bottom:6px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--orange);
}
.audio-card__title{
  margin-bottom:4px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:24px;
  line-height:1.2;
  color:var(--ink);
}
.audio-card p{
  margin:0 0 14px;
  color:var(--muted);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:14px;
}
.audio-card audio{
  display:block;
  width:100%;
  max-width:680px;
}
html[data-theme="dark"] .audio-card{
  background:rgba(255,255,255,.045);
}
@media(max-width:850px){
  .audio-card{
    padding:18px 16px;
    margin:24px 0 28px;
  }
  .audio-card__title{
    font-size:21px;
  }
}


/* ===== Footnotes, audio, Scale embed and dated music cards v31 ===== */
.footnote-ref{
  margin-left:2px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:.62em;
  line-height:0;
  vertical-align:super;
}
.footnote-ref a{
  color:var(--orange) !important;
  text-decoration:none !important;
  font-weight:800;
}
.footnote-ref a:hover{
  color:var(--blue) !important;
}
.references li:target{
  background:rgba(245,130,20,.08);
  border-radius:6px;
}
.footnote-back{
  color:var(--orange) !important;
  text-decoration:none !important;
  font-size:.85em;
  margin-left:3px;
}

/* The recovered Carl Sagan MP3 is an inline local player. */
.audio-card{
  margin:30px 0 34px;
  padding:20px 22px;
  border-left:3px solid var(--orange);
  border-radius:0 14px 14px 0;
  background:rgba(127,127,127,.07);
}
.audio-card__eyebrow{
  margin-bottom:6px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--orange);
}
.audio-card__title{
  margin-bottom:4px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:24px;
  line-height:1.2;
  color:var(--ink);
}
.audio-card p{
  margin:0 0 14px;
  color:var(--muted);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:14px;
}
.audio-card audio{
  display:block;
  width:100%;
  max-width:680px;
}
html[data-theme="dark"] .audio-card{
  background:rgba(255,255,255,.045);
}

/* The third-party Scale page carries its own ad strip.
   We clip only the lower strip; the visualization itself remains untouched. */
.scale-embed .scale-frame-window{
  width:100%;
  height:515px;
  overflow:hidden;
  border-radius:14px;
  background:var(--card);
}
.scale-embed .scale-frame-window iframe{
  display:block;
  width:100%;
  height:620px;
  min-height:620px;
  border:0;
  border-radius:14px;
}
.scale-embed figcaption{
  margin-top:10px;
}

/* Dated variant used by Monstruos del cosmos. */
.music-track__date{
  margin-top:4px;
  font-size:12px !important;
  font-weight:700;
  letter-spacing:.02em;
  color:var(--orange) !important;
}
.music-track__participants{
  color:var(--muted);
}
@media(max-width:850px){
  .audio-card{
    padding:18px 16px;
    margin:24px 0 28px;
  }
  .audio-card__title{font-size:21px}
  .scale-embed .scale-frame-window{height:455px}
  .scale-embed .scale-frame-window iframe{
    height:560px;
    min-height:560px;
  }
}


/* ===== Medium footnote unification v33 ===== */
.medium-references .footnote-anchor{
  display:block;
  position:relative;
  top:-88px;
  visibility:hidden;
  height:0;
}
.medium-references .references-list p{
  padding:7px 9px;
  margin-left:-9px;
  margin-right:-9px;
  border-radius:7px;
  transition:background-color .2s ease, box-shadow .2s ease;
}
.medium-references .references-list p:has(.footnote-anchor:target){
  background:rgba(245,130,20,.10);
  box-shadow:inset 3px 0 0 var(--orange);
}
.medium-references .footnote-backs{
  white-space:nowrap;
  margin-left:4px;
}
.medium-references .footnote-back{
  display:inline-block;
  margin-left:4px;
  font-size:.82em;
  font-weight:700;
}
html[data-theme="dark"] .medium-references .references-list p:has(.footnote-anchor:target){
  background:rgba(245,130,20,.12);
}


/* ===== Unified reference blocks v34 ===== */
.references .references-list p,
.medium-references .references-list p{
  position:relative;
  padding:8px 10px 8px 14px;
  margin:0 0 8px;
  border-radius:7px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:14px;
  line-height:1.55;
  color:var(--muted);
  transition:background-color .2s ease, box-shadow .2s ease;
}
.references .reference-number,
.medium-references .reference-number{
  color:var(--orange);
  font-weight:800;
  font-variant-numeric:tabular-nums;
}
.references .references-list p:has(.footnote-anchor:target),
.medium-references .references-list p:has(.footnote-anchor:target){
  background:rgba(245,130,20,.10);
  box-shadow:inset 3px 0 0 var(--orange);
}
.references .footnote-anchor,
.medium-references .footnote-anchor{
  display:block;
  position:relative;
  top:-88px;
  visibility:hidden;
  height:0;
}
.references .footnote-back,
.medium-references .footnote-back{
  display:inline-block;
  margin-left:4px;
  color:var(--orange) !important;
  text-decoration:none !important;
  font-size:.82em;
  font-weight:700;
}
.references .footnote-back:hover,
.medium-references .footnote-back:hover{
  color:var(--blue) !important;
}
html[data-theme="dark"] .references .references-list p:has(.footnote-anchor:target),
html[data-theme="dark"] .medium-references .references-list p:has(.footnote-anchor:target){
  background:rgba(245,130,20,.12);
}


/* ===== About, slogan and footer refinement v35 ===== */
.tagline a{
  color:inherit;
  text-decoration:none;
}
.tagline a:hover{
  color:var(--orange);
}
.footer-inner{
  display:flex;
  justify-content:center;
  align-items:center;
  min-height:64px;
}
.footer-copy{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:13px;
  color:var(--muted);
  letter-spacing:.01em;
}


/* ===== Article typography refinement v36 ===== */
.article-subhead{
  position:relative;
  margin:0 0 16px;
  padding-top:42px;
  font-size:28px;
  line-height:1.18;
  font-weight:780;
  letter-spacing:-0.02em;
}
.article-subhead::before{
  content:"";
  display:block;
  width:34px;
  height:3px;
  margin-bottom:12px;
  border-radius:999px;
  background:var(--orange);
}
@media (max-width: 720px){
  .article-subhead{
    padding-top:34px;
    margin-bottom:14px;
    font-size:24px;
    line-height:1.2;
  }
  .article-subhead::before{
    width:30px;
    height:3px;
    margin-bottom:10px;
  }
}


/* ===== Subtitle and subhead refinement v37 ===== */

/* Subtítulo / bajada: texto inmediatamente posterior al título */
.article-deck{
  margin:14px 0 14px;
  max-width:850px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:23px;
  line-height:1.42;
  font-weight:520;
  letter-spacing:-0.008em;
  color:var(--muted);
}

/* Entretítulos: conservar la línea naranja de v36 y normalizar la fuente */
.article-subhead,
.article-subhead strong,
.article-subhead b{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:28px;
  line-height:1.18;
  font-weight:780;
  letter-spacing:-0.02em;
}

@media (max-width:720px){
  .article-deck{
    margin-top:12px;
    font-size:20px;
    line-height:1.45;
    font-weight:520;
  }
  .article-subhead,
  .article-subhead strong,
  .article-subhead b{
    font-size:24px;
    line-height:1.2;
  }
}


.about-signature{
  margin-top:2rem;
  font-weight:600;
  color:var(--navy, #1D2A4D);
}
html[data-theme="dark"] .about-signature{
  color:inherit;
}
