@media(max-width:1180px){
  .shell{width:min(100% - 36px,1160px)}
  .header-grid{grid-template-columns:auto auto 1fr}.primary-nav{position:absolute;display:none;left:18px;right:18px;top:84px;padding:14px;background:var(--paper);border:1px solid var(--ink);box-shadow:var(--shadow);flex-direction:column}.primary-nav.open{display:flex}.primary-nav a{padding:13px}
  .nav-toggle{display:flex;flex-direction:column;gap:4px;margin-left:auto;padding:10px;border:0;background:transparent}.nav-toggle span{width:25px;height:2px;background:var(--ink)}.nav-toggle em{font-size:.55rem;font-style:normal;font-weight:800}
  .hero-grid{grid-template-columns:1fr .48fr;gap:30px}.hero-copy h1{font-size:clamp(3.3rem,6vw,5.8rem)}
  .service-board,.area-grid{grid-template-columns:repeat(2,1fr)}
  .commercial-grid{grid-template-columns:1fr 1fr}.commercial-grid>div:first-child{grid-column:1/-1}
  .hub-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1.3fr 1fr 1fr}.footer-grid section:last-child{grid-column:2/-1}
}
@media(max-width:900px){
  body{padding-bottom:66px}.section{padding:78px 0}.utility-grid{grid-template-columns:1fr auto}.utility-grid span:nth-child(2){display:none}.header-quote{display:none}
  .header-grid{grid-template-columns:1fr auto;min-height:76px}.primary-nav{top:76px}
  .home-hero,.hero-grid{min-height:auto}.hero-grid{grid-template-columns:1fr;padding-top:90px;padding-bottom:105px}.dispatch-board{width:min(100%,520px);justify-self:end;transform:none}
  .hero-index{grid-template-columns:1fr}.hero-index span:nth-child(n+2){display:none}
  .field-heading,.photo-ledger-grid,.method-duo-grid,.property-layout,.pricing-grid,.hotwater-grid,.final-grid,.inner-hero-grid,.detail-hero-grid,.quote-hero-grid,.company-layout,.quote-layout,.footer-callout{grid-template-columns:1fr}
  .field-heading{gap:20px}.field-heading>p{padding-left:15px}
  .photo-large{min-height:480px}.method-panel{grid-template-rows:330px 1fr}.property-layout{grid-template-areas:"intro" "photo" "stack"}.property-intro,.scope-nav,.article-toc,.company-index,.quote-aside{position:static}
  .property-photo{height:430px}.pricing-grid{gap:45px}.hotwater-grid figure{min-height:470px}
  .final-grid .field-number,.footer-callout .field-number{writing-mode:horizontal-tb}.final-grid{gap:20px}
  .catalog-grid,.guide-grid{grid-template-columns:repeat(2,1fr)}
  .detail-layout,.article-layout{grid-template-columns:1fr;gap:25px}.scope-nav,.article-toc{display:flex;overflow:auto;gap:10px;padding:12px}.scope-nav>span,.article-toc>span{display:none}.scope-nav>a,.article-toc>a{min-width:210px;border:1px solid rgba(255,255,255,.2);padding:10px}.scope-nav .scope-quote,.article-toc .scope-quote{min-width:190px;margin:0}
  .company-index{display:flex;overflow:auto;gap:10px}.company-index>a{min-width:190px}
  .footer-callout{gap:20px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid section:last-child{grid-column:auto}.footer-bottom{grid-template-columns:1fr;justify-items:center}.footer-bottom p:last-child{text-align:center}
  .mobile-convert{position:fixed;display:grid;grid-template-columns:1fr 1.4fr;left:0;right:0;bottom:0;z-index:70;background:var(--paper);border-top:1px solid var(--ink);box-shadow:0 -10px 30px rgba(0,0,0,.12)}.mobile-convert a{display:flex;justify-content:center;align-items:center;gap:8px;min-height:66px;font-size:.72rem;font-weight:900;text-transform:uppercase}.mobile-convert a:last-child{background:var(--orange)}.mobile-convert .icon{width:20px}
}
@media(max-width:650px){
  .shell{width:calc(100% - 24px)}h1{font-size:clamp(2.65rem,13vw,4rem)}h2{font-size:clamp(2rem,10vw,3.2rem)}.section{padding:60px 0}
  .utility-grid{display:flex;justify-content:center}.utility-grid a{display:none}.brand-copy b{font-size:.82rem}.brand-copy small{font-size:.47rem}.brand-mark{width:38px;height:38px}
  .hero-grid{padding-top:58px;padding-bottom:92px}.hero-copy h1{font-size:clamp(3rem,14vw,4.6rem)}.hero-lead{font-size:1rem}.hero-actions{display:grid}.hero-actions .button{width:100%}
  .dispatch-board{width:100%}.dispatch-board li{padding:12px}.service-ticker>div{justify-content:flex-start;animation:ticker 22s linear infinite}@keyframes ticker{to{transform:translateX(-65%)}}
  .service-board,.area-grid,.switch-grid,.catalog-grid,.guide-grid,.hub-grid,.commercial-grid{grid-template-columns:1fr}.service-cell{min-height:290px}.photo-large{min-height:390px}.photo-copy{padding:50px 24px}.switch-grid>a{grid-template-columns:42px 1fr 20px;padding:23px 9px}.switch-grid h3{font-size:1.12rem}.switch-grid p{font-size:.8rem}
  .method-panel{grid-template-rows:260px 1fr}.method-panel>div{padding:38px 22px}.property-photo{height:300px}.property-stack>a{grid-template-columns:75px 1fr 20px;padding:22px 5px}.quote-ledger>div{grid-template-columns:1fr;gap:4px}.hotwater-grid figure{min-height:330px}.hotwater-grid>div{padding:50px 24px}
  .compliance-grid{grid-template-columns:1fr}.compliance-grid>a{justify-content:space-between}.final-grid{grid-template-columns:1fr}.final-grid .button{width:100%}
  .inner-hero,.detail-hero,.quote-hero{padding:60px 0}.index-gauge,.scope-ticket,.company-seal{margin:0 8px}.detail-layout,.article-layout{padding-top:35px;padding-bottom:60px}
  .scope-section{grid-template-columns:1fr;padding:34px 22px}.scope-code{flex-direction:row;align-items:center;gap:10px}.check-list,.decision-check ul{grid-template-columns:1fr}.scope-convert,.company-cta,.article-section,.source-panel{padding:35px 22px}.article-hero{min-height:540px}.article-hero-content{padding-top:65px;padding-bottom:45px}.article-hero h1{font-size:clamp(2.5rem,11vw,4rem)}.article-intro,.safety-panel{padding:24px}.company-content>section{padding:38px 22px}.company-photo{height:330px}.contact-cards,.field-grid{grid-template-columns:1fr}.field-grid .wide{grid-column:auto}.quote-form fieldset{padding:28px 20px}.submit-button{margin:25px 20px}.form-note{padding:0 20px 25px}
  .filter-line{overflow:auto;white-space:nowrap}.footer-grid{grid-template-columns:1fr}.footer-grid section:last-child{grid-column:auto}.footer-callout{padding-top:45px;padding-bottom:45px}.footer-bottom{align-items:center}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
