/* ==========================================================================
   NURAS: site stilleri ("Dosya")
   Sayfa kâğıdı, belge yaprakları, klasör sırtı başlıkları (Archivo genişlik
   ekseni) ve yönetmelik metni gibi okunan serif (Source Serif 4, yalnızca 400).
   Kurallar: düz seçici özgüllüğü; dikey bölüm boşluğunu yalnızca .section
   verir; büyük harf dönüşümü, havada kalkma (hover lift) ve giriş animasyonu yok.
   ========================================================================== */

/* ---------- 0. Yazı tipleri (sitenin kendi sunucusundan; üçüncü taraf istek yok, OFL lisanslı: assets/fonts/LISANS.txt) ---------- */
@font-face { font-family: "Archivo"; font-style: normal; font-weight: 400 700; font-stretch: 62% 125%; font-display: swap;
  src: url("../fonts/archivo-latin-ext.woff2") format("woff2");
  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: "Archivo"; font-style: normal; font-weight: 400 700; font-stretch: 62% 125%; font-display: swap;
  src: url("../fonts/archivo-latin.woff2") format("woff2");
  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; }
@font-face { font-family: "Source Serif 4"; font-style: normal; font-weight: 400; font-display: swap;
  src: url("../fonts/source-serif-4-latin-ext.woff2") format("woff2");
  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: "Source Serif 4"; font-style: normal; font-weight: 400; font-display: swap;
  src: url("../fonts/source-serif-4-latin.woff2") format("woff2");
  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. Belirteçler ---------- */
:root {
  /* only light: tarayıcının zorla karanlık modu (Chrome, Android, Samsung) renkleri tersine çevirmez; logo laciverti her telefonda aynı görünür */
  color-scheme: only light;

  /* Palet: logo laciverti ailesi; yeşil yalnızca Çevre alanında (.alan-cevre) */
  --kagit:    #F3F4F0; /* Kâğıt: sayfa zemini */
  --arsiv:    #E2E5E8; /* Arşiv kartonu: ikincil bölüm zemini, tablo başları */
  --sayfa:    #FFFFFF; /* Sayfa: belge yaprakları (pencere, robot, künye, form) */
  --murekkep: #141B2B; /* Mürekkep: metin, çerçeve düğmeler, koyu bölümler (mavi-siyah) */
  --kursun:   #4D5566; /* Kurşun kalem: ikincil metin, meta, kodlar */
  --kayit:    #0F1B78; /* Kayıt: logo laciverti; ana düğme, bağlantı, sayfa başına tek lacivert bölüm */
  --muhur:    #3B4AA8; /* Mühür: ıstampa mavisi; mühür ve açık zeminde odak halkası */
  --yesil:    #1B4743; /* Çevre yeşili: .alan-cevre kapsamında --kayit bu renge döner */
  --logo:     #0F1B78; /* Logo laciverti (sabit; kapsamlar --kayit'i değiştirse de logo değişmez) */

  /* İşlevsel */
  --cizgi:        #C5CAD1;
  --alan:         #717888;
  --hata:         #A3392A;
  --koyu-ikincil: #BCC4DB;
  --muhur-acik:   #B4BEF2;
  --satir-hover:  #E9EBED;
  --kayit-hover:  #26339E; /* lacivert düğmenin üzerine gelince */

  /* Eski adlar (geçiş; kullanım kalmadığında silinecek) */
  --danger: var(--hata); --gold: var(--kayit); --gold-soft: var(--arsiv); --ivory: var(--kagit);
  --forest: var(--kayit); --muted: var(--kursun); --line: var(--cizgi); --ok: var(--kayit);

  /* Yazı */
  --f-sans:  "Archivo", "Helvetica Neue", Arial, sans-serif;
  --f-serif: "Source Serif 4", Georgia, "Times New Roman", serif;
  --t-display: clamp(2.75rem, 1.6rem + 4.2vw, 4.5rem);
  --t-h1:      clamp(2.375rem, 1.6rem + 3vw, 3.75rem);
  --t-h2:      clamp(1.875rem, 1.3rem + 2vw, 3rem);
  --t-kapanis: clamp(2.25rem, 1.4rem + 3.2vw, 4rem);
  --t-h3: 1.5rem;  --t-h4: 1.125rem;
  --t-lead: clamp(1.1875rem, 1.05rem + .45vw, 1.3125rem);
  --t-body: 1.125rem;
  --t-ui: 1rem; --t-nav: .9375rem; --t-meta: .875rem; --t-mikro: .8125rem;

  /* Ölçü */
  --container: 1240px; --gutter: 28px;
  --bolum: clamp(80px, 10vw, 144px);
  --header-h: 72px;
  --s1: 4px; --s2: 8px; --s3: 12px; --s4: 16px; --s5: 24px; --s6: 32px; --s7: 48px; --s8: 64px; --s9: 96px;

  /* Köşe (hiyerarşi) */
  --r-sayfa: 2px;
  --r-sekme: 8px 8px 0 0;
  --r-muhur: 50%;

  /* Gölge (yalnızca yüzen katmanlar ve başlık) */
  --golge-yuzen:  0 1px 0 rgba(20,27,43,.06), 0 24px 48px -24px rgba(20,27,43,.42);
  --golge-baslik: 0 8px 18px -16px rgba(20,27,43,.5);
  --golge-sekme:  0 -1px 0 rgba(20,27,43,.08), 0 -10px 24px -14px rgba(20,27,43,.45);

  --ease: cubic-bezier(.2,.7,.2,1);
}
@media (max-width: 1099px) { :root { --header-h: 64px; } }
@media (max-width: 640px)  { :root { --gutter: 16px; } }

/* ---------- 2. Temel ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: calc(var(--header-h) + 16px); -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { margin: 0; background: var(--kagit); color: var(--murekkep); font: 400 var(--t-ui)/1.5 var(--f-sans); overflow-x: hidden; overflow-x: clip; -webkit-font-smoothing: antialiased; }
img, svg, canvas { display: block; max-width: 100%; }
a { color: inherit; }
button, input, select, textarea { font: inherit; color: inherit; }
button { cursor: pointer; word-spacing: inherit; }
h1, h2, h3, h4 { margin: 0; font-family: var(--f-sans); font-weight: 600; text-wrap: balance; overflow-wrap: break-word; }
p, ul, ol, dl, dd, figure { margin: 0; padding: 0; }
ul, ol { list-style: none; }
b, strong { font-weight: 600; }
small { font-size: inherit; }
table { border-collapse: collapse; }
[hidden] { display: none !important; }
.nobr { white-space: nowrap; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: absolute; left: 16px; top: -60px; z-index: 1000; background: var(--kayit); color: var(--kagit); padding: 10px 16px; border-radius: var(--r-sayfa); font-weight: 600; text-decoration: none; }
.skip-link:focus { position: fixed; top: 16px; }
.icon { width: 20px; height: 20px; flex: none; stroke: currentColor; fill: none; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.icon--sm { width: 16px; height: 16px; }
.icon--lg { width: 28px; height: 28px; }

/* ---------- 3. Yazı sınıfları ---------- */
.h1 { font-size: var(--t-h1); font-weight: 600; font-stretch: 80%; line-height: 1.04; letter-spacing: -.012em; }
.h2 { font-size: var(--t-h2); font-weight: 600; font-stretch: 82%; line-height: 1.08; letter-spacing: -.01em; }
.h3 { font-size: var(--t-h3); font-weight: 600; font-stretch: 90%; line-height: 1.2; letter-spacing: -.005em; }
.h4 { font-size: var(--t-h4); font-weight: 600; line-height: 1.3; }
.lead { font: 400 var(--t-lead)/1.55 var(--f-serif); max-width: 60ch; text-wrap: pretty; }
.metin p, .metin li, .metin dd, p.metin { font: 400 var(--t-body)/1.62 var(--f-serif); max-width: 68ch; }
.metin--kucuk p, p.metin--kucuk { font-size: .9375rem; line-height: 1.55; }
.lead, .metin { font-optical-sizing: auto; font-synthesis: none; }
/* Archivo dar genişlikte (font-stretch < 100%) boşluk karakterini de daraltır; "TMGD hizmeti"
   gibi büyük harfle biten sözcüklerden sonra boşluk kaybolmasın. Serif metin normal aralıkta kalır. */
body { word-spacing: .06em; }
h1, h2, h3, h4, .manset-baslik { word-spacing: .1em; }
.lead, .metin, .metin p, .metin li, .metin dd, .manset-ozet, .cetvel p { word-spacing: normal; }
.metin b, .metin strong, .lead b { font-family: var(--f-sans); font-weight: 600; font-size: .94em; }
.meta { font: 500 var(--t-meta)/1.4 var(--f-sans); color: var(--kursun); }
.ikincil { color: var(--kursun); }
.tnum { font-variant-numeric: tabular-nums lining-nums; }
.kod { font-weight: 500; font-variant-numeric: tabular-nums; margin-right: .35em; }
sub { font-size: .72em; line-height: 0; vertical-align: -.2em; }

/* ---------- 4. Düzen ---------- */
.container { width: 100%; max-width: var(--container); margin-inline: auto; padding-inline: var(--gutter); }
.izgara { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 28px; }
.section { padding-block: var(--bolum); }
.section--arsiv { background: var(--arsiv); }
.section--kayit { background: var(--kayit); }
.section--kayit, .alan-koyu { color: var(--kagit); --odak: var(--kagit); }
.section--kayit .meta, .alan-koyu .meta, .section--kayit .ikincil, .alan-koyu .ikincil { color: var(--koyu-ikincil); }
.bolum-bas { display: grid; gap: 16px; max-width: 760px; margin-bottom: 48px; }
@media (min-width: 960px) { .bolum-bas--yan { max-width: none; grid-template-columns: 5fr 7fr; column-gap: 48px; align-items: end; } }
.eylemler { display: flex; flex-wrap: wrap; gap: 12px 16px; align-items: center; }

/* ---------- 5. Düğmeler (ok yok) ---------- */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; padding: 12px 22px;
  border: 1.5px solid transparent; border-radius: var(--r-sayfa); font: 600 var(--t-ui)/1.2 var(--f-sans); font-stretch: 95%;
  letter-spacing: .005em; text-align: center; text-decoration: none; cursor: pointer;
  background: var(--kayit); color: var(--kagit); transition: background-color 120ms, border-color 120ms, color 120ms; }
