/* Footer Structural Configurations */
.msuite-main-footer {
    font-family: 'Poppins', sans-serif;
}

.footer-block-heading {
    font-size: 0.95rem;
    letter-spacing: 0.5px;
}

/* Micro Font Sizing Shorthand Overrides */
.text-xs {
    font-size: 0.8rem;
}

/* SOCIAL MEDIA BADGES CONFIGURATION ENGINE */
.social-circle-btn {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.25);
    color: #FFFFFF;
    text-decoration: none;
    font-size: 0.85rem;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.social-circle-btn:hover {
    background-color: #FF2E44;
    border-color: #FF2E44;
    color: #FFFFFF;
    transform: scale(1.08);
}

/* CONTACT BRAND ICON PILLS CONFIGURATION */
.contact-icon-red {
    width: 32px;
    height: 32px;
    background-color: #FF2E44;
    /* High fidelity matching brand primary token red */
    color: #FFFFFF;
    font-size: 0.85rem;
}

/* INTERACTIVE LINKS NAVIGATION TRACK SYSTEM */
.footer-links-list li a {
    color: #FFFFFF;
    /* Smooth matching muted grey-slate link color */
    text-decoration: none;
    font-size: 0.82rem;
    font-weight: 400;
    transition: color 0.18s ease;
    display: inline-block;
}

.footer-links-list li a:hover,
.hover-red:hover {
    color: #FF2E44 !important;
    text-decoration: underline !important;
}

/* Responsive adjustment breaks for mobile configurations */
@media (max-width: 991.98px) {
    .footer-block-heading {
        margin-bottom: 1rem !important;
    }
}

/* Custom subtle divider styling for the Contact items */
.border-bottom-divider {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
}

/* Ensure perfect visual alignment for red round badge icons */
.contact-icon-red {
    width: 42px;
    height: 42px;
    background-color: #FF2E44;
    color: #FFFFFF;
    font-size: 1.1rem;
}

/* ==================================================================
   Mobile Carousel Navigation Arrows Custom Styles
   ================================================================== */
@media (max-width: 991.98px) {

    /* 1. Container adjustments to prevent cards from touching screen edges */
    #solutionsCarouselMobile .carousel-inner {
        padding: 10px 45px !important;
    }

    /* 2. Style and center the round layout control arrows */
    #solutionsCarouselMobile .carousel-control-prev,
    #solutionsCarouselMobile .carousel-control-next {
        width: 40px !important;
        height: 40px !important;
        background-color: #FF2E44 !important;
        /* Matches dark theme accent */
        border-radius: 50% !important;
        opacity: 0.85;
        top: 50% !important;
        transform: translateY(-50%) !important;
        /* Centers arrows perfectly vertical */
        transition: all 0.2s ease-in-out;
    }

    /* 3. Give them a nice subtle pop when active/tapped */
    #solutionsCarouselMobile .carousel-control-prev:active,
    #solutionsCarouselMobile .carousel-control-next:active {
        opacity: 1 !important;
        scale: 0.95;
        background-color: #FF2E44;
    }

    /* 4. Position adjustments to tuck them neatly on edges */
    #solutionsCarouselMobile .carousel-control-prev {
        left: 5px !important;
    }

    #solutionsCarouselMobile .carousel-control-next {
        right: 5px !important;
    }

    /* 5. Scale down the internal icon graphics slightly for elegant balance */
    #solutionsCarouselMobile .carousel-control-prev-icon,
    #solutionsCarouselMobile .carousel-control-next-icon {
        width: 18px !important;
        height: 18px !important;
        background-color: transparent !important;
        /* Cleans up default dark circle wrapper */
    }


}

@media (min-width: 992px) {

    /* Set up the inner track layout wrapper */
    .desktop-single-card-carousel .carousel-inner {
        display: flex !important;
        flex-direction: row !important;
        overflow: hidden !important;
    }

    /* Force 4 items visible together on screen at all times */
    .desktop-single-card-carousel .carousel-item {
        display: block !important;
        flex: 0 0 25% !important;
        max-width: 25% !important;
        margin-right: 0 !important;
        padding: 0 12px;
        /* Emulates column gutter gap spacing */
        transition: transform 0.6s ease-in-out !important;
    }

    /* Keep all upcoming cards in layout alignment */
    .desktop-single-card-carousel .carousel-item-next,
    .desktop-single-card-carousel .carousel-item-prev,
    .desktop-single-card-carousel .carousel-item.active {
        display: block !important;
    }

    /* Calculation to smooth slide the track left and right card-by-card */
    .desktop-single-card-carousel .carousel-inner .carousel-item.active {
        margin-left: 0;
    }
}

@media (min-width: 992px) {

    /* Main wrapper window hiding overflown cards */
    .solutions-scroll-window {
        overflow-x: auto;
        scroll-behavior: smooth;
        scrollbar-width: none;
        /* Hides Firefox scrollbar */
    }

    .solutions-scroll-window::-webkit-scrollbar {
        display: none;
        /* Hides Chrome/Safari scrollbar */
    }

    /* Unbreakable straight line track layout */
    .solutions-scroll-track {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        width: max-content;
    }

    /* Force every single card to fill exactly 1/4th of the active window parent container minus padding gaps */
    .solutions-track-card {
        width: calc((100vw - 180px) / 4) !important;
        /* Dynamically sizes 4 elements perfectly on screen */
        padding: 0 12px;
        box-sizing: border-box;
    }

    .solutions-track-card .entity-solution-card {
        width: 100% !important;
        height: 450px;
        /* Adjust layout height to match your mock design specs */
    }

    /* ==================================================================
   Overlay Highlight Engine (Bypasses Overflow Clipping)
   ================================================================== */
    .solutions-track-card .entity-solution-card {
        position: relative;
        transition: transform 0.4s ease-in-out !important;
    }

    /* Create the hidden glow overlay canvas inside the card container */
    .solutions-track-card .entity-solution-card::after {
        content: '';
        position: absolute;
        inset: 0;
        /* Snaps perfectly to all 4 edges */
        border-radius: inherit;
        /* Matches your rounded-4 card layout edges */
        /* Vivid solid white core */
        /* Thick neon internal glow gradient frame */
        box-shadow: inset 0 0 25px rgba(255, 255, 255, 0.8),
            inset 0 0 50px rgba(255, 255, 255, 0.8);
        opacity: 0;
        pointer-events: none;
        /* Prevents overlay from breaking hover/click events */
        transition: opacity 0.4s ease-in-out;
        z-index: 5;
    }

    /* Also smoothly animate the background image brightness when highlighted */
    .solutions-track-card .entity-solution-card .entity-bg-img {
        transition: filter 0.4s ease-in-out !important;
    }

    /* ==================================================================
   Active Highlight State Changes
   ================================================================== */
    .solutions-track-card.is-highlighted {
        z-index: 10;
    }

    .solutions-track-card.is-highlighted .entity-solution-card {
        transform: scale(1.04) !important;
    }

    /* Reveal the glowing neon frame layer and make the card content pop */
    .solutions-track-card.is-highlighted .entity-solution-card::after {
        opacity: 1 !important;
    }

    /* Boost the card background image exposure slightly to complete the glow look */
    .solutions-track-card.is-highlighted .entity-solution-card .entity-bg-img {
        filter: brightness(1.25) contrast(1.1) !important;
    }
}

@media (max-width: 767.98px) {
    .footer-logo {
        max-width: 180px;

    }
}

@media (min-width: 992px) {
    .footer-logo {
        max-width: 170px;

    }
}