/* Contact Us page styles — tailored to cyber-bronze theme without duplicating base.css */

.contact-hero {
  padding-block: var(--space-56) var(--space-32);
  background: linear-gradient(180deg, rgba(31, 228, 228, 0.06), rgba(255, 209, 102, 0.04)), transparent;
  border-bottom: 1px solid var(--color-border);
}

.contact-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-24);
  padding-block: var(--space-32) var(--space-56);
}

@media (min-width: 992px) {
  .contact-grid {
    grid-template-columns: 1fr 1fr;
  }
  .contact-grid > .contact-card:nth-child(2) {
    grid-column: span 1;
  }
  .contact-grid > .contact-card.card--elevated {
    grid-column: 1 / -1; /* full width for info */
  }
}

.contact-card h2 { margin-top: 0; }

.info-columns {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-24);
}

@media (min-width: 768px) {
  .info-columns { grid-template-columns: repeat(3, 1fr); }
}

.list-contacts li + li { margin-top: var(--space-8); }

.form-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-16);
}

.form-field--full { grid-column: 1 / -1; }

@media (min-width: 768px) {
  .form-grid { grid-template-columns: 1fr 1fr; }
}

.form-actions { margin-top: var(--space-12); }
.form-status { margin-top: var(--space-12); }

.checkbox { display: inline-flex; align-items: flex-start; gap: var(--space-8); }
.checkbox input { margin-top: 4px; }

.support-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-16);
}



.social-list, .bullet-list, .roles-list, .events-list { margin: 0; padding: 0; list-style: none; }
.social-list li + li, .bullet-list li + li, .roles-list li + li, .events-list li + li { margin-top: var(--space-8); }

.event-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-16);
}

.newsletter-form { margin-top: var(--space-8); }
.newsletter-row { display: grid; grid-template-columns: 1fr; gap: var(--space-12); }

@media (min-width: 600px) {
  .newsletter-row { grid-template-columns: 1fr auto; }
}

/* Subtle accent borders */
.contact-card { border: 1px solid var(--color-border); }

/* Focus states rely on base.css; here we ensure buttons align visually */
button.btn[disabled] { opacity: 0.6; cursor: not-allowed; }
