/* === CUSTOM PROPERTIES === */
:root {
    --primary: #8a2be2;
    --primary-light: rgba(138,43,226,0.25);
    --accent: #ffd700;
    --accent-light: rgba(255,215,0,0.15);
    --bg: #030008;
    --bg-card: rgba(18,6,36,0.55);
    --text: #e0e0ff;
    --text-muted: rgba(200,200,240,0.7);
    --border: rgba(255,215,0,0.25);
    --border-accent: rgba(255,215,0,0.3);
    --radius-lg: 18px;
    --radius-pill: 50px;
    --success: #a3e635;
    --warning: #fbbf24;
}

/* === RESET === */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:'Space Grotesk',sans-serif;overflow-x:hidden;min-height:100vh;line-height:1.6}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}

/* === GALAXY BG === */
.bg-galaxy{position:fixed;inset:0;z-index:-1;background:radial-gradient(ellipse at 30% 20%,#1b0a3a 0%,#030008 65%);overflow:hidden}
.bg-galaxy .nebula{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:90vw;height:90vh;background:radial-gradient(circle,rgba(138,43,226,.12) 0%,rgba(255,215,0,.04) 45%,transparent 70%);filter:blur(70px);animation:nebulaPulse 10s ease-in-out infinite alternate}
.bg-galaxy .stars{position:absolute;inset:0}
.bg-galaxy .stars .star{position:absolute;border-radius:50%;background:#fff;opacity:0;animation:twinkle var(--dur,5s) ease-in-out var(--delay,0s) infinite alternate,drift var(--mdur,30s) ease-in-out var(--mdelay,0s) infinite}

/* === UTILITIES === */
.container{width:100%;max-width:1180px;margin:0 auto;padding:0 5%}
.section{padding:6rem 0}
.section-header{text-align:center;margin-bottom:3.5rem}
.section-header .eyebrow{display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--accent);margin-bottom:.75rem}
.section-header h2{font-family:'Cinzel',serif;font-size:2.4rem;line-height:1.2;color:#fff;margin-bottom:1rem}
.section-header p{color:var(--text-muted);max-width:560px;margin:0 auto}
.divider{width:60px;height:2px;background:linear-gradient(90deg,var(--primary),var(--accent));margin:1rem auto 0;border-radius:2px}

/* === BUTTONS === */
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 2rem;font-family:'Space Grotesk',sans-serif;font-size:1rem;font-weight:600;border-radius:var(--radius-pill);border:none;cursor:pointer;transition:transform .25s,box-shadow .25s,background .25s;position:relative;overflow:hidden;letter-spacing:.5px}
.btn::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);transform:translateX(-100%);transition:transform .4s ease}
.btn:hover::before{transform:translateX(100%)}
.btn-primary{background:linear-gradient(135deg,var(--primary) 0%,#5a0fa0 100%);color:#fff;box-shadow:0 0 18px rgba(255,215,0,.45)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 32px rgba(255,215,0,.7)}
.btn-outline{background:transparent;color:var(--accent);border:1px solid var(--border-accent);box-shadow:0 0 12px rgba(255,215,0,.15)}
.btn-outline:hover{background:var(--accent-light);transform:translateY(-2px);box-shadow:0 0 22px rgba(255,215,0,.35)}
.btn-ghost{background:rgba(255,255,255,.05);color:var(--text);border:1px solid var(--border)}
.btn-ghost:hover{background:var(--primary-light);color:#fff;transform:translateY(-2px)}
.btn-sm{padding:.65rem 1.2rem;font-size:.82rem}

/* === GLASS CARD === */
.glass{background:var(--bg-card);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 6px 40px rgba(0,0,0,.4);transition:transform .3s,box-shadow .3s,border-color .3s}
.glass:hover{transform:translateY(-6px);box-shadow:0 14px 50px rgba(255,215,0,.15);border-color:var(--border-accent)}

/* === BADGES === */
.badge{display:inline-block;padding:.25rem .75rem;font-size:.7rem;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;border-radius:var(--radius-pill)}
.badge-cyan{background:rgba(255,215,0,.15);color:var(--accent);border:1px solid rgba(255,215,0,.3)}
.badge-purple{background:rgba(138,43,226,.2);color:#c084fc;border:1px solid rgba(138,43,226,.4)}
.badge-gold{background:rgba(255,193,7,.12);color:#ffd54f;border:1px solid rgba(255,193,7,.3)}
.badge-green{background:rgba(163,230,53,.1);color:var(--success);border:1px solid rgba(163,230,53,.25)}
.badge-red{background:rgba(239,68,68,.12);color:#fca5a5;border:1px solid rgba(239,68,68,.3)}
.stars-rating{color:#ffd54f;font-size:1.1rem;letter-spacing:2px}

/* === HEADER === */
header{position:sticky;top:0;z-index:100;background:rgba(3,0,8,.7);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}
.header-inner{display:flex;justify-content:space-between;align-items:center;padding:1.1rem 5%;max-width:1400px;margin:0 auto}
.logo{font-family:'Cinzel',serif;font-size:1.5rem;font-weight:700;color:#fff;letter-spacing:3px;text-shadow:0 0 10px var(--primary),0 0 22px rgba(255,215,0,.3);white-space:nowrap}
.logo span{color:var(--accent)}
nav{display:flex;align-items:center;gap:2rem}
nav a{font-size:.9rem;font-weight:600;color:var(--text-muted);transition:color .25s}
nav a:hover{color:#fff}
.nav-cta{padding:.55rem 1.4rem;font-size:.85rem;font-weight:600;border-radius:var(--radius-pill);background:var(--primary-light);color:var(--accent);border:1px solid var(--border-accent);transition:background .25s,box-shadow .25s;white-space:nowrap}
.nav-cta:hover{background:var(--accent-light);box-shadow:0 0 16px rgba(255,215,0,.3)}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:.4rem}
.hamburger span{display:block;width:24px;height:2px;background:var(--text);border-radius:2px;transition:transform .3s,opacity .3s}
.mobile-menu{display:none;flex-direction:column;gap:1.2rem;padding:1.5rem 5%;border-top:1px solid var(--border);background:rgba(3,0,8,.9)}
.mobile-menu a{font-size:1rem;font-weight:600;color:var(--text-muted)}
.mobile-menu a:hover{color:#fff}
.mobile-menu.open{display:flex}

/* === HERO === */
.hero{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;min-height:calc(100vh - 68px);padding:4rem 5% 5rem}
.hero-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--accent);margin-bottom:1.5rem;padding:.4rem 1rem;border:1px solid var(--border-accent);border-radius:var(--radius-pill);background:var(--accent-light)}
.hero h1{font-family:'Cinzel',serif;font-size:clamp(2.8rem,7vw,5.5rem);line-height:1.1;margin-bottom:1.5rem;background:linear-gradient(130deg,#fff 20%,var(--accent) 55%,var(--primary) 90%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero p{font-size:clamp(1rem,2vw,1.2rem);max-width:600px;margin-bottom:2.5rem;color:var(--text-muted)}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin-bottom:3.5rem}
.hero-pillars{display:flex;gap:2.5rem;flex-wrap:wrap;justify-content:center}
.hero-pillar{text-align:center;font-size:.9rem;color:var(--text-muted)}
.hero-pillar .icon{width:52px;height:52px;border-radius:50%;background:var(--primary-light);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:1.4rem;margin:0 auto .6rem}
.hero-pillar strong{display:block;color:#fff;font-size:.95rem;margin-bottom:.2rem}

/* === CATALOGO GRID === */
#experiencias{background:linear-gradient(180deg,transparent,rgba(18,6,36,.3) 40%,transparent)}
.filter-tabs{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:2.5rem;justify-content:center}
.filter-tab{padding:.45rem 1.2rem;font-size:.82rem;font-weight:600;border-radius:var(--radius-pill);cursor:pointer;border:1px solid var(--border);background:transparent;color:var(--text-muted);font-family:'Space Grotesk',sans-serif;transition:all .25s}
.filter-tab:hover,.filter-tab.active{background:var(--primary-light);border-color:var(--primary);color:#fff}
.retiros-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.75rem}
.retiro-card{padding:2rem;display:flex;flex-direction:column;gap:1rem;cursor:pointer}
.retiro-card.is-unavailable{cursor:not-allowed;opacity:.78;border-color:rgba(239,68,68,.35);box-shadow:none}
.retiro-card.is-unavailable:hover{transform:none;box-shadow:none;border-color:rgba(239,68,68,.35)}
.retiro-card.is-unavailable .retiro-price-chip{color:#fca5a5;background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.35)}
.retiro-card.is-unavailable button[disabled]{cursor:not-allowed;opacity:.75;transform:none;box-shadow:none}
.retiro-card.requires-reservation{border-color:rgba(233,193,118,.3);box-shadow:none}
.retiro-card.requires-reservation:hover{border-color:rgba(233,193,118,.42);box-shadow:none}
.retiro-price--reservation{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;font-size:1.05rem}
.retiro-card.requires-reservation .retiro-price-chip--reservation{color:#fff;background:linear-gradient(135deg,rgba(233,193,118,.16),rgba(138,43,226,.12));border-color:rgba(233,193,118,.3)}
.retiro-card-footer--reservation{flex-direction:column;align-items:stretch;gap:.8rem}
.btn-reservation{width:100%;justify-content:center;font-weight:700;letter-spacing:.02em;border:1px solid rgba(255,215,0,.3);box-shadow:none;text-wrap:balance}
.btn-reservation:hover{transform:translateY(-1px);border-color:rgba(255,215,0,.5)}
.btn-reservation:focus-visible{outline:2px solid rgba(255,215,0,.9);outline-offset:2px}
.btn-sm-accessible{min-height:44px;padding:.72rem 1.1rem;font-size:.9rem;line-height:1.2}
.retiro-card-top{display:flex;justify-content:space-between;align-items:flex-start}
.retiro-card h3{font-family:'Cinzel',serif;font-size:1.25rem;color:#fff;margin:.5rem 0 .25rem}
.retiro-card p{font-size:.9rem;color:var(--text-muted);flex:1}
.retiro-meta{display:flex;gap:.75rem;font-size:.8rem;color:var(--text-muted);flex-wrap:wrap}
.retiro-meta span{display:flex;align-items:center;gap:.3rem}
.retiro-card-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding-top:1rem;margin-top:auto}
.retiro-price-block{display:flex;flex-direction:column;gap:.15rem}
.retiro-price{font-family:'Cinzel',serif;font-size:1.4rem;color:var(--accent)}
.retiro-price small{font-family:'Space Grotesk',sans-serif;font-size:.75rem;color:var(--text-muted);display:block;font-weight:400}
.retiro-price-micro{font-size:.74rem;color:rgba(224,224,255,.78)}
.retiro-price-chip{margin-top:.75rem;font-size:.72rem;color:var(--accent);background:rgba(255,215,0,.08);border:1px solid var(--border-accent);border-radius:999px;padding:.25rem .65rem;display:inline-flex;align-self:flex-start}

/* === METODOLOGIA === */
.section-metodo{background:linear-gradient(180deg,transparent,rgba(255,215,0,.04) 50%,transparent)}
.metodo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}
.metodo-card{padding:2rem;text-align:center}
.metodo-card .metodo-icon{font-size:2.5rem;margin-bottom:1rem}
.metodo-card h3{font-family:'Cinzel',serif;font-size:1.1rem;color:#fff;margin-bottom:.75rem}
.metodo-card p{font-size:.85rem;color:var(--text-muted)}

/* === AUTORIDAD === */
#autoridad{text-align:center;background:linear-gradient(180deg,transparent,rgba(138,43,226,.07) 50%,transparent)}
.autoridad-inner{max-width:720px;margin:0 auto}
.autoridad-inner .avatar-grande{width:110px;height:110px;border-radius:50%;background:linear-gradient(135deg,var(--primary) 0%,var(--accent) 100%);display:flex;align-items:center;justify-content:center;font-family:'Cinzel',serif;font-size:2.5rem;color:#fff;margin:0 auto 1.5rem;box-shadow:0 0 40px rgba(255,215,0,.4);overflow:hidden}
.autoridad-inner .avatar-grande img{width:100%;height:100%;object-fit:cover;display:block}
.autoridad-inner h2{font-family:'Cinzel',serif;font-size:2rem;color:#fff;margin-bottom:.5rem}
.autoridad-inner .titulo{color:var(--accent);font-size:.85rem;font-weight:600;margin-bottom:1.5rem}
.autoridad-inner p{color:var(--text-muted);margin-bottom:1rem}
.stats-row{display:flex;gap:3rem;justify-content:center;flex-wrap:wrap;margin:2.5rem 0}
.stat-item{text-align:center}
.stat-item .num{font-family:'Cinzel',serif;font-size:2.2rem;color:var(--accent);display:block}
.stat-item span:last-child{font-size:.8rem;color:var(--text-muted)}

/* === TESTIMONIOS === */
.testimonios-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem}
.testimonio-card{padding:1.75rem}
.testimonio-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}
.testimonio-avatar{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--accent));display:flex;align-items:center;justify-content:center;font-family:'Cinzel',serif;font-size:1.2rem;color:#fff;flex-shrink:0}
.testimonio-meta{flex:1}
.testimonio-meta strong{display:block;color:#fff;font-size:.95rem}
.testimonio-meta span{font-size:.78rem;color:var(--text-muted)}
.testimonio-card blockquote{font-size:.9rem;color:var(--text-muted);font-style:italic;line-height:1.7;border-left:2px solid var(--primary);padding-left:.9rem}
.testimonio-change{display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;color:var(--success);background:rgba(163,230,53,.1);border:1px solid rgba(163,230,53,.25);border-radius:var(--radius-pill);padding:.25rem .75rem;margin-top:.9rem}

/* === FOOTER === */
footer{border-top:1px solid var(--border);padding:3.5rem 0 2rem}
.footer-inner{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}
.footer-brand .logo{font-size:1.25rem;margin-bottom:1rem}
.footer-brand p{font-size:.85rem;color:var(--text-muted);line-height:1.7}
.footer-col h4{font-size:.78rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);margin-bottom:1.1rem}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.65rem}
.footer-col ul li a{font-size:.85rem;color:var(--text-muted);transition:color .2s}
.footer-col ul li a:hover{color:var(--accent)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;padding-top:2rem;border-top:1px solid var(--border);font-size:.78rem;color:var(--text-muted)}
.footer-legal{display:flex;gap:1.5rem;flex-wrap:wrap}
.footer-legal a{color:var(--text-muted);transition:color .2s}
.footer-legal a:hover{color:var(--accent)}
.footer-disclaimer{font-size:.72rem;color:rgba(200,200,240,.4);margin-top:1.2rem;line-height:1.6;text-align:center}

/* === OVERLAYS === */
.overlay{position:fixed;inset:0;z-index:500;background:rgba(3,0,8,.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:none;overflow-y:auto;padding:2rem 1rem;animation:fadeOverlay .3s ease}
.overlay.active{display:block}
.overlay-content{max-width:860px;margin:0 auto;padding:2rem;position:relative}
.overlay-narrow{max-width:540px}
.overlay-close{position:absolute;top:1rem;right:1rem;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.06);border:1px solid var(--border);color:#fff;font-size:1.3rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;z-index:10}
.overlay-close:hover{background:rgba(255,255,255,.15)}

/* Sold out feedback */
.soldout-notice{position:fixed;right:1rem;bottom:1rem;z-index:1200;max-width:420px;display:flex;flex-direction:column;gap:.25rem;padding:.95rem 1rem;border-radius:12px;border:1px solid rgba(239,68,68,.45);background:rgba(35,9,12,.95);color:#fee2e2;box-shadow:0 14px 34px rgba(0,0,0,.34);opacity:0;transform:translateY(16px);transition:opacity .24s ease,transform .24s ease}
.soldout-notice strong{font-size:.88rem;letter-spacing:.04em;text-transform:uppercase;color:#fca5a5}
.soldout-notice span{font-size:.86rem;line-height:1.45}
.soldout-notice.is-visible{opacity:1;transform:translateY(0)}

/* Landing overlay sections */
.landing-hero{text-align:center;padding:2rem 0 3rem;border-bottom:1px solid var(--border);margin-bottom:2rem}
.landing-hero h2{font-family:'Cinzel',serif;font-size:2rem;color:#fff;margin:.75rem 0 .5rem}
.landing-hero .landing-sub{color:var(--accent);font-size:1.05rem;font-weight:600;margin-bottom:1rem}
.landing-meta{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap;font-size:.85rem;color:var(--text-muted);margin-bottom:1.5rem}
.landing-section{margin-bottom:2.5rem}
.landing-section h3{font-family:'Cinzel',serif;font-size:1.3rem;color:#fff;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}
.landing-section p,.landing-section li{font-size:.92rem;color:var(--text-muted);line-height:1.7}
.landing-section ul{list-style:none;display:flex;flex-direction:column;gap:.6rem;padding-left:0}
.landing-section ul li::before{content:'✦ ';color:var(--accent)}
.landing-price-box{background:rgba(255,215,0,.05);border:1px solid var(--border-accent);border-radius:var(--radius-lg);padding:2rem;text-align:center;margin:2rem 0}
.landing-price-box .price-main{font-family:'Cinzel',serif;font-size:2.2rem;color:var(--accent)}
.landing-price-box .price-detail{font-size:.85rem;color:var(--text-muted);margin-top:.5rem}
.landing-price-box .price-apartado{font-size:.9rem;color:var(--warning);margin-top:.75rem;font-weight:600}

/* FAQ */
.faq-item{border:1px solid var(--border);border-radius:12px;margin-bottom:.75rem;overflow:hidden}
.faq-q{padding:1rem 1.25rem;font-weight:600;color:#fff;cursor:pointer;display:flex;justify-content:space-between;align-items:center;background:rgba(255,255,255,.03);transition:background .2s}
.faq-q:hover{background:rgba(255,255,255,.06)}
.faq-q .arrow{transition:transform .3s;font-size:.8rem;color:var(--accent)}
.faq-a{padding:0 1.25rem;max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease;font-size:.88rem;color:var(--text-muted);line-height:1.7}
.faq-item.open .faq-a{max-height:300px;padding:0 1.25rem 1rem}
.faq-item.open .faq-q .arrow{transform:rotate(180deg)}

/* === CHECKOUT === */
.checkout-box{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem;margin-bottom:1.5rem}
.checkout-box h3{font-family:'Cinzel',serif;font-size:1.3rem;color:#fff;text-align:center;margin-bottom:.5rem}
.checkout-sub{font-size:.85rem;color:var(--text-muted);text-align:center;margin-bottom:2rem}
.payment-modes{display:flex;gap:1rem;margin-bottom:1.5rem}
.payment-mode{flex:1;padding:1.25rem;border:2px solid var(--border);border-radius:14px;cursor:pointer;text-align:center;transition:border-color .25s,background .25s}
.payment-mode.selected{border-color:var(--accent);background:rgba(255,215,0,.08)}
.payment-mode h4{font-size:.9rem;color:#fff;margin-bottom:.3rem}
.payment-mode p{font-size:.78rem;color:var(--text-muted)}
.payment-mode .mode-price{font-family:'Cinzel',serif;font-size:1.3rem;color:var(--accent);margin:.5rem 0}
.payment-summary{background:rgba(255,215,0,.05);border:1px solid var(--border-accent);border-radius:12px;padding:1.25rem;margin:1.5rem 0}
.payment-summary .row{display:flex;justify-content:space-between;font-size:.88rem;color:var(--text-muted);margin-bottom:.4rem}
.payment-summary .row.total{color:#fff;font-weight:700;font-size:1rem;border-top:1px solid var(--border);padding-top:.6rem;margin-top:.6rem}
.payment-summary .row.pending{color:var(--warning)}
.checkout-price-highlight{background:linear-gradient(145deg, rgba(255,215,0,.12), rgba(138,43,226,.16));border:1px solid var(--border-accent);border-radius:14px;padding:1rem 1.1rem;margin-bottom:1rem;text-align:center}
.checkout-price-highlight .eyebrow{font-size:.72rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);margin-bottom:.35rem}
.checkout-price-highlight .amount{font-family:'Cinzel',serif;font-size:1.7rem;color:var(--accent);line-height:1.15}
.checkout-price-highlight .micro{font-size:.78rem;color:rgba(224,224,255,.82);margin-top:.25rem}
.checkout-trust-points{list-style:none;margin:0 0 1rem;padding:0;display:flex;flex-direction:column;gap:.45rem}
.checkout-trust-points li{font-size:.8rem;color:var(--text-muted);padding:.5rem .65rem;border:1px solid var(--border);border-radius:10px;background:rgba(255,255,255,.02)}
.checkout-mobile-paybar{display:none;position:sticky;bottom:0;left:0;right:0;z-index:12;background:rgba(3,0,8,.96);border:1px solid var(--border);border-radius:12px;padding:.65rem;align-items:center;justify-content:space-between;gap:.6rem;backdrop-filter:blur(8px)}
.checkout-mobile-paybar-info{display:flex;flex-direction:column;gap:.1rem}
.checkout-mobile-paybar-amount{font-family:'Cinzel',serif;font-size:1rem;color:var(--accent)}
.checkout-mobile-paybar-meta{font-size:.67rem;color:var(--text-muted);letter-spacing:.02em}

/* Landing de evento: bloque de precio final */
.event-price-stack{display:flex;flex-direction:column;gap:.28rem;width:fit-content;margin-inline:auto;padding:.95rem 1.05rem;border-radius:14px;background:linear-gradient(145deg, rgba(20,20,20,.94), rgba(40,32,16,.9));border:1px solid rgba(233,193,118,.45);box-shadow:0 12px 28px rgba(0,0,0,.22), 0 0 22px rgba(233,193,118,.12)}
.event-price-main{font-family:'Cinzel',serif;font-size:2rem;line-height:1;color:#ffe6af;text-shadow:0 1px 0 rgba(0,0,0,.35), 0 0 14px rgba(233,193,118,.25)}
.event-price-sub{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.86)}
.event-price-note{font-size:.82rem;color:rgba(255,255,255,.78)}
.form-group{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1rem}
.form-group label{font-size:.8rem;font-weight:600;color:var(--text-muted);letter-spacing:.5px}
.form-input{padding:.8rem 1rem;font-family:'Space Grotesk',sans-serif;font-size:.95rem;color:#000;background:#fff;border:1px solid var(--border);border-radius:10px;transition:border-color .25s,box-shadow .25s;outline:none;caret-color:#000}
.form-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(255,215,0,.2)}
.form-input::placeholder{color:rgba(0,0,0,.45);font-size:.9rem}
.checkbox-group{display:flex;gap:.75rem;align-items:flex-start;margin:1rem 0}
.checkbox-group input[type=checkbox]{margin-top:.3rem;accent-color:var(--accent);width:18px;height:18px;flex-shrink:0}
.checkbox-group label{font-size:.8rem;color:var(--text-muted);line-height:1.5}

/* === MERCADO PAGO BRICK === */
.mp-brick-container{margin:1rem 0;min-height:200px;background:rgba(255,255,255,.02);border-radius:12px;padding:.5rem}
.checkout-error{background:rgba(239,68,68,.15);border:1px solid rgba(239,68,68,.4);border-radius:8px;padding:1rem;margin:1rem 0;color:#fca5a5;font-size:.85rem;text-align:center}
.checkout-error.show{display:block}

/* === CONFIRMATION === */
.confirm-box{text-align:center;padding:2rem}
.confirm-icon{font-size:4rem;margin-bottom:1rem}
.confirm-box h2{font-family:'Cinzel',serif;font-size:1.8rem;color:#fff;margin-bottom:.5rem}
.confirm-box .folio{font-size:.85rem;color:var(--accent);font-weight:600;margin-bottom:2rem}
.receipt-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;text-align:left;margin:1.5rem 0}
.receipt-card h4{font-family:'Cinzel',serif;color:#fff;margin-bottom:1rem;font-size:1rem}
.receipt-row{display:flex;justify-content:space-between;font-size:.85rem;color:var(--text-muted);padding:.4rem 0;border-bottom:1px solid rgba(255,255,255,.05)}
.receipt-row:last-child{border-bottom:none}
.receipt-row.highlight{color:var(--accent);font-weight:600}
.receipt-row.pending-row{color:var(--warning)}
.confirm-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:1.5rem}
.confirm-instructions{background:rgba(255,215,0,.05);border:1px solid var(--border-accent);border-radius:12px;padding:1.25rem;margin-top:1.5rem;font-size:.85rem;color:var(--text-muted);text-align:left;line-height:1.7}

/* === STICKY CTA MOBILE === */
.sticky-cta-mobile{display:none;position:fixed;bottom:0;left:0;right:0;z-index:90;padding:.75rem 1rem;background:rgba(3,0,8,.95);backdrop-filter:blur(10px);border-top:1px solid var(--border)}
.btn-sticky{width:100%;justify-content:center;padding:1rem}

/* === ANIMATIONS === */
@keyframes nebulaPulse{0%{transform:translate(-50%,-50%) scale(.9);opacity:.6}100%{transform:translate(-50%,-50%) scale(1.12);opacity:1}}
@keyframes twinkle{0%{opacity:.08;scale:.6}50%{opacity:.9;scale:1}100%{opacity:.25;scale:1.2}}
@keyframes drift{0%{translate:0 0}25%{translate:var(--dx) calc(var(--dy)*.4)}50%{translate:calc(var(--dx)*.5) var(--dy)}75%{translate:calc(var(--dx)*-.4) calc(var(--dy)*.6)}100%{translate:0 0}}
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeOverlay{from{opacity:0}to{opacity:1}}
@keyframes pulse{0%,100%{box-shadow:0 0 18px rgba(255,215,0,.45)}50%{box-shadow:0 0 32px rgba(255,215,0,.8)}}
.fade-up{animation:fadeUp .7s ease both}

/* === RESPONSIVE === */
@media(max-width:900px){
    .footer-inner{grid-template-columns:1fr 1fr}
    .testimonios-grid{grid-template-columns:1fr}
    .metodo-grid{grid-template-columns:1fr 1fr}
    .payment-modes{flex-direction:column}
}
@media(max-width:640px){
    nav{display:none}
    .hamburger{display:flex}
    .hero h1{font-size:clamp(2.2rem,10vw,3.2rem)}
    .hero-actions{flex-direction:column;align-items:center}
    .footer-inner{grid-template-columns:1fr;gap:2rem}
    .footer-bottom{flex-direction:column;text-align:center}
    .stats-row{gap:1.5rem}
    .retiros-grid{grid-template-columns:1fr}
    .metodo-grid{grid-template-columns:1fr}
    .testimonios-grid{grid-template-columns:1fr}
    .sticky-cta-mobile{display:block}
    .landing-meta{flex-direction:column;align-items:center;gap:.5rem}
    .overlay-content{padding:1rem}
    .event-price-stack{width:100%;max-width:330px}
    .event-price-main{font-size:1.6rem}
    .checkout-mobile-paybar.active{display:flex}
    #checkoutStep2{padding-bottom:4.3rem}
    .soldout-notice{left:1rem;right:1rem;max-width:none}
}
