/**
 * This file will be included in header in every page after reboot.
 * It should be used for content that relates
 * to your site as a whole, it should not be used for plugin-specific css.
 */
/*
|-------------------------------------------------------------------
| FONTS
|-------------------------------------------------------------------
|
*/

@font-face {
	font-family: 'Mark W05 Book';
	src: url('/includes/public/assets/shared/fonts/MarkPro-Book.otf')
}
@font-face {
	font-family: 'Mark W05 Bold';
	src: url('/includes/public/assets/shared/fonts/MarkPro-Bold.otf')
}

html {
	overflow-y: scroll;
}

body > .contentRender {
	min-height: 100%;
	height: 100%;
}

/* This ensures that the page always has a scrollbar to ensure that some headers load correctly without FOUC */
html,
body {
	height: 100%;
	font-family: var(--font-body);
	color: var(--sw-text-color);
}

body {
	background: var(--sw-body-bg);
}

.sr-only {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

/* Skip links */
.skip-link[href] {
	z-index: 5000000;
	display: block;
	margin: 0;
	padding: var(--space-8) var(--space-12);
	width: auto;
	height: auto;
	font-size: var(--text-3xl);
	line-height: var(--leading-tight);
	color: var(--gray-100);
	text-align: center;
	border: 4px dashed var(--gray-100);
	background: var(--gray-900);
	opacity: 0;
	clip: auto;
	pointer-events: none;
	transition: opacity 200ms cubic-bezier(0, 0, 0.3, 1);
}

.skip-link[href]:focus {
	opacity: 1;
	pointer-events: all;
}

/* Set General max-width of site content */
.contentRender_name_plugins_core_textbox,
.contentRender_name_plugins_nav_sitemap,
.contentRender_name_plugins_search_results,
.contentRender_name_plugins_common_button,
.contentRender_name_plugins_collections_template_custom_list,
.contentRender_name_plugins_collections_template_custom_contacts,
.contentRender_name_plugins_blog_leisure_blog_posts,
.contentRender_name_plugins_blog_articles_posts,
.contentRender_name_plugins_crm_formbuilder,
.contentRender_name_plugins_events_submitevent,
.contentRender_name_plugins_crm_rfp,
.contentRender_name_plugins_crm_rsvp {
	width: 100%;
	padding: 0 var(--space-5);
	margin: 0 auto;
}

.contentRender_name_plugins_core_textbox {
	padding: var(--space-1) var(--space-2);
}

.contentRender_name_plugins_crm_dms_formbuilder {
	margin: 0 auto;
	max-width: var(--width-base);
}

@media (min-width: 64em) {
	.contentRender_name_plugins_core_textbox,
	.contentRender_name_plugins_search_results,
	.contentRender_name_plugins_nav_sitemap,
	.contentRender_name_plugins_common_button,
	.contentRender_name_plugins_collections_template_custom_list,
	.contentRender_name_plugins_collections_template_custom_contacts {
		max-width: var(--width-base);
	}

	.contentRender_name_plugins_crm_formbuilder,
	.contentRender_name_plugins_events_submitevent,
	.contentRender_name_plugins_crm_rfp,
	.contentRender_name_plugins_crm_rsvp {
		max-width: var(--width-comfortable);
	}
}

/* Panels */
.panel-page {
	position: relative;
	display: grid;
	grid-template-columns: 100%;
	grid-template-rows: auto auto 1fr auto;
	min-height: 100%;
}

.panel-navigation-share {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	max-width: 1120px;
	padding: 0 var(--space-5);
	margin: 0 auto;
	margin-bottom: var(--space-8);
}

.panel-navigation-share .navigation-container {
	display: none;
}

.panel-navigation-share .share-container {
	margin-left: auto;
}

.panel-intro {
	margin: 0 auto;
	padding: 8px 31px var(--space-12);
	background: var(--blue-darker);
}

.panel-intro .title-cont {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 5px;
	margin-bottom: 18px;
}

.panel-intro .title-cont h2 {
	font-size: var(--text-4xl);
	color: var(--white);
	text-transform: uppercase;
	line-height: var(--leading-none);
	text-align: center;
}

.panel-intro h2.highlight-title {
	color: var(--green-bad);
}

.panel-intro .contentRender_name_plugins_core_textbox p,
.panel-intro .contentRender_name_plugins_core_textbox a {
	color: var(--white);
	font-weight: 400;
}

.panel-intro .contentRender_name_plugins_core_textbox p {
	margin-bottom: 26px;
}

.panel-intro .slide-footer {
	display: flex;
	justify-content: center;
}

.panel-intro .slide-footer a {
	position: relative;
	justify-self: center;
	font-family: var(--font-body);
	font-size: var(--text-base);
	font-weight: 600;
	line-height: var(--leading-tight);
	letter-spacing: var(--tracking-wider);
	color: var(--off-white);
	text-transform: uppercase;
	background: var(--green);
	padding: 18px var(--space-6);
	padding-right: 67px;
	margin-top: var(--space-1);
	justify-content: center;
}

.panel-intro .slide-footer a::after {
	content: '';
	position: absolute;
	right: 24px;
	bottom: 50%;
	transform: translateY(50%);
	height: 32px;
	width: 32px;
	background-image: url(/includes/public/assets/shared/arrow-hover.svg);
	background-repeat: no-repeat;
	pointer-events: none;
	background-size: 100%;
}

@media (min-width: 40em) {
	.panel-intro .content-section {
		width: calc(100% - 40px);
		max-width: 877px;
		margin-inline: auto;
	}

	.panel-intro .title-cont h2 {
		font-size: var(--text-5xl);
	}

	.panel-intro .contentRender_name_plugins_core_textbox p {
		margin-bottom: 26px;
		font-size: var(--text-lg);
		line-height: var(--leading-snug);
	}
}
@media (min-width: 64em) {
	.panel-intro {
		padding: 46px 31px var(--space-16);
	}

	.panel-intro .content-section {
		width: 100%;
		max-width: 877px;
		margin-inline: auto;
	}

	.panel-intro .slide-footer a {
		font-size: var(--text-xl);
		padding: 20px var(--space-6);
		padding-right: 83px;
	}

	.panel-intro .slide-footer a::after {
		height: 50px;
		width: 50px;
	}

	@media (hover: hover) {
		.panel-intro .slide-footer a:hover {
			background-color: var(--green-dark);
			text-decoration: none;
		}

		.panel-intro .slide-footer a:hover:after {
			background-image: url(/includes/public/assets/shared/arrow.svg);
		}
	}
}

.panel-three-column,
.panel-two-column {
	max-width: var(--width-base);
	padding: 0;
	margin: 0 auto;
	margin-bottom: var(--space-8);
}

.panel-three-column :is(.left-container, .center-container, .right-container),
.panel-two-column :is(.left-container, .right-container) {
	padding: 0 var(--space-5);
}

:is(.panel-intro, .panel-social, .panel-three-column, .panel-two-column) .contentRender_name_plugins_core_textbox {
	padding: 0;
}

.sv-col > .contentRender > .sv-panel {
	margin-left: calc(-1 * var(--space-5));
	margin-right: calc(-1 * var(--space-5));
}

@media (min-width: 64em) {
	.panel-navigation-share .navigation-container {
		display: block;
	}

	.panel-three-column,
	.panel-two-column {
		display: flex;
	}

	.panel-two-column.sidebar-left .left-container {
		order: 1;
		flex-basis: 40%;
	}

	.panel-two-column.sidebar-left .right-container {
		order: 2;
		flex-basis: 60%;
	}

	.panel-two-column.sidebar-right .left-container {
		order: 1;
		flex-basis: 60%;
	}

	.panel-two-column.sidebar-right .right-container {
		order: 2;
		flex-basis: 40%;
	}

	.panel-two-column.even :is(.left-container, .right-container) {
		flex-basis: 50%;
	}

	.panel-three-column > * {
		flex-basis: calc(100% / 3);
	}
}

/* Inputs */

:is(input, button, select, textarea):focus {
	outline: var(--sw-focus-color) solid 1px;
	outline-offset: 2px;
}

/* Video Play Button */

.shared-play-button {
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 10;
	transform: translate(-50%, -50%);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	padding: 0;
	background-color: var(--blue);
	border: 3px solid var(--white);
	border-radius: 50%;
	font-size: var(--text-sm);
	line-height: 1;
	text-align: center;
	color: var(--white);
	pointer-events: none;
	transition: background-color 100ms, border-color 100ms;
}

/* Image/Video Credits */

.related-content .credits,
.ccl-widget .credits,
.image-box-with-caption .credits {
	position: absolute;
	bottom: 0;
	left: var(--space-2);
	margin: var(--space-2) 0;
	font-family: var(--font-family);
	font-size: 11px;
	text-shadow: 0 0 10px var(--black);
	color: #d3d3d3;
	pointer-events: none;
	z-index: 10;
	font-weight: 100;
	letter-spacing: 0.02em;
}
@media (min-width: 64em) {
	.related-content .credits,
	.ccl-widget .credits,
	.image-box-with-caption .credits {
		margin-inline: var(--space-3);
	}
}
.credits a,
.credits a:hover {
	color: inherit;
	position: relative;
	z-index: 100;
	pointer-events: all;
}
.credits a:hover {
	text-decoration: underline;
}

/* Slider Arrows */

.glide__arrow,
.sv-lightbox .arrow {
	--arrow-color: var(--gray-800);
	--arrow-bg-color: var(--white);

	position: relative;
	width: var(--space-10);
	height: var(--space-10);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	padding: 0;
	margin: var(--space-3);
	background: var(--arrow-bg-color);
	border-radius: var(--rounded-circle);
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
	font-size: var(--text-xl);
	color: var(--arrow-color);
	pointer-events: all;
}

.glide__arrow i,
.sv-lightbox .arrow i {
	display: block;
	line-height: var(--leading-none);
}

/* Fade effect for glide sliders */

.glide.fade .glide__slides {
	transform: none !important;
	display: block;
	width: auto !important;
}

.glide.fade .glide__slide {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	opacity: 0;
	transition: opacity 800ms ease;
}

.glide.fade .glide__slide:first-child {
	position: relative;
}

.glide.fade .glide__slide--active {
	z-index: 2;
	opacity: 1;
}

/* responsive image */

.slide-img {
	background-color: #eee;
	background-position: 130% 0;
	background-size: 200% 100%;
	background-repeat: no-repeat;
	background-image: linear-gradient(to right, #eee 45%, #f6f6f6, #eee 65%);
	animation: img-loading 1200ms infinite ease-in-out;
}

.slide-img.loaded {
	animation: none;
}

@keyframes img-loading {
	to {
		background-position: -30% 0;
	}
}

.panel-accordion {
	--color-primary: var(--white);
}

.panel-social {
	margin: 0 auto 49px;
	padding: 0;
}

.panel-social .header-container {
	padding-inline: var(--space-8);
	padding-block: var(--space-8) var(--space-5);
	position: relative;
	z-index: 0;
}
.panel-social .header-container:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	height: calc(100% + 30px);
	width: calc(100% - 105px);
	background-color: #ebf9fb;
	pointer-events: none;
	z-index: -1;
}
.panel-social .header-container:after {
	content: '';
	position: absolute;
	left: var(--space-2);
	bottom: -6px;
	height: 94px;
	width: 112px;
	background-image: url(/includes/public/assets/shared/dots.png);
	background-repeat: no-repeat;
	background-size: 100%;
	pointer-events: none;
	z-index: -1;
}

.panel-social .title-container h2 {
	font-size: var(--text-2xl-1);
	text-transform: uppercase;
	line-height: calc(31 / 25);
	letter-spacing: 0.0781rem;
	color: var(--blue-darker);
	margin-bottom: var(--space-2);
}

.panel-social .title-container p {
	font-size: var(--text-base);
	line-height: calc(22 / 16);
	color: var(--blue-darker);
	max-width: 550px;
}

.panel-social .social-container {
	margin-top: var(--space-4);
}

.panel-social .social-links {
	justify-content: flex-start;
}

.panel-social .social-links a {
	color: var(--blue-darker);
}

@media (min-width: 64em) {
	.panel-social {
		margin-bottom: var(--space-2);
	}
	.panel-social .title-container h2 {
		font-size: var(--text-4xl-1);
		letter-spacing: 0.1313rem;
		margin-bottom: var(--space-3);
	}
	.panel-social .title-container p {
		line-height: calc(24 / 16);
	}
	.panel-social .header-container {
		padding-inline: 74px 160px;
		padding-block: var(--space-16) var(--space-8);
	}

	.panel-social .header-container:before {
		width: calc(100% - 374px);
	}
	.panel-social .header-container:after {
		bottom: 2px;
		height: 242px;
		width: 243px;
		background-image: url(/includes/public/assets/shared/dots-desktop.png);
	}
}

@media (min-width: 75em) {
	.panel-social .social-links {
		justify-content: flex-end;
	}
	.panel-social .social-container {
		margin-top: -11px;
	}
}

/* Booking */

#slideshow-container {
	position: relative;
}

