/* RESET */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

@import url('https://fonts.googleapis.com/css2?family=Google+Sans:wght@400;700;900&display=swap');

:root{

    --bg:#f4f7fb;

    --red:#ff6b6b;
    --orange:#ffb86b;
    --yellow:#ffe66d;
    --green:#6bff95;
    --blue:#6bcfff;
    --purple:#b06bff;

    --text:#222;

    --card:rgba(225,225,225,0.7);

    --max-width:1200px;

    --footer-text: #f4f7fb;
    --footer-bg: #222;

}

/* @media (prefers-color-scheme: dark) {
  :root {
    --bg: #222;
    --text: #ccc;
    --card: #333;
    --footer-text: #f4f7fb;
    --footer-bg: #111;
  }
} */

body{

    font-family:"Google Sans",sans-serif;

    background:var(--bg);

    color:var(--text);

    overflow-x: hidden;

}

/* BACKGROUND */

#bg{

    position:fixed;

    inset:0;

    width:100%;
    height:100%;

    z-index:-1;

}

/* NAVBAR */

.navbar{

    position:fixed;

    top:0;
    left:0;

    width:100%;

    height:80px;

    padding:0 max(5vw, calc(50% - var(--max-width)/2));

    display:flex;

    align-items:center;

    justify-content:space-between;

    background: rgb(from var(--bg) r g b / 0.7);

    backdrop-filter:blur(15px);

    z-index:10000;

}

.logo{

    font-size:1.2rem;

    font-weight:700;

}

/* LINKS */

.nav-links{

    display:flex;

    gap:30px;

}

.nav-links a{

    text-decoration:none;

    color:var(--text);

    transition:0.3s;

}

.nav-links a:hover{

    color:var(--purple);

}

/* MENU BUTTON */

.menu-toggle{
    color: var(--text);

    display:none;

    border:none;

    background:none;

    font-size:2rem;

    cursor:pointer;

}
#title {white-space: nowrap;}
/* HERO */

.hero{

    min-height:100vh;

    display:flex;

    justify-content:center;

    align-items:center;

    text-align:center;

    padding:120px 20px 20px;

}

.hero-content{

    max-width:900px;

}

.hero h1{

    font-size:clamp(3rem,8vw,6rem);

    margin-bottom:20px;

    font-weight:900;

    background:linear-gradient(
        90deg,
        var(--red),
        var(--orange),
        var(--yellow),
        var(--green),
        var(--blue),
        var(--purple)
    );

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;

}

.hero p{

    font-size:clamp(1rem,2vw,1.4rem);

    line-height:1.7;

    margin-bottom:30px;

}

/* SECTION TITLES */

.section-title{

    font-size:clamp(2rem,5vw,3rem);

    margin-bottom:40px;

    text-align:center;

}

/* SERVICES */

.services{

    padding:120px max(5vw, calc(50% - var(--max-width)/2));

}

.services-grid{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(250px,1fr));

    gap:30px;

}

.service-card{

    background:var(--card);

    padding:35px;

    border-radius:25px;

    backdrop-filter:blur(5px);

    transition:0.3s;

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

}

.service-card:hover{

    transform:translateY(-2px);

}

.service-card h3{

    margin-bottom:20px;

}

/* TEAM */

.team{

    padding:120px 20px;

    text-align:center;

}

.team-content{

    max-width:900px;

    margin:auto;

    background:var(--card);

    padding:60px;

    border-radius:30px;

    backdrop-filter:blur(10px);

    box-shadow:0 10px 30px rgba(0,0,0,0.08);

}

/* GOALS */

.goals{

    padding:120px 20px;

}

.goals-content{

    max-width:900px;

    margin:auto;

}

.goals ul{

    display:grid;

    gap:20px;

    list-style:none;

}

.goals li{

    background:var(--card);

    padding:25px;

    border-radius:20px;

    backdrop-filter:blur(5px);

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

}

/* BUTTON */

.btn{

    padding:15px 35px;

    border:none;

    border-radius:999px;

    color:white;

    cursor:pointer;

    font-size:1rem;

    background:linear-gradient(
        90deg,
        var(--blue),
        var(--purple)
    );

    transition:0.3s;

}

.btn:hover{

    transform:translateY(-5px);

    box-shadow:0 10px 25px rgba(0,0,0,0.15);

}

/* ABOUT */

.about{

    padding:100px max(5vw, calc(50% - var(--max-width)/2));

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

    gap:30px;

}

.card{

    padding:40px;

    border-radius:25px;

    background:var(--card);

    backdrop-filter:blur(5px);

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

    transition:0.3s;

}

.card:hover{

    transform:translateY(-2px);

}

.card h2{

    margin-bottom:20px;

}

.card p{

    line-height:1.7;

}

/* FOOTER */

footer{
    margin-top:100px;
    padding:30px;
    text-align:center;
    background:var(--footer-bg);
    color:var(--footer-text);

}

/* MOBILE */

@media(max-width:800px){

    .menu-toggle{

        display:block;

    }

    .nav-links{

        position:fixed;

        top:80px;

        right:-100%;

        width:260px;

        height:calc(100vh - 80px);

        background:rgb(from var(--bg) r g b / 0.9);

        backdrop-filter:blur(20px);

        flex-direction:column;

        padding:40px;

        transition:0.4s ease;

        box-shadow:-10px 0 30px rgba(0,0,0,0.1);

    }

    .nav-links.visible{

        right:0;

    }

}
