/* =======================================================
   GLOBAL CSS FILE
   Portfolio Website - Mujahid Abbas
======================================================= */

/* =======================================================
   GOOGLE FONT
======================================================= */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

/* =======================================================
   ROOT VARIABLES
======================================================= */

:root{

    --primary-color:#3b82f6;
    --secondary-color:#0ea5e9;

    --dark-color:#020617;
    --dark-light:#0f172a;

    --white-color:#ffffff;
    --text-color:#cbd5e1;

    --border-color:
        rgba(255,255,255,0.08);

    --gradient-color:
        linear-gradient(
            135deg,
            #3b82f6,
            #0ea5e9
        );

    --transition:
        all 0.4s ease;

}

/* =======================================================
   RESET CSS
======================================================= */

*{

    margin:0;
    padding:0;
    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:'Poppins', sans-serif;

    background:var(--dark-color);

    color:var(--white-color);

    overflow-x:hidden;

    position:relative;

}

/* =======================================================
   BODY GLOW EFFECT
======================================================= */

body::before{

    content:'';

    position:fixed;

    width:400px;
    height:400px;

    background:
        rgba(59,130,246,0.12);

    border-radius:50%;

    top:-120px;
    left:-120px;

    filter:blur(120px);

    z-index:-1;

}

body::after{

    content:'';

    position:fixed;

    width:350px;
    height:350px;

    background:
        rgba(14,165,233,0.12);

    border-radius:50%;

    bottom:-120px;
    right:-120px;

    filter:blur(120px);

    z-index:-1;

}

/* =======================================================
   COMMON STYLES
======================================================= */

.container{

    width:100%;
    max-width:1200px;

    margin:auto;

    padding:0 20px;

}

a{

    text-decoration:none;

    transition:var(--transition);

}

ul{

    list-style:none;

}

img{

    width:100%;
    display:block;

}
/* =======================================================
   DARK THEME COMPLETE
======================================================= */

body{

    transition:
        background 0.4s ease,
        color 0.4s ease;

}

/* =======================================================
   DARK BODY
======================================================= */

body.dark-theme{

    background:#020617;

    color:#ffffff;

}

/* =======================================================
   HEADER
======================================================= */

body.dark-theme .header{

    background:#020617;

    border-bottom:
        1px solid rgba(255,255,255,0.08);

    box-shadow:
        0 15px 45px rgba(0,0,0,0.35);

}

/* =======================================================
   LOGO
======================================================= */

body.dark-theme .logo-name{

    color:#ffffff;

}

body.dark-theme .logo-tagline{

    color:#cbd5e1;

}

/* =======================================================
   NAVBAR
======================================================= */

body.dark-theme .navbar{

    background:#0f172a;

}

/* LINKS */

body.dark-theme .nav-link{

    color:#ffffff;

}

/* ACTIVE */

body.dark-theme .nav-link.active{

    background:
        linear-gradient(
            135deg,
            #2563eb,
            #0ea5e9
        );

    color:#ffffff;

}

/* =======================================================
   ALL SECTIONS
======================================================= */

body.dark-theme .hero-section,
body.dark-theme .about-section,
body.dark-theme .skills-section,
body.dark-theme .projects-section,
body.dark-theme .blog-section,
body.dark-theme .faq-section{

    background:#020617 !important;

}

/* =======================================================
   ALL TITLES
======================================================= */

body.dark-theme h1,
body.dark-theme h2,
body.dark-theme h3,
body.dark-theme h4,
body.dark-theme h5,
body.dark-theme h6{

    color:#ffffff !important;

}

/* =======================================================
   TEXT
======================================================= */

body.dark-theme p,
body.dark-theme span{

    color:#cbd5e1 !important;

}

/* =======================================================
   CARDS
======================================================= */

body.dark-theme .about-card,
body.dark-theme .timeline-card,
body.dark-theme .project-card,
body.dark-theme .blog-card,
body.dark-theme .faq-item{

    background:
        rgba(255,255,255,0.04);

    border:
        1px solid rgba(255,255,255,0.08);

    box-shadow:
        0 15px 45px rgba(0,0,0,0.30);

}

/* =======================================================
   CARD HOVER
======================================================= */

body.dark-theme .about-card:hover,
body.dark-theme .timeline-card:hover,
body.dark-theme .project-card:hover,
body.dark-theme .blog-card:hover,
body.dark-theme .faq-item:hover{

    box-shadow:
        0 25px 60px rgba(37,99,235,0.25);

}

/* =======================================================
   FAQ
======================================================= */

body.dark-theme .faq-question h3{

    color:#ffffff;

}

/* =======================================================
   BUTTONS
======================================================= */

body.dark-theme .hero-btn,
body.dark-theme .theme-toggle{

    box-shadow:
        0 15px 35px rgba(37,99,235,0.25);

}

/* =======================================================
   TOGGLE ICON
======================================================= */

.theme-toggle{

    width:45px;
    height:45px;

    border-radius:14px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:
        linear-gradient(
            135deg,
            #2563eb,
            #0ea5e9
        );

    cursor:pointer;

    color:#ffffff;

    font-size:18px;

    box-shadow:
        0 10px 30px rgba(37,99,235,0.20);

}

/* =======================================================
   MOBILE HEADER
======================================================= */

@media(max-width:576px){

    .header .container{

        display:grid;

        grid-template-columns:
            1fr auto auto;

        align-items:center;

        gap:12px;

    }

    /* CENTER LOGO */

    .logo{

        width:100%;

    }

    .logo a{

        display:flex;

        align-items:center;

    }

    /* RIGHT SIDE */

    .header-right{

        display:flex;

        align-items:center;

        gap:10px;

    }

    /* TOGGLE */

    .theme-toggle{

        width:42px;
        height:42px;

        min-width:42px;

    }

    /* MENU */

    .menu-btn{

        width:42px;
        height:42px;

        min-width:42px;

    }

}

/* =======================================================
   FOOTER HOVER ANIMATIONS
======================================================= */

/* ===============================================
   FOOTER COLUMN
=============================================== */

.footer-col{

    position:relative;

    transition:0.5s ease;

}

/* HOVER */

.footer-col:hover{

    transform:
        translateY(-8px);

}

/* ===============================================
   FOOTER TITLES
=============================================== */

.footer-col h3{

    position:relative;

    display:inline-block;

    overflow:hidden;

}

/* LINE EFFECT */

.footer-col h3::after{

    content:'';

    position:absolute;

    left:0;
    bottom:-8px;

    width:0;
    height:3px;

    border-radius:50px;

    background:
        linear-gradient(
            135deg,
            #2563eb,
            #0ea5e9
        );

    transition:0.5s ease;

}

/* HOVER */

.footer-col:hover h3::after{

    width:100%;

}

/* ===============================================
   LINKS ANIMATION
=============================================== */

.footer-col ul li a{

    position:relative;

    transition:0.4s ease;

    display:inline-flex;

    align-items:center;

    gap:8px;

}

/* ARROW EFFECT */

.footer-col ul li a::before{

    content:'➜';

    opacity:0;

    transform:
        translateX(-10px);

    transition:0.4s ease;

    color:#2563eb;

    font-size:13px;

}

/* HOVER */

.footer-col ul li a:hover{

    color:#2563eb;

    transform:
        translateX(8px);

}

/* SHOW ARROW */

.footer-col ul li a:hover::before{

    opacity:1;

    transform:
        translateX(0);

}

/* ===============================================
   SIMPLE LIST HOVER
=============================================== */

.footer-col ul li{

    transition:0.4s ease;

}

/* HOVER */

.footer-col ul li:hover{

    transform:
        translateX(6px);

    color:#2563eb;

}

/* ===============================================
   SOCIAL ICONS
=============================================== */

.footer-social{

    display:flex;

    align-items:center;

    gap:14px;

    margin-top:25px;

}

/* ICON */

.footer-social a{

    position:relative;

    width:50px;
    height:50px;

    border-radius:18px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:
        rgba(37,99,235,0.08);

    color:#2563eb;

    font-size:20px;

    overflow:hidden;

    transition:0.5s ease;

}

/* GLOW EFFECT */

.footer-social a::before{

    content:'';

    position:absolute;

    width:120%;
    height:120%;

    background:
        linear-gradient(
            135deg,
            #2563eb,
            #0ea5e9
        );

    top:100%;
    left:100%;

    border-radius:50%;

    transition:0.5s ease;

    z-index:0;

}

