/* Shared phone typography and sizing. Desktop layouts keep their existing scale. */
@media(max-width:650px){
 html{scroll-padding-top:104px}
 body{font-size:16px;-webkit-text-size-adjust:100%}
 #main{min-width:0}
 #main .wrap{width:calc(100% - 36px);max-width:100%;margin-inline:auto}
 #main h1{font-family:var(--sans);font-size:clamp(36px,10.2vw,46px);line-height:1.09;letter-spacing:-1.5px;overflow-wrap:break-word}
 #main h2{font-family:var(--sans);font-size:clamp(28px,8vw,34px);line-height:1.16;letter-spacing:-1px;overflow-wrap:break-word}
 #main h3{line-height:1.22;overflow-wrap:break-word}
 #main p{line-height:1.7}
 #main :is(.service-hero,.res-hero,.rf-hero,.cc-hero,.commercial-restored-hero) p{font-size:16px}
 #main .eyebrow{font-size:10px;line-height:1.6;letter-spacing:1px}
 #main :is(.section-head,.services-intro,.conversation-heading){gap:20px}
 #main :is(.section-head,.services-intro)>*{min-width:0}
 #main :is(.button,.text-link){max-width:100%;min-height:48px;font-size:14px;line-height:1.4;white-space:normal}
 #main .button{padding:14px 17px;gap:16px;border-radius:10px}
 #main .button>span{flex:none}
 #main :is(input:not([type=radio]):not([type=checkbox]),select,textarea){max-width:100%;font-size:16px}
 #main fieldset{min-inline-size:0}
 #main :is(.service-hero,.res-hero,.cc-hero,.commercial-restored-hero){padding-top:28px;padding-bottom:36px;gap:28px}
 #main .breadcrumbs{font-size:11px;line-height:1.7;white-space:normal}
 #main :is(.service-detail,.service-options,.service-faq,.res-details,.res-work,.cc-choice,.cc-facilities,.cc-work){padding-block:36px}
 .fixed-contact .fixed-estimate{font-size:13px;text-align:center}
}
@media(max-width:360px){.fixed-contact .fixed-estimate{font-size:12px}}
@media(max-width:650px){
 #main .partners-tiers{grid-template-columns:minmax(0,1fr);gap:10px}
 #main .partners-tiers article{min-width:0;display:grid;grid-template-columns:85px minmax(0,1fr);gap:5px 14px;padding:16px}
 #main .partners-tiers article>span{grid-column:1;font-size:10px}
 #main .partners-tiers article>strong{grid-column:1;grid-row:2/4;font-size:36px;line-height:1.1}
 #main .partners-tiers article>h3{grid-column:2;grid-row:1/3;font-size:18px;align-self:center;margin:0}
 #main .partners-tiers article>p{grid-column:2;font-size:12px;margin:0}
 #main .project-card,#main .project-card .card-image{min-width:0;max-width:100%;width:100%}
 body:has(.menu-toggle[aria-expanded=true]) .mago-chat-entry{visibility:hidden}
}
