/* ═══════════════════════════════════════════════════════════════════════════
   OMM RESTYLE — staging.okcmarathon.com repaint
   ---------------------------------------------------------------------------
   Design source : Cloudways staging (wordpress-1172004-6419199.cloudwaysapps.com)
                   as captured in the "Updated" (v3) token set, 2026-06.
   Target theme  : okc-memorial child theme v2.0.150 (Understrap parent).
   Load order    : MUST be enqueued AFTER child-theme.min.css
                   (handle: child-understrap-styles).
   Rollback      : remove this file + its enqueue line. No original files
                   are modified by this restyle.
   Fonts         : Tungsten Narrow self-hosted from ./fonts/ (relative to
                   this file). Roboto + Montserrat from Google Fonts.
   ═══════════════════════════════════════════════════════════════════════════ */

@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&family=Montserrat:wght@400;700&display=swap");

@font-face {
  font-family: "Tungsten Narrow";
  src: url("fonts/TungstenNarrow-Book.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Tungsten Narrow";
  src: url("fonts/TungstenNarrow-Semibold.otf") format("opentype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Tungsten Narrow";
  src: url("fonts/TungstenNarrow-Bold.otf") format("opentype");
  font-weight: 700 900;
  font-style: normal;
  font-display: swap;
}

/* ── Design tokens ──────────────────────────────────────────────────────── */
:root {
  --omm-green:     #00632E;   /* Course Green — primary */
  --omm-secondary: #95C52D;   /* Lime green — secondary */
  --omm-accent:    #F4FE42;   /* Accent lime-yellow — buttons, highlights */
  --omm-cream:     #FEFBE5;   /* Cream/Stone — nav, footer, alt sections */
  --omm-ink:       #343434;   /* Body text */
  --omm-gold:      #D3B574;   /* Nav hover/active */
  --omm-navy:      #16163F;   /* Dropdown text */
  --omm-burgundy:  #692136;
  --omm-blue:      #0C4386;
  --omm-gray:      #838787;
  --omm-orange:    #EE4A1F;
  --omm-amber:     #E89F1C;
  --omm-white:     #FFFFFF;
  --omm-overlay:   rgba(0, 99, 46, 0.48);

  --omm-display: "Tungsten Narrow", Impact, "Arial Narrow", sans-serif;
  --omm-body:    Roboto, Arial, sans-serif;
  --omm-ui:      Montserrat, Arial, sans-serif;
  --omm-radius:  0px;
}

/* ── Body & base ────────────────────────────────────────────────────────── */
body {
  background: var(--omm-white) !important;
  color: var(--omm-ink) !important;
  font-family: var(--omm-body) !important;
  font-size: clamp(16px, 15.5px + 0.2vw, 18px) !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
}

body a { color: var(--omm-green); }
body a:hover,
body a:focus { color: var(--omm-gold); }
body p a { text-decoration: underline !important; }
body a.external-link { border-bottom-color: var(--omm-green) !important; }
body a.external-link:hover { border-bottom-color: var(--omm-gold) !important; }

/* ── Headings ───────────────────────────────────────────────────────────── */
body h1, body h2, body h3, body h4, body h5, body h6,
body .h1, body .h2, body .h3, body .h4, body .h5, body .h6 {
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  line-height: 1 !important;
  color: var(--omm-green) !important;
}
body h1 { font-size: 53.33px !important; line-height: 0.98 !important; }
body h2 { font-size: 42.67px !important; line-height: 1.02 !important; }
body h3 { font-size: 33.78px !important; line-height: 1.1 !important; }
body h4 { font-size: 28.45px !important; line-height: 1.15 !important; }
body h5 { font-size: 22px !important; line-height: 1.2 !important; }
body h6 { font-size: 19.2px !important; line-height: 1.25 !important; }

/* ── Global shape: kill the 5px radius ──────────────────────────────────── */
body button, body input, body optgroup, body select, body textarea, body a.btn,
body .btn, body .card, body .dropdown-menu {
  border-radius: var(--omm-radius) !important;
}

/* ── Top utility bar ────────────────────────────────────────────────────── */
.header-top-menu-wrapper {
  background: var(--omm-green) !important;
  background-color: var(--omm-green) !important;
}
.header-top-menu-wrapper a,
.header-top-menu-wrapper .nav-link {
  color: var(--omm-cream) !important;
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  font-size: 20px !important;
  text-transform: uppercase !important;
  letter-spacing: normal !important;
}
.header-top-menu-wrapper a:hover,
.header-top-menu-wrapper a:focus,
.header-top-menu-wrapper .current-menu-item > a {
  color: var(--omm-accent) !important;
}

/* Social icons (top-left) — neon green; beats the widget's inline colors */
.header-top-menu-wrapper .zoom-social_icons-list-span,
.header-top-menu-wrapper .social-icon,
.header-top-menu-wrapper .zoom-social_icons-list__link,
.header-top-menu-wrapper .zoom-social_icons-list__link:hover .zoom-social_icons-list-span {
  color: var(--omm-accent) !important;
}

/* ── Main navigation bar ────────────────────────────────────────────────── */
.header,
nav.header-navbar {
  background: var(--omm-cream) !important;
  background-color: var(--omm-cream) !important;
  border-bottom: none !important;
}
nav.header-navbar .nav-link,
nav.header-navbar .navbar-nav > li > a {
  color: var(--omm-green) !important;
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  font-size: 30px !important;
  text-transform: uppercase !important;
  letter-spacing: normal !important;
}
/* Hover / selected / open-dropdown / ancestor states — selectors mirror the
   theme's own gold rules (child-theme.css ~12352-12389) so we match their
   specificity and win on load order. */
nav.header-navbar .nav-link:hover,
nav.header-navbar .navbar-nav > li > a:hover,
nav.navbar .navbar-nav .menu-item.current-menu-item > .nav-link,
nav.navbar .navbar-nav .menu-item.current-menu-parent > .nav-link,
nav.navbar .navbar-nav .menu-item.current-page-ancestor > .nav-link,
nav.navbar .navbar-nav .menu-item.current-experience-ancestor > .nav-link,
nav.navbar .navbar-nav .active > .nav-link,
nav.navbar .navbar-nav > .menu-item.active > .nav-link,
nav.navbar .navbar-nav > .menu-item > .nav-link:hover,
nav.navbar .navbar-nav > .menu-item.dropdown:hover > .nav-link,
nav.navbar .navbar-nav > .menu-item.dropdown.show > .nav-link {
  color: var(--omm-accent) !important;
}

/* Section underline: persistent 5px indicator under the CURRENT section.
   The theme only underlined on hover (transparent when active) — we keep a
   transparent border on all items so nothing shifts, and paint it for the
   current page, its section parent/ancestors, and on hover. */
nav.navbar .navbar-nav > .menu-item:not(.header-menu-register) {
  border-bottom: solid 5px transparent !important;
}
nav.navbar .navbar-nav > .menu-item.active,
nav.navbar .navbar-nav > .menu-item.current-menu-item,
nav.navbar .navbar-nav > .menu-item.current-menu-parent,
nav.navbar .navbar-nav > .menu-item.current-page-ancestor,
nav.navbar .navbar-nav > .menu-item.current-page-parent,
nav.navbar .navbar-nav > .menu-item.current-experience-ancestor {
  border-bottom: solid 5px var(--omm-green) !important;
}
nav.navbar .navbar-nav > .menu-item:not(.header-menu-register):hover,
nav.navbar .navbar-nav > .menu-item.dropdown:hover {
  border-bottom: solid 5px var(--omm-green) !important;
}

/* Register CTA in the nav becomes the primary (lime) button */
.header-menu-register > a,
.header-menu-register .nav-link {
  background: var(--omm-accent) !important;
  color: var(--omm-green) !important;
  border-radius: var(--omm-radius) !important;
}
.header-menu-register > a:hover,
.header-menu-register .nav-link:hover {
  background: var(--omm-green) !important;
  color: var(--omm-cream) !important;
}

/* Dropdown / submenu */
body .dropdown-menu,
body .sub-menu,
body .navbar-submenu {
  background: var(--omm-white) !important;
}
body .dropdown-menu a,
body .sub-menu a,
body .dropdown-menu .nav-link,
body .navbar-submenu a,
body .dropdown-menu .nav-title {
  color: var(--omm-navy) !important;
  font-family: var(--omm-ui) !important;
  font-weight: 400 !important;
  font-size: 16px !important;
  text-transform: none !important;
}

/* Mobile header + menu */
#mobile_header_container {
  background: var(--omm-cream) !important;
}
#mobile_header_container a { color: var(--omm-green) !important; }
#mobile_header_container #header {
  background-color: var(--omm-green) !important;
}
#mobile_header_container #header #header_content .toggle {
  background: var(--omm-accent) !important;
  color: var(--omm-green) !important;
}
#mobile_menu,
#mobile_menu .sub-nav,
body .sub-nav {
  background: var(--omm-green) !important;
  background-color: var(--omm-green) !important;
}
#mobile_menu a,
#mobile_menu .sub-nav a,
body .sub-nav a {
  color: var(--omm-cream) !important;
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}
#mobile_menu a:hover,
body .sub-nav a:hover { color: var(--omm-accent) !important; }

