/* The warm, dark heritage palette drawn from the supplied reference. */
:root {
  --bg: #130f0d;
  --bg-deep: #100b0a;
  --bg-soft: #1b100e;
  --paper: #301415;
  --ink: #f1e8d8;
  --muted: #c4c1b8;
  --gold: #d7b982;
  --gold-light: #e8d2a6;
  --line: #c4a77945;
}
body {background:#130f0d;color:var(--ink)}
::selection {background:#551f22;color:#fff8e9}
body .heritage-strip,body .archive-highlights,body .about-teaser,body .story-preview,
body .listening-section,body .selected-section,body .repertoire,body .family-section,
body .client-section,body .page-intro,body .gallery-section,body .story-hero,
body .story-scene,body .story-legacy,body .story-closing,body .story-cta,
body .story-prologue,body .finale-footer,body .site-opening {background:#130f0d;color:var(--ink)}
body .story-interlude,body .genre-card,body .story-preview-card {background:#211413;border-color:#c4a77935}
body .genre-card:hover {background:#301415}
body .media-dialog,body .photo-dialog,body .recording-facts {background:#231311;color:var(--ink)}
body .site-header.classical-nav:not(.royal-nav),body .site-header.classical-nav:not(.royal-nav).scrolled {background:#1a100ff5;border-color:#c4a77940}
body .mobile-navigation,body .royal-mobile-navigation,body .story-nav {background:#241311f7;border-color:#c4a77940}
body .button.primary {background:#e6d8bb;color:#301415;box-shadow:none}
body .button.primary:hover {background:#f1e5ce;color:#301415}
body .scroll-progress {background:#d7b982}
body[data-page="gallery"] .filter {background:#301415;border-color:#c4a77952!important;color:#f1e8d8}
body[data-page="gallery"] .filter[aria-pressed="true"],body[data-page="gallery"] .filter.active {background:#e6d8bb!important;color:#301415!important;border-color:#e6d8bb!important}
body[data-page="gallery"] .catalog-search,body[data-page="gallery"] .view-controls button {background:#241411;border-color:#c4a77952;color:#f1e8d8}
body[data-page="gallery"] .view-controls button[aria-pressed="true"] {background:#e6d8bb;color:#301415;border-color:#e6d8bb}
@media(max-width:580px){body[data-page="gallery"] .gallery-toolbar::after{background:linear-gradient(90deg,transparent,#130f0d)}}
/* A dark, transparent veil keeps the actual performance and ivory type readable. */
body[data-page="home"] .royal-hero {background:#130f0d;color:var(--ink)}
body[data-page="home"] .royal-wash {background:linear-gradient(90deg,rgba(19,15,13,.88),rgba(48,20,21,.68) 34%,rgba(48,20,21,.25) 76%),linear-gradient(0deg,#130f0d 0%,transparent 44%,rgba(19,15,13,.35) 100%)}
body[data-page="home"] .site-header.royal-nav.scrolled {background:#1b100ff5}
body[data-page="home"] .royal-nav .royal-wordmark,body[data-page="home"] .royal-nav-links a,body[data-page="home"] .royal-copy h1,body[data-page="home"] .royal-copy .royal-tagline {color:#f1e8d8}
body[data-page="home"] .royal-copy .eyebrow,body[data-page="home"] .royal-copy .royal-description,body[data-page="home"] .royal-tagline em,body[data-page="home"] .royal-nav-links a:hover,body[data-page="home"] .royal-nav-links a[aria-current],body[data-page="home"] .royal-nav-ornament {color:#d7b982}
body[data-page="home"] .royal-nav nav.royal-nav-links a:hover,body[data-page="home"] .royal-nav nav.royal-nav-links a[aria-current] {color:#e8d2a6}
body[data-page="home"] .royal-book {border-color:#d7b982;color:#f1e8d8;background:#130f0d99}
body[data-page="home"] .royal-book:hover {background:#e6d8bb;color:#301415}
body[data-page="home"] .royal-nav .language-switch {background:#130f0d99;border-color:#c4a77955}
body[data-page="home"] .royal-nav .language-switch button {color:#f1e8d8}
body[data-page="home"] .royal-nav .language-switch button[aria-pressed="true"] {background:#e6d8bb;color:#301415}
body[data-page="home"] .royal-mobile-navigation a {color:#f1e8d8}
body[data-page="home"] .royal-mobile-navigation a:hover,body[data-page="home"] .royal-mobile-navigation a[aria-current] {color:#e8d2a6}
body .cinema-hero .royal-player,body .cinema-hero .royal-player .royal-ornament svg {color:#d7b982}
body .cinema-hero .royal-player .dock-track strong {color:#f1e8d8}
body .cinema-hero .royal-player .dock-track small,body .cinema-hero .royal-player .dock-track [data-youtube-status] {color:#d2c6b4}
body .cinema-hero .royal-player .dock-play {color:#f1e8d8;background:#1b100f;border-color:#d7b982}
body .cinema-hero .royal-player .dock-play:hover {color:#301415;background:#e6d8bb}
body .cinema-hero input[type="range"] {accent-color:#d7b982}
@media(max-width:700px){body[data-page="home"] .royal-wash{background:linear-gradient(0deg,#130f0d 0%,rgba(48,20,21,.42) 48%,rgba(19,15,13,.58) 100%)}}
body .prologue-copy h2,body .prologue-link {color:#f1e8d8}
body .prologue-copy .eyebrow,body .prologue-copy h2 em,body .prologue-description,body .prologue-caption,body .prologue-figure figcaption,body .prologue-figure figcaption span:last-child {color:#c4c1b8}
body .prologue-image {background:#211411}
body .story-hero .eyebrow,body .section-heading .eyebrow,body .about-teaser .eyebrow {color:#d7b982}
body .opening-seal {border-color:#c4a77988;color:#f1e8d8}
body .opening-line {background:#c4a77955}
body .opening-line:after {background:#e6d8bb}
/* The existing functional contact footer is given a matching crimson panel. */
body .finale-footer {background:#130f0d}
body .finale-panel {background:#301415;color:#f1e8d8}
body .finale-name {color:#d8b88f}
body .finale-name em,body .finale-sky h2,body .finale-intro h3 {color:#eedec4}
body .finale-eyebrow,body .finale-hint,body .finale-note,body .finale-intro p,body .finale-links a,body .finale-links>div>span,body .finale-contacts,body .finale-bottom,body .opening-subtitle {color:#c4c1b8}
body .finale-book,body .finale-intro .eyebrow {color:#f1e8d8}
body .finale-arrow {border-color:#c4a77988}
body .finale-book:hover .finale-arrow {background:#e6d8bb;color:#301415}
html.has-opening .site-opening{background:#130f0d;color:#f1e8d8}

/* Even breathing room for the three chapters on every screen. */
body .story-preview{align-items:stretch;gap:clamp(16px,2.2vw,32px)}
body .story-preview-card{min-width:0;padding:clamp(24px,2.5vw,36px);display:flex;flex-direction:column;align-items:flex-start}
body .story-preview-card>span{display:block;flex:none;margin:0 0 22px;line-height:1}
body .story-preview-card>div{min-width:0}
body .story-preview-card h3{margin:14px 0 12px;line-height:1.12}
body .story-preview-card p{margin:0;line-height:1.7}
@media(max-width:580px){
  body .story-preview{gap:14px}
  body .story-preview-card{display:grid;grid-template-columns:30px minmax(0,1fr);gap:18px;padding:24px}
  body .story-preview-card>span{margin:3px 0 0}
  body .story-preview-card h3{font-size:27px;margin:10px 0 10px}
}
