@charset "UTF-8";
/*!
Theme Name: OGA
Theme URI: https://ogadesign.com.au/
Author: OGA Creative Agency
Author URI: https://ogadesign.com.au/
Description: Custom theme built by OGA Creative Agency.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: oga
*/
/*--------------------------------------------------------------
# 01 - Settings
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Colours
--------------------------------------------------------------*/
:root {
  --color-blue: #407988;
  --color-navy: #25344A;
  --color-grey: #595959;
  --color-light-grey: #646D7D;
  --color-lightest-grey: #F1F1F1;
  --color-white: #ffffff;
  --font-primary: "Montserrat", Arial, Helvetica, sans-serif;
  --shadow-sm: 0 0 0 1px hsla(0, 0%, 0%, 0.02),
  	0 1px 3px -1px hsla(0, 0%, 0%, 0.2);
  --layout-margin: 4.3333vw;
  --layout-width: calc(100vw - (2 * var(--layout-margin)));
  --ease-in: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  --ease-out: cubic-bezier(0.215, 0.61, 0.355, 1);
  --plyr-color-main: #407988;
}
@media (min-width: 1536px) {
  :root {
    --layout-margin: 6.6667vw;
  }
}

/*--------------------------------------------------------------
# 01 - Genric
--------------------------------------------------------------*/
/*! 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;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* 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;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
* 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;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* 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;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  /* 2 */
}

/**
* 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;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
* Add the correct font size in all browsers.
*/
small {
  font-size: 80%;
}

/**
* 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;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

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

/**
* Remove the inheritance of text transform in Edge, Firefox, and IE.
* 1. Remove the inheritance of text transform in Firefox.
*/
button,
select {
  /* 1 */
  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;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
* 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;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
* 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;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
* 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;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* 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;
}

/**
* Manually forked from SUIT CSS Base: https://github.com/suitcss/base
* A thin layer on top of normalize.css that provides a starting point more
* suitable for web applications.
*/
/**
* Removes the default spacing and border for appropriate elements.
*/
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

button {
  background-color: transparent;
  background-image: none;
}

/**
* Work around a Firefox/IE bug where the transparent `button` background
* results in a loss of the default `button` focus styles.
*/
button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

fieldset {
  margin: 0;
  padding: 0;
}

ol,
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*--------------------------------------------------------------
# 03 - Elements
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Document Setup
--------------------------------------------------------------*/
html {
  box-sizing: border-box;
  overflow-x: hidden;
}

*,
*:before,
*:after {
  box-sizing: inherit;
}

body {
  color: var(--color-navy);
  font-family: var(--font-primary);
  line-height: 1.46666667;
  line-height: 1.5;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
  display: grid;
  grid-template-rows: auto 1fr auto;
}

::-moz-selection {
  background: var(--color-blue);
  color: var(--color-white);
  text-shadow: none;
}

::selection {
  background: var(--color-blue);
  color: var(--color-white);
  text-shadow: none;
}

/**
* Paragraphs
*/
p {
  font-size: clamp(0.81rem, 0.19vw + 0.77rem, 0.95rem);
  line-height: 1.75;
}
p:empty {
  display: none;
}

/**
* Links
*/
a {
  color: inherit;
  text-decoration: none;
  outline: 0;
  transition: color 0.2s ease-in-out;
}

/**
* Buttons
*/
button {
  background-color: transparent;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: inherit;
  line-height: inherit;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
button:focus {
  outline: none;
}

/**
* HR
*/
hr {
  border-width: 0;
}

/**
* Fieldset
*/
fieldset {
  border: none;
}

/**
* Images
*/
img {
  max-width: 100%;
  vertical-align: middle;
  display: inline-block;
}

/**
* Address
*/
address {
  margin-top: 0;
  font-style: normal;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.33;
}

h1,
.h1 {
  font-size: clamp(1.25rem, 1.03vw + 1.01rem, 2rem);
}

h2,
.h2 {
  font-size: clamp(1.33rem, 1.96vw + 0.87rem, 2.75rem);
  line-height: 1.2;
}

h3,
.h3 {
  font-size: clamp(1rem, 1.2vw + 0.72rem, 1.88rem);
}

h4,
.h4 {
  font-size: clamp(1rem, 0.34vw + 0.92rem, 1.25rem);
}

.h4-alt {
  font-size: clamp(1rem, 0.69vw + 0.84rem, 1.5rem);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .h4-alt {
    line-height: 1.33;
  }
}

h5,
.h5 {
  font-size: clamp(0.88rem, 0.25vw + 0.82rem, 1.06rem);
}

h6,
.h6 {
  font-size: clamp(0.63rem, 0.17vw + 0.59rem, 0.75rem);
}

.p-sm {
  font-size: clamp(0.88rem, 0.07vw + 0.86rem, 0.93rem);
}

.p-md {
  font-size: clamp(0.93rem, 0.45vw + 0.82rem, 1.25rem);
}

/*--------------------------------------------------------------
# 04 - Layout
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Container
--------------------------------------------------------------*/
.container {
  width: 100%;
  max-width: 82rem;
  padding-left: 1rem;
  padding-right: 1rem;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .container {
    padding-left: 4rem;
    padding-right: 4rem;
  }
}
.container--fluid {
  max-width: var(--layout-width);
  padding: 0;
}

/*--------------------------------------------------------------
# Section
--------------------------------------------------------------*/
.section {
  padding-top: clamp(2.67rem, 2vw + 2.21rem, 4.13rem);
  padding-bottom: clamp(2.67rem, 2vw + 2.21rem, 4.13rem);
}
.section--lg {
  padding-top: clamp(3.5rem, 3.77vw + 2.63rem, 6.25rem);
  padding-bottom: clamp(3.5rem, 3.77vw + 2.63rem, 6.25rem);
}
.section--no-padding {
  padding: 0;
}
.section--no-padding-top {
  padding-top: 0;
}
.section--no-padding-bottom {
  padding-bottom: 0;
}
.section--offset {
  padding-top: 0;
  padding-bottom: 0;
}
@media (min-width: 1024px) {
  .section--offset {
    margin-top: -10rem;
    z-index: 5;
  }
}

/**
* Watermark
*/
.section--watermark-v1 {
  background: linear-gradient(rgba(241, 241, 241, 0.6), rgba(241, 241, 241, 0));
  position: relative;
  overflow: hidden;
  z-index: 0;
}
.section--watermark-v1 .watermark {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  opacity: 0.6;
  z-index: -1;
}
@media (min-width: 1024px) {
  .section--watermark-v1 .watermark {
    top: -5%;
    width: 50%;
  }
}
.section--watermark-v1 .container {
  position: relative;
  z-index: 5;
}

.section--watermark-v2 {
  position: relative;
}
.section--watermark-v2 .watermark {
  position: absolute;
  top: -8rem;
  left: -5rem;
  width: 100%;
  height: auto;
  z-index: -1;
  -webkit-animation: fade-in 1.5s cubic-bezier(0.28, 0, 0.49, 1);
          animation: fade-in 1.5s cubic-bezier(0.28, 0, 0.49, 1);
}
@media (min-width: 1024px) {
  .section--watermark-v2 .watermark {
    top: -16rem;
    left: -10%;
    width: 55%;
  }
}

@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/**
* Intro
*/
.section--intro {
  position: relative;
  padding-bottom: 0;
}
.section--intro .watermark {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: auto;
  opacity: 0.8;
  z-index: -1;
}
@media (min-width: 1024px) {
  .section--intro .watermark {
    top: -10%;
    width: 55%;
  }
}

/**
* Events
*/
.section--events {
  background-color: var(--color-blue);
  position: relative;
  overflow: hidden;
}
@media (min-width: 1024px) {
  .section--events {
    padding-top: 18rem;
    padding-bottom: clamp(3.5rem, 6.17vw + 2.07rem, 8rem);
    margin-top: -12rem;
    z-index: 5;
  }
}
.section--events .watermark {
  position: absolute;
  bottom: 0;
  left: -10%;
  width: 100%;
  height: auto;
  opacity: 0.8;
  z-index: -1;
}
@media (min-width: 1024px) {
  .section--events .watermark {
    width: 50%;
  }
}
.section--contact-info {
  background-color: var(--color-blue);
  position: relative;
  overflow: hidden;
  padding-top: clamp(3rem, 4vw + 2rem, 5rem);
  padding-bottom: clamp(3rem, 4vw + 2rem, 5rem);
}
.section--contact-info .watermark {
  position: absolute;
  bottom: 0;
  left: -10%;
  width: 80%;
  height: auto;
  opacity: 0.8;
  z-index: 0;
}
@media (min-width: 768px) {
  .section--contact-info .watermark {
    width: 40%;
  }
}
.section--contact-info .container {
  position: relative;
  z-index: 1;
}

/*--------------------------------------------------------------
# Grid
--------------------------------------------------------------*/
.grid {
  display: grid;
}

/**
* Animals
*/
.grid--animals {
  grid-template-columns: 1fr;
  grid-gap: clamp(2rem, 2.74vw + 1.37rem, 4rem);
}
@media (min-width: 768px) {
  .grid--animals {
    grid-template-columns: repeat(2, minmax(1rem, 1fr));
  }
}

/**
* Lots
*/
.grid--lots {
  grid-template-columns: 1fr;
  grid-gap: clamp(0.5rem, 2.06vw + 0.02rem, 2rem);
}
@media (min-width: 768px) {
  .grid--lots {
    grid-template-columns: repeat(2, minmax(1rem, 1fr));
  }
}
@media (min-width: 1024px) {
  .grid--lots {
    grid-template-columns: repeat(3, minmax(1rem, 1fr));
  }
}

/**
* Staff
*/
.grid--staff {
  grid-template-columns: 1fr;
  grid-gap: 4rem;
}
@media (min-width: 768px) {
  .grid--staff {
    grid-template-columns: repeat(2, minmax(1rem, 1fr));
  }
}
@media (min-width: 1024px) {
  .grid--staff {
    grid-template-columns: repeat(3, minmax(1rem, 1fr));
  }
}

/**
* Features
*/
.grid--features {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  gap: 4vw;
  margin-top: clamp(3rem, 1.37vw + 2.68rem, 4rem);
}
@media (min-width: 1024px) {
  .grid--features {
    justify-content: center;
    gap: 6vw;
  }
}

/**
* Cattle
*/
.grid--cattle {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 4vw;
  margin-top: clamp(3rem, 1.37vw + 2.68rem, 4rem);
}
@media (min-width: 1024px) {
  .grid--cattle {
    gap: 6vw;
  }
}

/**
* Traits
*/
.grid--traits {
  grid-template-columns: 1fr;
  grid-gap: clamp(1.5rem, 6.17vw + 0.07rem, 6rem);
}
@media (min-width: 1024px) {
  .grid--traits {
    grid-template-columns: repeat(3, minmax(1rem, 1fr));
  }
}

/**
* Agents
*/
.grid--agents {
  grid-template-columns: 1fr;
  grid-column-gap: clamp(1rem, 4.12vw + 0.05rem, 4rem);
  grid-row-gap: clamp(1rem, 1.37vw + 0.68rem, 2rem);
}
@media (min-width: 1024px) {
  .grid--agents {
    grid-template-columns: repeat(2, minmax(1rem, 1fr));
  }
}

/**
* News
*/
.grid--news {
  grid-template-columns: 1fr;
  grid-gap: clamp(1.25rem, 0vw + 1.25rem, 1.25rem);
}

/**
* Properties
*/
.grid--properties {
  grid-template-columns: 1fr;
  grid-gap: clamp(3rem, 4.12vw + 2.05rem, 6rem);
  position: relative;
  z-index: 5;
}
@media (min-width: 768px) {
  .grid--properties {
    grid-template-columns: repeat(2, minmax(1rem, 1fr));
  }
}

/**
* Contact
*/
.grid--contact {
  grid-template-columns: 1fr;
  grid-gap: clamp(3rem, 6.86vw + 1.41rem, 8rem);
  position: relative;
  z-index: 5;
}
@media (min-width: 768px) {
  .grid--contact {
    grid-template-columns: repeat(2, minmax(1rem, 1fr));
  }
}

/**
* Contact Form
*/
.grid--contact-form {
  grid-template-columns: 1fr;
  max-width: 64rem;
  margin-top: 3rem;
}

/**
* Article
*/
.grid--article {
  grid-template-columns: 1fr;
  grid-gap: clamp(3rem, 6.86vw + 1.41rem, 8rem);
  position: relative;
  z-index: 5;
}
@media (min-width: 768px) {
  .grid--article {
    grid-template-columns: 1fr 0.5fr;
  }
}

/*--------------------------------------------------------------
# 05 - Components
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Accordion
--------------------------------------------------------------*/
.accordion__item {
  border-bottom: 1.5px solid var(--color-navy);
}
.accordion__header {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-align: left;
  padding: 1.75rem 0;
  width: 100%;
}
.accordion__header .icon {
  font-size: 1rem;
}
.accordion__header .icon .icon__group {
  stroke-width: 1.25px;
}
.accordion .prose {
  max-width: 60rem;
}

.accordion__icon-plus .icon__group {
  will-change: transform;
  transform-origin: 50% 50%;
}

.accordion__icon-plus .icon__group {
  transform: rotate(0);
}
.accordion__icon-plus .icon__group > *:first-child {
  transform: rotate(0);
}

.accordion__item--is-open > .accordion__header > .accordion__icon-plus .icon__group {
  transform: rotate(-90deg);
  color: var(--color-blue);
}
.accordion__item--is-open > .accordion__header > .accordion__icon-plus .icon__group > * {
  transform-origin: 50% 50%;
}
.accordion__item--is-open > .accordion__header > .accordion__icon-plus .icon__group > *:first-child {
  transform: rotate(-90deg);
}

.accordion__panel {
  display: none;
  will-change: height;
  transform: translateZ(0px);
}
.accordion__panel .btn {
  margin-top: clamp(1rem, 0.69vw + 0.84rem, 1.5rem);
  margin-bottom: clamp(1rem, 2.74vw + 0.37rem, 3rem);
}

.accordion__item--is-open > .accordion__panel {
  display: block;
}

.accordion[data-animation=on] .accordion__item--is-open .accordion__panel > * {
  -webkit-animation: accordion-entry-animation 0.4s ease;
          animation: accordion-entry-animation 0.4s ease;
}
.accordion[data-animation=on] .accordion__icon-plus .icon__group {
  transition: transform 0.3s ease;
}
.accordion[data-animation=on] .accordion__icon-plus .icon__group > * {
  transition: transform 0.3s, stroke-dashoffset 0.3s;
  transition-timing-function: ease;
}

@-webkit-keyframes accordion-entry-animation {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0px);
  }
}

