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

.about-hero{

    position:relative;

    overflow:hidden;

    min-height:100vh;

    display:flex;

    align-items:center;

    background:
    radial-gradient(circle at 15% 20%,rgba(244,181,72,.10),transparent 28%),
    radial-gradient(circle at 90% 80%,rgba(13,110,253,.12),transparent 30%),
    linear-gradient(135deg,#071A36,#091F42);

}

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

.about-hero-wrapper{

    display:grid;

    grid-template-columns:55% 45%;

    align-items:center;

    gap:60px;

    min-height:100vh;

}
/*==========================================
            LEFT CONTENT
==========================================*/

.about-content{

    position:relative;

    z-index:10;

}

.hero-badge{

    display:inline-flex;

    align-items:center;

    padding:12px 24px;

    border-radius:50px;

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

    border:1px solid rgba(255,255,255,.08);

    color:#F4B548;

    font-size:14px;

    letter-spacing:2px;

    text-transform:uppercase;

    font-weight:600;

}

.about-content h1{

    margin:30px 0;

    font-size:68px;

    line-height:1.08;

    color:#ffffff;

    font-weight:800;

}

.about-content h1 span{

    display:block;

    color:#F4B548;

}

.about-content p{

    max-width:620px;

    color:#D8E4F2;

    font-size:19px;

    line-height:34px;

    margin-bottom:45px;

}

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

.hero-buttons{

    display:flex;

    gap:20px;

    flex-wrap:wrap;

}

.hero-buttons a{

    text-decoration:none;

    padding:18px 34px;

    border-radius:50px;

    transition:.35s;

    font-size:16px;

    font-weight:600;

}

.btn-primary{

    background:#F4B548;

    color:#071A36;

    box-shadow:0 20px 40px rgba(244,181,72,.30);

}

.btn-primary:hover{

    transform:translateY(-6px);

    background:#FFC550;

}

.btn-outline{

    color:#ffffff;

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

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

    backdrop-filter:blur(10px);

}

.btn-outline:hover{

    background:#0D6EFD;

    border-color:#0D6EFD;

    transform:translateY(-6px);

}

/*==========================================
            RIGHT VISUAL
==========================================*/

.about-visual{

    display:flex;

    justify-content:center;

    align-items:center;

    position:relative;

}

.hero-orbit{

    position:relative;

    width:550px;

    height:550px;

}

/*==========================================
            BACKGROUND GLOW
==========================================*/

.hero-glow{

    position:absolute;

    top:50%;

    left:50%;

    width:260px;

    height:260px;

    transform:translate(-50%,-50%);

    border-radius:50%;

    background:radial-gradient(circle,
    rgba(13,110,253,.45) 0%,
    rgba(244,181,72,.25) 45%,
    transparent 75%);

    filter:blur(45px);

}

/*==========================================
            ORBIT RINGS
==========================================*/

.orbit{

    position:absolute;

    top:50%;

    left:50%;

    transform:translate(-50%,-50%);

    border-radius:50%;

    border:1px solid rgba(255,255,255,.08);

}

.orbit-1{

    width:220px;

    height:220px;

}

.orbit-2{

    width:340px;

    height:340px;

}

.orbit-3{

    width:470px;

    height:470px;

}

/*==========================================
            CENTER CIRCLE
==========================================*/

.center-circle{

    position:absolute;

    top:50%;

    left:50%;

    transform:translate(-50%,-50%);

    width:180px;

    height:180px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    text-align:center;

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

    backdrop-filter:blur(18px);

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

    box-shadow:
    0 20px 60px rgba(0,0,0,.30),
    0 0 40px rgba(13,110,253,.20);

    z-index:10;

}

.center-content h2{

    color:#ffffff;

    font-size:32px;

    margin-bottom:10px;

    letter-spacing:2px;

}

.center-content span{

    display:block;

    color:#D8E4F2;

    font-size:14px;

    line-height:24px;

    max-width:120px;

    margin:auto;

}

/*==========================================
            ORBIT ITEMS
==========================================*/

.orbit-item{

    position:absolute;

    width:78px;

    height:78px;

    border-radius:50%;

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

    backdrop-filter:blur(15px);

    border:1px solid rgba(255,255,255,.10);

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    transition:.35s;

    z-index:5;

}

.orbit-item i{

    color:#F4B548;

    font-size:24px;

    margin-bottom:6px;

}

.orbit-item p{

    color:#ffffff;

    font-size:11px;

    font-weight:600;

    margin:0;

}

.orbit-item:hover{

    transform:scale(1.12);

    background:#0D6EFD;

    box-shadow:0 15px 40px rgba(13,110,253,.35);

}

.orbit-item:hover i{

    color:#ffffff;

}

/*==========================================
            ORBIT POSITIONS
==========================================*/

.item-1{

    top:15px;

    left:50%;

    transform:translateX(-50%);

}

.item-2{

    top:120px;

    right:35px;

}

.item-3{

    bottom:120px;

    right:35px;

}

.item-4{

    bottom:15px;

    left:50%;

    transform:translateX(-50%);

}

.item-5{

    bottom:120px;

    left:35px;

}

.item-6{

    top:120px;

    left:35px;

}

/*==========================================
            FLOATING PARTICLES
==========================================*/

.particle{

    position:absolute;

    border-radius:50%;

    background:#ffffff;

    opacity:.35;

    animation:floatParticle 8s ease-in-out infinite;

}

.p1{

    width:10px;
    height:10px;

    top:8%;
    left:18%;

    animation-delay:0s;

}

.p2{

    width:7px;
    height:7px;

    top:20%;
    right:15%;

    animation-delay:2s;

}

.p3{

    width:12px;
    height:12px;

    bottom:18%;
    left:10%;

    animation-delay:3s;

}

.p4{

    width:8px;
    height:8px;

    bottom:15%;
    right:20%;

    animation-delay:1.5s;

}

.p5{

    width:14px;
    height:14px;

    top:50%;
    left:5%;

    animation-delay:4s;

}

/*==========================================
        LARGE LAPTOP
==========================================*/

@media (max-width:1200px){

.about-hero-wrapper{

    grid-template-columns:52% 48%;

    gap:40px;

}

.about-content h1{

    font-size:58px;

}

.about-content p{

    font-size:18px;

    line-height:32px;

}

.hero-orbit{

    width:480px;

    height:480px;

}

.orbit-1{

    width:200px;
    height:200px;

}

.orbit-2{

    width:300px;
    height:300px;

}

.orbit-3{

    width:400px;
    height:400px;

}

.center-circle{

    width:165px;
    height:165px;

}

.center-content h2{

    font-size:28px;

}

.orbit-item{

    width:70px;
    height:70px;

}

.orbit-item i{

    font-size:20px;

}

.orbit-item p{

    font-size:10px;

}

}

/*==========================================
            TABLET
==========================================*/

@media (max-width:992px){

.about-hero{

    padding:120px 0 80px;

    min-height:auto;

}

.about-hero-wrapper{

    grid-template-columns:1fr;

    gap:70px;

    text-align:center;

}

.about-content{

    max-width:700px;

    margin:auto;

}

.about-content h1{

    font-size:52px;

}

.about-content p{

    margin:30px auto 40px;

}

.hero-buttons{

    justify-content:center;

}

.about-visual{

    justify-content:center;

}

.hero-orbit{

    width:420px;

    height:420px;

}

.orbit-1{

    width:180px;
    height:180px;

}

.orbit-2{

    width:260px;
    height:260px;

}

.orbit-3{

    width:360px;
    height:360px;

}

.center-circle{

    width:150px;

    height:150px;

}

.center-content h2{

    font-size:26px;

}

.orbit-item{

    width:62px;

    height:62px;

}

.orbit-item i{

    font-size:18px;

}

.orbit-item p{

    font-size:10px;

}
}

/*==========================================
            MOBILE
==========================================*/

@media (max-width:768px){

.about-hero{

    padding:100px 0 60px;

}

.about-content{

    text-align:center;

}

.about-content h1{

    font-size:40px;

    line-height:1.2;

}

.about-content p{

    font-size:17px;

    line-height:30px;

    margin:25px auto 35px;

}

.hero-badge{

    font-size:13px;

    padding:10px 20px;

}

.hero-buttons{

    justify-content:center;

    flex-direction:column;

    align-items:center;

}

.hero-buttons a{

    width:240px;

    text-align:center;

}

.hero-orbit{

    width:320px;

    height:320px;

}

.orbit-1{

    width:140px;

    height:140px;

}

.orbit-2{

    width:220px;

    height:220px;

}

.orbit-3{

    width:300px;

    height:300px;

}

.center-circle{

    width:120px;

    height:120px;

}

.center-content h2{

    font-size:22px;

}

.center-content span{

    font-size:11px;

    line-height:18px;

}

.orbit-item{

    width:48px;

    height:48px;

}

.orbit-item i{

    font-size:15px;

    margin-bottom:2px;

}

.orbit-item p{

    display:none;

}

/* Adjust orbit item positions */

.item-1{

    top:0;

}

.item-2{

    top:55px;

    right:10px;

}

.item-3{

    bottom:55px;

    right:10px;

}

.item-4{

    bottom:0;

}

.item-5{

    bottom:55px;

    left:10px;

}

.item-6{

    top:55px;

    left:10px;

}

}

/*==========================================
        SMALL MOBILE
==========================================*/

@media (max-width:480px){

.about-content h1{

    font-size:32px;

}

.about-content p{

    font-size:16px;

    line-height:28px;

}

.hero-buttons a{

    width:100%;

    max-width:260px;

}

.hero-orbit{

    width:260px;

    height:260px;

}

.orbit-1{

    width:120px;

    height:120px;

}

.orbit-2{

    width:180px;

    height:180px;

}

.orbit-3{

    width:240px;

    height:240px;

}

.center-circle{

    width:100px;

    height:100px;

}

.center-content h2{

    font-size:18px;

    letter-spacing:1px;

}

.center-content span{

    display:none;

}

.orbit-item{

    width:42px;

    height:42px;

}

.orbit-item i{

    font-size:14px;

}

}

.item-2{
    top:120px;
    right:35px;
}

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

.hero-badge,
.about-content h1,
.about-content p,
.hero-buttons{

    opacity:0;

    transform:translateY(40px);

    transition:all .8s ease;

}

.hero-loaded .hero-badge{

    opacity:1;

    transform:translateY(0);

}

.hero-loaded .about-content h1{

    opacity:1;

    transform:translateY(0);

    transition-delay:.2s;

}

.hero-loaded .about-content p{

    opacity:1;

    transform:translateY(0);

    transition-delay:.4s;

}

.hero-loaded .hero-buttons{

    opacity:1;

    transform:translateY(0);

    transition-delay:.6s;

}



/* ===================================================================================================================================================================================================================== */

/*=========================================================
                    CHAVO ABOUT SECTION
=========================================================*/

:root{

    --chv-bg:#071A36;
    --chv-card:#0E2244;
    --chv-card2:#10274D;

    --chv-gold:#F4B548;
    --chv-gold-hover:#FFC857;

    --chv-white:#ffffff;
    --chv-text:#D5DFEA;

    --chv-border:rgba(255,255,255,.08);

    --chv-radius:22px;

    --chv-transition:.35s ease;

}


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

.chv-about-section{

    position:relative;

    padding:30px 0;

    background:linear-gradient(
        180deg,
        #071A36 0%,
        #081E3D 50%,
        #071A36 100%
    );

    overflow:hidden;

}


/*=========================================================
                    GLOW
=========================================================*/

.chv-about-section::before{

    content:"";

    position:absolute;

    width:450px;

    height:450px;

    left:-180px;

    top:-150px;

    border-radius:50%;

    background:rgba(244,181,72,.08);

    filter:blur(100px);

}

.chv-about-section::after{

    content:"";

    position:absolute;

    width:350px;

    height:350px;

    right:-120px;

    bottom:-100px;

    border-radius:50%;

    background:rgba(244,181,72,.05);

    filter:blur(90px);

}


/*=========================================================
                    WRAPPER
=========================================================*/

.chv-about-wrapper{

    position:relative;

    z-index:5;

    display:grid;

    grid-template-columns:1fr 620px;

    gap:90px;

    align-items:center;

}


/*=========================================================
                    LEFT
=========================================================*/

.chv-about-content{

    max-width:620px;

}


/*=========================================================
                    BADGE
=========================================================*/

.chv-about-tag{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:12px 24px;

    border-radius:50px;

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

    border:1px solid rgba(244,181,72,.15);

    color:var(--chv-gold);

    font-size:13px;

    letter-spacing:2px;

    text-transform:uppercase;

}


/*=========================================================
                    TITLE
=========================================================*/

.chv-about-title{

    margin:25px 0;

    font-size:58px;

    line-height:1.15;

    color:#fff;

    font-weight:700;

}

.chv-about-title span{

    color:var(--chv-gold);

}


/*=========================================================
                    DESCRIPTION
=========================================================*/

.chv-about-description{

    margin-bottom:22px;

    color:var(--chv-text);

    font-size:17px;

    line-height:32px;

}


/*=========================================================
                    FEATURES
=========================================================*/

.chv-about-features{

    margin:40px 0;

}

.chv-feature-item{

    display:flex;

    align-items:center;

    gap:16px;

    margin-bottom:18px;

    color:#fff;

    font-size:17px;

}

.chv-feature-item i{

    width:38px;

    height:38px;

    border-radius:50%;

    background:var(--chv-gold);

    color:#071A36;

    display:flex;

    justify-content:center;

    align-items:center;

}


/*=========================================================
                    BUTTON
=========================================================*/

.chv-btn-primary{

    display:inline-flex;

    align-items:center;

    gap:14px;

    padding:18px 34px;

    background:var(--chv-gold);

    color:#071A36;

    border-radius:60px;

    text-decoration:none;

    font-weight:700;

    transition:var(--chv-transition);

}

.chv-btn-primary:hover{

    background:var(--chv-gold-hover);

    transform:translateY(-5px);

    box-shadow:0 18px 45px rgba(244,181,72,.25);

}
/*=========================================================
                    RIGHT SIDE
=========================================================*/

.chv-about-preview{

    position:relative;

    display:flex;

    justify-content:center;

    align-items:center;

}

.chv-browser{

    position:relative;

    width:100%;

    max-width:560px;

    background:linear-gradient(
        180deg,
        #0E2244 0%,
        #09172D 100%
    );

    border:1px solid rgba(255,255,255,.08);

    border-radius:24px;

    overflow:hidden;

    box-shadow:
        0 30px 70px rgba(0,0,0,.45),
        0 0 60px rgba(244,181,72,.08);

    z-index:5;

}

/*=========================================================
                BROWSER HEADER
=========================================================*/

.chv-browser-header{

    height:58px;

    background:#081426;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:0 20px;

    border-bottom:1px solid rgba(255,255,255,.06);

}

.chv-browser-controls{

    display:flex;

    gap:8px;

}

.chv-dot{

    width:12px;

    height:12px;

    border-radius:50%;

}

.chv-red{

    background:#ff5f57;

}

.chv-yellow{

    background:#febc2e;

}

.chv-green{

    background:#28c840;

}

.chv-browser-address{

    color:#BFCADA;

    font-size:13px;

    display:flex;

    align-items:center;

    gap:8px;

}

.chv-browser-address i{

    color:#56D364;

}
/*=========================================================
                    BODY
=========================================================*/

.chv-browser-body{

    padding:28px;

}
/*=========================================================
                MINI NAVBAR
=========================================================*/

.chv-mini-navbar{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:30px;

}

.chv-mini-logo{

    color:var(--chv-gold);

    font-size:22px;

    font-weight:700;

    letter-spacing:2px;

}

.chv-mini-menu{

    display:flex;

    gap:24px;

    list-style:none;

    padding:0;

    margin:0;

}

.chv-mini-menu li{

    color:#d7dfeb;

    font-size:14px;

    cursor:pointer;

    transition:.3s;

}

.chv-mini-menu li:hover{

    color:var(--chv-gold);

}

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

.chv-mini-hero{

    text-align:center;

    margin-bottom:30px;

}

.chv-mini-label{

    display:inline-block;

    padding:8px 18px;

    border-radius:30px;

    background:rgba(244,181,72,.12);

    color:var(--chv-gold);

    font-size:11px;

    letter-spacing:2px;

    margin-bottom:18px;

}

.chv-mini-hero h3{

    color:#fff;

    font-size:30px;

    margin-bottom:14px;

}

.chv-mini-hero p{

    color:#D5DFEA;

    font-size:15px;

    line-height:28px;

    margin-bottom:24px;

}

.chv-mini-btn{

    display:inline-block;

    padding:12px 30px;

    background:var(--chv-gold);

    color:#071A36;

    border-radius:40px;

    text-decoration:none;

    font-weight:700;

    transition:.35s;

}

.chv-mini-btn:hover{

    background:#FFC857;

}
/*=========================================================
                    HERO IMAGE
=========================================================*/

.chv-mini-banner{

    margin-top:35px;

    height:180px;

    border-radius:18px;

    overflow:hidden;

    position:relative;

    background:
        linear-gradient(rgba(7,26,54,.25), rgba(7,26,54,.6)),
        linear-gradient(135deg,#153A74,#0B1D38);

    border:1px solid rgba(255,255,255,.06);

}

.chv-banner-overlay{

    position:absolute;

    inset:0;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

}

.chv-banner-overlay h4{

    color:#fff;

    font-size:24px;

    margin-bottom:12px;

}

.chv-banner-overlay span{

    color:#F4B548;

    letter-spacing:2px;

    font-size:13px;

}
/*=========================================================
                    SERVICES GRID
=========================================================*/

.chv-services-grid{

    display:grid;

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

    gap:18px;

    margin:35px 0;

}

.chv-service-card{

    display:flex;

    align-items:center;

    gap:18px;

    padding:20px;

    border-radius:18px;

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

    border:1px solid rgba(255,255,255,.08);

    transition:all .35s ease;

    cursor:pointer;

}

.chv-service-card:hover{

    transform:translateY(-8px);

    border-color:rgba(244,181,72,.45);

    background:rgba(244,181,72,.08);

    box-shadow:0 15px 35px rgba(0,0,0,.25);

}

.chv-service-icon{

    width:60px;

    height:60px;

    border-radius:16px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:linear-gradient(135deg,#F4B548,#FFD26A);

    color:#071A36;

    font-size:24px;

    flex-shrink:0;

}

.chv-service-content h5{

    color:#ffffff;

    font-size:17px;

    margin-bottom:6px;

    font-weight:600;

}

.chv-service-content span{

    color:#C8D4E5;

    font-size:13px;

    letter-spacing:.5px;

}
/*=========================================================
                    STATS
=========================================================*/

.chv-mini-stats{

    display:flex;

    justify-content:space-between;

    margin:35px 0;

    padding:25px 10px;

    border-top:1px solid rgba(255,255,255,.08);

    border-bottom:1px solid rgba(255,255,255,.08);

}

.chv-stat-item{

    text-align:center;

    flex:1;

}

.chv-stat-item h3{

    color:#F4B548;

    font-size:34px;

    margin-bottom:8px;

}

.chv-stat-item span{

    color:#D6E0EC;

    font-size:14px;

}
/*=========================================================
                    CTA
=========================================================*/

.chv-mini-cta{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin:35px 0;

    padding:22px 25px;

    border-radius:18px;

    background:linear-gradient(
        135deg,
        rgba(244,181,72,.12),
        rgba(255,255,255,.03)
    );

    border:1px solid rgba(244,181,72,.15);

}

.chv-mini-cta-text{

    color:#ffffff;

    font-size:18px;

    font-weight:600;

}

.chv-mini-contact{

    padding:12px 26px;

    border-radius:40px;

    background:#F4B548;

    color:#071A36;

    text-decoration:none;

    font-weight:700;

    transition:.35s;

}

.chv-mini-contact:hover{

    background:#FFD26A;

    transform:translateY(-3px);

}
/*=========================================================
                    FOOTER
=========================================================*/

.chv-mini-footer{

    display:flex;

    justify-content:space-between;

    margin-top:25px;

    padding-top:20px;

    border-top:1px solid rgba(255,255,255,.08);

}

.chv-mini-footer span{

    display:flex;

    align-items:center;

    gap:8px;

    color:#BFD0E3;

    font-size:13px;

}

.chv-mini-footer i{

    color:#F4B548;

}
/*=========================================================
                FLOATING CARDS
=========================================================*/

.chv-floating-card{

    position:absolute;

    display:flex;

    align-items:center;

    gap:14px;

    padding:14px 18px;

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

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.08);

    border-radius:18px;

    box-shadow:0 20px 45px rgba(0,0,0,.20);

    z-index:10;

    animation:floatCard 5s ease-in-out infinite;

}

.chv-floating-icon{

    width:48px;

    height:48px;

    border-radius:14px;

    background:#F4B548;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#071A36;

}

.chv-floating-content h6{

    color:#fff;

    font-size:15px;

    margin:0;

}

.chv-floating-content span{

    color:#C8D4E5;

    font-size:12px;

}

/* Positions */

.chv-floating-website{

    top:50px;

    left:-70px;

}

.chv-floating-marketing{

    top:90px;

    right:-80px;

    animation-delay:1s;

}

.chv-floating-branding{

    bottom:120px;

    left:-60px;

    animation-delay:2s;

}

.chv-floating-business{

    bottom:60px;

    right:-70px;

    animation-delay:3s;

}
/*=========================================================
                    GLOW
=========================================================*/

.chv-preview-glow{

    position:absolute;

    width:380px;

    height:380px;

    background:rgba(244,181,72,.12);

    border-radius:50%;

    filter:blur(90px);

    top:50%;

    left:50%;

    transform:translate(-50%,-50%);

    z-index:1;

}
/*=========================================================
                FLOAT ANIMATION
=========================================================*/

@keyframes floatCard{

    0%,100%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-12px);

    }

}

