/* ========================================= */
/* GOOGLE FONT */
/* ========================================= */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');


/* ========================================= */
/* RESET */
/* ========================================= */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    scroll-behavior:smooth;
    -webkit-tap-highlight-color:transparent;
}


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

html{

    overflow-x:hidden;

    width:100%;

}


body{

    font-family:'Poppins',sans-serif;

    background:#070B1A;

    color:white;

    overflow-x:hidden;

    width:100%;

    max-width:100vw;

    -webkit-font-smoothing:antialiased;

    -webkit-overflow-scrolling:touch;

}


/* ========================================= */
/* LINKS */
/* ========================================= */

a{

    text-decoration:none;

    color:white;

}


/* ========================================= */
/* NAVBAR */
/* ========================================= */

header{

    position:fixed;

    width:100%;

    top:0;

    left:0;

    z-index:1000;

    -webkit-backdrop-filter:blur(12px);

    backdrop-filter:blur(12px);

    background:rgba(8,12,30,.75);

}


/* Navbar Container */

.navbar{

    width:90%;

    margin:auto;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:20px 0;

}


/* Logo */

.logo h2{

    font-size:32px;

    font-weight:700;

}

.logo span{

    color:#EC4899;

}


/* Navigation */

.nav-links{

    display:flex;

    list-style:none;

}


.nav-links li{

    margin-left:35px;

}


.nav-links a{

    transition:.3s;

    font-weight:500;

}


.nav-links a:hover{

    color:#EC4899;

}


/* Resume Button */

.resume-btn{

    padding:12px 22px;

    background:#EC4899;

    border-radius:30px;

    transition:.3s;

    font-weight:600;

    -webkit-appearance:none;
    appearance:none;

}


.resume-btn:hover{

    background:#8B5CF6;

}


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

.hero{

    width:90%;

    min-height:100vh;

    min-height:100dvh;

    margin:auto;

    display:flex;

    justify-content:space-between;

    align-items:center;

}


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

.hero-text{

    width:55%;

}


.hello{

    color:#EC4899;

    font-size:22px;

    margin-bottom:15px;

}


.hero h1{

    font-size:70px;

    line-height:1.1;

}


.hero h2{

    margin-top:20px;

    font-size:34px;

    color:#8B5CF6;

    height:45px;

}


.description{

    margin-top:25px;

    color:#B8B8B8;

    line-height:32px;

    font-size:18px;

}


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

.hero-buttons{

    margin-top:40px;

}


.btn{

    display:inline-block;

    padding:15px 28px;

    border-radius:40px;

    transition:.3s;

    font-weight:600;

    -webkit-appearance:none;
    appearance:none;

}


.primary{

    background:#EC4899;

    margin-right:20px;

}


.primary:hover{

    background:#8B5CF6;

    transform:translateY(-5px);

}


.secondary{

    border:2px solid #EC4899;

}


.secondary:hover{

    background:#EC4899;

}


/* ========================================= */
/* SOCIAL ICONS */
/* ========================================= */

.social-icons{

    margin-top:45px;

}


.social-icons a{

    display:inline-flex;

    width:55px;

    height:55px;

    justify-content:center;

    align-items:center;

    margin-right:18px;

    border-radius:50%;

    border:2px solid #EC4899;

    transition:.3s;

    font-size:22px;

}


.social-icons a:hover{

    background:#EC4899;

    transform:translateY(-8px);

}


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

.hero-image{

    width:40%;

    display:flex;

    justify-content:center;

    align-items:center;

    position:relative;

}


/* Pink Glow */

.glow-circle{

    width:430px;

    height:430px;

    background:#EC4899;

    position:absolute;

    border-radius:50%;

    -webkit-filter:blur(130px);

    filter:blur(130px);

    opacity:.35;

}


/* Profile Image */

.hero-image img{

    width:380px;

    border-radius:50%;

    border:5px solid #EC4899;

    position:relative;

    z-index:10;

    transition:.5s;

}


.hero-image img:hover{

    transform:scale(1.05);

}


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

@media(max-width:992px){

.hero{

flex-direction:column-reverse;

text-align:center;

padding-top:150px;

}

.hero-text{

width:100%;

}

.hero-image{

width:100%;

margin-bottom:50px;

}

.hero h1{

font-size:52px;

}

.nav-links{

display:none;

}

.resume-btn{

display:none;

}

}/* ========================================= */
/* TECH STACK SECTION */
/* ========================================= */

