/* =========================================================================
   NARDUGAN GLOBAL TRADE — "KORİDOR"
   Konsept: küresel ticaret rastgele akmaz; koridorları izler. Sayfa boyunca
   kendini çizen bir koridor hattı bölümleri birbirine bağlar.
   Palet: Lacivert · Beyaz · Açık Gri — vurgu: Altın + Lojistik Mavisi
   Animasyonlar yalnızca transform ve opacity ile çalışır.
   ========================================================================= */

@font-face { font-family:'Centrale Sans'; src:url('../fonts/CentraleSans-Light.woff2') format('woff2'); font-weight:300; font-style:normal; font-display:swap; }
@font-face { font-family:'Centrale Sans'; src:url('../fonts/CentraleSans-Regular.woff2') format('woff2'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'Centrale Sans'; src:url('../fonts/CentraleSans-Medium.woff2') format('woff2'); font-weight:500; font-style:normal; font-display:swap; }
@font-face { font-family:'Centrale Sans'; src:url('../fonts/CentraleSans-Bold.woff2') format('woff2'); font-weight:700; font-style:normal; font-display:swap; }

/* ------------------------------------------------------------------ tokens */
:root{
  --navy-deep:#071A31;
  --navy:#0E2A4E;
  --navy-soft:#17395F;
  --gold:#C8963C;          /* koyu zeminlerde metin + her yerde dekoratif çizgi */
  --gold-l:#E0B75F;        /* koyu zeminde vurgu */
  --gold-ink:#8A6415;      /* AÇIK zeminde küçük metin — beyazda 5.4:1, gride 5.0:1 (AA) */
  --blue:#2E7FC2;
  --blue-l:#5FA8DF;

  --white:#FFFFFF;
  --gray:#F4F6F9;
  --gray-2:#EAEFF5;
  --line:#E2E7EE;
  --steel:#6E809C;      /* dekoratif sıra numaraları — beyazda 4.0:1 */
  --line-d:rgba(169,188,214,.20);

  --ink:#16233A;          /* açık zeminde ana metin */
  --muted:#55688A;        /* açık zeminde ikincil metin */
  --haze:#A9BCD6;         /* koyu zeminde ikincil metin */
  --haze-l:#C6D5E8;

  --wrap:1280px;
  --r:4px;
  --r-lg:10px;
  --e:cubic-bezier(.22,.61,.36,1);
  --t-fast:.18s;
  --t:.32s;
  --t-slow:.7s;
}

/* ------------------------------------------------------------------ reset */
*,*::before,*::after{ box-sizing:border-box; margin:0; padding:0; }

/* overflow-x html üzerinde: body'de olursa body kaydırma kabına dönüşür ve
   IntersectionObserver tabanlı animasyonlar tetiklenmez. */
html{
  overflow-x:hidden;
  scroll-behavior:smooth;
  scroll-padding-top:96px;
  -webkit-text-size-adjust:100%;
}

body{
  font-family:'Centrale Sans','Segoe UI',sans-serif;
  font-weight:400;
  font-size:17px;
  line-height:1.85;
  color:var(--ink);
  background:var(--white);
  -webkit-font-smoothing:antialiased;
}

html.nav-open, body.nav-open{ overflow:hidden; }

img,svg{ display:block; max-width:100%; }
img{ height:auto; }
ul,ol{ list-style:none; }
a{ color:var(--navy); text-decoration:none; transition:color var(--t) var(--e); }
button{ font:inherit; color:inherit; background:none; border:0; cursor:pointer; }
::selection{ background:var(--gold); color:var(--navy-deep); }

:focus-visible{ outline:2px solid var(--gold); outline-offset:3px; border-radius:2px; }

.wrap{ width:100%; max-width:var(--wrap); margin-inline:auto; padding-inline:clamp(20px,5vw,56px); }
.sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}

/* --------------------------------------------------------------- tipografi */
h1,h2,h3{ font-weight:300; line-height:1.05; letter-spacing:-.03em; color:var(--navy); }
h1{ font-size:clamp(2.6rem,6.4vw,5.4rem); }
h2{ font-size:clamp(2rem,4.2vw,3.4rem); }
h3{ font-size:clamp(1.16rem,1.7vw,1.36rem); font-weight:500; letter-spacing:-.012em; line-height:1.35; }

