/* Homepage refinements, 25 October 2026. Keep all core content and enquiry fields. */
.hero{height:630px;min-height:580px}
.hero-image{filter:brightness(1.12)}
.hero > .hero-overlay{background:linear-gradient(90deg,rgba(4,8,13,.91) 0%,rgba(4,8,13,.54) 40%,rgba(4,8,13,.08) 78%),linear-gradient(0deg,rgba(4,8,13,.40),transparent 58%)}
.hero h1{font-size:clamp(3.4rem,5.5vw,5.3rem)}
.hero-proof{margin-top:28px}
.delivery-priority{padding-top:28px;padding-bottom:28px}
.delivery-priority h2{font-size:clamp(1.8rem,2.5vw,2.2rem)}
.delivery-priority p{line-height:1.65}
.section{padding-top:64px;padding-bottom:64px}
.section-intro{gap:4vw;margin-bottom:30px}
.section-intro h2,.about h2,.quote h2{font-size:clamp(2.5rem,4vw,4rem);line-height:.98}
.services-intro>p{padding:18px 22px}
.service-grid{gap:20px}
.service-card .service-image{height:220px}
.service-card>div{padding:20px 24px 24px}
.service-card h3{margin:14px 0 10px;font-size:1.8rem;line-height:1.1}
.service-card p{min-height:0;line-height:1.65;margin:10px 0 14px}
.spec-list{margin:12px 0 16px}
.spec-list li{padding:7px 0}
.service-card-flatbed .service-image{height:100%;min-height:270px}
.section-dark{padding-top:64px;padding-bottom:64px;gap:4vw}
.work h2{font-size:clamp(2.6rem,4.2vw,4.2rem);line-height:.98}
.work-copy>p:not(.kicker){margin:20px 0}
.bento{height:450px}
.bento .project-card>span{padding:18px}
.bento .project-card b{font-size:1.3rem}
.process .section-intro{margin-bottom:24px}
.process-grid li,.process-grid li+li{padding:22px 24px 0}
.process-grid li:first-child{padding-left:0}
.process-grid h3{margin:14px 0 10px;font-size:1.65rem;line-height:1.1}
.process-grid p{margin:10px 0 0;line-height:1.6}
.about-copy{padding:42px clamp(28px,4vw,64px)}
.about-copy>p:not(.kicker){line-height:1.65}
.about-copy ul{margin-top:22px}
.about-copy li{padding:10px 0}
.quote{padding-top:64px;padding-bottom:64px;gap:5vw}
.quote-form{gap:14px;padding:28px}
.footer{padding-top:44px;gap:3vw}
.footer-bottom{margin-top:8px;padding-top:18px}
.customer-reviews{padding:36px max(6vw,28px) 42px;background:#fff;border-bottom:1px solid var(--line)}
.reviews-inner{max-width:var(--max);margin:0 auto}
.reviews-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}
.reviews-heading .kicker{margin:0 0 8px}
.reviews-heading h2{font:700 clamp(2rem,3vw,2.8rem)/1 var(--display);text-transform:uppercase;letter-spacing:-.025em;margin:0;color:var(--ink)}
.reviews-heading>a,.review-source{color:#394550;font:800 .75rem/1.4 var(--body);text-underline-offset:4px}
.review-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:16px;align-items:stretch}
.review-card{margin:0;padding:22px;background:#f3f5f6;border:1px solid var(--line);display:flex;flex-direction:column;min-width:0}
.review-card-featured{border-top:4px solid var(--yellow);background:#101923;color:#fff;padding-top:19px}
.review-stars{color:#956d00;font-size:1rem;letter-spacing:.12em;line-height:1}
.review-card-featured .review-stars{color:var(--yellow)}
.review-card blockquote{margin:15px 0 18px;font:500 .94rem/1.65 var(--body)}
.review-card-featured blockquote{font-size:1rem}
.review-card figcaption{margin-top:auto;display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:.82rem}
.review-card figcaption span{color:#5c6771;font-size:.72rem}
.review-card-featured figcaption span{color:#bdc7d0}
.review-source{display:inline-block;margin-top:16px}
.review-link{color:inherit;text-decoration:none}
.review-link:hover{text-decoration:underline;text-underline-offset:4px}
.review-link:focus-visible,.reviews-heading>a:focus-visible{outline:3px solid var(--yellow);outline-offset:5px}
@media(max-width:1050px){
 .review-grid{grid-template-columns:1fr 1fr}
 .review-card-featured{grid-column:1/-1}
 .bento{height:420px}
}
@media(max-width:820px){
 .hero{height:auto;min-height:0}
 .hero > .hero-overlay{display:none;background:none}
 .hero h1{font-size:clamp(2.65rem,11vw,4.6rem)}
 .hero-inner{padding-top:22px;padding-bottom:28px}
 .hero-copy{margin:18px 0;line-height:1.6}
 .hero-proof{margin-top:24px}
 .delivery-priority{padding:28px 24px}
 .delivery-priority-inner{gap:16px}
 .delivery-priority h2{font-size:1.9rem}
 .section,.section-dark,.quote{padding-top:44px;padding-bottom:44px}
 .section-intro{gap:18px;margin-bottom:24px}
 .section-intro h2,.about h2,.quote h2{font-size:2.5rem;line-height:1}
 .service-card .service-image{height:100%;min-height:210px}
 .service-card-flatbed .service-image{min-height:250px}
 .services-intro>p{padding:16px 18px}
 .process-grid li,.process-grid li+li,.process-grid li:first-child{padding:18px 0}
 .process-grid h3{margin:8px 0;font-size:1.55rem}
 .process-grid p{margin:0}
 .about-copy{padding:36px 6vw}
 .customer-reviews{padding:28px 24px 32px}
 .reviews-heading{align-items:flex-start;flex-direction:column;gap:12px}
 .review-card{padding:18px}
 .review-card-featured{padding-top:15px}
 .footer{padding-bottom:calc(86px + env(safe-area-inset-bottom))}
}
@media(max-width:560px){
 .section,.section-dark,.quote{padding-left:18px;padding-right:18px}
 .service-card{display:block}
 .service-card .service-image,.service-card-flatbed .service-image{height:190px;min-height:0}
 .service-card>div{padding:18px 20px 20px}
 .service-card h3{margin:10px 0;font-size:1.65rem}
 .spec-list{display:flex;flex-wrap:wrap;gap:6px 12px;margin:12px 0 16px}
 .spec-list li{border:0;padding:0;font-size:.67rem;line-height:1.6;letter-spacing:.025em}
 .spec-list li:before{margin-right:5px}
 .bento{height:auto;grid-template-rows:270px 210px 210px}
 .bento .project-card>span{padding:16px}
 .bento .project-card small{font-size:.74rem;line-height:1.5}
 .about h2{font-size:2.35rem}
 .quote-form{padding:20px;gap:14px}
 .customer-reviews{padding-left:18px;padding-right:18px}
 .review-grid{grid-template-columns:1fr;gap:12px}
 .review-card-featured{grid-column:auto}
 .review-card blockquote{margin:12px 0 16px}
 .reviews-heading h2{font-size:2rem}
 .delivery-priority{padding-left:18px;padding-right:18px}
}