/* ── Header search ──────────────────────────────────────────────────────── */
/* Un-paint the collapsed search box (generic input/button rules below would
   otherwise give it a white background and lime fill). */
#sb-search .sb-search-input,
#sb-search-mobile .sb-search-input,
body .sb-search .sb-search-input,
body input.sb-search-input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]) {
  background: transparent !important;
  border: none !important;
  color: var(--omm-white) !important;
}
body .sb-search-input::placeholder { color: var(--omm-cream) !important; }
#sb-search .sb-search-submit,
#sb-search-mobile .sb-search-submit,
body .sb-search input.sb-search-submit[type="submit"] {
  background: transparent !important;
  padding: 0 !important;
  opacity: 0 !important;
  font-size: 0 !important;
}
/* Icon: white by default, neon green on rollover */
body .sb-icon-search {
  color: var(--omm-white) !important;
  background: transparent !important;
  padding: 0 !important;
}
#header-searchform:hover .sb-icon-search,
body .sb-icon-search:hover,
body .sb-search-open .sb-icon-search {
  color: var(--omm-accent) !important;
  background: transparent !important;
}

/* ── Buttons ────────────────────────────────────────────────────────────── */
body button:not(.navbar-toggler):not(.close):not(.accordion-toggle):not(.tabs--component-toggle),
body a.btn,
body .btn,
body input[type="submit"],
body .dark-blue-button,
body .yellow-button,
body .blue-button,
body .cyan-button,
body .white-button,
body .grid-list--component--button,
body .list-more-button,
body .load-more-social-feed-button,
body .gform_wrapper .gform_button.button,
body .gform_wrapper .gform_next_button.button,
body .gform_wrapper .gform_previous_button.button,
body .ctct-form .ctct-submit {
  background: var(--omm-accent) !important;
  background-color: var(--omm-accent) !important;
  color: var(--omm-green) !important;
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  font-size: 25.6px !important;
  text-transform: uppercase !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  border: none !important;
  border-radius: var(--omm-radius) !important;
  padding: 16px 32px !important;
  box-shadow: none !important;
  text-decoration: none !important;
}
body button:not(.navbar-toggler):not(.close):not(.accordion-toggle):not(.tabs--component-toggle):hover,
body a.btn:hover,
body .btn:hover,
body input[type="submit"]:hover,
body .dark-blue-button:hover,
body .yellow-button:hover,
body .blue-button:hover,
body .cyan-button:hover,
body .white-button:hover,
body .grid-list--component--button:hover,
body .list-more-button:hover,
body .load-more-social-feed-button:hover,
body .gform_wrapper .gform_button.button:hover,
body .ctct-form .ctct-submit:hover {
  background: var(--omm-green) !important;
  background-color: var(--omm-green) !important;
  color: var(--omm-cream) !important;
}

