/* ---------- Flader (samme veksel som HYROX: navy / navy-2) ---------- */
body:has(.ifx-header) #et-main-area .et_pb_section:not(:has(.ifx-bleed)) {
  background-color: var(--ifx-navy) !important;
}
body:has(.ifx-header) #et-main-area .et_pb_section:not(:has(.ifx-bleed)):nth-of-type(even) {
  background-color: var(--ifx-navy-2) !important;
}
body:has(.ifx-header) #et-main-area .et_pb_section:not(:has(.ifx-bleed)) + .et_pb_section:not(:has(.ifx-bleed)) {
  border-top: 1px solid var(--ifx-line);
}

/* Første sektion (hero) + sektioner med video: samme toning som HYROX-hero */
body:has(.ifx-header) .et-l--post .et_pb_section:first-of-type:not(:has(.ifx-bleed)),
body:has(.ifx-header) #et-main-area .et_pb_section_video {
  position: relative;
  isolation: isolate;
}
body:has(.ifx-header) .et-l--post .et_pb_section:first-of-type:not(:has(.ifx-bleed))::before,
body:has(.ifx-header) #et-main-area .et_pb_section_video::before {
  content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background:
    linear-gradient(90deg, rgba(7, 21, 34, .88) 0%, rgba(7, 21, 34, .55) 45%, rgba(7, 21, 34, .15) 100%),
    linear-gradient(180deg, rgba(7, 21, 34, 0) 55%, var(--ifx-navy) 100%);
}
body:has(.ifx-header) .et-l--post .et_pb_section:first-of-type:not(:has(.ifx-bleed)) > .et_pb_row,
body:has(.ifx-header) #et-main-area .et_pb_section_video > .et_pb_row { position: relative; z-index: 1; }

/* Rækker/kolonner med egen (hvid) baggrund → mørke kort som på HYROX */
body:has(.ifx-header) #et-main-area .et_pb_row.et_pb_with_background:not(:has(.ifx)),
body:has(.ifx-header) #et-main-area .et_pb_column.et_pb_with_background:not(:has(.ifx)) {
  background-color: var(--ifx-navy-3) !important;
  border: 1px solid var(--ifx-line);
  border-radius: var(--ifx-radius);
}

/* ---------- Typografi (som .ifx-h1/.ifx-h2/.ifx-h3) ---------- */
body:has(.ifx-header) #et-main-area h1:not(.ifx *),
body:has(.ifx-header) #et-main-area h2:not(.ifx *),
body:has(.ifx-header) #et-main-area h3:not(.ifx *),
body:has(.ifx-header) #et-main-area h4:not(.ifx *) {
  color: #fff !important;
  font-family: var(--ifx-font) !important;
  font-weight: 800 !important;
  text-transform: uppercase;
  letter-spacing: -0.02em;
  line-height: 1.04 !important;
  padding-bottom: 14px;
}
body:has(.ifx-header) #et-main-area h1:not(.ifx *) { font-size: clamp(38px, 6vw, 70px) !important; letter-spacing: -0.035em; }
body:has(.ifx-header) #et-main-area h2:not(.ifx *) { font-size: clamp(30px, 4.2vw, 52px) !important; letter-spacing: -0.03em; }
body:has(.ifx-header) #et-main-area h3:not(.ifx *) { font-size: clamp(20px, 2vw, 24px) !important; }

/* Gul streg over H1/H2 – samme "eyebrow"-signatur som på HYROX */
body:has(.ifx-header) #et-main-area h1:not(.ifx *)::before,
body:has(.ifx-header) #et-main-area h2:not(.ifx *)::before {
  content: ""; display: block; width: 28px; height: 2px; margin: 0 0 20px;
  background: var(--ifx-yellow);
}
body:has(.ifx-header) #et-main-area .et_pb_text_align_center h1:not(.ifx *)::before,
body:has(.ifx-header) #et-main-area .et_pb_text_align_center h2:not(.ifx *)::before,
body:has(.ifx-header) #et-main-area h1[style*="center"]:not(.ifx *)::before,
body:has(.ifx-header) #et-main-area h2[style*="center"]:not(.ifx *)::before,
body:has(.ifx-header) #et-main-area [style*="text-align: center"] h2:not(.ifx *)::before { margin-inline: auto; }
body:has(.ifx-header) #et-main-area h1[style*="right"]:not(.ifx *)::before,
body:has(.ifx-header) #et-main-area h2[style*="right"]:not(.ifx *)::before { margin-left: auto; margin-right: 0; }
body:has(.ifx-header) #et-main-area .et_pb_text_align_right h1:not(.ifx *)::before,
body:has(.ifx-header) #et-main-area .et_pb_text_align_right h2:not(.ifx *)::before { margin-left: auto; margin-right: 0; }

