/* Yakutiye Belediyesi — ortak stil dosyası */
/* =========================================================
   KURUMSAL RENK PALETİ
   ========================================================= */
:root {
  --primary: #1d4f91;
  --primary-dark: #143a6b;
  --primary-darker: #0d2a4f;
  --primary-rgb: 29, 79, 145;
  /* Kurumsal ikincil renk (#01588a ailesi) — turuncu kullanılmıyor */
  --secondary: #0a7ab9;       /* vurgu: çizgi, ikon kutusu, düğme (beyaz yazı 4.7:1) */
  --secondary-dark: #01588a;  /* kurumsal mavi: hover / koyu vurgu */
  --text-accent: #01588a;     /* beyaz üzerinde küçük vurgu metni (7.6:1) */
  --secondary-rgb: 10, 122, 185;
  --white: #ffffff;
  --light: #f4f6f9;
  --grey: #e4e7eb;
  --grey-dark: #9aa3ae;
  --text: #1f2a37;
  --text-muted: #5b6573;

  --font-head: "Barlow Condensed", "Arial Narrow", sans-serif;
  --font-body: "Barlow", "Segoe UI", sans-serif;

  --header-h: 110px;
  --band-h: clamp(200px, 22vh, 250px);
  --ease: cubic-bezier(.4, 0, .2, 1);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
[hidden] { display: none !important; }
html, body { height: 100%; }
body {
  font-family: var(--font-body);
  color: var(--text);
  background: var(--primary-darker);
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
ul { list-style: none; }
img { display: block; max-width: 100%; }
button { font: inherit; cursor: pointer; border: 0; background: none; color: inherit; }

.skip-link {
  position: absolute; left: -9999px; top: 0; z-index: 999;
  background: var(--secondary); color: var(--white); padding: 10px 16px;
}
.skip-link:focus { left: 16px; top: 16px; }

:focus-visible { outline: 2px solid var(--secondary); outline-offset: 3px; }

/* =========================================================
   FIXED LAYOUT İSKELETİ
   ========================================================= */
.page {
  position: relative;
  display: grid;
  grid-template-rows: 1fr var(--band-h);
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
}

/* =========================================================
   HEADER
   ========================================================= */
.site-header {
  position: absolute;
  inset: 0 0 auto 0;
  z-index: 50;
  background: var(--primary);
  border-bottom: 3px solid var(--secondary);
  box-shadow: 0 10px 30px rgba(13, 42, 79, .25);
}
.header-panel { display: contents; }

.header-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 44px;
  padding: 0 40px 0 196px;
  border-bottom: 1px solid rgba(255, 255, 255, .08);
}
.header-follow { display: flex; align-items: center; gap: 18px; }
.follow-label {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .75);
}
.follow-sep { width: 1px; height: 20px; background: rgba(255, 255, 255, .2); }
.follow-icons { display: flex; gap: 8px; }
.follow-icons a {
  width: 30px; height: 30px;
  display: grid; place-items: center;
  border: 1px solid rgba(255, 255, 255, .3);
  border-radius: 50%;
  color: var(--white);
  font-size: 12px;
  transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.follow-icons a:hover { background: var(--white); border-color: var(--white); color: var(--primary); }

.header-info { display: flex; align-items: center; gap: 36px; }
.info-item { display: flex; align-items: center; gap: 10px; color: var(--white); }
.info-item > i { font-size: 20px; transition: transform .3s var(--ease); }
.info-item.weather > i { color: var(--white); }
.info-item span { display: flex; align-items: baseline; gap: 8px; line-height: 1; }
.info-item small {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .75);
}
.info-item b {
  font-size: 15px;
  font-weight: 600;
  letter-spacing: .6px;
  text-transform: uppercase;
  white-space: nowrap;
  transition: color .2s;
}
a.info-item:hover b { color: var(--secondary); }
a.info-item:hover > i { transform: rotate(-12deg); }

.brand {
  position: absolute;
  top: 0;
  left: 40px;
  z-index: 6;
  width: 116px;
  height: 112px;
  display: grid;
  place-items: center;
  background: var(--white);
  border-radius: 0 0 22px 22px;
  box-shadow: 0 14px 34px rgba(13, 42, 79, .3);
  transition: box-shadow .25s var(--ease);
}
.site-header:has(.main-nav li:hover > .mega) .brand,
.site-header:has(.main-nav li:focus-within > .mega) .brand {
  box-shadow: 0 4px 12px rgba(13, 42, 79, .1);
}
.brand-emblem {
  width: 88px; height: 88px;
  object-fit: contain;
}

.main-nav {
  display: flex;
  justify-content: flex-start;
  height: 44px;
  padding: 0 0 0 180px;
  background: var(--white);
}
.main-nav > ul { display: flex; }
.main-nav > ul > li { position: relative; }
.main-nav > ul > li > a {
  position: relative;
  display: flex;
  align-items: center;
  gap: 7px;
  height: 44px;
  padding: 0 16px;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--primary);
  white-space: nowrap;
  transition: color .2s var(--ease);
}
.main-nav > ul > li > a { transition: color .2s var(--ease), background .25s var(--ease); }
.main-nav > ul > li > a::before {
  content: "";
  position: absolute;
  left: 0; right: 0; top: 0;
  height: 3px;
  background: var(--secondary);
  transform: scaleX(0);
  transition: transform .3s var(--ease);
}
.main-nav > ul > li:hover > a,
.main-nav > ul > li:focus-within > a { background: rgba(var(--primary-rgb), .05); color: var(--primary-dark); }
.main-nav > ul > li:hover > a::before,
.main-nav > ul > li:focus-within > a::before { transform: scaleX(1); }
.main-nav > ul > li > a.active { color: var(--primary-dark); background: rgba(var(--primary-rgb), .07); }
.main-nav > ul > li > a.active::before { transform: scaleX(1); }
.main-nav .caret { font-size: 11px; color: var(--secondary); transition: transform .25s var(--ease); }
.main-nav > ul > li:hover .caret { transform: rotate(180deg); }

.submenu {
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 250px;
  background: var(--white);
  border-top: 3px solid var(--secondary);
  box-shadow: 0 16px 40px rgba(13, 42, 79, .25);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: all .22s var(--ease);
  z-index: 60;
}
.main-nav li:hover > .submenu,
.main-nav li:focus-within > .submenu { opacity: 1; visibility: visible; transform: translateY(0); }
.submenu a {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 18px;
  font-size: 15px;
  font-weight: 500;
  color: var(--text);
  border-bottom: 1px solid var(--grey);
  transition: background .2s, color .2s, padding .2s;
}
.submenu li:last-child a { border-bottom: 0; }
.submenu a i { width: 16px; color: var(--secondary); font-size: 13px; }
.submenu a:hover { background: var(--light); color: var(--primary); padding-left: 24px; }

.nav-toggle { display: none; }

/* =========================================================
   HERO
   ========================================================= */
.hero {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.hero-slides, .hero-slide { position: absolute; inset: 0; }
.hero-slide {
  background-size: cover;
  background-position: center;
  opacity: 0;
  transform: scale(1.06);
  transition: opacity 1.4s var(--ease), transform 8s linear;
}
.hero-slide.is-active { opacity: 1; transform: scale(1); }
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(var(--primary-rgb), .75) 0%, rgba(var(--primary-rgb), 0) 28%),
    linear-gradient(90deg, rgba(var(--primary-rgb), .92) 0%, rgba(var(--primary-rgb), .45) 22%, rgba(var(--primary-rgb), .1) 50%, rgba(var(--primary-rgb), 0) 65%),
    linear-gradient(0deg, rgba(var(--primary-rgb), .55) 0%, rgba(var(--primary-rgb), 0) 30%);
}

.hero-content {
  position: absolute;
  z-index: 3;
  left: 40px;
  top: calc(50% + 24px);
  transform: translateY(-50%);
  max-width: 640px;
  color: var(--white);
}
.hero-content > .hero-kicker,
.hero-content > .hero-title,
.hero-content > .hero-text {
  transition: opacity .35s var(--ease), transform .35s var(--ease);
}
.hero-content.is-changing > .hero-kicker,
.hero-content.is-changing > .hero-title,
.hero-content.is-changing > .hero-text { opacity: 0; transform: translateY(12px); }
.hero-kicker {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--font-head);
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--secondary);
}
.hero-kicker::before { content: ""; width: 32px; height: 3px; background: var(--secondary); }
.hero-title {
  margin-top: 16px;
  font-family: var(--font-head);
  font-size: clamp(38px, 3.4vw, 62px);
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: .3px;
  text-shadow: 0 2px 18px rgba(0, 0, 0, .3);
}
.hero-text {
  margin-top: 16px;
  max-width: 520px;
  font-size: 17px;
  line-height: 1.6;
  color: rgba(255, 255, 255, .85);
}
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 48px;
  padding: 0 24px;
  font-family: var(--font-head);
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.btn i { transition: transform .25s var(--ease); }
.btn:hover i { transform: translateX(4px); }
.btn-primary { background: var(--secondary); color: var(--white); }
.btn-primary:hover { background: var(--white); color: var(--primary); }
.btn-ghost { border: 1px solid rgba(255, 255, 255, .5); color: var(--white); }
.btn-ghost:hover { background: var(--white); border-color: var(--white); color: var(--primary); }

.hero-nav { display: flex; align-items: center; gap: 20px; margin-top: 40px; }
.hero-count { font-family: var(--font-head); line-height: 1; color: rgba(255, 255, 255, .6); font-size: 16px; }
.hero-count b { font-size: 34px; font-weight: 600; color: var(--white); margin-right: 4px; }
.hero-progress { width: 160px; height: 2px; background: rgba(255, 255, 255, .25); overflow: hidden; }
.hero-progress span { display: block; height: 100%; width: 0; background: var(--secondary); animation: heroProgress 7s linear forwards; }
@keyframes heroProgress { from { width: 0; } to { width: 100%; } }
.hero-arrows { display: flex; gap: 6px; }
.hero-arrows button {
  width: 44px; height: 44px;
  display: grid; place-items: center;
  border: 1px solid rgba(255, 255, 255, .4);
  color: var(--white);
  font-size: 14px;
  transition: background .25s var(--ease), border-color .25s var(--ease);
}
.hero-arrows button:hover { background: var(--secondary); border-color: var(--secondary); }

/* =========================================================
   ALT BANT
   ========================================================= */
.band {
  position: relative;
  z-index: 10;
  display: grid;
  grid-template-columns: minmax(0, 55%) minmax(0, 25%) minmax(0, 20%);
  background: var(--white);
  border-top: 4px solid var(--secondary);
}

/* Hızlı Menü butonu */
.qm-toggle {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 24px;
  background: var(--secondary);
  color: var(--white);
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  white-space: nowrap;
  transition: background .25s var(--ease);
}
.qm-toggle i { font-size: 14px; transition: transform .3s var(--ease); }
.qm-toggle:hover { background: var(--secondary-dark); }
.qm-toggle:hover i { transform: scale(1.15); }

/* Hızlı Menü (tam ekran) */
body.qm-open { overflow: hidden; }
.qm {
  position: fixed;
  inset: 0;
  z-index: 300;
  overflow-y: auto;
  background: var(--white);
  border-top: 4px solid var(--secondary);
  opacity: 0;
  visibility: hidden;
  transition: opacity .35s var(--ease), visibility .35s;
}
.qm.is-open { opacity: 1; visibility: visible; }
.qm-inner { max-width: 1320px; margin: 0 auto; padding: 48px 40px 64px; }
.qm-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding-bottom: 24px;
  margin-bottom: 32px;
  border-bottom: 1px solid var(--grey);
}
.qm-kicker {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--font-head);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--text-accent);
}
.qm-kicker::before { content: ""; width: 32px; height: 3px; background: var(--secondary); }
.qm-title {
  margin-top: 8px;
  font-family: var(--font-head);
  font-size: 46px;
  font-weight: 600;
  line-height: 1;
  color: var(--primary);
}
.qm-tools { display: flex; align-items: center; gap: 10px; }
.qm-search {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 300px;
  height: 48px;
  padding: 0 16px;
  border: 1px solid var(--grey);
  color: var(--grey-dark);
  transition: border-color .2s;
}
.qm-search:focus-within { border-color: var(--primary); color: var(--primary); }
.qm-search input {
  flex: 1;
  min-width: 0;
  border: 0;
  outline: 0;
  background: none;
  font: 500 15px var(--font-body);
  color: var(--text);
}
.qm-close {
  width: 48px; height: 48px;
  display: grid; place-items: center;
  border: 1px solid rgba(var(--primary-rgb), .3);
  color: var(--primary);
  font-size: 18px;
  transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.qm-close i { transition: transform .3s var(--ease); }
.qm-close:hover { background: var(--primary); border-color: var(--primary); color: var(--white); }
.qm-close:hover i { transform: rotate(90deg); }

.qm-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid var(--grey);
  border-left: 1px solid var(--grey);
}
.qm-grid li {
  border-right: 1px solid var(--grey);
  border-bottom: 1px solid var(--grey);
  opacity: 0;
  transform: translateY(14px);
  transition: opacity .4s var(--ease), transform .4s var(--ease);
}
.qm.is-open .qm-grid li {
  opacity: 1;
  transform: none;
  transition-delay: calc(var(--i) * 30ms + 100ms);
}
.qm-grid li.is-hidden { display: none; }
.qm-grid a {
  position: relative;
  display: flex;
  align-items: center;
  gap: 16px;
  height: 100%;
  min-height: 96px;
  padding: 22px 20px;
  transition: background .25s var(--ease);
}
.qm-grid a::before {
  content: "";
  position: absolute;
  left: -1px; top: 0; bottom: 0;
  width: 3px;
  background: var(--secondary);
  transform: scaleY(0);
  transition: transform .3s var(--ease);
}
.qm-grid a::after {
  content: "\f061";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  flex-shrink: 0;
  width: 28px; height: 28px;
  display: grid; place-items: center;
  border: 1px solid rgba(var(--primary-rgb), .25);
  border-radius: 50%;
  font-size: 11px;
  color: var(--primary);
  transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.qm-icon {
  flex-shrink: 0;
  width: 48px; height: 48px;
  display: grid; place-items: center;
  background: rgba(var(--primary-rgb), .07);
  color: var(--primary);
  font-size: 19px;
  transition: background .25s var(--ease), color .25s var(--ease);
}
.qm-label {
  flex: 1;
  font-family: var(--font-head);
  font-size: 19px;
  font-weight: 600;
  line-height: 1.2;
  color: var(--text);
  transition: color .2s;
}
.qm-num {
  position: absolute;
  top: 10px; right: 12px;
  font-family: var(--font-head);
  font-size: 12px;
  letter-spacing: 1px;
  color: var(--grey-dark);
}
.qm-grid a:hover { background: var(--light); }
.qm-grid a:hover::before { transform: scaleY(1); }
.qm-grid a:hover::after { background: var(--secondary); border-color: var(--secondary); color: var(--white); }
.qm-grid a:hover .qm-icon { background: var(--secondary); color: var(--white); }
.qm-grid a:hover .qm-label { color: var(--primary); }
.qm-empty { display: none; padding: 40px 0; text-align: center; color: var(--text-muted); }
.qm-empty.is-visible { display: block; }

@media (max-width: 1200px) {
  .qm-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .qm-toggle { padding: 0 14px; font-size: 13px; }
}
@media (max-width: 991.98px) {
  .qm-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .qm-toggle { margin: 16px 20px 0; height: 48px; justify-content: center; }
  .qm-inner { padding: 32px 20px 48px; }
}
@media (max-width: 640px) {
  .qm-grid { grid-template-columns: 1fr; }
  .qm-head { flex-direction: column; align-items: stretch; }
  .qm-title { font-size: 36px; }
  .qm-search { width: auto; flex: 1; }
}

/* Tüm Haberler (tam ekran) */
.nl-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 32px; }
.nl-chip {
  height: 36px;
  padding: 0 16px;
  border: 1px solid var(--grey);
  font-family: var(--font-head);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--text-muted);
  transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.nl-chip:hover { border-color: var(--primary); color: var(--primary); }
.nl-chip.is-active { background: var(--primary); border-color: var(--primary); color: var(--white); }
.nl-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 40px 28px;
}
.nl-card { animation: nlIn .45s var(--ease) both; animation-delay: calc(var(--i) * 45ms); }
@keyframes nlIn { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
.nl-card a { display: flex; flex-direction: column; }
.nl-thumb {
  position: relative;
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: var(--primary-darker);
  border: 5px solid var(--white);
  box-shadow: 0 0 0 1px rgba(var(--primary-rgb), .12), 0 10px 24px rgba(13, 42, 79, .18);
  transition: box-shadow .3s var(--ease);
}
.nl-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease); }
.nl-thumb::after {
  content: "";
  position: absolute;
  left: 0; bottom: 0;
  width: 100%;
  height: 3px;
  background: var(--secondary);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .5s var(--ease);
}
.nl-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
  margin-top: 14px;
  font-family: var(--font-head);
  font-size: 14px;
  line-height: 1;
  color: var(--text-muted);
}
.nl-meta::after {
  content: "\f061";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  margin-left: auto;
  width: 28px; height: 28px;
  flex-shrink: 0;
  display: grid; place-items: center;
  border: 1px solid rgba(var(--primary-rgb), .3);
  border-radius: 50%;
  font-size: 11px;
  color: var(--primary);
  transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.nl-title {
  margin-top: 8px;
  font-family: var(--font-head);
  font-size: 19px;
  font-weight: 600;
  line-height: 1.25;
  color: var(--text);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: color .2s;
}
.nl-card a:hover .nl-thumb { box-shadow: 0 0 0 1px rgba(var(--secondary-rgb), .7), 0 14px 30px rgba(13, 42, 79, .26); }
.nl-card a:hover .nl-thumb img { transform: scale(1.05); }
.nl-card a:hover .nl-thumb::after { transform: scaleX(1); }
.nl-card a:hover .nl-title { color: var(--primary); }
.nl-card a:hover .nl-meta::after { background: var(--secondary); border-color: var(--secondary); color: var(--white); }
.nl-more-wrap { margin-top: 48px; text-align: center; }
.nl-more-wrap.is-hidden { display: none; }
.nl-more {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  height: 52px;
  padding: 0 32px;
  border: 1px solid var(--primary);
  color: var(--primary);
  font-family: var(--font-head);
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  transition: background .25s var(--ease), color .25s var(--ease);
}
.nl-more small { font-size: 13px; letter-spacing: .5px; opacity: .65; }
.nl-more:hover { background: var(--primary); color: var(--white); }
.nl-more:disabled { cursor: wait; }
.nl-more.is-loading i { animation: fa-spin 1s linear infinite; }

@media (max-width: 1200px) { .nl-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 991.98px) { .nl-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 20px; } }
@media (max-width: 640px) { .nl-grid { grid-template-columns: 1fr; } }

/* Tüm Duyurular (tam ekran) */
.na-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}
.na-card { animation: nlIn .45s var(--ease) both; animation-delay: calc(var(--i) * 45ms); }
.na-card a {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 230px;
  padding: 24px;
  background: var(--white);
  border: 1px solid var(--grey);
  transition: background .25s var(--ease), border-color .25s var(--ease), box-shadow .25s var(--ease);
}
.na-card a::before {
  content: "";
  position: absolute;
  left: -1px; top: -1px; bottom: -1px;
  width: 3px;
  background: var(--secondary);
  transform: scaleY(0);
  transition: transform .3s var(--ease);
}
.na-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.na-date { display: flex; align-items: center; gap: 12px; font-family: var(--font-head); line-height: 1; }
.na-date b { font-size: 40px; font-weight: 700; color: var(--primary); }
.na-date span { display: flex; flex-direction: column; gap: 5px; padding-left: 12px; border-left: 1px solid var(--grey); }
.na-date small { font-size: 13px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--text-accent); }
.na-date em { font-style: normal; font-size: 13px; color: var(--text-muted); }
.na-cat {
  padding: 4px 8px;
  border: 1px solid rgba(var(--primary-rgb), .3);
  font-family: var(--font-head);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--primary);
}
.na-title {
  flex: 1;
  margin-top: 20px;
  font-family: var(--font-head);
  font-size: 19px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--text);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: color .2s;
}
.na-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid var(--grey);
  font-family: var(--font-head);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: var(--text-accent);
}
.na-foot::after {
  content: "\f061";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  width: 28px; height: 28px;
  display: grid; place-items: center;
  border: 1px solid rgba(var(--primary-rgb), .3);
  border-radius: 50%;
  font-size: 11px;
  color: var(--primary);
  transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.na-card a:hover { background: var(--light); border-color: rgba(var(--primary-rgb), .18); box-shadow: 0 14px 30px rgba(13, 42, 79, .1); }
.na-card a:hover::before { transform: scaleY(1); }
.na-card a:hover .na-title { color: var(--primary); }
.na-card a:hover .na-foot::after { background: var(--secondary); border-color: var(--secondary); color: var(--white); }

@media (max-width: 1200px) { .na-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 991.98px) { .na-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .na-grid { grid-template-columns: 1fr; } }

/* Mega Menü */
.main-nav > ul > li { position: static; }
.mega {
  position: absolute;
  left: 0; right: 0;
  top: 100%;
  margin-top: 3px;
  z-index: 4;
  background: var(--white);
  box-shadow: 0 30px 60px rgba(13, 42, 79, .22);
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: opacity .25s var(--ease), transform .25s var(--ease), visibility .25s;
}
.mega::before { content: ""; position: absolute; left: 0; right: 0; top: -8px; height: 8px; }
.main-nav li:hover > .mega,
.main-nav li:focus-within > .mega { opacity: 1; visibility: visible; transform: none; }
.mega-inner {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr) 320px;
  gap: 40px;
  padding: 36px 40px 40px;
}
.mega-inner--wide { grid-template-columns: 280px minmax(0, 1fr); }
.mega-kicker {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--font-head);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--text-accent);
}
.mega-kicker::before { content: ""; width: 24px; height: 3px; background: var(--secondary); }
.mega-title {
  margin-top: 10px;
  font-family: var(--font-head);
  font-size: 34px;
  font-weight: 600;
  line-height: 1;
  color: var(--primary);
}
.mega-desc { margin-top: 14px; font-size: 15px; line-height: 1.6; color: var(--text-muted); }
.main-nav .mega-all {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 20px;
  font-family: var(--font-head);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: var(--text-accent);
  transition: color .2s;
}
.main-nav .mega-all i { transition: transform .25s var(--ease); }
.main-nav .mega-all:hover { color: var(--primary); }
.main-nav .mega-all:hover i { transform: translateX(4px); }

.mega-groups {
  display: grid;
  grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
  gap: 36px;
  align-content: start;
}
.mega-group-title {
  position: relative;
  padding-bottom: 12px;
  margin-bottom: 8px;
  border-bottom: 1px solid var(--grey);
  font-family: var(--font-head);
  font-size: 17px;
  font-weight: 600;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  color: var(--primary);
}
.mega-group-title::after {
  content: "";
  position: absolute;
  left: 0; bottom: -1px;
  width: 32px; height: 2px;
  background: var(--secondary);
}
.mega-links a {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 9px 10px;
  transition: background .25s var(--ease), padding .25s var(--ease);
}
.mega-links a::before {
  content: "";
  position: absolute;
  left: 0; top: 6px; bottom: 6px;
  width: 3px;
  background: var(--secondary);
  transform: scaleY(0);
  transition: transform .3s var(--ease);
}
.mega-links a::after {
  content: "\f061";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  flex-shrink: 0;
  font-size: 11px;
  color: var(--secondary);
  opacity: 0;
  transform: translateX(-6px);
  transition: opacity .25s var(--ease), transform .25s var(--ease);
}
.mega-icon {
  flex-shrink: 0;
  width: 34px; height: 34px;
  display: grid; place-items: center;
  background: rgba(var(--primary-rgb), .07);
  color: var(--primary);
  font-size: 14px;
  transition: background .25s var(--ease), color .25s var(--ease);
}
.mega-label {
  flex: 1;
  font-family: var(--font-head);
  font-size: 17px;
  font-weight: 500;
  line-height: 1.2;
  color: var(--text);
  transition: color .2s;
}
.mega-links a:hover { background: var(--light); padding-left: 16px; }
.mega-links a:hover::before { transform: scaleY(1); }
.mega-links a:hover::after { opacity: 1; transform: none; }
.mega-links a:hover .mega-icon { background: var(--secondary); color: var(--white); }
.mega-links a:hover .mega-label { color: var(--primary); }

.mega-feature { display: flex; flex-direction: column; }
.mf-kicker {
  margin-top: 14px;
  font-family: var(--font-head);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--text-accent);
}
.mf-title {
  margin-top: 6px;
  font-family: var(--font-head);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
  color: var(--text);
  transition: color .2s;
}
.mega-feature:hover .mf-title { color: var(--primary); }

.mega-feature--call {
  justify-content: center;
  padding: 28px;
  background: linear-gradient(160deg, var(--primary) 0%, var(--primary-dark) 100%);
  color: var(--white);
  position: relative;
  overflow: hidden;
}
.mega-feature--call::after {
  content: "\f590";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  right: -14px; bottom: -24px;
  font-size: 120px;
  color: rgba(255, 255, 255, .05);
}
.mf-icon {
  width: 48px; height: 48px;
  display: grid; place-items: center;
  background: var(--secondary);
  font-size: 20px;
}
.mega-feature--call .mf-kicker { margin-top: 18px; color: var(--secondary); }
.mega-feature--call .mf-title { font-size: 34px; color: var(--white); }
.mf-text { margin-top: 8px; font-size: 14px; line-height: 1.5; color: rgba(255, 255, 255, .75); }
.mf-btn {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  gap: 8px;
  margin-top: 18px;
  font-family: var(--font-head);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: var(--secondary);
}
.mf-btn i { transition: transform .25s var(--ease); }
.mega-feature--call:hover .mf-title { color: var(--white); }
.mega-feature--call:hover .mf-btn i { transform: translateX(4px); }

@media (max-width: 1200px) {
  .mega-inner { grid-template-columns: 220px minmax(0, 1fr) 240px; gap: 28px; padding: 28px 24px 32px; }
  .mega-groups { gap: 24px; }
  .mega-inner--wide { grid-template-columns: 220px minmax(0, 1fr); }
}
@media (max-width: 991.98px) {
  .main-nav > ul > li { position: relative; }
  .mega {
    position: static;
    display: none;
    margin: 0;
    opacity: 1;
    visibility: visible;
    transform: none;
    box-shadow: none;
    background: var(--primary-darker);
  }
  .mega::before { display: none; }
  .main-nav li.is-open > .mega { display: block; }
  .mega-inner { display: block; padding: 0; }
  .mega-intro, .mega-feature { display: none; }
  .mega-groups { display: block; }
  .mega-group-title { margin: 0; padding: 14px 20px 6px 32px; border: 0; font-size: 12px; color: rgba(255, 255, 255, .5); }
  .mega-group-title::after { display: none; }
  .mega-links a, .mega-links a:hover { padding: 10px 20px 10px 32px; border-bottom: 1px solid rgba(255, 255, 255, .06); }
  .mega-links a::after, .mega-links a::before { display: none; }
  .mega-icon { width: 30px; height: 30px; font-size: 13px; background: rgba(255, 255, 255, .08); color: var(--secondary); }
  .mega-label { font-size: 16px; color: rgba(255, 255, 255, .85); }
  .mega-links a:hover { background: rgba(255, 255, 255, .05); }
  .mega-links a:hover .mega-label { color: var(--white); }
}

