/*
 * SEZGİNSOFT Slider — Revolution Slider işaretlemesiyle (div.rev_slider > ul > li) çalışan hafif slider.
 * Paketlerde ticari Revolution Slider dosyaları bulunmadığı için onun yerine yüklenir; panelden eklenen
 * slayt görseli, başlık, açıklama ve düğmeler aynen gösterilir. (c) SEZGİNSOFT
 */
.rev_slider_wrapper { position: relative; width: 100%; overflow: hidden; }
.rev_slider { position: relative; display: block !important; width: 100%; height: var(--sz-h, 600px); overflow: hidden; background: #111; }
.rev_slider.fullscreenbanner { height: 100vh; min-height: 480px; }
.rev_slider > ul { list-style: none; margin: 0; padding: 0; position: absolute; inset: 0; }
.rev_slider > ul > li {
    position: absolute; inset: 0; margin: 0; padding: 0 8%; box-sizing: border-box;
    display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 14px;
    opacity: 0; visibility: hidden; transition: opacity .9s ease, visibility 0s linear .9s;
}
.rev_slider > ul > li.sz-aktif { opacity: 1; visibility: visible; transition: opacity .9s ease; z-index: 2; }
.rev_slider > ul > li > img.rev-slidebg,
.rev_slider > ul > li > img:first-child {
    position: absolute; inset: 0; width: 100% !important; height: 100% !important; max-width: none;
    object-fit: cover; z-index: 0; transform: scale(1); transition: transform 10s linear;
}
.rev_slider > ul > li.sz-aktif > img.rev-slidebg,
.rev_slider > ul > li.sz-aktif > img:first-child { transform: scale(1.07); }
.rev_slider > ul > li::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, rgba(0,0,0,.6) 0%, rgba(0,0,0,.25) 60%, rgba(0,0,0,.1) 100%); }

/* Katmanlar: Revolution'ın mutlak konumlandırması yerine okunur bir metin sütunu */
.rev_slider .tp-caption {
    position: relative !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important;
    z-index: 2 !important; transform: none !important; opacity: 1 !important; visibility: visible !important;
    width: auto !important; height: auto !important; min-width: 0 !important; max-width: min(760px, 100%) !important; min-height: 0 !important; max-height: none !important;
    white-space: normal !important; margin: 0 !important; color: #fff; text-shadow: 0 2px 12px rgba(0,0,0,.35);
    font-size: clamp(16px, 1.6vw, 22px); line-height: 1.45;
    animation: sz-katman .8s ease both;
}
/* Görsel üstünde okunurluk: metin beyaz, başlık büyük (paketlerde Revolution katman stilleri yok) */
.rev_slider .tp-caption.sz-baslik { color: #fff !important; font-size: clamp(30px, 3.6vw, 56px) !important; line-height: 1.12 !important; font-weight: 700 !important; letter-spacing: 0 !important; }
.rev_slider .tp-caption.sz-metin { color: rgba(255,255,255,.92) !important; font-size: clamp(16px, 1.5vw, 21px) !important; line-height: 1.5 !important; }
.rev_slider .tp-caption.sz-dugme { margin-top: 8px !important; }
.rev_slider li .tp-caption:nth-of-type(2) { animation-delay: .15s; }
.rev_slider li .tp-caption:nth-of-type(3) { animation-delay: .3s; }
.rev_slider li .tp-caption:nth-of-type(4) { animation-delay: .45s; }
.rev_slider .tp-caption a, .rev_slider .tp-caption .btn, .rev_slider .tp-caption button { text-shadow: none; display: inline-block; }
.rev_slider .tp-caption.tp-shape, .rev_slider .tp-caption.tp-shapewrapper, .rev_slider .tp-caption[data-type="shape"] { display: none !important; }
.rev_slider .tp-caption:empty { display: none !important; }
/* Yalnız görselden oluşan katman (ürün, kitap kapağı…): metnin sağında, dikeyde ortalı */
.rev_slider .tp-caption.sz-gorsel {
    position: absolute !important; left: auto !important; right: 8% !important; top: 50% !important;
    transform: translateY(-50%) !important; max-width: 38% !important; animation: none; text-shadow: none;
}
.rev_slider .tp-caption.sz-gorsel img { display: block; max-width: 100% !important; width: auto !important; height: auto !important; max-height: calc(var(--sz-h, 600px) * .7) !important; border-radius: 4px; box-shadow: 0 12px 40px rgba(0,0,0,.35); }
.rev_slider .tp-bannertimer, .rev_slider .tp-loader, .rev_slider .tp-bullets, .rev_slider .tparrows { display: none !important; }
@keyframes sz-katman { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
.rev_slider li:not(.sz-aktif) .tp-caption { animation: none; }

/* Oklar ve noktalar */
.sz-ok {
    position: absolute; top: 50%; z-index: 5; width: 48px; height: 48px; margin-top: -24px; border: 0; border-radius: 50%;
    background: rgba(0,0,0,.35); color: #fff; cursor: pointer; font: 26px/48px Arial, sans-serif; text-align: center; padding: 0;
    opacity: .75; transition: opacity .2s, background .2s;
}
.sz-ok:hover { opacity: 1; background: rgba(0,0,0,.6); }
.sz-ok-sol { left: 18px; } .sz-ok-sag { right: 18px; }
.sz-noktalar { position: absolute; left: 0; right: 0; bottom: 22px; z-index: 5; display: flex; justify-content: center; gap: 10px; }
.sz-noktalar button { width: 11px; height: 11px; padding: 0; border: 2px solid #fff; border-radius: 50%; background: transparent; cursor: pointer; opacity: .8; }
.sz-noktalar button.sz-aktif { background: #fff; opacity: 1; }

@media (max-width: 767px) {
    .rev_slider { height: var(--sz-h-mobil, 420px); }
    .rev_slider.fullscreenbanner { height: 85vh; min-height: 420px; }
    .rev_slider > ul > li { padding: 0 22px; align-items: center; text-align: center; }
    .rev_slider .tp-caption { font-size: clamp(14px, 4.2vw, 18px) !important; line-height: 1.35 !important; text-align: center !important; }
    .rev_slider .tp-caption.sz-baslik { font-size: clamp(24px, 7.5vw, 34px) !important; }
    .rev_slider .tp-caption.sz-metin { font-size: clamp(14px, 4.2vw, 17px) !important; }
    .sz-ok { display: none; }
    .rev_slider .tp-caption.sz-gorsel { display: none !important; }
}