.btn:hover { background: var(--kayit-hover); }
.btn:active { transform: translateY(1px); }
.btn--birincil { background: var(--kayit); color: var(--kagit); }
.btn--birincil:hover { background: var(--kayit-hover); }
.btn--cerceve { background: transparent; color: var(--murekkep); border-color: var(--murekkep); }
.btn--cerceve:hover { background: var(--arsiv); }
.btn--ters { background: var(--kagit); color: var(--kayit); }
.btn--ters:hover { background: var(--sayfa); }
.btn--cerceve-ters { background: transparent; color: var(--kagit); border-color: var(--kagit); }
.btn--cerceve-ters:hover { background: rgba(243,244,240,.1); }
.btn--metin { background: none; border: 0; min-height: 44px; padding: 0 4px; color: var(--kayit); text-decoration: underline 1px; text-underline-offset: .25em; }
.btn--metin:hover { background: none; color: var(--murekkep); text-decoration-thickness: 2px; }
.btn--sm { min-height: 40px; padding: 8px 16px; font-size: .9375rem; }
@media (max-width: 640px) { .btn--sm { min-height: 44px; } }
.btn[disabled] { opacity: .5; pointer-events: none; }

/* ---------- 6. Bağlantılar ---------- */
.baglanti, .metin a, .lead a { color: var(--kayit); text-decoration: underline 1px; text-decoration-color: currentColor;
  text-decoration-color: color-mix(in srgb, currentColor 45%, transparent); text-underline-offset: .2em; }
.baglanti:hover, .metin a:hover { color: var(--murekkep); text-decoration-thickness: 2px; text-decoration-color: currentColor; }
.section--kayit .baglanti, .alan-koyu .baglanti { color: var(--kagit); }
.bkz { font: 500 .9375rem/1.45 var(--f-sans); color: var(--kursun); }
.bkz a { font-weight: 600; color: var(--kayit); text-decoration: underline 1px; text-underline-offset: .2em; }
.bkz a:hover { color: var(--murekkep); text-decoration-thickness: 2px; }
.alan-koyu .bkz, .section--kayit .bkz { color: var(--koyu-ikincil); }
.alan-koyu .bkz a, .section--kayit .bkz a { color: var(--kagit); }

/* ---------- 7. Odak ---------- */
:focus-visible { outline: 2px solid var(--odak, var(--muhur)); outline-offset: 2px; }
.input:focus-visible, .select:focus-visible, .textarea:focus-visible { outline-offset: 1px; border-color: var(--murekkep); }
.chip input:focus-visible + span { outline: 2px solid var(--odak, var(--muhur)); outline-offset: 2px; }

dialog.modal:focus, dialog.modal:focus-visible { outline: none; }

