/* Small-screen readability and keyboard/touch access. No content is hidden for SEO. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:130px}
:where(main,section,article,figure,form,fieldset,dialog){min-inline-size:0}
:where(h1,h2,h3,p,address){overflow-wrap:break-word}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #ae5a25;outline-offset:3px}
.ms-local-note{line-height:1.65;max-width:850px;margin:24px auto;padding:20px;border:1px solid #ddd4c7;border-radius:12px;background:#fff;color:#30332d}
.ms-local-note h2{font:700 22px/1.3 Arial,sans-serif;letter-spacing:normal;text-transform:none;color:inherit;margin:0 0 12px}
.ms-local-note p{font:16px/1.65 Arial,sans-serif;margin:0 0 12px;color:inherit}
.ms-local-note a{color:#8b431c;text-decoration:underline;overflow-wrap:anywhere}
@media(max-width:760px){
 :where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),select,textarea){font-size:16px!important;max-inline-size:100%;min-inline-size:0}
 :where(button,summary,.btn,.button,.cta,.primary,.menuToggle,.menu-toggle,.menu-button){min-height:44px}
 :where(dialog){max-inline-size:calc(100vw - 24px);max-block-size:calc(100dvh - 24px);overscroll-behavior:contain}
 :where(.wrap,.shell,.container,.card-body,.field,.header-inner,.price-row,.section-heading)>*{min-width:0}
 :where(h1){hyphens:auto}
 :where(a[href^="tel:"],a[href^="mailto:"]){overflow-wrap:anywhere}
 .ms-local-note{margin:20px 16px;padding:18px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
/* FM navigation and forms must remain usable down to 320 CSS pixels. */
@media(max-width:980px){
 .header .wrap{grid-template-columns:minmax(0,1fr) auto}
 .header .wrap nav>a{display:inline-flex;align-items:center;min-height:44px;padding:8px 10px}
 .header .wrap nav .city-dropdown{position:fixed!important;left:12px!important;right:12px!important;top:auto!important;width:auto!important;max-width:calc(100vw - 24px)!important;max-height:55dvh;overflow-y:auto;grid-template-columns:repeat(2,minmax(0,1fr));transform:none!important}
 .header .wrap nav{gap:4px}
 .header .wrap nav summary{padding:8px 10px}
}
@media(max-width:760px){
 .header .logo{gap:6px;font-size:12px}.header .logo small{font-size:9px}.header .actions .btn{padding:10px;font-size:13px}
 .hero-grid,.request-card,.fm-product-layout,.fm-product-content{min-width:0}
 .request-card{padding:18px}.request-card .row{grid-template-columns:minmax(0,1fr)}
 .branch-overlay{padding:12px}.branch-card{padding:22px 16px;max-height:calc(100dvh - 24px);overscroll-behavior:contain}
 .branch-option{white-space:normal}.branch-grid{gap:6px}
 .sticky-mobile{bottom:calc(8px + env(safe-area-inset-bottom));max-width:calc(100vw - 24px)}
 body:has(.sticky-mobile){padding-bottom:calc(100px + env(safe-area-inset-bottom))}
 .price-row{flex-wrap:wrap;gap:8px}.price-row>a{min-height:44px;display:inline-flex;align-items:center}
 #fm-order-dialog,#fm-success-dialog{max-width:calc(100vw - 24px);box-sizing:border-box}
 .modal-card{max-height:calc(100dvh - 24px);overflow:auto;overscroll-behavior:contain}
 .solution-actions{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:360px){.header .logo small{max-width:130px;line-height:1.3}.header .wrap nav{font-size:12px}.header .wrap nav summary{padding:8px}.fm-order-recommendations{grid-template-columns:minmax(0,1fr)}}
/* Compact header: navigation disclosures must not inherit FAQ card styling. */
.header .wrap nav>details.city-menu{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;min-width:0}
.header .wrap nav>details.city-menu>summary{border:0;background:transparent;box-shadow:none;border-radius:6px;min-height:44px;display:flex;align-items:center;padding:8px 4px;font:inherit;font-weight:650;line-height:1.3}
.header .wrap nav>details.city-menu[open]>summary{color:var(--green-dark,#c55016)}
.header .wrap nav>details.city-menu>summary:focus-visible{outline:3px solid #ae5a25;outline-offset:2px}
@media(max-width:980px){
 .header .wrap{column-gap:12px;row-gap:0;padding-top:8px}
 .header .wrap nav{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:stretch;gap:0 12px;width:100%;padding:4px 0 8px;font-size:14px;line-height:1.3}
 .header .wrap nav>a,.header .wrap nav>details.city-menu>summary{box-sizing:border-box;width:100%;min-width:0;min-height:44px;margin:0;padding:10px 0;color:var(--ink,#202520);font-size:inherit;font-weight:650;text-align:left;text-decoration:none;white-space:normal;overflow-wrap:break-word}
 .header .wrap nav>details.city-menu>summary{display:block;position:relative;padding-right:20px}
 .header .wrap nav>details.city-menu>summary::after{position:absolute;right:2px;top:50%;transform:translateY(-50%);margin:0;line-height:1}
 .header .wrap nav>details.city-menu[open]>summary{color:var(--green-dark,#c55016)}
 .header .wrap nav .city-dropdown{margin-top:4px;max-height:min(55dvh,420px);overscroll-behavior:contain}
}
@media(max-width:360px){
 .header .wrap{column-gap:8px}
 .header .wrap nav{gap:0 8px;font-size:13px}
 .header .logo-mark{width:34px;height:34px;flex-shrink:0}
 .header .logo small{max-width:150px;white-space:normal}
}
