/* ============================================================
   CA Mühendislik — Kurumsal Stylesheet
   ============================================================ */

/* ── TOKENS ──────────────────────────────────────────────── */
:root {
  /* ─ Elektrik mühendisliği paleti ─
     Çelik lacivert + elektrik amberı
     Referans: ABB, Eaton, Siemens kurumsal standartları     */
  --navy:        #0C1A2E;   /* Çelik gece laciverdı */
  --navy-mid:    #112236;   /* Panel laciverdı */
  --navy-lt:     #1A3252;   /* Açık panel */
  --teal:        #E8960F;   /* Elektrik amberi — yüksek gerilim */
  --teal-dk:     #C47A0A;   /* Koyu amber */
  --teal-lt:     #F5AA28;   /* Açık amber */
  --white:       #ffffff;
  --off:         #F6F8FA;
  --gray-50:     #EDEEF2;
  --gray-100:    #D9DCE4;
  --gray-300:    #9AA3B2;
  --gray-500:    #5F6B7A;
  --gray-700:    #374454;
  --text:        #1C2B3A;
  --text-lt:     #526070;

  /* Gölgeler */
  --sh-xs: 0 1px 4px rgba(12,26,46,.08);
  --sh-sm: 0 4px 16px rgba(12,26,46,.10);
  --sh-md: 0 10px 36px rgba(12,26,46,.13);
  --sh-lg: 0 24px 72px rgba(12,26,46,.18);

  /* Köşe yarıçapı */
  --r-sm:  3px;
  --r-md:  6px;
  --r-lg:  10px;

  /* Tipografi */
  --sans: 'Inter', system-ui, -apple-system, sans-serif;

  /* Geçiş */
  --ease: cubic-bezier(.4,0,.2,1);
  --tr: .3s var(--ease);
}

/* ── RESET ───────────────────────────────────────────────── */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; -webkit-text-size-adjust:100%; }
body {
  font-family: var(--sans);
  color: var(--text);
  background: var(--white);
  overflow-x: hidden;
  line-height: 1.7;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
img   { display:block; max-width:100%; height:auto; }
a     { text-decoration:none; color:inherit; }
ul    { list-style:none; }
address { font-style:normal; }
button { cursor:pointer; font-family:var(--sans); }
abbr  { text-decoration:none; }

::-webkit-scrollbar { width:4px; }
::-webkit-scrollbar-track { background:var(--navy); }
::-webkit-scrollbar-thumb { background:var(--teal); border-radius:2px; }

/* ── CONTAINER ───────────────────────────────────────────── */
.container { max-width:1200px; margin:0 auto; padding:0 32px; }

/* ── BUTTONS ─────────────────────────────────────────────── */
.btn {
  display:inline-flex; align-items:center; gap:10px;
  padding:14px 30px; border-radius:var(--r-sm);
  font-family:var(--sans); font-size:.9rem; font-weight:600;
  border:2px solid transparent;
  letter-spacing:.02em;
  transition:var(--tr);
  white-space:nowrap; cursor:pointer;
}
.btn-teal {
  background:var(--teal); color:var(--navy);
  border-color:var(--teal);
  font-weight:700;
  box-shadow:0 4px 20px rgba(232,150,15,.35);
}
.btn-teal:hover {
  background:var(--teal-lt); border-color:var(--teal-lt);
  color:var(--navy);
  transform:translateY(-2px);
  box-shadow:0 8px 32px rgba(232,150,15,.5);
}
.btn-ghost {
  background:transparent; color:rgba(255,255,255,.88);
  border-color:rgba(255,255,255,.35);
}
.btn-ghost:hover {
  background:rgba(255,255,255,.1); border-color:rgba(255,255,255,.75);
  transform:translateY(-2px);
}
.btn-full { width:100%; justify-content:center; }

/* ── SECTION COMÚN ───────────────────────────────────────── */
.section { padding:112px 0; }

.sec-label {
  display:flex; align-items:center; gap:14px;
  margin-bottom:18px;
}
.sec-num {
  font-family:var(--sans); font-size:3.5rem; font-weight:900;
  color:var(--teal); opacity:.12; line-height:1;
  letter-spacing:-.05em;
}
.sec-cat {
  font-size:.70rem; font-weight:700;
  letter-spacing:.20em; text-transform:uppercase;
  color:var(--teal);
}

.sec-label.light .sec-cat { color:rgba(255,255,255,.6); }

.sec-title {
  font-family:var(--sans);
  font-size:clamp(2rem, 3.5vw, 2.75rem);
  font-weight:900; color:var(--navy);
  line-height:1.10; letter-spacing:-.05em;
  margin-bottom:22px;
}
.sec-title.light { color:var(--white); }

.sec-rule {
  width:48px; height:3px;
  background:linear-gradient(90deg, var(--teal), var(--teal-lt));
  border-radius:2px;
}
.sec-rule.light { background:rgba(255,255,255,.35); }

.section-top { margin-bottom:64px; }

/* ── REVEAL ANIMATION ────────────────────────────────────── */
.reveal {
  opacity:0;
  transform:translateY(30px);
  transition:opacity .7s var(--ease), transform .7s var(--ease);
  transition-delay:var(--delay, 0s);
}
.reveal.in { opacity:1; transform:translateY(0); }


/* ══════════════════════════════════════════════════════════
   HEADER / NAVBAR
   ══════════════════════════════════════════════════════════ */
.site-header {
  position:fixed; top:0; left:0; right:0; z-index:900;
  padding:0;
  background:#ffffff;
  border-bottom:1px solid var(--gray-100);
  box-shadow:var(--sh-xs);
  transition:box-shadow .3s var(--ease);
}
.site-header.stuck {
  box-shadow:var(--sh-sm);
}

.header-inner {
  display:flex; align-items:center; justify-content:space-between;
  height:76px; gap:24px;
}

.header-logo img { height:46px; width:auto; transition:opacity .25s; }
.header-logo:hover img { opacity:.85; }

/* Nav links */
.main-nav ul { display:flex; align-items:center; gap:36px; }
.nav-link {
  font-size:.87rem; font-weight:500; color:var(--gray-700);
  letter-spacing:.02em; position:relative; transition:color .25s;
}
.nav-link::after {
  content:''; position:absolute; bottom:-4px; left:0; right:0; height:1px;
  background:var(--teal);
  transform:scaleX(0); transform-origin:left;
  transition:transform .3s var(--ease);
}
.nav-link:hover, .nav-link.active { color:var(--navy); }
.nav-link:hover::after, .nav-link.active::after { transform:scaleX(1); }

.nav-cta {
  padding:9px 22px !important;
  background:var(--teal) !important;
  color:var(--navy) !important;
  border-radius:var(--r-sm);
  font-weight:700 !important;
  transition:var(--tr) !important;
  box-shadow:0 3px 16px rgba(232,150,15,.35);
}
.nav-cta::after { display:none !important; }
.nav-cta:hover {
  background:var(--teal-lt) !important;
  color:var(--navy) !important;
  transform:translateY(-1px) !important;
}

/* Hamburger */
.nav-toggle {
  display:none; flex-direction:column; gap:5px;
  background:none; border:none; padding:5px; z-index:910;
}
.nav-toggle span {
  display:block; width:24px; height:2px;
  background:var(--navy); border-radius:2px;
  transition:var(--tr);
}
.nav-toggle.open span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.nav-toggle.open span:nth-child(2) { opacity:0; transform:scaleX(0); }
.nav-toggle.open span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }


