:root {
	--primary-background-color: black;
	--primary-text-color: white;
	--green: #85e4b4;

	--gray-900: #1c1c1c;
	--gray-800: #2A2A2A;
	--gray-600: #525252;
	--gray-500: #757575;
	--gray-400: #9e9e9e;
	--gray-100: #d9d9d9;

	--container-max-width: 1160px;
	--container-width: calc(100vw - 60px); /* 30px left/right padding */

	--header-height: 68px;

	--fallback-font-stack: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	/* TODO: change these variable names so font-family is at the beginning for easier use of autocomplete */
	--primary-font-family: 'Norway Sans Text', var(--fallback-font-stack);
	--display-font-family: 'Norway Sans Display - Regular', var(--fallback-font-stack);
	--display-em-font-family: 'Norway Sans Display - Fine', var(--fallback-font-stack);

	/* mobile font sizes - 1rem = 16px */
	--font-size-hero: 3.375rem; /* 54px - destination hero slider, uncommon */

	--font-size-h1: 3rem; /* 48px - textbox h1, content page hero, uncommon */
	--font-size-h2: 1.875rem; /* 30px textbox h2 (common in the mockups) */
	--font-size-h3: var(--font-size-h2); /* 18px - textbox h3 same as h2 on mobile*/
	--font-size-h5: 1.125rem; /* 18px -  map card title, side scroll text*/
	--font-size-h6: 14px;

	--font-size-item-title: 1.25rem; /* 20px - card titles, textbox h4 */

	--font-size-default: 1rem; /* 16px - normal/default text size */
	--font-size-small: .875rem; /* 14px - factbox text */
	--font-size-xs: .8125rem; /* 13px - tab names, footer nav items */
	--font-size-xxs: .75rem; /* 12px - transport section text */
	--font-size-xxxs: .6875rem; /* 11px - credits text */

	--line-height-default: 24px;
	--line-height-h1: 48px;
	--line-height-h2: 38px;
	--line-height-h3: var(--line-height-h2);
	--line-height-title: 1.2em;

	--margin-bottom-default: 26px;
	--margin-bottom-h2: 20px;

}


/* mobile app */
.safe-space-top {
	padding-top: env(safe-area-inset-top);
}

@media (min-width: 64em) {
	:root {
		/* desktop font sizes - 1 rem = 16px */
		--font-size-hero: 7.5rem; /* 120px - destination hero slider, uncommon */

		--font-size-h1: 4.625rem; /* 74px - textbox h1, content page hero, uncommon */
		--font-size-h2: 2.875rem; /* 46px textbox h2 (very common in the mockups) */
		--font-size-h3: 2.125rem; /* 34px - textbox h3, map card title, side scroll text*/
		--font-size-h5: 20px;
		--font-size-h6: 16px;

		--font-size-item-title: 1.375rem; /* 22px - card titles, textbox h4 */

		--font-size-default: 1.125rem; /* 18px - normal/default text size */
		--font-size-small: 1rem; /* 16px - factbox text */
		--font-size-xs: .9375rem; /* 15px - tab names, footer nav items */
		--font-size-xxs: .875rem; /* 14px - transport section text */
		--font-size-xxxs: .75rem; /* 12px - credits text */

		--header-height: 88px;

		--line-height-default: 28px;
		--line-height-h1: 74px;
		--line-height-h2: 48px;
		--line-height-h3: var(--line-height-h2);
		--line-height-title: 1.3em;

		--margin-bottom-default: 30px;
		--margin-bottom-h2: 30px;
	}
}

@font-face {
	font-family: 'Norway Sans Text';
	src: url('/includes/public/fonts/norwaysanstext-regular-webfont.woff2') format('woff2');
}

@font-face {
	font-family: 'Norway Sans Text';
	src: url('/includes/public/fonts/norwaysanstext-italic-webfont.woff2') format('woff2');
	font-style: italic;
}

@font-face {
	font-family: 'Norway Sans Text';
	src: url('/includes/public/fonts/norwaysanstext-bold-webfont.woff2') format('woff2');
	font-weight: 700;
}

@font-face {
	font-family: 'Norway Sans Text';
	src: url('/includes/public/fonts/norwaysanstext-bolditalic-webfont.woff2') format('woff2');
	font-weight: 700;
	font-style: italic;
}

