@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600&family=Raleway:wght@700;800&display=swap');

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:'Poppins',sans-serif;
    color:#222;
    overflow-x:hidden;
}
:root {
    /* Color Definitions */
    --primary-color: #a45394;    /* Deep Blue/Dark Navy (Your background/headings) */
    --secondary-color: #643C9B;  /* Vibrant Purple (Your tags/buttons/accents) */
    --text-dark: #1f1f2e;
    --text-muted: #6c757d;
    --bg-light: #f8f9fa;
    --card-bg: #ffffff;
    --text-main: #2b2e43;
    --title-font: 'Raleway', sans-serif;
    --body-font: 'Poppins', sans-serif;
}
/* Core Heading Tags */
/* Core Heading Tags */
h1, h2, h3, h4, h5, h6,
.section-title,
.industry-card-title,
.presence-card-title,
.banner-title {
    font-family: var(--title-font);
    font-weight: 800; /* Set a default strong weight for Raleway titles */
     /* Raleway looks incredible slightly tighter at larger sizes */
}

img{
    max-width:100%;
}

.section-padding{
    padding:50px 0;
}

.section-tag{
    color:var(--primary-color);
    font-size:16px;
    font-weight:600;
    display:inline-block;
    margin-bottom:10px;
}

.section-title{
    font-size:48px;
    font-weight:700;
    line-height:1.2;
    margin-bottom:25px;
}

.custom-navbar{
    background:var(--primary-color);
    padding:15px 0;
}

.navbar-brand img{
    height:42px;
}

.navbar-nav .nav-link{
    color:#fff;
    margin:0 16px;
    font-size:15px;
    font-weight:500;
}


  /* NAVBAR */
        .custom-navbar{
            background:#0b0b1e;
            position:relative;
            min-height:80px;
            padding:0;
            overflow:hidden;
            background-image: url(../images/pattern_bg_2.png); 
        }


        /* Left white angled section */
        .logo-section{
            background:white;
            height:80px;
            width:33%;
            clip-path: polygon(0 0, 88% 0, 100% 100%, 0% 100%);
            display:flex;
            align-items:center;
            padding-left:40px;
            position:relative;
            z-index:2;
           justify-content: center;
        }

        .logo-section img{
            height:58px;
            width:auto;
        }

        .navbar-nav .nav-link{
            color:#fff !important;
            font-size:15px;
            font-weight:500;
            padding:0 18px !important;
            transition:0.3s;
        }

        .navbar-nav .nav-link:hover{
            color:var(--primary-color) !important;
        }

        .nav-right{
            margin-left:auto;
            padding-right:35px;
        }

        .distributor-btn{
            color:#fff;
            border:none;
            padding:16px 28px;
            font-size:16px;
            font-weight:600;
            border-radius:4px;
            text-decoration:none;
            display:inline-flex;
            align-items:center;
            gap:10px;
            transition:0.3s;
        }

        .distributor-btn:hover{
            background:var(--secondary-color);
            color:#fff;
        }

        .navbar-toggler{
            background: var(--primary-color);
            border:none;
            box-shadow:none !important;
        }

        .navbar-toggler-icon{
            filter: brightness(0) invert(1);
        }

        /* Responsive */
        @media (max-width:991px){

            /* .custom-navbar{
                background:#0b0b1e;
            } */

            .logo-section{
                width:100%;
                clip-path:none;
                justify-content:space-between;
                padding:0 20px;
            }

            .mobile-collapse{
                background:#0b0b1e;
                padding:20px;
            }

            .navbar-nav{
                padding-top:15px;
            }

            .navbar-nav .nav-link{
                color: black !important;
                padding:12px 0 !important;
            }

            .nav-right{
                padding:10px;
                margin-top:20px;
            }

            .distributor-btn{
                width:100%;
                justify-content:center;
            }
        }

.distributor-btn{
    background:var(--primary-color);
    color:#fff;
    border-radius:4px;
    padding:12px 22px;
    font-size:13px;
    font-weight:600;
}

.hero-section{
    background:#edf0f4;
    position:relative;
}

.hero-device{
    max-height:650px;
}

.hero-content h1{
    font-size:58px;
    font-weight:800;
    margin-top:20px;
    line-height:1.1;
}

.hero-content p{
    font-size:18px;
    color:#666;
    margin:25px 0;
}

.hero-logo{
    width:260px;
}

.store-buttons img{
    height:60px;
}