/* ══════════════════════════════════════════════════════════
   HERO
   ══════════════════════════════════════════════════════════ */
.hero {
  position:relative; min-height:100svh;
  display:flex; flex-direction:column;
  align-items:center; justify-content:center;
  background:
    linear-gradient(to right, rgba(0,0,0,.60) 0%, rgba(0,0,0,.35) 55%, rgba(0,0,0,.15) 100%),
    url('../../hero.webp');
  background-size:cover;
  background-position:center;
  overflow:hidden;
}

/* Bottom ambient glow */
.hero::after { display:none; }

/* Subtle radial teal accents */
.hero::before { display:none; }

/* Stripe BG — gizle (fotoğraf var) */
.hero-bg-lines { display:none; }

/* Bottom gradient fade */
.hero-overlay {
  position:absolute; bottom:0; left:0; right:0;
  height:220px;
  background:linear-gradient(to bottom, transparent, rgba(12,26,46,.5));
  pointer-events:none;
}

.hero-body {
  position:relative; z-index:1;
  padding-top:76px; /* navbar height */
  display:flex; flex-direction:column;
  align-items:center; text-align:center;
  flex:1; justify-content:center;
  gap:0;
}

/* Eyebrow */
.hero-eyebrow {
  display:flex; align-items:center; gap:16px;
  margin-bottom:36px;
  animation:fadeUp .8s var(--ease) .1s both;
}
.eyebrow-rule {
  display:block; width:40px; height:1px;
  background:rgba(232,150,15,.7);
}
.hero-eyebrow span:not(.eyebrow-rule) {
  font-size:.7rem; font-weight:700;
  letter-spacing:.22em; text-transform:uppercase;
  color:rgba(255,255,255,.5);
}

/* Title */
.hero-title {
  font-family:var(--sans);
  font-size:clamp(3rem, 8vw, 6.5rem);
  font-weight:900; color:var(--white);
  line-height:1.04; letter-spacing:-.05em;
  margin-bottom:30px;
  text-shadow:0 2px 24px rgba(0,0,0,.5);
  animation:fadeUp .8s var(--ease) .25s both;
}
.hero-title em {
  font-style:normal;
  color:var(--teal-lt);
  text-shadow:0 0 80px rgba(245,170,40,.6), 0 0 200px rgba(245,170,40,.2);
}

/* Subtitle */
.hero-sub {
  font-size:clamp(.95rem, 1.8vw, 1.15rem);
  color:rgba(255,255,255,.85); font-weight:400;
  line-height:1.7; max-width:520px;
  margin-bottom:44px;
  text-shadow:0 1px 12px rgba(0,0,0,.6);
  animation:fadeUp .8s var(--ease) .4s both;
}

/* CTA */
.hero-actions {
  display:flex; gap:14px; flex-wrap:wrap; justify-content:center;
  animation:fadeUp .8s var(--ease) .55s both;
}

/* Stats bar — STRUCTURED.ENG: dark bg, teal numbers */
.stats-bar {
  position:relative; z-index:2; width:100%;
  margin-top:auto;
  background:var(--navy-mid);
  border-top:3px solid var(--teal);
  box-shadow:0 -8px 40px rgba(12,26,46,.5);
}
.stats-inner {
  display:flex; align-items:center;
  padding:36px 32px;
  gap:0;
}
.stat-item {
  flex:1; text-align:center; padding:0 24px;
}
.stat-num {
  display:block;
  font-size:clamp(2rem, 4vw, 2.8rem); font-weight:900;
  color:var(--teal-lt); letter-spacing:-.04em; line-height:1;
}
.stat-suf {
  font-size:1.6rem; font-weight:900; color:var(--teal);
  vertical-align:top; line-height:1.2;
}
.stat-lbl {
  display:block;
  font-size:.72rem; font-weight:600;
  color:rgba(255,255,255,.5); margin-top:8px;
  letter-spacing:.10em; text-transform:uppercase;
}
.stat-divider {
  width:1px; height:48px;
  background:rgba(255,255,255,.08);
  flex-shrink:0;
}

