.page-contact{color:#333333;max-width:100%;overflow-x:hidden;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif}
.page-contact__hero-section{padding-top:10px;background-color:#FFFFFF;display:flex;flex-direction:column}
.page-contact__hero-image-wrapper{width:100%;max-width:1200px;margin:0 auto;box-sizing:border-box;padding:0 16px}
.page-contact__hero-image{width:100%;height:auto;max-width:1200px;aspect-ratio:17/5;object-fit:cover;display:block;margin:0 auto;border-radius:12px}
.page-contact__hero-content{width:100%;max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px 16px 16px}
.page-contact__hero-title{color:#017439;font-weight:800;line-height:1.3;letter-spacing:-0.02em;max-width:800px;margin:0 0 12px}
.page-contact__hero-description{color:#333333;font-size:1.125rem;line-height:1.7;max-width:640px;margin:0 0 20px}
.page-contact__hero-cta{display:inline-block;background-color:#C30808;color:#FFFF00;font-weight:700;padding:14px 32px;border-radius:999px;text-decoration:none;transition:transform .2s ease, box-shadow .2s ease;box-shadow:0 4px 12px rgba(0,0,0,0.15)}
.page-contact__hero-cta:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,0.25)}
.page-contact__info-section{background-color:#FFFFFF;padding:48px 16px}
.page-contact__info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 24px;max-width:1200px;margin:0 auto}
.page-contact__info-card{background:#FFFFFF;border:1px solid #E5E7EB;border-radius:16px;padding:32px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;transition:box-shadow .3s ease}
.page-contact__info-card:hover{box-shadow:0 12px 32px rgba(0,0,0,0.1)}
.page-contact__info-icon{width:100%;max-width:400px;height:auto;aspect-ratio:2/1;object-fit:contain;border-radius:8px;margin-bottom:16px}
.page-contact__info-title{color:#017439;font-size:1.5rem;font-weight:700;margin-bottom:8px}
.page-contact__info-text{color:#4B5563;font-size:1rem;line-height:1.7;margin-bottom:20px}
.page-contact__info-button{display:inline-block;background-color:#017439;color:#FFFFFF;font-weight:600;padding:10px 24px;border-radius:999px;text-decoration:none;transition:background-color .2s ease}
.page-contact__info-button:hover{background-color:#015c2e}
.page-contact__form-section{background-color:#F9FAFB;padding:48px 16px}
.page-contact__form-content{max-width:720px;margin:0 auto;text-align:center}
.page-contact__form-title{color:#017439;font-size:2rem;font-weight:800;margin-bottom:16px}
.page-contact__form-description{color:#4B5563;font-size:1rem;line-height:1.7;margin-bottom:32px}
.page-contact__form{display:flex;flex-direction:column;gap:20px;text-align:left;background:#FFFFFF;padding:32px 24px;border-radius:16px;box-shadow:0 4px 16px rgba(0,0,0,0.08)}
.page-contact__form-group{display:flex;flex-direction:column;gap:6px}
.page-contact__form-label{font-weight:600;color:#333333;font-size:0.875rem}
.page-contact__form-input,.page-contact__form-select,.page-contact__form-textarea{width:100%;padding:12px 16px;border:1px solid #D1D5DB;border-radius:8px;font-size:1rem;color:#333333;background-color:#FFFFFF;transition:border-color .2s ease;box-sizing:border-box}
.page-contact__form-input:focus,.page-contact__form-select:focus,.page-contact__form-textarea:focus{outline:none;border-color:#017439;box-shadow:0 0 0 3px rgba(1,116,57,0.2)}
.page-contact__form-textarea{min-height:140px;resize:vertical}
.page-contact__form-submit{background-color:#C30808;color:#FFFF00;font-weight:700;padding:14px 32px;border:none;border-radius:999px;font-size:1.125rem;cursor:pointer;transition:transform .2s ease, box-shadow .2s ease}
.page-contact__form-submit:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,0.2)}
.page-contact__form-support{display:inline-block;background-color:#017439;color:#FFFFFF;font-weight:700;padding:12px 24px;border-radius:999px;text-decoration:none;font-size:0.875rem;text-align:center}
.page-contact__form-support:hover{background-color:#015c2e}
.page-contact__form-success{background-color:#D1FAE5;border:1px solid #017439;padding:20px 24px;border-radius:8px;margin-top:20px}
.page-contact__form-success-text{color:#017439;font-weight:600;margin:0}
.page-contact__guide-section{padding:48px 16px;background-color:#FFFFFF}
.page-contact__guide-title{text-align:center;color:#017439;font-size:2rem;font-weight:800;margin-bottom:40px}
.page-contact__guide-list{display:flex;flex-direction:column;gap:48px;max-width:800px;margin:0 auto}
.page-contact__guide-item{padding:24px;background:#FFFFFF;border-radius:16px;box-shadow:0 2px 12px rgba(0,0,0,0.08)}
.page-contact__guide-image{width:100%;max-width:800px;height:auto;aspect-ratio:2/1;object-fit:cover;border-radius:12px;margin-bottom:16px}
.page-contact__guide-subtitle{color:#017439;font-size:1.5rem;font-weight:700;margin-bottom:12px}
.page-contact__guide-content{color:#4B5563;line-height:1.7;font-size:1rem;margin-bottom:16px}
.page-contact__guide-button{display:inline-block;background-color:#C30808;color:#FFFF00;font-weight:600;padding:10px 24px;border-radius:999px;text-decoration:none}
.page-contact__faq-section{padding:48px 16px;background-color:#F9FAFB;max-width:800px;margin:0 auto}
.page-contact__faq-title{text-align:center;color:#017439;font-size:2rem;font-weight:800;margin-bottom:40px}
.page-contact__faq-item{background:#FFFFFF;border-radius:12px;margin-bottom:12px;box-shadow:0 2px 8px rgba(0,0,0,0.06);overflow:hidden}
.page-contact__faq-question{padding:20px 24px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;list-style:none}
.page-contact__faq-question::-webkit-details-marker{display:none}
.page-contact__faq-question-text{font-weight:600;font-size:1.0625rem;color:#333333;padding-right:16px}
.page-contact__faq-toggle{color:#017439;font-size:1.5rem;font-weight:700;flex-shrink:0}
.page-contact__faq-answer{padding:0 24px 20px;color:#4B5563;line-height:1.7}
@media (max-width: 1024px){
.page-contact__info-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 768px){
.page-contact__hero-section{padding-top:10px}
.page-contact__hero-image{border-radius:8px}
.page-contact__hero-title{font-size:clamp(0.9rem, 2vw, 1.6rem)}
.page-contact__hero-description{font-size:0.9375rem}
.page-contact__info-grid{grid-template-columns:repeat(2,1fr);gap:20px}
.page-contact__guide-list{gap:32px}
.page-contact__guide-item{padding:16px}
.page-contact__faq-question{padding:16px}
.page-contact__faq-answer{padding:0 16px 16px}
.page-contact__form{padding:24px 16px}
.page-contact__form-submit,.page-contact__form-support,.page-contact__guide-button,.page-contact__hero-cta,.page-contact__info-button{max-width:100%;box-sizing:border-box;white-space:normal;word-wrap:break-word}
.page-contact img{max-width:100%!important;height:auto!important}
}