/*
Theme Name: UnderStrap
*/

/* General */

:root {
	--davygrey: #5a5a5a;
	--khaki: #c1b098;
	--chestnut: #dbb3b1;
	--tuscany: #c89fa3;
	--grey: #e1e1e1;
	--tan: #A4745E;
	--promo: #E4E4D2;
	--h1size: 28px;
  --h1size-tablet: 40px;
	--h1size-desktop: 45px;
	--h2size: 25px;
  --h2size-tablet: 30px;
	--h2size-desktop: 45px;
	--boxpadding: 30px;
  --boxpadding-medium: 50px;
  --boxpadding-large: 100px;
  --maxwidth: 700px;

	/* Cascades Colors */
	--wallpaper: #ffffff;
	--orange: #E8DBC5;
	--babyblue: #9C1421;
}

* {
	box-sizing: border-box;
}

body {
	background-color: #fff;
}

.sr-only {
	display: none;
}

a {
    text-decoration: none;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat', sans-serif;
    margin-top: 0;
    text-align: center;
}

.main {
	margin-top: 79px;
}

.top-button {
	bottom: 10px;
	color: var(--chestnut);
	font-size: 40px;
	position: fixed;
	right: 80px;
	z-index: 9800;
}

figcaption {
	text-align: center;
}

/* Animations for loader */
.bounce1 {
	animation: bounce 1s infinite;
}
.bounce2 {
	animation: bounce 1.2s infinite;
}
.bounce3 {
	animation: bounce 1.4s infinite;
}
.bounce4 {
	animation: bounce 1.6s infinite;
}

.hotel-amenity__title,
.hotel-promotions__title,
.awards__title {
	font-size: var(--h2size);
	letter-spacing: 0 !important;
}

/* ensures that paragraphs are centered
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.hotel-description__text,
.hotel-amenity__text,
.hotel-promotions__text {
	text-align: center;
}

.hotel-button {
	background: var(--babyblue);
	border-radius: 5px;
	color: #111;
	display: block;
	font-size: 16px !important;
	font-weight: 500;
	margin: 20px auto;
	text-align: center;
	transition-duration: 0.3s;
	padding: 10px;
	width: 150px;
	z-index: 4500;
}
.hotel-button--white {
	background: #fff;
	color: #000;
}
.hotel-button--shadow {
	box-shadow: 3px 3px 0 var(--davygrey);
}

.detail-button {
	align-items: center;
	background-color: var(--babyblue);
  color: #fff;
  display: flex;
  font-size: 25px;
	height: 80px;
	justify-content: center;
	line-height: 50px;
  margin: 20px auto;
  max-width: var(--maxwidth);
  text-align: center;
  text-transform: uppercase;
	transition-duration: 0.1s;
  width: 100%;
}

.detail-button:hover {
	color: #fff !important;
	transform: scale(0.98);
}


/* Booking overlay
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.booking-overlay {
    background-color: rgba(0, 0, 0, 0.8);
    bottom: 0;
    display: none;
    height: 100%;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 10000;
    width: 100%;
}

.booking-overlay__close i {
    align-items: center;
    color: crimson;
    display: flex;
    font-size: 30px;
    justify-content: center;
    position: absolute;
    right: 20px;
    top: 20px;
}

.booking-overlay__form {
    color: #fff;
    font-size: 1.3em;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.booking-overlay__form label {
    display: block;
}

.booking-overlay__form input,
.booking-overlay__form select {
    background: rgba(250, 250, 250, 0.8);
    border: none;
    border-radius: 0;
    color: #000;
    font-family: 'Open Sans', Arial, sans-serif;
    font-size: 20px;
    height: 50px;
    margin: 15px 0;
    padding: 10px;
    width: 100%;
}

.booking-overlay__form [type="submit"] {
    background: var(--tan);
    color: #fff;
} */

/* Booking Overlay Desktop
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.booking-overlay-desktop {
    background-color: var(--davygrey);
    color: #fff;
    display: none;
    height: 150px;
    left: 0;
    padding: 20px;
    position: fixed;
    right: 0;
    bottom: 0;
    width: 100%;
    z-index: 10000;
}

.booking-overlay-desktop__close i {
    color: #fff;
	cursor: pointer;
    display: flex;
    font-size: 30px;
    justify-content: flex-end;
    position: absolute;
    right: 20px;
    top: 20px;
}

.booking-overlay-desktop__form {
    align-items: flex-end;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    width: 90%;
}

.booking-overlay-desktop__form label {
    display: block;
    font-size: 1.2em;
}

.booking-overlay-desktop__form input,
.booking-overlay-desktop__form select {
    background: rgba(250, 250, 250, 0.8);
    border: none;
    border-radius: 0;
    color: #000;
    font-family: 'Open Sans', Arial, sans-serif;
    font-size: 15px;
    height: 50px;
    margin: 15px 0;
    padding: 10px;
    width: 100%;
}

.booking-overlay-desktop__form-item {
    width: 23%;
}

.booking-overlay-desktop__form [type="submit"] {
    background: var(--khaki);
    color: #fff;
	cursor: pointer;
} */


