.page-blog { color: #333333; background-color: #FFFFFF; font-family: Arial, sans-serif; }
.page-blog__hero-section { padding: 10px 16px 20px; text-align: center; }
.page-blog__hero-image { width: 100%; max-width: 1020px; height: auto; aspect-ratio: 17/5; object-fit: cover; display: block; margin: 0 auto; border-radius: 12px; }
.page-blog__intro-section { padding: 20px 16px; text-align: center; }
.page-blog__intro-content { max-width: 800px; margin: 0 auto; }
.page-blog__intro-content h1 { font-weight: 700; font-size: clamp(1.5rem, 4vw, 2.5rem); line-height: 1.2; color: #017439; margin: 0 0 12px; }
.page-blog__intro-text { font-size: 16px; line-height: 1.6; color: #333333; margin: 0 auto 24px; }
.page-blog__cta-button { display: inline-block; max-width: 100%; box-sizing: border-box; white-space: normal; word-wrap: break-word; background-color: #C30808; color: #FFFF00; border-radius: 50px; font-weight: 700; padding: 12px 36px; text-decoration: none; transition: background-color 0.3s ease; }
.page-blog__cta-button:hover { background-color: #9a0606; }
.page-blog__latest-section { padding: 20px 16px 40px; }
.page-blog__section-title { text-align: center; color: #017439; font-size: 1.8em; margin: 0 0 8px; }
.page-blog__section-subtitle { text-align: center; color: #555555; font-size: 1em; margin: 0 0 32px; }
.page-blog__posts-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; max-width: 1200px; margin: 0 auto; }
.page-blog__post-card { background: #FFFFFF; border: 1px solid #E0E0E0; border-radius: 12px; overflow: hidden; display: flex; flex-direction: column; }
.page-blog__post-image { width: 100%; aspect-ratio: 2/1; object-fit: cover; }
.page-blog__post-content { padding: 20px; flex-grow: 1; display: flex; flex-direction: column; }
.page-blog__post-date { font-size: 0.85em; color: #777777; margin: 0 0 8px; }
.page-blog__post-title { font-size: 1.2em; margin: 0 0 12px; color: #017439; }
.page-blog__post-title a { color: inherit; text-decoration: none; }
.page-blog__post-title a:hover { text-decoration: underline; }
.page-blog__post-excerpt { font-size: 14px; color: #555555; margin: 0 0 16px; flex-grow: 1; }
.page-blog__read-more { color: #017439; font-weight: 600; text-decoration: none; align-self: flex-start; }
.page-blog__guide-section { padding: 20px 16px 48px; background-color: #F9F9F9; border-radius: 8px; margin-top: 20px; }
.page-blog__guide-inner { max-width: 1000px; margin: 0 auto; }
.page-blog__guide-title { text-align: center; color: #017439; font-size: 1.5em; margin: 0 0 16px; }
.page-blog__guide-text { line-height: 1.7; margin: 0 0 16px; color: #333333; }
.page-blog__guide-figure { margin: 0 0 16px; }
.page-blog__guide-figure img { width: 100%; aspect-ratio: 2/1; object-fit: cover; display: block; border-radius: 8px; }
.page-blog__guide-link { color: #017439; font-weight: 700; }
@media (max-width: 768px) {
  .page-blog__hero-image { aspect-ratio: 2/1; }
  .page-blog__posts-grid { grid-template-columns: 1fr; gap: 16px; }
  .page-blog__post-card { flex-direction: column; }
  .page-blog__intro-content h1 { font-size: 1.5em; }
  .page-blog__cta-button { width: 100%; text-align: center; }
  .page-blog__guide-title { font-size: 1.2em; }
  .page-blog__guide-figure img { width: 100%; margin-bottom: 12px; }
  .page-blog img { max-width: 100% !important; height: auto !important; }
  .page-blog__latest-section, .page-blog__guide-section, .page-blog__intro-section { padding-left: 12px; padding-right: 12px; }
  .page-blog__section-title { font-size: 1.5em; }
}