.on-dark h1,.on-dark h2,.on-dark h3{ color:var(--white); }

/* Açık zeminde koyu altın (AA), koyu zeminde parlak altın; ayraç çizgisi
   dekoratif olduğu için her koşulda parlak kalır. */
.overline{
  display:inline-flex; align-items:center; gap:15px;
  font-size:11px; font-weight:500; letter-spacing:.34em; text-transform:uppercase;
  color:var(--gold-ink);
}
.overline::before{ content:""; width:34px; height:1px; background:var(--gold); flex:none; }
.on-dark .overline{ color:var(--gold); }

.lead{ font-size:clamp(1.04rem,1.4vw,1.22rem); line-height:1.8; color:var(--muted); max-width:64ch; }
.on-dark .lead{ color:var(--haze-l); }
.on-dark p{ color:var(--haze-l); }

.tag{
  display:inline-flex; align-items:center; gap:8px;
  padding:7px 16px; border-radius:999px;
  border:1px solid var(--line);
  font-size:11.5px; font-weight:500; letter-spacing:.16em; text-transform:uppercase;
  color:var(--muted); white-space:nowrap;
}
.on-dark .tag{ border-color:var(--line-d); color:var(--haze); }
.tag--gold{ border-color:rgba(200,150,60,.6); color:var(--gold-ink); }
.on-dark .tag--gold{ color:var(--gold-l); }

/* ---------------------------------------------------------------- butonlar */
.btn{
  display:inline-flex; align-items:center; gap:13px;
  padding:17px 32px;
  border-radius:var(--r);
  font-size:12.5px; font-weight:500; letter-spacing:.17em; text-transform:uppercase;
  line-height:1;
  transition:transform var(--t) var(--e), background-color var(--t) var(--e),
             color var(--t) var(--e), border-color var(--t) var(--e), box-shadow var(--t) var(--e);
  will-change:transform;
}
.btn svg{ flex:none; transition:transform var(--t) var(--e); }
.btn:hover svg{ transform:translateX(5px); }
.btn--gold{ background:var(--gold); color:var(--navy-deep); box-shadow:0 14px 34px -18px rgba(200,150,60,.7); }
.btn--gold:hover{ background:var(--gold-l); }
.btn--navy{ background:var(--navy); color:var(--white); }
.btn--navy:hover{ background:var(--navy-soft); }
.btn--ghost{ border:1px solid var(--line); color:var(--navy); }
.btn--ghost:hover{ border-color:var(--navy); }
.btn--ghost-light{ border:1px solid var(--line-d); color:var(--white); }
.btn--ghost-light:hover{ border-color:var(--gold); color:var(--gold); }

.tlink{
  display:inline-flex; align-items:center; gap:12px;
  font-size:12.5px; font-weight:500; letter-spacing:.17em; text-transform:uppercase;
  color:var(--navy);
}
.on-dark .tlink{ color:var(--gold); }
.tlink svg{ flex:none; transition:transform var(--t) var(--e); }
.tlink:hover svg{ transform:translateX(6px); }

/* =========================== ANİMASYON TEMELİ ============================ */
.reveal{
  opacity:0; transform:translate3d(0,26px,0);
  transition:opacity var(--t-slow) var(--e), transform var(--t-slow) var(--e);
}
.reveal.is-visible{ opacity:1; transform:none; }

.stagger.is-visible > *:nth-child(1){ transition-delay:0ms; }
.stagger.is-visible > *:nth-child(2){ transition-delay:80ms; }
.stagger.is-visible > *:nth-child(3){ transition-delay:160ms; }
.stagger.is-visible > *:nth-child(4){ transition-delay:240ms; }
.stagger.is-visible > *:nth-child(5){ transition-delay:320ms; }
.stagger.is-visible > *:nth-child(6){ transition-delay:400ms; }
.stagger.is-visible > *:nth-child(7){ transition-delay:480ms; }

/* Kelime kelime başlık */
.w{ display:inline-block; overflow:hidden; vertical-align:bottom; padding-bottom:.08em; }
.w-in{
  display:inline-block;
  transform:translate3d(0,110%,0); opacity:0;
  transition:transform .82s var(--e), opacity .82s var(--e);
}
.words-in .w-in{ transform:none; opacity:1; }

