/* ==========================================================================
   BilimDent — klinik bölümleri (styles.css üzerine ek katman)
   Palet ABU ailesinden: lacivert (--navy) + turkuaz (--teal); BilimDent marka
   mavisi (--bd-sky) aksan olarak eklenir. styles.css'teki token'lar korunur.
   ========================================================================== */
:root{
  --bd-sky:#50BED4;
  --bd-sky-soft:#E7F6FA;
  --bd-mint:#EAF7F8;
  --bd-radius:14px;
  --bd-shadow:0 10px 30px rgba(14,42,71,.08);
  --bd-shadow-hover:0 16px 40px rgba(14,42,71,.16);
}

/* ---------- Ortak başlık yardımcıları ---------- */
.section-head--center{
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:14px;
}
.section-head--center .section-title{justify-content:center}
.section-lead{
  max-width:680px;margin:0;
  font-size:15px;line-height:1.7;color:var(--muted);
}
.section-head--light .section-title{color:#fff}
.section-head--light .section-lead{color:rgba(255,255,255,.78)}
.section-head--light .section-title .bar{background:var(--bd-sky)}

/* ---------- Üst bar ----------
   Her şey SAĞA yaslı: ABU mührü (.logo--bar img, margin-top:-28px) üst bara taşar,
   sol tarafa konan içerik mührün altında kalır. */
.bd-topbar .fac-topbar__inner{justify-content:flex-end;gap:14px}
.bd-topbar__contact{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.bd-topbar__link{
  display:inline-flex;align-items:center;gap:7px;
  font-size:12.5px;font-weight:600;color:var(--navy);text-decoration:none;
  transition:color .2s ease;
}
.bd-topbar__link i{color:var(--teal);font-size:12px}
.bd-topbar__link:hover{color:var(--teal)}
.bd-topbar__btn--randevu{background:var(--teal);color:#fff}
.bd-topbar__btn--randevu:hover{background:var(--teal-dark)}

/* ---------- Header randevu CTA ---------- */
.bd-header .main-nav{display:flex;align-items:center;gap:14px}
.bd-header__cta{
  display:inline-flex;align-items:center;gap:8px;flex-shrink:0;
  height:36px;padding:0 16px;border-radius:8px;
  background:var(--navy);color:#fff;
  font-size:12.5px;font-weight:700;letter-spacing:.2px;white-space:nowrap;
  text-decoration:none;transition:background .2s ease;
}
.bd-header__cta:hover{background:var(--teal)}
.bd-header__cta i{font-size:12px}
@media (max-width:991px){
  .bd-header__cta{display:none}
  .bd-topbar__contact{gap:12px}
}
/* Dar ekranda üst bar kalabalıklaşmasın: e-posta düşer (footer'da zaten var).
   TELEFON HER ZAMAN KALIR — bir klinikte mobildeki en değerli eylem dokun-ara. */
@media (max-width:760px){
  .bd-topbar__link--mail{display:none}
  .bd-topbar .fac-topbar__inner{gap:10px}
}

/* ---------- Hero ---------- */
.bd-hero{
  position:relative;
  min-height:clamp(420px,52vw,600px);
  display:flex;align-items:center;
  background:var(--navy);color:#fff;overflow:hidden;
}
.bd-hero__bg{
  position:absolute;inset:0;z-index:0;
  background-size:cover;background-position:center;background-repeat:no-repeat;
}
.bd-hero__veil{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(100deg,
    rgba(14,42,71,.96) 0%,
    rgba(14,42,71,.92) 38%,
    rgba(14,42,71,.68) 66%,
    rgba(14,42,71,.42) 100%);
}
.bd-hero__inner{position:relative;z-index:2;width:100%;padding-top:56px;padding-bottom:56px}
.bd-hero__copy{max-width:min(640px,92%)}
.bd-hero__eyebrow{
  display:inline-block;margin-bottom:16px;
  font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  color:var(--bd-sky);
}
.bd-hero__title{
  display:flex;align-items:center;gap:16px;flex-wrap:wrap;
  font-size:clamp(30px,4.6vw,52px);font-weight:800;line-height:1.1;letter-spacing:-.02em;
  margin:0 0 18px;text-shadow:var(--shadow-header-text-lg);
}
.bd-hero__bar{display:block;width:52px;height:4px;border-radius:2px;background:var(--teal);flex:0 0 auto}
.bd-hero__lead{
  max-width:540px;margin:0 0 28px;
  font-size:clamp(15px,1.8vw,17px);line-height:1.7;color:rgba(255,255,255,.9);
  text-shadow:var(--shadow-header-text);
}
.bd-hero__actions{display:flex;gap:14px;flex-wrap:wrap}

/* ---------- Hizmetlerimiz ---------- */
.bd-services{padding:clamp(56px,7vw,84px) 0;background:#fff}
.bd-services__grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(16px,2vw,24px);
}
.bd-service{
  display:flex;flex-direction:column;align-items:flex-start;gap:12px;
  padding:28px 24px;border-radius:var(--bd-radius);
  background:#fff;border:1px solid var(--line);
  color:inherit;text-decoration:none;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
a.bd-service:hover{
  transform:translateY(-4px);
  box-shadow:var(--bd-shadow-hover);
  border-color:transparent;
}
.bd-service__icon{
  width:52px;height:52px;border-radius:14px;
  display:flex;align-items:center;justify-content:center;
  background:var(--bd-mint);color:var(--teal);font-size:20px;
  transition:background .2s ease,color .2s ease;
}
a.bd-service:hover .bd-service__icon{background:var(--teal);color:#fff}
.bd-service__title{font-size:16px;font-weight:700;color:var(--ink);margin:0;line-height:1.3}
.bd-service__text{font-size:13.5px;line-height:1.65;color:var(--muted);margin:0}
.bd-service__more{
  margin-top:auto;padding-top:6px;
  display:inline-flex;align-items:center;gap:7px;
  font-size:12.5px;font-weight:700;color:var(--teal);
}
.bd-service__more i{font-size:11px;transition:transform .2s ease}
a.bd-service:hover .bd-service__more i{transform:translateX(3px)}

/* ---------- Birleşik tanıtım bölümü (sekmeler) ----------
   Solda yapışkan sekme butonları, sağda değişen kart. Hizmetler / Neden / Süreç
   artık alt alta üç bölüm değil; aşağıdaki .bd-services, .bd-why, .bd-steps
   kuralları hâlâ duruyor çünkü ızgara gövdeleri onları kullanıyor. */
.bd-tabs{padding:clamp(56px,7vw,84px) 0;position:relative}
/* Geriye dönük çapa — görünmez, yer kaplamaz, bölümün tepesine denk gelir */
.bd-tabs__anchor{position:absolute;top:0;left:0;width:0;height:0;overflow:hidden}
.bd-tabs__inner{
  display:grid;grid-template-columns:264px minmax(0,1fr);
  gap:clamp(20px,2.6vw,32px);align-items:start;
}
.bd-tabs__nav{
  position:sticky;top:96px;
  display:flex;flex-direction:column;gap:6px;
  background:#fff;border:1px solid var(--line);border-radius:16px;
  box-shadow:var(--bd-shadow);padding:14px;
}
.bd-tabs__nav-baslik{
  font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--muted);padding:4px 10px 10px;
}
.bd-tab{
  display:flex;align-items:center;gap:12px;width:100%;
  padding:13px 14px;border:0;border-radius:12px;
  background:transparent;color:var(--ink);
  font-family:inherit;font-size:14.5px;font-weight:600;text-align:left;
  cursor:pointer;transition:background .18s ease,color .18s ease;
}
.bd-tab:hover{background:var(--bd-sky-soft)}
.bd-tab.is-active{
  background:linear-gradient(120deg,var(--teal) 0%,var(--navy-brand) 100%);
  color:#fff;box-shadow:0 8px 22px rgba(0,168,181,.28);
}
.bd-tab__icon{flex-shrink:0;width:22px;text-align:center;font-size:16px;color:var(--teal);transition:color .18s ease}
.bd-tab.is-active .bd-tab__icon{color:#fff}
.bd-tab__label{flex:1;min-width:0}
.bd-tab__arrow{font-size:11px;opacity:0;transition:opacity .18s ease,transform .18s ease}
.bd-tab.is-active .bd-tab__arrow{opacity:1;transform:translateX(2px)}

.bd-tabs__panels{
  background:#fff;border:1px solid var(--line);border-radius:20px;
  box-shadow:var(--bd-shadow);
  padding:clamp(24px,3vw,40px);
  min-height:320px;
}
.bd-tabs__panel-head{margin-bottom:clamp(20px,2.6vw,28px)}
.bd-tabs__panel-head h2{
  font-size:clamp(19px,2.2vw,24px);font-weight:800;color:var(--ink);
  margin:0;line-height:1.25;letter-spacing:-.01em;
}
.bd-tabs__panel-head p{font-size:14.5px;line-height:1.7;color:var(--muted);margin:10px 0 0}
/* Panel değişince içerik yumuşak gelsin — kart yerinde kalır, sayfa zıplamaz */
.bd-tabs--js .bd-tabs__panel.is-active{animation:bdPanelIn .28s ease both}
@keyframes bdPanelIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
  .bd-tabs--js .bd-tabs__panel.is-active{animation:none}
}

/* Panel içindeki ızgaralar kart genişliğine göre daralır (sayfa genişliğine değil) */
.bd-tabs__panel .bd-services__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.bd-tabs__panel .bd-why__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.bd-tabs__panel .bd-steps__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
/* Süreç kartları koyu zeminde tasarlanmıştı; burada beyaz kart içindeler */
.bd-tabs__panel .bd-steps__item{background:var(--bg);border-color:var(--line)}
.bd-tabs__panel .bd-steps__item h3{color:var(--ink)}
.bd-tabs__panel .bd-steps__item p{color:var(--muted)}
.bd-tabs__panel .bd-steps__no{-webkit-text-stroke-color:var(--teal)}
.bd-tabs__panel .bd-why__card{box-shadow:none;background:var(--bg)}

/* Genel Tanıtım paneli — düz metin, kart genişliğinde okunaklı satır uzunluğu */
.bd-tabs__metin{max-width:70ch}
.bd-tabs__metin p{font-size:15px;line-height:1.8;color:var(--muted);margin:0 0 14px}
.bd-tabs__metin p:last-child{margin-bottom:0}
.bd-tabs__metin strong{color:var(--ink)}

/* Hekimlerimiz paneli — Personel modülü boşken JSON listesi bu kartlarla basılır */
.bd-hekim__grid{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;
}
.bd-hekim{
  display:flex;flex-direction:column;gap:3px;
  padding:16px 18px;border-radius:12px;
  background:var(--bg);border:1px solid var(--line);
}
.bd-hekim__unvan{font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--teal)}
.bd-hekim__ad{font-size:15px;font-weight:700;color:var(--ink);line-height:1.3}
.bd-hekim__brans{font-size:13px;color:var(--muted)}
.bd-hekim__gorev{
  margin-top:5px;align-self:flex-start;
  padding:3px 9px;border-radius:999px;
  background:var(--bd-sky-soft);color:var(--navy-brand);
  font-size:11.5px;font-weight:700;
}
.bd-hekim__tumu{display:flex;justify-content:center;margin-top:clamp(22px,3vw,30px)}

/* JS yoksa: sekmeler gizlenir, tüm paneller alt alta açık kalır (içerik kaybolmasın) */
.bd-tabs:not(.bd-tabs--js) .bd-tabs__nav{display:none}
.bd-tabs:not(.bd-tabs--js) .bd-tabs__inner{grid-template-columns:minmax(0,1fr)}
.bd-tabs:not(.bd-tabs--js) .bd-tabs__panel{display:block !important}
.bd-tabs:not(.bd-tabs--js) .bd-tabs__panel + .bd-tabs__panel{margin-top:40px;padding-top:32px;border-top:1px solid var(--line)}

/* ---------- Neden BilimDent ---------- */
.bd-why{padding:clamp(56px,7vw,84px) 0}
.bd-why__grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(18px,2.4vw,28px);
}
.bd-why__card{
  background:#fff;border-radius:var(--bd-radius);
  padding:28px 24px;border:1px solid var(--line);
  box-shadow:var(--bd-shadow);
}
.bd-why__icon{
  display:flex;align-items:center;justify-content:center;
  width:46px;height:46px;border-radius:50%;margin-bottom:16px;
  background:var(--bd-sky-soft);color:var(--navy-brand);font-size:18px;
}
.bd-why__card h3{font-size:15.5px;font-weight:700;color:var(--ink);margin:0 0 8px;line-height:1.35}
.bd-why__card p{font-size:13.5px;line-height:1.65;color:var(--muted);margin:0}

/* ---------- Hasta yolculuğu (4 adım) ---------- */
.bd-steps{
  padding:clamp(56px,7vw,84px) 0;
  background:linear-gradient(135deg,var(--navy) 0%,#123a5f 100%);
  color:#fff;
}
.bd-steps__grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(20px,2.6vw,30px);
  list-style:none;margin:0;padding:0;counter-reset:none;
}
.bd-steps__item{
  position:relative;
  padding:28px 24px;border-radius:var(--bd-radius);
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
}
.bd-steps__no{
  display:block;margin-bottom:12px;
  font-size:34px;font-weight:800;line-height:1;
  color:transparent;-webkit-text-stroke:1.5px var(--bd-sky);
}
.bd-steps__item h3{font-size:16px;font-weight:700;color:#fff;margin:0 0 8px;line-height:1.3}
.bd-steps__item p{font-size:13.5px;line-height:1.7;color:rgba(255,255,255,.76);margin:0}

/* ---------- Ekibimiz: 4 kolon (styles.css 6 kolon varsayılanını ezer) ---------- */
.theme-bilimdent .academic-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}

/* ---------- Kliniğimizden kareler ---------- */
.bd-galeri__grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(14px,1.8vw,20px);
}
.bd-galeri__item{
  position:relative;display:block;overflow:hidden;
  border-radius:var(--bd-radius);text-decoration:none;color:#fff;
  aspect-ratio:1/1;background:var(--navy);
}
.bd-galeri__media{
  position:absolute;inset:0;
  background-size:cover;background-position:center;background-repeat:no-repeat;
  transition:transform .35s ease;
}
.bd-galeri__item:hover .bd-galeri__media{transform:scale(1.06)}
/* Altyazı kaldırıldı; karenin üstüne gelince hafif bir koyulaşma bırakıldı ki
   tıklanabilir olduğu belli olsun. (.bd-galeri__title artık BASILMIYOR —
   albüm kartına düşülen yedek görünümde hâlâ kullanılıyor.) */
.bd-galeri__item::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:rgba(14,42,71,0);transition:background .25s ease;
}
.bd-galeri__item:hover::after{background:rgba(14,42,71,.18)}
.bd-galeri__title{
  position:absolute;inset:auto 0 0 0;z-index:2;
  padding:34px 16px 14px;
  font-size:13.5px;font-weight:600;line-height:1.4;
  background:linear-gradient(180deg,rgba(14,42,71,0),rgba(14,42,71,.88));
}

