.menu {
    --max-width: min(920px, calc(100vw - 30px));

    z-index: 100;
    background: rgba(16, 50, 36, .44);
    position: absolute;
    top: 0
}

.menu ul {
    list-style: none;
    margin: auto;
    width: 100%
}

.menu ul li a {
    font: 500 15px var(--font-family);
    color: var(--color)
}

.menu ul li a.has-child {
    margin-right: 8px;
    padding-right: 16px
}

.menu ul li a.has-child:after {
    border: 1px solid #fafafa;
    border-left: 0;
    border-top: 0;
    position: absolute;
    top: 50%;
    right: 5px;
    translate: 0 -50%;
    content: "";
    height: 5px;
    width: 5px;
    transform: rotate(45deg);
    transition: all .3s
}

.menu ul li ul {
    background-color: #fafafa;
    min-width: 250px;
    transform: perspective(600px) rotateX(-90deg);
    transform-origin: 0 0 0;
    visibility: hidden;
    transition: all .3s
}

.menu ul li ul li a {
    color: #313131;
    font-size: 14px;
    padding: clamp(3px, .439238653vw, 6px) 0;
    text-transform: capitalize;
    background-color: rgba(0, 0, 0, 0)
}

.menu ul li ul li a.has-child {
    margin-right: 0
}

.menu ul li ul li a.has-child:after {
    border-color: #313131;
    transform: rotate(-45deg)
}

.menu ul li ul li:not(:last-child)>a {
    border-bottom: 1px solid #ececec
}

.menu ul li ul li ul {
    left: 100%;
    margin-top: 0;
    top: -0.75rem
}

.menu ul li:hover>ul {
    opacity: 1;
    transform: perspective(600px) rotateX(0);
    transform-origin: 0 0 0;
    visibility: visible;
    transition: all .3s
}

.menu ul li.menu-line {
    background-color: rgba(0, 0, 0, .1);
    height: 15px;
    width: 1px
}

.menu ul.menu-main>li>a {
    text-transform: uppercase;
    line-height: 30px;
    padding: 10px 0
}

.menu ul.menu-main>li>a.active,
.menu ul.menu-main>li>a:hover {
    text-decoration: underline !important;
    text-underline-offset: 8px
}

.menu ul.menu-main>li ul>li>a:hover {
    background-color: rgba(0, 0, 0, 0);
    color: var(--primary-color)
}