/* ==========================================================================
   Es Dinar Yol Yardım — Stylesheet (v2)
   Hızlı, mobil öncelikli, %100 SEO ve performans odaklı.
   ========================================================================== */

:root{
  --c-red:#d32f2f;
  --c-red-dark:#9a0007;
  --c-red-light:#ff6659;
  --c-yellow:#ffc107;
  --c-yellow-dark:#fb8c00;
  --c-dark:#0f1419;
  --c-grey-900:#1a1f2e;
  --c-grey-700:#3a4256;
  --c-grey-500:#6b7280;
  --c-grey-300:#d1d5db;
  --c-grey-100:#f3f4f6;
  --c-bg:#ffffff;
  --c-text:#1a1f2e;
  --c-success:#16a34a;
  --c-wa:#25d366;
  --radius:14px;
  --radius-sm:8px;
  --shadow-sm:0 2px 8px rgba(15,20,25,.06);
  --shadow:0 8px 30px rgba(15,20,25,.08);
  --shadow-lg:0 20px 50px rgba(15,20,25,.15);
  --max:1200px;
  --gap:1.25rem;
  --t:.25s ease;
  --header-h:72px;

  /* z-index ölçeği */
  --z-header:100;
  --z-fab:200;
  --z-overlay:300;
  --z-mobile-nav:310;
  --z-nav-toggle:320;
  --z-skip:9999;
}

*,*::before,*::after{box-sizing:border-box}
html{
  scroll-behavior:smooth;
  -webkit-text-size-adjust:100%;
  -webkit-tap-highlight-color:rgba(211,47,47,.15);
}
body{
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
  font-size:16px;line-height:1.6;color:var(--c-text);background:var(--c-bg);
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}
img,svg,video{max-width:100%;height:auto;display:block}
a{color:var(--c-red);text-decoration:none;transition:color var(--t)}
a:hover{color:var(--c-red-dark);text-decoration:underline}
h1,h2,h3,h4{font-weight:800;line-height:1.2;margin:0 0 .6em;letter-spacing:-.02em;color:var(--c-grey-900)}
h1{font-size:clamp(1.75rem,4.5vw,3.25rem);overflow-wrap:break-word}
h2{font-size:clamp(1.5rem,3.2vw,2.25rem)}
h3{font-size:1.25rem}
p{margin:0 0 1em;overflow-wrap:break-word}
ul{margin:0;padding:0;list-style:none}
button{font-family:inherit}

.container{width:100%;max-width:var(--max);margin:0 auto;padding:0 1.25rem}
.center{text-align:center}
.muted{color:var(--c-grey-500)}