/* Mega menü: Tarihi Mekanlar slider */
.mega-feature--tour {
  position: relative;
  overflow: hidden;
  padding: 26px 28px 22px;
  background: linear-gradient(160deg, var(--primary) 0%, var(--primary-dark) 100%);
  color: var(--white);
}
.mega-feature--tour::after {
  content: "\f5a6";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  right: -16px; bottom: 30px;
  font-size: 130px;
  color: rgba(255, 255, 255, .05);
  pointer-events: none;
}
.mega-feature--tour .mf-kicker { display: flex; align-items: center; gap: 8px; margin-top: 0; color: var(--secondary); }
.tour-slides { position: relative; flex: 1; min-height: 168px; margin-top: 14px; }
.tour-slide {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  opacity: 0;
  transform: translateX(18px);
  pointer-events: none;
  transition: opacity .45s var(--ease), transform .45s var(--ease);
}
.tour-slide.is-active { opacity: 1; transform: none; pointer-events: auto; }
.tour-year {
  font-family: var(--font-head);
  font-size: 46px;
  font-weight: 700;
  line-height: 1;
  color: transparent;
  -webkit-text-stroke: 1px rgba(255, 255, 255, .55);
}
.tour-name {
  margin-top: 8px;
  font-family: var(--font-head);
  font-size: 24px;
  font-weight: 600;
  line-height: 1.15;
  transition: color .2s;
}
.tour-slide:hover .tour-name { color: var(--secondary); }
.tour-text {
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(255, 255, 255, .75);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.tour-nav {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid rgba(255, 255, 255, .15);
}
.tour-count { font-family: var(--font-head); font-size: 13px; color: rgba(255, 255, 255, .6); }
.tour-count b { font-size: 18px; font-weight: 600; color: var(--white); }
.tour-progress { flex: 1; height: 2px; background: rgba(255, 255, 255, .2); }
.tour-progress span { display: block; height: 100%; width: 20%; background: var(--secondary); transition: width .45s var(--ease); }
.tour-nav button {
  width: 30px; height: 30px;
  display: grid; place-items: center;
  border: 1px solid rgba(255, 255, 255, .35);
  color: var(--white);
  font-size: 11px;
  transition: background .25s var(--ease), border-color .25s var(--ease);
}
.tour-nav button:hover { background: var(--secondary); border-color: var(--secondary); }

/* Header arama butonu */
.header-search {
  width: 34px; height: 34px;
  display: grid; place-items: center;
  border: 1px solid rgba(255, 255, 255, .3);
  border-radius: 50%;
  color: var(--white);
  font-size: 13px;
  transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.header-search:hover { background: var(--white); border-color: var(--white); color: var(--primary); }

/* Arama ekranı */
.so-field {
  display: flex;
  align-items: center;
  gap: 16px;
  height: 76px;
  padding: 0 24px;
  border: 1px solid var(--grey);
  border-bottom: 3px solid var(--primary);
  color: var(--primary);
  font-size: 22px;
  transition: border-color .25s var(--ease);
}
.so-field:focus-within { border-bottom-color: var(--secondary); }
.so-field input {
  flex: 1;
  min-width: 0;
  border: 0;
  outline: 0;
  background: none;
  font: 500 22px var(--font-body);
  color: var(--text);
}
.so-field kbd {
  padding: 4px 8px;
  border: 1px solid var(--grey);
  font-family: var(--font-head);
  font-size: 12px;
  letter-spacing: 1px;
  color: var(--text-muted);
}
.so-popular { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 20px; }
.so-popular > span {
  margin-right: 6px;
  font-family: var(--font-head);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--text-muted);
}
.so-results {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 36px;
  margin-top: 40px;
}
.so-group-title {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 12px;
  margin-bottom: 8px;
  border-bottom: 1px solid var(--grey);
  font-family: var(--font-head);
  font-size: 17px;
  font-weight: 600;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  color: var(--primary);
}
.so-group-title::after { content: ""; position: absolute; left: 0; bottom: -1px; width: 32px; height: 2px; background: var(--secondary); }
.so-group-title small { padding: 2px 8px; background: rgba(var(--primary-rgb), .07); font-size: 13px; letter-spacing: .5px; }
.so-item { animation: nlIn .35s var(--ease) both; animation-delay: calc(var(--i) * 35ms); }
.so-item a {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px;
  transition: background .25s var(--ease);
}
.so-item a::before {
  content: "";
  position: absolute;
  left: 0; top: 6px; bottom: 6px;
  width: 3px;
  background: var(--secondary);
  transform: scaleY(0);
  transition: transform .3s var(--ease);
}
.so-icon {
  flex-shrink: 0;
  width: 36px; height: 36px;
  display: grid; place-items: center;
  background: rgba(var(--primary-rgb), .07);
  color: var(--primary);
  font-size: 14px;
  transition: background .25s var(--ease), color .25s var(--ease);
}
.so-text { flex: 1; min-width: 0; }
.so-title {
  display: block;
  font-family: var(--font-head);
  font-size: 17px;
  font-weight: 600;
  line-height: 1.25;
  color: var(--text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.so-meta { display: block; margin-top: 3px; font-size: 13px; color: var(--text-muted); }
.so-title mark { background: rgba(var(--secondary-rgb), .3); color: inherit; padding: 0 2px; }
.so-item a:hover { background: var(--light); }
.so-item a:hover::before { transform: scaleY(1); }
.so-item a:hover .so-icon { background: var(--secondary); color: var(--white); }
.so-item a:hover .so-title { color: var(--primary); }
.so-empty { grid-column: 1 / -1; padding: 40px 0; text-align: center; color: var(--text-muted); }
.so-empty i { display: block; margin-bottom: 12px; font-size: 32px; color: var(--grey-dark); }

/* Yasal metinler ekranı */
.lg-body { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 56px; align-items: start; }
.lg-tabs { border-top: 1px solid var(--grey); }
.lg-tab {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 16px;
  border-bottom: 1px solid var(--grey);
  text-align: left;
  font-family: var(--font-head);
  font-size: 17px;
  font-weight: 600;
  color: var(--text);
  transition: background .25s var(--ease), color .25s var(--ease);
}
.lg-tab i { width: 34px; height: 34px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 14px; transition: background .25s, color .25s; }
.lg-tab::before { content: ""; position: absolute; left: 0; top: 8px; bottom: 8px; width: 3px; background: var(--secondary); transform: scaleY(0); transition: transform .3s var(--ease); }
.lg-tab:hover, .lg-tab.is-active { background: var(--light); color: var(--primary); }
.lg-tab.is-active::before { transform: scaleY(1); }
.lg-tab.is-active i { background: var(--secondary); color: var(--white); }
.lg-panel { display: none; max-width: 860px; animation: nlIn .4s var(--ease) both; }
.lg-panel.is-active { display: block; }
.lg-panel h3 { font-family: var(--font-head); font-size: 32px; font-weight: 600; line-height: 1.1; color: var(--primary); }
.lg-meta { display: inline-flex; align-items: center; gap: 8px; margin: 10px 0 8px; font-size: 13px; color: var(--text-muted); }
.lg-meta i { color: var(--secondary); }
.lg-panel h4 { margin-top: 28px; font-family: var(--font-head); font-size: 21px; font-weight: 600; color: var(--primary); }
.lg-panel p, .lg-panel li { margin-top: 12px; font-size: 16px; line-height: 1.75; color: var(--text); }
.lg-panel ul { padding-left: 20px; list-style: disc; }
.lg-panel li { margin-top: 6px; }
.lg-panel li::marker { color: var(--secondary); }

/* Footer */
.page { grid-template-rows: 1fr var(--band-h) auto; }
.site-footer {
  position: relative;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  height: 36px;
  padding: 0 40px;
  background: var(--primary-darker);
  font-size: 13px;
  color: rgba(255, 255, 255, .6);
}
.footer-links { display: flex; align-items: center; gap: 24px; }
.footer-links a, .footer-cookie {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: rgba(255, 255, 255, .75);
  transition: color .2s;
}
.footer-cookie i { color: var(--secondary); }
.footer-links a:hover, .footer-cookie:hover { color: var(--secondary); }

/* Çerez bildirimi */
.cookie {
  position: fixed;
  left: 24px; bottom: 60px;
  z-index: 250;
  display: flex;
  gap: 16px;
  width: 460px;
  max-width: calc(100% - 32px);
  padding: 24px;
  background: var(--white);
  border-top: 4px solid var(--secondary);
  box-shadow: 0 24px 60px rgba(13, 42, 79, .3);
  opacity: 0;
  visibility: hidden;
  transform: translateY(20px);
  transition: opacity .4s var(--ease), transform .4s var(--ease), visibility .4s;
}
.cookie.is-visible { opacity: 1; visibility: visible; transform: none; }
.cookie-icon {
  flex-shrink: 0;
  width: 44px; height: 44px;
  display: grid; place-items: center;
  background: rgba(var(--primary-rgb), .07);
  color: var(--primary);
  font-size: 20px;
}
.cookie h3 { font-family: var(--font-head); font-size: 22px; font-weight: 600; color: var(--primary); }
.cookie p { margin-top: 6px; font-size: 14px; line-height: 1.6; color: var(--text-muted); }
.cookie p a { color: var(--primary); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.cookie-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.cookie .btn { height: 42px; padding: 0 18px; font-size: 14px; }
.cookie-reject {
  height: 42px;
  padding: 0 18px;
  border: 1px solid rgba(var(--primary-rgb), .3);
  font-family: var(--font-head);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: var(--primary);
  transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.cookie-reject:hover { background: var(--primary); border-color: var(--primary); color: var(--white); }

@media (max-width: 1200px) {
  .so-results { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-copy { display: none; }
}
@media (max-width: 991.98px) {
  .page { grid-template-rows: auto auto auto; }
  .so-results { grid-template-columns: 1fr; }
  .so-field { height: 60px; padding: 0 16px; }
  .so-field input { font-size: 17px; }
  .so-field kbd { display: none; }
  .lg-body { grid-template-columns: 1fr; gap: 28px; }
  .site-footer { flex-direction: column; height: auto; padding: 20px 16px; text-align: center; }
  .footer-copy { display: block; }
  .footer-links { flex-wrap: wrap; justify-content: center; gap: 10px 20px; }
  .header-search { align-self: center; }
  .cookie { bottom: 24px; }
}
@media (max-width: 640px) {
  .cookie { left: 16px; bottom: 16px; padding: 20px; }
  .cookie-icon { display: none; }
}

/* Haber Slider */
.news {
  position: relative;
  display: flex;
  min-width: 0;
  background: var(--white);
}
.news-label {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 46px;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  font-family: var(--font-head);
  font-size: 22px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--primary);
  white-space: nowrap;
}
.news-label::before { content: ""; width: 20px; height: 4px; background: var(--secondary); }
.news-viewport {
  flex: 1;
  min-width: 0;
  margin-top: -80px;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, #000 88%, transparent 100%);
  mask-image: linear-gradient(90deg, #000 88%, transparent 100%);
}
.news-track {
  display: flex;
  transition: transform .6s var(--ease);
}
.news-card {
  position: relative;
  flex: 0 0 auto;
  width: calc((var(--band-h) - 50px) * 16 / 9 + 34px);
  padding: 0 12px;
}
.news-thumb {
  position: relative;
  display: block;
  box-sizing: content-box;
  width: calc(100% - 10px);
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: var(--primary-darker);
  border: 5px solid var(--white);
  box-shadow: 0 0 0 1px rgba(var(--primary-rgb), .12), 0 12px 28px rgba(13, 42, 79, .28);
  transition: box-shadow .3s var(--ease);
}
.news-thumb img {
  width: 100%; height: 100%;
  object-fit: cover; /* fotoğraf haberleri: çerçeveyi boşluksuz doldur */
  transition: transform .8s var(--ease);
}
.news-thumb::after {
  content: "";
  position: absolute;
  left: 0; bottom: 0;
  width: 100%;
  height: 3px;
  background: var(--secondary);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .5s var(--ease);
}
.news-track, .notices-list { cursor: grab; user-select: none; -webkit-user-select: none; }
.news-track { touch-action: pan-y; }
.news-track.is-dragging, .notices-list.is-dragging { cursor: grabbing; }
.news-track.is-dragging a, .notices-list.is-dragging a { pointer-events: none; }
.news-track img { -webkit-user-drag: none; }
.news-card:hover .news-thumb img { transform: scale(1.04); }
.news-card:hover .news-thumb { box-shadow: 0 0 0 1px rgba(var(--secondary-rgb), .7), 0 16px 34px rgba(13, 42, 79, .35); }
.news-card:hover .news-thumb::after { transform: scaleX(1); }

.news-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  font-family: var(--font-head);
  font-size: 14px;
  line-height: 1;
  color: var(--text-muted);
}
.news-tag {
  padding: 4px 8px;
  background: var(--primary);
  color: var(--white);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  white-space: nowrap;
}
.news-sep { width: 12px; height: 1px; background: var(--grey-dark); font-size: 0; flex-shrink: 0; }
.news-date { display: flex; align-items: center; gap: 6px; white-space: nowrap; }
.news-date i { color: var(--secondary); }
.news-more {
  position: relative;
  z-index: 1;
  margin-left: auto;
  width: 28px; height: 28px;
  flex-shrink: 0;
  display: grid; place-items: center;
  border: 1px solid rgba(var(--primary-rgb), .3);
  border-radius: 50%;
  color: var(--primary);
  font-size: 12px;
  transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.news-card:hover .news-more { background: var(--secondary); border-color: var(--secondary); color: var(--white); }
.news-title {
  margin-top: 8px;
  font-family: var(--font-head);
  font-size: 19px;
  font-weight: 600;
  line-height: 1.25;
  color: var(--text);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: color .2s;
}
.news-card:hover .news-title { color: var(--primary); }
.news-title a::after { content: ""; position: absolute; inset: 0 12px; }

.news-controls {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 14px;
  flex-shrink: 0;
  border-left: 1px solid var(--grey);
}
.news-counter {
  margin-bottom: 4px;
  font-family: var(--font-head);
  font-size: 13px;
  color: var(--grey-dark);
}
.news-counter b { font-size: 18px; font-weight: 600; color: var(--primary); }
.news-controls button {
  width: 40px; height: 40px;
  display: grid; place-items: center;
  color: var(--primary);
  font-size: 13px;
  border: 1px solid rgba(var(--primary-rgb), .3);
  transition: background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);
}
.news-controls button:hover { background: var(--primary); border-color: var(--primary); color: var(--white); }
.news-controls-all {
  margin-top: 6px;
  font-family: var(--font-head);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--text-accent);
  transition: color .2s;
}
.news-controls-all:hover { color: var(--primary); }

/* Başkan Kartı */
.mayor {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  padding: 0 16px 18px;
  text-align: center;
  background: linear-gradient(180deg, var(--white) 0%, var(--light) 100%);
  border-left: 1px solid var(--grey);
}
.mayor-photo {
  height: calc(var(--band-h) + 10px);
  margin-top: -200px;
  margin-bottom: -18px;
}
.mayor-photo img {
  height: 100%;
  width: auto;
  -webkit-mask-image:
    linear-gradient(180deg, #000 62%, rgba(0,0,0,.6) 80%, transparent 100%),
    linear-gradient(90deg, transparent 0%, #000 22%, #000 78%, transparent 100%);
  -webkit-mask-composite: source-in;
  mask-image:
    linear-gradient(180deg, #000 62%, rgba(0,0,0,.6) 80%, transparent 100%),
    linear-gradient(90deg, transparent 0%, #000 22%, #000 78%, transparent 100%);
  mask-composite: intersect;
}
.mayor-name, .mayor-title, .mayor-social { position: relative; z-index: 1; }
.mayor-name {
  font-family: var(--font-head);
  font-size: 26px;
  font-weight: 600;
  letter-spacing: .4px;
  line-height: 1;
  color: var(--primary);
}
.mayor-title {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
  font-family: var(--font-head);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: var(--text-accent);
}
.mayor-title::before, .mayor-title::after { content: ""; width: 14px; height: 1px; background: var(--secondary); }
.mayor-social {
  display: flex;
  gap: 6px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--grey);
}
.mayor-social a {
  width: 30px; height: 30px;
  display: grid; place-items: center;
  border: 1px solid rgba(var(--primary-rgb), .3);
  border-radius: 50%;
  color: var(--primary);
  font-size: 12px;
  transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.mayor-social a:hover { background: var(--primary); border-color: var(--primary); color: var(--white); }

/* Duyurular */
.notices {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  background: var(--white);
  border-left: 1px solid var(--grey);
}
.notices-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 48px;
  margin: 0 18px;
  flex-shrink: 0;
  border-bottom: 1px solid var(--grey);
}
.notices-head h2 {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--font-head);
  font-size: 22px;
  font-weight: 600;
  letter-spacing: .6px;
  color: var(--primary);
}
.notices-head h2::before { content: ""; width: 4px; height: 20px; background: var(--secondary); }
.notices-actions { display: flex; align-items: center; gap: 6px; }
.notice-btn {
  width: 30px; height: 30px;
  display: grid; place-items: center;
  border: 1px solid rgba(var(--primary-rgb), .3);
  color: var(--primary);
  font-size: 11px;
  transition: background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);
}
.notice-btn:hover { background: var(--primary); border-color: var(--primary); color: var(--white); }
.notices-actions a {
  margin-left: 8px;
  font-family: var(--font-head);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--text-accent);
  transition: color .2s;
}
.notices-actions a:hover { color: var(--primary); }

.notices-list { position: relative; flex: 1; min-height: 0; overflow: hidden; }
.notices-list::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 40px;
  background: linear-gradient(180deg, rgba(255,255,255,0), var(--white));
  pointer-events: none;
}
.notices-list ul { transition: transform .5s var(--ease); }
.notice a {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  height: 56px;
  padding: 0 18px;
  transition: background .25s var(--ease);
}
.notice a::before {
  content: "";
  position: absolute;
  left: 0; top: 10px; bottom: 10px;
  width: 3px;
  background: var(--secondary);
  transform: scaleY(0);
  transition: transform .3s var(--ease);
}
.notice + .notice a { box-shadow: inset 0 1px 0 var(--grey); }
.notice a:hover { background: var(--light); }
.notice a:hover::before { transform: scaleY(1); }
.notice-date {
  flex-shrink: 0;
  width: 46px;
  padding-right: 14px;
  text-align: center;
  line-height: 1;
  font-family: var(--font-head);
  border-right: 1px solid var(--grey);
}
.notice-date b { display: block; font-size: 24px; font-weight: 700; color: var(--primary); }
.notice-date small { display: block; margin-top: 3px; font-size: 11px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--text-accent); }
.notice-title {
  flex: 1;
  min-width: 0;
  font-family: var(--font-head);
  font-size: 17px;
  font-weight: 600;
  line-height: 1.25;
  color: var(--text);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: color .2s;
}
.notice a::after {
  content: "\f061";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  flex-shrink: 0;
  width: 26px; height: 26px;
  display: grid; place-items: center;
  border: 1px solid rgba(var(--primary-rgb), .25);
  border-radius: 50%;
  font-size: 11px;
  color: var(--primary);
  transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.notice a:hover .notice-title { color: var(--primary); }
.notice a:hover::after { background: var(--secondary); border-color: var(--secondary); color: var(--white); }

/* ALO 153 */
.callcenter {
  display: flex;
  flex-direction: column;
  background: var(--secondary);
  color: var(--white);
  text-align: center;
}
.callcenter-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 12px;
  font-family: var(--font-head);
}
.callcenter-body .alo { font-size: 20px; font-weight: 600; letter-spacing: 2px; }
.callcenter-body .num { font-size: clamp(46px, 3.6vw, 64px); font-weight: 700; line-height: .95; }
.callcenter-body .label { margin-top: 10px; font-size: 18px; font-weight: 600; letter-spacing: .5px; }
.callcenter-body .phone {
  display: flex; align-items: center; gap: 8px;
  font-size: clamp(22px, 1.7vw, 30px);
  font-weight: 700;
}
.callcenter-body .phone i { font-size: .7em; }
.callcenter-foot {
  padding: 8px 10px;
  background: var(--secondary-dark);
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* =========================================================
   DUYARLI (RESPONSIVE)
   ========================================================= */
@media (max-width: 1440px) {
  .main-nav > ul > li > a { font-size: 14px; padding: 0 12px; }
  .news-title { font-size: 18px; }
}

@media (max-height: 820px) and (min-width: 992px) {
  .hero-text { display: none; }
  .hero-title { font-size: 42px; }
  .hero-nav { margin-top: 28px; }
}

@media (max-width: 1200px) {
  .follow-label, .follow-sep { display: none; }
  .header-info { gap: 24px; }
  .info-item b { font-size: 14px; }
  .band { grid-template-columns: minmax(0, 1fr) minmax(0, 34%); }
  .mayor { display: none; }
  .main-nav > ul > li > a { padding: 0 8px; font-size: 13px; letter-spacing: .6px; }
}

/* Tablet & mobil: sabit düzen kaldırılır, sayfa kaydırılabilir */
@media (max-width: 991.98px) {
  :root { --header-h: 76px; }
  .page { height: auto; overflow: visible; grid-template-rows: auto auto; }

  .site-header {
    position: fixed;
    height: var(--header-h);
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 0 16px;
  }
  .brand {
    position: relative;
    left: auto;
    transform: none;
    width: 78px;
    height: 90px;
    border-radius: 0 0 16px 16px;
  }
  .brand-emblem { width: 62px; height: 62px; }
  .nav-toggle {
    display: grid; place-items: center;
    align-self: center;
    width: 46px; height: 46px;
    border-radius: 4px;
    background: var(--secondary);
    color: var(--white);
    font-size: 20px;
  }
  .header-panel {
    position: fixed;
    top: var(--header-h);
    left: 0; right: 0; bottom: 0;
    display: flex;
    flex-direction: column;
    background: var(--primary-dark);
    overflow-y: auto;
    transform: translateX(100%);
    transition: transform .35s var(--ease);
  }
  body.nav-open { overflow: hidden; }
  body.nav-open .header-panel { transform: translateX(0); }

  .main-nav { order: 1; flex-direction: column; height: auto; padding: 24px 0 0; background: none; }
  .main-nav > ul > li > a, .main-nav > ul > li:hover > a, .main-nav > ul > li > a.active { color: var(--white); }
  .main-nav > ul { flex-direction: column; }
  .main-nav > ul > li > a {
    height: auto;
    padding: 16px 20px;
    border-bottom: 1px solid rgba(255,255,255,.1);
    justify-content: space-between;
  }
  .main-nav > ul > li > a::after { display: none; }
  .main-nav > ul > li:hover .caret { transform: none; }
  .submenu {
    position: static;
    min-width: 0;
    opacity: 1; visibility: visible; transform: none;
    box-shadow: none;
    border: 0;
    display: none;
    background: var(--primary-darker);
  }
  .main-nav li.is-open > .submenu { display: block; }
  .main-nav li.is-open .caret { transform: rotate(180deg); }
  .submenu a { color: rgba(255,255,255,.85); border-color: rgba(255,255,255,.06); padding-left: 32px; }
  .submenu a:hover { background: rgba(255,255,255,.05); color: var(--white); }

  .header-top { order: 2; flex-direction: column; height: auto; gap: 24px; padding: 28px 20px; border: 0; }
  .header-info { flex-direction: column; gap: 18px; }

  .hero { height: 78vh; min-height: 520px; margin-top: var(--header-h); }
  .hero-content { left: 16px; right: 16px; top: 28px; transform: none; }
  .hero-title { font-size: 30px; }
  .hero-text { display: none; }
  .hero-actions { margin-top: 18px; }
  .hero-nav { display: none; }

  .band { grid-template-columns: 1fr 1fr; }
  .news { grid-column: 1 / -1; padding: 24px 0 20px 8px; }
  .news-viewport { margin-top: 0; -webkit-mask-image: none; mask-image: none; }
  .news-thumb { height: auto; aspect-ratio: 16 / 9; }
  .mayor { display: flex; grid-column: 1 / -1; padding: 28px 16px; }
  .mayor-photo { margin-top: 0; height: 220px; }
  .notices { grid-column: 1 / -1; }
  .notices-list { height: 248px; }
  .callcenter { grid-column: 2 / 3; }
}

@media (max-width: 640px) {
  .hero { height: auto; min-height: 0; aspect-ratio: auto; padding-top: min(56vh, 380px); }
  .hero-title { font-size: 26px; }

  .news-card { flex-basis: 100%; }
  .news-controls { padding: 0 8px; }
  .band { grid-template-columns: 1fr; }
  .notices, .callcenter { grid-column: 1 / -1; }
  .callcenter-body { padding: 24px 12px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* =========================================================
   İÇ SAYFALAR — ortak yapı
   ========================================================= */
body.inner-page { background: var(--white); }
.inner-page .site-header { position: sticky; top: 0; }
/* body %100 yükseklikte kalırsa sticky header ilk ekrandan sonra kayıp gider */
body.inner-page { height: auto; min-height: 100%; }

.btn-outline {
  border: 1px solid rgba(var(--primary-rgb), .3);
  color: var(--primary);
}
.btn-outline:hover { background: var(--primary); border-color: var(--primary); color: var(--white); }

/* Sayfa başlığı (banner) */
.page-hero {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: flex-end;
  min-height: 220px;
  padding: 44px 40px 34px;
  overflow: hidden;
  background: var(--primary-dark) center / cover no-repeat;
  border-bottom: 4px solid var(--secondary);
}
.page-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(90deg, rgba(var(--primary-rgb), .95) 0%, rgba(var(--primary-rgb), .78) 45%, rgba(var(--primary-rgb), .35) 100%),
    linear-gradient(0deg, rgba(13, 42, 79, .5) 0%, rgba(13, 42, 79, 0) 60%);
}
.page-hero-inner { max-width: 1320px; width: 100%; margin: 0 auto; color: var(--white); }
.breadcrumb ol { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-family: var(--font-head); font-size: 15px; color: rgba(255, 255, 255, .7); }
.breadcrumb li { display: flex; align-items: center; gap: 8px; }
.breadcrumb li + li::before { content: "\f054"; font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: 9px; color: var(--secondary); }
.breadcrumb a { transition: color .2s; }
.breadcrumb a:hover { color: var(--white); }
.breadcrumb [aria-current] { color: var(--white); }
.page-hero .hero-kicker { margin-top: 16px; }
.page-title {
  margin-top: 10px;
  font-family: var(--font-head);
  font-size: clamp(34px, 3.2vw, 50px);
  font-weight: 600;
  line-height: 1;
  text-shadow: 0 2px 18px rgba(0, 0, 0, .25);
}
.page-lead { margin-top: 10px; max-width: 640px; font-size: 17px; line-height: 1.6; color: rgba(255, 255, 255, .82); }

/* İçerik + yan menü */
.inner {
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr);
  gap: 56px;
  align-items: start;
  max-width: 1400px;
  margin: 0 auto;
  padding: 56px 40px 88px;
}
.inner-side { position: sticky; top: 124px; display: flex; flex-direction: column; gap: 24px; }
.side-title {
  position: relative;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--grey);
  font-family: var(--font-head);
  font-size: 22px;
  font-weight: 600;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: var(--primary);
}
.side-title::after { content: ""; position: absolute; left: 0; bottom: -1px; width: 32px; height: 2px; background: var(--secondary); }
.side-nav .side-title { margin-bottom: 18px; }
.side-nav .lg-tab { font-size: 17px; }
.side-nav .lg-tab::after {
  content: "\f054";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  margin-left: auto;
  font-size: 10px;
  color: var(--grey-dark);
  transition: color .2s, transform .25s var(--ease);
}
.side-nav .lg-tab:hover::after, .side-nav .lg-tab.is-active::after { color: var(--secondary); transform: translateX(3px); }
.inner-side .mega-feature--call { padding: 26px; }
.inner-side .mega-feature--call .mf-title { font-size: 30px; }

.inner-content > * + .content-block { margin-top: 64px; }
.block-head { margin-bottom: 24px; }
.block-title { margin-top: 8px; font-family: var(--font-head); font-size: 34px; font-weight: 600; line-height: 1.1; color: var(--primary); }
.prose p { margin-top: 16px; font-size: 17px; line-height: 1.8; color: var(--text); }
.prose p:first-child { margin-top: 0; }
.placeholder-note {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 28px;
  padding: 12px 16px;
  border-left: 3px solid var(--secondary);
  background: rgba(var(--secondary-rgb), .08);
  font-size: 14px;
  color: var(--text-muted);
}
.placeholder-note i { color: var(--text-accent); }

/* Liste ızgaraları iç sayfada 3 sütun */
.inner-content .nl-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }

/* =========================================================
   Özgeçmiş
   ========================================================= */
.profile {
  display: grid;
  grid-template-columns: 360px minmax(0, 1fr);
  gap: 48px;
  border: 1px solid var(--grey);
}
.profile-photo {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  min-height: 440px;
  overflow: hidden;
  background: linear-gradient(180deg, var(--light) 0%, #e3e9f1 100%);
}
.profile-photo::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: var(--secondary); }
.profile-photo img {
  height: 420px;
  width: auto;
  max-width: none;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 18%, #000 82%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 18%, #000 82%, transparent 100%);
}
.profile-info { padding: 40px 40px 40px 0; }
.profile-name { margin-top: 10px; font-family: var(--font-head); font-size: 50px; font-weight: 600; line-height: 1; color: var(--primary); }
.profile-role { margin-top: 8px; font-family: var(--font-head); font-size: 18px; font-weight: 500; color: var(--text-muted); }
.profile-lead { margin-top: 18px; font-size: 16px; line-height: 1.75; color: var(--text); }
.facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 28px; border-top: 1px solid var(--grey); border-left: 1px solid var(--grey); }
.fact { display: flex; align-items: center; gap: 12px; padding: 16px; border-right: 1px solid var(--grey); border-bottom: 1px solid var(--grey); }
.fact i { flex-shrink: 0; width: 38px; height: 38px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 15px; }
.fact dt { font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: var(--text-muted); }
.fact dd { margin-top: 3px; font-family: var(--font-head); font-size: 18px; font-weight: 600; color: var(--text); }
.profile-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 28px; }
.profile-actions .mayor-social { margin: 0 0 0 auto; padding: 0; border: 0; }

/* Zaman çizelgesi */
.timeline { position: relative; }
.timeline::before { content: ""; position: absolute; left: 126px; top: 10px; bottom: 10px; width: 1px; background: var(--grey); }
.tl-item { position: relative; display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 38px; padding-bottom: 32px; }
.tl-item:last-child { padding-bottom: 0; }
.tl-item::before { content: ""; position: absolute; left: 120px; top: 6px; width: 13px; height: 13px; border-radius: 50%; background: var(--white); border: 3px solid var(--secondary); }
.tl-year { text-align: right; font-family: var(--font-head); font-size: 22px; font-weight: 700; color: var(--primary); }
.tl-title { font-family: var(--font-head); font-size: 21px; font-weight: 600; color: var(--text); }
.tl-text { margin-top: 6px; font-size: 15px; line-height: 1.7; color: var(--text-muted); }

/* =========================================================
   Başkanın Mesajı
   ========================================================= */
.message { max-width: 900px; }
.message-body .prose p:first-child::first-letter {
  float: left;
  margin: 6px 12px 0 0;
  font-family: var(--font-head);
  font-size: 64px;
  font-weight: 700;
  line-height: .8;
  color: var(--primary);
}
.signature { display: flex; align-items: center; gap: 18px; margin-top: 40px; padding-top: 24px; border-top: 1px solid var(--grey); }
.signature-line { width: 48px; height: 3px; background: var(--secondary); }
.signature b { display: block; font-family: var(--font-head); font-size: 28px; font-weight: 600; color: var(--primary); }
.signature small { font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; color: var(--text-accent); }

/* =========================================================
   Albüm & video kartları + lightbox
   ========================================================= */
.album-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px 28px; }
.album { animation: nlIn .45s var(--ease) both; animation-delay: calc(var(--i) * 45ms); }
.album :is(button, a) { display: flex; flex-direction: column; width: 100%; text-align: left; }
.album-thumb {
  position: relative;
  display: block;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: var(--primary-darker);
  border: 5px solid var(--white);
  box-shadow: 0 0 0 1px rgba(var(--primary-rgb), .12), 0 10px 24px rgba(13, 42, 79, .18);
  transition: box-shadow .3s var(--ease);
}
.album--video .album-thumb { aspect-ratio: 16 / 9; }
.album-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease); }
.album-thumb::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(13, 42, 79, .55) 0%, rgba(13, 42, 79, 0) 45%); }
.album-count, .video-duration {
  position: absolute;
  z-index: 1;
  bottom: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 12px;
  font-family: var(--font-head);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: .5px;
  color: var(--white);
}
.album-count { left: 0; background: var(--primary); border-top: 3px solid var(--secondary); }
.album-count i { color: var(--secondary); }
.video-duration { right: 0; background: rgba(13, 42, 79, .85); }
.video-play { position: absolute; z-index: 1; inset: 0; display: grid; place-items: center; }
.video-play span {
  width: 64px; height: 64px;
  display: grid; place-items: center;
  border-radius: 50%;
  background: var(--secondary);
  color: var(--white);
  font-size: 20px;
  padding-left: 4px;
  box-shadow: 0 0 0 10px rgba(var(--secondary-rgb), .25);
  transition: transform .3s var(--ease), box-shadow .3s var(--ease);
}
.album-title { margin-top: 14px; font-family: var(--font-head); font-size: 20px; font-weight: 600; line-height: 1.25; color: var(--text); transition: color .2s; }
.album-meta { display: flex; align-items: center; gap: 8px; margin-top: 6px; font-family: var(--font-head); font-size: 14px; color: var(--text-muted); }
.album-meta i { color: var(--secondary); }
.album :is(button, a):hover .album-thumb { box-shadow: 0 0 0 1px rgba(var(--secondary-rgb), .7), 0 14px 30px rgba(13, 42, 79, .26); }
.album :is(button, a):hover .album-thumb img { transform: scale(1.05); }
.album :is(button, a):hover .album-title { color: var(--primary); }
.album :is(button, a):hover .video-play span { transform: scale(1.08); box-shadow: 0 0 0 14px rgba(var(--secondary-rgb), .3); }

