/* IVORY HERITAGE (SITE 55) — tokens.css : デザイントークン
   配色: アイボリー #f3efe5 / チャコール #35322c / ブラス #9a7b48 / ウォームグレー #a49c8e
   明（象牙）・12カラム・広い余白・左揃え中心。display=Frank Ruhl Libre / 和文=Noto Serif JP */
:root {
  /* --- palette --- */
  --ivory: #f3efe5;
  --ivory-hi: #faf7ee;
  --ivory-2: #ece6d8;   /* faintly deeper panel */
  --stone: #ddd4c1;
  --charcoal: #35322c;
  --ink: #2c2822;       /* strongest text */
  --brass: #9a7b48;     /* accent (borders / large / decorative) */
  --brass-text: #7a5f30; /* darker brass for text-on-ivory (>=4.5:1) */
  --brass-on-dark: #e4d3ab; /* light champagne for text on charcoal (>=4.9:1) */
  --warm: #a49c8e;
  --muted: #5d574b;     /* secondary text on ivory (>=5:1) */
  --hair: rgba(53, 50, 44, 0.16); /* hairline on ivory */
  --hair-brass: rgba(154, 123, 72, 0.4);

  /* surface roles */
  --bg: var(--ivory);
  --surface: var(--ivory-hi);
  --panel: var(--ivory-2);
  --on-bg: var(--charcoal);
  --on-bg-strong: var(--ink);

  /* --- type --- */
  --font-display: "Frank Ruhl Libre", "Noto Serif JP", serif;
  --font-serif: "Noto Serif JP", "Frank Ruhl Libre", serif;
  --font-sans: "Noto Sans JP", system-ui, sans-serif;
  --font-mono: "Space Mono", "IBM Plex Mono", ui-monospace, monospace;

  /* fluid type — 本文16px下限を厳守 */
  --fs-body: 1rem;            /* 16px */
  --fs-body-lg: 1.0625rem;    /* 17px 長文 */
  --fs-small: 0.875rem;       /* 14px 注釈 */
  --fs-nav: 0.9375rem;        /* 15px */
  --fs-eyebrow: 0.8125rem;    /* 13px 装飾英字ラベルのみ */
  --fs-num: 0.8125rem;        /* 13px セクション番号（装飾） */
  --fs-h1: clamp(2.4rem, 6vw, 4.5rem);
  --fs-h2: clamp(1.8rem, 4vw, 3rem);
  --fs-h3: clamp(1.3rem, 2.4vw, 1.75rem);
  --fs-name: 1.5rem;          /* 24px 詳細人物名 */
  --fs-cast-name: 1.375rem;   /* 22px カード名（16px超） */

  /* --- layout --- */
  --maxw: 1320px;
  --gutter: clamp(1.25rem, 4vw, 4rem);
  --col-gap: clamp(1rem, 2.4vw, 2rem);
  --section-y: clamp(4.5rem, 9vw, 8.5rem);
  --radius: 2px;             /* ほぼ角を立てる（heritage の端正さ） */

  /* --- motion --- */
  --ease: cubic-bezier(.22, 1, .36, 1);
  --dur: 800ms;

  /* --- fixed UI --- */
  --header-h: 74px;
  --cta-h: 64px;
  --z-header: 60;
  --z-drawer: 90;
  --z-cta: 70;
  --z-modal: 100;
}
