
:root{--blue:#0a385c;--blue2:#0e4d7b;--ink:#15222c;--muted:#687782;--line:#dfe6ea;--soft:#f3f6f8;--white:#fff;--footer:#082d4a;--ease:cubic-bezier(.2,.75,.25,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;overflow-x:hidden}.wrap{width:min(1240px,calc(100% - 64px));margin:auto}a{text-decoration:none;color:inherit}button{font:inherit}
header{position:fixed;inset:0 0 auto 0;z-index:60;height:92px;transition:.42s var(--ease);color:white;border-bottom:1px solid rgba(255,255,255,.18)}header.scrolled{height:74px;background:rgba(255,255,255,.93);backdrop-filter:blur(18px);color:var(--ink);box-shadow:0 10px 35px rgba(13,37,53,.07);border-color:rgba(8,45,74,.08)}.nav{height:100%;display:flex;align-items:center;gap:34px}.brand{display:flex;align-items:center;gap:13px;font-weight:750;letter-spacing:-.02em}.brandmark{width:31px;height:31px;border:2px solid currentColor;display:inline-block;position:relative}.brandmark:after{content:"";position:absolute;width:10px;height:10px;background:currentColor;right:-5px;bottom:4px}.brand small{display:block;font-size:9px;letter-spacing:.2em;font-weight:600;opacity:.7;margin-top:3px}.menu{display:flex;gap:30px;margin-left:auto}.menu a{font-size:13px;font-weight:600;position:relative;padding:10px 0}.menu a:after{content:"";position:absolute;left:0;bottom:3px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}.menu a:hover:after{transform:scaleX(1);transform-origin:left}.navCta{border:1px solid rgba(255,255,255,.45);padding:12px 18px;font-size:12px;font-weight:700;transition:.3s}.scrolled .navCta{border-color:#b8c4cc}.navCta:hover{background:var(--blue);border-color:var(--blue);color:white}.mobile{display:none;background:none;border:0;color:inherit;font-size:24px}
.hero{height:min(880px,94vh);min-height:690px;position:relative;color:white;background:linear-gradient(90deg,rgba(4,24,38,.82) 0%,rgba(4,24,38,.5) 48%,rgba(4,24,38,.16) 100%),url('https://images.unsplash.com/photo-1601584115197-04ecc0da31d7?auto=format&fit=crop&w=2400&q=88') center 58%/cover no-repeat;display:flex;align-items:flex-end}.hero:after{content:"";position:absolute;inset:auto 0 0;height:220px;background:linear-gradient(to top,rgba(5,27,43,.5),transparent)}.heroInner{position:relative;z-index:2;padding-bottom:95px;max-width:920px}.eyebrow{font-size:12px;letter-spacing:.2em;text-transform:uppercase;display:flex;align-items:center;gap:12px;margin-bottom:24px;opacity:.82}.eyebrow:before{content:"";width:48px;height:1px;background:currentColor}.hero h1{font-size:clamp(54px,7vw,100px);line-height:.94;letter-spacing:-.055em;margin:0;max-width:1000px;font-weight:650}.hero h1 span{display:block;font-weight:350}.heroLead{font-size:19px;line-height:1.65;max-width:650px;margin:30px 0 34px;color:rgba(255,255,255,.87)}.heroActions{display:flex;align-items:center;gap:28px}.primary{background:white;color:var(--ink);padding:15px 20px;font-size:13px;font-weight:750;border:none;cursor:pointer;transition:.3s var(--ease)}.primary:hover{transform:translateY(-2px);background:#eaf1f6}.linkArrow{font-size:13px;font-weight:700;display:inline-flex;gap:12px;align-items:center}.linkArrow span{transition:transform .3s}.linkArrow:hover span{transform:translateX(5px)}
.trustBar{position:relative;z-index:3;margin-top:-1px;background:white;border-bottom:1px solid var(--line)}.trustGrid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr}.trustItem{padding:28px 30px;border-right:1px solid var(--line);min-height:112px;display:flex;flex-direction:column;justify-content:center}.trustItem:first-child{padding-left:0}.trustItem:last-child{border-right:0}.trustItem small{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:#84939d;margin-bottom:8px}.trustItem strong{font-size:18px;line-height:1.25;font-weight:650}.trustItem:first-child strong{font-size:22px;color:var(--blue)}
.section{padding:118px 0}.introGrid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.kicker{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);font-weight:750;margin-bottom:22px}.display{font-size:clamp(42px,5vw,72px);letter-spacing:-.05em;line-height:1.02;margin:0;font-weight:560}.lead{font-size:18px;line-height:1.72;color:#4b5a64;margin:0}.introRight{padding-top:48px}.signatureLine{height:1px;background:var(--line);margin:38px 0 24px}.microFacts{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.microFacts b{display:block;font-size:20px;color:var(--blue);margin-bottom:5px}.microFacts span{font-size:12px;color:#788791;line-height:1.5}
.services{background:#edf2f5;padding:112px 0 124px;overflow:hidden}.sectionHead{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:48px}.controls{display:flex;gap:8px}.circleBtn{width:48px;height:48px;border:1px solid #c4d0d7;background:transparent;border-radius:50%;cursor:pointer;font-size:19px;transition:.3s}.circleBtn:hover{background:var(--blue);color:white;border-color:var(--blue);transform:translateY(-2px)}.trackWrap{overflow:visible}.track{display:flex;gap:22px;transition:transform .7s var(--ease);will-change:transform}.serviceCard{position:relative;min-width:clamp(320px,34vw,470px);height:560px;overflow:hidden;background:#123;color:white;isolation:isolate}.serviceCard img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease),filter .5s}.serviceCard:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(4,24,38,.88) 0%,rgba(4,24,38,.14) 58%,rgba(4,24,38,.04) 100%);transition:.45s}.serviceCard:after{content:"";position:absolute;left:28px;right:28px;bottom:94px;height:1px;background:rgba(255,255,255,.36);z-index:2;transform-origin:left;transition:.5s}.serviceCard:hover img{transform:scale(1.055);filter:saturate(.9)}.serviceCard:hover:before{background:linear-gradient(to top,rgba(5,34,55,.94),rgba(5,34,55,.12) 66%,rgba(5,34,55,.04))}.serviceCard:hover:after{transform:scaleX(.22)}.cardNo{position:absolute;top:26px;left:28px;z-index:3;font-size:11px;letter-spacing:.2em;opacity:.82}.cardBody{position:absolute;z-index:3;left:28px;right:28px;bottom:28px}.cardBody h3{font-size:29px;line-height:1.05;letter-spacing:-.035em;margin:0 52px 14px 0;font-weight:580}.cardBody p{font-size:13px;line-height:1.65;color:rgba(255,255,255,.78);max-width:340px;margin:0;max-height:0;opacity:0;overflow:hidden;transform:translateY(8px);transition:.45s var(--ease)}.serviceCard:hover p{max-height:100px;opacity:1;transform:none;margin-top:12px}.cardArrow{position:absolute;right:0;bottom:2px;width:42px;height:42px;border:1px solid rgba(255,255,255,.5);border-radius:50%;display:grid;place-items:center;transition:.35s}.serviceCard:hover .cardArrow{background:white;color:var(--blue);transform:rotate(45deg)}.carouselMeta{display:flex;justify-content:space-between;align-items:center;margin-top:24px}.progress{height:1px;background:#c7d2d8;flex:1;margin-right:28px;position:relative}.progress i{position:absolute;inset:0 auto 0 0;width:25%;background:var(--blue);transition:width .6s var(--ease)}.carouselCount{font-size:11px;letter-spacing:.16em;color:#6b7a84}
.feature{display:grid;grid-template-columns:1.08fr .92fr;min-height:680px}.featureImage{background:url('https://images.unsplash.com/photo-1494412519320-aa613dfb7738?auto=format&fit=crop&w=1900&q=88') center/cover}.featureCopy{background:var(--blue);color:white;padding:90px 9vw 80px 80px;display:flex;flex-direction:column;justify-content:center}.featureCopy .kicker{color:#9ec0d6}.featureCopy .display{font-size:clamp(44px,5vw,66px)}.featureCopy p{font-size:16px;line-height:1.75;color:rgba(255,255,255,.77);max-width:560px}.featureList{margin-top:30px;border-top:1px solid rgba(255,255,255,.22)}.featureLine{display:flex;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.18);font-size:13px}.featureLine span:first-child{opacity:.58}.featureLine b{font-weight:600}
.processGrid{display:grid;grid-template-columns:.84fr 1.16fr;gap:90px}.processList{border-top:1px solid var(--line)}.step{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:22px;padding:27px 0;border-bottom:1px solid var(--line);transition:.3s}.step:hover{padding-left:12px;background:linear-gradient(90deg,#f7f9fa,transparent)}.step>span{font-size:11px;color:#8b99a2}.step h3{margin:0;font-size:20px;font-weight:610}.step p{margin:7px 0 0;color:#74818a;font-size:13px}.step i{font-style:normal;font-size:20px;color:#9daab2;transition:.3s}.step:hover i{color:var(--blue);transform:translateX(5px)}
.history{background:#f7f9fa;padding:100px 0}.historyTop{display:flex;justify-content:space-between;gap:60px;align-items:end}.historyTop p{max-width:520px;color:#66757e;line-height:1.7}.timeline{display:grid;grid-template-columns:repeat(4,1fr);margin-top:65px;border-top:1px solid #cfd9de}.time{padding:24px 24px 0 0;position:relative}.time:before{content:"";position:absolute;top:-5px;left:0;width:9px;height:9px;border-radius:50%;background:var(--blue)}.time strong{font-size:32px;color:var(--blue);display:block;margin-bottom:12px}.time span{font-size:13px;color:#6b7881;line-height:1.6}
.cta{background:#dbe6ed;padding:80px 0}.ctaInner{display:flex;justify-content:space-between;align-items:center;gap:40px}.cta h2{font-size:clamp(38px,5vw,64px);letter-spacing:-.045em;margin:0;max-width:800px;font-weight:560}.cta button{border:0;background:var(--blue);color:white;padding:17px 22px;font-weight:700;cursor:pointer;transition:.3s}.cta button:hover{background:#062d4c;transform:translateY(-2px)}
footer{background:var(--footer);color:white;padding:76px 0 28px}.footTop{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:60px}.footBrand p{max-width:360px;color:#9fb2bf;font-size:13px;line-height:1.7;margin-top:22px}.footTop h4{font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:#7ea1b8;margin:2px 0 20px}.footTop a{display:block;color:#d3dde3;font-size:13px;margin:11px 0;transition:.25s}.footTop a:hover{color:white;transform:translateX(3px)}.footBottom{border-top:1px solid rgba(255,255,255,.12);margin-top:60px;padding-top:22px;display:flex;justify-content:space-between;color:#7894a7;font-size:11px}
.overlay{position:fixed;inset:0;background:rgba(5,18,28,.42);z-index:80;opacity:0;pointer-events:none;transition:.35s}.overlay.open{opacity:1;pointer-events:auto}.contactPanel{position:fixed;z-index:90;top:0;right:0;height:100%;width:min(560px,100%);background:white;transform:translateX(100%);transition:.58s var(--ease);box-shadow:-20px 0 50px rgba(4,25,39,.18);display:grid;grid-template-rows:245px 1fr}.contactPanel.open{transform:none}.contactHero{background:linear-gradient(rgba(6,36,57,.28),rgba(6,36,57,.28)),url('https://images.unsplash.com/photo-1485575301924-6891ef935dcd?auto=format&fit=crop&w=1200&q=86') center/cover;position:relative}.close{position:absolute;right:22px;top:22px;width:42px;height:42px;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:rgba(0,0,0,.12);color:white;font-size:20px;cursor:pointer}.contactBody{padding:42px 46px;overflow:auto}.contactBody h2{font-size:42px;letter-spacing:-.045em;margin:0 0 12px}.contactBody>p{color:#677680;line-height:1.6}.contactRows{margin-top:30px;border-top:1px solid var(--line)}.contactRow{display:grid;grid-template-columns:42px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}.icon{width:36px;height:36px;border-radius:50%;background:#eef4f7;display:grid;place-items:center;color:var(--blue);font-weight:800}.contactRow small{display:block;text-transform:uppercase;font-size:9px;letter-spacing:.15em;color:#8b99a2;margin-bottom:4px}.contactRow b{font-size:15px}.panelBtn{display:block;background:var(--blue);color:white;text-align:center;padding:16px;margin-top:26px;font-size:13px;font-weight:700}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .75s var(--ease),transform .75s var(--ease)}.reveal.on{opacity:1;transform:none}
@media(max-width:900px){.wrap{width:min(100% - 36px,1240px)}.menu{display:none}.navCta{display:none}.mobile{display:block;margin-left:auto}.hero{min-height:720px}.hero h1{font-size:56px}.heroInner{padding-bottom:70px}.trustGrid{grid-template-columns:1fr 1fr}.trustItem{border-bottom:1px solid var(--line)}.introGrid,.processGrid{grid-template-columns:1fr;gap:45px}.introRight{padding-top:0}.feature{grid-template-columns:1fr}.featureImage{min-height:430px}.featureCopy{padding:65px 36px}.timeline{grid-template-columns:1fr 1fr;row-gap:35px}.footTop{grid-template-columns:1fr 1fr}.ctaInner{align-items:flex-start;flex-direction:column}.serviceCard{min-width:78vw;height:500px}}
@media(max-width:560px){header{height:76px}.hero h1{font-size:47px}.heroLead{font-size:16px}.heroActions{align-items:flex-start;flex-direction:column;gap:20px}.trustGrid{grid-template-columns:1fr}.trustItem{padding-left:0;border-right:0}.section{padding:86px 0}.microFacts{grid-template-columns:1fr}.sectionHead{align-items:flex-start;gap:30px;flex-direction:column}.serviceCard{min-width:86vw;height:470px}.historyTop{flex-direction:column;align-items:flex-start}.timeline{grid-template-columns:1fr}.footTop{grid-template-columns:1fr}.footBottom{gap:16px;flex-direction:column}.contactBody{padding:34px 24px}.contactBody h2{font-size:34px}}

/* ===== AST HERO V4 ===== */
header{height:96px;border-bottom:0;background:transparent}
header.scrolled{height:72px;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);box-shadow:0 10px 35px rgba(13,37,53,.08);border-bottom:1px solid rgba(8,45,74,.08)}
.nav{gap:30px}.logoLink{display:flex;align-items:center;min-width:205px;height:100%}.logoFull{display:block;width:176px;height:auto;transition:opacity .28s var(--ease),transform .35s var(--ease)}.logoCompact{display:none;width:104px;height:auto;transition:opacity .28s var(--ease),transform .35s var(--ease)}header.scrolled .logoFull{display:none}header.scrolled .logoCompact{display:block}.menu{gap:27px}.menu a{font-size:12px;letter-spacing:.015em;text-transform:uppercase;color:inherit}.navCta{background:rgba(7,35,55,.12);border:1px solid rgba(255,255,255,.7);padding:14px 22px;text-transform:uppercase;letter-spacing:.03em;color:inherit}.scrolled .navCta{background:transparent;border-color:#b6c4cd;color:var(--ink)}
.hero{height:100svh;min-height:760px;max-height:980px;align-items:center;background-image:linear-gradient(90deg,rgba(2,22,36,.46) 0%,rgba(2,22,36,.30) 24%,rgba(2,22,36,.12) 42%,rgba(2,22,36,.025) 58%,rgba(2,22,36,0) 72%),url('hero-ast-johndeere-motion.webp');background-position:center center;background-size:cover;background-repeat:no-repeat;overflow:hidden}
.hero:after{height:210px;background:linear-gradient(to top,rgba(2,21,35,.24),transparent)}
.heroInner{padding:104px 0 148px;max-width:none;margin-left:auto;margin-right:auto}.heroCopy{max-width:820px;margin-right:auto}.eyebrow{margin-bottom:30px;font-size:13px;letter-spacing:.08em;opacity:1;gap:18px}.eyebrow:before{display:none}.eyebrow:after{content:"";width:54px;height:1px;background:rgba(255,255,255,.82)}.hero h1{font-size:clamp(50px,4.15vw,68px);line-height:1.04;letter-spacing:-.045em;font-weight:670;max-width:860px;margin:0}.hero h1 span{display:block;font-weight:inherit;white-space:nowrap}.heroLead{font-size:20px;line-height:1.55;max-width:620px;margin:27px 0 32px;color:rgba(255,255,255,.92)}.heroActions{gap:16px}.hero .primary{background:#0870e3;color:#fff;padding:18px 25px;text-transform:uppercase;font-size:12px;letter-spacing:.025em;min-width:235px;display:flex;align-items:center;justify-content:space-between}.hero .primary:after{content:"→";font-size:20px;font-weight:400}.hero .primary:hover{background:#0b61bd;transform:translateY(-2px)}.hero .secondaryHero{border:1px solid rgba(255,255,255,.8);padding:17px 25px;min-width:205px;text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.025em;display:flex;align-items:center;justify-content:space-between;transition:.3s var(--ease)}.hero .secondaryHero:after{content:"→";font-size:20px;font-weight:400}.hero .secondaryHero:hover{background:#fff;color:var(--ink);transform:translateY(-2px)}
.heroTrust{position:absolute;z-index:5;left:0;right:0;bottom:30px}.heroTrust .trustShell{background:rgba(2,24,40,.88);backdrop-filter:blur(12px);display:grid;grid-template-columns:repeat(5,1fr);min-height:92px;border:1px solid rgba(255,255,255,.05)}.heroTrustItem{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:14px;padding:17px 22px;border-right:1px solid rgba(255,255,255,.18)}.heroTrustItem:last-child{border-right:0}.heroTrustIcon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(19,69,108,.58);font-size:19px;color:#fff}.heroTrustItem b{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.02em;margin-bottom:5px}.heroTrustItem span{display:block;font-size:10px;line-height:1.4;color:rgba(255,255,255,.72)}
.trustBar{display:none}
@media(max-width:1100px){.menu{gap:18px}.menu a:nth-child(5){display:none}.logoLink{min-width:165px}.logoFull{width:150px}.heroTrust .trustShell{grid-template-columns:repeat(3,1fr)}.heroTrustItem:nth-child(3){border-right:0}.heroTrustItem:nth-child(n+4){display:none}}
@media(max-width:900px){header{height:82px}.logoLink{min-width:auto}.logoFull{width:145px}.logoCompact{width:90px}.hero{min-height:760px;background-position:63% center}.heroInner{padding:104px 0 156px;max-width:none}.heroCopy{max-width:620px}.hero h1{font-size:clamp(46px,7.5vw,62px);max-width:630px}.hero h1 span{white-space:normal}.heroLead{font-size:18px}.heroTrust{bottom:18px}.heroTrust .trustShell{grid-template-columns:1fr 1fr}.heroTrustItem:nth-child(2){border-right:0}.heroTrustItem:nth-child(n+3){display:none}}
@media(max-width:560px){.hero{min-height:790px;background-position:68% center}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,20,33,.22),rgba(2,20,33,.04) 68%,transparent)}.heroInner{padding:110px 0 150px}.hero h1{font-size:45px;line-height:1.02}.heroLead{font-size:16px;max-width:90%}.heroActions{flex-direction:column;align-items:stretch;max-width:330px}.hero .primary,.hero .secondaryHero{min-width:0;width:100%}.heroTrust .trustShell{grid-template-columns:1fr}.heroTrustItem:nth-child(n+2){display:none}.heroTrustItem{border-right:0}.eyebrow{font-size:11px}.logoFull{width:130px}}



/* ===== AST FINAL UI / SPACING PASS ===== */
:root{--signal:#0870e3;--signal-hover:#075fbe}

/* consistent primary action language */
.navCta,
.hero .primary,
.cta button,
.panelBtn{
  background:var(--signal)!important;
  border-color:var(--signal)!important;
  color:#fff!important;
  box-shadow:none;
  transition:background .28s var(--ease),border-color .28s var(--ease),transform .28s var(--ease),box-shadow .28s var(--ease)
}
.navCta:hover,
.hero .primary:hover,
.cta button:hover,
.panelBtn:hover{
  background:var(--signal-hover)!important;
  border-color:var(--signal-hover)!important;
  color:#fff!important;
  transform:translateY(-2px)
}
header.scrolled .navCta{background:var(--signal)!important;border-color:var(--signal)!important;color:#fff!important}
.circleBtn{border-color:rgba(8,112,227,.48);color:var(--signal);background:#fff}
.circleBtn:hover{background:var(--signal);border-color:var(--signal);color:#fff}
.progress i{background:var(--signal)}

/* consistent editorial heading rhythm */
.section{padding:108px 0}
.section .kicker{margin-bottom:16px}
.display{line-height:1.055}
.display + .lead{margin-top:24px}
.sectionHead{margin-bottom:44px}
.introRight{padding-top:44px}
.historyTop p{margin:0 0 3px}
.featureCopy .kicker{margin-bottom:16px}
.featureCopy .display{margin-bottom:24px}
.featureCopy .display + p{margin-top:0}
.cta{padding:76px 0}

/* mobile navigation: hamburger now opens navigation, not contact */
.mobile{cursor:pointer}
@media(max-width:900px){
  header .menu{display:none;position:fixed;left:18px;right:18px;top:82px;margin:0;padding:18px 22px 22px;background:#fff;color:var(--ink);box-shadow:0 20px 60px rgba(4,31,50,.16);border:1px solid #e0e7eb;flex-direction:column;gap:0}
  header .menu.mobileOpen{display:flex}
  header .menu a{padding:14px 0;border-bottom:1px solid #e7edf0;font-size:13px}
  header .menu a:last-child{border-bottom:0;color:var(--signal)}
  .mobile{display:block;margin-left:auto}
  .section{padding:82px 0}
  .introRight{padding-top:0}
}
@media(max-width:560px){
  .section{padding:72px 0}
  .sectionHead{margin-bottom:34px}
  .display + .lead{margin-top:20px}
}


/* ===== AST premium mobile navigation v7 ===== */
.mobileMenuContact{display:none}
@media(max-width:900px){
  .mobileMenuContact{display:block}
  body.mobile-menu-open{overflow:hidden}
  header .nav{position:relative;z-index:132}
  header .logoLink{position:relative;z-index:132}
  header.mobileMenuOpen .logoFull{display:none!important}
  header.mobileMenuOpen .logoCompact{display:block!important;width:96px}
  header.mobileMenuOpen{color:var(--ink)!important;border-color:transparent!important}
  header .mobile{position:relative;z-index:132;width:44px;height:44px;display:grid;place-items:center;margin-left:auto;padding:0;border:1px solid rgba(255,255,255,.45);border-radius:50%;font-size:0;transition:.3s var(--ease)}
  header .mobile:before,header .mobile:after{content:"";position:absolute;width:18px;height:1.5px;background:currentColor;transition:.35s var(--ease)}
  header .mobile:before{transform:translateY(-4px)}
  header .mobile:after{transform:translateY(4px)}
  header.mobileMenuOpen .mobile{color:var(--ink);border-color:#d9e2e8}
  header.mobileMenuOpen .mobile:before{transform:rotate(45deg)}
  header.mobileMenuOpen .mobile:after{transform:rotate(-45deg)}

  header .menu{
    display:flex!important;position:fixed!important;inset:0!important;z-index:120!important;
    width:100%!important;height:100dvh!important;margin:0!important;padding:118px 24px 0!important;
    background:#fff!important;color:var(--ink)!important;border:0!important;box-shadow:none!important;
    flex-direction:column!important;gap:0!important;overflow-y:auto!important;overscroll-behavior:contain;
    transform:translateX(102%);opacity:1;visibility:hidden;pointer-events:none;
    transition:transform .52s var(--ease),visibility 0s linear .52s!important;
  }
  header .menu.mobileOpen{transform:translateX(0);visibility:visible;pointer-events:auto;transition:transform .52s var(--ease),visibility 0s!important}
  header .menu>a{display:flex!important;align-items:center;justify-content:space-between;min-height:62px;padding:0!important;border-bottom:1px solid #e5ebef!important;font-size:23px!important;line-height:1.15!important;letter-spacing:-.025em!important;text-transform:none!important;font-weight:560!important;color:var(--ink)!important}
  header .menu>a:after{content:"→"!important;position:static!important;width:auto!important;height:auto!important;background:none!important;transform:none!important;font-size:18px;font-weight:400;color:#9aabb6;transition:.25s!important}
  header .menu>a:hover:after{transform:translateX(4px)!important;color:var(--signal)!important}
  header .menu>a.active{color:var(--signal)!important}
  header .menu>a:last-of-type{border-bottom:0!important;color:var(--signal)!important}

  .mobileMenuContact{margin:28px -24px 0;padding:24px 24px max(24px,env(safe-area-inset-bottom));background:var(--footer);color:#fff;margin-top:auto}
  .mobileMenuContactLabel{display:flex;align-items:center;gap:11px;margin-bottom:17px;font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.16em;color:#8eafc4;font-weight:750}
  .mobileMenuContactLabel:before{content:"";display:block;width:25px;height:1px;background:var(--signal)}
  .mobileMenuContactGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}
  .mobileContactItem{display:flex;gap:10px;align-items:flex-start;color:#fff!important}
  .mobileContactItem .mIcon{width:31px;height:31px;border:1px solid rgba(255,255,255,.16);border-radius:50%;display:grid;place-items:center;flex:0 0 auto;color:#a9c6d8;font-size:13px}
  .mobileContactItem small{display:block;margin:1px 0 4px;font-size:8px;letter-spacing:.13em;text-transform:uppercase;color:#7999ad}
  .mobileContactItem b{display:block;font-size:12px;line-height:1.45;font-weight:560;color:#fff}
  .mobileMenuCta{display:flex!important;align-items:center;justify-content:space-between!important;margin-top:20px!important;padding:15px 17px!important;min-height:auto!important;border:0!important;background:var(--signal)!important;color:#fff!important;font-size:11px!important;letter-spacing:.04em!important;text-transform:uppercase!important;font-weight:750!important}
  .mobileMenuCta:after{content:"→"!important;color:#fff!important}
}
@media(max-width:520px){
  header .menu{padding-left:20px!important;padding-right:20px!important}
  header .menu>a{font-size:21px!important;min-height:58px}
  .mobileMenuContact{margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px}
  .mobileMenuContactGrid{grid-template-columns:1fr;gap:12px}
}



/* ===== Performance + motion accessibility v8 ===== */
img{max-width:100%;height:auto}
.section,.services,.feature,.history,.cta,footer{content-visibility:auto;contain-intrinsic-size:1px 760px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important}}
@media(max-width:900px){.section,.services,.feature,.history,.cta,footer{contain-intrinsic-size:1px 600px}}


/* ===== v9 people / contact-person section ===== */
.peopleSection{padding:104px 0;background:#fff;overflow:hidden}
.peopleIntro{display:grid;grid-template-columns:.82fr 1.18fr;gap:82px;align-items:end;margin-bottom:48px}
.peopleIntro .peopleCopy{max-width:650px;justify-self:end}
.peopleIntro .peopleCopy p{margin:0;color:#61707a;font-size:16px;line-height:1.75}
.peopleGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.personCard{position:relative;min-height:610px;overflow:hidden;background:#eaf0f4;isolation:isolate;transform:translateY(22px);opacity:0;transition:opacity .75s var(--ease),transform .75s var(--ease),box-shadow .45s var(--ease)}
.personCard.on{opacity:1;transform:none}
.personCard:nth-child(2){transition-delay:.12s}
.personVisual{position:absolute;inset:0;background:linear-gradient(145deg,#d7e3ea,#edf3f6);overflow:hidden}
.personVisual:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 60% 24%,rgba(255,255,255,.95),rgba(255,255,255,0) 30%),linear-gradient(180deg,transparent 38%,rgba(5,34,54,.16) 100%)}
.personVisual:after{content:"FOTO";position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);font-size:13px;letter-spacing:.28em;color:#90a1ac;font-weight:750}
.personCard.hasPhoto .personVisual:after{display:none}
.personCard img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.86) contrast(1.02);transition:transform 1s var(--ease),filter .6s var(--ease)}
.personShade{position:absolute;inset:auto 0 0;height:48%;background:linear-gradient(0deg,rgba(3,26,43,.94),rgba(3,26,43,.72) 44%,transparent);z-index:1;pointer-events:none}
.personInfo{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:34px 36px 32px;color:#fff;transition:transform .45s var(--ease)}
.personRole{display:flex;align-items:center;gap:10px;text-transform:uppercase;font-size:10px;letter-spacing:.16em;color:#9fc0d5;font-weight:750;margin-bottom:12px}
.personRole:before{content:"";width:28px;height:1px;background:var(--signal)}
.personInfo h3{font-size:31px;line-height:1.05;letter-spacing:-.035em;margin:0 0 8px;font-weight:590}
.personInfo p{font-size:13px;line-height:1.6;color:rgba(255,255,255,.72);margin:0;max-width:440px}
.personMeta{display:flex;gap:10px 22px;flex-wrap:wrap;margin-top:18px;padding-top:17px;border-top:1px solid rgba(255,255,255,.18);font-size:11px;color:#d9e4eb;opacity:.88}
.personMeta a{color:inherit}
.personCard:hover{box-shadow:0 28px 70px rgba(8,45,74,.14)}
.personCard:hover img{transform:scale(1.035);filter:saturate(1) contrast(1.03)}
.personCard:hover .personInfo{transform:translateY(-4px)}
@media(max-width:900px){.peopleIntro{grid-template-columns:1fr;gap:24px;align-items:start}.peopleIntro .peopleCopy{justify-self:start;max-width:700px}.personCard{min-height:520px}}
@media(max-width:680px){.peopleSection{padding:76px 0}.peopleGrid{grid-template-columns:1fr;gap:16px}.personCard{min-height:470px}.personInfo{padding:27px 24px 25px}.personInfo h3{font-size:27px}}

/* Authentic A. AST GmbH logo from supplied PDF */
.logoLink{min-width:220px}
.logoFull{width:190px!important;height:auto!important;object-fit:contain}
.logoCompact{width:104px!important;height:auto!important;object-fit:contain}
.footBrand img{width:190px!important;height:auto!important;max-width:100%;object-fit:contain}
@media(max-width:1100px){.logoLink{min-width:185px}.logoFull{width:160px!important}}
@media(max-width:900px){.logoLink{min-width:auto}.logoFull{width:148px!important}.logoCompact{width:96px!important}}
@media(max-width:560px){.logoFull{width:138px!important}.logoCompact{width:92px!important}}


/* ===== v11 / AST premium design system ===== */
:root{--navy:#071f33;--navy-2:#0a2d49;--steel:#a9bac5;--ice:#edf3f7;--signal:#0870e3;--signal-hover:#0662c8;--radius:0px;--shadow:0 30px 80px rgba(7,31,51,.12)}
body{font-feature-settings:"kern" 1,"liga" 1;text-rendering:optimizeLegibility}
.wrap{width:min(1280px,calc(100% - 80px))}
@media(max-width:900px){.wrap{width:min(100% - 38px,1280px)}}
header .nav{gap:32px}.menu a{letter-spacing:.025em}.navCta{box-shadow:0 8px 24px rgba(8,112,227,.18)}

/* Hero: image remains brilliant, darkness only behind copy */
.hero{background-image:linear-gradient(90deg,rgba(3,24,39,.34) 0%,rgba(3,24,39,.20) 24%,rgba(3,24,39,.05) 42%,rgba(3,24,39,0) 58%),url('hero-ast-johndeere-motion.webp');background-position:center center}
.hero:before{content:"";position:absolute;left:0;top:0;bottom:0;width:min(58vw,920px);background:radial-gradient(ellipse at 10% 52%,rgba(2,20,33,.30),transparent 68%);pointer-events:none}
.heroCopy{position:relative}.heroCopy:before{content:"";position:absolute;left:-28px;top:5px;width:2px;height:0;background:var(--signal);transition:height 1s .25s var(--ease)}
body.ready .heroCopy:before{height:72px}.heroTelemetry{position:absolute;z-index:4;right:40px;bottom:150px;writing-mode:vertical-rl;transform:rotate(180deg);font-size:9px;letter-spacing:.28em;color:rgba(255,255,255,.55);text-transform:uppercase}.heroTelemetry:before{content:"";display:inline-block;width:1px;height:42px;background:rgba(255,255,255,.35);margin:0 auto 14px}
.hero h1 span:first-child{font-weight:670}.hero .secondaryHero{backdrop-filter:blur(5px);background:rgba(4,25,40,.10)}
.heroTrust .trustShell{backdrop-filter:blur(16px);box-shadow:0 18px 70px rgba(1,16,28,.17)}

/* recurring route/technical identity */
.kicker{display:flex;align-items:center;gap:12px}.kicker:before{content:"";width:26px;height:1px;background:var(--signal)}
.display{max-width:900px}.section{position:relative}.section:has(.introGrid):after{content:"AST  /  1946";position:absolute;right:2.2vw;top:50%;transform:rotate(90deg);transform-origin:right top;font-size:9px;letter-spacing:.24em;color:#a9b6bf}
.confidenceStrip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.confidenceInner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:40px}.confidenceLabel{font-size:10px;text-transform:uppercase;letter-spacing:.17em;color:#85949e;font-weight:720}.confidenceWords{display:flex;align-items:center;gap:20px;flex-wrap:wrap;justify-content:flex-end}.confidenceWords span{font-size:13px;font-weight:650;color:#394954}.confidenceWords i{width:3px;height:3px;border-radius:50%;background:var(--signal)}

/* Service cards: more editorial, less template-like */
.services{background:#eef3f6}.serviceCard{box-shadow:0 18px 50px rgba(7,31,51,.08)}.serviceCard:after{background:rgba(255,255,255,.58)}.cardNo{display:flex;align-items:center;gap:10px}.cardNo:before{content:"";width:22px;height:1px;background:var(--signal)}.cardArrow{border-radius:0;border-color:rgba(255,255,255,.6)}.serviceCard:hover .cardArrow{background:var(--signal);border-color:var(--signal);color:#fff;transform:translate(3px,-3px)}

/* Premium fleet stage */
.fleetStage{background:var(--navy);color:#fff;padding:124px 0;overflow:hidden;position:relative}.fleetStage:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to right,transparent,#000 35%,#000);pointer-events:none}.fleetStageGrid{display:grid;grid-template-columns:.75fr 1.25fr;gap:78px;align-items:center}.fleetEditorial{max-width:500px}.fleetEditorial .kicker{color:#9bc0d7}.fleetEditorial h2{font-size:clamp(44px,4.8vw,72px);line-height:1.01;letter-spacing:-.05em;margin:0;font-weight:570}.fleetEditorial p{font-size:15px;line-height:1.78;color:#aebfca;margin:28px 0 34px}.textCta{display:inline-flex;align-items:center;gap:18px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:720}.textCta span{width:38px;height:38px;border:1px solid rgba(255,255,255,.28);display:grid;place-items:center;transition:.35s}.textCta:hover span{background:var(--signal);border-color:var(--signal);transform:translate(4px,-4px)}.fleetVisual{position:relative;min-height:580px;background:#0c3555;overflow:hidden;box-shadow:0 32px 90px rgba(0,0,0,.22)}.fleetPicture{position:absolute;inset:0;background:url('hero-ast-johndeere-motion.webp') 65% center/cover no-repeat;transition:transform 1.5s var(--ease)}.fleetVisual:hover .fleetPicture{transform:scale(1.025)}.fleetVisual:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,22,36,.70),transparent 52%)}.fleetSpec{position:absolute;z-index:2;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(3,1fr);background:rgba(4,28,45,.74);backdrop-filter:blur(14px);border-top:1px solid rgba(255,255,255,.16)}.fleetSpec>div{padding:22px 24px;border-right:1px solid rgba(255,255,255,.14)}.fleetSpec>div:last-child{border-right:0}.fleetSpec small{display:block;color:#89a7b9;font-size:9px;text-transform:uppercase;letter-spacing:.14em;margin-bottom:6px}.fleetSpec strong{font-size:14px;font-weight:600}.fleetCrosshair{position:absolute;right:28px;top:28px;width:44px;height:44px;border:1px solid rgba(255,255,255,.34);z-index:3}.fleetCrosshair:before,.fleetCrosshair:after{content:"";position:absolute;background:rgba(255,255,255,.34)}.fleetCrosshair:before{width:64px;height:1px;left:-10px;top:21px}.fleetCrosshair:after{height:64px;width:1px;top:-10px;left:21px}

/* History becomes an animated brand story */
.history{background:#f6f9fb;overflow:hidden}.history .wrap{position:relative}.historyRail{height:2px;background:#dbe4e9;margin:56px 0 -1px;position:relative;overflow:hidden}.historyRail span{position:absolute;inset:0 auto 0 0;width:0;background:var(--signal);transition:width 1.8s var(--ease)}.history.on .historyRail span,.history .reveal.on .historyRail span{width:100%}.timeline{margin-top:0;border-top:0}.time{padding-top:34px}.time:before{top:-5px;background:#fff;border:2px solid var(--signal);width:10px;height:10px}.time strong{font-size:42px;letter-spacing:-.05em}

/* Route graphic */
.routeSection{background:#fff;padding:118px 0}.routeGrid{display:grid;grid-template-columns:.78fr 1.22fr;gap:90px;align-items:center}.routeCopy h2{font-size:clamp(44px,5vw,70px);line-height:1.02;letter-spacing:-.05em;margin:0;font-weight:570}.routeCopy p{font-size:16px;line-height:1.75;color:#62717b;max-width:550px;margin:27px 0 34px}.primaryAction{border:0;background:var(--signal);color:#fff;padding:17px 21px;display:inline-flex;align-items:center;gap:28px;font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:.3s}.primaryAction:hover{background:var(--signal-hover);transform:translateY(-2px)}.routeMap{height:430px;background:var(--ice);position:relative;overflow:hidden;border:1px solid #dde7ed}.routeMap:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#d8e4eb 1px,transparent 1px),linear-gradient(90deg,#d8e4eb 1px,transparent 1px);background-size:38px 38px;opacity:.55}.routeMap svg{position:absolute;inset:0;width:100%;height:100%}.routePath{fill:none;stroke-width:2.3}.routePath.base{stroke:#b7c7d1}.routePath.active{stroke:var(--signal);stroke-dasharray:900;stroke-dashoffset:900;transition:stroke-dashoffset 2s .2s var(--ease)}.routeGraphic.on .routePath.active{stroke-dashoffset:0}.routeDot{position:absolute;width:9px;height:9px;border:2px solid var(--signal);background:#fff;border-radius:50%;z-index:3;box-shadow:0 0 0 6px rgba(8,112,227,.10)}.routeDot.a{left:12%;top:72%}.routeDot.b{left:47%;top:46%}.routeDot.c{left:68%;top:31%}.routeDot.d{left:87%;top:22%}.routeLegend{position:absolute;left:26px;right:26px;bottom:22px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#667985;font-weight:750}

/* CTA and people */
.cta{background:var(--signal);color:#fff}.cta h2{color:#fff}.cta button{background:#fff!important;color:var(--navy)!important;border:1px solid #fff!important}.cta button:hover{background:var(--navy)!important;color:#fff!important;border-color:var(--navy)!important}.peopleSection{background:#f8fafb}.personCard{border:1px solid #e0e8ed}.personVisual:after{content:"PORTRAIT EINSETZEN";letter-spacing:.18em}.personCard:before{content:"";position:absolute;inset:16px;z-index:4;border:1px solid rgba(255,255,255,.22);pointer-events:none;opacity:0;transition:.4s}.personCard:hover:before{opacity:1}

/* Large corporate footer */
footer{padding-top:0}.footerStatement{min-height:330px;display:flex;align-items:center;justify-content:space-between;gap:60px;border-bottom:1px solid rgba(255,255,255,.14);margin-bottom:66px}.footerStatement span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:#7da3bb;margin-bottom:20px}.footerStatement h2{font-size:clamp(46px,5vw,76px);line-height:.98;letter-spacing:-.05em;margin:0;font-weight:530}.footerStatement button{background:var(--signal);color:#fff;border:0;padding:18px 22px;display:flex;align-items:center;gap:28px;text-transform:uppercase;font-size:11px;letter-spacing:.04em;font-weight:750;cursor:pointer;transition:.3s}.footerStatement button:hover{transform:translateY(-3px);background:#0b62bd}.footerStatement button b{font-size:20px;font-weight:400}.footTop{padding-bottom:8px}.footTop h4{color:#7fa6bf}.footBottom{margin-top:52px}

/* Refined motion */
.reveal{transition-duration:.9s}.serviceCard,.card,.step,.circleBtn,.navCta,.primaryAction,.footerStatement button{will-change:transform}.serviceCard:active,.circleBtn:active,.navCta:active,.primaryAction:active{transform:scale(.985)}

@media(max-width:1020px){.fleetStageGrid,.routeGrid{grid-template-columns:1fr;gap:48px}.fleetEditorial{max-width:760px}.fleetVisual{min-height:520px}.footerStatement{align-items:flex-start;flex-direction:column;justify-content:center}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.heroTelemetry{display:none}.confidenceInner{align-items:flex-start;flex-direction:column;padding:24px 0;gap:18px}.confidenceWords{justify-content:flex-start;gap:14px}.fleetStage,.routeSection{padding:82px 0}.fleetVisual{min-height:450px}.fleetSpec{grid-template-columns:1fr}.fleetSpec>div{padding:14px 18px;border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.fleetSpec>div:last-child{border-bottom:0}.routeMap{height:350px}.footerStatement{min-height:360px;margin-bottom:50px}.footerStatement h2{font-size:48px}.footerStatement button{width:100%;justify-content:space-between}}
@media(max-width:560px){.hero h1 span{white-space:normal}.hero h1{font-size:42px}.fleetEditorial h2,.routeCopy h2{font-size:42px}.fleetVisual{min-height:410px}.routeMap{height:300px}.confidenceWords i{display:none}.confidenceWords{column-gap:16px;row-gap:9px}}

/* v12 refinements */
.heroPartner{margin-top:26px;display:flex;align-items:center;gap:18px;min-height:44px;position:relative;z-index:4}.heroPartner span{font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:rgba(255,255,255,.72);font-weight:700}.heroPartner img{height:42px;width:auto;max-width:190px;object-fit:contain;filter:drop-shadow(0 4px 16px rgba(0,0,0,.15))}
.featureCopy{background:#082a45!important;position:relative;overflow:hidden}.featureCopy:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(90deg,#000,transparent 84%);pointer-events:none}.featureCopy>*{position:relative;z-index:1}.featureCopy .kicker{color:#6fb5ff}.featureLine{border-bottom-color:rgba(255,255,255,.13)}.featureList{border-top-color:rgba(255,255,255,.16)}
.processSection{padding:118px 0 126px;background:#fff;overflow:hidden}.processIntro{max-width:820px;margin-bottom:62px}.processIntro .lead{margin-top:24px;max-width:690px}.processCircles{display:grid;grid-template-columns:repeat(4,1fr);gap:34px}.processCircle{text-align:center;position:relative;padding:4px 10px 0}.circleProgress{--p:0deg;width:152px;height:152px;margin:0 auto 28px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--signal) var(--p),#e5edf3 0);position:relative;transition:--p 1.2s cubic-bezier(.2,.75,.2,1);transition-delay:var(--delay)}.circleProgress:before{content:"";position:absolute;inset:10px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #dce5eb}.circleProgress span{position:relative;z-index:1;font-size:22px;font-weight:720;color:var(--ink);letter-spacing:-.03em}.processCircle h3{font-size:19px;margin:0 0 10px;letter-spacing:-.02em}.processCircle p{margin:0 auto;color:#75838d;font-size:13px;line-height:1.65;max-width:240px}.processCircles.is-active .circleProgress{--p:360deg}.processCircle:after{content:"";position:absolute;top:79px;left:calc(50% + 88px);width:calc(100% - 142px);height:1px;background:linear-gradient(90deg,#cbd7df,transparent)}.processCircle:last-child:after{display:none}
@property --p{syntax:'<angle>';inherits:false;initial-value:0deg}
@media(max-width:900px){.processCircles{grid-template-columns:1fr 1fr;row-gap:54px}.processCircle:after{display:none}.heroPartner{margin-top:22px}.heroPartner img{height:38px}}
@media(max-width:560px){.processSection{padding:86px 0}.processCircles{grid-template-columns:1fr;gap:46px}.circleProgress{width:132px;height:132px}.heroPartner{gap:12px;flex-wrap:wrap}.heroPartner img{height:34px}}

/* v13: sharp service photography + scan truck signature section */
.serviceCard img{image-rendering:auto;backface-visibility:hidden;transform:translateZ(0);filter:none!important}
.serviceCard:hover img{transform:scale(1.045) translateZ(0);filter:none!important}
.scanTechSection{position:relative;background:#061f35;color:#fff;padding:112px 0;overflow:hidden}
.scanTechSection:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(77,150,210,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(77,150,210,.055) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.88) 65%,transparent 100%);pointer-events:none}
.scanTechGrid{position:relative;z-index:1;display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:center}
.scanTechCopy{max-width:500px}.scanTechCopy .kicker{color:#67b4ff}.scanTechCopy h2{font-size:clamp(46px,5.1vw,76px);line-height:.98;letter-spacing:-.052em;margin:0;font-weight:560}.scanTechCopy p{font-size:15px;line-height:1.76;color:#abc0cf;margin:28px 0 30px}.scanFacts{border-top:1px solid rgba(255,255,255,.14);margin-bottom:32px}.scanFacts>div{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:center;border-bottom:1px solid rgba(255,255,255,.11);padding:14px 0}.scanFacts span{font-size:10px;letter-spacing:.14em;color:#68b5ff}.scanFacts b{font-size:13px;font-weight:600;color:#eaf5fc}.scanTechVisual{position:relative;min-height:520px;overflow:hidden;background:#071c30;border:1px solid rgba(111,185,255,.16);box-shadow:0 34px 80px rgba(0,0,0,.28)}.scanTechVisual:before{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(6,31,53,.38),transparent 30%,transparent 75%,rgba(6,31,53,.22));pointer-events:none}.scanTechVisual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 1.2s var(--ease)}.scanTechVisual:hover img{transform:scale(1.025)}.scanSweep{position:absolute;z-index:3;top:-20%;bottom:-20%;width:2px;left:-8%;background:linear-gradient(transparent,#48b6ff 20%,#8ed7ff 50%,#48b6ff 80%,transparent);box-shadow:0 0 18px #29a7ff,0 0 54px rgba(41,167,255,.45);opacity:.78;transform:rotate(7deg);animation:scanSweep 5.2s ease-in-out infinite}.scanLabel{position:absolute;z-index:4;padding:8px 11px;border:1px solid rgba(109,190,255,.36);background:rgba(4,28,47,.72);backdrop-filter:blur(8px);font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:#bfe3ff}.scanLabel:after{content:"";position:absolute;height:1px;background:#4faeff;opacity:.7}.labelA{left:7%;top:18%}.labelA:after{width:90px;left:100%;top:50%}.labelB{right:6%;top:29%}.labelB:after{width:72px;right:100%;top:50%}.labelC{right:8%;bottom:18%}.labelC:after{width:110px;right:100%;top:50%}@keyframes scanSweep{0%,10%{left:-8%;opacity:0}22%{opacity:.85}72%{opacity:.85}90%,100%{left:108%;opacity:0}}
@media(max-width:980px){.scanTechGrid{grid-template-columns:1fr;gap:46px}.scanTechCopy{max-width:760px}.scanTechVisual{min-height:500px}}
@media(max-width:620px){.scanTechSection{padding:82px 0}.scanTechCopy h2{font-size:44px}.scanTechVisual{min-height:360px}.scanLabel{display:none}.scanFacts>div{grid-template-columns:34px 1fr}}
@media(prefers-reduced-motion:reduce){.scanSweep{animation:none;left:50%;opacity:.4}.scanTechVisual img{transition:none}}

/* v14 — crisp service imagery + collision-safe card typography */
.serviceCard img{
  object-position:center center;
  transform:none !important;
  filter:none;
  image-rendering:auto;
  backface-visibility:hidden;
}
.serviceCard:hover img{
  transform:none !important;
  filter:contrast(1.025) saturate(.98);
}
/* The separator belongs to the content block, not to a fixed card position. */
.serviceCard:after{display:none !important;}
.cardBody{padding-top:20px;}
.cardBody:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background:rgba(255,255,255,.58);
  transform-origin:left center;
  transition:transform .45s var(--ease),opacity .45s var(--ease);
  opacity:.92;
}
.serviceCard:hover .cardBody:before{transform:scaleX(.24);}
.cardBody h3{
  position:relative;
  margin-top:18px;
  margin-bottom:10px;
  text-wrap:balance;
}
.cardBody p{margin-top:0;}
.serviceCard:hover p{margin-top:10px;}
@media (min-resolution: 1.5dppx){
  .serviceCard img{transform:translateZ(0) !important;}
  .serviceCard:hover img{transform:translateZ(0) !important;}
}

/* v15 — native Retina service cards. No fake portrait upscaling. */
.services .track{
  gap:18px;
}
.services .serviceCard{
  flex:0 0 330px;
  min-width:330px;
  width:330px;
  height:470px;
}
.services .serviceCard img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  transform:none !important;
  filter:none !important;
  image-rendering:auto;
}
.services .serviceCard:hover img{
  transform:none !important;
  filter:none !important;
}
/* keep content clear of the separator at all times */
.services .cardBody{
  left:24px;
  right:24px;
  bottom:24px;
  padding-top:18px;
}
.services .cardBody:before{
  top:0;
}
.services .cardBody h3{
  font-size:24px;
  line-height:1.08;
  margin:16px 48px 9px 0;
}
.services .cardBody p{
  font-size:12px;
  line-height:1.55;
  max-width:255px;
}
.services .cardNo{
  top:22px;
  left:24px;
}
.services .cardArrow{
  width:38px;
  height:38px;
}
@media (max-width:900px){
  .services .serviceCard{
    flex-basis:min(360px,86vw);
    width:min(360px,86vw);
    min-width:min(360px,86vw);
    height:min(500px,122vw);
  }
}
@media (max-width:560px){
  .services .serviceCard{
    flex-basis:86vw;
    width:86vw;
    min-width:86vw;
    height:122vw;
    max-height:500px;
  }
}
