.ft-banner[hidden]{display:none}
.ft-banner{display:grid;grid-template-columns:1.35fr 1fr;gap:36px;padding:36px;margin:28px 0;border:1px solid #8b6b32;border-radius:20px;background:radial-gradient(ellipse at top left,#4a371d66,transparent 65%),#15130f;color:#f7f3e9;overflow:hidden}
.ft-window{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #a3814666;border-radius:100px;color:#f3cf88;background:#b5822014;font-size:11px;font-weight:800;letter-spacing:.07em}
.ft-countdown{flex-wrap:wrap;border-color:#c89c50;background:#b5822024}
.ft-countdown-value{font-size:15px;font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:.04em;color:#ffe3a8}
.ft-eyebrow{font-size:10px;font-weight:700;letter-spacing:.14em;color:#bba98a;margin:24px 0 10px}
.ft-copy h2{font-family:Montserrat, sans-serif;font-size:clamp(30px,3.5vw,46px);line-height:1.12;letter-spacing:-.04em;margin:0 0 16px}
.ft-copy h2 span{color:#efcb87}
.ft-description{max-width:460px;font-size:14px;line-height:1.7;color:#c9c2b6}
.ft-description strong{color:#f7f3e9}
.ft-perks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;margin-top:20px;font-size:12px;line-height:1.6;color:#e4c78f}
.ft-perks span{position:relative;padding-left:20px}
.ft-perks span:before{content:'✓';position:absolute;left:0}
.ft-choice{align-self:center;border-left:1px solid #7a633b66;padding-left:36px}
.ft-pass-label{display:block;font-size:10px;letter-spacing:.2em;color:#c5b494}
.ft-wordmark{display:block;font-family:Montserrat,sans-serif;font-style:italic;font-size:30px;letter-spacing:-.05em;margin-top:10px}
.ft-wordmark span{color:#efcb87}
.ft-choice p{font-size:13px;line-height:1.7;color:#c9c2b6;margin:16px 0 22px}
.ft-choice .ft-availability{margin:0 0 20px;padding:10px 12px;border:1px solid #a3814666;border-radius:8px;background:#b5822014;color:#efcb87;font-size:12px}
.ft-primary{width:100%;justify-content:center;background:linear-gradient(110deg,#f8dda4,#d8ad5f);color:#211807;border:1px solid #f8dda4;box-shadow:0 5px 24px #d8ad5f18;gap:14px}
.ft-primary:hover{background:#ffe3a8;box-shadow:0 5px 28px #d8ad5f33}
.ft-choice small{display:block;text-align:center;font-size:10px;color:#b9ad96;line-height:1.5;margin-top:12px}
.ft-normal{display:block;margin:18px auto 0;background:none;border:0;padding:8px;color:#d2ccc1;font:inherit;font-size:12px;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.ft-banner button:focus-visible,.ft-dialog button:focus-visible{outline:2px solid #ffe3a8;outline-offset:4px}
.ft-dialog{position:fixed;inset:0;margin:auto;width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:36px;background:#17140f;color:#f7f3e9;border:1px solid #8b6b32;border-radius:20px}
.ft-dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}
.ft-close{position:absolute;right:12px;top:8px;width:32px;height:32px;border:0;background:none;color:#e4c78f;font-size:26px;cursor:pointer}
.ft-dialog h2{font:700 30px/1.2 Montserrat,sans-serif;letter-spacing:-.03em;margin:24px 0 14px}
.ft-dialog p{font-size:14px;line-height:1.7;color:#c9c2b6}
.ft-dialog ul{list-style:none;padding:0;margin:24px 0}
.ft-dialog li{padding:14px 0 14px 26px;border-bottom:1px solid #ffffff12;position:relative}
.ft-dialog li:before{content:'✓';position:absolute;left:0;color:#efcb87}
.ft-dialog li strong{display:block;font-size:14px;color:#efcb87}
.ft-dialog li span{display:block;font-size:12px;color:#c9c2b6;margin-top:6px;line-height:1.6}
.ft-dialog .ft-preview-note{font-size:12px;padding:12px;border-radius:8px;background:#ffffff06}
@media(max-width:700px){.ft-banner{grid-template-columns:1fr;padding:24px;gap:26px}.ft-choice{border-left:0;border-top:1px solid #7a633b66;padding:24px 0 0}.ft-dialog{padding:30px 22px}.ft-window{font-size:9px}.ft-copy h2{font-size:34px}}
@media(max-width:700px){.ft-perks{grid-template-columns:1fr;gap:10px}}
.ft-mode-countdown{margin-bottom:18px}
.ft-flow-progress{display:block;width:100%;height:5px;margin:24px 0;accent-color:#dfb96e}
.ft-options{padding:0;border:0;display:grid;gap:9px}
.ft-options legend{font-size:12px;color:#c9c2b6;margin-bottom:14px}
.ft-options label{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid #514838;border-radius:10px;cursor:pointer;font-size:13px;line-height:1.5}
.ft-options label:has(input:checked){border-color:#e3bc74;background:#b5822024}
.ft-options input{width:18px;height:18px;flex-shrink:0;accent-color:#dfb96e}
.ft-field{display:block;font-size:13px;color:#e8dcc6;margin:20px 0}
.ft-field input{display:block;width:100%;margin-top:10px;padding:13px;border:1px solid #635138;border-radius:10px;background:#0d0c09;color:#fff;font:inherit}
.ft-field input:focus-visible{outline:2px solid #e3bc74;outline-offset:2px}
.ft-flow-actions{display:flex;gap:12px;margin-top:24px}
.ft-flow-actions .ft-primary{flex:1;width:auto}
.ft-review{padding:20px;border:1px solid #8b6b32;border-radius:12px;margin-bottom:20px}
.ft-review h3{margin-top:20px;overflow-wrap:anywhere}
.ft-ticket-ribbon{grid-column:1 / -1;background:linear-gradient(110deg,#f8dda4,#d8ad5f);color:#211807;text-align:center;padding:12px 10px;font-size:11px;font-weight:800;letter-spacing:.06em;line-height:1.5}
.ft-issued-preview{width:100%;margin:20px auto 10px}
.ft-flow .issued-info p{margin:0;color:#aaa;font-size:9px;line-height:normal}
.ft-flow .ft-ticket-caption{text-align:center;font-size:10px;color:#c9c2b6;line-height:1.7;margin:10px 0 22px}
.ft-flow summary{cursor:pointer;color:#efcb87;font-size:14px}
.ft-flow dt{font-size:12px;color:#c9c2b6;margin-top:16px}
.ft-flow dd{font-size:14px;margin:6px 0;overflow-wrap:anywhere}
.ft-consent{display:flex;gap:10px;font-size:13px;line-height:1.6;margin-top:20px}
.ft-consent input{width:18px;height:18px;flex-shrink:0;accent-color:#dfb96e}
.ft-admin-tag{display:inline-block;padding:4px 7px;color:#efcb87;border:1px solid #8b6b32;border-radius:4px;font-size:10px;margin-top:6px}
.ft-admin-answers{margin-top:24px;padding:20px;border:1px solid #8b6b32;border-radius:10px}
.ft-admin-answers h3{color:#efcb87;font-size:14px}
.ft-admin-answers dt{font-size:12px;color:#aaa;margin-top:12px}
.ft-admin-answers dd{margin:5px 0;font-size:14px;overflow-wrap:anywhere}