@font-face {
	font-family: 'Norway Sans Display - Fine';
	src: url('/includes/public/fonts/norwaysansdisplay-fine-webfont.woff2') format('woff2');
}

@font-face {
	font-family: 'Norway Sans Display - Regular';
	src: url('/includes/public/fonts/norwaysansdisplay-regular-webfont.woff2') format('woff2');
}

/* CSS reset */
*,
*::before,
*::after {
	box-sizing:border-box;
	font-family: inherit;
	font-size: inherit;
	margin-top: 0;
}

::selection {
	background-color: rgba(149, 255, 201, .5);
}

html, body {
	background-color: var(--primary-background-color);
	color: var(--primary-text-color);
	font-family: var(--primary-font-family);
	margin: 0;
}

body {
	position: relative;
	font-size: var(--font-size-default);
}

a,
a:visited {
	color: var(--green);
	text-decoration: underline;
}

/* CSS reset back to foundation defaults like primary site */
button {
	font-family: "Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;
	font-weight: normal;
	font-size: 1rem;
	border-style: solid;
	border-width: 0;
	border-color: #007095;
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--display-font-family);
	font-weight: normal;
	margin-bottom: var(--margin-bottom-default);
	line-height: var(--line-height-title);
}

p {
	line-height: var(--line-height-default);
	margin-bottom: var(--margin-bottom-default);
}

h1 {
	font-size: var(--font-size-h1);
	line-height: var(--line-height-h1);
}

h2 {
	font-size: var(--font-size-h2);
	line-height: var(--line-height-h2);
	margin-bottom: var(--margin-bottom-h2);
}

h3 {
	font-size: var(--font-size-h3);
	line-height: var(--line-height-h3);
	margin-bottom: var(--margin-bottom-h2);
}

h4 {
	font-size: var(--font-size-item-title);
}

h5 {
	font-size: var(--font-size-h5);
}

h6 {
	font-size: var(--font-size-h6);
}

section {
	width: var(--container-width);
	max-width: var(--container-max-width);
	margin-left: auto;
	margin-right: auto;
}

.header-container {
	position: relative;
	z-index: 3; /* needs to be a higher index than the hero slider */
}

body.menu-open {
	overflow: hidden;
}

.menu-open .header-container {
	height: 100vh;
    overflow-y: scroll;
	position: fixed;
	top: 0;
	width: 100%;
}

.header-container header {
	background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.1));
	backdrop-filter: blur(20px); /* TODO: this value is a wild guess */
	overflow: visible;
}

.header-container header .inner {
	height: var(--header-height);
	width: var(--container-width);
	max-width: var(--container-max-width);
	margin-left: auto;
	margin-right: auto;
}

.header-container .logo {
	display: inline-block;
	transform: translateY(19px);
	width: 172px; /* mobile size */
}

.header-container .logo img {
	width: 100%;
}

.header-container .mobile-menu-toggle {
	position: absolute;
	right: 1em;
	margin-top: 14px;
	font-size: 28px;
	background: transparent;
	color: #fff;
}

.header-container .mobile-menu-toggle .fa-bars {
	cursor: pointer;
}

.main-nav {
	display: none;
	position: absolute;
	width: 100%;
	min-height: 100vh;
	top: 0;
	background: rgba(0,0,0,0.94);
	z-index: 3;
}

.main-nav--mobile {
	padding: 1em;
}

.main-nav--mobile.active {
	display: block;
}

.main-nav a {
	color: #fff;
	text-decoration: none;
	transition: .1s all linear;
}

.main-nav .mobile-close-container {
	text-align: right;
}

.main-nav .mobile-close {
	background-color: transparent;
	color: var(--green);
	font-size: 22px;
	cursor: pointer;
}

.main-nav--mobile > ol > li {
	display: block;
	margin-bottom: 1em;
}

.main-nav--mobile .about-menu-item,
.main-nav--mobile .destinations-menu-item {
	position: relative;
}

.main-nav--mobile .about-menu-item .icon::before,
.main-nav--mobile .destinations-menu-item .icon::before {
	position: absolute;
	left: -34px;
	content: '+';
	padding: 0 12px;
	transform: translateY(-1px);
}

