/* ── Özkon proje düzeltmeleri — tema CSS'inin üstüne biner ── */

/* Ana sayfa header: menüde 7 madde var (orijinalde 6) — geniş ekranda tek satıra sığması için
   madde aralıkları ve logo dolgusu daraltıldı. */
.header-layout3 .main-menu > ul > li { margin: 0 20px; }
.header-layout3 .header-logo { padding: 0 30px; }
@media (max-width: 1399px) {
    .header-layout3 .main-menu > ul > li { margin: 0 14px; }
    .header-layout3 .header-logo { padding: 0 16px; }
}

/* Popup kapatma düğmesi — kendi X işaretimizi çiziyoruz (temanın btn-close ikonu görünmüyordu) */
#autoOfferModal .btn-close {
    width: 38px; height: 38px;
    display: grid; place-items: center;
    background: #eef3fe none; border-radius: 50%;
    padding: 0; opacity: 1; border: none;
    font-size: 0; line-height: 1;
}
#autoOfferModal .btn-close::before {
    content: "\2715";
    font-size: 17px; font-weight: 700; color: #0b1422;
}
#autoOfferModal .btn-close:hover { background-color: #0B59DB; }
#autoOfferModal .btn-close:hover::before { color: #fff; }

/* Sol alt sabit WhatsApp butonu */
.ozkon-wa-btn {
    position: fixed; left: 22px; bottom: 22px; z-index: 990;
    width: 56px; height: 56px; border-radius: 50%;
    display: grid; place-items: center;
    background: #25D366; color: #fff; font-size: 30px;
    box-shadow: 0 6px 20px rgba(37, 211, 102, .45);
    transition: transform .2s, box-shadow .2s;
    animation: ozkonWaPulse 2.4s infinite;
}
.ozkon-wa-btn:hover {
    color: #fff; transform: translateY(-3px) scale(1.06);
    box-shadow: 0 12px 28px rgba(37, 211, 102, .55);
}
@keyframes ozkonWaPulse {
    0% { box-shadow: 0 6px 20px rgba(37,211,102,.45), 0 0 0 0 rgba(37,211,102,.4); }
    70% { box-shadow: 0 6px 20px rgba(37,211,102,.45), 0 0 0 16px rgba(37,211,102,0); }
    100% { box-shadow: 0 6px 20px rgba(37,211,102,.45), 0 0 0 0 rgba(37,211,102,0); }
}
@media (max-width: 575px) {
    .ozkon-wa-btn { width: 48px; height: 48px; font-size: 26px; left: 14px; bottom: 14px; }
}


/* ── Fiyat Hesaplama sayfası — estetik sürüm ── */
.ozc-card { --accent-blue: #0B59DB; --accent-cyan: #2f9de2;
    position: relative; background: #fff; border: 1px solid #E6EAF0; border-radius: 24px;
    padding: 44px 46px 40px; box-shadow: 0 24px 60px rgba(0, 47, 104, .10); overflow: hidden; }
