:root{--pink:#e81e62;--yellow:#ffd528;--green:#6ed24b;--blue:#18b7d8;--purple:#6a2bbf;--dark:#170511;--wine:#4d071f;--cream:#fff6df;--orange:#ff5a1f;--teal:#00a4b7;--text:#1f1f1f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Poppins,system-ui,sans-serif;color:var(--text);background:var(--cream);overflow-x:hidden}body::before{content:"";position:fixed;inset:0;background:url('../img/texture-cream.jpg') center/cover;opacity:.28;pointer-events:none;z-index:-2}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;gap:28px;padding:18px 44px;background:linear-gradient(180deg,rgba(15,2,11,.92),rgba(15,2,11,.52),transparent);color:white}.brand{font-family:Anton,sans-serif;line-height:.82;letter-spacing:.5px;display:grid;color:white;text-shadow:0 5px 0 rgba(0,0,0,.25);font-size:18px}.brand-main,.brand strong{color:var(--yellow);font-size:34px}.brand span:not(.brand-main){font-size:16px}.main-nav{display:flex;gap:26px;margin-left:auto;font-size:12px;font-weight:900;text-transform:uppercase}.main-nav a{position:relative;opacity:.9}.main-nav a:hover{color:var(--yellow)}.main-nav a:first-child::after{content:"";position:absolute;left:0;bottom:-8px;width:100%;height:3px;background:var(--yellow)}.header-actions{display:flex;align-items:center;gap:10px}.lang{border:0;background:transparent;color:white;font-weight:900;border-radius:99px;padding:10px 13px;cursor:pointer}.lang.active{background:var(--yellow);color:#1a0710}.btn{border:0;border-radius:8px;padding:14px 22px;font-weight:900;text-transform:uppercase;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:12px;cursor:pointer;transition:.25s transform,.25s box-shadow}.btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,.25)}.btn-primary{background:linear-gradient(135deg,#ff2d6d,var(--pink));color:white}.btn-outline{border:2px solid var(--yellow);color:white;background:rgba(0,0,0,.15)}.btn-yellow{background:var(--yellow);color:#200617}.btn-teal{background:var(--teal);color:white}.btn-orange{background:var(--orange);color:white}.btn-lg{min-width:230px}.nav-toggle{display:none;background:none;border:0;gap:5px;flex-direction:column}.nav-toggle span{width:28px;height:3px;background:white}.hero{min-height:860px;position:relative;background:radial-gradient(circle at 70% 35%,rgba(232,30,98,.22),transparent 30%),linear-gradient(115deg,#10030b 0%,#37071c 50%,#12040b 100%);color:white;overflow:hidden;display:grid;align-items:center;padding:130px 0 70px}.hero-bg{position:absolute;right:0;top:0;bottom:0;width:58%;clip-path:polygon(10% 0,100% 0,100% 100%,0 100%);opacity:.88}.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#170511 0%,rgba(23,5,17,.25) 38%,transparent)}.hero-bg img{width:100%;height:100%;object-fit:cover}.hero-content{position:relative;z-index:2;width:min(650px,92vw);margin-left:7vw}.eyebrow,.section-kicker{color:var(--yellow);font-weight:900;text-transform:uppercase;letter-spacing:.08em}.hero h1{font-family:Anton,sans-serif;text-transform:uppercase;font-size:clamp(44px,7vw,82px);line-height:.95;margin:20px 0 18px;letter-spacing:.5px;text-wrap:balance}.hero h1::first-line{color:var(--cream)}.hero p{font-size:18px;max-width:560px;color:#ffecc1}.event-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:38px 0 20px}.event-meta span{display:grid;border-left:2px solid rgba(255,213,40,.4);padding-left:16px}.event-meta b{text-transform:uppercase;font-size:13px}.event-meta small{color:#ffdda3;font-weight:700}.countdown{border:1px solid rgba(255,255,255,.25);background:rgba(0,0,0,.38);backdrop-filter:blur(10px);border-radius:14px;display:grid;grid-template-columns:1fr repeat(4,120px);align-items:center;max-width:650px;overflow:hidden}.count-title{color:var(--yellow);font-weight:900;text-transform:uppercase;text-align:center}.countdown div{padding:22px 10px;text-align:center;border-left:1px solid rgba(255,255,255,.14)}.countdown strong{font-size:34px}.countdown small{display:block;text-transform:uppercase;font-weight:800;font-size:11px}.hero-buttons{display:flex;gap:18px;margin-top:24px;flex-wrap:wrap}.decor{position:absolute;z-index:3;width:50px;height:110px;background:repeating-linear-gradient(135deg,var(--pink) 0 14px,transparent 14px 24px);transform:skew(-10deg)}.decor-a{left:4%;top:22%}.decor-b{left:46%;top:18%;background:repeating-linear-gradient(135deg,var(--purple) 0 14px,transparent 14px 24px)}.decor-c{right:4%;top:38%;background:repeating-linear-gradient(135deg,var(--blue) 0 14px,transparent 14px 24px)}.decor-d{right:16%;bottom:16%;background:repeating-linear-gradient(135deg,var(--yellow) 0 14px,transparent 14px 24px)}.strip{background:linear-gradient(90deg,#eb1659,#bb0c44);color:white;display:grid;grid-template-columns:repeat(4,1fr);padding:32px 7vw;gap:20px}.stats article{display:grid;grid-template-columns:auto 1fr;gap:0 14px;align-items:center;border-right:1px solid rgba(255,255,255,.35)}.stats article:last-child{border:0}.stats .icon{font-size:34px;color:var(--yellow);grid-row:span 2}.stats strong{font-size:34px;color:var(--yellow);line-height:1}.stats small{text-transform:uppercase;font-weight:900}.section{padding:90px 7vw;position:relative}.section-head{margin-bottom:42px}.centered{text-align:center}.section h2{font-family:Anton,sans-serif;font-size:clamp(34px,5vw,58px);line-height:1;text-transform:uppercase;margin:10px 0 18px;color:#5b0730}.intro{display:grid;grid-template-columns:1fr 440px;gap:70px;align-items:center}.intro p,.seminar-copy p,.tickets-copy p{font-size:18px;line-height:1.7}.intro-card{border-radius:32px;overflow:hidden;box-shadow:0 25px 60px rgba(68,5,30,.22);transform:rotate(-2deg)}.experiences{background:linear-gradient(180deg,#fff8e7,#fff2d7)}.experience-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}.exp-card{border:0;background:white;border-radius:18px;overflow:hidden;box-shadow:0 12px 26px rgba(0,0,0,.1);cursor:pointer;padding:0;transition:.25s}.exp-card:hover,.exp-card.active{transform:translateY(-8px);box-shadow:0 22px 45px rgba(112,12,54,.25)}.exp-card img{height:150px;width:100%;object-fit:cover}.exp-card span{display:block;padding:16px;font-weight:900;text-transform:uppercase;color:#5b0730}.experience-detail{margin-top:26px;padding:28px;border-radius:22px;background:white;border:2px solid rgba(232,30,98,.12);display:grid;grid-template-columns:80px 1fr;gap:20px;align-items:center}.experience-detail strong{font-family:Anton,sans-serif;font-size:38px;color:var(--pink);text-transform:uppercase}.seminars{background:linear-gradient(110deg,#220513,#4e0724 55%,#170511);color:white;display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:34px;align-items:center;overflow:hidden}.seminars::after{content:"";position:absolute;right:-40px;top:40px;width:100px;height:200px;background:repeating-linear-gradient(135deg,var(--green) 0 18px,transparent 18px 32px)}.seminars h2{color:white}.seminar-img{border-radius:20px;border:1px solid rgba(255,255,255,.2);height:420px;width:100%;object-fit:cover}.seminar-list{border:1px solid rgba(255,255,255,.18);border-radius:16px;overflow:hidden}.seminar-list button{width:100%;display:grid;grid-template-columns:110px 1fr;gap:18px;padding:22px;background:rgba(255,255,255,.03);color:white;border:0;border-bottom:1px solid rgba(255,255,255,.13);text-align:left;cursor:pointer}.seminar-list button:hover{background:rgba(255,213,40,.1)}.seminar-list b{color:#ff2d6d}.map-section{background:#fff7e7}.festival-map{height:420px;border-radius:30px;background:linear-gradient(rgba(255,246,223,.7),rgba(255,246,223,.88)),url('../img/texture-green.jpg') center/cover;position:relative;box-shadow:inset 0 0 0 2px rgba(91,7,48,.08),0 24px 70px rgba(91,7,48,.14);overflow:hidden}.festival-map::before{content:"ENTRADA / ENTRY";position:absolute;left:50%;bottom:24px;transform:translateX(-50%);font-weight:900;color:#5b0730}.festival-map button{position:absolute;left:var(--x);top:var(--y);width:var(--w);height:var(--h);border:3px solid white;border-radius:18px;background:linear-gradient(135deg,var(--pink),#ff6a2e);color:white;font-weight:900;text-transform:uppercase;box-shadow:0 18px 40px rgba(0,0,0,.18);cursor:pointer}.festival-map button:nth-child(2){background:linear-gradient(135deg,var(--purple),#25124b)}.festival-map button:nth-child(3){background:linear-gradient(135deg,var(--green),#238f2b)}.festival-map button:nth-child(4){background:linear-gradient(135deg,var(--blue),#05768c)}.festival-map button:nth-child(5){background:linear-gradient(135deg,var(--orange),#ff9c00)}.gallery-grid{display:grid;grid-template-columns:1.1fr .9fr 1.2fr 1fr 1fr;gap:14px}.gallery-grid img{height:230px;width:100%;object-fit:cover;border-radius:14px;box-shadow:0 16px 30px rgba(0,0,0,.15)}.tickets{background:linear-gradient(115deg,#86062c,#d0104a);color:white;display:grid;grid-template-columns:360px 1fr;gap:48px;align-items:center}.tickets h2{color:white}.ticket-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.ticket-cards article{background:#fff8e7;color:#2a0715;border-radius:18px;padding:28px;box-shadow:0 20px 55px rgba(0,0,0,.24)}.ticket-cards h3{font-family:Anton,sans-serif;font-size:34px;color:#d0104a;text-transform:uppercase;margin:0}.site-footer{background:#12030b;color:white;display:grid;grid-template-columns:1.2fr 1fr 1fr 1.2fr;gap:34px;padding:56px 7vw 40px}.site-footer h3{text-transform:uppercase;color:#fff0c7}.site-footer a,.site-footer p{display:block;color:#dfcad0;margin:8px 0}.newsletter input{width:100%;padding:15px;border-radius:8px;border:0;margin-bottom:10px}.modal{border:0;border-radius:24px;padding:0;background:transparent}.modal::backdrop{background:rgba(14,2,8,.78);backdrop-filter:blur(8px)}.modal-card{width:min(480px,92vw);background:#fff7e7;border-radius:24px;padding:34px;display:grid;gap:16px;position:relative}.modal-card h2{font-family:Anton,sans-serif;font-size:42px;margin:0;color:#5b0730}.modal-card label{display:grid;gap:6px;font-weight:800}.modal-card input{padding:14px;border:1px solid #e7cfc3;border-radius:8px}.modal-close{position:absolute;right:18px;top:14px;border:0;background:none;font-size:32px;cursor:pointer}.form-status{font-weight:800;color:var(--green);min-height:1em}.cursor-dot{position:fixed;width:14px;height:14px;border-radius:50%;background:var(--yellow);z-index:999;pointer-events:none;mix-blend-mode:difference;transform:translate(-50%,-50%);opacity:.85}@media(max-width:980px){.site-header{padding:14px 20px}.nav-toggle{display:flex;margin-left:auto}.main-nav{display:none;position:absolute;top:76px;left:18px;right:18px;background:#170511;padding:20px;border-radius:16px;flex-direction:column}.main-nav.open{display:flex}.header-actions{margin-left:0}.header-actions .btn{display:none}.hero{min-height:auto;padding-top:115px}.hero-bg{opacity:.35;width:100%;clip-path:none}.hero-content{margin:0 auto}.event-meta,.countdown,.strip,.intro,.seminars,.tickets,.site-footer{grid-template-columns:1fr}.countdown{grid-template-columns:repeat(4,1fr)}.count-title{grid-column:1/-1}.experience-grid,.ticket-cards{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:1fr 1fr}.seminar-img{height:300px}}@media(max-width:580px){.brand-main,.brand strong{font-size:26px}.hero h1{font-size:43px}.experience-grid,.ticket-cards{grid-template-columns:1fr}.strip{padding:26px 20px}.stats article{border-right:0;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:16px}.countdown strong{font-size:26px}.section{padding:66px 22px}.site-footer{padding:46px 22px}.festival-map{height:520px}.festival-map button{font-size:11px}.cursor-dot{display:none}}
.ticket-price{display:block;margin:18px 0 20px;font-family:Anton,sans-serif;font-size:30px;color:#5b0730;letter-spacing:.5px}.paypal-note{grid-column:1/-1;margin:16px 0 0;color:#fff0c7;font-weight:800}.order-summary{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px dashed #d0104a;border-radius:12px;padding:14px 16px;font-weight:900}.order-summary strong{font-family:Anton,sans-serif;font-size:28px;color:#d0104a}.paypal-box{background:#fff;border-radius:14px;padding:16px;border:1px solid #ead3c3}.paypal-box p{margin:0 0 12px;color:#5b0730;font-weight:800}.paypal-warning{font-size:13px;color:#8b5a00;background:#fff3cd;border:1px solid #ffe08a;border-radius:10px;padding:12px}.btn-outline-dark{border:2px solid #5b0730;color:#5b0730;background:transparent}.btn-outline-dark:hover{background:#5b0730;color:white}
.directions{background:linear-gradient(180deg,#fff7e7 0%,#fff0d1 100%);display:grid;grid-template-columns:420px 1fr;gap:34px;align-items:stretch;overflow:hidden}.directions::before{content:"";position:absolute;right:-40px;top:18px;width:150px;height:150px;background:repeating-linear-gradient(135deg,var(--pink) 0 18px,transparent 18px 30px);opacity:.55;transform:rotate(18deg)}.directions-copy{background:#fff8e7;border:1px solid rgba(91,7,48,.08);border-radius:26px;padding:34px;box-shadow:0 22px 60px rgba(91,7,48,.12);position:relative;z-index:2}.directions-copy h2{font-size:clamp(34px,4.5vw,56px)}.directions-copy p{font-size:17px;line-height:1.7}.directions-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}.directions-map{min-height:430px;border-radius:28px;overflow:hidden;box-shadow:0 24px 70px rgba(91,7,48,.18);border:8px solid #fff8e7;position:relative;z-index:2}.directions-map iframe{width:100%;height:100%;border:0;display:block;filter:saturate(1.08) contrast(1.02)}.directions-tips{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;position:relative;z-index:2}.directions-tips article{background:white;border-radius:18px;padding:20px;border-left:8px solid var(--yellow);box-shadow:0 14px 35px rgba(91,7,48,.08)}.directions-tips b{display:block;color:#5b0730;text-transform:uppercase;font-size:13px;margin-bottom:8px}.directions-tips span{font-weight:700;color:#3a1827}@media(max-width:980px){.directions{grid-template-columns:1fr}.directions-map{min-height:360px}.directions-tips{grid-template-columns:1fr}}

/* FIX MOBILE HERO DECORATIONS
   The colored papel-picado/confetti ornaments looked good on desktop,
   but on phone screens they could overlap the hero text. On mobile we
   push them behind the content, reduce their opacity, and hide the ones
   that sit near the left text column. */
@media (max-width: 980px){
  .hero-content{z-index:8;position:relative}
  .decor{z-index:1;opacity:.32;pointer-events:none;transform:scale(.62) skew(-10deg);filter:blur(.1px)}
  .decor-a{left:auto;right:6%;top:18%}
  .decor-b{left:auto;right:12%;top:50%}
  .decor-c{right:4%;top:auto;bottom:20%}
  .decor-d{right:auto;left:8%;bottom:8%}
}
@media (max-width: 580px){
  .hero{padding-top:112px;padding-bottom:52px}
  .hero-content{width:min(92vw,520px)}
  .decor-a,.decor-b{display:none}
  .decor-c{width:34px;height:78px;right:-6px;bottom:18%;opacity:.26}
  .decor-d{width:32px;height:74px;left:-6px;bottom:5%;opacity:.22}
  .hero p,.event-meta,.countdown,.hero-buttons{position:relative;z-index:9}
}

/* Tienda administrable */
.shop-section{background:linear-gradient(180deg,#fff2c7,#fff 58%,#fff2c7);position:relative;overflow:hidden}.shop-section:before{content:"";position:absolute;inset:0;background:url('../img/papel-picado.webp') center/520px auto;opacity:.055;pointer-events:none}.shop-section>.section-head,.shop-layout,.shop-toolbar{position:relative}.shop-toolbar{max-width:1120px;margin:0 auto 24px;display:flex;gap:12px;justify-content:center}.shop-toolbar input,.shop-toolbar select{min-height:52px;border:0;border-radius:999px;padding:0 20px;box-shadow:0 16px 44px rgba(35,18,60,.12);font-weight:800}.shop-toolbar input{min-width:min(520px,100%)}.shop-layout{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr 340px;gap:24px;align-items:start}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.product-card{background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 24px 60px rgba(35,18,60,.12);border:1px solid rgba(35,18,60,.08);display:flex;flex-direction:column}.product-card figure{height:210px;margin:0;background:#fff2c7;display:grid;place-items:center;overflow:hidden}.product-card img{width:100%;height:100%;object-fit:cover}.product-card .product-body{padding:18px;display:grid;gap:10px;flex:1}.product-card h3{font-size:1.05rem;margin:0}.product-card p{font-size:.88rem;color:#6f6278;margin:0}.product-card .product-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto}.product-card .price{font-size:1.25rem;font-weight:950;color:#9d2450}.product-card .badge{background:#fff2c7;color:#21132d;border-radius:999px;padding:6px 10px;font-size:.75rem;font-weight:900}.cart-panel{position:sticky;top:100px;background:#21132d;color:#fff;border-radius:30px;padding:22px;box-shadow:0 30px 70px rgba(35,18,60,.22)}.cart-panel h3{font-size:1.8rem;color:#f4b63f}.cart-items{display:grid;gap:12px;min-height:70px}.cart-empty{opacity:.72}.cart-line{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;border-radius:16px;background:rgba(255,255,255,.08)}.cart-line b{font-size:.92rem}.cart-line small{opacity:.75}.cart-line button{grid-column:2;background:#e23d5b;color:#fff;border:0;border-radius:999px;width:26px;height:26px;font-weight:900}.cart-total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.16);margin-top:16px;padding-top:16px;font-weight:950}.compact-form{display:grid;gap:10px;margin-top:16px}.compact-form input{width:100%}.cart-panel small{display:block;opacity:.72;margin-top:12px}.ticket-cards.loading,.product-grid.loading{opacity:.55;filter:grayscale(.2)}
@media(max-width:980px){.shop-layout{grid-template-columns:1fr}.cart-panel{position:relative;top:auto}.product-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.shop-toolbar{flex-direction:column}.product-grid{grid-template-columns:1fr}.product-card figure{height:230px}.shop-layout{padding:0 10px}}

/* Seminarios visuales y zona gastronómica administrable */
.seminar-carousel{position:relative;grid-column:span 2;min-height:480px}.seminar-track{position:relative;height:100%}.seminar-slide{position:absolute;inset:0;opacity:0;transform:translateX(28px) scale(.98);pointer-events:none;transition:.45s ease;display:grid;grid-template-columns:1.1fr .9fr;gap:0;background:#fff7e7;color:#2a0715;border-radius:28px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.28)}.seminar-slide.active{opacity:1;transform:none;pointer-events:auto}.seminar-slide img{width:100%;height:100%;min-height:480px;object-fit:cover}.seminar-slide div{padding:42px;display:flex;flex-direction:column;justify-content:center}.seminar-slide b{color:#e81e62;font-size:1.1rem}.seminar-slide h3{font-family:Anton,sans-serif;font-size:clamp(34px,4vw,58px);line-height:1;text-transform:uppercase;margin:14px 0;color:#5b0730}.seminar-slide p{font-size:1.05rem;line-height:1.6}.seminar-slide small{font-weight:900;color:#00a4b7;text-transform:uppercase}.carousel-control{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:48px;height:48px;border:0;border-radius:50%;background:#ffd528;color:#170511;font-size:38px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 18px 40px rgba(0,0,0,.25)}.carousel-control.prev{left:-22px}.carousel-control.next{right:-22px}.seminar-dots{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);z-index:4;display:flex;gap:8px}.seminar-dots button{width:10px;height:10px;border:0;border-radius:99px;background:rgba(255,255,255,.65);cursor:pointer}.seminar-dots button.active{width:32px;background:#ffd528}.gastronomy-zone{background:linear-gradient(180deg,#fff7e7,#fff0c8);overflow:hidden}.gastronomy-zone:before{content:"";position:absolute;inset:0;background:url('../img/papel-picado.webp') top center/520px auto;opacity:.06}.gastronomy-zone>.section-head,.exhibitor-grid{position:relative}.exhibitor-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.exhibitor-card{background:white;border-radius:30px;overflow:hidden;box-shadow:0 26px 70px rgba(91,7,48,.14);border:1px solid rgba(91,7,48,.08)}.exhibitor-card figure{margin:0;height:260px;overflow:hidden;background:#fff2c7}.exhibitor-card img{width:100%;height:100%;object-fit:cover;transition:.4s transform}.exhibitor-card:hover img{transform:scale(1.06)}.exhibitor-body{padding:22px}.exhibitor-body .badge{display:inline-flex;background:#ffd528;border-radius:99px;padding:7px 12px;font-size:.75rem;font-weight:950;text-transform:uppercase;color:#2a0715}.exhibitor-body h3{font-size:1.35rem;margin:14px 0 8px;color:#5b0730}.exhibitor-body p{color:#62505f;line-height:1.55}.exhibitor-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;font-weight:900;color:#e81e62;margin-top:16px}.exhibitor-meta a{color:#00a4b7}@media(max-width:980px){.seminar-carousel{grid-column:auto}.seminar-slide{grid-template-columns:1fr}.seminar-slide img{height:260px;min-height:260px}.seminar-slide div{padding:28px}.exhibitor-grid{grid-template-columns:1fr 1fr}.seminar-carousel{min-height:620px}}@media(max-width:640px){.exhibitor-grid{grid-template-columns:1fr}.carousel-control.prev{left:10px}.carousel-control.next{right:10px}.seminar-carousel{min-height:650px}.seminar-slide h3{font-size:34px}}


/* Refinamiento v3: seminarios visuales, tienda premium, iconos sociales */
.seminar-carousel{isolation:isolate}.seminar-slide{background:linear-gradient(135deg,#fff9e8,#fff0c3);border:1px solid rgba(255,213,40,.25)}.seminar-slide::before{content:"";position:absolute;inset:auto 0 0 0;height:38%;background:linear-gradient(0deg,rgba(0,0,0,.42),transparent);opacity:.12;pointer-events:none}.seminar-slide figure{margin:0;min-height:480px;overflow:hidden;position:relative}.seminar-slide figure::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 56%,rgba(255,247,231,.92));pointer-events:none}.seminar-slide figure img{width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform .8s ease}.seminar-slide.active figure img{transform:scale(1)}.seminar-slide .seminar-info{position:relative;z-index:1}.seminar-slide .seminar-chip{display:inline-flex;width:max-content;background:#ffd528;color:#21132d;border-radius:999px;padding:8px 14px;font-weight:950;text-transform:uppercase;box-shadow:0 10px 24px rgba(255,213,40,.35)}
.shop-section{background:radial-gradient(circle at 8% 10%,rgba(255,213,40,.26),transparent 24%),radial-gradient(circle at 95% 18%,rgba(232,30,98,.14),transparent 22%),linear-gradient(180deg,#fff7df,#fff 48%,#fff1c8)}.shop-toolbar{background:rgba(255,255,255,.74);padding:12px;border:1px solid rgba(91,7,48,.08);border-radius:28px;backdrop-filter:blur(12px);box-shadow:0 24px 70px rgba(91,7,48,.10)}.product-card{position:relative;border-radius:32px;overflow:hidden;transform:translateY(0);transition:transform .32s cubic-bezier(.2,.8,.2,1),box-shadow .32s ease,border-color .32s ease}.product-card::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,213,40,.42),rgba(232,30,98,.18),rgba(0,164,183,.16));opacity:0;transition:.32s;pointer-events:none;z-index:1}.product-card:hover{transform:translateY(-12px) rotate(-.65deg);box-shadow:0 38px 90px rgba(91,7,48,.24);border-color:rgba(232,30,98,.28)}.product-card:hover::before{opacity:1}.product-card figure{position:relative;background:linear-gradient(145deg,#fff0c6,#ffffff);height:235px}.product-card figure::after{content:"Ver producto";position:absolute;left:18px;bottom:18px;background:#170511;color:#ffd528;border-radius:999px;padding:10px 15px;font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.04em;opacity:0;transform:translateY(8px);transition:.3s}.product-card:hover figure::after{opacity:1;transform:none}.product-card img{transition:transform .45s ease,filter .45s ease}.product-card:hover img{transform:scale(1.08);filter:saturate(1.08) contrast(1.02)}.product-card .product-body{position:relative;z-index:2;background:linear-gradient(180deg,#fff,#fffaf0)}.product-card h3{font-size:1.12rem;color:#4e0724;line-height:1.18}.product-card .badge{background:#ffd528;color:#4e0724;box-shadow:0 8px 18px rgba(255,213,40,.28)}.product-card .price{font-size:1.38rem;color:#d0104a}.product-card .add-product{border-radius:999px;min-width:112px}.cart-panel{border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,#271333,#150817);box-shadow:0 34px 86px rgba(33,19,45,.28)}
.social-icons{display:flex;gap:14px;align-items:center;margin-top:12px}.social-icon{width:50px;height:50px;border-radius:18px;display:grid!important;place-items:center!important;margin:0!important;color:white!important;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);transition:.25s}.social-icon svg{width:25px;height:25px;fill:currentColor}.social-icon.facebook{background:linear-gradient(135deg,#1877f2,#0b4aa1)}.social-icon.instagram{background:radial-gradient(circle at 30% 107%,#fdf497 0 5%,#fd5949 45%,#d6249f 60%,#285AEB 90%)}.social-icon:hover{transform:translateY(-4px) scale(1.04);box-shadow:0 16px 34px rgba(0,0,0,.28)}
@media(max-width:980px){.seminar-slide figure{min-height:260px}.seminar-slide figure::after{background:linear-gradient(0deg,rgba(255,247,231,.95),transparent 65%)}.product-card:hover{transform:translateY(-6px)}}

/* Dashboard v3: formularios nuevos más claros */
.create-panel{border:2px dashed rgba(232,30,98,.28)!important;background:linear-gradient(135deg,#fffdf6,#fff0c8)!important}.create-panel h2::before{content:"＋";display:inline-grid;place-items:center;width:34px;height:34px;margin-right:10px;border-radius:12px;background:#e81e62;color:#fff;font-family:Poppins,sans-serif;font-size:20px;vertical-align:middle}.catalog-panel{background:#fff!important}.catalog-panel h2{display:flex;align-items:center;gap:10px}.catalog-panel h2::before{content:"▦";color:#00a4b7}.admin-card-list .visual-form{background:#fff;border-color:rgba(35,18,60,.10)}.visual-form:hover{box-shadow:0 26px 60px rgba(35,18,60,.12)}.admin-sidebar a:hover{background:rgba(255,213,40,.2);color:#ffd528}.admin-form input:focus,.admin-form textarea:focus,.admin-form select:focus{outline:none;border-color:#e81e62;box-shadow:0 0 0 4px rgba(232,30,98,.10)}

/* FIX v4 carrusel de seminarios: imagen + texto dinámico desde dashboard */
.seminar-track{position:relative;min-height:480px}
.seminar-slide{min-height:480px}
.seminar-slide .seminar-visual{margin:0;min-height:480px;background:#2a0715;overflow:hidden;position:relative}
.seminar-slide .seminar-visual img{width:100%;height:100%;min-height:480px;object-fit:cover;display:block}
.seminar-slide .seminar-info{background:linear-gradient(135deg,#fff9e8,#fff0c3);padding:42px;display:flex;flex-direction:column;justify-content:center}
.seminar-slide .seminar-chip{display:inline-flex;width:max-content;background:#ffd528;color:#21132d;border-radius:999px;padding:8px 14px;font-weight:950;text-transform:uppercase;box-shadow:0 10px 24px rgba(255,213,40,.35)}
@media(max-width:980px){.seminar-track,.seminar-slide{min-height:620px}.seminar-slide .seminar-visual,.seminar-slide .seminar-visual img{min-height:280px;height:280px}.seminar-slide .seminar-info{padding:28px}}
@media(max-width:640px){.seminar-track,.seminar-slide{min-height:690px}.seminar-slide .seminar-visual,.seminar-slide .seminar-visual img{min-height:260px;height:260px}}

/* V5: video promocional, entrada gratuita y Teatro del Pueblo */
.hero-free-badge{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;padding:12px 20px;border-radius:999px;background:#ffd528;color:#2a0715;font-weight:950;letter-spacing:.06em;box-shadow:0 18px 45px rgba(255,213,40,.35);animation:freePulse 2.4s ease-in-out infinite}
@keyframes freePulse{50%{transform:scale(1.035);box-shadow:0 22px 60px rgba(255,213,40,.5)}}
.promo-video-section{position:relative;display:grid;grid-template-columns:.75fr 1.25fr;gap:56px;align-items:center;padding:90px max(5vw,28px);background:radial-gradient(circle at 10% 20%,rgba(255,213,40,.18),transparent 28%),linear-gradient(135deg,#250719,#5b0730 55%,#1b0716);color:#fff;overflow:hidden}
.promo-video-section::before{content:"";position:absolute;inset:0;background:url('../img/papel-picado.webp') top center/650px auto;opacity:.055;pointer-events:none}.promo-video-copy,.promo-video-frame{position:relative;z-index:1}.promo-video-copy h2{font-family:Anton,sans-serif;font-size:clamp(46px,6vw,86px);line-height:.95;text-transform:uppercase;margin:12px 0 20px}.promo-video-copy p{font-size:1.05rem;line-height:1.7;max-width:580px;color:#f7dfe9}.promo-video-frame{max-width:520px;justify-self:center;border-radius:34px;padding:12px;background:linear-gradient(145deg,#ffd528,#e81e62,#00a4b7);box-shadow:0 40px 100px rgba(0,0,0,.46);transform:rotate(1.2deg)}.promo-video-frame video{display:block;width:100%;max-height:720px;aspect-ratio:9/16;object-fit:cover;border-radius:24px;background:#12030d}.free-callout{display:inline-flex;padding:12px 18px;border-radius:999px;background:#ffd528;color:#2a0715;font-weight:950;letter-spacing:.05em;margin-bottom:16px;box-shadow:0 18px 42px rgba(255,213,40,.3)}.ticket-free{position:relative;border:3px solid #ffd528!important;transform:translateY(-8px)}.ticket-ribbon{position:absolute;right:16px;top:16px;padding:7px 12px;border-radius:999px;background:#ffd528;color:#2a0715;font-size:.75rem;font-weight:950;text-transform:uppercase}.ticket-free .ticket-price{color:#00a4b7!important;font-size:2rem!important}.theater-section{background:radial-gradient(circle at 15% 10%,rgba(232,30,98,.22),transparent 26%),linear-gradient(180deg,#170511,#32102c);color:#fff;overflow:hidden}.theater-section .section-head p{max-width:720px;margin:0 auto;color:#ecdce6}.artist-carousel{position:relative;max-width:1180px;margin:42px auto 0}.artist-track{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;min-height:520px}.artist-card{position:relative;min-height:520px;border-radius:30px;overflow:hidden;background:#2a0715;box-shadow:0 30px 80px rgba(0,0,0,.35);transition:transform .35s ease,filter .35s ease}.artist-card:hover{transform:translateY(-10px)}.artist-card figure{position:absolute;inset:0;margin:0}.artist-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.artist-card:hover img{transform:scale(1.07)}.artist-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 22%,rgba(23,5,17,.1) 42%,rgba(23,5,17,.96) 100%)}.artist-overlay{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:28px}.artist-overlay>span{display:inline-flex;background:#ffd528;color:#2a0715;border-radius:999px;padding:7px 11px;font-weight:950;font-size:.74rem}.artist-overlay small{display:block;margin-top:12px;color:#54d9e5;font-weight:900;text-transform:uppercase}.artist-overlay h3{font-family:Anton,sans-serif;font-size:clamp(30px,3.4vw,52px);line-height:1;margin:8px 0 10px;text-transform:uppercase}.artist-overlay p{color:#f3dce8;line-height:1.55}.artist-link{display:inline-flex;margin-top:12px;color:#ffd528;font-weight:900}.artist-control{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:50px;height:50px;border:0;border-radius:50%;background:#ffd528;color:#2a0715;font-size:36px;cursor:pointer;box-shadow:0 18px 40px rgba(0,0,0,.3)}.artist-prev{left:-24px}.artist-next{right:-24px}.artist-dots{display:flex;justify-content:center;gap:8px;margin-top:24px}.artist-dots button{width:10px;height:10px;border:0;border-radius:999px;background:rgba(255,255,255,.34)}.artist-dots button.active{width:34px;background:#ffd528}.social-icon.tiktok{background:linear-gradient(135deg,#151515,#282828);box-shadow:inset 3px 0 0 #25f4ee,inset -3px 0 0 #fe2c55}
@media(max-width:980px){.promo-video-section{grid-template-columns:1fr;text-align:center}.promo-video-copy p{margin-left:auto;margin-right:auto}.promo-video-frame{max-width:440px}.artist-track{grid-template-columns:repeat(2,1fr)}.artist-card:nth-child(n+3){display:none}.artist-prev{left:8px}.artist-next{right:8px}}
@media(max-width:640px){.hero-free-badge{font-size:.78rem;padding:10px 14px}.promo-video-section{padding:68px 20px;gap:34px}.promo-video-copy h2{font-size:48px}.promo-video-frame{width:min(100%,350px);padding:8px;border-radius:25px}.promo-video-frame video{border-radius:19px}.artist-track{grid-template-columns:1fr;min-height:500px}.artist-card{min-height:500px}.artist-card:nth-child(n+2){display:none}.ticket-free{transform:none}.theater-section{padding-left:18px;padding-right:18px}}
@media(max-width:980px){.artist-track{grid-template-columns:1fr;max-width:620px;margin:0 auto}.artist-card{display:none}.artist-card.active{display:block}.artist-card:nth-child(n){display:none}.artist-card.active:nth-child(n){display:block}}


/* V6.1 Patrocinadores + MOLE ROUTE */
.mole-route-section{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:64px;align-items:center;background:radial-gradient(circle at 18% 20%,rgba(255,213,40,.16),transparent 30%),linear-gradient(135deg,#170b08,#3d190d 55%,#180908);color:#fff;overflow:hidden}.mole-route-brand{position:relative;display:grid;place-items:center}.mole-route-brand::before{content:"";position:absolute;width:90%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,213,40,.25),transparent 67%);filter:blur(18px)}.mole-route-brand img{position:relative;width:min(100%,520px);filter:drop-shadow(0 34px 45px rgba(0,0,0,.45));transition:transform .5s ease}.mole-route-section:hover .mole-route-brand img{transform:rotate(-2deg) scale(1.025)}.mole-route-content h2{font-family:Anton,sans-serif;font-size:clamp(48px,6vw,88px);line-height:.95;text-transform:uppercase;margin:12px 0 18px}.mole-route-content>p{max-width:720px;color:#eddacf;line-height:1.7}.route-events{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:32px}.route-card{display:grid;grid-template-columns:130px 1fr;min-height:190px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);border-radius:24px;overflow:hidden;backdrop-filter:blur(12px);transition:.3s}.route-card:hover{transform:translateY(-6px);background:rgba(255,255,255,.13);box-shadow:0 28px 65px rgba(0,0,0,.28)}.route-card figure{margin:0;min-height:100%;background:#e8c98f}.route-card img{width:100%;height:100%;object-fit:cover}.route-card>div{padding:20px}.route-card span{display:inline-flex;color:#ffd528;font-size:.78rem;font-weight:900;text-transform:uppercase}.route-card h3{font-family:Anton,sans-serif;font-size:1.65rem;line-height:1.05;margin:6px 0}.route-card b{color:#70d7df}.route-card p{font-size:.88rem;line-height:1.5;color:#eadbe2}.route-card a{display:inline-flex;margin-top:8px;color:#ffd528;font-weight:900}.route-empty{grid-column:1/-1;padding:28px;border:1px dashed rgba(255,255,255,.28);border-radius:22px;text-align:center;color:#f1dfd5}
.sponsors-section{padding:26px 0;background:#fff8e8;border-block:1px solid rgba(74,32,17,.12);overflow:hidden}.sponsors-heading{text-align:center;padding:0 20px 18px;font-family:Anton,sans-serif;font-size:clamp(28px,4vw,44px);text-transform:uppercase;color:#5b0730}.sponsors-marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.sponsors-track{display:flex;align-items:center;width:max-content;gap:26px;animation:sponsorsMove 28s linear infinite}.sponsors-track:hover{animation-play-state:paused}.sponsor-logo{width:210px;height:100px;padding:15px 22px;border-radius:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;background:#fff;border:1px solid rgba(74,32,17,.10);box-shadow:0 14px 35px rgba(74,32,17,.08);color:#5b0730;font-weight:800}.sponsor-logo img{max-width:100%;max-height:58px;object-fit:contain}.sponsor-logo span{font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.sponsor-placeholder{padding:20px 80px;font-family:Anton,sans-serif;font-size:30px;color:#5b0730}@keyframes sponsorsMove{to{transform:translateX(calc(-50% - 13px))}}
@media(max-width:980px){.mole-route-section{grid-template-columns:1fr;text-align:center}.mole-route-brand img{max-width:430px}.mole-route-content>p{margin-inline:auto}.route-events{text-align:left}.route-card{grid-template-columns:110px 1fr}}
@media(max-width:640px){.mole-route-section{padding:64px 18px;gap:34px}.mole-route-brand img{max-width:290px}.mole-route-content h2{font-size:48px}.route-events{grid-template-columns:1fr}.route-card{grid-template-columns:96px 1fr}.route-card>div{padding:16px}.sponsor-logo{width:165px;height:82px}.sponsor-logo img{max-height:45px}}

/* V6.2 Contacto de prensa + WhatsApp */
.press-section{background:radial-gradient(circle at 90% 10%,rgba(0,164,183,.13),transparent 28%),linear-gradient(180deg,#fff,#fff6df)}.press-grid{max-width:1120px;margin:38px auto 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.press-card{display:grid;grid-template-columns:150px 1fr;overflow:hidden;border-radius:28px;background:#fff;box-shadow:0 25px 65px rgba(91,7,48,.12);border:1px solid rgba(91,7,48,.08)}.press-card figure{margin:0;background:linear-gradient(145deg,#ffd528,#e81e62);min-height:245px}.press-card img{width:100%;height:100%;object-fit:cover}.press-card-body{padding:26px}.press-card .press-role{display:block;color:#e81e62;font-weight:900;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em}.press-card h3{margin:8px 0 3px;color:#5b0730;font-size:1.45rem}.press-card .press-org{display:block;color:#00a4b7;font-weight:800}.press-card p{color:#62505f;line-height:1.6}.press-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px}.press-links a{display:inline-flex;padding:9px 13px;border-radius:999px;background:#f7edf2;color:#5b0730;font-weight:800;text-decoration:none}.press-empty{grid-column:1/-1;text-align:center;color:#756574}.whatsapp-float{position:fixed;right:24px;bottom:24px;z-index:1000;display:flex;align-items:center;gap:11px;padding:12px 17px 12px 12px;border-radius:999px;background:#25d366;color:#082e18!important;text-decoration:none;font-weight:900;box-shadow:0 18px 48px rgba(9,80,39,.32);transition:transform .2s,box-shadow .2s}.whatsapp-float:hover,.whatsapp-float:focus-visible{transform:translateY(-4px);box-shadow:0 24px 55px rgba(9,80,39,.42);outline:3px solid #fff;outline-offset:3px}.whatsapp-float svg{width:30px;height:30px;fill:currentColor}.whatsapp-label{white-space:nowrap}@media(max-width:780px){.press-grid{grid-template-columns:1fr}.whatsapp-float{right:15px;bottom:15px;padding:13px}.whatsapp-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.whatsapp-float svg{width:32px;height:32px}}@media(max-width:520px){.press-card{grid-template-columns:1fr}.press-card figure{height:220px;min-height:0}}@media(prefers-reduced-motion:reduce){.whatsapp-float{transition:none}}
