:root {
    --primary: #3A506B;
    --primary-600: #32465c;
    --accent: #C4A484;
    --accent-light: #e6dcd1;
    --bg: #F9F9F9;
    --surface: #FFFFFF;
    --text: #333333;
    --muted: #8a99a8;
    --beige: #F5F1EA;
    --border: rgba(0, 0, 0, .07);
    --container: 1360px;
    --radius: 12px;
    --shadow: 0 4px 15px rgba(0, 0, 0, .05);
    --shadow-lg: 0 10px 40px rgba(0, 0, 0, .08);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Montserrat,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.7}
img{max-width:100%;height:auto;display:block}
a{color:var(--primary);text-decoration:none;transition:.2s ease}
a:hover{color:var(--accent)}
h1,h2,h3{font-family:"Playfair Display",serif;color:var(--primary);line-height:1.25}
h1{font-size:clamp(2.4rem,4vw,3.8rem)}
h2{font-size:clamp(1.8rem,3vw,2.6rem)}
h3{font-size:clamp(1.3rem,2.2vw,1.8rem)}
p{color:#4a5656; margin-bottom: 1rem;}
.container{max-width:var(--container);margin-inline:auto;padding-inline:20px}
.section{padding:100px 0}
.section-title{text-align:center;margin-bottom:60px}
.btn{display:inline-block;padding:14px 28px;border-radius:8px;background:var(--primary);color:#fff;font-weight:500;letter-spacing:.5px;border:2px solid transparent;transition:.3s ease; box-shadow: 0 4px 12px rgba(0,0,0,.1);}
.btn:hover{background:#fff;color:var(--primary);border-color:var(--primary);transform:translateY(-4px);box-shadow: 0 7px 20px rgba(0,0,0,.15);}
.btn-ghost{background:transparent;color:var(--primary);border:2px solid var(--primary)}
.btn-ghost:hover{background:var(--primary);color:#fff}
.badge{display:inline-block;padding:8px 16px;background:var(--beige);color:var(--accent);border-radius:999px;font-size:.9rem;font-weight:600; letter-spacing: .5px;}
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow); transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;}
.grid{display:grid;gap:30px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{position:fixed;left:16px;top:16px;width:auto;height:auto;background:#000;color:#fff;padding:10px 14px;border-radius:8px;z-index:9999}
:focus-visible{outline:3px solid var(--accent-light);outline-offset:3px; border-radius: 4px;}

#hdr {
    position: fixed;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100% - 40px);
    max-width: var(--container);
    z-index: 1000;
    transition: all .4s cubic-bezier(0.19, 1, 0.22, 1);
}
.nav {
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 30px;
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: saturate(180%) blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: var(--radius);
    box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.1);
    transition: all .4s cubic-bezier(0.19, 1, 0.22, 1);
}
#hdr.scrolled {
    top: 0;
    width: 100%;
    max-width: 100%;
}
#hdr.scrolled .nav {
    height: 65px;
    border-radius: 0;
    border-color: var(--border);
    box-shadow: var(--shadow);
    background: rgba(255, 255, 255, 0.85);
}
.brand {
    padding: 0;
}
.logo-img {
    height: 45px;
    width: auto;
    transition: transform .4s cubic-bezier(0.19, 1, 0.22, 1), height .4s ease;
}
#hdr.scrolled .logo-img {
    height: 40px;
}
.brand:hover .logo-img {
    transform: rotate(-5deg) scale(1.05);
}
.menu {
    display: flex;
    gap: 10px;
    align-items: center;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}
