/* [project]/app/contact/contact.module.css [app-client] (css) */
.contact-module__xwJ-uq__page {
  min-height: 100vh;
  font-family: var(--font-body), Inter, sans-serif;
  background: #f0f2f5;
  padding: 48px 20px 80px;
}

.contact-module__xwJ-uq__topBar {
  justify-content: space-between;
  align-items: center;
  max-width: 1100px;
  margin: 0 auto 40px;
  display: flex;
}

.contact-module__xwJ-uq__backLink {
  color: #64748b;
  font-size: .85rem;
  text-decoration: none;
  transition: color .15s;
}

.contact-module__xwJ-uq__backLink:hover {
  color: #1e293b;
}

.contact-module__xwJ-uq__logoLink {
  font-family: var(--font-heading), "DM Sans", sans-serif;
  color: #0f172a;
  letter-spacing: -.02em;
  font-size: 1rem;
  font-weight: 800;
  text-decoration: none;
}

.contact-module__xwJ-uq__layout {
  grid-template-columns: 340px 1fr;
  align-items: start;
  gap: 28px;
  max-width: 1100px;
  margin: 0 auto 48px;
  display: grid;
}

.contact-module__xwJ-uq__infoPanel {
  background: #fff;
  border-radius: 16px;
  padding: 40px 32px;
  box-shadow: 0 1px 3px #0000000f, 0 8px 32px #00000014;
}

.contact-module__xwJ-uq__infoTitle {
  font-family: var(--font-heading), "DM Sans", sans-serif;
  letter-spacing: -.04em;
  color: #0f172a;
  margin: 0 0 14px;
  font-size: 1.6rem;
  font-weight: 900;
}

.contact-module__xwJ-uq__infoText {
  color: #475569;
  margin: 0 0 32px;
  font-size: .9rem;
  line-height: 1.75;
}

.contact-module__xwJ-uq__infoItems {
  flex-direction: column;
  gap: 24px;
  display: flex;
}

.contact-module__xwJ-uq__infoItem {
  align-items: flex-start;
  gap: 14px;
  display: flex;
}

.contact-module__xwJ-uq__infoIcon {
  flex-shrink: 0;
  margin-top: 2px;
  font-size: 1.4rem;
}

.contact-module__xwJ-uq__infoLabel {
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #94a3b8;
  margin: 0 0 4px;
  font-size: .75rem;
  font-weight: 700;
}

.contact-module__xwJ-uq__infoValue {
  color: #0f172a;
  margin: 0;
  font-size: .875rem;
  line-height: 1.5;
  text-decoration: none;
}

a.contact-module__xwJ-uq__infoValue:hover {
  color: #3b5bdb;
}

.contact-module__xwJ-uq__card {
  background: #fff;
  border-radius: 16px;
  padding: 48px;
  box-shadow: 0 1px 3px #0000000f, 0 8px 32px #00000014;
}

.contact-module__xwJ-uq__formTitle {
  font-family: var(--font-heading), "DM Sans", sans-serif;
  letter-spacing: -.03em;
  color: #0f172a;
  border-bottom: 1px solid #e2e8f0;
  margin: 0 0 28px;
  padding-bottom: 20px;
  font-size: 1.25rem;
  font-weight: 800;
}

.contact-module__xwJ-uq__errorBanner {
  color: #dc2626;
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: 10px;
  margin-bottom: 20px;
  padding: 12px 16px;
  font-size: .875rem;
  line-height: 1.5;
}

.contact-module__xwJ-uq__row {
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  display: grid;
}

.contact-module__xwJ-uq__fieldGroup {
  margin-bottom: 20px;
}

.contact-module__xwJ-uq__label {
  color: #374151;
  letter-spacing: .01em;
  margin-bottom: 6px;
  font-size: .82rem;
  font-weight: 600;
  display: block;
}

.contact-module__xwJ-uq__input, .contact-module__xwJ-uq__textarea {
  color: #0f172a;
  box-sizing: border-box;
  background: #f8fafc;
  border: 1.5px solid #e2e8f0;
  border-radius: 10px;
  outline: none;
  width: 100%;
  padding: 11px 14px;
  font-family: inherit;
  font-size: .9rem;
  transition: border-color .15s, box-shadow .15s, background .15s;
}

