#hero{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:72vh;overflow:hidden;background:var(--c-bg)}
#hero .hero__media{position:absolute;inset:0;z-index:0}
#hero .hero__media img{width:100%;height:100%;object-fit:cover;object-position:62% 42%}
#hero .hero__scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(to top, rgba(11,11,12,.97) 0%, rgba(11,11,12,.92) 38%, rgba(11,11,12,.5) 70%, rgba(11,11,12,.3) 100%)}
#hero .hero__inner{position:relative;z-index:2;width:100%;padding-block:clamp(3rem,2rem + 5vw,5.5rem)}
#hero h1{font-size:clamp(2.4rem,1.6rem + 3.6vw,7rem);line-height:.88;letter-spacing:-0.01em}
#hero .hero__line{display:block}
#hero .hero__sub{margin-top:var(--sp-5);max-width:54ch;color:var(--c-secondary);font-size:1.0625rem;line-height:1.55}
#hero .hero__actions{display:flex;flex-direction:column;gap:var(--sp-3);margin-top:var(--sp-6)}
#hero .hero__actions .btn{width:100%;min-height:52px}
#hero .hero__link{display:inline-flex;align-items:center;justify-content:center;min-height:52px;font-family:var(--ff-body);font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--c-text);text-decoration:none}
@media (min-width:768px){
  #hero{min-height:86vh}
  #hero .hero__media img{object-position:55% 45%}
  #hero .hero__scrim{background:linear-gradient(to right, rgba(11,11,12,.95) 0%, rgba(11,11,12,.88) 40%, rgba(11,11,12,0) 68%), linear-gradient(to top, rgba(11,11,12,.7) 0%, rgba(11,11,12,0) 40%)}
  #hero .hero__inner{padding-block:clamp(4rem,3rem + 4vw,7rem)}
  #hero .hero__actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--sp-4) var(--sp-5);margin-top:2.25rem}
  #hero .hero__actions .btn{width:auto;min-height:48px}
  #hero .hero__link{min-height:48px}
  #hero .hero__sub{font-size:1.1875rem}
}
@media (min-width:1100px){
  #hero{min-height:92vh}
  #hero h1,#hero .hero__sub,#hero .hero__actions{max-width:58%}
  #hero .hero__sub{max-width:54ch}
}

#our-fleet{background:var(--c-bg)}
#our-fleet .fleet-grid{display:grid;gap:var(--sp-8);margin-inline:calc(-1 * var(--gutter))}
#our-fleet .fleet-card{position:relative;transition:transform var(--mo-dur) var(--mo-ease)}
#our-fleet .fleet-card__media{position:relative;overflow:hidden;aspect-ratio:4/3;background:var(--c-surface)}
#our-fleet .fleet-card__media img{width:100%;height:100%;object-fit:cover}
#our-fleet .fleet-card__body{padding:var(--sp-5) var(--gutter) 0}
#our-fleet .fleet-card h3{font-size:1.5rem}
#our-fleet .fleet-card__spec{margin-top:.5rem;color:var(--c-secondary);font-size:.9375rem}
#our-fleet .fleet-card .btn{width:100%;min-height:52px;margin-top:var(--sp-5)}
#our-fleet .fleet-card__status{margin-top:var(--sp-5);padding-top:var(--sp-4);border-top:1px solid var(--c-hairline);color:var(--c-secondary);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.16em}
@media (min-width:768px){
  #our-fleet .fleet-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-5);margin-inline:0}
  #our-fleet .fleet-card__media{aspect-ratio:4/3}
  #our-fleet .fleet-card__body{position:absolute;left:0;right:0;bottom:0;padding:var(--sp-9) var(--sp-6) var(--sp-6);background:linear-gradient(to top, rgba(11,11,12,.94) 0%, rgba(11,11,12,.82) 46%, rgba(11,11,12,0) 100%)}
  #our-fleet .fleet-card h3{font-size:1.75rem}
  #our-fleet .fleet-card .btn{width:auto;min-height:46px;margin-top:var(--sp-4)}
  #our-fleet .fleet-card__status{display:inline-block;margin-top:var(--sp-4);padding-top:0;border-top:0;border-bottom:1px solid var(--c-hairline-strong);padding-bottom:.35rem}
}
@media (min-width:768px) and (prefers-reduced-motion: no-preference){
  #our-fleet .fleet-card:hover,#our-fleet .fleet-card:focus-within{transform:translateY(-4px)}
  #our-fleet .fleet-card:hover .img-treated,#our-fleet .fleet-card:focus-within .img-treated{filter:grayscale(0.12) saturate(0.88) contrast(1.07) brightness(1.01)}
}