/* Navbar
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.navbar {
	box-shadow: 0 1px 5px #ccc;
	min-height: 3.25rem !important;
	z-index: 9999 !important;
}

.navbar-dropdown {
	border-radius: 0 !important;
	padding: 10px !important;
}

.navbar-item,
.navbar-link {
	line-height: 0.5 !important;
	padding: 0.5rem 0.6rem !important;
}

.navbar-link {
	font-size: 19px;
}

.navbar-burger {
	height: auto !important;
}

a.navbar-burger span {
	color: #000 !important;
}

.navbar-item .navbar-link,
.navbar-link:hover {
	background-color: #fff !important;
	color: #000 !important;
}

.navbar-item .navbar-link:after {
	border-color: transparent !important;
}

.navbar-item img {
	max-height: 6rem !important;
	width: 180px;
}

.navbar-item {
	font-size: 20px;
	line-height: 35px;
}

.navbar,
.navbar-item,
.navbar-book {
	font-family: 'Montserrat', sans-serif;
}

.navbar-book-top {
	background-color: var(--babyblue);
  margin: 0 0 26px 0;
}

.navbar-book-top .navbar-link {
	background-color: var(--babyblue) !important;
}

.navbar-book-top .navbar-link,
.navbar-phone-top .navbar-link {
	text-align: center !important;
}


/* Hero Image & Booking
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.hero {
	background-image: url("https://hotelcascades.lu/wp-content/uploads/2019/06/thumbnail.jpeg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100%;
	display: flex;
	flex-flow: column nowrap;
	height: 200px;
	justify-content: flex-end !important;
	min-width: 100%;
	padding: 20px;
}

.top-row,
.bottom-row {
	display: flex;
	flex-flow: row nowrap;
}

.input-container {
	align-items: center;
	background-color: #fff;
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	margin: 1px;
	width: 50%;
}

.input-container .fas {
	align-items: center;
	background-color: var(--chestnut);
    color: #fff;
	display: flex;
    font-size: 18px;
    height: 100%;
	justify-content: center;
    padding: 10px;
    width: 55px;
}

.input-container input,
.input-container select {
	-webkit-appearance: none;
	background-color: #fff;
	border: none;
	border-radius: 0;
	color: #000;
	font-size: 16px;
	padding: 15px;
	width: 100%;
}

.input-container select option {
	color: #000;
}

.input-container input::placeholder {
    color: #000;
}
.input-container input:-ms-input-placeholder {
    color: #000;
}
.input-container input::-ms-input-placeholder {
    color: #000;
}

.booking__form input[type="submit"] {
	-webkit-appearance: none;
	background-color: #fff;
	border-radius: 0;
	color: #000 !important;
	height: 100%;
}

.input-container.hover,
.input-container.hover input {
	background-color: var(--chestnut);
	color: #fff;
}

.input-container.hover:hover {
	transform: scale(0.98);
}


/* Hotel Description
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.hotel-description {
	padding: var(--boxpadding);
    margin: 0 auto;
    max-width: 900px;
}

.hotel-description--grey {
	border: 2px solid #F3F3F3;
	padding: 20px;
}

.hotel-description__ulist li {
	list-style-type: circle;
	margin-left: 20px;
	text-align: left !important;
}

.hotel-description__speciallist {
	list-style-type: none;
	display: flex;
	flex-flow: row wrap;
	margin: 0 auto 20px auto;
}

.hotel-description__speciallist li {
	align-items: center;
	background-color: var(--davygrey);
	color: #000;
	display: flex;
	height: 137px;
	justify-content: center;
	margin: 5px;
	padding: 15px;
	text-align: center;
	width: 46%;
}

.hotel-description__stars {
	display: flex;
	justify-content: center;
}

.hotel-description__star {
	background-image: url("https://saint-nicolas.lu/wp-content/uploads/2018/09/MuqtfmO.png");
	background-repeat: no-repeat;
	background-size: 100% 100%;
	height: 30px;
	width: 10%;
}

.hotel-description__title {
	color: var(--davygrey);
	font-size: var(--h1size);
	letter-spacing: 0;
	line-height: 1 !important;
}

.hotel-description__title-homepage {
	line-height: 50px !important;
}

.hotel-description__table {
	border-collapse: collapse;
	width: 100%;
}

.hotel-description__table,
.hotel-description__table tr,
.hotel-description__table td {
	border: 1px solid #ccc;
}

.hotel-description__table tr td {
	padding: 10px;
}



/* Packages
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.hotel-packages {
	margin: 30px auto 40px auto;
	padding: 10px 0;
	max-width: 100%;
}

.hotel-packages__packages {
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
}

@media screen and (min-width: 800px) {
	.hotel-packages__packages {
		flex-flow: row wrap;
	}

	.hotel-packages__item {
		margin: 25px !important;
	}

	.hotel-packages__title {
		margin: 20px 0 50px !important;
	}
}

.hotel-packages__item {
	position: relative;
	margin: 25px auto;
	max-width: 350px;
	width: 100%;
}

.hotel-packages__caption {
	background-color: #fff;
	box-shadow: 0 0 5px #ccc;
	bottom: -15px;
	color: var(--davygrey);
	font-size: 20px;
	left: 0;
	padding: 15px;
	position: absolute;
}

@media screen and (min-width: 500px) {
	.hotel-packages__caption {
		bottom: -5px;
		left: -10px;
	}
}

.hotel-packages__button {
	display: block;
	text-align: center;
	width: 100%;
}

.hotel-packages__button button {
	background-color: #f7dab8;
	border-radius: 5px;
	border: none;
	color: #fff;
	font-size: 16px;
	margin: 40px 0;
	padding: 18px;
	transition-duration: 0.2s;
	width: 180px;
}

.hotel-packages__button button:hover {
	cursor: pointer;
	font-weight: 600;
}



/* Special Menu
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.hotel-special-menu {
	background: var(--promo);
	padding: 20px 0;
	margin-bottom: 80px;
}

.hotel-special-menu-flexbox {
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	width: 100%;
}

.hotel-special-menu-item {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	margin: 0 auto;
	width: 340px;
}

.round-image {
	width: 40%;
	height: 120px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.hotel-special-menu-item-right {
	width: 60%;
}

.round-image-container {
	width: 100px;
	height: 100px;
	border-radius: 50%;
	overflow: hidden;
}

.round-image img {
	width: 100%;
	height: 100%;
}

@media screen and (min-width: 768px) {
	.hotel-special-menu-flexbox {
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-evenly;
	}
}

.hotel-special-menu__title {
	font-size: 20px !important;
	padding: 20px 0 0 0 !important;
}

.hotel-special-menu__separator {
	background: #ccc;
	height: 2px;
	margin: 20px auto;
	width: 70px;
}

.hotel-special-menu__subtitle {
	font-size: 22px !important;
}

.hotel-packages__button--border button {
	background: transparent;
	box-shadow: 0 0 3px var(--davygrey);
	color: var(--davygrey);
	transition-duration: 0.2s;
}

.hotel-packages__button--border button:hover {
	cursor: pointer;
	font-weight: 600;
}



/* Rooms & Attractions
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.hotel-amenity {
	display: flex;
	flex-flow: row wrap;
	margin: 0 auto;
	max-width: 1100px;
}

.hotel-amenity__item {
	padding: var(--boxpadding);
}

.hotel-amenity__image {
	height: 240px;
	width: 100%;
}

.hotel-amenity__image-icon {
	background-color: #000;
	top: 0;
	right: 0;
	padding: 10px;
	position: absolute;
	transition-duration: 0.3s;
}

.hotel-amenity__image-icon:hover {
	background-color: #20A362;
}
.hotel-amenity__image-icon:hover a {
	color: #fff;
}
.hotel-amenity__image-icon:hover a i {
	color: #fff;
}

.hotel-amenity__image-icon a {
	color: #fff;
}

.hotel-amenity__image-icon a i {
	color: #E4222D;
	font-size: 20px;
}

.hotel-amenity__ulist {
	margin: 0 auto;
	width: 225px;
}

.hotel-amenity__ulist li {
	list-style-type: circle;
}

.hotel-amenity__image img {
	height: 100%;
	width: 100%;
}

.hotel-amenity__item {
    width: 100%;
}

.hotel-amenity__image {
	width: 100%;
}


/* Restaurant Parallax
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.restaurant-parallax {
	background-image: url("https://hotelcascades.lu/wp-content/uploads/2019/05/golf-3685616_1280.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	background-attachment: unset;
	width: 100%;
}

.restaurant-overlay {
	background-color: rgba(202, 212, 171, 0.8);
	padding: 50px;
}

.restaurant-overlay p {
	color: #fff;
	font-size: 18px;
	margin: 40px auto;
	max-width: 450px;
}

.restaurant-button {
	background-color: #fff;
	color: #30291D;
	width: 170px;
}


/* Events & Gifts
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.boxes {
	align-items: center;
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	margin: 0 auto;
	width: 100%;
}

.box-item {
	align-items: center;
	display: flex;
	flex-flow: column nowrap;
	height: 200px;
	justify-content: center;
	width: 100%;
}

.box-flex {
	display: flex;
	flex-flow: column nowrap;
	align-items: center;
	justify-content: space-evenly;
	height: 100%;
	width: 100%;
}

.box-flex i,
.box-flex h2 {
	text-align: center;
	width: 100%;
}

.box-item i {
	font-size: 50px;
}
.box-item h2 {
	align-items: flex-start;
	font-size: 25px;
}

.bgroundbeige {
	background-color: var(--orange);
}
.bgroundbeige .box-flex i,
.bgroundbeige .box-flex h2 {
	color: #fff;
}
.bgroundwallpaper {
	background-color: #fff;
}
.bgroundwallpaper .box-flex i,
.bgroundwallpaper .box-flex h2 {
	color: var(--orange);
}



/* FOOTER
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
footer.footer {
	background-color: #f3f3f3;
	color: #30291D;
	padding: 3rem 1.5rem 1.5rem 1.5rem !important;
	position: absolute;
	width: 100%;
}

footer.footer,
footer.footer p {
	font-weight: 400;
}

footer.footer div.footer-flex {
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	margin: 0 auto;
	max-width: 900px;
}

footer.footer div.footer-flex__item {
	margin: 25px;
}

footer.footer a.footer-flex__link {
	color: #30291D;
	display: block;
	transition-duration: 0.1s;
	width: 100%;
}

footer.footer a.footer-flex__link:hover {
	color: var(--babyblue) !important;
}

footer.footer .footer-flex__title {
	color: #30291D !important;
	font-weight: 800;
}

footer.footer a.footer-flex__link--icon {
	font-size: 30px;
}

footer.footer a.footer-flex__nolink:hover {
	cursor: default;
}

footer.footer .copyright {
	text-align: center;
}

footer.footer .copyright a {
	color: #000;
}

footer.footer .social-media-flex {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
}

footer.footer .social-media-flex a {
	width: 30%;
}

footer.footer .footer-legal {
	display: inline !important;
	font-size: 13px;
}

footer.footer .footer-promo {
	width:320px;
}

/*  Newsletter area */
footer.footer div.footer-flex__item--newsletter {
	width: 100%;
}

