/**
 * Testimonial Slider Widget Styles
 * Matches the design provided in the images
 */

/* Main wrapper */
.testimonial-slider-wrapper {
    padding: 60px 40px;
    position: relative;
    overflow: visible; /* Allow navigation buttons to extend beyond */
    background-color: #F8F6F3;
    color: #460E10;
    font-family: 'Bricolage Grotesque', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
    margin: 0 auto;
    max-width: 1400px; /* Prevent excessive width on very large screens */
}

/* Rating section */
.testimonial-slider-wrapper .rating-section {
    text-align: left;
    margin-bottom: 10px;
    color: #460E10;
}

.testimonial-slider-wrapper .rating-section .stars {
    display: inline-flex;
    gap: 2px;
    margin-right: 10px;
    vertical-align: middle;
}

.testimonial-slider-wrapper .rating-section .star {
    color: #ff0000;
    font-size: 16px;
    line-height: 1;
}

.testimonial-slider-wrapper .rating-section .rating-text {
    display: inline;


    vertical-align: middle;

    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1.6;
    /* ~28.8px */
    letter-spacing: 0;
    /* Figma screenshot showed normal tracking in this row */
    color: #460E10;
}

/* Header section */
.testimonial-slider-wrapper .header-section {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 20px;
    gap: 20px;
}

.testimonial-slider-wrapper .main-title {
    color: #2c1810;
    font-size: 48px;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
    flex: 1;
    max-width: 70%;
}

/* Navigation buttons */
.testimonial-slider-wrapper .navigation-buttons {
    display: flex;
    gap: 10px;
    flex-shrink: 0;
    position: relative;
    z-index: 10; /* Ensure buttons are above other content */
}

.testimonial-slider-wrapper .slider-nav-button {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    border: 2px solid #e0e0e0;
    background-color: #ffffff;
    color: #333333;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    font-size: 0;
    padding: 0;
}

.testimonial-slider-wrapper .slider-nav-button:hover {
    border-color: #333333;
    background-color: #f5f5f5;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    background-color: #FFEB93 !important;
}

.testimonial-slider-wrapper .slider-nav-button:active {
    transform: translateY(0);
}

.testimonial-slider-wrapper .slider-nav-button svg {
    width: 24px;
    height: 24px;
}


/* Testimonials container */
.testimonial-slider-wrapper .testimonials-container {
    position: relative;
    overflow: hidden; /* Hide slider overflow but not navigation */
    margin: 0 -10px; /* Negative margin to allow some overflow space */
    padding: 0 10px; /* Compensate with padding */
}

.testimonial-slider-wrapper .testimonials-slider {
    display: flex;
    gap: 30px;
    transition: transform 0.5s ease;
    will-change: transform;
}

/* Testimonial cards */
.testimonial-slider-wrapper .testimonial-card {
    background-color: #ffffff;
    border: 2px solid #8b4513;
    border-radius: 15px;
    padding: 30px 25px;
    flex: 0 0 calc(33.333% - 20px);
    min-height: 280px;
    display: flex;
    flex-direction: column;
    position: relative;
    transition: all 0.3s ease;
}

.testimonial-slider-wrapper .testimonial-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(139, 69, 19, 0.1);
}

/* Card stars */
.testimonial-slider-wrapper .testimonial-card .stars {
    display: flex;
    gap: 2px;
    margin-bottom: 15px;
}

.testimonial-slider-wrapper .testimonial-card .stars .star {
    color: #ff0000;
    font-size: 18px;
    line-height: 1;
}

/* Testimonial title */
.testimonial-slider-wrapper .testimonial-card .testimonial-title {
    color: #2c1810;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 15px 0;
    flex-shrink: 0;
}

/* Testimonial content */
.testimonial-slider-wrapper .testimonial-card .testimonial-content {
    color: #4a4a4a;
    font-size: 16px;
    line-height: 1.5;
    margin: 0 0 20px 0;
    flex: 1;
}

