.elementor-33740 .elementor-element.elementor-element-68a0ea8{--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;--overflow:hidden;--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-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-bc34a18 *//* =========================
   Footer Pro - Valencia Growshop
   ========================= */
:root{
  --f-bg:#0f2a1b;
  --f-bg-2:#153c27;
  --f-glow:#1e5a3c;
  --f-text:#eaf6ea;
  --f-muted:#b9cbb9;
  --f-link:#dff6df;
  --f-link-hover:#ffffff;
  --f-accent:#8bc34a;
  --f-accent-2:#5fbf5a;
  --f-accent-3:#47a457;
  --f-chip:rgba(255,255,255,.08);
  --f-border:color-mix(in oklab, white 12%, transparent);
  --f-radius:16px;
  --shadow-lg:0 24px 60px rgba(0,0,0,.40);
  --shadow-md:0 10px 26px rgba(0,0,0,.30);
}

/* Contenedor raíz del footer */
.el-footer{
  color:var(--f-text);
  background:
    radial-gradient(900px 360px at 18% 0%, color-mix(in oklab, var(--f-glow) 55%, transparent) 0%, transparent 70%),
    radial-gradient(700px 300px at 95% 20%, color-mix(in oklab, var(--f-glow) 45%, transparent) 0%, transparent 70%),
    linear-gradient(180deg, var(--f-bg), var(--f-bg-2));
  position:relative;
  isolation:isolate;
  overflow:hidden;
}

/* Sutileza: partículas verdes muy tenues */
.el-footer::before{
  content:""; position:absolute; inset:-20% -10% auto -10%;
  height:220px;
  background:
    radial-gradient(6px 6px at 10% 70%, rgba(139,195,74,.08) 0 50%, transparent 51%),
    radial-gradient(6px 6px at 40% 40%, rgba(139,195,74,.06) 0 50%, transparent 51%),
    radial-gradient(6px 6px at 70% 65%, rgba(139,195,74,.05) 0 50%, transparent 51%),
    radial-gradient(6px 6px at 90% 30%, rgba(139,195,74,.07) 0 50%, transparent 51%);
  filter:blur(.3px);
  pointer-events:none;
  animation:foot-drift 18s linear infinite;
  opacity:.7;
}
@keyframes foot-drift{
  from{ transform:translateY(-10px) }
  to{ transform:translateY(10px) }
}
@media (prefers-reduced-motion:reduce){
  .el-footer::before{ animation:none }
}

/* ===== Top bar (envíos / aviso) ===== */
.el-foot-topbar {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  padding: 10px 16px;
  background: linear-gradient(
    90deg,
    var(--f-accent-3),
    var(--f-accent),
    var(--f-accent-3)
  );
  background-size: 300% 100%;
  color: #0e1a12;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  font-size: 1.9rem;
  box-shadow: var(--shadow-md);
  opacity: 0;
  transform: translateY(40px);
  animation:
    slideInTop 1.2s ease forwards,
    gradientFlow 8s ease infinite 1.2s;
  z-index: 10;
  position: relative;
}

/* === Animaciones === */
@keyframes slideInTop {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes gradientFlow {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

/* === Hover opcional: sutil brillo al pasar === */
.el-foot-topbar:hover {
  filter: brightness(1.05);
  transform: translateY(-2px);
  transition: all 0.3s ease;
}

/* === Responsive design === */
@media (max-width: 1024px) {
  .el-foot-topbar {
    font-size: 1.4rem;
    padding: 12px;
    animation:
      slideInTop 1s ease forwards,
      gradientFlow 6s ease infinite 1s;
  }
}

@media (max-width: 768px) {
  .el-foot-topbar {
    flex-direction: column;
    gap: 0.5rem;
    text-align: center;
    font-size: 1.2rem;
    padding: 14px 8px;
    line-height: 1.4;
    animation:
      slideInTop 0.9s ease forwards,
      gradientFlow 5s ease infinite 0.9s;
  }
}

@media (max-width: 480px) {
  .el-foot-topbar {
    font-size: 1rem;
    padding: 10px 6px;
    animation:
      slideInTop 0.8s ease forwards,
      gradientFlow 4s ease infinite 0.8s;
  }
}


/* ===== Bloque principal ===== */
.el-foot-main{
  padding:48px min(5vw,40px);
  display:grid; gap:32px;
}
.el-foot-main .elementor-container,
.el-foot-main.elementor-container{
  /* por si el contenedor es ancho completo */
  max-width:1200px; margin-inline:auto;
}

/* columnas */
.el-foot-brand, .el-foot-col, .el-foot-contact{
  background:var(--f-chip);
  border:1px solid var(--f-border);
  border-radius:var(--f-radius);
  padding:22px 20px;
  backdrop-filter:saturate(140%) blur(6px);
  box-shadow:var(--shadow-md);
  transform:translateZ(0); /* acelera hover */
  animation:foot-fade .6s ease both;
}
@keyframes foot-fade{
  from{ opacity:0; translate:0 8px }
  to{ opacity:1; translate:0 0 }
}
.el-foot-brand{ animation-delay:.05s }
.el-foot-col:nth-of-type(1){ animation-delay:.1s }
.el-foot-col:nth-of-type(2){ animation-delay:.15s }
.el-foot-contact{ animation-delay:.2s }

/* títulos widgets */
.el-foot-main h3, .el-foot-main h4, .el-foot-main .elementor-heading-title{
  color:#fff; margin:0 0 .9rem; font-weight:800; letter-spacing:.02em;
}

/* listas de enlaces */
.el-foot-col ul{ list-style:none; margin:0; padding:0; display:grid; gap:.6rem; }
.el-foot-col a{
  color:var(--f-link); text-decoration:none;
  padding:.2rem 0; border-bottom:1px dashed transparent;
  transition:color .2s ease, border-color .2s ease, translate .15s ease;
}
.el-foot-col a:hover{ color:var(--f-link-hover); border-color:var(--f-border); translate:2px 0 }

/* newsletter */
.el-foot-brand form input[type="email"],
.el-foot-brand form input[type="text"]{
  width:100%; padding:.75rem .9rem; border-radius:12px;
  background:#0f2a1b; color:var(--f-text);
  border:1px solid var(--f-border);
  outline:none;
}
.el-foot-brand form input::placeholder{ color:var(--f-muted) }
.el-foot-brand form .elementor-button, 
.el-foot-brand form input[type="submit"]{
  margin-top:.6rem; border:0; cursor:pointer;
  padding:.75rem 1rem; border-radius:999px;
  color:#0f2a1b; font-weight:800;
  background:linear-gradient(135deg, var(--f-accent), var(--f-accent-2));
  box-shadow:0 10px 24px rgba(139,195,74,.25);
  transition:transform .15s ease, filter .15s ease;
}
.el-foot-brand form .elementor-button:hover{ transform:translateY(-1px); filter:saturate(1.1) }

/* sociales chips */
.el-foot-brand .social-row{
  display:flex; flex-wrap:wrap; gap:.5rem; margin-top:.8rem;
}
.el-foot-brand .social-row a{
  display:inline-grid; place-items:center;
  width:38px; height:38px; border-radius:999px;
  background:var(--f-chip);
  border:1px solid var(--f-border);
  color:var(--f-text);
  transition:transform .15s ease, background .2s ease, color .2s ease;
}
.el-foot-brand .social-row a:hover{
  transform:translateY(-2px);
  background:linear-gradient(180deg, var(--f-accent), var(--f-accent-2));
  color:#0f2a1b;
}

/* contacto + whatsapp botón */
.el-foot-contact .whatsapp-btn a,
.el-foot-contact .whatsapp-btn{
  display:inline-flex; align-items:center; gap:.55rem;
  padding:.6rem .9rem; border-radius:999px;
  background:linear-gradient(135deg, #25d366, #18b555);
  color:#072b18; text-decoration:none; font-weight:800;
  box-shadow:0 12px 26px rgba(37,211,102,.25);
  transition:transform .15s ease, filter .15s ease;
}
.el-foot-contact .whatsapp-btn:hover{ transform:translateY(-2px); filter:saturate(1.05) }

/* ===== Trust row (métodos de pago / sellos) ===== */
.el-foot-trust{
  padding:10px min(5vw,40px) 26px;
}
.el-foot-trust .trust-wrap{
  max-width:1200px; margin-inline:auto;
  display:flex; gap:10px; flex-wrap:wrap; align-items:center; justify-content:center;
}
.el-foot-trust .chip{
  display:inline-flex; align-items:center; gap:.55rem;
  padding:.45rem .7rem; border-radius:999px;
  background:var(--f-chip);
  border:1px solid var(--f-border);
  color:var(--f-muted);
  transition:transform .15s ease, background .2s ease;
}
.el-foot-trust .chip img{ height:18px; filter:grayscale(1) opacity(.9) }
.el-foot-trust .chip:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.12);
}
.el-foot-trust .chip:hover img{ filter:none }

/* ===== Bottom (menu + copy) ===== */
.el-foot-bottom{
  border-top:1px solid var(--f-border);
  color:var(--f-muted);
  padding:14px min(5vw,40px) 22px;
}
.el-foot-bottom .bottom-wrap{
  max-width:1200px; margin-inline:auto;
  display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap;
}
.el-foot-bottom .foot-menu{
  display:flex; flex-wrap:wrap; gap:.5rem .75rem; list-style:none; margin:0; padding:0;
}
.el-foot-bottom .foot-menu a{
  display:inline-block; padding:.35rem .7rem; border-radius:999px;
  color:var(--f-link); text-decoration:none;
  background:var(--f-chip); border:1px solid var(--f-border);
  transition:background .2s ease, color .2s ease, transform .15s ease;
}
.el-foot-bottom .foot-menu a:hover{ background:rgba(255,255,255,.12); color:#fff; transform:translateY(-1px) }

/* ===== Responsive ===== */
@media (max-width:1024px){
  .el-foot-main{ padding:36px 24px }
}
@media (max-width:768px){
  .el-foot-main > .elementor-container,
  .el-foot-main{ gap:18px }
  .el-foot-topbar{ font-size:.82rem }
  .el-foot-bottom .bottom-wrap{ flex-direction:column; align-items:flex-start }
}

/* Accesibilidad: foco */
.el-footer a:focus-visible,
.el-footer button:focus-visible,
.el-footer input:focus-visible{
  outline:2px solid var(--f-accent);
  outline-offset:2px; border-radius:10px;
}
/* =============================
   FOOTER — VERSIÓN MÓVIL (≤768px)
   ============================= */
@media (max-width: 768px) {

  /* --- Estructura general --- */
  .el-footer {
    text-align: center;
    padding-bottom: 10px;
  }

  .el-foot-topbar {
    flex-direction: column;
    gap: 4px;
    font-size: 0.85rem;
    padding: 12px 8px;
    line-height: 1.4;
    text-align: center;
  }

  /* --- Bloque principal --- */
  .el-foot-main {
    padding: 30px 16px;
  }

  .el-foot-main .elementor-row {
    display: flex !important;
    flex-direction: column;
    gap: 18px;
  }

  .el-foot-brand,
  .el-foot-col,
  .el-foot-contact {
    padding: 18px 14px;
    border-radius: 12px;
    text-align: center;
  }

  .el-foot-brand img {
    width: 38px;
    height: 38px;
  }

  .el-foot-brand strong {
    font-size: 1rem;
  }

  .el-foot-brand p {
    font-size: 0.95rem;
    line-height: 1.5;
    margin-bottom: 1rem;
  }

  /* --- Newsletter --- */
  .el-foot-brand form {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
  }

  .el-foot-brand form input[type="email"],
  .el-foot-brand form input[type="text"] {
    width: 100%;
    font-size: 0.95rem;
    padding: 0.75rem 0.9rem;
  }

  .el-foot-brand form input[type="submit"] {
    width: 100%;
    font-size: 1rem;
    padding: 0.8rem;
  }

  /* --- Redes sociales --- */
  .social-row {
    justify-content: center;
    margin-top: 1rem;
  }

  .social-row a {
    width: 42px;
    height: 42px;
  }

  /* --- Listas de enlaces --- */
  .el-foot-col h3 {
    margin-bottom: 0.8rem;
    font-size: 1.05rem;
  }

  .el-foot-col ul {
    gap: 0.5rem;
  }

  .el-foot-col a {
    font-size: 0.95rem;
    padding: 0.3rem 0;
    display: inline-block;
  }

  /* --- Contacto --- */
  .el-foot-contact .contact-list {
    text-align: center;
  }

  .el-foot-contact .contact-chip {
    justify-content: center;
    font-size: 0.95rem;
    padding: 0.4rem 0.6rem;
  }

  .el-foot-contact .whatsapp-btn {
    display: flex;
    justify-content: center;
  }

  .el-foot-contact .whatsapp-btn a {
    font-size: 0.95rem;
    padding: 0.6rem 1rem;
  }

  /* --- Fila de confianza / pagos --- */
  .el-foot-trust {
    padding: 16px 10px 24px;
  }

  .el-foot-trust .trust-wrap {
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
  }

  .el-foot-trust .chip {
    font-size: 0.85rem;
    padding: 0.4rem 0.7rem;
  }

  .el-foot-trust .chip img {
    height: 16px;
  }

  /* --- Menú inferior y copy --- */
  .el-foot-bottom {
    text-align: center;
    padding: 16px 8px;
  }

  .el-foot-bottom .bottom-wrap {
    flex-direction: column;
    gap: 10px;
  }

  .foot-menu {
    justify-content: center;
    flex-wrap: wrap;
    gap: 6px 8px;
  }

  .foot-menu a {
    font-size: 0.9rem;
    padding: 0.4rem 0.6rem;
  }

  .copy {
    font-size: 0.85rem;
    line-height: 1.4;
  }
}/* End custom CSS */