html {
	scroll-behavior: smooth;
	scroll-padding-top: 3.5rem;
}

.cta-buttons.has-booking-info {
	bottom: 65px;
	transition: 150ms all ease;
}

.scrolled .cta-buttons.has-booking-info {
	bottom: 30px;
}

.scrolled .booking-info {
	transform: translateY(100%);
}

.booking-info {
	width: 100%;
	/* padding-top: 30px; */
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 50001;
	background-color: #004138;
	text-transform: uppercase;
	display: flex;
	justify-content: center;
	padding: 18px;
	transition: 150ms transform ease;
	border-top: 2px solid #faf4ed;
	color: #faf4ed;
}

.booking-info:hover {
	.booking-info-content .arrow-right-svg {
		margin-left: 20px;
	}
}

.booking-info-content {
	margin: 0 auto;
	font-size: 14px;
	font-weight: 700;
	text-align: center;
}

.booking-info-content .arrow-right-svg {
	display: inline-block;
	margin-left: 10px;
	transition: 150ms margin-left ease;
}

/* FAQ */
.faq-terms {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	max-width: 750px;
	margin: 0 auto;
	padding-bottom: 75px;
}

.faq-term {
	margin: 16px;
}

.faq-term-name {
	font-weight: 600;
	color: #d59f22;
	border-bottom: 1px solid #d59f22;
	text-transform: uppercase;
	padding: 15px 0;
	max-width: 840px;
	margin: 0 auto;
	scroll-padding: 50px;
}

.zone-faq-overview .item .faq-more-content .faq-more-content-inner {
	border-bottom: none;
	padding-top: 15px;
	padding-bottom: 25px;
}

/* CTA buttons */

.cta-buttons {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

.cta-button-detail {
	color: #004138;
	font-size: 14px;
	line-height: 1;
	font-weight: 700;
	text-decoration: none;
	text-transform: uppercase;
	display: block;
	padding: 14px 30px 13px;
	border: none;
	border-radius: 43px;
	appearance: none;
	margin-top: 8px;
	margin-left: auto;
	visibility: hidden;
	opacity: 0;
	transform: translateY(10px);
	background-color: #faf4ed;
}

.cta-svg-arrow {
	transition: 150ms transform ease;
	transform-origin: center;
}

.cta-button:hover {
	.cta-svg-arrow {
		transform: rotate(-45deg);
	}
}

.cta-button.visible .cta-svg-arrow {
	transform: rotate(-90deg);
}

span.svg-graphic svg.icon-king-george-svg {
	width: 41px;
	height: 36px;
}

/* ROOFTOP */

.page-template-template-rooftop .page-header {
	background-color: #faf4ed;
}

.page-template-template-rooftop .page-header .page-header-text h1 {
	color: #004138;
}

.page-template-template-rooftop
	.page-header
	.page-header-text
	.wysiwyg-content {
	font-family: PrettyPen, Arial, Helvetica, serif;
	font-size: 3.6rem;
	line-height: 0.8;
	color: #d59f22;
}

.page-template-template-rooftop .zone-menu-with-tabs {
	padding: 180px 0;
}

.page-template-template-rooftop
	.menu-tabs
	.menu-tabs-content
	.tab-content
	.tab-title {
	font-family: PrettyPen, Arial, Helvetica, serif;
	font-size: 3rem;
	line-height: 0.8;
	margin-bottom: 2rem;
	color: #d59f22;
}

.page-template-template-rooftop
	.menu-tabs
	.menu-tabs-content
	.tab-content
	.tab-hours {
	margin: 40px 0;
}

.page-template-template-rooftop
	.menu-tabs
	.menu-tabs-content
	.tab-content
	.wysiwyg-content {
	font-size: 15px;
}

.page-template-template-rooftop
	.menu-tabs
	.menu-tabs-content
	.tab-content
	.wysiwyg-content.tab-extra {
	margin-bottom: 20px;
}

.page-template-template-rooftop
	.menu-tabs
	.menu-tabs-content
	.tab-content
	.tab-hours
	ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.page-template-template-rooftop
	.menu-tabs
	.menu-tabs-content
	.tab-content
	.tab-hours
	ul
	li {
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 17px 0;
	border-top: 1px solid #004138;
}
.page-template-template-rooftop
	.menu-tabs
	.menu-tabs-content
	.tab-content
	.tab-hours
	ul
	li:first-child {
	border-top: none;
}

.page-template-template-rooftop
	.menu-tabs
	.menu-tabs-content
	.tab-content
	.tab-hours
	ul
	li
	.tab-hours-day {
	padding-right: 10px;
}

.page-template-template-rooftop
	.menu-tabs
	.menu-tabs-content
	.tab-content
	.tab-hours
	ul
	li
	.tab-hours-hours {
	text-align: right;
	padding-left: 10px;
}

.page-template-template-rooftop .zone-rooftop-private-event .row {
	justify-content: space-between;
}

.page-template-template-rooftop .zone-rooftop-private-event .row img {
	width: 100%;
	height: auto;
}

.page-template-template-rooftop .zone-rooftop-private-event .row h3 {
	font-family: PrettyPen, Arial, Helvetica, serif;
	font-size: 3rem;
	font-weight: normal;
	line-height: 0.8;
	margin: 2rem 0;
	color: #d59f22;
}

.page-template-template-rooftop .zone-cta-blocks .zone-cta-blocks-inner {
	flex-wrap: wrap;
}

.page-template-template-rooftop
	.zone-cta-blocks
	.zone-cta-blocks-inner
	.zone-cta-blocks-block.block-green.block-full {
	flex: 1 100%;
	margin-bottom: 30px;
}

.page-template-template-rooftop
	.zone-cta-blocks
	.zone-cta-blocks-inner
	.zone-cta-blocks-block.block-green.block-full
	.block-inner {
	flex-direction: row;
	align-items: flex-end;
}

.page-template-template-rooftop
	.zone-cta-blocks
	.zone-cta-blocks-inner
	.zone-cta-blocks-block.block-gold {
	flex: 1;
}

.content-galleries h1 {
	text-align: center;
}

@media only screen and (min-width: 1px) and (min-width: 768px) {
	.header .header-tools .header-ctas {
		display: flex;
		flex-flow: wrap;
	}
}

header li .rooftop-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	padding: 11px 30px 10px;
	height: 100%;
}

@media only screen and (min-width: 1px) and (max-width: 991px) {
	header li .rooftop-btn {
		padding: 9px 16px 8px;
	}
}

@media only screen and (min-width: 1px) and (max-width: 1199px) {
	header li .rooftop-btn {
		padding: 9px 26px 8px;
	}
}

header .rooftop-status {
	border-radius: 100vw;
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	overflow: hidden;
	padding: 0 0.5rem;
}

header .rooftop-status .rooftop-status_inner {
	color: white;
	visibility: hidden;
	opacity: 0;
}

.nav-overlay .rooftop-btn_mobile {
	display: flex;
	align-items: center;
	gap: 0.75rem;
}

.nav-overlay .rooftop-status {
	border-radius: 100vw;
	width: auto;
	height: 20px;
	display: inline-flex;
	align-items: center;
	overflow: hidden;
	padding: 0.5rem;
}

.nav-overlay .rooftop-status .rooftop-status_inner {
	color: white;
	font-size: 0.7rem;
	letter-spacing: 0;
	font-weight: 700;
}

.rooftop-status {
	&.open {
		background-color: #609d70;
	}
	&.closed {
		background-color: #bd3617;
	}
}

.nav-overlay .nav-overlay-content .header-ctas-mobile {
	display: none;
}