/* ---------- 8. Formlar ---------- */
.form { display: grid; gap: 16px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media (max-width: 640px) { .form-row { grid-template-columns: 1fr; } }
.field { display: grid; gap: 6px; align-content: start; }
.field > label, .label { font: 600 var(--t-meta)/1.3 var(--f-sans); color: var(--murekkep); }
.hint { font: 500 var(--t-meta)/1.4 var(--f-sans); color: var(--kursun); }
.input, .select, .textarea { width: 100%; min-height: 48px; padding: 0 14px; background: var(--sayfa); border: 1px solid var(--alan);
  border-radius: var(--r-sayfa); font: 400 var(--t-ui)/1.4 var(--f-sans); color: var(--murekkep); }
.input::placeholder, .textarea::placeholder { color: var(--kursun); opacity: 1; }
.textarea { min-height: 140px; padding: 12px 14px; resize: vertical; }
.select { appearance: none; -webkit-appearance: none; padding-right: 40px; background: var(--sayfa) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23141B2B' stroke-width='1.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center / 18px; }
.is-invalid { border-color: var(--hata) !important; }
.field:has(.is-invalid) > label { color: var(--hata); }
.check { display: flex; gap: 10px; align-items: flex-start; font: 400 .9375rem/1.45 var(--f-sans); cursor: pointer; }
.check input { width: 20px; height: 20px; margin: 1px 0 0; accent-color: var(--kayit); flex: none; }
.check input.is-invalid { outline: 2px solid var(--hata); outline-offset: 2px; }
.check.is-invalid, .check:has(input.is-invalid) { color: var(--hata); }
.alan-hata { display: flex; align-items: flex-start; gap: 8px; margin: 6px 0 0; font: 500 .875rem/1.4 var(--f-sans); color: var(--hata); }
.alan-hata::before { content: "!"; flex: none; display: grid; place-items: center; width: 18px; height: 18px; margin-top: 1px; border-radius: 50%; background: var(--hata); color: var(--sayfa); font: 700 .75rem/1 var(--f-sans); }
.form-status { display: none; padding: 12px 16px; font: 500 .9375rem/1.45 var(--f-sans); background: var(--arsiv); }
.form-status.is-ok { display: block; box-shadow: inset 3px 0 var(--kayit); }
.form-status.is-gonderiliyor { display: block; color: var(--kursun); }
.form-status.is-err { display: block; box-shadow: inset 3px 0 var(--hata); color: var(--hata); }

/* ---------- 9. Başlık ve menü ---------- */
.site-header { position: sticky; top: 0; z-index: 100; height: var(--header-h); background: var(--kagit); border-bottom: 1px solid var(--cizgi); transition: box-shadow 160ms; }
.site-header.is-solid { box-shadow: var(--golge-baslik); }
/* overflow-x: clip: web fontu yüklenemezse (geniş yedek font) başlık satırı sayfayı yatay kaydırmasın; açılır menüler dikeyde serbest */
.header-inner { display: flex; align-items: center; gap: 32px; height: 100%; overflow-x: clip; }
/* Logo: sloganlı tam logo ("Yönetim & Danışmanlık"); slogan 168px genişliğin altında okunmaz */
.brand { display: inline-flex; align-items: center; color: var(--logo); text-decoration: none; flex: none; border-radius: var(--r-sayfa); }
.brand-logo { display: block; width: 176px; height: auto; }
.brand:focus-visible { outline-offset: 6px; }
.nav { margin-left: auto; align-self: stretch; display: flex; }
.nav-list { display: flex; align-items: flex-end; }
.nav-item { position: relative; }
.nav-link { display: flex; align-items: center; gap: 4px; height: 48px; padding: 0 10px; margin-bottom: -1px; white-space: nowrap;
  font: 500 var(--t-nav)/1.15 var(--f-sans); font-stretch: 82%; color: var(--murekkep); text-decoration: none;
  border: 1px solid transparent; border-bottom: 0; border-radius: var(--r-sekme); transition: background-color 120ms; }
.nav-link .icon { color: var(--kursun); }
.nav-link:hover, .nav-item:focus-within > .nav-link { background: var(--arsiv); }
.nav-link[aria-current] { background: var(--sayfa); border-color: var(--cizgi); box-shadow: inset 0 3px 0 var(--kayit); font-weight: 600; }
.nav-link:focus-visible { outline-offset: -2px; }
/* Sağda İletişim ve e-Nuras. Yedek yazı tipi geniş gelirse (main.js) önce menü boşlukları daralır, sonra e-Nuras yalnızca simge kalır */
.header-cta { flex: none; display: flex; align-items: center; gap: 8px; }
.header-iletisim[aria-current] { box-shadow: inset 0 -3px 0 var(--muhur-acik); }
.header-inner.is-sikisik { gap: 20px; }
.header-inner.is-sikisik .nav-link { padding-inline: 6px; }
.header-inner.is-cok-sikisik .header-enuras > span:not(.sr-only) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.burger { display: none; }
.nav-mobile-cta { display: none; }

@media (max-width: 1099px) {
  .header-inner { gap: 16px; }
  .brand-logo { width: 160px; }
  .header-cta { display: none; }
  /* Menü açıkken altında kalan içerik odaklanmaz ve okunmaz (menü 200ms'de belirir) */
  body.nav-open main, body.nav-open .site-footer { visibility: hidden; transition: visibility 0s linear 200ms; }
  .burger { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin-left: auto; padding: 0;
    background: none; border: 1.5px solid var(--murekkep); border-radius: var(--r-sayfa); color: var(--murekkep); }
  .burger span, .burger span::before, .burger span::after { display: block; width: 18px; height: 1.5px; background: currentColor; position: relative; transition: transform 200ms var(--ease), background-color 200ms; }
  .burger span::before, .burger span::after { content: ""; position: absolute; left: 0; }
  .burger span::before { top: -6px; }
  .burger span::after { top: 6px; }
  .nav-open .burger span { background: transparent; }
  .nav-open .burger span::before { transform: translateY(6px) rotate(45deg); }
  .nav-open .burger span::after { transform: translateY(-6px) rotate(-45deg); }

  /* Menü başlık çizgisinin altından başlar: kaydırılınca öğeler logonun ve kapat düğmesinin altına girmez */
  .nav { position: fixed; inset: var(--header-h) 0 0 0; z-index: -1; display: block; margin: 0; background: var(--kagit); padding: 24px 16px 40px; overflow-y: auto; overscroll-behavior: contain;
    opacity: 0; visibility: hidden; transform: translateY(-8px); transition: opacity 200ms, transform 200ms, visibility 200ms; }
  body.nav-open .nav { opacity: 1; visibility: visible; transform: none; }
  body.nav-open { overflow: hidden; }
  .nav-list { flex-direction: column; align-items: stretch; max-width: 640px; margin-inline: auto; }
  .nav-link { height: auto; padding: 16px 0; margin: 0; font-size: 1.375rem; font-weight: 600; font-stretch: 85%; border: 0; border-bottom: 1px solid var(--cizgi); border-radius: 0; white-space: normal; }
  .nav-link:hover, .nav-item:focus-within > .nav-link { background: none; }
  .nav-link[aria-current] { background: none; border-color: var(--cizgi); box-shadow: inset 3px 0 var(--kayit); padding-left: 12px; }
  .nav-mobile-cta { display: grid; gap: 12px; max-width: 640px; margin: 28px auto 0; }
  /* JavaScript yoksa menü düğmesi çalışmaz: menü başlığın altında düz bağlantı satırı olarak görünür */
  .no-js .burger, .no-js .nav-mobile-cta { display: none; }
  /* İletişim ve e-Nuras düğmeleri logonun yanında (sığmazsa alt satırda) kalır; bağlantı satırı en altta */
  .no-js .site-header { position: static; height: auto; }
  .no-js .header-cta { display: flex; margin-left: auto; }
  .no-js .nav { order: 1; }
  .no-js .header-inner { flex-wrap: wrap; height: auto; padding-block: 12px; }
  .no-js .nav { position: static; inset: auto; z-index: auto; width: 100%; padding: 0; overflow: visible; background: none; opacity: 1; visibility: visible; transform: none; }
  .no-js .nav-list { flex-direction: row; flex-wrap: wrap; gap: 4px 18px; max-width: none; margin: 0; }
  .no-js .nav-link { padding: 6px 0; font-size: 1rem; border: 0; }
}

/* ---------- 10. Alt menü ve sayfa yolu ---------- */
.crumbs { display: flex; flex-wrap: wrap; gap: 8px; font: 500 .875rem/1.4 var(--f-sans); color: var(--kursun); }
.crumbs a { color: inherit; text-decoration: underline 1px; text-underline-offset: .2em; }
.crumbs a:hover { color: var(--murekkep); }
.crumbs .sep { color: var(--cizgi); }
.alan-koyu .crumbs { color: var(--koyu-ikincil); }
.alan-koyu .crumbs a:hover { color: var(--kagit); }
.alan-koyu .crumbs .sep { color: rgba(243,244,240,.4); }

/* ---------- 11. Pencere (dialog.modal) ---------- */
dialog.modal { width: min(760px, calc(100% - 32px)); max-width: none; max-height: 88dvh; padding: 0; border: 1px solid var(--cizgi); border-radius: var(--r-sayfa);
  background: var(--sayfa); color: var(--murekkep); box-shadow: var(--golge-yuzen); overflow: hidden; }
dialog.modal[open] { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; animation: dlg-in 200ms var(--ease); }
@keyframes dlg-in { from { opacity: 0; transform: translateY(12px); } }
dialog.modal::backdrop { background: rgba(20,27,43,.55); }
.modal-head { position: relative; padding: 32px 72px 20px 32px; border-bottom: 1px solid var(--cizgi); display: grid; gap: 12px; }
.modal-title { display: flex; align-items: center; gap: 14px; font-size: 1.875rem; font-weight: 600; font-stretch: 82%; line-height: 1.1; }
.modal-close { position: absolute; z-index: 2; top: 16px; right: 16px; width: 44px; height: 44px; display: grid; place-items: center; padding: 0; border-radius: var(--r-sayfa); background: none; border: 0; color: var(--murekkep); cursor: pointer; }
.modal-close:hover { background: var(--arsiv); }
.modal-body { overflow-y: auto; padding: 24px 32px; display: grid; gap: 20px; align-content: start; }
.kapsam-list { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 32px; }
.kapsam-list li { position: relative; padding-left: 20px; font: 400 1rem/1.45 var(--f-sans); }
.kapsam-list li::before { content: ""; position: absolute; left: 0; top: .5em; width: 8px; height: 8px; background: var(--kayit); }
.modal-foot { padding: 16px 32px; border-top: 1px solid var(--cizgi); display: flex; flex-wrap: wrap; gap: 12px 24px; justify-content: space-between; align-items: center; }
.modal-body.metin { gap: 16px; }
@media (max-width: 640px), (max-height: 500px) {
  dialog.modal { width: 100%; max-width: 100%; height: 100dvh; max-height: 100dvh; margin: 0; border: 0; border-radius: 0; }
  .modal-head { padding: 20px 64px 16px 16px; }
  .modal-title { font-size: 1.625rem; }
  .modal-body { padding: 20px 16px; }
  .modal-foot { padding: 12px 16px; }
}
@media (max-width: 640px) { .kapsam-list { grid-template-columns: 1fr; } }
/* Yatay telefon: pencere başlığı ve alt satırı sıkışır, içerik (metin, gazete sayfası) yüksekliği kullanır */
@media (max-height: 500px) {
  .modal-head { padding: 10px 64px 8px 16px; gap: 4px; }
  .modal-head .meta { display: none; }
  .modal-title { font-size: 1.25rem; }
  .modal-body { padding: 12px 16px; }
  .modal-foot { padding: 6px 16px; }
}

/* ---------- 12. Alt bilgi ("arka kapak"): kısa tutulur ---------- */
.site-footer { background: var(--murekkep); color: var(--kagit); --odak: var(--kagit); padding: 56px 0 28px; }
.site-footer .brand { color: var(--kagit); }
.brand-logo--tam { width: 176px; height: auto; }
.footer-ust { display: grid; grid-template-columns: 1fr 1.6fr 1fr 1.5fr; gap: 40px; }
.footer-marka { display: grid; gap: 20px; justify-items: start; align-content: start; }
.footer-h { margin-bottom: 12px; font: 600 .9375rem/1.3 var(--f-sans); color: var(--kagit); }
.footer-liste { display: grid; gap: 7px; }
.footer-liste a { color: var(--kagit); text-decoration: none; font: 500 .875rem/1.35 var(--f-sans); }
.footer-liste a:hover, .footer-alt a:hover { text-decoration: underline 1px; text-underline-offset: .2em; }
/* İletişim: etiket ve değer yan yana (iki sütun), satırlar sık */
.site-footer .footer-kunye-liste { grid-template-columns: max-content minmax(0, 1fr); gap: 7px 14px; }
.site-footer .footer-kunye-liste > div { display: contents; }
.site-footer .kunye dt { font-size: .8125rem; line-height: 1.5; color: var(--koyu-ikincil); }
.site-footer .kunye dd { font-size: .875rem; line-height: 1.4; color: var(--kagit); }
/* Küçük konum kartı: tıklanınca harita penceresi açılır (JavaScript yoksa İletişim sayfasındaki haritaya gider) */
.mini-harita { position: relative; display: block; width: 100%; max-width: 300px; margin-top: 16px; padding: 0; overflow: hidden; cursor: pointer; color: var(--kagit); text-decoration: none;
  background: #1B2439; border: 1px solid rgba(243,244,240,.2); border-radius: var(--r-sayfa); transition: border-color 120ms; }
.mini-harita:hover { border-color: var(--kagit); }
.mini-harita-kroki { display: block; width: 100%; height: 76px; }
.mk-izgara { fill: none; stroke: rgba(243,244,240,.07); stroke-width: 1; }
.mk-yol { fill: none; stroke: rgba(243,244,240,.16); stroke-width: 4; stroke-linecap: round; }
.mk-yol--ana { stroke: rgba(243,244,240,.3); stroke-width: 7; }
.mk-imlec path { fill: #F2A541; }
.mk-imlec circle { fill: #1B2439; }
.mini-harita-etiket { position: absolute; left: 8px; bottom: 8px; display: inline-flex; align-items: center; gap: 6px; padding: 5px 8px;
  font: 600 .8125rem/1 var(--f-sans); background: rgba(20,27,43,.88); border-radius: var(--r-sayfa); }
.mini-harita-etiket .icon { width: 16px; height: 16px; }
/* Harita penceresi: yükseklik pencereden gelir, harita ortadaki satırı doldurur (adres ve düğmenin üstüne taşmaz) */
dialog.modal--harita { width: min(980px, calc(100% - 32px)); }
dialog.modal--harita[open] { height: min(88dvh, 720px); }
.harita-pencere-alan { position: relative; min-height: 0; background: var(--arsiv); }
.harita-pencere-alan iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
@media (max-width: 640px), (max-height: 500px) {
  dialog.modal--harita, dialog.modal--harita[open] { width: 100%; height: 100dvh; }
}
.footer-alt { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px 24px; margin-top: 36px; padding-top: 16px;
  border-top: 1px solid rgba(243,244,240,.18); font: 500 .8125rem/1.4 var(--f-sans); color: var(--koyu-ikincil); }
.footer-alt a { color: var(--kagit); text-decoration: none; }
.footer-kunye { display: flex; flex-wrap: wrap; gap: 4px 16px; flex-basis: 100%; order: 3; font-size: .8125rem; color: var(--koyu-ikincil); }
/* Sağda KVKK bağlantısı ve yazılım imzası (Dion Yazılım), aralarında ince ayraç */
.footer-alt-baglantilar { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 0; }
.footer-alt-baglantilar > * + * { margin-left: 16px; padding-left: 16px; border-left: 1px solid rgba(243,244,240,.24); }
.footer-imza a { font-weight: 600; }
@media (max-width: 640px) {
  .footer-alt { flex-direction: column; align-items: flex-start; }
  .footer-alt-baglantilar { flex-direction: column; align-items: flex-start; }
  .footer-alt-baglantilar > * + * { margin-left: 0; padding-left: 0; border-left: 0; }
}
/* Yasal metin sayfası (KVKK): okunaklı satır uzunluğu, paragraf aralığı */
.yasal-metin { display: grid; gap: 16px; max-width: 72ch; }
@media (max-width: 1099px) {
  .footer-ust { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 32px; }
  .footer-marka { grid-column: 1 / -1; }
}
@media (max-width: 640px) {
  .site-footer { padding: 40px 0 24px; }
  /* Telefonda hizmet listesi ve iletişim tam genişlik, kurumsal liste iki sütun */
  .footer-ust { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .footer-dizin:not(.footer-dizin--hizmet) .footer-liste { grid-template-columns: 1fr 1fr; column-gap: 16px; }
  .mini-harita { max-width: none; }
}

/* ---------- 14. Ortak kalıplar ---------- */
/* Cetvel: yalnızca gerçek sıralar için */
.cetvel { display: grid; grid-template-columns: repeat(var(--adim, 4), minmax(0, 1fr)); column-gap: 32px; border-top: 1px solid currentColor;
  border-top-color: color-mix(in srgb, currentColor 30%, transparent); }
.cetvel > li { position: relative; display: grid; gap: 8px; align-content: start; padding-top: 24px; }
.cetvel > li::before { content: ""; position: absolute; left: 0; top: -9px; width: 1px; height: 17px; background: currentColor; }
.cetvel-no { display: block; margin-bottom: 4px; font: 600 .875rem/1 var(--f-sans); font-variant-numeric: tabular-nums; color: var(--kursun); }
.section--kayit .cetvel-no { color: var(--koyu-ikincil); }
.cetvel p { font: 400 1rem/1.55 var(--f-serif); max-width: 40ch; }
.cetvel .cetvel-baslik { font: 600 1.1875rem/1.25 var(--f-sans); font-stretch: 95%; max-width: none; }
.section--kayit .cetvel p:not(.cetvel-baslik) { color: var(--koyu-ikincil); }
@media (max-width: 760px) {
  .cetvel { grid-template-columns: 1fr; row-gap: 32px; border-top: 0; border-left: 1px solid; border-left-color: color-mix(in srgb, currentColor 30%, transparent); padding-left: 24px; }
  .cetvel > li { padding-top: 0; }
  .cetvel > li::before { left: -32px; top: .55em; width: 17px; height: 1px; }
}

/* Kapanış */

/* Boşluksuz ızgara */
.izgara-tablo { display: grid; grid-template-columns: repeat(var(--sutun, 3), minmax(0, 1fr)); gap: 1px; background: var(--cizgi); border: 1px solid var(--cizgi); }
.izgara-tablo > * { display: grid; gap: 10px; align-content: start; background: var(--hucre, var(--kagit)); padding: 32px; }
@media (max-width: 900px) {
  .izgara-tablo { grid-template-columns: repeat(min(var(--sutun, 3), 2), minmax(0, 1fr)); }
  /* İki sütunda tek kalan son hücre satırı doldurur (boş gri hücre kalmaz) */
  .izgara-tablo > :last-child:nth-child(odd) { grid-column: 1 / -1; }
}
@media (max-width: 640px) { .izgara-tablo { grid-template-columns: 1fr; } .izgara-tablo > * { padding: 24px 20px; } }

/* Künye (etiket ve değer çiftleri; çizgisiz) */
.kunye { display: grid; gap: 16px; }
.kunye > div { display: grid; gap: 2px; align-content: start; }
.kunye dt { font: 500 .875rem/1.4 var(--f-sans); color: var(--kursun); }
.kunye dd { font: 500 1rem/1.45 var(--f-sans); color: var(--murekkep); overflow-wrap: anywhere; }
.kunye a { color: inherit; text-decoration: underline 1px; text-decoration-color: color-mix(in srgb, currentColor 40%, transparent); text-underline-offset: .2em; }
.kunye a:hover { text-decoration-color: currentColor; text-decoration-thickness: 2px; }
.kunye--iletisim { grid-template-columns: repeat(auto-fit, minmax(13.5rem, 1fr)); gap: 20px 40px; }
.iletisim-tel { display: inline-block; font: 600 1.75rem/1.15 var(--f-sans); font-stretch: 90%; font-variant-numeric: tabular-nums; color: var(--kayit); text-decoration: none; }
.iletisim-tel:hover { color: var(--murekkep); }

/* ==========================================================================
   17. Anasayfa banner slaytı, hizmet kartları, hizmet sayfası girişi
   ========================================================================== */
/* Banner: lacivert bant; her slayt solda metin, sağda görsel (temsilî çizim ya da fotoğraf).
   Şerit yatay kaydırılır (scroll-snap); JS (karusel.js) otomatik geçiş, düğmeler ve sayaç ekler. */
.manset { position: relative; background: var(--kayit); color: var(--kagit); --odak: var(--kagit); }
.manset-iz { display: flex; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; }
.manset-iz::-webkit-scrollbar { display: none; }
/* JavaScript yoksa düğmeler gizli olduğundan şeritler kaydırma çubuğuyla gezilir */
.no-js .manset-iz, .no-js .hizmet-serit { scrollbar-width: thin; }
.no-js .manset-iz::-webkit-scrollbar, .no-js .hizmet-serit::-webkit-scrollbar { display: block; height: 8px; }
.manset-slayt, .hizmet-giris { position: relative; display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); container-type: inline-size; }
.manset-slayt { flex: 0 0 100%; scroll-snap-align: start; scroll-snap-stop: always; min-height: clamp(460px, calc(100svh - var(--header-h) - 96px), 640px); }
/* Slayt metni üste yaslanır: otomatik geçişte başlık ve düğme slayttan slayda yer değiştirmez */
.manset-slayt .manset-metin { align-self: start; padding-top: clamp(48px, 9svh, 96px); }
.manset-metin, .hizmet-giris-metin { align-self: center; display: grid; gap: 16px; justify-items: start; min-width: 0;
  padding: 56px clamp(24px, 4cqw, 56px) 112px max(var(--gutter), calc(50cqw - var(--container) / 2 + var(--gutter))); }
.manset-baslik { font: 650 clamp(2.5rem, 1.5rem + 3.2vw, 4.75rem)/.98 var(--f-sans); font-stretch: 76%; letter-spacing: -.015em; text-wrap: balance; }
.manset-baslik a { color: inherit; text-decoration: none; }
.manset-baslik a:hover { text-decoration: underline 2px; text-underline-offset: .12em; }
.manset-alt { font: 600 clamp(1rem, .9rem + .4vw, 1.25rem)/1.3 var(--f-sans); font-stretch: 92%; color: var(--muhur-acik); text-wrap: balance; }
.manset-ozet { max-width: 44ch; font: 400 1.125rem/1.55 var(--f-serif); font-synthesis: none; }
.manset-metin .eylemler, .hizmet-giris-metin .eylemler { margin-top: 8px; }
.manset-dis { font: 500 .9375rem/1.4 var(--f-sans); color: var(--koyu-ikincil); }
.manset-dis a { color: var(--kagit); font-weight: 600; text-decoration: underline 1px; text-underline-offset: .2em; }
.manset-gorsel { position: relative; display: block; min-height: 100%; overflow: hidden; }
.manset-gorsel img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
a.manset-gorsel img { transition: transform 600ms var(--ease); }
a.manset-gorsel:hover img { transform: scale(1.02); }

/* Denetimler: önceki/sonraki, sayaç, ilerleme çubukları, durdur */
.manset-kontrol { position: absolute; left: 0; right: 0; bottom: 32px; pointer-events: none; }
.manset-kontrol-ic { display: flex; align-items: center; gap: 8px; }
.manset-kontrol-ic > * { pointer-events: auto; }
.manset-dugme { display: inline-grid; place-items: center; flex: none; width: 44px; height: 44px; padding: 0; color: var(--kagit); background: transparent;
  border: 1px solid rgba(243,244,240,.45); border-radius: var(--r-sayfa); cursor: pointer; transition: background-color 120ms, border-color 120ms; }
.manset-dugme:hover { background: rgba(243,244,240,.12); border-color: var(--kagit); }
.manset-dugme .icon { width: 20px; height: 20px; }
.manset-dugme[disabled], .manset-dugme[aria-disabled="true"] { opacity: .35; cursor: default; }
.manset-sayac { min-width: 4.5ch; font: 600 .9375rem/1 var(--f-sans); text-align: center; }
.manset-noktalar { display: flex; gap: 4px; margin-inline: 12px 4px; }
.manset-nokta { display: grid; align-items: center; width: 22px; height: 44px; padding: 0; background: none; border: 0; cursor: pointer; }
.manset-nokta span { position: relative; display: block; height: 3px; overflow: hidden; background: rgba(243,244,240,.42); }
.manset-nokta:hover span { background: rgba(243,244,240,.55); }
.manset-nokta[aria-current="true"] span::after { content: ""; position: absolute; inset: 0; background: var(--kagit); transform-origin: left center;
  animation: manset-ilerleme var(--manset-sure, 7s) linear both; }
.manset.is-bekle .manset-nokta[aria-current="true"] span::after, .manset.is-gizli .manset-nokta[aria-current="true"] span::after { animation-play-state: paused; }
/* Sondan başa dönüşte kısa solma (aradaki slaytlar geri sarılmaz) */
.manset-iz.is-sar { animation: manset-sar 320ms var(--ease); }
@keyframes manset-sar { from { opacity: .35; } }
.manset.is-durdu .manset-nokta[aria-current="true"] span::after { animation: none; }
@keyframes manset-ilerleme { from { transform: scaleX(0); } }
.manset-dur .icon + .icon { display: none; }
.is-durdu .manset-dur .icon:first-child { display: none; }
.is-durdu .manset-dur .icon + .icon { display: block; }
.no-js .manset-kontrol, .no-js .hizmet-serit-dugmeler { display: none; }

/* Hizmet sayfası girişi: slaytla aynı dil */
.hizmet-giris { background: var(--kayit); color: var(--kagit); min-height: clamp(420px, calc(100svh - var(--header-h) - 160px), 600px); }
.hizmet-giris-metin { padding-bottom: 56px; }
.hizmet-giris .crumbs { margin-bottom: 8px; }

/* İki sütunlu dar aralıkta görsel sütunu dikleşir: çizimler kırpılmadan sığdırılır (zemin aynı lacivert) */
@media (min-width: 901px) and (max-width: 1099px) { .manset-gorsel img[src$=".svg"] { object-fit: contain; } }
/* 1100px altında ilerleme çubukları gizlenir (denetimler metin sütununa sığsın) */
@media (max-width: 1099px) { .manset-noktalar { display: none; } }
/* Tablet dikey ve telefon: görsel üstte, metin altta */
@media (max-width: 900px) {
  /* --gorsel-y: üstteki görselin yüksekliği; denetim satırı hemen altına yerleşir (alttaki sabit sekmeler örtmez) */
  .manset { container-type: inline-size; --gorsel-y: 62.5cqw; }
  .manset-slayt, .hizmet-giris { grid-template-columns: minmax(0, 1fr); min-height: 0; }
  .manset-slayt { grid-template-rows: auto 1fr; }
  .manset-gorsel { aspect-ratio: 16 / 10; min-height: 0; }
  .manset-slayt .manset-gorsel { grid-row: 1; aspect-ratio: auto; height: var(--gorsel-y); }
  .manset-metin, .hizmet-giris-metin { align-self: start; gap: 12px; padding: 24px var(--gutter) 96px; }
  .manset-slayt .manset-metin { padding: 76px var(--gutter) 40px; }
  .hizmet-giris-metin { padding-bottom: 32px; }
  .manset-baslik { font-size: clamp(2rem, 1.4rem + 3vw, 2.75rem); }
  .manset-ozet { font-size: 1rem; }
  .manset-kontrol { top: calc(var(--gorsel-y) + 16px); bottom: auto; }
}
/* Yatay telefon: görsel ekranın yarısını geçmez; başlık ilk ekranda görünür */
@media (orientation: landscape) and (max-height: 500px) and (max-width: 1099px) {
  .manset { container-type: inline-size; --gorsel-y: 44svh; }
  .manset-slayt, .hizmet-giris { grid-template-columns: minmax(0, 1fr); min-height: 0; }
  .manset-slayt { grid-template-rows: auto 1fr; }
  .manset-slayt .manset-gorsel { grid-row: 1; aspect-ratio: auto; min-height: 0; height: var(--gorsel-y); }
  .manset-slayt .manset-metin { align-self: start; gap: 12px; padding: 76px var(--gutter) 40px; }
  .manset-kontrol { top: calc(var(--gorsel-y) + 16px); bottom: auto; }
  .hizmet-giris .manset-gorsel { aspect-ratio: auto; min-height: 0; height: 44svh; }
  .manset-baslik { font-size: clamp(2rem, 1.4rem + 3vw, 2.75rem); }
}

/* Hizmet kart şeridi (oklarla kaydırılır) ve hizmet ızgarası */
.hizmet-serit-bas { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px 32px; margin-bottom: 32px; }
/* Dar ekranda (kapsayıcı 448 pikselden darsa) düğmeler başlığın altına iner; uzun tek kelimeli başlık taşmaz */
.hizmet-serit-bas .bolum-bas { flex: 1 1 20rem; min-width: 0; margin-bottom: 0; }
.hizmet-serit-dugmeler { display: flex; gap: 8px; flex: none; }
.manset-dugme--acik { color: var(--murekkep); background: var(--sayfa); border-color: var(--cizgi); --odak: var(--muhur); }
.manset-dugme--acik:hover { background: var(--arsiv); border-color: var(--murekkep); }
.hizmet-serit { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 3 * 24px) / 4); gap: 24px; overflow-x: auto; scroll-snap-type: x mandatory;
  scrollbar-width: none; padding: 4px; margin: -4px; scroll-padding-inline: 4px; }
.hizmet-serit::-webkit-scrollbar { display: none; }
.hizmet-serit > .hizmet-kart { scroll-snap-align: start; }
/* Hizmetlerimiz: üç sütun; son satırda yedinci hizmetin yanında iki sütunluk Entegre Hizmetlerimiz paneli */
.hizmet-izgara { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
@media (max-width: 1023px) { .hizmet-serit { grid-auto-columns: calc((100% - 2 * 24px) / 2.4); } }
@media (max-width: 600px) {
  .hizmet-serit { grid-auto-columns: 84%; gap: 16px; }
  .hizmet-serit-bas { margin-bottom: 24px; }
}

/* Hizmet kartı: başlık bağlantısı tüm kartı kaplar; "Bilgi ve detay için" bağlantısı üstte kalır */
.hizmet-kart { position: relative; display: grid; grid-template-rows: auto 1fr; background: var(--sayfa); border: 1px solid var(--cizgi); border-radius: var(--r-sayfa);
  overflow: hidden; transition: border-color 120ms, box-shadow 120ms; }
.hizmet-kart:hover { border-color: var(--kayit); box-shadow: 0 14px 28px -20px rgba(20,27,43,.5); }
.hizmet-kart-gorsel { aspect-ratio: 5 / 4; overflow: hidden; background: var(--kayit); }
.hizmet-kart-gorsel img { width: 100%; height: 100%; object-fit: cover; transition: transform 400ms var(--ease); }
.hizmet-kart:hover .hizmet-kart-gorsel img { transform: scale(1.03); }
.hizmet-kart-govde { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 20px 20px 24px; }
/* "Bilgi ve detay için" satırı kartın altına yaslanır: yan yana kartlarda aynı hizada durur */
.hizmet-kart-govde > .hizmet-kart-dis { margin-top: auto; padding-top: 4px; }
.hizmet-kart-baslik { font: 600 1.25rem/1.2 var(--f-sans); font-stretch: 88%; letter-spacing: -.005em; }
.hizmet-kart-baslik a { color: var(--murekkep); text-decoration: none; }
.hizmet-kart-baslik a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.hizmet-kart:hover .hizmet-kart-baslik a { text-decoration: underline 1px; text-underline-offset: .2em; }
.hizmet-kart:has(.hizmet-kart-baslik a:focus-visible) { outline: 2px solid var(--muhur); outline-offset: 2px; }
@supports selector(:has(*)) { .hizmet-kart-baslik a:focus-visible { outline: none; text-decoration: underline 1px; text-underline-offset: .2em; } }
.hizmet-kart-alt { font: 600 .875rem/1.35 var(--f-sans); color: var(--kayit); text-wrap: balance; }
.hizmet-kart-ozet { font: 400 .9375rem/1.55 var(--f-serif); font-synthesis: none; color: var(--kursun); }
.hizmet-kart-dis { position: relative; z-index: 2; margin-top: 4px; font: 500 .8125rem/1.4 var(--f-sans); color: var(--kursun); }
.hizmet-kart-dis a { position: relative; z-index: 2; display: inline-block; padding: 10px 0; margin: -10px 0; color: var(--kayit); font-weight: 600; text-decoration: underline 1px; text-underline-offset: .2em; white-space: nowrap; }
/* Entegre Hizmetlerimiz: paket hizmet paneli (lacivert) */
.entegre { grid-column: span 2; display: grid; grid-template-rows: auto 1fr; overflow: hidden; background: var(--kayit); color: var(--kagit); --odak: var(--kagit); border-radius: var(--r-sayfa); }
.entegre-serit { overflow: hidden; background: var(--kagit); color: var(--kayit); border-bottom: 1px solid var(--cizgi); }
.entegre-serit-ic { display: flex; width: max-content; animation: entegre-kay 64s linear infinite; }
.entegre-serit-ic span { display: inline-flex; align-items: center; gap: 20px; padding: 10px 20px 10px 0; font: 600 .875rem/1.2 var(--f-sans); white-space: nowrap; }
.entegre-serit-ic span::after { content: ""; width: 6px; height: 6px; background: currentColor; }
.entegre:hover .entegre-serit-ic, .entegre:focus-within .entegre-serit-ic { animation-play-state: paused; }
@keyframes entegre-kay { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .entegre-serit-ic { animation: none; } }
.entegre-govde { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 24px 40px; align-items: start; padding: 32px 32px 28px; }
.entegre-bas { display: grid; gap: 12px; align-content: start; }
.entegre-etiket { font: 600 .9375rem/1.3 var(--f-sans); font-stretch: 92%; color: var(--muhur-acik); }
.entegre-baslik { font: 650 clamp(1.875rem, 1.4rem + 1.3vw, 2.5rem)/1.05 var(--f-sans); font-stretch: 80%; letter-spacing: -.01em; text-wrap: balance; }
.entegre-ozet { max-width: 40ch; font: 400 1.0625rem/1.55 var(--f-serif); color: var(--kagit); }
.entegre-paket { display: grid; gap: 14px; }
.entegre-liste { display: grid; gap: 18px; }
.entegre-liste li { position: relative; }
/* Hizmetler arasında "+" işareti */
.entegre-liste li + li::before { content: "+"; position: absolute; top: -18px; left: 50%; z-index: 1; display: grid; place-items: center; width: 22px; height: 22px; margin: -2px 0 0 -11px;
  font: 700 .9375rem/1 var(--f-sans); color: var(--kayit); background: var(--kagit); border-radius: 50%; }
.entegre-liste a { display: flex; align-items: center; gap: 12px; min-height: 52px; padding: 10px 14px; color: var(--kagit); text-decoration: none;
  font: 600 .9375rem/1.3 var(--f-sans); border: 1px solid rgba(243,244,240,.32); border-radius: var(--r-sayfa); background: rgba(243,244,240,.04); transition: border-color 120ms, background-color 120ms; }
.entegre-liste a:hover { border-color: var(--kagit); background: rgba(243,244,240,.1); }
.entegre-ikon { display: grid; place-items: center; flex: none; width: 32px; height: 32px; border: 1px solid rgba(243,244,240,.45); border-radius: 50%; }
.entegre-ikon .icon { width: 16px; height: 16px; }
.entegre-sonuc { display: flex; align-items: baseline; gap: 8px; font: 600 .875rem/1.4 var(--f-sans); color: var(--muhur-acik); }
.entegre-sonuc::before { content: "="; font-size: 1.125rem; line-height: 1; }
.entegre-eylemler { display: grid; gap: 10px; }
.entegre-eylemler .btn { justify-content: center; gap: 8px; }
.entegre-eylemler .icon { width: 18px; height: 18px; }
.entegre-tel { font: 500 .875rem/1.4 var(--f-sans); color: var(--koyu-ikincil); }
.entegre-tel a { color: var(--kagit); font-weight: 600; text-decoration: underline 1px; text-underline-offset: .2em; }
@media (max-width: 1099px) {
  .hizmet-izgara { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .entegre { grid-column: auto; }
  .entegre-govde { grid-template-columns: minmax(0, 1fr); padding: 24px 20px; }
}
@media (max-width: 640px) { .hizmet-izgara { grid-template-columns: minmax(0, 1fr); } }
a[href^="tel:"] { white-space: nowrap; }

/* Anasayfa: kısa Hakkımızda ve Referanslar bantları; iç sayfa girişleri */
.ana-iki { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: 24px 48px; }
.ana-iki-govde { display: grid; gap: 20px; justify-items: start; align-content: start; }
/* Hizmet sayfası: ayrıntı için hizmetin kendi sitesine yönlendirme satırı */
.hizmet-yonlendir { justify-self: stretch; padding-top: 16px; border-top: 1px solid var(--cizgi); font: 500 1rem/1.5 var(--f-sans); color: var(--kursun); }
.hizmet-yonlendir a { color: var(--kayit); font-weight: 600; text-decoration: underline 1px; text-underline-offset: .2em; white-space: nowrap; }
@media (max-width: 860px) { .ana-iki { grid-template-columns: minmax(0, 1fr); } }
.sayfa-bas { padding-top: clamp(40px, 5vw, 72px); padding-bottom: clamp(40px, 4.5vw, 64px); }
.sayfa-bas + .section { padding-top: calc(var(--bolum) * .6); }
.sayfa-bas .crumbs { margin-bottom: 24px; }
.sayfa-bas .bolum-bas { margin-bottom: 0; }

/* İletişim: Google Haritalar */
.harita { aspect-ratio: 16 / 7; overflow: hidden; background: var(--sayfa); border: 1px solid var(--cizgi); border-radius: var(--r-sayfa); }
.harita iframe { display: block; width: 100%; height: 100%; border: 0; }
/* Harita yüklenmeden önce: adres ve "Haritayı göster" düğmesi, ince ızgara zemin */
.harita-onizleme { display: grid; place-content: center; justify-items: center; gap: 16px; height: 100%; padding: 32px 24px; text-align: center;
  background-color: var(--sayfa); background-image: linear-gradient(rgba(15,27,120,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(15,27,120,.06) 1px, transparent 1px); background-size: 24px 24px; }
.harita-onizleme .meta { max-width: 48ch; }
.no-js .harita-onizleme .btn { display: none; }
.harita-bkz { margin-top: 12px; }
@media (max-width: 760px) { .harita { aspect-ratio: 4 / 3; } }

/* Referans talep formu: iletişim formuyla aynı ızgara */
.talep-bilgi { grid-column: 1 / span 4; display: grid; gap: 16px; align-content: start; }

/* Bizden Haberler */
.haber-bos { display: grid; gap: 16px; justify-items: start; max-width: 760px; padding: 40px; background: var(--sayfa); border: 1px solid var(--cizgi); border-radius: var(--r-sayfa); }
.haber-liste { display: grid; gap: 0; border-top: 1px solid var(--cizgi); }
.haber { display: grid; grid-template-columns: 11rem minmax(0, 1fr); column-gap: 32px; row-gap: 8px; padding-block: 36px; border-bottom: 1px solid var(--cizgi); }
.haber-tarih { padding-top: 4px; font: 600 .9375rem/1.4 var(--f-sans); color: var(--kursun); }
.haber-govde { display: grid; gap: 14px; justify-items: start; align-content: start; min-width: 0; }
.haber-govde > .metin { max-width: 68ch; }
/* Geniş ekranda kupürler metnin sağında, ikişerli sütunda */
@media (min-width: 1100px) {
  .haber-govde { grid-template-columns: minmax(0, 1fr) 344px; column-gap: 48px; }
  .haber-govde > :not(.kupur-liste) { grid-column: 1; }
  .haber-govde > .kupur-liste { grid-column: 2; grid-row: 1 / span 3; margin-top: 0; }
}
.haber-baslik { font: 600 1.375rem/1.25 var(--f-sans); font-stretch: 90%; text-wrap: balance; }
.haber-baslik a { color: var(--murekkep); }
/* Gazete kupürleri: kâğıt yaprak gibi küçük görseller; tıklayınca büyük görsel penceresi açılır */
.kupur-liste { display: flex; flex-wrap: wrap; align-items: start; gap: 20px 16px; margin-top: 8px; }
.kupur { display: grid; gap: 6px; width: 164px; color: var(--murekkep); text-decoration: none; }
.kupur-gorsel { display: block; aspect-ratio: 4 / 5; overflow: hidden; background: var(--sayfa); border: 1px solid var(--cizgi); border-radius: var(--r-sayfa); box-shadow: 0 1px 0 var(--cizgi); transition: border-color 120ms, transform 160ms var(--ease); }
.kupur-gorsel img { width: 100%; height: 100%; object-fit: cover; object-position: top center; }
.kupur--foto .kupur-gorsel img { object-position: center; }
/* Gazete sayfası küçük görseli kırpılmaz: sayfanın tamamı (başlık ve gazete adı) çerçevede görünür */
.kupur:not(.kupur--foto) .kupur-gorsel img { object-fit: contain; object-position: center top; }
.kupur:hover .kupur-gorsel { border-color: var(--murekkep); transform: translateY(-2px); }
.kupur:focus-visible { outline: none; }
.kupur:focus-visible .kupur-gorsel { outline: 2px solid var(--odak, var(--muhur)); outline-offset: 3px; }
.kupur-kaynak { font: 600 .875rem/1.3 var(--f-sans); }
.kupur-manset { font: 400 .875rem/1.35 var(--f-serif); color: var(--kursun); }
/* Televizyonda: video solda geniş, açıklama sağda */
.haber-video { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 24px 48px; align-items: start; margin: 0; }
.haber-video video { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; background: var(--murekkep); border-radius: var(--r-sayfa); }
.haber-video figcaption { display: grid; gap: 12px; align-content: start; }
.haber-sure { font: 500 .875rem/1.4 var(--f-sans); color: var(--kursun); }
/* Etkinliklerimizden: fotoğraf ızgarası */
.galeri { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr)); gap: 24px; }
.galeri-oge { display: grid; gap: 10px; color: var(--murekkep); text-decoration: none; }
.galeri-oge img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--r-sayfa); background: var(--murekkep); transition: opacity 120ms; }
.galeri-oge:hover img { opacity: .88; }
.galeri-oge:focus-visible { outline: none; }
.galeri-oge:focus-visible img { outline: 2px solid var(--odak, var(--muhur)); outline-offset: 3px; }
.galeri-not { font: 500 .9375rem/1.35 var(--f-sans); }
/* Büyük görsel penceresi */
@media (min-width: 641px) and (min-height: 501px) { dialog.modal--gorsel { width: min(1080px, calc(100% - 32px)); } }
.gorsel-govde { display: grid; place-items: center; min-height: 0; padding: 16px; background: var(--arsiv); overflow: auto; }
.gorsel-govde img { max-width: 100%; max-height: calc(88dvh - 190px); width: auto; height: auto; object-fit: contain; }
.gorsel-alt { display: flex; align-items: center; justify-content: center; gap: 16px; padding: 12px 16px; border-top: 1px solid var(--cizgi); }
.gorsel-alt[hidden] { display: none; }
.gorsel-sayac { min-width: 4.5em; text-align: center; font: 600 .9375rem/1 var(--f-sans); color: var(--kursun); }
dialog.modal--gorsel .modal-title { font-size: 1.25rem; line-height: 1.3; }
@media (max-width: 900px) { .haber-video { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 640px) {
  .haber { grid-template-columns: minmax(0, 1fr); padding-block: 28px; }
  .haber-tarih { padding-top: 0; }
  .haber-bos { padding: 24px 20px; }
  .kupur-liste { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; width: 100%; }
  .kupur { width: auto; }
  .gorsel-govde { padding: 8px; }
  .gorsel-govde img { max-height: calc(88dvh - 170px); }
}
/* Yatay telefon: gazete sayfası pencerenin yüksekliğini kullanır (tam ekran pencere, sıkışık başlık) */
@media (max-height: 500px) {
  .gorsel-govde { padding: 6px; }
  .gorsel-govde img { max-height: calc(100dvh - 112px); }
}

/* Başlıktaki e-Nuras düğmesi (müşteri çiziminde çerçeveli) */
.header-enuras { gap: 8px; background: transparent; color: var(--kayit); border-color: var(--kayit); }
.header-enuras:hover { background: var(--kayit); color: var(--kagit); }
.header-enuras .icon { width: 18px; height: 18px; }

/* ==========================================================================
   19. Yatırım ve Teşvik Stratejileri
   ========================================================================== */
/* Robot sayfa girişine taşar: 1440x900'de üst kenarı ilk ekranda kalır */
.robot-cerceve { position: relative; z-index: 1; }

/* Robot yaprağı */
.robot { display: grid; grid-template-columns: 340px minmax(0, 1fr); background: var(--sayfa); border: 1px solid var(--cizgi); border-top: 3px solid var(--kayit); border-radius: var(--r-sayfa); }
.robot-side { display: flex; flex-direction: column; gap: 20px; padding: 32px 28px; background: var(--kayit); }
.robot-baslik { font: 600 1.75rem/1.1 var(--f-sans); font-stretch: 85%; }
.robot-alt { margin-top: -12px; font: 500 .9375rem/1.4 var(--f-sans); color: var(--koyu-ikincil); }
.robot-steps { display: grid; gap: 4px; }
.robot-steps li { display: flex; gap: 12px; align-items: center; min-height: 44px; padding-left: 12px; color: var(--koyu-ikincil); font: 500 .9375rem/1.25 var(--f-sans); }
.robot-steps .n { display: grid; place-items: center; width: 28px; height: 28px; flex: none; border: 1px solid rgba(243,244,240,.4); border-radius: var(--r-sayfa); font: 600 .8125rem/1 var(--f-sans); font-variant-numeric: tabular-nums; }
.robot-steps li.is-active { color: var(--kagit); font-weight: 600; box-shadow: inset 3px 0 var(--muhur-acik); }
.robot-steps li.is-active .n { background: var(--kagit); color: var(--kayit); border-color: var(--kagit); }
.robot-steps li.is-done .n { background: var(--koyu-ikincil); color: var(--kayit); border-color: var(--koyu-ikincil); }

/* Plaka ızgarası (81 il) */
.plaka { display: grid; grid-template-columns: repeat(9, minmax(0, 30px)); gap: 2px; }
.plaka span { height: 30px; display: grid; place-items: center; font: 600 .8125rem/1 var(--f-sans); font-variant-numeric: tabular-nums; background: rgba(243,244,240,.10); color: var(--kagit); transition: background-color 200ms, color 200ms; }
#robot[data-adim="1"] .plaka span { cursor: pointer; }
#robot[data-adim="1"] .plaka span:hover { background: rgba(243,244,240,.24); }
#robot.is-sonuc .plaka span { transition-duration: 300ms; }
/* Teşvik bölgeleri 1-6 (9903 sayılı Karar EK-2): bölge büyüdükçe ton açılır; 4-6'da yazı koyu (AA kontrast) */
#robot.is-sonuc .plaka span[data-g="1"] { background: rgba(243,244,240,.08); }
#robot.is-sonuc .plaka span[data-g="2"] { background: rgba(243,244,240,.16); }
#robot.is-sonuc .plaka span[data-g="3"] { background: rgba(243,244,240,.30); }
#robot.is-sonuc .plaka span[data-g="4"] { background: rgba(243,244,240,.50); color: var(--murekkep); }
#robot.is-sonuc .plaka span[data-g="5"] { background: rgba(243,244,240,.62); color: var(--murekkep); }
#robot.is-sonuc .plaka span[data-g="6"] { background: rgba(243,244,240,.80); color: var(--murekkep); }
.plaka span.is-secili, #robot.is-sonuc .plaka span.is-secili { background: var(--muhur-acik); color: var(--murekkep); }
.plaka-lejant { display: none; }
#robot.is-sonuc .plaka-lejant { display: grid; grid-template-columns: repeat(3, auto); justify-content: start; gap: 6px 16px; font: 500 .8125rem/1.3 var(--f-sans); color: var(--koyu-ikincil); }
.plaka-lejant span { display: flex; align-items: center; gap: 8px; }
.plaka-lejant span::before { content: ""; width: 12px; height: 12px; flex: none; background: rgba(243,244,240,.08); outline: 1px solid rgba(243,244,240,.3); outline-offset: -1px; }
.plaka-lejant span[data-g="2"]::before { background: rgba(243,244,240,.16); }
.plaka-lejant span[data-g="3"]::before { background: rgba(243,244,240,.30); }
.plaka-lejant span[data-g="4"]::before { background: rgba(243,244,240,.50); }
.plaka-lejant span[data-g="5"]::before { background: rgba(243,244,240,.62); }
.plaka-lejant span[data-g="6"]::before { background: rgba(243,244,240,.80); }
.robot-side .note { margin-top: auto; font: 400 .9375rem/1.5 var(--f-serif); color: var(--koyu-ikincil); }
.robot-side .note a { color: var(--kagit); text-decoration: underline 1px; text-underline-offset: .2em; }

/* Robot ana alanı */
.robot-main { display: grid; gap: 28px; align-content: start; padding: 40px; min-width: 0; }
.robot-bar { height: 2px; background: var(--cizgi); }
.robot-bar span { display: block; width: var(--ilerleme, 25%); height: 100%; background: var(--kayit); transition: width 400ms var(--ease); }
.robot-pane { display: none; gap: 22px; align-content: start; }
.robot-pane.is-active { display: grid; animation: pane-in 160ms var(--ease); }
@keyframes pane-in { from { opacity: 0; } }
.q { display: grid; gap: 8px; font: 600 clamp(1.5rem, 1.2rem + 1vw, 1.75rem)/1.2 var(--f-sans); font-stretch: 88%; }
.q small { display: block; font: 600 var(--t-mikro)/1.3 var(--f-sans); letter-spacing: .01em; color: var(--kursun); }
.chips { display: flex; flex-wrap: wrap; gap: 10px; }
.chip { position: relative; display: inline-flex; cursor: pointer; }
.chip input { position: absolute; inset: 0; opacity: 0; margin: 0; cursor: pointer; }
.chip span { display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px; border: 1px solid var(--alan); border-radius: var(--r-sayfa); background: var(--sayfa); font: 500 .9375rem/1.2 var(--f-sans); transition: background-color 120ms, color 120ms; }
.chip:hover span { background: var(--satir-hover); }
.chip input:checked + span { background: var(--kayit); border-color: var(--kayit); color: var(--kagit); }
#r-cins.is-invalid { outline: 1px solid var(--hata); outline-offset: 6px; }
.match-box { display: none; gap: 10px; align-items: flex-start; padding: 14px 16px; font: 400 .9375rem/1.5 var(--f-sans); background: var(--arsiv); }
.match-box .icon { margin-top: 1px; }
.match-box small { display: block; margin-top: 2px; font: 400 .875rem/1.45 var(--f-sans); color: var(--kursun); }
.match-box.is-ok { display: flex; box-shadow: inset 3px 0 var(--kayit); }
.match-box.is-ok .icon { color: var(--kayit); }
.match-box.is-warn { display: flex; background: var(--sayfa); border: 1px dashed var(--murekkep); }
.match-box.is-warn small b { color: var(--murekkep); }
.match-box.is-err { display: flex; box-shadow: inset 3px 0 var(--hata); color: var(--hata); }
.province-hint { display: none; }
.province-hint.is-visible { display: flex; align-items: center; gap: 8px; font: 500 .875rem/1.4 var(--f-sans); color: var(--kursun); }
.province-hint .icon { color: var(--kayit); }
.province-hint b { color: var(--murekkep); }
.robot-nav { display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: center; gap: 12px 16px; padding-top: 8px; }
/* Birincil düğme solda */
.robot-nav .btn--birincil { order: -1; }

/* Sonuç (adım 5) */
.result-alert { display: flex; gap: 16px; align-items: flex-start; padding: 20px 24px; background: var(--arsiv); box-shadow: inset 3px 0 var(--kayit); }
.result-alert > .icon { color: var(--kayit); }
.result-alert.is-err { box-shadow: inset 3px 0 var(--hata); }
.result-alert.is-err > .icon { color: var(--hata); }
.result-metin { display: grid; gap: 6px; }
.result-metin .metin { font-size: 1.0625rem; }
.summary { display: grid; grid-template-columns: 1fr 1fr; column-gap: 32px; border-top: 1px solid var(--cizgi); }
.summary > div { display: grid; gap: 2px; padding: 12px 0; border-bottom: 1px solid var(--cizgi); min-width: 0; }
.summary small { font: 600 var(--t-mikro)/1.3 var(--f-sans); letter-spacing: .01em; color: var(--kursun); }
.summary b { font: 600 1rem/1.4 var(--f-sans); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.group-card { display: grid; gap: 8px; padding: 20px 24px; background: var(--arsiv); }
.group-card:empty { display: none; }
.group-card .g { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.group-card .g b { font: 600 1.125rem/1.3 var(--f-sans); font-stretch: 92%; }
.group-meter { display: flex; gap: 3px; }
.group-meter span { width: 12px; height: 12px; background: var(--cizgi); }
.group-meter span.on { background: var(--kayit); }
.grup-metin { font: 400 .9375rem/1.55 var(--f-sans); }
.grup-uyari { font: 400 .9375rem/1.55 var(--f-sans); padding-top: 8px; border-top: 1px dashed var(--alan); }
.destekler { display: grid; gap: 12px; }
.support-list { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 24px; }
.support-list li { position: relative; padding-left: 20px; font: 500 .9375rem/1.45 var(--f-sans); }
.support-list li::before { content: ""; position: absolute; left: 0; top: .5em; width: 8px; height: 8px; background: var(--kayit); }
.disclaimer { font: 400 .9375rem/1.55 var(--f-serif); color: var(--kursun); }

@media (max-width: 960px) {
  .robot { grid-template-columns: 1fr; }
  .robot-side { padding: 24px 20px 16px; gap: 16px; }
  .robot-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
  .robot-steps li { flex-direction: column; align-items: flex-start; gap: 6px; min-height: 0; padding: 0 0 10px; font-size: .8125rem; box-shadow: inset 0 -2px 0 rgba(243,244,240,.18); }
  .robot-steps li.is-active { box-shadow: inset 0 -3px 0 var(--muhur-acik); }
  .plaka, .plaka-lejant, #robot.is-sonuc .plaka-lejant, .robot-side .note { display: none; }
  .robot-main { padding: 28px 24px; }
}
@media (min-width: 961px) { .robot-main { min-height: 560px; } }
@media (max-width: 640px) {
  .robot-main { padding: 20px; }
  .robot-nav { padding-right: 88px; }
  .summary, .support-list { grid-template-columns: 1fr; }
  .result-alert { padding: 16px; }
}

/* Yatırım hizmetleri ve fotoğraf bandı */

/* ==========================================================================
   20. Hakkımızda ve İletişim
   ========================================================================== */

.misyon { display: grid; gap: 64px; max-width: calc(760px + 2 * var(--gutter)); text-align: center; }
.misyon-blok { display: grid; gap: 16px; justify-items: center; }
.misyon-etiket { font: 600 1.25rem/1.3 var(--f-sans); color: var(--koyu-ikincil); }
.misyon-ifade { font: 500 clamp(1.75rem, 1.2rem + 1.8vw, 2.5rem)/1.12 var(--f-sans); font-stretch: 82%; letter-spacing: -.01em; color: var(--kagit); text-wrap: balance; }
.misyon .metin { margin-inline: auto; max-width: 60ch; }
/* İlkemiz: kapanış daveti, kısa bir orta çizgiyle ilkeden ayrılır */
/* İlke cümlesi sayfanın tek iri ifadesi */
.ilke-ifade { font-size: clamp(2.5rem, 1.4rem + 4vw, 4.5rem); font-weight: 600; font-stretch: 76%; line-height: 1.02; letter-spacing: -.015em; }
.misyon .ilke-davet { display: grid; gap: 28px; justify-items: center; color: var(--kagit); }
.misyon .ilke-davet .metin { font-size: var(--t-lead); line-height: 1.55; }
.misyon .ilke-davet .eylemler { justify-content: center; }
.ilke-davet::before { content: ""; display: block; width: 48px; height: 1px; margin: 0 auto 32px; background: currentColor; opacity: .45; }

/* Neden NURAS?: yedi temel alan listesi; sütun dar kalınca tek sütuna iner */
.yedi-alan { margin-bottom: 8px; justify-self: stretch; grid-template-columns: repeat(auto-fit, minmax(min(100%, 19rem), 1fr)); }

/* Tarihçe: kuruluş ve lisanslı birimler (gerçek kronolojik sıra, cetvel) */
.tarihce .cetvel-no { margin-bottom: 6px; font: 600 clamp(1.75rem, 1.25rem + 1vw, 2.25rem)/1 var(--f-sans); font-stretch: 78%; letter-spacing: -.01em; color: var(--murekkep); }
.tarihce > li:first-child::before { width: 3px; background: var(--kayit); }
.cetvel .tarihce-site { margin-top: 2px; font: 500 .9375rem/1.4 var(--f-sans); max-width: none; }
@media (min-width: 761px) and (max-width: 1099px) {
  /* Dar ekranda beş sütun sıkışır: cetvel dikey okunur */
  .tarihce { grid-template-columns: 1fr; row-gap: 32px; border-top: 0; border-left: 1px solid; border-left-color: color-mix(in srgb, currentColor 30%, transparent); padding-left: 24px; }
  .tarihce > li { padding-top: 0; display: grid; grid-template-columns: 7rem minmax(0, 1fr); column-gap: 24px; }
  .tarihce > li > :not(.cetvel-no) { grid-column: 2; }
  .tarihce .cetvel-no { grid-row: 1 / span 3; }
  .tarihce > li::before { left: -32px; top: .9em; width: 17px; height: 1px; }
  .tarihce > li:first-child::before { height: 3px; width: 17px; }
}
@media (max-width: 760px) { .tarihce > li:first-child::before { width: 17px; height: 3px; } }

/* 2021 itibarıyla: rakamlar bir döküm cetveli gibi (nokta dolgulu satırlar), istatistik kutusu değil */
.tarihce-rakamlar { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); column-gap: 48px; row-gap: 16px; align-items: start; margin-top: var(--s9); }
.tarihce-rakamlar > .rakamlar { grid-column: 2; grid-row: 1 / span 2; }
@media (max-width: 959px) { .tarihce-rakamlar { grid-template-columns: minmax(0, 1fr); margin-top: 64px; } .tarihce-rakamlar > .rakamlar { grid-column: 1; grid-row: auto; margin-top: 8px; } }
.rakam-blok { display: grid; row-gap: 8px; width: 100%; }
.rakamlar { display: grid; gap: 0; width: 100%; max-width: 640px; }
.rakamlar > div { display: flex; align-items: baseline; gap: 16px; padding-block: 10px; }
.rakamlar dt { display: flex; flex: 1; align-items: baseline; gap: 12px; min-width: 0; font: 500 1rem/1.4 var(--f-sans); color: var(--kursun); }
.rakamlar dt::after { content: ""; flex: 1; min-width: 16px; border-bottom: 2px dotted color-mix(in srgb, var(--murekkep) 40%, transparent); }
.rakamlar dd { flex: none; font: 600 1.375rem/1.2 var(--f-sans); font-stretch: 88%; color: var(--murekkep); text-align: right; white-space: nowrap; }

/* Belgelerimiz: künye yaprakları (beyaz belge, üstte kayıt şeridi; geçerlilik ifadesi yok) */
.belgeler { --hucre: var(--sayfa); }
.belgeler > .belge { gap: 20px; box-shadow: inset 0 3px 0 var(--kayit); }
.belgeler--tek { max-width: 720px; }
.yetki-bkz { margin-top: 24px; }
.belge-ad { font: 600 1.25rem/1.25 var(--f-sans); font-stretch: 90%; }
.belge-kunye { gap: 14px; }
.belge-kunye dd + dd { margin-top: 6px; }
.belge-gorsel { display: block; background: var(--arsiv); border: 1px solid var(--cizgi); }
.belge-gorsel img { width: 100%; height: 240px; object-fit: contain; }
.iletisim-bilgi { grid-column: 1 / span 4; display: grid; gap: 24px; align-content: start; }
.iletisim-tel-blok { display: grid; gap: 4px; }
.iletisim-bilgi .kunye--iletisim { grid-template-columns: 1fr; gap: 16px; }
.form-yaprak { grid-column: 6 / -1; display: grid; gap: 16px; align-content: start; padding: 40px; background: var(--sayfa); border: 1px solid var(--cizgi); border-radius: var(--r-sayfa); }
.form-yaprak > .form { margin-top: 8px; }
.form-yaprak .btn[type="submit"] { justify-self: start; }
@media (max-width: 640px) { .form-yaprak { padding: 20px; } .form-yaprak .btn[type="submit"] { justify-self: stretch; } }

/* ==========================================================================
   21. Referanslar
   ========================================================================== */
/* Telefonda kareler küçülür: çizim notları kareyi kaplamasın diye gizlenir (görseller süsleyicidir) */

.sektor-sicil { border-top: 1px solid var(--murekkep); }
.sektor-satir { display: grid; grid-template-columns: minmax(12rem, 3fr) 5fr 4fr; gap: 24px; align-items: baseline; padding: 24px 0; border-bottom: 1px solid var(--cizgi); }
.sektor-ad { font: 600 1.3125rem/1.25 var(--f-sans); font-stretch: 90%; }
.sektor-metin { font: 400 1.0625rem/1.55 var(--f-serif); font-synthesis: none; }
.sektor-bkz { line-height: 1.7; }
@media (max-width: 760px) { .sektor-satir { grid-template-columns: 1fr; gap: 8px; padding: 20px 0; } }

.standart-gruplar { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px 48px; }
.standart-grup { display: grid; gap: 20px; align-content: start; }
.standart-grup-baslik { font: 600 1.125rem/1.3 var(--f-sans); color: var(--koyu-ikincil); }
.standart-dl { display: grid; gap: 16px; }
.standart-dl > div { display: grid; gap: 2px; }
.standart-dl dt { font: 600 1.0625rem/1.3 var(--f-sans); color: var(--kagit); }
.standart-dl dd { font: 400 1rem/1.5 var(--f-serif); color: var(--koyu-ikincil); }
@media (max-width: 959px) { .standart-gruplar { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .standart-gruplar { grid-template-columns: 1fr; } }

/* ==========================================================================
   22. Duyarlı ızgara (bileşen yerleşimlerinden sonra gelir)
   ========================================================================== */
@media (max-width: 960px) {
  .izgara { row-gap: var(--s7); }
  .izgara > * { grid-column: 1 / -1; }
}
@media (max-width: 640px) { .izgara { column-gap: 16px; row-gap: 40px; } }

/* ---------- 23. Hareket azaltma ---------- */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition-duration: .01ms !important; }
}

/* Bal küpü (form.php istenmeyen otomatik gönderimleri eler): ekranda ve ekran okuyucuda görünmez */
.bal-kupu { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

/* =========================================================================
   Yazdırma: menü, açılır pencereler ve etkileşimli denetimler gizlenir; içerik beyaz zeminde siyah yazılır
   ========================================================================= */
@media print {
  @page { margin: 16mm 14mm; }
  html, body { background: #fff !important; color: #000 !important; }
  .skip-link, .nav, .burger, dialog, .modal, .manset-kontrol, .manset-noktalar, .hizmet-serit-dugmeler, .harita, .harita-bkz, .footer-dizin, .mini-harita, .form, .form-yaprak, #talep .talep-bilgi .metin, #diger-hizmetler, #televizyon, .robot-alani, .gorsel-pencere, .bal-kupu, .btn { display: none !important; }
  .site-header { position: static !important; border: 0 !important; box-shadow: none !important; background: none !important; }
  .site-footer .brand-logo, .footer-marka img { display: none !important; }
  .section, .sayfa-bas, .manset, .site-footer, .section--arsiv, .section--kayit {
    background: none !important; color: #000 !important; padding-top: 10pt !important; padding-bottom: 10pt !important;
  }
  .hizmet-giris, .alan-koyu { background: none !important; color: #000 !important; padding: 0 0 10pt !important; min-height: 0 !important; }
  .section--kayit *, .site-footer *, .alan-koyu *, .manset * { color: #000 !important; }
  .manset-iz { display: block !important; overflow: visible !important; transform: none !important; }
  .manset-slayt { display: none !important; }
  .manset-slayt:first-child { display: block !important; }
  .hizmet-serit, .hizmet-izgara { display: grid !important; grid-template-columns: 1fr 1fr !important; grid-auto-flow: row !important; gap: 8pt !important; overflow: visible !important; }
  .hizmet-serit > li, .hizmet-izgara > li { width: auto !important; min-width: 0 !important; }
  .hizmet-kart { break-inside: avoid; border: 1px solid #999 !important; box-shadow: none !important; background: none !important; }
  .entegre-serit, .entegre-eylemler { display: none !important; }
  .entegre { grid-column: 1 / -1 !important; background: none !important; border: 1px solid #999 !important; break-inside: avoid; }
  .entegre * { color: #000 !important; background: none !important; }
  .hizmet-kart-gorsel, .manset-gorsel, video { display: none !important; }
  a { color: #000 !important; text-decoration: underline; }
  a[href^="http"]:not([href*="nuras.com.tr"]):not([href^="https://wa.me"]):not(.alan-adi):not(.kaynak)::after { content: " (" attr(href) ")"; font-size: 85%; word-break: break-all; }
  h1, h2, h3, h4 { break-after: avoid; }
  .bolum-bas, .hizmet-serit-bas { display: block !important; break-after: avoid; }
  .kunye > div, .cetvel > li, .haber, .rakamlar > div, .galeri-oge, .footer-iletisim, .kapsam-list li { break-inside: avoid; }
  img { max-width: 100% !important; break-inside: avoid; }
}