.contact-module__xwJ-uq__input:focus, .contact-module__xwJ-uq__textarea:focus {
  background: #fff;
  border-color: #3b5bdb;
  box-shadow: 0 0 0 3px #3b5bdb1a;
}

.contact-module__xwJ-uq__input:disabled, .contact-module__xwJ-uq__textarea:disabled {
  opacity: .6;
  cursor: not-allowed;
}

.contact-module__xwJ-uq__inputError {
  background: #fff5f5 !important;
  border-color: #f87171 !important;
}

.contact-module__xwJ-uq__textarea {
  resize: vertical;
  min-height: 120px;
}

.contact-module__xwJ-uq__fieldError {
  color: #dc2626;
  margin: 5px 0 0;
  font-size: .78rem;
}

.contact-module__xwJ-uq__recaptchaWrap {
  margin-bottom: 20px;
}

.contact-module__xwJ-uq__recaptchaNote {
  color: #94a3b8;
  margin: 0 0 20px;
  font-size: .75rem;
  line-height: 1.5;
}

.contact-module__xwJ-uq__recaptchaNote a {
  color: #3b5bdb;
  text-decoration: none;
}

.contact-module__xwJ-uq__recaptchaNote a:hover {
  text-decoration: underline;
}

.contact-module__xwJ-uq__btnSubmit {
  color: #fff;
  cursor: pointer;
  background: #3b5bdb;
  border: none;
  border-radius: 10px;
  width: 100%;
  padding: 13px;
  font-family: inherit;
  font-size: .95rem;
  font-weight: 700;
  transition: background .15s, transform .15s, opacity .15s;
}

.contact-module__xwJ-uq__btnSubmit:hover:not(:disabled) {
  background: #2f4ac4;
  transform: translateY(-1px);
}

.contact-module__xwJ-uq__btnSubmit:disabled {
  opacity: .7;
  cursor: not-allowed;
}

.contact-module__xwJ-uq__btnSpinner {
  justify-content: center;
  align-items: center;
  gap: 8px;
  display: flex;
}

.contact-module__xwJ-uq__btnSpinner svg {
  width: 18px;
  height: 18px;
  animation: .8s linear infinite contact-module__xwJ-uq__spin;
}

@keyframes contact-module__xwJ-uq__spin {
  from {
    transform: rotate(0);
  }

  to {
    transform: rotate(360deg);
  }
}

.contact-module__xwJ-uq__successState {
  text-align: center;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 40px 20px;
  display: flex;
}

.contact-module__xwJ-uq__successIcon {
  margin-bottom: 8px;
  font-size: 3rem;
}

.contact-module__xwJ-uq__successTitle {
  font-family: var(--font-heading), "DM Sans", sans-serif;
  color: #0f172a;
  letter-spacing: -.03em;
  margin: 0;
  font-size: 1.5rem;
  font-weight: 900;
}

.contact-module__xwJ-uq__successText {
  color: #475569;
  max-width: 400px;
  margin: 0;
  font-size: .9rem;
  line-height: 1.7;
}

.contact-module__xwJ-uq__btnReset {
  color: #3b5bdb;
  cursor: pointer;
  background: none;
  border: 1.5px solid #3b5bdb;
  border-radius: 8px;
  margin-top: 12px;
  padding: 10px 24px;
  font-family: inherit;
  font-size: .875rem;
  font-weight: 600;
  transition: background .15s, color .15s;
}

.contact-module__xwJ-uq__btnReset:hover {
  background: #eff3ff;
}

.contact-module__xwJ-uq__pageFooter {
  text-align: center;
  color: #94a3b8;
  border-top: 1px solid #e2e8f0;
  max-width: 1100px;
  margin: 0 auto;
  padding-top: 24px;
  font-size: .82rem;
}

.contact-module__xwJ-uq__footerLink {
  color: #3b5bdb;
  text-decoration: none;
}

.contact-module__xwJ-uq__footerLink:hover {
  text-decoration: underline;
}

@media (max-width: 860px) {
  .contact-module__xwJ-uq__layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .contact-module__xwJ-uq__row {
    grid-template-columns: 1fr;
  }

  .contact-module__xwJ-uq__card, .contact-module__xwJ-uq__infoPanel {
    padding: 32px 20px;
  }
}

/*# sourceMappingURL=app_contact_contact_module_8ac95d54.css.map*/