/* === Contact ================================================================
   Pick a destination and write, in the same glance.
   ========================================================================== */

.icrt-contact { padding: 2rem 0 3.5rem; }

.icrt-contact__head { max-width: 46rem; margin-bottom: 2rem; }

.icrt-contact__eyebrow {
  margin: 0 0 .5rem;
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  color: var(--icrt-accent);
}

.icrt-contact__title {
  margin: 0 0 .75rem;
  font-size: clamp(1.9rem, 4vw, 3rem);
  line-height: 1.08;
  letter-spacing: -.025em;
}

.icrt-contact__lead { margin: 0; font-size: 1.05rem; line-height: 1.6; color: var(--icrt-ink-soft); }

.icrt-contact__cols { display: grid; gap: 2rem; align-items: start; max-width: 74rem; }

@media (min-width: 64rem) {
  .icrt-contact__cols { grid-template-columns: minmax(0, 1fr) 23rem; }
}

/* --- the form -------------------------------------------------------------- */

.icrt-contact__form {
  min-width: 0;
  padding: clamp(1.3rem, 3vw, 2rem);
  border-radius: 1rem;
  background: var(--icrt-paper);
  border: 1px solid var(--icrt-line);
}

.icrt-contact__formHead {
  margin: 0 0 1.25rem;
  padding-bottom: .6rem;
  border-bottom: 0;
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  color: var(--icrt-muted);
}

.icrt-contact__form .wpcf7 > form > p:last-of-type { margin-bottom: 0; }
.icrt-contact__missing { margin: 0; color: var(--icrt-ink-soft); }

/* --- routing --------------------------------------------------------------- */

.icrt-contact__routes { min-width: 0; display: grid; gap: .9rem; align-content: start; }

.icrt-contact__routesHead {
  margin: 0 0 .1rem;
  padding-bottom: .5rem;
  border-bottom: 0;
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  color: var(--icrt-muted);
}

.icrt-croute {
  padding: .95rem 1.1rem 1.05rem;
  border-radius: .8rem;
  background: var(--icrt-mist);
  border: 1px solid var(--icrt-line);
}

.icrt-croute--alt { background: var(--icrt-paper); border-color: var(--icrt-accent); }

.icrt-croute__title { margin: 0 0 .3rem; font-size: .98rem; letter-spacing: -.01em; }
.icrt-croute__body { margin: 0; font-size: .87rem; line-height: 1.55; color: var(--icrt-ink-soft); }

.icrt-croute__link {
  display: inline-block;
  margin-top: .6rem;
  font-size: .85rem;
  font-weight: 700;
  color: var(--icrt-accent);
  text-decoration: none;
}

.icrt-croute__link:hover { text-decoration: underline; }
