body,
html {
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body {
	opacity: 1;
	-webkit-transition-duration: 0.7s;
	-o-transition-duration: 0.7s;
	transition-duration: 0.7s;
	-webkit-transition-property: opacity;
	-o-transition-property: opacity;
	transition-property: opacity;
}

body.fade {
	opacity: 0;
}

.hidden {
	display: none;
}

.hidden-form {
	display: none;
}

/* Medias */
.mobile {
	display: none;
}
.tablet {
	display: none;
}
.desktop {
	display: block;
}
@media screen and (max-width: 992px) {
	.desktop {
		display: none;
	}

	.mobile {
		display: none;
	}

	.tablet {
		display: block;
	}
}
@media (max-width: 768px) {
	.desktop {
		display: none;
	}
	.tablet {
		display: none;
	}
	.mobile {
		display: block;
	}
}

/* Buttons */
.btn {
	--bs-btn-padding-x: 1.75rem;
	--bs-btn-padding-y: 0.575rem;
	-webkit-transition: all 0.4s ease-out;
	-o-transition: all 0.4s ease-out;
	transition: all 0.4s ease-out;
	text-transform: uppercase;
}

.btn:hover,
.btn:active,
.btn:focus {
	--bs-btn-padding-x: 1.65rem;
	--bs-btn-padding-y: 0.575rem;
}

/* Header */
#mainNavbar.navbar {
	background-color: var(--nav-bg);
	-webkit-transition: all 0.4s ease-out;
	-o-transition: all 0.4s ease-out;
	transition: all 0.4s ease-out;
}

#mainNavbar.navbar .nav-link {
	--bs-navbar-nav-link-padding-x: 0.875rem;
}

#mainNavbar.navbar.scrolled {
	background-color: var(--nav-bg-scrolled);
	-webkit-box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
	box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
}

@media all and (min-width: 992px) {
	#mainNavbar.navbar .dropdown-menu-end {
		right: 0;
		left: auto;
	}

	#mainNavbar.navbar .nav-item .dropdown-menu {
		display: block;
		opacity: 0;
		visibility: hidden;
		-webkit-transition: 0.3s;
		-o-transition: 0.3s;
		transition: 0.3s;
		margin-top: 0;
	}

	#mainNavbar.navbar .dropdown-menu {
		top: 80%;
		-webkit-transform: rotateX(-75deg);
		transform: rotateX(-75deg);
		-webkit-transform-origin: 0% 0%;
		-ms-transform-origin: 0% 0%;
		transform-origin: 0% 0%;
	}

	#mainNavbar.navbar .nav-item:hover .dropdown-menu {
		-webkit-transition: 0.3s;
		-o-transition: 0.3s;
		transition: 0.3s;
		opacity: 1;
		visibility: visible;
		top: 100%;
		-webkit-transform: rotateX(0deg);
		transform: rotateX(0deg);
	}

	#mainNavbar.navbar .dropdown-item:focus,
	#mainNavbar.navbar .dropdown-item:hover {
		color: var(--nav-dropdown-hover);
		background-color: var(--nav-dropdown-bg-hover);
	}
	#mainNavbar.navbar .dropdown-item.active,
	#mainNavbar.navbar .dropdown-item:active {
		color: var(--nav-dropdown-active);
		text-decoration: none;
		background-color: var(--nav-dropdown-bg-active);
	}
}

@media (max-width: 992px) {
	#mainNavbar.navbar .navbar-collapse {
		background-color: var(--nav-dropdown-mobile-bg);
		border-radius: 25px;
		padding: 10px;
		text-align: center;
		margin: 10px;
	}
}

/* Hero */
#hero .uk-overlay-primary {
	background: var(--hero-overlay);
	-webkit-box-shadow: rgb(0 0 0 / 50%) 0px 100px 50px -15px inset;
	box-shadow: rgb(0 0 0 / 50%) 0px 100px 50px -15px inset;
}

#hero > div.uk-overlay-primary.uk-position-cover > div {
	z-index: 1;
}

#hero .btn-template {
	background: -o-linear-gradient(left, var(--btn-hover-bg) 50%, transparent 50%);
	background: -webkit-gradient(linear, left top, right top, color-stop(50%, var(--btn-hover-bg)), color-stop(50%, transparent));
	background: linear-gradient(to right, var(--btn-hover-bg) 50%, transparent 50%);
	background-size: 200% 100%;
	background-position: right bottom;
	-webkit-transition: all 0.4s ease-out;
	-o-transition: all 0.4s ease-out;
	transition: all 0.4s ease-out;
	color: var(--btn-main-text) !important;
	border-radius: var(--btn-border-radius) !important;
	-webkit-box-shadow: var(--btn-main-shadow) !important;
	box-shadow: var(--btn-main-shadow) !important;
	text-decoration: none !important;
	border: 2px solid var(--btn-main-border);
}

#hero .btn-template:hover,
#hero .btn-template:focus,
#hero .btn-template:active {
	background-position: left bottom;
	color: var(--btn-hover-text) !important;
	text-decoration: none !important;
	border: 2px solid var(--btn-hover-border);
}

#hero h1,
#hero h2 {
	text-transform: uppercase;
	text-shadow: var(--hero-text-shadow);
	margin-bottom: 30px;
}

