.page-ban-ca { color: #FFF5E1; }
.page-ban-ca__container { max-width: 1200px; margin: 0 auto; padding-left: 16px; padding-right: 16px; }
.page-ban-ca__btn { display: inline-block; padding: 10px 28px; border-radius: 50px; text-decoration: none; font-weight: 700; font-size: 1.1rem; margin-right: 10px; transition: transform 0.2s ease; border: none; cursor: pointer; line-height: 1.5; }
.page-ban-ca__btn:hover { transform: translateY(-3px); }
.page-ban-ca__btn--primary { background: linear-gradient(180deg, #FFD86A 0%, #E6B800 100%); color: #7A0E0E; }
.page-ban-ca__btn--gold { background: linear-gradient(180deg, #FFD86A 0%, #E6B800 100%); color: #7A0E0E; }
.page-ban-ca__btn--ghost { background: transparent; color: #FFF5E1; border: 2px solid #F2B544; }
.page-ban-ca__hero { background: #B71C1C; padding-top: 10px; }
.page-ban-ca__hero-image-wrapper { text-align: center; padding: 0; }
.page-ban-ca__hero-image { width: 100%; max-width: 1200px; height: auto; aspect-ratio: 16/9; object-fit: cover; border-radius: 10px; box-shadow: 0 0 20px rgba(244, 211, 77, 0.5); }
.page-ban-ca__hero-content { text-align: center; padding: 24px 16px 30px; }
.page-ban-ca__hero-title { color: #F4D34D; font-weight: 800; margin: 0 0 10px; line-height: 1.3; letter-spacing: 0.5px; }
.page-ban-ca__hero-description { color: #FFF5E1; max-width: 750px; margin: 0 auto 24px; line-height: 1.6; }
.page-ban-ca__game-intro { background: #7A0E0E; padding: 20px 0; }
.page-ban-ca__game-intro-text { color: #FFF5E1; text-align: center; max-width: 900px; margin: 0 auto; font-size: 1.1rem; line-height: 1.8; }
.page-ban-ca__features { background: #B71C1C; padding: 22px 0 48px; }
.page-ban-ca__section-title { color: #F4D34D; text-align: center; font-width: 700; }
.page-ban-ca__section-subtitle { color: #FFF5E1; text-align: center; max-width: 850px; margin: 0 auto; line-height: 1.7; }
.page-ban-ca__features-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; margin-top: 24px; }
.page-ban-ca__feature-card { background: #D32F2F; background-color: #D32F2F; background-color: rgba(211, 47, 47, 0.5); border: 1px solid #F2B544; border-radius: 12px; padding: 14px; box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2); }
.page-ban-ca__feature-card:hover { box-shadow: 0 0 15px rgba(255, 204, 102, 0.4); }
.page-ban-ca__feature-image { display: block; width: 100%; max-width: 400px; height: auto; aspect-ratio: 4/3; object-fit: cover; border-radius: 8px; margin-bottom: 12px; }
.page-ban-ca__feature-title { color: #FFD86A; margin: 0 0 8px; }
.page-ban-ca__feature-text { color: #FFF5E1; line-height: 1.6; }
.page-ban-ca__guide { background: #B71C1C; padding: 15px 0 30px; }
.page-ban-ca__register-steps { list-style: none; margin: 20px auto 0; padding: 0; max-width: 800px; }
.page-ban-ca__step-item { display: flex; gap: 18px; margin-bottom: 18px; background: #D32F2F; background-color: #D32F2F; border: 1px solid #F2B544; padding: 15px; border-radius: 12px; }
.page-ban-ca__step-number { background: #F4D34D; color: #7A0E0E; width: 45px; height: 45px; flex-shrink: 0; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 900; font-size: 1.3rem; }
.page-ban-ca__step-content { flex: 1 1 auto; }
.page-ban-ca__step-title { color: #F4D34D; margin-bottom: 8px; }
.page-ban-ca__step-text { color: #FFF5E1; line-height: 1.7; margin: 0; }
.page-ban-ca__action-row { text-align: center; margin-top: 18px; }
.page-ban-ca__play-guide { background: #7A0E0E; padding: 20px 0; }
.page-ban-ca__play-guide .page-ban-ca__container { max-width: 1100px; }
.page-ban-ca__tip-list { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 24px; }
.page-ban-ca__tip-item, .page-ban-ca__faq-item { background-color: rgba(255, 255, 255, 0.05); border: 1px solid #F2B544; border-left-width: 6px; border-left-style: solid; border-left-color: #F4D34D; border-radius: 8px; padding: 18px; box-sizing: border-box; }
.page-ban-ca__tip-title { color: #FFD86A; margin: 0 0 10px; }
.page-ban-ca__tip-text { color: #FFF5E1; line-height: 1.6; margin: 0; }
.page-ban-ca__promise { background: #B71C1C; padding: 14px 0; }
.page-ban-ca__promise-bg { background: linear-gradient(135deg, #D32F2F 0%, #7A0E0E 80%); border: 1px solid #FFCC66; padding: 24px 0; }
.page-ban-ca__promise-title { color: #FFD86A; text-align: center; max-width: 900px; margin: 0 auto 10px; }
.page-ban-ca__promise-text { color: #FFF5E1; text-align: center; max-width: 800px; margin: 0 auto; line-height: 1.67; }
.page-ban-ca__promise-cta { text-align: center; margin-top: 18px; }
.page-ban-ca__promise-cta a { margin-bottom: 5px; }
.page-ban-ca__faq { background: #7A0E0E; padding: 16px 0 40px; }
.page-ban-ca__faq-item { margin-bottom: 16px; background: #D32F2F; background-color: #D32F2F; border-radius: 12px; }
.page-ban-ca__faq-summary { display: flex; justify-content: space-between; align-items: center; cursor: pointer; gap: 20px; color: #FFD86A; font-weight: 600; list-style: none; }
.page-ban-ca__faq-summary::-webkit-details-marker { display: none; }
.page-ban-ca__faq-icon { font-size: 1.5rem; line-height: 1; font-weight: 400; }
.page-ban-ca__faq-answer { color: #FFF5E1; line-height: 1.7; margin-top: 8px; }
.page-ban-ca__related-posts { background: #B71C1C; padding: 12px 0 40px; }
.page-ban-ca__post-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 18px; margin-top: 24px; }
.page-ban-ca__post-card { background: #D32F2F; background-color: #D32F2F; background-color: #D32F2F; border: 1px solid #F2B544; border-radius: 12px; padding: 15px; box-sizing: border-box; }
.page-ban-ca__post-image { display: block; width: 100%; aspect-ratio: 16/9; object-fit: cover; border-radius: 10px; margin: 0 0 8px; max-width: 400px; height: auto; }
.page-ban-ca__post-title { margin: 0; height: auto; }
.page-ban-ca__post-link { color: #FFD86A; text-decoration: none; }
.page-ban-ca__post-link:hover { text-decoration: underline; }
.page-ban-ca__post-excerpt { line-height: 1.5; color: #FFF5E1; }
@media (max-width: 768px) {
  .page-ban-ca__features-grid { grid-template-columns: 1fr; }
  .page-ban-ca__hero-image { width: 100%; aspect-ratio: 4/3; }
  .page-ban-ca .page-ban-ca__feature-image { max-width: 400px; width: 100%; height: auto; }
  .page-ban-ca .page-ban-ca__post-image { max-width: 100%; width: auto; height: auto; }
  .page-ban-ca__btn { max-width: 100%; box-sizing: border-box; white-space: normal; word-wrap: break-word; }
  .page-ban-ca__action-row a, .page-ban-ca__promise-cta a { width: auto; margin-bottom: 8px; margin-right: 0; }
  .page-ban-ca__action-row a { display: inline-block; text-align: center; width: 80%; }
  .page-ban-ca__promise-cta { text-align: center; }
  .page-ban-ca__promise-cta a { display: inline-block; margin-right: 5px; margin-left: 5px; }
  .page-ban-ca img, .page-ban-ca img { max-width: 100% !important; height: auto !important; }
  .page-ban-ca__post-card a.page-ban-ca__post-link { word-wrap: break-word; }
}
.page-ban-ca__faq-summary { color: #FFD86A; }
.page-ban-ca__faq-answer { color: #FFF5E1; }
.page-ban-ca__faq-item.open .page-ban-ca__faq-icon { transform: rotate(45deg); }
.page-ban-ca__faq-icon { transition: transform 0.2s ease; }
.page-ban-ca__faq-summary:focus { outline: none; }
.page-ban-ca__faq-summary::-webkit-details-marker { display: none; }
summary { list-style: none; }
summary::-webkit-details-marker { display: none; }
summary::-moz-list-bullet { list-style-type: none; }
summary::marker { display: none; }