@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap');
/*
Theme Name:   Divi NPMS Child
Theme URI:    https://nonprofitmediasolutions.org/
Description:  NPMS custom child theme — minimal hamburger header + Live TV pill.
Author:       NPMS
Template:     Divi
Version:      1.2.0
*/

/* ============================================================
   NPMS MINIMAL HEADER + SITE-WIDE NPTV BLUE PALETTE
   Match the Live TV module's blue gradient background everywhere.
   ============================================================ */

/* --- SITE-WIDE NPTV BLUE PALETTE ----------------------------------------
   1. Disable Divi's section fade-in animations (kills the white-cover flash)
   2. Apply the Live TV blue gradient to body + page container + sections
   3. Force readable text colors on the blue background
   ----------------------------------------------------------------------- */

/* 1. Kill Divi's fade-in / animation initial states (no more flash) */
.et_pb_section.et_animated,
.et_pb_row.et_animated,
.et_pb_module.et_animated,
.et_animated:not(.et_pb_animation_top):not(.et_pb_animation_left):not(.et_pb_animation_right):not(.et_pb_animation_bottom) {
  opacity:1 !important;
  animation:none !important;
  transform:none !important;
}
.et_pb_section, .et_pb_row, .et_pb_column, .et_pb_module, .et_pb_with_background {
  opacity:1 !important;
}
/* Some animations are added via inline styles; force fully visible from frame 0 */
.et-waypoint, .et_pb_animation_top, .et_pb_animation_left, .et_pb_animation_right, .et_pb_animation_bottom {
  opacity:1 !important; transform:none !important;
}

/* 2. Blue gradient body + page container */
html, body, #page-container, #et-main-area, #main-content {
  background:
    radial-gradient(ellipse at 20% 30%, rgba(0,174,239,.18) 0%, transparent 60%),
    radial-gradient(ellipse at 80% 70%, rgba(41,182,246,.18) 0%, transparent 60%),
    linear-gradient(180deg,#0b3d66 0%,#1565a3 50%,#0b3d66 100%) !important;
  background-attachment: fixed !important;
}

/* AGGRESSIVE: force ALL Divi sections to transparent — even ones with inline
   white bg from the page builder — so the blue gradient shows through everywhere.
   Sections that use a background IMAGE keep it (we only override colors). */
#et-main-area .et_pb_section { background-color:transparent !important; }
#et-main-area .et_pb_row { background-color:transparent !important; }
#et-main-area .et_pb_column { background-color:transparent !important; }
#et-main-area .entry-content { background:transparent !important; }
#et-main-area article { background:transparent !important; }
#et-main-area .et-l, #et-main-area .et_builder_inner_content { background:transparent !important; }

/* Text reading on the blue — only force black/dark text to light. Leave colored
   text (red, orange, the locations links) alone — they already read fine on blue. */
#et-main-area h1, #et-main-area h2, #et-main-area h3, #et-main-area h4, #et-main-area h5, #et-main-area h6 {
  /* Headings: if they were black (default), make them light. Inline styles override this. */
  color:#fff !important;
}
#et-main-area p, #et-main-area li:not([style*="color"]) {
  /* Paragraphs/list-items: only force light if they don't already have a color set */
  color:#e8e8ea !important;
}
/* Pages that already use a designed dark color scheme are exempt via their inline style attributes — those win because of CSS cascade rules even with our !important when the inline style itself uses !important (which Divi often does on its visual builder). */

/* ===== BRIGHTEN ELEMENTS THAT WERE BLUE ON BLUE ===== */

/* (Earlier icon override removed — replaced by the unified light-gray rules above) */

/* Common Divi blue text colors that vanish on the blue bg — override to bright cyan */
#et-main-area [style*="color:#0c71c3"],
#et-main-area [style*="color: #0c71c3"],
#et-main-area [style*="color:#0088c9"],
#et-main-area [style*="color: #0088c9"],
#et-main-area [style*="color:#2ea3f2"],
#et-main-area [style*="color: #2ea3f2"],
#et-main-area [style*="color:#1976d2"],
#et-main-area [style*="color: #1976d2"],
#et-main-area [style*="color:#2348ff"],
#et-main-area [style*="color: #2348ff"] { color:#a8e4ff !important; }

/* SVG icons inside main content — brighten any blue fills */
#et-main-area svg path[fill="#0088c9"],
#et-main-area svg path[fill="#0c71c3"],
#et-main-area svg path[fill="#2ea3f2"] { fill:#a8e4ff !important; }

