.page-contact { color: #FFF5E1; }
.page-contact__hero-section { padding-top: 10px; background: #B71C1C; }
.page-contact__hero-image { width: 100%; }
.page-contact__hero-img { width: 100%; height: auto; aspect-ratio: 17/5; object-fit: cover; display: block; border-radius: 12px; }
.page-contact__hero-content { text-align: center; padding: 20px 16px 32px; max-width: 860px; margin: 0 auto; }
.page-contact__hero-title { color: #FFF5E1; font-weight: 800; line-height: 1.3; letter-spacing: 0.5px; max-width: 720px; margin: 0 auto 12px; font-size: clamp(1.4rem, 3vw, 2.2rem); }
.page-contact__hero-description { color: #FFF5E1; font-size: 1.05rem; line-height: 1.7; max-width: 720px; margin: 0 auto 24px; opacity: 0.95; }
.page-contact__hero-button { display: inline-block; padding: 14px 36px; border-radius: 999px; background: linear-gradient(180deg, #FFD86A 0%, #E6B800 100%); color: #7A0E0E; font-weight: 700; font-size: 1rem; text-decoration: none; box-shadow: 0 4px 18px rgba(255, 204, 102, 0.35); transition: transform 0.2s ease, box-shadow 0.2s ease; }
.page-contact__hero-button:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(255, 204, 102, 0.5); }
.page-contact__info-section { background: #B71C1C; padding: 48px 16px; }
.page-contact__info-heading { text-align: center; color: #FFF5E1; font-size: clamp(1.6rem, 3vw, 2.2rem); margin-bottom: 12px; }
.page-contact__info-intro { text-align: center; color: #FFF5E1; max-width: 780px; margin: 0 auto 40px; font-size: 1rem; line-height: 1.7; }
.page-contact__info-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; max-width: 1200px; margin: 0 auto; }
.page-contact__info-card { background: #D32F2F; border: 1px solid #F2B544; border-radius: 16px; padding: 28px 24px; text-align: center; transition: box-shadow 0.3s ease; }
.page-contact__info-card:hover { box-shadow: 0 0 20px rgba(244, 211, 77, 0.3); }
.page-contact__info-card-title { color: #FFF5E1; font-size: 1.3rem; margin-bottom: 12px; }
.page-contact__info-card-text { color: #FFF5E1; font-size: 0.95rem; line-height: 1.6; margin-bottom: 20px; }
.page-contact__info-button { display: inline-block; padding: 10px 28px; border-radius: 999px; background: linear-gradient(180deg, #FFD86A 0%, #E6B800 100%); color: #7A0E0E; font-weight: 700; text-decoration: none; font-size: 0.95rem; transition: opacity 0.2s ease; }
.page-contact__info-button:hover { opacity: 0.9; }
.page-contact__form-section { background: #B71C1C; padding: 48px 16px; border-top: 1px solid rgba(242, 181, 68, 0.3); }
.page-contact__form-container { max-width: 720px; margin: 0 auto; background: #D32F2F; border: 1px solid #F2B544; border-radius: 20px; padding: 36px 32px; }
.page-contact__form-title { color: #FFF5E1; font-size: clamp(1.5rem, 2.5vw, 2rem); text-align: center; margin-bottom: 12px; }
.page-contact__form-description { color: #FFF5E1; text-align: center; margin-bottom: 28px; line-height: 1.6; }
.page-contact__form-group { margin-bottom: 20px; }
.page-contact__form-label { display: block; color: #FFF5E1; font-weight: 600; margin-bottom: 8px; }
.page-contact__form-input, .page-contact__form-select, .page-contact__form-textarea { width: 100%; padding: 12px 16px; border-radius: 8px; border: 1px solid #F2B544; background: #7A0E0E; color: #FFF5E1; font-size: 1rem; box-sizing: border-box; }
.page-contact__form-input::placeholder, .page-contact__form-textarea::placeholder { color: rgba(255, 245, 225, 0.6); }
.page-contact__form-select option { background: #7A0E0E; }
.page-contact__form-textarea { resize: vertical; min-height: 120px; }
.page-contact__form-input:focus, .page-contact__form-select:focus, .page-contact__form-textarea:focus { outline: none; box-shadow: 0 0 0 3px rgba(244, 211, 77, 0.4); }
.page-contact__form-button { width: 100%; padding: 14px; border-radius: 999px; background: linear-gradient(180deg, #FFD86A 0%, #E6B800 100%); color: #7A0E0E; font-size: 1.05rem; font-weight: 700; border: none; cursor: pointer; transition: opacity 0.2s ease, transform 0.2s ease; }
.page-contact__form-button:hover { opacity: 0.92; transform: translateY(-2px); }
.page-contact__form-note { text-align: center; color: rgba(255, 245, 225, 0.8); font-size: 0.85rem; margin-top: 16px; }
.page-contact__faq-section { background: #B71C1C; padding: 48px 16px; }
.page-contact__faq-heading { text-align: center; color: #FFF5E1; font-size: clamp(1.5rem, 2.5vw, 2rem); margin-bottom: 32px; }
.page-contact__faq-list { max-width: 860px; margin: 0 auto; }
.page-contact__faq-item { background: #D32F2F; border: 1px solid #F2B544; border-radius: 12px; padding: 18px 22px; margin-bottom: 14px; }
.page-contact__faq-question { color: #FFF5E1; font-weight: 600; font-size: 1.05rem; cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.page-contact__faq-question::-webkit-details-marker { display: none; }
.page-contact__faq-question::after { content: '+'; font-size: 1.5rem; color: #F4D34D; transition: transform 0.2s ease; }
.page-contact__faq-item[open] .page-contact__faq-question::after { transform: rotate(45deg); }
.page-contact__faq-answer { color: #FFF5E1; line-height: 1.7; margin-top: 14px; font-size: 0.95rem; border-top: 1px solid rgba(242, 181, 68, 0.3); padding-top: 14px; }
.page-contact img { max-width: 100%; }
@media (max-width: 1024px) {
  .page-contact__info-grid { grid-template-columns: 1fr; max-width: 480px; }
  .page-contact__hero-img { aspect-ratio: 16/6; }
}
@media (max-width: 768px) {
  .page-contact__hero-section { padding-top: 10px; }
  .page-contact__hero-img { aspect-ratio: 2/1; }
  .page-contact__hero-content { padding: 16px 12px 24px; }
  .page-contact__hero-title { font-size: clamp(1.2rem, 4.5vw, 1.6rem); }
  .page-contact__hero-description { font-size: 0.95rem; }
  .page-contact__hero-button, .page-contact__info-button, .page-contact__form-button { max-width: 100%; box-sizing: border-box; white-space: normal; word-wrap: break-word; width: auto; }
  .page-contact__info-section, .page-contact__form-section, .page-contact__faq-section { padding: 32px 12px; }
  .page-contact__form-container { padding: 24px 16px; }
  .page-contact img { max-width: 100% !important; height: auto !important; }
  .page-contact { max-width: 100%; overflow-x: hidden; }
}