.page-download { color: #333333; }
.page-download__hero-section { background-color: #FFFFFF; padding-top: 10px; }
.page-download__hero-image-block { display: flex; justify-content: center; }
.page-download__hero-link { display: block; width: 100%; max-width: 1600px; }
.page-download__hero-image { width: 100%; height: auto; aspect-ratio: 17/5; object-fit: cover; display: block; border-radius: 12px; }
.page-download__hero-content { background-color: #f9f9f9; border-radius: 12px; padding: 24px 16px; text-align: center; max-width: 1200px; margin: 16px auto 0; }
.page-download__hero-title { color: #017439; font-weight: 700; line-height: 1.3; letter-spacing: -0.02em; max-width: 45ch; margin: 0 auto 12px; }
.page-download__hero-description { color: #333333; max-width: 55ch; margin: 0 auto 24px; }
.page-download__download-btn { background-color: #017439; color: #FFFFFF; padding: 12px 28px; border-radius: 999px; display: inline-block; font-weight: 700; text-decoration: none; box-sizing: border-box; }
.page-download__guide-section { max-width: 1200px; margin: 0 auto; padding: 24px 16px 48px; }
.page-download__guide-title { color: #017439; text-align: center; font-weight: 700; line-height: 1.3; }
.page-download__guide-intro { text-align: center; color: #333333; max-width: 800px; margin: 16px auto 32px; }
.page-download__guide-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
.page-download__guide-item { background-color: #f9f9f9; border: 1px solid #e6e6e6; border-radius: 12px; padding: 20px; }
.page-download__guide-sub-title { color: #017439; font-weight: 600; margin-top: 0; }
.page-download__guide-figure { margin: 0 0 16px; }
.page-download__guide-image { width: 100%; aspect-ratio: 2/1; object-fit: cover; border-radius: 8px; }
.page-download__guide-list, .page-download__guide-list-item { color: #333333; }
.page-download__faq-section { max-width: 900px; margin: 0 auto; padding: 0 16px 48px; }
.page-download__faq-title { color: #017439; text-align: center; font-weight: 700; }
.page-download__faq-item { background-color: #FFFFFF; border: 1px solid #e6e6e6; border-radius: 8px; margin-bottom: 12px; }
.page-download__faq-question { cursor: pointer; padding: 16px; font-weight: 600; border-radius: 8px; list-style: none; }
.page-download__faq-question::-webkit-details-marker { display: none; }
.page-download__faq-answer { padding: 0 16px 16px; color: #333333; }
.page-download__cta-section { background-color: #FAFAFA; border-radius: 24px; max-width: 900px; margin: 0 auto 48px; padding: 32px 16px; text-align: center; }
.page-download__cta-title { color: #017439; font-weight: 700; }
.page-download__cta-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; }
.page-download__cta-btn { padding: 12px 32px; border-radius: 999px; display: inline-block; font-weight: 700; text-decoration: none; box-sizing: border-box; }
.page-download__cta-btn--register { background-color: #C30808; color: #FFFF00; }
.page-download__cta-btn--login { background-color: #C30808; color: #FFFF00; }
@media (max-width: 1024px) {
  .page-download__guide-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
}
@media (max-width: 768px) {
  .page-download__hero-image { aspect-ratio: 16/10; }
  .page-download__guide-grid { grid-template-columns: 1fr; }
  .page-download img { max-width: 100%; height: auto; }
  .page-download__download-btn, .page-download__cta-btn, .page-download__hero-title, .page-download__hero-description { max-width: 100%; box-sizing: border-box; white-space: normal; overflow-wrap: break-word; }
  .page-download__cta-actions { width: 100%; max-width: 100%; overflow: hidden; }
  .page-download__download-btn { width: 100%; }
}