/* ========================================= */
/* HERO SECTION */
/* ========================================= */

.hero-section{

    position:relative;

    padding-top:190px;

    padding-bottom:120px;

    overflow:hidden;

}

.hero-section .row{

    min-height:85vh;

}

/* HERO BADGE */

.hero-badge{

    display:inline-flex;

    align-items:center;

    gap:8px;

    padding:10px 18px;

    background:#F4FBE7;

    border-radius:50px;

    color:#7ED321;

    font-size:14px;

    font-weight:600;

    margin-bottom:28px;

}

/* HERO TITLE */

.hero-title{

    font-size:68px;

    line-height:1.1;

    margin-bottom:24px;

    font-weight:700;

    color:#222222;

}

.hero-title span{

    color:#7ED321;

}

/* HERO DESCRIPTION */

.hero-description{

    font-size:18px;

    line-height:1.8;

    color:#7C7C7C;

    margin-bottom:40px;

}

/* HERO BUTTONS */

.hero-buttons{

    display:flex;

    gap:18px;

}

/* ========================================= */
/* JARVIS */
/* ========================================= */

.jarvis-wrapper{

    position:relative;

    width:420px;

    height:420px;

    margin:auto;

}

/* RINGS */

.ring-wrap{

    position:absolute;

    top:50%;

    left:50%;

    transform:translate(-50%,-50%);

}

.ring{

    border-radius:50%;

    border:1.5px solid rgba(126,211,33,0.20);

    box-shadow:0 0 30px rgba(126,211,33,0.08);

}

/* OUTER */

.ring-1{

    width:420px;

    height:420px;

}

/* MIDDLE */

.ring-2{

    width:300px;

    height:300px;

    border-style:dashed;

}

/* INNER */

.ring-3{

    width:180px;

    height:180px;

}

/* ANIMATION */

.ring-wrap-1{

    animation:spin 18s linear infinite;

}

.ring-wrap-2{

    animation:spinReverse 14s linear infinite;

}

.ring-wrap-3{

    animation:spin 10s linear infinite;

}

/* CENTER */

.center-core{

    position:absolute;

    top:50%;

    left:50%;

    transform:translate(-50%,-50%);

}

/* DOT */

.core-dot{

    width:16px;

    height:16px;

    border-radius:50%;

    background:#7ED321;

}

/* FLOATING TAGS */

.floating-tag{

    position:absolute;

    padding:14px 22px;

    background:rgba(255,255,255,0.78);

    backdrop-filter:blur(12px);

    border-radius:50px;

    font-size:14px;

    font-weight:600;

    color:#222222;

    box-shadow:0 10px 25px rgba(0,0,0,0.06);

}

/* POSITIONS */

.tag-1{

    top:40px;

    left:0;

}

.tag-2{

    top:80px;

    right:-10px;

}

.tag-3{

    bottom:70px;

    left:-10px;

}

.tag-4{

    bottom:30px;

    right:20px;

}

/* ========================================= */
/* ANIMATIONS */
/* ========================================= */

@keyframes spin{

    from{

        transform:translate(-50%,-50%) rotate(0deg);

    }

    to{

        transform:translate(-50%,-50%) rotate(360deg);

    }

}

@keyframes spinReverse{

    from{

        transform:translate(-50%,-50%) rotate(360deg);

    }

    to{

        transform:translate(-50%,-50%) rotate(0deg);

    }

}

/* ========================================= */
/* TECH SECTION */
/* ========================================= */

.tech-section{

    padding:120px 0;

}

.tech-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:24px;

}

.tech-card{

    padding:40px 20px;

    border-radius:28px;

    background:rgba(255,255,255,0.78);

    backdrop-filter:blur(12px);

    text-align:center;

    box-shadow:0 10px 30px rgba(0,0,0,0.04);

    transition:0.35s ease;

}

.tech-card:hover{

    transform:translateY(-8px);

}

.tech-card i{

    font-size:48px;

    color:#7ED321;

    margin-bottom:18px;

}

/* ========================================= */
/* SERVICES */
/* ========================================= */

.services-section{

    padding:120px 0;

}

.services-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:28px;

}

.service-card{

    padding:40px;

    border-radius:32px;

    background:rgba(255,255,255,0.78);

    backdrop-filter:blur(14px);

    box-shadow:0 10px 30px rgba(0,0,0,0.04);

    transition:0.35s ease;

}

.service-card:hover{

    transform:translateY(-10px);

}

.service-icon{

    width:72px;

    height:72px;

    border-radius:22px;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:28px;

    background:rgba(126,211,33,0.12);

}

.service-icon i{

    font-size:30px;

    color:#7ED321;

}

