/* ==========================================================================
   Av. Tuğçe Alsaç — Bursa Hukuk Bürosu
   Tasarım: Claude Design (lacivert / bordo / altın) — SSR uyarlaması
   ========================================================================== */

:root{
  /* ------------------------------------------------------------------
     PALET — "Sıcak Fildişi & Bronz" (açık, canlı, bronz görsellerle uyumlu).
     NOT: Eski değişken isimleri (--navy, --bordeaux ...) korunuyor ki tüm
     inline stiller tek yerden yeni renkleri alsın. Anlamları güncellendi:
       --navy  = koyu sıcak (espresso) — koyu bantlar & başlıklar
       --bordeaux = terracotta (canlı vurgu)
       --gold  = bronz-altın
       --cream = fildişi (ana açık zemin)
     ------------------------------------------------------------------ */
  --navy:#241A11;        /* koyu espresso — koyu bantlar / başlık metni */
  --navy2:#33261A;       /* biraz açık espresso */
  --bordeaux:#B5532F;    /* terracotta — canlı vurgu (eski bordo yerine) */
  --gold:#C7893B;        /* bronz-altın */
  --cream:#FBF8F2;       /* fildişi — ana açık zemin */
  --ink:#2A2119;         /* metin: koyu kahve */
  --muted:#7A6A55;       /* ikincil metin */

  /* yeni semantik tokenlar */
  --sand:#F1E9DA;        /* açık kum — alternatif düz zemin (zebra) */
  --espresso:#20160D;    /* koyu bant / görsel overlay temeli */
  --espresso2:#33261A;
  --on-dark:#F6EFE2;     /* koyu bant üzerindeki açık metin */
  --terra:#B5532F;       /* terracotta (bordeaux ile aynı) */
  --line:#E7DCCA;        /* açık ayraç / kart kenarı */

  /* Hero — görselin tonuna göre tek yerden ayarlanabilir (warm) */
  --hero-accent:var(--gold);            /* vurgu (çizgi, italik kelime, scroll oku, ışıma) */
  --hero-ink:#F6EFE2;                   /* hero üzerindeki açık metin */
  --hero-overlay-1:rgba(24,16,9,.90);   /* metin tarafı — koyu warm */
  --hero-overlay-2:rgba(24,16,9,.42);   /* karşı taraf — daha açık */
}

*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0;
  font-family:'Manrope',system-ui,sans-serif;
  color:var(--ink);
  background:var(--cream);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
::selection{ background:var(--gold); color:var(--navy); }

a{ color:inherit; }
img{ max-width:100%; display:block; }

/* ---------- Keyframes ---------- */
@keyframes heroDrift{
  0%{ transform:translate3d(0,0,0) scale(1); }
  50%{ transform:translate3d(-3%,2%,0) scale(1.08); }
  100%{ transform:translate3d(0,0,0) scale(1); }
}
@keyframes fadeUp{
  from{ opacity:0; transform:translateY(26px); }
  to{ opacity:1; transform:none; }
}
/* Hero arka plan görseli için yavaş Ken Burns (sadece transform — GPU dostu) */
@keyframes kenBurns{
  0%{ transform:scale(1.02) translate3d(0,0,0); }
  100%{ transform:scale(1.1) translate3d(-1.5%,-1.5%,0); }
}
/* Hero içeriğinin kademeli (staggered) girişi */
@keyframes heroIn{
  from{ opacity:0; transform:translate3d(0,22px,0); }
  to{ opacity:1; transform:none; }
}
/* İnce altın ayraç çizgisinin çizilmesi */
@keyframes lineGrow{
  from{ transform:scaleX(0); }
  to{ transform:scaleX(1); }
}
/* Altın aksanda zarif parıltı (shimmer) */
@keyframes shimmer{
  0%{ background-position:-150% 0; }
  100%{ background-position:250% 0; }
}
/* Scroll-down göstergesinin yumuşak zıplaması */
@keyframes scrollNudge{
  0%,100%{ transform:translateY(0); opacity:.55; }
  50%{ transform:translateY(8px); opacity:1; }
}

/* ---------- Scroll reveal (JS ile tetiklenir) ---------- */
.reveal{ opacity:0; transform:translateY(26px); will-change:opacity,transform; }
.reveal.is-visible{ animation:fadeUp .7s ease both; }

