/*=========================================
SOLUTIONS PAGE
=========================================*/

:root{

    --primary:#0B6E3E;
    --primary-dark:#084F2D;
    --secondary:#123B63;
    --gold:#D9B54A;
    --light:#F7FAF8;
    --white:#ffffff;
    --text:#1F2937;
    --muted:#6B7280;
    --border:#E5E7EB;

    --shadow-sm:0 10px 30px rgba(0,0,0,.08);
    --shadow-md:0 20px 45px rgba(0,0,0,.12);
    --shadow-lg:0 30px 70px rgba(0,0,0,.18);

    --radius:20px;

}


/*=========================================
GENERAL
=========================================*/

.solutions-page{

    background:#ffffff;
    color:var(--text);
    overflow-x:hidden;

}

.solutions-page section{

    padding:110px 0;
    position:relative;

}

.section-tag{

    display:inline-flex;
    align-items:center;
    gap:10px;

    padding:10px 22px;

    background:rgba(11,110,62,.08);

    color:var(--primary);

    border-radius:50px;

    font-size:.82rem;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

    margin-bottom:20px;

}

.section-tag::before{

    content:"";

    width:8px;
    height:8px;

    border-radius:50%;

    background:var(--gold);

}

.section-heading{

    text-align:center;
    max-width:760px;
    margin:0 auto 70px;

}

.section-heading h2{

    font-size:3rem;

    line-height:1.2;

    color:#112B45;

    margin-bottom:20px;

}

.section-heading p{

    font-size:1.1rem;

    color:var(--muted);

    line-height:1.9;

}


/*=========================================
HERO
=========================================*/