#hero .uk-overlay-primary svg.hero-bg {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
}
#hero .btn-template {
	margin-top: 40px;
}
#hero .uk-overlay-primary svg.hero-bg path {
	fill: var(--color-1);
	width: 100%;
	height: 100%;
}

/* Promotiles */
.cta-container {
	display: block;
	height: auto;
	padding-top: 25vh;
	padding-bottom: 5vh;
	overflow: hidden;
	position: relative;
}

.call-to-action {
	overflow: hidden;
	position: relative;
}

.call-to-action svg.cta-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: auto;
	height: 100%;
}

.call-to-action svg.cta-bg path {
	fill: var(--color-1);
	width: 100%;
	height: 100%;
}

.wave-divider {
	position: relative;
	bottom: -1px;
}

.wave-divider svg {
	width: 120%;
	height: auto;
	margin: auto;
	position: relative;
	bottom: 0;
	left: -50%;
	-webkit-transform: translate(34%);
	-ms-transform: translate(34%);
	transform: translate(34%);
}

.wave-divider svg path {
	fill: var(--color-2);
	width: 100%;
	-webkit-filter: drop-shadow(0px 0px 15px var(--color-3-opacity));
	filter: drop-shadow(0px 0px 15px var(--color-3-opacity));
}

.cta {
	overflow: hidden;
	position: relative;
	width: 40vw;
	height: 450px;
	background-size: cover;
	background-position: bottom;
	border-radius: 25px;
	-moz-border-radius: 25px;
	border: 0;
	-webkit-box-shadow: inset 0 0 20px rgb(0 0 0 / 25%), 0px 0px 20px rgb(0 0 0 / 15%), 0px 5px 15px rgb(0 0 0 / 15%);
	box-shadow: inset 0 0 20px rgb(0 0 0 / 25%), 0px 0px 20px rgb(0 0 0 / 15%), 0px 5px 15px rgb(0 0 0 / 15%);
	will-change: transform;
}

.cta:nth-child(odd) {
	margin-right: auto;
	margin-left: 10vh;
}

.cta:nth-child(even) {
	margin-right: 10vh;
	margin-left: auto;
	margin-top: -6rem;
}

.cta:nth-child(odd):not(:first-child) {
	margin-top: -6rem;
}

.cta-content-wrap {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
}

.cta-content {
	padding: 0px 15px 0px 15px;
	text-align: center;
	background-color: var(--color-2);
	border-radius: 0px 0px 25px 25px;
	border: 0;
	position: relative;
}

.cta-content-inner {
	position: relative;
	top: -3em;
}

.cta-content h4 {
	color: var(--color-3);
	margin-top: -1rem;
}

.cta-content p {
	margin-bottom: 14px;
	padding: 0px 6rem;
}

@media (max-width: 1680px) {
	.cta-content-inner {
		position: relative;
		top: -2.5em;
	}
}

@media (max-width: 1500px) {
	.cta-content-inner {
		position: relative;
		top: -2em;
	}
	.cta-content p {
		padding: 0px 4rem;
	}
}

@media (max-width: 1200px) {
	.cta-content h4 {
		margin-top: -0.5rem;
	}
	.cta-content-inner {
		position: relative;
		top: -1.75em;
	}
	.cta-content p {
		padding: 0px 2rem;
	}
}

@media (max-width: 992px) {
	.cta-content-inner {
		position: relative;
		top: -3em;
	}

	.cta-container {
		display: block;
		height: auto;
		padding-top: 100px;
		margin-bottom: -150px;
	}

	.cta:nth-child(odd) {
		margin: 40px auto;
	}

	.cta:nth-child(even) {
		margin: 40px auto;
	}

	.cta:nth-child(odd):not(:first-child) {
		margin: 40px auto;
	}

	.cta {
		width: 80vw;
		margin: 40px auto;
	}

	.cta-content h4 {
		margin-top: 0rem;
		font-size: 22px;
	}

	.cta-content p {
		font-size: 15px;
	}
}

@media (max-width: 768px) {
	.cta-content-inner {
		position: relative;
		top: -2.5em;
	}
	.cta-content p {
		padding: 0px 1rem;
	}
}

@media (max-width: 650px) {
	.cta-content-inner {
		position: relative;
		top: -1.5em;
	}
}

/* Home */
#home svg.home-bg {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

#home svg.home-bg path {
	fill: var(--color-1);
	width: 100%;
	height: 100%;
}

#home {
	position: relative;
}

#home,
#home .row,
#home .row .col-lg-6 {
	height: 90vh;
}

#home img {
	width: auto;
	min-height: 100%;
	max-width: 150%;
	max-height: 150%;
}

#home h2 {
	font-size: 3.5rem;
	text-transform: uppercase;
	font-weight: 300;
	margin-bottom: 1.5rem;
}

#home p {
	font-size: 1.25rem;
}

@media (max-width: 1500px) {
	#home h2 {
		font-size: 2rem;
		text-transform: uppercase;
		font-weight: 300;
		margin-bottom: 1.5rem;
	}

	#home p {
		font-size: 1rem;
	}
}

@media (max-width: 1200px) {
	#home h2 {
		font-size: 1.8rem;
		text-transform: uppercase;
		font-weight: 300;
		margin-bottom: 1.5rem;
	}

	#home p {
		font-size: 0.875rem;
	}
}

