.elementor-4436 .elementor-element.elementor-element-7cd2903{--display:flex;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-4436 .elementor-element.elementor-element-7cd2903{--width:100vw;}}/* Start custom CSS for html, class: .elementor-element-04100b4 *//* ══════════════════════════════════════════
   TECH SHOW ECUADOR — FOOTER v7
   Apariencia → Personalizar → CSS Adicional
══════════════════════════════════════════ */

.tsf-footer,
body .tsf-footer,
#page .tsf-footer,
.site-footer .tsf-footer,
[data-elementor-type="footer"] .tsf-footer {
  position: relative;
  z-index: 9999 !important;
  width: 100%;
  background: #010208 !important;
  font-family: 'Barlow', sans-serif;
  isolation: isolate;
}

/* Bloquear fondos fixed de otras páginas */
[data-elementor-type="footer"] {
  position: relative !important;
  z-index: 9999 !important;
  background: #010208 !important;
  isolation: isolate !important;
}

.tsf-grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(58,181,255,.013) 1px, transparent 1px),
    linear-gradient(90deg, rgba(58,181,255,.013) 1px, transparent 1px);
  background-size: 44px 44px;
  pointer-events: none;
}

.tsf-topbar {
  position: relative;
  z-index: 3;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent 0%, rgba(58,181,255,.04) 8%,
    rgba(58,181,255,.82) 32%, rgba(200,245,255,1) 50%,
    rgba(155,93,229,.78) 66%, rgba(58,181,255,.04) 92%,
    transparent 100%
  );
  box-shadow: 0 0 20px rgba(58,181,255,.14), 0 0 60px rgba(58,181,255,.05);
}

/* ── Layout principal — más compacto ── */
.tsf-inner {
  position: relative;
  z-index: 2;
  max-width: 560px;
  margin: 0 auto;
  padding: 24px 32px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
}

.tsf-half {
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 0;
}
.tsf-half--left  { justify-content: flex-end;  flex-direction: row; }
.tsf-half--right { justify-content: flex-start; flex-direction: row; }

/* ── Logo + label ── */
.tsf-brand-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  z-index: 2;
}

.tsf-logo-link {
  display: block;
  line-height: 0;
  text-decoration: none;
  opacity: .82;
  transition: opacity .3s, filter .3s;
}
.tsf-half--left .tsf-logo-link:hover {
  opacity: 1;
  filter: drop-shadow(0 0 8px rgba(255,255,255,.2)) drop-shadow(0 0 20px rgba(58,181,255,.18));
}
.tsf-half--right .tsf-logo-link:hover {
  opacity: 1;
  filter: drop-shadow(0 0 8px rgba(255,255,255,.25)) drop-shadow(0 0 20px rgba(155,93,229,.2));
}
.tsf-half--right .tsf-logo-link:hover img {
  filter: brightness(1.15) !important;
  -webkit-filter: brightness(1.15) !important;
}

.tsf-logo-img {
  display: block !important;
  height: 34px !important;
  width: auto !important;
  max-width: 160px !important;
  object-fit: contain !important;
}
.tsf-techres-logo,
.tsf-footer .tsf-techres-logo,
.tsf-footer img.tsf-techres-logo,
footer img.tsf-techres-logo {
  opacity: 1 !important;
  filter: brightness(1.1) !important;
  -webkit-filter: brightness(1.1) !important;
  mix-blend-mode: normal !important;
}

.tsf-sublabel {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .58rem;
  font-weight: 800;
  letter-spacing: .28em;
  text-transform: uppercase;
  color: rgba(58,181,255,.65);
  white-space: nowrap;
}
.tsf-sublabel--purple { color: rgba(155,93,229,.7); }

/* ── Divisor ── */
.tsf-vdiv {
  width: 1px;
  height: 56px;
  flex-shrink: 0;
  margin: 0 28px;
  background: linear-gradient(
    to bottom,
    transparent,
    rgba(58,181,255,.2) 25%,
    rgba(155,93,229,.16) 75%,
    transparent
  );
}

/* ══════════════════════════════════════════
   ICONOS — ANIMACIÓN FADE + TRANSLATE
   Sin overflow:hidden → no se cortan en Elementor
══════════════════════════════════════════ */

.tsf-icons {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;

  /* Estado oculto */
  opacity: 0;
  pointer-events: none;
  transform: scaleX(.6);
  transform-origin: center;
  transition: opacity .35s ease, transform .4s cubic-bezier(.4,0,.2,1);
}

.tsf-icons--left  {
  flex-direction: row-reverse;
  transform-origin: right center;
  padding-right: 12px;
}
.tsf-icons--right {
  flex-direction: row;
  transform-origin: left center;
  padding-left: 12px;
}

/* ACTIVACIÓN hover */
.tsf-half--left:hover  .tsf-icons--left,
.tsf-half--right:hover .tsf-icons--right {
  opacity: 1;
  pointer-events: auto;
  transform: scaleX(1);
}

/* ── Icono individual ── */
.tsf-icon {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(3,5,18,.95);
  border: 1px solid rgba(58,181,255,.1);
  border-radius: 8px;
  color: rgba(58,181,255,.38);
  text-decoration: none;
  flex-shrink: 0;
  transition: border-color .2s, color .2s, transform .18s, background .2s, box-shadow .2s;
}
.tsf-icon svg { width: 18px; height: 18px; display: block; }
.tsf-icon:hover {
  border-color: rgba(58,181,255,.55);
  color: rgba(200,235,255,.95);
  background: rgba(4,14,48,.98);
  transform: translateY(-3px);
  box-shadow: 0 6px 16px rgba(58,181,255,.13);
}

.tsf-icon--purple {
  border-color: rgba(155,93,229,.1);
  color: rgba(155,93,229,.38);
}
.tsf-icon--purple:hover {
  border-color: rgba(155,93,229,.55);
  color: rgba(220,185,255,.95);
  background: rgba(16,8,40,.98);
  box-shadow: 0 6px 16px rgba(155,93,229,.13);
}

/* ── Copyright — compacto ── */
.tsf-bottom {
  position: relative;
  z-index: 2;
  border-top: 1px solid rgba(58,181,255,.06);
  background: rgba(0,0,4,.45);
  padding: 10px 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
}

.tsf-copy {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .62rem;
  font-weight: 600;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(100,130,180,.6);
}

.tsf-dot {
  display: inline-block;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: rgba(58,181,255,.2);
  flex-shrink: 0;
}

/* ── Responsive ── */
@media (max-width: 560px) {
  .tsf-inner {
    flex-direction: column;
    padding: 20px 20px 16px;
    gap: 16px;
  }
  .tsf-half--left,
  .tsf-half--right {
    flex-direction: column;
    justify-content: center;
    gap: 10px;
    width: 100%;
  }
  .tsf-vdiv {
    width: 50px; height: 1px; margin: 0;
    background: linear-gradient(to right,
      transparent, rgba(58,181,255,.15), rgba(155,93,229,.1), transparent);
  }
  /* En móvil siempre visibles */
  .tsf-icons {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: scaleX(1) !important;
    flex-direction: row !important;
    justify-content: center;
    padding: 0 !important;
  }
  .tsf-bottom { padding: 8px 20px; }
}/* End custom CSS */