.ozc-card::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 5px;
    background: linear-gradient(90deg, #0B59DB, #2f9de2 55%, #7cc7f0); }

/* Adım göstergesi */
.ozc-steps { display: flex; align-items: flex-start; justify-content: center; gap: 12px; margin-bottom: 38px; }
.ozc-steps .step { display: grid; justify-items: center; gap: 6px; }
.ozc-steps .step span { width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center;
    background: #F4F7FB; color: #98A2B3; font-weight: 800; font-size: 1.05rem;
    border: 2px solid #E6EAF0; transition: all .35s; }
.ozc-steps .step small { color: #98A2B3; font-weight: 700; font-size: .8rem; letter-spacing: .3px; transition: color .3s; }
.ozc-steps .step.active span { background: linear-gradient(135deg, #0B59DB, #002f68); border-color: transparent; color: #fff;
    box-shadow: 0 8px 20px rgba(11, 89, 219, .35); transform: scale(1.08); }
.ozc-steps .step.completed span { background: #E8F1FE; border-color: #0B59DB; color: #0B59DB; }
.ozc-steps .step.active small { color: #002f68; }
.ozc-steps .step-line { width: 84px; height: 3px; background: #E6EAF0; border-radius: 2px; margin-top: 22px; transition: background .4s; }
.ozc-steps .step-line.filled { background: linear-gradient(90deg, #0B59DB, #2f9de2); }
.step-content { display: none; }
.step-content.active { display: block; animation: ozcFade .35s ease; }
@keyframes ozcFade { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

/* Form elemanları */
.ozc-label { display: block; font-weight: 700; color: #0B1422; margin-bottom: 9px; font-size: .92rem; }
.ozc-card .form-control, .ozc-card .form-select {
    border: 1.5px solid #E1E6EE; border-radius: 12px; padding: 13px 16px; font-size: .95rem;
    background-color: #FBFCFE; transition: border-color .2s, box-shadow .2s, background-color .2s; }
.ozc-card .form-select { appearance: none; -webkit-appearance: none; padding-right: 44px; cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 24 24' fill='none' stroke='%230B59DB' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-repeat: no-repeat; background-position: right 16px center; }
.ozc-card .form-control:hover, .ozc-card .form-select:hover { border-color: #B9C6DA; }
.ozc-card .form-control:focus, .ozc-card .form-select:focus { outline: none; background-color: #fff;
    border-color: #0B59DB; box-shadow: 0 0 0 4px rgba(11, 89, 219, .10); }
.ozc-card .form-select:disabled { background-color: #F2F4F8; color: #98A2B3; cursor: not-allowed; }
.ozc-card .form-group { margin-bottom: 22px; }
.ozc-location { align-items: center; gap: 10px;
    background: linear-gradient(90deg, #E8F1FE, #F2F8FE); color: #0B59DB; font-weight: 700;
    border: 1px solid rgba(11, 89, 219, .18); border-radius: 12px; padding: 13px 18px; }
.ozc-location i { font-size: 1.1rem; }

/* Alan adımı */
.ozc-area { text-align: center; font-size: 3.4rem; font-weight: 800; color: #002f68; margin: 4px 0 4px; letter-spacing: -1.5px; }
.ozc-area span { background: linear-gradient(135deg, #0B59DB, #2f9de2); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.ozc-slider { width: 100%; accent-color: #0B59DB; height: 10px; border-radius: 8px; -webkit-appearance: none; appearance: none;
    background: linear-gradient(90deg, #0B59DB 0%, #2f9de2 25%, #EAF0F8 25%); outline: none; margin: 10px 0 4px; }
.ozc-slider::-webkit-slider-thumb { -webkit-appearance: none; width: 28px; height: 28px; border-radius: 50%;
    background: #fff; border: 8px solid #0B59DB; box-shadow: 0 4px 14px rgba(0, 47, 104, .35); cursor: grab; transition: transform .15s; }
.ozc-slider::-webkit-slider-thumb:hover { transform: scale(1.12); }
.ozc-presets { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin: 20px 0 24px; }
.preset-btn { border: 1.5px solid #E1E6EE; background: #FBFCFE; border-radius: 999px; padding: 9px 20px; font-weight: 700;
    font-size: .9rem; color: #6E7070; cursor: pointer; transition: all .22s; }
.preset-btn:hover { border-color: #0B59DB; color: #0B59DB; transform: translateY(-2px); box-shadow: 0 6px 14px rgba(11,89,219,.12); }
.preset-btn.active { background: linear-gradient(135deg, #0B59DB, #1c72b8); border-color: transparent; color: #fff;
    box-shadow: 0 6px 16px rgba(11, 89, 219, .3); }
.ozc-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 6px; }
.ozc-meta > div { position: relative; background: #F7F9FC; border: 1px solid #EDF1F7; border-radius: 14px;
    padding: 16px 20px; display: grid; gap: 3px; overflow: hidden; }
.ozc-meta > div::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px;
    background: linear-gradient(180deg, #0B59DB, #2f9de2); border-radius: 0 3px 3px 0; }
.ozc-meta small { color: #98A2B3; font-weight: 600; font-size: .8rem; letter-spacing: .2px; }
.ozc-meta b { color: #002f68; font-size: 1.2rem; }

/* Sonuç */
.ozc-spinner { width: 54px; height: 54px; margin: 0 auto; border: 5px solid #E8F1FE; border-top-color: #0B59DB;
    border-radius: 50%; animation: ozcSpin .9s linear infinite; }
@keyframes ozcSpin { to { transform: rotate(360deg); } }
.ozc-result { position: relative; text-align: center; overflow: hidden;
    background: linear-gradient(140deg, #003a80, #002f68 55%, #001c49);
    border-radius: 20px; padding: 38px 20px 34px; color: #fff; margin-bottom: 24px;
    box-shadow: 0 18px 40px rgba(0, 28, 73, .35); }
.ozc-result::before { content: ""; position: absolute; top: -60px; right: -60px; width: 220px; height: 220px;
    border-radius: 50%; background: radial-gradient(circle, rgba(47,157,226,.35), transparent 70%); }
.ozc-result::after { content: ""; position: absolute; bottom: -80px; left: -40px; width: 200px; height: 200px;
    border-radius: 50%; background: radial-gradient(circle, rgba(11,89,219,.3), transparent 70%); }
.ozc-result small { position: relative; z-index: 1; color: rgba(255,255,255,.72); font-size: .92rem; }
.ozc-price { position: relative; z-index: 1; font-size: clamp(2.4rem, 6vw, 3.8rem); font-weight: 800; letter-spacing: -1.5px; margin-top: 8px; }
.ozc-price span { background: linear-gradient(90deg, #7cc7f0, #fff 60%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.ozc-summary { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.ozc-summary > div { background: #F7F9FC; border: 1px solid #EDF1F7; border-radius: 14px; padding: 14px 18px;
    display: grid; gap: 3px; transition: transform .2s, box-shadow .2s; }
.ozc-summary > div:hover { transform: translateY(-2px); box-shadow: 0 8px 18px rgba(0, 47, 104, .08); }
.ozc-summary small { color: #98A2B3; font-weight: 600; font-size: .8rem; }
.ozc-summary b { color: #0B1422; }
.ozc-note { display: flex; gap: 12px; align-items: flex-start; margin-top: 20px;
    background: #FFFBEB; border: 1px solid #FDE9BF; border-inline-start: 4px solid #FFB539;
    border-radius: 10px; padding: 14px 18px; font-size: .88rem; color: #7A6A3A; line-height: 1.55; }
.ozc-note i { color: #FFB539; margin-top: 2px; }

@media (max-width: 767px) {
    .ozc-card { padding: 28px 20px 26px; }
    .ozc-summary { grid-template-columns: 1fr 1fr; }
    .ozc-steps .step-line { width: 36px; }
    .ozc-area { font-size: 2.6rem; }
}

/* nice-select (hesaplama sayfasi) — kart tasarimiyla ayni dil */
.ozc-card .nice-select { float: none; width: 100%; height: auto; line-height: 1.5; background-image: none !important;
    border: 1.5px solid #E1E6EE; border-radius: 12px; padding: 13px 44px 13px 16px;
    background-color: #FBFCFE; font-size: .95rem; }
.ozc-card .nice-select:hover { border-color: #B9C6DA; }
.ozc-card .nice-select.open, .ozc-card .nice-select:focus { border-color: #0B59DB;
    box-shadow: 0 0 0 4px rgba(11, 89, 219, .10); background-color: #fff; }
.ozc-card .nice-select:after { border-color: #0B59DB; width: 9px; height: 9px; right: 18px; border-width: 2.4px; margin-top: -6px; }
.ozc-card .nice-select .list { width: 100%; max-height: 280px; overflow-y: auto;
    border-radius: 14px; border: 1px solid #E6EAF0; box-shadow: 0 18px 44px rgba(0, 47, 104, .16);
    margin-top: 6px; padding: 6px; }
.ozc-card .nice-select .option { border-radius: 8px; padding-inline: 14px; line-height: 40px; min-height: 40px;
    font-size: .92rem; color: #37404d; transition: background .15s, color .15s; }
.ozc-card .nice-select .option:hover, .ozc-card .nice-select .option.focus { background: #EEF3FE; color: #0B59DB; }
.ozc-card .nice-select .option.selected { font-weight: 700; color: #0B59DB; }
.ozc-card .nice-select.disabled { background-color: #F2F4F8; border-color: #E6EAF0; }
.ozc-card .nice-select.disabled .current { color: #98A2B3; }
/* Orijinal select gizlenir (nice-select kopyasi gorunur) */
.ozc-card select.nice-select { display: none; }

/* Liste ici kaydirma sayfaya tasmasin */
.ozc-card .nice-select .list { overscroll-behavior: contain; }

/* Son Yazilar mini gorselleri: genis kapaklar kutuya orantili sigsin */
.recent-post .media-img { overflow: hidden; }
.recent-post .media-img img { width: 100%; height: 100%; object-fit: cover; border-radius: 20px; }

/* Yapiskan menu: position gecisindeki agir transition kasma hissi veriyordu — animasyon (stickyAni) yeterli */
.sticky-wrapper { transition: none; }

/* ── Belgelerimiz sayfasi — sertifika kartlari ── */
.ozd-card { background: #fff; border: 1px solid #E6EAF0; border-radius: 18px; overflow: hidden;
    height: 100%; display: flex; flex-direction: column;
    box-shadow: 0 8px 26px rgba(0, 47, 104, .07); transition: transform .25s, box-shadow .25s, border-color .25s; }
.ozd-card:hover { transform: translateY(-6px); box-shadow: 0 22px 48px rgba(0, 47, 104, .14); border-color: rgba(11, 89, 219, .35); }
.ozd-media { position: relative; display: grid; place-items: center; aspect-ratio: 3/4; overflow: hidden;
    background: linear-gradient(150deg, #F4F7FB, #E8F1FE); text-decoration: none; }
.ozd-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.ozd-card:hover .ozd-media img { transform: scale(1.05); }
.ozd-icon { display: grid; place-items: center; width: 96px; height: 96px; border-radius: 24px;
    background: linear-gradient(135deg, #0B59DB, #002f68); color: #fff; font-size: 2.6rem;
    box-shadow: 0 14px 30px rgba(11, 89, 219, .35); }
.ozd-open { position: absolute; inset: 0; display: grid; place-items: center; gap: 0;
    background: rgba(0, 28, 73, .55); color: #fff; font-weight: 700; letter-spacing: .3px;
    opacity: 0; transition: opacity .25s; }
.ozd-open i { margin-inline-end: 8px; }
.ozd-card:hover .ozd-open { opacity: 1; }
.ozd-body { padding: 18px 20px 16px; display: flex; flex-direction: column; gap: 6px; flex: 1; }
.ozd-body h4 { margin: 0; font-size: 1.02rem; color: #0B1422; line-height: 1.35; }
.ozd-body p { margin: 0; color: #6E7070; font-size: .86rem; line-height: 1.5; }
.ozd-foot { margin-top: auto; padding-top: 12px; border-top: 1px solid #EDF1F7;
    display: flex; align-items: center; justify-content: space-between; }
.ozd-size { color: #98A2B3; font-size: .8rem; font-weight: 600; }
.ozd-size i { color: #E5484D; margin-inline-end: 4px; }
.ozd-dl { width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center;
    background: #EEF3FE; color: #0B59DB; font-size: 1rem; transition: all .2s; }
.ozd-dl:hover { background: #0B59DB; color: #fff; transform: translateY(-2px); }

/* ── Cerez onay bandi ── */
.ozkon-cookie { position: fixed; inset: auto 20px 20px 20px; z-index: 1200; display: flex; justify-content: center; }
.ozkon-cookie-in { display: flex; align-items: center; gap: 16px; flex-wrap: wrap;
    max-width: 720px; background: #fff; border: 1px solid #E6EAF0; border-radius: 16px;
    padding: 16px 22px; box-shadow: 0 20px 50px rgba(0, 28, 73, .25); }
.ozkon-cookie-ico { font-size: 1.6rem; }
.ozkon-cookie-in p { margin: 0; flex: 1; min-width: 220px; color: #37404d; font-size: .9rem; line-height: 1.5; }
.ozkon-cookie-in p a { color: #0B59DB; font-weight: 700; text-decoration: underline; }
.ozkon-cookie-btns { display: flex; gap: 10px; }
.ozkon-cookie-btns button { border-radius: 999px; padding: 10px 22px; font-weight: 700; font-size: .88rem;
    cursor: pointer; transition: all .2s; border: 1.5px solid #E1E6EE; background: #fff; color: #6E7070; }
#ozkonCerezKabul { background: linear-gradient(135deg, #0B59DB, #002f68); border-color: transparent; color: #fff; }
#ozkonCerezKabul:hover { transform: translateY(-2px); box-shadow: 0 8px 18px rgba(11, 89, 219, .35); }
#ozkonCerezRed:hover { border-color: #B9C6DA; color: #37404d; }
/* Footer yasal linkler */
.ozl-links { display: flex; flex-wrap: wrap; gap: 8px 20px; justify-content: flex-end; }
.ozl-links a { color: rgba(255,255,255,.65); font-size: .85rem; transition: color .2s; }
.ozl-links a:hover { color: #fff; }
@media (max-width: 991px) { .ozl-links { justify-content: flex-start; margin-top: 6px; } }
/* Sozlesme metni */
.ozl-prose h2, .ozl-prose h3 { margin-top: 28px; }
.ozl-prose p, .ozl-prose li { line-height: 1.75; }
.ozl-updated { margin-top: 34px; color: #98A2B3; font-size: .85rem; border-top: 1px solid #EDF1F7; padding-top: 14px; }

/* Son Yazilar basliklari: 2 satirda kes, devami "..." */
.recent-post .post-title {
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
    overflow: hidden; line-height: 1.4;
}

/* Manset fade slider: aktif olmayan slayt KESIN gizli.
   Swiper'in inline opacity'leri loop modunda tutarsiz kalabiliyor; slaytlarin
   yukseklikleri farkli oldugundan alttaki slaytin bandi sizip "ust uste binme" yaratiyordu. */
.hero-slider-3.swiper-fade > .swiper-wrapper > .swiper-slide {
    opacity: 0 !important;
    transition: opacity .6s ease !important;
    pointer-events: none;
}
.hero-slider-3.swiper-fade > .swiper-wrapper > .swiper-slide.swiper-slide-active {
    opacity: 1 !important;
    pointer-events: auto;
}

/* Manset slaytlari esit yukseklikte: slayt yuksekligi icerik metnine gore degisiyordu,
   metni kisa slaytlarda arka plan gorseli buzuluyordu. Flex stretch ile hepsi
   en uzun slayta esitlenir; gorsel her slaytta tam alani kaplar. */
.hero-slider-3 > .swiper-wrapper { align-items: stretch; }
.hero-slider-3 > .swiper-wrapper > .swiper-slide { height: auto !important; }
.hero-slider-3 > .swiper-wrapper > .swiper-slide .hero-inner { height: 100%; }

/* Mobil header: logo ile sag taraftaki EN + menu butonu ayni eksene hizalanir */
@media (max-width: 1199px) {
    .th-header .header-logo img { margin-top: 2px; vertical-align: middle; }
    .th-header .header-right-button { align-items: center; }
    .th-header .th-menu-toggle { display: flex !important; align-items: center; justify-content: center; }
}
