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


:root{
    --bg-main:#f7f7f7;
    --bg-card:#ffffff;

    --orange:#ff5e00;
    --gold:#fbbf24;

    --text:#111;
    --muted:#333;

    --border:4px solid #111;

    --shadow:8px 8px 0 #111;
    --shadow-small:5px 5px 0 #111;
}


*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Space Grotesk',sans-serif;
}


body{

    background:var(--bg-main);

    color:var(--text);

    line-height:1.8;

    font-size:18px;

}



/* NAVBAR */


nav{

    padding:18px 6%;

    background:white;

    border-bottom:var(--border);

    box-shadow:0 5px 0 #111;

    display:flex;

    justify-content:space-between;

    align-items:center;

    position:sticky;

    top:0;

    z-index:100;

}



.logo{

    font-size:32px;

    font-weight:900;

    text-transform:uppercase;

}



.logo::first-letter{

    color:var(--orange);

}



nav a{

    color:#111;

    text-decoration:none;

    font-size:17px;

    font-weight:800;

    margin-left:25px;

}



nav a:hover{

    color:var(--orange);

}





/* CONTAINER */


.container{

    max-width:1200px;

    margin:auto;

    padding:50px 25px;

}




/* HERO */


.hero{

    text-align:center;

    padding:70px 20px;

}



.hero h1{

    font-size:60px;

    font-weight:900;

    line-height:1.1;

    text-transform:uppercase;

}



.hero span{

    background:var(--orange);

    color:white;

    padding:0 12px;

    border:var(--border);

    box-shadow:var(--shadow-small);

}



.hero p{

    max-width:750px;

    margin:25px auto;

    font-size:21px;

    color:var(--muted);

}





/* CARD */


.card{

    background:var(--bg-card);

    border:var(--border);

    box-shadow:var(--shadow);

    padding:40px;

    margin-bottom:40px;

    transition:.15s;

}



.card:hover{

    transform:translate(2px,2px);

    box-shadow:5px 5px 0 #111;

}



.card h2{

    color:var(--orange);

    font-size:36px;

    font-weight:900;

    margin-bottom:20px;

    text-transform:uppercase;

}



.card h3{

    font-size:25px;

    font-weight:900;

    margin-top:25px;

}



.card p{

    color:#222;

    font-size:19px;

    margin-bottom:20px;

}



.card ul{

    margin-left:30px;

}



.card li{

    font-size:18px;

    margin-bottom:10px;

}




/* FEATURE */


.feature{

    display:grid;

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

    gap:25px;

}



.box{

    background:white;

    border:var(--border);

    box-shadow:var(--shadow-small);

    padding:30px;

}



.box:hover{

    transform:translate(3px,3px);

}



.box h3{

    color:var(--orange);

    font-size:25px;

    font-weight:900;

    margin-bottom:15px;

}



.box p{

    color:#333;

    font-size:17px;

}





/* BUTTON */

.btn{

    display:inline-block;

    background:var(--orange);

    color:white;

    padding:14px 25px;

    border:var(--border);

    box-shadow:var(--shadow-small);

    text-decoration:none;

    font-weight:900;

    font-size:17px;

}


.btn:hover{

    transform:translate(3px,3px);

    box-shadow:3px 3px 0 #111;

}





/* CODE */

pre{

    background:#111;

    color:white;

    border:var(--border);

    box-shadow:var(--shadow-small);

    padding:25px;

    overflow:auto;

    font-size:16px;

}



code{

    background:#111;

    color:white;

    padding:5px 8px;

}




/* FOOTER */


footer{

    background:#111;

    color:white;

    text-align:center;

    padding:40px;

    font-size:18px;

}




/* MOBILE */


@media(max-width:700px){


body{

    font-size:17px;

}



nav{

    flex-direction:column;

    gap:20px;

    padding:20px;

}



nav a{

    margin:0 8px;

    font-size:15px;

}



.container{

    padding:25px 15px;

}



.hero{

    padding:40px 10px;

}



.hero h1{

    font-size:38px;

}



.hero p{

    font-size:17px;

}



.card{

    padding:25px;

    box-shadow:6px 6px 0 #111;

}



.card h2{

    font-size:28px;

}



.card p,
.card li{

    font-size:17px;

}



.feature{

    grid-template-columns:1fr;

}



.box{

    padding:25px;

}


}
