/* ------------------- */
/* STYLESHEET SECTIONS */
/* ------------------- */
/*  1__CSS Resets
    2__Layout helpers
    3__Header
    4__Main content
    5__Footer
    6__Typo3 overrides
    7__Bootstrap overrides
    8__Media queries
*/
@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i,700,700i');

:root {
	--sticky-filter-bar-height: 0;

	--img-ratio-percent-75: 75%;
	--img-ratio-percent-67: 67%;
	--img-ratio-percent-50: 50%;
	--img-ratio-percent-40: 40%;

	--linklightblue: #BDEFFF;
	--lightblue: #19c1f3;
	--navyblue: #266aa6;
	--lightgrey: #eee;
	--lightgrey2: #ddd;
	--lightgrey3: #bbb;
	--midgrey: #ccc;
	--black: #333;
}

/* ------------------------ */
/* 1__CSS Resets            */
/* ------------------------ */
/* Limited CSS reset */
/* See normalize-4.1.1.css */

html, body, button, input, select, textarea {
	font-family: 'Open Sans', sans-serif;
	font-weight: 300;
}

html {
	height: 100%;
	font-size: 17px;
}

body {
	font-size: 1rem;
	min-height: 100%;
	margin: 0;
	padding: 0;
	color: var(--black);
}

body.has-sticky-filter-bar {
	padding-top: var(--sticky-filter-bar-height);
}

/*
body.modal-open {
	bottom: 0;
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
}
*/

body.modal-open {
	overflow: visible;
	position: absolute;
	width: 100%;
	height: 100%;
}

/* ------------------ */
/* 2__Layout helpers  */
/* ------------------ */
.clear {
	clear: both;
}

.clearfix {
	zoom: 1;
}

.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

.halign-l {
	text-align: left;
}

.halign-r {
	text-align: right;
}

.halign-c {
	text-align: center;
}

.valign-t {
	vertical-align: top;
}

.valign-m {
	vertical-align: middle;
}

.valign-b {
	vertical-align: bottom;
}

.css-table {
	display: table;
	width: 100%;
	table-layout: fixed;
}

.t-inline {
	display: inline-table !important;
}

/* Use this over .css-table in cases where you want the table to take up 100% of the parent's height. An example use
case would be where you want to vertically center overlaid text on a background image. The background image would be part
of the parent, the text component would be a child inside of a block with a "display: table-cell" CSS property.
 */
.wrapper-table {
	display: table;
	width: 100%;
	height: 100%;
	table-layout: fixed;
}

.css-table-row {
	display: table-row;
}

.css-table-cell {
	display: table-cell;
}

.full-width-img {
	width: 100%;
	height: auto;
	display: block;
}

.constrain-994w {
	position: relative;
	max-width: 994px;
	margin: 0 auto;
}

.constrain-1024w {
	position: relative;
	max-width: 1024px;
	margin: 0 auto;
}

.constrain-1150w {
	position: relative;
	max-width: 1150px;
	margin: 0 auto;
}

.constrain-1240w {
	position: relative;
	max-width: 1240px;
	margin: 0 auto;
}

.overflow-visible {
	overflow: visible;
}

/* Responsive container for 16:9 video clips (eg Youtube). The video iframe should be a child of a div with a class of
  "video-container-16-9". If creating such a container is not possible because you don't have access to the HTML eg in
  a CMS content element, you can call the ICIT responsifyYoutubeClips() JavaScript function to do it programmatically.
*/
.video-container-16-9 {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 aspect ratio */
	height: 0;
	overflow: hidden;
	max-width: 100%;
}

.video-container-16-9 iframe,
.video-container-16-9 object,
.video-container-16-9 embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* Responsive container for embedded Google Maps. The Youtube iframe should be a child of a div with a class of
  "gmap-container". If creating such a container is not possible because you don't have access to the HTML eg in
  a CMS content element, you can call the ICIT responsifyGoogleMaps() JavaScript function to do it programmatically.
  NOTE: The aspect ratio doesn't have to be 16:9. You could make it 4:3 by setting padding-bottom: 75.6%
*/
.gmap-container {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 aspect ratio */
	height: 0;
	overflow: hidden;
	max-width: 100%;
}

.gmap-container iframe, .gmap-container object, .gmap-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.mobile-only-block,
.mobile-only-inline {
	display: none;
}

.desktop-only-block {
	display: block;
}

.desktop-only-inline {
	display: inline-block;
}

.f-jc-center {
	justify-content: center;
}

.video-beachcam-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
}

.video-beachcam-container iframe,
.video-beachcam-container object,
.video-beachcam-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

/* ------------------------ */
/* 3__Header styles         */
/* ------------------------ */
#page-header {
	font-size: .882em;
	z-index: 11;
}

#page-header.details-view,
#page-header.news-article-page {
	height: 200px;
}

.site-header__grid {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	padding: 0 20px 0 30px;
}

.site-header__grid .site-header__logo {
	flex: 0 0 300px;
	width: 300px;
}

.site-header__grid .site-header__logo .header-logo-2 {
	display: none;
}

.site-header__grid .site-header__logo img {
	width: 100%;
	max-width: 100%;
}

.site-header__grid .site-header__content-menu {
	flex: 1 1 auto;
}

.site-header__grid .site-header__drawer-button-bar {
	flex: 0 0 120px;
	text-align: right;
}

.site-header__grid .site-header__drawer-button-bar .drawer-button-bar__option {
	background-color: transparent;
}




.site-header__grid-row-2 {
	margin-top: 30px;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	padding: 0 20px 0 30px;
}

.site-header__grid-row-2 .site-header__logo {
	flex: 0 0 300px;
	width: 300px;
}

.site-header__grid-row-2 .site-header__logo img {
	width: 100%;
	max-width: 100%;
}

.site-header__grid-row-2 .site-header__spacer {
	flex: 1 1 auto;
}










.site-header__drawer-button-bar .replaced-svg path,
.site-header__drawer-button-bar .replaced-svg polygon {
	fill: #fff;
}

#page-header.details-view .site-header__drawer-button-bar .replaced-svg path,
#page-header.news-article-page .site-header__drawer-button-bar .replaced-svg path,
#page-header.news-article-page .site-header__drawer-button-bar .replaced-svg polygon,
#page-header.details-view .site-header__drawer-button-bar .icon-btn svg,
#page-header.news-article-page .site-header__drawer-button-bar .icon-btn svg {
	fill: var(--black);
}

#page-header.details-view .site-header__drawer-button-bar .icon-btn:hover .replaced-svg path,
#page-header.details-view .site-header__drawer-button-bar .icon-btn:hover .replaced-svg polygon,
#page-header.news-article-page .site-header__drawer-button-bar .icon-btn:hover .replaced-svg path,
#page-header.details-view .site-header__drawer-button-bar .icon-btn:hover svg,
#page-header.news-article-page .site-header__drawer-button-bar .icon-btn:hover svg {
	fill: #fff;
}

.drawer-button-bar__option.icon-btn {
	background: none;
	transition: background-color 0.3s ease;
	width: 50px;
	height: 50px;
}

.drawer-button-bar__option.icon-btn {
	outline: none;
	padding: 0;
}

.drawer-button-bar__option:not(:first-child) {
	margin: 0;
}

#header__search-icon--desktop {
	width: 30px;
	max-height: 100%;
	height: 30px;
	max-width: 100%;
	position: relative;
	z-index: 1000;
}

.site-header__drawer-button-bar .subscription-btn-wrap {
	display: inline-block;
}

#header__subscribe-icon--desktop {
	width: 30px;
	max-height: 100%;
	height: 30px;
	max-width: 100%;
	position: relative;
	z-index: 1000;
}

/* ------------------------ */
/* 4__Main Content          */
/* ------------------------ */
.drawer {
	padding-top: 140px;
	z-index: 10;
	transition: right 0.425s cubic-bezier(0.77, 0, 0.175, 1);
}

.drawer.sticky {
	position: fixed;
	top: 0 !important;
	bottom: initial;
	width: 360px;
	right: 0;
	z-index: 10000;
}

.drawer.sticky.is-hidden {
	right: -360px;
}

.drawer__container {
	background: #f2f2f2;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
	box-shadow: 0 1px 10px var(--midgrey);
}

.drawer.show-subscribe .drawer__container {
	max-height: calc(100vh - 140px);
}

.drawer .drawer__container .subscribe-wrapper .drawer__content-wrapper {
	max-height: calc(100vh - 200px);
	position: relative;
	max-width: 100vw;
	width: 100%;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

.drawer .drawer__container .search-wrapper,
.drawer .drawer__container .subscribe-wrapper {
	display: none;
}

.drawer .drawer__container .search-wrapper.active,
.drawer .drawer__container .subscribe-wrapper.active {
	display: block;
}

.drawer__title {
	padding: 0 30px;
	color: #fff;
	height: 60px;
	background: var(--navyblue);
	background: rgb(38, 106, 166);
	background: -moz-linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	background: -webkit-linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	background: linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	border-top-left-radius: 0;
}

.drawer__title .title {
	margin: 0;
	line-height: 60px;
}

.drawer__title .drawer__actions {
	position: relative;
	float: right;
	right: -10px;
}

.drawer__title .drawer__actions button {
	background: none;
	border: none;
	cursor: pointer;
	color: #fff;
	outline: none;
}

#site-body .drawer__title .drawer__actions button .drawer__actions-icon {
	width: 17px;
	height: 17px;
	top: -1px;
	position: relative;
}

.drawer__content {
	padding: 30px 30px;
	color: #fff;
}

.drawer__content p:last-child {
	margin-bottom: 0;
}

.drawer__content .btn-group-lg > .btn, .btn-lg {
	border-radius: 0;
}

.drawer__content .btn-info {
	background-color: var(--lightblue);
	border: none;
	height: 100%;
}

.drawer__content .btn-info:not(:disabled):not(.disabled).active,
.drawer__content .btn-info:not(:disabled):not(.disabled):active,
.drawer__content .btn-info .show > .btn-info.dropdown-toggle {
	background-color: var(--navyblue);
}

.drawer__content .form-control {
	border: none;
}

.drawer__content .form-control:focus {
	box-shadow: none;
}

.drawer__content input.form-control[type="text"]::placeholder {
	color: var(--lightgrey3);
}

.drawer__content #ke_search_sword {
	position: relative;
}

.drawer__content.drawer__content--subscribe {
	color: var(--black);
	font-size: .9em;
}

.drawer__content.drawer__content--subscribe #mc_embed_signup {
	background: none;
	clear: left;
	/*font: 14px Helvetica, Arial, sans-serif;*/
	font-size: 14px;
}

.drawer__content.drawer__content--subscribe #mc_embed_signup form {
	padding: 0;
}

#bg-container {
	height: 100vh;
}

iframe[src^="https://www.google.com/maps/"] {
	width: 100%;
	max-width: 100%;
}

#top-hero-wrap {
	margin: 0 auto 60px;
	position: relative;
	z-index: 0;
}

#top-hero-wrap .overlay {
	position: absolute;
	z-index: 10;
	width: 100%;
	height: 100%;
	background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 49%, rgba(0, 0, 0, 0) 100%);
	background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 49%, rgba(0, 0, 0, 0) 100%);
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 49%, rgba(0, 0, 0, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a6000000', endColorstr='#00000000', GradientType=0);
}

#top-hero-wrap .header-hero-img {
	height: 500px;
}

#top-hero-wrap .header-hero-img .focuspoint {
	position: relative;
	overflow: hidden;
	height: 100%;
}

#top-hero-wrap .header-hero-img img {
	width: 100%;
	height: 500px;
	-o-object-fit: cover;
	object-fit: cover;
	object-position: 50% 50%;
}

#top-hero-wrap .header-hero-img .focuspoint img {
	width: inherit;
	max-width: inherit;
	height: auto;
}

#site-body.details-view #top-hero-wrap .header-hero-img img {
	height: 200px;
	object-position: 50% 0;
}

#site-body.details-view #top-hero-wrap .header-hero-img {
	height: 200px;
}

#home-hero-container {
	margin: 0 auto 50px;
	position: relative;
	z-index: 0;
	overflow: hidden;
}

#home-hero-container .cover,
#site-body.landing-page #top-hero-wrap .cover,
#site-body.landing-page #top-hero-wrap .cover-100vh {
	width: 100%;
	/*padding: 250px 0;*/
	height: 100vh;
	height: calc(var(--vh, 1vh) * 100);
	-webkit-background-size: cover !important;
	-moz-background-size: cover !important;
	-o-background-size: cover !important;
	background-size: cover !important;
}

#home-hero-container .cover.main-hero-image-2 {
	display: none;
}

#home-hero-container .cover > img,
#home-hero-container .cover .ce-image img,
#site-body.landing-page #top-hero-wrap .cover img {
	display: none;
}

#home-hero-container .cover .ce-image {
	overflow: visible;
}

.focuspoint {
	height: 100%;
}

#site-body .focuspoint img {
	max-width: inherit;
}

/* START object-fit:cover Fix for IE & IE Edge */
/* Note, requires JS to write the "compat-object-fit class to appropriate container element */
.cover.compat-object-fit {
	background-size: cover;
	background-position: center center;
}

.cover.compat-object-fit-x-left {
	background-size: cover;
	background-position-x: left;
}

.cover.compat-object-fit-x-center {
	background-size: cover;
	background-position-x: center;
}

.cover.compat-object-fit-x-right {
	background-size: cover;
	background-position-x: right;
}

.cover.compat-object-fit-y-top {
	background-size: cover;
	background-position-y: top;
}

.cover.compat-object-fit-y-center {
	background-size: cover;
	background-position-y: center;
}

.cover.compat-object-fit-y-bottom {
	background-size: cover;
	background-position-y: bottom;
}

/* Hide the image if object fit is not supported in IE/Edge - opacity to 0 for the link area */
.cover.compat-object-fit img {
	opacity: 0;
}

#home-hero-container .overlay {
	position: absolute;
	z-index: 10;
	width: 100%;
	height: 100%;
	background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 49%, rgba(0, 0, 0, 0) 100%);
	background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 49%, rgba(0, 0, 0, 0) 100%);
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 49%, rgba(0, 0, 0, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a6000000', endColorstr='#00000000', GradientType=0);
}

