/* Contact Section */
.contact { background: var(--color-black); }
.contact .section-container { max-width: 1200px; width: 100%; margin: 0 auto; padding: 0 var(--spacing-lg); height: auto; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; box-sizing: border-box; }
.contact .contact-header { text-align: center; position: sticky; top: 0; left: 0; right: 0; padding-top: 120px; background: linear-gradient(135deg, rgba(255,255,255,0.06) 0%, rgba(255,255,255,0.02) 100%); backdrop-filter: blur(16px) saturate(160%); -webkit-backdrop-filter: blur(16px) saturate(160%); border-bottom: 1px solid rgba(255,255,255,0.12); z-index: 20; }
.contact .contact-header .section-container { height: auto; }
.contact .section-header { width: 100%; max-width: 800px; }
.contact .section-title { font-size: 3.5rem; color: var(--color-white); text-shadow: 0 0 20px rgba(246,191,0,0.3); margin-bottom: 0; }
.contact .section-subtitle { font-size: 1.2rem; color: var(--color-gray); margin-top: var(--spacing-sm); }
/* Match projects header design */
.contact .contact-header .section-title { margin-bottom: var(--spacing-sm); font-family: var(--font-english); }
.contact .contact-header .section-subtitle { letter-spacing: 0.2em; }

.contact__content { margin-top: 200px; }
.contact__info h3 { font-size: 2rem; margin-bottom: var(--spacing-md); color: var(--color-accent); }
.contact__info p { font-size: 1.1rem; color: var(--color-gray); line-height: 1.8; margin-bottom: var(--spacing-lg); }
.contact__methods { display: flex; flex-direction: column; gap: var(--spacing-md); }
.contact__method { display: flex; align-items: center; gap: var(--spacing-md); padding: var(--spacing-md); background: rgba(246,191,0,0.05); border-radius: 8px; border: 1px solid rgba(246,191,0,0.2); }
.contact__method-icon { font-size: 1.5rem; }
.contact__method-info { display: flex; flex-direction: column; }
.contact__method-info span { font-size: 0.8rem; color: var(--color-gray); text-transform: uppercase; letter-spacing: 0.1em; }
.contact__method-info a { font-family: var(--font-english); color: var(--color-accent); font-size: 1.1rem; }

.contact__form { background: #111111; padding: var(--spacing-lg); border-radius: 12px; border: 1px solid rgba(246,191,0,0.2); }
.form-group { margin-bottom: var(--spacing-md); }
.form-group label { display: block; margin-bottom: var(--spacing-xs); color: var(--color-gray); font-size: 0.9rem; font-family: var(--font-english); }
.form-group input, .form-group select, .form-group textarea { width: 100%; padding: var(--spacing-sm); background: var(--color-black); border: 1px solid var(--color-gray); border-radius: 6px; color: var(--color-white); font-family: var(--font-japanese) !important; transition: border-color var(--transition-fast); }
.form-group input:focus, .form-group select:focus, .form-group textarea:focus { outline: none; border-color: var(--color-accent); }
.form-group textarea { resize: vertical; min-height: 120px; }

/* Submit Button */
.btn {
  padding: var(--spacing-sm) var(--spacing-md);
  border: none;
  border-radius: 6px;
  font-family: var(--font-japanese);
  font-size: 1rem;
  cursor: pointer;
  transition: all var(--transition-fast);
}

.btn--primary {
  background: var(--color-accent);
  color: var(--color-black);
  font-weight: 600;
}

.btn--primary:hover {
  background: rgba(246, 191, 0, 0.8);
  transform: translateY(-2px);
}

.btn--full {
  width: 100%;
}

/* Form Messages */
.form-message {
  padding: var(--spacing-sm);
  border-radius: 6px;
  margin-bottom: var(--spacing-md);
  font-size: 0.9rem;
  transition: opacity 0.3s;
}

.form-message.success {
  background: rgba(34, 197, 94, 0.1);
  border: 1px solid rgba(34, 197, 94, 0.3);
  color: rgb(34, 197, 94);
}

.form-message.error {
  background: rgba(239, 68, 68, 0.1);
  border: 1px solid rgba(239, 68, 68, 0.3);
  color: rgb(239, 68, 68);
}

/* Field Errors */
.form-group input.error,
.form-group select.error,
.form-group textarea.error {
  border-color: rgb(239, 68, 68);
}

.error-message {
  color: rgb(239, 68, 68);
  font-size: 0.8rem;
  margin-top: var(--spacing-xs);
}

/* Media Embed + Official Social moved from team */
.team-media-embed { width: 100%; margin: 0 auto 200px; }
.team-media-embed h3 { text-align: center; font-size: 2rem; margin: 0 0 24px; }
.team-media-embed iframe { display: block; width: 100%; max-width: 100%; border: none; }
.team-media-embed iframe[title~="Facebook"],
.team-media-embed iframe[src*="facebook.com/plugins/page.php"] { width: 100% !important; height: 500px; border: none; overflow: hidden; }
.team-media-embed .note-embed { width: 100%; max-width: 100%; border: none; border-radius: 12px; background: rgba(255,255,255,0.03); display: block; min-height: 100px; }

.team-official-social { display: flex; gap: 30px; justify-content: center; align-items: center; margin-top: 16px; }
.official-social-item { display: flex; flex-direction: column; align-items: center; gap: 12px; }
.team-official-social .social-link { width: 72px; height: 72px; font-size: 24px; }
.team-official-social .social-link i { font-size: 24px; }
.social-label { color: var(--color-white); font-size: 20px; font-weight: 400; text-align: center; }

@media (max-width: 1024px) {
  .contact .section-title { font-size: 3rem; }
  .contact .section-container { padding: 0 var(--spacing-md); }
}
@media (max-width: 768px) {
  .contact .section-title { font-size: 2.5rem; }
  .contact .section-subtitle { font-size: 1rem; }
  .contact .section-container { padding: 0 var(--spacing-sm); }
  .contact .contact-header { padding-top: 120px; }
  .contact__content { grid-template-columns: 1fr; gap: var(--spacing-lg); }
}
@media (max-width: 480px) {
  .contact .section-title { font-size: 2rem; }
  .contact .section-subtitle { font-size: 0.9rem; }
} 