.menu a {
    font-weight: 600;
    padding: 10px 18px;
    border-radius: 8px;
    position: relative;
    overflow: hidden;
    transition: color .4s ease;
}
.menu a::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--accent-light);
    border-radius: 8px;
    transform: translateY(101%);
    transition: transform .4s cubic-bezier(0.19, 1, 0.22, 1);
    z-index: -1;
}
.menu a:hover,
.menu a.active {
    color: var(--primary);
}
.menu a:hover::before,
.menu a.active::before {
    transform: translateY(0);
}
.cta-wrap {
    display: flex;
    align-items: center;
    gap: 16px;
}
.cta-wrap .btn {
    padding: 10px 22px;
}
.hamb{display:none;font-size:1.6rem;color:var(--primary); background: none; border: none; cursor: pointer; z-index: 1001;}
.progress{position:fixed;left:0;top:0;height:4px;width:0;background:linear-gradient(90deg,var(--accent),var(--primary));z-index:1100}
.hero{position:relative;min-height:95vh;display:grid;place-items:center;text-align:center;padding-top:80px}
.slides{position:absolute;inset:0;overflow:hidden}
.slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.5s ease}
.slide.active{opacity:1}
.kenburns{animation:ken 24s ease-in-out infinite alternate}
@keyframes ken{0%{transform:scale(1.1) rotate(1deg)}100%{transform:scale(1) rotate(-1deg)}}
.hero-inner{position:relative;z-index:2;max-width:900px;padding:0 20px}
.hero p{font-size:1.2rem;margin:18px 0 30px; color: #333;}
.dots{display:flex;gap:10px;justify-content:center;margin-top:24px}
.dot{width:12px;height:12px;border-radius:999px;background:rgba(0,0,0,.2);cursor:pointer; transition: .3s ease;}
.dot.active{background:var(--primary); transform: scale(1.2);}
.hero .actions{display:flex;gap:16px;justify-content:center; flex-wrap: wrap;}
.about{align-items:center}
.portrait{border-radius:var(--radius);box-shadow:var(--shadow-lg)}
.about .lead{font-size:1.2rem; font-style: italic; font-family: "Playfair Display", serif; color: var(--text);}
.services .card{padding:32px;border-bottom:5px solid var(--beige);transition:.3s}
.services .card:hover{transform:translateY(-6px);border-bottom-color:var(--primary);box-shadow:var(--shadow-lg)}
.icon-wrap{width:60px;height:60px;font-size:1.5rem;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#fff,var(--beige));color:var(--primary);box-shadow:var(--shadow);margin-bottom:20px}
.approach-grid{align-items:center;gap:50px}
.approach-tabs .tab{padding:20px; border-left:4px solid var(--border); cursor:pointer; transition:.3s; margin-bottom: 15px; border-radius: 0 8px 8px 0;}
.approach-tabs .tab.active{border-color:var(--accent); background: var(--beige); transform: translateX(10px);}
.approach-tabs .tab h3{margin-bottom: 5px;}
.approach-content-pane{position:relative; min-height:450px;}
.approach-content{position:absolute; inset:0; opacity:0; transition:opacity .5s; visibility:hidden;}
.approach-content.active{opacity:1; visibility:visible;}
.approach-content img{width:100%; height:100%; object-fit:cover; border-radius: var(--radius);}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:24px}
.stat{padding:24px;text-align:center;border:1px dashed var(--border);border-radius:12px;background:#fff}
.stat b{font-size:1.8rem;color:var(--primary); font-family: Montserrat, sans-serif;}
.form-wrap{padding:40px; box-shadow: var(--shadow-lg);}
.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px; margin-bottom: 16px;}
.form-row.single{grid-template-columns:1fr}
label{font-weight:600;font-size:.9rem; margin-bottom: 4px; display: block;}
input,select,textarea{width:100%;padding:14px 16px;border:1px solid #ddd;border-radius:10px;background:#fff; transition: .2s;}
input:focus, select:focus, textarea:focus {border-color: var(--primary); box-shadow: 0 0 0 3px var(--accent-light);}
textarea{min-height:120px; resize: vertical;}
.help{font-size:.85rem;color:var(--muted); margin-top: 8px;}
.alert{padding:16px;border-radius:10px;margin-bottom:16px; border: 1px solid;}
.alert.ok{background:#e9f7ef;color:#20543a;border-color:#cdebd9}
.alert.err{background:#fdecea;color:#611a15;border-color:#f5c6c3}
.t-wrap{position:relative;max-width: 800px; margin: auto;}
.t-slider{display:flex;transition:transform .5s cubic-bezier(0.25,1,0.5,1)}
.t-item{min-width:100%;padding:10px}
.blockquote{padding:32px;text-align:center;font-family:"Playfair Display", serif; font-size:1.3rem; font-style: italic;}
.t-nav{position:absolute;top:50%;transform:translateY(-50%);inset:-20px;display:flex;justify-content:space-between;pointer-events:none}
.t-btn{pointer-events:auto;width:48px;height:48px;border-radius:999px;display:grid;place-items:center;background:var(--surface);color:var(--primary);border:1px solid var(--border);box-shadow:var(--shadow); transition:.2s;}
.t-btn:hover{background:var(--primary); color: #fff;}
.gallery .grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.gal-item{position:relative;overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow);cursor:pointer;}
.gal-item::after{content:'\f00e'; font-family:"Font Awesome 6 Free"; font-weight:900; position: absolute; inset: 0; display:grid; place-items:center; color:#fff; background:rgba(0,0,0,.5); font-size:2rem; opacity:0; transition: .3s;}
.gal-item:hover::after{opacity:1;}
.gal-item img{transition:transform .4s ease}
.gal-item:hover img{transform:scale(1.08)}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.85);backdrop-filter:blur(5px);display:none;place-items:center;z-index:1300}
.lightbox.open{display:grid}
.lightbox img{max-width:90vw;max-height:85vh;border-radius:var(--radius);animation:lb .4s ease}
@keyframes lb{from{transform:scale(.8);opacity:0} to{transform:scale(1);opacity:1}}
.blog .b-card{display:flex;flex-direction:column; overflow:hidden;}
.blog .b-card img {height: 220px; object-fit: cover;}
.blog .b-body{padding:24px; flex-grow:1; display:flex; flex-direction:column;}
.blog .b-body p {flex-grow:1;}
.faq .q{width:100%;text-align:left;background:transparent;border:none;padding:18px 20px;font-weight:700;display:flex;justify-content:space-between;align-items:center; font-size: 1.1rem; cursor: pointer;}
.faq .q .fa-chevron-down{transition:.3s}
.faq .item{border:1px solid var(--border); border-radius:var(--radius); overflow:hidden;}
.faq .item.open{background:var(--surface);}
.faq .item.open .q .fa-chevron-down{transform:rotate(180deg)}
.faq .a{max-height:0;overflow:hidden;transition:max-height .4s ease}
.faq .item.open .a{max-height:400px}
.to-top{position:fixed;right:20px;bottom:20px;width:48px;height:48px;display:grid;place-items:center;border-radius:999px;background:var(--primary);color:#fff;border:none;opacity:0;visibility:hidden;transition:.3s;z-index:1200; box-shadow: var(--shadow-lg);}
.to-top.show{opacity:1;visibility:visible}
.to-top:hover{transform: scale(1.1);}

@media (max-width:992px){.grid-2,.grid-3{grid-template-columns:1fr}
.menu{position:fixed; top:0; right:-300px; height:100vh; width:300px; background:#fff; flex-direction:column; justify-content:center; gap:30px; box-shadow:var(--shadow-lg); transition:right .4s ease;}
.menu.open{right:0}
.hamb{display:inline}
.stats{grid-template-columns:repeat(2,1fr)}
.f-cols{grid-template-columns:1fr 1fr}
.approach-content-pane{margin-top: 30px;}
}
@media (max-width:560px){.stats{grid-template-columns:1fr 1fr}.f-cols{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}.legal{flex-direction:column; text-align:center;}}
@media (prefers-reduced-motion:reduce){.kenburns{animation:none}*,*::before,*::after{transition-duration:0s!important}}
.cta-wrap { display: flex; align-items: center; gap: 16px; }
.section-title h2 {
    position: relative;
    display: inline-block;
    padding-bottom: 15px;
    margin-bottom: 10px;
}
.section-title h2:not(.no-line)::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background-color: var(--accent);
    border-radius: 2px;
}
.menu a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: var(--accent);
    transform: scaleX(0);
    transform-origin: right;
    transition: transform .4s cubic-bezier(0.19, 1, 0.22, 1);
}
.menu a:hover::after,
.menu a.active::after {
    transform: scaleX(1);
    transform-origin: left;
}
.menu a.active {
    border-bottom-color: transparent;
}

/* ESKİ FOOTER STİLLERİNİ BU YENİLERİYLE DEĞİŞTİRİN */
.site-footer {
    background-color: var(--primary);
    color: var(--muted);
    font-size: 0.95rem;
    position: relative;
    overflow: hidden;
    padding-top: 80px;
    background-image: linear-gradient(145deg, var(--primary) 0%, #2c3a44 100%);
}
.site-footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M0 38.59l2.83-2.83 1.41 1.41L1.41 40H0v-1.41zM0 1.4l2.83 2.83 1.41-1.41L1.41 0H0v1.41zM38.59 40l-2.83-2.83 1.41-1.41L40 38.59V40h-1.41zM40 1.41l-2.83 2.83-1.41-1.41L38.59 0H40v1.41zM20 18.6l2.83-2.83 1.41 1.41L21.41 20l2.83 2.83-1.41 1.41L20 21.41l-2.83 2.83-1.41-1.41L18.59 20l-2.83-2.83 1.41-1.41L20 18.59z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
    z-index: 1;
}
.footer-main {
    position: relative;
    z-index: 2;
}
.f-cols {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1.5fr;
    gap: 50px;
    align-items: flex-start;
}
.f-col h4 {
    color: #fff;
    margin-bottom: 24px;
    font-size: 1.1rem;
    font-weight: 600;
    font-family: Montserrat, sans-serif;
    position: relative;
    padding-bottom: 12px;
}
.f-col h4::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 30px;
    height: 3px;
    background-color: var(--accent);
    border-radius: 2px;
}
.footer-logo-img {
    height: 50px;
    width: auto;
    filter: brightness(0) invert(1);
    opacity: 0.9;
    margin-bottom: 16px;
}
.footer-tagline {
    color: var(--muted);
    font-size: 0.9rem;
    margin-bottom: 24px;
    max-width: 350px;
}
.socials {
    list-style: none;
    display: flex;
    gap: 10px;
}
.socials a {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: var(--muted);
    font-size: 1.1rem;
    transition: all .3s cubic-bezier(0.19, 1, 0.22, 1);
}
.socials a:hover {
    background-color: var(--accent);
    color: #fff;
    transform: translateY(-4px) scale(1.05);
    box-shadow: 0 8px 15px rgba(0,0,0,0.2);
}
.footer-links, .work-hours, .footer-contact ul {
    list-style: none;
    display: grid;
    gap: 16px;
}
.work-hours {
    font-style: italic;
}
.footer-links a {
    color: var(--muted);
    position: relative;
}
.footer-links a:hover {
    color: var(--accent);
    padding-left: 12px;
}
.footer-contact li {
    display: flex;
    align-items: flex-start;
    gap: 15px;
}
.footer-contact i {
    color: var(--accent);
    margin-top: 5px;
    font-size: 1.1rem;
}
.footer-contact a {
    color: var(--muted);
}
.footer-contact a:hover {
    color: #fff;
}
.legal {
    padding: 24px 0;
    background-color: rgba(0,0,0,0.2);
    font-size: 0.9rem;
    margin-top: 60px;
    position: relative;
    z-index: 2;
}
.legal .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
}
.legal a {
    color: var(--muted);
}
.legal a:hover {
    color: #fff;
}
.legal-links {
    display: flex;
    gap: 10px;
}

@media (max-width: 992px) {
    .f-cols {
        grid-template-columns: 1fr 1fr;
    }
    .footer-about {
        grid-column: 1 / -1;
    }
}
.about .lead {
    word-break: break-word;
}
@media (max-width: 560px) {
    .f-cols {
        grid-template-columns: 1fr;
    }
    .legal {
        text-align: center;
    }
    .legal .container {
        flex-direction: column;
    }
}
.lang-switcher {
    position: relative;
    display: flex;
    background-color: var(--beige);
    border-radius: 999px;
    padding: 4px;
    border: 1px solid var(--border);
}
.lang-switcher a {
    font-size: 0.85rem;
    font-weight: 600;
    padding: 6px 16px;
    z-index: 2;
    position: relative;
    color: var(--muted);
    transition: color .3s cubic-bezier(0.19, 1, 0.22, 1);
}
.lang-slider {
    position: absolute;
    top: 4px;
    left: 4px;
    width: calc(50% - 4px);
    height: calc(100% - 8px);
    background-color: var(--primary);
    border-radius: 999px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.1);
    z-index: 1;
    transition: transform .3s cubic-bezier(0.19, 1, 0.22, 1);
}
.lang-switcher.lang-is-tr .lang-slider {
    transform: translateX(0);
}
.lang-switcher.lang-is-en .lang-slider {
    transform: translateX(100%);
}
.lang-switcher.lang-is-tr a[href="?lang=tr"],
.lang-switcher.lang-is-en a[href="?lang=en"] {
    color: #fff;
}
/* Mobil için olan tüm elemanları masaüstünde varsayılan olarak gizle */
.mobile-header,
.mobile-menu-panel,
.menu-overlay {
    display: none;
}