.contentRender_name_plugins_common_booking_banner_homepage {
	width: 100%;
	position: relative;
	z-index: 11;
	padding: 0 var(--space-8);
	background: var(--blue-darker);
}

.contentRender_name_plugins_common_booking_banner_homepage #widget-container-2104 {
	transform: translateY(-20%);
}

@media (min-width: 23.4375em) {
	.contentRender_name_plugins_common_booking_banner_homepage {
		padding: 0 55px;
	}
}

@media (min-width: 40em) {
	.contentRender_name_plugins_common_booking_banner_homepage {
		padding: 0 var(--space-10);
	}
}

@media (min-width: 651px) {
	.contentRender_name_plugins_common_booking_banner_homepage #widget-container-2104 {
		transform: translateY(-50%);
	}
}

.contentRender_name_plugins_common_booking_banner_interior {
	margin-bottom: var(--space-12);
	padding: 0 var(--space-6);
}

@media (min-width: 64em) {
	.contentRender_name_plugins_common_booking_banner_interior {
		margin-bottom: var(--space-6);
	}
}

/* Navbar */
.custom-navbar {
	border-bottom: 1px solid var(--blue-darker);
}
.custom-navbar a,
.custom-navbar .overflow button {
	color: var(--blue-darker);
}
.custom-navbar .overflow-list {
	border: 1px solid var(--blue-darker);
}

.custom-embed .embed-container {
	padding-bottom: 0;
	height: auto;
}