/* =====================================================================
   Anadolu İndüksiyon — site.css
   Tasarım sistemi "Kor" (v3)
   Konsept: kontrollü ısı. Grafit/çelik zeminler, ölçülü kullanılan kor
   turuncusu → kızıl vurgu. Teknik pafta dili: mono etiketler, hairline
   ızgaralar, numaralı bölümler, köşe işaretleri.
   Sıra: 0 fontlar · 1 token'lar · 2 taban · 3 tipografi · 4 butonlar
   5 header · 6 hero "Kor" · 7 ana sayfa · 8 iç sayfalar · 9 formlar
   10 footer · 11 hareket · 12 erişilebilirlik / yazdırma
   ===================================================================== */

/* ---------------------------------------------------------------- 0 fontlar (yerel; Google Fonts yok — KVKK) */
@font-face { font-family: 'League Spartan'; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url('/assets/fonts/league-spartan-latin-ext-wght-normal.woff2') format('woff2-variations');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'League Spartan'; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url('/assets/fonts/league-spartan-latin-wght-normal.woff2') format('woff2-variations');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* ---------------------------------------------------------------- 1 token'lar */
:root {
  /* grafit / çelik skalası (koyu → açık) */
  --g-950: #0b0d10;
  --g-900: #121417;
  --g-800: #1a1d22;
  --g-700: #272b31;
  --g-600: #3a3f47;
  --g-500: #5c636c;
  --g-400: #8a929b;
  --g-300: #b9bfc6;
  --g-200: #d9dce0;
  --g-100: #ebedef;
  --g-50: #f5f5f4;
  --paper: #ffffff;              /* 2026-10-16 müşteri isteği: krem yerine beyaz zemin */
  --sand: #f4f5f7;       /* ikinci zemin (nötr açık gri): alıntı, zaman çizgisi, rakam bandı */
  --sand-line: #e1e4e8;
  --ink: #0f1114;
  --white: #ffffff;
  /* kor: ısı skalası (soğuk → sıcak) */
  --ember-900: #4a130f;
  --ember-700: #c62419;
  --ember-600: #f24a1c;
  --ember-500: #ff7a1a;
  --ember-300: #ffb15e;
  --ember-100: #ffe9cf;
  --heat: linear-gradient(90deg, var(--ember-700), var(--ember-500) 55%, var(--ember-300));
  /* marka */
  --red: #d7141a;
  --red-dark: #a80f14;
  --red-tint: #fbe9e9;
  --ok: #1d7a46;
  --warn: #9a5b00;
  --ok-tint: #e7f4ec;            /* başarı zemini (kopyalandı, form gönderildi) */
  --ok-line: #b7dcc5;
  --ember-50: #fff6ee;           /* çok açık kor zemin (dosya bırakma alanı) */
  /* WhatsApp markası: yalnız WhatsApp bağlantılarında */
  --wa: #25d366;
  --wa-ink: #0b2e17;
  --wa-dark: #1a9e4b;            /* açık zeminde WhatsApp ikonu (≥3:1) */
  /* çizgiler */
  --rule: rgba(15,17,20,.14);
  --rule-strong: rgba(15,17,20,.5);
  --rule-light: rgba(255,255,255,.13);
  --rule-light-strong: rgba(255,255,255,.4);
  --tint-light: rgba(255,255,255,.06);   /* koyu zeminde hover dolgusu */
  /* zemine göre kor vurgu: açık zeminde koyu kor (≥4.5:1), koyu zeminde açık kor — koyu yüzeylerde aşağıda yeniden tanımlanır */
  --ember-text: var(--ember-700);        /* küçük kor yazı, ok/ikon, numara */
  --ember-hover: var(--ember-700);       /* bağlantı hover rengi */
  --focus: var(--ember-700);             /* klavye odak halkası */
  /* tipografi */
  --font-display: 'League Spartan', 'Segoe UI', Roboto, Arial, sans-serif;
  /* tek aile: League Spartan (müşteri isteği, 2026-10-07) — başlık, gövde, arayüz ve etiketler */
  --font-ui: 'League Spartan', 'Segoe UI', Roboto, Arial, sans-serif;
  --font-body: 'League Spartan', 'Segoe UI', Roboto, Arial, sans-serif;
  /* Etiket fontu: daktilo (Plex Mono) yerine sitenin başlık fontu — müşteri isteği (2026-10-07) */
  --font-mono: 'League Spartan', 'Segoe UI', Roboto, Arial, sans-serif;
  --fs-xs: .82rem;
  --fs-sm: .97rem;
  --fs-base: 1.125rem;
  --fs-md: 1.28rem;
  --fs-lg: 1.5rem;
  --fs-xl: clamp(1.7rem, 1.2rem + 1.6vw, 2.3rem);
  --fs-2xl: clamp(2.1rem, 1.3rem + 2.8vw, 3.3rem);
  --fs-display: clamp(2.1rem, 1rem + 3.1vw, 4.2rem);
  --fs-display-xl: clamp(2.5rem, 1rem + 4.6vw, 5.8rem);
  --fs-hero: clamp(2.3rem, .8rem + 4.1vw, 5rem);
  --ls-label: .08em;             /* küçük büyük harfli etiketler: eyebrow, dt, tarih, sütun adı */
  /* boşluk */
  --s-1: 4px; --s-2: 8px; --s-3: 12px; --s-4: 16px; --s-5: 24px; --s-6: 32px; --s-7: 48px; --s-8: 64px; --s-9: 96px;
  --section: clamp(60px, 7vw, 108px);
  --section-sm: clamp(48px, 6vw, 88px);
  --wrap: 1280px;
  --gutter: clamp(20px, 4vw, 56px);
  --header-h: 76px;
  --radius: 10px; --radius-m: 16px; --radius-l: 24px;
  /* hareket: --motion panelden gelen hız çarpanı (yavaş 1.5 / normal 1 / hızlı .6) */
  --motion: 1;
  --dur-1: calc(160ms * var(--motion));
  --dur-2: calc(320ms * var(--motion));
  --dur-3: calc(520ms * var(--motion));
  --dur-4: calc(900ms * var(--motion));
  --ease: cubic-bezier(.2, .7, .1, 1);
  --ease-io: cubic-bezier(.65, 0, .35, 1);
  --ease-draw: cubic-bezier(.3, .6, .1, 1);
  --grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ---------------------------------------------------------------- 2 taban */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: calc(var(--header-h) + 16px); overflow-x: clip; }
body { overflow-x: clip; }
body {
  margin: 0; font-family: var(--font-body); font-size: var(--fs-base); line-height: 1.6; letter-spacing: .005em;
  color: var(--ink); background: var(--paper);
  -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; }
button, input, select, textarea { font: inherit; color: inherit; }
h1, h2, h3, h4 { margin: 0; font-family: var(--font-display); font-weight: 700; line-height: 1.05; letter-spacing: -0.015em; text-wrap: balance; }
h3, h4 { font-weight: 600; }
p { margin: 0 0 1em; }
address { font-style: normal; }
[hidden] { display: none !important; }
.sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.ico { width: 1.15em; height: 1.15em; flex: none; }
:focus-visible { outline: 2px solid var(--focus); outline-offset: 3px; }
main:focus { outline: none; }
::selection { background: var(--ember-500); color: var(--g-950); }

.wrap { width: 100%; max-width: calc(var(--wrap) + var(--gutter) * 2); margin-inline: auto; padding-inline: var(--gutter); }
.section { padding-block: var(--section); }
.section--tight { padding-block: var(--section-sm); }
.dark { background: var(--g-900); color: var(--white); }
/* koyu yüzeyler: kor vurgu ve odak halkası açık tonda (tek liste — yeni koyu bileşen eklerken buraya ekleyin) */
:is(.site-header, .nav, .kor, .svc, .closer, .page-hero, .sectors, .catsheet, .tech__panel, .site-footer, .cinfo__card, .news3__feat,
    .cta-band, .dark, .st--quote, .notfound, .actbar, .lightbox, .quote__contact, .svcpage__cta, .map__bar, .facts > div:first-child) {
  --ember-text: var(--ember-500); --ember-hover: var(--ember-300); --focus: var(--ember-500);
}

/* koyu yüzeylerde ince gren (fotoğraf baskısı hissi) */
.kor, .svc, .closer, .page-hero, .site-footer, .notfound { position: relative; isolation: isolate; }
.kor::after, .svc::after, .closer::after, .page-hero::after, .site-footer::after, .notfound::after {
  content: ''; position: absolute; inset: 0; background-image: var(--grain); opacity: .06; pointer-events: none; z-index: 1; mix-blend-mode: overlay;
}

/* ---------------------------------------------------------------- 3 tipografi */
.h1, .h2, .h3, .step__title, legend.step__title { font-family: var(--font-display); font-weight: 700; letter-spacing: -0.015em; line-height: 1.05; }
.h1 { font-size: var(--fs-2xl); text-transform: uppercase; }
.h2 { font-size: clamp(1.5rem, 1.1rem + 1.2vw, 2.1rem); text-transform: uppercase; margin-bottom: .5em; }
.h3 { font-size: 1.25rem; margin-bottom: .6em; }
.lead { font-size: var(--fs-md); line-height: 1.5; color: var(--g-600); }
.num { font-variant-numeric: tabular-nums; }
.display { font-size: var(--fs-display); line-height: 1; letter-spacing: -0.025em; text-transform: uppercase; font-weight: 700; }
.display--sm { font-size: clamp(2.2rem, 1.4rem + 2.6vw, 3.8rem); line-height: .95; }
.display--xl { font-size: var(--fs-display-xl); line-height: .96; }
/* küçük büyük harfli etiket ailesi (tema uyumu, 2026-10-08): eyebrow, sütun/alan adı, tarih, kırıntı, tablo başlığı — hepsi aynı ölçü.
   Bileşen kuralları yalnız renk ve boşluk verir; boyut/aralık/kalınlık buradan gelir. */
.mono, .eyebrow, .label, .crumbs ol, .sidenav__title, .site-footer__h, .dim, .plate--compact dt, .facts dt, .mail-grid span, .cinfo__mails span,
.bank-table td[data-label]::before, .newsidx time, .catsheet__spec dt, .catsheet__cover figcaption, .tech__label, .tech__cert, .tech__ticks,
.lightbox__count, .news3__body time, .news3__rest time, .qflow__meta dt, .spec__table dt, .case__sector, .case__facts dt, .case__svc span,
.mtable thead th, .mtable td[data-label]::before, .pill {
  font-family: var(--font-mono); font-size: var(--fs-xs); font-weight: 600; letter-spacing: var(--ls-label); text-transform: uppercase; font-variant-numeric: tabular-nums;
}
/* bölüm etiketi: kor numara + metin */
.eyebrow { display: flex; align-items: center; gap: 12px; margin: 0 0 var(--s-5); color: var(--g-500); }
.eyebrow span { display: none; } /* numara ile etiket arasındaki çizgi kaldırıldı (müşteri isteği) */
.eyebrow b { margin-right: 2px; font-weight: 600; color: var(--ember-text); }
.eyebrow--light { color: var(--g-400); }
/* kor metin: ısı gradyanı başlıkta tek bir kelime için */
.ember { background: var(--heat); -webkit-background-clip: text; background-clip: text; color: transparent; }

/* ---------------------------------------------------------------- 4 butonlar ve bağlantılar */
.btn {
  position: relative; display: inline-flex; align-items: center; justify-content: center; gap: .6em;
  min-height: 48px; padding: .75em 1.4em; border: 1px solid transparent; border-radius: var(--radius);
  font-family: var(--font-ui); font-weight: 600; font-size: .98rem; line-height: 1.1;
  text-decoration: none; cursor: pointer; white-space: nowrap;
  transition: background-color var(--dur-2) var(--ease), color var(--dur-2) var(--ease), border-color var(--dur-2) var(--ease), box-shadow var(--dur-2) var(--ease), transform var(--dur-1) var(--ease);
}
.btn .ico { transition: transform var(--dur-2) var(--ease); }
@media (hover: hover) { .btn:hover .ico:last-child { transform: translateX(4px); } }
.btn:active { transform: translateY(1px); }
.btn--primary { background: var(--red); color: var(--white); border-color: var(--red); overflow: hidden; isolation: isolate; }
/* hover: koyu kor zemin (beyaz yazı 5.7:1 — ember-600 3.6:1 ile AA altında kalıyordu) + kor ışıma */
.btn--primary:hover { background: var(--ember-700); border-color: var(--ember-700); box-shadow: 0 0 0 1px rgba(242,74,28,.35), 0 12px 32px -12px rgba(255,122,26,.75); }
/* kor süpürmesi (anim-11): açık turuncu ışık bandı hover/odak/dokunmada soldan sağa bir kez geçer; metnin altında kalır */
.btn--primary::after { content: ''; position: absolute; inset: -2px; z-index: -1; pointer-events: none; transform: translateX(-115%);
  background: linear-gradient(105deg, transparent 30%, rgba(255,177,94,.55) 44%, rgba(255,236,214,.6) 50%, rgba(255,177,94,.55) 56%, transparent 70%); }
@media (hover: hover) { .btn--primary:hover::after { transform: translateX(115%); transition: transform calc(750ms * var(--motion)) var(--ease-io); } }
.btn--primary:focus-visible::after, .btn--primary:active::after { transform: translateX(115%); transition: transform calc(750ms * var(--motion)) var(--ease-io); }
.btn--line, .btn--ghost { border-color: var(--rule-light-strong); color: var(--white); background: transparent; }
.btn--line:hover, .btn--ghost:hover { border-color: var(--white); background: var(--tint-light); }
.btn--ghost-dark { border-color: var(--rule-strong); color: var(--ink); background: transparent; }
.btn--ghost-dark:hover { border-color: var(--ink); background: rgba(15,17,20,.04); }
.btn--sm { min-height: 40px; padding: .55em 1.05em; font-size: .92rem; }
.btn--lg { min-height: 56px; padding: .9em 1.7em; font-size: 1.05rem; }
.btn[disabled] { opacity: .6; cursor: progress; }

.link-arrow { display: inline-flex; align-items: center; gap: .5em; font-family: var(--font-ui); font-weight: 600; text-decoration: none; color: inherit; }
.link-arrow .ico { color: var(--ember-text); transition: transform var(--dur-2) var(--ease); }
/* hover rengi zemine göre (--ember-hover); bileşenlerin kendi link rengini (ör. .kor__actions) ezer */
.link-arrow:hover, :is(.kor, .closer, .catsheet, .news3__feat, .map__bar, .dark, .svc) .link-arrow:hover { color: var(--ember-hover); }
@media (hover: hover) { .link-arrow:hover .ico { transform: translateX(5px); } }

/* ---------------------------------------------------------------- 5 header + menü */
.skip { position: absolute; left: 12px; top: -60px; z-index: 100; background: var(--ink); color: var(--white); padding: 10px 16px; }
.skip:focus { top: 12px; }

.site-header { position: fixed; inset: 0 0 auto 0; z-index: 50; color: var(--white); }
/* zemin + bulanıklık ::before üzerinde: backdrop-filter header'ın kendisinde olursa
   mobil menü (position: fixed) header içine hapsolur */
.site-header::before { content: ''; position: absolute; inset: 0; background: rgba(11,13,16,0); border-bottom: 1px solid transparent; transition: background-color var(--dur-3), border-color var(--dur-3); }
.site-header.is-stuck::before, body.nav-open .site-header::before { background: rgba(11,13,16,.82); border-color: var(--rule-light); -webkit-backdrop-filter: blur(14px) saturate(140%); backdrop-filter: blur(14px) saturate(140%); }
.site-header__in { position: relative; display: flex; align-items: center; gap: clamp(12px, 1.2vw, 20px); height: var(--header-main, var(--header-h)); }
/* Üst iletişim şeridi (≥1241px; müşteri isteği 2026-10-21): solda çalışma saati + e-posta, sağda WhatsApp + sabit telefon.
   --header-h şerit dâhil toplam yüksekliktir; hero/sticky boşlukları bunu kullandığı için ayrıca ayar gerekmez.
   Şerit varken header satırındaki telefon/WhatsApp ikonları gizlenir (aynı bilgi üstte yazılı). */
:root { --topbar-h: 0px; }
.topbar { display: none; position: relative; height: var(--topbar-h); background: var(--g-900); border-bottom: 1px solid var(--rule-light); font-size: var(--fs-xs); letter-spacing: .02em; }
.topbar__in { display: flex; align-items: center; justify-content: space-between; gap: 24px; height: 100%; }
.topbar__info, .topbar__contact { display: flex; align-items: center; gap: 22px; color: var(--g-400); white-space: nowrap; }
.topbar a { display: inline-flex; align-items: center; gap: .5em; color: var(--g-200); text-decoration: none; font-weight: 600; font-variant-numeric: tabular-nums; transition: color var(--dur-1); }
.topbar a:hover { color: var(--white); }
.topbar .ico { width: 15px; height: 15px; color: var(--g-400); }
.topbar__wa .ico { color: var(--wa); }
.topbar__contact a { font-size: var(--fs-sm); }
@media (min-width: 1241px) {
  :root { --topbar-h: 36px; --header-main: 76px; --header-h: calc(var(--header-main) + var(--topbar-h)); }
  .topbar { display: block; }
  .site-header__actions .site-header__phone { display: none; }
}
/* Logo renkleri değişmez: koyu zeminde açık renk yuvarlak bir plakanın üzerinde durur */
.brand, .brand-plate { display: inline-flex; align-items: center; flex: none; background: var(--white); border-radius: 12px; padding: 9px 14px; box-shadow: 0 1px 0 rgba(255,255,255,.06), 0 8px 24px -14px rgba(0,0,0,.6); transition: transform var(--dur-2) var(--ease); }
@media (hover: hover) { .brand:hover { transform: translateY(-1px); } }
.brand img { height: 28px; width: auto; display: block; }
.site-header__actions { display: flex; align-items: center; gap: var(--s-3); margin-left: auto; }
.site-header__phone { display: inline-flex; align-items: center; gap: .5em; font-family: var(--font-mono); font-size: var(--fs-sm); text-decoration: none; color: var(--g-300); padding: 8px 10px; }
.site-header__phone:hover { color: var(--white); }
.lang { display: inline-flex; border: 1px solid var(--rule-light); font-family: var(--font-mono); font-size: var(--fs-xs); letter-spacing: .08em; }
.lang a, .lang span { padding: 9px 11px; text-decoration: none; color: var(--g-400); }
.lang span { color: var(--white); background: rgba(255,255,255,.08); }
.lang a:hover { color: var(--white); }
/* Açık/koyu tema düğmesi: açık temada ay, koyu temada güneş görünür */
.theme-toggle { display: inline-grid; place-items: center; flex: none; width: 40px; height: 40px; padding: 0; border: 1px solid var(--rule-light); border-radius: var(--radius); background: none; color: var(--g-300); cursor: pointer; transition: color var(--dur-1), border-color var(--dur-1); }
.theme-toggle:hover { color: var(--white); border-color: var(--g-500); }
.theme-toggle .ico { grid-area: 1 / 1; width: 19px; height: 19px; transition: transform var(--dur-2) var(--ease), opacity var(--dur-1); }
html[data-theme="dark"] .theme-toggle .ico:first-child, html:not([data-theme="dark"]) .theme-toggle .ico:nth-child(2) { opacity: 0; transform: rotate(-60deg) scale(.6); }
.theme-switching, .theme-switching *, .theme-switching *::before, .theme-switching *::after { transition: none !important; }

.nav { margin-left: auto; }
.nav__list { display: flex; gap: 2px; list-style: none; margin: 0; padding: 0; }
.nav__item { position: relative; }
.nav__link {
  position: relative; display: inline-flex; align-items: center; gap: .3em; padding: 10px clamp(8px, .7vw, 12px);
  border: 0; background: none; cursor: pointer; text-decoration: none; color: var(--g-200);
  font-family: var(--font-ui); font-size: .95rem; font-weight: 500;
  transition: color var(--dur-1);
}
.nav__link:hover, .nav__item.is-current > .nav__link, .nav__link[aria-current] { color: var(--white); }
.nav__link .ico { width: 1em; height: 1em; transition: transform var(--dur-2); color: var(--g-500); }
.nav__link::after { content: ''; position: absolute; left: clamp(8px, .7vw, 12px); right: clamp(8px, .7vw, 12px); bottom: 5px; height: 1px; background: var(--ember-500); transform: scaleX(0); transform-origin: left; transition: transform var(--dur-2) var(--ease); }
.nav__link:hover::after, .nav__item.is-current > .nav__link::after, .nav__link[aria-current]::after { transform: scaleX(1); }
.nav__toggle[aria-expanded="true"] .ico { transform: rotate(180deg); }
.nav__panel {
  position: absolute; top: calc(100% + 10px); left: 0; min-width: 260px;
  background: var(--g-900); border: 1px solid var(--rule-light); border-top-color: var(--ember-600);
  box-shadow: 0 30px 60px -24px rgba(0,0,0,.7); padding: 8px;
  opacity: 0; visibility: hidden; transform: translateY(6px);
  transition: opacity var(--dur-1), transform var(--dur-1) var(--ease), visibility 0s var(--dur-1);
}
.nav__panel--wide { min-width: 560px; }
.nav__panel--wide ul { columns: 2; column-gap: 8px; }
.nav__panel ul { list-style: none; margin: 0; padding: 0; }
.nav__panel li { break-inside: avoid; }
.nav__panel a { display: block; padding: 9px 12px; text-decoration: none; font-size: .94rem; color: var(--g-200); }
.nav__panel a:hover, .nav__panel a[aria-current] { background: var(--tint-light); color: var(--ember-300); }
.nav__overview a { display: flex; align-items: center; gap: .4em; font-family: var(--font-ui); font-weight: 600; color: var(--white); border-top: 1px solid var(--rule-light); margin-top: 6px; padding-top: 12px; }
.nav__item.is-open > .nav__panel { opacity: 1; visibility: visible; transform: none; transition: opacity var(--dur-1), transform var(--dur-1) var(--ease); }
@media (hover: hover) and (min-width: 1241px) {
  .nav__item.has-sub:hover > .nav__panel { opacity: 1; visibility: visible; transform: none; transition: opacity var(--dur-1), transform var(--dur-1) var(--ease); }
}
.nav__mobile-extra { display: none; }
.burger { display: none; position: relative; width: 46px; height: 46px; padding: 0; border: 1px solid var(--rule-light); background: rgba(255,255,255,.04); color: var(--white); cursor: pointer; place-items: center; transition: background var(--dur-2), border-color var(--dur-2); }
.burger:hover { background: rgba(255,255,255,.09); }
.burger[aria-expanded="true"] { background: var(--ember-700); border-color: var(--ember-700); }
/* üç çizgi → X: açılırken önce ortada birleşir sonra döner; kapanırken tam tersi */
.burger__lines { position: relative; display: block; width: 20px; height: 14px; }
.burger__lines i { position: absolute; left: 0; width: 100%; height: 2px; border-radius: 2px; background: currentColor; transition: top .22s ease .2s, transform .22s ease 0s, opacity .15s ease .15s; }
.burger__lines i:nth-child(1) { top: 0; }
.burger__lines i:nth-child(2) { top: 6px; }
.burger__lines i:nth-child(3) { top: 12px; }
.burger[aria-expanded="true"] .burger__lines i { top: 6px; transition: top .22s ease 0s, transform .22s ease .2s, opacity .1s ease .1s; }
.burger[aria-expanded="true"] .burger__lines i:nth-child(1) { transform: rotate(45deg); }
.burger[aria-expanded="true"] .burger__lines i:nth-child(2) { opacity: 0; }
.burger[aria-expanded="true"] .burger__lines i:nth-child(3) { transform: rotate(-45deg); }
.site-header__phone, .nav__link { white-space: nowrap; }
.site-header__wa .ico { color: var(--wa); }
/* WhatsApp + sabit telefon numarası yazılı (müşteri isteği 2026-10-21); dar masaüstünde yalnız ikon (menü sığsın); hamburger menüde tam numaralar var */
@media (max-width: 1400px) { .site-header__phone span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); } .site-header__actions { gap: 6px; } }
@media (max-width: 1240px) {
  :root { --header-h: 66px; }
  .site-header__phone { padding: 12px; }
  .brand { padding: 8px 12px; border-radius: 10px; }
  .brand img { height: 24px; }
  .burger { display: inline-grid; }
  .lang { display: none; }
  .theme-toggle { width: 46px; height: 46px; }
  .brand, .site-header__actions { position: relative; z-index: 51; }
  /* Mobil menü: butonun olduğu noktadan büyüyen daire; kapanırken öğeler ters sırayla çıkar, daire geri küçülür */
  .nav {
    position: fixed; inset: 0; margin: 0; z-index: 49; display: flex; flex-direction: column;
    padding: calc(var(--header-h) + 16px) var(--gutter) calc(28px + env(safe-area-inset-bottom, 0px));
    background: radial-gradient(90% 55% at 100% 100%, rgba(242,74,28,.20), transparent 70%), radial-gradient(60% 40% at 0% 0%, rgba(255,255,255,.04), transparent 70%), var(--g-950);
    color: var(--white); overflow-y: auto; overscroll-behavior: contain;
    clip-path: circle(0px at var(--bx, calc(100% - 40px)) var(--by, 33px)); visibility: hidden;
    /* anim-04: kapanışta öğeler hızla söner, daire hemen ardından küçülür (toplam ~0,55 sn; boş koyu ekran beklemesi yok) */
    transition: clip-path .45s cubic-bezier(.7, 0, .25, 1) .08s, visibility 0s linear .53s;
  }
  .nav.is-open { clip-path: circle(150vmax at var(--bx, calc(100% - 40px)) var(--by, 33px)); visibility: visible; transition: clip-path .45s cubic-bezier(.7, 0, .25, 1), visibility 0s; }
  .nav__list { flex-direction: column; gap: 0; counter-reset: navn; width: 100%; max-width: 760px; }
  .nav__mobile-extra { width: 100%; max-width: 760px; }
  .nav__item, .nav__mobile-extra > * { opacity: 0; transform: translateY(12px); transition: opacity .15s ease, transform .15s ease; }
  .nav.is-open .nav__item, .nav.is-open .nav__mobile-extra > * { opacity: 1; transform: none; transition: opacity .35s ease calc(.12s + var(--i) * 35ms), transform .35s cubic-bezier(.2, .7, .1, 1) calc(.12s + var(--i) * 35ms); }
  .nav__item { border-bottom: 1px solid var(--rule-light); counter-increment: navn; }
  .nav__link { width: 100%; justify-content: flex-start; gap: 14px; padding: 15px 0; font-family: var(--font-display); font-size: clamp(1.5rem, 1.1rem + 2vw, 2rem); font-weight: 600; text-transform: uppercase; letter-spacing: -.01em; color: var(--white); }
  .nav__link::before { content: counter(navn, decimal-leading-zero); font-family: var(--font-mono); font-size: .8rem; font-weight: 500; letter-spacing: .04em; color: var(--ember-500); min-width: 1.8em; }
  .nav__link .ico { margin-left: auto; width: 22px; height: 22px; }
  .nav__toggle[aria-expanded="true"] .ico { transform: rotate(180deg); color: var(--ember-500); }
  .nav__link[aria-current], .nav__item.is-current > .nav__link { color: var(--ember-300); }
  .nav__link::after { display: none; }
  .nav__panel, .nav__panel--wide { position: static; min-width: 0; border: 0; box-shadow: none; padding: 0 0 12px calc(1.8em + 14px); display: none; opacity: 1; visibility: visible; transform: none; background: transparent; }
  .nav__panel--wide ul { columns: 1; }
  .nav__panel a { padding: 10px 0 10px 16px; border-left: 1px solid var(--rule-light); border-radius: 0; font-size: 1.02rem; }
  .nav__overview a { border-top: 0; margin: 0; padding-top: 10px; }
  .nav__item.is-open > .nav__panel { display: block; animation: navsub .35s cubic-bezier(.2, .7, .1, 1); }
  .nav__mobile-extra { display: grid; gap: 14px; margin-top: auto; padding-top: 28px; }
  .nav__cta { width: 100%; justify-content: center; }
  .nav__contact { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 10px; }
  .nav__chip { display: flex; align-items: center; justify-content: center; gap: .55em; white-space: nowrap; min-height: 50px; padding: 10px 14px; border-radius: var(--radius); background: var(--tint-light); color: var(--white); text-decoration: none; font-weight: 500; }
  .nav__chip .ico { width: 20px; height: 20px; color: var(--g-300); }
  .nav__chip--wa .ico { color: var(--wa); }
  .nav__lang { display: inline-flex; align-items: center; justify-content: center; gap: .5em; color: var(--g-300); text-decoration: none; font-size: .95rem; padding: 6px; }
  .nav__lang .ico { width: 18px; height: 18px; }
  .nav__prefs { display: flex; justify-content: center; gap: 24px; }
  .nav__theme { border: 0; background: none; font: inherit; font-size: .95rem; cursor: pointer; }
  /* açık temada "ay + Koyu tema", koyu temada "güneş + Açık tema" */
  html:not([data-theme="dark"]) .nav__theme > :is(.ico:nth-child(2), span:last-child),
  html[data-theme="dark"] .nav__theme > :is(.ico:first-child, span:nth-of-type(1)) { display: none; }
  body.nav-open { overflow: hidden; }
  body.nav-open .wa-float, body.nav-open .cc { opacity: 0; visibility: hidden; pointer-events: none; }
}
@media (max-width: 640px) { .site-header__actions .btn, .theme-toggle { display: none; } }

