

/* ==========================================================
   NS RESPONSIVE FIX REAL - 2026-06-07
   Fuerza 2 columnas en celulares para secciones con muchas tarjetas
   y aumenta el logo del footer. Cargado al final para vencer overrides.
   ========================================================== */
@media (max-width: 767px){
  html, body{overflow-x:hidden!important;}

  body :is(.district-grid,
           .districts-section .district-grid,
           .service-grid,
           .feature-grid,
           .process-grid,
           .selection-steps,
           .why-grid,
           .metrics-grid,
           .local-grid,
           .testimonial-grid,
           .jobs-public-grid,
           .job-requirements-grid,
           .jobs-public-footer ul,
           .choice-grid.three,
           .choice-grid.four){
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
  }

  body :is(.district-card,
           .district-grid > *,
           .districts-section .district-card,
           .service-card,
           .feature-card,
           .process-card,
           .selection-steps > *,
           .why-grid > *,
           .metric-card,
           .local-card,
           .testimonial-card,
           .public-job-card,
           .jobs-public-footer li,
           .choice){
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:auto!important;
    box-sizing:border-box!important;
  }

  body :is(.district-card,
           .district-grid > *,
           .districts-section .district-card,
           .service-card,
           .feature-card,
           .process-card,
           .selection-steps > *,
           .why-grid > *,
           .metric-card,
           .local-card,
           .testimonial-card,
           .public-job-card){
    padding:14px 9px!important;
    border-radius:17px!important;
  }

  body :is(.district-card h3,
           .district-grid h3,
           .districts-section .district-card h3,
           .service-card h3,
           .feature-card h3,
           .process-card h3,
           .selection-steps h3,
           .why-grid h3,
           .public-job-card h3){
    font-size:13.5px!important;
    line-height:1.18!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
  }

  body :is(.district-card p,
           .district-grid p,
           .districts-section .district-card p,
           .service-card p,
           .feature-card p,
           .process-card p,
           .selection-steps p,
           .why-grid p,
           .public-job-card p,
           .public-job-location,
           .public-job-meta span){
    font-size:11px!important;
    line-height:1.32!important;
  }

  body :is(.district-icon,
           .districts-section .district-icon,
           .service-card .icon,
           .feature-card .icon,
           .metric-icon,
           .public-job-icon){
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    border-radius:14px!important;
  }

  body :is(.district-icon svg,
           .districts-section .district-icon svg,
           .service-card .icon svg,
           .feature-card .icon svg,
           .public-job-icon svg){
    width:22px!important;
    height:22px!important;
  }

  body :is(.site-footer .footer-brand img,
           footer .footer-brand img,
           .jobs-public-footer .footer-brand img,
           .footer-logo img,
           footer img[src*="logo"],
           footer img[alt*="Nanas"]){
    display:block!important;
    width:180px!important;
    max-width:180px!important;
    height:auto!important;
    object-fit:contain!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

@media (max-width: 430px){
  body :is(.district-grid,
           .districts-section .district-grid,
           .service-grid,
           .feature-grid,
           .process-grid,
           .selection-steps,
           .why-grid,
           .metrics-grid,
           .local-grid,
           .testimonial-grid,
           .jobs-public-grid,
           .job-requirements-grid,
           .jobs-public-footer ul,
           .choice-grid.three,
           .choice-grid.four){
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  body :is(.district-card,
           .district-grid > *,
           .districts-section .district-card,
           .service-card,
           .feature-card,
           .process-card,
           .selection-steps > *,
           .why-grid > *,
           .metric-card,
           .local-card,
           .testimonial-card,
           .public-job-card){
    padding:12px 7px!important;
  }

  body :is(.site-footer .footer-brand img,
           footer .footer-brand img,
           .jobs-public-footer .footer-brand img,
           .footer-logo img,
           footer img[src*="logo"],
           footer img[alt*="Nanas"]){
    width:170px!important;
    max-width:170px!important;
  }
}

/* FINAL OVERRIDE: footer redes blancas sin circulos y menu app responsive */
.footer-social-premium a.social-premium,.footer-social-premium .social-premium{background:transparent!important;background-color:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;padding:0!important;color:#fff!important;fill:#fff!important;transition:transform .22s ease,opacity .22s ease!important}
.footer-social-premium a.social-premium svg,.footer-social-premium .social-premium svg{width:24px!important;height:24px!important;fill:#fff!important;color:#fff!important;stroke:none!important}
.footer-social-premium a.social-premium:hover,.footer-social-premium .social-premium:hover{background:transparent!important;color:#fff!important;fill:#fff!important;box-shadow:none!important;opacity:.86!important;transform:translateY(-2px) scale(1.06)!important}
@media(max-width:767px){.footer-redesign.site-footer,.site-footer.footer-redesign,footer.site-footer{padding-bottom:86px!important;margin-bottom:0!important}.footer-social-premium{gap:34px!important}.footer-social-premium a.social-premium,.footer-social-premium .social-premium{background:transparent!important;border-radius:0!important;box-shadow:none!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important}.footer-social-premium a.social-premium svg,.footer-social-premium .social-premium svg{width:25px!important;height:25px!important;fill:#fff!important}.bottom-nav{position:fixed!important;left:0!important;right:0!important;bottom:0!important;width:100vw!important;max-width:100vw!important;height:74px!important;min-height:74px!important;padding:8px 8px calc(8px + env(safe-area-inset-bottom))!important;box-sizing:border-box!important;background:#fff!important;border-radius:22px 22px 0 0!important;box-shadow:0 -10px 28px rgba(0,0,0,.14)!important;border:0!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;align-items:center!important;justify-items:center!important;gap:0!important;z-index:2147483647!important;overflow:visible!important}.bottom-nav a{width:100%!important;min-width:0!important;height:54px!important;padding:0!important;margin:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;background:transparent!important;border:0!important;box-shadow:none!important;color:#06064c!important;font-size:11.5px!important;line-height:1!important;font-weight:800!important;text-align:center!important;text-decoration:none!important;white-space:nowrap!important}.bottom-nav svg,.bottom-nav i{width:20px!important;height:20px!important;font-size:20px!important;color:#ffd166!important;stroke:#ffd166!important;fill:none!important}.bottom-nav a[href*="wa.me"] svg,.bottom-nav a[href*="whatsapp"] svg,.bottom-nav a[href*="wa.me"] i,.bottom-nav a[href*="whatsapp"] i{color:#25d366!important;stroke:#25d366!important;fill:none!important}.bottom-nav .bottom-main,.bottom-nav a.bottom-main,.bottom-nav a[href*="formulario"]{width:58px!important;height:58px!important;min-width:58px!important;min-height:58px!important;max-width:58px!important;max-height:58px!important;border-radius:22px!important;background:#ffafcc!important;box-shadow:0 10px 28px rgba(255,175,204,.45)!important;transform:translateY(-16px)!important;color:#03045e!important;gap:3px!important}.bottom-nav .bottom-main svg,.bottom-nav a.bottom-main svg,.bottom-nav a[href*="formulario"] svg{width:19px!important;height:19px!important;color:#03045e!important;stroke:#03045e!important;fill:none!important}}
@media(max-width:380px){.footer-redesign.site-footer,.site-footer.footer-redesign,footer.site-footer{padding-bottom:82px!important}.bottom-nav{height:70px!important;min-height:70px!important;border-radius:20px 20px 0 0!important;padding-left:5px!important;padding-right:5px!important}.bottom-nav a{font-size:10.5px!important;height:50px!important;gap:3px!important}.bottom-nav svg,.bottom-nav i{width:18px!important;height:18px!important;font-size:18px!important}.bottom-nav .bottom-main,.bottom-nav a.bottom-main,.bottom-nav a[href*="formulario"]{width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important;transform:translateY(-14px)!important;border-radius:20px!important}}
@media(max-width:340px){.bottom-nav a{font-size:9.8px!important}.bottom-nav .bottom-main,.bottom-nav a.bottom-main,.bottom-nav a[href*="formulario"]{width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important}}

/* ==========================================================
   OVERRIDE DEFINITIVO FOOTER + MENU APP
   - Redes blancas sin circulos PC/celular
   - Menu inferior responsive para celulares pequeños/grandes
   ========================================================== */
.footer-redesign .footer-social-block{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
  flex-wrap:nowrap !important;
  text-align:center !important;
}
.footer-redesign .footer-social-block h2{
  margin:0 !important;
  color:#fff !important;
  line-height:1 !important;
}
.footer-redesign .footer-social-premium,
.site-footer .footer-social-premium,
footer .footer-social-premium{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:24px !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1 !important;
}
.footer-redesign .footer-social-premium a,
.footer-redesign .footer-social-premium a.social-premium,
.site-footer .footer-social-premium a.social-premium,
footer .footer-social-premium a.social-premium,
.footer-social-premium .social-premium,
a.social-premium.facebook,
a.social-premium.instagram,
a.social-premium.tiktok{
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:none !important;
  max-height:none !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  outline:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#fff !important;
  fill:#fff !important;
  opacity:1 !important;
  filter:none !important;
  text-decoration:none !important;
  transform:none !important;
  transition:transform .22s ease, opacity .22s ease !important;
}
.footer-redesign .footer-social-premium a svg,
.footer-redesign .footer-social-premium a.social-premium svg,
.site-footer .footer-social-premium a.social-premium svg,
footer .footer-social-premium a.social-premium svg,
.footer-social-premium .social-premium svg,
a.social-premium.facebook svg,
a.social-premium.instagram svg,
a.social-premium.tiktok svg{
  width:25px !important;
  height:25px !important;
  display:block !important;
  fill:#fff !important;
  stroke:none !important;
  color:#fff !important;
  opacity:1 !important;
  filter:none !important;
}
.footer-redesign .footer-social-premium a:hover,
.footer-redesign .footer-social-premium a.social-premium:hover,
.footer-social-premium .social-premium:hover{
  background:transparent !important;
  background-color:transparent !important;
  box-shadow:none !important;
  color:#fff !important;
  fill:#fff !important;
  opacity:.82 !important;
  transform:translateY(-2px) scale(1.06) !important;
}
.footer-redesign__middle,
.footer-redesign__bottom{
  border-top-width:1px !important;
  border-bottom-width:1px !important;
  border-color:rgba(255,255,255,.24) !important;
}

@media (min-width:768px){
  .footer-redesign__middle{
    grid-template-columns:240px minmax(360px,1fr) 240px !important;
    align-items:center !important;
  }
  .footer-redesign .footer-social-block{
    justify-content:center !important;
  }
  .footer-redesign .footer-social-premium{gap:24px !important;}
}

@media (max-width:767px){
  html,body{overflow-x:hidden !important;}
  body{padding-bottom:0 !important;}

  .footer-redesign.site-footer,
  .site-footer.footer-redesign,
  footer.site-footer{
    padding:26px 20px calc(76px + env(safe-area-inset-bottom)) !important;
    margin:0 !important;
    overflow:hidden !important;
  }
  .footer-redesign__top{
    grid-template-columns:1fr !important;
    gap:18px !important;
    padding-bottom:20px !important;
  }
  .footer-redesign .footer-col h2,
  .footer-redesign .footer-social-block h2{
    font-size:19px !important;
    margin:0 0 12px !important;
  }
  .footer-redesign .footer-col a,
  .footer-redesign .footer-col p{
    font-size:15px !important;
    line-height:1.52 !important;
    margin-bottom:7px !important;
    overflow-wrap:anywhere !important;
  }
  .footer-redesign__middle{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    gap:16px !important;
    padding:22px 0 18px !important;
    margin:0 auto !important;
  }
  .footer-book-card{
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    gap:7px !important;
    margin:0 auto !important;
    text-align:center !important;
  }
  .footer-book-card__icon{
    width:58px !important;
    height:58px !important;
  }
  .footer-book-card strong{font-size:14px !important; line-height:1.12 !important; text-transform:none !important;}
  .footer-book-card em{font-size:14px !important; line-height:1.1 !important; color:#ffafcc !important;}
  .footer-social-block{
    width:100% !important;
    flex-direction:column !important;
    gap:14px !important;
    order:2 !important;
  }
  .footer-redesign .footer-social-block h2{font-size:22px !important; margin:0 !important;}
  .footer-redesign .footer-social-premium,
  .site-footer .footer-social-premium,
  footer .footer-social-premium{
    gap:34px !important;
    margin:0 auto !important;
  }
  .footer-redesign .footer-social-premium a svg,
  .footer-redesign .footer-social-premium a.social-premium svg,
  .site-footer .footer-social-premium a.social-premium svg,
  footer .footer-social-premium a.social-premium svg,
  .footer-social-premium .social-premium svg{
    width:26px !important;
    height:26px !important;
  }
  .footer-company{
    order:3 !important;
    width:100% !important;
    max-width:340px !important;
    margin:0 auto !important;
  }
  .footer-company p{
    font-size:12.3px !important;
    line-height:1.48 !important;
    margin:0 0 5px !important;
  }
  .footer-redesign__bottom{
    max-width:340px !important;
    margin:16px auto 0 !important;
    padding-top:16px !important;
  }
  .footer-redesign__bottom p{
    font-size:12px !important;
    line-height:1.45 !important;
    margin:0 0 7px !important;
  }

  .bottom-nav{
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    width:100vw !important;
    max-width:100vw !important;
    min-width:100vw !important;
    height:74px !important;
    min-height:74px !important;
    padding:8px 7px calc(8px + env(safe-area-inset-bottom)) !important;
    box-sizing:border-box !important;
    background:#fff !important;
    border:0 !important;
    border-radius:22px 22px 0 0 !important;
    box-shadow:0 -8px 26px rgba(0,0,0,.12) !important;
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    align-items:center !important;
    justify-items:center !important;
    gap:0 !important;
    z-index:2147483647 !important;
    overflow:visible !important;
  }
  .bottom-nav a{
    width:100% !important;
    min-width:0 !important;
    height:54px !important;
    padding:0 !important;
    margin:0 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:4px !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    color:#03045e !important;
    font-size:11.5px !important;
    line-height:1 !important;
    font-weight:800 !important;
    text-align:center !important;
    text-decoration:none !important;
    white-space:nowrap !important;
  }
  .bottom-nav svg,
  .bottom-nav i{
    width:20px !important;
    height:20px !important;
    font-size:20px !important;
    color:#ffd166 !important;
    stroke:#ffd166 !important;
    fill:none !important;
  }
  .bottom-nav a[href*="wa.me"] svg,
  .bottom-nav a[href*="whatsapp"] svg,
  .bottom-nav a[href*="wa.me"] i,
  .bottom-nav a[href*="whatsapp"] i{
    color:#25d366 !important;
    stroke:#25d366 !important;
    fill:none !important;
  }
  .bottom-nav .bottom-main,
  .bottom-nav a.bottom-main,
  .bottom-nav a[href*="familias"]{
    width:58px !important;
    height:58px !important;
    min-width:58px !important;
    min-height:58px !important;
    max-width:58px !important;
    max-height:58px !important;
    border-radius:22px !important;
    background:#ffafcc !important;
    box-shadow:0 10px 28px rgba(255,175,204,.44) !important;
    transform:translateY(-16px) !important;
    color:#03045e !important;
  }
  .bottom-nav .bottom-main svg,
  .bottom-nav a.bottom-main svg,
  .bottom-nav a[href*="familias"] svg{
    width:19px !important;
    height:19px !important;
    color:#03045e !important;
    stroke:#03045e !important;
    fill:none !important;
  }
}

@media (max-width:390px){
  .footer-redesign.site-footer,
  .site-footer.footer-redesign,
  footer.site-footer{
    padding:22px 16px calc(72px + env(safe-area-inset-bottom)) !important;
  }
  .footer-redesign__top{gap:14px !important; padding-bottom:16px !important;}
  .footer-redesign .footer-col h2{font-size:18px !important;}
  .footer-redesign .footer-col a,
  .footer-redesign .footer-col p{font-size:14px !important; line-height:1.46 !important;}
  .footer-redesign__middle{gap:13px !important; padding:18px 0 15px !important;}
  .footer-book-card__icon{width:52px !important; height:52px !important;}
  .footer-redesign .footer-social-block h2{font-size:21px !important;}
  .footer-redesign .footer-social-premium{gap:30px !important;}
  .footer-redesign .footer-social-premium a svg,
  .footer-social-premium .social-premium svg{width:24px !important; height:24px !important;}
  .footer-company p{font-size:11.5px !important; line-height:1.42 !important;}
  .footer-redesign__bottom{margin-top:14px !important; padding-top:14px !important; max-width:310px !important;}
  .footer-redesign__bottom p{font-size:11.2px !important; line-height:1.42 !important;}
  .bottom-nav{
    height:70px !important;
    min-height:70px !important;
    border-radius:20px 20px 0 0 !important;
    padding:7px 4px calc(7px + env(safe-area-inset-bottom)) !important;
  }
  .bottom-nav a{font-size:10.4px !important; height:50px !important; gap:3px !important;}
  .bottom-nav svg,.bottom-nav i{width:18px !important;height:18px !important;font-size:18px !important;}
  .bottom-nav .bottom-main,
  .bottom-nav a.bottom-main,
  .bottom-nav a[href*="familias"]{
    width:54px !important;height:54px !important;min-width:54px !important;min-height:54px !important;
    border-radius:20px !important;transform:translateY(-14px) !important;
  }
}

@media (max-width:340px){
  .footer-redesign.site-footer{padding-left:13px !important;padding-right:13px !important;}
  .footer-redesign .footer-col a,.footer-redesign .footer-col p{font-size:13px !important;}
  .footer-redesign .footer-social-premium{gap:25px !important;}
  .bottom-nav a{font-size:9.6px !important;}
  .bottom-nav svg,.bottom-nav i{width:17px !important;height:17px !important;}
  .bottom-nav .bottom-main,.bottom-nav a.bottom-main,.bottom-nav a[href*="familias"]{
    width:50px !important;height:50px !important;min-width:50px !important;min-height:50px !important;
  }
}

@media (max-height:720px) and (max-width:430px){
  .footer-redesign.site-footer{padding-top:20px !important;}
  .footer-redesign__top{gap:12px !important;}
  .footer-redesign__middle{gap:11px !important;padding:15px 0 12px !important;}
  .footer-book-card__icon{width:48px !important;height:48px !important;}
  .footer-redesign .footer-social-block h2{font-size:20px !important;}
  .footer-company p{font-size:11px !important;}
  .footer-redesign__bottom p{font-size:10.8px !important;line-height:1.36 !important;}
}


/* REAL FIX MOBILE FOOTER MENU 2026 */
@media (max-width:430px){
 .bottom-nav,.mobile-bottom-nav{
   position:fixed!important;
   left:0!important;right:0!important;bottom:0!important;
   width:100%!important;
   margin:0!important;
   border-radius:22px 22px 0 0!important;
 }
 footer,.footer,.site-footer{
   padding-bottom:10px!important;
   margin-bottom:0!important;
 }
 .footer-social a,.social-links a,.social-icon{
   background:transparent!important;
   border:none!important;
   box-shadow:none!important;
   border-radius:0!important;
   width:auto!important;
   height:auto!important;
 }
 .footer-social i,.footer-social svg,
 .social-links i,.social-links svg{
   color:#fff!important;
   fill:#fff!important;
   font-size:22px!important;
 }
}
@media (min-width:431px){
 .footer-social a,.social-links a,.social-icon{
   background:transparent!important;
   border:none!important;
   box-shadow:none!important;
 }
}
.footer-social,.social-links{
 display:flex!important;
 align-items:center!important;
 justify-content:center!important;
 gap:18px!important;
}




/* ==========================================================
   FIX DEFINITIVO FOOTER + MENU MOVIL (2026-06-07)
   Mantiene el azul SOLO en el footer y evita que contamine la web.
   ========================================================== */

/* La web no debe quedar azul completa */
html,
body{
  background:#ffffff !important;
  overflow-x:hidden !important;
}

/* Evita que parches anteriores pinten main/secciones de azul */
main,
.main-content,
.page-content,
.page-wrapper,
#app,
section:not(.site-footer):not(.footer-redesign),
.hero,
.district-hero,
.faq-section,
.faq,
.faqs,
.faq-wrapper,
.image-section,
.about-section,
.services-section,
.districts-section{
  background-color:initial;
}

/* Azul corporativo SOLO para el footer rediseñado */
footer.site-footer.footer-redesign,
.site-footer.footer-redesign,
.footer-redesign{
  background:#05056b !important;
  color:#ffffff !important;
  margin:0 !important;
  overflow:visible !important;
}

/* Lineas finas del footer */
.footer-redesign__middle,
.footer-redesign__bottom{
  border-top:1px solid rgba(255,255,255,.22) !important;
}

/* Redes sociales: SIN circulos, SIN fondo, iconos blancos en PC y celular */
.footer-social-premium,
.footer-social,
.social-links{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:28px !important;
  flex-wrap:nowrap !important;
}

.footer-social-premium a,
.footer-social-premium .social-premium,
.footer-social a,
.social-links a,
.social-icon{
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  background-color:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  outline:none !important;
  filter:none !important;
  opacity:1 !important;
  color:#ffffff !important;
  transition:transform .22s ease, opacity .22s ease !important;
}

.footer-social-premium a:hover,
.footer-social-premium .social-premium:hover,
.footer-social a:hover,
.social-links a:hover{
  transform:translateY(-2px) scale(1.06) !important;
  opacity:.88 !important;
}

.footer-social-premium a svg,
.footer-social-premium .social-premium svg,
.footer-social a svg,
.social-links a svg,
.footer-social i,
.social-links i{
  width:24px !important;
  height:24px !important;
  font-size:24px !important;
  color:#ffffff !important;
  fill:#ffffff !important;
  stroke:none !important;
}

/* Iconos de contacto y libro conservan amarillo */
.footer-contact svg,
.footer-book-card__icon{
  color:#ffd166 !important;
  stroke:#ffd166 !important;
  fill:none !important;
}

/* Menu app: solo móvil, pegado abajo, responsive real */
.bottom-nav{
  display:none !important;
}

@media (max-width:767px){
  html,
  body{
    background:#ffffff !important;
    padding-bottom:0 !important;
  }

  body{
    padding-bottom:calc(78px + env(safe-area-inset-bottom)) !important;
  }

  footer.site-footer.footer-redesign,
  .site-footer.footer-redesign,
  .footer-redesign{
    background:#05056b !important;
    padding-bottom:calc(82px + env(safe-area-inset-bottom)) !important;
  }

  .bottom-nav{
    display:grid !important;
    position:fixed !important;
    z-index:99999 !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    width:100% !important;
    height:74px !important;
    min-height:74px !important;
    grid-template-columns:repeat(5,1fr) !important;
    align-items:center !important;
    gap:0 !important;
    margin:0 !important;
    padding:7px 4px calc(8px + env(safe-area-inset-bottom)) !important;
    background:#ffffff !important;
    border:0 !important;
    border-radius:22px 22px 0 0 !important;
    box-shadow:0 -8px 24px rgba(0,0,0,.12) !important;
    transform:none !important;
    max-width:none !important;
    box-sizing:border-box !important;
  }

  .bottom-nav a{
    height:54px !important;
    min-width:0 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:4px !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    color:#03045e !important;
    font-size:11px !important;
    font-weight:700 !important;
    line-height:1 !important;
    text-align:center !important;
    white-space:nowrap !important;
  }

  .bottom-nav a svg,
  .bottom-nav a i{
    width:20px !important;
    height:20px !important;
    font-size:20px !important;
    stroke:#ffd166 !important;
    fill:none !important;
    color:#ffd166 !important;
  }

  .bottom-nav a svg path,
  .bottom-nav a svg circle,
  .bottom-nav a svg rect{
    stroke:#ffd166 !important;
  }

  .bottom-nav .wa-icon,
  .bottom-nav a[href*="wa.me"] svg{
    width:22px !important;
    height:22px !important;
    fill:#25D366 !important;
    stroke:none !important;
  }

  .bottom-nav a[href*="wa.me"] svg path{
    fill:#25D366 !important;
    stroke:none !important;
  }

  .bottom-nav .bottom-main,
  .bottom-nav a.bottom-main,
  .bottom-nav a[href*="familias"]{
    width:64px !important;
    height:64px !important;
    min-width:64px !important;
    min-height:64px !important;
    margin:0 auto !important;
    border-radius:24px !important;
    background:#ffafcc !important;
    box-shadow:0 8px 22px rgba(255,175,204,.45) !important;
    transform:translateY(-14px) !important;
  }

  .bottom-nav .bottom-main svg,
  .bottom-nav a.bottom-main svg,
  .bottom-nav a[href*="familias"] svg{
    stroke:#03045e !important;
    color:#03045e !important;
  }

  .bottom-nav .bottom-main span,
  .bottom-nav a.bottom-main span,
  .bottom-nav a[href*="familias"] span{
    color:#03045e !important;
    font-weight:800 !important;
  }

  .footer-social-premium,
  .footer-social,
  .social-links{
    gap:30px !important;
  }

  .footer-social-premium a svg,
  .footer-social-premium .social-premium svg,
  .footer-social a svg,
  .social-links a svg{
    width:24px !important;
    height:24px !important;
  }
}

@media (max-width:390px){
  body{
    padding-bottom:calc(72px + env(safe-area-inset-bottom)) !important;
  }

  footer.site-footer.footer-redesign,
  .site-footer.footer-redesign,
  .footer-redesign{
    padding-left:16px !important;
    padding-right:16px !important;
    padding-bottom:calc(78px + env(safe-area-inset-bottom)) !important;
  }

  .bottom-nav{
    height:70px !important;
    min-height:70px !important;
    border-radius:20px 20px 0 0 !important;
    padding-left:3px !important;
    padding-right:3px !important;
  }

  .bottom-nav a{
    font-size:10.2px !important;
    gap:3px !important;
  }

  .bottom-nav a svg,
  .bottom-nav a i{
    width:18px !important;
    height:18px !important;
    font-size:18px !important;
  }

  .bottom-nav .bottom-main,
  .bottom-nav a.bottom-main,
  .bottom-nav a[href*="familias"]{
    width:58px !important;
    height:58px !important;
    min-width:58px !important;
    min-height:58px !important;
    border-radius:22px !important;
    transform:translateY(-13px) !important;
  }

  .footer-social-premium,
  .footer-social,
  .social-links{
    gap:26px !important;
  }
}

@media (max-width:340px){
  .bottom-nav a{
    font-size:9.2px !important;
  }

  .bottom-nav a svg,
  .bottom-nav a i{
    width:17px !important;
    height:17px !important;
  }

  .bottom-nav .bottom-main,
  .bottom-nav a.bottom-main,
  .bottom-nav a[href*="familias"]{
    width:54px !important;
    height:54px !important;
    min-width:54px !important;
    min-height:54px !important;
    transform:translateY(-12px) !important;
  }

  .footer-social-premium a svg,
  .footer-social-premium .social-premium svg,
  .footer-social a svg,
  .social-links a svg{
    width:22px !important;
    height:22px !important;
  }
}

@media (min-width:768px){
  body{
    background:#ffffff !important;
    padding-bottom:0 !important;
  }

  .footer-social-block{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:18px !important;
  }

  .footer-social-block h2{
    margin:0 !important;
  }

  .footer-social-premium{
    gap:24px !important;
  }
}


/* NS REMOVE FOOTER LEGAL BOTTOM FINAL */
.footer-redesign__bottom{display:none !important;height:0 !important;min-height:0 !important;margin:0 !important;padding:0 !important;border:0 !important;overflow:hidden !important;}
.site-footer .footer-redesign__bottom,.ns-footer .footer-redesign__bottom{display:none !important;}



/* =========================================================
   FOOTER FINAL RESPONSIVE - Nanas Seguras
   Diseño PC + Celular según maqueta enviada
   ========================================================= */

.footer-redesign.site-footer,
.site-footer.footer-redesign{
  background:#03045e !important;
  color:#fff !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  border-radius:0 !important;
  padding:46px clamp(18px,5vw,88px) 34px !important;
  overflow:hidden !important;
}

.footer-redesign a{
  color:#fff !important;
  text-decoration:none !important;
}

.footer-redesign__top,
.footer-redesign__middle,
.footer-redesign__legal-disclaimer{
  width:min(1180px,100%) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.footer-redesign__top{
  display:grid !important;
  grid-template-columns:1fr 1fr 1.35fr 1.1fr !important;
  gap:42px !important;
  align-items:start !important;
  padding:0 0 52px !important;
}

.footer-redesign .footer-col h2,
.footer-redesign .footer-social-block h2{
  color:#fff !important;
  font-size:20px !important;
  line-height:1.25 !important;
  font-weight:900 !important;
  margin:0 0 22px !important;
}

.footer-redesign .footer-col a,
.footer-redesign .footer-col p{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  color:#fff !important;
  font-size:16px !important;
  line-height:1.6 !important;
  font-weight:500 !important;
  margin:0 0 12px !important;
}

.footer-redesign .footer-col:not(.footer-contact) a::before{
  content:"" !important;
  width:9px !important;
  height:9px !important;
  min-width:9px !important;
  border-radius:999px !important;
  background:#ffafcc !important;
  display:inline-block !important;
}

.footer-redesign .footer-contact svg{
  width:25px !important;
  height:25px !important;
  min-width:25px !important;
  fill:none !important;
  stroke:#ffd166 !important;
  stroke-width:2.2 !important;
}

.footer-redesign .footer-contact strong{
  color:#fff !important;
  font-weight:900 !important;
}

.footer-redesign__middle{
  border-top:1px solid rgba(255,255,255,.22) !important;
  border-bottom:1px solid rgba(255,255,255,.22) !important;
  padding:34px 0 !important;
  display:grid !important;
  grid-template-columns:1fr 1.5fr 1fr !important;
  gap:28px !important;
  align-items:center !important;
}

.footer-book-card{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  justify-content:flex-start !important;
  width:max-content !important;
  max-width:100% !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.footer-book-card__icon{
  width:70px !important;
  height:70px !important;
  min-width:70px !important;
  fill:none !important;
  stroke:#ffd166 !important;
  stroke-width:3 !important;
}

.footer-book-card span{
  display:block !important;
  color:#fff !important;
  line-height:1.08 !important;
}

.footer-book-card strong{
  display:block !important;
  color:#fff !important;
  font-size:15px !important;
  font-weight:900 !important;
  line-height:1.05 !important;
  text-transform:none !important;
}

.footer-book-card em{
  display:block !important;
  margin-top:6px !important;
  color:#ffafcc !important;
  font-size:15px !important;
  font-style:normal !important;
  font-weight:900 !important;
}

.footer-company{
  text-align:center !important;
  color:#fff !important;
}

.footer-company p{
  color:#fff !important;
  margin:0 0 8px !important;
  font-size:15px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
}

.footer-company p:last-child{
  margin-bottom:0 !important;
}

.footer-social-block{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:22px !important;
  color:#fff !important;
}

.footer-social-block h2{
  margin:0 !important;
  white-space:nowrap !important;
}

.footer-social-premium,
.footer-social,
.social-links{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:28px !important;
}

.footer-social-premium a,
.footer-social-premium .social-premium,
.footer-social a,
.social-links a{
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  outline:0 !important;
  color:#fff !important;
  fill:#fff !important;
  transform:none !important;
  opacity:1 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  transition:transform .22s ease, opacity .22s ease !important;
}

.footer-social-premium a svg,
.footer-social-premium .social-premium svg,
.footer-social a svg,
.social-links a svg,
.footer-social-premium a i,
.footer-social a i,
.social-links a i{
  width:25px !important;
  height:25px !important;
  font-size:25px !important;
  color:#fff !important;
  fill:#fff !important;
  stroke:none !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.footer-social-premium a:hover,
.footer-social a:hover,
.social-links a:hover{
  transform:translateY(-2px) scale(1.06) !important;
  opacity:.86 !important;
  color:#fff !important;
  fill:#fff !important;
}

.footer-redesign__legal-disclaimer{
  display:block !important;
  height:auto !important;
  min-height:0 !important;
  visibility:visible !important;
  opacity:1 !important;
  overflow:visible !important;
  border:0 !important;
  padding:28px 0 0 !important;
  margin-top:0 !important;
  text-align:center !important;
  color:#fff !important;
}

.footer-redesign__legal-disclaimer p{
  color:#fff !important;
  font-size:14px !important;
  line-height:1.6 !important;
  font-weight:500 !important;
  margin:0 0 8px !important;
}

.footer-redesign__bottom{
  display:none !important;
}

/* Menú móvil inferior estable */
.bottom-nav{
  box-sizing:border-box !important;
}

@media (min-width:768px){
  .bottom-nav{
    display:none !important;
  }
}

@media (max-width:767px){
  html,body{
    overflow-x:hidden !important;
  }

  body{
    padding-bottom:calc(78px + env(safe-area-inset-bottom)) !important;
    background:#fff !important;
  }

  .footer-redesign.site-footer,
  .site-footer.footer-redesign{
    padding:26px 22px calc(96px + env(safe-area-inset-bottom)) !important;
  }

  .footer-redesign__top{
    display:block !important;
    padding:0 0 18px !important;
  }

  .footer-redesign .footer-col{
    border-bottom:1px solid rgba(255,255,255,.18) !important;
    padding:0 !important;
    margin:0 !important;
  }

  .footer-redesign .footer-col h2{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    margin:0 !important;
    padding:14px 0 !important;
    font-size:16px !important;
    line-height:1.2 !important;
  }

  .footer-redesign .footer-col h2::after{
    content:"⌄" !important;
    color:#ffafcc !important;
    font-size:24px !important;
    line-height:1 !important;
    font-weight:400 !important;
  }

  .footer-redesign .footer-col a,
  .footer-redesign .footer-col p{
    display:none !important;
  }

  .footer-redesign__middle{
    display:block !important;
    padding:24px 0 24px !important;
    border-top:0 !important;
    border-bottom:1px solid rgba(255,255,255,.20) !important;
    text-align:center !important;
  }

  .footer-book-card{
    justify-content:center !important;
    width:100% !important;
    gap:12px !important;
    margin:0 auto 26px !important;
  }

  .footer-book-card__icon{
    width:58px !important;
    height:58px !important;
    min-width:58px !important;
  }

  .footer-book-card strong{
    font-size:14px !important;
  }

  .footer-book-card em{
    font-size:14px !important;
    margin-top:4px !important;
  }

  .footer-company{
    margin:0 auto 26px !important;
    max-width:330px !important;
  }

  .footer-company p{
    font-size:13.5px !important;
    line-height:1.45 !important;
    margin-bottom:7px !important;
  }

  .footer-social-block{
    display:block !important;
    text-align:center !important;
  }

  .footer-social-block h2{
    font-size:18px !important;
    margin:0 0 16px !important;
  }

  .footer-social-premium,
  .footer-social,
  .social-links{
    gap:34px !important;
  }

  .footer-social-premium a svg,
  .footer-social-premium .social-premium svg,
  .footer-social a svg,
  .social-links a svg,
  .footer-social-premium a i,
  .footer-social a i,
  .social-links a i{
    width:24px !important;
    height:24px !important;
    font-size:24px !important;
  }

  .footer-redesign__legal-disclaimer{
    padding:22px 8px 0 !important;
  }

  .footer-redesign__legal-disclaimer p{
    font-size:12.4px !important;
    line-height:1.55 !important;
    margin-bottom:8px !important;
  }

  .bottom-nav{
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    width:100% !important;
    height:78px !important;
    min-height:78px !important;
    padding:9px 8px calc(8px + env(safe-area-inset-bottom)) !important;
    background:#fff !important;
    border-radius:24px 24px 0 0 !important;
    box-shadow:0 -8px 28px rgba(0,0,0,.12) !important;
    display:grid !important;
    grid-template-columns:repeat(5,1fr) !important;
    align-items:center !important;
    z-index:99999 !important;
    margin:0 !important;
    border:0 !important;
  }

  .bottom-nav a{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:4px !important;
    color:#03045e !important;
    font-size:11px !important;
    line-height:1 !important;
    font-weight:800 !important;
    text-decoration:none !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    min-width:0 !important;
  }

  .bottom-nav a svg{
    width:20px !important;
    height:20px !important;
    fill:none !important;
    stroke:#ffd166 !important;
    stroke-width:2.2 !important;
  }

  .bottom-nav a .wa-icon,
  .bottom-nav a[href*="wa.me"] svg{
    fill:#25D366 !important;
    stroke:#25D366 !important;
  }

  .bottom-nav a.bottom-main,
  .bottom-nav a[href*="familias"]{
    width:64px !important;
    height:64px !important;
    min-width:64px !important;
    min-height:64px !important;
    margin:0 auto !important;
    border-radius:24px !important;
    background:#ffafcc !important;
    box-shadow:0 9px 28px rgba(255,175,204,.42) !important;
    transform:translateY(-18px) !important;
  }

  .bottom-nav a.bottom-main svg,
  .bottom-nav a[href*="familias"] svg{
    stroke:#03045e !important;
    fill:none !important;
  }
}

@media (max-width:390px){
  .footer-redesign.site-footer,
  .site-footer.footer-redesign{
    padding-left:18px !important;
    padding-right:18px !important;
  }

  .footer-company{
    max-width:300px !important;
  }

  .footer-company p{
    font-size:12.5px !important;
  }

  .footer-redesign__legal-disclaimer p{
    font-size:11.8px !important;
  }

  .bottom-nav{
    height:74px !important;
    min-height:74px !important;
    padding-left:4px !important;
    padding-right:4px !important;
    border-radius:22px 22px 0 0 !important;
  }

  .bottom-nav a{
    font-size:10.2px !important;
    gap:3px !important;
  }

  .bottom-nav a svg{
    width:18px !important;
    height:18px !important;
  }

  .bottom-nav a.bottom-main,
  .bottom-nav a[href*="familias"]{
    width:60px !important;
    height:60px !important;
    min-width:60px !important;
    min-height:60px !important;
    transform:translateY(-16px) !important;
  }
}

@media (max-width:340px){
  .footer-redesign.site-footer,
  .site-footer.footer-redesign{
    padding-left:14px !important;
    padding-right:14px !important;
  }

  .footer-social-premium,
  .footer-social,
  .social-links{
    gap:28px !important;
  }

  .bottom-nav a{
    font-size:9.2px !important;
  }

  .bottom-nav a svg{
    width:17px !important;
    height:17px !important;
  }

  .bottom-nav a.bottom-main,
  .bottom-nav a[href*="familias"]{
    width:56px !important;
    height:56px !important;
    min-width:56px !important;
    min-height:56px !important;
  }
}



/* =========================================================
   FOOTER FINAL SIN ACORDEONES - RESPONSIVE PC/CELULAR
   Fecha: 2026-06-07
   Objetivo: que en celular se vea como PC, pero apilado.
   ========================================================= */

.footer-redesign,
.site-footer.footer-redesign{
  background:#03045e !important;
  color:#ffffff !important;
}

.footer-redesign__top{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:54px !important;
  align-items:start !important;
}

.footer-redesign .footer-col{
  display:block !important;
  border:0 !important;
  margin:0 !important;
  padding:0 !important;
}

.footer-redesign .footer-col h2{
  display:block !important;
  color:#ffffff !important;
  font-weight:900 !important;
  line-height:1.2 !important;
}

.footer-redesign .footer-col h2::after{
  content:none !important;
  display:none !important;
}

.footer-redesign .footer-col a,
.footer-redesign .footer-col p{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  height:auto !important;
  overflow:visible !important;
  color:#ffffff !important;
}

.footer-redesign .footer-col:not(.footer-contact) a::before{
  content:"" !important;
  width:8px !important;
  height:8px !important;
  min-width:8px !important;
  border-radius:50% !important;
  background:#ffafcc !important;
  display:inline-block !important;
  margin-right:12px !important;
  transform:translateY(8px) !important;
}

.footer-contact svg{
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  stroke:#ffd166 !important;
  fill:none !important;
}

.footer-redesign__middle{
  display:grid !important;
  grid-template-columns:minmax(180px,1fr) minmax(360px,1.6fr) minmax(210px,1fr) !important;
  gap:34px !important;
  align-items:center !important;
  border-top:1px solid rgba(255,255,255,.20) !important;
  border-bottom:1px solid rgba(255,255,255,.20) !important;
}

.footer-book-card{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:14px !important;
  text-align:left !important;
}

.footer-company{
  text-align:center !important;
}

.footer-social-block{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:22px !important;
  text-align:left !important;
}

.footer-social-block h2{
  margin:0 !important;
  line-height:1 !important;
  color:#ffffff !important;
  font-weight:900 !important;
}

.footer-social-premium{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:center !important;
  gap:26px !important;
  line-height:1 !important;
}

.footer-social-premium a,
.footer-social-premium .social-premium{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  min-height:28px !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
  color:#ffffff !important;
  fill:#ffffff !important;
  transition:transform .22s ease, opacity .22s ease !important;
}

.footer-social-premium a svg,
.footer-social-premium .social-premium svg{
  width:24px !important;
  height:24px !important;
  display:block !important;
  fill:#ffffff !important;
  color:#ffffff !important;
  stroke:none !important;
}

.footer-social-premium a:hover{
  transform:translateY(-2px) scale(1.06) !important;
  opacity:.86 !important;
}

/* Celular: SIN ACORDEONES, todo visible, apilado y centrado */
@media (max-width:767px){
  .footer-redesign.site-footer,
  .site-footer.footer-redesign{
    padding:34px 22px calc(92px + env(safe-area-inset-bottom)) !important;
  }

  .footer-redesign__top{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:24px !important;
    padding:0 0 26px !important;
    text-align:left !important;
  }

  .footer-redesign .footer-col{
    border-bottom:0 !important;
    padding:0 !important;
    margin:0 !important;
  }

  .footer-redesign .footer-col h2{
    display:block !important;
    padding:0 !important;
    margin:0 0 14px !important;
    font-size:20px !important;
    line-height:1.15 !important;
    text-align:left !important;
  }

  .footer-redesign .footer-col h2::after{
    content:none !important;
    display:none !important;
  }

  .footer-redesign .footer-col a,
  .footer-redesign .footer-col p{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:0 !important;
    margin:0 0 12px !important;
    padding:0 !important;
    font-size:16px !important;
    line-height:1.45 !important;
    text-align:left !important;
  }

  .footer-redesign .footer-col:not(.footer-contact) a::before{
    width:8px !important;
    height:8px !important;
    min-width:8px !important;
    margin-right:12px !important;
    transform:translateY(8px) !important;
  }

  .footer-contact a,
  .footer-contact p{
    align-items:center !important;
  }

  .footer-contact svg{
    width:24px !important;
    height:24px !important;
    min-width:24px !important;
    margin-right:10px !important;
  }

  .footer-redesign__middle{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:20px !important;
    padding:28px 0 24px !important;
    border-top:1px solid rgba(255,255,255,.20) !important;
    border-bottom:1px solid rgba(255,255,255,.20) !important;
    text-align:center !important;
  }

  .footer-book-card{
    justify-content:center !important;
    text-align:left !important;
    width:auto !important;
    margin:0 auto !important;
  }

  .footer-book-card__icon{
    width:58px !important;
    height:58px !important;
    min-width:58px !important;
  }

  .footer-company{
    max-width:100% !important;
    margin:0 auto !important;
    text-align:center !important;
  }

  .footer-company p{
    font-size:14px !important;
    line-height:1.45 !important;
    margin:0 0 8px !important;
    text-align:center !important;
  }

  .footer-social-block{
    display:block !important;
    text-align:center !important;
    margin:0 auto !important;
  }

  .footer-social-block h2{
    display:block !important;
    margin:0 0 15px !important;
    font-size:22px !important;
    text-align:center !important;
  }

  .footer-social-premium{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:center !important;
    gap:30px !important;
    width:100% !important;
  }

  .footer-social-premium a,
  .footer-social-premium .social-premium{
    width:28px !important;
    height:28px !important;
    min-width:28px !important;
    min-height:28px !important;
    background:transparent !important;
    border-radius:0 !important;
    box-shadow:none !important;
  }

  .footer-social-premium a svg,
  .footer-social-premium .social-premium svg{
    width:25px !important;
    height:25px !important;
    fill:#ffffff !important;
  }

  .footer-redesign__legal-disclaimer{
    display:block !important;
    padding:22px 4px 0 !important;
    margin:0 !important;
    text-align:center !important;
    border:0 !important;
  }

  .footer-redesign__legal-disclaimer p{
    display:block !important;
    color:#ffffff !important;
    font-size:12.5px !important;
    line-height:1.55 !important;
    margin:0 0 7px !important;
    text-align:center !important;
  }
}

@media (max-width:390px){
  .footer-redesign.site-footer,
  .site-footer.footer-redesign{
    padding-left:18px !important;
    padding-right:18px !important;
  }

  .footer-redesign .footer-col h2{
    font-size:19px !important;
  }

  .footer-redesign .footer-col a,
  .footer-redesign .footer-col p{
    font-size:15px !important;
  }

  .footer-company p{
    font-size:13px !important;
  }

  .footer-redesign__legal-disclaimer p{
    font-size:11.8px !important;
  }

  .footer-social-premium{
    gap:28px !important;
  }
}

@media (max-width:340px){
  .footer-redesign.site-footer,
  .site-footer.footer-redesign{
    padding-left:14px !important;
    padding-right:14px !important;
  }

  .footer-redesign .footer-col h2{
    font-size:18px !important;
  }

  .footer-redesign .footer-col a,
  .footer-redesign .footer-col p{
    font-size:14px !important;
  }

  .footer-social-premium{
    gap:24px !important;
  }
}

/* =========================================================
   FOOTER FINAL AJUSTE 20260608
   - Sin acordeones en móvil
   - Puntos/bullets más pequeños
   - Disclaimer legal más pequeño y delgado
   - Separación footer / menú móvil 3-4px
   - Redes sociales blancas, alineadas y sin círculos
   ========================================================= */

.footer-redesign .footer-col h2::after,
.footer-redesign .footer-col h2::before{
  content:none !important;
  display:none !important;
}

.footer-redesign .footer-col a,
.footer-redesign .footer-col p{
  max-height:none !important;
  height:auto !important;
  overflow:visible !important;
  opacity:1 !important;
  visibility:visible !important;
}

.footer-redesign .footer-col:not(.footer-contact) a::before{
  content:"" !important;
  display:inline-block !important;
  width:5px !important;
  height:5px !important;
  min-width:5px !important;
  border-radius:999px !important;
  background:#ffafcc !important;
  margin-right:10px !important;
  transform:translateY(-1px) !important;
  box-shadow:none !important;
}

.footer-social-premium,
.footer-social-block .footer-social-premium{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:28px !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1 !important;
}

.footer-social-premium a,
.footer-social-premium .social-premium{
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  outline:0 !important;
  color:#ffffff !important;
  fill:#ffffff !important;
  transition:transform .2s ease, opacity .2s ease !important;
}

.footer-social-premium a svg,
.footer-social-premium .social-premium svg{
  width:23px !important;
  height:23px !important;
  display:block !important;
  color:#ffffff !important;
  fill:#ffffff !important;
  stroke:none !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.footer-social-premium a:hover,
.footer-social-premium .social-premium:hover{
  transform:translateY(-2px) scale(1.04) !important;
  opacity:.86 !important;
  background:transparent !important;
  color:#ffffff !important;
  fill:#ffffff !important;
  box-shadow:none !important;
}

.footer-redesign__legal-disclaimer{
  display:block !important;
  border-top:1px solid rgba(255,255,255,.16) !important;
  margin-top:20px !important;
  padding:16px 8px 0 !important;
  text-align:center !important;
}

.footer-redesign__legal-disclaimer p{
  color:rgba(255,255,255,.86) !important;
  font-size:11px !important;
  line-height:1.45 !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  margin:0 auto 5px !important;
  max-width:920px !important;
  text-align:center !important;
}

@media (min-width:768px){
  .footer-redesign__middle{
    display:grid !important;
    grid-template-columns:1fr 1.8fr 1fr !important;
    align-items:center !important;
    gap:28px !important;
  }
  .footer-social-block{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:18px !important;
    text-align:right !important;
  }
  .footer-social-block h2{
    margin:0 !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }
}

@media (max-width:767px){
  html,body{
    overflow-x:hidden !important;
  }

  .footer-redesign.site-footer,
  .site-footer.footer-redesign{
    padding:32px 22px calc(82px + env(safe-area-inset-bottom)) !important;
  }

  .footer-redesign__top{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:20px !important;
    padding:0 0 26px !important;
    text-align:left !important;
  }

  .footer-redesign .footer-col{
    display:block !important;
    border:0 !important;
    padding:0 !important;
    margin:0 !important;
  }

  .footer-redesign .footer-col h2{
    display:block !important;
    margin:0 0 11px !important;
    padding:0 !important;
    font-size:20px !important;
    line-height:1.16 !important;
    text-align:left !important;
    color:#ffffff !important;
  }

  .footer-redesign .footer-col a,
  .footer-redesign .footer-col p{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    width:100% !important;
    margin:0 0 8px !important;
    padding:0 !important;
    font-size:15.5px !important;
    line-height:1.35 !important;
    font-weight:400 !important;
    text-align:left !important;
    color:#ffffff !important;
  }

  .footer-redesign .footer-col:not(.footer-contact) a::before{
    width:5px !important;
    height:5px !important;
    min-width:5px !important;
    margin-right:10px !important;
    transform:none !important;
  }

  .footer-contact svg{
    width:20px !important;
    height:20px !important;
    min-width:20px !important;
    margin-right:9px !important;
    color:#ffd166 !important;
    stroke:#ffd166 !important;
  }

  .footer-redesign__middle{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
    padding:24px 0 18px !important;
    border-top:1px solid rgba(255,255,255,.16) !important;
    border-bottom:0 !important;
    text-align:center !important;
  }

  .footer-book-card{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    text-align:left !important;
    gap:12px !important;
    width:max-content !important;
    max-width:100% !important;
    margin:0 auto 4px !important;
  }

  .footer-book-card__icon{
    width:52px !important;
    height:52px !important;
    min-width:52px !important;
  }

  .footer-book-card strong{
    font-size:13.5px !important;
    line-height:1.05 !important;
  }

  .footer-book-card em{
    font-size:13.5px !important;
    line-height:1.1 !important;
    margin-top:3px !important;
  }

  .footer-company{
    max-width:320px !important;
    margin:0 auto !important;
    text-align:center !important;
  }

  .footer-company p{
    font-size:13px !important;
    line-height:1.4 !important;
    font-weight:600 !important;
    margin:0 0 6px !important;
    text-align:center !important;
  }

  .footer-social-block{
    display:block !important;
    text-align:center !important;
    margin:2px auto 0 !important;
    width:100% !important;
  }

  .footer-social-block h2{
    display:block !important;
    margin:0 0 14px !important;
    font-size:22px !important;
    line-height:1.1 !important;
    text-align:center !important;
  }

  .footer-social-premium,
  .footer-social-block .footer-social-premium{
    justify-content:center !important;
    gap:36px !important;
  }

  .footer-social-premium a svg,
  .footer-social-premium .social-premium svg{
    width:24px !important;
    height:24px !important;
  }

  .footer-redesign__legal-disclaimer{
    margin-top:16px !important;
    padding:14px 6px 0 !important;
    border-top:1px solid rgba(255,255,255,.16) !important;
  }

  .footer-redesign__legal-disclaimer p{
    font-size:10.2px !important;
    line-height:1.35 !important;
    font-weight:400 !important;
    margin:0 auto 4px !important;
    max-width:330px !important;
  }

  .bottom-nav{
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    width:100% !important;
    height:78px !important;
    min-height:78px !important;
    padding:9px 8px calc(8px + env(safe-area-inset-bottom)) !important;
    margin:0 !important;
    background:#ffffff !important;
    border:0 !important;
    border-radius:24px 24px 0 0 !important;
    box-shadow:0 -8px 24px rgba(0,0,0,.10) !important;
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    align-items:center !important;
    z-index:99999 !important;
  }
}

@media (max-width:390px){
  .footer-redesign.site-footer,
  .site-footer.footer-redesign{
    padding-left:18px !important;
    padding-right:18px !important;
    padding-bottom:calc(78px + env(safe-area-inset-bottom)) !important;
  }

  .footer-redesign .footer-col h2{
    font-size:19px !important;
  }

  .footer-redesign .footer-col a,
  .footer-redesign .footer-col p{
    font-size:14.5px !important;
  }

  .footer-company{
    max-width:292px !important;
  }

  .footer-company p{
    font-size:12.2px !important;
  }

  .footer-redesign__legal-disclaimer p{
    font-size:9.6px !important;
    line-height:1.32 !important;
    max-width:296px !important;
  }

  .bottom-nav{
    height:74px !important;
    min-height:74px !important;
    border-radius:22px 22px 0 0 !important;
  }
}

@media (max-width:340px){
  .footer-redesign.site-footer,
  .site-footer.footer-redesign{
    padding-left:14px !important;
    padding-right:14px !important;
    padding-bottom:calc(74px + env(safe-area-inset-bottom)) !important;
  }

  .footer-redesign .footer-col h2{
    font-size:18px !important;
  }

  .footer-redesign .footer-col a,
  .footer-redesign .footer-col p{
    font-size:13.4px !important;
  }

  .footer-social-premium,
  .footer-social-block .footer-social-premium{
    gap:30px !important;
  }

  .footer-redesign__legal-disclaimer p{
    font-size:9.2px !important;
    max-width:270px !important;
  }
}

/* NS FINAL FOOTER OVERRIDE - bullets alineados, sin acordeones, divisor único */
.footer-redesign .footer-col h2::after,.footer-redesign .footer-col h2::before{content:none!important;display:none!important}
.footer-redesign .footer-col:not(.footer-contact) a{display:grid!important;grid-template-columns:7px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;list-style:none!important;text-align:left!important}
.footer-redesign .footer-col:not(.footer-contact) a::before{content:""!important;display:block!important;width:7px!important;height:7px!important;min-width:7px!important;border-radius:50%!important;background:#ffafcc!important;position:static!important;margin:0!important;transform:none!important}
.footer-redesign__middle{border-top:1px solid rgba(255,255,255,.18)!important;border-bottom:0!important}
.footer-redesign__legal-disclaimer{border-top:1px solid rgba(255,255,255,.18)!important;padding-top:14px!important}
.footer-redesign .footer-social-block{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:20px!important;white-space:nowrap!important}
.footer-redesign .footer-social-block h2{margin:0!important;line-height:1!important}
.footer-redesign .footer-social-premium{display:flex!important;align-items:center!important;justify-content:center!important;gap:24px!important;margin:0!important;padding:0!important}
.footer-redesign .footer-social-premium a.social-premium{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;width:25px!important;height:25px!important;min-width:25px!important;min-height:25px!important;padding:0!important;margin:0!important;color:#fff!important;fill:#fff!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
.footer-redesign .footer-social-premium a.social-premium svg{width:25px!important;height:25px!important;fill:#fff!important;color:#fff!important;display:block!important;stroke:none!important}
@media(max-width:767px){.footer-redesign.site-footer,.site-footer.footer-redesign{padding-bottom:calc(82px + env(safe-area-inset-bottom))!important}.footer-redesign .footer-col{border-bottom:0!important;margin-bottom:24px!important}.footer-redesign .footer-col h2{display:block!important;padding:0!important;margin:0 0 12px!important;text-align:left!important}.footer-redesign .footer-col a,.footer-redesign .footer-col p{display:grid!important;max-height:none!important;height:auto!important;overflow:visible!important;opacity:1!important;visibility:visible!important}.footer-redesign .footer-contact a,.footer-redesign .footer-contact p{display:flex!important;align-items:flex-start!important;gap:10px!important}.footer-redesign__middle{border-top:1px solid rgba(255,255,255,.18)!important;border-bottom:0!important}.footer-redesign .footer-social-block{display:block!important;text-align:center!important;white-space:normal!important}.footer-redesign .footer-social-block h2{text-align:center!important;margin:0 0 16px!important}.footer-redesign .footer-social-premium{justify-content:center!important;gap:42px!important}.footer-redesign .footer-social-premium a.social-premium{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important}.footer-redesign .footer-social-premium a.social-premium svg{width:30px!important;height:30px!important}.footer-redesign__legal-disclaimer p{font-size:10.8px!important;line-height:1.35!important;font-weight:400!important;margin-bottom:5px!important}}


/* NS: ocultar distritos y seo-local segun solicitud */
.seo-local{display:none!important;visibility:hidden!important;height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;}
/* FIX 2026-06-08: mostrar distritos y quitar solo el fondo celeste del bloque */
.districts-section{
  display:block !important;
  background:transparent !important;
  background-color:transparent !important;
}
.districts-section::before,
.districts-section::after{
  display:none !important;
  content:none !important;
}


/* =========================================================
   FIX DISTRITOS 2026-06-08
   Mantiene visible el bloque, elimina fondo celeste del bloque/tarjetas.
   ========================================================= */
body .districts-section,
body section.districts-section,
body #distritos{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  background:#ffffff !important;
  background-color:#ffffff !important;
  background-image:none !important;
}
body .districts-section .section-heading,
body .districts-section .district-grid{
  background:transparent !important;
}
body .districts-section .district-card,
body .district-grid .district-card,
body .district-grid a{
  background:#ffffff !important;
  background-color:#ffffff !important;
  background-image:none !important;
}
@media (max-width:767px){
  body .districts-section{
    padding-left:18px !important;
    padding-right:18px !important;
  }
}

/* cache marker district clean final */


/* ==========================================================
   FIX QUIRURGICO BLOQUE AMARILLO "COMO FUNCIONA" - 2026-06-08
   Reduce espacios excesivos en PC y móvil, y evita que los números
   choquen con las tarjetas. No toca footer, distritos ni menú APP.
   ========================================================== */
body #proceso.process-wrap,
body section.process-wrap{
  min-height:auto !important;
  height:auto !important;
  padding-top:56px !important;
  padding-bottom:62px !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
  overflow:visible !important;
}

body #proceso.process-wrap .section-heading,
body section.process-wrap .section-heading{
  margin:0 auto 32px !important;
  padding:0 16px !important;
}

body #proceso.process-wrap .section-heading h2,
body section.process-wrap .section-heading h2{
  margin:0 !important;
  line-height:1.12 !important;
}

body #proceso .process-grid,
body .process-wrap .process-grid{
  width:min(1240px,92vw) !important;
  max-width:1240px !important;
  margin:0 auto !important;
  padding-top:18px !important;
  padding-bottom:0 !important;
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:14px !important;
  align-items:stretch !important;
  overflow:visible !important;
}

body #proceso .process-card,
body .process-wrap .process-card{
  position:relative !important;
  min-height:148px !important;
  height:auto !important;
  padding:40px 16px 22px !important;
  margin:0 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  text-align:center !important;
  overflow:visible !important;
}

body #proceso .process-card span,
body .process-wrap .process-card span{
  position:absolute !important;
  top:0 !important;
  left:50% !important;
  transform:translate(-50%,-50%) !important;
  margin:0 !important;
  width:34px !important;
  height:34px !important;
  min-width:34px !important;
  min-height:34px !important;
  border-width:4px !important;
  z-index:3 !important;
}

body #proceso .process-card h3,
body .process-wrap .process-card h3{
  margin:0 0 10px !important;
  line-height:1.16 !important;
}

body #proceso .process-card p,
body .process-wrap .process-card p{
  margin:0 !important;
  line-height:1.45 !important;
}

@media (max-width:1024px){
  body #proceso .process-grid,
  body .process-wrap .process-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:18px 14px !important;
    width:min(960px,92vw) !important;
  }
}

@media (max-width:767px){
  body #proceso.process-wrap,
  body section.process-wrap{
    padding-top:48px !important;
    padding-bottom:56px !important;
  }

  body #proceso.process-wrap .section-heading,
  body section.process-wrap .section-heading{
    margin-bottom:28px !important;
  }

  body #proceso .process-grid,
  body .process-wrap .process-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:18px 14px !important;
    width:calc(100% - 32px) !important;
    max-width:520px !important;
    padding-top:16px !important;
  }

  body #proceso .process-card,
  body .process-wrap .process-card{
    min-height:142px !important;
    padding:38px 12px 18px !important;
    border-radius:18px !important;
  }

  body #proceso .process-card span,
  body .process-wrap .process-card span{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    min-height:34px !important;
    font-size:15px !important;
  }

  body #proceso .process-card h3,
  body .process-wrap .process-card h3{
    font-size:16px !important;
    line-height:1.12 !important;
    margin-bottom:8px !important;
  }

  body #proceso .process-card p,
  body .process-wrap .process-card p{
    font-size:13px !important;
    line-height:1.35 !important;
  }
}

@media (max-width:380px){
  body #proceso.process-wrap,
  body section.process-wrap{
    padding-top:44px !important;
    padding-bottom:50px !important;
  }

  body #proceso .process-grid,
  body .process-wrap .process-grid{
    gap:16px 10px !important;
    width:calc(100% - 24px) !important;
  }

  body #proceso .process-card,
  body .process-wrap .process-card{
    min-height:132px !important;
    padding:34px 9px 16px !important;
  }

  body #proceso .process-card h3,
  body .process-wrap .process-card h3{
    font-size:14px !important;
  }

  body #proceso .process-card p,
  body .process-wrap .process-card p{
    font-size:11.5px !important;
  }
}


/* =========================================================
   NS FINAL ESTABLE - DISTRITOS + PROCESO
   Controla solo estas secciones para evitar parches previos.
   ========================================================= */

/* ---------- Distritos ---------- */
body #distritos.districts-section{
  background:#ffffff !important;
  padding:84px 24px 72px !important;
  margin:0 !important;
  overflow:visible !important;
}
body #distritos .section-heading{
  max-width:860px !important;
  margin:0 auto 42px !important;
  text-align:center !important;
}
body #distritos .section-heading h2{
  margin:0 0 14px !important;
  color:#03045e !important;
  font:800 clamp(32px,4vw,52px)/1.05 Manrope,Inter,sans-serif !important;
}
body #distritos .district-intro,
body #distritos .section-heading p{
  max-width:760px !important;
  margin:0 auto !important;
  color:#24324f !important;
  font:500 17px/1.65 Inter,sans-serif !important;
}
body #distritos .district-grid{
  width:min(1160px,92vw) !important;
  max-width:1160px !important;
  margin:0 auto 32px !important;
  padding:0 !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:24px !important;
  align-items:stretch !important;
}
body #distritos .district-card{
  min-height:270px !important;
  height:auto !important;
  padding:28px 22px 24px !important;
  border-radius:24px !important;
  background:#ffffff !important;
  border:1px solid rgba(3,4,94,.10) !important;
  box-shadow:0 22px 55px rgba(3,4,94,.08) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-align:center !important;
  gap:12px !important;
  overflow:hidden !important;
  color:#03045e !important;
}
body #distritos .district-card::before,
body #distritos .district-card::after{
  display:none !important;
}
body #distritos .district-icon{
  width:68px !important;
  height:68px !important;
  min-width:68px !important;
  border-radius:22px !important;
  display:grid !important;
  place-items:center !important;
  background:#fff7fb !important;
  color:#ff5f9c !important;
  box-shadow:0 14px 30px rgba(255,175,204,.22) !important;
  margin:0 auto 4px !important;
}
body #distritos .district-icon svg{
  width:32px !important;
  height:32px !important;
  stroke:#ff5f9c !important;
  fill:none !important;
  stroke-width:2 !important;
}
body #distritos .district-card h3{
  margin:0 !important;
  color:#03045e !important;
  font:800 21px/1.2 Manrope,Inter,sans-serif !important;
}
body #distritos .district-card p{
  margin:0 !important;
  color:#24324f !important;
  font:500 15px/1.48 Inter,sans-serif !important;
}
body #distritos .district-link{
  margin-top:auto !important;
  width:100% !important;
  min-height:46px !important;
  padding:0 18px !important;
  border-radius:14px !important;
  background:#ffafcc !important;
  border:1px solid #ffafcc !important;
  color:#03045e !important;
  font:800 14px/1 Inter,sans-serif !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-decoration:none !important;
  box-shadow:0 12px 24px rgba(255,175,204,.25) !important;
}
body #distritos .district-link:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 16px 30px rgba(255,175,204,.35) !important;
}
body #distritos .district-actions{
  width:min(720px,92vw) !important;
  margin:0 auto !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:14px !important;
  align-items:center !important;
  justify-content:center !important;
}
body #distritos .district-actions .btn{
  min-height:52px !important;
  border-radius:16px !important;
  padding:0 26px !important;
  font:800 15px/1 Inter,sans-serif !important;
}
body #distritos .district-actions .btn-secondary{
  background:#ffafcc !important;
  color:#03045e !important;
  border:1px solid #ffafcc !important;
}
body #distritos .district-actions .btn-whatsapp{
  background:#22c55e !important;
  color:#fff !important;
  border:1px solid #22c55e !important;
  box-shadow:0 16px 34px rgba(34,197,94,.24) !important;
}

