/* Sprint 1 UI normalization: tokens + hierarchy + hero/nav/cta consistency */

:root {
  --codex-primary-hover: #c81c1c;
  --wp--preset--color--basecolor: #111111;
  --wp--preset--color--contrastcolor: #ffffff;
  --wp--preset--color--primary: #E02121;
  --wp--preset--color--accent: #FE5B24;
  --wp--preset--color--textonprimary: #ffffff;
}

body,
.gspb_heading,
.gspb_text,
.gspb_button_wrapper .gspb-buttonbox,
.wp-block-button__link,
.wp-block-navigation-item__content {
  font-family: var(--wp--preset--font-family--primary) !important;
}

/* Header navigation readability */
.wp-block-navigation__container > .wp-block-navigation-item > a {
  font-size: 16px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1.3 !important;
  padding: 10px 0 !important;
}

/* Header phone CTA */
#gspb_button-id-gsbp-06d6fd1 > .gspb-buttonbox {
  background-color: var(--wp--preset--color--primary) !important;
  color: #fff !important;
  border-color: var(--wp--preset--color--primary) !important;
  border-radius: 50px !important;
  box-shadow: none !important;
  padding: 12px 18px !important;
}

#gspb_button-id-gsbp-06d6fd1 > .gspb-buttonbox:hover {
  background-color: var(--codex-primary-hover) !important;
  transform: none !important;
}

/* Hero section rhythm */
#gspb_row-id-gsbp-087dbe42-7c65 {
  padding-top: 88px !important;
  padding-bottom: 88px !important;
}

#gspb_heading-id-gsbp-caee6b3 {
  font-size: 15px !important;
  line-height: 20px !important;
  letter-spacing: 0.04em !important;
}

#gspb_heading-id-gsbp-981803f {
  font-size: clamp(2.125rem, 6vw, 3rem) !important;
  line-height: 1.15 !important;
  margin-bottom: 18px !important;
}

#gspb_heading-id-gsbp-749746a {
  font-size: clamp(1rem, 2.2vw, 1.125rem) !important;
  line-height: 1.5 !important;
  max-width: 62ch;
}

/* Unified primary CTA shape */
.gspb_button_wrapper > .gspb-buttonbox,
.wp-block-button__link {
  border-radius: 50px !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  padding: 16px 28px !important;
}

.gspb_button_wrapper > .gspb-buttonbox {
  background-color: var(--wp--preset--color--primary) !important;
  color: #fff !important;
  border: 1px solid var(--wp--preset--color--primary) !important;
}

.gspb_button_wrapper > .gspb-buttonbox:hover,
.wp-block-button__link:hover {
  background-color: var(--codex-primary-hover) !important;
  border-color: var(--codex-primary-hover) !important;
  transform: none !important;
}

/* Reduce motion noise on first screen */
#gspb_row-id-gsbp-087dbe42-7c65 [data-gs-aos],
#gspb_row-id-gsbp-087dbe42-7c65 .gspb_heading,
#gspb_row-id-gsbp-087dbe42-7c65 .gspb-buttonbox {
  transition-duration: 0.45s !important;
  transition-delay: 0ms !important;
  transition-timing-function: ease !important;
}

/* Global hover de-noise to avoid jumpy cards */
.gspb_container:hover,
.gspb-buttonbox:hover {
  transform: none !important;
}

@media (max-width: 767.98px) {
  .wp-block-navigation__container > .wp-block-navigation-item > a {
    font-size: 15px !important;
  }

  #gspb_row-id-gsbp-087dbe42-7c65 {
    padding-top: 72px !important;
    padding-bottom: 72px !important;
  }

  #gspb_heading-id-gsbp-981803f {
    font-size: 34px !important;
    line-height: 1.2 !important;
  }
}

@media (max-width: 575.98px) {
  #gspb_row-id-gsbp-087dbe42-7c65 {
    padding-top: 64px !important;
    padding-bottom: 64px !important;
  }

  #gspb_heading-id-gsbp-981803f {
    font-size: 30px !important;
    line-height: 1.2 !important;
  }

  #gspb_heading-id-gsbp-749746a {
    font-size: 16px !important;
    line-height: 1.45 !important;
    margin-bottom: 24px !important;
  }

  .gspb_button_wrapper > .gspb-buttonbox,
  .wp-block-button__link {
    width: 100%;
    justify-content: center;
    text-align: center;
  }
}

