@font-face {
    font-family: "Geist";
    src: url("Geist[wght].ttf") format("truetype-variations");
    font-weight: 100 900;
    font-style: normal;
}

body {
    background: #03120A;
    margin: 0;
    font-family: 'Geist', sans-serif;
    position: relative;
    min-height: 100svh;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

#hero {
    padding-left: 16px;
    padding-right: 16px;
    padding-bottom: 16px;
}

#hero-navbar {
    display: flex;
    justify-content: space-between;
    gap: 40px;
    padding-top: 12px;
    padding-bottom: 12px;
}

.hero-navbar-section {
    display: flex;
    gap: 24px;
}

.hero-navbar-title, .hero-navbar-logo-mobile {
    font-size: 24px;
    font-weight: 900;
    text-decoration: none;
    color: #A7AF87;
    white-space: nowrap;
}
/*.hero-navbar-section a*/
.hero-navbar-logo {
    display: none;
}

.hero-navbar-title:hover, .hero-navbar-logo-mobile:hover {
    color: #c1c7ab;
    cursor: pointer;
}

#lovis-portrait {
    width: 100%;
    height: 35vh;
    object-fit: cover;
    border-radius: 0;
}

#hero-description {
    color: #A7AF87;
    font-size: 3.5vw;
    font-weight: 750;
    line-height: 1.2;
    letter-spacing: 0.05em;
    text-align: justify;
    hyphens: manual;
    word-break: break-word;
    word-spacing: 0.5em;
}

/* This pseudo-element forces the last line to justify too */
#hero-description::after {
    content: "";
    display: inline-block;
    width: 100%;
}

footer {
    height: 80px;
    background: #03120A;
    border-top: rgba(255, 255, 255, 0.1) 1px solid;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-left: 16px;
    padding-right: 16px;

}

.footer-section {
    display: flex;
    align-items: center;
    gap: 12px;

}

#copyright {
    color: #A7AF87;
    font-size: 12px;
}

.social-link {
    text-decoration: none;
    color: #A7AF87;

}

.social-link svg {
    height: 32px; /* force same physical height */
    width: auto; /* preserve aspect ratio */
    vertical-align: middle;
}

.linkedin-icon {
    height: 30px !important;
}

.mail-icon {
    height: 36px !important;
    padding-left: 3px;
}
/* BREAKPOINTS */

/* TABLET */
@media (width >= 48rem) {
    #hero {
        padding-left: 36px;
        padding-right: 36px;
        padding-bottom: 36px;
    }

    #hero-navbar {
        gap: 96px;
        padding-top: 12px;
        padding-bottom: 12px;
    }
    .hero-navbar-logo {
        display: none;
    }
    .hero-navbar-logo-mobile {
        font-size: 48px;
    }

    .hero-navbar-section {
        gap: 56px;
    }

    /*.hero-navbar-section a*/
    .hero-navbar-title {
        font-size: 48px;
    }

    #lovis-portrait {
        height: 35vh;
    }

    footer {
        height: 96px;
        padding-left: 52px;
        padding-right: 52px;

    }

    .footer-section {
        gap: 24px;
    }

    #copyright {
        font-size: 18px;
    }

    .social-link svg {
        height: 48px; /* force same physical height */
    }

    .linkedin-icon {
        height: 44px !important;
    }

    .mail-icon {
        height: 52px !important;
    }
}

/* DESKTOP */
@media (width >= 96rem) {
    #hero {
        padding-left: 52px;
        padding-right: 52px;
        padding-bottom: 52px;
    }

    #hero-navbar {
        gap: 96px;
        padding-top: 12px;
        padding-bottom: 12px;
    }

    .hero-navbar-section {
        gap: 64px;
    }

    /*.hero-navbar-section a*/
    .hero-navbar-title {
        font-size: 74px;

    }
    .hero-navbar-logo {
        display: block;
    }
    .hero-navbar-logo-mobile {
        display: none;
    }

    #lovis-portrait {
        height: 50vh;
    }

    footer {
        height: 96px;
        padding-left: 52px;
        padding-right: 52px;

    }

    .footer-section {
        gap: 32px;
    }

    #copyright {
        font-size: 18px;
    }

    .social-link svg {
        height: 48px; /* force same physical height */
    }

    .linkedin-icon {
        height: 44px;
    }

}

/*.card {*/
/*    background-color: white;*/
/*    padding: 40px;*/
/*    border-radius: 20px;*/
/*    border: black 2px solid;*/
/*    box-shadow: #A6B1E1 2px 2px 30px;*/
/*}*/

/*.parent {*/
/*    background-color: lightpink;*/
/*    display: flex;*/
/*    justify-content: space-between;*/
/*    gap: 50px;*/
/*    flex-direction: column;*/
/*    height: 500px;*/
/*    padding: 50px;*/
/*    !*margin: 50px;*!*/
/*    border-radius: 50px;*/
/*}*/


