@font-face {
    font-family: 'FontAwesome';
    src: url('../fonts/FontAwesome.eot');
    src: url('../fonts/FontAwesome.eot?#iefix') format('embedded-opentype'),
        url('../fonts/FontAwesome.woff2') format('woff2'),
        url('../fonts/FontAwesome.woff') format('woff'),
        url('../fonts/FontAwesome.ttf') format('truetype'),
        url('../fonts/FontAwesome.svg#FontAwesome') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'HelveticaNeueCyr';
    src: url('../fonts/HelveticaNeueCyr-Roman.eot');
    src: url('../fonts/HelveticaNeueCyr-Roman.eot?#iefix') format('embedded-opentype'),
        url('../fonts/HelveticaNeueCyr-Roman.woff2') format('woff2'),
        url('../fonts/HelveticaNeueCyr-Roman.woff') format('woff'),
        url('../fonts/HelveticaNeueCyr-Roman.ttf') format('truetype'),
        url('../fonts/HelveticaNeueCyr-Roman.svg#HelveticaNeueCyr-Roman') format('svg');
    font-weight: normal;
    font-style: normal;
}

:root {
  --primary-color: #283892;
  --secondary-color: #FEDF00;
  --body-font: HelveticaNeueCyr;
  --text-color: #333333;
}
html {
    font-size: 16px;
}
body{
	font-family: var(--body-font);
}
body *{
	outline: none!important;
}
body a {
    color: var(--primary-color);
    text-decoration: none;
    background-color: transparent;
}
body a:visited {
    color: var(--primary-color);
}
.prim-title > h3{
	font-family: var(--body-font);
	font-style: normal;
	font-weight: 550;
	font-size: 42px;
	line-height: 30px;
	text-align: center;
	margin-bottom: 24px;
	color: var(--primary-color);
}
.prim-title.wh > h3{
	color: #fff;
}
.prim-title > h3:after{
	content: '';
	display: block;
	width: 43px;
	height: 11px;
	margin: 24px auto 0;
	background:url(../images/wave.png) no-repeat center;
}
.prim-title.wh > h3:after{
	background:url(../images/wave-wh.png) no-repeat center;
}
.back-secondary{
	background:var(--secondary-color);
}
.page-custom-title{
    min-height: 41.5vh;
}
.page-custom-title h1{
	color: #fff;
	margin:0;
	font-family: var(--body-font);
	font-weight: bold;
}
.page-custom-title .sub-title{
  font-size: 22px;
  line-height: 22px;
  color: #fff;
}
.opalhotel-datpicker .ui-datepicker-title {
   font-family: var(--body-font);;
}

.back-primary{
	background:var(--primary-color);
}
.primary-button .textwidget a{
	-webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border-radius: 50px;
    background: var(--primary-color);
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 20px;
    color: #FFFFFF;
    padding: 15px 15px;
    display: inline-block;
    text-decoration: none;
    transition: 0.3s;
    min-width: 219px;
}
.primary-button .textwidget p{
	margin:0;
}
.primary-button .textwidget a:hover{
    background: var(--secondary-color);
    color:var(--primary-color);
}
.pb-5, .py-5 {
    padding-bottom: 5rem !important;
}
.pt-5, .py-5 {
    padding-top: 5rem !important;
}
.author-description .author-link, .comment-metadata, .comment-reply-link, .comments-title, .comment-author .fn, .discussion-meta-info, .entry-meta, .entry-footer, .main-navigation, .no-comments, .not-found .page-title, .error-404 .page-title, .post-navigation .post-title, .page-links, .page-description, .pagination .nav-links, .sticky-post, .site-title, .site-info, #cancel-comment-reply-link, h1, h2, h3, h4, h5, h6{
    font-family: var(--body-font);
}



.pum-title, .pum-theme-lightbox .pum-title{
    font-size: 26px;
    margin-bottom: 30px;
    color:var(--primary-color);
    padding: 0 15px;
}
.popmake-content .wpcf7-form-control-wrap{
	margin-bottom: 20px;
	display: block;
	overflow:hidden;
}
.popmake-content .wpcf7-form-control-wrap input{
	  height: 40px;
    line-height: 100%;
    font-size: 17px;
    border: none;
    background: #F2F2F2;
    color: var(--body-font);
}
.popmake-content .wpcf7-form-control-wrap input::-webkit-input-placeholder { 
  color: #777777;
}

.popmake-content .wpcf7-form-control-wrap input:-ms-input-placeholder { 
  color: #777777;
}

.popmake-content .wpcf7-form-control-wrap input::placeholder {
  color: #777777;
}
.pum-container, .pum-theme-lightbox .pum-container {
    border-color: var(--secondary-color);
}


/*--------------------haeder------------------*/



.hd-adress{
	font-family: var(--body-font);
	font-style: normal;
	font-weight: normal;
	font-size: 14px;
	line-height: 14px;
	color: #777777;
}
.hd-adress p{
	margin-bottom: 0;
}

.hd-socials ul{
	font-size: 0;
	margin:0;
	padding: 0;
}
.hd-socials ul li{
	margin-right: 5px;
    display: inline-block;
    font-size: 0;
}
.hd-socials ul li a{
	font-size: 0;
	width: 30px;
	height: 30px;
	color: #fff;
	text-align: center;
	line-height: 29px;
	transition: 0.3s;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%; 
 	border-radius: 100%;
 	background:var(--primary-color);
 	display: inline-block;
 	text-decoration: none;
}
.hd-socials ul li a:hover{
	color: var(--secondary-color);
	background:var(--primary-color);
}
.hd-socials ul li a:before{
	font-family: Fontawesome;
	font-size: 16px;
}
.hd-socials ul li.sc-inst a:before{
	content: '\f16d';
}
.hd-socials ul li.sc-vk a:before{
	content: '\f189';
}
.hd-socials ul li.sc-ok a:before{
	content: '\f263';
}
.hd-socials ul li.sc-fc a:before{
	content: '\f09a';
}

.hd-phone p{
	margin-bottom: 0;
}
.hd-phone a{
	font-family: var(--body-font);
	font-style: normal;
	font-weight: bold;
	font-size: 22px;
	line-height: 22px;
	color: #333333;
	text-decoration: none;
}

.mod-button p{
	margin-bottom: 0;
}
.mod-button a{
	font-family: var(--body-font);
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 15px;
    text-decoration: none;
    color: var(--primary-color);
    background: var(--secondary-color);
    -webkit-border-radius: 100px; 
	-moz-border-radius: 100px; 
	border-radius: 100px;
    padding: 13px 5px;
    box-sizing: border-box;
    text-align: center;
    display: block;
    transition: 0.3s;
}
.mod-button a:hover{
    color: #fff;
    background: var(--primary-color);
}