/*=========================================================
                LARGE DEVICES
=========================================================*/

@media (max-width:1200px){

    .chv-about-wrapper{

        grid-template-columns:1fr 520px;

        gap:60px;

    }

    .chv-about-title{

        font-size:48px;

    }

    .chv-browser{

        max-width:500px;

    }

}
/*=========================================================
                TABLET
=========================================================*/

@media (max-width:991px){

    .chv-about-section{

        padding:90px 0;

    }

    .chv-about-wrapper{

        grid-template-columns:1fr;

        gap:70px;

    }

    .chv-about-content{

        text-align:center;

        max-width:100%;

    }

    .chv-about-description{

        max-width:700px;

        margin:0 auto 20px;

    }

    .chv-about-features{

        display:inline-block;

        text-align:left;

        margin:35px auto;

    }

    .chv-about-actions{

        display:flex;

        justify-content:center;

    }

    .chv-about-preview{

        margin-top:20px;

    }

    .chv-browser{

        max-width:620px;

    }

}
/*=========================================================
                MOBILE
=========================================================*/

@media (max-width:768px){

    .chv-about-title{

        font-size:36px;

    }

    .chv-about-description{

        font-size:16px;

        line-height:30px;

    }

    .chv-browser-body{

        padding:20px;

    }

    .chv-mini-menu{

        display:none;

    }

    .chv-services-grid{

        grid-template-columns:1fr;

    }

    .chv-mini-stats{

        flex-direction:column;

        gap:25px;

    }

    .chv-mini-cta{

        flex-direction:column;

        gap:18px;

        text-align:center;

    }

    .chv-mini-footer{

        flex-direction:column;

        gap:12px;

        align-items:center;

    }

}
/*=========================================================
                SMALL MOBILE
=========================================================*/