/* ---------------------------------------------------------------- 6 hero "Kor" — asimetrik: başlık fotoğrafın üstüne taşar */
.kor { background: var(--g-950); color: var(--white); min-height: 100svh; display: flex; flex-direction: column; padding-top: var(--header-h); overflow: hidden; }
.kor__guides { display: none; } /* düz grafit zemin (müşteri isteği); yalnızca grain dokusu kalır */
.kor__grid { position: relative; z-index: 2; flex: 1; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); grid-template-rows: auto auto 1fr; column-gap: clamp(12px, 1.6vw, 24px); padding-top: clamp(20px, 3vh, 40px); }
.kor__eyebrow { --i: 0; grid-column: 1 / 6; grid-row: 1; margin: 0 0 clamp(16px, 3vh, 36px); color: var(--g-400); }
.kor__eyebrow b { font-weight: 600; color: var(--ember-text); margin-right: 10px; }
.kor__eyebrow span { color: var(--g-500); margin: 0 6px; }   /* ayırıcı çizgi: koyu zeminde ≥3:1 */
.kor__title { --i: 1; grid-column: 1 / 6; grid-row: 2; z-index: 3; font-size: clamp(2.2rem, .9rem + 3.3vw, 4.4rem); line-height: 1; letter-spacing: -0.025em; text-transform: uppercase; font-weight: 700; max-width: 13ch; margin: 0; }
.kor__copy { --i: 2; grid-column: 1 / 6; grid-row: 3; align-self: start; padding: clamp(24px, 4vh, 44px) 0 clamp(28px, 5vh, 56px); }
.kor__text { margin: 0; max-width: 40ch; font-size: 1.06rem; line-height: 1.55; color: var(--g-300); }
.kor__actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-5); margin-top: var(--s-5); }
.kor__actions .link-arrow { color: var(--g-200); }
/* fotoğraf paneli: 6 kolon, sağ kenara taşar, başlığın altına girer */
.kor__media { grid-column: 7 / 13; grid-row: 1 / 4; z-index: 1; margin: 0 0 clamp(20px, 3vh, 36px) 0; align-self: stretch; display: flex; flex-direction: column; justify-content: flex-end; }

.kor__frame { position: relative; flex: 1; min-height: 420px; max-height: min(74svh, 820px); overflow: hidden; background: var(--g-900); }
.kor__frame::after { content: none; }
.kor__frame img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 62%; }
.kor__cold { filter: grayscale(1) brightness(.5) contrast(1.15); transform: translateY(var(--py, 0px)) scale(1.12); will-change: transform; }
.kor__hot { position: absolute; inset: 0; clip-path: circle(140% at 62% 56%); }
.kor__hot img { opacity: 0; transition: opacity calc(var(--dur-4) * 1.6) ease; transform: translateY(var(--py, 0px)) scale(1.12); will-change: transform; }
.kor__hot img.is-on { opacity: 1; z-index: 2; }
/* anim-07: giden görsel geçiş bitene kadar altta tam opak kalır (çift görüntü / gri katman sızması yok) */
.kor__hot img.is-prev { opacity: 1; z-index: 1; transition: none; }
.kor__glow { position: absolute; inset: -25%; pointer-events: none; mix-blend-mode: screen; opacity: .9;
  background: radial-gradient(34% 26% at 62% 56%, rgba(255,122,26,.6), rgba(242,74,28,.2) 48%, transparent 72%); }
/* yükleme sahnesi */
.js .kor__eyebrow, .js .kor__copy { opacity: 0; transform: translateY(14px); }
.js .kor__media { opacity: 0; }
.js .kor__hot { clip-path: circle(0% at 62% 56%); }
.js .kor__glow { opacity: 0; }
.kor.is-ready .kor__eyebrow, .kor.is-ready .kor__copy { opacity: 1; transform: none; transition: opacity var(--dur-3) var(--ease), transform var(--dur-3) var(--ease); transition-delay: calc(var(--i) * 120ms * var(--motion)); }
.kor.is-ready .kor__media { opacity: 1; transition: opacity var(--dur-3) var(--ease) calc(120ms * var(--motion)); }
.kor.is-ready .kor__hot { animation: ignite calc(1900ms * var(--motion)) var(--ease-draw) calc(420ms * var(--motion)) forwards; }
.kor.is-ready .kor__glow { animation: glowIn calc(1400ms * var(--motion)) ease calc(600ms * var(--motion)) forwards, breathe 5.5s ease-in-out calc(2200ms * var(--motion)) infinite alternate; }
@keyframes ignite { to { clip-path: circle(140% at 62% 56%); } }
@keyframes glowIn { to { opacity: .9; } }
@keyframes breathe { from { transform: scale(1); } to { transform: scale(1.08); } }
@keyframes draw { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }
/* veri şeridi */
.kor__spec { position: relative; z-index: 2; border-top: 1px solid var(--rule-light); }
.kor__spec dl { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; margin: 0; }
.kor__spec dl > div { padding: 16px 20px 20px 0; }
.kor__spec dl > div + div { padding-left: 20px; border-left: 1px solid var(--rule-light); }
.kor__spec dt { color: var(--g-400); }
.kor__spec dd { margin: 6px 0 0; display: grid; gap: 6px; }
.kor__spec strong { font-family: var(--font-display); font-size: clamp(1.6rem, 1rem + 1.4vw, 2.4rem); font-weight: 700; line-height: .95; font-variant-numeric: tabular-nums; }
.kor__spec strong small { font-size: .5em; font-weight: 500; color: var(--g-300); }
.kor__spec dd > span { font-size: var(--fs-sm); color: var(--g-400); }
.js .kor__spec { opacity: 0; }
.kor.is-ready .kor__spec { opacity: 1; transition: opacity var(--dur-3) var(--ease) calc(700ms * var(--motion)); }
.kor.is-ready .kor__spec [data-reveal="draw"] i { transform: none; transition-delay: calc(1000ms * var(--motion)); }
@media (max-width: 1200px) { .kor__spec dl { grid-template-columns: 1.9fr 1fr 1fr 1fr; } }
/* Mobil/tablet hero (2026-10-10, müşteri seçimi "D"): başlık normal harfle, altında parmakla kaydırılan
   fotoğraflı hizmet kartları; büyük hero fotoğrafı/slayt yalnız masaüstünde */
.kor__cards { display: none; }
@media (max-width: 1000px) {
  .kor { min-height: 0; }
  .kor__grid { grid-template-rows: auto auto auto auto; padding-top: clamp(20px, 4vw, 32px); }
  .kor__media { display: none; }
  .kor__eyebrow { grid-column: 1 / -1; grid-row: 1; margin: 0 0 12px; }
  .kor__title { grid-column: 1 / -1; grid-row: 2; text-transform: none; font-size: clamp(2rem, 1.35rem + 2.8vw, 2.7rem); line-height: 1.08; letter-spacing: -0.02em; max-width: 18ch; text-shadow: none; }
  .kor__cards { grid-column: 1 / -1; grid-row: 3; display: flex; gap: 12px; margin: 22px calc(-1 * var(--gutter)) 0; padding: 4px var(--gutter) 28px; margin-bottom: -20px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: var(--gutter); scrollbar-width: none; overscroll-behavior-x: contain; }
  .kor__cards::-webkit-scrollbar { display: none; }
  .kor__copy { grid-column: 1 / -1; grid-row: 4; padding: 18px 0 28px; }
  .kor__spec dl { grid-template-columns: 1fr 1fr; }
  .kor__spec dl > div:nth-child(3) { padding-left: 0; border-left: 0; }
  .kor__spec dl > div:nth-child(n+3) { border-top: 1px solid var(--rule-light); }
}
.kcard { position: relative; flex: 0 0 min(72%, 300px); aspect-ratio: 4 / 5; border-radius: var(--radius-l); overflow: hidden; scroll-snap-align: start; background: var(--g-900); color: var(--white); text-decoration: none; isolation: isolate; box-shadow: 0 14px 30px -22px rgba(0,0,0,.75); -webkit-user-drag: none; user-select: none; -webkit-tap-highlight-color: transparent; transition: transform var(--dur-2) var(--ease); }
.kcard picture, .kcard img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; -webkit-user-drag: none; }
.kcard img { transition: transform 900ms var(--ease); }
.kcard::after { content: ''; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(11,13,16,.15) 0%, transparent 35%, rgba(11,13,16,.92) 100%); }
/* İlk kart: dışa taşan kor gölgesi yerine kartın içinde ince halka (kaydırma alanında kesilmez) */
.kcard:first-child::before { content: ''; position: absolute; inset: 0; z-index: 3; border-radius: inherit; box-shadow: inset 0 0 0 1px rgba(255,122,26,.42); pointer-events: none; }
.kcard:focus-visible { outline: 2px solid var(--focus); outline-offset: -2px; }
.kcard__n { position: absolute; top: 12px; right: 12px; z-index: 2; padding: 6px 10px; border-radius: 999px; background: rgba(11,13,16,.6); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); font-size: var(--fs-xs); letter-spacing: var(--ls-label); }
.kcard__t { position: absolute; left: 16px; right: 16px; bottom: 40px; z-index: 2; font-family: var(--font-display); font-size: 1.25rem; font-weight: 700; line-height: 1.1; text-transform: uppercase; }
.kcard__d { position: absolute; left: 16px; right: 16px; bottom: 16px; z-index: 2; font-size: .88rem; color: var(--g-200); }
@media (min-width: 601px) and (max-width: 1000px) { .kcard { flex-basis: min(40%, 300px); } }
/* Giriş: transition değil animation — böylece sonradan basma/hover gecikmesiz çalışır */
@keyframes kcardIn { from { opacity: 0; transform: translateX(28px); } to { opacity: 1; transform: none; } }
.js .kcard { animation: kcardIn var(--dur-3) var(--ease) both; animation-delay: calc((260ms + var(--i, 0) * 90ms) * var(--motion)); animation-play-state: paused; }
.kor.is-ready .kcard { animation-play-state: running; }
@media (hover: hover) and (pointer: fine) { .kcard:hover img { transform: scale(1.04); } }
@media (hover: none) { .kcard:active { transform: scale(.985); } }
@media (prefers-reduced-motion: reduce) { .js .kcard { animation: none; } .kcard img { transition: none; } }
@media (max-width: 480px) {
  .kor__spec dl > div:first-child, .kor__spec dl > div:nth-child(4) { grid-column: 1 / -1; padding-left: 0; border-left: 0; }
  .kor__spec dl > div:nth-child(2) { padding-left: 0; border-left: 0; border-top: 1px solid var(--rule-light); }
}

/* ölçü çizgisi: |——— etiket ———| */
.dim { display: flex; align-items: center; gap: 10px; color: var(--g-400); }
.dim i { flex: 1; height: 1px; background: currentColor; position: relative; opacity: .7; transform-origin: left; }
.dim i:last-child { transform-origin: right; }
.dim i::before, .dim i::after { content: ''; position: absolute; top: -4px; width: 1px; height: 9px; background: currentColor; }
.dim i::before { left: 0; } .dim i::after { right: 0; }
.dim b { font-weight: 400; text-align: center; }
.dim i { min-width: 14px; }
.js [data-reveal="draw"] i { transform: scaleX(0); transition: transform var(--dur-4) var(--ease-draw) calc(var(--i, 0) * 120ms * var(--motion)); }
.js [data-reveal="draw"].is-in i { transform: none; }

/* ---------------------------------------------------------------- 7 ana sayfa bölümleri */
/* 02 — hakkımızda: dev "35" sayısı ızgarayı kırar; hareket yok */
.about__grid { container-type: inline-size; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: clamp(12px, 1.6vw, 24px); row-gap: clamp(28px, 4vw, 56px); align-items: start; }
.about__num { grid-column: 1 / 4; grid-row: 1 / 3; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; margin-left: calc(-.04em); color: var(--ink); line-height: .8; }
.about__num span { font-family: var(--font-display); font-weight: 800; font-size: min(clamp(4rem, 2rem + 7vw, 10rem), 10.5cqi); letter-spacing: -0.02em; line-height: .78; }
.about__num small { padding-left: .06em; font-family: var(--font-mono); font-size: var(--fs-sm); letter-spacing: .1em; text-transform: uppercase; color: var(--ember-700); }
.about__head { grid-column: 4 / 13; }
.about__head .display { max-width: 16ch; }
.about__text { grid-column: 4 / 9; }
.about__text p { font-size: 1.08rem; line-height: 1.62; color: var(--g-600); }
.about__text p:first-child { color: var(--ink); font-size: 1.2rem; line-height: 1.5; }
.about__principles { grid-column: 9 / 13; margin: 0; display: grid; gap: 22px; padding-left: 20px; border-left: 1px solid var(--rule); }
.about__principles dt { font-family: var(--font-display); font-size: 1.25rem; font-weight: 600; line-height: 1; text-transform: uppercase; display: flex; gap: 12px; align-items: baseline; }
.about__principles dt i { font-style: normal; color: var(--ember-text); }
.about__principles dd { margin: 8px 0 0; color: var(--g-600); font-size: .98rem; }
@media (max-width: 960px) {
  .about__grid { grid-template-columns: 1fr; row-gap: 24px; }
  .about__num, .about__head, .about__text, .about__principles { grid-column: 1 / -1; grid-row: auto; }
  .about__num { margin-bottom: -10px; }
  .about__principles { padding-left: 0; border-left: 0; border-top: 1px solid var(--rule); padding-top: 20px; }
}

/* 03 — hizmet indeksi: sol sabit başlık, sağda satırlar yatay kayarak gelir */
.svc { background: var(--g-900); color: var(--white); }
.svc__grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(32px, 6vw, 110px); align-items: start; }
.svc__head { position: sticky; top: calc(var(--header-h) + 24px); container-type: inline-size; }
.svc__head .display--xl { margin: 0 0 var(--s-5); font-size: min(var(--fs-display-xl), 12cqi); }
.svc__lead { color: var(--g-400); font-size: 1.02rem; max-width: 40ch; margin: 0; }
.svc__more { margin-top: var(--s-6); display: flex; justify-content: flex-end; }
.svc__more .btn { color: var(--white); }
.svcidx { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--rule-light-strong); }
.svcidx li { border-bottom: 1px solid var(--rule-light); overflow: hidden; }
.svcidx a { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; grid-template-rows: auto auto; column-gap: 16px; align-items: baseline; padding: 18px 0 18px; text-decoration: none; }
.svcidx__n { grid-row: 1 / 3; color: var(--ember-text); align-self: start; padding-top: .5em; }
.svcidx__t { font-family: var(--font-display); font-size: clamp(1.3rem, 1rem + .9vw, 1.8rem); font-weight: 600; line-height: 1; text-transform: uppercase; transition: color var(--dur-2), transform var(--dur-2) var(--ease); }
.svcidx__d { grid-column: 2; font-size: var(--fs-sm); color: var(--g-400); margin-top: 6px; max-width: 54ch; }
.svcidx a .ico { grid-row: 1; grid-column: 3; color: var(--g-600); transition: color var(--dur-2), transform var(--dur-2) var(--ease); }
.svcidx a:focus-visible .svcidx__t { color: var(--ember-300); transform: translateX(10px); }
@media (hover: hover) {
  .svcidx a:hover .svcidx__t { color: var(--ember-300); transform: translateX(10px); }
  .svcidx a:hover .ico { color: var(--ember-300); transform: translateX(6px); }
}
.js [data-reveal="slide"] { opacity: 0; transform: translateX(48px); transition: opacity var(--dur-3) var(--ease) calc(var(--i, 0) * 60ms * var(--motion)), transform var(--dur-3) var(--ease) calc(var(--i, 0) * 60ms * var(--motion)); }
.js [data-reveal="slide"].is-in { opacity: 1; transform: none; }
@media (max-width: 860px) { .svc__grid { grid-template-columns: 1fr; } .svc__head { position: static; } .svcidx a { grid-template-columns: 36px minmax(0, 1fr) auto; } }

