.elementor-kit-7{--e-global-color-primary:#8B1D45;--e-global-color-secondary:#EF5340;--e-global-color-text:#5A1A30;--e-global-color-accent:#F5764E;--e-global-color-c5a1024:#5A1024;--e-global-color-c7e1a42:#7E1A42;--e-global-color-cb6303f:#B6303F;--e-global-color-c4e0f20:#4E0F20;--e-global-color-cfbf3ee:#FBF3EE;--e-global-color-cfce3d6:#FCE3D6;--e-global-color-cf7c6b6:#F7C6B6;--e-global-color-c9a5266:#9A5266;--e-global-color-cc0607a:#C0607A;--e-global-typography-primary-font-family:"Figtree";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Figtree";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Figtree";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Figtree";--e-global-typography-accent-font-weight:500;background-color:#FBF3EE;color:#5A1A30;font-family:"Figtree", Sans-serif;font-weight:400;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@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 *//* ============================================================
   RED MEJ — master stylesheet (kit Custom CSS)
   Réplica de deploy/index.html · Feria Mujeres que Brillan
   ============================================================ */

/* ---- base ---- */
body{font-family:'Figtree',system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:#5A1A30;background:#FBF3EE;overflow-x:clip;-webkit-font-smoothing:antialiased}
html{scroll-behavior:smooth}

/* ---- keyframes (verbatim del original) ---- */
@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-16px)}}
@keyframes spinSlow{to{transform:rotate(360deg)}}
@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@keyframes btnPulse{0%,100%{box-shadow:0 0 0 0 rgba(255,255,255,.45)}55%{box-shadow:0 0 0 14px rgba(255,255,255,0)}}