.about-image-wrapper{
    position:relative;
}



   .about-section{
            padding:50px;
            position:relative;
        }

        /* IMAGE AREA */
        .about-image-wrapper{
            position:relative;
            padding-left:50px;
        }

        .about-image{
            position:relative;
            z-index:3;
            border-radius:16px;
            overflow:hidden;
            box-shadow:0 15px 50px rgba(0,0,0,0.12);
        }

        .about-image img{
            width:100%;
            display:block;
            border-radius:16px;
        }

        /* ANIMATED DOTS */
        .dots-pattern{
            position:absolute;
            top:-45px;
            left:0;
            width:150px;
            height:150px;
            z-index:1;

            background-image: radial-gradient(#16132e 2px, transparent 2px);
            background-size:18px 18px;

            animation: moveDots 5s linear infinite;
        }

        @keyframes moveDots{
            0%{
                transform:translateY(0px);
            }
            50%{
                transform:translateY(15px);
            }
            100%{
                transform:translateY(0px);
            }
        }

        /* BLUE SHAPE */
        .blue-shape{
            position:absolute;
            left:0;
            bottom:-45px;
            width:200px;
            height:200px;
            background:#643c9b;
            clip-path: polygon(0 0, 0% 100%, 100% 100%);
            border-radius:12px;
            z-index:1;
        }

        /* EXPERIENCE BOX */
        .experience-box{
            position:absolute;
            right:-20px;
            bottom:40px;
            background:#fff;
            padding:35px 45px;
            border-radius:16px;
            box-shadow:0 10px 40px rgba(0,0,0,0.12);
            z-index:5;
            text-align:center;
            min-width:210px;
        }

        .experience-box h2{
            font-size:58px;
            line-height:1;
            margin:0;
            font-weight:700;
            color:var(--primary-color);
        }

        .experience-box p{
            margin-top:10px;
            font-size:20px;
            color:#666;
        }

        /* CONTENT AREA */
        .about-content{
            padding-left:60px;
        }

        .sub-title{
            color:var(--primary-color);
            font-size:18px;
            font-weight:600;
            display:flex;
            align-items:center;
            gap:10px;
            margin-bottom:20px;
        }

        .sub-title i{
            color:#1b1735;
            font-size:24px;
        }

        .main-title{
            font-size:62px;
            line-height:1.15;
            font-weight:800;
            color:#10122d;
            margin-bottom:35px;
        }

        .about-text{
            font-size:16px;
            line-height:2;
            color:#666;
            margin-bottom:40px;
        }

        .read-btn{
            display:inline-flex;
            align-items:center;
            gap:10px;
            background:var(--primary-color);
            color:#fff;
            text-decoration:none;
            padding:18px 35px;
            border-radius:6px;
            font-weight:600;
            transition:0.3s;
        }

        .read-btn:hover{
            background:#9d4fba;
            color:#fff;
            transform:translateY(-3px);
        }

        /* RESPONSIVE */

        @media(max-width:1199px){

            .main-title{
                font-size:48px;
            }

            .about-text{
                font-size:18px;
            }
        }

        @media(max-width:991px){

            .about-content{
                padding-left:0;
                margin-top:80px;
            }

            .main-title{
                font-size:42px;
            }

            .experience-box{
                right:20px;
            }
        }

        @media(max-width:767px){

            .about-section{
                padding:50px 0;
            }

            .about-image-wrapper{
                padding-left:15px;
                padding-right:15px;
            }

            .main-title{
                font-size:34px;
            }

            .about-text{
                font-size:16px;
                line-height:1.8;
            }

            .experience-box{
                position:relative;
                right:auto;
                bottom:auto;
                margin:-40px auto 0;
                width:220px;
            }

            .blue-shape{
                width:120px;
                height:120px;
            }

            .dots-pattern{
                width:100px;
                height:100px;
            }
        }




.purple-btn{
    background:var(--secondary-color);
    color:#fff;
    padding:16px 28px;
    border-radius:6px;
    font-weight:600;
}



 .lifecycle-section{
            position:relative;
            padding:100px 0;
            overflow:hidden;
            background: url(../images/valet-2-01-1.webp);
            background-repeat: no-repeat;
            background-size: cover;
        }

        /* BACKGROUND SHAPES */
        .shape-1{
            position:absolute;
            top:-100px;
            right:-100px;
            width:500px;
            height:500px;
            background:rgba(0,0,0,0.02);
            border-radius:50%;
            z-index:0;
        }

        .shape-2{
            position:absolute;
            bottom:-150px;
            right:200px;
            width:400px;
            height:400px;
            background:rgba(0,0,0,0.02);
            border-radius:50%;
            z-index:0;
        }

        /* LEFT IMAGE */
        .left-image{
            position:relative;
            height:100%;
            min-height:850px;
            overflow:hidden;
            border-top-right-radius:220px;
            border-bottom-right-radius:220px;
        }

        .left-image img{
            width:100%;
            height:100%;
            object-fit:cover;
        }

        /* CONTENT */
        .content-area{
            position:relative;
            z-index:2;
            padding-left:40px;
        }

        .section-subtitle{
            color:var(--primary-color);
            font-weight:600;
            font-size:20px;
            margin-bottom:20px;
            display:flex;
            align-items:center;
            justify-content:center;
            gap:10px;
        }

        .section-subtitle i{
            color:#1b1735;
            font-size:22px;
        }

        .section-title{
            font-size:64px;
            font-weight:800;
            line-height:1.15;
            color:#0f112e;
            text-align:center;
            margin-bottom:60px;
        }

        /* CARDS */
        .stage-card{
            background:#fff;
            border-radius:16px;
            padding:35px;
            height:100%;
            box-shadow:0 5px 25px rgba(0,0,0,0.05);
            transition:0.4s;
            position:relative;
        }

        .stage-card:hover{
            transform:translateY(-8px);
            box-shadow:0 15px 40px rgba(0,0,0,0.10);
        }

        .stage-top{
            display:flex;
            align-items:center;
            justify-content:space-between;
            margin-bottom:25px;
        }

        .stage-number{
            width:60px;
            height:60px;
            background:var(--primary-color);
            color:#fff;
            border-radius:50%;
            display:flex;
            align-items:center;
            justify-content:center;
            font-size:26px;
            font-weight:700;
        }

        .stage-icon{
            font-size:44px;
            color:#8d47c7;
        }

        .stage-title{
            font-size:24px;
            font-weight:700;
            color:#10122d;
            margin-bottom:18px;
        }

        .stage-text{
            font-size:16px;
            line-height:1.9;
            color:#666;
        }

        /* RESPONSIVE */

        @media(max-width:1399px){

            .section-title{
                font-size:52px;
            }

            .stage-title{
                font-size:28px;
            }
        }

        @media(max-width:1199px){

            .section-title{
                font-size:46px;
            }

            .stage-title{
                font-size:24px;
            }

            .stage-text{
                font-size:17px;
            }
        }

        @media(max-width:991px){

            .left-image{
                min-height:500px;
                border-radius:40px;
                margin-bottom:60px;
            }

            .content-area{
                padding-left:0;
            }

            .section-title{
                font-size:40px;
            }
        }

        @media(max-width:767px){

            .lifecycle-section{
                padding:70px 0;
            }

            .section-title{
                font-size:32px;
                margin-bottom:40px;
            }

            .stage-card{
                padding:25px;
            }

            .stage-number{
                width:50px;
                height:50px;
                font-size:22px;
            }

            .stage-icon{
                font-size:34px;
            }

            .stage-title{
                font-size:22px;
            }

            .stage-text{
                font-size:15px;
                line-height:1.8;
            }

            .left-image{
                min-height:350px;
            }
        }













.process-section{
    background:#f7f7f7;
}

.process-img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.process-content{
    padding:0 60px;
}

.process-card{
    background:#fff;
    padding:35px;
    border-radius:16px;
    box-shadow:0 10px 30px rgba(0,0,0,0.04);
    height:100%;
    transition:0.4s;
}

.process-card:hover{
    transform:translateY(-8px);
}

.number{
    width:50px;
    height:50px;
    background:var(--secondary-color);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    margin-bottom:20px;
    font-weight:700;
}



/* SECTION */
        .features-section{
            position:relative;
            padding:100px 0;
            overflow:hidden;
            background:#f7f7f7;
        }

        /* BACKGROUND PATTERN */
        .features-section::before{
            content:'';
            position:absolute;
            left:0;
            top:0;
            width:100%;
            height:100%;
            background-image:url(../images/service_bg_1.png);
            background-size: cover;
            z-index:0;
        }

        .section-header{
            position:relative;
            z-index:2;
            margin-bottom:60px;
        }

        .sub-title{
            color:var(--primary-color);
            font-size:20px;
            font-weight:600;
            display:flex;
            align-items:center;
            gap:10px;
            margin-bottom:20px;
        }

        .sub-title i{
            color:#1b1735;
            font-size:22px;
        }

        .main-title{
            font-size:38px;
            line-height:1.15;
            font-weight:800;
            color:#10122d;
            margin:0;
        }

        /* CUSTOM NAV */
        .custom-nav{
            display:flex;
            gap:12px;
            justify-content:flex-end;
        }

        .custom-nav button{
            width:60px;
            height:60px;
            border:none;
            background:var(--primary-color);
            color:#fff;
            font-size:24px;
            border-radius:4px;
            transition:0.3s;
        }

        .custom-nav button:hover{
            background:var(--primary-color);
        }

        /* FEATURE CARD */
        .feature-card{
            background:#fff;
            border:1px solid #d8e6ff;
            border-radius:12px;
            padding:50px 35px;
            text-align:center;
            transition:0.4s;
            height:100%;
            position:relative;
            overflow:hidden;
        }

        .feature-card:hover{
            transform:translateY(-10px);
            box-shadow:0 15px 40px rgba(0,0,0,0.08);
        }

        .feature-icon{
            width:100px;
            height:100px;
            margin:0 auto 30px;
            background:#eef5ff;
            border-radius:50%;
            display:flex;
            align-items:center;
            justify-content:center;
            font-size:52px;
            color:#8d47c7;
        }

        .feature-title{
            font-size:20px;
            line-height:1.4;
            font-weight:700;
            color:#10122d;
            margin-bottom:20px;
        }

        .feature-text{
            font-size:15px;
            line-height:2;
            color:#666;
            margin-bottom:30px;
        }

        .read-more{
            color:#10122d;
            font-weight:600;
            text-decoration:none;
            display:inline-flex;
            align-items:center;
            gap:10px;
            transition:0.3s;
        }

        .read-more:hover{
            color:#8d47c7;
        }

        /* BUTTON */
        .bottom-btn{
            margin-top:60px;
            text-align:center;
        }

        .main-btn{
            display:inline-flex;
            align-items:center;
            gap:10px;
            padding:18px 40px;
            background:var(--primary-color);
            color:#fff;
            border-radius:6px;
            text-decoration:none;
            font-weight:600;
            transition:0.3s;
        }

        .main-btn:hover{
            background:#9b4eb4;
            color:#fff;
        }

        /* OWL */
        .owl-stage{
            display:flex;
        }

        .owl-item{
            display:flex;
            height:auto;
        }

        .owl-carousel .owl-item img{
            width:auto;
        }

        /* RESPONSIVE */

        @media(max-width:1399px){

            .main-title{
                font-size:52px;
            }

            .feature-title{
                font-size:28px;
            }
        }

        @media(max-width:1199px){

            .main-title{
                font-size:46px;
            }

            .feature-title{
                font-size:24px;
            }

            .feature-text{
                font-size:16px;
            }
        }

        @media(max-width:991px){

            .main-title{
                font-size:38px;
            }

            .custom-nav{
                justify-content:flex-start;
                margin-top:30px;
            }
        }

        @media(max-width:767px){

            .features-section{
                padding:70px 0;
            }

            .main-title{
                font-size:32px;
            }

            .feature-card{
                padding:35px 25px;
            }

            .feature-icon{
                width:90px;
                height:90px;
                font-size:42px;
            }

            .feature-title{
                font-size:22px;
            }

            .feature-text{
                font-size:15px;
                line-height:1.8;
            }

            .custom-nav button{
                width:50px;
                height:50px;
                font-size:20px;
            }
        }





/* SECTION */
        .industry-section{
            position:relative;
            overflow:hidden;
        }

        .industry-wrapper{
            min-height:100vh;
        }

        /* LEFT SIDE */
        .left-content{
            position:relative;
            background:#111025;
            padding:80px 70px;
            height:100%;
            z-index:2;
            overflow:hidden;
        }

        /* DARK OVERLAY */
        .left-content::before{
            content:'';
            position:absolute;
            inset:0;
            background-image: url(../images/why_bg_1.jpg);
            background-repeat: no-repeat;
            background-position: left center;
            background-size: cover;
            z-index:-1;
        }

        /* CAR OUTLINE BG */
        .left-content::after{
            content:'';
            position:absolute;
            top:80px;
            left:-120px;
            width:650px;
            height:650px;
            background:url('images/car-outline.png') no-repeat center;
            background-size:contain;
            opacity:0.08;
            z-index:-2;
        }

        /* ANGLED SHAPE */
        .left-shape{
            position:absolute;
            top:0;
            right:-90px;
            width:220px;
            height:100%;
            transform:skewX(-10deg);
            z-index:3;
        }

        .section-title{
            font-size:48px;
            line-height:1.15;
            font-weight:800;
            color:#10122d;
            margin-bottom:60px;
        }

        /* GRID */
        .industry-grid{
            display:grid;
            grid-template-columns:repeat(3, 1fr);
            gap:2px;
            position:relative;
            z-index:5;
        }

        /* CARD */
        .industry-card{
            background:rgba(7,6,20,0.6);
            padding:45px 35px;
            min-height:330px;
            transition:0.4s;
            border-radius: 10px;
            border:1px solid rgba(255,255,255,0.04);
        }

        .industry-card:hover{
            transform:translateY(-8px);
            background:#16132d;
        }

        .industry-icon{
            width:80px;
            height:80px;
            border-radius:50%;
            background:var(--primary-color);
            display:flex;
            align-items:center;
            justify-content:center;
            margin-bottom:28px;
            color:#fff;
            font-size:36px;
        }

        .industry-title{
            font-size:24px;
            line-height:1.4;
            font-weight:700;
            color:#fff;
            margin-bottom:20px;
        }

        .industry-text{
            color:rgba(255,255,255,0.85);
            font-size:17px;
            line-height:2;
            margin:0;
        }

        /* RIGHT IMAGE */
        .right-image{
            position:relative;
            height:100%;
            min-height:100vh;
            overflow:hidden;
        }

        .right-image img{
            width:100%;
            height:100%;
        }

        .right-overlay{
            position:absolute;
            inset:0;
            background:linear-gradient(to left, rgba(0,0,0,0.2), rgba(0,0,0,0));
        }

        /* RESPONSIVE */

        @media(max-width:1399px){

            .section-title{
                font-size:58px;
            }
        }

        @media(max-width:1199px){

            .left-content{
                padding:70px 40px;
            }

            .section-title{
                font-size:48px;
            }

            .industry-card{
                padding:35px 25px;
            }

            .industry-title{
                font-size:22px;
            }

            .industry-text{
                font-size:15px;
            }
        }

        @media(max-width:991px){

            .industry-wrapper{
                min-height:auto;
            }

            .right-image{
                min-height:500px;
            }

            .left-shape{
                display:none;
            }

            .industry-grid{
                grid-template-columns:repeat(2,1fr);
            }

            .section-title{
                font-size:42px;
            }
        }

        @media(max-width:767px){

            .left-content{
                padding:60px 20px;
            }

            .industry-grid{
                grid-template-columns:1fr;
            }

            .section-title{
                font-size:34px;
                margin-bottom:40px;
            }

            .industry-card{
                min-height:auto;
                padding:30px 25px;
            }

            .industry-icon{
                width:70px;
                height:70px;
                font-size:30px;
            }

            .industry-title{
                font-size:22px;
            }

            .industry-text{
                line-height:1.8;
            }

            .right-image{
                min-height:350px;
            }
        }


.industry-section .section-title {color: #fff;
text-align: left;}














.info-bar{
    background:#fff;
}

.info-box i{
    color:var(--secondary-color);
    font-size:28px;
    margin-bottom:12px;
}

.info-box h5{
    font-weight:700;
}

.footer-section{
    background:#121325;
    color:#fff;
    padding-top:90px;
}

.footer-section h4,
.footer-section h5{
    font-weight:700;
    margin-bottom:20px;
}

.footer-section p,
.footer-links li{
    color:#d1d1d1;
}

.footer-links{
    list-style:none;
    padding:0;
}

.footer-links li{
    margin-bottom:12px;
}

.footer-links a{
    color:#d1d1d1;
    text-decoration:none;
}

.social-icons a{
    width:40px;
    height:40px;
    background:#232544;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:6px;
    color:#fff;
    margin-right:10px;
    text-decoration:none;
}

.footer-store-btns img{
    height:52px;
}

.copyright{
    margin-top:70px;
    border-top:1px solid rgba(255,255,255,0.08);
    padding:25px;
    color:#aaa;
    font-size:16px;
}

@media(max-width:991px){

    .hero-content{
        text-align:center;
        margin-top:50px;
    }

    .hero-content h1{
        font-size:42px;
    }

    .section-title{
        font-size:36px;
    }

    .process-content{
        padding:60px 20px;
    }

    .industries-left{
        padding:60px 20px;
    }

    .navbar-collapse{
        padding:20px;
        margin-top:15px;
    }

    .navbar-nav{
        margin-bottom:20px;
    }
}

@media(max-width:767px){

    .section-padding{
        padding:50px 0;
    }

    .hero-section{
        padding-top:120px;
    }

    .hero-content h1{
        font-size:34px;
    }

    .section-title{
        font-size:28px;
    }

    .process-card,
    .feature-card{
        padding:25px;
    }

    .experience-box{
        position:relative;
        right:auto;
        bottom:auto;
        margin-top:20px;
    }
}

.footer-section a {color: #fff; text-decoration: none;}

/* ==========================================================================
   ENHANCED GLOBAL PRESENCE CARDS
   ========================================================================== */

.presence-card {
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.05);
    border-radius: 16px;
    padding: 40px 30px;
    text-align: center;
    position: relative;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(109, 0, 181, 0.03);
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.presence-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(13, 16, 34, 0.08);
    border-color: rgba(176, 77, 255, 0.2);
}

/* Elegant Icon Wrapper Styles */
.card-icon-wrapper {
    width: 65px;
    height: 65px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 25px;
    font-size: 26px;
    transition: transform 0.3s ease;
}

.presence-card:hover .card-icon-wrapper {
    transform: scale(1.1) rotate(5deg);
}

/* Location Unique Background Color Accents */
.purple-bg { 
    background: rgba(176, 77, 255, 0.1); 
    color: var(--secondary-color); 
}

.deep-purple-bg { 
    background: rgba(197, 99, 203, 0.1); 
    color: var(--primary-color); 
}

/* Typography styles */
.presence-title {
    font-size: 20px;
    font-weight: 700;
    color: #10122d;
    letter-spacing: 0.5px;
    margin-bottom: 15px;
}

.presence-text {
    font-size: 16px;
    line-height: 1.6;
    color: black;
    margin-bottom: 15px;
}

/* Sleek bottom indicator accent lines */
.card-indicator {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 4px;
    border-radius: 4px 4px 0 0;
    transition: width 0.3s ease;
}

.presence-card:hover .card-indicator {
    width: 100px;
}

.purple-bar { background: var(--secondary-color); }
.deep-purple-bar { background: var(--primary-color); }

/* Responsive adjustments */
@media (max-width: 767px) {
    .presence-card {
        padding: 30px 20px;
    }
}
.about-page-image{
            position:relative;
            z-index:3;
            border-radius:16px;
            overflow:hidden;
        }
/* ==========================================================================
   FLOATING EFFECT
   ========================================================================== */

.float-element {
    animation: floatingEffect 4s ease-in-out infinite;
    will-change: transform; /* Optimizes browser rendering for smooth motion */
}

@keyframes floatingEffect {
    0% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-15px); /* Moves up by 15px at the midway point */
    }
    100% {
        transform: translateY(0px);
    }
}
/* ==========================================================================
   INDUSTRIES WE SERVE SECTION
   ========================================================================== */

