/* Visitor-first sales layout. Existing event brand and institutional sections retained. */
.visitor-wrap{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.visitor-kicker{font-size:12px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#00d891}
.visitor-hero{background:#080635;color:#fff;padding:54px 0 64px}
.visitor-hero__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.visitor-hero h1{font-size:clamp(44px,5.8vw,78px);line-height:1.04;margin:22px 0;letter-spacing:-.035em}
.visitor-hero h1 .visitor-title__green{color:#00d891}
.visitor-hero__intro{font-size:19px;line-height:1.65;max-width:580px;color:#e2e0ee}
.visitor-hero__price{margin:24px 0 18px;font-size:15px}.visitor-hero__price strong{font-size:25px;color:#ccff00}.visitor-hero__price span{display:block;margin-top:4px}
.visitor-actions{display:flex;flex-wrap:wrap;gap:12px}
.visitor-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 20px;border:2px solid #00d891;border-radius:8px;background:#00d891;color:#080635;font-size:14px;font-weight:900;text-align:center;text-decoration:none;line-height:1.4}
.visitor-button:hover{background:#ccff00;border-color:#ccff00}.visitor-button--outline{background:transparent;color:inherit;border-color:currentColor}.visitor-button--outline:hover{color:#080635}
.visitor-small{font-size:12px;line-height:1.65;opacity:.8;margin-top:14px;max-width:850px}
.visitor-hero__visual{position:relative;overflow:hidden;border-radius:12px;border:1px solid #ffffff30;min-width:0}.visitor-hero__video{display:block;width:100%;aspect-ratio:16/9;min-height:200px;border:0;background:#020217}.visitor-hero__visual figcaption{padding:22px;background:#151044}.visitor-hero__visual strong{display:block;font-size:23px;line-height:1.25}.visitor-hero__visual figcaption span{display:block;font-size:12px;margin-top:10px;color:#ccff00}
.site-header .hero-partners{display:none}.visitor-nav{display:flex;gap:22px;font-size:13px;font-weight:800;align-items:center}.visitor-nav a:hover{color:#00d891}.visitor-mobile-link{display:none}
#programacion{padding:54px 0;background:#100b40}#programacion h2,.visitor-experiences h2,.visitor-tickets h2,.visitor-faq h2{font-size:clamp(29px,3.8vw,46px);line-height:1.13;margin:14px 0 26px}.visitor-agenda{border:1px solid #ffffff35;border-radius:10px;background:#ffffff05}.visitor-agenda summary{display:grid;grid-template-columns:180px 1fr auto;gap:18px;align-items:center;cursor:pointer;padding:24px;list-style:none}.visitor-agenda summary::-webkit-details-marker{display:none}.visitor-agenda__day{font-weight:900;color:#00d891;font-size:20px}.visitor-agenda__teaser{font-size:14px;line-height:1.6;color:#e3e0ef}.visitor-agenda__action{font-size:12px;font-weight:900;color:#ccff00}.visitor-agenda__action:after{content:' ＋'}.visitor-agenda[open] .visitor-agenda__action:after{content:' −'}.visitor-agenda__body{padding:0 24px 24px}.visitor-program-cta{margin-top:26px}
.visitor-experiences{background:#eef4f5;color:#080635;padding:64px 0}.visitor-experiences .visitor-kicker,.visitor-faq .visitor-kicker{color:#00794f}.visitor-experience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.visitor-experience-grid article{border-top:3px solid #00b980;padding-top:20px}.visitor-experience-grid span{font-size:11px;font-weight:900;color:#006e4d}.visitor-experience-grid h3{font-weight:900;font-size:21px;line-height:1.25;margin:14px 0}.visitor-experience-grid p{font-size:14px;line-height:1.7}
.visitor-tickets{background:#080635;color:#fff;padding:64px 0}.visitor-ticket-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.visitor-ticket{border:1px solid #ffffff45;border-radius:12px;padding:30px}.visitor-ticket--pass{border-color:#00d891;background:#00d8910d}.visitor-ticket>p:first-child{font-size:12px;font-weight:900;letter-spacing:.08em;color:#ccff00}.visitor-ticket h3{font-size:25px;font-weight:900;margin-top:12px}.visitor-ticket__price{display:block;font-size:48px;line-height:1.2;margin:18px 0}.visitor-ticket>p{font-size:15px;line-height:1.6}.visitor-ticket .visitor-button{margin-top:24px;width:100%}.visitor-promo{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-top:32px;padding-top:28px;border-top:1px solid #ffffff35}.visitor-promo h3{font-size:20px;font-weight:900}.visitor-promo p{font-size:14px;line-height:1.7;max-width:600px;margin-top:8px}.visitor-promo a{flex-shrink:0}
.visitor-faq{background:#fff;padding:64px 0;color:#080635}.visitor-faq .visitor-wrap{max-width:900px}.visitor-faq details{border-bottom:1px solid #d8dbe5;padding:20px 0}.visitor-faq summary{cursor:pointer;font-size:17px;font-weight:800}.visitor-faq details p{font-size:15px;line-height:1.8;margin-top:14px}.visitor-faq a{text-decoration:underline;text-underline-offset:3px}
.visitor-button:focus-visible,.visitor-agenda summary:focus-visible,.visitor-faq summary:focus-visible,.visitor-nav a:focus-visible,.visitor-mobile-link:focus-visible{outline:3px solid #ff7a00;outline-offset:4px}
section[id],main[id]{scroll-margin-top:190px}
@media(max-width:1000px){.visitor-nav{gap:12px;font-size:12px}.visitor-hero__grid{gap:26px}.visitor-agenda summary{grid-template-columns:160px 1fr}.visitor-agenda__action{grid-column:2}.visitor-experience-grid{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.visitor-hero{padding:30px 0 38px}.visitor-hero__grid{grid-template-columns:1fr;gap:26px}.visitor-hero__visual{display:block}.visitor-hero h1{font-size:46px}.visitor-hero__intro{font-size:16px;line-height:1.65}.visitor-kicker{font-size:10px;line-height:1.7}.visitor-actions{display:grid}.visitor-hero__price{margin:18px 0}.visitor-hero .spot-reopen{margin-top:14px;padding:8px 12px;font-size:12px}.visitor-nav{display:none}.visitor-mobile-link{display:inline-flex;align-items:center;min-height:44px;font-weight:900;font-size:13px}.site-countdown__timer{display:none}.site-countdown__inner{display:flex;justify-content:space-between;gap:10px;padding:10px 20px}.site-countdown__title{font-size:11px}.site-countdown__eyebrow{font-size:10px}.site-countdown__cta{padding:10px;min-width:0}.site-countdown__cta-main{font-size:12px}.site-countdown__cta-sub{font-size:9px}.site-countdown__cta svg{width:20px;height:20px}.site-header>div:first-child{padding-top:8px;padding-bottom:8px}.visitor-agenda summary{grid-template-columns:1fr;gap:10px;padding:20px}.visitor-agenda__action{grid-column:1}.visitor-agenda__body{padding:0 16px 18px}#programacion{padding:36px 0}.visitor-experiences,.visitor-tickets,.visitor-faq{padding:40px 0}.visitor-experience-grid{gap:24px 18px}.visitor-experience-grid h3{font-size:18px}.visitor-experience-grid p{font-size:13px}.visitor-ticket-grid{grid-template-columns:1fr}.visitor-ticket{padding:24px}.visitor-promo{flex-direction:column;align-items:stretch;gap:18px}section[id],main[id]{scroll-margin-top:155px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:767px){.site-countdown__inner{width:100%;min-height:76px;padding:10px 20px}.site-countdown__message{flex:1;text-align:left;justify-items:start}.site-countdown__cta{width:auto;max-width:none;flex-shrink:0}.site-countdown__eyebrow{padding:4px 6px}.site-countdown__title{max-width:145px}.visitor-hero__price span{font-size:14px}#programacion .mb-8>p:last-child{font-size:16px;line-height:1.7;margin-top:16px}}

/* Three consecutive title effects: shutters, expansion, light sweep. */
.visitor-title{--title-ease-out:cubic-bezier(0.23,1,0.32,1);isolation:isolate}
.visitor-title__line{display:block}
.visitor-title__shutter{display:inline-block;vertical-align:top;overflow:hidden;perspective:700px;padding:.1em .045em .13em;margin:-.1em -.045em -.13em;animation:expo-title-impact 900ms var(--title-ease-out) 1550ms;--burst-x:-14px;--burst-y:-10px;--burst-angle:-3deg;transform-origin:center}
.visitor-title__shutter:nth-child(even){--burst-x:16px;--burst-y:8px;--burst-angle:3deg}
.visitor-title__shutter:last-child{--burst-x:12px;--burst-y:12px;--burst-angle:2deg}
.visitor-title__word{position:relative;display:inline-block;transform-origin:50% 100%;animation:expo-title-shutter 950ms var(--title-ease-out) 80ms backwards}
.visitor-title__word--2{animation-delay:160ms}.visitor-title__word--3{animation-delay:240ms}.visitor-title__word--4{animation-delay:320ms}.visitor-title__word--5{animation-delay:400ms}
.visitor-title__word::after{content:attr(data-word);position:absolute;inset:0;color:#fff;pointer-events:none;clip-path:polygon(-50% 0,-20% 0,-40% 100%,-70% 100%);animation:expo-title-shine 850ms linear 2800ms backwards}
.visitor-title__word--2::after{animation-delay:2880ms}.visitor-title__word--3::after{animation-delay:2960ms}.visitor-title__word--4::after{animation-delay:3040ms}.visitor-title__word--5::after{animation-delay:3120ms}
@keyframes expo-title-shutter{from{opacity:0;transform:translate3d(0,120%,0) rotateX(-85deg) skewX(-10deg) scale(.94)}to{opacity:1;transform:translate3d(0,0,0) rotateX(0) skewX(0) scale(1)}}
@keyframes expo-title-impact{0%,100%{transform:translate3d(0,0,0) rotate(0) scale(1)}35%{transform:translate3d(var(--burst-x),var(--burst-y),0) rotate(var(--burst-angle)) scale(1.09)}70%{transform:translate3d(0,0,0) rotate(0) scale(.97)}}
@keyframes expo-title-shine{from{clip-path:polygon(-50% 0,-20% 0,-40% 100%,-70% 100%)}to{clip-path:polygon(160% 0,190% 0,170% 100%,140% 100%)}}
.visitor-hero__grid{width:min(1240px,calc(100% - 40px));grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px}
.visitor-sales{margin-top:24px;padding:22px;border:1px solid #ccff0060;border-left:4px solid #ccff00;border-radius:10px;background:linear-gradient(120deg,#ccff0017,#00d89108)}
.visitor-sales__eyebrow{font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#ccff00}
.visitor-sales__headline{font-size:clamp(23px,2.2vw,30px);font-weight:900;line-height:1.18;color:#ccff00;margin:9px 0 12px}
.visitor-sales__copy{font-size:14px;line-height:1.7;color:#eeedf5}.visitor-sales__copy strong{color:#fff}
.visitor-sales .visitor-hero__price{margin:18px 0}.visitor-sales .visitor-button{padding:13px 15px}.visitor-sales .visitor-small{font-size:11px}
@media(max-width:767px){.visitor-hero__grid{grid-template-columns:1fr;gap:28px}.visitor-sales{padding:18px;margin-top:20px}.visitor-sales__headline{font-size:25px}.visitor-sales .visitor-actions{display:grid}.visitor-title__shutter{--burst-x:-6px;--burst-y:-7px;--burst-angle:-2deg}.visitor-title__shutter:nth-child(even),.visitor-title__shutter:last-child{--burst-x:6px;--burst-y:7px;--burst-angle:2deg}}
@media(prefers-reduced-motion:reduce){.visitor-title__shutter,.visitor-title__word::after{animation:none}.visitor-title__word{animation:expo-title-fade 200ms ease both}@keyframes expo-title-fade{from{opacity:0}to{opacity:1}}}
@media(max-width:359px){.visitor-hero .visitor-title{font-size:40px}}

/* Align title/video at the top; the ticket offer spans both columns. */
.visitor-hero__grid{align-items:start;row-gap:24px}
.visitor-hero__grid>.visitor-kicker{grid-column:1/-1}
.visitor-hero__copy{min-width:0}
.visitor-hero .visitor-title{margin-top:0}
.visitor-hero__grid>.visitor-sales{grid-column:1/-1;margin-top:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 36px;align-items:center;padding:26px}
.visitor-sales__purchase .visitor-hero__price{margin:0 0 16px}
.visitor-sales>.visitor-small{grid-column:1/-1;margin-top:4px;max-width:none}
@media(max-width:767px){.visitor-hero__grid>.visitor-sales{grid-template-columns:1fr;gap:20px;padding:18px}.visitor-sales>.visitor-small{margin-top:0}.visitor-sales__purchase .visitor-actions{display:grid}}

/* Ticket layout and family offer. */
.visitor-ticket-intro{max-width:740px;font-size:18px;line-height:1.7;color:#e2e0ee;margin:-8px 0 30px}
.visitor-ticket{display:flex;flex-direction:column;align-items:flex-start}
.visitor-ticket .visitor-button{margin-top:auto}
.visitor-ticket>p:last-of-type{margin-bottom:24px}
.visitor-ticket__description{margin-top:20px}
.visitor-ticket .visitor-ticket__consult{font-size:20px;font-weight:800;line-height:1.45;color:#ccff00;margin-top:18px;max-width:370px}
@media(max-width:767px){.visitor-ticket-intro{font-size:16px}.visitor-ticket .visitor-ticket__consult{font-size:18px}}

/* Direct transition from the hero offer to the ticket choices. */
.visitor-hero{padding-bottom:24px}
#entradas.visitor-tickets{padding-top:16px}

/* Lead with 2-for-1 offers and emphasize the three-day pass. */
.visitor-ticket--featured{border:2px solid #ccff00;background:linear-gradient(135deg,#ccff001c,#00d8910d)}
.visitor-ticket--featured .visitor-button{background:#ccff00;border-color:#ccff00}
.visitor-ticket--featured .visitor-button:hover{background:#fff;border-color:#fff}
.visitor-ticket__badge{display:inline-block;margin-top:16px;padding:5px 10px;border-radius:4px;background:#ccff00;color:#080635;font-size:12px;font-weight:900}
.visitor-ticket__price small{display:block;margin-top:6px;font-size:14px;line-height:1.5;font-weight:600;color:#e2e0ee}
.visitor-ticket__upgrade{padding:12px 0;margin-bottom:12px;color:#e2e0ee}
.visitor-ticket__upgrade strong{display:block;font-size:19px;line-height:1.4;color:#ccff00;margin-bottom:5px}
.visitor-ticket--family{grid-column:1/-1}
.visitor-ticket--family .visitor-button{width:auto;min-width:240px}
.visitor-ticket-options{margin-top:30px;border-top:1px solid #ffffff35;padding-top:24px}
.visitor-ticket-options summary{cursor:pointer;font-size:17px;font-weight:800;padding:12px 0;color:#e2e0ee}
.visitor-ticket-options summary:focus-visible{outline:3px solid #ff7a00;outline-offset:4px}
.visitor-ticket-options .visitor-ticket-grid{margin-top:20px}
@media(max-width:767px){.visitor-ticket--family .visitor-button{width:100%;min-width:0}.visitor-ticket__price{font-size:44px}}

.visitor-button--whatsapp,.visitor-button--whatsapp:hover{background:#ccff00;border-color:#ccff00;color:#080635}
