.elementor-kit-5{--e-global-color-primary:#000000;--e-global-color-secondary:#E7A40D;--e-global-color-text:#FFFFFF;--e-global-color-accent:#F4F3EE;--e-global-color-f658cc1:#1A1A1A;--e-global-color-b5bc1ce:#333333;--e-global-color-5b07d2c:#E63946;--e-global-typography-primary-font-family:"Anton";--e-global-typography-primary-font-size:96px;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-primary-line-height:1.2em;--e-global-typography-primary-letter-spacing:-0.02em;--e-global-typography-secondary-font-family:"Anton";--e-global-typography-secondary-font-size:72px;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-text-transform:uppercase;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-secondary-letter-spacing:0.02em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-text-transform:none;--e-global-typography-text-line-height:1.65em;--e-global-typography-text-letter-spacing:0em;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:14px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-letter-spacing:0.08em;--e-global-typography-c3225fb-font-family:"Anton";--e-global-typography-c3225fb-font-size:32px;--e-global-typography-c3225fb-font-weight:400;--e-global-typography-c3225fb-text-transform:uppercase;--e-global-typography-da42700-font-family:"Anton";--e-global-typography-da42700-font-size:14px;--e-global-typography-da42700-font-weight:400;--e-global-typography-da42700-line-height:1.65px;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-5{--e-global-typography-primary-font-size:40px;--e-global-typography-secondary-font-size:72px;--e-global-typography-text-font-size:15px;--e-global-typography-accent-font-size:12px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-5{--e-global-typography-primary-font-size:32px;--e-global-typography-secondary-font-size:52px;--e-global-typography-text-font-size:14px;--e-global-typography-accent-font-size:11px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --Mostaza:#E7A40D; --Negro:#000000; --Crema:#F4F3EE; --Crema-Dark:#E8E6DE; --Gris-1:#1A1A1A; --Gris-2:#333333; --Gris-3:#888888; --Live-Badge:#E63946; --Font-Heading:Anton; --Font-Body:Inter; --Spacing-XS:8px; --Spacing-S:16px; --Spacing-M:24px; --Spacing-L:50px; --Spacing-XL:100px; --Radius-S:3px; --Radius-M:10px; --Radius-Full:9999px; --Navbar-Height:100px; --mostaza-hover:#B8810A; --Blanco:#ffffff; }
/* Start custom CSS *//* ── AZOTEA DESIGN SYSTEM — Typography tokens ── */

/* Anton / Hero Display */
.az-hero, .elementor-widget-heading.az-hero .elementor-heading-title {
  font-family: 'Anton', sans-serif;
  font-size: clamp(52px, 10vw, 120px);
  text-transform: uppercase;
  letter-spacing: 0.02em;
  line-height: 0.95;
}

/* Anton / Title XL */
.az-title-xl, .elementor-widget-heading.az-title-xl .elementor-heading-title {
  font-family: 'Anton', sans-serif;
  font-size: clamp(40px, 6vw, 72px);
  text-transform: uppercase;
  letter-spacing: 0;
  line-height: 1;
}

/* Anton / Title L */
.az-title-l, .elementor-widget-heading.az-title-l .elementor-heading-title {
  font-family: 'Anton', sans-serif;
  font-size: clamp(32px, 4.5vw, 52px);
  text-transform: uppercase;
  letter-spacing: 0;
  line-height: 1;
}

/* Anton / Title M */
.az-title-m, .elementor-widget-heading.az-title-m .elementor-heading-title {
  font-family: 'Anton', sans-serif;
  font-size: clamp(26px, 3.5vw, 36px);
  text-transform: uppercase;
  letter-spacing: 0;
  line-height: 1.05;
}

/* Anton / Title S */
.az-title-s, .elementor-widget-heading.az-title-s .elementor-heading-title {
  font-family: 'Anton', sans-serif;
  font-size: clamp(18px, 2.5vw, 24px);
  text-transform: uppercase;
  letter-spacing: 0.03em;
  line-height: 1.1;
}

/* Anton / Label */
.az-label {
  font-family: 'Anton', sans-serif;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  line-height: 1;
}
@media (max-width: 767px) { .az-label { font-size: 13px; } }

/* Inter / Body L */
.az-body-l {
  font-family: 'Inter', sans-serif;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.65;
  letter-spacing: 0;
}
@media (max-width: 767px) { .az-body-l { font-size: 15px; } }

/* Inter / Body M */
.az-body-m {
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.65;
  letter-spacing: 0;
}
@media (max-width: 767px) { .az-body-m { font-size: 14px; } }

/* Inter / Body S */
.az-body-s {
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.60;
  letter-spacing: 0;
}
@media (max-width: 767px) { .az-body-s { font-size: 13px; } }

/* Inter / Body XS */
.az-body-xs {
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.55;
  letter-spacing: 0;
}
@media (max-width: 767px) { .az-body-xs { font-size: 12px; } }

/* Inter / UI Label */
.az-ui-label {
  font-family: 'Inter', sans-serif;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  line-height: 1;
}

/* Inter / UI Caption */
.az-ui-caption {
  font-family: 'Inter', sans-serif;
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1;
}

/* ── Responsive breakpoints generales ── */
@media (min-width: 768px) and (max-width: 1024px) {
  .az-ui-label { font-size: 12px; }
  .az-ui-caption { font-size: 11px; }
}

@media (max-width: 767px) {
  .az-label  { font-size: 12px; letter-spacing: 0.07em; }
  .az-ui-label { font-size: 11px; }
}



/* ── ANIMACIONES AZOTEA DEL TUYÚ ─────────────────────────── */

/* Ease personalizado */
:root {
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-spring:   cubic-bezier(0.34, 1.56, 0.64, 1);
  --mostaza:       #E7A40D;
  --mostaza-dk:    #C48C0A;
}

/* ── BARRA VIVA (live dot pulsante) ─── */
@keyframes pulse-live {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%       { opacity: 0.35; transform: scale(0.6); }
}
.azotea-live-dot {
  width: 7px; height: 7px;
  background: var(--mostaza);
  border-radius: 50%;
  display: inline-block;
  animation: pulse-live 1.4s ease-in-out infinite;
}

/* ── VISUALIZADOR DE AUDIO ─────────────── */
@keyframes vbar {
  from { transform: scaleY(0.25); }
  to   { transform: scaleY(1); }
}
.azotea-vbar {
  display: inline-block;
  width: 3px;
  background: var(--mostaza);
  border-radius: 1px;
  transform-origin: bottom;
  animation: vbar 0.9s ease-in-out infinite alternate;
  animation-play-state: paused; /* activar con JS al reproducir */
}
.azotea-vbar:nth-child(1) { height: 8px;  animation-delay: 0s; }
.azotea-vbar:nth-child(2) { height: 14px; animation-delay: 0.15s; }
.azotea-vbar:nth-child(3) { height: 20px; animation-delay: 0.05s; }
.azotea-vbar:nth-child(4) { height: 12px; animation-delay: 0.20s; }
.azotea-vbar:nth-child(5) { height: 18px; animation-delay: 0.10s; }

/* ── TICKER MARQUEE ────────────────────── */
@keyframes ticker-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
.azotea-ticker {
  overflow: hidden;
  background: var(--mostaza);
  padding: 10px 0;
}
.azotea-ticker-inner {
  display: flex;
  white-space: nowrap;
  animation: ticker-scroll 28s linear infinite;
}
.azotea-ticker-item {
  font-family: 'Anton', sans-serif;
  font-size: 13px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #070707;
  padding: 0 28px;
}

/* ── SCROLL REVEAL ─────────────────────── */
.azotea-reveal {
  opacity: 0;
  transform: translateY(36px);
  transition:
    opacity  0.75s var(--ease-out-expo),
    transform 0.75s var(--ease-out-expo);
}
.azotea-reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.azotea-reveal-delay-1 { transition-delay: 0.10s; }
.azotea-reveal-delay-2 { transition-delay: 0.20s; }
.azotea-reveal-delay-3 { transition-delay: 0.30s; }
.azotea-reveal-delay-4 { transition-delay: 0.40s; }

/* ── ACTIVAR SCROLL REVEAL (JS) ────────── */
/* Pegá este script en Elementor → Site Settings → Custom Code → <body> */
/*
<script>
(function(){
  var els = document.querySelectorAll('.azotea-reveal');
  var obs = new IntersectionObserver(function(entries){
    entries.forEach(function(e){
      if(e.isIntersecting){
        e.target.classList.add('is-visible');
        obs.unobserve(e.target);
      }
    });
  }, { threshold: 0.12 });
  els.forEach(function(el){ obs.observe(el); });
})();
</script>
*/

/* ── HOVER CARDS (programas, redes, etc.) */
.azotea-card {
  transition:
    border-color 0.2s var(--ease-out-expo),
    transform    0.2s var(--ease-out-expo),
    background   0.2s;
}
.azotea-card:hover {
  transform: translateY(-3px);
  border-color: rgba(231, 164, 13, 0.35) !important;
}
.azotea-card:active {
  transform: translateY(0) scale(0.99);
}

/* ── BOTÓN PRIMARIO (clase reutilizable) ─ */
.azotea-btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 15px 30px;
  background: var(--mostaza);
  color: #070707;
  font-family: 'Anton', sans-serif;
  font-size: 14px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 2px;
  border: none;
  cursor: pointer;
  transition:
    background  0.2s,
    transform   0.18s var(--ease-out-expo),
    box-shadow  0.2s;
}
.azotea-btn-primary:hover {
  background: var(--mostaza-dk);
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(231, 164, 13, 0.30);
}
.azotea-btn-primary:active {
  transform: scale(0.98);
  box-shadow: none;
}

/* ── Ocultar header en página 404 ── */
.error404 #header.ct-header,
.error404 .ct-header,
.error404 #footer.ct-footer {
  display: none !important;
}

.error404 #main-container {
  padding-top: 0 !important;
  margin-top: 0 !important;
}/* End custom CSS */