/* ICAF responsive overrides (mobile-first) */
:root{
  --container-pad: 16px;
}

/* Ensure sensible box sizing */
*, *::before, *::after{ box-sizing:border-box; }

/* Media defaults */
img, video, iframe{ max-width:100%; height:auto; }
iframe{ width:100%; }

/* 960 grid -> fluid on small screens */
@media (max-width: 980px){
  .container_24{
    width:100% !important;
    padding-left: var(--container-pad);
    padding-right: var(--container-pad);
  }
  [class^="grid_"], [class*=" grid_"]{
    float:none !important;
    display:block !important;
    width:auto !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }
  .wrapper{ width:100% !important; }
}

/* Navigation: collapse menu on small screens */
.menu-toggle{
  display:none;
  width:100%;
  padding:12px 14px;
  border:0;
  background: rgba(0,0,0,.08);
  font: inherit;
  text-align:left;
  cursor:pointer;
}
.menu-toggle:focus{ outline:2px solid rgba(0,0,0,.35); outline-offset:2px; }

@media (max-width: 820px){
  nav.main-menu{ position:relative; }
  nav.main-menu .sf-menu{ display:none; }
  nav.main-menu.is-open .sf-menu{ display:block; }
  .menu-toggle{ display:block; }
  nav.main-menu .sf-menu li{
    float:none !important;
    width:100%;
  }
  nav.main-menu .sf-menu li a{
    display:block;
    padding:12px 14px;
  }
}

/* Contact form: make inputs comfortable on mobile */
@media (max-width: 820px){
  form input, form textarea{
    width:100% !important;
    max-width:100%;
    font-size:16px; /* avoids iOS zoom */
  }
  form textarea{ min-height: 140px; }
  .buttons span{ display:inline-block; margin-right:8px; margin-bottom:8px; }
}

/* Floating WhatsApp button */
.whatsapp-float{
  position:fixed;
  right:16px;
  bottom:16px;
  z-index:9999;
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-radius:999px;
  background:#25D366;
  color:#fff !important;
  text-decoration:none !important;
  box-shadow: 0 10px 25px rgba(0,0,0,.22);
  font-weight:600;
}
.whatsapp-float svg{ width:20px; height:20px; fill:#fff; }
.whatsapp-float span{ display:inline; }
@media (max-width: 520px){
  .whatsapp-float span{ display:none; }
}


/* Contact form styling */
.icaf-contact .field{ margin-bottom: 12px; }
.icaf-contact label{ display:block; margin-bottom: 6px; font-weight:600; }
.icaf-contact input, .icaf-contact textarea{
  width:100%;
  padding:10px 12px;
  border:1px solid rgba(0,0,0,.25);
  border-radius:6px;
  background:#fff;
}
.icaf-contact textarea{ min-height: 160px; resize: vertical; }
.icaf-contact .hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.form-status{ margin: 10px 0 14px; padding:10px 12px; border-radius:6px; display:none; }
.form-status.ok{ display:block; background: rgba(37, 211, 102, .12); border:1px solid rgba(37,211,102,.35); }
.form-status.err{ display:block; background: rgba(220, 53, 69, .10); border:1px solid rgba(220,53,69,.35); }


.map-responsive {
  position: relative;
  overflow: hidden;
  padding-bottom: 56.25%; /* 16:9 */
  height: 0;
}

.map-responsive iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* ===== FIX FOOTER HEIGHT & ALIGNMENT ===== */
footer {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    min-height: auto !important;
}

footer .container_24 {
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

footer .grid_7 {
    margin: 0 !important;
    padding: 0 !important;
    width: auto;
    float: none;
    text-align: center;
}

footer h4 {
    margin: 0 0 6px 0;
    font-size: 14px;
}

footer .tooltips {
    margin: 0;
    padding: 0;
}

footer .tooltips li {
    list-style: none;
    display: inline-block;
}



/* ===== FIX FOOTER HEIGHT & ALIGNMENT (STRONG OVERRIDE) ===== */
html body footer{
  padding: 14px 0 18px !important; /* mucho más chico que 60/70 del style.css */
}

html body footer h4{
  padding-top: 0 !important; /* en style.css tiene padding-top:17px */
  margin: 0 0 6px 0 !important;
}

/* Evitar layout viejo de "tooltips" (float + padding-right:70px) */
html body footer .tooltips,
html body footer .tooltips li{
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Centrado real del contenido del footer */
html body footer .container_24{
  display: flex !important;
  justify-content: center !important;
  align-items: flex-start !important; /* "parte alta" del footer */
}

html body footer .footer-whatsapp{
  float: none !important;
  width: auto !important;
  text-align: center !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Link WhatsApp del footer (simple, centrado) */
html body footer .footer-whatsapp-link{
  display: inline-block;
  padding: 6px 12px;
  color: #fff !important;
  text-decoration: underline;
  font-weight: 600;
}

/* Botón flotante: lo subimos un poco para que no quede “pegado” al borde */
html body .whatsapp-float{
  bottom: 24px !important;  /* antes 16px */
  right: 18px !important;
}