/* ── Hero / marquee ─────────────────────────────────────────────────────── */
/* body prefix: the marquee template emits a per-page inline <style> with
   !important — we need strictly higher specificity to beat it. */
body .marquee--component .carousel-overlay,
body .marquee--component .marquee-overlay,
body .marquee--component .gradient-overlay,
body .marquee--component [class*="overlay"] {
  background: var(--omm-overlay) !important;
  background-color: var(--omm-overlay) !important;
  background-image: none !important;
}
.marquee--component h1,
.marquee--component h2,
.marquee--component .marquee-title,
.marquee--component .carousel-caption h1,
.marquee--component .carousel-caption h2 {
  color: var(--omm-white) !important;
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  line-height: 0.98 !important;
}
.marquee--component p,
.marquee--component .carousel-caption {
  color: var(--omm-cream) !important;
}
.marquee-breadcrumb,
.marquee-breadcrumb a { color: var(--omm-cream) !important; }

/* ── Hero marquee (homepage, two-card) ──────────────────────────────────── */
/* 1) Background media is DESATURATED, not green-tinted. Applies to the
      image div and any future <video> replacement alike. */
body .marquee--component.hero-marquee .card-img.marquee-image,
body .marquee--component .card-img.marquee-image,
body .marquee--component.hero-marquee .carousel-background,
body .marquee--component.hero-marquee video,
body .marquee--component.video-marquee video {
  filter: grayscale(1) !important;
}
/* No green overlay on the hero media (higher specificity than the generic
   marquee overlay rule above, so this wins for the hero variant) */
