/* Contact page. */

@layer components {
/* —— Contact —— */
.ace-contact {
  background: var(--color-bg);
}

.ace-contact .ace-archive-hero__copy {
  max-width: min(100%, 62rem);
}

.ace-contact .ace-archive-hero__subtitle,
.ace-contact .ace-archive-hero__subtitle strong {
  margin-top: var(--space-3);
  color: var(--color-gold);
  font-family: var(--font-body);
  font-size: var(--text-md);
  font-weight: 400;
  font-style: normal;
  line-height: var(--leading-snug);
}

.ace-contact__form-wrap {
  position: relative;
  z-index: 2;
  margin-top: -3.25rem;
  padding-block: 0 var(--space-16);
}

.ace-contact-direct {
  background: var(--color-charcoal);
  color: var(--color-white);
}

.ace-contact-direct__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) repeat(2, minmax(0, 0.85fr));
  align-items: center;
  gap: 0;
  padding-block: var(--space-12);
}

.ace-contact-direct__copy {
  padding-inline-end: var(--space-10);
}

.ace-contact-direct__eyebrow {
  margin: 0;
  color: var(--color-gold);
  font-family: var(--font-display);
  font-size: var(--text-base);
  font-style: normal;
  font-weight: 600;
  letter-spacing: normal;
  text-transform: uppercase;
}

.ace-contact-direct__eyebrow::after {
  content: "";
  display: block;
  width: 2.75rem;
  height: 3px;
  margin-top: var(--space-2);
  margin-bottom: var(--space-4);
  background: var(--color-gold);
}

.ace-contact-direct__title {
  margin: 0;
  color: var(--color-white);
  font-family: var(--font-display);
  font-size: var(--text-2xl);
  font-style: italic;
  font-weight: 600;
  line-height: var(--leading-tight);
  letter-spacing: var(--tracking-display);
}

.ace-contact-direct__text {
  margin: var(--space-3) 0 0;
  max-width: 28rem;
  color: color-mix(in srgb, white 88%, transparent);
  font-size: var(--text-sm);
  line-height: var(--leading-normal);
}

.ace-contact-direct__channel {
  display: grid;
  justify-items: start;
  gap: var(--space-2);
  min-height: 100%;
  padding: var(--space-4) var(--space-8);
  border-inline-start: 1px solid color-mix(in srgb, white 14%, transparent);
  color: inherit;
  text-decoration: none;
}

.ace-contact-direct__channel:hover {
  text-decoration: none;
}

.ace-contact-direct__icon,
.ace-contact-direct__icon svg,
.ace-contact-direct__icon img,
.ace-contact-direct__icon.ace-icon--mask,
.ace-contact-direct__icon.ace-icon--green {
  width: 2rem;
  height: 2rem;
  color: var(--color-green);
}

.ace-contact-direct__label {
  color: var(--color-white);
  font-family: var(--font-display);
  font-size: var(--text-md);
  font-style: normal;
  font-weight: 600;
  letter-spacing: normal;
  text-transform: uppercase;
}

.ace-contact-direct__value {
  color: var(--color-white);
  font-size: var(--text-base);
}

.ace-contact-direct__hint {
  color: var(--color-green);
  font-size: var(--text-sm);
  font-weight: 500;
}

.ace-contact-direct__channel:hover .ace-contact-direct__hint {
  color: var(--color-gold);
}

@media (max-width: 767px) {
  .ace-contact__form-wrap {
    margin-top: -1.5rem;
    padding-block: 0 var(--space-12);
  }

  .ace-contact-direct__inner {
    grid-template-columns: 1fr;
    padding-block: var(--space-10);
  }

  .ace-contact-direct__copy {
    padding: 0 0 var(--space-6);
  }

  .ace-contact-direct__channel {
    padding: var(--space-5) 0;
    border-inline-start: 0;
    border-top: 1px solid color-mix(in srgb, white 14%, transparent);
  }
}
}