/* Kaydırma ilerleme çubuğu */
.progress{
  position:fixed; inset:0 0 auto 0; height:2px; z-index:300;
  transform:scaleX(0); transform-origin:0 50%;
  background:linear-gradient(90deg,var(--gold) 0%,var(--blue) 100%);
  will-change:transform; pointer-events:none;
}

/* Çizilen ikon dili */
.ico{ fill:none; stroke:currentColor; stroke-width:1.35; stroke-linecap:round; stroke-linejoin:round; }
.ico--draw{ stroke-dasharray:var(--d,200); stroke-dashoffset:var(--d,200); transition:stroke-dashoffset 1.5s var(--e); }
.is-visible .ico--draw{ stroke-dashoffset:0; }

/* ============================== KORİDOR HATTI ============================ */
/* Sayfa boyunca ilerleyen dikey hat; masaüstünde solda sabit durur. */
.corridor{
  position:fixed; left:clamp(18px,2.6vw,42px); top:50%; z-index:120;
  transform:translateY(-50%);
  display:flex; flex-direction:column; align-items:center; gap:0;
  pointer-events:none;
}
.corridor__rail{
  position:relative; width:1px; height:min(46vh,420px);
  background:var(--line);
}
.corridor.on-dark-zone .corridor__rail{ background:var(--line-d); }
.corridor__fill{
  position:absolute; inset:0; transform-origin:50% 0;
  background:linear-gradient(180deg,var(--gold) 0%,var(--blue) 100%);
  transform:scaleY(0);
}
.corridor__dots{
  position:absolute; inset:0;
  display:flex; flex-direction:column; justify-content:space-between; align-items:center;
}
.corridor__dot{
  width:7px; height:7px; border-radius:50%;
  background:var(--white); border:1px solid var(--line);
  transition:background-color var(--t) var(--e), border-color var(--t) var(--e), transform var(--t) var(--e);
  pointer-events:auto;
}
.corridor.on-dark-zone .corridor__dot{ background:var(--navy-deep); border-color:var(--line-d); }
.corridor__dot.is-on{ background:var(--gold); border-color:var(--gold); transform:scale(1.5); }

/* ================================= HEADER ================================ */
.top{
  background:var(--navy-deep);
  color:var(--haze);
}
.top__inner{
  display:flex; align-items:center; justify-content:space-between; gap:20px;
  min-height:42px;
  font-size:12.5px; letter-spacing:.05em;
}
.top__item{ display:inline-flex; align-items:center; gap:9px; }
.top__item svg{ flex:none; opacity:.8; }
a.top__item{ color:var(--haze); }
a.top__item:hover{ color:var(--white); }

.mast{
  position:sticky; top:0; z-index:200;
  background:rgba(255,255,255,.9);
  -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px);
  border-bottom:1px solid transparent;
  transition:box-shadow var(--t) var(--e), border-color var(--t) var(--e), background-color var(--t) var(--e);
}
.mast.is-stuck{ border-bottom-color:var(--line); box-shadow:0 8px 30px -22px rgba(14,42,78,.5); }
.mast__inner{ display:flex; align-items:center; justify-content:space-between; gap:26px; min-height:82px; }
.brand{ display:inline-flex; align-items:center; flex:none; }
.brand img{ height:clamp(30px,3.4vw,40px); width:auto; }

.nav{ display:flex; align-items:center; gap:clamp(12px,1.9vw,30px); }
.nav__link{
  position:relative; padding:8px 0;
  font-size:12px; font-weight:500; letter-spacing:.15em; text-transform:uppercase;
  color:var(--muted);
}
.nav__link::after{
  content:""; position:absolute; left:0; right:100%; bottom:0; height:2px;
  background:var(--gold); transition:right var(--t) var(--e);
}
.nav__link:hover{ color:var(--navy); }
.nav__link:hover::after,.nav__link.is-current::after{ right:0; }
.nav__link.is-current{ color:var(--navy); }

.mast__tools{ display:flex; align-items:center; gap:12px; flex:none; }
.lang-btn{
  padding:9px 16px; border-radius:999px; border:1px solid var(--line);
  font-size:11.5px; font-weight:700; letter-spacing:.18em; color:var(--navy);
  transition:border-color var(--t) var(--e), background-color var(--t) var(--e), color var(--t) var(--e);
}
.lang-btn:hover{ border-color:var(--navy); background:var(--navy); color:var(--white); }

