@charset "UTF-8";
/* ==========================================================================
   CİHAN GERİ DÖNÜŞÜM
   Tek stil dosyasi. Bolumler:
   1  Degiskenler & sifirlama
   2  Tipografi
   3  Izgara (container / row / col)
   4  Ust menu
   5  Ust gorsel (hero)
   6  Bolum basligi
   7  Hizmet kartlari
   8  Tanitim bolumu
   9  Ic sayfa icerigi
   10 Footer
   11 Sabit butonlar (yukari cik, whatsapp, ara)
   12 Resim buyutme
   13 Erisilebilirlik
   ========================================================================== */

/* ==========================================================================
   1 Degiskenler & sifirlama
   ========================================================================== */
:root {
    --renk-ana: #395ca3;      /* vurgu rengi */
    --renk-koyu: #121212;     /* baslik rengi */
    --renk-metin: #6a6a6a;    /* govde metni */
    --renk-siyah: #1a1a1a;    /* kart & footer zemini */
    --renk-gri: #f5f6f9;
    --kapsayici: 15px;
    /* Ust menu sayfanin uzerinde duruyor (position:absolute), yer kaplamiyor.
       Icerigi dikeyde ortalarken bu yuksekligi hesaba katmak gerekiyor.
       Kesin deger main.js tarafindan olculup buraya yaziliyor. */
    --menu-yuksekligi: 102px;
}
@media (max-width: 600px) {
    :root { --menu-yuksekligi: 104px; }
}

*, *::before, *::after { box-sizing: border-box; }

html {
    font-size: 16px;
    overflow-x: hidden;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
    background: #fff;
    color: var(--renk-metin);
    font-family: "Open Sans", Helvetica, Arial, sans-serif;
    font-size: 1rem;
    line-height: 1.5;
    font-weight: 400;
    text-rendering: optimizeLegibility;
    overflow-x: hidden;
}

img {
    display: block;
    max-width: 100%;
    height: auto;
    border: 0;
}

/* Sayfa kisa olsa bile footer her zaman ekranin en altinda dursun */
#wrapper {
    background-color: #fff;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}
/* Flex ogeleri varsayilan olarak iceriginden dar olamaz; bu kural olmazsa
   genis bir satir tum sayfayi ekrandan tasiriyor. */
#wrapper > * { min-width: 0; }

/* ==========================================================================
   2 Tipografi
   ========================================================================== */
h1, h2, h3, h4, h5, h6 {
    margin: 0 0 25px;
    font-weight: 600;
    color: var(--renk-koyu);
    font-family: inherit;
}
h1 { font-size: 2.25rem; }
h2 { font-size: 1.875rem; }
h3 { font-size: 1.5rem; }
h4 { font-size: 1.25rem; }
h5 { font-size: 1.125rem; }
h6 { font-size: 1rem; }

p { line-height: 1.7; margin: 0 0 25px; }
p:last-child { margin: 0; }

a {
    color: var(--renk-ana);
    text-decoration: none;
    transition: all .3s ease 0s;
}
a:hover, a:focus { color: var(--renk-koyu); text-decoration: none; }

hr.divider {
    border: none;
    width: 70px;
    height: 2px;
    margin: 15px auto 21px;
    background-color: var(--renk-ana);
}

blockquote { margin: 0; padding: 0; border: 0; }
figure { margin: 0; }

