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

@font-face {
    font-family: "Inter";
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("Inter-Medium.woff2") format("woff2");
}

body {
    font-family: "Inter";
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("Inter-Medium.woff2") format("woff2");
    font-size: 1em;
    line-height: 1.08em;
    padding: 4vw;
}

.flex-row {
    display: flex;
    justify-content: flex-start;
}

.header {
    text-align: left;
}

a {
    text-decoration: none;
    color: black;
}

a:hover {
    color: rgb(255, 85, 0);
}

.media {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 95%;
}

.infos {
    position: absolute;
    right: 0;
    top: 4vw;
    padding: 0vw 4vw;
    font-size: 4vh;
    cursor: pointer;
}

.panel {
    position: fixed;
    bottom: -100%;
    left: 0;
    width: 100%;
    height: 66vh;
    background: #f9f9f9;
    padding: 4vw;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    box-sizing: border-box;
    transition: bottom 1.2s ease-in-out;
    overflow-y: auto;
    filter: drop-shadow(0 0 0.40rem rgba(0, 0, 0, 0.380));
}

.panel.open {
    bottom: 0;
}

.en {
    color: rgba(0, 0, 0, 0.380);
    padding: 4vw 0vw;
}


@media (min-width: 576px) {
    @font-face {
        font-family: "Inter";
        font-style: normal;
        font-weight: 500;
        font-display: swap;
        src: url("Inter-Medium.woff2") format("woff2");
    }

    body {
        font-family: "Inter";
        font-style: normal;
        font-weight: 500;
        font-display: swap;
        src: url("Inter-Medium.woff2") format("woff2");
        font-size: 1.4em;
        line-height: 1.1em;
        padding: 1vw;
    }

    .flex-row {
        display: flex;
        justify-content: flex-start;
    }

    .header {
        text-align: left;
    }

    a {
        text-decoration: none;
        color: black;
    }

    a:hover {
        color: rgb(255, 85, 0);
    }

    .media {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        max-width: 60%;
    }

    .infos {
        position: absolute;
        right: 0;
        top: 0;
        padding: 1vw;
        font-weight: 800;
        cursor: pointer;
    }

    .panel {
        position: fixed;
        bottom: -100%;
        left: 0;
        width: 100%;
        height: 55vh;
        background: #f9f9f9;
        padding: 1vw;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 2vw;
        box-sizing: border-box;
        transition: bottom 1.2s ease-in-out;
        overflow-y: auto;
        filter: drop-shadow(0 0 0.40rem rgba(0, 0, 0, 0.380));
    }

    .panel.open {
        bottom: 0;
    }

    .en {
        color: rgba(0, 0, 0, 0.380);
        padding-top: 0vw;
    }
}