/* =========================================================
   En Kampüs Denizli Akademi - Çok Yakında Landing Sayfası
   ========================================================= */

:root {
  --navy: #001e50;
  --navy-light: #0a3a8c;
  --navy-lighter: #123b8f;
  --gold: #f4b233;
  --gold-dark: #d99a1f;
  --bg-soft: #f7f8fb;
  --text-dark: #1c2333;
  --text-muted: #5c6478;
  --radius: 18px;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  font-family: "Inter", "Poppins", -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--text-dark);
  background: #fff;
  overflow-x: hidden;
  /* Sticky footer: içerik kısa olan sayfalarda (ör. admin panelinden henüz
     içerik girilmemiş bir kurumsal sayfa) footer'ın ekranın ortasında kalması
     yerine her zaman en altta durmasını sağlar. body'nin doğrudan çocukları
     (topbar, sayfa içeriği section'ları, footer) dikey bir flex düzeninde
     sıralanır; footer'daki margin-top:auto onu içerik kısa da olsa en alta iter. */
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

h1, h2, h3, .brand, .badge-pill {
  font-family: "Poppins", "Inter", sans-serif;
}

img { max-width: 100%; }

a { text-decoration: none; }

/* ---------- TOP BAR ---------- */
.topbar {
  background: #fff;
  border-bottom: 1px solid #ececf2;
  position: sticky;
  top: 0;
  z-index: 50;
}

.brand-logo {
  height: 40px;
  width: auto;
}

.topbar-link {
  color: var(--navy);
  font-weight: 600;
  font-size: 0.92rem;
  padding: 0.4rem 0.6rem;
  border-radius: 50px;
  transition: background 0.2s ease, color 0.2s ease;
}

.topbar-link:hover { background: var(--bg-soft); color: var(--navy); }

.topbar-link i { font-size: 1.05rem; color: var(--gold-dark); }

.topbar-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: var(--bg-soft);
  color: var(--navy);
  font-size: 1.1rem;
  transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.topbar-icon:hover {
  background: var(--navy);
  color: #fff;
  transform: translateY(-2px);
}