.solutions-hero{

    background:
    linear-gradient(135deg,#06233C 0%,#0B6E3E 100%);

    color:#fff;

    padding:170px 0 120px;

    overflow:hidden;

}

.solutions-hero::before{

    content:"";

    position:absolute;

    inset:0;

    background:
    radial-gradient(circle at top right,
    rgba(255,255,255,.10),
    transparent 45%);

}

.solutions-hero-grid{

    display:grid;

    grid-template-columns:1.1fr .9fr;

    align-items:center;

    gap:70px;

    position:relative;

    z-index:2;

}

.hero-left h1{

    font-size:4.4rem;

    line-height:1.05;

    font-weight:800;

    margin-bottom:30px;

}

.hero-left p{

    font-size:1.15rem;

    line-height:1.9;

    max-width:620px;

    color:rgba(255,255,255,.88);

    margin-bottom:40px;

}

.hero-right{

    position:relative;

}

.hero-right img{

    width:100%;

    border-radius:26px;

    display:block;

    box-shadow:var(--shadow-lg);

    border:6px solid rgba(255,255,255,.12);

}

.hero-right::after{

    content:"";

    position:absolute;

    width:220px;
    height:220px;

    right:-60px;
    bottom:-60px;

    background:rgba(217,181,74,.22);

    filter:blur(70px);

    border-radius:50%;

    z-index:-1;

}


/*=========================================
BUTTONS
=========================================*/

.hero-actions{

    display:flex;

    gap:18px;

    flex-wrap:wrap;

}

.btn-primary{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:16px 36px;

    border-radius:50px;

    background:var(--gold);

    color:#132C44;

    font-weight:700;

    text-decoration:none;

    transition:.35s;

    box-shadow:0 12px 35px rgba(217,181,74,.35);

}

.btn-primary:hover{

    transform:translateY(-4px);

    box-shadow:0 18px 45px rgba(217,181,74,.45);

}

.btn-secondary{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:16px 36px;

    border:2px solid rgba(255,255,255,.35);

    color:#fff;

    border-radius:50px;

    text-decoration:none;

    font-weight:600;

    transition:.35s;

}

.btn-secondary:hover{

    background:#fff;

    color:#123B63;

}


/*=========================================
MISSION INTRO
=========================================*/

.mission-showcase{

    background:#fff;

}

.mission-header{

    max-width:900px;

    margin:auto;

    text-align:center;

}

.mission-header h2{

    font-size:3rem;

    color:#112B45;

    margin-bottom:24px;

}

.mission-header p{

    font-size:1.15rem;

    line-height:2;

    color:var(--muted);

}
/*=========================================
SOLUTION BLOCKS
=========================================*/

.solution-block{

    background:#fff;

}

.solution-block.dark{

    background:linear-gradient(180deg,#F8FBFC,#EEF5F2);

}

.solution-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:80px;

    align-items:center;

}

.solution-grid.reverse .solution-image{

    order:2;

}

.solution-grid.reverse .solution-content{

    order:1;

}


/*=========================================
IMAGES
=========================================*/

.solution-image{

    position:relative;

}

.solution-image img{

    width:100%;

    display:block;

    border-radius:24px;

    overflow:hidden;

    box-shadow:var(--shadow-md);

    transition:.45s ease;

    border:8px solid #fff;

}

.solution-image::before{

    content:"";

    position:absolute;

    inset:-15px;

    border:2px solid rgba(11,110,62,.12);

    border-radius:30px;

    z-index:-1;

    transition:.35s;

}

.solution-image::after{

    content:"";

    position:absolute;

    width:180px;
    height:180px;

    background:rgba(217,181,74,.20);

    border-radius:50%;

    filter:blur(70px);

    bottom:-40px;
    right:-40px;

    z-index:-2;

}

.solution-block:hover .solution-image img{

    transform:translateY(-8px) scale(1.02);

    box-shadow:var(--shadow-lg);

}

.solution-block:hover .solution-image::before{

    border-color:rgba(11,110,62,.35);

}


/*=========================================
CONTENT
=========================================*/

.solution-content h2{

    font-size:2.6rem;

    line-height:1.2;

    color:#112B45;

    margin-bottom:25px;

}

.solution-content p{

    color:var(--muted);

    font-size:1.06rem;

    line-height:1.9;

    margin-bottom:22px;

}


/*=========================================
FEATURE LIST
=========================================*/

.solution-list{

    list-style:none;

    margin-top:35px;

    display:grid;

    gap:16px;

    padding:0;

}

.solution-list li{

    display:flex;

    align-items:center;

    gap:15px;

    background:#fff;

    padding:16px 20px;

    border-radius:14px;

    border:1px solid var(--border);

    transition:.30s;

    font-weight:500;

    box-shadow:0 8px 18px rgba(0,0,0,.04);

}

.solution-list li i{

    color:var(--primary);

    font-size:1.1rem;

}

.solution-list li:hover{

    transform:translateX(8px);

    border-color:var(--primary);

    box-shadow:0 12px 28px rgba(11,110,62,.12);

}


/*=========================================
SECTION SEPARATORS
=========================================*/

.solution-block::before{

    content:"";

    position:absolute;

    top:0;

    left:50%;

    transform:translateX(-50%);

    width:90px;

    height:4px;

    border-radius:20px;

    background:linear-gradient(90deg,
        transparent,
        var(--gold),
        transparent);

}


/*=========================================
SMALL DECORATIONS
=========================================*/

.solution-content{

    position:relative;

}

.solution-content::after{

    content:"";

    position:absolute;

    width:14px;

    height:14px;

    border-radius:50%;

    background:var(--gold);

    top:-18px;

    right:0;

    opacity:.7;

}


/*=========================================
HOVER ANIMATION
=========================================*/

.solution-block{

    transition:.35s ease;

}

.solution-block:hover{

    background:#FCFDFD;

}
/*=========================================
PROCESS SECTION
=========================================*/

.process-section{

    background:linear-gradient(180deg,#F8FBFC,#FFFFFF);

}

.process-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

    margin-top:70px;

}

.process-card{

    background:#fff;

    padding:45px 30px;

    border-radius:22px;

    text-align:center;

    box-shadow:var(--shadow-sm);

    transition:.35s ease;

    border:1px solid var(--border);

    position:relative;

    overflow:hidden;

}

.process-card::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:5px;

    background:linear-gradient(90deg,
        var(--primary),
        var(--gold));

}

