@import "https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700;800;900&family=DM+Serif+Display:ital@0;1&display=swap";
:root{--red:#b61426;--deep:#740718;--ink:#292225;--muted:#8d8080;--cream:#fffaf5;--line:#eadedb;--rose:#fff2ef;--gold:#ffe9a4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);-webkit-font-smoothing:antialiased;background:#f6f1ec;margin:0;font-family:Be Vietnam Pro,Arial,sans-serif}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}.page-shell{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100vh;display:grid}.event-panel{color:#fff9ee;background:radial-gradient(at 76% 38%,#e95441 0%,#0000 35%),radial-gradient(at 15% 95%,#9b1020 0%,#0000 36%),linear-gradient(150deg,#8a0d1b 0%,#b61827 47%,#df3e31 100%);flex-direction:column;min-height:100vh;padding:36px clamp(36px,5.1vw,84px) 28px;display:flex;position:relative;overflow:hidden}.panel-glow{pointer-events:none;filter:blur(27px);border-radius:50%;position:absolute}.panel-glow-one{opacity:.27;background:#ffc26d;width:250px;height:250px;top:11%;right:-70px}.panel-glow-two{opacity:.3;background:#ec5e39;width:220px;height:220px;bottom:12%;left:-130px}.panel-grid{opacity:.16;pointer-events:none;background-image:repeating-radial-gradient(at -15% 53%,#0000 0 9px,#ffc1a5 10px,#0000 11px 18px);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 25%,#000);mask-image:linear-gradient(#0000 25%,#000)}.event-header,.event-content,.panel-footer{z-index:1;position:relative}.event-header{justify-content:space-between;align-items:center;gap:20px;display:flex}.brand{letter-spacing:-.065em;align-items:center;gap:10px;font-size:19px;font-weight:900;line-height:.9;display:flex}.brand-icon{border:1px solid #ffdfcc;border-radius:50%;place-items:center;width:31px;height:31px;font-size:20px;font-weight:400;display:grid}.brand small{letter-spacing:.28em;margin-top:6px;font-size:6px;font-weight:700;display:block}.header-note{letter-spacing:.15em;color:#ffe8d9;align-items:center;gap:8px;font-size:8px;font-weight:700;display:flex}.header-note span,.top-label span{background:#ffe6a0;border-radius:50%;width:6px;height:6px}.event-content{flex-direction:column;align-items:center;width:min(100%,540px);margin:auto;padding:38px 0 44px;display:flex}.event-eyebrow{letter-spacing:.22em;color:#ffe6cb;text-align:center;align-items:center;gap:11px;font-size:9px;font-weight:700;display:flex}.event-eyebrow .line{background:#ffdfc7a1;width:29px;height:1px}.hero-art{aspect-ratio:1.32;place-items:center;width:min(100%,430px);margin:7px 0 6px;display:grid;position:relative}.hero-art:before{content:"";aspect-ratio:1;background:radial-gradient(circle at 33% 22%,#ffb3a7 0,#f45d50 34%,#c52b32 68%,#a91426 100%);border-radius:50%;width:67%;position:absolute;top:9%;box-shadow:inset 0 0 65px #fff3,0 0 90px #ff948766}.hero-orbit{border:1px solid #ffdfc69a;border-radius:50%;width:95%;height:50%;position:absolute;transform:rotate(-15deg)}.orbit-two{border-color:#ffd2b33d;width:81%;height:57%;transform:rotate(21deg)}.hero-visual-copy{text-align:center;color:#fffdf2;text-shadow:0 6px 25px #7a091c6b;position:relative;transform:rotate(-5deg)}.hero-visual-copy>span,.hero-visual-copy small{letter-spacing:.27em;font-size:8px;font-weight:800;display:block}.hero-visual-copy strong{letter-spacing:-.115em;margin:20px 0;padding-right:.09em;font-size:clamp(72px,8vw,120px);font-weight:900;line-height:.73;display:block}.hero-period{color:#ffe7a0}.spark{color:#ffe7ac;text-shadow:0 0 18px #ffe9a6;font-size:16px}.hero-art>.spark{z-index:2;position:absolute}.spark-one{font-size:46px;top:19%;right:5%}.spark-two{font-size:23px;bottom:21%;left:9%}.spark-three{font-size:16px;bottom:18%;right:15%}.hero-intro{width:100%;max-width:440px}.intro-top{letter-spacing:.19em;color:#ffe4cf;border-bottom:1px solid #ffddc16b;justify-content:space-between;align-items:center;padding-bottom:15px;font-size:9px;font-weight:800;display:flex}.hero-intro h1{letter-spacing:-.055em;margin:23px 0 14px;font-size:clamp(33px,3.5vw,52px);line-height:1.12}.hero-intro h1 em,.form-heading h2 em{font-family:DM Serif Display,Georgia,serif;font-weight:400}.hero-intro h1 em{color:#ffe5ac}.hero-intro p{color:#ffe5d9;max-width:380px;margin:0;font-size:13px;line-height:1.9}.event-details{border-top:1px solid #ffddc166;grid-template-columns:32px 1fr 1px 32px 1fr;align-items:center;gap:10px;width:100%;max-width:440px;margin-top:31px;padding-top:24px;display:grid}.detail-icon{color:#ffe1a5;font-size:26px;line-height:1}.pin-icon{font-size:25px}.event-details span,.event-details strong{display:block}.event-details span{letter-spacing:.15em;color:#ffcfb8;margin-bottom:6px;font-size:8px;font-weight:800}.event-details strong{font-size:10px;font-weight:600;line-height:1.5}.detail-divider{background:#ffd6c36b;height:35px}.panel-footer{color:#ffddcf9e;letter-spacing:.14em;justify-content:space-between;gap:12px;font-size:8px;font-weight:700;display:flex}.panel-footer b{color:#ffe4a6;font-size:13px}.registration-panel{background:#f9f5f1;flex-direction:column;min-height:100vh;padding:38px clamp(30px,5vw,82px) 30px;display:flex}.registration-top{justify-content:space-between;align-items:center;display:flex}.top-label{letter-spacing:.15em;color:#a18d89;align-items:center;gap:8px;font-size:9px;font-weight:800;display:flex}.top-label span{background:#d83539}.top-mark{color:#d1b4ab;font-size:23px}.form-wrap{width:min(100%,510px);margin:auto}.form-heading{padding:35px 0 23px}.heading-tag{color:#bd2531;letter-spacing:.18em;font-size:9px;font-weight:800}.heading-tag span{margin-left:4px;font-size:13px}.form-heading h2{letter-spacing:-.055em;color:#302326;margin:15px 0 10px;font-size:clamp(35px,3.5vw,48px);line-height:1.12}.form-heading h2 em{color:#be1d2d}.form-heading p{color:#8e7f7e;margin:0;font-size:12px;line-height:1.8}.booking-card{background:#fff;border:1px solid #f1e5e1;border-radius:14px;padding:26px 28px 19px;box-shadow:0 16px 50px #7e3b3210,0 2px 5px #8a3e2910}.card-heading{justify-content:space-between;align-items:center;display:flex}.card-eyebrow{color:#c72a35;letter-spacing:.15em;font-size:9px;font-weight:800}.card-heading h3{letter-spacing:-.035em;margin:7px 0 0;font-size:19px}.card-heading-icon{color:#bb2733;background:#fff0ed;border-radius:50%;place-items:center;width:34px;height:34px;font-size:18px;display:grid}.card-intro{color:#a29693;margin:8px 0 20px;font-size:11px;line-height:1.6}.field-list{gap:15px;display:grid}.field{display:block}.field>span,.ticket-heading-title{color:#493d3d;font-size:11px;font-weight:800}.field b,.ticket-heading b{color:#c12331}.input-wrap{margin-top:8px;position:relative}.input-icon{color:#c2afaa;font-size:20px;line-height:1;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.phone-glyph{font-size:23px;transform:translateY(-50%)rotate(-40deg)}.email-glyph{font-size:16px}.field input{color:#292225;background:#fefdfc;border:1px solid #e9dfdc;border-radius:7px;outline:none;width:100%;height:44px;padding:0 13px 0 39px;font-size:12px;transition:border-color .2s,box-shadow .2s}.field input::placeholder{color:#c4b7b2}.field input:focus{border-color:#c84048;box-shadow:0 0 0 3px #c02b3618}.field input[aria-invalid=true]{border-color:#d64c4c}.field-error{color:#b71f2a;margin-top:5px;font-size:10px;line-height:1.5;display:block}.ticket-heading{justify-content:space-between;align-items:center;margin:23px 0 10px;display:flex}.ticket-heading-title,.ticket-heading small{display:block}.ticket-heading small{color:#ae9f9a;margin-top:5px;font-size:10px}.ticket-heading-icon{color:#dbbbb1;font-size:20px}.ticket-options{gap:8px;display:grid}.ticket-option{background:#fff;border:1px solid #ede3e0;border-radius:8px;align-items:center;gap:11px;padding:12px;display:flex}.ticket-option.is-selected{background:#fff9f7;border-color:#e6aaa6}.ticket-symbol{color:#c02b36;background:#fae7e3;border-radius:8px;flex:none;place-items:center;width:37px;height:37px;font-size:22px;display:grid}.ticket-symbol.vip{color:#bd6c1c;background:#fff0d5}.ticket-copy{flex:1;min-width:0}.ticket-copy strong,.ticket-copy span,.ticket-copy b{display:block}.ticket-copy strong{font-size:11px}.ticket-copy span{color:#ae9e99;margin-top:4px;font-size:9px}.ticket-copy b{color:#b91e2d;margin-top:6px;font-size:11px}.stepper{align-items:center;gap:8px;display:flex}.stepper button{color:#b72832;background:#fff;border:1px solid #eadbd6;border-radius:6px;place-items:center;width:28px;height:28px;padding:0;font-size:17px;display:grid}.stepper button:disabled{color:#d4c9c4;background:#faf8f6}.stepper output{text-align:center;min-width:15px;font-size:12px;font-weight:800}.ticket-error{margin-bottom:0}.card-bottom{background:#fff}.total{border-top:1px dashed #e7d8d4;justify-content:space-between;align-items:center;margin-top:20px;padding:17px 0;display:flex}.total span,.total small{display:block}.total span{color:#625552;font-size:11px;font-weight:700}.total small{color:#b5a7a2;margin-top:5px;font-size:10px}.total strong{letter-spacing:-.04em;color:#bd1829;font-size:21px}.submit-button{color:#fff;letter-spacing:.06em;background:linear-gradient(100deg,#a60e20,#d32631);border:0;border-radius:7px;justify-content:center;align-items:center;gap:12px;width:100%;height:50px;font-size:11px;font-weight:900;transition:transform .2s,box-shadow .2s,opacity .2s;display:flex;box-shadow:0 6px 15px #b51b2930}.submit-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 9px 20px #b51b2940}.submit-button:disabled{opacity:.65}.button-arrow{font-size:19px;line-height:1}.spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:15px;height:15px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.secure-note{text-align:center;letter-spacing:.08em;color:#b09d98;margin:12px 0 0;font-size:9px;font-weight:700}.secure-note span{color:#bd3b3b;font-size:13px}.preview-notice{color:#8a542a;background:#fff4e8;border-radius:6px;margin-bottom:12px;padding:10px 12px;font-size:11px;line-height:1.6}.form-footer{letter-spacing:.12em;text-align:center;color:#b89d95;margin:24px 0;font-size:9px;font-weight:800}.form-footer span{letter-spacing:0;color:#a39490;margin-top:7px;font-size:10px;font-weight:500;display:block}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #edb46d}@media (min-width:1400px){.event-content{padding:55px 0}.hero-art{width:470px}.booking-card{padding:31px 34px 22px}.field-list{gap:17px}.field input{height:47px}}@media (max-width:1000px) and (min-width:761px){.event-panel{padding-left:30px;padding-right:30px}.registration-panel{padding-left:28px;padding-right:28px}.header-note{display:none}.hero-visual-copy strong{font-size:75px}.booking-card{padding:23px 20px}.event-details{grid-template-columns:26px 1fr 1px 26px 1fr;gap:8px}}@media (max-width:760px){.page-shell{display:block}.event-panel{min-height:0;padding:24px 22px}.event-header{align-items:start}.brand{font-size:17px}.header-note{text-align:right;max-width:125px;font-size:7px;line-height:1.5}.event-content{padding:34px 0 0}.event-eyebrow{font-size:8px}.hero-art{width:min(100%,350px);margin:0 auto}.hero-visual-copy strong{font-size:80px}.hero-intro{max-width:440px}.intro-top{padding-bottom:10px}.hero-intro h1{margin:17px 0 10px;font-size:38px}.hero-intro p{font-size:12px;line-height:1.7}.event-details{margin-top:20px;padding-top:17px}.panel-footer{display:none}.registration-panel{min-height:0;padding:25px 16px 12px}.registration-top{padding:0 5px}.form-wrap{width:100%;max-width:520px}.form-heading{padding:30px 5px 19px}.form-heading h2{font-size:37px}.booking-card{border-radius:12px;padding:23px 18px 0;overflow:visible}.card-bottom{z-index:4;padding-bottom:max(13px,env(safe-area-inset-bottom));margin:0 -18px;padding-left:18px;padding-right:18px;position:sticky;bottom:0;box-shadow:0 -8px 16px #fff}.form-footer{margin:20px 0 26px}.secure-note{font-size:8px}}@media (max-width:370px){.header-note{display:none}.event-details{grid-template-columns:24px 1fr 1px 24px 1fr;gap:6px}.event-details strong{font-size:9px}.hero-intro h1{font-size:33px}.ticket-option{gap:8px}.stepper{gap:5px}.ticket-symbol{width:33px;height:33px}.total strong{font-size:19px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
