/* Client feedback pass: mobile hero, stable cards and content-width corrections. */

/* Keep non-interactive content steady. Entry motion is handled by the reveal system. */
@media (hover:hover) and (pointer:fine) {
  body:not(.home) :is(.pm-catalog-program,.pm-source-detail__grid>article,.pm-program-standard__steps article,.pm-treatment-grid article,.pm-type-grid>article,.pm-compare-grid>article,.pm-plan-points>div,.pm-plan-points article):hover {
    transform:none!important;
  }
}

/* Prevent the navy planning strips from extending beyond their section. */
.pm-fullface-guide .pm-plan-points,
.pm-pmc-guide .pm-plan-points {
  left:0!important;
  right:auto!important;
  width:100%!important;
  max-width:none!important;
}

/* Ten injectables plans, led by the dedicated Eye Filler plan. */
.sb-tabs-ready.pm-treatment-catalog--injectables .sb-tab-list { grid-template-columns:repeat(10,minmax(0,1fr))!important; }
.sb-tabs-ready .pm-catalog-programs>.pm-catalog-program:nth-child(10) { --sb-plan-index:"10"; }
.sb-tabs-ready.pm-treatment-catalog .pm-treatment-visual__image {
  aspect-ratio:4/3;
  object-fit:cover!important;
  object-position:center!important;
}

/* Main visual: use the available mobile width and preserve a clear reading rhythm. */
@media (max-width:900px) {
  .planme-hero__slide--2 .planme-panel__media,
  .planme-hero__slide--3 .planme-panel__media {
    top:var(--pm-header-h)!important;
    left:0!important;
    width:100%!important;
    height:35svh!important;
    object-fit:cover!important;
    transform:none!important;
    background:#e8e6e1;
  }
  .planme-hero__slide--2 .planme-panel__media { object-position:center 18%!important; }
  .planme-hero__slide--3 .planme-panel__media { object-position:center 28%!important; }
  .planme-hero__slide--2 .planme-hero__copy,
  .planme-hero__slide--3 .planme-hero__copy {
    top:calc(var(--pm-header-h) + 35svh)!important;
    bottom:132px!important;
    left:clamp(22px,7vw,42px)!important;
    right:clamp(22px,7vw,42px)!important;
    gap:0!important;
    justify-content:center!important;
  }
  .planme-hero__copy :is(h1,h2) {
    font-size:clamp(34px,9.4vw,52px)!important;
    line-height:1.28!important;
  }
  .planme-hero__slide--2 .planme-hero__text,
  .planme-hero__slide--3 .planme-hero__text {
    margin:16px auto 18px!important;
    font-size:clamp(15px,4.1vw,18px)!important;
    line-height:1.75!important;
  }
  .planme-hero__controls {
    left:22px!important;
    right:22px!important;
    bottom:76px!important;
    gap:16px!important;
  }
}

@media (max-width:900px) and (max-height:740px) {
  .planme-hero__slide--2 .planme-panel__media,
  .planme-hero__slide--3 .planme-panel__media { height:31svh!important; }
  .planme-hero__slide--2 .planme-hero__copy,
  .planme-hero__slide--3 .planme-hero__copy {
    top:calc(var(--pm-header-h) + 31svh)!important;
    bottom:116px!important;
  }
  .planme-hero__copy :is(h1,h2) { font-size:clamp(30px,8.3vw,40px)!important; }
  .planme-hero__slide--2 .planme-hero__text,
  .planme-hero__slide--3 .planme-hero__text { margin:10px auto 12px!important;line-height:1.6!important; }
  .planme-hero__controls { bottom:68px!important; }
}

@media (max-width:600px) {
  .sb-tabs-ready.pm-treatment-catalog--injectables .sb-tab-list {
    display:flex!important;
    grid-template-columns:none!important;
    width:100%!important;
    padding:6px 14px!important;
    border-inline:0!important;
    border-radius:0!important;
  }
  .sb-tabs-ready.pm-treatment-catalog--injectables .sb-tab {
    flex:0 0 132px!important;
    min-width:132px!important;
  }
  .sb-tabs-ready.pm-treatment-catalog .pm-treatment-visual__image { aspect-ratio:4/3; }
}

/* On phones only the opening hero is a full-screen scene. The following story
   sections use their content height so reading continues without hard stops. */
@media (max-width:767px) {
  body.home .planme-fullpage {
    height:auto!important;
    overflow:visible!important;
    scroll-snap-type:none!important;
    overscroll-behavior-y:auto!important;
  }
  body.home .planme-fullpage>.planme-panel:not(.planme-hero) {
    height:auto!important;
    min-height:0!important;
    scroll-snap-align:none!important;
    scroll-snap-stop:normal!important;
  }
  body.home .planme-hero {
    height:calc(100svh - 64px)!important;
    min-height:620px!important;
  }

  body.home .planme-philosophy {
    display:flex!important;
    flex-direction:column;
    padding:64px 24px 72px;
  }
  body.home .planme-philosophy::before { top:34px!important; }
  body.home .planme-philosophy .planme-editorial-image {
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:4/3;
    margin:0 0 38px;
    transform:none!important;
  }
  body.home .planme-philosophy__copy {
    position:relative!important;
    inset:auto!important;
    width:100%;
  }
  body.home .planme-panel__plan-label,
  body.home .planme-panel__number { display:none; }

  body.home .planme-signature {
    display:flex!important;
    flex-direction:column;
    padding:64px 24px 70px;
  }
  body.home .planme-signature::before { top:32px!important; }
  body.home .planme-signature__visuals {
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:4/3;
    margin:0 0 38px;
    transform:none!important;
  }
  body.home .planme-signature__heading {
    position:relative!important;
    inset:auto!important;
    margin:0 0 30px;
  }
  body.home .planme-programs {
    position:relative!important;
    inset:auto!important;
    width:100%;
  }

  body.home .planme-doctor {
    display:flex!important;
    flex-direction:column;
  }
  body.home .planme-doctor__image {
    position:relative!important;
    inset:auto!important;
    order:1;
    width:100%;
    aspect-ratio:4/3;
  }
  body.home .planme-doctor__image::after { display:none!important; }
  body.home .planme-doctor__image img { display:block; }
  body.home .planme-doctor__copy {
    order:2;
    height:auto!important;
    min-height:0!important;
    padding:58px 24px 74px!important;
    background:linear-gradient(145deg,#f3f2f0,#e7e6e8)!important;
  }
  body.home .planme-doctor__signature {
    position:relative!important;
    inset:auto!important;
    margin:12px 0 0;
  }

  body.home .planme-space {
    min-height:560px!important;
    padding:270px 24px 116px;
  }
  body.home .planme-space__copy {
    position:relative!important;
    inset:auto!important;
    max-width:100%;
    transform:none!important;
  }
  body.home .planme-space__edition { top:30px; right:24px; }

  body.home .planme-contact { display:block!important; }
  body.home .planme-contact__details {
    height:auto!important;
    min-height:0!important;
    padding:68px 24px 112px!important;
  }
}