/* ICON */

.footer-social a i{

    position:relative;

    z-index:2;

}

/* HOVER */

.footer-social a:hover{

    color:#ffffff;

    transform:
        translateY(-8px)
        rotate(8deg);

    box-shadow:
        0 15px 35px rgba(37,99,235,0.25);

}

/* SHOW BACKGROUND */

.footer-social a:hover::before{

    top:-10%;
    left:-10%;

}

/* ===============================================
   FOOTER PARAGRAPH
=============================================== */

.footer-col p{

    transition:0.4s ease;

}

/* HOVER */

.footer-col:hover p{

    color:#475569;

}

/* ===============================================
   COPYRIGHT
=============================================== */

.footer-bottom{

    position:relative;

    overflow:hidden;

}

/* GLOW LINE */

.footer-bottom::before{

    content:'';

    position:absolute;

    top:0;
    left:-100%;

    width:100%;
    height:2px;

    background:
        linear-gradient(
            90deg,
            transparent,
            #2563eb,
            transparent
        );

    animation:
        footerLine 4s linear infinite;

}

/* ===============================================
   ANIMATION
=============================================== */

@keyframes footerLine{

    100%{

        left:100%;

    }

}

/* ===============================================
   DARK THEME
=============================================== */

body.dark-theme .footer-col:hover p{

    color:#cbd5e1;

}

body.dark-theme .footer-social a{

    background:
        rgba(255,255,255,0.06);

    color:#ffffff;

}

/* =======================================================
   PREMIUM BLOG ICON HOVER ANIMATION
======================================================= */

.blog-icon{

    position:relative;

    width:90px;
    height:90px;

    border-radius:28px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:
        linear-gradient(
            135deg,
            #2563eb,
            #0ea5e9
        );

    color:#ffffff;

    font-size:38px;

    margin-bottom:30px;

    overflow:hidden;

    transition:0.5s ease;

    box-shadow:
        0 15px 35px rgba(37,99,235,0.20);

}

/* =======================================================
   ICON GLOW EFFECT
======================================================= */

.blog-icon::before{

    content:'';

    position:absolute;

    width:180%;
    height:180%;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,0.35),
            transparent
        );

    top:-120%;
    left:-120%;

    transform:
        rotate(25deg);

    transition:0.7s ease;

}

/* =======================================================
   ICON
======================================================= */

.blog-icon i{

    position:relative;

    z-index:2;

    transition:0.5s ease;

}

/* =======================================================
   BLOG CARD HOVER
======================================================= */

.blog-card:hover .blog-icon{

    transform:
        translateY(-12px)
        rotate(-8deg)
        scale(1.08);

    box-shadow:
        0 25px 55px rgba(37,99,235,0.35);

}

/* ICON MOVE */

.blog-card:hover .blog-icon i{

    transform:
        scale(1.15)
        rotate(8deg);

}

/* LIGHT EFFECT MOVE */

.blog-card:hover .blog-icon::before{

    top:120%;
    left:120%;

}

/* =======================================================
   FLOATING ANIMATION
======================================================= */

.blog-card:hover .blog-icon{

    animation:
        blogFloat 2s ease-in-out infinite;

}

/* =======================================================
   KEYFRAMES
======================================================= */

@keyframes blogFloat{

    0%{

        transform:
            translateY(-10px)
            rotate(-6deg);

    }

    50%{

        transform:
            translateY(-18px)
            rotate(6deg);

    }

    100%{

        transform:
            translateY(-10px)
            rotate(-6deg);

    }

}

/* =======================================================
   DARK THEME
======================================================= */

body.dark-theme .blog-icon{

    box-shadow:
        0 20px 45px rgba(37,99,235,0.30);

}

/* =======================================================
   ULTRA PREMIUM HEADER
======================================================= */

.header{

    position:fixed;

    top:0;
    left:0;

    width:100%;

    z-index:9999;

    background:#ffffff;

    border-bottom:
        1px solid rgba(59,130,246,0.08);

    box-shadow:
        0 10px 40px rgba(0,0,0,0.04);

    transition:0.4s ease;

}

/* =======================================================
   CONTAINER
======================================================= */

.header .container{

    width:100%;

    max-width:1320px;

    margin:auto;

    padding:
        0 20px;

    height:95px;

    display:flex;

    justify-content:space-between;

    align-items:center;

}

/* =======================================================
   LOGO
======================================================= */

.logo{

    display:flex;

    align-items:center;

    z-index:100;

}

/* LOGO LINK */

.logo a{

    display:flex;

    align-items:center;

    gap:16px;

    text-decoration:none;

    white-space:nowrap;

}

/* =======================================================
   LOGO ICON
======================================================= */

.logo-circle{

    width:60px;
    height:60px;

    min-width:60px;

    border-radius:22px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:
        linear-gradient(
            135deg,
            #2563eb,
            #0ea5e9
        );

    color:#ffffff;

    font-size:24px;

    font-weight:800;

    box-shadow:
        0 15px 35px rgba(37,99,235,0.25);

    transition:0.4s ease;

}

/* =======================================================
   LOGO TEXT
======================================================= */

.logo-text{

    display:flex;

    flex-direction:column;

    line-height:1.2;

}

/* NAME */

.logo-name{

    font-size:28px;

    font-weight:800;

    color:#020617;

    letter-spacing:0.3px;

}

/* SUBTITLE */

.logo-tagline{

    font-size:13px;

    font-weight:500;

    color:#64748b;

    margin-top:2px;

}

/* HOVER */

.logo:hover .logo-circle{

    transform:
        rotate(-8deg)
        scale(1.05);

}

/* =======================================================
   NAVBAR
======================================================= */

.navbar{

    display:flex;

    align-items:center;

}

/* NAV LINKS */

.nav-links{

    display:flex;

    align-items:center;

    gap:14px;

    list-style:none;

}

/* =======================================================
   NAV LINK
======================================================= */

.nav-link{

    position:relative;

    padding:14px 24px;

    border-radius:60px;

    color:#475569;

    font-size:15px;

    font-weight:600;

    text-decoration:none;

    transition:0.4s ease;

    overflow:hidden;

    z-index:1;

}

/* =======================================================
   BACKGROUND EFFECT
======================================================= */

.nav-link span{

    position:absolute;

    top:0;
    left:0;

    width:0;
    height:100%;

    border-radius:60px;

    background:
        linear-gradient(
            135deg,
            #2563eb,
            #0ea5e9
        );

    transition:0.4s ease;

    z-index:-1;

}

/* =======================================================
   HOVER EFFECT
======================================================= */

.nav-link:hover span,
.nav-link.active span{

    width:100%;

}

/* TEXT */

.nav-link:hover,
.nav-link.active{

    color:#ffffff;

    transform:
        translateY(-2px);

    box-shadow:
        0 12px 30px rgba(37,99,235,0.20);

}

/* =======================================================
   MOBILE BUTTON
======================================================= */

.menu-btn{

    width:56px;
    height:56px;

    border-radius:20px;

    display:none;

    justify-content:center;

    align-items:center;

    background:
        linear-gradient(
            135deg,
            #2563eb,
            #0ea5e9
        );

    color:#ffffff;

    font-size:22px;

    cursor:pointer;

    box-shadow:
        0 15px 35px rgba(37,99,235,0.25);

    transition:0.4s ease;

}

/* HOVER */

.menu-btn:hover{

    transform:
        scale(1.05);

}

/* =======================================================
   HEADER ACTIVE
======================================================= */

.header.active{

    box-shadow:
        0 20px 50px rgba(0,0,0,0.08);

}

/* =======================================================
   RESPONSIVE
======================================================= */

@media(max-width:991px){

    .menu-btn{

        display:flex;

    }

    .navbar{

        position:absolute;

        top:110%;
        left:20px;
        right:20px;

        background:#ffffff;

        border-radius:35px;

        padding:30px;

        box-shadow:
            0 25px 60px rgba(0,0,0,0.08);

        opacity:0;
        visibility:hidden;

        transform:
            translateY(20px);

        transition:0.4s ease;

    }

    .navbar.active{

        opacity:1;
        visibility:visible;

        transform:
            translateY(0);

    }

    .nav-links{

        flex-direction:column;

        align-items:flex-start;

        width:100%;

        gap:18px;

    }

    .nav-link{

        width:100%;

        padding:16px 22px;

        background:#f8fafc;

    }

}