.main-nav--mobile .about-menu-item > a.active .icon::before,
.main-nav--mobile .destinations-menu-item > a.active .icon::before {
	content: '-';
}

.main-nav--mobile .about-menu-item .dropdown,
.main-nav--mobile .destinations-menu-item .dropdown {
	display: none;
}

.main-nav--mobile .about-menu-item > a.active + .dropdown,
.main-nav--mobile .destinations-menu-item > a.active + .dropdown {
	display: block;
}

.main-nav > ol > li > a {
	font-weight: bold;
}

.main-nav .dropdown a:hover,
.main-nav .dropdown a.active {
	color: var(--green);
	text-decoration: underline;
}

.main-nav--mobile .dropdown .close-container {
	display: none;
}

.main-nav .dropdown ol {
	padding: 0;
	margin-bottom: 3.5em;
}

.main-nav .dropdown li {
	display: block;
	line-height: 1.8;
}

.main-nav--mobile .dropdown ol a {
	color: var(--gray-400);
}

.main-nav .vn-link {
	color: var(--green);
	font-size: var(--font-size-xxxs);
	font-weight: bold;
	text-decoration: underline;
}

.main-nav .vn-link-container {
	border-top: 1px solid var(--gray-600);
}

.main-nav .about-menu-item .vn-link-container {
	display: none;
}

/* begin: crowdriff */
.cr__gridRow {
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
}
/* end: crowdriff */

@media (min-width: 64em) {
	.header-container .logo {
		width: auto;
		transform: translateY(4px);
	}

	.header-container .mobile-menu-toggle,
	.main-nav--mobile {
		display: none !important;
	}

	.main-nav .mobile-close-container {
		display: none !important;
	}

	.header-container header {
		position: relative; /* this is for positioning the dropdown */
	}

	.header-container header .inner {
		display: flex;
		align-items: center;
	}

	.header-container header .inner  > :not(.logo) {
		flex: 1;
	}

	.main-nav {
		display: block;
		min-height: auto;
		text-align: right;
		position: static;
		height: unset;
		background: unset;
	}

	.main-nav > ol {
		margin-bottom: 0;
	}

	.main-nav > ol > li {
		display: inline-block;
		margin-left: 1em;
	}

	.main-nav .about-menu-item .vn-link-container {
		display: block;
	}

	.main-nav .dropdown {
		display: none;
		position: absolute;
		top: 100%;
		right: 0;
		background: rgba(0,0,0,0.9); /* another guess */
		width: 365px;
		text-align: left;
		padding: .9em 1.2em 3em 2.6em;
	}

	.main-nav .dropdown .close-container {
		text-align: right;
		margin-bottom: 1.9em;
	}

	.main-nav .dropdown .close {
		background-color: transparent;
		border: none;
		color: var(--green);
		font-size: 29px;
		cursor: pointer;
	}
}

.slideshow-container,
.destinations_detail {
	margin-top: calc(-1 * var(--header-height));
}

.slideshow-container:empty {
	margin-top: 0;
}

.contentRender_name_plugins_core_textbox {
	padding: 0 30px;
	margin: 0 auto 20px;
	width: 100%;
	max-width: 1220px;
}

/* design calls for extra space after text content and left aligned, however textbox is also used for title content before widgets where extra space is not needed and alignment should be centered */
.contentRender_name_plugins_core_textbox * {
	max-width: 880px;
}

.contentRender_name_plugins_core_textbox h1:last-child,
.contentRender_name_plugins_core_textbox h2:last-child,
.contentRender_name_plugins_core_textbox h3:last-child,
.contentRender_name_plugins_core_textbox h4:last-child,
.contentRender_name_plugins_core_textbox h5:last-child,
.contentRender_name_plugins_core_textbox h6:last-child {
	margin: 0 auto;
}

.contentRender_name_plugins_core_textbox > *:last-child:not(h1,h2,h3,h4,h5,h6) {
	margin-bottom: 80px;
}

@media (min-width: 1025px) {
	.contentRender_name_plugins_core_textbox > *:last-child:not(h1,h2,h3,h4,h5,h6) {
		margin-bottom: 130px;
	}
}