/* Customer name */
.testimonial-slider-wrapper .testimonial-card .customer-name {
    color: #2c1810;
    font-size: 16px;
    font-weight: 700;
    margin-top: auto;
}

/* Slider indicators */
.testimonial-slider-wrapper .slider-indicators {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 30px;
}

/* Ensure indicators are visible in slider mode */
.testimonial-slider-wrapper:not(.display-mode-responsive_grid) .slider-indicators {
    display: flex !important;
    visibility: visible !important;
}

.testimonial-slider-wrapper .indicator-dot {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: none;
    background-color: transparent;
    cursor: pointer;
    transition: all 0.3s ease;
    padding: 0;
    min-width: 44px; /* Minimum touch target size for accessibility */
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    outline: none; /* Remove focus outline */
}

.testimonial-slider-wrapper .indicator-dot::before {
    content: '';
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #d0d0d0;
    transition: all 0.3s ease;
    border: none; /* Ensure no border on pseudo-element */
}

.testimonial-slider-wrapper .indicator-dot.active::before,
.testimonial-slider-wrapper .indicator-dot:hover::before {
    background-color: #8b4513;
    transform: scale(1.2);
}

/* Responsive design */
@media (max-width: 1024px) {
    .testimonial-slider-wrapper {
        padding: 40px 30px;
    }

    .testimonial-slider-wrapper .main-title {
        font-size: 36px;
        max-width: 65%;
    }

    .testimonial-slider-wrapper .testimonial-card {
        flex: 0 0 calc(50% - 15px);
        min-height: 300px;
    }

    .testimonial-slider-wrapper .testimonials-slider {
        gap: 20px;
    }
}

@media (max-width: 768px) {
    .testimonial-slider-wrapper {
        padding: 30px 20px;
    }

    .testimonial-slider-wrapper .header-section {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
        width: calc(100vw - 35px); /* Fix for mobile width issue */
    }

    .testimonial-slider-wrapper .main-title {
        font-size: 28px;
        max-width: 100%;
        margin-bottom: 10px;
    }

    .testimonial-slider-wrapper .navigation-buttons {
        align-self: flex-end;
    }

    .testimonial-slider-wrapper .slider-nav-button {
        width: 45px;
        height: 45px;
    }

    .testimonial-slider-wrapper .slider-nav-button svg {
        width: 20px;
        height: 20px;
    }

    .testimonial-slider-wrapper .testimonial-card {
        flex: 0 0 calc(100% - 10px);
        min-height: 250px;
        padding: 25px 20px;
    }

    .testimonial-slider-wrapper .testimonials-slider {
        gap: 15px;
    }

    .testimonial-slider-wrapper .testimonial-card .testimonial-title {
        font-size: 18px;
    }

    .testimonial-slider-wrapper .testimonial-card .testimonial-content {
        font-size: 15px;
    }
}

@media (max-width: 480px) {
    .testimonial-slider-wrapper {
        padding: 20px 15px;
    }

    .testimonial-slider-wrapper .main-title {
        font-size: 24px;
    }

    .testimonial-slider-wrapper .testimonial-card {
        padding: 20px 15px;
        min-height: 220px;
    }

    .testimonial-slider-wrapper .testimonial-card .testimonial-title {
        font-size: 16px;
    }

    .testimonial-slider-wrapper .testimonial-card .testimonial-content {
        font-size: 14px;
    }

    .testimonial-slider-wrapper .testimonial-card .customer-name {
        font-size: 14px;
    }
}

/* Animation classes for smooth transitions */
.testimonial-slider-wrapper .testimonial-card.slide-in {
    animation: slideIn 0.5s ease forwards;
}

.testimonial-slider-wrapper .testimonial-card.slide-out {
    animation: slideOut 0.5s ease forwards;
}

