.page-login{max-width:100%;overflow-x:hidden;color:#333333;display:flex;flex-direction:column}
.page-login__hero-section{display:flex;flex-direction:column;align-items:center;padding-top:10px;padding-bottom:0;background:linear-gradient(135deg,#FFF3F3 0%,#FFFFFF 100%)}
.page-login__hero-image-wrap{width:100%;max-width:1200px;padding:0 16px}
.page-login__hero-image{width:100%;height:auto;aspect-ratio:10/3;object-fit:cover;display:block;border-radius:16px;box-shadow:0 4px 20px rgba(229,57,53,.15)}
.page-login__hero-content{width:100%;max-width:1200px;margin:0 auto;padding:32px 16px 24px;text-align:center}
.page-login__hero-content h1{font-weight:800;line-height:1.3;max-width:900px;margin:0 auto 16px;color:#E53935}
.page-login__hero-content p{max-width:800px;margin:0 auto 24px;font-size:1.0625rem;line-height:1.8}
.page-login__hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}
.page-login__btn{display:inline-block;border:none;cursor:pointer;text-decoration:none;text-align:center;padding:14px 32px;border-radius:999px;font-weight:700;font-size:1rem;line-height:1;box-sizing:border-box;transition:transform .2s ease, box-shadow .2s ease}
.page-login__btn--primary{background:linear-gradient(180deg,#FF5A4F 0%,#E53935 100%);color:#ffffff;box-shadow:0 6px 16px rgba(229,57,53,.3)}
.page-login__btn--primary:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(229,57,53,.4)}
.page-login__btn--secondary{background:#ffffff;color:#E53935;border:2px solid #E53935}
.page-login__btn--secondary:hover{background:#FFF0F0;transform:translateY(-2px)}
.page-login__intro-section{background:#F5F7FA}
.page-login__intro-inner{max-width:1200px;margin:0 auto;padding:48px 16px}
.page-login__intro-inner h2{text-align:center;color:#E53935;font-size:1.75rem;margin-bottom:24px}
.page-login__intro-inner p{max-width:950px;margin:0 auto;line-height:1.9;font-size:1.0625rem}
.page-login__feature-section{background:#FFFFFF}
.page-login__feature-list{max-width:1200px;margin:0 auto;padding:48px 16px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.page-login__feature-card{background:#FFFFFF;border:1px solid #E0E0E0;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:transform .25s ease, box-shadow .25s ease}
.page-login__feature-card:hover{transform:translateY(-6px);box-shadow:0 12px 28px rgba(0,0,0,.08)}
.page-login__feature-image{width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;display:block}
.page-login__feature-body{padding:20px;display:flex;flex-direction:column;gap:8px;flex:1}
.page-login__feature-body h3{font-size:1.25rem;margin:0;color:#333333;line-height:1.4}
.page-login__feature-body p{font-size:.95rem;line-height:1.7;margin:0;flex:1}
.page-login__feature-link{color:#E53935;font-weight:700;text-decoration:none;font-size:.95rem}
.page-login__feature-link:hover{text-decoration:underline}
.page-login__logo-section{background:#F5F7FA}
.page-login__section-title{text-align:center;color:#E53935;font-size:1.75rem;padding:48px 16px 12px;margin:0}
.page-login__logo-grid{width:100%;max-width:1200px;margin:0 auto;padding:16px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px 16px;justify-items:center;box-sizing:border-box}
.page-login__logo-item{display:flex;flex-direction:column;align-items:center;gap:12px;max-width:280px;width:100%}
.page-login__logo-image{width:100%;height:auto;aspect-ratio:2/1;object-fit:contain;display:block}
.page-login__logo-cta{display:inline-block;padding:10px 28px;border-radius:999px;background:#E53935;color:#ffffff;font-weight:700;text-decoration:none;transition:background .2s ease;max-width:100%;box-sizing:border-box;text-align:center}
.page-login__logo-cta:hover{background:#FF5A4F}
.page-login__guide-section,.page-login__faq-section{background:#FFFFFF}
.page-login__guide-inner,.page-login__faq-inner{max-width:1000px;margin:0 auto;padding:48px 16px}
.page-login__guide-inner h2,.page-login__faq-inner h2{text-align:center;color:#E53935;font-size:1.75rem;margin-top:0;margin-bottom:16px}
.page-login__guide-inner>p,.page-login__faq-inner>p{text-align:center;max-width:850px;margin:0 auto 32px;line-height:1.7}
.page-login__guide-step-list,.page-login__faq-list{display:flex;flex-direction:column;gap:24px}
.page-login__guide-step-item{display:flex;flex-direction:column;gap:12px;background:#FFFFFF;border:1px solid #E0E0E0;border-radius:12px;padding:24px;box-sizing:border-box}
.page-login__guide-step-thumb{width:100%}
.page-login__guide-image{width:100%;height:auto;max-width:800px;aspect-ratio:2/1;object-fit:cover;display:block;margin:0 auto;border-radius:8px}
.page-login__guide-step-item h3{margin:8px 0 0;color:#E53935;font-size:1.25rem}
.page-login__guide-step-item p{margin:4px 0 0;line-height:1.8}
.page-login__faq-item{background:#FFFFFF;border:1px solid #E0E0E0;border-radius:12px;padding:0;overflow:hidden}
.page-login__faq-question{display:flex;align-items:center;gap:12px;padding:16px 20px;font-weight:700;cursor:pointer;list-style:none}
.page-login__faq-question::-webkit-details-marker{display:none}
.page-login__faq-toggle{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#FF5A4F;color:#ffffff;font-weight:800;font-size:1.5rem;line-height:1;flex-shrink:0}
.page-login__faq-answer{padding:0 20px 20px 60px;line-height:1.75;color:#444444}
.page-login__faq-answer p{margin:0}
@media (max-width:768px){
.page-login__btn{width:auto;max-width:100%;white-space:normal;word-wrap:break-word;font-size:.9375rem;padding:12px 24px}
.page-login__hero-actions{flex-direction:column;align-items:center;width:100%}
.page-login__hero-actions .page-login__btn{width:auto;max-width:100%}
.page-login__hero-image{aspect-ratio:16/9}
.page-login__hero-content{padding-top:24px}
.page-login__feature-list{grid-template-columns:1fr;padding-top:32px}
.page-login__logo-grid{grid-template-columns:repeat(2,1fr);gap:16px}
.page-login__logo-item{max-width:100%}
.page-login__feature-image,.page-login__guide-image,.page-login__hero-image,.page-login__logo-image,.page-login img{max-width:100%!important;height:auto!important}
}
@media (max-width:480px){
.page-login__logo-grid{grid-template-columns:repeat(2,1fr);gap:12px}
.page-login__feature-body,.page-login__guide-step-item{padding:16px}
.page-login__faq-answer{padding-left:50px}
.page-login__hero-actions .page-login__btn{font-size:.875rem;padding:10px 18px}
.page-login__intro-inner h2,.page-login__section-title,.page-login__guide-inner h2,.page-login__faq-inner h2{font-size:1.35rem}
}