/* ---------- NAVBAR (iç sayfalar) ---------- */
.navbar-nav .nav-link {
  color: var(--navy);
  font-weight: 600;
  font-size: 0.95rem;
  padding: 0.55rem 0.9rem;
  border-radius: 50px;
  transition: background 0.2s ease, color 0.2s ease;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link:focus,
.navbar-nav .nav-link.active {
  background: var(--bg-soft);
  color: var(--navy);
}

.navbar-nav .dropdown-menu {
  border: none;
  border-radius: 14px;
  box-shadow: 0 12px 30px rgba(0, 30, 80, 0.14);
  padding: 0.5rem;
}

.navbar-nav .dropdown-item {
  border-radius: 10px;
  padding: 0.55rem 0.9rem;
  font-weight: 500;
  font-size: 0.92rem;
}

.navbar-nav .dropdown-item:hover,
.navbar-nav .dropdown-item:focus {
  background: var(--bg-soft);
  color: var(--navy);
}

.btn-navy-sm {
  background: var(--navy) !important;
  color: #fff !important;
  font-weight: 600;
  padding: 0.5rem 1.1rem !important;
}

.btn-navy-sm:hover { background: var(--navy-light) !important; }

@media (max-width: 991.98px) {
  .navbar-collapse {
    background: #fff;
    border-radius: 14px;
    margin-top: 0.75rem;
    padding: 0.75rem;
    box-shadow: 0 8px 20px rgba(0, 30, 80, 0.08);
  }
}

/* ---------- HERO ---------- */
.hero {
  position: relative;
  background: var(--navy); /* bazı mobil operatör/veri sıkıştırma proxy'leri linear-gradient'i siliyor - katı renk yedeği */
  background: linear-gradient(150deg, var(--navy) 0%, var(--navy-light) 55%, var(--navy-lighter) 100%);
  color: #fff;
  padding: clamp(4rem, 8vw, 7rem) 0 clamp(4.5rem, 10vw, 8rem);
  overflow: hidden;
}

.hero-shape {
  position: absolute;
  border-radius: 50%;
  filter: blur(2px);
  opacity: 0.25;
  pointer-events: none;
}

.hero-shape-1 {
  width: 420px;
  height: 420px;
  background: var(--gold);
  top: -160px;
  right: -120px;
  opacity: 0.18;
}

.hero-shape-2 {
  width: 300px;
  height: 300px;
  background: var(--gold);
  bottom: -140px;
  left: -100px;
  opacity: 0.12;
}

.badge-pill {
  display: inline-block;
  background: rgba(244, 178, 51, 0.15);
  border: 1px solid rgba(244, 178, 51, 0.5);
  color: var(--gold);
  font-weight: 600;
  font-size: 0.85rem;
  letter-spacing: 0.03em;
  padding: 0.45rem 1.1rem;
  border-radius: 50px;
  margin-bottom: 1.5rem;
}

.hero-title {
  font-weight: 800;
  font-size: clamp(2.1rem, 5.5vw, 3.6rem);
  line-height: 1.15;
  margin-bottom: 1.25rem;
}

.hero-text {
  font-size: clamp(1rem, 1.6vw, 1.15rem);
  color: rgba(255, 255, 255, 0.85);
  max-width: 640px;
  margin: 0 auto 2.25rem;
  line-height: 1.7;
}

.hero-actions {
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-wrap: wrap;
}

.btn-gold {
  background: var(--gold);
  border: 1px solid var(--gold);
  color: var(--navy);
  font-weight: 700;
  border-radius: 50px;
  padding: 0.75rem 1.75rem;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.btn-gold:hover {
  background: var(--gold-dark);
  border-color: var(--gold-dark);
  color: var(--navy);
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(244, 178, 51, 0.35);
}

.btn-outline-light {
  border-radius: 50px;
  font-weight: 600;
  padding: 0.75rem 1.75rem;
  transition: transform 0.2s ease;
}

.btn-outline-light:hover { transform: translateY(-2px); }

.btn-navy {
  background: var(--navy);
  border: 1px solid var(--navy);
  color: #fff;
  font-weight: 700;
  border-radius: 50px;
  padding: 0.7rem 1.5rem;
  transition: background 0.2s ease, transform 0.2s ease;
}

.btn-navy:hover {
  background: var(--navy-light);
  color: #fff;
  transform: translateY(-2px);
}

/* ---------- SECTION HEADING ---------- */
.section-heading { margin-bottom: 3rem; }

.section-eyebrow {
  display: inline-block;
  color: var(--gold-dark);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-size: 0.82rem;
  margin-bottom: 0.6rem;
}

.section-heading h2 {
  font-weight: 800;
  color: var(--navy);
  font-size: clamp(1.6rem, 3.5vw, 2.3rem);
  margin-bottom: 0.75rem;
}

.section-sub {
  color: var(--text-muted);
  max-width: 620px;
  margin: 0 auto;
  font-size: 1.02rem;
}

/* ---------- PROGRAMS ---------- */
.programs {
  padding: clamp(4rem, 8vw, 6rem) 0;
  background: var(--bg-soft);
}

.program-card {
  background: #fff;
  border-radius: var(--radius);
  padding: 2.25rem 1.75rem;
  height: 100%;
  box-shadow: 0 8px 24px rgba(0, 30, 80, 0.06);
  border: 1px solid #edeef4;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.program-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 32px rgba(0, 30, 80, 0.12);
}

.program-icon {
  width: 58px;
  height: 58px;
  border-radius: 16px;
  background: var(--navy); /* katı renk yedeği (bkz. .hero) */
  background: linear-gradient(135deg, var(--navy), var(--navy-light));
  color: var(--gold);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
  margin-bottom: 1.25rem;
}

.program-card h3 {
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 0.6rem;
}

.program-card p {
  color: var(--text-muted);
  font-size: 0.95rem;
  margin-bottom: 0;
  line-height: 1.6;
}

.program-card p + p {
  margin-top: 0.75rem;
}

.program-card-img {
  width: 58px;
  height: 58px;
  object-fit: cover;
  border-radius: 16px;
}

.program-card-detay {
  font-size: 0.88rem;
  color: var(--text-muted);
  opacity: 0.9;
}

/* ---------- CONTACT ---------- */
.contact {
  padding: clamp(4rem, 8vw, 6rem) 0;
  background: #fff;
}

.contact-card {
  background: var(--bg-soft);
  border-radius: var(--radius);
  padding: 2rem;
  display: flex;
  flex-direction: column;
}

.contact-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 1.4rem;
}

.contact-list li {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}

.contact-list i {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 12px;
  background: rgba(0, 30, 80, 0.08);
  color: var(--navy);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.15rem;
}

.contact-list strong {
  display: block;
  color: var(--navy);
  font-size: 0.9rem;
  margin-bottom: 0.2rem;
}

.contact-list a,
.contact-list span {
  color: var(--text-muted);
  font-size: 0.98rem;
}

.contact-list a { color: var(--text-dark); font-weight: 600; }
.contact-list a:hover { color: var(--navy-light); }

.social-inline {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}

.social-inline a {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  color: var(--text-dark);
  font-weight: 600;
}

.map-wrap {
  min-height: 320px;
  border-radius: var(--radius);
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(0, 30, 80, 0.08);
}

.map-wrap iframe { display: block; min-height: 320px; }

/* ---------- FOOTER ---------- */
.footer {
  background: var(--navy);
  color: rgba(255, 255, 255, 0.85);
  margin-top: auto; /* body flex konteynerinde footer'ı her zaman en alta iter */
}

.footer-logo {
  height: 32px;
  filter: brightness(0) invert(1);
  opacity: 0.9;
}

.footer p { font-size: 0.92rem; }

.footer-icon { background: rgba(255, 255, 255, 0.08); color: #fff; }
.footer-icon:hover { background: var(--gold); color: var(--navy); }

/* Sağ altta sabit duran WhatsApp butonu - sayfa kaydırılsa bile hep görünür.
   WhatsApp'ın kendi marka rengi kasıtlı kullanıldı (navy/gold yerine),
   böylece kullanıcı butonu anında tanıyıp güvenir. */
.whatsapp-float {
  position: fixed;
  right: 22px;
  bottom: 22px;
  width: 58px;
  height: 58px;
  background: #25d366;
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.9rem;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25);
  z-index: 1040;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.whatsapp-float:hover,
.whatsapp-float:focus {
  color: #fff;
  transform: scale(1.08);
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.32);
}
@media (max-width: 575.98px) {
  .whatsapp-float {
    right: 16px;
    bottom: 16px;
    width: 52px;
    height: 52px;
    font-size: 1.7rem;
  }
}

.preview-note {
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.8rem;
}

/* ---------- ANASAYFA HERO ---------- */
.home-hero {
  position: relative;
  background: var(--navy); /* katı renk yedeği (bkz. .hero) */
  background: linear-gradient(150deg, var(--navy) 0%, var(--navy-light) 55%, var(--navy-lighter) 100%);
  color: #fff;
  padding: clamp(3.5rem, 7vw, 6rem) 0;
  overflow: hidden;
}

.home-hero-shape {
  position: absolute;
  border-radius: 50%;
  background: var(--gold);
  pointer-events: none;
}

.home-hero-shape-1 { width: 380px; height: 380px; top: -140px; right: -100px; opacity: 0.15; }
.home-hero-shape-2 { width: 260px; height: 260px; bottom: -120px; left: -80px; opacity: 0.1; }

.home-hero-title {
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  font-size: clamp(1.9rem, 4.5vw, 2.9rem);
  line-height: 1.2;
  margin: 1rem 0 1.1rem;
}

.home-hero-text {
  color: rgba(255, 255, 255, 0.85);
  font-size: 1.05rem;
  line-height: 1.7;
  margin-bottom: 2rem;
  max-width: 560px;
}

.home-hero-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}

