.arrival {
  max-width: 1600px;
  margin: clamp(60px, 6vw, 110px) auto clamp(90px, 8vw, 150px);
}
.arrival-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #171814;
}
.arrival video, .arrival-end {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.arrival-end { position: absolute; inset: 0; }
.arrival [hidden] { display: none !important; }
.arrival-controls { display: flex; justify-content: flex-end; min-height: 48px; }
.arrival button {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 44px;
  padding: 10px 0 10px 20px;
  border: 0;
  color: #cdbf9d;
  background: transparent;
  font: 400 11px/1.4 var(--sans);
  letter-spacing: .06em;
  cursor: pointer;
}
.arrival button::before { content: '▶'; font-size: 9px; width: 10px; text-align: center; }
.arrival button[data-action='pause']::before { content: 'Ⅱ'; font-size: 14px; }
.arrival button[data-action='replay']::before { content: '↻'; font-size: 17px; }
.arrival button:hover { color: #f2eee5; }
.arrival button:focus-visible { outline: 2px solid #cdbf9d; outline-offset: 4px; }
@media (max-width: 700px) {
  .arrival { margin-top: 52px; margin-bottom: 76px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Arrival copy follows the Home hero typography; the media remains unchanged. */
.arrival { position: relative; display: flex; flex-direction: column; }
.arrival-frame::after {
  content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none;
  background: linear-gradient(90deg, rgba(12,13,10,.62) 0%, rgba(12,13,10,.38) 30%, rgba(12,13,10,.08) 58%, transparent 76%);
}
.arrival-copy {
  position: absolute; z-index: 3; left: clamp(32px,4.5vw,76px); top: 50%;
  transform: translateY(-60%); width: 44%; max-width: 560px; pointer-events: none;
}
.arrival-copy h2 {
  margin: 0; font-family: var(--display, "EB Garamond", serif); font-weight: 400;
  font-size: clamp(34px,4vw,64px); line-height: 1.06; letter-spacing: .015em;
  color: #f4efe6; text-shadow: 0 2px 12px rgba(0,0,0,.22);
}
.arrival-copy p {
  margin: 20px 0 0; max-width: 420px; font-family: var(--sans, Inter, sans-serif);
  font-size: clamp(14px,1.15vw,18px); font-weight: 300; line-height: 1.65;
  letter-spacing: .01em; color: #f3eee6; text-shadow: 0 1px 8px rgba(0,0,0,.25);
}
@media (max-width: 760px) {
  .arrival-copy { position: static; order: -1; transform: none; width: auto; max-width: 540px; padding: 0 0 26px; }
  .arrival-copy h2 { font-size: clamp(30px,7vw,42px); text-shadow: none; }
  .arrival-copy p { margin-top: 14px; font-size: 14px; text-shadow: none; color: #cbc8bf; }
  .arrival-frame::after { content: none; }
}