@media (max-width: 992px) {
	#home h2 {
		font-size: 2.5rem;
		text-transform: uppercase;
		font-weight: 300;
		margin-bottom: 1.5rem;
	}

	#home p {
		font-size: 1.25rem;
	}

	#home,
	#home .row,
	#home .row .col-lg-6 {
		height: auto;
	}
}

@media (max-width: 768px) {
	#home h2 {
		font-size: 2.75rem;
		text-transform: uppercase;
		font-weight: 300;
		margin-bottom: 1.5rem;
	}

	#home p {
		font-size: 1.1rem;
	}
}

@media (max-width: 650px) {
	#home h2 {
		font-size: 2rem;
		text-transform: uppercase;
		font-weight: 300;
		margin-bottom: 1.5rem;
	}

	#home p {
		font-size: 0.875rem;
	}
}

/* Contact Section */

#contact iframe {
	-webkit-box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
	box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
	border-radius: 10px;
}

#contact h3 {
	text-transform: uppercase;
	font-size: 2.25rem;
}

/* Internal Header */
.internal #mainNavbar .navbar-brand img {
	-webkit-filter: brightness(2) grayscale(1) contrast(5);
	filter: brightness(2) grayscale(1) contrast(5);
}

.internal #mainNavbar.scrolled .navbar-brand img {
	-webkit-filter: brightness(1) grayscale(0) contrast(1);
	filter: brightness(1) grayscale(0) contrast(1);
}

@media (max-width: 992px) {
	.internal #mainNavbar .navbar-brand img {
		-webkit-filter: brightness(1) grayscale(0) contrast(1);
		filter: brightness(1) grayscale(0) contrast(1);
	}
	.internal #mainNavbar.scrolled .navbar-brand img {
		-webkit-filter: brightness(1) grayscale(0) contrast(1);
		filter: brightness(1) grayscale(0) contrast(1);
	}
}

.internal-header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 500px;
	margin-bottom: 2rem;
	background-image: url("../images/design/hero.webp");
}

.internal-header svg > text {
	color: var(--color-2);
	fill: var(--color-2);
	text-transform: uppercase;
	z-index: 1;
	font-weight: 200;
	text-align: center;
	font-family: var(--page-headers-font);
	letter-spacing: 5px;
	text-shadow: 0px 0px 5px var(--color-3-opacity);
	-webkit-font-smoothing: subpixel-antialiased;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	font-size: 1.75rem;
}

@media (max-width: 992px) {
	.internal-header svg > text {
		color: var(--color-2);
		fill: var(--color-2);
		text-transform: uppercase;
		z-index: 1;
		font-weight: 200;
		text-align: center;
		font-family: var(--page-headers-font);
		letter-spacing: 10px;
		text-shadow: 0px 0px 5px var(--color-3-opacity);
		-webkit-font-smoothing: subpixel-antialiased;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		font-size: 2rem;
	}
	.internal-header {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		height: 450px;
		margin-bottom: 2rem;
		background-image: url("../images/design/hero.webp");
		background-size: auto 120%;
	}

	.text-justify {
		text-align: justify;
	}
}
.internal-header svg.internalSvg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 250px;
	z-index: 0;
}

.internal-header svg.internalSvg text {
	fill: var(--color-2);
}

.internal-header svg.internalSvg path {
	fill: var(--color-1-opacity-darker);
	width: 100%;
	height: 300px;
}

/* Internal Body */

.internal main > section > .container {
	margin-top: -10rem;
	background-color: var(--page-background);
	padding-top: 1rem;
	padding-bottom: 1rem;
	-webkit-box-shadow: rgb(149 157 165 / 20%) 0px -8px 24px;
	box-shadow: rgb(149 157 165 / 20%) 0px -8px 24px;
	min-height: 200px;
}

/* menu */

.menu #menu-flters {
	padding: 0;
	margin: 0 auto 0 auto;
	list-style: none;
	text-align: center;
	border-radius: 50px;
}
.internal div[data-type="content-section"] {
margin-top: 30px;
padding-left: 30px;
padding-right: 30px;
padding-bottom: 30px;
}
.menu {
	margin-top: 30px;
}
.menu #menu-flters li {
	cursor: pointer;
	display: inline-block;
	padding: 8px 12px 10px 12px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1;
	color: var(--secondary-accent-text);
	margin-bottom: 10px;
	-webkit-transition: all ease-in-out 0.3s;
	-o-transition: all ease-in-out 0.3s;
	transition: all ease-in-out 0.3s;
	border-radius: 50px;
}

.menu #menu-flters li:hover,
.menu #menu-flters li.filter-active {
	color: #cda45e;
}

.menu #menu-flters li:last-child {
	margin-right: 0;
}

.menu .menu-item {
	margin-top: 50px;
}

.menu .menu-img {
	width: 70px;
	height: 70px;
	border-radius: 50%;
	float: left;
	-o-object-fit: cover;
	object-fit: cover;
	border: 5px solid var(--secondary-accent-border);
}

.menu .menu-content {
	margin-left: 85px;
	overflow: hidden;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	position: relative;
}

