/* SEO/mobile refinement: shared type rhythm, readable content and compact controls. */
.hero-video-preview{position:absolute;inset:0;width:100%;height:100%;padding:0;background:#eef7ff;text-align:left;overflow:hidden}
.hero-video-preview>img{width:100%;height:100%;object-fit:contain;padding:12px 18px 48px}
.hero-video-caption{position:absolute;inset:auto 0 0;display:flex;align-items:center;gap:12px;padding:12px 18px;background:#082653f5;color:white}
.hero-video-caption strong{display:block;font-size:16px;line-height:1.3}.hero-video-caption>span:last-child>span{display:block;font-size:12px;opacity:.85;margin-top:2px}
.hero-video-play{width:40px;height:40px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--blue)}
.hero-video-preview:hover .hero-video-play{background:#d7f4ff}.hero-video-preview:focus-visible{outline-offset:-5px;outline-color:#08b6d0}
.specialty-more{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 18px;margin-top:22px;font-size:14px;color:var(--muted)}
.specialty-more a{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--blue);font-weight:800}
.d-breadcrumb{display:flex;align-items:center;gap:9px;font-size:13px;color:#62748b;margin:-12px 0 24px;flex-wrap:wrap}.d-breadcrumb a{display:inline-flex;align-items:center;min-height:30px;color:var(--blue)}
.home-page h1,.home-page h2,.dental-page h1,.dental-page h2{text-wrap:balance}
.home-page .hero-description{font-size:17px;max-width:480px}.home-page .hero h1{font-size:clamp(42px,4.4vw,58px)}
.home-page .hero .eyebrow{font-size:11px;letter-spacing:.09em}.home-page .section-copy>p{font-size:16px}.home-page .pricing-section .section-title p{font-size:16px}
.home-page .check-list li{line-height:1.6}.home-page .faq-list summary{font-size:16px;min-height:56px}.home-page .faq-list details>p{font-size:16px;line-height:1.7}
.home-page .specialty-copy>p{font-size:16px}.home-page .specialty-panel{scroll-margin-top:12px}.home-page .price-card .button{min-height:48px;font-size:15px}
.dental-page .od-section{padding-top:72px;padding-bottom:72px}.dental-page .d-section-copy h2{max-width:580px}.dental-page .d-section-title>p{max-width:600px;margin-inline:auto}
.dental-page .d-hero-copy{min-width:0}.dental-page .d-preview{transform:none}.dental-page .d-tour-controls .button{min-width:112px}
.dental-page .price-card--pro{transform:none}.dental-page .pricing-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.06fr)}
.dental-page .d-message-demo{box-shadow:0 12px 32px #08265308}.dental-page .d-closing .eyebrow{font-size:12px}
@media(max-width:800px){
 .home-page .wrap,.dental-page .wrap{width:calc(100% - 40px)}
 .home-page .hero-layout{padding-top:36px;padding-bottom:32px;gap:28px;min-height:0}
 .home-page .hero h1{font-size:clamp(34px,8.8vw,45px);line-height:1.12;letter-spacing:-.045em}
 .home-page .hero-description{font-size:16px;line-height:1.65;margin-top:18px;max-width:580px}
 .home-page .hero .eyebrow{font-size:10px;line-height:1.6;letter-spacing:.08em;margin-bottom:16px}
 .home-page .hero-actions{display:grid;grid-template-columns:1fr;gap:4px;margin-top:22px;max-width:480px}
 .home-page .hero-actions>.primary{min-height:52px;font-size:16px;width:100%}
 .home-page .hero-actions>.text-button{min-height:44px;justify-self:center;font-size:15px}
 .home-page .microcopy{font-size:13px;margin-top:10px;line-height:1.6}.home-page .hero-trust{margin-top:22px;flex-wrap:wrap;row-gap:14px}
 .home-page .hero-trust p{font-size:12px}.home-page .hero-trust strong{font-size:13px}.home-page .trust-cloud{font-size:12px}
 .home-page .hero-standards{font-size:12px;line-height:1.6;padding:10px 12px;margin-top:18px}
 .home-page .hero-demo{max-width:580px;margin-inline:auto}.hero-video-preview>img{padding:8px 10px 42px}.hero-video-caption{padding:10px 13px;gap:10px}.hero-video-caption strong{font-size:14px}.hero-video-caption>span:last-child>span{font-size:11px}.hero-video-play{width:34px;height:34px}
 .home-page .section{padding-top:56px;padding-bottom:56px}.home-page .section-title{margin-bottom:28px}
 .home-page .section-copy h2,.home-page .section-title h2,.home-page .functions-heading h2,.home-page .reminder-copy h2{font-size:30px;line-height:1.2;letter-spacing:-.035em}
 .home-page .section-copy>p,.home-page .reminder-description,.home-page .functions-description{font-size:16px;line-height:1.65}
 .home-page .section-copy>.check-list li{font-size:15px}.home-page .number-list strong{font-size:16px}.home-page .number-list p{font-size:14px}
 .home-page #vista-general .demo-layout{width:calc(100% - 40px);gap:24px}.home-page #vista-general .overview-artwork{width:100%;margin:0}
 .home-page .reminder-layout{gap:24px}.home-page .reminder-visual{min-width:0}.home-page .reminder-settings{gap:8px}.home-page .reminder-settings li{font-size:13px}
 .home-page .functions-grid{gap:22px}.home-page .function-item{gap:14px}.home-page .function-icon-box{flex-basis:48px;height:48px;border-radius:12px}.home-page .function-item p{font-size:14px;line-height:1.55}
 .home-page .specialty-tabs.specialty-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:14px}
 .home-page .specialty-tabs .specialty-card{min-height:56px;flex-direction:row;justify-content:flex-start;padding:9px;gap:8px;font-size:14px;line-height:1.3}
 .home-page .specialty-card-icon{width:23px;height:23px}.home-page .specialty-card>span{min-height:0;text-align:left;display:block}
 .home-page .specialty-panel{padding:12px;gap:20px;grid-template-columns:minmax(0,1fr)}.home-page .specialty-panel .records-visual{order:-1;width:100%;margin:0}
 .home-page .specialty-copy{padding:3px 5px 8px}.home-page .specialty-copy h3{font-size:25px;line-height:1.25}.home-page .specialty-copy .check-list li{font-size:15px}
 .specialty-more{justify-content:flex-start;gap:2px;margin-top:16px;font-size:14px}.specialty-more a{font-size:14px}.specialty-more .icon{width:18px;height:18px}
 .home-page .testimonials-layout{gap:20px}.home-page .testimonial-card{padding:18px;flex-basis:88%;max-width:440px}.home-page .testimonial-card blockquote{font-size:15px;line-height:1.6;margin:10px 0 18px}
 .home-page .testimonials-controls button{min-height:44px}.home-page .testimonials-hint{font-size:12px}
 .home-page .pricing-grid,.dental-page .pricing-grid{grid-template-columns:minmax(0,1fr);max-width:480px;gap:26px;margin-top:34px}
 .home-page .pricing-grid .price-card:not(.price-card--pro),.dental-page .pricing-grid .price-card:not(.price-card--pro){margin-inline:0}
 .home-page .pricing-grid .price-card{padding:24px 22px 20px}.home-page .pricing-grid .price-card .check-list li{font-size:15px;line-height:1.55}
 .home-page .pricing-grid .price-card .button{min-height:52px;font-size:16px;margin-top:22px}.home-page .pricing-grid .plan-extras p,.home-page .pricing-grid .plan-extras h4{font-size:13px}
 .home-page .pricing-grid .price-card--pro{margin-block:22px 0}.home-page .faq-layout{gap:28px}.home-page .faq-list summary{font-size:16px;padding-block:18px}.home-page .faq-list details>p{font-size:16px}
 .home-page .final-inner h2{font-size:32px;line-height:1.2}.home-page .final-inner>p:not(.eyebrow){font-size:16px}.home-page .final-micro{font-size:13px}
 .home-page .sticky-cta>div>span{font-size:11px}.home-page .sticky-cta strong{font-size:15px}.home-page .sticky-cta small{font-size:11px}.home-page .sticky-cta .button{min-height:48px;font-size:14px;padding-inline:16px}
 .home-page footer{padding-bottom:calc(98px + env(safe-area-inset-bottom))}.home-page .footer-bottom{font-size:12px;gap:14px}.home-page .footer-bottom a{display:inline-flex;align-items:center;min-height:40px}
 .dental-page .d-hero{padding-top:25px;padding-bottom:34px}.d-breadcrumb{margin:0 0 17px;font-size:12px;gap:8px}
 .dental-page .d-hero h1{font-size:clamp(35px,8.8vw,44px);line-height:1.12}.dental-page .d-lead{font-size:16px;line-height:1.65;margin-top:18px}
 .dental-page .d-hero .d-split{gap:28px}.dental-page .d-hero .eyebrow{font-size:10px;letter-spacing:.09em;margin-bottom:15px}
 .dental-page .d-preview-content{padding:17px}.dental-page .d-preview-title h2{font-size:21px}.dental-page .d-preview-metrics{margin:16px 0}.dental-page .d-appointment{padding:13px 0}
 .dental-page .d-section,.dental-page .od-section{padding-top:52px;padding-bottom:52px}.dental-page .d-section-title{margin-bottom:25px}
 .dental-page .d-section-title h2,.dental-page .d-section-copy h2,.dental-page .d-closing h2{font-size:30px;line-height:1.2;letter-spacing:-.035em}
 .dental-page .d-section-title p:not(.eyebrow),.dental-page .d-section-copy>p:not(.d-note):not(.eyebrow){font-size:16px;line-height:1.65}
 .dental-page .d-tour-copy{padding:16px 18px}.dental-page .d-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;overflow:visible;padding:0;margin-top:12px}
 .dental-page .d-steps li{min-width:0}.dental-page .d-steps button{position:relative;min-height:48px;justify-content:center;padding:8px 2px;gap:0}
 .dental-page .d-steps button>span:first-child{font-size:15px}.dental-page .d-steps button>span:last-child{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .dental-page .d-tour-stage{padding:20px}.dental-page .d-step-panel{padding-top:20px}.dental-page .d-step-panel h3{font-size:23px}.dental-page .d-panel-icon{width:42px;height:42px;margin-bottom:14px}
 .dental-page .d-tour-controls .button{min-width:0;flex:1;padding-inline:10px;min-height:48px}
 .dental-page .d-accordion summary{padding:17px;font-size:16px;min-height:56px}.dental-page .d-accordion details>div{padding:0 17px 18px}.dental-page .d-accordion h3{font-size:17px}
 .dental-page .d-support{padding:24px}.dental-page .d-plan-caption{font-size:13px}.dental-page .d-conditions{font-size:14px;line-height:1.65}
 .dental-page .offer-banner[data-state="ended"] .offer-message>span{display:none}.dental-page .d-preview-foot{line-height:1.5}
}
@media(max-width:359px){
 .home-page .wrap,.dental-page .wrap,.home-page #vista-general .demo-layout{width:calc(100% - 32px)}
 .home-page .hero h1,.dental-page .d-hero h1{font-size:34px}.home-page .section-copy h2,.home-page .section-title h2,.home-page .functions-heading h2,.dental-page .d-section-title h2,.dental-page .d-section-copy h2{font-size:28px}
 .home-page .header-links{gap:10px}.home-page .header-links .login{font-size:11px}.home-page .blog-link{font-size:12px}
 .home-page .sticky-cta{gap:8px;padding-inline:12px}.home-page .sticky-cta .button{font-size:13px;padding-inline:12px}
 .dental-page .d-tour-copy{padding-inline:12px}.dental-page .d-tour-stage{padding:17px}.dental-page .d-steps{gap:4px}
 .dental-page .d-record{padding:13px;font-size:14px}.dental-page .d-field-row{font-size:13px}.dental-page .d-file{padding:13px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.home-page *,.dental-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media(max-width:800px){
 .home-page .booking-visual{width:100%;max-width:400px;margin-inline:auto;padding-bottom:60px;min-width:0}
 .home-page .phone{width:min(267px,100%);max-width:100%;transform:none;margin-inline:auto}
 .home-page .booking-background{width:min(340px,100%);height:auto;aspect-ratio:1;left:50%;transform:translateX(-50%)}
 .home-page .booking-badge{bottom:0;right:0;max-width:100%;padding:12px 14px}.home-page .booking-badge strong{font-size:12px}.home-page .booking-badge span{font-size:11px}
 .home-page .reminder-artwork{width:100%;margin-inline:0}.home-page .hero-video-preview>img{max-width:100%}
}
