.elementor-kit-10{--e-global-color-primary:#D6E44B;--e-global-color-secondary:#212125;--e-global-color-text:#F7F5EF;--e-global-color-accent:#D6E44B;--e-global-typography-primary-font-family:"Archivo Black";--e-global-typography-primary-font-size:clamp(3rem,8vw,7rem)px;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-letter-spacing:-0.01empx;--e-global-typography-secondary-font-family:"Archivo Black";--e-global-typography-secondary-font-size:clamp(2.2rem,6vw,5rem)px;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-letter-spacing:-0.01empx;--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-letter-spacing:0px;--e-global-typography-accent-font-family:"Archivo Black";--e-global-typography-accent-font-size:clamp(1.5rem,3vw,2.5rem)px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-letter-spacing:-0.01empx;}.elementor-kit-10 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.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-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ═══════════════════════════════════════════
   TOKENS
═══════════════════════════════════════════ */
:root{
  --ink:       #111114;
  --lime:      #D6E44B;
  --cream:     #F7F5EF;
  --card:      #1A1A1E;
  --secondary: #212125;
  --muted:     #9B9BA3;
  --border:    rgba(255,255,255,.08);
  --radius:    4px;
  --max-w:     1400px;
}

/* ═══════════════════════════════════════════
   BASE
═══════════════════════════════════════════ */
body{
  background: var(--ink);
  color: var(--cream);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
::selection{ background: var(--lime); color: var(--ink); }

/* ═══════════════════════════════════════════
   TIPOGRAFÍA — clases utilitarias
═══════════════════════════════════════════ */
.font-display{
  font-family:'Archivo Black','Arial Black',sans-serif;
  text-transform: uppercase;
  letter-spacing: -0.01em;
  line-height: .93;
}
.label{
  font-family:'Courier New',ui-monospace,monospace;
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .25em;
  color: var(--muted);
}
.eyebrow{
  display: flex;
  align-items: center;
  gap: .75rem;
  font-family:'Courier New',monospace;
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .3em;
  color: var(--muted);
}
.eyebrow::before{
  content:'';
  display: block;
  height: 1px;
  width: 32px;
  background: var(--lime);
  flex-shrink: 0;
}
.text-lime{ color: var(--lime); }

/* Títulos de sección — tamaño fluido */
.section-title{
  font-family:'Archivo Black',sans-serif;
  text-transform: uppercase;
  letter-spacing: -.01em;
  line-height: .93;
  font-size: clamp(2.2rem, 6vw, 5rem);
}
.hero-title{
  font-family:'Archivo Black',sans-serif;
  text-transform: uppercase;
  letter-spacing: -.01em;
  line-height: .92;
  font-size: clamp(3.25rem, 10vw, 9.5rem);
}

/* ═══════════════════════════════════════════
   BOTONES
═══════════════════════════════════════════ */
.btn-lime{
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  background: var(--lime);
  color: var(--ink);
  border: none;
  border-radius: 20px;
  padding: .85rem 1.5rem;
  font-family:'Inter',sans-serif;
  font-size: .72rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .18em;
  transition: filter .2s;
  text-decoration: none;
}
.btn-lime:hover{ filter: brightness(1.1); color: var(--ink); }

.btn-outline{
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  background: transparent;
  color: var(--cream);
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 20px;
  padding: .85rem 1.5rem;
  font-family:'Inter',sans-serif;
  font-size: .72rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .18em;
  transition: all .2s;
  text-decoration: none;
}
.btn-outline:hover{ border-color: var(--lime); color: var(--lime); }

/* ═══════════════════════════════════════════
   CARDS CON IMAGEN
═══════════════════════════════════════════ */
.card-img-wrap{
  position: relative;
  overflow: hidden;
  border-radius: var(--radius);
  background: var(--secondary);
  aspect-ratio: 4/5;
}
.card-img-wrap img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(15%);
  transition: transform 1.2s ease, filter 1.2s ease;
}
.card-img-wrap:hover img{
  transform: scale(1.04);
  filter: grayscale(0);
}
.card-gradient::after{
  content:'';
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, var(--ink) 0%, rgba(17,17,20,.3) 50%, transparent 100%);
  pointer-events: none;
}

/* Badge pill */
.badge-pill{
  display: inline-block;
  border-radius: 20px;
  border: 1px solid rgba(255,255,255,.3);
  background: rgba(17,17,20,.4);
  backdrop-filter: blur(8px);
  padding: .2rem .75rem;
  font-family:'Courier New',monospace;
  font-size: .6rem;
  text-transform: uppercase;
  letter-spacing: .2em;
  color: var(--cream);
}
.badge-lime{
  background: var(--lime);
  color: var(--ink);
  border: none;
  font-weight: 600;
}

/* ═══════════════════════════════════════════
   SECCIÓN INVERTIDA (fondo lima)
═══════════════════════════════════════════ */
.section-lime{
  background: var(--lime);
  color: var(--ink);
}
.section-lime .eyebrow{ color: rgba(17,17,20,.7); }
.section-lime .eyebrow::before{ background: rgba(17,17,20,.6); }
.section-lime .section-title{ color: var(--ink); }

/* ═══════════════════════════════════════════
   ANIMACIONES
═══════════════════════════════════════════ */
@keyframes limePulse{
  0%,100%{ opacity:1 }
  50%{ opacity:.5 }
}
.pulse-lime{ animation: limePulse 2.4s ease-in-out infinite; }

@keyframes ping{
  0%{ transform: scale(1); opacity:.5 }
  100%{ transform: scale(2.5); opacity:0 }
}
.pin-lime{
  position: relative;
  width: 24px; height: 24px;
  border-radius: 50%;
  background: var(--lime);
}
.pin-lime::before{
  content:'';
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: var(--lime);
  animation: ping 1.8s cubic-bezier(0,0,.2,1) infinite;
  opacity:.5;
}

/* ═══════════════════════════════════════════
   OVERRIDES DE ELEMENTOR
═══════════════════════════════════════════ */
/* Contenedor con ancho de marca */
.e-con.brand-width > .e-con-inner{ max-width: var(--max-w); }

/* Links dentro de texto */
.elementor-widget-text-editor a{
  color: var(--lime);
  text-decoration: none;
  border-bottom: 1px solid rgba(214,228,75,.3);
  transition: border-color .2s;
}
.elementor-widget-text-editor a:hover{ border-color: var(--lime); }

/* Inputs de formularios */
.elementor-field-textual{
  background: rgba(255,255,255,.06) !important;
  border: 1px solid var(--border) !important;
  color: var(--cream) !important;
  border-radius: var(--radius) !important;
}
.elementor-field-textual:focus{ border-color: var(--lime) !important; }
.elementor-field-textual::placeholder{ color: var(--muted) !important; }/* End custom CSS */