/* ---- interacciones (verbatim del original) ---- */
details>summary{list-style:none;cursor:pointer}
details>summary::-webkit-details-marker{display:none}
details[open] .faq-plus{transform:rotate(45deg)}
.reveal{transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal.pre{opacity:0;transform:translateY(30px)}
.reveal.pre.in{opacity:1;transform:none}
a.cta-solid{transition:transform .2s,box-shadow .2s}
a.cta-solid:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 22px 40px -16px rgba(74,10,30,.5)}
a.cta-solid:hover .arr{transform:translateX(5px)}
.arr{display:inline-block;transition:transform .25s}
a.cta-ghost:hover{background:rgba(255,255,255,.14);transform:translateY(-3px)}
.spk:hover{transform:translateY(-8px);background:rgba(255,255,255,.11)!important}
.price-card:hover{transform:translateY(-8px)}
.nav-a{position:relative;padding-bottom:3px}
.nav-a::after{content:'';position:absolute;left:0;bottom:-2px;width:0;height:2px;background:#EF5340;border-radius:2px;transition:width .28s cubic-bezier(.2,.7,.2,1)}
.nav-a:hover{color:#EF5340}
.nav-a:hover::after{width:100%}
.btn-pulse{animation:btnPulse 2.6s ease-out infinite}
.photo-wrap{overflow:hidden;border-radius:26px;box-shadow:0 34px 70px -30px rgba(74,10,30,0.55)}
.photo-wrap img{transition:transform .9s cubic-bezier(.2,.7,.2,1);will-change:transform;width:100%;height:auto;display:block;border-radius:0}
.photo-wrap:hover img{transform:scale(1.06)}
.para{will-change:transform}
.marquee-track{display:flex;gap:0;width:max-content;animation:marquee 26s linear infinite}
.marquee-track:hover{animation-play-state:paused}
.nav-burger{display:none;background:none;border:1.5px solid rgba(139,29,69,.25);border-radius:12px;padding:9px 11px;cursor:pointer}
.mobile-menu{display:none}
.progress{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,#EF5340,#F5764E);z-index:200;width:0}

/* ---- header / nav ---- */
.topbar{background:#5A1024;color:#fff;font-size:.82rem}
.nav-shell{background:rgba(251,243,238,0.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(139,29,69,0.10);z-index:60!important;position:relative;width:100%}
.nav-shell.elementor-sticky--active{z-index:60!important}

/* ---- wrappers ---- */
.rm-wrap{width:100%!important;margin-left:auto!important;margin-right:auto!important;padding-left:24px!important;padding-right:24px!important}
.mw-380{max-width:380px!important}
.mw-560{max-width:560px!important}
.mw-620{max-width:620px!important}
.mw-720{max-width:720px!important}
.mw-740{max-width:740px!important}
.mw-760{max-width:760px!important}
.mw-820{max-width:820px!important}
.mw-840{max-width:840px!important}
.mw-1000{max-width:1000px!important}
.mw-1040{max-width:1040px!important}
.mw-1080{max-width:1080px!important}
.mw-1120{max-width:1120px!important}
.mw-1160{max-width:1160px!important}
.mw-1180{max-width:1180px!important}
.mw-1200{max-width:1200px!important}
.mw-1240{max-width:1240px!important}
.pad-sec{padding-top:clamp(70px,10vw,120px)!important;padding-bottom:clamp(70px,10vw,120px)!important}
.pad-sec-lg{padding-top:clamp(70px,10vw,130px)!important;padding-bottom:clamp(70px,10vw,130px)!important}
.pad-hero{padding-top:clamp(60px,9vw,120px)!important;padding-bottom:clamp(70px,9vw,120px)!important}
.pad-cd{padding-top:clamp(34px,5vw,52px)!important;padding-bottom:clamp(34px,5vw,52px)!important}
.pad-mc{padding-top:clamp(56px,8vw,100px)!important;padding-bottom:clamp(56px,8vw,100px)!important}
.pad-sp{padding-top:clamp(56px,8vw,90px)!important;padding-bottom:clamp(56px,8vw,90px)!important}
.pad-foot{padding-top:clamp(56px,8vw,84px)!important;padding-bottom:40px!important}
.pos-rel{position:relative}
.pos-static{position:static!important}
.text-center{text-align:center}
.w-auto{--width:auto;width:auto!important;max-width:none}

/* ---- secciones (gradientes 3-stop que Elementor no puede expresar) ---- */
.sec-hero{background:radial-gradient(120% 90% at 80% 10%,#EF5340 0%,#B6303F 42%,#7E1A42 100%)!important;color:#fff;overflow:hidden;position:relative}
.sec-paravos{background:radial-gradient(120% 100% at 20% 0%,#EF5340 0%,#B6303F 48%,#7E1A42 100%)!important;color:#fff;position:relative;overflow:hidden}
.sec-ctafinal{background:radial-gradient(120% 100% at 80% 0%,#EF5340 0%,#B6303F 45%,#7E1A42 100%)!important;color:#fff;position:relative;overflow:hidden}
.sec-charlas{background:#5A1024!important;color:#fff;position:relative;overflow:clip}
.sec-brillan{background:#8B1D45!important;color:#fff;position:relative;overflow:hidden}
.sec-countdown{background:#8B1D45!important;color:#fff}
.sec-marquee{background:#EF5340!important;color:#fff;overflow:hidden;padding-top:18px!important;padding-bottom:18px!important}
.sec-footer{background:#4E0F20!important;color:#fff}

/* ---- tipografía: kickers ---- */
.kicker{position:relative;margin-bottom:16px!important}
.kicker .elementor-heading-title{margin:0;font-weight:600;letter-spacing:.2em;text-transform:uppercase;font-size:.8rem;line-height:1.4;color:#EF5340}
.kicker--peach .elementor-heading-title{color:#FCE3D6}
.kicker--rose .elementor-heading-title{color:#F7C6B6}
.kicker--foot .elementor-heading-title{letter-spacing:.12em;font-size:.75rem;color:#F7C6B6}

/* ---- tipografía: títulos ---- */
.h1-hero .elementor-heading-title{margin:0;font-weight:700;text-transform:uppercase;line-height:.9;letter-spacing:-.025em;font-size:clamp(3rem,11vw,8.5rem);color:#fff}
.h2 .elementor-heading-title{margin:0;font-weight:700;line-height:1;text-transform:uppercase;letter-spacing:-.015em}
.h2{position:relative}
.h2a .elementor-heading-title{font-size:clamp(2rem,5vw,3.5rem)}
.h2b .elementor-heading-title{font-size:clamp(2rem,5.4vw,3.7rem)}
.h2c .elementor-heading-title{font-size:clamp(2rem,5.6vw,3.9rem)}
.h2d .elementor-heading-title{font-size:clamp(2rem,4.6vw,3.4rem)}
.h2cta .elementor-heading-title{font-size:clamp(2.4rem,6.5vw,4.4rem);line-height:.95;letter-spacing:-.02em}
.c-wine .elementor-heading-title{color:#8B1D45}
.c-white .elementor-heading-title{color:#fff}

/* ---- tipografía: párrafos ---- */
.hero-sub{margin:26px auto 0!important;max-width:620px!important}
.hero-sub p{margin:0;font-size:clamp(1.05rem,2.3vw,1.35rem);line-height:1.5;color:rgba(255,255,255,0.94)}
.hero-note{margin-top:20px!important}
.hero-note p{margin:0;font-size:.9rem;color:rgba(255,255,255,0.8)}
.plead p{margin:0 0 18px;font-size:1.1rem;line-height:1.6}
.plead p:last-child{margin-bottom:0}
.plead strong{font-weight:600}
.plead-sm p{margin:0;font-size:1.08rem;line-height:1.6}
.plead-ch p{margin:0;font-size:1.06rem;line-height:1.6;color:rgba(255,255,255,0.8)}
.plead-wb p{margin:0;font-size:1.12rem;line-height:1.6;color:rgba(255,255,255,0.92)}
.plead-en p{margin:0;font-size:1.1rem;line-height:1.55}
.plead-cta p{margin:0;font-size:1.15rem;line-height:1.55;color:rgba(255,255,255,0.94)}
.p-note p{margin:0;text-align:center;font-size:.92rem;color:#9A5266}
.p-sponsor{margin:24px auto 0!important;max-width:560px!important}
.p-sponsor p{margin:0;font-size:1rem;line-height:1.55;color:#9A5266}
.p-sponsor strong{color:#8B1D45;font-weight:600}
.p-ctanote{margin-top:20px!important}
.p-ctanote p{margin:0;font-size:.9rem;color:rgba(255,255,255,0.82)}

/* ---- countdown ---- */
.cd-wrap{display:flex!important;flex-wrap:wrap!important;flex-direction:row!important;gap:24px 40px!important;align-items:center!important;justify-content:center!important;text-align:center}
.cd-label{text-align:left;--width:auto;width:auto!important}
.cd-k{margin-bottom:4px!important}
.cd-k .elementor-heading-title{margin:0;font-weight:600;letter-spacing:.18em;text-transform:uppercase;font-size:.75rem;color:#F7C6B6;line-height:1.4}
.cd-t .elementor-heading-title{margin:0;font-weight:700;font-size:clamp(1.3rem,3vw,1.9rem);text-transform:uppercase;line-height:1;color:#fff}
.cd-digits{--width:auto;width:auto!important}

/* ---- grids ---- */
.qs-grid{display:grid!important;grid-template-columns:1.05fr .95fr!important;gap:clamp(36px,6vw,80px)!important;align-items:center!important}
.bgrid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:22px!important}
.dgrid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:24px!important}
.prog-grid{display:grid!important;grid-template-columns:.85fr 1.15fr!important;gap:clamp(40px,6vw,90px)!important;align-items:start!important}
.spk-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:18px!important}
.wb-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:22px!important;margin-bottom:40px!important}
.price-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:20px!important;align-items:stretch!important}
.tl-col{display:flex!important;flex-direction:column!important;gap:0!important}

/* ---- encabezados de sección ---- */
.sec-head{text-align:center;position:relative;margin-left:auto!important;margin-right:auto!important}
.mbc-58{margin-bottom:clamp(42px,6vw,58px)!important}
.mbc-62{margin-bottom:clamp(42px,6vw,62px)!important}
.mbc-66{margin-bottom:clamp(46px,6vw,66px)!important}

/* ---- cards ---- */
.bcard{background:#FBF3EE!important;border-radius:22px!important;padding:clamp(26px,2.6vw,34px)!important;border:1px solid rgba(139,29,69,0.07)!important;display:flex!important;flex-direction:column!important;gap:0!important}
.dcard{background:#fff!important;border-radius:24px!important;padding:clamp(30px,3.4vw,44px)!important;border:1px solid rgba(139,29,69,0.07)!important;box-shadow:0 20px 50px -34px rgba(74,10,30,0.4);display:flex!important;flex-direction:column!important;gap:0!important}
.wb-card{background:rgba(255,255,255,0.10)!important;border:1px solid rgba(255,255,255,0.16)!important;border-radius:20px!important;padding:clamp(28px,3.4vw,38px)!important;display:flex!important;flex-direction:column!important;gap:0!important}
.card-h3{margin-bottom:8px!important}
.card-h3 .elementor-heading-title{margin:0;font-weight:700;font-size:1.2rem;color:#8B1D45;line-height:1.3}
.card-h3-lg{margin-bottom:10px!important}
.card-h3-lg .elementor-heading-title{margin:0;font-weight:700;font-size:1.45rem;color:#8B1D45;line-height:1.3}
.card-p p{margin:0;font-size:1rem;line-height:1.5}
.card-p-lg p{margin:0;font-size:1.02rem;line-height:1.55}
.wb-h3{margin-bottom:8px!important}
.wb-h3 .elementor-heading-title{margin:0;font-weight:700;font-size:1.5rem;color:#FCE3D6;line-height:1.3}
.wb-p p{margin:0;line-height:1.55;font-size:1.05rem}

/* ---- columnas sticky ---- */
.sticky-col{position:sticky!important;top:120px!important}

/* ---- utilidades de margen ---- */
.mb-0{margin-bottom:0!important}
.mb-14{margin-bottom:14px!important}
.mb-16{margin-bottom:16px!important}
.mb-18{margin-bottom:18px!important}
.mb-20{margin-bottom:20px!important}
.mb-24{margin-bottom:24px!important}
.mb-26{margin-bottom:26px!important}
.mb-38{margin-bottom:38px!important}
.mt-20{margin-top:20px!important}
.mt-26{margin-top:26px!important}

/* ---- normalización Elementor ---- */
.e-con.rm-sec{padding:0}
.rm-sec .elementor-widget:not(:last-child){margin-block-end:0}
.elementor-widget-image.photo-wrap{text-align:left}

/* ============================================================
   MEDIA QUERIES — al final para ganar la cascada
   ============================================================ */
@media (max-width:1100px){
  .grid-4{grid-template-columns:repeat(2,1fr)!important}
}
@media (max-width:900px){
  .grid-2,.grid-3,.grid-foot{grid-template-columns:1fr!important}
  .nav-desk{display:none!important}
  .nav-burger{display:flex!important;align-items:center}
  .mobile-menu.open{display:flex!important}
  .sticky-col{position:static!important}
  .cd-label{text-align:center!important}
}
@media (max-width:640px){
  .grid-4{grid-template-columns:1fr!important}
  .topbar-loc,.topbar-sig{display:none!important}
  .nav-cta{display:none!important}
  .nav-logo{height:34px!important}
  .hero-flor1{right:-50px!important;width:220px!important;top:3%!important}
  .hero-flor2{left:-70px!important;width:210px!important;bottom:-90px!important}
}/* End custom CSS */