.menu-inner{
	background: var(--primary-color);
}
.menu-inner nav{
	margin:0;
	padding:0;
}
.main-menu{
	width: 100%;
	text-align: center;
}
.main-menu ul{
	margin:0;
	width: 100%;
}
.main-menu ul li{
	width: 14.28%;
	display: inline-block;
	line-height: 100%;
}
.main-menu ul li a{
	font-family: var(--body-font);
	font-style: normal;
	font-weight: normal;
	font-size: 15px;
	line-height: 15px;
	color: #FFFFFF!important;
	padding: 21px 0;
	display: block;
	text-decoration: none;
	border-left: 1px solid #2F42AE;
	border-right: 1px solid #2F42AE;
	transition: 0.3s;
}
.main-menu ul li:first-child a{
	border-left: 2px solid #2F42AE;
}
.main-menu ul li:last-child a{
	border-right: 2px solid #2F42AE;
}
.main-menu ul li a:hover{
	background: var(--secondary-color);
	color: var(--primary-color)!important;
}




/*-------------home-banner----------------*/


.home-banner .slide-desc-text .slide-title{
	line-height: 72px;
	font-weight: bold;
}
.home-banner .slide-desc-text .slide-text p, .home-banner .slide-desc-text .slide-text div, .home-banner .slide-desc-text .slide-text li{
	font-weight: normal;
	line-height: 35px;
}

.slider-section{
	position: relative;
}
.slider-section .container{
	position: absolute;
    left: auto;
    right: 21%;
    top: 17%;
    max-width: none;
    width: auto;
    margin: 0;
}
.hephaistos .tp-bullet {
    width: 15px;
    height: 15px;
    position: absolute;
    background: var(--primary-color);
    border: 2px solid rgba(255,255,255,0.9);
    border-radius: 50%;
    cursor: pointer;
    box-sizing: border-box;
    box-shadow: none;
    transition: 0.3s;
}
.hephaistos .tp-bullet:hover, .hephaistos .tp-bullet.selected {
    background: var(--secondary-color);
    border: 4px solid rgba(255,255,255,0.9);
}