.hero-img-scroll-down-btn {
	position: absolute;
	bottom: 22px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 100;
}

.hero-img-scroll-down-btn img.hero-nav-btn {
	filter: drop-shadow(0 0 2px #666);
}

.hero-img-scroll-down-btn:hover img.hero-nav-btn {
	filter: drop-shadow(0 0 4px var(--black));
}

#site-body img {
	max-width: 100%;
	height: auto;
}

b, strong {
	font-weight: 600;
}

a,
a:visited {
	/*color: var(--navyblue);*/
	color: var(--lightblue);
}

h1 {
	font-size: 2.1em;
	font-weight: 700;
}

h2 {
	font-size: 1.7em;
	font-weight: 600;
}

h3 {
	font-size: 1.4em;
	font-weight: 600;
}

h4 {
	font-size: 1.2em;
	font-weight: 600;
}

hr.style1 {
	max-width: 300px;
	margin: 34px auto;
}

::selection {
	background-color: var(--linklightblue);
	color: var(--black);
}

/* Links added from within the Typo3 Rich Text Editor */
.frame-type-text a,
.frame-type-text a:visited,
.frame-type-textpic a,
.frame-type-textpic a:visited{
	border-bottom: 1px solid var(--linklightblue);
	box-shadow: inset 0 -5px 0 var(--linklightblue);
	color: var(--black);
	line-height: .5em;
}

.frame-type-text a:hover,
.frame-type-text a:focus,
.frame-type-text a:active,
.frame-type-textpic a:hover,
.frame-type-textpic a:focus,
.frame-type-textpic a:active {
	background-color: var(--linklightblue);
	text-decoration: none;
	color: var(--black);
}


.base-font {
	color: #212529;
	font-weight: 400;
	font-size: 0.769em;
}

.landing-page {
	overflow: hidden;
}

#home-hero-container .b-grid-nav,
.landing-page .b-grid-nav {
	position: absolute;
	width: 100%;
	padding: 15px 15px 25px;
	bottom: 0;
	left: 50%;
	right: 0;
	font-size: .82em;
	transform: translateX(-50%);
	z-index: 100;
	/*background: rgba(255, 255, 255, .5);*/
	transition: right 1s cubic-bezier(0.77, 0, 0.175, 1);
}

#home-hero-container .b-grid-nav,
#top-hero-wrap .b-grid-nav {
	bottom: 60px;
}

#home-hero-container .b-grid-nav h3.title,
.landing-page .b-grid-nav h3.title {
	color: var(--black);
	font-size: 1.76em;
	margin-bottom: .5em;
}

#home-hero-container .b-grid-nav .button-grid,
.landing-page .b-grid-nav .button-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 20px;
	position: relative
}

#home-hero-container .b-grid-nav .button-grid .btn,
.landing-page .b-grid-nav .button-grid .btn {
	font-size: .95em;
}

#home-hero-container .b-grid-nav .button-grid .item,
.landing-page .b-grid-nav .button-grid .item {
	padding: 5px 10px;
	background-color: var(--navyblue);
	color: #fff;
	text-align: center;
	box-shadow: 0 0 5px #888;
	transition: background-color .1s;
}

#home-hero-container .b-grid-nav .button-grid .item:hover,
.landing-page .b-grid-nav .button-grid .item:hover {
	text-decoration: none;
	background-color: #19c1f3;
	box-shadow: none;
}

#home-hero-container .b-grid-nav button.b-grid-nav__close,
.landing-page .b-grid-nav button.b-grid-nav__close {
	position: absolute;
	right: 15px;
	top: 3px;
	background: none;
	border: none;
	cursor: pointer;
	color: #fff;
	outline: none;
	padding: 0;
	display: none;
}

#home-hero-container .b-grid-nav button.b-grid-nav__close .icon,
#site-body.landing-page .b-grid-nav button.b-grid-nav__close .icon {
	width: 19px;
	height: 19px;
	padding: 0;
}

#home-hero-container .b-grid-nav .handle,
.landing-page .b-grid-nav .handle {
	position: absolute;
	width: 30px;
	/*height: 50px;*/
	padding: 10px 10px;
	background-color: var(--navyblue);
	left: -30px;
	top: 50%;
	transform: translateY(-50%);
	display: none;
}

#home-hero-container .b-grid-nav  .handle img,
#site-body.landing-page .b-grid-nav .handle img {
	width: 100%;
	height: auto;
}

.listing-pg-sub-header {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-areas: "box1";
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: 1px solid #bbb;
	align-items: end;
}

.listing-pg-sub-header .box-1 {
	grid-area: box1;
}

.listing-pg-sub-header .box-2 {
	grid-area: box2;
	text-align: center;
	display: none;
}

.listing-pg-sub-header h1 {
	/*font-size: 1.5em;*/
	font-weight: 700;
}

#list-view-toolbar {
	/*padding: 20px 0 20px;*/
	padding: 0 0 20px;
	border-bottom: 1px solid var(--lightgrey);
}

#list-view-toolbar.fixed-p {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 100000;
	background: white;
	padding: 15px 15px 13px;
	box-shadow: 0 3px 6px rgba(0, 0, 0, .3);
}

#list-view-toolbar .scaffold {
	display: grid;
	grid-template-columns: 105px 190px 1fr 200px 138px;
	grid-template-areas: "box-filter-btn box-filter-desc box-price-explanation box-room-config-select box-list-sort-btn";
}

#list-view-toolbar .scaffold .box-filter-btn {
	grid-area: box-filter-btn;
}

#list-view-toolbar .scaffold .box-filter-desc {
	grid-area: box-filter-desc;
}

#list-view-toolbar .scaffold .box-price-explanation {
	grid-area: box-price-explanation;
}

#list-view-toolbar .scaffold .box-room-config-select {
	grid-area: box-room-config-select;
}

.box-room-config-select .dropdown-menu {
	font-size: .9em;
}

/*
#list-view-toolbar.fixed-p .scaffold .box-room-config-select .dropdown {
	margin-bottom: 13px;
}
*/

#list-view-toolbar .scaffold .box-list-sort-btn {
	grid-area: box-list-sort-btn;
	text-align: right;
}

#list-view-toolbar .scaffold .bootstrap-select .btn {
	font-size: .8em;
}

#list-view-toolbar .bootstrap-select.form-control,
#list-view-toolbar .bootstrap-select .form-control {
	height: calc(1.5rem + .1rem + 2px) !important;
}

#list-view-toolbar .scaffold .box-room-config-select .dropdown-item:not(.active):focus,
#list-view-toolbar .scaffold .box-room-config-select .dropdown-item:not(.active):hover {
	background-color: var(--lightgrey);
}

.list-filter__feedback {
	/*font-size: .82em;*/
	/*color: #999;*/
	color: var(--lightblue);
	font-weight: 600;
}

.cols.cols-50-50 .column:first-child,
.cols.cols-33-66 .column:first-child,
.cols.cols-33-66 .column:nth-child(2),
.cols.cols-66-33 .column:first-child,
.cols.cols-66-33 .column:nth-child(2),
.cols.cols-33-33-33 .column:not(:last-child) {
	margin-bottom: 20px;
}

/* --------------------------------- */
/* -- Start:      CARDS      ------- */
.listing-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-column-gap: 30px;
	grid-row-gap: 30px;
}

.listing-grid.dining-listing-grid,
.listing-grid.transport-ap-listing-grid,
.listing-grid.transport-ls-listing-grid,
.listing-grid.transport-lux-listing-grid,
.listing-grid.transport-private-listing-grid,
.listing-grid.transport-car-rentals-listing-grid,
.listing-grid.transport-scooter-listing-grid,
.listing-grid.transport-boat-hire-listing-grid,
.listing-grid.transport-group-listing-grid,
.listing-grid.shop-listing-grid,
.listing-grid.accomm-listing-grid {
	margin-top: 30px;
}

.listing-grid.two-col {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-column-gap: 30px;
	grid-row-gap: 30px;
}

.listing-grid .listing-item {
	position: relative;
	transition: transform .2s;
	border: 1px solid #bbb;
	height: 100%;
}

.listing-grid .listing-item:hover {
	box-shadow: 0 1px 10px var(--midgrey);
}

.listing-grid .listing-item.featured {
	border: 3px solid var(--navyblue);
}

.listing-grid .ribbon-featured {
	position: absolute;
	padding: 8px 16px;
	background: rgb(38, 106, 166);
	background: -moz-linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	background: -webkit-linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	background: linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	top: 15px;
	left: -11px;
	z-index: 1;
	color: #fff;
	border-radius: 0;
	-webkit-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.32);
	box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.32);
	text-align: center;
	font-size: .97em;
	transition: all .2s;
}

.listing-grid .ribbon-featured > img {
	display: none;
}

.listing-grid .ribbon-featured.triggers-panel {
	cursor: pointer;
}

.listing-grid .ribbon-featured.triggers-panel > img {
	display: inline;
}

.listing-grid .ribbon-featured:before {
	content: '';
	position: absolute;
	left: 0;
	bottom: -8px;
	width: 0;
	height: 0;
	border: 4px solid #1e4877;
	border-bottom-color: transparent;
	border-left-color: transparent;
	z-index: -1;
	white-space: normal;
}

.listing-grid .listing-item:hover .ribbon-featured {
	transform: scale(1.05) translateX(3px);
	left: -9px;
}

.listing-grid .ribbon-featured .text {
	position: relative;
}

.listing-grid .ribbon-featured.triggers-panel .text {
	top: 2px;
}

.listing-grid .ribbon-featured .fas {
	opacity: .8;
}

.listing-grid .ribbon-featured .banner-icon-arrow-right {
	margin-left: 8px;
	width: 25px;
	height: auto;
}

.listing-grid .listing-item .card-inner {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.listing-grid .listing-item .card-header {
	grid-area: card-header;
	border: none;
	text-transform: uppercase;
	background: none;
}

.listing-grid .listing-item .card-header .date {
	font-size: .9em;
}

.listing-grid .listing-item .card-img-top {
	grid-area: card-img-top;
	opacity: 0;
	transition: opacity 1s ease-in;
}

#site-body .listing-grid .listing-item .img-wrapper {
	/*height: 240px;*/
	height: 200px;
	position: relative;
	font-size: .9em;
}

#site-body .listing-grid .listing-item .img-wrapper .overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--navyblue);
	opacity: 0;
}

#site-body .listing-grid .listing-item .img-wrapper:active .overlay,
#site-body .listing-grid .listing-item .img-wrapper:active:focus .overlay,
#site-body .listing-grid .listing-item .img-wrapper .overlay.active {
	opacity: .4;
}

#site-body .listing-grid .listing-item .img-wrapper .btn {
	display: flex;
	align-items: flex-end;
}

#site-body .listing-grid .listing-item .card-img-top.active {
	opacity: 1;
	object-fit: cover;
	height: 100%;
	border-radius: 0;
}

.listing-grid .listing-item .card-body {
	grid-area: card-body;
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	padding: 12px;
	position: relative;
}

.listing-grid .listing-item .text-wrapper {
	position: relative;
	overflow: hidden;
	padding-bottom: 80px;
	display: flex;
	flex-direction: column;
	flex-grow: 100;
}

.listing-grid .listing-item .text-wrapper .testimonial-overlay {
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: #fdffe0;
	z-index: 100;
	transition: all .3s ease-in;
	background: url(../images/faded-paper-bg.jpg);
	overflow-y: scroll;
	overflow-y: -moz-scrollbars-none;
	scrollbar-width: none;
	-ms-overflow-style: none;
	line-height: 1.3;
}

.listing-grid .listing-item .text-wrapper .testimonial-overlay::-webkit-scrollbar {
	width: 0 !important
}

.listing-grid .listing-item .text-wrapper .testimonial-overlay.show {
	left: 0;
}

.listing-grid .listing-item .text-wrapper .testimonial-overlay .testimonial-header {
	padding: 10px;
}

.listing-grid .listing-item .text-wrapper .testimonial-overlay button.close {
	font-size: 1em;
}

.listing-grid .listing-item .text-wrapper .testimonial-overlay .close:focus {
	outline: none;
}

.listing-grid .listing-item .text-wrapper .testimonial-overlay blockquote {
	margin: 0;
	padding: 15px;
	font-size: .84em;
}

.listing-grid .card-title {
	font-weight: 700;
	color: var(--black);
	font-size: 1.1rem;
	line-height: 1.3;
	text-decoration: none;
	transition: color .2s ease-in;

	/*border-bottom: 2px solid #BDEFFF;*/
	/*box-shadow: inset 0 -3px 0 #BDEFFF;*/
	border-bottom: 2px solid var(--linklightblue);
	box-shadow: inset 0 -1px 0 var(--linklightblue);


}

.listing-grid .card-title:hover,
.listing-grid .card-title:focus,
.listing-grid .card-title:active {
	/*color: #19c1f3;*/

	/*background-color: #BDEFFF;*/
	color: var(--black);
	background-color: var(--linklightblue);
	text-decoration: none;
}

#gtm-bizcatname {
	display: none;
}

#biz-listing .card-body-header {
	display: grid;
	grid-template-columns: 1fr 145px;
}

#biz-listing .card-body-header .price-box {
	text-align: right;
	font-size: .8em;
}

#biz-listing .card-body-header .price-box .prop-price-from {
	color: #19c1f3;
	font-weight: 600;
	font-size: 1.3em;
}

/* Hide the "from AU$--" price info on the "All Accommodation in PD" page */
body[data-page-id="1985"] #biz-listing .card-body-header .price-box .prop-price-from {
	display: none;
}

body[data-page-id="1985"] #sortListButton {
	display: none;
}

#biz-listing .card-body-header .price-box .prop-price-from .currency-prefix {
	font-size: .75em;
}

#biz-listing .card-body-header .price-box .adult-price .currency-prefix {
	font-size: .75em;
}

#biz-listing .card-body-header .reviews-btn {
	margin-top: 4px;
}

#biz-listing .card-body-header .price-box .tour-price-icon.svg {
	width: 24px;
	height: auto;
	margin-right: 4px;
	display: none;
}

