/**
 * 
 * Тема : 
 * 
 *
 * 
 */



/*
 * -----------------------------------------------------------------------------
 *
 * SITE : Панельки (Меню + Корзина).
 *
 * -----------------------------------------------------------------------------
 */

.panel-backdrop {
    display: none;
    
    position: fixed; z-index: 600;
    top: 0; left: 0; right: 0;
    height: 100vh;
    
    background: rgba(0,0,0,.75);
    
    transition: all .3s ease;
}

.panel {
    position: fixed; z-index: 610;
    top: 0;
    height: 100vh;
    
    width: 300px;
    
    background: #fff;
}

.panel-left {
    left: -320px;
    transition: left .3s ease;
}
.panel-right {
    right: -320px;
    transition: right .3s ease;
}




.panel-backdrop.in {
    display: block;
}
.panel.in {
    
}
.panel-left.in {
    left: 0;
    box-shadow: 5px 0 15px rgba(0,0,0,.15);    
}
.panel-right.in {
    right: 0;
    box-shadow: -5px 0 15px rgba(0,0,0,.15);    
}






.panel .panel-header {
    background-color: transparent;
}

.panel .panel-header .title {
    position: relative;

    padding: 0 15px;    
    line-height: 50px;
    
    font-size: 1rem;
    font-weight: 700;
    
    text-transform: uppercase;
    
    color: #000;
}

.panel .panel-header .title .btn-close {
    position: absolute; 
    top: 0; right: 0;
    
    padding: 0 15px;
    
    line-height: 46px;
    
    font-size: 46px;
    font-weight: 400;
    
    color: #aaa;
    
    cursor: pointer;
}

.panel .panel-header .title .btn-close:hover {
    color: #000;
}


.panel-content .panel-body {
    overflow: auto;
    scrollbar-width: thin;
    scrollbar-color: #c0c0c0 transparent;
}
.panel-content .panel-body::-webkit-scrollbar {
    width: 5px;
    height: 5px;
}
.panel-content .panel-body::-webkit-scrollbar-thumb {
    background: #c0c0c0;
}
.panel-content .panel-body::-webkit-scrollbar-track {
    background: transparent;
}



/*
 * -----------------------------------------------------------------------------
 *
 * Меню.
 *
 * -----------------------------------------------------------------------------
 */

#panel-menu {
    background: #fff;
}
#panel-menu .panel-content {
    
}

#panel-menu .panel-body {
    height: calc(100vh - 270px);
}


/*
 * -----------------------------------------------------------------------------
 *
 * .
 *
 * -----------------------------------------------------------------------------
 */
#panel-menu .btn-booking {
    margin-bottom: 30px;
}
#panel-menu .contacts .link {
    display: block;
    
    white-space: nowrap;
    text-decoration: none;
    color: inherit;    
}

#panel-menu .contacts .phone {
    margin-bottom: 5px;
    
    font-family: 'Bitter', serif;
    font-weight: 800;
    font-size: 26px;
}

#panel-menu .contacts .email {
    margin-bottom: 1rem;
    font-size: 16px;
}

#panel-menu .socials {
    margin-left: -3px;
    margin-bottom: 3rem;
}

/*
 * -----------------------------------------------------------------------------
 *
 * .
 *
 * -----------------------------------------------------------------------------
 */





#panel-menu .menu {
    padding: 0 0 2rem;
}

#panel-menu .menu .item {
    
}

#panel-menu .menu .item .nav-link {
    display: block;
    padding: 7px 15px;
    
    line-height: 1.3;
    
    font-size: 16px;
    font-weight: 400;
    
    text-decoration: none;
    
    color: var(--color-text);
}
#panel-menu .menu .item .nav-link:hover {
    font-weight: 600;
    color: #fff !important;
    
    background-color: var(--color-prim);
}


#panel-menu .menu .item .nav-link.current,
#panel-menu .menu .item .nav-link.ancestor {
    font-weight: 600;
    color: var(--color-prim);
}


/*
 * -----------------------------------------------------------------------------
 *
 * .
 *
 * -----------------------------------------------------------------------------
 */

#panel-menu .menu .item .label {
    padding: 7px 15px;
    padding-left: 32px;
    
    font-size: 13px;
    color: #b0b0b0;
}

#panel-menu .menu .item .label.label-section {
    padding-left: 15px;
}

#panel-menu .menu .item .submenu .nav-link {
    font-size: 13px;
}

#panel-menu .menu .item .submenu .nav-link::before {
    content: "— ";
}


/*
 * -----------------------------------------------------------------------------
 *
 * .
 *
 * -----------------------------------------------------------------------------
 */


@media (min-width: 768px) {
    
}
@media (min-width: 992px) {
    
}
@media (min-width: 1200px) {
    
}




/*
 * -----------------------------------------------------------------------------
 *
 * .
 *
 * -----------------------------------------------------------------------------
 */

#panel-menu .contacts-box {
    padding: 15px 15px 0;
    border-top: 1px solid #e0e0e0;
}

#panel-menu .phone,
#panel-menu .email {
    display: block;
    
    text-decoration: none;
    
    font-weight: 700;
    color: var(--color-blue);
}

#panel-menu .phone {
    margin-bottom: 5px;
    font-size: 20px;
}
#panel-menu .email {
    margin-bottom: 15px;
}


