@layer ks-primitives {
  .ks-hero-slider {
    position: relative;
    z-index: 0;
    overflow: hidden;
    padding-block-start: 0;
    background-color: var(--ks-color-surface-page);
  }
  .ks-hero-slider__layout {
    display: grid;
    align-items: center;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ks-space-8);
    padding-block: var(--ks-space-4);
  }
  .ks-hero-slider__copy { text-align: center; color: var(--ks-color-text-default); }
  .ks-hero-slider__title { font-size: var(--ks-font-size-5xl); line-height: 1.1; }
  .ks-hero-slider__media { display: none; position: relative; box-shadow: var(--ks-shadow-lg); }
  .ks-hero-slider__stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--ks-space-6); }

  /* Hero action buttons - stack on mobile, inline on desktop */
  .ks-hero-slider__actions {
    display: flex;
    flex-direction: column;
    gap: var(--ks-space-4);
  }
  .ks-hero-slider__actions .ks-button {
    inline-size: 100%;
    border-radius: var(--ks-radius-full);
  }
  .ks-hero-slider__slick { position: relative; overflow: hidden; }
  .ks-hero-slider__slick,
  .ks-hero-slider__slick :where(.slick-list, .slick-track, .slick-slides, .slide-item, .slick-slide, .slick-slide > div),
  .ks-hero-slider__slide {
    block-size: 100%;
  }
  .ks-hero-slider__slide { position: relative; }
  .ks-hero-slider__slick .slick-dots {
    position: absolute;
    inset-inline: 0;
    inset-block-end: var(--ks-space-6);
    z-index: 3;
    display: flex;
    justify-content: center;
    gap: var(--ks-space-2);
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .ks-hero-slider__slick .slick-dots button {
    inline-size: var(--ks-space-3);
    block-size: var(--ks-space-3);
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: var(--ks-radius-full);
    background-color: color-mix(in srgb, var(--ks-color-text-inverse) 65%, transparent);
    color: transparent;
  }

  .ks-hero-slider__slick .slick-active button { background-color: var(--ks-color-text-inverse); }
  .ks-hero-slider__caption {
    position: absolute;
    inset-inline: 0;
    inset-block-end: 0;
    z-index: 2;
    padding: var(--ks-space-8);
    padding-block-end: var(--ks-space-16);
    text-align: center;
  }

  @media (min-width: 768px) {
    .ks-hero-slider__layout { padding-block: var(--ks-space-4) 0; }
    .ks-hero-slider__copy { text-align: start; }
    .ks-hero-slider__stats { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .ks-hero-slider__actions {
      flex-direction: row;
    }
    .ks-hero-slider__actions .ks-button {
      inline-size: auto;
    }
  }

  @media (min-width: 1024px) {
    .ks-hero-slider__layout { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--ks-space-16); padding-block: 0 var(--ks-space-12); }
    .ks-hero-slider__media { display: block; }
  }

  @media (min-width: 1024px) and (max-width: 1199.98px) {
    .ks-hero-slider__layout { padding-block: 0; }
  }

  @media (min-width: 1200px) {
    .ks-hero-slider__title { font-size: var(--ks-font-size-6xl); }
  }
}
