/* Readable sizes on every screen, including supporting text and navigation.
   Loaded last so older campaign styles cannot shrink the reading copy. */
body { font-size:1.125rem; line-height:1.75; }
.hero-description, .lifetime-condition, .intro-grid>div p,
.intro-grid>div .lead, .lifetime-copy p, .lifetime-copy .lead,
.section-heading>p, .paths p, .pillars p, .difference-list p,
.balance-inner>div>p:not(.eyebrow), .dimensions p,
.mentor-copy>p:not(.eyebrow), .mentor-book-grid p,
.personal-video>div>p:not(.eyebrow), .two-intro,
.communities article>p, .communities .community-video p,
.plan>p:not(.eyebrow), .plan li, .faq>div>p:not(.eyebrow),
.faq details>p, .video-story-copy p, .contact p:not(.eyebrow),
.contact .contact-grid p, .stories-next {
  font-size:1.125rem; line-height:1.75;
}
.eyebrow, .hero .eyebrow, .balance .eyebrow,
.contact .eyebrow, .contact .email-contact .eyebrow,
.plan .eyebrow, .plan .eyebrow.lifetime-badge,
.section-label, .section-label>span+span, .tag,
.path-number, .dimensions article>span, .plan-label,
.micro, .art-caption, .hero-community .art-caption,
.scroll-note, .photo-label small, .contact-note,
.lifetime-copy small, .plan-footnote, .plan>small,
.testimony-source, .form-consent, .form-row small,
.more-stories>summary small, .footer>p, .footer>div,
.footer>div>span, .wordmark small {
  font-size:1rem; line-height:1.65; letter-spacing:.02em;
}
.wordmark small { letter-spacing:0; margin-top:7px; }
.lifetime-confirmation>strong { font-size:1.125rem; line-height:1.6; }
.lifetime-confirmation>span { font-size:1rem; line-height:1.7; margin-top:8px; }
.numbers-inner>p { font-size:1rem; line-height:1.75; letter-spacing:0; }
.numbers-inner>div>span { font-size:1.0625rem; line-height:1.6; }
.difference-list article>span { font-size:1rem; }
.whatsapp-float { font-size:1.0625rem; line-height:1.5; }
.video-help, .video-fallback { font-size:1.0625rem; line-height:1.7; }
.button, .hero .button, .plan>.button, .email-contact .button,
.text-link, .video-story-copy>a, .program-switch button,
.autoplay-control, .header-cta, .stories-close {
  font-size:1.0625rem; line-height:1.5; min-height:52px;
  max-width:100%; white-space:normal;
}
.button { gap:20px; padding:16px 20px; }
.button span, .text-link span { flex-shrink:0; }
.text-link, .video-story-copy>a { padding-block:12px; }
.nav { font-size:1rem; gap:20px; }
.header { gap:24px; }
.header-cta { padding:14px 18px; gap:16px; }
.mobile-nav a { font-size:1.125rem; line-height:1.6; min-height:52px; padding-block:14px; }
.mobile-nav a[href="#conocernos"] { margin-top:12px; padding:16px 18px; border:2px solid var(--teal-dark); background:var(--teal-dark); color:white; font-weight:600; }
.mobile-nav a[href="#conocernos"]:hover { background:#005c56; border-color:#005c56; }
.paths h3, .pillars h3, .difference-list h3, .community-video h4 { font-size:1.375rem; line-height:1.35; }
.pillars p { color:#e8e8e1; }
.method .section-heading>p { color:#e8e8e1; }
.stories .section-heading>p, .video-help, .testimony-source { color:#fff; }
.section-label>span+span { color:#5d5f5e; }
.method .section-label>span+span { color:#e8e8e1; }
.stories .section-label>span+span { color:#fff; }
.micro, .scroll-note, .footer>div>span { color:#555; }
.lifetime-copy small { margin-top:24px; }
.paths p, .pillars p, .difference-list p, .dimensions p { margin-top:16px; }
.plan { padding:36px 28px; }
.plan-label { position:static; display:block; width:fit-content; max-width:100%; margin-bottom:20px; padding:9px 12px; }
.plan li { padding-block:14px; }
.plan-footnote { max-width:80ch; margin-top:28px; }
.video-story-copy { padding:28px; }
.video-story-copy p { margin-block:20px 0; }
.more-stories>summary { font-size:1.125rem; line-height:1.6; }
.faq summary { font-size:1.125rem; line-height:1.6; min-height:64px; gap:20px; }
.faq summary span { flex-shrink:0; }
.form-row label { font-size:1.0625rem; line-height:1.6; }
.form-row input, .form-row select, .form-row textarea { font-size:1.125rem; line-height:1.6; min-height:56px; }
.contact .form-status { font-size:1.0625rem; line-height:1.7; }
.contact .contact-number { font-size:1.5rem; }
.footer>div>a { font-size:1rem; min-height:44px; display:inline-flex; align-items:center; }
.outline { -webkit-text-stroke:0; color:white; }
.outline-dark, .contact h2 span { -webkit-text-stroke:0; color:var(--ink); }

@media (max-width:1200px) {
  .header { height:96px; }
  .nav, .header-cta { display:none; }
  .menu-toggle { display:block; width:52px; height:52px; flex-shrink:0; }
  .mobile-nav { top:96px; max-height:calc(100vh - 96px); max-height:calc(100dvh - 96px); overflow-y:auto; }
  html { scroll-padding-top:112px; }
  .pillars { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; }
  .numbers-inner { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
  .numbers-inner>p { grid-column:1/-1; }
}
@media (min-width:761px) and (max-width:1000px) {
  .hero { grid-template-columns:1fr; gap:36px; }
  .hero h1, .hero-description, .lifetime-condition { max-width:680px; }
  .hero .hero-community { margin:0; max-width:740px; }
  .intro-grid, .lifetime-grid, .balance-inner, .mentor,
  .personal-video, .faq, .contact-grid { grid-template-columns:1fr; gap:36px; }
  .communities article { padding:32px 24px; }
  .communities .text-link { gap:12px; }
  .section-heading { align-items:flex-start; }
  .section-heading>p { max-width:45%; }
  .paths { grid-template-columns:1fr; gap:28px; }
  .paths article { padding:24px 0 0; }
}
@media (max-width:760px) {
  .pillars, .dimensions { grid-template-columns:1fr; }
  .section-heading>p { max-width:none; }
  .numbers-inner { grid-template-columns:1fr; }
  .numbers-inner>div { grid-template-columns:100px minmax(0,1fr); }
  .video-story-copy, .plan { padding:28px 20px; }
  .form-row { margin-bottom:26px; }
  .form-consent { font-size:1rem; }
  .program-switch button { padding:14px 10px; }
  .footer { padding-bottom:104px; }
}
