/* The shared contact area is an open white composition with native form clarity. */
.contact-section.compact-contact {
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: clamp(3rem, 7vw, 7rem);
  align-items: start;
  padding-block: clamp(4.5rem, 8vw, 7rem);
  background: #fff;
  color: #1d1d1f;
}
.compact-contact .contact-copy { max-width: 26rem; padding: 0; }
.compact-contact .contact-copy h2 {
  max-width: 26rem;
  margin-bottom: 1.75rem;
  color: #1d1d1f;
  font: 600 clamp(2rem, 3.8vw, 3rem)/1.0834 var(--heading);
  letter-spacing: -.003em;
  text-transform: none;
  text-wrap: balance;
}
.compact-contact .contact-copy .section-description {
  max-width: 24rem;
  margin-bottom: 1rem;
  color: #1d1d1f;
  font: 400 1.3125rem/1.381 var(--font);
  letter-spacing: 0;
}
.compact-contact .contact-copy .section-description strong { font-weight: 400; }
.compact-contact .contact-copy .body-secondary {
  max-width: 24rem;
  margin-bottom: 1.5rem;
  color: #6e6e73;
  font: 400 1.0625rem/1.4706 var(--font);
  letter-spacing: 0;
}
.compact-contact .contact-copy .contact-email { margin-top: 2rem; }
.compact-contact .contact-copy a {
  color: #1d1d1f;
  font-weight: 400;
  text-decoration: underline;
  text-underline-offset: .2em;
  text-decoration-thickness: .0625rem;
}
.compact-contact .inquiry-form {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}
.compact-contact .inquiry-form h3 {
  margin-bottom: 1.75rem;
  color: #1d1d1f;
  font: 600 1.5rem/1.1667 var(--heading);
  letter-spacing: .009em;
  text-transform: none;
}
.compact-contact .form-fields { gap: 1.25rem 1rem; }
.compact-inquiry .field label,
.compact-inquiry legend {
  margin-bottom: .5rem;
  color: #1d1d1f;
  font: 400 .875rem/1.4286 var(--font);
  letter-spacing: 0;
}
.compact-inquiry .field label span,
.compact-inquiry legend span { color: #6e6e73; font: 400 .75rem/1.3334 var(--font); }
.compact-inquiry input:not([type=checkbox]):not([type=file]),
.compact-inquiry textarea,
.compact-inquiry .language-disclosure > summary {
  min-height: 3.25rem;
  padding: .8125rem 1rem;
  border: .0625rem solid #86868b;
  border-radius: .75rem;
  background: #fff;
  box-shadow: none;
  color: #1d1d1f;
  font: 400 1.0625rem/1.4118 var(--font);
  letter-spacing: 0;
  transition: border-color 120ms ease, box-shadow 120ms ease;
}
.compact-inquiry textarea { height: 6rem; min-height: 6rem; }
.compact-inquiry input::placeholder,
.compact-inquiry textarea::placeholder { color: #6e6e73; opacity: 1; }
.compact-inquiry input:not([type=checkbox]):not([type=file]):hover,
.compact-inquiry textarea:hover,
.compact-inquiry .language-disclosure > summary:hover { border-color: #1d1d1f; }
.compact-inquiry input:not([type=checkbox]):not([type=file]):focus,
.compact-inquiry textarea:focus,
.compact-inquiry .language-disclosure[open] > summary {
  border-color: #1d1d1f;
  background: #fff;
  box-shadow: 0 0 0 .1875rem #b7ff2252;
}
.compact-inquiry :is(input, textarea, summary, button, a):focus-visible { outline: .125rem solid #1d1d1f; outline-offset: .1875rem; }
.compact-inquiry .field-hint { margin-bottom: .625rem; color: #6e6e73; font: 400 .8125rem/1.3847 var(--font); }
.compact-inquiry .language-disclosure > summary { gap: .75rem; }
.compact-inquiry .language-disclosure > summary::after { width: .5rem; height: .5rem; border-width: .09375rem; }
.compact-inquiry .language-disclosure.has-selection > summary { border-color: #86868b; background: #fff; }
.compact-inquiry .language-disclosure.has-selection .language-selection { font-weight: 400; }
.compact-inquiry .language-panel {
  top: calc(100% + .5rem);
  padding: 1rem;
  border: .0625rem solid #d2d2d7;
  border-radius: 1.125rem;
  background: #fff;
  box-shadow: 0 .375rem 1.5rem #00000014;
  transform-origin: top center;
}
.compact-inquiry .language-choices { gap: .25rem; }
.compact-inquiry .language-choice {
  gap: .625rem;
  min-height: 2.75rem;
  padding: .5rem;
  border: .0625rem solid transparent;
  border-radius: .5rem;
  background: #fff;
}
.compact-inquiry .language-choice:hover { background: #f5f5f7; }
.compact-inquiry .language-choice:has(input:checked) { border-color: transparent; background: #f5f5f7; }
.compact-inquiry .language-choice input { border-color: #86868b; border-radius: .3125rem; }
.compact-inquiry .language-choice input:checked { border-color: #1d1d1f; background: #b7ff22; }
.compact-inquiry .language-choice input:checked::before { border-color: #1d1d1f; }
.compact-inquiry .language-choice span { color: #1d1d1f; font: 400 .875rem/1.4286 var(--font); }
.compact-inquiry .other-language-inline { margin-top: .75rem; padding: .75rem 0 0; border-top: .0625rem solid #d2d2d7; }
.compact-inquiry .language-panel-footer { margin-top: .75rem; }
.compact-inquiry .language-done {
  min-height: 2.75rem;
  padding: .625rem 1.375rem;
  border: 0;
  border-radius: 99rem;
  background: #b7ff22;
  color: #1d1d1f;
  font: 400 .9375rem/1.3334 var(--font);
}
.compact-inquiry .video-source-row { gap: .625rem; }
.compact-contact .compact-inquiry .file-button {
  min-height: 3.25rem;
  padding: .8125rem 1.125rem;
  border: .0625rem solid #86868b;
  border-radius: .75rem;
  background: #fff;
  color: #1d1d1f;
  box-shadow: none;
  font: 400 .9375rem/1.6 var(--font);
  letter-spacing: 0;
}
.compact-contact .compact-inquiry .file-picker:hover .file-button { background: #f5f5f7; border-color: #1d1d1f; }
.compact-inquiry .file-picker:focus-within { border-radius: .75rem; outline-offset: .1875rem; }
.compact-inquiry #file-limits { color: #6e6e73; font-size: .75rem; line-height: 1.3334; }
.compact-inquiry .selected-file { gap: .25rem .625rem; }
.compact-inquiry #remove-file { min-height: 2.75rem; padding: .625rem .8125rem; border-color: #86868b; font-size: .8125rem; font-weight: 400; }
.compact-inquiry .submit-button {
  min-height: 3.125rem;
  border: 0;
  border-radius: 99rem;
  background: #b7ff22;
  color: #1d1d1f;
  box-shadow: none;
  font: 400 1.0625rem/1.4118 var(--font);
  letter-spacing: 0;
}
.compact-inquiry .submit-button:hover { background: #c3ff46; box-shadow: none; }
.compact-inquiry :is(.submit-button, .language-done, #remove-file),
.compact-inquiry .file-picker .file-button { transition: background 140ms ease, transform 140ms ease; }
.compact-inquiry :is(.submit-button, .language-done, #remove-file):active,
.compact-inquiry .file-picker:active .file-button { transform: scale(.985); transition-duration: 0ms; }
.compact-inquiry .form-followup,
.compact-inquiry .privacy-note { color: #6e6e73; font: 400 .75rem/1.4167 var(--font); }
.compact-inquiry .availability-note { color: #6e6e73; font: 400 .8125rem/1.4616 var(--font); }
.compact-inquiry .form-status:not(:empty) {
  padding: .875rem 1rem;
  border: .0625rem solid #d2d2d7;
  border-radius: .75rem;
  background: #f5f5f7;
  color: #1d1d1f;
  font: 400 .9375rem/1.4667 var(--font);
}
.compact-inquiry .field-error { font-size: .8125rem; font-weight: 400; line-height: 1.4616; }
.compact-inquiry [aria-invalid=true] { border-color: #b42318; box-shadow: 0 0 0 .125rem #b423181a; }

@media (max-width: 68.6875rem) {
  .contact-section.compact-contact { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 3rem; }
}
@media (max-width: 53.6875rem) {
  .contact-section.compact-contact { grid-template-columns: 1fr; gap: 2.5rem; }
  .compact-contact .contact-copy { position: static; max-width: 38rem; }
  .compact-contact .contact-copy h2 { max-width: 34rem; }
  .compact-contact .contact-copy .section-description,
  .compact-contact .contact-copy .body-secondary { max-width: 34rem; }
  .compact-contact .inquiry-form { max-width: 40rem; }
}
@media (max-width: 37.4375rem) {
  .contact-section.compact-contact { padding-block: 4rem; gap: 2rem; }
  .compact-contact .contact-copy h2 { margin-bottom: 1.5rem; font-size: 2rem; line-height: 1.125; }
  .compact-contact .contact-copy .section-description { font-size: 1.1875rem; line-height: 1.4211; }
  .compact-contact .inquiry-form { padding: 0; }
  .compact-contact .form-fields { gap: 1.25rem .875rem; }
  .compact-inquiry .form-fields > .field:not(.form-wide) > label { min-height: 0; }
  .compact-inquiry .language-panel { position: static; margin-top: .5rem; padding: .75rem; box-shadow: none; }
  .compact-inquiry .language-choices { grid-template-columns: 1fr; }
}
@media (max-width: 29.9375rem) {
  .compact-contact .form-fields { grid-template-columns: 1fr; }
  .compact-inquiry .video-source-row { grid-template-columns: minmax(0, 1fr) auto; }
  .compact-inquiry .video-source-row > .field { grid-column: 1 / -1; }
  .compact-inquiry .video-or { justify-self: start; }
  .compact-inquiry .file-picker { justify-self: end; }
}
@media (prefers-contrast: more) {
  .compact-inquiry input:not([type=file]),
  .compact-inquiry textarea,
  .compact-inquiry .language-disclosure > summary,
  .compact-inquiry .language-panel,
  .compact-contact .compact-inquiry .file-button { border-color: #1d1d1f; }
  .compact-contact .contact-copy .body-secondary,
  .compact-inquiry .field-hint,
  .compact-inquiry .privacy-note { color: #1d1d1f; }
}
@media (prefers-reduced-motion: reduce) {
  .compact-inquiry *,
  .compact-inquiry *::after { transition-duration: 0ms !important; }
  .compact-inquiry :is(.submit-button, .language-done, #remove-file):active,
  .compact-inquiry .file-picker:active .file-button { transform: none; }
}