@media (max-width:576px){

    .chv-about-section{

        padding:70px 0;

    }

    .chv-about-title{

        font-size:30px;

    }

    .chv-about-tag{

        font-size:11px;

        padding:10px 18px;

    }

    .chv-browser-header{

        padding:0 15px;

    }

    .chv-browser-address{

        font-size:11px;

    }

    .chv-mini-logo{

        font-size:18px;

    }

    .chv-mini-hero h3{

        font-size:24px;

    }

    .chv-banner-overlay h4{

        font-size:20px;

    }

    .chv-service-card{

        padding:16px;

    }

}
/*=========================================================
            FLOATING CARDS RESPONSIVE
=========================================================*/

@media (max-width:991px){

    .chv-floating-card{

        display:none;

    }

}
.chv-browser{

    transition:.45s ease;

}

.chv-browser:hover{

    transform:translateY(-10px);

    box-shadow:
        0 40px 80px rgba(0,0,0,.45),
        0 0 50px rgba(244,181,72,.15);

}

.chv-about-content,
.chv-browser{

    opacity:1;

    transform:none;

    transition:.8s ease;

}
.chv-reveal{

    opacity:0;

    transform:translateY(40px);

    transition:.8s;

}

.chv-reveal.active{

    opacity:1;

    transform:translateY(0);

}




