.elementor-kit-482{--e-global-color-primary:#1F4E5F;--e-global-color-secondary:#3A6B4E;--e-global-color-text:#6E6E6E;--e-global-color-accent:#F4F6F5;--e-global-color-649074a:#D6A85C;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-size:20px;--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:500;color:var( --e-global-color-text );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-482 button:hover,.elementor-kit-482 button:focus,.elementor-kit-482 input[type="button"]:hover,.elementor-kit-482 input[type="button"]:focus,.elementor-kit-482 input[type="submit"]:hover,.elementor-kit-482 input[type="submit"]:focus,.elementor-kit-482 .elementor-button:hover,.elementor-kit-482 .elementor-button:focus{background-color:var( --e-global-color-primary );}.elementor-kit-482 e-page-transition{background-color:#FFBC7D;}.elementor-kit-482 a{color:var( --e-global-color-accent );}.elementor-kit-482 a:hover{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.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-kit-482{font-size:var( --e-global-typography-primary-font-size );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-482{font-size:var( --e-global-typography-primary-font-size );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ═══════════════════════════════════════════════════
   MAREA LIBRE — CSS Global para Elementor
   Pegar en: Elementor → Kit del sitio → CSS Personalizado
   ═══════════════════════════════════════════════════ */

/* Variables de marca */
:root {
  --ml-azul:       #1F4E5F;
  --ml-azul-dark:  #0d2830;
  --ml-azul-light: #2a6a80;
  --ml-verde:      #3A6B4E;
  --ml-verde-light:#4a8a64;
  --ml-gris:       #6E6E6E;
  --ml-blanco:     #F4F6F5;
  --ml-bg-card:    #EBF4F7;
}

/* Tipografía base */
body { font-family: 'Inter', sans-serif; }
h1,h2,h3,h4,h5 { font-family: 'Playfair Display', serif; }

/* ── HERO ── */
.ml-hero {
  min-height: 95vh;
  background:
    linear-gradient(135deg, rgba(13,40,48,0.78) 0%, rgba(31,78,95,0.65) 60%, rgba(58,107,78,0.5) 100%),
    url('SUSTITUIR_URL_IMAGEN_HERO') center/cover no-repeat;
  display: flex; align-items: center;
}
.ml-hero-label {
  font-size: 11px; font-weight: 700; letter-spacing: 3px;
  text-transform: uppercase; color: rgba(244,246,245,0.7);
  display: flex; align-items: center; gap: 10px; margin-bottom: 20px;
}
.ml-hero-label::before {
  content: ''; width: 28px; height: 2px; background: var(--ml-verde);
}
.ml-hero .elementor-heading-title { color: #fff !important; }
.ml-hero .elementor-widget-text-editor p { color: rgba(244,246,245,0.88) !important; font-size: 18px; line-height: 1.7; }

/* ── ETIQUETA DE SECCIÓN ── */
.ml-label {
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important; font-weight: 700 !important;
  letter-spacing: 3px !important; text-transform: uppercase !important;
  color: var(--ml-verde) !important;
  display: flex; align-items: center; gap: 10px;
}
.ml-label::before {
  content: ''; width: 24px; height: 2px;
  background: var(--ml-verde); flex-shrink: 0;
}
.ml-label-center { justify-content: center; }
.ml-label-center::before { display: none; }

/* ── ESTADÍSTICAS BAR ── */
.ml-stats-bar {
  background: var(--ml-azul) !important;
  padding: 32px 40px !important;
}
.ml-stats-bar .elementor-heading-title {
  color: #fff !important;
  font-family: 'Playfair Display', serif !important;
  font-size: 38px !important; line-height: 1.1 !important;
}
.ml-stats-bar .elementor-widget-text-editor p {
  color: rgba(244,246,245,0.7) !important;
  font-size: 12px !important; letter-spacing: 0.5px !important;
  text-transform: uppercase !important; margin-top: 4px !important;
}

/* ── TARJETAS DE ACTIVIDAD ── */
.ml-card {
  background: #fff;
  border-radius: 14px !important;
  overflow: hidden;
  box-shadow: 0 4px 28px rgba(31,78,95,0.09) !important;
  transition: transform .25s, box-shadow .25s;
}
.ml-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 48px rgba(31,78,95,0.16) !important;
}
.ml-card-body { padding: 28px !important; }
.ml-card-body .elementor-heading-title {
  font-size: 22px !important; color: var(--ml-azul) !important;
}
.ml-card-body .elementor-widget-text-editor p {
  font-size: 14px !important; line-height: 1.6 !important; color: var(--ml-gris) !important;
}

/* Badge de tarjeta */
.ml-tag-popular, .ml-tag-exclusivo, .ml-tag-atardecer {
  display: inline-block;
  font-size: 11px !important; font-weight: 700 !important;
  letter-spacing: 1px !important; text-transform: uppercase !important;
  padding: 5px 12px !important; border-radius: 20px !important;
  color: white !important; margin-bottom: 12px;
}
.ml-tag-popular   { background: var(--ml-verde) !important; }
.ml-tag-exclusivo { background: var(--ml-azul) !important; }
.ml-tag-atardecer { background: #c87532 !important; }

/* Meta tags */
.ml-meta span {
  background: var(--ml-bg-card); color: var(--ml-azul);
  font-size: 12px !important; font-weight: 600 !important;
  padding: 5px 12px !important; border-radius: 20px !important;
  display: inline-block; margin: 3px;
}

/* ── SECCIÓN EDUCACIÓN ── */
.ml-edu-bg { background: #EAF3F7 !important; }

.ml-feature-card {
  background: #fff !important;
  border-radius: 10px !important;
  padding: 20px !important;
  box-shadow: 0 2px 16px rgba(31,78,95,0.07) !important;
  transition: transform .2s;
}
.ml-feature-card:hover { transform: translateY(-2px); }
.ml-feature-icon {
  width: 42px; height: 42px; border-radius: 10px;
  background: var(--ml-bg-card);
  display: flex; align-items: center; justify-content: center;
  font-size: 20px; margin-bottom: 12px;
}

/* ── SECCIÓN COMPROMISO ── */
.ml-compromiso-bg {
  background:
    linear-gradient(135deg, rgba(58,107,78,0.93) 0%, rgba(31,78,95,0.95) 100%),
    url('SUSTITUIR_URL_IMAGEN_COMPROMISO') center/cover !important;
}
.ml-compromiso-bg .elementor-heading-title { color: #fff !important; }
.ml-compromiso-bg .elementor-widget-text-editor p { color: rgba(244,246,245,0.85) !important; }

.ml-comp-card {
  background: rgba(255,255,255,0.1) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  border-radius: 12px !important;
  backdrop-filter: blur(8px);
  transition: background .2s;
}
.ml-comp-card:hover { background: rgba(255,255,255,0.18) !important; }
.ml-comp-card .elementor-heading-title,
.ml-comp-card .elementor-icon-box-title { color: #fff !important; }
.ml-comp-card .elementor-icon-box-description,
.ml-comp-card .elementor-widget-text-editor p { color: rgba(244,246,245,0.8) !important; }
.ml-comp-card .elementor-icon { color: rgba(244,246,245,0.9) !important; }

/* ── TESTIMONIOS ── */
.ml-test-card {
  background: var(--ml-blanco) !important;
  border-radius: 14px !important;
  border: 1px solid rgba(31,78,95,0.08) !important;
  box-shadow: 0 4px 24px rgba(31,78,95,0.06) !important;
  transition: transform .2s, box-shadow .2s;
  position: relative;
}
.ml-test-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 40px rgba(31,78,95,0.12) !important;
}
.ml-test-card::before {
  content: '"';
  position: absolute; top: 16px; right: 20px;
  font-family: 'Playfair Display', serif;
  font-size: 80px; color: var(--ml-bg-card); line-height: 1;
  pointer-events: none;
}

/* ── CTA ── */
.ml-cta-bg {
  background:
    linear-gradient(135deg, rgba(13,40,48,0.85) 0%, rgba(31,78,95,0.80) 100%),
    url('SUSTITUIR_URL_IMAGEN_CTA') center/cover fixed !important;
}
.ml-cta-bg .elementor-heading-title,
.ml-cta-bg h2 { color: #fff !important; }
.ml-cta-bg .elementor-widget-text-editor p { color: rgba(244,246,245,0.88) !important; font-size: 18px !important; }
.ml-cta-perks p { color: rgba(244,246,245,0.65) !important; font-size: 14px !important; }

/* ── FAQ ── */
.ml-faq-item .elementor-tab-title {
  font-family: 'Inter', sans-serif !important;
  font-size: 16px !important; font-weight: 600 !important;
  color: var(--ml-azul) !important;
  border: 1px solid rgba(31,78,95,0.12) !important;
  border-radius: 10px !important;
  padding: 20px 24px !important;
  background: #fff !important;
}
.ml-faq-item .elementor-tab-title.elementor-active {
  background: var(--ml-bg-card) !important;
  color: var(--ml-verde) !important;
  border-radius: 10px 10px 0 0 !important;
}
.ml-faq-item .elementor-tab-content {
  font-size: 15px !important; line-height: 1.7 !important;
  color: var(--ml-gris) !important;
  border: 1px solid rgba(31,78,95,0.12) !important;
  border-top: none !important;
  border-radius: 0 0 10px 10px !important;
  padding: 16px 24px 22px !important;
  background: #fff !important;
}

/* ── SIDEBAR RESERVA ── */
.ml-sidebar {
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 40px rgba(31,78,95,0.1) !important;
  border: 1px solid rgba(31,78,95,0.06) !important;
  position: sticky; top: 100px;
}
.ml-precio-big {
  font-family: 'Playfair Display', serif !important;
  font-size: 48px !important; color: var(--ml-azul) !important;
  font-weight: 700 !important; line-height: 1 !important;
}

/* ── BOTONES ── */
.ml-btn-azul.elementor-button {
  background: var(--ml-azul) !important; color: #fff !important;
  border-radius: 6px !important; font-weight: 600 !important;
  transition: all .2s !important;
}
.ml-btn-azul.elementor-button:hover {
  background: var(--ml-azul-light) !important;
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(31,78,95,0.3) !important;
}
.ml-btn-verde.elementor-button {
  background: var(--ml-verde) !important; color: #fff !important;
  border-radius: 6px !important; font-weight: 600 !important;
  transition: all .2s !important;
}
.ml-btn-verde.elementor-button:hover {
  background: var(--ml-verde-light) !important;
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(58,107,78,0.3) !important;
}
.ml-btn-outline.elementor-button {
  background: transparent !important; color: #fff !important;
  border: 2px solid rgba(255,255,255,0.6) !important;
  border-radius: 6px !important; font-weight: 600 !important;
}
.ml-btn-outline.elementor-button:hover {
  background: rgba(255,255,255,0.15) !important;
  border-color: #fff !important;
}

/* ── HERO BADGE / ABOUT BADGE ── */
.ml-badge {
  background: var(--ml-verde) !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 32px rgba(58,107,78,0.4) !important;
}
.ml-badge .elementor-heading-title { color: #fff !important; }
.ml-badge .elementor-widget-text-editor p { color: rgba(244,246,245,0.85) !important; font-size: 12px !important; letter-spacing: 1px; text-transform: uppercase; }

/* ── ABOUT ── */
.ml-tag {
  background: var(--ml-bg-card) !important; color: var(--ml-azul) !important;
  font-size: 12px !important; font-weight: 600 !important;
  padding: 8px 16px !important; border-radius: 6px !important;
  display: inline-block !important; margin: 4px !important;
}

/* ── INSTAGRAM GRID ── */
.ml-ig-item { overflow: hidden; position: relative; }
.ml-ig-item img { transition: transform .4s; }
.ml-ig-item:hover img { transform: scale(1.08); }

/* ── FOOTER ── */
.ml-footer { background: var(--ml-azul-dark) !important; }
.ml-footer .elementor-heading-title { color: #fff !important; }
.ml-footer .elementor-widget-text-editor p,
.ml-footer .elementor-widget-text-editor a {
  color: rgba(244,246,245,0.65) !important; font-size: 14px !important;
  line-height: 2 !important;
}
.ml-footer .elementor-widget-text-editor a:hover { color: #fff !important; }
.ml-footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.08) !important;
  padding-top: 22px !important;
}
.ml-footer-bottom .elementor-widget-text-editor p {
  color: rgba(244,246,245,0.35) !important; font-size: 13px !important;
}

/* ── ANIMACIONES REVEAL ── */
.ml-reveal {
  opacity: 0; transform: translateY(28px);
  transition: opacity .7s ease, transform .7s ease;
}
.ml-reveal.visible { opacity: 1; transform: translateY(0); }
.ml-reveal-d1 { transition-delay: .1s; }
.ml-reveal-d2 { transition-delay: .2s; }
.ml-reveal-d3 { transition-delay: .3s; }

/* ── SEPARADOR / DIVISOR ── */
.ml-divider-verde .elementor-divider-separator {
  border-color: var(--ml-verde) !important;
  border-width: 3px !important; width: 60px !important;
}

/* ── PÁGINA INTERIOR HERO ── */
.ml-hero-inner {
  min-height: 380px;
  background:
    linear-gradient(135deg, rgba(13,40,48,0.72) 0%, rgba(31,78,95,0.68) 100%),
    url('SUSTITUIR_URL_IMAGEN_HERO_INTERIOR') center/cover no-repeat;
  display: flex; align-items: center; justify-content: center;
}
.ml-hero-inner .elementor-heading-title { color: #fff !important; }
.ml-hero-inner .elementor-widget-text-editor p { color: rgba(244,246,245,0.85) !important; font-size: 18px !important; }

/* ── INCLUDE LIST (Qué incluye) ── */
.ml-include-list .elementor-widget-text-editor li {
  font-size: 15px !important; padding: 6px 0 !important;
  display: flex; align-items: flex-start; gap: 10px;
  color: var(--ml-gris) !important;
}
.ml-include-list .elementor-widget-text-editor li::before {
  content: '✓'; color: var(--ml-verde) !important;
  font-weight: 700 !important; min-width: 16px;
}

/* ── FORMULARIO CONTACTO ── */
.ml-form .elementor-field-label {
  font-size: 13px !important; font-weight: 600 !important;
  color: var(--ml-azul) !important;
}
.ml-form .elementor-field-textual {
  border: 1.5px solid #d0dfe4 !important;
  border-radius: 8px !important; font-family: 'Inter' !important;
  font-size: 14px !important; transition: border-color .2s !important;
}
.ml-form .elementor-field-textual:focus {
  border-color: var(--ml-azul) !important;
  box-shadow: 0 0 0 3px rgba(31,78,95,0.08) !important;
}
.ml-form .elementor-button {
  background: var(--ml-azul) !important; color: #fff !important;
  border-radius: 8px !important; font-weight: 600 !important;
  font-size: 15px !important; width: 100% !important;
}

/* ── SCROLL REVEAL JS init ── *//* End custom CSS */