/*!
Theme Name: anzcro-web
Theme URI: http://underscores.me/
Author: ANZCRO
Author URI: http://anzcro.com.au
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: anzcro-web
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

anzcro-web is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
    - Colours
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small,
.small {
	font-size: 0.8125rem;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Variables
--------------------------------------------- */
:root{
	/* Colours */
	--primary-color: 	#192833;
	--secondary-color: 	#497596;
	--accent-color: 	#FB2464;
	--body-color: 		#192833;
	--light-copy-color:	#83919C;
	--border-color:		#BFD2E0;
	--midnight-blue: 	#192833;
	--kiwi-green: 		#65B32E;
	--cool-grey: 		#6B7A85;
	--burgundy: 		#93032E;
	--white: 			#ffffff;
	--black: 			#000000;
	--kiwi-green-b4:	#edf8e6;
	--kiwi-green-b3:	#caebb3;
	--kiwi-green-b2:	#a7de80;
	--kiwi-green-b1:	#84d14d;
	--kiwi-green-d1:	#487f21;
	--kiwi-green-d2:	#2b4c14;
	--kiwi-green-d3:	#0e1907;
	--cool-grey-b4: 	#edeff1;
	--cool-grey-b3: 	#cad0d4;
	--cool-grey-b2: 	#a7b1b8;
	--cool-grey-b1: 	#83919c;
	--cool-grey-d1: 	#63717c;
	--cool-grey-d2: 	#475158;
	--cool-grey-d3: 	#2b3135;
	--cool-grey-d4: 	#0e1012;
	--midnight-blue-b8:	#f4f7fa;
	--midnight-blue-b7:	#eaf0f5;
	--midnight-blue-b6:	#bfd2e0;
	--midnight-blue-b5:	#94b4cb;
	--midnight-blue-b4:	#6995b6;
	--midnight-blue-b3:	#497596;
	--midnight-blue-b2:	#34546b;
	--midnight-blue-b1:	#1f3240;
	--midnight-blue-d1: #142028;
	--midnight-blue-d2: #0a1115;
	--burgundy-b6: 		#fee0e9;
	--burgundy-b5: 		#fda1bd;
	--burgundy-b4: 		#fc6390;
	--burgundy-b3: 		#fb2464;
	--burgundy-b2: 		#db0444;
	--burgundy-b1: 		#9c0331;
	--burgundy-d1: 		#5e021d;
	--burgundy-d2: 		#1f010a;
	--hot: 				#F99E26;
	--hotter: 			#F76728;
	--cold: 			#6995b6;
	/* Easing */
	/*--snap: cubic-bezier(0.755, 0.00750, 0.100, 1.00);*/
	--snap: cubic-bezier(.4,0,.2,1);
	/* Transform */
	--map-start: 		scale(1) translate(0,0);
}

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: var(--body-color);
	font-family: roboto, Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2.h1{
	clear: both;
	font-family: canada-type-gibson, roboto, Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-weight: 500;
	font-size: 2.75rem;
	line-height: 1.2;
	margin: 0 0 1.5rem;
}

h1.heading-2,
h2:not(.h1),
h3,
h4,
h5,
h6 {
	clear: both;
	font-family: fira-sans-compressed, roboto, Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-weight: 600;
	margin-bottom: 1.5rem;
}

h2:not(.h1),
h1.heading-2{
	font-size: 2rem;
}

h3{
	font-size: 1.5rem;
}

h4{
	font-size: 1.125rem;
}

h5,
h6{
	font-size: 0.875rem;
	text-transform: uppercase;
}

