/* Color system: pure black and charcoal section bands with purple accents. */
:root{
  --bg:#000000;--panel:#121212;--text:#f6f5f8;--muted:#b7b5bf;
  --purple:#820ad1;--accent:#c48af3;--border:#ffffff20;
}
body{background:var(--bg)}
main>.section{
  --content-width:1232px;--section-bg:#000000;
  max-width:none;color:var(--text);background:var(--section-bg);
  padding-left:max(64px,calc((100% - var(--content-width))/2));
  padding-right:max(64px,calc((100% - var(--content-width))/2));
}
main>.section.theme-black{--section-bg:#000000}
main>.section.theme-charcoal{--section-bg:#121212}
main>.section.theme-light{
  --text:#18151e;--muted:#5d5765;--accent:#820ad1;
  --border:#ddd8e3;--panel:#eeebf1;color-scheme:light;
}
main>.section.theme-white{--section-bg:#ffffff}
main>.section.theme-gray{--section-bg:#f3f2f5}
main>.section.theme-purple{
  --section-bg:#680ba6;--text:#ffffff;--muted:#f0dff9;
  --accent:#ffffff;--border:#ffffff38;
}
main>.section.membership-section{--content-width:1072px}
main>.section h1,main>.section h2,main>.section h3,main>.section h4{color:var(--text)}
main>.section em,main>.section .eyebrow,main>.section .text-link,
main>.section .bonus-symbol,main>.section .trust-grid article>span,
main>.section summary span{color:var(--accent)}
main>.section .fine-print{color:var(--muted)}
.button{background:#820ad1;border-color:#820ad1;color:#fff;border-radius:9999px;box-shadow:0 8px 24px #820ad122}
.button:hover{background:#6d08b2;border-color:#6d08b2}
.button.secondary{color:var(--accent);border-color:var(--accent);background:transparent;box-shadow:none}
.button.secondary:hover{background:#820ad112}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:var(--accent,#c48af3)}

/* The purple countdown is the main brand band at the top. */
.countdown-strip{background:linear-gradient(105deg,#6508a3,#820ad1 65%,#7109b5);border-color:#a956dc;box-shadow:none}
.countdown-reserve-button{background:#fff;color:#6d08b2;border-color:#fff;box-shadow:0 5px 20px #27043c30}
.countdown-reserve-button:hover{background:#f0e5f8;border-color:#f0e5f8}
.hero.hero-centered{background:radial-gradient(ellipse at 50% 0%,#820ad11c,transparent 68%),#000000}
.hero-centered .hero-heading .eyebrow{color:#d6b2f0;border-color:#9c62bf55;background:#820ad10d}
.hero-centered .hero-heading h1>em{color:#c48af3}
.hero-centered .hero-description{color:#b7b5bf}
.video-frame{border-color:#725386;background:radial-gradient(ellipse at 50% 45%,#312039,#121212 75%);box-shadow:0 24px 65px #00000026}
.video-brand{color:#bfb1c7}
.video-coming{color:#d4c8dd;border-color:#75528e;background:#ffffff06}
.video-play-symbol{background:#820ad1;border-color:#c79be7}

/* Placeholders remain empty until the photography is supplied. */
.photo-placeholder{background:#121212;border-color:#67536f;border-radius:22px}
.placeholder-label{color:#d6b8e9}
.placeholder-note{color:#b6adbe}
.theme-light .photo-placeholder{background:#eeebf1;border-color:#bca8cd}
.theme-light .placeholder-label{color:#820ad1}
.theme-light .placeholder-note{color:#655c6f}

/* White and light gray sections use dark copy and purple emphasis. */
.theme-light .starting-comparison{background:#f3f2f5;border-color:#ded6e5}
.theme-light .starting-column.destination-column{background:#f0e5f8;border-color:#d8c6e6}
.theme-light .starting-tag{color:#7808bf;background:#ffffff85;border-color:#c8a7df}
.theme-light .starting-column li{color:#3c3345}
.theme-light .starting-column li::marker{color:#820ad1}
.theme-light .starting-column h3{color:#24172e}
.cost h2 span{color:var(--accent)}
.theme-light .comparison .compare-label{background:#e8dfef;color:#7808bf}
.theme-light .comparison .compare-label span:first-child{color:#605367}
.theme-light .comparison>div:not(.compare-label):nth-child(odd){background:#eeebf1}
.theme-light .comparison>div{padding-left:24px;padding-right:24px}
.theme-light .experience-grid{border-color:var(--border)}
.theme-light .experience-card{background:#fff;border-color:var(--border)}
.theme-light .experience-card.challenge{background:#f4eff8}
.theme-light .experience-icon{color:#820ad1;background:#eee1f7;border-color:#d6bee7}
.theme-light .experience-icon-row>.tag{color:#733994;border-color:#c3a7d5}
.theme-light .takeaway{color:#713c8b;border-color:#ddd1e6}
.theme-light .participation-note{border-color:#820ad1;background:#f4eef9;border-radius:0 14px 14px 0}
.theme-light .bonus-grid article{border-color:#cbb8d9}
.theme-light .bonus-symbol{font-weight:750}
.theme-light .agenda-stage{color:#820ad1}
.theme-light .agenda-timeline:before{background:#c7afd8}
.theme-light .agenda-timeline>li:before{background:#c48af3;border-color:#820ad1;box-shadow:0 0 0 1px #820ad1}
.theme-light .faq-list details{border-color:#ddd8e3}
.theme-light .faq-list summary{color:#231b2c}
.theme-light .trust-grid article>span{font-weight:800}

/* The route stays dark; purple carries the active state. */
.journey-map-panel{background:radial-gradient(ellipse at 65% 20%,#820ad11c,transparent 70%),#121212;border-color:#66516f70;box-shadow:0 20px 60px #00000020}
.journey-stage-card{background:#121212;border-color:#54435e80}
.journey-stage-title{color:#f0eaf4}
.journey-stage-focus{color:#ceb1e2}
.journey-stage-description{color:#b7b5bf}
.journey-stage-output>p{color:#e6e0eb}
.journey-station.is-active .journey-stage-card{background:linear-gradient(145deg,#30193f,#121212);border-color:#a450dd;box-shadow:0 0 32px #820ad125}
.journey-station.is-active .journey-stage-title{color:#d2a1f5;text-shadow:none}
.journey-station.is-active .journey-stage-symbol{color:#d2a1f5;border-color:#a450dd;background:#820ad11a;box-shadow:none}
.journey-current-icon{color:#c48af3}
.journey-station:last-child .journey-stage-output>span{color:#d2a1f5}
.host-horizontal h2 span{color:#c48af3}
.host-horizontal .host-mission{color:#e3dce9;border-color:#a450dd}
.host-stat strong{color:#c48af3}

/* Memberships, transfer and promotions share one dark palette. */
.membership-card{background:#121212;border-color:#63516f}
#entrada .membership-card.featured{
  background:linear-gradient(145deg,#30153f,#1b171f 70%) padding-box,conic-gradient(from var(--membership-shine-angle),#b771e6 0deg,#b771e6 265deg,#d6a4f7 300deg,#ffffff 318deg,#b771e6 340deg,#b771e6 360deg) border-box;
  box-shadow:0 12px 40px #820ad126;
}
.membership-card.featured .button{background:#820ad1;border-color:#b771e6}
.membership-card.featured .button:hover{background:#6d08b2;border-color:#b771e6}
.membership-kicker,.membership-price>span,.benefit-note{color:#c4b6ce}
.membership-badge{color:#e4cdf4;background:#820ad130;border-color:#a568cd}
.membership-badge.secondary-badge{color:#c8b9d2;border-color:#796485}
.includes li:before{color:#c48af3}
.payment-panel{background:#121212;border-color:#65516f}
.transfer-key-box{background:#ffffff03;border-color:#887192}
.transfer-key-content label{color:#c9b7d5}
.transfer-key{color:#d6a4f7}
.transfer-key:focus-visible{outline-color:#c48af3}
.copy-key-button{background:#820ad1;border-color:#a568cd;color:#fff}
.copy-key-button:hover{background:#6d08b2}
.copy-status{color:#c48af3}
.promotion-grid strong{color:#c48af3}
.promotion-grid article{border-color:#735287}
.membership-section .reservation-block{background:#121212;border:1px solid #65516f}
.event-strip{border-color:var(--border)}

/* One purple invitation, then white FAQ, charcoal closing and black footer. */
.decision .date-banner,.decision>.eyebrow{color:#fff}
.decision h2 em{color:#edceff}
.decision .button.secondary{color:#6d08b2;background:#fff;border-color:#fff}
.decision .button.secondary:hover{background:#f1e4f9;border-color:#f1e4f9}
.closing-signature{color:#ccb2df}
.footer{background:#000000;border-top:0}
.footer-main p a,.footer-main>a:last-child{color:#c48af3}
.footer-bottom,.footer-bottom p{color:#a6a1ad}
.text-button{color:#c7aed8}
dialog{background:#121212;border-color:#9265af}
@media(max-width:1100px){main>.section{padding-left:40px;padding-right:40px}}
@media(max-width:760px){main>.section{padding-left:24px;padding-right:24px}.theme-light .comparison>div{padding-left:14px;padding-right:14px}}

/* Supplied summit photograph: blurred scenery behind the scrolling route only. */
main>.section.journey-section{position:relative;isolation:isolate}
.journey-background{position:absolute;inset:0;z-index:-1;pointer-events:none}
.journey-background-frame{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;background:#000000}
.journey-background-frame:before{content:"";position:absolute;inset:-12px;background:url("assets/journey-summit.png") center 42%/cover no-repeat;filter:grayscale(1) blur(4px)}
.journey-background-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#000000bd 0%,#100a1866 35%,#100a1873 65%,#000000c9 100%)}
.journey-section .journey-map-panel{background:linear-gradient(155deg,#251b2de8,#18161ee8);border-color:#a276bf66}
.journey-section .journey-stage-card{background:#121212e8}
.journey-section .journey-station.is-active .journey-stage-card{background:linear-gradient(145deg,#30193fec,#121212e8)}
@media(max-width:760px){.journey-background-frame:before{background-position:62% center;filter:grayscale(1) blur(3px)}.journey-background-frame:after{background:linear-gradient(180deg,#000000bd,#100a1880 45%,#000000c9)}}

/* Exact dark neutral values; purple is the only interface accent. */
main>.section.hero-centered{background:#000000}
.skip{background:#820ad1;color:#fff}
.route-marker.is-active .route-marker-glyph{stroke:#000000}

/* Reservation action immediately below the video. */
.video-section{flex-direction:column;gap:28px}
.video-reserve-button{min-width:240px;min-height:54px;font-weight:800;letter-spacing:.04em;border-radius:9999px}
@media(max-width:760px){.video-reserve-button{width:100%;max-width:360px;min-width:0}}

/* Subtle summit scenery behind the headline and video, with scroll parallax. */
main>.section.intro-parallax-section{position:relative;isolation:isolate;background:#000000}
.intro-scenery{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:#000000}
.intro-scenery-image{position:absolute;inset:-100px -12px;background:url("assets/journey-summit.png") center 42%/cover no-repeat;opacity:.32;filter:grayscale(1) blur(1px);transform:translate3d(0,var(--intro-shift,0px),0)}
.intro-scenery:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#00000099 0%,#00000026 45%,#000000cc 100%)}
.video-section .intro-scenery-image{background-position:65% 60%;opacity:.25}
.video-section .intro-scenery:after{background:linear-gradient(180deg,#000000cc,#0000004d 45%,#000000e6)}
@media(max-width:760px){.intro-scenery-image{inset:-60px -12px;background-position:62% center}.video-section .intro-scenery-image{background-position:62% center}}
@media(prefers-reduced-motion:reduce){.intro-scenery-image{transform:none}}

/* Audience fit: reference-style checklist within the cost of waiting section. */
.cost>.audience-fit{max-width:1160px;margin:64px auto 0;padding-top:48px;border-top:1px solid var(--border)}
.audience-fit>h2{font-family:Inter,'Arial Black',var(--display);font-size:clamp(1.8rem,3.3vw,3.1rem);font-weight:900;line-height:1.15;letter-spacing:-.035em;text-align:center;margin:0 0 38px}
.audience-fit-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:52px;list-style:none;margin:0;padding:0;text-align:left}
.audience-fit-list>li{display:flex;align-items:flex-start;gap:17px;padding:26px 0;border-bottom:1px solid var(--border);min-width:0}
.audience-check{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:25px;height:25px;background:#820ad1;color:#fff;border-radius:50%;margin-top:2px}
.audience-fit-list p{font-size:1.0625rem;line-height:1.65;margin:0;color:#c7c2cd}
.audience-fit-list strong{font-weight:650;color:#f6f5f8}
@media(max-width:1100px){.audience-fit-list{column-gap:32px}}
@media(max-width:760px){.cost>.audience-fit{margin-top:42px;padding-top:34px}.audience-fit>h2{font-size:clamp(1.7rem,7vw,2.3rem);margin-bottom:20px}.audience-fit-list{grid-template-columns:1fr}.audience-fit-list>li{padding:22px 0;gap:14px}.audience-fit-list p{font-size:1rem}}

/* Audience fit is now the main content of section 02. */
.cost>.eyebrow{margin-bottom:26px}
.cost>.audience-fit{margin-top:0;padding-top:0;border-top:0}

/* Comparison: bold headings on charcoal, filled icons and left-aligned copy. */
.transformation .comparison{text-align:left}
.transformation .comparison .compare-label{font-family:Inter,'Arial Black',var(--display);font-size:clamp(.8125rem,1.15vw,1.0625rem);font-weight:900;letter-spacing:.025em;line-height:1.45;padding-top:25px;padding-bottom:25px;background:#121212;color:#f6f5f8}
.transformation .comparison .compare-label>span.compare-heading{display:flex;align-items:center;justify-content:flex-start;gap:12px;color:#f6f5f8;min-width:0;text-align:left}
.compare-heading>svg{flex-shrink:0;width:28px;height:28px;color:#c48af3}
.transformation .comparison>div>p{text-align:left}
.transformation .comparison>div:not(.compare-label)>p:last-child{font-weight:800;color:#201327}
.transformation .comparison>div:not(.compare-label)>p:last-child>strong{font-weight:800;color:inherit}
@media(max-width:760px){.transformation .comparison .compare-label>span.compare-heading{flex-direction:column;align-items:flex-start;gap:9px}.compare-heading>svg{width:25px;height:25px}.transformation .comparison .compare-label{padding-top:20px;padding-bottom:20px;font-size:.8125rem}}

/* One copyable bank key, its visible name, and a direct receipt handoff. */
.transfer-key-line{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px 14px}
.transfer-key-line .transfer-key{width:11ch;max-width:100%;font-size:1.3rem;letter-spacing:.035em}
.transfer-key-name{color:#d6a4f7;font-size:.8125rem;font-weight:750;letter-spacing:.025em;white-space:nowrap}
.receipt-button{display:flex;gap:10px;width:100%;margin-top:12px;font-weight:750;min-height:52px}
.receipt-button svg{flex-shrink:0}
.receipt-note{font-size:.8125rem;line-height:1.6;margin:12px auto 20px;max-width:430px;color:#c4b6ce}
@media(max-width:760px){.payment-panel .transfer-key-box{flex-wrap:wrap;justify-content:center}.payment-panel .transfer-key-content{flex-basis:100%}.transfer-key-line{gap:6px 10px}.transfer-key-line .transfer-key{font-size:1.125rem}.transfer-key-name{font-size:.75rem}.receipt-button{font-size:.9375rem}}

/* Lead membership selection with the included value. */
.membership-section>.section-head h2{margin-bottom:12px}
.membership-section .membership-subtitle{font-family:var(--display);font-size:1.25rem;font-weight:750;color:var(--text);line-height:1.4;margin:0 auto 18px}

/* A stronger deposit heading and a synchronized final countdown. */
.membership-section .reservation-block h3{font-family:Inter,'Arial Black',var(--display);font-weight:900;font-size:clamp(1.55rem,2.3vw,2.25rem);line-height:1.15;letter-spacing:-.035em;margin-bottom:14px}
.event-final-countdown{margin:48px auto 0;text-align:center}
.membership-section .event-final-countdown>h3{font-family:var(--display);font-weight:700;font-size:clamp(1.6rem,2.6vw,2.4rem);line-height:1.2;letter-spacing:-.025em;margin-bottom:28px;color:#c48af3;text-transform:uppercase}
#entrada .membership-countdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:0;width:100%;max-width:900px;margin:0 auto;padding:26px 0;border-top:1px solid #ffffff26;border-bottom:1px solid #ffffff26}
#entrada .membership-countdown[hidden]{display:none}
#entrada .membership-countdown .countdown-unit{min-width:0;gap:8px;padding:0 14px;border-right:1px solid #ffffff26}
#entrada .membership-countdown .countdown-unit:last-child{border-right:0}
#entrada .membership-countdown .countdown-unit>span:first-child{font-family:var(--display);font-weight:700;font-size:clamp(2.3rem,4.5vw,3.6rem);line-height:1.1;color:#fff}
#entrada .membership-countdown .countdown-unit>span:last-child{font-size:.8125rem;font-weight:500;letter-spacing:.1em;line-height:1.4;color:#fff;text-transform:uppercase}
@media(max-width:760px){.event-final-countdown{margin-top:38px}.membership-section .event-final-countdown>h3{margin-bottom:22px}#entrada .membership-countdown{padding:22px 0}#entrada .membership-countdown .countdown-unit{padding:0 5px;gap:7px}#entrada .membership-countdown .countdown-unit>span:first-child{font-size:2rem}#entrada .membership-countdown .countdown-unit>span:last-child{font-size:.625rem;letter-spacing:.04em}}

/* Final invitation uses the supplied closing message and purple CTA. */
main>.section.closing-reserve h2{font-family:Inter,'Arial Black',var(--display);font-weight:900;font-size:clamp(2.5rem,5.5vw,5.4rem);line-height:1.05;letter-spacing:-.045em;margin:0 auto 28px;max-width:1050px}
.closing-reserve .closing-invitation{font-size:clamp(1.0625rem,1.8vw,1.4rem);line-height:1.55;color:#e0dbe5;max-width:760px;margin:0 auto}
.closing-reserve .closing-decision{font-family:var(--display);font-size:clamp(1.4rem,2.6vw,2.35rem);line-height:1.35;letter-spacing:-.025em;color:#e0dbe5;margin:52px auto 28px}
.closing-reserve .closing-decision strong{font-weight:800;color:#c48af3}
.closing-reserve .closing-reserve-button{gap:13px;min-height:60px;padding:18px 30px;font-weight:800;font-size:1.0625rem;border-radius:9999px;max-width:100%}
.closing-reserve-button svg{flex-shrink:0}
@media(max-width:760px){.closing-reserve .closing-decision{margin-top:38px}.closing-reserve .closing-reserve-button{font-size:.9375rem;padding:17px 20px;gap:10px}.closing-reserve-button svg{width:24px;height:24px}}

/* FAQ heading from the reference, adapted to the purple brand palette. */
.faq .section-head h2{font-family:Inter,'Arial Black',var(--display);font-weight:800;font-size:clamp(2rem,3.7vw,3.6rem);line-height:1.12;letter-spacing:-.04em}
.faq .section-head .faq-subtitle{font-size:clamp(1rem,1.6vw,1.3rem);line-height:1.5;margin:0 auto}

/* An additional personal invitation after the decisive closing section. */
.final-step{border-top:1px solid #ffffff20}
main>.section.final-step h2{font-family:Inter,'Arial Black',var(--display);font-weight:900;font-size:clamp(2.1rem,4.3vw,4.2rem);line-height:1.08;letter-spacing:-.04em;max-width:1000px;margin:0 auto 36px}
.final-step-copy{max-width:940px;margin:0 auto}
.final-step-copy p{font-size:clamp(1rem,1.6vw,1.2rem);line-height:1.75;color:#c7c2cd;margin-bottom:18px}
.final-step .final-step-button{display:flex;gap:16px;max-width:620px;margin:36px auto 18px;min-height:64px;padding:19px 28px;font-weight:800;font-size:1.0625rem;border-radius:9999px;box-shadow:0 10px 38px #820ad138}
.final-step-button svg{flex-shrink:0}
.final-step .final-step-note{max-width:620px;margin:0 auto;font-size:.875rem;line-height:1.65;color:#b7b5bf}
@media(max-width:760px){main>.section.final-step h2{font-size:clamp(2rem,7.5vw,3rem);margin-bottom:28px}.final-step h2 br{display:none}.final-step .final-step-button{font-size:.9375rem;min-height:58px;padding:17px 20px;gap:12px;margin-top:28px}.final-step .final-step-note{font-size:.8125rem}}

/* The DECIDE HOY message now appears once, in section 11. */
.decision.decision-reserve h2{font-family:Inter,'Arial Black',var(--display);font-weight:900;font-size:clamp(2.5rem,4.7vw,4.8rem);line-height:1.06;letter-spacing:-.04em}
.decision .decision-invitation{font-size:clamp(1.0625rem,1.8vw,1.4rem);line-height:1.55}
.decision .decision-commitment{font-family:var(--display);font-size:clamp(1.35rem,2.5vw,2.1rem);line-height:1.4;letter-spacing:-.025em}
.decision .decision-commitment strong{font-weight:800;color:#fff}

/* Event footer: original logo, event information and working contact links. */
.footer.event-footer{max-width:none;background:#000000;border-top:1px solid #ffffff20;padding:42px max(64px,calc((100% - 1232px)/2)) 30px;text-align:left}
.event-footer .footer-disclaimer{max-width:1160px;font-size:.875rem;line-height:1.85;color:#b7b0c0;margin:0 0 20px}
.footer-info-links{display:flex;align-items:center;flex-wrap:wrap;gap:8px 26px}
.footer-info-links>a,.footer-policy-link{display:inline-flex;align-items:center;min-height:44px;font-family:var(--body);font-size:.875rem;color:#c48af3;background:none;border:0;padding:0;cursor:pointer;text-align:left}
.footer-info-links>a:hover,.footer-policy-link:hover{text-decoration:underline;text-underline-offset:5px}
.footer-brand-row{display:flex;align-items:center;justify-content:space-between;gap:36px;margin:24px 0}
.footer-event-logo{display:block;width:280px;max-width:100%;flex-shrink:0}
.footer-event-logo img{display:block;width:100%;height:auto;object-fit:contain}
.footer-contact p{margin:0 0 10px;font-size:.875rem;line-height:1.6;color:#b7b0c0}
.footer-contact>a{display:block;width:fit-content;font-size:.875rem;line-height:1.8;color:#c48af3}
.event-footer .footer-copyright{font-size:.8125rem;line-height:1.7;color:#a9a1b2;border-top:1px solid #ffffff16;padding-top:22px;margin:0}
@media(max-width:1100px){.footer.event-footer{padding-left:40px;padding-right:40px}}
@media(max-width:760px){.footer.event-footer{padding:32px 24px 26px}.footer-brand-row{flex-direction:column;align-items:flex-start;gap:20px;margin-top:18px}.footer-event-logo{width:260px}.footer-info-links{column-gap:20px}.event-footer .footer-disclaimer{font-size:.8125rem}}

/* Let visitors save the event in their preferred calendar. */
.decision .calendar-picker{border:0;padding:0;max-width:430px;margin:0 auto}
.decision .calendar-trigger{justify-content:center;gap:16px;font-weight:750;font-size:.9375rem;line-height:1.4;min-height:56px;border-radius:9999px}
.calendar-trigger .calendar-toggle{color:#820ad1;font-size:1.3rem}
.calendar-options{background:#fff;border:1px solid #e5d6ef;border-radius:18px;overflow:hidden;margin-top:12px;text-align:left;box-shadow:0 14px 35px #00000020}
.calendar-options>a{display:block;padding:16px 22px;min-height:48px;color:#6d08b2;font-weight:650;font-size:.9375rem;line-height:1.5}
.calendar-options>a+a{border-top:1px solid #e5d6ef}
.calendar-options>a:hover,.calendar-options>a:focus-visible{background:#f0e5f8}
.calendar-options>a:focus-visible{outline:2px solid #820ad1;outline-offset:-4px}
@media(max-width:360px){.decision .calendar-trigger{font-size:.8125rem;gap:10px;padding-left:16px;padding-right:16px}}

/* Host logo uses the supplied original; its transparent margins are clipped in layout. */
.event-footer .footer-contact{width:310px;max-width:100%}
.footer-host-logo{position:relative;overflow:hidden;aspect-ratio:1560/576;width:210px;max-width:100%;margin:14px 0 20px}
.footer-host-logo>img{position:absolute;display:block;width:131.282051%;max-width:none;height:auto;left:-15.641026%;top:-110.069444%}
.event-footer .footer-contact>.footer-whatsapp{display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:100%;min-height:62px;padding:14px 20px;border-radius:9999px;color:#fff;text-align:center;line-height:1.4}
.footer-whatsapp>span:first-child{font-size:.8125rem;font-weight:800;letter-spacing:.025em}
.footer-whatsapp>span:last-child{font-size:.9375rem;font-weight:650;letter-spacing:.02em}
.event-footer .footer-contact>.footer-instagram{margin-top:16px}

/* Supplied facilitator portrait, shown in full with its original proportions. */
.host-horizontal .host-photo-loaded{display:block;width:100%;max-width:480px;aspect-ratio:1535/2048;height:auto;min-height:0;object-fit:contain;padding:0;border:0;border-radius:24px;background:transparent}
@media(max-width:760px){.host-horizontal .host-photo-loaded{max-width:420px}}

/* Fotografía de la experiencia: encuadre completo en escritorio y móvil. */
.event-agenda .agenda-photo-loaded{display:block;width:100%;max-width:460px;aspect-ratio:1081/1441;height:auto;min-height:0;object-fit:contain;padding:0;border:0;border-radius:22px;background:transparent}
@media(max-width:760px){.event-agenda .agenda-photo-loaded{max-width:460px;margin-left:auto;margin-right:auto}}

/* Carrusel continuo de experiencias, después de la agenda. */
.event-gallery{--gallery-card-width:clamp(210px,24vw,320px);--gallery-gap:18px;background:#000;color:#fff;padding:28px 0 54px;overflow:hidden}
.event-gallery-viewport{overflow:hidden;outline-offset:-4px}
.event-gallery-viewport:focus-visible{outline:2px solid #c48af3}
.event-gallery-track{display:flex;width:max-content;animation:event-gallery-loop 65s linear infinite;will-change:transform}
.event-gallery-group{display:flex;flex-shrink:0;gap:var(--gallery-gap);list-style:none;margin:0;padding:0 var(--gallery-gap) 0 0}
.event-gallery-card{flex:0 0 var(--gallery-card-width);width:var(--gallery-card-width);margin:0;overflow:hidden;border:1px solid #820ad166;border-radius:24px;background:#121212}
.event-gallery-card img{display:block;width:100%;height:auto;aspect-ratio:1081/1441;object-fit:contain}
.event-gallery[data-visible="false"] .event-gallery-track,.event-gallery-viewport:focus-visible .event-gallery-track{animation-play-state:paused}
@keyframes event-gallery-loop{to{transform:translateX(-50%)}}
@media(hover:hover){.event-gallery-viewport:hover .event-gallery-track{animation-play-state:paused}}
@media(max-width:760px){.event-gallery{--gallery-card-width:64vw;--gallery-gap:14px;padding:24px 0 36px}.event-gallery-card{border-radius:20px}}
@media(prefers-reduced-motion:reduce){.event-gallery-viewport{overflow-x:auto;padding-bottom:14px}.event-gallery-track{animation:none;transform:none;will-change:auto}.event-gallery-repeat{display:none}}

/* Identidad compacta y banner de reserva anclado durante el recorrido. */
:root{--sticky-countdown-offset:81px}
html{scroll-padding-top:calc(var(--sticky-countdown-offset) + 16px)}
.countdown-strip{position:sticky;top:0;z-index:100;gap:24px;box-shadow:0 4px 18px #00000026}
.countdown-brand{display:flex;align-items:center;gap:16px;min-width:0}
.countdown-logo{display:block;flex-shrink:0;line-height:0;border-radius:4px}
.countdown-logo img{display:block;height:58px;width:auto;max-width:110px;object-fit:contain}
.countdown-brand .countdown-intro{min-width:0}
@media(max-width:1100px){.countdown-strip{gap:18px}.countdown-brand{gap:12px}.countdown-logo img{height:54px;max-width:100px}}
@media(max-width:760px){:root{--countdown-height:118px;--sticky-countdown-offset:118px}.countdown-strip{padding:10px 16px;column-gap:12px;row-gap:8px}.countdown-brand{grid-column:1/-1;grid-row:1;justify-content:center;gap:12px}.countdown-logo img{height:42px;max-width:80px}.countdown-brand .countdown-intro{display:block;grid-column:auto;text-align:left}.countdown-brand .countdown-intro>p{font-size:1rem;line-height:1.2;margin:0;max-width:245px}.countdown-strip>.event-countdown{grid-column:1;grid-row:2}.countdown-strip>.countdown-reserve-button{grid-column:2;grid-row:2}}
@media(max-width:360px){.countdown-strip{padding-left:12px;padding-right:12px;column-gap:8px}.countdown-brand{gap:8px}.countdown-logo img{height:38px;max-width:70px}.countdown-brand .countdown-intro>p{font-size:.9375rem}}

.countdown-brand .countdown-intro>p{margin-bottom:0}

/* Luz púrpura y destello para las cinco llamadas principales de reserva. */
.cta-glow{--cta-light:#b967ff;position:relative;isolation:isolate;overflow:hidden;animation:cta-light-pulse 4s ease-in-out infinite;transition:background .25s,transform .25s,filter .25s}
.cta-glow::after{content:"";position:absolute;pointer-events:none;top:-30%;bottom:-30%;left:-55%;width:45%;background:linear-gradient(90deg,transparent,#ffffff12 25%,#ffffff59 50%,#ffffff12 75%,transparent);transform:translateX(0) skewX(-22deg);animation:cta-light-sweep 6.8s ease-in-out infinite}
.countdown-reserve-button.cta-glow{--cta-light:#efd5ff}
.membership-card .cta-glow{animation-delay:.6s}
.membership-card .cta-glow::after{animation-delay:.9s}
.membership-card:not(.featured) .cta-glow::after{animation-delay:1.8s}
.final-step-button.cta-glow::after{animation-delay:1.3s}
.cta-glow:hover,.cta-glow:focus-visible{filter:brightness(1.1) drop-shadow(0 0 9px #b967ff88)}
.cta-glow:active{filter:brightness(1.02);transform:translateY(0)}
@keyframes cta-light-pulse{0%,100%{box-shadow:0 0 0 1px color-mix(in srgb,var(--cta-light) 30%,transparent),0 0 14px #820ad140,0 7px 22px #820ad133}50%{box-shadow:0 0 0 1px color-mix(in srgb,var(--cta-light) 65%,transparent),0 0 25px #a232ef70,0 8px 34px #820ad14d}}
@keyframes cta-light-sweep{0%,55%{transform:translateX(0) skewX(-22deg)}82%,100%{transform:translateX(400%) skewX(-22deg)}}
@media(prefers-reduced-motion:reduce){.cta-glow{animation:none;box-shadow:0 0 18px #820ad15c}.cta-glow::after{animation:none;display:none}}

/* Video de presentación: reproductor adaptable de YouTube. */
.video-frame.video-loaded{display:block;min-height:0;aspect-ratio:16/9;background:#000}
.video-frame.video-loaded iframe{position:absolute;inset:0;display:block;width:100%;height:100%;border:0}