body .marquee--component.hero-marquee .gradient-overlay,
body .marquee--component.hero-marquee .h-100 > .gradient-overlay {
  background: transparent !important;
  background-color: transparent !important;
}

/* 2) Marquee cards: translucent Course Green (#00632E7A) — replaces the
      purple confetti texture. Transparency lets the desaturated image
      show through, producing the green-tinted card look. */
body .marquee--component.hero-marquee .card {
  background: rgba(0, 99, 46, 0.478) !important;   /* #00632E7A */
  background-image: none !important;
  border: none !important;
  border-radius: 0 !important;
}
/* Card imagery inside the cards also desaturated */
body .marquee--component.hero-marquee .card .card-img,
body .marquee--component.hero-marquee .card .card-img img {
  filter: grayscale(1) !important;
}
/* Card text: white eyebrow + white Tungsten title, per the example */
body .marquee--component.hero-marquee .card .card-label,
body .marquee--component.hero-marquee .card .card-label a {
  color: var(--omm-white) !important;
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  font-size: 16px !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
}
body .marquee--component.hero-marquee .card .card-title {
  color: var(--omm-white) !important;
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  font-size: 40px !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-shadow: none !important;
}
body .marquee--component.hero-marquee .card .card-subheading,
body .marquee--component.hero-marquee .card .card-text,
body .marquee--component.hero-marquee .card p {
  color: var(--omm-cream) !important;
}
/* Card footer strip inherits the card translucency (no separate bg) */
body .marquee--component.hero-marquee .card .card-footer {
  background: transparent !important;
  border: none !important;
}

/* ── Ribbons (full-width CTA bands) ─────────────────────────────────────── */
.ribbon--component {
  background: var(--omm-green) !important;
  background-color: var(--omm-green) !important;
  color: var(--omm-cream) !important;
}
.ribbon--component h1, .ribbon--component h2, .ribbon--component h3,
.ribbon--component h4, .ribbon--component h5 {
  color: var(--omm-cream) !important;
}
.ribbon--component p, .ribbon--component li {
  color: var(--omm-cream) !important;
}
.ribbon--component a:not(.btn):not([class*="-button"]) { color: var(--omm-accent) !important; }

/* Ribbon layouts that place a white card ON the green band: content inside
   the card keeps normal light-background colors. */
body .ribbon--component .card p,
body .ribbon--component .card li {
  color: var(--omm-ink) !important;
}
body .ribbon--component .card h1, body .ribbon--component .card h2,
body .ribbon--component .card h3, body .ribbon--component .card h4,
body .ribbon--component .card h5 {
  color: var(--omm-green) !important;
}
body .ribbon--component .card a:not(.btn):not([class*="-button"]) {
  color: var(--omm-green) !important;
}