.contentRender_name_plugins_common_embed {
	width: 100%;
	margin-bottom: 80px;
}

/* two column panel */
.panel_custom_two_col {
	max-width: 1220px;
	padding: 0 30px;
	margin: 0 auto;
}

.panel_custom_two_col .contentRender_name_plugins_core_textbox {
	padding: 0;
}

@media (min-width: 1025px) {
	.panel_custom_two_col {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 30px;
	}

	.panel_custom_two_col .contentRender_name_plugins_core_textbox *:last-child:not(h1,h2,h3,h4,h5,h6) {
		margin-bottom: 40px;
	}
}

.contentRender_name_plugins_collections_type_custom_bookinglist {
	display: none; /* FIXME */
}

/* status icons */
.status-wrapper.show-outer-ring {
	/*
	if you need to embiggen this element, use transform:
	transform: scale(1.6);
	*/
	border-radius: 50%;
	background-color: rgba(28, 28, 28, 0.25);
	padding: 15px;
	position: relative;
}

.status-icon {
	z-index: 1;
	position: relative;
	display: inline-block;
	vertical-align: middle;
	width: 65px;
	height: 65px;
	transition: all ease 0.4s;
}

.status-wrapper.show-outer-ring .status-icon::before {
	content: '';
	position: absolute;
	top: -10px;
	right: -10px;
	bottom: -10px;
	left: -10px;
	border: 10px solid #5ee8ff; /* color is for 'try' */
	border-radius: 50%;
	opacity: 0.36;
	box-shadow: 0px 0px 20px 15px rgb(0 0 0); /* missing box shadow added when using outer ring */
}

.status-wrapper.show-outer-ring .status-icon.go::before {
	border-color: #85e4b4;
	opacity: .4225;
}

.status-wrapper.show-outer-ring .status-icon.wait::before {
	border-color: #ffb359;
	opacity: .3;
}

.status-icon svg {
	width: 65px;
	height: 65px;
}

.status-icon .cls-1 {
	fill: #757575;
}

.status-icon.wait .cls-2 {
	stroke: #ffb458;
}

.status-icon.wait.active .cls-2 {
	stroke-dashoffset: 170;
}

.status-icon.try .cls-2 {
	stroke: #5ef0ff;
}

.status-icon.try.active .cls-2 {
	stroke-dashoffset: 95;
}

.status-icon.go .cls-2 {
	stroke: #86e4b4;
}

.status-icon.go.active .cls-2 {
	stroke-dashoffset: 30;
}

.status-icon .cls-2 {
	fill: none;
	stroke-miterlimit: 10;
	stroke-width: 5px;
	stroke-dasharray: 190;
	stroke-dashoffset: 190;
	stroke-linecap: round;
	transition: all ease 0.4s;
}

.status-icon:after {
	position: absolute;
	top: calc(50% + 3px);
	left: 50%;
	transform: translate(-50%, -10px);
	font-size: 15px;
	line-height: 1;
	color: white;
}

.status-icon.wait:after {
	content: 'WAIT';
}

.status-icon.try:after {
	content: 'TRY';
}

.status-icon.go:after {
	content: 'GO';
}

.status-icon.tbd:after {
	content: 'TBD';
}

/* begin: t520417 - add a hover effect */
.status-wrapper:hover .status-icon:after {
	/* font-weight: 700; */
}

.status-wrapper:hover .status-icon.wait:after {
	color: rgb(255, 180, 88); /* #ffb458; */
	text-shadow: 0 0 10px rgba(255, 180, 88, 0.7);
}

.status-wrapper:hover .status-icon.try:after {
	color: rgb(94, 240, 255); /* #5ef0ff; */
	text-shadow: 0 0 10px rgba(94, 240, 255, 0.7);
}

.status-wrapper:hover .status-icon.go:after {
	color: rgb(134, 228, 180); /* #86e4b4; */
	text-shadow: 0 0 10px rgba(134, 228, 180, 0.7);
}
/* end: t520417 - add a hover effect */