/* tam genişlik fotoğraf bandı: maske ile soldan açılır */
.band { position: relative; margin: 0; background: var(--g-800); overflow: hidden; }
.band img { width: 100%; height: clamp(320px, 56vw, 760px); object-fit: cover; filter: grayscale(.85) contrast(1.08); }
.band figcaption { position: absolute; z-index: 1; left: var(--gutter); right: var(--gutter); bottom: 18px; display: flex; gap: 24px; color: var(--white); text-shadow: 0 1px 10px rgba(0,0,0,.7); }
.band figcaption span:first-child { flex: none; white-space: nowrap; }
.band figcaption span:first-child { color: var(--ember-300); }
.js [data-reveal="mask"] { clip-path: inset(0 100% 0 0); transition: clip-path calc(var(--dur-4) * 1.3) cubic-bezier(.7, 0, .2, 1); }
.js [data-reveal="mask"].is-in { clip-path: inset(0 0 0 0); }

/* 04 — teknik veri plakası: ölçü çizgileri çizilir, başka hareket yok */
.plate { margin: 0; border: 1px solid var(--rule-strong); }
.plate > div { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 16px; padding: 16px 20px; border-top: 1px solid var(--rule); align-items: center; }
.plate > div:first-child { border-top: 0; }
.plate dt { color: var(--g-500); padding-top: 2px; }
.plate dd { margin: 0; font-size: 1.02rem; }
@media (max-width: 600px) { .plate > div { grid-template-columns: 1fr; gap: 6px; } }

/* 05 — atölye şeridi: kenardan kenara, sürükleyerek; giriş animasyonu yok */
.strip-sec { padding-block: var(--section-sm); border-top: 1px solid var(--rule); }
.strip-sec__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px 32px; flex-wrap: wrap; margin-bottom: clamp(22px, 2.6vw, 36px); }
.strip-sec__head h2 { margin: 0; }
.strip-sec__ctrl { display: flex; align-items: center; gap: 10px; }
.strip-sec__ctrl .link-arrow { margin-left: 14px; }
.strip-btn { width: 48px; height: 48px; display: inline-grid; place-items: center; border-radius: 50%; border: 1px solid var(--sand-line); background: var(--white); color: var(--g-900); cursor: pointer; transition: background var(--dur-2) var(--ease), color var(--dur-2) var(--ease), border-color var(--dur-2) var(--ease), opacity var(--dur-2); }
.strip-btn .ico { width: 20px; height: 20px; }
.strip-btn:hover:not(:disabled) { background: var(--g-900); border-color: var(--g-900); color: var(--white); }
.strip-btn:disabled { opacity: .35; cursor: default; }
/* % dolgu: kaydırma çubuğu genişliğinden etkilenmez → şerit başlıkla aynı hizada başlar */
.strip { --edge: max(var(--gutter), calc((100% - var(--wrap)) / 2)); display: flex; gap: clamp(10px, 1.4vw, 18px); overflow-x: auto; scroll-snap-type: x proximity; scroll-padding-inline: var(--edge); padding: 0 var(--edge); cursor: grab; scrollbar-width: none; }
.strip::-webkit-scrollbar { display: none; }
.strip.is-dragging { cursor: grabbing; scroll-snap-type: none; }
.strip.is-gliding { scroll-snap-type: none; }
.strip.is-dragging > * { pointer-events: none; }
.strip__item { position: relative; flex: none; scroll-snap-align: start; width: clamp(260px, 28vw, 420px); aspect-ratio: 4 / 3; overflow: hidden; background: var(--g-200); }
.strip__item img { width: 100%; height: 100%; object-fit: cover; pointer-events: none; filter: grayscale(1) contrast(1.05); transition: filter var(--dur-4) var(--ease); }
.strip__item.is-in img, .strip__item:hover img { filter: none; }
.strip-bar { position: relative; height: 3px; margin-top: clamp(18px, 2vw, 26px); border-radius: 3px; background: var(--sand-line); overflow: hidden; }
.strip-bar i { position: absolute; inset: 0 auto 0 0; width: 30%; border-radius: 3px; background: var(--g-900); transform: translateX(var(--x, 0)); transition: width var(--dur-2) var(--ease); }
@media (max-width: 600px) { .strip-btn { width: 42px; height: 42px; } .strip-sec__ctrl .link-arrow { margin-left: 6px; } }

/* 07 — yönetim: dört fotoğraf, dönüşümlü dikey kaydırma; hareket yok */
.row-head { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-bottom: clamp(28px, 4vw, 48px); }
.people { list-style: none; margin: 0; padding: 0; display: grid; gap: clamp(16px, 2vw, 28px); }
.people--lead { grid-template-columns: repeat(4, 1fr); }
.people--crew { grid-template-columns: repeat(5, 1fr); }
.people + .h3 { margin-top: clamp(36px, 5vw, 56px); }
.person__photo { aspect-ratio: 4 / 5; overflow: hidden; background: var(--g-200); position: relative; }
.person__photo::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: var(--heat); transform: scaleX(0); transform-origin: left; transition: transform var(--dur-3) var(--ease); }
/* renk: [data-warm] ile ekrana girince ısınır (dokunmatikte de); hover yalnızca fareli cihazlarda */
.person__photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 15%; transition: filter var(--dur-3) var(--ease), transform var(--dur-4) var(--ease); }
@media (hover: hover) {
  .person:hover .person__photo::after { transform: scaleX(1); }
  .person:hover .person__photo img { filter: none; transform: scale(1.03); }
}
.person__name { margin: 12px 0 0; font-family: var(--font-ui); font-weight: 600; font-size: 1.02rem; }
.person__role { margin: 2px 0 0; color: var(--g-500); font-size: var(--fs-sm); }
@media (max-width: 960px) { .people--lead { grid-template-columns: repeat(2, 1fr); } .people--crew { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 520px) { .people--crew { grid-template-columns: repeat(2, 1fr); } }
/* haber dizini sayfası: görselli satırlar */
.newsidx { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--rule-strong); }
.newsidx__item { border-bottom: 1px solid var(--rule); }
.newsidx a { display: grid; grid-template-columns: 240px 150px minmax(0, 1fr) auto; grid-template-rows: auto 1fr; column-gap: 28px; align-items: start; padding: 24px 0; text-decoration: none; }
.newsidx__media { grid-column: 1; grid-row: 1 / 3; aspect-ratio: 4 / 3; overflow: hidden; background: var(--g-200); }
.newsidx__media img { width: 100%; height: 100%; object-fit: cover; }
.newsidx time { grid-column: 2; grid-row: 1 / 3; padding-top: .35em; color: var(--g-500); }
.newsidx__t { grid-column: 3; grid-row: 1; font-family: var(--font-display); font-size: clamp(1.3rem, 1rem + .9vw, 1.8rem); font-weight: 600; line-height: 1; text-transform: uppercase; transition: color var(--dur-2); }
.newsidx__x { grid-column: 3; grid-row: 2; color: var(--g-500); margin-top: 10px; max-width: 60ch; }
.newsidx .ico { grid-column: 4; grid-row: 1 / 3; align-self: start; margin-top: .35em; color: var(--g-400); transition: transform var(--dur-2) var(--ease), color var(--dur-2); }
.newsidx a:hover .newsidx__t { color: var(--ember-700); }
@media (hover: hover) { .newsidx a:hover .ico { color: var(--ember-text); transform: translateX(4px); } }
@media (max-width: 960px) { .newsidx a { grid-template-columns: 200px minmax(0, 1fr) auto; grid-template-rows: auto auto 1fr; } .newsidx time { grid-row: 1; grid-column: 2; padding: 0 0 8px; } .newsidx__t { grid-column: 2; grid-row: 2; } .newsidx__x { grid-column: 2; grid-row: 3; } .newsidx__media { grid-row: 1 / 4; } .newsidx .ico { grid-column: 3; grid-row: 1 / 4; } }
@media (max-width: 600px) { .newsidx a { grid-template-columns: minmax(0, 1fr) auto; row-gap: 4px; } .newsidx__media { grid-column: 1 / -1; grid-row: 1; margin-bottom: 12px; } .newsidx time { grid-column: 1; grid-row: 2; } .newsidx__t { grid-column: 1; grid-row: 3; } .newsidx__x { grid-column: 1; grid-row: 4; } .newsidx .ico { grid-column: 2; grid-row: 2 / 5; } }

/* 09 — kapanış: tam genişlik fotoğraf maske ile açılır, başlık üstüne biner */
.closer { background: var(--g-950); color: var(--white); overflow: hidden; }
.closer__media { position: absolute; inset: 0; z-index: 0; }
.closer__media img { width: 100%; height: 100%; object-fit: cover; opacity: .55; filter: grayscale(.4) contrast(1.1); }
.closer::before { content: ''; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, rgba(11,13,16,.92) 20%, rgba(11,13,16,.5) 60%, rgba(11,13,16,.25)); }
.closer__in { position: relative; z-index: 2; padding-block: clamp(72px, 9vw, 140px); }
.closer .display--xl { max-width: 10ch; }
.closer__in p:not(.eyebrow) { max-width: 44ch; color: var(--g-300); font-size: 1.08rem; margin: var(--s-6) 0 0; }
.closer__actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-5); margin-top: var(--s-6); }
/* koyu zeminde birincil butonun yanındaki telefon bağlantısı: hero (.page-hero__phone), kapanış, CTA bandı — tek görünüm */
.page-hero__phone, .closer__phone, .cta-band__phone { display: inline-flex; align-items: center; gap: .5em; padding: 6px 0; color: var(--g-300); text-decoration: none;
  font-family: var(--font-ui); font-weight: 600; font-size: 1.02rem; letter-spacing: 0; text-transform: none; font-variant-numeric: tabular-nums; transition: color var(--dur-1); }
.page-hero__phone .ico, .closer__phone .ico, .cta-band__phone .ico { width: 20px; height: 20px; }
.page-hero__phone:hover, .closer__phone:hover, .cta-band__phone:hover { color: var(--white); }


/* ---------------------------------------------------------------- 8 iç sayfalar */
.page-hero { background: var(--g-950); color: var(--white); padding: calc(var(--header-h) + clamp(40px, 6vw, 80px)) 0 clamp(44px, 6vw, 80px); overflow: hidden; }
.page-hero::before { content: none; }
.page-hero > .wrap { position: relative; z-index: 2; }
.page-hero__title { font-size: var(--fs-display); line-height: 1; letter-spacing: -0.02em; text-transform: uppercase; max-width: 20ch; }
/* hero fotoğrafı (hizmet/çelik/haber .svcpage__fig ve liste/kurumsal .page-hero__photo): aynı dil — dört köşesi yuvarlak, metinle ortalı,
   hero'nun alt boşluğu korunur (tas-10). Hizmet detay: görselli hero + üç sütun (yan menü / metin / plaka) + önceki-sonraki */
.page-hero__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(32px, 5vw, 80px); align-items: center; }
.page-hero--svc .eyebrow { margin-bottom: var(--s-4); }
.page-hero--svc .page-hero__title { max-width: 14ch; }
.page-hero__media { align-self: center; margin: 0; }
.svcpage__fig { margin: 0; position: relative; border-radius: var(--radius-l); overflow: hidden; }
.svcpage__fig img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; }
.svcpage { display: grid; grid-template-columns: 220px minmax(0, 1fr) 300px; gap: clamp(28px, 4vw, 64px); align-items: start; }
.svcpage__nav, .svcpage__plate { position: sticky; top: calc(var(--header-h) + 24px); }
.svcpage__body { max-width: 66ch; }
.prose--num { counter-reset: sec; }
.prose--num h3 { counter-increment: sec; display: grid; grid-template-columns: auto 1fr; column-gap: 14px; align-items: baseline; }
.prose--num h3::before { content: counter(sec, decimal-leading-zero); font-family: var(--font-mono); font-size: var(--fs-xs); font-weight: 600; letter-spacing: var(--ls-label); color: var(--ember-text); }
.plate--compact { font-size: .95rem; }
.plate--compact > div { grid-template-columns: 1fr; gap: 4px; padding: 12px 14px; align-items: start; }
.svcpage__rel { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.svcpage__rel a { text-decoration: none; color: var(--ink); border-bottom: 1px solid var(--rule-strong); }
.svcpage__rel a:hover { color: var(--ember-700); border-color: currentColor; }
/* koyu yan panel (hizmet/haber yan sütunu, teklif sayfası, iletişim kartıyla aynı aile): --radius-l + aynı iç boşluk */
.svcpage__cta { margin-top: 20px; padding: clamp(22px, 2.6vw, 28px); background: var(--g-950); color: var(--white); }
.svcpage__cta .h3 { margin: 0 0 6px; }
.svcpage__cta p:not(.h3) { margin: 0 0 16px; color: var(--g-400); font-size: .95rem; }
.pager { display: grid; grid-template-columns: 1fr 1fr; margin-top: clamp(48px, 7vw, 96px); border-top: 1px solid var(--rule-strong); border-bottom: 1px solid var(--rule); }
.pager__item { display: grid; gap: 8px; padding: 26px 0; text-decoration: none; color: var(--ink); }
.pager__item--next { text-align: right; border-left: 1px solid var(--rule); padding-left: 24px; }
.pager__item--prev { padding-right: 24px; }
.pager .mono { color: var(--g-500); }
.pager__t { font-family: var(--font-display); font-size: clamp(1.2rem, 1rem + .9vw, 1.7rem); font-weight: 600; text-transform: uppercase; line-height: 1; transition: color var(--dur-2); }
.pager__item:hover .pager__t { color: var(--ember-700); }
.pager__item:empty { border: 0; }
.svcpage--2 { grid-template-columns: minmax(0, 1fr) 300px; }
.svcpage--2 .svcpage__body { max-width: 72ch; }
@media (max-width: 1180px) { .svcpage { grid-template-columns: minmax(0, 1fr) 280px; } .svcpage__nav { display: none; } }
@media (max-width: 1000px) { .page-hero__grid { grid-template-columns: 1fr; } }
@media (max-width: 860px) { .svcpage { grid-template-columns: 1fr; } .svcpage__plate { position: static; } }
@media (max-width: 560px) { .pager { grid-template-columns: 1fr; } .pager__item--next { text-align: left; border-left: 0; border-top: 1px solid var(--rule); padding-left: 0; } .pager__item--prev { padding-right: 0; } }
.page-hero__lead { margin: var(--s-5) 0 0; font-size: var(--fs-md); color: var(--g-300); max-width: 58ch; line-height: 1.5; }
.crumbs ol { list-style: none; margin: 0 0 var(--s-6); padding: 0; display: flex; flex-wrap: wrap; gap: 8px; color: var(--g-500); }
.crumbs li { display: inline-flex; gap: 8px; align-items: center; }
.crumbs li + li::before { content: '/'; color: var(--g-600); }
.crumbs a { text-decoration: none; }
.crumbs a:hover { color: var(--white); }
.crumbs [aria-current] { color: var(--g-300); }
/* meneviş çizgisi: ısıtılmış çubuk üzerindeki renk geçişi */
.temper-line { position: absolute; left: 0; right: 0; bottom: 0; height: 3px; z-index: 2;
  background: linear-gradient(90deg, var(--g-600) 0%, var(--ember-900) 28%, var(--ember-700) 40%, var(--ember-600) 50%, var(--ember-500) 58%, var(--ember-300) 64%, var(--ember-100) 68%, var(--ember-300) 72%, var(--ember-600) 82%, var(--ember-900) 92%, var(--g-600) 100%);
  background-size: 220% 100%; animation: temper calc(1600ms * var(--motion)) var(--ease) both; }
@keyframes temper { from { background-position: 100% 0; opacity: 0; } to { background-position: 35% 0; opacity: 1; } }

.layout-side { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: clamp(32px, 5vw, 80px); align-items: start; }
.layout-side__aside { position: sticky; top: calc(var(--header-h) + 24px); }
.sidenav__title { color: var(--g-500); margin: 0 0 12px; padding-bottom: 12px; border-bottom: 1px solid var(--rule-strong); }
/* başlıktaki bağlantı liste öğesi gibi görünmesin (önceden .sidenav a'nın sol çizgisi, dolgusu ve 15.5 px boyutu geliyordu) */
.sidenav .sidenav__title a { display: inline; padding: 0; border: 0; font-size: inherit; color: inherit; text-decoration: none; }
.sidenav .sidenav__title a:hover { color: var(--ink); }
.sidenav ul { list-style: none; margin: 0; padding: 0; }
.sidenav a { display: block; padding: 9px 0 9px 14px; text-decoration: none; border-left: 1px solid var(--rule); color: var(--g-600); font-size: .97rem; transition: border-color var(--dur-1), color var(--dur-1), padding var(--dur-1); }
.sidenav a:hover { color: var(--ink); border-color: var(--g-500); }
.sidenav a[aria-current] { color: var(--ink); border-color: var(--ember-600); font-weight: 500; padding-left: 18px; }
@media (max-width: 900px) {
  .layout-side { grid-template-columns: minmax(0, 1fr); }
  .layout-side__aside { position: static; order: 2; border-top: 1px solid var(--rule); padding-top: 24px; }
}

.prose { max-width: 70ch; }
.prose h3 { font-size: 1.45rem; text-transform: none; letter-spacing: -0.01em; margin: 1.6em 0 .5em; }
.prose h3:first-child { margin-top: 0; }
.prose h4 { font-size: 1.4rem; margin: 1.4em 0 .4em; }
.prose p, .prose li { color: var(--g-600); }
.prose p:first-child { color: var(--ink); font-size: 1.12rem; }
.prose ul, .prose ol { padding-left: 1.3em; margin: 0 0 1.2em; }
.prose li { margin-bottom: .45em; }
.prose ul li::marker { color: var(--ember-600); }
.prose a { color: var(--ember-text); }
.prose .source { font-size: var(--fs-sm); color: var(--g-500); border-top: 1px solid var(--rule); padding-top: 1em; margin-top: 2em; }
.prose--legal { font-size: 1rem; }
.prose--legal h3 { font-size: var(--fs-md); }

.pill { display: inline-flex; gap: .5em; align-items: center; padding: 8px 14px; background: var(--g-100); margin: 0 0 24px; }
.pill .ico { color: var(--ok); }

/* hizmet / çelik kutuları (tas-02): renkli, 4 sütun 4:3; öksüz satır kalmasın diye gerekirse ilk 1–3 kart iki sütun genişliğinde
   (14 kart = 2 geniş + 12). Mobilde solda küçük foto + sağda başlık/açıklama yatay satır. */
.tiles { --tg: clamp(12px, 1.6vw, 20px); list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--tg); }
.tiles > li { min-width: 0; }
.tile { position: relative; display: flex; flex-direction: column; justify-content: flex-end; gap: 6px; height: 100%; aspect-ratio: 4 / 3; padding: 18px 20px; text-decoration: none; overflow: hidden; background: var(--g-900); color: var(--white); }
.tile__media { position: absolute; inset: 0; }
.tile__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform var(--dur-4) var(--ease), filter var(--dur-4) var(--ease); }
.tile::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11,13,16,0) 38%, rgba(11,13,16,.85)); }
.tile::before { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; z-index: 2; background: var(--heat); transform: scaleX(0); transform-origin: left; transition: transform var(--dur-3) var(--ease); }
.tile__title { position: relative; z-index: 1; display: flex; justify-content: space-between; gap: 12px; align-items: flex-end; font-family: var(--font-display); font-weight: 600; font-size: calc(clamp(1.15rem, .85rem + .6vw, 1.4rem) + var(--wide, 0) * .45rem); line-height: 1.02; text-transform: uppercase; text-shadow: 0 1px 12px rgba(0,0,0,.35); }
.tile__title .ico { flex: none; transition: transform var(--dur-2) var(--ease); }
.tile__desc { position: relative; z-index: 1; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; max-width: 52ch; margin: 0; font-size: .95rem; line-height: 1.4; color: var(--g-200); }
@media (hover: hover) {
  .tile:hover img { transform: scale(1.05); filter: none; }
  .tile:hover::before { transform: scaleX(1); }
  .tile:hover .tile__title .ico { transform: translateX(4px); }
}
.tile:focus-visible::before { transform: scaleX(1); }
/* geniş kartlar: kart sayısına göre (4n+2 → ilk iki, 4n+3 → ilk, 4n+1 → ilk üç) */
.tiles:has(> li:first-child:nth-last-child(4n+2)) > li:nth-child(-n+2),
.tiles:has(> li:first-child:nth-last-child(4n+3)) > li:first-child,
.tiles:has(> li:first-child:nth-last-child(4n+5)) > li:nth-child(-n+3) { grid-column: span 2; --wide: 1; }
.tiles > li { --wide: 0; }
.tiles:has(> li:first-child:nth-last-child(4n+2)) > li:nth-child(-n+2) > .tile,
.tiles:has(> li:first-child:nth-last-child(4n+3)) > li:first-child > .tile,
.tiles:has(> li:first-child:nth-last-child(4n+5)) > li:nth-child(-n+3) > .tile { aspect-ratio: 8 / 3; }
/* satır yüksekliği sütun genişliğinden: geniş ve normal kart aynı satırda birebir eşit boy */
@supports (container-type: inline-size) and selector(:has(*)) {
  :has(> .tiles) { container-type: inline-size; }
  .tiles { grid-auto-rows: calc((100cqi - 3 * var(--tg)) * .1875); }
  .tiles .tile { aspect-ratio: auto !important; }
}
@media (min-width: 961px) and (max-width: 1180px) { .tile { padding: 14px 16px; } .tile__desc { -webkit-line-clamp: 1; } .tile__title { font-size: calc(1.05rem + var(--wide, 0) * .45rem); } }
@media (max-width: 960px) {
  .tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  @supports (container-type: inline-size) and selector(:has(*)) { .tiles { grid-auto-rows: calc((100cqi - var(--tg)) * .375); } }
}
@media (max-width: 600px) {
  .tiles { grid-template-columns: minmax(0, 1fr); grid-auto-rows: auto !important; gap: 10px; }
  .tiles > li { grid-column: auto !important; --wide: 0 !important; }
  .tiles .tile { aspect-ratio: auto !important; height: auto; display: grid; grid-template-columns: 96px minmax(0, 1fr); grid-template-rows: auto auto; align-content: center; column-gap: 14px; row-gap: 4px; min-height: 118px; padding: 10px 14px 10px 10px; background: var(--white); color: var(--ink); border: 1px solid var(--rule); }
  .tiles .tile__media { position: relative; inset: auto; grid-column: 1; grid-row: 1 / span 2; align-self: center; width: 96px; height: 96px; border-radius: var(--radius-m); overflow: hidden; background: var(--g-200); }
  .tile::after { display: none; }
  .tile::before { left: 10px; right: 10px; }
  .tile__title { grid-column: 2; align-self: end; font-size: 1.12rem; text-shadow: none; color: var(--ink); }
  .tile__title .ico { width: 18px; height: 18px; color: var(--ember-700); }
  .tile__desc { grid-column: 2; align-self: start; -webkit-line-clamp: 3; font-size: .95rem; color: var(--g-600); }
}