/* ── Cards ──────────────────────────────────────────────────────────────── */
body .card {
  background: var(--omm-white) !important;
  border: none !important;                /* no stroke around card boxes */
  box-shadow: none !important;
  border-radius: var(--omm-radius) !important;
}
body .card .card-title,
body .card .card-header {
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  font-size: 30px !important;
  line-height: 1.05 !important;
  text-transform: uppercase !important;
  color: var(--omm-green) !important;
}
/* Rollover: title goes lime green */
body .card:hover .card-title,
body .card a:hover .card-title,
body a:hover > .card .card-title {
  color: var(--omm-secondary) !important;
}
body .card-footer {
  background: transparent !important;
  border: none !important;
}

/* ── Forms ──────────────────────────────────────────────────────────────── */
body input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
body select,
body textarea {
  background: var(--omm-white) !important;
  color: var(--omm-ink) !important;
  border: 2px solid rgba(0, 99, 46, .25) !important;
  border-radius: var(--omm-radius) !important;
  font-family: var(--omm-body) !important;
}
body input:focus, body select:focus, body textarea:focus {
  border-color: var(--omm-green) !important;
  outline: none !important;
  box-shadow: none !important;
}
body label,
body .gfield_label {
  color: var(--omm-green) !important;
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  font-size: 22.4px !important;
  text-transform: uppercase !important;
  letter-spacing: 0 !important;
}

/* ── Tables ─────────────────────────────────────────────────────────────── */
body th {
  background: var(--omm-cream) !important;
  color: var(--omm-green) !important;
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .5px !important;
}
body td { border-color: rgba(0, 99, 46, .18) !important; }

/* ── Accordion ──────────────────────────────────────────────────────────── */
/* Section title above the accordion */
.accordion-component .accordion-title {
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  color: var(--omm-green) !important;
  text-align: left !important;
  margin-bottom: 24px !important;
}

/* Item title (both states get Tungsten treatment; color set per state) */
.accordion-component .card-header .accordion_title {
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  font-size: 28px !important;
  text-transform: uppercase !important;
  letter-spacing: .5px !important;
  display: flex !important;
  align-items: center !important;
}
/* Icon box: fixed size + flex centering so +/− sit dead-center on the
   label's horizontal axis in both states */
.accordion-component .card-header .accordion_title .fa {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  line-height: 1 !important;
}

/* No borders/outlines on the accordion containers */
.accordion-component .card,
.accordion-component .card-header,
.accordion-component .card-block {
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
}
.accordion-component .card { background: transparent !important; }

/* CLOSED state: dark green bar, white title, neon "+" */
.accordion-component a[data-toggle="collapse"].collapsed .card-header {
  background-color: var(--omm-green) !important;
  border-radius: 8px !important;
}
.accordion-component a[data-toggle="collapse"].collapsed .accordion_title,
.accordion-component a[data-toggle="collapse"].collapsed .accordion_title:hover {
  color: var(--omm-white) !important;
}
.accordion-component a[data-toggle="collapse"].collapsed .fa:before {
  content: "\2b" !important;           /* + */
  color: var(--omm-accent) !important;
  font-size: 28px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}

/* OPEN state: neon bar, green title, green "−" */
.accordion-component a[data-toggle="collapse"]:not(.collapsed) .card-header {
  background-color: var(--omm-accent) !important;
  border-radius: 8px 8px 0 0 !important;
}
.accordion-component a[data-toggle="collapse"]:not(.collapsed) .accordion_title,
.accordion-component a[data-toggle="collapse"]:not(.collapsed) .accordion_title:hover {
  color: var(--omm-green) !important;
}
.accordion-component a[data-toggle="collapse"]:not(.collapsed) .fa:before {
  content: "\2212" !important;         /* − (minus sign) */
  color: var(--omm-green) !important;
  font-size: 28px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}

/* Content panel: white, joins the open bar */
.accordion-component .card-block {
  background-color: var(--omm-white) !important;
  border-radius: 0 0 8px 8px !important;
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}