.industry-section {
    position: relative;
    background-image: linear-gradient(rgb(11 11 30 / 0%), rgba(11, 11, 30, 0.92)), url(../images/faq_bg_2.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
}

/* Glass Card Container */
.industry-glass-card {
    background: #ffffff;
    border: 2px solid var(--secondary-color);
    border-radius: 24px;
    padding: 45px 25px 35px 25px;
    text-align: center;
    position: relative;
    height: 100%;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    margin-top: 20px; /* Leaves space for overlapping top badge */
}

.industry-glass-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(176, 77, 255, 0.15);
    background: rgba(255, 255, 255, 0.98);
}

/* Top Overlapping Badge */
.card-tag-badge {
    position: absolute;
    top: -24px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--primary-color);
    color: #ffffff;
    width: 65px;
    height: 44px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    box-shadow: 0 8px 16px rgba(176, 77, 255, 0.3);
    transition: all 0.3s ease;
}

.industry-glass-card:hover .card-tag-badge {
    background: var(--secondary-color);
    box-shadow: 0 8px 16px rgba(22, 119, 255, 0.3);
    transform: translateX(-50%) translateY(-4px);
}

/* Dynamic Typography Controlled Internationally */
.industry-card-title {
    font-size: 15px;
    font-weight: 800;
    color: var(--primary-color);
    letter-spacing: 0.5px;
    line-height: 1.4;
    margin-bottom: 20px;
    margin-top: 10px;
    min-height: 42px; /* Keeps text aligned perfectly horizontally */
}