.burger{ display:none; padding:11px; border:1px solid var(--line); border-radius:var(--r); }
.burger span{ display:block; width:20px; height:1.5px; background:var(--navy); transition:transform var(--t) var(--e), opacity var(--t) var(--e); }
.burger span + span{ margin-top:5px; }
body.nav-open .burger span:nth-child(1){ transform:translateY(6.5px) rotate(45deg); }
body.nav-open .burger span:nth-child(2){ opacity:0; }
body.nav-open .burger span:nth-child(3){ transform:translateY(-6.5px) rotate(-45deg); }

.mnav{
  position:fixed; inset:0; z-index:190;
  display:flex; flex-direction:column; justify-content:center; gap:36px;
  padding:clamp(24px,7vw,64px);
  background:var(--navy-deep);
  opacity:0; visibility:hidden; transform:translate3d(0,-14px,0);
  transition:opacity var(--t) var(--e), transform var(--t) var(--e), visibility var(--t);
}
body.nav-open .mnav{ opacity:1; visibility:visible; transform:none; }
.mnav__list{ display:grid; gap:12px; }
.mnav__link{ font-size:clamp(1.6rem,6.6vw,2.5rem); font-weight:300; letter-spacing:-.03em; color:var(--white); }
.mnav__link.is-current{ color:var(--gold); }
.mnav__foot{ display:grid; gap:12px; padding-top:26px; border-top:1px solid var(--line-d); }
.mnav__foot a,.mnav__foot span{ font-size:14px; color:var(--haze); }

/* ================================ BÖLÜMLER =============================== */
/* Geniş boşluklar (brief) */
.sec{ position:relative; padding-block:clamp(88px,12vw,180px); overflow:hidden; }
.sec--tight{ padding-block:clamp(58px,7vw,104px); }
.sec--white{ background:var(--white); }
.sec--gray{ background:var(--gray); }
.sec--navy{ background:var(--navy); }
.sec--deep{ background:var(--navy-deep); }

.sec__head{ display:grid; gap:24px; max-width:66ch; margin-bottom:clamp(48px,6vw,84px); }
.sec__head--center{ justify-items:center; text-align:center; margin-inline:auto; }

/* ================================== HERO ================================= */
.hero{
  position:relative; overflow:hidden;
  min-height:clamp(560px,84svh,900px);
  display:flex; align-items:flex-end;
  padding-block:clamp(70px,10vw,130px);
}
.hero__bg{ position:absolute; inset:0; overflow:hidden; }
.hero__bg img{
  width:100%; height:100%; object-fit:cover; object-position:center 42%;
  transform:scale(1.06);
  will-change:transform;
}
.hero__veil{
  position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(7,26,49,.62) 0%, rgba(7,26,49,.30) 34%, rgba(7,26,49,.86) 100%),
    linear-gradient(90deg, rgba(7,26,49,.60) 0%, rgba(7,26,49,.05) 62%);
}
.hero__inner{ position:relative; z-index:2; display:grid; gap:26px; max-width:64ch; }
.hero__subs{ display:grid; gap:14px; max-width:58ch; }
.hero__cta{ display:flex; flex-wrap:wrap; gap:14px; margin-top:12px; }
.hero__scroll{
  position:absolute; right:clamp(20px,5vw,56px); bottom:clamp(26px,4vw,44px); z-index:2;
  display:inline-flex; align-items:center; gap:12px;
  font-size:11px; font-weight:500; letter-spacing:.28em; text-transform:uppercase;
  color:var(--haze);
}
.hero__scroll svg{ animation:nudge 2.2s var(--e) infinite; }
@keyframes nudge{
  0%,100%{ transform:translate3d(0,0,0); opacity:.55; }
  50%    { transform:translate3d(0,7px,0); opacity:1; }
}