p{
	margin: 0 0 1.5rem;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

.nowrap{
	white-space: nowrap;
}

@media screen and (min-width: 75em) { /* 1200px */
	h1,
	h2.h1{
		font-size: 3.5rem;
	}

	h2:not(.h1){
		font-size: 2.25rem;
	}
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: var(--border-color);
	border: 0;
	height: 1px;
	margin-bottom: 1.5rem;
}

ul,
ol {
	margin: 0 0 1.5rem;
	padding-left: 1.5rem;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

img {
	height: auto;
	max-width: 100%;
	display:block;
}

figure {
	margin: 1.5rem 0;
}

table {
	margin: 0 0 1.5rem;
	width: 100%;
	border-color: var(--border-color);
}

/* Links
--------------------------------------------- */
a {
	color: var(--midnight-blue-b3);
}

a:visited {
	color: var(--midnight-blue-b3);
}

a:hover,
a:focus,
a:active {
	color: var(--midnight-blue-b5);
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

a.styled-link{
	font-size: 0.9375rem;
	font-weight: 600;
}

/* Forms & Buttons
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
a.btn{
	display: inline-block;
	font-size: 0.9375rem;
	font-weight: 600;
	border: 1px solid;
	border-color: var(--primary-color);
	border-radius: 1.5rem;
	background-color: var(--primary-color);
	color: #fff;
	line-height: 1.125rem;
	padding: 0.875rem 1.5rem;
	text-decoration: none;
	transition: all 0.15s;
}

a.btn-icon{
	padding: 0.875rem;
	border-radius: 50% !important;
}

a.btn-icon i{
	width: 1rem;
	text-align: center;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
a.btn:hover{
	cursor: pointer;
	background-color: var(--midnight-blue-b3);
	border-color: var(--midnight-blue-b3);
}

button.menu-toggle:hover{
	background-color: inherit;
	border-color: inherit;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus,
a.btn:active,
a.btn:focus {
	border-color: var(--midnight-blue-b3);
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

input[type="radio"]{
	appearance: none;
	border-radius: 50%;
	width: 1rem;
	height: 1rem;
	border: 0.125rem solid var(--border-color);
	transition: 0.1s all linear;
	margin-right: 0.375rem;
	position: relative;
	top: 0.125rem;
}

input[type="radio"]:checked{
	border-width: 0.375rem;
	border-color: var(--kiwi-green-b1);
}

input[type="radio"]:disabled{
	background-color: var(--border-color);
}

select {
	border: 1px solid var(--border-color);
}

textarea {
	width: 100%;
}

button.btn-sml,
input[type="button"].btn-sml,
input[type="reset"].btn-sml,
input[type="submit"].btn-sml,
a.btn-sml{
	font-size: 0.8125rem;
	line-height: 1rem;
	padding: 0.5rem 0.875rem;
	border-radius: 1.0625rem;
}

a.btn-sml.btn-icon{
	padding: 0.5rem;
}

.btn-block{
	display:block !important;
	width: 100%;
	text-align: center;
}

.btn-pill{
	border-radius: 1.5rem !important;
}

.btn-sml.btn-pill{
	border-radius: 1.0625rem !important;
}

.btn-light{
	background-color: var(--midnight-blue-b7) !important;
	border-color: var(--border-color) !important;
	color: var(--midnight-blue) !important;
}

a.btn.selectable,
button.selectable{
	opacity: 0.75;
}

a.btn.selectable.selected,
button.selectable.selected,
a.btn.selectable:hover,
button.selectable:hover{
	opacity: 1;
}

.btn-white{
	background-color: var(--white) !important;
	border-color: var(--border-color) !important;
	color: var(--midnight-blue) !important;
}

.btn-green{
	background-color: var(--kiwi-green-b1) !important;
	border-color: var(--kiwi-green) !important;
	color: var(--midnight-blue) !important;
}

.outline{
	border-color: var(--white) !important;
}

.dark-outline{
	border-color: var(--midnight-blue-b2) !important;
}

a.btn.selectable.selected,
button.selectable.selected,
.btn-light.outline,
.btn-white.outline,
.btn-green.outline{
	border-color: var(--midnight-blue) !important;
}

.btn-light:not(.selected):hover,
.btn-white:not(.selected):hover{
	background-color: var(--white) !important;
	border-color: var(--midnight-blue-b3) !important;
	color: var(--midnight-blue-b3) !important;
}

.btn-green:hover{
	background-color: var(--kiwi-green-b2) !important;
	border-color: var(--kiwi-green) !important;
}

.icon-left{
	padding-left: 1.25rem !important;
}

.icon-right{
	padding-right: 1.25rem !important;
}

.btn-sml.icon-left{
	padding-left: 0.75rem !important;
}

.btn-sml.icon-right{
	padding-right: 0.75rem !important;
}

.icon-left i{
	margin-right: 0.125rem;
}

.icon-right i{
	margin-left: 0.125rem;
}

.btn-block.icon-left,
.btn-block.icon-right{
	display:flex !important;
	align-items: center;
	justify-content: space-between;
}

.btn-block.icon-left i,
.btn-block.icon-right i{
	width: 1rem;
}

.btn-block.icon-left span,
.btn-block.icon-right span{
	flex: 1 0 0;
}

button.card_save,
a.btn.card_resource_download{
	background-color: transparent;
	border: none;
	position: absolute;
	top: 0.425rem;
	right: 0.425rem;
	font-size: 1.375rem;
	padding: 0.75rem;
	z-index: 4;
}

button.card_save i,
a.btn.card_resource_download i{
	position: relative;
	text-shadow: 0 2px 0 rgba(25,40,51,0.24);
	transition: transform 0.2s var(--snap);
	transform: scale(1);
}

button.card_save:hover i,
a.btn.card_resource_download:hover i{
	transform: scale(1.2);
}

button.card_save i:before{
	position: relative;
	z-index: 5;
}

button.card_save.selected{
	animation-name: scaleIn;
	animation-duration: 0.25s;
	animation-fill-mode: both;
	animation-timing-function: var(--snap);
}

button.card_save i:after{
	position: absolute;
	z-index: 4;
	content: '\f004';
	color: var(--midnight-blue);
	opacity: 0.5;
	font-weight: 600;
	left:0;
	text-shadow: none;
}

button.card_save.selected i:after{
	color: var(--kiwi-green);
	opacity: 1;
}

button.fav-btn.has-label.selected i:before{
	content: '\f00C';
}

@media screen and (min-width: 62em) { /* 992px */
	.btn-block.icon-right.icon-left-992{
		flex-direction: row-reverse;
		padding-left: 1.25rem !important;
		padding-right: 1.5rem !important;
	}
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
.contained > *,
.entry-content--single-blog > *,
.entry-meta--single-blog > div,
.entry-footer--single-blog > div{
	margin-left: 1.75rem;
	margin-right: 1.75rem;
}

.entry-meta--single-blog > div{
	margin: 1.75rem;
	padding-bottom: 1.5rem;
	border-bottom: solid 1px var(--border-color);
}

.entry-content--single-blog figure{
	margin-top: 2rem;
}

@media screen and (min-width: 48em) { /* 768px */

	.entry-meta--single-blog > div,
	.entry-footer--single-blog > div{
		width: 41.75rem;
		margin-left: auto;
		margin-right: auto;
	}

	.entry-content--single-blog{
		display: grid;
		grid-template-columns: 1fr 1fr 41.75rem 1fr 1fr;
	}

	.entry-content--single-blog > *{
		grid-column: 3;
		margin-top:0;
		margin-left: 0;
		margin-right: 0;
	}

	.entry-content--single-blog > figure.full-bleed{
		width:100% !important;
		grid-column: 1 / -1;
	}

	figure.full-bleed img{
		width:100%;
	}
}

@media screen and (min-width: 62em) { /* 992px */

	.entry-content--single-blog{
		grid-template-columns: 1fr 7.125rem 41.75rem 7.125rem 1fr;
	}
	
	.entry-content--single-blog > figure:not(.full-bleed){
		width:100% !important;
		grid-column: 2 / -2;
	}

	.itinerary-map-wrapper{
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		grid-gap: 3rem;
	}

	.itinerary-map-wrapper .itinerary{
		grid-column: 1 / 4;
	}

	.itinerary-map-wrapper.has_itinerary.has_map .itinerary{
		grid-column: 1 / 3;
	}

	.contained--992-50w > *{
		max-width: calc( 50% - 0.5rem );
		margin-left: auto;
		margin-right: auto;
	}

	.contained--992-83w > *{
		max-width: calc( 83.3333% - 0.5rem );
		margin-left: auto;
		margin-right: auto;
	}
}

@media screen and (min-width: 75em) { /* 1200px */

	.contained > *{
		width: 100%;
		max-width: 72.5rem;
		margin-left: auto;
		margin-right: auto;
	}
}

@media screen and (min-width: 90em) { /* 1440px */
	.contained > *{
		max-width: 84.5rem;
	}
}

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Header & Navigation
--------------------------------------------- */
.site-header{
	position: fixed;
	width: 100%;
	top:0;
	display:flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
	z-index: 35;
	box-shadow: 0 0.25rem 0.75rem rgba(20,32,40,0.18);
	transition: top 0.25s var(--snap);
}

.admin-bar .site-header{
	top: 2rem;
}

.site-branding{
	order: 1;
	margin-left: 1.75rem;
	flex: 1 0 auto;
}

.site-branding img{
	transform: translateY(-0.25rem);
}

.site-title{
	margin:0;
}

.site-header_links{
	order: 2;
	display:flex;
	align-items: center;
	height: 4.5rem;
}

.main-navigation {
	display: block;
	order: 3;
}

.main-navigation ul {
	display: block;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation a{
	display: block;
	text-decoration: none;
	color: #fff;
}

.main-navigation ul.menu > li.menu-item-has-children > a:after{
	content: '\f0d7';
	font-family: "Font Awesome 6 Sharp";
	font-weight: 900;
	display: block;
	width: 1rem;
	text-align: center;
	margin-left: 0.375rem;
	transform: scale(0.67);
}

.main-navigation ul.menu > li.menu-item-has-children:hover > a:after,
.main-navigation ul.menu > li.menu-item-has-children.focus > a:after{
	content: '\f0d8';
}

.main-navigation ul.sub-menu{
	height:auto;
	max-height: 0;
	overflow: hidden;
	opacity:0;
	transform-origin: 50% 0;
}

.menu-toggle{
	display: block;
	padding: 0.5rem;
	background-color: transparent;
	color: var(--midnight-blue-b6);
	border-radius: 0;
	border-width: 0;
	margin-right: 1.25rem;
}

.main-navigation.toggled ul{
	display:block;
}

.main-navigation ul li:hover > ul.sub-menu, 
.main-navigation ul li.focus > ul.sub-menu{
	opacity:1;
}

.main-navigation ul li:not(:hover,.focus) > ul.sub-menu{
	max-height: 0 !important;
}

.menu-toggle_icon,
.menu-toggle_icon > *{
	transition: transform var(--snap) 0.65s, opacity linear 0.45s;
	transform: rotateZ(0) translateY(0);
	transform-origin: center;
	opacity: 1;
}

.toggled .menu-toggle_icon{
	transform: rotateZ(180deg);
}

.toggled .menu-toggle_icon > line:first-child{
	transform: rotateZ(45deg) translateY(0.5rem);
}

.toggled .menu-toggle_icon > line:nth-child(2){
	transform: rotateY(90deg);
	opacity: 0;
}

.toggled .menu-toggle_icon > line:last-child{
	transform: rotateZ(-45deg) translateY(-0.5rem);
}

a.header_fav {
	position: relative;
	text-decoration: none;
	padding: 0.72rem 0.75rem;
	color: var(--midnight-blue-b6);
	margin-right: 0.5rem;
}

a.header_fav i{
	font-size: 1.375rem;
	line-height: 1;	
}

a.header_fav sup{
	display:none;
	position: absolute;
	top:0.375rem;
	right:-0.25rem;
	font-size: 0.6125rem;
	transform: scale(1);
}

a.header_fav sup span{
	display: block;
	width: 1.25rem;
	line-height: 0.75rem;
	text-align: center;
	padding: 0.25rem 0;
	background-color: var(--kiwi-green-b1);
	color: var(--midnight-blue);
	border-radius: 50%;
}

a.header_fav.active sup{
	display: block;
	animation-name: scaleIn;
	animation-duration: 0.15s;
	animation-fill-mode: both;
	animation-timing-function: var(--snap);
}

.main-navigation_extra-links hr{
	background-color: var(--midnight-blue-b2);
	margin: 0 2rem;
}

.main-navigation_extra-links a{
	display: flex;
	justify-content: space-between;
	align-items: center;
	line-height: 1;
	height: 3.5rem;
}

.main-navigation_extra-links a i{
	color: var(--midnight-blue-b6);
}

.main-navigation_extra-links a small{
	color: var(--kiwi-green-b1);
}

@keyframes scaleIn{
	from{
		transform: scale(0);
	}
	to{
		transform: scale(1);
	}
}

@media screen and (max-width: 47.99875em){ /* 767.98px */

	html.nav-expanded,
	body.nav-expanded{
		overflow: hidden;
	}

	.site-header{
		height: 4.5rem;
	}

	.nav-out .site-header{
		top: -4.5rem;
	}

	.admin-bar.nav-out .site-header{
		top: -2.5rem;
	}

	body:not(.has-hero-banner) .site-main{
		margin-top: 4.5rem;
	}

	.has-hero-banner .site-header{
		background: linear-gradient( to bottom, rgba(10,17,21,1), rgba(10,17,21,0));
		box-shadow: none;
	}

	.site-branding,
	.site-header_links,
	.menu-toggle{
		position: relative;
		z-index: 50;
	}
	
	.nav-menu-container{
		position: fixed;
		z-index: 40;
		display: none;
		width: 100vw;
		height: 100dvh;
		top: 0;
		left: -100vw;
		padding: 4.5rem 0 1.75rem;
		overflow-y: auto;
	}

	.admin-bar .nav-menu-container{
		height: calc(100dvh - 2.875rem);
		top: 2.875rem;
	}

	.nav-menu-container:before{
		content: '';
		display: block;
		width: 100vw;
		height: 4.5rem;
		position: fixed;
		top:0;
		background-color: var(--midnight-blue-b1);
		border-bottom: solid 1px var(--midnight-blue-b2);
	}

	.admin-bar .nav-menu-container:before{
		top: 2.875rem;
	}

	.main-navigation.toggled .nav-menu-container{
		display: flex;
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-start;
		left: 0;
		animation-name: menuIn;
	    animation-duration: 0.65s;
	    animation-timing-function: var(--snap);
	    animation-fill-mode: both;
	}

	@keyframes menuIn{
		0% { left: -100vw; }
		100% { left: 0; }
	}

	.main-navigation ul.menu{
		flex: 1 0 auto;
		margin-top: 4.5rem;
	}

	.main-navigation a {
		padding: 0.625rem 2rem;
		font-size: 1.125rem;
	}

	.main-navigation ul.menu > li > a{
		font-size: 1.375rem;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.main-navigation ul.sub-menu > li:last-child{
		margin-bottom: 1.5rem;
	}

	.main-navigation ul li.menu-item-has-children:hover, 
	.main-navigation ul li.menu-item-has-children.focus{
		background-color: var(--midnight-blue);
	}

	.hidden-sm--nav{
		display:none !important;
	}

	.main-navigation ul.sub-menu{
		transition: all var(--snap) 0.45s;
	}
}

@media screen and (min-width: 48em) { /* 768px */

	.site-header{
		flex-wrap: wrap;
		height: 9rem;
	}

	.nav-out .site-header{
		top: -9rem;
	}

	.admin-bar.nav-out .site-header{
		top: -7rem;
	}

	.site-header,
	.has-hero-banner .site-header{
		box-shadow: 0 0.5rem 1rem rgba(191,210,224,0.06);
	}

	body:not(.has-hero-banner) .site-main,
	.has-hero-banner .site-main{
		margin-top: 9rem;
	}

	.site-header_links,
	a.header_fav{
		margin-right: 1.75rem;
	}

	.menu-toggle,
	.main-navigation_extra-links{
		display: none;
	}

	.main-navigation{
		flex: 1 0 100%;
	}

	.main-navigation ul.menu{
		display: flex;
		width: 100%;
		padding: 0 1.75rem;
		background-color: var(--midnight-blue);
	}

	.main-navigation ul.menu,
	.main-navigation ul.menu > li,
	.main-navigation ul.menu > li > a{
		height: 4.5rem;
	}

	.main-navigation ul.menu > li > a{
		display:flex;
		align-items: center;
		padding: 0 1rem;
	}

	.main-navigation ul li:hover, 
	.main-navigation ul li.focus{
		background-color: var(--midnight-blue-d1);
	}

	.main-navigation ul.sub-menu{
		position: absolute;
		z-index: 45;
		background-color: var(--midnight-blue-d1);
		padding: 0 1.5rem;
	}

	.main-navigation ul li:hover > ul.sub-menu{
		transition: all var(--snap) 0.45s;
	}

	.main-navigation ul.sub-menu > li:not(:first-child){
		border-top: solid 1px var(--midnight-blue-b2);
	}

	.main-navigation ul.sub-menu > li:last-child{
		margin-bottom: 0.75rem;
	}

	.main-navigation ul.sub-menu > li > a{
		padding: 0.625rem 0;
		min-width: 12.5rem;
	}

	.main-navigation ul.sub-menu li:hover,
	.main-navigation ul.sub-menu li.focus{
		text-decoration: underline;
	}
}

@media screen and (max-width: 782px) { /* 782px - Admin Bar Change */
	.admin-bar .site-header{
		top: 2.875rem;
	}

	.admin-bar.nav-out .site-header{
		top: -6.125rem;
	}
}

@media screen and (min-width: 75em) { /* 1200px */

	.site-header{
		flex-wrap: nowrap;
		box-shadow: 0 0.25rem 0.75rem rgba(20,32,40,0.18);
	}

	.site-branding{
		margin-left: 2.5rem;
		flex: 0 0 auto;
	}

	.site-branding img{
		width: 9.5rem;
		height: 2.375rem;
		transform: translateY(-0.375rem);
	}
	
	.site-header_links{
		order: 3;
		margin-right: 2.5rem
	}

	.main-navigation {
		order: 2;
		flex: 1 0 auto;
	}

	.site-header,
	.main-navigation ul.menu,
	.main-navigation ul.menu > li,
	.main-navigation ul.menu > li > a{
		height: 6.125rem;
	}

	.nav-out .site-header{
		top: -6.125rem;
	}

	.admin-bar.nav-out .site-header{
		top: -3.25rem;
	}

	body:not(.has-hero-banner) .site-main{
		margin-top: 6.125rem;
	}

	.has-hero-banner .site-main{
		margin-top: 0;
	}

	.has-hero-banner .site-header{
		background: linear-gradient( to bottom, rgba(10,17,21,1), rgba(10,17,21,0));
		box-shadow: none;
	}

	.has-hero-banner .nav-menu-container{
		background-color: transparent;
	}

	.main-navigation ul.menu{
		background-color: transparent;
		padding: 0;
		margin: 0 2.5rem;
	}

	.main-navigation ul.menu > li > a{
		font-size: 1.125rem;
		padding: 0 1.25rem;
	}
}

@media screen and (min-width: 90em) { /* 1440px */
	.main-navigation ul.menu > li > a{
		padding: 0 1.5rem;
	}
}


.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/* Header Hero
--------------------------------------------- */
.header-hero{
	position: relative;
	aspect-ratio: 9 / 16;
	display:flex;
	width: 100%;
	height: 100%;
	flex-direction: column;
	align-items: stretch;
	justify-content: center;
}

.header-hero--blog{
	justify-content: flex-end;
}

.header-hero picture,
.header-hero picture:after{
	top:0;
	position: absolute;
	z-index: 1;
}

.header-hero picture,
.header-hero picture:after,
.header-hero img{
	aspect-ratio: 9 / 16;
	margin:0;
	object-fit: cover;
	width: 100%;
	max-width: 100%;
	display:block;
}

.header-hero--blog:not(.header-blog--has-image){
	aspect-ratio: 1 / 1;
}

.header-hero picture:after{
	content:'';
	background: linear-gradient( to top, rgba(25,40,51,0.8), rgba(25,40,51,0.32) 25% );
	mix-blend-mode: multiply;
}

.page-template-page-connect .header-hero picture:after{
	mix-blend-mode: hard-light;
}

.header-blog--has-image picture:after{
	background: linear-gradient( to top, rgba(25,40,51,0.80), rgba(25,40,51,0.32) 50% );
}

.header-hero hgroup,
.header-blog_footer{
	position: relative;
	z-index: 5;
}

.header-hero hgroup{
	margin-top: 4.5rem;
}

.header-hero--blog hgroup{
	margin-bottom: 1.75rem;
}

.header-hero hgroup h1,
.header-hero hgroup h2,
.header-hero hgroup p{
	margin-top: 0;
	margin-bottom: 0.75rem;
}

.header-hero hgroup p:last-child{
	margin-bottom: 0;
}

.header-hero hgroup .presented-by{
	display: flex;
	justify-content: center;
	text-align: center;
	transform: translateY(2rem);
}

.header-hero hgroup .presented-by_inner .logo{
	padding: 0.75rem 1.25rem;
	border-radius: 1.75rem;
	backdrop-filter: blur(20px) brightness(0.9);
}

.header-hero hgroup .presented-by img{
	display: block;
	width: auto;
	height: 4rem;
	aspect-ratio: auto !important;
	position: relative;
	z-index: 2;
}

.header-hero hgroup .presented-by small{
	display:inline-block;
	font-size: 0.75rem;
	margin-bottom: 0.5rem;
	padding: 0.25rem 0.75rem 0.375rem;
	border-radius: 0.75rem;
	backdrop-filter: blur(20px) brightness(0.9);
}

.tooltip--hero{
	position: absolute;
	z-index: 5;
	bottom: 0.75rem;
	right: 0.75rem;
	margin:0;
	width: auto;
}

.header-hero--blog .tooltip--hero{
	right: 0;
}

.header-hero_actions{
	display:flex;
	justify-content: center;
}

.header-hero_actions > button,
.header-hero_actions > a.btn{
	margin: 0.125rem 0.25rem;
}

@media screen and (min-width: 37.5em) { /* 600px */
	.header-hero,
	.header-hero picture,
	.header-hero picture:after,
	.header-hero img{
		aspect-ratio: 4 / 5;
	}

	.header-hero--blog:not(.header-blog--has-image){
		aspect-ratio: 2 / 1;
	}
}

@media screen and (max-width: 47.99875em){ /* 767.98px */
	.header-hero hgroup h1,
	.header-hero hgroup h2,
	.header-hero--blog hgroup > h1{
		font-size: 2.25rem;
	}
}

@media screen and (min-width: 48em) { /* 768px */
	.header-hero,
	.header-hero picture,
	.header-hero picture:after,
	.header-hero img{
		aspect-ratio: 3 / 2;
	}

	.header-hero:not(.header-hero--blog) hgroup{
		margin-top: 0;
	}

	.header-hero hgroup > *{
		width: calc(67% - 0.5rem);
	}

	.header-hero:not(.header-hero--blog) hgroup > *{
		margin-left: auto;
		margin-right: auto;
	}

	.header-hero .tooltip--hero{
		bottom: 1.75rem;
	}

	.header-hero:not(.header-hero--blog) .tooltip--hero{
		right: 1.75rem;
	}
}

@media screen and (min-width: 62em) { /* 992px */

	.header-hero--blog:not(.header-blog--has-image){
		aspect-ratio: auto;
		height: 24rem;
	}

	.header-hero,
	.header-hero picture,
	.header-hero picture:after,
	.header-hero img{
		aspect-ratio: 16 / 9;
	}

	.header-hero--blog hgroup > p{
		width: calc( 50% - 0.5rem );
	}
}

@media screen and (min-width: 75em) { /* 1200px */
	.header-blog--has-image picture:after{
		background: linear-gradient( to top, rgba(25,40,51,0.96), rgba(25,40,51,0.32) 50% );
	}

	.header-hero:not(.header-hero--blog) hgroup{
		margin-top: 3.125rem;
	}

	.header-hero:not(.header-hero--blog) hgroup > *{
		width: calc(50% - 0.5rem);
	}
}

@media screen and (min-width: 102.5em) { /* 1640px */
	.header-hero,
	.header-hero picture,
	.header-hero picture:after,
	.header-hero img{
		aspect-ratio: 2 / 1;
	}
}

/* Header Product, Resources
--------------------------------------------- */
.header-product,
.header-page{
	overflow: hidden;
}

.header-product_media{
	background: linear-gradient(to top, var(--midnight-blue-d1), var(--midnight-blue));
	overflow: hidden;
	position: relative;
}

.widget_gallery{
	display:block;
	position: relative;
}

.header-product_media a.gallery-launch,
.widget_gallery a.gallery-launch{
	position: absolute;
	bottom: 1rem;
	right: 1rem;
}

.header-product_gallery-grid,
.widget_gallery-grid{
	display: grid;
	grid-gap: 0.5rem;
	grid-template-columns: fit-content( calc(67% - 0.25rem) ) fit-content( calc(33% - 0.25rem) );
}

.header-product_gallery-grid img,
.widget_gallery-grid img{
	place-self: stretch stretch;
	object-fit: cover;
	border-radius: 0.25rem;
}

.header-product_gallery-grid img:first-child,
.widget_gallery-grid img:first-child{
	grid-row-end: span 2;
}

.header-product_gallery-grid,
.header-product_gallery-grid img{
	display:none;
}

.header-product_inner{
	margin-bottom: 1.5rem;
}

.header-page_inner{
	margin: 3.5rem 0;
}

.header-product_title{
	margin-top: 1.5rem;
}

.header-product_title .entry-meta{
	font-size: 0.9375rem;
}

.header-product_title .entry-meta span{
	display:block;
	margin-bottom: 0.375rem;
}

.header-product_pricing-actions{
	border-top: solid 1px var(--midnight-blue-b2);
	margin-top: 1.5rem;
	margin-bottom: 0.5rem;
	padding-top: 1.5rem;
}

.header-product_pricing{
	margin-bottom: 1.5rem;
}

.header-product_pricing .pricing{
	margin: 1rem 0;
	line-height: 1.25;
}

.header-product_pricing .pricing .price{
	font-size: 1.75rem;
}

.resource_actions{
	margin-top: 2rem;
	margin-bottom: 2rem;
}

.header-product_actions,
.offer-pricing_actions,
.resource_actions{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.header-product_actions > *,
.offer-pricing_actions > *,
.resource_actions > *{
	margin: 0.25rem 0;
}

.header-product_actions > button,
.offer-pricing_actions > button,
.resource_actions > *:not(:first-child),
.resource_actions-split > *{
	flex: 0 0 calc(50% - 0.25rem);
}

.resource_actions:not(.resource_actions-split) > *:nth-child(2):last-child{
	flex: 0 0 100%;
}

@media screen and (min-width: 62em) { /* 992px */

	.header-product_gallery{
		width: calc(100% - 3.5rem);
		margin: 1.5rem auto;
		position: relative;
	}

	.header-product_media img{
		border-radius: 0.25rem;
		margin: 0;
	}

	.header-product_featured{
		display: none;
	}

	.header-product_gallery-grid img,
	.widget_gallery-grid img{
		aspect-ratio: 16 / 9;
	}

	.header-product_gallery-grid img{
		display: block;
	}

	.header-product_gallery-grid{
		display: grid;
	}

	.header-product_inner{
		display: flex;
		width: calc(100% - 3.5rem);
		margin: 3.5rem auto;
		align-items: stretch;
		justify-content: space-between;
	}

	.header-product_title,
	.header-product_pricing-actions{
		margin: 0;
		display: flex;
		flex-direction: column;
		align-items: stretch;
	}

	.header-product_title{
		flex: 0 0 calc(50% - 0.5rem);
	}

	.header-page_title > *{
		max-width: calc( 75% - 0.5rem );
	}

	.header-product_pricing-actions{
		flex: 0 0 calc(50% - 0.5rem);
		border-top-width: 0;
		border-left: solid 1px var(--midnight-blue-b2);
		padding-top: 0;
		padding-left: 2.5rem;
	}

	.header-product_title hgroup,
	.header-product_pricing{
		flex-grow: 1;
	}

	.header-product_title .entry-meta{
		font-size: 1rem;
		display: flex;
		flex-wrap: wrap;
	}

	.header-product_title .entry-meta span:first-child{
		flex: 0 0 100%;
	}

	.header-product_title .entry-meta span.book-by{
		margin-left: 1rem;
		border-left: solid 1px var(--midnight-blue-b2);
		padding-left: 1rem;
	}

	.resource_main{
		display:flex;
		flex-direction: column;
	}

	.resource-actions_wrapper{
		display: flex;
		flex-grow: 1;
		align-items: flex-end;
	}

	.resource-actions_wrapper .resource_actions{
		margin-bottom: 0;
		flex-grow: 1;
	}
}

@media screen and (min-width: 75em) { /* 1200px */

	.header-product_pricing-actions{
		flex: 0 0 calc(34% - 0.5rem);
	}

	.header-product_inner,
	.header-product_gallery{
		width: 100%;
		max-width: 72.5rem;
	}
}

@media screen and (min-width: 90em) { /* 1440px */

	.header-product_inner,
	.header-product_gallery{
		max-width: 84.5rem;
	}

	.header-page_title > *{
		max-width: calc( 50% - 0.5rem );
	}
}

@media screen and (min-width: 102.5em) { /* 1640px */

	.header-product_inner{
		margin: 4rem auto;
	}

}

/* Breadcrumbs
--------------------------------------------- */
.breadcrumbs{
	white-space: nowrap;
	overflow-x: auto;
	background-color: var(--midnight-blue-b8);
	font-size: 0.8125rem;
	padding: 0.875rem 0;
	color: var(--border-color);
}

.breadcrumbs--dark{
	background-color: var(--midnight-blue-b1);
	color: var(--midnight-blue-b3);
}

.breadcrumbs a{
	color: var(--midnight-blue-b2);
	padding: 0.5rem 0;
	line-height: 1.25rem;
}

.breadcrumbs--dark a{
	color: #ffffff;
}

.breadcrumbs a:hover,
.breadcrumbs a:focus,
.breadcrumbs a:active {
	color: var(--midnight-blue-b5);
}

.breadcrumbs ul{
	display:flex;
	align-items: center;
	list-style: none;
	margin:0;
	padding-left:1.75rem;
}

.breadcrumbs ul li{
	display:flex;
	align-items: center;
}

.breadcrumbs ul li:not(:first-child){
	margin-left: 0.75rem;
}

.breadcrumbs ul li:not(:first-child):before{
	content:'\f105';
	font-family: "Font Awesome 6 Sharp";
	font-weight: 900;
	margin-right: 0.75rem;
	transform: translateY(0.125rem);
}

.breadcrumbs ul li:not(.current-page){
	font-weight: bold;
}

.breadcrumbs ul li.current-page a{
	text-decoration: none;
	cursor: default;
	color: var(--light-copy-color);
}

.breadcrumbs--dark ul li.current-page a{
	color: var(--midnight-blue-b5);
}

.breadcrumbs ul li:last-child{
	padding-right: 1.75rem;
}

@media screen and (min-width: 75em) { /* 1200px */

	.breadcrumbs{
		overflow: hidden;
	}

	.breadcrumbs ul{
		width: 100%;
		max-width: 72.5rem;
		margin-left: auto;
		margin-right: auto;
		padding-left:0;
	}

	.breadcrumbs ul li:last-child{
		padding-right: 0;
	}
}

@media screen and (min-width: 90em) { /* 1440px */
	.breadcrumbs ul{
		max-width: 84.5rem;
	}
}

/* Tooltips
--------------------------------------------- */
[role="tooltip"]{
	position: absolute;
	bottom: 1.5rem;
	text-align: center;
	display: flex;
	flex-direction: column;
	font-size: 0.675rem;
	line-height: 1.5;
	visibility: hidden;
	background-color: var(--midnight-blue-d1);
	padding: 0.5rem;
}

.tooltip--right [role="tooltip"]{
	right:0;
	text-align: right;
}

.tooltip--left [role="tooltip"]{
	left:0;
	text-align: left;
}

[role="tooltip"] > span{
	display: block;	
	min-width: 20ch;
	max-width: calc(100vw - 3.5rem);
}

[role="tooltip"] > span.credit{
	white-space: nowrap;
}

.tooltip:hover > [role="tooltip"]{
	visibility: visible;
}

@media screen and (min-width: 75em) { /* 1200px */

	.tooltip--hero > [role="tooltip"] > span{
		white-space: nowrap;
		max-width: 72.5rem;
	}
}

@media screen and (min-width: 90em) { /* 1440px */

	.tooltip--hero > [role="tooltip"] > span{
		max-width: 84.5rem;
	}
}


/* Sticker Tags
--------------------------------------------- */
.sticker-tag{
	display:inline-block;
	font-size: 0.875rem;
	background-color: var(--midnight-blue);
	color: #ffffff;
	border-radius: 0.125rem;
	line-height: 1;
	padding: 0.375rem 0.625rem;
	margin-right: 0.25rem;
}

.card_image .sticker-tag{
	margin-bottom: 0.25rem;
}

.sticker-tag-sml{
	font-size: 0.8125rem;
}

.sticker-tag-xs{
	font-size: 0.75rem;
	padding: 0.25rem 0.625rem;
	border-radius: 0.625rem;
}

.sticker-tag.accent{
	background-color: var(--accent-color);
}

.sticker-tag.soldout{
	background-color: var(--border-color);
	color: var(--body-color);
}

.sticker-tag.accent-reversed{
	color: var(--burgundy-b4);
	background-color: var(--midnight-blue-d1);
}

.sticker-tag.accent-light{
	color: var(--burgundy-b2);
	background-color: var(--burgundy-b6);
}

.sticker-tag.accent-blue{
	color: var(--burgundy-b2);
	background-color: var(--midnight-blue-b8);
}

.sticker-tag.white{
	color: var(--midnight-blue);
	background-color: #ffffff;
}

.sticker-tag.light{
	color: var(--light-copy-color);
	background-color: var(--midnight-blue-b8);
}

.sticker-tag.multiply{
	background-color: rgba(25,40,51,0.67);
}

.sticker-tag.blue{
	background-color: var(--midnight-blue-b2);
}

/* Headings
--------------------------------------------- */

hgroup.heading-with-border{
	padding-bottom: 0.5rem;
	border-bottom: solid 1px var(--border-color);
}

hgroup.heading-with-border > *{
	margin: 0;
}

hgroup.heading-with-border.has-link{
	display: flex;
	align-items: baseline;
	justify-content: space-between;
}

hgroup.heading-with-border.has-link.transparent{
	align-items: center;
	border-color: transparent;
	padding-bottom: 0;
	margin-bottom: 1rem;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.post,
.page {
	margin: 0;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/* Maps
--------------------------------------------- */
.map-inner{
	max-width: 28rem;
	position: relative;
}

#map-zoom{
	display: none;
	position: absolute;
	bottom: 1rem;
	left: 1rem;
}

@media screen and (min-width: 48em) { /* 768px */
	#map-zoom{
		display: inline-block;
	}
}

/* Lightbox
--------------------------------------------- */
.lightbox{
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	z-index: 50;
	display: none;
	background-color: rgba(31,50,64,0.95);
}

.lightbox--map{
	background-color: rgba(73,117,150,0.95);
}

.lightbox--brochure{
	background-color: rgba(191,210,224,0.95);
}

.lightbox--share{
	background-color: rgba(244,247,250,0.85);
}

.lightbox--gallery,
.lightbox--video{
	background-color: rgba(20,32,40,0.95);
}

.admin-bar .lightbox{
	top: 2rem;
	height: calc( 100vh - 2rem );
}

.brochure-lightbox-on .gallery,
.brochure-lightbox-on .lightbox-header,
.gallery-lightbox-on .gallery,
.gallery-lightbox-on .lightbox-header,
.video-lightbox-on .video-wrapper,
.video-lightbox-on .lightbox-header,
.share-lightbox-on .share-widget,
.share-lightbox-on .lightbox-header{
	animation-name: fadeIn;
	animation-fill-mode: both;
	animation-iteration-count: 1;
	animation-timing-function: var(--snap);
	animation-duration: .15s;
	animation-delay: 0.55s;
}

.gallery-lightbox-on .lightbox--gallery,
.video-lightbox-on .lightbox--video{
	animation-name: bgGalleryFadeIn;
}

.share-lightbox-on .lightbox--share{
	animation-name: bgShareFadeIn;
}

.gallery-lightbox-on .lightbox--gallery,
.share-lightbox-on .lightbox--share,
.video-lightbox-on .lightbox--video{
	display: grid;
	grid-template-rows: 4rem calc( 100vh - 6rem );
	grid-template-areas: 
		"header"
		"body";
	animation-duration: 0.55s;
	animation-iteration-count: 1;
	animation-fill-mode: both;
}

.lightbox-header{
	grid-area: header;
	place-self: stretch;
	display: flex;
	align-items: center;
	justify-content: start;
	padding-left: 1.5rem;
	position: relative;
}

.lightbox--map .lightbox-header > .map-close,
.lightbox-header > .lightbox-close{
	position:absolute;
	right:1rem;
}

.lightbox-body{
	grid-area: body;
	place-self: center center;
}

.lightbox-body--video{
	position: relative;
	place-self: stretch stretch;
	display: grid;
}

.lightbox-body--video .video-wrapper{
	width: 100%;
	max-width: 100%;
	position: relative;
	place-self: center center;
}

html.gallery-lightbox-on,
body.gallery-lightbox-on,
html.share-lightbox-on,
body.share-lightbox-on,
html.video-lightbox-on,
body.video-lightbox-on{
	overflow: hidden;
}

.card.share-widget{
	padding: 1.25rem;
}

.share-links{
	display: grid;
	grid-gap: 0.5rem;
	width: calc( 100vw - 5rem);
	max-width: 20rem;
}

@media screen and (min-width: 48em) { /* 768px */
	.map-lightbox-on .lightbox--map{
		display: grid;
		grid-template-rows: 4rem calc( 100vh - 4rem );
		grid-template-areas: 
			"header"
			"body";
		animation-name: bgMapFadeIn;
		animation-duration: 0.6s;
		animation-iteration-count: 1;
		animation-fill-mode: both;
	}

	.admin-bar.map-lightbox-on .lightbox--map{
		grid-template-rows: 4rem calc( 100vh - 6rem );
	}

	html.map-lightbox-on,
	body.map-lightbox-on{
		overflow: hidden;
	}

	.lightbox-header{
		justify-content: center;
		padding-left: 0;
	}

	.lightbox--map .lightbox-body{
		place-self: start center;
	}

	.lightbox--map .lightbox-body > img{
		display: block;
		width: auto;
		max-width: calc(100vw - 4rem);
		max-height: calc( 100vh - 7rem );
		border-radius: 0.25rem;
		transform: var(--map-start);
		animation-name: mapAnimateIn;
		animation-duration: 0.55s;
		animation-iteration-count: 1;
		animation-fill-mode: both;
		animation-delay: 0.1s;
		animation-timing-function: var(--snap);
	}

	.admin-bar.map-lightbox-on .lightbox--map .lightbox-body > img{
		max-height: calc( 100vh - 9rem );
	}
}

@media screen and (max-width: 782px) { /* 782px - Admin Bar Change */
	.admin-bar .lightbox{
		top: 2.875rem;
		height: calc( 100vh - 2.875rem );
	}

	.admin-bar.map-lightbox-on .lightbox--map{
		grid-template-rows: 4rem calc( 100vh - 6.875rem );
	}

	.admin-bar.map-lightbox-on .lightbox--map .lightbox-body > img{
		max-height: calc( 100vh - 9.875rem );
	}
}

@media screen and (min-width: 62em) { /* 992px */
	.brochure-lightbox-on .lightbox--brochure{
		display: grid;
		grid-template-rows: 4rem calc( 100vh - 6rem );
		grid-template-areas: 
			"header"
			"body";
		animation-name: bgBrochureFadeIn;
		animation-duration: 0.6s;
		animation-iteration-count: 1;
		animation-fill-mode: both;
	}

	.admin-bar.brochure-lightbox-on .lightbox--brochure,
	.admin-bar.gallery-lightbox-on .lightbox--gallery{
		grid-template-rows: 4rem calc( 100vh - 8rem );
	}

	html.brochure-lightbox-on,
	body.brochure-lightbox-on{
		overflow: hidden;
	}

	.lightbox-body--video .video-wrapper{
		max-width: calc( 100vw - 10rem);
	}
}

@media screen and (min-width: 85.375em) { /* 1366px */

	.lightbox-body--video .video-wrapper{
		max-width: 80rem;
	}
}

@keyframes mapAnimateIn{
	from{
		transform: var(--map-start);
	}
	to{
		transform: scale(1) translate(0, 0);
	}
}

@keyframes bgMapFadeIn{
	from{
		background-color: rgba(73,117,150,0);
	}
	to{
		background-color: rgba(73,117,150,0.95);
	}
}

@keyframes bgBrochureFadeIn{
	from{
		background-color: rgba(191,210,224,0);
	}
	to{
		background-color: rgba(191,210,224,0.95);
	}
}

@keyframes bgGalleryFadeIn{
	from{
		background-color: rgba(20,32,40,0);
	}
	to{
		background-color: rgba(20,32,40,0.95);
	}
}

@keyframes bgShareFadeIn{
	from{
		background-color: rgba(244,247,250,0);
	}
	to{
		background-color: rgba(244,247,250,0.85);
	}
}

/* Galleries
--------------------------------------------- */
.gallery{
	display: grid;
	grid-gap: 0.75rem;
	grid-template-columns: 100%;
}

.gallery_thumbs{
	position: relative;
	height: 100%;
	max-height: 32rem;
	overflow: hidden;
	display: none;
}

.gallery_thumb_items{
	height: 100%;
	max-height: 32rem;
	overflow-y: auto;
}

.gallery_thumbs ul{
	list-style: none;
	margin: 0;
	padding: 0;
}

.gallery_thumbs ul li:not(:last-child){
	margin-bottom: 0.25rem;
}

.gallery_main{
	position: relative;
}

.gallery_items,
.carousel_items{
	display: flex;
	overflow-y: hidden;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
}

.gallery-item,
.carousel_item{
	position: relative;
	margin: 0;
	flex: 0 0 100%;
	scroll-snap-align: start;
}

.gallery-item figcaption{
	position:absolute;
	bottom: 0;
	left:0;
}

.tooltip--gallery{
	position: absolute;
	left:1rem;
	bottom: 1rem;
}

.tooltip--gallery i{
	text-shadow: 0 0.125rem 0.125rem rgba(20,32,40,0.12);
}

.gallery-thumb-item{
	display: block;
	border: solid 4px transparent;
	scroll-margin-block: 4rem;
}

.gallery-thumb-item.current{
	border-color: var(--kiwi-green-b1);
}

.gallery-item:not(:last-child){
	margin-right: 0.75rem;
}

.gallery_items_nav,
.gallery_thumbs_nav,
.carousel_nav{
	position: absolute;
	top:0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	pointer-events: none;
	overflow: hidden;
}

.gallery_thumbs_nav{
	flex-direction: column;
	align-items: stretch;
	justify-content: space-between;
}

.gallery_items_nav a,
.carousel_nav a{
	pointer-events: auto;
	font-size: 2rem;
	padding: 2rem 1.5rem;
	text-shadow: 0 0.125rem 0.125rem rgba(20,32,40,0.12);
	background-color: rgba(31,50,64,0.06);
	transform: translateX(0);
	transition: transform var(--snap) 0.25s;
}

.lightbox--gallery .gallery_items_nav a{
	color: #ffffff;
	background-color: rgba(20,32,40,0.24);
}

.gallery_thumbs_nav a{
	pointer-events: auto;
	font-size: 2rem;
	text-align: center;
	padding: 0.5rem;
	background: linear-gradient( to bottom, rgba(191,210,224,1), rgba(191,210,224,0.75));
	transform: translateY(0);
	transition: transform var(--snap) 0.25s;
}

.lightbox--gallery .gallery_thumbs_nav a{
	color: #ffffff;
	background: linear-gradient( to bottom, rgba(20,32,40,1), rgba(20,32,40,0.75));
}

.gallery_thumbs_nav a.next{
	background: linear-gradient( to top, rgba(191,210,224,1), rgba(191,210,224,0.75));
}

.lightbox--gallery .gallery_thumbs_nav a.next{
	background: linear-gradient( to top, rgba(20,32,40,1), rgba(20,32,40,0.75));
}

.prev-disabled .gallery_items_nav a.prev{
	transform: translateX(-5rem);
}

.next-disabled .gallery_items_nav a.next{
	transform: translateX(5rem);
}

.prev-disabled .gallery_thumbs_nav a.prev{
	transform: translateY(-4rem);
}

.next-disabled .gallery_thumbs_nav a.next{
	transform: translateY(4rem);
}

.gallery-thumb-item img{
	border-radius: 0.125rem;
}

.gallery_main,
.gallery-item,
.gallery-item img,
.gallery-thumb-item{
	border-radius: 0.25rem;
}

@media screen and (min-width: 62em) { /* 992px */
	.gallery {
		grid-template-columns: 9.875rem 48rem;
		padding: 1.5rem;
	}

	.gallery_thumbs{
		display:block;
	}

	.lightbox--gallery .gallery_items_nav a{
		color: #ffffff;
		background-color: rgba(20,32,40,0.36);
	}

	.gallery-item figcaption,
	.tooltip--gallery{
		left:0;
		bottom: 0;
		width: 100%;
	}

	.tooltip--gallery i{
		display: none;
	}

	.tooltip--gallery [role="tooltip"]{
		visibility: visible;
		position: relative;
		bottom: 0;
		display: block;
		width: 100%;
		background-color: transparent;
		backdrop-filter: brightness(0.67);
		border-radius: 0 0 0.25rem 0.25rem;
		padding: 0.75rem 1.25rem;
	}

	.tooltip--gallery [role="tooltip"] .txt-light{
		color: #ffffff;
		opacity: 0.66;
	}
}

@media screen and (min-width: 75em) { /* 1200px */
	.gallery {
		grid-template-columns: 9.875rem 56rem ;
	}

	.gallery_thumbs,
	.gallery_thumb_items{
		max-height: 37.3125rem;
	}
}

@media screen and (min-width: 90em) { /* 1440px */
	.gallery {
		grid-template-columns: 9.875rem 64rem ;
	}

	.gallery_thumbs,
	.gallery_thumb_items{
		max-height: 42.625rem;
	}
}

@media screen and (min-width: 102.5em) { /* 1640px */
	.gallery {
		grid-template-columns: 9.875rem 80rem ;
	}

	.gallery_thumbs,
	.gallery_thumb_items{
		max-height: 53.3125rem;
	}
}

/* Brochure Gallery
--------------------------------------------- */
.brochure-gallery{
	position: relative;
}

.brochure-gallery > img:not(:last-of-type){
	margin-bottom: 0.5rem;
}

#brochure-zoom{
	display: none;
	position: absolute;
	top: 1rem;
	right: 1rem;
}

@media screen and (min-width: 62em) { /* 992px */
	#brochure-zoom{
		display: inline-block;
	}
}

@media screen and (min-width: 75em) { /* 1200px */
	.brochure-gallery{
		display: grid;
		grid-gap: 0.5rem;
		grid-template-columns: repeat(2, 1fr);
	}
	.brochure-gallery > img{
		margin-bottom: 0 !important;
	}

	.brochure-gallery > img:first-child{
		grid-column: 1 / span 2;
	}
}

/* Hero Carousel
--------------------------------------------- */
.carousel_main{
	position: relative;
}

.carousel_nav,
.carousel_thumb_image,
.carousel_thumb_content{
	display: none;
}

.carousel_thumb_image,
.carousel_thumb_content{
	pointer-events: none;
}

.carousel_thumbs{
	background: linear-gradient(to bottom, var(--midnight-blue-d2), var(--midnight-blue));
}

.carousel_thumb_items{
	display: flex;
	align-items: center;
	justify-content: center;
}

.carousel_thumb_item{
	padding: 0.875rem;
	margin: 1rem 0;
}

.carousel_thumb_item:after{
	content: '';
	display: block;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 0.25rem;
	border: solid 0.125rem var(--kiwi-green-b1);
	background-color: transparent;
}

.carousel_thumb_item.active:after{
	background-color: var(--kiwi-green-b1);
}

.carousel_thumb_item > span.active-bar{
	display:none;
}

@media screen and (min-width: 75em) { /* 1200px */
	.carousel_items{
		display: block;
		position: relative;
		overflow: hidden;
		aspect-ratio: 16 / 9;
	}

	.carousel_item{
		position: absolute;
		z-index: 5;
	}

	.carousel_item.hidden,
	.carousel_thumb_item:after{
		display: none;
	}

	.carousel_item.prev,
	.carousel_item.next{
		z-index: 15;
	}

	.carousel_nav{
		z-index: 20;
		display: flex;
	}

	.carousel_nav a{
		color: #ffffff;
		background-color: rgba(20,32,40,0.48);
	}

	.carousel_thumb_item{
		position: relative;
		padding: 0;
		margin: 0;
		flex: 0 0 25%;
		display: flex;
		align-items: center;
	}

	.carousel_thumb_image,
	.carousel_thumb_content{
		display: block;
		position: relative;
		z-index: 2;
	}

	.carousel_thumb_image{
		padding-left: 1.5rem;
		margin: 2.5rem 1rem 2.5rem 0;
		border-left: solid 1px var(--midnight-blue-b2);
	}

	.carousel_thumb_item:first-child .carousel_thumb_image{
		border-color: transparent;
	}

	.carousel_thumb_image img{
		width: 3.125rem;
		aspect-ratio: 1 / 1;
		object-fit: cover;
		border-radius: 0.125rem;
	}

	.carousel_thumb_content h3{
		color: #ffffff;
		margin: 0.25rem 0 0;
	}

	.carousel_thumb_item.active > span.active-bar{
		display: block;
		position: absolute;
		top:0;
		z-index: 1;
		height: 0.125rem;
		width: 100%;
		background-color: var(--kiwi-green-b1);
		transform: scaleX(1);
		transform-origin: 0 50%;
	}

	.carousel_item.header-hero hgroup{
		transform: translateY(0);
		opacity: 1;
	}

	.carousel_item picture{
		transform: translateX(0);
		opacity: 1;
	}

	.carousel_item.prev hgroup,
	.carousel_item.next hgroup,
	.carousel_item:not(.hidden) hgroup{		
		animation-name: headingsSlideUp;
		animation-duration: 0.75s;
		animation-delay: 0.25s;
		animation-fill-mode: both;
		animation-iteration-count: 1;
	}

	.carousel_item.prev picture{
		animation-name: appearFromLeft;
	}

	.carousel_item.next picture{
		animation-name: appearFromRight;
	}

	.carousel_item.prev picture,
	.carousel_item.next picture{
		animation-duration: 0.25s;
		animation-fill-mode: both;
		animation-iteration-count: 1;
		animation-timing-function: cubic-bezier(0, 0, 0.58, 1);
	}

	.autoplay-on .carousel_thumb_item.active > span.active-bar{
		animation-name: growFromLeft;
		animation-duration: 5s;
		animation-fill-mode: both;
		animation-iteration-count: 1;
		animation-timing-function: linear;
		animation-play-state: running;
	}

	.autoplay-on .carousel_thumb_item.active:hover > span.active-bar{
		animation-play-state: paused;
	}
}

@media screen and (min-width: 102.5em) { /* 1640px */
	.carousel_items{
		aspect-ratio: 2 / 1;
	}
}

@keyframes headingsSlideUp{
	0%{
		transform: translateY(1rem);
		opacity: 0;
	}
	50%{
		opacity: 1;
	}
	100%{
		transform: translateY(0);
	}
}

@keyframes slideUp{
	0%{
		transform: translateY(0.5rem);
		opacity: 0;
	}
	100%{
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes appearFromLeft{
	from{
		transform: translateX(-1.5rem);
		opacity: 0;
	}
	to{
		transform: translateX(0);
		opacity: 1;
	}
}

@keyframes appearFromRight{
	from{
		transform: translateX(1.5rem);
		opacity: 0;
	}
	to{
		transform: translateX(0);
		opacity: 1;
	}
}

@keyframes growFromLeft{
	from{
		transform: scaleX(0);
	}
	to{
		transform: scaleX(1);
	}
}

/* Front Page
--------------------------------------------- */
.front-page_top-rows{
	display:flex;
	flex-direction: column;
	width: 100%;
	align-items: stretch;
}

.front-page_top-rows > .order-1{
	order: 1;
}

.front-page_top-rows > .order-2{
	order: 2;
}

.card-content-hub{
	padding: 2rem 1.5rem 1.5rem;
	border-radius: 0.5rem;
	margin-bottom: 2rem;
}

.card-content-hub h2{
	margin-bottom: 1rem;
}

#register .card--video{
	margin-top: 3rem;
	width: 100%;
	max-width: 32rem;
}

.fp-split-section_graphic.connect,
.fp-split-section_graphic.groups{
	margin-bottom: 2.5rem;
}

.fp-split-section_graphic.groups img{
	border-radius: 0.5rem;
}

.fp-split-section_graphic.suppliers{
	margin-top: 2.5rem;
}

.about_byline{
	display: flex;
	align-items: center;
}

.about_byline img{
	width: 3.75rem;
	border-radius: 50%;
	margin-right: 0.75rem;
}

.about_byline p{
	margin: 0;
	display: block;
}

@media screen and (min-width: 37.5em) { /* 600px */
	
	.fp-split-section_graphic.connect img,
	.fp-split-section_graphic.suppliers img,
	.fp-split-section_graphic.groups img{
		width: 100%;
		max-width: 32rem;
		margin-left: auto;
		margin-right: auto;
	}
}

@media screen and (min-width: 62em) { /* 992px */
	.fp-split-section{
		width: 100%;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 1.75rem;
		min-height: 32rem;
	}

	.fp-split-section > div{
		display: flex;
		flex-direction: column;
		justify-content: center;
		padding: 0 3.5rem 0 0;
	}

	#register .card--video,
	.fp-split-section_graphic.suppliers{
		margin-top: 0;
	}

	.fp-split-section_graphic.connect{
		margin-bottom: 0;
	}

	.page-template-page-about #about,
	.page-template-page-about #values,
	.page-template-page-contact #contact{
		display: grid;
		grid-template-columns: repeat(12, 1fr);
		grid-gap: 1rem;
	}

	.about_main{
		grid-column: 1 / span 7;
	}

	.about_stats{
		grid-column: 9 / span 4;
		border-left: solid 1px var(--border-color);
		margin-bottom: 3rem;
		position: relative;
		display: flex;
		align-items: stretch;
	}

	.values_title{
		grid-column: 1 / span 3;
	}

	.values_content{
		grid-column: 5 / span 8;
		border-left: solid 1px var(--border-color);
		padding-left: 3.5rem;
	}

	.contact_main{
		grid-column: 1 / span 7;
	}

	.contact_aside{
		grid-column: 9 / span 4;
	}
}

@media screen and (min-width: 75em) { /* 1200px */
	.split-section--content-hub{
		display: grid;
		grid-template-columns: 40.75rem calc( 100% - 41.75rem );
		grid-gap: 1rem;
		margin-top: 4rem;
		margin-bottom: -1rem;
	}

	.card-content-hub{
		position: relative;
		z-index: 4;
		max-height: 24.84375rem;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		padding: 2.5rem;
	}
}

/* Tabs
--------------------------------------------- */
.tab--active{
	animation-name: slideUp;
	animation-duration: 0.35s;
	animation-fill-mode: both;
	animation-iteration-count: 1;
}

/* Lists
--------------------------------------------- */
ul.styled-list{
	padding-left: 1.25rem;
}

ul.list-style-none{
	padding-left: 0;
	list-style: none;
}

ul.styled-list > li{
	border-bottom: solid 1px var(--border-color);
	padding: 0.625rem 0;
}

ul.styled-list--flex-items > li{
	display: flex;
	justify-content: space-between;
}

ul.styled-list ul{
	margin: 0;
	list-style-type: square;
	/*background-color: var(--midnight-blue-b8);
	padding: 0 1rem 0 3rem;*/
}

ul.accordion-list > li > .itinerary-panel,
ul.accordion-list--inclusions > li > ul,
ul.accordion-list--addons > li > ul{
	background-color: var(--midnight-blue-b8);
	padding: 0 1.5rem 0 2rem;
}

ul.accordion-list--inclusions > li > ul,
ul.accordion-list--addons > li > ul{
	padding: 0 1.5rem 0 2.5rem;
}

ul.accordion-list--highlights > li > ul,
ul.accordion-list--values > li > ul{
	padding: 0;
	list-style: none;
}

ul.styled-list ul li{
	margin: 0.625rem 0;
}

ul.styled-list > li:last-child{
	border-bottom-width: 0;
}

ul.accordion-list > li.item_with_children{
	padding-bottom:0;
}

ul.accordion-list button{
	all: unset;
	margin-bottom: 0.625rem;
}

ul.accordion-list button{
	display: flex;
	width: 100%;
	justify-content: space-between;
	list-style: none;
	cursor: pointer;
}

ul.accordion-list button:after{
	content: '\f055';
	font-family: "Font Awesome 6 Sharp";
	margin-left: 0.375rem;
	flex: 0 0 1rem;
	text-align: center;
	display: inline-block;
	width: 1rem;
	transform: scale(0.875);
}

ul.accordion-list li.active > button:after{
	content: '\f056';
}

ul.accordion-list button > span{
	text-decoration: underline;
}

ul.accordion-list button > span{
	flex: 1 0 0;
}

ul.accordion-list button .day:after{
	content: "|";
	display: inline-block;
	margin: 0 0.5rem;
	color: var(--border-color);
}

ul.accordion-list li > ul,
ul.accordion-list li > .itinerary-panel{
	height: auto;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transform-origin: 50% 0;
    transition: all var(--snap) 0.45s;
}

ul.accordion-list li:not(.active) > ul,
ul.accordion-list li:not(.active) > .itinerary-panel{
	max-height: 0 !important;
}

ul.accordion-list li.active > ul,
ul.accordion-list li.active > .itinerary-panel{
	opacity: 1 !important;
}

ul.accordion-list button:hover,
ul.accordion-list button:focus{
	color: var(--midnight-blue-b3);
}

ul.accordion-list button:focus,
ul.accordion-list button:focus-visible{
	outline: thin dotted;
}

ul.accordion-list li.active > ul,
ul.accordion-list li.active > .itinerary-panel{
	display: block;
}

ul.accordion-list li > ul > li:first-child,
ul.accordion-list li > .itinerary-panel p:first-child{
	margin-top: 1.5rem;
}

ul.accordion-list--highlights li > ul > li:first-child,
ul.accordion-list--values li > ul > li:first-child{
	margin-top: 0.75rem;
}

ul.accordion-list li > ul > li:last-child{
	margin-bottom: 1.5rem;
}

ul.accordion-list--highlights li > ul > li:last-child,
ul.accordion-list--values li > ul > li:last-child{
	margin-bottom: 2rem;
}

ul.accordion-list li > .itinerary-panel p{
	max-width: calc( (72.5rem / 12) * 8 - 2rem );
}

ol.terms-list,
ol.terms-list ol{
	counter-reset: item;
}

ol.terms-list ol,
ol.terms-list p{
	margin-top: 0.75rem;
}

ol.terms-list > li > ol{
	margin-top: 1.5rem;
}

ol.terms-list li{
	counter-increment: item;
	margin-bottom: 0.75rem;
}

ol.terms-list li:last-child{
	margin-bottom: 1.5rem;
}

ol.terms-list > li::marker,
ol.terms-list > li > ol > li::marker{
	content: counters( item, '.') '. ';
}

ol.terms-list ol ol{
	list-style-type: lower-alpha;
}

ol.terms-list ol ol ol{
	list-style-type: lower-roman;
}

ol.terms-list .terms-section-title{
	font-weight: 600;
}

.itinerary-panel span.item-icon{
	display:inline-block;
	width: 1rem;
	margin-right: 0.25rem;
}

.txt-white ul.styled-list > li{
	border-color: var(--midnight-blue-b2);
}

.about_stats ul{
	display: flex;
	flex-direction: column;
	width: 100%;
	list-style: none;
	padding: 0;
}

.about_stats ul li{
	text-align: center;
	border-top: solid 1px var(--border-color);
	line-height: 1.5;
	aspect-ratio: 2 / 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 0 3.5rem;
}

.about_stats ul li strong{
	display:block;
	font-size: 2.5rem;
	color: var(--kiwi-green);
}

@media screen and (min-width: 48em) { /* 768px */
	.about_stats ul li{
		aspect-ratio: 3 / 1;
	}
}

@media screen and (min-width: 62em) { /* 992px */
	.about_stats ul{
		margin: 0 0 0 3.5rem;
		width: auto;
		place-self: stretch stretch;
	}

	.about_stats ul li{
		aspect-ratio: auto;
		flex: 0 0 33.33%;
		padding: 0 1.75rem;
	}

	.about_stats ul li:first-child{
		border-color: transparent;
	}
}

/* Staff Lists
--------------------------------------------- */

ul.staff-members{
	display:block;
}

ul.staff-members li,
ul.staff-members li .staff{
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 1rem 0;
	position: relative;
}

.staff_image,
.staff_image img{
	display: block;
	width: 7.5rem;
	height: 7.5rem;
	border-radius: 50%;
	margin: 0;
}

.staff_info{
	margin-top: 0.75rem;
}

.staff_info .name{
	font-size: 1.125rem;
}

.staff_links{
	margin-top: 0.5rem;
}

@media screen and (min-width: 48em) { /* 768px */

	ul.staff-members{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 0;
	}

}

@media screen and (min-width: 62em) { /* 992px */

	ul.staff-members{
		grid-template-columns: repeat(3, 1fr);
	}

}

/* Archive Lists
--------------------------------------------- */
ul.card-list{
	list-style: none;
	padding-left: 0;
}

ul.card-list > li{
	margin-bottom: 1.5rem;
}

ul.card-list.with-dividers > li:after{
	content: '';
	display:block;
	margin-top: 1.5rem;
	border-bottom: solid 1px var(--border-color);
}

ul.card-list.grid--blog > li,
ul.card-list.grid--resources > li{
	margin-bottom: 2.75rem;
}

ul.card-list.grid--destinations > li{
	margin-bottom: 0;
}

ul.card-list--climate > li{
	margin-bottom: 0.75rem;
}

@media screen and (min-width: 48em) { /* 768px */
	ul.card-list.d-grid-768 > li{
		margin-bottom: 0.75rem;
	}
}

@media screen and (min-width: 62em) { /* 992px */
	ul.card-list--grid-resources{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 1.5rem;
	}

	ul.card-list--grid-resources li{
		margin-bottom: 0;
	}
}

/* Carousel Lists
--------------------------------------------- */
ul.card-carousel{
	list-style: none;
	padding-left: 0;
	display: flex;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
}

ul.card-carousel.adjust-contained-margins{
	margin-left: -1.75rem;
	margin-right: -1.75rem;
	margin-bottom: 0;
	padding: 0 1.75rem 1.75rem;
	scroll-padding-left: 1.75rem;
	scroll-padding-right: 1.75rem;
}

ul.card-carousel > li{
	scroll-snap-align: center;
}

ul.card-carousel > li:first-child{
	scroll-snap-align: start;
}

ul.card-carousel > li:last-child{
	scroll-snap-align: end;
}

ul.card-carousel > li:not(:last-child){
	margin-right: 1rem;
}

.carousel-row_wrapper{
	position: relative;
}

.carousel-row_nav{
	display: none;
}

@media screen and (min-width: 48em) { /* 768px */
	ul.card-carousel > li{
		scroll-snap-align: start;
	}
}

@media screen and (min-width: 75em) { /* 1200px */
	.carousel-row_nav{
		display:flex;
		justify-content: flex-end;
		transform: translateY(-0.5rem);
	}

	.carousel-row_nav a{
		margin: 0 0.25rem;
	}

	.carousel-row_nav a.disabled{
		opacity: 0.25;
	}
}

/* Tables & Pricing Widget
--------------------------------------------- */
.pricing-table_wrapper{
	margin: 1.5rem -1.75rem 0;
	padding: 0 1.75rem;
	overflow-x: auto;
	scroll-padding-left: 1.75rem;
	scroll-padding-right: 1.75rem;
}

.pricing-table_element:before,
.pricing-table_element:after{
	content: '';
	display: block;
	position: absolute;
	z-index: 2;
	top:0;
	left:-1.75rem;
	bottom: 0;
	width: 1.75rem;
	background: linear-gradient(to right, rgba(244, 247, 250, 1), rgba(244, 247, 250, 0));
}

.pricing-table_element:after{
	right:-1.75rem;
	left:auto;
	background: linear-gradient(to left, rgba(244, 247, 250, 1), rgba(244, 247, 250, 0));
}

p + .styled-table{
	margin-top: 2.5rem;
}

.styled-table{
	border-collapse: collapse;
}

.styled-table tr > *{
	padding: 0.625rem 0.5rem;
	vertical-align: baseline;
}

.styled-table.pricing-table tr > *{
	padding: 0.625rem 1.5rem;
	vertical-align: middle;
}

.styled-table.pricing-table tr > .hidden,
.pricing-table--set-dates .pricing.hidden,
.pricing-table_tab-content:not(.tab-active){
	display: none;
}

.styled-table tr > th:first-child,
.styled-table tr > td:first-child{
	padding-left: 0;
}

.styled-table tr > th:last-child,
.styled-table tr > td:last-child,
.styled-table.pricing-table tr > th.var_1:not(.hidden),
.styled-table.pricing-table tr > td.var_1:not(.hidden){
	padding-right: 0;
}

.styled-table.overview-meta tr > *:last-child{
	width: 60%;
}

.styled-table thead th,
.styled-table tbody tr:not(:last-child) th,
.styled-table tbody tr:not(:last-child) td{
	border-bottom: solid 1px var(--border-color);
}

.styled-table thead th.green{
	border-color: var(--kiwi-green);
	border-width: 2px;
}

.pricing-table td.pricing span,
.pricing-table td.pricing small,
.date-item_pricing .pricing > *{
	white-space: nowrap;
	display:block;
}

.offer-pricing_footer{
	border-top: solid 1px var(--border-color);
	padding-top: 0.25rem;
}

.offer-pricing_book-by{
	margin:0.625rem 0;
}

.pricing-table_header{
	display:flex;
}

.pricing-table_header > *:not(:last-child){
	margin-right: 0.625rem;
}

.pricing-table_header select{
	padding: 0.5rem;
	border-radius: 0.25rem;
	margin-top: 0.375rem;
	cursor: pointer;
}

.pricing-table input[type="radio"]{
	margin-right: 0.5rem;
}

.pricing-table_date-item:not(.date--soldout) input[type="radio"],
.pricing-table_date-item:not(.date--soldout) label{
	cursor: pointer;
}

.styled-table.pricing-table tr > td.fade-in,
.pricing-table--set-dates .pricing.fade-in,
.pricing-table_tab-content.tab-active{
	animation-duration: 0.3s;
	animation-name: fadeIn;
	animation-fill-mode: both;
	animation-iteration-count: 1;
}

.pricing-table_tab-content .selected{
	border-color: var(--kiwi-green);
	background: linear-gradient(to right, var(--kiwi-green-b4), #ffffff 3rem);
}

.pricing-table_date-item{
	background-color: #ffffff;
	border: solid 1px var(--border-color);
	border-radius: 0.25rem;
	margin: 0.5rem 0;
	display: grid;
	grid-gap: 0;
	grid-template-columns: 3rem auto;
	grid-template-areas:
		"action dates"
		"action pricing";
	box-shadow: 0 0.25rem 0.75rem rgba(191,210,224,0.32);
}

.pricing-table_date-item:last-child{
	margin-bottom: 2rem;
}

.pricing-table_date-item.date--soldout{
	background-color: transparent;
	box-shadow: none;
}

.date-item_action{
	grid-area: action;
	display: flex;
	justify-content: center;
	align-items: center;
	border-right: dotted 1px var(--border-color);
}

.date-item_dates{
	grid-area: dates;
	padding: 0.75rem;
	display: flex;
	align-items: center;
}

.date-item_dates .date-range{
	width: 100%;
	display:flex;
	justify-content: space-between;
	align-items: center;
}

.date-item_dates .date-range > span > *{
	display: block;
}

.date-item_dates .date-range .range-sign{
	flex: 1 0 0;
	height: 2px;
	background-color: var(--border-color);
	margin: 0 1.5rem 1.125rem;
	position: relative;
}

.date-item_dates .date-range .range-sign:before,
.date-item_dates .date-range .range-sign:after{
	content: '';
	display: block;
	width: 0.375rem;
	height: 0.375rem;
	border-radius: 0.375rem;
	border: solid 2px var(--border-color);
	position: absolute;
	top: -0.125rem;
}

.date-item_dates .date-range .range-sign:before{
	left: -0.25rem;
}

.date-item_dates .date-range .range-sign:after{
	right: -0.25rem;
}

.date-item_pricing{
	grid-area: pricing;
	padding: 0.75rem;
	border-top: dotted 1px var(--border-color);
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	justify-content: space-between;
}

.date-item_action input[type="radio"]{
	margin-right: 0;
	top: 0;
}

@keyframes fadeIn{
	from{
		opacity:0;
	}
	to{
		opacity:1;
	}
}

@media screen and (min-width: 48em) { /* 768px */

	.pricing-table_date-item{
		grid-template-columns: 3rem calc(50% - 3rem) 50%;
		grid-template-areas:
			"action dates pricing";
	}

	.date-item_pricing{
		border-top-width: 0;
		border-left: dotted 1px var(--border-color);
	}

	.date-item_dates,
	.date-item_pricing{
		padding: 1.125rem 1.5rem;
	}
}

@media screen and (min-width: 62em) { /* 992px */
	
	.styled-table.pricing-table tr > *:first-child{
		width: 25%;
	}

	.styled-table.pricing-table tr > *:first-child + *.txt-left{
		padding-left:0;
	}

	.offer-pricing_footer{
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding-top: 0.75rem;
	}

	.offer-pricing_book-by,
	.offer-pricing_actions{
		flex: 0 0 50%;
	}

	.offer-pricing_actions > *{
		flex: 0 0 calc( 50% - 0.5rem );
	}

	.offer-pricing_actions > button{
		flex: 0 0 calc( 25% - 0.25rem );
	}

	.order-992-1{
		order: 1;
	}

	.order-992-2{
		order: 2;
	}

	.order-992-3{
		order: 3;
	}

}

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.875rem 0;
	font-size: 0.875rem;
	padding: 0 0.875rem;
}

.wp-caption-text {
	text-align: center;
	color: var(--light-copy-color);
}

/* Cards
--------------------------------------------- */
.card_content h3{
	margin: 0.5rem 0 0.25rem;
	line-height: 1.25;
}

.card_content h3 > a{
	color: inherit;
}

.card_content h3:not(.heading-reset) > a{
	text-decoration: none;
}

.card_content h3 > a:hover,
.card_content h3 > a:focus,
.card_content h3 > a:active {
	color: var(--midnight-blue-b5);
}

.card_content h3 > a:hover{
	text-decoration: underline;
}

.card_image,
.card_image a:not(.btn),
.card_image img{
	display: block;
	border-radius: 0.5rem;
	width: 100%;
}

.card--destination .card_image,
.card--destination .card_image a:not(.btn),
.card--destination .card_image img{
	border-radius: 0.25rem;
}

.card_image.aspect-ratio-4_5 > a,
.card_image.aspect-ratio-4_5 > a > img{
	aspect-ratio: 4 / 5;
	object-fit: cover;
}

.card_image--100{
	width: 6.25rem;
	flex: 0 0 6.25rem;
}

.card_image--125{
	width: 7.8125rem;
	flex: 0 0 7.8125rem;
}

.card_image{
	position: relative;
}

.video-launch .card_image:after{
	content: '\f04b';
	font-family: "Font Awesome 6 Sharp";
	font-weight: 600;
	display:flex;
	width: 2.5rem;
	height: 2.5rem;
	background-color: #ffffff;
	border-radius: 50%;
	position: absolute;
	top: calc(50% - 1.25rem);
	left: calc(50% - 1.25rem);
	align-items: center;
	justify-content: center;
	padding-left: 0.25rem;
	pointer-events: none;
}

.card_image .entry-meta{
	position: absolute;
	top:0;
	left:0;
	pointer-events: none;
	width: 100%;
	padding: 1rem 3.3rem 1rem 1rem;
	z-index: 3;
}

.card_image .overlaid-content{
	position: absolute;
	left:0;
	bottom: 0;
	max-width: 100%;
	padding: 0.75rem;
}

.card--collection-portrait .card_image .overlaid-content,
.card--content-portrait .card_image .overlaid-content{
	padding: 1.25rem;
	z-index: 2;
}

.card_image .overlaid-content > h3,
a.card--all-destinations > h3{
	margin:0;
}

.card--collection-portrait .card_image .overlaid-content > h3,
.card--content-portrait .card_image .overlaid-content > h3{
	line-height: 1.2;
}

.card--content-portrait.resource .card_image .overlaid-content > h3{
	color: var(--midnight-blue);
}

.zoom-on-hover a:not(.btn){
	height: 100%;
	overflow: hidden;
}

.zoom-on-hover a img{
	transition: transform 0.2s, opacity 0.2s;
	transform: scale(1);
	opacity: 1;
}

.zoom-on-hover a:hover img{
	transform: scale(1.05);
	opacity: 0.85;
}

.card--post .card_content,
.card--resource .card_content{
	margin-top: 0.5rem;
}

.card--offer .card_content,
.card--collection .card_content{
	padding-top: 0.5rem;
}

.card--mini .card_image{
	margin-bottom: 1rem;
}

.card--mini .card_content h3{
	margin: 0.5rem 0;
}

.card--mini .card_content > p{
	font-size: 1rem;
	line-height: 1.5;
}

.card--mini-hz{
	display:flex;
	align-items: center;
}

.card--mini-hz-320w{
	width: 20rem;
}

.card--mini-hz .card_image,
.card--mini-hz .card_content > p{
	margin-right: 1rem;
	margin-bottom: 0;
}

.card--mini-hz:not(.card--mini-hz-320w) .card_content{
	flex: 1 0 0;
}

.card--mini-hz .card_action{
	white-space: nowrap;
	padding-left: 1rem;
}

.card--padded{
	padding: 0.75rem;
	border: solid 1px var(--border-color);
	border-radius: 0.75rem;
	box-shadow: 0 0.25rem 0.75rem rgba(191,210,224,0.32);
}

.bg-midnight-blue .card--padded,
.bg-midnight-blue-b1 .card--padded{
	border-color: var(--midnight-blue-b2);
	box-shadow: 0 0.25rem 0.75rem rgba(20,32,40,0.32);
}

.card--padded.card--feature{
	padding: 1.5rem 3rem 3rem 1.5rem;
}

.card--padded.card--index{
	padding: 1.5rem;
}

.card--feature .feature-icon{
	display: block;
	font-size: 1.5rem;
	margin-bottom: 1rem;
}

.card--feature .feature-icon i{
	color: var(--kiwi-green-b1);
}

.card--padded .card_content,
.card--padded .card_action{
	padding-left: 0.25rem;
	padding-right: 0.25rem;
}

.card--padded .card_action{
	padding-bottom: 0.5rem;
}

.card--feature .card_content h3{
	margin-bottom: 0.75rem;
}

.card--climate > *{
	display: grid;
	grid-template-columns: minmax(15%, 25%) 1fr 1fr;
}

.card--climate > .card_season{
	grid-template-areas: "icon season season";
}

.card--climate > .card_averages{
	grid-template-areas: ". max min";
	padding: 0.5rem 0;
}

.card_season i{
	grid-area: icon;
	justify-self: center;
	margin-top: 0.5rem;
	margin-right: 0.75rem;
	font-size: 2rem;
}

.card_season.summer i{
	color: var(--hot);
}

.card_season.winter i{
	color: var(--cold);
}

.card_season h3{
	margin-top: 0;
	margin-bottom: 0;
}

.card_season .season{
	grid-area: season;
	line-height: 1.1;
	padding: 0.5rem 0;
}

.card_averages .average{
	display: flex;
	align-items: center;
}

.card_averages .min{
	grid-area: min;
}

.card_averages .max{
	grid-area: max;
}

.card_averages .average > i{
	flex: 0 1 auto;
	margin-right: 0.375rem;
	font-size: 1.25rem;
}

.card_averages .temperature > *{
	display: block;
	line-height: 1.1;
	white-space: nowrap;
}

.card_action--with-border{
	border-top:solid 1px var(--border-color);
	padding-top: 0.875rem;
}

.card_action--with-pricing{
	display:flex;
	align-items: center;
	justify-content: space-between;;
}

.card_action_pricing .price{
	font-size: 1.125rem;
}

.entry-meta--card-offer{
	margin: 0.5rem 0 1.125rem;
}

.entry-meta--card-offer > span{
	display:block;
}

.entry-meta--card-offer > span b{
	font-weight: inherit;
}

a.card--all-destinations{
	display: flex;
	flex-direction: column;
	background-color: var(--midnight-blue-b3);
	color: #ffffff;
	width: 100%;
	border-radius: 0.5rem;
	padding: 0.75rem;
	align-items: center;
	justify-content: center;
	text-align: center;
	text-decoration: none;
}

a.card--all-destinations:hover h3,
.card_image a:hover .overlaid-content > h3{
	text-decoration: underline;
}

.card--offer .card_image > a:not(.btn),
.card--collection .card_image > a:not(.btn),
.card--resource.has_download .card_image > a:not(.btn){
	position:relative;
}

.card--offer:not(.card--offer-deal) .card_image > a:not(.btn):after,
.card--collection .card_image > a:not(.btn):after,
.card--resource.has_download .card_image > a:not(.btn):after{
	content: '';
	position: absolute;
	display: block;
	top:0;
	right:0;
	width: 6rem;
	height: 6rem;
	background: linear-gradient( to bottom left, rgba(25,40,51,0.32), rgba(25,40,51,0) 50% );
	mix-blend-mode: multiply;
}

.card--collection-portrait .card_image > a:not(.btn):before,
.card--content-portrait .card_image > a:not(.btn):before{
	content: '';
	position: absolute;
	display: block;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	background: linear-gradient( to top, rgba(25,40,51,0.48), rgba(25,40,51,0.16) 50% );
	mix-blend-mode: multiply;
	z-index: 1;
	border-radius: 0.5rem;
}

.card--content-portrait.resource .card_image > a:not(.btn):before{
	background: linear-gradient( to top, rgba(234,240,245,0.8), rgba(234,240,245,0) 50% );
	mix-blend-mode: normal;
}

.card-list--deal-columns{
	display:none;
}

.card-carousel .card--collection-portrait,
.card-carousel .card--destination,
.card-carousel .card--all-destinations,
.card-carousel .card--content-portrait{
	width: calc( 100vw - 4.5rem );
	max-width: 19.875rem;
}

@media screen and (min-width: 48em) { /* 768px */

	.card--mini-hz-768{
		display:flex;
		align-items: center;
	}

	.card--mini-hz-768 .card_image,
	.card--mini-hz-768 .card_content > p{
		margin-right: 1rem;
		margin-bottom: 0;
	}

	.card--mini-hz-768 .card_action{
		white-space: nowrap;
		padding-left: 1rem;
	}

	.card-list .card--padded{
		height: 100%;
	}

	.card-list .card--collection,
	.card-list .card--offer{
		display:flex;
		flex-direction: column;
		justify-content: stretch;
	}

	.card-list .card--collection .card_content,
	.card-list .card--offer .card_content,
	.card--mini-hz-768 .card_content{
		flex: 1 0 0;
	}

	.card-list .card--offer-deal{
		display: grid;
		grid-gap: 0 1rem;
		grid-template-columns: 9.375rem auto;
		grid-template-areas: 
			"image content" 
			"image meta"
			". action";
	}

	.card--offer-deal .card_image{
		grid-area: image;
	}

	.card--offer-deal .card_image .entry-meta{
		display:none;
	}

	.card--offer-deal .card_content{
		grid-area: content;
		padding: 0;
	}

	.card--offer-deal .card_meta{
		grid-area: meta;
	}

	.card--offer-deal .card_meta .entry-meta--card-offer{
		margin-top: 0;
	}

	.card--offer-deal .card_action{
		grid-area: action;
	}

	.card--index{
		aspect-ratio: 3 / 2 auto;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		justify-content: space-between;
	}
}

@media screen and (min-width: 62em) { /* 992px */

	.card--mini-hz-992{
		display:flex;
		align-items: center;
	}

	.card--mini-hz-992 .card_image,
	.card--mini-hz-992 .card_content > p{
		margin-right: 1rem;
		margin-bottom: 0;
	}

	.card--mini-hz-992 .card_action{
		white-space: nowrap;
		padding-left: 1rem;
	}

}

@media screen and (min-width: 75em) { /* 1200px */

	.card-list li:first-child .card--post.featured-post{
		display: flex;
		width: 100%;
		flex-direction: row-reverse;
		align-items: stretch;
	}

	.card-list li:first-child .card--post.featured-post .card_content{
		flex: 0 0 23.25rem;
		padding: 2.5rem;
		background-color: var(--midnight-blue-b8);
		border-radius: 0.5rem;
		margin-top: 0;
		margin-right: 1.375rem;
	}

	.card-list li:first-child .card--post.featured-post .card_content h3{
		font-size: 2.25rem;
		line-height: 1.4;
		margin-top: 0.5rem;
	}

	.card-list .card--offer-deal{
		grid-gap: 0 2rem;
		grid-template-columns: 9.375rem auto calc( 100% / 3 - 1rem);
		grid-template-areas: 
			"image content action" 
			"image meta action";
		border-radius: 0;
		border-width: 1px 0 0 0;
		box-shadow: none;
		padding: 2rem 0;
	}

	ul.card-list--deals > li,
	.card--offer-deal .card_meta .entry-meta--card-offer{
		margin-bottom: 0;
	}

	.card--offer-deal .card_action{
		padding: 0;
		border-width: 0;
	}

	.card--offer-deal .card_action .price{
		font-size: 1.375rem;
	}

	.card--offer-deal .card_action small{
		font-size: 0.875rem;
	}

	.card--offer-deal .card_action .btn-sml{
		font-size: 0.9375rem;
		padding: 0.875rem 1.5rem;
		line-height: 1.125rem;
		border-radius: 1.5rem;
	}

	.card-list--deal-columns{
		display: grid;
		grid-gap: 0 2rem;
		grid-template-columns: 9.375rem auto calc( 100% / 3 - 1rem);
		grid-template-areas: 
			". product from";
		padding: 0.375rem 0;
	}

	.card-list--deal-columns .product{
		grid-area: product;
	}

	.card-list--deal-columns .from{
		grid-area: from;
	}

	.card--index{
		aspect-ratio: 2 / 1 auto;
	}
}

@media screen and (min-width: 90em) { /* 1440px */

	.card-list li:first-child .card--post.featured-post .card_content{
		flex: 0 0 27.25rem;
	}
}

/* Tips & Climate
--------------------------------------------- */

.place-tips,
.card--climate{
	padding: 0.75rem;
	border: solid 1px var(--border-color);
	border-radius: 0.5rem;
}

.place-tips{
	margin-top: 2rem;
	padding: 1.25rem;
	border-radius: 0 0.5rem 0.5rem 0.5rem;
}

.place-tips h4{
	margin-bottom: 0.5rem;
}

.place-tips h4 i{
	margin-right: 0.25rem;
	color: var(--hot);
}

.place-tips ul{
	margin-bottom: 0;
	border-top: solid 1px var(--border-color);
}

/* Facets
--------------------------------------------- */

.facet-group_wrapper .facetwp-facet{
	margin-bottom: 0.5rem;
}

.facet-group_wrapper .fs-wrap,
.facet-group_wrapper .facetwp-input-wrap,
.facetwp-facet input.facetwp-search{
	display: block;
	width: 100%;
}

.facet-group_wrapper .fs-label-wrap,
.facetwp-facet input.facetwp-search{
	border-radius: 0.25rem;
	border-color: var(--border-color);
	background-color: var(--midnight-blue-b8);
}

.facet-group_wrapper .fs-label-wrap .fs-label{
	padding: 1rem 1.5rem 1rem 1rem;
}

.facetwp-facet input.facetwp-search{
	padding: 0.75rem 1.5rem 0.75rem 1rem;
}

.facet-group_wrapper .fs-arrow{
	right: 0.75rem;
}

.facet-group_wrapper .facetwp-icon{
	right: 0.5rem;
}

.facet-group_wrapper .facetwp-type-reset{
	text-align: right;
	margin-top: 1rem;
}

.facet-group_load-more{
	text-align:center;
}

@media screen and (min-width: 48em) { /* 768px */

	.facet-group_wrapper--the-insider,
	.facet-group_wrapper--offers,
	.facet-group_wrapper--resources,
	.facet-group_wrapper--resources-tax{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 0.75rem;
	}

	.facet-group_wrapper--the-insider .facetwp-facet,
	.facet-group_wrapper--offers .facetwp-facet,
	.facet-group_wrapper--resources .facetwp-facet{
		margin-bottom: 0;
	}

	.facet-group_wrapper--the-insider .facetwp-facet-blog_q,
	.facet-group_wrapper .facetwp-type-reset,
	.facet-group_wrapper--resources-tax .facetwp-facet-resource_q{
		grid-column: 1 / span 2;
	}

	.facet-group_wrapper .facetwp-type-reset{
		margin-top: 0.25rem;
	}
}

@media screen and (min-width: 62em) { /* 992px */

	.facet-group_wrapper--the-insider,
	.facet-group_wrapper--offers,
	.facet-group_wrapper--resources,
	.facet-group_wrapper--resources-tax{
		grid-template-columns: repeat(4, 1fr);
	}

	.facet-group_wrapper--the-insider .facetwp-facet-blog_q,
	.facet-group_wrapper--resources-tax .facetwp-facet-resource_q{
		grid-column: 3 / span 2;
	}

	.facet-group_wrapper .facetwp-type-reset{
		grid-column: 1 / span 4;
	}
}

/* Forms
--------------------------------------------- */

h3.gsection_title{
	margin-bottom:0;
}

.gform_wrapper.gravity-theme .gform_fields{
	grid-row-gap: 2rem !important;
}

.gform_wrapper.gravity-theme .gfield--type-section:not(.first-section){
	padding-top:2rem;
}

.gsection_description{
	font-size: 0.875rem;
}

.gform_wrapper.gravity-theme .gform_footer input[type="submit"]{
	margin-top: 2rem;
}

/* Feedback
--------------------------------------------- */
.feedback-alert{
	width: calc( 100vw - 2rem );
	position: fixed;
	display: flex;
	justify-content: space-between;
	align-items: center;
	bottom: -10rem;
	left: 1rem;
	background-color: var(--midnight-blue-b1);
	box-shadow: 0 0.25rem 0.75rem rgba(20,32,40,0.18);
	border-radius: 0.5rem;
	padding: 1rem;
	z-index: 10;
	animation-name: feedbackOut;
	animation-duration: 0.25s;
	animation-fill-mode: both;
	animation-timing-function: var(--snap);
}

.feedback-alert p{
	font-size: 0.875rem;
	margin:0;
}

.feedback-alert.active{
	bottom: 1rem;
	animation-name: feedbackIn;
	animation-duration: 0.35s;
	animation-fill-mode: both;
	animation-timing-function: var(--snap);
	animation-direction: normal;
}

.feedback_actions{
	display: flex;
	justify-content: flex-end;
	flex: 1 0 auto;
	margin-left: 0.75rem;
}

.feedback_actions a{
	white-space: nowrap;
	margin-left: 0.25rem;
}

@keyframes feedbackIn{
	from{
		bottom: -10rem;
	}
	to{
		bottom: 1rem;
	}
}

@keyframes feedbackOut{
	from{
		bottom: 1rem;
	}
	to{
		bottom: -10rem;
	}
}


/* Footer
--------------------------------------------- */
.site-footer_menus{
	margin-top: 2.5rem;
	margin-bottom: 1.75rem;
	display: grid;
	grid-gap: 1.5rem;
	grid-template-columns: repeat(2, 1fr);
}

.site-footer_menu h4{
	margin: 0.5rem 0;
}

.site-footer_menu ul li{
	border-bottom-width: 0;
	padding: 0.25rem 0 0.375rem;
	line-height: 1.25rem;
}

.site-footer_menu ul li a{
	font-size: 0.875rem;
}

.site-footer_logos{
	padding: 2.5rem 1.5rem;
	border-top: solid 1px var(--border-color);
	border-bottom: solid 1px var(--border-color);
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 1.5rem;
}

.site-info{
	padding: 1.25rem 0;
	text-align: center;
	line-height: 1.25;
}

.site-info_content{
	margin: 0.75rem 0;
}

.site-info_social{
	margin: 1.25rem 0 0.5rem;
	display: flex;
	justify-content: center;
}

.site-info_social a{
	font-size: 1.5rem;
	flex: 0 0 1.5rem;
	text-align: center;
	margin: 0 0.5rem;
}

.site-info_content ul{
	margin:0;
	display:flex;
	justify-content: center;
}

.site-info_content ul li:not(:first-child):before{
	content: '|';
	display: inline-block;
	margin: 0 0.25rem;
}

.site-info_brand img{
	margin: 0.375rem auto 1.75rem;
}

.site-footer_logos img{
	width: auto;
	height:auto;
	max-height: 4.5rem;
	place-self: center center;
}

@media screen and (min-width: 48em) { /* 768px */

	.site-footer_menu ul li{
		padding: 0.375rem 0 0.5rem;
	}

	.site-footer_menu ul li a{
		font-size: 0.9375rem;
	}
}

@media screen and (min-width: 62em) { /* 992px */
	.site-footer_menus{
		grid-template-columns: repeat(3, 1fr);
	}
	.site-info{
		text-align: left;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.site-info_content{
		margin: 0.75rem 1.75rem;
		flex-grow: 1;
	}
	.site-info_content ul{
		justify-content: flex-start;
	}

	.site-info_brand img,
	.site-info_social{
		margin: 0;
	}

	.site-info_social a:last-child{
		margin-right: 0;
	}

	.site-footer_logos.has-1{
		grid-template-columns: repeat(1, 1fr);
	}

	.site-footer_logos.has-2{
		grid-template-columns: repeat(2, 1fr);
	}

	.site-footer_logos.has-3{
		grid-template-columns: repeat(3, 1fr);
	}

	.site-footer_logos.has-4{
		grid-template-columns: repeat(4, 1fr);
	}

	.site-footer_logos.has-5{
		grid-template-columns: repeat(5, 1fr);
	}

	.site-footer_logos.has-6{
		grid-template-columns: repeat(6, 1fr);
	}

	.site-footer_logos.has-7{
		grid-template-columns: repeat(7, 1fr);
	}

	.site-footer_logos.has-8{
		grid-template-columns: repeat(8, 1fr);
	}

	.site-footer_logos{
		padding: 2.5rem calc( 8.33% + 1rem );
	}
}

@media screen and (min-width: 75em) { /* 1200px */
	.site-footer_menus{
		grid-template-columns: repeat(5, 1fr);
	}
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

.txt-left{
	text-align: left;
}

.txt-right{
	text-align: right;
}

.txt-center{
	text-align: center;
}

/* Aspect ratios & appearance
--------------------------------------------- */
.aspect-ratio-1_1,
.aspect-ratio-1_1 > a > img{
	aspect-ratio: 1 / 1;
}

.aspect-ratio-1_1 > a > img{
	object-fit: cover;
}

.aspect-ratio-3_2{
	aspect-ratio: 3 / 2;
}

.aspect-ratio-4_5{
	aspect-ratio: 4 / 5;
}

.br-4{
	border-radius: 0.25rem;
}

.br-8{
	border-radius: 0.5rem;
}

.br-16{
	border-radius: 1rem;
}

/* Text size, spacing
--------------------------------------------- */
.text-18 p,
.text-18 ul,
.text-18 ol,
.entry-subtitle{
	font-size: 1.125rem;
	line-height: 2rem;
}

.place-tips > ul{
	font-size: 0.9375rem;
	line-height: 1.5rem;
}

.text-14,
p.text-14{
	font-size: 0.875rem;
}

.heading-24{
	font-size: 1.5rem !important;
}

.heading-18{
	font-size: 1.125rem !important;
	line-height: 1.25;
	text-transform: uppercase;
}

.heading-reset{
	font-family: inherit;
	font-size: 1rem !important;
	line-height: 1.375;
}

.heading-14{
	font-size: 0.875rem !important;
	text-transform: uppercase;
}

.section-p-22 h2:first-child + p,
.section-p-22 hgroup:first-child + p,
.section-p-22 p:first-child{
	font-size: 1.375rem;
}

.my-16{
	margin-top:1rem;
	margin-bottom: 1rem;
}

.mt-64{
	margin-top: 4rem;
}

.mt-48{
	margin-top: 3rem;
}

.mt-40{
	margin-top: 2.5rem;
}

.mt-32{
	margin-top: 2rem;
}

.mt-24{
	margin-top: 1.5rem;
}

.mt-16{
	margin-top: 1rem;
}

.mt-12{
	margin-top: 0.75rem;
}

.mt-8{
	margin-top: 0.5rem;
}

.mt-6{
	margin-top: 0.375rem;
}

.mb-40{
	margin-bottom: 2.5rem;
}

.mb-48{
	margin-bottom: 3rem;
}

.mb-72{
	margin-bottom: 4.5rem;
}

.mb-32{
	margin-bottom: 2rem;
}

.mb-24{
	margin-bottom: 1.5rem;
}

.mb-16{
	margin-bottom: 1rem;
}

.mb-8{
	margin-bottom: 0.5rem;
}

.mb-0{
	margin-bottom: 0 !important;
}

.mr-16{
	margin-right: 1rem;
}

.mr-12{
	margin-right: 0.75rem;
}

.mr-6{
	margin-right: 0.375rem;
}

.ml-6{
	margin-left: 0.375rem;
}

.ml-auto{
	margin-left: auto;
}

i.scale_3_4{
	transform: scale(0.75);
}

h1.heading-22-sml,
h2.heading-22-sml{
	line-height: 1.25;
}

@media screen and (max-width: 47.99875em){ /* 767.98px */
	h1.heading-22-sml,
	h2.heading-22-sml{
		font-size: 1.375rem !important;
		line-height: 1.25;
		text-transform: uppercase;
	}
}

@media screen and (min-width: 48em) { /* 768px */
	.text-18 table{
		font-size: 1.125rem;
	}
}

@media screen and (min-width: 62em) { /* 992px */
	.d-grid-992 h2.sidebar-adjust{
		line-height: 3rem;
	}

	.mt-24-992{
		margin-top: 1.5rem;
	}
}

@media screen and (min-width: 75em) { /* 1200px */
	.d-grid-992 h2.sidebar-adjust{
		line-height: 3.375rem;
	}
}

/* Display & Grids
--------------------------------------------- */
.d-none{
	display: none;
}

.d-inline{
	display: inline;
}

.d-inline-block{
	display: inline-block;
}

.d-block{
	display: block;
}

.d-grid{
	display: grid;
}

.d-flex{
	display: flex;
}

.grid-span-2x2{
	grid-column-end: span 2;
	grid-row-end: span 2;
}

.grid-2-col{
	grid-template-columns: repeat(2, 1fr);
}

.grid-12-col{
	grid-template-columns: repeat(12, 1fr);
}

.grid-gap-1_1{
	column-gap: 1rem;
	row-gap: 1rem;
}

.grid-gap-12_12{
	column-gap: 0.75rem;
	row-gap: 0.75rem;
}

.grid-gap-8_8{
	column-gap: 0.5rem;
	row-gap: 0.5rem;
}

.grid_col-1_span-2{
	grid-column: 1 / span 2;
}

.grid_col-1_span-3{
	grid-column: 1 / span 3;
}

.grid_col-1_span-5{
	grid-column: 1 / span 5;
}

.grid_col-1_span-6{
	grid-column: 1 / span 6;
}

.grid_col-1_span-8{
	grid-column: 1 / span 8;
}

.grid_col-1_span-12{
	grid-column: 1 / span 12;
}

.grid_col-4_span-6{
	grid-column: 4 / span 6;
}

.grid_col-5_span-8{
	grid-column: 5 / span 8;
}

.grid_col-7_span-6{
	grid-column: 7 / span 6;
}

.grid_col-8_span-5{
	grid-column: 8 / span 5;
}

.grid_col-10_span-3{
	grid-column: 10 / span 3;
}

.grid_col-11_span-2{
	grid-column: 11 / span 2;
}

.grid_row-1_span-2{
	grid-row: 1 / span 2;
}

.grid_row-1_span-3{
	grid-row: 1 / span 3;
}

.grid_place-stretch-start{
	justify-self: stretch;
	align-self: start;
}

.grid_place-stretch-stretch{
	justify-self: stretch;
	align-self: stretch;
}

.flex_center-space-between{
	align-items: center;
	justify-content: space-between;
}

@media screen and (min-width: 48em) { /* 768px */

	.d-grid-768{
		display: grid;
	}

	.d-inline-block-768{
		display: inline-block;
	}

	.grid-2-col-768{
		grid-template-columns: repeat(2, 1fr);
	}

	.grid-gap--climate{
		grid-gap: 0.75rem;
	}

	.grid-gap--blog{
		column-gap: 1.375rem;
		row-gap: 2.75rem;
	}

	ul.card-list.grid-gap--blog > li,
	ul.card-list.grid-gap--climate > li{
		margin-bottom: 0;
	}
}

@media screen and (min-width: 62em) { /* 992px */

	.d-none-992{
		display: none;
	}

	.d-block-992{
		display: block;
	}

	.d-grid-992{
		display: grid;
	}

	.grid-3-col-992{
		grid-template-columns: repeat(3, 1fr);
	}

	.grid-span-2-row-992{
		grid-row-end: span 2;
	}

	.grid_place-stretch-stretch-992{
		justify-self: stretch;
		align-self: stretch;
	}
}

@media screen and (min-width: 75em) { /* 1200px */
	.grid--blog:not(.grid--blog-related) li:first-child{
		grid-column: 1 / span 3;
	}

	.grid-4-col-1200{
		grid-template-columns: repeat(4, 1fr);
	}

	.grid--destinations.grid-style_2 > *,
	.grid--destinations.grid-style_4 > li:nth-child(1),
	.grid--destinations.grid-style_4_1 > li:nth-child(1),
	.grid--destinations.grid-style_5 > li:nth-child(1),
	.grid--destinations.grid-style_6_1 > li:nth-child(1),
	.grid--destinations.grid-style_6_1 > li:nth-child(2),
	.grid--destinations.grid-style_6_1 > li:nth-child(3),
	.grid--destinations.grid-style_9_1 > li:nth-child(1),
	.grid--destinations.grid-style_9_1 > li:nth-child(4),
	.grid--destinations.grid-dynamic > li:nth-child(1),
	.grid--destinations.grid-dynamic > li:nth-child(4),
	.grid--destinations.grid-dynamic > li:nth-child(11){
		grid-column-end: span 2;
		grid-row-end: span 2;
	}

	.grid_col-1_span-4-1200{
		grid-column: 1 / span 4;
	}

	.grid_col-6_span-7-1200{
		grid-column: 6 / span 7;
	}

	.d-none-1200{
		display: none;
	}
}

@media screen and (min-width: 90em) { /* 1440px */

	.grid-4-col-1440{
		grid-template-columns: repeat(4, 1fr);
	}
}

/* Colours
--------------------------------------------- */

.bg-primary{
	background-color: var(--primary-color);
}

.bg-midnight-blue{
	background-color: var(--midnight-blue);
}

.bg-midnight-blue-b1{
	background-color: var(--midnight-blue-b1);
}

.bg-image,
.bg-footer{
	background-color: var(--midnight-blue-b7);
}

.bg-white{
	background-color: #ffffff;
}

.bg-light{
	background-color: var(--midnight-blue-b8);
}

.bg-light-d{
	background-color: var(--midnight-blue-b7);
}

.txt-white{
	color: #ffffff;
}

.txt-light{
	color: var(--light-copy-color);
}

.txt-light-green{
	color: var(--kiwi-green-b1);
}

.txt-green{
	color: var(--kiwi-green);
}

.txt-divider{
	color: var(--border-color);
}

.txt-dark-divider,
.txt-blue{
	color: var(--midnight-blue-b3);
}

.txt-accent{
	color: var(--accent-color);
}

.txt-accent-lighter{
	color: var(--burgundy-b4);
}

.txt-default{
	color: var(--body-color);
}

/* Remove ScrollBar
--------------------------------------------- */

.rem-scrollbar,
.rem-scrollbar-hz{
	-ms-overflow-style: none;
    scrollbar-width: none;
}

.rem-scrollbar::-webkit-scrollbar,
.rem-scrollbar-hz::-webkit-scrollbar{
	width: 0;
	height: 0;
	display: none;
}


/* Scroll behaviour
--------------------------------------------- */
html{
	scroll-behavior: smooth;
}
html{	
	scroll-padding-top: 5.5rem;
}

html .admin-bar{
	scroll-padding-top: 8.375rem;
}

@media screen and (min-width: 48em) { /* 768px */
	html{
		scroll-padding-top: 10rem;
	}

	html .admin-bar{
		scroll-padding-top: 12rem;
	}
}

@media screen and (min-width: 48em) and (max-width: 48.875em) { /* 768px – 782px - Admin Bar Change */
	html .admin-bar{
		scroll-padding-top: 12.875rem;
	}
}

@media screen and (min-width: 75em) { /* 1200px */
	html{
		scroll-padding-top: 7.125rem;
	}

	html .admin-bar{
		scroll-padding-top: 9.125rem;
	}
}