/* hubv6 hub overrides (loaded last on the 3 hubs) */
/* 7: pill + note together, no empty gap below */
html body.t-hub1 .h4-endw:not(#_):not(#_){display:flex;flex-direction:column;align-items:flex-start;gap:8px}
html body.t-hub1 .h4-endw .pnote:not(#_):not(#_){margin:0;font-size:14px;color:var(--mut,#55607a)}
html body.t-hub1 .h4-off .wrap:not(#_)>:last-child{margin-bottom:0}
@media(max-width:699px){html body.t-hub1 .h4-endw:not(#_):not(#_){align-items:center;text-align:center;width:100%}}
/* 10: Why CTAs + About link on one row */
html body.t-hub1 .h4-crow:not(#_):not(#_){display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;margin-top:24px}
html body.t-hub1 .h4-crow .h4-ctas:not(#_):not(#_){margin:0}
html body.t-hub1 .h4-crow .pmore:not(#_):not(#_){margin:0}
html body.t-hub1 .h4-crow .pmore a:not(#_){display:inline-flex;align-items:center;min-height:44px}
@media(max-width:699px){html body.t-hub1 .h4-crow:not(#_):not(#_){flex-direction:column;align-items:stretch}html body.t-hub1 .h4-crow .pmore:not(#_):not(#_){text-align:center}}
/* 5+4: after-hours mascot in the heading-row slot. Absolute (no layout shift); the slot is reserved on the h2/eyebrow.
   JS adds .go (sprite, 3 loops = 5s, then holds the last frame via the base position) or .st (reduced-motion still) once in view. */
html body.t-hub1 .h4-ahw:not(#_){position:relative}
html body.t-hub1 .h4-run:not(#_){display:block;position:absolute;top:0;right:max(20px,var(--g,20px));top:18px;width:72px;aspect-ratio:218/246;pointer-events:none;background:no-repeat 100% 100%/500% 400%}
html body.t-hub1 .h4-ahw>.eb:not(#_),html body.t-hub1 .h4-ahw>h2:not(#_){padding-right:84px}
html body.t-hub1 .h4-run.go:not(#_){background-image:url(assets/m/after-hours-run-n3fd.webp?v=nov4fl2);animation:ahx .41667s steps(5) 12,ahy 1.66667s steps(4) 3}
html body.t-hub1 .h4-run.st:not(#_){background:url(assets/m/after-hours-run-still-n3c.webp?v=nov3col1) 0 0/100% 100% no-repeat;animation:none}
@keyframes ahx{from{background-position-x:0}to{background-position-x:125%}}
@keyframes ahy{from{background-position-y:0}to{background-position-y:133.333%}}
@media(prefers-reduced-motion:reduce){html body.t-hub1 .h4-run.go:not(#_){animation:none;background:url(assets/m/after-hours-run-still-n3c.webp?v=nov3col1) 0 0/100% 100% no-repeat}}
@media(min-width:900px){html body.t-hub1 .h4-run:not(#_){width:96px;top:-17px}html body.t-hub1 .h4-ahw>.eb:not(#_),html body.t-hub1 .h4-ahw>h2:not(#_){padding-right:120px}}
/* 9: compact club card */
html body.t-hub1 .h4-mc6:not(#_):not(#_){max-width:440px;width:100%;justify-self:end;align-self:center}
html body.t-hub1 .h4-mc6 .h4-mcb:not(#_):not(#_){padding:20px}
html body.t-hub1 .h4-mc6 .h4-perks:not(#_):not(#_){grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}
html body.t-hub1 .h4-mc6 .h4-perks li:not(#_):not(#_){flex-direction:column;align-items:flex-start;gap:8px;font-size:15px;background:#f4f7fc;border-radius:12px;padding:12px}
html body.t-hub1 .h4-mc6 .h4-mcf:not(#_):not(#_){padding:16px 20px 20px}
html body.t-hub1 .h4-mc6 .h4-mcf .h4-ctas:not(#_):not(#_){width:100%}
html body.t-hub1 .h4-mc6 .h4-mcf .h4-ctas .btn:not(#_):not(#_){flex:1 1 0;min-width:0;white-space:nowrap}
@media(max-width:899px){html body.t-hub1 .h4-mc6:not(#_):not(#_){justify-self:center;margin-left:auto;margin-right:auto}}
@media(max-width:379px){html body.t-hub1 .h4-mc6 .h4-perks:not(#_):not(#_){grid-template-columns:minmax(0,1fr)}html body.t-hub1 .h4-mc6 .h4-perks li:not(#_):not(#_){flex-direction:row;align-items:center}}
/* 14: related services centred, new pills */
html body.t-hub1.t-hub1.t-svc1 .prel .prh:not(#_):not(#_):not(#_){text-align:center;margin:0 auto 20px!important}
html body.t-hub1.t-hub1.t-svc1 .prel .pchips:not(#_):not(#_):not(#_){display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:12px!important;max-width:900px;margin:0 auto!important;padding:0;list-style:none}
html body.t-hub1.t-hub1.t-svc1 .prel .pchips li:not(#_):not(#_):not(#_){flex:0 1 auto!important;margin:0}
html body.t-hub1.t-hub1.t-svc1 .prel .pchips a:not(#_):not(#_):not(#_){width:auto!important;min-height:52px;padding:0 22px!important;border-radius:14px;border:0;background:var(--ink);color:#fff;font-size:15px;font-weight:800;gap:10px;box-shadow:0 6px 16px rgba(0,5,62,.18);transition:background .15s,transform .15s}
html body.t-hub1.t-hub1.t-svc1 .prel .pchips a:not(#_):not(#_):not(#_):hover,html body.t-hub1.t-hub1.t-svc1 .prel .pchips a:not(#_):not(#_):not(#_):focus-visible{background:var(--blue);transform:translateY(-1px)}
@media(max-width:699px){html body.t-hub1.t-hub1.t-svc1 .prel .pchips li:not(#_):not(#_):not(#_){flex:1 1 calc(50% - 6px)!important}html body.t-hub1.t-hub1.t-svc1 .prel .pchips a:not(#_):not(#_):not(#_){width:100%!important;justify-content:center;padding:0 10px!important;font-size:14px;white-space:normal!important;text-align:center}}
/* 3: identical hero height on all 3 hubs: min-height = tallest hub hero at every width (fitted from hv6/hero2.json) */
@media (max-width:359.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(740.0px + 56.053vw);box-sizing:border-box}}
@media (min-width:360px) and (max-width:399.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(946.4px + 0.000vw);box-sizing:border-box}}
@media (min-width:400px) and (max-width:439.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(691.1px + 56.316vw);box-sizing:border-box}}
@media (min-width:440px) and (max-width:479.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(691.1px + 56.316vw);box-sizing:border-box}}
@media (min-width:480px) and (max-width:519.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(691.0px + 56.316vw);box-sizing:border-box}}
@media (min-width:520px) and (max-width:559.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(962.7px + 0.000vw);box-sizing:border-box}}
@media (min-width:560px) and (max-width:599.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(631.1px + 56.316vw);box-sizing:border-box}}
@media (min-width:600px) and (max-width:639.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(631.1px + 56.316vw);box-sizing:border-box}}
@media (min-width:640px) and (max-width:679.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(631.0px + 56.316vw);box-sizing:border-box}}
@media (min-width:680px) and (max-width:719.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(1024.0px + 0.000vw);box-sizing:border-box}}
@media (min-width:720px) and (max-width:759.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(118.6px + 95.789vw);box-sizing:border-box}}
@media (min-width:760px) and (max-width:799.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(739.1px + 13.947vw);box-sizing:border-box}}
@media (min-width:800px) and (max-width:839.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(737.0px + 14.211vw);box-sizing:border-box}}
@media (min-width:840px) and (max-width:879.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(737.0px + 14.211vw);box-sizing:border-box}}
@media (min-width:880px) and (max-width:919.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(864.5px + 0.000vw);box-sizing:border-box}}
@media (min-width:920px) and (max-width:959.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(586.9px + 14.211vw);box-sizing:border-box}}
@media (min-width:960px) and (max-width:999.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(586.8px + 14.211vw);box-sizing:border-box}}
@media (min-width:1000px) and (max-width:1039.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(586.8px + 14.211vw);box-sizing:border-box}}
@media (min-width:1040px) and (max-width:1079.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(586.8px + 14.211vw);box-sizing:border-box}}
@media (min-width:1080px) and (max-width:1119.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(589.6px + 13.947vw);box-sizing:border-box}}
@media (min-width:1120px) and (max-width:1159.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(589.7px + 13.947vw);box-sizing:border-box}}
@media (min-width:1160px) and (max-width:1199.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(589.7px + 13.947vw);box-sizing:border-box}}
@media (min-width:1200px) and (max-width:1239.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(409.7px + 28.947vw);box-sizing:border-box}}
@media (min-width:1240px) and (max-width:1279.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(409.8px + 29.474vw);box-sizing:border-box}}
@media (min-width:1280px) and (max-width:1319.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(780.6px + 0.000vw);box-sizing:border-box}}
@media (min-width:1320px) and (max-width:1359.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(780.6px + 0.000vw);box-sizing:border-box}}
@media (min-width:1360px) and (max-width:1399.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:max(calc(-1695.4px + 184.737vw),846px);box-sizing:border-box}}
@media (min-width:1400px) and (max-width:1439.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(586.0px + 18.947vw);box-sizing:border-box}}
@media (min-width:1440px) and (max-width:1479.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(589.7px + 18.684vw);box-sizing:border-box}}
@media (min-width:1480px) and (max-width:1519.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(723.9px + 9.737vw);box-sizing:border-box}}
@media (min-width:1520px) and (max-width:1559.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(870.0px + 0.000vw);box-sizing:border-box}}
@media (min-width:1560px) and (max-width:1599.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(870.0px + 0.000vw);box-sizing:border-box}}
@media (min-width:1600px) and (max-width:1639.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(870.0px + 0.000vw);box-sizing:border-box}}
@media (min-width:1640px) and (max-width:1679.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(870.0px + 0.000vw);box-sizing:border-box}}
@media (min-width:1680px) and (max-width:1719.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(870.0px + 0.000vw);box-sizing:border-box}}
@media (min-width:1720px) and (max-width:1759.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(870.0px + 0.000vw);box-sizing:border-box}}
@media (min-width:1760px) and (max-width:1799.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(870.0px + 0.000vw);box-sizing:border-box}}
@media (min-width:1800px) and (max-width:1839.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(870.0px + 0.000vw);box-sizing:border-box}}
@media (min-width:1840px) and (max-width:1879.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(870.0px + 0.000vw);box-sizing:border-box}}
@media (min-width:1880px) and (max-width:1919.98px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(870.0px + 0.000vw);box-sizing:border-box}}
@media (min-width:1920px){html body.t-hub1 .hero.svc-hero:not(#_):not(#_){min-height:calc(870.0px + 0.000vw);box-sizing:border-box}}
/* item 5: balance steps - top-align icon+text so titles line up across the 3 cards */
@media(min-width:700px){html body.t-hub1 .h4-steps.h>li:not(#_):not(#_){align-content:start;grid-template-rows:auto auto 1fr}}


/* hubv6b a: after-hours mascot in a grid column beside the heading+intro (no abs positioning) */
html body.t-hub1 .h4-ahw:not(#_):not(#_){display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:16px}
html body.t-hub1 .h4-ahw:not(#_):not(#_)>*{grid-column:1/-1}
html body.t-hub1 .h4-ahw:not(#_):not(#_)>.eb{grid-column:1;grid-row:1}
html body.t-hub1 .h4-ahw:not(#_):not(#_)>h2{grid-column:1;grid-row:2;padding-right:0}
html body.t-hub1 .h4-ahw:not(#_):not(#_)>.eb{padding-right:0}
html body.t-hub1 .h4-ahw:not(#_):not(#_)>.h4-lead{grid-row:3}
html body.t-hub1 .h4-run:not(#_):not(#_){position:static;grid-column:2;grid-row:1/3;align-self:center;width:98px;height:auto;margin:0}
@media(min-width:900px){
html body.t-hub1 .h4-ahw:not(#_):not(#_){column-gap:48px}
html body.t-hub1 .h4-ahw:not(#_):not(#_)>.h4-lead{grid-column:1}
html body.t-hub1 .h4-run:not(#_):not(#_){grid-row:1/4;width:150px;margin:8px 24px 8px 0}}
/* hubv6b b: steps hug their content; the three stay equal (same grid row) */
@media(min-width:700px){html body.t-hub1 .h4-ahg:not(#_):not(#_){align-items:start}}
/* hubv6b a mobile: mascot above the heading, right side, eyebrow sits on its baseline */
@media(max-width:899.98px){html body.t-hub1 .h4-ahw:not(#_):not(#_)>h2{grid-column:1/-1}
html body.t-hub1 .h4-ahw:not(#_):not(#_)>.eb{align-self:end;margin-bottom:6px}
html body.t-hub1 .h4-run:not(#_):not(#_){grid-row:1;align-self:end;margin-bottom:4px}}
/* v8e club: perks 2x2, rounded header */
html body .h1-club .h4-mc:not(#_):not(#_):not(#_):not(#_):not(#_) .h4-perks{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;flex-direction:initial!important;gap:10px 16px!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_):not(#_):not(#_) .h4-mch{border-radius:20px 20px 0 0!important}
@media(max-width:420px){html body .h1-club .h4-mc:not(#_):not(#_):not(#_):not(#_):not(#_) .h4-perks{grid-template-columns:minmax(0,1fr)!important}}
/* v8e after hours: steps match the dispatch box */
@media(min-width:1000px){html body.t-hub1 .h4-ahg.ah-eq:not(#_):not(#_):not(#_):not(#_):not(#_){align-items:stretch}
html body.t-hub1 .h4-ahg.ah-eq:not(#_):not(#_):not(#_):not(#_):not(#_)>.h4-steps{align-items:stretch;height:100%}}
html body.t-hub1 .h4-ahg.ah-eq:not(#_):not(#_):not(#_):not(#_):not(#_) .h4-steps>li>div{display:flex;flex-direction:column;height:100%}
html body.t-hub1 .h4-ahg.ah-eq:not(#_):not(#_):not(#_):not(#_):not(#_) .h4-steps .h4-tip{margin:10px 0 0;font-size:14px;line-height:1.4;color:#c9d3ea}
html body.t-hub1 .h4-ahg.ah-eq:not(#_):not(#_):not(#_):not(#_):not(#_) .h4-steps .h4-dr{margin:auto 0 0;padding-top:10px;border-top:1px solid rgba(255,255,255,.12);font:700 12px/1.3 Saira,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--y)}
html body.t-hub1 .h4-ahg.ah-eq:not(#_):not(#_):not(#_):not(#_):not(#_) .h4-steps .h4-tip+.h4-dr{margin-top:auto}
html body.t-hub1 .h4-ahg.ah-eq:not(#_):not(#_):not(#_):not(#_):not(#_) .h4-steps p.h4-tip{margin-bottom:12px}
