/* ==========================================================================
   Uzm. Dt. Hülya Çetin Çelik — taslağın style.css'ine eklemeler.
   style.css taslaktan olduğu gibi geldi; buradaki her kural, taslağın elle
   yazılmış HTML'i yerine sistemden gelen içeriğin (zengin metin, panel
   metni, dinamik liste) aynı görünmesi ya da kullanıcı kararıyla eklenen
   bir parça (dil seçici, yasal linkler, blog süzme) için.
   ========================================================================== */

/* --- Panel zengin metni: ilk paragraf taslağın .lead-lg'si --- */
.hc-intro > p:first-child { font-size: clamp(1.1rem, 1.5vw, 1.3rem); line-height: 1.6; }

/* --- Zengin metin (tedavi, yazı, serbest sayfa) ---
   Taslakta "Kimler için uygun?" .check-list, "Süreç" .step kartları,
   yazılardaki vurgu .note-box, ilk paragraf .article-lead sınıflarıyla elle
   yazılmıştı. Panel editörü sınıf yazmıyor: düz <ul>, <ol>, <blockquote>
   ve <figure> aynı görünümü buradan alıyor. Editör liste maddelerini <p>
   ile sarıyor, o yüzden li > p sıfırlanıyor. */
.hc-prose { overflow-wrap: anywhere; }
.hc-prose h2 { scroll-margin-top: 110px; }
.hc-prose > div > h2:not(:first-child),
.hc-prose > div > ul + h2, .hc-prose > div > ol + h2 { margin-top: clamp(3.2rem, 5vw, 4.6rem); }
.hc-prose h3 { font-size: 1.4rem; margin: 2rem 0 .7rem; }
.hc-prose img { max-width: 100%; height: auto; border-radius: var(--radius); }
.hc-prose a:not(.btn-pill):not(.btn-circle):not(.text-reset) { color: var(--bronze-dark); text-decoration: underline; text-underline-offset: 3px; }
.hc-prose li > p { margin: 0; }

.hc-prose ul { list-style: none; padding: 0; margin: 0 0 1.6rem; }
.hc-prose ul > li { position: relative; padding: .8rem 0 .8rem 2.2rem; border-bottom: 1px solid var(--line); color: var(--ink); }
.hc-prose ul > li::before { content: ""; position: absolute; left: 0; top: 1.4rem; width: 14px; height: 1px; background: var(--bronze); }

.hc-prose ol { list-style: none; padding: 0; margin: 0 0 1.6rem; counter-reset: step; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }
.hc-prose ol > li { position: relative; padding-top: 1.6rem; border-top: 1px solid var(--line); counter-increment: step; }
.hc-prose ol > li::before { content: counter(step, decimal-leading-zero); display: block; font-family: var(--font-serif); font-style: italic; font-size: 1.4rem; color: var(--bronze-dark); }
.hc-prose ol > li > p:first-child strong:first-child { display: block; font-family: var(--font-serif); font-weight: 400; font-size: 1.45rem; line-height: 1.2; color: var(--ink); margin: .6rem 0 .5rem; }
.hc-prose ol > li > p + p { font-size: .96rem; color: var(--muted); }

.hc-prose blockquote { margin: 2rem 0; padding: 1.6rem 1.8rem; border-radius: var(--radius-sm); background: var(--paper); border-left: 2px solid var(--bronze); color: var(--ink); }
.hc-prose blockquote p { margin: 0; }
.hc-prose figure { margin: 2.4rem 0; }
.hc-prose figure img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.hc-prose figcaption { display: flex; gap: .6rem; margin-top: .8rem; font-size: .88rem; color: var(--muted); line-height: 1.5; }
.hc-prose figcaption::before { content: ""; flex: none; width: 14px; height: 1px; margin-top: .7em; background: var(--bronze); }
.hc-prose table { width: 100%; border-collapse: collapse; margin: 0 0 1.6rem; display: block; overflow-x: auto; }
.hc-prose th, .hc-prose td { border: 1px solid var(--line); padding: .7rem 1rem; text-align: left; }
.hc-prose .ba { margin-top: 1rem; }
.hc-ba-caption { margin: .8rem 0 1.6rem; font-size: .92rem; color: var(--muted); }

/* Yazı: ilk paragraf taslağın .article-lead'i, gövde .article tipografisi */
.hc-article > div:first-child > p:first-child { font-size: clamp(1.15rem, 1.6vw, 1.32rem); line-height: 1.6; color: var(--ink); letter-spacing: -.01em; margin-bottom: 2rem; }
.hc-article p { line-height: 1.8; }

@media (max-width: 575.98px) {
  .hc-prose ol { grid-template-columns: 1fr; }
}