@media screen and (min-width: 418px) {
	footer.footer div.footer-flex__item--newsletter {
		width: 300px;
	}
}

@media screen and (min-width: 768px) {
	footer.footer div.footer-flex {
		justify-content: space-between !important;
	}
}

.newsletter__form-item {
	display: flex;
	justify-content: center;
	flex-flow: row nowrap;
}

.newsletter__input {
	-webkit-appearance: none;
	border: none;
	font-size: 1rem;
	padding: 15px;
	width: 70%;
}
.newsletter__input:focus,
.newsletter__input:active {
	outline: var(--promo);
}

.newsletter__submit {
	background-color: var(--orange);
	color: var(--davygrey);
	padding: 15px;
	text-align: center;
	width: 30%;
}

.contact-us {
	margin-top: 40px;
}


/* RESTAURANT PAGE
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
/* Menus */
.menus {
	display: flex;
	height: 50px;
	justify-content: space-around;
	position: fixed;
	bottom: 0;
	width: 100%;
	z-index: 9600;
}

.menus__item {
	width: 25%;
}

.menus__item a {
	align-items: center;
	color: #fff;
	display: flex;
	justify-content: center;
	height: 100%;
}

/* Image Carusel */
.image-carousel img {
	height: 100%;
	width: auto;
}