/* begin: tab panel styling */
@media only screen {
	.panel-tab-container {
		position: relative;
		margin: 30px auto;
		opacity: 0;
	}

	.panel-tab-container.loaded {
		opacity: 1;
	}

	.panel-tab-container .panel-title {
		margin-bottom: 4px;
		font-family: var(--display-font-family);
		font-size: var(--font-size-h2);
		text-align: center;
		padding: 0 30px;
	}

	.panel-tab-container .tab-buttons {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		padding: 0 30px;
	}

	.panel-tab-container .tab-button {
		margin: 0 14px;
		padding: 0;
		text-align: center;
		color: var(--gray-400);
		background-color: transparent;
		border: none;
		cursor: pointer;
	}

	.panel-tab-container .tab-button:hover {
		text-decoration: underline;
	}

	.panel-tab-container .tab-button.active {
		color: var(--green);
		text-decoration: underline;
	}

	.panel-tab-container .tab-button .text-wrapper {
		font-family: var(--primary-font-family);
		font-size: var(--font-size-default);
	}

	.panel-tab-container .tab-wrapper {
		margin-top: 40px;
	}

	.panel-tab-container .tab-content {
		display: none;
	}

	.panel-tab-container .tab-content.active {
		display: block;
	}
}

@media (min-width: 64em) {
	.panel-tab-container {
		max-width: 1220px;
		margin: 60px auto;
	}

	.panel-tab-container .panel-title {
		margin-bottom: 45px;
		font-size: var(--font-size-h2);
		text-align: left;
	}

	.panel-tab-container .tab-buttons {
		justify-content: flex-start;
	}

	.panel-tab-container .tab-button {
		margin-left: 0;
		margin-right: 30px;
	}

	.panel-tab-container .tab-button .text-wrapper {
		font-size: 0.95rem;
	}
}
/* end: tab panel styling */


/* begin: credits (norway lights styling) */
@media only screen {
	.credits-container {
		position: absolute;
		bottom: 0;
		width: 100%;
	}

	.credits-container .credits {
		position: absolute;
		bottom: 0;
		width: 66px;
		height: 66px;
		font-size: var(--font-size-xxxs);
		line-height: 17px;
		background-color: transparent;
		color: var(--primary-text-color);
		overflow: hidden;
	}

	.credits-container.left .credits {
		left: 0;
	}

	.credits-container.right .credits {
		right: 0;
	}

	.credits-container .credits.open {
		bottom: 16px;
		width: calc(100% - 32px);
		margin: 0 auto;
		background-color: var(--primary-background-color);
		border-radius: 10px;
	}

	.credits-container.left .credits.open {
		left: 16px;
	}

	.credits-container.right .credits.open {
		right: 16px;
	}

	.credits-container .credits .credits-text {
		display: none;
		flex-direction: column;
		justify-content: center;
		width: 100%;
		height: 100%;
		padding: 0 16px;
		background-color: rgba(0, 0, 0, 0.5);
	}

	.credits-container .credits.open .credits-text.credits-mobile {
		display: flex;
	}

	.credits-container.left .credits.open .credits-text {
		padding-left: 48px;
	}

	.credits-container.right .credits.open .credits-text {
		padding-right: 48px;
	}

	.credits-container .credits .credits-toggle {
		position: absolute;
		bottom: 16px;
		width: 42px;
		height: 42px;
		background-color: rgba(0, 0, 0, 0.5);
		border-radius: 50%;
		cursor: pointer;
		z-index: 2;
	}

	.credits-container.left .credits .credits-toggle {
		left: 16px;
	}

	.credits-container.right .credits .credits-toggle {
		right: 16px;
	}

	.credits-container .credits .credits-toggle:before {
		content: '';
		display: block;
		width: 24px;
		height: 24px;
		margin: 9px auto;
		padding: 0;
		text-align: center;
		text-shadow: none;
		color: var(--primary-text-color);
		border: 2px solid var(--primary-text-color);
		border-radius: 50%;
	}

	.credits-container .credits.open .credits-toggle:before {
		border: 0;
	}

	.credits-container .credits .credits-toggle:after {
		content: 'i';
		position: absolute;
		top: 11px;
		left: 18px;
		font-size: 18px;
		line-height: 1;
	}

	.credits-container .credits.open .credits-toggle:after {
		content: 'X';
		border: none;
	}

	.credits-container .credits.open .credits-toggle {
		bottom: 0;
		background-color: transparent;
	}

	.credits-container.left .credits.open .credits-toggle {
		left: 2px;
	}

	.credits-container.right .credits.open .credits-toggle {
		right: 2px;
	}
}