#biz-listing .card-body-header .price-box .transport-ap-price-icon.svg {
	width: 30px;
	height: auto;
	margin-right: 4px;
	display: none;
}

#biz-listing .card-body-header .price-box .transport-ls-price-icon.svg {
	width: 48px;
	height: auto;
	margin-right: 4px;
	display: none;
}

#biz-details-page .price-grid {
	display: inline-flex;
	flex-direction: row;
	/* flex-wrap: nowrap; */
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: center;
}

#biz-details-page .price-grid .price-wrap {
	padding: 8px 10px;
}

#biz-details-page .price-grid .tour-price-icon.svg {
	width: 24px;
	height: auto;
	margin-right: 4px;
	display: none;
}

#biz-listing .card-body-header .price-box .tour-price-icon.svg.replaced-svg,
#biz-listing .card-body-header .price-box .transport-ls-price-icon.svg.replaced-svg,
#biz-listing .card-body-header .price-box .transport-ap-price-icon.svg.replaced-svg,
#biz-details-page .price-grid .price-wrap .tour-price-icon.svg.replaced-svg {
	display: inline-block;
}

#biz-listing .card-body-header .price-box .price-wrap svg.replaced-svg > g path,
#biz-listing .card-body-header .price-box .price-wrap svg.replaced-svg > g polygon,
#biz-details-page .price-grid .price-wrap svg.replaced-svg > g path,
#biz-details-page .price-grid .price-wrap svg.replaced-svg > g polygon {
	fill: #aaa;
}

#biz-listing .card-body-header .price-box .price-wrap svg.replaced-svg rect,
#biz-details-page .price-grid .price-wrap svg.replaced-svg rect {
	fill: #fff;
}

#biz-listing .card-body-header .price-box .price-wrap {
	padding-bottom: 5px;
	/*font-size: .85em;*/
	font-size: 1em;
	display: flex;
	align-items: flex-end;
	flex-direction: row;
	justify-content: flex-end;
}

#biz-listing.transport-ls-listing-grid .card-body-header .price-box .price-wrap {
	align-items: center;
}

#biz-listing .card-body-header .price-box .price-wrap .price {
	margin-left: 3px;
	color: #19c1f3;
	font-weight: 600;
	font-size: 1.2em;
}

#site-body[data-site-section="tours"] #biz-listing .card-body-header .price-box .price-wrap .price,
#site-body[data-site-section="transport"] #biz-listing .card-body-header .price-box .price-wrap .price {
	font-size: 1.4em;
}

#biz-details-page .price-grid .price-wrap .price {
	margin-left: 3px;
	color: #19c1f3;
	font-weight: 700;
	font-size: 1em;
}

#biz-listing .card-body-header .price-box .price-wrap:last-child {
	margin-bottom: 10px;
}

#biz-listing .prop-prices {
	display: none;
}

.listing-grid .card-text {
	flex: 1 1 auto;
	font-size: .8em;
}

.listing-grid .card-footer {
	background: none;
	border: none;
	padding: 8px;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
}

.listing-grid .card-footer:last-child {
	border-radius: 0;
}

.listing-grid .card-button-bar {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: flex-start;
}

#biz-details-page .card-button-bar {
	display: inline-flex;
	flex-direction: row;
	/*flex-wrap: nowrap;*/
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: center;
}

.listing-grid .card-button-bar {
	justify-content: space-between;
}

.listing-footnote {
	margin-top: 25px;
	padding-top: 25px;
	border-top: 1px solid var(--lightgrey2);
	font-size: .8em;
}

#biz-details-page .listing-footnote {
	margin-top: 0;
	border: none;
	display: none;
}

.listing-icon-key {
	display: flex;
	margin-bottom: 10px;
}

#biz-details-page .listing-icon-key {
	display: inline-flex;
	flex-direction: row;
	/* flex-wrap: nowrap; */
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin-bottom: 10px;
}

.listing-icon-key .icon-explanation {
	display: flex;
	align-items: flex-end;
	margin-right: 15px;
}

.listing-footnote.transport-ls .listing-icon-key .icon-explanation {
	align-items: center;
}

.listing-icon-key .icon-explanation .tour-price-icon.svg {
	margin-right: 5px;
	width: 24px;
	height: auto;
	display: none;
}

.listing-icon-key .icon-explanation .transport-ap-price-icon.svg {
	margin-right: 5px;
	width: 30px;
	height: auto;
	display: none;
}

.listing-icon-key .icon-explanation .transport-ls-price-icon.svg {
	margin-right: 5px;
	width: 48px;
	height: auto;
	display: none;
}

.listing-icon-key .icon-explanation .tour-price-icon.svg.replaced-svg,
.listing-icon-key .icon-explanation .transport-ls-price-icon.svg.replaced-svg,
.listing-icon-key .icon-explanation .transport-ap-price-icon.svg.replaced-svg {
	display: inline-block;
}

.listing-icon-key .icon-explanation svg.replaced-svg > g path,
.listing-icon-key .icon-explanation svg.replaced-svg > g polygon {
	fill: #aaa;
}

.listing-icon-key .icon-explanation svg.replaced-svg rect {
	fill: #fff;
}

#biz-details-page .card-button-bar .card-button-box,
#biz-listing .price-box .card-button-box,
.listing-grid .card-button-bar .card-button-box {
	position: relative;
	text-align: center;
	font-size: .71em;
	font-weight: 600;
	text-transform: uppercase;
	align-self: flex-start;
}

#biz-listing .price-box .card-button-box {
	display: inline-block;
}

#biz-listing .price-box .card-button-box {
	font-size: .71rem;
}

#biz-details-page .card-button-bar .card-button-box:not(:last-child) {
	margin-right: 15px;
}

.listing-grid .card-button-bar .card-button-box {
	flex: 1 1 auto;
}

#biz-details-page .card-button-bar span.trigger-button,
#biz-details-page .card-button-bar a,
#biz-details-page .card-button-bar a:visited,
#biz-details-page .card-button-bar .btn-list-toolbar,
	/*#biz-listing .price-box .card-button-box a,*/
	/*#biz-listing .price-box .card-button-box a:visited,*/
.listing-grid .price-box span.trigger-button,
.listing-grid .card-button-bar span.trigger-button,
.listing-grid .card-button-bar a,
.listing-grid .card-button-bar a:visited,
.listing-grid .card-button-bar .btn-list-toolbar,
.listing-grid a.open-youtube-modal,
.listing-grid a.special-offer-btn,
.listing-grid a.open-youtube-modal:visited {
	display: block;
	color: #212529;
	padding: 6px;
	text-align: center;
	border: 1px solid #fff;
	cursor: pointer;
	background: none;
	width: 100%;
	font-weight: 600;
	text-transform: uppercase;
}

.listing-grid a.open-youtube-modal,
.listing-grid a.open-youtube-modal:visited,
.listing-grid a.special-offer-btn,
.listing-grid a.special-offer-btn:visited {
	margin-top: 8px;
	display: inline-block;
	color: #212529;
	padding: 6px;
	text-align: center;
	border: 1px solid #fff;
	cursor: pointer;
	background: none;
	width: auto;
	font-size: .8em;
	font-weight: 600;
	text-transform: uppercase;
}

#site-body .listing-grid a.open-youtube-modal img,
#site-body .listing-grid a.special-offer-btn img {
	display: block;
	margin: 0 auto 4px;
	width: 34px;
	height: auto;
}

#biz-details-page .card-button-bar span.trigger-button:hover,
#biz-details-page .card-button-bar span.trigger-button:focus,
#biz-details-page .card-button-bar span.trigger-button:active,
#biz-details-page .card-button-bar a:hover,
#biz-details-page .card-button-bar a:focus,
#biz-details-page .card-button-bar a:active,
#biz-details-page .card-button-bar .btn-list-toolbar:hover,
#biz-details-page .card-button-bar .btn-list-toolbar:active,
#biz-details-page .card-button-bar .btn-list-toolbar:focus,
	/*#biz-listing .price-box .card-button-box a:hover,*/
	/*#biz-listing .price-box .card-button-box a:focus,*/
	/*#biz-listing .price-box .card-button-box a:active,*/
.listing-grid .card-button-bar span.trigger-button:hover,
.listing-grid .card-button-bar span.trigger-button:focus,
.listing-grid .card-button-bar span.trigger-button:active,
.listing-grid .price-box span.trigger-button:hover,
.listing-grid .price-box span.trigger-button:focus,
.listing-grid .price-box span.trigger-button:active,
.listing-grid .card-button-bar a:hover,
.listing-grid .card-button-bar a:focus,
.listing-grid .card-button-bar a:active,
.listing-grid .card-button-bar .btn-list-toolbar:hover,
.listing-grid .card-button-bar .btn-list-toolbar:active,
.listing-grid .card-button-bar .btn-list-toolbar:focus,
.listing-grid a.open-youtube-modal:hover,
.listing-grid a.open-youtube-modal:focus,
.listing-grid a.open-youtube-modal:active,
.listing-grid a.special-offer-btn:hover,
.listing-grid a.special-offer-btn:focus,
.listing-grid a.special-offer-btn:active {
	color: #212529;
	text-decoration: none;
	border: 1px solid #e2e2e2;
	border-radius: 5px;
	outline: none;
}

#biz-details-page .card-button-bar span:focus,
#biz-details-page .card-button-bar span:active,
#biz-details-page .card-button-bar a:focus,
#biz-details-page .card-button-bar a:active,
#biz-details-page .card-button-bar .btn-list-toolbar:focus,
#biz-details-page .card-button-bar .btn-list-toolbar:active,
	/*#biz-listing .price-box .card-button-box a:focus,*/
	/*#biz-listing .price-box .card-button-box a:active,*/
.listing-grid .card-button-bar span:focus,
.listing-grid .card-button-bar span:active,
.listing-grid .card-button-bar a:focus,
.listing-grid .card-button-bar a:active,
.listing-grid .card-button-bar .btn-list-toolbar:focus,
.listing-grid .card-button-bar .btn-list-toolbar:active,
.listing-grid a.open-youtube-modal:focus,
.listing-grid a.open-youtube-modal:active,
.listing-grid a.special-offer-btn:focus,
.listing-grid a.special-offer-btn:active {
	background-color: #f2f2f2;
	transform: scale(.95);
	outline: none;
}

.listing-grid .card-button-bar span[class^="gtm-"]:focus,
.listing-grid .card-button-bar span[class^="gtm-"]:active {
	background: none;
}

#site-body #biz-details-page .card-button-bar img,
#site-body #biz-listing .price-box .card-button-box img,
#site-body .listing-grid .card-button-bar img {
	margin: 0 auto;
	height: 30px;
	width: auto;
	display: block;
}

#biz-details-page .card-button-bar span.trigger-button img,
.listing-grid .price-box span.trigger-button img,
.listing-grid .card-button-bar span.trigger-button img {
	pointer-events: none;
}

#biz-details-page .card-button-bar .special-tooltip,
.listing-grid .price-box .special-tooltip,
.listing-grid .card-button-bar .special-tooltip {
	padding: 0;
	position: absolute;
	top: -45px;
	width: auto;
	white-space: nowrap;
	background: #19c1f3;
	-webkit-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.32);
	box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.32);
	display: none;
	text-transform: none;
	font-size: 1.3em;
	z-index: 1;
}

.listing-grid .price-box .special-tooltip {
	top: 8px;
}

#biz-details-page .thebookingbutton-widget .special-tooltip,
.listing-grid .thebookingbutton-widget .special-tooltip {
	top: -245px;
	background-color: #f2f2f2;
}

#biz-details-page .thebookingbutton-widget .special-tooltip .thebookingbutton-widget-wrapper,
.listing-grid .thebookingbutton-widget .special-tooltip .thebookingbutton-widget-wrapper {
	padding: 25px 0 0 18px;
	position: relative;
}

.thebookingbutton-widget .special-tooltip .thebookingbutton-widget-wrapper .close-btn {
	position: absolute;
	top: 8px;
	right: 10px;
	cursor: pointer;
}

#biz-details-page .card-button-bar .special-tooltip.trading-hours,
.listing-grid .card-button-bar .special-tooltip.trading-hours {
	padding: 7px 15px;
}

#biz-details-page .card-button-bar .special-tooltip.trading-hours .day-grid,
.listing-grid .card-button-bar .special-tooltip.trading-hours .day-grid {
	display: grid;
	grid-template-columns: 35px 1fr;
	color: #fff;
	text-align: left;
}

#biz-details-page .card-button-bar .special-tooltip.trading-hours .day-grid div,
.listing-grid .card-button-bar .special-tooltip.trading-hours .day-grid div {
	padding-top: 2px;
	padding-bottom: 2px;
}

/*
#biz-details-page .card-button-bar .special-tooltip.trading-hours .t-hours,
.listing-grid .card-button-bar .special-tooltip.trading-hours .t-hours {
	font-weight: 300;
}
*/

#biz-details-page .card-button-bar .special-tooltip:not(.is-last-btn-in-row),
.listing-grid .card-button-bar .special-tooltip:not(.is-last-btn-in-row) {
	left: 50%;
	transform: translateX(-50%);
}

#biz-details-page .price-box .special-tooltip.is-last-btn-in-row,
#biz-details-page .card-button-bar .special-tooltip.is-last-btn-in-row,
.listing-grid .price-box .special-tooltip.is-last-btn-in-row,
.listing-grid .card-button-bar .special-tooltip.is-last-btn-in-row {
	right: 0;
}

.listing-grid .card-button-bar .special-deals .special-tooltip {
	right: 0;
	left: inherit;
	transform: translateX(0%);
}

.listing-grid .price-box .special-deals .special-tooltip {
	right: calc(100% + 15px);
	left: inherit;
	transform: translateX(0%);
}

#biz-details-page .price-box .special-tooltip.two-high,
#biz-details-page .card-button-bar .special-tooltip.two-high,
.listing-grid .card-button-bar .special-tooltip.two-high {
	top: -76px;
}

.listing-grid .price-box .special-tooltip.two-high {
	top: -8px;
}

