/* ============================================================
   Avrupa Hospital Adana - Ortak Stiller
   Stitch tasarımının cam (glass) / gradient / reveal stilleri
   ============================================================ */

.material-symbols-outlined {
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

.glass-card {
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(225, 232, 240, 0.5);
}

.hero-gradient {
  background: linear-gradient(135deg, rgba(0, 37, 69, 0.85) 0%, rgba(42, 167, 223, 0.2) 100%);
}

/* Scroll reveal */
.reveal { opacity: 0; transform: translateY(30px); transition: all 0.8s ease-out; }
.reveal.active { opacity: 1; transform: translateY(0); }

/* ---------- SLIDER ---------- */
.hero-slider { position: relative; }
.hero-slide {
  position: absolute; inset: 0;
  opacity: 0; visibility: hidden;
  transition: opacity 1s ease-in-out;
  z-index: 1;
}
.hero-slide.is-active { opacity: 1; visibility: visible; z-index: 2; }
.hero-slide .hero-bg {
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
  transform: scale(1.05);
  animation: heroZoom 8s ease-in-out infinite alternate;
}
@keyframes heroZoom { from { transform: scale(1.05); } to { transform: scale(1.15); } }

.hero-content { animation: heroFadeUp 1s ease-out both; }
@keyframes heroFadeUp { from { opacity: 0; transform: translateY(40px); } to { opacity: 1; transform: translateY(0); } }

.slider-dot {
  width: 12px; height: 12px; border-radius: 9999px;
  background: rgba(255,255,255,0.4); cursor: pointer; transition: all .3s;
}
.slider-dot.is-active { width: 36px; background: #2AA7DF; }

/* ---------- İçerik (prose) ---------- */
.prose-content { color: #4A5B6D; line-height: 1.8; font-size: 16px; }
.prose-content h2 { font-family: 'Outfit', sans-serif; color: #002545; font-size: 1.6rem; font-weight: 600; margin: 1.5rem 0 .75rem; }
.prose-content h3 { font-family: 'Outfit', sans-serif; color: #002545; font-size: 1.25rem; font-weight: 600; margin: 1.25rem 0 .5rem; }
.prose-content p { margin-bottom: 1rem; }
.prose-content ul { list-style: disc; padding-left: 1.5rem; margin-bottom: 1rem; }
.prose-content ol { list-style: decimal; padding-left: 1.5rem; margin-bottom: 1rem; }
.prose-content a { color: #2AA7DF; text-decoration: underline; }
.prose-content img { border-radius: 1rem; margin: 1rem 0; max-width: 100%; height: auto; }

/* ---------- Carousel (anlaşmalı kurumlar) ---------- */
.partner-track { display: flex; gap: 3rem; align-items: center; animation: marquee 28s linear infinite; }
.partner-track:hover { animation-play-state: paused; }
@keyframes marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* ---------- Mobil menü ---------- */
.mobile-menu { transform: translateX(100%); transition: transform .35s ease; }
.mobile-menu.is-open { transform: translateX(0); }

/* küçük yardımcılar */
.line-clamp-2 { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.line-clamp-3 { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }

/* ============================================================
   HEADER AÇILIR (DROPDOWN / MEGA) MENÜ
   ============================================================ */
.has-dropdown { position: relative; }
.has-dropdown > a .nav-caret { transition: transform .25s ease; font-size: 18px; }
.has-dropdown:hover > a .nav-caret,
.has-dropdown:focus-within > a .nav-caret { transform: rotate(180deg); }
/* hover boşluğu köprüsü (menü ile panel arası) */
.has-dropdown::after { content:''; position:absolute; left:-12px; right:-12px; top:100%; height:18px; }

.nav-dropdown {
  position: absolute; top: calc(100% + 14px); left: 50%;
  transform: translateX(-50%) translateY(10px);
  min-width: 250px; background: #fff; border-radius: 18px;
  box-shadow: 0 26px 60px -14px rgba(0,37,69,.28);
  border: 1px solid rgba(225,232,240,.8);
  padding: 10px; opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity .26s ease, transform .26s ease; z-index: 70;
}
.has-dropdown:hover > .nav-dropdown,
.has-dropdown:focus-within > .nav-dropdown {
  opacity: 1; visibility: visible; pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}
.nav-dropdown::before {
  content:''; position:absolute; top:-7px; left:50%;
  transform: translateX(-50%) rotate(45deg);
  width:14px; height:14px; background:#fff;
  border-left:1px solid rgba(225,232,240,.8); border-top:1px solid rgba(225,232,240,.8);
}
.nav-dropdown.cols-2 { display:grid; grid-template-columns:1fr 1fr; gap:2px; min-width:480px; }
.nav-dropdown a.dd-item {
  display:flex; align-items:center; gap:12px; padding:12px 14px; border-radius:12px;
  font-size:15px; color:#002545; font-weight:500; transition:all .2s; white-space:nowrap;
}
.nav-dropdown a.dd-item:hover { background:#eef7fc; color:#2AA7DF; }
.nav-dropdown a.dd-item .dd-ico {
  display:flex; width:34px; height:34px; flex:0 0 34px; align-items:center; justify-content:center;
  border-radius:10px; background:rgba(42,167,223,.10); color:#2AA7DF; font-size:20px; transition:all .2s;
}
.nav-dropdown a.dd-item:hover .dd-ico { background:#2AA7DF; color:#fff; }
.nav-dropdown a.dd-item .dd-arrow { margin-left:auto; opacity:0; transform:translateX(-6px); transition:all .2s; font-size:18px; }
.nav-dropdown a.dd-item:hover .dd-arrow { opacity:1; transform:translateX(0); }

/* Mobil alt menü (accordion) */
.m-haschild > .m-row { display:flex; align-items:center; }
.m-sub { max-height:0; overflow:hidden; transition:max-height .35s ease; padding-left:14px; }
.m-sub.open { max-height:600px; }
.m-caret { transition: transform .3s ease; }
.m-caret.open { transform: rotate(180deg); }

/* ============================================================
   GELİŞTİRİLMİŞ HERO SLIDER (her slide kendi metniyle)
   ============================================================ */
.hero-texts { position: relative; min-height: 300px; }
@media (max-width:1023px){ .hero-texts{ min-height: 260px; } }
.hero-text {
  position: absolute; inset: 0; opacity: 0; visibility: hidden;
  transform: translateY(28px); pointer-events: none;
  transition: opacity .7s ease, transform .7s ease;
}
.hero-text.is-active {
  position: relative; opacity: 1; visibility: visible;
  transform: translateY(0); pointer-events: auto;
}
/* aktif slide içi öğelerin kademeli girişi */
.hero-text.is-active > * { animation: heroItemUp .7s ease both; }
.hero-text.is-active > *:nth-child(1){ animation-delay:.05s; }
.hero-text.is-active > *:nth-child(2){ animation-delay:.15s; }
.hero-text.is-active > *:nth-child(3){ animation-delay:.25s; }
.hero-text.is-active > *:nth-child(4){ animation-delay:.35s; }
@keyframes heroItemUp { from{opacity:0; transform:translateY(18px);} to{opacity:1; transform:translateY(0);} }

/* Ok butonları */
.hero-arrow {
  width:54px; height:54px; border-radius:9999px;
  background:rgba(255,255,255,.12); backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.25); color:#fff;
  display:flex; align-items:center; justify-content:center; transition:all .25s;
}
.hero-arrow:hover { background:#2AA7DF; border-color:#2AA7DF; transform:scale(1.08); }

/* Otomatik oynatma ilerleme çubuğu */
.hero-progress { height:3px; background:rgba(255,255,255,.18); border-radius:9999px; overflow:hidden; }
.hero-progress span { display:block; height:100%; width:0; background:#2AA7DF; border-radius:9999px; }
.hero-progress.run span { animation: heroBar var(--hero-dur,6s) linear forwards; }
@keyframes heroBar { from{width:0;} to{width:100%;} }

/* Medicana tarzı hızlı erişim kartları */
.quick-card { transition: transform .3s ease, box-shadow .3s ease; }
.quick-card:hover { transform: translateY(-6px); box-shadow: 0 24px 50px -16px rgba(0,37,69,.45); }
.quick-card .qc-arrow { transition: transform .3s ease; }
.quick-card:hover .qc-arrow { transform: translateX(6px); }