@media (min-width: 40em) {
	.credits-container .credits.open {
		max-width: 500px;
	}

	.credits-container .credits .credits-toggle:before {
		border-width: 3px;
	}
}

@media (min-width: 64em) {
	.credits-container .credits-text {
		transition: opacity 0s;
	}

	.credits-container .credits.open .credits-text {
		transition: opacity 600ms;
	}

	.credits-container .credits.open .credits-text.credits-desktop {
		display: flex;
	}

	.credits-container .credits.open .credits-text.credits-mobile {
		display: none;
	}
}
/* end: credits (norway lights styling) */

/* begin: jQuery UI dialog styles */
@media only screen {
	body .ui-widget-overlay {
		display: none;
		z-index: 0;
	}

	body .ui-dialog {
		position: relative;
		z-index: 10;
		margin: 0;
		padding: 0;
		color: black;
		background-color: white;
		background-image: none;
		background-position: 0 0;
		background-size: 100% 100%;
		background-repeat: no-repeat;
		border: 1px solid black;
		border-radius: unset;
		box-shadow: 10px 10px 10px grey;
		z-index: 999;
	}

	body .ui-dialog .ui-dialog-titlebar,
	body .ui-draggable .ui-dialog-titlebar {
		padding: 7px;
		background-color: var(--green);
		background-image: none;
		background-position: 0 0;
		background-size: 100% 100%;
		background-repeat: no-repeat;
		border: none;
		cursor: default;
	}

	body .ui-dialog .ui-dialog-titlebar .ui-dialog-title {
		position: relative;
		font-weight: 700;
		font-size: 20px;
		line-height: 34px;
		color: black;
	}

	body .ui-dialog .ui-dialog-titlebar button.ui-dialog-titlebar-close {
		position: absolute;
		top: 9px;
		right: 9px;
		height: auto;
		width: auto;
		display: inline-block;
		margin: 0;
		padding: 5px 15px;
		color: black;
		background-color: white;
		background-image: none;
		background-position: 0 0;
		background-size: 100% 100%;
		background-repeat: no-repeat;
		border: 0 none;
		border-radius: 50px;
		outline: none;
		cursor: pointer;
	}

	body .ui-dialog .ui-dialog-titlebar-close .ui-icon-closethick {
		display: none;
	}

	body .ui-dialog .ui-dialog-titlebar button.ui-dialog-titlebar-close .ui-button-text {
		position: relative;
		top: 1px;
		padding: 0;
		font-weight: 700;
		font-size: 16px;
		line-height: 1;
		text-indent: 0;
	}

	body .ui-dialog .ui-dialog-content {
		padding: 20px;
	}

	body .ui-dialog .ui-dialog-content p {
		margin: 5px 0;
		font-weight: normal;
		font-size: 14px;
		line-height: 24px;
		color: black;
	}

	body .ui-dialog .ui-dialog-content ul {
		margin: 0 0 0 20px;
		padding: 0;
	}

	body .ui-dialog .ui-dialog-content ul li {
		font-size: 14px;
		line-height: 24px;
	}
}
/* end: jQuery UI dialog styles */


