@font-face{font-family:Newsreader;src:url('/site/assets/fonts/newsreader-regular-latin.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Newsreader;src:url('/site/assets/fonts/newsreader-italic-latin.woff2') format('woff2');font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:"Medi Lora";src:url('/site/assets/fonts/lora-regular-latin.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}

/* Preserve the existing subpage typography; homepage roles are defined below. */
.clinic-explorer h2,.stories-section h2,.final-cta h2{font-family:Newsreader,Georgia,serif;font-weight:400;font-optical-sizing:auto;letter-spacing:-.025em;line-height:1.08}
.footer-invitation h2 em,.clinic-explorer h2 em,.stories-section h2 em{font-family:Newsreader,Georgia,serif;font-style:italic;font-weight:400}

.homepage{--section-title-size:clamp(34px,3.75vw,54px);--column-title-size:clamp(32px,3.05vw,44px);--card-title-size:clamp(29px,2.65vw,38px);--heading-sans:"Medi Sans",Inter,Arial,sans-serif;--heading-accent:"Medi Lora",Georgia,serif}
.homepage main [data-section-title],.homepage .footer-invitation h2{font-family:var(--heading-sans);font-size:var(--section-title-size);font-weight:400;font-style:normal;letter-spacing:-.035em;line-height:1.15;text-wrap:balance}
/* A small optical slant preserves Lora's shapes without a full italic face. */
.homepage main [data-section-title] em,.homepage .footer-invitation h2 em{display:inline-block;max-width:100%;font-family:var(--heading-accent);font-style:normal;font-weight:400;letter-spacing:-.04em;font-synthesis:none;transform:skewX(-6deg);transform-origin:center}

/* A shared scale follows the available space: section, column, then inset card. */
.homepage main .trust-copy [data-section-title],.homepage main .faq-heading [data-section-title]{font-size:var(--column-title-size);line-height:1.18}
.homepage main .canada-copy [data-section-title]{font-size:var(--card-title-size);line-height:1.22;letter-spacing:-.03em}
.homepage .coverage-v3 .canada-number{margin-top:38px}

/* One consistent sans headline stays legible over the moving hero. */
.homepage .hero-copy h1{font-family:var(--heading-sans);font-size:clamp(60px,6.25vw,90px);font-weight:500;font-style:normal;line-height:1.07;letter-spacing:-.045em}
@media(max-width:600px){
  .homepage .hero-copy h1{font-size:clamp(46px,12vw,66px);line-height:1.1;letter-spacing:-.04em}
  .homepage .coverage-v3 .canada-number{margin-top:30px}
}
@media(max-width:360px){
  .homepage{--card-title-size:26px}
}