/* Ninja Forms — labels + required marker readable on blue */
#et-main-area .nf-form-cont label,
#et-main-area .nf-form-fields-required,
#et-main-area .nf-form-content .label-above .field-wrap > div,
#et-main-area .ninja-forms-form .nf-field-label label { color:#e8e8ea !important; }
#et-main-area .ninja-forms-req-symbol { color:#ff7676 !important; }
/* Form inputs keep white bg + dark text */
#et-main-area .nf-form-cont input[type="text"],
#et-main-area .nf-form-cont input[type="email"],
#et-main-area .nf-form-cont textarea { background:#fff !important; color:#222 !important; }

/* Divi default button styling against blue bg */
#et-main-area .et_pb_button {
  color:#fff !important;
  border-color:rgba(255,255,255,.4) !important;
  background:rgba(0,174,239,.18) !important;
}
#et-main-area .et_pb_button:hover { background:rgba(0,174,239,.4) !important; border-color:#67d4ff !important; }

/* ===== UNIFIED TEXT + ICON COLOR SCHEME ON BLUE BG =====
   - Body text: pure white
   - Headings (h1-h6 in body): very light cool-gray (#eef2f6)
   - Icons + their adjacent title text: matched very light gray (#dde3ea)
   - Subtle text-shadow on all text for legibility on the blue gradient */

#et-main-area p, #et-main-area li:not([style*="color"]),
#et-main-area td, #et-main-area span:not([style*="color"]) {
  color:#ffffff !important;
  text-shadow:0 1px 2px rgba(0,0,0,.35);
}

#et-main-area h1, #et-main-area h2, #et-main-area h3,
#et-main-area h4, #et-main-area h5, #et-main-area h6 {
  color:#eef2f6 !important;
  text-shadow:0 2px 4px rgba(0,0,0,.35);
}

/* Divi blurb modules: icon + title underneath should be a matched soft light-gray.
   Includes the LINK inside the header — Divi often wraps blurb titles in <a>. */
#et-main-area .et_pb_blurb .et-pb-icon,
#et-main-area .et_pb_blurb .et_pb_main_blurb_image .et-pb-icon,
#et-main-area .et_pb_blurb .et_pb_module_header,
#et-main-area .et_pb_blurb .et_pb_module_header a,
#et-main-area .et_pb_blurb .et_pb_module_header a:hover,
#et-main-area .et_pb_blurb h1, #et-main-area .et_pb_blurb h2,
#et-main-area .et_pb_blurb h3, #et-main-area .et_pb_blurb h4,
#et-main-area .et_pb_blurb h5, #et-main-area .et_pb_blurb h6,
#et-main-area .et_pb_blurb h1 a, #et-main-area .et_pb_blurb h2 a,
#et-main-area .et_pb_blurb h3 a, #et-main-area .et_pb_blurb h4 a,
#et-main-area .et_pb_blurb h5 a, #et-main-area .et_pb_blurb h6 a {
  color:#dde3ea !important;
  fill:#dde3ea !important;
  text-shadow:0 1px 2px rgba(0,0,0,.35);
  text-decoration:none !important;
}
/* The "et_pb_bg_layout_light" class forces dark text — override DESCRIPTION text
   to white. TITLE/MODULE-HEADER stays light gray (handled by the .et_pb_blurb rules above). */
#et-main-area .et_pb_bg_layout_light .et_pb_blurb_description,
#et-main-area .et_pb_bg_layout_light .et_pb_blurb_description p,
#et-main-area .et_pb_bg_layout_light p:not(.et_pb_module_header) { color:#ffffff !important; }
/* Make sure blurb title + link inside it stay #dde3ea even with .et_pb_bg_layout_light */
#et-main-area .et_pb_bg_layout_light .et_pb_blurb .et_pb_module_header,
#et-main-area .et_pb_bg_layout_light .et_pb_blurb .et_pb_module_header a,
#et-main-area .et_pb_bg_layout_light .et_pb_blurb h1,
#et-main-area .et_pb_bg_layout_light .et_pb_blurb h2,
#et-main-area .et_pb_bg_layout_light .et_pb_blurb h3,
#et-main-area .et_pb_bg_layout_light .et_pb_blurb h4,
#et-main-area .et_pb_bg_layout_light .et_pb_blurb h5,
#et-main-area .et_pb_bg_layout_light .et_pb_blurb h6,
#et-main-area .et_pb_bg_layout_light .et_pb_blurb h1 a,
#et-main-area .et_pb_bg_layout_light .et_pb_blurb h2 a,
#et-main-area .et_pb_bg_layout_light .et_pb_blurb h3 a,
#et-main-area .et_pb_bg_layout_light .et_pb_blurb h4 a,
#et-main-area .et_pb_bg_layout_light .et_pb_blurb h5 a,
#et-main-area .et_pb_bg_layout_light .et_pb_blurb h6 a { color:#dde3ea !important; text-decoration:none !important; }

