/* Shared product browsing, scoped to the two curated sections. */
.fc-carousel { min-width:0; }
.fc-carousel-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; }
.fc-carousel-heading .fc-section-heading { flex:1; min-width:0; }
.fc-carousel-controls { display:flex; align-items:center; gap:8px; flex-shrink:0; padding-top:2px; }
.fc-carousel-arrow { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; padding:0; border:1px solid var(--client-line, var(--fc-border)); border-radius:50%; color:var(--client-primary, var(--fc-primary)); background:transparent; transition:background .18s ease, opacity .18s ease; }
.fc-carousel-arrow svg { width:20px; height:20px; }
.fc-carousel-arrow:hover:not(:disabled) { background:var(--client-soft, var(--fc-soft)); }
.fc-carousel-arrow:disabled { opacity:.3; cursor:default; }
.fc-page .fc-carousel .fc-carousel-track { display:grid; grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:calc((100% - 72px) / 4); gap:24px; overflow-x:auto; overscroll-behavior-x:contain; overflow-anchor:none; scroll-snap-type:x mandatory; scroll-padding-inline:4px; scrollbar-width:none; -ms-overflow-style:none; padding:4px 4px 14px; margin:-4px; }
.fc-carousel-track > .fc-product-card { min-width:0; scroll-snap-align:start; }
.fc-carousel-track:focus-visible, .fc-carousel-arrow:focus-visible { outline:2px solid var(--client-primary, var(--fc-primary)); outline-offset:3px; }
@media(max-width:1023px) {
 .fc-page .fc-carousel .fc-carousel-track { grid-auto-columns:45%; gap:20px; }
}
@media(max-width:599px) {
 .fc-carousel-heading { gap:12px; flex-wrap:wrap; margin-bottom:20px; }
 .fc-carousel-heading .fc-section-heading { flex-basis:100%; margin-bottom:0; }
 .fc-carousel-heading .fc-section-heading h2 { margin-bottom:12px; }
 .fc-carousel-heading .fc-section-heading p { margin-bottom:0; }
 .fc-carousel-controls { margin-left:auto; padding:0; }
 .fc-page .fc-carousel .fc-carousel-track { grid-auto-columns:82%; gap:16px; }
}
@media(prefers-reduced-motion:reduce) {
 .fc-carousel-arrow { transition:none; }
}

.fc-page .fc-carousel .fc-carousel-track::-webkit-scrollbar { display:none; width:0; height:0; }
