/* Guard: ghost buttons inside light cards must never inherit the on-dark (white) treatment */
.uf-sec:not(.ink) .cl-card:not(.dark) .uf-btn.on-dark.ghost{color:var(--ink)!important;border-color:var(--line)!important;background:transparent!important}
.uf-sec:not(.ink) .cl-card:not(.dark) .uf-btn.on-dark.ghost:hover{background:var(--grad)!important;color:#fff!important;border-color:transparent!important}



/* ===== UF layout fixes (Sept 2026) ===== */
/* hero copy lines up with the section grid instead of floating in a centred 900px box */
.uf-hero-lite .uf-wrap{max-width:none}
.uf-hero-lite .uf-wrap>h1,.uf-hero-lite .uf-wrap>h2,.uf-hero-lite .uf-wrap>p:not(.uf-eyebrow){max-width:900px}
/* card text: consistent muted body colour whether or not the source wrapped it in <p> */
.uf-blurb,.uf-card-solo{color:var(--muted)}
.uf-blurb h4,.uf-card-solo h4,.uf-blurb strong,.uf-card-solo strong{color:var(--ink)}
.uf-sec.ink .uf-blurb,.uf-sec.ink .uf-card-solo{color:#c9c9d2}
.uf-sec.ink .uf-blurb h4,.uf-sec.ink .uf-card-solo h4{color:#fff}
.uf-blurb ul,.uf-card-solo ul,.cl-card ul{margin:.6rem 0 0;padding-left:1.15rem}
.uf-blurb li,.uf-card-solo li{margin:.15rem 0}
.uf-blurb>p+p,.uf-card-solo>p+p{margin-top:.5rem}
/* 2- and 4-card rows: fill the row instead of leaving a centred orphan */
@media(min-width:768px){
  .uf-cardgrid:has(>:nth-child(2):last-child)>*,.uf-cardgrid:has(>:nth-child(4):last-child)>*{flex-basis:calc(50% - 9px);max-width:calc(50% - 9px)}
}
/* numbered steps */
.uf-steps{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.uf-step h4{margin:.35rem 0 .4rem;font-size:1.05rem}
.uf-step p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.55}
.uf-sec.ink .uf-step{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12);color:#fff}
.uf-sec.ink .uf-step p{color:#c9c9d2}
/* pricing / plan tiers rebuilt from flattened tables */
.uf-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin:26px 0 8px;align-items:stretch}
.uf-tier{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px 26px 26px;box-shadow:0 12px 30px rgba(21,23,28,.06);transition:transform .3s,box-shadow .3s}
.uf-tier:hover{transform:translateY(-5px);box-shadow:0 24px 54px rgba(21,23,28,.12)}
.uf-tier.featured{border-color:var(--accent);box-shadow:0 18px 44px rgba(224,43,32,.14)}
.uf-tier .uf-eyebrow{margin:0 0 .5rem}
.uf-tier h3,.uf-tier h4{font-size:1.3rem;margin:0 0 .35rem;color:var(--ink)}
.uf-tier .price{font-family:var(--fd);font-weight:900;font-size:2rem;letter-spacing:-.02em;color:var(--ink);margin:.1rem 0 .5rem;line-height:1}
.uf-tier .price small{font-size:.95rem;font-weight:700;color:var(--muted);letter-spacing:0}
.uf-tier .desc{color:var(--ink2);margin:0 0 .9rem;line-height:1.55}
.uf-tier ul{list-style:none;margin:0 0 1.1rem;padding:0;display:grid;gap:.45rem}
.uf-tier li{position:relative;padding-left:1.45rem;color:var(--ink2);line-height:1.45}
.uf-tier li::before{content:"";position:absolute;left:0;top:.42em;width:.85rem;height:.85rem;border-radius:50%;background:var(--grad);opacity:.9}
.uf-tier li::after{content:"";position:absolute;left:.27rem;top:.62em;width:.32rem;height:.18rem;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}
.uf-tier .uf-btn{margin-top:auto;align-self:flex-start}
.uf-tier .note{margin:.8rem 0 0;font-size:.85rem;color:var(--muted)}
.uf-sec.ink .uf-tier{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12)}
.uf-sec.ink .uf-tier h3,.uf-sec.ink .uf-tier h4,.uf-sec.ink .uf-tier .price,.uf-sec.ink .uf-tier li{color:#fff}
.uf-sec.ink .uf-tier .desc{color:#c9c9d2}
/* FAQ: one chevron, vertically centred (the "+"/chevron rules were both applying) */
details.uf-faq summary{position:relative;padding-right:40px;display:block}
details.uf-faq summary::after{content:""!important;position:absolute;right:8px;top:calc(50% - 8px);width:11px;height:11px;border-right:2.5px solid var(--accent);border-bottom:2.5px solid var(--accent);transform:rotate(45deg);transition:transform .25s}
details.uf-faq[open] summary::after{transform:rotate(225deg);top:calc(50% - 3px)}
/* tag pills that were rendering as run-together words */
.uf-tags,.cl-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:.7rem}
.uf-tags>*,.cl-tags>*{display:inline-block;padding:4px 10px;border-radius:999px;background:var(--paper);border:1px solid var(--line);font-size:.78rem;font-weight:700;color:var(--ink2)}
.uf-hero .pills,.uf-hero-pills{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:14px;font-size:.9rem}
.uf-cta-row+.uf-eyebrow,.uf-cta-row+.uf-cardgrid,.uf-cta-row+.uf-tiers{margin-top:30px}
.uf-tiers.compact{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.uf-tiers.compact .uf-tier{padding:22px 22px 20px}
.uf-tiers.compact .price{font-size:1.6rem}
.uf-blurb ul.feat{list-style:none;padding:0;margin:.7rem 0 0;display:grid;gap:.35rem}
.uf-blurb ul.feat li{position:relative;padding-left:1.2rem}
.uf-blurb ul.feat li::before{content:"";position:absolute;left:0;top:.5em;width:.5rem;height:.5rem;border-radius:50%;background:var(--accent)}
/* comparison tables restored from the live site */
.uf-tablewrap{overflow-x:auto;margin:26px 0 6px;border:1px solid var(--line);border-radius:16px;background:#fff}
.uf-table{width:100%;border-collapse:collapse;font-size:.93rem}
.uf-table th,.uf-table td{padding:13px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.uf-table thead th{background:var(--ink);color:#fff;font-family:var(--fd);font-weight:800;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}
.uf-table tbody th{font-weight:700;color:var(--ink);width:22%}
.uf-table tbody td{color:var(--ink2)}
.uf-table tbody tr:nth-child(even){background:var(--paper)}
.uf-table tbody tr:last-child th,.uf-table tbody tr:last-child td{border-bottom:0}
.uf-blurb .tag{display:inline-block;margin-top:.7rem;padding:4px 10px;border-radius:999px;background:var(--paper);border:1px solid var(--line);font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink2)}
/* short check-style facts render as pills instead of empty-looking boxes */
.uf-cardgrid.pills{justify-content:flex-start;gap:10px;margin:18px 0 0}
.uf-cardgrid.pills>*{flex:0 0 auto!important;max-width:none!important;padding:10px 16px;border-radius:999px}
.uf-cardgrid.pills h4{margin:0;font-size:.9rem;font-weight:700}
.uf-sec.ink .uf-cardgrid.pills>*{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16)}
/* ===== /UF layout fixes ===== */
.cl-cards2,.cl-cards3{display:grid;gap:20px}
.cl-cards3{grid-template-columns:repeat(3,1fr)}
.cl-cards2{grid-template-columns:repeat(2,1fr)}
@media(max-width:860px){.cl-cards3,.cl-cards2{grid-template-columns:1fr}.cl-hero .uf-wrap{grid-template-columns:1fr}}
.cl-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px}
.cl-card.dark{background:#141418;border:1px solid rgba(255,255,255,.1);color:#fff}
.cl-card h4{margin:.1rem 0 .5rem;font-size:1.12rem}
.cl-card p{color:var(--muted);line-height:1.6;margin:.3rem 0}
.cl-card.dark p,.uf-sec.ink .cl-card p{color:#c4c4cc}
.cl-card .uf-btn{margin-top:16px}
.cl-cardbtns{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.cl-card{display:flex;flex-direction:column}
.cl-card,.cl-tier,.cl-step,.cl-tag,.cl-contact,.cl-gtile img{transition:transform .38s cubic-bezier(.2,.7,.2,1),box-shadow .38s ease,border-color .3s ease,color .3s ease,background .3s ease}
.cl-card:hover{transform:translateY(-6px);box-shadow:0 26px 58px rgba(0,0,0,.12);border-color:#d7d7de}
.cl-card.cl-c{text-align:center;align-items:center}
.cl-card.cl-c .pill{margin-left:auto;margin-right:auto}
.cl-card.cl-c .cl-cardbtns{justify-content:center}
.cl-card.cl-c .cl-tags{justify-content:center}

/* ===== links / forms / anchors (Sept 20) ===== */
[id]{scroll-margin-top:120px}
.uf-anchor{display:block;height:0;scroll-margin-top:120px}
.uf-sec>.uf-wrap>span[id]:empty{display:block;height:0;scroll-margin-top:230px}
.cl-card .lnk{display:inline-block;margin-top:12px;color:var(--accent);font-weight:700;font-size:.9rem}
.cl-card p a{color:inherit;text-decoration:none}
.cl-card p a:hover{color:var(--accent)}
.uf-lead-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px;max-width:760px}
.uf-lead-form .full{grid-column:1/-1}
.uf-lead-form input,.uf-lead-form select,.uf-lead-form textarea{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:12px;font:inherit;font-size:.95rem;background:#fff;color:var(--ink)}
.uf-lead-form textarea{min-height:96px;resize:vertical}
.uf-lead-form input:focus,.uf-lead-form select:focus,.uf-lead-form textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}
.uf-sec.ink .uf-lead-form input,.uf-sec.ink .uf-lead-form select,.uf-sec.ink .uf-lead-form textarea,.cl-form input,.cl-form select,.cl-form textarea{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:#fff}
.uf-sec.ink .uf-lead-form option,.cl-form option{color:#111}
.uf-consent{display:flex;gap:10px;align-items:flex-start;font-size:.82rem;line-height:1.45;color:var(--muted);cursor:pointer}
.uf-consent input{width:auto;margin-top:3px;flex:0 0 auto}
.uf-sec.ink .uf-consent,.cl-form .uf-consent{color:#c9c9d2}
.uf-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0}
.uf-lead-status{grid-column:1/-1;margin:4px 0 0;font-weight:700;font-size:.92rem;min-height:1.2em}
.uf-lead-status.ok{color:#1a8f3a}.uf-lead-status.err{color:var(--accent)}
.uf-lead-form.is-sending .uf-btn{opacity:.6;pointer-events:none}
.uf-lead-form.is-done>*:not(.uf-lead-status){display:none}
.uf-lead-form.is-done .uf-lead-status{font-size:1.05rem}
.uf-lead-form.cl-form,.uf-lead-form.uf-ready-form{max-width:none}
.cl-card .cl-cardbtns{gap:8px}
.cl-card .cl-cardbtns .uf-btn.sm{padding:9px 13px;font-size:.73rem;letter-spacing:.02em;white-space:nowrap}
@media(max-width:980px){.uf-lead-form{grid-template-columns:1fr}}
/* mobile: comparison tables scroll inside their frame instead of widening the page */
.uf-tablewrap{max-width:100%;-webkit-overflow-scrolling:touch}
a[href^="mailto:"],a[href^="tel:"]{overflow-wrap:anywhere;word-break:break-word}
/* club addresses are links to Google Maps (matching live); inherit the block's colour so the
   info card / contact block designs are unchanged, and only reveal the underline on interaction */
a.uf-addr-link{color:inherit;text-decoration:none;border-bottom:1px solid rgba(127,127,127,.45)}
a.uf-addr-link:hover,a.uf-addr-link:focus-visible{text-decoration:underline;border-bottom-color:transparent}
/* --- restored Divi elements: icons, checklists, numbered circles, label pills, chips --- */
.uf-i{width:1.15em;height:1.15em;flex:0 0 auto;vertical-align:-.2em}
.uf-ico{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:14px;margin-bottom:14px;color:var(--accent);background:rgba(224,24,35,.08)}
.uf-ico .uf-i{width:26px;height:26px}
.ink .uf-ico{background:rgba(255,255,255,.08)}
.uf-ico-img{width:52px;height:52px;object-fit:contain;margin-bottom:14px}

/* renderer card chrome — was only in some pages' own <style>; the home page (and 3 others) used the classes without it */
.uf-cardgrid{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin:24px 0}
.uf-cardgrid>*{flex:1 1 260px}
.uf-blurb{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px 22px 20px}
.uf-sec.ink .uf-blurb{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12)}
.uf-blurb h4{margin:0 0 8px;font-size:1.05rem}
.uf-blurb p{margin:0;color:var(--muted)}
.uf-sec.ink .uf-blurb p{color:#c9c9d2}
.uf-faqs{max-width:840px;margin:20px 0}
.uf-cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.uf-sec .uf-wrap>p{max-width:760px;line-height:1.7}
.uf-card-solo h4{margin:0 0 8px;font-size:1.08rem}
.uf-card-solo p{margin:0;color:var(--muted)}
.uf-sec.ink .uf-card-solo{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12)}
.uf-sec.ink .uf-card-solo p{color:#c9c9d2}
.uf-blurb .lnk,.uf-card-solo .lnk{display:inline-block;margin-top:12px;color:var(--accent);font-weight:700;text-decoration:none;font-size:.9rem}
.uf-hero-lite .uf-wrap{max-width:900px}
/* FAQ on dark sections: question text must be white, not ink-on-ink */
.uf-sec.ink .uf-faq summary{color:#fff}
.uf-sec.ink .uf-faq summary:hover{color:var(--accent)}
.uf-sec.ink .uf-faq .a,.uf-sec.ink .uf-faq p,.uf-sec.ink .uf-faq li{color:#c9c9d2}
.uf-sec.ink .uf-faq,.uf-sec.ink .uf-faq:last-of-type{border-color:rgba(255,255,255,.22)}
.uf-sec.ink .uf-faq a{color:#fff;text-decoration:underline}
.cl-sched-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:22px;background:#fff}
.cl-sched-note{border:1.5px solid var(--ink);border-radius:18px;padding:18px 20px;text-align:center}
.cl-sched-note h4{margin:0 0 6px;font-size:1.1rem}.cl-sched-note p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.5}
@media(max-width:760px){.cl-sched-notes{grid-template-columns:1fr;padding:16px}}
/* home featured offer: live's black rounded card with the Harrisburg sub-card */
.uf-offer{background:#0b0b0d;border:1px solid var(--accent);border-radius:28px;padding:56px 64px;display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;color:#fff}
.uf-offer h2,.uf-offer .lead{color:#fff}.uf-offer h2{margin:.4rem 0 1rem;font-size:clamp(1.8rem,3.3vw,2.7rem)}.uf-offer .lead{font-size:1rem;line-height:1.7}
.uf-eyebrow.red,.uf-offer .uf-eyebrow{color:var(--accent)!important}
.uf-offer .uf-offer-main .uf-btn{border-color:var(--accent);color:#fff;background:transparent}
.uf-offer .uf-offer-main .uf-btn:hover{background:var(--accent)}
.uf-offer-side{background:#fff;color:var(--ink);border-radius:22px;padding:34px 30px}
.uf-offer-side h3{margin:.3rem 0 1.2rem;font-size:clamp(1.4rem,2.4vw,2rem);line-height:1.15}
.uf-offer-side .uf-btn{border-color:var(--accent);color:var(--ink);background:#fff}.uf-offer-side .uf-btn:hover{background:var(--accent);color:#fff}
@media(max-width:900px){.uf-offer{grid-template-columns:1fr;padding:36px 26px}}
.uf-tier li.uf-ckli{padding-left:0;display:flex;gap:10px;align-items:flex-start}.uf-tier li.uf-ckli::before,.uf-tier li.uf-ckli::after,.uf-tier li.uf-ckli::marker{display:none!important;content:none!important}.uf-tier li.uf-ckli .uf-ck{flex:0 0 22px;width:22px;height:22px;margin-top:0;color:var(--accent)}.uf-darkcard li.uf-ckli .uf-ck{color:var(--accent)!important}
.uf-center-head>.uf-wrap>.uf-eyebrow,.uf-center-head>.uf-wrap>h2,.uf-center-head>.uf-wrap>.lead{text-align:center;margin-left:auto;margin-right:auto}.uf-center-head>.uf-wrap>.uf-tick{margin-left:auto;margin-right:auto}
.uf-center-head .uf-mega-grid,.uf-center-head .uf-steps,.uf-center-head .uf-megacard,.uf-center-head .uf-step{text-align:left}
/* tier call-outs & featured (dark) tier, as on live */
.uf-callout{background:rgba(0,0,0,.05);border-left:3px solid var(--accent);border-radius:16px;padding:14px 18px;margin:12px 0 16px;font-weight:600;color:var(--ink);line-height:1.45}
.uf-callout p{margin:0;color:inherit}
.uf-tier .desc{background:rgba(0,0,0,.05);border-left:3px solid var(--accent);border-radius:16px;padding:14px 18px;margin:12px 0 4px;font-weight:600;color:var(--ink)!important;min-height:0!important}
.uf-price.hot{color:var(--accent)!important}
.uf-pill.dark{background:#0b0b0d;color:#fff;border-color:#0b0b0d}
.uf-card.uf-darkcard,.uf-tier.uf-darkcard{background:#0b0b0d!important;border-color:#0b0b0d!important;color:#fff}
.uf-darkcard h4,.uf-darkcard .name,.uf-darkcard .price,.uf-darkcard .uf-price,.uf-darkcard li,.uf-darkcard p,.uf-darkcard .uf-price span,.uf-darkcard .price small{color:#fff!important;-webkit-text-fill-color:#fff}
.uf-darkcard .uf-callout,.uf-darkcard .desc,.uf-darkcard .uf-callout p{background:#fff;color:var(--ink)!important;-webkit-text-fill-color:var(--ink)!important;border-left-color:var(--accent)}
.uf-darkcard .uf-callout p{background:none}
.uf-darkcard .uf-btn{background:var(--accent);border-color:var(--accent);color:#fff}
.uf-darkcard .uf-pill:not(.red){background:#fff;color:var(--ink)}

/* === live parity layer === */
.uf-wrap{width:min(1320px,92%)}
.uf-hero-lite .uf-wrap{max-width:none;width:min(1320px,92%)}
.uf-sec:not(.ink):not(.paper):not(.uf-custombg):not(.uf-hasbg):not(.uf-hero-lite){background:#fff}
.uf-sec{padding:104px 0}
.uf-sec h1,.uf-sec h2.uf-up,.uf-card h4.uf-up,.uf-glance h4{text-transform:uppercase;letter-spacing:.01em}
.uf-sec h2:not(.uf-up),.uf-card h4:not(.uf-up){text-transform:none}
.uf-sec h1{line-height:1.08;font-size:clamp(2.2rem,3.6vw,3.4rem);font-weight:700}.uf-sec h2{line-height:1.15;font-size:clamp(2rem,3.6vw,3.125rem);font-weight:700;letter-spacing:.02em}
.uf-card h4{font-size:1.12rem;margin:10px 0 10px}
.uf-card{border-radius:16px;padding:28px 26px 26px;border:1px solid #111}
.uf-sec.ink .uf-card:not(.uf-whitecard):not(.uf-wborder){border-color:rgba(255,255,255,.35)}
.uf-card.uf-kborder{border:1px solid #111!important}
.uf-card.uf-featured{border:2px solid var(--accent)!important}
.uf-card.uf-wborder:not(.uf-darkcard){border:1px solid rgba(255,255,255,.85)!important;background:transparent!important}.uf-card.uf-darkcard.uf-wborder{border:1px solid rgba(255,255,255,.85)!important}
.uf-sec.ink .uf-card.uf-whitecard{background:#fff!important;color:#111}
.uf-sec.ink .uf-card.uf-whitecard h4,.uf-sec.ink .uf-card.uf-whitecard p,.uf-sec.ink .uf-card.uf-whitecard li,.uf-sec.ink .uf-card.uf-whitecard strong{color:#111!important}
.uf-sec.ink .uf-card.uf-whitecard .uf-eyebrow{color:#555}
.uf-card .uf-eyebrow{margin:0 0 8px;text-align:inherit}
.uf-eyebrow.red{color:var(--accent)!important;-webkit-text-fill-color:var(--accent)!important;font-weight:700}
.uf-card .uf-eyebrow{display:block}
/* parity: live box metrics carried inline by the renderer */
.uf-sec .uf-cardgrid.uf-gut{gap:var(--gap,3%);row-gap:var(--gap,3%)}
.uf-sec .uf-cardgrid.uf-gut.g2:not(:has(> .uf-photocol))>:not([style*="flex-basis"]){flex-basis:calc((100% - var(--gap,3%))/2)!important;max-width:calc((100% - var(--gap,3%))/2)!important}
.uf-sec .uf-cardgrid.uf-gut.g3>:not([style*="flex-basis"]){flex-basis:calc((100% - 2*var(--gap,3%))/3)!important;max-width:calc((100% - 2*var(--gap,3%))/3)!important}
.uf-sec .uf-cardgrid.uf-gut.g4>:not([style*="flex-basis"]){flex-basis:calc((100% - 3*var(--gap,3%))/4)!important;max-width:calc((100% - 3*var(--gap,3%))/4)!important}
.uf-sec .uf-cardgrid.uf-gut.g5>:not([style*="flex-basis"]){flex-basis:calc((100% - 4*var(--gap,3%))/5)!important;max-width:calc((100% - 4*var(--gap,3%))/5)!important}
.uf-sec .uf-cardgrid.uf-gut.g2:has(> .uf-photocol)[style*="--gap"]{gap:var(--gap)}
.uf-sec .uf-cardgrid.uf-gut.g2:has(> .uf-photocol)[style*="--gap"]>*{flex-basis:calc((100% - var(--gap))/2)!important;max-width:calc((100% - var(--gap))/2)!important}
.uf-mini.uf-mini-box[style*="--mb-border"]{border:var(--mb-border)!important;border-radius:var(--mb-radius,20px)!important;padding:var(--mb-pad,10px 15px 15px)!important;background:var(--mb-bg,transparent)!important;color:inherit}
.uf-mini.uf-mini-box[style*="--mb-border"] h4,.uf-mini.uf-mini-box[style*="--mb-border"] p{color:inherit}
.uf-sec.ink .uf-mini.uf-mini-box[style*="--mb-border"],.uf-sec.ink .uf-mini.uf-mini-box[style*="--mb-border"] h4,.uf-sec.ink .uf-mini.uf-mini-box[style*="--mb-border"] p,.uf-sec.ink .uf-mini.uf-mini-box[style*="--mb-border"] .uf-price{color:#fff!important}
.uf-sec.ink .uf-mini.uf-mini-box[style*="--mb-border"] p{opacity:.92}
.uf-sec:not(.ink) .uf-mini.uf-mini-box[style*="--mb-border"] h4,.uf-sec:not(.ink) .uf-mini.uf-mini-box[style*="--mb-border"] p{color:var(--ink)!important}
.uf-ico[style*="--isz"]{width:var(--isz)!important;height:var(--isz)!important;margin-bottom:var(--imb)!important}
.uf-ico[style*="--isz"] .uf-i,.uf-ico[style*="--isz"] .uf-i-fill{width:100%!important;height:100%!important}
.uf-card .uf-ico[style*="--isz"]+h4{margin-top:0}
.uf-card[style*="--bw:"]{border-width:var(--bw)!important}
.uf-chat .uf-chat-quick{max-height:none!important;overflow:visible!important;flex:0 0 auto}.uf-chat .uf-chat-body{min-height:120px}.uf-chat{height:min(520px,72vh)!important;max-height:none!important}
.uf-cmp td strong{font-weight:700;color:var(--ink)}@media(max-width:640px){.uf-cmpwrap{overflow:visible}.uf-cmpwrap::after{display:none!important}.uf-table.uf-cmp{table-layout:fixed;width:100%;min-width:0!important}.uf-sec .uf-table.uf-cmp th,.uf-sec .uf-table.uf-cmp td{font-size:.78rem!important;line-height:1.4;padding:10px 7px!important;overflow-wrap:anywhere}.uf-sec .uf-table.uf-cmp tr:first-child th{font-size:.66rem!important;letter-spacing:.03em}.uf-table.uf-cmp th:first-child,.uf-table.uf-cmp td:first-child{width:31%}}
.uf-moblang{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:14px 0 10px}.uf-moblang span{font-size:.7rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);font-weight:700;margin-right:2px}.uf-moblang button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 14px;font:700 .85rem/1 var(--fb);color:var(--ink);cursor:pointer}.uf-moblang button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
/* mobile QA 2026-09-22 */@media(max-width:820px){.actions .uf-btn.sm.uf-btn{white-space:nowrap!important;padding:9px 14px;font-size:.7rem}.uf-eyebrow,.uf-sec .uf-eyebrow{font-size:12px}.uf-sec .pill,.uf-sec .uf-pill,.cm-ribbon,.cm-note{font-size:12px}.uf-sec a.lnk,.uf-sec .uf-post-more,.uf-sec a.uf-addr-link,.uf-sec a.phone,.uf-checks li a{display:inline-block;padding:5px 0;line-height:1.4}body.uf-w-hide .uf-a11y-btn,body.uf-w-hide .uf-chat-btn{opacity:0;pointer-events:none;transform:translateY(24px)}.uf-a11y-btn,.uf-chat-btn{transition:opacity .3s,transform .3s}}
.uf-promo-card.uf-promo-offer{padding-top:0;overflow:hidden}.uf-promo-img{display:block;width:calc(100% + 60px);margin:0 -30px 22px;max-width:none;aspect-ratio:16/9;object-fit:cover}.uf-promo-card.uf-promo-offer .uf-promo-x{z-index:2}
.uf-video{width:100%;margin:0 0 18px}.uf-video video{display:block;width:100%!important;max-width:100%!important;max-height:none!important;height:auto;margin:0!important;border-radius:14px;background:#000}.uf-video.uf-embed{aspect-ratio:16/9}.uf-video.uf-embed iframe{width:100%;height:100%;border:0;border-radius:14px}
/* Divi Blog module parity: featured article + latest grid */.uf-postgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 5.5%;margin-top:40px}.uf-post,.uf-post .uf-post-link{min-width:0;max-width:100%}.uf-post-img,.uf-postfeat-img img{max-width:100%;height:auto}.uf-post{display:flex;flex-direction:column;align-items:flex-start;text-align:left}.uf-post .uf-post-link{display:block;width:100%;margin:0 0 18px}.uf-sec .uf-wrap .uf-post-img{display:block;width:100%!important;max-width:100%!important;max-height:none!important;margin:0!important;aspect-ratio:400/250;object-fit:cover;border-radius:0}.uf-sec .uf-wrap .uf-postfeat-img .uf-post-img{aspect-ratio:auto}.uf-sec .uf-post-title{font-size:24px;line-height:1.4;letter-spacing:.5px;font-weight:700;text-transform:none;margin:0 0 10px}.uf-sec .uf-post-title a{color:inherit;text-decoration:none}.uf-sec .uf-post-title a:hover{color:var(--accent)}.uf-post p{font-size:18px;line-height:1.6;margin:0 0 12px}.uf-sec .uf-post-more{font-size:16px;font-weight:600;text-transform:uppercase;text-decoration:underline;text-decoration-color:var(--accent);color:inherit;line-height:1.2}.uf-sec .uf-post-more:hover{color:var(--accent)}.uf-sec.ink .uf-post,.uf-sec.ink .uf-post p,.uf-sec.ink .uf-post-title a,.uf-sec.ink .uf-post-more{color:#fff}.uf-post-pager{margin-top:40px}.uf-sec .uf-post-pager a{color:var(--accent);text-decoration:none;font-size:14px}.uf-sec .uf-post-pager a:hover{text-decoration:underline}.uf-postfeat-img .uf-post-link{display:block;width:100%}.uf-postfeat-img .uf-post-img{aspect-ratio:auto;width:100%!important;max-width:100%!important;border-radius:0}.uf-postfeat-text{text-align:left}.uf-postfeat-text .uf-post-title{font-size:32px;line-height:1.3}.uf-postfeat-text,.uf-postfeat-img{width:100%}.uf-postgrid{width:100%}.uf-postfeat-text p{font-size:18px;line-height:1.6;margin:0 0 14px}@media(max-width:980px){.uf-postgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.uf-postgrid{grid-template-columns:minmax(0,1fr)}}
.uf-sec .uf-card>.uf-checks:only-child{margin:0}.uf-sec .uf-card>.uf-checks:only-child li{margin:0 0 16px;font-size:15px;font-weight:300;line-height:1.3;align-items:center;color:var(--ink)}.uf-sec .uf-card>.uf-checks:only-child li .uf-ck{width:20px;height:20px;flex:0 0 20px}
.uf-col>.uf-subcard{display:block;width:100%;margin:0 0 15px}.uf-col>.uf-subcard h4{margin:0 0 6px}.uf-col>.uf-subcard p{margin:0}.uf-col>.uf-subcard+.uf-cardgrid,.uf-col>.uf-subcard+.uf-cta-row{margin-top:30px}
.uf-sec .uf-col .uf-inh~p+p,.uf-sec .uf-col .uf-inh~p+ul,.uf-sec .uf-col .uf-inh~ul+p{margin-top:1em}.uf-sec .uf-col .uf-inh~p a:not(.uf-btn){color:var(--accent);text-decoration:underline}
.uf-sec .uf-card ul+p,.uf-sec .uf-card ul+.uf-tc{margin-top:18px}
.uf-sec .uf-tc+.uf-eyebrow{margin-top:20px}
.uf-lead-form .uf-fg[hidden]{display:none!important}.uf-callout.uf-live{background:transparent}
.uf-lead-form.uf-l12{max-width:none;width:100%}.uf-lead-form.uf-l12 .uf-fg{text-align:left}.uf-callout.uf-live .uf-inh{margin-top:0}
.uf-lead-form.uf-l12,.uf-darkform .uf-lead-form.uf-l12,.uf-sec .uf-darkform form.uf-lead-form.uf-l12{grid-template-columns:repeat(12,1fr)}.uf-lead-form.uf-l12 .uf-fg{grid-column:span var(--span,12);display:flex;flex-direction:column;gap:12px;min-width:0}.uf-lead-form.uf-l12 .uf-fg>input,.uf-lead-form.uf-l12 .uf-fg>select,.uf-lead-form.uf-l12 .uf-fg>textarea{width:100%;grid-column:auto}.uf-lead-form.uf-l12 .uf-fh{margin:0;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.uf-lead-form.uf-l12 .uf-fhelp{margin:-6px 0 0;font-size:13px;opacity:.85}.uf-lead-form.uf-l12 .full,.uf-lead-form.uf-l12 .uf-consent,.uf-lead-form.uf-l12 .uf-lead-status{grid-column:1/-1}.uf-lead-form.uf-l12 .uf-fsubmit{text-align:left}.uf-darkform .uf-lead-form.uf-l12 input:not([type=checkbox]),.uf-darkform .uf-lead-form.uf-l12 textarea{grid-column:auto}@media(max-width:820px){.uf-lead-form.uf-l12 .uf-fg{grid-column:1/-1}}
.uf-sec .uf-inh{font-weight:700;text-transform:uppercase;line-height:1.2;margin:28px 0 12px;letter-spacing:0}.uf-sec .uf-inh3{font-size:28px}.uf-sec .uf-inh4{font-size:24px}.uf-sec .uf-inh5,.uf-sec .uf-inh6{font-size:18px}.uf-sec .uf-inh:first-child{margin-top:0}.uf-sec.ink .uf-inh{color:#fff}
.uf-callout.uf-live{border-left:0;font-weight:400;color:#666;font-size:14px;line-height:1.7}.uf-callout.uf-live p{margin:0}.uf-sec.ink .uf-callout.uf-live{color:#ddd}
.uf-checks li.rich.boxed{align-items:flex-start;min-height:0;line-height:1.6;margin:0;padding:var(--bpad,20px)!important}.uf-checks:has(li.rich.boxed){gap:15px}
.uf-darkform .uf-lead-form[data-uf-lead="Franchise Form"] input:not(.full):not([type=checkbox]){grid-column:auto}
.uf-card h4.uf-up{text-transform:uppercase!important}
.uf-sec .uf-sub{font-weight:700;letter-spacing:1px;font-size:18px;line-height:1.4;margin:0 0 20px}.uf-sec.ink .uf-sub{color:#fff}
.uf-sec .uf-btn.uf-fill:not(.calc-btn):not(.cm-pill){background:var(--fill,var(--accent))!important;color:#fff!important;border-color:var(--fill,var(--accent))!important}.uf-sec .uf-col .uf-cta-row:not(.center) .uf-btn:not(.calc-btn):not(.cm-pill){letter-spacing:1px;padding:12px 24px}.uf-sec .uf-btn.uf-fill:not(.calc-btn):hover{background:transparent!important;color:var(--accent)!important}.uf-sec.ink .uf-btn.uf-fill:hover{color:#fff!important}
/* Divi testimonial module */
.uf-testi{position:relative;background:#fff;color:#000;padding:50px 30px 30px;text-align:center;margin-top:17px;width:100%}
.uf-testi.dark{background:#000;color:#fff}
.uf-testi-q{position:absolute;top:-17px;left:50%;transform:translateX(-50%);width:34px;height:34px;border-radius:50%;background:#E02B20;color:#fff;font:700 26px/40px Georgia,"Times New Roman",serif;text-align:center}
.uf-testi-portrait{display:block;width:90px;height:90px;border-radius:50%;background-size:cover;background-position:center;margin:0 auto 30px}
.uf-sec .uf-testi .uf-testi-body p,.uf-sec.ink .uf-testi .uf-testi-body p,.uf-sec .uf-testi .uf-testi-body strong,.uf-sec .uf-testi .uf-testi-meta{color:inherit!important}
.uf-testi-body p{font-size:16px;line-height:1.9;margin:0 0 20px}
.uf-testi-author{display:block;color:#E02B20;font-weight:700;font-size:18px;line-height:1.3}.uf-testi.dark .uf-testi-author{color:#fff}
.uf-testi-meta{display:block;font-size:16px;color:inherit;margin-top:2px}
.uf-sec .uf-cardgrid.uf-gut>.uf-testi{margin-bottom:0}
.uf-sec.ink .uf-rowcard:not(.dark) .uf-card:not(.uf-darkcard),.uf-sec.ink .uf-rowcard:not(.dark) .uf-card:not(.uf-darkcard) h4,.uf-sec.ink .uf-rowcard:not(.dark) .uf-card:not(.uf-darkcard) p,.uf-sec.ink .uf-rowcard:not(.dark) .uf-card:not(.uf-darkcard) li{color:var(--ink)!important}
.uf-sec.ink .uf-rowcard:not(.dark) .uf-card:not(.uf-darkcard) h4.uf-redh{color:#E02B20!important}
.uf-subcard.dark,.uf-subcard.dark h4,.uf-subcard.dark p,.uf-subcard.dark li{color:#fff!important}
.uf-card>h2{font-size:24px;line-height:1.3;margin:0 0 16px}
.uf-card>h2+.uf-tick{display:none}.uf-card>h2{color:var(--ink);font-weight:600;letter-spacing:.02em}.uf-sec.ink .uf-card>h2,.uf-card.uf-darkcard>h2{color:#fff}
.uf-minigrid.uf-stack{grid-template-columns:1fr}
.uf-col.uf-specialty>.uf-col{padding:0}
.uf-col.uf-specialty .uf-cardgrid.uf-partial{justify-content:flex-start;margin-top:24px}
.uf-col.uf-specialty .uf-cardgrid.uf-partial>.uf-photocol{flex-basis:41.75%!important;max-width:41.75%!important}.uf-col.uf-specialty .uf-cardgrid.uf-partial{gap:4%}
.uf-sec .uf-card p>a[href^="#"]:not(.uf-btn) strong{font-weight:inherit}
.uf-card[style*="--lh:"] p,.uf-card[style*="--lh:"] li{line-height:var(--lh)}
.uf-card[style*="--hlh:"] h4{line-height:var(--hlh)}
.uf-sec .uf-card p>a[href^="#"]:not(.uf-btn){color:#E02B20;text-decoration:none}.uf-sec .uf-card p>a[href^="#"]:not(.uf-btn):hover{text-decoration:underline}
@media(max-width:900px){.uf-sec .uf-cardgrid.uf-cardgrid.uf-cardgrid.uf-gut.uf-gut>*,.uf-sec .uf-cardgrid.uf-cardgrid.uf-cardgrid.uf-gut.uf-gut>[style*="flex-basis"]{flex-basis:100%!important;max-width:100%!important}.uf-sec .uf-cardgrid.uf-gut{row-gap:18px}.uf-col.uf-specialty .uf-cardgrid.uf-cardgrid.uf-partial>.uf-photocol{flex-basis:41.75%!important;max-width:41.75%!important}}@media(max-width:640px){.uf-sec .uf-cardgrid.uf-cardgrid.uf-cardgrid.uf-gut.uf-gut>*{flex-basis:100%!important;max-width:100%!important}}
a.phone{text-decoration:none}a.phone:hover{color:var(--red)}
.uf-checks li a,.uf-checks li a:visited{color:inherit;text-decoration:none;border-bottom:1px solid transparent}.uf-checks li a:hover{border-bottom-color:currentColor}
.uf-card.uf-clickable{cursor:pointer}.uf-card.uf-clickable h4 a{color:inherit;text-decoration:none}.uf-card.uf-clickable:hover{transform:translateY(-2px)}
/* Divi keeps a card's button right under its copy (never pinned to the card bottom) */
.uf-sec .uf-card .uf-cta-row{margin-top:6px!important;padding-top:14px}
.uf-sec .uf-card.uf-redcard{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff}.uf-sec .uf-card.uf-redcard h4,.uf-sec .uf-card.uf-redcard p{color:#fff!important}
/* pricing cards = live Divi pricing column spacing */
.uf-sec .uf-card.uf-tier{padding:20px}
.uf-sec .uf-card.uf-tier > .uf-pill{font-size:14px;font-weight:600;letter-spacing:.02em;padding:8px 15px;margin:0 0 20px}
.uf-sec .uf-card.uf-tier > h4{margin:0 0 6px;font-size:20px}
.uf-sec .uf-card.uf-tier > .uf-price{font-size:38px;line-height:1.1;margin:0 0 16px}
.uf-sec .uf-card.uf-tier > .uf-callout{padding:16px 20px 20px;margin:0 0 30px}
.uf-sec .uf-card.uf-tier .uf-checks{margin:0 0 20px;gap:10px}
.uf-sec .uf-card.uf-tier .uf-checks li{font-size:16px;line-height:1.5;margin:0}
.uf-sec .uf-card.uf-tier > .uf-cta-row{margin-top:0!important;padding-top:0}
.uf-sec .uf-card.uf-tier > .uf-tc{font-size:14px;margin-top:12px}
.uf-checks li.rich{align-items:flex-start;gap:15px;margin:0 0 16px}
.uf-checks li.rich .uf-ck{width:28px;height:28px;flex:0 0 28px;margin-top:2px}
.uf-checks li.rich h4{font-size:18px;font-weight:700;line-height:1.2;margin:0 0 10px;text-align:left}
.uf-checks li.rich p{margin:0;font-size:16px;line-height:1.6;text-align:left}
.uf-hero-lite .uf-col > .uf-cta-row + p{margin-top:18px}
.uf-hero-lite .uf-mini.uf-mini-box > h4:only-child,.uf-hero-lite .uf-mini.uf-mini-box > h4 + p:not(.uf-mini-sub):not(.uf-price){grid-column:1/-1}
.uf-sec .uf-cardgrid.uf-partial{justify-content:center}
.uf-card .uf-note,.uf-col .uf-note{font-size:16px;font-weight:700;margin:0 0 6px;letter-spacing:0;text-transform:none}
.uf-sec .uf-note.red{color:var(--accent)!important}
.uf-checks:has(li.boxed){gap:20px}
.uf-checks li.boxed{border:1px solid;border-radius:30px;padding:10px 15px!important;margin:0;gap:15px;align-items:center;font-size:16px;line-height:1.6;min-height:50px;box-sizing:border-box}
.uf-checks li.boxed .uf-ck{width:28px;height:28px;flex:0 0 28px;margin:0}
/* live styles a whole row as a card (e.g. Memberships family/premier bands) */
.uf-rowcard{border-radius:30px;padding:40px;margin:24px 0}
.uf-rowcard > .uf-cardgrid{margin:0}
.uf-rowcard.dark{color:#fff}
.uf-rowcard.dark .uf-card:not(.uf-whitecard):not(.uf-darkcard),.uf-rowcard.dark .uf-col{background:transparent!important;border:0!important;box-shadow:none;color:#fff}
.uf-rowcard.dark .uf-card:not(.uf-whitecard) h2,.uf-rowcard.dark .uf-card:not(.uf-whitecard) h3,.uf-rowcard.dark .uf-card:not(.uf-whitecard) h4,.uf-rowcard.dark .uf-card:not(.uf-whitecard) p,.uf-rowcard.dark .uf-card:not(.uf-whitecard) li,.uf-rowcard.dark .uf-col h2,.uf-rowcard.dark .uf-col p{color:#fff!important}
.uf-rowcard.dark .uf-card:not(.uf-whitecard) .uf-eyebrow.red{color:var(--accent)!important}
.uf-rowcard.dark .uf-card.uf-whitecard{background:#fff!important;border:0!important;border-radius:30px;color:#111}
.uf-sec .uf-rowcard.dark .uf-btn:not(.calc-btn):not(.cm-pill){color:#fff!important}
@media (max-width:700px){.uf-rowcard{padding:22px}}
.uf-tc,.uf-tc *{text-align:center}.uf-card .uf-cta-row.center{justify-content:center}
/* home: live card chrome (1px black borders, red step numbers, centred step cards) */
.uf-sec:not(.ink) .uf-center-kept .uf-mega-grid .uf-megacard,.uf-sec.uf-center-kept:not(.ink) .uf-megacard{border:1px solid #111;box-shadow:none}
.uf-sec.uf-center-kept .uf-step{border:1px solid #111;box-shadow:none;text-align:center}
.uf-sec.uf-center-kept .uf-step .n{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--accent)!important;-webkit-background-clip:border-box;background-clip:border-box;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:1.05rem;font-weight:700;margin:0 auto 12px}
.uf-sec.uf-headonly > .uf-wrap > .uf-eyebrow,.uf-sec.uf-headonly > .uf-wrap > h2,.uf-sec.uf-headonly > .uf-wrap > .lead{text-align:center!important}
.uf-sec.uf-headonly > .uf-wrap > .uf-eyebrow,.uf-sec.uf-center-kept > .uf-wrap > .uf-eyebrow{display:block;width:100%}
.uf-headonly > .uf-wrap > .uf-tick{margin-left:auto;margin-right:auto}
.uf-headonly > .uf-wrap > .lead{margin-left:auto;margin-right:auto}
.uf-sec.ink .uf-mega-grid.g5 .uf-megacard{background:#121212!important;border-color:rgba(255,255,255,.2)!important}
.uf-sec.ink .uf-megacard .lnk,.uf-sec.ink .uf-megacard a.lnk{color:#fff!important}
.uf-center-kept > .uf-wrap > .uf-faqs{max-width:1280px;margin:28px auto 0;text-align:left}
.uf-center-kept > .uf-wrap > .lead,.uf-center-kept > .uf-wrap > p.lead{margin-left:auto;margin-right:auto}
/* home locations on live's dark section: outlined cards, white text, red-outline buttons */
.uf-sec.ink .uf-megacard{background:transparent!important;border:1px solid rgba(255,255,255,.85)!important;box-shadow:none!important;color:#fff}
.uf-sec.ink .uf-megacard h3,.uf-sec.ink .uf-megacard p,.uf-sec.ink .uf-megacard a.uf-addr-link,.uf-sec.ink .uf-megacard .card-ic{color:#fff!important}
.uf-sec.ink .uf-megacard .uf-btn{color:#fff!important;background:transparent!important;border:1px solid var(--accent)!important}
/* Divi leaves a short last row left-aligned */
.uf-sec .uf-cardgrid.g3,.uf-sec .uf-cardgrid.g4{justify-content:flex-start}
.uf-sec:not(.ink) .uf-card.uf-darkcard{background:#0b0b0d;color:#fff}.uf-sec:not(.ink) .uf-card.uf-darkcard.uf-wborder{border-color:#0b0b0d!important}
.uf-col.uf-center > .uf-chips{justify-content:center}
.uf-card .uf-iconrow{display:flex;gap:16px;align-items:flex-start;width:100%;text-align:left}
.uf-card .uf-iconrow .uf-ico-l{flex:0 0 28px;width:28px;height:28px;margin:4px 0 0;background:none;color:#707070}
.uf-card .uf-iconrow .uf-ico-l .uf-i{width:28px;height:28px}
.uf-card .uf-iconrow h4{margin:0 0 6px;text-align:left}.uf-card .uf-iconrow p{margin:0;text-align:left}
.uf-sec .uf-card .uf-pill.outline{background:transparent!important;color:inherit!important;border:1px solid;font-size:20px;font-weight:600;text-transform:none;letter-spacing:0;padding:5px 10px;border-radius:50px}
.uf-sec .uf-card .uf-pill.outline.wide{display:block;width:100%;text-align:center}
.uf-featclass h4{font-weight:700;font-size:20px;letter-spacing:0;text-transform:uppercase}.uf-featclass .uf-chips{justify-content:center}.uf-featclass .uf-pill{align-self:center}
.uf-col > .uf-chips{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.uf-sec.ink .uf-col > .uf-chips .uf-chip.tagc,.uf-hero-lite .uf-col > .uf-chips .uf-chip.tagc{border:1px solid rgba(255,255,255,.6);color:#fff;background:transparent;font-size:16px;font-weight:300;letter-spacing:0;text-transform:none;padding:10px 18px;margin:0}
.uf-sec .uf-red,.uf-sec .uf-card .uf-red,.uf-sec.ink .uf-card.uf-whitecard .uf-red{color:var(--accent,#e02b20)!important;-webkit-text-fill-color:var(--accent,#e02b20)!important}
.uf-embed{width:100%;border-radius:16px;overflow:hidden;background:#fff}.uf-embed iframe{display:block;width:100%;border:0}
.uf-col.uf-darkform > .uf-embed{margin:0}
.uf-sec .uf-card .uf-btn:not(.calc-btn):not(.cm-pill){font-size:14px;letter-spacing:1.5px;padding:8px 20px}
.uf-card .uf-cta-row{gap:10px}
.uf-sec.ink .uf-table th,.uf-sec.ink .uf-table td{color:#000}.uf-sec.ink .uf-table tr:first-child th{color:#fff}.uf-sec .uf-table tr{background:#fff}
.uf-card .uf-cta-row{width:100%}.uf-card.uf-center .uf-cta-row{justify-content:center}
/* live Divi table (tfdt): black header row, plain white body */
.uf-sec .uf-tablewrap{overflow-x:auto;margin:26px 0 6px;border-radius:16px;background:#fff;border:0}
.uf-sec .uf-table{width:100%;border-collapse:collapse;font-size:16px}
.uf-sec .uf-table th,.uf-sec .uf-table td{padding:15px 20px;text-align:left;vertical-align:top;border-bottom:1px solid #e6e6e6;color:#000;background:transparent;font-weight:400;text-transform:none;letter-spacing:0;width:auto}
.uf-sec .uf-table tr:first-child th{background:#000;color:#fff;font-size:18px;font-weight:700}
.uf-sec .uf-table tr:last-child td,.uf-sec .uf-table tr:last-child th{border-bottom:0}
.uf-card .uf-subcard{display:block;width:100%;border-radius:16px;padding:16px 14px;margin:0 0 12px}
.uf-card .uf-subcard.dark,.uf-card .uf-subcard.dark h4,.uf-card .uf-subcard.dark p,.uf-card .uf-subcard.dark li{color:#fff!important}
.uf-card .uf-subcard h4{margin:0 0 6px}.uf-card .uf-subcard p{margin:0}
.uf-card .uf-subcard.uf-center,.uf-card .uf-subcard.uf-center *{text-align:center}
.uf-card-img.uf-gray{filter:saturate(0);transition:filter .3s}.uf-card:hover .uf-card-img.uf-gray{filter:saturate(1)}
.uf-card .uf-pill.wide{display:block;width:100%;text-align:center;border-radius:30px;padding:10px 15px;font-size:16px;letter-spacing:.06em}
.uf-card .uf-chips{display:flex;flex-wrap:wrap;gap:0}
.uf-card .uf-chip.tagc{font-size:14px;font-weight:400;letter-spacing:0;text-transform:none;border:1px solid #000;color:#000;background:transparent;padding:8px 12px;margin:0 6px 8px 0}
.uf-darkcard .uf-chip.tagc,.uf-sec.ink .uf-card:not(.uf-whitecard) .uf-chip.tagc{border-color:#fff;color:#fff}
.uf-sec .uf-card h4.uf-redh,.uf-sec.ink .uf-card.uf-whitecard h4.uf-redh,.uf-sec .uf-card.uf-darkcard h4.uf-redh{color:var(--accent,#e02b20)!important;-webkit-text-fill-color:var(--accent,#e02b20)!important}
.uf-card h4.uf-cardtitle{font-size:24px;font-weight:600;letter-spacing:1px;line-height:1.3;text-transform:none;margin:0 0 15px}
/* tier names and roadmap steps: sentence case on live */
.uf-tier h4,.uf-stepcard h4{text-transform:none}
.uf-stepcard,.uf-stepcard *{text-align:left}
.uf-tier h4{font-size:1.35rem}
.uf-ico{background:none!important;padding:0!important;width:auto;height:auto}
/* dark cards on black sections: live uses a lighter charcoal card */
.uf-sec.ink .uf-card.uf-darkcard{background:#161616!important;border:1px solid #2a2a2a!important}
.uf-sec.ink .uf-card.uf-darkcard.uf-featured{border:2px solid var(--accent)!important}
.uf-sec.ink .uf-card.uf-darkcard.uf-wborder{border:1px solid rgba(255,255,255,.85)!important}
.uf-pill.light{background:#fff!important;color:#111!important;border-color:#fff!important}
.uf-pill.dark.redtext{color:var(--red,#e02b20)!important}
.uf-chip.red{background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important}
.uf-tier .uf-checks li::after,.uf-tier .uf-checks li::before{display:none!important;content:none!important}
/* bold text inherits its card's colour (a hard-coded ink colour made 'URGE' vanish on dark cards) */
.uf-sec.ink .uf-blurb strong,.uf-sec.ink .uf-card strong,.uf-sec.ink .uf-col strong,.uf-darkcard strong,.uf-sec.ink .uf-card-solo strong{color:inherit!important}
.uf-sec.ink .uf-card.uf-whitecard strong{color:#111!important}
/* buttons: red-outline pills, as on live */
.uf-sec .uf-btn:not(.calc-btn):not(.cm-pill){background:transparent!important;border:1.5px solid var(--accent)!important;color:var(--accent)!important;box-shadow:none!important}
.uf-sec.ink .uf-btn:not(.calc-btn),.uf-darkcard .uf-btn,.uf-darkform .uf-btn,.uf-offer-main .uf-btn{color:#fff!important}
.uf-sec .uf-btn:not(.calc-btn):hover{background:var(--accent)!important;color:#fff!important}
/* form on a black card */
.uf-darkform form,.uf-darkform .uf-lead-form{background:#0b0b0d;padding:30px;border-radius:20px}
.uf-darkform input,.uf-darkform select,.uf-darkform textarea{background:#1a1a1c!important;color:#fff!important;border:1px solid #2a2a2e!important}
.uf-darkform input::placeholder,.uf-darkform textarea::placeholder{color:#bbb}
.uf-darkform select option{color:#fff;background:#1a1a1c}
.uf-darkform label,.uf-darkform small,.uf-darkform p,.uf-darkform .uf-consent{color:#e6e6ea}
.uf-darkform button,.uf-darkform .uf-btn{background:transparent!important;border:1.5px solid var(--accent)!important;color:#fff!important}
/* FAQ: centred header, card items */
.uf-col:has(> .uf-faqs){text-align:center}
.uf-col:has(> .uf-faqs) .uf-tick{margin-left:auto;margin-right:auto}
.uf-col:has(> .uf-faqs) .uf-faqs{max-width:1040px;margin:28px auto 0;text-align:left}
.uf-sec.ink .uf-faq{background:#161616;border:1px solid #2a2a2a;border-radius:12px;margin-bottom:12px;padding:0 22px}
.uf-sec.ink .uf-faq:last-of-type{border-bottom:1px solid #2a2a2a}
.uf-sec:not(.ink) .uf-faq{background:#fff;border:1px solid #ddd;border-radius:12px;margin-bottom:12px;padding:0 22px}
.uf-card p,.uf-card li{color:#333}
.uf-sec.ink .uf-card:not(.uf-whitecard) p,.uf-sec.ink .uf-card:not(.uf-whitecard) li{color:#d6d6dc}
/* two-column feature cards (live: big left-aligned heading, eyebrow text, bullets) */
.uf-cardgrid.g2 .uf-card:not(.uf-tier):not(.uf-glancecard):not(:has(.uf-stepcard)):not(:has(.uf-ico)):is(:has(> .uf-eyebrow),:has(> .uf-pill)){text-align:left;padding:40px 36px}
.uf-cardgrid.g2 .uf-card:not(.uf-tier):not(.uf-glancecard):not(:has(.uf-stepcard)):not(:has(.uf-ico)):is(:has(> .uf-eyebrow),:has(> .uf-pill)) *{text-align:left}
.uf-cardgrid.g2 .uf-card:not(.uf-tier):not(.uf-glancecard):not(:has(.uf-stepcard)):not(:has(.uf-ico)):is(:has(> .uf-eyebrow),:has(> .uf-pill)) h4{text-transform:none;font-size:clamp(1.5rem,2.3vw,2rem);line-height:1.15;margin:.4rem 0 1rem}
.uf-cardgrid.g2 .uf-card:not(.uf-tier):not(.uf-glancecard):not(:has(.uf-stepcard)):not(:has(.uf-ico)):is(:has(> .uf-eyebrow),:has(> .uf-pill)) ul{padding-left:1.1rem;margin:.6rem 0 0}
.uf-cardgrid.g2 .uf-card:not(.uf-tier):not(.uf-glancecard):not(:has(.uf-stepcard)):not(:has(.uf-ico)):is(:has(> .uf-eyebrow),:has(> .uf-pill)) li{margin:.35rem 0}
/* form section copy: left-aligned like live */
.uf-sec:has(.uf-darkform) .uf-col:not(.uf-darkform){text-align:left}
.uf-sec:has(.uf-darkform) .uf-col:not(.uf-darkform) .uf-tick{margin-left:0}
/* hero glance card (renderer .uf-minigrid inside a hero) -> one white card with rows */
.uf-hero-lite .uf-card:has(> .uf-minigrid){background:#fff!important;color:#111;text-align:left;align-self:center;padding:30px 30px 10px}
.uf-hero-lite .uf-card:has(> .uf-minigrid) > .uf-pill,.uf-hero-lite .uf-card:has(> .uf-minigrid) > .uf-cardtitle,.uf-hero-lite .uf-card:has(> .uf-minigrid) > .uf-eyebrow{background:none!important;border:0;padding:0;color:#111!important;font-size:1.25rem;text-transform:none;letter-spacing:0;font-weight:800;margin-bottom:10px}
.uf-hero-lite .uf-card.uf-glancecard{border:0!important}
.uf-hero-lite .uf-minigrid{display:block}
.uf-hero-lite .uf-mini{border:0;border-top:1px solid #dcdce0;border-radius:0;padding:14px 0 16px;background:transparent!important;text-align:left}
.uf-hero-lite .uf-mini h4{font-size:1rem!important;margin:0 0 4px!important;text-transform:none!important}
.uf-hero-lite .uf-mini p{margin:0;color:#333!important;font-size:.92rem}
/* live: each plan pair is one bordered rounded box (name + tag on the top row, price, copy) */
.uf-hero-lite .uf-mini.uf-mini-box{border:1px solid #111!important;border-radius:20px!important;padding:10px 15px 15px!important;margin:0 0 15px;display:grid;grid-template-columns:1fr auto;column-gap:10px;align-items:baseline}
.uf-hero-lite .uf-mini.uf-mini-box.red{border-color:var(--accent)!important}
.uf-hero-lite .uf-mini.uf-mini-box.dark{background:#000!important;color:#fff}
.uf-hero-lite .uf-mini.uf-mini-box > h4,.uf-sec.ink .uf-card.uf-whitecard .uf-mini.uf-mini-box > h4{grid-column:1;font-size:14px!important;font-weight:700;text-transform:uppercase!important;letter-spacing:.04em;color:var(--accent)!important;margin:0 0 6px!important}
.uf-hero-lite .uf-mini.uf-mini-box > .uf-mini-sub,.uf-sec.ink .uf-card.uf-whitecard .uf-mini.uf-mini-box > .uf-mini-sub{grid-column:2;grid-row:1;margin:0;text-align:right;font-size:14px;font-weight:700;text-transform:uppercase;color:var(--accent)!important}
.uf-hero-lite .uf-mini.uf-mini-box > .uf-price{grid-column:1/-1;font-size:24px;font-weight:700;margin:0 0 4px;color:#111!important}
.uf-hero-lite .uf-mini.uf-mini-box > p:not(.uf-mini-sub):not(.uf-price){grid-column:1/-1;margin:0;font-size:16px;line-height:1.5;color:#111!important}
.uf-hero-lite .uf-mini.uf-mini-box.dark > .uf-price,.uf-hero-lite .uf-mini.uf-mini-box.dark > p:not(.uf-mini-sub),.uf-sec.ink .uf-card.uf-whitecard .uf-mini-box.dark > .uf-price,.uf-sec.ink .uf-card.uf-whitecard .uf-mini-box.dark > p:not(.uf-mini-sub),.uf-sec.ink .uf-card.uf-whitecard .uf-mini-box.dark h4.x{color:#fff!important}
.uf-hero-lite .uf-mini.uf-mini-box .uf-price span{font-size:14px;font-weight:600}
/* form section = live Divi layout: 38/62 columns, centred, black 20px card, stacked 55px fields */
.uf-sec:has(> .uf-wrap > .uf-cardgrid.g2 > .uf-darkform) .uf-cardgrid.g2{align-items:center;gap:3%}
@media(min-width:901px){.uf-sec:has(> .uf-wrap > .uf-cardgrid.g2 > .uf-darkform) .uf-cardgrid.g2 > .uf-col:not(.uf-darkform){flex-basis:38%!important;max-width:38%!important;margin-bottom:0}}
@media(min-width:901px){.uf-sec:has(> .uf-wrap > .uf-cardgrid.g2 > .uf-darkform) .uf-cardgrid.g2 > .uf-darkform{flex-basis:59%!important;max-width:59%!important;margin-bottom:0}}
.uf-sec:has(.uf-darkform) .uf-col:not(.uf-darkform) > .uf-eyebrow{font-size:16px;font-weight:600;letter-spacing:5px;line-height:1.4;margin:0 0 15px;color:inherit!important}
.uf-sec:has(.uf-darkform) .uf-col:not(.uf-darkform) > h2{line-height:1.4;letter-spacing:2px;padding-bottom:10px;margin:0 0 10px}
.uf-sec:has(.uf-darkform) .uf-col:not(.uf-darkform) > .uf-tick{display:none}
.uf-sec:has(.uf-darkform) .uf-col:not(.uf-darkform) > p{line-height:1.9;margin:0 0 10px}
.uf-sec:has(.uf-darkform) .uf-col:not(.uf-darkform) .uf-photo{width:auto;max-width:100%;border-radius:0;margin-top:10px}
.uf-darkform form,.uf-darkform .uf-lead-form{background:#000;padding:40px;border-radius:20px;margin-top:0;max-width:none;gap:25px 20px;grid-template-columns:1fr 1fr}
.uf-darkform .uf-lead-form input:not([type=checkbox]),.uf-darkform .uf-lead-form textarea,.uf-darkform .uf-lead-form .full{grid-column:1/-1}
.uf-darkform .uf-lead-form select{grid-column:auto}
.uf-darkform input:not([type=checkbox]),.uf-darkform select,.uf-darkform textarea{background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:0;padding:17px 20px;font-size:16px;min-height:55px;color:#fff!important}
.uf-darkform textarea{min-height:120px}
.uf-sec .uf-darkform .uf-lead-form .uf-btn:not(.calc-btn):not(.cm-pill){font-size:18px;font-weight:500;letter-spacing:1px;padding:17px 24px;border-radius:30px;text-transform:uppercase;color:#fff!important;border:1px solid var(--accent)!important}
.uf-darkform .uf-hp{position:absolute;left:-9999px}
/* hero typography = live Divi hero (h5 eyebrow 16/600/5px, h1 62/600/8px/1.2, body 16/1.9, no divider) */
.uf-hero-lite .uf-col > .uf-eyebrow{font-size:16px;font-weight:600;letter-spacing:5px;line-height:1.4;color:#fff;margin:0 0 20px}
.uf-hero-lite h1{font-size:62px;font-weight:600;letter-spacing:8px;line-height:1.2;margin:0 0 20px}
.uf-hero-lite .uf-col > .uf-tick{display:none}
.uf-hero-lite .uf-col > p:not(.uf-eyebrow){font-size:16px;line-height:1.9}
.uf-sec .uf-btn:not(.calc-btn):not(.cm-pill){font-size:16px;font-weight:600;letter-spacing:2px;padding:12px 32px;border-width:1px!important;border-radius:30px}
@media (max-width:900px){.uf-hero-lite h1{font-size:40px;letter-spacing:3px}}

/* photo + copy rows (live Divi image/text row): vertical centre, 5.5% gutter, Divi text spacing */
.uf-cardgrid.g2:has(> .uf-photocol){align-items:center;gap:5.5%}
@media(min-width:901px){.uf-cardgrid.g2:has(> .uf-photocol) > *{flex-basis:47.25%!important;max-width:47.25%!important}}
.uf-cardgrid.g2:has(> .uf-photocol) > .uf-col{margin-bottom:0}
.uf-cardgrid.g2:has(> .uf-photocol) > .uf-col:not(.uf-photocol) > .uf-tick{display:none}
.uf-cardgrid.g2:has(> .uf-photocol) > .uf-col:not(.uf-photocol) > .uf-eyebrow{font-size:16px;font-weight:600;letter-spacing:5px;line-height:1.4;text-transform:uppercase;margin:0 0 20px;color:inherit!important}
.uf-cardgrid.g2:has(> .uf-photocol) > .uf-col:not(.uf-photocol) > h2{line-height:1.4;letter-spacing:2px;padding-bottom:10px;margin:0 0 10px}
.uf-cardgrid.g2:has(> .uf-photocol) > .uf-col:not(.uf-photocol) > p{line-height:1.9;margin:0 0 10px}
.uf-cardgrid.g2:has(> .uf-photocol) > .uf-col:not(.uf-photocol) > .uf-cta-row{margin-top:30px}
.uf-sec.ink .uf-cardgrid.g2:has(> .uf-photocol) > .uf-col > .uf-eyebrow{color:#fff}
/* hand-coded Divi code modules passed through verbatim (download-the-app) */
.uf-sec.uf-codeembed{padding:0!important;background:#0a0a0a!important;max-width:none}
.uf-sec.uf-codeembed .uf-codeembed-inner{width:100%}
.uf-sec.uf-codeembed h1,.uf-sec.uf-codeembed h2,.uf-sec.uf-codeembed h3,.uf-sec.uf-codeembed p{margin-top:0}
/* flat Divi Menu module as a link directory (areas-we-serve): live's 3-column list */
.uf-linkgrid ul{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0}
.uf-linkgrid li{flex:0 0 33.333%;max-width:33.333%;padding:8px 14px;font-size:15px;font-weight:500;letter-spacing:.5px;line-height:1.2}
.uf-linkgrid a{color:inherit;text-decoration:none;transition:color .3s}
.uf-linkgrid a:hover{color:var(--accent)}
@media(max-width:980px){.uf-linkgrid li{font-size:14px}}
@media(max-width:575px){.uf-linkgrid li{flex:0 0 50%;max-width:50%}}
@media(max-width:480px){.uf-linkgrid li{flex:0 0 100%;max-width:100%}}
/* Divi Call To Action module -> boxed card */
.uf-ctacard{text-align:left;margin-bottom:20px}
.uf-ctacard.dark,.uf-ctacard.dark h4,.uf-ctacard.dark p{color:#fff}
.uf-ctacard h4{font-size:1.6rem;line-height:1.15;margin:0 0 10px;text-transform:none}
.uf-ctacard p{margin:0 0 6px}
.uf-ctacard .uf-cta-row{margin-top:18px}

/* app band (live .footer-app-sec) */
.uf-appcta.app-sec{overflow:hidden}

.uf-sec .uf-wrap .uf-card-img{display:block;width:100%;max-width:100%;height:auto;max-height:none;aspect-ratio:16/10;object-fit:cover;border-radius:10px;margin:0 0 18px}
.uf-photocard{padding-top:16px}.uf-sec .uf-wrap .uf-photocard .uf-card-img{margin-top:0}
.uf-sec .uf-wrap .uf-photo{display:block;width:100%;max-width:100%;height:auto;max-height:none;border-radius:14px;margin:0}
.uf-appcta .app-art img{max-width:min(430px,100%);max-height:none;margin:0;border-radius:0}
.uf-photocol{display:flex;align-items:center;justify-content:center;padding:0}
.uf-photo-link{display:block}
.uf-checks{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:9px}
.uf-checks li{display:flex;gap:10px;align-items:flex-start;line-height:1.45}
.uf-checks .uf-ck{color:var(--accent);margin-top:.15em;stroke-width:2.6}
/* the SVG is the check; suppress the pseudo-element bullets/checks other list styles draw */
.uf-checks li::before,.uf-tier .uf-checks li::before,.uf-blurb .uf-checks li::before{display:none!important;content:none!important}
.uf-checks li,.uf-tier .uf-checks li{padding-left:0!important;position:static}
.ink .uf-checks .uf-ck{color:#ff5a5f}
.uf-num{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--accent);color:#fff;font-family:var(--fd);font-weight:800;font-size:1rem;margin-bottom:14px}
.uf-chip,.uf-pill{display:inline-block;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:6px 12px;border-radius:999px;margin-bottom:12px;border:1px solid currentColor;color:var(--muted)}
.uf-pill.red{background:var(--accent);border-color:var(--accent);color:#fff}
.ink .uf-chip,.ink .uf-pill{color:#fff;border-color:rgba(255,255,255,.35)}
.ink .uf-pill.red{color:#fff}
.uf-price{font-family:var(--fd);font-weight:900;font-size:2rem;line-height:1;margin:4px 0 10px;color:var(--ink)}
.uf-price span{font-size:.95rem;font-weight:600;color:var(--muted);margin-left:4px}
.ink .uf-price{color:#fff}
.uf-card{display:flex;flex-direction:column;align-items:flex-start}
.uf-card>h4{margin-top:0}
.uf-card .uf-cta-row{margin-top:auto;padding-top:16px}
.uf-col{margin-bottom:22px}
.uf-col>h2{margin-top:0}
/* explicit column counts mirroring the live Divi rows (the grid is flex; the :has() 2x2 rule must not win) */
.uf-cardgrid.g4>*{flex-basis:calc(25% - 14px)!important;max-width:calc(25% - 14px)!important}
.uf-cardgrid.g5>*{flex-basis:calc(20% - 15px)!important;max-width:calc(20% - 15px)!important}
.uf-cardgrid.g3>*{flex-basis:calc(33.333% - 12px)!important;max-width:calc(33.333% - 12px)!important}
@media(max-width:1100px){.uf-cardgrid.g4>*,.uf-cardgrid.g5>*{flex-basis:calc(50% - 9px)!important;max-width:calc(50% - 9px)!important}}
@media(max-width:640px){.uf-cardgrid.g3>*,.uf-cardgrid.g4>*,.uf-cardgrid.g5>*{flex-basis:100%!important;max-width:100%!important}}
.uf-cardgrid.g4 .uf-card,.uf-cardgrid.g5 .uf-card{padding:22px 20px}
.uf-cardgrid.g5 h4{font-size:1rem}
/* roadmap step cards (live: white card, red-outlined steps with a small red number) */
.uf-stepcard{border:1.5px solid var(--accent);border-radius:14px;padding:16px 18px;margin-top:12px;width:100%}
.uf-stepcard .uf-stepnum{display:block;color:var(--accent);font-weight:800;font-size:.72rem;letter-spacing:.08em;margin-bottom:4px}
.uf-stepcard h4{margin:0 0 6px;font-size:1.35rem;font-weight:600}
.uf-stepcard p,.uf-stepcard{color:var(--muted)}
.uf-stepcard h4{color:var(--ink)}
.ink .uf-card.uf-light{background:#fff;color:var(--ink);border-color:transparent}
.ink .uf-card.uf-light h4,.ink .uf-card.uf-light .uf-stepcard h4{color:var(--ink)}
.ink .uf-card.uf-light .uf-pill{color:var(--muted);border-color:rgba(0,0,0,.25)}
.ink .uf-card.uf-light .uf-stepcard{color:var(--muted)}
/* exact font-glyph icons are filled shapes, not strokes */
.uf-i-fill{stroke:none}
.uf-cta-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:22px}
/* alignment carried over from Divi (text_align_center / button_alignment_center) */
.uf-cta-row.center{justify-content:center}
/* dropdown CTA (live's per-club "7 day trial" / "Tour the club" menus) */
.uf-dd{position:relative;display:inline-block}
.uf-dd>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px}
.uf-dd>summary::-webkit-details-marker{display:none}
.uf-dd-caret{width:14px;height:14px;transition:transform .2s}
.uf-dd[open]>summary .uf-dd-caret{transform:rotate(180deg)}
.uf-dd-menu{position:absolute;left:0;top:calc(100% + 6px);min-width:220px;margin:0;padding:8px;list-style:none;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 44px rgba(0,0,0,.14);z-index:30;text-align:left}
.uf-dd-menu li a{display:block;padding:10px 14px;border-radius:9px;font-weight:700;font-size:.9rem;color:var(--ink);text-decoration:none}
.uf-dd-menu li a:hover{background:rgba(224,24,35,.08);color:var(--accent)}
.uf-center .uf-dd-menu,.uf-center-kept .uf-dd-menu{left:50%;transform:translateX(-50%)}
.uf-dd[open]{z-index:80}
.uf-lead-form .uf-cond[hidden]{display:none}
.uf-sec:has(.uf-dd[open]),.uf-card:has(.uf-dd[open]),.uf-cta-row:has(.uf-dd[open]){position:relative;z-index:70;overflow:visible}
.uf-card,.uf-blurb{overflow:visible}
/* hero photo carried over from the original build */
.uf-sec.uf-hasbg{background-size:cover;background-position:center}
/* mini plan cards inside a column (live: name + tagline, then price + description, per plan) */
.uf-minigrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;margin-top:6px}
.uf-mini{border:1px solid var(--line);border-radius:14px;padding:16px 16px 14px;background:#fff;color:var(--ink)}
.uf-mini h4,.ink .uf-mini h4,.uf-mini .uf-price,.ink .uf-mini .uf-price{color:var(--ink)!important}
.uf-mini p,.ink .uf-mini p{color:var(--muted)!important}
.uf-mini .uf-mini-sub,.ink .uf-mini .uf-mini-sub{color:var(--accent)!important}
.uf-mini .uf-price-note{font-size:.8rem;font-weight:700;color:var(--accent)!important;margin-left:6px}
.uf-mini h4{margin:0 0 2px;font-size:1rem}
.uf-mini .uf-mini-sub{margin:0 0 8px;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}
.uf-mini .uf-price{font-size:1.5rem;margin:0 0 6px}
.uf-mini p{font-size:.9rem;margin:0}
.ink .uf-mini{border-color:rgba(255,255,255,.14)}
@media(max-width:560px){.uf-minigrid{grid-template-columns:1fr}}
/* feature pills (live's "✓ HydroMassage" style title-only blurbs) */
.uf-featpills{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.uf-center .uf-featpills,.uf-center-kept .uf-featpills{justify-content:center}
.uf-featpill{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);font-weight:700;font-size:.9rem}
.uf-featpill .uf-ck{color:var(--accent)}
.ink .uf-featpill{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:#fff}
.uf-col>.uf-minigrid{max-width:820px}
/* live centres these sections; we kept our own markup for them (club cards, calendars, calculator) */
.uf-center-kept>.uf-wrap>.uf-eyebrow,.uf-center-kept>.uf-wrap>h1,.uf-center-kept>.uf-wrap>h2,.uf-center-kept>.uf-wrap>p,.uf-center-kept .cl-head{text-align:center}
.uf-center-kept>.uf-wrap{text-align:center}
.uf-center-kept>.uf-wrap>.uf-tick,.uf-center-kept>.uf-wrap>p,.uf-center-kept>.uf-wrap>h1,.uf-center-kept>.uf-wrap>h2{margin-left:auto;margin-right:auto}
.uf-center-kept>.uf-wrap>.uf-eyebrow{display:block}
.uf-center-kept>.uf-wrap>p{max-width:760px}
.uf-center-kept .uf-blurb,.uf-center-kept .cl-card,.uf-center-kept .uf-megacard{text-align:center;align-items:center}
.uf-center-kept .uf-megacard .card-ic,.uf-center-kept .uf-ico{margin-left:auto;margin-right:auto}
.uf-center-kept .cl-cardbtns,.uf-center-kept .cl-btns,.uf-center-kept .uf-cta-row{justify-content:center}
.uf-center-kept .uf-checks,.uf-center-kept ul.feat,.uf-center-kept .uf-lead-form,.uf-center-kept table{text-align:left}
.uf-center{text-align:center}
.uf-center .uf-tick{margin-left:auto;margin-right:auto}
.uf-card.uf-center{align-items:center}
.uf-center .uf-ico{margin-left:auto;margin-right:auto}
.uf-center .uf-checks{text-align:left}
.uf-col.uf-center>p,.uf-col.uf-center>h2{margin-left:auto;margin-right:auto}
.uf-col.uf-center>p.lead,.uf-col.uf-center>p{max-width:760px}
@media(max-width:820px){.uf-cardgrid>[style*=flex-basis]{flex-basis:100%!important;max-width:100%!important}}
.uf-card.uf-light .uf-stepcard,.uf-card.uf-light .uf-stepcard p{color:#5a5a66!important}
.uf-card.uf-light .uf-stepcard h4{color:var(--ink)!important}
.uf-ico .uf-i-fill{width:24px;height:24px}
.ink .uf-blurb{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);color:#e9e9ee}
.ink .uf-blurb h4{color:#fff}
.uf-table{min-width:640px}
@media(max-width:700px){.uf-tablewrap{position:relative}.uf-tablewrap::after{content:"swipe →";position:sticky;left:100%;bottom:0;display:block;width:max-content;padding:4px 10px;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}}
/* long CTA labels wrap instead of overflowing on narrow screens */
@media(max-width:560px){.uf-btn.uf-btn,a.uf-btn.uf-btn{white-space:normal!important;text-align:center;max-width:100%}.uf-cta-row{flex-wrap:wrap}}
/* Motion slides sections in from +48px; clip at the root so that never creates a horizontal scrollbar.
   overflow-x:clip (not hidden) because clip does not create a scroll container, so the sticky header and
   anchor scrolling keep working. */
html{overflow-x:clip}
body{overflow-x:clip}
/* decorative background video / orbs never widen the page */
.uf-hero,.cl-hero{overflow-x:clip}
.ytbg,.orb{max-width:100%}
/* footer app-download block (matches the live site, which shows it on every page) */
.uf-foot .foot-app h4{margin:0 0 .5rem}
.uf-foot .app-badges{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.uf-foot .app-badges a{display:inline-block;line-height:0}
.uf-foot .app-badges img{height:42px!important;width:auto!important;max-width:100%;margin:0!important;border-radius:8px;transition:transform .2s,box-shadow .25s;display:block}
.uf-foot .app-badges a:hover img{transform:translateY(-3px);box-shadow:0 12px 26px rgba(0,0,0,.45)}
/* blog index cards */
.blog-grid{align-items:stretch}
.blog-card{display:flex;flex-direction:column}
.blog-card h4{margin:0 0 .5rem;font-size:1.02rem;line-height:1.35}
.blog-card h4 a{color:var(--ink);text-decoration:none}
.blog-card h4 a:hover{color:var(--accent)}
.blog-card p{flex:1;font-size:.92rem}
.blog-card .lnk{margin-top:12px}

.uf-lang{position:relative}.lang-btn{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1.5px solid var(--line);border-radius:999px;padding:8px 12px;font-family:var(--fb);font-weight:700;font-size:.82rem;cursor:pointer;color:var(--ink)}.lang-btn:hover{border-color:var(--accent);color:var(--accent)}.uf-lang .lang-menu{position:absolute;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 20px 50px rgba(11,11,13,.2);padding:6px;display:none;z-index:120;min-width:172px}.uf-lang.open .lang-menu{display:block}.lang-menu button{display:block;width:100%;text-align:left;background:transparent;border:0;padding:9px 12px;border-radius:8px;font-family:var(--fb);font-weight:600;font-size:.9rem;cursor:pointer;color:var(--ink)}.lang-menu button:hover{background:var(--paper);color:var(--accent)}.goog-te-banner-frame,.goog-te-balloon-frame,#goog-gt-tt,.goog-tooltip{display:none!important}.skiptranslate>iframe{display:none!important;visibility:hidden!important}body{top:0!important}#google_translate_element{display:none!important}font[style]{background:transparent!important;box-shadow:none!important}
.uf-chat-quick{max-height:72px;overflow-y:auto}.uf-chat-input{display:flex;gap:8px;padding:10px 12px;border-top:1px solid var(--line);background:#fff}.uf-chat-input input{flex:1;min-width:0;border:1.5px solid var(--line);border-radius:999px;padding:10px 14px;font-size:.9rem;font-family:var(--fb);outline:none;color:var(--ink)}.uf-chat-input input:focus{border-color:var(--accent)}.uf-chat-input button{width:40px;height:40px;border-radius:50%;border:0;background:var(--grad);color:#fff;cursor:pointer;flex:0 0 auto;display:grid;place-items:center}
.uf-logo{display:inline-flex;align-items:center}.uf-logo-img{height:36px;width:auto;display:block;max-width:180px}.uf-foot .uf-logo-img{height:32px}.uf-logo-txt{display:none;align-items:baseline}
.grad{background:none!important;-webkit-background-clip:initial!important;-webkit-text-fill-color:currentColor!important;color:inherit!important}.uf-eyebrow{color:var(--muted)!important}.uf-hero .uf-eyebrow,.uf-sec.ink .uf-eyebrow,.calc-panel .uf-eyebrow,.mega-feature .ey,.grand .uf-eyebrow{color:#a7adb5!important}.uf-megacard .lnk,.uf-step .lnk,.lnk{color:var(--ink)!important}.uf-megacard .lnk:hover,.uf-step .lnk:hover{text-decoration:underline!important}.uf-tier.feature .price{-webkit-text-fill-color:var(--ink)!important;background:none!important;color:var(--ink)!important}.uf-tier li::before{color:var(--ink)!important}.stepnum,.uf-step .n{-webkit-text-fill-color:var(--muted)!important;background:none!important;color:var(--muted)!important}.calc-price{-webkit-text-fill-color:#fff!important;background:none!important;color:#fff!important}.uf-msg a{color:var(--ink)!important;text-decoration:underline}.uf-msg.me a{color:#fff!important}.uf-cookie a{color:#dfe2e7!important}.uf-nav>.item:hover>a,.uf-nav>.item>a:hover{color:var(--ink)!important}.mm:hover .t,.uf-drop a:hover{color:var(--ink)!important}.uf-foot a:hover{color:#fff!important}.uf-chat-quick button:hover,.uf-a11y-panel button:hover,.lang-menu button:hover{color:var(--ink)!important;border-color:var(--line)!important}.lang-btn:hover{color:var(--ink)!important;border-color:var(--ink)!important}.uf-btn{background:#fff!important;color:var(--ink)!important;border:1.5px solid var(--line)!important;box-shadow:0 6px 16px rgba(21,23,28,.09)!important}.uf-btn:hover{background:var(--grad)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 14px 32px rgba(224,24,35,.42)!important;transform:translateY(-3px)}.uf-btn.ghost{background:transparent!important;color:var(--ink)!important;border:2px solid var(--line)!important;box-shadow:none!important}.uf-btn.ghost:hover{background:var(--grad)!important;color:#fff!important;border-color:transparent!important}.uf-btn.on-dark.ghost{background:transparent!important;color:#fff!important;border:2px solid rgba(255,255,255,.4)!important;box-shadow:none!important}.uf-btn.on-dark.ghost:hover{background:var(--grad)!important;color:#fff!important;border-color:transparent!important}.uf-btn.solid-light,.uf-btn.solid-light:hover{background:#fff!important;color:var(--accent2)!important;border:0!important}.uf-head .actions a.uf-btn{background:var(--grad)!important;color:#fff!important;border:0!important;box-shadow:0 10px 24px rgba(224,24,35,.3)!important}.uf-head .actions a.uf-btn:hover{background:var(--grad)!important;color:#fff!important;transform:translateY(-2px);filter:saturate(1.1)}.uf-cookie .ck-accept{background:#fff!important;color:var(--ink)!important}.uf-cookie .ck-accept:hover{background:var(--grad)!important;color:#fff!important}.uf-chat-btn{background:#fff!important;color:var(--accent)!important;border:1.5px solid var(--line)!important}.uf-chat-btn:hover{background:var(--grad)!important;color:#fff!important}.uf-chat-input button{background:#fff!important;color:var(--accent)!important;border:1.5px solid var(--line)!important}.uf-chat-input button:hover{background:var(--grad)!important;color:#fff!important}
.uf-hero .hero-bg{opacity:.72!important}.uf-hero .hero-overlay{background:linear-gradient(90deg,rgba(10,10,12,.78) 0%,rgba(10,10,12,.52) 45%,rgba(10,10,12,.3) 100%)!important}
.card-ic{color:var(--accent);display:block;margin-bottom:13px;line-height:0}.card-ic svg{width:36px;height:36px}
.uf-head .bar{gap:10px!important}.uf-nav{gap:0!important;flex-wrap:nowrap!important}.uf-nav>.item>a{white-space:nowrap!important;padding:10px 10px!important;font-size:.9rem!important}.uf-head .actions{gap:8px!important;flex-wrap:nowrap!important}.uf-head .actions .phone{white-space:nowrap!important;font-size:.86rem!important}.uf-btn{white-space:nowrap!important}.lang-btn{white-space:nowrap!important;padding:8px 10px!important}.uf-logo-img{max-width:128px!important}@media(max-width:1200px){.uf-head .actions .phone{display:none!important}}@media(max-width:1080px){.uf-lang{display:none!important}}.uf-hero .orb{display:none!important}
.grand{background:linear-gradient(120deg,#0B0B0D 0%,#17171c 58%,#0f0f12 100%)!important}.grand::before{display:none!important}.grand-orb,.confetti{display:none!important}.grand-badge{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.2)!important}.grand-badge .pdot{background:var(--accent)!important}.grand-h .gold{-webkit-text-fill-color:#fff!important;background:none!important;color:#fff!important}
.uf-promo{position:fixed;inset:0;z-index:300;background:rgba(11,11,13,.62);display:none;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(3px)}.uf-promo.show{display:flex}.uf-promo-card{position:relative;background:var(--dark);color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:22px;max-width:460px;width:100%;padding:36px 30px 32px;box-shadow:0 40px 90px rgba(0,0,0,.55);text-align:center;animation:ufpin .3s ease}@keyframes ufpin{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}.uf-promo-x{position:absolute;top:12px;right:16px;background:transparent;border:0;color:#9aa0a8;font-size:1.7rem;line-height:1;cursor:pointer}.uf-promo-x:hover{color:#fff}.uf-promo-tag{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:7px 15px;font-family:var(--fd);font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.66rem;color:#fff}.uf-promo-tag .dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}.uf-promo-card h3{font-family:var(--fd);font-weight:900;font-size:1.5rem;margin:16px 0 10px;color:#fff}.uf-promo-card p{color:#c8cbd1;font-size:.96rem;line-height:1.5}.uf-promo-cta{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:22px}@media(max-width:480px){.uf-promo-card{padding:30px 22px 26px}.uf-promo-card h3{font-size:1.28rem}}
.uf-logo-img{height:34px!important;width:auto!important;max-width:196px!important;object-fit:contain!important}.uf-foot .uf-logo-img{height:30px!important;max-width:180px!important}
.uf-topbar{background:#171b28;color:#fff;border-bottom:1px solid rgba(255,255,255,.08);display:none}@media(min-width:900px){.uf-topbar{display:block}}.uf-topbar .tb{display:flex;align-items:center;justify-content:space-between;padding:9px 0}.tb-phone{display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.28);border-radius:100px;padding:8px 20px;font-weight:800;font-size:.82rem;color:#fff;letter-spacing:.02em}.tb-phone svg{width:14px;height:14px}.tb-right{display:flex;align-items:center;gap:12px}.tb-btn{border:1px solid rgba(255,255,255,.26);border-radius:100px;padding:9px 20px;font-weight:800;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#fff;transition:background .25s,border-color .25s}.tb-btn:hover{background:rgba(255,255,255,.08)}.tb-btn.red{border-color:var(--accent)}.tb-btn.red:hover{background:rgba(224,43,32,.16)}.tb-social{display:inline-flex;align-items:center;gap:15px;margin-left:8px}.tb-social a{color:#fff;opacity:.85;display:inline-flex;transition:opacity .2s,color .2s,transform .2s}.tb-social a:hover{opacity:1;color:var(--accent);transform:translateY(-2px)}.tb-social svg{width:18px;height:18px}@media(min-width:900px){.uf-head .actions .phone,.uf-head .actions .uf-btn.sm{display:none}}
/* Neutralise the old one-shot .reveal fade so the two systems don't fight */
html.uf-motion .reveal{opacity:1!important;transform:none!important;transition:none!important}

:root{--m-ease:cubic-bezier(.16,1,.3,1);--m-dur:1s}

/* Base state for anything that animates in */
html.uf-motion [data-m]{
  opacity:0;
  transition:none;   /* snap to the hidden state (no fade-out when the mark lands on already-visible content) */
  will-change:opacity,transform;
}
/* Directions */
html.uf-motion [data-m="up"]   {transform:translate3d(0,48px,0)}
html.uf-motion [data-m="left"] {transform:translate3d(-80px,24px,0)}
html.uf-motion [data-m="right"]{transform:translate3d(80px,24px,0)}
html.uf-motion [data-m="scale"]{transform:translate3d(0,28px,0) scale(.965)}
html.uf-motion [data-m="down"] {transform:translate3d(0,-100%,0)}
/* Whole sections glide in as a unit (subtle) and their children carry the real motion */
html.uf-motion [data-m].m-in[data-m-sec]{transition-duration:1.15s}
html.uf-motion [data-m="left"][data-m-sec] {transform:translate3d(-48px,32px,0)}
html.uf-motion [data-m="right"][data-m-sec]{transform:translate3d(48px,32px,0)}
/* Children also arrive slightly soft-focused for a premium "settle" */
html.uf-motion [data-m][data-m-child]{filter:blur(6px)}
/* Arrived */
html.uf-motion [data-m].m-in{
  opacity:1;transform:none;filter:none;
  transition:opacity var(--m-dur) var(--m-ease),transform var(--m-dur) var(--m-ease),filter var(--m-dur) var(--m-ease);
  transition-delay:var(--d,0ms);
}
html.uf-motion [data-m].m-in[data-m-child]{will-change:auto}

/* Accent tick under section headings draws itself */
html.uf-motion .uf-tick{transform:scaleX(0);transform-origin:50% 50%;transition:transform .9s var(--m-ease) calc(var(--d,0ms) + 250ms)}
html.uf-motion .m-in .uf-tick,html.uf-motion .uf-tick.m-in{transform:scaleX(1)}

/* Sticky header: keep it out of the animation system after it has dropped in */
html.uf-motion header.uf-head.m-in{will-change:auto}

/* Accessibility: honour reduced-motion, and never hide content if JS fails */
@media (prefers-reduced-motion:reduce){
  html.uf-motion [data-m]{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
  html.uf-motion .uf-tick{transform:none!important;transition:none!important}
}
html:not(.uf-motion) [data-m]{opacity:1;transform:none}