/* WordPress'teki paragraf siniflarinin karsiliklari */
.metin { color: #000; font-size: 1.25rem; }
.metin-siyah { color: #000; }
.text-center { text-align: center; }
.aligncenter { text-align: center; }
.aligncenter img { margin-left: auto; margin-right: auto; }
.tel-kutu {
    background-color: #f4f6f8;
    color: #00d084;
    font-size: 21px;
    text-align: center;
    padding: 2px 0;
}

/* ==========================================================================
   3 Izgara
   ========================================================================== */
.container,
.container-fluid {
    width: 100%;
    padding-left: var(--kapsayici);
    padding-right: var(--kapsayici);
    margin-left: auto;
    margin-right: auto;
}
@media (min-width: 768px)  { .container { width: 750px; } }
@media (min-width: 992px)  { .container { width: 970px; } }
@media (min-width: 1200px) { .container { width: 1170px; } }

.padding-0 { padding-left: 0; padding-right: 0; }

.row { margin-left: -15px; margin-right: -15px; }
.row::before, .row::after,
.container::before, .container::after,
.navbar .container::before, .navbar .container::after { content: " "; display: table; }
.row::after, .container::after, .navbar .container::after { clear: both; }

.col-md-12 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    width: 100%;
}

.row.p-left-right-0 { margin-left: 0; margin-right: 0; }

/* Kenar boslugu olmayan kapsayicida satirin negatif marjini tasma yapiyordu */
.container-fluid.padding-0 > .row { margin-left: 0; margin-right: 0; }
.container-fluid.padding-0 > .row > .section-header { padding-left: 15px; padding-right: 15px; }

/* Hizmet kartlarinin kolonu: mobil 1, tablet 2, masaustu 5 sutun */
.col { float: left; width: 100%; }
@media (min-width: 768px) { .col { width: 50%; } }
@media (min-width: 992px) { .col { width: 20%; } }

/* ==========================================================================
   4 Ust menu
   ========================================================================== */
.navbar-custom {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    margin: 0;
    min-height: 100px;
    padding: 18px 0;
    border: 0;
    border-radius: 0;
    font-size: 1rem;
    background-color: rgba(0, 0, 0, .5);
}

/* kaydirinca sabitlenen hali - zemin ayni kalir, sadece sabitlenir */
.navbar-custom.stickymenu1 {
    display: none;
    position: fixed;
    top: 0;
    box-shadow: 0 1px 3px rgba(255, 255, 255, .1);
    z-index: 999;
    transition: .3s;
}

.navbar-brand {
    float: left;
    height: auto;
    padding: 26px 30px 26px 15px;
    margin: 0;
    line-height: 1.5;
}
@media (min-width: 768px) { .navbar-brand { padding: 8px 10px 8px 0; } }
.navbar-brand img { width: 153px; height: 48px; }

.navbar-nav { margin: 0; padding: 0; list-style: none; }
.navbar-nav > li { position: relative; }

@media (min-width: 1101px) {
    .navbar-collapse { float: right; display: block; }
    .navbar-nav { float: right; }
    .navbar-nav > li { float: left; margin: 0 10px; }
}

.navbar-nav > li > a,
.navbar-nav > li > a:focus {
    position: relative;
    display: block;
    color: #fff;
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.4;
    padding: 22px 15px;
    background: transparent;
    transition: all .35s ease;
}
.navbar-nav > li > a:hover,
.navbar-nav > li.active > a { color: var(--renk-ana); }

/* oklar */
.navbar-nav .fa-angle-down {
    display: inline-block;
    padding-left: 7px;
    font-size: .938rem;
    font-style: normal;
}
.navbar-nav .fa-angle-down::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg) translateY(-2px);
}