.menu .menu-content::after {
	content: "......................................................................" "...................................................................." "....................................................................";
	position: absolute;
	left: 20px;
	right: 0;
	top: -4px;
	z-index: 1;
	color: var(--secondary-accent-text);
}

.menu .menu-content span.name {
	padding-right: 10px;
	background: var(--secondary-accent);
	position: relative;
	z-index: 3;
	font-weight: 700;
	color: var(--secondary-accent-text);
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	padding: 0;
	font-weight: 600;
}

#menu div.menu-content > a {
	padding-right: 10px;
	background: var(--secondary-accent);
	position: relative;
	z-index: 3;
	font-weight: 700;
	color: var(--secondary-accent-text);
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	padding: 0;
	font-weight: 600;
}

.menu .menu-content span.name:hover {
	color: var(--secondary-accent-title);
}

.menu .menu-content span {
	background: var(--secondary-accent);
	position: relative;
	z-index: 3;
	padding: 0 10px;
	font-weight: 600;
	color: var(--secondary-accent-title);
}

.menu .menu-ingredients {
	margin-left: 85px;
	font-style: italic;
	font-size: 14px;
	color: var(--secondary-accent-text);
}

.menu {
	min-height: 750px;
}

/* Gallery */

.gallery-container .gallery-filters {
	padding: 0;
	margin: 0 auto 0 auto;
	list-style: none;
	text-align: center;
	border-radius: 50px;
}

.gallery-filters {
	position: relative;
}

.gallery-items {
	position: relative;
	margin: 0rem 0rem 1.5rem 0rem;
}

.gallery-container .gallery-filters li {
	cursor: pointer;
	display: inline-block;
	padding: 10px 14px 10px 14px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1;
	margin-left: 0.5rem;
	margin-right: 0.5rem;
	margin-bottom: 10px;
	-webkit-transition: all ease-in-out 0.3s;
	-o-transition: all ease-in-out 0.3s;
	transition: all ease-in-out 0.3s;
	background: var(--btn-main-bg) !important;
	color: var(--btn-main-text) !important;
	border-radius: var(--btn-border-radius) !important;
	-webkit-box-shadow: var(--btn-main-shadow) !important;
	box-shadow: var(--btn-main-shadow) !important;
	text-decoration: none !important;
	font-family: var(--headers-font) !important;
	border: none;
}

.gallery-container .gallery-filters li:hover,
.gallery-container .gallery-filters li.filter-active {
	background: var(--btn-hover-bg) !important;
	color: var(--btn-hover-text) !important;
	text-decoration: none !important;
	border: none;
}

.gallery-container .gallery-filters li:last-child {
	margin-right: 0;
}

/* Forms */

.form-heading {
    margin-bottom: 1.5rem;
    border-bottom: 1px solid var(--color-1);
    padding: 1rem 0 .5rem 0;
	text-align: start !important;
	font-size: 1.5rem;
	letter-spacing: 3px;
}

.cmsform > .row:first-of-type .form-heading {
    padding-top: 0;
}

.form-paragraph {
    padding-bottom: 2rem;
}

