/*
Theme Name: Penzion Proneco
Author: startujemeweby.cz | Juraj Korim
Author URI: https://startujemeweby.cz/
Version: 1.0
*/

* {
	outline: none !important;
}

body {
	font-family: 'Poppins', sans-serif;
	font-size: 14px;
	line-height: 25px;
	color: #666666;
}


/* CONTAINER */

.container {
	max-width: 1170px;
}


/* BASE ELEMENTS */

p,
ul {
	margin: 0;
}

p+p {
	margin-top: 25px;
}

.list-dots {
	margin: 15px 0 25px;
}

.list-dots>li {
	position: relative;
	padding-left: 30px;
}

.list-dots>li+li {
	margin-top: 5px;
}

.list-dots>li::before {
	position: absolute;
	display: block;
	content: "";
	top: 8px;
	left: 0;
	width: 10px;
	height: 10px;
	background: #920025;
}

.with-background {
	position: relative;
}

.bg-texture {
	background: url(./image/texture.png) left top repeat;
}

figure.background {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	margin: 0;
}

figure.background img {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	object-fit: cover;
	object-position: center center;
}

.content {
	position: relative;
	padding: 50px;
	z-index: 2;
}


/* FORM */

.form-group {
	margin: 0;
}

.form-group+.form-group {
	margin-top: 12px;
}

.form-control {
	height: 40px;
	line-height: 38px;
	padding: 0 12px;
	border-radius: 0;
	border: 1px solid #cfcfcf;
	box-shadow: none !important;
}

textarea.form-control {
	height: 122px;
	line-height: 26px;
	padding: 8px 12px;
}

label {
	font-size: 14px;
	color: #666666;
	font-weight: 400;
	padding: 0;
	margin: 0 0 5px;
}

label>span {
	color: #cccccc;
	font-size: 10px;
}

.checkbox>label {
	margin: 0;
}

.checkbox>label>input {
	position: relative;
	top: 1px;
	margin-right: 4px;
}

.checkbox>label>span {
	font-size: 14px;
	color: #666666;
	font-weight: 400;
}

.checkbox>label>span>a {
	text-decoration: underline;
	color: inherit;
}

.checkbox>label>span>a:hover {
	text-decoration: none;
}


/* BUTTON */

.btn {
	position: relative;
	border-radius: 0;
	border: 0;
	box-shadow: none !important;
	outline: none !important;
	text-shadow: none;
	text-transform: uppercase;
	font-size: 18px;
	font-weight: 600;
	line-height: 26px;
	padding: 12px 18px;
	text-align: left;
	transition: background 0.3s ease;
}

.btn.btn-xs {
	padding: 5.5px 35px 3.5px;
	font-size: 14px;
}

.btn.btn-lg {
	padding: 19px 130px;
	font-size: 18px;
}

.btn>i {
	margin-left: 100px;
}

.btn.btn-primary {
	color: #FFFFFF;
	background: #920025;
	border-bottom: 5px solid #cc3366;
}

.btn.btn-primary::after {
	display: block;
	position: absolute;
	content: "";
	top: 100%;
	left: 0;
	height: 5px;
	width: 0;
	background: #ff6189;
	transition: width 0.3s ease;
	z-index: 99;
}

.btn.btn-primary:hover::after {
	width: 100%;
}

.btn.btn-success {
	color: #FFFFFF;
	background: #01ae4a;
	border-bottom: 5px solid #44dc8c;
}

.btn.btn-success::after {
	display: block;
	position: absolute;
	content: "";
	top: 100%;
	left: 0;
	height: 5px;
	width: 0;
	background: #3ac67c;
	transition: width 0.3s ease;
	z-index: 99;
}

.btn.btn-success:hover::after {
	width: 100%;
}

p+.btn {
	margin-top: 25px;
}


/* HEADER */

header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 99;
	padding-top: 70px;
}

header hr {
	margin: 14px 0 17px;
}

header .list-inline {
	margin: -7px 0 0;
	font-size: 0;
	line-height: 0;
}

header .list-inline>li {
	position: relative;
	margin: 0 !important;
}

header .list-contact>li+li {
	margin-left: 15px !important;
}

header .list-contact>li>a {
	display: block;
	font-size: 15px;
	line-height: 25px;
	font-weight: 300;
	text-decoration: none;
	color: #999999;
}

header .list-contact>li>a>i {
	color: #920025;
	margin-right: 10px;
}

header .list-contact>li>a:hover {
	text-decoration: underline;
}

header .list-language>li+li {
	margin-left: 30px !important;
}

header .list-language>li+li::before {
	display: block;
	position: absolute;
	content: "|";
	top: 0;
	left: -60px;
	height: 25px;
	width: 30px;
	font-weight: 300;
	font-size: 15px;
	line-height: 25px;
	text-align: center;
	color: #920025;
	margin-left: 30px !important;
}

header .list-language>li>a {
	display: block;
	font-size: 15px;
	line-height: 25px;
	text-transform: uppercase;
	text-decoration: none;
	color: #999999;
	transition: color 0.3s ease;
}

header .list-language>li>a:hover {
	color: #920025;
}

header .list-language>li.active>a {
	font-weight: bold;
	color: #920025;
}

header .nav>li+li {
	margin-left: 35px;
}

header .nav>li>a {
	position: relative;
	display: block;
	font-size: 15px;
	line-height: 50px;
	color: #666666;
	text-decoration: none;
	text-transform: uppercase;
	transition: color 0.3s ease;
}

header .nav>li>a::after {
	display: block;
	position: absolute;
	content: "";
	top: 100%;
	left: 0;
	width: 0px;
	height: 6px;
	margin-top: -6px;
	background: #920025;
	transition: width 0.3s ease;
}

header .nav>li[class*="current"]>a,
header .nav>li>a:hover,
header .nav>li[class*="current"]>a::after,
header .nav>li>a:hover::after {
	width: 100%;
	color: #920025;
}


/* FOOTER */

footer {
	position: relative;
	padding: 50px 0 70px;
	background: #333333;
}

footer::before {
	display: block;
	position: absolute;
	content: "";
	width: 430px;
	max-width: calc(100vw - 40px);
	height: 10px;
	top: -5px;
	left: 50%;
	transform: translateX(-50%);
	background: #920025;
	z-index: 50;
}

footer .row>div[class*="text-"]>div {
	display: inline-block;
}

footer .text-address {
	color: #cccccc;
	margin-top: -7px;
}

footer .text-copyright {
	color: #999999;
	font-size: 12px;
	margin-top: 24px;
}

footer .text-copyright + .text-copyright {
	margin-top: 12px;
}

footer .text-copyright a {
	color: inherit;
	text-decoration: underline;
}

footer .text-copyright a:hover {
	color: inherit;
	text-decoration: none;
}

footer .text-powered {
	position: relative;
	display: inline-block;
	text-decoration: none !important;
	text-align: center;
}

footer .text-powered>strong {
	display: inline-block;
	font-size: 9px;
	line-height: 13px;
	text-transform: uppercase;
	color: #999999;
	font-family: Arial;
	text-align: right;
	padding-right: 18px;
	margin-right: 12px;
	border-right: 1px solid #920025;
}

footer .text-powered>span {
	position: relative;
	display: inline-block;
	top: -2px;
	width: 171px;
	height: 12px;
	font-size: 0;
	text-indent: -999px;
	mask: url(./image/startujemeweby_logo.svg) no-repeat;
	mask-size: contain;
	-webkit-mask-image: url(./image/startujemeweby_logo.svg);
	-webkit-mask-size: contain;
	background: #828282;
	transition: background 0.3s ease;
}

footer .text-powered:hover>span {
	background: #FFFFFF;
}

footer .list-contact {
	margin: -3px 0 0;
	padding-left: 20px;
}

footer .list-contact>li+li {
	margin-top: 5px;
}

footer .list-contact>li>a {
	display: block;
	font-size: 20px;
	line-height: 25px;
	color: #FFFFFF;
}

footer .list-contact>li>a>i {
	margin-right: 12px;
}

footer .list-contact>li>small {
	display: block;
	margin: 0 0 17px;
	font-size: 14px;
	line-height: 25px;
	padding-left: 32px;
	color: #999999;
}

footer .list-social {
	font-size: 0;
	line-height: 0;
	margin-bottom: 35px;
}