.home-stat {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 14px;
  padding: 1.1rem;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.home-stat i { font-size: 1.5rem; color: var(--gold); flex-shrink: 0; }
.home-stat strong { display: block; font-size: 0.95rem; }
.home-stat span { display: block; font-size: 0.78rem; color: rgba(255, 255, 255, 0.75); }

/* ---------- ANASAYFA GÖRSEL SLAYT (banner altı, admin panelinden yönetilir) ---------- */
.home-slider {
  background: var(--navy);
  border-top: 4px solid var(--gold);
  box-shadow: 0 -6px 16px rgba(0, 0, 0, 0.18) inset;
}

/* Görsel HİÇBİR ZAMAN kırpılmaz (object-fit: contain): görselin en-boy
   oranı ne olursa olsun tamamı gösterilir, kutunun oranına tam
   oturmadığında sağda/solda (veya üstte/altta) navy renkli boşluk
   kalır - kullanıcı isteği (2026-09-01): "kırpma yapmasa olmazmı,
   sağdan soldan boşluk kalsın gerekirse ama herzaman tam görseli
   göstersin". Kutu yüksekliği, admin panelinde önerilen ~16:9
   (1600x900) oranına yakın (56vw) ayarlanmıştır ki bu orana uyan
   görsellerde ekstra boşluk neredeyse hiç oluşmasın; farklı oranlı
   görsellerde ise sadece boşluk artar, KIRPMA OLMAZ. */
.home-slider .carousel-item {
  height: clamp(200px, 56vw, 640px);
}

.home-slider .carousel-item picture,
.home-slider .carousel-item img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  display: block;
  transition: filter 0.2s ease;
}

