.contact-page { padding: 52px 0 64px; }
.contact-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.25fr); gap: 64px; align-items: start; }
.contact-copy { min-width: 0; padding-top: 8px; }
.contact-copy h1 { font-size: clamp(36px,3.7vw,52px); margin-top: 22px; line-height: 1.1; }
.contact-copy h1 span { color: #7c8bc2; }
.contact-lead { max-width: 390px; margin-top: 22px; font-size: 18px; color: var(--mute); }
.contact-details { margin-top: 36px; padding-top: 26px; border-top: 1px solid var(--line); }
.contact-details>a { display: inline-block; font-size: clamp(19px,2vw,24px); font-weight: 600; margin-top: 12px; overflow-wrap: anywhere; }
.contact-details>a:hover { text-decoration: underline; text-underline-offset: 4px; }
.contact-details>a span { margin-left: 12px; color: #3a56a5; }
.contact-details p,.contact-topics li { font-size: 14px; color: var(--mute); }
.contact-details p { margin-top: 6px; }
.contact-topics { margin-top: 30px; }
.contact-topics h2 { font-size: 17px; letter-spacing: -.02em; }
.contact-topics ul { padding-left: 18px; margin-top: 12px; }
.contact-topics li+li { margin-top: 6px; }
.contact-form-wrapper { min-width: 0; padding: 30px; box-shadow: 0 18px 50px -36px rgba(3,15,52,.3); }
.contact-form-wrapper h2 { font-size: 26px; }
.form-intro { color: var(--mute); font-size: 14px; margin: 10px 0 24px; }
.optional,.field-help { font-size: 12px; color: var(--mute); font-weight: 400; }
.field-help { margin-top: 8px; }
.form-group input,.form-group select,.form-group textarea { font-size: 16px; background: #fff; }
.form-group select { appearance: none; min-height: 50px; padding-right: 36px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23030f34' stroke-width='1.5'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; }
.form-group textarea { min-height: 140px; }
.form-policy { color: var(--mute); margin-top: 16px; }
.contact-submit { margin-top: 20px; gap: 30px; min-height: 50px; }
.contact-submit:disabled { cursor: not-allowed; }
.contact-status { margin-top: 16px; font-size: 14px; color: var(--mute); overflow-wrap: anywhere; }
.contact-status a { text-decoration: underline; }
.contact-status:empty { display: none; }
.contact-status[data-state="error"] { color: #a12a40; }
.contact-status[data-state="success"] { color: #176448; padding: 16px; border-radius: 12px; background: #e3f4ec; }
#contact-challenge { min-width: 0; }
altcha-widget { display: block; max-width: 100%; --altcha-max-width: 100%; --altcha-border-radius: 12px; --altcha-font-family: Manrope,system-ui,sans-serif; }
altcha-widget .altcha-checkbox>svg,altcha-widget .altcha-checkbox-spinner { pointer-events: none; }
@media (max-width: 1000px) {
  .contact-layout { gap: 32px; grid-template-columns: minmax(0,1fr) minmax(0,1.2fr); }
  .contact-form-wrapper .form-row { grid-template-columns: 1fr; gap: 0; }
}
@media (max-width: 760px) {
  .contact-page { padding: 32px 0 40px; }
  .contact-layout { grid-template-columns: minmax(0,1fr); gap: 28px; }
  .contact-copy h1 { font-size: clamp(34px,8vw,44px); margin-top: 16px; }
  .contact-lead { font-size: 16px; max-width: 480px; margin-top: 16px; }
  .contact-details { margin-top: 24px; padding-top: 20px; }
  .contact-topics { display: none; }
  .contact-form-wrapper { padding: 22px; }
  .contact-submit { width: 100%; justify-content: space-between; }
}