/* Skip link & a11y */
.skip-link{position:absolute;left:-9999px;top:0;background:#000;color:#fff;padding:.6rem 1rem;z-index:var(--z-skip)}
.skip-link:focus{left:1rem;top:1rem}
:focus-visible{outline:3px solid var(--c-yellow);outline-offset:2px;border-radius:4px}

/* Topbar */
.topbar{background:var(--c-dark);color:#cbd5e1;font-size:.85rem;padding:.5rem 0}
.topbar__inner{display:flex;flex-wrap:wrap;gap:.5rem 1rem;justify-content:space-between;align-items:center}
.topbar a{color:#fff}
.topbar__item--strong{color:#fff;font-weight:700}
.topbar__item--strong a{color:var(--c-yellow);font-weight:800}
@media (max-width:760px){
  .topbar__item:not(.topbar__item--strong){display:none}
  .topbar__inner{justify-content:center;text-align:center}
}

/* Header */
.site-header{position:sticky;top:0;z-index:var(--z-header);background:#fff;box-shadow:var(--shadow-sm)}
.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 1.25rem;min-height:var(--header-h)}
.logo{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--c-text);min-width:0}
.logo:hover{text-decoration:none}
.logo__mark{
  /* Kullanılmıyor — geriye dönük uyumluluk için bırakıldı (footer logosu kullanıyor) */
  width:48px;height:48px;border-radius:12px;flex-shrink:0;
  background:linear-gradient(135deg,var(--c-red) 0%,var(--c-red-dark) 100%);
  color:#fff;font-weight:900;font-size:1.05rem;letter-spacing:1px;
  display:grid;place-items:center;box-shadow:var(--shadow-sm);
}
.logo__text{
  min-width:0;
  background:linear-gradient(135deg,var(--c-red) 0%,var(--c-red-dark) 100%);
  color:#fff;
  padding:.55rem 1rem;
  border-radius:12px;
  box-shadow:var(--shadow-sm);
  display:flex;flex-direction:column;justify-content:center;
}
.logo__text strong{display:block;font-size:1.05rem;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff;font-weight:800;letter-spacing:.01em}
.logo__text small{display:block;font-size:.75rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:rgba(255,255,255,.92);font-weight:500;margin-top:.1rem}

/* Footer logosu eski stilini koruyor — kendi override'ı var */
.logo--footer .logo__text{background:transparent;padding:0;box-shadow:none;display:block}
.logo--footer .logo__text strong,
.logo--footer .logo__text small{color:#fff}


.nav-toggle{
  display:none;background:transparent;border:0;width:48px;height:48px;cursor:pointer;
  padding:0;flex-direction:column;justify-content:center;gap:5px;align-items:center;
  position:relative;z-index:var(--z-nav-toggle);border-radius:8px;
}
.nav-toggle:hover{background:var(--c-grey-100)}
.nav-toggle span{display:block;width:26px;height:3px;background:var(--c-dark);border-radius:2px;transition:transform var(--t),opacity var(--t),background var(--t)}
.nav-toggle[aria-expanded="true"]{
  position:fixed;top:.85rem;right:.85rem;
  background:#fff;box-shadow:var(--shadow);
  border:1px solid #eef0f4;
  z-index:calc(var(--z-mobile-nav) + 10);
}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;transform:scaleX(0)}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}

.mainnav>ul{display:flex;align-items:center;gap:.25rem;flex-wrap:wrap}
.mainnav a{display:block;padding:.7rem .9rem;color:var(--c-grey-900);font-weight:600;font-size:.95rem;border-radius:8px}
.mainnav a:hover,.mainnav a[aria-current="page"]{background:var(--c-grey-100);color:var(--c-red);text-decoration:none}
.has-sub{position:relative}
.has-sub>ul{
  position:absolute;left:0;top:100%;background:#fff;min-width:240px;
  box-shadow:var(--shadow);border-radius:var(--radius-sm);padding:.4rem;
  display:none;z-index:50;
}
.has-sub:hover>ul,.has-sub:focus-within>ul{display:block}
.has-sub>ul a{padding:.55rem .7rem;font-weight:500}

@media (max-width:980px){
  .nav-toggle{display:flex}
  .mainnav{
    position:fixed;top:0;right:-100%;width:88%;max-width:360px;
    height:100vh;height:100dvh;
    background:#ffffff;
    padding:5rem 1.25rem 2rem;
    box-shadow:var(--shadow-lg);
    transition:right var(--t);
    overflow-y:auto;
    z-index:var(--z-mobile-nav);
    overscroll-behavior:contain;
    /* Garanti opaque arka plan (overlay'in arkasından sızmayı önler) */
    isolation:isolate;
  }
  .mainnav::before{
    content:"";position:absolute;inset:0;background:#ffffff;z-index:-1;
  }
  .mainnav.is-open{right:0}
  .mainnav>ul{flex-direction:column;align-items:stretch;gap:.15rem;position:relative;z-index:1}
  .mainnav a{
    padding:.95rem 1rem;border-radius:8px;
    font-size:1.02rem;color:#1a1f2e;font-weight:600;
    background:transparent;
    display:block;
  }
  .mainnav a:hover,.mainnav a[aria-current="page"]{
    background:#f3f4f6;color:var(--c-red);
  }
  .has-sub>ul{
    position:static;display:block;box-shadow:none;background:#f3f4f6;
    margin:.25rem 0 .5rem .5rem;padding:.25rem;border-radius:8px;
  }
  .has-sub>ul a{font-size:.95rem;color:#3a4256;font-weight:500;background:transparent}
  .has-sub>ul a:hover,.has-sub>ul a[aria-current="page"]{color:var(--c-red);background:#ffffff}
  /* Mobilde "Hizmet Bölgeleri" altındaki 9 şehir listesini gizle (alan tasarrufu) */
  .nav-regions>ul{display:none !important}

  body.nav-open{overflow:hidden}
  body.nav-open::after{
    content:"";position:fixed;inset:0;
    background:rgba(0,0,0,.55);
    z-index:var(--z-overlay);
    /* backdrop-filter kaldırıldı — bazı tarayıcılarda menü panelinin
       arkasından şeffaflık sızıntısı yapıyordu */
  }
  /* Menü açıkken header overlay'in üstüne çıksın ki içindeki menü tam opaque kalsın */
  body.nav-open .site-header{
    position:fixed;top:0;left:0;right:0;
    z-index:calc(var(--z-mobile-nav) + 5);
    background:#fff;
  }
  body.nav-open .topbar{display:none}
}

/* Floating call button — TÜM EKRANLARDA görünür */
.fab-call{
  position:fixed;left:1rem;bottom:max(1rem,env(safe-area-inset-bottom));
  display:inline-flex;align-items:center;gap:.6rem;
  background:linear-gradient(135deg,var(--c-red) 0%,var(--c-red-dark) 100%);
  color:#fff;padding:.85rem 1.25rem;border-radius:999px;font-weight:700;
  box-shadow:0 10px 30px rgba(211,47,47,.45);z-index:var(--z-fab);
  text-decoration:none;animation:pulse 2.4s infinite;max-width:calc(60% - 1rem);
}
.fab-call:hover,.fab-call:focus-visible{color:#fff;text-decoration:none;transform:scale(1.03)}
.fab-call__icon{font-size:1.3rem;flex-shrink:0}
.fab-call__text{display:flex;flex-direction:column;line-height:1.1;font-size:.92rem;min-width:0}
.fab-call__text span{font-size:.78rem;opacity:.95}
.fab-call__text strong{font-size:.95rem}

/* Floating WhatsApp button — TÜM EKRANLARDA görünür */
.fab-wa{
  position:fixed;right:1rem;bottom:max(1rem,env(safe-area-inset-bottom));
  display:inline-flex;align-items:center;justify-content:center;
  width:56px;height:56px;border-radius:50%;
  background:var(--c-wa);color:#fff;font-size:1.6rem;
  box-shadow:0 10px 30px rgba(37,211,102,.45);z-index:var(--z-fab);
  text-decoration:none;animation:pulseWa 2.4s infinite;
}
.fab-wa:hover,.fab-wa:focus-visible{color:#fff;text-decoration:none;transform:scale(1.08);background:#1da851}

@keyframes pulse{
  0%,100%{box-shadow:0 10px 30px rgba(211,47,47,.45)}
  50%   {box-shadow:0 10px 50px rgba(211,47,47,.85)}
}
@keyframes pulseWa{
  0%,100%{box-shadow:0 10px 30px rgba(37,211,102,.45)}
  50%   {box-shadow:0 10px 40px rgba(37,211,102,.85)}
}
/* FAB butonları position:fixed olduğu için body padding-bottom gerekmez.
   Sadece çok küçük ekranda son CTA butonunu engellememesi için son section'a margin ekliyoruz */
body{padding-bottom:0}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  padding:.85rem 1.5rem;border-radius:999px;font-weight:700;font-size:1rem;
  text-decoration:none;border:0;cursor:pointer;line-height:1.2;
  transition:transform var(--t),box-shadow var(--t),background var(--t),color var(--t);
  white-space:nowrap;-webkit-appearance:none;
}
@media (max-width:480px){
  .btn{font-size:.95rem;padding:.8rem 1.2rem;white-space:normal;text-align:center}
}
.btn:hover,.btn:focus-visible{transform:translateY(-2px);text-decoration:none}
.btn--primary{background:var(--c-red);color:#fff}
.btn--primary:hover,.btn--primary:focus-visible{background:var(--c-red-dark);color:#fff;box-shadow:0 10px 25px rgba(211,47,47,.35)}
.btn--call{background:linear-gradient(135deg,var(--c-red) 0%,var(--c-red-dark) 100%);color:#fff;box-shadow:0 8px 20px rgba(211,47,47,.3);text-shadow:0 1px 2px rgba(0,0,0,.25)}
.btn--call:visited,.btn--call:active{color:#fff}
.btn--call:hover,.btn--call:focus-visible{color:#fff;box-shadow:0 14px 30px rgba(211,47,47,.5)}
.btn--wa,.btn--wa:visited{background:var(--c-wa);color:#fff}
.btn--wa:hover,.btn--wa:focus-visible{background:#1da851;color:#fff}
.btn--ghost{background:transparent;color:var(--c-red);border:2px solid var(--c-red)}
.btn--ghost:hover,.btn--ghost:focus-visible{background:var(--c-red);color:#fff}
.btn--block{width:100%}
.btn--lg{padding:1.05rem 2rem;font-size:1.1rem}
@media (max-width:480px){.btn--lg{padding:1rem 1.4rem;font-size:1rem}}

/* Hero */
.hero{position:relative;color:#fff;overflow:hidden;isolation:isolate}
.hero__bg{
  position:absolute;inset:0;z-index:0;
  background:
    linear-gradient(135deg,rgba(15,20,25,.85) 0%,rgba(154,0,7,.78) 100%),
    radial-gradient(circle at 20% 30%,rgba(255,193,7,.18),transparent 50%),
    linear-gradient(135deg,#0f1419 0%,#1a1f2e 50%,#3a0d10 100%);
}
.hero__bg::after{
  content:"";position:absolute;inset:0;
  background-image:
    radial-gradient(circle at 80% 20%,rgba(255,255,255,.05) 0%,transparent 30%),
    repeating-linear-gradient(45deg,transparent 0,transparent 50px,rgba(255,255,255,.02) 50px,rgba(255,255,255,.02) 51px);
}
.hero__inner{
  position:relative;z-index:1;display:grid;
  grid-template-columns:1.4fr 1fr;gap:2.5rem;align-items:center;
  padding:4rem 1.25rem 4.5rem;
}
.badge{display:inline-block;background:rgba(255,193,7,.18);color:var(--c-yellow);padding:.4rem 1rem;border-radius:999px;font-size:.85rem;font-weight:700;margin-bottom:1rem;border:1px solid rgba(255,193,7,.4)}
.hero__content h1{color:#fff;margin-bottom:1rem}
.hero__content h1 span{display:block;color:var(--c-yellow);font-size:.78em;margin-top:.25rem}
.hero__lead{font-size:1.1rem;opacity:.95;margin-bottom:1.5rem;max-width:42rem}
.hero__cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}
.hero__features{display:flex;flex-wrap:wrap;gap:.6rem 1.5rem;font-weight:600}
.hero__features li{font-size:.95rem;color:var(--c-yellow)}

.hero__card{
  background:#fff;color:var(--c-text);padding:1.75rem;border-radius:var(--radius);
  box-shadow:var(--shadow-lg);
}
.hero__card h2{font-size:1.5rem;color:var(--c-red);margin-bottom:.25rem}
.hero__card p{color:var(--c-grey-500);font-size:.95rem;margin-bottom:1rem}

.quick-form label{display:block;margin-bottom:.85rem;font-weight:600;font-size:.9rem;color:var(--c-grey-700)}
.quick-form input,.quick-form select,.quick-form textarea{
  display:block;width:100%;margin-top:.3rem;padding:.7rem .85rem;
  border:1.5px solid var(--c-grey-300);border-radius:var(--radius-sm);
  font-size:1rem;font-family:inherit;background:#fff;color:var(--c-text);
  transition:border-color var(--t),box-shadow var(--t);accent-color:var(--c-red);
}
.quick-form input:focus,.quick-form select:focus,.quick-form textarea:focus{
  outline:0;border-color:var(--c-red);box-shadow:0 0 0 3px rgba(211,47,47,.15);
}
.quick-form small{display:block;margin-top:.6rem;font-size:.78rem;color:var(--c-grey-500)}
.quick-form button{margin-top:.4rem}

@media (max-width:1024px){
  .hero__inner{grid-template-columns:1fr;padding:2.5rem 1.25rem 3rem;gap:2rem}
}
@media (max-width:480px){
  .hero__card{padding:1.25rem}
  .hero__lead{font-size:1rem}
}

/* Trustbar */
.trustbar{background:var(--c-dark);color:#fff;padding:1.5rem 0}
.trustbar__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;text-align:center}
.trustbar strong{display:block;font-size:1.6rem;color:var(--c-yellow);font-weight:900}
.trustbar span{display:block;font-size:.85rem;opacity:.85;margin-top:.2rem}
@media (max-width:720px){
  .trustbar__grid{grid-template-columns:repeat(2,1fr);gap:1.25rem}
  .trustbar strong{font-size:1.4rem}
}

/* Sections */
.section{padding:4rem 0}
.section--alt{background:linear-gradient(180deg,#f9fafb 0%,#f3f4f6 100%)}
.section__head{text-align:center;max-width:none;margin:0 auto 2.5rem}
.eyebrow{display:inline-block;font-size:.85rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--c-red);margin-bottom:.5rem}
.section__head p{color:var(--c-grey-500);font-size:1.05rem}
@media (max-width:720px){
  .section{padding:2.5rem 0}
  .section__head{margin-bottom:1.75rem}
}

/* Cards — col-md-4 davranışı (satırda 3 kart, masaüstünde) */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
@media (max-width:880px){.cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.cards{grid-template-columns:1fr}}
.card{
  position:relative;
  background:#fff;
  padding:2rem 1.75rem 1.75rem;
  border-radius:var(--radius);
  box-shadow:var(--shadow-sm);
  border:1px solid #eef0f4;
  transition:transform var(--t),box-shadow var(--t),border-color var(--t);
  display:flex;flex-direction:column;
  overflow:hidden;
}
.card::before{
  content:"";position:absolute;left:0;top:0;height:4px;width:100%;
  background:linear-gradient(90deg,var(--c-red) 0%,var(--c-red-dark) 100%);
  transform:scaleX(0);transform-origin:left;
  transition:transform .35s ease;
}
.card:hover{
  transform:translateY(-6px);
  box-shadow:0 18px 40px rgba(15,20,25,.12);
  border-color:#fecaca;
}
.card:hover::before{transform:scaleX(1)}
.card__icon{
  width:64px;height:64px;border-radius:16px;display:grid;place-items:center;font-size:1.9rem;
  background:linear-gradient(135deg,#fee2e2 0%,#fecaca 100%);
  margin-bottom:1.1rem;
  box-shadow:inset 0 0 0 1px rgba(211,47,47,.1),0 6px 16px rgba(211,47,47,.15);
  transition:transform var(--t);
}
.card:hover .card__icon{transform:scale(1.08) rotate(-4deg)}
.card h3{margin-bottom:.5rem;font-size:1.2rem}
.card h3 a{color:var(--c-grey-900)}
.card h3 a:hover{color:var(--c-red);text-decoration:none}
.card p{color:var(--c-grey-500);font-size:.95rem;margin-bottom:1.1rem;flex:1}
.card__more{
  font-weight:700;font-size:.95rem;color:var(--c-red);
  display:inline-flex;align-items:center;gap:.3rem;
  align-self:flex-start;
  transition:gap var(--t);
}
.card__more:hover{gap:.55rem;text-decoration:none}

/* Region list — col-md-3 davranışı (satırda 4 kart, masaüstünde) */
.region-list{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}
@media (max-width:1024px){.region-list{grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){.region-list{grid-template-columns:repeat(2,1fr)}}
@media (max-width:420px){.region-list{grid-template-columns:1fr}}
.region-list a{
  position:relative;
  display:block;background:#fff;padding:1.25rem 1.25rem 1.25rem 1.25rem;
  border-radius:var(--radius);
  border:1px solid #eef0f4;color:var(--c-grey-900);
  transition:all var(--t);
  overflow:hidden;
  box-shadow:var(--shadow-sm);
}
.region-list a::before{
  content:"📍";
  position:absolute;top:-6px;right:-6px;
  width:42px;height:42px;
  display:grid;place-items:center;
  background:rgba(211,47,47,.08);
  border-radius:50%;
  font-size:1rem;
  transition:all var(--t);
}
.region-list a:hover{
  background:linear-gradient(135deg,var(--c-red) 0%,var(--c-red-dark) 100%);
  color:#fff;border-color:transparent;
  text-decoration:none;transform:translateY(-3px);
  box-shadow:0 14px 28px rgba(211,47,47,.3);
}
.region-list a:hover::before{
  background:rgba(255,255,255,.18);
  transform:scale(1.4);
}
.region-list a:hover strong{color:#fff}
.region-list a:hover span{color:#ffe9e9}
.region-list strong{display:block;font-size:1.1rem;color:var(--c-grey-900);margin-bottom:.2rem}
.region-list span{font-size:.82rem;color:var(--c-grey-500)}

/* Two column */
.two-col{display:grid;grid-template-columns:1.3fr 1fr;gap:3rem;align-items:center}
@media (max-width:880px){.two-col{grid-template-columns:1fr;gap:2rem}}

.ticks{margin:1rem 0 1.5rem}
.ticks li{position:relative;padding:.5rem 0 .5rem 2rem;border-bottom:1px solid #eef0f4}
.ticks li:last-child{border-bottom:0}
.ticks li::before{
  content:"✓";position:absolute;left:0;top:.55rem;width:1.4rem;height:1.4rem;
  background:var(--c-success);color:#fff;border-radius:50%;display:grid;place-items:center;
  font-size:.85rem;font-weight:900;line-height:1;
}
.ticks strong{color:var(--c-grey-900)}

.why-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.why-stats div{
  background:#fff;padding:1.5rem 1rem;border-radius:var(--radius);text-align:center;
  box-shadow:var(--shadow-sm);border:1px solid #eef0f4;
}
.why-stats strong{display:block;font-size:2rem;color:var(--c-red);font-weight:900;line-height:1}
.why-stats span{display:block;font-size:.9rem;color:var(--c-grey-500);margin-top:.4rem}

/* Steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.steps li{
  background:#fff;padding:1.75rem;border-radius:var(--radius);box-shadow:var(--shadow-sm);
  text-align:center;position:relative;
}
.steps li>span{
  display:grid;place-items:center;width:50px;height:50px;border-radius:50%;
  background:linear-gradient(135deg,var(--c-red) 0%,var(--c-red-dark) 100%);
  color:#fff;font-size:1.25rem;font-weight:900;margin:0 auto 1rem;line-height:1;
}
.steps li h3{margin-bottom:.5rem}
.steps li p{color:var(--c-grey-500);margin:0}
@media (max-width:720px){.steps{grid-template-columns:1fr}}

/* Reviews */
.reviews{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem}
.review{
  background:#fff;padding:1.75rem;border-radius:var(--radius);box-shadow:var(--shadow-sm);
  border-left:4px solid var(--c-yellow);margin:0;
}
.review blockquote{margin:0 0 1rem;font-style:italic;color:var(--c-grey-700);line-height:1.55}
.review figcaption{font-weight:700;color:var(--c-grey-900);font-size:.9rem}

/* FAQ */
.faq{max-width:none;margin:0;display:flex;flex-direction:column;gap:.6rem}
.faq details{
  background:#fff;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);
  border:1px solid #eef0f4;overflow:hidden;
}
.faq summary{
  padding:1.1rem 1.25rem;font-weight:700;cursor:pointer;list-style:none;
  color:var(--c-grey-900);position:relative;padding-right:3rem;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::marker{display:none;content:""}
.faq summary::after{
  content:"+";position:absolute;right:1rem;top:50%;transform:translateY(-50%);
  font-size:1.5rem;color:var(--c-red);font-weight:400;line-height:1;
  transition:transform var(--t);
}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq details p{padding:0 1.25rem 1.1rem;color:var(--c-grey-700);margin:0}
.faq summary:hover{background:rgba(211,47,47,.04)}

/* Inline CTA box (inner pages) */
.inline-cta{
  position:relative;
  background:linear-gradient(135deg,#fff7d6 0%,#ffe89a 100%);
  border:1px solid #f5d65a;
  border-radius:var(--radius);
  padding:2rem 1.5rem;
  margin:2.25rem 0;
  text-align:center;
  box-shadow:0 8px 28px rgba(251,140,0,.18);
  overflow:hidden;
}
.inline-cta::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 100% 0,rgba(255,193,7,.35),transparent 60%);
  pointer-events:none;
}
.inline-cta>*{position:relative;z-index:1}
.inline-cta h3{color:var(--c-grey-900);font-size:1.4rem;margin:0 0 .4rem}
.inline-cta p{color:var(--c-grey-700);margin:0 0 1.25rem;font-size:1rem}
.inline-cta .btn--call{
  background:linear-gradient(135deg,var(--c-red) 0%,var(--c-red-dark) 100%);
  color:#fff;
  font-size:1.15rem;
  padding:1rem 1.85rem;
  letter-spacing:.01em;
  text-shadow:0 1px 2px rgba(0,0,0,.25);
  box-shadow:0 10px 25px rgba(211,47,47,.4);
}
.inline-cta .btn--call:visited,.inline-cta .btn--call:active{color:#fff}
.inline-cta .btn--call:hover,.inline-cta .btn--call:focus-visible{
  color:#fff;
  box-shadow:0 16px 35px rgba(211,47,47,.55);
  transform:translateY(-2px) scale(1.02);
}
.inline-cta__row{display:flex;flex-wrap:wrap;gap:.85rem;justify-content:center}

/* CTA banner */
.cta{
  position:relative;color:#fff;padding:3.5rem 0;text-align:center;
  background:linear-gradient(135deg,var(--c-red) 0%,var(--c-red-dark) 100%);
  isolation:isolate;
}
.cta::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background-image:repeating-linear-gradient(45deg,transparent 0,transparent 30px,rgba(255,255,255,.03) 30px,rgba(255,255,255,.03) 31px);
}
.cta__inner{position:relative;z-index:1}
.cta h2{color:#fff;margin-bottom:.5rem}
.cta p{font-size:1.1rem;opacity:.95;margin-bottom:1.5rem}
.cta__btns{display:flex;flex-wrap:wrap;gap:.85rem;justify-content:center}
.cta .btn--call{background:#fff;color:var(--c-red);text-shadow:none}
.cta .btn--call:visited,.cta .btn--call:active{color:var(--c-red)}
.cta .btn--call:hover,.cta .btn--call:focus-visible{background:var(--c-yellow);color:var(--c-grey-900)}
.cta .btn--wa{background:var(--c-grey-900);color:#fff}
.cta .btn--wa:hover,.cta .btn--wa:focus-visible{background:#000;color:#fff}

/* Footer */
.site-footer{background:var(--c-dark);color:#cbd5e1;padding:3.5rem 0 0;font-size:.92rem}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2rem;padding-bottom:2rem}
.site-footer h4{color:#fff;font-size:1rem;margin-bottom:.85rem;letter-spacing:.02em}
.site-footer ul li{padding:.25rem 0}
.site-footer a{color:#cbd5e1}
.site-footer a:hover,.site-footer a:focus-visible{color:var(--c-yellow);text-decoration:none}
.site-footer .phone{color:var(--c-yellow);font-weight:800;font-size:1.1rem}
.site-footer address{font-style:normal;line-height:1.5}
.logo--footer .logo__mark{background:linear-gradient(135deg,var(--c-yellow) 0%,var(--c-yellow-dark) 100%);color:var(--c-dark)}
.logo--footer .logo__text strong,.logo--footer .logo__text small{color:#fff}
.footer-bottom{border-top:1px solid #1f2937;padding:1.25rem 0;margin-top:1rem;font-size:.85rem}
.footer-bottom p{margin:.2rem 0}
@media (max-width:880px){.footer-grid{grid-template-columns:1fr 1fr;gap:1.5rem}}
@media (max-width:520px){.footer-grid{grid-template-columns:1fr}}

/* Page header (for inner pages) */
.page-hero{
  background:linear-gradient(135deg,var(--c-grey-900) 0%,var(--c-dark) 100%);
  color:#fff;padding:3rem 0 2.5rem;position:relative;isolation:isolate;
}
.page-hero::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:
    radial-gradient(circle at 10% 50%,rgba(211,47,47,.25),transparent 40%),
    radial-gradient(circle at 90% 30%,rgba(255,193,7,.1),transparent 40%);
}
.page-hero h1{color:#fff;margin-bottom:.5rem}
.page-hero p{font-size:1.1rem;opacity:.9;max-width:50rem}
.breadcrumb{display:flex;flex-wrap:wrap;gap:.4rem;font-size:.88rem;margin-bottom:.85rem;opacity:.9;padding:0;list-style:none}
.breadcrumb a{color:var(--c-yellow)}
.breadcrumb li{display:inline-block}
.breadcrumb li:not(:last-child)::after{content:"›";margin-left:.4rem;opacity:.7}

/* Article / content */
.content{padding:3rem 0}
.content p{font-size:1.02rem;line-height:1.7;color:var(--c-grey-700)}
.content h2{margin-top:2rem}
.content h3{margin-top:1.5rem;color:var(--c-grey-900)}
.content ul:not(.region-list):not(.ticks):not(.breadcrumb):not(.cards){
  margin:1rem 0 1.5rem;padding-left:1.25rem;
}
.content ul:not(.region-list):not(.ticks):not(.breadcrumb):not(.cards) li{
  list-style:disc;padding:.25rem 0;color:var(--c-grey-700);
}
.content ol{margin:1rem 0 1.5rem;padding-left:1.5rem}
.content ol li{padding:.25rem 0;color:var(--c-grey-700)}
/* .prose: sadece tipografi/içerik stilleri — genişlik ve hizalama .container'a bırakılır */
.prose a{color:var(--c-red);font-weight:600}

/* Iframe responsive */
iframe{max-width:100%}

/* Print */
@media print{
  .site-header,.site-footer,.fab-call,.cta,.hero__card,.topbar,.nav-toggle{display:none!important}
  body{color:#000;background:#fff;padding:0}
  a{color:#000;text-decoration:underline}
}

/* Reduced motion */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  html{scroll-behavior:auto}
}

/* ============================================================
   HOMEPAGE — KURUMSAL BILESENLER (v3)
   ============================================================ */

/* Hero — daha kurumsal */
.hero--v3{
  position:relative;color:#fff;
  background:
    radial-gradient(1200px 600px at 80% 0%,rgba(211,47,47,.45),transparent 70%),
    radial-gradient(900px 500px at 0% 100%,rgba(255,193,7,.18),transparent 60%),
    linear-gradient(135deg,#0f1419 0%,#1a1f2e 60%,#3a0a0a 100%);
  overflow:hidden;
}
.hero--v3::before{
  content:"";position:absolute;inset:0;
  background-image:
    repeating-linear-gradient(45deg,transparent 0,transparent 60px,rgba(255,255,255,.025) 60px,rgba(255,255,255,.025) 61px);
  pointer-events:none;
}
.hero--v3 .hero__inner{position:relative;z-index:2;display:grid;grid-template-columns:1.35fr 1fr;gap:3rem;padding:4.5rem 1.25rem 5rem;align-items:center}
@media (max-width:1024px){.hero--v3 .hero__inner{grid-template-columns:1fr;padding:3rem 1.25rem 3rem;gap:2rem}}
.hero--v3 h1{color:#fff;font-size:clamp(2rem,4.8vw,3.5rem);line-height:1.1;letter-spacing:-.02em}
.hero--v3 h1 span{display:block;color:var(--c-yellow);font-size:.65em;font-weight:800;margin-top:.25rem}
.hero--v3 .hero__lead{font-size:1.1rem;color:#e5e7eb;max-width:640px;margin:.5rem 0 1.5rem}
.hero--v3 .hero__lead strong{color:#fff}
.hero--v3 .badge{
  display:inline-flex;align-items:center;gap:.5rem;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  padding:.45rem .9rem;border-radius:999px;font-weight:700;font-size:.85rem;color:#fff;
  margin-bottom:1.25rem;
}
.hero--v3 .hero__cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}
.hero--v3 .hero__cta .btn--call{
  background:#fff;color:var(--c-red);font-size:1.1rem;padding:1rem 1.85rem;text-shadow:none;
  box-shadow:0 12px 30px rgba(0,0,0,.35);
}
.hero--v3 .hero__cta .btn--call:hover{background:var(--c-yellow);color:#1a1f2e}
.hero--v3 .hero__cta .btn--wa{background:var(--c-wa);color:#fff;font-size:1.05rem;padding:1rem 1.6rem}
.hero--v3 .hero__features{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;color:#cbd5e1}
.hero--v3 .hero__features li{display:flex;align-items:center;gap:.4rem;font-size:.95rem;font-weight:600;padding:0;list-style:none}
.hero--v3 .hero__features li::before{content:"✓";color:var(--c-yellow);font-weight:900}

.hero__card--v3{
  background:linear-gradient(180deg,#fff 0%,#fafbfc 100%);
  color:var(--c-grey-900);
  border-radius:18px;
  padding:1.85rem 1.5rem;
  box-shadow:0 30px 70px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.05);
  position:relative;
}
.hero__card--v3::after{
  content:"7/24";position:absolute;top:-14px;right:18px;
  background:var(--c-yellow);color:#1a1f2e;padding:.4rem .85rem;border-radius:999px;
  font-weight:900;font-size:.85rem;letter-spacing:.04em;
  box-shadow:0 8px 20px rgba(255,193,7,.4);
}
.hero__card--v3 h2{font-size:1.4rem;margin-bottom:.4rem;color:var(--c-grey-900)}
.hero__card--v3 .quick-form label{display:block;margin-bottom:.85rem;font-weight:600;font-size:.85rem;color:var(--c-grey-700)}
.hero__card--v3 .quick-form input,
.hero__card--v3 .quick-form select{
  display:block;width:100%;padding:.75rem .95rem;margin-top:.3rem;
  border:1px solid var(--c-grey-300);border-radius:10px;font-size:.95rem;
  background:#fff;transition:border var(--t),box-shadow var(--t);
}
.hero__card--v3 .quick-form input:focus,
.hero__card--v3 .quick-form select:focus{outline:none;border-color:var(--c-red);box-shadow:0 0 0 3px rgba(211,47,47,.15)}
.hero__card--v3 .btn--block{width:100%;margin-top:.85rem;padding:.95rem;font-size:1rem}
.hero__card--v3 small{display:block;margin-top:.5rem;color:var(--c-grey-500);font-size:.78rem;text-align:center}

/* USP marquee bar */
.usp-bar{
  background:#fff;border-bottom:1px solid #eef0f4;border-top:1px solid #eef0f4;
  padding:1.5rem 0;position:relative;
}
.usp-bar__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;align-items:center;text-align:center}
.usp-bar__item{display:flex;flex-direction:column;align-items:center;gap:.2rem}
.usp-bar__item .ico{
  width:48px;height:48px;border-radius:14px;
  background:linear-gradient(135deg,#fee2e2,#fecaca);
  display:grid;place-items:center;
  font-size:1.4rem;margin-bottom:.4rem;
  box-shadow:inset 0 0 0 1px rgba(211,47,47,.1);
}
.usp-bar__item strong{font-size:1.15rem;color:var(--c-grey-900);font-weight:800}
.usp-bar__item span{font-size:.85rem;color:var(--c-grey-500);font-weight:500}
@media (max-width:760px){.usp-bar__grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}

/* Section heading center */
.section__head--center{text-align:center;max-width:780px;margin:0 auto 3rem}
.section__head--center h2{font-size:clamp(1.85rem,3.6vw,2.6rem);margin-bottom:.85rem}
.section__head--center .eyebrow{
  display:inline-block;color:var(--c-red);font-weight:800;
  letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;
  background:rgba(211,47,47,.08);padding:.35rem .75rem;border-radius:999px;
  margin-bottom:1rem;
}
.section__head--center p{color:var(--c-grey-500);font-size:1.08rem;line-height:1.65;max-width:680px;margin:0 auto}

/* Service cards v2 (homepage rich) */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
@media (max-width:880px){.svc-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.svc-grid{grid-template-columns:1fr}}
.svc{
  position:relative;background:#fff;border-radius:18px;padding:2rem 1.85rem;
  border:1px solid #eef0f4;box-shadow:var(--shadow-sm);
  transition:all .35s ease;display:flex;flex-direction:column;
  overflow:hidden;
}
.svc::before{
  content:"";position:absolute;left:0;right:0;top:0;height:4px;
  background:linear-gradient(90deg,var(--c-red),var(--c-yellow-dark));
  transform:scaleX(0);transform-origin:left;transition:transform .35s ease;
}
.svc:hover{transform:translateY(-6px);box-shadow:0 20px 45px rgba(15,20,25,.12);border-color:#fde68a}
.svc:hover::before{transform:scaleX(1)}
.svc__icon{
  width:56px;height:56px;border-radius:14px;display:grid;place-items:center;
  font-size:1.65rem;margin-bottom:1rem;
  background:linear-gradient(135deg,#fff5d6 0%,#ffd966 100%);
  box-shadow:inset 0 0 0 1px rgba(251,140,0,.15),0 4px 12px rgba(251,140,0,.18);
  transition:transform var(--t);
}
.svc:hover .svc__icon{transform:scale(1.1) rotate(-6deg)}
.svc h3{font-size:1.25rem;margin-bottom:.5rem;color:var(--c-grey-900)}
.svc h3 a{color:inherit}
.svc p{color:var(--c-grey-500);font-size:.95rem;flex:1;margin-bottom:1rem}
.svc__list{margin:.5rem 0 1rem;padding:0;list-style:none}
.svc__list li{font-size:.86rem;color:var(--c-grey-700);padding:.15rem 0;display:flex;align-items:center;gap:.4rem}
.svc__list li::before{content:"›";color:var(--c-red);font-weight:900}
.svc__more{font-weight:800;color:var(--c-red);font-size:.95rem;display:inline-flex;align-items:center;gap:.3rem;align-self:flex-start;transition:gap var(--t)}
.svc__more:hover{gap:.6rem;text-decoration:none}

/* Process / steps v3 (rich) */
.process{
  position:relative;
  display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;
  margin:0;padding:0 0 1.5rem;list-style:none;
  counter-reset:none;
}
.process>li,.process>li::marker{list-style:none;content:none}
.process>li{padding-left:0;margin:1.5rem 0 0}
@media (max-width:880px){.process{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.process{grid-template-columns:1fr}}
.process__item{
  position:relative;background:#fff;border-radius:16px;
  padding:1.85rem 1.5rem 1.5rem;text-align:center;
  box-shadow:var(--shadow-sm);border:1px solid #eef0f4;
}
.process__num{
  position:absolute;top:-22px;left:50%;transform:translateX(-50%);
  width:48px;height:48px;border-radius:50%;
  background:linear-gradient(135deg,var(--c-red),var(--c-red-dark));
  color:#fff;display:grid;place-items:center;font-weight:900;font-size:1.2rem;
  box-shadow:0 8px 20px rgba(211,47,47,.4);
}
.process__item h3{margin-top:.85rem;font-size:1.08rem}
.process__item p{font-size:.9rem;color:var(--c-grey-500);margin:0}

/* Why two-col v3 */
.why-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:3rem;align-items:center}
@media (max-width:880px){.why-grid{grid-template-columns:1fr;gap:2rem}}
.why-grid .ticks{margin:1rem 0 1.5rem;padding:0;list-style:none}
.why-grid .ticks li{
  padding:.65rem 0 .65rem 2rem;
  display:block;
  border-bottom:1px solid #eef0f4;
  color:var(--c-grey-700);
  position:relative;
  list-style:none;
}
.why-grid .ticks li:last-child{border-bottom:0}
.why-grid .ticks li::before{
  content:"";position:absolute;left:0;top:.85rem;
  width:1.3rem;height:1.3rem;border-radius:50%;
  background:var(--c-success);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='white'><path d='M6.5 11.5L3 8l1.4-1.4L6.5 8.7l5.1-5.1L13 5z'/></svg>");
  background-size:75% 75%;background-position:center;background-repeat:no-repeat;
}
.why-grid .ticks li strong{color:var(--c-grey-900);margin-right:.25rem}
.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.stat{
  background:linear-gradient(135deg,#fff 0%,#fafbfc 100%);
  border:1px solid #eef0f4;border-radius:16px;
  padding:1.5rem 1.25rem;text-align:center;
  box-shadow:var(--shadow-sm);
  transition:transform var(--t);
}
.stat:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.stat strong{display:block;font-size:2rem;color:var(--c-red);font-weight:900;line-height:1;margin-bottom:.35rem}
.stat span{font-size:.85rem;color:var(--c-grey-500);font-weight:600}

/* Region cards v3 */
.region-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
@media (max-width:1024px){.region-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){.region-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:420px){.region-grid{grid-template-columns:1fr}}
.region-card{
  position:relative;display:block;background:#fff;
  border-radius:14px;padding:1.4rem 1.25rem;
  border:1px solid #eef0f4;box-shadow:var(--shadow-sm);
  transition:all .3s ease;color:var(--c-grey-900);
  overflow:hidden;
}
.region-card::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(135deg,var(--c-red),var(--c-red-dark));
  opacity:0;transition:opacity .3s ease;z-index:0;
}
.region-card>*{position:relative;z-index:1}
.region-card__pin{
  display:inline-grid;place-items:center;
  width:42px;height:42px;border-radius:12px;
  background:linear-gradient(135deg,rgba(211,47,47,.12),rgba(211,47,47,.06));
  color:var(--c-red);
  margin-bottom:.85rem;
  border:1px solid rgba(211,47,47,.18);
  transition:all .3s ease;
}
.region-card__pin svg{width:20px;height:20px;display:block}
.region-card strong{display:block;font-size:1.1rem;font-weight:800;color:var(--c-grey-900);margin-bottom:.2rem;transition:color .3s ease}
.region-card span{display:block;font-size:.82rem;color:var(--c-grey-500);font-weight:500;transition:color .3s ease}
.region-card:hover{transform:translateY(-3px);text-decoration:none;border-color:transparent;box-shadow:0 16px 32px rgba(211,47,47,.25)}
.region-card:hover::before{opacity:1}
.region-card:hover .region-card__pin{background:rgba(255,255,255,.2);color:#fff;border-color:rgba(255,255,255,.3)}
.region-card:hover strong,.region-card:hover span{color:#fff}

/* Reviews v3 */
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
@media (max-width:880px){.reviews-grid{grid-template-columns:1fr}}
.review-card{
  background:#fff;border-radius:18px;padding:1.85rem 1.65rem 1.5rem;
  box-shadow:var(--shadow-sm);border:1px solid #eef0f4;
  position:relative;display:flex;flex-direction:column;
  overflow:hidden;
}
.review-card::before{
  content:"\201C";
  position:absolute;top:.5rem;right:1.25rem;
  font-size:5rem;color:var(--c-red);
  line-height:.8;font-family:Georgia,serif;opacity:.12;
  pointer-events:none;
}
.review-card__stars{color:var(--c-yellow-dark);font-size:1rem;letter-spacing:.1em;margin-bottom:.75rem;position:relative;z-index:1}
.review-card blockquote{margin:0 0 1.25rem;padding:0;font-size:.95rem;color:var(--c-grey-700);font-style:italic;line-height:1.65;flex:1;position:relative;z-index:1}
.review-card figcaption{font-size:.85rem;color:var(--c-grey-500);font-weight:600;border-top:1px solid #eef0f4;padding-top:.85rem;margin:0;position:relative;z-index:1}
.review-card figcaption strong{color:var(--c-grey-900);display:block;margin-bottom:.15rem;font-size:.95rem}

/* FAQ v3 (richer) */
.faq--v3{max-width:880px;margin:0 auto}

/* Service area band */
.area-band{
  background:linear-gradient(135deg,#0f1419 0%,#1a1f2e 100%);
  color:#fff;padding:3rem 0;text-align:center;
  position:relative;overflow:hidden;
}
.area-band::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(800px 400px at 50% 0,rgba(211,47,47,.35),transparent 70%);
}
.area-band>.container{position:relative;z-index:1}
.area-band h2{color:#fff;margin-bottom:.5rem}
.area-band p{color:#cbd5e1;font-size:1.05rem;margin-bottom:1.5rem}
.area-band__chips{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}
.area-band__chips a{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;padding:.5rem 1rem;border-radius:999px;font-size:.9rem;font-weight:600;
  transition:all var(--t);
}
.area-band__chips a:hover{background:var(--c-red);border-color:var(--c-red);color:#fff;transform:translateY(-2px);text-decoration:none}

/* Section spacing — homepage */
.section--lg{padding:5rem 0}
@media (max-width:760px){.section--lg{padding:3rem 0}}

/* ============================================================
   HIZMET BOLGELERI — KURUMSAL SAYFA BILESENLERI
   ============================================================ */

/* Page hero (inner pages) — koyu gradient versiyon */
.page-hero--dark{
  position:relative;color:#fff;padding:3.5rem 0 4rem;
  background:
    radial-gradient(900px 500px at 80% 0%,rgba(211,47,47,.45),transparent 70%),
    linear-gradient(135deg,#0f1419 0%,#1a1f2e 60%,#3a0a0a 100%);
  overflow:hidden;
}
.page-hero--dark::before{
  content:"";position:absolute;inset:0;
  background-image:repeating-linear-gradient(45deg,transparent 0,transparent 60px,rgba(255,255,255,.025) 60px,rgba(255,255,255,.025) 61px);
}
.page-hero--dark>.container{position:relative;z-index:1}
.page-hero--dark .breadcrumb{margin-bottom:1rem}
.page-hero--dark .breadcrumb a,.page-hero--dark .breadcrumb li{color:#cbd5e1}
.page-hero--dark .breadcrumb a:hover{color:#fff}
.page-hero--dark .breadcrumb li:last-child{color:var(--c-yellow)}
.page-hero--dark h1{color:#fff;font-size:clamp(1.85rem,4vw,3rem);max-width:800px}
.page-hero--dark .lead{color:#e5e7eb;font-size:1.1rem;max-width:780px;margin-top:.5rem}
.page-hero--dark .badge{
  display:inline-flex;align-items:center;gap:.5rem;
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  padding:.4rem .85rem;border-radius:999px;font-weight:700;font-size:.82rem;color:#fff;
  margin-bottom:1rem;
}
.page-hero--dark .stats-row{
  display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;
  margin-top:2rem;
}
@media (max-width:760px){.page-hero--dark .stats-row{grid-template-columns:repeat(2,1fr)}}
.page-hero--dark .stats-row div{
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  border-radius:14px;padding:1rem 1.25rem;backdrop-filter:blur(8px);
}
.page-hero--dark .stats-row strong{display:block;font-size:1.6rem;color:var(--c-yellow);font-weight:900;line-height:1}
.page-hero--dark .stats-row span{display:block;font-size:.82rem;color:#cbd5e1;margin-top:.2rem}

/* Province (il) blocks — kurumsal */
.province{
  background:#fff;border-radius:18px;
  padding:2rem 1.85rem;
  border:1px solid #eef0f4;box-shadow:var(--shadow-sm);
  margin-bottom:1.5rem;overflow:hidden;position:relative;
  transition:box-shadow .35s ease;
}
.province:hover{box-shadow:0 18px 40px rgba(15,20,25,.10)}
.province__head{
  display:flex;align-items:center;gap:1rem;
  padding-bottom:1.25rem;margin-bottom:1.25rem;border-bottom:1px solid #eef0f4;
  flex-wrap:wrap;
}
.province__flag{
  width:56px;height:56px;border-radius:14px;
  display:grid;place-items:center;
  background:linear-gradient(135deg,var(--c-red),var(--c-red-dark));
  color:#fff;font-size:1.5rem;font-weight:900;
  box-shadow:0 8px 20px rgba(211,47,47,.3);flex-shrink:0;
}
.province__title{flex:1;min-width:200px}
.province__title h2{margin:0 0 .15rem;font-size:1.5rem;color:var(--c-grey-900)}
.province__title p{margin:0;color:var(--c-grey-500);font-size:.92rem}
.province__cta{display:flex;gap:.5rem;flex-wrap:wrap}
.province__cta .btn{padding:.6rem 1rem;font-size:.9rem}

.province__list{
  display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem .85rem;
  margin:0;padding:0;list-style:none;
}
@media (max-width:760px){.province__list{grid-template-columns:repeat(2,1fr)}}
@media (max-width:420px){.province__list{grid-template-columns:1fr}}
.province__list li{padding:0}
.province__list a{
  display:flex;align-items:center;gap:.55rem;
  padding:.7rem .85rem;border-radius:10px;
  background:#fafbfc;border:1px solid #eef0f4;
  color:var(--c-grey-900);font-weight:600;font-size:.92rem;
  transition:all var(--t);
}
.province__list a::before{content:"›";color:var(--c-red);font-weight:900;font-size:1.1rem}
.province__list a:hover{
  background:var(--c-red);color:#fff;border-color:var(--c-red);
  text-decoration:none;transform:translateX(3px);
}
.province__list a:hover::before{color:#fff}
.province__list span.muted{color:var(--c-grey-500);font-weight:500;background:transparent;border:1px dashed #eef0f4;padding:.7rem .85rem;border-radius:10px;font-size:.9rem;display:flex;align-items:center;gap:.55rem}
.province__list span.muted::before{content:"○";color:var(--c-grey-300);font-weight:900}

/* Coverage info row */
.coverage-info{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;
  margin-top:1.25rem;padding-top:1.25rem;border-top:1px dashed #eef0f4;
}
@media (max-width:760px){.coverage-info{grid-template-columns:1fr;gap:.5rem}}
.coverage-info div{display:flex;align-items:center;gap:.65rem;font-size:.88rem;color:var(--c-grey-700)}
.coverage-info strong{color:var(--c-grey-900)}
.coverage-info .ico{
  width:34px;height:34px;border-radius:10px;
  background:rgba(211,47,47,.08);color:var(--c-red);
  display:grid;place-items:center;font-size:1rem;flex-shrink:0;
}

/* Coverage map placeholder block */
.coverage-band{
  background:linear-gradient(135deg,#fff7d6 0%,#ffe89a 100%);
  border:1px solid #f5d65a;border-radius:18px;
  padding:2rem 1.85rem;text-align:center;margin:2.5rem 0;
  box-shadow:0 8px 24px rgba(251,140,0,.18);
}
.coverage-band h3{font-size:1.3rem;margin-bottom:.4rem;color:var(--c-grey-900)}
.coverage-band p{margin:0 auto 1.25rem;max-width:640px;color:var(--c-grey-700)}
.coverage-band .btn--call{font-size:1.05rem;padding:.95rem 1.65rem}

/* Long mesafe band */
.long-distance{
  background:linear-gradient(135deg,#0f1419 0%,#1a1f2e 100%);
  color:#fff;border-radius:18px;padding:2.5rem 2rem;
  margin:2.5rem 0;text-align:center;position:relative;overflow:hidden;
}
.long-distance::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(600px 300px at 50% 0,rgba(211,47,47,.35),transparent 70%);
}
.long-distance>*{position:relative;z-index:1}
.long-distance h3{color:#fff;font-size:1.4rem;margin-bottom:.5rem}
.long-distance p{color:#cbd5e1;max-width:680px;margin:0 auto 1.25rem}
.long-distance .chip-list{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:1.5rem}
.long-distance .chip-list span{
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);
  padding:.45rem .9rem;border-radius:999px;font-size:.88rem;font-weight:600;
}

/* ============================================================
   SERVICE & INNER PAGES — KURUMSAL
   ============================================================ */

/* Inner page hero (kurumsal v4 — koyu, okunaklı, premium) */
.page-hero--light{
  position:relative;
  color:#fff;
  padding:3.5rem 0 4rem;
  background:
    radial-gradient(900px 500px at 100% 0%,rgba(211,47,47,.55),transparent 60%),
    radial-gradient(700px 400px at 0% 100%,rgba(255,193,7,.18),transparent 65%),
    linear-gradient(135deg,#0f1419 0%,#1a1f2e 55%,#3a0a0a 100%);
  overflow:hidden;
  border-bottom:3px solid var(--c-yellow);
}
.page-hero--light::before{
  content:"";position:absolute;inset:0;
  background-image:repeating-linear-gradient(45deg,transparent 0,transparent 60px,rgba(255,255,255,.03) 60px,rgba(255,255,255,.03) 61px);
  pointer-events:none;
}
.page-hero--light::after{
  content:"";position:absolute;top:-80px;right:-80px;width:380px;height:380px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,193,7,.18),transparent 70%);
  pointer-events:none;
}
.page-hero--light>.container{position:relative;z-index:1}
.page-hero--light .breadcrumb{margin-bottom:1.25rem}
.page-hero--light .breadcrumb,
.page-hero--light .breadcrumb a,
.page-hero--light .breadcrumb li{color:#cbd5e1}
.page-hero--light .breadcrumb a:hover{color:#fff;text-decoration:underline}
.page-hero--light .breadcrumb li:last-child{color:var(--c-yellow);font-weight:600}
.page-hero--light .breadcrumb li+li::before{color:rgba(255,255,255,.35)}
.page-hero--light h1{
  color:#fff;margin-bottom:.85rem;
  font-size:clamp(1.85rem,4vw,3.1rem);line-height:1.15;letter-spacing:-.015em;
  text-shadow:0 2px 14px rgba(0,0,0,.35);
}
.page-hero--light .lead{
  color:#e5e7eb;font-size:1.1rem;max-width:780px;margin:0;line-height:1.65;
}
.page-hero--light .lead strong{color:#fff}
.page-hero--light .badge{
  display:inline-flex;align-items:center;gap:.5rem;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.22);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  color:#fff;
  padding:.45rem .95rem;border-radius:999px;
  font-weight:700;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;
  margin-bottom:1.15rem;
}
.page-hero--light .hero-actions{
  display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;
}
.page-hero--light .hero-actions .btn--call{
  background:#fff;color:var(--c-red);text-shadow:none;
  font-size:1rem;padding:.85rem 1.5rem;font-weight:800;
  box-shadow:0 12px 28px rgba(0,0,0,.3);
}
.page-hero--light .hero-actions .btn--call:hover,
.page-hero--light .hero-actions .btn--call:focus-visible{
  background:var(--c-yellow);color:#1a1f2e;
}
.page-hero--light .hero-actions .btn--wa{
  background:var(--c-wa);color:#fff;font-size:1rem;padding:.85rem 1.5rem;
  box-shadow:0 12px 28px rgba(37,211,102,.35);
}

/* Inner page page-hero--dark (already kurumsal) — match the dark hero look */
.page-hero{padding:3.5rem 0 4rem}

/* Service feature grid (3-col) */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.15rem;margin:2rem 0}
@media (max-width:880px){.feat-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.feat-grid{grid-template-columns:1fr}}
.feat{
  background:#fff;border:1px solid #eef0f4;border-radius:14px;
  padding:1.5rem 1.35rem;box-shadow:var(--shadow-sm);transition:all .3s ease;
}
.feat:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#fde68a}
.feat__icon{
  width:48px;height:48px;border-radius:12px;display:grid;place-items:center;
  background:linear-gradient(135deg,#fee2e2,#fecaca);
  font-size:1.3rem;margin-bottom:.85rem;
}
.feat h3{font-size:1.05rem;margin-bottom:.4rem;color:var(--c-grey-900)}
.feat p{font-size:.9rem;color:var(--c-grey-500);margin:0}

/* Numbered steps inline */
.steps-inline{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:2rem 0}
@media (max-width:880px){.steps-inline{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.steps-inline{grid-template-columns:1fr}}
.step-item{
  background:#fff;border:1px solid #eef0f4;border-radius:14px;
  padding:1.35rem 1.15rem;text-align:center;position:relative;
}
.step-item__num{
  display:inline-grid;place-items:center;width:38px;height:38px;
  border-radius:50%;background:linear-gradient(135deg,var(--c-red),var(--c-red-dark));
  color:#fff;font-weight:900;margin-bottom:.65rem;font-size:1rem;
  box-shadow:0 6px 16px rgba(211,47,47,.3);
}
.step-item h3{font-size:.95rem;margin-bottom:.3rem}
.step-item p{font-size:.82rem;color:var(--c-grey-500);margin:0}

/* Pros & cons / 2 col content */
.split-2{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:2rem 0}
@media (max-width:760px){.split-2{grid-template-columns:1fr}}
.split-card{
  background:#fff;border:1px solid #eef0f4;border-radius:14px;
  padding:1.65rem 1.5rem;box-shadow:var(--shadow-sm);
}
.split-card h3{font-size:1.15rem;margin-bottom:.85rem;color:var(--c-grey-900);padding-bottom:.5rem;border-bottom:2px solid var(--c-red);display:inline-block}
.split-card ul{margin:0;padding:0;list-style:none}
.split-card ul li{padding:.45rem 0;font-size:.92rem;color:var(--c-grey-700);display:flex;gap:.55rem;align-items:flex-start}
.split-card ul li::before{content:"✓";color:var(--c-success);font-weight:900;flex-shrink:0;margin-top:.05em}

/* Info banner */
.info-banner{
  background:linear-gradient(135deg,#eff6ff 0%,#dbeafe 100%);
  border:1px solid #bfdbfe;border-radius:14px;
  padding:1.25rem 1.35rem;margin:1.5rem 0;
  display:flex;gap:1rem;align-items:flex-start;
}
.info-banner__ico{
  width:42px;height:42px;border-radius:10px;background:#3b82f6;color:#fff;
  display:grid;place-items:center;font-size:1.25rem;flex-shrink:0;
}
.info-banner__txt{flex:1}
.info-banner h4{margin:0 0 .25rem;color:#1e3a8a;font-size:1.02rem}
.info-banner p{margin:0;font-size:.9rem;color:#1e40af}

/* Pricing/comparison table */
.price-table{
  width:100%;border-collapse:collapse;margin:1.5rem 0;
  background:#fff;border-radius:12px;overflow:hidden;
  box-shadow:var(--shadow-sm);border:1px solid #eef0f4;
}
.price-table th,.price-table td{padding:.85rem 1rem;text-align:left;font-size:.92rem;border-bottom:1px solid #eef0f4}
.price-table th{background:linear-gradient(135deg,var(--c-red),var(--c-red-dark));color:#fff;font-weight:700}
.price-table tr:last-child td{border-bottom:0}
.price-table tr:nth-child(even) td{background:#fafbfc}
.price-table tr:hover td{background:#fef3c7}

/* Mini-CTA bar (horizontal) */
.mini-cta{
  background:linear-gradient(135deg,var(--c-red),var(--c-red-dark));color:#fff;
  border-radius:14px;padding:1.5rem 1.85rem;margin:2rem 0;
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;
  box-shadow:0 12px 30px rgba(211,47,47,.3);
}
.mini-cta__txt h3{color:#fff;margin:0 0 .15rem;font-size:1.15rem}
.mini-cta__txt p{margin:0;color:rgba(255,255,255,.9);font-size:.9rem}
.mini-cta .btn--call{background:#fff;color:var(--c-red);text-shadow:none;font-weight:800;padding:.85rem 1.5rem}
.mini-cta .btn--call:hover{background:var(--c-yellow);color:#1a1f2e}

/* Town pill list (for region pages) */
.town-pills{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.25rem 0}
.town-pills span,
.town-pills .town-pill-link{
  background:#fff;border:1px solid #eef0f4;
  padding:.45rem .85rem;border-radius:999px;font-size:.85rem;font-weight:600;color:var(--c-grey-700);
  display:inline-flex;align-items:center;gap:.35rem;
  transition:all var(--t);
}
.town-pills span::before,
.town-pills .town-pill-link::before{content:"📍";font-size:.8rem}
.town-pills .town-pill-link{cursor:pointer}
.town-pills .town-pill-link:hover{
  background:var(--c-red);color:#fff;border-color:var(--c-red);
  text-decoration:none;transform:translateY(-2px);
  box-shadow:0 6px 14px rgba(211,47,47,.25);
}

/* Contact info card (for contact page) */
.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin:2rem 0}
@media (max-width:760px){.contact-grid{grid-template-columns:1fr}}
.contact-item{
  background:#fff;border:1px solid #eef0f4;border-radius:16px;
  padding:1.65rem 1.5rem;display:flex;gap:1.15rem;align-items:flex-start;
  box-shadow:var(--shadow-sm);transition:all var(--t);
}
.contact-item:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#fecaca}
.contact-item__ico{
  width:54px;height:54px;border-radius:14px;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--c-red),var(--c-red-dark));color:#fff;
  font-size:1.5rem;flex-shrink:0;
}
.contact-item__body{flex:1;min-width:0}
.contact-item h3{margin:0 0 .25rem;font-size:1rem;color:var(--c-grey-900)}
.contact-item p{margin:0;font-size:.92rem;color:var(--c-grey-700);word-break:break-word}
.contact-item p a{color:var(--c-red);font-weight:700}

/* Timeline (about page) */
.timeline{position:relative;padding-left:2rem;margin:2rem 0}
.timeline::before{content:"";position:absolute;left:14px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,var(--c-red),var(--c-yellow))}
.timeline__item{position:relative;padding-bottom:1.5rem}
.timeline__item::before{
  content:"";position:absolute;left:-26px;top:.3rem;width:14px;height:14px;border-radius:50%;
  background:var(--c-red);border:3px solid #fff;box-shadow:0 0 0 2px var(--c-red);
}
.timeline__year{font-weight:800;color:var(--c-red);font-size:.9rem;letter-spacing:.04em;margin-bottom:.25rem}
.timeline__item h3{margin:0 0 .25rem;font-size:1.05rem}
.timeline__item p{margin:0;color:var(--c-grey-500);font-size:.92rem}

/* Values grid */
.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:2rem 0}
@media (max-width:880px){.values-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.values-grid{grid-template-columns:1fr}}
.value-card{
  background:#fff;border:1px solid #eef0f4;border-radius:14px;
  padding:1.65rem 1.35rem;text-align:center;box-shadow:var(--shadow-sm);
  transition:all var(--t);
}
.value-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.value-card__ico{
  width:54px;height:54px;border-radius:14px;display:grid;place-items:center;
  background:linear-gradient(135deg,#fff5d6 0%,#ffe27a 100%);
  font-size:1.6rem;margin:0 auto .85rem;
  box-shadow:0 6px 14px rgba(251,140,0,.18);
}
.value-card h3{font-size:1.02rem;margin-bottom:.35rem}
.value-card p{margin:0;font-size:.88rem;color:var(--c-grey-500)}

/* Tesekkurler success */
.success-hero{
  background:linear-gradient(135deg,#dcfce7 0%,#bbf7d0 100%);
  border:1px solid #86efac;border-radius:18px;
  padding:3rem 2rem;text-align:center;margin:2rem auto;max-width:680px;
}
.success-hero__check{
  width:90px;height:90px;border-radius:50%;
  background:var(--c-success);color:#fff;
  display:grid;place-items:center;font-size:3rem;font-weight:900;
  margin:0 auto 1.25rem;
  box-shadow:0 16px 32px rgba(22,163,74,.4);animation:popIn .6s cubic-bezier(.34,1.56,.64,1);
}
@keyframes popIn{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}
.success-hero h1{color:#14532d;font-size:2rem;margin-bottom:.5rem}
.success-hero p{color:#166534;font-size:1.05rem;max-width:520px;margin:0 auto 1.5rem}

/* ============================================================
   LOCATION GRID — bolge sayfalarında alt-konum karteleri
   ============================================================ */
.loc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.85rem;margin:1.5rem 0}
@media (max-width:1024px){.loc-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){.loc-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:420px){.loc-grid{grid-template-columns:1fr}}
.loc-card{
  position:relative;display:block;
  background:#fff;border:1px solid #eef0f4;border-radius:12px;
  padding:.95rem 1.1rem;
  color:var(--c-grey-900);
  box-shadow:var(--shadow-sm);
  transition:all var(--t);
  overflow:hidden;
}
.loc-card::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:var(--c-red);
  transform:scaleY(0);transform-origin:top;
  transition:transform var(--t);
}
.loc-card:hover{
  transform:translateY(-2px);
  border-color:var(--c-red);
  text-decoration:none;
  box-shadow:0 12px 24px rgba(211,47,47,.18);
}
.loc-card:hover::before{transform:scaleY(1)}
.loc-card strong{display:block;font-size:.95rem;color:var(--c-grey-900);font-weight:700;line-height:1.3}
.loc-card span{display:block;font-size:.78rem;color:var(--c-grey-500);margin-top:.2rem;font-weight:500}
.loc-card .loc-badge{
  position:absolute;top:.5rem;right:.6rem;
  font-size:.65rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
  padding:.15rem .45rem;border-radius:999px;
  background:rgba(211,47,47,.08);color:var(--c-red);
}
.loc-card[data-type="ilçe"] .loc-badge{background:rgba(59,130,246,.1);color:#2563eb}
.loc-card[data-type="mahalle"] .loc-badge{background:rgba(22,163,74,.1);color:var(--c-success)}
.loc-card[data-type="köy"] .loc-badge{background:rgba(251,140,0,.1);color:var(--c-yellow-dark)}

/* Sitemap page styles */
.sitemap-section{margin-bottom:2.5rem}
.sitemap-section h2{
  font-size:1.4rem;color:var(--c-grey-900);
  padding-bottom:.5rem;border-bottom:2px solid var(--c-red);
  display:inline-block;margin-bottom:1.25rem;
}
.sitemap-list{
  display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem 1rem;
  margin:0;padding:0;list-style:none;
}
@media (max-width:760px){.sitemap-list{grid-template-columns:repeat(2,1fr)}}
@media (max-width:420px){.sitemap-list{grid-template-columns:1fr}}
.sitemap-list li{padding:.35rem 0;font-size:.92rem}
.sitemap-list li a{color:var(--c-grey-700);font-weight:500;transition:all var(--t)}
.sitemap-list li a:hover{color:var(--c-red);padding-left:.4rem;text-decoration:none}
.sitemap-list li a::before{content:"›";color:var(--c-red);margin-right:.4rem;font-weight:900}

/* ============================================================
   FINAL POLISH — Responsive uyum, padding/hizalama düzeltmeleri
   Tüm sayfalar için tek katman üzerinden tutarlılık.
   ============================================================ */

/* --- Container — daha hassas yatay padding --- */
.container{padding-left:1.5rem;padding-right:1.5rem}
@media (max-width:760px){.container{padding-left:1.15rem;padding-right:1.15rem}}
@media (max-width:420px){.container{padding-left:1rem;padding-right:1rem}}

/* --- Section spacing — uniform vertical rhythm --- */
.section{padding:4.5rem 0}
.section--lg{padding:5.5rem 0}
@media (max-width:980px){
  .section{padding:3.5rem 0}
  .section--lg{padding:4rem 0}
}
@media (max-width:560px){
  .section{padding:2.75rem 0}
  .section--lg{padding:3rem 0}
}

/* --- Section heads — mobile spacing fix --- */
.section__head{margin-bottom:2.5rem}
.section__head--center{margin-bottom:2.75rem}
@media (max-width:760px){
  .section__head,.section__head--center{margin-bottom:2rem}
  .section__head--center h2{font-size:clamp(1.55rem,5.5vw,2.1rem)}
  .section__head--center p{font-size:.98rem}
}

/* --- Headings — better mobile scaling --- */
@media (max-width:560px){
  h1{font-size:clamp(1.6rem,6vw,2.2rem) !important;line-height:1.18}
  h2{font-size:clamp(1.4rem,5.5vw,1.85rem) !important;line-height:1.25}
  h3{font-size:1.05rem}
  .content h2{margin-top:1.85rem}
  .content h3{margin-top:1.3rem}
}

/* --- Hero — homepage v3 daha tutarlı padding --- */
.hero--v3 .hero__inner{padding:5rem 1.5rem 5.5rem}
@media (max-width:1024px){
  .hero--v3 .hero__inner{padding:3.5rem 1.5rem 3rem;gap:2rem}
}
@media (max-width:560px){
  .hero--v3 .hero__inner{padding:2.5rem 1.15rem 2rem;gap:1.5rem}
  .hero--v3 .hero__cta{flex-direction:column;width:100%}
  .hero--v3 .hero__cta .btn{width:100%}
  .hero--v3 .hero__features{gap:.4rem .85rem;font-size:.88rem}
  .hero--v3 .hero__features li{font-size:.88rem}
  .hero__card--v3{padding:1.5rem 1.25rem}
  .hero__card--v3 h2{font-size:1.25rem}
}

/* --- Page hero (inner pages) — uniform --- */
.page-hero{padding:3.5rem 0 4rem}
.page-hero--light{padding:3.5rem 0 4rem}
.page-hero--dark{padding:3.5rem 0 4rem}
@media (max-width:760px){
  .page-hero,.page-hero--light,.page-hero--dark{padding:2.5rem 0 3rem}
}
@media (max-width:420px){
  .page-hero,.page-hero--light,.page-hero--dark{padding:2rem 0 2.5rem}
}

/* --- Hero actions — buton hizalama --- */
.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}
@media (max-width:560px){
  .hero-actions{flex-direction:column;width:100%;margin-top:1.25rem}
  .hero-actions .btn{width:100%;justify-content:center}
}

/* --- Breadcrumb — mobile compact --- */
.breadcrumb{
  display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;
  list-style:none;margin:0 0 1rem;padding:0;
  font-size:.85rem;
}
.breadcrumb li{display:inline-flex;align-items:center}
.breadcrumb li+li::before{content:"›";margin:0 .5rem;color:var(--c-grey-500)}
.breadcrumb a{color:var(--c-grey-700);text-decoration:none}
.breadcrumb a:hover{color:var(--c-red);text-decoration:underline}
@media (max-width:480px){
  .breadcrumb{font-size:.78rem;gap:.25rem}
  .breadcrumb li+li::before{margin:0 .35rem}
}

/* --- Topbar — mobil önce daraltma --- */
@media (max-width:980px){
  .topbar__inner{justify-content:center;text-align:center;font-size:.78rem}
  .topbar__item:not(.topbar__item--strong){display:none}
}

/* --- Header — mobil yükseklik --- */
@media (max-width:560px){
  .site-header__inner{padding:.55rem 1rem;min-height:60px}
  .logo__mark{width:42px;height:42px;font-size:.95rem}
  .logo__text{padding:.4rem .75rem;border-radius:10px}
  .logo__text strong{font-size:.95rem}
  .logo__text small{font-size:.68rem}
}

/* --- Cards genel iyileştirme --- */
.card,.svc,.feat,.review-card,.region-card,.stat,.value-card,.contact-item{
  word-wrap:break-word;overflow-wrap:break-word;
}

/* --- Feat-grid mobil --- */
@media (max-width:560px){
  .feat{padding:1.25rem 1.1rem}
  .feat__icon{width:42px;height:42px;font-size:1.15rem;margin-bottom:.65rem}
  .feat h3{font-size:1rem}
  .feat p{font-size:.88rem}
}

/* --- SVC grid mobil --- */
@media (max-width:560px){
  .svc{padding:1.5rem 1.25rem}
  .svc__icon{width:50px;height:50px;font-size:1.4rem;margin-bottom:.75rem}
  .svc h3{font-size:1.1rem}
  .svc p{font-size:.9rem}
}

/* --- Process steps — mobile --- */
@media (max-width:560px){
  .process{padding-top:.5rem;gap:1.5rem}
  .process>li{margin-top:1.5rem}
  .process__item{padding:1.5rem 1rem 1.15rem}
  .process__num{width:40px;height:40px;font-size:1rem}
  .steps-inline{gap:.85rem}
  .step-item{padding:1.1rem .85rem}
  .step-item__num{width:32px;height:32px;font-size:.9rem;margin-bottom:.45rem}
}

/* --- Stat grid mobil --- */
@media (max-width:760px){
  .stat-grid{grid-template-columns:repeat(2,1fr);gap:.85rem}
  .stat{padding:1.15rem .85rem}
  .stat strong{font-size:1.55rem}
  .stat span{font-size:.78rem}
}

/* --- Inline CTA mobil --- */
@media (max-width:480px){
  .inline-cta{padding:1.5rem 1.15rem}
  .inline-cta h3{font-size:1.15rem}
  .inline-cta p{font-size:.9rem}
  .inline-cta .btn--call{font-size:1rem;padding:.85rem 1.25rem;width:100%;justify-content:center}
}

/* --- Mini CTA mobil --- */
@media (max-width:560px){
  .mini-cta{
    flex-direction:column;text-align:center;
    padding:1.35rem 1.15rem;gap:.85rem;
  }
  .mini-cta__txt h3{font-size:1.05rem}
  .mini-cta .btn--call{width:100%;justify-content:center}
}

/* --- CTA banner mobil --- */
@media (max-width:560px){
  .cta{padding:2.75rem 0}
  .cta h2{font-size:1.4rem}
  .cta p{font-size:.95rem;margin-bottom:1.15rem}
  .cta__btns{flex-direction:column;width:100%;gap:.65rem}
  .cta__btns .btn{width:100%;justify-content:center}
}

/* --- Reviews mobil --- */
@media (max-width:560px){
  .review-card{padding:1.5rem 1.25rem 1.25rem}
  .review-card::before{font-size:3.5rem}
  .review-card blockquote{font-size:.9rem}
}

/* --- Region card mobil --- */
@media (max-width:560px){
  .region-card{padding:1.15rem 1rem}
  .region-card__pin{width:36px;height:36px;margin-bottom:.65rem}
  .region-card__pin svg{width:18px;height:18px}
  .region-card strong{font-size:1rem}
}

/* --- Loc card mobil (alt-konum kartları) --- */
@media (max-width:560px){
  .loc-card{padding:.85rem .95rem}
  .loc-card strong{font-size:.9rem}
  .loc-card span{font-size:.74rem}
  .loc-card .loc-badge{font-size:.6rem;padding:.1rem .35rem}
}

/* --- Province blocks (hizmet-bolgelerimiz) mobil --- */
@media (max-width:760px){
  .province{padding:1.5rem 1.25rem}
  .province__head{gap:.75rem}
  .province__flag{width:46px;height:46px;font-size:1.2rem}
  .province__title h2{font-size:1.2rem}
  .province__title p{font-size:.85rem}
  .province__cta .btn{padding:.5rem .85rem;font-size:.85rem}
}
@media (max-width:480px){
  .province__cta{width:100%}
  .province__cta .btn{flex:1;justify-content:center}
  .province__list{gap:.45rem}
  .province__list a{padding:.6rem .75rem;font-size:.88rem}
}

/* --- Coverage info mobil --- */
@media (max-width:760px){
  .coverage-info{gap:.65rem;padding-top:1rem;margin-top:1rem}
}

/* --- Coverage band & long-distance mobil --- */
@media (max-width:560px){
  .coverage-band{padding:1.5rem 1.15rem;margin:1.85rem 0}
  .coverage-band h3{font-size:1.15rem}
  .coverage-band .btn--call{width:100%;justify-content:center}
  .long-distance{padding:1.85rem 1.25rem;margin:1.85rem 0}
  .long-distance h3{font-size:1.2rem}
  .long-distance .chip-list{gap:.4rem;margin-bottom:1.15rem}
  .long-distance .chip-list span{font-size:.8rem;padding:.4rem .7rem}
  .long-distance .btn--call{width:100%;justify-content:center}
}

/* --- Town pills mobil — daha sıkı --- */
@media (max-width:560px){
  .town-pills{gap:.4rem}
  .town-pills span,.town-pills .town-pill-link{
    padding:.4rem .75rem;font-size:.78rem;
  }
}

/* --- USP Bar mobil — yatay sıralı bile olabilir --- */
@media (max-width:480px){
  .usp-bar{padding:1.15rem 0}
  .usp-bar__grid{gap:.85rem}
  .usp-bar__item .ico{width:40px;height:40px;font-size:1.15rem;margin-bottom:.25rem}
  .usp-bar__item strong{font-size:.95rem}
  .usp-bar__item span{font-size:.72rem}
}

/* --- Why-grid mobil --- */
@media (max-width:560px){
  .why-grid .ticks li{padding:.55rem 0 .55rem 1.85rem;font-size:.92rem}
  .why-grid .ticks li::before{width:1.2rem;height:1.2rem;top:.7rem}
}

/* --- Contact-item mobil --- */
@media (max-width:560px){
  .contact-item{padding:1.35rem 1.15rem;gap:.85rem}
  .contact-item__ico{width:46px;height:46px;font-size:1.25rem}
  .contact-item h3{font-size:.95rem}
  .contact-item p{font-size:.88rem}
}

/* --- Timeline mobil --- */
@media (max-width:560px){
  .timeline{padding-left:1.5rem}
  .timeline::before{left:8px}
  .timeline__item::before{left:-22px;width:12px;height:12px}
  .timeline__year{font-size:.82rem}
  .timeline__item h3{font-size:.98rem}
}

/* --- Values grid mobil --- */
@media (max-width:560px){
  .value-card{padding:1.35rem 1.1rem}
  .value-card__ico{width:46px;height:46px;font-size:1.3rem;margin-bottom:.65rem}
  .value-card h3{font-size:.96rem}
  .value-card p{font-size:.82rem}
}

/* --- Tables mobil — overflow handle --- */
.price-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
@media (max-width:560px){
  .price-table th,.price-table td{padding:.65rem .75rem;font-size:.85rem;white-space:nowrap}
}

/* --- Info banner mobil --- */
@media (max-width:560px){
  .info-banner{padding:1.1rem 1rem;gap:.75rem}
  .info-banner__ico{width:36px;height:36px;font-size:1.1rem}
  .info-banner h4{font-size:.95rem}
  .info-banner p{font-size:.85rem}
}

/* --- Split cards mobil --- */
@media (max-width:760px){
  .split-card{padding:1.35rem 1.15rem}
  .split-card h3{font-size:1.05rem}
  .split-card ul li{font-size:.88rem;padding:.4rem 0}
}

/* --- FAQ mobil --- */
@media (max-width:560px){
  .faq summary{padding:.95rem 1rem;padding-right:2.75rem;font-size:.92rem}
  .faq summary::after{font-size:1.3rem;right:.85rem}
  .faq details p{padding:0 1rem 1rem;font-size:.88rem}
}

/* --- Hero card form mobil --- */
@media (max-width:480px){
  .hero__card--v3 .quick-form input,
  .hero__card--v3 .quick-form select{padding:.7rem .8rem;font-size:.92rem}
  .hero__card--v3 .quick-form label{font-size:.82rem;margin-bottom:.7rem}
  .hero__card--v3 small{font-size:.72rem}
}

/* --- Sitemap section mobil --- */
@media (max-width:560px){
  .sitemap-section{margin-bottom:2rem}
  .sitemap-section h2{font-size:1.2rem}
  .sitemap-list li{font-size:.88rem}
}

/* --- Buttons — tüm sayfalarda mobil tutarlılık --- */
@media (max-width:560px){
  .btn{font-size:.95rem;padding:.8rem 1.25rem}
  .btn--lg{font-size:1rem;padding:.95rem 1.5rem}
}

/* --- Footer mobil — daha temiz --- */
@media (max-width:760px){
  .site-footer{padding:2.5rem 0 0;font-size:.88rem}
  .footer-grid{gap:1.85rem}
  .site-footer h4{font-size:.95rem}
  .footer-bottom{font-size:.78rem;padding:1rem 0}
}

/* --- FAB butonları responsive iyileştirme --- */
/* Tablet ve mobile (≤980px): biraz daha kompakt */
@media (max-width:980px){
  .fab-call{padding:.8rem 1.1rem;max-width:calc(58% - 1rem)}
  .fab-call__icon{font-size:1.2rem}
  .fab-call__text strong{font-size:.9rem}
  .fab-call__text span{font-size:.75rem}
  .fab-wa{width:54px;height:54px;font-size:1.5rem}
}
/* Çok küçük ekran (≤380px): sadece ikon */
@media (max-width:380px){
  .fab-call__text{display:none}
  .fab-call{padding:.85rem;border-radius:50%;width:54px;height:54px;justify-content:center}
  .fab-call__icon{font-size:1.5rem}
}

/* --- Body padding for FAB clearance --- */
body{padding-bottom:0}
/* Footer'ın FAB butonlarının altında kalmaması için sadece çok küçük ekranlarda
   footer'a alt padding ekliyoruz */
@media (max-width:560px){
  .footer-bottom{padding-bottom:5rem}
}

/* --- Misafir küçük ekran (≤340px) ek optimizasyon --- */
@media (max-width:340px){
  .container{padding-left:.85rem;padding-right:.85rem}
  h1{font-size:1.5rem !important}
  h2{font-size:1.25rem !important}
  .btn{font-size:.88rem;padding:.7rem 1rem}
  .badge{font-size:.7rem;padding:.3rem .65rem}
}

/* --- Ortak hizalama düzeltmeleri --- */
.prose>*+*{margin-top:0}
.content .prose h2{margin-top:2.25rem}
.content .prose h2:first-child{margin-top:0}
.content .prose h3{margin-top:1.5rem}
.content .prose ul,.content .prose ol{margin:1rem 0 1.5rem;padding-left:1.5rem}
.content .prose ul li,.content .prose ol li{padding:.25rem 0;color:var(--c-grey-700)}

/* --- Genel image responsive --- */
img{max-width:100%;height:auto}

/* --- Smooth scroll behavior — header offset --- */
html{scroll-padding-top:90px}
@media (max-width:980px){html{scroll-padding-top:70px}}

/* --- Focus states — A11y compliance --- */
.btn:focus-visible,
.region-card:focus-visible,
.svc:focus-visible,
.loc-card:focus-visible,
.town-pill-link:focus-visible{
  outline:3px solid var(--c-yellow);outline-offset:2px;
}

/* --- Selection color --- */
::selection{background:var(--c-red);color:#fff}
::-moz-selection{background:var(--c-red);color:#fff}

/* --- Touch-friendly hit areas (a11y) --- */
@media (max-width:980px){
  .mainnav a,
  .breadcrumb a,
  .footer-grid a,
  .topbar a{min-height:44px;display:inline-flex;align-items:center}
  .footer-grid li{padding:.1rem 0}
}

/* --- iOS Safari fixes --- */
input,select,textarea{font-size:16px !important}
@media (max-width:560px){
  .quick-form input,.quick-form select,.quick-form textarea{font-size:16px !important}
}

/* --- Dark mode kabul (bazı tarayıcılar zorlar) --- */
@media (prefers-color-scheme:dark){
  /* Site light tema, zorla light kalsın */
  body{background:#fff;color:var(--c-text)}
}

/* --- Print refinement --- */
@media print{
  .hero--v3,.page-hero--light,.page-hero--dark{
    background:#fff !important;color:#000 !important;
  }
  .hero--v3 *,.page-hero--light *,.page-hero--dark *{color:#000 !important}
  .inline-cta,.mini-cta,.area-band,.long-distance,.coverage-band{
    background:#fff !important;border:1px solid #ccc !important;color:#000 !important;
    box-shadow:none !important;
  }
}

/* ============================================================
   ULTIMATE POLISH — Performance, A11y, Visual Refinement
   v4 — Production-grade optimization
   ============================================================ */

/* --- Modern fluid typography (clamp tabanlı) --- */
:root{
  --fs-xs: clamp(.75rem, .7rem + .25vw, .82rem);
  --fs-sm: clamp(.85rem, .8rem + .3vw, .92rem);
  --fs-base: clamp(.95rem, .9rem + .3vw, 1rem);
  --fs-lg: clamp(1.05rem, 1rem + .3vw, 1.1rem);
  --fs-xl: clamp(1.15rem, 1.05rem + .5vw, 1.3rem);
  --fs-2xl: clamp(1.4rem, 1.2rem + 1vw, 1.85rem);
  --fs-3xl: clamp(1.85rem, 1.5rem + 1.5vw, 2.5rem);
  --fs-4xl: clamp(2.25rem, 1.8rem + 2vw, 3.25rem);

  /* Spacing scale */
  --sp-1: .25rem;
  --sp-2: .5rem;
  --sp-3: .75rem;
  --sp-4: 1rem;
  --sp-5: 1.25rem;
  --sp-6: 1.5rem;
  --sp-8: 2rem;
  --sp-10: 2.5rem;
  --sp-12: 3rem;
  --sp-16: 4rem;
  --sp-20: 5rem;

  /* Borders */
  --border-color: #eef0f4;
  --border-color-strong: #d1d5db;
}

/* --- Reduce motion: animasyonları kapat (a11y) --- */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  .fab-call,.fab-wa{animation: none !important}
}

/* --- High contrast mode desteği (Windows) --- */
@media (forced-colors: active){
  .btn,.card,.feat,.svc{border: 1px solid CanvasText !important}
  .btn--call{background: red !important}
}

/* --- Smooth focus rings (modern) --- */
:focus-visible{
  outline: 3px solid var(--c-yellow);
  outline-offset: 3px;
  border-radius: 6px;
}
button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
  box-shadow: 0 0 0 4px rgba(255,193,7,.25);
}

/* --- Form inputs — better focus state --- */
input:focus,
select:focus,
textarea:focus{
  outline: none;
  border-color: var(--c-red);
  box-shadow: 0 0 0 3px rgba(211,47,47,.15);
}

/* --- Button micro-interactions --- */
.btn{
  position: relative;
  overflow: hidden;
  -webkit-tap-highlight-color: transparent;
}
.btn:active{transform: translateY(0) scale(.98)}

/* --- Loading state placeholder (genel) --- */
[aria-busy="true"]{
  cursor: progress;
  opacity: .65;
  pointer-events: none;
}

/* --- Skeleton loading (gerekirse) --- */
@keyframes skeleton-pulse{
  0%,100%{opacity: 1}
  50%{opacity: .5}
}
.skeleton{
  background: linear-gradient(90deg, #f3f4f6 25%, #e5e7eb 50%, #f3f4f6 75%);
  background-size: 200% 100%;
  animation: skeleton-pulse 1.5s ease-in-out infinite;
  border-radius: 8px;
}

/* --- Sticky header glassmorphism on scroll (modern feel) --- */
.site-header{
  background: rgba(255,255,255,.95);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(238,240,244,.8);
}
@supports not (backdrop-filter: blur(10px)){
  .site-header{background: #fff}
}

/* --- Scrollbar styling (modern browsers) --- */
::-webkit-scrollbar{width: 12px; height: 12px}
::-webkit-scrollbar-track{background: #f3f4f6}
::-webkit-scrollbar-thumb{
  background: var(--c-grey-300);
  border-radius: 6px;
  border: 2px solid #f3f4f6;
}
::-webkit-scrollbar-thumb:hover{background: var(--c-grey-500)}

/* Firefox */
html{
  scrollbar-width: thin;
  scrollbar-color: var(--c-grey-300) #f3f4f6;
}

/* --- Image rendering quality --- */
img{
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
  font-style: italic; /* alt text görünüm iyileştirme */
}

/* --- Better link hover transitions --- */
a{transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease}

/* --- Card hover lift effect — uniform --- */
.card,.svc,.feat,.region-card,.loc-card,.value-card,.contact-item,.review-card{
  will-change: transform;
  transform: translateZ(0); /* GPU acceleration */
  backface-visibility: hidden;
}

/* --- Text rendering optimization --- */
body{
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: "kern" 1, "liga" 1;
  font-variant-ligatures: common-ligatures;
}

/* --- Anchor offset for sticky header (smoother) --- */
:target{scroll-margin-top: 90px}
@media (max-width: 980px){
  :target{scroll-margin-top: 70px}
}

/* --- Selection improvements --- */
::selection{background: var(--c-red); color: #fff; text-shadow: none}
::-moz-selection{background: var(--c-red); color: #fff; text-shadow: none}

/* --- Mobile menu — hamburger animation iyileştirme --- */
.nav-toggle span{
  background: var(--c-grey-900);
  border-radius: 3px;
  transform-origin: center;
}

/* --- Prevent layout shift (CLS optimization) --- */
.hero,.page-hero,.page-hero--light,.page-hero--dark,.cta,.section{
  contain: layout style;
}

/* --- Safe area (notched devices: iPhone X+) --- */
@supports (padding: max(0px)){
  .topbar,.site-header__inner{
    padding-left: max(1.25rem, env(safe-area-inset-left));
    padding-right: max(1.25rem, env(safe-area-inset-right));
  }
  .footer-bottom{
    padding-left: max(1.25rem, env(safe-area-inset-left));
    padding-right: max(1.25rem, env(safe-area-inset-right));
  }
}

/* --- Improved button-link consistency --- */
a.btn,
button.btn{
  text-decoration: none;
  user-select: none;
  -webkit-user-select: none;
}

/* --- Hover lift uniform --- */
.card:hover,.svc:hover,.feat:hover,.region-card:hover,.loc-card:hover,
.value-card:hover,.contact-item:hover{
  transition: transform .25s cubic-bezier(.4,0,.2,1),
              box-shadow .25s cubic-bezier(.4,0,.2,1),
              border-color .25s ease;
}

/* --- Active page indicator — daha güçlü --- */
.mainnav a[aria-current="page"]{
  background: linear-gradient(135deg, rgba(211,47,47,.1), rgba(211,47,47,.05));
  color: var(--c-red);
  font-weight: 700;
}

/* --- Topbar — kompakt mobil --- */
@media (max-width: 480px){
  .topbar{padding: .35rem 0; font-size: .72rem}
  .topbar__inner{gap: .25rem}
}

/* --- Footer micro-grid alignment fix --- */
.footer-grid{align-items: start}

/* --- Logo crisp text --- */
.logo__mark{
  background: linear-gradient(135deg, var(--c-red), var(--c-red-dark));
  color: #fff;
  font-weight: 900;
  letter-spacing: .02em;
}

/* --- Social proof badge styling (Hero) --- */
.badge{transition: transform .2s ease}
.badge:hover{transform: scale(1.02)}

/* --- Improved input number/tel — no spinner --- */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button{
  -webkit-appearance: none;
  margin: 0;
}
input[type="tel"]{font-family: inherit; letter-spacing: .02em}

/* --- ARIA improvements: hidden but accessible --- */
.sr-only{
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* --- Responsive iframe (eğer eklenirse) --- */
iframe{max-width: 100%; border: 0}

/* --- Empty state styling (eğer ihtiyaç olursa) --- */
.empty-state{
  text-align: center;
  padding: 3rem 1.5rem;
  color: var(--c-grey-500);
}

/* --- Hero card — micro animation entrance (sadece desteklenen tarayıcılarda) --- */
@supports (animation-timeline: scroll()){
  .hero__card--v3{
    animation: hero-card-entrance .8s ease-out backwards;
    animation-delay: .2s;
  }
}
@keyframes hero-card-entrance{
  from{opacity: 0; transform: translateY(20px)}
  to{opacity: 1; transform: translateY(0)}
}

/* --- Performance: prevent unused animation memory --- */
.fab-call:not(:hover):not(:focus){animation-play-state: running}

/* --- Better form readability --- */
.quick-form input,
.quick-form select,
.quick-form textarea{
  font-family: inherit;
  color: var(--c-grey-900);
}

/* --- Footer link minimum touch area improvement --- */
.footer-grid li a{
  display: inline-block;
  padding: .35rem 0;
  position: relative;
}
.footer-grid li a::after{
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 0;
  height: 1px;
  background: var(--c-red);
  transition: width .3s ease;
}
.footer-grid li a:hover::after{width: 100%}

/* --- Section divider visibility --- */
.section--alt + .section,
.section + .section--alt{
  border-top: 0;
}

/* --- Hero V3 grid — desktop spacing düzeltmesi --- */
@media (min-width: 1200px){
  .hero--v3 .hero__inner{
    grid-template-columns: 1.4fr 1fr;
    gap: 4rem;
  }
}

/* --- Better mobile menu animations --- */
.mainnav{
  transition: right .3s cubic-bezier(.4,0,.2,1);
}
@media (max-width: 980px){
  .mainnav{box-shadow: -10px 0 40px rgba(0,0,0,.15)}
}

/* --- Touch target compliance (Apple HIG) — 44x44 minimum --- */
@media (pointer: coarse){
  .btn,
  .nav-toggle,
  .fab-call,
  .fab-wa,
  .mainnav a,
  .has-sub > ul a{
    min-height: 44px;
  }
}

/* --- High DPI screens (Retina) — sharper borders --- */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi){
  .border-thin{border-width: .5px}
}

/* --- Subtle entrance animations on load --- */
@keyframes fade-in-up{
  from{opacity: 0; transform: translateY(8px)}
  to{opacity: 1; transform: translateY(0)}
}
.hero__content > *{animation: fade-in-up .6s ease-out backwards}
.hero__content > *:nth-child(1){animation-delay: 0s}
.hero__content > *:nth-child(2){animation-delay: .1s}
.hero__content > *:nth-child(3){animation-delay: .2s}
.hero__content > *:nth-child(4){animation-delay: .3s}
.hero__content > *:nth-child(5){animation-delay: .4s}

@media (prefers-reduced-motion: reduce){
  .hero__content > *{animation: none}
}

/* --- Last polish: tutarlı font-feature settings --- */
h1,h2,h3,h4,h5,h6,
.btn,
.badge{
  font-feature-settings: "kern" 1, "ss01" 1;
}

/* ============================================================
   INDUSTRIAL ZONES — Sanayi Bölgeleri Grid
   ============================================================ */
.industrial-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;
  margin:1.5rem 0;
}
@media (max-width:760px){.industrial-grid{grid-template-columns:1fr}}
.industrial-card{
  background:#fff;border:1px solid var(--border-color);
  border-radius:14px;padding:1.25rem 1.35rem;
  box-shadow:var(--shadow-sm);
  transition:all .25s ease;
  border-left:4px solid var(--c-yellow-dark);
}
.industrial-card:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 28px rgba(15,20,25,.1);
  border-left-color:var(--c-red);
}
.industrial-card__head{
  display:flex;gap:.85rem;align-items:flex-start;margin-bottom:.5rem;
}
.industrial-card__icon{
  width:42px;height:42px;border-radius:10px;
  background:linear-gradient(135deg,#fff5d6,#ffe27a);
  display:grid;place-items:center;font-size:1.25rem;flex-shrink:0;
}
.industrial-card__head>div{display:flex;flex-direction:column;gap:.15rem;flex:1;min-width:0}
.industrial-card__head strong{font-size:1rem;color:var(--c-grey-900);font-weight:800}
.industrial-card__head span{font-size:.78rem;color:var(--c-grey-500);font-weight:600}
.industrial-card p{font-size:.88rem;color:var(--c-grey-700);margin:0;line-height:1.5}
@media (max-width:560px){
  .industrial-card{padding:1rem 1.1rem}
  .industrial-card__icon{width:38px;height:38px;font-size:1.1rem}
  .industrial-card__head strong{font-size:.95rem}
  .industrial-card p{font-size:.85rem}
}


/* ============================================================
   MOBILE FIXES — v2 (sticky header + menu + submenu + FAB collisions)
   ============================================================ */

/* --- Submenu metni kesilmesin (text-overflow ellipsis sorunu) --- */
.mainnav a,
.mainnav .has-sub > ul a {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  word-break: keep-all;
  overflow-wrap: break-word;
  line-height: 1.3;
}

/* --- Mobile menu: daha geniş + submenu padding fix --- */
@media (max-width: 980px) {
  .mainnav {
    /* dar ekranlarda menü genişliğini artır — submenu metinleri sığsın */
    width: min(92%, 380px);
    padding: 4.5rem 1rem 6rem;
  }
  .mainnav > ul {
    gap: .1rem;
  }
  .mainnav > ul > li {
    border-bottom: 1px solid #f1f3f6;
    padding: 0;
  }
  .mainnav > ul > li:last-child {
    border-bottom: 0;
  }
  .mainnav a {
    padding: .9rem .85rem;
    min-height: 48px;
    display: flex;
    align-items: center;
    line-height: 1.25;
  }
  /* submenu — daha rahat ve okunaklı */
  .mainnav .has-sub > ul {
    margin: .15rem 0 .25rem .25rem;
    padding: .35rem .25rem;
    background: #f7f8fa;
    border-radius: 10px;
    border-left: 3px solid var(--c-red);
  }
  .mainnav .has-sub > ul a {
    padding: .7rem .75rem;
    font-size: .92rem;
    color: #4a5160;
    min-height: 44px;
    display: flex;
    align-items: center;
  }
  .mainnav .has-sub > ul a[aria-current="page"] {
    background: #fff;
    color: var(--c-red);
    font-weight: 700;
  }
  /* "Hizmet Bölgeleri" submenu da gizleniyor — fakat test için yorumda kalsın
     .nav-regions > ul { display: none !important; }
     hala build_all.py'da var, alan tasarrufu için kalsın */
}

/* Çok dar ekranlarda (≤360px Galaxy/iPhone SE) menü full-width */
@media (max-width: 380px) {
  .mainnav {
    width: 100%;
    max-width: 100%;
    padding: 4.5rem .85rem 6rem;
  }
  .mainnav a {
    font-size: .98rem;
    padding: .85rem .75rem;
  }
}

/* --- FAB butonları: mobilde çakışmasın --- */
@media (max-width: 480px) {
  .fab-call {
    max-width: calc(100% - 80px);  /* sağdaki WA butonuna alan bırak */
    padding: .75rem 1rem;
    font-size: .88rem;
  }
  .fab-call__text strong { font-size: .88rem; }
  .fab-call__text span { font-size: .72rem; }
  .fab-call__icon { font-size: 1.15rem; }
  .fab-wa {
    width: 52px; height: 52px;
    right: .75rem;
    font-size: 1.4rem;
  }
}

@media (max-width: 380px) {
  .fab-call {
    /* çok dar ekranda yazıyı sakla, sadece ikon ve numara kalsın */
    padding: .7rem .85rem;
    gap: .4rem;
  }
  .fab-call__text strong { display: none; }
  .fab-call__text span { font-size: .85rem; font-weight: 700; }
}

/* --- Sticky header: mobilde header taşmaması ve logo dengeli olsun --- */
@media (max-width: 560px) {
  .site-header__inner {
    padding: .55rem .85rem;
    gap: .5rem;
  }
  .logo__mark {
    width: 40px; height: 40px;
    font-size: .95rem;
  }
  .logo__text {
    padding: .4rem .75rem;
    border-radius: 10px;
  }
  .logo__text strong {
    font-size: .95rem;
    max-width: 60vw;
  }
  .logo__text small {
    font-size: .68rem;
    max-width: 60vw;
  }
  .nav-toggle {
    width: 44px; height: 44px;
  }
}

/* --- Topbar: mobilde sadece acil çağrı görünür (zaten ayarlı, daha kompakt yap) --- */
@media (max-width: 560px) {
  .topbar { font-size: .82rem; padding: .35rem 0; }
  .topbar__inner { padding: 0 .85rem; }
  .topbar__item--strong { font-weight: 700; }
}

/* --- Hero h1 + lead mobilde balanced --- */
@media (max-width: 560px) {
  .hero--v3 h1 {
    font-size: clamp(1.55rem, 7.5vw, 2rem);
    line-height: 1.15;
    letter-spacing: -.01em;
  }
  .hero--v3 h1 span {
    font-size: .72em;
    margin-top: .2rem;
  }
  .hero--v3 .hero__lead,
  .hero__lead {
    font-size: .95rem;
    line-height: 1.55;
  }
  /* Hero CTA butonları full-width tek sütun */
  .hero__cta { gap: .55rem; }
  .hero__cta .btn { flex: 1 1 100%; }
}

/* --- Page hero (iç sayfalar) — mobilde sıkışmasın --- */
.page-hero { overflow-wrap: break-word; word-wrap: break-word; }
@media (max-width: 560px) {
  .page-hero h1 {
    font-size: clamp(1.4rem, 6.5vw, 1.85rem);
    line-height: 1.18;
    letter-spacing: -.005em;
  }
  .page-hero .lead {
    font-size: .95rem;
    line-height: 1.55;
  }
  .page-hero .container {
    padding: 1.5rem 1rem 1.75rem;
  }
  .hero-actions {
    flex-direction: column;
    gap: .5rem;
  }
  .hero-actions .btn { width: 100%; }
  .breadcrumb {
    font-size: .8rem;
    flex-wrap: wrap;
  }
}

/* --- Container padding mobilde --- */
@media (max-width: 560px) {
  .container { padding-left: 1rem; padding-right: 1rem; }
  .prose { font-size: .95rem; line-height: 1.65; }
  .prose h2 { font-size: 1.25rem; line-height: 1.25; margin-top: 1.75rem; }
  .prose h3 { font-size: 1.08rem; line-height: 1.3; }
  .prose ul, .prose ol { padding-left: 1.25rem; }
  .prose p { margin-bottom: .85rem; }
}

/* --- Long words / URLs taşmasın --- */
.prose, .prose p, .prose li, .prose td, .prose th {
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* --- Tables — mobilde scroll yerine kart-stili --- */
@media (max-width: 480px) {
  .price-table {
    border-radius: 10px;
    font-size: .82rem;
  }
  .price-table th,
  .price-table td {
    padding: .55rem .6rem;
    white-space: normal;
    word-break: break-word;
  }
}

/* --- CTA bottom section: FAB'larla çakışmasın --- */
@media (max-width: 480px) {
  .cta {
    padding-bottom: 6rem;  /* fab-call+fab-wa için boşluk */
  }
  .site-footer {
    padding-bottom: 5rem;
  }
}

/* --- Town pills mobilde tıklanabilir hit area artır --- */
@media (max-width: 560px) {
  .town-pills .town-pill-link,
  .town-pills span {
    min-height: 36px;
    display: inline-flex;
    align-items: center;
  }
}

/* --- Quick form (hero'daki) mobilde compact --- */
@media (max-width: 480px) {
  .hero__card,
  .hero__card--v3 {
    padding: 1.1rem;
    border-radius: 12px;
  }
  .hero__card h2,
  .hero__card--v3 h2 {
    font-size: 1.15rem;
    margin-bottom: .5rem;
  }
  .quick-form label {
    margin-bottom: .65rem;
    font-size: .82rem;
  }
  .quick-form input,
  .quick-form select,
  .quick-form textarea {
    padding: .6rem .75rem;
    font-size: 16px !important;  /* iOS zoom önleme */
  }
  .quick-form button {
    padding: .85rem 1rem;
    font-size: .98rem;
  }
}

/* --- Mini-CTA & info-banner mobilde stack --- */
@media (max-width: 560px) {
  .mini-cta {
    flex-direction: column;
    align-items: stretch;
    text-align: center;
    gap: .85rem;
  }
  .mini-cta .btn { width: 100%; }
  .info-banner {
    flex-direction: column;
    text-align: left;
    padding: 1rem;
  }
  .info-banner__ico {
    align-self: flex-start;
  }
}

/* --- USP bar: mobilde 2'li grid daha kompakt --- */
@media (max-width: 480px) {
  .usp-bar { padding: 1.5rem 0; }
  .usp-bar__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
  }
  .usp-bar__item {
    padding: .85rem .5rem;
    font-size: .82rem;
  }
  .usp-bar__item strong { font-size: 1rem; }
  .usp-bar__item .ico { font-size: 1.5rem; }
}

/* --- Process / steps mobilde stack --- */
@media (max-width: 480px) {
  .process,
  .steps,
  .steps-inline {
    grid-template-columns: 1fr;
    gap: .75rem;
  }
  .process__item,
  .step-item {
    padding: 1rem 1.1rem;
  }
}

/* --- Footer mobilde compact + logo align --- */
@media (max-width: 480px) {
  .footer-grid {
    gap: 1.5rem;
  }
  .site-footer h4 {
    font-size: .98rem;
    margin-bottom: .65rem;
  }
  .site-footer ul { padding: 0; }
  .site-footer ul li { margin: .35rem 0; }
  .site-footer a { font-size: .92rem; }
  .footer-bottom {
    text-align: center;
    font-size: .78rem;
  }
}

/* --- Stat grid (Hakkımızda vb.) mobilde 2x --- */
@media (max-width: 560px) {
  .stat-grid,
  .values-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: .65rem;
  }
}
@media (max-width: 380px) {
  .stat-grid,
  .values-grid {
    grid-template-columns: 1fr;
  }
}

/* --- Split-2 cards mobilde stack --- */
@media (max-width: 760px) {
  .split-2 {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}

/* --- Loc-card mobilde min-height ve hizalama --- */
@media (max-width: 560px) {
  .loc-card {
    padding: .9rem .85rem;
    min-height: auto;
  }
  .loc-card strong { font-size: .92rem; }
  .loc-card span { font-size: .78rem; }
  .loc-badge { font-size: .68rem; padding: .15rem .45rem; }
}

/* --- Region card mobilde compact --- */
@media (max-width: 560px) {
  .region-card {
    padding: 1rem .9rem;
    flex-direction: row;
    text-align: left;
    align-items: center;
    gap: .65rem;
  }
  .region-card__pin {
    width: 32px; height: 32px;
    flex-shrink: 0;
  }
  .region-card strong { font-size: .98rem; }
  .region-card span { font-size: .78rem; }
}

/* --- Service cards mobilde compact --- */
@media (max-width: 480px) {
  .svc {
    padding: 1.35rem 1.15rem;
    border-radius: 14px;
  }
  .svc__icon {
    width: 44px; height: 44px;
    font-size: 1.6rem;
    margin-bottom: .65rem;
  }
  .svc h3 { font-size: 1.08rem; line-height: 1.3; margin-bottom: .35rem; }
  .svc p { font-size: .88rem; line-height: 1.5; }
  .svc__list li { font-size: .85rem; }
}

/* --- FAQ details mobilde --- */
@media (max-width: 560px) {
  .faq summary {
    padding: .85rem 1rem;
    font-size: .95rem;
  }
  .faq details > p {
    padding: 0 1rem .85rem;
    font-size: .9rem;
  }
}

/* --- Section padding kompaktlama mobil --- */
@media (max-width: 480px) {
  .section--lg { padding: 2rem 0; }
  .section { padding: 2rem 0; }
  .section__head { margin-bottom: 1.25rem; }
  .section__head h2 {
    font-size: clamp(1.3rem, 5.5vw, 1.6rem);
    line-height: 1.2;
  }
  .section__head p { font-size: .92rem; }
}

/* --- Tap highlight remove (cleaner UX) --- */
* {
  -webkit-tap-highlight-color: rgba(211,47,47,.18);
}

/* --- iOS Safari double-tap zoom önle (interactive elements) --- */
button, a.btn, .nav-toggle, .fab-call, .fab-wa, .has-sub > a {
  touch-action: manipulation;
}

/* --- Sticky header mobilde lig daha incelt --- */
@media (max-width: 480px) {
  .site-header { box-shadow: 0 2px 6px rgba(15,20,25,.08); }
}

/* --- Image responsive (sayfada gerçek img varsa) --- */
img, video, iframe {
  max-width: 100%;
  height: auto;
}

/* --- Skip link mobilde de yer alsın --- */
.skip-link:focus {
  position: fixed;
  top: 1rem;
  left: 1rem;
  z-index: 99999;
  background: var(--c-red);
  color: #fff;
  padding: .6rem 1rem;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 700;
}

/* --- Landscape phone (max-height) — header smaller, FAB still visible --- */
@media (max-height: 480px) and (orientation: landscape) {
  .topbar { display: none; }
  .site-header__inner { padding: .35rem .85rem; min-height: 48px; }
  .logo__mark { width: 36px; height: 36px; }
  .logo__text { padding: .3rem .65rem; border-radius: 8px; }
  .logo__text strong { font-size: .9rem; }
  .logo__text small { font-size: .66rem; }
  .fab-call { padding: .55rem .85rem; font-size: .82rem; }
  .fab-wa { width: 44px; height: 44px; font-size: 1.2rem; }
  .mainnav { padding: 3.5rem 1rem 2rem; }
}

/* --- Animation dampening on small screens (perf) --- */
@media (max-width: 768px) and (prefers-reduced-motion: no-preference) {
  .fab-call { animation-duration: 3.5s; }
  .fab-wa { animation-duration: 3.5s; }
}

/* --- Sub-page hero mobilde renkli border bottom (ayırıcı) --- */
@media (max-width: 560px) {
  .page-hero {
    border-bottom: 3px solid #f1f3f6;
  }
  /* page-hero--light koyu hero olduğu için override etmiyoruz */
}


/* ============================================================
   MOBILE MENU OPEN STATE — viewport lock & no horizontal scroll
   ============================================================ */
@media (max-width: 980px) {
  body.nav-open {
    /* Yatay scroll'u tamamen engelle ve visual scroll-lock */
    overflow: hidden !important;
    position: fixed;
    width: 100%;
    left: 0;
    right: 0;
  }
  /* Menü açıldığında sayfa scroll konumu kaybolmasın diye */
  body.nav-open .site-header {
    position: fixed;
    top: 0; left: 0; right: 0;
    width: 100%;
  }
  /* Sayfa horizontal overflow'u global olarak engelle */
  html, body {
    overflow-x: hidden;
    max-width: 100vw;
  }
  /* Container'ların viewport'tan taşmasını engelle */
  .container {
    max-width: 100%;
    box-sizing: border-box;
  }
  /* Menü tam opaque ve katmanlı olsun */
  .mainnav.is-open {
    background: #ffffff !important;
    box-shadow: -12px 0 35px rgba(0, 0, 0, .25) !important;
  }
}

/* ============================================================
   GLOBAL HORIZONTAL OVERFLOW PREVENTION
   ============================================================ */
html { -webkit-text-size-adjust: 100%; }
body { overflow-x: hidden; }

/* Wide grids / pills shouldn't push viewport */
.feat-grid,
.svc-grid,
.region-grid,
.loc-grid,
.industrial-grid,
.town-pills {
  max-width: 100%;
}


/* ============================================================
   PAGE-HERO READABILITY FIX (oto-kurtarma vb. iç sayfalar)
   ============================================================ */

/* Badge mobilde daha güçlü kontrast — yarı şeffaf olduğu için bazı arka planlarda
   görünmüyordu. Kırmızı dolgu + beyaz metin = en yüksek okunabilirlik */
.page-hero--light .badge,
.page-hero .badge {
  background: rgba(211, 47, 47, .85);
  border-color: rgba(255, 193, 7, .4);
  color: #fff;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .3);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

/* H1 ve lead için daha güçlü gölge — arka planın açık geçtiği bölgelerde de okunaklı kalsın */
.page-hero--light h1 {
  text-shadow: 0 2px 16px rgba(0, 0, 0, .5), 0 1px 3px rgba(0, 0, 0, .35);
}
.page-hero--light .lead {
  color: #f1f5f9;
  text-shadow: 0 1px 4px rgba(0, 0, 0, .4);
}

/* Mobilde hero alanı padding ve düzen optimize */
@media (max-width: 560px) {
  .page-hero--light {
    padding: 1.5rem 0 2rem;
  }
  .page-hero--light::after {
    /* dekoratif sarı dairenin mobilde göze sokulmaması */
    width: 220px; height: 220px;
    top: -50px; right: -50px;
    opacity: .6;
  }
  .page-hero--light .badge {
    font-size: .72rem;
    padding: .4rem .8rem;
    margin-bottom: .85rem;
    letter-spacing: .03em;
  }
  .page-hero--light h1 {
    font-size: clamp(1.45rem, 6.2vw, 1.85rem);
    line-height: 1.18;
    margin-bottom: .65rem;
    letter-spacing: -.005em;
  }
  .page-hero--light .lead {
    font-size: .92rem;
    line-height: 1.5;
    margin-bottom: 0;
  }
  .page-hero--light .hero-actions {
    margin-top: 1.1rem;
    gap: .55rem;
  }
  .page-hero--light .hero-actions .btn {
    width: 100%;
    padding: .85rem 1.25rem;
    font-size: .98rem;
  }
  /* Breadcrumb mobilde küçült */
  .page-hero--light .breadcrumb {
    margin-bottom: .85rem;
    font-size: .8rem;
    gap: .3rem;
  }
}

/* ============================================================
   FAB BUTONLARI — sayfa sonunda ile çakışma giderme
   ============================================================ */

/* HEMEN ARA fab + WhatsApp fab — son CTA'yı engellemesin */
@media (max-width: 980px) {
  body {
    /* footer/CTA üzerine FAB'lar binmesin diye altta yastık */
    padding-bottom: 5.5rem;
  }
}
@media (max-width: 480px) {
  body {
    padding-bottom: 6rem;
  }
}

/* Sayfa içeriği FAB altında kaybolmasın */
.cta:last-of-type {
  margin-bottom: 2rem;
}

/* ============================================================
   GENEL OKUMA / KONTRAST DÜZELTMELERİ
   ============================================================ */

/* Prose içeriğinde linkler vurgulu */
.prose a:not(.btn):not(.town-pill-link):not(.loc-card) {
  color: var(--c-red);
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: rgba(211, 47, 47, .35);
  text-underline-offset: 2px;
}
.prose a:not(.btn):not(.town-pill-link):not(.loc-card):hover {
  text-decoration-color: var(--c-red);
}

/* Strong içerik vurgulu */
.prose strong {
  color: var(--c-grey-900);
  font-weight: 700;
}

/* H2/H3 başlıkları altına ufak ayırıcı */
.prose h2 {
  position: relative;
  padding-bottom: .5rem;
  margin-top: 2.5rem;
  margin-bottom: 1rem;
}
.prose h2::after {
  content: "";
  position: absolute;
  bottom: 0; left: 0;
  width: 48px; height: 3px;
  background: var(--c-red);
  border-radius: 2px;
}

@media (max-width: 560px) {
  .prose h2 {
    margin-top: 1.75rem;
    padding-bottom: .4rem;
  }
  .prose h2::after {
    width: 36px; height: 2px;
  }
}

/* ============================================================
   HEMEN ARA FAB — mobilde daha kompakt
   ============================================================ */
@media (max-width: 480px) {
  .fab-call {
    /* daha küçük dikey padding */
    padding: .7rem .95rem;
    border-radius: 999px;
  }
  .fab-call__icon {
    font-size: 1.2rem;
  }
  .fab-call__text strong {
    font-size: .8rem;
    letter-spacing: .02em;
  }
  .fab-call__text span {
    font-size: .72rem;
    opacity: .92;
  }
}