/*
.vert-avail-search{
	background:#fff;
	padding: 30px 35px;
    box-sizing: border-box;
    max-width: 367px;
}
.vert-avail-search .serch-title{
	font-style: normal;
	font-weight: bold;
	font-size: 18px;
	line-height: 18px;
	color: var(--text-color);
	display: block;
}
.vert-avail-search .mphb-required-fields-tip{
	font-style: normal;
	font-weight: normal;
	font-size: 14px;
	line-height: 14px;
	color: #777777;
}
.vert-avail-search .mphb_sc_search-wrapper p{
	margin:10px 0;
}
.vert-avail-search .mphb_sc_search-wrapper label{
	font-style: normal;
	font-weight: normal;
	font-size: 14px;
	line-height: 14px;
	color: var(--primary-color);
}
.vert-avail-search .mphb_sc_search-wrapper input, .vert-avail-search .mphb_sc_search-wrapper select{
	font-style: normal;
	font-weight: normal;
	font-size: 14px;
	line-height: 14px;
	color: #777777;
	border:none;
	background:#F2F2F2;
	width: 100%;
	min-height: 25px;
}
.vert-avail-search .mphb_sc_search-wrapper input{
	min-height: 50px;
}
.vert-avail-search .mphb_sc_search-wrapper input[name="mphb_check_in_date"],  .vert-avail-search .mphb_sc_search-wrapper input[name="mphb_check_out_date"]{
	background-image: url(../images/calendar.png);
    background-position: 96% 15px;
    background-repeat: no-repeat;
}

.vert-avail-search .mphb_sc_search-wrapper .mphb_sc_search-submit-button-wrapper{
	margin-top: 25px;
}
.vert-avail-search .mphb_sc_search-wrapper .mphb_sc_search-submit-button-wrapper input{
	background: var(--primary-color);
    border-radius: 0;
    color: #fff;
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 15px;
    transition: 0.3s;
}
.vert-avail-search .mphb_sc_search-wrapper .mphb_sc_search-submit-button-wrapper input:hover{
	background: var(--secondary-color);
    color: var(--primary-color);
}





.horiz-avail-search .mphb-required-fields-tip{
	float: left;
	width: 29%;
	margin-right: 1%!important;
	padding: 5px 0 0;
}
.horiz-avail-search .mphb-required-fields-tip .serch-title{
    font-weight: bold;
    font-size: 28px;
    line-height: 28px;
    color: var(--primary-color);
    display: block;
    margin-bottom: 10px;
}
.horiz-avail-search .mphb-required-fields-tip small{
	font-size: 14px;
    line-height: 20px;
    color: var(--primary-color);
    display: block;
    padding-right: 15%;
}
.horiz-avail-search .mphb_sc_search-check-in-date{
	float: left;
	width: 19%;
	margin-right:1%!important;
}
.horiz-avail-search .mphb_sc_search-check-out-date{
	float: left;
	width: 19%;
	margin-right:1%!important;
}
.horiz-avail-search .mphb_sc_search-adults{
	float: left;
	width: 7%;
	margin-right:1%!important;
}
.horiz-avail-search .mphb_sc_search-children{
	float: left;
	width: 7%;
	margin-right:1%!important;
}
.horiz-avail-search .mphb_sc_search-submit-button-wrapper{
	float: left;
	width: 14%;
}
.horiz-avail-search .mphb_sc_search-wrapper p{
	margin:0;
}
.horiz-avail-search .mphb_sc_search-wrapper label{
	font-size: 14px;
	line-height: 14px;
	color: var(--primary-color);
	margin-bottom: 5px;
}
.horiz-avail-search .mphb_sc_search-wrapper input, .horiz-avail-search .mphb_sc_search-wrapper select{
	font-style: normal;
	font-weight: normal;
	font-size: 15px;
	line-height: 15px;
	color: #777777;
	border:none;
	background:#F2F2F2;
	width: 100%;
	min-height: 25px;
}
.horiz-avail-search .mphb_sc_search-wrapper select{
	min-height: 50px;
    appearance: none;
    -webkit-appearance: none;
    padding: 13px 1em 13px 1em;
    box-sizing: border-box;
    line-height: 14px;
    background-image: url(../images/down.png);
    background-repeat: no-repeat;
    background-size: 15%;
    background-position: 80% 20px;
}
.horiz-avail-search .mphb_sc_search-wrapper input{
	min-height: 50px;
}
.horiz-avail-search .mphb_sc_search-wrapper input[name="mphb_check_in_date"],  .horiz-avail-search .mphb_sc_search-wrapper input[name="mphb_check_out_date"]{
	background-image: url(../images/calendar-prim.png);
    background-position: 96% 15px;
    background-repeat: no-repeat;
}

.horiz-avail-search .mphb_sc_search-wrapper .mphb_sc_search-submit-button-wrapper{
	margin-top: 25px;
}
.horiz-avail-search .mphb_sc_search-wrapper .mphb_sc_search-submit-button-wrapper input{
	background: var(--primary-color);
    border-radius: 0;
    color: #fff;
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 15px;
    transition: 0.3s;
}
.horiz-avail-search .mphb_sc_search-wrapper .mphb_sc_search-submit-button-wrapper input:hover{
	background: #fff;
    color: var(--primary-color);
}


.mphb-calendar .datepick,
.datepick-popup .datepick {
  font-size: 0.875;
  border: 0px solid;
  border-radius: 0;
  width: 31.429em;
  max-width: 100%;
  font-family: inherit;
}

.mphb-calendar a,
.datepick-popup a {
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.mphb-calendar .datepick-nav, .mphb-calendar .datepick-ctrl,
.datepick-popup .datepick-nav,
.datepick-popup .datepick-ctrl {
  font-size: inherit;
  font-weight: normal;
}
.mphb-calendar .datepick-nav,
.datepick-popup .datepick-nav {
  background-color: #fff;
  border: 1px solid #e0e1e5;
}
.mphb-calendar .datepick-nav a,
.datepick-popup .datepick-nav a {
  color: #333333;
}
.mphb-calendar .datepick-nav a:hover,
.datepick-popup .datepick-nav a:hover {
  background-color: #f4f4f4;
  color: #333333;
}
.mphb-calendar .datepick-nav a.datepick-disabled,
.datepick-popup .datepick-nav a.datepick-disabled {
  cursor: not-allowed;
  color: #d0d0d0;
}
.mphb-calendar .datepick-nav a.datepick-disabled:hover,
.datepick-popup .datepick-nav a.datepick-disabled:hover {
  background-color: #fff;
}
.mphb-calendar .datepick-ctrl,
.datepick-popup .datepick-ctrl {
  border-left: 1px solid #e0e1e5;
  border-right: 1px solid #e0e1e5;
  border-bottom: 1px solid #e0e1e5;
  background-color: #fff;
}
.mphb-calendar .datepick-ctrl a,
.datepick-popup .datepick-ctrl a {
  color: #333333;
}
.mphb-calendar .datepick-ctrl .datepick-cmd:hover,
.datepick-popup .datepick-ctrl .datepick-cmd:hover {
  background-color: #fff;
  color: #01bea0;
}
.mphb-calendar a.datepick-cmd,
.datepick-popup a.datepick-cmd {
  height: auto;
  line-height: 2.714em;
}
.mphb-calendar .datepick-month-header, .mphb-calendar .datepick-month-header select, .mphb-calendar .datepick-month-header input,
.datepick-popup .datepick-month-header,
.datepick-popup .datepick-month-header select,
.datepick-popup .datepick-month-header input {
  height: auto;
  background-color: #fff;
  color: #333333;
  font-weight: normal;
  line-height: 2.714em;
  font-family: inherit;
}
.mphb-calendar .datepick-month-header select,
.datepick-popup .datepick-month-header select {
  background-position: right 0.35em top 1em;
}
@media screen and (min-width: 48em) {
  .mphb-calendar .datepick-month-row,
  .datepick-popup .datepick-month-row {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }
}
.mphb-calendar .datepick-month,
.datepick-popup .datepick-month {
  width: 100%;
  border: 0px solid #e0e1e5;
  border-bottom: 1px solid #e0e1e5;
  border-right: 1px solid #e0e1e5;
  border-left: 1px solid #e0e1e5;
}
@media screen and (min-width: 48em) {
  .mphb-calendar .datepick-month,
  .datepick-popup .datepick-month {
    width: 50%;
  }
  .mphb-calendar .datepick-month.last,
  .datepick-popup .datepick-month.last {
    border-left: 0px solid #e0e1e5;
  }
  .mphb-calendar .datepick-month.first,
  .datepick-popup .datepick-month.first {
    margin-right: 1px;
  }
}
@media screen and (min-width: 48em) {
  .mphb-calendar .datepick-month + .datepick-month,
  .datepick-popup .datepick-month + .datepick-month {
    border-left: 1px solid #e0e1e5;
    padding-right: 0;
  }
}
@media screen and (min-width: 48em) {
  .mphb-calendar .datepick-month + .datepick-month .datepick-month-header,
  .datepick-popup .datepick-month + .datepick-month .datepick-month-header {
    margin-right: 0;
  }
}
.mphb-calendar .datepick-month table,
.datepick-popup .datepick-month table {
  margin: 0 auto;
  width: 100%;
}
.mphb-calendar .datepick-month tbody,
.datepick-popup .datepick-month tbody {
  line-height: 2.1em;
}
.mphb-calendar .datepick-month th,
.datepick-popup .datepick-month th {
  border: 1px solid #f4f4f4;
  font-size: 0.75;
  font-weight: 400;
  padding: 0.5em 0;
}
.mphb-calendar .datepick-month th,
.mphb-calendar .datepick-month th a,
.datepick-popup .datepick-month th,
.datepick-popup .datepick-month th a {
  background-color: #f4f4f4;
  color: #666666;
}
.mphb-calendar .datepick-month td,
.datepick-popup .datepick-month td {
  background-color: #f4f4f4;
  border: 1px solid #fff;
}
.mphb-calendar .datepick-month a,
.datepick-popup .datepick-month a {
  padding: 0;
  background-color: #fff;
  color: #333333;
}
.mphb-calendar .datepick-month span,
.datepick-popup .datepick-month span {
  padding: 0;
}
.mphb-calendar .datepick-month td span,
.datepick-popup .datepick-month td span {
  color: #c4c4c4;
}
.mphb-calendar .datepick-month td .datepick-weekend,
.datepick-popup .datepick-month td .datepick-weekend {
  background-color: #fff;
}
.mphb-calendar a,
.datepick-popup a {
  -moz-transition: background 0.3s, color 0.3s;
  -o-transition: background 0.3s, color 0.3s;
  -webkit-transition: background 0.3s, color 0.3s;
  transition: background 0.3s, color 0.3s;
}

.mphb-calendar.mphb-datepick .datepick-month td .mphb-available-date {
  background-color: #d7f4c0;
  color: #333333;
}

.mphb-calendar.mphb-datepick .datepick-month td .mphb-not-stay-in-date:not(.mphb-past-date),
.mphb-calendar.mphb-datepick .datepick-month td .mphb-not-available-date,
.datepick-popup .mphb-datepick-popup .datepick-month td .mphb-not-stay-in-date:not(.mphb-past-date),
.datepick-popup .mphb-datepick-popup .datepick-month td .mphb-not-available-date {
  background-color: #fff;
  color: #666666;
  text-decoration: line-through;
}
.mphb-calendar.mphb-datepick .datepick-month td .mphb-past-date,
.datepick-popup .mphb-datepick-popup .datepick-month td .mphb-past-date {
  opacity: 1;
  background-color: #f4f4f4;
  color: #c4c4c4;
}
.mphb-calendar.mphb-datepick .datepick-month td .mphb-earlier-min-date,
.mphb-calendar.mphb-datepick .datepick-month td .mphb-later-max-date,
.datepick-popup .mphb-datepick-popup .datepick-month td .mphb-earlier-min-date,
.datepick-popup .mphb-datepick-popup .datepick-month td .mphb-later-max-date {
  background-color: #fff;
  color: #666666;
  text-decoration: line-through;
  opacity: 1;
}
.mphb-calendar.mphb-datepick .datepick-month td .datepick-selected,
.datepick-popup .mphb-datepick-popup .datepick-month td .datepick-selected {
  background-color: #333333;
  color: #fff;
}
.mphb-calendar.mphb-datepick .datepick-month td .mphb-booked-date,
.datepick-popup .mphb-datepick-popup .datepick-month td .mphb-booked-date {
  opacity: 1;
}


*/


