/* Bold display type pairs with regular Arial for longer reading. */
:root{--site-font:Arial,Helvetica,sans-serif;--display-font:"Arial Black","Arial-Black",Arial,sans-serif}
html{font-family:var(--site-font);font-weight:400}
body{font-size:15px;line-height:1.85}
input,select,textarea{font-family:var(--site-font);font-weight:400}
strong,b{font-weight:700}
h1,h2,h3,h4,button,.button,.text-link,.eyebrow,.primary-nav>a,.mobile-actions>a,.jump-button,.jump-panel a,.plan-tier,.feature-ribbon span,.photo-stage-top,.price strong,.price-secondary strong,.hero-pricing strong,.hero-proof strong,.membership-price>strong,.vacuum-stat strong,.add-on>strong,.calc-results strong,.calculator output,.step-number,.next-steps>li>strong{font-family:var(--display-font);font-weight:900}
h1,h2,h3,h4{letter-spacing:-.03em}
.includes,.hours dd,.footer-hours .hours dd{font-weight:700}
.accordion summary{font-family:var(--site-font);font-weight:700;letter-spacing:normal}
.quote-card blockquote{letter-spacing:normal}
.brand img{border-radius:0}
.hero-copy h1{font-size:clamp(22px,3.6vw,48px);letter-spacing:-.035em;line-height:1.16}
.hero-description{font-size:16px;line-height:1.85;max-width:520px}
.hero-pricing{font-size:14px;line-height:1.9}
.hero-proof small{font-size:12px;color:#6b535c;max-width:84px}
.section-heading p:not(.eyebrow){font-size:15px;line-height:1.85}
.plan-card{padding:24px 23px}
.plan-card h3{font-size:22px;line-height:1.3;min-height:1.3em;letter-spacing:-.035em}
.plan-tier{font-size:11px;line-height:1.7;min-height:22px;color:#79515e;letter-spacing:.025em}
.plan-description{font-size:14px;line-height:1.8;min-height:3.6em;margin-top:10px;color:#65515a}
.price{margin-top:14px}
.price strong{font-size:44px;letter-spacing:-.04em}
.price small{font-size:12px;color:#6a505b}
.price-secondary{font-size:14px;line-height:1.8;min-height:1.8em;margin-top:10px;color:#9b1229}
.includes{font-size:12px;line-height:1.8;min-height:22px;color:#77505e}
.feature-list li{font-size:14px;line-height:1.8;padding-left:22px}
.feature-list{margin-bottom:20px;gap:10px}
.plan-actions>.button{font-size:12px;line-height:1.6;min-height:50px;padding:13px 10px;gap:8px}
.plan-actions>.text-link{font-size:12px;line-height:1.8;margin-top:13px;gap:8px}
.section-note{font-size:13px;line-height:1.95}
.benefit p,.membership-feature p:not(.eyebrow){font-size:15px;line-height:1.95}
.quote-card blockquote{font-size:16px;line-height:1.9}
.accordion summary{font-size:15px;line-height:1.85}
.faq-answer p{font-size:14px;line-height:1.95}
.hero-copy .button{font-size:13px}
.membership-panel .small-note{font-size:12px!important;line-height:1.95!important}
.floating-header .primary-nav>a:not(.button){font-size:13px;letter-spacing:-.015em}
.floating-header .button-header{font-size:12px;gap:8px}
.footer-nav,.site-footer p,.footer-hours .hours>div{font-size:12px}
.mobile-actions>a{font-size:13px}
.mobile-actions.actions-pair{width:370px}
.mobile-actions.actions-pair>a:first-child{flex-grow:1}
@supports(font-size:1cqi){
 .hero-copy{container-type:inline-size}
 .hero-copy h1{font-size:min(50px,7.4cqi)}
}
@media(min-width:1200px){
 .floating-header .primary-nav{gap:clamp(10px,1.1vw,16px)}
 .floating-header .primary-nav>a:not(.button){font-size:clamp(12px,1vw,14px)}
}
@media(max-width:1199px){
 .primary-nav>a:not(.button),.floating-header .primary-nav>a:not(.button){font-size:15px}
 .plan-card{padding:24px}
 .plan-card h3{font-size:25px;min-height:1.3em}
 .plan-description{min-height:3.6em}
 .price-secondary{min-height:1.8em}
 .plan-actions>.button{font-size:13px}
}
@media(max-width:760px){
 body{font-size:15px}
 .hero-copy h1{font-size:clamp(22px,7vw,48px);letter-spacing:-.035em}
 @supports(font-size:1cqi){.hero-copy h1{font-size:min(50px,7.4cqi)}}
 .hero-copy>.eyebrow{font-size:11px}
 .hero-description{font-size:14px;line-height:1.9}
 .hero-pricing{font-size:12px;line-height:1.9}
 .hero-copy .button-row>.button{font-size:11px;padding:13px 10px;gap:7px}
 .hero-proof small{font-size:11px}
 .feature-ribbon span{font-size:11px;white-space:normal;line-height:1.8}
 .section-heading p:not(.eyebrow){font-size:14px}
 .plan-card{padding:24px 23px}
 .plan-card h3{font-size:23px;min-height:1.3em}
 .plan-tier{font-size:11px;min-height:22px}
 .plan-description{font-size:14px;min-height:3.6em}
 .price strong{font-size:42px}
 .price small{font-size:12px}
 .price-secondary{font-size:14px;min-height:1.8em}
 .includes{font-size:12px}
 .feature-list li{font-size:14px}
 .plan-actions>.button,.plan-actions>.text-link{font-size:12px}
 .section-note{font-size:12px}
 .benefit p,.membership-feature p:not(.eyebrow){font-size:14px}
 .faq-answer p{font-size:13px}
 .accordion summary{font-size:14px}
 .footer-nav,.site-footer p,.footer-hours .hours>div{font-size:11px}
 .mobile-actions>a{font-size:12px}
 .mobile-actions.actions-pair{width:auto}
}
@media(max-width:600px){
 .plan-grid{grid-template-columns:minmax(0,1fr);gap:20px}
 .plan-card{padding:24px}
 .plan-card h3{font-size:26px;min-height:0}
 .plan-description{min-height:0}
 .price strong{font-size:47px}
 .price-secondary{font-size:15px;min-height:0}
 .plan-actions>.button,.plan-actions>.text-link{font-size:13px}
}
@media(max-width:360px){.mobile-actions>a{font-size:11px;padding-inline:10px;gap:6px}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){
 .price-secondary{color:#8b0b21}
}
