.panel-footer {
	--surface-foreground: var(--blue);
	--surface-background: var(--blue);
	--text: var(--gray-100);

	color: var(--text);
	background-color: var(--surface-foreground);
	position: relative;
}

.panel-footer::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	background-image: url(/includes/public/assets/shared/header-footer/bos-footer.svg);
	z-index: 0;
	pointer-events: none;
	background-repeat: no-repeat;
}

.panel-footer .cta-container {
	background-color: var(--sw-text-color);
	border-bottom: 2px solid hsl(0deg 0% 100% / 60%);
}

.panel-footer .cta-container > div:not(:first-child) {
	position: relative;
}

.panel-footer .cta-container > div:not(:first-child)::before {
	content: '';
	pointer-events: none;
	position: absolute;
	left: 50%;
	top: 0;
	translate: -50% 0;
	display: block;
	width: calc(100% - var(--space-10));
	height: 2px;
	background-color: hsl(0deg 0% 100% / 37%);
}

.panel-footer .attributions {
	display: flex;
	flex-direction: column-reverse;
	align-items: center;
	padding-bottom: var(--space-4);
	gap: var(--space-4);
}

.panel-footer .attributions > p {
	font-size: 0.6875rem;
	font-weight: 100;
}

.panel-footer .footer-content-container,
.panel-footer .attribution-content-container {
	margin: 0 auto;
	padding: 0 var(--space-5);
	max-width: var(--width-base);
	text-align: center;
}

.panel-footer .footer-content-container {
	display: grid;
	gap: var(--space-5);
	padding-top: var(--space-10);
	padding-bottom: var(--space-8);
}

@media (min-width: 64em) {
	.panel-footer .footer-content-container {
		grid-template-columns: 1fr 1fr 0.42fr;
		text-align: left;
		padding-top: var(--space-16);
		padding-bottom: var(--space-16);
	}
}

.panel-footer .contentRender_name_plugins_core_textbox {
	margin: 0;
	padding: 0;
	max-width: none;
	color: #fff;
}
.panel-footer .contentRender_name_plugins_core_textbox > section {
	display: flex;
	flex-wrap: wrap;
	column-gap: 10px;
	max-width: 288px;
	margin-inline: auto;
}

.panel-footer .contentRender_name_plugins_core_textbox * {
	color: inherit;
}

.panel-footer .contentRender_name_plugins_core_textbox p {
	font-size: 0.8125rem;
	margin: 0;
	display: inline-block;
	font-weight: 100;
}

.panel-footer .contentRender_name_plugins_core_textbox i {
	font-size: 0.625rem;
	margin-right: var(--space-1);
}

.panel-footer .contentRender_name_plugins_core_textbox i.fa-map-marker-alt {
	margin-left: -14px;
}
.panel-footer .contentRender_name_plugins_core_textbox .divider {
	display: inline-block;
	translate: 5px 0;
}

.panel-footer .client-details {
	display: grid;
	grid-auto-rows: min-content;
	gap: var(--space-4);
	place-items: center;
	margin-bottom: var(--space-1);
}

@media (min-width: 64em) {
	.panel-footer .client-details {
		place-items: flex-start;
	}
}

.contentRender_name_plugins_common_logo_footer,
.panel-footer .logo-footer a {
	display: block;
	width: 287px;
}

.panel-footer .logo-footer img {
	display: block;
	width: 100%;
	height: auto;
}

.panel-footer .client-details p {
	font-size: var(--text-sm);
	line-height: var(--leading-snug);
}

.panel-footer .social-media {
	display: flex;
	align-items: center;
	justify-content: center;
}
.panel-footer .social-media .social-links {
	gap: var(--space-2);
}
.panel-footer .social-media .social-links a {
	font-size: 0.75rem;
	width: 33px;
}
.panel-footer .social-media .social-links a i {
	line-height: var(--leading-relaxed);
}

.panel-footer .attribution-content-container {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	padding-top: var(--space-2);
	padding-bottom: var(--space-2);
	justify-content: space-between;
	width: 100%;
	max-width: 378px;
}

.panel-footer .attribution-content-container p {
	font-size: var(--text-sm);
	line-height: var(--leading-snug);
}

.panel-footer .made-by-sv {
	display: block;
	width: 91px;
}

