/* PixonLab contact-page-only responsive and submission UI fixes. */
html, body { max-width: 100%; overflow-x: hidden; }

.contact > .container {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  align-items: start;
  gap: clamp(28px, 5vw, 72px);
}

.contact-info,
.contact-form-wrapper,
.contact-form,
.contact-form .form-row,
.contact-form .form-group,
.contact-detail,
.whatsapp-contact { min-width: 0; }

.contact-info { width: 100%; }
.contact-form-wrapper { width: 100%; max-width: 100%; box-sizing: border-box; }
.contact-form input,
.contact-form select,
.contact-form textarea,
.contact-form button { box-sizing: border-box; max-width: 100%; }
.contact-form select { min-width: 0; }
.contact-form button[type="submit"] { display: inline-flex; align-items: center; gap: 9px; }
.contact-form button[type="submit"] svg { width: 18px; height: 18px; flex: 0 0 18px; }

.contact-detail {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  width: 100%;
}
.contact-detail > div:last-child { min-width: 0; }
.contact-detail p,
.contact-detail a,
.whatsapp-contact a { overflow-wrap: anywhere; word-break: break-word; }
.whatsapp-contact { max-width: 100%; }

.contact-form-status { overflow-wrap: anywhere; }
.contact-submit-spinner {
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 999px;
  animation: pixon-contact-spin .7s linear infinite;
}
@keyframes pixon-contact-spin { to { transform: rotate(360deg); } }

@media (prefers-reduced-motion: reduce) {
  .contact-submit-spinner { animation: none; border-right-color: currentColor; }
}

@media (max-width: 900px) {
  .contact > .container { grid-template-columns: 1fr; gap: 32px; }
  .contact-info, .contact-form-wrapper { width: 100%; }
}

@media (max-width: 760px) {
  .contact.section-padding { padding-left: 0; padding-right: 0; }
  .contact > .container {
    grid-template-columns: 1fr;
    width: min(100%, 100% - 28px);
    margin-inline: auto;
    gap: 26px;
  }
  .contact-form-wrapper { padding: 20px; border-radius: 18px; }
  .contact-form { gap: 16px; }
  .contact-form .form-row { grid-template-columns: 1fr; gap: 16px; }
  .contact-form .form-intro { grid-template-columns: 1fr; gap: 10px; }
  .contact-form input,
  .contact-form select,
  .contact-form textarea {
    width: 100%;
    min-width: 0;
    font-size: 16px;
  }
  .contact-form textarea { min-height: 132px; }
  .contact-detail { gap: 11px; }
  .whatsapp-contact { align-items: flex-start; gap: 11px; }
  .page-hero-content, .page-hero-content p { max-width: 100%; }
}

@media (max-width: 430px) {
  .contact > .container { width: min(100%, 100% - 20px); }
  .contact-form-wrapper { padding: 16px; border-radius: 16px; }
  .contact-form .form-intro h3 { font-size: 1.18rem; line-height: 1.3; }
  .contact-form .secure-pill { white-space: normal; }
  .contact-form input,
  .contact-form select,
  .contact-form textarea { padding: 12px; border-radius: 12px; }
  .contact-form button[type="submit"] { width: 100%; min-height: 50px; justify-content: center; }
  .contact-detail-icon,
  .whatsapp-icon { flex: 0 0 40px; width: 40px; min-width: 40px; height: 40px; }
  .footer-top, .footer-bottom { min-width: 0; }
  .footer-col, .footer-brand { min-width: 0; }
}
