/* Reference homepage sections: 1350px outer width, 34px gutters, full-width images. */
.home-story{background:#fff;color:#747474;font-family:var(--font-body);font-size:15px;line-height:2}
.home-story-wrap{width:100%;max-width:1350px;padding:20px 34px;margin:0 auto}
.home-story h2,.home-story h3,.home-contact h2{font-family:var(--font-heading);text-transform:uppercase;color:#111;font-weight:600}
.home-story h3{font-size:24px;line-height:1.2;letter-spacing:2.4px;margin:0 0 26px}
.home-ruled-heading{font-family:var(--font-heading);font-size:44px;line-height:1.2;letter-spacing:1.32px;text-transform:uppercase;font-weight:600;text-align:center;padding:42px 0;margin:8px auto 40px;border-top:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9;max-width:843px;color:#111}
.home-intro-heading{max-width:405px;margin:26px auto 48px;font-size:40px}
.home-editorial-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px;align-items:start}
.home-editorial-columns article{min-width:0}
.home-editorial-columns h3{text-align:center}
.home-story p{margin:0 0 18px}
.home-story-text-link{font-size:15px;color:#626262;text-decoration:underline;text-underline-offset:4px}
.home-editorial-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px;margin:38px 0 35px}
.home-editorial-images img{width:100%;aspect-ratio:1.65;height:auto;object-fit:cover;object-position:center}
.home-industry-banner{position:relative;margin:0;width:100%;height:50vh;min-height:280px;max-height:660px;overflow:hidden;background:#787878}
.home-industry-banner img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.home-industry-banner::after{content:'';position:absolute;inset:0;background:rgba(120,120,120,.35);pointer-events:none}
.home-about{padding-top:20px;padding-bottom:38px}
.home-about-media{width:100%;max-width:843px;margin:0 auto 42px}
.home-about-media img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.home-about-copy h3{margin:32px 0 22px}
.home-about-copy p{margin-bottom:22px}
.home-about-copy a{color:inherit;text-decoration:underline;text-underline-offset:4px}
.home-contact{background:#000;color:#fff;font-family:var(--font-body);font-size:15px;line-height:1.8;padding:62px 0 24px}
.home-contact-wrap{max-width:1350px;padding:0 17px;margin:0 auto}
.home-contact .home-ruled-heading{max-width:none;color:#fff;border-color:#b9b9b9;margin:8px 0 40px}
.home-contact-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}
.home-contact-details h3{font-family:var(--font-body);font-size:13px;font-weight:700;letter-spacing:2.5px;line-height:1.5;text-transform:uppercase;color:#fff;margin:0 0 24px}
.home-contact-details p{margin:0 0 23px}
.home-contact a{color:inherit}
.home-contact-resource{display:inline-block;text-decoration:underline;text-underline-offset:5px;margin-top:14px}
.home-name-group{padding:0;margin:0 0 18px;border:0;min-width:0}
.home-name-group legend{padding:0;font-size:16px;margin:0 0 3px}
.home-name-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.home-field{margin:0 0 18px;min-width:0}
.home-name-fields .home-field{margin:0}
.home-field label{display:block;font-size:16px;line-height:1.4;margin-bottom:6px;color:#fff}
.home-name-fields label{font-size:13px}
.home-field label span{font-size:13px;color:#ddd;margin-left:3px}
.home-field input,.home-field textarea{border:1px solid #ccc;background:#fafafa;color:#222;width:100%;border-radius:0;padding:11px 13px;min-height:45px;font:16px/1.5 var(--font-body)}
.home-field textarea{min-height:140px;resize:vertical}
.home-field input[aria-invalid=true],.home-field textarea[aria-invalid=true]{border:2px solid #ff9e8a}
.home-error{display:block;color:#ffb4a3;font-size:13px;line-height:1.5;margin-top:5px}
.home-error:empty{display:none}
.home-delivery-note{font-size:13px;line-height:1.6;color:#c8c8c8;max-width:550px;margin:0 0 20px}
.home-review-button{border:2px solid #fff;border-radius:0;padding:12px 30px;background:#fff;color:#000;font:600 14px/1.5 var(--font-body);letter-spacing:1px;text-transform:uppercase;min-height:48px}
.home-review-button:hover{background:#000;color:#fff}
.home-bottom-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:18px 30px;margin:65px 0 25px;font-size:13px;letter-spacing:1px;text-transform:uppercase}
.home-copyright{text-align:center;font-size:12px;color:#b0b0b0;margin:0}
@media(max-width:767px){
 .home-story-wrap{padding-left:32px;padding-right:32px}
 .home-editorial-columns,.home-editorial-images,.home-contact-columns{grid-template-columns:1fr}
 .home-editorial-columns{gap:40px}
 .home-editorial-images{gap:25px;margin-top:35px}
 .home-ruled-heading{font-size:34px;padding:35px 0;margin-bottom:36px}
 .home-intro-heading{font-size:31px}
 .home-story h3{font-size:24px;letter-spacing:1.6px}
 .home-industry-banner{height:40vh;min-height:250px;max-height:400px}
 .home-blasting-banner img{object-position:65% 50%}
 .home-core-banner img{object-position:52% 50%}
 .home-about-media{margin-bottom:30px}
 .home-about-copy h3{margin-top:30px}
 .home-contact{padding-top:35px}
 .home-contact-wrap{padding:0 32px}
 .home-contact-columns{gap:38px}
 .home-contact-details h3{font-size:12px;letter-spacing:2px}
 .home-contact .home-ruled-heading{font-size:36px}
 .home-field label span{margin-left:0}
 .home-bottom-nav{gap:15px 22px;margin-top:48px}
}
@media(max-width:360px){.home-story-wrap,.home-contact-wrap{padding-left:22px;padding-right:22px}.home-name-fields{grid-template-columns:1fr;gap:18px}}