footer .list-social>li {
	display: inline-block;
}

footer .list-social>li+li {
	margin-left: 10px;
}

footer .list-social>li>a {
	display: block;
	font-size: 26px;
	line-height: 26px;
	color: #FFFFFF;
}


/* ITEM: INSTAGRAM */

.item-instagram {
	padding: 50px;
	background: #FFFFFF;
}

.item-instagram .eapps-instagram-feed-title-container {
	text-align: center;
	margin: 0 0 40px;
	border-bottom: 1px solid #EAEAEA;
}

.item-instagram .eapps-instagram-feed-title {
	position: relative;
	display: inline-block;
	top: 14px;
	padding: 0 45px 10px;
	margin: 0;
	font-size: 20px;
	line-height: 20px;
	color: #696969;
	background: #FFFFFF;
}


/* ITEM: ROOM */

.item-room+.item-room {
	margin-top: 45px;
}

.item-room .item-title {
	font-size: 30px;
	line-height: 40px;
	font-weight: bold;
	color: #333333;
	margin: 0 0 15px;
}

.item-room .row {
	background: #FFFFFF;
}

.item-room .list-unstyled {
	width: 305px;
	padding: 20px 30px;
	padding-right: 0;
}

.item-room .list-unstyled>li {
	padding: 7px 0;
	padding-right: 30px;
}

.item-room .list-unstyled>li+li {
	border-top: 1px solid #cfcfcf;
}

.item-room .list-unstyled>li>strong {
	font-weight: normal;
	color: #920025;
}

.item-room .background>a {
	position: relative;
	display: block;
	height: 100%;
	overflow: hidden;
}

.item-room .background>a>img {
	transition: transform 0.3s ease;
}

.item-room .background>a:hover>img {
	transform: scale(1.04);
}


/* ITEM: GALLERY */

.item-gallery {
	margin: 100px 0;
}

.item-gallery .item-title {
	text-align: center;
	font-size: 30px;
	line-height: 40px;
	font-weight: bold;
	color: #333333;
	margin: 0 0 15px;
}

.item-gallery p {
	text-align: center;
}

.item-gallery>.row {
	margin-top: 20px;
	height: 435px;
}

.item-gallery a {
	display: block;
	position: relative;
	overflow: hidden;
	height: 100%;
	border-left: 1px solid #FFFFFF;
}

.item-gallery a>img {
	transition: transform 0.3s ease;
}

.item-gallery a:hover>img {
	transform: scale(1.04);
}

.item-gallery .slick-slider {
	margin: 0 -15px;
	margin-left: -16px;
}

.item-gallery .slick-arrow {
	position: absolute;
	display: block;
	left: 1px;
	top: 50%;
	margin-top: -30px;
	width: 60px;
	height: 60px;
	padding: 0;
	border: 0;
	background: #920025;
	z-index: 999;
}

.item-gallery .slick-arrow~.slick-arrow {
	left: auto;
	right: 0;
}

.item-gallery .slick-arrow::after {
	position: absolute;
	display: block;
	content: "";
	top: 18px;
	left: 21px;
	width: 25px;
	height: 25px;
	padding: 0;
	transform: rotate(-45deg);
	border: 0;
	border-top: 1px solid #FFFFFF;
	border-left: 1px solid #FFFFFF;
}

.item-gallery .slick-arrow~.slick-arrow::after {
	transform: rotate(135deg);
	left: 10px;
}


/* ITEM: PARTNERBOX */

.item-partnerbox {
	margin: 80px 0 65px;
}

.item-partnerbox .item-title {
	text-align: center;
	font-size: 30px;
	line-height: 40px;
	font-weight: bold;
	color: #333333;
	margin: 0 0 35px;
}

.item-partnerbox .content {
	padding: 50px;
	background: #FFFFFF;
}


/* ITEM: CONTACTBOX */

.item-contactbox {
	margin: 100px 0 80px;
	padding: 65px 75px;
	background: #333333;
}

.item-contactbox .row {
	position: relative;
	z-index: 9;
}

.item-contactbox .item-title {
	font-size: 50px;
	line-height: 70px;
	color: #999999;
	margin: 0;
	font-weight: 200;
}

.item-contactbox .item-title>strong {
	display: block;
	color: #FFFFFF;
	font-weight: bold;
}

.item-contactbox .list-contact {
	margin-top: 10px;
}

.item-contactbox .list-contact>li+li {
	margin-top: 10px;
}

.item-contactbox .list-contact>li>a {
	display: inline-block;
	font-size: 30px;
	line-height: 40px;
	font-weight: 200;
	color: #ffffff;
}

.item-contactbox .col-auto {
	padding-bottom: 75px;
}

.item-contactbox .btn {
	position: absolute;
	left: 15px;
	bottom: 14px;
	margin-top: 15px;
}


/* ITEM: COLUMNBOX */

.item-columnbox {
	position: relative;
	margin: 0 0 80px;
	background: #FFFFFF;
	z-index: 9;
}

.item-columnbox .item-title {
	font-size: 30px;
	line-height: 40px;
	color: #000000;
	margin: 0 0 15px;
	font-weight: bold;
}

.item-columnbox .item-subtitle {
	font-size: 20px;
	line-height: 30px;
	color: #666666;
	font-weight: bold;
	margin: 0 0 10px;
}

.item-columnbox .item-content {
	padding: 40px;
	font-size: 14px;
	line-height: 23px;
	color: #999999;
	background: #FFFFFF;
	border-bottom: 1px solid #FFFFFF;
}

.item-columnbox .row>div {
	padding: 0 40px 40px;
}

.item-columnbox .row>div figure {
	margin: 0 -40px 35px;
}

.item-columnbox .row>div+div {
	border-left: 1px solid #e9e9e9;
}

.item-columnbox .row>div+div figure {
	margin-left: -41px;
	border-left: 1px solid #FFFFFF;
}


/* ITEM: REFERENCEBOX */

.item-referencebox {
	margin: 80px 0 100px;
}

.item-referencebox .item-title {
	text-align: center;
	font-size: 30px;
	line-height: 40px;
	font-weight: bold;
	color: #333333;
	margin: 0 0 35px;
}

.item-referencebox p.author {
	text-align: right;
	font-weight: bold;
}

.item-referencebox .slick-slider {
	padding: 0 100px;
}

.item-referencebox .slick-slider .slick-arrow {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 40px;
	height: 40px;
	padding: 0;
	transform: rotate(-45deg);
	border: 0;
	border-top: 1px solid #940025;
	border-left: 1px solid #940025;
	background: none;
}

.item-referencebox .slick-slider .slick-arrow~.slick-arrow {
	left: auto;
	right: 0;
	transform: rotate(135deg);
}

.item-referencebox .slick-dots {
	position: absolute;
	left: 100px;
	bottom: 6px;
	padding: 0;
	margin: 0;
	font-size: 0;
	line-height: 0;
}

.item-referencebox .slick-dots>li {
	position: relative;
	display: inline-block;
	width: 13px;
	height: 13px;
	overflow: hidden;
	text-indent: -999px;
	cursor: pointer;
	background: #cfcfcf;
	transition: background 0.3s ease;
}

.item-referencebox .slick-dots>li.slick-active,
.item-referencebox .slick-dots>li:hover {
	background: #940025;
}

.item-referencebox .slick-dots>li+li {
	margin-left: 7px;
}


/* ITEM: SIGNATURE */

.item-signature {
	margin-top: 35px;
}

.item-signature p {
	font-size: 14px;
	color: #920025;
	line-height: 21px;
}

.item-signature p>strong {
	display: block;
	font-size: 16px;
	line-height: 19px;
	color: #666666;
}


/* ITEM: BENEFIT */

.item-benefit {
	position: relative;
	height: 100%;
	height: calc(100% - 80px);
	margin: 40px;
	padding: 45px 35px 35px;
	text-align: center;
	z-index: 2;
	background: rgba(255, 255, 255, 0.9);
}

.item-benefit .item-title {
	margin: 20px 0 10px;
	font-size: 18px;
	line-height: 26px;
	font-weight: bold;
	color: #333333;
	text-transform: uppercase;
}

.item-benefit p {
	margin: 0;
	font-size: 14px;
	line-height: 21px;
}


/* SECTION */