/*-------------home-about----------------*/


.about-section .textwidget p, .about-section .textwidget li, .about-section-2 .textwidget p, .about-section-2 .custom li{
	font-style: normal;
	font-weight: normal;
	font-size: 22px;
	line-height: 35px;
	text-align: center;
	color: var(--primary-color);
}
.about-section-2 .textwidget p, .about-section-2 .textwidget li{
	color: #fff;
}
.about-section-3 .textwidget {
	display: table;
	margin:0 auto;
}
.about-section-3 .textwidget p, .about-section-3 .textwidget li{
	font-size: 18px;
	line-height: 35px;
	color: var(--primary-color);
}


/*----------------home-vantages------------------*/


.vantages-section .textwidget{
  /*
	display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    */
    margin-top: 65px;
    overflow: hidden;
}
.vantages-section .textwidget table{
  width: 25%;
  float:left;
  /*
	-webkit-order: 0;
    -ms-flex-order: 0;
    order: 0;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
    align-self: auto;
    width: auto;
    */
}
.vantages-section .textwidget table tbody tr td{
	border: none;
}
.vantages-section .textwidget table tbody tr:last-child td{
	font-style: normal;
	font-weight: normal;
	font-size: 18px;
	line-height: 25px;
	text-align: center;
	color: var(--text-color);
	padding-top: 25px;
}




/*----------------rooms-grid------------------*/


@media (min-width: 767px){

.grid-row > div:nth-child(2n) .room-grid > div:first-child{
  -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
}
.grid-row > div:nth-child(2n) .room-grid > div:last-child{
    -webkit-order: 0;
    -ms-flex-order: 0;
    order: 0;
}
}

.grid-row .room-grid, .opalhotel_hotel.grid-column{
  margin:0;
}
.grid-row .room-grid:hover {
  -webkit-box-shadow: none;
  box-shadow: none;
}
.room-grid .room-image-wrap img{
  width: 100%;
  height: auto;
}
.room-grid .room-image-wrap .room-label-discount{
  display: none;
}

.room-grid .room-info-wrap{
  background: #F2F2F2;
}
.room-grid .room-info-wrap .room-title{
  padding-left: 0;
  text-align: left;
  padding-bottom: 5px;
  padding-top: 0;
}
.room-grid .room-info-wrap .room-title a{
  font-style: normal;
  font-weight: 550;
  font-size: 24px;
  line-height: 32px;
  color: var(--text-color);
  text-decoration: none; 
  transition: 0.3s;
}
.room-grid .room-info-wrap .room-title a:hover{
  color: var(--primary-color);
}
.room-grid .room-info-wrap .hotel-title{
  display: none;
}
.room-grid .room-info-wrap .room-sub-title{
  display: block;
  font-size: 13px;
  color: var(--text-color);
  margin-bottom: 17px;
}
.room-grid .room-info-wrap .room-short-descr{
  font-size: 14px;
  line-height: 20px;
  color: #777777;
  margin-bottom: 17px;
}
.room-grid .room-info-wrap .room_size{
  font-size: 15px;
  line-height: 25px;
  color: #777777;
  margin-bottom: 10px;
}
.room-grid .room-info-wrap .room_size label{
  font-weight: bold;
  color: var(--text-color);
  line-height: 100%;
  margin: 0;
}
.room-grid .room-info-wrap .opalhotel-price {
  text-align: left;
  padding: 0 0 15px;
  margin-bottom: 15px;
}
.room-grid .room-info-wrap .opalhotel-price .price-value {
  color: var(--primary-color);
  text-transform: none;
}
.room-grid .room-info-wrap .opalhotel-price .price-value b{
  padding-right: 5px;
}
.room-grid .room-info-wrap .opalhotel-price .price-title, .room-grid .room-info-wrap .opalhotel-price .price-unit{
  color: #777777;
}
.room-grid .room-info-wrap .room-link a{
  background: var(--secondary-color);
  -webkit-border-radius: 50px; 
  -moz-border-radius: 50px; 
  border-radius: 50px;
  font-weight: bold;
  font-size: 15px;
  line-height: 20px;
  color: var(--primary-color);
  padding: 15px 10px;
  max-width: 219px;
  min-width: 219px;
  transition: 0.3s;
  display: inline-block;
  text-align: center;
  text-decoration: none;
}
.room-grid .room-info-wrap .room-link a:hover{
  background: var(--primary-color);
  color: #fff;
}
.opalhotel-wrapper .opalhotel-pagination {
    float: left;
    text-align: center;
    margin: 35px 0 0;
    width: 100%;
}
.opalhotel-wrapper .opalhotel-pagination button.button {
    background: var(--primary-color);
    -webkit-border-radius: 50px; 
    -moz-border-radius: 50px; 
    border-radius: 50px;
    color: #fff;
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 16px;
    transition: 0.3s;
    padding: 17px 18px;
    border: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    min-width: 219px;
    text-transform: none;
}
.opalhotel-wrapper .opalhotel-pagination button.button:hover{
    background: var(--secondary-color);
    color: var(--primary-color);
}

