.contact-video-hero {
  min-height: clamp(590px, 73vh, 760px);
  grid-template-columns: minmax(0, 1.45fr) minmax(330px, .85fr);
  align-items: center;
  align-content: center;
  column-gap: clamp(3rem, 7vw, 8rem);
}

.contact-video-hero .contact-hero-copy {
  width: 100%;
  max-width: 900px;
  min-height: 0;
}

.contact-hero-copy > p:not(.eyebrow) {
  max-width: 780px;
  margin: 2rem 0 0;
  color: #bac7cd;
  font-size: clamp(1rem, 1.45vw, 1.24rem);
}

.contact-video-hero .contact-short-column {
  position: relative;
  z-index: 2;
  width: min(100%, 560px);
  justify-self: end;
  padding: clamp(1rem, 1.8vw, 1.5rem);
  border: 1px solid rgba(215,170,85,.26);
  border-radius: 1.35rem;
  background:
    linear-gradient(145deg, rgba(13,32,43,.9), rgba(3,11,17,.94)),
    radial-gradient(circle at 100% 0, rgba(242,204,125,.12), transparent 42%);
  box-shadow: 0 34px 90px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.05), 0 0 55px rgba(215,170,85,.045);
}

.contact-video-hero .contact-short-column::before,
.contact-video-hero .contact-short-column::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.contact-video-hero .contact-short-column::before {
  inset: .42rem;
  border: 1px solid rgba(242,204,125,.08);
  border-radius: 1.05rem;
}

.contact-video-hero .contact-short-column::after {
  right: -1px;
  top: 18%;
  width: 1px;
  height: 42%;
  background: linear-gradient(transparent, var(--gold-bright), transparent);
  box-shadow: 0 0 18px rgba(242,204,125,.45);
}

.contact-short-heading {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: .8rem;
  margin: 0 0 .9rem;
  color: var(--gold-bright);
}

.contact-short-heading span {
  width: 2.3rem;
  height: 1px;
  background: linear-gradient(90deg, var(--gold-bright), rgba(242,204,125,.18));
}

.contact-short-heading p {
  margin: 0;
  font-size: .67rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.contact-short-player {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  margin: 0;
  border-color: rgba(242,204,125,.28);
  border-radius: .85rem;
  box-shadow: 0 20px 48px rgba(0,0,0,.42), 0 0 0 1px rgba(255,255,255,.025);
}

.contact-short-player .video-launch img { object-fit: cover; }
.contact-short-player .video-launch-shade { background: linear-gradient(0deg, rgba(2,8,12,.7), transparent 55%), radial-gradient(circle at center, transparent 0, rgba(2,8,12,.08) 72%); }
.contact-short-player .video-launch-button { width: clamp(62px, 5vw, 78px); }
.contact-short-player .video-launch-label { bottom: 1rem; }

.contact-short-privacy {
  position: relative;
  z-index: 3;
  margin: .85rem auto .65rem;
  max-width: 31rem;
  color: rgba(205,216,220,.68);
  font-size: .72rem;
  line-height: 1.45;
  text-align: center;
}

.contact-short-links {
  position: relative;
  z-index: 4;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: .35rem 1.15rem;
  color: #bac7cd;
  font-size: .74rem;
  letter-spacing: .02em;
}

.contact-short-links a {
  padding: .2rem 0;
  border-bottom: 1px solid rgba(242,204,125,.22);
}

.contact-short-column:has(iframe) .contact-short-heading,
.contact-short-column:has(iframe) .contact-short-privacy,
.contact-short-column:has(iframe) .contact-short-links { display: none; }

.contact-short-links a:hover,
.contact-short-links a:focus-visible { color: var(--gold-bright); border-color: var(--gold-bright); }

@media (max-width: 1120px) {
  .contact-video-hero { grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr); column-gap: 2.5rem; }
  .contact-video-hero .contact-hero-copy h1 { font-size: clamp(3.4rem, 6.4vw, 6.3rem); }
}

@media (max-width: 900px) {
  .contact-video-hero { display: grid; grid-template-columns: 1fr; min-height: 0; row-gap: 2.8rem; }
  .contact-video-hero .contact-hero-copy { width: 100%; }
  .contact-video-hero .contact-short-column { width: min(100%, 38rem); justify-self: center; }
}

@media (max-width: 560px) {
  .contact-video-hero .contact-short-column { width: calc(100% + .25rem); padding: .75rem; border-radius: 1rem; }
  .contact-short-player { border-radius: .65rem; }
  .contact-short-heading { margin: .1rem .15rem .7rem; }
  .contact-short-privacy { margin-top: .7rem; font-size: .66rem; }
  .contact-short-links { font-size: .7rem; gap: .3rem .85rem; }
}