/* =========================== KAPASİTE ŞERİDİ ============================= */
.strip{ background:var(--navy-deep); border-block:1px solid var(--line-d); overflow:hidden; }
.strip__viewport{ overflow:hidden; padding-block:20px; }
.strip__track{ display:flex; align-items:center; gap:0; width:max-content; animation:slide 44s linear infinite; }
.strip__item{
  display:inline-flex; align-items:center; gap:26px; padding-inline:26px;
  font-size:12px; font-weight:500; letter-spacing:.24em; text-transform:uppercase;
  color:var(--haze); white-space:nowrap;
}
.strip__item::after{ content:""; width:5px; height:5px; border-radius:50%; background:var(--gold); flex:none; }
@keyframes slide{ from{ transform:translate3d(0,0,0); } to{ transform:translate3d(-50%,0,0); } }
.strip:hover .strip__track{ animation-play-state:paused; }

/* ================================= ABOUT ================================= */
.about__grid{ display:grid; gap:clamp(40px,6vw,90px); grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); align-items:center; }
.about__body{ display:grid; gap:26px; }
.pillars{ display:flex; flex-wrap:wrap; gap:12px; margin-top:8px; }

.stats{ display:grid; gap:1px; background:var(--line); border:1px solid var(--line); grid-template-columns:repeat(2,minmax(0,1fr)); }
.stat{ background:var(--white); padding:clamp(26px,3vw,40px) clamp(20px,2.4vw,30px); }
.stat__num{
  display:block;
  font-size:clamp(2.3rem,4vw,3.2rem); font-weight:300; line-height:1; letter-spacing:-.035em;
  color:var(--navy); font-variant-numeric:tabular-nums;
}
.stat__label{
  display:block; margin-top:12px;
  font-size:11px; font-weight:500; letter-spacing:.16em; text-transform:uppercase;
  color:var(--muted); line-height:1.6;
}

/* ================================== WHY ================================== */
.why{ position:relative; }
.why__grid{ display:grid; gap:1px; background:var(--line-d); grid-template-columns:repeat(3,minmax(0,1fr)); }
.why__card{
  position:relative;
  background:var(--navy);
  padding:clamp(30px,3.4vw,48px) clamp(24px,2.6vw,36px) clamp(34px,3.8vw,52px);
  display:grid; gap:18px; align-content:start;
  transition:background-color var(--t) var(--e);
}
.why__card:hover{ background:var(--navy-soft); }
.why__card::before{
  content:""; position:absolute; left:0; top:0; right:0; height:2px;
  background:linear-gradient(90deg,var(--gold),var(--blue));
  transform:scaleX(0); transform-origin:0 50%;
  transition:transform .9s var(--e);
}
.why__card.is-visible::before{ transform:scaleX(1); }
.why__num{ font-size:11.5px; font-weight:700; letter-spacing:.2em; color:var(--gold); }
.why__icon{ width:44px; height:44px; color:var(--blue-l); }
.why__icon svg{ width:100%; height:100%; }
.why__name{ font-size:1.16rem; font-weight:500; color:var(--white); line-height:1.4; letter-spacing:-.01em; }
.why__desc{ font-size:15px; line-height:1.75; color:var(--haze); }

/* ================================ SERVICES =============================== */
.svc{ display:grid; gap:0; border-top:1px solid var(--line); }
.svc__row{
  position:relative;
  display:grid; gap:clamp(14px,3vw,44px);
  grid-template-columns:64px minmax(0,.9fr) minmax(0,1.25fr) 44px;
  align-items:center;
  padding-block:clamp(26px,3vw,38px);
  border-bottom:1px solid var(--line);
  transition:background-color var(--t) var(--e), padding-inline var(--t) var(--e);
}
.svc__row:hover{ background:var(--gray); padding-inline:clamp(10px,1.6vw,24px); }
.svc__num{ font-size:12px; font-weight:700; letter-spacing:.16em; color:var(--steel); transition:color var(--t) var(--e); }
.svc__row:hover .svc__num{ color:var(--gold); }
.svc__name{ font-size:clamp(1.14rem,1.8vw,1.42rem); font-weight:500; color:var(--navy); letter-spacing:-.015em; line-height:1.35; }
.svc__desc{ font-size:15.5px; line-height:1.72; color:var(--muted); }
.svc__ico{ width:40px; height:40px; color:var(--navy); justify-self:end; opacity:.55; transition:opacity var(--t) var(--e), color var(--t) var(--e); }
.svc__row:hover .svc__ico{ opacity:1; color:var(--gold); }
.svc__ico svg{ width:100%; height:100%; }

