/* CONVENY · landing · modo "una sección por pantalla" (solo escritorio ≥1201px)
   Cada .slide ocupa exactamente una pantalla y el scroll salta de una a otra.
   El contenido usa TODO el ancho: escala.js elige un factor (--s) para que quepa en alto y fija la altura
   del contenido a la de la pantalla; las zonas elásticas (fotos, mapa, tarjetas) se estiran para llenarla.
   Aquí también se compactan los rellenos verticales del diseño para que el conjunto quepa sin encogerlo.
   En tablet y móvil no se aplica. */

@media (min-width:1201px) and (min-height:560px){
  html{scroll-snap-type:y mandatory;scroll-behavior:smooth;overscroll-behavior-y:none}
  :root{--px:80px}            /* 80px fijos: con zoom, las unidades vw se distorsionarían */

  .slide{
    height:100vh;height:100svh;
    display:flex;align-items:center;justify-content:center;
    overflow:hidden;
    scroll-snap-align:start;scroll-snap-stop:always;
    background:var(--slide-bg,var(--c-fondo));
  }
  .slide__inner{width:100%;zoom:var(--s,1);display:flex;flex-direction:column}
  .slide__inner>*{flex:none}

  .slide--servicios{--slide-bg:var(--c-serv-fondo)}
  .slide--modelo{--slide-bg:var(--c-mod-fondo)}

  /* ═══ 1 · inicio: barra + cabecera + portada + foto + evidencias ═══ */
  .cabecera{padding-top:12px;padding-bottom:12px}
  .portada__izq{padding:36px 48px 32px var(--px);gap:20px;justify-content:center}
  .portada__der{padding:36px var(--px) 32px 48px}
  .estimador{padding:24px;gap:16px}
  .estimador__campos{gap:12px}
  .campo select{height:38px}
  .slide__inner>.banda-foto{flex:1 1 150px;height:auto;min-height:150px}   /* zona elástica */
  .banda-foto__img{position:absolute;left:var(--px);right:var(--px);top:0;bottom:0;width:calc(100% - 2*var(--px));height:100%}
  .evidencias{padding-top:14px;padding-bottom:14px}

  /* ═══ 2 · servicios ═══ */
  .slide__inner>.servicios{flex:1 1 auto}
  .servicios__cab{padding-top:22px;padding-bottom:14px}
  .servicios__cab-izq{gap:12px}
  .titular-arch{font-size:46px}
  .servicios__cab-der{padding-top:20px}
  .servicios__rejilla{flex:1 1 auto;padding-bottom:18px;align-items:stretch}
  .columna{padding:18px;gap:14px}
  .columna__hero{flex:1 1 110px;height:auto;min-height:110px;padding:16px}
  .subtarjeta{height:164px;padding:16px;gap:10px}
  .subtarjeta__acento{top:auto;bottom:20px}
  .servicios .franja{margin-bottom:20px;max-width:none}
  .franja__sup{padding:12px 0}
  .franja__inf{padding:16px 0}

  /* ═══ 3 · modelo operativo ═══ */
  .slide__inner>.modelo{flex:1 1 auto}
  .modelo__hero{padding:34px var(--px) 18px}
  .modelo__izq{gap:12px}
  .modelo__izq .titular-arch{line-height:1.08}
  .datos{padding:14px 18px;gap:10px}
  .pipeline{flex:1 1 auto;padding:10px calc(var(--px) - 40px) 22px;gap:12px;overflow:visible}
  .paso{flex:1 1 180px;width:auto;height:auto;min-height:290px}
  .paso__cab{padding:14px 14px 10px;gap:9px}
  .paso__txt p{min-height:2.6em}
  .paso__foto{flex:1 1 auto;height:auto;min-height:100px;position:relative}
  .paso__foto img,.paso__foto img.paso__foto--render{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
  .etapas{padding:22px var(--px) 28px}
  .etapa{gap:10px}
  .etapa p{min-height:0;text-align:left}
  .etapa h3{margin-bottom:4px}

  /* ═══ 4 · riesgo y cumplimiento ═══ */
  .slide__inner>.riesgo{flex:1 1 auto;padding:22px var(--px) 24px;gap:18px}
  .riesgo__izq{gap:10px;width:auto;flex:0 0 auto}
  .riesgo__desc br{display:none}
  .riesgo__izq .titular-arch br{display:none}
  .riesgo__cab{gap:40px}
  .riesgo__der{padding-top:40px}
  .riesgo__rejilla{flex:1 1 auto;height:auto;min-height:300px}
  .mapa{flex:0 0 auto;align-self:stretch;aspect-ratio:1.8/1}   /* el mapa conserva su proporción: sin recortes */
  .senales{flex:1 1 0;width:auto;min-width:0}
  .senales{gap:12px}
  .senales__lista{gap:10px}
  .senal{padding:12px 16px}
  .mapa__cab{padding:12px 20px}

  /* ═══ 5 · faq + especialista ═══ */
  .slide__inner>.faq{flex:1 1 auto;padding:44px var(--px) 28px;gap:24px}
  .faq__intro{gap:12px}
  .faq h2{font-size:32px}
  .faq__lista{flex:1 1 auto;gap:12px}
  .faq__item{flex:1 1 auto;padding:16px 24px;gap:8px;justify-content:center}
  .especialista{padding:30px var(--px);gap:18px}
  .especialista h2{font-size:28px}
  .especialista__cab{gap:8px}

  /* ═══ 6 · cierre ═══ */
  .slide__inner>.cta-final{flex:1 1 auto;justify-content:center;padding:40px var(--px);gap:24px}
  .cta-final h2{font-size:60px}
  .cta-final>p:not(.kicker){max-width:780px;font-size:18px}
  .pie{padding-top:26px;padding-bottom:26px}
}