.industry-card-text {
    font-size: 14px;
    line-height: 1.6;
    color: var(--text-muted);
    margin-bottom: 20px;
}

/* Bottom Decorative Accent Capsule Shapes */
.card-bottom-pill {
    position: absolute;
    bottom: -1px;
    left: 50%;
    transform: translateX(-50%);
    width: 70px;
    height: 8px;
    background: var(--secondary-color);
    border-radius: 10px 10px 0 0;
    border: 2px solid var(--secondary-color);
    border-bottom: none;
    transition: all 0.3s ease;
}

.industry-glass-card:hover .card-bottom-pill {
    width: 100px;
    background: var(--tertiary-color);
    border-color: var(--tertiary-color);
}

/* Responsiveness overrides */
@media (max-width: 1199px) {
    .industry-card-title {
        min-height: auto;
    }
}
/* ==========================================================================
   PAGE BANNER / BREADCRUMB SECTION
   ========================================================================== */

.page-banner-section {
    position: relative;
    min-height: 450px;
    padding: 80px 0;
    /* Uses primary color as a high-opacity overlay mask over the banner image */
    background-image: url('../images/about-bg.webp');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
    z-index: 1;
}

/* Ensure content stays above overlays */
.z-index-2 {
    z-index: 2;
}

/* Geometric Overlay Shapes matching image_a20a5f.jpg */
.banner-overlay-shape {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 35%;
    background: rgba(11, 11, 30, 0.4);
    pointer-events: none;
    z-index: 1;
}

