.elementor-227 .elementor-element.elementor-element-5aa6d46{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-227 .elementor-element.elementor-element-4742636{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-227 .elementor-element.elementor-element-4742636.elementor-element{--flex-grow:0;--flex-shrink:1;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-4742636 *//* ================= FOOTER BASE ================= */

#jaceo-footer{
  background:#fff;
  font-family:Montserrat, system-ui, sans-serif;
  overflow-x:hidden;
}

#jaceo-footer *{
  box-sizing:border-box;
}

/* ================= GRID ================= */

#jaceo-footer-wrap{
  max-width:1800px;
  margin:0 auto;
  padding:0px 5% 70px;
  display:grid;
  grid-template-columns:1.3fr 1fr 1fr 1.1fr;
  gap:48px;
}

/* ================= CARD ================= */

.jaceo-footer-card{
  background:#ffffff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:22px;
  padding:40px;
}

/* ================= BRAND ================= */

.jaceo-footer-card.brand{
  text-align:center;
}

.jaceo-footer-card.brand img{
  height:70px;
  margin-bottom:20px;
}

.jaceo-footer-card.brand p{
  font-size:16px;
  line-height:1.7;
  margin-bottom:22px;
}

.social{
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
}

.social a{
  font-size:13px;
  font-weight:700;
  color:#a21014;
  text-decoration:none;
}

/* ================= TITLES ================= */

.jaceo-footer-card h4{
  font-family:Poppins, system-ui, sans-serif;
  font-size:15px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.12em;
  margin-bottom:18px;
}

/* ================= LISTS ================= */

.jaceo-footer-card ul{
  list-style:none;
  padding:0;
  margin:0;
}

.jaceo-footer-card li{
  font-size:15px;
  line-height:1.55;
  margin-bottom:10px;
}

/* ================= CONTACT ================= */

.jaceo-footer-card a{
  color:#1f1f1f;
  text-decoration:none;
}

.hours{
  margin-top:16px;
  font-size:14px;
  line-height:1.6;
}

/* ================= COVERAGE ================= */

.coverage p{
  font-size:15px;
  line-height:1.65;
}

/* ================= BOTTOM ================= */

#jaceo-footer-bottom{
  border-top:1px solid rgba(0,0,0,.08);
  padding:22px 5%;
  text-align:center;
  font-size:13px;
  color:#555;
}

#jaceo-footer-bottom a{
  color:#a21014;
  font-weight:700;
  text-decoration:none;
}

/* ================= RESPONSIVE ================= */

@media (max-width:1200px){
  #jaceo-footer-wrap{
    grid-template-columns:1fr 1fr;
    gap:36px;
  }
}

@media (max-width:768px){
  #jaceo-footer-wrap{
    grid-template-columns:1fr;
    padding:60px 5% 50px;
    gap:28px;
  }

  .jaceo-footer-card{
    padding:26px;
  }

  .jaceo-footer-card h4{
    font-size:13px;
    margin-bottom:14px;
  }

  .jaceo-footer-card li,
  .coverage p,
  .jaceo-footer-card.brand p{
    font-size:14px;
    line-height:1.5;
  }

  .hours{
    font-size:13px;
  }
}


/* ================= ICON HOVER ANIMATION ================= */

/* estado base */
.social a{
  position:relative;
  width:46px;
  height:46px;
  border-radius:14px;
  background:#ffffff;
  border:1px solid rgba(0,0,0,.12);
  display:flex;
  align-items:center;
  justify-content:center;

  font-size:13px;
  font-weight:800;
  letter-spacing:.06em;

  transition:
    transform .35s ease,
    box-shadow .35s ease,
    background .35s ease,
    color .35s ease;
}

/* sombra sutil inicial */
.social a{
  box-shadow:0 10px 28px rgba(0,0,0,.08);
}

/* hover elegante */
.social a:hover{
  transform:translateY(-6px) scale(1.06);
  background:#a21014;
  color:#ffffff;

  box-shadow:
    0 18px 45px rgba(162,16,20,.35);
}

