.hero h1{font-size:clamp(3.8rem,5vw,6.1rem);line-height:.93}
.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}
.trust-strip span{padding:1.25rem 1.5rem;text-align:center;border-left:1px solid var(--line);font-size:.7rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase}
.trust-strip span:first-child{border-left:0}
.home-method{padding:0 7vw 10vw}
.home-method-heading{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:end;margin-bottom:3.5rem}
.home-method-heading h2,.home-faq h2{font-family:"Italiana",serif;font-weight:400;font-size:clamp(3.2rem,5.6vw,6rem);line-height:.98;margin:0}
.home-method-heading>p:last-child{line-height:1.7;color:var(--stone)}
.method-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.method-grid article{padding:2.5rem 2rem 3rem 0}
.method-grid article+article{padding-left:2rem;border-left:1px solid var(--line)}
.method-grid span{font-family:"Italiana",serif;color:var(--stone)}
.method-grid h3{font-family:"Italiana",serif;font-weight:400;font-size:2.2rem;margin:2.5rem 0 1rem}
.method-grid p{line-height:1.7;color:var(--stone)}
.home-faq{padding:10vw 7vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;border-top:1px solid var(--line)}
.home-faq>div:first-child>p:last-child{max-width:450px;line-height:1.7;color:var(--stone)}
.home-faq-list{border-top:1px solid var(--line)}
.home-faq details{padding:1.4rem 0;border-bottom:1px solid var(--line)}
.home-faq summary{cursor:pointer;font-weight:500;font-size:1rem}
.home-faq details p{line-height:1.7;color:var(--stone);padding-right:2rem}
@media(max-width:900px){.trust-strip{grid-template-columns:1fr 1fr}.trust-strip span:nth-child(3){border-left:0}.trust-strip span:nth-child(n+3){border-top:1px solid var(--line)}.home-method{padding:0 7vw 18vw}.home-method-heading,.home-faq{grid-template-columns:1fr;gap:2.5rem}.method-grid{grid-template-columns:1fr}.method-grid article+article{padding-left:0;border-left:0;border-top:1px solid var(--line)}.home-faq{padding:18vw 7vw}}
@media(max-width:520px){.trust-strip{grid-template-columns:1fr}.trust-strip span{border-left:0;border-top:1px solid var(--line)}.trust-strip span:first-child{border-top:0}.hero h1{font-size:clamp(3.05rem,13.5vw,4.6rem)}}
.training-more{grid-column:2;justify-self:start;margin-top:1.2rem}.training-intro>.training-more{color:var(--ink);font-size:.83rem;line-height:1.2}
@media(max-width:980px){.training-more{grid-column:1;margin-top:0}.training-intro>p:nth-of-type(2){grid-column:1;margin-top:0}}

/* Mobile viewport guard: keep long editorial type and fixed actions inside the
   physical screen without changing the desktop composition. */
@media (max-width: 560px) {
  html,
  body {
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
  }

  main,
  .site-header,
  .hero,
  .hero-copy,
  .hero-actions,
  .hero-meta {
    min-width: 0;
    max-width: 100%;
  }

  .site-header {
    padding-inline: 5vw;
  }

  .brand {
    min-width: 0;
    flex: 1 1 auto;
  }

  .brand-logo-exact {
    width: min(58vw, 230px);
    max-width: 100%;
    height: auto;
  }

  .menu-toggle {
    flex: 0 0 auto;
  }

  .hero-copy {
    width: 100%;
    padding-inline: 7vw;
  }

  .hero h1 {
    width: 100%;
    max-width: 100%;
    font-size: clamp(2rem, 10.2vw, 2.9rem);
    line-height: .96;
    letter-spacing: -.035em;
  }

  .hero-lead,
  .button {
    max-width: 100%;
  }

  .instagram-float,
  .whatsapp-float {
    max-width: calc(100vw - 2rem);
  }
}

/* Editorial section numbering is intentionally secondary to the content. */
.hero-editorial-index,.section-index{opacity:.56}

/* Ajuste final de la portada en teléfonos: las palabras largas conservan la
   jerarquía editorial sin aumentar el ancho físico de la página. */
@media (max-width: 560px) {
  .services,
  .service-grid,
  .service-card,
  .service-content,
  .real-results,
  .real-results-heading,
  .real-results-heading > *,
  .real-results-grid,
  .real-results-note,
  .lips-results,
  .lips-results-heading,
  .lips-case,
  .lips-case-grid,
  .training-programs,
  .training-intro,
  .training-programs-grid,
  .training-program,
  .training-program-copy,
  .journal,
  .journal-heading,
  .journal-grid,
  .journal-card {
    min-width: 0;
    max-width: 100%;
  }

  .service-content {
    width: 100%;
    max-width: none;
    margin: auto 0 0;
  }

  .service-card {
    flex-direction: column;
  }

  .service-content h3 {
    max-width: 100%;
    font-size: clamp(1.85rem, 8.6vw, 2.6rem);
    line-height: 1;
    overflow-wrap: anywhere;
  }

  .service-content p,
  .service-content span,
  .real-results-heading p {
    max-width: 100%;
  }

  .real-results-heading h2,
  .lips-results-heading h2,
  .training-intro h2,
  .journal-heading h2 {
    max-width: 100%;
    font-size: clamp(2.15rem, 8.8vw, 3.1rem);
    line-height: .98;
    letter-spacing: -.025em;
  }
}