/* alt menu */
.dropdown-menu {
    display: none;
    margin: 0;
    padding: 0;
    list-style: none;
    min-width: 180px;
    background: var(--renk-siyah);
    border: 0;
    border-radius: 0;
    box-shadow: none;
}
.dropdown-menu > li { margin: 0; padding: 0 20px; }
.dropdown-menu > li > a {
    display: block;
    border-bottom: 1px solid rgba(73, 71, 71, .30);
    padding: 11px 0;
    color: #bbb;
    font-size: .875rem;
    line-height: 1.4;
    transition: all .35s ease;
}
.dropdown-menu > li:last-child > a { border-bottom: 0; }
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus,
.dropdown-menu > li.active > a { color: #fff; }

@media (min-width: 1101px) {
    .dropdown-menu {
        position: absolute;
        top: 100%;
        left: 0;
        z-index: 1000;
        float: left;
        text-align: left;
    }
    .dropdown:hover > .dropdown-menu,
    .dropdown.open > .dropdown-menu { display: block; }
    .dropdown-menu > li:last-child > a { border-bottom: 1px solid rgba(73, 71, 71, .30); }
}

/* hamburger */
.navbar-toggle {
    display: none;
    float: right;
    margin: 29px 15px 29px 0;
    padding: 9px 0;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 4px;
    cursor: pointer;
}
.navbar-toggle .icon-bar {
    display: block;
    background: #fff;
    width: 40px;
    height: 2px;
    border-radius: 1px;
}
.navbar-toggle .icon-bar + .icon-bar { margin-top: 8px; }

@media (max-width: 1100px) {
    .navbar-header { float: none; padding: 0 15px; }
    .navbar-toggle { display: block; margin: 12px 15px 12px 0; }
    .navbar-collapse {
        clear: both;
        padding: 0;
        max-height: 0;
        overflow: hidden;
        transition: max-height .35s ease;
    }
    .navbar-collapse.in { max-height: 80vh; overflow-y: auto; }
    .navbar-nav { background-color: var(--renk-siyah); float: none; margin: 0; }
    .navbar-nav > li { float: none; margin: 0 20px; }
    .navbar-nav > li > a { color: #bbb; padding: 12px 0; border-bottom: 1px solid rgba(73, 71, 71, .30); }
    .navbar-nav > li > a:hover,
    .navbar-nav > li.active > a { color: #fff; }
    .dropdown-menu { position: static; float: none; width: auto; }
    .dropdown.open > .dropdown-menu { display: block; }
    .dropdown-menu > li { padding: 0; }
    .dropdown-menu > li > a { padding: 12px 0 12px 15px; }
    .navbar-nav .fa-angle-down {
        position: absolute;
        right: 0;
        top: 10px;
        width: 30px;
        height: 30px;
        text-align: center;
        padding: 0;
    }
    .dropdown.open > a .fa-angle-down::before { transform: rotate(-135deg) translateY(-2px); }
}
@media (max-width: 600px) {
    /* Logo solda, menu dugmesi sagda - tek satir */
    .navbar-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    .navbar-brand { float: none; padding: 6px 0; }
    .navbar-brand img { margin: 0; }
    .navbar-toggle { float: none; margin: 0; }
    .navbar-toggle .icon-bar { width: 30px; }
}

/* ==========================================================================
   5 Ust gorsel (hero)
   ========================================================================== */
#slider-carousel { margin: 0; position: relative; overflow: hidden; }
#slider-carousel .item {
    width: 100%;
    height: 900px;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}
#slider-carousel .item::before {
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .6);
}

.slider-caption {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    height: auto;
    margin: 0;
    padding: 0 18px;
    width: 56%;
    word-wrap: break-word;
}
.slider-caption h5 {
    color: #fff;
    text-shadow: 0 0 1px rgba(155, 155, 155, .7);
    padding: 0;
    letter-spacing: 15px;
    font-weight: 700;
    margin: 0 0 17px;
    text-transform: uppercase;
    line-height: 1.6;
}
.slider-caption h1 {
    color: #fff;
    text-shadow: 0 0 1px rgba(155, 155, 155, .7);
    padding: 0;
    font-size: 3.438rem;
    line-height: 1.3;
    font-weight: 700;
    margin: 0 0 47px;
    position: relative;
}
.slider-caption h1::after {
    content: "";
    display: block;
    width: 40px;
    height: 4px;
    margin-top: 10px;
    position: absolute;
    background: var(--renk-ana);
}
.slider-caption p {
    color: #fff;
    text-shadow: 0 0 1px rgba(155, 155, 155, .7);
    font-size: 1.15rem;
    margin: 0 0 40px;
}
@media (max-width: 1024px) {
    .slider-caption h1 { word-wrap: normal; }
    .slider-caption h5 { letter-spacing: 1px; word-wrap: normal; }
}
/* 767px ve altindaki ayarlar "14 Mobil duzenlemeler" bolumunde */

