:root {
    /*------------------ colors --------------*/
    --primary-color: #1C6A5D;
    --primary-color-soft: #E9FFFD;
    --secondary-color: #000000;
    --secondary-color-soft: #131718;
    --background-color: #faf8f7;
    /*------------------ Fonts --------------*/
    /* --primary-ff: "DM Sans", sans-serif; */
    --primary-ff: "Plus Jakarta Sans", sans-serif;
    --primary-fz: 62.5%;
}

*,
::after,
::before {
    margin: 0;
    box-sizing: border-box;
}

html {
    font-size: var(--primary-fz);
    font-family: var(--primary-ff);
    scroll-behavior: smooth;
}

body{
    font-size: clamp(1.4rem, 1.6vw, 1.8rem);
    line-height: 1.5;
}

.nav{
    background-color: var(--secondary-color);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
}

.nav__figure{
    max-width: 150px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.nav__logo {
    width: 40px;
    border-radius: 4px;
    margin-right: 8px;
}

.nav__container{
    width: min(90%, 1200px);
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 80px;
}

.nav__figure, .nav__toggle{
    z-index: 10;
}

.nav__toggle {
    width: 45px;
    height: 45px;
    cursor: pointer;
    background: none;
    border: none;
    padding: 4px;
    transition: background-image 0.5s;
}

.nav__list{
    margin-top: 80px;
    transform: translate(-100%);
    list-style-type: none;
    position: fixed;
    inset: 0;
    display: grid;
    place-content: center;
    gap: 2.5rem;
    text-align: center;
    padding: 1.5rem 5%;
    background-color: var(--secondary-color);
    transition: transform 0.5s;
    z-index: 9;
}

.nav__link {
    color: var(--primary-color-soft);
    text-decoration: none;
}

.nav__icon {
    width: 100%;
    height: 100%;
    object-fit: contain;
}