.catering-form,
.private-dining-form {
	border: 4px solid var(--reviews-border);
	padding: 3rem;
	-webkit-box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
	box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

.catering-form,
.private-dining-form {
	border: 4px solid var(--reviews-border);
	padding: 3rem;
	-webkit-box-shadow: rgb(0 0 0 / 16%) 0px 1px 4px;
	box-shadow: rgb(0 0 0 / 16%) 0px 1px 4px;
	background: var(--color-1);
	color: var(--color-2) !important;
}
.catering-form h5,
.private-dining-form h5 {
	color: var(--color-2);
}

.catering-form .cmsform textarea,
.private-dining-form .cmsform textarea {
	min-height: 206px;
}

.form-floating > .form-control-plaintext ~ label,
.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating > .form-select ~ label {
	opacity: 1 !important;
	-webkit-transform: scale(0.85) translateY(-1.85rem) translateX(0.15rem);
	-ms-transform: scale(0.85) translateY(-1.85rem) translateX(0.15rem);
	transform: scale(0.85) translateY(-1.85rem) translateX(0.15rem);
}

input:focus::placeholder {
	color: #212529!important;
	font-size: 1rem;
}

.form-control:focus {
	color: #212529;
	background-color: #fff;
	border-color: var(--color-1);
	outline: 0;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.formTextColor {
	position: absolute;
	color: var(--color-4) !important;
	-webkit-transition-property: color;
	-o-transition-property: color;
	transition-property: color;
	-webkit-transition-duration: 0.2s;
	-o-transition-duration: 0.2s;
	transition-duration: 0.2s;
}

.form-floating > .form-control-plaintext ~ label .formTextColor,
.form-floating > .form-control:focus ~ label .formTextColor,
.form-floating > .form-control:not(:placeholder-shown) ~ label .formTextColor,
.form-floating > .form-select ~ label .formTextColor {
	color: var(--color-3) !important;
	background-color: var(--color-2);
	padding: 1px 10px;
	border-radius: 25px;
}

.formTextColor::after {
	content: " ";
	display: block;
	position: absolute;
	background: white;
	height: 2px;
	top: 50%;
	z-index: -1;
}

.cmsform .form-control {
	border-radius: 0;
}
.form-check-input:checked {
	background-color: var(--form-checkbox);
	border-color: var(--form-checkbox);
}

.form-check-input:focus {
	border-color: var(--color-1);
	outline: 0;
	-webkit-box-shadow: 0 0 0 0.25rem var(--form-checkbox-focus-dropshadow);
	box-shadow: 0 0 0 0.25rem var(--form-checkbox-focus-dropshadow);
}
.btn-block {
	width: 100%;
	padding: 0.25rem;
	font-size: 1.5rem;
	letter-spacing: 0.25rem;
}

.cmsform textarea.form-control {
	min-height: 206px;
}

/* Modals */

.modal {
	--bs-modal-zindex: 1055;
	--bs-modal-bg: var(--modal-bg);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9002;
	display: none;
	width: 100%;
	height: 100%;
	overflow-x: hidden;
	overflow-y: auto;
	outline: 0;
}

.toast {
	--bs-toast-zindex: 1055;
	--bs-toast-padding-x: 0.75rem;
	--bs-toast-padding-y: 0.5rem;
	--bs-toast-spacing: 1.5rem;
	--bs-toast-max-width: 350px;
	--bs-toast-font-size: 0.875rem;
	--bs-toast-color: ;
	--bs-toast-bg: var(--modal-bg);
	--bs-toast-border-width: 1px;
	--bs-toast-border-color: transparent;
	--bs-toast-border-radius: 0rem;
	--bs-toast-box-shadow: rgba(0, 0, 0, 0.16) 0px 3px 6px, rgba(0, 0, 0, 0.23) 0px 3px 6px;
	--bs-toast-header-color: #6c757d;
	--bs-toast-header-bg: transparent;
	--bs-toast-header-border-color: transparent;
	z-index: 9002;
	width: 100%;
	height: 100%;
	overflow-x: hidden;
	overflow-y: auto;
	outline: 0;
}

.modal-backdrop {
	z-index: 9001;
}

.modal.show,
.modal-open {
	padding-right: 0px !important;
}
.modal::-webkit-scrollbar {
	display: none;
}
.modal::-webkit-scrollbar-track {
	display: none;
}
.modal::-webkit-scrollbar-thumb {
	display: none;
}

.modal.show .modal-dialog {
	-webkit-transform: none;
	-ms-transform: none;
	transform: none;
}

.modal.fade .modal-dialog {
	-webkit-transition: -webkit-transform 0.3s ease-out;
	transition: -webkit-transform 0.3s ease-out;
	-o-transition: transform 0.3s ease-out;
	transition: transform 0.3s ease-out;
	transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
}

.modal-dialog-centered {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	min-height: calc(100% - var(--bs-modal-margin) * 2);
}

.modal-dialog {
	position: relative;
	width: auto;
	margin: var(--bs-modal-margin);
	pointer-events: none;
}

.modal-content {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	width: 100%;
	color: var(--modal-text);
	pointer-events: auto;
	background-image: url("../images/design/hero.webp");
	background-position: center;
	background-size: cover;
	border: none;
	border-radius: 0;
	outline: 0;
	padding: 3rem;
	-webkit-box-shadow: rgba(17, 17, 26, 0.1) 0px 4px 16px, rgba(17, 17, 26, 0.1) 0px 8px 24px, rgba(17, 17, 26, 0.1) 0px 16px 56px;
	box-shadow: rgba(17, 17, 26, 0.1) 0px 4px 16px, rgba(17, 17, 26, 0.1) 0px 8px 24px, rgba(17, 17, 26, 0.1) 0px 16px 56px;
}

.modal-header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 2rem;
	margin-bottom: 1rem;
	border-bottom: none;
	border-radius: 25px;
	background-color: var(--modal-bg);
	-webkit-box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
}

.modal-header .btn-close {
	position: absolute;
	top: 1.5em;
	right: 1.5em;
}

@-webkit-keyframes maskSize {
	from {
		-webkit-mask-size: 90%;
		mask-size: 90%;
	}

	to {
		-webkit-mask-size: 100%;
		mask-size: 100%;
	}
}

@keyframes maskSize {
	from {
		-webkit-mask-size: 90%;
		mask-size: 90%;
	}

	to {
		-webkit-mask-size: 100%;
		mask-size: 100%;
	}
}

.modal-header .btn-close,
.toast-header .btn-close {
	background: var(--modal-x-button);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M24 20.188l-8.315-8.209 8.2-8.282-3.697-3.697-8.212 8.318-8.31-8.203-3.666 3.666 8.321 8.24-8.206 8.313 3.666 3.666 8.237-8.318 8.285 8.203z'/%3E%3C/svg%3E");
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M24 20.188l-8.315-8.209 8.2-8.282-3.697-3.697-8.212 8.318-8.31-8.203-3.666 3.666 8.321 8.24-8.206 8.313 3.666 3.666 8.237-8.318 8.285 8.203z'/%3E%3C/svg%3E");
	opacity: 1;
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: 90%;
	-webkit-mask-position: center;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: 90%;
	-webkit-transition: background 0.25s ease-in-out;
	-o-transition: background 0.25s ease-in-out;
	transition: background 0.25s ease-in-out;
}

.modal-header .btn-close:hover,
.toast-header .btn-close:hover {
	background: var(--modal-x-button-hover);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M24 20.188l-8.315-8.209 8.2-8.282-3.697-3.697-8.212 8.318-8.31-8.203-3.666 3.666 8.321 8.24-8.206 8.313 3.666 3.666 8.237-8.318 8.285 8.203z'/%3E%3C/svg%3E");
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M24 20.188l-8.315-8.209 8.2-8.282-3.697-3.697-8.212 8.318-8.31-8.203-3.666 3.666 8.321 8.24-8.206 8.313 3.666 3.666 8.237-8.318 8.285 8.203z'/%3E%3C/svg%3E");
	opacity: 1;
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: 100%;
	-webkit-mask-position: center;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: 100%;
	-webkit-animation-name: maskSize;
	animation-name: maskSize;
	-webkit-animation-duration: 0.25s;
	animation-duration: 0.25s;
}

.modal-title {
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	padding: 0 1em;
	line-height: 1;
	font-size: 2.25rem;
}

.modal-body {
	position: relative;
	-webkit-box-flex: 1;
	-ms-flex: 1 1 auto;
	flex: 1 1 auto;
	background-color: var(--modal-bg);
	padding: 2rem;
	border-radius: 25px;
	-webkit-box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
}

.modal-footer {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);
	background-color: var(--bs-modal-footer-bg);
	border-top: none;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}