@keyframes fadeUp {
  from { opacity:0; transform:translateY(24px); }
  to   { opacity:1; transform:translateY(0); }
}
.d-none-sm { display:none; }
@media (min-width:640px) { .d-none-sm { display:initial; } }


/* ══════════════════════════════════════════════════════════
   HAKKIMIZDA
   ══════════════════════════════════════════════════════════ */
.about-section { background:var(--white); }

.about-grid {
  display:grid; grid-template-columns:1fr 1fr;
  gap:80px; align-items:start;
}

.about-body p {
  color:var(--text-lt); line-height:1.8;
  margin-bottom:18px; font-size:.97rem;
}
.about-body p:last-child { margin-bottom:0; }
.about-body strong { color:var(--navy); font-weight:600; }

/* Values list */
.values-list { display:flex; flex-direction:column; gap:0; }
.value-row {
  display:flex; align-items:flex-start; gap:20px;
  padding:26px 0;
  border-bottom:1px solid var(--gray-50);
  transition:var(--tr);
}
.value-row:first-child { border-top:1px solid var(--gray-50); }
.value-row:hover { background:var(--off); padding-left:12px; padding-right:12px; margin:0 -12px; }

.vr-icon {
  width:46px; height:46px; flex-shrink:0;
  background:rgba(232,150,15,.08);
  border-radius:var(--r-sm);
  display:flex; align-items:center; justify-content:center;
  font-size:1.05rem; color:var(--teal);
  transition:var(--tr);
}
.value-row:hover .vr-icon {
  background:var(--teal); color:var(--white);
}
.vr-body h3 {
  font-size:.95rem; font-weight:700; color:var(--navy);
  margin-bottom:4px;
}
.vr-body p { font-size:.85rem; color:var(--text-lt); line-height:1.55; }


/* ══════════════════════════════════════════════════════════
   HİZMETLER
   ══════════════════════════════════════════════════════════ */
.services-section { background:var(--off); }

.services-grid {
  display:grid; grid-template-columns:repeat(4, 1fr);
  gap:1px; /* gap via lines */
  background:var(--gray-100); /* creates grid lines */
  border:1px solid var(--gray-100);
  border-radius:var(--r-md);
  overflow:hidden;
}
.svc-card {
  background:var(--white);
  padding:36px 28px;
  display:flex; flex-direction:column; gap:16px;
  position:relative; overflow:hidden;
  transition:var(--tr);
  cursor:default;
}
.svc-card::after {
  content:'';
  position:absolute; bottom:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, var(--teal), var(--teal-lt));
  transform:scaleX(0); transform-origin:left;
  transition:transform .35s var(--ease);
}
.svc-card:hover { background:var(--navy-mid); }
.svc-card:hover::after { transform:scaleX(1); }

.svc-header {
  display:flex; justify-content:space-between; align-items:flex-start;
}
.svc-num {
  font-size:.7rem; font-weight:700; letter-spacing:.12em;
  color:var(--teal); font-variant-numeric:tabular-nums;
  transition:var(--tr);
}
.svc-card:hover .svc-num { color:rgba(255,255,255,.4); }

.svc-icon {
  width:48px; height:48px;
  background:rgba(232,150,15,.10);
  border-radius:var(--r-sm);
  display:flex; align-items:center; justify-content:center;
  font-size:1.15rem; color:var(--teal);
  transition:var(--tr);
}
.svc-icon .material-symbols-outlined {
  font-size:1.5rem; line-height:1;
  font-variation-settings:'FILL' 0,'wght' 300,'GRAD' 0,'opsz' 24;
}
.svc-card:hover .svc-icon {
  background:rgba(255,255,255,.12); color:var(--white);
  transform:scale(1.06);
}

.svc-title {
  font-size:.9rem; font-weight:600; color:var(--navy);
  line-height:1.45; flex:1;
  transition:var(--tr);
}
.svc-card:hover .svc-title { color:rgba(255,255,255,.9); }

.svc-arrow {
  font-size:.85rem; color:var(--gray-300);
  margin-top:auto;
  transition:var(--tr);
}
.svc-card:hover .svc-arrow { color:var(--teal-lt); transform:translateX(4px); }


/* ══════════════════════════════════════════════════════════
   İŞ ORTAKLARI
   ══════════════════════════════════════════════════════════ */
.partners-section { background:var(--white); }

/* Ticker */
.ticker-band {
  overflow:hidden; margin:48px 0 56px;
  border-top:1px solid var(--gray-100); border-bottom:1px solid var(--gray-100);
  padding:22px 0; background:var(--off);
  position:relative;
}
.ticker-band::before, .ticker-band::after {
  content:''; position:absolute; top:0; bottom:0; width:160px; z-index:1;
}
.ticker-band::before { left:0;  background:linear-gradient(90deg, var(--off), transparent); }
.ticker-band::after  { right:0; background:linear-gradient(-90deg, var(--off), transparent); }

.ticker-track {
  display:flex; width:max-content;
  animation:tickerScroll 28s linear infinite;
}
.ticker-track:hover { animation-play-state:paused; }
@keyframes tickerScroll {
  0%   { transform:translateX(0); }
  100% { transform:translateX(-50%); }
}
.ticker-chip {
  display:inline-flex; align-items:center; gap:12px;
  padding:8px 36px; flex-shrink:0;
  font-size:.88rem; font-weight:600; color:var(--gray-700);
  letter-spacing:.01em;
}
.ticker-chip i { color:var(--teal); font-size:.45rem; }