/* Force icon color win over Divi's per-module rules (.et_pb_blurb_0 .et-pb-icon etc) */
#et-main-area .et_pb_blurb_0 .et-pb-icon,
#et-main-area .et_pb_blurb_1 .et-pb-icon,
#et-main-area .et_pb_blurb_2 .et-pb-icon,
#et-main-area .et_pb_blurb_3 .et-pb-icon,
#et-main-area .et_pb_blurb_4 .et-pb-icon,
#et-main-area .et_pb_blurb_5 .et-pb-icon,
#et-main-area .et_pb_blurb_6 .et-pb-icon,
#et-main-area .et_pb_blurb_7 .et-pb-icon,
#et-main-area .et_pb_blurb_8 .et-pb-icon,
#et-main-area .et_pb_blurb_9 .et-pb-icon { color:#dde3ea !important; }
/* Standalone icon modules (the monitor on Locations etc) — same light gray */
#et-main-area .et_pb_image .et-pb-icon,
#et-main-area .et-pb-icon { color:#dde3ea !important; fill:#dde3ea !important; }


/* Locations page header — original title text "OUT OF HOME MARKET / LOCAL PUBLIC VENUE NETWORK"
   is hidden, replaced via a CSS pseudo-element so we get a real two-line layout. */
.page-id-6262 #et-main-area .et_pb_blurb_0 .et_pb_module_header,
.page-id-6262 #et-main-area .et_pb_blurb_0 .et_pb_module_header span {
  font-size:0 !important;          /* hide the original text */
  line-height:0 !important;
}
.page-id-6262 #et-main-area .et_pb_blurb_0 .et_pb_module_header::before {
  content:"OUT OF HOME MARKET";
  display:block;
  font-size:1.25rem !important;
  font-weight:600 !important;
  letter-spacing:.04em !important;
  line-height:1.2 !important;
  color:#dde3ea !important;
  margin-top:.4em !important;
}
.page-id-6262 #et-main-area .et_pb_blurb_0 .et_pb_module_header::after {
  content:"LOCAL PUBLIC VENUE NETWORK";
  display:block;
  font-size:.92rem !important;
  font-weight:400 !important;
  letter-spacing:.08em !important;
  line-height:1.2 !important;
  color:#cfd6dd !important;
  opacity:.95 !important;
  margin-top:.15em !important;
}

/* ===== LOCATIONS PAGE (page-id-6262) — TWO STATE COLUMNS (Texas | Arizona) =====
   Replaces the previous column-count layout. Now uses flex with two .loc-state
   children injected into the text module — so a city's list never breaks across
   columns mid-state. Each state's full list stays in its own column. */
.page-id-6262 #et-main-area .et_pb_text_0 .et_pb_text_inner {
  display:flex !important;
  flex-direction:row !important;
  gap:24px !important;                  /* tightened from 60px */
  align-items:flex-start !important;
  max-width:1400px !important;
  margin:0 auto !important;
  column-count:auto !important;
  column-rule:none !important;
  padding:0 16px !important;
}
.page-id-6262 .loc-state {
  flex:1 1 0 !important;
  min-width:0 !important;
  position:relative;
  padding:0 12px !important;
}
.page-id-6262 .loc-state + .loc-state {
  border-left:1px solid rgba(255,255,255,.12) !important;
  padding-left:24px !important;         /* tightened from 60px */
  margin-left:0 !important;
}
/* State headings (TEXAS, ARIZONA) — Bebas Neue, underlined, bolder, light gray */
.page-id-6262 .loc-state > h3:first-of-type,
.page-id-6262 .loc-state > h3:first-of-type strong,
.page-id-6262 .loc-state > h3:first-of-type span {
  font-family:'Bebas Neue','Inter',sans-serif !important;
  font-size:1.8em !important;
  font-weight:400 !important;
  letter-spacing:.06em !important;
  text-decoration:underline !important;
  text-decoration-color:#67d4ff !important;
  text-decoration-thickness:2px !important;
  text-underline-offset:8px !important;
  margin:0 0 .5em 0 !important;
  color:#dde3ea !important;
}
/* City headings (BROWNSVILLE, SCOTTSDALE, etc.) — Bebas Neue + cyan underline,
   centered, consistent spacing so they read as visible section markers. */
.page-id-6262 .loc-state h3:not(:first-of-type),
.page-id-6262 .loc-state h3:not(:first-of-type) *,
.page-id-6262 .loc-state h4,
.page-id-6262 .loc-state h4 * {
  font-family:'Bebas Neue','Inter',sans-serif !important;
  font-size:1.2em !important;
  letter-spacing:.06em !important;
  font-weight:400 !important;
  color:#dde3ea !important;
}
.page-id-6262 .loc-state h3:not(:first-of-type),
.page-id-6262 .loc-state h4 {
  display:inline-block !important;
  text-align:center !important;
  margin:1.1em auto .35em auto !important;
  padding-bottom:2px !important;
  border-bottom:1px solid rgba(103,212,255,.55) !important;
  width:auto !important;
  min-width:140px !important;
}
/* Center the inline-block headings within their column */
.page-id-6262 .loc-state h3:not(:first-of-type),
.page-id-6262 .loc-state h4 { display:block !important; position:relative; }
.page-id-6262 .loc-state h3:not(:first-of-type)::after,
.page-id-6262 .loc-state h4::after {
  content:""; display:block;
  width:80px; height:1px;
  background:rgba(103,212,255,.55);
  margin:3px auto 0 auto;
}
/* Remove the previous border-bottom approach since we use ::after for the underline */
.page-id-6262 .loc-state h3:not(:first-of-type),
.page-id-6262 .loc-state h4 { border-bottom:0 !important; }

