 
 #imageSlider-component{
  margin: 48px 0;
 }
 
 /* ─── CAROUSEL WRAPPER ────────────────────────────────────────── */
    .carousel {
      position: relative;
      width: 100%;
      height: 300px;
      /* Aspect ratio: tall on mobile, cinematic on desktop */
      aspect-ratio: 16 / 7;
      overflow: hidden;
      user-select: none;
      border-radius: 6px;
    }

    @media (max-width: 600px) {
      .carousel { aspect-ratio: 4 / 3; }
    }

    /* ─── SLIDES TRACK ────────────────────────────────────────────── */
    .slides-track {
      display: flex;
      height: 100%;
      transition: transform 0.65s cubic-bezier(0.77, 0, 0.175, 1);
      will-change: transform;
    }

    .slide {
      position: relative;
      min-width: 100%;
      height: 100%;
      flex-shrink: 0;
    }

    /* Background image fills the slide */
    .slide-bg {
      position: absolute;
      inset: 0;
      background-size: cover;
      background-position: center;
      transition: transform 0.65s cubic-bezier(0.77, 0, 0.175, 1);
    }

    /* ─── DARK OVERLAY (right side) ──────────────────────────────── */
    .slide-overlay {
      position: absolute;
      inset: 0;
      /* Gradient: transparent on left, dark on right */
      background: linear-gradient(
        to right,
        transparent 30%,
        rgba(0, 0, 0, 0.25) 50%,
        rgba(0, 0, 0, 0.72) 100%
      );
      cursor: pointer;
      text-decoration: none;
      display: flex;
      align-items: center;
      justify-content: flex-end;
      padding: clamp(1.5rem, 5vw, 4rem);
      transition: background 0.3s ease;
    }

    .slide-overlay:hover {
      background: linear-gradient(
        to right,
        transparent 25%,
        rgba(0, 0, 0, 0.35) 48%,
        rgba(0, 0, 0, 0.82) 100%
      );
    }

    /* ─── SLIDE TEXT ──────────────────────────────────────────────── */
    .slide-content {
      max-width: 45%;
      color: #fff;
      text-align: left;
      pointer-events: none; /* clicks pass to the overlay link */
    }

    @media (max-width: 600px) {
      .slide-content { max-width: 65%; }
      .slide-overlay {
        background: linear-gradient(
          to right,
          transparent 10%,
          rgba(0,0,0,0.20) 35%,
          rgba(0,0,0,0.75) 100%
        );
      }
    }

    .slide-label {
      font-size: clamp(0.65rem, 1.2vw, 0.8rem);
      font-family: Arial, Helvetica, sans-serif;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      opacity: 0.75;
      margin-bottom: 0.6em;
    }

    .slide-title {
      font-size: clamp(1.8rem, 5.5vw, 2.5rem);
      font-weight: 800;
      line-height: 1.05;
      letter-spacing: -0.02em;
      font-family: Arial, Helvetica, sans-serif;
      margin-bottom: 0.5em;
      text-shadow: 0 2px 20px rgba(0,0,0,0.4);
    }

    .slide-sub {
      font-size: clamp(0.8rem, 1.5vw, 1rem);
      font-family: Arial, Helvetica, sans-serif;
      opacity: 0.85;
      font-weight: 300;
      line-height: 1.5;
      display: none; /* Show on wider screens */
    }

    @media (min-width: 768px) {
      .slide-sub { display: block; }
    }

    .slide-cta {
      display: inline-block;
      margin-top: 1.2em;
      padding: 0.55em 1.4em;
      border: 1.5px solid rgba(255,255,255,0.6);
      border-radius: 2px;
      font-size: clamp(0.7rem, 1.2vw, 0.8rem);
      letter-spacing: 0.12em;
      text-transform: uppercase;
      font-family: Arial, Helvetica, sans-serif;
      color: #fff;
      backdrop-filter: blur(4px);
      transition: background 0.2s, border-color 0.2s;
    }

    .slide-overlay:hover .slide-cta {
      background: rgba(255,255,255,0.15);
      border-color: #fff;
    }

    /* ─── ARROW BUTTONS ───────────────────────────────────────────── */
    .arrow {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      z-index: 10;
      width: clamp(36px, 5vw, 40px);
      height: clamp(36px, 5vw, 40px);
      border-radius: 50%;
      background: #0078AE;
      backdrop-filter: blur(6px);
      border: 1.5px solid rgba(255,255,255,0.35);
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      transition: background 0.2s, transform 0.2s, border-color 0.2s;
      -webkit-tap-highlight-color: transparent;
    }

    .arrow:hover {
      background: #009270;
      border-color: rgba(255,255,255,0.7);
      transform: translateY(-50%) scale(1.08);
    }

    .arrow:active { transform: translateY(-50%) scale(0.96); }

    .arrow-prev { left: clamp(10px, 2.5vw, 24px); }
    .arrow-next { right: clamp(10px, 2.5vw, 24px); }

    .arrow svg {
      width: clamp(14px, 2vw, 20px);
      height: clamp(14px, 2vw, 20px);
      stroke: currentColor;
      stroke-width: 2.2;
      fill: none;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    /* ─── DOTS ────────────────────────────────────────────────────── */
    .dots {
      position: absolute;
      bottom: clamp(12px, 2.5vw, 22px);
      left: 50%;
      transform: translateX(-50%);
      display: flex;
      gap: 8px;
      z-index: 10;
    }

    .dot {
      width: clamp(6px, 1.2vw, 9px);
      height: clamp(6px, 1.2vw, 9px);
      border-radius: 50%;
      background: rgba(255,255,255,0.4);
      border: 1.5px solid rgba(255,255,255,0.5);
      cursor: pointer;
      transition: background 0.25s, transform 0.25s, width 0.3s;
      -webkit-tap-highlight-color: transparent;
    }

    .dot.active {
      background: #fff;
      width: clamp(22px, 3.5vw, 30px);
      border-radius: 9999px;
      border-color: #fff;
    }

    .dot:hover:not(.active) {
      background: rgba(255,255,255,0.7);
      transform: scale(1.2);
    }