/* Compact post-hero rhythm: less empty space while retaining an editorial feel. */
.section:not(.product){padding:88px 0}
.story,.cta-section{padding:88px 0}
.location-section{padding:86px 0}
.section-head{gap:64px;margin-bottom:50px}
.calculator+.steps-title{margin-top:38px}
.steps-title{margin-bottom:16px}
.step{min-height:250px;padding:23px 20px 12px 0}
.step+.step{padding-left:20px}
.step-icon{width:40px;height:40px;margin:24px 0 18px}
.step-line-icon{width:20px;height:20px}
.terms-note{margin-top:18px}
.reasons-grid{gap:7%}
.reasons-image{height:600px}
.reasons-copy h2{margin-bottom:32px}
.reason-list article{padding:15px 0}
.offer-case{margin-top:22px;padding:22px}
.offer-case>h3{margin-bottom:16px}
.offer-points>div{padding-top:12px;padding-bottom:12px}
.offer-conclusion{margin-top:14px}
.reasons-cta{margin-top:22px}
.story-grid{gap:8%}
.story h2{margin-bottom:25px}
.story blockquote{margin-top:27px}
.story-collage{height:580px}
.location-grid{gap:7%}
.location-copy>p:not(.eyebrow){margin:20px 0}
.location-copy address{margin:20px 0}
.map-wrap{height:460px}
.field-gallery{grid-template-rows:repeat(2,260px)}
.cta-grid{gap:9%}
.interest-form{padding:36px}
.faq-grid{gap:8%}
.faq-intro>p:not(.eyebrow){margin:20px 0 16px}
.faq-list summary{padding:18px 0}
.faq-list details p{margin-bottom:18px}
.site-footer{padding-top:55px}
.footer-bottom{margin-top:45px}
.legal-panels{margin-top:42px}

@media (max-width:900px){
  .section:not(.product),.story,.cta-section{padding:72px 0}
  .location-section{padding:72px 0}
  .section-head{margin-bottom:38px}
  .section-head,.reasons-grid,.story-grid,.product-grid,.cta-grid{gap:42px}
  .reasons-image{height:470px}
  .story-collage{height:480px}
  .map-wrap{height:400px}
}

@media (max-width:620px){
  .section:not(.product),.story,.cta-section{padding:62px 0}
  .location-section{padding:62px 0}
  .section-head{margin-bottom:32px}
  .section-head>p{margin-top:18px}
  .calculator+.steps-title{margin-top:30px}
  .steps-title{margin-bottom:14px}
  .step,.step+.step{display:grid;grid-template-columns:38px minmax(0,1fr);column-gap:14px;row-gap:7px;min-height:0;padding:18px 0}
  .step-no{grid-column:1;grid-row:1;align-self:center}
  .step-icon{grid-column:1;grid-row:2;width:34px;height:34px;margin:4px 0 0}
  .step-line-icon{width:19px;height:19px}
  .step h3{grid-column:2;grid-row:1;margin:0;align-self:center}
  .step p{grid-column:2;grid-row:2}
  .terms-note{margin-top:16px}
  .reasons-image{height:390px}
  .reasons-copy h2{margin-bottom:24px}
  .offer-case{margin-top:18px;padding:19px 17px}
  .reasons-cta{margin-top:18px}
  .story h2{margin-bottom:22px}
  .story blockquote{margin-top:24px}
  .story-collage{height:380px}
  .map-wrap{height:315px}
  .field-gallery figure,.field-gallery .gallery-wide,.field-gallery .gallery-tall,.field-gallery .gallery-product{height:240px}
  .interest-form{padding:22px 18px}
  .faq-list summary{padding:16px 0}
  .site-footer{padding:50px 0 22px}
  .footer-bottom{margin-top:38px}
  .legal-panels{margin-top:34px}
}
