/* ==========================================================================
   Dora Armatür — Bisum teması üzerine marka katmanı
   Marka rengi logodan alınmıştır: #31b0c9 turkuaz + siyah.
   ========================================================================== */

:root {
    --primary-color: #31b0c9;
    --secondary-color: #22849b;

    --dora: #31b0c9;
    --dora-koyu: #22849b;
    --dora-acik: #e8f6f9;
    --dora-siyah: #0e1b24;
    --dora-metin: #46545e;
    --dora-gri: #f4f8fa;
    --dora-cizgi: #e3eaee;

    --btn-primary-border-radius: 6px;
    --btn-primary-color: #fff;
    --btn-primary-background-color: #31b0c9;
    --btn-primary-border-color: #31b0c9;
    --btn-primary-hover-color: #fff;
    --btn-primary-background-hover-color: #22849b;
    --btn-primary-border-hover-color: #22849b;
    --btn-primary-font-weight: 600;

    --btn-secondary-border-radius: 6px;
    --btn-secondary-color: #31b0c9;
    --btn-secondary-background-color: transparent;
    --btn-secondary-border-color: #31b0c9;
    --btn-secondary-hover-color: #fff;
    --btn-secondary-background-hover-color: #31b0c9;
    --btn-secondary-border-hover-color: #31b0c9;

    --heading-color: #0e1b24;
    --heading-font-family: "Poppins", sans-serif;
    --heading-font-weight: 700;

    --title-color: #0e1b24;
    --title-font-family: "Poppins", sans-serif;

    --body-color: #46545e;
    --body-background-color: #fff;
    --body-font-family: "Poppins", sans-serif;
    --body-font-size: 15px;
    --body-font-weight: 400;

    --section-heading-color: #0e1b24;
    --section-heading-font-family: "Poppins", sans-serif;
    --section-heading-font-size: 40px;
    --section-heading-font-weight: 700;

    --section-subheading-color: #46545e;
    --section-subheading-font-family: "Poppins", sans-serif;
    --section-subheading-font-size: 16px;
}

body {
    font-family: var(--body-font-family);
    font-size: var(--body-font-size);
    color: var(--body-color);
    background: #fff;
}

h1, h2, h3, h4, h5, h6 { color: var(--heading-color); font-family: var(--heading-font-family); }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; }

.dora-skip {
    position: absolute; left: -9999px; top: 0; z-index: 999;
    background: var(--dora); color: #fff; padding: 10px 18px; border-radius: 0 0 6px 0;
}
.dora-skip:focus { left: 0; }

/* --------------------------------------------------------- ortak bileşenler */

.dora-btn {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 13px 26px; border-radius: 6px;
    background: var(--dora); color: #fff; border: 1px solid var(--dora);
    font-weight: 600; font-size: 15px; line-height: 1.2;
    transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}