/* ===================================================================================================================================================================================================================== */

/*=========================================================
                WHY CHOOSE CHAVO
=========================================================*/

.chv-why-section{

    position:relative;

    padding:60px 0 0 0;

    background:#071A36;

    overflow:hidden;

}

.chv-why-section::before{

    content:"";

    position:absolute;

    width:450px;

    height:450px;

    top:-180px;

    right:-180px;

    background:rgba(244,181,72,.05);

    border-radius:50%;

    filter:blur(90px);

}

.chv-why-section::after{

    content:"";

    position:absolute;

    width:350px;

    height:350px;

    left:-150px;

    bottom:-150px;

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

    border-radius:50%;

    filter:blur(90px);

}

/*=========================================================
                    HEADING
=========================================================*/

.chv-why-heading{

    max-width:760px;

    margin:auto;

    text-align:center;

    margin-bottom:70px;

}

.chv-why-tag{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:12px 24px;

    border-radius:50px;

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

    border:1px solid rgba(244,181,72,.15);

    color:#F4B548;

    font-size:13px;

    letter-spacing:2px;

    text-transform:uppercase;

}

.chv-why-title{

    color:#ffffff;

    font-size:52px;

    line-height:1.2;

    margin:25px 0;

    font-weight:700;

}

.chv-why-title span{

    color:#F4B548;

}

.chv-why-description{

    color:#C7D2DF;

    font-size:18px;

    line-height:32px;

}
/*=========================================================
                    GRID
=========================================================*/

.chv-why-grid{

    display:grid;

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

    gap:30px;

}
/*=========================================================
                    CARD
=========================================================*/

.chv-why-card{

    position:relative;

    padding:40px 35px;

    border-radius:24px;

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

    border:1px solid rgba(255,255,255,.08);

    backdrop-filter:blur(18px);

    transition:.45s ease;

    overflow:hidden;

}
.chv-why-card:hover{

    transform:translateY(-12px);

    border-color:rgba(244,181,72,.35);

    background:rgba(244,181,72,.06);

    box-shadow:

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

    0 0 30px rgba(244,181,72,.08);

}
.chv-why-card::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:0;

    height:4px;

    background:#F4B548;

    transition:.45s;

}

.chv-why-card:hover::before{

    width:100%;

}
/*=========================================================
                    ICON
=========================================================*/