.lightbox {
  position: fixed;
  inset: 0;
  z-index: 400;
  display: flex;
  flex-direction: column;
  background: #0a1e38;
  border-top: 4px solid var(--secondary);
  opacity: 0;
  visibility: hidden;
  transition: opacity .3s var(--ease), visibility .3s;
}
.lightbox.is-open { opacity: 1; visibility: visible; }
.lb-top { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 18px 32px; border-bottom: 1px solid rgba(255, 255, 255, .1); color: var(--white); }
.lb-title { font-family: var(--font-head); font-size: 22px; font-weight: 600; }
.lb-tools { display: flex; align-items: center; gap: 18px; }
.lb-count { font-family: var(--font-head); font-size: 15px; color: rgba(255, 255, 255, .6); }
.lb-count b { font-size: 20px; color: var(--white); }
.lb-close, .lb-prev, .lb-next {
  display: grid; place-items: center;
  border: 1px solid rgba(255, 255, 255, .35);
  color: var(--white);
  transition: background .25s var(--ease), border-color .25s var(--ease);
}
.lb-close { width: 44px; height: 44px; font-size: 16px; }
.lb-close:hover, .lb-prev:hover, .lb-next:hover { background: var(--secondary); border-color: var(--secondary); }
.lb-stage { position: relative; flex: 1; min-height: 0; display: flex; padding: 28px 104px; overflow: hidden; }
.lb-stage-inner { flex: 1; min-width: 0; min-height: 0; display: flex; align-items: center; justify-content: center; }
.lb-stage img { display: block; width: auto; height: auto; max-width: 100%; max-height: 100%; object-fit: contain; border: 5px solid var(--white); box-shadow: 0 20px 60px rgba(0, 0, 0, .45); animation: nlIn .35s var(--ease) both; }
.lb-frame { width: min(1100px, 100%); aspect-ratio: 16 / 9; max-height: 100%; border: 5px solid var(--white); background: #000; }
.lb-frame iframe { width: 100%; height: 100%; border: 0; display: block; }
.lb-empty { display: grid; place-items: center; gap: 12px; height: 100%; text-align: center; color: rgba(255, 255, 255, .75); font-size: 15px; }
.lb-empty i { font-size: 42px; color: var(--secondary); }
.lb-prev, .lb-next { position: absolute; top: 50%; width: 52px; height: 52px; margin-top: -26px; font-size: 16px; }
.lb-prev { left: 32px; }
.lb-next { right: 32px; }
.lb-thumbs { position: relative; z-index: 1; flex-shrink: 0; display: flex; justify-content: safe center; gap: 8px; padding: 16px 32px 24px; overflow-x: auto; }
.lb-thumbs:empty { display: none; }
.lb-thumbs button { flex-shrink: 0; width: 96px; height: 60px; border: 2px solid transparent; opacity: .5; transition: opacity .2s, border-color .2s; }
.lb-thumbs button img { width: 100%; height: 100%; object-fit: cover; }
.lb-thumbs button:hover { opacity: .85; }
.lb-thumbs button.is-active { opacity: 1; border-color: var(--secondary); }

/* =========================================================
   Formlar
   ========================================================= */
.form-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 40px; align-items: start; }
.form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 24px; }
.field { display: flex; flex-direction: column; gap: 8px; }
.field--full { grid-column: 1 / -1; }
.field > label, .field-label {
  font-family: var(--font-head);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--text);
}
.req { color: var(--text-accent); }
.field input, .field select, .field textarea {
  width: 100%;
  height: 52px;
  padding: 0 16px;
  border: 1px solid var(--grey);
  border-bottom: 2px solid rgba(var(--primary-rgb), .35);
  background: var(--white);
  font: 500 16px var(--font-body);
  color: var(--text);
  outline: 0;
  transition: border-color .2s, background .2s;
}
.field select { appearance: none; background: var(--white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%230a7ab9' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 16px center; padding-right: 40px; }
.field textarea { height: 170px; padding: 14px 16px; resize: vertical; line-height: 1.6; }
.field input:focus, .field select:focus, .field textarea:focus { border-bottom-color: var(--secondary); background: var(--light); }
.field-hint { display: flex; justify-content: space-between; font-size: 13px; color: var(--text-muted); }
.field-error { display: none; font-size: 13px; font-weight: 500; color: #c0392b; }
.field.has-error input, .field.has-error select, .field.has-error textarea { border-bottom-color: #c0392b; background: #fdf3f2; }
.field.has-error .field-error { display: block; }
.pills { display: flex; flex-wrap: wrap; gap: 8px; }
.pill { position: relative; }
.field .pill input { position: absolute; top: 0; left: 0; width: 1px; height: 1px; padding: 0; border: 0; opacity: 0; pointer-events: none; }
.pill span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 46px;
  padding: 0 18px;
  border: 1px solid var(--grey);
  font-family: var(--font-head);
  font-size: 15px;
  font-weight: 600;
  letter-spacing: .6px;
  color: var(--text-muted);
  cursor: pointer;
  transition: background .2s, color .2s, border-color .2s;
}
.pill span i { color: var(--secondary); }
.pill:hover span { border-color: var(--primary); color: var(--primary); }
.pill input:checked + span { background: var(--primary); border-color: var(--primary); color: var(--white); }
.pill input:focus-visible + span { outline: 2px solid var(--secondary); outline-offset: 2px; }
.field > .check { font-family: var(--font-body); font-weight: 400; letter-spacing: 0; text-transform: none; }
.check { display: flex; align-items: flex-start; gap: 12px; font-size: 14px; line-height: 1.6; color: var(--text-muted); cursor: pointer; }
.check input {
  flex-shrink: 0;
  appearance: none;
  width: 22px; height: 22px;
  margin-top: 1px;
  border: 1.5px solid rgba(var(--primary-rgb), .45);
  background: var(--white);
  cursor: pointer;
  display: grid; place-items: center;
  transition: background .2s, border-color .2s;
}
.check input::after { content: ""; width: 6px; height: 11px; border: solid var(--white); border-width: 0 2px 2px 0; transform: rotate(45deg) translate(-1px, -1px); opacity: 0; }
.check input:checked { background: var(--secondary); border-color: var(--secondary); }
.check input:checked::after { opacity: 1; }
.check a { color: var(--primary); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.form-actions { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: 16px; padding-top: 8px; border-top: 1px solid var(--grey); }
.form-actions .btn { height: 52px; padding: 0 30px; margin-top: 16px; }
.form-actions p { margin-top: 16px; font-size: 13px; color: var(--text-muted); }
.form-success {
  display: none;
  padding: 56px 32px;
  text-align: center;
  border: 1px solid var(--grey);
  border-top: 4px solid var(--secondary);
}
.form-success.is-visible { display: block; animation: nlIn .45s var(--ease) both; }
.form-success > i { width: 76px; height: 76px; display: inline-grid; place-items: center; border-radius: 50%; background: var(--secondary); color: var(--white); font-size: 30px; box-shadow: 0 0 0 10px rgba(var(--secondary-rgb), .18); }
.form-success h3 { margin-top: 26px; font-family: var(--font-head); font-size: 32px; font-weight: 600; color: var(--primary); }
.form-success p { margin: 10px auto 0; max-width: 520px; font-size: 16px; line-height: 1.7; color: var(--text-muted); }
.form-success .ref { display: inline-block; margin-top: 20px; padding: 10px 18px; background: var(--light); font-family: var(--font-head); font-size: 20px; font-weight: 600; letter-spacing: 1px; color: var(--primary); }

.info-card { padding: 28px; border: 1px solid var(--grey); }
.info-card + .info-card, .info-card + .mega-feature { margin-top: 20px; }
.info-list li { display: flex; gap: 12px; margin-top: 16px; font-size: 15px; line-height: 1.6; color: var(--text); }
.info-list i { flex-shrink: 0; width: 30px; height: 30px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 12px; }

/* Randevu adımları */
.steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 40px; border: 1px solid var(--grey); }
.step { position: relative; padding: 22px 20px; border-right: 1px solid var(--grey); }
.step:last-child { border-right: 0; }
.step.is-active { background: var(--light); }
.step.is-active::before { content: ""; position: absolute; left: -1px; right: -1px; top: -1px; height: 3px; background: var(--secondary); }
.step-num { font-family: var(--font-head); font-size: 38px; font-weight: 700; line-height: 1; color: transparent; -webkit-text-stroke: 1px var(--primary); }
.step.is-active .step-num { color: var(--primary); -webkit-text-stroke: 0; }
.step-title { margin-top: 10px; font-family: var(--font-head); font-size: 18px; font-weight: 600; color: var(--text); }
.step-text { margin-top: 4px; font-size: 14px; line-height: 1.55; color: var(--text-muted); }

/* =========================================================
   Geniş footer (iç sayfalar)
   ========================================================= */
.footer-full { background: var(--primary); color: rgba(255, 255, 255, .78); } /* header ile aynı zemin */
.footer-main {
  display: grid;
  grid-template-columns: 1fr 1fr 1.2fr;
  gap: 48px;
  max-width: 1400px;
  margin: 0 auto;
  padding: 64px 40px 52px;
}
.footer-logo { display: inline-grid; place-items: center; width: 96px; height: 96px; background: var(--white); border-radius: 0 0 18px 18px; border-top: 4px solid var(--secondary); }
.footer-logo img { width: 74px; height: 74px; object-fit: contain; }
.footer-about { margin-top: 20px; max-width: 340px; font-size: 15px; line-height: 1.7; }
.footer-full .follow-icons { margin-top: 20px; }
.footer-title {
  position: relative;
  padding-bottom: 12px;
  margin-bottom: 14px;
  border-bottom: 1px solid rgba(255, 255, 255, .12);
  font-family: var(--font-head);
  font-size: 17px;
  font-weight: 600;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  color: var(--white);
}
.footer-title::after { content: ""; position: absolute; left: 0; bottom: -1px; width: 32px; height: 2px; background: var(--secondary); }
.footer-list a { display: flex; align-items: center; gap: 10px; padding: 7px 0; font-size: 15px; transition: color .2s, transform .25s var(--ease); }
.footer-list a::before { content: "\f054"; font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: 9px; color: var(--secondary); }
.footer-list a:hover { color: var(--white); transform: translateX(4px); }
.footer-contact li { display: flex; gap: 12px; padding: 8px 0; font-size: 15px; line-height: 1.5; }
.footer-contact i { flex-shrink: 0; width: 32px; height: 32px; display: grid; place-items: center; background: rgba(255, 255, 255, .07); color: var(--secondary); font-size: 13px; }
.footer-contact small { display: block; font-size: 12px; letter-spacing: 1px; text-transform: uppercase; color: rgba(255, 255, 255, .5); }
.footer-contact b { font-weight: 600; color: var(--white); }
.footer-full .site-footer { height: auto; min-height: 52px; padding: 14px 40px; background: var(--primary); border-top: 1px solid rgba(255, 255, 255, .12); }

/* =========================================================
   İç sayfalar — duyarlı
   ========================================================= */
@media (max-width: 1200px) {
  .inner { grid-template-columns: 260px minmax(0, 1fr); gap: 36px; }
  .inner-content .nl-grid, .album-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .profile { grid-template-columns: 300px minmax(0, 1fr); gap: 32px; }
  .form-layout { grid-template-columns: 1fr; }
  .footer-main { grid-template-columns: 1fr 1fr; }
  .footer-main > div:last-child { grid-column: 1 / -1; }
}
@media (max-width: 991.98px) {
  .page-hero { min-height: 170px; margin-top: var(--header-h); padding: 28px 16px 24px; }
  .inner { grid-template-columns: 1fr; padding: 32px 16px 64px; gap: 32px; }
  .inner-side, .inner-side--scroll { position: static; max-height: none; overflow: visible; padding-right: 0; }
  .side-nav .lg-tabs { display: flex; overflow-x: auto; border-top: 0; }
  .side-nav .lg-tab { width: auto; white-space: nowrap; border: 1px solid var(--grey); margin-right: -1px; }
  .side-nav .lg-tab::after { display: none; }
  .profile { grid-template-columns: 1fr; gap: 0; }
  .profile-photo { min-height: 340px; }
  .profile-photo img { height: 330px; }
  .profile-info { padding: 28px 20px; }
  .profile-name { font-size: 40px; }
  .steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .step:nth-child(2) { border-right: 0; }
  .step:nth-child(-n+2) { border-bottom: 1px solid var(--grey); }
  .lb-stage { padding: 20px 16px 80px; }
  .lb-prev, .lb-next { top: auto; bottom: 16px; margin: 0; }
  .lb-top { padding: 14px 16px; }
  .footer-main { padding: 48px 16px 40px; gap: 36px; }
  .footer-full .site-footer { padding: 18px 16px; }
}
@media (max-width: 640px) {
  .inner-content .nl-grid, .album-grid, .form, .facts { grid-template-columns: 1fr; }
  .timeline::before { left: 6px; }
  .tl-item { grid-template-columns: 1fr; gap: 4px; padding-left: 30px; }
  .tl-item::before { left: 0; }
  .tl-year { text-align: left; }
  .footer-main { grid-template-columns: 1fr; }
  .profile-actions .mayor-social { margin-left: 0; }
}

/* =========================================================
   Hizmet sayfaları — ortak bileşenler
   ========================================================= */
.cta-band {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 28px 32px;
  background: linear-gradient(120deg, var(--primary) 0%, var(--primary-dark) 100%);
  color: var(--white);
}
.cta-band::after {
  content: "\f2a0";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  right: 180px; bottom: -40px;
  font-size: 150px;
  color: rgba(255, 255, 255, .05);
  pointer-events: none;
}
.cta-icon { flex-shrink: 0; width: 64px; height: 64px; display: grid; place-items: center; background: var(--secondary); font-size: 26px; }
.cta-text { flex: 1; min-width: 0; }
.cta-text .mf-kicker { margin-top: 0; color: var(--secondary); }
.cta-text strong { display: block; margin-top: 4px; font-family: var(--font-head); font-size: 40px; font-weight: 700; line-height: 1; }
.cta-text p { margin-top: 6px; font-size: 15px; color: rgba(255, 255, 255, .75); }
.cta-band .btn { position: relative; z-index: 1; flex-shrink: 0; }
.cta-band .btn-primary:hover { background: var(--white); color: var(--primary); }

.service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 28px;
  border-top: 1px solid var(--grey);
  border-left: 1px solid var(--grey);
}
.service {
  position: relative;
  padding: 28px 24px;
  border-right: 1px solid var(--grey);
  border-bottom: 1px solid var(--grey);
  transition: background .25s var(--ease);
}
.service::before { content: ""; position: absolute; left: -1px; top: 0; bottom: 0; width: 3px; background: var(--secondary); transform: scaleY(0); transition: transform .3s var(--ease); }
.service-icon { width: 52px; height: 52px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 20px; transition: background .25s var(--ease), color .25s var(--ease); }
.service-title { margin-top: 18px; font-family: var(--font-head); font-size: 21px; font-weight: 600; color: var(--text); transition: color .2s; }
.service-text { margin-top: 8px; font-size: 15px; line-height: 1.65; color: var(--text-muted); }
.service:hover { background: var(--light); }
.service:hover::before { transform: scaleY(1); }
.service:hover .service-icon { background: var(--secondary); color: var(--white); }
.service:hover .service-title { color: var(--primary); }

.two-col { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.two-col .info-card + .info-card { margin-top: 0; }

.faq { border-top: 1px solid var(--grey); }
.faq-item { position: relative; border-bottom: 1px solid var(--grey); }
.faq-item::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--secondary); transform: scaleY(0); transition: transform .3s var(--ease); }
.faq-item[open]::before { transform: scaleY(1); }
.faq-item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 20px 20px 24px;
  cursor: pointer;
  list-style: none;
  font-family: var(--font-head);
  font-size: 20px;
  font-weight: 600;
  color: var(--text);
  transition: background .2s, color .2s;
}
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::after {
  content: "\2b";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  flex-shrink: 0;
  width: 30px; height: 30px;
  display: grid; place-items: center;
  border: 1px solid rgba(var(--primary-rgb), .3);
  border-radius: 50%;
  font-size: 12px;
  color: var(--primary);
  transition: transform .3s var(--ease), background .25s, color .25s, border-color .25s;
}
.faq-item summary:hover { background: var(--light); color: var(--primary); }
.faq-item[open] summary { color: var(--primary); background: var(--light); }
.faq-item[open] summary::after { transform: rotate(45deg); background: var(--secondary); border-color: var(--secondary); color: var(--white); }
.faq-body { padding: 4px 24px 22px; background: var(--light); }
.faq-body p { font-size: 16px; line-height: 1.75; color: var(--text-muted); }

@media (max-width: 1200px) {
  .service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 991.98px) {
  .cta-band { flex-wrap: wrap; padding: 24px 20px; }
  .cta-band::after { display: none; }
  .two-col { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .service-grid { grid-template-columns: 1fr; }
  .cta-text strong { font-size: 32px; }
  .faq-item summary { font-size: 18px; }
}

/* =========================================================
   Vefat Edenler
   ========================================================= */
.list-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
.list-toolbar .nl-filters { margin-bottom: 0; }
.list-toolbar .qm-search { width: 320px; }
.list-count { margin-bottom: 14px; font-family: var(--font-head); font-size: 15px; color: var(--text-muted); }
.list-count b { font-size: 18px; color: var(--primary); }
.obit-list { border-top: 1px solid var(--grey); }
.obit {
  position: relative;
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 24px;
  padding: 24px 20px;
  border-bottom: 1px solid var(--grey);
  transition: background .25s var(--ease);
  animation: nlIn .4s var(--ease) both;
  animation-delay: calc(var(--i) * 40ms);
}
.obit::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--secondary); transform: scaleY(0); transition: transform .3s var(--ease); }
.obit:hover { background: var(--light); }
.obit:hover::before { transform: scaleY(1); }
.obit-date { padding-right: 20px; border-right: 1px solid var(--grey); text-align: center; font-family: var(--font-head); line-height: 1; }
.obit-date b { display: block; font-size: 40px; font-weight: 700; color: var(--primary); }
.obit-date small { display: block; margin-top: 6px; font-size: 13px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--text-accent); }
.obit-date em { display: block; margin-top: 4px; font-style: normal; font-size: 13px; color: var(--text-muted); }
.obit-title { display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px; }
.obit-label { font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; color: var(--text-accent); }
.obit-name { font-family: var(--font-head); font-size: 26px; font-weight: 600; line-height: 1.1; color: var(--primary); }
.obit-meta { display: flex; flex-wrap: wrap; gap: 6px 20px; margin-top: 8px; font-size: 14px; color: var(--text-muted); }
.obit-meta span { display: inline-flex; align-items: center; gap: 6px; }
.obit-meta i { color: var(--secondary); font-size: 12px; }
.obit-details { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 16px; }
.obit-d { display: flex; align-items: center; gap: 10px; min-width: 0; }
.obit-d i { flex-shrink: 0; width: 34px; height: 34px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 13px; transition: background .25s var(--ease), color .25s var(--ease); }
.obit-d small { display: block; font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--text-muted); }
.obit-d b { display: block; font-family: var(--font-head); font-size: 16px; font-weight: 600; color: var(--text); }
.obit:hover .obit-d i { background: var(--secondary); color: var(--white); }
.obit-list + .qm-empty { border-bottom: 1px solid var(--grey); }
.inner-content .cta-band + .list-toolbar, .inner-content .list-toolbar { margin-top: 0; }
.obit-cta { margin-top: 48px; }

@media (max-width: 1200px) {
  .obit-details { grid-template-columns: 1fr; }
  .list-toolbar .qm-search { width: 100%; }
}
@media (max-width: 640px) {
  .obit { grid-template-columns: 1fr; gap: 14px; padding: 20px 14px; }
  .obit-date { display: flex; align-items: baseline; gap: 8px; padding: 0 0 12px; border-right: 0; border-bottom: 1px solid var(--grey); text-align: left; }
  .obit-date b { font-size: 30px; }
  .obit-date small, .obit-date em { margin: 0; }
}

/* =========================================================
   Müdürlükler
   ========================================================= */
.inner-side--scroll {
  max-height: calc(100vh - 148px);
  overflow-y: auto;
  overscroll-behavior: contain;
  padding-right: 8px;
  scrollbar-width: thin;
  scrollbar-color: rgba(var(--primary-rgb), .25) transparent;
}
.inner-side--scroll::-webkit-scrollbar { width: 6px; }
.inner-side--scroll::-webkit-scrollbar-thumb { background: rgba(var(--primary-rgb), .25); }
.lg-tabs--compact .lg-tab { padding: 10px 14px; font-size: 15px; }
.lg-tabs--compact .lg-tab i { width: 28px; height: 28px; font-size: 12px; }

/* Liste */
.unit-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--grey);
  border-left: 1px solid var(--grey);
}
.unit { border-right: 1px solid var(--grey); border-bottom: 1px solid var(--grey); }
.unit.is-hidden { display: none; }
.unit a { position: relative; display: flex; flex-direction: column; height: 100%; padding: 26px 24px 22px; transition: background .25s var(--ease); }
.unit a::before { content: ""; position: absolute; left: -1px; top: 0; bottom: 0; width: 3px; background: var(--secondary); transform: scaleY(0); transition: transform .3s var(--ease); }
.unit-icon { width: 52px; height: 52px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 20px; transition: background .25s var(--ease), color .25s var(--ease); }
.unit-name { flex: 1; margin-top: 18px; font-family: var(--font-head); font-size: 21px; font-weight: 600; line-height: 1.2; color: var(--text); transition: color .2s; }
.unit-foot { display: flex; align-items: center; gap: 10px; margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--grey); font-family: var(--font-head); font-size: 14px; color: var(--text-muted); }
.unit-foot i.fa-phone { color: var(--secondary); font-size: 12px; }
.unit-foot::after {
  content: "\f061";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  margin-left: auto;
  width: 28px; height: 28px;
  display: grid; place-items: center;
  border: 1px solid rgba(var(--primary-rgb), .25);
  border-radius: 50%;
  font-size: 11px;
  color: var(--primary);
  transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.unit a:hover { background: var(--light); }
.unit a:hover::before { transform: scaleY(1); }
.unit a:hover .unit-icon { background: var(--secondary); color: var(--white); }
.unit a:hover .unit-name { color: var(--primary); }
.unit a:hover .unit-foot::after { background: var(--secondary); border-color: var(--secondary); color: var(--white); }

/* Detay: birim müdürü kartı */
.manager { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 36px; border: 1px solid var(--grey); }
.manager-photo {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 250px;
  background: linear-gradient(180deg, var(--light) 0%, #e3e9f1 100%);
  color: rgba(var(--primary-rgb), .22);
  font-size: 72px;
}
.manager-photo::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: var(--secondary); }
.manager-photo img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.manager-info { padding: 32px 32px 32px 0; }
.manager-name { margin-top: 10px; font-family: var(--font-head); font-size: 36px; font-weight: 600; line-height: 1.05; color: var(--primary); }
.manager-role { margin-top: 6px; font-family: var(--font-head); font-size: 17px; color: var(--text-muted); }
.contact-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 24px; margin-top: 22px; padding-top: 20px; border-top: 1px solid var(--grey); }
.contact-list li { display: flex; align-items: center; gap: 12px; min-width: 0; }
.contact-list i { flex-shrink: 0; width: 36px; height: 36px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 14px; }
.contact-list small { display: block; font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--text-muted); }
.contact-list b, .contact-list a { display: block; font-family: var(--font-head); font-size: 17px; font-weight: 600; color: var(--text); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.contact-list a:hover { color: var(--primary); }

/* Görev ve yetkiler */
.duty-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--grey); border-left: 1px solid var(--grey); counter-reset: duty; }
.duty-list li {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 20px;
  border-right: 1px solid var(--grey);
  border-bottom: 1px solid var(--grey);
  font-size: 15px;
  line-height: 1.65;
  color: var(--text);
  counter-increment: duty;
}
.duty-list li::before {
  content: counter(duty, decimal-leading-zero);
  flex-shrink: 0;
  font-family: var(--font-head);
  font-size: 26px;
  font-weight: 700;
  line-height: 1;
  color: transparent;
  -webkit-text-stroke: 1px var(--secondary-dark);
}

/* Belgeler */
.doc-list { border-top: 1px solid var(--grey); }
.doc-list a { position: relative; display: flex; align-items: center; gap: 16px; padding: 16px 20px; border-bottom: 1px solid var(--grey); transition: background .25s var(--ease); }
.doc-list a::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--secondary); transform: scaleY(0); transition: transform .3s var(--ease); }
.doc-icon { flex-shrink: 0; width: 44px; height: 44px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 18px; transition: background .25s, color .25s; }
.doc-text { flex: 1; min-width: 0; }
.doc-text b { display: block; font-family: var(--font-head); font-size: 18px; font-weight: 600; color: var(--text); transition: color .2s; }
.doc-text small { font-size: 13px; color: var(--text-muted); }
.doc-dl { flex-shrink: 0; width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid rgba(var(--primary-rgb), .25); border-radius: 50%; font-size: 12px; color: var(--primary); transition: background .25s, color .25s, border-color .25s; }
.doc-list a:hover { background: var(--light); }
.doc-list a:hover::before { transform: scaleY(1); }
.doc-list a:hover .doc-icon, .doc-list a:hover .doc-dl { background: var(--secondary); border-color: var(--secondary); color: var(--white); }
.doc-list a:hover .doc-text b { color: var(--primary); }

/* Önceki / sonraki */
.pager { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 64px; }
.pager a { position: relative; display: flex; align-items: center; gap: 16px; padding: 22px 24px; border: 1px solid var(--grey); transition: background .25s var(--ease), border-color .25s var(--ease); }
.pager a > i { flex-shrink: 0; width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid rgba(var(--primary-rgb), .3); color: var(--primary); font-size: 14px; transition: background .25s, color .25s, border-color .25s; }
.pager small { display: block; font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; color: var(--text-accent); }
.pager b { display: block; margin-top: 4px; font-family: var(--font-head); font-size: 19px; font-weight: 600; color: var(--text); transition: color .2s; }
.pager .pager-next { flex-direction: row-reverse; text-align: right; }
.pager a:hover { background: var(--light); border-color: rgba(var(--primary-rgb), .2); }
.pager a:hover > i { background: var(--primary); border-color: var(--primary); color: var(--white); }
.pager a:hover b { color: var(--primary); }

@media (max-width: 1200px) {
  .unit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .contact-list { grid-template-columns: 1fr; }
}
@media (max-width: 991.98px) {
  .manager { grid-template-columns: 1fr; gap: 0; }
  .manager-photo { min-height: 200px; }
  .manager-info { padding: 24px 20px; }
}
@media (max-width: 640px) {
  .unit-grid, .duty-list, .pager { grid-template-columns: 1fr; }
}

/* =========================================================
   Haberler — liste & detay
   ========================================================= */
.page-title--sm { max-width: 1000px; font-size: clamp(28px, 2.5vw, 38px); line-height: 1.12; }

/* Yan menü: haber listesi */
.side-block .side-title { margin-bottom: 8px; }
.side-news a { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 14px; align-items: center; padding: 12px 0; border-bottom: 1px solid var(--grey); }
.side-news-thumb { display: block; aspect-ratio: 16 / 9; overflow: hidden; border: 3px solid var(--white); box-shadow: 0 0 0 1px rgba(var(--primary-rgb), .12), 0 6px 14px rgba(13, 42, 79, .14); }
.side-news-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s var(--ease); }
.side-news b { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-family: var(--font-head); font-size: 16px; font-weight: 600; line-height: 1.25; color: var(--text); transition: color .2s; }
.side-news small { display: flex; align-items: center; gap: 6px; margin-top: 4px; font-size: 13px; color: var(--text-muted); }
.side-news small i { color: var(--secondary); }
.side-news a:hover b { color: var(--primary); }
.side-news a:hover img { transform: scale(1.06); }

/* Haber detay */
.article-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 20px;
  margin-bottom: 28px;
  border-bottom: 1px solid var(--grey);
}
.article-info { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 20px; font-family: var(--font-head); font-size: 15px; color: var(--text-muted); }
.article-info span { display: inline-flex; align-items: center; gap: 8px; }
.article-info i { color: var(--secondary); }
.share { display: flex; align-items: center; gap: 6px; }
.share > span { margin-right: 6px; font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; color: var(--text-muted); }
.share a, .share button {
  width: 36px; height: 36px;
  display: grid; place-items: center;
  border: 1px solid rgba(var(--primary-rgb), .25);
  color: var(--primary);
  font-size: 14px;
  transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.share a:hover, .share button:hover, .share button.is-done { background: var(--secondary); border-color: var(--secondary); color: var(--white); }
.article-figure .nl-thumb { aspect-ratio: 16 / 9; }
.article-figure figcaption { display: flex; align-items: center; gap: 8px; margin-top: 12px; font-size: 14px; color: var(--text-muted); }
.article-figure figcaption i { color: var(--secondary); }
.article-lead {
  margin-top: 32px;
  padding-left: 22px;
  border-left: 3px solid var(--secondary);
  font-size: 20px;
  font-weight: 500;
  line-height: 1.65;
  color: var(--text);
}
.article-body { margin-top: 24px; max-width: 860px; }
#article > .content-block { margin-top: 56px; }
.article-body p { margin-top: 18px; font-size: 17px; line-height: 1.85; color: var(--text); }
.article-gallery { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.article-gallery button { position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden; border: 4px solid var(--white); box-shadow: 0 0 0 1px rgba(var(--primary-rgb), .12), 0 8px 18px rgba(13, 42, 79, .14); }
.article-gallery img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s var(--ease); }
.article-gallery button::after {
  content: "\f00e";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  background: rgba(13, 42, 79, .55);
  color: var(--white);
  font-size: 22px;
  opacity: 0;
  transition: opacity .25s var(--ease);
}
.article-gallery button:hover img { transform: scale(1.06); }
.article-gallery button:hover::after { opacity: 1; }
.article-foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; margin-top: 48px; padding: 20px 0; border-top: 1px solid var(--grey); border-bottom: 1px solid var(--grey); }
.tag-list { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.tag-list > span { margin-right: 4px; font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; color: var(--text-muted); }
.tag-list a { display: inline-flex; align-items: center; height: 32px; padding: 0 12px; border: 1px solid var(--grey); font-family: var(--font-head); font-size: 14px; font-weight: 600; color: var(--text-muted); transition: background .2s, color .2s, border-color .2s; }
.tag-list a::before { content: "#"; margin-right: 2px; color: var(--secondary); }
.tag-list a:hover { background: var(--primary); border-color: var(--primary); color: var(--white); }
.article-missing { padding: 64px 24px; text-align: center; border: 1px solid var(--grey); border-top: 4px solid var(--secondary); }
.article-missing i { font-size: 40px; color: var(--grey-dark); }
.article-missing h2 { margin-top: 18px; font-family: var(--font-head); font-size: 30px; color: var(--primary); }
.article-missing p { margin: 10px 0 24px; color: var(--text-muted); }

@media (max-width: 1200px) {
  .article-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .article-lead { font-size: 18px; }
}

/* =========================================================
   Duyurular — liste & detay
   ========================================================= */
.inner-content .na-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.side-notices a { display: flex; align-items: center; gap: 14px; padding: 12px 0; border-bottom: 1px solid var(--grey); }
.sn-date { flex-shrink: 0; width: 50px; padding-right: 12px; border-right: 1px solid var(--grey); text-align: center; font-family: var(--font-head); line-height: 1; }
.sn-date b { display: block; font-size: 24px; font-weight: 700; color: var(--primary); }
.sn-date small { display: block; margin-top: 3px; font-size: 11px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--text-accent); }
.side-notices a > span:last-child b { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-family: var(--font-head); font-size: 16px; font-weight: 600; line-height: 1.25; color: var(--text); transition: color .2s; }
.side-notices a > span:last-child small { display: block; margin-top: 3px; font-size: 13px; color: var(--text-muted); }
.side-notices a:hover > span:last-child b { color: var(--primary); }
.notice-facts { margin-top: 0; margin-bottom: 32px; }
.notice-facts dd a { color: var(--primary); text-decoration: underline; text-decoration-color: rgba(var(--secondary-rgb), .6); text-underline-offset: 3px; }
.notice-facts dd a:hover { color: var(--text-accent); }
#noticeArticle > .content-block { margin-top: 48px; }
#noticeArticle .article-lead { margin-top: 0; }

@media (max-width: 1200px) { .inner-content .na-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .inner-content .na-grid { grid-template-columns: 1fr; } }

/* =========================================================
   İhaleler — liste & detay
   ========================================================= */
.tender-list { border-top: 1px solid var(--grey); }
.tender { animation: nlIn .4s var(--ease) both; animation-delay: calc(var(--i) * 40ms); }
.tender a {
  position: relative;
  display: grid;
  grid-template-columns: 104px minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  padding: 24px 20px;
  border-bottom: 1px solid var(--grey);
  transition: background .25s var(--ease);
}
.tender a::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--secondary); transform: scaleY(0); transition: transform .3s var(--ease); }
.tender a:hover { background: var(--light); }
.tender a:hover::before { transform: scaleY(1); }
.td-date { align-self: stretch; display: flex; flex-direction: column; justify-content: center; padding-right: 20px; border-right: 1px solid var(--grey); text-align: center; font-family: var(--font-head); line-height: 1; }
.td-date b { font-size: 40px; font-weight: 700; color: var(--primary); }
.td-date small { margin-top: 6px; font-size: 13px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--text-accent); }
.td-date em { display: inline-flex; align-items: center; justify-content: center; gap: 5px; margin-top: 6px; font-style: normal; font-size: 14px; color: var(--text-muted); }
.td-date em i { font-size: 11px; color: var(--secondary); }
.td-tags { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.td-proc { padding: 3px 8px; border: 1px solid rgba(var(--primary-rgb), .3); font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--primary); }
.td-title { display: block; margin-top: 10px; font-family: var(--font-head); font-size: 22px; font-weight: 600; line-height: 1.2; color: var(--text); transition: color .2s; }
.td-meta { display: flex; flex-wrap: wrap; gap: 6px 20px; margin-top: 8px; font-size: 14px; color: var(--text-muted); }
.td-meta span { display: inline-flex; align-items: center; gap: 6px; }
.td-meta i { font-size: 12px; color: var(--secondary); }
.tender a:hover .td-title { color: var(--primary); }
.td-side { display: flex; flex-direction: column; align-items: flex-end; gap: 10px; }
.td-left { font-family: var(--font-head); font-size: 15px; font-weight: 600; color: var(--primary); }
.td-arrow { width: 32px; height: 32px; display: grid; place-items: center; border: 1px solid rgba(var(--primary-rgb), .25); border-radius: 50%; font-size: 12px; color: var(--primary); transition: background .25s, color .25s, border-color .25s; }
.tender a:hover .td-arrow { background: var(--secondary); border-color: var(--secondary); color: var(--white); }

.status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 30px;
  padding: 0 12px;
  font-family: var(--font-head);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  white-space: nowrap;
}
.status::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.status--open { background: rgba(var(--secondary-rgb), .14); color: var(--text-accent); }
.status--open::before { animation: pulseDot 1.6s ease-in-out infinite; }
.status--done { background: var(--light); color: var(--text-muted); }
@keyframes pulseDot { 0%, 100% { box-shadow: 0 0 0 0 rgba(var(--secondary-rgb), .6); } 50% { box-shadow: 0 0 0 5px rgba(var(--secondary-rgb), 0); } }

/* Detay: geri sayım */
.tender-band { margin-bottom: 32px; }
.tender-band .cta-text strong { font-size: 30px; }
.countdown { position: relative; z-index: 1; display: flex; gap: 8px; }
.cd-box { min-width: 74px; padding: 12px 10px; text-align: center; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .15); font-family: var(--font-head); line-height: 1; }
.cd-box b { display: block; font-size: 34px; font-weight: 700; }
.cd-box small { display: block; margin-top: 6px; font-size: 12px; letter-spacing: 1.2px; text-transform: uppercase; color: rgba(255, 255, 255, .6); }
.tender-band.is-done { background: linear-gradient(120deg, #4b5866 0%, #36414d 100%); }
.tender-band.is-done .cta-icon { background: rgba(255, 255, 255, .15); }
.tender-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 0; }
.tender-facts dd a { color: var(--primary); text-decoration: underline; text-decoration-color: rgba(var(--secondary-rgb), .6); text-underline-offset: 3px; }
#tenderArticle > .content-block { margin-top: 48px; }

@media (max-width: 1200px) {
  .tender a { grid-template-columns: 92px minmax(0, 1fr); }
  .td-side { grid-column: 2; flex-direction: row; align-items: center; justify-content: flex-start; }
  .tender-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .tender a { grid-template-columns: 1fr; gap: 14px; }
  .td-date { flex-direction: row; align-items: baseline; gap: 8px; padding: 0 0 12px; border-right: 0; border-bottom: 1px solid var(--grey); text-align: left; }
  .td-date b { font-size: 30px; }
  .td-date small, .td-date em { margin: 0; }
  .td-side { grid-column: 1; flex-wrap: wrap; }
  .countdown { width: 100%; }
  .cd-box { flex: 1; min-width: 0; }
  .tender-facts { grid-template-columns: 1fr; }
}

/* =========================================================
   Etkinlikler — liste, takvim & detay
   ========================================================= */
.ev-badge {
  position: absolute;
  z-index: 1;
  top: 12px; left: 12px;
  min-width: 58px;
  padding: 8px 8px 7px;
  text-align: center;
  background: var(--white);
  border-bottom: 3px solid var(--secondary);
  box-shadow: 0 8px 18px rgba(13, 42, 79, .25);
  font-family: var(--font-head);
  line-height: 1;
}
.ev-badge b { display: block; font-size: 26px; font-weight: 700; color: var(--primary); }
.ev-badge small { display: block; margin-top: 3px; font-size: 12px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--text-accent); }
.ev-past {
  position: absolute;
  z-index: 1;
  top: 12px; right: 12px;
  padding: 5px 10px;
  background: rgba(13, 42, 79, .82);
  font-family: var(--font-head);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--white);
}
.nl-card.is-past .nl-thumb img { filter: grayscale(.55); }
.ev-info { display: flex; flex-direction: column; gap: 4px; margin-top: 8px; font-size: 14px; color: var(--text-muted); }
.ev-info span { display: inline-flex; align-items: center; gap: 8px; }
.ev-info i { width: 14px; font-size: 12px; color: var(--secondary); }

