.premium-mobile-wrapper{
    position:relative;
    width:100%;
    z-index:999;
}

.premium-mobile-wrapper *,
.premium-mobile-wrapper *::before,
.premium-mobile-wrapper *::after{
    box-sizing:border-box;
}

.premium-mobile-header{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:18px 20px;
    border-radius:20px;
    background:rgba(15,15,15,.35);
}

.premium-mobile-logo{
    color:#ffffff;
    font-size:24px;
    font-weight:800;
    line-height:1;
}

.premium-menu-toggle{
    --premium-menu-accent:#ffb58a;
    position:relative;
    overflow:hidden;
    width:58px;
    height:58px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    background:rgba(255,255,255,.06);
    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.04),
        0 16px 38px rgba(0,0,0,.16);
    transition:transform .35s cubic-bezier(.19,1,.22,1), background .35s ease, border-color .35s ease, box-shadow .35s ease;
}

.premium-menu-toggle::before{
    position:absolute;
    inset:8px;
    border-radius:inherit;
    background:
        radial-gradient(circle at 35% 25%, rgba(255,255,255,.22), transparent 34%),
        linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,0));
    content:'';
    opacity:.68;
    pointer-events:none;
}

.premium-menu-toggle::after{
    position:absolute;
    inset:-1px;
    border-radius:inherit;
    background:conic-gradient(from 130deg, transparent 0 68%, var(--premium-menu-accent) 72%, transparent 80%);
    content:'';
    opacity:0;
    transition:opacity .35s ease, transform .55s cubic-bezier(.19,1,.22,1);
    pointer-events:none;
}

.premium-menu-toggle:hover{
    border-color:rgba(255,255,255,.28);
    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.08),
        0 20px 48px rgba(0,0,0,.24);
    transform:translateY(-2px) scale(1.03);
}

.premium-menu-toggle:hover::after{
    opacity:1;
    transform:rotate(120deg);
}

.premium-menu-toggle .menu-icon{
    position:relative;
    z-index:2;
    width:30px;
    height:22px;
    position:relative;
}

.premium-menu-toggle .menu-icon span{
    position:absolute;
    left:0;
    height:2px;
    border-radius:20px;
    background:#ffffff;
    box-shadow:0 0 14px rgba(255,255,255,.18);
    transition:
        width .35s cubic-bezier(.19,1,.22,1),
        transform .35s cubic-bezier(.19,1,.22,1),
        opacity .25s ease,
        background .35s ease,
        top .35s cubic-bezier(.19,1,.22,1),
        bottom .35s cubic-bezier(.19,1,.22,1);
}

.premium-menu-toggle .menu-icon span:nth-child(1){
    top:0;
    width:72%;
}

.premium-menu-toggle .menu-icon span:nth-child(2){
    top:10px;
    width:100%;
}

.premium-menu-toggle .menu-icon span:nth-child(3){
    bottom:0;
    left:auto;
    right:0;
    width:56%;
}

.premium-menu-toggle:hover .menu-icon span:nth-child(1),
.premium-menu-toggle:hover .menu-icon span:nth-child(3){
    width:100%;
    background:var(--premium-menu-accent);
}

.premium-mobile-wrapper.menu-open .premium-menu-toggle .menu-icon span:nth-child(1){
    top:10px;
    width:100%;
    background:var(--premium-menu-accent);
    transform:rotate(45deg);
}

.premium-mobile-wrapper.menu-open .premium-menu-toggle .menu-icon span:nth-child(2){
    opacity:0;
    transform:scaleX(.2);
}

.premium-mobile-wrapper.menu-open .premium-menu-toggle .menu-icon span:nth-child(3){
    bottom:10px;
    width:100%;
    background:var(--premium-menu-accent);
    transform:rotate(-45deg);
}

.premium-menu-toggle.has-uploaded-icon .menu-icon{
    display:flex;
    width:auto;
    height:auto;
    align-items:center;
    justify-content:center;
}

.premium-menu-toggle.has-uploaded-icon .menu-icon-img{
    display:block;
    width:28px;
    height:auto;
    transition:opacity .24s ease, transform .32s cubic-bezier(.19,1,.22,1);
}

.premium-menu-toggle.has-uploaded-icon .menu-icon-img--close{
    position:absolute;
    opacity:0;
    transform:scale(.72) rotate(-45deg);
}

.premium-menu-toggle.has-uploaded-icon:hover .menu-icon-img--open{
    transform:scale(1.08);
}

.premium-mobile-wrapper.menu-open .premium-menu-toggle.has-uploaded-icon .menu-icon-img--open{
    opacity:0;
    transform:scale(.72) rotate(45deg);
}

.premium-mobile-wrapper.menu-open .premium-menu-toggle.has-uploaded-icon .menu-icon-img--close{
    opacity:1;
    transform:scale(1) rotate(0);
}

.premium-mobile-menu{
    position:fixed;
    inset:0;
    z-index:99999;
    padding:120px 30px 50px;
    opacity:0;
    visibility:hidden;
    overflow-y:auto;
    background:#090909;
    transition:opacity .45s ease, visibility .45s ease;
}

.premium-mobile-menu.active{
    opacity:1;
    visibility:visible;
}

.premium-close-btn{
    position:absolute;
    top:25px;
    right:25px;
    width:56px;
    height:56px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#ffffff;
    background:rgba(255,255,255,.06);
    font-size:32px;
    line-height:1;
    cursor:pointer;
    transition:transform .3s ease, background .3s ease;
}

.premium-close-btn:hover{
    transform:rotate(90deg);
    background:rgba(255,255,255,.12);
}

.premium-menu-list{
    list-style:none;
    margin:0;
    padding:0;
}

.premium-menu-list .menu-item{
    position:relative;
    margin:0 0 22px;
}

.premium-menu-list .menu-item > a{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    color:#ffffff;
    text-decoration:none;
    font-size:42px;
    font-weight:800;
    line-height:1.15;
    transition:color .35s ease, transform .35s ease;
}

.premium-menu-list .menu-item > a:hover{
    color:#ffb58a;
    transform:translateX(8px);
}

.premium-menu-list .sub-menu{
    display:none;
    list-style:none;
    margin:20px 0 0;
    padding:0 0 0 20px;
}

.premium-menu-list .sub-menu.active{
    display:block;
}

.premium-menu-list .sub-menu a{
    font-size:24px !important;
    opacity:.8;
}

.submenu-toggle{
    position:absolute;
    right:0;
    top:4px;
    width:38px;
    height:38px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#ffffff;
    font-size:22px;
    line-height:1;
    cursor:pointer;
}

body.premium-mobile-menu-open{
    overflow:hidden;
}

@media(min-width:1025px){
    .premium-mobile-wrapper{
        display:none;
    }
}

@media(max-width:767px){
    .premium-mobile-header{
        padding:14px 16px;
        border-radius:16px;
    }

    .premium-menu-toggle{
        width:50px;
        height:50px;
    }

    .premium-menu-list .menu-item > a{
        font-size:32px;
    }

    .premium-mobile-menu{
        padding:105px 24px 42px;
    }
}