@keyframes accordion-entry-animation {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0px);
  }
}
/*--------------------------------------------------------------
# Animal
--------------------------------------------------------------*/
.animal {
  border-bottom: 2px solid var(--color-blue);
  position: relative;
  overflow: hidden;
  padding-bottom: clamp(3.5rem, 0.51vw + 3.38rem, 3.88rem);
}
.animal__media {
  border-bottom-right-radius: clamp(1.5rem, 1.72vw + 1.1rem, 2.75rem);
  overflow: hidden;
  margin-bottom: clamp(1rem, 1.37vw + 0.68rem, 2rem);
}
.animal__video {
  position: relative;
}
.animal__title {
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 0.75rem;
}
.animal__excerpt p {
  font-size: clamp(0.75rem, 0.22vw + 0.7rem, 0.91rem);
}
.animal__excerpt p + p {
  margin-top: 1em;
}
.animal__excerpt--sm {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.animal__link {
  background: var(--color-blue);
  color: var(--color-white);
  cursor: pointer;
  font-size: clamp(0.63rem, 0.17vw + 0.59rem, 0.75rem);
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1;
  text-transform: uppercase;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 0.75rem;
}
@media (min-width: 1024px) {
  .animal__link {
    padding: 0.5rem 1.125rem;
    opacity: 0;
    visibility: hidden;
    transform: translateY(100%);
    transition: 0.4s cubic-bezier(0.075, 0.82, 0.165, 1);
  }
}
@media (min-width: 1024px) {
  .animal:hover .animal__link {
    transform: translateY(2px);
    opacity: 1;
    visibility: visible;
  }
}

/*--------------------------------------------------------------
# Banner
--------------------------------------------------------------*/
.banner {
  position: relative;
  height: 0;
  padding-bottom: 60%;
}
@media (min-width: 768px) {
  .banner {
    padding-bottom: 40%;
  }
}
@media (min-width: 768px) {
  .banner--lg {
    padding-bottom: 40%;
  }
}
.banner > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.banner > *:not(iframe) {
  -o-object-fit: cover;
     object-fit: cover;
}

/*--------------------------------------------------------------
# Benefits
--------------------------------------------------------------*/
.benefits {
  display: grid;
  grid-column-gap: 10vw;
  grid-row-gap: clamp(2rem, 2.74vw + 1.37rem, 4rem);
  grid-template-columns: 1fr;
  margin-top: clamp(2.5rem, 3.43vw + 1.71rem, 5rem);
}
@media (min-width: 768px) {
  .benefits {
    grid-template-columns: repeat(2, minmax(1rem, 1fr));
  }
}
.benefits__item {
  display: flex;
  max-width: 48ch;
}
.benefits .icon {
  font-size: clamp(3rem, 2.74vw + 2.37rem, 5rem);
  margin-right: clamp(2rem, 1.37vw + 1.68rem, 3rem);
}

/*--------------------------------------------------------------
# Buttons
--------------------------------------------------------------*/
.btn {
  border-radius: 0.25rem;
  border: 2px solid transparent;
  color: var(--color-navy);
  cursor: pointer;
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: clamp(0.63rem, 0.24vw + 0.57rem, 0.8rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.01em;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
  padding: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem) clamp(0.75rem, 0.69vw + 0.59rem, 1.25rem);
  transition: 0.2s var(--ease-out);
}
.btn--white {
  color: var(--color-blue);
  background-color: var(--color-white);
}
.btn--white:hover {
  background-color: var(--color-navy);
  color: var(--color-white);
}
.btn--outline-white {
  border-color: var(--color-white);
}
.btn--outline-white:hover {
  background-color: var(--color-white);
  color: var(--color-blue);
}
.btn--outline-blue {
  border-color: var(--color-blue);
  color: var(--color-blue);
}
.btn--outline-blue:hover {
  background-color: var(--color-blue);
  color: var(--color-white);
}
.btn--icon {
  transition: box-shadow, transform 0.25s cubic-bezier(0.28, 0, 0.49, 1);
}
.btn--icon .icon {
  font-size: 0.8em;
  margin-left: 0.875rem;
}
.btn--icon:hover {
  box-shadow: 0 0.5em 0.5em -0.4em rgba(255, 255, 255, 0.25);
  transform: translateY(-0.25em);
}

/**
* Wrap
*/
.btn-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(0.5rem, 0.51vw + 0.38rem, 0.88rem);
}
.btn-wrap--stacked {
  flex-direction: column;
}
.btn-wrap > * {
  align-self: flex-start;
}

/*--------------------------------------------------------------
# Cards
--------------------------------------------------------------*/
.card {
  background-color: var(--color-white);
  border-radius: clamp(0.33rem, 0.58vw + 0.19rem, 0.75rem) clamp(0.33rem, 0.58vw + 0.19rem, 0.75rem) clamp(2.88rem, 1.54vw + 2.52rem, 4rem) clamp(0.33rem, 0.58vw + 0.19rem, 0.75rem);
  display: grid;
  grid-template-columns: 1fr;
  filter: drop-shadow(0 0.2rem 0.25rem rgba(0, 0, 0, 0.06));
  height: auto;
  width: 100%;
  overflow: hidden;
  position: relative;
  z-index: 5;
}
@media (min-width: 1024px) {
  .card {
    grid-template-columns: 0.66fr 1fr;
  }
}
.card__media {
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
}
.card__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.66s ease;
}
.card__title {
  color: var(--color-blue);
  font-size: clamp(0.93rem, 0.55vw + 0.8rem, 1.33rem);
  max-width: 80%;
  font-weight: 700;
  line-height: 1.22;
  margin-bottom: 0.25rem;
}
@media (min-width: 768px) {
  .card__title {
    max-width: 100%;
  }
}
.card__subtitle {
  color: var(--color-grey);
  font-size: clamp(0.75rem, 0.42vw + 0.65rem, 1.06rem);
  font-weight: 600;
  text-transform: uppercase;
}
.card__excerpt p {
  font-size: clamp(0.75rem, 0.24vw + 0.69rem, 0.93rem);
  line-height: 1.8;
}
.card__content {
  color: var(--color-navy);
  padding: 2rem 1.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  z-index: 5;
}
@media (min-width: 1024px) {
  .card__content {
    padding: 3rem;
  }
}
.card__content p {
  max-width: 40rem;
}
.card__excerpt {
  margin-top: clamp(0.5rem, 0.86vw + 0.3rem, 1.13rem);
  margin-bottom: clamp(1rem, 0.69vw + 0.84rem, 1.5rem);
}
.card__watermark {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -10%;
  width: 40%;
  height: auto;
  z-index: -1;
}

/*--------------------------------------------------------------
# CTA
--------------------------------------------------------------*/
.cta {
  color: var(--color-white);
  border-radius: 0.25rem;
  text-align: center;
  padding-top: clamp(2.67rem, 18.63vw + -1.64rem, 16.25rem);
  padding-bottom: clamp(2.67rem, 18.63vw + -1.64rem, 16.25rem);
  position: relative;
  margin-bottom: -9rem;
  overflow: hidden;
  z-index: 10;
}
.cta__content {
  position: relative;
  z-index: 5;
}
.cta__title {
  font-size: clamp(1.63rem, 1.89vw + 1.19rem, 3rem);
  max-width: 80%;
  margin: 0 auto 1.875rem auto;
  line-height: 1.345;
  font-weight: 600;
}
@media (min-width: 768px) {
  .cta__title {
    margin: 0 auto 3rem auto;
  }
}
.cta__bg-grid {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: auto;
  z-index: 0;
}
.cta__watermark {
  position: absolute;
  bottom: -140%;
  left: -60%;
  width: 180%;
  height: auto;
  z-index: 0;
}
.cta .btn {
  border-color: var(--color-white);
}

/**
* Archive CTA
*/
.archive-cta {
  border: 1.5px solid var(--color-navy);
  border-radius: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: clamp(1rem, 2.06vw + 0.52rem, 2.5rem) clamp(1.75rem, 2.4vw + 1.19rem, 3.5rem);
  transition: 0.3s ease;
}
.archive-cta__title {
  font-size: clamp(1.33rem, 0.41vw + 1.23rem, 1.63rem);
}
.archive-cta .icon {
  font-size: 1.75rem;
}
.archive-cta:hover {
  color: var(--color-blue);
}

/*--------------------------------------------------------------
# Centered
--------------------------------------------------------------*/
.centered {
  text-align: left;
  max-width: 84ch;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .centered {
    text-align: center;
  }
}
.centered p {
  max-width: 70ch;
  margin-left: auto;
  margin-right: auto;
}
.centered br {
  display: none;
}
@media (min-width: 768px) {
  .centered br {
    display: block;
  }
}
.centered .prose {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.centered--lg {
  margin-bottom: clamp(1.5rem, 6.17vw + 0.07rem, 6rem);
}

/*--------------------------------------------------------------
# Empty
--------------------------------------------------------------*/
.empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 16vh 0;
  position: relative;
  z-index: 5;
}
.empty__title {
  font-size: 3.125vw;
}
.empty .btn {
  display: flex;
  margin: 2rem auto 0 auto;
}

/*--------------------------------------------------------------
# Features
--------------------------------------------------------------*/
.features {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.features__media {
  border-radius: 5%;
  width: clamp(8rem, 8.23vw + 6.1rem, 14rem);
  height: clamp(8rem, 8.23vw + 6.1rem, 14rem);
  overflow: hidden;
  margin-bottom: 1.5rem;
  transition: box-shadow 0.2s var(--ease-out), transform 0.6s var(--ease-out);
}
.features__media--sm {
  border-radius: 0;
  width: clamp(3.5rem, 3.43vw + 2.71rem, 6rem);
  height: clamp(3.5rem, 3.43vw + 2.71rem, 6rem);
}
.features__media--lg {
  width: clamp(3.5rem, 21.27vw + -1.42rem, 19rem);
  height: clamp(3.5rem, 21.27vw + -1.42rem, 19rem);
}
.features__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.features__title {
  font-size: clamp(0.8rem, 0.27vw + 0.74rem, 1rem);
  letter-spacing: initial;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}
.features .icon {
  font-size: clamp(1rem, 0.45vw + 0.9rem, 1.33rem);
}
.features:hover .features__media:not(.features__media--sm) {
  box-shadow: 0 8px 12px 0 rgba(0, 0, 0, 0.08);
  transform: scale(1.05);
}

/*--------------------------------------------------------------
# Flickity
--------------------------------------------------------------*/
.flickity-enabled {
  position: relative;
}

.flickity-enabled:focus {
  outline: none;
}

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}

/**
* Draggable
*/
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/**
* Flickity Button
*/
.flickity-button {
  position: absolute;
  border: none;
  color: var(--color-navy);
  display: flex;
  align-items: center;
  justify-content: center;
}
.flickity-button::before {
  content: "";
  transition: 0.2s var(--ease-out);
  background-position: center center;
  background-repeat: no-repeat;
  position: absolute;
  width: 1.125rem;
  height: 1.125rem;
  z-index: 5;
  transition: 0.2s var(--ease-out);
}
@media (min-width: 1024px) {
  .flickity-button::before {
    width: 1.5rem;
    height: 1.5rem;
  }
}

.flickity-button:hover {
  cursor: pointer;
}
.flickity-button:hover::before {
  transform: scale(1.1);
}

.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px var(--color-blue);
}

.flickity-button:active {
  opacity: 0.6;
}

.flickity-button:disabled {
  display: none;
}

.flickity-button-icon {
  display: none;
  fill: currentColor;
}

/**
* Previous/next buttons
*/
.flickity-prev-next-button {
  bottom: -2.5rem;
}
@media (min-width: 1024px) {
  .flickity-prev-next-button {
    top: 50%;
    width: 2rem;
    height: 2rem;
    transform: translateY(-50%);
  }
}

.flickity-prev-next-button.previous {
  left: 1.5rem;
}
@media (min-width: 1024px) {
  .flickity-prev-next-button.previous {
    left: -2.875rem;
  }
}
@media (min-width: 1280px) {
  .flickity-prev-next-button.previous {
    left: -3.5rem;
  }
}
.flickity-prev-next-button.previous::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon--lg' viewBox='0 0 22 15'%3E%3Ctitle%3EShow previous items%3C/title%3E%3Cg fill='none' fill-rule='evenodd' stroke='currentcolor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.2'%3E%3Cpath d='M7.221 1L1.5 7.419 7.221 13.837'/%3E%3Cpath d='M1.5 7.419L21.065 7.419'/%3E%3C/g%3E%3C/svg%3E%0A");
}

.flickity-prev-next-button.next {
  right: 1.5rem;
}
@media (min-width: 1024px) {
  .flickity-prev-next-button.next {
    right: -2.875rem;
  }
}
@media (min-width: 1280px) {
  .flickity-prev-next-button.next {
    right: -3.5rem;
  }
}
.flickity-prev-next-button.next::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon--lg' viewBox='0 0 21 14'%3E%3Ctitle%3EShow next items%3C/title%3E%3Cg stroke-width='1.2' fill='none' fill-rule='evenodd' stroke='currentcolor' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.4443 13.4372L20.1653 7.0182 14.4443 0.6002'/%3E%3Cpath d='M20.165 7.019L0.6 7.019'/%3E%3C/g%3E%3C/svg%3E%0A");
}

/**
* Page Dots
*/
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.flickity-page-dots .dot.is-selected {
  opacity: 1;
}

