/* hubv7: shared offers (.zo7), compact club list, FAQ help card without mascot */
html body section#offers.zo7:not(#_):not(#_) .zo-slot{display:none}
html body section#offers.zo7:not(#_):not(#_) .zo-pk{position:absolute;right:28px;bottom:100%;width:126px;height:91px;overflow:hidden;pointer-events:none;z-index:0;contain:strict}
html body section#offers.zo7:not(#_):not(#_) .zo-ph{display:block;width:100%;height:100%;visibility:hidden;background:0 0/700% 200% no-repeat}
html body section#offers.zo7.pk-ld:not(#_):not(#_) .zo-ph{background-image:url(assets/m/peek/offers-peek-n3c.webp?v=nov3col1)}
@media(prefers-reduced-motion:reduce){html body section#offers.zo7:not(#_):not(#_) .zo-pk{display:none!important}}
html body section#offers.zo7:not(#_):not(#_) .zo-sheet:has(>.zo-cp:only-of-type){grid-template-columns:1fr}
html body section#offers.zo7:not(#_):not(#_) .zo-endw{display:flex;flex-direction:column;gap:8px;min-width:0}
html body section#offers.zo7:not(#_):not(#_) .zo-note{margin:0;font-size:13px;line-height:1.45;color:var(--mut,#5a6078)}
html body section#offers.zo7:not(#_):not(#_) .zo-ft .btn{white-space:nowrap}
@media(max-width:1023px){html body section#offers.zo7:not(#_):not(#_) .zo-endw{align-items:center;text-align:center}}
/* club: one compact vertical list */
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-perks{display:flex!important;flex-direction:column!important;gap:12px!important;grid-template-columns:none!important;margin:0!important;padding:0!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-perks li{display:flex!important;flex-direction:row!important;align-items:center!important;gap:12px!important;padding:0!important;background:none!important;min-height:0!important;border:0!important;box-shadow:none!important;font-size:16px!important;line-height:1.35!important;text-align:left!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-perks li .h4-ti{flex:0 0 36px!important;width:36px!important;height:36px!important;margin:0!important;display:grid!important;place-items:center!important;border-radius:10px!important;background:#F3F6FC!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-perks li .h4-ti svg{width:20px!important;height:20px!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-ctas{display:flex!important;flex-wrap:wrap!important;gap:12px!important;grid-template-columns:none!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-ctas .btn{flex:1 1 auto!important;min-width:0!important;width:auto!important;padding:0 28px!important;white-space:nowrap!important;justify-content:center!important}
/* FAQ help card: no mascot, text + buttons fill */
html body #faq .fqcall.fqcall:not(#_):not(#_):not(#_){display:block!important;grid-template-columns:none!important;padding:20px!important;min-height:0!important;height:auto!important}
html body #faq .fqcall.fqcall:not(#_):not(#_):not(#_)>div{display:block!important;width:100%!important;margin:0!important;padding:0!important}
html body #faq .fqcall.fqcall:not(#_):not(#_):not(#_) .fqk{margin:0 0 4px!important;text-align:left!important}
html body #faq .fqcall.fqcall:not(#_):not(#_):not(#_)>div>p:not(.fqk){margin:0 0 14px!important;text-align:left!important}
html body #faq .fqcall.fqcall:not(#_):not(#_):not(#_) .ctas{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:10px!important;margin:0!important;width:100%!important}
html body #faq .fqcall.fqcall:not(#_):not(#_):not(#_) .ctas .btn{flex:1 1 200px!important;width:auto!important;margin:0!important;padding:0 18px!important;white-space:nowrap!important;justify-content:center!important}
html body section#offers.zo7 .r7sub{display:block;margin-top:.45em;font-family:var(--display,Saira),sans-serif;font-size:clamp(16px,1.7vw,21px);font-weight:600;line-height:1.3;letter-spacing:0;text-transform:none;opacity:.86;text-wrap:balance}
@media(max-width:699px){html body section#offers.zo7 .zo-hd .eb,html body section#offers.zo7 .zo-hd h2,html body section#offers.zo7 .zo-hd .r7sub,html body section#offers.zo7 .zo-hd .intro{text-wrap:wrap!important;max-width:none!important;padding-right:0!important}
html body section#offers.zo7 .zo-hd .intro b{white-space:nowrap}}
html body section#offers.zo7:not(#_):not(#_) .zo-hd{margin-bottom:100px!important}
/* hubv7b: compact Comfort Club card */
html body .h1-club .h4-mc:not(#_):not(#_):not(#_){max-width:520px!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-mch{padding:8px 16px!important;gap:10px!important;font-size:12px!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-mch img{width:30px!important;height:30px!important;margin:0!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-mch span{padding:3px 8px!important;font-size:10px!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-mcb{padding:12px 16px 10px!important;gap:0!important;display:block!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-perks{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px 12px!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-perks li{gap:8px!important;font-size:14px!important;line-height:1.25!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-perks li .h4-ti{flex:0 0 28px!important;width:28px!important;height:28px!important;border-radius:8px!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-perks li .h4-ti svg{width:16px!important;height:16px!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-mcf{padding:10px 16px 2px!important;gap:0 16px!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-ctas{gap:8px!important;flex-wrap:wrap!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-ctas .btn{min-height:44px!important;height:44px!important;padding:0 20px!important;flex:1 1 auto!important;font-size:15px!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .pmore a{min-height:44px!important;font-size:14px!important}
@media(max-width:420px){html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-perks li{font-size:13px!important}}
/* Home club box */
html body #offers .club:not(#_){padding:16px 20px!important;gap:12px 20px!important;margin-top:24px!important}
html body #offers .club:not(#_) h3{display:flex!important;align-items:center!important;gap:10px!important;font-size:22px!important;margin:2px 0 6px!important}
html body #offers .club:not(#_) h3 img{width:30px;height:30px;flex:none}
html body #offers .club:not(#_) .eb{margin:0!important}
html body #offers .club:not(#_) .clubc{margin:0 0 6px!important;font-size:14px!important}
html body #offers .club:not(#_) ul{display:grid!important;grid-template-columns:repeat(2,minmax(0,max-content))!important;gap:4px 20px!important;font-size:14px!important}
html body #offers .club:not(#_) li{white-space:normal!important}
html body #offers .club:not(#_) .btn{min-height:44px!important;height:44px!important;padding:0 20px!important}
@media(max-width:1099px){html body #offers .club:not(#_) ul{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){html body #offers .club:not(#_) .clubc{white-space:normal!important}html body #offers .club:not(#_) ul{font-size:13px!important}}
/* hubv8c: offers peek tucked lower: card top edge cuts at the eye line (cell y~208/274), mouth/chin stay hidden behind the card, antennas fully visible */
html body section#offers.zo7:not(#_):not(#_) .zo-pk{bottom:calc(100% - 16px);clip-path:inset(0 0 16px 0)}
/* hubv8c: shared club block (_inc/club.html): no full-body mascot, text column centred; card-header head wobble */
html body .h1-club:not(#_):not(#_) .ab-ph{display:block!important;align-self:center!important;margin:0!important}
html body .h1-club:not(#_):not(#_):not(#_):not(#_) .ab-ph>div{display:block!important;max-width:520px;align-self:center!important;grid-row:1/-1!important}
html body .h1-club:not(#_):not(#_) .ab-ph>div>.pp.intro{margin-top:16px!important;margin-bottom:0!important}
@keyframes h4pul{0%,100%{transform:scale(1) rotate(-2deg)}50%{transform:scale(2) rotate(2deg)}}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-mch img{position:relative;z-index:2;transform-origin:50% 50%;margin-right:15px!important;animation:h4pul 1.9s ease-in-out infinite;animation-play-state:paused;will-change:transform}
html body .h1-club .h4-mc.h4-pl:not(#_):not(#_):not(#_) .h4-mch img{animation-play-state:running}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_),html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-mch{overflow:visible!important}
/* hubv8c2: perks = one vertical list at every width, icon left, text right */
html body .h1-club .h4-mc:not(#_):not(#_):not(#_):not(#_) .h4-perks{display:flex!important;flex-direction:column!important;grid-template-columns:none!important;gap:10px!important}
html body .h1-club .h4-mc:not(#_):not(#_):not(#_):not(#_) .h4-perks li{display:flex!important;flex-direction:row!important;align-items:center!important;text-align:left!important;justify-content:flex-start!important}
@media(prefers-reduced-motion:reduce){html body .h1-club .h4-mc:not(#_):not(#_):not(#_) .h4-mch img{animation:none!important;transform:none!important}}
/* hubv8c: shared FAQ (Home + hubs): both columns stretch; photo fills the leftover height so the call card bottom = last question bottom */
@media(min-width:900px){html body #faq.sec:not(#_):not(#_):not(#_) .fqw{align-items:stretch!important}
html body #faq.sec:not(#_):not(#_):not(#_) .fql{position:relative!important;top:auto!important;align-self:stretch!important;display:flex!important;flex-direction:column!important;height:auto!important;margin-bottom:0!important}
html body #faq.sec:not(#_):not(#_):not(#_) .fq-photo{position:relative!important;inset:auto!important;flex:1 1 0!important;min-height:220px!important;height:auto!important;margin:0!important}
html body #faq.sec:not(#_):not(#_):not(#_) .fq-photo picture{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important}
html body #faq.sec:not(#_):not(#_):not(#_) .fq-photo img:not(.m-peek){width:100%!important;height:100%!important;min-height:0!important;object-fit:cover!important}
html body #faq.sec:not(#_):not(#_):not(#_) .fqcall{flex:0 0 auto!important;margin-bottom:0!important}
html body #faq.sec:not(#_):not(#_):not(#_) .fqs{align-self:stretch!important;margin-bottom:0!important;padding-bottom:0!important}
html body #faq.sec:not(#_):not(#_):not(#_) .fqs>.seeall{display:none!important}}
/* ac-promos: offers footer = countdown + small end date on one line; 3-card A/C sheet ($50 OFF card) */
html body section#offers.zo7:not(#_):not(#_) .zo-endr{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:12px;row-gap:2px;min-width:0}
html body section#offers.zo7:not(#_):not(#_) .zo-endd{font-size:12px;line-height:1.3;color:var(--mut,#5a6078)}
@media(max-width:1023px){html body section#offers.zo7:not(#_):not(#_) .zo-endr{justify-content:center}}
html body section#offers.zo7:not(#_):not(#_) .zo-off{font-size:.5em;letter-spacing:.02em;margin-left:.1em}
html body section#offers.zo7:not(#_):not(#_) .zo-p3 .zo-pr{flex-wrap:wrap;row-gap:6px}
html body section#offers.zo7:not(#_):not(#_) .zo-p3 .zo-was{flex:1 0 100%;padding-bottom:0}
@media(min-width:1024px){html body section#offers.zo7:not(#_):not(#_) .zo-sheet:has(.zo-p3) .zo-pr{flex-wrap:wrap;align-content:flex-start;min-height:102px}}
html body section#offers.zo7:not(#_):not(#_) .zo-p3 .zo-seal{order:2}
html body section#offers.zo7:not(#_):not(#_) .zo-p3 .zo-was{order:3}
