/* ============================================================
   SITE REFRESH (NNA-21, 4 Oct 2026)

   1. The colour tokens every redesigned page shares (moved here
      from front-pages.css so the whole site has one palette).
   2. The light "reading" look for the inner pages — About,
      Contact, the legal pages and account deletion, Search,
      Messages, My Account, the subscription pages, Unsubscribe —
      marked with body.lt-page. Same language as the news page:
      a dark newsroom banner (the pages' existing .hero), then
      light paper with white cards, gold accents, 2.5% margins.

   Loaded on every page by includes/links.php, before the pages'
   own stylesheets, so everything below is prefixed body.lt-page
   to outrank them. Television pages (front pages, channel pages,
   Ultra Stream) stay dark and are not touched here.
   ============================================================ */
:root {
  --fp-ink: #0a0e16;
  --fp-ink-2: #0f1521;
  --fp-panel: #111926;
  --fp-line: rgba(255, 255, 255, 0.09);
  --fp-text: #f3f5f8;
  --fp-muted: rgba(229, 234, 242, 0.64);
  --fp-gold: #c19114;
  --fp-gold-2: #e0b23a;
  --fp-gold-ink: #8f6808;      /* gold for text on light backgrounds (contrast 5:1) */
  --fp-red: #e02a36;
  --fp-paper: #f2f3f5;
  --fp-card: #ffffff;
  --fp-ink-txt: #10141c;
  --fp-ink-muted: #5b6473;
  --fp-card-line: #e1e4e9;
  --fp-radius: 10px;
}

/* ── Page and banner ─────────────────────────────────────── */
body.lt-page,
body.lt-page main { background: var(--fp-paper); }
body.lt-page main { color: var(--fp-ink-txt); }
body.lt-page main .white-txt { color: var(--fp-ink-txt); }

