/* Opuze · Kurumsal kimlik sürüm 3 (20.10.2026) — web için tek kaynak.
   Başlık: Opuze Kesit (kesiksiz, İnce 200 / Orta 400 / Kalın 700).
   Gövde: Hanken Grotesk 400/500. Küçük etiket: IBM Plex Mono 400.
   &, @ ve % Opuze Kesit'te yok; Hanken Grotesk'ten gelir. */
@font-face { font-family: "Opuze Kesit"; font-weight: 200; font-display: swap; src: url(fonts/OpuzeKesit-Ince.woff2?v=2) format("woff2"); }
@font-face { font-family: "Opuze Kesit"; font-weight: 400; font-display: swap; src: url(fonts/OpuzeKesit-Orta.woff2?v=2) format("woff2"); }
@font-face { font-family: "Opuze Kesit"; font-weight: 700; font-display: swap; src: url(fonts/OpuzeKesit-Kalin.woff2?v=2) format("woff2"); }

:root {
  --pink: #FF0B63;
  --black: #08050A;
  --white: #FBFAFB;
  --paper: #F2F2F2;
  --pink-ink: #A00030;          /* yalnız beyaz zeminde küçük pembe yazı */
  --ink-2: #140A10;             /* koyu yüzey, siyah ailesinden */

  /* okunurluk: koyu zeminde metin en az %80 opaklıkta */
  --on-dark: rgba(251, 250, 251, .9);
  --on-dark-2: rgba(251, 250, 251, .76);
  --on-dark-line: rgba(251, 250, 251, .18);
  --on-light: #08050A;
  --on-light-2: rgba(8, 5, 10, .74);
  --on-light-line: rgba(8, 5, 10, .14);

  --f-display: "Opuze Kesit", "Hanken Grotesk", system-ui, sans-serif;
  --f-body: "Hanken Grotesk", "Helvetica Neue", Arial, sans-serif;
  --f-mono: "IBM Plex Mono", ui-monospace, Menlo, monospace;

  --fs-body: clamp(1.0625rem, .98rem + .3vw, 1.1875rem);   /* 17 → 19 px */
  --fs-lead: clamp(1.25rem, 1.05rem + .7vw, 1.625rem);     /* 20 → 26 px */
  --fs-mono: .8125rem;                                      /* 13 px */
  --fs-h3: clamp(1.375rem, 1.1rem + 1vw, 2rem);
  --fs-h2: clamp(2.4rem, 1.4rem + 4vw, 5.6rem);
  --fs-h1: clamp(3rem, 1.2rem + 7.4vw, 10rem);

  --gutter: clamp(16px, 4vw, 56px);
  --maxw: 1440px;
  --measure: 62ch;
  --bar-h: 34px;
  --nav-h: 72px;

  --radius-surface: 0;
  --radius-control: 999px;
  /* hareket dili (interaction-design: işlevsel hareket 160-320 ms, giriş en çok 650 ms; tek yumuşatma eğrisi) */
  --ease: cubic-bezier(.2, 0, 0, 1);
  --ease-out: cubic-bezier(0, 0, .2, 1);
  --t-fast: 160ms;
  --t-base: 320ms;
  --t-reveal: 650ms;
}