/* ==========================================================================
   6 Bolum basligi
   ========================================================================== */
.section-header {
    margin: -10px auto 60px;
    padding: 0;
    position: relative;
    text-align: center;
}
.section-header .widget-title { margin: 0; font-weight: 400; line-height: 1.5; font-size: 2.25rem; }
.section-header p { margin: 0; font-size: 1.125rem; }

/* ==========================================================================
   7 Hizmet kartlari
   ========================================================================== */
.section-portfolio { padding: 100px 0 0; }

.portfolio .post {
    position: relative;
    overflow: hidden;
    width: 100%;
    text-align: left;
    background-color: var(--renk-siyah);
}
.portfolio .post img,
.portfolio .post figcaption,
.portfolio .post p,
.portfolio .post i { transition: all .20s linear; }

.portfolio .post img { width: 100%; max-width: 100%; }

.portfolio .post figcaption {
    position: absolute;
    bottom: 0;
    width: 100%;
    transform: translateY(100%);
    padding: 15px 20px;
    background-color: #fdfdfd;
    transition-delay: .2s;
}
.portfolio .post p {
    margin: 0;
    padding: 0;
    transition-delay: .3s;
}
.portfolio .post i {
    position: absolute;
    top: 0;
    right: 0;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background-color: var(--renk-ana);
    transform: translateX(50px);
}
.portfolio .post:hover img {
    opacity: .3;
    transform: translateY(-30px);
}
.portfolio .post:hover figcaption {
    transform: translateY(0);
    transition-delay: 0s;
}
.portfolio .post:hover i,
.portfolio .post a:focus i {
    transform: translateX(0);
    transition-delay: .3s;
}

/* ==========================================================================
   8 Tanitim bolumu
   ========================================================================== */