section .section-title {
	font-size: 30px;
	line-height: 40px;
	color: #333333;
	margin: 0 0 15px;
	font-weight: bold;
}

section .section-subtitle {
	font-size: 20px;
	line-height: 30px;
	color: #990033;
	margin: 15px 0 5px;
	font-weight: bold;
}


/* SECTION: LISTING GALLERY */

section.listing-gallery {
	position: relative;
	overflow: hidden;
	padding: 65px 0 !important;
}

section.listing-gallery>*:first-child {
	margin-top: 35px !important;
}

section.listing-gallery .container>*:last-child {
	margin-bottom: 35px !important;
}


/* SECTION: INTRO */

section.intro {
	padding-top: 175px;
}

section.intro .container {
	padding-top: 115px;
	padding-bottom: 140px;
}

section.intro .content {
	padding: 55px 70px;
	background: rgba(255, 255, 255, 0.8);
}

section.intro h1 {
	margin: 0;
	font-size: 107px;
	line-height: 101px;
	color: #999999;
	font-weight: 100;
}

section.intro h1>strong {
	display: block;
	font-size: 71px;
	font-weight: 800;
	color: #333333;
	margin: 0 0 -10px;
}

section.intro .list-breadcrumb {
	position: relative;
	margin: -50px 0 3px;
	text-align: center;
	font-size: 0;
	line-height: 0;
	padding: 22.5px;
	background: rgba(255, 255, 255, 0.4);
	z-index: 9;
}

section.intro .list-breadcrumb>li {
	position: relative;
	display: inline-block;
}

section.intro .list-breadcrumb>li+li {
	margin-left: 25px;
}

section.intro .list-breadcrumb>li+li::before {
	display: block;
	position: absolute;
	content: ">";
	left: -25px;
	width: 25px;
	font-size: 14px;
	line-height: 25px;
	color: #990033;
}

section.intro .list-breadcrumb>li>* {
	display: block;
	font-size: 14px;
	line-height: 25px;
	color: #666666;
}

section.intro .list-breadcrumb~.content {
	padding: 50px;
	margin-bottom: -80px;
}

section.intro .list-breadcrumb~.content h1 {
	text-align: center;
	font-size: 60px;
	line-height: 80px;
	font-weight: bold;
	color: #333333;
}


/* SECTION: BENEFITS */

section.benefits .col-12 {
	border: 1px solid #FFFFFF;
}

section.benefits .col-12+.col-12 {
	border-left: 0;
}


/* SECTION: WITH GALLERY */

section.with-gallery .with-background {
	border: 1px solid #FFFFFF;
}

section.with-gallery .section-subtitle {
	color: #666666;
}

section.with-gallery .photo-big {
	border-left: 0;
	border-top: 0;
}

section.with-gallery .photo-big,
section.with-gallery .photo-small {
	border-bottom: 0;
}

section.with-gallery .photo-small {
	border-left: 0;
}


/* SECTION: BASE CONTENT */

section.base-content {
	padding: 60px 0;
}

section.base-content .content {
	height: 100%;
	background: #FFFFFF;
}

section.base-content.with-facebook iframe {
	position: relative;
	z-index: 2;
	height: 100%;
	width: 250px;
	height: 320px;
	margin: 0;
}

section.base-content.with-facebook .-certificate {
	display: block;
	width: 250px;
	margin: 0 auto;
}

/* SECTION: FULL PHOTO */

section.full-photo {
	height: 415px;
	border-top: 1px solid #FFFFFF;
	border-bottom: 1px solid #FFFFFF;
}


/* SECTION: ITEMS */

section.items {
	padding: 65px 0;
}

section.items .section-title {
	margin-bottom: 40px;
}


/* SECTION: MAP */

section.map #map {
	height: 370px;
}


/* SECTION: CONTACT */

section.contact {}

section.contact .row .row>.col-12 {
	height: calc(100% - 190px);
}

section.contact .row .row>.with-background {
	height: 190px;
}

section.contact .row .row>.with-background+.with-background {
	border-left: 1px solid #FFFFFF;
}

section.contact .list-contact {
	display: inline-block;
	margin: 0 auto;
	text-align: left;
}

section.contact .list-contact>li {
	position: relative;
	padding-left: 70px;
}

section.contact .list-contact>li+li {
	margin-top: 20px;
}

section.contact .list-contact>li>i {
	position: absolute;
	top: 7px;
	left: 0;
	font-size: 38px;
	color: #910028;
}

section.contact .list-contact>li>i.fa-envelope {
	top: 10px;
}

section.contact .list-contact>li>a {
	display: inline-block;
	color: #333333;
	font-size: 40px;
	line-height: 50px;
	font-weight: 300;
}

section.contact .list-data {
	height: 100%;
	width: 380px;
	background: #FFFFFF;
}

section.contact .list-data>li {
	position: relative;
	padding: 40px 45px;
	padding-left: 110px;
	font-size: 14px;
	line-height: 21px;
}

section.contact .list-data>li+li {
	border-top: 1px solid #e1e1e1;
}

section.contact .list-data>li>i {
	position: absolute;
	top: 40px;
	left: 45px;
	font-size: 38px;
	color: #e1e1e1;
}

section.contact .list-data>li strong {
	display: block;
	font-size: 20px;
	line-height: 27px;
	color: #666666;
	margin: 0 0 15px;
}


/* SECTION: FORM */

section.form {
	padding: 70px 0 120px;
}

section.form .section-title {
	text-align: center;
	margin-bottom: 45px;
}

section.form .row-gdpr {
	padding-left: 10px;
	margin-top: 43px;
	background: #f8f8f8;
}

section.form .alert
{
	border-radius: 0;
	margin-bottom: 40px;
}


/* SECTION: LISTING PRICE */

section.listing-price {
	position: relative;
	padding: 55px 0 105px;
}

section.listing-price::before {
	display: block;
	position: absolute;
	content: "";
	top: 0;
	left: 50%;
	width: 50%;
	height: 100%;
	background: #FFFFFF;
}

section.listing-price .item-contactbox {
	margin: 70px 0 0;
}

section.listing-price .col-room {
	padding-right: 30px;
}

section.listing-price .col-room p {
	font-size: 12px;
	line-height: 21px;
	color: #666666;
	margin-top: 35px;
}

section.listing-price .col-room p+p {
	margin-top: 25px;
}

section.listing-price .col-text {
	padding-left: 60px;
}

section.listing-price .col-text p>small {
	font-size: 10px;
	margin: 0 0 5px;
}


/* SECTION: RESERVATION */

section.reservation {
	position: relative;
	overflow: hidden;
	padding: 80px 0 85px;
}

section.reservation .item-title {
	position: relative;
	margin: 0 0 35px;
	font-size: 30px;
	line-height: 40px;
	color: #333333;
	font-weight: bold;
	text-align: center;
}

