/* ==========================================================================
   souzoku-soudan.css — 相続・空き家 無料相談ランディングページ専用
   （.page-soudan スコープで他ページに影響を与えない）
   ========================================================================== */

/* ▼ ヒーロー背景（相続・空き家向けの暮らしの情景 hero-03.jpg） */
.page-hero--soudan {
  background:
    linear-gradient(rgba(27, 42, 74, .78), rgba(27, 42, 74, .68)),
    url("images/hero/hero-03.jpg") center/cover no-repeat;
}

/* ▼ ヒーローCTAボタン */
.page-soudan .hero-cta-buttons .btn { font-weight: 700; }

/* ▼ お悩みカード */
.page-soudan .worry-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
  margin-top: 36px;
}
.page-soudan .worry-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-top: 4px solid var(--gold, #c5a55a);
  border-radius: 8px;
  padding: 28px 24px;
  box-shadow: 0 2px 10px rgba(27,42,74,0.05);
  text-align: left;
}
.page-soudan .worry-icon {
  font-size: 2.4rem;
  line-height: 1;
  margin-bottom: 14px;
}
.page-soudan .worry-card h3 {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--navy, #1b2a4a);
  margin: 0 0 10px;
  line-height: 1.5;
}
.page-soudan .worry-card p {
  font-size: 0.9rem;
  color: var(--text-mid, #555);
  line-height: 1.85;
  margin: 0;
}

/* ▼ 3つの選択肢カード（service-grid を3列に上書き） */
.page-soudan .service-grid {
  grid-template-columns: repeat(3, 1fr);
}
.page-soudan .service-card {
  text-align: left;
  padding: 30px 26px;
  border-top: 4px solid var(--navy, #1b2a4a);
}
.page-soudan .service-card h3 {
  font-size: 1.3rem;
  margin-bottom: 12px;
}
.page-soudan .service-icon {
  font-size: 2.6rem;
  margin-bottom: 10px;
}
.page-soudan .service-summary {
  font-size: 0.9rem;
  color: var(--text-mid, #555);
  line-height: 1.8;
  margin: 0 0 16px;
  padding-bottom: 14px;
  border-bottom: 1px dashed #e0c98a;
}
.page-soudan .service-points {
  list-style: none;
  padding: 0;
  margin: 0;
}
.page-soudan .service-points li {
  position: relative;
  padding-left: 22px;
  font-size: 0.86rem;
  line-height: 1.7;
  color: var(--text-mid, #555);
  margin-bottom: 8px;
}
.page-soudan .service-points li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--gold, #c5a55a);
  font-weight: 800;
}

/* ▼ 相談の流れ（flow-steps） */
.page-soudan .flow-steps {
  list-style: none;
  counter-reset: flow;
  padding: 0;
  margin: 36px 0 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.page-soudan .flow-step {
  position: relative;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 26px 22px;
  box-shadow: 0 2px 8px rgba(27,42,74,0.04);
}
.page-soudan .flow-num {
  position: static;          /* 既存CSSの position:absolute を打ち消す（重なり防止） */
  display: inline-block;
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #fff;
  background: var(--gold, #c5a55a);
  padding: 4px 12px;
  border-radius: 999px;
  margin-bottom: 12px;
  left: auto;
  top: auto;
}
.page-soudan .flow-step h3 {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--navy, #1b2a4a);
  margin: 0 0 8px;
  line-height: 1.5;
}
.page-soudan .flow-step p {
  font-size: 0.86rem;
  color: var(--text-mid, #555);
  line-height: 1.8;
  margin: 0;
}

/* ▼ 持ち帰り資料カード（A〜F を3列×2行に固定・全カード高さ統一） */
.page-soudan .deliverable-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: 1fr;     /* 全行を同じ高さに */
  gap: 22px;
  align-items: stretch;
}
.page-soudan .deliverable-grid .risk-card {
  height: 100%;            /* セルいっぱいに広げて高さ統一 */
}

/* ▼ FAQ（faq-q / faq-a は既存 .faq-item dt/dd で概ねカバー、念のため明示） */
.page-soudan .faq-q { cursor: default; }

/* ▼ レスポンシブ */
@media (max-width: 960px) {
  .page-soudan .worry-grid,
  .page-soudan .service-grid,
  .page-soudan .flow-steps,
  .page-soudan .deliverable-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 640px) {
  .page-soudan .worry-grid,
  .page-soudan .service-grid,
  .page-soudan .flow-steps,
  .page-soudan .deliverable-grid {
    grid-template-columns: 1fr;
  }
  .page-soudan .hero-cta-buttons .btn { width: 100%; }
}
