/* Tema "otoyol": Türk karayolu levhaları — asfalt, otoyol yeşili ve devlet yolu mavisi levhalar, beyaz yuvarlak çerçeveler, yansıtıcı parıltı; üst geçit portalı, değişken mesaj panosu, şeritlerde kamyon, çıkış levhaları, kilometre taşları */
:root{
  --asph:#2a2f34;--asph-2:#343a40;--asph-3:#22272b;
  --g:#00703c;--b:#0055a5;--y:#f2c230;--amber:#ffb400;
  --bg:#eef1ef;--ink:#1b2125;--ink-2:#4a545b;--line:#cfd6d2;--steel:#8d969c;
  --f-head:"Overpass","Public Sans",system-ui,sans-serif;--f-body:"Public Sans",system-ui,sans-serif;
  --tex:radial-gradient(rgba(255,255,255,.045) 1px,transparent 1.5px) 0 0/5px 5px;
}
::selection{background:var(--y);color:var(--ink)}
body{background:var(--bg)}
.progress{background:var(--y);height:4px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:3px solid var(--b);outline-offset:3px}
.top :focus-visible,.hero :focus-visible,.work :focus-visible,.foot :focus-visible,.quote :focus-visible,.final-sign :focus-visible,.mbar :focus-visible{outline-color:var(--y)}

/* Levha: zemin rengi, içte beyaz yuvarlak kenar, yansıtıcı yüzey ve geçen far ışığı parıltısı */
.sign{--c:var(--g);position:relative;color:#fff;border-radius:12px;background-color:var(--c);
  background-image:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.3) 48%,transparent 58%),linear-gradient(168deg,rgba(255,255,255,.12),transparent 46%);
  background-size:300% 100%,100% 100%;background-position:100% 0,0 0;background-repeat:no-repeat;
  box-shadow:inset 0 0 0 4px var(--c),inset 0 0 0 7px #fff}
.sign.green{--c:var(--g)}
.sign.blue{--c:var(--b)}
@keyframes sheen{from{background-position:100% 0,0 0}to{background-position:0% 0,0 0}}

