/* Mobile reading pass. Desktop typography and layouts are unchanged. */
@media (max-width:700px){
  .lp-page main h1.lp-display{font-size:clamp(30px,8.4vw,36px);line-height:1.08;letter-spacing:-.035em;max-width:none;width:auto;text-wrap:balance}
  .lp-page main h2.lp-display,.lp-page main .construction-detail-copy h2,.lp-page main .repair-observe-copy h2,.lp-page main .estimate-footnote h2{font-size:clamp(26px,7.2vw,31px);line-height:1.12;letter-spacing:-.025em;max-width:none;width:auto;text-wrap:balance}
  .lp-page main h3{line-height:1.18;text-wrap:balance}
  .lp-page .projects-close-grid,.lp-page .remodel-brief-grid,.lp-page .remodel-check-grid,.lp-page .construction-notes-grid,.lp-page .repair-board-grid,.lp-page .repair-intake-grid,.lp-page .coverage-intake-grid{gap:26px}
  .lp-page .remodel-check-list,.lp-page .repair-intake-list,.lp-page .coverage-intake-list{margin-top:0}
  .lp-page .remodel-hero-copy h1{margin:16px 0 20px}
  .lp-page .lp-copy{font-size:17px;line-height:1.6}
  .lp-page .remodel-next h2,.lp-page .projects-close h2,.lp-page .estimate-aside h2{max-width:none}
  body:not(.lp-page) main h1{font-size:clamp(32px,8.6vw,38px);line-height:1.08;max-width:none;text-wrap:balance}
  body:not(.lp-page) main h2,body:not(.lp-page) .project-copy h3,body:not(.lp-page) .estimate-form-intro h2,body:not(.lp-page) #contact h2{font-size:clamp(27px,7.4vw,32px);line-height:1.12;letter-spacing:-.025em;max-width:none;text-wrap:balance}
  body:not(.lp-page) .element-standard-content h2{font-size:clamp(24px,6.5vw,28px);line-height:1.16}
  body:not(.lp-page) .element-standard-content h2 span{white-space:normal}
}
/* Keep the logo and estimate action separate on narrow phones. */
@media(max-width:430px){.lp-nav{gap:10px}.lp-brand{gap:6px}.lp-brand-logo{width:34px;height:40px;flex-basis:34px}.lp-brand-copy b{font-size:10px;letter-spacing:.08em}.lp-brand-copy span{font-size:8px;letter-spacing:.08em}.lp-header-cta{flex:0 0 122px;max-width:122px;padding:10px 6px;font-size:9px;white-space:normal;text-align:center}}

/* 2026-10-30: readable proportions at every viewport, not just phones.
   Headings use the available column, never an 8ch/9ch word tower. */