/* ---------- Sağlık turizmi partnerleri ---------- */
.bd-partners{padding:clamp(48px,6vw,72px) 0}
/* Logolar assets/partners/ içinde AYNI 600x230 tuvale normalize edilmiş (mantıksal 300x115).
   Sadece "kutuya sığdır" DEĞİL — her logo geometrik ortalaması eşit olacak şekilde
   ölçeklendi (optik denge). Aksi halde 1:1 daire logolar 7:1 wordmark'ların yanında
   minicik kalıyordu. Bu yüzden burada width:100% tek başına doğru sonucu verir;
   max-height/object-fit hilesine gerek yok. */
.bd-partners__grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(12px,1.6vw,20px);
}
.bd-partner{
  display:flex;align-items:center;justify-content:center;
  padding:16px;
  background:#fff;border:1px solid var(--line);border-radius:12px;
  text-decoration:none;color:var(--ink);
  transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease;
}
a.bd-partner:hover{transform:translateY(-3px);box-shadow:var(--bd-shadow-hover);border-color:transparent}
/* Logolar kendi marka renkleriyle basılır — gri filtre YOK.
   Satırın alacalı görünmesini renk soldurma değil, tuval normalizasyonu engelliyor
   (assets/partners/ içinde hepsi eşit optik alana ölçeklendi). */
