/* V15 2.0 — typography for the approved editorial preview. */
body.v15-v2 #main-content :is(h1,h2,h3) {
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 400 !important;
  letter-spacing: -.038em !important;
  line-height: 1.1 !important;
  text-wrap: balance;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none;
  min-width: 0;
  height: auto !important;
}
body.v15-v2 #main-content h1 {
  font-size: clamp(3rem, 5.3vw, 5.25rem) !important;
  max-width: 1000px !important;
  margin: 18px 0 24px !important;
}
body.v15-v2 #main-content h2 {
  font-size: clamp(2.3rem, 3.65vw, 3.65rem) !important;
  margin-top: 12px !important;
  margin-bottom: 22px !important;
}
body.v15-v2 #main-content h3 {
  font-size: clamp(1.4rem, 2vw, 2rem) !important;
  line-height: 1.2 !important;
  letter-spacing: -.02em !important;
}
body.v15-v2 #main-content :is(.block,.era,.protocol) h2 {
  font-size: clamp(1.8rem, 2.55vw, 2.6rem) !important;
}
body.v15-v2 #main-content p { line-height:1.65; }
body.v15-v2 #main-content :is(.hero,.results-page-hero,.price-hero,.faq-page-hero,.contact-hero) p {
  max-width: 740px;
}
body.v15-v2 #main-content .hero-copy { min-width:0; gap:24px !important; }
body.v15-v2 #main-content .hero-keyword {
  font-size: clamp(2.7rem, 4.4vw, 4.5rem) !important;
  max-width: 13.5ch !important;
  line-height: 1.07 !important;
}
body.v15-v2 #main-content .hero-location {
  flex-basis:100%; color:#f36f21; font:700 .72rem/1.5 Arial,sans-serif;
  letter-spacing:.1em; text-transform:uppercase;
}
body.v15-v2 #main-content .hero-service {
  font:700 .7rem/1.5 Arial,sans-serif !important;
  letter-spacing:.1em !important;
}
body.v15-v2 #main-content .final-contact .contact-card,
body.v15-v2 #main-content .final-contact .contact-card :is(h3,p,label,small,.consent span,.privacy-inline),
body.v15-v2 #main-content .final-contact .contact-card a:not(.button) {
  color:#f4efe7 !important;
}
body.v15-v2 #main-content .final-contact .contact-card .contact-option-label { color:#f36f21 !important; }
body.v15-v2 #main-content .final-contact .contact-card :is(input,textarea) { color:#1f4a4d !important; }
body.v15-v2 #main-content .final-contact .contact-card button[type="submit"] {
  background:#f36f21 !important; color:#163f42 !important; box-shadow:none !important;
}
body.v15-v2 #main-content .hero-foot { gap:14px 24px !important; }
body.v15-v2 #main-content .hero-foot small { margin-top:5px !important; }
body.v15-v2 #main-content .results-page-intro-grid { align-items:center !important; }
body.v15-v2 #main-content :is(.cta,.faq-page-cta,.results-cta) h2 {
  max-width: 820px !important; margin-inline:auto !important;
}
body.v15-v2 #main-content :is(.cta,.faq-page-cta,.results-cta) p {
  max-width: 650px; margin: 0 auto 26px !important;
}
body.v15-v2 #main-content :is(.cta,.faq-page-cta,.results-cta) .button {
  color:#f4efe7 !important; background:#1f4a4d !important;
  line-height:1.4 !important; text-align:center; box-shadow:none !important;
  margin-top:0 !important;
}
body.v15-v2 #main-content :is(.cta,.faq-page-cta,.results-cta) .button::after { display:none !important; }
body.v15-v2 #main-content .healing-intro { margin:0 0 26px; }
body.v15-v2 #main-content .honesty-statement {
  font-size:clamp(2.2rem,3.65vw,3.65rem) !important;
  line-height:1.1 !important; letter-spacing:-.038em !important; text-wrap:balance;
}
body.v15-v2 #main-content .era-intro { margin-bottom:16px; }
body.v15-v2 #main-content .price-hero h1 { max-width:960px !important; }
body.v15-v2 #main-content .hero-grid > *,
body.v15-v2 #main-content .semantic-bridge-grid > *,
body.v15-v2 #main-content .materials-grid > * { min-width:0; }
@media(min-width:761px) {
  body.v15-v2 #main-content .results-page-hero h1 {
    font-size:clamp(3rem,4.6vw,4.6rem) !important;
  }
}
@media(max-width:760px) {
  body.v15-v2 #main-content h1 {
    font-size:clamp(2.2rem,9.3vw,3.5rem) !important;
    line-height:1.1 !important; letter-spacing:-.035em !important;
    margin:14px 0 20px !important; max-width:100% !important;
  }
  body.v15-v2 #main-content h2,
  body.v15-v2 #main-content :is(.block,.era,.protocol) h2 {
    font-size:clamp(1.9rem,8vw,2.7rem) !important;
    line-height:1.13 !important; letter-spacing:-.03em !important;
    margin:10px 0 18px !important;
  }
  body.v15-v2 #main-content h3 { font-size:1.45rem !important; }
  body.v15-v2 #main-content .hero-keyword {
    font-size:clamp(2.1rem,9.2vw,3.2rem) !important;
    max-width:16ch !important; margin-inline:auto !important; line-height:1.12 !important;
  }
  body.v15-v2 #main-content .hero-copy,
  body.v15-v2 #main-content .hero-intro,
  body.v15-v2 #main-content .hero-foot { text-align:center !important; }
  body.v15-v2 #main-content .hero-copy { gap:22px !important; }
  body.v15-v2 #main-content .hero-intro { padding-inline:8px !important; }
  body.v15-v2 #main-content .hero-foot { gap:12px !important; }
  body.v15-v2 #main-content .hero-foot small { margin-top:8px !important; }
  body.v15-v2 #main-content .honesty-statement {
    font-size:clamp(1.9rem,8vw,2.7rem) !important; line-height:1.13 !important;
  }
  body.v15-v2 #main-content :is(.cta,.faq-page-cta,.results-cta) h2 { margin-inline:auto !important; }
}
