#menu-icon {
    display: block;
    position: relative;
    width: 30px;
    height: 30px;
    z-index: 1019;
    cursor: pointer;
    text-align: center;
    border-radius: 50%;
    background-color: var(--color-default);
    transition: background-color 0.3s ease;

    .line {
        background-color: #ffffff;
        height: 1px;
        width: 18px;
        position: absolute;
        top: calc(50% - 5px);
        border-radius: 2px;
        left: 6px;
        transition: color 0.3s ease, opacity 0s, transform 0.3s ease;

        &.second {
            top: calc(50% - 0px);
        }

        &.third {
            top: calc(50% + 5px);
        }
    }


    &.color {}

    &.is-active {
        background-color: #ffffff;

        .line {
            top: 50%;
            transform: rotate(45deg);

            background-color: var(--color-default);

            &.third {
                transform: rotate(-45deg);
            }

            &.second {
                opacity: 0;
            }
        }
    }

    // HOVER
    @media (hover: hover) {
        &:hover {}

        &.hover {
            &:hover {}
        }

        &.color {}
    }
}

#navigation {
    position: fixed;
    left: 100%;
    top: 0;
    height: 100%;
    width: 100%;
    transition: transform 0.5s ease;
    z-index: 999;
    background-color: var(--color-default);

    .table {
        height: 100%;
        width: 100%;
        overflow-y: scroll;

        .table-cell {
            min-height: 100%;
            width: 100%;
            padding: 100px 7vw;
            display: flex;
            flex-direction: column;
            justify-content: center;


            >.menu {
                margin-bottom: 100px;


                ul.menu {
                    margin: 0 !important;
                    padding: 0 !important;
                    display: flex;
                    flex-direction: column;
                    gap: 10px;

                    li {
                        list-style: none !important;
                        float: left;
                        margin: 0;
                        padding: 0;
                        display: block;
                        opacity: 0;
                        transform: translateX(-30px);
                        transition: opacity 0s, transform 0s;

                        a {
                            font-size: var(--font-size-h2);
                            color: var(--color-primary);
                            font-weight: 700;
                            position: relative;
                            display: block;
                            line-height: var(--line-height-h2);
                            background: none;


                            &.is-active {
                                color: var(--color-secondary);
                                text-decoration: underline;
                            }
                        }
                    }
                }
            }


        }
    }

    // HOVER
    @media (hover: hover) {
        .table {
            .table-cell {
                >.menu {
                    ul {
                        li {
                            a {
                                &:hover {
                                    color: var(--color-secondary);
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}


html.menu-open {
    #menu-icon {
        &:hover {}
    }

    #header {
        >.section {
            #navigation {
                transform: translateX(-100%);

                .table {
                    .table-cell {
                        >.menu {
                            li {
                                opacity: 1;
                                transform: translateX(0);
                                transition: opacity 0.3s ease 0.3s, transform 0.3s ease 0.3s;

                                &:nth-of-type(2) {
                                    transition: opacity 0.3s ease 0.4s, transform 0.3s ease 0.4s;
                                }

                                &:nth-of-type(3) {
                                    transition: opacity 0.3s ease 0.5s, transform 0.3s ease 0.5s;
                                }

                                &:nth-of-type(4) {
                                    transition: opacity 0.3s ease 0.6s, transform 0.3s ease 0.6s;
                                }

                                &:nth-of-type(5) {
                                    transition: opacity 0.3s ease 0.7s, transform 0.3s ease 0.7s;
                                }

                                &:nth-of-type(6) {
                                    transition: opacity 0.3s ease 0.8s, transform 0.3s ease 0.8s;
                                }
                            }
                        }


                    }
                }
            }
        }
    }
}

// 768
@media screen and (min-width: 768px) {}

// 1024
@media screen and (min-width: 1024px) {
    #navigation {
        .table {
            .table-cell {
                padding: var(--space-xxl) var(--section-x);
                display: grid;
                grid-template-columns: 2fr 3fr;
                gap: var(--space-md);

                >.menu {
                    align-self: center;
                    margin-bottom: 0;

                    ul.menu {
                        li {
                            a {
                                font-size: var(--font-size-h3);
                                line-height: var(--line-height-h3);
                            }
                        }
                    }
                }


            }
        }
    }
}

// 1248
@media screen and (min-width: 1248px) {}

// 1440
@media screen and (min-width: 1440px) {
    #navigation {
        .table {
            .table-cell {
                grid-template-columns: 1fr 1fr;
            }
        }
    }
}

// 1600
@media screen and (min-width: 1600px) {}

// 1920
@media screen and (min-width: 1920px) {}