/* Finansal bilgiler (tas-05): kart görünümü — ticaret unvanı koyu bant, diğer bilgiler yumuşak beyaz kartlar */
.facts { margin: 0 0 clamp(36px, 5vw, 56px); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.facts > div { display: grid; align-content: start; gap: 6px; padding: 18px 20px 20px; border-radius: var(--radius-m); background: var(--white); border: 1px solid var(--rule); min-width: 0; }
.facts > div:first-child { grid-column: 1 / -1; padding: clamp(20px, 2.6vw, 30px) clamp(20px, 2.6vw, 32px); background: var(--g-950); border-color: var(--g-950); color: var(--white); }
.facts dt { color: var(--g-500); }
.facts > div:first-child dt { color: var(--g-400); }
.facts dd { margin: 0; font-weight: 500; line-height: 1.5; overflow-wrap: anywhere; }
.facts > div:first-child dd { font-family: var(--font-display); font-weight: 700; font-size: clamp(1.35rem, 1rem + 1.2vw, 2rem); line-height: 1.1; letter-spacing: -0.01em; text-transform: uppercase; }
.facts a { text-decoration: none; }
.facts a:hover { color: var(--ember-700); }
@media (max-width: 960px) { .facts { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .facts { grid-template-columns: minmax(0, 1fr); } }
.mail-grid { list-style: none; margin: 0 0 clamp(36px, 5vw, 56px); padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.mail-grid li { display: flex; flex-direction: column; gap: 4px; padding: 14px 18px; border-radius: var(--radius-m); background: var(--white); border: 1px solid var(--rule); min-width: 0; }
.mail-grid span { color: var(--ember-text); }
.mail-grid a { text-decoration: none; font-weight: 500; font-size: var(--fs-sm); overflow-wrap: anywhere; }
.mail-grid a:hover { color: var(--ember-700); }
@media (max-width: 960px) { .mail-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .mail-grid { grid-template-columns: minmax(0, 1fr); } }
/* banka bilgileri (tas-05): her genişlikte kart — mobil ve masaüstü aynı bileşen, yatay kaydırma/kırpılma yok */
.table-scroll { overflow: visible; }
.bank-table { width: 100%; min-width: 0; display: block; border-collapse: collapse; font-size: .97rem; }
.bank-table thead { display: none; }
.bank-table tbody { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 12px; }
.bank-table tr { display: grid; align-content: start; gap: 12px; padding: 18px 20px 20px; border-radius: var(--radius-m); background: var(--white); border: 1px solid var(--rule); }
.bank-table th, .bank-table td { display: block; padding: 0; border: 0; text-align: left; }
.bank-table tbody th { font-weight: 700; font-size: 1.02rem; line-height: 1.3; }
.bank-table td[data-label]::before { content: attr(data-label); display: block; margin-bottom: 2px; color: var(--g-500); }
.bank-table td.bank-table__iban { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; }
.bank-table td.bank-table__iban::before { flex-basis: 100%; margin-bottom: 0; }
.iban { display: inline; min-width: 0; margin: 0; white-space: normal; overflow-wrap: anywhere; font-family: var(--font-mono); font-size: 1.05rem; font-weight: 600; font-variant-numeric: tabular-nums; }
/* küçük ikincil düğme: .btn--ghost-dark ile aynı çizgi */
.copy-btn { display: inline-flex; gap: .35em; align-items: center; padding: 8px 12px; border: 1px solid var(--rule-strong); background: transparent; cursor: pointer; font-family: var(--font-mono); font-size: var(--fs-xs); font-weight: 600; letter-spacing: .04em; transition: border-color var(--dur-1), color var(--dur-1), background var(--dur-1); }
.copy-btn:hover { border-color: var(--ink); }
.copy-btn.is-done { background: var(--ok-tint); color: var(--ok); border-color: var(--ok-line); }


.gallery { list-style: none; margin: 0; padding: 0; columns: 4 200px; column-gap: 12px; }
.gallery li { break-inside: avoid; margin-bottom: 12px; }
.gallery a { display: block; overflow: hidden; background: var(--g-200); }
.gallery img { width: 100%; transition: transform var(--dur-4) var(--ease); }
@media (hover: hover) { .gallery a:hover img { transform: scale(1.04); } }
.certs { list-style: none; margin: 0 0 32px; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.certs a { display: block; text-decoration: none; border: 1px solid var(--rule); padding: 12px; background: var(--white); transition: border-color var(--dur-2); }
.certs a:hover { border-color: var(--ember-600); }
.certs img { width: 100%; aspect-ratio: 5 / 7; object-fit: contain; background: var(--g-50); }
.certs span { display: flex; gap: .5em; align-items: center; margin-top: 10px; font-weight: 500; font-size: var(--fs-sm); }
.downloads { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.downloads a { display: flex; align-items: center; gap: 14px; padding: 16px 18px; border: 1px solid var(--rule); background: var(--white); text-decoration: none; transition: border-color var(--dur-2); }
.downloads a:hover { border-color: var(--ember-600); }
.downloads a > span { flex: 1; font-weight: 500; display: flex; flex-direction: column; }
.downloads small { font-weight: 400; color: var(--g-500); }
.downloads .ico:first-child { width: 26px; height: 26px; color: var(--ember-text); }

.lightbox { border: 0; padding: 0; margin: 0; width: 100vw; height: 100vh; max-width: none; max-height: none; background: rgba(11,13,16,.95); color: var(--white); }
.lightbox::backdrop { background: transparent; }
.lightbox__stage { position: absolute; inset: 56px 72px; display: flex; align-items: center; justify-content: center; }
.lightbox__stage img { max-width: 100%; max-height: 100%; object-fit: contain; box-shadow: 0 30px 80px rgba(0,0,0,.5); }
.lightbox button { position: absolute; width: 48px; height: 48px; border-radius: 50%; border: 1px solid rgba(255,255,255,.25); background: var(--tint-light); color: var(--white); cursor: pointer; display: grid; place-items: center; }
.lightbox button:hover { background: rgba(255,255,255,.16); }
.lightbox__close { top: 16px; right: 16px; }
.lightbox__prev { left: 12px; top: 50%; translate: 0 -50%; }
.lightbox__next { right: 12px; top: 50%; translate: 0 -50%; }
.lightbox__count { position: absolute; bottom: 18px; left: 0; right: 0; text-align: center; color: var(--g-400); }
@media (max-width: 640px) { .lightbox__stage { inset: 72px 8px 56px; } .lightbox__prev, .lightbox__next { top: auto; bottom: 8px; translate: none; } }

/* e-katalog: koyu "belge paftası" + hizmet dizini */
.catsheet { background: var(--g-950); color: var(--white); position: relative; isolation: isolate; overflow: hidden; }
.catsheet::after { content: ''; position: absolute; inset: 0; background-image: var(--grain); opacity: .06; pointer-events: none; z-index: 1; mix-blend-mode: overlay; }
.catsheet__grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(40px, 7vw, 120px); align-items: center; }
.catsheet__text .display { max-width: 14ch; margin: 0 0 var(--s-6); }
.catsheet__spec { margin: 0 0 var(--s-6); display: flex; flex-wrap: wrap; gap: 10px; }
.catsheet__spec > div { display: flex; flex-direction: column; gap: 4px; padding: 14px 20px; border-radius: var(--radius-m); background: var(--g-800); min-width: 140px; }
.catsheet__spec dt { color: var(--g-400); margin: 0; }
.catsheet__spec dd { margin: 0; color: var(--g-100); font-weight: 500; }
.catsheet__actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-5); }
.catsheet__actions .link-arrow { color: var(--white); }
.catsheet__note { margin: var(--s-5) 0 0; color: var(--g-400); font-size: .95rem; }
.catsheet__note a { color: var(--ember-300); }
.catsheet__cover { margin: 0; position: relative; justify-self: end; width: min(100%, 440px); }
.catsheet__cover::before { content: ''; position: absolute; inset: 18px -18px -18px 18px; border: 1px solid var(--rule-light-strong); pointer-events: none; }
.catsheet__cover img { position: relative; width: 100%; height: auto; display: block; box-shadow: 0 50px 80px -40px rgba(0,0,0,.9); }
.catsheet__cover figcaption { margin-top: 44px; color: var(--g-400); }
.catidx .eyebrow { margin-bottom: var(--s-5); }
.catidx__list { list-style: none; margin: 0; padding: 0; columns: 2; column-gap: clamp(32px, 5vw, 80px); border-top: 1px solid var(--rule-strong); }
.catidx__list li { break-inside: avoid; border-bottom: 1px solid var(--rule); }
.catidx__list a { display: flex; align-items: baseline; gap: 18px; padding: 14px 0; text-decoration: none; }
.catidx__list .mono { color: var(--ember-text); flex: none; }
.catidx__t { flex: 1; font-family: var(--font-display); font-size: 1.15rem; font-weight: 600; text-transform: uppercase; line-height: 1; transition: color var(--dur-2); }
.catidx__list .ico { align-self: center; color: var(--g-400); transition: transform var(--dur-2) var(--ease), color var(--dur-2); }
.catidx__list a:hover .catidx__t { color: var(--ember-700); }
@media (hover: hover) { .catidx__list a:hover .ico { color: var(--ember-text); transform: translateX(4px); } }
@media (max-width: 900px) { .catsheet__grid { grid-template-columns: 1fr; } .catsheet__cover { justify-self: start; width: min(100%, 360px); order: -1; } }
@media (max-width: 700px) { .catidx__list { columns: 1; } }

.contact { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: clamp(32px, 6vw, 88px); align-items: start; }
.label { display: block; color: var(--g-500); margin-bottom: 2px; }
.map { margin-top: 12px; background: var(--g-50); border: 1px solid var(--rule); aspect-ratio: 4 / 3; position: relative; overflow: hidden; }
.map--wide { margin: clamp(40px, 6vw, 72px) 0 0; aspect-ratio: auto; height: clamp(360px, 46vw, 560px); display: flex; flex-direction: column; }
.map--wide .map__placeholder { inset: 0 0 auto; height: 100%; }
.map--wide iframe { position: absolute; inset: 0 0 auto; height: calc(100% - 58px); width: 100%; border: 0; filter: grayscale(.35) contrast(1.05); }
.map__bar { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; min-height: 58px; display: flex; align-items: center; gap: 20px; padding: 10px 18px; background: var(--g-950); color: var(--white); border-top: 1px solid var(--rule-light); }
.map__bar .mono { color: var(--g-400); flex: none; }
.map__bar > span:nth-child(2) { flex: 1; min-width: 0; font-size: .95rem; }
.map__bar .link-arrow { flex: none; color: var(--white); }
@media (max-width: 600px) { .map--wide { height: auto; } .map--wide .map__placeholder, .map--wide iframe { position: relative; height: 320px; inset: auto; } .map__bar { position: static; flex-wrap: wrap; gap: 6px 16px; } .map__bar > span:nth-child(2) { flex-basis: 100%; } }
.map iframe { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; border: 0; }
.map__placeholder { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 24px; gap: 8px; background: var(--g-50); }
.map__placeholder > .ico { width: 34px; height: 34px; color: var(--ember-text); }
.map__placeholder p { margin: 0; font-weight: 500; max-width: 34ch; }
.map__placeholder small { color: var(--g-500); }
@media (max-width: 960px) { .contact { grid-template-columns: 1fr; } }

.quote { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: clamp(32px, 5vw, 72px); align-items: start; }
.quote__aside { position: sticky; top: calc(var(--header-h) + 24px); }
.quote__contact { padding: clamp(22px, 2.6vw, 28px); background: var(--g-950); color: var(--white); }
.quote__contact a { display: flex; gap: .6em; align-items: center; margin-top: 10px; font-weight: 500; text-decoration: none; word-break: break-all; }
.quote__contact a:hover { color: var(--ember-300); }
.quote__contact p { color: var(--g-400); }
@media (max-width: 960px) { .quote { grid-template-columns: 1fr; } .quote__aside { position: static; } }

.notfound { background: var(--g-950); color: var(--white); min-height: 100svh; display: flex; align-items: center; padding: calc(var(--header-h) + clamp(48px, 8vw, 120px)) 0 clamp(64px, 10vw, 140px); }
.notfound > .wrap { position: relative; z-index: 2; }
.notfound__code { font-family: var(--font-display); font-size: clamp(6rem, 20vw, 14rem); font-weight: 800; line-height: .9; margin: 0 0 24px; background: var(--heat); -webkit-background-clip: text; background-clip: text; color: transparent; }
.notfound .h1 { margin: 0 0 var(--s-4); }
.notfound p:not(.notfound__code) { max-width: 52ch; color: var(--g-400); }
.notfound .hero__actions { margin-top: var(--s-6); }
.hero__actions { display: flex; flex-wrap: wrap; gap: var(--s-3); margin-top: var(--s-6); }

.cta-band { background: var(--g-950); color: var(--white); position: relative; overflow: hidden; }
.cta-band::before { content: ''; position: absolute; inset: 0; background: radial-gradient(40% 70% at 90% 60%, rgba(255,122,26,.18), transparent 70%); pointer-events: none; }
.cta-band__in { position: relative; display: flex; justify-content: space-between; align-items: center; gap: 32px; padding-block: clamp(44px, 6vw, 72px); flex-wrap: wrap; }
.cta-band__title { font-size: clamp(2rem, 1.2rem + 2.4vw, 3.4rem); text-transform: uppercase; margin-bottom: .3em; }
.cta-band p { margin: 0; max-width: 56ch; color: var(--g-400); }
.cta-band__actions { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }

/* ---------------------------------------------------------------- 9 formlar */
.form { position: relative; }
.grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 20px; }
.field--full { grid-column: 1 / -1; }
@media (max-width: 600px) { .grid-2 { grid-template-columns: 1fr; } }
.field label, .field .label { display: block; font-weight: 500; font-size: .95rem; margin-bottom: 6px; color: var(--ink); font-family: var(--font-body); text-transform: none; letter-spacing: 0; }
.req { font-weight: 400; color: var(--g-500); font-size: .85rem; }
.field input, .field select, .field textarea {
  width: 100%; min-height: 50px; padding: 12px 14px; border: 1px solid var(--g-300); background: var(--white);
  transition: border-color var(--dur-1), box-shadow var(--dur-1);
}
/* tek satırlı alanlar ve açılır liste aynı yükseklikte (önceden input 55, select 50, tarih 57 px) */
.field input:not([type="checkbox"]):not([type="radio"]):not([type="file"]), .field select { height: 52px; min-height: 52px; padding-block: 0; }
.field textarea { resize: vertical; min-height: 130px; }
/* açılır liste: tarayıcı oku en kenara yapışıyordu (2026-10-16) → kendi okumuz, kenardan 16px içeride */
.field select { -webkit-appearance: none; appearance: none; padding-right: 48px; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235c636c' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 18px center; background-size: 14px 14px; }
.field select::-ms-expand { display: none; }
.field input[type="date"] { padding-right: 16px; }
.field input[type="date"]::-webkit-calendar-picker-indicator { margin-right: 2px; cursor: pointer; opacity: .7; }
.field input:hover, .field select:hover, .field textarea:hover { border-color: var(--g-500); }
.field input:focus, .field select:focus, .field textarea:focus { outline: none; border-color: var(--ink); box-shadow: 0 0 0 3px rgba(255,122,26,.22); }
.field [aria-invalid="true"] { border-color: var(--red); background: var(--red-tint); }
.hint { margin: 6px 0 0; font-size: .86rem; color: var(--g-500); }
.field__error { margin: 6px 0 0; font-size: .88rem; color: var(--red-dark); font-weight: 500; }
.check { display: grid; grid-template-columns: 22px 1fr; gap: 12px; margin-top: 22px; align-items: start; }
.check input { width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--red); }
.check label { font-size: .95rem; color: var(--g-600); }
.check label a { color: var(--ember-text); }
.check .field__error { grid-column: 2; }
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.form__nav { display: flex; gap: 12px; margin-top: 28px; flex-wrap: wrap; }
.form__nav [data-next], .form__nav [data-submit] { margin-left: auto; }
.form__nav [data-prev] + [data-next] { margin-left: auto; }
.form__status { margin-top: 20px; padding: 14px 16px; background: var(--red-tint); color: var(--red-dark); font-weight: 500; border-left: 3px solid var(--red); }
.form__success { padding: 40px 32px; background: var(--ok-tint); border-left: 3px solid var(--ok); }
.form__success > .ico { width: 40px; height: 40px; color: var(--ok); margin-bottom: 12px; }
.form__success:focus { outline: none; }
.stepper { list-style: none; margin: 0 0 32px; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
/* adım çubuğu: yumuşak hat + yuvarlak numara; etkin numara koyu kor (beyaz 5.7:1) */
.stepper li { display: flex; gap: 10px; align-items: center; padding-top: 12px; border-top: 3px solid var(--g-200); border-radius: 2px 2px 0 0; color: var(--g-500); font-family: var(--font-ui); font-weight: 600; font-size: .9rem; letter-spacing: 0; transition: border-color var(--dur-2), color var(--dur-2); }
.stepper__n { display: grid; place-items: center; width: 26px; height: 26px; border: 1px solid currentColor; border-radius: 50%; flex: none; font-family: var(--font-ui); font-weight: 700; font-size: .8rem; }
.stepper li.is-active { border-color: var(--ember-600); color: var(--ink); }
.stepper li.is-active .stepper__n { background: var(--ember-700); border-color: var(--ember-700); color: var(--white); }
.stepper li.is-done { border-color: var(--ink); color: var(--ink); }
.stepper li.is-done .stepper__n { background: var(--ink); border-color: var(--ink); color: var(--white); }
@media (max-width: 600px) { .stepper__l { display: none; } .stepper li.is-active .stepper__l { display: inline; } }
.step { border: 0; margin: 0; padding: 0; min-width: 0; }
.step__title { font-size: clamp(1.5rem, 1.1rem + 1vw, 2rem); text-transform: uppercase; margin-bottom: 20px; padding: 0; }
.step + .step { margin-top: 40px; }
.js .form--quote .step { display: none; margin-top: 0; }
.js .form--quote .step.is-active { display: block; animation: stepIn var(--dur-3) var(--ease); }
@keyframes stepIn { from { opacity: 0; transform: translateX(16px); } to { opacity: 1; transform: none; } }
html:not(.js) .stepper, html:not(.js) [data-next], html:not(.js) [data-prev] { display: none; }
.dropzone { position: relative; border: 1px dashed var(--g-400); background: var(--white); transition: border-color var(--dur-1), background var(--dur-1); }
.dropzone input { position: absolute; inset: 0; opacity: 0; cursor: pointer; width: 100%; }
.dropzone__label { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 32px 20px; text-align: center; pointer-events: none; }
.dropzone__label .ico { width: 30px; height: 30px; color: var(--ember-text); margin-bottom: 6px; }
.dropzone__label span { color: var(--g-500); font-size: .92rem; }
.dropzone.is-over, .dropzone:focus-within { border-color: var(--ember-600); background: var(--ember-50); }
.filelist { list-style: none; margin: 12px 0 0; padding: 0; display: grid; gap: 8px; }
.filelist li { display: flex; align-items: center; gap: 10px; padding: 10px 12px; background: var(--white); border: 1px solid var(--rule); font-size: .93rem; }
.filelist .thumb { flex: none; width: 44px; height: 44px; border-radius: 8px; overflow: hidden; display: grid; place-items: center; background: var(--sand); }
.filelist .thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.filelist .thumb.is-ext { background: var(--g-900); color: var(--white); font: 700 .72rem/1 var(--font-ui); letter-spacing: .04em; }
.filelist .meta { flex: 1; min-width: 0; display: grid; gap: 2px; }
.filelist .name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 500; }
.filelist .size { color: var(--g-600); font-family: var(--font-mono); font-size: var(--fs-xs); }
.filelist button { border: 0; background: none; color: var(--red); cursor: pointer; font-weight: 500; padding: 4px; }

/* ---------------------------------------------------------------- 10 footer: pafta anteti */
.site-footer { background: var(--g-950); color: var(--g-300); font-size: .95rem; }
.site-footer > .wrap { position: relative; z-index: 2; }
.site-footer__grid { display: grid; grid-template-columns: 1.3fr 1fr 1fr 1.4fr; gap: 40px; padding-block: clamp(56px, 7vw, 96px) 48px; }
.brand-plate--lg { padding: 14px 20px; border-radius: 16px; margin-bottom: 22px; }
.site-footer__brand img { height: 40px; width: auto; display: block; max-width: 100%; }
.site-footer__brand p { max-width: 34ch; color: var(--g-400); }
.site-footer__h { color: var(--g-400); margin-bottom: 18px; }
.site-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.site-footer a { text-decoration: none; transition: color var(--dur-1); }
.site-footer a:hover { color: var(--ember-300); }
.site-footer address { display: grid; gap: 6px; }
.site-footer address strong { color: var(--white); font-weight: 500; }
.site-footer__addr { display: grid; gap: 1px; margin-bottom: 4px; }
.site-footer__addr b { color: var(--white); font-weight: 600; font-size: .85rem; letter-spacing: .02em; }
.social { display: flex; gap: 8px; }
.social a { display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid var(--rule-light); }
.social a:hover { border-color: var(--ember-500); }
.site-footer__bottom { align-items: center; }
.site-footer__bottom .social a { width: 36px; height: 36px; color: var(--g-300); transition: color var(--dur-1), border-color var(--dur-1); }
.site-footer__bottom .social a:hover { color: var(--white); }
.site-footer__bottom .social .ico { width: 18px; height: 18px; }
.site-footer__bottom { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding-block: 20px 28px; border-top: 1px solid var(--rule-light); font-family: var(--font-mono); font-size: var(--fs-xs); letter-spacing: .04em; color: var(--g-500); }
@media (max-width: 960px) { .site-footer__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .site-footer__grid { grid-template-columns: 1fr 1fr; gap: 32px 24px; } .site-footer__brand, .site-footer__grid > div:last-child { grid-column: 1 / -1; } }

/* ---------------------------------------------------------------- 11 hareket */
/* kelime kelime açılan başlık (site.js [data-split]); opaklık da birlikte: İ/Ö/Ü noktaları maskeden taşıp boşlukta belirmez (anim-01) */
[data-split] .w { display: inline-block; overflow: hidden; vertical-align: top; padding: .14em 0 .1em; margin: -.14em 0 -.1em; }
[data-split] .w > span { display: inline-block; }
.js [data-split] .w > span { opacity: 0; transform: translateY(108%); transition: transform var(--dur-3) var(--ease) calc(var(--d, 0ms) * var(--motion)), opacity var(--dur-2) linear calc(var(--d, 0ms) * var(--motion)); }
.js [data-split].is-in .w > span { opacity: 1; transform: none; }
/* iç sayfa başlığı (anim-09): kelimeler 60 ms arayla; kırıntı, etiket ve giriş paragrafı .35 sn sonra 10 px yukarı soluklaşarak gelir */
.js .page-hero:has(h1[data-split]) :is(.crumbs, .eyebrow, .page-hero__lead) { animation: heroLine calc(480ms * var(--motion)) var(--ease) calc(350ms * var(--motion)) both; }
.js .page-hero:has(h1[data-split]) .page-hero__lead { animation-delay: calc(420ms * var(--motion)); }
@keyframes heroLine { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
/* kaydırma girişi: kademeli (--i: sıra; site.js aynı anda görünen öğeleri ekran sırasına göre atar) */
.js [data-reveal=""], .js [data-reveal="up"] { opacity: 0; transform: translateY(16px); transition: opacity var(--dur-3) var(--ease) calc(var(--i, 0) * 70ms * var(--motion)), transform var(--dur-3) var(--ease) calc(var(--i, 0) * 70ms * var(--motion)); }
.js [data-reveal=""].is-in, .js [data-reveal="up"].is-in { opacity: 1; transform: none; }
/* ızgara kartları (galeri, hizmet kutuları, ekip): 22 px aşağıdan ve %97 ölçekten (anim-10) */
.js :is(.gallery, [data-svc-tiles], .people, .team2__leads) > [data-reveal="up"] { transform: translateY(22px) scale(.97); }
.js :is(.gallery, [data-svc-tiles], .people, .team2__leads) > [data-reveal="up"].is-in { transform: none; }
/* görsellerin "ısınması": griden renge (imageWarm). [data-warm] kabı görünür olunca, kartın girişinden ~250 ms sonra renklenir;
   dokunmatik cihazlarda da çalışır (hover beklemez — anim-03) */
.js .heat-reveal { filter: grayscale(1) contrast(1.05) brightness(.82); transition: filter var(--dur-4) var(--ease); }
.js .heat-reveal.is-in { filter: none; }
.js [data-warm] img { filter: grayscale(1) contrast(1.05); transition: filter calc(var(--dur-4) * 1.1) var(--ease) calc((250ms + var(--i, 0) * 70ms) * var(--motion)), transform var(--dur-4) var(--ease); }
.js [data-warm].is-in img { filter: none; }

/* panelden kapatılan efektler: <html data-motion-off="titles reveal ..."> — kapalıyken içerik hep görünür */
html[data-motion-off~="titles"] [data-split] .w > span { opacity: 1 !important; transform: none !important; transition: none !important; }
html[data-motion-off~="titles"] .page-hero :is(.crumbs, .eyebrow, .page-hero__lead) { animation: none !important; }
html[data-motion-off~="reveal"] [data-reveal], html[data-motion-off~="reveal"] [data-reveal] i { opacity: 1 !important; transform: none !important; clip-path: none !important; transition: none !important; }
html[data-motion-off~="imageWarm"] .heat-reveal, html[data-motion-off~="imageWarm"] .strip__item img, html[data-motion-off~="imageWarm"] .band img, html[data-motion-off~="imageWarm"] .person__photo img, html[data-motion-off~="imageWarm"] .tile__media img, html[data-motion-off~="imageWarm"] [data-warm] img { filter: none !important; }
html[data-motion-off~="heroIntro"] .kor__eyebrow, html[data-motion-off~="heroIntro"] .kor__copy, html[data-motion-off~="heroIntro"] .kor__media, html[data-motion-off~="heroIntro"] .kor__spec, html[data-motion-off~="heroIntro"] .kcard { opacity: 1 !important; transform: none !important; transition: none !important; animation: none !important; }
html[data-motion-off~="heroGlow"] .kor__hot { clip-path: circle(140% at 62% 56%) !important; animation: none !important; }
html[data-motion-off~="heroGlow"] .kor__glow { animation: none !important; opacity: .45 !important; }
html[data-motion-off~="heroParallax"] .kor__frame img { transform: scale(1.12) !important; }
html[data-motion-off~="serviceHover"] .svcidx a:hover .svcidx__t, html[data-motion-off~="serviceHover"] .svcidx a:hover .ico { transform: none; }
html[data-motion-off~="serviceHover"] .tile::before, html[data-motion-off~="serviceHover"] .person__photo::after { display: none; }
html[data-motion-off~="temperLine"] .temper-line { animation: none; background-position: 35% 0; opacity: 1; }

/* ---------------------------------------------------------------- 12 erişilebilirlik ve yazdırma */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; transition-delay: 0s !important; scroll-behavior: auto !important; }
  .js [data-split] .w > span, .js [data-reveal], .js [data-reveal] i, .js .kor__eyebrow, .js .kor__copy, .js .kor__media, .js .kor__spec { transform: none !important; opacity: 1 !important; clip-path: none !important; }
  .js .page-hero :is(.crumbs, .eyebrow, .page-hero__lead) { animation: none !important; }
  .js .kor__hot { clip-path: circle(140% at 62% 56%) !important; }
  .js .kor__glow { opacity: .45 !important; animation: none !important; }
  .js .heat-reveal, .js .strip__item img, .js [data-warm] img { filter: none !important; }
  .temper-line { animation: none; background-position: 35% 0; opacity: 1; }
  .btn--primary::after { display: none; }
  [data-svc-tiles] > li.is-pick > .tile { animation: none; }
}
@media print {
  .site-header, .site-footer, .cta-band, .inline-cta, .closer, .kor__glow, .layout-side__aside { display: none !important; }
  body { background: var(--white); color: #000; }
  .page-hero, .kor { background: none; color: #000; padding-top: 0; min-height: 0; }
  .kor__cold, .kor__hot { display: none; }
}

/* ---------------------------------------------------------------- 13 yumuşak köşeler
   Müşteri isteği (2026-10-06): keskin köşe yok. Küçük öğeler --radius, kutular --radius-m, büyük görseller --radius-l.
   Tam genişlik (kenardan kenara) alanlar yuvarlatılmaz; hero fotoğrafı yalnızca iç (sol) köşelerinden yuvarlatılır.
   Ölçek: --radius 10 (düğme, alan, küçük denetim) · --radius-m 16 (liste kartı, kutu, tablo, menü paneli) · --radius-l 24 (panel, fotoğraf, büyük kart) · 999px hap. */
.field input, .field select, .field textarea, .pill, .lang, .site-header__phone, .dropzone, .map__placeholder, .copy-btn, .filelist li, .burger, .social a { border-radius: var(--radius); }
.lang { overflow: hidden; }
.nav__panel, .plate, .certs a, .downloads a, .form__success, .form__status { border-radius: var(--radius-m); }
.plate { overflow: hidden; }
/* koyu/açık yan paneller: iletişim kartı (.cinfo__card), teklif yan kutuları, hizmet yan CTA'sı aynı köşe */
.svcpage__cta, .quote__contact { border-radius: var(--radius-l); }
.kor__frame { border-radius: var(--radius-l); }
@media (max-width: 1000px) { .kor__frame { border-radius: 0 0 var(--radius-l) var(--radius-l); } }
.catsheet__cover img, .catsheet__cover::before, .tile, .tile__media, .person__photo, .gallery a, .strip__item, .newsidx__media, .lightbox__stage img, .map { border-radius: var(--radius-l); }
/* kenardan kenara alanlar (.band, .closer__media) yuvarlatılmaz */

/* ---------------------------------------------------------------- 14 ana sayfa 04 + 06 (yeniden tasarım, 2026-10-06) */
/* 04 — teknik veriler: sol açıklama, sağ koyu yumuşak panel; kapasite ölçeği ısı gradyanıyla çizilir */
.tech__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(32px, 6vw, 96px); align-items: center; }
.tech__head .display { max-width: 12ch; margin-bottom: var(--s-5); }
.tech__lead { color: var(--g-600); font-size: 1.08rem; max-width: 40ch; margin: 0 0 var(--s-5); }
.tech__cert { color: var(--g-500); margin: 0; }
.tech__panel { background: var(--g-950); color: var(--white); border-radius: var(--radius-l); padding: clamp(24px, 3.5vw, 44px); position: relative; isolation: isolate; overflow: hidden; }
.tech__panel::after { content: ''; position: absolute; inset: 0; background-image: var(--grain); opacity: .06; pointer-events: none; mix-blend-mode: overlay; }
.tech__label { display: block; color: var(--g-400); margin-bottom: 12px; }
.tech__range { display: flex; align-items: baseline; gap: 18px; font-family: var(--font-display); font-weight: 700; font-size: clamp(2rem, 1.2rem + 2.4vw, 3.6rem); line-height: 1; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
.tech__arrow { flex: 1; height: 1px; background: var(--rule-light-strong); position: relative; align-self: center; }
.tech__arrow::after { content: ''; position: absolute; right: -1px; top: -4px; width: 8px; height: 8px; border-top: 1px solid var(--g-400); border-right: 1px solid var(--g-400); transform: rotate(45deg); }
.tech__scale { margin-top: 22px; height: 10px; border-radius: 999px; background: var(--g-800); overflow: hidden; }
.tech__scale i { display: block; height: 100%; border-radius: inherit; background: var(--heat); transform-origin: left; }
.js .tech__scale i { transform: scaleX(0); transition: transform var(--dur-4) var(--ease-draw) calc(200ms * var(--motion)); }
.js .tech__scale.is-in i { transform: none; }
.tech__ticks { list-style: none; margin: 10px 0 0; padding: 0; display: flex; justify-content: space-between; color: var(--g-400); }
.tech__ticks li { position: relative; padding-top: 10px; }
.tech__ticks li::before { content: ''; position: absolute; top: 0; left: 0; width: 1px; height: 6px; background: var(--g-500); }
.tech__ticks li:nth-child(2) { text-align: center; } .tech__ticks li:nth-child(2)::before { left: 50%; }
.tech__ticks li:last-child { text-align: right; } .tech__ticks li:last-child::before { left: auto; right: 0; }
.tech__cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: clamp(28px, 3.5vw, 40px); padding-top: clamp(22px, 3vw, 32px); border-top: 1px solid var(--rule-light); }
.tech__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 7px; font-size: .95rem; color: var(--g-200); }
.tech__list a { color: inherit; text-decoration: none; }
.tech__list a:hover { color: var(--ember-300); }
@media (max-width: 960px) { .tech__grid { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .tech__cols { grid-template-columns: 1fr 1fr; } .tech__cols > div:first-child { grid-column: 1 / -1; } }

/* 06 — sektörler: koyu bölüm, iki yönde akan büyük sektör şeridi, altında numaralı "neden biz" */
.sectors { background: var(--g-900); color: var(--white); overflow: hidden; }
.sectors__head { display: grid; gap: 14px; margin-bottom: clamp(28px, 4vw, 48px); }
.sectors__head .eyebrow { margin: 0; }
.sectors__lead { margin: 0; color: var(--g-300); max-width: 56ch; font-size: clamp(1.05rem, 1rem + .3vw, 1.25rem); line-height: 1.5; }
.marquee { overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.marquee + .marquee { margin-top: 10px; }
.marquee__track { display: flex; align-items: center; gap: 28px; width: max-content; padding-block: 6px; font-family: var(--font-display); font-weight: 700; font-size: clamp(2rem, 1.2rem + 3.4vw, 5rem); line-height: 1; letter-spacing: -0.02em; text-transform: uppercase; white-space: nowrap; color: var(--white); animation: marquee calc(42s / var(--motion, 1)) linear infinite; }
.marquee--rev .marquee__track { animation-direction: reverse; color: var(--g-500); }
.marquee__track i { width: 10px; height: 10px; border-radius: 50%; background: var(--ember-600); flex: none; }
.marquee:hover .marquee__track { animation-play-state: paused; }
@keyframes marquee { to { transform: translateX(-50%); } }
.sr-list { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; margin: 0; padding: 0; }
.why2 { margin-top: clamp(40px, 6vw, 80px); display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: clamp(24px, 5vw, 80px); align-items: center; }
.why2__head .display { color: var(--white); max-width: 12ch; margin-bottom: 12px; }
.why2__head p { margin: 0; color: var(--g-400); max-width: 30ch; }
.why2__pills { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.why2__pills li:last-child:nth-child(odd) { grid-column: 1 / -1; }
@media (max-width: 700px) { .why2__pills { grid-template-columns: 1fr; } }
.why2__pills li { display: inline-flex; align-items: center; gap: 14px; padding: 14px 22px 14px 16px; border-radius: 999px; background: var(--g-800); color: var(--g-100); font-size: 1rem; line-height: 1.3; transition: background var(--dur-2), transform var(--dur-2) var(--ease); }
@media (hover: hover) { .why2__pills li:hover { background: var(--g-700); transform: translateY(-2px); } }
.why2__pills b { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: var(--ember-700); color: var(--white); font-weight: 400; font-size: var(--fs-xs); letter-spacing: .04em; flex: none; }
@media (max-width: 860px) { .why2 { grid-template-columns: 1fr; } }
@media (max-width: 760px) { .sectors__head { grid-template-columns: 1fr; } }
/* durağan şerit (anim-02): hareket azaltılmış ya da panelden kapalı → sektörler bir kez, içerik hizasında yuvarlak etiketler.
   Temel tanımdan SONRA gelmeli; çoğaltılmış yarıyı site.js .is-dup ile işaretler. */
@media (prefers-reduced-motion: reduce) {
  .marquee__track { animation: none; flex-wrap: wrap; width: auto; white-space: normal; gap: 10px; font-size: clamp(1.05rem, .9rem + .8vw, 1.6rem); letter-spacing: -0.01em; }
  .marquee__track > .is-dup, .marquee__track > i { display: none; }
  .marquee__track > span { padding: .55em 1em .45em; border-radius: 999px; background: var(--g-800); }
  .marquee--rev { display: none; }
  .marquee { -webkit-mask-image: none; mask-image: none; padding-inline: max(var(--gutter), calc((100% - var(--wrap)) / 2)); }
}
html[data-motion-off~="marquee"] .marquee__track { animation: none; flex-wrap: wrap; width: auto; white-space: normal; gap: 10px; font-size: clamp(1.05rem, .9rem + .8vw, 1.6rem); letter-spacing: -0.01em; }
html[data-motion-off~="marquee"] .marquee__track > .is-dup, html[data-motion-off~="marquee"] .marquee__track > i { display: none; }
html[data-motion-off~="marquee"] .marquee__track > span { padding: .55em 1em .45em; border-radius: 999px; background: var(--g-800); }
html[data-motion-off~="marquee"] .marquee--rev { display: none; }
html[data-motion-off~="marquee"] .marquee { -webkit-mask-image: none; mask-image: none; padding-inline: max(var(--gutter), calc((100% - var(--wrap)) / 2)); }

/* ---------------------------------------------------------------- 15 ana sayfa 07 ekip + 08 haberler (yeniden tasarım) */
.team2 { border-top: 1px solid var(--rule); }
.team2__grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: clamp(32px, 6vw, 96px); align-items: center; }
.team2__text .display { max-width: 10ch; margin-bottom: var(--s-5); }
.team2__lead { color: var(--g-600); font-size: 1.08rem; max-width: 34ch; margin: 0 0 var(--s-6); }
.team2__crew { display: flex; align-items: center; gap: 16px; text-decoration: none; color: var(--ink); flex-wrap: wrap; }
.team2__avatars { display: flex; }
/* Tek halka: çerçeve yalnız dış kapta (picture), görsel kabı tamamen doldurur */
.team2__avatars > * { position: relative; display: block; flex: none; width: 46px; height: 46px; border-radius: 50%; overflow: hidden; margin-left: -12px; box-shadow: 0 0 0 3px var(--paper); background: var(--g-200); }
.team2__avatars > *:first-child { margin-left: 0; }
.team2__avatars img { display: block; width: 100%; height: 100%; margin: 0; border: 0; border-radius: 0; object-fit: cover; object-position: 50% 18%; transition: filter var(--dur-3); }
.team2__avatars > img { width: 46px; height: 46px; border-radius: 50%; }
@media (hover: hover) { .team2__crew:hover .team2__avatars img { filter: none; } }
.team2__crewtext { display: inline-flex; align-items: center; gap: .4em; font-weight: 500; }
.team2__crewtext b { font-family: var(--font-display); font-size: 1.3rem; font-weight: 700; }
.team2__crewtext .ico { width: 18px; height: 18px; color: var(--ember-text); }
.team2__leads { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(14px, 2vw, 24px); }
.team2__leads .person__photo { border-radius: var(--radius-l); }
.team2__leads .person__photo::after { display: none; }
@media (max-width: 1100px) { .team2__grid { grid-template-columns: 1fr; } .team2__leads { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 640px) { .team2__leads { grid-template-columns: 1fr 1fr; } }

.news3 { border-top: 1px solid var(--rule); }
.news3 .row-head { margin-bottom: clamp(24px, 3vw, 40px); }
.news3__feat { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(24px, 4vw, 56px); align-items: center; text-decoration: none; background: var(--g-950); color: var(--white); border-radius: var(--radius-l); overflow: hidden; }
.news3__media { display: block; aspect-ratio: 4 / 3; overflow: hidden; }
.news3__media img { width: 100%; height: 100%; object-fit: cover; transition: transform var(--dur-4) var(--ease); }
@media (hover: hover) { .news3__feat:hover .news3__media img { transform: scale(1.03); } }
.news3__body { display: grid; gap: 14px; padding: clamp(20px, 3vw, 40px) clamp(20px, 3vw, 48px) clamp(20px, 3vw, 40px) 0; }
.news3__body time { color: var(--ember-300); }
.news3__t { font-family: var(--font-display); font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.3rem); font-weight: 700; line-height: 1.05; letter-spacing: -0.02em; text-transform: uppercase; }
.news3__x { color: var(--g-300); max-width: 46ch; }
.news3__body .link-arrow { color: var(--white); margin-top: 6px; }
.news3__rest { list-style: none; margin: clamp(16px, 2vw, 24px) 0 0; padding: 0; display: grid; gap: 0; }
.news3__rest a { display: grid; grid-template-columns: 150px minmax(0, 1fr) auto; gap: 24px; align-items: center; padding: 18px 0; border-bottom: 1px solid var(--rule); text-decoration: none; color: var(--ink); }
.news3__rest time { color: var(--g-500); }
.news3__rt { font-weight: 600; font-family: var(--font-ui); font-size: 1.05rem; transition: color var(--dur-2); }
.news3__rest a:hover .news3__rt { color: var(--ember-700); }
.news3__rest .ico { color: var(--g-400); }
@media (max-width: 860px) { .news3__feat { grid-template-columns: 1fr; } .news3__body { padding: 0 clamp(20px, 4vw, 32px) clamp(20px, 4vw, 32px); } .news3__rest a { grid-template-columns: 1fr auto; } .news3__rest time { grid-column: 1 / -1; } }


/* ---------------------------------------------------------------- 16 iletişim bilgi kartı (yeniden tasarım) */
.cinfo { display: grid; gap: 14px; }
.cinfo__card { background: var(--g-950); color: var(--white); border-radius: var(--radius-l); padding: clamp(22px, 3vw, 34px); display: grid; gap: 22px; }
.cinfo__card .h3 { margin: 0; font-size: 1.2rem; color: var(--white); }
.cinfo__row { display: grid; grid-template-columns: 38px minmax(0, 1fr); column-gap: 12px; row-gap: 10px; align-items: center; }
.cinfo__row > div { display: contents; }
.cinfo__row > div > :not(.label) { grid-column: 1 / -1; }
.cinfo__ico { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: var(--g-800); color: var(--ember-500); }
.cinfo__ico .ico { width: 18px; height: 18px; display: block; }
.cinfo__row .label { color: var(--g-500); }
.cinfo__row .label { margin: 0; line-height: 1; }
.cinfo__row p { margin: 0; color: var(--g-200); line-height: 1.55; }
.cinfo__phones { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.cinfo__phones a { display: inline-flex; align-items: center; padding: 10px 16px; border-radius: 999px; background: var(--g-800); color: var(--white); text-decoration: none; font-weight: 600; font-variant-numeric: tabular-nums; transition: background var(--dur-2); }
.cinfo__phones a:hover { background: var(--ember-700); }
/* departman e-postaları: formun altında tam genişlik, 3'lü sıra (≤960px 2'li, ≤520px tek) */
.contact__mails { display: grid; gap: 14px; margin-top: clamp(36px, 5vw, 56px); }
.cinfo__mails { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; list-style: none; margin: 0; padding: 0; }
.cinfo__mails a { display: grid; gap: 4px; padding: 14px 16px; border-radius: var(--radius-m); background: var(--white); border: 1px solid var(--rule); text-decoration: none; color: var(--ink); transition: border-color var(--dur-2), transform var(--dur-2) var(--ease); min-width: 0; }
@media (hover: hover) { .cinfo__mails a:hover { border-color: var(--ember-600); transform: translateY(-2px); } }
.cinfo__mails span { color: var(--ember-text); }
.cinfo__mails b { font-weight: 500; font-size: var(--fs-sm); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cinfo__h { margin: 10px 0 0; }   /* .h3 ölçüsü (Finansal Bilgiler'deki e-posta başlığıyla aynı) */
@media (max-width: 960px) { .cinfo__mails { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .cinfo__mails { grid-template-columns: 1fr; } }

/* etiketler League Spartan ile: biraz kalın, rakamlar eşit genişlikte */
.crumbs, .kor__spec dt, .plate dt, .site-footer__bottom, time { font-weight: 600; font-variant-numeric: tabular-nums; }


/* ================================================================= 17 okunabilirlik (plan v4, aşama 1)
   Ölçüler: satır ≤ 70ch, uzun metin 19px / 1.7, giriş paragrafı 22–24px, küçük etiketlerde ≥ 4.5:1 kontrast. */
.prose--long { font-size: 1.1875rem; line-height: 1.7; }
.prose--long p { margin: 0 0 1.1em; }
.prose--long p, .prose--long li { color: var(--g-600); }
/* açık zeminde kor rengi küçük yazı → koyu kor (5.1:1), koyu zeminde açık kor: --ember-text (bölüm 2); koyu zeminde etiketler açık gri (6.2:1) */
:is(.kor, .svc, .closer, .page-hero, .sectors, .catsheet, .tech__panel, .site-footer, .cinfo__card, .news3__feat, .cta-band) :is(.label, .tech__label, dt, .site-footer__h, .site-footer__bottom, .crumbs a, .eyebrow) { color: var(--g-400); }

/* yatay alt menü (kurumsal sayfalar): hap seçici — .chip (hizmet seçici, galeri filtresi) ile aynı ölçü ve etkin renk */
.subnav-wrap { padding-top: clamp(20px, 3vw, 32px); }
.sidenav--bar { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.sidenav--bar .sidenav__title { display: none; }
.sidenav--bar ul { display: flex; flex-wrap: wrap; gap: 8px; }
.sidenav--bar a, .sidenav--bar a[aria-current] { border: 1px solid var(--rule); border-radius: 999px; padding: 10px 16px; font-size: .95rem; font-weight: 500; line-height: 1.25; background: var(--white); color: var(--g-900); }
.sidenav--bar a:hover { border-color: var(--ember-700); color: var(--g-900); }
.sidenav--bar a[aria-current] { background: var(--ink); border-color: var(--ink); color: var(--white); }

/* ================================================================= 18 hikâye düzeni bileşenleri (plan v4, aşama 2) */
.story { padding-bottom: 0; }
.st { padding-block: var(--section-sm); }
.st + .st { padding-top: 0; }
/* zemin ritmi: kâğıt → kum (zaman çizgisi, sektörler) → koyu (alıntı); renkli bantlar arka arkaya gelince boşluk kalmaz */
.st--pills, .st--timeline { background: var(--sand); padding-block: var(--section-sm) !important; }
.st--quote { background: var(--g-950); color: var(--white); padding-block: var(--section) !important; position: relative; isolation: isolate; overflow: hidden; }
.st--stats { padding-block: clamp(32px, 4vw, 56px) !important; }
:is(.st--pills, .st--timeline, .st--quote) + .st:not(.st--pills, .st--timeline, .st--quote) { padding-top: var(--section); }
.st__h { display: flex; align-items: baseline; gap: 14px; font-size: clamp(1.6rem, 1.1rem + 1.6vw, 2.4rem); line-height: 1.1; text-transform: none; letter-spacing: -0.02em; margin: 0 0 .7em; }
.st__n { flex: none; display: inline-grid; place-items: center; width: 2.1em; height: 2.1em; padding-top: .14em; line-height: 1; border-radius: 50%; background: var(--ember-100); color: var(--ember-700); font-size: .45em; font-weight: 700; letter-spacing: .02em; transform: translateY(-.35em); }
.st__text { max-width: 66ch; min-width: 0; }
.prose p.st__lead, .st__lead { font-size: clamp(1.35rem, 1rem + 1.1vw, 1.85rem); line-height: 1.45; color: var(--ink); font-weight: 500; letter-spacing: -0.01em; margin-bottom: .8em; }

/* giriş: büyük paragraf + dikey fotoğraf */
.st__introgrid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(32px, 6vw, 96px); align-items: center; }
.st__fig { margin: 0; border-radius: var(--radius-l); overflow: hidden; background: var(--g-200); }
.st__fig img { width: 100%; height: 100%; object-fit: cover; display: block; }
.st__fig--tall { aspect-ratio: 1 / 1; }

/* rakam bandı */
.statband { list-style: none; margin: 0 auto; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(46%, 200px), 1fr)); gap: 12px; }
.statband li { background: var(--sand); border-radius: var(--radius-m); padding: 24px 24px 22px; display: grid; gap: 6px; }
.statband b { font-family: var(--font-display); font-size: clamp(1.5rem, 1.1rem + 1.6vw, 2.8rem); font-weight: 700; letter-spacing: -0.02em; line-height: 1; color: var(--ink); white-space: nowrap; }
.statband span { color: var(--g-600); font-size: 1rem; }

/* metin + yan fotoğraf (sırayla yer değiştirir) */
.st__splitgrid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(32px, 6vw, 96px); align-items: start; }
.st--rev .st__splitgrid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
.st--rev .st__fig { order: -1; }
.st__splitgrid .st__fig { aspect-ratio: 4 / 5; position: sticky; top: calc(var(--header-h) + 24px); }

/* zaman çizgisi: sol metin (yapışkan), sağ duraklar; çizgi kaydırdıkça ısı rengiyle dolar */
.st__tlgrid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(32px, 6vw, 96px); align-items: start; }
.st__sticky { position: sticky; top: calc(var(--header-h) + 24px); }
.tl { list-style: none; margin: 0; padding: 0 0 0 44px; position: relative; display: grid; gap: clamp(28px, 4vw, 48px); }
.tl__rail { position: absolute; left: 13px; top: 8px; bottom: 8px; width: 3px; border-radius: 3px; background: var(--sand-line); overflow: hidden; }
.tl__rail i { display: block; width: 100%; height: 100%; background: linear-gradient(180deg, var(--ember-700), var(--ember-500) 60%, var(--ember-300)); transform-origin: top; transform: scaleY(var(--tl, 1)); }
.js .tl__rail i { --tl: 0; }
.tl__item { position: relative; background: var(--paper); border-radius: var(--radius-l); padding: 22px 24px 24px; display: grid; grid-template-columns: minmax(0, 1fr) clamp(140px, 16vw, 220px); column-gap: 24px; align-items: start; }
.tl__item > :not(.tl__fig):not(.tl__dot) { grid-column: 1; }
.tl__dot { position: absolute; left: -38px; top: 26px; width: 17px; height: 17px; border-radius: 50%; background: var(--sand); border: 3px solid var(--ember-600); }
.tl__year { margin: 0 0 4px; font-family: var(--font-display); font-weight: 700; font-size: 1rem; letter-spacing: .04em; text-transform: uppercase; color: var(--ember-text); }
.tl__t { margin: 0 0 8px; font-size: 1.45rem; font-weight: 700; text-transform: none; letter-spacing: -0.015em; }
.tl__x { margin: 0; color: var(--g-600); font-size: 1.0625rem; line-height: 1.6; max-width: 56ch; }
.tl__fig { grid-column: 2; grid-row: 1 / span 3; margin: 0; border-radius: var(--radius-m); overflow: hidden; aspect-ratio: 1 / 1; }
.tl__fig img { width: 100%; height: 100%; object-fit: cover; }

/* metin + numaralı kutular */
.st__listgrid { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: clamp(32px, 6vw, 96px); align-items: start; }
.st__cards { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr)); gap: 12px; }
.st__cards li, .st__pills li { display: flex; align-items: center; gap: 14px; padding: 16px 18px; border-radius: var(--radius-m); background: var(--white); border: 1px solid var(--rule); font-size: 1.05rem; line-height: 1.35; color: var(--ink); transition: transform var(--dur-2) var(--ease), border-color var(--dur-2); }
@media (hover: hover) { .st__cards li:hover, .st__pills li:hover { transform: translateY(-2px); border-color: var(--ember-600); } }
/* numaralı rozet (dolu): hikâye kartları, hap listesi, "3 adımda teklif", "Talebiniz nasıl ilerler?", uzun liste kartları — tek görünüm */
.st__cards b, .st__pills b, .qsteps__n, .qflow__n,
:is(.svcpage__body, .prose:not(.prose--legal)) ul:has(> li:nth-child(7)) > li::before {
  flex: none; display: grid; place-items: center; width: 34px; height: 34px; padding-top: .14em; border-radius: 50%;
  background: var(--ember-700); color: var(--white); font-family: var(--font-ui); font-size: .82rem; font-weight: 700; line-height: 1; font-variant-numeric: tabular-nums;
}

