@charset "UTF-8";

.article-page { background: #fff; color: #1f2a33; line-height: 1.9; }
.article-page .wrap_article { max-width: 1040px; margin: 0 auto; padding: 0 24px; }
.article-page .article-hero { padding: 72px 0 52px; background: #eef7fb; }
.article-page .article-eyebrow { color: #006ea8; font-weight: 700; letter-spacing: .05em; margin-bottom: 12px; }
.article-page h1 { font-size: clamp(30px, 4vw, 46px); line-height: 1.45; margin: 0 0 22px; font-weight: 800; }
.article-page .lead { font-size: 18px; max-width: 900px; }
.article-page .article-body { padding: 64px 0; }
.article-page section.article-section { margin: 0 0 72px; }
.article-page h2 { font-size: clamp(24px, 3vw, 34px); line-height: 1.5; margin: 0 0 28px; padding-bottom: 14px; border-bottom: 3px solid #d8eef7; font-weight: 800; }
.article-page h3 { font-size: 22px; line-height: 1.6; margin: 34px 0 14px; font-weight: 800; color: #0b5f8a; }
.article-page p { margin: 0 0 18px; }
.article-page ul, .article-page ol { margin: 0 0 24px 1.4em; }
.article-page li { margin-bottom: 8px; }
.article-page a { color: #0073aa; text-decoration: underline; }
.article-page .summary-box, .article-page .point-box, .article-page .cta-box { background: #f7fbfd; border: 1px solid #d8eef7; border-radius: 14px; padding: 28px; margin: 28px 0; }
.article-page .point-box strong { color: #0b5f8a; }
.article-page .comparison-table-wrap { overflow-x: auto; margin: 28px 0; }
.article-page table { width: 100%; border-collapse: collapse; min-width: 760px; background: #fff; }
.article-page th, .article-page td { border: 1px solid #cfe2ec; padding: 14px 16px; vertical-align: top; }
.article-page th { background: #eaf6fb; font-weight: 800; text-align: left; }
.article-page .cta-box { text-align: center; background: #eef7fb; }
.article-page .cta-buttons { display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; margin-top: 20px; }
.article-page .cta-button { display: inline-block; padding: 13px 22px; border-radius: 999px; background: #006ea8; color: #fff; text-decoration: none; font-weight: 700; }
.article-page .cta-button.secondary { background: #fff; color: #006ea8; border: 1px solid #006ea8; }
.article-page .faq details { border: 1px solid #d8eef7; border-radius: 10px; padding: 16px 20px; margin-bottom: 12px; background: #fff; }
.article-page .faq summary { cursor: pointer; font-weight: 800; color: #0b5f8a; }
.article-page .faq details div { margin-top: 12px; }
@media (max-width: 767px) {
	.article-page .wrap_article { padding: 0 18px; }
	.article-page .article-hero { padding: 48px 0 36px; }
	.article-page .article-body { padding: 44px 0; }
	.article-page .summary-box, .article-page .point-box, .article-page .cta-box { padding: 20px; }
}