.contact-form { margin-bottom: 16px; }
.contact-fields {
  display: grid;
  gap: 12px;
  margin-bottom: 14px;
}
.contact-fields label {
  display: block;
  color: var(--text);
  font-size: .9rem;
}
.contact-fields label span, .interior p.contact-note {
  color: var(--muted);
  font-size: .82rem;
}
.contact-fields :is(input, textarea) {
  display: block;
  width: 100%;
  min-height: 44px;
  margin-top: 4px;
  padding: 8px 10px;
  border: 1px solid var(--rim);
  border-radius: 7px;
  background: #100b0e;
  color: var(--text);
  font: inherit;
  font-size: 1rem;
}
.contact-fields textarea { resize: vertical; }
.contact-fields :is(input, textarea):focus-visible {
  outline: 2px solid var(--glint);
  outline-offset: 2px;
}
.contact-form button { cursor: pointer; font-family: inherit; }
.contact-form button:disabled { opacity: .65; cursor: not-allowed; }
.contact-form[aria-busy="true"] button { cursor: wait; }
.interior p.contact-status { margin: 8px 0 0; }
.contact-status:empty { display: none; }
@media (min-width: 640px) {
  .contact-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .contact-message { grid-column: 1 / -1; }
}

.travel-page {
  background:
    radial-gradient(ellipse at 96% 30%, #6d3f2466, transparent 46%),
    radial-gradient(ellipse at 5% 62%, #53283e59, transparent 50%),
    radial-gradient(ellipse at 87% 94%, #6c453333, transparent 50%),
    #0b080b;
}
.travel-page .interior {
  border-top-color: transparent;
  background: transparent;
}
.travel-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  align-items: center;
  min-height: clamp(215px, 43vw, 330px);
  margin-bottom: 18px;
  padding: clamp(16px, 4vw, 32px);
}
.travel-hero::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  background:
    linear-gradient(90deg, #0b080be6, #0b080b54 48%, transparent 78%),
    url("v2v-golden-entryway.webp") 76% center / cover no-repeat;
  mask-image:
    linear-gradient(90deg, transparent, #000 9%, #000 90%, transparent),
    linear-gradient(180deg, transparent, #000 12%, #000 79%, transparent);
  mask-composite: intersect;
  content: "";
}
.travel-page .travel-hero h1 {
  margin: 0;
  text-shadow: 0 2px 16px #0b080b;
}