/* yalnızca liste: kum zeminde hap şerit */
.st__pillgrid .st__h { margin-bottom: 1em; }
.st__pills { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
@media (max-width: 960px) { .st__pills { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .st__pills { grid-template-columns: 1fr; } }
.st__pills li { border-radius: 999px; padding: 12px 22px 12px 12px; border-color: transparent; }

/* h4 grupları: değer kartları */
.st__intro { max-width: 66ch; margin-bottom: 24px; }
.vcards { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 16px; }
.vcard { background: var(--white); border-radius: var(--radius-l); padding: 26px 26px 28px; border: 1px solid var(--rule); transition: transform var(--dur-2) var(--ease), border-color var(--dur-2); }
@media (hover: hover) { .vcard:hover { transform: translateY(-2px); border-color: var(--ember-600); } }
.vcard__ico { display: grid; place-items: center; width: 44px; height: 44px; padding-top: .14em; line-height: 1; border-radius: 50%; background: var(--ember-100); color: var(--ember-700); font-weight: 700; font-size: .9rem; margin-bottom: 16px; transition: background var(--dur-2), color var(--dur-2); }
@media (hover: hover) { .vcard:hover .vcard__ico { background: var(--ember-700); color: var(--white); } }
.vcard__t { font-size: 1.35rem; font-weight: 700; text-transform: none; margin: 0 0 10px; letter-spacing: -0.015em; }
.vcard__b p { margin: 0; color: var(--g-600); font-size: 1.125rem; line-height: 1.6; }

/* vurgulu alıntı */
.pq { margin: 0 auto; max-width: 980px; text-align: left; position: relative; padding-left: clamp(56px, 7vw, 96px); }
.pq::before { content: '“'; position: absolute; left: 0; top: -.18em; font-family: var(--font-display); font-weight: 800; font-size: clamp(5rem, 3rem + 6vw, 9rem); line-height: 1; color: var(--ember-500); }
.pq blockquote { margin: 0; }
.pq blockquote p { margin: 0; font-family: var(--font-display); font-weight: 700; font-size: clamp(1.7rem, 1.1rem + 2.2vw, 3rem); line-height: 1.18; letter-spacing: -0.02em; color: var(--white); text-wrap: balance; }
.pq figcaption { margin-top: 18px; font-weight: 600; color: var(--ember-300); font-size: 1.05rem; }

@media (max-width: 1000px) {
  .st__introgrid, .st__splitgrid, .st--rev .st__splitgrid, .st__tlgrid, .st__listgrid { grid-template-columns: 1fr; }
  .st--rev .st__fig { order: 0; }
  .st__splitgrid .st__fig, .st__sticky { position: static; }
  .st__fig--tall, .st__splitgrid .st__fig { aspect-ratio: 4 / 3; }
}
@media (max-width: 520px) { .tl { padding-left: 34px; } .tl__rail { left: 8px; } .tl__dot { left: -32px; } .tl__item { padding: 18px; grid-template-columns: 1fr; } .tl__fig { grid-column: 1; grid-row: auto; margin-top: 14px; aspect-ratio: 16 / 9; } }
html[data-motion-off~="reveal"] .tl__rail i { --tl: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .tl__rail i { transform: none !important; } .st__cards li:hover, .st__pills li:hover, .vcard:hover { transform: none; } }


/* ================================================================= 19 metin sayfaları (plan v4, aşama 4) */
/* uzun maddeler: iki sütunlu numaralı kutular */
.st__cards--wide { grid-template-columns: repeat(auto-fill, minmax(min(100%, 420px), 1fr)); }
.st__cards--wide li { align-items: flex-start; }
.st__cards--wide b { margin-top: 1px; }
/* açılır bölüm (metni saklamaz, sayfayı kısaltır) */
.st__more { border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.st__more > summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 22px 0; }
.st__more > summary::-webkit-details-marker { display: none; }
.st__more > summary .st__h { margin: 0; }
.st__toggle { flex: none; width: 44px; height: 44px; border-radius: 50%; background: var(--ember-100); position: relative; transition: background var(--dur-2); }
.st__toggle::before, .st__toggle::after { content: ''; position: absolute; left: 50%; top: 50%; width: 16px; height: 2px; background: var(--ember-700); transform: translate(-50%, -50%); transition: transform var(--dur-2) var(--ease); }
.st__toggle::after { transform: translate(-50%, -50%) rotate(90deg); }
.st__more[open] .st__toggle::after { transform: translate(-50%, -50%) rotate(0); }
.st__more > summary:hover .st__toggle { background: var(--ember-300); }
.st__more[open] { padding-bottom: 24px; }
/* belge çağrısı */
.certcta { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; background: var(--sand); border-radius: var(--radius-l); padding: clamp(24px, 4vw, 44px); }
.certcta .st__h { margin-bottom: .3em; }
.certcta p { margin: 0; color: var(--g-600); font-size: 1.0625rem; }
/* misyon / vizyon: tam genişlik ifade */
.st--statement { margin-top: clamp(20px, 3vw, 32px); }
.pq--xl { max-width: 1100px; }
.pq--xl figcaption { margin: 0 0 18px; font-size: 1.05rem; }
.pq--xl blockquote p { font-size: clamp(1.8rem, 1.1rem + 2.6vw, 3.4rem); line-height: 1.15; }
.vcard .link-arrow { margin-top: 18px; display: inline-flex; }
/* hizmet gövdesi: ara fotoğraf + bilgi kutusu */
.prose__fig { margin: 1.6em 0; border-radius: var(--radius-l); overflow: hidden; aspect-ratio: 16 / 9; background: var(--g-200); }
.prose__fig img { width: 100%; height: 100%; object-fit: cover; }
.infobox, .prose aside { background: var(--ember-100); border-radius: var(--radius-m); border-left: 4px solid var(--ember-600); padding: 22px 26px 8px; margin: 1.6em 0; }
.infobox h3 { margin-top: 0 !important; }
.infobox p, .infobox li, .prose aside p { color: var(--ink) !important; }
/* haber: büyük ilk harf + giriş paragrafı */
.prose--news > p:first-child { font-size: clamp(1.25rem, 1rem + .7vw, 1.5rem); line-height: 1.5; color: var(--ink); }
.prose--news > p:first-child::first-letter { float: left; font-family: var(--font-display); font-weight: 800; font-size: 3.6em; line-height: .82; margin: .06em .1em 0 0; color: var(--ember-text); }
/* yasal metin: içindekiler */
.toc { margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--rule); }
.toc ol { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.toc a { display: block; padding: 6px 0 6px 14px; border-left: 2px solid var(--rule); color: var(--g-600); text-decoration: none; font-size: .95rem; line-height: 1.35; }
.toc a:hover { color: var(--ink); border-color: var(--ember-600); }
.prose--legal h3[id] { scroll-margin-top: calc(var(--header-h) + 24px); }
@media (max-width: 960px) { .toc { display: none; } }


/* ================================================================= 20 animasyonlar (plan v4, aşama 5) */
.readbar { position: fixed; left: 0; right: 0; top: 0; height: 3px; z-index: 200; pointer-events: none; background: var(--heat); transform-origin: left; transform: scaleX(var(--p, 0)); }
/* alıntı kelimeleri: koyu zeminde gri → beyaz, açık zeminde gri → mürekkep */
/* sönük kelime --g-400 (koyu zeminde ~6:1): efekt korunur, metin her an okunur (anim-08) */
[data-words].is-split .qw { transition: color var(--dur-2) var(--ease); color: var(--g-400); }
[data-words].is-split .qw.is-lit { color: var(--white); }
/* panel düzenleyicisinden gelen alıntı ve bilgi kutusu (prose içinde) */
.prose blockquote { margin: 1.6em 0; padding: 4px 0 4px 28px; border-left: 4px solid var(--ember-600); }
.prose blockquote p { margin: 0; font-family: var(--font-display); font-weight: 700; font-size: clamp(1.35rem, 1rem + 1vw, 1.8rem); line-height: 1.3; color: var(--ink) !important; letter-spacing: -0.015em; }
html[data-motion-off~="progress"] .readbar { display: none; }
@media (prefers-reduced-motion: reduce) { .readbar { display: none; } }
@media print { .readbar { display: none; } }
@media (max-width: 520px) { .pq { padding-left: 46px; } .pq::before { font-size: 4.2rem; } .pq--xl blockquote p, .pq blockquote p { font-size: 1.55rem; line-height: 1.22; } }

/* ================================================================= 21 WhatsApp butonu + çerez paneli */
.linklike { background: none; border: 0; padding: 0; font: inherit; color: inherit; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.site-footer__links { display: inline-flex; gap: 20px; align-items: center; }
.wa-float { position: fixed; right: max(16px, env(safe-area-inset-right, 0px)); bottom: calc(16px + env(safe-area-inset-bottom, 0px)); z-index: 150; display: inline-flex; align-items: center; gap: 10px; height: 56px; padding: 0 20px 0 16px; border-radius: 999px; background: var(--wa); color: var(--wa-ink); font-weight: 700; font-size: 1rem; text-decoration: none; box-shadow: 0 10px 30px -10px rgba(0,0,0,.45); transition: transform var(--dur-2) var(--ease), box-shadow var(--dur-2), bottom var(--dur-3) var(--ease); }
.wa-float .ico { width: 26px; height: 26px; flex: none; }
@media (hover: hover) { .wa-float:hover { transform: translateY(-3px); box-shadow: 0 16px 34px -12px rgba(0,0,0,.5); } }
@media (max-width: 760px) { .wa-float { width: 56px; padding: 0; justify-content: center; } .wa-float span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); } }
.cc { position: fixed; left: max(16px, env(safe-area-inset-left, 0px)); bottom: calc(16px + env(safe-area-inset-bottom, 0px)); z-index: 160; width: min(460px, calc(100vw - 32px)); background: var(--white); color: var(--ink); border-radius: var(--radius-l); box-shadow: 0 24px 60px -20px rgba(11,13,16,.55); border: 1px solid var(--rule); }
.cc__in { padding: 22px 22px 20px; display: grid; gap: 12px; }
.cc__title { margin: 0; font-family: var(--font-display); font-weight: 700; font-size: 1.2rem; }
.cc__text { margin: 0; font-size: .97rem; line-height: 1.55; color: var(--g-600); }
.cc__text a { color: var(--ember-text); }
.cc__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; }
.cc__actions .btn { min-height: 44px; padding: .6em 1.1em; }
.cc__actions .linklike { color: var(--g-600); font-size: .95rem; }
@media (max-width: 760px) { body.cc-open .wa-float { bottom: calc(16px + env(safe-area-inset-bottom, 0px) + var(--cc-h, 230px)); } }
@media print { .wa-float, .cc { display: none !important; } }