/* Partner grid */
.partner-grid {
  display:grid; grid-template-columns:repeat(5, 1fr); gap:1px;
  background:var(--gray-100); border:1px solid var(--gray-100);
  border-radius:var(--r-md); overflow:hidden;
}
.partner-item {
  background:var(--white); padding:22px 18px;
  display:flex; align-items:center; justify-content:center;
  font-size:.88rem; font-weight:600; color:var(--gray-700);
  text-align:center; transition:var(--tr);
  cursor:default;
}
.partner-item:hover {
  background:var(--navy); color:var(--teal);
  position:relative; z-index:1;
}


/* ══════════════════════════════════════════════════════════
   REFERANSLAR
   ══════════════════════════════════════════════════════════ */
.refs-section {
  background:var(--navy);
  position:relative; overflow:hidden;
}
/* Decorative dot grid */
.refs-section::before {
  content:'';
  position:absolute; inset:0;
  background-image:radial-gradient(rgba(232,150,15,.08) 1px, transparent 1px);
  background-size:32px 32px;
  pointer-events:none;
}

/* Tabs */
.ref-tabs {
  display:flex; flex-wrap:wrap; gap:10px;
  margin-bottom:48px;
}
.ref-tab {
  display:inline-flex; align-items:center; gap:8px;
  padding:9px 18px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  border-radius:var(--r-sm);
  font-size:.82rem; font-weight:500;
  color:rgba(255,255,255,.6);
  cursor:pointer; transition:var(--tr);
}
.ref-tab:hover { background:rgba(255,255,255,.1); color:var(--white); }
.ref-tab.active {
  background:var(--teal); border-color:var(--teal);
  color:var(--white);
  box-shadow:0 4px 20px rgba(232,150,15,.4);
}
.tab-count {
  background:rgba(255,255,255,.15); color:inherit;
  font-size:.7rem; font-weight:700;
  padding:1px 7px; border-radius:50px;
}
.ref-tab.active .tab-count { background:rgba(255,255,255,.25); }

/* Reference cards */
.ref-grid {
  display:grid; grid-template-columns:repeat(3, 1fr); gap:14px;
}
.ref-card {
  display:flex; align-items:center; gap:14px;
  padding:18px 20px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.07);
  border-radius:var(--r-sm);
  transition:var(--tr);
  /* for filter animation */
  animation:refIn .3s var(--ease) both;
}
@keyframes refIn {
  from { opacity:0; transform:translateY(10px); }
  to   { opacity:1; transform:translateY(0); }
}
.ref-card.hidden { display:none; }
.ref-card:hover {
  background:rgba(232,150,15,.14);
  border-color:rgba(232,150,15,.35);
  transform:translateX(6px);
}
.ref-icon-wrap {
  width:36px; height:36px; flex-shrink:0;
  background:rgba(232,150,15,.15);
  border-radius:8px;
  display:flex; align-items:center; justify-content:center;
  font-size:.85rem; color:var(--teal-lt);
  transition:var(--tr);
}
.ref-card:hover .ref-icon-wrap { background:var(--teal); color:var(--white); }

.ref-name {
  flex:1; font-size:.88rem; font-weight:500;
  color:rgba(255,255,255,.82); line-height:1.4;
}
.ref-badge {
  font-size:.68rem; font-weight:600; letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(255,255,255,.35); white-space:nowrap;
}


/* ══════════════════════════════════════════════════════════
   İLETİŞİM
   ══════════════════════════════════════════════════════════ */
.contact-section { background:var(--off); }

.contact-grid {
  display:grid; grid-template-columns:1fr 1.5fr; gap:72px; align-items:start;
}

.contact-intro {
  font-size:1rem; color:var(--text-lt);
  line-height:1.75; margin-bottom:36px;
}

.cinfo-list { display:flex; flex-direction:column; gap:4px; }
.cinfo-item {
  display:flex; align-items:flex-start; gap:18px;
  padding:22px 20px;
  background:var(--white); border:1px solid var(--gray-100);
  border-radius:var(--r-sm); transition:var(--tr);
}
.cinfo-item:hover { border-color:var(--teal); box-shadow:var(--sh-sm); transform:translateX(4px); }

.ci-icon {
  width:42px; height:42px; flex-shrink:0;
  background:rgba(232,150,15,.08); border-radius:10px;
  display:flex; align-items:center; justify-content:center;
  font-size:1rem; color:var(--teal);
  transition:var(--tr);
}
.cinfo-item:hover .ci-icon { background:var(--teal); color:var(--white); }
.ci-icon.insta {
  background:linear-gradient(135deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);
  color:var(--white);
}
.ci-label {
  display:block; font-size:.7rem; font-weight:700;
  color:var(--teal); letter-spacing:.12em; text-transform:uppercase;
  margin-bottom:4px;
}
.cinfo-item p, .cinfo-item a {
  font-size:.9rem; color:var(--text); line-height:1.5;
}
.cinfo-item a { transition:color .2s; }
.cinfo-item a:hover { color:var(--teal); }