/**
* Custom
*/
.carousel__item {
  width: 100%;
}
@media (min-width: 768px) {
  .carousel__item {
    width: calc((100% - 1rem) / 2);
    margin-right: 1rem;
  }
}
@media (min-width: 1280px) {
  .carousel__item {
    width: calc((100% - 3rem) / 3);
    margin-right: 1.5rem;
  }
}
.carousel__item--full {
  width: 100%;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.footer {
  background-color: var(--color-navy);
  padding: 3.5rem 0 0 0;
  position: relative;
  overflow: hidden;
}
@media (min-width: 1280px) {
  .footer {
    padding: 3.5rem 0 0 0;
  }
}
.footer__logo {
  display: flex;
  width: clamp(10rem, 5.49vw + 8.73rem, 14rem);
  margin: 0 auto 1.5rem auto;
  height: auto;
}
@media (min-width: 1024px) {
  .footer__logo {
    margin: 0;
  }
}
.footer__logo svg,
.footer__logo img {
  display: block;
  width: 100%;
  height: auto;
}
.footer__grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 1rem;
  position: relative;
  z-index: 5;
}
@media (min-width: 1024px) {
  .footer__grid {
    grid-template-columns: 1fr auto auto auto;
    grid-gap: 9vw;
  }
}
@media (min-width: 1280px) {
  .footer__grid {
    grid-template-columns: 1fr auto auto 1fr;
    grid-gap: 9vw;
  }
}
.footer__item {
  text-align: center;
}
@media (min-width: 1024px) {
  .footer__item {
    text-align: left;
  }
}
.footer__title {
  margin-top: 3rem;
  font-size: clamp(1rem, 0.17vw + 0.96rem, 1.13rem);
  font-weight: 600;
  margin-bottom: 1.5rem;
  line-height: 1.5;
}
@media (min-width: 1024px) {
  .footer__title {
    margin-top: 0;
  }
}
.footer__list * + * {
  margin-top: clamp(1rem, 0.34vw + 0.92rem, 1.25rem);
}
.footer__link {
  color: var(--color-white);
  font-size: clamp(0.88rem, 0.07vw + 0.86rem, 0.93rem);
  font-weight: 500;
  line-height: 1.66;
}
.footer__bottom {
  color: var(--color-grey);
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 2.5rem;
  padding-bottom: 1.25rem;
  position: relative;
  z-index: 5;
}
@media (min-width: 1024px) {
  .footer__bottom {
    padding-bottom: 1.5rem;
    justify-content: space-between;
  }
}
.footer__copyright {
  color: var(--color-white);
  font-size: 0.75rem;
  font-weight: 400;
  text-align: center;
}
@media (min-width: 1024px) {
  .footer__copyright {
    text-align: left;
  }
}
.footer__copyright > * + * {
  margin-left: 0.5rem;
}
.footer__socials {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 2rem;
}
@media (min-width: 1024px) {
  .footer__socials {
    justify-content: flex-start;
  }
}
.footer__socials > * + * {
  margin-left: 1.5rem;
}
.footer__socials .icon {
  color: #407988;
  font-size: clamp(1.13rem, 0.69vw + 0.97rem, 1.63rem);
  transition: color 0.2s var(--ease-out);
}
.footer__socials a:hover .icon {
  color: var(--color-white);
}
.footer__signup {
  margin-bottom: 1.5rem;
}
.footer__signup--btn {
  background-color: transparent;
  border: 1.5px solid var(--color-white);
  border-radius: 0 0 0 clamp(1rem, 0.45vw + 0.9rem, 1.33rem);
  color: var(--color-white);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  font-size: clamp(0.7rem, 0.14vw + 0.67rem, 0.8rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.01em;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  padding: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem) clamp(1.25rem, 0.27vw + 1.19rem, 1.45rem);
  transition: 0.2s var(--ease-out);
}
.footer__signup--flex {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 0;
  width: 100%;
}
.footer__signup--flexend {
  display: flex;
  justify-content: flex-end;
  margin-top: 1.5rem;
}
.footer__signup--row {
  display: flex;
  gap: 1rem;
}
.footer__signup--input {
  background-color: transparent;
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid var(--color-white);
  color: var(--color-white);
  display: inline-flex;
  font-size: clamp(0.75rem, 0.17vw + 0.71rem, 0.88rem);
  font-weight: 500;
  letter-spacing: 0.0063rem;
  line-height: 1.375rem;
  padding: 0;
  width: 100%;
  margin-bottom: 1.5rem;
  transition: border-color 200ms ease;
}
.footer__signup--radio {
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: var(--color-blue);
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 100%;
  display: inline-block;
  vertical-align: middle;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  flex-shrink: 0;
  height: clamp(0.75rem, 0.24vw + 0.69rem, 0.93rem);
  width: clamp(0.75rem, 0.24vw + 0.69rem, 0.93rem);
  padding: 0;
  margin-right: 0.5rem;
  margin-bottom: 0;
}
.footer__signup--radio:checked {
  border-color: transparent;
  background-color: currentColor;
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
.gfield {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  width: 100%;
}

.gform_fields {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 0;
  width: 100%;
}

.gfield_required {
  display: none;
}

.ginput_full {
  flex-basis: 100%;
  max-width: 100%;
}

.gf_left_half,
.gf_right_half {
  flex-basis: 100%;
  max-width: 100%;
}
@media (min-width: 768px) {
  .gf_left_half,
.gf_right_half {
    flex-basis: 49%;
  }
}

.gf_left_half {
  margin-right: 0;
}
@media (min-width: 768px) {
  .gf_left_half {
    margin-right: 2%;
  }
}

/**
* Input
*/
.ginput_container input:not([type=checkbox]),
.ginput_container textarea {
  background-color: transparent;
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid var(--color-white);
  color: var(--color-white);
  display: inline-flex;
  font-size: clamp(0.75rem, 0.17vw + 0.71rem, 0.88rem);
  font-weight: 500;
  letter-spacing: 0.0063rem;
  line-height: 1.375rem;
  padding: 0;
  height: 2.75rem;
  width: 100%;
  margin-bottom: 1.5rem;
  transition: border-color 200ms ease;
}
.ginput_container input:not([type=checkbox]):active, .ginput_container input:not([type=checkbox]):focus,
.ginput_container textarea:active,
.ginput_container textarea:focus {
  outline: 0;
}

/**
* Textarea
*/
.ginput_container textarea {
  height: 14rem;
  padding-top: 1.125rem;
  padding-bottom: 1.125rem;
  resize: none;
}

/**
* Select
*/
.ginput_container select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: var(--color-white);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
  background-position-x: calc(100% - 8px);
  background-position-y: 50%;
  background-repeat: no-repeat;
  background-size: 1.5rem 1.5rem;
  border: 1px solid #e5ebf0;
  border-radius: 0.25rem;
  color: var(--color-light-grey);
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.0063rem;
  line-height: 1.375rem;
  padding: 0 clamp(1.13rem, 0.17vw + 1.09rem, 1.25rem);
  height: clamp(3rem, 0vw + 3rem, 3rem);
  margin-bottom: 1rem;
  width: 100%;
}
.ginput_container select:active, .ginput_container select:focus {
  border-color: var(--color-blue);
  box-shadow: rgb(255, 255, 255) 0px 0px 0px 0px, rgba(0, 157, 220, 0.1) 0px 0px 0px 3px, rgba(0, 157, 220, 0.01) 0px 1px 2px 0px;
  outline: 0;
}

/**
* Radio Button
*/
.ginput_container input[type=radio] {
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: var(--color-blue);
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 100%;
  display: inline-block;
  vertical-align: middle;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  flex-shrink: 0;
  height: clamp(0.75rem, 0.24vw + 0.69rem, 0.93rem);
  width: clamp(0.75rem, 0.24vw + 0.69rem, 0.93rem);
  padding: 0;
  margin-right: 0.5rem;
  margin-bottom: 0;
}
.ginput_container input[type=radio]:checked {
  border-color: transparent;
  background-color: currentColor;
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
}
.ginput_container input[type=radio] + label {
  font-size: clamp(0.87rem, 0.18vw + 0.83rem, 1rem);
}

/**
* Btn
*/
.gform_footer input[type=submit] {
  background-color: transparent;
  border: 1.5px solid var(--color-white);
  border-radius: 0 0 0 clamp(1rem, 0.45vw + 0.9rem, 1.33rem);
  color: var(--color-white);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  font-size: clamp(0.7rem, 0.14vw + 0.67rem, 0.8rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.01em;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  padding: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem) clamp(2rem, 0.62vw + 1.86rem, 2.45rem) clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem) clamp(1.25rem, 0.27vw + 1.19rem, 1.45rem);
  transition: 0.2s var(--ease-out);
}

.gfield input[type=file]::-webkit-file-upload-button {
  background-color: var(--color-blue);
  border-radius: 0.25rem;
  border: 2px solid transparent;
  color: var(--color-white);
  cursor: pointer;
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: clamp(0.63rem, 0.24vw + 0.57rem, 0.8rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.01em;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
  padding: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem) clamp(0.75rem, 0.69vw + 0.59rem, 1.25rem);
  -webkit-transition: 0.2s var(--ease-out);
  transition: 0.2s var(--ease-out);
}

.gform_next_button,
.gform_previous_button,
.gform_button.button,
.gfield input[type=file]::file-selector-button {
  background-color: var(--color-blue);
  border-radius: 0.25rem;
  border: 2px solid transparent;
  color: var(--color-white);
  cursor: pointer;
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: clamp(0.63rem, 0.24vw + 0.57rem, 0.8rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.01em;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
  padding: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem) clamp(0.75rem, 0.69vw + 0.59rem, 1.25rem);
  transition: 0.2s var(--ease-out);
}
@media (min-width: 768px) {
  .gfield input[type=file]::-webkit-file-upload-button {
    min-width: 8rem;
  }
  .gform_next_button,
.gform_previous_button,
.gform_button.button,
.gfield input[type=file]::file-selector-button {
    min-width: 8rem;
  }
}

.gform_previous_button {
  background-color: var(--color-navy);
}

.gform_footer {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  position: relative;
  margin-left: auto;
}
.gform_footer span {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 28 17' width='28' height='17' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd' stroke-linecap='round' stroke='%23fff' stroke-width='1.5'%3E%3Cpath stroke-linejoin='round' d='M21 1L27 8.5 21 16'/%3E%3Cpath d='M26.25 8.75L0.75 8.75'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 100%;
  background-repeat: no-repeat;
  flex-shrink: 0;
  height: 0.875em;
  width: 0.875em;
  position: absolute;
  top: 40%;
  right: 0.925rem;
  transition: 0.15s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (min-width: 768px) {
  .gform_footer span {
    top: 40%;
  }
}

#gform_1 .gform_footer:hover #gform_submit_button_1 {
  background-color: var(--color-blue);
  color: var(--color-white);
}

#gform_2 .gform_footer:hover #gform_submit_button_2,
#gform_2 .gform_footer:hover #gform_submit_button_3,
#gform_3 .gform_footer:hover #gform_submit_button_2,
#gform_3 .gform_footer:hover #gform_submit_button_3 {
  background-color: var(--color-white);
  color: var(--color-blue);
}
#gform_2 .gform_footer:hover span,
#gform_3 .gform_footer:hover span {
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 28 17' width='28' height='17' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd' stroke-linecap='round' stroke='%23009DDC' stroke-width='1.5'%3E%3Cpath stroke-linejoin='round' d='M21 1L27 8.5 21 16'/%3E%3Cpath d='M26.25 8.75L0.75 8.75'/%3E%3C/g%3E%3C/svg%3E");
}

/**
* Label
*/
.hidden_label .gfield_label {
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  width: 1px;
  height: 1px;
  overflow: hidden;
  padding: 0;
  border: 0;
  white-space: nowrap;
}

/**
* Placeholder
*/
.gform_fields .gfield input::-webkit-input-placeholder,
.gform_fields .gfield textarea::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.8);
}

.gform_fields .gfield input::-moz-placeholder,
.gform_fields .gfield textarea::-moz-placeholder {
  color: rgba(255, 255, 255, 0.8);
}

.gform_fields .gfield input:-ms-input-placeholder,
.gform_fields .gfield textarea:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.8);
}

/**
* Title
*/
.gsection_title {
  font-size: clamp(0.88rem, 0.17vw + 0.84rem, 1rem);
  margin-bottom: 1rem;
}

/**
* Section
*/
.gsection {
  margin-top: 1rem;
}

/**
* Description
*/
.gform_description {
  font-size: clamp(1rem, 0.34vw + 0.92rem, 1.25rem);
}

/**
* HTML
*/
.gfield_html {
  font-size: clamp(0.81rem, 0.09vw + 0.79rem, 0.88rem);
  margin-bottom: clamp(1rem, 0.69vw + 0.84rem, 1.5rem);
}

/**
* Address
*/
.ginput_container_address {
  display: grid;
  grid-auto-columns: 1fr;
  grid-column-gap: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem);
  grid-row-gap: 0;
}
@media (min-width: 768px) {
  .ginput_container_address {
    grid-template-columns: repeat(2, minmax(1rem, 1fr));
  }
}
.ginput_container_address label {
  display: none;
}
.ginput_container_address .gf_clear.gf_clear_complex {
  display: none;
}

/**
* Progress Bar
*/
.gf_progressbar {
  display: none;
}

.gf_progressbar_wrapper {
  border-bottom: 1px solid var(--color-light-grey);
  margin-bottom: clamp(1rem, 1.37vw + 0.68rem, 2rem);
  padding-bottom: clamp(1rem, 1.37vw + 0.68rem, 2rem);
}

/**
* Validation
*/
.validation_error,
.gform_validation_errors {
  display: none;
}

.validation_message {
  color: #f33;
  font-size: 0.75rem;
  line-height: 1;
  margin-bottom: 0;
}
@media (min-width: 1024px) {
  .validation_message {
    font-size: 0.8rem;
    line-height: 1;
    margin-top: -0.75rem;
    margin-bottom: 1rem;
  }
}

@media (min-width: 1024px) {
  .gfield--type-radio .validation_message {
    margin-top: 0;
  }
}

.validation_message--hidden-on-empty {
  display: none;
}

.gform_submission_error {
  display: none;
}

.gform_required_legend {
  display: none;
}

/**
* Hidden Fields
*/
.gfield_visibility_hidden {
  display: none;
}

/**
* AJAX spinner
*/
.gform_ajax_spinner {
  display: none;
}

/**
* reCaptcha
*/
.grecaptcha-badge {
  display: none !important;
}

/**
* Signup
*/
@media (min-width: 1024px) {
  #gform_1,
#gform_3 {
    max-width: 28rem;
    margin: 0;
  }
}
@media (min-width: 1280px) {
  #gform_1,
#gform_3 {
    max-width: 32rem;
  }
}
#gform_1 fieldset,
#gform_3 fieldset {
  margin-bottom: 1.5rem;
}
#gform_1 input[type=text],
#gform_1 input[type=email],
#gform_3 input[type=text],
#gform_3 input[type=email] {
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid var(--color-white);
}
#gform_1 input[type=text]:active, #gform_1 input[type=text]:focus,
#gform_1 input[type=email]:active,
#gform_1 input[type=email]:focus,
#gform_3 input[type=text]:active,
#gform_3 input[type=text]:focus,
#gform_3 input[type=email]:active,
#gform_3 input[type=email]:focus {
  border-color: none;
  box-shadow: none;
}
#gform_1 label,
#gform_1 .gfield_label,
#gform_3 label,
#gform_3 .gfield_label {
  color: var(--color-white);
  margin: 0;
}
#gform_1 legend.gfield_label,
#gform_3 legend.gfield_label {
  margin-bottom: 0.5rem;
}
@media (min-width: 640px) {
  #gform_1 legend.gfield_label,
#gform_3 legend.gfield_label {
    float: left;
    margin-right: 1.5rem;
    margin-bottom: 0;
  }
}
#gform_1 .gfield_radio > * + *,
#gform_3 .gfield_radio > * + * {
  margin-left: 1.5rem;
}
#gform_1 #field_1_1 label,
#gform_1 #field_1_3 label,
#gform_1 #field_3_1 label,
#gform_1 #field_3_3 label,
#gform_3 #field_1_1 label,
#gform_3 #field_1_3 label,
#gform_3 #field_3_1 label,
#gform_3 #field_3_3 label {
  display: none;
}

#gform_1 fieldset,
#gform_1 .gfield_radio,
#gform_1 .gchoice {
  display: flex;
  flex-direction: row;
  align-items: center;
}

#gform_3 fieldset,
#gform_3 .gfield_radio,
#gform_3 .gchoice {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
@media (min-width: 1024px) {
  #gform_3 fieldset,
#gform_3 .gfield_radio,
#gform_3 .gchoice {
    justify-content: flex-start;
  }
}