.panel-footer .made-by-sv img {
	display: block;
	width: 100%;
	height: auto;
}
.panel-footer .tripadvisor img {
	width: 70px;
}
.panel-footer .ma img {
	width: 80px;
}

/* Mobile Bottom Fixed Container */
.panel-footer .mobile-fixed {
	position: fixed;
	bottom: 0px;
	width: 100%;
	z-index: 9999;
}

.panel-footer .navigation-footer {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 9px 14px;
	justify-content: center;
	max-width: 320px;
	max-width: 280px;
	margin-inline: auto;
}
.panel-footer .navigation-footer li {
	position: relative;
	font-size: 0.6875rem;
	line-height: var(--leading-none);
	font-family: var(--font-display);
	font-weight: 300;
}
.panel-footer .navigation-footer li:after {
	content: '|';
	display: block;
	position: absolute;
	right: -9px;
	top: 0px;
}

.panel-footer .navigation-footer li:last-child:after {
	display: none;
}

@media (min-width: 64em) {
	.panel-footer .footer-content-container,
	.panel-footer .attributions {
		padding-inline: var(--space-4);
	}
	.panel-footer .attribution-content-container {
		padding-inline: 0;
	}
	.panel-footer {
		display: grid;
		grid-template-columns: 1fr 350px;
	}
	.panel-footer.no-ctas {
		grid-template-columns: 1fr;
	}
	.panel-footer .cta-container {
		order: 1;
		border-bottom: none;
		border-left: 1px solid #fff;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	.panel-footer .contentRender_name_plugins_core_textbox p {
		display: block;
		line-height: var(--leading-tight);
		position: relative;
	}
	.panel-footer .contentRender_name_plugins_core_textbox > section {
		display: block;
		max-width: 180px;
	}
	.panel-footer .contentRender_name_plugins_core_textbox i {
		margin-left: 0;
		font-size: 0.8125rem;
		margin-right: 0;
		position: absolute;
		left: -19px;
		top: 3px;
	}
	.panel-footer .contentRender_name_plugins_core_textbox i.fa-map-marker-alt {
		margin-left: 0;
	}
	.panel-footer .contentRender_name_plugins_core_textbox .divider {
		display: none;
	}
	.panel-footer .contentRender_name_plugins_core_textbox p:last-child {
		margin-top: var(--space-4);
	}
	.panel-footer .navigation-footer {
		flex-direction: column;
		align-items: flex-end;
		gap: 15px;
	}
	.panel-footer .navigation-footer li {
		font-size: 0.9375rem;
		text-align: right;
	}
	.panel-footer .navigation-footer li:after {
		display: none;
	}
	.panel-footer .attributions {
		flex-direction: row;
		max-width: var(--width-base);
		margin-inline: auto;
		padding-bottom: 0;
	}
	.panel-footer .attribution-content-container {
		flex-direction: row;
		margin-right: unset;
		max-width: unset;
		width: auto;
		gap: var(--space-8);
	}
	.panel-footer .made-by-sv {
		width: 117px;
	}
	.panel-footer .tripadvisor img {
		width: 74px;
	}
	.panel-footer .ma img {
		width: 105px;
	}
	.panel-footer .attributions > p {
		margin-left: var(--space-6);
		font-size: 0.8125rem;
	}
	.panel-footer .cta-container > div:not(:first-child)::before {
		height: 1px;
		background-color: #fff;
	}
	.panel-footer::before {
		background-position-x: 64%;
		background-position-y: 6%;
	}
	.contentRender_name_plugins_common_logo_footer,
	.panel-footer .logo-footer a {
		width: 247px;
	}
}

@media (min-width: 80em) {
	.panel-footer {
		grid-template-columns: 1fr 400px;
	}
	.panel-footer.no-ctas {
		grid-template-columns: 1fr;
	}
	.contentRender_name_plugins_common_logo_footer,
	.panel-footer .logo-footer a {
		width: 287px;
	}
	.panel-footer .client-details {
		margin-left: 24px;
	}
	.panel-footer .footer-content-container,
	.panel-footer .attributions {
		padding-inline: var(--space-8);
	}
}

@media (min-width: 95em) {
	.panel-footer::before {
		background-position-y: 22%;
		background-size: cover;
	}
}
