/* MENÚ APP MÓVIL - separado del footer */
.bottom-nav{display:none}
@media (max-width:767px){
  body{padding-bottom:calc(78px + env(safe-area-inset-bottom,0px));}
  .bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:99999;width:100%;height:66px;min-height:66px;padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:repeat(5,1fr);align-items:end;justify-items:center;gap:0;background:#fff;border-radius:20px 20px 0 0;box-shadow:0 -8px 24px rgba(3,4,94,.15);border:0;margin:0;overflow:visible;}
  .bottom-nav a{position:relative;width:100%;height:54px;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:0;margin:0;color:#03045e;background:transparent;border:0;box-shadow:none;border-radius:0;font-size:10.5px;line-height:1.05;font-weight:700;text-align:center;text-decoration:none;}
  .bottom-nav a svg{width:22px;height:22px;color:#ffd166;stroke:currentColor;fill:none;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round;}
  .bottom-nav a .wa-icon{color:#22c55e;fill:#22c55e;stroke:none;}
  .bottom-nav a span{display:block;color:#03045e;font-size:10.5px;line-height:1.05;font-weight:800;white-space:nowrap;}
  .bottom-nav a.bottom-main{width:58px;height:58px;min-width:58px;border-radius:999px;background:#ffafcc;color:#03045e;box-shadow:0 10px 24px rgba(255,175,204,.38);transform:translateY(-12px);}
  .bottom-nav a.bottom-main svg{width:22px;height:22px;color:#03045e;}.bottom-nav a.bottom-main span{font-size:9.5px;color:#03045e;}
}
@media (max-width:380px){.bottom-nav{height:64px;min-height:64px;padding-left:4px;padding-right:4px;border-radius:18px 18px 0 0}.bottom-nav a{height:52px}.bottom-nav a svg{width:20px;height:20px}.bottom-nav a span{font-size:9.4px}.bottom-nav a.bottom-main{width:54px;height:54px;min-width:54px}.bottom-nav a.bottom-main span{font-size:8.8px}}

/* ===== FIX REAL DISTRITOS + MENÚ APP (20260608-clean-layer) ===== */
@media (max-width: 767px){
  html, body{
    overflow-x:hidden !important;
  }

  /* El menú APP debe estar siempre por encima de cualquier tarjeta/sección */
  body .bottom-nav{
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    width:100% !important;
    height:72px !important;
    min-height:72px !important;
    padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px)) !important;
    background:#ffffff !important;
    border-radius:20px 20px 0 0 !important;
    box-shadow:0 -10px 26px rgba(3,4,94,.18) !important;
    z-index:2147483647 !important;
    isolation:isolate !important;
    opacity:1 !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    overflow:visible !important;
  }

  body .bottom-nav::before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:#ffffff !important;
    border-radius:20px 20px 0 0 !important;
    z-index:-1 !important;
    pointer-events:none !important;
  }

  body .bottom-nav a,
  body .bottom-nav a.bottom-main{
    z-index:2 !important;
  }

  /* Eliminar botón flotante “Servicio disponible en ...” de las páginas distritos */
  body.district-page .district-badge,
  body.district-page .service-available-badge,
  body.district-page .floating-district-badge,
  body.district-page .district-floating-badge,
  body.district-page [class*="available"],
  body.district-page [class*="badge"]{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }

  /* Ninguna tarjeta/sección de distritos debe quedar por encima del menú APP */
  body.district-page main,
  body.district-page section,
  body.district-page .process-wrap,
  body.district-page .process-grid,
  body.district-page .process-card{
    position:relative !important;
    z-index:0 !important;
  }

  /* Espacio real para que el bloque amarillo no se meta debajo del menú */
  body.district-page{
    padding-bottom:calc(104px + env(safe-area-inset-bottom,0px)) !important;
  }

  body.district-page .process-wrap{
    padding-bottom:calc(132px + env(safe-area-inset-bottom,0px)) !important;
    margin-bottom:0 !important;
    overflow:visible !important;
  }

  body.district-page .process-grid{
    padding-bottom:0 !important;
    margin-bottom:28px !important;
  }

  body.district-page .process-card{
    margin-bottom:0 !important;
  }

  /* Evita que el contenido quede pegado al borde inferior en cualquier sección final */
  body.district-page .district-cta,
  body.district-page .faq-section,
  body.district-page .section:last-of-type{
    margin-bottom:calc(90px + env(safe-area-inset-bottom,0px)) !important;
  }
}

@media (max-width: 380px){
  body.district-page .process-wrap{
    padding-bottom:calc(150px + env(safe-area-inset-bottom,0px)) !important;
  }
}