/* Buton metni boş bırakılıp sadece link girilen slaytlarda görselin
   TAMAMI tıklanabilir hale gelir (bkz. index.php $tumGorselTiklanabilir). */
.home-slider-tum-gorsel {
  display: block;
  width: 100%;
  height: 100%;
  cursor: pointer;
}

.home-slider-tum-gorsel:hover img {
  filter: brightness(0.94);
}

@media (max-width: 767.98px) {
  .home-slider .carousel-item {
    height: clamp(180px, 56vw, 360px);
  }
}

.home-slider .carousel-caption {
  background: rgba(0, 30, 80, 0.55);
  border-radius: 14px;
  padding: 1rem 1.5rem;
  bottom: 1.75rem;
  left: 10%;
  right: 10%;
}

.home-slider .carousel-caption h3 {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-size: clamp(1.1rem, 2.5vw, 1.6rem);
}

.home-slider .carousel-caption p {
  font-size: 0.92rem;
  margin-bottom: 0.75rem;
}

.home-slider .carousel-indicators [data-bs-target] {
  background-color: var(--gold);
  width: 9px;
  height: 9px;
  border-radius: 50%;
}

.home-slider .carousel-control-prev,
.home-slider .carousel-control-next {
  width: 5%;
}

@media (max-width: 575.98px) {
  .home-slider .carousel-caption { padding: 0.6rem 0.9rem; bottom: 0.9rem; left: 5%; right: 5%; }
  .home-slider .carousel-caption p { display: none; }
}

/* ---------- CTA BAND ---------- */
.cta-band {
  background: var(--bg-soft);
  padding: clamp(3rem, 6vw, 4.5rem) 0;
}

.cta-band h2 {
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  color: var(--navy);
  font-size: clamp(1.5rem, 3.5vw, 2.1rem);
  margin-bottom: 0.6rem;
}