@media(max-width:768px){

    .logo-name{

        font-size:22px;

    }

}

@media(max-width:576px){

    .header .container{

        height:85px;

    }

    .logo-circle{

        width:50px;
        height:50px;

        min-width:50px;

        border-radius:18px;

        font-size:20px;

    }

    .logo-name{

        font-size:18px;

    }

    .logo-tagline{

        font-size:11px;

    }

    .menu-btn{

        width:50px;
        height:50px;

        font-size:20px;

    }

}

/* =======================================================
   HEADER RESPONSIVE CSS
======================================================= */

@media(max-width:991px){

    /* ===============================================
       HEADER
    =============================================== */

    .header{

        overflow:visible;

    }

    .header .container{

        height:85px;

    }

    /* ===============================================
       MOBILE MENU BUTTON
    =============================================== */

    .menu-btn{

        display:flex;

        width:52px;
        height:52px;

        min-width:52px;

        border-radius:18px;

        justify-content:center;

        align-items:center;

        cursor:pointer;

        font-size:22px;

        color:#ffffff;

        background:
            linear-gradient(
                135deg,
                #2563eb,
                #0ea5e9
            );

        box-shadow:
            0 15px 35px rgba(37,99,235,0.25);

        z-index:1001;

    }

    /* ===============================================
       NAVBAR
    =============================================== */

    .navbar{

        position:absolute;

        top:110%;
        left:20px;
        right:20px;

        background:#ffffff;

        border-radius:35px;

        padding:30px;

        box-shadow:
            0 25px 60px rgba(0,0,0,0.08);

        opacity:0;

        visibility:hidden;

        transform:
            translateY(20px);

        transition:0.4s ease;

        z-index:999;

    }

    /* ACTIVE */

    .navbar.active{

        opacity:1;

        visibility:visible;

        transform:
            translateY(0);

    }

    /* ===============================================
       NAV LINKS
    =============================================== */

    .nav-links{

        width:100%;

        display:flex;

        flex-direction:column;

        gap:18px;

    }

    /* ===============================================
       NAV LINK
    =============================================== */

    .nav-link{

        width:100%;

        display:flex;

        align-items:center;

        justify-content:center;

        padding:16px 22px;

        border-radius:18px;

        background:#f8fafc;

        color:#020617;

        font-size:16px;

        font-weight:600;

    }

    /* HOVER */

    .nav-link:hover,
    .nav-link.active{

        color:#ffffff;

    }

    /* ===============================================
       LOGO
    =============================================== */

    .logo-name{

        font-size:22px;

    }

    .logo-tagline{

        font-size:12px;

    }

}

/* =======================================================
   TABLET
======================================================= */

@media(max-width:768px){

    .header .container{

        height:80px;

    }

    .logo a{

        gap:12px;

    }

    .logo-circle{

        width:50px;
        height:50px;

        min-width:50px;

        border-radius:18px;

        font-size:20px;

    }

    .logo-name{

        font-size:20px;

    }

    .menu-btn{

        width:48px;
        height:48px;

        min-width:48px;

        font-size:20px;

    }

}

/* =======================================================
   MOBILE
======================================================= */

@media(max-width:576px){

    .header .container{

        padding:0 15px;

    }

    /* ===============================================
       LOGO
    =============================================== */

    .logo-name{

        font-size:17px;

    }

    .logo-tagline{

        font-size:10px;

    }

    .logo-circle{

        width:45px;
        height:45px;

        min-width:45px;

        border-radius:15px;

        font-size:18px;

    }

    /* ===============================================
       NAVBAR
    =============================================== */

    .navbar{

        left:15px;
        right:15px;

        padding:25px 20px;

        border-radius:28px;

    }

    /* ===============================================
       NAV LINK
    =============================================== */

    .nav-link{

        font-size:15px;

        padding:15px 18px;

    }

    /* ===============================================
       MENU BUTTON
    =============================================== */

    .menu-btn{

        width:45px;
        height:45px;

        min-width:45px;

        border-radius:15px;

        font-size:18px;

    }

}

/* =======================================================
   MOBILE HEADER FIXED RESPONSIVE
======================================================= */

@media(max-width:576px){

    /* ===============================================
       HEADER
    =============================================== */

    .header{

        width:100%;

    }

    .header .container{

        height:80px;

        padding:0 14px;

        gap:10px;

    }

    /* ===============================================
       LOGO
    =============================================== */

    .logo{

        flex:1;

        min-width:0;

    }

    .logo a{

        gap:10px;

        width:100%;

    }

    /* LOGO ICON */

    .logo-circle{

        width:42px;
        height:42px;

        min-width:42px;

        border-radius:14px;

        font-size:17px;

    }

    /* LOGO TEXT */

    .logo-text{

        min-width:0;

    }

    .logo-name{

        font-size:16px;

        white-space:nowrap;

        overflow:hidden;

        text-overflow:ellipsis;

        line-height:1.2;

    }

    .logo-tagline{

        font-size:10px;

        line-height:1.2;

    }

    /* ===============================================
       HEADER RIGHT
    =============================================== */

    .header-right{

        gap:10px;

    }

    /* ===============================================
       THEME BUTTON
    =============================================== */

    .theme-toggle{

        width:42px;
        height:42px;

        min-width:42px;

        border-radius:14px;

        font-size:16px;

        box-shadow:
            0 10px 25px rgba(37,99,235,0.18);

    }

    /* ===============================================
       MENU BUTTON
    =============================================== */

    .menu-btn{

        width:42px;
        height:42px;

        min-width:42px;

        border-radius:14px;

        font-size:17px;

        box-shadow:
            0 10px 25px rgba(37,99,235,0.18);

    }

    /* ===============================================
       NAVBAR
    =============================================== */

    .navbar{

        position:absolute;

        top:105%;
        left:14px;
        right:14px;

        width:auto;

        background:#ffffff;

        border-radius:25px;

        padding:22px 18px;

        box-shadow:
            0 20px 50px rgba(0,0,0,0.08);

        opacity:0;

        visibility:hidden;

        transform:
            translateY(15px);

        transition:0.4s ease;

        overflow:hidden;

    }

    /* ACTIVE NAVBAR */

    .navbar.active{

        opacity:1;

        visibility:visible;

        transform:
            translateY(0);

    }

    /* ===============================================
       NAV LINKS
    =============================================== */

    .nav-links{

        width:100%;

        display:flex;

        flex-direction:column;

        gap:12px;

    }

    /* ===============================================
       NAV LINK
    =============================================== */

    .nav-link{

        width:100%;

        display:flex;

        justify-content:center;

        align-items:center;

        text-align:center;

        padding:15px 18px;

        border-radius:16px;

        font-size:15px;

        font-weight:600;

        background:#f8fafc;

        color:#020617;

        overflow:hidden;

    }

    /* BACKGROUND */

    .nav-link span{

        border-radius:16px;

    }

    /* ===============================================
       ACTIVE + HOVER
    =============================================== */

    .nav-link.active{

        color:#ffffff !important;

        background:
            linear-gradient(
                135deg,
                #2563eb,
                #0ea5e9
            );

        box-shadow:
            0 12px 30px rgba(37,99,235,0.20);

    }

    .nav-link:hover{

        color:#ffffff;

        background:
            linear-gradient(
                135deg,
                #2563eb,
                #0ea5e9
            );

    }

    /* REMOVE DOUBLE BG ISSUE */

    .nav-link.active span,
    .nav-link:hover span{

        width:0;

    }

}

/* =======================================================
   EXTRA SMALL DEVICES
======================================================= */

@media(max-width:380px){

    .logo-name{

        font-size:14px;

    }

    .logo-tagline{

        font-size:9px;

    }

    .theme-toggle,
    .menu-btn{

        width:40px;
        height:40px;

        min-width:40px;

    }

}

/* =======================================================
   UPDATED MOBILE HEADER
======================================================= */