/* pequeño brillo tipo sheen */
.social a::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(
    120deg,
    transparent 20%,
    rgba(255,255,255,.35),
    transparent 80%
  );
  opacity:0;
  transition:opacity .35s ease;
}

.social a:hover::after{
  opacity:1;
}

/* ================= MOBILE TWEAK ================= */

@media (max-width:768px){
  .social a{
    width:42px;
    height:42px;
    font-size:12px;
  }
}

/* =====================================================
   FOOTER – HOVERS + UNDERLINES (CONTACT + SERVICES + ITEMS)
   Pegar al FINAL del CSS actual
===================================================== */

/* --- VARIABLES (usa tu rojo actual) --- */
#jaceo-footer{
  --jaceo-accent:#a21014;
  --jaceo-ink:#1f1f1f;
  --jaceo-muted:#2b2b2b;
}

/* =====================================================
   LINKS UNDERLINE (CONTACT + SERVICES)
===================================================== */

#jaceo-footer .jaceo-footer-list a,
#jaceo-footer .jaceo-footer-services a{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  color:var(--jaceo-muted);
  transition:color .22s ease, transform .22s ease, opacity .22s ease;
  max-width:100%;
  overflow-wrap:anywhere;
}

/* underline animado */
#jaceo-footer .jaceo-footer-list a::after,
#jaceo-footer .jaceo-footer-services a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-6px;
  height:2px;
  width:100%;
  background:var(--jaceo-accent);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .24s ease;
  border-radius:999px;
  opacity:.95;
}

/* hover */
#jaceo-footer .jaceo-footer-list a:hover,
#jaceo-footer .jaceo-footer-services a:hover{
  color:var(--jaceo-accent);
}

/* underline aparece */
#jaceo-footer .jaceo-footer-list a:hover::after,
#jaceo-footer .jaceo-footer-services a:hover::after{
  transform:scaleX(1);
}

/* focus accesible */
#jaceo-footer .jaceo-footer-list a:focus-visible,
#jaceo-footer .jaceo-footer-services a:focus-visible{
  outline:2px solid rgba(162,16,20,.28);
  outline-offset:4px;
  border-radius:10px;
}

/* =====================================================
   LI ITEM HOVER (CONTACT + SERVICES)
   (sutil, no cambia layout)
===================================================== */

#jaceo-footer .jaceo-footer-list li,
#jaceo-footer .jaceo-footer-services li{
  position:relative;
  border-radius:14px;
  padding:6px 8px;              /* pequeño “hit area” */
  margin-left:-8px;             /* compensa el padding para que no “mueva” */
  margin-right:-8px;
  transition:background .22s ease, box-shadow .22s ease, transform .22s ease;
}

#jaceo-footer .jaceo-footer-list li:hover,
#jaceo-footer .jaceo-footer-services li:hover{
  background:rgba(162,16,20,.06);
  box-shadow:0 10px 26px rgba(0,0,0,.06);
  transform:translateY(-1px);
}

/* =====================================================
   DOT + ICON ANIMATION (CONTACT ICONS + SERVICE DOTS)
===================================================== */

/* iconitos de contacto */
#jaceo-footer .jaceo-item-ico svg{
  transition:transform .22s ease, filter .22s ease;
}

/* dot de services */
#jaceo-footer .jaceo-dot{
  transition:transform .22s ease, background .22s ease, box-shadow .22s ease;
}

/* cuando haces hover al LI, animas icon y dot */
#jaceo-footer .jaceo-footer-list li:hover .jaceo-item-ico svg{
  transform:scale(1.08) rotate(-6deg);
  filter:drop-shadow(0 10px 18px rgba(162,16,20,.18));
}

#jaceo-footer .jaceo-footer-services li:hover .jaceo-dot{
  transform:scale(1.15);
  background:var(--jaceo-accent);
  box-shadow:0 10px 18px rgba(162,16,20,.22);
}

/* =====================================================
   HOURS BLOCK HOVER (opcional elegante)
===================================================== */