.shape-left {
    left: -10%;
    transform: skewX(-25deg);
    border-right: 2px solid rgba(255, 255, 255, 0.05);
}

.shape-right {
    right: -10%;
    transform: skewX(-25deg);
    border-left: 2px solid rgba(255, 255, 255, 0.05);
}

/* Typography & Layout elements */
.banner-title {
    font-size: 48px;
    font-weight: 800;
    letter-spacing: -0.5px;
    margin-bottom: 15px;
    text-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

/* Breadcrumbs utilizing global color system variables */
.banner-breadcrumb-wrapper .breadcrumb {
    background: transparent;
    padding: 0;
}

.banner-breadcrumb-wrapper .breadcrumb-item {
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.3px;
}

/* Inactive Breadcrumb Link (White) */
.banner-breadcrumb-wrapper .breadcrumb-item a {
    color: #ffffff;
    opacity: 0.9;
    transition: color 0.3s ease, opacity 0.3s ease;
}

.banner-breadcrumb-wrapper .breadcrumb-item a:hover {
    color: var(--secondary-color);
    opacity: 1;
}

/* Separator Chevron Icon */
.banner-breadcrumb-wrapper .breadcrumb-item + .breadcrumb-item::before {
    content: "\F285"; /* Bootstrap Icons Chevron Right */
    font-family: "bootstrap-icons";
    color: #ffffff;
    opacity: 0.5;
    font-size: 11px;
    padding-left: 10px;
    padding-right: 10px;
    vertical-align: middle;
}

/* Active Breadcrumb Page (Uses Tertiary Color dynamically) */
.banner-breadcrumb-wrapper .breadcrumb-item.active {
    color: var(--primary-color);
}

/* Responsive adjustments */
@media (max-width: 767px) {
    .page-banner-section {
        min-height: 250px;
        padding: 60px 0;
    }
    
    .banner-title {
        font-size: 36px;
    }
    
    .banner-overlay-shape {
        width: 50%; /* Adjust opacity/width to feel natural on smaller breakpoints */
    }
}
/* ==========================================================================
   WHY CHOOSE US BOXES
   ========================================================================== */
.feature-matrix-box {
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.06);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.03);
    border-radius: 12px;
    padding: 25px 20px;
    text-align: center;
    height: 100%;
    transition: all 0.3s ease;
}

.feature-matrix-box:hover {
    border-color: var(--secondary-color);
    transform: translateY(-4px);
    box-shadow: 0 15px 30px rgba(176, 77, 255, 0.08);
}

.feature-matrix-box .feature-icon {
    font-size: 50px;
    color: var(--secondary-color);
}

.feature-matrix-box h5 {
    font-size: 15px;
    font-weight: 700;
    color: var(--primary-color);
    line-height: 1.5;
    margin-bottom: 0;
}
.why-choose-title{
    text-align: left;
}

/* ==========================================================================
   VISION & PORTFOLIO PROMO CTA
   ========================================================================== */
.max-width-para {
    max-width: 950px;
    line-height: 1.7;
}

/* Halftone Matrix Background Styling using your primary color overlay theme */


.promo-banner-bg {
    /* background-image: url(../images/dots-bg.webp);  */
    background-repeat: repeat;
    background-size: contain;
    background-position: center;
}

.font-weight-extrabold {
    font-weight: 800;
    color: var(--primary-color) !important;
    font-size: 42px;
}

.portfolio-tag {
    color: var(--primary-color) !important;
    font-weight: 700;
    font-size: 14px;
}

/* Primary Utility Interactive Button using Secondary Accent Setup */
.portfolio-action-btn {
    display: inline-flex;
    align-items: center;
    background: var(--secondary-color);
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    padding: 12px 28px;
    border-radius: 6px;
    text-decoration: none;
    letter-spacing: 0.5px;
    box-shadow: 0 4px 15px rgba(176, 77, 255, 0.3);
    transition: all 0.3s ease;
}

.portfolio-action-btn:hover {
    background: var(--primary-color);
    color: #ffffff;
    box-shadow: 0 4px 15px rgba(11, 11, 30, 0.2);
    transform: translateY(-2px);
}

.car-isometric-illustration img {
    max-width: 300px;
}



/* Header & Switch Filters */
header {
    margin-bottom: 32px;
}

.filters {
    display: inline-flex;
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    padding: 6px;
    border-radius: 999px;
    box-shadow: 0 4px 12px rgba(15, 18, 33, 0.04);
}