@media(max-width:576px){

    /* ===============================================
       HEADER
    =============================================== */

    .header{

        width:100%;

        background:#020617;

        border-bottom:
            1px solid rgba(255,255,255,0.08);

    }

    .header .container{

        height:80px;

        padding:0 14px;

        gap:10px;

    }

    /* ===============================================
       LOGO
    =============================================== */

    .logo{

        flex:1;

        min-width:0;

    }

    .logo a{

        gap:10px;

        width:100%;

    }

    /* LOGO ICON */

    .logo-circle{

        width:42px;
        height:42px;

        min-width:42px;

        border-radius:14px;

        font-size:17px;

    }

    /* LOGO TEXT */

    .logo-text{

        min-width:0;

    }

    .logo-name{

        font-size:16px;

        color:#ffffff;

        white-space:nowrap;

        overflow:hidden;

        text-overflow:ellipsis;

        line-height:1.2;

    }

    .logo-tagline{

        font-size:10px;

        line-height:1.2;

        color:#cbd5e1;

    }

    /* ===============================================
       HEADER RIGHT
    =============================================== */

    .header-right{

        gap:10px;

    }

    /* ===============================================
       THEME TOGGLE
    =============================================== */

    .theme-toggle{

        width:42px;
        height:42px;

        min-width:42px;

        border-radius:14px;

        display:flex;

        justify-content:center;

        align-items:center;

        font-size:16px;

        color:#ffffff;

        background:
            linear-gradient(
                135deg,
                #2563eb,
                #0ea5e9
            );

        box-shadow:
            0 10px 25px rgba(37,99,235,0.25);

    }

    /* ICON */

    .theme-toggle i{

        color:#ffffff;

    }

    /* ===============================================
       MENU BUTTON
    =============================================== */

/* ===============================================
   MENU BUTTON FIXED
=============================================== */

.menu-btn{

    width:42px;
    height:42px;

    min-width:42px;

    border-radius:14px;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:17px;

    color:#ffffff;

    background:transparent !important;

    box-shadow:none !important;

    border:none;

    padding:0;

}

/* ICON */

.menu-btn i{

    color:#ffffff;

    font-size:22px;

}

/* HOVER */

.menu-btn:hover{

    background:transparent !important;

    box-shadow:none !important;

    transform:none;

}



    /* ===============================================
       NAVBAR
    =============================================== */

    .navbar{

        position:absolute;

        top:105%;
        left:14px;
        right:14px;

        width:auto;

        background:#0f172a;

        border:
            1px solid rgba(255,255,255,0.08);

        border-radius:25px;

        padding:22px 18px;

        box-shadow:
            0 20px 50px rgba(0,0,0,0.30);

        opacity:0;

        visibility:hidden;

        transform:
            translateY(15px);

        transition:0.4s ease;

        overflow:hidden;

    }

    /* ACTIVE NAVBAR */

    .navbar.active{

        opacity:1;

        visibility:visible;

        transform:
            translateY(0);

    }

    /* ===============================================
       NAV LINKS
    =============================================== */

    .nav-links{

        width:100%;

        display:flex;

        flex-direction:column;

        gap:12px;

    }

    /* ===============================================
       NAV LINK
    =============================================== */

    .nav-link{

        width:100%;

        display:flex;

        justify-content:center;

        align-items:center;

        text-align:center;

        padding:15px 18px;

        border-radius:16px;

        font-size:15px;

        font-weight:600;

        background:transparent !important;

        color:#ffffff;

        overflow:hidden;

        transition:0.4s ease;

    }

    /* REMOVE EXTRA BACKGROUND */

    .nav-link span{

        display:none;

    }

    /* ===============================================
       ACTIVE LINK
    =============================================== */

    .nav-link.active{

        color:#ffffff !important;

        background:
            linear-gradient(
                135deg,
                #2563eb,
                #0ea5e9
            ) !important;

        box-shadow:
            0 12px 30px rgba(37,99,235,0.25);

    }

    /* ===============================================
       HOVER
    =============================================== */

    .nav-link:hover{

        color:#ffffff;

        background:
            rgba(255,255,255,0.08) !important;

    }

}

/* =======================================================
   EXTRA SMALL DEVICES
======================================================= */

@media(max-width:380px){

    .logo-name{

        font-size:14px;

    }

    .logo-tagline{

        font-size:9px;

    }

    .theme-toggle,
    .menu-btn{

        width:40px;
        height:40px;

        min-width:40px;

    }

}
/* =======================================================
   FOOTER
======================================================= */

.footer{

    background:#01040f;

    padding-top:100px;

    margin-top:120px;

    position:relative;

    overflow:hidden;

}

/* FOOTER GLOW */

.footer::before{

    content:'';

    position:absolute;

    width:400px;
    height:400px;

    background:
        rgba(59,130,246,0.08);

    border-radius:50%;

    top:-180px;
    right:-180px;

    filter:blur(120px);

}

/* =======================================================
   FOOTER GRID
======================================================= */

.footer-container{

    display:grid;

    grid-template-columns:
        repeat(4,1fr);

    gap:40px;

    padding-bottom:70px;

}

/* =======================================================
   FOOTER COLUMN
======================================================= */

.footer-col h3{

    font-size:26px;

    margin-bottom:25px;

    position:relative;

}

/* UNDERLINE */

.footer-col h3::after{

    content:'';

    position:absolute;

    left:0;
    bottom:-10px;

    width:50px;
    height:3px;

    background:var(--gradient-color);

    border-radius:10px;

}

.footer-col p{

    color:var(--text-color);

    line-height:1.9;

    font-size:15px;

}

.footer-col ul li{

    margin-bottom:15px;

}

.footer-col ul li a{

    color:var(--text-color);

    font-size:15px;

}

.footer-col ul li a:hover{

    color:var(--primary-color);

    padding-left:6px;

}

/* =======================================================
   SOCIAL ICONS
======================================================= */

.footer-social{

    display:flex;

    align-items:center;

    gap:15px;

    margin-top:25px;

}

.footer-social a{

    width:45px;
    height:45px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:
        rgba(255,255,255,0.05);

    border:
        1px solid rgba(255,255,255,0.08);

    color:var(--white-color);

    font-size:18px;

}

.footer-social a:hover{

    background:var(--gradient-color);

    transform:
        translateY(-6px);

    box-shadow:
        0 0 25px rgba(59,130,246,0.35);

}

/* =======================================================
   FOOTER BOTTOM
======================================================= */

.footer-bottom{

    border-top:
        1px solid rgba(255,255,255,0.08);

    text-align:center;

    padding:25px 0;

}

.footer-bottom p{

    color:var(--text-color);

    font-size:15px;

}

/* =======================================================
   FLOATING BUTTONS
======================================================= */

.call-btn,
.whatsapp-btn{

    position:fixed;

    width:60px;
    height:60px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#fff;

    font-size:24px;

    z-index:999;

    box-shadow:
        0 0 30px rgba(0,0,0,0.35);

    animation:
        pulseButton 2s infinite;

}

/* CALL */

.call-btn{

    left:20px;
    bottom:20px;

    background:#3b82f6;

}

/* WHATSAPP */

.whatsapp-btn{

    right:20px;
    bottom:20px;

    background:#25d366;

}

/* HOVER */

.call-btn:hover,
.whatsapp-btn:hover{

    transform:scale(1.1);

}

/* =======================================================
   PULSE ANIMATION
======================================================= */

@keyframes pulseButton{

    0%{

        box-shadow:
            0 0 0 0 rgba(59,130,246,0.5);

    }

    70%{

        box-shadow:
            0 0 0 18px rgba(59,130,246,0);

    }

    100%{

        box-shadow:
            0 0 0 0 rgba(59,130,246,0);

    }

}

/* =======================================================
   RESPONSIVE DESIGN
======================================================= */

@media(max-width:991px){

    /* FOOTER */

    .footer-container{

        grid-template-columns:
            repeat(2,1fr);

    }

}

/* =======================================================
   TABLET
======================================================= */

@media(max-width:768px){

    /* HEADER */

    .menu-btn{

        display:block;

    }

    .navbar{

        position:absolute;

        top:100%;
        left:0;

        width:100%;

        background:#0f172a;

        border-top:
            1px solid rgba(255,255,255,0.08);

        opacity:0;
        visibility:hidden;

        transform:
            translateY(-20px);

        transition:0.4s ease;

    }

    .navbar.active{

        opacity:1;
        visibility:visible;

        transform:
            translateY(0);

    }

    .nav-links{

        flex-direction:column;

        padding:30px 0;

        gap:25px;

    }

    /* FOOTER */

    .footer{

        padding-top:80px;

    }

    .footer-container{

        grid-template-columns:1fr;

        gap:50px;

    }

}