.modal-open .modal::-webkit-scrollbar,
.modal-open .modal::-webkit-scrollbar-track,
.modal-open .modal::-webkit-scrollbar-thumb {
	display: none;
}

@media (max-width: 992px) {
	.modal-header .btn-close {
		position: absolute;
		top: 0.85em;
		right: 0.85em;
	}
	.modal-content {
		padding: 2rem;
	}
}
@media (min-width: 576px) {
	.modal {
		--bs-modal-margin: 1.75rem;
		--bs-modal-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
	}

	.modal-dialog {
		max-width: var(--bs-modal-width);
		margin-right: auto;
		margin-left: auto;
	}
}

/* calendar */

#calendar-events > div > .card {
	border: none;
	background-color: var(--color-2);
	-webkit-box-shadow: rgba(9, 30, 66, 0.25) 0px 4px 8px -2px, rgba(9, 30, 66, 0.08) 0px 0px 0px 1px;
	box-shadow: rgba(9, 30, 66, 0.25) 0px 4px 8px -2px, rgba(9, 30, 66, 0.08) 0px 0px 0px 1px;
}

#calendar-events > div > .card > .card-header {
	text-align: center;
	font-weight: bolder;
}

#calendar-events div.row.h-100.m-0 > div.col-md-6.p-0.my-auto.text-center > div > div > h5,
#calendar-events div.row.h-100.m-0 > div.col-md-10.p-0.my-auto.text-center > div > div > h5 {
	font-weight: bolder;
	font-size: 1rem;
}

#calendar-events div.row.h-100.m-0 > div.col-md-6.p-0.my-auto.text-center > div > div .card-title,
#calendar-events div.row.h-100.m-0 > div.col-md-10.p-0.my-auto.text-center > div > div > .card-title {
	font-weight: bolder;
	font-size: 1.5rem;
}

#calendar-events > div > .card > .card-body {
	text-align: center;
}

#calendar-events > div > .card > .card-body > img {
	margin-right: auto;
	margin-left: auto;
}

#calendar-events > div > .card > .card-footer {
	text-align: center;
	font-weight: bold;
	padding: 0;
	border: none;
}

#calendar-events div.row.h-100.m-0 > div.col-md-2.p-0.m-0.text-center.date-bg > div > div > h3,
#calendar-events div.row.h-100.m-0 > div.col-md-2.p-0.m-0.text-center.date-bg > div > div > h2 {
	color: var(--main-accent-text) !important;
	margin-top: 2rem;
	margin-bottom: 2rem;
}

#calendar-events div.row.h-100.m-0 > div.col-md-10.p-0.my-auto.text-center > div > div > div,
#calendar-events div.row.h-100.m-0 > div.col-md-6.p-0.my-auto.text-center > div > div > div > p {
	color: var(--text) !important;
}

.date-bg > div {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

@media (max-width: 768px) {
	.date-bg > div > div {
		display: flex;
		gap: 10px;
	}
}

#calendar-events .fa-calendar-plus {
    position: absolute;
    right: 1rem;
    top: 0.75rem;
    color: var(--color-2);
    font-size: 1.25rem;
}

#calendar-events .fa-calendar-plus:hover {
    position: absolute;
    right: 1rem;
    top: 0.75rem;
    color: var(--color-1);
    font-size: 1.25rem;
    cursor: pointer;
}

@media (max-width: 768px) {
	#calendar-events .fa-calendar-plus {
		position: absolute;
		right: 1rem;
		top: 0.75rem;
		color: var(--color-3);
		font-size: 1.5rem;
	}
	
	#calendar-events .fa-calendar-plus:hover {
		position: absolute;
		right: 1rem;
		top: 0.75rem;
		color: var(--color-1);
		font-size: 1.5rem;
		cursor: pointer;
	}
}

.events-calendar {
	margin-bottom: 3rem;
}