/**
* Enqiry & Apply
*/
.enquiry .ginput_container input:not([type=checkbox]),
.enquiry .ginput_container textarea,
.apply .ginput_container input:not([type=checkbox]),
.apply .ginput_container textarea {
  background-color: var(--color-white);
  border: 1px solid #e5ebf0;
  border-radius: 0.125rem;
  color: var(--color-navy);
  display: inline-flex;
  font-size: clamp(0.75rem, 0.17vw + 0.71rem, 0.88rem);
  font-weight: 500;
  letter-spacing: 0.0063rem;
  padding: 0 clamp(1.13rem, 0.17vw + 1.09rem, 1.25rem);
  height: clamp(3rem, 0vw + 3rem, 3rem);
  width: 100%;
  margin-bottom: 1rem;
  transition: border-color 200ms ease;
}
.enquiry .ginput_container input:not([type=checkbox]):active, .enquiry .ginput_container input:not([type=checkbox]):focus,
.enquiry .ginput_container textarea:active,
.enquiry .ginput_container textarea:focus,
.apply .ginput_container input:not([type=checkbox]):active,
.apply .ginput_container input:not([type=checkbox]):focus,
.apply .ginput_container textarea:active,
.apply .ginput_container textarea:focus {
  border-color: var(--color-blue);
  box-shadow: rgb(255, 255, 255) 0px 0px 0px 0px, rgba(0, 139, 208, 0.1) 0px 0px 0px 3px, rgba(0, 139, 208, 0.01) 0px 1px 2px 0px;
  outline: 0;
}
.enquiry .ginput_container--name,
.apply .ginput_container--name {
  display: grid;
  grid-auto-columns: 1fr;
  grid-column-gap: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem);
  grid-row-gap: clamp(0.13rem, 0.17vw + 0.09rem, 0.25rem);
}
@media (min-width: 768px) {
  .enquiry .ginput_container--name,
.apply .ginput_container--name {
    grid-template-columns: repeat(2, minmax(1rem, 1fr));
  }
}
.enquiry .ginput_container--name label,
.apply .ginput_container--name label {
  display: none;
}
.enquiry .ginput_container--name .gf_clear.gf_clear_complex,
.apply .ginput_container--name .gf_clear.gf_clear_complex {
  display: none;
}
.enquiry .gform_fields .gfield input::-webkit-input-placeholder,
.enquiry .gform_fields .gfield textarea::-webkit-input-placeholder,
.apply .gform_fields .gfield input::-webkit-input-placeholder,
.apply .gform_fields .gfield textarea::-webkit-input-placeholder {
  color: var(--color-light-grey);
}
.enquiry .gform_fields .gfield input::-moz-placeholder,
.enquiry .gform_fields .gfield textarea::-moz-placeholder,
.apply .gform_fields .gfield input::-moz-placeholder,
.apply .gform_fields .gfield textarea::-moz-placeholder {
  color: var(--color-light-grey);
}
.enquiry .gform_fields .gfield input:-ms-input-placeholder,
.enquiry .gform_fields .gfield textarea:-ms-input-placeholder,
.apply .gform_fields .gfield input:-ms-input-placeholder,
.apply .gform_fields .gfield textarea:-ms-input-placeholder {
  color: var(--color-light-grey);
}
.enquiry .gform_footer input[type=submit],
.apply .gform_footer input[type=submit] {
  border: 1.5px solid var(--color-blue);
  color: var(--color-blue);
}
.enquiry .gform_footer,
.apply .gform_footer {
  margin-top: 0.5rem;
}
.enquiry .gform_footer span,
.apply .gform_footer span {
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 28 17' width='28' height='17' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd' stroke-linecap='round' stroke='%23009DDC' stroke-width='1.5'%3E%3Cpath stroke-linejoin='round' d='M21 1L27 8.5 21 16'/%3E%3Cpath d='M26.25 8.75L0.75 8.75'/%3E%3C/g%3E%3C/svg%3E");
}
.enquiry .gfield_label,
.apply .gfield_label {
  font-size: clamp(0.75rem, 0.17vw + 0.71rem, 0.88rem);
  display: block;
  font-weight: 500;
  margin-bottom: clamp(0.25rem, 0.27vw + 0.19rem, 0.45rem);
}
.enquiry .gfield input[type=file],
.apply .gfield input[type=file] {
  background-color: transparent;
  border: none;
  font-size: 0.75rem;
  line-height: 1;
  height: auto;
  padding: 0;
  margin-bottom: 0;
  inline-size: 100%;
  max-inline-size: -webkit-max-content;
  max-inline-size: -moz-max-content;
  max-inline-size: max-content;
}
.enquiry .gfield input[type=file]::-webkit-file-upload-button, .apply .gfield input[type=file]::-webkit-file-upload-button {
  -webkit-appearance: none;
          appearance: none;
}
.enquiry .gfield input[type=button],
.enquiry .gfield input[type=file]::file-selector-button,
.apply .gfield input[type=button],
.apply .gfield input[type=file]::file-selector-button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.enquiry .ginput_container_fileupload + .validation_message,
.apply .ginput_container_fileupload + .validation_message {
  margin-top: -1.25rem;
}
.enquiry .gform_fileupload_rules,
.apply .gform_fileupload_rules {
  display: none;
}
.enquiry .ginput_container_fileupload,
.apply .ginput_container_fileupload {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin-bottom: 2rem;
}
.enquiry .gfield_description,
.apply .gfield_description {
  font-size: 0.875rem;
  margin-bottom: 0.5rem;
}
.enquiry .gform_page_footer,
.apply .gform_page_footer {
  border-top: 1px solid var(--color-light-grey);
  margin-top: clamp(1rem, 1.37vw + 0.68rem, 2rem);
  padding-top: clamp(1rem, 1.37vw + 0.68rem, 2rem);
}

/*--------------------------------------------------------------
# Half
--------------------------------------------------------------*/
.half {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: clamp(1.5rem, 8.92vw + -0.56rem, 8rem);
  position: relative;
  z-index: 5;
}
@media (min-width: 768px) {
  .half {
    grid-template-columns: repeat(2, minmax(1rem, 1fr));
  }
}
.half__content {
  max-width: 40rem;
}
.half--center {
  align-items: center;
}
.half--lg {
  grid-gap: clamp(3.63rem, 6vw + 2.24rem, 8rem);
}
.half + .half {
  padding-top: clamp(2.67rem, 2.11vw + 2.18rem, 4.21rem);
}

/*--------------------------------------------------------------
# Heading Link
--------------------------------------------------------------*/
.heading-link {
  display: flex;
  align-items: center;
  gap: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem);
  transition: 0.2s var(--ease-out);
}
.heading-link .icon {
  visibility: hidden;
  opacity: 0;
  transform: translateX(-0.325rem);
  transition: 0.3s var(--ease-out);
}
.heading-link:hover {
  color: var(--color-blue);
}
.heading-link:hover .icon {
  visibility: visible;
  opacity: 1;
  transform: translateX(0);
}

/*--------------------------------------------------------------
# Hero
--------------------------------------------------------------*/
.hero {
  background-color: var(--color-blue);
  display: flex;
  flex-direction: column-reverse;
}
@media (min-width: 768px) {
  .hero {
    aspect-ratio: 5/3;
    background-color: transparent;
    border-bottom-left-radius: clamp(1.5rem, 3.5vw + 0.7rem, 4rem);
    filter: drop-shadow(0 0.2rem 0.25rem rgba(0, 0, 0, 0.1));
    display: block;
    overflow: hidden;
    width: 100%;
    position: relative;
  }
}
@media (min-width: 1280px) {
  .hero {
    aspect-ratio: 5/2;
  }
}
@media (min-width: 768px) {
  .hero__wrap {
    border-top-left-radius: clamp(1.5rem, 3vw + 0.7rem, -4rem);                                                             
    border-bottom-left-radius: clamp(1.5rem, 3vw + 0.7rem, -4rem);
    background-image: linear-gradient(150deg, #407988 60%, rgba(0, 157, 220, 0.5) 100%);
    padding: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: auto;
    width: 40%;
    position: absolute;
    bottom: 2rem;
    right: 0;
    z-index: 5;
  }
}
.hero__content {
  color: var(--color-white);
  padding: 2rem 4rem 2rem 1.3125rem;
  z-index: 1;
}
@media (min-width: 768px) {
  .hero__content {
    padding: 2.5rem 3rem;
  }
}
@media (min-width: 1536px) {
  .hero__content {
    padding: 3rem 4rem;
  }
}
.hero__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-animation-name: scale-in;
          animation-name: scale-in;
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: cubic-bezier(0.42, 0, 0.002, 1);
          animation-timing-function: cubic-bezier(0.42, 0, 0.002, 1);
}
.hero h1 {
  max-width: 41.25rem;
  max-width: 28rem;
}
.hero p {
  margin-top: 1rem;
  max-width: 36ch;
}
.hero .btn-wrap {
  margin-top: 2rem;
}
.hero .btn-wrap > * {
  min-width: 13.5rem;
}
.hero__media {
  aspect-ratio: 5/3;
  border-bottom-right-radius: 4rem;
  overflow: hidden;
}
@media (min-width: 768px) {
  .hero__media {
    border-bottom-right-radius: 0;
  }
}
@media (min-width: 1280px) {
  .hero__media {
    aspect-ratio: 5/2;
  }
}
.hero .slideshow {
  border-bottom-left-radius: 4rem;
  aspect-ratio: 5/3;
}
@media (min-width: 768px) {
  .hero .slideshow {
    border-bottom-left-radius: 0;
    z-index: 0;
  }
}
@media (min-width: 1280px) {
  .hero .slideshow {
    aspect-ratio: 5/2;
  }
}

.hero-video {
  width: 100%;
  aspect-ratio: 5/3;
  position: relative;
  overflow: hidden;
  z-index: 1;
  border-bottom-left-radius: 2rem;
}
@media (min-width: 768px) {
  .hero-video {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    aspect-ratio: unset;
    border-bottom-left-radius: clamp(1.5rem, 3.5vw + 0.7rem, 4rem);
  }
}
@media (min-width: 1280px) {
  .hero-video {
    aspect-ratio: unset;
  }
}

.hero-video video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.hero-video img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.hero-video a.glightbox {
  position: absolute;
  top: 0;
  right: 0;
  background-color: var(--color-blue);
  color: var(--color-white);
  padding: 1.5rem 1rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  text-decoration: none;
  z-index: 10;
  transition: background-color 0.3s ease;
}
.hero-video a.glightbox:hover {
  background-color: #315d68;
}
.hero-video a.glightbox svg {
  width: 1.5rem;
  height: 1.5rem;
  fill: var(--color-white);
  order: -1;
}
.hero-video a.glightbox span {
  white-space: nowrap;
  font-weight: 500;
  letter-spacing: 0.05em;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  transform: rotate(180deg);
}

@-webkit-keyframes scale-in {
  0% {
    opacity: 0;
    transform: scale3d(1.2, 1.2, 1);
  }
  75% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: scaleX(1);
  }
}

@keyframes scale-in {
  0% {
    opacity: 0;
    transform: scale3d(1.2, 1.2, 1);
  }
  75% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: scaleX(1);
  }
}
/*--------------------------------------------------------------
# Icons
--------------------------------------------------------------*/
.icon {
  font-size: 1em;
  height: 1em;
  width: 1em;
  display: inline-block;
  color: inherit;
  fill: none;
  line-height: 1;
  flex-shrink: 0;
  max-width: initial;
}
.icon--xs {
  font-size: clamp(0.63rem, 0.17vw + 0.59rem, 0.75rem);
}
.icon--sm {
  font-size: clamp(0.63rem, 0.41vw + 0.53rem, 0.93rem);
}
.icon--md {
  font-size: clamp(1.25rem, -0.17vw + 1.29rem, 1.13rem);
}
.icon--lg {
  font-size: clamp(0.88rem, 0.51vw + 0.76rem, 1.25rem);
}

/*--------------------------------------------------------------
# Lightbox
--------------------------------------------------------------*/
.glightbox-container {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999999 !important;
  overflow: hidden;
  touch-action: none;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  outline: none;
}

.glightbox-container.inactive {
  display: none;
}

.glightbox-container .gcontainer {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 9999;
  overflow: hidden;
}

.glightbox-container .gslider {
  transition: transform 0.4s ease;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
  position: relative;
  overflow: hidden;
  display: flex !important;
  justify-content: center;
  align-items: center;
  transform: translate3d(0, 0, 0);
}

.glightbox-container .gslide {
  width: 100%;
  position: absolute;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
}

.glightbox-container .gslide.current {
  opacity: 1;
  z-index: 99999;
  position: relative;
}

.glightbox-container .gslide.prev {
  opacity: 1;
  z-index: 9999;
}

.glightbox-container .gslide-inner-content {
  width: 100%;
}

.glightbox-container .ginner-container {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: center;
  flex-direction: column;
  max-width: 100%;
  margin: auto;
  height: 100vh;
}

.glightbox-container .ginner-container.gvideo-container {
  width: 100%;
}

.glightbox-container .ginner-container.desc-bottom,
.glightbox-container .ginner-container.desc-top {
  flex-direction: column;
}

.glightbox-container .ginner-container.desc-left,
.glightbox-container .ginner-container.desc-right {
  max-width: 100% !important;
}

.gslide iframe,
.gslide video {
  outline: none !important;
  border: none;
  min-height: 165px;
  -webkit-overflow-scrolling: touch;
  touch-action: auto;
}

.gslide:not(.current) {
  pointer-events: none;
}

.gslide-image {
  align-items: center;
}

.gslide-image img {
  max-height: 100vh;
  display: block;
  padding: 0;
  float: none;
  outline: none;
  border: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  max-width: 100vw;
  width: auto;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  touch-action: none;
  margin: auto;
  min-width: 200px;
}

.desc-top .gslide-image img,
.desc-bottom .gslide-image img {
  width: auto;
}

.desc-left .gslide-image img,
.desc-right .gslide-image img {
  width: auto;
  max-width: 100%;
}

.gslide-image img.zoomable {
  position: relative;
}

.gslide-image img.dragging {
  cursor: -webkit-grabbing !important;
  cursor: grabbing !important;
  transition: none;
}

.gslide-video {
  position: relative;
  max-width: 100vh;
  width: 100% !important;
}

.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster {
  display: none;
}

.gslide-video .gvideo-wrapper {
  width: 100%;
  /* max-width: 160vmin; */
  margin: auto;
}

.gslide-video::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(255, 0, 0, 0.34);
  display: none;
}

.gslide-video.playing::before {
  display: none;
}

.gslide-video.fullscreen {
  max-width: 100% !important;
  min-width: 100%;
  height: 75vh;
}

.gslide-video.fullscreen video {
  max-width: 100% !important;
  width: 100% !important;
}

.gslide-inline {
  background: #fff;
  text-align: left;
  max-height: calc(100vh - 40px);
  overflow: auto;
  max-width: 100%;
  margin: auto;
}

.gslide-inline .ginlined-content {
  padding: 20px;
  width: 100%;
}

.gslide-inline .dragging {
  cursor: -webkit-grabbing !important;
  cursor: grabbing !important;
  transition: none;
}

.ginlined-content {
  overflow: auto;
  display: block !important;
  opacity: 1;
}

.gslide-external {
  display: flex;
  width: 100%;
  min-width: 100%;
  background: #fff;
  padding: 0;
  overflow: auto;
  max-height: 75vh;
  height: 100%;
}

.gslide-media {
  display: flex;
  width: auto;
}

.zoomed .gslide-media {
  box-shadow: none !important;
}

.desc-top .gslide-media,
.desc-bottom .gslide-media {
  margin: 0 auto;
  flex-direction: column;
}

.gslide-description {
  position: relative;
  flex: 1 0 100%;
}

.gslide-description.description-left,
.gslide-description.description-right {
  max-width: 100%;
}

.gslide-description.description-bottom,
.gslide-description.description-top {
  margin: 0 auto;
  width: 100%;
}

.gslide-description p {
  margin-bottom: 12px;
}

.gslide-description p:last-child {
  margin-bottom: 0;
}

.zoomed .gslide-description {
  display: none;
}

.glightbox-button-hidden {
  display: none;
}

/*
 * Description for mobiles
 * something like facebook does the description
 * for the photos
*/
.glightbox-mobile .glightbox-container .gslide-description {
  height: auto !important;
  width: 100%;
  position: absolute;
  bottom: 0;
  padding: 19px 11px;
  max-width: 100vw !important;
  order: 2 !important;
  max-height: 78vh;
  overflow: auto !important;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.75) 100%);
  transition: opacity 0.3s linear;
  padding-bottom: 50px;
}

.glightbox-mobile .glightbox-container .gslide-title {
  color: #fff;
  font-size: 1em;
}

.glightbox-mobile .glightbox-container .gslide-desc {
  color: #a1a1a1;
}

.glightbox-mobile .glightbox-container .gslide-desc a {
  color: #fff;
  font-weight: bold;
}