/* 22 — teklif formu: geri yüklenen taslak bildirimi */
.draftnote { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; margin: 0 0 20px; padding: 12px 16px; border-radius: var(--radius); background: var(--ember-100); color: var(--g-900); font-size: .95rem; }
.draftnote button { color: var(--ember-text); font-weight: 600; }

/* 23 — galeri açıklamaları + hizmet sayfası uygulama örnekleri */
.gallery figure { margin: 0; }
.gallery figcaption { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; padding: 8px 2px 0; font-size: .92rem; line-height: 1.4; color: var(--g-800); }
.gallery figcaption a.gallery__svc { background: none; display: inline; overflow: visible; }
.gallery__svc { color: var(--ember-text); font-weight: 600; font-size: .85rem; text-decoration: none; }
.gallery__svc:hover { text-decoration: underline; }
.svcex { margin-top: clamp(40px, 6vw, 72px); }
.svcex h2 { margin: 0 0 20px; }
.gallery--svc { columns: auto; display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 16px; }
.gallery--svc li { margin: 0; }
.gallery--svc a[data-lightbox] { aspect-ratio: 4 / 3; border-radius: var(--radius-m); }
.gallery--svc a[data-lightbox] img, .gallery--svc picture { width: 100%; height: 100%; object-fit: cover; display: block; }
.lightbox__cap { position: absolute; bottom: 50px; left: 50%; transform: translateX(-50%); max-width: min(90vw, 720px); margin: 0; padding: 8px 14px; border-radius: 999px; background: rgba(11,13,16,.72); color: var(--white); font-size: .95rem; text-align: center; }
.svcex .gallery__svc { display: none; }

/* 24 — hizmet seçme yardımcısı */
.picker { margin: 0 0 clamp(28px, 4vw, 44px); padding: clamp(18px, 2.4vw, 28px); border-radius: var(--radius-l); background: var(--sand); }
.picker__q { margin: 0 0 14px; font-size: 1.15rem; font-weight: 700; color: var(--g-900); }
.picker__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.chip { font: 500 .95rem/1.25 var(--font-ui); padding: 10px 16px; border-radius: 999px; border: 1px solid var(--sand-line); background: var(--white); color: var(--g-900); cursor: pointer; transition: background var(--dur-2) var(--ease), color var(--dur-2) var(--ease), border-color var(--dur-2) var(--ease); text-align: left; }
.chip:hover { border-color: var(--ember-700); }
/* etkin hap: .chip[aria-pressed], galeri filtresi ve kurumsal alt menü aynı renk */
.chip[aria-pressed="true"], .gfilter input:checked + .chip { background: var(--ink); border-color: var(--ink); color: var(--white); }
.picker__out { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--sand-line); }
.picker__out p { margin: 0; flex: 1 1 380px; color: var(--g-800); line-height: 1.5; }
.picker__out b { color: var(--ember-text); }
.picker__act { display: inline-flex; align-items: center; gap: 18px; }
/* soluklaşma kartın kendisinde (li'deki kaydırma girişi geçişiyle çakışmasın) */
[data-svc-tiles] > li > .tile { transition: opacity var(--dur-3) var(--ease), filter var(--dur-3) var(--ease); }
[data-svc-tiles] > li.is-dim > .tile { opacity: .35; filter: grayscale(1); }
[data-svc-tiles] > li.is-dim > .tile:hover, [data-svc-tiles] > li.is-dim > .tile:focus-visible { opacity: .8; }
/* anim-06: öne alınan kartlarda bir kez kor halkası (FLIP kayması bitince) */
[data-svc-tiles] > li.is-pick > .tile { animation: pickRing calc(1100ms * var(--motion)) var(--ease) calc(420ms * var(--motion)) 1 both; }
@keyframes pickRing { 0% { box-shadow: 0 0 0 0 rgba(255,122,26,0); } 30% { box-shadow: 0 0 0 4px rgba(255,122,26,.95), 0 0 28px 2px rgba(255,122,26,.45); } 100% { box-shadow: 0 0 0 0 rgba(255,122,26,0); } }
@media (max-width: 600px) { .chip { border-radius: var(--radius-m); padding: 9px 14px; font-size: .9rem; } }

/* 25 — harita alt çubuğu: iki bağlantı */
.map__links { display: inline-flex; flex-wrap: wrap; gap: 8px 22px; }
.cinfo__ico--wa { color: var(--wa); }

/* 26 — çizgili .wrap bloklarında çizgi de içerik hizasında bitsin (dolgu dışına taşmasın) */
.wrap.pager, .wrap.kor__spec, .wrap.site-footer__bottom { width: min(calc(100% - 2 * var(--gutter)), var(--wrap)); max-width: none; padding-inline: 0; }

/* 27 — banka bilgileri: bölüm 8'e birleştirildi */

@keyframes navsub { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
  .nav, .nav.is-open { transition: visibility 0s, opacity .2s !important; clip-path: none !important; }
  .nav:not(.is-open) { opacity: 0; }
  .nav__item, .nav__mobile-extra > * { transition: none !important; transform: none !important; }
}

