:root {
    --seg-primary: #2C349C;
    --seg-secondary: #007a33;
    --seg-accent-red: #C8102E;
    --seg-accent-yellow: #FFCD00;
    --seg-white: #ffffff;
    --seg-light-gray: #f4f4f4;
    --seg-medium-gray: #dddddd;
    --seg-dark-gray: #333333;
    --seg-text: #222222;
}
/* Container Reset */
.sita-main-wrapper {
    width: 100%;
    position: relative;
    /* Font family is now handled by Elementor Typography settings */
}

/* --- Top Card Structure --- */
.sita-slide-item {
    /* Default background if not set in Elementor */
    background-color: #fff; 
    overflow: hidden;
}

.sita-slide-content {
    display: flex;
    flex-direction: row;
    min-height: 400px; /* Default height */
}

/* Left Content Structure */
.sita-slide-left {
    width: 45%;
    padding: 60px 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Icon Box Structure */
.sita-icon-box {
    /* Default Green if not set */
    background-color: #2e8b57; 
    color: #fff;
    width: 60px;
    height: 60px;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    margin-bottom: 20px;
}

.sita-icon-box svg {
    width: 1em;
    height: 1em;
    fill: currentColor; /* Allows Elementor color control to work on SVGs */
}

.sita-title {
    margin: 0 0 15px 0; /* Spacing */
}

.sita-description {
    margin: 0 0 30px 0; /* Spacing */
    line-height: 1.6;
}

/* Right Image Structure */
.sita-slide-right {
    width: 55%;
    position: relative;
    /* The height fills the parent flex container */
}

.sita-image-wrapper {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    /* Radius is now handled by Elementor control selectors if set */
}

/* --- Controls (Arrows) Structure --- */
.sita-nav-controls {
    display: flex;
    align-items: center;
    gap: 15px;
}

.sita-button-prev, .sita-button-next {
    width: 40px;
    height: 40px;
    border: 1px solid #2e8b57; /* Default border */
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #2e8b57;
    cursor: pointer;
    transition: 0.3s;
    font-size: 18px;
	background: transparent;
    
    /* FIX FOR EDGE: Ensure font family is recognized */
    font-family: 'eicons'; 
    font-weight: 400; /* eicons usually need normal weight */
}

/* Hover defaults - Elementor can override these */
.sita-button-prev:hover, .sita-button-next:hover {
    background-color: #2e8b57;
    color: #fff;
}

/* Ensure the icon itself (the <i> tag) inherits correctly */
.sita-button-prev i, 
.sita-button-next i {
    font-family: 'eicons' !important; /* Force eicons */
    font-style: normal;
    display: inline-block;
    line-height: 1;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
}

/* --- Bottom Tabs Structure --- */
.sita-tabs-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
    margin-top: 30px;
}

.sita-tab-item {
    background: #fff;
    border-radius: 50px;
    padding: 10px 25px;
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    box-shadow: 0 4px 6px rgba(0,0,0,0.05);
    transition: all 0.3s ease;
    border: 1px solid transparent;
}

.sita-tab-item .sita-tab-icon {
    display: flex;
    align-items: center;
}

.sita-tab-item .sita-tab-icon i,
.sita-tab-item .sita-tab-icon svg {
    font-size: 14px;
    width: 14px;
    height: 14px;
    fill: currentColor;
}

/* Active Tab Default */
.sita-tab-item.active {
    background-color: #2e8b57;
    color: #fff;
}

.sita-tab-item:hover {
    transform: translateY(-2px);
}

/* Responsive Fixes */
@media (max-width: 768px) {
    .sita-slide-content {
        flex-direction: column-reverse;
    }
    .sita-slide-left, .sita-slide-right {
        width: 100%;
    }
    .sita-slide-right {
        height: 250px; /* Fallback height on mobile */
    }
    .sita-image-wrapper {
        border-radius: 30px 30px 0 0 !important; /* Force top radius on mobile */
    }
}