.lp-page main h1.lp-display{max-width:none;width:auto;font-size:clamp(36px,4.7vw,68px);line-height:1.06;letter-spacing:-.04em;text-wrap:balance}
.lp-page main h2.lp-display,.lp-page main .construction-detail-copy h2,.lp-page main .repair-observe-copy h2,.lp-page main .estimate-footnote h2{max-width:none;width:auto;font-size:clamp(28px,3.2vw,46px);line-height:1.12;letter-spacing:-.035em;text-wrap:balance}
.lp-page main h3{font-size:clamp(21px,1.8vw,26px);line-height:1.2;letter-spacing:-.025em}
.lp-page .lp-copy{font-size:18px;line-height:1.65}
.lp-page .lp-button{font-size:12px;letter-spacing:.06em}
.lp-page :is(.remodel-card,.remodel-check-item,.timeline-item,.construction-note,.repair-symptom,.repair-intake-item,.coverage-card,.coverage-intake-item) p{font-size:17px;line-height:1.65}
.lp-page .lp-form-field label{font-size:12px}
.lp-page .lp-form-submit-note{font-size:14px;line-height:1.55}
.lp-page .lp-footer a{font-size:16px}
.remodel-brief-grid,.remodel-check-grid,.construction-notes-grid,.repair-board-grid,.repair-intake-grid,.projects-close-grid,.coverage-intake-grid,.ev-intake-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(32px,4.5vw,64px);align-items:start}
.construction-intro,.coverage-board-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(32px,4.5vw,64px);align-items:start}
.construction-intro .lp-copy,.coverage-board-head .lp-copy{max-width:none;margin-top:30px}
.construction-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
.construction-hero-side{grid-template-columns:minmax(0,1fr) minmax(140px,.65fr);align-items:center}
.construction-hero-img{margin:0;height:260px}
.construction-detail--text-only .construction-detail-copy,.repair-observe--text-only .repair-observe-copy{width:min(calc(100% - clamp(2rem,6vw,5rem)),var(--max));max-width:none;margin:0 auto;padding:56px 0;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);column-gap:clamp(32px,4.5vw,64px);align-items:start}
.construction-detail-copy--wide>.lp-kicker,.repair-observe-copy--wide>.lp-kicker{grid-column:1/-1}
.construction-detail-copy--wide>h2,.repair-observe-copy--wide>h2{margin:18px 0 0}
.construction-detail-copy--wide>.lp-copy,.repair-observe-copy--wide>.lp-copy{margin-top:18px;max-width:none}
.remodel-next-row,.estimate-footnote-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(32px,4.5vw,64px);align-items:center}
.remodel-next-copy,.estimate-footnote .lp-copy{max-width:none}
.timeline-item,.remodel-card,.coverage-card{min-height:0;padding:26px}
.timeline-item h3,.remodel-card h3,.coverage-card h3,.repair-symptom h3{margin-top:24px}
.estimate-aside h2{margin-top:0}
.estimate-form-card>p{font-size:17px;line-height:1.55}
.ev-hero h1{max-width:none}
.remodel-brief-body{display:contents}
.remodel-brief-body>.lp-copy{padding-top:6px}
.remodel-cards{grid-column:1/-1;margin-top:8px}
.remodel-check-grid,.construction-notes-grid,.repair-board-grid,.repair-intake-grid,.coverage-intake-grid{grid-template-columns:1fr;gap:32px}
.remodel-check-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}
.construction-note-list{grid-template-columns:repeat(3,minmax(0,1fr))}
.coverage-intake-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.repair-intake-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.project-gallery .project-photo-small{grid-column:span 2}
body:not(.lp-page) .hero h1{font-size:clamp(38px,4.6vw,68px);line-height:1.06;letter-spacing:-.04em;max-width:none}
body:not(.lp-page) :is(.section h2,.project-copy h3,.estimate-form-intro h2,#contact h2,.cta h2){font-size:clamp(30px,3.2vw,46px);line-height:1.12;letter-spacing:-.035em;max-width:none;text-wrap:balance}
body:not(.lp-page) :is(.service-row p,.step p,.element-pillar p){font-size:17px;line-height:1.65}
@media(min-width:981px){.remodel-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.remodel-hero-copy{padding-right:48px}.remodel-hero-copy h1{font-size:clamp(42px,4.7vw,68px)}}
@media(max-width:1100px){.lp-navlinks{display:none}.construction-hero-grid{grid-template-columns:1fr;gap:28px}.construction-hero h1{max-width:960px}.construction-hero-side{grid-template-columns:minmax(0,1fr) 180px;gap:32px}.construction-hero-img{height:210px}}
@media(max-width:980px){
 .remodel-brief-grid,.remodel-check-grid,.construction-notes-grid,.repair-board-grid,.repair-intake-grid,.projects-close-grid,.coverage-intake-grid,.ev-intake-grid,.construction-intro,.coverage-board-head{grid-template-columns:1fr;gap:28px}
 .construction-detail--text-only .construction-detail-copy,.repair-observe--text-only .repair-observe-copy{grid-template-columns:1fr}
 .construction-detail-copy--wide>.lp-copy,.repair-observe-copy--wide>.lp-copy{max-width:68ch;margin-top:24px}
 .construction-intro .lp-copy,.coverage-board-head .lp-copy{max-width:68ch;margin-top:0}
 .timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
 .construction-note-list,.coverage-intake-list{grid-template-columns:1fr}
 .remodel-next-row,.estimate-footnote-row{grid-template-columns:1fr;gap:24px}
 .project-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
 .lp-page main h1.lp-display{font-size:clamp(32px,8.6vw,40px);line-height:1.08}
 .lp-page main h2.lp-display,.lp-page main .construction-detail-copy h2,.lp-page main .repair-observe-copy h2,.lp-page main .estimate-footnote h2{font-size:clamp(27px,7.2vw,32px);line-height:1.14}
 .lp-page main h3{font-size:22px}
 .lp-page .lp-copy{font-size:17px;line-height:1.65}
 .construction-hero-side{grid-template-columns:1fr;gap:26px}.construction-hero-img{width:min(100%,400px);height:240px}
 .construction-detail--text-only .construction-detail-copy,.repair-observe--text-only .repair-observe-copy{width:calc(100% - 28px);padding:44px 0}
 .timeline{grid-template-columns:1fr}.timeline-item,.remodel-card,.coverage-card{padding:22px}
 .remodel-check-list,.repair-intake-list{grid-template-columns:1fr}
 .remodel-next-copy,.estimate-footnote .lp-copy{margin-top:0}
 body:not(.lp-page) .hero h1{font-size:clamp(32px,8.6vw,40px)}
 body:not(.lp-page) :is(.section h2,.project-copy h3,.estimate-form-intro h2,#contact h2,.cta h2){font-size:clamp(27px,7.2vw,32px)}
}