@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateX(30px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideOut {
    from {
        opacity: 1;
        transform: translateX(0);
    }

    to {
        opacity: 0;
        transform: translateX(-30px);
    }
}

/* Loading state */
.testimonial-slider-wrapper.loading .testimonial-card {
    opacity: 0.7;
    pointer-events: none;
}

/* Accessibility improvements */
.testimonial-slider-wrapper .slider-nav-button:focus {
    outline: 1px solid #8b4513;
    outline-offset: 1px;
}

.testimonial-slider-wrapper .indicator-dot:focus::before {
    box-shadow: 0 0 0 2px rgba(139, 69, 19, 0.3);
}

/* Dragging state for touch/mouse interactions */
.testimonial-slider-wrapper .testimonials-slider.dragging {
    cursor: grabbing;
    user-select: none;
}

.testimonial-slider-wrapper .testimonials-slider {
    cursor: grab;
    touch-action: pan-y; /* Allow vertical scrolling but handle horizontal ourselves */
}

.testimonial-slider-wrapper .testimonials-slider.dragging .testimonial-card {
    pointer-events: none; /* Prevent card interactions during drag */
}

/* Print styles */
@media print {

    .testimonial-slider-wrapper .navigation-buttons,
    .testimonial-slider-wrapper .slider-indicators {
        display: none;
    }

    .testimonial-slider-wrapper .testimonials-slider {
        display: block;
    }

    .testimonial-slider-wrapper .testimonial-card {
        break-inside: avoid;
        margin-bottom: 20px;
        flex: none;
        width: 100%;
    }
}



/* FIXED CSS for Testimonial Slider - Track Sizing and Alignment */

/* Remove gap from slider to prevent spacing issues */
.elementor-widget-container .testimonial-slider-wrapper .testimonials-slider {
    gap: 12px;

    /* Ensure slider starts at the left edge of the track */
    transform-origin: left center;
    /* Remove any default positioning that might cause misalignment */
    left: 0;
    position: relative;

    /* Ensure transforms are calculated relative to the actual track width */
    /* width: fit-content; */
    min-width: 100%;
}



/* Header and rating sections - keep centered with max-width */
.elementor-widget-container .testimonial-slider-wrapper .rating-section,
.elementor-widget-container .testimonial-slider-wrapper .header-section {
    max-width: 1310px;
}


/* Main wrapper - hide left overflow only */
.elementor-widget-container .testimonial-slider-wrapper {
    position: relative;
    overflow-x: clip;
    background-color: transparent !important;
    padding: 0 !important;
}

/* FIXED: Dynamic track sizing based on visible items */
.elementor-widget-container .testimonial-slider-wrapper .testimonials-container {
    position: relative;
    overflow: visible;
    margin-left: auto;
    margin-right: auto;
    /* Dynamic width calculation based on screen size */
    /* Desktop: 3 items + 2 gaps (12px each) = 3 * 33.333% + 24px */
    width: calc(100% - 0px);
    /* max-width: calc(1440px * 3 / 3 + 24px); /* 3 items on desktop */
    padding-left: 0;
    padding-right: 0;

    /* show extra on right side */
    padding-left: 0;
    padding-right: 10px;
    /* makes right overflow visible */
    max-width: 1310px;
}

/* FIXED: Card margins for proper spacing */
.elementor-widget-container .testimonial-slider-wrapper .testimonials-container .testimonial-card {
    margin: 0px 0px 0px 0px !important;
    /* Ensure cards take exact width */
    flex: 0 0 calc(33.333% - 12px);
    /* Desktop: 3 items */
    flex: 0 0 calc(25.333% - 12px) !important;
    box-sizing: border-box;
    background-color: #FFF5E5 !important;
}

.elementor-widget-container .testimonial-slider-wrapper .testimonials-container .testimonial-card:first-child {
    margin-left: 0 !important;
}

.elementor-widget-container .testimonial-slider-wrapper .testimonials-container .testimonial-card:last-child {
    margin-right: 0 !important;
}

/* Show indicators in slider mode, hide only in specific cases */
.elementor-widget-container .testimonial-slider-wrapper.display-mode-responsive_grid .slider-indicators {
    display: none; /* Only hide in responsive grid mode on desktop */
}

/* Ensure indicators are visible in regular slider mode */
.elementor-widget-container .testimonial-slider-wrapper:not(.display-mode-responsive_grid) .slider-indicators {
    display: flex !important;
    visibility: visible !important;
}



/* ENHANCED ALIGNMENT FIX */

/* ALTERNATIVE APPROACH: CSS Custom Properties for Dynamic Sizing */
.elementor-widget-container .testimonial-slider-wrapper {
    /* Define custom properties for different screen sizes */
    --desktop-items: 3;
    --tablet-items: 2;
    --mobile-items: 1;
    --card-gap: 12px;
}



@media (max-width: 1024px) {
    .elementor-widget-container .testimonial-slider-wrapper .testimonials-container {
        width: 100%;
        max-width: 100%;
        padding-left: 0;
        padding-right: 40px;
    }

    .elementor-widget-container .testimonial-slider-wrapper .testimonials-container .testimonial-card {
        flex: 0 0 calc(50% - 15px) !important;
        margin: 0 7.5px !important;
    }
}

@media (max-width: 768px) {

    .elementor-widget-container .testimonial-slider-wrapper .testimonials-container {
        width: 100%;
        max-width: 100%;
        padding-left: 0;
        padding-right: 40px;
        /* allows one side overflow */
    }

    .elementor-widget-container .testimonial-slider-wrapper .testimonials-container .testimonial-card {
        flex: 0 0 100% !important;
        margin: 0 !important;
        max-width: calc(100vw - 42px);
    }
}


/* JAVASCRIPT POSITIONING FIX */
/* This ensures the JavaScript slider positioning works correctly with the new track width */

.elementor-widget-container .testimonial-slider-wrapper .testimonials-container .testimonial-card {
    /* Add border to visualize card boundaries */
    border: 1px solid blue;
}



.elementor-widget-container .testimonial-slider-wrapper {
    position: relative;
    overflow-x: clip;
    /* hides left overflow only */

}



.elementor-widget-container .testimonial-slider-wrapper .testimonials-container .testimonial-card:first-child {
    margin-left: 0 !important;
}

.elementor-widget-container .testimonial-slider-wrapper .testimonials-container .testimonial-card:last-child {
    margin-right: 0 !important;
}

.elementor-widget-container .testimonial-slider-wrapper .slider-indicators {
    display: none
}


/***** STYLE-ONLY OVERRIDES — NO LAYOUT CHANGES *****/
/* Important: This block avoids flex-basis, gap, width, transform, or positioning changes. */

/* Rating row */

.testimonial-slider-wrapper .rating-section .stars .star {
    color: #FF0000;
}

/* Heading */
.testimonial-slider-wrapper .main-title {
    color: #460E10;
    font-size: 48px;
    font-weight: 700;
    line-height: 0.9;
    /* 90% per screenshot */
    letter-spacing: -0.03em;
    /* -3% */
    margin: 0 0 30px 0;
}

/* Cards (visuals only) */
.testimonial-slider-wrapper .testimonial-card {
    background: #FFFFFF;
    border: 2px solid #460E10;
    border-radius: 16px;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
    /* off by default */
    padding: 30px 25px;
    /* visual padding only */
    color: #460E10;
}

.testimonial-slider-wrapper .testimonial-card:hover {
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.06);
}