.tech-stack{

    width:90%;

    margin:100px auto;

    text-align:center;

}


.tech-stack h2{

    font-size:35px;

    margin-bottom:45px;

}


.tech-icons{

    display:flex;

    justify-content:center;

    flex-wrap:wrap;

    gap:25px;

}


.tech-card{

    width:150px;

    height:140px;

    padding:25px 15px;

    background:rgba(255,255,255,0.05);

    border:1px solid rgba(236,72,153,0.3);

    border-radius:15px;

    transition:0.4s;

}


.tech-card i{

    font-size:45px;

    color:#EC4899;

    margin-bottom:15px;

}


.tech-card p{

    font-size:16px;

    color:#d1d5db;

}


.tech-card:hover{

    transform:translateY(-10px);

    background:rgba(236,72,153,0.12);

    box-shadow:0 0 25px rgba(236,72,153,0.35);

}


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

.stats{

    width:90%;

    margin:100px auto;

    display:grid;

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

    gap:25px;

}


.stat-card{

    padding:35px 20px;

    text-align:center;

    background:rgba(255,255,255,0.05);

    border:1px solid rgba(139,92,246,0.3);

    border-radius:15px;

    transition:0.4s;

}


.stat-card h2{

    font-size:28px;

    color:#EC4899;

    margin-bottom:10px;

}


.stat-card p{

    color:#b8b8b8;

}


.stat-card:hover{

    transform:translateY(-10px);

    box-shadow:0 0 25px rgba(139,92,246,0.35);

}


/* ========================================= */
/* CONTACT PREVIEW */
/* ========================================= */

.contact-preview{

    width:90%;

    max-width:900px;

    margin:120px auto 100px;

    padding:60px 30px;

    text-align:center;

    background:rgba(255,255,255,0.05);

    border:1px solid rgba(236,72,153,0.3);

    border-radius:20px;

}


.contact-preview h2{

    font-size:40px;

    color:#EC4899;

    margin-bottom:20px;

}


.contact-preview > p{

    color:#b8b8b8;

    font-size:17px;

    line-height:30px;

}


.contact-info{

    margin-top:30px;

}


.contact-info p{

    margin:15px 0;

    font-size:17px;

}


.contact-info i{

    color:#EC4899;

    margin-right:10px;

}


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

footer{

    padding:30px;

    text-align:center;

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

    color:#9ca3af;

}


footer p{

    font-size:14px;

}


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

body::before{

    content:"";

    position:fixed;

    width:300px;

    height:300px;

    background:#8B5CF6;

    border-radius:50%;

    -webkit-filter:blur(150px);

    filter:blur(150px);

    opacity:0.15;

    top:20%;

    left:-150px;

    z-index:-1;

}


body::after{

    content:"";

    position:fixed;

    width:300px;

    height:300px;

    background:#EC4899;

    border-radius:50%;

    -webkit-filter:blur(150px);

    filter:blur(150px);

    opacity:0.12;

    bottom:10%;

    right:-150px;

    z-index:-1;

}


/* ========================================= */
/* MOBILE RESPONSIVE DESIGN */
/* ========================================= */

@media(max-width:768px){

    /* Navbar */

    .navbar{

        width:90%;

    }


    .logo h2{

        font-size:25px;

    }


    /* Hero */

    .hero{

        width:90%;

    }


    .hero-image img{

        width:280px;

    }


    .glow-circle{

        width:300px;

        height:300px;

    }


    .hero h1{

        font-size:42px;

    }


    .hero h2{

        font-size:25px;

    }


    .description{

        font-size:15px;

        line-height:27px;

    }


    .hero-buttons{

        display:flex;

        flex-direction:column;

        align-items:center;

        gap:15px;

    }


    .primary{

        margin-right:0;

    }


    .social-icons{

        margin-top:30px;

    }


    /* Tech Stack */

    .tech-stack h2{

        font-size:28px;

    }


    .tech-card{

        width:130px;

        height:125px;

    }


    .tech-card i{

        font-size:35px;

    }


    /* Stats */

    .stats{

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

        gap:15px;

    }


    .stat-card{

        padding:25px 10px;

    }


    .stat-card h2{

        font-size:22px;

    }


    .stat-card p{

        font-size:13px;

    }


    /* Contact */

    .contact-preview{

        padding:40px 20px;

    }


    .contact-preview h2{

        font-size:30px;

    }


    /* Background Glow - scaled down for mobile */

    body::before,

    body::after{

        width:140px;

        height:140px;

        opacity:0.08;

    }

}


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

