.harbor-video { padding: 52px 0; background: var(--harbor-soft, #eff8fc); border-bottom: 1px solid var(--harbor-border, #d9e3eb); scroll-margin-top: 96px; }
.harbor-video__disclosure { max-width: 960px; margin: 0 auto; }
.harbor-video__disclosure > summary { display: grid; grid-template-columns: minmax(0, 1fr) 20px; grid-template-areas: "copy toggle" "preview preview"; align-items: center; gap: 28px 16px; list-style: none; cursor: pointer; }
.harbor-video__disclosure > summary::-webkit-details-marker { display: none; }
.harbor-video__disclosure > summary:focus-visible { outline: 3px solid var(--harbor-accent, #087f96); outline-offset: 8px; }
.harbor-video__copy { grid-area: copy; display: grid; gap: 10px; min-width: 0; text-align: center; color: var(--muted); font-size: 17px; line-height: 1.5; }
.harbor-video__copy strong { font-family: 'Bricolage Grotesque', sans-serif; font-size: 32px; line-height: 1.3; color: var(--ink); }
.harbor-video__eyebrow { font-size: 13px; font-weight: 700; color: var(--harbor-accent, #087f96); }
.harbor-video__preview { grid-area: preview; position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; background: #fff; border: 1px solid var(--harbor-border, #d9e3eb); border-radius: 6px; }
.harbor-video__preview img { display: block; width: 100%; height: 100%; object-fit: cover; }
.harbor-video__play { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; }
.harbor-video__play > span { display: flex; align-items: center; justify-content: center; width: 76px; height: 76px; padding-left: 5px; border: 3px solid #fff; border-radius: 50%; color: #fff; background: var(--harbor-accent, #087f96); font-size: 28px; line-height: 1; }
.harbor-video__toggle { grid-area: toggle; color: var(--harbor-accent, #087f96); font-size: 30px; line-height: 1; text-align: center; }
.harbor-video__disclosure[open] > summary { grid-template-areas: "copy toggle"; }
.harbor-video__disclosure[open] .harbor-video__preview { display: none; }
.harbor-video__disclosure[open] .harbor-video__toggle { transform: rotate(180deg); }
.harbor-video__panel { margin-top: 24px; }
.harbor-video__player { position: relative; width: 100%; min-height: 200px; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 6px; background: #edf7fa; }
.harbor-video__player iframe { position: absolute; inset: 0; display: block; width: 100%; height: 100%; border: 0; }
.harbor-video__fallback { margin: 12px 0 0; text-align: right; font-size: 14px; }
.harbor-video__fallback a { color: var(--harbor-accent, #087f96); text-decoration: underline; }
@media (max-width: 700px) {
  .harbor-video { padding: 40px 0; }
  .harbor-video__disclosure > summary { gap: 22px 10px; }
  .harbor-video__copy { gap: 8px; font-size: 16px; }
  .harbor-video__copy strong { font-size: 26px; }
  .harbor-video__play > span { width: 60px; height: 60px; font-size: 22px; }
}