#biz-details-page .card-button-bar .special-tooltip.seven-high,
.listing-grid .card-button-bar .special-tooltip.seven-high {
	top: -216px;
}

#biz-details-page .card-button-bar .special-tooltip:after,
.listing-grid .card-button-bar .special-tooltip:after {
	top: 100%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(25, 193, 243, 0);
	border-top-color: #19c1f3;
	border-width: 10px;
	margin-left: -10px;
}

.listing-grid .price-box .special-tooltip:after {
	top: 100%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(25, 193, 243, 0);
	border-left-color: #19c1f3;
	border-width: 10px;
	margin-left: -10px;
}

#biz-details-page .thebookingbutton-widget .special-tooltip:after,
.listing-grid .thebookingbutton-widget .special-tooltip:after {
	display: none;
	border-top-color: #fff;
}

#biz-details-page .card-button-bar .special-tooltip:not(.is-last-btn-in-row):after,
.listing-grid .card-button-bar .special-tooltip:not(.is-last-btn-in-row):after {
	left: 50%;
}

#biz-details-page .card-button-bar .special-tooltip.is-last-btn-in-row:after,
.listing-grid .card-button-bar .special-tooltip.is-last-btn-in-row:after {
	right: 15%;
}

.listing-grid .card-button-bar .special-deals .special-tooltip:after {
	left: inherit;
	right: 30px;
}

.listing-grid .price-box .special-deals .special-tooltip:after {
	left: calc(100% + 10px);
	top: 50%;
	transform: translateY(-50%);
}

#biz-details-page .card-button-bar .special-tooltip .tooltip-item,
.listing-grid .price-box .special-tooltip .tooltip-item,
.listing-grid .card-button-bar .special-tooltip .tooltip-item {
	display: block;
	margin: 0;
	background-color: #19c1f3;
	text-decoration: none;
	border: none;
	text-align: left;
	color: #fff;
}

#biz-details-page .card-button-bar .special-tooltip a.tooltip-item,
.listing-grid .price-box .special-tooltip a.tooltip-item,
.listing-grid .card-button-bar .special-tooltip a.tooltip-item {
	padding: 5px 15px;
	cursor: pointer;
}

.listing-grid .price-box .special-deals .special-tooltip .tooltip-item,
.listing-grid .card-button-bar .special-deals .special-tooltip .tooltip-item {
	text-align: right;
}

#biz-details-page .card-button-bar .special-tooltip a.tooltip-item:not(:last-child),
.listing-grid .price-box .special-tooltip a.tooltip-item:not(:last-child),
.listing-grid .card-button-bar .special-tooltip a.tooltip-item:not(:last-child) {
	border-bottom: 1px solid #37d4ff;
}

#biz-details-page .card-button-bar .special-tooltip .tooltip-item .fa,
#biz-details-page .card-button-bar .special-tooltip .tooltip-item .fab,
#biz-details-page .card-button-bar .special-tooltip .tooltip-item .far,
#biz-details-page .card-button-bar .special-tooltip .tooltip-item .fas,
.listing-grid .price-box .special-tooltip .tooltip-item .fa,
.listing-grid .price-box .special-tooltip .tooltip-item .fab,
.listing-grid .price-box .special-tooltip .tooltip-item .far,
.listing-grid .price-box .special-tooltip .tooltip-item .fas,
.listing-grid .card-button-bar .special-tooltip .tooltip-item .fa,
.listing-grid .card-button-bar .special-tooltip .tooltip-item .fab,
.listing-grid .card-button-bar .special-tooltip .tooltip-item .far,
.listing-grid .card-button-bar .special-tooltip .tooltip-item .fas {
	margin-right: 8px;
}

#biz-details-page .card-button-bar .special-tooltip a.tooltip-item:hover,
.listing-grid .price-box .special-tooltip a.tooltip-item:hover,
.listing-grid .card-button-bar .special-tooltip a.tooltip-item:hover {
	opacity: .7;
}

/* The "show" class is added to the filtered elements */
/*
#biz-listing .listing-item.show {
	display: block;
}
*/

/* Style the buttons */
#listFilterContainer .btn-biz-cat {
	border: none;
	outline: none;
	padding: 12px 16px;
	color: #666;
	background-color: #f1f1f1;
	cursor: pointer;
}

/* Add a light grey background on mouse-over */
#listFilterContainer.btn-biz-cat:hover {
	color: #666;
	background-color: var(--ligrequest-a-special-powermail-formhtgrey2);
}

/* Add a dark background to the active button */
#listFilterContainer .btn-biz-cat.active {
	background-color: #666;
	color: white;
}

.listing-grid .price-guide {
	margin-bottom: 5px;
}

#biz-listing .icon-grey-dollar {
	margin-left: 2px;
	font-size: 1.4em;
	font-weight: 700;
	color: var(--lightgrey2);
}

#biz-listing .icon-blue-dollar {
	margin-left: 2px;
	font-size: 1.4em;
	font-weight: 700;
	color: #19c1f3;
}

/* -- End:      CARDS      ------- */
/* ------------------------------- */

/* Responsive container for 16:9 video clips (eg Youtube). The video iframe should be a child of a div with a class of
  "video-container-16-9". If creating such a container is not possible because you don't have access to the HTML eg in
  a CMS content element, you can call the ICIT responsifyYoutubeClips() JavaScript function to do it programmatically.
*/
.video-container-16-9 {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 aspect ratio */
	height: 0;
	overflow: hidden;
	max-width: 100%;
}

.video-container-16-9 iframe,
.video-container-16-9 object,
.video-container-16-9 embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#biz-details-page p:last-child {
	margin-bottom: 0;
}

#biz-details-page .biz-details-grid {
	display: grid;
	grid-template-columns: 2fr 1fr;
	grid-template-areas: "biz-image biz-map-1" "biz-name biz-sidebar" "biz-icon-bar biz-sidebar" "biz-main biz-sidebar" "biz-special-deals biz-sidebar";
	grid-column-gap: 30px;
}

#biz-details-page .biz-image {
	grid-area: biz-image;
}

#biz-details-page .biz-map-1 {
	grid-area: biz-map-1;
	display: flex;
}

#biz-details-page .biz-map-2 {
	grid-area: biz-map-2;
	padding-top: 30px;
	display: none;
}

#biz-details-page .biz-name {
	grid-area: biz-name;
	padding: 30px 0 15px;
	text-align: center;
}

#biz-details-page .biz-icon-bar {
	grid-area: biz-icon-bar;
	text-align: center;
}

#biz-details-page .biz-social-icons {
	grid-area: biz-social-icons;
	text-align: center;
}

#biz-details-page .biz-main {
	grid-area: biz-main;
	text-align: center;
}

#biz-details-page .biz-main ul {
	list-style-position: inside;
}

#biz-details-page .biz-sidebar {
	grid-area: biz-sidebar;
	padding: 30px 0 15px;
	text-align: center;
}

#biz-details-page .biz-features-box hr.style1.first {
	display: none;
}

#biz-details-page .biz-sidebar .biz-inclusions-box,
#biz-details-page .biz-sidebar .biz-whattobring-box {
	text-align: left;
}

#biz-details-page .biz-sidebar .biz-inclusions-box__header,
#biz-details-page .biz-sidebar .biz-whattobring-box__header {
	text-align: center;
}

#biz-details-page .biz-special-deals {
	grid-area: biz-special-deals;
	text-align: center;
}

#biz-details-page .biz-blank {
	grid-area: biz-blank;
	display: none;
}

#biz-details-page .hero-img-wrapper {
	height: 400px;
	position: relative;
}

#biz-details-page .hero-img-wrapper .hero-img {
	opacity: 1;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

#biz-details-page #gmap-wrapper,
#biz-details-page #gmap-wrapper2 {
	height: 100%;
	width: 100%;
	display: flex !important;
}

#biz-details-page .biz-details-grid .biz-social-icons .icon-wrap {
	display: inline-block;
}

#biz-details-page .biz-details-grid .biz-social-icons .icon-wrap:not(:first-child) {
	margin-left: 5px;
}

#biz-details-page .biz-details-grid .biz-social-icons .icon-wrap img {
	width: 32px;
	height: auto;
}

.details-pg-video-wrapper {
	margin-top: 30px;
}

.details-pg-video-wrapper .video-container-16-9 {
	padding-top: 15px;
	border-top: 1px solid #b3b3b3;
}

.biz-sidebar .biz-features-box ul,
.biz-sidebar .biz-whattobring-box ul,
.biz-sidebar .biz-inclusions-box ul {
	margin: 0;
	padding: 0 0 0 1em;
	text-align: left;
	list-style-position: outside;
}

.biz-special-deals .biz-special-box {
	margin-bottom: 40px;
}

.room-types h3 {
	margin-bottom: 1rem;
}

.biz-room-type-grid {
	margin-top: 20px;
	max-width: 500px;
}

.biz-room-type-grid.room-types-grid-width__1 {
	max-width: 110px;
	margin: 0 auto;
}

.biz-room-type-grid.room-types-grid-width__2 {
	max-width: 200px;
	margin: 0 auto;
}

.biz-room-type-grid.room-types-grid-width__2 .flex-cell {
	width: 90px;
}

.biz-room-type-grid.room-types-grid-width__3 {
	max-width: 300px;
	margin: 0 auto;
}

.biz-room-type-grid.room-types-grid-width__3 .flex-cell {
	width: 90px;
}

.biz-room-type-grid.room-types-grid-width__4 {
	max-width: 400px;
	margin: 0 auto;
}

.biz-room-type-grid.room-types-grid-width__4 .flex-cell {
	width: 90px;
}

.biz-room-type-grid.room-types-grid-width__5 {
	max-width: 500px;
	margin: 0 auto;
}

.biz-room-type-grid.room-types-grid-width__5 .flex-cell {
	width: 90px;
}

.biz-room-type-grid.room-types-grid-width__6 {
	max-width: 570px;
	margin: 0 auto;
}

.biz-room-type-grid.room-types-grid-width__6 .flex-cell {
	width: 85px;
}

.biz-room-type-grid.room-types-grid-width__7 {
	max-width: 665px;
	margin: 0 auto;
}

.biz-room-type-grid.room-types-grid-width__7 .flex-cell {
	width: 85px;
}

.biz-room-type-grid .icons {
	display: inline-flex;
	flex-direction: row;
	flex-wrap: nowrap;
	text-align: center;
	padding-bottom: 8px;
	border-bottom: 1px solid #B3B3B3;
}

.biz-room-type-grid .icons img {
	width: 28px;
	height: auto;
}

.biz-room-type-grid .flex-cell {
	width: 80px;
}

.biz-room-type-grid .icons .text {
	margin-top: 4px;
	display: block;
	line-height: 1.15;
	font-size: .71em;
	font-weight: 600;
}

.biz-room-type-grid .prices {
	font-size: .882em;
	font-weight: 600;
}

.biz-room-type-grid .prices .low-season-prices,
.biz-room-type-grid .prices .high-season-prices {
	display: inline-flex;
	flex-direction: row;
	flex-wrap: nowrap;
	padding: 3px 0;
	text-align: center;
}

.biz-room-type-grid .prices .currency-prefix {
	font-size: .75em;
}

.biz-room-type-grid .prices .high-season-prices {
	background-color: #19C1F3;
	color: #fff;
	padding: 3px 0;
}

#biz-details-page .room-types .key {
	margin-top: 40px;
}

#biz-details-page .room-types .key .key-grid {
	display: inline-flex;
	margin-bottom: 0;
}

#biz-details-page .room-types .key-grid .colour-cell {
	width: 50px;
	background-color: #19C1F3;
}

#biz-details-page .room-types .key-grid .description {
	padding-left: 15px;
	text-align: left;
}

#siteModal .modal-header {
	background: rgb(38, 106, 166);
	background: -moz-linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	background: -webkit-linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	background: linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	color: #fff;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	border: 0;
	padding: .8rem;
}

.modal-header-grid {
	display: grid;
	grid-template-columns: 24px 1fr;
	grid-column-gap: 10px;
}

#siteModal .modal-header .modal-header-icon {
	width: 100%;
	max-width: 100%;
	height: auto;
}

#siteModal .close {
	color: #fff;
	/*font-size: 1.323em;*/
	font-size: 1.8em;
}

#siteModal .close:focus {
	outline: none;
}

#siteModal .close:hover {
	color: #fff;
}

#siteModal.has-video .modal-body,
#siteModal.has-g-map .modal-body {
	padding: 0;
}

#siteModal.has-video .modal-content {
	background-color: var(--black);
}

#siteModal .modal-title {
	font-weight: 700;
	font-size: 1.015em;
}

#siteModal #gmap-canvas {
	display: none;
}

.breadcrumbs {
	margin-top: 15px;
	font-size: .794em;
	text-transform: uppercase;
}

.breadcrumbs a,
.breadcrumbs a:visited {
	text-decoration: none;
}

.breadcrumbs a:hover,
.breadcrumbs a:focus,
.breadcrumbs a:active {
	color: #000;
}

.breadcrumbs a:not(:last-child):after {
	padding-left: 3px;
	padding-right: 5px;
	content: " / ";
	color: #000;
}

.breadcrumbs a:last-child {
	color: #000;
	cursor: default;
}

.bootstrap-select.form-control {
	border-radius: 0;
}

.bootstrap-select .btn {
	font-weight: 600;
}

.bootstrap-select .dropdown-toggle:focus,
.bootstrap-select > select.mobile-device:focus + .dropdown-toggle {
	outline: none !important;
	box-shadow: none;
}

.bootstrap-select .dropdown-toggle .filter-option {
	padding-right: 0;
}

.bootstrap-select button.btn-light {
	background-color: #f6f6f6;
	border: 1px solid #d3d9df;
	border-radius: 0;
}

.bootstrap-select button.btn-light:hover {
	background-color: var(--lightgrey);
}

.bootstrap-select .dropdown-menu {
	padding: 0;
	border-radius: 0;
	left: inherit !important;
	right: 0;
}

.dropdown-item.active, .dropdown-item:active {
	color: var(--black);
	background-color: var(--midgrey);
}