.process-number{

    width:70px;

    height:70px;

    margin:0 auto 25px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:linear-gradient(135deg,
        var(--primary),
        var(--secondary));

    color:#fff;

    font-size:1.4rem;

    font-weight:700;

}

.process-card h3{

    margin-bottom:18px;

    color:#112B45;

}

.process-card p{

    color:var(--muted);

    line-height:1.8;

}

.process-card:hover{

    transform:translateY(-12px);

    box-shadow:var(--shadow-lg);

}



/*=========================================
INDUSTRIES
=========================================*/

.industries-section{

    background:#fff;

}

.industries-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

    margin-top:70px;

}

.industry-card{

    background:#fff;

    padding:45px 30px;

    text-align:center;

    border-radius:22px;

    box-shadow:var(--shadow-sm);

    transition:.35s;

    border:1px solid var(--border);

}

.industry-card i{

    width:90px;

    height:90px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    margin:0 auto 25px;

    font-size:2rem;

    color:var(--primary);

    background:rgba(11,110,62,.08);

}

.industry-card h3{

    margin-bottom:18px;

    color:#112B45;

}

.industry-card p{

    color:var(--muted);

    line-height:1.8;

}

.industry-card:hover{

    transform:translateY(-12px);

    box-shadow:var(--shadow-lg);

    border-color:var(--primary);

}

.industry-card:hover i{

    background:var(--primary);

    color:#fff;

}



/*=========================================
TECHNOLOGY SECTION
=========================================*/

.technology-section{

    background:linear-gradient(135deg,
        #06233C,
        #0B6E3E);

    color:#fff;

}

.technology-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:70px;

    align-items:center;

}

.technology-grid h2{

    font-size:3rem;

    margin:20px 0;

    line-height:1.2;

}

.technology-grid p{

    color:rgba(255,255,255,.88);

    line-height:2;

    font-size:1.08rem;

}

.advantage-list{

    display:grid;

    gap:18px;

}

.advantage-item{

    display:flex;

    align-items:center;

    gap:18px;

    padding:18px 24px;

    border-radius:16px;

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(10px);

    transition:.35s;

    font-weight:600;

}

.advantage-item i{

    color:var(--gold);

    font-size:1.2rem;

}

.advantage-item:hover{

    transform:translateX(10px);

    background:rgba(255,255,255,.14);

}
/*=========================================
CALL TO ACTION
=========================================*/

.solutions-cta{

    background:linear-gradient(135deg,#0B6E3E,#06233C);

    color:#fff;

    text-align:center;

    position:relative;

    overflow:hidden;

}

.solutions-cta::before{

    content:"";

    position:absolute;

    width:450px;
    height:450px;

    background:rgba(217,181,74,.12);

    border-radius:50%;

    top:-180px;
    right:-120px;

    filter:blur(80px);

}

.solutions-cta::after{

    content:"";

    position:absolute;

    width:350px;
    height:350px;

    background:rgba(255,255,255,.05);

    border-radius:50%;

    bottom:-150px;
    left:-100px;

    filter:blur(70px);

}

.solutions-cta .container{

    position:relative;

    z-index:2;

}

.solutions-cta h2{

    font-size:3rem;

    margin-bottom:25px;

    color:#fff;

}

.solutions-cta p{

    max-width:700px;

    margin:0 auto 45px;

    line-height:2;

    color:rgba(255,255,255,.88);

    font-size:1.1rem;

}

.solutions-cta .btn-primary{

    font-size:1rem;

    padding:18px 42px;

}



/*=========================================
GLOBAL HOVER EFFECTS
=========================================*/

.solution-image img,
.process-card,
.industry-card,
.advantage-item,
.btn-primary,
.btn-secondary{

    transition:all .35s ease;

}

.solution-image{

    overflow:hidden;

    border-radius:24px;

}

.solution-image:hover img{

    transform:scale(1.06);

}



/*=========================================
SECTION ANIMATIONS
=========================================*/

.solution-block,
.process-card,
.industry-card,
.technology-section,
.solutions-cta{

    animation:fadeUp .8s ease both;

}

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(40px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}



/*=========================================
CUSTOM SCROLLBAR
=========================================*/

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#EEF2F3;

}

