/* Light "ballroom" theme to match the white and gold cover.
   Loaded after style.css. Navy stays as an accent (headings, footer, help box). */
:root {
  --champagne: #f6eedd;
  --champagne-deep: #ecdcb8;
  --navy-text: #0f2a6b;
}

/* Nav */
.nav { background: rgba(255, 252, 245, 0.95); border-bottom: 1px solid rgba(166, 124, 26, 0.45); box-shadow: 0 4px 18px rgba(166, 124, 26, 0.12); }
.nav .brand { color: var(--navy-text); }
.nav .brand span { color: var(--gold-dark); }
.nav-links a:not(.btn) { color: var(--navy-text); font-weight: 700; }
.nav-links a:not(.btn):hover { color: var(--gold-dark); }
.nav-toggle { color: var(--gold-dark); }
.brand-logo { filter: drop-shadow(0 2px 5px rgba(166, 124, 26, 0.35)); }
@media (max-width: 900px) {
  .nav-links { background: #fffcf5; border-bottom: 1px solid rgba(166, 124, 26, 0.45); }
}

/* Hero */
.hero {
  background:
    radial-gradient(ellipse at 25% 35%, rgba(255, 255, 255, 0.95), transparent 55%),
    radial-gradient(ellipse at 85% 85%, rgba(212, 175, 55, 0.28), transparent 55%),
    linear-gradient(160deg, #fffaf0 0%, var(--champagne) 55%, var(--champagne-deep) 100%);
  color: var(--ink);
}
.hero h1 {
  background: linear-gradient(135deg, var(--navy-text) 25%, #2c4a9a 55%, var(--gold-dark) 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.hero .eyebrow { color: var(--gold-dark); }
.subtitle { color: var(--gold-dark); }
.lead { color: #1c2440; font-weight: 700; }
.hero-cover img { box-shadow: 0 30px 60px rgba(120, 90, 20, 0.35), 0 0 0 1px rgba(212, 175, 55, 0.6); }
.btn-ghost { color: var(--navy-text); border-color: var(--gold-dark); }
.btn-ghost:hover { background: rgba(212, 175, 55, 0.15); }

/* Former dark sections become warm champagne */
.section-dark {
  background:
    radial-gradient(ellipse at 50% 0%, rgba(255, 255, 255, 0.7), transparent 60%),
    linear-gradient(170deg, var(--champagne) 0%, var(--champagne-deep) 100%);
  color: #1c2440;
}
.section-dark h2 { color: var(--navy-text); }
.section-dark .eyebrow { color: var(--gold-dark); }
.section-dark p:not(.eyebrow):not(.episode-num):not(.social-title),
.section-dark li { color: #060a17; font-weight: 700; }
.section-dark .video-card figcaption { color: var(--navy-text); }
.section-dark .signature { color: var(--gold-dark); }
.section-dark .pitch { color: var(--navy-text); }
.section-dark .song-title { color: var(--gold-dark); }
.section-dark .song-text { color: #060a17; }
.section-dark .portrait-img { box-shadow: 0 25px 50px rgba(120, 90, 20, 0.35); }
.section-dark .film-contact { background: rgba(255, 255, 255, 0.6); }
.section-dark .btn-ghost { color: var(--navy-text); }

/* Reviews on the light background */
.review { background: rgba(255, 255, 255, 0.75); box-shadow: 0 14px 34px rgba(120, 90, 20, 0.12); }
.review blockquote { color: var(--navy-text); }
.review figcaption { color: var(--gold-dark); }
.section-dark .reviews-more p { color: var(--navy-text); }

/* Blog post header */
.post-hero { background: linear-gradient(160deg, #fffaf0 0%, var(--champagne) 60%, var(--champagne-deep) 100%); color: var(--ink); }
.post-hero h1 { color: var(--navy-text); }
.post-hero .eyebrow a { color: var(--gold-dark); }
.post-hero .blog-date { color: var(--gold-dark) !important; }
.post-hero p { color: #1c2440; }

/* Gallery and lightbox frames */
.gallery-item { background: var(--champagne); }
.lightbox { background: rgba(255, 250, 240, 0.97); }
.lightbox button { color: var(--gold-dark); }

/* Byline and characters (were light gold on the dark background) */
.hero .byline { color: var(--navy-text); }
.char-title, .char h4 { color: var(--navy-text); }
.characters .char-span { color: var(--navy-text) !important; }
.characters .char .char-age { color: var(--gold-dark) !important; }
.section-dark .char figcaption p { color: #060a17; font-weight: 700 !important; }
.char img, .char-ph { box-shadow: 0 14px 30px rgba(120, 90, 20, 0.25); }
.review .stars, .reviews-more .stars { color: var(--gold-dark); }

/* v2: richer, deeper gold (owner: "too light") and bigger book covers */
:root { --ivory: #f3e7cc; }
body { background: var(--ivory); }
.section-soft { background: #f8efdb; }
.buy { background: #f3e7cc; }
.nav { background: rgba(240, 225, 186, 0.97); }
@media (max-width: 900px) { .nav-links { background: #f0e1ba; } }
.hero {
  background:
    radial-gradient(ellipse at 22% 45%, rgba(255, 246, 220, 0.85), transparent 50%),
    radial-gradient(ellipse at 85% 90%, rgba(150, 105, 25, 0.35), transparent 55%),
    linear-gradient(160deg, #efdcae 0%, #dcbd78 55%, #c49a4a 100%);
}
.section-dark {
  background:
    radial-gradient(ellipse at 50% 0%, rgba(255, 246, 220, 0.6), transparent 60%),
    linear-gradient(170deg, #ead4a0 0%, #d4b06a 100%);
}
.post-hero { background: linear-gradient(160deg, #efdcae 0%, #dcbd78 60%, #c49a4a 100%); }
.review { background: rgba(255, 250, 238, 0.9); }
.hero .eyebrow, .subtitle { color: #6e4f0c; }
.section-dark .eyebrow, .section-dark .song-title, .section-dark .signature,
.characters .char .char-age, .review figcaption { color: #6e4f0c !important; }

/* Bigger book covers */
.hero-inner { max-width: 1250px; grid-template-columns: minmax(280px, 500px) 1fr; }
.buy-inner { max-width: 1100px; grid-template-columns: 440px 1fr; }
@media (max-width: 900px) {
  .hero-inner, .buy-inner { grid-template-columns: 1fr; }
  .hero-cover, .buy-inner img { max-width: 380px; }
}
.hero h1 { background: linear-gradient(135deg, #0a1f55 30%, #1f3f8f 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.section-dark .social a { color: #0f2a6b; border-color: rgba(110, 79, 12, 0.6); }
.section-dark .social-title { color: #6e4f0c !important; }

/* v4: on laptops, keep the whole hero cover visible without scrolling; phones unchanged */
@media (min-width: 901px) {
  .hero { padding-top: clamp(2rem, 4vw, 3.5rem); padding-bottom: clamp(2rem, 4vw, 3.5rem); }
  .hero-inner { grid-template-columns: minmax(260px, 430px) 1fr; }
  .hero-cover { display: flex; justify-content: center; }
  .hero-cover img { width: auto; max-width: 100%; max-height: calc(100vh - 150px); }
}

/* v5: owner's website pictures */
.promo-tiles { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 1.2rem; margin: 2.5rem auto 0; }
.promo-tiles img, .promo-single, .footer-portrait { display: block; height: auto; max-width: 100%; border: 1px solid rgba(166, 124, 26, 0.55); box-shadow: 0 16px 34px rgba(120, 90, 20, 0.25); }
.promo-tiles img { height: 300px; width: auto; }
.promo-tiles a { display: block; transition: transform 0.2s; }
.promo-tiles a:hover { transform: translateY(-3px); }
.promo-tiles-wide { margin-top: 3rem; }
.promo-single { margin: 0 auto 2rem; }
.screenplay .promo-single, #screenplay .promo-single { margin-top: 1.5rem; }
.footer-portrait { margin: 0 auto 1.5rem; width: 280px; box-shadow: 0 16px 34px rgba(0, 0, 0, 0.4); }
@media (max-width: 700px) {
  .promo-tiles img { height: auto; width: 100%; max-width: 420px; }
  .promo-tiles a { width: 100%; max-width: 420px; }
  .promo-tiles a img { width: 100%; }
}

/* v6: Stay Connected */
.stay { background: #f3e7cc; padding-top: 0; }
.stay-card { max-width: 640px; margin: 0 auto; padding: 2.6rem 2rem 2.2rem; text-align: center; background: #fffaf0; border: 1px solid rgba(166, 124, 26, 0.55); box-shadow: 0 18px 40px rgba(120, 90, 20, 0.2); }
.stay-title { font-family: var(--serif); font-style: italic; font-weight: 600; font-size: clamp(2.4rem, 5vw, 3.2rem); color: var(--navy-text); }
.stay-card .ornament { margin: 0.8rem 0 1.2rem; }
.section .stay-card p { margin-bottom: 1.4rem; }
.section .stay-card .stay-small { margin: 1.8rem 0 0.8rem; font-size: 0.95rem; color: #6e4f0c; text-transform: uppercase; letter-spacing: 0.2em; }
.social-stay { justify-content: center; }
.social-stay a { color: #0f2a6b; border-color: rgba(110, 79, 12, 0.6); }

/* v7: owner's banner (links to Amazon) */
.banner-band { background: #06143a; padding: 0; }
.banner-link { display: block; max-width: 1024px; margin: 0 auto; }
.banner-link img { display: block; width: 100%; height: auto; }

/* v8: blog post with portrait photo */
.post-image-portrait { max-width: 460px; margin-left: auto; margin-right: auto; display: block; }
.post-body .post-lead { font-family: var(--serif); font-size: clamp(1.6rem, 3vw, 2rem) !important; line-height: 1.3; color: var(--navy-text) !important; }
.post-body .post-closing { font-family: var(--serif); font-style: italic; font-size: clamp(1.5rem, 3vw, 1.9rem) !important; color: #6e4f0c !important; text-align: center; margin-top: 2rem; }
.blog-card-img-portrait img { aspect-ratio: 4 / 5 !important; object-fit: cover; object-position: top; }

/* v9: song audio player under the music picture */
.song-audio { max-width: 466px; margin: -0.8rem auto 0; padding: 0.9rem 1rem; background: #fffaf0; border: 1px solid rgba(166, 124, 26, 0.55); box-shadow: 0 16px 34px rgba(120, 90, 20, 0.25); }
.song-audio audio { display: block; width: 100%; }