.cta-button.btn.btn-template {
	height: 100%;
	width: 100%;
	margin: 0;
	border-radius: 0;
	border: none;
	outline: none;
	color: var(--main-accent);
	color: var(--main-accent-text);
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	-ms-border-radius: 0;
	-o-border-radius: 0;
	-webkit-box-shadow: 0px 0px 0px rgb(0, 0, 0, 0) !important;
	box-shadow: 0px 0px 0px rgb(0, 0, 0, 0) !important;
}

.cta-button.btn.btn-template:hover,
.cta-button.btn.btn-template:focus,
.cta-button.btn.btn-template:active {
	background-color: var(--secondary-accent);
	color: var(--secondary-accent-text);
	border: none;
	outline: none;
}

#calendar-events .card-img-top {
	width: 100%;
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	-ms-border-radius: 0;
	-o-border-radius: 0;
	margin-right: -1px;
}

.date-bg {
	background-color: var(--main-accent) !important;
	color: var(--main-accent-text) !important;
}

@media (max-width: 768px) {
	.subscribeBtn {
		margin-bottom: 2rem;
	}
}

.grecaptcha-badge {
	width: 70px !important;
	overflow: hidden !important;
	-webkit-transition: all 0.3s ease !important;
	-o-transition: all 0.3s ease !important;
	transition: all 0.3s ease !important;
	left: 4px !important;
	bottom: 4px !important;
	border-radius: 2px;
}
.grecaptcha-badge:hover {
	width: 256px !important;
}

/* ------ Review Carousel ------ */

#reviews svg.reviews-bg {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#reviews svg.reviews-bg path {
	fill: var(--color-1);
	width: 100%;
	height: 100%;
}

#reviews {
	position: relative;
}

#reviews .truncate {
	display: -webkit-box;
	max-width: 100%;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

#reviews .parallax-bg {
	position: relative;
	height: auto;
	overflow: hidden;
}

#reviews .testimonials-overlay {
	padding-top: 0rem;
	padding-bottom: 0rem;
	width: 100%;
	height: 100%;
	text-align: center;
	/* -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 22px 70px 4px inset;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 22px 70px 4px inset; */
}

.c-spacer {
	padding-bottom: 2rem;
}

#reviews .uk-slidenav {
	padding: 5px 10px;
	color: rgb(0 0 0 / 50%);
	opacity: 0;
}

#reviews .uk-slidenav svg {
	width: 15px;
	height: 23px;
}

#reviews .uk-slidenav:hover,
#reviews .uk-slidenav:focus,
#reviews .uk-slidenav:active {
	color: rgba(0, 0, 0, 1);
}

#reviews .card-header {
	background-color: transparent;
	height: 4rem;
	border-bottom: 0;
	padding-bottom: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

#reviews .card-body {
	background-color: transparent;
	text-align: center;
	padding: 0;
	padding-bottom: 0.5rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

#reviews .card-footer {
	background-color: transparent;
	color: var(--reviews-text);
	text-align: right;
}

#reviews .review-name-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
}

#reviews .review-body-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-top: 1rem;
	margin-bottom: 1rem;
}

#reviews .card {
	border-top: none;
	border-bottom: none;
	background-color: var(--reviews);
	border: 4px solid var(--reviews-border);
	border-radius: 0;
}

#reviews .review-text {
	font-size: 18px;
	color: var(--reviews-text);
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	margin-bottom: 0;
}

#reviews .review-date {
	color: var(--reviews-text);
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	font-size: 18px;
}

#reviews .review-header {
	color: var(--reviews-title);
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	top: 15px;
	left: 15px;
	margin-bottom: 0;
}

#reviews .uk-slider-items {
	cursor: ew-resize;
	padding-top: 3rem;
	padding-bottom: 3rem;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.source-logo {
	min-height: 2rem;
	max-height: 2rem;
}

.fa-star {
	color: var(--reviews-stars);
	font-size: 1.5rem;
	margin-left: 0.1rem;
	margin-right: 0.1rem;
}

@media (max-width: 768px) {
	#reviews .uk-slidenav {
		display: none;
	}

	#reviews .uk-slidenav svg {
		display: none;
	}

	#reviews .uk-slidenav:hover,
	#reviews .uk-slidenav:focus,
	#reviews .uk-slidenav:active {
		display: none;
	}

	.fa-star {
		color: var(--reviews-stars);
		font-size: 1rem;
		margin-left: 0.1rem;
		margin-right: 0.1rem;
	}
}

/* footer */

#footer {
	background-color: var(--footer);
	padding-top: 2rem;
	/* -webkit-box-shadow: rgb(217 217 217) 3px 3px 6px 0px inset, rgb(255 255 255 / 50%) 0px -3px 6px 1px inset; */
	/* box-shadow: rgb(217 217 217) 3px 3px 6px 0px inset, rgb(255 255 255 / 50%) 0px -3px 6px 1px inset; */
}

#footer .footer-nav {
	padding-bottom: 2rem;
	text-align: center;
	color: var(--footer-text);
}
#footer .footer-nav:hover,
#footer .footer-nav:focus,
#footer .footer-nav:active {
	color: var(--footer-text-hover);
}

#footer .footer-logo {
	padding-top: 2rem;
	text-align: center;
}

.copyright {
	padding-top: 2rem;
	padding-bottom: 0.5rem;
	text-align: center;
}

