@charset "UTF-8";

/*
 * オカンの駆け込み寺® 本番配色：ペタル・ローズ
 * 2026-08-17 村上さん決定。A案ローズを基準配色へ統合。
 *
 * 判断軸（7/20 MTG）：「行政・企業が見て、講演を頼みたくなる」品格。
 * ペールトーンで明るく軽く、パステルに寄せすぎない。
 * メイン＝くすみセージ／深色＝フォレスト／差し色＝ペタル・ローズ＋ウォームベージュ。
 *
 * 使い方：style.css（レイアウト・共通コンポーネント）の後に読み込む。
 * body に class="theme-sage" を付けること。
 */
:root {
  --tone-deep: #2E4A3A;
  --tone-main: #5C8A67;
  --tone-mid:  #9DBBA0;
  --tone-soft: #C7DCC4;
  --tone-pale: #EEF5E9;
  --tone-deep-rgb: 46, 74, 58;
  --tone-soft-rgb: 199, 220, 196;
  --tone-pale-rgb: 238, 245, 233;

  --accent:       #9E5260;
  --accent-hover: #8C4352;
  --accent-soft:  #F3DCDD;
  --sand:         #EDDCCB;
  --accent-soft-rgb: 243, 220, 221;
  --sand-rgb: 237, 220, 203;
  --cta-bg: var(--accent);
  --cta-hover: var(--accent-hover);

  --ivory:       #F4EFE4;
  --ivory-light: #F9F5EC;
  --paper:       #FFFDF7;
  --ink:         #1F2620;
  --muted:       #57635A;
  --ink-rgb:     31, 38, 32;
  --cobalt: var(--tone-main);
  --coral:  var(--accent);
  --oxblood: var(--tone-deep);
  --leaf:   var(--tone-mid);
  --yellow: var(--sand);
  --pink:   var(--accent-soft);
  --line:   rgba(31, 38, 32, 0.2);

  --header-surface: rgba(249, 245, 236, 0.94);
  --hero-shade-strong: rgba(238, 245, 233, 0.96);
  --hero-shade-mobile: rgba(238, 245, 233, 0.98);
}

.theme-sage { background: var(--ivory-light); }
.theme-sage .site-header {
  background: var(--header-surface);
  border-bottom-color: rgba(var(--tone-deep-rgb), 0.16);
}
.theme-sage .hero-shade {
  background: linear-gradient(90deg, var(--hero-shade-strong) 0%, rgba(var(--tone-pale-rgb), 0.9) 42%, rgba(var(--tone-pale-rgb), 0.46) 62%, rgba(var(--tone-pale-rgb), 0) 78%);
}
.theme-sage .hero-description { color: var(--muted); }

.theme-sage .routes-heading { background: var(--tone-pale); }
.theme-sage .about { color: var(--ink); background: var(--tone-soft); }
.theme-sage .about-copy .section-label,
.theme-sage .child-paths b { color: var(--ink); }
.theme-sage .about-copy > p:not(.section-label):not(.about-lead) { color: rgba(var(--ink-rgb), 0.76); }
.theme-sage .child-paths { border-color: rgba(var(--ink-rgb), 0.32); }
.theme-sage .child-paths li { border-color: rgba(var(--ink-rgb), 0.32); }
.theme-sage .child-paths strong { color: var(--ink); }
.theme-sage .photo-caption { background: var(--sand); }
.theme-sage .switch-one   { color: var(--ink); background: var(--tone-soft); }
.theme-sage .switch-two   { color: var(--ink); background: var(--sand); }
.theme-sage .switch-three { color: var(--ink); background: var(--accent-soft); }
.theme-sage .voice-title  { color: var(--ink); background: var(--tone-pale); }
.theme-sage .voice-title .section-label { color: var(--ink); }
.theme-sage .voice-coral  { color: var(--ink); background: var(--accent-soft); }
.theme-sage .voice-yellow { background: var(--sand); }
.theme-sage .lecture      { color: var(--ink); background: var(--tone-soft); }
.theme-sage .lecture-main .section-label,
.theme-sage .lecture-topics small { color: var(--ink); }
.theme-sage .lecture-main > p:not(.section-label) { color: rgba(var(--ink-rgb), 0.76); }
.theme-sage .lecture-topics,
.theme-sage .lecture-topics article { border-color: rgba(var(--ink-rgb), 0.32); }
.theme-sage .school { background: var(--tone-pale); }
.theme-sage .school-en { color: rgba(var(--tone-deep-rgb), 0.11); }
.theme-sage .circle-one   { background: var(--tone-soft); }
.theme-sage .circle-two   { background: var(--sand); }
.theme-sage .circle-three { background: var(--accent-soft); }
.theme-sage .contact-art b { color: var(--ink); }
.theme-sage .site-footer { background: var(--tone-deep); color: var(--tone-pale); }
.theme-sage .ticker { color: var(--ink); }
.theme-sage .ticker i { color: var(--accent); }
.theme-sage .button-coral { color: #fff; background: var(--cta-bg); }
.theme-sage .button-coral:hover { color: #fff; background: var(--cta-hover); }
.theme-sage .button-ink:hover { color: var(--ink); background: var(--sand); }
.theme-sage .route-item:hover,
.theme-sage .support-item:hover { color: var(--ink); }
.theme-sage .route-item:hover .route-desc,
.theme-sage .support-item:hover > p { color: var(--ink); opacity: 0.74; }
.theme-sage .support-featured:hover { background: var(--accent); color: #fff; }
.theme-sage .profile-image span { color: var(--ink); }

.theme-sage .wordmark { display: inline-flex; align-items: center; gap: 10px; }
.theme-sage .wordmark .logo-img {
  display: block;
  width: auto;
  height: 40px;
  filter: brightness(0) saturate(100%) invert(34%) sepia(18%) saturate(1398%) hue-rotate(294deg) brightness(91%) contrast(91%);
}
.theme-sage .wordmark small { color: var(--muted); font: 500 0.62rem/1 var(--sans); letter-spacing: 0.18em; }
@media (max-width: 760px) { .theme-sage .wordmark .logo-img { height: 32px; } .theme-sage .wordmark small { display: none; } }

@media (max-width: 1100px) {
  .theme-sage .global-nav { color: var(--ink); background: var(--tone-pale); }
}

@media (max-width: 760px) {
  .theme-sage .hero-shade {
    background: linear-gradient(180deg, rgba(var(--tone-pale-rgb), 0.05) 15%, rgba(var(--tone-pale-rgb), 0.8) 57%, var(--hero-shade-mobile) 100%);
  }
}
