
/* ===== TSS online booking: product pages (tss-bk-*). Built on the WooCommerce + FooEvents form, which stays in the page and does the work. ===== */
.tss-bk,.tss-bk *,.tss-bk-bar,.tss-bk-bar *{box-sizing:border-box}
.tss-bk,.tss-bk-bar{--navy:#0a0e36;--navy2:#1a237e;--red:#e31e24;--red2:#ff2a32;--gold:#f5c400;--ink:#0f172a;--text:#334155;--muted:#64748b;--line:#e2e8f0;--soft:#f8fafc;--ok:#15803d;--okbg:#dcfce7;--warn:#b45309;--warnbg:#fff8e6;--err:#b91c1c;font-family:'Montserrat',Arial,sans-serif;color:var(--ink);font-size:15px;line-height:1.55}
.tss-bk :is(h1,h2,h3,h4),.tss-bk-bar :is(h1,h2,h3,h4){font-family:'Montserrat',Arial,sans-serif;letter-spacing:0}
.tss-bk p{padding-bottom:0}
.tss-bk button,.tss-bk-bar button{font:inherit;cursor:pointer}
.tss-bk button:focus-visible,.tss-bk-bar button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

/* while a booking is being added and the browser moves on to jumper details, cover the page so nothing flashes */
html.tss-bk-leaving body{overflow:hidden}
html.tss-bk-leaving body::after{content:"Adding your booking…";position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;background:#0a0e36;color:#fff;font:900 20px/1.3 'Montserrat',Arial,sans-serif;letter-spacing:.5px;text-transform:uppercase}
/* the original WooCommerce product layout stays in the page (the form still submits) but is moved off screen */
.tss-bk-on #main-content>.container{position:absolute!important;left:-10000px!important;top:0!important;width:1px!important;height:1px!important;overflow:hidden!important}
.tss-bk-on #main-content{background:#eef2f7}
.tss-bk-on #wc-square-digital-wallet,.tss-bk-on .wc-square-wallet-buttons{display:none!important}

/* hero */
.tss-bk-hero{position:relative;overflow:hidden;padding:calc(74px + 44px) 0 96px;background:radial-gradient(120% 90% at 85% 0%,rgba(26,35,126,.9) 0%,rgba(10,14,54,0) 60%),#0a0e36;color:#e2e8f0}
.tss-bk-hero::after{content:"";position:absolute;right:-90px;bottom:-120px;width:340px;height:340px;border-radius:50%;border:40px solid rgba(245,196,0,.08);pointer-events:none}
.tss-bk-wrap{position:relative;z-index:1;width:100%;max-width:940px;margin:0 auto;padding:0 max(16px,4vw)}
@media (min-width:1300px){.tss-bk-wrap{padding:0 20px}}
.tss-bk-eyebrow{display:block;margin-bottom:10px;color:var(--gold);font-size:12px;font-weight:900;letter-spacing:2px;text-transform:uppercase}
.tss-bk .tss-bk-hero h1{margin:0 0 12px;padding:0;color:#fff;font-size:clamp(30px,5vw,50px);font-weight:900;line-height:1.05;text-transform:uppercase;text-wrap:balance}
.tss-bk-lead{max-width:62ch;margin:0;color:#cbd5e1;font-size:16.5px;line-height:1.6}
.tss-bk-prog{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 0;padding:0;list-style:none}
.tss-bk-prog li{display:inline-flex;align-items:center;gap:8px;margin:0;padding:7px 14px 7px 7px;border-radius:50px;background:rgba(255,255,255,.08);color:#cbd5e1;font-size:13px;font-weight:800;list-style:none}
.tss-bk-prog li b{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:12px}
.tss-bk-prog li.on{background:#fff;color:var(--navy)}
.tss-bk-prog li.on b{background:var(--red)}

/* body */
.tss-bk-body{position:relative;z-index:2;margin-top:-58px;padding-bottom:64px}
.tss-bk-alert{margin:0 0 16px;padding:14px 16px;border-radius:14px;background:#fee2e2;color:var(--err);font-size:14px;font-weight:700;box-shadow:0 10px 30px rgba(10,14,54,.08)}
.tss-bk-alert.ok{background:var(--okbg);color:var(--ok)}
/* one column: steps 1-2-3, then the booking box directly underneath */
.tss-bk-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}
.tss-bk-side{display:grid;gap:16px;min-width:0}
.tss-bk-steps{display:grid;gap:16px}
.tss-bk-step{padding:24px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(10,14,54,.07)}
.tss-bk-step-h{display:flex;align-items:center;gap:12px;margin:0 0 16px}
.tss-bk-n{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--red);color:#fff;font-size:14px;font-weight:900}
.tss-bk-step.is-done .tss-bk-n{background:var(--ok)}
.tss-bk .tss-bk-step-h h2{margin:0;padding:0;color:var(--navy);font-size:19px;font-weight:900;line-height:1.2;text-transform:uppercase}

/* choice cards */
.tss-bk-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.tss-bk-opt{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:64px;padding:15px 16px;border:2px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);text-align:left;transition:border-color .15s,box-shadow .15s}
.tss-bk-opt:hover{border-color:var(--navy2)}
.tss-bk-opt[aria-pressed="true"]{border-color:var(--navy);background:#f1f4ff;box-shadow:0 0 0 3px rgba(245,196,0,.5)}
.tss-bk-opt .t{color:var(--navy);font-size:15px;font-weight:800;line-height:1.25}
.tss-bk-opt .p{color:var(--navy);font-size:24px;font-weight:900;line-height:1.15}
.tss-bk-opt .s{color:var(--muted);font-size:12.5px;line-height:1.4}
.tss-bk-opt .tag{margin-bottom:5px;padding:3px 9px;border-radius:50px;background:var(--red);color:#fff;font-size:10px;font-weight:900;letter-spacing:1px;text-transform:uppercase}

/* calendar */
.tss-bk-cal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.tss-bk-cal-head b{color:var(--navy);font-size:16px;font-weight:900;text-transform:uppercase}
.tss-bk-cal-nav{display:flex;gap:6px}
.tss-bk-cal-nav button{width:44px;height:44px;border:2px solid var(--line);border-radius:12px;background:#fff;color:var(--navy);font-size:20px;font-weight:900;line-height:1}
.tss-bk-cal-nav button:disabled{opacity:.35;cursor:default}
.tss-bk-cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.tss-bk-dow{padding-bottom:2px;color:var(--muted);font-size:11px;font-weight:800;text-align:center;text-transform:uppercase}
.tss-bk-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:66px;padding:6px 0;border:2px solid var(--line);border-radius:12px;background:#fff;color:var(--ink)}
.tss-bk-day .d{font-size:16px;font-weight:800;font-variant-numeric:tabular-nums}
.tss-bk-day .l{font-size:10.5px;font-weight:800;line-height:1.15;text-align:center;white-space:nowrap}
.tss-bk-day.open .l{color:var(--ok)}
.tss-bk-day.low .l{color:var(--warn)}
.tss-bk-day.open:hover,.tss-bk-day.low:hover{border-color:var(--navy2)}
.tss-bk-day.full,.tss-bk-day.shut,.tss-bk-day.off,.tss-bk-day.past{background:var(--soft);cursor:default}
.tss-bk-day.full .l{color:var(--err)}
.tss-bk-day.shut .l,.tss-bk-day.off .l{color:var(--muted)}
.tss-bk-day.past{opacity:.45}
.tss-bk-day.blank{border:0;background:transparent;cursor:default}
.tss-bk-day[aria-pressed="true"]{border-color:var(--navy);background:var(--navy);color:#fff}
.tss-bk-day[aria-pressed="true"] .l{color:var(--gold)}
.tss-bk-legend{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.tss-bk-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:50px;font-size:11px;font-weight:800;white-space:nowrap}
.tss-bk-chip.ok{background:var(--okbg);color:var(--ok)}
.tss-bk-chip.low{background:var(--warnbg);color:#92400e}
.tss-bk-chip.full{background:#fee2e2;color:var(--err)}
.tss-bk-chip.off{background:var(--soft);color:var(--muted)}
.tss-bk-chip.k{background:var(--gold);color:var(--navy)}
.tss-bk-empty{padding:16px;border-radius:12px;background:var(--warnbg);color:var(--text);font-size:14px}
.tss-bk-empty a{color:var(--navy);font-weight:800}

/* course weeks */
.tss-bk-weeks{display:grid;gap:8px}
.tss-bk-week{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:12px 16px;border:2px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);text-align:left}
.tss-bk-week:hover{border-color:var(--navy2)}
.tss-bk-week[aria-pressed="true"]{border-color:var(--navy);background:#f1f4ff;box-shadow:0 0 0 3px rgba(245,196,0,.5)}
.tss-bk-week[disabled]{background:var(--soft);opacity:.7;cursor:default}
.tss-bk-week b{display:block;color:var(--navy);font-size:15px;font-weight:800;line-height:1.3}
.tss-bk-week small{display:block;color:var(--muted);font-size:12.5px}
.tss-bk-week.is-k{border-color:var(--gold)}
.tss-bk-week-wknd{border-color:var(--gold);background:linear-gradient(90deg,#fffbe6 0%,#fff 60%)}
.tss-bk-week-wknd:hover{border-color:var(--gold)}
.tss-bk-wknd-tag{display:inline-block;margin-bottom:4px;padding:2px 8px;border-radius:50px;background:var(--gold);color:var(--navy);font-size:10.5px;font-weight:900;font-style:normal;letter-spacing:1px;text-transform:uppercase}
.tss-bk-more{justify-self:start;margin-top:4px;padding:10px 16px;border:2px solid var(--navy);border-radius:50px;background:#fff;color:var(--navy);font-size:13px;font-weight:900;text-transform:uppercase}
.tss-bk-note{margin:14px 0 0;color:var(--muted);font-size:13px}
.tss-bk-note a{color:var(--navy);font-weight:800}

/* booking box (step 4): details on the left, total + Book now on the right at wider sizes */
.tss-bk-sum{display:grid;grid-template-columns:minmax(0,1fr);gap:0 32px;padding:24px;border-radius:20px;background:var(--navy);color:#e2e8f0;box-shadow:0 22px 50px rgba(10,14,54,.28)}
.tss-bk .tss-bk-sum h2{display:flex;align-items:center;gap:12px;margin:0 0 10px;padding:0;color:#fff;font-size:19px;font-weight:900;text-transform:uppercase}
.tss-bk .tss-bk-sum h2 .tss-bk-n{background:var(--gold);color:var(--navy)}
.tss-bk-sum-l,.tss-bk-sum-r{min-width:0}
@media (min-width:720px){.tss-bk-sum{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.tss-bk-sum h2{grid-column:1/-1}.tss-bk-sum-r{padding-left:32px;border-left:1px solid rgba(255,255,255,.12)}.tss-bk-sum-r .tss-bk-total{margin-top:4px}}
.tss-bk-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:14px}
.tss-bk-row span:last-child{color:#fff;font-weight:700;text-align:right}
.tss-bk-row .muted{color:#94a3b8!important;font-weight:600!important}
.tss-bk-qty{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.tss-bk-qty span{font-size:14px}
.tss-bk-qty small{display:block;color:#94a3b8;font-size:12px;line-height:1.35}
.tss-bk-ctl{display:inline-flex;align-items:center;gap:6px;flex-shrink:0}
.tss-bk-ctl button{width:44px;height:44px;border:2px solid rgba(255,255,255,.5);border-radius:12px;background:transparent;color:#fff;font-size:22px;font-weight:900;line-height:1}
.tss-bk-ctl button:disabled{opacity:.3;cursor:default}
.tss-bk-ctl b{min-width:28px;color:#fff;font-size:20px;font-weight:900;text-align:center;font-variant-numeric:tabular-nums}
.tss-bk-total{display:flex;justify-content:space-between;align-items:baseline;margin:16px 0}
.tss-bk-total b{color:var(--gold);font-size:30px;font-weight:900;font-variant-numeric:tabular-nums}
.tss-bk-bal{margin:-8px 0 14px;color:#cbd5e1;font-size:13px;text-align:right}
.tss-bk-bal b{color:#fff}
.tss-bk-go{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:54px;padding:14px 20px;border:0;border-radius:50px;background:var(--red);color:#fff;font-size:15px;font-weight:900;letter-spacing:.5px;line-height:1.2;text-align:center;text-transform:uppercase;box-shadow:0 8px 24px rgba(227,30,36,.45);transition:transform .2s ease,background .2s ease}
.tss-bk-go:hover{transform:translateY(-2px);background:var(--red2)}
.tss-bk-go[aria-disabled="true"]{background:#3b4068;color:#cbd5e1;box-shadow:none;transform:none}
.tss-bk-msg{margin:12px 0 0;color:#cbd5e1;font-size:13px;text-align:center}
.tss-bk-msg.err{color:#fca5a5}
.tss-bk-secure{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12);color:#cbd5e1;font-size:12px;font-weight:700}
.tss-bk-help{margin:0;padding:18px 20px;border-radius:20px;background:#fff;border:1px solid var(--line);color:var(--text);font-size:14px}
.tss-bk-help b{display:block;color:var(--navy);font-size:15px;font-weight:900}
.tss-bk-help a{color:var(--red);font-weight:900;text-decoration:none}

/* sticky pay bar: shows while the booking box is off screen, slides away once it's in view */
.tss-bk-bar{position:fixed;left:0;right:0;bottom:0;z-index:9990;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:var(--navy);border-top:3px solid var(--red);box-shadow:0 -10px 30px rgba(10,14,54,.25);transition:transform .25s ease}
.tss-bk-bar.is-hidden{transform:translateY(110%)}
.tss-bk-bar span{color:#cbd5e1;font-size:12px;font-weight:700;line-height:1.2;white-space:nowrap}
.tss-bk-bar b{display:block;color:var(--gold);font-size:22px;font-weight:900;font-variant-numeric:tabular-nums}
.tss-bk-bar .tss-bk-go{width:auto;min-height:48px;padding:12px 22px;font-size:14px}
@media (min-width:980px){.tss-bk-bar{padding:12px max(16px,calc((100vw - 900px)/2))}}
.tss-bk-on #main-footer,.tss-bk-on .et-l--footer,.tss-at-on #main-footer,.tss-at-on .et-l--footer{padding-bottom:78px}
.tss-bk-on .chaty-widget,.tss-at-on .chaty-widget{bottom:84px!important}
@media (max-width:520px){.tss-bk-hero{padding-bottom:84px}.tss-bk-step{padding:18px 14px}.tss-bk-cal{gap:4px}.tss-bk-day{min-height:58px;border-radius:10px}.tss-bk-day .l{font-size:9px}.tss-bk-sum{padding:20px 16px}.tss-bk-prog li{font-size:12px}}
@media (prefers-reduced-motion:reduce){.tss-bk *,.tss-bk-bar *{transition:none!important}}

/* ===== TSS online booking: jumper details page (FooEvents attendee page, tss-at-*) ===== */
.tss-at-on #main-content{background:#eef2f7}
.tss-at-on #main-content>.container{width:100%!important;max-width:none!important;padding:0!important}
.tss-at-on #content-area{display:block}
.tss-at-on #sidebar,.tss-at-on .entry-title.main_title,.tss-at-on .et_post_meta_wrapper{display:none!important}
.tss-at-on #left-area{float:none!important;width:100%!important;max-width:940px;margin:0 auto;padding:0 max(16px,4vw) 64px!important;box-sizing:border-box}
@media (min-width:1300px){.tss-at-on #left-area{padding:0 20px 64px!important}}
.tss-at-on article.page{position:relative;z-index:2;margin-top:-58px}
.tss-at-on .entry-content{padding:0}
.tss-at-on #fooevents-attendee-page,.tss-at-on #fooevents-attendee-page *{box-sizing:border-box}
.tss-at-on #fooevents-attendee-page{font-family:'Montserrat',Arial,sans-serif;color:#0f172a;font-size:15px;line-height:1.55}
.tss-at-on #fooevents-attendee-page :is(h2,h3,h4){font-family:'Montserrat',Arial,sans-serif;letter-spacing:0}
.tss-at-on #fooevents-attendee-page p{padding-bottom:0}

/* layout: one column - the jumper cards, then the continue panel directly underneath */
.tss-at-on form.woocommerce-form{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}
.tss-at-main{display:grid;gap:16px;min-width:0}
.tss-at-on .fooevents-attendee-group{display:grid;gap:16px}
.tss-at-on .fooevents-attendee-group>h2{margin:0;padding:0;color:#64748b;font-size:12px;font-weight:900;letter-spacing:2px;text-transform:uppercase}
.tss-at-on .fooevents-attendee-group>h2::before{content:"";display:inline-block;width:10px;height:10px;margin-right:8px;border-radius:50%;background:#e31e24;vertical-align:1px}

/* one card per jumper */
.tss-at-on .fooevents-attendee-item{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:22px 24px 24px;border:1px solid #e2e8f0;border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(10,14,54,.07)}
.tss-at-on .fooevents-attendee-item>h3{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:10px 12px;margin:0;padding:0;color:#0a0e36;font-size:19px;font-weight:900;line-height:1.2;text-transform:uppercase}
.tss-at-on .fooevents-attendee-item>h3 .tss-at-n{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;border-radius:50%;background:#e31e24;color:#fff;font-size:14px}
.tss-at-on .fooevents-attendee-item>h3 small{flex-basis:100%;color:#64748b;font-size:13px;font-weight:700;text-transform:none}
.tss-at-on .fooevents-booking-group{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin:0 0 4px;padding:12px 14px;border-radius:12px;background:#f1f4ff;color:#0a0e36;font-size:14px;font-weight:800}
.tss-at-on .fooevents-booking-group>label{display:none}
.tss-at-when::before{content:"📅";margin-right:8px}
.tss-at-slot{color:#64748b;font-weight:700}
.tss-at-nodate{color:#b91c1c}
.tss-at-nodate a{color:#b91c1c;font-weight:900}
.tss-at-on .fooevents-attendee-item>p.form-row{float:none!important;width:100%!important;margin:0!important;padding:0!important;display:grid;gap:6px;min-width:0}
.tss-at-on .fooevents-attendee-item>p.form-row-wide{grid-column:1/-1}
.tss-at-on .fooevents-attendee-item>p.form-row.tss-at-half{grid-column:auto}
.tss-at-on .fooevents-attendee-item label{display:block;margin:0;color:#0a0e36;font-size:12px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}
.tss-at-on .fooevents-attendee-item label .required{color:#e31e24;text-decoration:none}
.tss-at-on .fooevents-attendee-item .input-text{display:block;width:100%;min-height:48px;margin:0;padding:11px 13px;border:2px solid #e2e8f0;border-radius:12px;background:#fff;color:#0f172a;font-family:'Montserrat',Arial,sans-serif;font-size:16px;line-height:1.3;box-shadow:none}
.tss-at-on .fooevents-attendee-item .input-text:focus{outline:none;border-color:#0a0e36;box-shadow:0 0 0 3px rgba(245,196,0,.5)}
.tss-at-on .fooevents-attendee-item p.form-row.tss-at-bad .input-text{border-color:#b91c1c}
.tss-at-hint{color:#64748b;font-size:12px;font-weight:600}
.tss-at-err{color:#b91c1c;font-size:13px;font-weight:700}
.tss-at-err a{color:#b91c1c;font-weight:900}
.tss-at-on .fooevents-attendee-item .tss-at-copy{grid-column:1/-1;justify-self:start;margin:-4px 0 0;min-height:44px;padding:10px 16px;border:2px solid #0a0e36;border-radius:50px;background:#fff;color:#0a0e36;font-family:'Montserrat',Arial,sans-serif;font-size:12px;font-weight:900;text-transform:uppercase;cursor:pointer}
.tss-at-on .fooevents-attendee-item .tss-at-copy:hover{background:#0a0e36;color:#fff}
@media (max-width:520px){.tss-at-on .fooevents-attendee-item{grid-template-columns:minmax(0,1fr);padding:18px 14px 20px}.tss-at-on .fooevents-attendee-item>p.form-row.tss-at-half{grid-column:1/-1}}

/* the form's own submit row is replaced by the panel button; keep it for no-JS */
.tss-at-on form.woocommerce-form>p.form-row{grid-column:1/-1;margin:0;padding:0}
.tss-at-on form.woocommerce-form>p.form-row>button{display:none}
.tss-at-alert{grid-column:1/-1;margin:0;padding:14px 16px;border-radius:14px;background:#fee2e2;color:#b91c1c;font-size:14px;font-weight:700}
.tss-at-on .woocommerce-error,.tss-at-on .woocommerce-message{margin:0 0 16px}

/* continue panel (under the cards): summary on the left, button on the right at wider sizes */
.tss-at-side{display:grid;gap:16px;min-width:0}
.tss-at-panel{display:grid;grid-template-columns:minmax(0,1fr);gap:0 32px;padding:24px;border-radius:20px;background:#0a0e36;color:#e2e8f0;box-shadow:0 22px 50px rgba(10,14,54,.28)}
.tss-at-panel h2{margin:0 0 10px!important;padding:0!important;color:#fff!important;font-size:19px!important;font-weight:900!important;text-transform:uppercase}
.tss-at-panel h2::before{display:none!important}
.tss-at-panel-l,.tss-at-panel-r{min-width:0}
@media (min-width:720px){.tss-at-panel{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.tss-at-panel h2{grid-column:1/-1}.tss-at-panel-r{padding-left:32px;border-left:1px solid rgba(255,255,255,.12)}.tss-at-panel-r .tss-bk-go{margin-top:0}}
.tss-at-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:14px}
.tss-at-row span:last-child{color:#fff;font-weight:700;text-align:right}
.tss-at-panel .tss-bk-go{margin-top:16px}
.tss-at-panel .tss-bk-msg{margin-top:12px}
.tss-at-help{padding:18px 20px;border-radius:20px;background:#fff;border:1px solid #e2e8f0;color:#334155;font-size:14px}
.tss-at-help b{display:block;color:#0a0e36;font-size:15px;font-weight:900}
.tss-at-help a{color:#e31e24;font-weight:900;text-decoration:none}
.tss-at-help ul{margin:8px 0 0;padding:0;list-style:none;line-height:1.5}
.tss-at-help li{padding-left:22px;position:relative}
.tss-at-help li::before{content:"✓";position:absolute;left:0;color:#15803d;font-weight:900}

/* fix 1 (live site): the theme's WooCommerce form rules out-rank the input styling, and the form's own submit row pushed the side panel under the cards */
.tss-at-on #fooevents-attendee-page.woocommerce form .form-row input.input-text,.tss-at-on #fooevents-attendee-page form .form-row input.input-text{border:2px solid #e2e8f0;border-radius:12px;background:#fff;padding:11px 13px;min-height:48px;font-size:16px;box-shadow:none}
.tss-at-on #fooevents-attendee-page form .form-row input.input-text:focus{border-color:#0a0e36;box-shadow:0 0 0 3px rgba(245,196,0,.5)}
.tss-at-on #fooevents-attendee-page form p.form-row.tss-at-bad input.input-text{border-color:#b91c1c}
.tss-at-on form.woocommerce-form>.tss-at-main{grid-row:1}.tss-at-on form.woocommerce-form>.tss-at-side{grid-row:2}.tss-at-on form.woocommerce-form>p.form-row{grid-row:3}
/* remove a jump / empty the basket */
.tss-at-on .fooevents-attendee-item>h3 .tss-at-remove{margin-left:auto;padding:6px 12px;border:1px solid #e2e8f0;border-radius:50px;background:#fff;color:#64748b;font-family:'Montserrat',Arial,sans-serif;font-size:11px;font-weight:800;letter-spacing:.3px;text-transform:uppercase;line-height:1.2;cursor:pointer}
.tss-at-on .fooevents-attendee-item>h3 .tss-at-remove:hover,.tss-at-on .fooevents-attendee-item>h3 .tss-at-remove[data-armed="1"]{border-color:#b91c1c;color:#b91c1c;background:#fef2f2}
.tss-at-on .fooevents-attendee-item>h3 .tss-at-remove:disabled{opacity:.6;cursor:default}
.tss-at-empty-btn{padding:0;border:0;background:none;color:#0a0e36;font:inherit;font-weight:800;text-decoration:underline;cursor:pointer}
.tss-at-empty-btn[data-armed="1"]{color:#b91c1c}
.tss-at-empty-on #main-content{background:#eef2f7}
.tss-at-empty{display:grid;gap:12px;max-width:520px;margin:0 auto;padding:28px 24px;border-radius:20px;background:#fff;border:1px solid #e2e8f0;box-shadow:0 12px 34px rgba(10,14,54,.07);text-align:center}
.tss-at-empty .tss-bk-go{text-decoration:none;color:#fff!important;background:#e31e24;font-family:'Montserrat',Arial,sans-serif}
.tss-at-empty .tss-bk-go.alt{background:#0a0e36;color:#f5c400!important}
.tss-at-empty .tss-bk-note{margin:4px 0 0;color:#64748b;font-size:13px}
.tss-at-empty .tss-bk-note a{color:#0a0e36;font-weight:800}
@media (max-width:520px){.tss-at-on .fooevents-attendee-item>h3 .tss-at-remove{margin-left:0;flex-basis:100%;justify-self:start;width:max-content}}
/* fix 2: the colour tokens live on .tss-bk, but the side panel sits inside the form, so define them page-wide too */
.tss-at-on,.tss-bk-on{--navy:#0a0e36;--navy2:#1a237e;--red:#e31e24;--red2:#ff2a32;--gold:#f5c400;--ink:#0f172a;--text:#334155;--muted:#64748b;--line:#e2e8f0;--soft:#f8fafc;--ok:#15803d;--okbg:#dcfce7;--warn:#b45309;--warnbg:#fff8e6;--err:#b91c1c}
.tss-at-on .tss-at-panel .tss-bk-go{background:#e31e24;color:#fff;border:0;box-shadow:0 8px 24px rgba(227,30,36,.45)}
.tss-at-on .tss-at-panel .tss-bk-go:hover{background:#ff2a32}

/* ===== TSS online booking: payment page (WooCommerce block checkout, tss-co-*) ===== */
.tss-co-on #main-content{background:#eef2f7}
.tss-co-on #main-content>.container{width:100%!important;max-width:none!important;padding:0!important}
.tss-co-on #content-area{display:block}
.tss-co-on #sidebar,.tss-co-on .entry-title.main_title,.tss-co-on .et_post_meta_wrapper{display:none!important}
.tss-co-on #left-area{float:none!important;width:100%!important;max-width:1180px;margin:0 auto;padding:0 max(16px,4vw) 64px!important;box-sizing:border-box}
@media (min-width:1300px){.tss-co-on #left-area{padding:0 20px 64px!important}}
.tss-co-on article.page{position:relative;z-index:2;margin-top:-58px}
.tss-co-on .entry-content{padding:0}
.tss-co-on .wp-block-woocommerce-checkout,.tss-co-on .wp-block-woocommerce-checkout *:not(svg):not(path){font-family:'Montserrat',Arial,sans-serif!important;letter-spacing:0!important}
.tss-co-on .wp-block-woocommerce-checkout{color:#0f172a;font-size:15px}

/* notices ("Attendee details saved") */
.tss-co-on .woocommerce-info,.tss-co-on .woocommerce-message,.tss-co-on .wc-block-components-notice-banner.is-info,.tss-co-on .wc-block-components-notice-banner.is-success{margin:0 0 16px!important;padding:14px 18px!important;border:0!important;border-radius:14px!important;background:#dcfce7!important;color:#15803d!important;font-family:'Montserrat',Arial,sans-serif!important;font-size:14px!important;font-weight:700!important;line-height:1.4}
.tss-co-on .woocommerce-info::before,.tss-co-on .woocommerce-message::before{display:none!important}
.tss-co-on .woocommerce-info a,.tss-co-on .woocommerce-message a{color:#15803d!important;font-weight:900;text-decoration:underline}
.tss-co-on .wc-block-components-notice-banner.is-error{border-radius:14px!important;border:0!important;background:#fee2e2!important;color:#b91c1c!important;font-weight:700}

/* the form column: every step is a white card with a numbered heading */
.tss-co-on .wc-block-checkout__main{counter-reset:tssco}
.tss-co-on .wc-block-components-checkout-step,.tss-co-on .wc-block-components-express-payment--checkout,.tss-co-on .wp-block-woocommerce-checkout-order-note-block,.tss-co-on .wp-block-woocommerce-checkout-terms-block{padding:22px 24px!important;margin:0 0 16px!important;border:1px solid #e2e8f0!important;border-radius:20px!important;background:#fff!important;box-shadow:0 12px 34px rgba(10,14,54,.07)}
.tss-co-on .wc-block-components-checkout-step::before,.tss-co-on .wc-block-components-checkout-step__container::after,.tss-co-on .wc-block-components-checkout-step__container::before{display:none!important}
.tss-co-on .wc-block-components-checkout-step__heading{display:flex;align-items:center;gap:12px;margin:0 0 14px!important}
.tss-co-on .wc-block-components-checkout-step__heading::before{counter-increment:tssco;content:counter(tssco);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;border-radius:50%;background:#e31e24;color:#fff;font-size:14px;font-weight:900}
.tss-co-on .wc-block-components-checkout-step__heading-content{margin:0!important;color:#64748b;font-size:13px}
.tss-co-on .wc-block-components-title{margin:0!important;padding:0!important;color:#0a0e36!important;font-size:19px!important;font-weight:900!important;line-height:1.2!important;text-transform:uppercase}
.tss-co-on .wc-block-components-checkout-step__description{margin:0 0 12px!important;color:#64748b!important;font-size:13px!important}
.tss-co-on .wc-block-components-checkout-step__content{padding:0!important}

/* inputs */
.tss-co-on .wc-block-components-text-input input,.tss-co-on .wc-block-components-textarea,.tss-co-on .wc-block-components-combobox .components-combobox-control__input,.tss-co-on .wc-block-components-country-input select,.tss-co-on .wc-block-components-state-input select,.tss-co-on .wc-block-components-select .components-custom-select-control__button{min-height:54px!important;border:2px solid #e2e8f0!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important;color:#0f172a!important;font-size:16px!important}
.tss-co-on .wc-block-components-text-input input:focus,.tss-co-on .wc-block-components-textarea:focus,.tss-co-on .wc-block-components-combobox .components-combobox-control__input:focus{border-color:#0a0e36!important;box-shadow:0 0 0 3px rgba(245,196,0,.5)!important;outline:none!important}
.tss-co-on .wc-block-components-text-input label,.tss-co-on .wc-block-components-combobox label,.tss-co-on .wc-block-components-select label{color:#64748b!important;font-weight:700!important}
.tss-co-on .wc-block-components-text-input.has-error input{border-color:#b91c1c!important}
.tss-co-on .wc-block-components-validation-error p{color:#b91c1c!important;font-size:13px;font-weight:700}
.tss-co-on .wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"]{border:2px solid #cbd5e1!important;border-radius:6px!important;width:22px;height:22px}
.tss-co-on .wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"]:checked{background:#0a0e36!important;border-color:#0a0e36!important}
.tss-co-on .wc-block-components-checkbox__label{font-size:14px!important;color:#334155}

/* express checkout (Google Pay / Apple Pay) */
.tss-co-on .wc-block-components-express-payment__title-container{margin:0 0 12px!important}
.tss-co-on .wc-block-components-express-payment__title{color:#64748b!important;font-size:12px!important;font-weight:900!important;letter-spacing:2px!important;text-transform:uppercase;background:#fff!important}
.tss-co-on .wc-block-components-express-payment__title-container::before,.tss-co-on .wc-block-components-express-payment__title-container::after{border-color:#e2e8f0!important}
.tss-co-on .wc-block-components-express-payment__content{border:0!important;padding:0!important}
.tss-co-on .wc-block-components-express-payment-continue-rule{margin:8px 0 16px!important;color:#64748b!important;font-size:12px!important;font-weight:800;text-transform:uppercase;letter-spacing:1px}
.tss-co-on .wc-block-components-express-payment-continue-rule::before,.tss-co-on .wc-block-components-express-payment-continue-rule::after{border-color:#e2e8f0!important}

/* payment methods */
.tss-co-on .wc-block-components-radio-control__option,.tss-co-on .wc-block-components-radio-control-accordion-option{margin:0 0 10px!important;padding:14px 16px 14px 52px!important;border:2px solid #e2e8f0!important;border-radius:14px!important;background:#fff}
.tss-co-on .wc-block-components-radio-control__option::after,.tss-co-on .wc-block-components-radio-control-accordion-option::after{display:none!important}
.tss-co-on .wc-block-components-radio-control__option--checked-option-highlighted,.tss-co-on .wc-block-components-radio-control-accordion-option--checked-option-highlighted,.tss-co-on .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted{border-color:#0a0e36!important;background:#f1f4ff!important;box-shadow:0 0 0 3px rgba(245,196,0,.5)!important}
.tss-co-on .wc-block-components-radio-control__input{left:16px!important;width:22px!important;height:22px!important;border:2px solid #cbd5e1!important}
.tss-co-on .wc-block-components-radio-control__input:checked{border-color:#0a0e36!important;background:#fff!important}
.tss-co-on .wc-block-components-radio-control__input:checked::before{background:#0a0e36!important;width:10px!important;height:10px!important}
.tss-co-on .wc-block-components-radio-control__label{color:#0a0e36!important;font-size:15px!important;font-weight:800!important}
.tss-co-on .wc-block-components-radio-control__label-group img{max-height:24px}
.tss-co-on .wc-block-components-radio-control-accordion-content{padding:6px 0 0!important}
.tss-co-on .wc-block-checkout__payment-method .wc-block-components-checkout-step__content>p{color:#64748b;font-size:13px}

/* place order */
.tss-co-on .wc-block-components-checkout-place-order-button{width:100%!important;min-height:58px!important;margin:8px 0 0!important;padding:16px 22px!important;border:0!important;border-radius:50px!important;background:#e31e24!important;color:#fff!important;font-size:15px!important;font-weight:900!important;letter-spacing:.5px!important;text-transform:uppercase;box-shadow:0 8px 24px rgba(227,30,36,.45)!important;transition:transform .2s ease,background .2s ease}
.tss-co-on .wc-block-components-checkout-place-order-button:hover{transform:translateY(-2px);background:#ff2a32!important}
.tss-co-on .wc-block-components-checkout-place-order-button:disabled,.tss-co-on .wc-block-components-checkout-place-order-button[aria-disabled="true"]{background:#3b4068!important;color:#cbd5e1!important;box-shadow:none!important;transform:none;opacity:1!important}
.tss-co-on .wc-block-components-checkout-place-order-button .wc-block-components-button__text{font-size:0}
.tss-co-on .wc-block-components-checkout-place-order-button .wc-block-components-button__text::before{content:"Pay securely and book";font-size:15px}
/* the actions row is a flex row (back link + button); stack it: button full width, trust line under it, back link last */
.tss-co-on .wc-block-checkout__actions_row{display:flex!important;flex-wrap:wrap!important;margin-top:16px!important}
.tss-co-on .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button{flex:0 0 100%!important}
.tss-co-on .wc-block-components-checkout-return-to-cart-button{flex:0 0 100%;order:3;margin-top:14px!important;color:#64748b!important;font-size:13px!important;font-weight:700!important;text-align:center;text-decoration:underline}
.tss-co-on .wc-block-components-checkout-return-to-cart-button svg{display:none}
.tss-co-on .tss-co-secure{flex:0 0 100%;width:100%;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;margin:14px 0 0;color:#64748b;font-size:12px;font-weight:700;text-align:center}

/* order summary (right-hand column) */
.tss-co-on .wc-block-components-sidebar{padding:22px 24px!important;border:1px solid #e2e8f0;border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(10,14,54,.07)}
@media (min-width:768px){.tss-co-on .wc-block-checkout__sidebar{position:sticky;top:96px}}
.tss-co-on .wc-block-components-checkout-order-summary__title{margin:0 0 6px!important;padding:0!important;color:#0a0e36!important;font-size:19px!important;font-weight:900!important;text-transform:uppercase;border:0!important}
.tss-co-on .wc-block-components-checkout-order-summary__title-text{font-size:19px!important;font-weight:900!important}
.tss-co-on .wc-block-components-checkout-order-summary__content{padding:0!important}
.tss-co-on .wc-block-components-order-summary-item{padding:14px 0!important;border-bottom:1px solid #e2e8f0}
.tss-co-on .wc-block-components-order-summary-item__image{border-radius:12px;overflow:hidden}
.tss-co-on .wc-block-components-order-summary-item__quantity{border:2px solid #fff!important;background:#e31e24!important;color:#fff!important;font-weight:900!important;box-shadow:none!important}
.tss-co-on .wc-block-components-product-name{color:#0a0e36!important;font-size:14px!important;font-weight:800!important;text-decoration:none!important}
.tss-co-on .wc-block-components-product-details__name,.tss-co-on .wc-block-components-product-details__value,.tss-co-on .wc-block-components-product-metadata__description{color:#64748b!important;font-size:12px!important}
.tss-co-on .wc-block-components-order-summary-item__total-price,.tss-co-on .wc-block-components-order-summary-item__individual-prices{color:#0a0e36!important;font-weight:800!important}
.tss-co-on .wc-block-components-totals-item{padding:10px 0!important;color:#334155;font-size:14px!important}
.tss-co-on .wc-block-components-totals-item__label{font-weight:700!important}
.tss-co-on .wc-block-components-totals-item__value{color:#0a0e36!important;font-weight:800!important}
.tss-co-on .wc-block-components-totals-footer-item{margin-top:8px!important;padding:14px 0 0!important;border-top:2px solid #0a0e36!important}
.tss-co-on .wc-block-components-totals-footer-item .wc-block-components-totals-item__label{color:#0a0e36!important;font-size:14px!important;font-weight:900!important;text-transform:uppercase}
.tss-co-on .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{color:#0a0e36!important;font-size:28px!important;font-weight:900!important}
.tss-co-on .wc-block-components-totals-footer-item .wc-block-components-totals-footer-item-tax{color:#64748b;font-size:12px}
.tss-co-on .wc-block-components-totals-coupon .wc-block-components-panel__button{color:#0a0e36!important;font-size:14px!important;font-weight:800!important}
.tss-co-on .wc-block-components-totals-coupon__button{border-radius:50px!important;background:#0a0e36!important;color:#f5c400!important;font-weight:900!important;border:0!important}
.tss-co-on .wc-block-components-panel__button{padding:10px 0!important}
.tss-co-on .wc-block-components-totals-wrapper{padding:6px 0!important;border:0!important}
.tss-co-on .wc-block-components-totals-wrapper::after{display:none!important}
@media (max-width:767px){.tss-co-on .wc-block-components-sidebar{margin-bottom:16px}}

/* remove a line from the order summary */
.tss-co-on .tss-co-remove{display:block;margin:6px 0 0;padding:0;border:0;background:none;color:#64748b!important;font-size:12px!important;font-weight:800!important;text-decoration:underline;cursor:pointer}
.tss-co-on .tss-co-remove[data-armed="1"]{color:#b91c1c!important}
.tss-co-on .tss-co-remove:disabled{opacity:.6;cursor:default}

/* ===== TSS online booking: thank-you page (the classic order-received view inside the checkout page, tss-ty-*) ===== */
.tss-ty-on #main-content{background:#eef2f7}
.tss-ty-on #main-content>.container{width:100%!important;max-width:none!important;padding:0!important}
.tss-ty-on #content-area{display:block}
.tss-ty-on #sidebar,.tss-ty-on .entry-title.main_title,.tss-ty-on .et_post_meta_wrapper,.tss-ty-on .et_pb_ab_shop_conversion{display:none!important}
.tss-ty-on #left-area{float:none!important;width:100%!important;max-width:940px;margin:0 auto;padding:0 max(16px,4vw) 64px!important;box-sizing:border-box}
@media (min-width:1300px){.tss-ty-on #left-area{padding:0 20px 64px!important}}
.tss-ty-on article.page{position:relative;z-index:2;margin-top:-58px}
.tss-ty-on .entry-content{padding:0}
.tss-ty .tss-bk-lead b{color:#fff}
.tss-ty-on .woocommerce-order,.tss-ty-on .woocommerce-order *{box-sizing:border-box}
.tss-ty-on .woocommerce-order{display:grid;gap:16px;font-family:'Montserrat',Arial,sans-serif;color:#0f172a;font-size:15px;line-height:1.55}
.tss-ty-on .woocommerce-order :is(h2,h3,h4){font-family:'Montserrat',Arial,sans-serif;letter-spacing:0}
.tss-ty-on .woocommerce-order p{padding-bottom:0}
.tss-ty-on .woocommerce-thankyou-order-received{display:none}
/* the order summary chips (order number, date, email, total, payment) */
.tss-ty-on ul.woocommerce-order-overview{display:flex;flex-wrap:wrap;gap:10px;margin:0!important;padding:22px 24px!important;list-style:none;border:1px solid #e2e8f0;border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(10,14,54,.07)}
.tss-ty-on ul.woocommerce-order-overview li{flex:1 1 150px;float:none!important;width:auto!important;margin:0!important;padding:12px 14px!important;border:0!important;border-radius:12px;background:#f1f4ff;color:#64748b;font-size:11px;font-weight:900;letter-spacing:1px;line-height:1.3;text-transform:uppercase}
.tss-ty-on ul.woocommerce-order-overview li strong{display:block;margin-top:4px;color:#0a0e36;font-size:15px;font-weight:800;letter-spacing:0;text-transform:none;word-break:break-word}
/* the two white cards: order details and billing details */
.tss-ty-on section.woocommerce-order-details,.tss-ty-on section.woocommerce-customer-details{margin:0;padding:22px 24px;border:1px solid #e2e8f0;border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(10,14,54,.07)}
.tss-ty-on .woocommerce-order h2.woocommerce-order-details__title,.tss-ty-on .woocommerce-order h2.woocommerce-column__title{margin:0 0 14px!important;padding:0!important;color:#0a0e36;font-size:19px;font-weight:900;line-height:1.2;text-transform:uppercase}
.tss-ty-on #fooevents-thankyou-tickets{margin:0 0 18px;padding:14px 16px;border-radius:12px;background:#f1f4ff;color:#0a0e36;font-size:14px}
.tss-ty-on #fooevents-thankyou-tickets :is(h2,h3,h4){margin:0 0 8px!important;padding:0!important;color:#0a0e36;font-size:14px;font-weight:900;text-transform:uppercase}
.tss-ty-on #fooevents-thankyou-tickets p{margin:0 0 6px}
.tss-ty-on .woocommerce-order table.woocommerce-table{width:100%;margin:0;border:0;border-collapse:collapse;font-size:14px}
.tss-ty-on .woocommerce-order table.woocommerce-table th,.tss-ty-on .woocommerce-order table.woocommerce-table td{padding:10px 0!important;border:0!important;border-bottom:1px solid #e2e8f0!important;text-align:left;vertical-align:top;color:#334155;background:none!important}
.tss-ty-on .woocommerce-order table.woocommerce-table thead th{color:#64748b;font-size:11px;font-weight:900;letter-spacing:1px;text-transform:uppercase}
.tss-ty-on .woocommerce-order table.woocommerce-table td.product-name,.tss-ty-on .woocommerce-order table.woocommerce-table tfoot th{color:#0a0e36;font-weight:800}
.tss-ty-on .woocommerce-order table.woocommerce-table td.product-total,.tss-ty-on .woocommerce-order table.woocommerce-table tfoot td,.tss-ty-on .woocommerce-order table.woocommerce-table thead th.product-total{text-align:right;white-space:nowrap;color:#0a0e36;font-weight:800}
.tss-ty-on .woocommerce-order .wc-item-meta{margin:6px 0 0;padding:0;list-style:none;color:#64748b;font-size:12.5px;font-weight:600}
.tss-ty-on .woocommerce-order .wc-item-meta li{margin:0;padding:0;list-style:none}
.tss-ty-on .woocommerce-order .wc-item-meta li p{display:inline}
.tss-ty-on .woocommerce-order table.woocommerce-table tfoot tr:last-child th,.tss-ty-on .woocommerce-order table.woocommerce-table tfoot tr:last-child td{padding-top:14px!important;border-bottom:0!important;border-top:2px solid #0a0e36!important;font-size:16px}
.tss-ty-on .woocommerce-customer-details address{margin:0;padding:0;border:0;color:#334155;font-size:14px;font-style:normal;line-height:1.6}
.tss-ty-on .woocommerce-customer-details--phone,.tss-ty-on .woocommerce-customer-details--email{margin:6px 0 0!important;padding:0!important;color:#334155;font-size:14px}
.tss-ty-on .woocommerce-customer-details--phone::before,.tss-ty-on .woocommerce-customer-details--email::before{display:none}
/* navy "what happens next" panel */
.tss-ty-next{padding:24px;border-radius:20px;background:#0a0e36;color:#e2e8f0;box-shadow:0 22px 50px rgba(10,14,54,.28)}
.tss-ty-on .tss-ty-next h2{margin:0 0 10px!important;padding:0!important;color:#fff;font-size:19px;font-weight:900;text-transform:uppercase}
.tss-ty-next ul{margin:0 0 18px;padding:0;list-style:none;font-size:14px;line-height:1.55}
.tss-ty-next li{position:relative;margin:0 0 8px;padding-left:24px;list-style:none}
.tss-ty-next li::before{content:"✓";position:absolute;left:0;color:#f5c400;font-weight:900}
.tss-ty-next li a{color:#fff;font-weight:800}
.tss-ty-btns{display:flex;flex-wrap:wrap;gap:10px}
.tss-ty-on .tss-ty-btns a{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 22px;border-radius:50px;background:#e31e24;color:#fff!important;font-family:'Montserrat',Arial,sans-serif;font-size:14px;font-weight:900;letter-spacing:.5px;text-transform:uppercase;text-decoration:none;box-shadow:0 8px 24px rgba(227,30,36,.45)}
.tss-ty-on .tss-ty-btns a.alt{border:2px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08);box-shadow:none}
@media (max-width:520px){.tss-ty-on ul.woocommerce-order-overview{padding:16px 14px!important}.tss-ty-on section.woocommerce-order-details,.tss-ty-on section.woocommerce-customer-details{padding:18px 14px}.tss-ty-btns a{flex:1 1 100%}}

/* express checkout sits just above the payment options; basket has no wallet button (details are captured first) */body.woocommerce-checkout .wc-block-checkout__form{display:flex!important;flex-direction:column!important}body.woocommerce-checkout .wc-block-checkout__form>*{order:1}body.woocommerce-checkout .wc-block-checkout__form>:has(>.wc-block-components-express-payment--checkout){order:2;margin-bottom:16px}body.woocommerce-checkout .wc-block-checkout__form>.wp-block-woocommerce-checkout-payment-block,body.woocommerce-checkout .wc-block-checkout__form>.wp-block-woocommerce-checkout-payment-block~*{order:3}body.woocommerce-cart .wc-block-cart__payment-options{display:none!important}/* basket page: same look as checkout (hero, gutters, white cards) */body.woocommerce-cart #main-content{background:#eef2f7}body.woocommerce-cart #main-content article{background:transparent!important}body.woocommerce-cart .wp-block-woocommerce-cart{max-width:1180px;margin-left:auto!important;margin-right:auto!important;padding:24px max(16px,4vw) 64px!important;box-sizing:border-box}body.tss-cart-on #main-content{padding-top:0!important}body.tss-cart-on .wp-block-woocommerce-cart{margin-top:-58px!important;padding-top:0!important;position:relative;z-index:2}body.woocommerce-cart .wc-block-cart{margin-bottom:0!important}body.woocommerce-cart .wc-block-cart .wc-block-cart-items{background:#fff!important;border:1px solid #e2e8f0!important;border-radius:18px!important;box-shadow:0 12px 34px rgba(10,14,54,.07)!important;border-collapse:separate!important;overflow:hidden}@media (max-width:699px){body.woocommerce-cart .wc-block-cart-items__row{grid-template-columns:76px minmax(0,1fr) auto!important;column-gap:14px!important;padding:18px 16px!important}body.woocommerce-cart .wc-block-cart-item__image,body.woocommerce-cart .wc-block-cart-item__product,body.woocommerce-cart .wc-block-cart-item__total{padding:0!important}body.woocommerce-cart .wc-block-cart-item__image{grid-column:1!important;grid-row:1!important}body.woocommerce-cart .wc-block-cart-item__product{grid-column:2!important;grid-row:1!important}body.woocommerce-cart .wc-block-cart-item__total{grid-column:3!important;grid-row:1!important;text-align:right}body.woocommerce-cart .wc-block-components-product-name{font-size:16px!important;line-height:1.25}body.woocommerce-cart .wc-block-cart__sidebar{margin-top:16px!important}}.tss-at-summary li{align-items:center}.tss-at-summary .tss-at-sum-remove{margin-left:auto;-webkit-appearance:none;appearance:none;background:none;border:0;padding:2px 0;color:#f5c400;font:inherit;font-size:12px;font-weight:800;text-decoration:underline;text-underline-offset:2px;cursor:pointer;white-space:nowrap}.tss-at-summary .tss-at-sum-remove[data-armed="1"]{color:#fff;background:#e31e24;border-radius:50px;padding:4px 10px;text-decoration:none}.tss-at-summary .tss-at-sum-remove:disabled{opacity:.7;cursor:progress}/* checkout: gift card box stands out */body.tss-co-on .wc-gift-cards-apply-panel{background:#fff8db!important;border:1.5px solid #f5c400!important;border-radius:14px!important;padding:0 14px!important;margin:12px 0!important}body.tss-co-on .wc-gift-cards-apply-panel .wc-block-components-panel__button{color:#0a0e36!important;font-weight:900!important;font-size:15px!important;padding-top:14px!important;padding-bottom:14px!important}body.tss-co-on .wc-gift-cards-apply-panel .wc-block-components-panel__button::before{content:"🎁";margin-right:8px}body.tss-co-on .wc-gift-cards-apply-panel .wc-block-components-panel__content{padding-bottom:14px!important}@media (max-width:767px){body.tss-co-on .wc-block-components-checkout-order-summary__content{display:block!important}body.tss-co-on .wc-block-components-checkout-order-summary__title-icon{display:none!important}}.tss-gc-prompt{margin:0 0 16px}.tss-gc-prompt button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:16px 18px 16px 60px;position:relative;background:#fff8db;border:1.5px solid #f5c400;border-radius:18px;color:#0a0e36;font-family:Montserrat,Arial,sans-serif;text-align:left;cursor:pointer;box-shadow:0 8px 22px rgba(10,14,54,.06)}.tss-gc-prompt button::before{content:"🎁";position:absolute;left:18px;top:50%;transform:translateY(-50%);font-size:26px;line-height:1}.tss-gc-prompt b{font-size:16px;font-weight:900}.tss-gc-prompt span{font-size:13px;font-weight:700;color:#334155;text-decoration:underline;text-underline-offset:2px}@media (min-width:768px){.tss-gc-prompt{display:none!important}}/* Tandem AFF link card on the tandem booking page */.tss-bk-taff{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 12px;margin:14px 0 0;padding:14px 16px;border:1.5px dashed #f5c400;border-radius:16px;background:#fffbea;color:#0a0e36!important;text-decoration:none!important;font-family:Montserrat,Arial,sans-serif}.tss-bk-taff:hover{border-style:solid;background:#fff6d1}.tss-bk-taff .tag{grid-column:1/-1;justify-self:start;margin:0 0 4px;padding:3px 10px;border-radius:50px;background:#f5c400;color:#0a0e36;font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.tss-bk-taff .t{font-size:16px;font-weight:900}.tss-bk-taff .p{font-size:16px;font-weight:900;text-align:right}.tss-bk-taff .s{grid-column:1/-1;font-size:13px;line-height:1.45;color:#475569}.tss-bk-taff .s b{display:inline-block;margin-top:4px;color:#e31e24;font-weight:900}

.tss-gc-on,.tss-shop-on{--navy:#0a0e36;--navy2:#1a237e;--red:#e31e24;--red2:#ff2a32;--gold:#f5c400;--ink:#0f172a;--text:#334155;--muted:#64748b;--line:#e2e8f0;--soft:#f8fafc}
.tss-gc-on #main-content{background:#eef2f7}
.tss-gc-on #main-content>.container{display:none!important}
.tss-gc-on #wc-square-digital-wallet,.tss-gc-on .wc-square-wallet-buttons{display:none!important}
.tss-gc,.tss-gc *{box-sizing:border-box}
.tss-gc{font-family:'Montserrat',Arial,sans-serif;color:var(--text)}
.tss-gc-wrap{position:relative;z-index:1;width:100%;max-width:1060px;margin:0 auto;padding:0 max(16px,4vw)}
.tss-gc-hero{position:relative;overflow:hidden;padding:calc(74px + 44px) 0 104px;background:radial-gradient(120% 90% at 85% 0%,rgba(26,35,126,.9) 0%,rgba(10,14,54,0) 60%),#0a0e36;color:#e2e8f0}
.tss-gc-hero::after{content:"";position:absolute;right:-90px;bottom:-120px;width:340px;height:340px;border-radius:50%;border:40px solid rgba(245,196,0,.08);pointer-events:none}
.tss-gc-eyebrow{display:block;margin:0 0 10px;color:var(--gold);font-size:12px;font-weight:900;letter-spacing:2px;text-transform:uppercase}
.tss-gc-hero h1,.tss-gc-hero .product_title{margin:0 0 12px!important;padding:0!important;color:#fff!important;font-family:'Montserrat',Arial,sans-serif!important;font-size:clamp(30px,5vw,50px)!important;font-weight:900!important;line-height:1.05!important;letter-spacing:0!important;text-transform:uppercase}
.tss-gc-lead,.tss-gc-lead p{max-width:640px;margin:0!important;padding:0!important;color:#cbd5e1;font-size:16.5px;line-height:1.6}
.tss-gc-facts{display:flex;flex-wrap:wrap;gap:8px 10px;margin:20px 0 0!important;padding:0!important;list-style:none!important}
.tss-gc-facts li{display:inline-flex;align-items:center;gap:8px;margin:0!important;padding:8px 14px 8px 12px!important;border:1px solid rgba(255,255,255,.14);border-radius:50px;background:rgba(255,255,255,.06);color:#fff;font-size:13px;font-weight:700;line-height:1.2;list-style:none!important}
.tss-gc-facts li::before{content:"✓";color:var(--gold);font-weight:900}
.tss-gc-body{padding:0 0 64px}
.tss-gc-body>.tss-gc-wrap{margin-top:-64px}
.tss-gc-grid{display:grid;grid-template-columns:1fr;gap:20px;align-items:start}
@media (min-width:980px){.tss-gc-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:28px}.tss-gc-right{position:sticky;top:130px}}
.tss-gc-card{position:relative;padding:24px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(10,14,54,.07)}
@media (min-width:720px){.tss-gc-card{padding:30px}}
.tss-gc-buy{border-top:4px solid var(--red)}
.tss-gc-step-h{display:flex;align-items:center;gap:12px;margin:0 0 16px}
.tss-gc-step-h h2{margin:0!important;padding:0!important;color:var(--navy)!important;font-family:'Montserrat',Arial,sans-serif!important;font-size:19px!important;font-weight:900!important;line-height:1.2!important;letter-spacing:.4px!important;text-transform:uppercase}
.tss-gc-n{display:inline-flex;flex:0 0 32px;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--red);color:#fff;font-size:14px;font-weight:900}
.tss-gc-sep{height:1px;margin:26px 0;background:var(--line)}
.tss-gc-amounts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.tss-gc-amt{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:64px;padding:12px 8px;border:1.5px solid var(--line);border-radius:14px;background:#fff;color:var(--navy);font-family:'Montserrat',Arial,sans-serif;font-size:22px;font-weight:900;line-height:1;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}
.tss-gc-amt:hover{border-color:#94a3b8;transform:translateY(-1px)}
.tss-gc-amt:focus-visible{outline:3px solid rgba(227,30,36,.35);outline-offset:2px}
.tss-gc-amt.on{border-color:var(--red);background:#fff5f5;box-shadow:0 0 0 3px rgba(227,30,36,.12);color:var(--red)}.tss-gc-amt-c{display:block;margin-top:6px;color:#475569;font-size:11.5px;font-weight:700;line-height:1.3;text-align:center;text-wrap:balance}.tss-gc-amt.on .tss-gc-amt-c{color:#b91c1c}
.tss-gc-hint{margin:14px 0 0!important;padding:0!important;color:var(--muted);font-size:13.5px;line-height:1.55}
.tss-gc-hint a,.tss-gc-card a{color:var(--red);font-weight:700;text-decoration:underline}
.tss-gc form.cart{margin:0!important;padding:0!important}
.tss-gc table.variations{display:none!important}
.tss-gc .reset_variations,.tss-gc .woocommerce-variation-availability,.tss-gc .woocommerce-variation-description{display:none!important}
.tss-gc .single_variation_wrap{margin:0!important}
.tss-gc .wc_gc_send_as_gift_wrapper{margin:0 0 6px}
.tss-gc .wc_gc_send_as_gift_wrapper label{display:flex!important;align-items:center;gap:12px;margin:0!important;padding:14px 16px;border:1.5px solid var(--line);border-radius:14px;background:var(--soft);color:var(--navy);font-size:15px;font-weight:800;cursor:pointer}
.tss-gc .wc_gc_send_as_gift_wrapper input[type=checkbox]{width:20px;height:20px;margin:0!important;accent-color:var(--red);cursor:pointer}
.tss-gc-sub{margin:10px 0 0!important;padding:0!important;color:var(--muted);font-size:13.5px;line-height:1.55}
.tss-gc .woocommerce_gc_giftcard_form_wrapper{margin:16px 0 0}
.tss-gc .woocommerce_gc_giftcard_form .form-row{margin:0 0 14px!important;padding:0!important;width:100%!important;float:none!important}
.tss-gc .woocommerce_gc_giftcard_form label{display:block;margin:0 0 6px!important;color:var(--navy);font-size:14px;font-weight:800;line-height:1.3}
.tss-gc .woocommerce_gc_giftcard_form label .required{color:var(--red);text-decoration:none;border:0}
.tss-gc .woocommerce_gc_giftcard_form input.input-text,.tss-gc .woocommerce_gc_giftcard_form textarea{width:100%!important;min-height:48px;margin:0!important;padding:12px 14px!important;border:1.5px solid var(--line)!important;border-radius:12px!important;background:#fff!important;color:var(--ink)!important;font-family:'Montserrat',Arial,sans-serif!important;font-size:15px!important;box-shadow:none!important}
.tss-gc .woocommerce_gc_giftcard_form textarea{min-height:96px;resize:vertical}
.tss-gc .woocommerce_gc_giftcard_form input.input-text:focus,.tss-gc .woocommerce_gc_giftcard_form textarea:focus{border-color:var(--navy)!important;outline:3px solid rgba(26,35,126,.12)}
.tss-gc .woocommerce_gc_giftcard_form small.description{display:block;margin:6px 0 0;color:var(--muted);font-size:12.5px;line-height:1.45}
.tss-gc .woocommerce_gc_giftcard_form .reset_delivery_date{display:inline-block;margin:6px 0 0;color:var(--red);font-size:12.5px;font-weight:700}
.tss-gc-total{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:22px 0 14px;padding:16px 18px;border-radius:14px;background:var(--navy);color:#cbd5e1;font-size:14px;font-weight:700}
.tss-gc-total b{color:#fff;font-size:26px;font-weight:900}
.tss-gc-total b.empty{color:#cbd5e1;font-size:15px;font-weight:700}
.tss-gc .woocommerce-variation.single_variation{display:none!important}
.tss-gc .woocommerce-variation-add-to-cart{display:block!important;margin:0!important}
.tss-gc .woocommerce-variation-add-to-cart .quantity{display:none!important}
#main-content .tss-gc .single_add_to_cart_button{display:inline-flex!important;align-items:center;justify-content:center;width:100%!important;min-height:56px;margin:0!important;padding:14px 22px!important;border:0!important;border-radius:50px!important;background:var(--red)!important;color:#fff!important;font-family:'Montserrat',Arial,sans-serif!important;font-size:15px!important;font-style:normal!important;font-weight:900!important;letter-spacing:.6px!important;line-height:1.2!important;text-transform:uppercase;box-shadow:0 12px 26px rgba(227,30,36,.3)!important;cursor:pointer;transition:background .15s,transform .15s}
#main-content .tss-gc .single_add_to_cart_button:after{display:none!important}
#main-content .tss-gc .single_add_to_cart_button:hover{background:var(--red2)!important;transform:translateY(-1px)}
#main-content .tss-gc .single_add_to_cart_button.disabled{background:#3b4068!important;color:#cbd5e1!important;box-shadow:none!important;opacity:1!important;cursor:not-allowed;transform:none}
.tss-gc-secure{margin:12px 0 0!important;padding:0!important;color:var(--muted);font-size:12.5px;text-align:center}
.tss-gc-cardimg{margin:0 0 20px}
.tss-gc-cardimg img{display:block;width:100%;height:auto;border-radius:18px;box-shadow:0 22px 44px rgba(10,14,54,.22)}
.tss-gc-right h3{margin:0 0 12px!important;padding:0!important;color:var(--navy)!important;font-family:'Montserrat',Arial,sans-serif!important;font-size:16px!important;font-weight:900!important;letter-spacing:.6px!important;text-transform:uppercase}
.tss-gc-phone{margin:16px 0 0!important;padding:14px 0 0!important;border-top:1px solid var(--line);color:var(--muted);font-size:13.5px;line-height:1.5}
.tss-gc-how ol{margin:0!important;padding:0!important;list-style:none!important;counter-reset:gc}
.tss-gc-how li{position:relative;margin:0 0 12px!important;padding:0 0 0 38px!important;color:var(--text);font-size:14.5px;line-height:1.55;list-style:none!important;counter-increment:gc}
.tss-gc-how li:last-child{margin-bottom:0!important}
.tss-gc-how li::before{content:counter(gc);position:absolute;left:0;top:0;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#fde8e9;color:var(--red);font-size:12.5px;font-weight:900}
.tss-gc-how li b{color:var(--navy)}
.tss-gc-good{margin-top:20px}
.tss-gc-good p{margin:0 0 12px!important;padding:0!important;color:var(--text);font-size:14px;line-height:1.6}
.tss-gc-good p:last-child{margin-bottom:0!important}
.tss-gc-good strong{display:block;margin:0 0 2px;color:var(--navy);font-weight:900}
.tss-gc-notices:empty{display:none}
.tss-gc-notices{margin:0 0 18px}
.tss-gc-notices .woocommerce-message,.tss-gc-notices .woocommerce-error,.tss-gc-notices .woocommerce-info{margin:0 0 10px!important;padding:16px 18px!important;border:0!important;border-left:5px solid #15803d!important;border-radius:14px!important;background:#fff!important;color:var(--ink)!important;font-family:'Montserrat',Arial,sans-serif;font-size:14.5px!important;font-weight:600;box-shadow:0 12px 34px rgba(10,14,54,.08)!important;list-style:none}
.tss-gc-notices .woocommerce-error{border-left-color:var(--red)!important}
.tss-gc-notices .woocommerce-message .button,.tss-gc-notices .woocommerce-message a.button{float:right;margin:-4px 0 0 12px!important;padding:8px 16px!important;border:0!important;border-radius:50px!important;background:var(--navy)!important;color:#fff!important;font-size:12.5px!important;font-style:normal!important;font-weight:900!important;letter-spacing:.5px!important;text-transform:uppercase}
.tss-gc-notices .woocommerce-message:before,.tss-gc-notices .woocommerce-error:before{display:none!important}
@media (max-width:520px){.tss-gc-amounts{grid-template-columns:repeat(2,minmax(0,1fr))}.tss-gc-hero{padding-bottom:96px}.tss-gc-total b{font-size:22px}}
.tss-shop-on #main-content{background:#eef2f7}
.tss-shop-on #main-content>.container{width:100%!important;max-width:1060px!important;padding:0 max(16px,4vw) 64px!important}
.tss-shop-on #main-content>.container:before{display:none!important}
.tss-shop-on #sidebar,.tss-shop-on .woocommerce-breadcrumb,.tss-shop-on .woocommerce-result-count,.tss-shop-on .woocommerce-ordering,.tss-shop-on .woocommerce-products-header{display:none!important}
.tss-shop-on #left-area{width:100%!important;padding:0!important;float:none!important}
.tss-shop-on #content-area{margin-top:-64px;position:relative;z-index:2}
.tss-shop-on ul.products{display:grid!important;grid-template-columns:1fr;gap:20px;margin:0!important;padding:0!important}
.tss-shop-on ul.products:before,.tss-shop-on ul.products:after{display:none!important}
@media (min-width:720px){.tss-shop-on ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
.tss-shop-on ul.products li.product{width:auto!important;margin:0!important;padding:0!important;float:none!important;border:1px solid #e2e8f0;border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(10,14,54,.07);overflow:hidden;transition:transform .15s,box-shadow .15s}
.tss-shop-on ul.products li.product:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(10,14,54,.12)}
.tss-shop-on ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;height:100%;text-decoration:none!important}
.tss-shop-on ul.products li.product .et_shop_image{display:block;margin:0!important}
.tss-shop-on ul.products li.product .et_shop_image img{display:block;width:100%!important;height:210px!important;margin:0!important;object-fit:cover;border-radius:0!important}
.tss-shop-on ul.products li.product .et_overlay{display:none!important}
.tss-shop-on ul.products li.product .woocommerce-loop-product__title{margin:18px 20px 6px!important;padding:0!important;color:#0a0e36!important;font-family:'Montserrat',Arial,sans-serif!important;font-size:17px!important;font-weight:900!important;letter-spacing:.3px!important;line-height:1.25!important;text-transform:uppercase}
.tss-shop-on ul.products li.product .price{margin:0 20px!important;color:#e31e24!important;font-family:'Montserrat',Arial,sans-serif!important;font-size:16px!important;font-weight:800!important}
.tss-shop-cta{display:inline-flex;align-items:center;justify-content:center;margin:16px 20px 20px;margin-top:auto;padding:12px 18px;border-radius:50px;background:#e31e24;color:#fff;font-family:'Montserrat',Arial,sans-serif;font-size:13px;font-weight:900;letter-spacing:.5px;text-transform:uppercase;box-shadow:0 10px 22px rgba(227,30,36,.25)}
.tss-shop-cta-wrap{display:flex;flex:1 1 auto;flex-direction:column;justify-content:flex-end;padding-top:16px}
#top-menu li.tss-gift-btn{padding-left:4px}
#top-menu li.tss-gift-btn>a{display:inline-flex!important;align-items:center;gap:8px;margin:-6px 0 0!important;padding:11px 18px!important;border-radius:50px!important;background:#f5c400!important;color:#0a0e36!important;font-family:'Montserrat',Arial,sans-serif!important;font-size:13.5px!important;font-style:normal!important;font-weight:900!important;letter-spacing:.6px!important;line-height:1!important;text-transform:uppercase;box-shadow:0 8px 20px rgba(0,0,0,.28);opacity:1!important;transition:background .15s,transform .15s}
#top-menu li.tss-gift-btn>a:hover{background:#ffd633!important;transform:translateY(-1px)}
.et-fixed-header #top-menu li.tss-gift-btn>a{margin-top:-4px!important;padding:10px 16px!important}
.et_mobile_menu li.tss-gift-btn{padding:10px 5% 6px!important;border:0!important}
.et_mobile_menu li.tss-gift-btn a{display:flex!important;align-items:center;justify-content:center;gap:8px;padding:14px 18px!important;border:0!important;border-radius:50px;background:#f5c400!important;color:#0a0e36!important;font-family:'Montserrat',Arial,sans-serif!important;font-size:14px!important;font-style:normal!important;font-weight:900!important;letter-spacing:.6px;text-transform:uppercase;box-shadow:0 8px 18px rgba(10,14,54,.18)}
#top-menu li.tss-gift-btn>a:before,.et_mobile_menu li.tss-gift-btn a:before{content:"🎁";display:inline-block;flex:0 0 auto;position:static!important;margin:0!important;border:0!important;background:none!important;opacity:1!important;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif!important;font-size:17px!important;font-style:normal!important;line-height:1!important;text-transform:none}
.tss-h-bar-gift{display:none!important}
@media (max-width:980px){.tss-h-bar>.tss-h-bar-book,.tss-h-bar>.tss-h-bar-enq,.tss-h-bar>.tss-h-bar-call{display:none!important}.tss-h-bar>a.tss-h-bar-gift{display:inline-flex!important;flex:0 1 330px;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:14px 22px;border-radius:50px;background:#f5c400;color:#0a0e36!important;font-family:'Montserrat',Arial,sans-serif;font-size:14.5px;font-weight:900;letter-spacing:.6px;line-height:1;text-transform:uppercase;text-decoration:none!important;box-shadow:0 10px 26px rgba(10,14,54,.35)}.tss-h-bar>a.tss-h-bar-gift:before{content:"🎁";flex:0 0 auto;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:21px;line-height:1;text-transform:none}}
@media (max-width:600px){body.tss-co-on .wc-block-checkout .wc-block-components-radio-control-accordion-option{padding-left:16px!important;padding-right:16px!important}body.tss-co-on .wc-block-checkout .sq-card-wrapper{min-width:0!important;width:100%!important;max-width:100%!important}}
#main-content .tss-gc .single_add_to_cart_button.tss-gc-busy{opacity:.85!important;cursor:progress}
#main-content .tss-gc form.cart .tss-gc-field-err{color:#e31e24;font-size:14px;font-weight:600;line-height:1.4;margin:8px 0 0;padding:0}#main-content .tss-gc form.cart input.tss-gc-invalid,#main-content .tss-gc form.cart input.tss-gc-invalid:focus{border-color:#e31e24!important;box-shadow:0 0 0 3px rgba(227,30,36,.15)!important}@media (min-width:981px){.tss-gc-hero,.tss-bk-hero{padding-top:162px!important}}img.tss-gc-thumb{height:auto!important;aspect-ratio:auto!important;object-fit:contain!important}