.chv-why-icon{

    width:72px;

    height:72px;

    border-radius:20px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:linear-gradient(135deg,#F4B548,#FFD56E);

    color:#071A36;

    font-size:30px;

    margin-bottom:28px;

    transition:.4s;

}

.chv-why-card:hover .chv-why-icon{

    transform:rotate(-8deg) scale(1.08);

}
/*=========================================================
                    TEXT
=========================================================*/

.chv-why-card-title{

    color:#ffffff;

    font-size:24px;

    margin-bottom:18px;

    font-weight:600;

}

.chv-why-card-text{

    color:#C9D4E0;

    line-height:30px;

    font-size:16px;

}
/*=========================================================
                CARD HOVER GLOW
=========================================================*/

.chv-why-card::after{

    content:"";

    position:absolute;

    inset:0;

    background:linear-gradient(
        135deg,
        rgba(244,181,72,.12),
        transparent 45%
    );

    opacity:0;

    transition:.45s ease;

    pointer-events:none;

}

.chv-why-card:hover::after{

    opacity:1;

}
/*=========================================================
                    ICON GLOW
=========================================================*/

.chv-why-icon{

    position:relative;

    overflow:hidden;

    box-shadow:0 10px 25px rgba(244,181,72,.20);

}

.chv-why-icon::before{

    content:"";

    position:absolute;

    width:130%;

    height:130%;

    left:-120%;

    top:-120%;

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

    transform:rotate(45deg);

    transition:.7s;

}

.chv-why-card:hover .chv-why-icon::before{

    left:120%;

    top:120%;

}
/*=========================================================
                CARD CONTENT
=========================================================*/

.chv-why-card-title{

    transition:.35s;

}

.chv-why-card-text{

    transition:.35s;

}

.chv-why-card:hover .chv-why-card-title{

    color:#F4B548;

}

.chv-why-card:hover .chv-why-card-text{

    color:#ffffff;

}

/*=========================================================
                    CARD NUMBER
=========================================================*/

.chv-why-number{

    position:absolute;

    top:25px;

    right:28px;

    font-size:48px;

    font-weight:700;

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

    user-select:none;

    transition:.35s;

}

.chv-why-card:hover .chv-why-number{

    color:rgba(244,181,72,.12);

}
/*=========================================================
                BOTTOM LINE
=========================================================*/

.chv-why-card .chv-why-line{

    width:45px;

    height:3px;

    margin-top:22px;

    background:#F4B548;

    border-radius:50px;

    transition:.4s;

}

.chv-why-card:hover .chv-why-line{

    width:90px;

}
/*=========================================================
                FLOATING EFFECT
=========================================================*/

@keyframes chvWhyFloat{

    0%,100%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-8px);

    }

}

.chv-why-card:nth-child(2){

    animation:chvWhyFloat 6s ease-in-out infinite;

}

.chv-why-card:nth-child(5){

    animation:chvWhyFloat 6s ease-in-out infinite;

    animation-delay:1.5s;

}
/*=========================================================
                DIVIDER
=========================================================*/

.chv-why-section{

    border-top:1px solid rgba(255,255,255,.04);

    border-bottom:1px solid rgba(255,255,255,.04);

}

/*=========================================================
                TABLET
=========================================================*/

@media (max-width:991px){

    .chv-why-section{

        padding:90px 0;

    }

    .chv-why-grid{

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

        gap:25px;

    }

    .chv-why-title{

        font-size:42px;

    }

    .chv-why-description{

        font-size:17px;

        line-height:30px;

    }

}


/*=========================================================
                MOBILE
=========================================================*/

@media (max-width:768px){

    .chv-why-grid{

        grid-template-columns:1fr;

        gap:20px;

    }

    .chv-why-heading{

        margin-bottom:50px;

    }

    .chv-why-title{

        font-size:34px;

    }

    .chv-why-description{

        font-size:16px;

        line-height:28px;

    }

    .chv-why-card{

        padding:30px 25px;

    }

    .chv-why-icon{

        width:60px;

        height:60px;

        font-size:24px;

    }

    .chv-why-card-title{

        font-size:22px;

    }

}


/*=========================================================
            SMALL MOBILE
=========================================================*/

@media (max-width:576px){

    .chv-why-section{

        padding:70px 0;

    }

    .chv-why-title{

        font-size:28px;

    }

    .chv-why-tag{

        font-size:11px;

        padding:10px 18px;

    }

    .chv-why-card{

        padding:25px 20px;

    }

}
/*=========================================================
                SCROLL REVEAL
=========================================================*/

.chv-why-card{

    opacity:0;

    transform:translateY(40px);

    transition:

        opacity .7s ease,

        transform .7s ease,

        box-shadow .35s ease,

        background .35s ease;

}

.chv-why-card.chv-why-visible{

    opacity:1;

    transform:translateY(0);

}











/* ===================================================================================================================================================================================================================== */

/*==========================================
            OUR PROCESS
==========================================*/