/* Takvim */
.cal { border: 1px solid var(--grey); }
.cal-head { display: flex; align-items: center; justify-content: space-between; padding: 12px 12px 12px 16px; border-bottom: 1px solid var(--grey); }
.cal-title { font-family: var(--font-head); font-size: 19px; font-weight: 600; color: var(--primary); text-transform: capitalize; }
.cal-nav { display: flex; gap: 4px; }
.cal-nav button { width: 30px; height: 30px; display: grid; place-items: center; border: 1px solid rgba(var(--primary-rgb), .25); color: var(--primary); font-size: 11px; transition: background .2s, color .2s, border-color .2s; }
.cal-nav button:hover { background: var(--primary); border-color: var(--primary); color: var(--white); }
.cal-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 2px; padding: 10px; }
.cal-wd { padding: 4px 0 8px; text-align: center; font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: .5px; text-transform: uppercase; color: var(--text-muted); }
.cal-day {
  position: relative;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  font-family: var(--font-head);
  font-size: 15px;
  color: var(--text-muted);
  transition: background .2s, color .2s;
}
.cal-day:disabled { cursor: default; opacity: .45; }
.cal-day.is-today { box-shadow: inset 0 0 0 1px rgba(var(--primary-rgb), .45); color: var(--primary); }
.cal-day.has-event { font-weight: 700; color: var(--primary); }
.cal-day.has-event::after { content: ""; position: absolute; bottom: 4px; left: 50%; width: 5px; height: 5px; margin-left: -2.5px; border-radius: 50%; background: var(--secondary); }
.cal-day.has-event:hover { background: var(--light); }
.cal-day.is-selected { background: var(--primary); color: var(--white); }
.cal-day.is-selected::after { background: var(--white); }
.cal-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 16px; border-top: 1px solid var(--grey); font-size: 13px; color: var(--text-muted); }
.cal-foot i { color: var(--secondary); margin-right: 6px; }
.cal-reset { font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--text-accent); }
.cal-reset:hover { color: var(--primary); }
.list-count .cal-chip { display: inline-flex; align-items: center; gap: 8px; margin-left: 10px; padding: 3px 10px; background: var(--primary); color: var(--white); font-size: 13px; }
.list-count .cal-chip button { color: var(--white); font-size: 11px; }

/* Detay */
.ev-actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 28px 0 0; }
.ev-actions .btn { height: 48px; }
.event-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 28px; }
.event-facts dd a { color: var(--primary); text-decoration: underline; text-decoration-color: rgba(var(--secondary-rgb), .6); text-underline-offset: 3px; }
#eventArticle > .content-block { margin-top: 48px; }
#eventArticle .tender-band { margin: 28px 0 0; }
#eventArticle .timeline { margin-top: 8px; }

@media (max-width: 1200px) { .event-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .event-facts { grid-template-columns: 1fr; } }

/* Menü hover/active — mobil panelde */
@media (max-width: 991.98px) {
  .main-nav > ul > li > a::before { display: none; }
  .main-nav > ul > li:hover > a, .main-nav > ul > li:focus-within > a { background: rgba(255, 255, 255, .05); color: var(--white); }
  .main-nav > ul > li > a.active { background: rgba(255, 255, 255, .08); box-shadow: inset 3px 0 0 var(--secondary); }
}

/* =========================================================
   Galeri — albüm detay
   ========================================================= */
.album .album-meta .sep { width: 12px; height: 1px; background: var(--grey-dark); }
.photo-grid { columns: 3 260px; column-gap: 16px; }
.photo-grid button {
  position: relative;
  display: block;
  width: 100%;
  margin-bottom: 16px;
  break-inside: avoid;
  overflow: hidden;
  border: 4px solid var(--white);
  box-shadow: 0 0 0 1px rgba(var(--primary-rgb), .12), 0 8px 18px rgba(13, 42, 79, .14);
  animation: nlIn .4s var(--ease) both;
  animation-delay: calc(var(--i) * 35ms);
}
.photo-grid img { width: 100%; height: auto; transition: transform .6s var(--ease); }
.photo-grid button::after {
  content: "\f00e";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  background: rgba(13, 42, 79, .55);
  color: var(--white);
  font-size: 24px;
  opacity: 0;
  transition: opacity .25s var(--ease);
}
.photo-grid button:hover img { transform: scale(1.05); }
.photo-grid button:hover::after { opacity: 1; }
#albumArticle > .content-block { margin-top: 40px; }

/* =========================================================
   Etkinlikler — görünüm seçici & büyük takvim
   ========================================================= */
body:not([data-ev-view="list"]) [data-view="list"]:not(button),
body[data-ev-view="list"] [data-view="cal"]:not(button) { display: none !important; }

.block-head--row { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px; }
.view-switch { display: inline-flex; border: 1px solid var(--grey); }
.view-switch button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 42px;
  padding: 0 18px;
  font-family: var(--font-head);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: var(--text-muted);
  transition: background .2s, color .2s;
}
.view-switch button + button { border-left: 1px solid var(--grey); }
.view-switch button i { color: var(--secondary); }
.view-switch button:hover { color: var(--primary); background: var(--light); }
.view-switch button.is-active { background: var(--primary); color: var(--white); }
.view-switch button.is-active i { color: var(--secondary); }

.bigcal { margin-top: 8px; border: 1px solid var(--grey); }
.bigcal-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 24px;
  border-bottom: 1px solid var(--grey);
  background: linear-gradient(180deg, var(--white) 0%, var(--light) 100%);
}
.bigcal-title { margin-top: 6px; font-family: var(--font-head); font-size: 34px; font-weight: 600; line-height: 1; color: var(--primary); text-transform: capitalize; }
.bigcal-sub { margin-top: 6px; font-size: 14px; color: var(--text-muted); }
.bigcal-sub b { color: var(--primary); }
.bigcal-nav { display: flex; align-items: center; gap: 6px; }
.bigcal-nav button {
  height: 40px;
  min-width: 40px;
  display: grid;
  place-items: center;
  padding: 0 14px;
  border: 1px solid rgba(var(--primary-rgb), .3);
  font-family: var(--font-head);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--primary);
  transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.bigcal-nav button:hover { background: var(--primary); border-color: var(--primary); color: var(--white); }

.bigcal-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.bc-wd {
  padding: 12px 10px;
  border-bottom: 1px solid var(--grey);
  text-align: center;
  font-family: var(--font-head);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: var(--primary);
  background: var(--white);
}
.bc-wd:nth-child(7n), .bc-wd:nth-child(7n - 1) { color: var(--text-accent); }
.bc-cell {
  position: relative;
  min-height: 140px;
  padding: 8px;
  border-right: 1px solid var(--grey);
  border-bottom: 1px solid var(--grey);
  background: var(--white);
}
.bc-cell:nth-child(7n) { border-right: 0; }
.bc-cell.is-weekend { background: #fafbfc; }
.bc-cell.is-out { background: var(--light); }
.bc-cell.is-out .bc-num { opacity: .4; }
.bc-num {
  position: relative;
  z-index: 2;
  display: inline-grid;
  place-items: center;
  min-width: 30px;
  height: 30px;
  padding: 0 6px;
  font-family: var(--font-head);
  font-size: 16px;
  font-weight: 600;
  color: var(--text-muted);
}
.bc-cell.is-today .bc-num { background: var(--secondary); color: var(--white); }
.bc-cell.is-today { box-shadow: inset 0 0 0 2px var(--secondary); }

.bc-event {
  position: absolute;
  inset: 5px;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 4px;
  padding: 10px;
  overflow: hidden;
  color: var(--white);
  background: var(--primary-darker);
  isolation: isolate;
}
.bc-event img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; transition: transform .7s var(--ease); }
.bc-event::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg, rgba(13, 42, 79, .95) 0%, rgba(13, 42, 79, .6) 50%, rgba(13, 42, 79, .15) 100%); }
.bc-event::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: var(--secondary); transform: scaleX(0); transform-origin: left; transition: transform .4s var(--ease); }
.bc-cell.has-event .bc-num { margin: -3px 0 0 -3px; background: var(--white); color: var(--primary); box-shadow: 0 4px 10px rgba(13, 42, 79, .25); }
.bc-cell.has-event.is-today .bc-num { background: var(--secondary); color: var(--white); }
.bc-time { display: inline-flex; align-items: center; gap: 6px; font-family: var(--font-head); font-size: 13px; font-weight: 600; color: var(--secondary); }
.bc-title { font-family: var(--font-head); font-size: 15px; font-weight: 600; line-height: 1.2; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.bc-event .news-tag { align-self: flex-start; padding: 2px 6px; font-size: 10px; }
.bc-event:hover img { transform: scale(1.08); }
.bc-event:hover::after { transform: scaleX(1); }
.bc-cell.is-past .bc-event img { filter: grayscale(.6); }
.bc-cell.is-past .bc-event::before { background: linear-gradient(0deg, rgba(54, 65, 77, .95) 0%, rgba(54, 65, 77, .6) 55%, rgba(54, 65, 77, .2) 100%); }
.bc-more {
  position: absolute;
  z-index: 2;
  top: 9px; right: 9px;
  padding: 3px 8px;
  background: var(--secondary);
  font-family: var(--font-head);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .5px;
  color: var(--white);
  transition: background .2s;
}
.bc-more:hover { background: var(--primary); }
.bigcal-legend { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 24px; padding: 14px 24px; border-top: 1px solid var(--grey); font-size: 13px; color: var(--text-muted); }
.bigcal-legend span { display: inline-flex; align-items: center; gap: 8px; }
.lg-today { width: 14px; height: 14px; background: var(--secondary); }
.lg-event { width: 14px; height: 14px; background: linear-gradient(0deg, var(--primary-darker), var(--primary)); }
.lg-past { width: 14px; height: 14px; background: #4b5866; }
.bigcal-empty { display: none; padding: 40px 24px; text-align: center; color: var(--text-muted); border-top: 1px solid var(--grey); }
.bigcal-empty.is-visible { display: block; }

@media (max-width: 1200px) {
  .bc-cell { min-height: 118px; }
  .bc-title { -webkit-line-clamp: 1; }
}
/* Mobil: takvim gündem listesine dönüşür */
@media (max-width: 767.98px) {
  .bigcal-grid { display: block; }
  .bc-wd, .bc-cell:not(.has-event) { display: none; }
  .bc-cell { min-height: 0; padding: 0; border-right: 0; display: grid; grid-template-columns: 64px minmax(0, 1fr); }
  .bc-cell.is-out { display: none; }
  .bc-num { margin: 0 !important; height: auto; min-height: 100%; box-shadow: none !important; flex-direction: column; font-size: 24px; color: var(--primary) !important; background: var(--light) !important; }
  .bc-cell.is-today .bc-num { background: var(--secondary) !important; color: var(--white) !important; }
  .bc-event { position: relative; inset: auto; min-height: 120px; }
  .bc-more { top: 8px; right: 8px; }
  .bigcal-title { font-size: 28px; }
}

/* =========================================================
   Basın Bültenleri — liste & detay
   ========================================================= */
.bulletin-list { border-top: 1px solid var(--grey); }
.bulletin { animation: nlIn .4s var(--ease) both; animation-delay: calc(var(--i) * 40ms); }
.bulletin a {
  position: relative;
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  padding: 24px 20px;
  border-bottom: 1px solid var(--grey);
  transition: background .25s var(--ease);
}
.bulletin a::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--secondary); transform: scaleY(0); transition: transform .3s var(--ease); }
.bulletin a:hover { background: var(--light); }
.bulletin a:hover::before { transform: scaleY(1); }
.bl-no { align-self: stretch; display: flex; flex-direction: column; justify-content: center; padding-right: 20px; border-right: 1px solid var(--grey); text-align: center; font-family: var(--font-head); line-height: 1; }
.bl-no small { font-size: 11px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; color: var(--text-muted); }
.bl-no b { margin-top: 6px; font-size: 40px; font-weight: 700; color: transparent; -webkit-text-stroke: 1.2px var(--primary); transition: color .25s; }
.bl-no em { margin-top: 6px; font-style: normal; font-size: 13px; font-weight: 600; letter-spacing: 1px; color: var(--text-accent); }
.bulletin a:hover .bl-no b { color: var(--primary); }
.bl-date { display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-head); font-size: 14px; color: var(--text-muted); }
.bl-date i { color: var(--secondary); }
.bl-title { display: block; margin-top: 6px; font-family: var(--font-head); font-size: 21px; font-weight: 600; line-height: 1.2; color: var(--text); transition: color .2s; }
.bl-sum { margin-top: 6px; font-size: 15px; line-height: 1.6; color: var(--text-muted); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.bulletin a:hover .bl-title { color: var(--primary); }
.bl-actions { display: flex; align-items: center; gap: 8px; }
.bl-pdf { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 10px; border: 1px solid var(--grey); font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1px; color: var(--text-muted); }
.bl-pdf i { color: #c0392b; }

.press-stamp {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 24px;
  font-family: var(--font-head);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--primary);
}
.press-stamp::before, .press-stamp::after { content: ""; flex: 1; height: 1px; background: var(--grey); }
.press-stamp span { display: inline-flex; align-items: center; gap: 10px; }
.press-stamp i { color: var(--secondary); }
.press-sign { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; margin-top: 32px; padding-top: 20px; border-top: 1px solid var(--grey); text-align: right; font-family: var(--font-head); }
.press-sign b { font-size: 20px; font-weight: 600; color: var(--primary); }
.press-sign small { font-size: 14px; color: var(--text-muted); }
.press-images { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.press-images figure { animation: nlIn .4s var(--ease) both; }
.press-images .nl-thumb { aspect-ratio: 16 / 10; cursor: zoom-in; }
.press-images figcaption { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 12px; font-family: var(--font-head); font-size: 15px; font-weight: 600; color: var(--text); }
.press-images figcaption a { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; letter-spacing: 1px; text-transform: uppercase; color: var(--text-accent); }
.press-images figcaption a:hover { color: var(--primary); }
#pressArticle > .content-block { margin-top: 48px; }

@media (max-width: 1200px) {
  .bulletin a { grid-template-columns: 96px minmax(0, 1fr); }
  .bl-actions { grid-column: 2; }
  .press-images { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .bulletin a { grid-template-columns: 1fr; gap: 12px; }
  .bl-no { flex-direction: row; align-items: baseline; gap: 10px; padding: 0 0 12px; border-right: 0; border-bottom: 1px solid var(--grey); text-align: left; }
  .bl-no b { margin: 0; font-size: 30px; }
  .bl-no em { margin: 0; }
  .bl-actions { grid-column: 1; }
  .press-images { grid-template-columns: 1fr; }
}

/* Anasayfa footer — beyaz */
.page > .site-footer { background: var(--white); color: var(--text-muted); border-top: 1px solid var(--grey); }
.page > .site-footer .footer-links a,
.page > .site-footer .footer-cookie { color: var(--text-muted); }
.page > .site-footer .footer-links a:hover,
.page > .site-footer .footer-cookie:hover { color: var(--primary); }

/* =========================================================
   Projeler — liste & detay
   ========================================================= */
.stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 40px; border: 1px solid var(--grey); }
.stat { position: relative; display: flex; align-items: center; gap: 16px; padding: 22px 20px; border-right: 1px solid var(--grey); transition: background .25s var(--ease); }
.stat:last-child { border-right: 0; }
.stat:hover { background: var(--light); }
.stat::before { content: ""; position: absolute; left: -1px; right: -1px; top: -1px; height: 3px; background: var(--secondary); transform: scaleX(0); transform-origin: left; transition: transform .35s var(--ease); }
.stat:hover::before { transform: scaleX(1); }
.stat > i { flex-shrink: 0; width: 48px; height: 48px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 18px; }
.stat b { display: block; font-family: var(--font-head); font-size: 40px; font-weight: 700; line-height: 1; color: var(--primary); }
.stat small { display: block; margin-top: 4px; font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: var(--text-muted); }

.pj-status {
  position: absolute;
  z-index: 1;
  top: 12px; right: 12px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 10px;
  font-family: var(--font-head);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--white);
  box-shadow: 0 6px 14px rgba(13, 42, 79, .25);
}
.pj-status--done { background: var(--primary); }
.pj-status--ongoing { background: var(--secondary); }
.pj-status--planned { background: #4b5866; }
.pj-progress { display: block; margin-top: 12px; }
.pj-progress-head { display: flex; justify-content: space-between; font-family: var(--font-head); font-size: 13px; font-weight: 600; color: var(--text-muted); }
.pj-progress-head b { color: var(--primary); }
.pj-bar { display: block; height: 6px; margin-top: 6px; background: var(--grey); overflow: hidden; }
.pj-bar span { display: block; height: 100%; width: var(--p); background: linear-gradient(90deg, var(--secondary-dark), var(--secondary)); transition: width 1s var(--ease); }
.pj-bar--done span { background: var(--primary); }

/* Detay: ilerleme paneli */
.pj-panel { margin-top: 28px; }
.pj-panel .cta-text strong { font-size: 52px; }
.pj-panel .pj-bar { height: 8px; margin-top: 12px; background: rgba(255, 255, 255, .18); }
.pj-dates { position: relative; z-index: 1; display: flex; gap: 8px; }
.pj-dates .cd-box { min-width: 120px; text-align: left; padding: 12px 14px; }
.pj-dates .cd-box b { font-size: 22px; }

/* Aşamalar */
.step { position: relative; }
.step.is-done .step-num { color: var(--primary); -webkit-text-stroke: 0; }
.step.is-done::after {
  content: "\f00c";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  top: 16px; right: 16px;
  width: 26px; height: 26px;
  display: grid; place-items: center;
  border-radius: 50%;
  background: var(--primary);
  color: var(--white);
  font-size: 11px;
}
.step.is-active::after {
  content: "";
  position: absolute;
  top: 22px; right: 22px;
  width: 12px; height: 12px;
  border-radius: 50%;
  background: var(--secondary);
  animation: pulseDot 1.6s ease-in-out infinite;
}
.project-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 28px; }
.project-facts dd a { color: var(--primary); text-decoration: underline; text-decoration-color: rgba(var(--secondary-rgb), .6); text-underline-offset: 3px; }
#projectArticle > .content-block { margin-top: 48px; }

@media (max-width: 1200px) {
  .stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stat:nth-child(2) { border-right: 0; }
  .stat:nth-child(-n+2) { border-bottom: 1px solid var(--grey); }
  .project-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .stats, .project-facts { grid-template-columns: 1fr; }
  .stat { border-right: 0; border-bottom: 1px solid var(--grey); }
  .pj-dates { width: 100%; }
  .pj-dates .cd-box { flex: 1; min-width: 0; }
}

/* Arama butonu — menü satırında, Hızlı Menü'nün sağında */
.main-nav .header-search {
  flex-shrink: 0;
  align-self: stretch;
  width: 52px;
  height: auto;
  border: 0;
  border-radius: 0;
  background: var(--primary);
  color: var(--white);
  font-size: 16px;
  transition: background .25s var(--ease);
}
.main-nav .header-search:hover { background: var(--primary-dark); color: var(--white); }
@media (max-width: 991.98px) {
  .main-nav .header-search { align-self: auto; width: auto; height: 48px; margin: 8px 20px 0; }
}

/* =========================================================
   İletişim
   ========================================================= */
.inner-content section[id] { scroll-margin-top: 130px; }
.contact-cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--grey); border-left: 1px solid var(--grey); }
.contact-card { position: relative; display: flex; flex-direction: column; padding: 26px 22px; border-right: 1px solid var(--grey); border-bottom: 1px solid var(--grey); transition: background .25s var(--ease); }
.contact-card::before { content: ""; position: absolute; left: -1px; top: 0; bottom: 0; width: 3px; background: var(--secondary); transform: scaleY(0); transition: transform .3s var(--ease); }
.contact-card:hover { background: var(--light); }
.contact-card:hover::before { transform: scaleY(1); }
.contact-card > i { width: 52px; height: 52px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 20px; transition: background .25s, color .25s; }
.contact-card:hover > i { background: var(--secondary); color: var(--white); }
.contact-card small { margin-top: 18px; font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; color: var(--text-accent); }
.contact-card b { margin-top: 6px; font-family: var(--font-head); font-size: 22px; font-weight: 600; line-height: 1.2; color: var(--primary); word-break: break-word; }
.contact-card p { flex: 1; margin-top: 6px; font-size: 14px; line-height: 1.6; color: var(--text-muted); }
.contact-card a.card-act { display: inline-flex; align-items: center; gap: 8px; margin-top: 16px; font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: var(--text-accent); }
.contact-card a.card-act i { transition: transform .25s var(--ease); }
.contact-card a.card-act:hover { color: var(--primary); }
.contact-card a.card-act:hover i { transform: translateX(4px); }

.map-frame { position: relative; aspect-ratio: 21 / 9; overflow: hidden; background: var(--light); border: 5px solid var(--white); box-shadow: 0 0 0 1px rgba(var(--primary-rgb), .12), 0 12px 28px rgba(13, 42, 79, .18); }
.map-frame iframe { width: 100%; height: 100%; border: 0; display: block; filter: saturate(.85); }
.map-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-top: 18px; }
.map-bar address { display: flex; align-items: center; gap: 12px; font-style: normal; font-size: 15px; color: var(--text); }
.map-bar address i { width: 40px; height: 40px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); }
.map-bar .btn { height: 46px; }
.hours { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 24px; border: 1px solid var(--grey); }
.hours div { padding: 18px 20px; border-right: 1px solid var(--grey); }
.hours div:last-child { border-right: 0; }
.hours small { display: block; font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: var(--text-muted); }
.hours b { display: block; margin-top: 4px; font-family: var(--font-head); font-size: 20px; font-weight: 600; color: var(--primary); }
.hours b.is-closed { color: var(--text-accent); }

.phonebook-tools { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 16px; }
.phonebook-tools .qm-search { width: 320px; }
.phonebook .doc-text small b { color: var(--primary); }
.phonebook li.is-hidden { display: none; }

.social-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.social-card { display: flex; align-items: center; gap: 14px; padding: 18px; border: 1px solid var(--grey); transition: background .25s, border-color .25s, transform .25s var(--ease); }
.social-card i { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 50%; background: var(--primary); color: var(--white); font-size: 18px; transition: background .25s; }
.social-card b { display: block; font-family: var(--font-head); font-size: 18px; font-weight: 600; color: var(--text); }
.social-card small { font-size: 13px; color: var(--text-muted); }
.social-card:hover { background: var(--light); border-color: rgba(var(--primary-rgb), .2); transform: translateY(-2px); }
.social-card:hover i { background: var(--secondary); }

@media (max-width: 1200px) {
  .contact-cards, .social-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .map-frame { aspect-ratio: 16 / 9; }
}
@media (max-width: 640px) {
  .contact-cards, .social-grid, .hours { grid-template-columns: 1fr; }
  .hours div { border-right: 0; border-bottom: 1px solid var(--grey); }
  .phonebook-tools { flex-direction: column; align-items: stretch; }
  .phonebook-tools .qm-search { width: auto; }
  .map-frame { aspect-ratio: 4 / 3; }
}

/* =========================================================
   Global sayfa geçiş yükleyicisi
   ========================================================= */
.page-loader { display: none; }
.js .page-loader {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at 50% 42%, rgba(var(--primary-rgb), .06) 0%, rgba(var(--primary-rgb), 0) 55%),
    var(--white);
  transition: opacity .45s var(--ease), visibility .45s;
}
.js .page-loader::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 4px; background: var(--secondary); }
.js .page-loader.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; }
.pl-inner { display: flex; flex-direction: column; align-items: center; transform: translateY(-4%); }
.pl-logo { position: relative; width: 64px; height: 64px; }
.pl-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 3px solid rgba(var(--primary-rgb), .1);
  border-top-color: var(--secondary);
  border-right-color: var(--secondary);
  animation: plSpin .9s linear infinite;
}
@keyframes plSpin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .pl-ring { animation: none; }
  }

/* =========================================================
   Yakutiye bölümü
   ========================================================= */
/* Tarihi mekanlar */
.monument-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--grey); border-left: 1px solid var(--grey); }
.monument { position: relative; display: flex; flex-direction: column; padding: 28px 28px 24px; border-right: 1px solid var(--grey); border-bottom: 1px solid var(--grey); transition: background .25s var(--ease); }
.monument::before { content: ""; position: absolute; left: -1px; top: 0; bottom: 0; width: 3px; background: var(--secondary); transform: scaleY(0); transition: transform .3s var(--ease); }
.monument:hover { background: var(--light); }
.monument:hover::before { transform: scaleY(1); }
.monument-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.monument-year { font-family: var(--font-head); font-size: 46px; font-weight: 700; line-height: 1; color: transparent; -webkit-text-stroke: 1.2px var(--primary); transition: color .25s; }
.monument:hover .monument-year { color: var(--primary); }
.monument-top > i { width: 48px; height: 48px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 18px; transition: background .25s, color .25s; }
.monument:hover .monument-top > i { background: var(--secondary); color: var(--white); }
.monument-era { margin-top: 14px; font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; color: var(--text-accent); }
.monument h3 { margin-top: 4px; font-family: var(--font-head); font-size: 24px; font-weight: 600; line-height: 1.15; color: var(--text); }
.monument p { flex: 1; margin-top: 10px; font-size: 15px; line-height: 1.7; color: var(--text-muted); }
.monument-foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--grey); font-size: 13px; color: var(--text-muted); }
.monument-foot span { display: inline-flex; align-items: center; gap: 6px; }
.monument-foot span i { color: var(--secondary); }
.monument-foot a { display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: var(--text-accent); }
.monument-foot a:hover { color: var(--primary); }

/* Mahalleler */
.letters { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 20px; }
.letters button { min-width: 36px; height: 36px; padding: 0 8px; border: 1px solid var(--grey); font-family: var(--font-head); font-size: 15px; font-weight: 600; color: var(--text-muted); transition: background .2s, color .2s, border-color .2s; }
.letters button:hover { border-color: var(--primary); color: var(--primary); }
.letters button.is-active { background: var(--primary); border-color: var(--primary); color: var(--white); }
.letters button:disabled { opacity: .35; cursor: default; border-color: var(--grey); color: var(--text-muted); }
.mahalle .unit-name { font-size: 22px; }
.mahalle-info { margin-top: 10px; display: flex; flex-direction: column; gap: 6px; font-size: 14px; color: var(--text-muted); }
.mahalle-info span { display: flex; align-items: center; gap: 8px; }
.mahalle-info i { width: 14px; color: var(--secondary); font-size: 12px; }

/* Nasıl gidilir */
.route-buttons { display: flex; flex-wrap: wrap; gap: 8px; }
.route-buttons .btn { height: 46px; }

/* Kent rehberi */
.guide .doc-text small { display: inline-flex; align-items: center; gap: 6px; }
.guide li.is-hidden { display: none; }
.emergency { margin-bottom: 32px; }

/* Fotoğraflarla Yakutiye */
.city-photos button { animation-delay: calc(var(--i) * 35ms); }

@media (max-width: 991.98px) {
  .monument-grid { grid-template-columns: 1fr; }
}

/* =========================================================
   Demografik yapı — grafikler
   ========================================================= */
:root { --chart-1: #1d4f91; --chart-2: #2a93d0; --chart-grid: #e4e7eb; --chart-ink: #5b6573; }
.chart-grid2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.chart-card { position: relative; border: 1px solid var(--grey); background: var(--white); }
.chart-card + .chart-card, .chart-card + .chart-grid2, .chart-grid2 + .chart-card { margin-top: 24px; }
.chart-head { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 12px; padding: 20px 22px 0; }
.chart-title { font-family: var(--font-head); font-size: 20px; font-weight: 600; color: var(--text); }
.chart-sub { margin-top: 2px; font-size: 13px; color: var(--text-muted); }
.chart-toggle { display: inline-flex; border: 1px solid var(--grey); }
.chart-toggle button { height: 30px; padding: 0 12px; font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--text-muted); }
.chart-toggle button + button { border-left: 1px solid var(--grey); }
.chart-toggle button.is-active { background: var(--primary); color: var(--white); }
.chart-body { padding: 16px 22px 20px; }
.chart-body svg { display: block; width: 100%; height: auto; overflow: visible; }
.chart-body .axis text, .chart-body .lbl { font-family: var(--font-head); font-size: 12px; fill: var(--chart-ink); }
.chart-body .val { font-family: var(--font-head); font-size: 13px; font-weight: 600; fill: var(--text); }
.chart-body .grid line { stroke: var(--chart-grid); stroke-width: 1; }
.chart-body .base { stroke: #c8ced6; stroke-width: 1; }
.chart-body .hit { fill: transparent; cursor: pointer; }
.chart-body .mark { transition: opacity .2s; }
.chart-body svg.is-hovering .mark { opacity: .45; }
.chart-body svg.is-hovering .mark.is-on { opacity: 1; }
.chart-table { display: none; width: 100%; border-collapse: collapse; font-size: 14px; }
.chart-table th, .chart-table td { padding: 10px 12px; border-bottom: 1px solid var(--grey); text-align: left; }
.chart-table th { font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--text-muted); }
.chart-table td:last-child, .chart-table th:last-child { text-align: right; font-variant-numeric: tabular-nums; }
.chart-card.show-table .chart-table { display: table; }
.chart-card.show-table .chart-viz { display: none; }
.chart-legend { display: flex; flex-wrap: wrap; gap: 6px 18px; margin-top: 14px; font-size: 13px; color: var(--text); }
.chart-legend span { display: inline-flex; align-items: center; gap: 8px; }
.chart-legend i { width: 12px; height: 12px; border-radius: 3px; }
.chart-tip {
  position: absolute;
  z-index: 5;
  pointer-events: none;
  padding: 8px 12px;
  background: var(--primary-darker);
  color: var(--white);
  font-size: 13px;
  line-height: 1.4;
  box-shadow: 0 8px 20px rgba(13, 42, 79, .25);
  opacity: 0;
  transform: translate(-50%, calc(-100% - 10px));
  transition: opacity .15s;
  white-space: nowrap;
}
.chart-tip b { display: block; font-family: var(--font-head); font-size: 16px; }
.chart-tip.is-on { opacity: 1; }
.chart-source { display: flex; align-items: center; gap: 8px; margin-top: 16px; font-size: 13px; color: var(--text-muted); }
.chart-source i { color: var(--secondary); }
.stats--text .stat b { font-size: 32px; }

@media (max-width: 991.98px) { .chart-grid2 { grid-template-columns: 1fr; } }

.chart-grid2 > .chart-card + .chart-card { margin-top: 0; }
.chart-card.show-table .chart-legend { display: none; }

/* =========================================================
   e-Hizmet sayfaları
   ========================================================= */
.is-hidden { display: none !important; }
/* e-Belediye giriş alanı */
.eh-hero { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); border: 1px solid var(--grey); }
.eh-main { position: relative; overflow: hidden; padding: 36px; background: linear-gradient(150deg, var(--primary) 0%, var(--primary-dark) 100%); color: var(--white); }
.eh-main::after { content: "\f3ed"; font-family: "Font Awesome 6 Free"; font-weight: 900; position: absolute; right: -20px; bottom: -40px; font-size: 200px; color: rgba(255, 255, 255, .05); }
.eh-main .mf-kicker { margin: 0; color: var(--secondary); }
.eh-main h2 { margin-top: 10px; font-family: var(--font-head); font-size: 38px; font-weight: 600; line-height: 1.05; }
.eh-main p { margin-top: 12px; max-width: 460px; font-size: 15px; line-height: 1.7; color: rgba(255, 255, 255, .8); }
.eh-actions { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.btn-light { background: var(--white); color: var(--primary); }
.btn-light:hover { background: var(--secondary); color: var(--white); }
.btn-line-light { border: 1px solid rgba(255, 255, 255, .45); color: var(--white); }
.btn-line-light:hover { background: var(--white); color: var(--primary); }
.eh-side { padding: 30px 32px; }

/* Sorgu kartı */
.query { border: 1px solid var(--grey); }
.query-head { display: flex; align-items: center; gap: 16px; padding: 22px 26px; border-bottom: 1px solid var(--grey); background: linear-gradient(180deg, var(--white) 0%, var(--light) 100%); }
.query-head > i { flex-shrink: 0; width: 52px; height: 52px; display: grid; place-items: center; background: var(--secondary); color: var(--white); font-size: 20px; }
.query-head h2 { font-family: var(--font-head); font-size: 24px; font-weight: 600; color: var(--primary); }
.query-head p { margin-top: 2px; font-size: 14px; color: var(--text-muted); }
.query-body { padding: 26px; }
.query-body .form-actions { border-top: 0; padding-top: 0; }
.query-body .form-actions .btn { margin-top: 4px; }
.query-result { margin-top: 32px; padding-top: 28px; border-top: 1px solid var(--grey); animation: nlIn .45s var(--ease) both; }
.result-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 12px; margin-bottom: 20px; }
.result-id { display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px; background: var(--light); font-family: var(--font-head); font-size: 15px; font-weight: 600; letter-spacing: 1px; color: var(--primary); }
.result-id i { color: var(--secondary); }