::-webkit-scrollbar-thumb{

    background:var(--primary);

    border-radius:30px;

}

::-webkit-scrollbar-thumb:hover{

    background:var(--primary-dark);

}



/*=========================================
DECORATIVE BACKGROUND PATTERN
=========================================*/

.process-section::before,
.industries-section::before{

    content:"";

    position:absolute;

    inset:0;

    background-image:

    radial-gradient(circle at 20% 20%,
    rgba(11,110,62,.04) 2px,
    transparent 2px);

    background-size:40px 40px;

    pointer-events:none;

}



/*=========================================
IMAGE SHADOW IMPROVEMENTS
=========================================*/

.hero-right img,
.solution-image img{

    box-shadow:

    0 25px 60px rgba(0,0,0,.18),

    0 8px 20px rgba(0,0,0,.08);

}



/*=========================================
TEXT SELECTION
=========================================*/

::selection{

    background:var(--gold);

    color:#06233C;

}



/*=========================================
SMOOTH SCROLLING
=========================================*/

html{

    scroll-behavior:smooth;

}
/*=========================================
RESPONSIVE DESIGN
=========================================*/

/* Large Tablets */

@media (max-width:1200px){

    .solutions-hero-grid,
    .solution-grid,
    .technology-grid{

        grid-template-columns:1fr;
        gap:60px;

    }

    .hero-left{

        text-align:center;

    }

    .hero-left p{

        margin:0 auto 40px;

    }

    .hero-actions{

        justify-content:center;

    }

    .hero-right{

        max-width:700px;
        margin:auto;

    }

}


/* Tablets */

@media (max-width:992px){

    .solutions-page section{

        padding:90px 0;

    }

    .hero-left h1{

        font-size:3.4rem;

    }

    .section-heading h2,
    .mission-header h2,
    .technology-grid h2,
    .solutions-cta h2,
    .solution-content h2{

        font-size:2.4rem;

    }

    .process-grid{

        grid-template-columns:repeat(2,1fr);

    }

    .industries-grid{

        grid-template-columns:repeat(2,1fr);

    }

    .solution-grid.reverse .solution-image,
    .solution-grid.reverse .solution-content{

        order:initial;

    }

}


/* Mobile */

@media (max-width:768px){

    .solutions-page section{

        padding:70px 0;

    }

    .hero-left h1{

        font-size:2.7rem;
        line-height:1.15;

    }

    .hero-left p{

        font-size:1rem;

    }

    .hero-actions{

        flex-direction:column;

        align-items:center;

    }

    .btn-primary,
    .btn-secondary{

        width:100%;
        max-width:320px;

    }

    .section-heading h2,
    .mission-header h2,
    .solution-content h2,
    .technology-grid h2,
    .solutions-cta h2{

        font-size:2rem;

    }

    .process-grid,
    .industries-grid{

        grid-template-columns:1fr;

    }

    .solution-grid{

        grid-template-columns:1fr;
        gap:40px;

    }

    .solution-image{

        order:1;

    }

    .solution-content{

        order:2;

    }

    .technology-grid{

        grid-template-columns:1fr;
        gap:45px;

    }

    .advantage-item{

        font-size:.95rem;

        padding:16px 18px;

    }

    .process-card,
    .industry-card{

        padding:35px 25px;

    }

}


/* Small Phones */

@media (max-width:480px){

    .hero-left h1{

        font-size:2.2rem;

    }

    .section-heading h2,
    .mission-header h2,
    .solution-content h2,
    .technology-grid h2,
    .solutions-cta h2{

        font-size:1.7rem;

    }

    .hero-right img,
    .solution-image img{

        border-radius:18px;

    }

    .process-number{

        width:60px;
        height:60px;

        font-size:1.2rem;

    }

    .industry-card i{

        width:70px;
        height:70px;

        font-size:1.6rem;

    }

}


/*=========================================
END OF SOLUTIONS.CSS
=========================================*/