/* ============================================
   COURAGE AGAINST CANCER — HEADER FIX CSS
   (Pre-existing sitewide header styling — unchanged)
   ============================================ */


/* --- 1. HIDE THE DUPLICATE SECOND NAV MENU --- */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container,
.wp-block-navigation__responsive-container:not(.is-menu-open) ~ .wp-block-navigation__responsive-container,
header .wp-block-navigation:last-of-type {
  display: none !important;
}

header .wp-block-navigation:first-of-type {
  display: flex !important;
}


/* --- 2. FIX HEADER LAYOUT — logo left, nav right --- */
.wp-site-blocks > header,
.site-header,
header.wp-block-template-part {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 12px 32px !important;
  flex-wrap: nowrap !important;
  background-color: #fff !important;
  border-bottom: 2px solid #8B1A1A !important;
  gap: 16px !important;
}


/* --- 3. LOGO — constrain size, no stretching --- */
.wp-block-site-logo,
.wp-block-site-logo a,
header .wp-block-site-logo {
  flex-shrink: 0 !important;
  width: 70px !important;
  height: auto !important;
  display: block !important;
}

.wp-block-site-logo img,
header .wp-block-site-logo img {
  width: 70px !important;
  height: auto !important;
  max-width: 70px !important;
  display: block !important;
}