/* Spacing between items */
.accordion-component a[data-toggle="collapse"],
.accordion-component a[data-toggle="collapse"].collapsed { margin-bottom: 12px !important; }

/* The theme shrinks headings inside accordion content — restore the standard
   scale so they match the rest of the page (per the approved design) */
.accordion-component .card-block h1 { font-size: 53.33px !important; }
.accordion-component .card-block h2 { font-size: 42.67px !important; }
.accordion-component .card-block h3 { font-size: 33.78px !important; }
.accordion-component .card-block h4 { font-size: 28.45px !important; }
.accordion-component .card-block h5 { font-size: 22px !important; }
.accordion-component .card-block h6 { font-size: 19.2px !important; }

/* ── Blockquote ─────────────────────────────────────────────────────────── */
body blockquote,
.blockquote--component .blockquote-quote {
  border-left: 5px solid var(--omm-accent) !important;
  color: var(--omm-green) !important;
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  font-size: 28px !important;
  text-transform: uppercase !important;
  line-height: 1.1 !important;
}
.blockquote-attribution,
.blockquote-footer {
  color: var(--omm-ink) !important;
  font-family: var(--omm-body) !important;
  font-size: 16px !important;
  text-transform: none !important;
}

/* ── Page navigation component ──────────────────────────────────────────── */
.page-navigation-link,
.page-navigation--component a,
.page-navigation-component-title {
  color: var(--omm-green) !important;
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}
.page-navigation-link:hover { color: var(--omm-gold) !important; }

/* ── Tabs component ─────────────────────────────────────────────────────── */
.tabs--component-toggle {
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  color: var(--omm-green) !important;
}

/* ── Countdown ──────────────────────────────────────────────────────────── */
/* Ported from component-inventory-v2.html (omm-v2-component-overrides) */
.wpcdt-timer-circle .time_circles > div,
.countdown-row .time_circles > div {
  text-align: center !important;
}
/* Unit labels (DAYS / HOURS / MINUTES / SECONDS) */
.wpcdt-timer-circle .time_circles > div > h4,
.countdown-row .time_circles > div > h4 {
  color: var(--omm-green) !important;
  font-family: var(--omm-body) !important;
  font-size: clamp(.825rem, 1.05vw, 1.25rem) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: 1px !important;
  margin: 0 0 .22em !important;
  padding: 0 !important;
  text-align: center !important;
  text-transform: uppercase !important;
}
/* Numbers */
.wpcdt-timer-circle .time_circles > div > span,
.countdown-row .time_circles > div > span {
  color: var(--omm-white) !important;
  display: block !important;
  font-family: var(--omm-display) !important;
  font-size: clamp(3.4rem, 5.6vw, 4.35rem) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  margin-top: .05em !important;
  text-align: center !important;
  width: 100% !important;
}
.wpcdt-wrap .wpcdt-timer-js { color: var(--omm-ink) !important; }

/* Countdown text column (left side): date chip + headline colors */
.countdown-row .countdown-text-column .date {
  background-color: var(--omm-accent) !important;
  color: var(--omm-green) !important;
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  font-size: 20px !important;
  text-transform: uppercase !important;
}
.countdown-row .countdown-text-column h3,
.countdown-row .countdown-text-column h3 .dark-blue {
  color: var(--omm-green) !important;
  font-size: 30px !important;
}

/* ── Experience / section-row components (div-based titles) ─────────────── */
body .experience--component .content .content-title {
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  color: var(--omm-green) !important;
  line-height: 1.02 !important;
}
body .experience--component .content .content-label,
body .card-label,
body .card .card-label {
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  font-size: 20px !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  color: var(--omm-accent) !important;   /* neon green */
}