/* ========================================= */
/* PLATFORM */
/* ========================================= */

.platform-section{

    padding:120px 0;

}

.platform-grid{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:32px;

    flex-wrap:wrap;

}

.platform-card{

    width:220px;

    height:180px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(255,255,255,0.78);

    backdrop-filter:blur(12px);

    border-radius:32px;

    transition:0.35s ease;

    box-shadow:0 10px 30px rgba(0,0,0,0.04);

}

.platform-card:hover{

    transform:translateY(-8px);

}

.platform-card img{

    max-width:130px;

}

/* ========================================= */
/* PORTFOLIO */
/* ========================================= */

.portfolio-section{

    padding:120px 0;

}

.portfolio-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:28px;

}

.portfolio-card{

    position:relative;

    overflow:hidden;

    border-radius:32px;

}

.portfolio-card img{

    width:100%;

    height:320px;

    object-fit:cover;

    transition:0.5s ease;

}

.portfolio-overlay{

    position:absolute;

    inset:0;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(0,0,0,0.45);

    opacity:0;

    transition:0.4s ease;

}

.portfolio-card:hover img{

    transform:scale(1.08);

}

.portfolio-card:hover .portfolio-overlay{

    opacity:1;

}
/* ========================================= */
/* WHY SECTION */
/* ========================================= */

.why-section{

    padding:120px 0;

}

/* FEATURES */

.why-features{

    margin-top:50px;

    display:flex;

    flex-direction:column;

    gap:28px;

}

/* ITEM */

.why-item{

    display:flex;

    align-items:flex-start;

    gap:20px;

}

/* ICON */

.why-icon{

    width:68px;

    height:68px;

    border-radius:22px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(126,211,33,0.12);

    flex-shrink:0;

}

.why-icon i{

    font-size:26px;

    color:#7ED321;

}

/* TITLE */

.why-item h4{

    font-size:24px;

    margin-bottom:8px;

    color:#222222;

}

/* TEXT */

.why-item p{

    font-size:16px;

    line-height:1.7;

    color:#7C7C7C;

}

/* STATS GRID */

.stats-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:24px;

}

/* CARD */

.stat-card{

    padding:50px 30px;

    border-radius:32px;

    background:rgba(255,255,255,0.78);

    backdrop-filter:blur(12px);

    text-align:center;

    box-shadow:0 10px 30px rgba(0,0,0,0.05);

    transition:0.35s ease;

}

.stat-card:hover{

    transform:translateY(-8px);

}

/* NUMBER */

.stat-card h3{

    font-size:54px;

    color:#7ED321;

    margin-bottom:12px;

}

/* TEXT */

.stat-card p{

    font-size:16px;

    color:#7C7C7C;

}

/* ========================================= */
/* CTA SECTION */
/* ========================================= */

.cta-section{

    position:relative;

    padding:120px 0;

}

/* BOX */

.cta-box{

    position:relative;

    padding:80px;

    border-radius:42px;

    overflow:hidden;

    background:linear-gradient(
        135deg,
        rgba(126,211,33,0.12),
        rgba(76,175,80,0.08)
    );

    backdrop-filter:blur(14px);

    border:1px solid rgba(255,255,255,0.4);

    text-align:center;

}

/* GLOW */

.cta-box::before{

    content:'';

    position:absolute;

    width:400px;

    height:400px;

    background:rgba(126,211,33,0.18);

    border-radius:50%;

    top:-180px;

    right:-100px;

    filter:blur(100px);

}

/* CONTENT */

.cta-content{

    position:relative;

    z-index:2;

    max-width:760px;

    margin:auto;

}

/* TITLE */

.cta-content h2{

    font-size:64px;

    line-height:1.1;

    margin-bottom:24px;

    color:#222222;

}

/* TEXT */

.cta-content p{

    font-size:20px;

    line-height:1.8;

    color:#6B7280;

    margin-bottom:40px;

}

/* BUTTONS */

.cta-buttons{

    position:relative;

    z-index:2;

    display:flex;

    justify-content:center;

    gap:18px;

}
.service-link{

    display:inline-block;

    margin-top:15px;

    font-weight:600;

    text-decoration:none;

}

.service-link:hover{

    opacity:.8;

}
/* ========================================= */
/* FAQ SECTION */
/* ========================================= */

.faq-section{

    padding:100px 0;

}

.faq-section .accordion-item{

    border:none;

    margin-bottom:15px;

    border-radius:12px;

    overflow:hidden;

}

.faq-section .accordion-button{

    font-weight:600;

    padding:20px;

}

.faq-section .accordion-body{

    padding:20px;

    line-height:1.8;

}