/* Scoped to the homepage. No external assets or mobile hero request. */
.vo-shop-main .vo-shop-section-title,
.vo-home-videos summary { font-family:'Cormorant Garamond',serif; font-size:clamp(1.7rem,3vw,2.25rem); font-weight:500; line-height:1.2; color:#003e27; }
.vo-shop-main > :is(.vo-home-hero,.vo-home-videos,.vo-shop-available-soon) { max-width:none; }
.vo-home-hero { display:none; }
.vo-home-videos { margin-block:2.5rem 0; border-top:1px solid #deded8; padding-block-start:1.5rem; min-width:0; }
.vo-home-videos summary { cursor:pointer; padding:.6rem 0; }
.vo-home-videos summary:focus-visible,.vo-home-player button:focus-visible { outline:3px solid #a07a32; outline-offset:4px; }
.vo-home-archive-title { display:none; }
.vo-home-videos details:not([open]) > .vo-home-video-content { display:none; }
.vo-home-video-content > p { font-size:.875rem; line-height:1.6; max-width:65ch; }
.vo-home-video-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:1.5rem; }
.vo-home-video-grid article { min-width:0; }
.vo-home-video-grid h3 { font-family:'Cormorant Garamond',serif; font-size:1.45rem; font-weight:500; margin:.5rem 0 .75rem; }
.vo-home-player { aspect-ratio:16/9; background:#f5f5f1; }
.vo-home-player button { display:flex; flex-direction:column; align-items:center; width:100%; padding:0; border:1px solid #bcc9bd; color:#003e27; background:#fff; cursor:pointer; font:inherit; }
.vo-home-player img { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; }
.vo-home-player button > span { display:block; padding:.65rem 1rem; font-size:.875rem; }
.vo-home-player iframe { display:block; width:100%; height:100%; border:0; }
@media(min-width:1024px) {
 .vo-home-hero { display:block; aspect-ratio:3/1; background:url('assets/home-submariner.jpg') center 46%/cover no-repeat; margin-block:0 2.25rem; }
 .vo-home-archive-title { display:inline; }
 .vo-home-mobile-title { display:none; }
 .vo-home-video-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem; }
}
@media(max-width:1023px) {
 .vo-home-videos { margin-top:1.75rem; padding-top:1rem; }
 .vo-home-videos summary { font-size:1.6rem; }
 .vo-home-video-grid { gap:1.25rem; }
}