/* Horizontal junction line at the bottom of EACH column where its content ends */
.page-id-6262 .loc-state::after {
  content:"";
  display:block;
  width:140px;
  height:1px;
  background:linear-gradient(90deg, transparent 0%, rgba(103,212,255,.55) 50%, transparent 100%);
  margin:1.5em auto 0 auto;
}
/* Tighter location item spacing */
.page-id-6262 .loc-state p { margin:.12em 0 !important; line-height:1.35 !important; font-size:.92em !important; }

/* Hide the spacer paragraph between TEXAS and BROWNSVILLE so the first city
   underline lines up horizontally with SCOTTSDALE on the AZ side. */
.page-id-6262 .loc-state > h3:first-of-type + p { display:none !important; }
@media (max-width:780px) {
  .page-id-6262 #et-main-area .et_pb_text_0 .et_pb_text_inner { flex-direction:column !important; gap:30px !important; }
  .page-id-6262 .loc-state + .loc-state { border-left:0 !important; padding-left:0 !important; margin-left:0 !important; }
}
/* City/region titles — light gray, avoid breaking after */
.page-id-6262 #et-main-area .et_pb_text_0 h1,
.page-id-6262 #et-main-area .et_pb_text_0 h2,
.page-id-6262 #et-main-area .et_pb_text_0 h3,
.page-id-6262 #et-main-area .et_pb_text_0 h3 *,
.page-id-6262 #et-main-area .et_pb_text_0 h4,
.page-id-6262 #et-main-area .et_pb_text_0 strong,
.page-id-6262 #et-main-area .et_pb_text_0 h3 span,
.page-id-6262 #et-main-area .et_pb_text_0 h3 strong {
  color:#dde3ea !important;
  break-after:avoid !important;
  -webkit-column-break-after:avoid !important;
  page-break-after:avoid !important;
}
.page-id-6262 #et-main-area .et_pb_text_0 h3,
.page-id-6262 #et-main-area .et_pb_text_0 h4 {
  margin-top:1.2em !important;
  margin-bottom:.4em !important;
  background:transparent !important;
  background-color:transparent !important;
}
/* Some headings have inline background-color:#fff — strip it */
.page-id-6262 #et-main-area .et_pb_text_0 h3[style*="background"],
.page-id-6262 #et-main-area .et_pb_text_0 h3[style*="background"] span {
  background:transparent !important;
  background-color:transparent !important;
}
/* Force-uppercase city names so mixed-case ones (San Antonio, Dallas) match TEXAS / BROWNSVILLE */
.page-id-6262 #et-main-area .et_pb_text_0 h3 { text-transform:uppercase !important; letter-spacing:.04em !important; }
/* Location names + links — white */
.page-id-6262 #et-main-area .et_pb_text_0 p,
.page-id-6262 #et-main-area .et_pb_text_0 p *,
.page-id-6262 #et-main-area .et_pb_text_0 p span,
.page-id-6262 #et-main-area .et_pb_text_0 p span *,
.page-id-6262 #et-main-area .et_pb_text_0 p a,
.page-id-6262 #et-main-area .et_pb_text_0 p span a {
  color:#ffffff !important;
  text-shadow:0 1px 2px rgba(0,0,0,.35);
}
.page-id-6262 #et-main-area .et_pb_text_0 p { margin:.18em 0 !important; line-height:1.4 !important; }
.page-id-6262 #et-main-area .et_pb_text_0 p a:hover,
.page-id-6262 #et-main-area .et_pb_text_0 p span a:hover { color:#67d4ff !important; }
/* Top "PUBLIC NETWORK LOCATIONS" header — kept centered and light gray (already covered by blurb header rules) */

/* ===== LIVE TV VISUAL LANGUAGE — applied to content pages (Sponsors, Community, PSA, Events, Network Mgmt) ===== */
/* Target page IDs: 7880 sponsors, 6977 community, 6879 psa,
   7612 event-coverage, 7557 event-promotion, 7808 network-mgmt, 8146 corporatesponsors */