section.reservation .item-title>.btn {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

section.reservation form>div[class^="item-"]+div[class^="item-"] {
	margin-top: 80px;
}

section.reservation .item-reservation-form .item-content {
	padding: 45px 300px 50px;
	background: #FFFFFF; 
}

section.reservation .item-reservation-form .form-group {
	margin-bottom: 12px;
}

section.reservation .item-reservation-form .checkbox {
	margin-top: 18px;
	background: #f8f8f8;
}

section.reservation .item-reservation-form .checkbox>label {
	padding: 0 13px;
	line-height: 40px;
	font-size: 14px;
	color: #666666;
}

section.reservation .item-reservation-form .checkbox+.row {
	margin-top: 25px;
}

section.reservation .item-reservation-room {
	position: relative;
}

section.reservation .item-reservation-room:not(.empty-room)::before,
section.reservation .item-reservation-summary.item-reservation-confirm::before {
	display: block;
	position: absolute;
	content: "";
	top: 100%;
	right: -100%;
	width: 200vw;
	height: 100vw;
	margin-top: -65px;
	background: #FFFFFF;
}

section.reservation .item-reservation-summary.item-reservation-confirm::before {
	top: 100%;
	margin-top: -155px;
}

section.reservation .item-reservation-room~div[class^="item-reservation-"] {
	position: relative;
	z-index: 99;
}

section.reservation .item-reservation-room .room {
	position: relative;
	background: #FFFFFF;
}

section.reservation .item-reservation-room .room::after {
	position: absolute;
	display: block;
	content: "";
	top: 0;
	right: 0;
	width: 380px;
	height: 100%;
	background: #e1e1e1;
}

section.reservation .item-reservation-room .room+.room {
	margin-top: 10px;
}

section.reservation .item-reservation-room .room>.row {
	position: relative;
	min-height: 250px;
	z-index: 9;
}

section.reservation .item-reservation-room .room .image {
	position: relative;
	height: 100%;
	margin: 0;
}

section.reservation .item-reservation-room .room .image img {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	object-fit: cover;
	object-position: center center;
}

section.reservation .item-reservation-room .room .image+a {
	display: block;
	height: 40px;
	line-height: 40px;
	position: absolute;
	right: 20px;
	bottom: 20px;
	font-size: 12px;
	color: #666666;
	padding: 0 15px;
	text-decoration: none;
	background: rgba(255, 255, 255, 0.8);
	transition: background 0.3s ease;
}

section.reservation .item-reservation-room .room .image+a:hover {
	background: rgba(255, 255, 255, 1);
}

section.reservation .item-reservation-room .room .image+a>i {
	font-size: 20px;
	color: #920025;
	margin-right: 6px;
	float: left;
	margin-top: 9px;
}

section.reservation .item-reservation-room .room .col-data {
	padding: 60px 40px 35px;
	padding-right: 105px;
}

section.reservation .item-reservation-room .room .room-name {
	font-size: 20px;
	font-weight: bold;
	line-height: 20px;
	margin: 0 0 20px;
	color: #990033;
}

section.reservation .item-reservation-room .room .room-name>span {
	float: right;
	font-size: 14px;
	color: #666666;
	font-weight: 400;
}

section.reservation .item-reservation-room .room .list-checkbox {
	margin: 0 0 5px;
	border-top: 1px solid #cfcfcf;
}

section.reservation .item-reservation-room .room .list-checkbox>li {
	border-bottom: 1px solid #cfcfcf;
	transition: background 0.3s ease;
}

section.reservation .item-reservation-room .room .list-checkbox>li:hover {
	background: #e1e1e1;
}

section.reservation .item-reservation-room .room .list-checkbox>li .checkbox>label {
	display: block;
	cursor: pointer;
	font-size: 14px;
	line-height: 40px;
	color: #666666;
	font-weight: 400;
	padding: 0;
	margin: 0;
	width: 100%;
}

section.reservation .item-reservation-room .room .list-checkbox>li .checkbox>label>input {
	display: none;
}

section.reservation .item-reservation-room .room .list-checkbox>li .checkbox>label>span {
	display: inline-block;
}

section.reservation .item-reservation-room .room .list-checkbox>li .checkbox>label>span.column-person {
	width: 340px;
	transition: padding 0.3s ease;
}

section.reservation .item-reservation-room .room .list-checkbox>li:hover .checkbox>label>span.column-person {
	padding-left: 15px;
}

section.reservation .item-reservation-room .room .list-checkbox>li .checkbox>label>span.column-person>strong {
	font-weight: 400;
	color: #990033;
}

section.reservation .item-reservation-room .room .list-checkbox>li .checkbox>label>span.column-price {
	width: 105px;
	font-weight: bold;
	color: #990033;
	padding-left: 30px;
}

section.reservation .item-reservation-room .room .list-checkbox>li .checkbox>label>span.column-button {
	position: relative;
	height: 40px;
	width: 135px;
	float: right;
	border-bottom: 5px solid #cc3366;
	background: #920024;
	transition: border-color 0.3s ease, background 0.3s ease;
}

section.reservation .item-reservation-room .room .list-checkbox>li .checkbox>label>span.column-button::before {
	display: block;
	position: absolute;
	content: "";
	top: -5px;
	left: -10px;
	width: 10px;
	height: 100%;
	height: calc(100% + 10px);
	background: #e1e1e1;
	z-index: 99;
}

section.reservation .item-reservation-room .room .list-checkbox>li .checkbox>label>span.column-button::after {
	display: block;
	position: absolute;
	content: "";
	top: 50%;
	margin-top: -6px;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 6px;
	border-color: transparent transparent transparent #e1e1e1;
}

section.reservation .item-reservation-room .room .list-checkbox>li:hover .checkbox>label>span.column-button,
section.reservation .item-reservation-room .room .list-checkbox>li .checkbox>label>input:checked~span.column-button {
	border-color: #44dc8c;
	background: #01ae4a;
}

section.reservation .item-reservation-room .room .list-checkbox>li .checkbox>label>span.column-button>span {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	height: 40px;
	text-align: center;
	line-height: 37px;
	font-weight: bold;
	width: 100%;
	color: #FFFFFF;
	opacity: 0;
	transition: opacity 0.3s ease;
}

section.reservation .item-reservation-room .room .list-checkbox>li .checkbox>label>input:not(:checked):not(:hover)~span.column-button>span.text-select,
section.reservation .item-reservation-room .room .list-checkbox>li .checkbox>label>input:not(:checked):hover~span.column-button>span.text-hover,
section.reservation .item-reservation-room .room .list-checkbox>li .checkbox>label>input:checked~span.column-button>span.text-selected {
	opacity: 1;
}

section.reservation .item-reservation-room .room p {
	font-size: 12px;
	color: #cccccc;
	line-height: 20px;
}

section.reservation .item-reservation-summary {
	position: relative;
}

section.reservation .item-reservation-summary .item-content {
	position: relative;
	overflow: hidden;
	z-index: 99;
	background: #FFFFFF;
}

section.reservation .item-reservation-summary.item-reservation-confirm .item-content,
section.reservation .item-reservation-summary.item-reservation-repeat .item-content {
	border: 40px solid #FFFFFF;
	border-bottom: 0;
	text-align: center;
	padding-bottom: 22px;
}

section.reservation .item-reservation-summary.item-reservation-repeat .item-content {
	padding-bottom: 40px;
}

section.reservation .item-reservation-summary.item-reservation-repeat .item-repeat {
	padding: 35px 0;
	background: #333333;
}

section.reservation .item-reservation-summary.item-reservation-repeat .item-repeat>div {
	width: 570px;
	margin: 0 auto;
}

section.reservation .item-reservation-summary.item-reservation-repeat .item-repeat>div::after {
	display: block;
	content: "";
	clear: both;
}

section.reservation .item-reservation-summary.item-reservation-repeat .item-repeat>div>div {
	position: relative;
	padding-left: 65px;
	font-size: 30px;
	line-height: 40px;
	font-weight: 200;
	color: #FFFFFF;
	float: Left;
}

section.reservation .item-reservation-summary.item-reservation-repeat .item-repeat>div>div+div {
	float: right;
}

section.reservation .item-reservation-summary.item-reservation-repeat .item-repeat>div>div>i {
	position: absolute;
	top: 50%;
	left: 0;
	font-size: 38px;
	color: #656565;
	transform: translateY(-50%);
}

section.reservation .item-reservation-summary.item-reservation-repeat .item-repeat>div>div+div>i {
	left: 5px;
}

section.reservation .item-reservation-summary.item-reservation-repeat .item-repeat>div>div>strong {
	display: block;
	font-size: 20px;
	line-height: 30px;
	font-weight: bold;
}

section.reservation .item-reservation-summary.item-reservation-confirm .confirmation {
	display: inline-block;
	width: 570px;
	margin-top: 40px;
	padding: 25px 40px 0;
	text-align: left;
	border: 1px solid #cfcfcf;
}

section.reservation .item-reservation-summary.item-reservation-confirm .confirmation>.checkbox+.checkbox {
	margin-top: 25px;
}

section.reservation .item-reservation-summary.item-reservation-confirm .confirmation>.btn {
	display: block;
	width: 100%;
	width: calc(100% - 140px);
	margin: 30px 70px -35px;
	height: 70px;
	padding-top: 0;
	padding-bottom: 0;
	text-align: center !important;
	line-height: 68px;
}

section.reservation .item-reservation-summary .item-title {
	margin-bottom: 25px;
	text-align: center;
}

section.reservation .item-reservation-summary .table {
	width: 570px;
	margin: 0 auto 10px;
}

section.reservation .item-reservation-summary .table tr {
	cursor: pointer;
}

section.reservation .item-reservation-summary .table td {
	position: relative;
	font-size: 14px;
	line-height: 24px;
	padding: 8px 0;
	color: #666666;
	border: 0 !important;
}

section.reservation .item-reservation-summary.item-reservation-confirm .table td {
	padding: 18px 0;
}

section.reservation .item-reservation-summary .table td:first-child::before {
	display: block;
	position: absolute;
	content: "";
	top: 0;
	width: 200vw;
	left: -100vw;
	border-top: 1px solid #cfcfcf;
	z-index: -1;
}

section.reservation .item-reservation-summary .table tr:last-child>td:first-child::before {
	display: block;
	position: absolute;
	content: "";
	bottom: 0;
	width: 200vw;
	left: -100vw;
	border-bottom: 1px solid #cfcfcf;
	z-index: -1;
}

section.reservation .item-reservation-summary .table td.column-room,
section.reservation .item-reservation-summary .table td.column-price {
	font-weight: bold;
	color: #990033;
}

section.reservation .item-reservation-summary .table td.column-person {
	padding-left: 40px;
}

section.reservation .item-reservation-summary .table td.column-person>strong {
	font-weight: 400;
	color: #990033;
}

section.reservation .item-reservation-summary .table td.column-price {
	font-weight: 400;
	color: #990033;
	padding-left: 80px;
}

section.reservation .item-reservation-summary .table td.column-radio {
	width: 1px;
	white-space: nowrap;
}

section.reservation .item-reservation-summary .table td.column-radio>.radio {
	margin: -2px 0 0;
	position: relative;
	vertical-align: middle;
	cursor: pointer;
}

section.reservation .item-reservation-summary .table td.column-radio>.radio>input {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	z-index: -1;
}

section.reservation .item-reservation-summary .table td.column-radio>.radio>span {
	position: relative;
	display: block;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	border: 2px solid #666666;
	background: #FFFFFF;
	transition: background 0.3s ease;
}

section.reservation .item-reservation-summary .table td.column-radio>.radio>input:checked+span,
section.reservation .item-reservation-summary .table tr:hover td.column-radio>.radio>input+span {
	background: #01ae4a;
}

section.reservation .item-reservation-summary .table td.column-payment-title {
	font-weight: bold;
	color: #990033;
	padding-left: 15px;
	padding-right: 15px;
	text-align: left;
}

section.reservation .item-reservation-summary .table td.column-text {
	text-align: right;
}

section.reservation .item-reservation-summary p {
	text-align: center;
	font-size: 12px;
	color: #cccccc;
}

section.reservation .item-reservation-summary p.total-price {
	margin: 40px auto -15px;
	text-align: center;
	width: 570px;
	padding: 30px 0;
	color: #666666;
	font-size: 20px;
	font-weight: bold;
	background: #f8f8f8;
}

section.reservation .item-reservation-summary p.total-price>strong {
	font-size: 30px;
	color: #990033;
	font-weight: 300;
	padding-left: 10px;
}

section.reservation .item-reservation-message .item-content {
	width: 400px;
	max-width: 100%;
	text-align: center;
	margin: 0 auto;
	font-size: 14px;
	line-height: 25px;
}

section.reservation .item-reservation-message .item-content>i {
	font-size: 70px;
	margin: 0 0 20px;
	color: #00ca47;
}

section.reservation .item-reservation-message .item-content>i.fa-times-circle {
	color: #ff0000;
}

section.reservation .item-reservation-message .item-content>p+p {
	margin-top: 25px;
}

section.reservation .item-reservation-message .item-content>p a {
	color: #8f0028;
	text-decoration: underline;
}

section.reservation .item-reservation-message .item-content>p a:hover {
	text-decoration: none;
}

section.reservation .item-reservation-button {
	margin-top: 40px !important;
	text-align: center;
}

section.reservation .item-reservation-date>.row {
	background: #FFFFFF;
}

section.reservation .item-reservation-date>.row>.col-data {
	color: #FFFFFF;
	background: #333333;
}

section.reservation .item-reservation-date>.row>.col-data>.row {
	position: relative;
	height: 100%;
}

section.reservation .item-reservation-date>.row>.col-data>.row::after {
	position: absolute;
	display: block;
	content: "";
	top: 50%;
	left: 0;
	width: 100%;
	border-top: 1px solid #7f7f7f;
}

section.reservation .item-reservation-date>.row>.col-data>.row>div {
	padding-left: 130px;
	font-size: 30px;
	line-height: 40px;
	font-weight: 200;
	height: 50%;
	padding-top: 23px;
}

section.reservation .item-reservation-date>.row>.col-data>.row>div+div {
	padding-top: 41px;
}

section.reservation .item-reservation-date>.row>.col-data>.row>div>strong {
	display: block;
	font-size: 20px;
	line-height: 30px;
	font-weight: bold;
}

section.reservation .item-reservation-date>.row>.col-data>.row>div>input[type="text"] {
	height: 43px;
	line-height: 43px;
	font-weight: 200;
	color: #FFFFFF;
	padding: 0;
	border: 0;
	background: transparent;
}

section.reservation .item-reservation-date>.row>.col-data>.row>div>i {
	position: absolute;
	top: 50%;
	left: 60px;
	font-size: 38px;
	color: #656565;
	transform: translateY(-50%);
}

section.reservation .item-reservation-date>.row>.col-data>.row>div+div>i {
	left: 65px;
}

section.reservation .item-reservation-date>.image,
section.reservation .item-reservation-summary>.image {
	position: relative;
	margin: 0;
	height: 50px;
}

section.reservation .item-reservation-date>.image img,
section.reservation .item-reservation-summary>.image img {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	object-fit: cover;
	object-position: center center;
}

section.reservation .item-reservation-date .daterangepicker {
	display: block !important;
	position: static !important;
	border: 0;
	margin: 0;
	font-size: 0;
	line-height: 0;
	text-align: center;
	padding: 40px;
}

section.reservation .item-reservation-date .daterangepicker::before,
section.reservation .item-reservation-date .daterangepicker::after {
	display: none;
}

section.reservation .item-reservation-date .daterangepicker .drp-calendar {
	width: 230px;
	max-width: none;
	padding: 0;
	float: none;
	display: inline-block;
}

section.reservation .item-reservation-date .daterangepicker .drp-calendar+.drp-calendar {
	margin-left: 75px;
}

section.reservation .item-reservation-date .daterangepicker th {
	vertical-align: top;
	padding: 0;
	background: none !important;
}

section.reservation .item-reservation-date .daterangepicker th>span {
	border-color: #920024;
}

section.reservation .item-reservation-date .daterangepicker th.month {
	font-size: 20px;
	font-weight: bold;
	color: #666666;
	text-transform: lowercase;
	padding: 0 0 20px;
}

section.reservation .item-reservation-date .daterangepicker td {
	padding: 0 !important;
	border-radius: 0 !important;
	border: 0 !important;
	color: #666666 !important;
	transition: color 0.3s ease, background 0.3s ease;
	background: #FFFFFF !important;
}

section.reservation .item-reservation-date .daterangepicker td.disabled {
	color: #e9e7ed !important;
	text-decoration: none;
}

section.reservation .item-reservation-date .daterangepicker td.in-range,
section.reservation .item-reservation-date .daterangepicker td.start-date,
section.reservation .item-reservation-date .daterangepicker td:not(.disabled):hover {
	color: #FFFFFF !important;
	background: #920024 !important;
}

section.reservation .quantity-picker {
	display: table;
	margin-top: 10px;
	margin-left: -5px;
}

section.reservation .quantity-picker>div {
	display: table-cell;
	vertical-align: top;
}

section.reservation .quantity-picker>div.input,
section.reservation .quantity-picker>div.input>input {
	text-align: center;
	width: 65px;
	height: 51px;
	border: 0;
	padding: 0;
	font-weight: bold;
}

section.reservation .quantity-picker>div>button {
	padding: 0;
	width: 51px;
	height: 51px;
	text-align: center;
	margin: 0 5px;
	border: 0;
}

section.reservation .quantity-picker>div>button::after {
	display: none !important;
}

section.reservation .quantity-picker>div>button>span>i {
	color: #FFFFFF !important;
	margin: 0;
}

section.reservation .quantity-picker>div.input>.form-control {
	text-align: center;
	font-size: 30px;
}


/* RESPONSIVE */

@media (max-width: 1499px) {
	section.contact .list-contact>li {
		padding-left: 45px;
	}
	section.contact .list-contact>li>a {
		font-size: 30px;
		line-height: 40px;
	}
	section.contact .list-contact>li>i {
		font-size: 28px;
	}
}

@media (max-width: 1199px) {
	footer {
		padding: 50px 0 45px;
	}
	footer .col-logo,
	footer .col-address,
	footer .col-contact {
		text-align: center !important;
	}
	footer .col-powered {
		position: relative;
		text-align: center !important;
		margin-top: 70px;
	}
	footer .col-powered::before {
		position: absolute;
		display: block;
		content: "";
		top: -40px;
		left: 15px;
		width: 100%;
		width: calc(100% - 30px);
		border-top: 1px solid #484848;
	}
	footer .list-contact {
		padding-left: 0;
	}
	.container {
		padding: 0 20px;
	}
	section.intro .content {
		text-align: center;
	}
	section.intro h1 {
		font-size: 90px;
		margin-bottom: 40px;
	}
	section.intro .list-breadcrumb~.content h1 {
		margin: 0;
	}
	section.intro h1>strong {
		font-size: 61px;
		margin-bottom: -15px;
	}
	section.with-gallery .photo-big {
		height: 400px;
		border-right: 0;
	}
	section.with-gallery .photo-small {
		height: 200px;
	}
	section.with-gallery .photo-small:nth-child(2),
	section.with-gallery .photo-small:nth-child(4) {
		border-right: 0;
	}
	section.with-gallery .photo-small:nth-child(3),
	section.with-gallery .photo-small:nth-child(4) {
		border-bottom: 1px solid #FFFFFF;
	}
	section.with-gallery .content {
		padding: 30px 20px;
	}
	section.benefits .col-12 {
		border: 0;
	}
	section.benefits .col-12:nth-child(1),
	section.benefits .col-12:nth-child(3) {
		border-right: 1px solid #FFFFFF;
	}
	section.benefits .col-12:nth-child(3),
	section.benefits .col-12:nth-child(4) {
		border-top: 1px solid #FFFFFF;
	}
	section.base-content .content {
		padding: 30px 20px;
	}
	section.base-content.with-facebook iframe {
		margin: 20px;
		height: calc(100% - 40px);
	}
	.item-instagram {
		padding: 20px;
	}
	.item-contactbox {
		text-align: center;
	}
	.item-contactbox .list-contact {
		margin-top: 30px;
	}
	.item-contactbox .btn {
		position: static;
		margin-top: 30px;
	}
	section.contact .list-contact>li {
		padding-left: 30px;
	}
	section.contact .list-contact>li+li {
		margin-top: 5px;
	}
	section.contact .list-contact>li>a {
		font-size: 20px;
		line-height: 30px;
	}
	section.contact .list-contact>li>i {
		font-size: 18px;
	}
}

@media (max-width: 991px) {
	header {
		position: relative;
		height: 135px;
		padding: 30px 0;
		background: #FFFFFF;
	}
	header #logo>a>img {
		height: 75px;
	}
	header .col-menu {
		text-align: right;
		align-self: end;
	}
	header #menu-parent {
		position: absolute;
		width: 320px;
		right: 15px;
		top: 34px;
		display: flex;
		flex-direction: column !important;
		padding: 40px 20px 25px;
		padding-right: 0;
		text-align: left;
		max-width: calc(100vw - 40px);
		background: #FFFFFF;
		visibility: hidden;
		opacity: 0;
		box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.2) !important;
		transition: opacity 0.3s ease, visibility 0.3s ease;
		z-index: 100;
	}
	header #menu-parent>hr {
		display: none;
	}
	header #menu-parent>.row {
		order: 2;
	}
	header #menu-parent>.row~.row {
		order: 1;
	}
	header .nav {
		border-top: 1px solid #e8e8e8;
	}
	header .nav>li {
		display: block;
		width: 100%;
		margin: 0 !important;
		border-bottom: 1px solid #e8e8e8;
	}
	header .nav>li>a {
		height: 42px;
		line-height: 42px;
		padding: 0 20px;
		transition: background 0.3s ease, color 0.3s ease;
	}
	header .nav>li>a:hover,
	header .nav>li[class*="current"]>a {
		color: #FFFFFF;
		background: #910028;
	}
	header .nav>li>a::after {
		display: none;
	}
	header .list-contact {
		padding: 15px 20px;
		text-align: left;
		margin-top: 30px;
		background: #efefef;
	}
	header .list-contact>li+li {
		margin: 0 !important;
	}
	header .list-language {
		margin-top: 20px;
	}
	header .list-language>li+li {
		margin-left: 10px !important;
	}
	header .list-language>li+li::before {
		display: none;
	}
	header .list-language>li>a {
		display: block;
		width: 50px;
		height: 40px;
		line-height: 38px;
		text-align: center;
		border: 1px solid #efefef;
		font-weight: normal !important;
		background: #FFFFFF;
		transition: background 0.3s ease, border-color 0.3s ease, color 0.3s ease;
	}
	header .list-language>li>a:hover,
	header .list-language>li.active>a {
		color: #FFFFFF;
		border-color: #910028;
		background: #910028;
	}
	header .btn-menu {
		position: relative;
		display: inline-block;
		width: 50px;
		height: 50px;
		line-height: 50px;
		padding: 0;
		color: #FFFFFF !important;
		font-size: 26px;
		text-align: center;
		background: none !important;
		box-shadow: none !important;
		transition: box-shadow 0.3s ease, color 0.3s ease;
	}
	header .btn-menu::after {
		position: absolute;
		display: block;
		content: "";
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: #910028;
		transition: background 0.3s ease;
		z-index: 101;
	}
	header .btn-menu>i {
		position: relative;
		margin: 0;
		z-index: 102;
	}
	body.menuToggled header #menu-parent {
		opacity: 1;
		visibility: visible;
	}
	body.menuToggled header .btn-menu,
	header .btn-menu:hover {
		color: #910028 !important;
		box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.2) !important;
	}
	body.menuToggled header .btn-menu::after,
	header .btn-menu:hover::after {
		background: #FFFFFF;
	}
	footer .list-contact>li>a {
		font-size: 18px;
	}
	section.intro {
		padding: 30px 0;
	}
	section.intro .container {
		padding-top: 0;
		padding-bottom: 0;
	}
	section.intro .content {
		padding: 30px 30px 40px;
	}
	section.intro h1 {
		font-size: 40px;
		line-height: 43px;
		margin-bottom: 20px;
	}
	section.intro h1>strong,
	section.intro .list-breadcrumb~.content h1 {
		font-size: 30px;
		margin: 0;
	}
	section.intro .list-breadcrumb~.content h1 {
		line-height: 40px;
	}
	section.with-gallery .photo-big {
		height: 300px;
		border-right: 0;
	}
	section.with-gallery .photo-small {
		height: 150px;
	}
	.item-signature .row>div+div {
		margin-top: 25px;
	}
	section.intro .list-breadcrumb {
		margin-top: 0;
	}
	section.intro .list-breadcrumb~.content {
		margin: 0;
	}
	section.listing-price::before {
		display: none;
	}
	section.listing-price .col-room {
		padding-right: 15px;
	}
	section.listing-price .col-text {
		position: relative;
		padding-left: 15px;
		margin-top: 50px;
		padding-top: 30px;
		padding-bottom: 30px;
	}
	section.listing-price .col-text * {
		position: relative;
		z-index: 3;
	}
	section.listing-price .col-text::before {
		position: absolute;
		display: block;
		content: "";
		top: 0;
		left: -5px;
		height: 100%;
		width: 100%;
		width: calc(100% + 10px);
		background: #FFFFFF;
		z-index: 1;
	}
	section.contact .list-data {
		width: 100%;
	}
	section.contact .container-fluid>.row>.with-background {
		height: 250px;
	}
	.item-columnbox .item-content {
		padding: 30px 20px;
	}
	.item-columnbox .row>div {
		padding: 0 20px 30px;
	}
	.item-columnbox .row>div figure {
		margin: 0 -20px 25px;
	}
	.item-columnbox .row>div+div figure {
		margin-left: -21px;
	}
	.item-columnbox .row>div+div {
		border: 0;
	}
	.item-columnbox figure>img {
		width: 100%;
	}
}