/* Veri tablosu */
.data-table { width: 100%; border-collapse: collapse; font-size: 15px; }
.data-table th { padding: 12px 14px; border-bottom: 2px solid var(--primary); text-align: left; font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: var(--primary); background: var(--light); }
.data-table td { padding: 14px; border-bottom: 1px solid var(--grey); color: var(--text); vertical-align: middle; }
.data-table th:last-child, .data-table td:last-child { text-align: right; font-variant-numeric: tabular-nums; }
.data-table td b { font-family: var(--font-head); font-size: 17px; font-weight: 600; }
.data-table tbody tr { transition: background .2s, opacity .2s; }
.data-table tbody tr:hover { background: var(--light); }
.data-table tr.is-off { opacity: .5; }
.data-table input[type="checkbox"] { width: 18px; height: 18px; accent-color: var(--secondary); cursor: pointer; }
.data-table .status { height: 24px; font-size: 11px; margin-left: 6px; }
.pay-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-top: 20px; padding: 20px 24px; background: linear-gradient(120deg, var(--primary) 0%, var(--primary-dark) 100%); color: var(--white); }
.pay-bar small { display: block; font-family: var(--font-head); font-size: 13px; letter-spacing: 1.4px; text-transform: uppercase; color: var(--secondary); }
.pay-bar b { display: block; margin-top: 2px; font-family: var(--font-head); font-size: 34px; font-weight: 700; line-height: 1; }
.pay-bar .btn { height: 50px; }
.pay-bar .btn:disabled { opacity: .6; cursor: not-allowed; }
.pay-bar .btn-primary:hover:not(:disabled) { background: var(--white); color: var(--primary); }
.pay-note { display: flex; align-items: flex-start; gap: 10px; margin-top: 16px; padding: 12px 16px; border-left: 3px solid var(--secondary); background: rgba(var(--secondary-rgb), .08); font-size: 14px; line-height: 1.6; color: var(--text-muted); }
.pay-note i { margin-top: 3px; color: var(--text-accent); }
.trust { display: flex; flex-wrap: wrap; gap: 10px 24px; margin-top: 18px; font-size: 13px; color: var(--text-muted); }
.trust span { display: inline-flex; align-items: center; gap: 8px; }
.trust i { color: var(--primary); font-size: 16px; }
.imar-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 0; }
.track-steps { margin: 24px 0 0; }
.track-steps .step-text small { display: inline-block; margin-top: 6px; font-family: var(--font-head); font-size: 13px; font-weight: 600; color: var(--primary); }

/* Hizmet rehberi akordeonu */
.svc-item summary { gap: 14px; justify-content: flex-start; }
.svc-item summary::after { margin-left: auto; }
.svc-ico { flex-shrink: 0; width: 42px; height: 42px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 16px; transition: background .25s, color .25s; }
.svc-item[open] .svc-ico, .svc-item summary:hover .svc-ico { background: var(--secondary); color: var(--white); }
.svc-name { display: block; }
.svc-unit { display: block; margin-top: 2px; font-family: var(--font-body); font-size: 13px; font-weight: 400; color: var(--text-muted); }
.svc-body { padding: 4px 24px 24px 80px; background: var(--light); }
.svc-body > p { font-size: 15px; line-height: 1.7; color: var(--text); }
.svc-meta { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 16px; }
.svc-meta div { padding: 12px 14px; background: var(--white); border: 1px solid var(--grey); }
.svc-meta small { display: block; font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: var(--text-muted); }
.svc-meta b { display: block; margin-top: 3px; font-family: var(--font-head); font-size: 17px; font-weight: 600; color: var(--primary); }
.svc-docs { margin-top: 16px; }
.svc-docs h4 { font-family: var(--font-head); font-size: 14px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: var(--primary); }
.svc-docs li { display: flex; gap: 10px; margin-top: 8px; font-size: 15px; color: var(--text); }
.svc-docs li::before { content: "\f00c"; font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: 12px; margin-top: 3px; color: var(--secondary); }
.svc-links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.svc-links .btn { height: 42px; padding: 0 16px; font-size: 13px; }

/* Başvuru rehberi sekmeleri */
.guide-tabs { margin-bottom: 28px; }
.guide-tabs .nl-chip { display: inline-flex; align-items: center; gap: 8px; height: 44px; }
.guide-tabs .nl-chip i { color: var(--secondary); }
.guide-tabs .nl-chip.is-active i { color: var(--secondary); }
.guide-panel { animation: nlIn .4s var(--ease) both; }
.guide-panel .steps { margin-bottom: 28px; }
.guide-panel .steps .step { grid-row: auto; }