/* 992px ve altı ekranlar için kurallar */
@media (max-width: 992px) {
    /* Masaüstü header'ı mobilde gizle */
    .desktop-header {
        display: none;
    }

    /* Mobil elemanları görünür yap */
    .mobile-header,
    .mobile-menu-panel,
    .menu-overlay {
        display: block; /* veya flex, duruma göre */
    }

    .mobile-header {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 64px;
        background: rgba(255, 255, 255, 0.85);
        backdrop-filter: saturate(180%) blur(20px);
        border-bottom: 1px solid var(--border);
        box-shadow: var(--shadow);
        z-index: 1000;
    }
    .mobile-header .container {
        display: flex;
        justify-content: space-between;
        align-items: center;
        height: 100%;
    }
    .mobile-header .logo-img {
        height: 40px;
    }
    .mobile-header .hamb {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        font-size: 1.5rem;
        color: var(--primary);
        background: none;
        border: none;
        cursor: pointer;
        z-index: 1102;
    }
    .mobile-menu-panel {
        display: flex; /* flex olarak kalmalı */
        position: fixed;
        top: 0;
        right: 0;
        width: min(86vw, 360px);
        height: 100dvh;
        padding: 80px 24px 24px;
        background: #fff;
        box-shadow: -24px 0 50px rgba(0,0,0,.15);
        flex-direction: column;
        gap: 16px;
        overflow-y: auto;
        z-index: 1101;
        transform: translateX(100%);
        transition: transform .35s cubic-bezier(.2,.8,.2,1);
    }
    .mobile-menu-panel.open {
        transform: translateX(0);
    }
    .mobile-menu-panel a {
        font-size: 1.1rem;
        font-weight: 600;
        padding: 12px 10px;
        border-radius: 8px;
    }
    .mobile-menu-panel a.active {
        background-color: var(--beige);
    }
    .mobile-menu-panel hr {
        border: none;
        border-top: 1px solid var(--border);
        margin: 10px 0;
    }
    .mobile-menu-panel .btn {
        text-align: center;
        margin-top: 10px;
    }
    .menu-overlay {
        position: fixed;
        inset: 0;
        background: rgba(0,0,0,.45);
        opacity: 0;
        visibility: hidden;
        transition: opacity .25s ease;
        z-index: 1100;
    }
    .menu-overlay.show {
        opacity: 1;
        visibility: visible;
    }
    body.menu-lock {
        overflow: hidden;
    }
}
.lang-switcher-mobile {
    position: relative;
    display: flex;
    background-color: var(--beige);
    border-radius: 999px;
    padding: 4px;
    border: 1px solid var(--border);
    max-width: 120px;
    margin: 20px auto 0;
}
.lang-switcher-mobile a {
    font-size: 0.85rem !important;
    font-weight: 600;
    padding: 6px 16px !important;
    z-index: 2;
    position: relative;
    color: var(--muted);
    transition: color .3s cubic-bezier(0.19, 1, 0.22, 1);
    width: 50%;
    text-align: center;
}
.lang-switcher-mobile .lang-slider {
    position: absolute;
    top: 4px;
    left: 4px;
    width: calc(50% - 4px);
    height: calc(100% - 8px);
    background-color: var(--primary);
    border-radius: 999px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.1);
    z-index: 1;
    transition: transform .3s cubic-bezier(0.19, 1, 0.22, 1);
}
.lang-switcher-mobile.lang-is-tr .lang-slider {
    transform: translateX(0);
}
.lang-switcher-mobile.lang-is-en .lang-slider {
    transform: translateX(100%);
}
.lang-switcher-mobile.lang-is-tr a[href="?lang=tr"],
.lang-switcher-mobile.lang-is-en a[href="?lang=en"] {
    color: #fff;
}


@media (max-width: 768px) {
    .section-title h2 {
        font-size: 25px; /* Sadece mobilde 25px olarak ayarla */
    }
}