/* page-specific overrides for cloned inner pages */
/* neutralized social/ext anchors keep look, no pointer */
a[aria-disabled="true"]{cursor:default;}
/* hide leftover widget shells if any slipped through */
.curator-feed,[id^="curator-feed"],.klaviyo-form{display:none!important;}

/* ===== local tickx order-manager "Manage Your Orders" form (rebuilt from origin iframe) ===== */
#postrev-widget{display:flex;justify-content:center;}
.pr-card{background:#fff;width:440px;max-width:100%;padding:38px 40px;text-align:left;}
.pr-title{color:#21375e;text-align:center;font-family:var(--ff-didot,serif);font-weight:700;font-size:1.5rem;margin:0 0 .85rem;}
.pr-sub{color:#21375e;text-align:center;font-family:var(--ff-sans);font-size:.95rem;line-height:1.5;margin:0 auto 1.7rem;max-width:360px;}
.pr-label{display:block;color:#21375e;font-family:var(--ff-sans);font-weight:700;font-size:.9rem;letter-spacing:.3px;margin:0 0 .5rem;}
.pr-input{display:block;width:100%;height:48px;border:1.5px solid #21375e;background:#fff;margin:0 0 1.2rem;padding:0 .75rem;color:#21375e;font-family:var(--ff-sans);border-radius:0;box-sizing:border-box;}
.pr-btn{display:block;width:100%;height:48px;margin-top:.3rem;background:#9aa6bb;color:#fff;border:none;text-transform:uppercase;letter-spacing:2px;font-size:.9rem;font-weight:600;font-family:var(--ff-sans);cursor:pointer;}

/* ===== local tickx booking calendar (rebuilt from origin) ===== */
#tickx-widget{max-width:1240px;margin:0 auto;}
/* tx-* calendar — values transcribed 1:1 from real tickx computed styles (probe) */
.tx-bar{display:flex;align-items:center;justify-content:center;gap:1rem;background:#bbd5e4;padding:1.1rem 1rem;max-width:560px;margin:0 auto 1.5rem;font-family:var(--ff-sans);color:#21375e;}
.tx-lbl{font-weight:700;letter-spacing:1.5px;text-transform:uppercase;font-size:1rem;}
.tx-lbl-time{margin-left:.5rem;}
.tx-qbtn{width:30px;height:30px;border-radius:100%;border:2px solid #21375e;background:transparent;color:#21375e;font-size:16px;line-height:1;cursor:pointer;}
.tx-qty{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:100%;background:#21375e;color:#fff;font-weight:700;}
.tx-selwrap{position:relative;display:inline-block;}
.tx-select{display:inline-flex;align-items:center;justify-content:space-between;gap:.5rem;background:#fff;border:1px solid #21375e;border-radius:0;padding:8px;color:#21375e;width:160px;font-family:var(--ff-sans);font-size:16px;cursor:pointer;}
.tx-caret{font-size:.7rem;transition:transform .15s;}
.tx-select[aria-expanded="true"] .tx-caret{transform:rotate(180deg);}
.tx-menu{list-style:none;margin:.3rem 0 0;padding:0;position:absolute;z-index:20;right:0;background:#fff;border:1px solid #d1d5db;border-radius:6px;box-shadow:0 10px 30px rgba(33,55,94,.18);font-family:var(--ff-sans);}
.tx-menu[hidden]{display:none;}
.tx-timemenu{width:320px;max-height:360px;overflow:auto;padding:12px 14px;}
.tx-opt{display:flex;align-items:center;gap:8px;color:#21375e;font-size:.95rem;cursor:pointer;padding:5px 0;white-space:nowrap;}
.tx-opt input{appearance:none;-webkit-appearance:none;width:20px;height:20px;min-width:20px;border:2px solid #21375e;border-radius:4px;background:#fff;cursor:pointer;position:relative;margin:0;}
.tx-opt input:checked{background:#21375e;}
.tx-opt input:checked::after{content:"";position:absolute;left:5px;top:1px;width:6px;height:11px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);}
.tx-opt-all{font-weight:600;padding-bottom:8px;}
.tx-grp{font-weight:700;color:#21375e;margin:10px 0 4px;font-size:1rem;}
.tx-optrow{display:grid;grid-template-columns:repeat(3,1fr);gap:2px 10px;}
.tx-seldate{text-align:center;color:#21375e;font-size:1rem;margin-bottom:12px;}
.tx-seldate strong{font-weight:700;}
.tx-cal{border:1px solid #d1d5db;padding:20px;}
.tx-head{display:flex;align-items:center;justify-content:center;gap:2rem;margin-bottom:.5rem;}
.tx-month{font-family:"mr-eaves-sans",var(--ff-sans);font-size:30px;line-height:45px;color:#21375e;font-weight:700;}
.tx-nav{width:40px;height:40px;border:0;border-radius:0;background:#bbd5e4;color:#21375e;font-size:20px;font-weight:600;cursor:pointer;}
.tx-nav[disabled]{opacity:.5;cursor:not-allowed;}
.tx-legend{text-align:center;color:#21375e;font-size:.95rem;margin-bottom:1.1rem;}
.tx-dot{display:inline-block;width:12px;height:12px;border-radius:100%;margin:0 .3rem 0 .8rem;vertical-align:middle;}
.tx-d-av{background:#3c7024;}.tx-d-pop{background:#e35b0e;}.tx-d-sold{background:#c33f38;}
.tx-dows{display:grid;grid-template-columns:repeat(7,1fr);}
.tx-dows>div{text-align:center;font-weight:700;text-transform:uppercase;color:#21375e;font-size:16px;padding:0 0 4px;font-family:var(--ff-sans);}
.tx-week{display:grid;grid-template-columns:repeat(7,1fr);}
.tx-cell{border:2px solid #bbd5e4;min-height:90px;padding:8px;position:relative;display:flex;flex-direction:column;}
.tx-day{color:#21375e;font-size:16px;font-family:var(--ff-sans);}
.tx-out .tx-day{color:#b7c3cd;}
.tx-chip{margin-top:auto;position:relative;background:#fff;border:1px solid #e35b0e;border-radius:0;display:flex;justify-content:space-between;align-items:center;font-size:14px;line-height:21px;color:#000;padding:8px 8px 8px 16px;font-family:var(--ff-sans);}
.tx-chip::before{content:"";position:absolute;top:0;left:0;width:8px;height:100%;background:#e35b0e;}
.tx-chip>span{position:relative;z-index:1;}
.tx-popular{border-color:#e35b0e;}.tx-popular::before{background:#e35b0e;}
.tx-available{border-color:#3c7024;}.tx-available::before{background:#3c7024;}
.tx-soldout{border-color:#c33f38;opacity:.6;}.tx-soldout::before{background:#c33f38;}
.tx-faded{opacity:.4;}
.tx-cell.tx-book{cursor:pointer;}
.tx-cell.tx-selected{outline:2px solid #21375e;outline-offset:-2px;}

/* force AOS / scroll-reveal content visible (JS stripped; baseline captures forced-visible) */
/* 100vw slider slides overshoot content box by scrollbar width → clip the 15px horiz overflow (matches 1440 baseline) */
html,body{overflow-x:clip;max-width:100%;}
html{scrollbar-width:none;-ms-overflow-style:none;}
html::-webkit-scrollbar{width:0;height:0;display:none;}
/* WP Rocket lazy-render: force off-screen sections to paint at full height (matches baseline) */
[data-wpr-lazyrender]{content-visibility:visible !important;contain-intrinsic-size:auto !important;}
/* AOS scroll-reveal (origin = opacity fade). JS adds .aos-pending (hide) then .aos-animate (reveal on scroll);
   without JS they stay visible (default below). Safety timeout in site.js reveals all for captures/gate. */
[data-aos]{opacity:1;visibility:visible;transition:opacity .8s ease;}
[data-aos].aos-pending{opacity:0;}
[data-aos].aos-animate,[data-aos].is-visible{opacity:1 !important;}

/* ===== local clean opening-times calendar (rebuilt from origin post-JS state) ===== */
#opening-time-calendar.oc-cal{max-width:620px;}
.oc-head{display:flex;align-items:center;justify-content:center;gap:2.2rem;margin-bottom:1.1rem;}
.oc-arrow{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.6);background:transparent;color:#fff;font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s;}
.oc-arrow:hover{background:#fff;color:#21375e;}
.oc-title{font-family:mr-eaves-sans,sans-serif;font-weight:800;letter-spacing:4px;text-transform:uppercase;color:#fff;font-size:1.45rem;}
.oc-dows{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:.4rem;}
.oc-dows>div{text-align:center;font-family:mr-eaves-sans,sans-serif;font-weight:700;letter-spacing:1.5px;color:#fff;font-size:.85rem;padding:.4rem 0;}
.oc-week{display:grid;grid-template-columns:repeat(7,1fr);}
.oc-cell{display:flex;flex-direction:column;align-items:center;min-height:78px;padding-top:.25rem;}
.oc-cell.oc-empty{min-height:0;}
.oc-circle{position:relative;width:47px;height:47px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:mr-eaves-sans,sans-serif;font-weight:800;font-size:1.05rem;}
.oc-circle.light-blue{background:#bbd5e5;color:#21375e;}
.oc-circle.purple{background:#875a87;color:#fff;}
.oc-circle.exception{background:#e78d41;color:#fff;}
.oc-circle.closed{background:#979797;color:#21375e;}
.oc-time{margin-top:.38rem;color:#fff;font-size:.78rem;letter-spacing:.3px;white-space:nowrap;}
@media(max-width:575px){.oc-circle{width:44px;height:44px;font-size:1rem;}.oc-cell{min-height:74px;}.oc-time{font-size:.62rem;}.oc-title{font-size:1.1rem;letter-spacing:2px;}}

/* Alert bar (fade slider under header): force the active message full-width + centered at any viewport.
   Slides stack via margin-right:-100% (classic CSS fade-stack); site.js toggles opacity. */
.alert.slider .slick-list{overflow:hidden;}
.alert.slider .slick-track{width:100% !important;transform:none !important;}
.alert.slider .slick-slide{width:100% !important;left:0 !important;margin-right:-100% !important;float:left;}
.alert.slider .slick-slide>div{width:100% !important;}
.alert.slider .slick-slide>div>div{width:100% !important;display:block !important;text-align:center !important;}

/* contact-us: form removed → spread the contact text across the block width in 2 balanced columns */
.contact-cols article{column-count:2;column-gap:4rem;column-fill:balance;}
.contact-cols article>h3{break-inside:avoid;break-after:avoid;}
.contact-cols article>h3:first-child{margin-top:0;}
@media(max-width:767px){.contact-cols article{column-count:1;}}

/* media-press-hub: form removed → centre the short intro across the full block */
.mph-intro{text-align:center;}
.mph-intro article{max-width:900px;margin:0 auto;}

/* ===== Select Time modal (replicates origin tickx date-click flow: skeleton load → time picker) ===== */
.tx-overlay{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;align-items:center;background:rgba(33,55,94,.67);overflow-y:auto;padding:16px 0 0;font-family:var(--ff-sans);}
.tx-overlay[hidden]{display:none;}
.tx-ovhead{width:800px;max-width:calc(100% - 32px);background:transparent;color:#fff;display:flex;align-items:center;gap:1rem;padding:16px 0 12px;}
.tx-back{width:48px;height:48px;min-width:48px;border:0;background:#bbd5e4;color:#21375e;font-size:20px;line-height:1;cursor:pointer;border-radius:0;}
.tx-ovtitle small{display:block;font-size:.9rem;color:#e6ebf2;font-weight:400;}
.tx-ovtitle b{font-size:1.6rem;font-weight:700;letter-spacing:.3px;}
.tx-card{background:#fff;width:800px;max-width:calc(100% - 32px);margin:0 auto 40px;border:1px solid #d1d5db;border-radius:0;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);padding:16px;}
.tx-venue{display:flex;gap:20px;margin-bottom:20px;}
.tx-vthumb{width:200px;max-width:38%;height:113px;object-fit:cover;border-radius:0;flex-shrink:0;}
.tx-vtitle{font-weight:700;color:#21375e;font-size:1.15rem;letter-spacing:.5px;text-transform:uppercase;margin:0 0 10px;}
.tx-vbody{color:#21375e;font-size:.95rem;line-height:1.5;}
.tx-vbody p{margin:0 0 10px;}
.tx-vbody em{font-style:italic;}
.tx-periods{display:flex;flex-direction:column;gap:12px;margin-top:4px;}
.tx-period{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #d1d5db;border-radius:6px;padding:14px 18px;background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s;text-align:left;width:100%;font:inherit;}
.tx-period:hover{border-color:#bbd5e4;box-shadow:0 4px 14px rgba(33,55,94,.08);}
.tx-period[disabled]{opacity:.5;cursor:not-allowed;}
.tx-pleft{display:flex;align-items:center;gap:14px;}
.tx-picon{color:#21375e;display:inline-flex;align-items:center;justify-content:center;width:26px;}
.tx-picon svg{display:block;}
.tx-pname{display:block;font-weight:700;color:#21375e;text-transform:uppercase;letter-spacing:.5px;font-size:1.02rem;}
.tx-ptime{display:block;color:#21375e;font-size:.95rem;margin-top:3px;}
.tx-pright{display:flex;align-items:center;gap:14px;}
.tx-avail{border:1px solid #3c7024;color:#3c7024;border-radius:9999px;padding:4px 10px;font-size:.82rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;white-space:nowrap;font-family:var(--ff-sans);}
.tx-avail.tx-av-pop{border-color:#e35b0e;color:#e35b0e;}
.tx-avail.tx-av-sold{border-color:#c33f38;color:#c33f38;}
.tx-pchev{color:#21375e;display:inline-flex;align-items:center;transition:transform .2s;}
.tx-period.tx-open .tx-pchev{transform:rotate(180deg);}
.tx-times{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 16px;padding:14px 2px 8px;}
.tx-slot{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fff;border:1px solid #e35b0e;border-radius:0;padding:8px 8px 8px 16px;color:#000;cursor:pointer;font-family:var(--ff-sans);font-size:14px;font-weight:600;text-align:left;}
.tx-slot::before{content:"";position:absolute;top:0;left:0;width:8px;height:100%;background:#e35b0e;}
.tx-slot>span{position:relative;z-index:1;}
.tx-slot .tx-sprice{color:#21375e;font-weight:400;}
.tx-slot.tx-available{border-color:#3c7024;}.tx-slot.tx-available::before{background:#3c7024;}
.tx-slot.tx-soldout{border-color:#c33f38;opacity:.55;}.tx-slot.tx-soldout::before{background:#c33f38;}
.tx-slot:hover{box-shadow:0 3px 10px rgba(33,55,94,.12);}
.tx-slot.tx-tsel{outline:2px solid #21375e;outline-offset:-2px;}
.tx-ovlegend{text-align:center;color:#21375e;font-size:.95rem;margin-top:22px;border-top:1px solid #e2e8ee;padding-top:16px;}
.tx-ovlegend .tx-dot{width:12px;height:12px;}
.tx-d-good{background:#3c7024;}
/* skeleton loading (shown briefly after a date is clicked, like origin) */
.tx-skel-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px 20px;margin:6px 0 20px;}
.tx-skel{height:34px;border-radius:6px;background:linear-gradient(90deg,#e6ebf1 25%,#eef2f6 37%,#e6ebf1 63%);background-size:400% 100%;animation:tx-shimmer 1.3s ease-in-out infinite;}
@keyframes tx-shimmer{0%{background-position:100% 0}100%{background-position:0 0}}
@media(max-width:640px){.tx-vthumb{display:none}.tx-skel-grid{grid-template-columns:repeat(3,1fr)}.tx-ovtitle b{font-size:1.2rem}}

/* ===== Select Tickets step (origin flow after picking a time) ===== */
.tx-ticketcard{padding:0;}
.tx-tbanner{background:#dce8f0;color:#21375e;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;font-size:.95rem;}
.tx-tbanner .tx-bell{filter:grayscale(.2);}
.tx-bclose{background:none;border:0;color:#21375e;font-size:1.3rem;line-height:1;cursor:pointer;padding:0 4px;}
.tx-ticket{display:flex;gap:20px;padding:20px;border-bottom:1px solid #e2e8ee;}
.tx-timg{width:200px;height:113px;object-fit:cover;flex-shrink:0;border-radius:0;}
.tx-tbody{flex:1;min-width:0;}
.tx-thead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;}
.tx-tname{font-weight:700;color:#21375e;font-size:1.1rem;text-transform:uppercase;letter-spacing:.5px;}
.tx-tbadge{background:#bbd5e4;color:#21375e;font-size:.72rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:5px 10px;white-space:nowrap;}
.tx-tlead{color:#21375e;font-size:.9rem;margin:0 0 6px;}
.tx-titems{margin:0 0 10px;padding-left:18px;color:#21375e;font-size:.88rem;line-height:1.55;}
.tx-titems li{margin-bottom:2px;}
.tx-tfine{color:#5a6b85;font-size:.78rem;line-height:1.5;margin-bottom:10px;font-style:italic;}
.tx-tfine p{margin:0 0 3px;}
.tx-tfine u{cursor:pointer;}
.tx-trow{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px;}
.tx-tprice{font-weight:700;color:#21375e;font-size:1.3rem;}
.tx-stepper{display:inline-flex;align-items:center;gap:14px;}
.tx-sdec,.tx-sinc{width:34px;height:34px;border-radius:100%;border:2px solid #21375e;background:transparent;color:#21375e;font-size:18px;line-height:1;cursor:pointer;}
.tx-sq{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:100%;background:#21375e;color:#fff;font-weight:700;}
.tx-tplan{display:flex;gap:12px;align-items:flex-start;background:#dce8f0;padding:16px 20px;color:#21375e;font-size:.82rem;line-height:1.5;cursor:pointer;}
.tx-tplan input{width:20px;height:20px;min-width:20px;margin-top:2px;accent-color:#21375e;cursor:pointer;}
.tx-tplan u{cursor:pointer;}
.tx-ttotal{text-align:right;padding:16px 20px;color:#21375e;font-size:1.15rem;letter-spacing:.5px;}
.tx-ttotal b{font-size:1.3rem;}
.tx-continue{width:800px;max-width:calc(100% - 32px);margin:16px auto 40px;text-align:right;}
.tx-contbtn{background:#21375e;color:#fff;border:0;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:14px 44px;cursor:pointer;font-family:var(--ff-sans);}
.tx-contbtn:hover{background:#2c4876;}
.tx-loadbtn{background:#bbd5e4;color:#21375e;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:14px 28px;margin:16px auto 40px;display:inline-flex;align-items:center;gap:12px;}
.tx-spin{width:16px;height:16px;border:2px solid #21375e;border-top-color:transparent;border-radius:100%;display:inline-block;animation:tx-sp .7s linear infinite;}
@keyframes tx-sp{to{transform:rotate(360deg)}}
.tx-skelrow{display:flex;justify-content:space-between;gap:12px;margin:0 20px 8px;padding-top:16px;}
.tx-ticketcard .tx-skel{height:34px;}
@media(max-width:640px){.tx-timg{width:90px;height:60px}.tx-ticket{padding:14px;gap:12px}}

/* ===== Checkout fullscreen (after ticket Continue — matches TickX) ===== */
.tx-overlay.tx-overlay-full{padding:0;align-items:stretch;background:#21375e;overflow:hidden;}
.tx-chk{display:flex;flex-direction:column;min-height:100dvh;width:100%;color:#21375e;font-family:var(--ff-sans);background-color:#21375e;background-image:var(--tx-chk-bg,none);background-size:cover;background-position:center;}
.full-screen-header-container{background:#fff;color:#21375e;}
/* Desktop TickX header (default); mobile overrides below */
.tx-chk-top{display:flex;align-items:center;width:100%;padding:12px clamp(16px,3vw,48px);background:#fff;border-bottom:1px solid #d1d5db;z-index:9;position:sticky;top:0;min-height:82px;box-sizing:border-box;}
.tx-chk-topcol{flex:1 1 0;display:flex;align-items:center;min-width:0;}
.tx-chk-topcol-l{justify-content:flex-start;}
.tx-chk-topcol-c{justify-content:center;}
.tx-chk-topcol-r{justify-content:flex-end;}
.tx-chk-back{width:40px;height:40px;border:0;background:#bbd5e4;color:#21375e;line-height:0;cursor:pointer;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:0;}
.tx-chk-back:hover{background:#a8c6da;}
.tx-chk-logo{height:70px;width:auto;max-height:70px;max-width:min(320px,36vw);object-fit:contain;display:block;}
.tx-chk-secure{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;font-weight:600;color:#21375e;font-size:1rem;white-space:nowrap;font-family:var(--ff-sans);}
.tx-chk-secure svg{flex-shrink:0;width:14px;height:16px;}
.tx-chk-securetxt{display:inline;}
.tx-chk-osbar{width:100%;display:flex;align-items:center;gap:10px;padding:14px 16px;background:#21375e;color:#fff;border:0;border-bottom:1px solid rgba(255,255,255,.15);cursor:pointer;font:inherit;font-weight:600;text-align:left;}
.tx-chk-osbar.tx-chk-osmob{display:none;}
.tx-chk-osdrop{display:none!important;}
.tx-chk-osico{display:inline-flex;flex-shrink:0;}
.tx-chk-osdiv{width:1px;height:22px;background:rgba(255,255,255,.35);margin:0 2px 0 8px;flex-shrink:0;}
.tx-chk-ossp{flex:1;}
.tx-chk-osamt{font-weight:700;}
.tx-chk-oscv{opacity:.9;font-size:.85rem;}
.tx-chk-osdrop{background:#21375e;color:#fff;padding:0 16px 12px;}
.tx-chk-osdrop[hidden]{display:none;}
.tx-chk-body{flex:1;overflow-y:auto;display:flex;flex-direction:row;align-items:flex-start;justify-content:center;gap:24px;padding:24px;max-width:1200px;margin:0 auto;width:100%;box-sizing:border-box;}
.tx-chk-main{flex:0 1 600px;margin:0;padding:0;}
.tx-chk-side{display:block;flex:0 1 380px;position:sticky;top:88px;align-self:flex-start;}
.tx-chk-sidepanel{background:#21375e;color:#fff;width:100%;}
.tx-chk-osdesk{display:flex;width:100%;border-radius:0;border-bottom:1px solid rgba(255,255,255,.15);}
.tx-chk-osdesk{cursor:default;}
.tx-chk-basket{padding:12px 16px 16px;color:#fff;}
.tx-chk-trust{display:none;}
.tx-chk-card{background:#fff;border:1px solid #d1d5db;margin-bottom:16px;padding:16px;}
.tx-chk-card h3{margin:0 0 14px;font-size:1.35rem;font-weight:700;color:#21375e;}
.tx-chk-payhead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;}
.tx-chk-payhead h3{margin:0;font-size:1.35rem;font-weight:700;color:#21375e;display:flex;align-items:center;justify-content:space-between;flex:1;}
.tx-chk-payment.tx-chk-locked .tx-chk-payhead{margin-bottom:0;}
.tx-chk-payico{display:inline-flex;color:#21375e;line-height:0;}
.tx-chk-terms{margin:12px 0 0;font-size:.75rem;font-weight:400;color:#21375e;line-height:1.45;}
.tx-chk-terms a{color:#21375e;}
.tx-chk-paybtn{width:100%;margin-top:16px;background:#bbd5e4;color:#21375e;border:0;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:16px;cursor:pointer;font-family:var(--ff-sans);font-size:1rem;}
.tx-chk-paybtn:hover{background:#a8c6da;}
.tx-chk-paybtn:disabled{opacity:.65;cursor:default;}
.tx-chk-trust{display:flex;flex-wrap:wrap;gap:10px 18px;justify-content:center;padding:8px 12px 20px;color:#fff;font-size:.8rem;font-weight:600;}
.tx-chk-trustitem{display:inline-flex;align-items:center;gap:6px;}
.tx-chk-trustitem svg{width:12px;height:14px;}
.tx-chk-locked{opacity:.55;pointer-events:none;}
.tx-chk-locked h3{margin:0;}
.tx-chk-done .tx-chk-contact-body{display:none;}
.tx-chk-contact-sum{font-size:.9rem;font-weight:400;margin:0;color:#21375e;line-height:1.45;}
.tx-chk-done.tx-chk-contact h3{margin-bottom:6px;}
.tx-chk-sel{appearance:auto;cursor:pointer;}
.tx-chk-row2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;}
.tx-chk-full{display:block;margin-bottom:12px;font-size:.95rem;font-weight:600;color:#21375e;}
.tx-chk-in{display:block;width:100%;height:40px;margin-top:6px;border:1px solid #21375e;padding:0 12px;font:inherit;font-weight:400;box-sizing:border-box;}
#card_number.is-invalid,#card_exp.is-invalid,#card_cvv.is-invalid{border-color:#c62828!important;}
.tx-chk-hint{display:block;margin-top:4px;font-size:.75rem;font-weight:400;opacity:.8;}
.tx-chk-phone{display:flex;gap:8px;margin-top:6px;}
.tx-chk-cc{height:40px;min-width:52px;border:1px solid #21375e;background:#fff;cursor:pointer;font-size:1.1rem;}
.tx-chk-phone .tx-chk-in{flex:1;margin-top:0;}
.tx-chk-next{width:100%;margin-top:8px;background:#bbd5e4;color:#21375e;border:0;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:14px;cursor:pointer;font-family:var(--ff-sans);}
.tx-chk-next:hover{background:#a8c6da;}
.tx-chk-osdrop .tx-chk-basket{padding:12px 16px 16px;}
.tx-bk-venue{font-weight:700;text-transform:uppercase;letter-spacing:.5px;font-size:.82rem;margin:12px 0 4px;}
.tx-bk-addr{font-size:.88rem;opacity:.95;margin-bottom:8px;}
.tx-bk-when{font-size:.88rem;margin:4px 0 12px;}
.tx-bk-line{display:grid;grid-template-columns:auto 1fr auto;gap:8px 12px;align-items:start;padding:8px 0;border-top:1px solid rgba(255,255,255,.25);font-size:.88rem;}
.tx-bk-qty{opacity:.9;}
.tx-bk-name{display:block;}
.tx-bk-price{text-align:right;white-space:nowrap;}
.tx-bk-sub,.tx-bk-total{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:1rem;border-top:1px solid rgba(255,255,255,.4);}
.tx-bk-sumlbl{font-weight:700;}
.tx-bk-prov{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.25);font-size:.8rem;opacity:.9;}
@media(max-width:899px){
  .tx-chk-top{padding:10px 12px;min-height:58px;}
  .tx-chk-logo{height:50px;max-height:50px;max-width:min(160px,42vw);}
  .tx-chk-secure{font-size:.78rem;gap:6px;white-space:normal;}
  .tx-chk-secure svg{width:12px;height:14px;}
  .tx-chk-securetxt{display:block;max-width:4.25rem;line-height:1.15;text-align:right;}
  .tx-chk-osbar.tx-chk-osmob{display:flex;position:sticky;top:58px;z-index:8;width:100%;}
  .tx-chk-osdrop{display:block!important;}
  .tx-chk-osdrop[hidden]{display:none;}
  .tx-chk-body{flex-direction:column;padding:0 0 24px;max-width:none;}
  .tx-chk-main{padding:12px 8px 0;max-width:600px;width:100%;margin:0 auto;}
  .tx-chk-side{display:none;}
  .tx-chk-osdesk{display:none;}
  .tx-chk-trust{display:flex;}
}

/* ---- booking calendar: mobile (match tickx original: compact cells, vertical chip, top colour bar) ---- */
@media(max-width:749px){
  .tx-cal{padding:8px;}
  .tx-week{grid-template-columns:repeat(7,1fr);}
  .tx-cell{min-height:76px;padding:3px;border-width:1px;}
  .tx-day{font-size:13px;}
  .tx-legend{font-size:11px;line-height:1.4;}
  .tx-chip{
    flex-direction:column;justify-content:flex-start;align-items:center;
    text-align:center;gap:0;
    padding:7px 2px 5px;             /* room for the top bar */
    font-size:10px;line-height:1.3;
    min-width:0;width:100%;overflow:hidden;
  }
  .tx-chip::before{top:0;left:0;width:100%;height:4px;}   /* colour bar -> horizontal, on top */
  .tx-chip>span{display:block;width:100%;word-break:break-word;}
  .tx-chip>span:last-child{font-weight:600;}
}