/* Matbu dilekçeler */
.petition .doc-text small b { color: var(--primary); }
.doc-actions { display: flex; flex-shrink: 0; gap: 6px; }
.doc-actions a { display: inline-flex; align-items: center; gap: 6px; height: 34px; padding: 0 12px; border: 1px solid var(--grey); font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1px; color: var(--text-muted); transition: background .2s, color .2s, border-color .2s; }
.doc-actions a .fa-file-pdf { color: #c0392b; }
.doc-actions a .fa-file-word { color: #2b579a; }
.doc-actions a:hover { background: var(--primary); border-color: var(--primary); color: var(--white); }
.doc-actions a:hover i { color: var(--white); }
.doc-list .petition > div { display: flex; align-items: center; gap: 16px; padding: 16px 20px; border-bottom: 1px solid var(--grey); transition: background .25s; }
.doc-list .petition > div:hover { background: var(--light); }

@media (max-width: 1200px) {
  .eh-hero { grid-template-columns: 1fr; }
  .imar-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .eh-main { padding: 26px 20px; }
  .eh-main h2 { font-size: 30px; }
  .query-body { padding: 20px 16px; }
  .imar-facts, .svc-meta { grid-template-columns: 1fr; }
  .svc-body { padding: 4px 16px 20px; }
  .data-table thead { display: none; }
  .data-table tr { display: grid; grid-template-columns: 32px 1fr auto; gap: 4px 10px; padding: 12px 0; border-bottom: 1px solid var(--grey); }
  .data-table td { padding: 0; border: 0; }
  .data-table td:nth-child(n+3) { grid-column: 2 / -1; text-align: left; }
  .doc-list .petition > div { flex-wrap: wrap; }
}

/* =========================================================
   Başkanlık & Meclis / Encümen
   ========================================================= */
.people { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.people--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.person { position: relative; display: flex; flex-direction: column; border: 1px solid var(--grey); background: var(--white); transition: box-shadow .3s var(--ease), border-color .3s var(--ease), transform .3s var(--ease); }
.person:hover { border-color: rgba(var(--primary-rgb), .2); box-shadow: 0 16px 34px rgba(13, 42, 79, .12); transform: translateY(-3px); }
.person.is-hidden { display: none; }
.person-photo { position: relative; display: grid; place-items: center; aspect-ratio: 4 / 3.4; overflow: hidden; background: linear-gradient(180deg, var(--light) 0%, #e3e9f1 100%); color: rgba(var(--primary-rgb), .2); font-size: 64px; }
.person-photo img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.person-photo::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: var(--secondary); transform: scaleX(.2); transform-origin: left; transition: transform .45s var(--ease); }
.person:hover .person-photo::after { transform: scaleX(1); }
.person-badge { position: absolute; z-index: 1; top: 12px; left: 12px; padding: 4px 10px; background: var(--primary); font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--white); }
.person-body { flex: 1; display: flex; flex-direction: column; padding: 20px 22px 22px; }
.person-role { font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; color: var(--text-accent); }
.person-name { margin-top: 4px; font-family: var(--font-head); font-size: 24px; font-weight: 600; line-height: 1.15; color: var(--primary); }
.people--4 .person-name { font-size: 20px; }
.person-meta { display: flex; flex-direction: column; gap: 6px; margin-top: 12px; font-size: 14px; color: var(--text-muted); }
.person-meta span { display: flex; align-items: center; gap: 8px; }
.person-meta i { width: 14px; font-size: 12px; color: var(--secondary); }
.person-units { margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--grey); }
.person-units small { display: block; margin-bottom: 8px; font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: var(--text-muted); }
.person-units a { display: flex; align-items: center; gap: 8px; padding: 6px 0; font-family: var(--font-head); font-size: 15px; font-weight: 600; color: var(--text); transition: color .2s, transform .25s var(--ease); }
.person-units a::before { content: "\f054"; font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: 9px; color: var(--secondary); }
.person-units a:hover { color: var(--primary); transform: translateX(3px); }
.chip-row { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 12px; }
.chip-row span { padding: 3px 8px; border: 1px solid rgba(var(--primary-rgb), .25); font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: .6px; color: var(--primary); }

/* Önceki başkanlar */
.terms { border-top: 1px solid var(--grey); }
.term { position: relative; display: grid; grid-template-columns: 200px 96px minmax(0, 1fr) auto; gap: 24px; align-items: center; padding: 22px 20px; border-bottom: 1px solid var(--grey); transition: background .25s; }
.term::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--secondary); transform: scaleY(0); transition: transform .3s var(--ease); }
.term:hover { background: var(--light); }
.term:hover::before { transform: scaleY(1); }
.term-years { font-family: var(--font-head); font-size: 34px; font-weight: 700; line-height: 1; color: transparent; -webkit-text-stroke: 1.2px var(--primary); transition: color .25s; }
.term:hover .term-years { color: var(--primary); }
.term-avatar { width: 96px; height: 96px; display: grid; place-items: center; border-radius: 50%; overflow: hidden; background: linear-gradient(180deg, var(--light), #e3e9f1); border: 3px solid var(--white); box-shadow: 0 0 0 1px var(--grey); color: rgba(var(--primary-rgb), .25); font-size: 36px; }
.term-avatar img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.term-name { font-family: var(--font-head); font-size: 24px; font-weight: 600; color: var(--primary); }
.term-info { margin-top: 4px; font-size: 14px; color: var(--text-muted); }
.term.is-current { background: linear-gradient(120deg, var(--primary) 0%, var(--primary-dark) 100%); border-bottom-color: transparent; }
.term.is-current .term-years { color: var(--white); -webkit-text-stroke: 0; }
.term.is-current .term-name { color: var(--white); }
.term.is-current .term-info { color: rgba(255, 255, 255, .75); }
.term.is-current .term-avatar { border-color: var(--secondary); box-shadow: none; }

/* Karar tablosu */
.data-table--plain td a.dl { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 12px; border: 1px solid var(--grey); font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1px; color: var(--text-muted); transition: background .2s, color .2s, border-color .2s; }
.data-table--plain td a.dl i { color: #c0392b; }
.data-table--plain td a.dl:hover { background: var(--primary); border-color: var(--primary); color: var(--white); }
.data-table--plain td a.dl:hover i { color: var(--white); }
.data-table--plain .k-no { font-family: var(--font-head); font-size: 17px; font-weight: 700; color: var(--primary); white-space: nowrap; }
.data-table--plain .k-date { white-space: nowrap; color: var(--text-muted); }
.data-table--plain tr.is-hidden { display: none; }

@media (max-width: 1200px) {
  .people, .people--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .term { grid-template-columns: 150px 80px minmax(0, 1fr); }
  .term-avatar { width: 80px; height: 80px; }
  .term > .status, .term > .td-arrow { grid-column: 3; }
}
@media (max-width: 640px) {
  .people, .people--4 { grid-template-columns: 1fr; }
  .term { grid-template-columns: 64px minmax(0, 1fr); gap: 6px 16px; }
  .term-years { grid-column: 1 / -1; font-size: 26px; }
  .term-avatar { width: 64px; height: 64px; font-size: 24px; }
  .term > .status { grid-column: 2; }
  .data-table--plain tr { display: block; padding: 12px 0; }
  .data-table--plain td { display: block; padding: 2px 0; text-align: left !important; }
}

/* =========================================================
   Teşkilat şeması
   ========================================================= */
.org-tools { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 28px; }
.org { --line: #c3cdd9; }
.org-top { position: relative; display: grid; grid-template-columns: 1fr minmax(0, 340px) 1fr; align-items: center; gap: 0; }
.org-top::after { content: ""; position: absolute; left: 50%; bottom: -36px; width: 2px; height: 36px; margin-left: -1px; background: var(--line); }
.org-council { position: relative; display: flex; align-items: center; gap: 12px; padding: 14px 16px; border: 1px dashed var(--line); background: var(--white); transition: border-color .2s, background .2s; }
.org-council:hover { border-color: var(--secondary); background: var(--light); }
.org-council i { flex-shrink: 0; width: 38px; height: 38px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); }
.org-council b { display: block; font-family: var(--font-head); font-size: 17px; font-weight: 600; color: var(--primary); }
.org-council small { font-size: 12px; color: var(--text-muted); }
.org-top .org-council:first-child { margin-right: 24px; }
.org-top .org-council:last-child { margin-left: 24px; }
.org-top .org-council:first-child::after, .org-top .org-council:last-child::before { content: ""; position: absolute; top: 50%; width: 24px; border-top: 2px dashed var(--line); }
.org-top .org-council:first-child::after { right: -26px; }
.org-top .org-council:last-child::before { left: -26px; }
.org-head { position: relative; display: flex; align-items: center; gap: 16px; padding: 16px 20px; background: linear-gradient(140deg, var(--primary) 0%, var(--primary-dark) 100%); color: var(--white); box-shadow: 0 14px 32px rgba(13, 42, 79, .22); border-bottom: 4px solid var(--secondary); }
.org-head .org-av { width: 64px; height: 64px; border-radius: 50%; overflow: hidden; border: 3px solid var(--secondary); background: var(--white); flex-shrink: 0; }
.org-head .org-av img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.org-head small { display: block; font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; color: var(--secondary); }
.org-head b { display: block; margin-top: 2px; font-family: var(--font-head); font-size: 22px; font-weight: 600; }

.org-cols { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin-top: 36px; padding-top: 28px; }
.org-cols::before { content: ""; position: absolute; top: 0; left: calc((100% - 60px) / 8 - 1px); right: calc((100% - 60px) / 8 - 1px); height: 2px; background: var(--line); }
.org-col { position: relative; }
.org-col::before { content: ""; position: absolute; top: -28px; left: 50%; width: 2px; height: 28px; margin-left: -1px; background: var(--line); }
.org-lead { display: flex; align-items: center; gap: 12px; padding: 14px 16px; background: var(--white); border: 1px solid var(--grey); border-top: 3px solid var(--primary); }
.org-col--staff .org-lead { border-top-color: var(--secondary); }
.org-lead i { flex-shrink: 0; width: 40px; height: 40px; display: grid; place-items: center; background: var(--primary); color: var(--white); font-size: 15px; }
.org-col--staff .org-lead i { background: var(--secondary); }
.org-lead small { display: block; font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: var(--text-accent); }
.org-lead b { display: block; font-family: var(--font-head); font-size: 17px; font-weight: 600; line-height: 1.15; color: var(--primary); }
.org-units { position: relative; margin: 0 0 0 20px; padding: 10px 0 0; }
.org-units::before { content: ""; position: absolute; left: 0; top: 0; bottom: 22px; width: 2px; background: var(--line); }
.org-units li { position: relative; padding-left: 18px; margin-top: 8px; }
.org-units li::before { content: ""; position: absolute; left: 0; top: 50%; width: 14px; height: 2px; background: var(--line); }
.org-units a { display: flex; align-items: center; gap: 10px; padding: 10px 12px; background: var(--white); border: 1px solid var(--grey); font-family: var(--font-head); font-size: 15px; font-weight: 600; line-height: 1.2; color: var(--text); transition: background .2s, border-color .2s, color .2s, transform .25s var(--ease); }
.org-units a i { flex-shrink: 0; width: 28px; height: 28px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 12px; transition: background .2s, color .2s; }
.org-units a:hover { border-color: rgba(var(--primary-rgb), .25); background: var(--light); color: var(--primary); transform: translateX(3px); }
.org-units a:hover i { background: var(--secondary); color: var(--white); }
.org-legend { display: flex; flex-wrap: wrap; gap: 8px 24px; margin-top: 32px; padding-top: 16px; border-top: 1px solid var(--grey); font-size: 13px; color: var(--text-muted); }
.org-legend span { display: inline-flex; align-items: center; gap: 8px; }
.org-legend i { width: 14px; height: 14px; }
.lg-a { background: var(--primary); } .lg-b { background: var(--secondary); } .lg-c { border: 2px dashed #c3cdd9; }

@media (max-width: 1200px) {
  .org-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 40px; }
  .org-cols::before { display: none; }
  .org-col::before { display: none; }
}
@media (max-width: 991.98px) {
  .org-top { grid-template-columns: 1fr; gap: 12px; }
  .org-top .org-council { margin: 0 !important; }
  .org-top .org-council::after, .org-top .org-council::before { display: none; }
  .org-top .org-head { order: -1; }
}
@media (max-width: 640px) { .org-cols { grid-template-columns: 1fr; } }
@media print {
  .site-header, .page-hero, .inner-side, .footer-full, .cookie, .org-tools, .page-loader { display: none !important; }
  .inner { display: block; padding: 0; }
}
.person--current { border-color: var(--primary); box-shadow: 0 0 0 1px var(--primary); }
.person--current .person-badge { background: var(--secondary); }
.person--current .person-photo::after { transform: scaleX(1); }
.org-top { grid-template-columns: 1fr minmax(0, 300px) 1fr; }
.org-mayor { text-align: left; }
.org-mayor .person-name { font-size: 26px; }
@media (max-width: 991.98px) { .org-top .org-mayor { order: -1; max-width: 340px; width: 100%; margin: 0 auto; } }

/* =========================================================
   Kurumsal: Misyon-Vizyon, Logo, Stratejik Plan
   ========================================================= */
.mv { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.mv-card { position: relative; overflow: hidden; padding: 36px 34px 34px; border: 1px solid var(--grey); background: var(--white); }
.mv-card::after { content: attr(data-mark); position: absolute; right: -6px; bottom: -34px; font-family: var(--font-head); font-size: 150px; font-weight: 700; line-height: 1; color: rgba(var(--primary-rgb), .05); pointer-events: none; }
.mv-card--blue { background: linear-gradient(150deg, var(--primary) 0%, var(--primary-dark) 100%); border-color: transparent; color: var(--white); }
.mv-card--blue::after { color: rgba(255, 255, 255, .06); }
.mv-card > i { width: 56px; height: 56px; display: grid; place-items: center; background: var(--secondary); color: var(--white); font-size: 22px; }
.mv-card h2 { margin-top: 20px; font-family: var(--font-head); font-size: 34px; font-weight: 600; color: var(--primary); }
.mv-card--blue h2 { color: var(--white); }
.mv-card p { position: relative; z-index: 1; margin-top: 12px; font-size: 18px; line-height: 1.75; color: var(--text); }
.mv-card--blue p { color: rgba(255, 255, 255, .88); }

.logo-previews { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.logo-prev { border: 1px solid var(--grey); }
.logo-prev-stage { display: grid; place-items: center; aspect-ratio: 4 / 3; background: var(--white); }
.logo-prev-stage img { width: 46%; height: auto; }
.logo-prev--blue .logo-prev-stage { background: var(--primary); }
.logo-prev--blue .logo-prev-stage span { display: grid; place-items: center; width: 52%; aspect-ratio: 1; border-radius: 50%; background: var(--white); }
.logo-prev--blue .logo-prev-stage span img { width: 78%; }
.logo-prev--mono .logo-prev-stage img { filter: grayscale(1) contrast(1.4); }
.logo-prev-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 14px 16px; border-top: 1px solid var(--grey); }
.logo-prev-foot b { font-family: var(--font-head); font-size: 16px; font-weight: 600; color: var(--text); }
.swatches { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.swatch { text-align: left; border: 1px solid var(--grey); transition: box-shadow .25s var(--ease), transform .25s var(--ease); }
.swatch:hover { box-shadow: 0 12px 26px rgba(13, 42, 79, .12); transform: translateY(-2px); }
.swatch-color { display: block; height: 110px; }
.swatch-info { display: block; padding: 12px 14px; }
.swatch-info b { display: block; font-family: var(--font-head); font-size: 17px; font-weight: 600; color: var(--text); }
.swatch-info small { display: flex; align-items: center; justify-content: space-between; margin-top: 4px; font-family: var(--font-head); font-size: 14px; letter-spacing: .5px; color: var(--text-muted); }
.swatch-info small i { color: var(--secondary); }
.swatch.is-copied .swatch-info small::after { content: "Kopyalandı"; color: var(--text-accent); font-weight: 600; }
.swatch.is-copied .swatch-info small i { display: none; }
.type-specimens { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.type-spec { padding: 26px; border: 1px solid var(--grey); }
.type-spec .big { font-size: 64px; line-height: 1; color: var(--primary); }
.type-spec b { display: block; margin-top: 14px; font-family: var(--font-head); font-size: 19px; font-weight: 600; color: var(--text); }
.type-spec small { font-size: 14px; color: var(--text-muted); }
.rules { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.rule { padding: 22px 24px; border: 1px solid var(--grey); border-top: 3px solid #2e7d4f; }
.rule--no { border-top-color: #c0392b; }
.rule h3 { display: flex; align-items: center; gap: 10px; font-family: var(--font-head); font-size: 20px; font-weight: 600; color: var(--text); }
.rule h3 i { color: #2e7d4f; }
.rule--no h3 i { color: #c0392b; }
.rule li { display: flex; gap: 10px; margin-top: 10px; font-size: 15px; line-height: 1.6; color: var(--text); }
.rule li::before { content: "\f00c"; font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: 12px; margin-top: 4px; color: #2e7d4f; }
.rule--no li::before { content: "\f00d"; color: #c0392b; }

.goal-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--grey); border-left: 1px solid var(--grey); }
.goal { position: relative; padding: 26px 24px; border-right: 1px solid var(--grey); border-bottom: 1px solid var(--grey); transition: background .25s; }
.goal::before { content: ""; position: absolute; left: -1px; top: 0; bottom: 0; width: 3px; background: var(--secondary); transform: scaleY(0); transition: transform .3s var(--ease); }
.goal:hover { background: var(--light); }
.goal:hover::before { transform: scaleY(1); }
.goal-code { font-family: var(--font-head); font-size: 40px; font-weight: 700; line-height: 1; color: transparent; -webkit-text-stroke: 1.2px var(--primary); }
.goal:hover .goal-code { color: var(--primary); }
.goal h3 { margin-top: 12px; font-family: var(--font-head); font-size: 21px; font-weight: 600; color: var(--text); }
.goal p { margin-top: 6px; font-size: 15px; line-height: 1.65; color: var(--text-muted); }
.goal .chip-row { margin-top: 14px; }
.doc-hero { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 28px; align-items: center; padding: 28px; border: 1px solid var(--grey); background: linear-gradient(180deg, var(--white) 0%, var(--light) 100%); }
.doc-cover { position: relative; display: flex; flex-direction: column; justify-content: space-between; aspect-ratio: 1 / 1.41; padding: 18px 16px; background: linear-gradient(160deg, var(--primary) 0%, var(--primary-darker) 100%); color: var(--white); box-shadow: 0 18px 34px rgba(13, 42, 79, .28); border-left: 6px solid var(--secondary); }
.doc-cover small { font-family: var(--font-head); font-size: 11px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; color: var(--secondary); }
.doc-cover b { font-family: var(--font-head); font-size: 22px; font-weight: 600; line-height: 1.1; }
.doc-cover em { font-style: normal; font-family: var(--font-head); font-size: 34px; font-weight: 700; color: var(--secondary); }
.doc-hero h2 { font-family: var(--font-head); font-size: 32px; font-weight: 600; line-height: 1.1; color: var(--primary); }
.doc-hero p { margin-top: 10px; font-size: 16px; line-height: 1.7; color: var(--text-muted); }
.doc-hero .svc-links { margin-top: 20px; }
.doc-hero .chip-row { margin-top: 14px; }

@media (max-width: 1200px) {
  .logo-previews { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .swatches { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 991.98px) {
  .mv, .rules, .type-specimens, .goal-grid { grid-template-columns: 1fr; }
  .doc-hero { grid-template-columns: 1fr; }
  .doc-cover { max-width: 220px; }
}
@media (max-width: 640px) {
  .logo-previews, .swatches { grid-template-columns: 1fr; }
  .mv-card { padding: 26px 22px; }
}

/* =========================================================
   Ek sayfalar (Çorum karşılaştırması)
   ========================================================= */
.cam-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.cam { display: flex; flex-direction: column; text-align: left; border: 1px solid var(--grey); transition: box-shadow .3s var(--ease), transform .3s var(--ease); }
.cam:hover { box-shadow: 0 14px 30px rgba(13, 42, 79, .14); transform: translateY(-2px); }
.cam-screen { position: relative; display: grid; place-items: center; aspect-ratio: 16 / 9; background: radial-gradient(circle at 50% 40%, #1a3a66 0%, var(--primary-darker) 70%); color: rgba(255, 255, 255, .35); font-size: 40px; overflow: hidden; }
.cam-screen::after { content: ""; position: absolute; inset: 0; background: repeating-linear-gradient(0deg, rgba(255, 255, 255, .03) 0 2px, transparent 2px 4px); }
.cam-live { position: absolute; z-index: 1; top: 10px; left: 10px; display: inline-flex; align-items: center; gap: 6px; padding: 4px 9px; background: #c0392b; font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1px; color: var(--white); }
.cam-live::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--white); animation: pulseDot 1.6s ease-in-out infinite; }
.cam-play { position: absolute; z-index: 1; width: 56px; height: 56px; display: grid; place-items: center; border-radius: 50%; background: var(--secondary); color: var(--white); font-size: 18px; padding-left: 3px; opacity: 0; transform: scale(.85); transition: opacity .25s, transform .25s var(--ease); }
.cam:hover .cam-play { opacity: 1; transform: none; }
.cam-body { padding: 14px 16px; }
.cam-body b { display: block; font-family: var(--font-head); font-size: 18px; font-weight: 600; color: var(--text); }
.cam-body small { display: flex; align-items: center; gap: 6px; margin-top: 4px; font-size: 13px; color: var(--text-muted); }
.cam-body small i { color: var(--secondary); }

.pick-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--grey); border-left: 1px solid var(--grey); counter-reset: pick; }
.pick { position: relative; display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 18px; padding: 24px; border-right: 1px solid var(--grey); border-bottom: 1px solid var(--grey); counter-increment: pick; transition: background .25s; }
.pick::before { content: counter(pick, decimal-leading-zero); font-family: var(--font-head); font-size: 44px; font-weight: 700; line-height: 1; color: transparent; -webkit-text-stroke: 1.2px var(--secondary-dark); transition: color .25s; }
.pick::after { content: ""; position: absolute; left: -1px; top: 0; bottom: 0; width: 3px; background: var(--secondary); transform: scaleY(0); transition: transform .3s var(--ease); }
.pick:hover { background: var(--light); }
.pick:hover::before { color: var(--text-accent); }
.pick:hover::after { transform: scaleY(1); }
.pick h3 { display: flex; align-items: center; gap: 10px; font-family: var(--font-head); font-size: 21px; font-weight: 600; color: var(--primary); }
.pick h3 i { font-size: 16px; color: var(--secondary); }
.pick p { margin-top: 6px; font-size: 15px; line-height: 1.7; color: var(--text-muted); }
.pick .chip-row { margin-top: 10px; }

.route-card .goal-code { font-size: 32px; }
.route-card .goal-code small { font-size: 16px; -webkit-text-stroke: 0; color: var(--text-muted); margin-left: 4px; }
.price-up { color: #2e7d4f; }
.price-down { color: #c0392b; }
.field input[type="file"] { height: auto; padding: 12px 16px; font-size: 14px; }

@media (max-width: 1200px) { .cam-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 991.98px) { .pick-grid { grid-template-columns: 1fr; } }
@media (max-width: 640px) { .cam-grid { grid-template-columns: 1fr; } .pick { grid-template-columns: 1fr; gap: 8px; } }

/* =========================================================
   Mega menü — sabit yükseklik + kaydırılabilir gruplar
   ========================================================= */
@media (min-width: 992px) {
  .mega-inner { --mega-h: min(560px, calc(100vh - 150px)); max-height: var(--mega-h); align-items: stretch; }
  .mega-intro { display: flex; flex-direction: column; }
  .mega-groups {
    max-height: calc(var(--mega-h) - 76px);
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-right: 14px;
    scrollbar-width: thin;
    scrollbar-color: rgba(var(--primary-rgb), .3) transparent;
  }
  .mega-groups::-webkit-scrollbar { width: 6px; }
  .mega-groups::-webkit-scrollbar-track { background: var(--light); }
  .mega-groups::-webkit-scrollbar-thumb { background: rgba(var(--primary-rgb), .3); }
  .mega-groups::-webkit-scrollbar-thumb:hover { background: var(--secondary); }
  .mega-groups.is-scrollable:not(.is-end) {
    -webkit-mask-image: linear-gradient(180deg, #000 calc(100% - 56px), transparent 100%);
    mask-image: linear-gradient(180deg, #000 calc(100% - 56px), transparent 100%);
  }
  .mega-groups .mega-group-title { position: sticky; top: 0; z-index: 1; background: var(--white); padding-top: 2px; }
  .mega-hint {
    display: none;
    align-items: center;
    gap: 10px;
    margin-top: auto;
    padding-top: 20px;
    font-family: var(--font-head);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    color: var(--text-muted);
  }
  .mega-hint i {
    width: 28px; height: 28px;
    display: grid; place-items: center;
    border: 1px solid rgba(var(--primary-rgb), .25);
    border-radius: 50%;
    color: var(--secondary);
    animation: megaHint 1.6s ease-in-out infinite;
  }
  .mega-inner.has-scroll .mega-hint { display: flex; }
  .mega-inner.has-scroll.is-end .mega-hint { opacity: .4; }
  .mega-inner.has-scroll.is-end .mega-hint i { animation: none; }
  @keyframes megaHint { 0%, 100% { transform: translateY(-2px); } 50% { transform: translateY(3px); } }
}
/* Nöbetçi eczane: ilçe seçimi */
.district-bar { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 20px; padding: 20px 22px; border: 1px solid var(--grey); background: linear-gradient(180deg, var(--white) 0%, var(--light) 100%); }
.district-bar .field { flex: 0 1 320px; }
.district-bar .list-count { margin: 0; }
.district-bar .district-name { color: var(--primary); }
.contact-card.is-hidden { display: none; }
.district-bar ~ .contact-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 1200px) { .district-bar ~ .contact-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .district-bar ~ .contact-cards { grid-template-columns: 1fr; } }

/* Uzun yan menü: yalnızca bağlantı listesi kayar, kart her zaman görünür */
@media (min-width: 992px) {
  .inner-side--scroll { max-height: none; overflow: visible; padding-right: 0; }
  .inner-side--scroll .side-nav { position: relative; }
  .inner-side--scroll .lg-tabs {
    max-height: max(300px, calc(100vh - 470px));
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-right: 6px;
    border-bottom: 1px solid var(--grey);
    scrollbar-width: thin;
    scrollbar-color: rgba(var(--primary-rgb), .3) transparent;
  }
  .inner-side--scroll .lg-tabs::-webkit-scrollbar { width: 5px; }
  .inner-side--scroll .lg-tabs::-webkit-scrollbar-track { background: var(--light); }
  .inner-side--scroll .lg-tabs::-webkit-scrollbar-thumb { background: rgba(var(--primary-rgb), .3); }
  .inner-side--scroll .lg-tabs::-webkit-scrollbar-thumb:hover { background: var(--secondary); }
  .inner-side--scroll .lg-tabs .lg-tab:last-child { border-bottom: 0; }
  .inner-side--scroll .side-nav::after {
    content: "";
    position: absolute;
    left: 0; right: 6px; bottom: 1px;
    height: 36px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0), var(--white));
    pointer-events: none;
    transition: opacity .2s;
  }
  .inner-side--scroll .side-nav.is-end::after { opacity: 0; }
}
@media (max-width: 991.98px) {
  .inner-side--scroll .lg-tabs { max-height: none; }
}
@media (min-width: 992px) {
  .inner-side--scroll { gap: 20px; }
  .inner-side--scroll .mega-feature--call { padding: 20px 22px; }
  .inner-side--scroll .mega-feature--call .mf-icon { width: 40px; height: 40px; font-size: 16px; }
  .inner-side--scroll .mega-feature--call .mf-kicker { margin-top: 12px; }
  .inner-side--scroll .mega-feature--call .mf-title { font-size: 26px; }
  .inner-side--scroll .mega-feature--call .mf-btn { margin-top: 12px; }
}

/* Bölüm sonrası gelen CTA bantlarına üst boşluk */
.inner-content > * + .cta-band { margin-top: 64px; }

/* =========================================================
   Uygulama geneli scrollbar — düz ve sade
   ========================================================= */
html { scrollbar-width: thin; scrollbar-color: #b9c3cf #f1f3f6; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #f1f3f6; }
::-webkit-scrollbar-thumb { background: #b9c3cf; border: 2px solid #f1f3f6; }
::-webkit-scrollbar-thumb:hover { background: var(--primary); }
::-webkit-scrollbar-thumb:active { background: var(--primary-dark); }
::-webkit-scrollbar-corner { background: #f1f3f6; }
/* İç alanlarda (menü, liste vb.) daha ince */
.mega-groups::-webkit-scrollbar, .lg-tabs::-webkit-scrollbar, .lb-thumbs::-webkit-scrollbar, .qm::-webkit-scrollbar { width: 6px; height: 6px; }
.mega-groups::-webkit-scrollbar-thumb, .lg-tabs::-webkit-scrollbar-thumb, .lb-thumbs::-webkit-scrollbar-thumb, .qm::-webkit-scrollbar-thumb { border: 0; }
/* Koyu zeminler (lightbox) */
.lb-thumbs { scrollbar-color: rgba(255, 255, 255, .3) transparent; }
.lb-thumbs::-webkit-scrollbar-track { background: transparent; }
.lb-thumbs::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, .3); }
.lb-thumbs::-webkit-scrollbar-thumb:hover { background: var(--secondary); }
/* Scrollbar rengi: kurumsal turuncu */
html, .mega-groups, .inner-side--scroll .lg-tabs, .qm { scrollbar-color: #0a7ab9 #f1f3f6; }
::-webkit-scrollbar-thumb,
.mega-groups::-webkit-scrollbar-thumb,
.inner-side--scroll .lg-tabs::-webkit-scrollbar-thumb { background: #0a7ab9; }
::-webkit-scrollbar-thumb:hover,
.mega-groups::-webkit-scrollbar-thumb:hover,
.inner-side--scroll .lg-tabs::-webkit-scrollbar-thumb:hover { background: var(--secondary-dark); }
::-webkit-scrollbar-thumb:active { background: #01588a; }
/* Scrollbar rengi: kurumsal mavi */
html, .mega-groups, .inner-side--scroll .lg-tabs, .qm { scrollbar-color: #1d4f91 #f1f3f6; }
::-webkit-scrollbar-thumb,
.mega-groups::-webkit-scrollbar-thumb,
.inner-side--scroll .lg-tabs::-webkit-scrollbar-thumb { background: #1d4f91; }
::-webkit-scrollbar-thumb:hover,
.mega-groups::-webkit-scrollbar-thumb:hover,
.inner-side--scroll .lg-tabs::-webkit-scrollbar-thumb:hover { background: var(--primary-dark); }
::-webkit-scrollbar-thumb:active { background: var(--primary-darker); }

/* Menü üst çizgisi kaldırıldı */
.main-nav > ul > li > a::before { background: none; }
/* Scrollbar zemini */
html, .mega-groups, .inner-side--scroll .lg-tabs, .qm { scrollbar-color: #1d4f91 #f4f6f9; }
::-webkit-scrollbar-track, ::-webkit-scrollbar-corner,
.mega-groups::-webkit-scrollbar-track, .inner-side--scroll .lg-tabs::-webkit-scrollbar-track { background: #f4f6f9; }
::-webkit-scrollbar-thumb { border-color: #f4f6f9; }
/* Scrollbar: tutamaç #f4f6f9 */
html, .mega-groups, .inner-side--scroll .lg-tabs, .qm { scrollbar-color: #f4f6f9 #ffffff; }
::-webkit-scrollbar-track, ::-webkit-scrollbar-corner,
.mega-groups::-webkit-scrollbar-track, .inner-side--scroll .lg-tabs::-webkit-scrollbar-track { background: #ffffff; }
::-webkit-scrollbar-thumb,
.mega-groups::-webkit-scrollbar-thumb,
.inner-side--scroll .lg-tabs::-webkit-scrollbar-thumb { background: #f4f6f9; border: 2px solid #ffffff; box-shadow: inset 0 0 0 1px #dfe4ea; }
::-webkit-scrollbar-thumb:hover,
.mega-groups::-webkit-scrollbar-thumb:hover,
.inner-side--scroll .lg-tabs::-webkit-scrollbar-thumb:hover { background: #e4e8ee; }
::-webkit-scrollbar-thumb:active { background: #d5dbe3; }
/* Scrollbar: çelik gri-mavi (kurumsal mavinin nötr tonu) */
html, .mega-groups, .inner-side--scroll .lg-tabs, .qm { scrollbar-color: #8a9bb0 #f4f6f9; }
::-webkit-scrollbar-track, ::-webkit-scrollbar-corner,
.mega-groups::-webkit-scrollbar-track, .inner-side--scroll .lg-tabs::-webkit-scrollbar-track { background: #f4f6f9; }
::-webkit-scrollbar-thumb,
.mega-groups::-webkit-scrollbar-thumb,
.inner-side--scroll .lg-tabs::-webkit-scrollbar-thumb { background: #8a9bb0; border: 2px solid #f4f6f9; box-shadow: none; }
.mega-groups::-webkit-scrollbar-thumb, .inner-side--scroll .lg-tabs::-webkit-scrollbar-thumb { border: 0; }
::-webkit-scrollbar-thumb:hover,
.mega-groups::-webkit-scrollbar-thumb:hover,
.inner-side--scroll .lg-tabs::-webkit-scrollbar-thumb:hover { background: #1d4f91; }
::-webkit-scrollbar-thumb:active { background: #143a6b; }

/* Mobil taşma düzeltmesi: grid öğeleri içeriğe göre genişlemesin */
@media (max-width: 991.98px) {
  .inner { grid-template-columns: minmax(0, 1fr); }
  .inner > *, .inner-side > *, .side-nav { min-width: 0; max-width: 100%; }
  .side-nav .lg-tabs { max-width: 100%; overflow-x: auto; overflow-y: hidden; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
  .side-nav .lg-tabs::-webkit-scrollbar { display: none; }
  .data-table { display: block; max-width: 100%; }
  .data-table tbody { display: block; }
}
@media (max-width: 991.98px) {
  .person[style*="grid-template-columns"] { display: flex !important; flex-direction: column; }
  .person[style*="grid-template-columns"] .person-photo { min-height: 240px !important; }
  .person[style*="grid-template-columns"] .person-body { padding: 22px !important; }
}

/* Halk Lokantası haftalık menü */
.menu-week { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
.menu-day { display: flex; flex-direction: column; border: 1px solid var(--grey); background: var(--white); transition: box-shadow .25s var(--ease), transform .25s var(--ease); }
.menu-day:hover { box-shadow: 0 12px 26px rgba(13, 42, 79, .12); transform: translateY(-2px); }
.menu-day header { display: flex; align-items: center; gap: 10px; padding: 14px 16px; border-bottom: 1px solid var(--grey); font-family: var(--font-head); line-height: 1; }
.menu-day header b { font-size: 32px; font-weight: 700; color: var(--primary); }
.menu-day header small { display: block; font-size: 12px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--text-accent); }
.menu-day header em { display: block; margin-top: 3px; font-style: normal; font-size: 13px; color: var(--text-muted); }
.menu-day header .status { margin-left: auto; height: 24px; font-size: 11px; padding: 0 8px; }
.menu-day .info-list { flex: 1; padding: 4px 16px 14px; }
.menu-day .info-list li { font-family: var(--font-head); font-size: 16px; font-weight: 600; align-items: center; }
.menu-day footer { padding: 10px 16px; border-top: 1px solid var(--grey); font-size: 13px; color: var(--text-muted); }
.menu-day.is-today { border-color: var(--primary); box-shadow: 0 0 0 1px var(--primary); }
.menu-day.is-today header { background: linear-gradient(140deg, var(--primary) 0%, var(--primary-dark) 100%); border-bottom-color: transparent; }
.menu-day.is-today header b, .menu-day.is-today header em { color: var(--white); }
.menu-day.is-today header small { color: var(--secondary); }
@media (max-width: 1200px) { .menu-week { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 640px) { .menu-week { grid-template-columns: 1fr; } }

/* =========================================================
   Erişilebilirlik — renk kontrastı (WCAG 2.1 AA)
   ========================================================= */
:root { --text-accent-light: #ffffff; /* lacivert zeminlerde vurgu ikon/metinleri: beyaz */ --on-accent: #ffffff; /* vurgu zemini üzerindeki yazı/ikon: beyaz */ }
/* Koyu (mavi) zeminlerdeki küçük turuncu metinler */
.hero-kicker, .mega-feature--call .mf-kicker, .mf-btn, .mega-feature--tour .mf-kicker, .cta-text .mf-kicker,
.eh-main .mf-kicker, .pay-bar small, .org-head small, .doc-cover small, .doc-cover em,
.menu-day.is-today header small, .tour-slide:hover .tour-name, a.info-item:hover b,
.footer-links a:hover, .footer-cookie:hover, .page-hero .hero-kicker { color: var(--text-accent-light); }
.hero-kicker::before, .page-hero .hero-kicker::before { background: var(--text-accent-light); }
/* Turuncu zemin üzerindeki metinler: beyaz yerine lacivert (6.8:1) */
.btn-primary, .bc-more, .person--current .person-badge, .cookie .btn-primary,
.status--open::before { color: var(--on-accent); }
.btn-primary i { color: var(--on-accent); }
.qm-toggle, .qm-toggle i { color: var(--white); }
.btn-primary:hover, .btn-primary:hover i { color: var(--primary); }
.status--open::before { background: var(--secondary-dark); }
/* Hero: duraklat / oynat */
.hero-arrows .hero-pause { margin-left: 6px; }
.hero-content.is-paused .hero-progress span { animation: none; width: 0; }
.hero-content.is-paused .hero-pause { background: var(--secondary); border-color: var(--secondary); color: var(--on-accent); }

/* Sayfa araçları (yazı boyutu + yazdır) */
.page-hero-inner { position: relative; }
.page-tools { position: absolute; right: 0; bottom: 0; display: flex; align-items: center; gap: 4px; }
.page-tools button { min-width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 10px; border: 1px solid rgba(255, 255, 255, .35); font-family: var(--font-head); font-size: 16px; font-weight: 600; color: var(--white); transition: background .2s, border-color .2s, color .2s; }
.page-tools button[data-fs="-1"] { font-size: 13px; }
.page-tools button[data-fs="1"] { font-size: 19px; }
.page-tools button sup { font-size: .6em; margin-left: 1px; }
.page-tools button span { font-size: 13px; letter-spacing: 1px; text-transform: uppercase; }
.page-tools button:hover:not(:disabled), .page-tools button.is-active { background: var(--white); border-color: var(--white); color: var(--primary); }
.page-tools button:disabled { opacity: .4; cursor: not-allowed; }
.pt-sep { width: 1px; height: 22px; margin: 0 6px; background: rgba(255, 255, 255, .3); }
@media (max-width: 991.98px) { .page-tools { position: static; margin-top: 16px; } .page-tools button span { display: none; } }

/* Yazdırma: iç sayfalar */
@media print {
  @page { margin: 16mm; }
  body { background: #fff !important; }
  .site-header, .inner-side, .footer-full, .site-footer, .cookie, .page-loader, .qm, .lightbox, .page-tools, .share, .pager, .nl-more-wrap, .list-toolbar, .nl-filters, .form, .skip-link, .cta-band .btn, #related { display: none !important; }
  .page-hero { min-height: 0; padding: 0 0 12px; margin: 0 0 16px; background: none !important; border-bottom: 2px solid #1d4f91; color: #000; }
  .page-hero::before { display: none; }
  .page-hero-inner, .page-title, .page-lead, .breadcrumb ol, .breadcrumb [aria-current] { color: #000 !important; text-shadow: none; }
  .inner { display: block; padding: 0; max-width: none; }
  .inner-content { zoom: 1 !important; }
  .cta-band, .mv-card--blue, .doc-cover, .tender-band { background: #fff !important; color: #000 !important; border: 1px solid #999; }
  .cta-band *, .mv-card--blue * { color: #000 !important; }
  a[href^="http"]::after { content: " (" attr(href) ")"; font-size: 10px; color: #555; }
  .content-block, .faq-item, .data-table tr, .person, .goal, .service { break-inside: avoid; }
  details.faq-item:not([open]) .faq-body { display: block; }
}

/* =========================================================
   Footer: e-bülten + mobil uygulama, RSS, uygulama sayfası
   ========================================================= */
.visually-hidden { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.footer-top { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); max-width: 1400px; margin: 0 auto; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.footer-news, .footer-app { position: relative; display: flex; flex-wrap: wrap; align-items: center; gap: 18px 22px; padding: 34px 40px; }
.footer-app { border-left: 1px solid rgba(255, 255, 255, .1); }
.ft-icon { flex-shrink: 0; width: 52px; height: 52px; display: grid; place-items: center; background: var(--secondary); color: var(--on-accent); font-size: 20px; }
.ft-text h2 { font-family: var(--font-head); font-size: 24px; font-weight: 600; color: var(--white); }
.ft-text p { margin-top: 4px; font-size: 14px; color: rgba(255, 255, 255, .7); }
.ft-form { flex: 1 1 360px; display: flex; flex-wrap: wrap; gap: 8px; }
.ft-form .field { flex: 1 1 200px; gap: 4px; }
.ft-form input[type="email"] { height: 48px; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .2); border-bottom: 2px solid var(--secondary); color: var(--white); }
.ft-form input[type="email"]::placeholder { color: rgba(255, 255, 255, .55); }
.ft-form input[type="email"]:focus { background: rgba(255, 255, 255, .14); }
.ft-form .btn { height: 48px; }
.ft-form .ft-consent { flex-basis: 100%; }
.ft-form .check { color: rgba(255, 255, 255, .7); font-size: 13px; }
.ft-form .check a { color: var(--text-accent-light); }
.ft-form .check input { border-color: rgba(255, 255, 255, .4); background: transparent; }
.ft-form .field-error { color: #ffb4a8; }
.ft-form .field.has-error input { background: rgba(192, 57, 43, .15); }
.ft-success { flex-basis: 100%; padding: 18px 20px; border: 1px solid rgba(255, 255, 255, .15); border-top: 3px solid var(--secondary); text-align: left; }
.ft-success.is-visible { display: grid; grid-template-columns: auto 1fr; gap: 2px 14px; align-items: center; }
.ft-success > i { width: 40px; height: 40px; font-size: 16px; box-shadow: none; grid-row: span 2; color: var(--on-accent); }
.ft-success h3 { margin: 0; font-size: 20px; color: var(--white); }
.ft-success p { margin: 0; max-width: none; font-size: 14px; color: rgba(255, 255, 255, .7); }
.ft-success .ref { display: none; }
.store-badges { display: flex; flex-wrap: wrap; gap: 10px; }
.store-badge { display: inline-flex; align-items: center; gap: 10px; height: 52px; padding: 0 18px 0 14px; background: #000; border: 1px solid rgba(255, 255, 255, .25); color: var(--white); font-family: var(--font-head); font-size: 19px; font-weight: 600; line-height: 1; transition: background .2s, border-color .2s, transform .2s var(--ease); }
.store-badge i { font-size: 26px; }
.store-badge small { display: block; margin-bottom: 3px; font-size: 11px; font-weight: 500; letter-spacing: .5px; opacity: .8; }
.store-badge:hover { background: var(--primary-darker); border-color: var(--secondary); transform: translateY(-2px); }
.rss-btn i { color: #e5761f; }
.block-head--row .rss-btn { height: 42px; padding: 0 16px; font-size: 13px; }

.app-hero { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 32px; align-items: center; padding: 36px; border: 1px solid var(--grey); background: linear-gradient(180deg, var(--white) 0%, var(--light) 100%); }
.app-hero-text p { margin: 14px 0 22px; font-size: 16px; line-height: 1.7; color: var(--text-muted); }
.app-phone { justify-self: center; width: 200px; aspect-ratio: 9 / 18; padding: 12px; border-radius: 30px; background: var(--primary-darker); box-shadow: 0 24px 50px rgba(13, 42, 79, .3); }
.app-screen { height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; border-radius: 20px; background: linear-gradient(160deg, var(--primary) 0%, var(--primary-dark) 100%); color: var(--white); border-top: 4px solid var(--secondary); }
.app-screen i { font-size: 40px; color: var(--text-accent-light); }
.app-screen b { font-family: var(--font-head); font-size: 26px; }
.app-screen small { font-size: 12px; opacity: .75; }

@media (max-width: 991.98px) {
  .footer-top, .app-hero { grid-template-columns: 1fr; }
  .footer-app { border-left: 0; border-top: 1px solid rgba(255, 255, 255, .1); }
  .footer-news, .footer-app { padding: 28px 16px; }
  .app-hero { padding: 24px 18px; }
}

/* Onay kutuları: genel input dolgusunu sıfırla */
.field .check input[type="checkbox"] { width: 22px; height: 22px; padding: 0; border-width: 1.5px; flex: 0 0 22px; }
.ft-form .check input[type="checkbox"]:checked { background: var(--secondary); border-color: var(--secondary); }
.ft-form .check input[type="checkbox"]:checked::after { border-color: var(--on-accent); }

/* =========================================================
   index2 — kaydırılabilir anasayfa
   ========================================================= */
.home2 .hero { position: relative; display: block; height: min(78vh, 720px); min-height: 520px; }
.home2 .hero-content { top: 46%; }
.h2-wrap { max-width: 1400px; margin: 0 auto; padding: 0 40px; }
.h2-section { padding: 28px 0; background: var(--white); }
.h2-section:last-of-type { padding-bottom: 72px; }
.h2-section--first { padding-top: 0; }
.h2-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 12px 16px; min-height: 56px; margin-bottom: 18px; }
.h2-head .block-title { font-size: 30px; }
.h2-more { display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-head); font-size: 14px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: var(--primary); }
.h2-more i { font-size: 12px; transition: transform .25s var(--ease); }
.h2-more:hover { color: var(--text-accent); }
.h2-more:hover i { transform: translateX(4px); }
.h2-main { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 24px; align-items: stretch; }
.h2-main--rev { grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); }
.h2-main--even { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.h2-col { display: flex; flex-direction: column; min-width: 0; }

/* Hızlı erişim */
.h2-quick { position: relative; z-index: 5; margin: -56px 0 36px; }
.h2-quick ul { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); background: var(--white); box-shadow: 0 20px 44px rgba(13, 42, 79, .14); border-top: 3px solid var(--secondary); }
.h2-quick li + li { border-left: 1px solid var(--grey); }
.h2-quick a { display: flex; align-items: center; gap: 14px; padding: 22px 20px; transition: background .25s; }
.h2-quick a i { flex-shrink: 0; width: 44px; height: 44px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 18px; transition: background .25s, color .25s; }
.h2-quick a span { font-family: var(--font-head); font-size: 16px; font-weight: 600; line-height: 1.2; color: var(--text); }
.h2-quick a:hover { background: var(--light); }
.h2-quick a:hover i { background: var(--secondary); color: var(--on-accent); }

/* Haber slider */
.h2-slider { flex: 1; display: flex; flex-direction: column; background: var(--white); border: 1px solid var(--grey); border-top: 3px solid var(--primary); }
.h2-slides { flex: 1; display: grid; }
.h2-slide { grid-area: 1 / 1; display: flex; opacity: 0; visibility: hidden; transition: opacity .6s var(--ease), visibility .6s; }
.h2-slide.is-active { opacity: 1; visibility: visible; }
.h2-feature a { flex: 1; display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); }
.h2-feature-img { position: relative; overflow: hidden; min-height: 340px; background: var(--grey); }
.h2-feature-img::before { content: ""; position: absolute; inset: -24px; background: var(--bg) center / cover no-repeat; filter: blur(20px) brightness(.62) saturate(1.1); }
.h2-feature-img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform: scale(1.04); transition: transform 6s linear; }
.h2-slide.is-active .h2-feature-img img { transform: scale(1); }
.h2-feature-body { display: flex; flex-direction: column; padding: 30px 28px 26px; }
.h2-feature-body .nl-meta { margin-top: 0; }
.h2-feature-body .nl-meta::after { display: none; }
.h2-feature-title { margin-top: 16px; font-family: var(--font-head); font-size: 26px; font-weight: 600; line-height: 1.18; color: var(--text); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; transition: color .2s; }
.h2-feature a:hover .h2-feature-title { color: var(--primary); }
.h2-feature-lead { margin-top: 14px; font-size: 15.5px; line-height: 1.7; color: var(--text-muted); display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.h2-feature-more { margin-top: auto; padding-top: 20px; display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-head); font-size: 14px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: var(--primary); }
.h2-feature-more i { transition: transform .25s var(--ease); }
.h2-feature a:hover .h2-feature-more i { transform: translateX(4px); }
.h2-slider-bar { display: flex; align-items: center; gap: 20px; height: 56px; padding: 0 0 0 22px; border-top: 1px solid var(--grey); background: var(--light); }
.h2-slider-count { flex-shrink: 0; font-family: var(--font-head); font-size: 15px; color: var(--text-muted); }
.h2-slider-count b { font-size: 20px; font-weight: 700; color: var(--primary); }
.h2-slider-progress { flex: 1; height: 2px; background: var(--grey); overflow: hidden; }
.h2-slider-progress span { display: block; width: 0; height: 100%; background: var(--secondary); }
.h2-slider-nav { display: flex; align-self: stretch; }
.h2-slider-btn { width: 56px; display: grid; place-items: center; background: transparent; border: 0; border-left: 1px solid var(--grey); color: var(--primary); font-size: 14px; cursor: pointer; transition: background .25s, color .25s; }
.h2-slider-btn:hover { background: var(--primary); color: var(--white); }
.h2-slider-btn:focus-visible { outline: 2px solid var(--primary); outline-offset: -2px; }

/* Sekmeli liste paneli */
.h2-panel { flex: 1; display: flex; flex-direction: column; background: var(--white); border: 1px solid var(--grey); border-top: 3px solid var(--primary); }
.h2-tabs { display: flex; border-bottom: 1px solid var(--grey); }
.h2-tabs button { flex: 1; position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 10px; height: 60px; background: var(--light); border: 0; font-family: var(--font-head); font-size: 19px; font-weight: 600; color: var(--text-muted); cursor: pointer; transition: background .25s, color .25s; }
.h2-tabs button + button { border-left: 1px solid var(--grey); }
.h2-tabs button small { min-width: 24px; height: 22px; padding: 0 6px; display: inline-grid; place-items: center; background: rgba(var(--primary-rgb), .08); font-size: 12px; color: var(--primary); }
.h2-tabs button.is-active { background: var(--white); color: var(--primary); }
.h2-tabs button.is-active::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 3px; background: var(--secondary); }
.h2-tabs button:focus-visible { outline: 2px solid var(--primary); outline-offset: -2px; }
.h2-tabpanel { flex: 1; display: flex; flex-direction: column; }
.h2-tabpanel[hidden] { display: none; }
.h2-panel-title { display: flex; align-items: center; height: 60px; padding: 0 22px; border-bottom: 1px solid var(--grey); font-family: var(--font-head); font-size: 19px; font-weight: 600; color: var(--primary); }
.h2-rows { flex: 1; display: flex; flex-direction: column; }
.h2-rows li { flex: 1; display: flex; }
.h2-rows li + li { border-top: 1px solid var(--grey); }
.h2-rows a { flex: 1; display: flex; align-items: center; gap: 16px; padding: 16px 22px; transition: background .25s; }
.h2-rows a:hover { background: var(--light); }
.h2-rows .sn-date { width: 56px; }
.h2-row-text { flex: 1; min-width: 0; }
.h2-row-text b { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-family: var(--font-head); font-size: 17px; font-weight: 600; line-height: 1.3; color: var(--text); transition: color .2s; }
.h2-row-text small { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; margin-top: 6px; font-size: 13px; color: var(--text-muted); }
.h2-row-text small i { margin-right: 5px; color: var(--text-accent); }
.h2-row-text .td-left { font-weight: 600; color: var(--text-accent); }
.h2-rows a:hover .h2-row-text b { color: var(--primary); }
.h2-row-arrow { flex-shrink: 0; width: 28px; height: 28px; display: grid; place-items: center; border: 1px solid rgba(var(--primary-rgb), .3); border-radius: 50%; font-size: 11px; color: var(--primary); transition: background .25s, color .25s, border-color .25s; }
.h2-rows a:hover .h2-row-arrow { background: var(--primary); border-color: var(--primary); color: var(--white); }
.h2-panel-foot { display: flex; align-items: center; justify-content: space-between; height: 56px; padding: 0 22px; border-top: 1px solid var(--grey); background: var(--light); font-family: var(--font-head); font-size: 14px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: var(--primary); transition: background .25s, color .25s; }
.h2-panel-foot:hover { background: var(--primary); color: var(--white); }

/* Başkan kartı */
.h2-mayor { flex: 1; display: grid; grid-template-columns: 230px minmax(0, 1fr); background: var(--white); border: 1px solid var(--grey); }
.h2-mayor-photo { position: relative; overflow: hidden; background: linear-gradient(180deg, #e9eef5 0%, #d3dde9 100%); }
.h2-mayor-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: top; }
.h2-mayor-photo::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: var(--secondary); }
.h2-mayor-body { display: flex; flex-direction: column; padding: 30px 32px; }
.h2-mayor-name { font-family: var(--font-head); font-size: 34px; font-weight: 600; line-height: 1; color: var(--primary); }
.h2-mayor-role { margin-top: 6px; font-family: var(--font-head); font-size: 16px; color: var(--text-muted); }
.h2-quote { margin-top: 20px; padding-left: 18px; border-left: 3px solid var(--secondary); font-size: 15.5px; line-height: 1.7; color: var(--text); }
.h2-mayor-foot { margin-top: auto; padding-top: 22px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; }
.h2-mayor .svc-links { margin: 0; }
.h2-mayor .mayor-social { margin: 0; padding: 0; border: 0; }

/* e-Hizmetler */
.h2-svc { flex: 1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.h2-svc a { display: flex; align-items: center; gap: 14px; padding: 16px 18px; background: var(--white); border: 1px solid var(--grey); transition: border-color .25s, box-shadow .25s var(--ease); }
.h2-svc a > i { flex-shrink: 0; width: 44px; height: 44px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 18px; transition: background .25s, color .25s; }
.h2-svc b { display: block; font-family: var(--font-head); font-size: 17px; font-weight: 600; color: var(--text); }
.h2-svc small { display: block; margin-top: 2px; font-size: 13px; color: var(--text-muted); }
.h2-svc a:hover { border-color: rgba(var(--primary-rgb), .35); box-shadow: 0 10px 24px rgba(13, 42, 79, .08); }
.h2-svc a:hover > i { background: var(--primary); color: var(--white); }

/* Projeler */
.h2-section .stats { margin-bottom: 20px; background: var(--white); }
.h2-pj { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }

/* Keşfet + galeri */
.h2-explore { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 24px; align-items: stretch; }
.h2-discover { flex: 1; position: relative; overflow: hidden; display: flex; flex-direction: column; padding: 32px 30px; background: linear-gradient(150deg, var(--primary) 0%, var(--primary-darker) 100%); color: var(--white); }
.h2-discover::after { content: ""; position: absolute; right: -90px; bottom: -90px; width: 260px; height: 260px; border-radius: 50%; border: 44px solid rgba(255, 255, 255, .05); pointer-events: none; }
.h2-discover .qm-kicker { color: var(--text-accent-light); }
.h2-discover .block-title { margin-top: 6px; font-size: 32px; color: var(--white); }
.h2-discover-icon { width: 52px; height: 52px; display: grid; place-items: center; background: rgba(255, 255, 255, .08); color: var(--text-accent-light); font-size: 22px; }
.h2-discover p { margin-top: 18px; font-size: 15.5px; line-height: 1.7; color: rgba(255, 255, 255, .82); }
.h2-discover .svc-links { position: relative; z-index: 1; margin-top: auto; padding-top: 24px; }
.h2-albums { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }

@media (max-width: 1200px) {
  .h2-quick ul { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .h2-quick li:nth-child(4) { border-left: 0; }
  .h2-quick li:nth-child(n+4) { border-top: 1px solid var(--grey); }
  .h2-main, .h2-main--rev, .h2-main--even, .h2-explore { grid-template-columns: minmax(0, 1fr); }
  .h2-main--rev > .h2-col:first-child { order: 2; }
  .h2-rows li { flex: none; }
}
@media (max-width: 991.98px) {
  .home2 .hero { height: 72vh; min-height: 480px; margin-top: var(--header-h); }
  .h2-wrap { padding: 0 16px; }
  .h2-section { padding: 22px 0; }
  .h2-section:last-of-type { padding-bottom: 48px; }
  .h2-section--first { padding-top: 0; }
  .h2-quick { margin: -40px 0 28px; }
  .h2-head .block-title { font-size: 26px; }
  .h2-head { min-height: 0; }
  .h2-feature a { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto 1fr; }
  .h2-feature-img { min-height: 0; aspect-ratio: 16 / 10; }
  .h2-feature-body { padding: 22px; }
  .h2-feature-title { font-size: 22px; }
}
@media (max-width: 640px) {
  .h2-quick ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .h2-quick li:nth-child(odd) { border-left: 0; }
  .h2-quick li:nth-child(4) { border-left: 1px solid var(--grey); }
  .h2-quick li:nth-child(n+3) { border-top: 1px solid var(--grey); }
  .h2-quick a { flex-direction: column; gap: 10px; padding: 18px 10px; text-align: center; }
  .h2-slider-bar { gap: 12px; padding-left: 16px; }
  .h2-slider-btn { width: 48px; }
  .h2-svc, .h2-pj, .h2-albums { grid-template-columns: minmax(0, 1fr); }
  .h2-mayor { grid-template-columns: minmax(0, 1fr); }
  .h2-mayor-photo { height: 320px; }
  .h2-mayor-body { padding: 24px 20px; }
  .h2-rows a { padding: 14px 16px; }
  .h2-tabs button { font-size: 17px; }
}

/* Dahili rehber */
.dh-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.dh-steps li { display: flex; gap: 16px; padding: 20px; border: 1px solid var(--grey); border-top: 3px solid var(--primary); }
.dh-steps b { flex-shrink: 0; font-family: var(--font-head); font-size: 30px; font-weight: 700; line-height: 1; color: transparent; -webkit-text-stroke: 1px var(--primary); }
.dh-steps span { font-size: 14.5px; line-height: 1.6; color: var(--text-muted); }
.dh-steps strong { display: block; margin-bottom: 4px; font-family: var(--font-head); font-size: 18px; font-weight: 600; color: var(--text); }
.dh-select { flex: 0 1 340px; margin: 0; }
.dh-unit { display: inline-flex; align-items: center; gap: 10px; font-family: var(--font-head); font-size: 16px; font-weight: 600; color: var(--primary); }
.dh-unit i { width: 30px; height: 30px; flex-shrink: 0; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); font-size: 13px; }
.dh-unit:hover { color: var(--text-accent); }
.dh-table td:nth-child(3) { color: var(--text-muted); }
.dh-no { display: inline-flex; align-items: center; gap: 8px; height: 34px; padding: 0 14px; border: 1px solid rgba(var(--primary-rgb), .25); font-family: var(--font-head); font-size: 18px; font-weight: 700; color: var(--primary); font-variant-numeric: tabular-nums; transition: background .2s, color .2s, border-color .2s; }
.dh-no i { font-size: 12px; color: var(--text-accent); transition: color .2s; }
.dh-no:hover { background: var(--primary); border-color: var(--primary); color: var(--white); }
.dh-no:hover i { color: var(--white); }
@media (max-width: 991.98px) {
  .dh-steps { grid-template-columns: minmax(0, 1fr); }
  .dh-select { flex: 1 1 100%; }
}
.dh-stats .stat b { font-size: 28px; white-space: nowrap; }
.dh-toolbar { align-items: flex-end; }
@media (max-width: 1200px) { .dh-stats .stat b { font-size: 24px; } }

/* Meclis üyeleri: parti filtresi */
.party-filters { margin-bottom: 16px; }
.nl-chip small { display: inline-grid; place-items: center; min-width: 22px; height: 20px; margin-left: 8px; padding: 0 6px; background: rgba(var(--primary-rgb), .08); font-size: 12px; font-weight: 700; line-height: 1; color: var(--primary); }
.nl-chip.is-active small { background: rgba(255, 255, 255, .2); color: inherit; }

/* =========================================================
   Kurumsal sayfa başlığı (page-hero--corp)
   ========================================================= */
.page-hero--corp {
  display: block;
  min-height: 0;
  padding: 0 40px;
  background: linear-gradient(100deg, var(--primary-dark) 0%, var(--primary) 60%, #2a62a8 100%) !important;
  border-bottom: 0;
}
.page-hero--corp::before {
  inset: 0 0 auto 0;
  height: auto;
  bottom: 0;
  z-index: 0;
  background: repeating-linear-gradient(135deg, rgba(255, 255, 255, .05) 0 1px, transparent 1px 16px);
  -webkit-mask-image: linear-gradient(90deg, transparent 45%, #000 100%);
  mask-image: linear-gradient(90deg, transparent 45%, #000 100%);
  pointer-events: none;
}
.page-hero--corp .page-hero-inner {
  z-index: 1;
  max-width: none; /* header gibi tam genişlik: içerik logo plakasıyla aynı hizadan başlar */
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas: "crumb tools" "kicker tools" "title tools" "lead tools";
  column-gap: 32px;
  padding: 30px 0 22px;
  color: var(--white);
}
.page-hero--corp .breadcrumb { grid-area: crumb; }
.page-hero--corp .breadcrumb ol { font-size: 14px; letter-spacing: .3px; color: rgba(255, 255, 255, .72); }
.page-hero--corp .breadcrumb li:first-child a::before { content: "\f015"; font-family: "Font Awesome 6 Free"; font-weight: 900; margin-right: 7px; font-size: 12px; color: var(--text-accent-light); }
.page-hero--corp .breadcrumb li + li::before { color: var(--text-accent-light); }
.page-hero--corp .breadcrumb a:hover { color: var(--white); }
.page-hero--corp .breadcrumb [aria-current] { color: var(--white); font-weight: 600; }
.page-hero--corp .hero-kicker, .page-hero--corp .ph-mark { display: none; }
/* Detay sayfalarında kategori etiketi bilgi taşır: göster */
.page-hero--corp .hero-kicker:has(+ .page-title--sm) { grid-area: kicker; display: inline-flex; margin-top: 12px; font-size: 12px; color: var(--text-accent-light); }
.page-hero--corp .hero-kicker:has(+ .page-title--sm)::before { width: 24px; background: var(--text-accent-light); }
.page-hero--corp .page-title--sm { max-width: 1100px; margin-top: 6px; line-height: 1.15; }
.page-hero--corp .page-title { grid-area: title; margin-top: 8px; font-size: clamp(30px, 2.3vw, 36px); color: var(--white); text-shadow: none; }
.page-hero--corp .page-lead { grid-area: lead; max-width: 760px; margin-top: 4px; font-size: 15.5px; color: rgba(255, 255, 255, .8); }
.page-hero--corp .page-tools { grid-area: tools; position: static; align-self: end; }
.page-hero--corp .page-tools button { min-width: 34px; height: 34px; border-color: rgba(255, 255, 255, .3); background: rgba(255, 255, 255, .06); color: var(--white); }
.page-hero--corp .page-tools button:hover:not(:disabled), .page-hero--corp .page-tools button.is-active { background: var(--white); border-color: var(--white); color: var(--primary); }
.page-hero--corp .pt-sep { background: rgba(255, 255, 255, .25); }
/* Tüm sayfalar: içerik ve footer header/logo hizasında tam genişlik */
.inner, .footer-top, .footer-main, .h2-wrap { max-width: none; }
@media (max-width: 991.98px) {
  .page-hero--corp { padding: 0 16px; }
  .page-hero--corp::before { display: none; }
  .page-hero--corp .page-hero-inner { grid-template-columns: minmax(0, 1fr); grid-template-areas: "crumb" "kicker" "title" "lead" "tools"; padding: 28px 0 18px; }
  .page-hero--corp .page-title { font-size: 28px; }
  .page-hero--corp .page-lead { font-size: 15px; }
  .page-hero--corp .page-tools { margin-top: 12px; justify-self: start; }
}
/* Mobil: iç sayfalarda header sticky (akışta) olduğu için ek üst boşluk gerekmez */
@media (max-width: 991.98px) {
  .inner-page .page-hero, .home2 .hero { margin-top: 0; }
}

/* E-bülten: KVKK onayı — kompakt, kutu ile metin aynı hizada */
.ft-form .ft-consent { margin-top: 6px; }
.ft-form .check { align-items: center; gap: 10px; font-size: 13px; line-height: 1.45; }
.ft-form .check input[type="checkbox"] { width: 18px; height: 18px; flex: 0 0 18px; border-width: 1.5px; }
.ft-form .check input[type="checkbox"]::after { width: 5px; height: 9px; }
.ft-form .check a { font-weight: 600; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }

/* Footer üst: e-bülten | sosyal medya | mobil uygulama */
.footer-top { grid-template-columns: minmax(0, 1.7fr) minmax(0, .8fr) minmax(0, 1fr); }
.footer-social { display: flex; flex-direction: column; justify-content: center; gap: 16px; padding: 34px 40px; border-left: 1px solid rgba(255, 255, 255, .1); }
.footer-full .footer-social .follow-icons { margin-top: 0; gap: 10px; }
.footer-social .follow-icons a { width: 42px; height: 42px; font-size: 15px; }
.footer-social .follow-icons a:hover { background: var(--secondary); border-color: var(--secondary); color: var(--on-accent); }
@media (max-width: 1200px) {
  .footer-top { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .footer-news { grid-column: 1 / -1; }
  .footer-social { border-left: 0; border-top: 1px solid rgba(255, 255, 255, .1); }
  .footer-app { border-top: 1px solid rgba(255, 255, 255, .1); }
}
@media (max-width: 991.98px) {
  .footer-top { grid-template-columns: minmax(0, 1fr); }
  .footer-social { padding: 28px 16px; }
  .footer-app { border-left: 0; }
}

/* =========================================================
   Mobil menü — masaüstü menünün diliyle (beyaz panel, lacivert, ikon kutuları)
   ========================================================= */
@media (max-width: 991.98px) {
  .header-panel {
    background: var(--white);
    box-shadow: none;
    overscroll-behavior: contain;
  }
  .header-panel .main-nav { order: 1; padding: 0; background: var(--white); }
  .header-panel .header-top { order: 2; }

  /* Arama çubuğu (en üstte) */
  .header-panel .main-nav .header-search {
    order: 1;
    display: flex; align-items: center; justify-content: flex-start; gap: 12px;
    width: auto; height: 50px;
    margin: 30px 16px 14px; padding: 0 16px;
    background: var(--light);
    border: 1px solid var(--grey);
    border-radius: 0;
    color: var(--primary);
    font-size: 15px;
  }
  .header-panel .main-nav .header-search::after { content: "Sitede ara..."; font-family: var(--font-body); font-size: 15px; color: var(--text-muted); }
  .header-panel .main-nav > ul { order: 2; border-top: 1px solid var(--grey); }
  .header-panel .main-nav .qm-toggle { order: 3; margin: 20px 16px 0; height: 50px; justify-content: center; }

  /* Ana başlıklar */
  .header-panel .main-nav > ul > li > a,
  .header-panel .main-nav > ul > li:hover > a,
  .header-panel .main-nav > ul > li > a.active {
    position: relative;
    display: flex; align-items: center; justify-content: space-between;
    height: 58px; padding: 0 16px 0 20px;
    background: var(--white);
    border-bottom: 1px solid var(--grey);
    font-family: var(--font-head);
    font-size: 16px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase;
    color: var(--primary);
  }
  .header-panel .main-nav > ul > li > a::before {
    content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px;
    background: var(--secondary); transform: scaleY(0); transition: transform .25s var(--ease);
  }
  .header-panel .main-nav > ul > li > a.active::before,
  .header-panel .main-nav > ul > li.is-open > a::before { transform: scaleY(1); }
  .header-panel .main-nav > ul > li > a.active,
  .header-panel .main-nav > ul > li.is-open > a { background: var(--light); }
  .header-panel .main-nav .caret {
    width: 30px; height: 30px; display: grid; place-items: center;
    border: 1px solid rgba(var(--primary-rgb), .25); border-radius: 50%;
    font-size: 11px; color: var(--primary);
    transition: transform .3s var(--ease), background .25s, color .25s, border-color .25s;
  }
  .header-panel .main-nav li.is-open .caret { transform: rotate(180deg); background: var(--primary); border-color: var(--primary); color: var(--white); }

  /* Alt menü (akordeon) */
  .header-panel .mega { background: var(--light); border-bottom: 1px solid var(--grey); padding: 4px 0 14px; }
  .header-panel .mega-group-title {
    display: flex; align-items: center; gap: 8px;
    margin: 0; padding: 16px 20px 8px;
    border: 0; background: none;
    font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1.6px; text-transform: uppercase;
    color: var(--text-accent);
  }
  .header-panel .mega-group-title::before { content: ""; width: 16px; height: 2px; background: var(--secondary); }
  .header-panel .mega-links a,
  .header-panel .mega-links a:hover {
    display: flex; align-items: center; gap: 12px;
    padding: 8px 20px;
    border: 0; background: none;
  }
  .header-panel .mega-icon {
    width: 34px; height: 34px; flex-shrink: 0;
    background: var(--white); border: 1px solid var(--grey);
    color: var(--primary); font-size: 13px;
    transition: background .2s, color .2s, border-color .2s;
  }
  .header-panel .mega-label { font-family: var(--font-head); font-size: 16px; font-weight: 500; color: var(--text); }
  .header-panel .mega-links a:hover .mega-icon,
  .header-panel .mega-links a:focus-visible .mega-icon { background: var(--secondary); border-color: var(--secondary); color: var(--white); }
  .header-panel .mega-links a:hover .mega-label { color: var(--primary); }

  /* Alt bölüm: Çözüm Hattı + hava durumu + sosyal medya */
  .header-panel .header-top {
    display: flex; flex-direction: column; align-items: stretch; gap: 16px;
    height: auto; padding: 20px 16px 32px;
    background: var(--white); border: 0;
  }
  .header-panel .header-info { order: 1; display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .header-panel .info-item span { min-width: 0; }
  .header-panel .info-item b { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .header-panel .info-item {
    display: flex; align-items: center; gap: 12px;
    padding: 14px; border: 1px solid var(--grey); background: var(--light); color: var(--text);
  }
  .header-panel .info-item > i { width: 38px; height: 38px; flex-shrink: 0; display: grid; place-items: center; background: rgba(var(--primary-rgb), .08); color: var(--primary); font-size: 16px; }
  .header-panel .info-item small { display: block; font-size: 10.5px; letter-spacing: 1.2px; text-transform: uppercase; color: var(--text-muted); }
  .header-panel .info-item b { display: block; font-family: var(--font-head); font-size: 19px; color: var(--primary); }
  .header-panel a.info-item { background: var(--primary); border-color: var(--primary); }
  .header-panel a.info-item > i { background: var(--secondary); color: var(--white); }
  .header-panel a.info-item small { color: rgba(255, 255, 255, .7); }
  .header-panel a.info-item b { color: var(--white); }
  .header-panel .header-follow { order: 2; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 6px; }
  .header-panel .follow-label { display: block; font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; color: var(--text-muted); }
  .header-panel .follow-sep { display: none; }
  .header-panel .follow-icons a { width: 38px; height: 38px; border-color: var(--grey); color: var(--primary); font-size: 14px; }
  .header-panel .follow-icons a:hover { background: var(--primary); border-color: var(--primary); color: var(--white); }

  /* Açılış: satır satır transform yerine tek parça panel geçişi (iOS çizim hatasını önler) */
}
}
@media (min-width: 600px) and (max-width: 991.98px) {
  .header-panel .mega-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* =========================================================
   Mobil alt gezinme çubuğu (uygulama tarzı) — yalnızca mobil
   ========================================================= */
.bottom-nav { display: none; }
/* Ev çubuğu / hareket çubuğu payı: cihaz bildirmese bile en az 10px */
:root { --bn-h: 52px; --bn-safe: max(env(safe-area-inset-bottom, 0px), 20px); }
@media (max-width: 991.98px) {
  .bottom-nav {
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 310;
    display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));
    height: calc(var(--bn-h) + var(--bn-safe));
    padding-bottom: var(--bn-safe);
    background: var(--white);
    border-top: 1px solid var(--grey);
    box-shadow: 0 -10px 28px rgba(13, 42, 79, .1);
  }
  .bottom-nav > a, .bottom-nav > button {
    position: relative;
    display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1px;
    min-width: 0;
    font-family: var(--font-head); font-size: 11px; font-weight: 600; letter-spacing: .8px; text-transform: uppercase;
    color: var(--text-muted);
    -webkit-tap-highlight-color: transparent;
    transition: color .2s, background .2s;
  }
  .bottom-nav > * + * { border-left: 1px solid var(--light); }
  .bottom-nav > a::before, .bottom-nav > button::before {
    content: ""; position: absolute; top: -1px; left: 0; right: 0; height: 3px;
    background: var(--secondary); transform: scaleX(0); transition: transform .25s var(--ease);
  }
  .bn-icon {
    width: 36px; height: 26px; display: grid; place-items: center;
    font-size: 16px; color: var(--primary);
    transition: background .2s, color .2s, transform .2s var(--ease);
  }
  .bn-label { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 0 4px; }
  .bottom-nav > .is-active { color: var(--primary); background-color: rgba(var(--primary-rgb), .08); }
  .bottom-nav > .is-active::before { transform: scaleX(1); }
  .bottom-nav > .is-active .bn-icon { background: transparent; }
  .bottom-nav > a:active, .bottom-nav > button:active { background: var(--light); }
  .bottom-nav > a:active .bn-icon, .bottom-nav > button:active .bn-icon { transform: scale(.92); }
  .bottom-nav > :focus-visible { outline: 2px solid var(--primary); outline-offset: -4px; }
  .bottom-nav > a[href^="tel"] .bn-icon { color: var(--text-accent); }

  body.has-bottom-nav { padding-bottom: calc(var(--bn-h) + var(--bn-safe)); }
  body.has-bottom-nav .header-panel { bottom: calc(var(--bn-h) + var(--bn-safe)); }
  body.has-bottom-nav .cookie { bottom: calc(var(--bn-h) + var(--bn-safe) + 16px); }
  body.has-bottom-nav .qm-inner { padding-bottom: calc(var(--bn-h) + var(--bn-safe) + 30px); }
}
@media print { .bottom-nav { display: none !important; } }
/* Mobil menü: Hızlı Menü ve Çözüm Hattı alt çubukta olduğu için menüde gizli */
@media (max-width: 991.98px) {
  .header-panel .main-nav .qm-toggle, .header-panel a.info-item[href^="tel"] { display: none; }
  .header-panel .header-top { padding-top: 24px; }
}
/* Mobil header: menü düğmesinin solunda hava durumu */
.m-weather { display: none; }
@media (max-width: 991.98px) {
  .m-weather {
    display: flex; align-items: center; gap: 10px;
    align-self: center; min-width: 0;
    margin: 0 14px 0 auto; padding-right: 14px;
    border-right: 1px solid rgba(255, 255, 255, .2);
    color: var(--white);
  }
  .m-weather > i { flex-shrink: 0; font-size: 22px; color: var(--text-accent-light); }
  .m-weather span { display: flex; flex-direction: column; min-width: 0; line-height: 1.1; }
  .m-weather small { font-family: var(--font-head); font-size: 10.5px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; color: rgba(255, 255, 255, .65); }
  .m-weather b { font-family: var(--font-head); font-size: 16px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .header-panel .info-item.weather { display: none; }
  .header-panel .header-info { display: none; }
}
@media (max-width: 360px) { .m-weather small { display: none; } .m-weather b { font-size: 14px; } }
/* Mobil header: arama düğmesi (menü düğmesinin solunda) */
.m-search { display: none; }
@media (max-width: 991.98px) {
  .m-search {
    display: grid; place-items: center; align-self: center; flex-shrink: 0;
    width: 46px; height: 46px; margin-right: 8px;
    border: 1px solid rgba(255, 255, 255, .3); border-radius: 4px;
    color: var(--white); font-size: 17px;
    transition: background .2s, border-color .2s, color .2s;
  }
  .m-search:hover, .m-search:focus-visible { background: var(--white); border-color: var(--white); color: var(--primary); }
  .header-panel .main-nav .header-search { display: none; }
  .header-panel .main-nav > ul { margin-top: 30px; }
}
/* Mobil menü açıkken: logo gölgesi ve alt çubuk gölgesi panelin üstüne taşmasın */
@media (max-width: 991.98px) {
  body.nav-open .brand { box-shadow: 0 6px 14px rgba(13, 42, 79, .12); }
  body.nav-open .bottom-nav { box-shadow: none; }
  .header-panel { -webkit-overflow-scrolling: touch; }
  .header-panel .main-nav > ul > li { transform: none; opacity: 1; }
  .header-panel .header-top { padding-bottom: 24px; border-top: 0; }
}
/* Mobil menü: liste panel yüksekliğine göre sıkıştırılmasın (madde taşması / boşluk hatası) */
@media (max-width: 991.98px) {
  .header-panel > *, .header-panel .main-nav > ul, .header-panel .main-nav > * { flex-shrink: 0; }
  /* Menü iki listeden oluşur (nav-left + nav-right): ikinci liste boşluk/çizgi almasın */
  .header-panel .main-nav > ul + ul { margin-top: 0; border-top: 0; }
}
/* Mobil: anasayfa slider yazıları görselin en altında */
@media (max-width: 991.98px) {
  .hero .hero-content, .home2 .hero .hero-content { top: auto; bottom: 28px; transform: none; }
  .hero::after {
    background:
      linear-gradient(180deg, rgba(var(--primary-rgb), .45) 0%, rgba(var(--primary-rgb), 0) 22%),
      linear-gradient(0deg, rgba(13, 42, 79, .92) 0%, rgba(13, 42, 79, .6) 38%, rgba(13, 42, 79, 0) 68%);
  }
}
@media (max-width: 991.98px) { .home2 .hero .hero-content { bottom: 64px; } }

/* =========================================================
   Mobil header — beyaz, uygulama tarzı başlık çubuğu
   ========================================================= */
@media (max-width: 991.98px) {
  :root { --header-h: calc(64px + env(safe-area-inset-top, 0px)); }
  .site-header {
    align-items: center;
    gap: 8px;
    height: var(--header-h);
    padding: env(safe-area-inset-top, 0px) 12px 0 14px;
    background: var(--white);
    border-bottom: 3px solid var(--secondary);
    box-shadow: 0 6px 18px rgba(13, 42, 79, .08);
  }
  /* Logo: sarkan plaka yerine satır içi amblem + kurum adı */
  .site-header .brand,
  body.nav-open .site-header .brand {
    position: static; transform: none;
    display: flex; align-items: center; gap: 10px;
    width: auto; height: auto; min-width: 0;
    margin-right: auto;
    background: none; border-radius: 0; box-shadow: none;
  }
  .site-header .brand-emblem { width: 44px; height: 44px; flex-shrink: 0; }
  .site-header .brand::after {
    content: "T.C.\A YAKUTİYE BELEDİYESİ";
    white-space: pre;
    padding-left: 10px;
    border-left: 1px solid var(--grey);
    font-family: var(--font-head);
    font-size: 15px; font-weight: 700; letter-spacing: .6px; line-height: 1.15;
    color: var(--primary);
  }
  /* Hava durumu: sade rozet */
  .m-weather {
    gap: 6px; height: 40px; margin: 0; padding: 0 10px;
    border: 0; border-radius: 4px;
    background: var(--light);
    color: var(--primary);
  }
  .m-weather > i { font-size: 16px; color: var(--secondary); }
  .m-weather small { display: none; }
  .m-weather b { font-size: 16px; font-weight: 700; color: var(--primary); }
  /* Arama ve menü düğmeleri */
  .m-search {
    width: 42px; height: 42px; margin: 0;
    border: 1px solid var(--grey); border-radius: 4px;
    color: var(--primary); font-size: 16px;
  }
  .m-search:hover, .m-search:focus-visible { background: var(--primary); border-color: var(--primary); color: var(--white); }
  .nav-toggle {
    width: 42px; height: 42px; flex-shrink: 0;
    border-radius: 4px;
    background: var(--primary);
    color: var(--white); font-size: 18px;
  }
  body.nav-open .nav-toggle { background: var(--secondary); }
  /* Logo artık sarkmadığı için ek üst boşluklar gereksiz */
  .header-panel .main-nav > ul:first-child { margin-top: 0; }
  .page-hero--corp .page-hero-inner { padding-top: 22px; }
}
@media (max-width: 380px) {
  .site-header .brand::after { font-size: 13.5px; }
  .site-header .brand-emblem { width: 40px; height: 40px; }
  .m-weather { padding: 0 8px; }
}
@media (max-width: 340px) {
  .site-header .brand::after { display: none; }
}
@media (max-width: 991.98px) {
  .m-weather { flex-shrink: 0; }
  .m-weather span { min-width: auto; }
  .m-weather b { overflow: visible; text-overflow: clip; }
  .site-header .brand { overflow: hidden; }
}
@media (max-width: 991.98px) {
  .site-header { gap: 6px; padding-left: 12px; padding-right: 12px; }
  .site-header .brand { gap: 8px; }
  .site-header .brand::after { padding-left: 8px; font-size: 14px; letter-spacing: .3px; }
  .m-weather { padding: 0 8px; }
}
@media (max-width: 380px) {
  .site-header .brand::after { font-size: 12.5px; letter-spacing: 0; }
  .site-header .brand-emblem { width: 38px; height: 38px; }
  .m-weather > i { display: none; }
}

/* =========================================================
   Mobil/tablet: anasayfa haber alanı (yatay başlık + kontrol satırı + kaydırılabilir kartlar)
   ========================================================= */
@media (max-width: 991.98px) {
  .band .news {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas: "label controls" "view view";
    align-items: center;
    row-gap: 16px;
    padding: 24px 16px 22px;
  }
  .band .news-label {
    grid-area: label;
    width: auto; justify-content: flex-start; gap: 10px;
    writing-mode: horizontal-tb; transform: none;
    font-size: 24px; letter-spacing: 2px;
  }
  .band .news-label::before { width: 24px; height: 3px; }
  .band .news-controls {
    grid-area: controls;
    flex-direction: row; align-items: center; gap: 6px;
    padding: 0; border: 0;
  }
  .band .news-counter { order: 0; margin: 0 6px 0 0; }
  .band .news-prev { order: 1; }
  .band .news-next { order: 2; }
  .band .news-controls-all { order: 3; margin-left: 6px; }
  .band .news-controls button { width: 36px; height: 36px; }
  .band .news-viewport { grid-area: view; margin: 0 -8px; overflow: hidden; -webkit-mask-image: none; mask-image: none; }
  .band .news-card { flex: 0 0 100%; width: 100%; padding: 0 8px; }
  .band .news-thumb { height: auto; aspect-ratio: 16 / 9; }
  .band .news-meta { flex-wrap: wrap; row-gap: 6px; }
  .band .news-title { font-size: 18px; line-height: 1.3; }
}
/* Tablet: iki kart yan yana */
@media (min-width: 640px) and (max-width: 991.98px) {
  .band .news-card { flex-basis: 50%; width: 50%; }
}
@media (max-width: 380px) {
  .band .news-label { font-size: 21px; letter-spacing: 1.5px; }
  .band .news-counter { display: none; }
}
@media (max-width: 639.98px) {
  .band .news-viewport { margin: 0; }
  .band .news-card { padding: 0; }
}
@media (min-width: 640px) and (max-width: 991.98px) {
  .band .news-viewport { margin: 0 -8px; clip-path: inset(0 8px); }
}
@media (max-width: 991.98px) {
  .band .news-thumb { box-shadow: 0 0 0 1px var(--grey), 0 8px 18px rgba(13, 42, 79, .12); }
}
@media (max-width: 991.98px) { body.nav-open .header-panel { box-shadow: -20px 0 40px rgba(13, 42, 79, .18); } }

/* =========================================================
   Mobil/tablet: anasayfa duyurular (haber alanıyla aynı düzen)
   ========================================================= */
@media (max-width: 991.98px) {
  .band .notices { padding: 24px 16px 22px; border-left: 0; border-top: 1px solid var(--grey); overflow: visible; }
  .band .notices-head { height: auto; margin: 0 0 16px; padding: 0; border: 0; }
  .band .notices-head h2 { gap: 10px; font-size: 24px; letter-spacing: 2px; text-transform: uppercase; }
  .band .notices-head h2::before { width: 24px; height: 3px; }
  .band .notices-actions { gap: 6px; }
  .band .notice-btn { width: 36px; height: 36px; font-size: 12px; }
  .band .notices-actions a { margin-left: 6px; }
  .band .notices-list { flex: none; height: 256px; border-top: 1px solid var(--grey); border-bottom: 1px solid var(--grey); }
  .band .notices-list::after { height: 28px; }
  .band .notice a { height: 64px; padding: 0 4px 0 2px; gap: 14px; }
  .band .notice a::before { left: -16px; }
  .band .notice-date { width: 50px; }
  .band .notice-title { font-size: 17px; -webkit-line-clamp: 2; }
}
@media (max-width: 380px) {
  .band .notices-head h2 { font-size: 21px; letter-spacing: 1.5px; }
}

/* =========================================================
   Mobil/tablet: anasayfa başkan alanı (haber/duyuru düzeniyle aynı)
   ========================================================= */
.mayor-head, .mayor-links { display: none; }
@media (max-width: 991.98px) {
  .band .mayor {
    display: grid;
    grid-template-columns: 132px minmax(0, 1fr);
    grid-template-areas: "head head" "photo name" "photo title" "photo social" "links links";
    grid-template-rows: auto 1fr auto auto auto;
    column-gap: 18px;
    align-items: start;
    padding: 24px 16px 22px;
    text-align: left;
    background: var(--white);
    border-left: 0; border-top: 1px solid var(--grey);
  }
  .band .mayor-head { grid-area: head; display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; }
  .band .mayor-head h2 {
    display: flex; align-items: center; gap: 10px;
    font-family: var(--font-head); font-size: 24px; font-weight: 600; letter-spacing: 2px; text-transform: uppercase;
    color: var(--primary);
  }
  .band .mayor-head h2::before { content: ""; width: 24px; height: 3px; background: var(--secondary); }
  .band .mayor-head a { font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--text-accent); }
  .band .mayor-photo {
    grid-area: photo; position: relative;
    width: 132px; height: 160px; margin: 0;
    overflow: hidden;
    background: linear-gradient(180deg, #e9eef5 0%, #d3dde9 100%);
  }
  .band .mayor-photo::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: var(--secondary); }
  .band .mayor-photo img { width: 100%; height: 100%; object-fit: cover; object-position: top; -webkit-mask-image: none; mask-image: none; }
  .band .mayor-name { grid-area: name; align-self: end; font-size: 24px; line-height: 1.1; }
  .band .mayor-title { grid-area: title; justify-content: flex-start; margin-top: 8px; }
  .band .mayor-title::after { display: none; }
  .band .mayor-social { grid-area: social; margin-top: 14px; padding-top: 14px; }
  .band .mayor-social a { width: 34px; height: 34px; font-size: 13px; }
  .band .mayor-links { grid-area: links; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 18px; }
  .band .mayor-links a {
    display: flex; align-items: center; justify-content: center; gap: 8px;
    height: 44px; padding: 0 10px;
    border: 1px solid rgba(var(--primary-rgb), .3);
    font-family: var(--font-head); font-size: 14px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase;
    color: var(--primary);
    transition: background .2s, color .2s, border-color .2s;
  }
  .band .mayor-links a:last-child { background: var(--secondary); border-color: var(--secondary); color: var(--white); }
  .band .mayor-links a:hover { background: var(--primary); border-color: var(--primary); color: var(--white); }
}
@media (max-width: 380px) {
  .band .mayor { grid-template-columns: 108px minmax(0, 1fr); column-gap: 14px; }
  .band .mayor-photo { width: 108px; height: 136px; }
  .band .mayor-name { font-size: 21px; }
  .band .mayor-head h2 { font-size: 21px; letter-spacing: 1.5px; }
  .band .mayor-links a { font-size: 12.5px; letter-spacing: .5px; }
}

/* =========================================================
   Anasayfa (yalnızca mobil/tablet): Keşfedin — etkinlik ve proje yönlendirme kutuları
   ========================================================= */
.m-discover { display: none; }
@media (max-width: 991.98px) {
  .band .m-discover { display: block; grid-column: 1 / -1; padding: 24px 16px 26px; background: var(--white); border-top: 1px solid var(--grey); }
  .m-discover-head { margin-bottom: 16px; }
  .m-discover-head h2 {
    display: flex; align-items: center; gap: 10px;
    font-family: var(--font-head); font-size: 24px; font-weight: 600; letter-spacing: 2px; text-transform: uppercase;
    color: var(--primary);
  }
  .m-discover-head h2::before { content: ""; width: 24px; height: 3px; background: var(--secondary); }
}
@media (max-width: 380px) {
  .m-discover-head h2 { font-size: 21px; letter-spacing: 1.5px; }
}

/* =========================================================
   Mobil/tablet footer — sade: sosyal medya, uygulama rozetleri, yasal bağlantılar
   ========================================================= */
@media (max-width: 991.98px) {
  .footer-full .footer-news, .footer-full .footer-main { display: none; }
  .footer-full .footer-top { display: block; border-bottom: 0; }
  .footer-full .footer-social {
    align-items: center; gap: 14px;
    padding: 30px 16px 10px; border: 0; text-align: center;
  }
  .footer-full .footer-social .ft-text h2 { font-size: 13px; font-weight: 600; letter-spacing: 1.8px; text-transform: uppercase; color: rgba(255, 255, 255, .7); }
  .footer-full .footer-social .ft-text p { display: none; }
  .footer-full .footer-social .follow-icons { justify-content: center; gap: 12px; }
  .footer-full .footer-app { justify-content: center; padding: 14px 16px 26px; border: 0; }
  .footer-full .footer-app .ft-text { display: none; }
  .footer-full .store-badges { justify-content: center; gap: 8px; }
  .footer-full .site-footer {
    gap: 10px; padding: 18px 16px 20px;
    border-top: 1px solid rgba(255, 255, 255, .12);
  }
  .footer-full .footer-links { gap: 6px 16px; font-size: 12.5px; }
  .footer-full .footer-copy { order: 2; font-size: 12px; color: rgba(255, 255, 255, .55); }
}
/* Mobil/tablet: footer tamamen gizli */
@media (max-width: 991.98px) { .footer-full { display: none; } }
/* Mobil: body ekran yüksekliğine sabit kalmasın; alt çubuk boşluğu içeriğin sonuna eklensin */
@media (max-width: 991.98px) {
  html, body.has-bottom-nav { height: auto; min-height: 100%; }
  .band .m-discover { padding-bottom: 28px; }
}

/* =========================================================
   Mobil anasayfa ekleri: e-Hizmetler, acil numaralar, mini kısayollar, uygulama şeridi
   + hero kontrolleri + menüde yasal bağlantılar (yalnızca ≤991px)
   ========================================================= */
.m-services, .m-legal { display: none; }
@media (max-width: 991.98px) {
  /* Bölüm sırası */
  .band .news { order: 1; }
  .band .notices { order: 2; }
  .band .m-services { order: 3; }
  .band .mayor { order: 4; }
  .band .m-discover { order: 5; }

  /* Ortak bölüm kabı + başlık (haber/duyuru başlıklarıyla aynı) */
  .band .m-block { display: block; grid-column: 1 / -1; padding: 24px 16px 22px; background: var(--white); border-top: 1px solid var(--grey); }
  .m-block-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; }
  .m-block-head h2 {
    display: flex; align-items: center; gap: 10px;
    font-family: var(--font-head); font-size: 24px; font-weight: 600; letter-spacing: 2px; text-transform: uppercase;
    color: var(--primary);
  }
  .m-block-head h2::before { content: ""; width: 24px; height: 3px; background: var(--secondary); }
  .m-block-head a { font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--text-accent); }

  /* e-Hizmetler 2×2 */
  .m-services-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .m-services-grid a {
    display: flex; flex-direction: column; align-items: flex-start; gap: 2px;
    padding: 16px 14px; background: var(--white); border: 1px solid var(--grey);
    transition: border-color .2s, box-shadow .2s;
  }
  .m-services-grid span {
    width: 42px; height: 42px; margin-bottom: 10px; display: grid; place-items: center;
    background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 17px;
    transition: background .2s, color .2s;
  }
  .m-services-grid b { font-family: var(--font-head); font-size: 17px; font-weight: 600; line-height: 1.2; color: var(--text); }
  .m-services-grid small { font-size: 12.5px; color: var(--text-muted); }
  .m-services-grid a:active, .m-services-grid a:hover { border-color: rgba(var(--primary-rgb), .35); box-shadow: 0 8px 20px rgba(13, 42, 79, .08); }
  .m-services-grid a:active span, .m-services-grid a:hover span { background: var(--secondary); color: var(--white); }

  /* Hero: duraklat ve gezinme (WCAG 2.2.2) */
  .hero .hero-nav { display: flex; gap: 12px; margin-top: 16px; }
  .hero .hero-count b { font-size: 22px; }
  .hero .hero-count { font-size: 13px; }
  .hero .hero-progress { flex: 1; width: auto; max-width: 140px; }
  .hero .hero-arrows button { width: 36px; height: 36px; font-size: 12px; }

  /* Mobil menü: yasal bağlantılar */
  .header-panel .m-legal { order: 3; display: block; padding: 4px 16px 28px; }
  .m-legal nav { display: flex; flex-wrap: wrap; gap: 8px 14px; padding-top: 16px; border-top: 1px solid var(--grey); }
  .m-legal a, .m-legal button { font-size: 12.5px; color: var(--text-muted); text-decoration: underline; text-decoration-color: var(--grey); text-underline-offset: 3px; }
  .m-legal p { margin-top: 12px; font-size: 12px; color: var(--grey-dark); }
}
@media (min-width: 640px) and (max-width: 991.98px) {
  .m-services-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 380px) {
  .m-block-head h2 { font-size: 21px; letter-spacing: 1.5px; }
}
/* Anasayfa: mobilde ince yasal şerit de gizli (bağlantılar mobil menüde) */
@media (max-width: 991.98px) { .page > .site-footer { display: none; } }

/* =========================================================
   Mobil anasayfa: Rakamlarla Yakutiye
   ========================================================= */
.m-stats { display: none; }
@media (max-width: 991.98px) {
  .band .mayor { order: 4; }
  .band .m-stats { order: 5; }
  .band .m-discover { order: 6; }
  .band .m-stats {
    display: block; grid-column: 1 / -1; position: relative; overflow: hidden;
    padding: 26px 16px 24px;
    background: linear-gradient(140deg, var(--primary-dark) 0%, var(--primary) 100%);
    color: var(--white);
  }
  .band .m-stats::after {
    content: ""; position: absolute; right: -70px; top: -70px; width: 200px; height: 200px;
    border-radius: 50%; border: 36px solid rgba(255, 255, 255, .05); pointer-events: none;
  }
  .m-stats-head { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
  .m-stats-head h2 {
    display: flex; align-items: center; gap: 10px;
    font-family: var(--font-head); font-size: 24px; font-weight: 600; letter-spacing: 2px; text-transform: uppercase; color: var(--white);
  }
  .m-stats-head h2::before { content: ""; width: 24px; height: 3px; background: var(--secondary); }
  .m-stats-head a { font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--text-accent-light); }
  .m-stats-grid {
    position: relative; z-index: 1;
    display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
    border: 1px solid rgba(255, 255, 255, .14);
  }
  .m-stat { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; padding: 16px 14px; }
  .m-stat:nth-child(odd) { border-right: 1px solid rgba(255, 255, 255, .14); }
  .m-stat:nth-child(-n+2) { border-bottom: 1px solid rgba(255, 255, 255, .14); }
  .m-stat i { width: 36px; height: 36px; margin-bottom: 6px; display: grid; place-items: center; background: var(--secondary); color: var(--white); font-size: 15px; }
  .m-stat b { font-family: var(--font-head); font-size: 30px; font-weight: 700; line-height: 1; font-variant-numeric: tabular-nums; }
  .m-stat small { font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: rgba(255, 255, 255, .72); }
}
@media (min-width: 640px) and (max-width: 991.98px) {
  .m-stats-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .m-stat:nth-child(-n+2) { border-bottom: 0; }
  .m-stat:not(:last-child) { border-right: 1px solid rgba(255, 255, 255, .14); }
}
@media (max-width: 380px) {
  .m-stats-head h2 { font-size: 20px; letter-spacing: 1.4px; }
  .m-stat b { font-size: 26px; }
}
/* Rakamlarla Yakutiye: beyaz zemin (diğer mobil bölümlerle aynı dil) */
@media (max-width: 991.98px) {
  .band .m-stats { background: var(--white); color: var(--text); border-top: 1px solid var(--grey); }
  .band .m-stats::after { display: none; }
  .m-stats-head h2 { color: var(--primary); }
  .m-stats-head a { color: var(--text-accent); }
  .m-stats-grid { border-color: var(--grey); }
  .m-stat { background: var(--white); }
  .m-stat:nth-child(odd), .m-stat:not(:last-child) { border-right-color: var(--grey); }
  .m-stat:nth-child(-n+2) { border-bottom-color: var(--grey); }
  .m-stat i { background: rgba(var(--primary-rgb), .07); color: var(--primary); }
  .m-stat b { color: var(--primary); }
  .m-stat small { color: var(--text-muted); }
}
@media (max-width: 639.98px) { .m-stat:nth-child(even) { border-right: 0; } }

/* Mobil anasayfa: Keşfedin — kurumsal bağlantı listesi */
@media (max-width: 991.98px) {
  .m-links { border: 1px solid var(--grey); background: var(--white); }
  .m-links li + li { border-top: 1px solid var(--grey); }
  .m-links a {
    position: relative; display: flex; align-items: center; gap: 14px;
    min-height: 68px; padding: 12px 14px;
    transition: background .2s;
  }
  .m-links a::before { content: ""; position: absolute; left: -1px; top: -1px; bottom: -1px; width: 3px; background: var(--secondary); transform: scaleY(0); transition: transform .25s var(--ease); }
  .ml-icon { flex-shrink: 0; width: 42px; height: 42px; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 17px; transition: background .2s, color .2s; }
  .ml-text { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
  .ml-text b { font-family: var(--font-head); font-size: 17px; font-weight: 600; line-height: 1.2; color: var(--text); }
  .ml-text small { font-size: 13px; color: var(--text-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .ml-badge { flex-shrink: 0; padding: 4px 8px; background: rgba(var(--secondary-rgb), .14); font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: .4px; color: var(--text-accent); white-space: nowrap; }
  .ml-arrow { flex-shrink: 0; font-size: 12px; color: var(--grey-dark); transition: transform .2s var(--ease), color .2s; }
  .m-links a:hover, .m-links a:active { background: var(--light); }
  .m-links a:hover::before, .m-links a:active::before { transform: scaleY(1); }
  .m-links a:hover .ml-icon, .m-links a:active .ml-icon { background: var(--primary); color: var(--white); }
  .m-links a:hover .ml-arrow { color: var(--primary); transform: translateX(3px); }
}
@media (min-width: 640px) and (max-width: 991.98px) {
  .m-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .m-links li + li { border-top: 0; }
  .m-links li:nth-child(n+3) { border-top: 1px solid var(--grey); }
  .m-links li:nth-child(even) { border-left: 1px solid var(--grey); }
}
@media (max-width: 360px) { .ml-text small { display: none; } }
@media (max-width: 991.98px) { .band > * { min-width: 0; } }
@media (max-width: 991.98px) {
  .ml-title { display: flex; align-items: center; gap: 8px; min-width: 0; }
  .ml-title .ml-badge { padding: 2px 7px; font-size: 11px; }
}

/* =========================================================
   Mobil: tam ekran pencereler (Sitede Ara, Hızlı Menü, Haberler, Duyurular, Yasal)
   Başlık solda + kapatma sağda aynı satırda; arama alanı altta tam genişlik
   ========================================================= */
@media (max-width: 991.98px) {
  .qm-inner { padding: 22px 16px 32px; }
  .qm-head {
    display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center;
    gap: 14px 12px; padding-bottom: 16px; margin-bottom: 18px;
  }
  .qm-head > div:first-child { grid-column: 1; grid-row: 1; min-width: 0; }
  .qm-tools { display: contents; }
  .qm-head .qm-close { grid-column: 2; grid-row: 1; width: 44px; height: 44px; }
  .qm-head .qm-search { grid-column: 1 / -1; grid-row: 2; width: auto; height: 46px; }
  .qm-head .qm-search input { font-size: 16px; }
  .qm-kicker { gap: 10px; font-size: 12px; letter-spacing: 2px; }
  .qm-kicker::before { width: 24px; }
  .qm-title { margin-top: 6px; font-size: 30px; }

  /* Sitede Ara */
  .so-field { height: 54px; padding: 0 14px; gap: 12px; font-size: 18px; border-bottom-width: 3px; }
  .so-field input { font-size: 16px; } /* iOS'ta odaklanınca yakınlaştırmayı önler */
  .so-popular { gap: 6px; margin-top: 16px; }
  .so-popular > span { flex-basis: 100%; margin: 0 0 4px; font-size: 12px; letter-spacing: 1.4px; }
  .so-popular .nl-chip { height: 32px; padding: 0 12px; font-size: 12px; letter-spacing: .6px; }
  .so-results { margin-top: 22px; gap: 0; }
}

/* Mobil: Hızlı Menü — Keşfedin listesiyle aynı kompakt satır düzeni */
@media (max-width: 991.98px) {
  .qm-grid { border: 1px solid var(--grey); }
  .qm-grid li { border-right: 0; border-bottom: 0; transform: none; }
  .qm-grid li + li { border-top: 1px solid var(--grey); }
  .qm-grid a { min-height: 62px; gap: 14px; padding: 10px 14px; }
  .qm-grid a::before { left: -1px; top: -1px; bottom: -1px; }
  .qm-grid a::after {
    content: "\f054"; width: auto; height: auto; border: 0; border-radius: 0;
    background: none; font-size: 12px; color: var(--grey-dark);
  }
  .qm-grid a:hover::after { background: none; color: var(--primary); }
  .qm-icon { width: 42px; height: 42px; font-size: 17px; }
  .qm-label { font-size: 17px; }
  .qm-num { display: none; }
  .qm-grid a:hover .qm-icon { background: var(--primary); }
}
@media (min-width: 640px) and (max-width: 991.98px) {
  .qm-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .qm-grid li + li { border-top: 0; }
  .qm-grid li:nth-child(n+3) { border-top: 1px solid var(--grey); }
  .qm-grid li:nth-child(even) { border-left: 1px solid var(--grey); }
}

/* =========================================================
   Hava durumu penceresi (5 günlük) — masaüstü: ortalanmış pencere, mobil: tam ekran
   ========================================================= */
.header-info .weather, .m-weather { cursor: pointer; }
.header-info .weather { transition: opacity .2s; }
.header-info .weather:hover { opacity: .85; }
.header-info .weather:focus-visible, .m-weather:focus-visible { outline: 2px solid var(--secondary); outline-offset: 3px; }
.wx { position: fixed; inset: 0; z-index: 320; display: grid; place-items: center; padding: 24px; visibility: hidden; pointer-events: none; }
.wx.is-open { visibility: visible; pointer-events: auto; }
.wx-backdrop { position: absolute; inset: 0; background: rgba(13, 42, 79, .55); opacity: 0; transition: opacity .3s var(--ease); }
.wx.is-open .wx-backdrop { opacity: 1; }
.wx-panel {
  position: relative; width: min(920px, 100%); max-height: min(88vh, 860px); overflow-y: auto; overscroll-behavior: contain;
  background: var(--white); border-top: 4px solid var(--secondary);
  box-shadow: 0 30px 80px rgba(13, 42, 79, .35);
  opacity: 0; transform: translateY(16px) scale(.98); transition: opacity .3s var(--ease), transform .3s var(--ease);
}
.wx.is-open .wx-panel { opacity: 1; transform: none; }
.wx-head { position: sticky; top: 0; z-index: 2; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 22px 28px 18px; background: var(--white); border-bottom: 1px solid var(--grey); }
.wx-title { margin-top: 6px; font-family: var(--font-head); font-size: 32px; font-weight: 600; line-height: 1; color: var(--primary); }
.wx-body { padding: 24px 28px 28px; }
.wx-state { display: flex; flex-direction: column; align-items: center; gap: 14px; padding: 48px 0; text-align: center; color: var(--text-muted); }
.wx-state > i { font-size: 30px; color: var(--primary); }
.wx-state.is-error > i { color: var(--grey-dark); }

/* Anlık durum */
.wx-now { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 24px; align-items: center; padding: 22px 24px; background: linear-gradient(120deg, var(--primary-dark) 0%, var(--primary) 100%); color: var(--white); }
.wx-now-main { display: flex; align-items: center; gap: 20px; }
.wx-now-icon { flex-shrink: 0; font-size: 64px; color: var(--text-accent-light); }
.wx-now-temp { display: block; font-family: var(--font-head); font-size: 64px; font-weight: 600; line-height: .95; }
.wx-now-temp small { margin-left: 2px; font-size: 26px; vertical-align: top; color: rgba(255, 255, 255, .7); }
.wx-now-cond { display: block; margin-top: 6px; font-family: var(--font-head); font-size: 22px; font-weight: 600; }
.wx-now-feel { display: block; margin-top: 4px; font-size: 13.5px; color: rgba(255, 255, 255, .75); }
.wx-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: rgba(255, 255, 255, .14); border: 1px solid rgba(255, 255, 255, .14); }
.wx-facts li { display: flex; align-items: center; gap: 10px; padding: 12px; background: rgba(13, 42, 79, .35); }
.wx-facts i { width: 32px; height: 32px; flex-shrink: 0; display: grid; place-items: center; background: rgba(255, 255, 255, .08); color: var(--text-accent-light); font-size: 14px; }
.wx-facts small { display: block; font-family: var(--font-head); font-size: 11px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: rgba(255, 255, 255, .65); }
.wx-facts b { display: block; font-family: var(--font-head); font-size: 17px; font-weight: 600; white-space: nowrap; }

/* Alt başlıklar */
.wx-block { margin-top: 26px; }
.wx-sub { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; font-family: var(--font-head); font-size: 15px; font-weight: 600; letter-spacing: 1.8px; text-transform: uppercase; color: var(--primary); }
.wx-sub::before { content: ""; width: 20px; height: 3px; background: var(--secondary); }

/* Saatlik */
.wx-hours { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(72px, 1fr); overflow-x: auto; border: 1px solid var(--grey); scrollbar-width: thin; }
.wx-hours li { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 12px 6px; text-align: center; }
.wx-hours li + li { border-left: 1px solid var(--grey); }
.wx-hours li:first-child { background: var(--light); }
.wx-hours span { font-family: var(--font-head); font-size: 13px; font-weight: 600; color: var(--text-muted); }
.wx-hours > li > i { font-size: 18px; color: var(--primary); }
.wx-hours b { font-family: var(--font-head); font-size: 19px; font-weight: 600; color: var(--text); }
.wx-hours small { font-size: 11.5px; color: var(--text-muted); }
.wx-hours small i { margin-right: 3px; font-size: 10px; color: #3a7bd5; }

/* 5 günlük */
.wx-days { border: 1px solid var(--grey); }
.wx-day { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.3fr) 64px minmax(0, 1.6fr); align-items: center; gap: 16px; padding: 14px 18px; }
.wx-day + .wx-day { border-top: 1px solid var(--grey); }
.wx-day.is-today { background: var(--light); box-shadow: inset 3px 0 0 var(--secondary); }
.wx-day-name b { display: block; font-family: var(--font-head); font-size: 18px; font-weight: 600; color: var(--text); }
.wx-day-name small { font-size: 12.5px; color: var(--text-muted); }
.wx-day-icon { display: flex; align-items: center; gap: 12px; min-width: 0; }
.wx-day-icon i { width: 40px; height: 40px; flex-shrink: 0; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 17px; }
.wx-day-icon span { font-size: 14px; color: var(--text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.wx-day-rain { font-family: var(--font-head); font-size: 14px; font-weight: 600; color: var(--text-muted); }
.wx-day-rain i { margin-right: 5px; font-size: 11px; color: #3a7bd5; }
.wx-day-temp { display: flex; align-items: center; gap: 10px; }
.wx-min, .wx-max { width: 34px; font-family: var(--font-head); font-size: 17px; font-weight: 600; }
.wx-min { text-align: right; color: var(--text-muted); }
.wx-max { color: var(--text); }
.wx-bar { position: relative; flex: 1; height: 6px; border-radius: 3px; background: var(--light); box-shadow: inset 0 0 0 1px var(--grey); }
.wx-bar span { position: absolute; top: 0; bottom: 0; border-radius: 3px; background: linear-gradient(90deg, var(--primary) 0%, var(--secondary) 100%); }

/* Alt bilgi */
.wx-foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; margin-top: 22px; }
.wx-cta { display: flex; align-items: center; gap: 14px; padding: 12px 16px; border: 1px solid var(--grey); transition: border-color .2s, background .2s; }
.wx-cta > i:first-child { width: 38px; height: 38px; display: grid; place-items: center; background: var(--primary); color: var(--white); font-size: 16px; }
.wx-cta b { display: block; font-family: var(--font-head); font-size: 16px; font-weight: 600; color: var(--primary); }
.wx-cta small { display: block; font-size: 12.5px; color: var(--text-muted); }
.wx-cta > i:last-child { margin-left: 8px; font-size: 13px; color: var(--primary); transition: transform .2s var(--ease); }
.wx-cta:hover { border-color: rgba(var(--primary-rgb), .35); background: var(--light); }
.wx-cta:hover > i:last-child { transform: translateX(4px); }
.wx-src { font-size: 12px; color: var(--grey-dark); }

/* Mobil: tam ekran */
@media (max-width: 991.98px) {
  .wx { padding: 0; place-items: stretch; }
  .wx-panel { width: 100%; max-height: none; height: 100%; border-top-width: 3px; padding-bottom: calc(var(--bn-h) + var(--bn-safe)); transform: translateY(24px); }
  .wx-head { padding: calc(14px + env(safe-area-inset-top, 0px)) 16px 14px; }
  .wx-title { font-size: 28px; }
  .wx-body { padding: 16px 16px 24px; }
  .wx-now { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 18px 16px; }
  .wx-now-main { gap: 16px; }
  .wx-now-icon { font-size: 48px; }
  .wx-now-temp { font-size: 52px; }
  .wx-now-cond { font-size: 19px; }
  .wx-facts b { font-size: 15.5px; }
  .wx-block { margin-top: 20px; }
  .wx-day { grid-template-columns: minmax(0, 1fr) 40px 46px minmax(0, 1.3fr); gap: 10px; padding: 12px 12px; }
  .wx-day-icon span { display: none; }
  .wx-day-name b { font-size: 16px; }
  .wx-day-rain { font-size: 12.5px; }
  .wx-min, .wx-max { width: 28px; font-size: 15px; }
  .wx-day-temp { gap: 6px; }
  .wx-foot { flex-direction: column; align-items: stretch; }
}
@media print { .wx { display: none !important; } }
.wx-br { display: none; }
@media (max-width: 991.98px) {
  .wx-br { display: inline; }
  .wx-sep { display: none; }
  .wx-panel { padding-bottom: env(safe-area-inset-bottom, 0px); }
}
/* Masaüstü: hava durumu da diğer pencereler (Sitede Ara vb.) gibi tam ekran */
@media (min-width: 992px) {
  .wx { padding: 0; place-items: stretch; }
  .wx-backdrop { display: none; }
  .wx-panel { width: 100%; height: 100%; max-height: none; box-shadow: none; transform: translateY(12px); }
  .wx-head, .wx-body { padding-left: max(40px, calc((100% - 1240px) / 2)); padding-right: max(40px, calc((100% - 1240px) / 2)); }
  .wx-head { padding-top: 48px; padding-bottom: 24px; }
  .wx-head .qm-close { width: 48px; height: 48px; }
  .wx-title { margin-top: 8px; font-size: 46px; }
  .wx-body { padding-top: 32px; padding-bottom: 64px; }
  .wx-now { padding: 28px 32px; }
  .wx-now-icon { font-size: 76px; }
  .wx-now-temp { font-size: 76px; }
}
@media (min-width: 992px) {
  .wx-head { border-bottom: 0; }
  .wx-head::after { content: ""; position: absolute; bottom: 0; height: 1px; background: var(--grey); left: max(40px, calc((100% - 1240px) / 2)); right: max(40px, calc((100% - 1240px) / 2)); }
}

/* =========================================================
   Mobil: yan menü → sekme şeridi (kenar okları + solma) + "Tümü" alt paneli
   ========================================================= */
.sn-head, .sn-arrow, .sn-sheet { display: none; }
@media (max-width: 991.98px) {
  .side-nav--collapse > .side-title { display: none; }
  .side-nav--collapse .sn-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
  .side-nav--collapse .sn-head .side-title { display: block; margin: 0; padding: 0; border: 0; font-size: 20px; }
  .side-nav--collapse .sn-head .side-title::after { display: none; }
  .sn-all {
    display: inline-flex; align-items: center; gap: 8px; height: 36px; padding: 0 12px;
    border: 1px solid rgba(var(--primary-rgb), .3); background: var(--white);
    font-family: var(--font-head); font-size: 13px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--primary);
  }
  .sn-all i { font-size: 13px; }
  .sn-all span { min-width: 22px; height: 20px; padding: 0 5px; display: inline-grid; place-items: center; background: var(--primary); color: var(--white); font-size: 11.5px; letter-spacing: 0; }
  .sn-all:active { background: var(--light); }

  .sn-rail { position: relative; }
  .sn-rail::before, .sn-rail::after { content: ""; position: absolute; top: 0; bottom: 0; width: 56px; z-index: 1; pointer-events: none; transition: opacity .2s; }
  .sn-rail::before { left: 0; background: linear-gradient(90deg, var(--white) 35%, rgba(255, 255, 255, 0)); }
  .sn-rail::after { right: 0; background: linear-gradient(270deg, var(--white) 35%, rgba(255, 255, 255, 0)); }
  .sn-rail.at-start::before, .sn-rail.at-end::after { opacity: 0; }
  .sn-arrow {
    position: absolute; top: 50%; z-index: 2; display: grid; place-items: center;
    width: 32px; height: 32px; margin-top: -16px; border-radius: 50%;
    background: var(--white); border: 1px solid var(--grey); box-shadow: 0 4px 12px rgba(13, 42, 79, .12);
    color: var(--primary); font-size: 11px; transition: opacity .2s;
  }
  .sn-prev { left: 0; }
  .sn-next { right: 0; }
  .sn-rail.at-start .sn-prev, .sn-rail.at-end .sn-next { opacity: 0; pointer-events: none; }

  .side-nav--collapse .lg-tabs { display: flex; gap: 8px; overflow-x: auto; border: 0; scroll-behavior: smooth; scrollbar-width: none; padding: 2px 0; }
  .side-nav--collapse .lg-tabs::-webkit-scrollbar { display: none; }
  .side-nav--collapse .lg-tab {
    flex-shrink: 0; width: auto; height: 40px; margin: 0; padding: 0 14px;
    border: 1px solid var(--grey); background: var(--white);
    font-size: 15px; white-space: nowrap;
  }
  .side-nav--collapse .lg-tab i, .side-nav--collapse .lg-tab::before, .side-nav--collapse .lg-tab::after { display: none; }
  .side-nav--collapse .lg-tab.is-active { background: var(--primary); border-color: var(--primary); color: var(--white); }

  /* Alt panel */
  .sn-sheet { display: block; position: fixed; inset: 0; z-index: 330; visibility: hidden; pointer-events: none; }
  .sn-sheet.is-open { visibility: visible; pointer-events: auto; }
  .sn-sheet-backdrop { position: absolute; inset: 0; background: rgba(13, 42, 79, .5); opacity: 0; transition: opacity .3s var(--ease); }
  .sn-sheet.is-open .sn-sheet-backdrop { opacity: 1; }
  .sn-sheet-panel {
    position: absolute; left: 0; right: 0; bottom: 0; max-height: 82vh; display: flex; flex-direction: column;
    background: var(--white); border-top: 3px solid var(--secondary);
    padding-bottom: env(safe-area-inset-bottom, 0px);
    transform: translateY(100%); transition: transform .35s var(--ease);
  }
  .sn-sheet.is-open .sn-sheet-panel { transform: none; }
  .sn-sheet-head { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 20px 16px 14px; border-bottom: 1px solid var(--grey); }
  .sn-grip { position: absolute; top: 7px; left: 50%; width: 40px; height: 4px; margin-left: -20px; border-radius: 2px; background: var(--grey); }
  .sn-sheet-head small { display: block; font-family: var(--font-head); font-size: 12px; font-weight: 600; letter-spacing: 1.6px; text-transform: uppercase; color: var(--text-accent); }
  .sn-sheet-head b { display: block; font-family: var(--font-head); font-size: 24px; font-weight: 600; color: var(--primary); }
  .sn-sheet-head .qm-close { width: 42px; height: 42px; }
  .sn-sheet-list { overflow-y: auto; overscroll-behavior: contain; }
  .sn-sheet-list li + li { border-top: 1px solid var(--grey); }
  .sn-sheet-list a { position: relative; display: flex; align-items: center; gap: 14px; min-height: 56px; padding: 8px 16px; font-family: var(--font-head); font-size: 16px; font-weight: 600; color: var(--text); }
  .sn-sheet-list a > i:first-child { width: 36px; height: 36px; flex-shrink: 0; display: grid; place-items: center; background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 14px; }
  .sn-sheet-list span { flex: 1; min-width: 0; }
  .sn-go { font-size: 11px; color: var(--grey-dark); }
  .sn-sheet-list a.is-active { background: var(--light); color: var(--primary); box-shadow: inset 3px 0 0 var(--secondary); }
  .sn-sheet-list a.is-active > i:first-child { background: var(--secondary); color: var(--white); }
}
@media (max-width: 991.98px) { .inner-side--scroll:has(.side-nav--collapse) { padding-right: 0; } }
/* Mobil bölüm menüsü: "Hızlı Menü" ibaresi */
@media (max-width: 991.98px) {
  .sn-title small { display: flex; align-items: center; gap: 6px; margin-bottom: 4px; font-family: var(--font-head); font-size: 11.5px; font-weight: 600; letter-spacing: 1.6px; text-transform: uppercase; color: var(--text-accent); }
  .sn-title small i { font-size: 10px; }
  .side-nav--collapse .sn-head { align-items: flex-end; }
}

/* =========================================================
   Mobil/tablet responsive düzeltmeleri (iç sayfa denetimi)
   ========================================================= */
@media (max-width: 991.98px) {
  /* 1) Bilgi bandı: ikon + metin yan yana, düğme altta tam genişlik */
  .cta-band { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 14px 16px; padding: 22px 18px; }
  .cta-icon { width: 52px; height: 52px; font-size: 21px; }
  .cta-text strong { font-size: 28px; line-height: 1.1; }
  .cta-text p { font-size: 14px; }
  .cta-band .btn { grid-column: 1 / -1; justify-content: center; width: 100%; }
  /* E-bülten bandı mobilde gizli footer formuna yönlendirdiği için gizlenir */
  .cta-band:has(a[href="#nl-email"]) { display: none; }

  /* 2) Yan kutular içerikten sonra; bölüm menüsü en üstte */
  .inner > .inner-side { display: contents; }
  .inner-side > * { order: 2; min-width: 0; }
  .inner-side > .side-nav { order: 0; }
  .inner > .inner-content { order: 1; }
  .inner-side > .mega-feature--call { display: none; } /* Çözüm Hattı alt çubukta */

  /* 3) Teşkilat şeması: masaüstü kuralını ez */
  .org-top { grid-template-columns: minmax(0, 1fr); }
  .org-top .org-mayor { flex-direction: row; max-width: none; }
  .org-top .org-mayor .person-photo { width: 120px; flex-shrink: 0; aspect-ratio: auto; }
  .org-top .org-mayor .person-body { padding: 16px; }
  .org-top .org-mayor .person-name { font-size: 22px; }

  /* 7) Dokunma alanları */
  .page-hero .breadcrumb a { display: inline-flex; align-items: center; min-height: 32px; }
  .contact-card a.card-act { min-height: 36px; }
}
/* 6) Uzun kart listeleri telefonda iki sütun */
@media (min-width: 360px) and (max-width: 639.98px) {
  .people--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .people--4 .person-body { padding: 14px 12px; }
  .people--4 .person-name { font-size: 17px; }
  .people--4 .person-meta { font-size: 12.5px; }
  .people--4 .chip-row span { font-size: 11px; padding: 2px 6px; }
  .unit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
/* 4) Tablolar: mobilde kısa değerlerin yanında sütun adı */
@media (max-width: 991.98px) {
  .data-table--plain td.has-label { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
  .data-table--plain td.has-label::before {
    content: attr(data-label); flex-shrink: 0;
    font-family: var(--font-head); font-size: 11.5px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--text-muted);
  }
}
@media (max-width: 991.98px) {
  .data-table--plain td.has-label { justify-content: flex-start; gap: 6px; }
  .data-table--plain td.has-label::before { margin-right: auto; }
}
/* İstatistik şeritleri: telefonda 2×2, kompakt */
@media (min-width: 340px) and (max-width: 639.98px) {
  .stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stat { flex-direction: column; align-items: flex-start; gap: 8px; padding: 14px 12px; border-bottom: 1px solid var(--grey); }
  .stat:nth-child(odd) { border-right: 1px solid var(--grey); }
  .stat:nth-last-child(-n+2):nth-child(odd), .stat:nth-last-child(-n+2):nth-child(odd) ~ .stat { border-bottom: 0; }
  .stat > i { width: 36px; height: 36px; font-size: 15px; }
  .stat b, .stats--text .stat b, .dh-stats .stat b { font-size: 24px; white-space: normal; }
  .stat small { font-size: 11px; }
}

/* =========================================================
   Mobil anasayfa sıralaması: önce işlem, sonra bilgi, en son kurum
   e-Hizmetler → Duyurular → Haberler → Keşfedin → Başkanımız → Rakamlar
   ========================================================= */
@media (max-width: 991.98px) {
  .band .m-services { order: 1; border-top: 0; }
  .band .notices { order: 2; }
  .band .news { order: 3; border-top: 1px solid var(--grey); }
  .band .m-discover { order: 4; }
  .band .mayor { order: 5; }
  .band .m-stats { order: 6; }
  /* Hero kısaltıldı: ilk ekranda e-Hizmetler de görünür */
  .page > main.hero { height: clamp(340px, 50vh, 460px); min-height: 0; padding-top: 0; aspect-ratio: auto; }
  .page > main.hero .hero-title { font-size: 25px; line-height: 1.15; }
  .page > main.hero .hero-actions { margin-top: 14px; }
  .page > main.hero .hero-actions .btn { height: 44px; padding: 0 16px; }
  .page > main.hero .hero-nav { margin-top: 12px; }
}
/* Teşkilat şeması: "Görevde" rozeti fotoğrafın üzerinde değil, bilgi alanında */
.org-mayor .person-body .person-badge { position: static; align-self: flex-start; margin-bottom: 8px; }
/* Nöbetçi eczaneler: ilçe seçimi tam genişlik, sayaç altında */
/* İlçe/mahalle seçim kutuları (tüm sayfalar): seçim tam genişlik, sayaç altında */
.district-bar .field { flex: 1 1 100%; }
.district-bar .list-count { flex-basis: 100%; }

/* Başvuru türü sekmeleri: tek parça, eşit genişlikte bölümlü kontrol */
.guide-tabs {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 0;
  margin-bottom: 32px; border: 1px solid var(--grey); background: var(--white);
}
.guide-tabs .nl-chip {
  position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px;
  height: auto; min-height: 92px; padding: 16px 12px; margin: 0;
  border: 0; border-right: 1px solid var(--grey);
  font-size: 13.5px; letter-spacing: 1px; line-height: 1.25; text-align: center; color: var(--text);
  transition: background .2s, color .2s;
}
.guide-tabs .nl-chip:last-child { border-right: 0; }
.guide-tabs .nl-chip i {
  width: 40px; height: 40px; display: grid; place-items: center;
  background: rgba(var(--primary-rgb), .07); color: var(--primary); font-size: 16px;
  transition: background .2s, color .2s;
}
.guide-tabs .nl-chip::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: var(--secondary); transform: scaleX(0); transition: transform .25s var(--ease); }
.guide-tabs .nl-chip:hover { background: var(--light); color: var(--primary); }
.guide-tabs .nl-chip.is-active { background: var(--primary); color: var(--white); }
.guide-tabs .nl-chip.is-active i { background: var(--secondary); color: var(--white); }
.guide-tabs .nl-chip.is-active::after { transform: scaleX(1); }
@media (max-width: 639.98px) {
  .guide-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .guide-tabs .nl-chip { min-height: 80px; padding: 12px 8px; font-size: 12.5px; border-bottom: 1px solid var(--grey); }
  .guide-tabs .nl-chip:nth-child(even) { border-right: 0; }
  .guide-tabs .nl-chip:last-child:nth-child(odd) { grid-column: 1 / -1; border-right: 0; }
  .guide-tabs .nl-chip:last-child, .guide-tabs .nl-chip:nth-last-child(2):nth-child(odd) { border-bottom: 0; }
}
/* Hizmet rehberi kategori filtreleri: başvuru sekmeleriyle aynı bölümlü kontrol */
.list-toolbar .guide-tabs { flex: 1 1 100%; margin-bottom: 0; }
.guide-tabs--filter { grid-template-columns: repeat(7, minmax(0, 1fr)); }
.guide-tabs--filter .nl-chip { min-height: 84px; }
.list-toolbar:has(.guide-tabs) .qm-search { flex: 1 1 100%; width: auto; }
@media (max-width: 1200px) and (min-width: 640px) {
  .guide-tabs--filter { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .guide-tabs--filter .nl-chip { border-bottom: 1px solid var(--grey); }
  .guide-tabs--filter .nl-chip:nth-child(4n) { border-right: 0; }
  .guide-tabs--filter .nl-chip:nth-child(n+5) { border-bottom: 0; }
  .guide-tabs--filter .nl-chip:last-child { grid-column: span 2; }
}
@media (max-width: 639.98px) {
  .guide-tabs--filter { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .guide-tabs--filter .nl-chip { min-height: 72px; padding: 10px 4px; gap: 6px; font-size: 11.5px; letter-spacing: .4px; border-right: 1px solid var(--grey); border-bottom: 1px solid var(--grey); }
  .guide-tabs--filter .nl-chip i { width: 32px; height: 32px; font-size: 13px; }
  .guide-tabs--filter .nl-chip:nth-child(4n) { border-right: 0; }
  .guide-tabs--filter .nl-chip:nth-child(n+5) { border-bottom: 0; }
  .guide-tabs--filter .nl-chip:last-child { grid-column: span 2; border-right: 0; }
}
@media (max-width: 1200px) {
  .guide-tabs.guide-tabs--filter .nl-chip:last-child:nth-child(odd) { grid-column: span 2; }
}
@media (max-width: 639.98px) {
  .guide-tabs.guide-tabs--filter .nl-chip:nth-child(even) { border-right: 1px solid var(--grey); }
  .guide-tabs.guide-tabs--filter .nl-chip:nth-child(4n), .guide-tabs.guide-tabs--filter .nl-chip:last-child:nth-child(odd) { border-right: 0; }
  .guide-tabs.guide-tabs--filter .nl-chip:nth-last-child(2):nth-child(odd) { border-bottom: 0; }
}

/* Lacivert zeminlerde (footer, üst bar, bilgi bantları) vurgu ikonları ve çizgileri beyaz */
.footer-contact i, .footer-cookie i, .footer-list a::before, .info-item > i { color: var(--white); }
.footer-contact i { background: rgba(255, 255, 255, .1); }
.footer-title::after { background: var(--white); }
.footer-list a:hover::before { color: var(--white); }
