/* ---- shared structural styles for new 경북 지역 키워드 페이지 (main-less region template) ---- */
.region-wrap { max-width: 900px; margin: 8px auto 0; padding: 24px 20px 56px; }
.region-wrap > * + * { margin-top: 30px; }

.region-wrap article h2 {
  font-family: var(--font-display);
  color: var(--primary);
  font-size: 1.2rem;
  margin-bottom: 10px;
}
.region-wrap article p { font-size: 0.98rem; }
.region-wrap article p + p { margin-top: 12px; }

.region-wrap .data-table { width: 100%; border-collapse: collapse; font-size: 0.92rem; }
.region-wrap .data-table caption { text-align: left; font-weight: 600; margin-bottom: 8px; color: var(--primary); }
.region-wrap .data-table th, .region-wrap .data-table td { border: 1px solid var(--secondary); padding: 10px 12px; text-align: left; }
.region-wrap .data-table th { background: var(--secondary); }

.cond-block-group { display: flex; flex-direction: column; gap: 16px; }
.region-wrap .cond-block .case { font-weight: 600; }
.region-wrap .cond-block .verdict { color: var(--primary); font-weight: 600; }
.region-wrap .cond-block p + p { margin-top: 6px; }

.region-wrap .checklist { padding-left: 0; }
.region-wrap .checklist li { list-style: none; position: relative; padding: 10px 0 10px 28px; border-bottom: 1px solid var(--secondary); font-size: 0.95rem; }
.region-wrap .checklist li::before { content: ''; position: absolute; left: 2px; top: 16px; width: 10px; height: 10px; border-radius: 50%; background: var(--primary); }

.region-wrap .faq h2 {
  font-family: var(--font-display);
  color: var(--primary);
  font-size: 1.2rem;
  margin-bottom: 10px;
}
.region-wrap .faq details { border-bottom: 1px solid var(--secondary); padding: 12px 0; }
.region-wrap .faq summary { font-weight: 600; cursor: pointer; font-size: 0.98rem; }
.region-wrap .faq summary::marker { color: var(--primary); }
.region-wrap .faq p { margin-top: 8px; font-size: 0.93rem; opacity: 0.9; }

.related-cards { max-width: 1280px; margin: 0 auto; padding: 8px 20px 8px; }
.related-cards h2 { font-size: 1.05rem; color: var(--primary); margin-bottom: 16px; text-align: center; }