/* ---------- Proceso / bloque amarillo ---------- */
body #proceso.process-wrap,
body section#proceso.process-wrap{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:76px 24px 78px !important;
  background:#ffd166 !important;
  overflow:visible !important;
  min-height:0 !important;
  height:auto !important;
}
body #proceso.process-wrap::before,
body #proceso.process-wrap::after{
  display:none !important;
}
body #proceso .section-heading{
  max-width:900px !important;
  margin:0 auto 42px !important;
  text-align:center !important;
}
body #proceso .section-heading h2{
  margin:0 !important;
  color:#03045e !important;
  font:800 clamp(32px,4vw,48px)/1.08 Manrope,Inter,sans-serif !important;
  text-shadow:none !important;
}
body #proceso .process-grid{
  width:min(1260px,94vw) !important;
  max-width:1260px !important;
  margin:0 auto !important;
  padding:0 !important;
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:20px !important;
  align-items:stretch !important;
  overflow:visible !important;
}
body #proceso .process-card{
  position:relative !important;
  min-height:156px !important;
  height:auto !important;
  margin:0 !important;
  padding:42px 18px 24px !important;
  border-radius:20px !important;
  background:#fff !important;
  border:1px solid rgba(255,255,255,.95) !important;
  box-shadow:0 18px 45px rgba(3,4,94,.10) !important;
  text-align:center !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  overflow:visible !important;
  box-sizing:border-box !important;
}
body #proceso .process-card span{
  position:absolute !important;
  left:50% !important;
  top:0 !important;
  transform:translate(-50%,-50%) !important;
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  min-height:42px !important;
  border-radius:50% !important;
  display:grid !important;
  place-items:center !important;
  margin:0 !important;
  background:#b9e4f5 !important;
  color:#03045e !important;
  border:5px solid #ffffff !important;
  box-shadow:0 8px 18px rgba(3,4,94,.12) !important;
  font:800 18px/1 Inter,sans-serif !important;
  z-index:2 !important;
}
body #proceso .process-card h3{
  margin:0 0 10px !important;
  color:#03045e !important;
  font:800 18px/1.18 Manrope,Inter,sans-serif !important;
}
body #proceso .process-card p{
  margin:0 !important;
  color:#35405a !important;
  font:500 14px/1.45 Inter,sans-serif !important;
}

