/* ==========================================================================
   Rooton Chiropractic — Minimalist Pure Luxury Background
   シンプル・高可読性・和モダンの静謐さを追求した上質な空間設計
   ========================================================================== */

/* 全体のベース背景：清潔で温かみのあるアイボリーオフホワイト */
body.rooton-body,
body {
  background-color: #FAF9F5;
  color: #1A2E22;
  font-family: var(--rt-font-sans, "Noto Sans JP", -apple-system, sans-serif);
  line-height: 1.85;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}

/* 控えめで上質なアンビエント環境光（文字の邪魔を一切しない） */
.rt-ambient-bg {
  display: none !important; /* 視覚的ノイズとなる古い全画面SVGは完全無効化 */
}

/* --------------------------------------------------------------------------
   セクションごとの統一感あるシンプルな配色設計
   -------------------------------------------------------------------------- */

/* 明るいセクション（基本：清潔感・可読性重視） */
.rt-bg-light,
#concept,
#profile,
#features,
#treatment,
#voice,
#testimonials,
#faq,
#flow {
  background-color: #FAF9F5;
  color: #1A2E22;
}

/* わずかなトーンの切り替え（メリハリをつける淡いサンドベージュ） */
.rt-bg-alt,
#profile,
#features,
#testimonials,
#flow {
  background-color: #F4F1EA;
}

/* バイオメカニクスセクション（知性的で落ち着いた上品なトーン） */
#biomechanics {
  background-color: #FAF9F5;
  border-top: 1px solid rgba(197, 160, 89, 0.18);
  border-bottom: 1px solid rgba(197, 160, 89, 0.18);
}

/* 予約CTAセクション（ブランドの象徴である深いフォレストグリーン） */
#reserve,
.rt-cta-section {
  background: linear-gradient(180deg, #14241B 0%, #172B20 50%, #14241B 100%);
  color: #FAF9F5;
}

/* --------------------------------------------------------------------------
   タイポグラフィとコントラストの徹底調整
   -------------------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6 {
  color: #14241B;
  letter-spacing: 0.04em;
}

p {
  color: #333333;
}

/* 金色の上品なアクセント（可読性・WCAG AA 4.5:1準拠のブロンズゴールド） */
.rt-gold-text,
.rt-section-label {
  color: #8B6914 !important;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

/* セクション境界の繊細な区切り */
.rt-section {
  position: relative;
  padding: 96px 0;
}

@media (max-width: 767px) {
  .rt-section {
    padding: 64px 0;
  }
}