.tab {
    border: 0;
    background: transparent;
    padding: 12px 24px;
    border-radius: 999px;
    color: var(--text-muted);
    font-family: var(--body-font);
    font-weight: 600;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.tab[aria-selected="true"] {
    background: var(--secondary-color);
    color: #fff;
    box-shadow: 0 4px 14px rgba(176, 77, 255, 0.4);
}

/* Portfolio Responsive Grid */
.grid {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 24px;
}

@media (min-width: 768px) {
    .grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 1024px) {
    .grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* Enhanced Case Study Cards */
.card {
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    border-radius: 20px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
    box-shadow: 0 4px 20px rgba(15, 18, 33, 0.02);
}

.card:hover {
    transform: translateY(-5px);
    border-color: rgba(176, 77, 255, 0.3);
    box-shadow: 0 12px 30px rgba(15, 18, 33, 0.08);
}

.logo-row {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    text-align: center;
}

.logo {
    width: 100%;
    max-width: 180px;
    height: 90px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
}

.logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.card:hover .logo {
    transform: scale(1.03);
}

.title-container {
    margin-top: 8px;
}

.title {
    font-family: var(--title-font);
    font-size: 20px;
    font-weight: 800;
    color: var(--primary-color);
    margin: 0 0 8px 0;
    line-height: 1.3;
}

.subtitle {
    color: var(--text-muted);
    font-size: 13.5px;
    line-height: 1.5;
    margin: 0;
}

/* Structural Badges & Metrics */
.badge {
    display: inline-block;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--secondary-color);
    background: rgba(176, 77, 255, 0.08);
    border: 1px solid rgba(176, 77, 255, 0.15);
    padding: 4px 12px;
    border-radius: 6px;
}

.kpis {
    display: flex;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
    margin: 16px 0;
    padding-top: 12px;
    border-top: 1px dashed var(--border-color);
}

.pill {
    font-weight: 600;
    font-size: 12px;
    color: var(--primary-color);
    background: var(--bg-light);
    border: 1px solid var(--border-color);
    padding: 6px 12px;
    border-radius: 8px;
}

/* Feature Meta Lists */
.meta {
    margin: 8px 0 20px;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.meta li {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    font-size: 13px;
    line-height: 1.5;
    color: var(--text-main);
    text-align: left;
}

.icon {
    width: 22px;
    height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: rgba(11, 11, 30, 0.04);
    color: var(--primary-color);
    font-size: 12px;
    flex: none;
}

/* Call to Action Button styling */
.cta {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 16px;
    border-radius: 12px;
    background: var(--primary-color);
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    border: 1px solid var(--primary-color);
    transition: all 0.3s ease;
    margin-top: auto;
}

.cta:hover {
    background-color: var(--secondary-color);
    border-color: var(--secondary-color);
    box-shadow: 0 4px 12px rgba(176, 77, 255, 0.3);
}
/* Ensures that any element with the hidden attribute is completely hidden */
[hidden] {
    display: none !important;
}

/* Precise Video Height Sizing Configuration */
.feature-hero-video {
    min-height: 380px;
    max-height: 520px;
    object-fit: cover;
}

@media (max-width: 768px) {
    .feature-hero-video {
        min-height: 220px;
    }
}

/* Exact Card Layout Match */
.feature-exact-card {
    background: #ffffff;
    border: 1px solid #dcdcdc;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.05);
}

/* Exact Header Color Code Match */
.feature-exact-header {
    background-color: #a45394;
    padding: 12px 16px;
    text-align: center;
}

.feature-exact-header h4 {
    color: #ffffff;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.2px;
}

.feature-exact-body {
    padding: 20px 18px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* Row-by-Row Layout Match */
.feature-exact-row {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

/* Pixel-perfect custom inline circle-arrow icon */
.feature-exact-row .arrow-bullet {
    width: 18px;
    height: 18px;
    background-color: #a45394;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 3px;
    position: relative;
}

/* CSS-based Right Chevron Arrow Pointer Inside Bullet */
.feature-exact-row .arrow-bullet::after {
    content: "";
    width: 5px;
    height: 5px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    transform: rotate(45deg);
    position: absolute;
    left: 5px;
    top: 6px;
}

.feature-exact-row p {
    margin: 0;
    font-size: 14.5px;
    color: #000000;
    line-height: 28px;
    font-weight: 400;
}

/* Color Scheme Palette Variables */
.download-title{
    color:black;
}
.text-purple {
    color: #a45394 !important;
}
.bg-purple {
    background-color: #a45394 !important;
}
.btn-blue {
    background-color: var(--primary-color);
    border: 1px solid var(--primary-color);
    border-radius: 6px;
    font-size: 13px;
    letter-spacing: 0.3px;
}
.btn-blue:hover {
    background-color: var(--secondary-color);
    border-color: var(--secondary-color);
}

/* Distributor Callout Customizations */
.distributor-banner {
    border-color: #eaeaea !important;
}
.distributor-banner h4 {
    font-size: 20px;
}

/* Office Sidebar Detail Cards */
.office-card {
    border-color: #eaeaea !important;
    transition: transform 0.2s ease;
}
.office-card:hover {
    transform: translateY(-1px);
}
.office-card-title {
    font-size: 18px;
    letter-spacing: -0.2px;
}
.office-details p {
    line-height: 1.5;
}
.office-contact-links li a {
    color: #4a5568;
    font-weight: 500;
}
.office-contact-links li a:hover {
    color: var(--secondary-color);
}

/* Web Intake Form Elements */
.contact-form-wrap {
    border-color: #eaeaea !important;
}
.fw-black {
    font-weight: 900;
}
.form-input-field {
    border: 1px solid #ced4da;
    border-radius: 6px;
    padding: 10px 12px;
    font-size: 14px;
    color: #212529;
    background-color: #ffffff;
}
.form-input-field:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 0.25rem rgba(164, 83, 148, 0.15);
}
.btn-purple-submit {
    background-color: var(--primary-color);
    border: 1px solid var(--primary-color);
    border-radius: 6px;
    font-size: 14px;
    min-width: 110px;
    transition: background-color 0.2s ease;
}
.btn-purple-submit:hover {
    background-color: var(--secondary-color);
    border-color: var(--secondary-color);
}

/* Tracking tweaks matching image layout rules */
.tracking-wider {
    letter-spacing: 1px;
}
.tracking-tight {
    letter-spacing: -0.3px;
}
/* Core Color Utilities */
.text-blue {
    color: #55b6df !important; /* Sky Blue header variant from screenshot */
}
.text-purple {
    color: var(--primary-color) !important;
}

/* Download Action Button Styling */
.btn-download-purple {
    background-color: #EAD3EE;
    color: var(--primary-color);
    border: 1px solid rgba(164, 83, 148, 0.15);
    font-weight: 600;
    font-size: 13.5px;
    padding: 8px 18px;
    border-radius: 6px;
    transition: all 0.2s ease;
}
.btn-download-purple:hover {
    background-color: var(--secondary-color);
    color: #ffffff;
}

/* Notice Container Custom Layouts */
.alert-purple-box {
    background-color: #EAD3EE;
    color: #4a1a41;
    border-left: 4px solid var(--primary-color);
    line-height: 1.5;
}
.alert-amber-box {
    background-color: #fef1db;
    color: #664d03;
    border-left: 4px solid #ffc107;
    line-height: 1.5;
}

/* Quick Info Label Tweak */
.small-label {
    font-size: 12px;
    font-weight: 500;
    margin-bottom: 2px;
}
.badge-live-status {
    top: 16px;
    right: 16px;
    background-color: #EAD3EE;
    color: var(--primary-color);
    font-size: 11px;
    font-weight: 700;
    padding: 2px 10px;
    border-radius: 6px;
    text-uppercase: uppercase;
}

/* Search Box Custom Shape */
.search-input {
    border-radius: 20px;
    padding-left: 16px;
    border: 1px solid #ced4da;
    max-width: 240px;
    font-size: 13px;
}

/* Production-Ready Version History Table Styling */
.table-custom-history thead {
    background-color: #EAD3EE;
}
.table-custom-history th {
    color: #4a1a41;
    font-weight: 700;
    font-size: 14px;
    padding: 12px 16px;
    border-bottom: 2px solid rgba(0, 0, 0, 0.05);
}
.table-custom-history td {
    padding: 14px 16px;
    font-size: 13.5px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

/* Version Control Table Status Badges */
.badge-release {
    background-color: #d1e7dd;
    color: #0f5132;
    font-size: 11px;
    padding: 3px 8px;
    border-radius: 12px;
    margin-left: 6px;
    font-weight: 600;
}
.badge-hotfix {
    background-color: #f8d7da;
    color: #842029;
    font-size: 11px;
    padding: 3px 8px;
    border-radius: 12px;
    margin-left: 6px;
    font-weight: 600;
}

/* Left Aligned Custom Arrow Instructions rows */
.instruction-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}
.arrow-bullet-purple {
    width: 18px;
    height: 18px;
    background-color: var(--primary-color);
    border-radius: 50%;
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 2px;
    font-size: 10px;
}

/* Dropdown FAQ Accordion Structural Modifiers */
.custom-faq-accordion .accordion-item {
    border: 1px solid rgba(0,0,0,.08) !important;
}
.custom-faq-accordion .accordion-button {
    background-color: #EAD3EE !important;
    color: #4a1a41 !important;
    font-weight: 700;
    font-size: 15px;
    padding: 14px 20px;
    display: flex;
    align-items: center;
    gap: 12px;
}
.custom-faq-accordion .accordion-button::after {
    display: none; /* Discard basic arrow spinner indicator */
}
.faq-icon-wrapper {
    width: 24px;
    height: 24px;
    background-color: var(--primary-color);
    color: #ffffff;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    transition: transform 0.2s ease;
}
/* Rotate target custom inline block sub-indicator icon smoothly */
.custom-faq-accordion .accordion-button:not(.collapsed) .faq-icon-wrapper {
    transform: rotate(90deg);
}
.custom-faq-accordion .accordion-body {
    line-height: 1.6;
    padding: 18px 20px;
    border-top: 1px solid rgba(0,0,0,.05);
}
.top-notice-bar {
    background-color: #EAD3EE; /* Matches signature page theme purple tint */
    border-bottom: 1px solid rgba(164, 83, 148, 0.1);
}

.notice-text {
    font-size: 14px;
    letter-spacing: -0.1px;
}

.notice-icon-box {
    background-color: #008a00; /* Rich solid forest green square box from image */
    width: 18px;
    height: 18px;
    border-radius: 3px;
    font-size: 12px;
}
/* Ensure the hero section wrapper establishes proper contrast basics */
.page-banner-section {
    position: relative;
    /* Basic text drop shadow helps text stand out cleanly against complex image backgrounds */
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); 
}

/* Base structural overrides for the breadcrumb wrapper list */
.banner-breadcrumb-wrapper .breadcrumb {
    background: transparent;
    padding: 0;
    font-size: 14px;
    letter-spacing: 0.5px;
}

/* Style the 'Home' link or any interactive parent links */
.banner-breadcrumb-wrapper .breadcrumb-item a {
    color: rgba(255, 255, 255, 0.85); /* Clean off-white */
    text-decoration: none;
    font-weight: 500;
    transition: color 0.2s ease;
}

/* Hover state for interactive parent links */
.banner-breadcrumb-wrapper .breadcrumb-item a:hover {
    color: #55b6df; /* High visibility accent color matching your platform style */
}

/* Style the current active page indicator text ('Downloads') */
.banner-breadcrumb-wrapper .breadcrumb-item.active {
    color: #ffffff !important; /* Forces solid crisp white */
    font-weight: 600;
}

/* Style the Bootstrap automatic dividing slash item character between items */
.banner-breadcrumb-wrapper .breadcrumb-item + .breadcrumb-item::before {
    color: rgba(255, 255, 255, 0.5) !important; /* Muted white slash */
    font-weight: normal;
}
/* Color Scheme Palette Variables */
.text-purple {
    color: #a45394 !important;
}
.fw-black {
    font-weight: 900 !important;
}
.tracking-wider {
    letter-spacing: 1px;
}

/* Accordion Component Overrides */
.custom-faq-wrapper .accordion-item {
    border: 1px solid rgba(164, 83, 148, 0.1) !important;
    background-color: transparent;
}

/* Header Trigger Button */
.custom-faq-wrapper .accordion-button {
    background-color: #b363a3 !important; /* Rich primary theme purple tint matching image header */
    color: #ffffff !important;
    font-weight: 600;
    font-size: 16px;
    padding: 18px 24px;
    box-shadow: none !important;
    transition: background-color 0.2s ease-in-out;
    border: none;
}

/* Dim header button slightly if collapsed to differentiate statuses */
.custom-faq-wrapper .accordion-button.collapsed {
    background-color: #a45394 !important; /* Base layout brand purple */
}

/* Hover Accent Adjustment */
.custom-faq-wrapper .accordion-button:hover {
    background-color: #934683 !important;
}

/* Custom Dropdown Chevron Icon Mechanics */
.custom-faq-wrapper .accordion-button::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") !important;
    background-size: 1.15rem;
    transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

/* Body Content Containment */
.custom-faq-wrapper .accordion-body {
    font-size: 14.5px;
    line-height: 1.7;
    padding: 22px 24px;
    color: #555c66 !important;
    border-top: 1px solid rgba(0, 0, 0, 0.04);
}

/* Smooth layout drop responsiveness tweaks */
@media (max-width: 768px) {
    .custom-faq-wrapper .accordion-button {
        font-size: 14.5px;
        padding: 14px 18px;
    }
    .custom-faq-wrapper .accordion-body {
        font-size: 13.5px;
        padding: 16px 18px;
    }
}
/* ==========================================================================
   Modular Stylesheet Add-on for Terms & Conditions Inner Layout
   ========================================================================== */

/* Typography & General Contrast Rules */
.terms-preamble-section,
.terms-data-block {
    font-family: 'Poppins', sans-serif;
    line-height: 1.75;
}

/* Force pure black color layout rules for absolute legibility */
.legal-text,
.list-content-text {
    color: #000000 !important; /* Replaces gray with crisp pure black */
    font-size: 15px;
    font-weight: 400;
}

/* Specific Document Purple Headings Styling */
.terms-purple-heading {
    font-family: 'Raleway', sans-serif;
    color: #9d4fba !important; /* Signature theme purple color token */
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    margin-top: 2rem;
    margin-bottom: 1.1rem;
    border-bottom: 1px solid rgba(157, 79, 186, 0.08);
    padding-bottom: 6px;
}

/* Custom Bullet Point Arrays Mechanics */
.terms-arrow-list {
    list-style: none;
}

.purple-bullet-arrow {
    color: #9d4fba !important; /* Purple icon color override from design image */
    font-size: 12px;
    margin-top: 4px;
    width: 22px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}



/* Responsive Scaling Rules Overrides */
@media (max-width: 768px) {
    .terms-purple-heading {
        font-size: 16px;
    }
    .legal-text, 
    .list-content-text {
        font-size: 14px;
    }
}
/* ==========================================================================
   Modular Stylesheet Add-on for Privacy Policy Inner Content Layout
   ========================================================================== */

/* Typography Configurations */
.policy-preamble-section,
.policy-data-collection,
.policy-numbered-clauses,
.policy-miscellaneous-framework {
    font-family: 'Poppins', sans-serif;
    line-height: 1.8;
}

/* Base Copy - Pure Black Enforced Text Layer */
.policy-text {
    color: #000000 !important; /* Overrides default bootstrap greys completely */
    font-size: 15px;
    font-weight: 400;
    margin-bottom: 1.25rem;
}

/* Callout Formatting Blocks */
.policy-intro-card {
    background-color: #fcf9fc;
    border: 1px solid rgba(157, 79, 186, 0.12);
}

.border-purple {
    border-color: #9d4fba !important;
}

/* Hyperlinks Integration */
.policy-purple-link {
    color: #9d4fba;
    text-decoration: none;
    font-weight: 500;
}
.policy-purple-link:hover {
    text-decoration: underline;
}

/* Main Section Heading Components (Numbered Clauses) */
.policy-purple-heading {
    font-family: 'Raleway', sans-serif;
    color: #9d4fba !important; /* Exact purple tone value assigned */
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.3px;
    margin-top: 2rem;
    margin-bottom: 1rem;
    text-transform: uppercase;
}

.clause-num {
    font-weight: 800;
    margin-right: 4px;
}

/* Miscellaneous Standard Bottom Labels (MINORS, CORRECTIONS, etc) */
.policy-purple-subheading {
    font-family: 'Raleway', sans-serif;
    color: #9d4fba !important;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    margin-top: 1.8rem;
    margin-bottom: 0.5rem;
}

/* Clean Separator Lines for Layout Blocks */
.clause-block, .misc-block {
    border-bottom: 1px solid rgba(0, 0, 0, 0.03);
    padding-bottom: 1rem;
}

/* Responsive Viewport Tweak Rules */
@media (max-width: 768px) {
    .policy-purple-heading {
        font-size: 16px;
    }
    .policy-purple-subheading {
        font-size: 14px;
    }
    .policy-text {
        font-size: 14px;
    }
}
/* ==========================================================================
   Modular Stylesheet for Cancellation, Refund & Fees Layout Framework
   ========================================================================== */

/* Universal Module Configurations */
.policy-fees-charges,
.policy-payment-method,
.policy-cancellation-refunds,
.policy-notice-periods,
.policy-data-security {
    font-family: 'Poppins', sans-serif;
    line-height: 1.8;
}

/* Base Copy - High Contrast Pure Black Layer */
.policy-text, 
.policy-ordered-list li {
    color: #000000 !important;
    font-size: 15px;
    font-weight: 400;
    margin-bottom: 1.15rem;
}

/* Component Level Ordered List Counters Tweak */
.policy-ordered-list {
    list-style-type: decimal;
}
.policy-ordered-list li::marker {
    font-weight: 700;
    color: #000000;
}

/* Master Section Headings - Set to brand purple */
.policy-purple-main-heading {
    font-family: 'Raleway', sans-serif;
    color: #9d4fba !important;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.5px;
    margin-top: 2.5rem;
    margin-bottom: 1.25rem;
    text-transform: uppercase;
}

/* Highlight Components & Callout Cards */
.policy-callout-box {
    background-color: #fcf9fc;
}
.border-purple {
    border-color: #9d4fba !important;
}

/* Internal Inline Links Styling */
.policy-purple-link {
    color: #9d4fba;
    text-decoration: none;
    font-weight: 500;
}
.policy-purple-link:hover {
    text-decoration: underline;
}

/* Layout Responsiveness Adaptations */
@media (max-width: 768px) {
    .policy-purple-main-heading {
        font-size: 18px;
        margin-top: 2rem;
    }
    .policy-text, 
    .policy-ordered-list li {
        font-size: 14px;
        line-height: 1.7;
    }
}
/* ==========================================================================
   CSS Framework Custom Additions for Join Distributor Page
   ========================================================================== */

/* Core Branding Colors Assignment */
:root {
    --vp-text-black: #000000;
    --vp-card-border: rgba(157, 79, 186, 0.15);
}

.text-purple { color: var(--primary-color) !important; }

/* Fake Custom Decors mimicking Title_shape_1.png */
.section-badge-title {
    font-family: 'Raleway', sans-serif;
    font-size: 24px;
    font-weight: 700;
    color: #1a1a1a;
    position: relative;
    display: inline-block;
    padding-top: 15px;
}
.section-badge-title::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 4px;
    background-color: var(--primary-color);
    border-radius: 2px;
}

/* Section 1: Standard Thin Margin Outlined Cards */
.feature-card-item {
    background: #ffffff;
    border: 1px solid var(--vp-card-border) !important;
    border-top: 4px solid var(--primary-color) !important;
    border-radius: 8px !important;
    transition: transform 0.25s ease;
}
.feature-card-item:hover {
    transform: translateY(-4px);
}
.feature-card-title {
    font-size: 15px;
    margin-bottom: 8px;
}
.feature-card-text {
    line-height: 1.6;
}

/* Section 2: Purple Sandwich Rounded Frame Block Styles */
.benefit-sandwich-card {
    background-color: var(--primary-color);
    padding: 8px 0; /* Creates colored bar border appearance at top and bottom margins */
    border-radius: 12px;
}
.benefit-inner {
    border-left: 1px solid var(--primary-color);
    border-right: 1px solid var(--primary-color);
    min-height: 90px;
}
.benefit-inner p {
    font-size: 13px;
    letter-spacing: 0.3px;
    line-height: 1.5;
}

/* Section 3: Hanging Tab Process Cards */
.process-hanging-card {
    position: relative;
    padding-top: 20px;
}
.process-header-badge {
    background-color: var(--primary-color);
    color: #ffffff;
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    padding: 8px 16px;
    border-radius: 10px 10px 0 0;
    width: 80%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}
.process-body {
    border-radius: 0 0 12px 12px !important;
    border-color: rgba(0, 0, 0, 0.08) !important;
    position: relative;
    top: -4px;
    z-index: 1;
    min-height: 110px;
}

/* Section 4: Split Checks Frame Row Layout */
.terms-check-item {
    border-color: rgba(0,0,0,0.06) !important;
    border-left: 4px solid var(--secondary-color) !important; /* Visual blue accent marker alignment */
}

/* Section 5: Dynamic Application Form Element Customizations */
.partner-intake-form {
    border-color: rgba(0,0,0,0.06) !important;
}
.partner-intake-form .form-control,
.partner-intake-form .form-select {
    border: 1px solid #ced4da;
    border-radius: 6px;
    background-color: #fafafa;
}
.partner-intake-form .form-control:focus,
.partner-intake-form .form-select:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 0.25rem rgba(157, 79, 186, 0.15);
    background-color: #ffffff;
}
.btn-purple-submit {
    background-color: var(--primary-color);
    border-radius: 6px;
    font-size: 15px;
    letter-spacing: 0.5px;
    transition: background-color 0.2s ease;
}
.btn-purple-submit:hover {
    background-color: var(--secondary-color);
    cursor: pointer;
}
.text-icon{
  color: var(--primary-color)
}
.custom-navbar {
    position: sticky;
    top: 0;
    width: 100%;
    
    /* Crucial layer level: ensures dropdowns, sliders, and page text 
       pass cleanly underneath the header without clipping */
    z-index: 1030; 
    
    /* Optional sleek bottom profile border/shadow to separate the 
       header elegantly from page contents during scrolling */
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    
    /* Hardware acceleration smooth transition logic for scroll effects */
    transition: all 0.3s ease-in-out;
}
/* Ensure mobile-collapse panel stays clean when expanded on sticky viewports */
@media (max-width: 991.98px) {
    .custom-navbar {
        /* Prevents clipping over long mobile menus */
        max-height: 100vh;
        overflow-y: auto;
    }
    
    .mobile-collapse {
        background-color: #ffffff;
        padding: 1rem 0;
    }
}
