/* A single neutral surface, editorial type rhythm and deliberate image scale. */
:root{--ink:#0b0b0c;--panel:#171718;--silver:#dedede;--muted:#aaa;--paper:#e8e8e6;--line:#ffffff1f}
body{color:#f1f1f1}
.section{padding:clamp(72px,8vw,112px) 0}
.section-head{gap:48px;margin-bottom:48px}
.section-head>p{line-height:1.85}
.button{font-size:.875rem;font-weight:700;min-height:52px;gap:24px;padding:15px 25px}
.desktop-nav .button{font-size:.875rem;padding:12px 20px;min-height:44px}
.brand-copy>span{font-size:.75rem;letter-spacing:.12em}
.brand-copy strong{font-size:1.125rem;font-weight:650}
.hero:after{background:linear-gradient(90deg,#090909ed 0%,#090909b8 38%,#0909091f 80%),linear-gradient(0deg,#0b0b0ce8,transparent 32%,#0b0b0c25)}
.hero-line{font-size:clamp(64px,8vw,128px);letter-spacing:-.065em;line-height:1.03}
.hero-copy{max-width:850px}.hero-lede{font-size:1.125rem;line-height:1.75}
.hero-proof{font-size:.875rem;line-height:1.6}.hero-bottom{font-size:.875rem}
.hero .demo-imagery{font-size:.75rem;line-height:1.5;bottom:12px;color:#aaa}
.trust-strip{padding:32px 0}.trust-grid{gap:32px}.trust-item strong{font-size:.875rem;font-weight:650}.trust-item span{font-size:.875rem;line-height:1.7}
.media-story-grid{gap:24px}.media-story-tile,.editorial-media img,.card-media,.fleet-film{border-radius:8px}
.media-story-tile h3{font-weight:550;letter-spacing:-.035em}.media-story-tile span{font-size:.875rem}
.media-story-tile:after{background:linear-gradient(0deg,#0009,transparent 62%)}
#services>.shell{display:block}#services .section-head{display:grid;grid-template-columns:1.2fr 1fr;position:static;margin-bottom:48px;gap:48px}
#services .section-head>p{max-width:480px;margin:0;font-size:1rem;line-height:1.85}
#services .section-head h2{font-size:clamp(42px,4.5vw,76px);margin:0}
.services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:38px 24px;border:0}
.service-card{display:flex;flex-direction:column;align-items:stretch;min-height:0;gap:0;padding:0 0 24px;border-bottom:1px solid var(--line);background:transparent;overflow:hidden;transition:border-color .3s}
.service-card .service-photo{height:auto;aspect-ratio:4/3;margin-bottom:23px;border-radius:6px}
.service-card .service-photo img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease)}
.service-card .service-no{display:none}.service-card>.service-top+div{display:block}
.service-card h3{font-size:1.4rem;line-height:1.3;font-weight:550;margin-bottom:12px;padding-right:16px}
.service-card p{font-size:.875rem;line-height:1.8;color:#9c9c9c}
.service-link{display:none}.service-card:after{display:none}
.service-card:hover,.service-card:focus-visible{padding-left:0;background:transparent;border-color:var(--gold)}
.service-card:hover .service-photo img{transform:scale(1.045)}
.section-directory-link{padding-bottom:88px;justify-content:start;margin-top:-44px}
.process-section{background:#dededc}.process-grid{gap:48px}.process-card .number{font-size:2.75rem;color:#8d8b84;margin-bottom:18px;line-height:1.3}.process-card p{font-size:1rem;line-height:1.85;color:#555}.process-card h3{font-size:1.5rem;font-weight:600}
.quote-zone{background:#e8e8e6}.quote-app{gap:72px}.quote-aside{padding-left:48px}.quote-aside h3{font-weight:550}
.field label,.load-field legend,.enquiry-details summary,.photo-help summary,.load-choice label{font-size:.875rem}
.quote-note,.quote-aside>small{font-size:.75rem}.quote-aside .photo-checklist{font-size:.875rem}
.waste-list li,.waste-foot,.audience-card p,.faq-content p,.decision-answer{font-size:1rem;line-height:1.85}
.waste-grid{gap:64px}.waste-panel{border-radius:8px}.pricing-factors span{font-size:.875rem}
.fleet-film{margin-top:88px;margin-bottom:0}.fleet-film:after{background:linear-gradient(90deg,#000b,#0001)}.fleet-film h2{font-weight:550;line-height:1.12}
.area-chips button{font-size:.875rem;min-height:44px;padding:10px 16px}.areas-sticky h2,.faq-intro h2{font-weight:550}
.page-hero h1{font-weight:550;letter-spacing:-.055em;max-width:950px;font-size:clamp(44px,5.8vw,88px);line-height:1.08}
.page-hero:after{background:linear-gradient(90deg,#090909ed 0%,#090909b3 46%,#09090935),linear-gradient(0deg,#0b0b0cc7,transparent 50%)}
.page-intro{max-width:620px;font-size:1.0625rem;line-height:1.85}.page-hero .hero-actions{gap:28px}
.page-hero-media .editorial-media img{border-radius:0}.page-hero-disclosure{font-size:.75rem}
.editorial-layout{gap:clamp(40px,6vw,88px)}.copy-block{margin-bottom:56px}.copy-block h2{font-weight:550;font-size:clamp(30px,3vw,44px);line-height:1.2}
.copy-block p:not(.eyebrow){color:#bbb;line-height:1.9}.collection-summary h2{font-weight:550;font-size:1.75rem}.collection-summary h3{font-weight:600;font-size:1.25rem}
.editorial-list li{font-size:1rem;line-height:1.7;color:#bbb}.editorial-list{gap:12px}.collection-summary .editorial-media{margin:28px 0}
.paper-section{background:#e5e5e2}.paper-section .split-feature p:not(.eyebrow){color:#525252}.split-feature{gap:64px}.split-feature h2{font-weight:550;line-height:1.13}
.image-card-grid{gap:48px 28px}.card-copy{padding-top:23px}.card-copy h3{font-size:1.5rem;font-weight:550;line-height:1.3;margin-bottom:14px}.card-copy>p:not(.eyebrow){font-size:1rem;line-height:1.8}.card-action{margin-top:20px}
.footer-grid{gap:48px}.footer-brand p,.footer-col a,.footer-col>span{font-size:.875rem;line-height:1.8}.footer-col a{padding-block:4px}
.source-link{font-size:.875rem}.breadcrumbs{font-size:.875rem}.contact-email{font-size:1.25rem}
@media(max-width:1100px){.services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.quote-app{gap:40px}.quote-aside{padding-left:32px}.service-card h3{font-size:1.25rem}}
@media(max-width:980px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card .service-photo{display:block}.section-head{gap:32px}.quote-app{gap:32px}.hero .hero-proof{font-size:.875rem}}
@media(max-width:700px){
 .shell,.hero-inner{width:calc(100% - 40px)}.section{padding:72px 0}.section-head,#services .section-head{grid-template-columns:1fr;gap:20px;margin-bottom:32px}.section-head>p{margin-bottom:0}
 .hero{padding:150px 0 155px;min-height:100svh}.hero-line{font-size:clamp(52px,13.5vw,80px);line-height:1.06}.hero-lede{font-size:1rem;max-width:320px}.hero .hero-proof{font-size:.75rem;margin-top:30px;gap:16px}.hero-proof span+span:before{left:-8px}.hero-bottom{bottom:45px;padding-top:18px;font-size:.75rem}.hero .demo-imagery{font-size:.75rem;right:20px;bottom:12px}
 .media-story-grid{grid-template-rows:330px 240px 240px;gap:18px}.media-story-tile h3{font-size:1.75rem}.media-story{padding-bottom:0}
 .services-grid{gap:30px 18px}.service-card{padding:0 0 22px}.service-card .service-photo{aspect-ratio:4/3;margin-bottom:16px}.service-card h3{font-size:1.15rem;margin-bottom:9px;padding:0}.service-card p{font-size:.875rem;line-height:1.7}.section-directory-link{margin-top:-30px;padding-bottom:64px}
 .process-grid{gap:32px}.process-card p{font-size:1rem}.process-card .number{font-size:2.25rem}.process-card h3{font-size:1.4rem}
 .quote-zone{padding:64px 0}.quote-app{gap:36px}.quote-aside{padding-left:0}.field label,.load-field legend,.enquiry-details summary,.photo-help summary,.load-choice label{font-size:.875rem}
 .fleet-film{margin-top:64px;min-height:440px}.fleet-film>div{padding:40px 25px}.fleet-film h2{font-size:3.4rem}.fleet-film figcaption{font-size:.75rem}
 .page-hero{padding:132px 0 86px;min-height:80svh}.page-hero h1{font-size:clamp(40px,11.2vw,64px);letter-spacing:-.045em}.page-intro{font-size:1rem}.page-hero .hero-actions{gap:18px}.breadcrumbs{font-size:.75rem}.page-hero-disclosure{font-size:.75rem}
 .editorial-layout,.split-feature{gap:36px}.copy-block{margin-bottom:42px}.copy-block h2{font-size:2rem}.collection-summary .editorial-media{margin:26px 0}.split-feature h2{font-size:2.3rem}.image-card-grid{gap:36px}.card-copy h3{font-size:1.6rem}.inner-page .faq-content p{font-size:1rem}.inner-page .faq-list summary{font-size:1rem}
 .footer-brand p,.footer-col a{font-size:.875rem}.mobile-bar a{font-size:.875rem}.footer-grid{gap:32px}
}
@media(max-width:360px){.services-grid{grid-template-columns:1fr}.service-card .service-photo{aspect-ratio:16/10}.service-card h3{font-size:1.5rem}.hero-line{font-size:3.2rem}.hero-proof{flex-wrap:wrap}.hero .hero-proof{gap:10px}.page-hero .hero-actions{flex-direction:column;align-items:start}}
@media(prefers-reduced-motion:reduce){.service-photo img,.service-card,.media-story-tile img,.card-media img{transition:none}}