.glightbox-mobile .glightbox-container .gslide-desc * {
  color: inherit;
}

.glightbox-mobile .glightbox-container .gslide-desc .desc-more {
  color: #fff;
  opacity: 0.4;
}

.gdesc-open .gslide-media {
  transition: opacity 0.5s ease;
  opacity: 0.4;
}

.gdesc-open .gdesc-inner {
  padding-bottom: 30px;
}

.gdesc-closed .gslide-media {
  transition: opacity 0.5s ease;
  opacity: 1;
}

.greset {
  transition: all 0.3s ease;
}

.gabsolute {
  position: absolute;
}

.grelative {
  position: relative;
}

.glightbox-desc {
  display: none !important;
}

.glightbox-open {
  overflow: hidden;
}

.gloader {
  height: 25px;
  width: 25px;
  -webkit-animation: lightboxLoader 0.8s infinite linear;
  animation: lightboxLoader 0.8s infinite linear;
  border: 2px solid #fff;
  border-right-color: transparent;
  border-radius: 50%;
  position: absolute;
  display: block;
  z-index: 9999;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: 47%;
}

.goverlay {
  width: 100%;
  height: calc(100vh + 1px);
  position: fixed;
  top: -1px;
  left: 0;
  background: #000;
  will-change: opacity;
}

.glightbox-mobile .goverlay {
  background: #000;
}

.gprev,
.gnext,
.gclose {
  z-index: 99999;
  cursor: pointer;
  width: 26px;
  height: 44px;
  border: none;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.gprev svg,
.gnext svg,
.gclose svg {
  display: block;
  width: 25px;
  height: auto;
  margin: 0;
  padding: 0;
}

.gprev.disabled,
.gnext.disabled,
.gclose.disabled {
  opacity: 0.1;
}

.gprev .garrow,
.gnext .garrow,
.gclose .garrow {
  stroke: #fff;
}

.gbtn.focused {
  outline: 2px solid #0f3d81;
}

iframe.wait-autoplay {
  opacity: 0;
}

.glightbox-closing .gnext,
.glightbox-closing .gprev,
.glightbox-closing .gclose {
  opacity: 0 !important;
}

/*Skin */
.glightbox-clean .gslide-description {
  background: #fff;
}

.glightbox-clean .gdesc-inner {
  padding: 22px 20px;
}

.glightbox-clean .gslide-title {
  font-size: 1em;
  font-weight: normal;
  font-family: arial;
  color: #000;
  margin-bottom: 19px;
  line-height: 1.4em;
}

.glightbox-clean .gslide-desc {
  font-size: 0.86em;
  margin-bottom: 0;
  font-family: arial;
  line-height: 1.4em;
}

.glightbox-clean .gslide-video {
  background: #000;
}

.glightbox-clean .gprev,
.glightbox-clean .gnext,
.glightbox-clean .gclose {
  background-color: rgba(0, 0, 0, 0.75);
  border-radius: 4px;
}

.glightbox-clean .gprev path,
.glightbox-clean .gnext path,
.glightbox-clean .gclose path {
  fill: #fff;
}

.glightbox-clean .gprev {
  position: absolute;
  top: -100%;
  left: 30px;
  width: 40px;
  height: 50px;
}

.glightbox-clean .gnext {
  position: absolute;
  top: -100%;
  right: 30px;
  width: 40px;
  height: 50px;
}

.glightbox-clean .gclose {
  width: 35px;
  height: 35px;
  top: 15px;
  right: 10px;
  position: absolute;
}

.glightbox-clean .gclose svg {
  width: 18px;
  height: auto;
}

.glightbox-clean .gclose:hover {
  opacity: 1;
}

/*CSS Animations*/
.gfadeIn {
  -webkit-animation: gfadeIn 0.5s ease;
  animation: gfadeIn 0.5s ease;
}

.gfadeOut {
  -webkit-animation: gfadeOut 0.5s ease;
  animation: gfadeOut 0.5s ease;
}

.gslideOutLeft {
  -webkit-animation: gslideOutLeft 0.3s ease;
  animation: gslideOutLeft 0.3s ease;
}

.gslideInLeft {
  -webkit-animation: gslideInLeft 0.3s ease;
  animation: gslideInLeft 0.3s ease;
}

.gslideOutRight {
  -webkit-animation: gslideOutRight 0.3s ease;
  animation: gslideOutRight 0.3s ease;
}

.gslideInRight {
  -webkit-animation: gslideInRight 0.3s ease;
  animation: gslideInRight 0.3s ease;
}

.gzoomIn {
  -webkit-animation: gzoomIn 0.5s ease;
  animation: gzoomIn 0.5s ease;
}

.gzoomOut {
  -webkit-animation: gzoomOut 0.5s ease;
  animation: gzoomOut 0.5s ease;
}

@-webkit-keyframes lightboxLoader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes lightboxLoader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes gfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes gfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes gfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes gfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@-webkit-keyframes gslideInLeft {
  from {
    opacity: 0;
    transform: translate3d(-60%, 0, 0);
  }
  to {
    visibility: visible;
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes gslideInLeft {
  from {
    opacity: 0;
    transform: translate3d(-60%, 0, 0);
  }
  to {
    visibility: visible;
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@-webkit-keyframes gslideOutLeft {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-60%, 0, 0);
    opacity: 0;
    visibility: hidden;
  }
}
@keyframes gslideOutLeft {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-60%, 0, 0);
    opacity: 0;
    visibility: hidden;
  }
}
@-webkit-keyframes gslideInRight {
  from {
    opacity: 0;
    visibility: visible;
    transform: translate3d(60%, 0, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes gslideInRight {
  from {
    opacity: 0;
    visibility: visible;
    transform: translate3d(60%, 0, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@-webkit-keyframes gslideOutRight {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(60%, 0, 0);
    opacity: 0;
  }
}
@keyframes gslideOutRight {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(60%, 0, 0);
    opacity: 0;
  }
}
@-webkit-keyframes gzoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 1;
  }
}
@keyframes gzoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes gzoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
@keyframes gzoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
@media (min-width: 769px) {
  .glightbox-container .ginner-container {
    width: auto;
    height: auto;
    flex-direction: row;
  }
  .glightbox-container .ginner-container.desc-top .gslide-description {
    order: 0;
  }
  .glightbox-container .ginner-container.desc-top .gslide-image,
.glightbox-container .ginner-container.desc-top .gslide-image img {
    order: 1;
  }
  .glightbox-container .ginner-container.desc-left .gslide-description {
    order: 0;
  }
  .glightbox-container .ginner-container.desc-left .gslide-image {
    order: 1;
  }
  .gslide-image img {
    max-height: 97vh;
    max-width: 100%;
  }
  .gslide-image img.zoomable {
    cursor: zoom-in;
  }
  .zoomed .gslide-image img.zoomable {
    cursor: -webkit-grab;
    cursor: grab;
  }
  .gslide-inline {
    max-height: 95vh;
  }
  .gslide-external {
    max-height: 100vh;
  }
  .gslide-description.description-left,
.gslide-description.description-right {
    max-width: 275px;
  }
  .glightbox-open {
    height: auto;
  }
  .goverlay {
    background: rgba(0, 0, 0, 0.92);
  }
  .glightbox-clean .gslide-media {
    box-shadow: 1px 2px 9px 0px rgba(0, 0, 0, 0.65);
  }
  .glightbox-clean .description-left .gdesc-inner,
.glightbox-clean .description-right .gdesc-inner {
    position: absolute;
    height: 100%;
    overflow-y: auto;
  }
  .glightbox-clean .gprev,
.glightbox-clean .gnext,
.glightbox-clean .gclose {
    background-color: rgba(0, 0, 0, 0.32);
  }
  .glightbox-clean .gprev:hover,
.glightbox-clean .gnext:hover,
.glightbox-clean .gclose:hover {
    background-color: rgba(0, 0, 0, 0.7);
  }
  .glightbox-clean .gprev {
    top: 45%;
  }
  .glightbox-clean .gnext {
    top: 45%;
  }
}
@media (min-width: 992px) {
  .glightbox-clean .gclose {
    opacity: 0.7;
    right: 20px;
  }
}
@media screen and (max-height: 420px) {
  .goverlay {
    background: #000;
  }
}
/*--------------------------------------------------------------
# Looping Tabs
--------------------------------------------------------------*/
:root {
  --loop-tabs-fill-size: 1px;
  --loop-tabs-animation-duration: 0.5s;
}

.loop-tabs {
  position: relative;
  z-index: 1;
}

.loop-tabs__media {
  display: none;
}

.loop-tabs__assets {
  position: relative;
}

.loop-tabs__asset {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--loop-tabs-animation-duration), visibility var(--loop-tabs-animation-duration), transform var(--loop-tabs-animation-duration);
}

.loop-tabs__asset {
  transform: scale(0.9);
}

.loop-tabs__asset--selected {
  position: relative;
  opacity: 1;
  z-index: 2;
  visibility: visible;
}

.loop-tabs__asset--selected {
  transform: scale(1);
}

.loop-tabs__asset--exit {
  transform: scale(1.1);
}

.loop-tabs__asset img {
  height: auto;
}

.loop-tabs__controls {
  display: flex;
  justify-content: center;
  gap: clamp(1.88rem, 0.17vw + 1.84rem, 2rem);
  margin-bottom: clamp(1.5rem, 2.06vw + 1.02rem, 3rem);
}

.loop-tabs__control {
  display: block;
  font-size: clamp(0.65rem, 0.38vw + 0.56rem, 0.93rem);
  font-weight: 600;
  text-transform: uppercase;
  text-decoration: none;
  padding-bottom: 0.325rem;
  position: relative;
  --loop-tabs-filling: 0;
}
.loop-tabs__control::before, .loop-tabs__control::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: var(--loop-tabs-fill-size);
  width: 100%;
}
.loop-tabs__control::before {
  background-color: transparent;
}
.loop-tabs__control::after {
  transform: scaleX(0);
  transform-origin: left top;
}
.loop-tabs__control:focus {
  outline: none;
}
.loop-tabs__control:focus::after, .loop-tabs--autoplay-off .loop-tabs__control::after {
  transform: scaleX(1);
}

.loop-tabs__control--selected {
  color: var(--color-blue);
}
.loop-tabs__control--selected::after {
  transform: scaleX(var(--loop-tabs-filling));
  background-color: currentColor;
}

.loop-tabs__media {
  display: flex;
  justify-content: center;
}

/*--------------------------------------------------------------
# Lot
--------------------------------------------------------------*/
.lot {
  border-bottom: 2px solid var(--color-blue);
  position: relative;
  overflow: hidden;
}
.lot__media {
  border-bottom-right-radius: clamp(1.5rem, 1.72vw + 1.1rem, 2.75rem);
  overflow: hidden;
  margin-bottom: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem);
}
.lot__title {
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 0.75rem;
}
.lot__link {
  background: var(--color-blue);
  color: var(--color-white);
  cursor: pointer;
  font-size: clamp(0.63rem, 0.09vw + 0.61rem, 0.69rem);
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1;
  text-transform: uppercase;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.45rem 0.75rem;
}

/*--------------------------------------------------------------
# Map
--------------------------------------------------------------*/
.map {
  height: 100%;
  width: 100%;
}
.map__item {
  position: relative;
}
.map__item:hover .map__popover {
  visibility: visible;
  opacity: 1;
}
.map__item:hover .map__marker {
  fill: var(--color-blue);
  stroke: var(--color-blue);
}
.map__marker {
  transition: 0.3s ease;
}
.map__popover {
  visibility: hidden;
  opacity: 0;
  transition: 0.3s ease;
}
.map svg {
  border-radius: 0.5rem;
  overflow: hidden;
  height: 100%;
  width: 100%;
  fill: transparent;
}
.map image {
  height: auto;
  width: auto;
}