/* Container Reset */
.sita-main-wrapper {
    width: 100%;
    position: relative;
}

/* --- Slide Card --- */
.sita-slide-item {
    background-color: #eef1f5;
    border-radius: 30px;
    overflow: hidden;
}

.sita-slide-content {
    display: flex;
    flex-direction: row;
    min-height: 400px;
}

/* Left Content */
.sita-slide-left {
    width: 45%;
    padding: 60px 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    z-index: 2; /* Ensure controls are clickable */
}

/* Icon Box */
.sita-icon-box {
    background-color: #2e8b57;
    color: #fff;
    width: 60px;
    height: 60px;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    margin-bottom: 20px;
}

.sita-icon-box svg {
    width: 1em;
    height: 1em;
    fill: currentColor;
}

.sita-title {
    margin: 0 0 15px 0;
}

.sita-description {
    margin: 0 0 30px 0;
    line-height: 1.6;
}

/* --- Navigation Controls (Arrows + Dots) --- */
.sita-nav-controls {
    display: flex;
    align-items: center;
    gap: 15px; /* Spacing between arrows and dots */
    margin-top: 20px;
}

.sita-button-prev, .sita-button-next {
    width: 40px;
    height: 40px;
    border: 1px solid #2e8b57;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #2e8b57;
    cursor: pointer;
    transition: 0.3s;
    font-size: 18px;
    flex-shrink: 0; /* Prevent shrinking */
    z-index: 10;
}

.sita-button-prev:hover, .sita-button-next:hover {
    background-color: #2e8b57;
    color: #fff;
}

/* Pagination (Dots) Container */
.sita-swiper-pagination {
    position: relative !important; /* Override Swiper absolute default */
    bottom: auto !important;
    width: auto !important;
    display: flex;
    align-items: center;
    gap: 5px;
}

/* Swiper Dots Customization overrides */
.swiper-pagination-bullet {
    background: #000;
    opacity: 0.2;
    width: 8px;
    height: 8px;
    margin: 0 !important; /* Reset swiper margins */
    transition: 0.3s;
}

.swiper-pagination-bullet-active {
    opacity: 1;
    background: #2e8b57;
    transform: scale(1.2);
}

/* --- Right Image --- */
.sita-slide-right {
    width: 55%;
    position: relative;
}

.sita-image-wrapper {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
}

/* --- Bottom Tabs --- */
.sita-tabs-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
    margin-top: 30px;
}

.sita-tab-item {
    background: #fff;
    border-radius: 50px;
    padding: 10px 25px;
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    box-shadow: 0 4px 6px rgba(0,0,0,0.05);
    transition: all 0.3s ease;
    border: 1px solid transparent;
}

.sita-tab-item i, .sita-tab-item svg {
    font-size: 14px;
    width: 14px;
    height: 14px;
    fill: currentColor;
}

.sita-tab-item.active {
    background-color: #2e8b57;
    color: #fff;
}

/* --- Responsive --- */
@media (max-width: 768px) {
    .sita-slide-content {
        flex-direction: column-reverse;
    }
    .sita-slide-left, .sita-slide-right {
        width: 100%;
    }
    .sita-slide-right {
        height: 250px;
    }
    .sita-image-wrapper {
        border-radius: 30px 30px 0 0 !important;
    }
    
    /* Center text on mobile */
    .sita-slide-left {
        padding: 30px 20px;
        align-items: center;
        text-align: center;
    }
    
    .sita-nav-controls {
        justify-content: center;
    }
}


/* Container Reset */
.sita-main-wrapper {
    width: 100%;
    position: relative;
}

.sita-card-container {
    position: relative; /* Important for absolute positioning of controls */
    border-radius: 30px;
    overflow: hidden;
    background-color: #eef1f5; /* Default fallback */
}