.bd-partner img{
  display:block;width:100%;height:auto;max-width:300px;
}
.bd-partner__name{font-size:13.5px;font-weight:600;text-align:center;line-height:1.4}

/* ---------- Randevu / iletişim formu ----------
   Solda metin + güven maddeleri, sağda beyaz form kartı. Alan genişlikleri
   panelden gelir (FormField::WIDTHS → 4 kolonluk grid'de 1/4, 2/4, 3/4, full). */
.bd-form-wrap{padding:clamp(56px,7vw,84px) 0;background:var(--bg)}
.bd-form__inner{
  display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:clamp(24px,4vw,48px);align-items:start;
}
.bd-form__copy h2{
  font-size:clamp(22px,3vw,30px);font-weight:800;color:var(--ink);
  margin:0 0 14px;line-height:1.2;letter-spacing:-.02em;
}
.bd-form__copy > p{font-size:15px;line-height:1.7;color:var(--muted);margin:0 0 24px}
.bd-form__list{list-style:none;margin:0 0 26px;padding:0;display:flex;flex-direction:column;gap:12px}
.bd-form__list li{display:flex;align-items:center;gap:12px;font-size:14.5px;font-weight:600;color:var(--ink)}
.bd-form__list i{
  flex-shrink:0;width:34px;height:34px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  background:var(--bd-sky-soft);color:var(--teal);font-size:14px;
}
.bd-form__tel{
  display:inline-flex;align-items:center;gap:14px;
  padding:14px 18px;border-radius:var(--bd-radius);
  background:#fff;border:1px solid var(--line);box-shadow:var(--bd-shadow);
  text-decoration:none;color:var(--ink);
  transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease;
}
.bd-form__tel:hover{transform:translateY(-3px);box-shadow:var(--bd-shadow-hover);border-color:transparent}
.bd-form__tel > i{
  flex-shrink:0;width:40px;height:40px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:var(--teal);color:#fff;font-size:15px;
}
.bd-form__tel span{display:flex;flex-direction:column;line-height:1.3}
.bd-form__tel small{font-size:12px;color:var(--muted)}
.bd-form__tel strong{font-size:16px;font-weight:700}

