 .carousel-wrapper {
     max-width: 1300px;
     margin: 50px auto;
     /* padding: 0 20px; */
 }

 .carousel {
     position: relative;
     overflow: hidden;
     background: #fff;
     border-radius: 12px;
     /* box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1); */
 }

 .carousel-track {
     display: flex;
     transition: transform 0.5s ease-in-out;
 }

 .carousel-slide {
     min-width: 100%;
     display: flex;
     align-items: stretch;
 }

 /* LEFT IMAGE */
 .carousel-image {
     width: 50%;
     min-height: 400px;
     padding: 5px;
 }

 .carousel-image img {
     width: 100%;
     height: 100%;
     display: block;
     object-fit: cover;
 }

 /* RIGHT CONTENT */
 .carousel-content {
     width: 50%;
     padding: 50px;
     display: flex;
     flex-direction: column;
     justify-content: center;
 }

 .carousel-number {
     display: inline-flex;
     align-items: center;
     justify-content: center;

     width: 40px;
     height: 40px;

     margin-bottom: 20px;

     border-radius: 50%;
     background: #007bff;
     color: #fff;

     font-size: 16px;
     font-weight: bold;
 }

 .carousel-content h2 {
     margin: 0 0 20px;
     font-size: 32px;
     line-height: 1.25;
     color: #222;
 }

 .carousel-content p {
     margin: 0;
     font-size: 16px;
     line-height: 1.7;
     color: #666;
 }

 /* ARROWS */
 .carousel-btn {
     position: absolute;
     top: 50%;
     transform: translateY(-50%);

     width: 45px;
     height: 45px;

     border: none;
     border-radius: 50%;

     background: rgba(0, 0, 0, 0.65);
     color: #fff;

     font-size: 24px;
     cursor: pointer;

     z-index: 10;
 }

 .carousel-btn:hover {
     background: #007bff;
 }

 .carousel-prev {
     left: 15px;
 }

 .carousel-next {
     right: 15px;
 }

 /* DOTS */
 .carousel-dots {
     display: flex;
     justify-content: center;
     gap: 8px;

     margin-top: 20px;
 }

 .carousel-dot {
     width: 10px;
     height: 10px;

     padding: 0;
     border: none;
     border-radius: 50%;

     background: #ccc;
     cursor: pointer;
 }

 .carousel-dot.active {
     background: #007bff;
     transform: scale(1.2);
 }

 /* RESPONSIVE */
 @media (max-width: 768px) {

     .carousel-slide {
         flex-direction: column;
     }

     .carousel-image,
     .carousel-content {
         width: 100%;
     }

     .carousel-image {
         min-height: 250px;
         height: 250px;
     }

     .carousel-content {
         padding: 30px;
     }

     .carousel-content h2 {
         font-size: 25px;
     }

     .carousel-content p {
         font-size: 15px;
     }
 }