.dora-btn:hover { background: var(--dora-koyu); border-color: var(--dora-koyu); color: #fff; transform: translateY(-1px); }
.dora-btn i { font-size: 19px; }
.dora-btn--sm { padding: 9px 16px; font-size: 14px; }
.dora-btn--ghost { background: transparent; color: var(--dora); }
.dora-btn--ghost:hover { background: var(--dora); color: #fff; }
.dora-btn--beyaz { background: #fff; color: var(--dora-siyah); border-color: #fff; }
.dora-btn--beyaz:hover { background: var(--dora-siyah); border-color: var(--dora-siyah); color: #fff; }
.dora-btn--seffaf { background: transparent; color: #fff; border-color: rgba(255,255,255,.55); }
.dora-btn--seffaf:hover { background: #fff; color: var(--dora-siyah); border-color: #fff; }

.dora-etiket {
    display: inline-block; margin-bottom: 12px;
    font-size: 13px; font-weight: 600; letter-spacing: .10em; text-transform: uppercase;
    color: var(--dora-koyu); background: var(--dora-acik);
    padding: 6px 14px; border-radius: 40px;
}
.dora-etiket--acik { background: rgba(255,255,255,.16); color: #fff; }

.dora-link {
    display: inline-flex; align-items: center; gap: 6px;
    color: var(--dora); font-weight: 600; font-size: 14px;
}
.dora-link i { transition: transform .2s ease; }
.dora-link:hover { color: var(--dora-koyu); }
.dora-link:hover i { transform: translateX(4px); }

.dora-bolum { padding: 90px 0; }
.dora-bolum__ust,
.dora-katbaslik {
    display: flex; align-items: flex-end; justify-content: space-between;
    gap: 24px; margin-bottom: 40px; flex-wrap: wrap;
}
.dora-bolum__baslik {
    font-size: var(--section-heading-font-size); font-weight: 700;
    line-height: 1.2; margin: 0 0 12px;
}
.dora-bolum__aciklama { font-size: 16px; color: var(--dora-metin); max-width: 640px; margin: 0; }
.dora-alt-baslik { font-size: 24px; font-weight: 700; margin: 0 0 20px; }

.dora-metin { font-size: 16px; line-height: 1.85; color: var(--dora-metin); }
.dora-metin h2 { font-size: 26px; margin: 34px 0 14px; }
.dora-metin h3 { font-size: 20px; margin: 28px 0 12px; }
.dora-metin p { margin-bottom: 18px; }
.dora-metin ul, .dora-metin ol { margin: 0 0 18px 20px; }
.dora-metin li { margin-bottom: 8px; }
.dora-metin strong { color: var(--dora-siyah); }

.dora-liste li {
    position: relative; padding-left: 30px; margin-bottom: 12px;
    font-size: 15px; color: var(--dora-metin);
}
.dora-liste li i { position: absolute; left: 0; top: 2px; color: var(--dora); font-size: 20px; }
.dora-liste--iki { columns: 2; column-gap: 34px; margin-top: 28px; }
@media (max-width: 767px) { .dora-liste--iki { columns: 1; } }

.dora-bos { padding: 40px 0; color: var(--dora-metin); }

/* --------------------------------------------------------------- üst şerit */

.dora-topbar {
    background: var(--dora-siyah); color: rgba(255,255,255,.78);
    font-size: 13px; padding: 9px 0;
}
.dora-topbar__list li { display: inline-flex; align-items: center; gap: 7px; margin-right: 22px; white-space: nowrap; }
.dora-topbar__list i { color: var(--dora); font-size: 17px; }
.dora-topbar__right { gap: 18px; white-space: nowrap; }
.dora-topbar__tel { display: inline-flex; align-items: center; gap: 7px; color: #fff; }
.dora-topbar__tel:hover { color: var(--dora); }
.dora-topbar__tel i { color: var(--dora); font-size: 17px; }

.dora-lang { display: inline-flex; gap: 4px; }
.dora-lang__item {
    padding: 3px 9px; border-radius: 4px; font-size: 12px; font-weight: 600;
    color: rgba(255,255,255,.7); border: 1px solid rgba(255,255,255,.22);
}
.dora-lang__item:hover { color: #fff; border-color: var(--dora); }
.dora-lang__item.aktif { background: var(--dora); border-color: var(--dora); color: #fff; }

/* ------------------------------------------------------------------ header */

.dora-header { background: #fff; box-shadow: 0 1px 0 var(--dora-cizgi); }
.dora-header .header-top { padding: 14px 0; }
.dora-header .header-logo img { max-height: 62px; width: auto; }

.dora-nav .main-menu { display: flex; align-items: center; justify-content: center; gap: 4px; margin: 0; }
.dora-nav .menu-list-item { position: relative; }
.dora-nav .mega-menu-header { display: flex; align-items: center; gap: 3px; }
.dora-nav .nav-link {
    display: block; padding: 12px 14px; font-size: 15px; font-weight: 500;
    color: var(--dora-siyah); white-space: nowrap;
}
.dora-nav .menu-list-item:hover > .mega-menu-header > .nav-link,
.dora-nav .menu-list-item.active > .mega-menu-header > .nav-link,
.dora-nav .menu-list-item.active > .nav-link { color: var(--dora); }
.dora-nav .open-submenu { display: inline-flex; color: #9aa7b0; }

.dora-nav .submenu-transform {
    position: absolute; top: 100%; left: 0; min-width: 250px; z-index: 60;
    background: #fff; border: 1px solid var(--dora-cizgi); border-radius: 8px;
    box-shadow: 0 18px 44px rgba(14,27,36,.12);
    padding: 8px 0; opacity: 0; visibility: hidden; transform: translateY(10px);
    transition: opacity .18s ease, transform .18s ease, visibility .18s;
}
.dora-nav .menu-list-item:hover > .submenu-transform { opacity: 1; visibility: visible; transform: translateY(0); }
.dora-nav .nav-link-sub { display: block; padding: 10px 20px; font-size: 14.5px; color: var(--dora-metin); }
.dora-nav .nav-link-sub:hover { background: var(--dora-acik); color: var(--dora-koyu); }

.dora-header__tel {
    width: 42px; height: 42px; border-radius: 50%; background: var(--dora-acik);
    display: inline-flex; align-items: center; justify-content: center; color: var(--dora-koyu);
}
.header-hamburger { color: var(--dora-siyah); }

/* ------------------------------------------------------------- mobil menü */

.dora-drawer {
    position: fixed; top: 0; right: -320px; width: 320px; max-width: 86vw; height: 100%;
    background: #fff; z-index: 1200; transition: right .28s ease; overflow-y: auto;
    box-shadow: -10px 0 40px rgba(14,27,36,.16);
}
.dora-drawer.acik { right: 0; }
.drawer-overlay {
    position: fixed; inset: 0; background: rgba(14,27,36,.5); z-index: 1100;
    opacity: 0; visibility: hidden; transition: opacity .28s ease, visibility .28s;
}
.drawer-overlay.acik { opacity: 1; visibility: visible; }
.dora-drawer .drawer-menu-header {
    padding: 18px 20px; border-bottom: 1px solid var(--dora-cizgi);
}
.dora-drawer .drawer-logo img { max-height: 46px; width: auto; }
.dora-drawer .drawer-close { border: 0; background: transparent; color: var(--dora-siyah); }
.dora-drawer__menu { margin: 0; padding: 10px 0; }
.dora-drawer__menu > li > a {
    display: block; padding: 13px 20px; font-weight: 600; font-size: 15.5px; color: var(--dora-siyah);
}
.dora-drawer__sub { margin: 0 0 8px; padding: 0 0 0 20px; }
.dora-drawer__sub a { display: block; padding: 8px 20px; font-size: 14px; color: var(--dora-metin); }
.dora-drawer__contact { padding: 20px; border-top: 1px solid var(--dora-cizgi); }
.dora-drawer__contact a { display: flex; align-items: center; gap: 9px; padding: 7px 0; font-size: 14.5px; }
.dora-drawer__contact i { color: var(--dora); font-size: 19px; }
.dora-drawer__contact .dora-lang__item { color: var(--dora-metin); border-color: var(--dora-cizgi); }
.dora-drawer__contact .dora-lang__item.aktif { color: #fff; }

/* -------------------------------------------------------------------- hero */

.dora-hero {
    background: linear-gradient(135deg, #f2fafc 0%, #e2f2f6 48%, #d3ecf2 100%);
    padding: 70px 0 60px; overflow: hidden;
}
.dora-hero__slayt { padding: 6px 0 20px; }
/* slick başlamadan önce yalnızca ilk slayt görünsün — yerleşim kaymasını önler */
.dora-hero__slider:not(.slick-initialized) .dora-hero__slayt { display: none; }
.dora-hero__slider:not(.slick-initialized) .dora-hero__slayt:first-child { display: block; }
.dora-hero__metin { padding-right: 20px; }
.dora-hero__baslik { font-size: 52px; line-height: 1.13; font-weight: 700; margin: 0 0 18px; }
.dora-hero__aciklama { font-size: 17px; line-height: 1.75; color: var(--dora-metin); margin: 0 0 28px; max-width: 540px; }
.dora-hero__butonlar { display: flex; flex-wrap: wrap; gap: 12px; }
.dora-hero__serit { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 30px 0 0; }
.dora-hero__serit li { display: inline-flex; align-items: center; gap: 7px; font-size: 14px; color: var(--dora-metin); }
.dora-hero__serit i { color: var(--dora); font-size: 18px; }

.dora-hero__gorsel { position: relative; text-align: center; }
.dora-hero__gorsel img {
    height: 430px; max-height: 46vh; width: auto; object-fit: contain;
    filter: drop-shadow(0 26px 44px rgba(14,27,36,.22));
}
.dora-hero__rozet {
    position: absolute; right: 6%; bottom: 8%;
    background: var(--dora-siyah); color: #fff; font-size: 13px; font-weight: 600;
    padding: 12px 20px; border-radius: 40px; box-shadow: 0 14px 30px rgba(14,27,36,.24);
}
.dora-hero__noktalar { display: flex; justify-content: center; gap: 8px; margin-top: 6px; }
.dora-hero__noktalar .slick-dots { display: flex !important; gap: 8px; margin: 0; padding: 0; list-style: none; }
.dora-hero__noktalar .slick-dots li button {
    width: 10px; height: 10px; padding: 0; border: 0; border-radius: 50%;
    background: rgba(14,27,36,.22); font-size: 0; cursor: pointer;
}
.dora-hero__noktalar .slick-dots li.slick-active button { background: var(--dora); width: 28px; border-radius: 6px; }

/* -------------------------------------------------------------- özellikler */

.dora-ozellik { padding: 70px 0 20px; }
.dora-ozellik__kart {
    height: 100%; padding: 32px 26px; border: 1px solid var(--dora-cizgi); border-radius: 12px;
    background: #fff; transition: box-shadow .25s ease, transform .25s ease, border-color .25s ease;
}
.dora-ozellik__kart:hover { box-shadow: 0 18px 40px rgba(14,27,36,.09); transform: translateY(-4px); border-color: #d3e6ec; }
.dora-ozellik__ikon {
    display: inline-flex; align-items: center; justify-content: center;
    width: 58px; height: 58px; border-radius: 14px;
    background: var(--dora-acik); color: var(--dora-koyu); font-size: 30px; margin-bottom: 20px;
}
.dora-ozellik__baslik { font-size: 18px; font-weight: 600; margin: 0 0 10px; }
.dora-ozellik__metin { font-size: 14.5px; line-height: 1.72; color: var(--dora-metin); margin: 0; }

/* ------------------------------------------------------------- ürün kartı */

.dora-urun {
    height: 100%; background: #fff; border: 1px solid var(--dora-cizgi); border-radius: 12px;
    overflow: hidden; transition: box-shadow .25s ease, transform .25s ease, border-color .25s ease;
    display: flex; flex-direction: column;
}
.dora-urun:hover { box-shadow: 0 20px 44px rgba(14,27,36,.11); transform: translateY(-4px); border-color: #d3e6ec; }
.dora-urun__gorsel {
    position: relative; display: block; background: #fff; aspect-ratio: 1 / 1; overflow: hidden;
}
.dora-urun__gorsel img {
    position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain;
    padding: 14px; transition: opacity .35s ease, transform .5s ease;
}
.dora-urun__ikinci { opacity: 0; }
.dora-urun:hover .dora-urun__ikinci { opacity: 1; }
/* Ana görsel yalnızca yerine geçecek ikinci görsel varsa gizlenir */
.dora-urun:hover .dora-urun__gorsel--cift .dora-urun__ana { opacity: 0; }
.dora-urun:hover .dora-urun__gorsel img { transform: scale(1.04); }
.dora-urun__govde { padding: 18px 18px 20px; border-top: 1px solid var(--dora-cizgi); }
.dora-urun__kod { display: block; font-size: 12px; font-weight: 600; letter-spacing: .06em; color: var(--dora-koyu); margin-bottom: 6px; }
.dora-urun__ad { font-size: 16px; font-weight: 600; line-height: 1.45; margin: 0 0 12px; }
.dora-urun__ad a:hover { color: var(--dora); }

/* -------------------------------------------------------------- kategoriler */

.dora-kategori__kart {
    display: flex; align-items: center; gap: 26px; height: 100%;
    background: var(--dora-gri); border-radius: 14px; padding: 26px;
    transition: box-shadow .25s ease, transform .25s ease;
}
.dora-kategori__kart:hover { box-shadow: 0 20px 44px rgba(14,27,36,.1); transform: translateY(-4px); }
.dora-kategori__gorsel {
    flex: 0 0 172px; width: 172px; height: 172px; background: #fff; border-radius: 12px;
    display: flex; align-items: center; justify-content: center; padding: 10px;
}
.dora-kategori__gorsel img { max-height: 100%; width: auto; object-fit: contain; }
.dora-kategori__metin h3 { font-size: 22px; font-weight: 700; margin: 0 0 10px; }
.dora-kategori__metin p { font-size: 14.5px; line-height: 1.7; color: var(--dora-metin); margin: 0 0 14px; }
@media (max-width: 575px) {
    .dora-kategori__kart { flex-direction: column; align-items: flex-start; }
    .dora-kategori__gorsel { flex: none; width: 100%; height: 200px; }
}

/* ----------------------------------------------------- hakkımızda / kalite */

.dora-hakkinda { background: var(--dora-gri); }
.dora-hakkinda__gorsel img,
.dora-kalite__gorsel img { border-radius: 14px; width: 100%; object-fit: cover; }
.dora-hakkinda__gorsel img { box-shadow: 0 26px 56px rgba(14,27,36,.14); }

.dora-sayac { display: flex; flex-wrap: wrap; gap: 34px; margin-top: 30px; }
.dora-sayac--kutu {
    background: var(--dora-gri); border-radius: 12px; padding: 26px 30px; margin-top: 36px;
    justify-content: space-between;
}
.dora-sayac__oge strong { display: block; font-size: 38px; font-weight: 700; color: var(--dora); line-height: 1.05; }
.dora-sayac__oge span { font-size: 14px; color: var(--dora-metin); }

.dora-adim { margin-top: 30px; }
.dora-adim__oge { display: flex; gap: 20px; padding: 18px 0; border-top: 1px solid var(--dora-cizgi); }
.dora-adim__oge:first-child { border-top: 0; padding-top: 0; }
.dora-adim__no { font-size: 15px; font-weight: 700; color: var(--dora); flex: 0 0 34px; }
.dora-adim__oge h3 { font-size: 17px; font-weight: 600; margin: 0 0 6px; }
.dora-adim__oge p { font-size: 14.5px; line-height: 1.72; color: var(--dora-metin); margin: 0; }

/* ----------------------------------------------------------------- katalog */

.dora-katalog { padding: 0 0 90px; }
.dora-katalog--serit { padding: 0 0 90px; }
.dora-katalog__kutu {
    background: linear-gradient(120deg, var(--dora-siyah) 0%, #14313f 55%, var(--dora-koyu) 100%);
    border-radius: 18px; padding: 44px; margin: 0;
}
.dora-katalog__kapak img {
    border-radius: 8px; box-shadow: 0 24px 50px rgba(0,0,0,.34); width: 100%;
    transform: rotate(-3deg);
}
.dora-katalog__baslik { color: #fff; font-size: 32px; font-weight: 700; margin: 0 0 14px; }
.dora-katalog__metin { color: rgba(255,255,255,.8); font-size: 16px; line-height: 1.75; margin: 0 0 24px; max-width: 620px; }
.dora-katalog__butonlar { display: flex; flex-wrap: wrap; gap: 12px; }
.dora-katalog__bilgi { display: block; margin-top: 16px; font-size: 13px; color: rgba(255,255,255,.6); }
@media (max-width: 767px) { .dora-katalog__kutu { padding: 30px 22px; } .dora-katalog__baslik { font-size: 25px; } }

/* --------------------------------------------------------------------- CTA */

.dora-cta { padding: 0 0 90px; }
.dora-cta__kutu {
    display: flex; align-items: center; justify-content: space-between; gap: 30px; flex-wrap: wrap;
    background: var(--dora-acik); border: 1px solid #cfe9f0; border-radius: 16px; padding: 40px 44px;
}
.dora-cta__kutu h2 { font-size: 27px; font-weight: 700; margin: 0 0 8px; }
.dora-cta__kutu p { font-size: 15.5px; color: var(--dora-metin); margin: 0; max-width: 660px; }
.dora-cta__butonlar { display: flex; gap: 12px; flex-wrap: wrap; }

/* ------------------------------------------------------------ sayfa başlığı */

.dora-sayfa-basi {
    background: linear-gradient(120deg, var(--dora-siyah) 0%, #163847 60%, var(--dora-koyu) 100%);
    padding: 62px 0 58px; color: #fff;
}
.dora-sayfa-basi__baslik { color: #fff; font-size: 42px; font-weight: 700; margin: 0 0 12px; }
.dora-sayfa-basi__aciklama { color: rgba(255,255,255,.8); font-size: 16.5px; line-height: 1.75; max-width: 780px; margin: 0; }

.dora-yol { background: var(--dora-gri); padding: 14px 0; font-size: 13.5px; }
.dora-yol li { color: var(--dora-metin); }
.dora-yol a { color: var(--dora-koyu); }
.dora-yol a:hover { color: var(--dora); }
.dora-yol__ayrac { margin: 0 9px; color: #b6c4cc; display: inline-flex; }

/* ------------------------------------------------------------- ürün detayı */

.dora-urun-detay { padding: 60px 0 90px; }
.dora-urun-detay__gorsel {
    background: #fff; border: 1px solid var(--dora-cizgi); border-radius: 14px;
    aspect-ratio: 1 / 1; display: flex; align-items: center; justify-content: center; padding: 26px;
}
.dora-urun-detay__gorsel img { max-height: 100%; width: auto; object-fit: contain; }
.dora-urun-detay__kucukler { display: flex; gap: 12px; margin-top: 14px; }
.dora-urun-detay__kucuk {
    width: 88px; height: 88px; padding: 6px; background: #fff; cursor: pointer;
    border: 1px solid var(--dora-cizgi); border-radius: 10px;
}
.dora-urun-detay__kucuk.aktif { border-color: var(--dora); }
.dora-urun-detay__kucuk img { width: 100%; height: 100%; object-fit: contain; }

.dora-urun-detay__kod {
    display: inline-block; font-size: 13px; font-weight: 600; color: var(--dora-koyu);
    background: var(--dora-acik); padding: 6px 14px; border-radius: 40px; margin-bottom: 14px;
}
.dora-urun-detay__ad { font-size: 34px; font-weight: 700; line-height: 1.22; margin: 0 0 16px; }
.dora-urun-detay__ozet { font-size: 16px; line-height: 1.78; color: var(--dora-metin); margin: 0 0 26px; }
.dora-urun-detay__butonlar { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.dora-urun-detay__alt { margin-top: 70px; }

.dora-garanti { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 22px; }
.dora-garanti__oge {
    border: 1px solid var(--dora-cizgi); border-left: 3px solid var(--dora);
    border-radius: 8px; padding: 12px 18px; background: #fff;
}
.dora-garanti__oge strong { display: block; font-size: 17px; font-weight: 700; color: var(--dora-siyah); }
.dora-garanti__oge span { font-size: 12.5px; color: var(--dora-metin); }

.dora-etiket-serit { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 0; }
.dora-etiket-serit li { display: inline-flex; align-items: center; gap: 7px; font-size: 14px; color: var(--dora-metin); }
.dora-etiket-serit i { color: var(--dora); font-size: 18px; }

.dora-tablo-sar { overflow-x: auto; }
.dora-tablo { width: 100%; border-collapse: collapse; font-size: 14px; background: #fff; }
.dora-tablo th {
    background: var(--dora-siyah); color: #fff; font-weight: 600; font-size: 11.5px;
    padding: 10px 9px; text-align: left; line-height: 1.3;
}
.dora-tablo td { padding: 11px 9px; border-bottom: 1px solid var(--dora-cizgi); color: var(--dora-metin); font-size: 13px; }
.dora-tablo th:first-child, .dora-tablo td:first-child { padding-left: 14px; }
.dora-tablo tbody tr:hover td { background: var(--dora-gri); }

.dora-benzer { margin-top: 80px; padding-top: 50px; border-top: 1px solid var(--dora-cizgi); }
.dora-diger-kategori { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 50px; }

/* ---------------------------------------------------------------- kurumsal */

.dora-kurumsal-kart {
    display: block; height: 100%; background: #fff; border: 1px solid var(--dora-cizgi);
    border-radius: 14px; overflow: hidden; transition: box-shadow .25s ease, transform .25s ease;
}
.dora-kurumsal-kart:hover { box-shadow: 0 20px 44px rgba(14,27,36,.11); transform: translateY(-4px); }
.dora-kurumsal-kart__gorsel { aspect-ratio: 16 / 10; overflow: hidden; background: var(--dora-gri); }
.dora-kurumsal-kart__gorsel img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.dora-kurumsal-kart:hover .dora-kurumsal-kart__gorsel img { transform: scale(1.05); }
.dora-kurumsal-kart__metin { padding: 26px; }
.dora-kurumsal-kart__metin h2 { font-size: 21px; font-weight: 700; margin: 0 0 10px; }
.dora-kurumsal-kart__metin p { font-size: 14.5px; line-height: 1.72; color: var(--dora-metin); margin: 0 0 14px; }

.dora-kurumsal-gorsel { margin-bottom: 34px; }
.dora-kurumsal-gorsel img { width: 100%; border-radius: 14px; object-fit: cover; }

.dora-yan {
    background: var(--dora-gri); border-radius: 14px; padding: 26px; margin-bottom: 24px;
}
.dora-yan__baslik { font-size: 18px; font-weight: 700; margin: 0 0 16px; }
.dora-yan__liste li { border-top: 1px solid var(--dora-cizgi); }
.dora-yan__liste li:first-child { border-top: 0; }
.dora-yan__liste a { display: block; padding: 12px 0; font-size: 15px; color: var(--dora-metin); }
.dora-yan__liste a:hover { color: var(--dora); }
.dora-yan__liste li.aktif a { color: var(--dora); font-weight: 600; }
.dora-yan--cta { background: var(--dora-acik); }
.dora-yan--cta p { font-size: 14.5px; color: var(--dora-metin); margin-bottom: 16px; }
.dora-yan__tel { display: flex; align-items: center; gap: 8px; margin-top: 16px; font-weight: 600; color: var(--dora-siyah); }
.dora-yan__tel i { color: var(--dora); font-size: 20px; }

/* ------------------------------------------------------------------ belge */

.dora-belge {
    display: flex; gap: 26px; height: 100%; background: #fff;
    border: 1px solid var(--dora-cizgi); border-radius: 14px; padding: 24px;
}
.dora-belge__kapak { flex: 0 0 168px; }
.dora-belge__kapak img { width: 100%; border-radius: 8px; box-shadow: 0 14px 30px rgba(14,27,36,.14); }
.dora-belge__metin h2 { font-size: 20px; font-weight: 700; margin: 0 0 10px; }
.dora-belge__metin p { font-size: 14.5px; line-height: 1.7; color: var(--dora-metin); margin: 0 0 12px; }
.dora-belge__bilgi { display: inline-flex; align-items: center; gap: 7px; font-size: 13px; color: var(--dora-koyu); margin-bottom: 16px; }
.dora-belge__butonlar { display: flex; flex-wrap: wrap; gap: 10px; }
@media (max-width: 575px) { .dora-belge { flex-direction: column; } .dora-belge__kapak { flex: none; max-width: 190px; } }

/* ------------------------------------------------------------------ video */

.dora-video {
    height: 100%; background: #fff; border: 1px solid var(--dora-cizgi); border-radius: 14px;
    overflow: hidden; display: flex; flex-direction: column;
    transition: box-shadow .25s ease, transform .25s ease;
}
.dora-video:hover { box-shadow: 0 20px 44px rgba(14,27,36,.12); transform: translateY(-4px); }
.dora-video__kapak {
    position: relative; display: block; width: 100%; padding: 0; border: 0;
    aspect-ratio: 4 / 3; background: #0e1b24; cursor: pointer; overflow: hidden;
}
.dora-video__kapak img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease, opacity .3s ease; }
.dora-video__kapak:hover img { transform: scale(1.05); opacity: .82; }
.dora-video__play {
    position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
    width: 72px; height: 72px; border-radius: 50%;
    background: rgba(255,255,255,.94); color: var(--dora-koyu);
    display: flex; align-items: center; justify-content: center;
    font-size: 34px; padding-left: 5px;
    box-shadow: 0 10px 30px rgba(0,0,0,.3);
    transition: transform .25s ease, background .25s ease, color .25s ease;
}
.dora-video__kapak:hover .dora-video__play { background: var(--dora); color: #fff; transform: translate(-50%, -50%) scale(1.08); }
.dora-video__metin { padding: 20px 22px 24px; }
.dora-video__metin h2 { font-size: 18px; font-weight: 600; margin: 0 0 8px; }
.dora-video__metin p { font-size: 14px; line-height: 1.7; color: var(--dora-metin); margin: 0; }

.dora-video-modal .modal-dialog { max-width: 880px; }
.dora-video-modal .modal-content { border: 0; border-radius: 14px; overflow: hidden; background: #0e1b24; }
.dora-video-modal .modal-header {
    border: 0; padding: 16px 20px; align-items: center;
    background: #0e1b24; color: #fff;
}
.dora-video-modal .modal-title { color: #fff; font-size: 17px; font-weight: 600; margin: 0; }
.dora-video-modal__kapat {
    border: 0; background: rgba(255,255,255,.12); color: #fff;
    width: 36px; height: 36px; border-radius: 50%; font-size: 20px; line-height: 1;
}
.dora-video-modal__kapat:hover { background: var(--dora); }
.dora-video-modal .modal-body { padding: 0 20px 20px; }
.dora-video-modal video {
    display: block; width: 100%; max-height: 74vh; background: #000;
    border-radius: 10px; object-fit: contain;
}
.dora-video-modal__cerceve { position: relative; aspect-ratio: 16 / 9; border-radius: 10px; overflow: hidden; }
.dora-video-modal__cerceve iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* --------------------------------------------------------------- iletişim */

.dora-iletisim-bilgi__oge { display: flex; gap: 16px; padding: 20px 0; border-bottom: 1px solid var(--dora-cizgi); }
.dora-iletisim-bilgi__oge:last-child { border-bottom: 0; }
.dora-iletisim-bilgi__ikon {
    flex: 0 0 48px; width: 48px; height: 48px; border-radius: 12px;
    background: var(--dora-acik); color: var(--dora-koyu);
    display: inline-flex; align-items: center; justify-content: center; font-size: 24px;
}
.dora-iletisim-bilgi__oge h3 { font-size: 15px; font-weight: 600; margin: 0 0 5px; }
.dora-iletisim-bilgi__oge a { font-size: 15px; color: var(--dora-metin); }
.dora-iletisim-bilgi__oge a:hover { color: var(--dora); }

.dora-form { background: var(--dora-gri); border-radius: 14px; padding: 32px; }
.dora-form label { display: block; font-size: 13.5px; font-weight: 600; color: var(--dora-siyah); margin-bottom: 7px; }
.dora-form input, .dora-form textarea {
    width: 100%; padding: 12px 15px; font-size: 15px; font-family: inherit;
    border: 1px solid var(--dora-cizgi); border-radius: 8px; background: #fff; color: var(--dora-siyah);
}
.dora-form input:focus, .dora-form textarea:focus {
    outline: none; border-color: var(--dora); box-shadow: 0 0 0 3px rgba(49,176,201,.16);
}
.dora-form__not { margin-top: 20px; font-size: 13px; color: var(--dora-metin); }
.dora-tuzak { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; }

.dora-uyari { padding: 14px 18px; border-radius: 8px; margin-bottom: 20px; font-size: 14.5px; }
.dora-uyari--basari { background: #e5f7ec; color: #14683b; border: 1px solid #b9e6cc; }
.dora-uyari--hata { background: #fdeceb; color: #97231c; border: 1px solid #f5c6c3; }

.dora-iletisim-bilgi__butonlar { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }

.dora-konum { background: var(--dora-gri); border-radius: 14px; padding: 18px; }
.dora-konum__baslik {
    display: flex; align-items: center; justify-content: space-between;
    gap: 16px; flex-wrap: wrap; margin-bottom: 14px; padding: 0 4px;
}
.dora-konum__cerceve { line-height: 0; border-radius: 10px; overflow: hidden; background: #dfe7ec; }
.dora-konum__cerceve iframe { width: 100%; height: 560px; border: 0; display: block; }
@media (max-width: 991px) { .dora-konum__cerceve iframe { height: 320px; } }

.dora-harita { line-height: 0; }
.dora-harita iframe { width: 100%; height: 430px; border: 0; display: block; }

/* ------------------------------------------------------------------ footer */

.dora-footer { background: var(--dora-siyah); color: rgba(255,255,255,.68); }
.dora-footer__ust { padding: 68px 0 46px; }
.dora-footer__logo { display: inline-block; margin-bottom: 20px; }
.dora-footer__logo img { max-height: 62px; width: auto; }
.dora-footer__metin { font-size: 14.5px; line-height: 1.8; margin: 0 0 20px; }
.dora-footer__baslik { color: #fff; font-size: 16px; font-weight: 600; margin: 0 0 20px; }
.dora-footer__liste li { margin-bottom: 11px; }
.dora-footer__liste a { font-size: 14.5px; color: rgba(255,255,255,.68); }
.dora-footer__liste a:hover { color: var(--dora); }
.dora-footer__iletisim li { display: flex; gap: 11px; margin-bottom: 14px; font-size: 14.5px; line-height: 1.65; }
.dora-footer__iletisim i { color: var(--dora); font-size: 19px; flex: 0 0 20px; }
.dora-footer__iletisim a { color: rgba(255,255,255,.68); }
.dora-footer__iletisim a:hover { color: var(--dora); }
.dora-footer__sosyal { display: flex; gap: 10px; }
.dora-footer__sosyal a {
    width: 40px; height: 40px; border-radius: 50%; background: rgba(255,255,255,.08);
    display: inline-flex; align-items: center; justify-content: center; color: #fff; font-size: 20px;
}
.dora-footer__sosyal a:hover { background: var(--dora); }
.dora-footer__alt {
    border-top: 1px solid rgba(255,255,255,.1); padding: 20px 0; font-size: 13.5px;
}
.dora-footer__alt a { color: var(--dora); }
.dora-footer__mkz { display: inline-flex; align-items: center; gap: 10px; }
.dora-footer__mkz img { height: 40px; width: auto; opacity: 1; transition: transform .2s ease; }
.dora-footer__mkz a:hover img { transform: translateY(-1px); }
.dora-footer__mkz span { opacity: .75; }
@media (max-width: 767px) {
    .dora-footer__alt .container { justify-content: center; gap: 12px; text-align: center; }
    .dora-footer__mkz img { height: 34px; }
}

.dora-yuzen {
    position: fixed; right: 22px; bottom: 84px; z-index: 950;
    display: flex; flex-direction: column; gap: 12px; align-items: flex-end;
}
.dora-yuzen__oge {
    display: inline-flex; align-items: center; gap: 0;
    height: 54px; border-radius: 27px; padding: 0 15px;
    color: #fff; font-weight: 600; font-size: 15px; white-space: nowrap;
    box-shadow: 0 10px 28px rgba(14,27,36,.28);
    transition: gap .25s ease, padding .25s ease, transform .2s ease;
}
.dora-yuzen__oge i { font-size: 28px; line-height: 1; }
.dora-yuzen__oge span {
    max-width: 0; overflow: hidden; opacity: 0;
    transition: max-width .3s ease, opacity .25s ease;
}
.dora-yuzen__oge:hover { color: #fff; transform: translateY(-2px); gap: 10px; padding-right: 22px; }
.dora-yuzen__oge:hover span { max-width: 190px; opacity: 1; }
.dora-yuzen__oge--wa { background: #25d366; }
.dora-yuzen__oge--wa:hover { background: #1eb857; }
.dora-yuzen__oge--tel { background: var(--dora); }
.dora-yuzen__oge--tel:hover { background: var(--dora-koyu); }
@media (max-width: 575px) {
    .dora-yuzen { right: 14px; bottom: 74px; gap: 10px; }
    .dora-yuzen__oge { height: 48px; padding: 0 12px; }
    .dora-yuzen__oge i { font-size: 25px; }
    .dora-yuzen__oge:hover span { max-width: 0; opacity: 0; }
    .dora-yuzen__oge:hover { padding: 0 12px; }
}

.dora-yukari {
    position: fixed; right: 22px; bottom: 22px; z-index: 900;
    width: 46px; height: 46px; border-radius: 50%; background: var(--dora); color: #fff;
    display: flex; align-items: center; justify-content: center; font-size: 22px; cursor: pointer;
    opacity: 0; visibility: hidden; transition: opacity .25s ease, visibility .25s, transform .25s ease;
    box-shadow: 0 10px 26px rgba(49,176,201,.4);
}
.dora-yukari.gorunur { opacity: 1; visibility: visible; }
.dora-yukari:hover { transform: translateY(-3px); }

/* ------------------------------------------------------------------- 404 */

.dora-hata { padding: 100px 0; text-align: center; }
.dora-hata__kod { font-size: 96px; font-weight: 700; color: var(--dora); line-height: 1; margin: 0 0 14px; }
.dora-hata__baslik { font-size: 28px; font-weight: 700; margin: 0 0 12px; }
.dora-hata__metin { font-size: 16px; color: var(--dora-metin); margin: 0 0 28px; }


/* --------------------------------------------------- görünürlük animasyonu
   Tema AOS'u opacity:0 ile başlatıyor; JS çalışmazsa içerik hiç görünmüyordu.
   Varsayılan görünür, animasyon yalnızca JS varken devreye giriyor. */
[data-dora-gir] { opacity: 1; transform: none; }
html.dora-js [data-dora-gir] {
    opacity: 0; transform: translateY(18px);
    transition: opacity .55s ease, transform .55s ease;
}
html.dora-js [data-dora-gir].dora-gorundu { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
    html.dora-js [data-dora-gir] { opacity: 1; transform: none; transition: none; }
}

/* --------------------------------------------------- mobil alt gezinti */

.dora-mobil-bar { display: none; }

@media (max-width: 991px) {
    .dora-mobil-bar {
        position: fixed; left: 0; right: 0; bottom: 0; z-index: 1000;
        display: grid; grid-template-columns: repeat(5, 1fr); align-items: end;
        background: rgba(255, 255, 255, .97);
        -webkit-backdrop-filter: saturate(180%) blur(14px);
        backdrop-filter: saturate(180%) blur(14px);
        border-top: 1px solid var(--dora-cizgi);
        box-shadow: 0 -10px 34px rgba(14, 27, 36, .13);
        padding: 8px 4px calc(8px + env(safe-area-inset-bottom, 0px));
    }

    .dora-mobil-bar__oge {
        position: relative;
        display: flex; flex-direction: column; align-items: center; justify-content: flex-end;
        gap: 4px; padding: 2px 2px 0; min-height: 50px;
        color: #7b8b96; text-align: center; text-decoration: none;
        -webkit-tap-highlight-color: transparent;
    }

    .dora-mobil-bar__ikon {
        display: flex; align-items: center; justify-content: center;
        width: 42px; height: 30px; border-radius: 15px;
        transition: background .22s ease, color .22s ease;
    }
    .dora-mobil-bar__ikon i { font-size: 23px; line-height: 1; }

    .dora-mobil-bar__ad {
        font-size: 10.5px; font-weight: 600; line-height: 1.15; letter-spacing: .01em;
        white-space: nowrap;
    }

    .dora-mobil-bar__oge.aktif { color: var(--dora-koyu); }
    .dora-mobil-bar__oge.aktif .dora-mobil-bar__ikon { background: var(--dora-acik); color: var(--dora-koyu); }
    .dora-mobil-bar__oge:active .dora-mobil-bar__ikon { background: #eef3f6; }
    .dora-mobil-bar__oge--tel .dora-mobil-bar__ikon i { color: var(--dora); }

    /* ortadaki yükseltilmiş WhatsApp düğmesi */
    .dora-mobil-bar__oge--fab { color: #1c8f47; }
    .dora-mobil-bar__fab {
        position: absolute; top: -30px; left: 50%; transform: translateX(-50%);
        display: flex; align-items: center; justify-content: center;
        width: 56px; height: 56px; border-radius: 50%;
        background: #25d366; color: #fff; font-size: 30px;
        border: 4px solid #fff;
        box-shadow: 0 10px 24px rgba(37, 211, 102, .42);
        transition: transform .2s ease;
    }
    .dora-mobil-bar__oge--fab:active .dora-mobil-bar__fab { transform: translateX(-50%) scale(.94); }
    .dora-mobil-bar__oge--fab .dora-mobil-bar__ad { margin-top: 30px; }

    /* alt çubuk içeriğin üstüne binmesin */
    body { padding-bottom: 78px; }
    /* aynı işi gören yüzen düğmeler mobilde gereksiz */
    .dora-yuzen { display: none; }
    .dora-yukari { bottom: 92px; }
}

@media (max-width: 360px) {
    .dora-mobil-bar__ad { font-size: 9.5px; }
    .dora-mobil-bar__ikon i { font-size: 21px; }
}

/* -------------------------------------------------------------- responsive */

@media (max-width: 1199px) {
    .dora-hero__baslik { font-size: 44px; }
    .dora-bolum__baslik { font-size: 34px; }
}
@media (max-width: 991px) {
    .dora-bolum { padding: 64px 0; }
    .dora-hero { padding: 46px 0 40px; }
    .dora-hero__metin { padding-right: 0; margin-bottom: 34px; }
    .dora-hero__baslik { font-size: 36px; }
    .dora-hero__gorsel img { height: auto; max-height: 320px; max-width: 100%; }
    .dora-sayfa-basi { padding: 46px 0 42px; }
    .dora-sayfa-basi__baslik { font-size: 32px; }
    .dora-urun-detay__ad { font-size: 27px; }
    .dora-katalog, .dora-cta, .dora-katalog--serit { padding-bottom: 64px; }
}
@media (max-width: 575px) {
    .dora-yukari { right: 14px; bottom: 14px; width: 42px; height: 42px; }
    .dora-hero__baslik { font-size: 29px; }
    .dora-hero__gorsel img { height: auto; max-height: 240px; max-width: 100%; }
    .dora-hero { padding: 32px 0 30px; }
    .dora-bolum__baslik { font-size: 27px; }
    .dora-cta__kutu { padding: 28px 22px; }
    .dora-form { padding: 22px; }
    .dora-sayac { gap: 22px; }
    .dora-sayac__oge strong { font-size: 30px; }
}
