/* FORCE a clean isolated hero container */
.nts-hero-slider,
.nts-hero-slider .swiper-wrapper,
.nts-hero-slider .swiper-slide {
    width: 100% !important;
    height: 450px !important; /* Slightly taller */
    position: relative;
}

/* FLEX layout with new background and overflow */
.nts-slide {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 20px 40px !important; /* Adjusted padding */
    box-sizing: border-box !important;
    background: #f8f8f8; /* Light grey background */
    overflow: hidden !important; /* Important for circle effect */
}

/* LEFT TEXT SECTION */
.nts-slide-content {
    width: 45% !important;
    z-index: 10;
    padding-left: 20px !important; /* Add some spacing */
}

/* Updated heading style */
.nts-slide-content h3 {
    font-size: 40px !important; /* Larger, more impactful */
    font-weight: 600 !important; /* Cleaner weight */
    margin: 0 0 10px 0 !important;
    line-height: 1.2 !important;
    color: #222 !important;
}

/* NEW: Subtitle Style (add this to your HTML) */
.nts-slide-subtitle {
    font-size: 16px !important;
    color: #555 !important;
    margin: 0 0 25px 0 !important;
    font-weight: 400 !important;
}

/* Old price class (if you still use it) */
.nts-price {
    margin: 10px 0 20px 0 !important;
    font-size: 20px !important;
    color: #ff6347 !important; /* New color */
}

/* Modernized Button */
.nts-btn {
    display: inline-block !important;
    padding: 10px 25px !important; /* Bigger padding */
    background: #ff6347 !important; /* Brighter, modern red/orange */
    color: white !important;
    border-radius: 30px !important; /* Pill-shaped */
    text-decoration: none !important;
    font-weight: bold !important;
    font-size: 15px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
    transition: all .3s ease !important;
}

.nts-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15) !important;
}

/* RIGHT IMAGE SECTION */
.nts-slide-image {
    width: 55% !important; /* Take up more space */
    height: 100% !important;
    position: relative !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    z-index: 5;
}

/* NEW: This creates the white circle background */
.nts-slide-image::before {
    content: '' !important;
    position: absolute !important;
    width: 800px !important; /* Large circle */
    height: 800px !important; /* Large circle */
    border-radius: 50% !important;
    background: white !important;
    top: 50% !important;
    left: 50% !important;
    /* This transform centers the circle */
    transform: translate(-40%, -50%) !important; 
    z-index: 1 !important;
}

/* Image styling */
.nts-slide-image img {
    position: relative !important; /* Sit on top of the circle */
    z-index: 2 !important;
    width: auto !important;
    max-width: 100% !important;
    max-height: 380px !important; /* Taller image */
    object-fit: contain !important;
    transition: transform .4s ease !important;
}

.nts-slide-image img:hover {
    transform: scale(1.05);
}

/* SWIPER BUTTONS (Modern Look) */
.nts-hero-slider .swiper-button-next,
.nts-hero-slider .swiper-button-prev {
    background: white !important;
    color: #333 !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15) !important;
    z-index: 10000 !important;
}

/* Make internal arrow smaller */
.nts-hero-slider .swiper-button-next::after,
.nts-hero-slider .swiper-button-prev::after {
    font-size: 20px !important;
    font-weight: bold !important;
}

.nts-hero-slider .swiper-button-prev {
    left: 20px !important;
}
.nts-hero-slider .swiper-button-next {
    right: 20px !important;
}

/* SWIPER PAGINATION DOTS (Modern Look) */
.nts-hero-slider .swiper-pagination-bullet {
    background: #ccc !important;
    opacity: 1 !important;
    width: 8px !important;
    height: 8px !important;
}

.nts-hero-slider .swiper-pagination-bullet-active {
    background: #ff6347 !important; /* Match button color */
    width: 12px !important;
    border-radius: 6px !important;
}




/* === START MOBILE STYLES (Add this to your CSS) === */
@media (max-width: 767px) {

    /* Make the slider taller to fit stacked content */
    .nts-hero-slider,
    .nts-hero-slider .swiper-slide {
        height: 600px !important; /* Taller height for mobile */
    }

    /* 1. Change layout to vertical (stacked) */
    .nts-slide {
        flex-direction: column !important; /* Stack items vertically */
        justify-content: flex-start !important; /* Align to top */
        padding: 20px !important; /* Give it some space */
    }

    /* 2. Make text block full width and centered */
    .nts-slide-content {
        width: 100% !important;
        text-align: center !important; /* Center all text */
        padding-left: 0 !important; /* Reset desktop padding */
        margin-bottom: 20px !important; /* Space between text and image */
    }

    /* 3. Adjust text sizes for mobile */
    .nts-slide-content h3 {
        font-size: 28px !important; /* Smaller, but still a strong title */
    }
    .nts-slide-subtitle {
        font-size: 14px !important;
        margin-bottom: 20px !important;
    }
    .nts-btn {
        padding: 12px 30px !important; /* Slightly smaller button */
        font-size: 14px !important;
    }

    /* 4. Tame the image and background circle */
    .nts-slide-image {
        width: 100% !important;
        height: 300px !important; /* Give it a fixed height */
        margin-top: auto; /* Push to the bottom of the space */
        margin-bottom: 10px; /* Space above pagination dots */
    }

    /* 5. Fix the background circle */
    .nts-slide-image::before {
        width: 450px !important;  /* Make circle smaller */
        height: 450px !important; /* Make circle smaller */
        /* Re-center the circle for the new layout */
        transform: translate(-50%, -30%) !important; 
    }

    /* 6. Fix the image size */
    .nts-slide-image img {
        max-height: 250px !important; /* Control image height */
    }

    /* 7. Hide desktop navigation arrows on mobile */
    .nts-hero-slider .swiper-button-next,
    .nts-hero-slider .swiper-button-prev {
        display: none !important;
    }

    /* 8. Ensure pagination dots are visible */
    .nts-hero-slider .swiper-pagination {
        bottom: 10px !important;
    }
}
/* === END MOBILE STYLES === */