/* ============================================================
   SELF-HOSTED FONTS — Grit, Gamble & Grace book identity
   Benne = display titles/headlines · Vollkorn SC = small-caps kicker labels
   EB Garamond = roadmap body face (loaded, not yet wired)
   Source Sans 3 = current body face (self-hosted so body is UNCHANGED)
   All faces are OFL / open-source. No Google Fonts CDN dependency.
   Header font test — Control Room WO 2026-07-22.
   ============================================================ */

/* Benne — declared across the full weight range so the existing
   font-weight:600/700 rules render TRUE Benne (no faux-bold on a
   delicate high-contrast serif). One master file covers all. */
@font-face { font-family: 'Benne'; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url('../fonts/benne-latin-400-normal.woff2') format('woff2'),
       url('../fonts/benne-latin-400-normal.woff') format('woff'); }

/* Vollkorn SC — real small caps, used for the small letter-spaced labels */
@font-face { font-family: 'Vollkorn SC'; font-style: normal; font-weight: 400; font-display: swap;
  src: url('../fonts/vollkorn-sc-latin-400-normal.woff2') format('woff2'),
       url('../fonts/vollkorn-sc-latin-400-normal.woff') format('woff'); }
@font-face { font-family: 'Vollkorn SC'; font-style: normal; font-weight: 600; font-display: swap;
  src: url('../fonts/vollkorn-sc-latin-600-normal.woff2') format('woff2'),
       url('../fonts/vollkorn-sc-latin-600-normal.woff') format('woff'); }
@font-face { font-family: 'Vollkorn SC'; font-style: normal; font-weight: 700; font-display: swap;
  src: url('../fonts/vollkorn-sc-latin-700-normal.woff2') format('woff2'),
       url('../fonts/vollkorn-sc-latin-700-normal.woff') format('woff'); }

/* Source Sans 3 — body copy, self-hosted (was Google CDN). Body UNCHANGED. */
@font-face { font-family: 'Source Sans 3'; font-style: normal; font-weight: 300; font-display: swap;
  src: url('../fonts/source-sans-3-latin-300-normal.woff2') format('woff2'),
       url('../fonts/source-sans-3-latin-300-normal.woff') format('woff'); }
@font-face { font-family: 'Source Sans 3'; font-style: normal; font-weight: 400; font-display: swap;
  src: url('../fonts/source-sans-3-latin-400-normal.woff2') format('woff2'),
       url('../fonts/source-sans-3-latin-400-normal.woff') format('woff'); }
@font-face { font-family: 'Source Sans 3'; font-style: normal; font-weight: 600; font-display: swap;
  src: url('../fonts/source-sans-3-latin-600-normal.woff2') format('woff2'),
       url('../fonts/source-sans-3-latin-600-normal.woff') format('woff'); }
@font-face { font-family: 'Source Sans 3'; font-style: italic; font-weight: 300; font-display: swap;
  src: url('../fonts/source-sans-3-latin-300-italic.woff2') format('woff2'),
       url('../fonts/source-sans-3-latin-300-italic.woff') format('woff'); }
@font-face { font-family: 'Source Sans 3'; font-style: italic; font-weight: 400; font-display: swap;
  src: url('../fonts/source-sans-3-latin-400-italic.woff2') format('woff2'),
       url('../fonts/source-sans-3-latin-400-italic.woff') format('woff'); }

/* EB Garamond — roadmap body face, loaded now so the next test is one line away */
@font-face { font-family: 'EB Garamond'; font-style: normal; font-weight: 400; font-display: swap;
  src: url('../fonts/eb-garamond-latin-400-normal.woff2') format('woff2'),
       url('../fonts/eb-garamond-latin-400-normal.woff') format('woff'); }
@font-face { font-family: 'EB Garamond'; font-style: italic; font-weight: 400; font-display: swap;
  src: url('../fonts/eb-garamond-latin-400-italic.woff2') format('woff2'),
       url('../fonts/eb-garamond-latin-400-italic.woff') format('woff'); }


/* Oswald — self-hosted (the Jerome-page display face). No Google CDN. */
@font-face { font-family: 'Oswald'; font-style: normal; font-weight: 400; font-display: swap;
  src: url('../fonts/oswald-latin-400-normal.woff2') format('woff2'),
       url('../fonts/oswald-latin-400-normal.woff') format('woff'); }