/* Stars inside cards */
.testimonial-slider-wrapper .testimonial-card .stars .star {
    color: #FF0000;
    font-size: 16px;
}

/* Testimonial title (quote) */
.testimonial-slider-wrapper .testimonial-card .testimonial-title {
    color: #460E10;
    font-size: 24px;
    /* 24px in the design */
    font-weight: 700;
    line-height: 1.1;
    /* ~110% */
    margin: 8px 0 10px;
}

/* Testimonial content (body) */
.testimonial-slider-wrapper .testimonial-card .testimonial-content {
    color: #460E10;
    font-size: 18px;
    /* 18px in the design */
    font-weight: 400;
    line-height: 1.3;
    /* ~130% */
    letter-spacing: -0.02em;
    /* -2% per screenshot */
    margin: 0 0 20px 0;
}

/* Customer name */
.testimonial-slider-wrapper .testimonial-card .customer-name {
    color: #460E10;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    margin-top: auto;
    /* stays pinned to bottom of card */
}

/* Nav buttons (circles) */
.testimonial-slider-wrapper .slider-nav-button {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: transparent !important;
    border: 1px solid #460E10;
    color: #460E10;
    transition: box-shadow .2s ease, transform .2s ease;
    background-image: url('data:image/svg+xml,<svg width="18" height="15" viewBox="0 0 18 15" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.292892 8.20711C-0.0976315 7.81658 -0.0976315 7.18342 0.292892 6.79289L6.65685 0.428932C7.04738 0.0384078 7.68054 0.0384078 8.07107 0.428932C8.46159 0.819457 8.46159 1.45262 8.07107 1.84315L2.41421 7.5L8.07107 13.1569C8.46159 13.5474 8.46159 14.1805 8.07107 14.5711C7.68054 14.9616 7.04738 14.9616 6.65685 14.5711L0.292892 8.20711ZM18 7.5V8.5H1V7.5V6.5H18V7.5Z" fill="%23460E10"/></svg>');
    background-repeat: no-repeat;
    background-position: center;

}