/* =======================================================
   MOBILE
======================================================= */

@media(max-width:576px){

    /* CONTAINER */

    .container{

        padding:0 15px;

    }

    /* LOGO */

    .logo a{

        font-size:24px;

    }

    /* FOOTER */

    .footer-col h3{

        font-size:24px;

    }

    .footer-col p,
    .footer-col ul li a{

        font-size:14px;

    }

    /* BUTTONS */

    .call-btn,
    .whatsapp-btn{

        width:55px;
        height:55px;

        font-size:22px;

    }

    .call-btn{

        left:15px;
        bottom:15px;

    }

    .whatsapp-btn{

        right:15px;
        bottom:15px;

    }

}

/* =======================================================
   SMALL MOBILE
======================================================= */

@media(max-width:400px){

    .logo a{

        font-size:20px;

    }

    .footer-bottom p{

        font-size:13px;

    }

}
/* =======================================================
   HERO SECTION
======================================================= */

.hero-section{

    position:relative;

    min-height:100vh;

    display:flex;

    align-items:center;

    background:#ffffff;

    overflow:hidden;

    padding-top:120px;

}

/* =======================================================
   HERO CONTAINER
======================================================= */

.hero-container{

    display:grid;

    grid-template-columns:
        repeat(2,1fr);

    gap:70px;

    align-items:center;

}

/* =======================================================
   GLOW EFFECTS
======================================================= */

.hero-glow{

    position:absolute;

    border-radius:50%;

    filter:blur(120px);

    z-index:0;

}

.hero-glow-1{

    width:350px;
    height:350px;

    background:
        rgba(59,130,246,0.15);

    top:-100px;
    left:-100px;

}

.hero-glow-2{

    width:300px;
    height:300px;

    background:
        rgba(14,165,233,0.15);

    bottom:-100px;
    right:-100px;

}

/* =======================================================
   HERO CONTENT
======================================================= */

.hero-content{

    position:relative;

    z-index:2;

    animation:
        contentLeft 1.4s ease forwards;

    opacity:0;

}

/* LEFT TO RIGHT */

@keyframes contentLeft{

    from{

        transform:
            translateX(-120px);

        opacity:0;

    }

    to{

        transform:
            translateX(0);

        opacity:1;

    }

}

/* =======================================================
   MINI TITLE
======================================================= */

.hero-mini-title{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:12px 24px;

    border-radius:50px;

    background:
        rgba(59,130,246,0.08);

    color:#3b82f6;

    font-size:15px;

    font-weight:600;

    margin-bottom:25px;

}

/* =======================================================
   TITLES
======================================================= */

.hero-subtitle{

    font-size:28px;

    color:#64748b;

    margin-bottom:10px;

}

.hero-title{

    font-size:75px;

    font-weight:800;

    color:#020617;

    line-height:1.1;

    margin-bottom:20px;

}

.hero-heading{

    font-size:38px;

    line-height:1.5;

    color:#0f172a;

    margin-bottom:25px;

}

/* =======================================================
   DESCRIPTION
======================================================= */

.hero-description{

    color:#475569;

    font-size:17px;

    line-height:1.9;

    margin-bottom:35px;

    max-width:650px;

}

/* =======================================================
   BUTTONS
======================================================= */

.hero-buttons{

    display:flex;

    align-items:center;

    gap:20px;

    margin-bottom:35px;

}

.hero-btn{

    padding:15px 35px;

    border-radius:50px;

    font-size:16px;

    font-weight:600;

    transition:0.4s ease;

}

/* PRIMARY BUTTON */

.primary-btn{

    background:
        linear-gradient(
            135deg,
            #3b82f6,
            #0ea5e9
        );

    color:#ffffff;

    box-shadow:
        0 0 30px rgba(59,130,246,0.25);

}

.primary-btn:hover{

    transform:
        translateY(-6px);

}

/* SECONDARY BUTTON */

.secondary-btn{

    border:
        2px solid #3b82f6;

    color:#3b82f6;

}

.secondary-btn:hover{

    background:#3b82f6;

    color:#ffffff;

}

/* =======================================================
   SOCIAL ICONS
======================================================= */

.hero-social{

    display:flex;

    align-items:center;

    gap:18px;

}

.hero-social a{

    width:48px;
    height:48px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:#f1f5f9;

    color:#3b82f6;

    font-size:18px;

    transition:0.4s ease;

}

.hero-social a:hover{

    background:#3b82f6;

    color:#ffffff;

    transform:
        translateY(-5px);

}

/* =======================================================
   HERO IMAGE
======================================================= */

.hero-image{

    position:relative;

    width:500px;
    height:500px;

    margin:auto;

    display:flex;

    justify-content:center;

    align-items:center;

    animation:
        imageRight 1.5s ease forwards;

    opacity:0;

}

/* RIGHT TO LEFT */

@keyframes imageRight{

    from{

        transform:
            translateX(120px);

        opacity:0;

    }

    to{

        transform:
            translateX(0);

        opacity:1;

    }

}

/* =======================================================
   ROTATING BORDER
======================================================= */

.circle-animation{

    position:absolute;

    width:100%;
    height:100%;

    border-radius:50%;

    background:
        linear-gradient(
            45deg,
            #3b82f6,
            #0ea5e9,
            transparent,
            #3b82f6
        );

    animation:
        rotateCircle 8s linear infinite;

}

/* ROTATION */

@keyframes rotateCircle{

    100%{

        transform:rotate(360deg);

    }

}

/* =======================================================
   IMAGE WRAPPER
======================================================= */

.image-wrapper{

    width:420px;
    height:420px;

    border-radius:50%;

    overflow:hidden;

    position:relative;

    z-index:2;

    border:
        8px solid #ffffff;

    box-shadow:
        0 0 40px rgba(59,130,246,0.25);

}

.image-wrapper img{

    width:100%;
    height:100%;

    object-fit:cover;

}

/* =======================================================
   FLOATING ICONS
======================================================= */

.floating-icon{

    position:absolute;

    width:70px;
    height:70px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:#ffffff;

    color:#3b82f6;

    font-size:28px;

    box-shadow:
        0 0 30px rgba(59,130,246,0.15);

    z-index:3;

    animation:
        floatingIcons 3s ease-in-out infinite;

}

/* FLOAT ANIMATION */

@keyframes floatingIcons{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-12px);

    }

    100%{

        transform:translateY(0);

    }

}

/* ICON POSITIONS */

.icon-1{

    top:20px;
    left:20px;

}

.icon-2{

    top:60px;
    right:0;

}

.icon-3{

    bottom:40px;
    left:0;

}

.icon-4{

    bottom:20px;
    right:30px;

}

/* =======================================================
   RESPONSIVE
======================================================= */

@media(max-width:991px){

    .hero-container{

        grid-template-columns:1fr;

        text-align:center;

    }

    .hero-description{

        margin:auto;
        margin-bottom:35px;

    }

    .hero-buttons{

        justify-content:center;

    }

    .hero-social{

        justify-content:center;

    }

}

@media(max-width:768px){

    .hero-title{

        font-size:55px;

    }

    .hero-heading{

        font-size:30px;

    }

    .hero-image{

        width:380px;
        height:380px;

    }

    .image-wrapper{

        width:300px;
        height:300px;

    }

}

@media(max-width:576px){

    .hero-title{

        font-size:42px;

    }

    .hero-heading{

        font-size:24px;

    }

    .hero-subtitle{

        font-size:22px;

    }

    .hero-description{

        font-size:15px;

    }

    .hero-buttons{

        flex-direction:column;

    }

    .hero-btn{

        width:100%;

        text-align:center;

    }

    .hero-image{

        width:320px;
        height:320px;

    }

    .image-wrapper{

        width:250px;
        height:250px;

    }

    .floating-icon{

        width:55px;
        height:55px;

        font-size:22px;

    }

}

/* =======================================================
   ABOUT SECTION
======================================================= */

.about-section{

    position:relative;

    background:#ffffff;

    padding:120px 0;

    overflow:hidden;

}