.image-carousel .slick-dots {
	bottom: -25px !important;
}

.opening-times {
	border: 1px solid #e1e1e1;
	width: 100%;
}

.opening-times th,
.opening-times tr td {
	padding: 15px;

}

.opening-times tbody tr td:first-child,
.opening-times tbody tr td:last-child {
	width: 50%;
}


/* GALLERY PAGE
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
.gallery_row {
  display: flex;
  flex-wrap: wrap;
  margin: 20px 0;
  padding: 0 3px;
}

.gallery_row .gallery_column {
  flex: 33.333%;
  max-width: 33.333%;
  padding: 0 3px;
}

.gallery_row .gallery_column img {
  margin-top: 5px;
  vertical-align: middle;
  width: 100%;
}

@media screen and (min-width: 0px) and (max-width: 600px) {
  .gallery_column {
    flex: 100% !important;
    max-width: 100% !important;
  }
}

@media screen and (min-width: 600px) and (max-width: 800px) {
  .gallery_column {
    flex: 50% !important;
    max-width: 50% !important;
  }
}


/* ATTRACTIONS PAGE
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
.attractions {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-evenly;
	margin: 0 auto 30px auto;
	max-width: 1200px;
	width: 100%;
}

.attractions__title {
	font-weight: 800;
}

.attractions__text {
	font-size: 14px;
}

.attractions__maintitle {
	margin: 90px 0 30px 0;
}

.attractions__item {
	display: flex;
	flex-flow: row nowrap;
	margin: 15px 0;
	max-width: 350px;
	width: 100%;
}

.attractions__image {
	height: 150px;
	width: 150px;
}

.attractions__description {
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
	padding: 10px 10px 0 10px;
}

.attractions__description p {
	text-align: center;
}

.attractions__link {
	display: block;
	text-align: center;
	width: 100%;
}

/* ABOUT PAGE
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
.about__description {
	margin: 0 auto;
	max-width: var(--maxwidth);
	padding: 20px;
}

.about__description p {
	margin: 10px 0;
}

.about--dark {
	border: 1px solid #e1e1e1;
}

.float {
	width: 100%;
}
.float--left {
	float: none;
	margin: 0;
}
.float--right {
	float: none;
	margin: 0;
}


/* CONTACT PAGE
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
.contact {
	display: flex;
	flex-flow: row wrap;
	font-size: 20px;
	margin: 0 auto;
	max-width: 800px;
	padding: var(--boxpadding);
	width: 100%;
}

.contact__info,
.contact__form {
	padding: var(--boxpadding);
	width: 100%;
}

.contact__info {
	border: 2px solid var(--grey);
}

.contact__info address {
	margin-bottom: 20px;
}

.contact__info p {
	color: #000;
}

.contact__link {
	color: #000;
	display: block;
	margin: 5px 0;
	transition-duration: 0.2s;
}
.contact__link:hover {
	color: var(--tuscany);
}

.contact__form {
	border: 1px solid #e1e1e1;
	color: #000;
}

.contact__map {
	height: 300px;
	width: 100%;
}

.contact__form form label {
	display: block;
}

.contact__form form input {
	height: 30px;
	margin: 10px 0;
	width: 100%;
}

.contact__form form textarea {
	margin: 10px 0;
	width: 100%;
}

.contact__form form input,
.contact__form form textarea {
	border: 1px solid #111;
	font-size: 14px;
	padding: 3px;
}

.directions {
	display: flex;
	flex-flow: column nowrap;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 800px;
	padding: var(--boxpadding);
	padding-top: 0;
}


/* EVENTS PAGE
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
.promotion-overlay {
	align-items: center;
    background-color: rgba(0, 0, 0, 0.8);
    bottom: 0;
	display: flex;
    height: 100%;
	justify-content: center;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
	width: 100%;
    z-index: 11000;
}

.promotion-overlay__close i {
    align-items: center;
    color: crimson;
    display: flex;
    font-size: 25px;
    justify-content: center;
    position: absolute;
    right: 10px;
    top: 10px;
}

.promotion-overlay__container {
	background-color: #fff;
	border-top: 5px solid var(--tan);
	height: 84vh;
	max-width: 500px;
	position: relative;
	width: 80vw;
}

.promotion-overlay__heading {
	align-items: center;
	display: flex;
	font-size: 25px;
	font-weight: 800;
	height: 18%;
	justify-content: center;
	padding: 20px;
	text-align: center;
	width: 100%;
}

.promotion-overlay__image {
	height: 45%;
	width: 100%;
}

.promotion-overlay__image img {
	height: 100%;
	width: 100%;
}

.promotion-overlay__info {
	height: 37%;
	padding: 20px;
	width: 100%;
}

.promotion-overlay__button {
	align-items: center;
	background-color: var(--tan);
	bottom: 0;
	display: flex;
	height: 50px;
	justify-content: center;
	left: 0;
	margin-top: 15px;
	position: relative;
	right: 0;
	text-align: center;
	width: 100%;
}

.promotion-overlay__button button {
	background-color: var(--tan);
	border: none;
	position: fixed;
	color: #fff;
	font-size:18px;
}

.event-item-text {
	margin: 40px 0;
}

.events__table {
	width: 100%;
}

.events__table tr td {
	text-align: center;
}

.meetings__table {
	border-collapse: collapse;
	font-size: 12px;
	margin-top: 20px;
	text-align: center;
	width: 100%;
}

.meetings__table thead tr {
	border-bottom: 1px double #000;
}

.events__buttons {
	display: flex;
	width: 100%;
	justify-content: center;
	text-align: center;
}

.events__buttons a {
	align-items: center;
	color: #fff;
	display: flex;
	font-size: 20px;
	justify-content: center;
	margin: 20px 0 0 0;
	padding: 20px;
	transition-duration: 0.1s;
	width: 50%;
}

.events__buttons a:hover {
	transform: scale(0.98) !important;
}

.events__buttons--khaki {
	background-color: var(--promo);
	color: var(--davygrey) !important;
}
.events__buttons--brown {
	background-color: var(--khaki);
}
.events__buttons--brown:hover {
	color: #fff !important;
}



/* SPA PAGE
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
.spa-overlay {
	align-items: center;
	background-color: rgba(0, 0, 0, 0.8);
	bottom: 0;
	display: none;
	flex-flow: column nowrap;
	height: 100%;
	left: 0;
	justify-content: center;
	padding: var(--boxpadding);
	position: fixed;
	right: 0;
	top: 0;
	width: 100%;
	z-index: 10000 !important;
}

.spa-overlay__close {
	color: #fff;
	font-size: 25px;
	text-align: right;x
}

.spa-form {
	color: #fff;
	max-width: 400px;
}

.spa-form label {
	-webkit-appearance: none;
	display: block;
	margin: 10px 0;
	width: 100%;
}

.spa-form input,
.spa-form textarea {
	-webkit-appearance: none;
	background: rgba(250, 250, 250, 0.8);
	border: none;
	font-size: 16px;
	height: 30px;
	padding: 10px;
	width: 100%;
}

.spa-form textarea {
	-webkit-appearance: none;
	height: 50px;
}

.spa-form input[type="submit"] {
	-webkit-appearance: none;
	align-items: center;
	background: var(--khaki);
	color: #fff;
	display: flex;
	height: 50px;
	justify-content: center;
	margin-top: 20px;
}


/* FACILITIES PAGE
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
.facilities {
	margin: 0 auto;
	max-width: 800px;
	width: 100%;
}

.facilities__item {
	margin: 50px 0;
}

.facilities__description .hotel-description__title {
	margin: 30px 0;
	padding: 0 30px;
}

.facilities__item .hotel-description__ulist {
	width: 280px;
	margin: 0 auto;
}

.facilities__image {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	height: 300px;
	width: 100%;
}
.facilities__image--sauna {
	background-image: url("https://hotelcascades.lu/wp-content/uploads/2019/06/allef-vinicius-274688-unsplash.jpg");
}
.facilities__image--wifi {
	background-image: url("https://hotelcascades.lu/wp-content/uploads/2019/06/celebrate-celebration-cheers-1268558.jpg");
	background-position: center;
}

.facilities__description {
	margin-top: -1px;
}


/* LOCAL GUIDE PAGE
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
.info-box {
	margin: 0 auto;
	max-width: 800px;
	width: 100%;
}

.info-top {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-flow: column nowrap;
	padding: var(--boxpadding);
	width: 100%;
}

.info-bottom {
	display: flex;
	flex-flow: column nowrap;
	align-items: center;
	justify-content: center;
	width: 100%;
}

.info-temp,
.info-fun {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-flow: column nowrap;
	padding: var(--boxpadding);
}

.info-temp {
	background-color: var(--promo);
}

.info-fun {
	background-color: var(--khaki);
	margin-bottom: 30px;
}

.info-temp table,
.info-fun table {
	border-collapse: collapse;
	width: 100%;
}

.info-temp table,
.info-fun table,
.info-temp table tbody,
.info-fun table tbody,
.info-temp table tr,
.info-fun table tr,
.info-temp table tr td,
.info-fun table tr td {
	border: 1px solid var(--davygrey);
}

.info-temp table tr td,
.info-fun table tr td {
	padding: 5px;
}


/* LOCAL GUIDE PAGE
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
.impressum {
	background-color: #fff;
	margin: 0 auto;
	max-width: 700px;
	padding: 0 var(--boxpadding);
	width: 100%;
}

.impressum__maintitle {
	margin-top: -20px;
}

.impressum__item {
	border: 1px solid #e1e1e1;
	box-shadow: 0 0 10px #ccc;
	margin: 20px 0;
	padding: var(--boxpadding);
}

.impressum__title {
	font-size: 20px;
	margin-bottom: 10px;
}

.impressum__subtitle {
	font-style: italic;
	margin: 10px 0;
}

.impressum__address {
	margin: 10px 0;
}



/* 404 PAGE NOT FOUND
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
.page-not-found {
	background-color: var(--promo);
	margin: 0 auto;
	max-width: 700px;
	padding: var(--boxpadding);
	width: 100%;
}


/* SPECIALS PAGE
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
.specials {
	margin: 0 auto 20px auto;
	max-width: 700px;
	width: 100%;
}

.specials__item {
	background-color: var(--chestnut);
	display: flex;
	flex-flow: column nowrap;
	margin: 40px auto;
	max-width: 500px;
	width: 90%;
}

.specials__image {
	border-top: 5px solid var(--chestnut);
	border-left: 5px solid var(--chestnut);
	border-right: 5px solid var(--chestnut);
}

.specials__content {
	align-items: center;
	display: flex;
	height: 100px;
	justify-content: center;
	text-align: center;
}

.specials__item .specials__title {
	color: #fff !important;
	font-size: 20px;
	padding: 30px;
}

.specials__content:hover .specials__image {
	border-top: 5px solid var(--promo);
	border-left: 5px solid var(--promo);
	border-right: 5px solid var(--promo);
}

.specials__item .specials__title:hover {

}

.specials__title i {
	margin-left: 15px;
}

.specials__subtitle {
	margin: 10px 0;
	font-weight: 900;
}

.specials__text {
	margin: 10px 0;
	text-align: center;
}

.specials__icon {
	text-align: center;
}

.specials__icon img {
	height: 20px;
	width: 20px;
}


/* PACKAGES PAGE
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
.package {
	display: flex;
	justify-content: center;
	flex-flow: column nowrap;
	margin: 50px auto 100px auto;
	max-width: 450px;
	width: 100%;
}

.package__image {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 300px;
	overflow: hidden;
	max-width: 100%;
}

.package__info {
	padding: 20px;
}

.package__ulist {
	list-style: circle inside;
	margin: 10px 0;
}

.package__price {
	border: 1px solid #f3f3f3;
	margin: 10px 0;
	padding: 10px;
}

.package__price-item {
	font-weight: 900;
}

.package__buttons {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
}

.package__inquire,
.package__book {
	align-items: center;
	display: flex;
	height: 50px;
	justify-content: center;
	width: 50%;
}

.package__inquire {
	background-color: var(--babyblue);
	color: #444;
}

.package__book {
	background-color: var(--orange);
	color: #444;
}

.back-button {
	color: #000;
	background-color: var(--orange);
	display: block;
	font-size: 25px;
	text-align: center;
	transition-duration: 0.2s;
	padding: 20px;
}

.back-button:hover {
	transform: scale(0.995);
}


/* NEWS/PRESS PAGE
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
.news__article {
	display: flex;
	flex-flow: column nowrap;
	margin: 30px auto;
	max-width: 500px;
	width: 90%;
}

.news__article-image {
	background-image: url(https://www.saint-nicolas.lu/wp-content/uploads/2019/01/490_0008_15043624_StNicolas_Houdremont_1.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 210px;
    width: 100%;
}

.news__article-info {
	border-left: 1px solid var(--grey);
	border-right: 1px solid var(--grey);
	border-bottom: 1px solid var(--grey);
	padding: 15px;
}

.news__article-info .hotel-description__title {
	margin-bottom: 10px;
}

.news__article-text {
	color: var(--davygrey);
}

.news__article-button, .restaurant-menu-button {
	border: none;
  background-color: var(--babyblue);
  border-radius: 10px;
  color: #fff;
  display: block;
  font-size: 15px;
  margin: 15px auto 0 auto;
  padding: 15px 25px;
}

.restaurant-menu-button{
	margin-top:50px;
  margin-bottom: 50px;
}

.news__article-button:hover,
.news__article-button:focus,
.news__article-button:active {
	outline: none;
}




/* MEDIA QUERIES
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
@media screen and (min-width: 337px) {
	footer.footer div.footer-flex {
		justify-content: center;
	}
}

@media screen and (min-width: 400px) {
    .hotel-description__star {
        height: 36px;
        width: 36px;
    }

    .hotel-amenity__image {
        height: 315px;
    }

    .hotel-promotions {
        padding-top: 60px;
    }

	.box-item {
		height: 230px;
	}
}

@media screen and (min-width: 450px) {
	.news__article-image {
		height: 230px;
	}

	.news__article-info {
		padding: 20px;
	}
}

@media screen and (min-width: 500px) {
    .hotel-description,
    .hotel-amenity__item,
    .hotel-promotions {
        padding: 50px;
    }

    .hotel-amenity__image {
        height: 400px;
        background-position: center;
    }

	.wave {
		margin-top: 25px;
	}

	.smallerpadding-desktop {
		padding: 20px;
	}

	.promotion-overlay__heading {
		height: 16%;
	}

	.promotion-overlay__image {
		height: 49%;
	}

	.promotion-overlay__info {
		height: 35%;
	}

	.box-flex h2 {
		font-size: 30px;
	}

	.news__article-image {
		height: 250px;
	}

	.news__article-info {
		padding: 30px;
	}

	.news__article-text {
		text-align: center;
	}
}

@media screen and (min-width: 550px) {
	.links a {
		width: 33.33%;
	}

	.hero {
		height: 350px;
	}

	.hotel-description__star {
		display: none;
	}

	.home-hotel-description .hotel-description__title {
		background-color: #fff;
		padding: 30px;
		color: #000;
	}

	.hotel-description__information {
		background-color: #fff;
		padding: 30px;
	}
}

@media screen and (min-width: 600px) {
	.hero {
		background-attachment: fixed;
		background-image: url("https://hotelcascades.lu/wp-content/uploads/2019/06/thumbnail.jpeg");
		background-position: top;
	}

	.restaurant-parallax {
		background-attachment: fixed;
	}

	.restaurant-overlay {
		padding: 120px;
	}

	.contact__info,
	.contact__form {
		width: 50%;
	}

	.float {
		width: 60%;
	}
	.float--left {
		float: left;
		margin: 5px 20px 5px 0;
	}
	.float--right {
		float: right;
		margin: 15px 0 0px 25px;
	}

	.about__description:last-child {
		margin-bottom: 20px;
	}

	.directions {
		flex-flow: row nowrap;
	}

	.directions__item {
		width: 45%;
	}

	.facilities__description {
		display: flex;
		flex-flow: row nowrap;
		height: 350px;
	}

	.facilities__description .hotel-description__title,
	.facilities__description .hotel-description__ulist {
		width: 50%;
	}

	.facilities__description .hotel-description__ulist {
		border-right: 2px solid #F7DAB8 !important;
		border-bottom: 2px solid #F7DAB8 !important;
	}

	.facilities__description .hotel-description__ulist li {
		list-style-type: none;
	}

	.facilities__description .hotel-description__title {
		background-color: var(--orange);
		color: var(--wallpaper);
	}

	.facilities__description .hotel-description__title,
	.facilities__description .hotel-description__ulist {
		align-items: center;
		display: flex;
		justify-content: center;
	}

	.facilities__description .hotel-description__ulist {
		flex-flow: column nowrap;
	}

	.facilities__description .hotel-description__title {
		margin: 0;
	}

	.boxes {
		flex-flow: row nowrap;
	}

	.meetings__table {
		font-size: 15px;
	}

	.news__article-image {
		height: 270px;
	}
}

@media screen and (min-width: 650px) {
	.impressum__item {
		margin: 40px 0;
	}
}

@media screen and (min-width: 700px) {
	.hero {
		margin: 20px;
		min-width: 95%;
	}

	.hero-booking {
		display: initial;
	}

	.page-not-found {
		margin: 130px auto 50px auto;
		padding: var(--boxpadding-medium);
	}

	.specials__pdf {
		height: 350px;
	}
}

@media screen and (min-width: 750px) {
	.hotel-description__information {
		padding: 30px;
	}

	.home-hotel-description .hotel-description__title {
		padding: 20px;
	}

    .hero {
		margin: 70px 20px 0 20px;
        height: 450px;
    }

	.input-container {
		height: 60px;
	}

	.input-container input,
	.input-container select {
		font-size: 19px;
	}

    .hotel-amenity {
        flex-flow: row nowrap;
        margin: 80px auto;
    }

    .reverse {
        flex-flow: row-reverse nowrap !important;
    }

    .hotel-amenity__image {
        width: 60%;
    }

    .hotel-amenity__item {
        padding-top: 80px;
        width: 40%;
    }

    .hotel-description__title {
        font-size: var(--h1size-tablet);
    }

    .hotel-description__speciallist li {
		height: 105px;
	}

    .hotel-description__text,
    .hotel-amenity__text,
    .hotel-promotions__text,
	.hotel-description__ulist,
	.hotel-description__ulist li {
        font-size: 18px;
    }

    .hotel-promotions {
        padding-top: 70px;
    }

    .home-one {
		margin-top: 0 !important;
	}

	.package {
		box-shadow: 0 0 20px lightgrey;
		flex-flow: row nowrap;
		max-width: 900px;
	}

	.package__image,
	.package__info {
		width: 50%;
	}

	.package__image {
		min-height: 100%;
		height: initial;
	}
}

@media only screen and (max-width: 800px) {
	#trp-floater-ls {
	    left: 66% !important;
	}
}

@media screen and (min-width: 800px) {
	.links a {
		width: 25%;
	}

	.box-item {
		height: 250px;
	}

	.box-flex i {
		font-size: 60px;
	}

	.meetings__table {
		font-size: 17px;
	}

	.fontsize45 {
		font-size: 40px !important;
	}
}

@media screen and (min-width: 900px) {
    .hero {
        height: 500px;
	}

	.home-hotel-description .hotel-description__title {
		line-height: 60px !important;
	}

	main div.image-carousel {
		margin: 0 auto;
		/*max-width: 1000px;*/
		max-width: 97%;
		width: 100%;
	}

	.box-item {
		height: 300px;
	}

	.box-flex i {
		font-size: 70px;
	}

	.spa-form label {
		margin: 15px 0;
	}
	/*div.slick-track {
		width:auto !important;
	}*/

	div.slick-list.draggable {
		height:78vh;
	}
	.image-container-custom {
		display: flex;
		justify-content: center;
		align-items: center;
		max-height: 97vh;
		overflow: hidden;
	}
	.image-custom {
		max-height: 100%;
  		max-width: 100%;
	}
}

