/* TerapiRandevu - Persona teması üzerine ek stiller */
:root { --vurgu-color: #f3d9c9; --kart-bg: #fdf7f4; }
html { scroll-behavior: smooth; }
body { color: var(--text-color); }
.vurgu { color: var(--vurgu-color); font-style: italic; }

/* Üst menü */
#header .logo-container { max-width: 240px; }
#header .logo-container img { max-height: 46px; width: auto; }
#header .marka-metin { color: #fff; font-family: var(--font-1); font-size: 1.45rem; font-weight: 600; line-height: 1.2; white-space: nowrap; }
#header .navbar-toggler-icon { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255,255,255,0.92)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); }
#header .nav-link { font-size: 1rem; }
#header .dropdown-menu { width: 240px; }
.btn-sm { font-size: 14px !important; padding: .45rem .95rem; }
.btn-accent, .btn-accent-outline, .btn-white-accent, .btn-white-outline { border-radius: 8px; }
.btn-white-outline { border: 3px solid #fff; }
@media (max-width: 991.98px) {
    #header .navbar-collapse { padding: .5rem 0 1rem; }
    #header .dropdown-menu { background: rgba(255,255,255,.12); }
    #header .dropdown-item { color: #fff; }
}

/* Sayfa üst bantları */
.banner-ic { min-height: 380px; height: 50vh; background-position: center; }
.banner-ic h1 { font-size: 3.2rem; }
.hero-ana { min-height: 92vh; }
.hero-ana h1 { font-size: 4.4rem; line-height: 1.1; }
.hero-ana p { font-size: 18px; }
@media (max-width: 993px) {
    .banner-ic { min-height: 280px; height: auto; padding-top: 7rem; padding-bottom: 3rem; }
    .banner-ic h1 { font-size: 2.1rem; }
    .hero-ana { min-height: 80vh; padding-top: 7rem; }
    .hero-ana h1 { font-size: 2.4rem; }
    .hero-ana p { font-size: 15px; }
}
.section-sm { padding: 3.5em 2em; }
.ust-etiket { font-weight: 600; letter-spacing: 2px; text-transform: uppercase; color: var(--accent-color); font-size: 14px; }
.baslik-alt { color: var(--gray-color); font-size: 16px; }

/* Üzerine gelince renk değiştirmeyen kart */
.card.kart-sabit:hover { background-color: #fff; color: inherit; transform: none; }
.card.kart-sabit:hover p { color: var(--gray-color) !important; }
.card.kart-sabit:hover .link { color: var(--accent-color); }
.card.kart-sabit:hover .icon-box.bg-accent-color { background-color: var(--accent-color); color: #fff; }
.kutu { background: #fff; border-radius: 10px; box-shadow: 0 .5rem 1.25rem rgba(0,0,0,.07); }
.rozet-acik { display: inline-flex; align-items: center; gap: .35rem; padding: .3rem .75rem; border-radius: 999px; font-size: 13px !important; background: var(--secondary-color); color: var(--accent-color); }
.rozet-koyu { display: inline-flex; align-items: center; gap: .35rem; padding: .3rem .75rem; border-radius: 999px; font-size: 13px !important; background: var(--accent-color); color: #fff; }
.card .rozet-acik { background: var(--secondary-color); color: var(--accent-color); }
.card:hover:not(.kart-sabit) .rozet-acik { background: rgba(255,255,255,.2); color: #fff; }

/* Uzman kartı */
.uzman-kart { position: relative; }
.uzman-kart img { aspect-ratio: 3/4; object-fit: cover; width: 100%; border-radius: 10px; display: block; }
.uzman-kart .uzman-bilgi { position: absolute; left: 0; right: 0; bottom: 1.5rem; }
.uzman-kart .uzman-bilgi .ic { width: 88%; background: linear-gradient(90deg, rgba(24,14,14,.86), rgba(24,14,14,.6)); color: #fff; padding: 1rem 1.5rem; border-radius: 0 10px 10px 0; }
.uzman-kart .uzman-bilgi h5 { font-size: 1.2rem; margin: 0; color: #fff; }
.uzman-kart .uzman-bilgi span { font-size: 14px; opacity: .9; }
.uzman-kart .uzman-bilgi .btn { font-size: 13px; padding: .35rem .8rem; }
.uzman-foto-buyuk { aspect-ratio: 3/4; object-fit: cover; width: 100%; border-radius: 10px; }

/* Fiyat kartları */
.fiyat-kart { position: relative; }
.fiyat-kart.populer { border: 3px solid var(--accent-color); }
.fiyat-kart .populer-etiket { position: absolute; top: -15px; left: 50%; transform: translateX(-50%); background: var(--accent-color); color: #fff; font-size: 13px; padding: .3rem 1.1rem; border-radius: 999px; white-space: nowrap; }
.fiyat-kart .heading h3 { font-size: 2.6rem; }
.fiyat-kart .list li { font-size: 15px; }

/* Formlar (tema .form sınıfı ile) */
.form .form-control, .form .form-select { padding: .75rem 1rem; font-size: 16px; }
.form .form-control.is-invalid, .form .form-select.is-invalid { border-color: #dc3545; }
.form .form-label { font-weight: 600; font-size: 15px; margin-bottom: .35rem; }
.form .invalid-feedback { font-size: 14px; }
.form .form-ipucu { font-size: 13px; color: var(--gray-color); margin-top: .3rem; }
.form .form-check-input { border: 1px solid var(--accent-color); background-color: #fff; width: 1.15em; height: 1.15em; margin-top: .2em; }
.form .form-check-input:checked { background-color: var(--accent-color) !important; border-color: var(--accent-color) !important; }
.form .form-check-label { font-size: 15px; }
.form textarea.form-control { min-height: 120px; }

/* Randevu sihirbazı */
.adimlar { display: flex; gap: .5rem; list-style: none; padding: 0; margin: 0 0 2rem; counter-reset: adim; flex-wrap: wrap; }
.adimlar li { flex: 1 1 0; min-width: 100px; text-align: center; font-size: 13px; color: var(--gray-color); position: relative; padding-top: 2.5rem; }
.adimlar li::before { counter-increment: adim; content: counter(adim); position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 2.1rem; height: 2.1rem; border-radius: 50%; border: 2px solid #ddd; display: flex; align-items: center; justify-content: center; font-weight: 600; background: #fff; }
.adimlar li.aktif { color: var(--accent-color); font-weight: 600; }
.adimlar li.aktif::before { border-color: var(--accent-color); background: var(--accent-color); color: #fff; }
.adimlar li.tamam::before { border-color: var(--accent-color); color: var(--accent-color); content: "\2713"; }
.adim-panel { display: none; }
.adim-panel.aktif { display: block; }
.secim-kart { display: block; border: 2px solid #eee; border-radius: 10px; padding: 1rem 1.25rem; cursor: pointer; transition: all .2s; height: 100%; background: #fff; }
.secim-kart:hover { border-color: var(--accent-color-2); }
.secim-kart.secili { border-color: var(--accent-color); background: var(--kart-bg); box-shadow: 0 .25rem .75rem rgba(165,88,80,.15); }
.secim-kart.pasif { opacity: .45; pointer-events: none; }
.secim-kart img { width: 64px; height: 64px; object-fit: cover; border-radius: 50%; flex-shrink: 0; }
.secim-kart h6 { font-family: var(--font-1); font-size: 1.1rem; margin: 0; color: var(--text-color); }
.secim-kart small, .secim-kart .kucuk { font-size: 13px; color: var(--gray-color); }
.secim-kart .icon-box { width: 3.2rem; height: 3.2rem; font-size: 1.3rem; flex-shrink: 0; }
.gun-cipler { display: flex; gap: .5rem; overflow-x: auto; padding-bottom: .5rem; scrollbar-width: thin; }
.gun-cip { flex: 0 0 auto; border: 2px solid #eee; border-radius: 10px; padding: .5rem .9rem; text-align: center; cursor: pointer; min-width: 86px; font-size: 13px; background: #fff; color: var(--gray-color); }
.gun-cip strong { display: block; font-size: 1.15rem; color: var(--text-color); }
.gun-cip.secili { border-color: var(--accent-color); background: var(--kart-bg); color: var(--accent-color); }
.slotlar { display: flex; flex-wrap: wrap; gap: .5rem; }
.slot { border: 2px solid #eee; border-radius: 8px; padding: .5rem .9rem; font-size: 15px; cursor: pointer; background: #fff; }
.slot:hover { border-color: var(--accent-color-2); }
.slot.secili { background: var(--accent-color); border-color: var(--accent-color); color: #fff; }
.slot.dolu { opacity: .4; text-decoration: line-through; cursor: not-allowed; }
.ozet-kutu { position: sticky; top: 110px; }
.ozet-kutu dt { font-size: 12px; text-transform: uppercase; letter-spacing: 1px; color: var(--gray-color); font-weight: 600; }
.ozet-kutu dd { font-size: 15px; margin-bottom: .75rem; color: var(--text-color); }

/* İçerik metni */
.icerik-metni p, .icerik-metni li { font-size: 16px; line-height: 1.8; color: var(--text-color); }
.icerik-metni h2, .icerik-metni h3 { font-family: var(--font-1); font-size: 1.6rem; margin-top: 1.5rem; }
.icerik-metni img { max-width: 100%; border-radius: 10px; }
.icerik-metni ul { list-style: disc; padding-left: 1.25rem; }

/* Blog kartı */
.blog-kart img { aspect-ratio: 3/2; object-fit: cover; width: 100%; }
.blog-kart .baslik { font-family: var(--font-1); font-size: 1.25rem; font-weight: 600; color: var(--text-color); line-height: 1.3; display: block; }
.blog-kart .baslik:hover { color: var(--accent-color); }
.blog-kart .tarih { font-size: 14px; }

/* Tablo ve listeler */
.saat-tablo td, .saat-tablo th { font-size: 15px; padding: .55rem .75rem; }
.saat-tablo tr.bugun td { font-weight: 600; color: var(--accent-color); }
.liste-ok { list-style: none; padding: 0; margin: 0; }
.liste-ok li { display: flex; gap: .6rem; align-items: flex-start; font-size: 15px; margin-bottom: .55rem; color: var(--text-color); }
.liste-ok li i { color: var(--accent-color); margin-top: .25rem; }
.icon-box.kucuk { width: 3.2rem; height: 3.2rem; font-size: 1.3rem; }
.alan-kart .icon-box { width: 4.2rem; height: 4.2rem; font-size: 1.7rem; }
.adim-no { width: 3rem; height: 3rem; border-radius: 50%; background: var(--accent-color); color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 1.1rem; flex-shrink: 0; }

/* Çeşitli */
.alert { font-size: 15px; }
.breadcrumb { margin: 0; }
.breadcrumb .breadcrumb-item a, .breadcrumb .breadcrumb-item { font-size: 15px; }
.pagination .page-link { color: var(--accent-color); font-size: 15px; }
.pagination .page-item.active .page-link { background: var(--accent-color); border-color: var(--accent-color); }
.wa-sabit { position: fixed; right: 18px; bottom: 18px; z-index: 1050; width: 54px; height: 54px; border-radius: 50%; background: #25d366; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 1.6rem; box-shadow: 0 6px 20px rgba(0,0,0,.2); }
.wa-sabit:hover { color: #fff; background: #1ebe5d; }
.list.text-dark li .link, .list.text-dark li i { color: var(--text-color); }
.list.text-dark li .link:hover { color: var(--accent-color); }
.accordion .accordion-button { font-size: 16px; }
.accordion-body { font-size: 15px; line-height: 1.7; }
.sss-grup { font-family: var(--font-1); font-size: 1.4rem; color: var(--accent-color); margin: 1.5rem 0 1rem; }
footer .list li, footer .list li .link { font-size: 15px; }
footer p { font-size: 15px; }
footer .marka-metin { font-family: var(--font-1); font-size: 1.5rem; font-weight: 600; color: #fff; }
.text-404 { font-size: 8rem; }
.swiper-pagination .swiper-pagination-bullet-active { background-color: var(--accent-color); }
.bos-site { text-align: center; padding: 3rem 1rem; color: var(--gray-color); }
.bos-site i { font-size: 2.5rem; display: block; margin-bottom: .75rem; opacity: .5; }
.ist-kutu { background: var(--secondary-color); border-radius: 10px; padding: 1.25rem; text-align: center; }
.ist-kutu .deger { font-family: var(--font-1); font-size: 2rem; font-weight: 700; color: var(--accent-color); line-height: 1; }
.ist-kutu .etiket { font-size: 13px; color: var(--gray-color); margin-top: .35rem; }