@media(max-width:480px){

    .hero-image img{

        width:230px;

    }


    .glow-circle{

        width:240px;

        height:240px;

    }


    .hero h1{

        font-size:35px;

    }


    .hero h2{

        font-size:21px;

    }


    .stats{

        grid-template-columns:1fr;

    }


    .tech-icons{

        gap:15px;

    }


    .tech-card{

        width:120px;

    }

}


/* ========================================= */
/* HAMBURGER MENU (single source of truth) */
/* ========================================= */

/* Hidden on desktop */

.menu-toggle{

    display:none;

    background:none;

    border:none;

    cursor:pointer;

    -webkit-appearance:none;
    appearance:none;

}


@media(max-width:768px){

    /* Navbar row on mobile */

    .navbar{

        position:relative;

        flex-direction:row;

        justify-content:space-between;

        align-items:center;

        padding:20px;

    }


    /* Show hamburger button - blue, matches accent palette */

    .menu-toggle{

        display:block;

        font-size:26px;

        color:#3B82F6;

        z-index:1001;

    }


    /* Hide menu by default - dark theme dropdown, not white */

    .nav-links{

        display:none;

        position:absolute;

        top:100%;

        left:0;

        width:100%;

        flex-direction:column;

        align-items:center;

        text-align:center;

        gap:0;

        padding:10px 0 20px;

        background:rgba(8,12,30,0.98);

        -webkit-backdrop-filter:blur(12px);

        backdrop-filter:blur(12px);

        border-top:1px solid rgba(236,72,153,0.25);

        box-shadow:0 15px 30px rgba(0,0,0,0.4);

        z-index:1000;

    }


    /* Show menu when JavaScript adds active */

    .nav-links.active{

        display:flex;

    }


    /* Individual menu items */

    .nav-links li{

        width:100%;

        margin-left:0;

        padding:14px 0;

    }


    /* Menu links - keep site's white text on dark background */

    .nav-links li a{

        display:block;

        width:100%;

        color:white;

        font-size:16px;

    }


    /* Hover effect - matches desktop nav's pink hover */

    .nav-links li a:hover{

        color:#EC4899;

    }


    /* Hide resume button on mobile */

    .resume-btn{

        display:none;

    }

}
/* ========================================= */
/* ABOUT PAGE */
/* ========================================= */


/* ABOUT HERO */

.about-hero{

    min-height:50vh;

    display:flex;

    justify-content:center;

    align-items:center;

    text-align:center;

    padding:150px 20px 70px;

}


.about-heading h1{

    font-size:60px;

    margin:20px 0;

}


.about-heading h1 span,

.about-text h2 span,

.section-heading h2 span,

.goals-content h2 span{

    color:#EC4899;

}


.section-label{

    color:#EC4899;

    font-weight:600;

    letter-spacing:2px;

    font-size:14px;

}


.about-subtitle{

    color:#b8b8b8;

    max-width:700px;

    line-height:30px;

}


/* INTRODUCTION */

.about-introduction{

    width:90%;

    max-width:1200px;

    margin:80px auto;

    display:grid;

    grid-template-columns:350px 1fr;

    gap:80px;

    align-items:center;

}


.about-image img{

    width:100%;

    border-radius:20px;

    border:3px solid #EC4899;

    box-shadow:0 0 40px rgba(236,72,153,.25);

}


.about-text h2{

    font-size:38px;

    margin:20px 0;

}


.about-text p{

    color:#b8b8b8;

    line-height:30px;

    margin:15px 0;

}


/* PERSONAL INFORMATION */

.personal-info{

    width:90%;

    max-width:1200px;

    margin:120px auto;

    text-align:center;

}


.personal-info > h2{

    font-size:38px;

    margin-bottom:40px;

}


.personal-info > h2 span{

    color:#EC4899;

}


.info-grid{

    display:grid;

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

    gap:25px;

}