/* ================================================================= 28 FX turu (2026-10-08): sayaç, rakam bandı, ızgaralar, hizmet hero'su, galeri */
/* sayaçlar (anim-05): rakamlar eşit genişlikte; site.js genişliği son değere kilitler (min-width) */
[data-count] { font-variant-numeric: tabular-nums; }
.is-counting { display: inline-block; }
.statband .is-counting, .tech__range .is-counting { display: block; }
.tech__range b:last-of-type { text-align: right; }

/* rakam bandı (tas-09): değer tek satır (bölüm 18); dar iki sütunda sığmayan kutu ve son satırda tek kalan kutu tam genişlik (site.js) */
.statband li.is-wrap b { white-space: normal; min-width: 0 !important; }
@media (max-width: 680px) {
  .statband { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: row dense; gap: 10px; }
  .statband li { padding: 18px 16px 16px; }
  .statband li.is-wide { grid-column: 1 / -1; }
}

/* yalnız liste hap ızgarası (tas-09): 6 sütunlu ızgarada her hap 2 sütun; son satırda 2 kalırsa yarım yarım, 1 kalırsa tam genişlik */
@media (min-width: 961px) {
  .st__pills { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .st__pills > li { grid-column: span 2; }
  .st__pills > li:nth-last-child(2):nth-child(3n+1), .st__pills > li:last-child:nth-child(3n+2) { grid-column: span 3; }
  .st__pills > li:last-child:nth-child(3n+1) { grid-column: 1 / -1; }
}
@media (min-width: 561px) and (max-width: 960px) { .st__pills > li:last-child:nth-child(odd) { grid-column: 1 / -1; } }

/* uzun düz listeler (tas-06): hizmet/çelik gövdesinde ve metin sayfalarında 7+ maddeli ul → iki sütunlu numaralı kartlar */
:is(.svcpage__body, .prose:not(.prose--legal)) ul:has(> li:nth-child(7)) { list-style: none; counter-reset: lc; padding: 0; margin: 1.1em 0 1.5em; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
:is(.svcpage__body, .prose:not(.prose--legal)) ul:has(> li:nth-child(7)) > li { counter-increment: lc; display: flex; align-items: flex-start; gap: 12px; margin: 0; padding: 14px 16px; border-radius: var(--radius-m); background: var(--white); border: 1px solid var(--rule); font-size: 1.02rem; line-height: 1.45; color: var(--ink); }
:is(.svcpage__body, .prose:not(.prose--legal)) ul:has(> li:nth-child(7)) > li::before { content: counter(lc, decimal-leading-zero); width: 30px; height: 30px; font-size: .76rem; }
.infobox ul:has(> li:nth-child(7)) > li { background: rgba(255,255,255,.7); }
@media (max-width: 700px) { :is(.svcpage__body, .prose:not(.prose--legal)) ul:has(> li:nth-child(7)) { grid-template-columns: minmax(0, 1fr); } }

/* hizmet / çelik / haber hero'su (tas-10): bölüm 8'e birleştirildi */

/* galeri mobilde (gel-11): 3 sütunlu küçük kareler; açıklamalar büyütmede görünür */
@media (max-width: 600px) {
  .gallery, .gallery--svc { columns: auto; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  .gallery li { margin: 0; }
  .gallery a[data-lightbox], .gallery > li > a { aspect-ratio: 1; border-radius: var(--radius); }
  .gallery a[data-lightbox] img, .gallery a[data-lightbox] picture, .gallery > li > a img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .gallery figcaption { display: none; }
}
@media (min-width: 701px) { :is(.svcpage__body, .prose:not(.prose--legal)) ul:has(> li:nth-child(7)) > li:last-child:nth-child(odd) { grid-column: 1 / -1; } }
@media (max-width: 600px) { .facts > div { padding: 14px 16px 16px; } .mail-grid li { padding: 12px 16px; } .facts, .mail-grid { gap: 8px; } }


/* ================================================================ 29 — formlar, alt eylem çubuğu, teklif süreci, SSS (CONV) */
/* CONV ajanı: formlar, alt eylem çubuğu, SSS, teklif süreci */

/* ---------------------------------------------------------------- mobil alt eylem çubuğu (≤760px) */
.actbar { display: none; }
@media (max-width: 760px) {
  .actbar {
    position: fixed; z-index: 140;
    left: max(10px, env(safe-area-inset-left, 0px)); right: max(10px, env(safe-area-inset-right, 0px));
    bottom: calc(10px + env(safe-area-inset-bottom, 0px));
    display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 6px; padding: 6px;
    background: var(--g-950); border: 1px solid var(--rule-light); border-radius: var(--radius-l);
    box-shadow: 0 18px 40px -16px rgba(11,13,16,.6);
    transition: transform var(--dur-3) var(--ease), opacity var(--dur-3) var(--ease), visibility 0s linear 0s;
  }
  .actbar__btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 52px; padding: 0 10px;
    border-radius: calc(var(--radius-l) - 8px); background: var(--g-800); color: var(--white); text-decoration: none;
    font-weight: 600; font-size: 1rem; line-height: 1.1; white-space: nowrap; -webkit-tap-highlight-color: transparent;
    transition: background var(--dur-1);
  }
  .actbar__btn .ico { width: 20px; height: 20px; flex: none; }
  .actbar__btn:active { background: var(--g-700); }
  .actbar__btn .ico { color: var(--ember-500); }
  .actbar__btn--wa .ico { color: var(--wa); }
  .actbar__btn--quote { background: var(--red); }
  .actbar__btn--quote:active { background: var(--red-dark); }
  .actbar__btn--quote .ico { width: 18px; height: 18px; color: var(--white); }
  /* Gizli durum: hero görünürken, klavye açıkken (extras.js .is-on kaldırır), menü veya çerez bildirimi açıkken */
  .js .actbar:not(.is-on), body.nav-open .actbar, body.cc-open .actbar {
    transform: translateY(calc(100% + 16px + env(safe-area-inset-bottom, 0px))); opacity: 0; visibility: hidden; pointer-events: none;
    transition: transform var(--dur-3) var(--ease), opacity var(--dur-2) var(--ease), visibility 0s linear var(--dur-3);
  }
  /* Teklif al ve İletişim sayfalarında çubuk yok (form + yan kutu zaten aynı işi görüyor) */
  .page-quote .actbar, .page-contact .actbar { display: none; }
  /* Çubuk varken yuvarlak WhatsApp butonu mobilde gösterilmez (WhatsApp çubukta, form sayfalarında yan kutuda) */
  .actbar ~ .wa-float { display: none; }
  /* Sayfa sonu çubuğun altında kalmasın: footer alt satırına çubuk yüksekliği kadar dolgu */
  body:not(.page-quote):not(.page-contact) .site-footer__bottom { padding-bottom: calc(28px + 76px + env(safe-area-inset-bottom, 0px)); }
}
@media (max-width: 360px) { .actbar__btn { gap: 6px; padding: 0 6px; font-size: .94rem; } .actbar__btn .ico { width: 18px; height: 18px; } }
@media (prefers-reduced-motion: reduce) { .actbar, .js .actbar:not(.is-on) { transition: opacity var(--dur-1) linear, visibility 0s; transform: none !important; } }
@media print { .actbar { display: none !important; } }

/* ---------------------------------------------------------------- teklif formu: dosya alanı (dokunmatikte farklı metin) */
.dropzone__label .dz-touch { display: none; }
@media (hover: none) and (pointer: coarse) {
  .dropzone__label .dz-fine { display: none; }
  .dropzone__label .dz-touch { display: block; }
}

/* ---------------------------------------------------------------- teklif sayfası: "Talebiniz nasıl ilerler?" */
.quote__aside { display: grid; gap: 16px; }
.qflow { padding: clamp(22px, 2.6vw, 28px); background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-l); }
.qflow__title { margin: 0 0 18px; font-size: 1.2rem; }
.qflow__steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; counter-reset: none; }
.qflow__steps li { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 14px; align-items: start; position: relative; }
.qflow__steps li:not(:last-child)::after { content: ''; position: absolute; left: 14.5px; top: 34px; bottom: -14px; width: 1px; background: var(--rule); }
.qflow__n { width: 30px; height: 30px; }   /* görünüm: numaralı rozet (bölüm 18) */
.qflow__steps b { display: block; font-weight: 600; font-size: 1rem; line-height: 1.3; padding-top: 4px; }
.qflow__steps p { margin: 4px 0 0; font-size: .94rem; line-height: 1.5; color: var(--g-600); }
.qflow__meta { margin: 20px 0 0; padding: 16px 0 0; border-top: 1px solid var(--rule); display: grid; gap: 10px; }
.qflow__meta div { display: grid; gap: 2px; }
.qflow__meta dt { color: var(--g-500); }
.qflow__meta dd { margin: 0; font-weight: 500; }
/* satır bağlantısı (tam genişlik, sağda ok): teklif yan kutusu WhatsApp (.qflow__wa) + iletişim kartı (.cinfo__quote) — tek ölçü */
.qflow__wa, .cinfo__quote { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 12px 16px; border-radius: var(--radius); text-decoration: none; font-weight: 600; font-size: 1rem; line-height: 1.25; transition: background var(--dur-2); }
.qflow__wa .ico:last-child, .cinfo__quote .ico:last-child { width: 18px; height: 18px; flex: none; margin-left: auto; transition: transform var(--dur-2) var(--ease); }
@media (hover: hover) { .qflow__wa:hover .ico:last-child, .cinfo__quote:hover .ico:last-child { transform: translateX(3px); } }
.qflow__wa { margin-top: 20px; background: var(--paper); color: var(--ink); }
.qflow__wa .ico { width: 22px; height: 22px; flex: none; color: var(--wa-dark); }
.qflow__wa .ico:last-child { color: var(--g-500); }
.qflow__wa:hover { background: var(--sand); }
.qflow__wa:hover .ico:last-child { color: var(--ink); }
/* Yan kutu uzadığı için yalnızca ekrana sığdığı geniş/uzun ekranlarda sabit kalır */
@media (min-width: 961px) and (max-height: 900px) { .quote__aside { position: static; } }

/* ---------------------------------------------------------------- iletişim kartı ekleri */
.cinfo__quote { background: var(--g-800); color: var(--white); }
.cinfo__quote .ico:last-child { color: var(--ember-text); }
.cinfo__quote:hover { background: var(--g-700); }

/* ---------------------------------------------------------------- SSS (details/summary; klavyeyle Enter/Boşluk açar) */
.faq { margin-top: clamp(40px, 6vw, 72px); }
.faq__title { margin: 0 0 18px; }   /* .h3 ölçüsü: hizmet sayfasındaki diğer blok başlıklarıyla (İlgili hizmetler, Teknik kapasite) aynı */
.faq__list { display: grid; gap: 10px; max-width: 880px; }
.faq__item { background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-m); transition: border-color var(--dur-2); }
.faq__item[open] { border-color: var(--rule-strong); }
.faq__item summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 56px; padding: 14px 18px 14px 20px; cursor: pointer; list-style: none; font-weight: 600; font-size: 1.05rem; line-height: 1.35; border-radius: var(--radius-m); }
.faq__item summary::-webkit-details-marker { display: none; }
.faq__item summary:hover { color: var(--ember-text); }
/* aç/kapa simgesi: Kalite Yönetimi'ndeki açılır bölüm (.st__toggle) ile aynı renk */
.faq__ico { position: relative; flex: none; width: 28px; height: 28px; border-radius: 50%; background: var(--ember-100); color: var(--ember-700); }
.faq__ico::before, .faq__ico::after { content: ''; position: absolute; left: 50%; top: 50%; width: 12px; height: 2px; margin: -1px 0 0 -6px; border-radius: 2px; background: currentColor; transition: transform var(--dur-2) var(--ease); }
.faq__ico::after { transform: rotate(90deg); }
.faq__item[open] .faq__ico::after { transform: rotate(0deg); }
.faq__a { padding: 0 20px 18px; color: var(--g-600); line-height: 1.65; max-width: 72ch; }
.faq__a > :last-child { margin-bottom: 0; }
.faq__a a { color: var(--ember-text); }
.section .faq--quote { padding-top: 0; }
.svcpage ~ .faq { margin-bottom: clamp(32px, 5vw, 56px); }
@media (prefers-reduced-motion: reduce) { .faq__ico::before, .faq__ico::after { transition: none; } }

/* ---------------------------------------------------------------- galeri: "Daha fazla göster" */
.gallery-more { display: flex; justify-content: flex-start; margin-top: clamp(20px, 3vw, 32px); }
.gallery-more__btn { gap: 12px; min-height: 52px; }
.gallery-more__n { font-weight: 600; font-variant-numeric: tabular-nums; color: var(--g-500); font-size: .9rem; }
.gallery li.is-new { animation: conv-in var(--dur-3) var(--ease) both; }
@keyframes conv-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .gallery li.is-new { animation: none; } }


/* ================================================================ 30 — belgeler, haber, galeri filtresi (PAGES-A) */
/* PAGES-A ajanı: içerik, belgeler, SEO */

/* ---------- Haber gövdesi: rakamla başlayan ilk paragrafta büyük ilk harf yok (tas-08) */
.prose--news > p.no-dropcap::first-letter { float: none; font: inherit; font-size: inherit; line-height: inherit; margin: 0; color: inherit; }
.prose--news > p.no-dropcap { border-left: 4px solid var(--ember-600); padding-left: .8em; }   /* alıntı/bilgi kutusu çizgisiyle aynı */

/* ---------- Belgelerimiz: kalite belgeleri / marka tescilleri (say-02, gel-01) */
.certgroup + .certgroup { margin-top: clamp(36px, 5vw, 56px); }
.certgroup__h { margin: 0 0 18px; }
.certs li { display: flex; flex-direction: column; }
.certs__valid { margin: 10px 2px 0; font-size: var(--fs-sm); color: var(--g-700); }
.certs__valid time { font-weight: 600; color: var(--ink); }
.certgroup .downloads { margin-top: 4px; }

/* ---------- PDF dosyası yokken iletişim bağlantısı (say-01) */
.docreq { display: flex; align-items: flex-start; gap: 14px; margin: 0 0 24px; padding: 18px 20px; border: 1px solid var(--rule); border-radius: var(--radius-m); background: var(--white); color: var(--ink); line-height: 1.4; }
.docreq > .ico { flex: none; width: 24px; height: 24px; margin-top: 1px; color: var(--ember-text); }
.docreq > span { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.docreq a { font-weight: 600; color: var(--ink); text-decoration: underline; text-decoration-color: var(--ember-text); text-underline-offset: 3px; }
.docreq a:hover { color: var(--ember-hover); }
.docreq small { font-size: var(--fs-sm); color: var(--g-600); overflow-wrap: anywhere; }
.docreq--note { background: var(--paper); }
.docreq--dark { background: transparent; border-color: var(--rule-light); color: var(--white); margin-top: var(--s-5); }
.docreq--dark > .ico, .docreq--dark a:hover { color: var(--ember-300); }
.docreq--dark a { color: var(--white); text-decoration-color: var(--ember-300); }
.docreq--dark small { color: var(--g-400); }

/* ---------- Galeri: hizmete göre filtre çipleri (say-11). Yalnız veri varsa üretilir. */
.gfilter { border: 0; margin: 0 0 20px; padding: 0; min-width: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.gfilter .chip { display: inline-flex; align-items: baseline; gap: 6px; }
.gfilter .chip small { font-size: .8em; color: var(--g-500); }
.gfilter .chip { border-color: var(--rule); }   /* kâğıt zeminde: alt menü hapıyla aynı çizgi */
.gfilter input:checked + .chip small { color: var(--g-300); }
.gfilter input:focus-visible + .chip { outline: 2px solid var(--focus); outline-offset: 3px; }


/* ================================================================ 31 — sayfa hero fotoğrafı, hizmet detay ekleri, örnek işler, sektörler, makine parkı (PAGES-B) */
/* PAGES-B ajanı: yeni bölümler ve şablonlar
   (hero fotoğrafı ve butonları, hizmet/çelik sayfası ekleri, örnek işler, makine parkı, sektör sayfaları) */

/* ---------------------------------------------------------------- page hero: sağda fotoğraf (pages.<key>.heroImage) */
/* hizmet sayfası hero fotoğrafıyla (.svcpage__fig) aynı dil: dört köşesi yuvarlak, metinle ortalı (bölüm 8) */
.page-hero--img .page-hero__grid { grid-template-columns: minmax(0, 8fr) minmax(0, 4fr); }
/* yükseklik metin bloğuna yakın tutulur: hero önceki (alta yaslı) hâlinden en fazla ~60 px uzar */
.page-hero__photo { margin: 0; align-self: center; justify-self: end; width: 100%; aspect-ratio: 16 / 10; max-height: 230px; border-radius: var(--radius-l); overflow: hidden; background: var(--g-900); }
.page-hero__photo picture, .page-hero__photo img { display: block; width: 100%; height: 100%; }
.page-hero__photo img { object-fit: cover; object-position: 50% 55%; }
@media (max-width: 1000px) {
  .page-hero--img .page-hero__grid { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); }
}
/* Telefonda fotoğraf yok: hero yüksekliği değişmez, içerik (form, liste) ilk ekrana yakın kalır.
   Görsel lazy yüklendiği için display:none iken telefonda hiç indirilmez. */
@media (max-width: 760px) {
  .page-hero--img .page-hero__grid { display: block; }
  .page-hero__photo { display: none; }
}

/* hero butonları (hizmet sayfası: teklif + telefon; telefon bağlantısı bölüm 8'de ortak) */
.page-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; margin-top: var(--s-5); }

/* ---------------------------------------------------------------- hizmet / çelik sayfası: orta sütun */
.svcpage__main { min-width: 0; display: grid; gap: clamp(28px, 3vw, 40px); align-content: start; }
.svcpage__main > .svcpage__body > :last-child { margin-bottom: 0; }

/* 3 adımda teklif (kum zemin) */
.qsteps { background: var(--sand); border-radius: var(--radius-l); padding: clamp(22px, 3vw, 36px); display: grid; gap: 20px; }
.qsteps__head .h3 { margin: 0 0 6px; }
.qsteps__head p { margin: 0; color: var(--g-600); max-width: 56ch; }
.qsteps__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; counter-reset: none; }
.qsteps__list li { display: grid; grid-template-columns: auto 1fr; gap: 10px 12px; align-content: start; padding: 16px; border-radius: var(--radius-m); background: var(--white); border: 1px solid var(--sand-line); }
.qsteps__list li > span:not(.qsteps__n) { grid-column: 1 / -1; }
.qsteps__list b { align-self: center; font-size: 1.02rem; line-height: 1.25; }
.qsteps__list span:not(.qsteps__n) { font-size: .92rem; line-height: 1.45; color: var(--g-600); }
.qsteps > .btn { justify-self: start; }
@media (max-width: 1180px) and (min-width: 861px) { .qsteps__list { grid-template-columns: 1fr; } }
@media (max-width: 640px) { .qsteps__list { grid-template-columns: 1fr; } }

