html, body {
min-height:100%;
}
html {
display:flex;
}
body {
position:relative;
font-size:20px;
line-height:normal;
font-family: 'Myriad Pro', Arial, sans-serif;
font-weight: normal;
font-stretch:semi-condensed;
color:#fff;
background:#181a1b;
-webkit-font-smoothing: antialiased;
flex-grow:1;
display:flex;
flex-direction:column;
max-width: 100%;
}




*, *:before, *:after {
margin:0;
padding:0;
box-sizing:border-box;
outline: none !important;
-webkit-tap-highlight-color: rgba(255, 255, 255, 0); 
-webkit-tap-highlight-color: transparent;
}
a {
color:#f08143;
outline:none;
text-decoration:underline;
}
a:hover, a:focus {
color:#f08143;
outline:none !important;
text-decoration:none;
}
img {
border:none;
max-width:100%;
}
input:focus, button, button:focus, button:active, select, input, textarea:focus {
outline:none !important;
}
:invalid {
box-shadow: none;
}
input[type="submit"], button {
cursor:pointer;
}
input[disabled="disabled"], 
button[disabled="disabled"],
a[disabled="disabled"] {
cursor:not-allowed;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button,
input[type="date"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-outer-spin-button {
-webkit-appearance: none; margin: 0px;
}
input, textarea, button {
font-family: 'Myriad Pro', Arial, sans-serif;
font-size:18px;
color:#000;
}
fieldset{
border:none;
}
textarea{
resize:none;
overflow:auto;
}
table {
border-collapse:collapse;
border-spacing:0;
}
.clear {
width:100%;
height:0;
clear:both;
}
.clr:after, .clr:before {
content:'';
display:block;
width:100%;
height:0;
clear:both;
}
b, strong {
font-weight:bold;
}
i {
font-style:italic;
}

h1, h2, h3, h4, h5 {
font-weight: bold;
margin-bottom:20px;
}
h1 {
font-size:40px;
}
h2 {
font-size:34px;
}
h3 {
font-size:28px;
}
h4 {
font-size:24px;
font-weight: 300;
text-transform:uppercase;
}
h5 {
font-size:18px;
}
p {
margin-bottom:20px;
}
.uppercase {
text-transform:uppercase;
}

.fs-18 {
font-size:18px;
}
.mb-20 {
margin-bottom:20px;
}

.orange {
color:#f08143;
}
.red {
color:#b03330;
}



.mod_home_wrap {
position:fixed;
z-index:200;
top:0;
left:0;
width:100%;
height:100%;
background:#131313;
overflow:hidden;
}
.mod_home_wrap:before {
content:'';
position:absolute;
z-index:1;
top:0;
left:0;
width:100%;
#max-width:700px;
height:100%;
background:url(../img/circle.png) repeat right bottom;
opacity:0.4;
}
.mod_home_wrap:after {
content:'';
position:absolute;
z-index:2;
top:0;
left:0;
width:100%;
#max-width:700px;
height:100%;
background-image:linear-gradient( 0deg, rgba(0,0,0,0) 0%, rgba(19,19,19,1) 100%);
}
.mod_home {
position:absolute;
z-index:3;
top:0;
left:0;
width:100%;
height: 100%;
#background-image: url(../img/noise.svg);
}
.mod_home_info {
position:absolute;
z-index:3;
top:0;
left:0;
width:100%;
max-width:680px;
height: 100%;
padding-bottom:20px;
padding-top:20px;
padding-left:80px;
display:flex;
flex-direction:column;
justify-content: space-between;
}
.mod_home_text {
flex-grow:1;
display: none;
flex-direction: column;
justify-content: space-evenly;
font-size:22px;
line-height:40px;
font-weight: 300;
}
.mod_home_text.active {
display: flex;
}
.mod_home_text p {
margin:0;
}
.mod_home_menu {
position:absolute;
top:0;
right:0;
width:calc(100vh / 2);
height:100%;
}
.mod_home_menu_img_inner {
position:absolute;
top:0;
left:0;
width:200%;
height:100%;
background-image: url("data:image/svg+xml;utf8,<svg width='100%' height='100%' xmlns='http://www.w3.org/2000/svg'><circle r='50%' cx='50%' cy='50%' style='fill: none; stroke: white; stroke-width: 3; stroke-dasharray: 13 29'/></svg>");
padding:90px;
display:flex;
justify-content:center;
align-items:center;
}
.mod_home_menu_img {
width:100%;
height:100%;
border-radius:50%;
border:#f08143 5px solid;
background:url(../img/home.png) no-repeat left top;
background-size:auto 100%;
}
.mod_home_menu ul {
list-style:none;
position:absolute;
z-index:5;
top:0;
left:0;
height:100%;
display:flex;
flex-direction:column;
justify-content:space-evenly;
align-items: flex-start;
}
.mod_home_menu li {
position:relative;
height:50px;
transform: translateX(-100%);
}
.mod_home_menu li:first-child,
.mod_home_menu li:last-child {
margin-left: calc(100vh / 10);
}
.mod_home_menu li a {
display: flex;
align-items: center;
position:relative;
text-decoration:none;
text-transform:uppercase;
font-size:24px;
line-height:30px;
font-weight: 300;
color:#fff;
margin-right: -37px;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}
.mod_home_menu .menu-line {
position:absolute;
right:0;
bottom:-10px;
width:0;
height:100%;
overflow:hidden;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}
.mod_home_menu li a:hover .menu-line,
.mod_home_menu li.active a .menu-line {
width:100%;
}
.mod_home_menu .menu-line:before {
content:'';
position:absolute;
right:25px;
top:18px;
bottom:0;
width:75px;
background-image: linear-gradient( 90deg, rgb(240,129,67) 0%, rgb(175,50,48) 100%);
clip-path: polygon(0 calc(100% - 1px), 100% 0, 100% 1px, 0 100%);
}
.mod_home_menu .menu-line:after {
content:'';
position:absolute;
left:0;
bottom:0;
right:100px;
height:1px;
background-image: linear-gradient( 90deg, rgb(240,129,67) 0%, rgb(175,50,48) 100%);
}

.mod_home_menu li a:hover,
.mod_home_menu li.active a {
font-size:28px;
font-weight:bold;
}
.mod_home_menu .menu-icon {
position:relative;
display:inline-block;
min-width:50px;
width:50px;
height:50px;
border-radius:50%;
border:#f08143 1px solid;
margin-left:30px;
}
.mod_home_menu .menu-icon:before {
content:'';
position:absolute;
z-index:2;
top:50%;
left:50%;
width:76px;
height:76px;
margin:-38px 0 0 -38px;
background-repeat:no-repeat;
background-position:left top;
transform:scale(0);
-webkit-transition: all 0.3s;
transition: all 0.3s;
}
.mod_home_menu li:nth-child(1) .menu-icon:before {
background-image:url(../img/icon_menu.png);
}
.mod_home_menu li:nth-child(2) .menu-icon:before {
background-image:url(../img/icon_razvlekatelniykompleks.png);
}
.mod_home_menu li:nth-child(3) .menu-icon:before {
background-image:url(../img/icon_restobar.png);
}
.mod_home_menu li:nth-child(4) .menu-icon:before {
background-image:url(../img/icon_otel.png);
}
.mod_home_menu li a:hover .menu-icon:before,
.mod_home_menu li.active a .menu-icon:before {
transform:scale(1);
}
.mod_home_menu .menu-icon:after {
content:'';
position:absolute;
z-index:1;
top:50%;
left:50%;
width:20px;
height:20px;
margin:-10px 0 0 -10px;
background:#f08143;
border-radius:50%;
}

.btn_big {
display:inline-block;
text-decoration:none;
text-align:center;
text-transform:uppercase;
color:#fff;
font-size: 24px;
height: 60px;
line-height: 60px;
padding: 0 50px;
border-radius: 30px;
background-image: -moz-linear-gradient( 0deg, rgb(240,129,67) 0%, rgb(175,50,48) 100%);
background-image: -webkit-linear-gradient( 0deg, rgb(240,129,67) 0%, rgb(175,50,48) 100%);
background-image: -ms-linear-gradient( 0deg, rgb(240,129,67) 0%, rgb(175,50,48) 100%);
box-shadow: 0 0 20px 10px rgba(175,50,48,0.8);
-webkit-transition: all 0.3s;
transition: all 0.3s;
}
.btn_big:hover {
color:#fff;
box-shadow: none;
}

.header {
position:fixed;
top:0;
left:0;
z-index:100;
width:100%;
height:80px;
display:flex;
justify-content:space-between;
align-items:center;
background:#000;
}
.logo {
margin-left:40px;
margin-right:20px;
height:100%;
display:flex;
align-items:center;
padding:10px 0;
}
.logo img {
display:block;
max-height:100%;
}
.header-inner {
display:flex;
align-items:center;
height:100%;
}
.menu_top ul {
list-style:none;
display:flex;
}
.menu_top li {
margin:0 25px;
}
.menu_top a {
text-decoration:none;
text-transform:uppercase;
font-size:18px;
color:#fff;
white-space:nowrap;
}
.menu_top a:hover {
color:#f08143;
}
.btn_menu_inner {
height:100%;
}
.btn_menu {
position:relative;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
width:80px;
height:100%;
border-left:2px #d0703a solid;
}
.btn_menu span {
display:block;
width:40px;
height:1px;
background:#fff;
margin:6px 0;
}
.btn_menu:hover span {
background:#f08143;
}

a.mod-cart {
display:flex;
align-items:center;
height:100%;
padding:0 30px;
text-decoration:none;
color:#fff;
font-size:18px;
background-image: linear-gradient( 90deg, rgb(240,129,67) 0%, rgb(175,50,48) 100%);
white-space:nowrap;
}
a.mod-cart.active {
background:#b03330;
}
.mod-cart-icon {
display:block;
width:31px;
min-width:31px;
height:31px;
margin-right:10px;
background:url(../img/icon-cart.svg) no-repeat center;
background-size:100% auto;
}


.main {
position:relative;
padding-top:80px;
flex-grow:1;
display:flex;
padding-left: 40px;
max-width:1880px;
width:100%;
}
.content {
position:relative;
z-index:5;
flex-grow:1;
padding:0 70px;
min-width: 0;
max-width: 100%;
}
.left {
position:fixed;
z-index:10;
top:80px;
bottom:0;
left:0;
}
.main:before {
content:'';
position:absolute;
z-index:1;
top:0;
left:0;
width:100%;
height:100%;
background:url(../img/circle.png) repeat right bottom;
opacity:0.4;
}
.main:after {
content:'';
position:absolute;
z-index:2;
top:0;
left:0;
width:100%;
height:100%;
background-image:linear-gradient( 0deg, rgba(0,0,0,0) 0%, rgba(24,26,27,1) 100%);
}
.menu_catalog {
display:none;
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
width:300px;
background:#15171c;
box-shadow: 0px 0px 38px 0px rgba(0, 0, 0, 0.5);
-webkit-transition: all 0.3s;
transition: all 0.3s;
}
.menu_catalog .tabs {
height:100%;
display:flex;
flex-direction:column;
}
.menu_catalog .tab_content {
flex-grow: 1;
min-height: 0;
}
.open_left .menu_catalog {
display:block;
}
.menu_catalog form,
.filter_characteristic {
height:100%;
}
.menu_catalog ul {
list-style:none;
height:100%;
overflow-y:auto;
}
.menu_catalog li {
border-bottom:1px #fff solid;
}
.menu_catalog li:last-child {
border-bottom:none;
}
.menu_catalog li a {
display:flex;
align-items:center;
font-size:18px;
color:#fff;
text-decoration:none;
text-transform:uppercase;
height:80px;
overflow: hidden;
}
.menu_catalog li.active > a,
.menu_catalog li a:hover {
background:#f08143;
}
.menu_catalog_img {
display:block;
height: 100%;
width:150px;
min-width:150px;
padding: 10px 0;
}
.menu_catalog_img img {
display:block;
max-height: 100%;
margin:0 auto;
}
.btn_left_close {
position:absolute;
top:0;
right:-40px;
width:40px;
height:40px;
background:#15171c;
display:flex;
justify-content:center;
align-items:center;
}
.btn_left_close img {
display:block;
}

a.btn_left {
position:relative;
text-decoration:none;
text-transform:uppercase;
font-size:18px;
color:#fff;
display:flex;
justify-content:center;
align-items:center;
width:40px;
height:100%;
background:#ef8043;
box-shadow: 0px 0px 38px 0px rgba(0, 0, 0, 0.5);
}
a.btn_left:before {
content:'';
position:absolute;
top:40px;
right:-30px;
width:30px;
height:30px;
background:url(../img/next.svg) no-repeat center;
background-size:100% auto;
}
a.btn_left span {
transform: rotate(-90deg);
}
.open_left a.btn_left {
display:none;
}

.main_menu_wrap {
display:none;
position:fixed;
z-index:400;
top:0;
left:0;
width:100%;
height:100%;
background:#181a1b;
}
.main_menu_wrap:before {
content:'';
position:absolute;
z-index:1;
top:0;
left:0;
width:100%;
height:100%;
background:url(../img/circle.png) repeat right bottom;
opacity:0.4;
}
.main_menu_wrap:after {
content:'';
position:absolute;
z-index:2;
top:0;
left:0;
width:100%;
height:100%;
background-image:linear-gradient( 0deg, rgba(0,0,0,0) 0%, rgba(24,26,27,1) 100%);
}
body.main_menu_open {
overflow:hidden;
}
.main_menu_open .main_menu_wrap {
display:block;
}
.main_menu_inner {
position:absolute;
z-index:5;
top:0;
left:0;
width:100%;
height:100%;
display:flex;
flex-direction:column;
justify-content:space-between;
align-items:center;
overflow-y: auto;
}
.social {
display:inline-flex;
}
.social a {
display:flex;
align-items:center;
margin-left:40px;
}
.social a img {
width:38px;
min-width:38px;
margin-right:30px;
}
.main_menu_info {
text-align:right;
font-size:24px;
color:#fff;
width:100%;
padding:0 40px 40px 40px;
}
.main_menu_info a {
color:#fff;
text-decoration:none;
}
.main_menu_close {
position:absolute;
top:0;
right:0;
width:60px;
height:60px;
display:flex;
justify-content:center;
align-items:center;
background:#f08143;
}
.main_menu_close img {
display:block;
width:40px;
}
.mainmenu {
flex-grow:1;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
}
.mainmenu ul {
list-style:none;
}
.mainmenu li {
margin-bottom:10px;
}
.mainmenu li a {
font-size:24px;
color:#fff;
text-decoration:none;
text-transform:uppercase;
}
.mainmenu li a:hover,
.mainmenu li.active > a {
color:#ef8043;
}
.address {
padding:10px 0;
}
.mainmenu_logo {
display:block;
margin-bottom:20px;
}
.mainmenu_logo img {
height:50px;
}
.mainmenu_menu_top {
display:none;
}

.breadcrumbs {
list-style:none;
display:flex;
flex-wrap:wrap;
font-size:16px;
text-transform:uppercase;
color:#f08143;
padding-top:15px;
padding-bottom:10px;
}
.breadcrumbs a {
color:#848383;
text-decoration:none;
}
.list_product_inner {
margin-left:-20px;
margin-right:-20px;
display:flex;
flex-wrap:wrap;
}
.product {
width:25%;
padding:0 20px;
margin-bottom:40px;
}
.product-item {
max-width:360px;
margin:0 auto;
background:#15171c;
box-shadow: 0px 0px 38px 0px rgba(0, 0, 0, 0.5);
-webkit-transition: all 0.3s;
transition: all 0.3s;
}
.product-item:hover {
background:#ee7e42;
}
.product-item a {
display:block;
color:#fff;
text-decoration:none;
}
.product-item-img {
width:100%;
padding-top:66%;
position:relative;
}
.label_multiselect {
position:absolute;
z-index:5;
top:0;
left:0;
right:0;
display:flex;
justify-content:flex-end;
}
.label_multiselect img {
display:block;
max-width:50px;
margin:0 20px;
}
.product-item-img span {
position:absolute;
z-index:4;
top:0;
left:0;
width:100%;
height:100%;
display:flex;
justify-content:center;
align-items:center;
overflow:hidden;
}
.product-item-img img {
display:block;
}
.product-item-content {
padding:30px 40px;
}
.product-item-name {
font-size:22px;
line-height:24px;
height:72px;
overflow:hidden;
border-bottom:1px #fff solid;
margin-bottom:15px;
}
.product-item-desc {
font-size:18px;
line-height:20px;
height:60px;
overflow:hidden;
margin-bottom:15px;
}
.product-item-price {
font-size:24px;
display:flex;
justify-content:space-between;
}
.add_cart {
display:flex;
align-items:center;
}
.add_cart a {
display:block;
width:15px;
text-align:center;
color: #fff;
text-decoration: none;
}
.add_cart a.red {
color:#b03330;
}
.quantity {
margin:0 8px;
}

.loading {
display:none;
position:fixed;
z-index:999;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,.7);
}
.loading:after {
content:"";
position:absolute;
display: block;
top:50%;
left:50%;
margin:-30px 0 0 -30px;
width: 60px;
height: 60px;
border-radius: 50%;
border: 5px solid #fff;
border-color: #fff transparent #fff transparent;
animation: lds-dual-ring 1.2s linear infinite;
}
@keyframes lds-dual-ring {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}

.footer {
display:flex;
justify-content:space-between;
align-items:center;
padding:20px 80px;
background:#000;
color:#515151;
font-size:14px;
}
.footer a {
color:#515151;
text-decoration:none;
}
.footer .social a {
margin:0 0 0 40px;
}
.footer .social a img {
margin:0;
}

.product_page_wrap {
padding-top:25px;
margin-bottom:70px;
display:flex;
justify-content:space-between;
align-items:flex-start;
}
.product_page_inner {
position:relative;
flex-grow:1;
display:flex;
background:#15171c;
}
.product_page_images {
position:relative;
width: 50%;
}
.product_page_images a {
position:relative;
display:block;
height: 100%;
}
.product_page_images a:after {
content:'';
position:absolute;
bottom:40px;
right:40px;
width:46px;
height:46px;
background:url(../img/lupa.png) no-repeat center;
background-size:100% auto;
}
.product_page_images img {
display: block;
height: 100%;
width: 100%;
object-fit: cover;
}
.product_page_content {
width:50%;
min-width:480px;
padding:30px 40px;
display:flex;
flex-direction:column;
justify-content:space-between;
}
.product_page_content h1 {
font-size:28px;
font-weight:300;
}
.hr {
height:1px;
background:#fff;
margin-bottom: 20px;
}
.back_link {
position:absolute;
top:0;
right:-30px;
width:30px;
height:30px;
background:url(../img/prev.svg) no-repeat center;
background-size:100% auto;
}
.list_related {
position:relative;
width:240px;
min-width:240px;
margin-left:7%;
}
.related_header {
position:absolute;
top:-58px;
left:0;
width:100%;
font-size:18px;
color:#6c6c6c;
text-transform:uppercase;
}
.block_related {
margin-bottom:40px;
}
.block_related .product-item-content {
padding: 20px 30px;
}
.block_related .product-item-name {
font-size: 18px;
line-height: 20px;
height: 40px;
margin-bottom: 10px;
}
.block_related .product-item-desc {
font-size: 14px;
line-height: 16px;
height: 48px;
overflow: hidden;
margin-bottom: 10px;
}
.block_related .product-item-price {
font-size: 20px;
}
.block_related .label_multiselect img {
width: 50px;
margin: 0 10px;
}
.sorting_wrap {
padding-bottom:35px;
display:flex;
justify-content:space-between;
}
.sorting_list {
display:flex;
align-items:center;
}
.sorting_list a {
display:flex;
align-items:center;
font-size:16px;
color:#fff;
text-decoration:none;
margin-right:40px;
}
.sorting_list span {
display:block;
position:relative;
width:18px;
height:19px;
margin-left:10px;
}
.sorting_list i,
.sorting_list i:before,
.sorting_list i:after {
content:'';
position:absolute;
top:0;
left:0;
width:8px;
height:3px;
background:#fff;
}
.sorting_list i:before {
top:8px;
width:13px;
}
.sorting_list i:after {
top:16px;
width:18px;
}
.sorting_list a.active i,
.sorting_list a.active i:before,
.sorting_list a.active i:after {
background:#f08143;
}
.sorting_list a.active.desc i {
width:18px;
}
.sorting_list a.active.desc i:after {
width:8px;
}

.tab_btns {
display:flex;
padding:10px 0;
}
.tab_btns a {
display:block;
width:50%;
text-align:center;
text-decoration:none;
text-transform:uppercase;
font-size:18px;
color:#fff;
border-right:2px #f08143 solid;
}
.tab_btns a:last-child {
border:none;
}
.tab_btns a.active {
color:#f08143;
}
.tab_content {
display:none;
}
.tab_content.active {
display:block;
}
.filter_characteristic a input {
display:none;
}
.remove_filter {
position:relative;
display:block;
text-decoration:none;
font-size:18px;
color:#848383;
padding-right:28px;
}
.remove_filter:after {
content:'';
position:absolute;
top:0;
right:0;
width:17px;
height:100%;
background:url(../img/btn_left_close.svg) no-repeat center;
background-size:100% auto;
}

.modal-cart {
display:none;
position:fixed;
z-index:110;
top:80px;
bottom:0;
right:0;
width:520px;
background:#15171c;
}
.modal-cart:after {
content:'';
position:absolute;
z-index:120;
top:-15px;
right:100px;
width:0;
height:0;
border-right:10px rgba(0,0,0,0) solid;
border-bottom:15px #15171c solid;
border-left:10px rgba(0,0,0,0) solid;
}
.modal-cart.load:before {
content:"";
position:absolute;
z-index:125;
display: block;
top:50%;
left:50%;
margin:-30px 0 0 -30px;
width: 60px;
height: 60px;
border-radius: 50%;
border: 5px solid #fff;
border-color: #fff transparent #fff transparent;
animation: load 1.2s linear infinite;
}
@keyframes load {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}


.modal-cart-inner {
display:flex;
flex-direction:column;
justify-content:space-between;
height:100%;
overflow-y:auto;
}
.modal-cart-padd {
padding:15px 40px;
border-bottom:1px #fff solid;
}
.modal-cart-title {
text-transform:uppercase;
padding-top:30px;
margin-bottom:25px;
}
.modal-cart-item {
display:flex;
padding:15px 0;
}
.modal-cart-name {
width:40%;
overflow:hidden;
white-space:nowrap;
text-overflow: ellipsis;
margin-right:30px;
}
.modal-cart-quantity {
width:30%;
display:flex;
justify-content:center;
}
.modal-cart-price {
width:30%;
text-align:right;
}
.modal-cart-total {
display:flex;
justify-content:space-between;
padding:20px 0;
}
.modal-cart-btn {
display:flex;
justify-content:center;
align-items:center;
width:100%;
height:80px;
background:#b03330;
font-size:24px;
color:#fff;
text-decoration:none;
text-transform:uppercase;
border:none;
}

.checkout {
display:flex;
background:#15171c;
padding-bottom:30px;
padding-top:40px;
}
.checkout_cart {
width:50%;
}
.checkout_address {
width:50%;
padding:0 30px;
}
.checkout_address .tab_btns {
margin-bottom:40px;
}
.input {
position:relative;
margin-bottom:15px;
}
.input label {
display:block;
font-size:18px;
}
.input input {
display:block;
width:100%;
height:40px;
line-height:40px;
padding:0 10px;
border:none;
background:#fff;
}
.number_persons label {
font-size:24px;
}
.number_persons input {
width:100px;
text-align:center;
}
.group-inputs {
display: grid;  
grid-template-columns: 1fr 1fr;
column-gap: 40px;
align-items: self-end;
}
.group3-inputs {
display: grid;  
grid-template-columns: 1fr 1fr 1fr;
column-gap: 40px;
align-items: self-end;
}


.radio {
display:flex;
align-items:center;
}
.radio label {
display:flex;
}
.radio label input {
margin-right:10px;
}

.checkbox {
display:flex;
align-items:center;
}
.checkbox label {
display:block;
margin-left:10px;
}
.datetime {
display:none;
}

.room_order_desc {
position:absolute;
top:10px;
right:-30px;
}
.room_order_desc span {
display:block;
width:20px;
height:20px;
background:#fff;
border-radius:50%;
font-size:18px;
line-height:20px;
color:#000;
text-align:center;
}
.room_order_desc div {
display:none;
position:absolute;
z-index:5;
top:100%;
right:10px;
background-color: rgb(21, 23, 28);
box-shadow: 0px 0px 73px 0px rgba(0, 0, 0, 0.41);
padding:30px;
width:400px;
}
.room_order_desc:hover div {
display:block;
}

.cart_block_discount .group-inputs {
margin-left:30px;
}
.cart_block_discount button {
width:100%;
height:40px;
display:flex;
justify-content:center;
align-items:center;
background:#b03330;
font-size:18px;
color:#fff;
text-decoration:none;
text-transform:uppercase;
border:none;
}
a.checkout_back {
color:#b03330;
text-decoration:none;
text-transform:uppercase;
position:relative;
display:inline-block;
padding-left:30px;
}
a.checkout_back:before {
content:'';
position:absolute;
top:0;
left:0;
width:20px;
height:100%;
background:url(../img/prev_red.svg) no-repeat center;
}

.finish {
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
display:flex;
justify-content:center;
align-items:center;
}
.finish div {
text-align:center;
padding:40px;
background-color: rgb(21, 23, 28);
box-shadow: 0px 0px 73px 0px rgba(0, 0, 0, 0.41);
}

a.more {
display:flex;
justify-content:center;
align-items:center;
color:#fff;
background:#b03330;
height:80px;
text-decoration:none;
text-transform:uppercase;
}
.block_related a.more {
font-size:18px;
height:50px;
}
.action_list .product-item-desc {
margin-bottom:0;
}
.action_related .product-item-desc {
height: 32px;
margin-bottom:0;
}
.action_related .product-item-content {
padding-bottom:10px;
}
.action_list .product-item-content {
padding-bottom:20px;
}

.fs-16 {
font-size:16px;
}
.mr-5 {
margin-right:5px;
}
.extra_fields {
margin-bottom:20px;
}
.extra_field {
display:flex;
align-items:center;
margin-bottom:10px;
}
.extra_field_img {
min-width:35px;
width:35px;
margin-right:15px;
}
.extra_field_img img {
display:block;
}
.product_page_list {
margin-bottom:20px;
}
.product_page_list ul {
list-style:none;
display:flex;
flex-wrap:wrap;
}
.product_page_list li {
margin-right:10px;
margin-bottom:10px;
}
.product_page_list li:before {
content:'\2714';
display:inline-block;
margin-right:10px;
}

.mod_lang {
width:94px;
height: 100%;
border-left:1px #fff solid;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
}
.mod_lang_item {
position:relative;
width:60px;
}
.mod_lang_item:first-child {
border-bottom:1px #fff solid;
}
.mod_lang_item > a {
display:block;
font-size:14px;
line-height:22px;
text-decoration:none;
text-align:center;
color:#ef8043;
}
.mod_lang_item ul {
display:none;
}
.mod_lang_item.active ul {
display:block;
position:absolute;
z-index:10;
top:100%;
left:0;
width:100%;
background:#181a1b;
box-shadow:0 0 5px rgba(0,0,0,.5);
list-style:none;
}
.mod_lang_item.active li a {
display:flex;
justify-content:center;
align-items:center;
text-decoration:none;
font-size:14px;
color:#ef8043;
padding:4px 6px;
}
.mod_lang_item.active li a img {
display:block;
width:18px;
margin-right:6px;
}


.slick-prev, .slick-next {
position:absolute;
z-index:10;
bottom:0;
left:0;
width:50px;
height:50px;
background-color:#ef8043;
background-repeat:no-repeat;
background-position:center;
background-size:30px auto;
border:none;
font-size:0;
}
.slick-next {
left:50px;
background-image:url(../img/next.svg);
}
.slick-prev {
background-image:url(../img/prev.svg);
}

a.btn_open_callback,
a.btn_open_booking {
display:flex;
align-items:center;
justify-content:center;
font-size:24px;
color:#fff;
text-decoration:none;
text-transform:uppercase;
text-align:center;
height:82px;
background:#b03330;
max-width:360px;
}

.overlay {
display:none;
position:fixed;
z-index:500;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.5);
}
.overlay_inner {
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
display:flex;
justify-content:center;
align-items:center;
}
.callback {
position:relative;
padding:40px;
width: 100%;
max-width: 400px;
background-color: rgb(21, 23, 28);
box-shadow: 0px 0px 73px 0px rgba(0, 0, 0, 0.41);
margin:0;
max-height:100%;
overflow-y:auto;
}
.overlay_close {
position:absolute;
top:10px;
right:10px;
}
.group_input {
margin-bottom:15px;
}
.group_input:last-child {
margin-bottom:40px;
}
.group_input .label {
margin-bottom:5px;
}
.group_input input,
.group_input select {
display:block;
width:100%;
height:40px;
padding:0 10px;
background:#fff;
border:none;
line-height:40px;
}
.callback_title {
text-align:center;
text-transform:uppercase;
margin-bottom:30px;
}
.callback button {
display:block;
width:100%;
height:60px;
font-size:24px;
color:#fff;
background:#b03330;
border:none;
text-transform:uppercase;
}
.tcallback {
width:100%;
margin-bottom:20px;
font-size:16px;
}
.tcallback th {
border-bottom:1px #fff solid;
text-align:center;
padding:4px 0;
}
.tcallback th:first-child,
.tcallback td:first-child {
text-align:left;
}
.tcallback tr:last-child td {
border-bottom:none;
}
.select_flex {
display:flex;
}
.tcallback td {
padding:0;
}
.tablebooking a,
.tablebooking span {
display:block;
color:#f08143;
text-decoration:none;
padding:4px 6px;
text-align:center;
}
.tablebooking span {
#color:#ccc;
#background:#ccc;
}
.tablebooking a:hover {
background: #f0814342;
}
.tablebooking a.active {
background:#f08143;
color:#fff;
}