.testimonial-slider-wrapper .slider-nav-button:hover {
    box-shadow: 0 0 0 3px rgba(70, 14, 16, 0.08);
    transform: translateY(-1px);
}

.testimonial-slider-wrapper .slider-nav-button.next-btn {
    background-color: #460E10;
    background-image: url('data:image/svg+xml,<svg width="18" height="15" viewBox="0 0 18 15" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M17.7071 8.20711C18.0976 7.81658 18.0976 7.18342 17.7071 6.79289L11.3431 0.428932C10.9526 0.0384078 10.3195 0.0384078 9.92893 0.428932C9.53841 0.819457 9.53841 1.45262 9.92893 1.84315L15.5858 7.5L9.92893 13.1569C9.53841 13.5474 9.53841 14.1805 9.92893 14.5711C10.3195 14.9616 10.9526 14.9616 11.3431 14.5711L17.7071 8.20711ZM0 7.5V8.5H17V7.5V6.5H0V7.5Z" fill="%23460E10"/></svg>');
}

.testimonial-slider-wrapper .slider-nav-button svg {
    width: 24px;
    height: 24px;
    opacity: 0;
}

/* Dots */
.testimonial-slider-wrapper .slider-indicators .indicator-dot {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: transparent;
    min-width: 44px;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    border: none;
    outline: none;
}

.testimonial-slider-wrapper .slider-indicators .indicator-dot::before {
    content: '';
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #D0D0D0;
    transition: all 0.3s ease;
    border: none;
}

.testimonial-slider-wrapper .slider-indicators .indicator-dot.active::before,
.testimonial-slider-wrapper .slider-indicators .indicator-dot:hover::before {
    background: #460E10;
    transform: scale(1.12);
}

.testimonial-slider-wrapper .slider-indicators .indicator-dot:focus::before {
    box-shadow: 0 0 0 2px rgba(70, 14, 16, 0.3);
}

/* Tablet & mobile font tweaks only — no layout changes */
@media (max-width: 1024px) {
    .testimonial-slider-wrapper .main-title {
        font-size: 36px;
    }
}

@media (max-width: 768px) {
    .testimonial-slider-wrapper .main-title {
        font-size: 28px;
        margin-bottom: 0;
    }

    .testimonial-slider-wrapper .testimonial-card .testimonial-title {
        font-size: 18px;
    }

    .testimonial-slider-wrapper .testimonial-card .testimonial-content {
        font-size: 15px;
        letter-spacing: 0;
    }

    .testimonial-slider-wrapper .testimonial-card .customer-name {
        font-size: 16px;
    }
}