/* --- 4. SITE TITLE & TAGLINE --- */
.wp-block-site-title,
.wp-block-site-title a {
  font-family: Montserrat, sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #8B1A1A !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

.wp-block-site-tagline {
  font-family: 'Open Sans', sans-serif !important;
  font-size: 11px !important;
  color: #555 !important;
  white-space: nowrap !important;
}


/* --- 5. NAVIGATION --- */
header .wp-block-navigation,
header nav {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-wrap: wrap !important;
  gap: 4px !important;
  flex: 1 !important;
}

header .wp-block-navigation .wp-block-navigation__container {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 2px 8px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

header .wp-block-navigation-item__content,
header .wp-block-navigation a {
  font-family: 'Open Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #8B1A1A !important;
  text-decoration: none !important;
  padding: 4px 8px !important;
  border-radius: 4px !important;
  white-space: nowrap !important;
  transition: background 0.2s, color 0.2s !important;
}

header .wp-block-navigation-item__content:hover,
header .wp-block-navigation a:hover {
  background-color: #8B1A1A !important;
  color: #fff !important;
}


/* --- 6. HIDE MOBILE MENU BUTTON ON DESKTOP --- */
@media (min-width: 769px) {
  .wp-block-navigation__responsive-container-open,
  button.wp-block-navigation__responsive-container-open {
    display: none !important;
  }
  .wp-block-navigation__responsive-container {
    display: none !important;
  }
  header .wp-block-navigation .wp-block-navigation__container {
    display: flex !important;
  }
}


/* --- 7. MOBILE — stack logo above nav, full-width hamburger menu --- */
@media (max-width: 768px) {
  .wp-site-blocks > header,
  .site-header,
  header.wp-block-template-part {
    flex-wrap: wrap !important;
    padding: 10px 16px !important;
    justify-content: space-between !important;
  }
  .wp-block-site-logo img {
    width: 52px !important;
    max-width: 52px !important;
  }
  .wp-block-site-title a {
    font-size: 14px !important;
  }
  .wp-block-site-tagline {
    display: none !important;
  }
  .wp-block-navigation__responsive-container-open {
    display: flex !important;
  }
  header .wp-block-navigation > .wp-block-navigation__container {
    display: none !important;
  }
}


/* --- 8. SEARCH ICON --- */
.wp-block-search__button,
.wp-block-navigation .wp-block-search {
  flex-shrink: 0 !important;
  margin-left: 8px !important;
}


/* ============================================================
   CAC WELLNESS BLUEPRINT — Additional CSS (clean rewrite)
   Scoped under .cac-wb-page — cannot affect the header above
   or any other page on the site.

   Fonts (Fraunces, Work Sans, JetBrains Mono) must be installed
   via Appearance → Fonts → Install Fonts. No @import — WP.com
   blocks it.
   ============================================================ */

/* ---------- Brand color reference ----------
   Navy      #14213D   — headings, dark backgrounds
   Navy soft #253A5E   — secondary dark background (benefit tiles)
   Cream     #F8F4EA   — page background
   Cream dim #F0EADA   — alt section background
   Paper     #FFFDF8   — card background
   Red       #E20F08   — primary accent / CTA buttons
   Red deep  #B60C06   — button hover
   Gold      #C89B3C   — "featured" accents, journey markers
   Sage      #6B8F71   — secondary accent, list bullets
   Ink       #24293A   — body text
   Ink soft  #5B6072   — secondary/muted text
   ------------------------------------------------------------ */

.cac-wb-page {
  background: #F8F4EA;
  color: #24293A;
  font-family: 'Work Sans', sans-serif !important;
  line-height: 1.55;
}

/* ---------- Headings ---------- */
.cac-wb-page h1,
.cac-wb-page h2,
.cac-wb-page h3,
.cac-wb-page h4,
.cac-wb-page .wp-block-heading {
  font-family: 'Fraunces', serif !important;
  color: #14213D !important;
  font-weight: 500 !important;
  letter-spacing: -0.01em;
}

/* ---------- "cac-eyebrow" — small label above a heading ---------- */
.cac-wb-page .cac-eyebrow {
  font-family: 'JetBrains Mono', monospace !important;
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #E20F08 !important;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}
.cac-wb-page .cac-eyebrow::before {
  content: "";
  width: 22px;
  height: 1px;
  background: #E20F08;
  display: inline-block;
}
.cac-wb-page .cac-eyebrow-gold {
  color: #C89B3C !important;
}
.cac-wb-page .cac-eyebrow-gold::before {
  background: #C89B3C;
}
.cac-wb-page .cac-eyebrow-center {
  justify-content: center;
}

/* ---------- "cac-mono-label" — small monospace tag text ---------- */
.cac-wb-page .cac-mono-label {
  font-family: 'JetBrains Mono', monospace !important;
  font-size: 10.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6B8F71 !important;
  display: block;
  margin-bottom: 10px;
}

/* ---------- Dark / colored section backgrounds ---------- */
.cac-wb-page .cac-bg-navy {
  background: #14213D !important;
  color: #F8F4EA;
  padding: 40px 34px !important;
  border-radius: 6px !important;
}
.cac-wb-page .cac-bg-navy h1,
.cac-wb-page .cac-bg-navy h2,
.cac-wb-page .cac-bg-navy h3,
.cac-wb-page .cac-bg-navy h4,
.cac-wb-page .cac-bg-navy .wp-block-heading { color: #ffffff !important; }
.cac-wb-page .cac-bg-navy p { color: rgba(248,244,234,0.72); }

.cac-wb-page .cac-bg-cream-dim {
  background: #F0EADA !important;
  padding: 80px 32px;
}

.cac-wb-page .cac-bg-red { background: #E20F08 !important; color: #ffffff; }
.cac-wb-page .cac-bg-red h1,
.cac-wb-page .cac-bg-red h2,
.cac-wb-page .cac-bg-red h3,
.cac-wb-page .cac-bg-red h4,
.cac-wb-page .cac-bg-red .wp-block-heading { color: #ffffff !important; }
.cac-wb-page .cac-bg-red p { color: rgba(255,255,255,0.85); }

/* ---------- Centered / width-constrained text block (Validation section) ---------- */
.cac-wb-page .cac-validate-inner {
  max-width: 760px;
  margin: 0 auto;
  text-align: center;
}

/* ---------- "Where you are" stage cards ---------- */
.cac-wb-page .cac-stage-card {
  background: #FFFDF8;
  border-radius: 6px;
  padding: 26px 22px;
  transition: border-color 0.15s ease, transform 0.15s ease;
}
.cac-wb-page .cac-stage-card:hover {
  border-color: #E20F08 !important;
  transform: translateY(-2px);
}

/* ---------- Tier / pricing cards ---------- */
.cac-wb-page .cac-tier-card {
  background: #FFFDF8;
  border: 1px solid rgba(20,33,61,0.14);
  border-radius: 6px;
  padding: 36px 30px;
  height: 100%;
}
.cac-wb-page .cac-tier-featured {
  border: 1px solid #C89B3C;
  box-shadow: 0 18px 40px rgba(20,33,61,0.08);
  position: relative;
}
.cac-wb-page .cac-tier-badge {
  display: inline-block;
  background: #C89B3C;
  color: #14213D !important;
  font-family: 'JetBrains Mono', monospace !important;
  font-size: 10.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 2px;
  margin-bottom: 16px;
}
.cac-wb-page .cac-tier-price {
  font-family: 'Fraunces', serif !important;
  font-size: 34px;
  color: #14213D !important;
  margin: 10px 0 18px;
}

/* ---------- "Blueprint unfolded" journey markers ---------- */
.cac-wb-page .cac-journey-marker {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 1.5px solid #14213D;
  color: #14213D !important;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'JetBrains Mono', monospace !important;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 18px;
}
.cac-wb-page .cac-journey-marker.is-gold { border-color: #C89B3C; color: #C89B3C !important; }
.cac-wb-page .cac-journey-marker.is-sage { border-color: #6B8F71; color: #6B8F71 !important; }
.cac-wb-page .cac-journey-marker.is-final { background: #E20F08; border-color: #E20F08; color: #ffffff !important; }

/* ---------- Benefit tiles (dark grid inside the navy benefits section) ---------- */
.cac-wb-page .cac-benefit-tile {
  background: #253A5E;
  padding: 32px 28px;
  border-radius: 4px;
  height: 100%;
}
.cac-wb-page .cac-benefit-tile h4 { color: #ffffff !important; font-size: 16.5px; }
.cac-wb-page .cac-benefit-tile p { color: rgba(248,244,234,0.65); font-size: 14px; }

/* ---------- Stat numbers (trust section) ---------- */
.cac-wb-page .cac-stat-number {
  font-family: 'Fraunces', serif !important;
  font-size: 38px;
  color: #E20F08 !important;
  line-height: 1.1;
}
.cac-wb-page .cac-stat-label {
  font-size: 13px;
  color: #5B6072;
  margin-top: 4px;
}

/* ---------- Buttons ---------- */
.cac-wb-page .wp-block-button__link {
  transition: transform 0.15s ease, box-shadow 0.15s ease;
  font-weight: 600 !important;
}
.cac-wb-page .wp-block-button__link:hover {
  transform: translateY(-1px);
}

/* ---------- FAQ (core Details block) ---------- */
.cac-wb-page .wp-block-details {
  border-top: 1px solid rgba(20,33,61,0.14);
  padding: 20px 0;
}
.cac-wb-page .wp-block-details summary {
  font-family: 'Fraunces', serif !important;
  font-size: 16.5px;
  font-weight: 500 !important;
  color: #14213D !important;
}

/* ---------- Hero mini-steps (numbered rows in the navy panel) ---------- */
.cac-wb-page .cac-mini-step {
  border-top: 1px solid rgba(248,244,234,0.14);
  padding: 14px 0;
}
.cac-wb-page .cac-mini-step:first-child {
  border-top: none;
  padding-top: 0;
}
.cac-wb-page .cac-step-num {
  font-family: 'JetBrains Mono', monospace !important;
  font-size: 12px;
  color: #C89B3C !important;
  margin: 0;
}
.cac-wb-page .cac-step-title {
  color: #ffffff !important;
  font-weight: 500 !important;
  margin: 0 0 2px;
}
.cac-wb-page .cac-step-desc {
  font-size: 13px;
  color: rgba(248,244,234,0.6);
  margin: 0;
}

/* ---------- Responsive safety net for 4-column rows on mobile ---------- */
@media (max-width: 782px) {
  .cac-wb-page .cac-tier-card { margin-bottom: 20px; }
}
.cac-wb-page .cac-bg-cream-dim {
  padding: 80px 32px;
}
.cac-wb-page .cac-validate-inner {
  max-width: 760px;
  margin: 0 auto;
  text-align: center;
}
.cac-wb-page .cac-stage-card {
  border: 1px solid rgba(20,33,61,0.14);
}
.cac-wb-page .cac-stage-card h4 {
  font-size: 16.5px !important;
  margin-bottom: 8px;
}
.cac-wb-page .cac-stage-card p {
  font-size: 13.5px;
  color: #5B6072;
  margin: 0;
}
.cac-wb-page .cac-benefit-tile {
  border: 1px solid rgba(248,244,234,0.14);
}
.cac-wb-page .cac-footer {
  border-top: 1px solid rgba(248,244,234,0.12);
}
/* ============================================
   NAV LINK COLOR OVERRIDE — header + footer
   ============================================ */
header .wp-block-navigation-item__content,
header .wp-block-navigation a,
footer .wp-block-navigation-item__content,
footer .wp-block-navigation a {
  color: #FDF6E3 !important;
}

header .wp-block-navigation-item__content:hover,
header .wp-block-navigation a:hover,
footer .wp-block-navigation-item__content:hover,
footer .wp-block-navigation a:hover {
  background-color: #FDF6E3 !important;
  color: #2B2B2B !important;
}