@-webkit-keyframes marker-pulse {
  0% {
    transform: scale(0.5);
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}

@keyframes marker-pulse {
  0% {
    transform: scale(0.5);
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}
/*--------------------------------------------------------------
# Menu Button
--------------------------------------------------------------*/
.menu-btn {
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 3rem;
  width: auto;
}
.menu-btn__icon {
  background-image: linear-gradient(currentColor, currentColor);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  color: inherit;
  display: block;
  font-size: 1.75rem;
  height: 2px;
  width: 1em;
  position: relative;
  transform: scale(1);
  will-change: transform, background-size;
  transition-duration: 0.2s;
}
.menu-btn__icon::before, .menu-btn__icon::after {
  background-image: inherit;
  border-radius: inherit;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  will-change: inherit;
  transition: inherit;
}
.menu-btn__icon::before {
  transform: translateY(-0.25em) rotate(0);
}
.menu-btn__icon::after {
  transform: translateY(0.25em) rotate(0);
}
.menu-btn--active .menu-btn__icon {
  background-size: 0% 100%;
  font-size: 1.25rem;
}
.menu-btn--active .menu-btn__icon::before {
  transform: translateY(0) rotate(45deg);
}
.menu-btn--active .menu-btn__icon::after {
  transform: translateY(0) rotate(-45deg);
}
@media (min-width: 1280px) {
  .menu-btn {
    display: none;
  }
}

/*------------------------------------------
# Modal
------------------------------------------*/
.modal {
  background-color: rgba(0, 0, 0, 0.3);
  display: flex;
  align-items: center;
  padding-top: 1.5rem;
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  opacity: 0;
  visibility: hidden;
  z-index: 50;
}
@media (min-width: 768px) {
  .modal {
    padding: 2.5rem;
  }
}
.modal:not(.modal--is-visible) {
  pointer-events: none;
  background-color: transparent;
}
.modal__content {
  background-color: #f3f3f3;
  border-radius: 0.75rem 0.75rem 0 0;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  max-width: 40rem;
  max-height: 100%;
  margin: auto;
  position: relative;
}
@media (min-width: 768px) {
  .modal__content {
    border-radius: 0.75rem;
    height: auto;
  }
}
.modal__header {
  flex: 0 0 auto;
  border-bottom: 1px solid rgb(233, 236, 241);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: clamp(1rem, 0.69vw + 0.84rem, 1.5rem) clamp(1.13rem, 0.51vw + 1.01rem, 1.5rem);
}
.modal__title {
  font-size: clamp(1rem, 0.34vw + 0.92rem, 1.25rem);
  font-weight: 700;
  text-align: center;
}
.modal__body {
  flex: 1 1 auto;
  overflow-y: auto;
  overflow-x: hidden;
  padding-top: clamp(1rem, 0.69vw + 0.84rem, 1.5rem);
  padding-bottom: clamp(1rem, 2.74vw + 0.37rem, 3rem);
  padding-left: clamp(1.13rem, 0.51vw + 1.01rem, 1.5rem);
  padding-right: clamp(1.13rem, 0.51vw + 1.01rem, 1.5rem);
}
.modal__footer {
  border-top: 1px solid rgb(233, 236, 241);
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 1.5rem;
}
.modal__close-btn {
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  flex-shrink: 0;
  transition: 0.2s;
  width: 2rem;
  height: 2rem;
  margin-left: auto;
  transition: 0.2s;
}
.modal__close-btn .icon {
  color: var(--color-navy);
  cursor: pointer;
  display: block;
  margin: auto;
  transition: transform 0.3s var(--ease-out-back);
}
.modal__close-btn--outer {
  position: none;
  top: 1rem;
  right: 1rem;
  transition: 0.2s;
  z-index: 20;
}
.modal__clear-all {
  cursor: pointer;
  text-decoration: underline;
  font-size: clamp(0.88rem, 0.17vw + 0.84rem, 1rem);
}
.modal--is-visible {
  opacity: 1;
  visibility: visible;
}

.modal--fade {
  transition: opacity 0.3s, background-color 0.3s, visibility 0s 0.3s;
}
.modal--fade.modal--is-visible {
  transition: opacity 0.3s, background-color 0.3s, visibility 0s;
}

.modal--scale,
.modal--translate-up {
  transition: opacity 0.3s, background-color 0.3s, visibility 0s 0.3s;
}
.modal--scale .modal__content,
.modal--translate-up .modal__content {
  will-change: transform;
  transition: transform 0.3s var(--ease-out);
}
.modal--scale.modal--is-visible,
.modal--translate-up.modal--is-visible {
  transition: opacity 0.3s, background-color 0.3s, visibility 0s;
}
.modal--scale.modal--is-visible .modal__content,
.modal--translate-up.modal--is-visible .modal__content {
  transform: scale(1);
}

.modal--scale .modal__content {
  transform: scale(0.95);
}

.modal--translate-up .modal__content {
  transform: translateY(40px);
}

/*--------------------------------------------------------------
# Site Header Wrapper
--------------------------------------------------------------*/
.site-header {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 20;
  background-color: var(--color-navy);
}

/*--------------------------------------------------------------
# Top Bar
--------------------------------------------------------------*/
.top-bar {
  background-color: var(--color-navy);
  padding: 0;
}
@media (min-width: 768px) {
  .top-bar {
    padding: 0.5rem 0;
  }
}
.top-bar > .container {
  display: none;
}
@media (min-width: 768px) {
  .top-bar > .container {
    display: block;
  }
}
.top-bar__wrap {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 1.5rem;
}
.top-bar__contact {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
.top-bar__link {
  color: var(--color-white);
  text-decoration: none;
  font-size: 0.875rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  transition: opacity 0.3s ease;
}
.top-bar__link:hover {
  opacity: 0.8;
}
.top-bar__socials {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.top-bar__socials a {
  color: var(--color-white);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border: 1px solid var(--color-white);
  border-radius: 4px;
  transition: background-color 0.3s ease, color 0.3s ease;
}
.top-bar__socials a:hover {
  background-color: var(--color-white);
  color: var(--color-navy);
}
.top-bar__socials .icon {
  width: 0.875rem;
  height: 0.875rem;
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
.header {
  background-color: var(--color-navy);
  display: flex;
  align-items: center;
  width: 100%;
  padding: clamp(0.5rem, 0.69vw + 0.34rem, 1rem) 0;
}
@media (min-width: 768px) {
  .header {
    padding: 0.75rem 0;
  }
}

/**
* Wrap
*/
.header__wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media (min-width: 1024px) {
  .header__wrap {
    
  }
}

/**
* Logo
*/
.header__logo {
  display: flex;
  align-items: center;
  width: clamp(7rem, 4.46vw + 5.97rem, 10.25rem);
  aspect-ratio: 398.11 / 134.46;
}
@media (min-width: 768px) {
  .header__logo {
    width: clamp(10rem, 10vw + 5rem, 16rem);
  }
}
.header__logo svg {
  display: block;
  width: 100%;
  height: 100%;
}
.header__logo-img {
  height: 100%;
  width: 100%;
}

/**
* Nav
*/
.header__nav {
  background-color: var(--color-navy);
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
  border-radius: 0 0 0.5rem 0.5rem;
  position: absolute;
  left: 0;
  top: 100%;
  max-height: 100vh;
  transform: translateY(-0.5rem);
  visibility: hidden;
  opacity: 0;
  overflow: auto;
  -ms-scroll-chaining: none;
      overscroll-behavior: contain;
  width: 100%;
  z-index: 20;
}
@media (min-width: 1024px) {
  .header__nav {
    background-color: transparent;
    box-shadow: none;
    max-height: none;
    opacity: 1;
    overflow: visible;
    -ms-scroll-chaining: chained;
        overscroll-behavior: auto;
    padding: 0;
    position: static;
    transform: translateY(0);
    transition: none;
    visibility: visible;
    width: 100%;
  }
  .header__nav::before {
    display: none;
  }
}

.header__nav--is-visible {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
  transition: visibility 0s, opacity 0.3s, transform 0.3s;
}

.header__nav-inner {
  display: flex;
  flex-direction: column;
  padding: 1.25rem;
  width: 100%;
}
@media (min-width: 768px) {
  .header__nav-inner {
    max-width: 1024px;
    margin: 0 auto;
  }
}
@media (min-width: 1024px) {
  .header__nav-inner {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    max-width: 100%;
    padding: 0;
  }
}

/**
* List
*/
@media (min-width: 1024px) {
  .header__list {
    padding: 0.875rem;
    display: flex;
    align-items: center;
    padding: 0;
    margin-left: auto;
  }
}

/**
* List Item
*/
.header__item {
  border-bottom: 1px solid rgb(233, 236, 241);
  width: 100%;
}
@media (min-width: 1024px) {
  .header__item {
    padding: 0;
    border-bottom: 0;
    margin-bottom: 0;
    margin-left: clamp(1.75rem, 1.37vw + 1.43rem, 2.75rem);
    position: relative;
  }
  .header__item:first-of-type {
    margin-left: 0;
  }
}
.header__item--dropdown {
  position: relative;
}
.header__item--dropdown .header__link {
  position: relative;
  padding-right: 0.625rem;
}
.header__item--dropdown .header__link::after {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23ffffff'%3E%3Cpath fill-rule='evenodd' d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z' clip-rule='evenodd' /%3E%3C/svg%3E");
  background-position: 0 center;
  background-repeat: no-repeat;
  width: 0.875rem;
  height: 0.875rem;
  position: absolute;
  right: -0.625rem;
  opacity: 0.5;
  transform: translateX(-0.15rem);
  transition: transform 0.15s linear 0s;
}
@media (min-width: 1280px) {
  .header__item--dropdown .header__link {
    pointer-events: auto;
  }
}
.header__item--dropdown .header__link[aria-expanded=true]::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23ffffff'%3E%3Cpath fill-rule='evenodd' d='M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z' clip-rule='evenodd' /%3E%3C/svg%3E");
}

/**
* Link
*/
.header__link,
.header__dropdown-link {
  color: var(--color-white);
  font-weight: 500;
  font-size: clamp(0.75rem, 0.14vw + 0.72rem, 0.85rem);
  letter-spacing: 0.02em;
  line-height: 2;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  padding: 0.75rem 0;
  position: relative;
  width: 100%;
  white-space: nowrap;
  transition: 0.25s ease;
}
.header__link:hover,
.header__dropdown-link:hover {
  color: var(--color-blue);
}
.header__link--dropdown,
.header__dropdown-link--dropdown {
  pointer-events: none;
}

.header__dropdown-link {
  font-size: clamp(0.75rem, 0.09vw + 0.73rem, 0.81rem);
}

/**
* Dropdown
*/
.header__dropdown {
  background-color: var(--color-navy);;
  padding-left: 1rem;
  width: 100%;
}
@media (min-width: 1024px) {
  .header__dropdown {
    background-color: var(--color-navy);
    border-radius: 0 0 0.25rem 0.25rem;
    box-shadow: var(--shadow-sm);
    font-size: 1rem;
    position: absolute;
    left: -2rem;
    top: 100%;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    min-width: 200px;
    padding: 0.75rem;
    z-index: 15;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0.2s 0.2s, opacity 0.2s 0s;
  }
  .header__item:hover .header__dropdown {
    visibility: visible;
    opacity: 1;
    transition: visibility 0.2s 0s, opacity 0.2s 0s;
  }
  .header__dropdown-link {
    padding: 0.625rem;
  }
}
.header__dropdown-item {
  position: relative;
}
.header__dropdown--is-hidden {
  display: none;
}
@media (min-width: 1120px) {
  .header__dropdown--is-hidden {
    display: block;
  }
}
.header__dropdown-icon {
  display: block;
  margin-left: 0.125rem;
  width: 0.75rem;
  height: 0.75rem;
  flex-shrink: 0;
}

/**
* Trigger
*/
.header__trigger {
  cursor: pointer;
  position: relative;
  height: 2em;
  width: 2em;
  margin-left: auto;
  z-index: 10;
}
.header__trigger:focus, .header__trigger:active {
  outline: 0;
}
@media (min-width: 1024px) {
  .header__trigger {
    display: none;
  }
}

.header__trigger-icon {
  color: var(--color-white);
  position: relative;
  display: block;
  height: 2px;
  width: 2em;
  background-color: currentColor;
  transition: 0.2s;
}
.header__trigger-icon::before, .header__trigger-icon::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: inherit;
  width: inherit;
  background-color: currentColor;
  transition: 0.2s;
}
.header__trigger-icon::before {
  transform: translateY(-0.5rem);
}
.header__trigger-icon::after {
  transform: translateY(0.5rem);
}

/**
* Ultrablacks Button
*/
.header__ultrablacks-btn {
  border-radius: 0.25rem;
  border: 2px solid var(--color-white);
  background-color: var(--color-white);
  color: var(--color-dark-grey);
  cursor: pointer;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: clamp(0.63rem, 0.24vw + 0.57rem, 0.8rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.01em;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
  padding: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem) clamp(0.75rem, 0.69vw + 0.59rem, 1.25rem);
  transition: 0.2s var(--ease-out);
  margin-top: 1rem;
}
.header__ultrablacks-btn:hover {
  background-color: transparent;
  color: var(--color-white);
}
@media (min-width: 1024px) {
  .header__ultrablacks-btn {
    margin-top: 0;
    margin-left: 2rem;
    flex-shrink: 0;
  }
}

.header__trigger[aria-expanded=true] .header__trigger-icon {
  background-color: transparent;
  transform: scale(0.8);
}
.header__trigger[aria-expanded=true] .header__trigger-icon::before {
  transform: rotate(45deg);
}
.header__trigger[aria-expanded=true] .header__trigger-icon::after {
  transform: rotate(-45deg);
}

/*--------------------------------------------------------------
# Offset
--------------------------------------------------------------*/
.offset {
  display: grid;
  grid-template-columns: 1fr;
  height: 100%;
  width: 100%;
  position: relative;
  z-index: 5;
}
@media (min-width: 1024px) {
  .offset {
    display: grid;
    grid-template-columns: repeat(2, minmax(1rem, 1fr));
  }
}
.offset__media {
  border-bottom-right-radius: clamp(4rem, 10.98vw + 1.46rem, 12rem);
  position: relative;
  height: 0;
  width: 100%;
  padding-bottom: 88%;
  overflow: hidden;
}
.offset__media--sm {
  padding-bottom: 66%;
}
.offset__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.offset__content {
  color: var(--color-navy);
  line-height: 1.788888;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 3.125rem 2.125rem;
}
@media (min-width: 768px) {
  .offset__content {
    padding: 0 4.125rem;
  }
}
.offset__title {
  margin-bottom: 2.5rem;
}
.offset--reverse .offset__content {
  padding: 3.125rem 3.125rem 3.125rem 1rem;
}
@media (min-width: 768px) {
  .offset--reverse .offset__content {
    padding-left: max(4rem, (100vw - 74rem) / 2);
    padding-right: 5rem;
    width: 100%;
  }
}
.offset--reverse .offset__media {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: clamp(4rem, 10.98vw + 1.46rem, 12rem);
}
.offset .slideshow {
  border-top-right-radius: clamp(3rem, 12.35vw + 0.14rem, 12rem);
}
@media (min-width: 1024px) {
  .offset .slideshow {
    border-top-right-radius: 0;
    border-bottom-left-radius: clamp(6rem, 8.23vw + 4.1rem, 12rem);
  }
}

/*--------------------------------------------------------------
# Pagination
--------------------------------------------------------------*/
.pagination {
  border-top: 1px solid #e7eaf0;
  display: flex;
  gap: 0.5rem;
  padding-top: 2rem;
}
.pagination__item {
  display: inline-flex;
  align-items: center;
  font-size: 0.875rem;
  line-height: 1;
  white-space: nowrap;
  height: 100%;
}
@media (min-width: 1024px) {
  .pagination__item {
    font-size: 1rem;
  }
}
.pagination__item--next .pagination__icon {
  margin-left: 0.4em;
}
.pagination__item--prev .pagination__icon {
  margin-right: 0.4em;
}
.pagination__icon {
  display: inline-block;
  color: inherit;
  fill: currentColor;
  height: 1em;
  width: 1em;
  line-height: 1;
  flex-shrink: 0;
  max-width: initial;
}

/**
* Page Numbers
*/
.page-numbers {
  background: transparent;
  border-radius: 0.25rem;
  border: 1px solid var(--color-blue);
  color: var(--color-navy);
  display: inline-block;
  font-size: 1rem;
  font-weight: 600;
  padding: 0.33rem 1rem;
  transition: 0.2s var(--ease-out);
  text-decoration: none;
}
@media (min-width: 1024px) {
  .page-numbers {
    font-size: 1.125rem;
    padding: 0.5rem 1.25rem;
  }
}
.page-numbers.current {
  background: var(--color-blue);
  color: var(--color-white);
}
.page-numbers:hover:not(.current) {
  border-color: var(--color-navy);
  color: var(--color-navy);
}

.next.page-numbers,
.prev.page-numbers {
  border: none;
}

/*--------------------------------------------------------------
# Play Btn
--------------------------------------------------------------*/
.play {
  cursor: pointer;
  display: flex;
  align-items: center;
  position: absolute;
  bottom: 0.875rem;
  left: 0.875rem;
  flex-shrink: 0;
  z-index: 5;
}
.play__icon {
  background: var(--color-blue);
  border-radius: 100%;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(1.75rem, 1.72vw + 1.35rem, 3rem);
  height: clamp(1.75rem, 1.72vw + 1.35rem, 3rem);
  transition: transform 0.35s ease;
}
.play--careers {
  position: relative;
  bottom: initial;
  left: initial;
  font-weight: 500;
  margin-top: 2rem !important;
}
.play--careers .play__icon {
  background-color: var(--color-white);
  margin-right: 0.625rem;
}

/*--------------------------------------------------------------
# Properties
--------------------------------------------------------------*/
.properties__content {
  font-size: clamp(0.81rem, 0.19vw + 0.77rem, 0.95rem);
  line-height: 1.75;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
.prose {
  --prose-body: #334155;
  --prose-lead: #475569;
  --prose-links: #0f172a;
  --prose-bold: #0f172a;
  --prose-counters: #64748b;
  --prose-bullets: #cbd5e1;
  --prose-hr: #e2e8f0;
  --prose-quote-borders: #e2e8f0;
  --prose-headings: #0f172a;
  --prose-captions: #64748b;
  --prose-th-borders: #cbd5e1;
  --prose-td-borders: #e2e8f0;
  font-size: 0.875rem;
  line-height: 1.7142857;
}

.prose :where(p) {
  margin-top: 1.1428571em;
  margin-bottom: 1.1428571em;
}

.prose :where([class~=lead]) {
  font-size: 1.2857143em;
  line-height: 1.5555556;
  margin-top: 0.8888889em;
  margin-bottom: 0.8888889em;
}

.prose :where(blockquote) {
  margin-top: 1.3333333em;
  margin-bottom: 1.3333333em;
  padding-left: 1.1111111em;
}

.prose :where(h1) {
  font-size: 2.1428571em;
  margin-top: 0;
  margin-bottom: 0.8em;
  line-height: 1.2;
}

.prose :where(h2) {
  font-size: 1.4285714em;
  margin-top: 1.6em;
  margin-bottom: 0.8em;
  line-height: 1.4;
}

.prose :where(h3) {
  font-size: 1.2857143em;
  margin-top: 1.5555556em;
  margin-bottom: 0.4444444em;
  line-height: 1.5555556;
}

.prose :where(h4) {
  margin-top: 1.4285714em;
  margin-bottom: 0.5714286em;
  line-height: 1.4285714;
}

.prose :where(img) {
  width: 100%;
  height: auto;
  margin-top: 1em;
  margin-bottom: 1.7142857em;
}

.prose :where(video) {
  margin-top: 1.7142857em;
  margin-bottom: 1.7142857em;
}

.prose :where(iframe) {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}

.prose :where(figure) {
  margin-top: 1.7142857em;
  margin-bottom: 1.7142857em;
}

.prose :where(figure > *) {
  margin-top: 0;
  margin-bottom: 0;
}

.prose :where(figcaption) {
  font-size: 0.8571429em;
  line-height: 1.3333333;
  margin-top: 0.6666667em;
}

.prose :where(ol) {
  margin-top: 1.1428571em;
  margin-bottom: 1.1428571em;
  padding-left: 1.5714286em;
}

.prose :where(ul) {
  margin-top: 1.1428571em;
  margin-bottom: 1.1428571em;
  padding-left: 1.5714286em;
}

.prose :where(li) {
  margin-top: 0.2857143em;
  margin-bottom: 0.2857143em;
}

.prose :where(ol > li) {
  padding-left: 0.4285714em;
}

.prose :where(ul > li) {
  padding-left: 0.4285714em;
}

.prose :where(.prose > ul > li p) {
  margin-top: 0.5714286em;
  margin-bottom: 0.5714286em;
}

.prose :where(.prose > ul > li > *:first-child) {
  margin-top: 1.1428571em;
}

.prose :where(.prose > ul > li > *:last-child) {
  margin-bottom: 1.1428571em;
}

.prose :where(.prose > ol > li > *:first-child) {
  margin-top: 1.1428571em;
}

.prose :where(.prose > ol > li > *:last-child) {
  margin-bottom: 1.1428571em;
}

.prose :where(ul ul, ul ol, ol ul, ol ol) {
  margin-top: 0.5714286em;
  margin-bottom: 0.5714286em;
}

.prose :where(hr) {
  margin-top: 2.8571429em;
  margin-bottom: 2.8571429em;
}

.prose :where(hr + *) {
  margin-top: 0;
}

.prose :where(h2 + *) {
  margin-top: 0;
}

.prose :where(h3 + *) {
  margin-top: 0;
}

.prose :where(h4 + *) {
  margin-top: 0;
}

.prose :where(table) {
  font-size: 0.8571429em;
  line-height: 1.5;
}

.prose :where(thead th) {
  padding-right: 1em;
  padding-bottom: 0.6666667em;
  padding-left: 1em;
}

.prose :where(thead th:first-child) {
  padding-left: 0;
}

.prose :where(thead th:last-child) {
  padding-right: 0;
}

.prose :where(tbody td, tfoot td) {
  padding-top: 0.6666667em;
  padding-right: 1em;
  padding-bottom: 0.6666667em;
  padding-left: 1em;
}

.prose :where(tbody td:first-child, tfoot td:first-child) {
  padding-left: 0;
}

.prose :where(tbody td:last-child, tfoot td:last-child) {
  padding-right: 0;
}

.prose :where(.prose > :first-child) {
  margin-top: 0;
}

.prose :where(.prose > :last-child) {
  margin-bottom: 0;
}

@media (min-width: 1024px) {
  .prose {
    color: var(--prose-body);
    max-width: 65ch;
  }
  .prose :where(p) {
    margin-top: 1.25em;
    margin-bottom: 1.25em;
  }
  .prose :where([class~=lead]) {
    color: var(--prose-lead);
    font-size: 1.25em;
    line-height: 1.6;
    margin-top: 1.2em;
    margin-bottom: 1.2em;
  }
  .prose :where(a) {
    color: var(--prose-links);
    text-decoration: underline;
    font-weight: 500;
  }
  .prose :where(strong) {
    color: var(--prose-bold);
    font-weight: 600;
  }
  .prose :where(a strong) {
    color: inherit;
  }
  .prose :where(blockquote strong) {
    color: inherit;
  }
  .prose :where(thead th strong) {
    color: inherit;
  }
  .prose :where(ol) {
    list-style-type: decimal;
    margin-top: 1.25em;
    margin-bottom: 1.25em;
    padding-left: 1.625em;
  }
  .prose :where(ol[type=A]) {
    list-style-type: upper-alpha;
  }
  .prose :where(ol[type=a]) {
    list-style-type: lower-alpha;
  }
  .prose :where(ol[type=A s]) {
    list-style-type: upper-alpha;
  }
  .prose :where(ol[type=a s]) {
    list-style-type: lower-alpha;
  }
  .prose :where(ol[type=I]) {
    list-style-type: upper-roman;
  }
  .prose :where(ol[type=i]) {
    list-style-type: lower-roman;
  }
  .prose :where(ol[type=I s]) {
    list-style-type: upper-roman;
  }
  .prose :where(ol[type=i s]) {
    list-style-type: lower-roman;
  }
  .prose :where(ol[type="1"]) {
    list-style-type: decimal;
  }
  .prose :where(ul) {
    list-style-type: disc;
    margin-top: 1.25em;
    margin-bottom: 1.25em;
    padding-left: 1.625em;
  }
  .prose :where(ol > li)::marker {
    font-weight: 400;
    color: var(--prose-counters);
  }
  .prose :where(ul > li)::marker {
    color: var(--prose-bullets);
  }
  .prose :where(hr) {
    border-color: var(--prose-hr);
    border-top-width: 1px;
    margin-top: 3em;
    margin-bottom: 3em;
  }
  .prose :where(blockquote) {
    font-weight: 500;
    font-style: italic;
    color: var(--prose-quotes);
    border-left-width: 0.25rem;
    border-left-color: var(--prose-quote-borders);
    quotes: "“" "”" "‘" "’";
    margin-top: 1.6em;
    margin-bottom: 1.6em;
    padding-left: 1em;
  }
  .prose :where(blockquote p:first-of-type)::before {
    content: open-quote;
  }
  .prose :where(blockquote p:last-of-type)::after {
    content: close-quote;
  }
  .prose :where(h1) {
    color: var(--prose-headings);
    font-weight: 800;
    font-size: 2.25em;
    margin-top: 0;
    margin-bottom: 0.8888889em;
    line-height: 1.1111111;
  }
  .prose :where(h1 strong) {
    font-weight: 900;
    color: inherit;
  }
  .prose :where(h2) {
    color: var(--prose-headings);
    font-weight: 700;
    font-size: 1.5em;
    margin-top: 2em;
    margin-bottom: 1em;
    line-height: 1.3333333;
  }
  .prose :where(h2 strong) {
    font-weight: 800;
    color: inherit;
  }
  .prose :where(h3) {
    color: var(--prose-headings);
    font-weight: 600;
    font-size: 1.25em;
    margin-top: 1.6em;
    margin-bottom: 0.6em;
    line-height: 1.6;
  }
  .prose :where(h3 strong) {
    font-weight: 700;
    color: inherit;
  }
  .prose :where(h4) {
    color: var(--prose-headings);
    font-weight: 700;
    margin-top: 1.5em;
    margin-bottom: 0.5em;
    line-height: 1.5;
  }
  .prose :where(h4 strong) {
    font-weight: 700;
    color: inherit;
  }
  .prose :where(img) {
    margin-top: 1em;
    margin-bottom: 2em;
  }
  .prose :where(figure > *) {
    margin-top: 0;
    margin-bottom: 0;
  }
  .prose :where(figcaption) {
    color: var(--prose-captions);
    font-size: 0.875em;
    line-height: 1.4285714;
    margin-top: 0.8571429em;
  }
  .prose :where(table) {
    width: 100%;
    table-layout: auto;
    text-align: left;
    margin-top: 2em;
    margin-bottom: 2em;
    font-size: 0.875em;
    line-height: 1.7142857;
  }
  .prose :where(thead) {
    border-bottom-width: 1px;
    border-bottom-color: var(--prose-th-borders);
  }
  .prose :where(thead th) {
    color: var(--prose-headings);
    font-weight: 600;
    vertical-align: bottom;
    padding-right: 0.5714286em;
    padding-bottom: 0.5714286em;
    padding-left: 0.5714286em;
  }
  .prose :where(tbody tr) {
    border-bottom-width: 1px;
    border-bottom-color: var(--prose-td-borders);
  }
  .prose :where(tbody tr:last-child) {
    border-bottom-width: 0;
  }
  .prose :where(tbody td) {
    vertical-align: baseline;
  }
  .prose :where(tfoot) {
    border-top-width: 1px;
    border-top-color: var(--prose-th-borders);
  }
  .prose :where(tfoot td) {
    vertical-align: top;
  }
  .prose {
    font-size: 1rem;
    line-height: 1.75;
  }
  .prose :where(video) {
    margin-top: 2em;
    margin-bottom: 2em;
  }
  .prose :where(figure) {
    margin-top: 2em;
    margin-bottom: 2em;
  }
  .prose :where(li) {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
  }
  .prose :where(ol > li) {
    padding-left: 0.375em;
  }
  .prose :where(ul > li) {
    padding-left: 0.375em;
  }
  .prose :where(.prose > ul > li p) {
    margin-top: 0.75em;
    margin-bottom: 0.75em;
  }
  .prose :where(.prose > ul > li > *:first-child) {
    margin-top: 1.25em;
  }
  .prose :where(.prose > ul > li > *:last-child) {
    margin-bottom: 1.25em;
  }
  .prose :where(.prose > ol > li > *:first-child) {
    margin-top: 1.25em;
  }
  .prose :where(.prose > ol > li > *:last-child) {
    margin-bottom: 1.25em;
  }
  .prose :where(ul ul, ul ol, ol ul, ol ol) {
    margin-top: 0.75em;
    margin-bottom: 0.75em;
  }
  .prose :where(hr + *) {
    margin-top: 0;
  }
  .prose :where(h2 + *) {
    margin-top: 0;
  }
  .prose :where(h3 + *) {
    margin-top: 0;
  }
  .prose :where(h4 + *) {
    margin-top: 0;
  }
  .prose :where(thead th:first-child) {
    padding-left: 0;
  }
  .prose :where(thead th:last-child) {
    padding-right: 0;
  }
  .prose :where(tbody td, tfoot td) {
    padding-top: 0.5714286em;
    padding-right: 0.5714286em;
    padding-bottom: 0.5714286em;
    padding-left: 0.5714286em;
  }
  .prose :where(tbody td:first-child, tfoot td:first-child) {
    padding-left: 0;
  }
  .prose :where(tbody td:last-child, tfoot td:last-child) {
    padding-right: 0;
  }
  .prose :where(.prose > :first-child) {
    margin-top: 0;
  }
  .prose :where(.prose > :last-child) {
    margin-bottom: 0;
  }
}
/**
* Button
*/
.prose .btn {
  text-decoration: none;
}

/**
* White
*/
.prose--white > * {
  color: var(--color-white);
}

/**
* Legal
*/
.prose--legal {
  max-width: 54rem;
  margin: 0 auto;
}

/*--------------------------------------------------------------
# Slideshow
--------------------------------------------------------------*/
.slideshow {
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.slideshow__item {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  visibility: hidden;
  height: 100%;
}
.slideshow__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-animation-name: scale-in;
          animation-name: scale-in;
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: cubic-bezier(0.42, 0, 0.002, 1);
          animation-timing-function: cubic-bezier(0.42, 0, 0.002, 1);
}
.slideshow__item:focus {
  outline: none;
}
.slideshow__item--selected {
  position: relative;
  visibility: visible;
  z-index: 3;
}
.slideshow__content {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.slideshow--transition-fade .slideshow__item {
  opacity: 0;
  transition: opacity 1s, visibility 1s, transform 1s;
}

.slideshow--transition-fade .slideshow__item--selected {
  opacity: 1;
  transition: opacity 1s;
}

.slideshow[data-swipe=on] .slideshow__content {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.slideshow[data-swipe=on] .slideshow__content img {
  pointer-events: none;
}

@keyframes scale-in {
  0% {
    opacity: 0;
    transform: scale3d(1.2, 1.2, 1);
  }
  75% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: scaleX(1);
  }
}
/*--------------------------------------------------------------
# Read More
--------------------------------------------------------------*/
.read-more {
  opacity: 0;
}
.read-more--loaded {
  opacity: 1;
}
.read-more__btn {
  cursor: pointer;
  color: var(--color-blue);
  font-weight: 500;
  display: flex;
  align-items: center;
  position: relative;
  margin-top: 1rem;
}
.read-more__btn::after {
  content: "";
  background-position: 0 center;
  background-repeat: no-repeat;
  width: 0.875rem;
  height: 0.875rem;
  position: absolute;
  right: -1rem;
}
.read-more__btn--more::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23009DDC'%3E%3Cpath fill-rule='evenodd' d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z' clip-rule='evenodd' /%3E%3C/svg%3E");
}
.read-more__btn--less::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23009DDC'%3E%3Cpath fill-rule='evenodd' d='M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z' clip-rule='evenodd' /%3E%3C/svg%3E");
}

/*--------------------------------------------------------------
# Socials
--------------------------------------------------------------*/
.socials {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.socials > * + * {
  margin-left: clamp(0.5rem, 0.51vw + 0.38rem, 0.88rem);
}
.socials__btn {
  background-color: var(--color-blue);
  border-radius: 50%;
  width: clamp(2rem, 0.34vw + 1.92rem, 2.25rem);
  height: clamp(2rem, 0.34vw + 1.92rem, 2.25rem);
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 0.3s;
}
.socials__btn:hover {
  background-color: var(--color-navy);
}
.socials__btn:hover svg {
  transform: scale(1.05);
}
.socials a {
  line-height: 1;
}
.socials svg {
  display: inline-block;
  color: inherit;
  fill: var(--color-white);
  line-height: 1;
  flex-shrink: 0;
  max-width: initial;
  width: clamp(1rem, 0.34vw + 0.92rem, 1.25rem);
  height: clamp(1rem, 0.34vw + 0.92rem, 1.25rem);
  transition: color 0.3s, transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

/*--------------------------------------------------------------
# Signup
--------------------------------------------------------------*/
.signup {
  background-color: var(--color-navy);
  width: 100%;
  max-width: 1344px;
  margin: 0 auto;
  position: relative;
  z-index: 10;
}
@media (min-width: 1024px) {
  .signup {
    border-radius: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem);
    max-width: calc(1344px - 5rem);
  }
}
@media (min-width: 1536px) {
  .signup {
    max-width: calc(1344px - 8vw);
  }
}
.signup__wrap {
  display: grid;
  grid-gap: 2rem;
  grid-template-columns: 1fr;
  padding: clamp(2.5rem, 1.37vw + 2.18rem, 3.5rem) clamp(1.63rem, 3.26vw + 0.87rem, 4rem);
}
@media (min-width: 1024px) {
  .signup__wrap {
    grid-gap: clamp(2rem, 8.23vw + 0.1rem, 8rem);
    grid-template-columns: repeat(2, minmax(1rem, 1fr));
  }
}
.signup__content {
  max-width: 30rem;
}
.signup h2 {
  font-size: clamp(1.45rem, 1.37vw + 1.13rem, 2.45rem);
  max-width: 26.25rem;
}

/*--------------------------------------------------------------
# Staff
--------------------------------------------------------------*/
.staff__media {
  border-bottom-right-radius: 4rem;
  overflow: hidden;
  margin-bottom: clamp(1rem, 0.34vw + 0.92rem, 1.25rem);
}
.staff__title {
  font-size: clamp(1rem, 0.45vw + 0.9rem, 1.33rem);
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 0;
}
.staff__subtitle {
  font-size: clamp(0.75rem, 0.17vw + 0.71rem, 0.88rem);
  font-weight: 500;
  text-transform: uppercase;
  margin-bottom: 0.75rem;
}
.staff__excerpt p + p {
  margin-top: 1em;
}

/*--------------------------------------------------------------
# Tabs
--------------------------------------------------------------*/
.tabs {
  position: relative;
  z-index: 5;
}
.tabs__header {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  margin-bottom: clamp(2rem, 1.37vw + 1.68rem, 3rem);
}
@media (min-width: 768px) {
  .tabs__header {
    gap: 0;
    align-items: center;
    flex-direction: row;
    justify-content: space-between;
  }
}
.tabs__header--center {
  justify-content: center;
}
.tabs__controls {
  display: flex;
  align-items: center;
  gap: clamp(1rem, 2.4vw + 0.44rem, 2.75rem);
}
.tabs__control {
  font-size: clamp(0.75rem, 0.24vw + 0.69rem, 0.93rem);
  text-transform: uppercase;
}
.tabs__control[aria-selected=true] {
  color: var(--color-blue);
  font-weight: 700;
}
.tabs__control:hover {
  color: var(--color-blue);
}
.tabs__panels {
  position: relative;
}
.tabs__panel {
  padding-top: var(--space-md);
  -webkit-animation: fade-in 0.3s var(--ease-in);
          animation: fade-in 0.3s var(--ease-in);
}
.tabs__cta {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding-top: clamp(1.5rem, 1.72vw + 1.1rem, 2.75rem);
}

@keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*--------------------------------------------------------------
# 06 - Pages
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Career
--------------------------------------------------------------*/
.career {
  background-color: var(--color-white);
  border-radius: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem);
  box-shadow: var(--shadow-sm);
  padding: clamp(1.5rem, 3.43vw + 0.71rem, 4rem);
  overflow: hidden;
}
.career__title {
  margin-bottom: 1rem;
}
.career img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: auto;
}

/**
* Apply
*/
.apply {
  background-color: #f3f3f3;
  border-radius: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem);
  box-shadow: var(--shadow-sm);
  padding: clamp(1.5rem, 3.43vw + 0.71rem, 4rem);
  margin-top: clamp(1.5rem, 2.06vw + 1.02rem, 3rem);
  overflow: hidden;
}

/*--------------------------------------------------------------
# News
--------------------------------------------------------------*/
/**
* Tease
*/
.tease {
  border-radius: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem);
  border-bottom: 1px solid #e7eaf0;
  padding-bottom: 1.25rem;
}
.tease:last-of-type {
  border-bottom: none;
}
.tease__wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media (min-width: 768px) {
  .tease__wrap {
    flex-direction: row;
  }
}
.tease__content {
  width: 100%;
}
@media (min-width: 768px) {
  .tease__content {
    padding-left: clamp(1.5rem, 0.69vw + 1.34rem, 2rem);
  }
}
.tease__content--sm {
  padding-left: 0;
}
.tease__title {
  text-transform: initial;
  transition: color 0.2s var(--ease-out);
}
@media (min-width: 768px) {
  .tease__title {
    max-width: 80%;
  }
}
.tease__title--sm {
  max-width: 100%;
}
.tease__excerpt {
  font-size: clamp(0.88rem, 0.07vw + 0.86rem, 0.93rem);
  margin-top: 0.875rem;
}
@media (min-width: 768px) {
  .tease__excerpt {
    max-width: 80%;
  }
}
.tease__excerpt--sm {
  font-size: clamp(0.75rem, 0.17vw + 0.71rem, 0.88rem);
}
.tease__meta {
  font-size: clamp(0.75rem, 0.17vw + 0.71rem, 0.88rem);
  font-weight: 500;
  line-height: 1;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  margin-bottom: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem);
}
.tease__date {
  color: var(--color-blue);
}
.tease__media {
  aspect-ratio: 5/3;
  flex-shrink: 0;
  border-bottom-right-radius: clamp(1rem, 0.69vw + 0.84rem, 1.5rem);
  height: 100%;
  width: 100%;
  overflow: hidden;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .tease__media {
    width: clamp(14rem, 8.23vw + 12.1rem, 20rem);
    margin-bottom: 0;
  }
}
.tease__media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.tease__link {
  color: var(--color-blue);
  font-size: clamp(0.63rem, 0.26vw + 0.57rem, 0.81rem);
  font-weight: 600;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  margin-top: clamp(0.75rem, 0.24vw + 0.69rem, 0.93rem);
}
.tease .icon {
  margin-left: clamp(0.75rem, 0.34vw + 0.67rem, 1rem);
}
.tease:hover .tease__title {
  color: var(--color-blue);
}

