/* NoFoss 1.63 — recognisable hardware, stronger brand accents and simpler paths. */
.services-hero-copy>p{margin-bottom:0}
.service-fleet{gap:35px clamp(35px,6vw,100px)}
.fleet-bhpc-visual{margin:0;overflow:visible}
.fleet-bhpc-visual svg{max-height:520px;width:100%;height:auto}
.fleet-grid-line{stroke:#abbda0;stroke-width:2}
.fleet-grid-pulse{stroke:var(--green);stroke-width:3;stroke-dasharray:8 32;animation:nf-grid-current 3.8s linear infinite;animation-play-state:paused}
.fleet-charge-cable{stroke:#a5b3a0;stroke-width:2;stroke-linecap:round}
.fleet-charge-pulse{stroke:var(--green);stroke-width:2;stroke-dasharray:24 430;stroke-linecap:round;animation:nf-charge-current 6s linear infinite;animation-play-state:paused}
.fleet-charge-pulse-second{animation-delay:1.2s}
.fleet-visual.is-active :is(.fleet-grid-pulse,.fleet-charge-pulse){animation-play-state:running}
@keyframes nf-grid-current{to{stroke-dashoffset:-40}}
@keyframes nf-charge-current{to{stroke-dashoffset:-454}}

/* Full-width title and invitation, then a correctly proportioned film and a clear offer. */
.public-offer{padding-block:clamp(70px,6.5vw,120px)}
.public-offer-heading{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);gap:clamp(30px,6vw,105px);align-items:end;margin-bottom:clamp(36px,4vw,68px)}
.public-offer-heading h2{font-size:clamp(37px,3.5vw,61px);line-height:1.13;letter-spacing:-.055em;margin:0;max-width:1050px}
.public-offer-heading>p{font-size:clamp(17px,1.2vw,20px);line-height:1.8;color:var(--muted);max-width:590px;margin:0 0 4px}
.public-offer-body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(35px,5vw,85px);align-items:center}
.public-offer .public-offer-film{width:100%;aspect-ratio:16/9;min-height:0;background:#eef0ef}
.public-offer-film>.nf-motion-canvas{position:absolute;inset:0;z-index:0;background:#eef0ef}
.public-offer-film :is(.nf-motion-image,.nf-motion-video){object-fit:cover;object-position:center;transform:none;background:#eef0ef}
.public-offer-copy h3{font-size:clamp(23px,2vw,34px);line-height:1.5;font-weight:500;letter-spacing:-.025em;margin:0 0 25px;color:var(--ink);text-wrap:pretty}
.public-offer-copy p{font-size:17px;line-height:1.8;color:var(--muted);margin:0 0 28px;max-width:590px}
.public-offer-copy .button{margin-top:4px}
.public-offer .public-benefits-open{margin-top:clamp(48px,5vw,80px)}
.public-benefits-open li,.public-benefits-open li:last-child{padding-top:25px;border-top-color:#dce5d1;gap:22px}
.public-benefits-open .line-icon{color:var(--green);width:44px;height:44px;stroke-width:1.6}
.public-benefits-open li>span{font-weight:600;max-width:300px}
.bhpc-energy-node>.line-icon,.bhpc-energy-battery>.line-icon{color:var(--green)}
.ems-flow .line-icon,.nf-about-model article>.line-icon{color:var(--green)}

/* The sole approved mark gets a deliberate place; multiple marks keep the carousel. */
.nf-partner-carousel{background:#fff;border-top:1px solid var(--line);padding-block:clamp(48px,5.4vw,90px)}
.partner-mark{min-height:140px;padding:22px}
.partner-mark img{width:280px;height:112px;max-width:100%;max-height:112px;object-fit:contain}
.partner-slide{flex-basis:calc((100% - 2 * clamp(24px,3vw,50px))/3)}
.nf-partner-carousel.has-single-partner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:40px}
.has-single-partner .section-heading{margin:0}
.has-single-partner .partner-track{padding:0;overflow:visible}
.has-single-partner .partner-slide{flex:1}
.has-single-partner .partner-mark{padding:0;min-height:150px}
.has-single-partner .partner-mark img{width:320px;height:132px;max-height:132px}
@media(max-width:1100px){
 .public-offer-heading{gap:32px;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.public-offer-heading h2{font-size:38px}.public-offer-heading>p{font-size:17px}.public-offer-body{gap:35px;grid-template-columns:1fr 1fr}.public-offer-copy h3{font-size:25px}.public-offer-copy p{font-size:16px}.partner-slide{flex-basis:calc((100% - 32px)/2)}.nf-partner-carousel h2{font-size:39px}
}
@media(max-width:780px){
 .fleet-bhpc-visual{max-width:620px;margin-inline:auto;width:100%}.fleet-bhpc-visual svg{max-height:450px}.public-offer-heading{grid-template-columns:1fr;gap:24px;margin-bottom:32px}.public-offer-heading h2{font-size:clamp(34px,6.5vw,49px)}.public-offer-heading>p{font-size:17px}.public-offer-body{grid-template-columns:1fr;gap:30px}.public-offer .public-offer-film{aspect-ratio:16/9}.public-offer-copy h3{font-size:26px;line-height:1.5}.public-offer-copy p{font-size:17px}.public-benefits-open .line-icon{width:39px;height:39px}.bhpc-energy-node>.line-icon{width:43px;height:43px}.partner-mark img{width:240px;height:100px;max-height:100px}.nf-partner-carousel.has-single-partner{grid-template-columns:1fr;gap:25px}.has-single-partner .partner-mark{justify-content:flex-start;min-height:115px}.has-single-partner .partner-mark img{width:285px;height:118px;max-height:118px}.nf-partner-carousel h2{font-size:clamp(31px,6vw,45px)}
}
@media(max-width:430px){
 .public-offer-heading h2{font-size:33px}.public-offer-copy h3{font-size:23px}.public-benefits-open li{font-size:17px}.public-benefits-open .line-icon{width:37px;height:37px}.fleet-bhpc-visual svg{max-height:380px}.partner-slide{flex-basis:80%}.partner-mark img{width:245px;height:102px}.has-single-partner .partner-mark img{width:265px;height:110px;max-height:110px}
}
@media(prefers-reduced-motion:reduce){
 .fleet-grid-pulse,.fleet-charge-pulse{animation:none;stroke-dasharray:none;opacity:.65}
}
