/* Customer-facing pages must remain usable without zooming or horizontal panning. */
@media(max-width:1023px){
    :is(.access-page,.rd-page,.public-page,.marketing-home) :is(button,.btn-primary,.btn-secondary){min-height:44px;min-width:44px;touch-action:manipulation}
    :is(.access-page,.rd-page,.public-page,.marketing-home) :is(input:not([type=checkbox]):not([type=radio]),textarea,select){font-size:16px}
    .marketing-home .demo-stars{gap:0}
    .marketing-home .demo-stars button{min-width:44px}
}
@media(max-width:760px){
    :is(.access-page,.rd-page,.public-page,.marketing-home){-webkit-text-size-adjust:100%;text-size-adjust:100%}
    :is(.access-page,.rd-page,.public-page,.marketing-home) :is(input:not([type=checkbox]):not([type=radio]),textarea,select){font-size:16px;max-width:100%;min-width:0}
    :is(.access-page,.rd-page,.public-page,.marketing-home) :is(input:not([type=checkbox]):not([type=radio]),select){min-height:48px}
    :is(.access-page,.rd-page,.public-page,.marketing-home) :is(button,.btn-primary,.btn-secondary){min-height:44px;touch-action:manipulation}
    :is(.public-page,.marketing-home) :is(p,dd,li){overflow-wrap:anywhere}
    :is(.public-page,.marketing-home) :is(img,video){max-width:100%}
    .access-page .access-main,.access-page.access-register .access-main{padding:26px 20px}
    .access-page .access-heading>p:last-child{font-size:15px;line-height:1.65}
    .access-page :is(.access-field>label,.access-label-row>label){font-size:14px}
    .access-page :is(.access-help,.access-legal,.access-register .access-form>.access-legal,.access-plan-capacity,.access-plan-features,.access-offer p,.access-footer){font-size:12px;line-height:1.65}
    .access-page :is(.access-form-eyebrow,.access-plan-badge){font-size:11px}
    .access-page :is(.access-switch,.access-field-options,.access-form-section>h2,.access-form-section>legend){font-size:14px}
    .access-page .access-plan-top>strong{font-size:14px}
    .access-page .access-back{font-size:12px;min-height:44px}
    .access-page .access-label-row>a{min-height:44px;display:inline-flex;align-items:center;font-size:13px}
    .access-page .access-password>button{min-width:44px;min-height:44px;font-size:13px}
    .access-page .access-submit{min-height:50px;font-size:16px}
    .access-page .access-optional>summary{font-size:14px;min-height:44px;padding-block:12px}
    .access-page .access-plan-price>small{font-size:11px}
    .access-page .access-plan-card{min-width:0;overflow-wrap:anywhere}
    .access-page .access-logo{max-width:47vw}
    /* Put the rating above the fold; keep the business name and the actual review flow. */
    .rd-refresh .rd-header{padding:16px}
    .rd-refresh .rd-header img{width:125px}
    .rd-refresh .rd-header-note{display:none}
    .rd-refresh .rd-main{padding:0 12px calc(22px + env(safe-area-inset-bottom,0px))}
    .rd-refresh .rd-intro{padding:8px 4px 18px}
    .rd-refresh .rd-business-identity{margin-bottom:10px;gap:10px}
    .rd-refresh .rd-business-avatar{width:38px;height:38px;border-radius:12px;font-size:20px}
    .rd-refresh .rd-eyebrow{font-size:10px}
    .rd-refresh .rd-business-category{font-size:13px}
    .rd-refresh .rd-intro h1{font-size:27px;line-height:1.25;letter-spacing:-.6px;margin:0;overflow-wrap:anywhere}
    .rd-refresh .rd-intro :is(.rd-hero-copy,.rd-hero-description,.rd-benefits){display:none}
    .rd-refresh .rd-progress{margin:0 4px 16px;gap:10px}
    .rd-refresh .rd-progress li{font-size:12px;gap:6px}
    .rd-refresh .rd-progress li>span{width:25px;height:25px;font-size:12px}
    .rd-refresh .rd-card{padding:22px 16px;border-radius:18px}
    .rd-refresh .rd-card h2{font-size:24px;line-height:1.3}
    .rd-refresh .rd-card-kicker{font-size:10px;letter-spacing:.8px}
    .rd-refresh .rd-card-description{font-size:14px;line-height:1.6}
    .rd-refresh .rd-rating-options{gap:4px}
    .rd-refresh .rd-rating-options label{min-width:0;display:flex}
    .rd-refresh .rd-rating-options label>span{padding:12px 1px;min-height:90px;border-radius:10px;width:100%}
    .rd-refresh .rd-rating-options b{font-size:29px}
    .rd-refresh .rd-rating-options strong{font-size:14px}
    .rd-refresh .rd-rating-options small{font-size:10px;line-height:1.4;white-space:normal;overflow-wrap:normal}
    .rd-refresh :is(.rd-quick-disclosure,.rd-help,.rd-detail-body p,.rd-footer-assurance p){font-size:13px;line-height:1.65}
    .rd-refresh :is(.rd-field-label,.rd-field-label label,.rd-detail-body label){font-size:14px}
    .rd-refresh :is(textarea,input,select){font-size:16px!important;max-width:100%}
    .rd-refresh textarea{min-height:130px}
    .rd-refresh .rd-details>summary{font-size:14px;line-height:1.5;min-height:48px;padding:14px 12px}
    .rd-refresh .rd-details>summary span{font-size:12px}
    .rd-refresh .rd-button{font-size:16px;min-height:52px;padding:13px 16px;white-space:normal;line-height:1.5}
    .rd-refresh .rd-text-button{font-size:14px;min-height:44px;padding-block:10px;touch-action:manipulation}
    .rd-refresh .rd-footer{padding-bottom:12px}
    .rd-refresh .rd-footer-assurance p>span{font-size:12px}
    .marketing-home .hero-product-stage .review-phone{width:min(300px,100%);transform:none;right:0}
    .marketing-home .phone-content{padding-inline:12px}
    .marketing-home .demo-stars{gap:0;justify-content:space-between}
    .marketing-home .demo-stars button{min-width:44px;width:44px;min-height:48px;flex-shrink:0}
    :is(.public-page,.marketing-home) button[aria-label="Dismiss announcement"]{min-width:44px;min-height:44px}
}