/* ---------- Responsive ---------- */
@media (min-width:1280px){
  body #distritos .district-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
}
@media (max-width:1100px){
  body #distritos .district-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  body #proceso .process-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;max-width:900px !important;gap:28px 18px !important;}
}
@media (max-width:767px){
  body #distritos.districts-section{
    padding:56px 16px 42px !important;
  }
  body #distritos .section-heading{
    margin-bottom:30px !important;
  }
  body #distritos .section-heading h2{
    font-size:clamp(32px,8vw,42px) !important;
  }
  body #distritos .district-intro,
  body #distritos .section-heading p{
    font-size:18px !important;
    line-height:1.55 !important;
  }
  body #distritos .district-grid{
    width:calc(100% - 18px) !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:18px !important;
    margin-bottom:26px !important;
  }
  body #distritos .district-card{
    min-height:254px !important;
    padding:22px 14px 18px !important;
    border-radius:20px !important;
    gap:10px !important;
  }
  body #distritos .district-icon{
    width:58px !important;
    height:58px !important;
    min-width:58px !important;
    border-radius:18px !important;
  }
  body #distritos .district-card h3{
    font-size:clamp(18px,4.8vw,22px) !important;
  }
  body #distritos .district-card p{
    font-size:clamp(13.5px,3.7vw,16px) !important;
    line-height:1.38 !important;
  }
  body #distritos .district-link{
    min-height:46px !important;
    font-size:14px !important;
  }
  body #distritos .district-actions{
    width:calc(100% - 52px) !important;
    flex-direction:column !important;
    gap:12px !important;
  }
  body #distritos .district-actions .btn{
    width:100% !important;
    min-height:56px !important;
  }

  body #proceso.process-wrap,
  body section#proceso.process-wrap{
    padding:54px 14px calc(112px + env(safe-area-inset-bottom,0px)) !important;
  }
  body #proceso .section-heading{
    margin-bottom:30px !important;
  }
  body #proceso .section-heading h2{
    font-size:clamp(30px,8vw,42px) !important;
    max-width:92vw !important;
  }
  body #proceso .process-grid{
    width:calc(100% - 46px) !important;
    max-width:430px !important;
    grid-template-columns:1fr !important;
    gap:28px !important;
    padding-bottom:0 !important;
  }
  body #proceso .process-card{
    min-height:132px !important;
    padding:38px 18px 22px !important;
    border-radius:20px !important;
  }
  body #proceso .process-card h3{
    font-size:clamp(20px,5.8vw,25px) !important;
    line-height:1.12 !important;
  }
  body #proceso .process-card p{
    font-size:clamp(15px,4.2vw,18px) !important;
    line-height:1.38 !important;
  }
}
@media (max-width:390px){
  body #distritos .district-grid{
    width:calc(100% - 20px) !important;
    gap:14px !important;
  }
  body #distritos .district-card{
    min-height:236px !important;
    padding:20px 10px 16px !important;
  }
  body #distritos .district-card p{
    font-size:13px !important;
  }
}