.cta-band p { color: var(--text-muted); margin-bottom: 1.5rem; }
.cta-band .btn-outline-light { color: var(--navy); border-color: var(--navy); }
.cta-band .btn-outline-light:hover { background: var(--navy); color: #fff; }

/* ---------- İÇ SAYFA BANNER (page-hero) ---------- */
.page-hero {
  background: var(--navy); /* katı renk yedeği (bkz. .hero) */
  background: linear-gradient(150deg, var(--navy) 0%, var(--navy-light) 100%);
  color: #fff;
  padding: clamp(2.75rem, 6vw, 4rem) 0;
}

.page-hero h1 {
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  font-size: clamp(1.7rem, 4vw, 2.5rem);
  margin-bottom: 0.5rem;
}

.page-hero p {
  color: rgba(255, 255, 255, 0.85);
  max-width: 620px;
  margin: 0 auto;
}

/* ---------- SERBEST METİN SAYFALARI (Misyon-Vizyon, KVKK) ---------- */
.simple-content { padding: clamp(3rem, 6vw, 4.5rem) 0; }

.simple-content h2 {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  color: var(--navy);
  font-size: 1.4rem;
  margin-bottom: 1rem;
}

.simple-content p { color: var(--text-dark); line-height: 1.75; }

.simple-content-cover {
  width: 100%;
  max-height: 360px;
  object-fit: cover;
  border-radius: var(--radius);
  margin-bottom: 2.5rem;
}

/* ---------- GÜNCEL: DUYURU / ETKİNLİK KARTLARI ---------- */
.duyuru-card {
  display: block;
  background: #fff;
  border-radius: var(--radius);
  overflow: hidden;
  height: 100%;
  border: 1px solid #edeef4;
  box-shadow: 0 8px 24px rgba(0, 30, 80, 0.06);
  text-decoration: none;
  color: inherit;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.duyuru-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 32px rgba(0, 30, 80, 0.12);
  color: inherit;
}

.duyuru-card-static { cursor: default; }
.duyuru-card-static:hover { transform: none; box-shadow: 0 8px 24px rgba(0, 30, 80, 0.06); }

.duyuru-img {
  width: 100%;
  height: 180px;
  object-fit: cover;
  display: block;
}

.duyuru-img-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--navy); /* katı renk yedeği (bkz. .hero) */
  background: linear-gradient(135deg, var(--navy), var(--navy-light));
  color: var(--gold);
  font-size: 2.2rem;
}

.duyuru-body { padding: 1.5rem 1.5rem 1.75rem; }

.duyuru-tarih {
  display: inline-block;
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--gold-dark);
  margin-bottom: 0.5rem;
}

.duyuru-body h3 {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 0.6rem;
}

.duyuru-body p {
  color: var(--text-muted);
  font-size: 0.92rem;
  line-height: 1.6;
  margin-bottom: 0.75rem;
}

.duyuru-link {
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--navy);
}

/* ---------- GÜNCEL: DENEME SINAVI TAKVİMİ ---------- */
.takvim-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.takvim-item {
  display: flex;
  align-items: flex-start;
  gap: 1.5rem;
  background: #fff;
  border: 1px solid #edeef4;
  border-radius: var(--radius);
  padding: 1.25rem 1.5rem;
  margin-bottom: 1rem;
  box-shadow: 0 8px 24px rgba(0, 30, 80, 0.05);
}

.takvim-tarih {
  flex: 0 0 auto;
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--navy); /* katı renk yedeği (bkz. .hero) */
  background: linear-gradient(135deg, var(--navy), var(--navy-light));
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.1;
}

.takvim-tarih span {
  font-size: 0.7rem;
  font-weight: 600;
  text-transform: uppercase;
  color: var(--gold);
}

.takvim-icerik h3 {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 0.35rem;
}

.takvim-icerik p {
  color: var(--text-muted);
  font-size: 0.9rem;
  margin-bottom: 0;
}

/* ---------- KADRO (Team) ---------- */
.team-section { padding: clamp(3rem, 6vw, 4.5rem) 0; }

.team-group-title {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  color: var(--navy);
  font-size: 1.25rem;
  margin-bottom: 1.5rem;
  padding-bottom: 0.6rem;
  border-bottom: 2px solid var(--bg-soft);
}

.team-card {
  background: #fff;
  border: 1px solid #edeef4;
  border-radius: var(--radius);
  padding: 1.75rem 1.25rem;
  text-align: center;
  height: 100%;
  box-shadow: 0 6px 18px rgba(0, 30, 80, 0.05);
}