/* START: Custom checkboxes */
/* Customize the label (the container) */
.custom-checkbox-container {
	display: block;
	position: relative;
	margin-bottom: 12px;
	padding-left: 30px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	text-align: left;
}

.custom-checkbox-container .inner-wrap {
	position: relative;
	/*display: inline-block;*/
	padding-left: 30px;
}

/* Hide the browser's default checkbox */
.custom-checkbox-container input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

/* Create a custom checkbox */
.checkmark {
	position: absolute;
	top: 1px;
	left: 0;
	height: 20px;
	width: 20px;
	background-color: var(--lightgrey2);
}

/* On mouse-over, add a grey background color */
.custom-checkbox-container:hover input ~ .checkmark {
	background-color: var(--midgrey);
}

/* When the checkbox is checked, add a blue background */
.custom-checkbox-container input:checked ~ .checkmark {
	background-color: #19c1f3;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
	content: "";
	position: absolute;
	display: none;
}

/* Show the checkmark when checked */
.custom-checkbox-container input:checked ~ .checkmark:after {
	display: block;
}

/* Style the checkmark/indicator */
.custom-checkbox-container .checkmark:after {
	left: 7px;
	top: 4px;
	width: 5px;
	height: 10px;
	border: solid white;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* END: Custom checkboxes */

/* START: Fotorama slideshow */
.fotorama__wrap {
	background-color: var(--black);
}

/* END: Fotorama slideshow */

.lity-trigger {
	display: inline;
	cursor: pointer;
}

.lity-trigger-btn {
	position: absolute;
	bottom: 10px;
	left: 10px;
	display: flex;
}

.video-trigger-btn {
	position: absolute;
	bottom: 10px;
	right: 10px;
	display: flex;
}

#site-body .lity-trigger-btn img {
	height: 20px;
	width: auto;
	margin-right: 10px;
}

#site-body .video-trigger-btn img {
	height: 20px;
	width: auto;
	margin-right: 10px;
}

.lity-loader {
	display: none !important;
}

.lity-content:after {
	-webkit-box-shadow: none;
	box-shadow: none;
}

.fotorama {
	/*display: none;*/
	visibility: hidden;
}

.fotorama__wrap {
	background: none;
}

#site-body .gm-style img {
	/* Ensure the Google Map Pegman icon is shown */
	max-width: none;
}

.modal-backdrop.show {
	opacity: .8;
}

#frm-request-accomm-special-wrap,
#frm-request-a-tour-special-wrap,
#frm-request-dining-special-wrap {
	display: none;
}

form.request-special label {
	font-weight: bold;
}

/* "Request a Special" Powermail form */
.request-a-special-powermail-form {
	display: none;
}

.frm-request-a-special .form-feedback .success-msg,
.frm-request-a-special .form-feedback .error-msg {
	margin-top: 15px;
	display: none;
}

.frm-request-a-special .preloader {
	/*display: none;*/
	visibility: hidden;
}

.frm-request-a-special .preloader.show {
	visibility: visible;
}

.frm-request-a-special > .row > div {
	margin-bottom: 1rem !important;
}

.frm-request-a-special input[data-type="datepicker"] {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.news-snippet-list-grid .news-snippet a.thumb-wrapper {
	position: relative;
}

.news-snippet-list-grid .news-snippet a:not(.thumb-wrapper),
.news-snippet-list-grid .news-snippet a:not(.thumb-wrapper):visited {
	border-bottom: 2px solid var(--linklightblue);
	box-shadow: inset 0 -3px 0 var(--linklightblue);
	text-decoration: none;
}

.news-snippet-list-grid .news-snippet a:not(.thumb-wrapper):hover,
.news-snippet-list-grid .news-snippet a:not(.thumb-wrapper):focus,
.news-snippet-list-grid .news-snippet a:not(.thumb-wrapper):active {
	background-color: var(--linklightblue);
	text-decoration: none;
	color: var(--black);
}


.news-snippet-list-grid .news-snippet a.thumb-wrapper:before {
	content: "";
	border: 3px solid transparent;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	transition: .3s;
}

.news-snippet-list-grid .news-snippet a.thumb-wrapper:after {
	content: "...";
	color: #000;
	display: block;
	font-size: 40px;
	height: 50px;
	letter-spacing: -9px;
	line-height: 26px;
	margin-left: 5px;
	opacity: 0;
	visibility: hidden;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transition: .2s ease-out;
	-moz-transition: .2s ease-out;
	-ms-transition: .2s ease-out;
	-o-transition: .2s ease-out;
	transition: .2s ease-out;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 1;
}

.news-snippet-list-grid .news-snippet a.thumb-wrapper:hover:before {
	border-color: #000;
}

.news-snippet-list-grid .news-snippet a.thumb-wrapper:hover:after {
	letter-spacing: 9px;
	opacity: 1;
	visibility: visible;
}

.news-snippet-list-grid .news-snippet a.thumb-wrapper.thumb-wrapper:hover img {
	opacity: .1;
}

.news-snippet-list-grid article .thumb-wrapper {
	position: relative;
	display: block;
	padding-bottom: var(--img-ratio-percent-67);
	height: 0;
	overflow: hidden;
	max-width: 100%;
}

.news-snippet-list-grid .news-snippet .thumb-wrapper .absolute-fill {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#site-body .news-snippet-list-grid .news-snippet .thumb-wrapper img {
	object-fit: cover;
	object-position: 50% 50%;
	height: 100%;
	transition: .3s;
}

.news-snippet-list-grid .news-snippet .snippet-header {
	margin-top: 1.5rem;
	color: var(--black);
}

.news-snippet-list-grid .news-snippet .snippet-header a {
	color: var(--black);
}

.news-snippet-list-grid .news-snippet .snippet-header:hover a,
.news-snippet-list-grid .news-snippet .snippet-header:focus a,
.news-snippet-list-grid .news-snippet .snippet-header:active a {
	color: #808080;
	text-decoration: none;
}

#site-body .news-snippet-list-grid .news-snippet {
	text-align: center;
	margin-bottom: 3rem;
}

#site-body .news-snippet-list-grid .news-snippet .card-text {
	color: #838383;
}

/*
#site-body .news-snippet-list-grid .news-snippet .card-text a {
	color: #19c1f3;
}
*/

/*
#site-body .news-snippet-list-grid .news-snippet .card-text a:hover,
#site-body .news-snippet-list-grid .news-snippet .card-text a:focus,
#site-body .news-snippet-list-grid .news-snippet .card-text a:active {
	color: #fff;
}
*/


.news-snippet-list-mini,
.pdmag-snippet-list-mini {
	margin-left: -20px;
	margin-right: -20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	text-align: center;
}

.news-snippet-list-mini .news-snippet,
.pdmag-snippet-list-mini .news-snippet {
	flex: 0 0 calc(33.33% - 40px);
	position: relative;
	margin: 0 20px 40px;
	background-color: #fff;
	border: 1px solid #ddd;
}

.news-snippet-list-mini .news-snippet a.thumb-wrapper,
.pdmag-snippet-list-mini .news-snippet a.thumb-wrapper {
	position: relative;
}

.news-snippet-list-mini .news-snippet a.thumb-wrapper:before,
.pdmag-snippet-list-mini .news-snippet a.thumb-wrapper:before {
	content: "";
	border: 3px solid transparent;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	transition: .3s;
}

.news-snippet-list-mini .news-snippet a.thumb-wrapper:after,
.pdmag-snippet-list-mini .news-snippet a.thumb-wrapper:after {
	content: "...";
	color: #000;
	display: block;
	font-size: 40px;
	height: 50px;
	letter-spacing: -9px;
	line-height: 26px;
	margin-left: 5px;
	opacity: 0;
	visibility: hidden;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transition: .2s ease-out;
	-moz-transition: .2s ease-out;
	-ms-transition: .2s ease-out;
	-o-transition: .2s ease-out;
	transition: .2s ease-out;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 1;
}

.news-snippet-list-mini .news-snippet a.thumb-wrapper:hover:before,
.pdmag-snippet-list-mini .news-snippet a.thumb-wrapper:hover:before {
	border-color: #000;
}

.news-snippet-list-mini .news-snippet a.thumb-wrapper:hover:after,
.pdmag-snippet-list-mini .news-snippet a.thumb-wrapper:hover:after {
	letter-spacing: 9px;
	opacity: 1;
	visibility: visible;
}

.news-snippet-list-mini .news-snippet a.thumb-wrapper.thumb-wrapper:hover img,
.pdmag-snippet-list-mini .news-snippet a.thumb-wrapper.thumb-wrapper:hover img {
	opacity: .1;
}

.news-snippet-list-mini .news-snippet .thumb-wrapper {
	position: relative;
	display: block;
	padding-bottom: var(--img-ratio-percent-50);
	height: 0;
	overflow: hidden;
	max-width: 100%;
}

.pdmag-snippet-list-mini .news-snippet .thumb-wrapper {
	position: relative;
	display: block;
}
.news-snippet-list-mini .news-snippet .thumb-wrapper .absolute-fill {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#site-body .news-snippet-list-mini .news-snippet .thumb-wrapper img {
	object-fit: cover;
	object-position: 50% 50%;
	height: 100%;
	transition: .3s;
	border-radius: 0;
}

.news-snippet-list-mini .news-snippet .snippet-header,
.pdmag-snippet-list-mini .news-snippet .snippet-header {
	padding: 25px 15px;
	font-size: 1.2em;
	margin-bottom: 0;
}

.news-snippet-list-mini .news-snippet .snippet-header a,
.pdmag-snippet-list-mini .news-snippet .snippet-header a {
	color: var(--black);
}

.news-snippet-list-mini .news-snippet .snippet-header:hover a,
.news-snippet-list-mini .news-snippet .snippet-header:focus a,
.news-snippet-list-mini .news-snippet .snippet-header:active a,
.pdmag-snippet-list-mini .news-snippet .snippet-header:hover a,
.pdmag-snippet-list-mini .news-snippet .snippet-header:focus a,
.pdmag-snippet-list-mini .news-snippet .snippet-header:active a {
	color: #808080;
	text-decoration: none;
}

.article-content {
	padding-left: 15px;
	padding-right: 15px;
}

.article-content .article-img-wrapper--OLD {
	position: relative;
	display: block;
	padding-bottom: var(--img-ratio-percent-50);
	height: 0;
	overflow: hidden;
	max-width: 100%;
	margin-bottom: 1.5rem;
}

.article-content .article-img-wrapper {
	position: relative;
	height: 550px;
	margin-bottom: 2rem;
	margin-left: -15px;
	margin-right: -15px;
}

.article-content .article-img-wrapper img {

}

.article-content .article-img-wrapper .absolute-fill {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*
#site-body .article-content .article-img-wrapper img {
	object-fit: cover;
	object-position: 50% 50%;
	width: 100%;
	height: 100%;
	transition: .3s;
}
*/

.article-content .article-copy-container .article-meta {
	margin-bottom: 3em;
}

.article-content .article-copy-container .article-title {
	text-align: center;
	font-weight: 700;
	font-size: 2.3em;
}

.article-content .article-copy-container .article-author {
	margin-top: 1.1em;
	color: #a2a2a2;
	text-transform: uppercase;
	text-align: center;
}

.article-content .article-copy-container .article-body {
	width: calc(100% - 200px);
	margin: auto;
}

.article-content .article-copy-container .article-body .blockqoute-wrapper {
	margin: 30px 0;
	padding: 5px 0;
	border-top: 1px solid #EEECE4;
	border-bottom: 1px solid #EEECE4;
}



.article-content .article-copy-container .article-body blockquote {
	border-radius: 3px;
	position: relative;
	text-align: center;
	padding: 1rem 1.2rem;
	width: 70%;
	color: var(--colour-navyblue);
	margin: 40px auto 40px;
}


.article-content .article-copy-container .article-body blockquote p:last-child {
	margin-bottom: 0;
}

/* -- create the quotation marks -- */
.article-content .article-copy-container .article-body blockquote:before,
.article-content .article-copy-container .article-body blockquote:after {
	position: absolute;
}

.article-content .article-copy-container .article-body blockquote:before {
	content: url(../images/icons/icon-quote-mark.svg);
	left: 50%;
	transform: translateX(-50%);
	top: -25px;
}

.article-content .article-copy-container .article-body blockquote:after {
	content: url(../images/icons/icon-quote-mark-inverted.svg);
	left: 50%;
	transform: translateX(-50%);
	bottom: -30px;
}




.related-articles-list {
	margin-top: 3rem;
}

.related-articles-list h2 {
	margin-bottom: 1em;
}

.related-articles-list .news-snippet {
	font-size: .882em;
}

.related-articles-list .news-snippet .snippet-header {
	margin-top: 1.5rem;
	font-size: 1.3em;
}

.back-button-wrapper {
	display: inline-block;
	margin-bottom: 15px;
}

.back-button-wrapper .back-button {
	display: none;
}

.kesearchbox-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-areas: "searchbox-wrap searchbox-wrap" "resetbutt-wrap submitbutt-wrap";
	grid-gap: 10px 10px;
	width: 100%;
	max-width: 400px;
}

.kesearchbox-grid .searchbox-wrap {
	grid-area: searchbox-wrap;
}

.kesearchbox-grid .resetbutt-wrap {
	grid-area: resetbutt-wrap;
}

.kesearchbox-grid .submitbutt-wrap {
	grid-area: submitbutt-wrap;
}

.kesearchbox-grid div.kesearchbox {
	margin: 0;
	height: auto;
}

.kesearchbox-grid #ke_search_sword {
	position: relative;
	width: 100%;
}

.kesearchbox-grid span.resetbutt {
	float: none;
}

.kesearchbox-grid span.resetbutt a,
.kesearchbox-grid span.submitbutt input {
	width: 100%;
	min-width: auto;
	max-width: 100%;
}

/* START: Tourism Awards form */
.tourism-awards-form > h3 {
	display: none;
}

.frame-tourism-awards-form .tx-powermail {
	margin-top: 40px;
	clear: both;
	/*border: 1px solid #e2e2e2;*/
	background-color: #f7f7f7;
}

.tourism-awards-form {
	font-size: .9em;
}

.tourism-awards-form .powermail_legend {
	display: none;
	font-weight: 600;
	font-size: 1.45em;
	text-transform: uppercase;
}

