/* Home showcase layout only. Shared UI owns every surface, corner, image and control. */
.sf-home-showcase.sf-ui { padding-block: var(--sfui-space-8); }
.sf-home-showcase__content { display: grid; gap: var(--sfui-space-12); }
/* One visible mobile card stays in normal flow; only desktop needs a grid. */
.sf-home-showcase__frame { display: block; min-width: 0; }
.sf-home-showcase__slide { position: absolute; inset: 0; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity var(--sfui-motion-duration) ease; }
.sf-home-showcase__slide.is-active { opacity: 1; visibility: visible; pointer-events: auto; }
.sf-home-showcase__link { display: block; height: 100%; }
.sf-home-showcase__navigation { position: absolute; inset: 0; pointer-events: none; }
.sf-home-showcase__nav { position: absolute; top: 50%; transform: translateY(-50%); pointer-events: auto; }
.sf-home-showcase__nav--previous { left: var(--sfui-space-8); }
.sf-home-showcase__nav--next { right: var(--sfui-space-8); }
.sf-home-showcase__banners { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--sfui-space-12); margin: 0; padding: 0; }
@media (min-width: 1101px) {
  .sf-home-showcase__frame { display: grid; grid-template-columns: minmax(0, .75fr) minmax(0, 2.525641fr) minmax(0, .75fr); align-items: stretch; gap: var(--sfui-space-12); aspect-ratio: var(--sfui-media-stage-ratio); }
  .sf-home-showcase__frame--no-left { grid-template-columns: minmax(0, 3.275641fr) minmax(0, .75fr); }
  .sf-home-showcase__frame--no-right { grid-template-columns: minmax(0, .75fr) minmax(0, 3.275641fr); }
  .sf-home-showcase__frame--no-left.sf-home-showcase__frame--no-right { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767.98px) {
  .sf-home-showcase__content { gap: var(--sfui-space-8); }
  .sf-home-showcase__banners { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sfui-space-8); }
  .sf-home-showcase__center { touch-action: pan-y; }
}
@media (prefers-reduced-motion: reduce) {
  .sf-home-showcase__slide { transition: none; }
}
