/* =========================================================
   SOLICIO — Design Tokens
   ブランドパープル #88619A を軸にしたミニマル・洗練トークン
   ========================================================= */

:root {
  /* --- Brand / Color --- */
  --c-primary:        #88619A;  /* ブランドパープル */
  --c-primary-dark:   #6E4E7E;  /* ホバー・濃い面・フッター */
  --c-primary-light:  #F3EFF6;  /* 淡い面・引用ボックス */
  --c-primary-tint:   #EDE6F1;  /* もう一段濃い淡色 */

  --c-text:           #1F2329;  /* 本文（純黒は避ける） */
  --c-subtext:        #5A6068;  /* 補足・キャプション */
  --c-text-faint:     #8A8F97;  /* さらに薄いテキスト */

  --c-base:           #FFFFFF;  /* ベース背景 */
  --c-bg-alt:         #FAFAFB;  /* 交互セクション */
  --c-border:         #E5E3EA;  /* 区切り線・カード枠 */
  --c-border-soft:    #EEEDF1;  /* さらに淡い枠 */

  /* RGB（透過合成用） */
  --c-primary-rgb:    136, 97, 154;

  /* --- Typography --- */
  --font-heading: "Zen Kaku Gothic New", "Noto Sans JP", system-ui, sans-serif;
  --font-body:    "Noto Sans JP", system-ui, -apple-system, "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  --font-en:      "Zen Kaku Gothic New", "Noto Sans JP", system-ui, sans-serif;

  /* Type scale (fluid) */
  --fs-hero:    clamp(2.4rem, 1.4rem + 4.4vw, 4.4rem);
  --fs-h2:      clamp(1.85rem, 1.2rem + 2.4vw, 2.85rem);
  --fs-h3:      clamp(1.25rem, 1.0rem + 1.0vw, 1.6rem);
  --fs-lead:    clamp(1.05rem, 0.98rem + 0.4vw, 1.25rem);
  --fs-body:    1.0625rem;   /* 17px */
  --fs-small:   0.9375rem;   /* 15px */
  --fs-eyebrow: 0.8125rem;   /* 13px */

  --lh-tight:   1.42;
  --lh-body:    1.95;
  --lh-lead:    1.85;

  /* --- Spacing / Layout --- */
  --container:    1180px;
  --container-narrow: 880px;
  --gutter:       clamp(20px, 5vw, 40px);
  --section-y:    clamp(76px, 9vw, 138px);
  --section-y-sm: clamp(56px, 7vw, 92px);

  /* --- Radius --- */
  --r-sm:  8px;
  --r-md:  14px;
  --r-lg:  22px;
  --r-pill: 999px;

  /* --- Shadow（控えめ） --- */
  --sh-sm:  0 1px 2px rgba(31, 35, 41, 0.04);
  --sh-md:  0 6px 24px -8px rgba(31, 35, 41, 0.10);
  --sh-lg:  0 20px 56px -20px rgba(var(--c-primary-rgb), 0.28);

  /* --- Motion --- */
  --ease:     cubic-bezier(0.22, 0.61, 0.36, 1);
  --dur:      0.55s;

  /* --- Header --- */
  --header-h: 84px;
}

/* 見出しフォント切替（Tweaks） */
:root[data-heading="plex"]   { --font-heading: "IBM Plex Sans JP", "Noto Sans JP", sans-serif; --font-en: "IBM Plex Sans JP", sans-serif; }
:root[data-heading="mincho"] { --font-heading: "Shippori Mincho B1", "Noto Serif JP", serif; }
:root[data-heading="zen"]    { --font-heading: "Zen Kaku Gothic New", "Noto Sans JP", sans-serif; }

/* アクセントカラー切替（Tweaks） */
:root[data-accent="indigo"] { --c-primary:#4F4C9B; --c-primary-dark:#3E3B7E; --c-primary-light:#EEEEF6; --c-primary-tint:#E3E2F1; --c-primary-rgb:79,76,155; }
:root[data-accent="teal"]   { --c-primary:#2F7E78; --c-primary-dark:#256661; --c-primary-light:#E9F4F2; --c-primary-tint:#D9ECE9; --c-primary-rgb:47,126,120; }
:root[data-accent="plum"]   { --c-primary:#9A4F73; --c-primary-dark:#7E3E5C; --c-primary-light:#F6EDF1; --c-primary-tint:#F0E0E8; --c-primary-rgb:154,79,115; }