.tourism-awards-form .row > .powermail_fieldwrap_type_text {
	margin-bottom: 0;
	padding-top: 5px;
	padding-bottom: 5px;
}

.tourism-awards-form .row > .powermail_fieldwrap_type_text:first-child {
	font-weight: 600;
	font-size: 1.45em;
	text-transform: uppercase;
	/*color: var(--navyblue);*/
	color: #fff;
}

.tourism-awards-form .row > .powermail_fieldwrap_type_text:nth-child(2) {
	font-style: italic;
	color: rgba(255, 255, 255, .8);
}

div.powermail_create {
	font-weight: 600;
	font-size: 1em;
	padding: 1em;
	clear: both;
	/*background-color: var(--navyblue);*/
	background: rgb(38, 106, 166);
	color: #fff;
}

.tourism-awards-form .form-control {
	border-radius: 0;
}

.tourism-awards-form fieldset.powermail_fieldset:not(:first-of-type) {
	margin-top: 30px;
	font-weight: 600;
}

.tourism-awards-form fieldset.powermail_fieldset label {
	font-weight: 600;
}

.tourism-awards-form fieldset.powermail_fieldset:not(:last-of-type) legend.powermail_legend + .row {
	/*background-color: #f2f2f2;*/
	background-color: var(--lightblue);
	margin-bottom: 20px;
	border-top: 20px solid white;
}

.tourism-awards-form fieldset.powermail_fieldset:nth-last-child(4) legend.powermail_legend + .row {
	height: 4px;
	background-color: #f2f2f2;
}

/* END: Tourism Awards form */

/* ------------------------ */
/* 5__Footer Content        */
/* ------------------------ */
body > footer {
	position: relative;
	margin-top: 50px;
	padding: 50px 0 25px;
	font-size: .882em;
	border-top: 1px solid var(--lightgrey);
}

body > footer.style-2 {
	background: rgb(255,255,255);
	background: -moz-linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(208,244,255,1) 100%);
	background: -webkit-linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(208,244,255,1) 100%);
	background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(208,244,255,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#d0f4ff",GradientType=1);
}

body > footer:not(.style-2) {
	color: #fff;
	background: rgb(38, 106, 166);
	background: -moz-linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	background: -webkit-linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	background: linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	border-top: none;
}

body > footer h1:first-child,
body > footer h2:first-child,
body > footer h3:first-child,
body > footer h4:first-child,
body > footer h5:first-child,
body > footer h6:first-child,
body > footer p:first-child {
	margin-top: 0;
}

body > footer h1,
body > footer h2 {
	font-size: 1.45em;
	text-transform: inherit;
	font-weight: 600;
	color: #fff;
}

body > footer.style-2 h1,
body > footer.style-2 h2 {
	color: var(--black);
}

body > footer h3 {
	font-size: 1.1em;
	font-weight: 500;
	color: #fff;
}

body > footer a,
body > footer a:visited,
body > footer a:hover,
body > footer a:active,
body > footer a:focus {
	text-decoration: none;
	color: #8EA4CE;
	transition: 0s all ease-out;
}

body > footer.style-2 a,
body > footer.style-2 a:visited,
body > footer.style-2 a:hover,
body > footer.style-2 a:active,
body > footer.style-2 a:focus {
	color: #19C1F3;
}

body > footer a:hover,
body > footer a:active,
body > footer a:focus {
	text-decoration: underline;
}

body > footer .footer-logo {
	margin-bottom: 15px;
	max-width: 100%;
	width: 240px;
	height: auto;
}

body > footer .social-links a {
	position: relative;
	display: block;
	float: left;
	text-align: center;
	line-height: 41px;
	transition: all 500ms ease;
	-webkit-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
	color: #fff;
	text-decoration: none;
}

body > footer .social-links a:hover,
body > footer .social-links a:focus,
body > footer .social-links a:active {
	color: #fff;
	text-decoration: none;
}

body > footer.style-2 .social-links a,
body > footer.style-2 .social-links a:visited,
body > footer.style-2 .social-links a:hover,
body > footer.style-2 .social-links a:focus,
body > footer.style-2 .social-links a:active {
	color: #19C1F3;
}

body > footer .social-links a img {
	width: 24px;
	height: auto;
	margin-right: 6px;
}

body > footer .social-links a:not(:first-child) {
	margin-left: 15px;
}

body > footer .footer-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-template-areas: "footer-r1-griditem1 footer-r1-griditem2 footer-r1-griditem3";
	grid-gap: 15px;
}

body > footer .footer-grid .footer-r1-griditem1 {
	grid-area: footer-r1-griditem1;
	padding: 0;
}

body > footer .footer-grid .footer-r1-griditem2 {
	grid-area: footer-r1-griditem2;
	padding: 0;
}

body > footer .footer-grid .footer-r1-griditem3 {
	grid-area: footer-r1-griditem3;
	padding: 0;
}

footer .footer-contact-us-grid {
	display: grid;
	grid-template-columns: 22px 1fr;
	grid-gap: 15px 2px;
}

footer .footer-contact-us-grid .phone-text-box {
	font-weight: 600;
	font-size: 1.1em;
}

footer .footer-contact-us-grid .email-text-box {
	font-weight: 600;
	font-size: 1em;
}

footer .footer-contact-us-grid .facebook-text-box {
	font-weight: 600;
	font-size: 1em;
}

footer .footer-contact-us-grid .instagram-text-box {
	font-weight: 600;
	font-size: 1em;
}

footer .footer-contact-us-grid .fas,
footer .footer-contact-us-grid .fab {
	font-size: 1.2em;
}

footer .footer-contact-us-grid .ico-email-box img,
footer .footer-contact-us-grid .ico-phone-box img,
footer .footer-contact-us-grid .ico-email-box svg,
footer .footer-contact-us-grid .ico-phone-box svg {
	max-width: 100%;
	height: auto;
}

body > footer .footer-nav {
	font-size: .85em;
	text-align: left;
	font-weight: 600;
}

body > footer .footer-nav a,
body > footer .footer-nav a:visited {
	color: #fff;
	text-decoration: none;
}

body > footer .footer-nav a:hover,
body > footer .footer-nav a:focus,
body > footer .footer-nav a:active {
	color: #8EA4CE;
	text-decoration: none;
}

body > footer .footer-nav a:not(:first-of-type) {
	padding-left: 9px;
}

body > footer .footer-nav a:not(:last-of-type) {
	padding-right: 12px;
	border-right: 2px solid white;
}

/* START: Footer mobile bottom button bar menu */
footer .footer__mobile {
	display: none;
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	padding: 0;
	/*background-color: var(--black);*/
	/*border-top: 1px solid #666;*/
	color: white;
	text-align: center;
	z-index: 100;
}

footer .m-navbar {
	overflow: visible;
	/*background-color: var(--black);*/
	background: rgb(38, 106, 166);
	background: -moz-linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	background: -webkit-linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	background: linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	border-top: none;

	font-weight: 500;
	flex-direction: row;
	flex-wrap: nowrap;
	display: flex;
	justify-content: space-between;
}

footer .m-navbar a,
footer .m-navbar a:visited {
	color: white !important;
	text-align: center;
	text-decoration: none;
}

footer .m-navbar a.active {
	background-color: rgba(255, 255, 255, .2);
}

footer .m-navbar > a,
footer .m-navbar > .subnav {
	flex: 0 0 15%;
	font-size: .85em;
	padding: 8px 5px 17px;
	text-align: center;
	line-height: 1.2;
}

footer .m-navbar > a:hover,
footer .m-navbar > a:focus,
footer .m-navbar > a:active,
footer .m-navbar > .subnav:hover,
footer .m-navbar > .subnav:focus,
footer .m-navbar > .subnav:active {
	background-color: rgba(255, 255, 255, .2);
	text-decoration: none;
}

footer .m-navbar > a:first-child {
	padding-left: 8px;
}

footer .m-navbar > .subnav {
	padding-right: 8px;
}

footer .m-navbar > a > img,
footer .m-navbar > .subnav > img {
	display: block;
	margin: 0 auto 4px;
	width: 26px;
	max-width: 100%;
	height: auto;
}

footer .subnav {
	overflow: visible;
}

footer .subnav .subnavbtn {
	font-size: 16px;
	border: none;
	outline: none;
	color: white;
	padding: 0 5px;
	background-color: inherit;
	font-family: inherit;
	margin: 0;
}

footer .subnav-content {
	display: none;
	position: absolute;
	right: 0;
	bottom: 100%;
	padding: 0;
	/*background-color: var(--navyblue);*/
	background: rgb(38, 106, 166);
	background: -moz-linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	background: -webkit-linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	background: linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	border-top: none;

	width: auto;
	font-size: 1.246em;
	z-index: 1;
}

footer .subnav-content a {
	display: block;
	padding: 10px 14px 10px 30px;
	color: white;
	text-decoration: none;
	text-align: right;
}

footer .subnav-content a:not(:first-child) {
	border-top: 1px solid rgba(255, 255, 255, .1);
}

footer .subnav-content > a {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: flex-end;
	align-items: flex-end;
}

footer .subnav-content a .nav-text {
	margin-right: 10px;
}

footer .subnav-content a:hover,
footer .subnav-content a:focus,
footer .subnav-content a:active {
	background-color: #2f84ce;
	color: white;
	text-decoration: none;
}

footer .subnav-content a > img {
	width: 24px;
	height: auto;
}

@media only screen and (max-width: 375px) {
	footer .m-navbar > a,
	footer .m-navbar > a:visited {
		font-size: .9em;
	}
}

@media only screen and (max-width: 350px) {
	footer .m-navbar > a > img,
	footer .m-navbar > .subnav > img {
		width: 24px;
	}
}

/*
@media only screen and (max-width: 340px) {
	footer .m-navbar a,
	footer .m-navbar a:visited {
		font-size: .75em;
	}
}
*/

/* END: Footer mobile bottom button bar menu */

/* ------------------------ */
/* 6__Typo3 Overrides       */
/* ------------------------ */
span.resetbutt a,
span.submitbutt input {
	background: none;
	border: none;
	border-radius: 0;
}

.tx-kesearch-pi1 #kesearch_results .result-list-item .hit {
	color: var(--lightblue) !important;
}

/* ------------------------ */
/* 7__Bootstrap Overrides   */
/* ------------------------ */
.btn {
	font-size: .8em;
}

.btn.btn-sm {
	font-size: .8em;
}

.btn.btn-teaser-overlay {
	font-size: 1em;
	align-items: center;
}

.btn.btn-light {
	font-weight: normal;
}

.btn:not(:disabled):not(.disabled).active:focus,
.btn:not(:disabled):not(.disabled):active:focus,
.show > .btn.dropdown-toggle:focus {
	box-shadow: none;
}

.btn.focus,
.btn:focus {
	box-shadow: none;
}

.btn-light:not(:disabled):not(.disabled).active,
.btn-light:not(:disabled):not(.disabled):active,
.show > .btn-light.dropdown-toggle {
	background-color: var(--lightgrey);
}

span.resetbutt a.btn-primary,
span.submitbutt input.btn-primary,
.btn-primary {
	padding: .285rem .7rem;
	color: var(--black) !important;
	background-color: #fff;
	border: 1px solid var(--lightgrey2);
	border-radius: 0;
	letter-spacing: 1px;
	transition: background-color 0.15s ease-in-out 0s;
	font-weight: 600;
	cursor: pointer;
}

.btn-primary.btn-blue {
	background-color: #19c1f3;
	color: #fff !important;
}

.btn-primary.btn-blue:hover {
	background-color: #16a8d4;
	color: #fff !important;
}

.btn-primary.btn-blue:not(:disabled):not(.disabled).active,
.btn-primary.btn-blue:not(:disabled):not(.disabled):active,
.btn-primary.btn-blue:focus,
.btn-primary.btn-blue:active {
	background-color: var(--navyblue);
}

span.resetbutt a.btn-primary:hover,
span.submitbutt input.btn-primary:hover,
.btn-primary:hover {
	color: var(--black);
	background-color: var(--lightgrey);
	border-color: var(--lightgrey);
}

.btn-primary:focus,
.btn-primary.focus {
	color: var(--black);
	background-color: var(--lightgrey2);
	outline: none;
}

.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show > .btn-primary.dropdown-toggle {
	color: var(--black);
	background-color: var(--midgrey);
	border-color: var(--midgrey);
}

.btn-secondary {
	padding: .285rem .7rem;
	color: #212529 !important;
	background-color: #e2e2e2;
	border: none;
	border-radius: 0;
	letter-spacing: 1px;
	transition: background-color 0.15s ease-in-out 0s;
	font-weight: 600;
	cursor: pointer;
}

.btn-secondary:hover {
	color: #e2e2e2;
	background-color: var(--midgrey);
}

.btn-secondary:focus,
.btn-secondary.focus {
	color: #e2e2e2;
	background-color: #aaa;
	outline: none;
}

.btn-secondary:not(:disabled):not(.disabled).active,
.btn-secondary:not(:disabled):not(.disabled):active,
.show > .btn-secondary.dropdown-toggle {
	color: #e2e2e2;
	background-color: #aaa;
}

.btn-reverse {
	padding: .285rem .4rem;
	color: #fff !important;
	background: rgba(0, 0, 0, .4);
	border: 1px solid white;
	border-radius: 4px;
	letter-spacing: 1px;
	transition: background-color 0.15s ease-in-out 0s;
	font-weight: 600;
	cursor: pointer;
}

.btn-reverse:hover {
	background: rgba(0, 0, 0, .6);
}

.btn-reverse:focus,
.btn-reverse.focus {
	background: rgba(0, 0, 0, .75);
}

.btn-reverse:not(:disabled):not(.disabled).active,
.btn-reverse:not(:disabled):not(.disabled):active,
.show > .btn-reverse.dropdown-toggle {
	background: rgba(0, 0, 0, .7);
}

/* ------------------------ */
/* 8__Media Queries         */
/* ------------------------ */
@media only screen and (max-width: 2000px) {
	#top-hero-wrap .cover {
		height: 500px;
	}
}

