/* ==========================================================================
   engladly Design System  (Warm Professional)
   1枚で全ページのブランド統一。各HTMLの </head> 直前で読み込む（インライン<style>より後＝こちらが勝つ）。
   微調整はこのファイルだけで全ページに反映される。
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@500;600;700&display=swap');

:root{
  --ink:#1B2436;
  --primary:#2E3B84; --primary-2:#3D4EAC; --primary-dark:#23306E;
  --accent:#C2872B; --accent-soft:#F3E7CD; --accent-dark:#9C6B1C;
  --bg:#F7F6F2; --surface:#FFFFFF; --line:#E8E5DD; --muted:#5C6373;
}

/* ---- 温かみのある背景（冷たいgray→温白） ---- */
body.bg-gray-50, body.bg-slate-50, .bg-gray-50{ background-color:var(--bg) !important; }
.bg-slate-50{ background-color:#F1F0EB !important; }

/* ---- 見出しに明朝（個人専門家の品と権威） ---- */
.serif{ font-family:'Noto Serif JP',serif; }
article h1, .prose h1, .prose h2, .prose h3{ font-family:'Noto Serif JP',serif; letter-spacing:.01em; }
/* h2下線をアクセント金に（インラインの #2563EB を上書き） */
.prose h2{ border-bottom-color:var(--accent) !important; }

/* ---- ブランドカラー：blue → 濃インディゴ／warm への一括リマップ ---- */
.text-blue-600{ color:var(--primary) !important; }
.text-blue-700, .text-blue-800{ color:var(--primary-dark) !important; }
.text-blue-500{ color:var(--primary-2) !important; }
.text-blue-400, .text-blue-300{ color:#8E97C9 !important; }
.text-blue-100{ color:#C7CCEA !important; }

.bg-blue-600{ background-color:var(--primary) !important; }
.bg-blue-700{ background-color:var(--primary-dark) !important; }
.bg-blue-500{ background-color:var(--primary-2) !important; }
.bg-blue-50{ background-color:#EEF0F8 !important; }
.bg-blue-200{ background-color:#C7CCEA !important; }

.border-blue-600{ border-color:var(--primary) !important; }
.border-blue-500{ border-color:var(--primary-2) !important; }
.border-blue-200{ border-color:#D4D8EC !important; }
.border-blue-100{ border-color:#E6E8F3 !important; }

.hover\:bg-blue-700:hover{ background-color:var(--primary-dark) !important; }
.hover\:bg-blue-600:hover{ background-color:var(--primary) !important; }
.hover\:bg-blue-50:hover{ background-color:#EEF0F8 !important; }
.hover\:text-blue-600:hover{ color:var(--primary) !important; }
.hover\:text-blue-300:hover{ color:#C7CCEA !important; }
.hover\:border-blue-300:hover{ border-color:var(--primary-2) !important; }

/* グラデーション（from-blue-500 / to-indigo-600 等）も同系に寄せる */
.from-blue-500{ --tw-gradient-from:var(--primary-2) var(--tw-gradient-from-position) !important; --tw-gradient-to:rgba(61,78,172,0) var(--tw-gradient-to-position) !important; --tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to) !important; }
.to-indigo-600{ --tw-gradient-to:var(--primary-dark) var(--tw-gradient-to-position) !important; }

/* ダーク面（footer等）は ink 寄りに統一 */
.bg-slate-800{ background-color:#222a3d !important; }
.bg-slate-900, .bg-gray-900{ background-color:var(--ink) !important; }

/* ---- 新マークアップ用のブランド部品（任意で使用） ---- */
.eyebrow{ font-size:.75rem; font-weight:700; letter-spacing:.16em; color:var(--accent-dark); text-transform:uppercase; }
.text-accent{ color:var(--accent-dark) !important; }
.bg-accent{ background-color:var(--accent) !important; color:#fff !important; }
.bg-accent-soft{ background-color:var(--accent-soft) !important; }
.border-accent{ border-color:var(--accent) !important; }
.btn-accent{ background:var(--accent); color:#fff; transition:.15s; }
.btn-accent:hover{ background:var(--accent-dark); }
.accent-rule{ width:46px; height:4px; border-radius:2px; background:var(--accent); }

/* カードの当たりをやわらかく（共通カードに自然に効く） */
.rounded-xl, .rounded-2xl{ transition:box-shadow .18s, border-color .18s, transform .18s; }