/*------------------search forms-------------*/



.horiz-avail-search .opalhotel_form_section{
  background: transparent;
  padding: 0;
}
.opalhotel_form_section .horizontal-form{
  background: transparent;
}
.horizontal-form header.heading-form {
    padding: 35px 15px;
}
.horizontal-form .form-content .opalhotel-form-field label {
    color: var(--primary-color);
	font-size: 11px;
}
.horizontal-form header.heading-form h3 {
    color: var(--primary-color);
    font-family: var(--body-font);
}
.opalhotel-datpicker td a, .opalhotel-datpicker td span {
    padding: 5px;
}
body .opalhotel_form_section .horizontal-form .opalhotel-button-submit{
    background: var(--primary-color)!important;
    border-radius: 0;
    color: #fff!important;
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 14px;
    transition: 0.3s;
    padding: 17px 18px;
    width: 100%;
    font-family: var(--body-font);
}
body .opalhotel_form_section .horizontal-form .opalhotel-button-submit:hover{
    background: #fff!important;
    color: var(--primary-color)!important;
}
.horizontal-form .form-content .opalhotel-form-field.button-wrap {
    padding-top: 45px;
}
.horizontal-form .form-content .opalhotel-form-field.adults-input, .horizontal-form .form-content .opalhotel-form-field.children-input {
    width: 13%;
}
.horizontal-form .form-content .opalhotel-form-field {
    width: 24%;
}


.vert-avail-search {
    background: #fff;
    padding: 20px 25px;
}
.vert-avail-search h3{
    font-weight: bold;
    font-size: 18px;
    line-height: 18px;
}
.vert-avail-search .sub-title{
    font-size: 14px;
    line-height: 20px;
    color: #777777;
}
.opalhotel_form_section{
    background: transparent;
    padding: 0;
    margin-top: 20px;
}
.opalhotel_form_section .opalhotel-form-field {
    padding: 5px 0px;
}
.vert-avail-search .opalhotel_form_section .opalhotel-form-field .opalhotel-form-field-group input, 
.vert-avail-search .opalhotel_form_section .opalhotel-form-field .opalhotel-form-field-group select {
    background-color: #F2F2F2;
    -webkit-border-radius: 0; 
    -moz-border-radius: 0; 
    border-radius: 0; 
}
.opalhotel_form_section footer {
    padding: 0;
    margin-top: 25px;
}
.vert-avail-search .opalhotel-button-submit{
    background: var(--primary-color);
    border-radius: 0;
    color: #fff;
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 16px;
    transition: 0.3s;
    border: none;
    width: 100%;
    padding: 17px 0;
    max-width: none;
}
.vert-avail-search .opalhotel-button-submit:hover{
    background: var(--secondary-color);
    color: var(--primary-color);
}
.opalhotel_form_section .opalhotel-form-field .opalhotel-form-field-group input, .opalhotel_form_section .opalhotel-form-field .opalhotel-form-field-group select {
    color: var(--primary-color);
}





/*-----------------single room------------------*/


.opalhotel-main .room-title{
    display: inline-block;
    font-size: 26px;
    vertical-align: text-top;
}
.opalhotel-main .opalhotel-price .price-value {
    color: var(--primary-color);
    font-size: 28px;
    text-transform: none;
}
.opalhotel-main .room-box{
    display: none;
}
.opalhotel-main .preview, .opalhotel-main .opalhotel-room-single-gallery{
    margin-bottom: 30px;
    width: 100%;
    overflow:hidden;
}
.opalhotel-single .opalhotel-main .opalhotel-price .price-title, .opalhotel-single .opalhotel-main .opalhotel-price .price-unit{
    color: #777777;
}
.opalhotel-single .owl-buttons > div.owl-prev, .opalhotel-single .owl-buttons > div.owl-next {
    position: absolute;
    top: 51%;
}
.opalhotel-rom-gallery .gallery-item {
    margin:0;
}
.opalhotel-single .opalhotel-rom-gallery .opalhotel-room-single-gallery-thumb {
    padding: 0;
    background: transparent;
    margin-left: -5px;
}
.single-room-sidebar{
    margin-top: 6.5%;
}
.single-room-sidebar .vert-avail-search {
    background-color: var(--primary-color);
    background-image: url(../images/background-010.png);
    background-repeat: no-repeat;
    background-position: center bottom;
    padding: 35px 30px 45px;
}
.vert-avail-search.room-side h3{
    text-transform: uppercase;
    color: #fff;
}
.vert-avail-search.room-side .sub-title{
    color: #fff;
}
.vert-avail-search.room-side .opalhotel_form_section .opalhotel-form-field .opalhotel-form-lable {
    color: #fff;
}
.vert-avail-search.room-side .opalhotel-button-submit {
    background: var(--secondary-color)!important;
    color: var(--primary-color)!important;
}
.vert-avail-search.room-side .opalhotel-button-submit:hover {
    background: #fff!important;
    color: var(--primary-color)!important;
}
.opalhotel-comment-form .form-submit input.submit{
    background: var(--primary-color);
    border-radius: 0;
    color: #fff;
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 16px;
    transition: 0.3s;
    border: none;
    width: 100%;
    max-width: 220px;
    padding: 17px 0;
}
.opalhotel-comment-form .form-submit input.submit:hover{
    background: var(--secondary-color);
    color: var(--primary-color);
}
.opalhotel-comment-form .comment-form-author, .opalhotel-comment-form .comment-form-email {
    width: 49.65%;
}





/*-----------------------rezervation---------------------*/