.page-id-7880 #et-main-area .et_pb_blurb_0 .et_pb_module_header,
.page-id-6977 #et-main-area .et_pb_blurb_0 .et_pb_module_header,
.page-id-6879 #et-main-area .et_pb_blurb_0 .et_pb_module_header,
.page-id-7612 #et-main-area .et_pb_blurb_0 .et_pb_module_header,
.page-id-7557 #et-main-area .et_pb_blurb_0 .et_pb_module_header,
.page-id-7808 #et-main-area .et_pb_blurb_0 .et_pb_module_header,
.page-id-8146 #et-main-area .et_pb_blurb_0 .et_pb_module_header,
.page-id-7880 #et-main-area .et_pb_blurb_0 .et_pb_module_header a,
.page-id-6977 #et-main-area .et_pb_blurb_0 .et_pb_module_header a,
.page-id-6879 #et-main-area .et_pb_blurb_0 .et_pb_module_header a,
.page-id-7612 #et-main-area .et_pb_blurb_0 .et_pb_module_header a,
.page-id-7557 #et-main-area .et_pb_blurb_0 .et_pb_module_header a,
.page-id-7808 #et-main-area .et_pb_blurb_0 .et_pb_module_header a,
.page-id-8146 #et-main-area .et_pb_blurb_0 .et_pb_module_header a {
  font-family:'Bebas Neue','Inter',sans-serif !important;
  font-size:2.2em !important;
  font-weight:400 !important;
  letter-spacing:.05em !important;
  line-height:1.05 !important;
  background:none !important;
  -webkit-background-clip:initial !important;
  background-clip:initial !important;
  -webkit-text-fill-color:#ffffff !important;
  color:#ffffff !important;
  text-decoration:none !important;
  text-shadow:0 2px 6px rgba(0,0,0,.35) !important;
  margin:.15em 0 .35em 0 !important;
  white-space:nowrap !important;
  max-width:100%;
}
@media (max-width:760px) {
  .page-id-7880 #et-main-area .et_pb_blurb_0 .et_pb_module_header,
  .page-id-6977 #et-main-area .et_pb_blurb_0 .et_pb_module_header,
  .page-id-6879 #et-main-area .et_pb_blurb_0 .et_pb_module_header,
  .page-id-7612 #et-main-area .et_pb_blurb_0 .et_pb_module_header,
  .page-id-7557 #et-main-area .et_pb_blurb_0 .et_pb_module_header,
  .page-id-7808 #et-main-area .et_pb_blurb_0 .et_pb_module_header,
  .page-id-8146 #et-main-area .et_pb_blurb_0 .et_pb_module_header { font-size:1.6em !important; white-space:normal !important; }
}

/* Subtitle / description under the title — uppercase tracking + soft cyan */
.page-id-7880 #et-main-area .et_pb_blurb_0 .et_pb_blurb_description,
.page-id-6977 #et-main-area .et_pb_blurb_0 .et_pb_blurb_description,
.page-id-6879 #et-main-area .et_pb_blurb_0 .et_pb_blurb_description,
.page-id-7612 #et-main-area .et_pb_blurb_0 .et_pb_blurb_description,
.page-id-7557 #et-main-area .et_pb_blurb_0 .et_pb_blurb_description,
.page-id-7808 #et-main-area .et_pb_blurb_0 .et_pb_blurb_description,
.page-id-8146 #et-main-area .et_pb_blurb_0 .et_pb_blurb_description {
  max-width:760px;
  margin:0 auto !important;
  font-size:1.02em !important;
  line-height:1.55 !important;
  color:#cfe1f4 !important;
}

