      :root {
        --card-w: 340px;
        --gap: 30px;
        --speed: 18s; /* lower = faster */
      }
      * {
        box-sizing: border-box;
        margin: 0;padding: 0;
      }
      body {
        font-family: system-ui, -apple-system, Segoe UI, Roboto,
          "Helvetica Neue", Arial;
      
        background: #f6f7fb;
        color: #111;
      }

      .carousel-wrap {
        max-width: 100%;
        margin: 0;
        background: #F9F9F6;

    
      }
      .carousel {
        position: relative;
        overflow: hidden;
        border-radius: 12px;
        background: linear-gradient(180deg, #fff, #fbfdff);
        padding: 18px 10px;
        box-shadow: 0 6px 20px rgba(20, 30, 60, 0.08);
      }

      /* the track contains two identical groups to allow seamless infinite scroll */
      .track {
        display: flex;
        gap: var(--gap);
        align-items: stretch;
        animation: scroll var(--speed) linear infinite;
        will-change: transform;
      }

      .group {
        display: flex;
        gap: var(--gap);
      }

      @keyframes scroll {
        0% {
          transform: translateX(0);
        }
        100% {
          transform: translateX(calc(-1 * (var(--track-width))));
        }
      }

      /* Card styles */
      .card {
        width: var(--card-w);
        flex: 0 0 auto;
        background: #fff;
        border-radius: 10px;
        box-shadow: 0 6px 14px rgba(16, 24, 40, 0.06);
        overflow: hidden;
        display: flex;
        flex-direction: column;
      }

      .card img {
        width: 100%;
        height: 220px;
        object-fit: cover;
        display: block;
      }
      .card-body {
        padding: 12px 14px;
        flex: 1;
        display: flex;
        flex-direction: column;
        gap: 8px;
      }
      .title {
        font-weight: 600;
        font-size: 16px;
      }
      .desc {
        font-size: 13px;
        color: #556;
        flex: 1;
      }
      .meta {
        font-size: 13px;
        color: #8a8f98;
      }

      /* pause on hover */
      .carousel:hover .track {
        animation-play-state: paused;
      }

      /* responsive */
      @media (max-width: 900px) {
        :root {
          --card-w: 260px;
          --speed: 14s;
          --gap: 24px;
        }
      }
      @media (max-width: 600px) {
        :root {
          --card-w: 100%;
          --speed: 12s;
          --gap: 16px;
        }
        .track {
          padding-left: 10px;
        }
      }

      /* controls */
      .controls {
        position: absolute;
        right: 12px;
        top: 10px;
        display: flex;
        gap: 8px;
      }
      .btn {
        background: rgba(0, 0, 0, 0.06);
        border-radius: 8px;
        padding: 6px 8px;
        font-size: 13px;
        cursor: pointer;
      }

      .amenties-carousel-heading{
        padding: 50px 70px;
      }

      .amenties-carousel-heading p {
        font-family: Poppins;
        font-weight: 400;
        font-style: Regular;
        font-size: 16px;
        leading-trim: NONE;
        line-height: 100%;
        letter-spacing: 0%;
        vertical-align: middle;
        color: #1c3f94;
        width: 734px;
      }

      .amenties-carousel-heading h4 {
        font-family: Merriweather;
        font-weight: 700;
        font-style: Bold;
        font-size: 36px;
        leading-trim: NONE;
        line-height: 100%;
        letter-spacing: 1%;
        color: #1c3f94;
      }
      .amenties-carousel-heading span {
        font-family: Merriweather;
        font-weight: 700;
        font-style: Bold;
        font-size: 36px;
        leading-trim: NONE;
        line-height: 100%;
        letter-spacing: 1%;
        color: #ee1b22;
      }
      .amenities-card-title {
        font-family: Poppins;
        font-weight: 600;
        font-style: SemiBold;
        font-size: 24px;
        leading-trim: NONE;
        line-height: 100%;
        letter-spacing: 0%;
        vertical-align: middle;

        color: #1c3f94;
      }

      .amenities-card-desc {
        font-family: Poppins;
        font-weight: 400;
        font-style: Regular;
        font-size: 16px;
        leading-trim: NONE;
        line-height: 100%;
        letter-spacing: 0%;
        color: #1c3f94;
      }




      /* ================== FULL RESPONSIVE FIXES ================== */

/* ================== RESPONSIVE CAROUSEL + HEADING FIXES ================== */

/* Tablet */
@media (max-width: 900px) {
  :root {
    --card-w: 280px;
    --gap: 20px;
    --speed: 15s;
  }

  .carousel {
    padding: 14px 8px;
  }

  .amenties-carousel-heading {
    padding: 30px 30px;
  }

  .amenties-carousel-heading h4,
  .amenties-carousel-heading span {
    font-size: 28px;
  }

  .amenties-carousel-heading p {
    width: 100%;
    font-size: 15px;
  }
}

/* Mobile Large */
@media (max-width: 650px) {
  :root {
    --card-w: 220px;
    --gap: 16px;
    --speed: 13s;
  }

  .track {
    padding-left: 6px;
  }

  .card img {
    height: 170px;
  }

  .amenties-carousel-heading {
    padding: 25px;
    text-align: center;
  }

  .amenties-carousel-heading h4,
  .amenties-carousel-heading span {
    font-size: 24px;
    width: 100%;
    display: block;
    text-align: center;
  }

  .amenties-carousel-heading p {
    text-align: center;
    font-size: 14px;
    width: 100%;
  }
}

/* Mobile Medium */
@media (max-width: 500px) {
  :root {
    --card-w: 180px;
    --gap: 14px;
    --speed: 12s;
  }

  .card {
    border-radius: 8px;
  }

  .card img {
    height: 150px;
  }

  .amenities-card-title {
    font-size: 16px;
  }

  .amenities-card-desc {
    font-size: 13px;
  }

  .amenties-carousel-heading h4,
  .amenties-carousel-heading span {
    font-size: 22px;
  }

  .amenties-carousel-heading p {
    font-size: 13px;
  }
}

/* Mobile Small */
@media (max-width: 380px) {
  :root {
    --card-w: 160px;
    --gap: 12px;
    --speed: 11s;
  }

  .card img {
    height: 140px;
  }

  /* Center heading + span + description */
  .amenties-carousel-heading {
    text-align: center;
    padding: 20px;
  }

  .amenties-carousel-heading h4,
  .amenties-carousel-heading span {
    text-align: center;
    width: 100%;
    display: block;
    font-size: 20px;
  }

  .amenties-carousel-heading p {
    text-align: center;
    width: 100%;
    font-size: 13px;
  }
}