.opalhotel-reservation-container .horizontal-form {
    background: var(--secondary-color);
}
.hotel-title, .opalhotel-modal-button{
  display: none;
}
ul.opalhotel-search-results li.opalhotel-available-item {
    margin-bottom: 40px!important;
}
ul.opalhotel-search-results li.opalhotel-available-item .room-content {
    overflow: hidden;
    padding: 0px 0 0;
}
ul.opalhotel-search-results li.opalhotel-available-item .opalhotel-catalog-thumbnail {
    max-width: 300px;
}
ul.opalhotel-search-results li.opalhotel-available-item .room-content .room-meta-info li {
    min-height: 75px;
}
.opalhotel-reservation-container .opalhotel-view-price {
    display: block;
    margin-bottom: 15px;
}
ul.opalhotel-search-results li.opalhotel-available-item .room-actions .opalhotel-room-toggle-packages {
    color: var(--primary-color);
    text-decoration:none;
    width: 85%;
}
ul.opalhotel-search-results li.opalhotel-available-item .room-actions .opalhotel-room-toggle-packages:hover, ul.opalhotel-search-results li.opalhotel-available-item .room-actions .opalhotel-room-toggle-packages.active {
    background-color: var(--primary-color)!important;
    color: #fff;
}
.opalhotel-no-room-selected {
    color: #283892;
    background-color: #fedf00;
}
.horizontal-form .widget-title{
    padding: 10px 20px;
    font-size: 22px;
    margin: 0;
}
.opalhotel-reservation-available-review .opalhotel-available-review-item, .opalhotel_order_details .opalhotel-order-item-details {
    font-size: 15px;
}
.opalhotel_reservation_packages .opalhotel_review_package_title, .opalhotel_reservation_packages .opalhotel_package_title, .opalhotel_reservation_packages .opalhotel-review-price, .opalhotel-reservation-subtotal label, .opalhotel_order_item_subtotal label {
    font-size: 15px;
}
.opalhotel-reservation-available-room-title, .opalhotel-order-item-room-title {
    font-size: 15px;
}

body .button-default, body .opalhotel-button-submit, body .wpcf7-submit {
    background: var(--primary-color)!important;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border-radius: 50px;
    font-weight: bold;
    font-size: 15px!important;
    line-height: 100%;
    color: #fff!important;
    padding: 19px 10px 16px!important;
    max-width: 219px;
    min-width: 219px;
    transition: 0.3s;
    display: inline-block;
    text-align: center;
    text-decoration: none;
    text-transform: none;
    border: none;
    font-family: var(--body-font);
}
body .button-default:hover, body .opalhotel-button-submit:hover, body .wpcf7-submit:hover {
    background: var(--secondary-color)!important;
    color: var(--primary-color)!important;
}
body .button-primary-inverse {
    background: var(--secondary-color)!important;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border-radius: 50px;
    font-weight: bold;
    font-size: 15px!important;
    line-height: 100%;
    color: var(--primary-color)!important;
    padding: 19px 15px 16px!important;
    max-width: 219px;
    min-width: 219px;
    transition: 0.3s;
    display: inline-block;
    text-align: center;
    text-decoration: none;
    text-transform: none;
    border: none;
    font-family: var(--body-font);
}
ul.opalhotel-search-results li.opalhotel-available-item .opalhotel-button-submit {
	 background: var(--secondary-color)!important;
}
.opalhotel-reservation-step .pull-left {
	background: #f2f2f2 !important;
	color: #999 !important;
}
body .button-primary-inverse.disabled{
    background: #ddd!important;
    color: var(--primary-color)!important;
}
.opalhotel-checkout-review .opalhotel_checkout_booking_detail .opalhotel-reservation-available-room-title .opalhotel-review-price{
	display: block;
    float: none;
    margin-bottom: 25px;
}
.opalhotel_checkout_booking_detail .opalhotel-reservation-available-review .cart_remove_item {
    position: relative;
    top: -16px;
}
.opalhotel-reservation-process-steps ul li span {
    line-height: 60px;
}
.opalhotel-room-meta li .meta-label {
	line-height: 1;
}

/*
.rooms-section .mphb_widget_rooms-wrapper .mphb-room-type{
	margin-top: 0;
}
.rooms-section .mphb_widget_rooms-wrapper .mphb-room-type > div img{
	width: 100%;
	height: auto;
}
.rooms-section .mphb_widget_rooms-wrapper .mphb-room-type > div:last-child{
	background: #F2F2F2;
	padding-top: 25px;
	padding-bottom: 25px;
}
.rooms-section .mphb-room-type .mphb-widget-room-type-featured-image{
	margin:0;
}
.rooms-section .mphb-room-type .mphb-widget-room-type-title{
	margin-top: 0;
}
.rooms-section .mphb-room-type .mphb-widget-room-type-title a{
	font-style: normal;
	font-weight: 550;
	font-size: 32px;
	line-height: 32px;
	color: var(--text-color);
	text-decoration: none;
}
.rooms-section .mphb-room-type .mphb-widget-room-type-title a span{
	display: block;
	font-size: 15px;
}
.rooms-section .mphb-room-type .mphb-widget-room-type-description{
	font-style: normal;
	font-weight: normal;
	font-size: 15px;
	line-height: 25px;
	color: #777777;
}
.rooms-section .mphb-room-type .mphb-widget-room-type-attributes .mphb-room-type-total-capacity, 
.rooms-section .mphb-room-type .mphb-widget-room-type-attributes .mphb-room-type-categories {
	display: none;
}
.rooms-section .mphb-room-type .mphb-widget-room-type-attributes{
	list-style: none;
	padding: 0;
}
.rooms-section .mphb-room-type .mphb-widget-room-type-attributes li{
	line-height: 100%;
}
.rooms-section .mphb-room-type .mphb-attribute-title, .rooms-section .mphb-room-type .mphb-room-type-price span{
	font-size: 15px;
	font-weight: 600;
	color: var(--text-color);
}
.rooms-section .mphb-room-type .mphb-attribute-value, .rooms-section .mphb-room-type .mphb-room-type-price .mphb-price{
	font-size: 15px;
	font-weight: normal;
	color: #777777;
}
.rooms-section .mphb-room-type .mphb-room-type-price .mphb-price .mphb-currency{
	color: #777777;
	margin-left: 5px;
	font-weight: normal;
}
.rooms-section .mphb-room-type .mphb-book-button{
	background: var(--secondary-color);
    -webkit-border-radius: 50px; 
	-moz-border-radius: 50px; 
	border-radius: 50px;;
    font-family: HelveticaNeueCyr;
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 20px;
    color: var(--primary-color);
    padding: 15px 10px;
    max-width: 219px;
    min-width: 219px;
    transition: 0.3s;
}
.rooms-section .mphb-room-type .mphb-book-button:hover{
	background: var(--primary-color);
    color: #fff;
}	
*/

ul.opalhotel-search-results li.opalhotel-available-item .room-actions .opalhotel-room-toggle-packages {
	background-color: var(--secondary-color)!important;
}
body .button-primary-inverse:hover {
    background: var(--primary-color)!important;
    color: #fff!important;
}
ul.opalhotel-search-results li.opalhotel-available-item .opalhotel-button-submit:hover {
	background: var(--primary-color)!important;
    color: #fff!important;
}
ul.opalhotel-search-results li.opalhotel-available-item .opalhotel-button-submit:focus {
	background: var(--primary-color)!important;
	 color: #fff!important;
}



