.page-login { background: #140C0C; color: #FFF1E8; max-width: 100%; overflow-x: hidden; }
.page-login__hero-section { padding: 10px 16px 0; display: flex; flex-direction: column; align-items: center; }
.page-login__hero-image-wrapper { width: 100%; max-width: 1100px; margin-bottom: 16px; }
.page-login__hero-image { width: 100%; height: auto; aspect-ratio: 17/5; object-fit: cover; display: block; }
.page-login__hero-content { width: 100%; max-width: 1100px; text-align: center; padding: 0 8px 20px; box-sizing: border-box; }
.page-login__hero-title { font-weight: 700; line-height: 1.3; letter-spacing: 0.5px; color: #FFF1E8; margin: 0 0 12px; font-size: clamp(1.4rem, 3vw, 2.1rem); }
.page-login__hero-subtitle { font-size: 1rem; line-height: 1.6; max-width: 820px; margin: 0 auto 20px; color: #D0DDE7; }
.page-login__hero-cta-group { display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; }
.page-login__button { display: inline-block; padding: 12px 26px; border-radius: 999px; font-size: 1rem; font-weight: 700; text-decoration: none; text-align: center; border: 1px solid transparent; transition: transform 0.2s ease, box-shadow 0.2s ease; box-sizing: border-box; }
.page-login__button--primary { background: linear-gradient(180deg, #FFB04A 0%, #D86A14 100%); color: #1A0F0F; }
.page-login__button--secondary { background: transparent; color: #FFF1E8; border-color: #F3C54D; }
.page-login__button:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(255, 176, 74, 0.25); }
.page-login__steps-section { padding: 20px 16px; }
.page-login__section-header { text-align: center; margin-bottom: 24px; }
.page-login__section-title { font-weight: 700; line-height: 1.4; color: #FFF1E8; margin: 0 0 10px; font-size: clamp(1.3rem, 2.4vw, 1.9rem); }
.page-login__section-slogan { font-size: 0.95rem; line-height: 1.6; max-width: 700px; margin: 0 auto; color: #D0DDE7; }
.page-login__steps-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; max-width: 1100px; margin: 0 auto 24px; }
.page-login__step-card { background: #2A1212; border: 1px solid #6A1E1E; border-radius: 16px; padding: 20px; box-sizing: border-box; }
.page-login__step-title { color: #FFF1E8; font-size: 1.1rem; font-weight: 600; margin: 0 0 8px; }
.page-login__step-description { color: #D0DDE7; font-size: 0.92rem; line-height: 1.6; margin: 0; }
.page-login__steps-cta { text-align: center; }
.page-login__benefits-section { padding: 20px 16px; }
.page-login__benefits-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; max-width: 1100px; margin: 0 auto; }
.page-login__benefit-card { background: #2A1212; border: 1px solid #6A1E1E; border-radius: 16px; padding: 20px; text-align: center; box-sizing: border-box; }
.page-login__benefit-title { color: #F3C54D; font-size: 1.1rem; font-weight: 600; margin: 0 0 8px; }
.page-login__benefit-text { color: #D0DDE7; font-size: 0.9rem; line-height: 1.6; margin: 0; }
.page-login__faq-section { padding: 20px 16px; }
.page-login__faq-list { max-width: 850px; margin: 0 auto; }
.page-login__faq-item { background: #2A1212; border: 1px solid #6A1E1E; border-radius: 12px; margin-bottom: 12px; padding: 12px 16px; }
.page-login__faq-question { font-size: 1rem; font-weight: 600; cursor: pointer; color: #FFF1E8; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.page-login__faq-question::-webkit-details-marker { display: none; }
.page-login__faq-toggle { color: #F3C54D; font-size: 1.2rem; flex-shrink: 0; line-height: 1; }
.page-login__faq-answer { margin: 10px 0 0; line-height: 1.6; color: #D0DDE7; font-size: 0.95rem; border-top: 1px solid #6A1E1E; padding-top: 10px; }
.page-login__guide-section { padding: 20px 16px; }
.page-login__guide-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; max-width: 1100px; margin: 0 auto; }
.page-login__guide-figure { background: #2A1212; border: 1px solid #6A1E1E; border-radius: 16px; padding: 12px; margin: 0; box-sizing: border-box; }
.page-login__guide-image { width: 100%; max-width: 800px; aspect-ratio: 2/1; object-fit: cover; display: block; border-radius: 12px; }
.page-login__guide-caption { text-align: center; padding: 12px 8px 4px; color: #D0DDE7; font-size: 0.9rem; line-height: 1.5; }
.page-login__support-section { padding: 12px 16px 32px; }
.page-login__support-card { max-width: 1000px; margin: 0 auto; background: #2A1212; border: 1px solid #6A1E1E; border-radius: 16px; padding: 20px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; box-sizing: border-box; }
.page-login__support-content { text-align: center; flex: 1; }
.page-login__support-title { color: #FFF1E8; font-size: 1.2rem; margin: 0 0 8px; }
.page-login__support-text { color: #D0DDE7; font-size: 0.95rem; margin: 0; }
.page-login .page-login__support-card .page-login__button { margin-top: 0; }
@media (max-width: 768px) {
  .page-login__hero-section { padding-top: 8px; }
  .page-login__hero-image { aspect-ratio: 2/1; }
  .page-login__hero-subtitle { font-size: 0.9rem; }
  .page-login__button { width: 100%; max-width: 100%; box-sizing: border-box; white-space: normal; word-wrap: break-word; }
  .page-login__hero-cta-group { flex-direction: column; align-items: stretch; gap: 10px; }
  .page-login__steps-grid { grid-template-columns: 1fr; gap: 16px; }
  .page-login__benefits-grid { grid-template-columns: 1fr; gap: 16px; }
  .page-login__guide-grid { grid-template-columns: 1fr; gap: 16px; }
  .page-login__guide-figure { padding: 8px; }
  .page-login__support-card { flex-direction: column; gap: 14px; }
  .page-login img { max-width: 100% !important; height: auto !important; }
  .page-login { max-width: 100%; overflow-x: hidden; }
}