/* Video thumbnails styled as poster cards (matches Live TV channel-tile aesthetic) */
.page-id-7880 #et-main-area .et_pb_video,
.page-id-6977 #et-main-area .et_pb_video,
.page-id-6879 #et-main-area .et_pb_video,
.page-id-7612 #et-main-area .et_pb_video,
.page-id-7557 #et-main-area .et_pb_video,
.page-id-7808 #et-main-area .et_pb_video,
.page-id-8146 #et-main-area .et_pb_video,
.page-id-7880 #et-main-area .et_pb_video_slider,
.page-id-6977 #et-main-area .et_pb_video_slider,
.page-id-6879 #et-main-area .et_pb_video_slider,
.page-id-7612 #et-main-area .et_pb_video_slider,
.page-id-7557 #et-main-area .et_pb_video_slider,
.page-id-7808 #et-main-area .et_pb_video_slider,
.page-id-8146 #et-main-area .et_pb_video_slider {
  border-radius:14px !important;
  overflow:hidden !important;
  box-shadow:0 12px 32px rgba(0,0,0,.4), 0 0 0 1px rgba(255,255,255,.06) inset !important;
  background:#0b3d66 !important;
  max-width:980px !important;
  margin:1em auto !important;
  position:relative;
}
.page-id-7880 #et-main-area .et_pb_video img,
.page-id-6977 #et-main-area .et_pb_video img,
.page-id-6879 #et-main-area .et_pb_video img,
.page-id-7612 #et-main-area .et_pb_video img,
.page-id-7557 #et-main-area .et_pb_video img,
.page-id-7808 #et-main-area .et_pb_video img,
.page-id-8146 #et-main-area .et_pb_video img,
.page-id-7880 #et-main-area .et_pb_video iframe,
.page-id-6977 #et-main-area .et_pb_video iframe,
.page-id-6879 #et-main-area .et_pb_video iframe,
.page-id-7612 #et-main-area .et_pb_video iframe,
.page-id-7557 #et-main-area .et_pb_video iframe,
.page-id-7808 #et-main-area .et_pb_video iframe,
.page-id-8146 #et-main-area .et_pb_video iframe,
.page-id-7880 #et-main-area .et_pb_video_slider .et_pb_slider,
.page-id-6977 #et-main-area .et_pb_video_slider .et_pb_slider,
.page-id-6879 #et-main-area .et_pb_video_slider .et_pb_slider,
.page-id-7612 #et-main-area .et_pb_video_slider .et_pb_slider,
.page-id-7557 #et-main-area .et_pb_video_slider .et_pb_slider,
.page-id-7808 #et-main-area .et_pb_video_slider .et_pb_slider,
.page-id-8146 #et-main-area .et_pb_video_slider .et_pb_slider {
  border-radius:14px !important;
  display:block !important;
  width:100% !important;
}

/* Force the parent module wrapper to honor max-width + auto centering */
.page-id-6879 #et-main-area .et_pb_video_slider_0,
.page-id-7880 #et-main-area .et_pb_video_slider_0,
.page-id-6977 #et-main-area .et_pb_video_slider_0,
.page-id-7612 #et-main-area .et_pb_video_slider_0,
.page-id-7557 #et-main-area .et_pb_video_slider_0,
.page-id-7808 #et-main-area .et_pb_video_slider_0,
.page-id-8146 #et-main-area .et_pb_video_slider_0 { max-width:980px !important; margin-left:auto !important; margin-right:auto !important; }

/* Video module overlay buttons — keep visible, brighten on hover */
.page-id-7880 #et-main-area .et_pb_video:hover,
.page-id-6977 #et-main-area .et_pb_video:hover,
.page-id-6879 #et-main-area .et_pb_video:hover,
.page-id-7612 #et-main-area .et_pb_video:hover,
.page-id-7557 #et-main-area .et_pb_video:hover,
.page-id-7808 #et-main-area .et_pb_video:hover,
.page-id-8146 #et-main-area .et_pb_video:hover {
  box-shadow:0 16px 40px rgba(0,0,0,.5), 0 0 0 1px rgba(0,174,239,.4) inset !important;
}

/* Icon above title — white with a subtle soft glow (no purple) */
.page-id-7880 #et-main-area .et_pb_blurb_0 .et-pb-icon,
.page-id-6977 #et-main-area .et_pb_blurb_0 .et-pb-icon,
.page-id-6879 #et-main-area .et_pb_blurb_0 .et-pb-icon,
.page-id-7612 #et-main-area .et_pb_blurb_0 .et-pb-icon,
.page-id-7557 #et-main-area .et_pb_blurb_0 .et-pb-icon,
.page-id-7808 #et-main-area .et_pb_blurb_0 .et-pb-icon,
.page-id-8146 #et-main-area .et_pb_blurb_0 .et-pb-icon {
  color:#ffffff !important;
  text-shadow:0 0 14px rgba(255,255,255,.25) !important;
}

/* Event Coverage — push the content area down ~20% of viewport so the title sits lower */
.page-id-7612 #et-main-area .et_pb_section_0 { padding-top:20vh !important; }

/* Footer keeps the deeper blue */
#main-footer { background:linear-gradient(180deg,#0b3d66 0%,#1565a3 100%) !important; color:#e8e8ea !important; border-top:2px solid #00aeef !important; }
#main-footer h1, #main-footer h2, #main-footer h3, #main-footer h4 { color:#fff !important; }
#main-footer p, #main-footer li, #main-footer span { color:#cfe2f4 !important; }
#main-footer a { color:#67d4ff !important; }
#main-footer a:hover { color:#a8e4ff !important; }
#footer-bottom { background:rgba(0,0,0,.35) !important; color:#a8c4e2 !important; }
#footer-bottom a { color:#67d4ff !important; }



/* 1. Kill the secondary cyan bar */
#top-header { display:none !important; }