/* --- Dil seçici (taslakta yoktu): header'da görsel üstünde açık, kaydırınca koyu --- */
.hc-lang { display: inline-flex; align-items: center; gap: 2px; padding: 3px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, .32); }
.hc-lang a { display: inline-grid; place-items: center; min-width: 34px; height: 30px; padding: 0 .5rem; border-radius: 999px; font-size: .74rem; font-weight: 600; letter-spacing: .08em; color: inherit; opacity: .75; text-decoration: none; transition: background .3s var(--ease), color .3s var(--ease), opacity .3s var(--ease); }
.hc-lang a:hover { opacity: 1; }
.hc-lang a.active { background: #fff; color: var(--ink); opacity: 1; }
.is-scrolled .hc-lang { border-color: var(--line); }
.is-scrolled .hc-lang a.active { background: var(--ink); color: var(--cream); }
.hc-lang-menu { border-color: var(--line-light); color: var(--cream); }

/* --- Footer: KVKK / Çerez Politikası linkleri (kullanıcı isteği) --- */
.hc-legal { display: flex; flex-wrap: wrap; gap: .4rem 1.4rem; }
.hc-legal a { color: inherit; font-size: .85rem; text-decoration: none; }
.hc-legal a:hover { color: #fff; }

/* --- Yazı bilgisi: etiket link olduğunda --- */
.post-meta a { color: inherit; text-decoration: none; }
.post-meta a:hover { text-decoration: underline; text-underline-offset: 3px; }

/* --- Blog: etiket düğmeleri + arama (taslakta yoktu; görünüm taslağın
       .chip-opt seçim düğmelerinden) --- */
.hc-blog-bar { display: flex; align-items: flex-start; gap: 1rem 2rem; margin-bottom: clamp(2rem, 4vw, 3rem); }
.hc-chips { display: flex; flex-wrap: wrap; gap: .5rem; flex: 1 1 0; min-width: 0; }
.hc-chips a { padding: .55rem 1.05rem; border: 1px solid var(--line); border-radius: 999px; font-size: .88rem; color: var(--ink); text-decoration: none; transition: all .3s var(--ease); }
.hc-chips a span { margin-left: .2rem; opacity: .5; font-size: .8em; }
.hc-chips a:hover { border-color: var(--ink); }
.hc-chips a.active { background: var(--ink); border-color: var(--ink); color: var(--cream); }
.hc-search { position: relative; flex: 0 0 280px; margin-left: auto; }
.hc-search i { position: absolute; left: 1.1rem; top: 50%; transform: translateY(-50%); color: var(--muted); pointer-events: none; }
.hc-search input { width: 100%; height: 46px; padding: 0 1.1rem 0 2.7rem; border-radius: 999px; border: 1px solid var(--line); background: #fff; font-size: .92rem; color: var(--ink); }
.hc-search input:focus { outline: none; border-color: var(--bronze); box-shadow: 0 0 0 4px rgba(176, 138, 91, .12); }
.hc-filter-note { margin: -.5rem 0 2rem; color: var(--muted); font-size: .92rem; }
.hc-filter-note a { margin-left: .6rem; color: var(--bronze-dark); font-weight: 500; text-decoration: none; }
.hc-empty { text-align: center; padding: 3rem 1rem; color: var(--muted); }
.hc-empty i { display: block; font-size: 2rem; color: var(--bronze); margin-bottom: .8rem; }
@media (max-width: 991.98px) {
  .hc-blog-bar { flex-direction: column; align-items: stretch; }
  .hc-search { flex: none; margin-left: 0; }
}

/* --- Blog sayfalaması (taslakta yoktu) --- */
.hc-pagination { display: flex; justify-content: center; margin-top: 3.5rem; }
.hc-pagination nav > div:first-child { display: none !important; }
.hc-pagination nav > div:last-child { display: flex !important; flex-direction: column; align-items: center; gap: .8rem; }
.hc-pagination p.small { margin: 0; color: var(--muted); }
.hc-pagination .pagination { --bs-pagination-color: var(--ink); --bs-pagination-hover-color: var(--bronze-dark); --bs-pagination-active-bg: var(--ink); --bs-pagination-active-border-color: var(--ink); --bs-pagination-border-color: var(--line); --bs-pagination-bg: transparent; --bs-pagination-focus-box-shadow: none; gap: .4rem; margin: 0; }
.hc-pagination .page-link { border-radius: 999px !important; min-width: 42px; text-align: center; }

/* --- İletişim formu: sonuç ve hata --- */
.hc-form-success { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 1rem; }
.hc-form-success h3 { margin: 0; }
.hc-form-success p { margin: 0; color: var(--muted); }
.hc-form-success-mark { width: 56px; height: 56px; border-radius: 50%; display: grid; place-items: center; background: var(--sand); color: var(--bronze-dark); font-size: 1.6rem; }
.hc-form-error { margin: 1rem 0 0; padding: .8rem 1rem; border-radius: var(--radius-sm); background: rgba(192, 99, 79, .1); color: #a14c3a; font-size: .9rem; }
.booking-kvkk a { color: var(--bronze-dark); text-decoration: underline; }

/* --- Mobil yatay taşma (taslağın kendisinde de vardı): dar ekranda .g-5'in
       3rem yatay aralığı container'ın 20px kenar boşluğundan büyük kalıyor,
       satır sayfayı 4px taşırıyordu. Dikey aralık aynı kalıyor. --- */
@media (max-width: 575.98px) {
  .container-xl-wide .row.g-5, .container-xl-wide .row.g-lg-5 { --bs-gutter-x: 1.5rem; }
}
html, body { overflow-x: clip; }
