@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--ink:#262239;--purple:#5c36bc;--paper:#faf9f6;--gold:#f5cc6b}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px 'DM Sans',sans-serif}button,a,input{accent-color:var(--purple)}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #d8a532;outline-offset:4px}.notice{text-align:center;background:#ece7f7;padding:9px;font-size:11px;letter-spacing:1px}header{max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:27px 35px;gap:20px}.brand{text-decoration:none;color:var(--purple);font-weight:700;font-size:38px;letter-spacing:-3px}.brand span{font-size:25px;letter-spacing:-1px;margin-left:5px}.brand i{color:#bd8f27;font-size:23px;margin-left:9px}.nav{background:none;border:0;padding:12px 17px;color:#777}.nav.active{color:var(--purple);background:#eee8f8;border-radius:30px}.powered{font-size:11px;color:#777}main{max-width:1170px;margin:auto;padding:0 25px}.hero{position:relative;overflow:hidden;border-radius:18px;padding:55px 55px 28px;background:radial-gradient(ellipse at 80% 80%,#965cca 0,transparent 48%),linear-gradient(110deg,#211435,#4e2876);color:white;min-height:400px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700}.hero h1{font:500 clamp(42px,5vw,66px)/1.12 'Playfair Display',Georgia,serif;position:relative;z-index:1;margin:25px 0 18px}.hero em{color:var(--gold)}.hero p{color:#e4d4f4;font-size:19px}.spark{position:absolute;right:100px;top:30px;font-size:190px;color:var(--gold);transform:rotate(12deg);z-index:1}.orb{width:320px;height:320px;position:absolute;right:-80px;top:20px;border:1px solid #b08bc4;border-radius:50%;box-shadow:0 0 0 35px #ffffff08,0 0 0 70px #ffffff06,0 0 0 105px #ffffff04}.herofoot{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff30;margin-top:35px;padding-top:20px;font-size:10px;letter-spacing:1.5px;position:relative;z-index:1}.layout{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;margin:40px 0 60px}article{padding:10px 0}h2{font:500 32px 'Playfair Display',Georgia,serif;margin:18px 0}h3{font-size:20px;margin-top:35px}p{line-height:1.8;color:#6b6678}.lead{font-size:17px}.pill{display:inline-block;background:#eee8f8;color:#64459a;border-radius:20px;padding:8px 12px;font-size:10px;letter-spacing:.6px}.facts{display:grid;gap:22px;margin:30px 0}.facts strong,.facts small{display:block;margin-left:28px}.facts strong{margin-top:-18px}.facts small{margin-top:6px}.included{display:flex;gap:15px;flex-wrap:wrap;font-size:12px;color:#715792}.note{padding:20px;background:#eeeae3;border-radius:9px;font-size:12px;line-height:1.6;margin-top:30px}aside{border:1px solid #e5e0eb;border-radius:16px;background:white;padding:28px;align-self:start;box-shadow:0 10px 30px #30204106}.choice{display:flex;align-items:center;gap:10px;border:1px solid #e5dfee;padding:18px 12px;margin:12px 0;border-radius:9px;cursor:pointer}.choice:has(input:checked){border-color:var(--purple);background:#f9f5ff}.choice span{flex:1}.choice small{display:block;margin-top:6px}small{font-size:11px;color:#827a8d;line-height:1.6}.qty,.line{display:flex;justify-content:space-between;align-items:center;margin:20px 0;gap:12px}.qty button{border:1px solid #ded8e9;background:white;width:32px;height:32px;border-radius:7px}.qty b{margin:0 18px}.line{font-size:12px}.line small{display:block}.total{border-top:1px solid #eee;padding-top:20px;font-size:19px}.primary{width:100%;background:var(--purple);color:white;border:0;border-radius:9px;padding:17px;margin:20px 0 10px;font-weight:700}.primary:hover{background:#45268f}.secure{text-align:center;font-size:10px;color:#888;margin-top:8px}footer{border-top:1px solid #e3deea;padding:25px;max-width:1120px;margin:auto;display:flex;gap:20px;justify-content:space-between;align-items:center;font-size:12px}footer b{font-size:22px;color:var(--purple)}footer small{max-width:220px}dialog{border:0;border-radius:18px;padding:35px;width:min(540px,94vw);max-height:94vh;overflow:auto;color:var(--ink)}dialog::backdrop{background:#19112cbb;backdrop-filter:blur(5px)}.close{position:absolute;right:14px;top:10px;border:0;background:none;font-size:28px;color:#777}.guest{padding:20px 0;border-bottom:1px solid #e9e4ed;display:flex;justify-content:space-between;align-items:center;gap:15px}.guest small{display:block}.success{color:#247d5c;letter-spacing:1.5px;font-size:11px;font-weight:700}.ticketintro{font-size:13px}.ticket{border:1px solid #e2d9ee;border-radius:14px;overflow:hidden;background:#fff}.ticket-top{background:#33204d;color:#fff;padding:18px;display:flex;justify-content:space-between;align-items:center}.ticket-top span{color:var(--gold);font-size:9px}.ticketbody{padding:25px}.ticketbody h2{font-size:34px;line-height:1.15}.ticketbody p{font-size:12px}.tear{border-top:2px dashed #ded5e9;margin:22px -25px}.ticketdetail{display:flex;justify-content:space-between;gap:15px}.ticketdetail b,.ticketdetail small{display:block}.ticketdetail b{font-size:12px;margin:3px 0 12px}.ticketdetail small{font-size:8px;letter-spacing:1px}.qrarea{max-width:150px;text-align:center}canvas{max-width:100%;height:auto}.ticketcode{text-align:center;border-top:1px solid #eee;padding-top:16px;font:9px monospace;letter-spacing:1px}.ticketactions{display:flex;justify-content:space-between;gap:8px;margin:18px 0}.ticketactions button,.textbtn{background:#eee8f8;border:0;color:var(--purple);border-radius:6px;padding:10px;font-size:11px}.orghead{padding:40px 0 10px}.orghead h1{font:48px 'Playfair Display',serif}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:20px 0}.stats>div{border:1px solid #e5deef;background:#fff;border-radius:12px;padding:25px}.stats strong{display:block;font-size:28px;margin-top:15px}.stats i{font-size:14px;color:#999;font-style:normal}#scanresult{padding:15px 0;font-weight:700;line-height:1.7}.textbtn{margin-top:12px}[hidden]{display:none!important}@media(max-width:750px){header{padding:20px;flex-wrap:wrap}.powered{display:none}.nav{padding:10px;font-size:12px}.hero{padding:35px 25px 25px}.spark{right:20px;top:65px;opacity:.35;font-size:130px}.herofoot{flex-direction:column}.layout{grid-template-columns:1fr;gap:20px}.stats{grid-template-columns:1fr 1fr}.stats>div{padding:16px}.orghead h1{font-size:35px}footer{flex-wrap:wrap}.ticketbody{padding:20px}}@media print{body>*:not(dialog){display:none!important}dialog{position:static;display:block;width:100%;max-height:none;overflow:visible}dialog .close,.ticketactions,#checkoutstep,.ticketintro,.success{display:none!important}#ticketstep{display:block!important}}