/* 2. Kill fixed/sticky behavior (option also flipped via DB; defense-in-depth) */
.et_fixed_nav #main-header,
.et_fixed_nav.et_show_nav #main-header,
#main-header { position: static !important; background-color:#fff !important; box-shadow:none !important; padding:0 !important; border-bottom:2px solid #00aeef !important; }
body.et_fixed_nav.et_show_nav.et_secondary_nav_enabled #page-container,
body.et_secondary_nav_enabled #page-container,
body.et_fixed_nav #page-container { padding-top:0 !important; }
#main-header.et-fixed-header { padding:0 !important; background-color:#fff !important; box-shadow:none !important; }
#main-header.et-fixed-header #logo { max-height:64px !important; height:64px !important; }
#main-header.et-fixed-header .container.et_menu_container { padding:0 !important; }

/* 3. Skinnier header — minimal vertical padding around logo */
#main-header .container { width:95% !important; max-width:1500px !important; }
#main-header .container.et_menu_container {
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  padding:0 !important;
  position:relative !important;
}

/* 4. Logo — big, hugs top */
#main-header .logo_container { position:static !important; width:auto !important; height:auto !important; max-height:none !important; display:flex !important; align-items:center !important; float:none !important; flex:0 0 auto !important; }
#main-header #logo { max-height:64px !important; height:64px !important; width:auto !important; padding:0 !important; display:block !important; }

/* 5. Right side — pill + hamburger via injected .npms-actions */
#et-top-navigation { margin-left:auto !important; padding:0 !important; display:flex !important; align-items:center !important; float:none !important; flex:0 0 auto !important; width:auto !important; gap:14px !important; }

/* Hide the original Divi menu nav by default — it becomes the dropdown panel */
#top-menu-nav { display:none !important; }

/* 5b. DONATE pill — compact, centered text, sits right next to the logo */
.npms-donate-btn {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;       /* center DONATE text within pill */
  text-align:center !important;
  padding:5px 11px !important;             /* another ~20% reduction */
  margin-left:6px !important;              /* tight to the logo */
  background:linear-gradient(180deg,#00aeef 0%,#0277bd 100%) !important;
  color:#ffffff !important;
  border-radius:999px !important;
  font-family:'Inter','Helvetica',sans-serif !important;
  font-size:9px !important;                /* was 11, ~20% reduction */
  font-weight:800 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  border:1px solid rgba(255,255,255,.2) !important;
  box-shadow:0 0 10px rgba(0,174,239,.5), 0 2px 5px rgba(0,0,0,.18) !important;
  transition:transform .15s, box-shadow .15s !important;
  line-height:1 !important;
  white-space:nowrap !important;
  min-width:0 !important;
}
.npms-donate-btn:hover {
  transform:scale(1.05);
  color:#ffffff !important;
  box-shadow:0 0 20px rgba(0,174,239,.7), 0 3px 12px rgba(0,0,0,.25) !important;
}

/* 6. Live TV pill button */
.npms-actions { display:flex !important; align-items:center !important; gap:14px !important; }

.npms-live-pill-btn {
  display:inline-flex !important; align-items:center !important; gap:9px !important;
  padding:8px 16px !important;
  background:#ffffff !important;
  color:#e60010 !important;
  border-radius:999px !important;
  font-weight:800 !important; font-size:12px !important;
  letter-spacing:.14em !important; text-transform:uppercase !important;
  text-decoration:none !important;
  box-shadow:0 0 14px rgba(230,0,16,.35), 0 2px 8px rgba(0,0,0,.15) !important;
  transition:transform .15s, box-shadow .15s, background .15s !important;
  line-height:1 !important;
  border:2px solid #e60010 !important;
}
.npms-live-pill-btn:hover {
  transform:scale(1.05);
  color:#cc0008 !important;
  background:#fff4f4 !important;
  box-shadow:0 0 20px rgba(230,0,16,.55), 0 3px 12px rgba(0,0,0,.2) !important;
}
.npms-live-pill-btn .dot {
  display:inline-block;
  width:9px; height:9px;
  background:#e60010 !important;
  border-radius:50%;
  box-shadow:0 0 0 0 rgba(230,0,16,.85);
  animation:npmsLivePulse 1.45s infinite;
}
@keyframes npmsLivePulse {
  0%   { box-shadow:0 0 0 0   rgba(230,0,16,.85); }
  70%  { box-shadow:0 0 0 9px rgba(230,0,16,0); }
  100% { box-shadow:0 0 0 0   rgba(230,0,16,0); }
}

/* 7. Hamburger button — MENU label floats just above the first bar */
.npms-hb {
  background:transparent; border:0; cursor:pointer;
  padding:0;
  width:42px; height:42px;
  display:flex; flex-direction:column;
  justify-content:center; align-items:center;
  gap:6px;
  border-radius:6px;
  transition:background .15s;
  position:relative;
  transform:translateY(3px);   /* lower ever so slightly — no margin touched */
}
.npms-hb::before {
  content:"MENU";
  position:absolute;
  top:-3px;
  left:50%;
  transform:translateX(-50%);
  font-family:'Bebas Neue','Inter',sans-serif;
  font-size:10px;
  font-weight:400;
  letter-spacing:.12em;
  line-height:1;
  white-space:nowrap;
  pointer-events:none;
  color:#0b3d66;                 /* NPTV deep navy from logo */
  text-transform:uppercase;
}
.npms-hb:hover { background:rgba(0,0,0,.06); }
body.npms-menu-open .npms-hb::before { content:"CLOSE"; }
.npms-hb span {
  display:block; width:26px; height:2.5px;
  background:#0b3d66 !important;   /* NPTV deep navy from logo */
  border-radius:2px;
  transition:transform .25s, opacity .25s;
}
body.npms-menu-open .npms-hb span:nth-child(1) { transform:translateY(8.5px) rotate(45deg); }
body.npms-menu-open .npms-hb span:nth-child(2) { opacity:0; }
body.npms-menu-open .npms-hb span:nth-child(3) { transform:translateY(-8.5px) rotate(-45deg); }

/* 8. Dropdown panel — NPTV blue theme, tighter spacing */
body.npms-menu-open #top-menu-nav {
  display:block !important;
  position:absolute !important;
  top:calc(100% + 4px) !important;
  right:0 !important;
  background:linear-gradient(180deg,#0b3d66 0%,#1565a3 100%) !important;
  box-shadow:0 12px 32px rgba(0,0,0,.45) !important;
  border:1px solid rgba(0,174,239,.5) !important;
  border-radius:6px !important;
  min-width:200px !important;
  z-index:1000 !important;
  padding:4px 0 !important;
  float:none !important;
}
body.npms-menu-open #top-menu, body.npms-menu-open #top-menu.nav {
  flex-direction:column !important;
  align-items:stretch !important;
  padding:0 !important;
  display:flex !important;
}
body.npms-menu-open #top-menu > li {
  display:block !important;
  padding:0 !important; margin:0 !important;
  border-bottom:1px solid rgba(255,255,255,.07) !important;
}
body.npms-menu-open #top-menu > li:last-child { border-bottom:0 !important; }
body.npms-menu-open #top-menu > li > a {
  display:block !important;
  padding:7px 16px !important;
  font-family:'Bebas Neue','Inter',sans-serif !important;
  font-size:18px !important;
  font-weight:400 !important;
  letter-spacing:.04em !important;
  line-height:1 !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  border-bottom:0 !important;
  color:#f0f4f8 !important;
  background:transparent !important;
  -webkit-text-fill-color:initial !important;
  text-shadow:0 1px 2px rgba(0,0,0,.4);
}
body.npms-menu-open #top-menu > li > a:hover { background:rgba(0,174,239,.22) !important; color:#a8e4ff !important; }
body.npms-menu-open #top-menu > li.current-menu-item > a,
body.npms-menu-open #top-menu > li.current_page_item > a { color:#67d4ff !important; }

