@media ( max-width: 576px ) {
html {
	font-size: 2.666666666666667vw;
}

body {
	padding-top: 3.2rem;
}
body:after {
	top: 3.2rem;
	height: calc(100vh - 3.2rem);
	height: calc(100dvh - 3.2rem);
}

.desc {
	display: none !important;
}
.mobile {
	display: block !important;
}
.btn {
	padding: 1.8rem 2.3rem;
}
.slick-dots button {
    border-radius: 0.778rem;
}
.home .section-top {
	height: 81.2rem;
	background: linear-gradient(194.34deg, #323232 0%, #000 100%), #000;
    background-repeat: no-repeat;
    background-size: 100% 56.9rem;
}
.home .section-top-bg {
	width: 35.8rem;
	height: 28.8rem;
	bottom: -6rem;
	left: -1.7rem;
}
.header {
    position: fixed;
	top: calc(50% - 3rem);
    bottom: calc(50% - 3rem);
	left: calc(-50vh + 3rem);
    left: calc(-50dvh + 3rem);
	width: 100vh;
    width: 100dvh;
    height: 6rem;
    padding: 0 12rem 0 1.8rem;
    padding: 0 1.8rem;
    transform: rotate(-90deg);
    background: linear-gradient(270.45deg, #323232 -1.1%, #555555 41.04%, #2C2C2C 104.55%);
    z-index: 1;
    gap: 3.4rem;
    justify-content: unset;
}
.logo {
	width: 14rem;
    height: 2.5rem;
}
.main-menu {
	gap: 1.8rem;
}
.main-menu li {
	padding-right: 0
}
.main-menu li a {
	font-size: 1.4rem;
}
.main-menu li a:after {
	display: none;
}
.info {
	position: relative;
	top: 0;
    width: 100%;
    padding: 1.8rem;
    box-sizing: border-box;
}
.info h1 {
	font-size: 4rem;
    line-height: 100%;
	margin-bottom: 1.9rem;
}
.info .info-text {
	gap: 0.8rem;
	padding-right: 0;
	margin-bottom: 2.4rem;
}
.info .info-buttons {
    flex-direction: column;
    gap: 0.5rem;
}
main {
	width: calc(100% - 6rem);
    margin-left: 6rem;
	border-radius: 0;
}
.routes-choice {
	min-width: 100%;
	height: 47.7rem;
}
.routes-choice h2 {
	font-size: 1.8rem;
    line-height: 1.965rem;
    letter-spacing: 1vw;
    margin: 3.8rem 0 2.762rem;
}
.row{
	flex-direction: column;
}
.map {
	height: 100vh;
	height: 100dvh;
}
body.home .map {
	height: 73rem;
}

.leaflet-control-container .leaflet-top.leaflet-left {
	top: 10px;
	bottom: unset;
}
body.home .leaflet-control-container .leaflet-top.leaflet-left {
	top: 11rem;
	bottom: unset;
	left: 10px;
	right: unset;
}

.other-offers a,
.other-offers-link {
	line-height: 1.8rem;
	border-radius: 1rem;
}
.other-offers-link {
	padding: 2.3rem;
}
.offers-slider {
	width: 100%;
}
.offers-slider .slick-list {
    padding-top: 1.638rem !important;
}
.offers-slide {
	width: 21.2rem;
    height: 28.6rem;
    border-radius: 0.873rem;
	margin: 0 -8.8rem;
}
.offers-slide:after {
	border-radius: 1.092rem;
}
.offers-slide.slick-current {
	border-radius: 1.092rem;
}
.offers-slide .offers-slide-image {
	/*mask-image: radial-gradient(ellipse 2.09rem 2.09rem at 50% top, #0000 2.09rem, #000 0);*/
	border-radius: 0.873rem;
}
.offers-slide.slick-current .offers-slide-image {
	border-radius: 1.092rem;
}
.offers-slide span {
	top: -1.638rem;
    left: calc(50% - 1.638rem);
	width: 3.276rem;
    height: 3.276rem;
    font-family: T2 Halvar Stencil Breit;
    font-size: 1.965rem;
}
.offers-slide-info {
	bottom: 2rem;
    left: 1.8rem;
    width: 17.7rem;
}
.offers-slide-title {
	font-size: 1.6rem;
	margin-bottom: 1.5rem;
}
.offers-slide-text {
	font-size: 1rem;
	line-height: 1.5rem;
}
.offers-slider-arrow-prev {
    left: 2.129rem;
}
.offers-slider-arrow-next {
    right: 2.129rem;
}
.offers-slider-arrow-prev svg,
.offers-slider-arrow-next svg {
	width: 1.747rem;
    height: 1.209rem;
}
.offers-slider-dots .slick-dots {
	margin-top: 3.3rem;
}
.map-header {
	top: 0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
    padding: 2rem;
    border-radius: 0 0 2rem 2rem;
}
.map-title {
	font-size: 2rem;
    line-height: 100%;
    margin-bottom: 1rem;
}
.map-subtitle {
	font-size: 1.4rem;
}
.restaurants-slider {
	bottom: 7.6rem;
}
.restaurants-slider .slick-slide {
    margin-left: 1.1rem;
}
.restaurants-slider .slick-list {
	padding-left: 2.05rem;
}
.restaurants-slide {
	width: 27.1rem;
	height: 18.1rem;
	border-radius: 1rem;
}
.restaurants-slide h2 {
	font-size: 2.4rem;
    /*color: #EAE8DC;*/
}

.section-other-offers {
    padding: 3.1rem 2rem 1.9rem;
}
.other-offers {
	margin: 0 -2rem;
	opacity: 0;
}
.other-offers.slick-initialized {
	opacity: 1;
}
.other-offers .slick-list {
	padding-left: 2rem;
}
.other-offers a {
	width: 25rem;
	height: 29.7rem;
	margin-right: 2rem;
}
.other-offers-slider-dots .slick-dots {
    margin-top: 0.5rem;
	margin-bottom: 2.3rem;
}


.view-choise {
	position: fixed;
    top: unset;
    bottom: 1rem;
    right: 1rem;
}
.restaurants-tile {
	padding-top: 3.4rem;
}
.restaurants-tile h1 {
	font-size: 1.906rem;
    line-height: 130%;
    letter-spacing: 0.136rem;
    margin-bottom: 3.445rem;
}
.restaurants-tile-list {
	flex-direction: column;
    width: 100%;
    padding: 0 2.2rem;
    box-sizing: border-box;
}
.restaurants-tile-item {
	top: 0 !important;
	width: 100%;
    height: 19rem;
}
.restaurants-map {
	height: 100vh;
	height: 100dvh;
}


.routes-choice-bar {
    top: 1rem;
	left: unset;
    right: 1rem;
}
.routes-list {
	width: 100%;
	height: auto;
	right: 0;
	top: unset;
	bottom: 1.2rem;
}
.route-items {
	flex-direction: row;
	opacity: 0;
}
.route-items.slick-initialized {
	opacity: 1;
}
.route-items > .slick-list {
	padding-left: 1.1rem;
}
.route-item {
	display: flex !important;
	flex-direction: column;
	width: 27.5rem;
	height: 38.5rem;
	padding: 1.048rem 1.048rem 2.25rem;
	margin-right: 1.1rem;
}
.route-item-info {
    padding: 0 1.2rem 0;
	max-height: 100%;
    overflow-y: auto;
}
.route-item-titul {
	padding-top: 16.3rem;
}
.route-item-titul .route-item-number {
	width: 6rem;
    height: 6rem;
    font-size: 3.6rem;
	margin-bottom: 2.1rem;
}
.route-item-title {
	font-size: 1.8rem;
    margin-bottom: 1.211rem;
}
.route-item-titul .route-item-title {
	font-size: 2.4rem;
	margin-bottom: 1.9rem;
}
.route-item-text {
	font-size: 1.2rem;
    line-height: 1.6rem;
	margin-bottom: 1.1rem;
}
.route-item-titul .route-item-text {
	font-size: 1rem;
    line-height: 1.5rem;
}
.route-item-link {
	font-size: 1.2rem;
    letter-spacing: 0.018rem;
    gap: 0.734rem;
}
.route-item-link svg {
	width: 0.848rem;
    height: 0.605rem;
}


.route-item-slider-wrapper {
	margin-bottom: 2.1rem;
}
.route-item-slider {
	height: 15.465rem;
}
.route-item-slider-prev,
.route-item-slider-next {
	top: 7.7325rem;
}
.route-item-slider-prev {
	left: 1rem;
}
.route-item-slider-next {
	right: 1rem;
}
.route-item-slider-prev svg,
.route-item-slider-next svg {
	width: 1.677rem;
	height: 1.16rem;
}



.modal {
	position: relative;
	width: 37.5rem;
    padding: 3rem;
	margin: 4rem 0;
}
.modal-close {
	right: 2rem;
    top: 2rem;
}
.modal-close svg {
	width: 3.2rem;
    height: 3.2rem;
}
.modal-title {
	font-size: 4.2rem;
}
.modal-tiles {
	flex-direction: column;
    height: auto;
}
.modal-tile {
	height: 14.9rem;
    border-radius: 1rem;
}
.modal-link {
	font-size: 1.6rem;
    height: 6rem;
	border-radius: 1rem;
}


/*** Бар ***/
.single-restaurant .burger-menu-wrapper {
	display: none;
}

.restaurant-gallery {
	margin: 0 auto 4.4rem;
    padding: 0;
}
.restaurant-gallery .logo {
	position: absolute;
    top: 1.9rem;
    left: 0;
    right: 0;
}
.restaurant-gallery-slider {
	height: 23.9rem;
    /*background-color: #ccc;*/
}
.restaurant-gallery-slider .restaurant-gallery-item {
	display: none !important;
}
.restaurant-gallery-slider.slick-initialized .restaurant-gallery-item {
	display: block !important;
}
.restaurant-gallery-item.restaurant-gallery-item-extra {
	display: block;
}
.restaurant-gallery-item {
	height: 23.9rem;
	border-radius: 0;
}
/*
.restaurant-gallery-slider:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 2rem;
	background: linear-gradient(180deg, #D0CAAE 0%, rgba(208, 202, 174, 0) 100%);
	z-index: 1;
}
.restaurant-gallery-slider:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2rem;
	background: linear-gradient(0deg, #D0CAAE 0%, rgba(208, 202, 174, 0) 100%);
	z-index: 1;
}
*/
.restaurant-gallery-slider-dots {
	position: absolute;
    bottom: 1.3rem;
    width: 100%;
}
.restaurant-gallery-slider-dots .slick-dots {
	list-style: none;
    display: flex;
    gap: 1.2rem;
    justify-content: center;
    position: relative;
	z-index: 10;
}
.restaurant-gallery-slider-dots .slick-dots li button {
	font-size: 0;
    border: none;
    width: 0.4rem;
    height: 0.4rem;
    border-radius: 1.9rem;
	background-color: var(--color-white);
}
.restaurant-gallery-slider-dots .slick-dots li.slick-active button {
	width: 1.2rem;
}

.restaurant-title {
	font-size: 2.8rem;
    line-height: 3.52rem;
	margin-bottom: 1.3rem;
	padding: 0 2rem;
}
.restaurant-back-arrow {
	position: fixed;
    top: 2.4rem;
    left: 1.35rem;
    bottom: unset;
    width: 3.2rem;
	height: 2.3rem;
    z-index: 1;
}
.restaurant-back-arrow svg {
	width: 100%;
    height: 100%;
}
.restaurant-description {
	line-height: 1.95rem;
	padding: 0 2rem;
    margin-bottom: 4.8rem;
}

.restaurant-negroni-variations-wrapper {
	padding: 0 2rem;
}
.restaurant-negroni-variations {
	padding: 3.6rem 3rem 3.2rem;
}
.restaurant-negroni-variations-list {
	gap: 4.7rem;
}
.restaurant-negroni-variation-image {
	margin-bottom: 4.2rem;
}



.restaurant-guests-title {
	margin-bottom: 2.4rem;
}
.restaurant-guests .schedule-guest-list {
	row-gap: 2.4rem;
	padding: 0 2rem;
	margin-bottom: 2.8rem;
}
.restaurant-guests .schedule-guest-item {
	width: 100%;
}
.schedule-guest-item:last-child {
	border-bottom: none;
}
.schedule-guest-item-image {
	height: 14rem;
}

.restaurant-guests {
	margin-bottom: 2.8rem;
}

.restaurant-guests-button {
	border-radius: 4rem 4rem 0 0;
	margin-bottom: 5.7rem;
}



.restaurant-restauranttender {
	padding-bottom: 0;
    margin-bottom: 3.3rem;
	border-bottom: none;
}
.restaurant-restauranttender:after {
	content: "";
	border-bottom: 0.1rem solid #928D7C;
}
.restaurant-restauranttender-title {
	margin-bottom: 2.9rem;
}
.restaurant-restauranttender-wrapper {
	flex-direction: column;
    align-items: center;
    gap: 2.5rem;
    padding: 0 2rem;
}
.restaurant-restauranttender-image {
	width: 13.2rem;
    height: 13.2rem;
}
.restaurant-restauranttender-info {
	width: 100%;
}
.restaurant-restauranttender-name {
	text-align: center;
	word-spacing: 100vw;
}
.restaurant-restauranttender-description {
	padding-bottom: 3.1rem;
    border-bottom: 0.1rem solid #928D7C;
}

.restaurant-info {
	margin-bottom: 4.4rem;
    padding: 0 2rem;
}
.restaurant-info > div {
	font-size: 1.4rem;
    padding-left: 3.45rem;
}

.restaurant-map {
	margin-bottom: 5.4rem;
}


.restaurant-restaurants-other {
	padding: 0 2rem 3.6rem;
}
.restaurant-restaurants-other-slider {
	margin-bottom: 2.1rem;
}
.restaurant-restaurants-other-slider-group {
	gap: 2rem;
}


.restaurant-chef-recommendations-wrapper {
    flex-direction: column;
	gap: 3rem;
	padding: 0 2rem;
}
.restaurant-info-title {
	padding: 0 2rem;
}

.restaurant-restaurants-other-title {
	font-size: 2.2rem;
}
.want-selection {
	font-size: 1.6rem;
    padding: 2.35rem 0;
    width: calc(100% - 4rem);
    margin: 0 2rem;
    border-radius: 1rem;
}

.restaurant-data {
    margin-bottom: 6rem;
}
.restaurant-data-border-bottom {
	position: relative;
	border-bottom: none;
}
.restaurant-data-border-bottom:after {
	content: "";
	position: absolute;
	left: 2rem;
	bottom: -3rem;
	width: calc(100% - 4rem);
	border-bottom: 1px solid #5A5A5A;
}

.arrow-up {
	display: none !important;
}

.restaurant-modal-slider-prev {
	top: 44%;
    left: -2rem;
}
.restaurant-modal-slider-next {
	top: 44%;
    right: -2rem;
}


.restaurant-modal {
    height: auto;
	padding: 2rem;
}
.restaurant-modal-slide {
	height: auto !important;
}
.restaurant-modal-slide img {
    height: auto;
}


.restaurant-discount {
	width: calc(100% - 4rem);
	padding: 2rem;
    margin: 0 2rem 2.4rem;
}