.info-card{

    padding:30px 20px;

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

    border:1px solid rgba(236,72,153,.25);

    border-radius:15px;

    transition:.4s;

}


.info-card:hover{

    transform:translateY(-8px);

    box-shadow:0 0 25px rgba(236,72,153,.25);

}


.info-card i{

    color:#EC4899;

    font-size:30px;

    margin-bottom:15px;

}


.info-card h3{

    margin-bottom:10px;

}


.info-card p{

    color:#b8b8b8;

}


/* SECTION HEADING */

.section-heading{

    text-align:center;

    margin-bottom:50px;

}


.section-heading h2{

    font-size:40px;

    margin-top:15px;

}


/* EDUCATION */

.education-section{

    width:90%;

    max-width:1000px;

    margin:120px auto;

}


.education-timeline{

    display:flex;

    flex-direction:column;

    gap:25px;

}


.education-card{

    display:flex;

    gap:25px;

    padding:30px;

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

    border-left:3px solid #EC4899;

    border-radius:12px;

    transition:.4s;

}


.education-card:hover{

    transform:translateX(10px);

    background:rgba(236,72,153,.08);

}


.education-icon{

    min-width:55px;

    height:55px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    background:#EC4899;

    color:white;

    font-size:22px;

}


.education-date{

    color:#EC4899;

    font-size:14px;

    font-weight:600;

}


.education-content h3{

    font-size:23px;

    margin:8px 0;

}


.education-content h4{

    color:#8B5CF6;

    margin-bottom:12px;

}


.education-content p{

    color:#b8b8b8;

    line-height:27px;

}


/* INTERESTS */

.interests-section{

    width:90%;

    max-width:1200px;

    margin:120px auto;

}


.interests-grid{

    display:grid;

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

    gap:25px;

}


.interest-card{

    padding:30px;

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

    border:1px solid rgba(139,92,246,.25);

    border-radius:15px;

    transition:.4s;

}


.interest-card:hover{

    transform:translateY(-8px);

    box-shadow:0 0 25px rgba(139,92,246,.25);

}


.interest-card i{

    font-size:35px;

    color:#EC4899;

    margin-bottom:20px;

}


.interest-card h3{

    margin-bottom:12px;

}


.interest-card p{

    color:#b8b8b8;

    line-height:27px;

}


/* SEO */

.seo-section{

    width:90%;

    max-width:1000px;

    margin:120px auto;

}


.seo-skills{

    display:flex;

    justify-content:center;

    flex-wrap:wrap;

    gap:15px;

}


.seo-skills span{

    padding:12px 20px;

    border-radius:30px;

    border:1px solid #EC4899;

    color:#f8fafc;

    transition:.3s;

}


.seo-skills span:hover{

    background:#EC4899;

    transform:translateY(-4px);

}


/* GOALS */

.goals-section{

    width:90%;

    max-width:1000px;

    margin:120px auto;

    padding:60px;

    text-align:center;

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

    border:1px solid rgba(236,72,153,.3);

    border-radius:20px;

}


.goals-content h2{

    font-size:40px;

    margin:20px 0;

}


.goals-content > p{

    max-width:750px;

    margin:20px auto;

    color:#b8b8b8;

    line-height:30px;

}


.goals-content .btn{

    margin-top:20px;

}


/* ========================================= */
/* ABOUT PAGE RESPONSIVE DESIGN */
/* ========================================= */

@media(max-width:900px){

    .about-introduction{

        grid-template-columns:1fr;

        text-align:center;

    }


    .about-image{

        max-width:350px;

        margin:auto;

    }


    .info-grid{

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

    }


    .interests-grid{

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

    }

}


@media(max-width:600px){

    .about-heading h1{

        font-size:40px;

    }


    .about-text h2{

        font-size:30px;

    }


    .info-grid{

        grid-template-columns:1fr;

    }


    .interests-grid{

        grid-template-columns:1fr;

    }


    .education-card{

        flex-direction:column;

    }


    .education-icon{

        width:55px;

    }


    .goals-section{

        padding:40px 20px;

    }


    .goals-content h2{

        font-size:30px;

    }

}
/* ========================================= */
/* PROJECTS PAGE */
/* ========================================= */


/* PROJECT HERO */

.projects-hero{

    min-height:55vh;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

    padding:150px 20px 80px;

}


.projects-hero h1{

    font-size:60px;

    margin:20px 0;

}