@font-face { font-family: 'Oswald'; font-style: normal; font-weight: 600; font-display: swap;
  src: url('../fonts/oswald-latin-600-normal.woff2') format('woff2'),
       url('../fonts/oswald-latin-600-normal.woff') format('woff'); }
@font-face { font-family: 'Oswald'; font-style: normal; font-weight: 700; font-display: swap;
  src: url('../fonts/oswald-latin-700-normal.woff2') format('woff2'),
       url('../fonts/oswald-latin-700-normal.woff') format('woff'); }

/* Font roles — swap these to re-theme the whole site from one place */
:root {
  --font-display: 'Oswald', sans-serif;   /* Jerome-page display face */
  --font-label: 'Oswald', sans-serif;     /* kicker labels — match Jerome */
  --font-body: 'Source Sans 3', system-ui, sans-serif;           /* body — unchanged this test */
  --font-book: 'EB Garamond', Georgia, serif;                    /* roadmap body face — not yet wired */
}


* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; font-size: 17px; }
body { background: #0A0908; color: #E8DCC8; font-family: 'Source Sans 3', system-ui, sans-serif; overflow-x: hidden; font-size: 1.35rem; line-height: 1.75; }
img { max-width: 100%; height: auto; }

/* NAV */
.nav { position: fixed; top: 0; left: 0; right: 0; z-index: 100; padding: 1.2rem 3rem; display: flex; justify-content: space-between; align-items: center; background: linear-gradient(180deg, rgba(10,9,8,0.92) 0%, rgba(10,9,8,0) 100%); }
.nav-brand { font-family: var(--font-display); font-size: 1.75rem; font-weight: 700; letter-spacing: 0.18em; color: #C4AF29; text-decoration: none; text-transform: uppercase; }
.nav-links { display: flex; gap: 2rem; }
.nav-links a { font-size: 1.2rem; letter-spacing: 0.12em; color: #E8DCC8; text-decoration: none; text-transform: uppercase; transition: color 0.3s; }
.nav-links a:hover { color: #C4AF29; }
.nav-toggle { display: none; background: none; border: none; cursor: pointer; padding: 0.5rem; }
.nav-toggle span { display: block; width: 1.5rem; height: 2px; background: #C4AF29; margin: 5px 0; transition: 0.3s; }

/* BUTTONS */
.btn-gold { display: inline-block; padding: 1rem 2.5rem; background: #C4AF29; color: #0A0908; font-family: var(--font-display); font-size: 1.125rem; font-weight: 700; letter-spacing: 0.14em; text-decoration: none; text-transform: uppercase; transition: background 0.3s; min-height: 3rem; }
.btn-gold:hover { background: #D4BF39; }
.btn-outline { display: inline-block; padding: 1rem 2.5rem; border: 2px solid #C4AF29; color: #C4AF29; font-family: var(--font-display); font-size: 1.125rem; font-weight: 700; letter-spacing: 0.14em; text-decoration: none; text-transform: uppercase; transition: background 0.3s, color 0.3s; min-height: 3rem; }
.btn-outline:hover { background: #C4AF29; color: #0A0908; }

/* SECTION DIVIDERS */
.section-divider, .section-divider-strong { height: 2px; background: linear-gradient(90deg, transparent 0%, #C4AF29 10%, #C4AF29 90%, transparent 100%); margin: 0; border: none; opacity: 0.6; position: relative; z-index: 10; }

/* SECTION BACKGROUNDS */
.hero, .books, .fight, .buried, .email, .footer { position: relative; overflow: hidden; }
.hero-bg, .books-bg, .fight-bg, .buried-bg, .email-bg, .footer-bg { position: absolute; inset: 0; background-size: cover; background-position: center; }
.hero-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,9,8,0.15) 0%, rgba(10,9,8,0.5) 40%, rgba(10,9,8,0.9) 78%, #0A0908 100%); }
.books-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, #0A0908 0%, rgba(10,9,8,0.78) 8%, rgba(10,9,8,0.78) 92%, #0A0908 100%); }
.fight-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, #0A0908 0%, rgba(10,9,8,0.5) 12%, rgba(10,9,8,0.5) 88%, #0A0908 100%); }
.buried-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, #0A0908 0%, rgba(10,9,8,0.45) 12%, rgba(10,9,8,0.45) 88%, #0A0908 100%); }
.email-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, #0A0908 0%, rgba(10,9,8,0.7) 12%, rgba(10,9,8,0.7) 88%, #0A0908 100%); }
.footer-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, #0A0908 0%, rgba(10,9,8,0.9) 18%, rgba(10,9,8,0.94) 100%); }

/* HERO */
.hero { min-height: 100vh; display: flex; flex-direction: column; justify-content: flex-end; padding: 4rem; }
.hero-content { position: relative; z-index: 2; max-width: 38em; }
.hero-tag { font-family: var(--font-label); font-size: 1.625rem; letter-spacing: 0.3em; color: #C4AF29; font-weight: 700; margin-bottom: 1rem; }
.hero h1 { font-family: var(--font-display); font-size: 4.5rem; font-weight: 700; line-height: 1.05; letter-spacing: 0.03em; margin-bottom: 0.8rem; }
.hero h1 span { color: #C4AF29; }
.hero-desc { font-size: 1.375rem; color: #E8DCC8; line-height: 1.7; margin-bottom: 2rem; max-width: 38em; }
.hero-actions { display: flex; gap: 1rem; flex-wrap: wrap; }

/* ANNOUNCE BAR */
.announce { padding: 1.6rem 3rem; background: #1A0505; border-top: 2px solid #C4AF29; border-bottom: 2px solid #C4AF29; display: flex; justify-content: center; align-items: center; gap: 2.5rem; flex-wrap: wrap; }
.announce-label { font-family: var(--font-display); font-size: 1.25rem; letter-spacing: 0.2em; color: #C4AF29; font-weight: 700; }
.announce-text { font-size: 1.375rem; color: #E8DCC8; font-weight: 600; }
.announce-link { font-family: var(--font-display); font-size: 1.375rem; color: #C4AF29; font-weight: 700; letter-spacing: 0.12em; text-decoration: none; }

/* SECTION TITLES & TAGS */
.section-title { font-family: var(--font-display); font-size: 3.5rem; font-weight: 700; color: #C4AF29; text-align: center; letter-spacing: 0.08em; margin-bottom: 2rem; }
.section-title-sm { font-family: var(--font-display); font-size: 2.625rem; font-weight: 600; color: #C4AF29; text-align: center; letter-spacing: 0.1em; margin-bottom: 2.5rem; }
.section-tag { font-family: var(--font-label); font-size: 1.25rem; letter-spacing: 0.25em; color: #C4AF29; text-align: center; margin-bottom: 0.4rem; text-transform: uppercase; font-weight: 600; }
.section-sub { font-size: 1.375rem; color: #E8DCC8; font-style: italic; text-align: center; margin-bottom: 3rem; }

/* BOOKS */
.books { padding: 6rem 4rem; }
.books-inner { position: relative; z-index: 2; max-width: 44rem; margin: 0 auto; }
.book-entry { display: flex; gap: 1.75rem; align-items: flex-start; margin-bottom: 3.5rem; padding-bottom: 3.5rem; border-bottom: 1px solid rgba(196,175,41,0.08); }
.book-entry:last-of-type { border-bottom: none; }
.book-cover { width: 10rem; min-width: 10rem; border: 1px solid rgba(196,175,41,0.2); box-shadow: 0 0.5rem 1.875rem rgba(0,0,0,0.5); }
.book-num { font-family: var(--font-label); font-size: 1rem; letter-spacing: 0.2em; color: #C4AF29; margin-bottom: 0.3rem; font-weight: 600; }
.book-title { font-family: var(--font-display); font-size: 2.125rem; font-weight: 700; color: #E8DCC8; letter-spacing: 0.04em; margin-bottom: 0.5rem; }
.book-hook { font-size: 1.25rem; color: #E8DCC8; line-height: 1.7; font-style: italic; margin-bottom: 1rem; }
.book-link { font-family: var(--font-display); font-size: 1.125rem; color: #C4AF29; font-weight: 600; letter-spacing: 0.1em; text-decoration: none; text-transform: uppercase; border-bottom: 2px solid #C4AF29; padding-bottom: 2px; }
.book-featured .book-num { color: #C4AF29; }
.book-featured .book-cover { border: 2px solid rgba(196,175,41,0.4); }
.book-badge { display: inline-block; background: #C4AF29; color: #0A0908; font-family: var(--font-display); font-size: 0.75rem; font-weight: 600; padding: 0.25rem 0.75rem; letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 0.5rem; }
.books-more { text-align: center; margin-top: 2rem; }

/* FIGHT */
.fight { padding: 6rem 4rem; min-height: 70vh; display: flex; align-items: center; justify-content: center; }
.fight-content { position: relative; z-index: 2; text-align: center; max-width: 38em; }
.fight-book-title { font-family: var(--font-display); font-size: 4rem; font-weight: 700; color: #E8DCC8; letter-spacing: 0.04em; margin-bottom: 1rem; text-align: center; }
.fight-sub { font-size: 1.3rem; color: #E8DCC8; font-style: italic; line-height: 1.8; margin-bottom: 2rem; }

/* BURIED FLORIDA */
.buried { padding: 6rem 4rem; min-height: 70vh; display: flex; align-items: center; justify-content: center; }
.buried-content { position: relative; z-index: 2; text-align: center; max-width: 50rem; margin: 0 auto; }
.buried-subtitle { font-family: var(--font-display); font-size: 2.25rem; font-weight: 700; color: #E8DCC8; letter-spacing: 0.04em; margin-bottom: 1rem; text-align: center; }
.buried-desc { font-size: 1.3rem; color: #E8DCC8; line-height: 1.7; margin-bottom: 0.5rem; }
.buried-ep { font-size: 1.2rem; color: #FFFFFF; font-weight: 600; margin-bottom: 1.8rem; }
.buried-btns { display: flex; justify-content: center; gap: 1rem; flex-wrap: wrap; }

/* EMAIL */
.email { padding: 8rem 4rem; }
.email-content { position: relative; z-index: 2; max-width: 38em; margin: 0 auto; text-align: center; }
.email h2 { font-family: var(--font-display); font-size: 3.5rem; font-weight: 700; color: #C4AF29; letter-spacing: 0.08em; margin-bottom: 0.8rem; }
.email-sub { font-size: 1.375rem; color: #E8DCC8; margin-bottom: 1.5rem; line-height: 1.6; }
.email-fine { font-size: 1rem; color: #9A8520; margin-top: 0.8rem; }

/* FOOTER */
.footer { padding: 5rem 4rem 3rem; }
.footer-content { position: relative; z-index: 2; text-align: center; }
.footer-brand { font-family: var(--font-display); font-size: 1.75rem; font-weight: 700; letter-spacing: 0.18em; color: #C4AF29; margin-bottom: 0.8rem; }
.footer-email { font-size: 1.125rem; color: #E8DCC8; margin-bottom: 1.4rem; }
.footer-social { display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem 2.5rem; margin-bottom: 2rem; }
.footer-social a { font-size: 1.125rem; color: #E8DCC8; text-decoration: none; letter-spacing: 0.08em; transition: color 0.3s; }
.footer-social a:hover { color: #C4AF29; }
.footer-copy { font-size: 1rem; color: #C4AF29; }

/* ===== INTERIOR PAGES ===== */

/* PAGE HERO (shared banner for interior pages) */
.page-hero { position: relative; overflow: hidden; min-height: 60vh; display: flex; flex-direction: column; justify-content: flex-end; padding: 4rem; }
.page-hero-short { min-height: 46vh; }
.page-hero-bg { position: absolute; inset: 0; background-size: cover; background-position: center; }
.page-hero-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,9,8,0.55) 0%, rgba(10,9,8,0.55) 40%, rgba(10,9,8,0.9) 82%, #0A0908 100%); }
.page-hero-content { position: relative; z-index: 2; max-width: 44rem; }
.page-hero-title { font-family: var(--font-display); font-size: 4rem; font-weight: 700; line-height: 1.05; letter-spacing: 0.04em; color: #C4AF29; margin: 0.4rem 0 0.8rem; }
.page-hero-sub { font-size: 1.375rem; color: #E8DCC8; line-height: 1.7; }

/* BOOK page extras */
.book-format { font-family: var(--font-label); font-size: 0.95rem; letter-spacing: 0.14em; color: #9A8520; text-transform: uppercase; margin-bottom: 1rem; }

/* GENERIC PAGE NOTE */
.page-note { padding: 5rem 4rem; text-align: center; }
.page-note-inner { max-width: 40em; margin: 0 auto; }
.page-note-inner p { font-size: 1.3rem; line-height: 1.7; color: #E8DCC8; margin-bottom: 2rem; }
.page-note-btns { display: flex; justify-content: center; gap: 1rem; flex-wrap: wrap; }

/* SERIES ORDER */
.order { padding: 5rem 4rem 6rem; max-width: 72rem; margin: 0 auto; }
.order-intro { font-size: 1.375rem; color: #E8DCC8; font-style: italic; text-align: center; max-width: 42em; margin: 0 auto 3.5rem; line-height: 1.7; }
.order-row { display: flex; justify-content: center; flex-wrap: wrap; gap: 2rem 1.5rem; align-items: flex-start; }
.order-item { width: 12rem; text-align: center; position: relative; }
.order-num { display: block; font-family: var(--font-display); font-size: 2.25rem; font-weight: 700; color: rgba(196,175,41,0.45); letter-spacing: 0.1em; margin-bottom: 0.75rem; }
.order-cover { border: 1px solid rgba(196,175,41,0.2); box-shadow: 0 0.5rem 1.5rem rgba(0,0,0,0.5); margin-bottom: 0.9rem; }
.order-title { font-family: var(--font-display); font-size: 1.25rem; font-weight: 600; color: #E8DCC8; letter-spacing: 0.03em; margin-bottom: 0.35rem; line-height: 1.25; }
.order-status { font-size: 0.95rem; color: #9A8520; letter-spacing: 0.06em; }
.order-status.status-now { color: #C4AF29; font-weight: 600; }
.order-status.status-free { color: #C4AF29; }
.order-item-novella { display: flex; flex-direction: column; align-items: center; }
.order-novella-mark { width: 100%; min-height: 16.5rem; border: 1px dashed rgba(196,175,41,0.35); display: flex; align-items: center; justify-content: center; padding: 1rem; font-family: var(--font-display); font-size: 0.9rem; letter-spacing: 0.16em; color: rgba(196,175,41,0.7); text-align: center; margin-bottom: 0.9rem; }
.order-more { text-align: center; font-size: 1.2rem; color: #E8DCC8; font-style: italic; margin: 3.5rem auto 2rem; max-width: 40em; }
.order-btns { display: flex; justify-content: center; gap: 1rem; flex-wrap: wrap; }

/* ABOUT */
.about { padding: 5rem 4rem 6rem; }
.about-grid { max-width: 60rem; margin: 0 auto; display: grid; grid-template-columns: 20rem 1fr; gap: 3rem; align-items: start; }
.about-photo { border: 1px solid rgba(196,175,41,0.25); box-shadow: 0 0.75rem 2rem rgba(0,0,0,0.55); }
.about-text p { font-size: 1.3rem; line-height: 1.75; color: #E8DCC8; margin-bottom: 1.4rem; }
.about-quote { font-family: var(--font-display); font-weight: 400; font-size: 1.5rem; font-style: italic; color: #C4AF29; line-height: 1.5; border-left: 3px solid #C4AF29; padding-left: 1.5rem; margin: 1.8rem 0; }
.about-comps { font-family: var(--font-label); font-size: 1rem; letter-spacing: 0.14em; text-transform: uppercase; color: #9A8520; margin-top: 1.8rem; }
.about-comps span { color: #C4AF29; }
.about-btns { display: flex; gap: 1rem; flex-wrap: wrap; margin-top: 2rem; }

/* EVENTS */
.events { padding: 5rem 4rem 6rem; }
.events-inner { max-width: 56rem; margin: 0 auto; }
.events-upcoming, .events-invite, .events-contact { margin-bottom: 4rem; }
.events-empty { text-align: center; border: 1px solid rgba(196,175,41,0.2); background: rgba(28,26,24,0.4); padding: 3rem 2rem; }
.events-empty p { font-size: 1.25rem; line-height: 1.7; color: #E8DCC8; margin-bottom: 1.2rem; }
.events-empty-cta { color: #C4AF29 !important; font-style: italic; }
.events-invite-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.events-card { border: 1px solid rgba(196,175,41,0.18); background: rgba(28,26,24,0.4); padding: 2rem 1.6rem; }
.events-card h3 { font-family: var(--font-display); font-size: 1.5rem; font-weight: 600; color: #C4AF29; letter-spacing: 0.04em; margin-bottom: 0.8rem; }
.events-card p { font-size: 1.15rem; line-height: 1.65; color: #E8DCC8; }
.events-contact { text-align: center; }
.events-contact > p { font-size: 1.25rem; color: #E8DCC8; margin-bottom: 1rem; }
.events-email { display: inline-block; font-family: var(--font-display); font-size: 1.75rem; font-weight: 600; color: #C4AF29; text-decoration: none; letter-spacing: 0.04em; border-bottom: 2px solid #C4AF29; padding-bottom: 3px; }
.events-signed { font-size: 1.05rem; color: #9A8520; margin-top: 1.4rem; }

/* NEWSLETTER PAGE */
.email-page { min-height: 80vh; display: flex; align-items: center; padding-top: 9rem; }
.email-offer { font-family: var(--font-display); font-size: 1.5rem; font-style: italic; color: #E8DCC8; margin-bottom: 1rem; }

/* RESPONSIVE */
@media (max-width: 48rem) {
  .page-hero { padding: 3rem 1.5rem; min-height: 44vh; }
  .page-hero-short { min-height: 34vh; }
  .page-hero-title { font-size: 2.5rem; }
  .page-hero-sub { font-size: 1.125rem; }
  .order, .about, .events, .page-note { padding-left: 1.5rem; padding-right: 1.5rem; }
  .about-grid { grid-template-columns: 1fr; gap: 2rem; max-width: 26rem; }
  .about-photo { max-width: 18rem; margin: 0 auto; }
  .events-invite-grid { grid-template-columns: 1fr; }
  .order-item { width: 8.5rem; }
  .order-novella-mark { min-height: 11.5rem; }
  .about-btns, .order-btns, .page-note-btns { flex-direction: column; align-items: center; }
  .nav { padding: 1rem 1.5rem; }
  .nav-links { display: none; position: absolute; top: 100%; left: 0; right: 0; background: rgba(10,9,8,0.96); flex-direction: column; padding: 1.5rem; gap: 1rem; border-bottom: 1px solid rgba(196,175,41,0.1); }
  .nav-links.open { display: flex; }
  .nav-toggle { display: block; }
  .hero { padding: 3rem 1.5rem; min-height: 90vh; }
  .hero h1 { font-size: 3rem; }
  .hero-desc { font-size: 1.125rem; }
  .hero-tag { font-size: 1.125rem; }
  .section-title { font-size: 2.25rem; }
  .section-title-sm { font-size: 1.75rem; }
  .fight-book-title { font-size: 2.5rem; }
  .buried-subtitle { font-size: 1.75rem; }
  .email h2 { font-size: 2.25rem; }
  .books, .fight, .buried, .email, .footer { padding-left: 1.5rem; padding-right: 1.5rem; }
  .book-entry { flex-direction: column; align-items: center; text-align: center; }
  .book-cover { width: 9rem; min-width: 9rem; }
  .announce { flex-direction: column; gap: 0.5rem; text-align: center; padding: 1rem 1.5rem; }
  .announce-text { font-size: 1.125rem; }
  .buried-btns { flex-direction: column; align-items: center; }
  .hero-actions { flex-direction: column; align-items: flex-start; }
  .btn-gold, .btn-outline { width: 100%; text-align: center; max-width: 17.5rem; }
}
/* ===== REUSABLE CINEMATIC BAND (interior pages) ===== */
/* Drop-in full-bleed image section. Every interior content block should be a .band
   (background image + gradient overlay + centered content) so no page is flat black. */
.band { position: relative; overflow: hidden; padding: 6rem 4rem; min-height: 58vh; display: flex; align-items: center; justify-content: center; }
.band-bg { position: absolute; inset: 0; background-size: cover; background-position: center; }
.band-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, #0A0908 0%, rgba(10,9,8,0.55) 12%, rgba(10,9,8,0.55) 88%, #0A0908 100%); }
.band-content { position: relative; z-index: 2; text-align: center; max-width: 46rem; margin: 0 auto; }
.band-quote { font-family: var(--font-display); font-weight: 400; font-style: italic; font-size: 2.25rem; line-height: 1.4; color: #E8DCC8; letter-spacing: 0.02em; }
.band-quote span { color: #C4AF29; }
@media (max-width: 48rem) {
  .band { padding: 4rem 1.5rem; min-height: 48vh; }
  .band-quote { font-size: 1.5rem; }
}

/* hide static fallback once MailerLite embed renders */
.ml-embedded:not(:empty) + .email-form-fallback{display:none !important;}
