/* Homepage customer journey; no shared-page form or security styles. */
.hero-grid{min-height:0;grid-template-columns:minmax(0,1fr);gap:0}
.hero-copy{max-width:900px;padding:60px 0 48px}
.hero h1{font-size:clamp(46px,4.8vw,72px);line-height:1.1;letter-spacing:-.045em;white-space:normal;margin:25px 0 22px}
.hero-description{max-width:650px;font-size:17px;line-height:1.75}
.hero-actions{margin-top:27px;gap:18px}
.hero-assurance{max-width:600px;margin:19px 0;color:#b8c6ac;font-size:12px;line-height:1.7}
.need-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:23px}
.need-links a{display:inline-flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:10px 12px;border:1px solid #59694d;border-radius:6px;color:#e3edd9;font-size:11px;font-weight:650;line-height:1.5}
.need-links a:hover{border-color:var(--green);color:var(--green)}
.need-links span{color:var(--green)}
.hero-footnote{margin-top:28px}
.service-copy[id]{scroll-margin-top:120px}
.project-copy .project-contact{font-size:13px;margin-top:20px;margin-bottom:0;line-height:1.7}
.project-contact a{text-decoration:underline;text-underline-offset:4px;color:var(--green)}
@media(max-width:1024px){.hero-grid{grid-template-columns:minmax(0,1fr);gap:0}.hero h1{font-size:clamp(40px,5.3vw,58px)}}
@media(max-width:780px){
 .hero-grid{grid-template-columns:1fr;min-height:0;gap:0}
 .hero-copy{padding:34px 0 36px}
 .hero h1{font-size:clamp(34px,7.8vw,54px);letter-spacing:-.035em;line-height:1.12;margin:22px 0 20px}
 .hero-description{font-size:15px;line-height:1.7;margin-bottom:0}
 .hero-actions{margin-top:23px;gap:10px}
 .hero-actions .button{min-height:48px;padding:13px 17px;font-size:13px}
 .hero-actions .button-text{padding-inline:0}
 .hero-assurance{font-size:11px;margin:14px 0}
 .need-links{gap:7px;margin-top:18px}
 .need-links a{font-size:11px;padding:9px 11px}
 .hero-bottom{display:none}
 .ribbon{height:48px}.ribbon-inner{font-size:15px}
 .section{padding:57px 0}
 .hero-footnote{display:none}
}
@media(max-width:380px){.hero h1{font-size:32px}.hero-actions{align-items:stretch;flex-direction:column}.need-links{display:grid;grid-template-columns:minmax(0,1fr)}.need-links a{font-size:11px}}