.bd-form__card{
  background:#fff;border:1px solid var(--line);border-radius:20px;
  box-shadow:var(--bd-shadow);padding:clamp(22px,3vw,36px);
}
.bd-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 18px;align-items:start}
.bd-form__field{display:flex;flex-direction:column;gap:7px;grid-column:span 4;min-width:0}
.bd-form__field--w1{grid-column:span 1}
.bd-form__field--w2{grid-column:span 2}
.bd-form__field--w3{grid-column:span 3}
.bd-form__field--w4{grid-column:span 4}
.bd-form__field label{font-size:13.5px;font-weight:600;color:var(--ink)}
.bd-form__req{color:#dc2626;margin-left:3px}
.bd-form__field input[type=text],
.bd-form__field input[type=email],
.bd-form__field input[type=tel],
.bd-form__field input[type=number],
.bd-form__field input[type=date],
.bd-form__field input[type=file],
.bd-form__field textarea,
.bd-form__field select{
  width:100%;padding:11px 14px;
  border:1px solid var(--line);border-radius:10px;
  background:#fff;color:var(--ink);
  font-family:inherit;font-size:14.5px;line-height:1.5;
  transition:border-color .18s ease,box-shadow .18s ease;
}
.bd-form__field textarea{resize:vertical;min-height:120px}
.bd-form__field input:focus,
.bd-form__field textarea:focus,
.bd-form__field select:focus{
  outline:none;border-color:var(--teal);
  box-shadow:0 0 0 3px rgba(0,168,181,.15);
}
.bd-form__field input::placeholder,
.bd-form__field textarea::placeholder{color:#9aa7b5}
.bd-form__options{display:flex;flex-direction:column;gap:9px}
.bd-form__option{
  display:flex;align-items:flex-start;gap:10px;
  font-size:14px;font-weight:500;color:var(--ink);cursor:pointer;line-height:1.5;
}
.bd-form__option input{flex-shrink:0;width:17px;height:17px;margin-top:1px;accent-color:var(--teal)}
.bd-form__option a{color:var(--teal);text-decoration:underline}
/* Tek seçenekli onay (KVKK): etiket kutunun yanında cümle olarak durur */
.bd-form__field--onay{margin-top:2px}
.bd-form__field--onay .bd-form__option{font-size:13.5px;color:var(--muted);font-weight:500}
.bd-form__field--onay .bd-form__option a{color:var(--teal);text-decoration:underline}
.bd-form__alan-hata{font-size:12.5px;color:#dc2626}
.bd-form__hata{
  grid-column:1/-1;padding:14px 16px;border-radius:12px;
  background:#fef2f2;border:1px solid #fca5a5;color:#991b1b;font-size:13.5px;
}
.bd-form__hata ul{margin:0;padding-left:18px}
.bd-form__submit{
  grid-column:1/-1;flex-direction:row;align-items:center;gap:16px;flex-wrap:wrap;margin-top:4px;
}
/* Onay satırı sondaysa: solda KVKK metni (3 kolon), sağda buton (1 kolon).
   Araya başka bir alan girerse (ör. reCAPTCHA) kardeş seçici tutmaz ve buton
   yeniden tam satıra döner — kasıtlı yedek davranış. */
.bd-form__field--satir{grid-column:span 3}
.bd-form__field--satir + .bd-form__submit{
  grid-column:span 1;justify-content:flex-end;align-self:center;margin-top:0;
}
.bd-form__ok{text-align:center;padding:clamp(20px,4vw,40px) 10px}
.bd-form__ok-icon{
  display:flex;align-items:center;justify-content:center;
  width:64px;height:64px;margin:0 auto 18px;border-radius:50%;
  background:var(--bd-sky-soft);color:var(--teal);font-size:28px;
}
.bd-form__ok h3{font-size:20px;font-weight:800;color:var(--ink);margin:0 0 8px}
.bd-form__ok p{font-size:14.5px;line-height:1.7;color:var(--muted);margin:0}

/* ---------- Sabit alt eylem çubuğu (dock) ----------
   Ekranın altında yüzer, her sayfada. Footer'ın üstüne bindiği için body'ye
   alt boşluk eklenir (aşağıda), yoksa son satır çubuğun altında kalır. */
.bd-dock{
  position:fixed;left:0;right:0;bottom:0;z-index:480;
  display:flex;justify-content:center;
  padding:0 12px calc(12px + env(safe-area-inset-bottom,0px));
  pointer-events:none;
}
.bd-dock__bar{
  pointer-events:auto;
  display:flex;align-items:stretch;
  background:#fff;border:1px solid var(--line);
  border-radius:14px;box-shadow:0 12px 34px rgba(14,42,71,.18);
  overflow:hidden;max-width:100%;
}
.bd-dock__btn{
  display:flex;align-items:center;justify-content:center;gap:10px;
  padding:15px 22px;
  font-size:13px;font-weight:700;letter-spacing:.02em;
  color:var(--navy);text-decoration:none;white-space:nowrap;
  transition:background .18s ease,color .18s ease;
}
.bd-dock__btn + .bd-dock__btn{border-left:1px solid var(--line)}
.bd-dock__btn i{font-size:15px;color:var(--teal);transition:color .18s ease}
.bd-dock__btn:hover{background:var(--bd-sky-soft)}
.bd-dock__btn--yesil{background:#25D366;color:#fff;border-left-color:#25D366}
.bd-dock__btn--yesil i{color:#fff}
.bd-dock__btn--yesil:hover{background:#1EBE5B}
/* Çubuk varken sayfanın son satırı onun altında kalmasın.
   Boşluk BODY'ye değil FOOTER'ın içine verilir — body'ye verilince footer bitiyor,
   altında body'nin açık zemini beyaz bir şerit olarak görünüyordu. */
body:has(.bd-dock) .site-footer{padding-bottom:84px}

/* ---------- Kapanış randevu kartı ----------
   Renk ve dizilim eski banttaki gibi; fark: tam genişlik şerit DEĞİL —
   container içinde, köşeleri yuvarlatılmış kart olarak durur. */
.bd-cta-wrap{padding:clamp(40px,5vw,64px) 0;background:var(--bg)}
.bd-cta{
  padding:clamp(28px,4vw,48px);
  background:linear-gradient(120deg,var(--teal) 0%,var(--navy-brand) 100%);
  color:#fff;
  border-radius:20px;overflow:hidden;
  box-shadow:0 20px 56px rgba(14,42,71,.14);
}
.bd-cta__inner{
  display:flex;align-items:center;justify-content:space-between;
  gap:clamp(20px,3vw,40px);flex-wrap:wrap;
}
/* 640 değil 560: kart artık iç boşluklu, 640'ta butonlar alt satıra kaçıyordu */
.bd-cta__copy{max-width:560px}
.bd-cta__copy h2{font-size:clamp(22px,3vw,30px);font-weight:800;margin:0 0 10px;line-height:1.2;letter-spacing:-.02em}
.bd-cta__copy p{font-size:14.5px;line-height:1.7;color:rgba(255,255,255,.86);margin:0}
.bd-cta__actions{display:flex;gap:14px;flex-wrap:wrap;flex-shrink:0}
.bd-cta .btn-primary{background:#fff;color:var(--navy)}
.bd-cta .btn-primary:hover{background:var(--bd-sky);color:var(--navy)}
.btn-ghost--light{border-color:rgba(255,255,255,.7)}

/* ---------- Footer eklentileri ---------- */
.bd-footer__randevu{
  display:inline-flex;align-items:center;gap:9px;align-self:flex-start;
  margin-top:20px;padding:11px 20px;border-radius:8px;
  background:var(--teal);color:#fff;
  font-size:13px;font-weight:700;text-decoration:none;
  transition:background .2s ease;
}
.bd-footer__randevu:hover{background:var(--teal-dark);color:#fff}
.bd-footer__tel-head{
  display:block;margin-bottom:4px;
  font-size:11.5px;font-weight:700;letter-spacing:.4px;color:#cdd7e2;
}
.bd-footer__tel{padding-bottom:12px}

/* ==========================================================================
   Duyarlılık
   ========================================================================== */
@media (max-width:1100px){
  .bd-services__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .bd-tabs__inner{grid-template-columns:220px minmax(0,1fr)}
  .bd-tabs__panel .bd-services__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bd-hekim__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bd-partners__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .theme-bilimdent .academic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:900px){
  /* 2'li sarma: satır başındaki kutunun dikey ayracı kalksın, üst satırın altına çizgi gelsin */
  .bd-why__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bd-steps__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bd-galeri__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  /* Sekme sütunu yan yana sığmıyor: butonlar üstte yatay şerit olur, kart altta */
  .bd-tabs__inner{grid-template-columns:minmax(0,1fr)}
  .bd-form__inner{grid-template-columns:minmax(0,1fr)}
  .bd-tabs__nav{
    position:static;flex-direction:row;overflow-x:auto;gap:8px;
    padding:10px;-webkit-overflow-scrolling:touch;
  }
  .bd-tabs__nav-baslik{display:none}
  .bd-tab{width:auto;flex:0 0 auto;white-space:nowrap;padding:11px 16px}
  .bd-tab__arrow{display:none}
}
@media (max-width:680px){
  .bd-hero{min-height:auto}
  .bd-hero__inner{padding-top:44px;padding-bottom:44px}
  .bd-hero__actions .btn{flex:1 1 100%;justify-content:center}
  /* Tek sütun: flex-basis SIFIRLANMALI, yoksa 330px'lik adres kutusu dar ekranda
     taşar ve body'nin overflow-x:clip'i tüm sayfayı kırpar. */
  .bd-services__grid{grid-template-columns:1fr}
  .bd-why__grid{grid-template-columns:1fr}
  .bd-tabs__panel .bd-services__grid,
  .bd-tabs__panel .bd-why__grid,
  .bd-tabs__panel .bd-steps__grid,
  .bd-hekim__grid{grid-template-columns:1fr}
  /* Dar ekranda panelden gelen 1/4-2/4 genişlikleri sığmaz: her alan tam satır */
  .bd-form__field{grid-column:1/-1 !important}
  .bd-form__submit .btn{width:100%;justify-content:center}
  /* Dock tam genişliğe yayılır, etiketler ikonun altına iner */
  .bd-dock{padding-left:0;padding-right:0;padding-bottom:0}
  .bd-dock__bar{width:100%;border-radius:0;border-left:0;border-right:0;border-bottom:0}
  .bd-dock__btn{
    flex:1 1 0;min-width:0;flex-direction:column;gap:5px;
    padding:10px 6px calc(10px + env(safe-area-inset-bottom,0px));
    font-size:10.5px;letter-spacing:0;white-space:normal;text-align:center;line-height:1.25;
  }
  .bd-dock__btn i{font-size:17px}
  /* Tam genişlik çubuk yukarı-çık butonunun altında kalıyordu */
  .fac-top{bottom:82px}
  body:has(.bd-dock) .site-footer{padding-bottom:74px}
  .bd-steps__grid{grid-template-columns:1fr}
  .bd-galeri__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bd-partners__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .theme-bilimdent .academic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bd-cta__inner{flex-direction:column;align-items:flex-start}
  .bd-cta__actions{width:100%}
  .bd-cta__actions .btn{flex:1 1 100%;justify-content:center}
}

/* ---------- Online ön muayene randevu SAYFASI (Faz 1) ----------
   theme::pages.randevu — sayfa düzeni + takvim + saat + kısa form.
   Token'lar dosyanın başındaki değişkenlerden gelir; sadece EKLEME. */
.bd-rv-page{padding:clamp(32px,5vw,64px) 0 clamp(48px,7vw,84px);background:var(--bg)}
.bd-rv-page__head{max-width:720px;margin:0 auto clamp(28px,4vw,44px);text-align:center}
.bd-rv-page__eyebrow{
  display:inline-block;margin-bottom:12px;padding:6px 14px;border-radius:999px;
  background:var(--bd-sky-soft);color:var(--teal);font-size:12.5px;font-weight:700;
  text-transform:uppercase;letter-spacing:.05em;
}
.bd-rv-page__head h1{margin:0 0 12px;font-size:clamp(26px,4vw,40px);font-weight:800;color:var(--ink);line-height:1.15;letter-spacing:-.02em}
.bd-rv-page__head p{margin:0;font-size:clamp(15px,1.6vw,17px);line-height:1.7;color:var(--muted)}

.bd-rv-page__grid{
  display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:clamp(20px,3vw,40px);align-items:start;
}

/* SOL kolon */
.bd-rv-page__yan{
  position:sticky;top:24px;
  padding:clamp(22px,3vw,30px);border-radius:20px;
  background:linear-gradient(155deg,var(--teal) 0%,var(--navy-brand) 100%);color:#fff;
  box-shadow:0 20px 50px rgba(14,42,71,.16);
}
.bd-rv-page__yan h2{margin:0 0 16px;font-size:18px;font-weight:800;letter-spacing:-.01em}
.bd-rv-page__adimlar{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-direction:column;gap:12px}
.bd-rv-page__adimlar li{display:flex;align-items:center;gap:12px;font-size:14.5px;font-weight:600;line-height:1.4}
.bd-rv-page__adimlar li span{
  flex-shrink:0;width:28px;height:28px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.18);color:#fff;font-size:13.5px;font-weight:800;
}
.bd-rv-page__liste{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-direction:column;gap:11px;border-top:1px solid rgba(255,255,255,.18);padding-top:20px}
.bd-rv-page__liste li{display:flex;align-items:center;gap:11px;font-size:13.5px;font-weight:500;color:rgba(255,255,255,.92)}
.bd-rv-page__liste i{
  flex-shrink:0;width:30px;height:30px;border-radius:9px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.16);color:#fff;font-size:13px;
}
.bd-rv-page__yan .bd-form__tel{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.18);color:#fff;box-shadow:none;width:100%}
.bd-rv-page__yan .bd-form__tel:hover{background:rgba(255,255,255,.2);transform:none}
.bd-rv-page__yan .bd-form__tel > i{background:#fff;color:var(--teal)}
.bd-rv-page__yan .bd-form__tel small{color:rgba(255,255,255,.75)}
.bd-rv-page__yan .bd-form__tel strong{color:#fff}

/* SAĞ kolon — randevu kartı */
.bd-rv-page__kart{
  background:#fff;border:1px solid var(--line);border-radius:20px;
  box-shadow:var(--bd-shadow);padding:clamp(22px,3vw,36px);
}

/* Ortak blok/adım başlıkları */
.bd-rv__form{display:flex;flex-direction:column;gap:24px}
.bd-rv__blok{display:flex;flex-direction:column;gap:12px}
.bd-rv__etiket{display:flex;align-items:center;gap:9px;margin:0;font-size:14.5px;font-weight:700;color:var(--ink)}
.bd-rv__no{
  flex-shrink:0;width:23px;height:23px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--bd-sky-soft);color:var(--teal);font-size:12.5px;font-weight:800;
}
.bd-rv__hint{margin:0;font-size:13.5px;color:var(--muted)}

/* Kompakt tarih alanı → tıklayınca takvim açılır kutusu iner */
.bd-rv__tarih-wrap{position:relative;max-width:320px}
.bd-rv__tarih{
  width:100%;display:flex;align-items:center;gap:11px;
  padding:12px 14px;border:1px solid var(--line);border-radius:12px;
  background:#fff;color:var(--muted);cursor:pointer;font-family:inherit;font-size:14.5px;font-weight:600;
  text-align:left;transition:border-color .16s ease,box-shadow .16s ease;
}
.bd-rv__tarih:hover{border-color:var(--bd-sky)}
.bd-rv__tarih.is-acik{border-color:var(--teal);box-shadow:0 0 0 3px rgba(0,168,181,.15)}
.bd-rv__tarih > i:first-child{color:var(--teal);font-size:16px}
.bd-rv__tarih-metin{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bd-rv__tarih.is-secili .bd-rv__tarih-metin{color:var(--ink);font-weight:700}
.bd-rv__tarih-ok{font-size:12px;color:var(--muted);transition:transform .18s ease}
.bd-rv__tarih.is-acik .bd-rv__tarih-ok{transform:rotate(180deg)}

/* Takvim — kompakt açılır kutu (popover) */
.bd-cal{
  position:absolute;top:calc(100% + 8px);left:0;z-index:40;
  width:320px;max-width:calc(100vw - 48px);
  border:1px solid var(--line);border-radius:14px;padding:12px;background:#fff;
  box-shadow:0 18px 44px rgba(14,42,71,.18);
}
.bd-cal[hidden]{display:none}
.bd-cal__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.bd-cal__ay{font-size:15px;font-weight:800;color:var(--ink)}
.bd-cal__nav{
  width:32px;height:32px;border-radius:9px;border:1px solid var(--line);
  background:#fff;color:var(--ink);cursor:pointer;font-size:13px;
  display:flex;align-items:center;justify-content:center;
  transition:background .16s ease,border-color .16s ease;
}
.bd-cal__nav:hover:not([disabled]){background:var(--bd-sky-soft);border-color:var(--bd-sky)}
.bd-cal__nav[disabled]{opacity:.35;cursor:not-allowed}
.bd-cal__wd{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:5px}
.bd-cal__wd span{text-align:center;font-size:10.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.02em}
.bd-cal__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.bd-cal__day{
  aspect-ratio:1/1;border:1px solid transparent;border-radius:9px;
  background:#f7f9fb;color:var(--ink);cursor:pointer;
  font-family:inherit;font-size:13px;font-weight:600;
  display:flex;align-items:center;justify-content:center;
  transition:background .14s ease,color .14s ease,border-color .14s ease,transform .14s ease;
}
.bd-cal__day.is-bos{background:transparent;pointer-events:none}
.bd-cal__day:hover:not([disabled]):not(.is-bos){background:var(--bd-sky-soft);border-color:var(--bd-sky);transform:translateY(-1px)}
.bd-cal__day.is-gecmis,.bd-cal__day[disabled]{background:transparent;color:#c2cbd4;cursor:not-allowed}
.bd-cal__day.is-bugun{border-color:var(--bd-sky)}
.bd-cal__day.is-secili{background:var(--teal);color:#fff;border-color:transparent;box-shadow:0 6px 16px rgba(0,168,181,.3)}

/* Saatler */
.bd-rv__saatler{display:grid;grid-template-columns:repeat(auto-fill,minmax(74px,1fr));gap:9px}
.bd-rv__saat{
  padding:10px 6px;border:1px solid var(--line);border-radius:10px;
  background:#fff;color:var(--ink);font-family:inherit;font-size:14px;font-weight:700;
  cursor:pointer;text-align:center;
  transition:border-color .14s ease,background .14s ease,color .14s ease,transform .14s ease;
}
.bd-rv__saat:hover{border-color:var(--bd-sky);transform:translateY(-1px)}
.bd-rv__saat.is-secili{background:var(--teal);color:#fff;border-color:transparent;box-shadow:0 6px 16px rgba(0,168,181,.3)}

/* Alt: özet + gönder */
.bd-rv__alt{
  display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
  border-top:1px solid var(--line);padding-top:20px;
}
.bd-rv__sec{display:flex;align-items:center;gap:9px;margin:0;font-size:14.5px;font-weight:700;color:var(--navy-brand)}
.bd-rv__sec i{color:var(--teal)}
.bd-rv__alt .btn[disabled]{opacity:.5;cursor:not-allowed;box-shadow:none}
.bd-form__ok .bd-rv__ozet{
  display:table;margin:14px auto 22px;padding:10px 18px;border-radius:999px;
  background:var(--bd-sky-soft);color:var(--navy-brand);font-weight:800;font-size:15px;text-align:center;
}

@media (max-width:860px){
  .bd-rv-page__grid{grid-template-columns:1fr}
  .bd-rv-page__yan{position:static}
}
@media (max-width:560px){
  .bd-rv__alt{flex-direction:column;align-items:stretch}
  .bd-rv__alt .btn{width:100%;justify-content:center}
  .bd-rv__saatler{grid-template-columns:repeat(auto-fill,minmax(64px,1fr))}
}

/* ---------- İletişim sayfası (page_layout=iletisim) ---------- */
.bd-iletisim{
  background:#fff;padding:clamp(22px,3vw,36px);border-radius:20px;
  border:1px solid var(--line);box-shadow:var(--bd-shadow);
  margin-top:-24px;position:relative;
}
.bd-iletisim__lead{margin:0 0 22px;font-size:15.5px;line-height:1.7;color:var(--muted);max-width:760px}
.bd-iletisim__map{
  border-radius:var(--bd-radius);overflow:hidden;margin-bottom:26px;
  border:1px solid var(--line);
}
.bd-iletisim__map iframe{display:block;width:100%;height:360px;border:0}
.bd-iletisim__grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;
}
.bd-iletisim__card{
  background:var(--bd-mint);border-radius:var(--bd-radius);padding:22px 20px;
}
.bd-iletisim__card-icon{
  display:flex;align-items:center;justify-content:center;
  width:44px;height:44px;margin-bottom:14px;border-radius:50%;
  background:#fff;color:var(--teal);font-size:18px;
}
.bd-iletisim__card h3{margin:0 0 10px;font-size:15px;font-weight:800;color:var(--ink)}
.bd-iletisim__card p,.bd-iletisim__card a{
  display:block;font-size:14px;line-height:1.6;color:var(--navy-brand);
  text-decoration:none;font-weight:600;
}
.bd-iletisim__card a:hover{color:var(--teal)}
.bd-iletisim__tel-blok{margin-bottom:12px}
.bd-iletisim__tel-blok:last-child{margin-bottom:0}
.bd-iletisim__tel-head{display:block;font-size:12px;font-weight:700;color:var(--muted);margin-bottom:3px;text-transform:uppercase;letter-spacing:.02em}
.bd-iletisim__sosyal{display:flex;gap:10px;flex-wrap:wrap}
.bd-iletisim__sosyal a{
  display:flex;align-items:center;justify-content:center;
  width:38px;height:38px;border-radius:50%;background:#fff;color:var(--teal);
  font-size:15px;transition:background .16s ease,color .16s ease;
}
.bd-iletisim__sosyal a:hover{background:var(--teal);color:#fff}
.bd-iletisim__cta{margin-top:28px;text-align:center}
@media (max-width:560px){
  .bd-iletisim__map iframe{height:260px}
}

/* ---------- SSS sayfası (page_layout=sss) ---------- */
.bd-sss{
  background:#fff;padding:clamp(22px,3vw,36px);border-radius:20px;
  border:1px solid var(--line);box-shadow:var(--bd-shadow);
  margin-top:-24px;position:relative;
}
.bd-sss__lead{margin:0 0 22px;font-size:15.5px;line-height:1.7;color:var(--muted);max-width:760px}
/* Bölüm başlığı (içerikteki <h2>) — tema section-title diliyle aynı: teal çubuk + 18px.
   İlk başlıkta üst boşluk yok, sonrakiler grupları görsel olarak ayırır. */
.bd-sss__grup{
  display:flex;align-items:center;gap:14px;
  margin:34px 0 14px;font-size:18px;font-weight:700;color:var(--ink);letter-spacing:.01em;
}
.bd-sss__grup::before{
  content:"";flex-shrink:0;width:38px;height:3px;border-radius:2px;background:var(--teal);
}
.bd-sss__grup:first-child{margin-top:0}
.bd-sss__lead + .bd-sss__grup{margin-top:4px}
.bd-sss__empty{margin:0;color:var(--muted);font-size:14.5px}
.bd-sss__list{display:flex;flex-direction:column;gap:12px}
.bd-sss__item{
  border:1px solid var(--line);border-radius:var(--bd-radius);padding:0 20px;
  background:var(--bd-mint);
}
.bd-sss__q{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:16px 0;cursor:pointer;list-style:none;
  font-size:14.5px;font-weight:700;color:var(--ink);
}
.bd-sss__q::-webkit-details-marker{display:none}
.bd-sss__chev{color:var(--teal);font-size:13px;flex-shrink:0;transition:transform .18s ease}
.bd-sss__item[open] .bd-sss__chev{transform:rotate(180deg)}
.bd-sss__a{
  padding:14px 0 18px;margin:0;font-size:14px;line-height:1.7;color:var(--muted);
  border-top:1px solid var(--line);
}
/* Cevap zengin editörden gelir (<p>, liste…) — ilk/son öğenin dış boşluğu kırpılır,
   yoksa akordeonun altında/üstünde fazladan boşluk oluşur. */
.bd-sss__a > :first-child{margin-top:0}
.bd-sss__a > :last-child{margin-bottom:0}
.bd-sss__a p{margin:0 0 10px}
.bd-sss__a ul,.bd-sss__a ol{margin:0 0 10px;padding-left:20px}