body.lt-page .hero,
body.lt-page.about .hero {
  min-height: 0;
  height: auto;
  margin-top: 0;
  padding: 104px 2.5% 46px;
  border-bottom: 0;
  background:
    linear-gradient(90deg, rgba(8, 11, 18, 0.97) 0%, rgba(8, 11, 18, 0.85) 48%, rgba(8, 11, 18, 0.4) 100%),
    url(../images/home/hero-slides/slide-news.jpg) center 30% / cover no-repeat,
    var(--fp-ink);
  color: #fff;
}
body.lt-page .hero::after {
  height: 3px;
  background: linear-gradient(90deg, #c19114, #e0b23a 30%, rgba(224, 178, 58, 0) 75%);
}
body.lt-page .hero .overlay { display: none; }
body.lt-page .hero { justify-content: flex-start; text-align: left; }
body.lt-page .hero .content { display: block; text-align: left; transform: none !important; }
/* About's banner photo is set inline by the lazy loader; keep the dark wash over it */
body.lt-page.about .hero {
  background-image:
    linear-gradient(90deg, rgba(8, 11, 18, 0.97) 0%, rgba(8, 11, 18, 0.85) 48%, rgba(8, 11, 18, 0.4) 100%),
    url(../images/home/hero-slides/slide-news.jpg) !important;
}
/* "NNA TV+" over every page title, as on the news page's banner */
body.lt-page .hero .content::before {
  content: "NNA TV+";
  display: block;
  margin-bottom: 6px;
  color: var(--fp-gold-2);
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 0.14em;
}
body.lt-page .hero .content h1,
body.lt-page.legal-page .hero .content h1 {
  padding-left: 0;
  font-size: 56px;
  font-weight: 900;
  line-height: 0.98;
  letter-spacing: -0.03em;
  text-align: left;
  text-transform: uppercase;
  color: #fff;
}
body.lt-page .hero h1::before { display: none; }
body.lt-page .hero .content h1 span { display: inline; text-align: left; }

/* shared form fields on light pages */
body.lt-page main input[type="text"],
body.lt-page main input[type="email"],
body.lt-page main input[type="tel"],
body.lt-page main input[type="password"],
body.lt-page main input[type="search"],
body.lt-page main select,
body.lt-page main textarea { color: var(--fp-ink-txt); }

/* ── About ───────────────────────────────────────────────── */
body.lt-page .about-nna { padding: 56px 2.5% 70px; background: var(--fp-paper); color: #262b35; }
body.lt-page .about-nna > div { max-width: none; }
body.lt-page .about-intro { border-bottom-color: var(--fp-card-line); }
body.lt-page .about-eyebrow { color: var(--fp-gold-ink); }
body.lt-page .about-nna h2 { color: var(--fp-ink-txt); }
body.lt-page .about-lead { color: #262b35; }
body.lt-page .about-sub { color: var(--fp-ink-muted); }
body.lt-page .about-channel {
  border-color: var(--fp-card-line);
  background: var(--fp-card);
  box-shadow: 0 16px 30px -26px rgba(16, 20, 28, 0.5);
}
body.lt-page .about-channel:hover { border-color: var(--fp-gold); }
body.lt-page .about-channel-name { color: var(--fp-ink-txt); }
body.lt-page .about-channel-tag { color: var(--fp-gold-ink); }
body.lt-page .about-channel-text { color: var(--fp-ink-muted); }
body.lt-page .about-channel-link { color: var(--fp-gold-ink); }
body.lt-page .about-card {
  border-color: var(--fp-card-line);
  border-top: 3px solid var(--fp-gold);
  background: var(--fp-card);
  color: var(--fp-ink-muted);
}
body.lt-page .about-card h3 { color: var(--fp-ink-txt); }
body.lt-page .about-btn.ghost { color: var(--fp-ink-txt); border-color: #cdd3db; }
body.lt-page .about-btn.ghost:hover { color: var(--fp-gold-ink); border-color: var(--fp-gold); }

/* ── Contact ─────────────────────────────────────────────── */
body.lt-page.contact .sec1 { padding: 50px 2.5% 70px; }
body.lt-page.contact .sec1 .grid .item {
  border: 1px solid var(--fp-card-line);
  background: var(--fp-card);
  box-shadow: 0 16px 30px -26px rgba(16, 20, 28, 0.5);
}
body.lt-page.contact .sec1 .grid .item .lef { background: var(--fp-ink); }
body.lt-page.contact .sec1 .grid .item .righ .title { color: var(--fp-gold-ink); }
body.lt-page.contact .sec1 .grid .item .righ .info,
body.lt-page.contact .sec1 .grid .item .righ .info a { color: var(--fp-ink-txt); }
body.lt-page.contact .sec1 .flex .right,
body.lt-page.contact .sec1 .flex .right p { color: #262b35; }
body.lt-page.contact .sec1 .flex .right b { color: var(--fp-ink-txt); }
body.lt-page.contact .sec1 .flex .right form .half,
body.lt-page.contact .sec1 .flex .right form .fullwidth {
  border: 1px solid var(--fp-card-line);
  background-color: var(--fp-card);
  color: var(--fp-ink-txt);
}
body.lt-page.contact .sec1 .flex .right form .half:focus-within,
body.lt-page.contact .sec1 .flex .right form .fullwidth:focus-within { border-color: var(--fp-gold); }
body.lt-page.contact #contactform input,
body.lt-page.contact #contactform select,
body.lt-page.contact #contactform textarea { background: transparent; color: var(--fp-ink-txt); }
body.lt-page.contact #contactform input::placeholder,
body.lt-page.contact #contactform textarea::placeholder { color: #8a92a0; }
/* the field icons are white PNGs: darken them for the white fields */
body.lt-page.contact #contactform .half img,
body.lt-page.contact #contactform .fullwidth img { filter: invert(1) brightness(0.35); }
body.lt-page.contact .sec1 .flex .img-wrap iframe { border: 1px solid var(--fp-card-line); }

/* ── Legal pages and account deletion ────────────────────── */
body.lt-page.legal-page .sec1 { padding: 50px 2.5% 0; margin-bottom: 70px; }
body.lt-page.legal-page .legal-doc {
  max-width: 900px;
  background: var(--fp-card);
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  border: 1px solid var(--fp-card-line);
  border-top: 3px solid var(--fp-gold);
  box-shadow: 0 24px 50px -36px rgba(16, 20, 28, 0.45);
  color: #2b313c;
}
body.lt-page.legal-page .legal-doc p { color: #2b313c; }
body.lt-page.legal-page .legal-doc strong { color: var(--fp-ink-txt); }
body.lt-page.legal-page .legal-doc > p:first-of-type:not(.legal-meta) { color: var(--fp-ink-txt); }
body.lt-page.legal-page .legal-doc h2 { color: var(--fp-ink-txt); border-top-color: var(--fp-card-line); }
body.lt-page.legal-page .legal-doc h3 { color: var(--fp-gold-ink); }
body.lt-page.legal-page .legal-doc li { color: #2b313c; }
body.lt-page.legal-page .legal-doc ol li::before { color: var(--fp-gold-ink); }
body.lt-page.legal-page .legal-doc a { color: var(--fp-gold-ink); text-decoration-color: rgba(143, 104, 8, 0.4); }
body.lt-page.legal-page .legal-doc a:hover { color: #6f5006; }
body.lt-page.legal-page .legal-meta { background: #fbf6e8; border-color: rgba(143, 104, 8, 0.35); color: var(--fp-gold-ink); }
body.lt-page.legal-page .legal-meta strong { color: var(--fp-gold-ink); }
body.lt-page.legal-page .legal-toc { background: var(--fp-paper); border-color: var(--fp-card-line); }
body.lt-page.legal-page .legal-toc .legal-toc-title { color: var(--fp-ink-muted); }
body.lt-page.legal-page .legal-toc a { color: var(--fp-ink-txt); text-decoration: none; }
body.lt-page.legal-page .legal-toc a:hover { color: var(--fp-gold-ink); }
body.lt-page.legal-page .legal-related { border-top-color: var(--fp-card-line); }
body.lt-page.legal-page .legal-related-links a { background: var(--fp-paper); border-color: var(--fp-card-line); color: var(--fp-ink-txt); text-decoration: none; }
body.lt-page.legal-page .legal-related-links a:hover { background: #fbf6e8; border-color: var(--fp-gold); color: var(--fp-gold-ink); }
body.lt-page.legal-page .legal-contact { background: #fbf6e8; color: #2b313c; }
body.lt-page .del-form label { color: var(--fp-ink-txt); }
body.lt-page .del-form input,
body.lt-page .del-form textarea { border-color: var(--fp-card-line); background: var(--fp-paper); color: var(--fp-ink-txt); }
body.lt-page .del-form .del-check { color: #2b313c; }
body.lt-page .del-notice { border-color: var(--fp-card-line); background: var(--fp-paper); color: #2b313c; }
body.lt-page .del-notice h2 { color: var(--fp-ink-txt); }
body.lt-page .del-form-note { color: var(--fp-ink-muted); }

/* ── Search ──────────────────────────────────────────────── */
body.lt-page.search-page .result { padding: 40px 2.5% 0; }
body.lt-page.search-page .result,
body.lt-page.search-page .result * { color: var(--fp-ink-txt); }
body.lt-page.search-page .result strong,
body.lt-page.search-page .result b { color: var(--fp-gold-ink); }
body.lt-page.search-page .sec1 { padding: 24px 2.5% 70px; }
body.lt-page.search-page .sec1 .posts-list { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
body.lt-page.search-page .sec1 .posts-list .post {
  background: var(--fp-card);
  border-color: var(--fp-card-line);
  border-radius: var(--fp-radius);
}
body.lt-page.search-page .sec1 .posts-list .post:hover { border-color: var(--fp-card-line); box-shadow: 0 16px 34px -20px rgba(16, 20, 28, 0.5); }
body.lt-page.search-page .sec1 .posts-list .post .right .category { background: transparent; color: var(--fp-gold-ink); padding: 0; }
body.lt-page.search-page .sec1 .posts-list .post .right .title { color: var(--fp-ink-txt); }
body.lt-page.search-page .sec1 .posts-list .post:hover .right .title { color: var(--fp-gold-ink); }
body.lt-page.search-page .sec1 .posts-list .post .right .excerpt { color: var(--fp-ink-muted); }
body.lt-page.search-page .sec1 .posts-list .post .right .date { color: var(--fp-ink-muted); }

/* ── Messages ────────────────────────────────────────────── */
body.lt-page.messages-page .inbox { padding-left: 2.5%; padding-right: 2.5%; }
body.lt-page.messages-page .inbox-bar { border-bottom-color: var(--fp-card-line); }
body.lt-page.messages-page .inbox-count { color: var(--fp-ink-muted); }
body.lt-page.messages-page .inbox-count b { color: var(--fp-gold-ink); }
body.lt-page.messages-page .mark-all-btn { border-color: #cdd3db; background: var(--fp-card); color: var(--fp-ink-txt); }
body.lt-page.messages-page .mark-all-btn:hover { border-color: var(--fp-gold); background: #fbf6e8; color: var(--fp-gold-ink); }
body.lt-page.messages-page .message { border-color: var(--fp-card-line); background: var(--fp-card); }
body.lt-page.messages-page .message.is-unread { border-color: var(--fp-gold); background: #fffdf6; }
body.lt-page.messages-page .message.is-open { border-color: #cdd3db; }
body.lt-page.messages-page .message-head:hover { background: var(--fp-paper); }
body.lt-page.messages-page .message-dot { border-color: #b9c0ca; }
body.lt-page.messages-page .message-title { color: #2b313c; }
body.lt-page.messages-page .message.is-unread .message-title { color: var(--fp-ink-txt); }
body.lt-page.messages-page .message-head:hover .message-title { color: var(--fp-gold-ink); }
body.lt-page.messages-page .message-meta,
body.lt-page.messages-page .message-chevron { color: var(--fp-ink-muted); }
body.lt-page.messages-page .message-tag { background: #e8eef5; color: #2f506f; }
body.lt-page.messages-page .message-body { color: #2b313c; }
body.lt-page.messages-page .message-image { border-color: var(--fp-card-line); }
body.lt-page.messages-page .message-link { background: #fbf6e8; color: var(--fp-gold-ink); }
body.lt-page.messages-page .inbox-empty { border-color: var(--fp-card-line); border-top-color: var(--fp-gold); background: var(--fp-card); }
body.lt-page.messages-page .inbox-empty h2 { color: var(--fp-ink-txt); }
body.lt-page.messages-page .inbox-empty p { color: var(--fp-ink-muted); }
body.lt-page.messages-page .inbox-empty-icon { background: #fbf6e8; }

/* ── My Account ──────────────────────────────────────────── */
body.lt-page.account .sec1 { padding-left: 2.5%; padding-right: 2.5%; }
body.lt-page.account .account-wrapper { color: #2b313c; }
body.lt-page.account .account-header h1 { color: var(--fp-ink-txt); }
body.lt-page.account .account-header p { color: var(--fp-ink-muted); }
body.lt-page.account .card {
  background: var(--fp-card);
  border-color: var(--fp-card-line);
  box-shadow: 0 20px 40px -32px rgba(16, 20, 28, 0.45);
  color: #2b313c;
}
body.lt-page.account .card h2,
body.lt-page.account .card h3 { color: var(--fp-ink-txt); }
body.lt-page.account .details-table th { background: var(--fp-paper); color: var(--fp-ink-txt); border-color: var(--fp-card-line); }
body.lt-page.account .details-table td { background: var(--fp-card); color: #2b313c; border-color: var(--fp-card-line); }
body.lt-page.account .details-table,
body.lt-page.account .details-table tr { border-color: var(--fp-card-line); }
body.lt-page.account .account-header h1::before { display: none; }
body.lt-page.account .sec1 { padding-top: 40px; }
body.lt-page.account .subscription-table td { border-color: var(--fp-card-line); color: #2b313c; }
body.lt-page.account .subscription-table th { background: var(--fp-paper); color: var(--fp-ink-txt); }
body.lt-page.account .mobile-row { background: var(--fp-paper); border-color: var(--fp-card-line); }
body.lt-page.account .mobile-row .label { color: var(--fp-ink-txt); }
body.lt-page.account .mobile-row .value { color: #2b313c; }
body.lt-page.account .sub-stat { background: var(--fp-paper); border-color: var(--fp-card-line); }
body.lt-page.account .sub-stat .stat-label { color: var(--fp-ink-muted); }
body.lt-page.account .sub-stat .stat-value { color: var(--fp-ink-txt); }
body.lt-page.account .sub-stat .stat-value.gold { color: var(--fp-gold-ink); }
body.lt-page.account .sub-stat .stat-value.muted,
body.lt-page.account .renew-note,
body.lt-page.account .billing-progress .prog-labels { color: var(--fp-ink-muted); }
body.lt-page.account .prog-track { background: #dfe3e8; }
body.lt-page.account .sub-actions { border-top-color: var(--fp-card-line); }
body.lt-page.account .btn-secondary { color: var(--fp-ink-txt); border-color: #cdd3db; }
body.lt-page.account .flash-message.success { background: #e9f7ee; color: #1c6b3a; border-color: #b7e2c6; }
body.lt-page.account .flash-message.error { background: #fdecec; color: #9b2323; border-color: #f2c1c1; }
body.lt-page.account .flash-message.info { background: #e9f1f8; color: #234e72; border-color: #c3d6e8; }

/* ── Subscription result pages, Unsubscribe ──────────────── */
body.lt-page.text-page:not(.legal-page):not(.account) .sec1 { padding: 120px 2.5% 80px; color: var(--fp-ink-txt); }
body.lt-page.text-page:not(.legal-page):not(.account) .sec1 > div {
  max-width: 720px;
  margin: 0 auto;
  padding: 40px 36px;
  border: 1px solid var(--fp-card-line);
  border-top: 3px solid var(--fp-gold);
  border-radius: 14px;
  background: var(--fp-card);
  box-shadow: 0 24px 50px -36px rgba(16, 20, 28, 0.45);
}
body.lt-page.text-page:not(.legal-page):not(.account) .sec1 h1,
body.lt-page.text-page:not(.legal-page):not(.account) .sec1 h2 { color: var(--fp-ink-txt); }
body.lt-page.text-page:not(.legal-page):not(.account) .sec1 p { color: #2b313c; }

body.lt-page main .lt-card {
  padding: 40px 32px;
  border: 1px solid var(--fp-card-line);
  border-top: 3px solid var(--fp-gold);
  border-radius: 14px;
  background: var(--fp-card);
  box-shadow: 0 24px 50px -36px rgba(16, 20, 28, 0.45);
}

/* ── Phones ──────────────────────────────────────────────── */
/* The weather pill hangs over the top of every page on a phone since the
   market strip went in under the menu (NNA-19); the strip now owns that row. */
@media screen and (max-width: 768px) {
  /* (on phones a script moves it out of the header to <body>) */
  #weather-bar { display: none !important; }
}
@media screen and (max-width: 1100px) {
  body.lt-page.search-page .sec1 .posts-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media screen and (max-width: 768px) {
  body.lt-page .hero,
  body.lt-page.about .hero { padding: 30px 16px 28px; }
  body.lt-page .hero .content::before { font-size: 12px; }
  body.lt-page .hero .content h1,
  body.lt-page.legal-page .hero .content h1 { font-size: 34px; }
  body.lt-page .about-nna,
  body.lt-page.contact .sec1,
  body.lt-page.search-page .result,
  body.lt-page.search-page .sec1 { padding-left: 16px; padding-right: 16px; }
  body.lt-page.legal-page .sec1 { padding: 28px 12px 0; }
  body.lt-page.search-page .sec1 .posts-list { grid-template-columns: minmax(0, 1fr); }
  body.lt-page.text-page:not(.legal-page):not(.account) .sec1 { padding: 40px 16px 50px; }
  body.lt-page.text-page:not(.legal-page):not(.account) .sec1 > div { padding: 28px 20px; }
}