.our-process{

    position:relative;

    padding:130px 0;

    overflow:hidden;

    background:
    radial-gradient(circle at 15% 15%,rgba(13,110,253,.10),transparent 28%),
    radial-gradient(circle at 90% 80%,rgba(244,181,72,.08),transparent 25%),
    linear-gradient(180deg,#081F40,#071A36);

}

/*==========================================
        BACKGROUND GLOW
==========================================*/

.our-process::before{

    content:"";

    position:absolute;

    width:450px;

    height:450px;

    top:-150px;

    left:-150px;

    border-radius:50%;

    background:rgba(13,110,253,.10);

    filter:blur(120px);

}

.our-process::after{

    content:"";

    position:absolute;

    width:400px;

    height:400px;

    right:-120px;

    bottom:-120px;

    border-radius:50%;

    background:rgba(244,181,72,.08);

    filter:blur(120px);

}

.section-heading{

    position:relative;

    z-index:2;

    max-width:760px;

    margin:0 auto 90px;

    text-align:center;

}

.section-heading h2{

    color:#ffffff;

    font-size:56px;

    font-weight:800;

    line-height:1.2;

    margin:25px 0;

}

.section-heading h2 span{

    display:block;

    color:#F4B548;

}

.section-heading p{

    color:#C8D6E5;

    font-size:18px;

    line-height:34px;

}

.process-wrapper{

    position:relative;

    z-index:2;

    display:flex;

    justify-content:space-between;

    align-items:flex-start;

    gap:30px;

}
.process-line{

    position:absolute;

    top:42px;

    left:8%;

    width:84%;

    height:2px;

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

}

.process-progress{

    position:absolute;

    top:42px;

    left:8%;

    width:0;

    height:2px;

    background:linear-gradient(90deg,#0D6EFD,#F4B548);

    transition:1.5s;

}

/*==========================================
            PROCESS CARD
==========================================*/

.process-card{

    position:relative;

    width:220px;

    padding:70px 30px 35px;

    border-radius:30px;

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

    backdrop-filter:blur(20px);

    border:1px solid rgba(255,255,255,.08);

    text-align:center;

    transition:.45s ease;

    overflow:hidden;

    z-index:2;

}

/*==========================================
            TOP GLOW
==========================================*/

.process-card::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:4px;

    background:linear-gradient(90deg,#0D6EFD,#F4B548);

    transform:scaleX(0);

    transform-origin:left;

    transition:.45s;

}

.process-card:hover::before{

    transform:scaleX(1);

}

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

.process-card:hover{

    transform:translateY(-15px);

    border-color:rgba(13,110,253,.25);

    box-shadow:

    0 30px 70px rgba(0,0,0,.35),

    0 0 40px rgba(13,110,253,.18);

}

/*==========================================
            STEP NUMBER
==========================================*/

.step-number{

    position:absolute;

    top:22px;

    left:25px;

    width:48px;

    height:48px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:linear-gradient(135deg,#F4B548,#FFD36C);

    color:#071A36;

    font-size:18px;

    font-weight:700;

    box-shadow:0 12px 30px rgba(244,181,72,.35);

}

/*==========================================
            PROCESS ICON
==========================================*/

.process-icon{

    width:85px;

    height:85px;

    margin:0 auto 25px;

    border-radius:24px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:rgba(13,110,253,.12);

    border:1px solid rgba(13,110,253,.20);

    color:#0D6EFD;

    font-size:34px;

    transition:.45s ease;

}

.process-card:hover .process-icon{

    background:#0D6EFD;

    color:#ffffff;

    transform:rotate(-10deg) scale(1.08);

}

/*==========================================
            CARD TEXT
==========================================*/

.process-card h3{

    color:#ffffff;

    font-size:24px;

    margin-bottom:18px;

    font-weight:700;

}

.process-card p{

    color:#C8D6E5;

    font-size:15px;

    line-height:28px;

}

/*==========================================
            CARD POSITION
==========================================*/

.step-1{

    margin-top:0;

}

.step-2{

    margin-top:90px;

}

.step-3{

    margin-top:0;

}

.step-4{

    margin-top:90px;

}

.step-5{

    margin-top:0;

}

/*==========================================
        SCROLL ANIMATION
==========================================*/

.process-card,
.section-heading{

    opacity:0;

    transform:translateY(60px);

    transition:all .8s ease;

}

.our-process.active .section-heading{

    opacity:1;

    transform:translateY(0);

}

.our-process.active .step-1{

    opacity:1;

    transform:translateY(0);

    transition-delay:.15s;

}

.our-process.active .step-2{

    opacity:1;

    transform:translateY(90px);

    transition-delay:.3s;

}

.our-process.active .step-3{

    opacity:1;

    transform:translateY(0);

    transition-delay:.45s;

}

.our-process.active .step-4{

    opacity:1;

    transform:translateY(90px);

    transition-delay:.6s;

}

.our-process.active .step-5{

    opacity:1;

    transform:translateY(0);

    transition-delay:.75s;

}

.our-process.active .process-progress{

    width:84%;

}

/*==========================================
        FLOATING EFFECT
==========================================*/

.step-1{

    animation:floatOne 5s ease-in-out infinite;

}

.step-2{

    animation:floatTwo 6s ease-in-out infinite;

}

.step-3{

    animation:floatOne 5.5s ease-in-out infinite;

}

.step-4{

    animation:floatTwo 6.5s ease-in-out infinite;

}

.step-5{

    animation:floatOne 5.2s ease-in-out infinite;

}

@keyframes floatOne{

    0%,100%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-10px);

    }

}

@keyframes floatTwo{

    0%,100%{

        transform:translateY(90px);

    }

    50%{

        transform:translateY(78px);

    }

}

/*==========================================
        RESPONSIVE
==========================================*/

@media(max-width:1200px){

    .process-wrapper{

        flex-wrap:wrap;

        justify-content:center;

        gap:40px;

    }

    .process-line,
    .process-progress{

        display:none;

    }

    .process-card{

        width:280px;

        margin-top:0 !important;

    }

}

@media(max-width:768px){

    .our-process{

        padding:90px 0;

    }

    .section-heading{

        margin-bottom:60px;

    }

    .section-heading h2{

        font-size:36px;

    }

    .section-heading p{

        font-size:16px;

        line-height:30px;

    }

    .process-card{

        width:100%;

        max-width:360px;

    }

}

@media(max-width:576px){

    .section-heading h2{

        font-size:30px;

    }

    .process-card{

        padding:60px 25px 30px;

    }

    .process-icon{

        width:70px;

        height:70px;

        font-size:28px;

    }

}

/* ================================================================================================= */

/*==========================================
            WHY CHOOSE CHAVO
==========================================*/

.why-chavo{

    position:relative;

    padding:130px 0;

    overflow:hidden;

    background:
    radial-gradient(circle at 15% 20%,rgba(13,110,253,.10),transparent 30%),
    radial-gradient(circle at 85% 80%,rgba(244,181,72,.08),transparent 30%),
    linear-gradient(180deg,#081F40,#071A36);

}

/*==========================================
            BACKGROUND GLOW
==========================================*/

.why-chavo::before{

    content:"";

    position:absolute;

    width:420px;

    height:420px;

    left:-150px;

    top:-120px;

    border-radius:50%;

    background:rgba(13,110,253,.12);

    filter:blur(120px);

}

.why-chavo::after{

    content:"";

    position:absolute;

    width:380px;

    height:380px;

    right:-120px;

    bottom:-100px;

    border-radius:50%;

    background:rgba(244,181,72,.10);

    filter:blur(120px);

}

/*==========================================
            WRAPPER
==========================================*/

.choose-wrapper{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:80px;

    align-items:center;

    margin-top:80px;

    position:relative;

    z-index:2;

}

.choose-content{

    display:flex;

    flex-direction:column;

    gap:25px;

}
/*==========================================
            FEATURE CARD
==========================================*/

.feature-card{

    position:relative;

    display:flex;

    align-items:center;

    gap:25px;

    padding:28px;

    border-radius:24px;

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

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.08);

    transition:.4s;

    overflow:hidden;

}

.feature-card::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:4px;

    height:100%;

    background:linear-gradient(#0D6EFD,#F4B548);

    transform:scaleY(0);

    transform-origin:top;

    transition:.4s;

}

.feature-card:hover::before{

    transform:scaleY(1);

}

.feature-card:hover{

    transform:translateX(12px);

    border-color:rgba(13,110,253,.25);

    box-shadow:

    0 25px 60px rgba(13,110,253,.15);

}
/*==========================================
            NUMBER
==========================================*/

.feature-number{

    position:absolute;

    top:18px;

    right:20px;

    font-size:42px;

    font-weight:800;

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

    user-select:none;

}
/*==========================================
            ICON
==========================================*/

.feature-icon{

    width:72px;

    height:72px;

    min-width:72px;

    border-radius:20px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:rgba(13,110,253,.10);

    border:1px solid rgba(13,110,253,.15);

    color:#0D6EFD;

    font-size:28px;

    transition:.4s;

}

.feature-card:hover .feature-icon{

    background:#0D6EFD;

    color:#fff;

    transform:rotate(-10deg) scale(1.08);

}

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

.feature-info h3{

    color:#ffffff;

    font-size:24px;

    margin-bottom:12px;

}

.feature-info p{

    color:#C8D6E5;

    font-size:16px;

    line-height:30px;

}

/*==========================================
            RIGHT VISUAL
==========================================*/

.choose-visual{

    display:flex;

    justify-content:center;

    align-items:center;

    position:relative;

}

.visual-wrapper{

    position:relative;

    width:550px;

    height:550px;

}

/*==========================================
            GLOW
==========================================*/

.visual-glow{

    position:absolute;

    top:50%;

    left:50%;

    transform:translate(-50%,-50%);

    width:320px;

    height:320px;

    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(13,110,253,.45),
    rgba(244,181,72,.20),
    transparent 75%);

    filter:blur(45px);

    animation:glowPulse 6s ease-in-out infinite;

}
/*==========================================
            CENTER CIRCLE
==========================================*/