/* ========================================
   RESPONSIVE GRID MODE STYLES
   ======================================== */

/* Grid mode: Desktop layout (shows as grid) */
.testimonial-slider-wrapper.display-mode-responsive_grid .testimonials-container {
    overflow: visible;
    padding-top: 20px; /* Add space for hover effect */
    margin-top: -20px; /* Compensate for the padding */
}

.testimonial-slider-wrapper.display-mode-responsive_grid .testimonials-slider {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    transition: none;
    width: 100%;
}

/* Only apply transform: none on desktop and tablet, not on mobile */
@media (min-width: 768px) {
    .testimonial-slider-wrapper.display-mode-responsive_grid .testimonials-slider {
        transform: none !important;
    }
}

.testimonial-slider-wrapper.display-mode-responsive_grid .testimonial-card {
    flex: none;
    width: 100%;
    margin: 0 !important;
}

/* Grid mode: Hide slider-specific elements on desktop */
.testimonial-slider-wrapper.display-mode-responsive_grid .navigation-buttons {
    display: none;
}

.testimonial-slider-wrapper.display-mode-responsive_grid .slider-indicators {
    display: none;
}

/* Grid mode: Responsive breakpoints */
@media (min-width: 1200px) {
    .testimonial-slider-wrapper.display-mode-responsive_grid .testimonials-slider {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .testimonial-slider-wrapper.display-mode-responsive_grid .testimonials-slider {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .testimonial-slider-wrapper.display-mode-responsive_grid .testimonials-slider {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

/* Grid mode: Switch to slider on mobile - CRITICAL FIX */
@media (max-width: 767px) {

    /* Force slider layout on mobile for responsive grid mode */
    .testimonial-slider-wrapper.display-mode-responsive_grid .testimonials-container {
        overflow: hidden !important;
        position: relative;
    }

    .testimonial-slider-wrapper.display-mode-responsive_grid .testimonials-slider {
        display: flex !important;
        grid-template-columns: none !important;
        gap: 15px;
        transition: transform 0.5s ease !important;
        will-change: transform;
        width: auto !important;
        /* Ensure transform can be applied on mobile */
        transform: translateX(0px) !important;
    }

    .testimonial-slider-wrapper.display-mode-responsive_grid .testimonial-card {
        flex: 0 0 calc(100% - 10px) !important;
        width: auto !important;
        min-width: calc(100% - 10px);
    }

    /* Force show navigation on mobile for responsive grid mode */
    .testimonial-slider-wrapper.display-mode-responsive_grid .header-section {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
    }

    .testimonial-slider-wrapper.display-mode-responsive_grid .navigation-buttons {
        display: flex !important;
        align-self: flex-end;
    }

    /* Force show indicators on mobile for responsive grid mode */
    .testimonial-slider-wrapper.display-mode-responsive_grid .slider-indicators {
        display: flex !important;
        justify-content: center;
        gap: 8px;
        margin-top: 30px;
    }
}

/* Grid mode: Ensure proper card styling in grid layout */
.testimonial-slider-wrapper.display-mode-responsive_grid .testimonial-card {
    transition: all 0.3s ease;
}

.testimonial-slider-wrapper.display-mode-responsive_grid .testimonial-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(139, 69, 19, 0.1);
}

/* Grid mode: Adjust card heights for better grid alignment */
@media (min-width: 768px) {

    .elementor-widget-container .testimonial-slider-wrapper .rating-section,
    .elementor-widget-container .testimonial-slider-wrapper .header-section {
        margin: 0 auto;
    }

    .testimonial-slider-wrapper.display-mode-responsive_grid .testimonial-card {
        display: flex;
        flex-direction: column;
        height: 100%;
    }

    .testimonial-slider-wrapper.display-mode-responsive_grid .testimonial-content {
        flex: 1;
    }
}