/* Yeni, zenginleştirilmiş reveal sistemi — yön + stagger destekli.
   transition kullanır (transform/opacity) ki --reveal-delay ile kademe verilebilsin. */
[data-reveal]{
  opacity:0;
  transform:translate3d(0,30px,0);
  transition:opacity .8s cubic-bezier(.22,.61,.36,1),
             transform .8s cubic-bezier(.22,.61,.36,1);
  transition-delay:var(--reveal-delay,0ms);
  will-change:opacity,transform;
}
[data-reveal="left"]   { transform:translate3d(-44px,0,0); }
[data-reveal="right"]  { transform:translate3d(44px,0,0); }
[data-reveal="zoom"]   { transform:scale(.94); }
[data-reveal].is-visible{
  opacity:1;
  transform:none;
}
/* Animasyon bitince will-change'i bırak (bellek/kompozisyon yükü düşsün) */
[data-reveal].is-done{ will-change:auto; }

@media (prefers-reduced-motion: reduce){
  .reveal{ opacity:1; transform:none; }
  .reveal.is-visible{ animation:none; }
  [data-reveal]{ opacity:1 !important; transform:none !important; transition:none !important; }
  *{ animation-duration:.001ms !important; animation-iteration-count:1 !important; }
  html{ scroll-behavior:auto; }
}

/* ---------- Tipografi yardımcıları ---------- */
.font-serif{ font-family:'Playfair Display',serif; }

/* ==========================================================================
   NAVBAR
   ========================================================================== */