/* ── Logos component ────────────────────────────────────────────────────── */
.logos--component-title {
  color: var(--omm-green) !important;
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

/* ── Special alert bar ──────────────────────────────────────────────────── */
.special-alert {
  background: var(--omm-amber) !important;
  color: var(--omm-ink) !important;
}

/* ── Footer ─────────────────────────────────────────────────────────────── */
#wrapper-footer {
  background: var(--omm-cream) !important;
  background-color: var(--omm-cream) !important;
  background-image: none !important;
  color: var(--omm-green) !important;
  border-top: 8px solid var(--omm-accent) !important;
}
#wrapper-footer .background-graphic,
#wrapper-footer [class*="grid_wrapper"],
#wrapper-footer [style*="background-image"] {
  background-image: none !important;
}
#wrapper-footer a {
  color: var(--omm-green) !important;
  font-family: var(--omm-display) !important;
  font-weight: 900 !important;
  font-size: 19.2px !important;
  text-transform: uppercase !important;
  letter-spacing: normal !important;
}
#wrapper-footer a:hover { color: var(--omm-gold) !important; }
#wrapper-footer p,
#wrapper-footer li,
#wrapper-footer .textwidget {
  color: var(--omm-green) !important;
  font-family: var(--omm-body) !important;
  font-size: 16px !important;
}
#wrapper-footer h1, #wrapper-footer h2, #wrapper-footer h3,
#wrapper-footer h4, #wrapper-footer h5, #wrapper-footer .widget-title {
  color: var(--omm-green) !important;
}

/* Footer layout: 3 uniform columns (logo | quick links | sign-up),
   whole block centered */
#wrapper-footer .footer-container > .row > .address-menus {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}
#wrapper-footer .address-menus > .row {
  display: flex !important;
  justify-content: center !important;
  align-items: flex-start !important;
}
#wrapper-footer .address-menus > .row > .footer-logo-wrapper,
#wrapper-footer .address-menus > .row > .col-md-3,
#wrapper-footer .address-menus > .row > .col-md-5 {
  flex: 0 0 33.333% !important;
  max-width: 33.333% !important;
  text-align: left !important;
}
#wrapper-footer .footer-logo-wrapper img { margin: 0 !important; }

/* Sign-up button: fixed 250px, 25.6px label, white text on rollover */
#wrapper-footer .yellow-button,
#wrapper-footer a.yellow-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 250px !important;
  max-width: 100% !important;
  font-size: 25.6px !important;
  text-align: center !important;
}
#wrapper-footer .yellow-button:hover,
#wrapper-footer a.yellow-button:hover {
  background: var(--omm-green) !important;
  color: var(--omm-white) !important;
}
#wrapper-footer .footer-menus-wrapper { display: none !important; }
#wrapper-footer ul { list-style: none !important; padding-left: 0 !important; }

/* Footer copyright bar */
.footer-copyright-wrapper,
.footer-copyright-wrapper .footer-copyright-container,
.footer-copyright-wrapper .copy-right-row,
.footer-copyright-wrapper .copyright-text,
.footer-copyright-wrapper .footer-text {
  background: var(--omm-accent) !important;
  background-color: var(--omm-accent) !important;
  background-image: none !important;   /* replaces copyright-background.png */
  color: var(--omm-green) !important;
}
.footer-copyright-wrapper a,
.footer-copyright-wrapper .proceeds-text,
.footer-copyright-wrapper .footer-text,
.footer-copyright-wrapper .zoom-social_icons-list-span {
  color: var(--omm-green) !important;
}

/* Copyright bar layout: social icons grouped dead-center, proceeds right */
.footer-copyright-wrapper .copy-right-row {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  min-height: 64px !important;
  padding: 0 40px !important;
  margin: 0 !important;
}
.footer-copyright-wrapper .copyright-text { display: none !important; }
.footer-copyright-wrapper .footer-text {
  flex: 1 1 100% !important;
  max-width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  padding: 0 !important;
}
.footer-copyright-wrapper .zoom-social-icons-list {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
}
.footer-copyright-wrapper .zoom-social_icons-list__item,
.footer-copyright-wrapper .zoom-social_icons-list__link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  min-height: 0 !important;
  line-height: 1 !important;
}
.footer-copyright-wrapper .proceeds-text {
  margin: 0 !important;
  text-align: right !important;
  font-weight: 700 !important;
}

/* ── Sign-up / newsletter ribbon ────────────────────────────────────────── */
.ctct-form-wrapper,
body .ctct-form {
  border-color: var(--omm-cream) !important;
  background-color: var(--omm-cream) !important;
}