/* --- Slide Card --- */
.sita-slide-item {
    background-color: transparent; /* Color is now on wrapper/parent via controls */
    border-radius: 30px;
    /* overflow: hidden; Removed to allow absolute controls to sit properly if needed */
}

.sita-slide-content {
    display: flex;
    flex-direction: row;
    min-height: 400px;
    position: relative;
}

/* Left Content */
.sita-slide-left {
    width: 45%;
    padding: 60px 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    z-index: 2;
    padding-bottom: 100px; /* EXTRA PADDING for the absolute controls */
}

/* Icon Box */
.sita-icon-box {
    background-color: #2e8b57;
    color: #fff;
    width: 60px;
    height: 60px;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    margin-bottom: 20px;
}

.sita-icon-box svg {
    width: 1em;
    height: 1em;
    fill: currentColor;
}

.sita-title {
    margin: 0 0 15px 0;
}

/* WYSIWYG Content Styles */
.sita-description {
    color: #6b7280; /* Default color */
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 10px;
}
.sita-description p { margin-bottom: 15px; }
.sita-description ul { list-style: disc; margin-left: 20px; margin-bottom: 15px; }
.sita-description ol { list-style: decimal; margin-left: 20px; margin-bottom: 15px; }


/* --- STATIC CONTROLS (Floating over left content) --- */
.sita-nav-controls-wrapper {
    position: absolute;
    bottom: 60px; /* Default - controlled by Elementor */
    left: 40px;   /* Default - controlled by Elementor */
    z-index: 20;
}

.sita-nav-controls {
    display: flex;
    align-items: center;
    gap: 15px;
}

.sita-button-prev, .sita-button-next {
    width: 40px;
    height: 40px;
    border: 1px solid #2e8b57;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #2e8b57;
    cursor: pointer;
    transition: 0.3s;
    font-size: 18px;
    background: transparent;
}

.sita-button-prev:hover, .sita-button-next:hover {
    background-color: #2e8b57;
    color: #fff;
}

/* Pagination (Dots) */
.sita-swiper-pagination {
    position: relative !important;
    width: auto !important;
    display: flex !important; /* Force display */
    align-items: center;
    gap: 8px;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
}

.swiper-pagination-bullet {
    background: #000;
    opacity: 0.2;
    width: 8px;
    height: 8px;
    margin: 0 !important;
    transition: 0.3s;
    display: inline-block;
    border-radius: 50%;
}

.swiper-pagination-bullet-active {
    opacity: 1;
    background: #2e8b57;
    transform: scale(1.2);
}

/* --- Right Image --- */
.sita-slide-right {
    width: 55%;
    position: relative;
    /* Height matches flex parent */
}

.sita-image-wrapper {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* --- Bottom Tabs --- */
.sita-tabs-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
    margin-top: 30px;
}

.sita-tab-item {
    background: #fff;
    border-radius: 50px;
    padding: 10px 25px;
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    box-shadow: 0 4px 6px rgba(0,0,0,0.05);
    transition: all 0.3s ease;
    border: 1px solid transparent;
}

.sita-tab-icon {
    display: flex;
    align-items: center;
}

.sita-tab-item.active {
    background-color: #2e8b57;
    color: #fff;
}

/* Responsive */
@media (max-width: 768px) {
    .sita-slide-content {
        flex-direction: column-reverse;
    }
    .sita-slide-left, .sita-slide-right {
        width: 100% !important; /* Force full width on mobile */
    }
    .sita-slide-right {
        height: 250px;
    }
    .sita-image-wrapper {
        border-radius: 30px 30px 0 0 !important;
    }
    .sita-slide-left {
        text-align: center;
        align-items: center;
    }
    .sita-nav-controls-wrapper {
        position: relative; /* Stack normally on mobile */
        bottom: auto;
        left: auto;
        margin-top: 20px;
        justify-content: center;
        display: flex;
    }
    .sita-slide-left {
        padding-bottom: 40px;
    }
}