@media (max-width: 767px) {
	footer .col-logo {
		padding-bottom: 30px;
	}
	footer .col-contact {
		padding-bottom: 30px;
	}
	footer .row>div[class*="text-"]>div {
		text-align: center !important;
	}
	section.with-gallery .photo-big {
		height: 250px;
		border-right: 0;
	}
	section.with-gallery .photo-small {
		height: 120px;
	}
	section.benefits .col-12 {
		border: 0;
	}
	section.benefits .col-12~.col-12 {
		border-top: 1px solid #FFFFFF;
	}
	.item-benefit {
		margin: 20px;
		padding: 35px 20px 30px;
		height: auto;
	}
	section.base-content.with-facebook .row {
		background: #FFFFFF;
	}
	section.base-content.with-facebook iframe {
		display: block;
		margin: 20px auto;
		height: 320px;
	}
	section.base-content.with-facebook figure.background {
		display: none;
	}
	section.listing-price {
		padding-bottom: 25px;
	}
	.item-room .list-unstyled {
		padding: 20px;
		width: 100%;
	}
	.item-room .with-background {
		height: 200px;
	}
	.item-contactbox {
		padding: 30px 20px;
		margin: 20px 0 0 !important;
	}
	.item-contactbox .item-title {
		font-size: 30px;
		line-height: 45px;
	}
	.item-contactbox .list-contact>li>a {
		display: inline-block;
		font-size: 22px;
		line-height: 32px;
		font-weight: 200;
		color: #ffffff;
	}
	section.listing-gallery {
		padding: 15px 0 0 !important;
	}
	.item-gallery {
		margin: 50px 0;
	}
	section.contact .list-contact {
		padding: 40px 0;
	}
	section.contact .row .row>.col-12 {
		height: auto;
	}
	section.contact .with-background {
		height: 120px !important;
	}
	section.contact .container-fluid>.row>.with-background {
		height: 200px !important;
	}
	section.contact form .row>div+div {
		margin-top: 12px;
	}
	.item-referencebox .slick-slider {
		padding: 0 30px 50px;
	}
	.item-referencebox .slick-slider .slick-arrow {
		width: 20px;
		height: 20px;
		top: 12px;
	}
	.item-referencebox .slick-dots {
		left: 0;
		width: 100%;
		text-align: center;
	}
	.item-columnbox .row>div+div figure {
		margin-left: -20px;
	}
}