@media only screen and (max-width: 1395px) {
	.site-header__grid-row-2 {
		margin-top: 20px;
	}

	.site-header__grid .site-header__logo,
	.site-header__grid-row-2 .site-header__logo {
		flex: 0 0 240px;
		width: 240px;
	}

	.drawer {
		padding-top: 180px;
	}
}

@media only screen and (max-width: 1250px) {
	.site-header__grid,
	.site-header__grid-row-2 {
		padding: 0 20px 0 20px;
	}

	.site-header__grid .site-header__logo,
	.site-header__grid-row-2 .site-header__logo {
		flex: 0 0 220px;
		width: 220px;
	}
}

/* Large Devices, Wide Screens (Bootstrap col-lg-*) */
@media only screen and (max-width: 1200px) {
	.listing-grid {
		grid-template-columns: 1fr 1fr;
	}

	#site-body .listing-grid .listing-item .img-wrapper {
		height: 371px;
	}

	.site-header__grid .site-header__logo,
	.site-header__grid-row-2 .site-header__logo {
		flex: 0 0 240px;
		width: 240px;
	}

	.site-header__grid .site-header__drawer-button-bar {
		flex: 0 0 105px;
	}

	.site-header__grid-row-2 {
		display: none;
	}

	.site-header.home-page .site-header__grid-row-2,
	.site-header.explore-page .site-header__grid-row-2 {
		display: block;
		margin-top: 20px;
	}

	.drawer-button-bar__option.icon-btn {
		width: 40px;
		height: 40px;
	}

	#home-hero-container .b-grid-nav,
	.landing-page .b-grid-nav {
		padding: 45px 15px 88px;
	}

	.hero-img-scroll-down-btn {
		bottom: 85px;
	}

	body {
		padding-bottom: 60px;
	}

	footer .footer__mobile {
		display: block;
	}
}

@media (max-width: 1199px) {
	.site-header__grid .site-header__drawer-button-bar {
		flex: 1 1 auto;
		text-align: right;
		padding-right: 80px;
	}

	.site-header__drawer-button-bar .subscription-btn-wrap {
		display: inline-block;
	}

	.site-header__drawer-button-bar .replaced-svg path,
	.site-header__drawer-button-bar .replaced-svg polygon {
		fill: #212529;
	}

	#page-header.details-view,
	#page-header.news-article-page {
		height: auto;
	}

	#top-hero-wrap .overlay {
		display: none;
	}

	#page-header {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		/*background-color: #fff;*/
	}

	#page-header .site-header__grid {
		padding: 15px 15px;
		background-color: #fff;
	}

	#page-header .site-header__grid-row-2 {
		padding: 15px 15px;
	}

	.site-header__grid .site-header__logo .header-logo-1 {
		display: none;
	}

	.site-header__grid .site-header__logo .header-logo-2 {
		display: block;
	}

	#site-body.details-view #top-hero-wrap {
		display: none;
	}

	#site-body.details-view,
	#site-body.news-article-page {
		padding-top: 120px;
	}
}

@media only screen and (max-width: 1100px) {
	#site-body .listing-grid .listing-item .img-wrapper {
		height: 340px;
	}
}

@media only screen and (max-width: 1050px) {
	#site-body .listing-grid .listing-item .img-wrapper {
		height: 322px;
	}

	#biz-details-page .listing-footnote {
		display: block;
	}
}

@media only screen and (max-width: 1000px) {
	#site-body .listing-grid .listing-item .img-wrapper {
		height: 307px;
	}

	#home-hero-container .b-grid-nav,
	.landing-page .b-grid-nav {
		left: inherit;
		transform: inherit;
		padding-top: 45px;
	}

	#home-hero-container .b-grid-nav.is-hidden,
	.landing-page .b-grid-nav.is-hidden {
		right: -100vw;
		left: inherit;
		transform: inherit;
	}

	#home-hero-container .b-grid-nav.is-hidden.initial,
	.landing-page .b-grid-nav.is-hidden.initial {
		right: calc(-100vw - 30px);
	}

	#home-hero-container .b-grid-nav button.b-grid-nav__close,
	.landing-page .b-grid-nav button.b-grid-nav__close {
		display: block;
		padding: .285rem .4rem .3rem;
		color: #fff !important;
		background: rgba(0, 0, 0, .4);
		border: 1px solid white;
		border-radius: 4px;
	}

	#home-hero-container .b-grid-nav .handle,
	.landing-page .b-grid-nav .handle {
		display: block;
	}
}

/* Medium Devices, Desktops (Bootstrap col-md-*) */
@media only screen and (max-width: 991px) {
	#top-hero-wrap .cover {
		height: 400px;
	}
}

@media only screen and (max-width: 950px) {
	/*
	.site-header__grid .site-header__logo {
		flex: 0 0 240px;
		width: 240px;
	}
	*/

	#site-body .listing-grid .listing-item .img-wrapper {
		height: 290px;
	}
}

@media only screen and (max-width: 900px) {
	#site-body .listing-grid .listing-item .img-wrapper {
		height: 273px;
	}

	.biz-sidebar .biz-features-box ul,
	.biz-sidebar .biz-whattobring-box ul,
	.biz-sidebar .biz-inclusions-box ul {
		text-align: center;
	}

	.biz-sidebar .biz-features-box ul,
	.biz-sidebar .biz-whattobring-box ul,
	.biz-sidebar .biz-inclusions-box ul {
		list-style-type: none;
	}

	#biz-details-page .biz-details-grid {
		grid-template-columns: 1fr;
		grid-template-areas: "biz-image" "biz-name" "biz-icon-bar" "biz-map-2" "biz-main" "biz-special-deals" "biz-sidebar";
	}

	#biz-details-page .biz-map-2 {
		display: flex;
	}

	#biz-details-page .biz-features-box hr.style1.first {
		display: block;
	}

	#biz-details-page #gmap-wrapper2 {
		display: block;
		height: 300px;
	}

	#biz-details-page .biz-special-deals hr.style1.first {

	}

	#biz-details-page .biz-map-1 {
		display: none;
	}

	#biz-details-page .biz-sidebar {
		padding: 0;
	}

	#biz-details-page.dine-n-drink-details-pg .biz-sidebar {
		margin-top: 40px;
	}

	.news-snippet-list-mini {
		margin-left: -10px;
		margin-right: -10px;
	}

	.news-snippet-list-mini .news-snippet {
		flex: 0 0 calc(33.33% - 20px);
		margin: 0 10px 40px;
	}

	.article-content .article-img-wrapper {
		height: 450px;
	}
}

@media only screen and (max-width: 860px) {
	body > footer .footer-grid {
		grid-template-columns: 1fr 1fr;
		grid-template-areas: "footer-r1-griditem1 footer-r1-griditem1" "footer-r1-griditem2 footer-r1-griditem3";
	}
}

@media only screen and (max-width: 850px) {
	#top-hero-wrap .header-hero-img img {
		height: 400px;
	}

	#top-hero-wrap .header-hero-img {
		height: 400px;
	}

	#home-hero-container .b-grid-nav .button-grid,
	.landing-page .b-grid-nav .button-grid {
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 20px;
	}

	#site-body .listing-grid .listing-item .img-wrapper {
		height: 257px;
	}

	#list-view-toolbar .scaffold {
		display: grid;
		grid-template-columns: 1fr 200px 138px;
		grid-template-areas: "box-filter-btn box-room-config-select box-list-sort-btn" "box-filter-desc box-price-explanation box-price-explanation";
	}

	#list-view-toolbar .scaffold .box-filter-desc {
		padding-top: 5px;
	}

	#list-view-toolbar .scaffold .box-price-explanation {
		padding-top: 5px;
		text-align: right;
	}
}

@media only screen and (max-width: 800px) {
	.listing-grid {
		grid-column-gap: 15px;
	}
}

@media only screen and (max-width: 767px) {
	#biz-details-page #gmap-wrapper2 {
		height: 280px;
	}

	#site-body.details-view, #site-body.news-article-page {
		padding-top: 100px;
	}

	.listing-grid {
		display: grid;
		grid-template-columns: 1fr;
	}

	#site-body .listing-grid .listing-item .img-wrapper {
		height: 470px;
	}

	.news-snippet-list-mini .news-snippet .snippet-header {
		padding: 15px 15px;
		font-size: 1em;
	}

	.article-content .article-img-wrapper {
		height: 380px;
	}

	footer {
		font-size: .794em;
	}
}

@media only screen and (max-width: 700px) {
	#site-body .listing-grid .listing-item .img-wrapper {
		height: 433px;
	}
}

@media only screen and (max-width: 650px) {
	h1 {
		font-size: 1.725em;
	}

	h2 {
		font-size: 1.5em;
	}

	h3 {
		font-size: 1.3125em;
	}

	#site-body .listing-grid .listing-item .img-wrapper {
		height: 412px;
	}

	.article-content .article-copy-container .article-body {
		width: calc(100% - 100px);
		margin: auto;
	}
}

@media only screen and (max-width: 600px) {
	#site-body .listing-grid .listing-item .img-wrapper {
		height: 379px;
	}

	#biz-details-page .biz-sidebar {
		padding: 0 0 15px;
	}

	.news-snippet-list-mini {
		margin-left: -8px;
		margin-right: -8px;
	}

	.news-snippet-list-mini .news-snippet {
		flex: 0 0 calc(33.33% - 16px);
		margin: 0 8px 40px;
	}

	.news-snippet-list-mini .news-snippet .snippet-header {
		padding: 15px 10px;
		font-size: .85em;
	}
}

@media only screen and (max-width: 575px) {
	.article-content .article-copy-container .article-body {
		width: calc(100% - 60px);
		margin: auto;
	}

	body > footer {
		padding: 30px 0 30px;
	}

	body > footer .footer-grid {
		grid-template-columns: 1fr;
		grid-template-areas: "footer-r1-griditem1" "footer-r1-griditem2" "footer-r1-griditem3";
	}

	body > footer .footer-nav {
		display: none;
	}

	.article-content .article-img-wrapper {
		height: 300px;
	}
}

@media only screen and (max-width: 550px) {
	.site-header__grid .site-header__drawer-button-bar {
		padding-right: 60px;
	}

	#top-hero-wrap .header-hero-img img {
		height: 340px;
	}

	#top-hero-wrap .header-hero-img {
		height: 340px;
	}

	#site-body .listing-grid .listing-item .img-wrapper {
		height: 345px;
	}

	.news-snippet-list-mini {
		margin-left: -5px;
		margin-right: -5px;
	}

	.news-snippet-list-mini .news-snippet {
		flex: 0 0 calc(33.33% - 10px);
		margin: 0 5px 40px;
	}

	.news-snippet-list-mini .news-snippet .snippet-header {
		padding: 10px 6px;
		font-size: .85em;
	}
}

@media only screen and (max-width: 530px) {
	#home-hero-container .cover.main-hero-image-1 {
		display: none;
	}

	#home-hero-container .cover.main-hero-image-2 {
		display: block;
	}

	.hero-img-scroll-down-btn {
		bottom: 85px;
	}

	#biz-details-page .card-button-bar {
		padding-bottom: 12px;
	}

	.article-content .article-img-wrapper {
		height: 280px;
	}

	#list-view-toolbar .scaffold {
		display: grid;
		grid-template-columns: 1fr 200px;
		grid-template-areas: "box-filter-btn box-list-sort-btn" "box-filter-desc box-room-config-select" "box-price-explanation box-price-explanation";
	}

	#list-view-toolbar .scaffold .box-filter-btn {
		padding-top: 0;
	}

	#list-view-toolbar .scaffold .box-filter-desc {
		padding: 5px 0 5px;
	}

	#list-view-toolbar .scaffold .box-price-explanation {
		padding-top: 5px;
		text-align: left;
	}

	#list-view-toolbar .scaffold .box-room-config-select {
		padding: 5px 0 5px;
	}

	#list-view-toolbar.fixed-p .scaffold .box-filter-desc {
		padding: 5px 0 10px;
	}

}

@media only screen and (max-width: 500px) {
	.site-header__grid .site-header__logo {
		flex: 0 0 190px;
		width: 190px;
	}

	#top-hero-wrap .header-hero-img img {
		height: 300px;
	}

	#top-hero-wrap .header-hero-img {
		height: 300px;
	}

	.biz-room-type-grid.room-types-grid-width__5 {
		max-width: 100%;
	}

	.biz-room-type-grid.room-types-grid-width__5 .flex-cell {
		width: 20%;
		padding-left: 3px;
		padding-right: 3px;
	}

	.biz-room-type-grid.room-types-grid-width__5 .icons,
	.biz-room-type-grid.room-types-grid-width__5 .prices,
	.biz-room-type-grid.room-types-grid-width__5 .prices .low-season-prices,
	.biz-room-type-grid.room-types-grid-width__5 .prices .high-season-prices {
		display: flex;
	}

	.biz-room-type-grid.room-types-grid-width__5 .prices {
		flex-direction: column;
	}
}

/* Extra Small Devices, Phones (Bootstrap col-xs-*) */
@media only screen and (max-width: 480px) {
	.desktop-only-block,
	.desktop-only-inline {
		display: none;
	}

	.mobile-only-block {
		display: block;
	}

	.mobile-only-inline {
		display: inline-block;
	}

	#site-body .listing-grid .listing-item .img-wrapper {
		height: 299px;
	}

	#biz-details-page .biz-name {
		padding: 15px 0;
	}

	#site-body.details-view, #site-body.news-article-page {
		padding-top: 90px;
	}

	.news-snippet-list-mini {
		margin-left: -6px;
		margin-right: -6px;
	}

	.news-snippet-list-mini .news-snippet {
		flex: 0 0 calc(50% - 12px);
		margin: 0 6px 15px;
	}

	.news-snippet-list-mini .news-snippet .snippet-header {
		padding: 10px 6px;
		font-size: .8em;
	}

	.article-content .article-img-wrapper {
		height: 240px;
	}

	.article-content .article-copy-container .article-title {
		font-size: 2em;
	}

	#home-hero-container .b-grid-nav .button-grid .btn,
	.landing-page .b-grid-nav .button-grid .btn {
		font-size: 1em;
	}

	#home-hero-container .b-grid-nav .button-grid .btn.btn-primary,
	.landing-page .b-grid-nav .button-grid .btn.btn-primary {
		padding: .285rem .5rem;
	}

	.article-content .article-copy-container .article-body {
		width: 100%;
	}

	body {
		padding-bottom: 60px;
	}

	h1 {
		font-size: 1.5em;
	}

	h2 {
		font-size: 1.3em;
	}

	h3 {
		font-size: 1.2em;
	}

	h4 {
		font-size: 1.05em;
	}
}

