/* =====================================================================
   DEMİRCİ HUKUK — Tasarım Sistemi
   Klasik & prestijli: lacivert + altın, serif başlık + sans gövde.
   ===================================================================== */

/* ---------- 1. Tokens ---------- */
:root {
    /* Marka renkleri (logodan) */
    --navy-900: #1c262e;
    --navy-800: #27333d;   /* birincil lacivert */
    --navy-700: #33424e;
    --navy-600: #435564;
    --gold-600: #8a7757;
    --gold-500: #ac9471;   /* birincil altın */
    --gold-400: #c2ad8e;
    --gold-300: #d8c9b1;

    /* Nötrler */
    --ink:      #26292c;   /* gövde metni */
    --ink-soft: #565b60;
    --muted:    #8b8f93;
    --line:     #e7e2d8;   /* ince ayraç */
    --line-soft:#f0ece4;
    --paper:    #faf8f4;   /* sıcak fildişi zemin */
    --paper-2:  #f4f0e8;   /* alternatif blok zemini */
    --white:    #ffffff;

    /* Tipografi */
    --serif: "Cormorant Garamond", "Times New Roman", Georgia, serif;
    --sans:  "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

    /* Ölçüler */
    --container: 1240px;
    --container-narrow: 880px;
    --radius: 3px;
    --radius-lg: 6px;
    --shadow-sm: 0 1px 3px rgba(28,38,46,.06), 0 1px 2px rgba(28,38,46,.04);
    --shadow-md: 0 10px 30px rgba(28,38,46,.08);
    --shadow-lg: 0 24px 60px rgba(28,38,46,.14);
    --ease: cubic-bezier(.4, 0, .2, 1);

    --nav-h: 88px;
    --topbar-h: 42px;
    --header-total: calc(var(--nav-h) + var(--topbar-h));
}