/* ============================ FALCON ECOSYSTEM =========================== */
.eco{ position:relative; }
.eco__glow{
  position:absolute; border-radius:50%; pointer-events:none;
  filter:blur(70px); opacity:.4;
  background:radial-gradient(circle,rgba(46,127,194,.5) 0%,transparent 70%);
  animation:drift 58s ease-in-out infinite;
}
@keyframes drift{
  0%,100%{ transform:translate3d(0,0,0) scale(1); }
  50%    { transform:translate3d(3vw,-2vh,0) scale(1.14); }
}
.eco__lead{ display:grid; gap:22px; max-width:70ch; }
.eco__statement{
  font-size:clamp(1.5rem,2.6vw,2.1rem); font-weight:300; line-height:1.4;
  letter-spacing:-.02em; color:var(--white);
}
/* İki sınıf: ".on-dark p" kuralını özgüllükte geçmesi için gerekli. */
.eco__statement.eco__accent{ color:var(--gold-l); }

.eco__map{ margin-top:clamp(48px,6vw,80px); }
.eco__map svg{ width:100%; height:auto; overflow:visible; }
.eco-route{
  fill:none; stroke:var(--blue-l); stroke-width:1.4; stroke-linecap:round;
  stroke-dasharray:var(--len,900); stroke-dashoffset:var(--len,900);
  transition:stroke-dashoffset 2.1s var(--e);
}
.eco__map.is-visible .eco-route{ stroke-dashoffset:0; }
.eco-node{ fill:var(--navy-deep); stroke:var(--gold); stroke-width:1.4; opacity:0; transition:opacity .7s var(--e); }
.eco-node-core{ fill:var(--gold); opacity:0; transition:opacity .7s var(--e); }
.eco__map.is-visible .eco-node,.eco__map.is-visible .eco-node-core{ opacity:1; }
.eco__map.is-visible .eco-node:nth-of-type(2),.eco__map.is-visible .eco-node-core:nth-of-type(2){ transition-delay:.45s; }
.eco__map.is-visible .eco-node:nth-of-type(3),.eco__map.is-visible .eco-node-core:nth-of-type(3){ transition-delay:.9s; }
.eco-label{ fill:var(--haze-l); font-size:11px; letter-spacing:.16em; text-transform:uppercase; }
.eco-grid{ stroke:var(--haze); stroke-width:.5; opacity:.14; }

.eco__nodes{ display:grid; gap:clamp(16px,2vw,26px); grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:clamp(36px,4vw,56px); }
.eco__node{
  padding:clamp(20px,2.2vw,28px);
  border:1px solid var(--line-d); border-radius:var(--r-lg);
  background:rgba(23,57,95,.32);
  display:grid; gap:12px;
}
.eco__node-k{ font-size:11px; font-weight:500; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); }
.eco__node-icon{ width:34px; height:34px; color:var(--blue-l); }
.eco__node-icon svg{ width:100%; height:100%; }

/* ------------------------- GRUP ŞİRKETLERİ ------------------------- */
.group{ margin-top:clamp(56px,7vw,100px); }
.group__head{ display:grid; gap:20px; max-width:64ch; margin-bottom:clamp(34px,4vw,54px); }
.group__title{
  font-size:clamp(1.6rem,2.9vw,2.3rem); font-weight:300; letter-spacing:-.025em;
  line-height:1.14; color:var(--white);
}