/*----------------footer------------------*/


.site-footer{
	padding: 60px 0;
}
.ft-menu {
	margin-bottom: 48px;
}
.ft-menu .footer-navigation ul li{
	margin: 0 2.5em;
}
.ft-menu .footer-navigation ul li a{
	font-size: 18px;
	line-height: 35px;
	color: #fff;
	text-decoration: none;
	transition: 0.3s;
}
.ft-menu .footer-navigation ul li a:hover{
	color: var(--secondary-color);
}
.ft-contacts .textwidget p{
	margin:0;
}
.ft-contacts .textwidget p:first-child{
	margin:0 0 20px 0;
}
.ft-contacts .textwidget p, .ft-contacts .textwidget p a{
	font-size: 18px;
	line-height: 25px;
	color: var(--secondary-color);
	text-decoration: none;
	transition: 0.3s;
}
.ft-contacts .textwidget p:first-child a{
	font-size: 22px;
	line-height: 22px;
	color: var(--secondary-color);
	text-decoration: none;
}
.ft-contacts .textwidget p a:hover{
	color: #fff;
}
.ft-socials ul{
	font-size: 0;
	margin:0;
	padding: 0;
	list-style: none;
}
.ft-socials ul li{
	margin-right: 15px;
    display: inline-block;
    font-size: 0;
}
.ft-socials ul li a{
	font-size: 0;
	width: 30px;
	height: 30px;
	color: #fff;
	text-align: center;
	line-height: 29px;
	transition: 0.3s;
 	display: inline-block;
 	text-decoration: none;
}
.ft-socials ul li a:hover{
	color: var(--secondary-color);
}
.ft-socials ul li a:before{
	font-family: Fontawesome;
	font-size: 20px;
}
.ft-socials ul li.sc-inst a:before{
	content: '\f16d';
}
.ft-socials ul li.sc-vk a:before{
	content: '\f189';
}
.ft-socials ul li.sc-ok a:before{
	content: '\f263';
}
.ft-socials ul li.sc-fc a:before{
	content: '\f09a';
}
.ft-copyright .textwidget p, .ft-copyright .textwidget a{
	font-size: 15px;
	line-height: 15px;
	color: #fff;
}






/*--------------------------testimonials-----------------*/



.testimonials-section .comment-item{
	overflow: hidden;
}
.testimonials-section .comment-item .testi-item-avatar{
	width: 15%;
	float: left;
}
.testimonials-section .comment-item .testi-item-info{
	width: 85%;
	float: left;
}
.testimonials-section .comment-item .comment-text{
	margin-bottom: 20px;
}
.testimonials-section .comment-item .comment-date{
	margin-bottom: 10px;
}
.testimonials-section .comment-item .comment-text, 
.testimonials-section .comment-item .comment-date,
.testimonials-section .comment-item .comment-link a,
.testimonials-section .comment-item .author-name-city {
	font-size: 15px;
	line-height: 25px;
}
.testimonials-section .comment-item .comment-link a{
	text-decoration: underline;
	transition: 0.3s;
}
.testimonials-section .comment-item .comment-link a:hover{
	text-decoration: none;
}
.testimonials-section .rating .comment-rating-wrap{
  display: inline-block;
  margin-left: 10px;
}
.testimonials-section .rating .comment-rating-wrap:first-child{
  margin-left: 0px;
}
.testimonials-section .rating .comment-rating-wrap label{
  font-size: 14px;
  color: var(--primary-color);
}
#opalhotel-comments .comment-list .comment {
    padding: 0px 0 10px;
    margin-bottom: 30px;
    margin-left: 35px;
}
#opalhotel-comments .comment-list .comment .comment-author {
    text-align: left;
    width: 100%;
    float: none;
    margin-right: 0;
    margin-bottom: 10px;
}
.comment-reply-title {
    text-transform: none;
}











/*---------------------responsive------------------*/






@media (max-width: 1080px){

body .textwidget br{
    display: none;
}
.ft-menu .footer-navigation ul li {
    margin: 0 1em;
}
.slider-section .container {
    right: 5%;
}
.room-grid .room-info-wrap .room-title a {
    font-size: 28px;
}
.room-grid .room-info-wrap .room-short-descr {
    margin-bottom: 10px;
}
.room-grid .room-info-wrap .opalhotel-price {
    padding: 0 0 5px;
}
.pb-5, .py-5 {
    padding-bottom: 4rem !important;
}
.pt-5, .py-5 {
    padding-top: 4rem !important;
}
.ft-menu {
    margin-bottom: 25px;
}
}
@media (max-width: 991px){
.opalhotel-hotel .room-list {
	display: flex;
    flex-direction: column;
    align-items: center;
	}
.opalhotel-hotel .room-list .room-thumbnail {
	width: 100%;
    text-align: center;
	}
.opalhotel-hotel .room-list .room-content {
	width: 100%;
	}
.opalhotel-hotel .room-content .clearfix {
	display: flex;
    flex-direction: column;
	}
.opalhotel-hotel .room-list .room-content .left-col {
	width: 100%;
	text-align: center;
	}
.opalhotel-hotel .room-list .room-content .right-col {
	width: 100%;
	}
.opalhotel-hotel .room-list:after {
	width: 0px;
	}
.opalhotel-hotel .room-list .room-content .left-col {
	padding: 15px !important;
	}
.opalhotel-hotel .room-list .room-content .right-col {
	padding: 15px !important;
	}
.opalhotel-hotel .room-list .room-content .room-title {
	margin: 0 0 5px;
	}
}