@media only screen and (max-width: 450px) {
	body {
		font-size: .9rem;
	}

	.site-header__grid-row-2 .site-header__logo {
		flex: 0 0 100%;
		width: 100%;
	}

	.drawer {
		padding-top: 75px;
	}

	.drawer.sticky.is-hidden {
		right: -100vw;
	}

	.drawer.show-subscribe .drawer__container {
		max-height: calc(100vh - 66px);
	}

	.drawer .drawer__container .subscribe-wrapper .drawer__content-wrapper {
		max-height: calc(100vh - 160px);
	}

	.drawer.sticky {
		width: 100vw;
	}

	.drawer-button-bar__option.icon-btn {
		width: 45px;
		height: 45px;
	}

	.drawer__content {
		padding: 20px 20px 105px;
	}

	.drawer__title {
		height: 50px;
		padding: 0 20px;
	}

	.drawer__title .title {
		line-height: 50px;
	}

	#top-hero-wrap .header-hero-img img {
		height: 270px;
	}

	#top-hero-wrap .header-hero-img {
		height: 270px;
	}

	#site-body .listing-grid .listing-item .img-wrapper {
		height: 187px; /* reduced by 30% as requested in 47639 12-07-2019 */
	}

	.listing-grid .ribbon-featured {
		padding: 5px 16px 6px;
	}

	.listing-grid .ribbon-featured .banner-icon-arrow-right {
		margin-left: 8px;
		width: 20px;
		height: 20px;
	}

	#biz-listing .card-body-header .price-box .prop-price-from {
		font-size: 1.5em;
	}

	#biz-details-page .hero-img-wrapper {
		height: 300px;
	}

	.biz-room-type-grid.room-types-grid-width__4 .flex-cell {
		width: 25%;
		padding-left: 3px;
		padding-right: 3px;
	}

	.biz-room-type-grid.room-types-grid-width__4 {
		max-width: 100%;
	}

	.biz-room-type-grid.room-types-grid-width__4 .icons,
	.biz-room-type-grid.room-types-grid-width__4 .prices,
	.biz-room-type-grid.room-types-grid-width__4 .prices .low-season-prices,
	.biz-room-type-grid.room-types-grid-width__4 .prices .high-season-prices {
		display: flex;
	}

	.biz-room-type-grid.room-types-grid-width__4 .prices {
		flex-direction: column;
	}

	#biz-details-page .card-button-bar .special-tooltip.two-high, .listing-grid .card-button-bar .special-tooltip.two-high {
		top: -74px;
	}

	#biz-details-page .card-button-bar .special-tooltip.seven-high,
	.listing-grid .card-button-bar .special-tooltip.seven-high {
		top: -162px;
	}

	#home-hero-container .b-grid-nav,
	.landing-page .b-grid-nav {
		padding: 45px 15px 78px;
	}

	#home-hero-container .b-grid-nav .handle,
	.landing-page .b-grid-nav .handle {
		top: calc(50% - 35px);
	}
}

@media only screen and (max-width: 400px) {
	.site-header__grid .site-header__drawer-button-bar {
		padding-right: 50px;
	}

	.drawer-button-bar__option.icon-btn {
		width: 40px;
		height: 40px;
	}

	#top-hero-wrap .header-hero-img img {
		height: 250px;
	}

	#top-hero-wrap .header-hero-img {
		height: 250px;
	}

	.drawer {
		padding-top: 70px;
	}

	.news-snippet-list-mini .news-snippet .snippet-header {
		font-size: .75em;
	}

	#site-body .listing-grid .listing-item .img-wrapper {
		height: 245px;
	}

	.listing-grid .card-button-bar .card-button-box,
	#biz-details-page .card-button-bar .card-button-box {
		font-size: .618em;
	}

	#biz-details-page .card-button-bar .card-button-box:not(:last-child) {
		margin-right: 10px;
	}

	#biz-details-page .hero-img-wrapper {
		height: 250px;
	}

	#biz-details-page .card-button-bar .special-tooltip.two-high, .listing-grid .card-button-bar .special-tooltip.two-high {
		top: -74px;
	}

	.listing-grid .card-button-bar .card-button-box, #biz-details-page .card-button-bar .card-button-box {
		font-size: .618em;
	}

	.listing-grid .card-button-bar .special-tooltip.seven-high {
		top: -195px;
		padding: 7px 12px;
		transform: translateX(-50%);
	}

	.listing-grid .card-button-bar .special-tooltip:not(.is-last-btn-in-row):after {
		left: inherit;
		right: 25px;
	}

	#biz-details-page .card-button-bar .special-tooltip, .listing-grid .card-button-bar .special-tooltip {
		font-size: 1.35em;
	}
}

@media only screen and (max-width: 380px) {
	.site-header__grid .site-header__logo {
		flex: 0 0 170px;
		width: 170px;
	}

	.site-header__grid .site-header__drawer-button-bar {
		padding-right: 40px;
	}

	.site-header__grid-row-2 {
		margin-top: 20px;
	}

	.site-header__grid-row-2 .site-header__spacer {
		display: none;
	}

	.drawer-button-bar__option.icon-btn {
		width: 36px;
		height: 36px;
	}

	.drawer {
		padding-top: 66px;
	}

	#header__search-icon--desktop,
	#header__subscribe-icon--desktop {
		width: 26px;
		height: 26px;
	}

	#biz-details-page .card-button-bar .card-button-box:not(:last-child) {
		margin-right: 7px;
	}

	#site-body .listing-grid .listing-item .img-wrapper {
		height: 152px; /* reduced by 30% as requested in 47639 12-07-2019 */
	}

	.biz-room-type-grid.room-types-grid-width__3 {
		max-width: 100%;
	}

	.biz-room-type-grid.room-types-grid-width__3 .flex-cell {
		width: 33%;
		padding-left: 3px;
		padding-right: 3px;
	}

	.biz-room-type-grid.room-types-grid-width__3 .icons,
	.biz-room-type-grid.room-types-grid-width__3 .prices,
	.biz-room-type-grid.room-types-grid-width__3 .prices .low-season-prices,
	.biz-room-type-grid.room-types-grid-width__3 .prices .high-season-prices {
		display: flex;
	}

	.biz-room-type-grid.room-types-grid-width__3 .prices {
		flex-direction: column;
	}

	.biz-room-type-grid.room-types-grid-width__2 {
		max-width: 100%;
	}

	.biz-room-type-grid.room-types-grid-width__2 .flex-cell {
		width: 50%;
		padding-left: 3px;
		padding-right: 3px;
	}

	.biz-room-type-grid.room-types-grid-width__2 .icons,
	.biz-room-type-grid.room-types-grid-width__2 .prices,
	.biz-room-type-grid.room-types-grid-width__2 .prices .low-season-prices,
	.biz-room-type-grid.room-types-grid-width__2 .prices .high-season-prices {
		display: flex;
	}

	.biz-room-type-grid.room-types-grid-width__2 .prices {
		flex-direction: column;
	}

	.listing-grid .card-title {
		font-size: .95rem;
	}

	#home-hero-container .b-grid-nav .button-grid,
	.landing-page .b-grid-nav .button-grid {
		grid-gap: 10px;
	}

	#site-body #biz-details-page .card-button-bar img,
	#site-body .listing-grid .card-button-bar img {
		height: 26px;
	}

	.article-content .article-img-wrapper {
		height: 200px;
	}

	.footer-grid .item a {
		font-size: .82em;
	}
}

@media only screen and (max-width: 350px) {
	.site-header__grid .site-header__logo {
		flex: 0 0 150px;
		width: 150px;
	}

	.listing-grid .card-button-bar .card-button-box,
	#biz-details-page .card-button-bar .card-button-box {
		font-size: .565em;
	}

	.listing-grid .price-box .special-tooltip {
		font-size: 1.15em;
	}

	footer .subnav-content {
		font-size: 1.3em;
	}

	footer .subnav-content a > img {
		width: 22px;
	}
}

@media (min-width: 576px) {
	#siteModal.has-video .modal-dialog {
		max-width: 90%;
	}
}

@media (min-width: 769px) {
	.modal-dialog {
		max-width: 700px;
		margin: 1.75rem auto;
	}

	#siteModal.has-video .modal-dialog {
		max-width: 900px;
	}
}

/* ---------------------------------------------------------- */
/* ------------------ Filter Modal CSS ---------------------- */
/* ------------------- */
/* STYLESHEET SECTIONS */
/* ------------------- */
/*  1__Main content
    2__Media Queries
    3__Animation keyframes
*/

html.modal-active, body.modal-active {
	overflow: hidden;
}

#filter-modal-container {
	position: fixed;
	display: table;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
	transform: scale(0);
	z-index: 10000;
}

#filter-modal-container .card-header {
	position: relative;
	padding-top: 30px;
	background: rgb(38, 106, 166);
	background: -moz-linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	background: -webkit-linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	background: linear-gradient(90deg, rgba(38, 106, 166, 1) 0%, rgb(23, 175, 220) 100%);
	color: #fff;
	border-radius: 0;
}

#filter-modal-container .card-header .close {
	position: absolute;
	top: 8px;
	right: 8px;
	cursor: pointer;
	color: #fff;
	text-shadow: none;
	font-size: 1.323em;

}

#filter-modal-container .card-header h4 {
	margin: 0;
	font-size: 1.147em;
}

#filter-modal-container .modal-background {
	background: rgba(0, 0, 0, 0.8);
	text-align: center;
	vertical-align: middle;
	display: block;
	height: 100%;
}

#filter-modal-container .modal-box {
	background: white;
	border-radius: 0;
	border: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%);
	max-height: 90%;
	overflow: hidden;
	max-width: 800px;
	width: 80%;
}

#filter-modal-container .modal-box h2 {
	font-size: 25px;
	line-height: 25px;
	margin-bottom: 15px;
}

#filter-modal-container .modal-box p {
	font-size: 18px;
	line-height: 22px;
}

#filter-modal-container .card-body {
	padding: 1.25rem 1.25rem 1.25rem;
	font-size: .794em;
	overflow-y: scroll;
	height: calc(100% - 67px);
	background: white;
	font-weight: 400;
}

#filter-modal-container .list-filter-widget__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-column-gap: 30px;
	margin-top: 15px;
}

#list-filter-widget .card-footer {
	background: none;
	border-top: none;
}

#filter-modal-container .set-filter-btn,
#filter-modal-container .clear-filter-btn {
	visibility: hidden;
}

#filter-modal-container.one {
	transform: scaleY(0.01) scaleX(0);
	animation: unfoldIn .7s cubic-bezier(.32, .48, .86, .83) forwards;
}

#filter-modal-container.one .modal-background .modal-box {
	transform: translate(-50%, -50%);
	background: none;
}

#filter-modal-container.one.out {
	transform: scale(1);
	animation: unfoldOut .7s 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
}

#filter-modal-container.five {
	transform: scale(1);
}

#filter-modal-container.five .modal-background {
	background: rgba(0, 0, 0, 0);
	animation: fadeIn 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
}

#filter-modal-container.five .modal-background .modal-box {
	transform: translateX(-1500px);
	animation: roadRunnerIn 1s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
}

#filter-modal-container.five.out {
	animation: quickScaleDown 0s 1s linear forwards;
}

#filter-modal-container.five.out .modal-background {
	animation: fadeOut 1s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
}

#filter-modal-container.five.out .modal-background .modal-box {
	animation: roadRunnerOut 1s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
}

/* ------------------------ */
/* 2__Media Queries         */
/* ------------------------ */
@media only screen and (max-width: 580px) {
	#filter-modal-container .list-filter-widget__grid {
		grid-template-columns: 1fr;
	}
}

/* ---------------------- */
/* 3__Animation keyframes */
/* ---------------------- */
@keyframes unfoldIn {
	0% {
		transform: scaleY(0.005) scaleX(0);
	}
	50% {
		transform: scaleY(0.005) scaleX(1);
	}
	100% {
		transform: scaleY(1) scaleX(1);
	}
}

@keyframes unfoldOut {
	0% {
		transform: scaleY(1) scaleX(1);
	}
	50% {
		transform: scaleY(0.005) scaleX(1);
	}
	100% {
		transform: scaleY(0.005) scaleX(0);
	}
}

@keyframes zoomIn {
	0% {
		transform: scale(0);
	}
	100% {
		transform: scale(1);
	}
}

@keyframes zoomOut {
	0% {
		transform: scale(1);
	}
	100% {
		transform: scale(0);
	}
}

@keyframes fadeIn {
	0% {
		background: rgba(0, 0, 0, 0);
	}
	100% {
		background: rgba(0, 0, 0, 0.7);
	}
}

@keyframes fadeOut {
	0% {
		background: rgba(0, 0, 0, 0.7);
	}
	100% {
		background: rgba(0, 0, 0, 0);
	}
}

@keyframes quickScaleDown {
	0% {
		transform: scale(1);
	}
	99.9% {
		transform: scale(1);
	}
	100% {
		transform: scale(0);
	}
}

@keyframes roadRunnerIn {
	0% {
		transform: translateX(-1500px) skewX(30deg) scaleX(1.3);
	}
	70% {
		transform: translateX(30px) skewX(0deg) scaleX(0.9);
	}
	100% {
		transform: translateX(0px) skewX(0deg) scaleX(1);
	}
}

@keyframes roadRunnerOut {
	0% {
		transform: translateX(0px) skewX(0deg) scaleX(1);
	}
	30% {
		transform: translateX(-30px) skewX(-5deg) scaleX(0.9);
	}
	100% {
		transform: translateX(1500px) skewX(30deg) scaleX(1.3);
	}
}
