/* AST Transporte — theme layer.
   Image-led, monochrome design system: generous spacing, quiet typography
   and one signal colour for actions. Loaded after the page base stylesheet
   (home.css / subpages.css) and takes precedence over it. */
:root{
  --signal:#0078d6;
  --signal-hover:#0069bd;
  --black:#0b0b0c;
  --black-2:#161718;
  --graphite:#2b2c2e;
  --ink:#151617;
  --muted:#66686b;
  --muted-2:#8a8c8f;
  --line:#d9dadd;
  --line-dark:#333436;
  --grey:#f4f4f4;
  --grey-2:#ececed;
  --white:#fff;
  --ease:cubic-bezier(.2,.72,.2,1);
  --section-title-size:clamp(40px,4vw,58px);
  --section-title-weight:500;
  --section-title-line:1.05;
  --section-title-spacing:-.035em;
}
*{box-sizing:border-box}
html{background:#fff;scroll-behavior:smooth}
body{font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.wrap{width:min(1440px,calc(100% - 104px));margin-inline:auto}
.kicker,.eyebrow{font-size:11px!important;line-height:1.2;text-transform:uppercase;letter-spacing:.15em;font-weight:700;color:#64676a!important}
.kicker:before{width:16px!important;height:1px!important;background:currentColor!important;opacity:.38!important}
/* Section headlines — ONE consistent treatment across the whole site.
   The selector list deliberately mirrors the base stylesheet's headline rule
   so this wins on equal specificity by load order. */
.display,
h2.display,
.introHeadline,
.fleetHeadline,
.partnerLead h2,
.services .display,
.processIntro .display,
.history .display,
.peopleIntro .display,
.sectionHead .display{
  font-size:var(--section-title-size)!important;
  line-height:var(--section-title-line)!important;
  letter-spacing:var(--section-title-spacing)!important;
  font-weight:var(--section-title-weight)!important;
}
.display span,
.introHeadline span,
.fleetHeadline span,
.partnerLead h2 span{
  font-size:inherit!important;
  font-weight:inherit!important;
  letter-spacing:inherit!important;
  white-space:normal!important;
  display:block!important;
}
.lead{color:#626467!important;font-size:17px!important;line-height:1.7!important}
a{color:inherit}

/* HEADER */
header,.siteHeader{position:fixed!important;left:0;right:0;top:0;z-index:120;height:92px!important;background:linear-gradient(180deg,rgba(0,0,0,.50),rgba(0,0,0,0))!important;border-bottom:0!important;color:#fff!important;transition:height .35s var(--ease),background .35s,border-color .35s,color .35s!important}
header.scrolled,.siteHeader.scrolled{height:72px!important;background:rgba(255,255,255,.98)!important;border-bottom:0!important;color:#101112!important;box-shadow:none!important;backdrop-filter:blur(16px)}
.nav{height:100%;display:flex;align-items:center;gap:46px!important}
.logoLink{margin-right:auto}
.logoFull{width:auto!important;height:54px!important;object-fit:contain;transition:.3s}
.logoCompact{height:31px!important;width:auto!important}
.menu{display:flex;align-self:stretch;gap:38px!important}
.menu a{position:relative;display:inline-flex;align-self:center!important;height:auto!important;align-items:center;font-size:13px!important;line-height:1;font-weight:600!important;letter-spacing:0!important;text-transform:none!important;color:inherit!important;padding:3px 0 4px!important;opacity:.96}
.menu a:after{content:"";position:absolute;left:0;right:100%;bottom:-2px;height:2px;background:var(--signal)!important;transition:right .3s var(--ease)}
.menu a:hover:after,.menu a.active:after{right:0}
.navCta{margin-left:6px;background:var(--signal)!important;border:1px solid var(--signal)!important;border-radius:0!important;color:#fff!important;font-size:13px!important;font-weight:600!important;padding:15px 28px!important;min-width:126px;cursor:pointer;transition:.25s!important}
.navCta:hover{background:var(--signal-hover)!important;border-color:var(--signal-hover)!important;transform:none!important}
.mobile{color:inherit!important}

/* HERO — single image statement, not a dashboard */
.hero{height:92vh!important;min-height:720px!important;max-height:940px;position:relative!important;background-image:linear-gradient(90deg,rgba(9,11,13,.72) 0%,rgba(9,11,13,.44) 30%,rgba(9,11,13,.12) 58%,rgba(9,11,13,0) 82%),linear-gradient(0deg,rgba(9,11,13,.5) 0%,rgba(9,11,13,0) 34%),url('ast-hero-desktop.webp')!important;background-size:cover!important;background-position:center 45%!important;color:#fff;display:flex;align-items:flex-end}
.hero:after{content:""!important;position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(0deg,rgba(0,0,0,.14),transparent)!important;pointer-events:none;z-index:1}
.heroInner{position:relative;z-index:3;padding:0 0 118px!important;max-width:none!important;width:min(1440px,calc(100% - 104px))!important}
.heroCopy{max-width:790px!important}
.hero .eyebrow{color:rgba(255,255,255,.82)!important;margin-bottom:24px!important}
.hero h1{font-size:clamp(50px,5.6vw,82px)!important;line-height:.98!important;letter-spacing:-.06em!important;font-weight:500!important;margin:0!important;max-width:970px!important}
.hero h1 span{display:block;font-weight:500!important;white-space:nowrap}
.heroLead{font-size:20px!important;line-height:1.5!important;color:rgba(255,255,255,.88)!important;margin:28px 0 34px!important}
.heroActions{display:flex;gap:12px!important;align-items:center}
.primary,.primaryAction,.panelBtn,.mobileMenuCta{border:1px solid var(--signal)!important;border-radius:0!important;background:var(--signal)!important;color:#fff!important;font-size:13px!important;font-weight:600!important;padding:16px 24px!important;transition:.25s!important}
.primary:hover,.primaryAction:hover,.panelBtn:hover,.mobileMenuCta:hover{background:var(--signal-hover)!important;border-color:var(--signal-hover)!important;transform:none!important}
.secondaryHero{border:1px solid rgba(255,255,255,.68)!important;border-radius:0!important;background:rgba(0,0,0,.06)!important;color:#fff!important;padding:15px 24px!important;font-size:13px!important;font-weight:600!important;backdrop-filter:blur(4px)}
.secondaryHero:hover{background:#fff!important;color:#111!important;border-color:#fff!important}
.heroTelemetry{display:none!important}

/* HERO TRUST — one continuous glass layer; no per-item backgrounds.
   Kept intentionally light so the road and truck stay visible through it. */
.heroTrust{
  position:absolute!important;
  z-index:5;
  left:0;
  right:0;
  bottom:0;
  color:#fff!important;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.05) 34%,rgba(0,0,0,.16) 62%,rgba(0,0,0,.34) 100%)!important;
  border:0!important;
  -webkit-backdrop-filter:blur(11px) brightness(1.05) saturate(1.12);
  backdrop-filter:blur(11px) brightness(1.05) saturate(1.12);
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.55) 12%,#000 30%);
  mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.55) 12%,#000 30%);
}
.heroTrust .wrap{width:min(1440px,calc(100% - 104px))!important}
.trustShell{
  display:grid!important;
  grid-template-columns:repeat(4,1fr)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
.heroTrustItem{
  min-height:86px!important;
  padding:18px 25px!important;
  display:flex!important;
  gap:14px!important;
  align-items:center!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  filter:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  border-right:1px solid rgba(255,255,255,.10)!important;
}
.heroTrustItem:first-child{padding-left:0!important}
.heroTrustItem:last-child{border-right:0!important;padding-right:0!important}
.heroTrustIcon{
  width:38px!important;
  height:38px!important;
  flex:0 0 38px!important;
  border:1px solid rgba(255,255,255,.34)!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:#fff!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  font-size:14px!important;
  line-height:1!important;
}
.heroTrustIcon svg{width:18px!important;height:18px!important;display:block!important;stroke:currentColor!important;fill:none!important}
/* identical typography for all five trust points */
.heroTrustItem b{
  display:block!important;
  margin:0 0 4px!important;
  color:#fff!important;
  font-family:inherit!important;
  font-size:12px!important;
  font-weight:600!important;
  line-height:1.2!important;
  letter-spacing:.02em!important;
  text-transform:uppercase!important;
}
.heroTrustItem span{
  display:block!important;
  margin:0!important;
  color:rgba(255,255,255,.68)!important;
  font-family:inherit!important;
  font-size:10px!important;
  font-weight:400!important;
  line-height:1.35!important;
  letter-spacing:0!important;
}

/* PARTNER — quiet logo gallery */
.partnerSection{padding:70px 0 74px!important;background:#fff!important;border-top:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important}
.partnerWrap{display:grid!important;grid-template-columns:.82fr 1.18fr!important;gap:64px!important;align-items:center!important}
/* logos fade + rise in, staggered, once the block scrolls into view */
.partnerWrap.reveal .partnerLogos .partnerLogo{opacity:0!important;transform:translateY(16px)!important;transition:opacity .6s var(--ease),transform .6s var(--ease),filter .25s,background .25s!important}
.partnerWrap.reveal.on .partnerLogos .partnerLogo{opacity:1!important;transform:none!important}
.partnerWrap.reveal.on .partnerLogos .partnerLogo:nth-child(1){transition-delay:.08s!important}
.partnerWrap.reveal.on .partnerLogos .partnerLogo:nth-child(2){transition-delay:.2s!important}
.partnerWrap.reveal.on .partnerLogos .partnerLogo:nth-child(3){transition-delay:.32s!important}
.partnerWrap.reveal.on .partnerLogos .partnerLogo:nth-child(4){transition-delay:.44s!important}
@media(prefers-reduced-motion:reduce){.partnerWrap.reveal .partnerLogos .partnerLogo{opacity:1!important;transform:none!important}}
.partnerLead h2{font-size:clamp(24px,2.4vw,32px)!important;line-height:1.15!important;letter-spacing:-.02em!important;font-weight:var(--section-title-weight)!important;margin:0 0 10px!important}
.partnerLead p{color:#707276!important;font-size:14px!important;line-height:1.6!important;margin:0!important}
.partnerLogos{display:grid!important;grid-template-columns:repeat(4,1fr)!important;min-height:88px!important;border-top:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important}
.partnerLogo{min-height:88px!important;border-right:1px solid var(--line)!important;padding:16px!important;display:flex!important;align-items:center!important;justify-content:center!important;filter:grayscale(1)!important;opacity:.72;transition:.25s!important;background:#fff!important}
.partnerLogo:hover{filter:grayscale(0)!important;opacity:1;background:#fafafa!important}.partnerLogo:last-child{border-right:0!important}
.partnerLogoImage img{width:auto!important;max-width:178px!important;height:auto!important;max-height:56px!important;object-fit:contain!important}
.partnerWordmark{flex-direction:column!important;color:#222!important}.partnerWordmark strong{font-size:21px!important;letter-spacing:.03em!important}.partnerWordmark span{font-size:8px!important;letter-spacing:.18em!important;color:#777!important;margin-top:8px!important}

/* INTRO — white editorial block */
.section{padding:138px 0!important;background:#fff!important}
.introGrid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:130px!important;align-items:start!important}
.introHeadline{font-size:var(--section-title-size)!important;line-height:var(--section-title-line)!important;letter-spacing:var(--section-title-spacing)!important;font-weight:var(--section-title-weight)!important;margin:18px 0 0!important}
.introRight{padding-top:44px!important}.introRight .lead{max-width:650px!important}
.signatureLine{height:1px!important;background:#cfd1d4!important;margin:34px 0!important}
.microFacts{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:22px!important}.microFacts b{display:block!important;color:#111!important;font-size:13px!important;margin-bottom:7px!important}.microFacts span{color:#777!important;font-size:12px!important;line-height:1.55!important}
.confidenceStrip{display:none!important}

/* SERVICES — broad grey stage and sharp product-like tiles */
.services{padding:118px 0 128px!important;background:#fff!important;color:#151617!important}
.sectionHead{display:flex!important;justify-content:space-between!important;align-items:flex-end!important;margin-bottom:52px!important}.sectionHead .display{margin:16px 0 0!important}.controls{display:flex!important;gap:10px!important}.circleBtn{width:48px!important;height:48px!important;border-radius:50%!important;border:1px solid #aaa!important;background:transparent!important;color:#111!important;font-size:20px!important;transition:.25s!important}.circleBtn:hover{background:var(--signal)!important;border-color:var(--signal)!important;color:#fff!important}
.trackWrap{overflow:hidden!important;padding:12px 0!important;margin-top:-12px!important;margin-bottom:-12px!important;margin-left:0!important;margin-right:calc(50% - 50vw)!important}.track{display:flex!important;gap:18px!important;align-items:stretch!important;padding-left:clamp(0px,24vw,360px)!important;transition:transform .55s var(--ease)!important;touch-action:pan-y!important;cursor:grab!important;user-select:none!important;-webkit-user-select:none!important}
.track.is-dragging{transition:none!important;cursor:grabbing!important}
.serviceCard,.serviceCard img{-webkit-user-drag:none!important;user-select:none!important}.serviceCard{flex:0 0 min(336px,80vw)!important;width:min(336px,80vw)!important;min-width:min(336px,80vw)!important;max-width:min(336px,80vw)!important;height:auto!important;aspect-ratio:7/10!important;position:relative!important;overflow:hidden!important;background:#101112!important;border-radius:0!important;box-shadow:none!important;color:#fff!important}.serviceCard img,.services .serviceCard img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;filter:none!important;transform:none!important;transition:transform .7s var(--ease),opacity .4s!important;will-change:transform!important}.services .serviceCard:hover img{transform:scale(1.07)!important;opacity:1!important;filter:none!important}.serviceCard:before{content:""!important;position:absolute!important;inset:0!important;z-index:1!important;background:linear-gradient(0deg,rgba(0,0,0,.90) 0%,rgba(0,0,0,.38) 30%,rgba(0,0,0,.02) 65%,rgba(0,0,0,.10) 100%)!important}.cardNo{position:absolute!important;z-index:3!important;top:22px!important;left:24px!important;font-size:10px!important;letter-spacing:.16em!important;color:rgba(255,255,255,.82)!important}.cardBody{position:absolute!important;z-index:3!important;left:24px!important;right:24px!important;bottom:24px!important;padding-top:0!important;border-top:0!important;min-height:0!important}
/* kill every decorative line + reveal/stagger animation on the service cards */
.serviceCard:before{transition:none!important}
.serviceCard:after,.cardBody:before{display:none!important;content:none!important}
.services .serviceCard,.services.is-active .serviceCard,.services:not(.is-active) .serviceCard{opacity:1!important;transform:none!important;animation:none!important;transition:filter .5s var(--ease),opacity .35s!important;transition-delay:0s!important}
.services .serviceCard:active{transform:none!important}
.services .cardBody h3,.services .cardNo{opacity:1!important;transform:none!important;animation:none!important;transition:none!important;filter:none!important}
.services .cardNo{opacity:.85!important}.cardBody h3{font-size:24px!important;line-height:1.05!important;letter-spacing:-.035em!important;margin:0 46px 11px 0!important;padding-top:0!important;font-weight:600!important}.cardBody p{font-size:12px!important;line-height:1.55!important;color:rgba(255,255,255,.78)!important;margin:0 42px 0 0!important;opacity:0;transform:translateY(8px);transition:.32s var(--ease)!important}.serviceCard:hover .cardBody p{opacity:1;transform:none}.cardArrow{position:absolute!important;right:0!important;bottom:0!important;width:38px!important;height:38px!important;display:grid!important;place-items:center!important;border:1px solid rgba(255,255,255,.7)!important;border-radius:0!important;color:#fff!important;transition:.25s!important}.serviceCard:hover .cardArrow{background:var(--signal)!important;border-color:var(--signal)!important;color:#fff!important;transform:none!important}.carouselMeta{margin-top:36px!important;display:flex!important;align-items:center!important;gap:20px!important}.carouselMeta .controls{display:flex!important;gap:6px!important;flex:0 0 auto!important;order:3!important;margin-left:auto!important;margin-right:-10px!important}.carouselMeta .progress{order:1!important}.carouselMeta .carouselCount{order:2!important}.carouselMeta .circleBtn,.sectionHead .circleBtn{width:auto!important;height:auto!important;min-width:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#151617!important;font-size:22px!important;line-height:1!important;padding:8px 10px!important;display:grid!important;place-items:center!important;cursor:pointer!important;opacity:.72!important;transition:color .2s,opacity .2s!important}.carouselMeta .circleBtn:hover,.sectionHead .circleBtn:hover{background:transparent!important;border:0!important;color:var(--signal)!important;opacity:1!important}.progress{height:1px!important;background:#c6c7c9!important;flex:1!important}.progress i{display:block!important;height:2px!important;background:var(--signal)!important}.carouselCount{font-size:10px!important;letter-spacing:.14em!important;color:#737579!important;flex:0 0 auto!important}
@media(max-width:560px){.carouselMeta{gap:14px!important;margin-top:28px!important}.carouselMeta .circleBtn{font-size:20px!important;padding:8px!important}}

/* FLEET — one dark cinematic section, no blue/navy */
.fleetStage{position:relative!important;padding:138px 0!important;background:#101112!important;color:#fff!important;overflow:hidden!important}
.fleetStage:before{content:""!important;position:absolute!important;inset:0!important;background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px)!important;background-size:72px 72px!important;opacity:.55!important}
.fleetStageGrid{position:relative!important;z-index:2!important;display:grid!important;grid-template-columns:.92fr 1.08fr!important;gap:64px!important;align-items:center!important}
.fleetEditorial{max-width:620px!important}.fleetEditorial .kicker{color:#999!important}.fleetHeadline{font-size:clamp(34px,3.3vw,46px)!important;line-height:1.08!important;letter-spacing:var(--section-title-spacing)!important;font-weight:var(--section-title-weight)!important;margin:18px 0 30px!important;max-width:none!important}.fleetEditorial p{font-size:15px!important;line-height:1.75!important;color:#aaa!important;margin:0 0 34px!important;max-width:520px!important}.textCta{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;min-height:46px!important;padding:0 22px!important;color:#fff!important;text-decoration:none!important;font-size:12px!important;font-weight:600!important;text-transform:uppercase!important;letter-spacing:.04em!important;border:1px solid rgba(255,255,255,.82)!important;border-radius:0!important;background:transparent!important;transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease)!important}
.textCta:hover{background:#fff!important;color:#111!important;border-color:#fff!important}
.textCta span{width:auto!important;height:auto!important;min-width:0!important;border:0!important;background:transparent!important;color:inherit!important;font-size:15px!important;line-height:1!important;transform:none!important;display:inline!important;place-items:initial!important;transition:none!important}
.textCta:hover span{background:transparent!important;border:0!important;transform:none!important;color:inherit!important}
.fleetVisual{position:relative!important;background:#0f1011!important;border:0!important;min-height:470px!important;overflow:hidden!important;margin-right:0!important}.fleetPicture{position:absolute!important;inset:0!important;background-image:url('ast-fleet.webp')!important;background-size:cover!important;background-position:center 55%!important;-webkit-mask-image:none!important;mask-image:none!important;transition:transform 1.1s var(--ease)!important}.fleetVisual:hover .fleetPicture{transform:scale(1.035)!important}
.fleetVisual:before{content:""!important;position:absolute!important;left:0;top:0;width:3px;height:56px;background:var(--signal)!important;z-index:3!important}
.fleetVisual:after{content:""!important;position:absolute!important;left:0;top:0;width:56px;height:3px;background:var(--signal)!important;z-index:3!important}
.fleetSpec{display:none!important}
.fleetCrosshair,.fleetLine{display:none!important}

/* PROCESS — clean white, typography first */
.processSection{padding:120px 0!important;background:#fff!important}
.processSection>.wrap{display:grid!important;grid-template-columns:.92fr 1.08fr!important;gap:72px!important;align-items:center!important}
.processCircles{order:2!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:18px!important;grid-template-columns:none!important;margin:0!important}
.processIntro{order:1!important;max-width:none!important;margin:0!important}.processIntro .display{margin:14px 0 18px!important}.processIntro .lead{max-width:380px!important}
.processCircle{width:100%!important;display:grid!important;grid-template-columns:60px minmax(0,1fr)!important;column-gap:20px!important;row-gap:4px!important;align-items:center!important;text-align:left!important;padding:0!important;position:relative!important}
.processCircle>.circleProgress{grid-column:1!important;grid-row:1/3!important;align-self:center!important}
.processCircle>h3{grid-column:2!important;grid-row:1!important;align-self:end!important}
.processCircle>p{grid-column:2!important;grid-row:2!important;align-self:start!important}
.circleProgress{width:60px!important;height:60px!important;margin:0!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:conic-gradient(var(--signal) var(--p),#dedfe1 0)!important}.circleProgress:before{content:""!important;position:absolute!important;inset:5px!important;border-radius:50%!important;background:#fff!important;box-shadow:inset 0 0 0 1px #ddd!important}.circleProgress span{position:relative!important;z-index:2!important;font-size:14px!important;color:#111!important}
.processCircle h3{font-size:16px!important;line-height:1.2!important;margin:4px 0 6px!important}.processCircle p{font-size:13px!important;line-height:1.6!important;color:#777!important;margin:0!important;max-width:none!important}
.processCircle:after{display:none!important}
@media(max-width:860px){.processSection>.wrap{grid-template-columns:1fr!important;gap:40px!important}.processCircles{order:2!important}.processIntro{order:1!important}}
/* animated 1 -> 4 ring fill */
@property --p{syntax:'<percentage>';inherits:false;initial-value:0%}
.processCircle .circleProgress{--p:0%;transition:--p 1s var(--ease)}
.processCircles.is-active .processCircle:nth-child(1) .circleProgress{--p:100%;transition-delay:.05s}
.processCircles.is-active .processCircle:nth-child(2) .circleProgress{--p:100%;transition-delay:.5s}
.processCircles.is-active .processCircle:nth-child(3) .circleProgress{--p:100%;transition-delay:.95s}
.processCircles.is-active .processCircle:nth-child(4) .circleProgress{--p:100%;transition-delay:1.4s}
.processCircle .circleProgress span{transition:color .3s var(--ease)}
.processCircles.is-active .processCircle .circleProgress span{color:#111!important}
@media(prefers-reduced-motion:reduce){.processCircle .circleProgress{--p:100%!important;transition:none!important}}

/* HISTORY — mirrored: timeline left, headline + text right */
.history>.wrap{display:grid!important;grid-template-columns:1fr 1.02fr!important;gap:64px!important;align-items:center!important}
.history .timeline{order:1!important;display:flex!important;flex-direction:column!important;grid-template-columns:none!important;gap:0!important}
.history .time{order:0!important;border-right:0!important;border-bottom:1px solid #c9cacc!important;padding:16px 0 16px 22px!important;position:relative!important}
.history .time:last-child{border-bottom:0!important}
.history .time strong{display:block!important;font-size:21px!important;letter-spacing:-.03em!important;margin-bottom:5px!important;color:#111!important}
.history .time span{font-size:12px!important;line-height:1.6!important;color:#6d6f72!important;max-width:none!important;display:block!important}
.history .time:before{content:""!important;display:block!important;position:absolute!important;top:22px!important;left:0!important;width:7px!important;height:7px!important;border-radius:50%!important;background:var(--signal)!important}
.history .historyTop{order:2!important;display:block!important;grid-template-columns:none!important;gap:0!important}
.history .historyTop .display{margin:12px 0 16px!important}
.history .historyTop p{max-width:400px!important}
.history .historyRail{display:none!important}
@media(max-width:860px){.history>.wrap{grid-template-columns:1fr!important;gap:36px!important}.history .historyTop{order:1!important}.history .timeline{order:2!important}}

/* HISTORY — cool grey */
.history{padding:110px 0!important;background:#fff!important;color:#111!important}.historyTop{display:grid!important;grid-template-columns:1fr .75fr!important;gap:90px!important;align-items:end!important}.historyTop p{font-size:15px!important;line-height:1.7!important;color:#65676a!important;margin:0!important}.historyTop .display{margin:16px 0 0!important}.historyRail{height:1px!important;background:#bbb!important;margin:66px 0 32px!important}.historyRail span{display:block!important;height:2px!important;background:var(--signal)!important}.timeline{display:grid!important;grid-template-columns:repeat(4,1fr)!important}.time{padding:26px 34px 10px 0!important;border-right:1px solid #c9cacc!important;position:relative!important}.time:last-child{border:0!important}.time strong{display:block!important;font-size:28px!important;letter-spacing:-.04em!important;margin-bottom:14px!important;color:#111!important}.time span{font-size:12px!important;line-height:1.65!important;color:#6d6f72!important;max-width:230px!important;display:block!important}.time:before{content:""!important;position:absolute!important;top:-36px!important;left:0!important;width:8px!important;height:8px!important;border-radius:50%!important;background:var(--signal)!important}

/* PEOPLE */
.peopleSection{padding:132px 0 148px!important;background:#fff!important}
.peopleIntro{display:grid!important;grid-template-columns:1fr .68fr!important;gap:90px!important;align-items:end!important;margin-bottom:58px!important}
.peopleCopy p{font-size:15px!important;line-height:1.7!important;color:#666!important;margin:0!important}
/* index "menschen" section — intro left, two cards right */
#menschen{padding:112px 0 124px!important}
#menschen>.wrap{display:grid!important;grid-template-columns:.86fr 1.14fr!important;gap:56px!important;align-items:center!important}
#menschen .peopleIntro{display:block!important;grid-template-columns:none!important;gap:0!important;margin:0!important;max-width:none!important}
#menschen .peopleIntro .kicker{margin-bottom:14px!important}
#menschen .peopleIntro .display{margin:0 0 18px!important}
#menschen .peopleIntro>p{font-size:15px!important;line-height:1.7!important;color:#666!important;margin:0 0 26px!important;max-width:400px!important}
#menschen .peopleIntro .panelBtn{display:inline-flex!important;width:auto!important;padding:14px 22px!important;margin:0!important}
@media(max-width:860px){#menschen>.wrap{grid-template-columns:1fr!important;gap:36px!important}}.peopleGrid{display:grid!important;grid-template-columns:repeat(2,minmax(0,360px))!important;justify-content:center!important;gap:22px!important}
#menschen .peopleGrid{grid-template-columns:1fr 1fr!important;justify-content:stretch!important;gap:20px!important}.personCard{height:auto!important;min-height:0!important;aspect-ratio:4/5!important;position:relative!important;overflow:hidden!important;background:#18191a!important;border:0!important;border-radius:0!important}.personCard:before{content:""!important;position:absolute!important;inset:0!important;background:linear-gradient(0deg,rgba(0,0,0,.88),rgba(0,0,0,.02) 68%)!important;z-index:2!important}.personVisual{position:absolute!important;inset:0!important;background:linear-gradient(135deg,#292a2c,#111)!important;transition:transform .9s var(--ease)!important}.personVisual:before,.personVisual:after{display:none!important}.personVisual img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 22%!important}.personCard:hover .personVisual{transform:scale(1.02)!important}.personInfo{position:absolute!important;z-index:4!important;left:34px!important;right:34px!important;bottom:32px!important;background:none!important;color:#fff!important}.personRole{font-size:9px!important;letter-spacing:.16em!important;text-transform:uppercase!important;color:#aaa!important;margin-bottom:9px!important}.personInfo h3{font-size:19px!important;letter-spacing:-.02em!important;line-height:1.15!important;margin:0 0 7px!important}.personInfo p{font-size:12px!important;line-height:1.5!important;color:#c9c9ca!important;max-width:none!important}
@media(max-width:860px){.peopleGrid{grid-template-columns:1fr 1fr!important;justify-content:stretch!important;gap:16px!important;max-width:560px!important}}
@media(max-width:560px){.peopleGrid{grid-template-columns:minmax(0,360px)!important}.personCard{min-height:0!important}}.personMeta{border-top:1px solid rgba(255,255,255,.25)!important;margin-top:20px!important;padding-top:13px!important;font-size:10px!important;color:#aaa!important}

/* FOOTER — black automotive */
footer{background:#0b0b0c!important;color:#fff!important;padding-top:0!important}.footerStatement{min-height:300px!important;display:flex!important;justify-content:space-between!important;align-items:center!important;gap:80px!important;border-bottom:1px solid #303133!important;margin-bottom:62px!important}.footerStatement span{display:block!important;font-size:10px!important;text-transform:uppercase!important;letter-spacing:.16em!important;color:#888!important;margin-bottom:18px!important}.footerStatement h2{font-size:clamp(46px,5vw,76px)!important;line-height:.98!important;letter-spacing:-.055em!important;font-weight:500!important;margin:0!important}.footerStatement button{background:var(--signal)!important;color:#fff!important;border:0!important;border-radius:0!important;padding:17px 24px!important;font-size:12px!important;font-weight:600!important;display:flex!important;align-items:center!important;gap:30px!important;cursor:pointer!important}.footTop{display:grid!important;grid-template-columns:1.6fr repeat(3,1fr)!important;gap:54px!important}.footTop h4{color:#888!important;font-size:10px!important;letter-spacing:.15em!important;text-transform:uppercase!important}.footTop a,.footTop p,.footerContactMini{color:#b3b4b6!important;font-size:13px!important;line-height:1.7!important}
.footerContactMini a{color:#fff!important;cursor:pointer!important;display:inline-block!important;font-size:13px!important;text-decoration:none!important}
.footerContactMini a:hover{color:var(--signal)!important;text-decoration:underline!important}.footBottom{border-top:1px solid #2f3032!important;color:#777!important;padding:24px 0!important;margin-top:54px!important;font-size:10px!important;letter-spacing:.08em!important}

/* CONTACT DRAWER */
.contactPanel{background:#fff!important;color:#111!important}.contactHero{filter:grayscale(1)!important}.contactRow{border-color:#ddd!important}.contactRow .icon{background:#efefef!important;color:#111!important}.close{background:#fff!important;color:#111!important;border-radius:50%!important}

/* SUBPAGES — pure graphite hero instead of repeated truck image */
.subhero{position:relative!important;height:auto!important;min-height:0!important;background:#111214!important;background-image:none!important;color:#fff!important;display:block!important;padding:178px 0 64px!important;overflow:hidden!important}
.subhero:before{content:""!important;position:absolute!important;inset:0!important;z-index:0!important;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px)!important;background-size:82px 82px!important;-webkit-mask-image:linear-gradient(108deg,#000 0%,#000 40%,transparent 88%)!important;mask-image:linear-gradient(108deg,#000 0%,#000 40%,transparent 88%)!important;opacity:.6!important;pointer-events:none!important}.subheroInner{position:relative!important;z-index:2!important;padding-top:0!important;padding-bottom:0!important}.subhero .crumbs,.subhero .crumbs a{color:#9b9c9f!important}.subhero .crumbs{margin-bottom:20px!important}.subhero h1{font-size:clamp(32px,3.8vw,50px)!important;line-height:1.07!important;letter-spacing:-.03em!important;font-weight:500!important;max-width:900px!important;margin-top:14px!important}.subhero p{font-size:16px!important;line-height:1.6!important;color:#b8b9bb!important;max-width:680px!important;margin-top:18px!important}
.legalHero{background:#111214!important;background-image:none!important}
.legalHero:after{display:none!important}
/* Photo variant of the subpage hero — a graphite wash keeps the warm photo
   inside the site palette and holds contrast so the white text stays readable. */
.subhero.subheroPhoto{
  background-color:#111214!important;
  background-image:
    linear-gradient(93deg,rgba(13,15,18,.88) 0%,rgba(13,15,18,.60) 30%,rgba(14,17,21,.24) 66%,rgba(14,17,21,.12) 100%),
    linear-gradient(0deg,rgba(13,15,18,.74) 0%,rgba(13,15,18,.10) 46%,rgba(13,15,18,0) 66%),
    var(--subhero-img,url('team-beratung.webp'))!important;
  background-size:cover!important;
  background-position:center,center,center 42%!important;
  background-repeat:no-repeat!important;
  min-height:460px!important;
}
.subhero.subheroPhoto:before{opacity:.16!important}
.subhero.subheroPhoto .crumbs,.subhero.subheroPhoto h1,.subhero.subheroPhoto p{text-shadow:0 1px 18px rgba(8,10,12,.55)!important}
@media(max-width:820px){
  .subhero.subheroPhoto{
    background-image:
      linear-gradient(180deg,rgba(13,15,18,.72) 0%,rgba(13,15,18,.6) 38%,rgba(13,15,18,.6) 60%,rgba(13,15,18,.9) 100%),
      var(--subhero-img,url('team-beratung.webp'))!important;
    background-position:center,center 32%!important;
    min-height:0!important;
  }
}
.subSection,.contentSection{background:#fff!important}.cards .card,.infoCard,.contentCard{border-color:#ddd!important;box-shadow:none!important;border-radius:0!important}.imageSplit .copy{background:#111214!important;color:#fff!important}.imageSplit .copy .lead{color:#b2b3b6!important}

/* REMOVE lingering old blue sections */
.scanTechSection{display:none!important}.featureCopy{background:#111214!important}.featureCopy:before{background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px)!important}.featureCopy .kicker{color:#aaa!important}
.cta{background:#111214!important}.cta h2{color:#fff!important}.cta button{background:var(--signal)!important;color:#fff!important;border-color:var(--signal)!important}

/* MOTION: subtle only */
.reveal{transition:opacity .8s var(--ease),transform .8s var(--ease)!important}.reveal:not(.on){transform:translateY(22px)!important}.reveal.on{transform:none!important}.serviceCard,.personCard,.fleetPicture{will-change:transform}

@media(max-width:1100px){
  .wrap,.heroInner,.heroTrust .wrap{width:min(100% - 56px,1440px)!important}
  .partnerWrap,.introGrid,.fleetStageGrid,.historyTop,.peopleIntro{grid-template-columns:1fr!important;gap:48px!important}
  .partnerLogos{grid-template-columns:repeat(2,1fr)!important}.partnerLogo:nth-child(2){border-right:0!important}.partnerLogo:nth-child(-n+2){border-bottom:1px solid var(--line)!important}
  .processCircles{grid-template-columns:repeat(2,1fr)!important}.processCircle:after{display:none!important}
  .fleetEditorial{max-width:760px!important}.fleetVisual{min-height:520px!important}
}
@media(max-width:820px){
  .wrap,.heroInner,.heroTrust .wrap{width:calc(100% - 36px)!important}.menu,.navCta{display:none!important}.mobile{display:block!important}
  .hero{height:820px!important;min-height:760px!important;background-position:62% center!important}.heroInner{padding-bottom:190px!important}.hero h1{font-size:48px!important}.hero h1 span{white-space:normal!important}.trustShell{grid-template-columns:repeat(2,1fr)!important}.heroTrustItem{padding:14px!important}.heroTrustItem:first-child{padding-left:0!important}
  .section,.services,.fleetStage,.processSection,.history,.peopleSection{padding-top:92px!important;padding-bottom:96px!important}.introGrid,.microFacts,.peopleGrid,.timeline,.footTop{grid-template-columns:1fr!important}.microFacts{gap:18px!important}.partnerLogos{grid-template-columns:1fr 1fr!important}.serviceCard{flex-basis:min(336px,80vw)!important}.track{padding-left:16px!important}.processCircles{grid-template-columns:1fr 1fr!important}.fleetSpec{height:auto!important;grid-template-columns:1fr!important}.fleetPicture{inset:0 0 174px!important}.fleetSpec>div{min-height:58px!important;border-right:0!important;border-bottom:1px solid #303133!important}.historyTop{gap:34px!important}.timeline{gap:0!important}.time{border-right:0!important;border-bottom:1px solid #ccc!important;padding:24px 0!important}.time:before{display:none!important}.footerStatement{flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;padding:58px 0!important}.footerStatement button{width:100%!important;justify-content:space-between!important}
}
@media(max-width:560px){
  header,.siteHeader{height:76px!important}.logoFull{height:44px!important}.hero{height:760px!important;min-height:720px!important;background-position:65% center!important}.hero h1{font-size:40px!important}.heroLead{font-size:17px!important}.heroActions{flex-direction:column!important;align-items:stretch!important}.primary,.secondaryHero{width:100%!important;text-align:center!important}.heroInner{padding-bottom:188px!important}.trustShell{grid-template-columns:1fr 1fr!important}.heroTrustItem{min-height:78px!important}.heroTrustIcon{display:none!important}.partnerWrap{gap:34px!important}.partnerLogos{grid-template-columns:1fr!important}.partnerLogo{border-right:0!important;border-bottom:1px solid var(--line)!important}.partnerLogo:last-child{border-bottom:0!important}.display,h2.display,.introHeadline,.fleetHeadline,.partnerLead h2,.services .display,.processIntro .display,.history .display,.peopleIntro .display{font-size:34px!important;letter-spacing:-.03em!important}.serviceCard{height:auto!important}.processCircles{grid-template-columns:1fr!important;gap:44px!important}.peopleGrid{grid-template-columns:1fr!important}.personCard{height:auto!important}.fleetVisual{min-height:430px!important}.footerStatement h2{font-size:46px!important}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}


/* === HEADER: transparent over hero -> solid dark sticky, secondary career CTA === */
header.scrolled,.siteHeader.scrolled{
  height:72px!important;
  background:rgba(8,8,9,.97)!important;
  border-bottom:0!important;
  color:#fff!important;
  box-shadow:0 10px 30px rgba(0,0,0,.14)!important;
  backdrop-filter:blur(16px)!important;
}
header.scrolled .logoFull,.siteHeader.scrolled .logoFull{
  display:block!important;
  height:44px!important;
  width:auto!important;
}
header.scrolled .logoCompact,.siteHeader.scrolled .logoCompact{
  display:none!important;
}
header.scrolled .menu a,.siteHeader.scrolled .menu a{color:#fff!important}

/* Karriere = secondary CTA, identical visual language to "Mehr über AST" */
.menu a.careerNavButton{
  align-self:center!important;
  height:auto!important;
  min-height:46px!important;
  padding:0 22px!important;
  border:1px solid rgba(255,255,255,.82)!important;
  color:#fff!important;
  background:transparent!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  transition:background .25s ease,color .25s ease,border-color .25s ease!important;
}
.menu a.careerNavButton:after{display:none!important}
.menu a.careerNavButton:hover,
.menu a.careerNavButton.active{
  background:#fff!important;
  border-color:#fff!important;
  color:#111!important;
}
header.scrolled .menu a.careerNavButton,
.siteHeader.scrolled .menu a.careerNavButton{
  border-color:rgba(255,255,255,.82)!important;
  color:#fff!important;
}
header.scrolled .menu a.careerNavButton:hover,
header.scrolled .menu a.careerNavButton.active,
.siteHeader.scrolled .menu a.careerNavButton:hover,
.siteHeader.scrolled .menu a.careerNavButton.active{
  background:#fff!important;
  color:#111!important;
}

/* Kontakt remains the only blue primary CTA at the far right */
.navCta{
  margin-left:0!important;
  background:var(--signal)!important;
  border-color:var(--signal)!important;
  color:#fff!important;
  min-height:46px!important;
  padding:0 26px!important;
}
header.scrolled .navCta,.siteHeader.scrolled .navCta{
  background:var(--signal)!important;
  border-color:var(--signal)!important;
  color:#fff!important;
}

@media(max-width:820px){
  /* In the off-canvas menu Karriere returns to a normal menu row */
  header .menu a.careerNavButton,.siteHeader .menu a.careerNavButton{
    min-height:62px!important;
    padding:0!important;
    border:0!important;
    border-bottom:1px solid #e5ebef!important;
    background:transparent!important;
    color:var(--ink)!important;
    justify-content:space-between!important;
  }
  header .menu a.careerNavButton:after,.siteHeader .menu a.careerNavButton:after{
    display:block!important;
  }
  header .menu a.careerNavButton:hover,
  header .menu a.careerNavButton.active,
  .siteHeader .menu a.careerNavButton:hover,
  .siteHeader .menu a.careerNavButton.active{
    background:transparent!important;
    color:var(--signal)!important;
  }
}

/* === NAV CTA GROUP + CONTACT PANEL LAYERING === */
@media(min-width:821px){
  header .nav,.siteHeader .nav{gap:0!important}
  header .menu,.siteHeader .menu{margin-left:auto!important}
  header .menu a.careerNavButton,.siteHeader .menu a.careerNavButton{
    margin-left:12px!important;
  }
  header .navCta,.siteHeader .navCta{
    margin-left:10px!important;
  }
}

/* Karriere stays the outlined secondary CTA */
.menu a.careerNavButton{
  border:1px solid rgba(255,255,255,.9)!important;
  color:#fff!important;
  background:transparent!important;
}

/* Contact drawer must sit above both transparent and sticky headers */
.overlay{
  z-index:240!important;
}
.contactPanel{
  z-index:250!important;
}
.contactPanel .close{
  z-index:2!important;
}

/* === Dark band section — keep it dark (the base .section rule forces #fff) === */
.darkBand,.darkBand.section{background:#111214!important;color:#fff!important}
.darkBand .kicker{color:#9aa0a6!important}
.darkBand .lead{color:#b2b3b6!important}
.darkBand .check i{border-color:rgba(255,255,255,.34)!important}

/* === FUHRPARK — "coming soon" card + FAQ accordion === */
.card.cardSoon{background:#f6f7f8!important;border:1px dashed #c7ccd0!important}
.card.cardSoon:after{display:none!important}
.card .soonTag{position:absolute!important;top:28px!important;right:28px!important;font-size:9px!important;font-weight:700!important;letter-spacing:.15em!important;text-transform:uppercase!important;color:var(--signal)!important;border:1px solid var(--signal)!important;border-radius:999px!important;padding:5px 11px!important;line-height:1!important}
.card.cardSoon h3{color:#3a3d40!important}

.faqList{max-width:840px!important;margin-top:40px!important;border-top:1px solid #dfe3e6!important}
.faqList details{border-bottom:1px solid #dfe3e6!important}
.faqList summary{list-style:none!important;cursor:pointer!important;padding:20px 0!important;font-size:16px!important;font-weight:600!important;color:#1a1c1e!important;display:flex!important;justify-content:space-between!important;align-items:baseline!important;gap:24px!important}
.faqList summary::-webkit-details-marker{display:none!important}
.faqList summary::after{content:"+"!important;color:var(--signal)!important;font-size:20px!important;font-weight:400!important;line-height:1!important;flex:0 0 auto!important}
.faqList details[open] summary::after{content:"\2013"!important}
.faqList details>p{margin:0 0 22px!important;font-size:14px!important;line-height:1.72!important;color:#5c6a72!important;max-width:68ch!important}

/* === KARRIERE — Bewerbungsformular === */
.applySection .lead{max-width:640px!important}
.applyForm{margin-top:44px;max-width:780px}
.applyForm fieldset{border:0;padding:0;margin:0 0 36px}
.applyForm legend,.applyForm .stepLabel{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#1a1c1e;margin-bottom:20px;padding:0}
.applyForm legend span,.applyForm .stepLabel span{width:26px;height:26px;flex:0 0 26px;border-radius:50%;background:var(--signal);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:700}
.jobOptions{display:grid;gap:12px}
.jobOption{display:flex;gap:14px;align-items:flex-start;border:1px solid #d9dee2;padding:17px 20px;cursor:pointer;transition:border-color .2s,background .2s}
.jobOption:hover{border-color:#a9b2b9}
.jobOption input{margin-top:3px;width:16px;height:16px;accent-color:var(--signal);flex:0 0 16px}
.jobOption:has(input:checked){border-color:var(--signal);background:#f3f9ff}
.jobOptMain b{display:block;font-size:15px;color:#14171a;margin-bottom:3px;font-weight:650}
.jobOptMain small{color:#6b7880;font-size:13px;line-height:1.4}
.jobFields{margin-bottom:4px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:2px 20px}
.field{display:flex;flex-direction:column;margin-bottom:16px}
.field label{font-size:12px;font-weight:600;color:#5a6670;margin-bottom:7px}
.applyForm input[type=text],.applyForm input[type=email],.applyForm input[type=tel],.applyForm select,.applyForm textarea{border:1px solid #d3d9dd;background:#fff;padding:12px 13px;font:inherit;font-size:14px;color:#14171a;border-radius:0;width:100%;transition:border-color .2s}
.applyForm input:focus,.applyForm select:focus,.applyForm textarea:focus{outline:0;border-color:var(--signal)}
.applyForm textarea{resize:vertical;min-height:96px}
.checkGroup{display:flex;flex-wrap:wrap;gap:12px 22px}
.checkGroup label{flex-direction:row;align-items:center;gap:7px;font-size:14px;font-weight:500;color:#14171a;margin:0}
.checkGroup input{accent-color:var(--signal);width:16px;height:16px}
.questionsDivider{height:1px;background:#e4e8eb;margin:6px 0 28px}
.consentRow{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.55;color:#5a6670;margin:8px 0 24px}
.consentRow input{margin-top:2px;flex:0 0 16px;width:16px;height:16px;accent-color:var(--signal)}
.consentRow a{color:var(--signal);text-decoration:underline}
.applySubmit{border:0;background:var(--signal);color:#fff;padding:15px 26px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;display:inline-flex;align-items:center;gap:16px;cursor:pointer;transition:background .2s}
.applySubmit:hover{background:#0069bd}
.applyHint{font-size:12px;line-height:1.6;color:#8a949c;margin-top:16px;max-width:520px}
.applyHint a{color:var(--signal)}
.applyHintSent{color:var(--signal)!important}
@media(max-width:640px){.applyForm .grid2{grid-template-columns:1fr}}

/* ============================================================
   MOBILE OVERHAUL — align mobile with the current dark design
   ============================================================ */
@media(max-width:900px){

  /* --- header + hamburger --- */
  header,.siteHeader{height:64px!important}
  header .wrap.nav,.siteHeader .wrap.nav{height:64px!important}
  .logoFull{height:34px!important}
  header.mobileMenuOpen .logoFull,.siteHeader.mobileMenuOpen .logoFull{display:block!important}
  header.mobileMenuOpen .logoCompact,.siteHeader.mobileMenuOpen .logoCompact{display:none!important}
  header.mobileMenuOpen,.siteHeader.mobileMenuOpen{background:transparent!important;color:#fff!important;border:0!important;box-shadow:none!important}

  header .mobile,.siteHeader .mobile{
    width:42px!important;height:42px!important;border:1px solid rgba(255,255,255,.42)!important;
    border-radius:50%!important;color:#fff!important;background:transparent!important;position:relative!important;
    display:grid!important;place-items:center!important;padding:0!important;margin-left:auto!important
  }
  header .mobile:before,header .mobile:after,
  .siteHeader .mobile:before,.siteHeader .mobile:after{
    content:""!important;position:absolute!important;left:50%!important;top:50%!important;
    width:17px!important;height:1.5px!important;background:currentColor!important;transition:.3s var(--ease)!important
  }
  header .mobile:before,.siteHeader .mobile:before{transform:translate(-50%,-50%) translateY(-4px)!important}
  header .mobile:after,.siteHeader .mobile:after{transform:translate(-50%,-50%) translateY(4px)!important}
  header.mobileMenuOpen .mobile,.siteHeader.mobileMenuOpen .mobile{color:#fff!important;border-color:rgba(255,255,255,.42)!important}
  header.mobileMenuOpen .mobile:before,.siteHeader.mobileMenuOpen .mobile:before{transform:translate(-50%,-50%) rotate(45deg)!important}
  header.mobileMenuOpen .mobile:after,.siteHeader.mobileMenuOpen .mobile:after{transform:translate(-50%,-50%) rotate(-45deg)!important}

  /* --- menu panel: dark, left aligned --- */
  header .menu,.siteHeader .menu{
    position:fixed!important;inset:0!important;z-index:120!important;width:100%!important;height:100dvh!important;
    margin:0!important;padding:96px 24px 0!important;background:#111214!important;color:#fff!important;
    border:0!important;box-shadow:none!important;display:flex!important;flex-direction:column!important;
    align-items:stretch!important;gap:0!important;overflow-y:auto!important
  }
  header .menu>a,.siteHeader .menu>a{
    align-self:stretch!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
    text-align:left!important;width:100%!important;height:auto!important;min-height:62px!important;padding:0!important;
    border-bottom:1px solid rgba(255,255,255,.1)!important;font-size:24px!important;line-height:1.15!important;
    font-weight:500!important;letter-spacing:-.02em!important;text-transform:none!important;color:#fff!important;opacity:1!important
  }
  header .menu>a:after,.siteHeader .menu>a:after{
    content:"→"!important;position:static!important;left:auto!important;right:auto!important;bottom:auto!important;
    width:auto!important;height:auto!important;background:none!important;transform:none!important;
    font-size:17px!important;font-weight:400!important;color:rgba(255,255,255,.35)!important;transition:.25s!important
  }
  header .menu>a.active,.siteHeader .menu>a.active{color:var(--signal)!important}
  header .menu>a.active:after,.siteHeader .menu>a.active:after{color:var(--signal)!important}
  header .menu>a.careerNavButton,.siteHeader .menu>a.careerNavButton{
    border:0!important;border-bottom:1px solid rgba(255,255,255,.1)!important;background:transparent!important;
    min-height:62px!important;padding:0!important;justify-content:space-between!important;color:#fff!important
  }
  header .menu>a.careerNavButton:after,.siteHeader .menu>a.careerNavButton:after{display:block!important;content:"→"!important}

  /* --- contact block at the bottom: graphite, not navy --- */
  .mobileMenuContact{
    margin:32px -24px 0!important;margin-top:auto!important;
    padding:26px 24px calc(26px + env(safe-area-inset-bottom))!important;
    background:#0b0c0d!important;color:#fff!important;border-top:1px solid rgba(255,255,255,.09)!important
  }
  .mobileMenuContactLabel{color:#8a8c8f!important}
  .mobileMenuContactLabel:before{background:var(--signal)!important}
  .mobileMenuContactGrid{grid-template-columns:1fr!important;gap:14px!important}
  header .menu .mobileContactItem,.siteHeader .menu .mobileContactItem{
    display:flex!important;align-self:stretch!important;align-items:flex-start!important;gap:12px!important;
    padding:0!important;height:auto!important;min-height:0!important;border:0!important;color:#fff!important
  }
  .mobileContactItem .mIcon{border-color:rgba(255,255,255,.2)!important;color:#fff!important}
  .mobileContactItem small{color:#8a8c8f!important}
  .mobileContactItem b{color:#fff!important;font-size:13px!important}
  header .menu .mobileMenuCta,.siteHeader .menu .mobileMenuCta{
    display:flex!important;align-self:stretch!important;align-items:center!important;justify-content:space-between!important;
    margin-top:22px!important;padding:15px 18px!important;min-height:0!important;height:auto!important;
    background:var(--signal)!important;color:#fff!important;border:0!important;
    font-size:12px!important;text-transform:uppercase!important;letter-spacing:.05em!important;font-weight:700!important
  }
  header .menu .mobileMenuCta:after,.siteHeader .menu .mobileMenuCta:after{content:"→"!important;color:#fff!important;position:static!important;background:none!important;width:auto!important;height:auto!important;transform:none!important}

  /* --- HERO: flow layout instead of one huge fixed block --- */
  .hero{height:auto!important;min-height:0!important;max-height:none!important;padding:104px 0 0!important;display:block!important}
  .heroInner{padding:44px 0 46px!important;width:calc(100% - 40px)!important;max-width:none!important;margin:0 auto!important;min-height:44vh!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important}
  .hero h1{font-size:clamp(34px,8.4vw,44px)!important;line-height:1.05!important}
  .hero h1 span{white-space:normal!important}
  .heroLead{font-size:16px!important;margin:18px 0 24px!important}
  .heroActions{flex-direction:column!important;align-items:stretch!important;gap:10px!important}
  .hero .primary,.hero .secondaryHero{width:100%!important;justify-content:space-between!important;padding:16px 20px!important}

  .heroTrust{position:static!important;left:auto!important;right:auto!important;bottom:auto!important;
    background:#0d0e0f!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;
    -webkit-mask-image:none!important;mask-image:none!important;border-top:1px solid rgba(255,255,255,.08)!important}
  .heroTrust .wrap{width:calc(100% - 40px)!important;padding:6px 0!important}
  .trustShell{display:grid!important;grid-template-columns:1fr 1fr!important}
  .heroTrustItem{display:flex!important;padding:16px 0!important;border-right:0!important;border-bottom:1px solid rgba(255,255,255,.08)!important;min-height:0!important}
  .heroTrustItem:nth-last-child(-n+2){border-bottom:0!important}
  .heroTrustItem:nth-child(even){padding-left:16px!important;border-left:1px solid rgba(255,255,255,.08)!important}
  .heroTrustIcon{display:grid!important;width:32px!important;height:32px!important;flex:0 0 32px!important}
  .heroTrustIcon svg{width:17px!important;height:17px!important}
  .heroTrustItem:nth-child(n+5){display:none!important}

  /* --- PEOPLE section on mobile: photo on top, text below (readable) --- */
  #menschen>.wrap{grid-template-columns:1fr!important;gap:34px!important}
  #menschen .peopleGrid{grid-template-columns:1fr!important;gap:18px!important;max-width:420px!important}
  #menschen .personCard{aspect-ratio:auto!important;min-height:0!important;background:#141516!important;display:flex!important;flex-direction:column!important}
  #menschen .personCard:before{display:none!important}
  #menschen .personShade{display:none!important}
  #menschen .personVisual{position:relative!important;inset:auto!important;width:100%!important;aspect-ratio:4/3!important;height:auto!important}
  #menschen .personVisual img{object-position:center 25%!important}
  #menschen .personInfo{position:relative!important;inset:auto!important;left:auto!important;right:auto!important;bottom:auto!important;z-index:1!important;padding:16px 18px 20px!important}
  #menschen .personRole{color:#8a8c8f!important;margin-bottom:6px!important}
  #menschen .personInfo h3{font-size:19px!important;margin:0 0 6px!important}
  #menschen .personInfo p{font-size:13px!important;color:#b8bbbd!important}
}

@media(max-width:560px){
  .hero .primary,.hero .secondaryHero{font-size:12px!important;padding:15px 18px!important}
  .heroTrustItem{display:flex!important}
  .heroTrustItem:nth-child(-n+4){display:flex!important}
  .heroTrustItem:nth-child(n+5){display:none!important}
  .heroTrustItem b{font-size:11px!important}
  .heroTrustItem span{font-size:9px!important}
}

/* --- buttons: identical flat look on every device (kill iOS "3D" chrome) --- */
button,input[type=submit],input[type=button],
.primary,.primaryAction,.secondaryHero,.navCta,.mobileMenuCta,.applySubmit,
.textCta,.cta button,.footerStatement button,.panelBtn,.circleBtn,.processCircle,.serviceCard{
  -webkit-appearance:none!important;appearance:none!important;
  -webkit-tap-highlight-color:transparent;
}
button,.primary,.primaryAction,.secondaryHero,.navCta,.mobileMenuCta,.applySubmit,
.cta button,.footerStatement button,.panelBtn{
  border-radius:0!important;text-shadow:none!important;box-shadow:none!important;
}
.applyForm select{
  -webkit-appearance:none!important;appearance:none!important;border-radius:0!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%235a6670' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;background-position:right 13px center!important;padding-right:34px!important;
}

/* --- Leistungen carousel: native swipe on mobile --- */
@media(max-width:820px){
  .trackWrap{
    overflow-x:auto!important;overflow-y:visible!important;-webkit-overflow-scrolling:touch;
    scroll-snap-type:x mandatory;scroll-padding-left:20px;
    margin:0!important;padding:0!important;scrollbar-width:none;-ms-overflow-style:none;
  }
  .trackWrap::-webkit-scrollbar{display:none!important;height:0!important}
  .track{
    transform:none!important;transition:none!important;
    padding-left:20px!important;padding-right:20px!important;
    touch-action:auto!important;cursor:default!important;
  }
  .track.is-dragging{transition:none!important}
  .serviceCard{scroll-snap-align:start!important;flex-basis:78vw!important;width:78vw!important;min-width:78vw!important;max-width:78vw!important}
}

/* ---- mobile refinements v2 ---- */
@media(max-width:900px){
  /* header: logo + hamburger tidy, vertically centred */
  header .wrap.nav,.siteHeader .wrap.nav{width:calc(100% - 40px)!important;padding:0!important}
  header .logoLink,.siteHeader .logoLink{min-width:0!important}

  /* no sticky hover on tel / mail links on touch */
  .footerContactMini a:hover,
  a[href^="tel:"]:hover,a[href^="mailto:"]:hover,
  .mobileContactItem:hover,.panelRow a:hover{
    color:inherit!important;text-decoration:none!important;transform:none!important;opacity:1!important
  }
  .footerContactMini a:hover{color:#fff!important}

  /* "Vorteilspunkte" become a normal content block, detached from the hero */
  .heroTrust{
    position:static!important;left:auto!important;right:auto!important;bottom:auto!important;
    background:#fff!important;color:#151617!important;margin:0!important;padding:46px 0 10px!important;
    border:0!important;border-top:0!important;
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
    -webkit-mask-image:none!important;mask-image:none!important
  }
  .heroTrust .wrap{width:calc(100% - 40px)!important;margin:0 auto!important;padding:0!important}
  .trustShell{grid-template-columns:1fr 1fr!important;gap:0 0!important;background:transparent!important}
  .heroTrustItem{
    display:flex!important;align-items:flex-start!important;gap:12px!important;
    padding:18px 0!important;min-height:0!important;
    border:0!important;border-bottom:1px solid var(--line)!important;color:#151617!important
  }
  .heroTrustItem:nth-child(odd){padding-right:16px!important}
  .heroTrustItem:nth-child(even){padding-left:18px!important;border-left:1px solid var(--line)!important}
  .heroTrustItem:nth-last-child(-n+2){border-bottom:0!important}
  .heroTrustIcon{display:grid!important;width:34px!important;height:34px!important;flex:0 0 34px!important;border:1px solid rgba(0,0,0,.22)!important;color:#151617!important}
  .heroTrustIcon svg{width:18px!important;height:18px!important;stroke:#151617!important;stroke-width:1.6!important}
  .heroTrustItem b{color:#151617!important;font-size:12px!important}
  .heroTrustItem span{color:#6b7075!important;font-size:10px!important}

  /* hero ends with the image + copy only */
  .heroInner{min-height:40vh!important}
}
@media(max-width:560px){
  .heroTrust{padding:38px 0 4px!important}
  .heroTrustItem{padding:15px 0!important}
}

/* ---- mobile refinements v3 ---- */
@media(max-width:900px){
  /* the dark gradient at the hero bottom must not tint the white content block */
  .hero:after{display:none!important}

  /* mobile menu: one uniform colour, no set-apart contact block -> airier */
  .mobileMenuContact{
    background:transparent!important;border-top:1px solid rgba(255,255,255,.08)!important;
    margin:34px -24px 0!important;margin-top:auto!important;
    padding:26px 24px calc(30px + env(safe-area-inset-bottom))!important
  }

  /* Vorteilspunkte block: clean white, no boxy dividers, more air */
  .heroTrust{background:#fff!important;padding:42px 0 20px!important}
  .heroTrust .wrap{width:calc(100% - 44px)!important}
  .trustShell{grid-template-columns:1fr 1fr!important;gap:28px 22px!important}
  .heroTrustItem,
  .heroTrustItem:nth-child(odd),
  .heroTrustItem:nth-child(even){
    padding:0!important;border:0!important;gap:12px!important;align-items:flex-start!important
  }
  .heroTrustItem b{margin-bottom:3px!important}
}
@media(max-width:560px){
  .trustShell{gap:24px 18px!important}
  .heroTrust{padding:34px 0 14px!important}
}

/* ---- mobile refinements v4: card arrow icon + description lines + sticky-hover ---- */
.cardArrow svg{width:16px!important;height:16px!important;display:block!important}
@media(max-width:900px){
  .services .serviceCard .cardBody p{
    opacity:1!important;transform:none!important;max-height:none!important;
    font-size:11.5px!important;line-height:1.42!important;margin:6px 46px 0 0!important;
    display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important
  }
  .services .serviceCard .cardArrow{width:34px!important;height:34px!important}
}
@media(hover:none){
  .services .serviceCard:hover img,.serviceCard:hover img{transform:none!important}
  .services .serviceCard:hover .cardArrow{background:transparent!important;border-color:rgba(255,255,255,.7)!important;color:#fff!important;transform:none!important}
  .serviceCard:hover .cardBody p{opacity:1!important;transform:none!important}
  .personCard:hover .personVisual{transform:none!important}
}

/* ---- v6: carousel = native horizontal scroll on EVERY device (mouse drag, trackpad two-finger,
        touch swipe). No JS transform anywhere -> no repaint flash of the card headings. ---- */
.trackWrap{
  overflow-x:auto!important;overflow-y:visible!important;-webkit-overflow-scrolling:touch;
  scroll-snap-type:x mandatory;scroll-padding-left:0!important;
  margin:0 calc(50% - 50vw) 0 0!important;padding:14px 0!important;   /* bleed to the right viewport edge */
  scrollbar-width:none!important;-ms-overflow-style:none!important;
  cursor:grab!important;
}
.trackWrap::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
.trackWrap.is-dragging{cursor:grabbing!important;scroll-snap-type:none!important}
.trackWrap.is-dragging .serviceCard{pointer-events:none!important}
.track{
  transform:none!important;transition:none!important;
  padding:0 clamp(24px,6vw,96px) 0 0!important;gap:18px!important;
  touch-action:pan-x pan-y!important;cursor:inherit!important;will-change:auto!important;
}
.track.is-dragging{transition:none!important}
.serviceCard{
  scroll-snap-align:start!important;
  flex:0 0 clamp(300px,30vw,412px)!important;width:clamp(300px,30vw,412px)!important;
  min-width:clamp(300px,30vw,412px)!important;max-width:clamp(300px,30vw,412px)!important;
  will-change:auto!important;
}
.serviceCard .cardBody h3{will-change:auto!important;transform:none!important;opacity:1!important;animation:none!important}
.serviceCard:active,.services .serviceCard:active{transform:none!important;scale:1!important}
.serviceCard img,.services .serviceCard img{transition:transform .7s var(--ease)!important}
/* tablet + phone: wider card so ~1.15 (phone) / ~2.3 (tablet) show, and description always visible (2 lines) */
@media(hover:none) and (pointer:coarse){
  .serviceCard{flex-basis:min(360px,42vw)!important;width:min(360px,42vw)!important;min-width:min(360px,42vw)!important;max-width:min(360px,42vw)!important}
  .services .serviceCard .cardBody p{
    opacity:1!important;transform:none!important;max-height:none!important;
    font-size:12px!important;line-height:1.45!important;margin:6px 46px 0 0!important;
    display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important
  }
}
@media(max-width:820px){
  .serviceCard{flex-basis:80vw!important;width:80vw!important;min-width:80vw!important;max-width:80vw!important}
}

/* ---- v9: contact icons — flat line SVGs instead of emoji glyphs (no red iOS phone) ---- */
.panelRow .icon,.contactRow .icon,.contactPanel .icon{
  background:#eef4f7!important;color:var(--signal)!important;font-weight:400!important;
}
.panelRow .icon svg,.contactRow .icon svg,.contactPanel .icon svg{width:17px!important;height:17px!important;display:block!important}
.mobileContactItem .mIcon svg{width:14px!important;height:14px!important;display:block!important}

/* ---- v8: unternehmen "Ansprechpartner" — full-bleed 50/50, Sebastian left / Sina right ---- */
#ansprechpartner .peopleGrid{grid-template-columns:1fr 1fr!important;justify-content:stretch!important;gap:4px!important;max-width:none!important}
#ansprechpartner .personCard{aspect-ratio:4/5!important;min-height:0!important;height:auto!important;position:relative!important;overflow:hidden!important;background:#18191a!important;border:0!important;border-radius:0!important}
#ansprechpartner .personCard:before{content:""!important;position:absolute!important;inset:0!important;background:linear-gradient(0deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.55) 34%,rgba(0,0,0,.12) 70%,rgba(0,0,0,0) 100%)!important;z-index:2!important}
#ansprechpartner .personInfo{text-shadow:0 1px 12px rgba(0,0,0,.35)!important}
#ansprechpartner .personShade{display:none!important}
#ansprechpartner .personVisual{position:absolute!important;inset:0!important;transition:transform .9s var(--ease)!important}
#ansprechpartner .personVisual img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 18%!important}
#ansprechpartner .personCard:hover .personVisual{transform:scale(1.02)!important}
#ansprechpartner .personInfo{position:absolute!important;z-index:4!important;left:34px!important;right:34px!important;bottom:32px!important;background:none!important;color:#fff!important}
#ansprechpartner .personRole{font-size:9px!important;letter-spacing:.16em!important;text-transform:uppercase!important;color:#adadad!important;margin-bottom:9px!important}
#ansprechpartner .personInfo h3{font-size:21px!important;letter-spacing:-.02em!important;line-height:1.15!important;margin:0 0 8px!important}
#ansprechpartner .personInfo p{font-size:12.5px!important;line-height:1.55!important;color:#cececf!important;max-width:none!important}
#ansprechpartner .personMeta{border-top:1px solid rgba(255,255,255,.24)!important;margin-top:16px!important;padding-top:12px!important;font-size:10px!important;color:#b3b3b3!important;display:flex!important;flex-direction:column!important;gap:3px!important}
#ansprechpartner .personMeta a{color:#fff!important}
@media(max-width:720px){
  /* mobile: photo on top, text in a dark block below — readable, not overlaid on the face */
  #ansprechpartner .peopleGrid{grid-template-columns:1fr!important;gap:16px!important;max-width:440px!important}
  #ansprechpartner .personCard{aspect-ratio:auto!important;background:#141516!important;display:flex!important;flex-direction:column!important}
  #ansprechpartner .personCard:before{display:none!important}
  #ansprechpartner .personVisual{position:relative!important;inset:auto!important;width:100%!important;aspect-ratio:4/3!important;height:auto!important;transform:none!important}
  #ansprechpartner .personVisual img{object-position:center 8%!important}
  #ansprechpartner .personInfo{position:relative!important;inset:auto!important;left:auto!important;right:auto!important;bottom:auto!important;z-index:1!important;padding:18px 20px 22px!important;text-shadow:none!important}
  #ansprechpartner .personRole{color:#8a8c8f!important}
  #ansprechpartner .personInfo h3{font-size:20px!important}
  #ansprechpartner .personInfo p{color:#b8bbbd!important;font-size:13px!important}
  #ansprechpartner .personMeta{border-top-color:rgba(255,255,255,.14)!important;color:#9a9c9f!important}
}

/* ---- v7: simplified "Partner & Netzwerk" — heading, then logos underneath ---- */
.partnerSection .partnerWrap{display:block!important}
.partnerSection .partnerLead{margin-bottom:26px!important}
.partnerSection .partnerLead h2{margin:0!important}
.partnerSection .partnerLogos{margin:0!important}
@media(max-width:820px){
  .partnerSection .partnerLead{margin-bottom:22px!important}
}

/* ---- v11: subpage footer now starts with .footTop (statement removed) -> needs its own top room ---- */
footer .wrap>.footTop:first-child{padding-top:84px!important;border-top:1px solid #26282a!important}
@media(max-width:820px){
  footer .wrap>.footTop:first-child{padding-top:48px!important}
  footer{padding-bottom:20px!important}
  .footBottom{margin-top:34px!important;flex-direction:column!important;gap:8px!important;text-align:left!important}
}

/* ---- v12: mobile spacing pass — tighter, even rhythm across all subpages ---- */
@media(max-width:820px){
  /* subpage hero: clear the 76px fixed header, no dead space below short copy */
  .subhero{padding:116px 0 46px!important}
  .subhero.subheroPhoto{min-height:0!important}
  .subhero .crumbs{margin-bottom:16px!important}
  .subhero h1{font-size:clamp(29px,7.4vw,40px)!important;margin-top:10px!important}
  .subhero p{font-size:15px!important;line-height:1.6!important;margin-top:14px!important;max-width:none!important}

  /* section rhythm */
  .section,.subSection,.contentSection{padding-top:66px!important;padding-bottom:66px!important}
  .services,.fleetStage,.processSection,.history,.peopleSection{padding-top:70px!important;padding-bottom:72px!important}
  .darkBand.section{padding-top:56px!important;padding-bottom:48px!important}
  /* dark imageSplit copy flowing into a dark band: kill the doubled dead space */
  .imageSplit+.darkBand.section{padding-top:12px!important}
  .imageSplit .copy{padding-bottom:34px!important}

  /* stacked two-column blocks: modest gap, no extra top offset */
  .twoCol,.darkGrid,.contactGrid{gap:30px!important}
  .introAside{padding-top:0!important}
  .facts{margin-top:26px!important}
  .fact{padding:20px 0 0!important}

  /* cards / lists */
  .cards{gap:12px!important;margin-top:30px!important}
  .card{padding:26px 24px!important;min-height:0!important}
  .checklist{margin-top:8px!important}

  /* image split: image then copy, tighter copy padding */
  .imageSplit .img{min-height:340px!important}
  .imageSplit .copy{padding:44px 24px 48px!important}
  .imageSplit .quote,.quote{font-size:23px!important;line-height:1.34!important;margin-bottom:20px!important}

  /* faq accordion */
  .faqList{margin-top:26px!important}

  /* contact box */
  .contactBox{padding:26px 22px!important}
  .contactGrid{gap:26px!important}

  /* footer */
  .footTop{gap:28px!important}
  .footBrand img{width:128px!important}
  .footBrand p{margin-top:14px!important;font-size:13px!important}
  .footerContactMini{margin-top:14px!important;gap:4px!important}
  .footTop a{margin:9px 0!important}
  .footTop h4{margin:0 0 14px!important}
}
@media(max-width:560px){
  .subhero{padding:108px 0 40px!important}
  .section,.subSection,.contentSection{padding-top:58px!important;padding-bottom:58px!important}
  .services,.fleetStage,.processSection,.history,.peopleSection{padding-top:62px!important;padding-bottom:64px!important}
}

/* ---- v10: karriere job accordion ("Wo Sie bei uns einsteigen können") ---- */
#bereiche .lead{color:rgba(255,255,255,.72)!important;max-width:640px!important;margin:16px 0 0!important}
.jobList{margin-top:42px!important;border-top:1px solid rgba(255,255,255,.16)!important}
.jobItem{border-bottom:1px solid rgba(255,255,255,.16)!important}
.jobItem>summary{list-style:none!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;padding:22px 0!important;color:#fff!important}
.jobItem>summary::-webkit-details-marker{display:none!important}
.jobItem>summary b{font-size:clamp(17px,2vw,20px)!important;font-weight:600!important;letter-spacing:-.01em!important}
.jobPlus{position:relative!important;width:16px!important;height:16px!important;flex:0 0 16px!important;color:var(--signal)!important}
.jobPlus:before,.jobPlus:after{content:""!important;position:absolute!important;background:currentColor!important;transition:transform .25s var(--ease),opacity .25s!important}
.jobPlus:before{left:0!important;top:7px!important;width:16px!important;height:2px!important}
.jobPlus:after{left:7px!important;top:0!important;width:2px!important;height:16px!important}
.jobItem[open]>summary .jobPlus:after{transform:rotate(90deg)!important;opacity:0!important}
.jobItem[open]>summary b{color:#fff!important}
.jobItemBody{padding:2px 0 30px!important;max-width:640px!important}
.jobItemBody p{font-size:14px!important;line-height:1.7!important;color:rgba(255,255,255,.74)!important;margin:0 0 16px!important}
.jobFacts{margin:0 0 22px!important;padding:0!important;list-style:none!important}
.jobFacts li{font-size:13px!important;line-height:1.5!important;color:rgba(255,255,255,.72)!important;padding:7px 0 7px 20px!important;position:relative!important}
.jobFacts li:before{content:""!important;position:absolute!important;left:0!important;top:13px!important;width:9px!important;height:1px!important;background:var(--signal)!important}
.jobApplyBtn{display:inline-flex!important;align-items:center!important;gap:10px!important;background:var(--signal)!important;color:#fff!important;padding:14px 22px!important;font-size:12px!important;font-weight:700!important;letter-spacing:.04em!important;text-transform:uppercase!important;-webkit-appearance:none!important;appearance:none!important}
.jobApplyBtn:hover{background:var(--signal-hover)!important}
.jobApplyBtn b{font-weight:700!important}

/* ---- v13: homepage hero headline — two clean lines on mobile, a touch more air ---- */
@media(max-width:820px){
  .hero h1{font-size:clamp(26px,7.4vw,36px)!important;line-height:1.14!important;letter-spacing:-.035em!important}
  .hero h1 span{display:block!important;white-space:nowrap!important}
  .heroCopy .heroLead,.hero .heroLead{margin-top:24px!important}
  .heroActions{margin-top:30px!important;gap:12px!important}
}

/* ---- v14: homepage footer statement — right-sized on mobile (was ~46px, filled the screen) ---- */
@media(max-width:820px){
  .footerStatement{min-height:0!important;padding:44px 0 40px!important;gap:22px!important}
  .footerStatement span{margin-bottom:12px!important}
  .footerStatement h2{font-size:clamp(27px,7.6vw,38px)!important;line-height:1.12!important;letter-spacing:-.02em!important}
  .footerStatement button{padding:16px 20px!important;font-size:12px!important}
  footer .wrap>.footerStatement:first-child{padding-top:52px!important}
}
@media(max-width:560px){
  .footerStatement h2{font-size:26px!important}
  .footerStatement{padding:38px 0 34px!important}
}

/* ---- v15: mobile partner logos 2x2 (was 4 tall stacked rows) ---- */
@media(max-width:820px){
  .partnerSection .partnerLogos{grid-template-columns:1fr 1fr!important}
  .partnerSection .partnerLogo{min-height:82px!important;border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important}
  .partnerSection .partnerLogo:nth-child(2n){border-right:0!important}
  .partnerSection .partnerLogo:nth-last-child(-n+2){border-bottom:0!important}
}

/* ---- v16: tighten homepage partner section on mobile ---- */
@media(max-width:820px){
  .partnerSection{padding:46px 0 50px!important}
  .partnerSection .partnerLead{margin-bottom:20px!important}
  .partnerSection .partnerLead h2{font-size:clamp(24px,6.4vw,30px)!important}
}

/* ---- v17: homepage intro block — kill the doubled gap (grid gap + introRight padding-top) on mobile ---- */
@media(max-width:820px){
  .introGrid{gap:24px!important}
  .introRight{padding-top:0!important}
  .fleetStageGrid,.historyTop{gap:30px!important}
}

/* ---- v18: longer role labels ("Geschäftsführender Gesellschafter") — tighter spacing, tidy wrap ---- */
#ansprechpartner .personRole,#menschen .personRole{
  letter-spacing:.09em!important;line-height:1.35!important;
}

/* ---- v19: hero — ONE h1, uniform line spacing (line-height only, no per-line margins) ---- */
.hero h1{font-size:clamp(36px,4.4vw,60px)!important;font-weight:560!important;letter-spacing:-.045em!important;line-height:1.14!important;margin:0!important;max-width:none!important}
.hero h1 span,.hero h1 br{display:inline!important;margin:0!important;padding:0!important;font:inherit!important;letter-spacing:inherit!important;line-height:inherit!important;color:inherit!important}
.heroMeta{margin:24px 0 32px!important;font-size:13.5px!important;letter-spacing:.02em!important;color:rgba(255,255,255,.72)!important;font-weight:400!important;line-height:1.6!important;max-width:30em!important}
@media(max-width:820px){
  .hero h1{font-size:clamp(27px,7.4vw,40px)!important;text-shadow:0 2px 20px rgba(8,10,12,.4)!important}
  /* vertical scrim so the full-width copy stays readable over the photo */
  .hero{
    background-image:
      linear-gradient(180deg,rgba(13,15,18,.42) 0%,rgba(13,15,18,.18) 22%,rgba(13,15,18,.3) 48%,rgba(13,15,18,.82) 100%),
      url('ast-hero-mobile.webp')!important;
    background-position:center 30%!important;
  }
  .heroMeta{font-size:12px!important;margin:16px 0 26px!important;color:rgba(255,255,255,.8)!important;text-shadow:0 1px 14px rgba(8,10,12,.45)!important}
}

/* ---- v20: Leistungen popup (image left, bullet points right) + card-as-button ---- */
button.serviceCard{text-align:left!important;font:inherit!important;border:0!important;color:#fff!important;-webkit-appearance:none!important;appearance:none!important}

.serviceModal{position:fixed!important;inset:0!important;z-index:200!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:26px!important}
.serviceModal[hidden]{display:none!important}
.serviceModalScrim{position:absolute!important;inset:0!important;background:rgba(8,10,12,.6)!important;-webkit-backdrop-filter:blur(3px)!important;backdrop-filter:blur(3px)!important;opacity:0!important;transition:opacity .28s var(--ease)!important}
.serviceModal.is-open .serviceModalScrim{opacity:1!important}
.serviceModalDialog{position:relative!important;z-index:1!important;display:grid!important;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;width:100%!important;max-width:1000px!important;max-height:88vh!important;background:#fff!important;overflow:hidden!important;box-shadow:0 40px 120px rgba(6,10,14,.45)!important;transform:translateY(16px) scale(.985)!important;opacity:0!important;transition:transform .3s var(--ease),opacity .3s!important}
.serviceModal.is-open .serviceModalDialog{transform:none!important;opacity:1!important}
.serviceModalMedia{margin:0!important;position:relative!important;background:#111214!important;min-height:340px!important}
.serviceModalMedia img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important}
.serviceModalBody{padding:46px 46px 48px!important;overflow:auto!important}
.serviceModalBody .kicker{margin-bottom:12px!important}
.serviceModalBody h2.display{font-size:clamp(25px,2.7vw,34px)!important;line-height:1.12!important;letter-spacing:-.02em!important;margin:0 0 24px!important}
.serviceModalClose{position:absolute!important;top:14px!important;right:14px!important;z-index:3!important;width:40px!important;height:40px!important;border:0!important;border-radius:0!important;background:rgba(255,255,255,.92)!important;color:#151617!important;font-size:22px!important;line-height:1!important;cursor:pointer!important;display:grid!important;place-items:center!important;-webkit-appearance:none!important;appearance:none!important}
.serviceModalClose:hover{background:#fff!important}
.smGroup+.smGroup{margin-top:26px!important}
.smGroup h3{font-size:12px!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:var(--signal)!important;font-weight:700!important;margin:0 0 8px!important}
#smContent ul{list-style:none!important;margin:0!important;padding:0!important}
#smContent li{position:relative!important;padding:10px 0 10px 22px!important;font-size:14px!important;line-height:1.5!important;color:#4d5b65!important;border-top:1px solid var(--line)!important}
#smContent li:first-child{border-top:0!important}
#smContent li:before{content:""!important;position:absolute!important;left:0!important;top:19px!important;width:11px!important;height:1px!important;background:var(--signal)!important}
@media(max-width:760px){
  .serviceModal{padding:0!important;align-items:stretch!important}
  .serviceModalDialog{grid-template-columns:1fr!important;max-width:none!important;max-height:100vh!important;height:100%!important;grid-template-rows:auto 1fr!important}
  .serviceModalMedia{min-height:0!important;height:34vh!important}
  .serviceModalMedia img{position:relative!important}
  .serviceModalBody{padding:26px 22px 34px!important}
  .serviceModalBody h2.display{font-size:24px!important;margin:0 0 18px!important}
}

/* ---- v21: partner logos = real brand marks, full colour, evenly sized ---- */
.partnerSection .partnerLogo{filter:none!important;opacity:1!important;background:#fff!important;padding:20px 14px!important}
.partnerSection .partnerLogo:hover{filter:none!important;opacity:1!important;background:#fafafa!important}
.partnerSection .partnerLogo{min-height:96px!important}
.partnerSection .partnerLogo img{width:auto!important;height:auto!important;max-height:44px!important;max-width:82%!important;object-fit:contain!important;display:block!important}
.partnerSection .partnerLogo[data-logo="johndeere"] img{max-height:56px!important}
.partnerSection .partnerLogo[data-logo="schneider"] img{max-height:26px!important;max-width:92%!important}
.partnerSection .partnerLogo[data-logo="dhl"] img{max-height:48px!important;max-width:90%!important}
.partnerSection .partnerLogo[data-logo="svg"] img{max-height:50px!important}
@media(max-width:820px){
  .partnerSection .partnerLogo{padding:22px 12px!important;min-height:78px!important}
  .partnerSection .partnerLogo[data-logo="schneider"] img{max-height:22px!important}
}