@media (max-width: 980px){

.hd-phone a {
    font-size: 16px;
}
.mod-button a {
    font-size: 12px;
    padding: 12px 2px;
}
.main-menu ul.navbar-nav{
	-ms-flex-pack: center !important;
    justify-content: center !important;
}
.main-menu ul.navbar-nav li{
	width: auto;;
}
.main-menu ul.navbar-nav li a {
    padding-right: 0.8rem!important;
    padding-left: 0.8rem!important;
}
.slider-section .container {
    position: relative;
    left: auto;
    right: auto;
    top: auto;
    max-width: none;
    width: 100%;
    margin: 0;
    padding: 20px 0;
}
.slider-section .container .row{
	-ms-flex-pack: center !important;
    justify-content: center !important;
}
.slider-section .vert-avail-search {
    background-color: var(--primary-color);
    background-image: url(../images/background-010.png);
    background-repeat: no-repeat;
    background-position: center bottom;
    padding: 35px 30px 45px;
}
.slider-section .vert-avail-search h3, 
.slider-section .vert-avail-search .sub-title, 
.slider-section .vert-avail-search .opalhotel-form-lable{
    color: #fff;
}
.slider-section .vert-avail-search .opalhotel-button-submit {
    background: var(--secondary-color)!important;
    color: var(--primary-color)!important;
}
.slider-section .vert-avail-search .opalhotel-button-submit:hover {
    background: #fff!important;
    color: var(--primary-color)!important;
}
.prim-title > h3 {
    font-size: 32px;
}
.about-section .textwidget p, 
.about-section .textwidget li, 
.about-section-2 .textwidget p, 
.about-section-2 .textwidget li {
    font-size: 18px;
}
.vantages-section .textwidget table tbody tr:last-child td {
    font-size: 16px;
}
.grid-row .room-grid{
	margin-bottom: 25px;
}
.grid-row .room-grid > div[class*="col-md-"]:last-child {
   padding-bottom: 15px;
   padding-top: 15px;
}
.testimonials-section .rating .comment-rating-wrap {
    margin-left: 8px;
}
.horizontal-form header.heading-form {
	padding: 15px 15px;
	}
.opalhotel_form_section .horizontal-form {
	padding: 0;
    padding-bottom: 15px;
    }
.vantages-section {
	padding-bottom: 2rem !important;
}
}

@media (max-width: 767px){


.hd-logo{
	-webkit-order: 0;
    -ms-flex-order: 0;
    order: 0;
    margin-bottom: 10px;
    text-align: center;
}
.hd-adress{
	-webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    margin-bottom: 10px;
    text-align: center;
}
.hd-phone{
	-webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    margin-bottom: 10px;
    text-align: center;
}
.mod-button{
	-webkit-order: 3;
    -ms-flex-order: 3;
    order: 3;
    margin-bottom: 10px;
    text-align: center;
}
.mod-button a {
    padding: 12px 30px;
    display: inline-block;
}
.menu-inner .navbar .navbar-toggler{
	margin: 0 auto;
    color: #fff!important;
    border: none;
    border-radius: 0;
    background: #4455b5;
    padding: 10px 15px;
}
.main-menu{
	padding: 10px 0;
}
.main-menu ul li a {
    border: none!important;
}
.vantages-section .textwidget table {
  width: 50%;
  /*
    -webkit-flex: 1 1 50%;
    -ms-flex: 1 1 50%;
    flex: 1 1 50%;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
    align-self: auto;
    */
}
.vantages-section .textwidget table tbody tr:last-child td {
    font-size: 15px;
}
.grid-column-1, .grid-column-2, .grid-column-3, .grid-column-4, .grid-column-5, .grid-column-6, .grid-column-7, .grid-column-8, .grid-column-9, .grid-column-10, .grid-column-11, .grid-column-12 {
    width: 100%;
}
.page-custom-title {
    min-height: 35.5vh;
}
.horizontal-form header.heading-form {
    border-right: none;
    float: none;
    text-align: center;
}
.horizontal-form .form-content .opalhotel-form-field {
    width: 100%;
    padding: 5px 0;
}
.horizontal-form .form-content .opalhotel-form-field.adults-input, .horizontal-form .form-content .opalhotel-form-field.children-input {
    width: 100%;
}
.horizontal-form .form-content .opalhotel-form-field.button-wrap {
    padding-top: 25px;
}
body .opalhotel_form_section .horizontal-form .opalhotel-button-submit {
    max-width: none;
}
.opalhotel-reservation-process-steps ul li h4 {
    font-size: 14px;
}
.opalhotel_form_section .opalhotel-form-field .opalhotel-form-field-group input, .opalhotel_form_section .opalhotel-form-field .opalhotel-form-field-group select {
    height:42px;
}
}










@media (max-width: 600px){

.prim-title > h3 {
    font-size: 28px;
}
.room-grid .room-info-wrap .room-title a {
    font-size: 24px;
}
.room-grid .room-info-wrap .room-link a {
    padding: 12px 10px;
}
.primary-button .textwidget a {
    padding: 12px 10px;
}
body .button-default, body .opalhotel-button-submit, body .wpcf7-submit {
    padding: 14px 10px 12px!important;
}
body .button-primary-inverse {
    padding: 14px 10px 12px!important;
}
.ft-menu .footer-navigation ul li {
    margin: 0 0.5em;
}
.opalhotel-main .room-title {
    display: block;
    text-align: center;
}
.opalhotel-single .opalhotel-main .opalhotel-price {
    float: none;
    margin-bottom: 10px;
    text-align: center;
}
.opalhotel-single .room-related {
    margin-bottom: 35px;
}
.opalhotel-reservation-container {
    margin-bottom: 35px;
}
ul.opalhotel-search-results li.opalhotel-available-item .room-info {
    width: 100% !important;
    border-right: none !important;
    border-bottom: 1px solid #e9e9e9;
    padding: 0 0 15px !important;
    margin-bottom: 20px;
}
ul.opalhotel-search-results li.opalhotel-available-item .room-actions {
    width: 100% !important;
    padding: 0 !important;
}
}


@media (max-width: 480px){

.opalhotel-single .opalhotel-room-meta li {
    width: 50%;
    height: 110px;
}
.opalhotel-star {
    width: 50%;
    display: inline-block;
}
.opalhotel-reservation-process-steps ul li {
    width: 49.2% !important;
}
.opalhotel-reservation-process-steps ul li:after {
    display: none;
}
.opalhotel-reservation-step-content .horizontal-form{
    padding-bottom: 25px;
}
ul.opalhotel-search-results li.opalhotel-available-item .room-content .room-meta-info li {
    width: 100% !important;
    padding-top: 10px !important;
    margin-top: 10px !important;
    border-top: 1px solid #e9e9e9 !important;
    border-left: none !important;
}
ul.opalhotel-search-results li.opalhotel-available-item .opalhotel-catalog-thumbnail {
    float: none;
    width: 100%;
    margin: 0 0 30px;
    max-width: none;
}
ul.opalhotel-search-results li.opalhotel-available-item .room-content {
    padding: 0 20px !important;
}
ul.opalhotel-search-results li.opalhotel-available-item .room-content .room-title {
    text-align: center;
}
.opalhotel-reservation-step{
    text-align: center;
}
.opalhotel-reservation-step .button{
    float: none;
    margin-bottom: 10px;
}
.room-choose-packages .button-actions {
    text-align: center;
}
.room-choose-packages .button-actions .pull-right{
    float: none;
}
}