@media screen and (min-width: 1000px) {
    .hero {
        height: 82vh;
    }

	.separator {
		margin: 35px auto;
	}

	.hotel-description__title {
        font-size: var(--h1size-desktop);
    }

    .hotel-amenity__title,
    .hotel-promotions__title,
    .awards__title {
        font-size: var(--h2size-desktop);
    }

	.thirtypadding {
		padding: 55px !important;
	}

	.contact__map {
		height: 500px;
	}

	.box-flex h2 {
		font-size: 35px;
	}

/*	.home-hotel-description {
	    margin-top: -130px;
	}*/
}

@media screen and (min-width: 1024px) {
	.input-container {
		height: 75px;
		margin: 3px;
		width: 60%;
	}

	.input-container input,
	.input-container select {
		font-size: 20px;
	}

	.hero-booking {
		left: 70px;
	}
}

@media screen and (min-width: 10px) and (max-width: 1087px) {
	.navbar-book-bottom,
	.navbar-phone-bottom {
		display: none !important;
	}
}

@media screen and (min-width: 1088px) {
	.navbar-phone,
	.navbar-phone .navbar-link {
		background-color: var(--orange) !important;
		display: flex;
		justify-content: center;
		text-align: center;
	}

	.navbar-book,
	.navbar-book .navbar-link {
		background-color: var(--babyblue) !important;
		color: #000 !important;
		display: flex !important;
		justify-content: center;
		text-align: center;
	}

	.navbar-phone,
	.navbar-book {
		width: 120px !important;
	}

	.navbar-phone-top,
	.navbar-book-top {
		display: none !important;
	}
}