/* ---------- 2. Reset ---------- */
*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
    font-family: var(--sans);
    font-size: 17px;
    line-height: 1.72;
    color: var(--ink);
    background: var(--paper);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    overflow-x: hidden;
}
img, svg, video { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button { font: inherit; cursor: pointer; border: none; background: none; color: inherit; }
ul, ol { list-style: none; padding: 0; }
input, textarea, select { font: inherit; color: inherit; }
:focus-visible { outline: 2px solid var(--gold-500); outline-offset: 3px; }
::selection { background: var(--gold-300); color: var(--navy-900); }

.skip-link {
    position: absolute; left: -9999px; top: 0; z-index: 999;
    background: var(--navy-800); color: #fff; padding: .75rem 1.25rem;
}
.skip-link:focus { left: 1rem; top: 1rem; }

/* ---------- 3. Tipografi ---------- */
h1, h2, h3, h4 { font-family: var(--serif); font-weight: 600; line-height: 1.14; color: var(--navy-900); letter-spacing: .2px; }
h1 { font-size: clamp(2.6rem, 5.2vw, 4.1rem); font-weight: 500; }
h2 { font-size: clamp(2rem, 3.6vw, 2.9rem); }
h3 { font-size: clamp(1.4rem, 2.2vw, 1.75rem); }
h4 { font-size: 1.25rem; }
p { margin: 0 0 1.1em; }
strong { font-weight: 600; }
em { font-style: italic; }

.display {
    font-family: var(--serif);
    font-size: clamp(2.9rem, 6vw, 4.6rem);
    font-weight: 500; line-height: 1.08; letter-spacing: .3px;
}

/* Küçük altın etiket (eyebrow) */
.eyebrow {
    display: inline-flex; align-items: center; gap: .6rem;
    font-family: var(--sans); font-size: .72rem; font-weight: 600;
    letter-spacing: .22em; text-transform: uppercase; color: var(--gold-600);
    margin-bottom: 1.1rem;
}
.eyebrow::before { content: ""; width: 26px; height: 1px; background: var(--gold-500); }
.eyebrow--center { justify-content: center; }
.eyebrow--center::after { content: ""; width: 26px; height: 1px; background: var(--gold-500); }

.lead { font-size: 1.2rem; line-height: 1.7; color: var(--ink-soft); }

/* ---------- 4. Layout ---------- */
.container { width: 100%; max-width: var(--container); margin-inline: auto; padding-inline: 24px; }
.container--narrow { max-width: var(--container-narrow); }
.section { padding-block: clamp(64px, 9vw, 128px); }
.section--tight { padding-block: clamp(48px, 6vw, 80px); }
.section--paper2 { background: var(--paper-2); }
.section--navy { background: var(--navy-800); color: #e9e6df; }
.section--navy h1, .section--navy h2, .section--navy h3 { color: #fff; }

.section-head { max-width: 640px; margin-bottom: 3.5rem; }
.section-head--center { margin-inline: auto; text-align: center; }
.section-head p { color: var(--ink-soft); font-size: 1.08rem; margin-top: .9rem; }

.grid { display: grid; gap: 28px; }
.grid-2 { grid-template-columns: repeat(2, 1fr); }
.grid-3 { grid-template-columns: repeat(3, 1fr); }
.grid-4 { grid-template-columns: repeat(4, 1fr); }

/* Esnek 2-kolon düzen — kolonlar inline `--split-cols` ile verilir,
   mobilde (<=900px) otomatik tek kolona iner. */
.split { display: grid; align-items: start; gap: 48px; grid-template-columns: var(--split-cols, 1fr 1fr); }

.rule { height: 1px; background: var(--line); border: 0; }
.gold-rule { width: 56px; height: 2px; background: var(--gold-500); border: 0; }

/* ---------- 5. Butonlar ---------- */
.btn {
    display: inline-flex; align-items: center; gap: .6rem;
    font-family: var(--sans); font-weight: 600; font-size: .82rem;
    letter-spacing: .12em; text-transform: uppercase;
    padding: 1rem 1.9rem; border-radius: var(--radius);
    transition: all .28s var(--ease); cursor: pointer; border: 1px solid transparent;
}
.btn svg { width: 16px; height: 16px; }
.btn--primary { background: var(--navy-800); color: #fff; }
.btn--primary:hover { background: var(--navy-900); transform: translateY(-2px); box-shadow: var(--shadow-md); }
.btn--gold { background: var(--gold-500); color: var(--white); }
.btn--gold:hover { background: var(--gold-600); color: #fff; transform: translateY(-2px); box-shadow: var(--shadow-md); }
.btn--ghost { border-color: var(--navy-800); color: var(--navy-800); }
.btn--ghost:hover { background: var(--navy-800); color: #fff; }
.btn--wa { background: #25d366; color: #0a3d2a; }
.btn--wa:hover { background: #1fb356; color: #08301f; transform: translateY(-2px); box-shadow: var(--shadow-md); }
.btn--light { border-color: rgba(255,255,255,.35); color: #fff; }
.btn--light:hover { background: #fff; color: var(--navy-900); border-color: #fff; }

/* Metin linki (altın ok animasyonu) */
.link-arrow {
    display: inline-flex; align-items: center; gap: .5rem;
    font-family: var(--sans); font-weight: 600; font-size: .82rem;
    letter-spacing: .1em; text-transform: uppercase; color: var(--navy-800);
    transition: gap .25s var(--ease), color .25s;
}
.link-arrow svg { width: 15px; height: 15px; transition: transform .25s var(--ease); }
.link-arrow:hover { color: var(--gold-600); }
.link-arrow:hover svg { transform: translateX(4px); }

/* =====================================================================
   6. HEADER / NAV
   ===================================================================== */
/* Sabit, hero üzerine binen buzlu cam header */
.site-top { position: fixed; top: 0; left: 0; right: 0; z-index: 100; }

/* --- Üst bilgi şeridi (topbar) — koyu buzlu cam --- */
.topbar {
    height: var(--topbar-h); overflow: hidden;
    background: rgba(18, 25, 31, .55);
    -webkit-backdrop-filter: saturate(160%) blur(14px);
            backdrop-filter: saturate(160%) blur(14px);
    border-bottom: 1px solid rgba(172,148,113,.16);
    color: #c3c8c9; font-size: .78rem; letter-spacing: .02em;
}
.topbar__inner { display: flex; align-items: center; justify-content: space-between; height: var(--topbar-h); gap: 1.5rem; }
.topbar__tagline { font-weight: 600; letter-spacing: .16em; text-transform: uppercase; font-size: .7rem; color: var(--gold-400); }
.topbar__since { font-family: var(--serif); font-style: italic; font-size: .92rem; letter-spacing: .02em; color: #cfd3d0; }
.topbar__right { display: flex; align-items: center; gap: 1.4rem; }
.topbar__right a { display: inline-flex; align-items: center; gap: .5rem; color: #c3c8c9; transition: color .2s; }
.topbar__right a:hover { color: var(--gold-400); }
.topbar__right svg { color: var(--gold-500); }
.topbar__phone { font-weight: 600; }
.topbar__phone span { display: inline-flex; align-items: baseline; }
.topbar__city { font-style: normal; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; font-size: .62rem; color: var(--gold-500); margin-right: .4rem; }
.topbar__sep { width: 1px; height: 15px; background: rgba(255,255,255,.16); }

/* --- Nav çubuğu — şeffaf/açık cam --- */
.nav-bar {
    background: transparent;
    border-bottom: 1px solid rgba(255,255,255,.08);
    -webkit-backdrop-filter: saturate(160%) blur(14px);
            backdrop-filter: saturate(160%) blur(14px);
    transition: background .35s var(--ease), border-color .35s, box-shadow .35s;
}
.nav-inner { display: flex; align-items: center; justify-content: space-between; height: var(--nav-h); gap: 2rem; }
.nav-logo { position: relative; display: flex; align-items: center; flex-shrink: 0; }
.nav-logo img { height: 90px; width: auto; transition: height .35s var(--ease), opacity .35s; }
.nav-logo .logo-dark { position: absolute; left: 0; top: 50%; transform: translateY(-50%); opacity: 0; }

/* scroll: açık buzlu cama dönüş */
.site-top.is-scrolled .nav-bar {
    background: rgba(250,248,244,.80);
    border-bottom-color: var(--line);
    box-shadow: 0 8px 30px rgba(28,38,46,.10);
}
.site-top.is-scrolled .nav-logo img { height: 58px; }
.site-top.is-scrolled .nav-logo .logo-light { opacity: 0; }
.site-top.is-scrolled .nav-logo .logo-dark { opacity: 1; }

.nav-menu { display: flex; align-items: center; gap: 2.3rem; }
.nav-menu > li { position: relative; }
.nav-menu > li > a {
    display: inline-flex; align-items: center; gap: .4rem;
    font-family: var(--sans); font-weight: 500; font-size: .95rem;
    color: #eef1f1; padding: .6rem 0; letter-spacing: .015em;
    position: relative; transition: color .22s; text-shadow: 0 1px 12px rgba(0,0,0,.15);
}
.site-top.is-scrolled .nav-menu > li > a { color: var(--navy-800); text-shadow: none; }
.nav-menu > li > a::after {
    content: ""; position: absolute; left: 50%; bottom: -1px; width: 0; height: 1.5px;
    background: var(--gold-500); transition: width .3s var(--ease), left .3s var(--ease);
}
.nav-menu > li > a:hover, .nav-menu > li.is-active > a { color: var(--gold-400); }
.site-top.is-scrolled .nav-menu > li > a:hover, .site-top.is-scrolled .nav-menu > li.is-active > a { color: var(--gold-600); }
.nav-menu > li > a:hover::after, .nav-menu > li.is-active > a::after { width: 100%; left: 0; }
.nav-menu .caret { width: 11px; height: 11px; opacity: .55; transition: transform .25s; }
.nav-menu li.has-dropdown:hover .caret { transform: rotate(180deg); }

/* Mega dropdown (çalışma alanları) — geniş, ekran ortasından açılan dikdörtgen */
.nav-dropdown {
    position: fixed; top: var(--nav-h); left: 50%; transform: translateX(-50%) translateY(8px);
    width: min(980px, calc(100vw - 48px));
    background: #fff; border: 1px solid var(--line);
    box-shadow: var(--shadow-lg); border-radius: var(--radius-lg); overflow: hidden;
    display: grid; grid-template-columns: 268px 1fr;
    opacity: 0; visibility: hidden;
    transition: opacity .28s var(--ease), transform .28s var(--ease), visibility .28s; z-index: 120;
}
/* Menü ile dropdown arasını köprüler (hover kaybını önler) */
.nav-dropdown::before { content: ""; position: absolute; top: -22px; left: 0; right: 0; height: 22px; }
.nav-menu li.has-dropdown:hover .nav-dropdown,
.nav-menu li.has-dropdown:focus-within .nav-dropdown {
    opacity: 1; visibility: visible; transform: translateX(-50%) translateY(0);
}

/* Sol tanıtım paneli (navy + altın) */
.mega__feature {
    position: relative; overflow: hidden;
    padding: 2.1rem 1.7rem; display: flex; flex-direction: column;
    background: linear-gradient(165deg, var(--navy-800), var(--navy-900)); color: #fff;
}
.mega__feature::after { content: ""; position: absolute; right: -50px; bottom: -50px; width: 170px; height: 170px; border-radius: 50%; background: radial-gradient(circle, rgba(172,148,113,.20), transparent 66%); pointer-events: none; }
.mega__feature .eyebrow { color: var(--gold-400); margin-bottom: 1rem; }
.mega__feature .eyebrow::before { background: var(--gold-400); }
.mega__feature h3 { color: #fff; font-size: 1.5rem; line-height: 1.16; margin-bottom: .7rem; position: relative; }
.mega__feature p { color: #a9afb1; font-size: .85rem; line-height: 1.6; margin: 0; position: relative; }
.mega__all { margin-top: auto; padding-top: 1.5rem; display: inline-flex; align-items: center; gap: .5rem; color: var(--gold-400); font-weight: 700; font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; transition: gap .25s var(--ease), color .25s; position: relative; }
.mega__all svg { width: 15px; height: 15px; }
.mega__all:hover { gap: .85rem; color: var(--gold-300); }

/* Sağ liste (ikon-daireli) */
.mega__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .15rem .4rem; padding: 1.3rem; align-content: center; }
.mega__item { display: flex; align-items: center; gap: .75rem; padding: .6rem .7rem; border-radius: var(--radius); transition: background .2s; }
.mega__item:hover { background: var(--paper-2); }
.mega__ico { width: 38px; height: 38px; flex-shrink: 0; display: grid; place-items: center; border-radius: 50%; background: var(--paper-2); border: 1px solid var(--line); transition: all .25s var(--ease); }
.mega__ico svg { width: 18px; height: 18px; color: var(--gold-600); }
.mega__item:hover .mega__ico { background: var(--navy-800); border-color: var(--navy-800); transform: translateY(-1px); }
.mega__item:hover .mega__ico svg { color: var(--gold-400); }
.mega__label { font-size: .86rem; line-height: 1.25; color: var(--ink); transition: color .2s; }
.mega__item:hover .mega__label { color: var(--navy-900); }

.nav-actions { display: flex; align-items: center; gap: 1.2rem; flex-shrink: 0; }
.nav-cta {
    padding: .9rem 1.7rem; font-size: .76rem; color: #fff; border-color: transparent;
    background: linear-gradient(180deg, var(--gold-500), var(--gold-600));
    box-shadow: 0 4px 16px rgba(28,38,46,.18);
}
.nav-cta:hover { color: #fff; background: var(--gold-600); transform: translateY(-2px); box-shadow: 0 8px 22px rgba(28,38,46,.25); }

.nav-toggle { display: none; flex-direction: column; gap: 5px; padding: 8px; }
.nav-toggle span { width: 26px; height: 2px; background: #fff; transition: all .3s var(--ease); }
.site-top.is-scrolled .nav-toggle span { background: var(--navy-800); }

/* Mobil panel — katmanlı, accordion'lu, premium */
.mobile-nav {
    position: fixed; inset: 0 0 0 auto; width: min(90vw, 420px); z-index: 200;
    transform: translateX(100%); transition: transform .4s var(--ease);
    display: flex; flex-direction: column; overflow: hidden;
    background: linear-gradient(165deg, var(--navy-800), var(--navy-900));
    color: #fff; box-shadow: -20px 0 60px rgba(0,0,0,.32);
}
.mobile-nav::before { content: ""; position: absolute; top: 0; bottom: 0; left: 0; width: 2px; background: linear-gradient(var(--gold-500), transparent 55%); z-index: 2; }
.mobile-nav.is-open { transform: translateX(0); }
.mobile-nav__watermark { position: absolute; right: -70px; top: 34%; height: 300px; width: auto; opacity: .045; pointer-events: none; z-index: 0; }

.mobile-nav__head { display: flex; align-items: center; justify-content: space-between; padding: 1.4rem 1.6rem; border-bottom: 1px solid rgba(255,255,255,.08); position: relative; z-index: 1; }
.mobile-nav__logo img { height: 54px; }
.mobile-nav__close { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; color: #fff; transition: all .25s var(--ease); }
.mobile-nav__close svg { width: 19px; height: 19px; }
.mobile-nav__close:hover { background: var(--gold-500); border-color: var(--gold-500); color: var(--navy-900); }

.mobile-nav__menu { flex: 1; overflow-y: auto; padding: .8rem 1.6rem 1.2rem; position: relative; z-index: 1; -webkit-overflow-scrolling: touch; }
.m-link { display: flex; align-items: center; justify-content: space-between; gap: 1rem; width: 100%; padding: 1rem 0; font-family: var(--serif); font-size: 1.4rem; font-weight: 500; color: #e9e6df; border-bottom: 1px solid rgba(255,255,255,.08); transition: color .2s; text-align: left; }
.m-link:hover, .m-link.is-active { color: var(--gold-400); }
.m-accordion__caret { width: 16px; height: 16px; opacity: .55; flex-shrink: 0; transition: transform .3s var(--ease), color .2s; }
.m-accordion.is-open .m-accordion__caret { transform: rotate(180deg); opacity: 1; color: var(--gold-400); }
.m-accordion__panel { max-height: 0; overflow: hidden; transition: max-height .4s var(--ease); }
.m-accordion__inner { padding: .5rem 0 1.1rem; }
.m-sub { display: flex; align-items: center; gap: .85rem; padding: .55rem 0; font-size: .98rem; color: #c2c7c9; transition: color .2s; }
.m-sub:hover { color: #fff; }
.m-sub__ico { width: 36px; height: 36px; flex-shrink: 0; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.05); border: 1px solid rgba(172,148,113,.28); transition: all .25s; }
.m-sub__ico svg { width: 16px; height: 16px; color: var(--gold-400); }
.m-sub:hover .m-sub__ico { background: rgba(172,148,113,.16); }
.m-sub--all { color: var(--gold-400); font-weight: 700; font-size: .76rem; letter-spacing: .1em; text-transform: uppercase; margin-top: .5rem; gap: .5rem; }
.m-sub--all svg { width: 15px; height: 15px; color: var(--gold-400); }

.mobile-nav__foot { flex-shrink: 0; padding: 1.3rem 1.6rem calc(1.4rem + env(safe-area-inset-bottom)); border-top: 1px solid rgba(255,255,255,.08); background: rgba(0,0,0,.18); position: relative; z-index: 1; }
.mobile-nav__cta { width: 100%; justify-content: center; }
.mobile-nav__contact { display: grid; gap: .75rem; margin-top: 1.2rem; }
.mobile-nav__contact a { display: flex; align-items: center; gap: .65rem; color: #b7bcbf; font-size: .9rem; transition: color .2s; }
.mobile-nav__contact a:hover { color: var(--gold-400); }
.mobile-nav__contact svg { width: 16px; height: 16px; color: var(--gold-500); flex-shrink: 0; }

.nav-overlay { position: fixed; inset: 0; background: rgba(16,22,27,.55); -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px); z-index: 190; opacity: 0; visibility: hidden; transition: opacity .3s; }
.nav-overlay.is-open { opacity: 1; visibility: visible; }

/* =====================================================================
   7. HERO
   ===================================================================== */
.hero {
    position: relative; color: #fff; overflow: hidden;
    padding-top: calc(var(--header-total) + clamp(44px, 6vw, 86px));
    padding-bottom: clamp(80px, 12vw, 150px);
    background:
        radial-gradient(120% 85% at 84% 8%, rgba(172,148,113,.20), transparent 52%),
        linear-gradient(140deg, var(--navy-900) 0%, var(--navy-800) 52%, #2c3a45 100%);
}
/* ince yatay çizgi dokusu */
.hero::before {
    content: ""; position: absolute; inset: 0; z-index: 0; opacity: .6; pointer-events: none;
    background-image: linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px);
    background-size: 100% 62px;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 30%);
            mask-image: linear-gradient(90deg, transparent, #000 30%);
}
/* monogram filigranı — sağ boşlukta dengeli, odaklı */
.hero__watermark { position: absolute; right: 10%; top: 45%; transform: translateY(-50%); height: 55%; width: auto; opacity: .12; z-index: 0; pointer-events: none; }
/* altın parıltı — monogramın arkasında hale */
.hero__glow { position: absolute; right: 8%; top: 50%; transform: translateY(-50%); width: 520px; height: 520px; border-radius: 50%; background: radial-gradient(circle, rgba(172,148,113,.26), transparent 60%); z-index: 0; pointer-events: none; }
.hero .container { position: relative; z-index: 2; }
.hero__inner { max-width: 780px; position: relative; padding-left: 2rem; }
.hero__inner::before { content: ""; position: absolute; left: 0; top: .5rem; bottom: .5rem; width: 2px; background: linear-gradient(var(--gold-500), rgba(172,148,113,0)); }
.hero .eyebrow { color: var(--gold-400); }
.hero .eyebrow::before { background: var(--gold-400); }
.hero h1 { color: #fff; margin-bottom: 1.6rem; }
.hero__lead { font-size: 1rem; line-height: 1.75; color: #cbd0d1; max-width: 600px; margin-bottom: 2.6rem; font-weight: 300; }
.hero__actions { display: flex; flex-wrap: wrap; gap: 1rem; }

/* künye şeridi (hero altı) */
.hero__meta {
    position: relative; z-index: 2; margin-top: clamp(46px, 7vw, 84px);
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px;
    background: rgba(255,255,255,.10); border: 1px solid rgba(255,255,255,.10);
    border-radius: var(--radius-lg); overflow: hidden;
    box-shadow: rgb(172 148 113 / 15%) 0px 10px 50px;
}
.hero__meta-item { background: rgba(20,28,34,.42); padding: 1.4rem 1.7rem; transition: background .3s var(--ease); }
.hero__meta-item:hover { background: rgba(20,28,34,.62); }
.hero__meta-item .k { display: block; font-size: .68rem; letter-spacing: .16em; text-transform: uppercase; color: var(--gold-400); margin-bottom: .45rem; }
.hero__meta-item .v { display: block; font-family: var(--serif); font-size: 1.45rem; color: #fff; line-height: 1.1; }

/* Monogram amblemi — iç sayfa hero / cta sağ boşluğu */
.hero__column { position: absolute; right: 5%; top: 50%; transform: translateY(-50%); height: 82%; width: auto; opacity: .09; z-index: 0; pointer-events: none; }

/* Sayfa başlığı (iç sayfa hero) */
.page-hero { background: var(--navy-800); color: #fff; text-align: center; padding-top: calc(var(--header-total) + clamp(30px, 4vw, 56px)); padding-bottom: clamp(56px, 8vw, 96px); position: relative; overflow: hidden; }
.page-hero .container { position: relative; z-index: 1; }
.page-hero .eyebrow { color: var(--gold-400); justify-content: center; }
.page-hero .eyebrow::before { background: var(--gold-400); }
.page-hero h1 { color: #fff; }
.page-hero p { color: #cfd3d0; max-width: 620px; margin: 1.1rem auto 0; font-size: 1.1rem; }
.breadcrumb { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .3rem .5rem; margin-top: 1.6rem; font-size: .8rem; color: #9aa0a3; letter-spacing: .03em; }
.breadcrumb a { color: #9aa0a3; transition: color .2s; }
.breadcrumb a:hover { color: var(--gold-400); }
.breadcrumb span { color: var(--gold-400); }
.breadcrumb--left { justify-content: flex-start; margin: 0 0 1.6rem; }

/* Detay sayfası başlığı (sol hizalı, ikonlu) */
.detail-hero { text-align: left; }
.detail-hero__head { display: flex; align-items: center; gap: 1.3rem; }
.detail-hero__icon { width: 66px; height: 66px; flex-shrink: 0; display: grid; place-items: center; background: rgba(172,148,113,.14); border: 1px solid rgba(172,148,113,.3); border-radius: 50%; color: var(--gold-400); }
.detail-hero__icon svg { width: 30px; height: 30px; }
.detail-hero h1 { margin: 0; }
.detail-hero p { margin: 1.4rem 0 0; max-width: 640px; color: #cfd3d0; font-size: 1.08rem; line-height: 1.7; text-align: left; }

/* =====================================================================
   8. KARTLAR
   ===================================================================== */
.area-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 2.4rem 2rem; transition: all .3s var(--ease); position: relative; overflow: hidden; box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 50px;}
.area-card::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 3px; background: var(--gold-500); transform: scaleX(0); transform-origin: left; transition: transform .35s var(--ease); }
.area-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-md); border-color: transparent; }
.area-card:hover::before { transform: scaleX(1); }
.area-card__icon { width: 58px; height: 58px; display: grid; place-items: center; background: var(--paper-2); border-radius: 50%; margin-bottom: 1.5rem; transition: all .3s var(--ease); }
.area-card__icon svg { width: 28px; height: 28px; color: var(--gold-600); }
.area-card:hover .area-card__icon { background: var(--navy-800); }
.area-card:hover .area-card__icon svg { color: var(--gold-400); }
.area-card h3 { font-size: 1.4rem; margin-bottom: .7rem; }
.area-card p { color: var(--ink-soft); font-size: .98rem; margin-bottom: 1.4rem; flex-grow: 1; }
.area-card .link-arrow { font-size: .76rem; }

/* Ekip kartı */
.team-card { text-align: center; }
.team-card__photo { position: relative; aspect-ratio: 1/1; border-radius: var(--radius-lg); overflow: hidden; background: var(--navy-800); margin-bottom: 1.3rem; }
.team-card__photo img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s var(--ease); filter: grayscale(.15); }
.team-card:hover .team-card__photo img { transform: scale(1.05); filter: grayscale(0); }
.team-card__initials { position: absolute; inset: 0; display: grid; place-items: center; font-family: var(--serif); font-size: 3.4rem; color: var(--gold-400); background: linear-gradient(160deg, var(--navy-700), var(--navy-900)); }
.team-card__overlay { position: absolute; inset: auto 0 0 0; padding: 1rem; display: flex; justify-content: center; gap: .7rem; background: linear-gradient(0deg, rgba(28,38,46,.85), transparent); opacity: 0; transform: translateY(10px); transition: all .3s var(--ease); }
.team-card:hover .team-card__overlay { opacity: 1; transform: translateY(0); }
.team-card__overlay a { width: 36px; height: 36px; display: grid; place-items: center; background: rgba(255,255,255,.14); border-radius: 50%; color: #fff; transition: background .25s; }
.team-card__overlay a:hover { background: var(--gold-500); color: var(--navy-900); }
.team-card__overlay svg { width: 16px; height: 16px; }
.team-card h3 { font-size: 1.3rem; margin-bottom: .2rem; }
.team-card__role { font-family: var(--sans); font-size: .78rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--gold-600); }

/* Yazı / makale kartı */
.post-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); overflow: hidden; transition: all .3s var(--ease); }
.post-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-md); }
.post-card__media { aspect-ratio: 16/10; overflow: hidden; background: var(--paper-2); }
.post-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s var(--ease); }
.post-card:hover .post-card__media img { transform: scale(1.05); }
.post-card__media--placeholder { display: grid; place-items: center; background: linear-gradient(160deg, var(--navy-700), var(--navy-900)); }
.post-card__media--placeholder svg { width: 48px; height: 48px; color: var(--gold-400); opacity: .5; }
.post-card__body { padding: 1.7rem; display: flex; flex-direction: column; flex-grow: 1; }
.post-card__meta { font-size: .76rem; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); margin-bottom: .8rem; display: flex; gap: .8rem; align-items: center; }
.post-card__meta .cat { color: var(--gold-600); font-weight: 600; }
.post-card__author { text-transform: none; letter-spacing: .01em; }
.post-card__metasep { opacity: .45; }

/* Sayfalama */
.pagination { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .4rem; margin-top: 3rem; }
.pagination__item, .pagination__nav {
    min-width: 42px; height: 42px; padding: 0 .6rem; display: inline-flex; align-items: center; justify-content: center;
    border: 1px solid var(--line); border-radius: 10px; color: var(--navy-800); font-weight: 600; font-size: .95rem;
    transition: all .2s var(--ease);
}
.pagination__item:hover, .pagination__nav:hover { border-color: var(--gold-500); color: var(--gold-600); }
.pagination__item.is-active { background: var(--navy-800); color: #fff; border-color: var(--navy-800); }
.pagination__gap { padding: 0 .3rem; color: var(--muted); }
.pagination__nav .pg-prev { transform: rotate(180deg); }
.post-card h3 { font-size: 1.35rem; line-height: 1.25; margin-bottom: .7rem; }
.post-card h3 a:hover { color: var(--gold-600); }
.post-card p { color: var(--ink-soft); font-size: .95rem; flex-grow: 1; }
.post-card .link-arrow { margin-top: 1.2rem; font-size: .74rem; }

/* Yayın kartı — kategori yolu etiketi */
.post-card__cats { display: flex; flex-wrap: wrap; align-items: center; gap: .3rem; margin-bottom: .7rem; }
.post-card__cat { font-size: .68rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--gold-600); transition: color .2s; }
.post-card__cat:hover { color: var(--gold-500); }
.post-card__catsep { color: var(--muted); font-size: .7rem; }
.post-card__meta .cat { display: none; }

/* Kart alt bilgi satırı (tarih·yazar + Devamını Oku) — en altta sabit */
.post-card__meta { margin-bottom: 0; }
.post-card__foot { margin-top: 1.3rem; padding-top: 1rem; border-top: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; gap: .6rem 1rem; flex-wrap: wrap; }
.post-card__foot .link-arrow { margin-top: 0; white-space: nowrap; }

/* Görselsiz "metin" kartı — kurumsal, editorial his (altın şerit + soluk § amblemi) */
.post-card--text { position: relative; border-top: 3px solid var(--gold-500); }
.post-card--text .post-card__body { padding-top: 1.9rem; }
.post-card--text .post-card__glyph {
    position: absolute; top: -.34em; right: .1em; z-index: 0;
    font-family: var(--serif); font-weight: 600; font-size: 7.5rem; line-height: 1;
    color: var(--navy-800); opacity: .06; pointer-events: none; user-select: none;
}
.post-card--text .post-card__cats,
.post-card--text h3,
.post-card--text p,
.post-card--text .post-card__foot { position: relative; z-index: 1; }
.post-card--text h3 { font-size: 1.5rem; }

/* Yayın kategori sidebar (ağaç) */
.news-layout { align-items: start; }
.cat-sidebar { position: sticky; top: calc(var(--header-total) + 20px); max-height: calc(100vh - var(--header-total) - 40px); overflow-y: auto; overscroll-behavior: contain; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 1.6rem 1.4rem; }
.cat-sidebar::-webkit-scrollbar { width: 8px; }
.cat-sidebar::-webkit-scrollbar-thumb { background: var(--line); border-radius: 8px; }
.cat-sidebar::-webkit-scrollbar-thumb:hover { background: var(--gold-500); }
.cat-sidebar { scrollbar-width: thin; scrollbar-color: var(--line) transparent; }
.cat-sidebar__head { margin-bottom: 1rem; }
.cat-sidebar__head .eyebrow { margin-bottom: 0; }
.cat-all { display: flex; align-items: center; gap: .55rem; padding: .55rem 0; font-weight: 600; font-size: .92rem; color: var(--navy-800); border-bottom: 1px solid var(--line); margin-bottom: .5rem; }
.cat-all svg { width: 17px; height: 17px; color: var(--gold-500); }
.cat-all.is-active { color: var(--gold-600); }
.cat-tree { display: flex; flex-direction: column; }
.cat-tree--l1 { margin: 0 0 .2rem .35rem; padding-left: .55rem; border-left: 1px solid var(--line); }
.cat-tree--l2 { margin-left: .3rem; padding-left: .55rem; border-left: 1px solid var(--line-soft); }
.cat-row { display: flex; align-items: center; gap: .1rem; }
.cat-toggle { flex-shrink: 0; width: 22px; height: 22px; display: grid; place-items: center; color: var(--muted); border-radius: 4px; transition: background .2s, color .2s; }
.cat-toggle:hover { background: var(--paper-2); color: var(--gold-600); }
.cat-toggle--leaf { visibility: hidden; }
.cat-caret { width: 7px; height: 7px; border-right: 1.6px solid currentColor; border-bottom: 1.6px solid currentColor; transform: rotate(-45deg); transition: transform .25s var(--ease); }
.cat-node.is-open > .cat-row .cat-caret { transform: rotate(45deg); }
.cat-children { display: none; }
.cat-node.is-open > .cat-children { display: block; }
.cat-link { flex: 1; padding: .5rem .3rem; font-size: .92rem; color: var(--ink-soft); transition: color .2s; }
.cat-tree--l0 > .cat-node > .cat-row > .cat-link { font-weight: 600; color: var(--navy-800); font-size: .95rem; }
.cat-link:hover { color: var(--gold-600); }
.cat-link.is-active { color: var(--gold-600); font-weight: 700; }

/* Kategori boş durumu */
.cat-empty { text-align: center; padding: 3.5rem 1.5rem; border: 1px dashed var(--line); border-radius: var(--radius-lg); }
.cat-empty__ico { display: inline-grid; place-items: center; width: 64px; height: 64px; border-radius: 50%; background: var(--paper-2); margin-bottom: 1.2rem; }
.cat-empty__ico svg { width: 28px; height: 28px; color: var(--gold-500); }
.cat-empty h3 { margin-bottom: .6rem; }
.cat-empty p { color: var(--ink-soft); max-width: 420px; margin: 0 auto 1.5rem; }

/* Sidebar arama kutusu */
.cat-search { position: relative; display: flex; align-items: center; margin-bottom: 1.3rem; }
.cat-search svg { position: absolute; left: .85rem; top: 50%; transform: translateY(-50%); width: 16px; height: 16px; color: var(--muted); pointer-events: none; }
.cat-search input { width: 100%; padding: .7rem .8rem .7rem 2.4rem; border: 1px solid var(--line); border-radius: var(--radius); background: var(--paper); font-size: .9rem; transition: border-color .2s, box-shadow .2s; }
.cat-search input:focus { outline: none; border-color: var(--gold-500); box-shadow: 0 0 0 3px rgba(172,148,113,.14); }

/* Nav arama ikonu */
.nav-search { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; color: #eef1f1; border: 1px solid rgba(255,255,255,.16); transition: all .25s var(--ease); }
.nav-search svg { width: 18px; height: 18px; }
.nav-search:hover { color: var(--gold-400); border-color: rgba(172,148,113,.5); }
.site-top.is-scrolled .nav-search { color: var(--navy-800); border-color: var(--line); }
.site-top.is-scrolled .nav-search:hover { color: var(--gold-600); border-color: var(--gold-500); }

/* Arama sayfası */
.search-box { display: flex; align-items: center; gap: .8rem; }
.search-box__field { position: relative; flex: 1; display: flex; }
.search-box__ico { position: absolute; left: 1.1rem; top: 50%; transform: translateY(-50%); width: 20px; height: 20px; color: var(--muted); pointer-events: none; }
.search-box input { width: 100%; padding: 1.1rem 1.1rem 1.1rem 3rem; border: 1px solid var(--line); border-radius: var(--radius-lg); font-size: 1.05rem; background: #fff; transition: border-color .2s, box-shadow .2s; }
.search-box input:focus { outline: none; border-color: var(--gold-500); box-shadow: 0 0 0 3px rgba(172,148,113,.14); }
.search-box .btn { flex-shrink: 0; }
.search-hint { text-align: center; color: var(--muted); margin-top: 2.5rem; }
.search-count { color: var(--ink-soft); margin: 2rem 0 1rem; }
.search-results { display: flex; flex-direction: column; gap: .8rem; }
.search-result { display: flex; align-items: center; gap: 1rem; padding: 1.4rem 1.6rem; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); transition: all .25s var(--ease); }
.search-result:hover { border-color: var(--gold-400); box-shadow: var(--shadow-sm); transform: translateX(3px); }
.search-result__type { display: inline-block; font-size: .68rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--gold-600); margin-bottom: .4rem; }
.search-result__body { flex: 1; }
.search-result__body h3 { font-size: 1.25rem; margin-bottom: .3rem; }
.search-result__body p { color: var(--ink-soft); font-size: .95rem; margin: 0; }
.search-result__arrow { flex-shrink: 0; color: var(--gold-500); }
.search-result__arrow svg { width: 20px; height: 20px; }
@media (max-width: 640px) { .search-box { flex-wrap: wrap; } .search-box__field { flex-basis: 100%; } .search-box .btn { width: 100%; justify-content: center; } }

/* =====================================================================
   9. İSTATİSTİK / GÜVEN BANDI
   ===================================================================== */
.stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2rem; }
.stat { text-align: center; }
.stat__num { font-family: var(--serif); font-size: clamp(2.6rem, 4vw, 3.4rem); font-weight: 600; color: var(--gold-500); line-height: 1; }
.stat__label { font-size: .82rem; letter-spacing: .12em; text-transform: uppercase; color: #b9bdba; margin-top: .7rem; }

/* =====================================================================
   10. İÇERİK (richtext) prose
   ===================================================================== */
.prose { font-size: 1.06rem; line-height: 1.8; color: var(--ink); }
.prose > *:first-child { margin-top: 0; }
.prose h2 { font-size: 1.9rem; margin: 2.4rem 0 1rem; }
.prose h3 { font-size: 1.45rem; margin: 2rem 0 .8rem; }
.prose p { margin-bottom: 1.3rem; }
.prose a { color: var(--gold-600); text-decoration: underline; text-underline-offset: 3px; }
.prose ul, .prose ol { margin: 0 0 1.3rem 1.2rem; }
.prose ul li { list-style: none; position: relative; padding-left: 1.5rem; margin-bottom: .6rem; }
.prose ul li::before { content: ""; position: absolute; left: 0; top: .7em; width: 7px; height: 7px; background: var(--gold-500); border-radius: 50%; }
.prose ol { list-style: decimal; }
.prose ol li { margin-bottom: .6rem; padding-left: .3rem; }
.prose blockquote { border-left: 3px solid var(--gold-500); padding: .4rem 0 .4rem 1.6rem; margin: 1.8rem 0; font-family: var(--serif); font-size: 1.4rem; font-style: italic; color: var(--navy-800); }
.prose img { border-radius: var(--radius-lg); margin: 1.6rem 0; }

/* =====================================================================
   11. AKORDEON (SSS)
   ===================================================================== */
.accordion { border-top: 1px solid var(--line); }
.accordion__item { border-bottom: 1px solid var(--line); }
.accordion__q { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; text-align: left; padding: 1.5rem 0; font-family: var(--serif); font-size: 1.3rem; font-weight: 600; color: var(--navy-900); transition: color .2s; }
.accordion__q:hover { color: var(--gold-600); }
.accordion__icon { flex-shrink: 0; width: 24px; height: 24px; position: relative; }
.accordion__icon::before, .accordion__icon::after { content: ""; position: absolute; background: var(--gold-500); transition: transform .3s var(--ease); }
.accordion__icon::before { top: 11px; left: 3px; right: 3px; height: 2px; }
.accordion__icon::after { left: 11px; top: 3px; bottom: 3px; width: 2px; }
.accordion__item.is-open .accordion__icon::after { transform: rotate(90deg); opacity: 0; }
.accordion__a { max-height: 0; overflow: hidden; transition: max-height .35s var(--ease); }
.accordion__a-inner { padding: 0 0 1.6rem; color: var(--ink-soft); line-height: 1.75; }

/* =====================================================================
   12. FOOTER
   ===================================================================== */
.site-footer {
    position: relative; overflow: hidden;
    background: linear-gradient(180deg, var(--navy-900) 0%, #18211f 100%);
    color: #b7bcbf; font-size: .95rem;
    padding-top: clamp(64px, 8vw, 104px);
}
.site-footer::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(172,148,113,.55), transparent); }
.footer__glow { position: absolute; top: -150px; right: 6%; width: 520px; height: 520px; border-radius: 50%; background: radial-gradient(circle, rgba(172,148,113,.12), transparent 62%); pointer-events: none; z-index: 0; }
.footer__watermark { position: absolute; right: -3%; bottom: -8%; height: 360px; width: auto; opacity: .04; pointer-events: none; z-index: 0; }
.site-footer .container { position: relative; z-index: 1; }

.footer-top { display: grid; grid-template-columns: 1.6fr 1fr 1fr; gap: 3.5rem; padding-bottom: 3.4rem; }
.footer-brand img { height: 68px; margin-bottom: 1.5rem; }
.footer-brand p { color: #9aa0a2; max-width: 350px; line-height: 1.75; }
.footer-social { display: flex; gap: .7rem; margin-top: 1.7rem; }
.footer-social a { width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.16); border-radius: 50%; color: #b7bcbf; transition: all .25s var(--ease); }
.footer-social a:hover { background: var(--gold-500); border-color: var(--gold-500); color: var(--navy-900); transform: translateY(-3px); }
.footer-social svg { width: 16px; height: 16px; }

.footer-col h4 { color: #fff; font-family: var(--sans); font-size: .74rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; margin-bottom: 1.5rem; position: relative; padding-bottom: .8rem; }
.footer-col h4::after { content: ""; position: absolute; left: 0; bottom: 0; width: 28px; height: 2px; background: var(--gold-500); }
.footer-col ul li { margin-bottom: .8rem; }
.footer-col ul a { color: #a4a9ac; transition: color .2s, padding-left .2s; }
.footer-col ul a:hover { color: var(--gold-400); padding-left: 5px; }

/* --- Ofisler: buzlu cam kartlar --- */
.footer-offices-block { padding: 2rem 0; }
.footer-offices-head { display: flex; align-items: center; gap: 1.3rem; margin-bottom: 1.8rem; }
.footer-offices-head h4 { color: #fff; font-family: var(--sans); font-size: .74rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; white-space: nowrap; }
.footer-rule { flex: 1; height: 1px; background: linear-gradient(90deg, rgba(172,148,113,.4), transparent); }
.footer-offices { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.4rem; }
.office-card {
    display: flex; gap: 1rem; padding: 1.6rem 1.5rem;
    background: rgba(255,255,255,.035);
    -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,.09); border-radius: var(--radius-lg);
    transition: transform .3s var(--ease), border-color .3s, background .3s;
}
.office-card:hover { transform: translateY(-4px); border-color: rgba(172,148,113,.42); background: rgba(255,255,255,.06); }
.office-card__icon { flex-shrink: 0; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; background: rgba(172,148,113,.14); border: 1px solid rgba(172,148,113,.3); }
.office-card__icon svg { width: 18px; height: 18px; color: var(--gold-400); }
.office-card__body { display: flex; flex-direction: column; }
.office-card__city { color: #fff; font-family: var(--serif); font-size: 1.3rem; line-height: 1.1; margin-bottom: .5rem; }
.office-card__addr { color: #9aa0a2; font-size: .88rem; line-height: 1.55; }
.office-card__phone { display: inline-flex; align-items: center; gap: .45rem; color: var(--gold-400); font-weight: 600; font-size: .9rem; margin-top: .7rem; }
.office-card__phone svg { width: 15px; height: 15px; }

/* --- Alt bar --- */
.footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-block: 1.9rem; flex-wrap: wrap; border-top: 1px solid rgba(255,255,255,.08); }
.footer-bottom p { margin: 0; color: #7f858a; font-size: .85rem; }
.footer-bottom nav { display: flex; gap: 1.5rem; }
.footer-bottom nav a { color: #7f858a; font-size: .85rem; transition: color .2s; }
.footer-bottom nav a:hover { color: var(--gold-400); }
.footer-bottom__end { display: flex; align-items: center; gap: 1.6rem; flex-wrap: wrap; }

/* Tasarımcı imzası — "go" görünür, hover'da tam logo açılır */
.goreel-sign { display: inline-flex; align-items: center; gap: .55rem; opacity: .4; transition: opacity .4s var(--ease); }
.goreel-sign:hover { opacity: .92; }
.goreel-sign__by { font-size: .68rem; letter-spacing: .14em; text-transform: uppercase; color: #6f757a; transition: color .3s; }
.goreel-sign:hover .goreel-sign__by { color: #9aa0a3; }
.goreel-sign__mark { overflow: hidden; width: 20px; height: 16px; transition: width .55s var(--ease); }
.goreel-sign:hover .goreel-sign__mark { width: 70px; }
.goreel-sign__mark img { height: 16px; width: auto; max-width: none; display: block; }

/* =====================================================================
   13. İLETİŞİM / FORM
   ===================================================================== */
.form-field { margin-bottom: 1.3rem; }
.form-field label { display: block; font-size: .82rem; font-weight: 600; letter-spacing: .04em; color: var(--navy-800); margin-bottom: .5rem; }
.form-field input, .form-field textarea, .form-field select { width: 100%; padding: .95rem 1.1rem; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); transition: border-color .2s, box-shadow .2s; font-size: .98rem; }
.form-field input:focus, .form-field textarea:focus, .form-field select:focus { outline: none; border-color: var(--gold-500); box-shadow: 0 0 0 3px rgba(172,148,113,.15); }
.form-field textarea { min-height: 140px; resize: vertical; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.3rem; }
.form-note { font-size: .85rem; color: var(--muted); }
.form-alert { padding: 1rem 1.2rem; border-radius: var(--radius); margin-bottom: 1.4rem; font-size: .95rem; }
.form-alert--ok { background: #eef6ee; border: 1px solid #cfe6cf; color: #2f6b34; }
.form-alert--err { background: #fbeeee; border: 1px solid #f0d2d2; color: #a53a3a; }

.contact-card { display: flex; gap: 1.1rem; padding: 1.6rem; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); }
.contact-card__icon { flex-shrink: 0; width: 46px; height: 46px; display: grid; place-items: center; background: var(--paper-2); border-radius: 50%; }
.contact-card__icon svg { width: 20px; height: 20px; color: var(--gold-600); }
.contact-card h4 { font-family: var(--sans); font-size: .78rem; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); margin-bottom: .3rem; }
.contact-card p, .contact-card address { font-style: normal; color: var(--ink); font-size: .98rem; line-height: 1.5; }

/* --- Goreel form (cms_form) tema uyarlaması --- */
.goreel-form-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 1.3rem; }
.goreel-form-field { grid-column: span 12; }
.goreel-form-col-6 { grid-column: span 6; }
.goreel-form-col-4 { grid-column: span 4; }
.goreel-form-col-3 { grid-column: span 3; }
.goreel-form-col-8 { grid-column: span 8; }
.goreel-form-label { display: block; font-size: .82rem; font-weight: 600; letter-spacing: .04em; color: var(--navy-800); margin-bottom: .5rem; }
.goreel-form-required { color: var(--gold-600); }
.goreel-form-field input, .goreel-form-field textarea, .goreel-form-field select {
    width: 100%; padding: .9rem 1.05rem; background: #fff; border: 1px solid var(--line);
    border-radius: var(--radius); font-size: .98rem; transition: border-color .2s, box-shadow .2s;
}
.goreel-form-field textarea { min-height: 130px; resize: vertical; }
.goreel-form-field input:focus, .goreel-form-field textarea:focus, .goreel-form-field select:focus {
    outline: none; border-color: var(--gold-500); box-shadow: 0 0 0 3px rgba(172,148,113,.15);
}
.goreel-form-field.has-error input, .goreel-form-field.has-error textarea, .goreel-form-field.has-error select { border-color: #d98a8a; }
.goreel-form-field-error, .goreel-form-error { color: #a53a3a; font-size: .85rem; margin-top: .4rem; }
.goreel-form-help { color: var(--muted); font-size: .82rem; margin-top: .35rem; }
.goreel-form-checkbox-label { display: flex; gap: .6rem; align-items: flex-start; font-size: .9rem; color: var(--ink-soft); font-weight: 400; letter-spacing: 0; cursor: pointer; }
.goreel-form-checkbox-label input { width: auto; margin-top: 3px; accent-color: var(--gold-600); }
.goreel-form-checkbox-label a { color: var(--gold-600); text-decoration: underline; }
.goreel-form-actions { grid-column: 1 / -1; margin-top: .5rem; }
.goreel-form-submit {
    display: inline-flex; align-items: center; gap: .6rem; width: 100%; justify-content: center;
    background: var(--navy-800); color: #fff; font-family: var(--sans); font-weight: 600;
    font-size: .82rem; letter-spacing: .12em; text-transform: uppercase;
    padding: 1.05rem 1.9rem; border-radius: var(--radius); cursor: pointer;
    transition: background .25s var(--ease), transform .25s var(--ease);
}
.goreel-form-submit:hover { background: var(--gold-500); color: var(--navy-900); transform: translateY(-2px); }
.goreel-form-success { background: #eef6ee; border: 1px solid #cfe6cf; color: #2f6b34; padding: 1rem 1.2rem; border-radius: var(--radius); margin-bottom: 1.3rem; }
.goreel-form-error[data-form-error] { background: #fbeeee; border: 1px solid #f0d2d2; padding: 1rem 1.2rem; border-radius: var(--radius); margin-bottom: 1.3rem; }
@media (max-width: 640px) { .goreel-form-col-6, .goreel-form-col-4, .goreel-form-col-3, .goreel-form-col-8 { grid-column: span 12; } }

/* =====================================================================
   14. CTA blok
   ===================================================================== */
.cta-band { background: var(--navy-800); color: #fff; text-align: center; position: relative; overflow: hidden; }
.cta-band__inner { position: relative; z-index: 2; max-width: 680px; margin-inline: auto; }
.cta-band h2 { color: #fff; margin-bottom: 1rem; }
.cta-band p { color: #cfd3d0; font-size: 1.1rem; margin-bottom: 2rem; }
.cta-band .hero__column { opacity: .1; }

/* =====================================================================
   15. Animasyon (reveal)
   ===================================================================== */
.reveal { opacity: 0; transform: translateY(28px); transition: opacity .7s var(--ease), transform .7s var(--ease); }
.reveal.is-visible { opacity: 1; transform: none; }
.reveal[data-delay="1"] { transition-delay: .1s; }
.reveal[data-delay="2"] { transition-delay: .2s; }
.reveal[data-delay="3"] { transition-delay: .3s; }
@media (prefers-reduced-motion: reduce) { .reveal { opacity: 1; transform: none; transition: none; } html { scroll-behavior: auto; } }

/* =====================================================================
   16. Yardımcılar
   ===================================================================== */
.text-center { text-align: center; }
.mt-0 { margin-top: 0; }
.mb-0 { margin-bottom: 0; }
.center-btn { display: flex; justify-content: center; margin-top: 3rem; }

/* =====================================================================
   16b. DİJİTAL KARTVİZİT (standalone /kart/{slug})
   ===================================================================== */
.vcard-body { background: linear-gradient(160deg, var(--paper) 0%, var(--paper-2) 100%); min-height: 100vh; }
.vcard { min-height: 100vh; min-height: 100dvh; display: grid; place-items: center; padding: 20px 15px; position: relative; overflow: hidden; }
.vcard__watermark { position: absolute; right: -80px; top: 50%; transform: translateY(-50%); height: 480px; width: auto; opacity: .04; pointer-events: none; }

.vcard__panel {
    position: relative; z-index: 1; width: 100%; max-width: 400px; overflow: hidden;
    background: linear-gradient(165deg, var(--navy-800), var(--navy-900)); color: #fff;
    border-radius: 18px; padding: 2.6rem 1rem 2rem; text-align: center;
    box-shadow: 0 30px 70px rgba(28,38,46,.28);
}
.vcard__panel::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, transparent, var(--gold-500), transparent); }
.vcard__panel::after { content: ""; position: absolute; right: -60px; top: -60px; width: 180px; height: 180px; border-radius: 50%; background: radial-gradient(circle, rgba(172,148,113,.20), transparent 66%); pointer-events: none; }

.vcard__brand { display: inline-block; position: relative; z-index: 1; }
.vcard__brand img { height: 80px; margin: 0 auto 1.6rem; }

.vcard__avatar { position: relative; z-index: 1; width: 92px; height: 92px; margin: 0 auto 1.3rem; border-radius: 50%; overflow: hidden; display: grid; place-items: center; background: linear-gradient(160deg, var(--navy-700), var(--navy-900)); border: 1px solid rgba(172,148,113,.4); box-shadow: 0 0 0 6px rgba(172,148,113,.08); }
.vcard__avatar img { width: 100%; height: 100%; object-fit: cover; }
.vcard__avatar span { font-family: var(--serif); font-size: 2.6rem; font-weight: 600; color: var(--gold-400); }

.vcard__name { position: relative; z-index: 1; color: #fff; font-size: 1.9rem; line-height: 1.1; margin-bottom: .5rem; }
.vcard__role { position: relative; z-index: 1; font-size: .74rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--gold-400); }
.vcard__loc { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: .4rem; margin-top: .8rem; color: #a9afb1; font-size: .88rem; }
.vcard__loc svg { width: 15px; height: 15px; color: var(--gold-500); }

.vcard__save {
    position: relative; z-index: 1; display: flex; align-items: center; justify-content: center; gap: .6rem;
    margin: 1.8rem 0 1.6rem; padding: 1.05rem 1.5rem; width: 100%;
    background: linear-gradient(180deg, var(--gold-500), var(--gold-600)); color: #fff;
    font-family: var(--sans); font-weight: 700; font-size: .82rem; letter-spacing: .1em; text-transform: uppercase;
    border-radius: 10px; box-shadow: 0 10px 24px rgba(172,148,113,.28); transition: transform .25s var(--ease), box-shadow .25s;
}
.vcard__save svg { width: 18px; height: 18px; }
.vcard__save:hover { transform: translateY(-2px); box-shadow: 0 14px 30px rgba(172,148,113,.36); }

.vcard__actions { position: relative; z-index: 1; display: flex; justify-content: center; flex-wrap: wrap; gap: .1rem; padding-top: 1.4rem; border-top: 1px solid rgba(255,255,255,.1); }
.vcard__act { display: flex; flex-direction: column; align-items: center; gap: .5rem; width: 62px; color: #c2c7c9; transition: color .2s; }
.vcard__act-ico { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; border: 1px solid rgba(172,148,113,.35); background: rgba(255,255,255,.04); color: var(--gold-400); transition: all .25s var(--ease); }
.vcard__act-ico svg { width: 20px; height: 20px; }
.vcard__act-label { font-size: .64rem; }
.vcard__act:hover { color: #fff; }
.vcard__act:hover .vcard__act-ico { background: var(--gold-500); border-color: var(--gold-500); color: var(--navy-900); transform: translateY(-3px); }

.vcard__foot { position: relative; z-index: 1; margin-top: 1.8rem; }
.vcard__foot span { display: block; font-family: var(--serif); font-size: 1.15rem; color: #fff; }
.vcard__foot small { display: block; font-size: .68rem; letter-spacing: .18em; text-transform: uppercase; color: var(--gold-500); margin-top: .2rem; }

/* =====================================================================
   17. RESPONSIVE
   ===================================================================== */
@media (max-width: 1024px) {
    .grid-4 { grid-template-columns: repeat(2, 1fr); }
    .footer-top { grid-template-columns: 1fr 1fr; }
    .footer-brand { grid-column: 1 / -1; }
}
/* Topbar dar alanda: e-postayı gizle, iki telefon numarası yan yana kalsın */
@media (max-width: 1024px) {
    .topbar__right .topbar__email, .topbar__sep--email { display: none; }
    .topbar__right { gap: 1.1rem; }
}
@media (max-width: 900px) {
    :root { --nav-h: 72px; }
    .nav-menu { display: none; }
    .nav-toggle { display: flex; }
    .nav-logo img { height: 80px; }
    .grid-3 { grid-template-columns: repeat(2, 1fr); }
    .stats { grid-template-columns: repeat(2, 1fr); gap: 2.5rem 1rem; }
    .hero__meta { grid-template-columns: repeat(2, 1fr); }
    .footer-offices { grid-template-columns: repeat(2, 1fr); }
    .split { grid-template-columns: 1fr; gap: 40px; }
    .cat-sidebar { position: static; }
    .news-layout .grid-2 { grid-template-columns: repeat(2, 1fr); }
    .topbar__right a span { display: none; }
    .topbar__right .topbar__phone--extra, .topbar__sep--extra { display: none; }
    .topbar__right svg { width: 16px; height: 16px; }
    .hero__watermark {
        right: 6%;
        top: 35%;
        height: 40%;
    }
}
@media (max-width: 640px) {
    :root { --topbar-h: 0px; }
    body { font-size: 16px; }
    .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr; }
    .form-row { grid-template-columns: 1fr; }
    .footer-top { grid-template-columns: 1fr; gap: 2.2rem; }
    .footer-offices { grid-template-columns: 1fr; }
    .footer-bottom { flex-direction: column; text-align: center; }
    .hero__actions { flex-direction: column; }
    .hero__actions .btn { width: 100%; justify-content: center; }
    .hero__inner { padding-left: 1.2rem; }
    .nav-cta { display: none; }
    .topbar { display: none; }
    /* Detay header — mobil */
    .breadcrumb { font-size: .74rem; gap: .25rem .45rem; }
    .breadcrumb--left { margin-bottom: 1.3rem; }
    .detail-hero__head { flex-direction: column; align-items: flex-start; gap: 1rem; }
    .detail-hero__icon { width: 54px; height: 54px; }
    .detail-hero__icon svg { width: 25px; height: 25px; }
    .detail-hero p { font-size: 1.02rem; }
}
