/* Gym – şablona eklenen site stilleri */

/* Başlıkların anlamsal etiketleri değişti; şablon görünümü korunur */
.hi-baslik, .sayfa-baslik, .bh-baslik, .bi-baslik, .cd-baslik { font-family: "Oswald", sans-serif; }
.bi-baslik { font-size: 20px; line-height: 28px; }
.bi-baslik a { color: #ffffff; font-weight: 600; }
.bi-baslik a:hover { color: #ad1718; }
.bh-baslik { font-size: 30px; }
.cd-baslik { font-size: 30px; }
.hi-text .hi-baslik { font-size: 72px; }
.sayfa-baslik { font-size: 60px; }

/* Türkçe menü öğeleri daha uzun: menüyü sığdır */
@media only screen and (min-width: 992px) and (max-width: 1399px) {
    .nav-menu ul li { margin-right: 18px; }
    .nav-menu ul li a { font-size: 14px; letter-spacing: .5px; }
}

/* Editörden gelen içerik */
.icerik-metni { color: #c4c4c4; font-size: 16px; line-height: 1.8; }
.icerik-metni p { color: #c4c4c4; font-size: 16px; line-height: 1.8; margin-bottom: 18px; }
.icerik-metni h2, .icerik-metni h3, .icerik-metni h4, .icerik-metni h5 { color: #ffffff; font-weight: 600; margin: 28px 0 14px; }
.icerik-metni h2 { font-size: 26px; }
.icerik-metni h3 { font-size: 22px; }
.icerik-metni h4 { font-size: 19px; }
.icerik-metni ul, .icerik-metni ol { padding-left: 22px; margin-bottom: 18px; }
.icerik-metni li { margin-bottom: 6px; }
.icerik-metni a { color: #ad1718; text-decoration: underline; }
.icerik-metni blockquote { border-left: 4px solid #ad1718; background: #151515; padding: 22px 26px; margin: 24px 0; color: #ffffff; font-size: 18px; font-style: italic; }
.icerik-metni strong, .icerik-metni b { color: #ffffff; }
.icerik-metni img { max-width: 100%; height: auto; margin: 10px 0; }
.icerik-metni .ql-align-center { text-align: center; }
.icerik-metni .ql-align-right { text-align: right; }
.icerik-metni .ql-align-justify { text-align: justify; }

.cd-kategori { display: inline-block; background: #ad1718; color: #fff; font-size: 12px; font-weight: 700; text-transform: uppercase; padding: 4px 12px; margin: -16px 0 18px; letter-spacing: 1px; }
.cd-ozet { font-size: 18px; color: #ffffff !important; margin-bottom: 22px; }

/* Bildirimler ve formlar */
.site-bildirim {
    position: fixed; top: 110px; left: 50%; transform: translateX(-50%); z-index: 999; padding: 16px 26px; color: #fff; font-weight: 600;
    box-shadow: 0 10px 40px rgba(0, 0, 0, .4); max-width: 92%; animation: bildirimGir .3s ease-out, bildirimCik .4s ease-in 6s forwards;
}
.site-bildirim-basari { background: #12a150; }
.site-bildirim-hata, .site-bildirim-bilgi { background: #e5383b; }
@keyframes bildirimGir { from { opacity: 0; transform: translate(-50%, -12px); } }
@keyframes bildirimCik { to { opacity: 0; visibility: hidden; } }
.form-hata { display: block; color: #ff6b6b; margin: -14px 0 16px; font-size: 13px; }
.form-uyari { background: rgba(229, 56, 59, .15); border-left: 3px solid #e5383b; color: #ffb3b3; padding: 12px 16px; margin-bottom: 20px; }
.gizli-alan { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.leave-comment input[type=email], .leave-comment input[type=tel] {
    height: 50px; width: 100%; font-size: 14px; color: #c4c4c4; padding-left: 20px; border: 1px solid #363636; background: transparent; margin-bottom: 20px;
}
.bos-icerik { color: #a9a9a9; font-size: 16px; padding: 40px 0; }

/* Bağlantılar */
.gettouch-section .gt-text a, .contact-widget .cw-text a { color: inherit; }
.gettouch-section .gt-text a:hover, .contact-widget .cw-text a:hover { color: #ad1718; }
.class-timetable table tbody tr td h5 a { color: inherit; }
.class-timetable table tbody tr td h5 + span { margin-bottom: 8px; }
.class-timetable table tbody tr td h5 ~ h5 { margin-top: 10px; }
.bh-text ul li a, .blog-item .bi-text ul li a { color: inherit; }
.bh-text ul li a:hover, .blog-item .bi-text ul li a:hover { color: #ad1718; }

/* Galeri */
.galeri-filtre { background: #0a0a0a; padding: 40px 0 30px; }
.galeri-filtre .table-controls { text-align: center; }
.galeri-filtre .table-controls ul li { padding: 0; }
.galeri-filtre .table-controls ul li a { display: block; color: inherit; padding: 6px 16px; }
.galeri-filtre .table-controls ul li.active a, .galeri-filtre .table-controls ul li a:hover { color: #ad1718; }
.gallery .gs-item { position: relative; }
.gallery .gs-item .gs-baslik {
    position: absolute; left: 0; right: 0; bottom: 0; padding: 30px 18px 14px; color: #fff; font-family: "Oswald", sans-serif; font-size: 16px;
    background: linear-gradient(transparent, rgba(0, 0, 0, .75)); opacity: 0; transition: opacity .3s; pointer-events: none;
}
.gallery .gs-item:hover .gs-baslik { opacity: 1; }
.gallery .gs-item .thumb-icon.video-ikon { opacity: 1; visibility: visible; }
.gallery .gs-item .thumb-icon.video-ikon i {
    width: 76px; height: 76px; border-radius: 50%; background: rgba(173, 23, 24, .92); color: #fff; font-size: 28px;
    display: flex; align-items: center; justify-content: center; padding-left: 6px; box-shadow: 0 0 0 10px rgba(173, 23, 24, .25);
}
.salonumuz-section { background: #0a0a0a; padding-bottom: 0; }
.salonumuz-section .gallery-section { margin-top: 10px; }
.video-pencere { position: relative; max-width: 960px; margin: 0 auto; }
.video-pencere video { width: 100%; max-height: 80vh; background: #000; display: block; }
.mfp-video-dosya .mfp-close { color: #fff; right: -6px; top: -40px; }

/* Ana sayfa hizmet kartı (tüm kart tıklanabilir) */
.hizmet-kart { display: block; }
.hizmet-kart .ci-text .ok {
    position: absolute; right: 20px; top: 50%; transform: translateY(-50%); width: 50px; height: 50px; border-radius: 50%;
    background: #252525; color: #fff; font-size: 24px; display: flex; align-items: center; justify-content: center; transition: background .3s;
}
.hizmet-kart:hover .ci-text .ok { background: #ad1718; }
.classes-section .class-item .ci-pic img { width: 100%; height: 300px; object-fit: cover; }

/* Yan menü */
.sidebar-option .so-categories ul li.aktif a { color: #ad1718; }
.yan-iletisim { height: auto; padding: 40px 30px; text-align: center; background: #151515; border: 1px solid #252525; }
.yan-iletisim h5 { margin-bottom: 18px; }
.yan-tel { display: block; color: #fff; font-family: "Oswald", sans-serif; font-size: 22px; margin-bottom: 22px; }
.yan-tel:hover { color: #ad1718; }

/* Blog */
.blog-pagination a.aktif { background: #ad1718; }
.yazi-yolu { color: #888; font-size: 13px; margin-bottom: 20px; }
.yazi-yolu a { color: #c4c4c4; }
.yazi-yolu a:hover { color: #ad1718; }
.blog-details-text .blog-details-tag-share .share a { width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; }
.benzer-yazilar { margin-top: 50px; }
.benzer-kart { display: block; margin-bottom: 24px; }
.benzer-kart img { width: 100%; height: 160px; object-fit: cover; margin-bottom: 12px; }
.benzer-kart strong { display: block; color: #fff; font-family: "Oswald", sans-serif; font-weight: 500; line-height: 1.4; }
.benzer-kart small { color: #888; }
.benzer-kart:hover strong { color: #ad1718; }

/* Arama */
.arama-formu { display: flex; margin-bottom: 40px; }
.arama-formu input { flex: 1; height: 54px; background: transparent; border: 1px solid #363636; color: #fff; padding: 0 20px; font-size: 16px; }
.arama-formu button { width: 64px; background: #ad1718; border: 0; color: #fff; font-size: 18px; cursor: pointer; }
.arama-sonuc { display: flex; gap: 20px; align-items: center; padding: 18px 0; border-bottom: 1px solid #252525; }
.arama-sonuc img { width: 120px; height: 80px; object-fit: cover; flex: none; }
.arama-sonuc small { display: block; color: #ad1718; text-transform: uppercase; font-size: 11px; letter-spacing: 1px; font-weight: 700; }
.arama-sonuc strong { display: block; color: #fff; font-size: 18px; font-family: "Oswald", sans-serif; font-weight: 500; }
.arama-sonuc em { display: block; color: #a9a9a9; font-style: normal; font-size: 14px; }
.arama-sonuc:hover strong { color: #ad1718; }

@media only screen and (max-width: 991px) {
    .hi-text .hi-baslik { font-size: 52px; }
    .sayfa-baslik { font-size: 42px; }
}
@media only screen and (max-width: 767px) {
    .hi-text .hi-baslik { font-size: 40px; line-height: 1.15; }
    .sayfa-baslik { font-size: 34px; }
    .bh-baslik, .cd-baslik { font-size: 24px; line-height: 1.3; }
    .site-bildirim { top: 80px; }
    .arama-sonuc img { width: 80px; height: 60px; }
}

/* Slider: panelden ayarlanan yazı rengi, vurgu rengi ve görsel karartma */
.hs-slider .hs-item.slider-ozel { position: relative; }
.hs-slider .hs-item.slider-ozel::before {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background: rgba(0, 0, 0, var(--slider-karartma, 0));
}
.hs-slider .hs-item.slider-ozel > .container { position: relative; z-index: 1; }
.hs-slider .hs-item.slider-ozel .hi-text span,
.hs-slider .hs-item.slider-ozel .hi-text .hi-baslik { color: var(--slider-yazi, #ffffff); }
.hs-slider .hs-item.slider-ozel .hi-text .hi-baslik strong { color: var(--slider-vurgu, #ad1718); }

/* xFormGym logosu (yüksek çözünürlük; büyük X ile 58px yükseklikte gösterilir) */
.header-section .logo img, .footer-section .fa-logo img { height: 58px; width: auto; }
.header-section .logo { margin-top: -9px; }
@media only screen and (min-width: 1200px) { .header-section .logo { padding-left: 75px; } }
@media only screen and (min-width: 992px) and (max-width: 1199px) { .header-section .logo { padding-left: 20px; } }
@media only screen and (max-width: 991px) { .header-section .logo { margin-top: -12px; } .header-section .logo img { height: 48px; } }

/* İç sayfa başlıkları: sitenin kırmızısı, açık görsellerde de okunur */
.breadcrumb-text .sayfa-baslik { color: #ad1718; text-shadow: 0 2px 18px rgba(0, 0, 0, .55), 0 1px 3px rgba(0, 0, 0, .6); }
.breadcrumb-text .bt-option a, .breadcrumb-text .bt-option span { text-shadow: 0 1px 8px rgba(0, 0, 0, .6); }

/* Blog yazısı: kısa başlık bandı */
.breadcrumb-section.kisa-bant { height: auto; min-height: 340px; padding: 150px 0 50px; }
.kisa-bant .sayfa-baslik { font-size: 40px; line-height: 1.2; text-transform: none; margin-bottom: 14px; }
.kisa-bant .yazi-bilgi { list-style: none; padding: 0; margin: 0 0 12px; display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 22px; }
.kisa-bant .yazi-bilgi li { color: #e8e8e8; font-size: 14px; text-shadow: 0 1px 8px rgba(0, 0, 0, .6); }
.kisa-bant .yazi-bilgi li i { color: #ad1718; margin-right: 6px; }
.kisa-bant .yazi-bilgi a { color: inherit; }
.kisa-bant .yazi-bilgi a:hover { color: #ad1718; }
.yazi-kapak { margin-bottom: 34px; }
.yazi-kapak img { width: 100%; max-height: 460px; object-fit: cover; display: block; }
.blog-details-section.yazi-govde { padding-top: 60px; }

/* Fiyat gizliyken paket kartı */
.ps-item .pi-price.fiyatsiz h2 { display: none; }
.ps-item .pi-price.fiyatsiz span { font-size: 16px; }

/* Arama: türüne göre gruplanmış sonuçlar */
.arama-ozet { color: #a9a9a9; margin-bottom: 30px; }
.arama-ozet strong { color: #fff; }
.arama-grup { margin-bottom: 44px; }
.arama-grup-baslik { display: flex; align-items: center; gap: 12px; color: #fff; font-size: 22px; padding-bottom: 12px; border-bottom: 2px solid #ad1718; margin-bottom: 6px; }
.arama-grup-baslik i { color: #ad1718; }
.arama-grup-baslik small { color: #ad1718; font-family: "Muli", sans-serif; font-size: 14px; font-weight: 700; background: rgba(173, 23, 24, .12); padding: 2px 10px; }
.arama-sonuc mark { background: rgba(173, 23, 24, .25); color: #fff; padding: 0; margin: 0; border-radius: 2px; }
.arama-sonuc .gorselsiz { width: 120px; height: 80px; flex: none; display: flex; align-items: center; justify-content: center; background: #151515; color: #ad1718; font-size: 26px; }

/* Galeri büyütme penceresi: sayaç, başlık ve oklar */
.mfp-galeri .mfp-title { font-family: "Oswald", sans-serif; font-size: 16px; color: #fff; }
.mfp-galeri .mfp-counter { color: #ad1718; font-weight: 700; }
.mfp-galeri .mfp-arrow { opacity: .85; }
.mfp-galeri .mfp-arrow:hover { opacity: 1; }
.mfp-galeri .mfp-arrow-left::after { border-right-color: #ad1718; }
.mfp-galeri .mfp-arrow-right::after { border-left-color: #ad1718; }
.mfp-galeri .mfp-content .video-pencere { width: 90vw; max-width: 960px; }
@media only screen and (max-width: 767px) {
    .breadcrumb-section.kisa-bant { min-height: 260px; padding: 120px 0 36px; }
    .kisa-bant .sayfa-baslik { font-size: 28px; }
    .arama-sonuc .gorselsiz { width: 80px; height: 60px; }
}

/* Gönder butonu kilitliyken */
.leave-comment form button[disabled] { opacity: .7; cursor: wait; }

/* Üye Girişi butonu (üst menü sağı ve mobil menü) */
.top-option { display: flex; align-items: center; justify-content: flex-end; gap: 0; }
.uye-giris-btn {
    display: inline-flex; align-items: center; gap: 8px; margin-left: 20px; padding: 9px 18px; border-radius: 2px;
    background: #ad1718; color: #ffffff; font-family: "Oswald", sans-serif; font-size: 14px; font-weight: 500;
    letter-spacing: 1px; text-transform: uppercase; white-space: nowrap; transition: background .2s;
}
.uye-giris-btn:hover, .uye-giris-btn:focus { background: #8c1214; color: #ffffff; }
.uye-giris-mobil { display: none; }
.offcanvas-menu-wrapper .uye-giris-mobil { display: flex; justify-content: center; margin: 0 0 30px; }
@media only screen and (min-width: 992px) and (max-width: 1299px) {
    .top-option .to-social { display: none; }
    .uye-giris-btn { margin-left: 16px; padding: 8px 12px; font-size: 13px; }
}
@media only screen and (max-width: 991px) { .top-option { display: none; } }

/* Müşteri yorumu: profil resmi olmayan üye için kırmızı zemin üzerinde baş harf */
.ts_slider .ts_item .ti_harf {
    display: inline-flex; align-items: center; justify-content: center; width: 200px; height: 200px; border-radius: 50%;
    background: linear-gradient(135deg, #c8282b, #8c1214); color: #fff; font-family: "Oswald", sans-serif; font-size: 84px; font-weight: 600; line-height: 1;
}
.ts_slider .ts_item .ti_pic img { object-fit: cover; display: inline-block; }
@media (max-width: 575px) {
    .ts_slider .ts_item .ti_harf, .ts_slider .ts_item .ti_pic img { width: 140px; height: 140px; font-size: 60px; }
}

/* Ana sayfa yorumlar: Tüm Yorumlar butonu */
.testimonial-section .tum-yorumlar { margin-top: 36px; }

/* Üye Yorumları sayfası */
.uye-yorumlari-section { background: #0a0a0a; }
.yorumlar-ust { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; flex-wrap: wrap; margin-bottom: 40px; }
.yorumlar-baslik { display: flex; align-items: flex-end; gap: 32px; flex-wrap: wrap; }
.yorumlar-baslik .section-title { margin-bottom: 0; text-align: left; }
.ortalama-puan { display: flex; align-items: center; gap: 14px; padding: 10px 18px; background: #151515; border-left: 3px solid #ad1718; }
.ortalama-puan > strong { font-family: "Oswald", sans-serif; font-size: 40px; line-height: 1; color: #fff; font-weight: 600; }
.ortalama-yildiz { display: block; color: #f5a623; font-size: 16px; letter-spacing: 2px; }
.ortalama-puan small { display: block; color: #a8a8a8; font-size: 13px; margin-top: 4px; }
.yorum-ara { position: relative; width: 300px; max-width: 100%; }
.yorum-ara input { width: 100%; height: 48px; padding: 0 52px 0 18px; background: #151515; border: 1px solid #2a2a2a; color: #fff; font-size: 14px; outline: none; transition: border-color .2s; }
.yorum-ara input:focus { border-color: #ad1718; }
.yorum-ara input::placeholder { color: #8a8a8a; }
.yorum-ara button { position: absolute; right: 0; top: 0; width: 48px; height: 48px; border: 0; background: #ad1718; color: #fff; cursor: pointer; }
.yorum-arama-ozet { color: #c4c4c4; margin: -16px 0 26px; }
.yorum-arama-ozet a { color: #ad1718; margin-left: 6px; }
.yorum-kart { background: #151515; padding: 22px; margin-bottom: 30px; height: calc(100% - 30px); border-top: 3px solid #ad1718; transition: transform .2s; }
.yorum-kart:hover { transform: translateY(-3px); }
.yk-ust { display: flex; align-items: center; gap: 14px; margin-bottom: 16px; }
.yk-ust img, .yk-harf { width: 64px; height: 64px; border-radius: 50%; flex: none; object-fit: cover; }
.yk-harf { display: inline-flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #c8282b, #8c1214); color: #fff; font-family: "Oswald", sans-serif; font-size: 28px; font-weight: 600; }
.yk-ust h5 { color: #fff; font-weight: 600; text-transform: uppercase; margin: 0 0 4px; font-size: 16px; }
.yk-yildiz { color: #f5a623; font-size: 12px; letter-spacing: 1px; }
.yk-yildiz .fa-star-o, .ortalama-yildiz .fa-star-o { color: #4a4a4a; }
.yorum-kart p { color: #c4c4c4; font-size: 14px; line-height: 1.7; margin: 0; overflow-wrap: anywhere; }
.yorum-bos { text-align: center; padding: 60px 20px; color: #a8a8a8; }
.yorum-bos i { font-size: 46px; color: #ad1718; margin-bottom: 14px; display: block; }
.yorum-sayfalama { text-align: center; padding-top: 10px; }
@media (max-width: 767px) {
    .yorumlar-ust { align-items: stretch; }
    .yorumlar-baslik { gap: 18px; }
    .yorum-ara { width: 100%; }
}

/* Üye Yorumları: tam genişlik, yatay kartlar (sol: resim + ad + yıldız, sağ: yorum) */
.yorumlar-kap { max-width: 1760px; padding-left: 40px; padding-right: 40px; }
.yorum-izgara { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.yorum-izgara .yorum-kart { display: grid; grid-template-columns: 170px minmax(0, 1fr); align-items: center; gap: 0; height: auto; margin: 0; padding: 0; border-top: 0; border-left: 3px solid #ad1718; }
.yorum-izgara .yk-ust { flex-direction: column; justify-content: center; text-align: center; gap: 10px; margin: 0; padding: 22px 14px; height: 100%; background: #1b1b1b; }
.yorum-izgara .yk-ust img, .yorum-izgara .yk-harf { width: 76px; height: 76px; font-size: 32px; }
.yorum-izgara .yk-ust h5 { font-size: 15px; }
.yorum-izgara .yorum-kart p { padding: 22px 26px; font-size: 15px; position: relative; }
.yorum-izgara .yorum-kart p::before { content: "\201C"; position: absolute; left: 8px; top: 2px; font-family: Georgia, serif; font-size: 40px; line-height: 1; color: #ad1718; opacity: .6; }
.yorum-izgara .yorum-kart:hover { transform: none; background: #181818; }
@media (min-width: 1500px) {
    .yorum-izgara { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 991px) {
    .yorumlar-kap { padding-left: 15px; padding-right: 15px; }
    .yorum-izgara { grid-template-columns: 1fr; gap: 16px; }
}
@media (max-width: 575px) {
    .yorum-izgara .yorum-kart { grid-template-columns: 110px minmax(0, 1fr); }
    .yorum-izgara .yk-ust { padding: 16px 8px; }
    .yorum-izgara .yk-ust img, .yorum-izgara .yk-harf { width: 56px; height: 56px; font-size: 24px; }
    .yorum-izgara .yk-ust h5 { font-size: 13px; }
    .yorum-izgara .yorum-kart p { padding: 16px 16px 16px 22px; font-size: 14px; }
}
.yorum-sonuclar { transition: opacity .15s; }