.testimonial {
    position: relative;
    margin: 0;
    width: 100%;
    overflow: hidden;
    padding: 100px 0 50px;
    background-color: var(--renk-gri);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.testmonial-block {
    position: relative;
    background-color: transparent;
    margin: 0;
    padding: 70px 40px 45px;
}
.testmonial-block::before {
    content: "\201D";
    font-family: "Times New Roman", serif;
    font-size: 9rem;
    line-height: .7;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0;
}
.testmonial-block .description { margin: 0; }
.testmonial-block .description .title { margin: 0 0 15px; }

/* ==========================================================================
   9 Ic sayfa icerigi
   ========================================================================== */
/* Kalan bos yeri doldurur, icerigi dikeyde ortalar; footer yine altta kalir */
.site-content {
    padding: calc(var(--menu-yuksekligi) + 50px) 0 50px;
    margin: 0;
    width: 100%;
    flex: 1 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.site-content .news { padding: 0; }
.site-content .news .post {
    background-color: transparent;
    box-shadow: 0 0 22px 0 rgba(0, 0, 0, .1);
    margin: 0;
}
.site-content .news .post-content {
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 30px 25px;
}
.sayfa-basligi {
    text-align: center;
    font-size: 1.875rem;
    margin: 0 0 5px;
}
.sayfa-basligi + .divider { margin: 0 auto 30px; }

/* Sayfa basindaki tanitim gorseli */
.sayfa-gorseli { margin: 0 0 30px; }
.sayfa-gorseli img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    border-radius: 3px;
}

/* "Hemen arayin" kutusu */
.ara-kutusu {
    margin: 35px 0 0;
    padding: 28px 25px;
    background-color: var(--renk-gri);
    border-left: 4px solid var(--renk-ana);
    border-radius: 3px;
    text-align: center;
}
.ara-kutusu-yazi { margin: 0 0 20px; color: #121212; }

.ara-butonlari {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}
.btn-ara,
.btn-wa {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 13px 28px;
    border-radius: 50px;
    font-weight: 600;
    font-size: 1rem;
    color: #fff;
    text-decoration: none;
    transition: transform .25s ease, background-color .25s ease, box-shadow .25s ease;
}
.btn-ara { background-color: var(--renk-ana); }
.btn-wa  { background-color: #25d366; }
.btn-ara:hover, .btn-ara:focus,
.btn-wa:hover,  .btn-wa:focus {
    color: #fff;
    text-decoration: none;
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(0, 0, 0, .18);
}
.btn-ara:hover { background-color: #2d4a85; }
.btn-wa:hover  { background-color: #1fb757; }

/* Diger hizmet sayfalarina baglantilar */
.ilgili-sayfalar {
    margin: 35px 0 0;
    padding: 28px 0 0;
    border-top: 1px solid #ececec;
    text-align: center;
}
.ilgili-sayfalar h2 {
    font-size: 1.125rem;
    margin: 0 0 18px;
    letter-spacing: .3px;
}
.ilgili-sayfalar ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}
.ilgili-sayfalar a {
    display: inline-block;
    padding: 9px 20px;
    border: 1px solid #e3e3e3;
    border-radius: 50px;
    color: var(--renk-metin);
    font-size: .9375rem;
    text-decoration: none;
    transition: all .25s ease;
}
.ilgili-sayfalar a:hover,
.ilgili-sayfalar a:focus {
    color: #fff;
    background-color: var(--renk-ana);
    border-color: var(--renk-ana);
    text-decoration: none;
}

.post-content a { text-decoration: underline; }
.post-content .ara-butonlari a,
.post-content .ilgili-sayfalar a { text-decoration: none; }
.post-content p { margin: 0 0 25px; }
.post-content p:last-child { margin: 0; }
.post-content figure { margin: 25px 0 0; }

@media (max-width: 768px) {
    .site-content { padding: calc(var(--menu-yuksekligi) + 25px) 0 35px; }
}

/* ==========================================================================
   10 Footer
   ========================================================================== */
.site-footer {
    background-color: var(--renk-siyah);
    margin: auto 0 0;   /* margin-top:auto -> her zaman en altta */
    padding: 0;
    width: 100%;
    font-size: .938rem;
}
.site-info {
    border-top: 1px solid rgba(255, 255, 255, .1);
    padding: 30px 0;
    text-align: center;
}

/* ==========================================================================
   11 Sabit butonlar
   ========================================================================== */
/* Sag altta ust uste duran buton sutunu: ustte "yukari cik", altta WhatsApp */
.yuzen-butonlar {
    position: fixed;
    right: 22px;
    bottom: 22px;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.yuzen-buton {
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #fff;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .25);
    transition: transform .3s ease, box-shadow .3s ease, background-color .3s ease,
                opacity .3s ease, visibility .3s ease;
}
.yuzen-buton:hover,
.yuzen-buton:focus {
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, .32);
}
.yuzen-buton:active { transform: translateY(-1px); }

.whatsapp-buton { background-color: #25d366; }
.whatsapp-buton:hover { background-color: #1fb757; }

.scroll-up {
    background-color: var(--renk-ana);
    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);
    pointer-events: none;
}
.scroll-up.is-visible {
    opacity: 1;
    visibility: visible;
    transform: none;
    pointer-events: auto;
}

/* Mobilde hemen ara - sol altta, WhatsApp ile cakismasin */
#callnowbutton {
    display: none;
    position: fixed;
    left: 22px;
    bottom: 22px;
    z-index: 9999;
    width: 52px;
    height: 52px;
    background-color: #6acedd;
}
#callnowbutton:hover { background-color: #4fbed0; }

@media (max-width: 650px) {
    #callnowbutton { display: flex; }
    .yuzen-butonlar { right: 16px; bottom: 16px; gap: 10px; }
    #callnowbutton { left: 16px; bottom: 16px; }
}

/* ==========================================================================
   12 Resim buyutme
   ========================================================================== */
.lb-overlay {
    position: fixed;
    top: 0; right: 0; bottom: 0; left: 0;
    background: rgba(0, 0, 0, .88);
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .3s ease, visibility .3s ease;
}
.lb-overlay.is-open { opacity: 1; visibility: visible; pointer-events: auto; }
.lb-image {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    box-shadow: 0 0 40px rgba(0, 0, 0, .6);
}
.lb-close {
    position: absolute;
    top: 15px;
    right: 25px;
    font-size: 42px;
    line-height: 1;
    color: #fff;
    background: none;
    border: 0;
    cursor: pointer;
    padding: 0 10px;
}

/* ==========================================================================
   13 Animasyonlar
   Kurallar sadece .js sinifinda gecerli: JavaScript calismazsa hicbir sey
   gizlenmez, sayfa oldugu gibi gorunur. Cihaz "hareketi azalt" diyorsa da
   animasyonlar devre disi kalir.
   ========================================================================== */
@media (prefers-reduced-motion: no-preference) {

    /* Kaydirdikca belirme */
    .js [data-animasyon] {
        opacity: 0;
        transform: translateY(30px);
        transition: opacity .7s cubic-bezier(.2, .6, .3, 1),
                    transform .7s cubic-bezier(.2, .6, .3, 1);
        transition-delay: var(--gecikme, 0s);
        will-change: opacity, transform;
    }
    .js [data-animasyon="soldan"]  { transform: translateX(-40px); }
    .js [data-animasyon="sagdan"]  { transform: translateX(40px); }
    .js [data-animasyon="buyu"]    { transform: scale(.92); }
    .js [data-animasyon].gorundu   { opacity: 1; transform: none; }

    /* Ust gorseldeki yazilar sayfa acilir acilmaz sirayla girsin */
    .js .slider-caption > * {
        opacity: 0;
        transform: translateY(26px);
        transition: opacity .8s ease, transform .8s ease;
    }
    .js .slider-caption h5 { transition-delay: .15s; }
    .js .slider-caption h1 { transition-delay: .35s; }
    .js .slider-caption p  { transition-delay: .55s; }
    .js .slider-caption.girdi > * { opacity: 1; transform: none; }

    /* Baslik altindaki mavi cizgi soldan acilsin */
    .js hr.divider { transform: scaleX(0); transform-origin: center; transition: transform .6s ease .25s; }
    .js hr.divider.gorundu { transform: scaleX(1); }

    /* Ust gorsel cok yavas yakinlassin.
       Mobilde yazi da bu kutunun icinde oldugu icin sadece 768px ustunde. */
    @media (min-width: 768px) {
        .js #slider-carousel .item { animation: yavasYakinlas 22s ease-out forwards; }
    }
    @keyframes yavasYakinlas {
        from { transform: scale(1); }
        to   { transform: scale(1.07); }
    }

    /* WhatsApp butonu arada bir nabiz gibi atsin */
    .whatsapp-buton::before {
        content: "";
        position: absolute;
        inset: 0;
        border-radius: 50%;
        background-color: #25d366;
        animation: nabiz 2.8s ease-out infinite;
        z-index: -1;
    }
    @keyframes nabiz {
        0%       { transform: scale(1); opacity: .55; }
        70%, 100%{ transform: scale(1.6); opacity: 0; }
    }
}

/* Butonun nabzi arkada kalsin diye */
.whatsapp-buton { position: relative; isolation: isolate; }

/* Menu baglantilarinin altinda kayan cizgi */
@media (min-width: 1101px) {
    .navbar-nav > li > a::after {
        content: "";
        position: absolute;
        left: 15px;
        right: 15px;
        bottom: 14px;
        height: 2px;
        background-color: var(--renk-ana);
        transform: scaleX(0);
        transform-origin: right center;
        transition: transform .3s ease;
    }
    .navbar-nav > li > a:hover::after,
    .navbar-nav > li > a:focus::after,
    .navbar-nav > li.active > a::after {
        transform: scaleX(1);
        transform-origin: left center;
    }
}

/* Logo ve alt menu baglantilarinda kucuk hareketler */
.navbar-brand img { transition: transform .35s ease; }
.navbar-brand:hover img { transform: scale(1.05); }
.dropdown-menu > li > a { transition: color .3s ease, padding-left .3s ease; }
@media (min-width: 1101px) {
    .dropdown-menu > li > a:hover { padding-left: 6px; }
    .dropdown-menu {
        transform-origin: top center;
        animation: menuAc .25s ease;
    }
    @keyframes menuAc {
        from { opacity: 0; transform: translateY(-8px); }
        to   { opacity: 1; transform: none; }
    }
}

/* Telefon numarasi ve icerik baglantilari */
.widget-title a { position: relative; }
.widget-title a::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -4px;
    height: 2px;
    background-color: currentColor;
    transform: scaleX(0);
    transform-origin: right center;
    transition: transform .3s ease;
}
.widget-title a:hover::after { transform: scaleX(1); transform-origin: left center; }

/* Resim buyutme katmani yumusak acilsin */
.lb-image { transition: transform .35s cubic-bezier(.2, .8, .3, 1); transform: scale(.94); }
.lb-overlay.is-open .lb-image { transform: none; }

/* ==========================================================================
   14 Mobil duzenlemeler
   ========================================================================== */

/* Dokunmatik cihazda "uzerine gelme" yok: kart aciklamalari hep gorunsun */
@media (hover: none) {
    .portfolio .post figcaption {
        position: static;
        transform: none;
        padding: 14px 16px;
    }
    .portfolio .post i { transform: none; }
    .portfolio .post img { opacity: 1; }
}

@media (max-width: 767px) {
    /* Ust gorsel: sabit 900px yerine ekrana gore */
    #slider-carousel .item {
        height: auto;
        min-height: 560px;
        display: flex;
        align-items: center;
        padding: calc(var(--menu-yuksekligi) + 40px) 0 70px;
    }
    .slider-caption {
        position: static;
        transform: none;
        width: 100%;
        left: auto;
        padding: 0;
    }
    .slider-caption h5 { font-size: 1rem; letter-spacing: 3px; margin: 0 0 12px; }
    .slider-caption h1 { font-size: 2.25rem; margin: 0 0 32px; }
    .slider-caption p  { font-size: 1rem; margin: 0; }

    /* Bolumler biraz daralsin */
    .section-portfolio { padding: 60px 0 0; }
    .testimonial { padding: 60px 0 45px; }
    .section-header { margin: 0 auto 35px; }
    .section-header .widget-title { font-size: 1.5rem; }
    .section-header p { font-size: 1rem; }

    .testmonial-block { padding: 55px 5px 15px; }
    .testmonial-block::before { font-size: 6rem; }
    .testmonial-block .description .title { font-size: 1.0625rem; line-height: 1.6; }

    /* Ic sayfalar */
    .sayfa-basligi { font-size: 1.5rem; }
    .metin { font-size: 1.0625rem; }
    .site-content .news .post-content { padding: 26px 18px; }
    .tel-kutu { font-size: 1.125rem; }

    .sayfa-gorseli img { height: 200px; }
    .ara-kutusu { padding: 24px 16px; }
    .ara-butonlari { flex-direction: column; }
    .btn-ara, .btn-wa { justify-content: center; }
    .ilgili-sayfalar a { font-size: .875rem; padding: 8px 16px; }
}

@media (max-width: 650px) {
    /* Sabit butonlar telif yazisinin ustune binmesin */
    .site-info { padding: 30px 0 85px; }
}

@media (max-width: 400px) {
    .slider-caption h1 { font-size: 1.875rem; }
    .navbar-brand img { width: 128px; height: 40px; }
}

/* ==========================================================================
   15 Erisilebilirlik
   ========================================================================== */
.sr-only,
.screen-reader-text,
.site-title,
.site-description {
    position: absolute !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    white-space: nowrap;
    word-wrap: normal !important;
}
.skip-link:focus {
    position: absolute !important;
    width: auto;
    height: auto;
    clip: auto;
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, .6);
    color: #21759b;
    display: block;
    font-size: .875rem;
    font-weight: 700;
    left: 5px;
    top: 5px;
    padding: 15px 23px 14px;
    text-decoration: none;
    z-index: 100001;
}