/* =======================================================
   GLOW EFFECT
======================================================= */

.about-glow{

    position:absolute;

    border-radius:50%;

    filter:blur(120px);

    z-index:0;

}

.about-glow-1{

    width:350px;
    height:350px;

    background:
        rgba(59,130,246,0.12);

    top:-100px;
    left:-100px;

}

.about-glow-2{

    width:300px;
    height:300px;

    background:
        rgba(14,165,233,0.12);

    bottom:-100px;
    right:-100px;

}

/* =======================================================
   SECTION TITLE
======================================================= */

.section-title{

    text-align:center;

    margin-bottom:80px;

    position:relative;

    z-index:2;

}

.section-mini-title{

    display:inline-block;

    padding:12px 24px;

    border-radius:50px;

    background:
        rgba(59,130,246,0.08);

    color:#3b82f6;

    font-size:15px;

    font-weight:600;

    margin-bottom:25px;

}

.section-title h2{

    font-size:52px;

    line-height:1.3;

    color:#020617;

    margin-bottom:20px;

}

.section-title p{

    max-width:700px;

    margin:auto;

    color:#475569;

    line-height:1.9;

    font-size:17px;

}

/* =======================================================
   ABOUT WRAPPER
======================================================= */

.about-wrapper{

    display:grid;

    grid-template-columns:
        repeat(2,1fr);

    gap:70px;

    align-items:center;

    position:relative;

    z-index:2;

}

/* =======================================================
   LEFT SIDE
======================================================= */

.about-left{

    display:flex;

    flex-direction:column;

    gap:30px;

}

/* =======================================================
   3D CARDS
======================================================= */

.about-card{

    position:relative;

    background:#ffffff;

    border:
        1px solid rgba(59,130,246,0.08);

    border-radius:30px;

    padding:35px;

    overflow:hidden;

    transition:0.5s ease;

    transform-style:preserve-3d;

    box-shadow:
        0 15px 40px rgba(0,0,0,0.08);

}

/* CARD HOVER */

.about-card:hover{

    transform:
        rotateY(10deg)
        rotateX(10deg)
        translateY(-12px);

    box-shadow:
        0 20px 50px rgba(59,130,246,0.18);

}

/* CARD GLOW */

.about-card::before{

    content:'';

    position:absolute;

    width:200px;
    height:200px;

    background:
        rgba(59,130,246,0.08);

    border-radius:50%;

    top:-100px;
    right:-100px;

    filter:blur(40px);

}

/* =======================================================
   CARD ICON
======================================================= */

.card-icon{

    width:80px;
    height:80px;

    border-radius:25px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:
        linear-gradient(
            135deg,
            #3b82f6,
            #0ea5e9
        );

    color:#ffffff;

    font-size:32px;

    margin-bottom:25px;

    box-shadow:
        0 0 30px rgba(59,130,246,0.25);

}

/* =======================================================
   CARD TEXT
======================================================= */

.about-card h3{

    font-size:30px;

    color:#020617;

    margin-bottom:18px;

}

.about-card p{

    color:#475569;

    line-height:1.8;

    font-size:16px;

}

/* =======================================================
   RIGHT SIDE
======================================================= */

.about-right{

    position:relative;

}

/* TAG */

.about-tag{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:12px 24px;

    border-radius:50px;

    background:
        rgba(59,130,246,0.08);

    color:#3b82f6;

    font-size:15px;

    font-weight:600;

    margin-bottom:25px;

}

/* HEADING */

.about-right h3{

    font-size:48px;

    line-height:1.4;

    color:#020617;

    margin-bottom:25px;

}

/* TEXT */

.about-right p{

    color:#475569;

    line-height:1.9;

    margin-bottom:20px;

    font-size:16px;

}

/* =======================================================
   STATS BOXES
======================================================= */

.about-stats{

    display:flex;

    flex-wrap:wrap;

    gap:20px;

    margin-top:40px;

}

/* STAT BOX */

.stat-box{

    flex:1;

    min-width:180px;

    padding:35px 25px;

    border-radius:30px;

    background:#ffffff;

    border:
        1px solid rgba(59,130,246,0.08);

    text-align:center;

    transition:0.4s ease;

    position:relative;

    overflow:hidden;

    box-shadow:
        0 10px 35px rgba(0,0,0,0.06);

}

/* HOVER */

.stat-box:hover{

    transform:
        translateY(-10px);

    box-shadow:
        0 20px 45px rgba(59,130,246,0.15);

}

/* ICON */

.stat-icon{

    width:70px;
    height:70px;

    margin:auto;

    border-radius:20px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:
        linear-gradient(
            135deg,
            #3b82f6,
            #0ea5e9
        );

    color:#ffffff;

    font-size:28px;

    margin-bottom:25px;

    box-shadow:
        0 0 30px rgba(59,130,246,0.25);

}

/* NUMBER */

.stat-box h4{

    font-size:42px;

    color:#020617;

    margin-bottom:10px;

    font-weight:700;

}

/* PLUS SIGN */

.stat-box h4::after{

    content:"+";

    color:#3b82f6;

}

/* TEXT */

.stat-box span{

    color:#475569;

    font-size:15px;

}

/* =======================================================
   RESPONSIVE
======================================================= */

@media(max-width:991px){

    .about-wrapper{

        grid-template-columns:1fr;

    }

    .about-right{

        text-align:center;

    }

    .about-stats{

        justify-content:center;

    }

}

@media(max-width:768px){

    .section-title h2{

        font-size:38px;

    }

    .about-right h3{

        font-size:38px;

    }

}

@media(max-width:576px){

    .section-title h2{

        font-size:30px;

    }

    .about-right h3{

        font-size:30px;

    }

    .about-card{

        padding:28px;

    }

    .stat-box{

        width:100%;

    }

}

/* =======================================================
   UPDATED PREMIUM SKILLS SECTION
======================================================= */

.skills-section{

    position:relative;

    background:#ffffff;

    padding:120px 0;

    overflow:hidden;

}

/* =======================================================
   GLOW EFFECT
======================================================= */

.skills-glow{

    position:absolute;

    border-radius:50%;

    filter:blur(120px);

    z-index:0;

}

.skills-glow-1{

    width:350px;
    height:350px;

    background:
        rgba(59,130,246,0.10);

    top:-120px;
    left:-120px;

}

.skills-glow-2{

    width:320px;
    height:320px;

    background:
        rgba(14,165,233,0.10);

    bottom:-120px;
    right:-120px;

}

/* =======================================================
   TIMELINE WRAPPER
======================================================= */

.skills-timeline{

    position:relative;

    display:flex;

    justify-content:space-between;

    gap:25px;

    margin-top:100px;

    flex-wrap:wrap;

    z-index:2;

}

/* =======================================================
   TIMELINE LINE
======================================================= */

.timeline-line{

    position:absolute;

    top:42px;
    left:0;

    width:100%;
    height:8px;

    background:
        rgba(59,130,246,0.08);

    border-radius:50px;

    overflow:hidden;

}

/* PROGRESS LINE */

.timeline-progress{

    position:absolute;

    top:0;
    left:0;

    width:0;

    height:100%;

    border-radius:50px;

    background:
        linear-gradient(
            90deg,
            #3b82f6,
            #0ea5e9,
            #38bdf8
        );

    box-shadow:
        0 0 25px rgba(59,130,246,0.35);

    transition:3s ease;

}

/* ACTIVE */

.skills-section.active
.timeline-progress{

    width:100%;

}

/* =======================================================
   TIMELINE ITEM
======================================================= */

.timeline-item{

    position:relative;

    flex:1;

    min-width:180px;

    padding-top:80px;

    opacity:0;

    transform:
        translateY(100px);

    transition:1s ease;

}

/* ACTIVE */

.skills-section.active
.timeline-item{

    opacity:1;

    transform:
        translateY(0);

}

/* =======================================================
   DOT
======================================================= */

.timeline-dot{

    position:absolute;

    top:24px;
    left:50%;

    transform:
        translateX(-50%);

    width:38px;
    height:38px;

    border-radius:50%;

    background:
        linear-gradient(
            135deg,
            #3b82f6,
            #0ea5e9
        );

    border:
        6px solid #ffffff;

    box-shadow:
        0 0 30px rgba(59,130,246,0.35);

    z-index:5;

}

