* {
  --primary-color: #69B31D;
  --primary-color-rgb: 105, 179, 29;
  --secondary-color: #EAA638;
  --secondary-color-rgb: 59, 157, 31;
}


/* ==========================================================================
   SAFE MOBILE RESPONSIVE PATCH (V5 - GENTLE)
   Fixes horizontal overflow ONLY on mobile/tablet without touching Desktop layout.
   ========================================================================== */
@media (max-width: 991.98px) {
    html, body {
        overflow-x: hidden !important;
        width: 100% !important;
        position: relative;
    }
    .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    img, video, iframe {
        max-width: 100% !important;
        height: auto !important;
    }
    .container, .container-fluid, .container-fluide {
        padding-left: 15px !important;
        padding-right: 15px !important;
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* ==========================================================================
   ULTRA-SAFE ALIGNMENT & RESPONSIVE PATCH (V6)
   Fixes Desktop centering, Mobile stacking, and Universal Overflow.
   ========================================================================== */

/* 1. Global Centering & Overflow Protection (All Resolutions) */
html, body {
    max-width: 100vw !important;
    overflow-x: hidden !important;
}

/* Ensure all primary containers are centered in the viewport */
.container, .auto-container, .container-fluid, .boxed_wrapper, .page-wraper {
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Prevent Row-bleed and ensure centered flex rows */
.row {
    margin-left: 0 !important;
    margin-right: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
}

/* 2. Mobile & Tablet Alignment (<= 991.98px) */
@media (max-width: 991.98px) {
    /* Center all headings and titles for a balanced mobile look */
    h1, h2, h3, h4, h5, h6, 
    [class*="title"], [class*="heading"], [class*="hero-text"] {
        text-align: center !important;
    }
    
    /* Standardize mobile column stacking and centering */
    [class*="col-"] {
        width: 100% !important;
        flex: 0 0 100% !important;
        max-width: 100% !important;
        text-align: center !important;
        float: none !important;
        margin-bottom: 20px !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    /* Force-center any floating elements (logos, buttons, icons) on mobile */
    .float-left, .float-right, .pull-left, .pull-right {
        float: none !important;
        display: block !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    /* Fix for absolutely positioned text layers in sliders */
    .tp-caption {
        left: 0 !important;
        width: 100% !important;
        text-align: center !important;
    }
    
    /* Standard mobile container padding */
    .container, .auto-container {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}

/* 3. Universal Media Stability */
img, video, iframe, canvas {
    max-width: 100% !important;
    height: auto !important;
}