/**
* Article
*/
.article {
  padding-top: clamp(2.67rem, 2.11vw + 2.18rem, 4.21rem);
  padding-bottom: clamp(1rem, 0.34vw + 0.92rem, 1.25rem);
}
.article__meta {
  color: var(--color-light-grey);
  font-size: clamp(0.63rem, 0.34vw + 0.55rem, 0.88rem);
  text-transform: uppercase;
  margin-bottom: 1rem;
}
.article__author {
  color: var(--color-blue);
  font-weight: 600;
}
.article__title {
  font-size: clamp(1.25rem, 1.03vw + 1.01rem, 2rem);
  margin-bottom: clamp(1.25rem, 2.4vw + 0.69rem, 3rem);
  text-transform: initial;
  line-height: 1.2;
}
.article__excerpt {
  color: var(--color-primary);
  font-size: clamp(0.88rem, 0.25vw + 0.82rem, 1.06rem);
  margin-bottom: 2rem;
  max-width: 54rem;
}
.article__media {
  border-radius: 0.125rem 0.125rem clamp(1.5rem, 1.72vw + 1.1rem, 2.75rem) 0.125rem;
  overflow: hidden;
  margin-bottom: clamp(1.5rem, 1.72vw + 1.1rem, 2.75rem);
}
.article__share {
  padding-top: 4rem;
}
.article__share-title {
  font-size: clamp(0.75rem, 0.17vw + 0.71rem, 0.88rem);
  text-align: center;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}