.group__grid{
  display:grid; gap:clamp(16px,2vw,24px);
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.co{
  position:relative;
  display:grid; gap:12px; align-content:start;
  padding:clamp(24px,2.6vw,32px);
  background:rgba(23,57,95,.30);
  border:1px solid var(--line-d);
  border-radius:var(--r-lg);
  transition:transform var(--t) var(--e), border-color var(--t) var(--e),
             background-color var(--t) var(--e), box-shadow var(--t) var(--e);
}
a.co:hover{
  transform:translate3d(0,-6px,0);
  border-color:rgba(200,150,60,.55);
  background:rgba(23,57,95,.46);
  box-shadow:0 26px 56px -34px rgba(0,0,0,.7);
}
.co__top{ display:flex; align-items:center; justify-content:space-between; gap:14px; }
.co__icon{ width:36px; height:36px; color:var(--blue-l); }
.co__icon svg{ width:100%; height:100%; }
.co__year{ padding:5px 13px; font-size:11px; }
.co__name{ font-size:1.16rem; font-weight:500; color:var(--white); letter-spacing:-.012em; line-height:1.35; overflow-wrap:break-word; }
.co__role{ font-size:11px; font-weight:500; letter-spacing:.17em; text-transform:uppercase; color:var(--gold); line-height:1.6; }
.co__desc{ font-size:14.5px; line-height:1.75; color:var(--haze); }
.co__link{
  display:inline-flex; align-items:center; gap:9px; margin-top:6px;
  font-size:11.5px; font-weight:500; letter-spacing:.16em; text-transform:uppercase;
  color:var(--gold-l);
}
.co__link svg{ flex:none; transition:transform var(--t) var(--e); }
a.co:hover .co__link svg{ transform:translate3d(3px,-3px,0); }

/* Grubun ana şirketi — ızgarayı bozmadan (6 kart = tam 2×3) altın çerçeve ve
   degrade zeminle öne çıkarılır. */
.co--lead{
  background:linear-gradient(135deg, rgba(23,57,95,.58) 0%, rgba(14,42,78,.34) 100%);
  border-color:rgba(200,150,60,.40);
}
.co--lead .co__name{ font-size:1.32rem; }
.co--lead .co__icon{ color:var(--gold-l); }

/* "Buradasınız" — NGT'nin ekosistemdeki yeri */
.co--self{ border-color:rgba(46,127,194,.45); background:rgba(46,127,194,.12); }
.co__here{
  display:inline-flex; align-items:center; gap:10px; margin-top:6px;
  font-size:11.5px; font-weight:500; letter-spacing:.16em; text-transform:uppercase;
  color:var(--blue-l);
}
.co__here-dot{
  width:8px; height:8px; border-radius:50%; background:var(--blue-l); flex:none;
  box-shadow:0 0 0 0 rgba(95,168,223,.55);
  animation:hereping 2.2s var(--e) infinite;
}
@keyframes hereping{
  0%{ box-shadow:0 0 0 0 rgba(95,168,223,.55); }
  70%{ box-shadow:0 0 0 11px rgba(95,168,223,0); }
  100%{ box-shadow:0 0 0 0 rgba(95,168,223,0); }
}

.eco__falcon-btn{ margin-top:6px; }

/* Ekosistem bilgi bloğu — brief: "bilgi en altta" */
.eco__foot{
  margin-top:clamp(52px,6vw,88px);
  padding-top:clamp(34px,4vw,52px);
  border-top:1px solid var(--line-d);
  display:grid; gap:clamp(26px,4vw,56px); grid-template-columns:auto minmax(0,1fr);
  align-items:start;
}
.eco__falcon{ display:grid; gap:14px; justify-items:start; }
.eco__falcon img{ height:clamp(34px,3.6vw,46px); width:auto; }
.eco__foot-body{ display:grid; gap:18px; }
.eco__foot-body p{ font-size:15.5px; line-height:1.8; color:var(--haze); max-width:78ch; }

/* ================================= CONTACT =============================== */
.contact__grid{ display:grid; gap:clamp(40px,6vw,84px); grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; }
.contact__rows{ border-top:1px solid var(--line); }
.contact__row{
  display:grid; gap:8px 26px; grid-template-columns:118px minmax(0,1fr);
  padding-block:22px; border-bottom:1px solid var(--line); align-items:baseline;
}
.contact__k{ font-size:11px; font-weight:500; letter-spacing:.17em; text-transform:uppercase; color:var(--muted); }
.contact__v{ font-size:1.06rem; line-height:1.6; color:var(--navy); }
a.contact__v:hover{ color:var(--gold); }
.contact__big{
  font-size:clamp(1.4rem,3vw,2.2rem); font-weight:300; letter-spacing:-.025em;
  color:var(--navy); line-height:1.2;
}
a.contact__big:hover{ color:var(--gold); }
.contact__cta{ margin-top:clamp(28px,3vw,42px); }

/* ================================= FOOTER ================================ */
.footer{ background:var(--navy-deep); }
.footer__grid{
  display:grid; gap:clamp(32px,4vw,58px);
  grid-template-columns:1.6fr 1fr 1.1fr;
  padding-block:clamp(56px,7vw,90px);
}

/* Logo koyu zeminlerde yeniden renklendirilmez (marka bütünlüğü):
   özgün haliyle açık bir zemin plakasının üzerine yerleştirilir. */
.logo-plate{
  display:inline-flex; align-items:center; justify-content:center;
  padding:13px 18px;
  background:var(--white);
  border-radius:var(--r-lg);
}
.logo-plate img{ height:34px; width:auto; }
.footer__logo{ margin-bottom:24px; }
.footer__desc{ font-size:14.5px; line-height:1.8; color:var(--haze); max-width:38ch; }
.footer__group{ margin-top:18px; font-size:12.5px; line-height:1.7; color:rgba(169,188,214,.75); }
.footer__head{
  font-size:11px; font-weight:500; letter-spacing:.2em; text-transform:uppercase;
  color:var(--gold); margin-bottom:22px;
}
.footer__list{ display:grid; gap:12px; }
.footer__list a{ font-size:14.5px; color:var(--haze); }
.footer__list a:hover{ color:var(--white); }
.footer__reach{ display:grid; gap:10px; font-size:14.5px; color:var(--haze); }
.footer__reach a{ color:var(--haze); }
.footer__reach a:hover{ color:var(--gold); }
.footer__bottom{ border-top:1px solid var(--line-d); }
.footer__copy{ padding-block:24px; font-size:12.5px; color:var(--haze); text-align:center; }

/* Başa dön */
.totop{
  position:fixed; right:clamp(18px,2.6vw,34px); bottom:clamp(18px,2.6vw,34px); z-index:150;
  width:46px; height:46px; border-radius:50%;
  display:grid; place-items:center;
  background:var(--navy); color:var(--white);
  box-shadow:0 14px 34px -18px rgba(7,26,49,.8);
  opacity:0; visibility:hidden; transform:translate3d(0,10px,0);
  transition:opacity var(--t) var(--e), transform var(--t) var(--e), visibility var(--t), background-color var(--t) var(--e);
}
.totop.is-on{ opacity:1; visibility:visible; transform:none; }
.totop:hover{ background:var(--gold); color:var(--navy-deep); }

/* =============================== RESPONSIVE ============================== */
@media (max-width:1240px){
  .corridor{ display:none; }
}
@media (max-width:1080px){
  .why__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .eco__nodes{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .group__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .footer__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .svc__row{ grid-template-columns:52px minmax(0,1fr); }
  .svc__desc{ grid-column:2; }
  .svc__ico{ display:none; }
}
@media (max-width:900px){
  .nav{ display:none; }
  .burger{ display:block; }
  .about__grid,.contact__grid,.eco__foot{ grid-template-columns:1fr; }
  .hero{ align-items:center; }
}
@media (max-width:640px){
  .why__grid{ grid-template-columns:1fr; }
  .eco__nodes{ grid-template-columns:1fr; }
  .group__grid{ grid-template-columns:1fr; }
  .stats{ grid-template-columns:1fr; }
  .footer__grid{ grid-template-columns:1fr; }
  .top__inner{ justify-content:center; }
  .top__item--hide{ display:none; }
  .contact__row{ grid-template-columns:1fr; }
  .hero__scroll{ display:none; }
}

/* ======================== HAREKET AZALTMA TERCİHİ ======================== */
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
  .reveal{ opacity:1 !important; transform:none !important; }
  .w-in{ opacity:1 !important; transform:none !important; }
  .progress{ display:none; }
  .corridor{ display:none; }
  .eco__glow{ display:none; }
  .hero__bg img{ transform:none !important; }
  .hero__scroll svg{ animation:none; }
  .strip__track{ animation:none; flex-wrap:wrap; width:auto; }
  .ico--draw{ stroke-dashoffset:0 !important; }
  .eco-route{ stroke-dashoffset:0 !important; }
  .eco-node,.eco-node-core{ opacity:1 !important; transition-delay:0s !important; }
  .why__card::before{ transform:scaleX(1) !important; }
  .co__here-dot{ animation:none; }
  .totop{ transition:none; }
}