/* Submenu — stacked vertically inside dropdown, blue theme, tight spacing */
body.npms-menu-open #top-menu ul.sub-menu {
  position:static !important;
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  background:rgba(0,0,0,.18) !important;
  box-shadow:none !important;
  border:0 !important;
  padding:2px 0 !important;
  margin:0 !important;
  width:auto !important;
  min-width:0 !important;
  left:auto !important;
  transform:none !important;
}
body.npms-menu-open #top-menu ul.sub-menu > li {
  display:block !important;
  width:100% !important;
  float:none !important;
  padding:0 !important;
  margin:0 !important;
}
body.npms-menu-open #top-menu ul.sub-menu > li > a {
  display:block !important;
  padding:5px 14px 5px 28px !important;
  font-family:'Bebas Neue','Inter',sans-serif !important;
  font-size:15px !important;
  font-weight:400 !important;
  letter-spacing:.05em !important;
  line-height:1 !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  border:0 !important;
  white-space:normal !important;
  color:#b8d5ec !important;
  background:transparent !important;
  -webkit-text-fill-color:initial !important;
  text-shadow:0 1px 2px rgba(0,0,0,.35);
}
body.npms-menu-open #top-menu ul.sub-menu > li > a:hover { background:rgba(0,174,239,.22) !important; color:#a8e4ff !important; }

/* 9. KILL any inherited ::after content on menu links (the rogue "3") */
#top-menu > li > a::after,
#top-menu > li.menu-item-has-children > a::after { content:none !important; display:none !important; }

/* 10. Mobile — hide Divi's own mobile menu (we replace it with our hamburger) */
#et_mobile_nav_menu { display:none !important; }

@media (max-width:600px) {
  #main-header #logo { max-height:58px !important; height:58px !important; }
  .npms-live-pill-btn { padding:7px 14px !important; font-size:11px !important; }
  .npms-hb { width:38px; height:38px; }
}