body:has(.ifx-header) #et-main-area .et_pb_text,
body:has(.ifx-header) #et-main-area .et_pb_text p,
body:has(.ifx-header) #et-main-area .et_pb_text li,
body:has(.ifx-header) #et-main-area .et_pb_blurb_description,
body:has(.ifx-header) #et-main-area .et_pb_toggle_content {
  color: var(--ifx-text-2) !important;
  font-family: var(--ifx-font) !important;
  font-size: 17px;
  line-height: 1.7;
}
body:has(.ifx-header) #et-main-area strong:not(.ifx *),
body:has(.ifx-header) #et-main-area b:not(.ifx *) { color: #fff !important; }
body:has(.ifx-header) #et-main-area .et_pb_text a:not(.et_pb_button) {
  color: var(--ifx-yellow) !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}
body:has(.ifx-header) #et-main-area .et_pb_text li::marker { color: var(--ifx-yellow); }

/* ---------- Knapper (identiske med .ifx-btn--primary) ---------- */
body:has(.ifx-header) #page-container #et-main-area .et_pb_section .et_pb_button,
body:has(.ifx-header) #page-container #et-main-area .et_pb_section .et_pb_button:hover {
  display: inline-flex !important; align-items: center; justify-content: center;
  background: var(--ifx-yellow) !important;
  color: var(--ifx-navy) !important;
  border: 2px solid var(--ifx-yellow) !important;
  border-radius: 8px !important;
  font-family: var(--ifx-font) !important;
  font-size: 14px !important; font-weight: 800 !important;
  letter-spacing: .06em !important; text-transform: uppercase !important;
  line-height: 1 !important;
  padding: 16px 26px !important;
  min-height: 52px;
  transition: transform .2s, box-shadow .2s !important;
}
body:has(.ifx-header) #page-container #et-main-area .et_pb_section .et_pb_button:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 28px -8px var(--ifx-yellow);
}
body:has(.ifx-header) #page-container #et-main-area .et_pb_button::after,
body:has(.ifx-header) #page-container #et-main-area .et_pb_button::before { display: none !important; }

/* ---------- Billeder, kort og moduler ---------- */
body:has(.ifx-header) #et-main-area .et_pb_image .et_pb_image_wrap,
body:has(.ifx-header) #et-main-area .et_pb_image img,
body:has(.ifx-header) #et-main-area .et_pb_video,
body:has(.ifx-header) #et-main-area .et_pb_code_inner > video,
body:has(.ifx-header) #et-main-area .et_pb_map_container,
body:has(.ifx-header) #et-main-area iframe:not(.ifx *) {
  border-radius: var(--ifx-radius);
  overflow: hidden;
}
body:has(.ifx-header) #et-main-area .et_pb_blurb,
body:has(.ifx-header) #et-main-area .et_pb_team_member,
body:has(.ifx-header) #et-main-area .et_pb_pricing_table,
body:has(.ifx-header) #et-main-area .et_pb_toggle {
  background-color: var(--ifx-navy-3) !important;
  border: 1px solid var(--ifx-line) !important;
  border-radius: var(--ifx-radius) !important;
  padding: 24px !important;
}
body:has(.ifx-header) #et-main-area .et_pb_toggle_title,
body:has(.ifx-header) #et-main-area .et_pb_toggle_title::before { color: #fff !important; }
body:has(.ifx-header) #et-main-area .et-pb-icon,
body:has(.ifx-header) #et-main-area .et_pb_blurb .et-pb-icon { color: var(--ifx-yellow) !important; }
body:has(.ifx-header) #et-main-area .et_pb_divider::before { border-top-color: var(--ifx-line) !important; }

/* ---------- Google-anmeldelser (Trustindex) på mørk baggrund ---------- */
body:has(.ifx-header) #et-main-area .ti-widget .ti-header .ti-rating-text,
body:has(.ifx-header) #et-main-area .ti-widget .ti-header .ti-rating-text * { color: var(--ifx-text-2) !important; }
body:has(.ifx-header) #et-main-area .ti-widget .ti-header .ti-rating { color: #fff !important; }

/* ---------- Skjul gamle dubletter ----------*/
.ifx-hide { display: none !important; }