@media (max-width: 575px) {
	.item-partnerbox .content {
		padding: 30px;
	}
	.item-partnerbox img {
		margin: 20px 0;
	}
}

#reservation-loader {
	position: fixed;
	display: none;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	cursor: progress;
	background: rgba(255, 255, 255, 0.7);
	z-index: 9999;
}

.lds-roller {
	display: block;
	position: absolute;
	width: 64px;
	height: 64px;
	top: 50%;
	left: 50%;
	margin-top: -32px;
	margin-left: -32px;
}

.lds-roller div {
	animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
	transform-origin: 32px 32px;
}

.lds-roller div:after {
	content: " ";
	display: block;
	position: absolute;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #920025;
	margin: -3px 0 0 -3px;
}

.lds-roller div:nth-child(1) {
	animation-delay: -0.036s;
}

.lds-roller div:nth-child(1):after {
	top: 50px;
	left: 50px;
}

.lds-roller div:nth-child(2) {
	animation-delay: -0.072s;
}

.lds-roller div:nth-child(2):after {
	top: 54px;
	left: 45px;
}

.lds-roller div:nth-child(3) {
	animation-delay: -0.108s;
}

.lds-roller div:nth-child(3):after {
	top: 57px;
	left: 39px;
}

.lds-roller div:nth-child(4) {
	animation-delay: -0.144s;
}