.article__featured {
  position: -webkit-sticky;
  position: sticky;
  top: 8rem;
  align-self: start;
}
.article__featured h4 {
  margin-bottom: clamp(1rem, 1.37vw + 0.68rem, 2rem);
}
.article .prose {
  max-width: 57.5rem;
  margin: 0 auto;
}

/**
* Step
*/
.step {
  border-top: 1px solid #e7eaf0;
  padding-top: 2.75rem;
  padding-bottom: clamp(2.67rem, 2vw + 2.21rem, 4.13rem);
}
@media (min-width: 768px) {
  .step__wrap {
    display: flex;
    gap: 2rem;
    justify-content: space-between;
  }
}
.step__item {
  display: block;
}
.step__item:hover .step__title {
  color: var(--color-blue);
}
.step__item--next {
  margin-top: 1.5rem;
}
@media (min-width: 768px) {
  .step__item--next {
    margin-top: 0;
    text-align: right;
    margin-left: auto;
  }
}
.step__label {
  color: var(--color-light-grey);
  font-weight: 400;
  font-size: clamp(0.75rem, 0.17vw + 0.71rem, 0.88rem);
  text-transform: uppercase;
  margin-bottom: clamp(0.13rem, 0.51vw + 0.01rem, 0.5rem);
}
.step__title {
  color: var(--color-primary);
  font-size: clamp(0.75rem, 0.17vw + 0.71rem, 0.88rem);
  transition: color 0.2s var(--ease-out);
}

/*--------------------------------------------------------------
# Sale
--------------------------------------------------------------*/
.sale {
  background-color: var(--color-white);
  border-radius: clamp(0.5rem, 0.34vw + 0.42rem, 0.75rem);
  box-shadow: var(--shadow-sm);
  padding: clamp(1.5rem, 3.43vw + 0.71rem, 4rem);
  overflow: hidden;
}
.sale__header {
  margin-bottom: clamp(1rem, 2.26vw + 0.48rem, 2.65rem);
}
.sale__meta {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: clamp(1rem, 0vw + 1rem, 1rem);
  margin-bottom: clamp(1rem, 2.26vw + 0.48rem, 2.65rem);
}
@media (min-width: 768px) {
  .sale__meta {
    grid-template-columns: repeat(2, minmax(1rem, 1fr));
  }
}
.sale__meta p {
  font-size: clamp(0.88rem, 0.17vw + 0.84rem, 1rem);
}
.sale__links {
  display: grid;
  grid-column-gap: 4rem;
  grid-row-gap: clamp(1rem, 0.69vw + 0.84rem, 1.5rem);
  grid-template-columns: 1fr;
  margin-bottom: clamp(2rem, 3.09vw + 1.29rem, 4.25rem);
}
@media (min-width: 768px) {
  .sale__links {
    grid-template-columns: repeat(2, minmax(1rem, 1fr));
  }
}
.sale__link {
  border-bottom: 1.5px solid var(--color-blue);
  cursor: pointer;
  font-size: clamp(0.75rem, 0.17vw + 0.71rem, 0.88rem);
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 0;
  transition: 0.4s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.sale__link:hover {
  color: var(--color-blue);
}
.sale__heading {
  border-bottom: 1px solid #e7eaf0;
  padding-bottom: 0.925rem;
  text-transform: uppercase;
}
.sale__item + .sale__item {
  margin-top: clamp(2rem, 4.97vw + 0.85rem, 5.63rem);
}
.sale .icon {
  font-size: 1rem;
  flex-shrink: 0;
}

/**
* Agent
*/
.agent__img {
  width: 10rem;
  height: 5rem;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: left;
     object-position: left;
}
.agent__details > * {
  font-size: clamp(0.88rem, 0.17vw + 0.84rem, 1rem);
}

/*--------------------------------------------------------------
# 07 - Utilities
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/
/**
* Colours
*/
.bg-blue {
  background-color: var(--color-blue);
}

.text-blue {
  color: var(--color-blue);
}

.bg-dark-grey {
  background-color: var(--color-navy);
}

.text-dark-grey {
  color: var(--color-navy);
}

.bg-grey {
  background-color: var(--color-grey);
}

.text-grey {
  color: var(--color-grey);
}

.bg-light-grey {
  background-color: var(--color-light-grey);
}

.text-light-grey {
  color: var(--color-light-grey);
}

.bg-lightest-grey {
  background-color: var(--color-lightest-grey);
}

.text-lightest-grey {
  color: var(--color-lightest-grey);
}

.bg-white {
  background-color: var(--color-white);
}

.text-white {
  color: var(--color-white);
}

/**
* Flow
*/
.flow-sm > * + * {
  margin-top: clamp(0.45rem, 0.58vw + 0.32rem, 0.88rem);
}

.flow-md > * + * {
  margin-top: clamp(1rem, 1.07vw + 0.75rem, 1.78rem);
}

.flow-lg > * + * {
  margin-top: clamp(1.5rem, 1.72vw + 1.1rem, 2.75rem);
}

.flow-xl > * + * {
  margin-top: clamp(1.5rem, 6.17vw + 0.07rem, 6rem);
}

/**
* Text
*/
.text-center {
  text-align: center;
}

.text-bold {
  font-weight: 700;
}

.text-normal {
  font-weight: 400;
}

.text-uppercase {
  text-transform: uppercase;
}

.text-capitalize {
  text-transform: capitalize;
}

.text-underline {
  text-decoration: underline;
  text-underline-offset: 2px;
}

.text-no-underline {
  text-decoration: none !important;
}

.leading-lg {
  line-height: 1.8;
}

/**
* Overflow
*/
.overflow-hidden {
  overflow: hidden;
}

/**
* Accessibility
*/
.sr-only {
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  width: 1px;
  height: 1px;
  overflow: hidden;
  padding: 0;
  border: 0;
  white-space: nowrap;
}

/**
* Aspect Ratio
*/
[class^=aspect-ratio],
[class*=" aspect-ratio"] {
  --aspect-ratio: calc(16/9);
  position: relative;
  height: 0;
  padding-bottom: calc(100% / (var(--aspect-ratio)));
}
[class^=aspect-ratio] > *,
[class*=" aspect-ratio"] > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
[class^=aspect-ratio] > *:not(iframe),
[class*=" aspect-ratio"] > *:not(iframe) {
  -o-object-fit: cover;
     object-fit: cover;
}

.aspect-ratio-16\:9 {
  --aspect-ratio: calc(16/9);
}

.aspect-ratio-16\:10 {
  --aspect-ratio: calc(16/10.5);
}

.aspect-ratio-16\:11 {
  --aspect-ratio: calc(16/11);
}

.aspect-ratio-2\:3 {
  --aspect-ratio: calc(2/3);
}

.aspect-ratio-1\:1 {
  --aspect-ratio: calc(1/1);
}

/**
* Shadows
*/
.shadow-sm {
  box-shadow: var(--shadow-sm);
}

/**
* Highlight
*/
.highlight {
  background-color: var(--color-navy);
  border-bottom-right-radius: 1rem;
  color: var(--color-white);
  font-size: clamp(0.75rem, 0.27vw + 0.69rem, 0.95rem);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  padding: 0.325rem 1.125rem 0.325rem 0.75rem;
  font-weight: 500;
  text-transform: uppercase;
}

/**
* Boxed
*/
.boxed {
  background-color: var(--color-blue);
  border-radius: clamp(0.33rem, 0.24vw + 0.27rem, 0.5rem);
  color: var(--color-white);
  padding: clamp(1.25rem, 1.03vw + 1.01rem, 2rem);
}
.boxed--white {
  background-color: var(--color-white);
  color: var(--color-navy);
}
.boxed--white h1,
.boxed--white h2,
.boxed--white h3,
.boxed--white h4,
.boxed--white h5,
.boxed--white h6,
.boxed--white strong {
  color: var(--color-navy);
}
.boxed--white a {
  color: var(--color-blue);
}

/**
* Tagline
*/
.tagline {
  max-width: clamp(9rem, 6.86vw + 7.41rem, 14rem);
  margin-top: clamp(2rem, 2.74vw + 1.37rem, 4rem);
}

/**
* Hide
*/
.is-hidden {
  display: none;
}

.hide-mobile {
  display: none;
}
@media (min-width: 768px) {
  .hide-mobile {
    display: block;
  }
}

.hide-desktop {
  display: block;
}
@media (min-width: 768px) {
  .hide-desktop {
    display: none;
  }
}

/**
* Transitions
*/
[data-animate=fade-in] {
  opacity: 0;
  transition: opacity 1s ease-out;
  will-change: opacity;
}
[data-animate=fade-in].is-active {
  opacity: 1;
}

[data-animate=stagger] > * {
  visibility: hidden;
  will-change: transform;
}

/**
* Overlay
*/
.overlay {
  background-color: var(--color-navy);
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
  pointer-events: auto;
  height: 100%;
  width: 100%;
  z-index: 90;
}/*# sourceMappingURL=index.css.map */