.projects-hero h1 span{

    color:#EC4899;

}


.projects-hero > p:last-child{

    max-width:700px;

    color:#b8b8b8;

    line-height:30px;

}


/* PROJECTS CONTAINER */

.projects-container{

    width:90%;

    max-width:1200px;

    margin:50px auto 120px;

}


/* PROJECT SHOWCASE */

.project-showcase{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:70px;

    align-items:center;

    margin-bottom:130px;

}


/* REVERSE PROJECT */

.reverse-project .project-image{

    order:2;

}


.reverse-project .project-details{

    order:1;

}


/* PROJECT IMAGE */

.project-image{

    overflow:hidden;

    border-radius:20px;

    border:1px solid rgba(236,72,153,.3);

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

}


.project-image img{

    width:100%;

    display:block;

    transition:.5s;

}


.project-image:hover img{

    transform:scale(1.05);

}


/* PROJECT DETAILS */

.project-number{

    color:#EC4899;

    font-size:18px;

    font-weight:600;

}


.project-category{

    color:#8B5CF6;

    font-size:13px;

    letter-spacing:2px;

    margin:15px 0;

}


.project-details h2{

    font-size:42px;

    margin-bottom:20px;

}


.project-details > p{

    color:#b8b8b8;

    line-height:29px;

    margin-bottom:18px;

}


/* PROJECT ROLE */

.project-role{

    margin:25px 0;

    padding-left:20px;

    border-left:2px solid #EC4899;

}


.project-role strong{

    color:#EC4899;

}


.project-role p{

    color:#b8b8b8;

    line-height:27px;

    margin-top:8px;

}


/* TECHNOLOGIES */

.project-technologies{

    display:flex;

    flex-wrap:wrap;

    gap:10px;

    margin:25px 0;

}


.project-technologies span{

    padding:8px 14px;

    border:1px solid rgba(236,72,153,.5);

    border-radius:20px;

    font-size:12px;

    color:#d1d5db;

}


/* PROJECT BUTTONS */

.project-buttons{

    display:flex;

    flex-wrap:wrap;

    gap:15px;

    margin-top:30px;

}


.project-btn{

    display:inline-flex;

    align-items:center;

    gap:8px;

    padding:12px 20px;

    border-radius:25px;

    font-size:14px;

    font-weight:600;

    transition:.3s;

}


.primary-project-btn{

    background:#EC4899;

}


.primary-project-btn:hover{

    background:#8B5CF6;

    transform:translateY(-4px);

}


.secondary-project-btn{

    border:1px solid #EC4899;

}


.secondary-project-btn:hover{

    background:#EC4899;

    transform:translateY(-4px);

}


/* PROJECT CTA */

.projects-cta{

    width:90%;

    max-width:900px;

    margin:50px auto 120px;

    padding:70px 30px;

    text-align:center;

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

    border:1px solid rgba(236,72,153,.3);

    border-radius:20px;

}


.projects-cta h2{

    font-size:40px;

    margin:20px 0;

}


.projects-cta h2 span{

    color:#EC4899;

}


.projects-cta > p:not(.section-label){

    color:#b8b8b8;

    margin-bottom:30px;

}


/* PROJECTS RESPONSIVE */

@media(max-width:900px){

    .project-showcase{

        grid-template-columns:1fr;

        gap:35px;

        margin-bottom:90px;

    }


    .reverse-project .project-image{

        order:1;

    }


    .reverse-project .project-details{

        order:2;

    }


    .project-details{

        text-align:center;

    }


    .project-role{

        text-align:left;

    }


    .project-technologies{

        justify-content:center;

    }


    .project-buttons{

        justify-content:center;

    }

}


@media(max-width:600px){

    .projects-hero h1{

        font-size:40px;

    }


    .project-details h2{

        font-size:32px;

    }


    .projects-cta{

        padding:45px 20px;

    }


    .projects-cta h2{

        font-size:30px;

    }

}
/* ========================================= */
/* SKILLS PAGE */
/* ========================================= */


/* SKILLS HERO */

.skills-hero{

    min-height:55vh;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

    padding:150px 20px 80px;

}


.skills-hero h1{

    font-size:60px;

    margin:20px 0;

}


.skills-hero h1 span{

    color:#EC4899;

}


