.fcm-header-carousel { overflow: hidden; position: relative; }
.fcm-header-slides { aspect-ratio: 1920 / 689; position: relative; width: 100%; }
.fcm-header-slide {
  height: 100% !important; inset: 0; object-fit: cover; opacity: 0;
  position: absolute; transition: opacity .8s ease; width: 100% !important;
}
.fcm-header-slide.is-active { opacity: 1; z-index: 1; }
.fcm-header-dots {
  align-items: center; bottom: 18px; display: flex; gap: 10px; justify-content: center;
  left: 50%; position: absolute; transform: translateX(-50%); z-index: 3;
}
.fcm-header-dot {
  appearance: none; background: rgba(255,255,255,.6); border: 2px solid rgba(0,0,0,.35);
  border-radius: 50%; cursor: pointer; height: 13px; margin: 0; min-height: 13px;
  padding: 0; transition: background-color .2s, transform .2s; width: 13px;
}
.fcm-header-dot:hover, .fcm-header-dot:focus-visible { background: #fff; outline: 2px solid #fff; outline-offset: 3px; }
.fcm-header-dot.is-active { background: #fff; transform: scale(1.25); }
@media (max-width: 640px) {
  .fcm-header-dots { bottom: 8px; gap: 6px; }
  .fcm-header-dot {
    border-width: 1px; height: 8px !important; line-height: 0; min-height: 8px !important;
    min-width: 8px !important; padding: 0 !important; width: 8px !important;
  }
  .fcm-header-dot.is-active { transform: scale(1.15); }
}
@media (prefers-reduced-motion: reduce) { .fcm-header-slide { transition: none; } }