/*** FOOTER AREA ***/
@media only screen {
	footer {
		display: flex;
		flex-direction: column;
		margin: 0 auto;
		padding-top: 30px;
	}

	.footer-wrapper {
		width: 100%;
		max-width: var(--container-max-width);
		margin: 0 auto;
	}

	.footer-top,
	.footer-bottom {
		display: flex;
		flex-direction: column;
		max-width: 88%;
		margin: 0 auto;
	}

	.footer-col {
		margin-bottom: 15px;
		display: flex;
		flex-direction: row;
	}

	.footer-col .toggle {
		width: 15px;
		margin-right: 20px;
		cursor: pointer;
	}

	.footer-col .head {
		cursor: pointer;
	}

	.footer-col .head .toggle {
		display: flex;
	}

	.footer-col .title,
	.footer-col .toggle .plus,
	.footer-col .toggle .minus {
		font-family: var(--display-font-family);
		font-size: var(--font-size-item-title);
	}

	.footer-col .toggle .plus,
	.footer-col .toggle .minus {
		justify-content: center;
	}

	.footer-col .item {
		display: none;
	}

	.footer-col .toggle .minus {
		display: none;
	}

	.footer-col.open .toggle .minus {
		display: flex;
	}

	.footer-col.open .toggle .plus {
		display: none;
	}

	.footer-col.open .items {
		display: flex;
		flex-direction: column;
	}

	.footer-col.open .items .head {
		margin-bottom: 10px;
	}

	.footer-col.open .item {
		display: flex;
		margin-bottom: 5px;
		font-size: var(--font-size-h5);
	}

	.footer-col .item a {
		color: #858585;
		text-decoration: none;
	}

	.footer-col .item a:hover,
	.footer-col.open .item.active a {
		color: var(--green);
		text-decoration: underline;
		font-weight: bold;
	}

	.footer-social {
		padding-top: 55px;
		padding-bottom: 30px;
	}

	footer .hr {
		border-top: 2px solid #757575;
	}

	.footer-social .item {
		text-decoration: none;
		padding-right: 20px;
	}

	.footer-social .item.last {
		padding-right: 0;
	}

	.footer-social .item img {
		max-height: 40px;
		opacity: 0.5;
	}

	.footer-social .item:hover img {
		opacity: 1;
	}

	.footer-bottom {
		padding-top: 30px;
		padding-bottom: 20px;
	}

	.footer-bottom .logo {
		margin-bottom: 30px;
	}

	.footer-bottom .logo2 img {
		max-width: 190px;
	}

	.footer-alerts {
		display: none;
	}
}

@media (min-width: 64em) {
	footer {
		flex-direction: row;
	}

	.footer-top,
	.footer-bottom {
		display: flex;
		flex-direction: row;
		max-width: calc(100% - 40px);
		margin: 0 auto;
	}

	.footer-col .toggle {
		display: none;
	}

	.footer-top .footer-nav {
		display: flex;
		flex-basis: 78%;
	}

	.footer-top .footer-nav .footer-col {
		display: flex;
		flex-basis: 32%;
		margin-right: 1%;
	}

	.footer-col,
	.footer-col .head {
		padding-bottom: 15px;
	}

	.footer-col .head {
		cursor: default;
	}

	.footer-col .title {
		font-size: var(--font-size-h6);
	}

	.footer-col.open .item,
	.footer-col.open .items .head {
		margin-bottom: 0;
	}

	.footer-col .item a {
		font-size: var(--font-size-h6);
	}

	.footer-col .item.active a {
		color: var(--green);
		text-decoration: underline;
		font-weight: bold;
	}

	.footer-top .footer-social {
		padding: 0;
		flex-basis: 22%;
		display: flex;
		align-items: end;
		justify-content: end;
	}

	.footer-social .item:last-child img {
		padding-right: 0;
	}

	.footer-col .item {
		display: flex;
	}

	footer .hr {
		margin-top: 60px;
	}

	.footer-bottom {
		display: flex;
		justify-content: space-between;
		padding-top: 55px;
	}
}

@media (min-width: 75em) {
	.footer-top,
	.footer-bottom {
		display: flex;
		flex-direction: row;
		max-width: var(--container-max-width);
	}
}


/* begin: onetrust */

/* Hide cookie popup for localhost and internal links */
body.internal-url #onetrust-consent-sdk {
	display: none;
}

#onetrust-consent-sdk #onetrust-banner-sdk {
	background: #1a1a1a !important;
}

#onetrust-policy-text {
	color: #9e9e9e !important;
}

#onetrust-consent-sdk #onetrust-banner-sdk a[href] {
	color: var(--green) !important;
}

#onetrust-consent-sdk #onetrust-accept-btn-handler,
#onetrust-banner-sdk #onetrust-reject-all-handler {
	background-color: var(--green) !important;
	border-color: var(--green) !important;
	color: #000 !important;
}

#onetrust-consent-sdk #onetrust-pc-btn-handler, #onetrust-consent-sdk #onetrust-pc-btn-handler.cookie-setting-link {
	background-color: #9e9e9e !important;
	border-color: #9e9e9e !important;
	color: #000 !important;
}
/* end: onetrust */