#jaceo-footer .jaceo-footer-hours{
  border-radius:16px;
  padding:10px 10px;
  margin-left:-10px;
  margin-right:-10px;
  transition:background .22s ease, box-shadow .22s ease;
}

#jaceo-footer .jaceo-footer-hours:hover{
  background:rgba(31,42,90,.04);
  box-shadow:0 10px 26px rgba(0,0,0,.05);
}

/* =====================================================
   RESPONSIVE – más compacto sin “cards larguísimas”
   (solo tipografía / spacing, NO rompe diseño)
===================================================== */

@media (max-width:768px){

  #jaceo-footer .jaceo-footer-title{
    font-size:14px;
    letter-spacing:.12em;
    margin-bottom:18px;
  }

  #jaceo-footer .jaceo-footer-list a,
  #jaceo-footer .jaceo-footer-services a{
    font-size:14px;          /* clave: reduce altura total */
    line-height:1.45;
  }

  #jaceo-footer .jaceo-footer-slogan,
  #jaceo-footer .jaceo-footer-coverage-text{
    font-size:14px;
    line-height:1.65;
  }

  /* menos padding interno en items para que no se alargue */
  #jaceo-footer .jaceo-footer-list li,
  #jaceo-footer .jaceo-footer-services li{
    padding:5px 8px;
  }

  /* underline un poco más pegado */
  #jaceo-footer .jaceo-footer-list a::after,
  #jaceo-footer .jaceo-footer-services a::after{
    bottom:-5px;
  }
}



/* ===============================
   FOOTER – ITEM HOVERS ONLY
=============================== */

/* LINKS GENERALES (Contact / Address / Email) */
#jaceo-footer a{
  position:relative;
  transition:color .25s ease, transform .25s ease;
}

/* subrayado animado */
#jaceo-footer a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-4px;
  width:0;
  height:2px;
  background:#a21014;
  transition:width .25s ease;
}

/* hover */
#jaceo-footer a:hover{
  color:#a21014;
}

#jaceo-footer a:hover::after{
  width:100%;
}


/* ===============================
   SERVICES ITEMS (LI)
=============================== */

#jaceo-footer .jaceo-footer-card ul li{
  position:relative;
  padding-left:14px;
  transition:transform .25s ease, color .25s ease;
}

/* punto decorativo */
#jaceo-footer .jaceo-footer-card ul li::before{
  content:"";
  position:absolute;
  left:0;
  top:9px;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#a21014;
  opacity:.6;
  transition:transform .25s ease, opacity .25s ease;
}

/* hover item */
#jaceo-footer .jaceo-footer-card ul li:hover{
  transform:translateX(4px);
  color:#a21014;
}

#jaceo-footer .jaceo-footer-card ul li:hover::before{
  transform:scale(1.4);
  opacity:1;
}


/* =========================================
   FIX: SOCIAL BUTTONS HOVER (NO UNDERLINE)
   + Premium hover only for .social a
========================================= */

/* 1) Quitar el subrayado/hover global SOLO a los botones sociales */
#jaceo-footer .social a::after{
  display:none !important;
}

#jaceo-footer .social a:hover{
  color:inherit !important;
}

/* 2) Estilo premium hover para botones sociales */
#jaceo-footer .social{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

#jaceo-footer .social a{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:10px 14px;
  border-radius:14px;

  border:1px solid rgba(31,42,90,.14);
  background:#fff;

  font-family:Poppins, system-ui, sans-serif;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-size:12px;

  color:#1f1f1f;
  text-decoration:none;

  transition:
    transform .25s ease,
    box-shadow .25s ease,
    border-color .25s ease,
    background .25s ease,
    color .25s ease;
}

/* hover bonito */
#jaceo-footer .social a:hover{
  transform:translateY(-3px);
  border-color:rgba(162,16,20,.35);
  box-shadow:0 16px 40px rgba(0,0,0,.12);
  background:rgba(162,16,20,.06);
  color:#a21014;
}

/* focus accesible */
#jaceo-footer .social a:focus-visible{
  outline:3px solid rgba(34,46,126,.25);
  outline-offset:3px;
}/* End custom CSS */