/* Homepage only: retain the shared hero, grid, typography and collection artwork. */
.home-page #categoryslideswiper { aspect-ratio: 4 / 3; }
.home-page .swiper-slide { background: transparent; height: 100%; overflow: hidden; }
.home-page .swiper-slide picture { display: block; width: 100%; height: 100%; }
.home-page .swiper-slide img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.home-page .home-collections { position: relative; }
/* Reserve the control strip before initialization to avoid a new 50px layout jump. */
.home-page .home-collections.has-multiple { padding-bottom: 50px; }
.home-page .home-carousel-controls { position: absolute; left: 0; right: 0; bottom: 0; display: flex; align-items: center; justify-content: center; gap: .25rem; min-height: 44px; }
.home-page .home-carousel-controls[hidden] { display: none; }
.home-page .home-carousel-controls button { flex: 0 0 44px; width: 44px; height: 44px; padding: 0; border: 1px solid transparent; border-radius: .25rem; background: transparent; color: #405136; font: inherit; font-size: 1.25rem; display: inline-flex; align-items: center; justify-content: center; }
.home-page .home-carousel-controls button:hover { background: #e5e9df; }
.home-page .home-carousel-controls svg { width: 18px; height: 18px; fill: currentColor; }
.home-page .home-play-icon { display: none; }
.home-page [data-playback="paused"] .home-play-icon { display: block; }
.home-page [data-playback="paused"] .home-pause-icon { display: none; }
.home-page .home-carousel-controls .swiper-pagination { position: relative; inset: auto; transform: none; flex: 0 0 auto; height: 32px; line-height: 32px; font-size: 0; --swiper-pagination-color: #405136; --swiper-pagination-bullet-inactive-color: #70786a; --swiper-pagination-bullet-inactive-opacity: 1; }
.home-page #categoryslide_swiper-pagination .swiper-pagination-bullet { vertical-align: middle; transition: none; }
.home-page .home-carousel-controls .swiper-pagination-bullet[aria-hidden="true"] { visibility: hidden; pointer-events: none; }
.home-page a:focus-visible, .home-page button:focus-visible, .home-page .swiper-pagination-bullet:focus-visible { outline: 2px solid #273123; outline-offset: 2px; }
.home-page .home-discovery { margin-top: 1.125rem; }
.home-page .home-discovery h2 { font-size: clamp(1.4rem, 2vw, 1.8rem); line-height: 1.3; }
.home-page .home-discovery h3 { font-size: 1.125rem; line-height: 1.45; margin-bottom: .65rem; }
.home-page .home-discovery p { max-width: 46ch; font-size: 1rem; line-height: 1.65; }
.home-page .home-discovery .home-introduction { max-width: 76ch; }
.home-page .home-discovery .row { --bs-gutter-x: 2rem; --bs-gutter-y: 1.25rem; }
.home-page .home-discovery a { color: #405136; text-decoration: underline; text-decoration-color: #40513666; text-decoration-thickness: 1px; text-underline-offset: .2em; }
.home-page .home-discovery a:hover, .home-page .home-discovery a:focus-visible { text-decoration-color: currentColor; }
@media (max-width: 768px) {
    .home-page #categoryslideswiper { aspect-ratio: 2 / 3; }
}
@media (prefers-reduced-motion: reduce) {
    .home-page .FrontPageHeader { animation: none; opacity: 1; }
}
