/* Reading scale: body 16–18px, labels 14px+, controls 15–16px. */
body{font-size:16px}
p{line-height:1.75}
.hero .hero-title{font-size:clamp(76px,6.4vw,84px);line-height:1.06;letter-spacing:-3.8px}
.hero-copy>p{font-size:18px;line-height:1.7}
h2,.cta h2{font-size:clamp(40px,3.6vw,48px);line-height:1.16;letter-spacing:-1.8px}
h3,.steps h3,.care-details h3,.blog-card h3{font-size:28px;line-height:1.3;letter-spacing:-.7px}
.care-details h3{font-size:32px}
.benefits h3,.dashboard-banner h3{font-size:24px;line-height:1.35}
.dashboard h2,dialog h2,.install-panel h2{font-size:32px;line-height:1.2}
.section-top>p,.care-grid p,.care-details p,.why p,.steps p,.benefits p,.faq details p,.cta p,.install-panel p,.blog-card p,.blog-placeholder p,.dashboard-banner p,.appointment p,dialog p{font-size:16px;line-height:1.75}
.about p{font-size:17px}
header nav{font-size:15px;gap:18px}
.btn,.text-btn,.install-link,.footer-start,.scene-bottom .btn,.appointment .btn{font-size:16px;line-height:1.4;min-height:44px}
.nav-actions .text-btn,.nav-actions .btn.small{font-size:15px;line-height:1.4}
.nav-actions .btn.small{padding:12px 18px}
.consultation-channels span{font-size:15px;line-height:1.4}
.hero-price>span{font-size:16px;line-height:1.65}
.hero-price .price-unit{font-size:18px}
.care-note strong,.scene-bottom strong{font-size:16px;line-height:1.5}
.care-note small,.scene-bottom small{font-size:14px;line-height:1.6}
.eyebrow,.tiny,.blog-placeholder>span,.blog-card small{font-size:14px;line-height:1.6;letter-spacing:.8px}
.scene-heading{font-size:14px;line-height:1.5;letter-spacing:.6px}
.scene-heading>span{align-items:center}
.scene-dot{flex-shrink:0}
.consultation-visual #motion-toggle{font-size:14px;min-height:44px}
.promise-strip{font-size:14px;line-height:1.6;flex-wrap:wrap;gap:18px}
.tabs button{font-size:16px;line-height:1.45;min-height:44px}
.care-details .feature-list,.feature-list,.faq summary{font-size:16px;line-height:1.6}
.install-pill-copy strong{font-size:16px;line-height:1.4}
.install-pill-copy small{font-size:14px;line-height:1.5}
.site-footer a,.site-footer .footer-link,.footer-locations strong,.footer-locations address span:not(.footer-icon){font-size:16px;line-height:1.65}
.footer-column h3{font-size:18px;line-height:1.4;letter-spacing:0}
.footer-label,.site-footer .footer-bottom{font-size:14px;line-height:1.6}
.footer-intro>div>span,.site-footer .footer-notice p{font-size:16px;line-height:1.65}
label,input,select,textarea,.check,.care-limit,.care-limit p,.form-error,.demo-notice{font-size:16px;line-height:1.65}
.small-copy{font-size:14px!important;line-height:1.65}
.toast{font-size:16px;line-height:1.5}
.appointment h3{font-size:24px}
@media(max-width:1100px){
  .hero-grid{grid-template-columns:1fr 1fr;gap:32px}
  .hero .hero-title{font-size:76px}
}
@media(max-width:760px){
  .hero-grid{grid-template-columns:1fr;gap:28px;margin-top:0}
  .hero .hero-title{font-size:clamp(48px,12vw,56px);line-height:1.08;letter-spacing:-2px}
  .hero-copy>p{font-size:18px}
  h2,.cta h2{font-size:clamp(32px,7.5vw,36px);line-height:1.2;letter-spacing:-1px}
  .care-grid h3,.care-details h3,.steps h3,.blog-card h3{font-size:28px}
  .install-panel h2,.dashboard h2,dialog h2{font-size:28px}
  .benefits h3,.dashboard-banner h3{font-size:24px}
  .scene-heading{flex-wrap:wrap;gap:12px;align-items:flex-start}
  .scene-heading>span{flex:1 1 200px}
  .scene-bottom strong{font-size:16px}
  .scene-bottom small{font-size:14px}
  .hero-price .price-unit{font-size:18px}
  .hero .hero-install{max-width:calc(100vw - 32px)}
  .hero-install .install-pill-copy strong{font-size:16px}
  .hero-install .install-pill-copy small{font-size:14px}
  .promise-strip{font-size:14px;gap:20px 16px}
  .tabs{border-radius:20px;align-items:stretch}
  .tabs button{font-size:15px;padding:12px 8px;border-radius:16px}
  .footer-contact-row{gap:12px}
  .footer-contact a{font-size:16px;overflow-wrap:anywhere}
  .footer-contact .footer-icon{width:36px;height:36px}
  .footer-intro p{font-size:20px}
  .site-footer .footer-bottom{font-size:14px}
}
@media(max-width:600px){
  header{flex-wrap:wrap;gap:12px}
  .nav-actions{width:100%;justify-content:space-between;gap:12px}
  .nav-actions .text-btn,.nav-actions .btn.small{font-size:15px}
  .footer-grid{grid-template-columns:1fr;gap:32px}
  .footer-locations{grid-column:auto}
  .footer-contact a{overflow-wrap:normal}
  html{scroll-padding-top:165px}
}
@media(max-width:600px){.hero .actions{display:grid;grid-template-columns:1fr}.hero .actions .btn{width:100%}}

/* A measured digit entrance and a soft moving underline. */
.hero-price .price-amount{position:relative;animation:none!important;padding-bottom:7px;white-space:nowrap}.hero-price .price-amount>span{display:inline-block;color:inherit;font:inherit;letter-spacing:inherit;line-height:inherit;margin:0}.hero-price .price-amount::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;border-radius:3px;background:linear-gradient(90deg,#cee8dc 0%,#cee8dc 30%,#108c80 50%,#cee8dc 70%,#cee8dc 100%);background-size:240% 100%}
@media(prefers-reduced-motion:no-preference){.price-amount>span{animation:price-digit-arrive .65s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--digit)*70ms)}.price-amount::after{animation:price-light-sweep 4.5s ease-in-out infinite}}@keyframes price-digit-arrive{from{opacity:.35;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes price-light-sweep{0%,15%{background-position:100% 0}75%,100%{background-position:0 0}}
@media(prefers-reduced-motion:reduce){.price-amount>span,.price-amount::after{animation:none!important}}
.install-instructions{display:grid;gap:12px;margin:20px 0}.install-instructions section{padding:16px 18px;border:1px solid #d8e6dc;border-radius:14px;background:#f5f9f6}.install-instructions h3{font-size:18px;margin:0 0 6px;letter-spacing:0}.install-instructions p{margin:0}.install-browser-help{padding-top:18px;border-top:1px solid #d8e6dc}.install-browser-help label{margin:14px 0 4px}.install-browser-help input{margin:0 0 12px;font-size:14px}#install-status:empty{display:none}#install-status{padding:12px 15px;border-radius:10px;background:#e8f4ec;color:#245e4e}.install-browser-help strong{font-size:16px}

.install-availability{font-size:14px!important;line-height:1.6;margin-top:10px!important;color:#426455}.hero .hero-install[hidden]{display:none!important}