.nav{
  position:fixed; top:0; left:0; right:0; z-index:60;
  padding:0 clamp(18px,5vw,72px);
  background:transparent;
  border-bottom:1px solid transparent;
  transition:background .4s ease, box-shadow .4s ease, border-color .4s ease;
}
.nav__inner{
  max-width:1200px; margin:0 auto;
  display:flex; align-items:center; justify-content:space-between;
  height:78px; transition:height .4s ease;
}
.nav__brand{ text-decoration:none; display:flex; flex-direction:column; line-height:1; }
.nav__brand-name{ font-family:'Playfair Display',serif; font-weight:700; font-size:20px; letter-spacing:.02em; color:#F4F1EB; transition:color .4s ease; }
.nav__brand-sub{ font-size:10px; letter-spacing:.32em; margin-top:5px; color:rgba(244,241,235,.55); transition:color .4s ease; }

.nav__links{ display:flex; align-items:center; gap:34px; }
.nav__link{
  text-decoration:none; font-size:14.5px; font-weight:500;
  color:#F4F1EB; transition:color .2s, opacity .4s ease;
}
.nav__link:hover{ color:var(--gold); }
.nav__link.is-active{ color:var(--gold); }

.nav__cta{
  text-decoration:none; font-size:14px; font-weight:600; color:#fff;
  background:var(--bordeaux); padding:11px 22px; border-radius:2px;
  letter-spacing:.01em; transition:background .3s ease, transform .2s ease, color .3s ease;
}
.nav__cta:hover{ background:var(--gold); color:var(--navy); transform:translateY(-1px); }

/* scrolled state */
.nav.is-scrolled{
  background:rgba(251,248,242,.90);
  -webkit-backdrop-filter:saturate(160%) blur(14px);
  backdrop-filter:saturate(160%) blur(14px);
  box-shadow:0 12px 30px -18px rgba(36,26,17,.40);
  border-bottom-color:rgba(36,26,17,.10);
}
.nav.is-scrolled .nav__inner{ height:64px; }
.nav.is-scrolled .nav__brand-name{ color:var(--navy); }
.nav.is-scrolled .nav__brand-sub{ color:var(--gold); }
.nav.is-scrolled .nav__link{ color:var(--navy); }
.nav.is-scrolled .nav__link:hover,
.nav.is-scrolled .nav__link.is-active{ color:var(--gold); }

/* hamburger */
.nav__burger{
  display:none; background:none; border:none; cursor:pointer;
  padding:8px; flex-direction:column; gap:5px;
}
.nav__burger span{
  width:24px; height:2px; background:#F4F1EB; display:block;
  transition:transform .3s ease, opacity .2s ease;
}
.nav.is-scrolled .nav__burger span{ background:var(--navy); }
.nav.is-open .nav__burger span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.nav.is-open .nav__burger span:nth-child(2){ opacity:0; }
.nav.is-open .nav__burger span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

/* mobile drawer — akıcı açılış (transform/opacity, display geçişi yok) */
.nav__mobile{
  position:absolute; left:0; right:0; top:100%;
  background:var(--navy);
  padding:14px clamp(18px,5vw,72px) 26px;
  display:flex; flex-direction:column; gap:4px;
  box-shadow:0 24px 40px -18px rgba(0,0,0,.5);
  opacity:0; visibility:hidden;
  transform:translateY(-12px);
  transition:opacity .3s ease, transform .35s cubic-bezier(.22,.61,.36,1), visibility 0s linear .35s;
}
.nav.is-open .nav__mobile{
  opacity:1; visibility:visible; transform:translateY(0);
  transition:opacity .3s ease, transform .35s cubic-bezier(.22,.61,.36,1), visibility 0s;
}
.nav__mobile a{
  text-decoration:none; color:#F4F1EB; font-size:17px; font-weight:500;
  padding:13px 4px; border-bottom:1px solid rgba(255,255,255,.08);
  opacity:0; transform:translateY(8px);
  transition:opacity .35s ease, transform .35s ease, color .2s ease;
}
/* menü açıkken linkler kademeli belirsin */
.nav.is-open .nav__mobile a{ opacity:1; transform:none; }
.nav.is-open .nav__mobile a:nth-child(1){ transition-delay:.05s; }
.nav.is-open .nav__mobile a:nth-child(2){ transition-delay:.10s; }
.nav.is-open .nav__mobile a:nth-child(3){ transition-delay:.15s; }
.nav.is-open .nav__mobile a:nth-child(4){ transition-delay:.20s; }
.nav.is-open .nav__mobile a:nth-child(5){ transition-delay:.25s; }
.nav.is-open .nav__mobile a:nth-child(6){ transition-delay:.30s; }
.nav__mobile a.is-active{ color:var(--gold); }
.nav__mobile a.nav__mobile-cta{
  text-align:center; color:#fff; background:var(--bordeaux);
  font-weight:600; padding:14px; border-radius:2px; margin-top:12px; border-bottom:none;
}

@media (max-width:879px){
  .nav__links{ display:none; }
  .nav__burger{ display:flex; }
}

/* ==========================================================================
   GENEL BÖLÜM YARDIMCILARI
   ========================================================================== */
.section{ position:relative; }
.container{ max-width:1200px; margin:0 auto; }

/* koyu hero arkaplan dokuları */
.hero-bg-drift{
  position:absolute; inset:0;
  background:radial-gradient(120% 120% at 78% 18%, var(--navy2) 0%, var(--navy) 55%);
  will-change:transform; animation:heroDrift 22s ease-in-out infinite;
}
.hero-bg-grid{
  position:absolute; inset:0; opacity:.5;
  background-image:linear-gradient(rgba(201,162,75,.05) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(201,162,75,.05) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(80% 80% at 75% 25%, #000 30%, transparent 75%);
  mask-image:radial-gradient(80% 80% at 75% 25%, #000 30%, transparent 75%);
}

/* butonlar */
.btn-primary{
  text-decoration:none; font-size:15px; font-weight:600; color:#fff;
  background:var(--bordeaux); padding:15px 30px; border-radius:2px;
  transition:background .3s ease, transform .2s ease, color .3s ease;
  display:inline-block;
}
.btn-primary:hover{ background:var(--gold); color:var(--navy); transform:translateY(-2px); }

.btn-ghost{
  text-decoration:none; font-size:15px; font-weight:600; color:#F4F1EB;
  border:1px solid rgba(244,241,235,.3); padding:15px 30px; border-radius:2px;
  transition:border-color .3s ease, background .3s ease; display:inline-block;
}
.btn-ghost:hover{ border-color:var(--gold); background:rgba(201,162,75,.08); }

.link-underline{
  text-decoration:none; display:inline-flex; align-items:center; gap:10px;
  font-size:15px; font-weight:600; color:var(--navy);
  border-bottom:2px solid var(--gold); padding-bottom:6px; transition:gap .25s ease;
}
.link-underline:hover{ gap:16px; }

/* kart hover efektleri */
.card-lift{ transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease; }
.card-lift:hover{
  transform:translateY(-8px);
  box-shadow:0 26px 44px -26px rgba(14,27,51,.4);
  border-color:var(--gold);
}
.card-soft{ transition:box-shadow .35s ease, transform .35s ease, border-color .3s ease; }
.card-soft:hover{
  box-shadow:0 26px 44px -26px rgba(14,27,51,.4);
  transform:translateY(-6px);
  border-color:var(--gold);
}

/* form alanları */
.field{
  background:rgba(255,255,255,.06); border:1px solid rgba(244,241,235,.18);
  border-radius:2px; padding:14px 16px; color:#F4F1EB;
  font-family:inherit; font-size:15px; outline:none; width:100%;
  transition:border-color .25s ease;
}
.field:focus{ border-color:var(--gold); }
.field::placeholder{ color:rgba(244,241,235,.45); }

/* açık zeminli form alanı (iletişim sayfası) */
.field-light{
  background:#fff; border:1px solid #e3ddd0; color:var(--ink);
}
.field-light::placeholder{ color:#9a9484; }
.field-light:focus{ border-color:var(--gold); }

/* ==========================================================================
   ANASAYFA — SİNEMATİK TASARIM
   ========================================================================== */

/* ---- Bölüm yardımcıları (inline stilleri sadeleştirir, tutarlılık sağlar) ---- */
.sec{ position:relative; padding:clamp(70px,9vw,130px) clamp(20px,5vw,72px); }
.sec--band{ padding:clamp(40px,5vw,60px) clamp(20px,5vw,72px); }
.wrap{ max-width:1200px; margin:0 auto; }
.wrap--narrow{ max-width:1100px; margin:0 auto; }
.bg-navy{ background:var(--navy); color:#F4F1EB; }
.bg-navy2{ background:var(--navy2); color:#F4F1EB; }
.bg-cream{ background:var(--cream); }
.bg-white{ background:#fff; }

/* yumuşak bölüm ayraçları */
.sec--edge-top{ border-top:1px solid rgba(201,162,75,.18); }

/* başlık üstü etiket (eyebrow) */
.eyebrow{ display:inline-flex; align-items:center; gap:12px; margin-bottom:20px; }
.eyebrow span.txt{ font-size:12.5px; letter-spacing:.24em; font-weight:600; }
.eyebrow i{ width:30px; height:1px; display:block; }
.eyebrow--bordeaux span.txt{ color:var(--bordeaux); }
.eyebrow--bordeaux i{ background:var(--bordeaux); }
.eyebrow--gold span.txt{ color:var(--gold); }
.eyebrow--gold i{ background:var(--gold); }
.eyebrow--center{ justify-content:center; }

.h-display{
  font-family:'Playfair Display',serif; font-weight:700;
  font-size:clamp(28px,3.8vw,46px); line-height:1.15; margin:0 0 16px;
  letter-spacing:-.01em;
}

/* ==========================================================================
   HERO — tam ekran sinematik açılış
   ========================================================================== */
.hero{
  position:relative;
  min-height:100vh;            /* fallback */
  min-height:100svh;           /* mobil adres çubuğu dahil doğru yükseklik */
  display:flex; align-items:center;
  overflow:hidden;
  color:var(--hero-ink);
  /* GÖRSEL YOKKEN graceful fallback: paletten koyu gradient */
  background:
    radial-gradient(125% 120% at 78% 12%, var(--navy2) 0%, var(--navy) 52%, #060c18 100%);
  isolation:isolate;
}

/* arka plan görseli katmanı */
.hero__media{ position:absolute; inset:0; z-index:-3; overflow:hidden; }
.hero__img{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover; object-position:center;
  /* yavaş Ken Burns — sadece transform */
  transform:scale(1.02);
  will-change:transform;
  animation:kenBurns 22s ease-in-out infinite alternate;
}
/* görsel 404 olursa JS (onerror) bu sınıfı ekler → gradient fallback görünür */
.hero__media.is-empty .hero__img{ display:none; }

/* okunabilirlik için koyu degrade overlay (hangi görsel gelirse gelsin metin okunur) */
.hero__overlay{
  position:absolute; inset:0; z-index:-2; pointer-events:none;
  background:
    linear-gradient(100deg, var(--hero-overlay-1) 0%, rgba(8,15,30,.78) 34%, var(--hero-overlay-2) 100%),
    linear-gradient(0deg, rgba(6,11,22,.85) 0%, rgba(6,11,22,.10) 42%, rgba(6,11,22,.45) 100%);
}

/* ince altın grid dokusu (dekoratif derinlik) */
.hero__grid{
  position:absolute; inset:0; z-index:-1; opacity:.4; pointer-events:none;
  background-image:linear-gradient(rgba(201,162,75,.06) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(201,162,75,.06) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(78% 78% at 72% 30%, #000 28%, transparent 76%);
  mask-image:radial-gradient(78% 78% at 72% 30%, #000 28%, transparent 76%);
}
/* yumuşak altın ışıma (parallax katmanı — masaüstünde JS ile hafif kayar) */
.hero__glow{
  position:absolute; top:-180px; right:-140px; z-index:-1;
  width:560px; height:560px; border-radius:50%; pointer-events:none;
  /* fallback (eski tarayıcı): marka altını */
  background:radial-gradient(circle, rgba(201,162,75,.20), transparent 65%);
  /* modern: seçilen hero accent tonuna göre ışıma — görselle uyumlu */
  background:radial-gradient(circle, color-mix(in srgb, var(--hero-accent) 22%, transparent), transparent 65%);
  will-change:transform;
}

/* hero içeriği */
.hero__inner{
  position:relative; z-index:1;
  width:100%; max-width:1200px; margin:0 auto;
  padding:clamp(110px,14vh,160px) clamp(20px,5vw,72px) clamp(96px,12vh,130px);
}
.hero__col{ max-width:680px; }

.hero__eyebrow{ display:inline-flex; align-items:center; gap:14px; margin-bottom:26px; }
.hero__eyebrow .txt{ font-size:12.5px; letter-spacing:.28em; font-weight:600; color:var(--hero-accent); }
/* parıltılı altın çizgi (transform-only glint) */
.hero__line{
  position:relative; width:46px; height:2px; flex:none; overflow:hidden;
  background:var(--hero-accent); opacity:.9;
}
.hero__line::after{
  content:""; position:absolute; top:0; bottom:0; left:0; width:45%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);
  transform:translateX(-130%);
  animation:glint 5s ease-in-out infinite;
}
@keyframes glint{
  0%{ transform:translateX(-130%); }
  55%,100%{ transform:translateX(330%); }
}

.hero__title{
  font-family:'Playfair Display',serif; font-weight:700;
  font-size:clamp(38px,6.4vw,74px); line-height:1.06; letter-spacing:-.015em;
  margin:0 0 24px;
}
.hero__title span{ display:block; }
.hero__title em{ font-style:italic; color:var(--hero-accent); }

.hero__lead{
  font-size:clamp(15.5px,1.6vw,18.5px); line-height:1.72;
  color:rgba(244,241,235,.82); max-width:520px; margin:0 0 38px;
}
.hero__actions{ display:flex; flex-wrap:wrap; gap:14px; }

/* hero içeriğinin kademeli girişi (sayfa yüklenince) */
.hero [data-hero]{
  opacity:0;
  animation:heroIn .9s cubic-bezier(.22,.61,.36,1) both;
  animation-delay:calc(var(--d,0) * .12s + .15s);
}

/* scroll-down göstergesi */
.hero__scroll{
  position:absolute; left:50%; bottom:26px; transform:translateX(-50%);
  z-index:2; display:flex; flex-direction:column; align-items:center; gap:8px;
  text-decoration:none; color:var(--hero-ink);
  opacity:0; animation:heroIn .9s ease both; animation-delay:1s;
}
.hero__scroll .lbl{ font-size:10.5px; letter-spacing:.26em; color:rgba(244,241,235,.6); }
.hero__scroll .mouse{ color:var(--hero-accent); animation:scrollNudge 1.8s ease-in-out infinite; }

/* ==========================================================================
   STAT ŞERİDİ
   ========================================================================== */
.stats{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:clamp(24px,4vw,40px);
}
.stat{ text-align:center; }
.stat__num{
  font-family:'Playfair Display',serif; font-weight:700;
  font-size:clamp(20px,2.3vw,28px); color:var(--gold); line-height:1.15;
}
.stat__lbl{ font-size:13.5px; letter-spacing:.04em; color:rgba(244,241,235,.7); margin-top:10px; }

/* ==========================================================================
   ALTIN AYRAÇ (çizilen ince çizgi) — bölüm başlıklarında kullanılabilir
   ========================================================================== */
.rule-gold{
  height:1px; width:100%; background:linear-gradient(90deg,var(--gold),rgba(201,162,75,.15));
  transform:scaleX(0); transform-origin:left center;
  transition:transform 1s cubic-bezier(.22,.61,.36,1);
}
.is-visible .rule-gold,
.rule-gold.is-visible{ transform:scaleX(1); }

/* ==========================================================================
   GÖRSEL ÇERÇEVESİ (about) — katmanlı altın çerçeve
   ========================================================================== */
.framed{ position:relative; }
.framed::before{
  content:""; position:absolute; inset:-14px 14px 14px -14px;
  border:1px solid var(--gold); border-radius:3px; opacity:.5;
}
.framed__inner{
  position:relative; aspect-ratio:4/5; max-width:440px; border-radius:3px;
  overflow:hidden; background:linear-gradient(160deg,#e8e3d8,#d8d1c2);
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px;
}
.framed__inner img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }

/* ==========================================================================
   SÜREÇ — adımları birbirine bağlayan, çizilen çizgi
   ========================================================================== */
.process{ position:relative; display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:clamp(20px,3vw,32px); }
.process__line{
  position:absolute; left:7px; right:7px; top:27px; height:1px;
  background:linear-gradient(90deg,var(--bordeaux),rgba(181,83,47,.2));
  transform:scaleX(0); transform-origin:left center;
  transition:transform 1.1s cubic-bezier(.22,.61,.36,1) .15s;
}
.process.is-visible .process__line{ transform:scaleX(1); }
.process__step{ position:relative; }
.process__num{ font-family:'Playfair Display',serif; font-size:54px; font-weight:700; color:rgba(181,83,47,.18); line-height:1; }
.process__dot{ width:14px; height:14px; border-radius:50%; background:var(--bordeaux); margin:14px 0 18px; position:relative; z-index:1; }
/* mobilde çizgi gizlensin (dikey diziliyor) */
@media (max-width:639px){ .process__line{ display:none; } }

/* ==========================================================================
   İLKE / DEĞER kutucukları (why-us)
   ========================================================================== */
.values{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:clamp(24px,3vw,40px); }
.value__ic{
  width:52px; height:52px; border:1px solid rgba(201,162,75,.4); border-radius:50%;
  display:flex; align-items:center; justify-content:center; margin-bottom:20px;
  transition:border-color .35s ease, transform .35s ease;
}
.value:hover .value__ic{ border-color:var(--gold); transform:translateY(-3px); }

/* ==========================================================================
   İLETİŞİM kanalları
   ========================================================================== */
.contact-line{ text-decoration:none; display:flex; align-items:center; gap:14px; color:#F4F1EB; }
.contact-line .ic{
  width:44px; height:44px; border:1px solid rgba(201,162,75,.4); border-radius:50%;
  display:flex; align-items:center; justify-content:center; flex:none;
  transition:border-color .3s ease, background .3s ease;
}
.contact-line:hover .ic{ border-color:var(--gold); background:rgba(201,162,75,.08); }

/* ==========================================================================
   MOBİL İNCE AYAR — sürekli efektleri hafiflet
   ========================================================================== */
@media (max-width:768px){
  /* mobilde Ken Burns daha yavaş ve daha küçük genlikli (pil/akıcılık) */
  .hero__img{ animation-duration:30s; }
  /* hero overlay'i mobilde daha eşit-koyu yap (dar ekranda her zaman okunur) */
  .hero__overlay{
    background:
      linear-gradient(180deg, rgba(24,16,9,.78) 0%, rgba(24,16,9,.52) 40%, rgba(18,12,6,.9) 100%);
  }
  .hero__inner{ padding-top:clamp(116px,20vh,150px); }
  .hero__lead{ max-width:none; }
}

@media (prefers-reduced-motion: reduce){
  /* sürekli çalışan tüm büyük efektleri kapat */
  .hero__img{ animation:none; transform:scale(1.02); }
  .hero__line::after{ animation:none; display:none; }
  .hero__scroll .mouse{ animation:none; }
  .hero [data-hero]{ animation:none; opacity:1; }
  .hero__scroll{ animation:none; opacity:1; }
  .rule-gold,
  .process__line{ transition:none; transform:none; }
}

/* ==========================================================================
   ZEBRA — düz renk ↔ görselli bant sistemi
   ========================================================================== */
.bg-sand{ background:var(--sand); }

/* Görselli bant: arka planda cover görsel; okunabilirlik için üstüne koyu warm
   overlay biner. Görsel yoksa koyu espresso zemine düşer (graceful).
   NOT: background-attachment:fixed kasıtlı kullanılmıyor — her scroll karesinde
   repaint'e yol açıp jank yaratıyordu; normal (scroll) cover GPU dostu. */
.band--img{
  position:relative; color:var(--on-dark);
  background-color:var(--espresso);                 /* fallback (görsel yoksa) */
  background-image:var(--band-img, url('/images/sections/section-bg.webp'));
  background-size:cover; background-position:center;
  background-attachment:scroll;
  isolation:isolate;
}
/* okunabilirlik için koyu warm overlay */
.band--img::before{
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background:linear-gradient(180deg, rgba(24,16,9,.86) 0%, rgba(24,16,9,.74) 50%, rgba(18,12,6,.9) 100%);
}
.band--img > *{ position:relative; z-index:1; }

/* koyu bant içeriği için açık metin uyarlamaları (dekoratif/aksan — güvenli) */
.band--img .eyebrow--bordeaux span.txt{ color:var(--gold); }
.band--img .eyebrow--bordeaux i{ background:var(--gold); }
.band--img .process__num{ color:rgba(199,137,59,.32); }
.band--img .process__line{ background:linear-gradient(90deg,var(--gold),rgba(199,137,59,.2)); }
.band--img .process__dot{ background:var(--gold); }
.band--img .value__ic{ border-color:rgba(199,137,59,.5); }

/* ==========================================================================
   PAGE-HEAD — iç sayfaların koyu, görselli başlık bandı (breadcrumb + başlık)
   ========================================================================== */
.page-head{
  position:relative; overflow:hidden;
  color:var(--on-dark);
  background:radial-gradient(125% 130% at 78% 10%, var(--espresso2) 0%, var(--espresso) 60%, #140d06 100%);
  padding:clamp(128px,15vw,176px) clamp(20px,5vw,72px) clamp(52px,7vw,84px);
  isolation:isolate;
}
.page-head__media{ position:absolute; inset:0; z-index:-3; }
.page-head__media img{ width:100%; height:100%; object-fit:cover; object-position:center; }
.page-head__overlay{
  position:absolute; inset:0; z-index:-2; pointer-events:none;
  background:linear-gradient(180deg, rgba(20,13,6,.72) 0%, rgba(20,13,6,.60) 45%, rgba(20,13,6,.86) 100%);
}
/* görsel yokken overlay'i biraz hafiflet (gradient zaten koyu) */
.page-head:not(.has-img) .page-head__overlay{ background:transparent; }
.page-head__grid{
  position:absolute; inset:0; z-index:-1; opacity:.35; pointer-events:none;
  background-image:linear-gradient(rgba(199,137,59,.06) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(199,137,59,.06) 1px,transparent 1px);
  background-size:60px 60px;
  -webkit-mask-image:radial-gradient(80% 80% at 75% 25%, #000 30%, transparent 78%);
  mask-image:radial-gradient(80% 80% at 75% 25%, #000 30%, transparent 78%);
}
.page-head__inner{ position:relative; z-index:1; max-width:1200px; margin:0 auto; }
.page-head__inner.is-narrow{ max-width:820px; }
.page-head .crumb{ font-size:13px; letter-spacing:.04em; color:rgba(246,239,226,.62); margin-bottom:18px; }
.page-head .crumb a{ color:rgba(246,239,226,.62); text-decoration:none; transition:color .2s; }
.page-head .crumb a:hover{ color:var(--gold); }
.page-head .crumb span{ color:var(--gold); }
.page-head__title{
  font-family:'Playfair Display',serif; font-weight:700;
  font-size:clamp(32px,5.2vw,60px); line-height:1.08; letter-spacing:-.01em; margin:0 0 18px;
}
.page-head__sub{
  font-size:clamp(15px,1.6vw,18px); line-height:1.7;
  color:rgba(246,239,226,.78); max-width:600px; margin:0;
}
.page-head__badge{
  display:inline-block; font-size:11px; letter-spacing:.08em; font-weight:600;
  color:var(--espresso); background:var(--gold); padding:6px 13px; border-radius:2px; margin-bottom:20px;
}
/* page-head girişleri (hafif fade-up, tek seferlik) */
.page-head [data-hero]{ opacity:0; animation:heroIn .8s cubic-bezier(.22,.61,.36,1) both; animation-delay:calc(var(--d,0) * .1s + .1s); }
@media (prefers-reduced-motion: reduce){ .page-head [data-hero]{ animation:none; opacity:1; } }