/* Butonlar */
.btn{border-radius:10px;font-family:var(--f-head);font-weight:800;letter-spacing:.01em}
.btn-main{background:var(--y);color:var(--ink)}
.btn-main:hover,.btn-wa:hover,.btn-light:hover{transform:translateY(-3px)}
.btn-light{background:#fff;color:var(--ink)}

/* Üst menü: ana sayfada asfaltın üstünde şeffaf, kayınca koyu asfalt şerit */
.top{color:#fff}
.top::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:repeating-linear-gradient(90deg,#fff 0 28px,transparent 28px 56px);opacity:0;transition:opacity .35s}
.top.scrolled{background:rgba(34,39,43,.97);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 12px 30px -18px rgba(0,0,0,.6)}
.top.scrolled::after{opacity:.55}
.logo{font-family:var(--f-head);font-weight:900;letter-spacing:.01em;color:#fff}
.logo-mark{border-radius:8px;background:var(--g);color:#fff;box-shadow:inset 0 0 0 2px var(--g),inset 0 0 0 4px #fff}
.logo-mark svg{width:20px;height:20px}
.foot .logo-mark{background:var(--g)}
.nav a.link{position:relative;color:#fff;font-family:var(--f-head);font-weight:700}
.nav a.link::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:3px;background:var(--y);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.nav a.link:hover::after,.nav a.link[aria-current]::after{transform:none}
.top .btn-call{background:var(--y);color:var(--ink);padding:11px 18px;font-size:.92rem;border-radius:8px}
/* Numara dar masaüstünde de görünsün: menü sıkışır, telefon düğmesi yazısını korur */
@media (min-width:901px) and (max-width:1180px){
  .nav{gap:14px}
  .nav a.link{font-size:.9rem}
  .top .btn-call span{display:inline}
  .top .btn-call{padding-inline:12px;font-size:.86rem}
}

/* Bölümler */
.sec{padding:104px 0;scroll-margin-top:70px}
section[id]{scroll-margin-top:70px}
.sec-head{max-width:760px;margin-bottom:48px}
.sec-head h2,.intro-txt h2{font-family:var(--f-head);font-weight:800;font-size:clamp(2rem,4.2vw,3.15rem);letter-spacing:-.012em;line-height:1.06;color:var(--ink)}
.sec-head h2::after,.intro-txt h2::after{content:"";display:block;width:132px;height:6px;margin-top:20px;background:repeating-linear-gradient(90deg,var(--y) 0 28px,transparent 28px 44px)}
.sec-head p{color:var(--ink-2);margin-top:16px;font-size:1.06rem;max-width:62ch}

/* ---------- Hero: üst geçit portalı + yol ---------- */
.hero{padding-top:76px;overflow:hidden;color:#fff;background:var(--tex),linear-gradient(#23282c,#2e3439 70%,#2a2f34)}
.gantry{position:relative;padding-top:22px}
.g-beam{position:absolute;left:0;right:0;top:0;height:22px;border-top:4px solid #a3abb0;border-bottom:4px solid #7d868c;
  background:repeating-linear-gradient(60deg,transparent 0 10px,#8d969c 10px 13px,transparent 13px 20px),repeating-linear-gradient(-60deg,transparent 0 10px,#7d868c 10px 13px,transparent 13px 20px),#3a4146;box-shadow:0 8px 16px -8px rgba(0,0,0,.6)}
.g-post{display:none;position:absolute;top:-4px;width:20px;height:calc(100% + 60px);background:linear-gradient(90deg,#6a7379,#b3bbc0 45%,#6a7379);
  -webkit-mask:linear-gradient(#000 70%,transparent);mask:linear-gradient(#000 70%,transparent)}
.g-post.l{left:calc(50% - 650px)}.g-post.r{right:calc(50% - 650px)}
@media (min-width:1340px){.g-post{display:block}}
.g-signs{max-width:1200px;margin:0 auto;padding:14px 20px 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.82fr) minmax(0,1fr);grid-template-areas:"a v b";gap:18px;align-items:stretch}
.g-sign{grid-area:a;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"ok t" "ok n";align-items:center;column-gap:16px;row-gap:8px;padding:20px 24px;animation:sheen 1.8s 1.1s cubic-bezier(.4,0,.2,1) both}
.g-sign.right{grid-area:b;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"t ok" "n ok";text-align:right;animation-delay:1.5s}
.g-sign::before{content:"";position:absolute;top:-14px;left:22%;right:22%;height:14px;border-left:4px solid var(--steel);border-right:4px solid var(--steel)}
.g-arrow{grid-area:ok;display:grid;place-items:center}
.g-arrow .ok{width:clamp(34px,4.4vw,56px);height:auto}
.g-txt{grid-area:t;min-width:0}
.g-txt b{display:block;font-family:var(--f-head);font-weight:900;font-size:clamp(1.5rem,3.4vw,2.7rem);line-height:1;letter-spacing:.02em}
.g-txt small{display:block;margin-top:6px;font-family:var(--f-head);font-weight:600;font-size:clamp(.74rem,1.2vw,.95rem);line-height:1.25;opacity:.92}
.g-count{grid-area:n;justify-self:start;display:inline-flex;align-items:baseline;gap:5px;padding:2px 10px;border-radius:6px;background:#fff;color:var(--c);font-family:var(--f-head);font-weight:700;font-size:.85rem}
.g-sign.right .g-count{justify-self:end}
.g-count b{font-weight:900;font-size:1.05rem}
/* Değişken mesaj panosu (LED nokta matrisi) */
.vms{grid-area:v;position:relative;display:grid;place-items:center;min-height:96px;padding:12px 16px;border-radius:6px;background:#15181a;border:6px solid #5a636a;box-shadow:inset 0 0 0 2px #0b0d0e,0 10px 20px -12px rgba(0,0,0,.7);overflow:hidden}
.vms::before{content:"";position:absolute;top:-20px;left:30%;right:30%;height:14px;border-left:4px solid var(--steel);border-right:4px solid var(--steel)}
.vms::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle,rgba(255,255,255,.04) 1.3px,rgba(21,24,26,.82) 1.8px) 0 0/4px 4px}
.vms-t{position:relative;display:block;white-space:nowrap;font-family:var(--f-head);font-weight:900;font-size:clamp(1.1rem,2.5vw,2rem);letter-spacing:.05em;color:#ffc02e;text-shadow:0 0 6px rgba(255,180,0,.9),0 0 18px rgba(255,170,0,.5);transition:opacity .35s}
.vms-t.off{opacity:0}

.hero-in{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:56px;align-items:center;padding-top:58px;padding-bottom:44px}
.plate{display:inline-flex;align-items:center;gap:10px;padding:7px 14px 7px 10px;border:2px solid rgba(255,255,255,.85);border-radius:8px;font-family:var(--f-head);font-weight:700;font-size:.92rem;line-height:1.3}
.plate svg{width:20px;height:20px;color:var(--y)}
.hero h1{margin-top:22px;font-family:var(--f-head);font-weight:900;font-size:clamp(2.5rem,6vw,5rem);line-height:.98;letter-spacing:-.012em;color:#fff;max-width:12ch}
/* kelime maskesi büyük İ'nin noktasını kesmesin */
.hero h1 .w{padding-top:.16em;margin-top:-.16em}
.lead{margin-top:24px;font-size:1.12rem;color:#d0d7dc;max-width:36em}
.cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.hero-r{margin:0;padding:16px 16px 12px}
.hr-top{display:flex;align-items:center;gap:10px;padding:2px 4px 12px;font-family:var(--f-head);font-weight:800;font-size:.95rem}
.hr-top svg{width:28px;height:28px}
.hr-img{border-radius:6px;overflow:hidden;aspect-ratio:4/3;background:#0d3a6b}
.hr-img img{width:100%;height:100%;object-fit:cover}
.hero-r figcaption{padding:10px 4px 2px;font-size:.88rem;color:#e1ecf8}

/* Yol: kenar çizgileri, akan şerit çizgisi, iki kamyon */
.road{--h:200px;--tw:220px;position:relative;height:var(--h);overflow:hidden;background:var(--tex),linear-gradient(#30363c,#2a2f34);border-top:3px solid #1e2226}
.road::before,.road::after{content:"";position:absolute;left:0;right:0;height:5px;background:#e9ece9}
.road::before{top:12px}.road::after{bottom:12px}
.lane-mark{position:absolute;left:0;right:0;top:calc(50% - 3px);height:6px;background:repeating-linear-gradient(90deg,#e9ece9 0 70px,transparent 70px 140px);background-size:140px 6px;animation:lane .9s linear infinite}
@keyframes lane{to{background-position:-140px 0}}
.rt{position:absolute;width:var(--tw);height:auto}
.rt-a{left:12%;bottom:22px;animation:cruise 9s ease-in-out infinite;filter:drop-shadow(0 8px 6px rgba(0,0,0,.35))}
.rt-b{top:20px;left:0;width:calc(var(--tw) * .78);scale:-1 1;animation:oncoming 7s linear infinite;filter:drop-shadow(0 6px 5px rgba(0,0,0,.3))}
@keyframes cruise{0%,100%{transform:translate(0,0)}25%{transform:translate(24px,-1px)}50%{transform:translate(60px,0)}75%{transform:translate(30px,-1px)}}
@keyframes oncoming{from{transform:translateX(calc(100vw + 20px))}to{transform:translateX(-120%)}}
.wh{transform-box:fill-box;transform-origin:center;animation:spin .5s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* ---------- Giriş + bilgi levhaları ---------- */
.intro-in{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:64px;align-items:start}
.intro-txt p{margin-top:18px;max-width:64ch;color:#2c343a}
.intro-txt h2+p{margin-top:28px}
.info{list-style:none;margin:0;padding:0;display:grid;gap:12px;position:sticky;top:100px}
.info li{display:flex;align-items:center;gap:16px;padding:14px 16px 14px 14px;background:#fff;border:2px solid var(--line);border-radius:10px;font-family:var(--f-head);font-weight:700;font-size:1.02rem;line-height:1.3}
.info-ic{flex:none;display:grid;place-items:center;width:50px;height:50px;border-radius:8px;background:var(--b);color:#fff;box-shadow:inset 0 0 0 2px var(--b),inset 0 0 0 4px #fff}
.info-ic svg{width:26px;height:26px}

/* ---------- Hizmetler: yön levhaları ---------- */
.svc-sec{padding-top:24px}
.svc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.svc{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:center;padding:26px 26px 26px 24px}
.svc:hover{background-position:0% 0,0 0;translate:0 -3px}
.svc-ic{display:grid;place-items:center;width:58px;height:58px;border-radius:8px;background:#fff;color:var(--b)}
.svc-ic svg{width:32px;height:32px;stroke-width:2}
.svc h3{font-family:var(--f-head);font-weight:800;font-size:1.32rem;line-height:1.15}
.svc p{margin-top:7px;color:#e3edf8;font-size:.96rem;line-height:1.55}
.svc-ok .ok{width:42px;height:42px;display:block}

/* ---------- İşlerimiz: asfalt üstünde çerçeveli kareler ---------- */
.work{background:var(--tex),var(--asph);color:#fff}
.work::before,.work::after{content:"";position:absolute;left:0;right:0;height:5px;background:repeating-linear-gradient(90deg,#e9ece9 0 60px,transparent 60px 120px);opacity:.7}
.work::before{top:18px}.work::after{bottom:18px}
.work .sec-head h2{color:#fff}
.work .sec-head p{color:#c6ced4}
.screens{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.screen{margin:0}
.scr{aspect-ratio:4/5;border-radius:12px;overflow:hidden;border:4px solid #fff;background:#15181a}
.screen figcaption,.shot figcaption{margin-top:10px;font-size:.9rem;color:#dbe1e5;line-height:1.4}
.strip-wrap{margin-top:44px}
.strip-btns{display:flex;justify-content:flex-end;gap:10px;margin-bottom:14px}
.strip-btns button{display:grid;place-items:center;width:48px;height:48px;border:0;border-radius:10px;cursor:pointer;background:var(--g);color:#fff;box-shadow:inset 0 0 0 2px var(--g),inset 0 0 0 4px #fff;transition:transform .25s}
.strip-btns button:hover{transform:translateY(-2px)}
.strip-btns svg{width:22px;height:22px}
.strip{display:flex;gap:16px;padding-bottom:4px}
.shot{flex:0 0 clamp(220px,26vw,290px);margin:0}
.shot-img{aspect-ratio:3/4;border-radius:10px;overflow:hidden;border:3px solid #fff;background:#15181a}
.shot-img img,.shot-img video{width:100%;height:100%;object-fit:cover}

/* ---------- Süreç: yol kenarında kilometre taşları ---------- */
.km{--p:0;position:relative;margin-top:8px}
.km-road{position:absolute;left:0;right:0;top:118px;height:64px;border-radius:6px;overflow:hidden;background:var(--tex),var(--asph)}
.km-road::before{content:"";position:absolute;left:0;right:0;top:calc(50% - 2px);height:4px;background:repeating-linear-gradient(90deg,#e9ece9 0 40px,transparent 40px 80px)}
.km-road::after{content:"";position:absolute;inset:6px 0;border-top:2px solid rgba(233,236,233,.75);border-bottom:2px solid rgba(233,236,233,.75)}
.km-truck{position:absolute;z-index:1;top:9px;left:calc(var(--p) * (100% - 130px));width:120px;height:auto;transition:left .25s linear}
.km-list{position:relative;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
.post{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;width:62px;height:104px;margin-top:14px;padding-bottom:9px;background:#fff;border:3px solid var(--ink);border-bottom-width:0;border-radius:31px 31px 3px 3px;overflow:hidden;font-family:var(--f-head);color:var(--ink);box-shadow:4px 0 0 rgba(0,0,0,.08)}
.post-cap{position:absolute;left:0;right:0;top:0;height:30px;background:var(--y)}
.post small{font-weight:700;font-size:.78rem;line-height:1}
.post b{font-weight:900;font-size:1.9rem;line-height:1}
.km-tx{margin-top:86px}
.km-tx h3{font-family:var(--f-head);font-weight:800;font-size:1.18rem;line-height:1.2}
.km-tx p{margin-top:8px;color:var(--ink-2);font-size:.95rem;line-height:1.6}

/* ---------- İlçeler: çıkış levhaları ---------- */
.exits-sec{background:#fff}
.exits{--c:var(--g)}
.exits.alt{--c:var(--b);margin-top:44px}
.ex-head{display:flex;align-items:center;gap:16px;padding:18px 26px}
.ex-head .ok{width:36px;height:36px;display:block}
.ex-head h3{font-family:var(--f-head);font-weight:900;font-size:clamp(1.6rem,3vw,2.3rem);line-height:1;letter-spacing:.01em}
.ex-range{margin-left:auto;text-align:right;font-family:var(--f-head);font-weight:800;font-size:1rem;line-height:1.25}
.ex-range em{display:block;font-style:normal;font-weight:600;font-size:.86rem;opacity:.9}
.ex-list{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:8px}
.ex-list a,.ex-in{display:flex;align-items:center;gap:10px;height:100%;min-height:46px;padding:7px 12px 7px 7px;border-radius:8px;background:var(--c);color:#fff;text-decoration:none;box-shadow:inset 0 0 0 2px var(--c),inset 0 0 0 3.5px #fff;transition:transform .2s,background .2s}
.ex-list a:hover{transform:translateY(-2px);background:var(--ink)}
.ex-n{flex:none;display:grid;place-items:center;min-width:34px;height:30px;padding:0 5px;border-radius:5px;background:#fff;color:var(--c);font-family:var(--f-head);font-weight:900;font-size:.95rem;line-height:1}
.ex-list a:hover .ex-n{color:var(--ink)}
.ex-t{min-width:0;font-family:var(--f-head);font-weight:700;font-size:.98rem;line-height:1.15;overflow-wrap:anywhere}

/* ---------- SSS + teklif formu ---------- */
.duo-in{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:56px;align-items:start}
.faq details{background:#fff;border-radius:10px;margin-bottom:10px;border:2px solid var(--line);border-left:6px solid var(--g)}
.faq details:nth-of-type(even){border-left-color:var(--b)}
.faq summary{display:flex;align-items:center;gap:14px;padding:18px 18px 18px 20px;font:700 1.05rem/1.35 var(--f-head)}
.faq summary span{flex:1}
.pm{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:8px;border:2px solid var(--ink);transition:transform .35s,background .3s,color .3s,border-color .3s}
.pm svg{width:16px;height:16px}
.faq details[open] .pm{transform:rotate(45deg);background:var(--g);border-color:var(--g);color:#fff}
.faq details p{padding:0 20px 20px;color:var(--ink-2)}
.quote{position:sticky;top:100px;padding:34px 30px 28px;border-radius:14px;background:var(--g);color:#fff;box-shadow:inset 0 0 0 5px var(--g),inset 0 0 0 8px #fff,0 30px 60px -30px rgba(0,0,0,.45)}
.quote h3{font:900 1.75rem/1.1 var(--f-head)}
.quote .sub{color:#dcefe4;margin:8px 0 22px;font-size:.96rem}
.field{display:block;margin-bottom:14px}
.field span{display:block;font:700 .84rem var(--f-head);color:#eaf6ef;margin-bottom:6px}
.field input,.field select{width:100%;font:inherit;padding:12px 14px;border-radius:8px;border:2px solid #fff;background:#fff;color:var(--ink)}
.field input:focus,.field select:focus{outline:3px solid var(--y);outline-offset:1px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.quote .btn-wa{width:100%;margin-top:6px;background:#fff;color:var(--g)}
.quote .note{font-size:.82rem;color:#d3ebdd;text-align:center;margin-top:12px}

/* ---------- Son levha ---------- */
.final{padding:24px 0 110px}
.final-sign{max-width:900px;margin:0 auto;padding:54px 40px 40px;text-align:center;border-radius:16px;box-shadow:inset 0 0 0 5px var(--c),inset 0 0 0 9px #fff,0 30px 60px -34px rgba(0,0,0,.5)}
.final-sign.in{animation:sheen 1.8s .6s cubic-bezier(.4,0,.2,1) both}
.fs-tab{display:inline-block;padding:4px 14px;border-radius:6px;background:#fff;color:var(--g);font-family:var(--f-head);font-weight:800;font-size:.95rem}
.final-sign h2{margin-top:16px;font-family:var(--f-head);font-weight:900;font-size:clamp(2.6rem,7vw,5rem);line-height:1;letter-spacing:-.01em}
.final-sign p{max-width:40em;margin:14px auto 0;color:#dcefe4}
.fs-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px}
.final-sign .btn-wa{box-shadow:0 0 0 3px #fff}
.fs-ok{display:block;width:54px;margin:28px auto 0;animation:bob 1.6s ease-in-out infinite}
.fs-ok .ok{width:54px;height:54px;display:block}
@keyframes bob{50%{transform:translateY(8px)}}

/* ---------- Alt bilgi ---------- */
.foot{position:relative;background:var(--tex),var(--asph);color:#c3cbd1;padding:84px 0 30px}
.foot::before{content:"";position:absolute;left:0;right:0;top:22px;height:5px;background:repeating-linear-gradient(90deg,var(--y) 0 60px,transparent 60px 120px);opacity:.85}
.foot-in{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:48px}
.foot .logo{margin-bottom:16px}
.foot p{font-size:.93rem;max-width:400px}
.foot h4{font-family:var(--f-head);font-weight:800;color:#fff;font-size:1.05rem;margin-bottom:14px}
.foot ul{list-style:none;padding:0;margin:0;display:grid;gap:9px;font-size:.93rem}
.foot a{text-decoration:none}
.foot a:hover{color:var(--y)}
.copy{margin-top:48px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);font-size:.85rem}
.mbar{background:rgba(34,39,43,.98);border-top:3px solid var(--y)}
.mbar .btn{border-radius:8px}
.mbar .btn-call{background:var(--y);color:var(--ink)}

/* ---------- Duyarlı ---------- */
@media (max-width:1100px){
  .svc{grid-template-columns:auto minmax(0,1fr);padding:24px 22px}
  .svc-ok{display:none}
  .km-list{gap:16px}
}
@media (max-width:900px){
  .top .nav{background:var(--asph-3);box-shadow:0 18px 30px -18px rgba(0,0,0,.6)}
  .nav a.link{border-bottom:1px solid rgba(255,255,255,.08)}
  .nav a.link::after{display:none}
  .hero-in{grid-template-columns:1fr;gap:40px;padding-top:44px}
  .hero-r{max-width:560px}
  .intro-in,.duo-in{grid-template-columns:1fr;gap:40px}
  .info,.quote{position:static}
  .foot-in{grid-template-columns:1fr;gap:34px}
  .sec{padding:84px 0}
  .svc-sec{padding-top:16px}
}
@media (max-width:760px){
  .g-signs{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"a b" "v v";gap:12px 10px;padding-inline:14px}
  .g-sign,.g-sign.right{grid-template-columns:minmax(0,1fr);grid-template-areas:"ok" "t" "n";padding:14px 14px 13px;row-gap:6px;justify-items:start;text-align:left}
  .g-sign.right{justify-items:end;text-align:right}
  .g-sign.right .g-count{justify-self:end}
  .g-arrow .ok{width:30px}
  .vms{min-height:62px;padding:8px 12px}
  .vms::before{display:none}
  .svc-grid{grid-template-columns:1fr}
  .screens{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:78%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}
  .screens::-webkit-scrollbar{display:none}
  .screen{scroll-snap-align:start}
  /* Süreç: dikey yol, kamyon aşağı iner */
  .km-road{top:0;bottom:0;left:0;right:auto;width:58px;height:auto}
  .km-road::before{left:calc(50% - 2px);right:auto;top:0;bottom:0;width:4px;height:auto;background:repeating-linear-gradient(180deg,#e9ece9 0 30px,transparent 30px 60px)}
  .km-road::after{inset:0 6px;border:0;border-left:2px solid rgba(233,236,233,.75);border-right:2px solid rgba(233,236,233,.75)}
  .km-truck{width:88px;left:calc(50% - 44px);top:calc(30px + var(--p) * (100% - 130px));rotate:90deg;transition:top .25s linear}
  .km-list{grid-template-columns:1fr;gap:30px;padding:8px 0 8px 74px}
  .km-list li{display:grid;grid-template-columns:50px minmax(0,1fr);gap:16px;align-items:start}
  .post{width:50px;height:80px;margin-top:0;border-bottom-width:3px;border-radius:25px 25px 3px 3px;padding-bottom:7px}
  .post-cap{height:22px}
  .post b{font-size:1.45rem}
  .km-tx{margin-top:2px}
  .road{--h:150px;--tw:150px}
  .rt-a{left:6%;bottom:17px}
  .rt-b{top:16px}
  .ex-head{flex-wrap:wrap;padding:16px 18px;gap:10px 14px}
}
@media (max-width:560px){
  .wrap{padding:0 16px}
  .g-signs{padding-inline:12px}
  .g-txt small{font-size:.72rem}
  .g-count{font-size:.76rem;padding:1px 8px}
  .g-count b{font-size:.92rem}
  .hero h1{font-size:clamp(2.3rem,11vw,3rem)}
  .lead{font-size:1.04rem}
  .cta .btn{flex:1 1 auto}
  .svc{gap:16px;padding:22px 18px}
  .svc-ic{width:48px;height:48px}
  .svc-ic svg{width:26px;height:26px}
  .svc h3{font-size:1.18rem}
  .ex-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .ex-list a,.ex-in{gap:8px;min-height:42px;padding:6px 8px 6px 6px}
  .ex-n{min-width:30px;height:26px;font-size:.84rem}
  .ex-t{font-size:.9rem}
  .ex-range{font-size:.9rem}
  .quote{padding:28px 20px 24px}
  .row2{grid-template-columns:1fr}
  .final-sign{padding:42px 20px 32px}
  .faq summary{padding:16px 14px 16px 16px;font-size:1rem}
  .faq details p{padding:0 16px 18px}
}
