/* Third Eye Cinema — Simple Booking & Multi-State Session UX (2026-09-08) */
.tec-location-picker{background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important}
.tec-location-heading{margin-bottom:20px}.tec-location-heading h2{font-size:clamp(28px,4vw,42px);line-height:1.05;margin:5px 0 8px}.tec-location-heading>p:last-child{opacity:.72;margin:0}
.tec-state-filters{display:flex;gap:8px;overflow:auto;padding:7px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(255,255,255,.04);margin:18px 0 22px;scrollbar-width:none}.tec-state-filters::-webkit-scrollbar{display:none}.tec-state-filter{flex:1;min-width:80px;border:0;border-radius:11px;padding:12px 18px;background:transparent;color:inherit;font-weight:800;cursor:pointer}.tec-state-filter.active{background:rgba(255,255,255,.12);box-shadow:0 8px 24px rgba(0,0,0,.18)}
.tec-location-grid{display:grid;gap:14px}.tec-location-card{border:1px solid rgba(255,255,255,.09);border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025));padding:20px;animation:tecLocationIn .38s ease both;animation-delay:var(--delay,0ms)}.tec-location-card[hidden]{display:none!important}@keyframes tecLocationIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.tec-location-venue-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.tec-location-venue-row h3{font-size:21px;margin:0}.tec-state-chip{font-size:11px;font-weight:900;letter-spacing:.08em;padding:6px 9px;border-radius:999px;background:rgba(244,196,91,.13);color:#f4c45b;border:1px solid rgba(244,196,91,.22)}.tec-location-address{margin:7px 0 0;opacity:.7}.tec-location-datetime{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0 0;opacity:.9}.tec-location-datetime strong{font-weight:800}.tec-location-card-bottom{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-top:18px;padding-top:17px;border-top:1px solid rgba(255,255,255,.08)}.tec-location-price small{display:block;opacity:.55;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.tec-location-price strong{display:block;margin-top:4px;font-size:22px;color:#f4c45b}.tec-location-book{min-width:155px;min-height:48px;border:0;border-radius:12px;background:linear-gradient(135deg,#f4c45b,#d99a2d);color:#181108;font-weight:900;display:flex;align-items:center;justify-content:center;gap:16px;cursor:pointer;box-shadow:0 10px 26px rgba(217,154,45,.17)}.tec-location-book b{font-size:26px;line-height:1}.tec-location-book.disabled{background:rgba(255,255,255,.08);color:rgba(255,255,255,.58);box-shadow:none}
.booking-only-page{padding-top:26px}.booking-only-page .booking-copy{max-width:640px;margin-inline:auto}.booking-only-page .booking-copy>h2{font-size:clamp(32px,5vw,52px);line-height:1.02}.booking-only-page .booking-copy>p:not(.eyebrow){max-width:540px;margin-inline:auto}.booking-box.booking-box-center{max-width:610px!important;border-radius:22px!important;padding:24px!important}.tec-booking-selected{border-radius:14px!important;padding:15px 17px!important;margin-bottom:10px!important}.tec-booking-selected span,.tec-selected-session-card span{font-size:10px!important;font-weight:900;text-transform:uppercase;letter-spacing:.11em;opacity:.55}.tec-booking-selected strong{font-size:23px!important;line-height:1.15}.tec-selected-session-card{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 20px}.tec-selected-session-card>div{padding:14px 15px;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:rgba(255,255,255,.035)}.tec-selected-session-card strong{display:block;margin-top:5px;font-size:14px;line-height:1.35}.tec-booking-hidden-fields{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}.booking-box label{font-weight:800;margin-top:15px}.booking-box input,.booking-box select{min-height:54px;border-radius:12px!important}.tec-phone-simple{grid-template-columns:120px 1fr!important}.tec-ticket-stepper{grid-template-columns:54px 1fr 54px!important}.tec-ticket-stepper button{border-radius:11px!important;font-weight:800}.tec-booking-price{margin-top:10px;border-top:1px solid rgba(255,255,255,.08);padding-top:18px!important}.tec-booking-price span:last-child{text-align:right}.tec-booking-price strong{font-size:24px!important}.booking-box #bookingButton{width:100%;min-height:58px;margin-top:18px;border-radius:13px!important;display:flex;align-items:center;justify-content:center;gap:18px;font-weight:900;letter-spacing:.02em}.booking-box #bookingButton b{font-size:27px;line-height:1}.tec-secure-note{text-align:center;font-size:12px;opacity:.55;margin:11px 0 0}.booking-box #seatMapNote{display:none}.booking-features{justify-content:center!important}
@media(max-width:700px){.tec-location-heading h2{font-size:32px}.tec-state-filter{padding:11px 16px}.tec-location-card{padding:17px}.tec-location-card-bottom{align-items:center}.tec-location-price strong{font-size:20px}.tec-location-book{min-width:142px}.booking-only-page .booking-copy{padding-inline:14px}.booking-features{display:none!important}.booking-box.booking-box-center{padding:18px!important;border-radius:18px!important}.tec-selected-session-card{grid-template-columns:1fr}.tec-booking-selected strong{font-size:20px!important}}
@media(max-width:430px){.tec-location-card-bottom{align-items:stretch;flex-direction:column}.tec-location-book{width:100%}.tec-location-datetime{display:grid;gap:4px}.tec-phone-simple{grid-template-columns:105px 1fr!important}}