/* =======================================================
   CARD
======================================================= */

.timeline-card{

    position:relative;

    background:#ffffff;

    border:
        1px solid rgba(59,130,246,0.08);

    border-radius:30px;

    padding:35px 25px;

    text-align:center;

    overflow:hidden;

    transition:0.5s ease;

    box-shadow:
        0 15px 40px rgba(0,0,0,0.06);

}

/* CARD GLOW */

.timeline-card::before{

    content:'';

    position:absolute;

    width:220px;
    height:220px;

    background:
        rgba(59,130,246,0.08);

    border-radius:50%;

    top:-120px;
    right:-120px;

    filter:blur(40px);

}

/* HOVER */

.timeline-card:hover{

    transform:
        translateY(-15px)
        rotateY(8deg)
        rotateX(8deg);

    box-shadow:
        0 20px 55px rgba(59,130,246,0.16);

}

/* =======================================================
   ICON
======================================================= */

.skill-icon{

    width:90px;
    height:90px;

    margin:auto;

    border-radius:25px;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:42px;

    color:#ffffff;

    margin-bottom:25px;

    box-shadow:
        0 0 35px rgba(59,130,246,0.20);

}

/* COLORS */

.wordpress{

    background:
        linear-gradient(
            135deg,
            #21759b,
            #3b82f6
        );

}

.php{

    background:
        linear-gradient(
            135deg,
            #777bb3,
            #6366f1
        );

}

.laravel{

    background:
        linear-gradient(
            135deg,
            #ff2d20,
            #f87171
        );

}

.html{

    background:
        linear-gradient(
            135deg,
            #f97316,
            #fb923c
        );

}

.css{

    background:
        linear-gradient(
            135deg,
            #0ea5e9,
            #38bdf8
        );

}

.js{

    background:
        linear-gradient(
            135deg,
            #eab308,
            #fde047
        );

}

.shopify{

    background:
        linear-gradient(
            135deg,
            #22c55e,
            #4ade80
        );

}

/* =======================================================
   CARD TEXT
======================================================= */

.timeline-card h3{

    font-size:24px;

    color:#020617;

    margin-bottom:20px;

}

.timeline-card h4{

    font-size:26px;

    color:#3b82f6;

    margin-top:18px;

}

/* =======================================================
   PROGRESS BAR
======================================================= */

.skill-progress-bar{

    width:100%;
    height:12px;

    background:
        rgba(59,130,246,0.08);

    border-radius:50px;

    overflow:hidden;

    position:relative;

}

/* PROGRESS */

.skill-progress{

    display:block;

    width:0;

    height:100%;

    border-radius:50px;

    transition:3s ease;

}

/* ACTIVE WIDTH */

.skills-section.active
.wordpress-progress{

    width:98%;

}

.skills-section.active
.php-progress{

    width:90%;

}

.skills-section.active
.laravel-progress{

    width:80%;

}

.skills-section.active
.html-progress{

    width:100%;

}

.skills-section.active
.css-progress{

    width:98%;

}

.skills-section.active
.js-progress{

    width:80%;

}

.skills-section.active
.shopify-progress{

    width:85%;

}

/* COLORS */

.wordpress-progress{

    background:
        linear-gradient(
            90deg,
            #21759b,
            #3b82f6
        );

}

.php-progress{

    background:
        linear-gradient(
            90deg,
            #777bb3,
            #6366f1
        );

}

.laravel-progress{

    background:
        linear-gradient(
            90deg,
            #ff2d20,
            #f87171
        );

}

.html-progress{

    background:
        linear-gradient(
            90deg,
            #f97316,
            #fb923c
        );

}

.css-progress{

    background:
        linear-gradient(
            90deg,
            #0ea5e9,
            #38bdf8
        );

}

.js-progress{

    background:
        linear-gradient(
            90deg,
            #eab308,
            #fde047
        );

}

.shopify-progress{

    background:
        linear-gradient(
            90deg,
            #22c55e,
            #4ade80
        );

}

/* =======================================================
   FLOATING ANIMATION
======================================================= */

.timeline-item:nth-child(2){

    animation-delay:0.2s;

}

.timeline-item:nth-child(3){

    animation-delay:0.4s;

}

.timeline-item:nth-child(4){

    animation-delay:0.6s;

}

.timeline-item:nth-child(5){

    animation-delay:0.8s;

}

.timeline-item:nth-child(6){

    animation-delay:1s;

}

.timeline-item:nth-child(7){

    animation-delay:1.2s;

}

/* =======================================================
   RESPONSIVE
======================================================= */

@media(max-width:1200px){

    .timeline-item{

        min-width:220px;

    }

}

@media(max-width:991px){

    .skills-timeline{

        justify-content:center;

        gap:35px;

    }

}

@media(max-width:768px){

    .timeline-line{

        display:none;

    }

    .skills-timeline{

        flex-direction:column;

        gap:40px;

    }

    .timeline-item{

        width:100%;

        padding-top:0;

    }

    .timeline-dot{

        display:none;

    }

}

@media(max-width:576px){

    .timeline-card{

        padding:30px 22px;

    }

    .timeline-card h3{

        font-size:22px;

    }

    .skill-icon{

        width:75px;
        height:75px;

        font-size:34px;

    }

}
/* =======================================================
   UPDATED PREMIUM PROJECT SECTION
======================================================= */

.projects-section{

    position:relative;

    background:#ffffff;

    padding:120px 0;

    overflow:hidden;

}

/* =======================================================
   GLOW EFFECT
======================================================= */

.projects-glow{

    position:absolute;

    border-radius:50%;

    filter:blur(120px);

    z-index:0;

}

.projects-glow-1{

    width:350px;
    height:350px;

    background:
        rgba(59,130,246,0.10);

    top:-120px;
    left:-120px;

}

.projects-glow-2{

    width:320px;
    height:320px;

    background:
        rgba(14,165,233,0.10);

    bottom:-120px;
    right:-120px;

}

/* =======================================================
   PROJECT GRID
======================================================= */

.projects-grid{

    position:relative;

    z-index:2;

    display:grid;

    grid-template-columns:
        repeat(3,1fr);

    gap:35px;

    margin-top:80px;

}

/* =======================================================
   PROJECT CARD
======================================================= */

.project-card{

    position:relative;

    background:#ffffff;

    border:
        1px solid rgba(59,130,246,0.08);

    border-radius:35px;

    overflow:hidden;

    transition:0.5s ease;

    box-shadow:
        0 15px 40px rgba(0,0,0,0.06);

}

/* GLOW EFFECT */

.project-card::before{

    content:'';

    position:absolute;

    width:220px;
    height:220px;

    background:
        rgba(59,130,246,0.08);

    border-radius:50%;

    top:-120px;
    right:-120px;

    filter:blur(40px);

}

/* HOVER EFFECT */

.project-card:hover{

    transform:
        translateY(-15px)
        rotateY(6deg)
        rotateX(6deg);

    box-shadow:
        0 25px 60px rgba(59,130,246,0.18);

}

/* =======================================================
   IMAGE
======================================================= */

.project-image{

    position:relative;

    overflow:hidden;

    height:260px;

}

.project-image img{

    width:100%;
    height:100%;

    object-fit:cover;

    transition:0.6s ease;

}

/* IMAGE HOVER */

.project-card:hover
.project-image img{

    transform:scale(1.08);

}

/* =======================================================
   OVERLAY
======================================================= */

.project-overlay{

    position:absolute;

    top:0;
    left:0;

    width:100%;
    height:100%;

    background:
        rgba(255,255,255,0.15);

    backdrop-filter:blur(6px);

    display:flex;

    justify-content:center;

    align-items:center;

    opacity:0;

    transition:0.5s ease;

}

.project-card:hover
.project-overlay{

    opacity:1;

}

/* ICON */

.project-overlay a{

    width:75px;
    height:75px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:
        linear-gradient(
            135deg,
            #3b82f6,
            #0ea5e9
        );

    color:#ffffff;

    font-size:26px;

    transform:
        scale(0);

    transition:0.5s ease;

    box-shadow:
        0 0 35px rgba(59,130,246,0.35);

}

/* ICON HOVER */

.project-card:hover
.project-overlay a{

    transform:scale(1);

}

/* =======================================================
   CONTENT
======================================================= */