/* İlgili hizmetler: renkli 3'lü kartlar */
.relsvc > .h3 { margin: 0 0 16px; }
.relsvc__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(12px, 1.6vw, 18px); }
.relsvc__list a { display: grid; grid-template-rows: auto auto 1fr; height: 100%; text-decoration: none; color: var(--ink); background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-l); overflow: hidden; transition: border-color var(--dur-2), transform var(--dur-2) var(--ease); }
.relsvc__media { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: var(--g-200); }
.relsvc__media picture, .relsvc__media img { display: block; width: 100%; height: 100%; }
.relsvc__media img { object-fit: cover; transition: transform var(--dur-4) var(--ease); }
.relsvc__t { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; padding: 14px 16px 0; font-family: var(--font-display); font-weight: 700; font-size: 1.12rem; line-height: 1.1; text-transform: uppercase; letter-spacing: -0.01em; }
.relsvc__t .ico { flex: none; width: 18px; height: 18px; color: var(--ember-text); transition: transform var(--dur-2) var(--ease); }
.relsvc__d { margin: 8px 16px 16px; align-self: start; font-size: .92rem; line-height: 1.45; color: var(--g-600); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
@media (hover: hover) {
  .relsvc__list a:hover { border-color: var(--ember-600); transform: translateY(-2px); }
  .relsvc__list a:hover img { transform: scale(1.04); }
  .relsvc__list a:hover .relsvc__t .ico { transform: translateX(3px); }
}
@media (max-width: 1180px) and (min-width: 861px) { .relsvc__list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) {
  .relsvc__list { grid-template-columns: 1fr; gap: 10px; }
  /* telefonda yatay satır: solda küçük foto, sağda başlık + açıklama */
  .relsvc__list a { grid-template-columns: 104px 1fr; grid-template-rows: auto 1fr; }
  .relsvc__media { grid-row: span 2; aspect-ratio: auto; position: relative; min-height: 104px; }
  .relsvc__media picture, .relsvc__media > img { position: absolute; inset: 0; }
  .relsvc__t { padding: 12px 14px 0; font-size: 1.02rem; }
  .relsvc__d { margin: 6px 14px 12px; -webkit-line-clamp: 2; }
}

/* Teknik kapasite tablosu */
.spec > .h3 { margin: 0 0 14px; }
.spec__table { margin: 0; border: 1px solid var(--rule); border-radius: var(--radius-m); overflow: hidden; background: var(--white); }
.spec__table > div { display: grid; grid-template-columns: minmax(150px, 2fr) 5fr; gap: 16px; padding: 14px 18px; border-top: 1px solid var(--rule); }
.spec__table > div:first-child { border-top: 0; }
.spec__table dt { color: var(--g-500); padding-top: .2em; }
.spec__table dd { margin: 0; font-size: 1.02rem; line-height: 1.45; }
.spec__links { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 16px; }
.spec__links a { color: var(--ink); text-decoration: none; border-bottom: 1px solid var(--rule-strong); }   /* .svcpage__rel ile aynı */
.spec__links a:hover { color: var(--ember-hover); border-color: currentColor; }
@media (max-width: 560px) { .spec__table > div { grid-template-columns: 1fr; gap: 4px; } }


/* ---------------------------------------------------------------- örnek işler */
.cases { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(14px, 2vw, 24px); }
.case { display: grid; grid-template-rows: auto 1fr; background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-l); overflow: hidden; }
.case__media { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: var(--g-200); }
.case__media picture, .case__media img { display: block; width: 100%; height: 100%; }
.case__media img { object-fit: cover; }
.case__body { display: flex; flex-direction: column; gap: 10px; padding: 18px 20px 20px; }
.case__sector { margin: 0; color: var(--ember-text); }
.case__t { margin: 0; font-family: var(--font-display); font-size: 1.3rem; line-height: 1.12; text-transform: uppercase; letter-spacing: -0.01em; }
.case__facts { margin: 0; display: grid; gap: 6px; }
.case__facts > div { display: grid; grid-template-columns: 92px 1fr; gap: 10px; font-size: .95rem; line-height: 1.4; }
.case__facts dt { color: var(--g-500); padding-top: .2em; }
.case__facts dd { margin: 0; }
.case__x { color: var(--g-600); font-size: .98rem; line-height: 1.55; }
.case__x p { margin: 0 0 .6em; }
.case__thumbs { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.case__thumbs a { display: block; width: 72px; height: 72px; border-radius: var(--radius); overflow: hidden; }
.case__thumbs img { width: 100%; height: 100%; object-fit: cover; }
.case__svc { margin-top: auto; display: inline-flex; align-items: center; flex-wrap: wrap; gap: 4px 8px; padding-top: 10px; border-top: 1px solid var(--rule); color: var(--ink); text-decoration: none; font-weight: 600; }
.case__svc span { width: 100%; color: var(--g-500); }
.case__svc .ico { width: 16px; height: 16px; color: var(--ember-text); }
.case__svc:hover { color: var(--ember-hover); }
.cases--full { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
.cases--full .case__media { aspect-ratio: 16 / 10; }
@media (max-width: 960px) { .cases { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .cases, .cases--full { grid-template-columns: 1fr; } }
.cases-sec { border-top: 1px solid var(--rule); }
.svccases { margin-top: clamp(40px, 6vw, 72px); }
.svccases .row-head { margin-bottom: 18px; align-items: baseline; }
.svccases .h3 { margin: 0; }

/* ---------------------------------------------------------------- makine parkı tablosu */
.mtable-wrap { overflow-x: auto; border: 1px solid var(--rule); border-radius: var(--radius-m); background: var(--white); }
.mtable { width: 100%; border-collapse: collapse; font-size: .97rem; }
.mtable th, .mtable td { text-align: left; vertical-align: middle; padding: 12px 16px; border-top: 1px solid var(--rule); }
.mtable thead th { border-top: 0; color: var(--g-500); white-space: nowrap; }
.mtable tbody th { font-weight: 600; }
.mtable__img { width: 88px; }
.mtable__img img { display: block; width: 72px; height: 54px; object-fit: cover; border-radius: var(--radius); }
.tech__machines { grid-column: 2; display: grid; gap: 12px; }
.tech__machines .link-arrow { justify-self: start; }
.machines__lead { margin: -.2em 0 20px; color: var(--g-600); max-width: 60ch; }
@media (max-width: 860px) { .tech__machines { grid-column: 1; } }
/* telefonda satırlar kart olur (sütun adı solda) */
@media (max-width: 640px) {
  .mtable-wrap { overflow: visible; border: 0; background: none; }
  .mtable thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .mtable, .mtable tbody, .mtable tr, .mtable th, .mtable td { display: block; }
  .mtable tr { background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-m); padding: 6px 0; margin-bottom: 10px; }
  .mtable th, .mtable td { border-top: 0; padding: 6px 14px; }
  .mtable td[data-label] { display: grid; grid-template-columns: 110px 1fr; gap: 10px; }
  .mtable td[data-label]::before { content: attr(data-label); color: var(--g-500); padding-top: .2em; }
  .mtable td[data-label]:empty { display: none; }
  .mtable__img { width: auto; }
  .mtable__img:empty { display: none; }
}

/* ---------------------------------------------------------------- ana sayfa: sayfası olan sektörlerin kartları (koyu zemin) */
.seccards { margin-top: clamp(32px, 5vw, 56px); }
.seccards__h { margin: 0 0 16px; font-family: var(--font-display); font-size: clamp(1.3rem, 1rem + 1vw, 1.8rem); text-transform: uppercase; letter-spacing: -0.01em; }
.seccards__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(12px, 1.6vw, 18px); }
.seccards__list a { display: grid; grid-template-rows: auto auto 1fr; height: 100%; color: var(--white); text-decoration: none; background: var(--g-800); border-radius: var(--radius-l); overflow: hidden; transition: transform var(--dur-2) var(--ease), background var(--dur-2); }
.seccards__media { display: block; aspect-ratio: 16 / 10; overflow: hidden; }
.seccards__media picture, .seccards__media img { display: block; width: 100%; height: 100%; }
.seccards__media img { object-fit: cover; }
.seccards__t { display: flex; justify-content: space-between; gap: 10px; padding: 16px 18px 0; font-family: var(--font-display); font-weight: 700; font-size: 1.2rem; line-height: 1.1; text-transform: uppercase; }
.seccards__t .ico { flex: none; width: 18px; height: 18px; color: var(--ember-text); }
.seccards__d { padding: 8px 18px 18px; font-size: .94rem; line-height: 1.45; color: var(--g-300); }
@media (hover: hover) { .seccards__list a:hover { background: var(--g-700); transform: translateY(-2px); } }
@media (max-width: 960px) { .seccards__list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .seccards__list { grid-template-columns: 1fr; } }

/* ---------------------------------------------------------------- sektör sayfası */
.secpage { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(28px, 5vw, 72px); align-items: start; }
.secpage--solo { grid-template-columns: minmax(0, 1fr); }
.secpage__text { max-width: 66ch; }
.secpage__parts .h3 { margin: 0 0 14px; }
.secpage__parts .st__pills { grid-template-columns: 1fr; }
.secpage__svc, .secpage__cases { margin-top: clamp(40px, 6vw, 72px); }
.secpage__cases > .h3 { margin: 0 0 16px; }
@media (max-width: 860px) { .secpage { grid-template-columns: 1fr; } }

/* Masaüstü hero (2026-10-10): sağdaki tek büyük fotoğraf yerine kaydırmalı hizmet kartları (mobil "D" ile aynı dil) */
.kor__cardnav { display: none; }
@media (min-width: 1001px) {
  .kor__grid { grid-template-rows: auto 1fr auto auto; }
  .kor__media { display: none; }
  .kor__title { align-self: end; }
  .kor__title { text-transform: none; font-size: clamp(2.6rem, 1.2rem + 2.6vw, 4.3rem); line-height: 1.04; letter-spacing: -0.025em; max-width: 13ch; }
  .kor__cards { display: flex; grid-column: 6 / 13; grid-row: 1 / 4; align-self: end; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding: 8px 2px 40px; margin-bottom: -32px; cursor: grab; overscroll-behavior-x: contain; -webkit-mask-image: linear-gradient(90deg, #000 82%, transparent); mask-image: linear-gradient(90deg, #000 82%, transparent); }
  .kor__cards::-webkit-scrollbar { display: none; }
  .kor__cards.is-dragging, .kor__cards.is-gliding { scroll-snap-type: none; }
  .kor__cards.is-dragging { cursor: grabbing; }
  .kor__cards.is-dragging .kcard { pointer-events: none; }
  .kor__cards .kcard { flex: 0 0 calc((100% - 32px) / 2.35); aspect-ratio: 3 / 4; max-height: min(64svh, 560px); }
  .kor__cards .kcard img { pointer-events: none; }
  .kor__cardnav { position: relative; z-index: 2; display: flex; align-items: center; gap: 10px; grid-column: 6 / 13; grid-row: 4; align-self: start; margin: 6px 0 clamp(20px, 3vh, 36px); }
  .kor__copy { align-self: start; padding: clamp(18px, 2.6vh, 30px) 0 0; }
  .kor__cardnav .link-arrow { margin-left: auto; color: var(--g-200); }
}
@media (min-width: 1600px) and (min-height: 900px) {
  .kor__cards .kcard { flex-basis: calc((100% - 32px) / 2.15); aspect-ratio: 3 / 4.2; max-height: min(66svh, 620px); }
}
.strip-btn--dark { background: var(--g-800); border-color: var(--rule-light); color: var(--white); }
@media (hover: hover) { .strip-btn--dark:hover:not(:disabled) { background: var(--ember-700); border-color: var(--ember-700); } }

/* =====================================================================
   14 AÇIK TEMA (2026-10-11)
   <html data-theme="light"> iken çalışır; "dark" (veya özellik yoksa) eski
   koyu grafit tema aynen geçerlidir. Panel → Tema ekranından değiştirilir.
   Yöntem: koyu bantların içinde gri skala + metin token'ları ters çevrilir;
   fotoğraf üstündeki yazılar ve bilerek koyu bırakılan vurgu kartları
   eski koyu token'lara geri döner. Logo artık plakasız, doğrudan zeminde.
   ===================================================================== */
html[data-theme="light"] :is(.site-header, .nav, .kor, .svc, .page-hero, .sectors, .catsheet, .site-footer, .cta-band, .notfound, .dark) {
  --g-950: #ffffff; --g-900: #f6f7f8; --g-800: #eef0f2; --g-700: #e1e4e8; --g-600: #cdd1d6; --g-500: #8b8f95;
  --g-400: #5c636c; --g-300: #474d55; --g-200: #3a3f47; --g-100: #272b31; --g-50: #1a1d22;
  --white: #0f1114;
  --rule-light: rgba(15,17,20,.12); --rule-light-strong: rgba(15,17,20,.34); --tint-light: rgba(15,17,20,.05);
  --ember-text: var(--ember-700); --ember-hover: var(--ember-700); --focus: var(--ember-700);
  --ember-500: #e2551a; --ember-300: #c62419;   /* açık zeminde okunur kor tonları */
}
/* Bilerek koyu kalan yüzeyler ve fotoğraf/kırmızı üstündeki yazılar: eski token'lar */
html[data-theme="light"] :is(.kcard, .btn--primary, .tile, .band figcaption, .why2__pills b, .closer, .st--quote, .tech__panel,
  .cinfo__card, .news3__feat, .facts > div:first-child, .svcpage__cta, .quote__contact, .map__bar, .lightbox, .actbar, .burger[aria-expanded="true"]) {
  --g-950: #0b0d10; --g-900: #121417; --g-800: #1a1d22; --g-700: #272b31; --g-600: #3a3f47; --g-500: #5c636c;
  --g-400: #8a929b; --g-300: #b9bfc6; --g-200: #d9dce0; --g-100: #ebedef; --g-50: #f5f5f4;
  --white: #ffffff;
  --rule-light: rgba(255,255,255,.13); --rule-light-strong: rgba(255,255,255,.4); --tint-light: rgba(255,255,255,.06);
  --ember-text: #ff7a1a; --ember-hover: #ffb15e; --focus: #ff7a1a; --ember-500: #ff7a1a; --ember-300: #ffb15e;
}
html[data-theme="light"] .btn--primary { --ember-text: #fff; }

/* Bant zeminleri: beyaz ve kâğıt sırayla, aralarında ince çizgi */
html[data-theme="light"] :is(.svc, .sectors) { background: #ffffff; }
html[data-theme="light"] :is(.svc, .sectors, .cta-band, .catsheet, .site-footer) { border-top: 1px solid var(--rule); }
html[data-theme="light"] :is(.kor, .svc, .page-hero, .site-footer, .notfound, .catsheet)::after { display: none; } /* grain dokusu açık zeminde kirli duruyor */
html[data-theme="light"] .cta-band::before { background: radial-gradient(40% 70% at 90% 60%, rgba(255,122,26,.10), transparent 70%); }
html[data-theme="light"] .catsheet__cover img { box-shadow: 0 40px 70px -40px rgba(15,17,20,.45); }

/* Header: logo plakasız; kaydırınca beyaz buzlu cam */
html[data-theme="light"] .brand, html[data-theme="light"] .brand-plate { background: none; box-shadow: none; padding-inline: 0; border-radius: 0; }
html[data-theme="light"] .brand img { height: 34px; }
html[data-theme="light"] .site-header.is-stuck::before, html[data-theme="light"] body.nav-open .site-header::before { background: rgba(255,255,255,.88); }
html[data-theme="light"] .lang span { background: var(--g-800); }
html[data-theme="light"] .burger { background: #fff; }
html[data-theme="light"] .burger:hover { background: var(--g-800); }
html[data-theme="light"] .burger[aria-expanded="true"] { background: var(--ember-700); border-color: var(--ember-700); color: #fff; }
html[data-theme="light"] .nav__panel { background: #fff; box-shadow: 0 30px 60px -28px rgba(15,17,20,.35); }
@media (max-width: 1240px) {
  html[data-theme="light"] .brand img { height: 28px; }
  html[data-theme="light"] .nav__panel { background: transparent; box-shadow: none; }
  html[data-theme="light"] .nav { background: radial-gradient(90% 55% at 100% 100%, rgba(242,74,28,.10), transparent 70%), #ffffff; }
}

/* Hero ve alt sayfa başlığı */
html[data-theme="light"] .page-hero__photo { background: var(--g-800); }
html[data-theme="light"] .strip-btn--dark { background: #fff; border-color: var(--rule); }
@media (hover: hover) { html[data-theme="light"] .strip-btn--dark:hover:not(:disabled) { background: var(--ink); border-color: var(--ink); color: #fff; } }
html[data-theme="light"] .kcard { box-shadow: 0 16px 34px -22px rgba(15,17,20,.55); }
html[data-theme="light"] .kcard:first-child::before { box-shadow: inset 0 0 0 1px rgba(255,122,26,.6); }

/* Footer: logo doğrudan beyaz zeminde */
html[data-theme="light"] .site-footer { background: #ffffff; }
html[data-theme="light"] .topbar__wa .ico { color: var(--wa-dark); }
html[data-theme="light"] .site-footer__brand img { height: 46px; }

/* =====================================================================
   15 HİZMETLERİMİZ listesi (2026-10-13) — ana sayfadaki numaralı indeksin
   fotoğraflı, tam açıklamalı hâli. Solda hedef seçici (masaüstünde sabit),
   sağda 01–14 satırlar; mobilde seçici yatay kaydırılan tek sıra.
   ===================================================================== */
.svclist__grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: clamp(32px, 5vw, 80px); align-items: start; }
.svclist__aside { position: sticky; top: calc(var(--header-h) + 24px); }
.svclist__aside .picker { margin: 0; background: var(--white); border: 1px solid var(--rule); }
.svclist__aside .picker__q { font-family: var(--font-display); font-size: 1.25rem; line-height: 1.15; text-transform: uppercase; letter-spacing: -.01em; margin-bottom: 16px; }
.svclist__aside .picker__out { border-top-color: var(--rule); }
.svclist__aside .picker__out p { flex-basis: 100%; font-size: .95rem; color: var(--g-600); }
.svclist { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--rule-strong); }
.svclist > li { border-bottom: 1px solid var(--rule); }
.svclist a { display: grid; grid-template-columns: 40px clamp(150px, 16vw, 210px) minmax(0, 1fr) 22px; align-items: center; column-gap: clamp(16px, 2vw, 28px); padding: clamp(16px, 1.8vw, 22px) 0; text-decoration: none; color: var(--ink); transition: opacity var(--dur-3) var(--ease), filter var(--dur-3) var(--ease); }
.svclist__n { align-self: start; padding-top: .35em; color: var(--ember-text); font-size: var(--fs-xs); letter-spacing: var(--ls-label); }
.svclist__media { position: relative; display: block; aspect-ratio: 4 / 3; border-radius: var(--radius-m); overflow: hidden; background: var(--g-200); }
.svclist__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform var(--dur-4) var(--ease); }
.svclist__body { display: grid; gap: 8px; min-width: 0; }
.svclist__t { font-family: var(--font-display); font-weight: 600; font-size: clamp(1.25rem, 1rem + .8vw, 1.7rem); line-height: 1.02; text-transform: uppercase; letter-spacing: -.01em; transition: color var(--dur-2), transform var(--dur-2) var(--ease); }
.svclist__d { font-size: var(--fs-sm); line-height: 1.5; color: var(--g-600); max-width: 60ch; }
.svclist a > .ico { color: var(--g-400); transition: color var(--dur-2), transform var(--dur-2) var(--ease); }
@media (hover: hover) {
  .svclist a:hover .svclist__t { color: var(--ember-700); transform: translateX(6px); }
  .svclist a:hover > .ico { color: var(--ember-700); transform: translateX(4px); }
  .svclist a:hover .svclist__media img { transform: scale(1.05); }
}
.svclist a:focus-visible { outline-offset: 4px; border-radius: var(--radius); }
/* hedef seçici: eşleşmeyenler soluk, öne alınanlarda kısa kor vurgusu */
.svclist > li.is-dim > a { opacity: .32; filter: grayscale(1); }
.svclist > li.is-dim > a:hover, .svclist > li.is-dim > a:focus-visible { opacity: .75; }
.svclist > li.is-pick .svclist__media { animation: pickRing calc(1100ms * var(--motion)) var(--ease) calc(420ms * var(--motion)) 1 both; }
html[data-motion-off~="serviceHover"] .svclist a:hover .svclist__t, html[data-motion-off~="serviceHover"] .svclist a:hover > .ico { transform: none; }

@media (max-width: 1000px) {
  .svclist__grid { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .svclist__aside { position: static; }
}
@media (max-width: 760px) {
  /* seçici: kutusuz, tek sıra yatay kaydırılan haplar */
  .svclist__aside .picker { padding: 0; border: 0; background: none; border-radius: 0; }
  .svclist__aside .picker__q { font-size: 1.05rem; margin-bottom: 12px; }
  .svclist__aside .picker__chips { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-inline: calc(-1 * var(--gutter)); padding: 2px var(--gutter) 6px; scroll-padding-inline: var(--gutter); -webkit-mask-image: linear-gradient(90deg, #000 88%, transparent); mask-image: linear-gradient(90deg, #000 88%, transparent); }
  .svclist__aside .picker__chips::-webkit-scrollbar { display: none; }
  .svclist__aside .chip { flex: none; white-space: nowrap; border-radius: 999px; background: var(--white); }
  .svclist__aside .picker__out { margin-top: 12px; padding: 14px 16px; border: 1px solid var(--rule); border-radius: var(--radius-m); background: var(--white); }
  /* satır: solda numara + başlık + açıklama, sağda kare fotoğraf */
  .svclist a { grid-template-columns: minmax(0, 1fr) 92px; grid-template-areas: "n m" "b m"; row-gap: 6px; column-gap: 16px; align-items: start; padding: 18px 0; }
  .svclist__n { grid-area: n; padding-top: 0; }
  .svclist__media { grid-area: m; width: 92px; height: 92px; aspect-ratio: auto; align-self: center; }
  .svclist__body { grid-area: b; gap: 6px; }
  .svclist__t { font-size: 1.15rem; line-height: 1.08; }
  .svclist__d { font-size: .93rem; line-height: 1.45; }
  .svclist a > .ico { display: none; }
}

/* =====================================================================
   16. Bilgi kutucukları ortalı (2026-10-16, müşteri isteği)
   Etiket + değer taşıyan küçük kutular (E-Katalog biçim/dil/kapsam,
   Finansal bilgiler, e-posta kutuları, rakam bandı) yazılarını ortalar.
   ===================================================================== */
.catsheet__spec > div, .facts > div, .mail-grid li, .statband li { text-align: center; align-items: center; justify-items: center; justify-content: center; }
.catsheet__spec > div { flex: 1 1 auto; }

/* =====================================================================
   17 TAM KOYU TEMA (2026-10-21, müşteri isteği: "beyaz zemin çok göz alıyor, çift koyu renk")
   <html data-theme="dark"> iken içerik bölümlerinin açık zeminleri de koyulaşır.
   Yöntem bölüm 14'ün tersi: body'de (açık içerik) zemin/metin/gri token'ları koyu karşılıklarına
   çevrilir; zaten koyu olan bantlar ve kartlar aşağıdaki listede eski token'lara geri döner.
   İki koyu ton: --paper (ana zemin) ve --sand (ikinci bant: alıntı, zaman çizgisi, rakam bandı,
   seçici, adımlar); kartlar --white (bir ton açık). Yeni koyu bileşen eklenirse alttaki listeye ekleyin.
   ===================================================================== */
html[data-theme="dark"] { color-scheme: dark; background: #0f1215; }
html[data-theme="dark"] body {
  --paper: #0f1215; --sand: #161a20; --sand-line: rgba(255,255,255,.1);
  --white: #1d2229; --ink: #e8ebee;
  --g-50: #161a1f; --g-100: #1d2228; --g-200: #262b32; --g-300: #3a4048; --g-400: #7f8790; --g-500: #9aa1a9;
  --g-600: #b4bac1; --g-700: #ccd1d6; --g-800: #dfe2e6; --g-900: #eceef0; --g-950: #f6f7f8;
  --rule: rgba(255,255,255,.11); --rule-strong: rgba(255,255,255,.4);
  --ember-text: var(--ember-500); --ember-hover: var(--ember-300); --focus: var(--ember-500);
  --ember-100: rgba(255,122,26,.15); --ember-50: rgba(255,122,26,.08);
  --red-tint: rgba(215,20,26,.16); --red-dark: #ff8f8f;
  --ok: #4cc785; --ok-tint: rgba(29,122,70,.22); --ok-line: rgba(76,199,133,.35); --warn: #e3a24a;
  --wa-dark: var(--wa);
}
/* zaten koyu yüzeyler ve fotoğraf/kırmızı üstündeki yazılar: ilk koyu tasarımın token'ları */
html[data-theme="dark"] :is(.site-header, .nav, .kor, .svc, .closer, .page-hero, .sectors, .catsheet, .tech__panel, .site-footer,
  .cinfo__card, .news3__feat, .cta-band, .dark, .st--quote, .notfound, .actbar, .lightbox, .quote__contact, .svcpage__cta, .map__bar,
  .facts > div:first-child, .kcard, .btn--primary, .tile, .band, .why2__pills b) {
  --g-950: #0b0d10; --g-900: #121417; --g-800: #1a1d22; --g-700: #272b31; --g-600: #3a3f47; --g-500: #5c636c;
  --g-400: #8a929b; --g-300: #b9bfc6; --g-200: #d9dce0; --g-100: #ebedef; --g-50: #f5f5f4;
  --white: #ffffff; --ink: #0f1114; --paper: #ffffff;
  --rule: rgba(15,17,20,.14); --rule-strong: rgba(15,17,20,.5);
  --ember-100: #ffe9cf; --ember-50: #fff6ee;
}
html[data-theme="dark"] .btn--primary { --ember-text: #fff; }
/* çift koyu: ana zemin --paper ile koyu bantlar (hizmetler, sektörler) ikinci tonda sırayla */
html[data-theme="dark"] :is(.svc, .sectors) { background: #161a20; }
/* fotoğraf kutularının yer tutucusu ve gölgeler koyu zeminde */
html[data-theme="dark"] :is(.relsvc__list a, .case, .vcard, .faq__item, .qflow) { box-shadow: none; }
html[data-theme="dark"] .field :is(input, select, textarea) { background: var(--g-50); border-color: var(--g-300); }
html[data-theme="dark"] .cc { background: var(--white); color: var(--ink); }