@media screen and (min-width: 1100px) {
	.navbar-item img {
		max-height: 6rem !important;
		width: 180px;
	}
}

@media screen and (min-width: 1300px) {
	.wave {
		margin-top: -15px;
	}
}

@media screen and (min-width: 1900px) {
	main div.image-carousel {
		width: 100%;
	}
}



/* HELPER CLASSES
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
.separator {
	background: var(--davygrey);
	height: 1px;
	margin: 20px auto;
	width: 100%;
}
.separator--white {
	background: #fff;
}

.leftalign {
	text-align: left;
}
.justify {
	text-align: justify;
}
.center {
	text-align: center;
}

.important {
	font-weight: 900;
}

.gray-text {
	color: var(--davygrey);
	font-weight: 800;
}

/* Margins and paddings */
.tbmargin {
	margin: 20px 0;
}
.oneEmTmargin {
	margin-top: 1em;
}
.tmargin {
	margin-top: 20px !important;
}
.bmargin {
	margin-bottom: 20px;
}
.notmargin {
	margin-top: 25px !important;
}
.notmarginatall {
	margin-top: 0 !important;
}
.nobmargin {
	margin-bottom: 0 !important;
}
.notpadding {
	padding-top: 30px !important;
}
.notpaddingatall {
	padding-top: 0 !important;
}
.thirtypadding {
	padding: 30px !important;
}
.nomargin {
	margin: 0;
}
.nopadding {
	padding: 0;
}