.project-content{

    padding:35px 30px;

    position:relative;

    z-index:2;

}

/* TAG */

.project-tag{

    display:inline-block;

    padding:10px 20px;

    border-radius:50px;

    background:
        rgba(59,130,246,0.08);

    color:#3b82f6;

    font-size:14px;

    font-weight:600;

    margin-bottom:20px;

}

/* TITLE */

.project-content h3{

    font-size:30px;

    color:#020617;

    margin-bottom:18px;

    line-height:1.3;

}

/* TEXT */

.project-content p{

    color:#475569;

    line-height:1.9;

    font-size:15px;

}

/* =======================================================
   RESPONSIVE
======================================================= */

@media(max-width:1200px){

    .projects-grid{

        grid-template-columns:
            repeat(2,1fr);

    }

}

@media(max-width:768px){

    .projects-grid{

        grid-template-columns:1fr;

    }

}

@media(max-width:576px){

    .project-content{

        padding:28px 22px;

    }

    .project-content h3{

        font-size:25px;

    }

}

/* =======================================================
   UPDATED BLOG SECTION
   SAME STYLE AS PREVIOUS SECTIONS
======================================================= */

.blog-section{

    position:relative;

    background:#ffffff;

    padding:120px 0;

    overflow:hidden;

}

/* =======================================================
   GLOW EFFECT
======================================================= */

.blog-glow{

    position:absolute;

    border-radius:50%;

    filter:blur(120px);

    z-index:0;

}

.blog-glow-1{

    width:350px;
    height:350px;

    background:
        rgba(59,130,246,0.10);

    top:-120px;
    left:-120px;

}

.blog-glow-2{

    width:320px;
    height:320px;

    background:
        rgba(14,165,233,0.10);

    bottom:-120px;
    right:-120px;

}

/* =======================================================
   BLOG GRID
======================================================= */

.blog-grid{

    position:relative;

    z-index:2;

    display:grid;

    grid-template-columns:
        repeat(3,1fr);

    gap:35px;

    margin-top:80px;

}

/* =======================================================
   BLOG CARD
======================================================= */

.blog-card{

    position:relative;

    background:#ffffff;

    border:
        1px solid rgba(59,130,246,0.08);

    border-radius:35px;

    padding:40px 35px;

    overflow:hidden;

    transition:0.5s ease;

    box-shadow:
        0 15px 40px rgba(0,0,0,0.06);

}

/* CARD GLOW */

.blog-card::before{

    content:'';

    position:absolute;

    width:220px;
    height:220px;

    background:
        rgba(59,130,246,0.08);

    border-radius:50%;

    top:-120px;
    right:-120px;

    filter:blur(40px);

}

/* HOVER */

.blog-card:hover{

    transform:
        translateY(-15px)
        rotateY(6deg)
        rotateX(6deg);

    box-shadow:
        0 25px 60px rgba(59,130,246,0.18);

}

/* =======================================================
   ICON
======================================================= */

.blog-icon{

    width:90px;
    height:90px;

    border-radius:25px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:
        linear-gradient(
            135deg,
            #3b82f6,
            #0ea5e9
        );

    color:#ffffff;

    font-size:38px;

    margin-bottom:30px;

    box-shadow:
        0 0 35px rgba(59,130,246,0.25);

}

/* =======================================================
   CATEGORY
======================================================= */

.blog-category{

    display:inline-block;

    padding:10px 20px;

    border-radius:50px;

    background:
        rgba(59,130,246,0.08);

    color:#3b82f6;

    font-size:14px;

    font-weight:600;

    margin-bottom:25px;

}

/* =======================================================
   TITLE
======================================================= */

.blog-card h3{

    font-size:30px;

    line-height:1.4;

    color:#020617;

    margin-bottom:20px;

    transition:0.4s ease;

}

/* HOVER */

.blog-card:hover h3{

    color:#3b82f6;

}

/* =======================================================
   TEXT
======================================================= */

.blog-card p{

    color:#475569;

    line-height:1.9;

    font-size:15px;

    margin-bottom:30px;

}

/* =======================================================
   META
======================================================= */

.blog-meta{

    display:flex;

    align-items:center;

    gap:20px;

    flex-wrap:wrap;

    border-top:
        1px solid rgba(59,130,246,0.08);

    padding-top:20px;

}

.blog-meta span{

    color:#64748b;

    font-size:14px;

    display:flex;

    align-items:center;

    gap:8px;

}

/* =======================================================
   RESPONSIVE
======================================================= */

@media(max-width:1200px){

    .blog-grid{

        grid-template-columns:
            repeat(2,1fr);

    }

}

@media(max-width:768px){

    .blog-grid{

        grid-template-columns:1fr;

    }

}

@media(max-width:576px){

    .blog-card{

        padding:30px 24px;

    }

    .blog-card h3{

        font-size:24px;

    }

    .blog-icon{

        width:75px;
        height:75px;

        font-size:30px;

    }

}

/* =======================================================
   UPDATED FAQ SECTION
======================================================= */

.faq-section{

    position:relative;

    background:#ffffff;

    padding:120px 0;

    overflow:hidden;

}

/* =======================================================
   GLOW EFFECT
======================================================= */

.faq-glow{

    position:absolute;

    border-radius:50%;

    filter:blur(120px);

    z-index:0;

}

.faq-glow-1{

    width:350px;
    height:350px;

    background:
        rgba(59,130,246,0.10);

    top:-120px;
    left:-120px;

}

.faq-glow-2{

    width:320px;
    height:320px;

    background:
        rgba(14,165,233,0.10);

    bottom:-120px;
    right:-120px;

}

/* =======================================================
   FAQ WRAPPER
======================================================= */

.faq-wrapper{

    position:relative;

    z-index:2;

    max-width:950px;

    margin:auto;

    margin-top:80px;

}

/* =======================================================
   FAQ ITEM
======================================================= */

.faq-item{

    position:relative;

    background:#ffffff;

    border:
        1px solid rgba(59,130,246,0.08);

    border-radius:35px;

    margin-bottom:25px;

    overflow:hidden;

    transition:0.5s ease;

    box-shadow:
        0 15px 40px rgba(0,0,0,0.06);

}

/* CARD GLOW */

.faq-item::before{

    content:'';

    position:absolute;

    width:220px;
    height:220px;

    background:
        rgba(59,130,246,0.08);

    border-radius:50%;

    top:-120px;
    right:-120px;

    filter:blur(40px);

}

/* HOVER */

.faq-item:hover{

    transform:
        translateY(-8px)
        rotateY(4deg);

    box-shadow:
        0 20px 50px rgba(59,130,246,0.16);

}

/* =======================================================
   QUESTION
======================================================= */

.faq-question{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:20px;

    padding:30px 35px;

    cursor:pointer;

    position:relative;

    z-index:2;

}

/* TITLE */

.faq-question h3{

    font-size:24px;

    color:#020617;

    line-height:1.5;

}

/* =======================================================
   ICON
======================================================= */

.faq-icon{

    min-width:55px;
    height:55px;

    border-radius:18px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:
        linear-gradient(
            135deg,
            #3b82f6,
            #0ea5e9
        );

    color:#ffffff;

    font-size:20px;

    transition:0.4s ease;

    box-shadow:
        0 0 25px rgba(59,130,246,0.25);

}

/* ACTIVE */

.faq-item.active
.faq-icon{

    transform:rotate(45deg);

}

/* =======================================================
   ANSWER
======================================================= */

.faq-answer{

    max-height:0;

    overflow:hidden;

    transition:
        max-height 0.5s ease;

}

/* ACTIVE */

.faq-item.active
.faq-answer{

    max-height:300px;

}

/* TEXT */

.faq-answer p{

    padding:
        0 35px 35px 35px;

    color:#475569;

    line-height:1.9;

    font-size:16px;

}

/* =======================================================
   RESPONSIVE
======================================================= */

@media(max-width:768px){

    .faq-question{

        padding:25px;

    }

    .faq-question h3{

        font-size:20px;

    }

}

@media(max-width:576px){

    .faq-question{

        padding:22px;

    }

    .faq-question h3{

        font-size:18px;

    }

    .faq-answer p{

        padding:
            0 22px 25px 22px;

        font-size:15px;

    }

    .faq-icon{

        min-width:48px;
        height:48px;

        font-size:18px;

    }

}
