/* Organizasyon şeması: personel kutucukları ve müdürlük kartları */
.org-staff { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin-top: 10px; max-width: 300px; }
.org-staff span { background: #fff4e6; color: #9a4a00; border: 1px solid #ffd7a8; border-radius: 99px; padding: .22rem .75rem; font-size: .72rem; font-weight: 600; line-height: 1.3; }
.org-gm { min-width: 210px; }
.org-chart .org-box { min-width: 200px; }
.dept-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 18px; margin: 1rem 0 2rem; }
.dept { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow); transition: transform .3s, box-shadow .3s; }
.dept:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); }
.dept header { padding: 1rem 1.1rem; color: #fff; background: linear-gradient(135deg, var(--blue-900), var(--blue-700)); position: relative; overflow: hidden; }
.dept header::after { content: ""; position: absolute; right: -10px; top: -6px; width: 56px; height: 66px; background: rgba(var(--cyan-rgb), .35); clip-path: polygon(0 0, 100% 50%, 0 100%); }
.dept header strong { display: block; font-size: .95rem; line-height: 1.3; position: relative; }
.dept header span { display: block; margin-top: .3rem; font-size: .76rem; opacity: .85; position: relative; }
.dept-list { list-style: none; margin: 0; padding: .9rem 1.1rem 1.1rem; }
.dept-list > li { margin-bottom: .85rem; }
.dept-list > li:last-child { margin-bottom: 0; }
.dept-list b { display: block; color: var(--blue-700); font-size: .84rem; line-height: 1.35; border-left: 3px solid var(--cyan); padding-left: .55rem; margin-bottom: .3rem; }
.dept-list ul { list-style: none; margin: 0; padding: 0 0 0 .9rem; }
.dept-list ul li { position: relative; font-size: .82rem; color: #4b5b75; padding: .12rem 0 .12rem .95rem; }
.dept-list ul li::before { content: ""; position: absolute; left: 0; top: .62rem; width: 6px; height: 6px; border-radius: 50%; background: var(--yellow); }

/* ===== Mobil menü düzeltmesi: tam ekran menü, taşma yok ===== */
html, body { overflow-x: clip; }
.quick { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1180px) {
  .site-header { backdrop-filter: none; -webkit-backdrop-filter: none; background: #fff; }
  .brand, .nav-toggle { position: relative; z-index: 3; }
  .nav { z-index: 2; top: 0; bottom: 0; left: 0; right: 0; padding: calc(var(--header-h) + 64px) 20px 2rem; }
}
@media (max-width: 960px) { .quick { grid-template-columns: repeat(2, minmax(0, 1fr)); } .split, .contact { grid-template-columns: minmax(0, 1fr); } .sayfa-grid.with-side { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 520px) { .quick { grid-template-columns: minmax(0, 1fr); } .qi-icon { width: 44px; height: 44px; } }

/* ===== Hızlı giriş animasyonu (süre panelden: --splash-ms) ===== */
.splash { transition: opacity .4s ease, visibility .4s ease, transform .5s cubic-bezier(.7, 0, .2, 1); }
.splash-img { animation: logoin .55s cubic-bezier(.2, .9, .3, 1.2) 0s forwards; }
.splash-text { animation: fade .4s .22s forwards; margin-bottom: 1.2rem; }
.splash-bar b { animation: load var(--splash-ms, 1500ms) cubic-bezier(.3, .6, .4, 1) 0s forwards; }
.splash-rings i { animation-duration: 1.8s; }