.team-photo {
  width: 96px;
  height: 96px;
  border-radius: 50%;
  object-fit: cover;
  margin: 0 auto 1rem;
  display: block;
  border: 3px solid var(--bg-soft);
}

.team-photo-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--bg-soft);
  color: var(--text-muted);
  font-size: 2rem;
}

.team-card h3 { font-size: 1.05rem; font-weight: 700; color: var(--navy); margin-bottom: 0.2rem; }
.team-unvan { color: var(--gold-dark); font-size: 0.88rem; font-weight: 600; margin-bottom: 0.6rem; }
.team-bio { color: var(--text-muted); font-size: 0.88rem; line-height: 1.6; margin-bottom: 0; }

/* ---------- GALERİ (Kurumdan Kareler) ---------- */
.gallery-section { padding: clamp(3rem, 6vw, 4.5rem) 0; }

.gallery-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 1.25rem;
}

.gallery-item {
  position: relative;
  display: block;
  border-radius: 14px;
  overflow: hidden;
  aspect-ratio: 4 / 3;
}

.gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.gallery-item:hover img { transform: scale(1.06); }

.gallery-caption {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0.6rem 0.8rem;
  background: rgba(0, 30, 80, 0.7); /* katı renk yedeği (bkz. .hero) */
  background: linear-gradient(to top, rgba(0, 30, 80, 0.85), transparent);
  color: #fff;
  font-size: 0.85rem;
  font-weight: 600;
}

/* ---------- BAŞARI HİKAYELERİ (Stories) ---------- */
.stories-section { padding: clamp(3rem, 6vw, 4.5rem) 0; }

.story-card {
  background: #fff;
  border: 1px solid #edeef4;
  border-radius: var(--radius);
  padding: 1.5rem;
  height: 100%;
  box-shadow: 0 6px 18px rgba(0, 30, 80, 0.05);
}

.story-header {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1rem;
}

.story-photo {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}

.story-photo-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--bg-soft);
  color: var(--text-muted);
  font-size: 1.4rem;
}

.story-card h3 { font-size: 1rem; font-weight: 700; color: var(--navy); margin-bottom: 0.15rem; }
.story-sonuc { color: var(--gold-dark); font-size: 0.85rem; font-weight: 600; margin-bottom: 0; }
.story-yorum { color: var(--text-muted); font-size: 0.92rem; font-style: italic; line-height: 1.6; margin-bottom: 0; }

/* ---------- ÇÖZÜM ORTAKLARI (Partners) ---------- */
.partners-section { padding: clamp(3rem, 6vw, 4.5rem) 0; }

.partners-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 1.5rem;
  align-items: center;
}

.partner-logo {
  background: #fff;
  border: 1px solid #edeef4;
  border-radius: 14px;
  padding: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100px;
  filter: grayscale(1);
  opacity: 0.75;
  transition: filter 0.2s ease, opacity 0.2s ease, transform 0.2s ease;
}

.partner-logo:hover { filter: grayscale(0); opacity: 1; transform: translateY(-3px); }
.partner-logo img { max-width: 100%; max-height: 60px; object-fit: contain; }

/* ---------- FORM SECTION (Kariyer vb.) ---------- */
.form-section { padding: clamp(3rem, 6vw, 4.5rem) 0; }

.form-card {
  background: var(--bg-soft);
  border-radius: var(--radius);
  padding: clamp(1.5rem, 4vw, 2.5rem);
}

/* ---------- RESPONSIVE TWEAKS ---------- */
@media (max-width: 767.98px) {
  .contact-card { padding: 1.5rem; }
  .map-wrap, .map-wrap iframe { min-height: 260px; }
  .hero-actions { flex-direction: column; align-items: stretch; }
  .hero-actions .btn { width: 100%; }
  .story-header { flex-direction: column; text-align: center; }
  .home-hero-stats { grid-template-columns: 1fr; }
  .cta-band .hero-actions { flex-direction: column; align-items: stretch; }
}

@media (max-width: 575.98px) {
  .brand-logo { height: 34px; }
  .topbar-icon { width: 34px; height: 34px; font-size: 1rem; }
}