#how-we-make-assets-work{background:var(--c-bg)}
#how-we-make-assets-work .mech{display:grid;gap:0}
#how-we-make-assets-work .mech__item{padding-block:var(--sp-6);border-top:1px solid var(--c-hairline)}
#how-we-make-assets-work .mech__item h3{font-size:1.75rem}
#how-we-make-assets-work .mech__item p{margin-top:var(--sp-3);max-width:44ch;color:var(--c-secondary);font-size:1rem}
@media (min-width:1024px){
  #how-we-make-assets-work .mech{grid-template-columns:repeat(4,minmax(0,1fr))}
  #how-we-make-assets-work .mech__item{padding:0 var(--sp-6);border-top:0;border-left:1px solid var(--c-hairline)}
  #how-we-make-assets-work .mech__item:first-child{padding-left:0;border-left:0}
  #how-we-make-assets-work .mech__item:last-child{padding-right:0}
  #how-we-make-assets-work .mech__item h3{font-size:2rem}
}

#what-we-do{background:var(--c-bg)}
#what-we-do .svc-grid{display:grid;gap:var(--sp-4)}
#what-we-do .card{display:flex;flex-direction:column}
#what-we-do .card__body{font-size:1rem}
#what-we-do .svc-tag{display:inline-block;align-self:flex-start;margin-bottom:var(--sp-4);padding:.35rem .6rem;border:1px solid var(--c-gold);color:var(--c-gold);font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.16em;line-height:1}
#what-we-do .svc-card--expanding{border-color:var(--c-gold)}
@media (min-width:768px){
  #what-we-do .svc-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-5)}
}
@media (min-width:1100px){
  #what-we-do .svc-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

#ev-fleet-program{position:relative;overflow:hidden;background:var(--c-bg)}
#ev-fleet-program .ev__media{position:relative;height:56vh;min-height:300px;overflow:hidden}
#ev-fleet-program .ev__media img{width:100%;height:100%;object-fit:cover;object-position:60% 50%}
#ev-fleet-program .ev__scrim{display:none}
#ev-fleet-program .ev__inner{position:relative;z-index:2;padding-block:clamp(2.5rem,2rem + 4vw,4rem) clamp(3rem,2rem + 4vw,5rem)}
#ev-fleet-program h2{font-size:clamp(2rem,1.4rem + 2.6vw,4rem);line-height:.94}
#ev-fleet-program .ev__copy{margin-top:var(--sp-5);max-width:52ch;color:var(--c-secondary)}
#ev-fleet-program .ev__list{display:grid;gap:var(--sp-3);margin-top:var(--sp-6)}
#ev-fleet-program .ev__list li{position:relative;padding-left:18px;font-size:.9375rem;font-weight:500;color:var(--c-text)}
#ev-fleet-program .ev__list li::before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;background:var(--c-accent)}
#ev-fleet-program .ev__btn{width:100%;min-height:52px;margin-top:var(--sp-7)}
#ev-fleet-program .ev__charge{position:absolute;left:0;right:0;bottom:0;z-index:3;height:4px}
@media (min-width:1024px){
  #ev-fleet-program{min-height:78vh;display:flex;align-items:center}
  #ev-fleet-program .ev__media{position:absolute;inset:0;height:auto;min-height:0;z-index:0}
  #ev-fleet-program .ev__scrim{display:block;position:absolute;inset:0;z-index:1;background:linear-gradient(to right, rgba(11,11,12,.96) 0%, rgba(11,11,12,.9) 34%, rgba(11,11,12,0) 60%)}
  #ev-fleet-program .ev__inner{width:100%;padding-block:clamp(5rem,3rem + 5vw,8rem)}
  #ev-fleet-program .ev__inner > div{max-width:58%}
  #ev-fleet-program .ev__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4) var(--sp-6)}
  #ev-fleet-program .ev__btn{width:auto;min-height:48px}
}

#why-chaplin-investment-group{background:var(--c-bg)}
#why-chaplin-investment-group .why__grid{display:grid;gap:2.5rem}
#why-chaplin-investment-group h2{text-transform:none;font-weight:600;font-size:clamp(1.5rem,1.15rem + 1.4vw,2.2rem);line-height:1.14;letter-spacing:-0.005em;max-width:34ch}
#why-chaplin-investment-group .why__body{margin-top:var(--sp-5);max-width:38ch;color:var(--c-secondary);font-size:1rem}
#why-chaplin-investment-group .why__list{display:grid}
#why-chaplin-investment-group .why__list li{position:relative;padding:var(--sp-4) 0 var(--sp-4) 22px;border-bottom:1px solid var(--c-hairline);font-size:1.0625rem;font-weight:500}
#why-chaplin-investment-group .why__list li:first-child{border-top:1px solid var(--c-hairline)}
#why-chaplin-investment-group .why__list li::before{content:"";position:absolute;left:0;top:1.55em;width:6px;height:6px;background:var(--c-gold)}
@media (min-width:1024px){
  #why-chaplin-investment-group .why__grid{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(3rem,2rem + 4vw,6rem);align-items:start}
}

#fleet-gallery{background:var(--c-bg)}
#fleet-gallery .gallery{display:grid;gap:1px;background:var(--c-bg)}
#fleet-gallery .gallery__frame{position:relative;overflow:hidden;margin:0;aspect-ratio:3/2;background:var(--c-surface)}
#fleet-gallery .gallery__frame img{width:100%;height:100%;object-fit:cover}
#fleet-gallery .gallery__img--left{object-position:20% 20%}
@media (min-width:1024px){
  #fleet-gallery .gallery{grid-template-columns:5fr 4fr 3fr}
  #fleet-gallery .gallery__frame{aspect-ratio:auto;height:clamp(360px,42vw,620px)}
}

#put-your-assets-to-work{background:var(--c-ink)}
#put-your-assets-to-work .close__head{text-align:center;display:flex;flex-direction:column;align-items:center}
#put-your-assets-to-work h2{font-size:clamp(2.1rem,1.4rem + 3.2vw,4.4rem);line-height:.92}
#put-your-assets-to-work .close__copy{margin-top:var(--sp-5);max-width:58ch;color:var(--c-secondary)}
#put-your-assets-to-work .close__actions{display:flex;flex-direction:column;align-items:stretch;gap:var(--sp-3);width:100%;margin-top:var(--sp-7)}
#put-your-assets-to-work .close__actions .btn{width:100%;min-height:52px}
#put-your-assets-to-work .close__link{display:inline-flex;align-items:center;justify-content:center;min-height:52px;font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--c-text);text-decoration:none}
#put-your-assets-to-work .close__form{margin-top:clamp(3rem,2rem + 4vw,5rem);padding:var(--sp-6) var(--sp-5);background:var(--c-surface);border:1px solid var(--c-hairline)}
#put-your-assets-to-work .close__form h3{margin-bottom:var(--sp-6);text-transform:none;font-weight:700;letter-spacing:-0.005em}
#put-your-assets-to-work .lead-form__row{display:grid;gap:var(--sp-4)}
#put-your-assets-to-work .field{display:flex;flex-direction:column;gap:.4rem}
#put-your-assets-to-work .field + .field,#put-your-assets-to-work .lead-form__row + .field{margin-top:var(--sp-4)}
/* The rule above is for STACKED fields. Inside the two-column row it also
   matched Email as the adjacent sibling of Name and pushed it down, so the
   two never shared a baseline. Grid handles that row's spacing already. */
#put-your-assets-to-work .lead-form__row .field + .field{margin-top:0}
#put-your-assets-to-work label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--c-secondary)}
#put-your-assets-to-work input,#put-your-assets-to-work textarea{width:100%;min-height:48px;padding:.75rem .9rem;background:var(--c-ink);color:var(--c-text);border:1px solid var(--c-hairline);border-radius:0;font-size:1rem;line-height:1.5}
#put-your-assets-to-work textarea{min-height:132px;resize:vertical}
#put-your-assets-to-work input::placeholder,#put-your-assets-to-work textarea::placeholder{color:var(--c-secondary)}
#put-your-assets-to-work input:focus-visible,#put-your-assets-to-work textarea:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px;border-color:var(--c-accent)}
#put-your-assets-to-work button[type=submit]{margin-top:var(--sp-6);min-height:52px}
@media (min-width:768px){
  #put-your-assets-to-work .close__actions{flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--sp-4) var(--sp-5)}
  #put-your-assets-to-work .close__actions .btn{width:auto;min-height:48px}
  #put-your-assets-to-work .close__link{min-height:48px}
  #put-your-assets-to-work .close__form{max-width:720px;margin-inline:auto;padding:var(--sp-8)}
  #put-your-assets-to-work .lead-form__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-5)}
  #put-your-assets-to-work button[type=submit]{width:auto;min-width:260px;display:inline-flex}
}
/* Fleet gallery, desktop: give the client's own images room to be seen.
   The frames were 5fr 4fr 3fr at a fixed 620px height, which put his blue-hour
   fleet panorama - the one image on the page that shows the WHOLE fleet - into
   a 413x620 PORTRAIT box. object-fit:cover then showed a vertical slice of a
   21:9 photograph: two vehicles out of seven. Stacked on mobile the same image
   goes full width in its natural aspect and reads correctly, which is how the
   problem was found.
   The lineup moves to the widest column and the frames flatten, so the row is
   landscape rather than portrait. Nothing about the images themselves changed. */
@media (min-width:1100px){
  #fleet-gallery .gallery{grid-template-columns:4fr 5fr 3fr}
  #fleet-gallery .gallery__frame{height:clamp(300px,30vw,440px)}
}