.skills-hero > p:last-child{

    max-width:700px;

    color:#b8b8b8;

    line-height:30px;

}


/* SKILLS CATEGORY */

.skills-category{

    width:90%;

    max-width:1200px;

    margin:100px auto;

}


/* CATEGORY HEADING */

.skills-category-heading{

    display:flex;

    align-items:center;

    gap:20px;

    margin-bottom:40px;

}


.skills-category-heading > i{

    width:60px;

    height:60px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    background:#EC4899;

    font-size:25px;

}


.skills-category-heading h2{

    font-size:35px;

    margin-top:8px;

}


.skills-category-heading h2 span{

    color:#EC4899;

}


/* SKILLS GRID */

.skills-grid{

    display:grid;

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

    gap:25px;

}


/* SKILL CARD */

.skill-card{

    padding:30px;

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

    border:1px solid rgba(236,72,153,.25);

    border-radius:15px;

    transition:.4s;

}


.skill-card:hover{

    transform:translateY(-8px);

    box-shadow:0 0 30px rgba(236,72,153,.25);

}


/* CARD TOP */

.skill-card-top{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:20px;

}


.skill-card-top i{

    font-size:38px;

    color:#EC4899;

}


.skill-card-top span{

    font-size:11px;

    padding:6px 10px;

    border-radius:15px;

    color:#d1d5db;

    background:rgba(236,72,153,.12);

}


/* CARD TEXT */

.skill-card h3{

    font-size:21px;

    margin-bottom:12px;

}


.skill-card > p{

    color:#b8b8b8;

    line-height:26px;

    font-size:14px;

    min-height:75px;

}


/* SKILL BAR */

.skill-bar{

    width:100%;

    height:7px;

    margin-top:25px;

    border-radius:10px;

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

    overflow:hidden;

}


.skill-progress{

    height:100%;

    border-radius:10px;

    background:#EC4899;

}


/* Skill Progress Levels */

.python-progress{

    width:65%;

}


.cpp-progress{

    width:70%;

}


.html-progress{

    width:80%;

}


.css-progress{

    width:70%;

}


.javascript-progress{

    width:45%;

}


.ai-progress{

    width:45%;

}


.problem-progress{

    width:70%;

}


.cs-progress{

    width:60%;

}


.seo-progress{

    width:75%;

}


.shopify-progress{

    width:75%;

}


.keyword-progress{

    width:70%;

}


.gsc-progress{

    width:65%;

}


/* TOOLS SECTION */

.tools-section{

    width:90%;

    max-width:1000px;

    margin:120px auto;

}


.tools-list{

    display:flex;

    justify-content:center;

    flex-wrap:wrap;

    gap:20px;

}


.tool-item{

    display:flex;

    align-items:center;

    gap:12px;

    padding:15px 22px;

    border:1px solid rgba(139,92,246,.4);

    border-radius:30px;

    transition:.3s;

}


.tool-item i{

    color:#EC4899;

    font-size:20px;

}


.tool-item:hover{

    background:rgba(236,72,153,.1);

    transform:translateY(-5px);

}


/* SKILLS CTA */

.skills-cta{

    width:90%;

    max-width:900px;

    margin:50px auto 120px;

    padding:70px 30px;

    text-align:center;

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

    border:1px solid rgba(236,72,153,.3);

    border-radius:20px;

}


.skills-cta h2{

    font-size:40px;

    margin:20px 0;

}


.skills-cta h2 span{

    color:#EC4899;

}


.skills-cta > p:not(.section-label){

    max-width:650px;

    margin:0 auto 30px;

    color:#b8b8b8;

    line-height:28px;

}


/* RESPONSIVE DESIGN */

@media(max-width:1000px){

    .skills-grid{

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

    }

}


@media(max-width:600px){

    .skills-hero h1{

        font-size:42px;

    }


    .skills-category-heading{

        align-items:flex-start;

    }


    .skills-category-heading h2{

        font-size:27px;

    }


    .skills-grid{

        grid-template-columns:1fr;

    }


    .skills-cta{

        padding:45px 20px;

    }


    .skills-cta h2{

        font-size:30px;

    }

}
/* ========================================= */
/* CONTACT PAGE */
/* ========================================= */


/* CONTACT HERO */

.contact-hero{

    min-height:50vh;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

    padding:150px 20px 70px;

}