/* Form */
.contact-form-wrap {
  background:var(--white);
  border:1px solid var(--gray-100);
  border-radius:var(--r-lg);
  padding:52px 48px;
  box-shadow:var(--sh-sm);
}
.form-row-2 { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.fg { margin-bottom:22px; }
.fg:last-of-type { margin-bottom:28px; }

.fg label {
  display:block; font-size:.78rem; font-weight:600;
  color:var(--navy); letter-spacing:.03em;
  margin-bottom:8px;
}
.fg label abbr { color:var(--teal); margin-left:2px; }

.fg input, .fg textarea {
  width:100%; padding:13px 16px;
  border:1.5px solid var(--gray-100);
  border-radius:var(--r-sm);
  font-family:var(--sans); font-size:.93rem;
  color:var(--text); background:var(--off);
  outline:none; resize:vertical;
  transition:border-color .25s, box-shadow .25s, background .25s;
}
.fg input:focus, .fg textarea:focus {
  border-color:var(--teal);
  background:var(--white);
  box-shadow:0 0 0 3px rgba(232,150,15,.12);
}
.fg input::placeholder, .fg textarea::placeholder { color:var(--gray-300); }

.form-msg {
  display:flex; align-items:center; gap:12px;
  padding:14px 18px; border-radius:var(--r-sm);
  margin-bottom:22px; font-size:.88rem; font-weight:500;
}
.form-msg--ok  { background:rgba(232,150,15,.1); border:1px solid var(--teal); color:var(--teal-dk); }
.form-msg--err { background:rgba(220,38,38,.06);  border:1px solid #dc2626;    color:#b91c1c; }


/* ══════════════════════════════════════════════════════════
   FOOTER
   ══════════════════════════════════════════════════════════ */
.site-footer { background:var(--navy-mid); color:rgba(255,255,255,.55); }

.footer-inner {
  display:grid; grid-template-columns:2fr 1fr 1.5fr 1.3fr;
  gap:60px; padding:80px 0 60px;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.footer-logo { height:50px; margin-bottom:18px; }
.footer-brand p {
  font-size:.86rem; line-height:1.75; max-width:250px; margin-bottom:22px;
}
.footer-insta {
  display:inline-flex; width:40px; height:40px; border-radius:10px;
  align-items:center; justify-content:center;
  font-size:1.1rem; color:var(--white);
  background:linear-gradient(135deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);
  transition:var(--tr);
}
.footer-insta:hover { transform:translateY(-3px) scale(1.05); box-shadow:0 8px 24px rgba(0,0,0,.3); }

.footer-nav h4, .footer-contact h4 {
  font-size:.75rem; font-weight:700; color:var(--white);
  text-transform:uppercase; letter-spacing:.14em; margin-bottom:20px;
}
.footer-nav ul li { margin-bottom:11px; }
.footer-nav ul li a {
  font-size:.85rem; color:rgba(255,255,255,.5); transition:color .2s;
}
.footer-nav ul li a:hover { color:var(--teal-lt); }
.footer-nav ul li:not(:has(a)) {
  font-size:.82rem; color:rgba(255,255,255,.35);
  display:flex; align-items:center; gap:8px;
}
.footer-nav ul li:not(:has(a))::before {
  content:''; width:3px; height:3px;
  background:var(--teal); border-radius:50%; flex-shrink:0;
}

.footer-contact address p {
  display:flex; align-items:flex-start; gap:10px;
  font-size:.84rem; margin-bottom:12px; line-height:1.5;
}
.footer-contact address i { color:var(--teal); margin-top:2px; flex-shrink:0; }
.footer-contact a { transition:color .2s; }
.footer-contact a:hover { color:var(--teal-lt); }

.footer-bar {
  padding:22px 0;
  border-top:1px solid rgba(255,255,255,.05);
}
.footer-bar-inner {
  display:flex; justify-content:space-between; align-items:center;
  font-size:.8rem; color:rgba(255,255,255,.3);
  flex-wrap:wrap; gap:8px;
}

/* Back to top */
.to-top {
  position:fixed; bottom:28px; right:28px; z-index:800;
  width:44px; height:44px;
  background:var(--navy); color:var(--teal);
  border:1.5px solid rgba(232,150,15,.4);
  border-radius:var(--r-sm); font-size:.9rem;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 6px 24px rgba(12,26,46,.5);
  opacity:0; pointer-events:none;
  transform:translateY(12px);
  transition:var(--tr);
}
.to-top.show { opacity:1; pointer-events:auto; transform:translateY(0); }
.to-top:hover { background:var(--teal); color:var(--navy); border-color:var(--teal); transform:translateY(-3px); }


/* ══════════════════════════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════════════════════════ */
@media (max-width:1100px) {
  .services-grid    { grid-template-columns:repeat(3,1fr); }
  .partner-grid     { grid-template-columns:repeat(4,1fr); }
  .footer-inner     { grid-template-columns:1fr 1fr; gap:40px; }
}

@media (max-width:900px) {
  .about-grid    { grid-template-columns:1fr; gap:52px; }
  .contact-grid  { grid-template-columns:1fr; gap:48px; }
  .ref-grid      { grid-template-columns:repeat(2,1fr); }
  .partner-grid  { grid-template-columns:repeat(3,1fr); }
  .stats-inner   { gap:0; padding:28px 20px; }
  .contact-form-wrap { padding:36px 30px; }
}

@media (max-width:768px) {
  .section { padding:80px 0; }
  .section-top { margin-bottom:48px; }

  /* Mobile menu */
  .nav-toggle { display:flex; }
  .main-nav {
    position:fixed; top:0; right:-100%; bottom:0;
    width:min(310px, 85vw);
    background:var(--navy);
    display:flex; align-items:flex-start; justify-content:center;
    padding:100px 40px 40px;
    transition:right .4s var(--ease);
    box-shadow:-20px 0 80px rgba(0,0,0,.5);
  }
  .main-nav.open { right:0; }
  .main-nav ul { flex-direction:column; gap:0; width:100%; }
  .main-nav ul li { border-bottom:1px solid rgba(255,255,255,.07); }
  .main-nav ul li:first-child { border-top:1px solid rgba(255,255,255,.07); }
  .nav-link { display:block; padding:18px 0; font-size:1rem; color:rgba(255,255,255,.8); }
  .nav-link:hover, .nav-link.active { color:var(--white); }
  .main-nav .nav-dropdown-btn { color:rgba(255,255,255,.8); }
  .main-nav .nav-dropdown-btn:hover,
  .main-nav .nav-dropdown-btn.active { color:var(--white); }
  .nav-cta {
    display:block; padding:18px 0 !important;
    background:none !important; box-shadow:none !important;
    color:var(--teal-lt) !important;
  }

  /* Layout adjustments */
  .hero-title { letter-spacing:-.04em; }
  .services-grid { grid-template-columns:repeat(2,1fr); }
  .ref-grid  { grid-template-columns:1fr; }
  .partner-grid { grid-template-columns:repeat(2,1fr); }
  .footer-inner { grid-template-columns:1fr; gap:36px; padding:60px 0 40px; }
  .footer-bar-inner { flex-direction:column; text-align:center; }
  .form-row-2 { grid-template-columns:1fr; }
  .stats-inner { flex-wrap:wrap; }
  .stat-item { flex:0 0 50%; padding:16px; }
  .stat-divider { display:none; }
}

@media (max-width:540px) {
  .services-grid { grid-template-columns:1fr; }
  .partner-grid  { grid-template-columns:1fr 1fr; }
  .hero-actions  { flex-direction:column; align-items:center; }
  .contact-form-wrap { padding:28px 22px; }
  .ref-tabs { gap:8px; }
  .ref-tab { font-size:.78rem; padding:8px 14px; }
  .stat-item { flex:0 0 100%; }
}

/* ── Reduced motion ──────────────────────────────────────── */
@media (prefers-reduced-motion:reduce) {
  *, *::before, *::after {
    animation-duration:.01ms !important;
    transition-duration:.01ms !important;
  }
  .reveal { opacity:1; transform:none; }
}


/* ══════════════════════════════════════════════════════════
   NAV DROPDOWN
   ══════════════════════════════════════════════════════════ */
.nav-dropdown-item {
  position:relative;
}
/* Görünmez köprü: buton ile alt menü arasındaki boşluğu doldurur */
.nav-dropdown-item::after {
  content:'';
  position:absolute; top:100%; left:-12px; right:-12px;
  height:22px;
  z-index:190;
}

.nav-dropdown-btn {
  display:inline-flex; align-items:center; gap:6px;
  background:none; border:none; padding:0;
  font-size:.87rem; font-weight:500;
  color:var(--gray-700);
  letter-spacing:.02em;
  cursor:pointer; transition:color .25s;
  position:relative;
}
.nav-dropdown-btn::after {
  content:''; position:absolute; bottom:-4px; left:0; right:0; height:1px;
  background:var(--teal);
  transform:scaleX(0); transform-origin:left;
  transition:transform .3s var(--ease);
}
.nav-dropdown-btn:hover,
.nav-dropdown-item.open .nav-dropdown-btn { color:var(--navy); }
.nav-dropdown-btn:hover::after,
.nav-dropdown-item.open .nav-dropdown-btn::after { transform:scaleX(1); }

.nav-arrow {
  font-size:.55rem; opacity:.7;
  transition:transform .25s var(--ease), opacity .25s;
}
.nav-dropdown-item.open .nav-arrow { transform:rotate(180deg); opacity:1; }

.nav-submenu {
  position:absolute; top:calc(100% + 20px); left:50%;
  transform:translateX(-50%) translateY(-8px);
  min-width:230px;
  background:rgba(12,26,46,.97);
  backdrop-filter:blur(24px);
  border:1px solid rgba(255,255,255,.09);
  border-radius:var(--r-md);
  padding:8px;
  opacity:0; pointer-events:none;
  transition:opacity .22s var(--ease), transform .22s var(--ease);
  box-shadow:0 24px 64px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.05);
  z-index:200;
}
.nav-submenu::before {
  content:'';
  position:absolute; top:-5px; left:50%;
  transform:translateX(-50%) rotate(45deg);
  width:10px; height:10px;
  background:rgba(12,26,46,.97);
  border-left:1px solid rgba(255,255,255,.09);
  border-top:1px solid rgba(255,255,255,.09);
}
.nav-dropdown-item:hover .nav-submenu,
.nav-dropdown-item.open .nav-submenu {
  opacity:1; pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}
.nav-submenu li a {
  display:flex; align-items:center; gap:12px;
  padding:11px 14px;
  font-size:.86rem; font-weight:500;
  color:rgba(255,255,255,.7);
  border-radius:var(--r-sm);
  transition:var(--tr);
  letter-spacing:.01em;
}
.nav-submenu li a:hover {
  background:rgba(232,150,15,.14);
  color:var(--white);
}
.nav-submenu li a .sub-icon {
  width:30px; height:30px; flex-shrink:0;
  background:rgba(232,150,15,.1);
  border-radius:7px;
  display:flex; align-items:center; justify-content:center;
  font-size:.8rem; color:var(--teal-lt);
  transition:var(--tr);
}
.nav-submenu li a:hover .sub-icon {
  background:var(--teal); color:var(--white);
}
.nav-submenu li a.submenu-active {
  background:rgba(232,150,15,.14); color:var(--white);
}
.nav-submenu li a.submenu-active .sub-icon {
  background:var(--teal); color:var(--white);
}
.nav-dropdown-btn.active { color:var(--navy); }
.nav-dropdown-btn.active::after { transform:scaleX(1); }

/* Refs CTA strip */
.refs-cta {
  margin-top:56px;
  padding:28px 32px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.09);
  border-radius:var(--r-md);
  display:flex; align-items:center; justify-content:space-between;
  gap:24px; flex-wrap:wrap;
}
.refs-cta-text h4 {
  font-size:1rem; font-weight:700; color:var(--white);
  margin-bottom:4px;
}
.refs-cta-text p {
  font-size:.85rem; color:rgba(255,255,255,.5);
}
.refs-cta .btn-teal {
  flex-shrink:0; white-space:nowrap;
}

/* ══════════════════════════════════════════════════════════
   PAGE HERO  (iş bitirme sayfası)
   ══════════════════════════════════════════════════════════ */
.page-hero {
  background:var(--navy);
  padding:140px 0 80px;
  position:relative; overflow:hidden;
}
.page-hero::before {
  content:'';
  position:absolute; inset:0;
  background-image:repeating-linear-gradient(
    -45deg,
    rgba(232,150,15,.04) 0px, rgba(232,150,15,.04) 1px,
    transparent 1px, transparent 60px
  );
  pointer-events:none;
}
.page-hero::after {
  content:'';
  position:absolute; top:-20%; right:-5%;
  width:50%; height:140%;
  background:radial-gradient(ellipse, rgba(232,150,15,.08) 0%, transparent 65%);
  pointer-events:none;
}
.page-hero .container { position:relative; z-index:1; }

.ph-breadcrumb {
  display:flex; align-items:center; gap:10px;
  font-size:.78rem; font-weight:500;
  color:rgba(255,255,255,.45);
  margin-bottom:28px;
  letter-spacing:.04em;
}
.ph-breadcrumb a { transition:color .2s; }
.ph-breadcrumb a:hover { color:var(--teal-lt); }
.ph-breadcrumb i { font-size:.6rem; opacity:.5; }
.ph-breadcrumb span { color:rgba(255,255,255,.7); }

.ph-eyebrow {
  display:flex; align-items:center; gap:14px;
  margin-bottom:22px;
}
.ph-eyebrow span:not(.eyebrow-rule) {
  font-size:.7rem; font-weight:700;
  letter-spacing:.22em; text-transform:uppercase;
  color:rgba(255,255,255,.45);
}

.page-hero h1 {
  font-family:var(--sans);
  font-size:clamp(2.2rem, 5vw, 3.8rem);
  font-weight:900; color:var(--white);
  line-height:1.08; letter-spacing:-.05em;
  margin-bottom:20px;
}
.page-hero h1 em {
  font-style:normal; color:var(--teal-lt);
  text-shadow:0 0 60px rgba(245,170,40,.35);
}
.page-hero p {
  font-size:1rem; color:rgba(255,255,255,.52);
  max-width:520px; line-height:1.75;
  margin-bottom:36px;
}

.ph-stats {
  display:flex; gap:36px; flex-wrap:wrap;
  padding-top:32px;
  border-top:1px solid rgba(255,255,255,.07);
}
.ph-stat { display:flex; flex-direction:column; gap:3px; }
.ph-stat-num {
  font-size:1.9rem; font-weight:800; color:var(--white);
  letter-spacing:-.04em; line-height:1;
}
.ph-stat-num span { color:var(--teal-lt); }
.ph-stat-lbl {
  font-size:.73rem; font-weight:500;
  color:rgba(255,255,255,.4);
  letter-spacing:.06em; text-transform:uppercase;
}

/* ══════════════════════════════════════════════════════════
   İŞ BİTİRME — PDF GRID
   ══════════════════════════════════════════════════════════ */
.isbitirme-section { background:var(--off); }

.pdf-grid {
  display:grid; grid-template-columns:repeat(3, 1fr);
  gap:20px;
}

.pdf-card {
  background:var(--white);
  border:1px solid var(--gray-100);
  border-radius:var(--r-lg);
  overflow:hidden;
  display:flex; flex-direction:column;
  transition:var(--tr);
  box-shadow:var(--sh-xs);
  animation:refIn .35s var(--ease) both;
}
.pdf-card:hover {
  transform:translateY(-4px);
  box-shadow:var(--sh-md);
  border-color:rgba(232,150,15,.25);
}
.pdf-card.hidden { display:none; }

.pdf-card-header {
  padding:24px 24px 0;
  display:flex; align-items:flex-start; justify-content:space-between;
  gap:12px;
}
.pdf-icon-wrap {
  width:52px; height:52px; flex-shrink:0;
  background:rgba(232,150,15,.08);
  border-radius:var(--r-md);
  display:flex; align-items:center; justify-content:center;
  font-size:1.25rem; color:var(--teal);
  transition:var(--tr);
}
.pdf-card:hover .pdf-icon-wrap {
  background:var(--teal); color:var(--white);
}
.pdf-badge {
  font-size:.65rem; font-weight:700;
  letter-spacing:.1em; text-transform:uppercase;
  color:var(--teal); background:rgba(232,150,15,.08);
  padding:5px 10px; border-radius:50px;
  white-space:nowrap;
}

.pdf-card-body {
  padding:18px 24px 0; flex:1;
}
.pdf-card-body h3 {
  font-size:.96rem; font-weight:700; color:var(--navy);
  line-height:1.4; margin-bottom:6px;
}
.pdf-card-body p {
  font-size:.82rem; color:var(--text-lt); line-height:1.5;
}

.pdf-card-footer {
  padding:20px 24px 24px;
  display:flex; align-items:center; gap:10px;
  margin-top:auto;
}
.btn-pdf-view {
  flex:1;
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:11px 16px;
  background:var(--navy); color:var(--white);
  border:none; border-radius:var(--r-sm);
  font-size:.84rem; font-weight:600;
  cursor:pointer; transition:var(--tr);
}
.btn-pdf-view:hover { background:var(--teal); }

.btn-pdf-dl {
  width:42px; height:42px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  background:var(--off); color:var(--gray-700);
  border-radius:var(--r-sm);
  font-size:.9rem; transition:var(--tr);
}
.btn-pdf-dl:hover { background:var(--teal); color:var(--white); }

/* ══════════════════════════════════════════════════════════
   PDF MODAL
   ══════════════════════════════════════════════════════════ */
.pdf-modal {
  position:fixed; inset:0; z-index:1000;
  display:flex; align-items:center; justify-content:center;
  padding:20px;
  opacity:0; pointer-events:none;
  transition:opacity .3s var(--ease);
}
.pdf-modal.open {
  opacity:1; pointer-events:auto;
}
.pdf-modal-bg {
  position:absolute; inset:0;
  background:rgba(12,26,46,.92);
  backdrop-filter:blur(12px);
}
.pdf-modal-content {
  position:relative; z-index:1;
  width:100%; max-width:1000px; height:90vh;
  background:var(--white);
  border-radius:var(--r-lg);
  display:flex; flex-direction:column;
  overflow:hidden;
  box-shadow:0 40px 100px rgba(0,0,0,.6);
  transform:scale(.96) translateY(16px);
  transition:transform .3s var(--ease);
}
.pdf-modal.open .pdf-modal-content {
  transform:scale(1) translateY(0);
}

.pdf-modal-header {
  display:flex; align-items:center; justify-content:space-between;
  gap:16px; padding:18px 24px;
  background:var(--navy);
  border-bottom:1px solid rgba(255,255,255,.07);
  flex-shrink:0;
}
.pdf-modal-title {
  font-size:.92rem; font-weight:600; color:var(--white);
  display:flex; align-items:center; gap:10px; flex:1; min-width:0;
}
.pdf-modal-title i { color:var(--teal); flex-shrink:0; }
.pdf-modal-title span { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

.pdf-modal-actions { display:flex; align-items:center; gap:10px; flex-shrink:0; }
.btn-modal-dl {
  display:inline-flex; align-items:center; gap:8px;
  padding:9px 18px;
  background:var(--teal); color:var(--white);
  border-radius:var(--r-sm); font-size:.83rem; font-weight:600;
  transition:var(--tr); white-space:nowrap;
}
.btn-modal-dl:hover { background:var(--teal-dk); }
.btn-modal-close {
  width:38px; height:38px;
  background:rgba(255,255,255,.07); color:rgba(255,255,255,.7);
  border:1px solid rgba(255,255,255,.1);
  border-radius:var(--r-sm); font-size:.95rem;
  display:flex; align-items:center; justify-content:center;
  cursor:pointer; transition:var(--tr);
}
.btn-modal-close:hover { background:rgba(220,38,38,.2); color:var(--white); border-color:rgba(220,38,38,.4); }

.pdf-frame {
  flex:1; border:none; background:var(--gray-50);
}

/* ══════════════════════════════════════════════════════════
   MOBILE — nav dropdown
   ══════════════════════════════════════════════════════════ */
@media (max-width:768px) {
  .nav-dropdown-item .nav-submenu {
    position:static;
    transform:none;
    opacity:1; pointer-events:auto;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.07);
    border-radius:var(--r-sm);
    box-shadow:none;
    margin:2px 0 6px;
    display:none;
    min-width:auto;
  }
  .nav-dropdown-item.open .nav-submenu { display:block; }
  .nav-submenu::before { display:none; }
  .nav-dropdown-btn {
    width:100%; display:flex; justify-content:space-between;
    padding:18px 0; font-size:1rem;
    border-bottom:1px solid rgba(255,255,255,.07);
  }
  .nav-dropdown-btn::after { display:none; }
  .nav-dropdown-item.open .nav-dropdown-btn {
    border-bottom-color:rgba(232,150,15,.25);
  }
  .nav-submenu li a { padding:13px 16px; }

  .pdf-grid { grid-template-columns:1fr 1fr; }
  .page-hero { padding:110px 0 60px; }
  .ph-stats { gap:24px; }
  .refs-cta { flex-direction:column; }
}

@media (max-width:540px) {
  .pdf-grid { grid-template-columns:1fr; }
  .pdf-modal { padding:0; }
  .pdf-modal-content { border-radius:0; height:100dvh; }
  .ph-stats { gap:20px; }
}

@media (max-width:1100px) {
  .pdf-grid { grid-template-columns:repeat(2,1fr); }
}

/* ── eSarj Yapı Banner ────────────────────────────────────── */
.esarj-banner {
  display: flex;
  align-items: center;
  gap: 24px;
  background: linear-gradient(135deg, #0f2027 0%, #0f3460 60%, #16a34a22 100%);
  border: 1px solid rgba(22,163,74,.25);
  border-radius: var(--r-lg);
  padding: 28px 32px;
  flex-wrap: wrap;
}
.esarj-banner-icon {
  width: 56px;
  height: 56px;
  background: rgba(22,163,74,.15);
  border-radius: var(--r-md);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 1.6rem;
  color: #4ade80;
}
.esarj-banner-body {
  flex: 1;
  min-width: 200px;
}
.esarj-banner-badge {
  display: inline-block;
  background: rgba(22,163,74,.2);
  color: #4ade80;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: 3px 10px;
  border-radius: 100px;
  margin-bottom: 8px;
}
.esarj-banner-body h3 {
  color: #fff;
  font-size: 1.1rem;
  font-weight: 700;
  margin-bottom: 6px;
}
.esarj-banner-body p {
  color: rgba(255,255,255,.65);
  font-size: .88rem;
  line-height: 1.55;
  margin: 0;
}
.esarj-banner-body strong { color: #4ade80; }
.esarj-banner-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #16a34a;
  color: #fff;
  font-size: .88rem;
  font-weight: 700;
  padding: 12px 22px;
  border-radius: var(--r-md);
  text-decoration: none;
  white-space: nowrap;
  flex-shrink: 0;
  transition: background .2s, transform .2s;
}
.esarj-banner-btn:hover {
  background: #15803d;
  transform: translateY(-2px);
}

@media (max-width: 640px) {
  .esarj-banner { flex-direction: column; align-items: flex-start; }
  .esarj-banner-btn { width: 100%; justify-content: center; }
}