.copyright p,
.copyright a {
	font-size: 1rem !important;
	color: var(--footer-text);
}

.copyright a:hover,
.copyright a:active,
.copyright a:focus {
	font-size: 1rem !important;
	color: var(--footer-text-hover);
}

/* Spillover */

.spillover * {
	margin: auto;
}

.spillover {
	background-color: var(--color-1);
	padding: 9px 0 9px 0;
	text-align: center;
}

/* socials */

.social {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	list-style: none;
	padding-left: 0;
	margin-bottom: 0;
}

.social-vert {
	list-style: none;
	padding-left: 0;
	margin-bottom: 0;
	position: fixed;
	top: 80%;
	left: 0px;
	background-color: white;
	padding: 0.5rem 0.5rem 0.5rem 0.5rem;
	-webkit-transform: translateY(-80%);
	-ms-transform: translateY(-80%);
	transform: translateY(-80%);
	z-index: 10;
	border-radius: 0px 25px 25px 0px;
	-webkit-box-shadow: rgb(0 0 0 / 15%) 0px 2px 8px;
	box-shadow: rgb(0 0 0 / 15%) 0px 2px 8px;
}

@media (max-width: 992px) {
	.social-vert {
		padding: 0.25rem 0.1rem 0.25rem 0.25rem;
	}
}

.social li a,
.social-vert li a {
	background-color: transparent;
	background-color: var(--primary-color, #333);
	color: #fff !important;
	color: var(--secondary-color, #fff);
	-webkit-transition: color 300ms, background-color 300ms;
	-o-transition: color 300ms, background-color 300ms;
	transition: color 300ms, background-color 300ms;
	padding: 5px;
}

.social li a,
.social-vert li a {
	background-color: #333;
	background-color: var(--primary-color, #333);
	color: #fff !important;
	color: var(--secondary-color, #fff);
	-webkit-transition: color 300ms, background-color 300ms;
	-o-transition: color 300ms, background-color 300ms;
	transition: color 300ms, background-color 300ms;
	padding: 5px;
}

.social.large a,
.social-vert.large a {
	width: 4rem;
	height: 4rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 1.5rem;
}

.social.small-box a,
.social-vert.small-box a {
	width: 2.5rem;
	height: 2.5rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 1.5rem;
}

.social.dark a,
.social-vert.dark a {
	border-color: #333 !important;
	background-color: #333;
	color: #fff !important;
}

.social.transparent a,
.social-vert.transparent a {
	background-color: transparent;
	color: #fff !important;
}

.social.outline a,
.social-vert.outline a {
	background-color: white;
	color: #333 !important;
	color: var(--primary-color, #333) !important;
}

.social.circle a,
.social-vert.circle a {
	border-radius: 50%;
	margin-right: 2px;
	margin-bottom: 2px;
	border: 2pt solid;
	border-color: #333;
	border-color: var(--primary-color, #333);
	text-decoration: none;
}

.social li a:hover,
.social li a:focus,
.social-vert li a:hover,
.social-vert li a:focus {
	text-decoration: none;
	color: #085f68 !important;
	color: var(--primary-color) !important;
	background-color: #fff;
}

.social li a:hover,
.social li a:focus,
.social-vert li a:hover,
.social-vert li a:focus {
	text-decoration: none;
	color: #085f68 !important;
	color: var(--primary-color) !important;
	background-color: #fff;
}

.social.transparent li a:hover,
.social.transparent li a:focus,
.social-vert.transparent li a:hover,
.social-vert.transparent li a:focus {
	color: #085f68 !important;
	color: var(--primary-color) !important;
	background-color: transparent;
}

.social.outline a:hover,
.social.outine a:focus,
.social-vert.outline a:hover,
.social-vert.outine a:focus {
	background-color: #333;
	background-color: var(--primary-color, #333);
	color: #fff !important;
}

.social li a:focus,
.social-vert li a:focus {
	outline: 0;
	-webkit-box-shadow: 0 0 0 2pt #9c5816;
	box-shadow: 0 0 0 2pt #9c5816;
	-webkit-box-shadow: 0 0 0 2pt var(--outline);
	box-shadow: 0 0 0 2pt var(--outline);
}

.social .facebook,
.social-vert .facebook {
	--primary-color: #3b5998;
}

.social .twitter,
.social-vert .twitter {
	--primary-color: #000000;
}

.social .instagram,
.social-vert .instagram {
	--primary-color: #222222;
}

.social .google,
.social-vert .google {
	--primary-color: #4285f4;
}

.social .youtube,
.social-vert .youtube {
	--primary-color: #ff0000;
}

.social .yelp,
.social-vert .yelp {
	--primary-color: #ff1a1a;
}

.social .icon-link,
.social-vert .icon-link {
	-webkit-transition: text-shadow 0.3s;
	-o-transition: text-shadow 0.3s;
	transition: text-shadow 0.3s;
}

.social.circle li a,
.social-vert.circle li a {
	margin-right: 5px;
	border-width: 1px;
}

.social.small-box a,
.social.small-box a {
	width: 3rem;
	height: 3rem;
}

/* calendar modals */
[aria-labelledby="eventModal"] .modal-dialog {
	margin-top: 5rem;
}