/* ═══════════════════════════════════════════
   BASE — reset, design token'lar, tipografi
   Yeni bir kimlik için sadece :root
   değişkenlerini değiştirmen yeterli.
   ═══════════════════════════════════════════ */

:root {
  /* ── Renkler: marka altını logodan (#c09651),
        slogan vektöründeki ton #be8c43 ── */
  --bg:        #faf6f0;   /* krem zemin */
  --bg-alt:    #f3ebdf;
  --dark:      #16110b;   /* espresso siyahı (hero + footer) */
  --dark-soft: #221a11;
  --ink:       #1c150d;   /* ana metin */
  --ink-soft:  #6d5c47;   /* ikincil metin */
  --accent:    #8a6427;   /* koyu altın — krem üstünde okunur */
  --accent-2:  #c09651;   /* marka altını */
  --accent-ink:#fffaf3;   /* accent üzeri metin */
  --line:      #e6dac7;
  --cream:     #f7efe3;

  /* ── Tipografi ── */
  --font-display: "Fraunces", "Playfair Display", Georgia, "Times New Roman", serif;
  --font-body:    "Inter", "Segoe UI", system-ui, sans-serif;
  --fs-h1: clamp(2.6rem, 7vw, 5.2rem);
  --fs-h2: clamp(1.8rem, 4vw, 3rem);
  --fs-h3: 1.15rem;
  --fs-body: 1rem;
  --fs-small: 0.875rem;

  /* ── Ölçüler ── */
  --container: 1180px;
  --radius: 14px;
  --section-pad: clamp(4rem, 9vw, 8rem);
  --header-h: 74px;

  /* ── Geçişler ── */
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
}

/* ── Reset ── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

/* Yumuşak kaydırmayı Lenis yapıyor; native davranışı kapalı tut.
   Lenis yoksa (JS kapalı) tarayıcının kendi smooth'u devreye girer. */
html { scroll-padding-top: var(--header-h); }
html:not(.lenis) { scroll-behavior: smooth; }

body {
  font-family: var(--font-body);
  font-size: var(--fs-body);
  line-height: 1.7;
  color: var(--ink);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

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

a { color: inherit; }

button { font: inherit; cursor: pointer; border: none; background: none; color: inherit; }

h1, h2, h3 {
  font-family: var(--font-display);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.01em;
}

ol, ul { list-style: none; }

::selection { background: var(--accent-2); color: var(--dark); }

/* ── Erişilebilirlik ── */
:focus-visible {
  outline: 2px solid var(--accent-2);
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}

/* ── Yardımcılar ── */
.container {
  width: min(100% - 2.5rem, var(--container));
  margin-inline: auto;
}