.smallerfont {
	font-size: 15px !important;
}

.bigfont {
	font-size: 50px;
}

.relative-position {
	position: relative;
}

.internal-link-helper {
	display: block;
	height: 85px;
	margin-top: -85px;
	visibility: hidden;
}

.bgcolor--chestnut {
	background-color: var(--chestnut);
}
.bgcolor--khaki {
	background-color: var(--khaki);
}
.bgcolor--tan {
	background-color: var(--tan);
}
.bgcolor--davygrey {
	background-color: var(--davygrey);
}

.emphasis {
	font-weight: 700;
	font-size: 27px;
}

.lineheight30 {
	line-height: 30px;
}

.underlined {
	text-decoration: underline;
}

.fontsize45 {
	font-size: 45px;
}


@media screen and (min-width: 750px) {
	.less-padding-desktop {
		padding-top: 40px !important;
	}
}





/* CASCADES CHANGES */
/*Cascades Nav bar pointer change*/
#page > header > nav > div.navbar-menu > div > div:nth-child(1), #page > header > nav > div.navbar-menu > div > div:nth-child(4) {
	cursor: auto;
}


/* Change of container on conference room */
.conference-room {
	padding: var(--boxpadding);
	max-width: 1100px;
	margin: 0 auto;
}



/* Add margin at top of "main" where needed */
.main-margin-top {
	margin-top: 130px !important;
}