.visual-center{

    position:absolute;

    top:50%;

    left:50%;

    transform:translate(-50%,-50%);

    width:220px;

    height:220px;

    border-radius:50%;

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

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.10);

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

    box-shadow:

    0 30px 70px rgba(0,0,0,.35),

    0 0 45px rgba(13,110,253,.20);

}

.center-icon{

    width:85px;

    height:85px;

    border-radius:24px;

    background:linear-gradient(135deg,#0D6EFD,#2E91FF);

    display:flex;

    justify-content:center;

    align-items:center;

    color:#fff;

    font-size:34px;

    margin-bottom:18px;

}

.visual-center h3{

    color:#fff;

    font-size:34px;

    margin-bottom:10px;

}

.visual-center p{

    color:#D7E4F4;

    font-size:15px;

}

/*==========================================
            FLOATING CARDS
==========================================*/

.floating-card{

    position:absolute;

    width:130px;

    height:130px;

    border-radius:24px;

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

    backdrop-filter:blur(16px);

    border:1px solid rgba(255,255,255,.08);

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

    transition:.4s;

}

.floating-card i{

    color:#F4B548;

    font-size:30px;

    margin-bottom:14px;

}

.floating-card span{

    color:#ffffff;

    font-size:15px;

    font-weight:600;

}

.floating-card:hover{

    transform:scale(1.08);

    background:#0D6EFD;

}

.floating-card:hover i{

    color:#ffffff;

}

/*==========================================
            CARD POSITIONS
==========================================*/

.card-1{

    top:10px;

    left:50%;

    transform:translateX(-50%);

}

.card-2{

    top:50%;

    left:0;

    transform:translateY(-50%);

}

.card-3{

    top:50%;

    right:0;

    transform:translateY(-50%);

}

.card-4{

    bottom:10px;

    left:50%;

    transform:translateX(-50%);

}
/*==========================================
            CONNECTING LINES
==========================================*/

.line{

    position:absolute;

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

    overflow:hidden;

}

.line::after{

    content:"";

    position:absolute;

    background:linear-gradient(90deg,#0D6EFD,#F4B548);

    animation:lineFlow 4s linear infinite;

}

/* Top */

.line-1{

    width:2px;
    height:95px;

    top:120px;
    left:50%;

    transform:translateX(-50%);

}

.line-1::after{

    width:100%;
    height:40px;

}

/* Left */

.line-2{

    width:95px;
    height:2px;

    left:125px;
    top:50%;

    transform:translateY(-50%);

}

.line-2::after{

    width:40px;
    height:100%;

}

/* Right */

.line-3{

    width:95px;
    height:2px;

    right:125px;
    top:50%;

    transform:translateY(-50%);

}

.line-3::after{

    width:40px;
    height:100%;

}

/* Bottom */

.line-4{

    width:2px;
    height:95px;

    bottom:120px;
    left:50%;

    transform:translateX(-50%);

}

.line-4::after{

    width:100%;
    height:40px;

}
/*==========================================
            FLOATING DOTS
==========================================*/

.dot{

    position:absolute;

    border-radius:50%;

    background:#ffffff;

    opacity:.45;

    animation:floatDots 6s ease-in-out infinite;

}

.dot-1{

    width:8px;
    height:8px;

    left:10%;
    top:18%;

}

.dot-2{

    width:10px;
    height:10px;

    right:12%;
    top:20%;

    animation-delay:1s;

}

.dot-3{

    width:7px;
    height:7px;

    left:18%;
    bottom:15%;

    animation-delay:2s;

}

.dot-4{

    width:9px;
    height:9px;

    right:15%;
    bottom:18%;

    animation-delay:3s;

}

.dot-5{

    width:12px;
    height:12px;

    top:50%;
    left:50%;

    animation-delay:4s;

}   
/*==========================================
            KEYFRAMES
==========================================*/

@keyframes glowPulse{

    0%,100%{

        transform:translate(-50%,-50%) scale(1);

    }

    50%{

        transform:translate(-50%,-50%) scale(1.12);

    }

}

@keyframes floatDots{

    0%,100%{

        transform:translateY(0);

        opacity:.4;

    }

    50%{

        transform:translateY(-18px);

        opacity:1;

    }

}

@keyframes lineFlow{

    0%{

        transform:translateY(-40px);

    }

    100%{

        transform:translateY(130px);

    }

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

@media(max-width:992px){

    .choose-wrapper{

        grid-template-columns:1fr;

        gap:70px;

    }

    .choose-content{

        order:2;

    }

    .choose-visual{

        order:1;

    }

    .visual-wrapper{

        width:430px;

        height:430px;

    }

    .visual-center{

        width:180px;

        height:180px;

    }

    .floating-card{

        width:105px;

        height:105px;

    }

}

@media(max-width:768px){

    .why-chavo{

        padding:90px 0;

    }

    .visual-wrapper{

        width:320px;

        height:320px;

    }

    .visual-center{

        width:150px;

        height:150px;

    }

    .center-icon{

        width:60px;

        height:60px;

        font-size:24px;

        margin-bottom:10px;

    }

    .visual-center h3{

        font-size:24px;

    }

    .visual-center p{

        font-size:12px;

    }

    .floating-card{

        width:85px;

        height:85px;

        border-radius:18px;

    }

    .floating-card span{

        font-size:11px;

    }

    .floating-card i{

        font-size:22px;

    }

    .line{

        display:none;

    }

}

/*==========================================
            TECH NODES
==========================================*/

.tech-node{

    position:absolute;

    width:90px;

    height:90px;

    border-radius:50%;

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

    backdrop-filter:blur(16px);

    border:1px solid rgba(255,255,255,.10);

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

    transition:.45s ease;

    animation:orbitFloat 6s ease-in-out infinite;

    cursor:pointer;

}

.tech-node i{

    color:#F4B548;

    font-size:24px;

    margin-bottom:8px;

}

.tech-node span{

    color:#ffffff;

    font-size:12px;

    font-weight:600;

}

.tech-node:hover{

    transform:scale(1.15);

    background:#0D6EFD;

    box-shadow:0 15px 40px rgba(13,110,253,.35);

}

.tech-node:hover i{

    color:#ffffff;

}

@keyframes orbitFloat{

    0%,100%{

        transform:translateY(0px);

    }

    50%{

        transform:translateY(-12px);

    }

}

.node-1{

    animation-delay:0s;

}

.node-2{

    animation-delay:.5s;

}

.node-3{

    animation-delay:1s;

}

.node-4{

    animation-delay:1.5s;

}

.node-5{

    animation-delay:2s;

}

.node-6{

    animation-delay:2.5s;

}

/*==========================================
            ORBIT RING
==========================================*/

.orbit-ring{

    position:absolute;

    inset:0;

    animation:rotateOrbit 35s linear infinite;

}

.orbit-item{

    position:absolute;

    width:90px;

    height:90px;

    border-radius:50%;

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

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.10);

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

    transition:.4s;

    animation:counterRotate 35s linear infinite;

}

.orbit-item i{

    color:#F4B548;

    font-size:24px;

    margin-bottom:8px;

}

.orbit-item span{

    color:#ffffff;

    font-size:12px;

    font-weight:600;

}

.orbit-item:hover{

    background:#0D6EFD;

    transform:scale(1.15);

    box-shadow:0 20px 45px rgba(13,110,253,.35);

}

.orbit-item:hover i{

    color:#ffffff;

}

.item-1{

    left:50%;
    top:0;

    transform:translateX(-50%);

}

.item-2{

    top:18%;
    right:4%;

}

.item-3{

    bottom:18%;
    right:4%;

}

.item-4{

    left:50%;
    bottom:0;

    transform:translateX(-50%);

}

.item-5{

    bottom:18%;
    left:4%;

}

.item-6{

    top:18%;
    left:4%;

}

@keyframes rotateOrbit{

    from{

        transform:rotate(0deg);

    }

    to{

        transform:rotate(360deg);

    }

}

@keyframes counterRotate{

    from{

        transform:rotate(0deg);

    }

    to{

        transform:rotate(-360deg);

    }

}

.visual-center{

    transition:.4s;

}

.visual-wrapper:hover .visual-center{

    box-shadow:

    0 30px 80px rgba(13,110,253,.30),

    0 0 70px rgba(244,181,72,.18);

}

.visual-wrapper:hover .visual-glow{

    transform:translate(-50%,-50%) scale(1.15);

}

/* =========================================================
   CHAVO SERVICES — FINAL CTA
   ========================================================= */

.chv-services-final {

    position: relative;

    padding: 110px 0;

    overflow: hidden;

    background: var(--chv-services-bg-secondary);

}


.chv-services-final-content {

    position: relative;

    z-index: 2;

    max-width: 900px;

    margin: 0 auto;

    padding: 75px 50px;

    text-align: center;

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

    border-radius: var(--chv-services-radius-large);

    background: var(--chv-services-surface);

    box-shadow:
        0 25px 70px var(--chv-services-shadow);

    opacity: 0;

    transform: translateY(40px);

    transition:
        opacity 0.8s ease,
        transform 0.8s ease;

}


.chv-services-final-content.chv-services-final-visible {

    opacity: 1;

    transform: translateY(0);

}


/* =========================================================
   CTA LABEL
   ========================================================= */

.chv-services-final-label {

    display: inline-block;

    margin-bottom: 20px;

    color: var(--chv-services-accent);

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 3px;

}


/* =========================================================
   CTA TITLE
   ========================================================= */

.chv-services-final-title {

    margin: 0;

    color: var(--chv-services-text);

    font-size: clamp(36px, 5vw, 58px);

    line-height: 1.12;

    font-weight: 700;

    letter-spacing: -1px;

}


.chv-services-final-title span {

    display: block;

    color: var(--chv-services-accent);

}


/* =========================================================
   CTA DESCRIPTION
   ========================================================= */

.chv-services-final-description {

    max-width: 680px;

    margin: 25px auto 0;

    color: var(--chv-services-text-muted);

    font-size: 17px;

    line-height: 30px;

}


/* =========================================================
   CTA ACTIONS
   ========================================================= */

.chv-services-final-actions {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 18px;

    margin-top: 35px;

}


/* =========================================================
   PRIMARY BUTTON
   ========================================================= */

.chv-services-final-button {

    display: inline-flex;

    align-items: center;

    gap: 12px;

    padding: 16px 30px;

    border: 1px solid var(--chv-services-accent);

    border-radius: 50px;

    background: var(--chv-services-accent);

    color: var(--chv-services-bg);

    font-size: 14px;

    font-weight: 700;

    text-decoration: none;

    transition:
        transform var(--chv-services-transition),
        background var(--chv-services-transition),
        box-shadow var(--chv-services-transition);

}


.chv-services-final-button i {

    transition: transform var(--chv-services-transition);

}


.chv-services-final-button:hover {

    transform: translateY(-4px);

    background: var(--chv-services-accent-light);

    box-shadow:
        0 15px 40px var(--chv-services-glow);

}


.chv-services-final-button:hover i {

    transform: translateX(5px);

}


/* =========================================================
   SECONDARY BUTTON
   ========================================================= */

.chv-services-final-secondary {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    padding: 15px 25px;

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

    border-radius: 50px;

    background: transparent;

    color: var(--chv-services-text-muted);

    font-size: 14px;

    font-weight: 600;

    text-decoration: none;

    transition:
        color var(--chv-services-transition),
        border-color var(--chv-services-transition),
        background var(--chv-services-transition),
        transform var(--chv-services-transition);

}


.chv-services-final-secondary i {

    color: var(--chv-services-accent);

    transition: transform var(--chv-services-transition);

}


.chv-services-final-secondary:hover {

    color: var(--chv-services-text);

    border-color: var(--chv-services-border-hover);

    background: var(--chv-services-surface-hover);

    transform: translateY(-4px);

}


.chv-services-final-secondary:hover i {

    transform: translate(3px, -3px);

}


/* =========================================================
   DECORATIVE GLOWS
   ========================================================= */

.chv-services-final-glow {

    position: absolute;

    width: 300px;

    height: 300px;

    border-radius: 50%;

    background: var(--chv-services-glow);

    filter: blur(90px);

    pointer-events: none;

}


.chv-services-final-glow-left {

    left: -150px;

    top: 50%;

    transform: translateY(-50%);

    animation: chvServicesFinalGlow 8s ease-in-out infinite;

}


.chv-services-final-glow-right {

    right: -150px;

    top: 50%;

    transform: translateY(-50%);

    animation: chvServicesFinalGlow 8s ease-in-out 2s infinite reverse;

}


@keyframes chvServicesFinalGlow {

    0%,
    100% {

        opacity: 0.5;

        transform: translateY(-50%) scale(1);

    }

    50% {

        opacity: 0.9;

        transform: translateY(-50%) scale(1.2);

    }

}

/* =========================================================
   FINAL CTA — RESPONSIVE
   ========================================================= */

@media (max-width: 767px) {

    .chv-services-final {

        padding: 80px 15px;

    }


    .chv-services-final-content {

        padding: 55px 25px;

        border-radius: var(--chv-services-radius-medium);

    }


    .chv-services-final-title {

        font-size: 34px;

    }


    .chv-services-final-description {

        font-size: 15px;

        line-height: 27px;

    }


    .chv-services-final-actions {

        flex-direction: column;

        gap: 12px;

    }


    .chv-services-final-button,
    .chv-services-final-secondary {

        width: 100%;

        justify-content: center;

    }

}


@media (max-width: 480px) {

    .chv-services-final-content {

        padding: 45px 20px;

    }


    .chv-services-final-title {

        font-size: 30px;

    }

}