.contact-hero h1{

    font-size:60px;

    margin:20px 0;

}


.contact-hero h1 span{

    color:#EC4899;

}


.contact-hero > p:last-child{

    max-width:700px;

    color:#b8b8b8;

    line-height:30px;

}


/* CONTACT CONTAINER */

.contact-container{

    width:90%;

    max-width:1150px;

    margin:50px auto 120px;

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:80px;

    align-items:start;

}


/* CONTACT INFORMATION */

.contact-information h2{

    font-size:38px;

    margin:20px 0;

}


.contact-information h2 span{

    color:#EC4899;

}


.contact-information > p:not(.section-label){

    color:#b8b8b8;

    line-height:29px;

    margin-bottom:40px;

}


/* CONTACT ITEM */

.contact-item{

    display:flex;

    align-items:center;

    gap:18px;

    margin:25px 0;

}


.contact-icon{

    width:50px;

    height:50px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    background:rgba(236,72,153,.15);

    color:#EC4899;

    font-size:20px;

}


.contact-item h3{

    font-size:16px;

    margin-bottom:4px;

}


.contact-item a{

    color:#b8b8b8;

    transition:.3s;

}


.contact-item a:hover{

    color:#EC4899;

}


.contact-item p{

    color:#b8b8b8;

}


/* SOCIAL LINKS */

.social-links{

    display:flex;

    gap:15px;

    margin-top:40px;

}


.social-links a{

    width:45px;

    height:45px;

    display:flex;

    justify-content:center;

    align-items:center;

    border:1px solid rgba(236,72,153,.5);

    border-radius:50%;

    color:#EC4899;

    transition:.3s;

}


.social-links a:hover{

    color:white;

    background:#EC4899;

    transform:translateY(-5px);

}


/* CONTACT FORM */

.contact-form-container{

    padding:35px;

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

    border:1px solid rgba(236,72,153,.3);

    border-radius:20px;

}


.form-group{

    margin-bottom:22px;

}


.form-group label{

    display:block;

    margin-bottom:8px;

    font-size:14px;

    font-weight:500;

}


.form-group input,

.form-group textarea{

    width:100%;

    padding:14px 16px;

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

    border-radius:8px;

    background:rgba(0,0,0,.2);

    color:white;

    font-family:inherit;

    font-size:14px;

    outline:none;

    transition:.3s;

    -webkit-appearance:none;
    appearance:none;

}


.form-group input:focus,

.form-group textarea:focus{

    border-color:#EC4899;

    box-shadow:0 0 10px rgba(236,72,153,.2);

}


.form-group textarea{

    resize:vertical;

}


.submit-btn{

    width:100%;

    padding:14px;

    border:none;

    border-radius:8px;

    background:#EC4899;

    color:white;

    font-family:inherit;

    font-size:15px;

    font-weight:600;

    cursor:pointer;

    transition:.3s;

    -webkit-appearance:none;
    appearance:none;

}


.submit-btn:hover{

    background:#8B5CF6;

    transform:translateY(-3px);

}


.submit-btn i{

    margin-left:8px;

}


/* FORM SUCCESS MESSAGE */

#formMessage{

    text-align:center;

    margin-top:15px;

    font-size:14px;

}


/* AVAILABILITY SECTION */

.availability-section{

    width:90%;

    max-width:900px;

    margin:0 auto 120px;

    padding:30px;

    display:flex;

    align-items:center;

    gap:20px;

    border:1px solid rgba(139,92,246,.4);

    border-radius:15px;

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

}


.availability-icon{

    font-size:35px;

    color:#EC4899;

}


.availability-section h2{

    font-size:20px;

    margin-bottom:8px;

}


.availability-section p{

    color:#b8b8b8;

    line-height:25px;

}


/* CONTACT RESPONSIVE */

@media(max-width:800px){

    .contact-container{

        grid-template-columns:1fr;

        gap:50px;

    }


    .contact-information{

        text-align:center;

    }


    .contact-item{

        justify-content:center;

        text-align:left;

    }


    .social-links{

        justify-content:center;

    }


    .contact-hero h1{

        font-size:42px;

    }

}


@media(max-width:500px){

    .contact-form-container{

        padding:25px 20px;

    }


    .availability-section{

        flex-direction:column;

        text-align:center;

    }

}