.lds-roller div:nth-child(4):after {
	top: 58px;
	left: 32px;
}

.lds-roller div:nth-child(5) {
	animation-delay: -0.18s;
}

.lds-roller div:nth-child(5):after {
	top: 57px;
	left: 25px;
}

.lds-roller div:nth-child(6) {
	animation-delay: -0.216s;
}

.lds-roller div:nth-child(6):after {
	top: 54px;
	left: 19px;
}

.lds-roller div:nth-child(7) {
	animation-delay: -0.252s;
}

.lds-roller div:nth-child(7):after {
	top: 50px;
	left: 14px;
}

.lds-roller div:nth-child(8) {
	animation-delay: -0.288s;
}

.lds-roller div:nth-child(8):after {
	top: 45px;
	left: 10px;
}

@keyframes lds-roller {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

/* RESERVATION RESPONSIVE */
@media (max-width: 1199px) {
    section.reservation .quantity-picker > div > button
    {
        width: 41px;
        height: 41px;
    }

    section.reservation .quantity-picker > div.input,
    section.reservation .quantity-picker > div.input > .form-control
    {
        width: 55px;
        height: 41px;
    }

    section.reservation .item-reservation-date > .row > .col-data > .row > div
    {
        font-size: 25px;
        line-height: 35px;
    }

    section.reservation .item-reservation-room .room > .row
    {
        min-height: 0 !important;
    }

    section.reservation .item-reservation-room .room .col-data
    {
        padding: 40px 40px 30px;
    }

    section.reservation .item-reservation-room .room::after
    {
        display: none;
    }
    
    section.reservation .item-reservation-room .room .list-checkbox > li .checkbox > label > span.column-person
    {
        width: 280px;
    }

    section.reservation .item-reservation-room .room .list-checkbox > li .checkbox > label > span.column-button::before
    {
        background: #FFFFFF;
    }

    section.reservation .item-reservation-room .room .list-checkbox > li .checkbox > label > span.column-button::after
    {
        border-color: transparent transparent transparent #FFFFFF;
    }
    
    section.reservation .item-reservation-form .item-content
    {
        padding-left: 0;
        padding-right: 0;
    }

    section.reservation .item-reservation-form .item-content > .row,
    section.reservation .item-reservation-form .checkbox
    {
        width: 600px;
        margin-left: auto;
        margin-right: auto;
    }

    section.reservation .item-reservation-form .checkbox
    {
        width: 570px;
    }
}

@media (max-width: 991px)
{
    section.reservation .item-reservation-date > .row > .col-data
    {
        width: 310px;
    }

    section.reservation .item-reservation-date > .row > .col-data > .row > div
    {
        padding-left: 110px;
    }

    section.reservation .item-reservation-date > .row > .col-data > .row > div > i
    {
        left: 40px;
    }

    section.reservation .item-reservation-date > .row > .col-data > .row > div + div > i
    {
        left: 45px;
    }

    section.reservation .item-reservation-date .daterangepicker .drp-calendar + .drp-calendar
    {
        position: absolute;
        width: 1px;
        margin: 0;
    }

    section.reservation .item-reservation-date .daterangepicker .drp-calendar + .drp-calendar thead th.month,
    section.reservation .item-reservation-date .daterangepicker .drp-calendar + .drp-calendar thead tr + tr,
    section.reservation .item-reservation-date .daterangepicker .drp-calendar + .drp-calendar tbody
    {
        display: none;
    }

    section.reservation .item-reservation-date .daterangepicker .drp-calendar + .drp-calendar thead th.next
    {
        position: absolute;
        top: 0;
        right: 0;
    }

    section.reservation .item-reservation-room .room .room-name > span
    {
        display: block;
        float: none;
        padding-top: 10px;
        margin-bottom: 10px;
    }

    section.reservation .item-reservation-room .room .list-checkbox > li .checkbox > label > span.column-person
    {
        width: 150px;
    }

    section.reservation .item-title > .btn
    {
        display: none; /* TODO: */
    }
}

@media (max-width: 767px)
{
    section.reservation .item-reservation-date > .row > .col-data > .row::after
    {
        display: none;
    }

    section.reservation .item-reservation-date > .row > .col-data > .row
    {
        height: auto;
    }

    section.reservation .item-reservation-date > .row > .col-data > .row > div
    {
        padding-left: 80px;
        -ms-flex-item-align: auto !important;
        align-self: auto !important;
        padding-bottom: 30px;
    }

    section.reservation .item-reservation-date > .row > .col-data > .row > div + div
    {
        padding-top: 24px;
        border-left: 1px solid #7f7f7f;
    }

    section.reservation .item-reservation-date > .row > .col-data > .row > div + div > strong
    {
        margin-bottom: 14px;
    }

    section.reservation .item-reservation-date > .row > .col-data > .row > div > i
    {
        font-size: 30px;
        left: 22px;
        top: 65px;
    }

    section.reservation .item-reservation-date > .row > .col-data > .row > div + div > i
    {
        left: 26px;
    }

    section.reservation .item-reservation-room .room .col-data
    {
        padding: 20px 20px 15px;
    }

    section.reservation .item-reservation-room .room .col-image
    {
        height: 250px;
    }

    /*section.reservation .item-reservation-summary .item-content
    {
        margin: 0 20px;
    }*/

    section.reservation .item-reservation-summary .table
    {
        width: 100%;
        border-top: 1px solid #cfcfcf;
    }

    section.reservation .item-reservation-summary:not(.item-reservation-confirm) .table tr,
    section.reservation .item-reservation-summary:not(.item-reservation-confirm) .table tr > td
    {
        display: block;
        text-align: left;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    section.reservation .item-reservation-summary:not(.item-reservation-confirm) .table tr > td::before 
    {
        display: none !important;
    }

    section.reservation .item-reservation-summary:not(.item-reservation-confirm) .table tr
    {
        border-bottom: 1px solid #cfcfcf;
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    section.reservation .item-reservation-summary:not(.item-reservation-confirm) .table tr > td + td
    {
        display: inline-block;
    }

    section.reservation .item-reservation-summary:not(.item-reservation-confirm) .table tr > td.column-price
    {
        float: right;   
        margin-top: -8px;
    }

    section.reservation .item-reservation-summary:not(.item-reservation-confirm) .table tr > td.column-room
    {
        padding-bottom: 0;
    }

    section.reservation .item-reservation-summary:not(.item-reservation-confirm) .table tr > td.column-room + td
    {
        padding-top: 0;
    }

    section.reservation .item-reservation-room:not(.empty-room)::before,
    section.reservation .item-reservation-summary.item-reservation-confirm::before
    {
        height: 300vw;
    }

    section.reservation .item-reservation-form .item-content
    {
        padding: 20px;
    }

    section.reservation .item-reservation-form .item-content .row
    {
        width: auto;
        margin-left: -15px;
        margin-right: -15px;
    }

    section.reservation .item-reservation-form .item-content .checkbox
    {
        width: auto;
    }

    section.reservation .item-reservation-summary.item-reservation-confirm .confirmation
    {
        width: 100%;
    }

    section.reservation .item-reservation-summary.item-reservation-confirm .table tr,
    section.reservation .item-reservation-summary.item-reservation-confirm .table tr > td
    {
        display: block;
        text-align: left !important;
    }

    section.reservation .item-reservation-summary.item-reservation-confirm .table tr
    {
        border-bottom: 1px solid #cfcfcf;
    }

    section.reservation .item-reservation-summary.item-reservation-confirm .table tr > td::before
    {
        display: none !important;
    }

    section.reservation .item-reservation-summary.item-reservation-confirm .table tr > td:not(:last-child)
    {
        display: inline-block;
        padding-bottom: 0;
    }

    section.reservation .item-reservation-summary .table td.column-radio
    {
        width: 10px;
    }

    section.reservation .item-reservation-summary .table td.column-text
    {
        padding-top: 0;
        padding-left: 28px;
    }

    section.reservation .item-reservation-summary.item-reservation-confirm .item-content
    {
        border: 0;
        margin: 0;
        padding: 20px;
    }

    section.reservation .item-reservation-summary.item-reservation-confirm .confirmation
    {
        padding: 15px 20px;
    }

    section.reservation .item-reservation-summary.item-reservation-confirm .confirmation > .btn
    {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }

    section.reservation .item-reservation-summary.item-reservation-repeat .item-content
    {
        border-width: 20px;
    }

    section.reservation .item-reservation-summary p.total-price
    {
        width: 100%;
    }

    section.reservation .item-reservation-summary p.total-price > strong
    {
        display: block;
        padding-top: 8px;
    }

    section.reservation .item-reservation-summary.item-reservation-repeat .item-repeat > div
    {
        width: 100%;
        padding: 0 20px;
    }

    .btn.btn-lg
    {
        display: block;
        width: 100%;
        text-align: center;
        padding-left: 0;
        padding-right: 0;
    }
}

@media (max-width: 575px) {
    section.reservation .item-reservation-date > .row > .col-data > .row::after
    {
        display: block;
    }

    section.reservation .item-reservation-date .daterangepicker
    {
        margin: 0 auto;
        width: auto;
        padding-left: 0;
        padding-right: 0;
    }

    section.reservation .item-reservation-room .room .col-image
    {
        height: 180px;
    }

    section.reservation .item-reservation-room .room .list-checkbox > li + li
    {
        margin-top: 10px;
    }

    section.reservation .item-reservation-room .room .list-checkbox > li .checkbox > label > span.column-price
    {
        float: right;
        text-align: right;
        padding: 0;
    }
    
    section.reservation .item-reservation-room .room .list-checkbox > li .checkbox > label > span.column-button
    {
        display: block;
        float: none;
        width: 100%;
        height: 46px;
    }

    section.reservation .item-reservation-room .room .list-checkbox > li .checkbox > label > span.column-button > span
    {
        height: 46px;
        line-height: 43px;
    }

    section.reservation .item-reservation-room .room .list-checkbox > li .checkbox > label > span.column-button::before
    {
        display: none;
    }

    section.reservation .item-reservation-room .room .list-checkbox > li .checkbox > label > span.column-button::after
    {
        top: 0;
        left: 50%;
        margin-left: -6px;
        margin: 0;
        border-width: 6px 6px 0 6px;
        border-color: #FFFFFF transparent transparent transparent;
        transition: border-color 0.3s ease;
    }

    section.reservation .item-reservation-room .room .list-checkbox > li:hover .checkbox > label > span.column-button::after
    {
        border-color: #e1e1e1 transparent transparent transparent;
    }

    section.reservation .item-reservation-summary.item-reservation-repeat .item-repeat > div > div
    {
        display: block;
        float: none !important;
    }

    section.reservation .item-reservation-summary.item-reservation-repeat .item-repeat > div > div + div
    {
        margin-top: 24px;
        padding-top: 24px;
        border-top: 1px solid #7f7f7f;
    }
}

/* POPUP */
.modal-backdrop
{
	background: #FFFFFF;
}

.modal-backdrop.show
{
	opacity: 0.9;
}

#popupModal .modal-dialog
{
	width: 655px;
	max-width: calc(100% - 130px);
	margin: 0 auto !important;
	padding: 65px 65px 30px;
}

#popupModal .modal-content
{
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: 0px 0px 40px 0px rgba(0,0,0,0.33);
}

#popupModal .modal-body
{
	padding: 0 !important;
}

#popupModal .modal-body > .close
{
	position: absolute;
	top: -50px;
	right: -50px;
	font-size: 45px;
	color: #6b042d;
	opacity: 1;
	text-shadow: none !important;
	transition: color 0.3s ease;
}

#popupModal .modal-body > .close:hover
{
	color: #ff6189;
}

#popupModal .modal-body .img-fluid
{
	width: 100%;
}

#popupModal .modal-body .title
{
	position: relative;
	color: #333333;
	font-size: 30px;
	line-height: 30px;
	text-align: center;
	font-weight: bold;
	padding: 40px 35px 15px;
}

#popupModal .modal-body .title::before
{
	position: absolute;
	display: block;
	content: "";
	top: 0;
	left: 35px;
	width: calc(100% - 70px);
	height: 6px;
	background: #920025;
}

#popupModal .modal-body .content
{
	text-align: center;
	font-size: 14px;
	line-height: 24px;
	color: #666666;
	padding: 0 35px 50px;
}

@media (max-width: 749px)
{
	#popupModal .modal-dialog
	{
		padding: 30px !important;
		width: 585px;
		max-width: 100%;
	}

	#popupModal .modal-body > .close
	{
		right: auto;
		left: 50%;
		top: -60px;
		transform: translateX(-50%);
	}

	#popupModal .modal-body .content
	{
		padding: 0 20px 25px;
	}
}

.grecaptcha-badge
{
	z-index: 99999;
}