@charset "UTF-8";
/*! purgecss start ignore */
/** Import thirdparty */
/*! Flickity v3.0.0
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative;
}

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

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
  touch-action: pan-y;
}

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

.flickity-rtl .flickity-slider {
  left: unset;
  right: 0;
}

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

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

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

/* ---- flickity-cell ---- */
.flickity-cell {
  position: absolute;
  left: 0;
}

.flickity-rtl .flickity-cell {
  left: unset;
  right: 0;
}

/* ---- flickity-button ---- */
.flickity-button {
  position: absolute;
  background: hsl(0 0% 100%/75%);
  border: none;
  color: #333;
}

.flickity-button:hover {
  background: white;
  cursor: pointer;
}

.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19F;
}

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

.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none;
}

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

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  /* vertically center */
  transform: translateY(-50%);
}

.flickity-prev-next-button.previous {
  left: 10px;
}

.flickity-prev-next-button.next {
  right: 10px;
}

/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}

.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  text-align: center;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

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

.flickity-page-dot {
  display: block;
  width: 10px;
  height: 10px;
  padding: 0;
  margin: 0 8px;
  background: hsl(0 0% 20%/25%);
  border-radius: 50%;
  cursor: pointer;
  -webkit-appearance: none;
          appearance: none;
  border: none;
  text-indent: -9999px;
  overflow: hidden;
}

.flickity-rtl .flickity-page-dot {
  text-indent: 9999px;
}

.flickity-page-dot:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19F;
}

.flickity-page-dot.is-selected {
  background: hsl(0 0% 20%/100%);
}

/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */
/*
	Styles for basic PhotoSwipe functionality (sliding area, open/close transitions)
*/
/* pswp = photoswipe */
.pswp {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow: hidden;
  touch-action: none;
  z-index: 1500;
  -webkit-text-size-adjust: 100%;
  /* create separate layer, to avoid paint on window.onscroll in webkit/blink */
  -webkit-backface-visibility: hidden;
  outline: none;
}
.pswp * {
  box-sizing: border-box;
}
.pswp img {
  max-width: none;
}

/* style is added when JS option showHideOpacity is set to true */
.pswp--animate_opacity {
  /* 0.001, because opacity:0 doesn't trigger Paint action, which causes lag at start of transition */
  opacity: 0.001;
  will-change: opacity;
  /* for open/close transition */
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp--open {
  display: block;
}

.pswp--zoom-allowed .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in;
}

.pswp--zoomed-in .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: grab;
}

.pswp--dragging .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing;
}

/*
	Background is added as a separate element.
	As animating opacity is much faster than animating rgba() background-color.
*/
.pswp__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  will-change: opacity;
}

.pswp__scroll-wrap {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.pswp__container,
.pswp__zoom-wrap {
  touch-action: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

/* Prevent selection and tap highlights */
.pswp__container,
.pswp__img {
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-touch-callout: none;
}

.pswp__zoom-wrap {
  position: absolute;
  width: 100%;
  transform-origin: left top;
  /* for open/close transition */
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp__bg {
  will-change: opacity;
  /* for open/close transition */
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp--animated-in .pswp__bg,
.pswp--animated-in .pswp__zoom-wrap {
  transition: none;
}

.pswp__container,
.pswp__zoom-wrap {
  -webkit-backface-visibility: hidden;
}

.pswp__item {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  overflow: hidden;
}

.pswp__img {
  position: absolute;
  width: auto;
  height: auto;
  top: 0;
  left: 0;
}

/*
	stretched thumbnail or div placeholder element (see below)
	style is added to avoid flickering in webkit/blink when layers overlap
*/
.pswp__img--placeholder {
  -webkit-backface-visibility: hidden;
}

/*
	div element that matches size of large image
	large image loads on top of it
*/
.pswp__img--placeholder--blank {
  background: #222;
}

.pswp--ie .pswp__img {
  width: 100% !important;
  height: auto !important;
  left: 0;
  top: 0;
}

/*
	Error message appears when image is not loaded
	(JS option errorMsg controls markup)
*/
.pswp__error-msg {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  text-align: center;
  font-size: 14px;
  line-height: 16px;
  margin-top: -8px;
  color: #CCC;
}

.pswp__error-msg a {
  color: #CCC;
  text-decoration: underline;
}

/*! PhotoSwipe Default UI CSS by Dmitry Semenov | photoswipe.com | MIT license */
/*

	Contents:

	1. Buttons
	2. Share modal and links
	3. Index indicator ("1 of X" counter)
	4. Caption
	5. Loading indicator
	6. Additional styles (root element, top bar, idle state, hidden state, etc.)

*/
/*

	1. Buttons

 */
/* <button> css reset */
.pswp__button {
  width: 44px;
  height: 44px;
  position: relative;
  background: none;
  cursor: pointer;
  overflow: visible;
  -webkit-appearance: none;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
  float: right;
  opacity: 0.75;
  transition: opacity 0.2s;
  box-shadow: none;
}
.pswp__button:focus, .pswp__button:hover {
  opacity: 1;
}
.pswp__button:active {
  outline: none;
  opacity: 0.9;
}
.pswp__button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

/* pswp__ui--over-close class it added when mouse is over element that should close gallery */
.pswp__ui--over-close .pswp__button--close {
  opacity: 1;
}

.pswp__button,
.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  background: url(../../img/thirdparty/photoswipe/default-skin/default-skin.png) 0 0 no-repeat;
  background-size: 264px 88px;
  width: 44px;
  height: 44px;
}

@media (-webkit-min-device-pixel-ratio: 1.1), (-webkit-min-device-pixel-ratio: 1.09375), (min-resolution: 105dpi), (min-resolution: 1.1dppx) {
  /* Serve SVG sprite if browser supports SVG and resolution is more than 105dpi */
  .pswp--svg .pswp__button,
  .pswp--svg .pswp__button--arrow--left:before,
  .pswp--svg .pswp__button--arrow--right:before {
    background-image: url(../../img/thirdparty/photoswipe/default-skin/default-skin.svg);
  }
  .pswp--svg .pswp__button--arrow--left,
  .pswp--svg .pswp__button--arrow--right {
    background: none;
  }
}
.pswp__button--close {
  background-position: 0 -44px;
}

.pswp__button--share {
  background-position: -44px -44px;
}

.pswp__button--fs {
  display: none;
}

.pswp--supports-fs .pswp__button--fs {
  display: block;
}

.pswp--fs .pswp__button--fs {
  background-position: -44px 0;
}

.pswp__button--zoom {
  display: none;
  background-position: -88px 0;
}

.pswp--zoom-allowed .pswp__button--zoom {
  display: block;
}

.pswp--zoomed-in .pswp__button--zoom {
  background-position: -132px 0;
}

/* no arrows on touch screens */
.pswp--touch .pswp__button--arrow--left,
.pswp--touch .pswp__button--arrow--right {
  visibility: hidden;
}

/*
	Arrow buttons hit area
	(icon is added to :before pseudo-element)
*/
.pswp__button--arrow--left,
.pswp__button--arrow--right {
  background: none;
  top: 50%;
  margin-top: -50px;
  width: 70px;
  height: 100px;
  position: absolute;
}

.pswp__button--arrow--left {
  left: 0;
}

.pswp__button--arrow--right {
  right: 0;
}

.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  content: "";
  top: 35px;
  background-color: rgba(0, 0, 0, 0.3);
  height: 30px;
  width: 32px;
  position: absolute;
}

.pswp__button--arrow--left:before {
  left: 6px;
  background-position: -138px -44px;
}

.pswp__button--arrow--right:before {
  right: 6px;
  background-position: -94px -44px;
}

/*

	2. Share modal/popup and links

 */
.pswp__counter,
.pswp__share-modal {
  -webkit-user-select: none;
  user-select: none;
}

.pswp__share-modal {
  display: block;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding: 10px;
  position: absolute;
  z-index: 1600;
  opacity: 0;
  transition: opacity 0.25s ease-out;
  -webkit-backface-visibility: hidden;
  will-change: opacity;
}

.pswp__share-modal--hidden {
  display: none;
}

.pswp__share-tooltip {
  z-index: 1620;
  position: absolute;
  background: #FFF;
  top: 56px;
  border-radius: 2px;
  display: block;
  width: auto;
  right: 44px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
  transform: translateY(6px);
  transition: transform 0.25s;
  -webkit-backface-visibility: hidden;
  will-change: transform;
}
.pswp__share-tooltip a {
  display: block;
  padding: 8px 12px;
  color: #000;
  text-decoration: none;
  font-size: 14px;
  line-height: 18px;
}
.pswp__share-tooltip a:hover {
  text-decoration: none;
  color: #000;
}
.pswp__share-tooltip a:first-child {
  /* round corners on the first/last list item */
  border-radius: 2px 2px 0 0;
}
.pswp__share-tooltip a:last-child {
  border-radius: 0 0 2px 2px;
}

.pswp__share-modal--fade-in {
  opacity: 1;
}
.pswp__share-modal--fade-in .pswp__share-tooltip {
  transform: translateY(0);
}

/* increase size of share links on touch devices */
.pswp--touch .pswp__share-tooltip a {
  padding: 16px 12px;
}

a.pswp__share--facebook:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: -12px;
  right: 15px;
  border: 6px solid rgba(0, 0, 0, 0);
  border-bottom-color: #FFF;
  -webkit-pointer-events: none;
  -moz-pointer-events: none;
  pointer-events: none;
}
a.pswp__share--facebook:hover {
  background: #3E5C9A;
  color: #FFF;
}
a.pswp__share--facebook:hover:before {
  border-bottom-color: #3E5C9A;
}

a.pswp__share--twitter:hover {
  background: #55ACEE;
  color: #FFF;
}

a.pswp__share--pinterest:hover {
  background: #CCC;
  color: #CE272D;
}

a.pswp__share--download:hover {
  background: #DDD;
}

/*

	3. Index indicator ("1 of X" counter)

 */
.pswp__counter {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  font-size: 13px;
  line-height: 44px;
  color: #FFF;
  opacity: 0.75;
  padding: 0 10px;
}

/*

	4. Caption

 */
.pswp__caption {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  min-height: 44px;
}
.pswp__caption small {
  font-size: 11px;
  color: #BBB;
}

.pswp__caption__center {
  text-align: left;
  max-width: 420px;
  margin: 0 auto;
  font-size: 13px;
  padding: 10px;
  line-height: 20px;
  color: #CCC;
}

.pswp__caption--empty {
  display: none;
}

/* Fake caption element, used to calculate height of next/prev image */
.pswp__caption--fake {
  visibility: hidden;
}

/*

	5. Loading indicator (preloader)

	You can play with it here - http://codepen.io/dimsemenov/pen/yyBWoR

 */
.pswp__preloader {
  width: 44px;
  height: 44px;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -22px;
  opacity: 0;
  transition: opacity 0.25s ease-out;
  will-change: opacity;
  direction: ltr;
}

.pswp__preloader__icn {
  width: 20px;
  height: 20px;
  margin: 12px;
}

.pswp__preloader--active {
  opacity: 1;
}
.pswp__preloader--active .pswp__preloader__icn {
  /* We use .gif in browsers that don't support CSS animation */
  background: url(../../img/thirdparty/photoswipe/default-skin/preloader.gif) 0 0 no-repeat;
}

.pswp--css_animation .pswp__preloader--active {
  opacity: 1;
}
.pswp--css_animation .pswp__preloader--active .pswp__preloader__icn {
  animation: clockwise 500ms linear infinite;
}
.pswp--css_animation .pswp__preloader--active .pswp__preloader__donut {
  animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite;
}
.pswp--css_animation .pswp__preloader__icn {
  background: none;
  opacity: 0.75;
  width: 14px;
  height: 14px;
  position: absolute;
  left: 15px;
  top: 15px;
  margin: 0;
}
.pswp--css_animation .pswp__preloader__cut {
  /* 
  	The idea of animating inner circle is based on Polymer ("material") loading indicator 
  	 by Keanu Lee https://blog.keanulee.com/2014/10/20/the-tale-of-three-spinners.html
  */
  position: relative;
  width: 7px;
  height: 14px;
  overflow: hidden;
}
.pswp--css_animation .pswp__preloader__donut {
  box-sizing: border-box;
  width: 14px;
  height: 14px;
  border: 2px solid #FFF;
  border-radius: 50%;
  border-left-color: transparent;
  border-bottom-color: transparent;
  position: absolute;
  top: 0;
  left: 0;
  background: none;
  margin: 0;
}

@media screen and (max-width: 1024px) {
  .pswp__preloader {
    position: relative;
    left: auto;
    top: auto;
    margin: 0;
    float: right;
  }
}
@keyframes clockwise {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes donut-rotate {
  0% {
    transform: rotate(0);
  }
  50% {
    transform: rotate(-140deg);
  }
  100% {
    transform: rotate(0);
  }
}
/*

	6. Additional styles

 */
/* root element of UI */
.pswp__ui {
  -webkit-font-smoothing: auto;
  visibility: visible;
  opacity: 1;
  z-index: 1550;
}

/* top black bar with buttons and "1 of X" indicator */
.pswp__top-bar {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  width: 100%;
}

.pswp__caption,
.pswp__top-bar,
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  -webkit-backface-visibility: hidden;
  will-change: opacity;
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

/* pswp--has_mouse class is added only when two subsequent mousemove events occur */
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  visibility: visible;
}

.pswp__top-bar,
.pswp__caption {
  background-color: rgba(0, 0, 0, 0.5);
}

/* pswp__ui--fit class is added when main image "fits" between top bar and bottom bar (caption) */
.pswp__ui--fit .pswp__top-bar,
.pswp__ui--fit .pswp__caption {
  background-color: rgba(0, 0, 0, 0.3);
}

/* pswp__ui--idle class is added when mouse isn't moving for several seconds (JS option timeToIdle) */
.pswp__ui--idle .pswp__top-bar {
  opacity: 0;
}
.pswp__ui--idle .pswp__button--arrow--left,
.pswp__ui--idle .pswp__button--arrow--right {
  opacity: 0;
}

/*
	pswp__ui--hidden class is added when controls are hidden
	e.g. when user taps to toggle visibility of controls
*/
.pswp__ui--hidden .pswp__top-bar,
.pswp__ui--hidden .pswp__caption,
.pswp__ui--hidden .pswp__button--arrow--left,
.pswp__ui--hidden .pswp__button--arrow--right {
  /* Force paint & create composition layer for controls. */
  opacity: 0.001;
}

/* pswp__ui--one-slide class is added when there is just one item in gallery */
.pswp__ui--one-slide .pswp__button--arrow--left,
.pswp__ui--one-slide .pswp__button--arrow--right,
.pswp__ui--one-slide .pswp__counter {
  display: none;
}

.pswp__element--disabled {
  display: none !important;
}

.pswp--minimal--dark .pswp__top-bar {
  background: none;
}

/*! purgecss end ignore */
/**
 * This injects Tailwind's base styles, which is a combination of
 * Normalize.css and some additional base styles.
 */
/*! tailwindcss v3.2.4 | MIT License | https://tailwindcss.com */
/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/
*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: #e5e7eb; /* 2 */
}
::before,
::after {
  --tw-content: '';
}
/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
*/
html {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */ /* 3 */
  tab-size: 4; /* 3 */
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
  font-feature-settings: normal; /* 5 */
}
/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/
body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}
/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/
hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}
/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}
/*
Remove the default font size and weight for headings.
*/
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}
/*
Reset links to optimize for opt-in styling instead of opt-out.
*/
a {
  color: inherit;
  text-decoration: inherit;
}
/*
Add the correct font weight in Edge and Safari.
*/
b,
strong {
  font-weight: bolder;
}
/*
1. Use the user's configured `mono` font family by default.
2. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", 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;
}
/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/
table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}
/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}
/*
Remove the inheritance of text transform in Edge and Firefox.
*/
button,
select {
  text-transform: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/
button,
[type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}
/*
Use the modern Firefox focus style for all focusable elements.
*/
:-moz-focusring {
  outline: auto;
}
/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/
:-moz-ui-invalid {
  box-shadow: none;
}
/*
Add the correct vertical alignment in Chrome and Firefox.
*/
progress {
  vertical-align: baseline;
}
/*
Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-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.
*/
::-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 */
}
/*
Add the correct display in Chrome and Safari.
*/
summary {
  display: list-item;
}
/*
Removes the default spacing and border for appropriate elements.
*/
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}
fieldset {
  margin: 0;
  padding: 0;
}
legend {
  padding: 0;
}
ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
/*
Prevent resizing textareas horizontally by default.
*/
textarea {
  resize: vertical;
}
/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/
input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}
/*
Set the default cursor for buttons.
*/
button,
[role="button"] {
  cursor: pointer;
}
/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
  cursor: default;
}
/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/
img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}
/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/
img,
video {
  max-width: 100%;
  height: auto;
}
/* Make elements with the HTML hidden attribute stay hidden by default */
[hidden] {
  display: none;
}
:root {
    --color-base: 19 19 19;
    --color-primary: 33 42 83;
    --color-secondary: 212 45 37;
    --color-tertiary: 247 247 247;
  }
*, ::before, ::after{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
}
::backdrop{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
}
.container {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.5rem;
  padding-left: 1.5rem;
}

@media (min-width: 640px) {
  .container {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .container {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .container {
    max-width: 1024px;
  }
}
@media (max-width: 1280px) {
  .container {
    max-width: 1052px !important;
  }
}
@media (min-width: 1536px) {
  .container {
    max-width: 1536px;
  }
}
/*! purgecss start ignore */
/** Import base */
/*
 * Breakpoints
 */
body::before {
  content: "thumb";
  display: none;
  visibility: hidden;
}
@media screen and (min-width: 768px) {
  body::before {
    content: "lap";
  }
}
@media screen and (min-width: 1024px) {
  body::before {
    content: "desk";
  }
}
@media screen and (min-width: 1280px) {
  body::before {
    content: "widescreen";
  }
}
@media screen and (min-width: 1536px) {
  body::before {
    content: "widescreen-4k";
  }
}

/*
 * Fonts
 */
@font-face {
  font-family: universe;
  src: url("../../../../../public/fonts/universltstd-boldcn-webfont.woff2");
  font-display: swap;
}
/*
 * Colours
 */
/*
 * UI Colours
 */
/*
 * UI
 */
/** Import core */
.swatches {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -0.25rem;
}
.swatches__item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(50% - 0.5rem);
  height: 5rem;
  text-align: center;
  margin: 0.25rem;
}
@media screen and (min-width: 768px) {
  .swatches__item {
    width: calc(25% - 0.5rem);
  }
}
.swatches__item--base {
  background: #131313;
  color: #fff;
}
.swatches__item--primary {
  background: #212a53;
  color: #fff;
}

.style-guide__heading {
  font-size: 1.5rem;
  font-weight: 700;
  font-family: "universe", system-ui, -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  border-bottom: 1px solid #dfdfdf;
  padding: 0 0 0.75rem;
  margin: 0 0 1.5rem;
}

/** Import common */
.a11y-btn{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
  font-size: 1rem;
  font-weight: 700;
  display: block;
  background: #fff;
  color: #131313;
  text-align: center;
}
.a11y-btn:focus{
  position: static;
  width: auto;
  height: auto;
  padding: 0;
  margin: 0;
  overflow: visible;
  clip: auto;
  white-space: normal;
  padding: 0.75rem 1.5rem;
}

.back-to-top {
  position: fixed;
  right: 1.5rem;
  bottom: 1.5rem;
  background: #212a53;
  padding: 0.5rem;
  box-shadow: 0 2px 5px 2px rgba(0, 0, 0, 0.15);
  opacity: 0;
  visibility: hidden;
  z-index: 9;
  border-radius: 3rem;
}
@media screen and (min-width: 768px) {
  .back-to-top:hover, .back-to-top:focus {
    background: #1a2141;
  }
}
.back-to-top.is-active {
  opacity: 1;
  visibility: visible;
}
.back-to-top svg {
  transform: scale(0.75);
}
.back-to-top svg path {
  fill: #d42d25;
}

/**
 * ----------------------------------------
 * START OF GSAP ANIMATIONS
 * ----------------------------------------
 */
.fadeIn {
  opacity: 0;
}
.fadeIn.fade-in {
  animation: fade-in 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

.maskInLeft {
  -webkit-clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
          clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
}
.maskInLeft.mask-in-left {
  animation: mask-in-left 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

.slideInLeft {
  opacity: 0;
}
.slideInLeft.slide-in-left {
  animation: slide-in-left 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

.slideInRight {
  opacity: 0;
}
.slideInRight.slide-in-right {
  animation: slide-in-right 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

.slideInBottom {
  opacity: 0;
}
.slideInBottom.slide-in-bottom {
  animation: slide-in-bottom 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

.slideInBottomStagger {
  visibility: hidden;
}

/**
 * ----------------------------------------
 * animation mask-in-left
 * ----------------------------------------
 */
@keyframes mask-in-left {
  0% {
    -webkit-clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
            clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
  }
  100% {
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}
/**
 * ----------------------------------------
 * animation fade-in
 * ----------------------------------------
 */
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/**
 * ----------------------------------------
 * animation slide-in-left
 * ----------------------------------------
 */
@keyframes slide-in-left {
  0% {
    transform: translateX(-50px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
/**
 * ----------------------------------------
 * animation slide-in-right
 * ----------------------------------------
 */
@keyframes slide-in-right {
  0% {
    transform: translateX(50px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
/**
 * ----------------------------------------
 * animation slide-in-bottom
 * ----------------------------------------
 */
@keyframes slide-in-bottom {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
.breadcrumbs {
  font-size: 0.9rem;
  font-weight: 700;
  display: flex;
}
.breadcrumbs__item {
  margin: 0 0.25rem;
}
.breadcrumbs__link {
  display: inline-block;
  padding: 0.75rem 0;
}
@media screen and (min-width: 768px) {
  .breadcrumbs__link:hover, .breadcrumbs__link:focus {
    text-decoration: underline;
  }
}
.breadcrumbs__divider {
  margin: 0 0 0 0.25rem;
}

.btn {
  font-size: 1rem;
  display: inline-flex;
  justify-content: center;
  padding: 1rem 1.5rem;
  line-height: 1;
  text-align: center;
  background: transparent;
  color: #d42d25;
  text-shadow: none;
  text-transform: uppercase;
  font-family: "universe", system-ui, -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
@media screen and (min-width: 768px) {
  .btn:hover, .btn:focus {
    text-decoration: underline;
  }
}
.btn--alt {
  border: 1px solid #fff;
  background: transparent;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .btn--alt:hover, .btn--alt:focus {
    background: #fff;
    color: #131313;
  }
}
.btn--icon {
  padding: 1rem 1.5rem 1rem 0;
  align-items: center;
  gap: 0.5rem;
}
.btn--small {
  font-size: 0.9rem;
  padding: 0.75rem 1.25rem;
  text-transform: none;
}
.btn--general{
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(212 45 37 / var(--tw-border-opacity));
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(var(--color-primary) / var(--tw-text-opacity));
}

.element {
  padding: 4rem 0;
}
@media screen and (min-width: 768px) {
  .element {
    padding: 5rem 0;
  }
}

@font-face {
  font-family: "proxima-nova";
  src: url("../fonts/proxima nova bold.otf") format("otf");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "proxima-nova";
  src: url("../fonts/proxima nova regular.otf") format("otf");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "proxima-nova";
  src: url("../fonts/proxima nova medium.otf") format("ttf");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "universe LT";
  src: url("../fonts/UniversLTStd-BoldCn.otf") format("otf");
  font-weight: 600;
  font-style: normal;
}
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  scroll-behavior: smooth;
}

input, textarea {
  -webkit-appearance: none;
  -webkit-border-radius: 0px;
}

form,
fieldset {
  border: 0;
  padding: 0;
  margin: 0;
}

input[type=email],
input[type=file],
input[type=password],
input[type=text],
input[type=date],
input[type=search],
input[type=tel],
input[type=url],
input[type=number],
select,
textarea {
  width: 100%;
  padding: 1rem 1rem 1rem 0;
  font-size: 1rem;
  font-family: "proxima-nova", system-ui, -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  color: #fff;
  background: transparent;
  border-bottom: 1px solid white;
  font-weight: 300;
  -webkit-appearance: none;
          appearance: none;
  box-sizing: border-box;
}
input[type=email]:active::placeholder,
input[type=file]:active::placeholder,
input[type=password]:active::placeholder,
input[type=text]:active::placeholder,
input[type=date]:active::placeholder,
input[type=search]:active::placeholder,
input[type=tel]:active::placeholder,
input[type=url]:active::placeholder,
input[type=number]:active::placeholder,
select:active::placeholder,
textarea:active::placeholder {
  color: #131313;
}
input[type=email]:focus,
input[type=file]:focus,
input[type=password]:focus,
input[type=text]:focus,
input[type=date]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=url]:focus,
input[type=number]:focus,
select:focus,
textarea:focus {
  background: #deeef3;
  color: #131313;
}
input[type=email]:focus::placeholder,
input[type=file]:focus::placeholder,
input[type=password]:focus::placeholder,
input[type=text]:focus::placeholder,
input[type=date]:focus::placeholder,
input[type=search]:focus::placeholder,
input[type=tel]:focus::placeholder,
input[type=url]:focus::placeholder,
input[type=number]:focus::placeholder,
select:focus::placeholder,
textarea:focus::placeholder {
  color: #131313;
}
input[type=email]::placeholder,
input[type=file]::placeholder,
input[type=password]::placeholder,
input[type=text]::placeholder,
input[type=date]::placeholder,
input[type=search]::placeholder,
input[type=tel]::placeholder,
input[type=url]::placeholder,
input[type=number]::placeholder,
select::placeholder,
textarea::placeholder {
  color: #fff;
}

select {
  border-radius: 0;
  font-weight: 600;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" height="16" width="16" viewBox="0 0 24 24"><path fill="%23fff" d="M2.985 6.998a1.25 1.25 0 0 0 0 1.77l8.31 8.31c.39.39 1.02.39 1.41 0l8.31-8.31c.49-.49.49-1.28 0-1.77a1.25 1.25 0 0 0-1.77 0l-7.25 7.24-7.25-7.25c-.48-.48-1.28-.48-1.76.01Z"/></svg>') transparent no-repeat center right 1rem;
}
select:focus {
  color: #131313;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" height="16" width="16" viewBox="0 0 24 24"><path fill="%23fff" d="M21.015 17.002c.49-.49.49-1.28 0-1.77l-8.31-8.31a.996.996 0 0 0-1.41 0l-8.31 8.31a1.25 1.25 0 0 0 0 1.77c.49.49 1.28.49 1.77 0l7.25-7.24 7.25 7.25c.48.48 1.28.48 1.76-.01Z"/></svg>') #deeef3 no-repeat center right 1rem;
}

input[type=submit] {
  background: #d42d25;
  font-family: "universe", system-ui, -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  text-transform: uppercase;
  padding: 1.15rem 2rem;
  -webkit-appearance: none;
          appearance: none;
  color: #fff !important;
  width: 100%;
}
@media screen and (min-width: 768px) {
  input[type=submit]:hover, input[type=submit]:focus {
    cursor: pointer;
    background: #1a2141;
  }
}

textarea {
  resize: vertical;
  min-height: 150px;
}

label {
  font-size: 1rem;
  font-weight: 700;
  color: #131313;
}
label.left {
  margin: 0 0 0.5rem;
}
label.right {
  margin: 0 0 0 0.5rem;
  font-weight: 400;
}

#Form_ContactForm {
  display: grid;
  gap: 1rem;
}
#Form_ContactForm .alt-drop-field {
    cursor: not-allowed;
    pointer-events: none;
    font-weight: 700;
}
@media screen and (min-width: 768px) {
  #Form_ContactForm {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.field {
  grid-column: span 2/span 2;
}
.field.text label, .field.dropdown label{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
@media screen and (min-width: 768px) {
  .field.text, .field.dropdown {
    grid-column: span 1/span 2;
  }
}
.field.textarea label{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.field.dropdown .middleColumn {
  height: 100%;
}
.field.dropdown .middleColumn .dropdown{
  padding-right: 2.5rem;
  height: 100%;
}
.field.checkbox label {
  font-size: 0.8rem;
  font-weight: 300;
  line-height: 1.5;
}

.checkbox {
  position: relative;
}
.checkbox label {
  display: inline-block;
  position: relative;
  padding: 0 0 0 1.5rem;
  z-index: 1;
  cursor: pointer;
  color: #fff;
}
.checkbox .checkbox {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  background: transparent;
  border: 1px solid #fff;
  border-radius: 5px;
}
.checkbox input {
  cursor: pointer;
  border-radius: 0;
}
.checkbox input:checked {
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAQAAABuW59YAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAB2SURBVHjaAGkAlv8A3QDyAP0A/QD+Dam3W+kCAAD8APYAAgTVZaZCGwwA5wr0AvcA+Dh+7UX/x24AqK3Wg/8nt6w4/5q71wAAVP9g/7rTXf9n/+9N+AAAtpJa/zf/S//DhP8H/wAA4gzWj2P4lsf0JP0A/wADAHB0Ngka6UmKAAAAAElFTkSuQmCC") no-repeat center #fff;
}

.glightbox-container {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999999 !important;
  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;
  overflow: hidden;
}

.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;
  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-image {
  align-items: center;
}

.gslide-image img {
  max-height: 100vh;
  display: block;
  padding: 0;
  float: none;
  outline: none;
  border: none;
  -webkit-user-select: none;
  user-select: none;
  max-width: 100vw;
  width: auto;
  height: auto;
  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: grabbing !important;
  transition: none;
}

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

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

.gslide-video::before {
  content: "";
  display: block;
  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%;
}

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

.gslide-inline .dragging {
  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%;
  background: transparent;
  position: absolute;
  bottom: 15px;
  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 string {
  color: #fff;
}

.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;
  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 {
  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 {
  animation: gfadeIn 0.5s ease;
}

.gfadeOut {
  animation: gfadeOut 0.5s ease;
}

.gslideOutLeft {
  animation: gslideOutLeft 0.3s ease;
}

.gslideInLeft {
  animation: gslideInLeft 0.3s ease;
}

.gslideOutRight {
  animation: gslideOutRight 0.3s ease;
}

.gslideInRight {
  animation: gslideInRight 0.3s ease;
}

.gzoomIn {
  animation: gzoomIn 0.5s ease;
}

.gzoomOut {
  animation: gzoomOut 0.5s ease;
}
@keyframes lightboxLoader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes gfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes gfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes gslideInLeft {
  from {
    opacity: 0;
    transform: translate3d(-60%, 0, 0);
  }
  to {
    visibility: visible;
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes gslideOutLeft {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-60%, 0, 0);
    opacity: 0;
    visibility: hidden;
  }
}
@keyframes gslideInRight {
  from {
    opacity: 0;
    visibility: visible;
    transform: translate3d(60%, 0, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes gslideOutRight {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(60%, 0, 0);
    opacity: 0;
  }
}
@keyframes gzoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 1;
  }
}
@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: 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 {
    background-color: rgba(0, 0, 0, 0.32);
  }
  .glightbox-clean .gprev:hover,
  .glightbox-clean .gnext: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;
  }
}
*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  box-sizing: border-box;
}

body {
  display: flex;
  flex-direction: column;
  font-family: "proxima-nova", system-ui, -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  position: relative;
  min-width: 320px;
  min-height: 100vh;
  background: #fff;
  color: #131313;
  margin: 0;
  font-weight: 400;
}

main {
  width: 100%;
  flex-grow: 1;
}

.no-scroll {
  width: 100vw;
  position: fixed;
  overflow: hidden;
}

.preload *,
.no-transition * {
  transition: none !important;
}

.z-1 {
  z-index: 1;
}

.z-2 {
  z-index: 2;
}

@media screen and (min-width: 768px) {
  .link:hover, .link:focus {
    text-decoration: underline;
  }
}

.message {
  display: block;
  border-radius: 0.25rem;
  margin: 1rem 0;
  border: 1px solid #131313;
  position: relative;
  padding: 0.75rem 1rem;
}
.message.message--alt {
  padding: 0;
}
.message.message--alt .message__title {
  margin: 0 0 0 0.75rem;
}
.message__header {
  display: flex;
  align-items: center;
  padding: 0.5rem 1rem;
  border-bottom: 1px solid #131313;
  border-top-right-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
}
.message.success, .message.good, .message.info {
  border-color: #1e7e15;
  background: #1e7e15;
}
.message.success.message--alt, .message.good.message--alt, .message.info.message--alt {
  background: 0;
}
.message.success .message__header, .message.good .message__header, .message.info .message__header {
  border-color: #1e7e15;
  background: #e6fbe4;
  color: #1e7e15;
}
.message.success .message__header svg, .message.good .message__header svg, .message.info .message__header svg {
  fill: #1e7e15;
}
.message.success .message__title, .message.good .message__title, .message.info .message__title {
  color: #1e7e15;
}
.message.warning {
  border-color: #ce5d0c;
  background: #ce5d0c;
}
.message.warning.message--alt {
  background: 0;
}
.message.warning .message__header {
  border-color: #ce5d0c;
  background: #fdeadc;
  color: #ce5d0c;
}
.message.warning .message__header svg {
  fill: #ce5d0c;
}
.message.warning .message__title {
  color: #ce5d0c;
}
.message.required, .message.validation, .message.alert, .message.bad, .message.error {
  border-color: #bf0000;
  background: #bf0000;
}
.message.required.message--alt, .message.validation.message--alt, .message.alert.message--alt, .message.bad.message--alt, .message.error.message--alt {
  background: 0;
}
.message.required .message__header, .message.validation .message__header, .message.alert .message__header, .message.bad .message__header, .message.error .message__header {
  border-color: #bf0000;
  background: #fff2f2;
  color: #bf0000;
}
.message.required .message__header svg, .message.validation .message__header svg, .message.alert .message__header svg, .message.bad .message__header svg, .message.error .message__header svg {
  fill: #bf0000;
}
.message.required .message__title, .message.validation .message__title, .message.alert .message__title, .message.bad .message__title, .message.error .message__title {
  color: #bf0000;
}
.message__title {
  font-size: 1rem;
  font-weight: 700;
}
.message__content {
  padding: 0.75rem 1rem;
}

.pagination {
  text-align: center;
  margin: 1rem 0 0;
}
@media screen and (min-width: 1024px) {
  .pagination {
    margin: 2rem 0 0;
  }
}
.pagination__prev, .pagination__next, .pagination__active, .pagination__page {
  font-weight: 700;
  padding: 0.7rem 1rem;
  display: inline-block;
  margin: 1rem 0.3rem;
  line-height: 1;
  font-family: "universe", system-ui, -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
@media screen and (min-width: 768px) {
  .pagination__prev, .pagination__next, .pagination__active, .pagination__page {
    margin: 0 0.3rem;
  }
}
.pagination__prev, .pagination__next, .pagination__active {
  color: #131313;
  background: #131313;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .pagination__prev:hover, .pagination__prev:focus, .pagination__next:hover, .pagination__next:focus, .pagination__active:hover, .pagination__active:focus {
    background: #212a53;
    color: #fff;
  }
}
.pagination__active {
  background: #ff671b;
}
@media screen and (min-width: 768px) {
  .pagination__active:hover, .pagination__active:focus {
    background: #212a53;
  }
  .pagination__page:hover, .pagination__page:focus {
    background: #212a53;
    color: #fdfdfd;
  }
}

.social {
  display: flex;
  align-items: center;
}
.social__item {
  margin: 0 0.25rem;
}
.social__link {
  display: block;
  padding: 0.5rem;
  color: #e6e6e6;
  border: solid 1px #e6e6e6;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .social__link:hover, .social__link:focus {
    color: #fff;
    background: #d42d25;
    transform: scale(1.1);
  }
}
.social__link svg {
  width: 1rem;
  height: 1rem;
  transition: color, background-color 0.2s ease-in-out;
}

table {
  width: 100%;
}
table th {
  background: #131313;
  color: #fff;
}
table th,
table td {
  border: 1px solid #131313;
  padding: 0.5rem;
}

.h1, h1, .h2, h2, .h3, h3, .h4, h4, .h5, h5, input[type=submit], .h6, h6 {
  text-transform: uppercase;
  color: #212a53;
}

.h1, h1 {
  font-size: 2rem;
}
@media screen and (min-width: 768px) {
  .h1, h1 {
    font-size: 3.5rem;
  }
}
@media screen and (min-width: 1024px) {
  .h1, h1 {
    font-size: 5.5rem;
  }
}
@media screen and (min-width: 1280px) {
  .h1, h1 {
    font-size: 7rem;
  }
}

.h2, h2 {
  font-size: 1.75rem;
}
@media screen and (min-width: 1024px) {
  .h2, h2 {
    font-size: 2.25rem;
  }
}
@media screen and (min-width: 1280px) {
  .h2, h2 {
    font-size: 2.8rem;
  }
}

.h3, h3 {
  font-size: 1rem;
}
@media screen and (min-width: 768px) {
  .h3, h3 {
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 1024px) {
  .h3, h3 {
    font-size: 2rem;
  }
}
@media screen and (min-width: 1280px) {
  .h3, h3 {
    font-size: 2.65rem;
  }
}

.h4, h4 {
  font-size: 1rem;
}
@media screen and (min-width: 768px) {
  .h4, h4 {
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 1280px) {
  .h4, h4 {
    font-size: 1.95rem;
  }
}

.h5, h5, input[type=submit] {
  font-size: 1.25rem;
}
@media screen and (min-width: 1024px) {
  .h5, h5, input[type=submit] {
    font-size: 1.5rem;
  }
}

.h6, h6 {
  font-size: 0.75rem;
}
@media screen and (min-width: 1024px) {
  .h6, h6 {
    font-size: 0.85rem;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "universe", system-ui, -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  line-height: 1.15;
  text-transform: uppercase;
}

p {
  line-height: 1.5;
}

.typo {
  width: 100%;
  color: inherit;
}
.typo * {
  margin: 1.25rem 0;
  color: #212a53;
}
.typo *:first-child:not(hr, ul) {
  margin-top: 0;
}
.typo *:last-child {
  margin-bottom: 0;
}
.typo br,
.typo span,
.typo strong {
  margin: 0;
}
.typo h1,
.typo h2,
.typo h3,
.typo h4,
.typo h5,
.typo h6 {
  font-family: "universe", system-ui, -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  line-height: 1.35;
  margin: 3.5rem 0 1.5rem;
  font-weight: 300;
}
.typo p {
  font-size: 1rem;
}
.typo a {
  color: inherit;
  word-wrap: break-word;
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .typo a:hover, .typo a:focus {
    text-decoration: none;
  }
}
.typo strong {
  font-weight: bold;
}
.typo blockquote {
  background: #f9f9f9;
  border-radius: 0.25rem;
  padding: 1.5rem;
  font-weight: 700;
}
.typo ul,
.typo ol {
  padding: 0 0 0 1rem;
  margin: 1.25rem 0;
  text-align: left;
}
.typo ul li,
.typo ol li {
  position: relative;
  line-height: 1.5;
  margin: 1rem 0;
}
.typo ul li h1,
.typo ul li h2,
.typo ul li h3,
.typo ul li h4,
.typo ul li h5,
.typo ul li h6,
.typo ol li h1,
.typo ol li h2,
.typo ol li h3,
.typo ol li h4,
.typo ol li h5,
.typo ol li h6 {
  margin-bottom: 0;
}
.typo ul {
  list-style-type: none;
  padding: 0 0 0 0.85rem;
}
.typo ul ul {
  list-style-type: "— ";
  padding: 0 0 0 1.75rem;
}
.typo ul ul li {
  margin: 0;
}
.typo ul ul li:before {
  content: "";
}
.typo ol {
  list-style-type: decimal;
}
.typo ol ol {
  list-style-type: lower-alpha;
  margin: 0;
}
.typo img {
  max-width: 100%;
  margin: 2rem 0;
}
.typo figure {
  margin: 2rem 0;
}
.typo hr {
  margin: 2rem 0 1rem;
}
.typo hr + h2 {
  margin-top: 1.5rem;
}

.video-wrapper {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  height: 0;
}
.video-wrapper__thumbnail {
  display: block;
  width: 100%;
  max-width: 100%;
  position: relative;
  z-index: 1;
}
.video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 80px;
  width: 80px;
  border: 4px solid #fdfdfd;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(19, 19, 19, 0.2);
  transition: background 0.3s ease-in-out;
  z-index: 2;
}
.play:hover, .play:focus {
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .play:hover, .play:focus {
    background: rgba(19, 19, 19, 0.3);
  }
  .play:hover::after, .play:focus::after {
    transform: scale(0.8);
  }
}
.play::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 0 15px 25px;
  border-color: transparent transparent transparent #fdfdfd;
  margin: 0 0 0 0.5rem;
  transition: all 0.2s ease-in-out;
}

/*! purgecss end ignore */
/**
 * This injects any component classes registered by Tailwind plugins.
 */
.container{
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.5rem;
  padding-left: 1.5rem;
}
@media (min-width: 640px){
  .container{
    max-width: 640px;
  }
}
@media (min-width: 768px){
  .container{
    max-width: 768px;
  }
}
@media (min-width: 1024px){
  .container{
    max-width: 1024px;
  }
}
@media (min-width: 1280px){
  .container{
    max-width: 1280px;
  }
}
@media (min-width: 1536px){
  .container{
    max-width: 1536px;
  }
}
.accordion {
  color: #212a53;
}
.accordion__item {
  border-bottom: 1px solid #d42d25;
}
.accordion__title {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  text-transform: uppercase;
  position: relative;
  padding: 1rem 1rem 1rem 3.5rem;
}
@media screen and (min-width: 768px) {
  .accordion__title {
    font-size: 1.5rem;
  }
}
.accordion__title::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  height: 2rem;
  width: 2rem;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 25"><g fill="none" stroke="%23d42d25" data-name="Group 6"><path d="M13 0v25" data-name="Line 38"/><path d="M0 13h25" data-name="Line 39"/></g></svg>') no-repeat center center;
  background-size: 2rem;
}
.accordion__title.is-active::before {
  content: "";
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 1"><path fill="none" stroke="%23d42d25" d="M0 .5h25" data-name="Line 39"/></svg>') no-repeat center center;
}
@media screen and (min-width: 768px) {
  .accordion__title:hover, .accordion__title:focus {
    cursor: pointer;
  }
}
.accordion__content {
  height: 0;
  visibility: hidden;
  overflow: hidden;
}
.accordion__content.is-active {
  visibility: visible;
  height: auto;
  padding: 0 0 2rem 3.5rem;
}
.accordion__content a {
  font-weight: 600;
  text-decoration: underline;
}

summary::-webkit-details-marker,
summary::marker {
  display: none;
  content: "";
}

.banner {
  padding: 4rem 0;
}
@media screen and (min-width: 768px) {
  .banner {
    padding: 6rem 0;
  }
}

.card-slider::after {
  content: "flickity";
  display: none;
}
@media screen and (min-width: 768px) {
  .card-slider::after {
    content: "";
  }
}

.card{
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  display: block;
  border-radius: 0.25rem;
  overflow: hidden;
}
.card__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  background: #fff;
  padding: 2rem;
}

.dropdown__trigger {
  font-size: 1rem;
  font-weight: 700;
  display: block;
  background: #131313;
  color: #fff;
  padding: 1rem 1.5rem;
  border-radius: 0.25rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .dropdown__trigger {
    display: none;
  }
}
.dropdown__content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-in-out;
}
.is-active .dropdown__content {
  max-height: 1000px;
  overflow: visible;
}
@media screen and (min-width: 768px) {
  .dropdown__content {
    max-height: 100%;
  }
}

.event-banner{
  --tw-text-opacity: 1;
  color: rgb(var(--color-primary) / var(--tw-text-opacity));
}
.event-banner__title h2{
  margin-bottom: 1.5rem;
  font-weight: 700;
  font-size: 28px;
}
.event-banner__description{
  margin-bottom: 66px;
}
.event-banner__description p{
  margin-bottom: 1.5rem;
}
.event-banner ul{
  list-style-type: disc;
}
.event-banner li{
  margin-left: 1.25rem;
  margin-bottom: 1.25rem;
  border-bottom-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(212 45 37 / var(--tw-border-opacity));
  padding-bottom: 1.25rem;
  line-height: 1.4;
  font-weight: 400;
}
.event-banner li:last-child{
  margin-bottom: 0px;
  border-width: 0px;
  padding-bottom: 0px;
}
.event-banner li::marker{
  --tw-text-opacity: 1;
  color: rgb(212 45 37 / var(--tw-text-opacity));
}
.event-banner .btn{
  font-weight: 700;
}
.event-banner__eligibility{
  margin-bottom: 2rem;
}
.event-banner__card__content{
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-primary) / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.event-banner__card__content__wrapper{
  padding-left: 1.75rem;
  padding-right: 1.75rem;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
.event-banner__card__image__holder{
  height: 177px;
}
.event-banner__card__image__holder img{
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center;
}
@media (min-width: 768px) {
  .event-banner__wrapper{
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    display: flex;
    justify-content: space-between;
  }
  .event-banner__eligibility{
    margin-bottom: 0px;
  }
  .event-banner__card{
    width: 50%;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .event-banner__card__content__wrapper{
    padding-left: 69px;
    padding-right: 69px;
    padding-top: 69px;
    padding-bottom: 60px;
  }
  .event-banner__content{
    width: 50%;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}
@media (min-width: 1024px) {
  .event-banner__card{
    width: 43%;
  }
  .event-banner__content{
    width: 43%;
  }
}

.hero__general{
  min-height: 680px;
}
.hero__general h1 .h3, .hero__general h1 h3 {
  font-size: 28px;
}
.hero__arrow:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: auto;
  right: 46%;
  transform: translateX(-50%) translateY(-100%);
  width: 0.1rem;
  height: 25rem;
  background: #fff;
}
@media screen and (min-width: 1280px) {
  .hero__arrow:after {
    height: 30rem;
  }
}
.hero__arrow .icon-arrow {
  animation: scrollDown 1.5s infinite;
}

@keyframes scrollDown {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(25%);
  }
  100% {
    transform: translateY(0);
  }
}
.hotspots__marker {
  position: absolute;
  padding: 0.5rem;
  height: 1.5rem;
  width: 1.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 46%;
  left: 24%;
  background: #d42d25;
  border-radius: 50%;
}
@media screen and (min-width: 768px) {
  .hotspots__marker {
    left: 25%;
  }
}
@media screen and (min-width: 1024px) {
  .hotspots__marker {
    left: 27.5%;
    top: 47%;
  }
}
.hotspots__marker:before {
  content: "";
  display: block;
  width: 4rem;
  height: 4rem;
  min-width: 4rem;
  min-height: 4rem;
  box-sizing: border-box;
  border-radius: 50%;
  background: #d42d25;
  animation: pulse-ring 1.5s ease-in-out infinite both;
}

@keyframes pulse-ring {
  from {
    transform: scale(0);
    opacity: 1;
    animation-timing-function: ease-out;
  }
  100% {
    transform: scale(1);
    opacity: 0;
    animation-timing-function: ease-out;
  }
}
.image-banner {
  position: relative;
}
.image-banner__img {
  width: 100%;
}
.image-banner__content {
  padding: 3rem 0;
}
@media screen and (min-width: 768px) {
  .image-banner__content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(19, 19, 19, 0.5);
    color: #fff;
    padding: 3rem;
  }
}

.imageContent__title h2{
  margin-bottom: 1rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(212 45 37 / var(--tw-text-opacity));
  font-size: 28px;
}
.imageContent__alter .imageContent__title h2{
  --tw-text-opacity: 1;
  color: rgb(var(--color-primary) / var(--tw-text-opacity));
  font-size: 28px;
}
.imageContent__content{
  margin-bottom: 1.75rem;
}
.imageContent__content p{
  margin-bottom: 1.75rem;
  --tw-text-opacity: 1;
  color: rgb(var(--color-primary) / var(--tw-text-opacity));
}
@media (min-width: 768px) {
  .imageContent__title h2{
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
  .imageContent__wrapper{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }
  .imageContent__content{
    margin-bottom: 0px;
    width: 42%;
  }
  .imageContent__image{
    width: 50%;
  }
  .imageContent__image img{
    min-height: 391px;
  }
  .imageContent__alter .imageContent__image img{
    min-height: 530px;
  }
}

.intro-block{
  --tw-bg-opacity: 1;
  background-color: rgb(212 45 37 / var(--tw-bg-opacity));
}
.intro-block h5{
  max-width: 749px;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  font-size: 16px;
}
@media (min-width: 768px) {
  .intro-block h5 {
    font-size: 32px;
  }
}

/**************************  \
  Basic Modal Styles
\  **************************/
.modal {
  font-family: -apple-system, BlinkMacSystemFont, "avenir next", avenir, "helvetica neue", helvetica, ubuntu, roboto, noto, "segoe ui", arial, sans-serif;
  display: none;
}

.modal.is-open {
  display: block;
  z-index: 10;
}

.modal__overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  display: flex;
  justify-content: center;
  align-items: center;
}

.modal__container {
  background-color: #fff;
  padding: 30px;
  max-width: 850px;
  max-height: 100vh;
  border-radius: 4px;
  overflow-y: auto;
  box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  .modal__container {
    max-width: 75vw;
  }
}

.modal__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.modal__title {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.25rem;
  line-height: 1.25;
  color: #131313;
  box-sizing: border-box;
}

.modal__close {
  background: transparent;
  border: 0;
}

.modal__header .modal__close::before {
  content: "✕";
}

.modal__content {
  margin-top: 2rem;
  line-height: 1.5;
  color: rgba(0, 0, 0, 0.8);
}
@media screen and (min-width: 768px) {
  .modal__content {
    min-width: 500px;
  }
}
@media screen and (min-width: 1024px) {
  .modal__content {
    min-width: 700px;
  }
}
@media screen and (min-width: 1280px) {
  .modal__content {
    min-width: 900px;
  }
}
.modal__content .embed {
  width: 100% !important;
}
.modal__content .embed iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}

.modal__btn {
  font-size: 0.875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  background-color: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  border-radius: 0.25rem;
  border-style: none;
  border-width: 0;
  cursor: pointer;
  -webkit-appearance: button;
          appearance: button;
  text-transform: none;
  overflow: visible;
  line-height: 1.15;
  margin: 0;
  will-change: transform;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transform: translateZ(0);
  transition: transform 0.25s ease-out;
}

.modal__btn:focus,
.modal__btn:hover {
  transform: scale(1.05);
}

.modal__btn-primary {
  background-color: #00449e;
  color: #fff;
}

/**************************  \
  Demo Animation Style
\  **************************/
@keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes mmslideIn {
  from {
    transform: translateY(15%);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes mmslideOut {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-10%);
  }
}
.micromodal-slide {
  display: none;
}

.micromodal-slide.is-open {
  display: block;
}

.micromodal-slide[aria-hidden=false] .modal__overlay {
  animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=false] .modal__container {
  animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=true] .modal__overlay {
  animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=true] .modal__container {
  animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide .modal__container,
.micromodal-slide .modal__overlay {
  will-change: transform;
}

.quote-banner__image{
  position: absolute;
  height: 100%;
  width: 100%;
  z-index: -2;
}
.quote-banner__image img{
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: top;
}
.quote-banner__wrapper{
  position: relative;
}
.quote-banner__content{
  padding: 5rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  background: rgba(33, 42, 83, 0.66);
}
.quote-banner__content h2{
  border-bottom-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(212 45 37 / var(--tw-border-opacity));
  padding-bottom: 1.25rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.quote-banner__detail{
  margin-left: -0.25rem;
  margin-right: -0.25rem;
  display: flex;
  padding-top: 1.25rem;
}
.quote-banner__detail p{
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}
@media (min-width: 1024px) {
  .quote-banner__content{
    margin-left: auto;
    width: 42%;
    padding-top: 100px;
    padding-bottom: 100px;
    padding-left: 85px;
    padding-right: 121px;
  }
  .quote-banner__content h2{
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
    font-size: 34px;
  }
}
@media (min-width: 1280px) {
  .quote-banner__content{
    padding-top: 130px;
    padding-bottom: 130px;
  }
  .quote-banner__content h2 {
    font-size: 40px;
  }
}
@media (min-width: 1536px) {
  .quote-banner__content{
    padding-top: 160px;
    padding-bottom: 160px;
  }
}

.slider-banner__item {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .slider-banner__item {
    height: 500px;
  }
}
.slider-banner__img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .slider-banner__img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}
.slider-banner__content {
  padding: 3rem 0 5rem;
}
@media screen and (min-width: 768px) {
  .slider-banner__content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(19, 19, 19, 0.5);
    color: #fff;
    padding: 3rem;
  }
}

.flickity-page-dots {
  bottom: 2rem;
}
.flickity-page-dot {
  width: 15px;
  height: 15px;
  border: 1px solid #131313;
}
.flickity-page-dot.is-selected {
  background: #131313;
}
@media screen and (min-width: 768px) {
  .flickity-page-dot.is-selected {
    background: #fff;
  }
  .flickity-page-dot {
    background: transparent;
    border: 1px solid #fff;
  }
}
.flickity-prev-next-button {
  display: none;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .flickity-prev-next-button {
    display: block;
  }
  .flickity-prev-next-button:hover, .flickity-prev-next-button:focus {
    background: transparent;
    border: 2px solid #fff;
  }
}

.sponsors-block{
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-primary) / var(--tw-bg-opacity));
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  font-weight: 700;
}
.sponsors-block__title, .sponsors-block__sub{
  margin-left: auto;
  margin-right: auto;
  max-width: 713px;
  text-align: center;
}
.sponsors-block__title{
  margin-bottom: 0.5rem;
}
.sponsors-block__sub{
  margin-bottom: 2.5rem;
}
.sponsors-block__sub p{
  font-weight: 500;
}
.sponsors-block__sponsor{
  margin-bottom: 5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.sponsors-block__sponsor__image{
  margin-bottom: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  width: 154px;
  height: 154px;
}
.sponsors-block__company{
  margin-bottom: 0.25rem;
  font-weight: 700;
  font-size: 14px;
}
.sponsors-block__level {
  font-size: 12px;
}
.sponsors-block__company, .sponsors-block__level{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
@media (min-width: 768px) {
  .sponsors-block{
    padding-top: 115px;
    padding-bottom: 3rem;
  }
  .sponsors-block h2 {
    font-size: 40px;
  }
  .sponsors-block__sub{
    margin-bottom: 77px;
  }
  .sponsors-block__sponsors{
    margin-left: -0.5rem;
    margin-right: -0.5rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .sponsors-block__sponsor{
    width: 33.333333%;
  }
}
@media (min-width: 1024px) {
  .sponsors-block__sponsor{
    width: 25%;
  }
}

.tabs__trigger.is-active {
  font-size: 1rem;
  font-weight: 700;
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .tabs__trigger:hover, .tabs__trigger:focus {
    text-decoration: underline;
  }
}
.tabs__content{
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  background: #fff;
  padding: 1rem 1.5rem;
  border-radius: 0.25rem;
}

.video-banner__video{
  position: relative;
}
.video-banner__video img{
  width: 100%;
  object-fit: cover;
  object-position: center;
}
.video-banner__video span{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.video-banner__thumb{
  position: relative;
  width: 100%;
  overflow: hidden;
  padding-top: 56.25%;
}
.video-banner__thumb__inner{
  position: absolute;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
}
.video-banner__thumb__inner img{
  display: block;
  height: 100%;
  width: 100%;
}

.footer-wrapper {
  background: #212a53;
  color: #fff;
  padding: 2rem 0;
}

.copyright__left {
  filter: brightness(80%);
}

.header {
  display: grid;
}
.header-wrapper {
  position: relative;
  background: #131313;
  color: #fff;
}
.header--1 {
  grid-template-areas: "logo nav-btn" "nav nav" "aside aside";
  align-items: center;
}
@media screen and (min-width: 768px) {
  .header--1 {
    grid-template-areas: "logo nav aside";
    grid-template-columns: auto 1fr;
    grid-gap: 2.5rem;
  }
}
.header--2 {
  grid-template-areas: "nav-btn logo aside" "nav nav nav";
  align-items: center;
}
@media screen and (min-width: 768px) {
  .header--2 {
    grid-template-areas: "logo nav aside";
    grid-template-columns: 1fr 10fr 1fr;
  }
}
.header--2 .nav-btn {
  justify-self: left;
  padding: 0.75rem;
}
.header--2 .nav-btn svg {
  margin: 0;
}
.header--2 .nav-btn__text{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.header--2 .logo {
  text-align: center;
}
.header--2 .header-sidebar {
  display: block;
  margin: 0;
  justify-self: right;
}
.header .logo {
  grid-area: logo;
  width: auto;
  padding: 1.5rem 0;
}
@media screen and (min-width: 768px) {
  .header .logo {
    padding: 0;
  }
}
.header .logo h1 {
  font-size: 1.8rem;
  font-weight: 700;
  text-transform: uppercase;
}
.header-sidebar {
  grid-area: aside;
  display: none;
  margin: 1.5rem 0 0;
}
.header-sidebar.is-active {
  display: block;
}
@media screen and (min-width: 768px) {
  .header-sidebar {
    display: block;
    margin: 0;
  }
}

.nav-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
@media screen and (min-width: 768px) {
  .nav-list {
    gap: 1rem;
  }
}
.nav-list__item {
  position: relative;
}
.nav-list__link {
  font-size: 1rem;
  display: block;
  padding: 0.75rem 0.25rem 0.25rem 0;
  font-family: "universe", system-ui, -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  color: #fff;
}
.nav-list__link:after {
  content: "";
  height: 0.1rem;
  background: #d42d25;
  width: 1.5rem;
  position: absolute;
  top: 0;
  left: 0;
}
.nav-list__link.active{
  --tw-text-opacity: 1;
  color: rgb(212 45 37 / var(--tw-text-opacity));
}
@media screen and (min-width: 768px) {
  .nav-list__link {
    font-size: 1.5rem;
    padding: 0.75rem 0.25rem 0.25rem 0;
  }
  .nav-list__link:after {
    width: 1.75rem;
  }
}
@media screen and (min-width: 1024px) {
  .nav-list__link {
    font-size: 1.25rem;
  }
  .nav-list__link:after {
    width: 2.25rem;
  }
}
@media screen and (min-width: 1536px) {
  .nav-list__link {
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 768px) {
  .nav-list__link:hover, .nav-list__link:focus{
    --tw-text-opacity: 1;
    color: rgb(212 45 37 / var(--tw-text-opacity));
  }
}

.news-detail{
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
.news-detail h2{
  margin-bottom: 1.75rem;
  text-align: center;
  font-weight: 700;
  text-transform: none;
  font-family: "proxima-nova", system-ui, -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 40px;
}
.news-detail__image{
  margin-bottom: 2rem;
}
.news-detail__image img{
  width: 100%;
}
.news-detail__wrapper{
  margin-left: auto;
  margin-right: auto;
  max-width: 664px;
}
.news-detail__content p, .news-detail__content ul{
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5rem;
  max-width: 494px;
  --tw-text-opacity: 1;
  color: rgb(var(--color-primary) / var(--tw-text-opacity));
  font-size: 16px;
  line-height: 1.5;
  font-weight: 400;
}
.news-detail__content p img, .news-detail__content ul img{
  width: 100%;
}
.news-detail__content ul{
  padding-left: 2.5rem;
  list-style: disc;
}
.news-detail__content li{
  margin-bottom: 1.25rem;
}
.news-detail__content p:has(> img){
  margin-bottom: 3rem;
  max-width: 694px;
}
.news-detail__content h1, .news-detail__content h2, .news-detail__content h3, .news-detail__content h4, .news-detail__content h5, .news-detail__content h6{
  margin-left: auto;
  margin-right: auto;
  max-width: 494px;
  font-size: 14px;
  font-family: "proxima-nova", system-ui, -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-weight: 500;
}
.news-detail__content .embed {
  width: 100% !important;
}
.news-detail__content .embed iframe{
  margin-top: 3rem;
  margin-bottom: 3rem;
  width: 100% !important;
}
.news-detail__content .embed img{
  margin-top: 3rem;
  margin-bottom: 3rem;
  width: 100%;
}
.news-detail__date{
  margin-bottom: 2.75rem;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.news-detail__links{
  margin-left: auto;
  margin-right: auto;
  max-width: 494px;
  border-top-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-primary) / var(--tw-border-opacity));
  padding-top: 1.5rem;
}
.news-detail__links__wrapper{
  margin-left: -0.75rem;
  margin-right: -0.75rem;
  display: flex;
}
.news-detail__links__holder{
  margin-left: auto;
  margin-right: auto;
  max-width: 494px;
}
.news-detail__links__left, .news-detail__links__right{
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}
.news-detail__links__right{
  margin-left: -0.5rem;
  margin-right: -0.5rem;
  display: flex;
}
.news-detail__links__right .news-detail__link{
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.news-detail__link a{
  font-weight: 700;
  font-size: 14px;
}
@media (min-width: 768px) {
  .news-detail{
    padding-top: 90px;
  }
  .news-detail__image{
    margin-bottom: 72px;
  }
}
@media (min-width: 1280px) {
  .news-detail p{
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1.5rem;
    max-width: 494px;
  }
}

.newsCard:hover .newsCard__btn{
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
}
.newsCard__list{
  padding-top: 60px;
}
.newsCard img{
  height: 240px;
  width: 100%;
  object-fit: cover;
  object-position: center;
}
.newsCard__content{
  padding-top: 1.75rem;
  padding-bottom: 1.75rem;
}
.newsCard__content p{
  margin-bottom: 1.5rem;
  font-weight: 500;
  font-size: 22px;
}
.newsCard__date{
  margin-bottom: 0.75rem;
  display: flex;
  max-width: 100px;
  align-items: center;
  justify-content: center;
  --tw-bg-opacity: 1;
  background-color: rgb(212 45 37 / var(--tw-bg-opacity));
  padding: 0.5rem;
  text-transform: uppercase;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  font-size: 14px;
  font-family: "universe", system-ui, -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
.newsCard__btn{
  font-weight: 700;
  font-size: 14px;
}
@media (min-width: 768px) {
  .newsCard__list{
    margin-left: -0.5rem;
    margin-right: -0.5rem;
    display: flex;
    flex-wrap: wrap;
    padding-top: 110px;
  }
  .newsCard__list li{
    margin-bottom: 2.5rem;
    width: 33.333333%;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .newsCard__list li:nth-last-child(-n+3) {
    margin-bottom: 0;
  }
  .newsCard__wrapper{
    display: flex;
    flex-direction: column;
  }
}

.page {
  margin: 2rem 0;
}
@media screen and (min-width: 768px) {
  .page {
    margin: 4rem 0;
  }
}

/**
 * This injects all of Tailwind's utility classes, generated based on your
 * config file.
 */
.sr-only{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.absolute{
  position: absolute;
}
.relative{
  position: relative;
}
.top-0{
  top: 0px;
}
.right-0{
  right: 0px;
}
.left-0{
  left: 0px;
}
.row-span-1{
  grid-row: span 1 / span 1;
}
.mx-auto{
  margin-left: auto;
  margin-right: auto;
}
.mb-4{
  margin-bottom: 1rem;
}
.mb-6{
  margin-bottom: 1.5rem;
}
.mt-4{
  margin-top: 1rem;
}
.mt-8{
  margin-top: 2rem;
}
.mb-8{
  margin-bottom: 2rem;
}
.mb-12{
  margin-bottom: 3rem;
}
.mt-10{
  margin-top: 2.5rem;
}
.mt-5{
  margin-top: 1.25rem;
}
.mt-6{
  margin-top: 1.5rem;
}
.mb-9{
  margin-bottom: 2.25rem;
}
.inline{
  display: inline;
}
.flex{
  display: flex;
}
.inline-flex{
  display: inline-flex;
}
.grid{
  display: grid;
}
.hidden{
  display: none;
}
.aspect-\[16\/9\]{
  aspect-ratio: 16/9;
}
.h-48{
  height: 12rem;
}
.h-full{
  height: 100%;
}
.h-6{
  height: 1.5rem;
}
.h-32{
  height: 8rem;
}
.h-auto{
  height: auto;
}
.w-full{
  width: 100%;
}
.w-48{
  width: 12rem;
}
.w-1\/3{
  width: 33.333333%;
}
.w-6{
  width: 1.5rem;
}
.w-32{
  width: 8rem;
}
.w-80{
  width: 20rem;
}
.transform{
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.resize{
  resize: both;
}
.grid-cols-2{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.grid-rows-2{
  grid-template-rows: repeat(2, minmax(0, 1fr));
}
.grid-rows-1{
  grid-template-rows: repeat(1, minmax(0, 1fr));
}
.flex-col{
  flex-direction: column;
}
.items-start{
  align-items: flex-start;
}
.items-center{
  align-items: center;
}
.justify-end{
  justify-content: flex-end;
}
.justify-center{
  justify-content: center;
}
.gap-12{
  gap: 3rem;
}
.gap-8{
  gap: 2rem;
}
.divide-y > :not([hidden]) ~ :not([hidden]){
  --tw-divide-y-reverse: 0;
  border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
}
.divide-primary > :not([hidden]) ~ :not([hidden]){
  --tw-divide-opacity: 1;
  border-color: rgb(var(--color-primary) / var(--tw-divide-opacity));
}
.overflow-hidden{
  overflow: hidden;
}
.rounded{
  border-radius: 0.25rem;
}
.border-2{
  border-width: 2px;
}
.border-b-0{
  border-bottom-width: 0px;
}
.border-l-0{
  border-left-width: 0px;
}
.border-l-2{
  border-left-width: 2px;
}
.border-b-2{
  border-bottom-width: 2px;
}
.border-primary{
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-primary) / var(--tw-border-opacity));
}
.border-secondary{
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-secondary) / var(--tw-border-opacity));
}
.bg-secondary{
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-secondary) / var(--tw-bg-opacity));
}
.bg-white{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.bg-primary{
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-primary) / var(--tw-bg-opacity));
}
.bg-red{
  --tw-bg-opacity: 1;
  background-color: rgb(212 45 37 / var(--tw-bg-opacity));
}
.bg-cover{
  background-size: cover;
}
.bg-center{
  background-position: center;
}
.bg-no-repeat{
  background-repeat: no-repeat;
}
.object-contain{
  object-fit: contain;
}
.p-8{
  padding: 2rem;
}
.p-4{
  padding: 1rem;
}
.p-1{
  padding: 0.25rem;
}
.p-12{
  padding: 3rem;
}
.p-2{
  padding: 0.5rem;
}
.py-20{
  padding-top: 5rem;
  padding-bottom: 5rem;
}
.px-3{
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}
.py-1{
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
.px-2{
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.pr-8{
  padding-right: 2rem;
}
.pt-8{
  padding-top: 2rem;
}
.pb-12{
  padding-bottom: 3rem;
}
.pt-12{
  padding-top: 3rem;
}
.pt-10{
  padding-top: 2.5rem;
}
.pb-16{
  padding-bottom: 4rem;
}
.pl-8{
  padding-left: 2rem;
}
.pb-10{
  padding-bottom: 2.5rem;
}
.pt-2{
  padding-top: 0.5rem;
}
.pb-2{
  padding-bottom: 0.5rem;
}
.text-left{
  text-align: left;
}
.text-center{
  text-align: center;
}
.text-5xl{
  font-size: 3rem;
  line-height: 1;
}
.text-\[\.64rem\]{
  font-size: .64rem;
}
.font-bold{
  font-weight: 700;
}
.uppercase{
  text-transform: uppercase;
}
.normal-case{
  text-transform: none;
}
.text-secondary{
  --tw-text-opacity: 1;
  color: rgb(var(--color-secondary) / var(--tw-text-opacity));
}
.text-primary{
  --tw-text-opacity: 1;
  color: rgb(var(--color-primary) / var(--tw-text-opacity));
}
.text-white{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.shadow-lg{
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow{
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.filter{
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
@media (min-width: 768px){
  .md\:absolute{
    position: absolute;
  }
  .md\:left-0{
    left: 0px;
  }
  .md\:top-\[50\%\]{
    top: 50%;
  }
  .md\:order-last{
    order: 9999;
  }
  .md\:mx-auto{
    margin-left: auto;
    margin-right: auto;
  }
  .md\:mb-8{
    margin-bottom: 2rem;
  }
  .md\:mb-14{
    margin-bottom: 3.5rem;
  }
  .md\:mb-0{
    margin-bottom: 0px;
  }
  .md\:mt-12{
    margin-top: 3rem;
  }
  .md\:ml-auto{
    margin-left: auto;
  }
  .md\:flex{
    display: flex;
  }
  .md\:h-52{
    height: 13rem;
  }
  .md\:w-4\/5{
    width: 80%;
  }
  .md\:w-2\/3{
    width: 66.666667%;
  }
  .md\:w-52{
    width: 13rem;
  }
  .md\:w-96{
    width: 24rem;
  }
  .md\:max-w-lg{
    max-width: 32rem;
  }
  .md\:max-w-5xl{
    max-width: 64rem;
  }
  .md\:max-w-2xl{
    max-width: 42rem;
  }
  .md\:translate-y-\[-50\%\]{
    --tw-translate-y: -50%;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
  .md\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .md\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .md\:items-center{
    align-items: center;
  }
  .md\:justify-between{
    justify-content: space-between;
  }
  .md\:gap-12{
    gap: 3rem;
  }
  .md\:bg-contain{
    background-size: contain;
  }
  .md\:bg-cover{
    background-size: cover;
  }
  .md\:bg-right{
    background-position: right;
  }
  .md\:p-16{
    padding: 4rem;
  }
  .md\:py-28{
    padding-top: 7rem;
    padding-bottom: 7rem;
  }
  .md\:pl-14{
    padding-left: 3.5rem;
  }
  .md\:pb-20{
    padding-bottom: 5rem;
  }
  .md\:text-4xl{
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}
@media (min-width: 1024px){
  .lg\:absolute{
    position: absolute;
  }
  .lg\:relative{
    position: relative;
  }
  .lg\:right-\[1px\]{
    right: 1px;
  }
  .lg\:-bottom-6{
    bottom: -1.5rem;
  }
  .lg\:right-0{
    right: 0px;
  }
  .lg\:top-\[50\%\]{
    top: 50%;
  }
  .lg\:row-span-1{
    grid-row: span 1 / span 1;
  }
  .lg\:mb-12{
    margin-bottom: 3rem;
  }
  .lg\:ml-auto{
    margin-left: auto;
  }
  .lg\:mb-8{
    margin-bottom: 2rem;
  }
  .lg\:mb-0{
    margin-bottom: 0px;
  }
  .lg\:ml-12{
    margin-left: 3rem;
  }
  .lg\:mt-6{
    margin-top: 1.5rem;
  }
  .lg\:block{
    display: block;
  }
  .lg\:h-12{
    height: 3rem;
  }
  .lg\:h-64{
    height: 16rem;
  }
  .lg\:w-4\/5{
    width: 80%;
  }
  .lg\:w-12{
    width: 3rem;
  }
  .lg\:w-1\/2{
    width: 50%;
  }
  .lg\:w-64{
    width: 16rem;
  }
  .lg\:w-5\/6{
    width: 83.333333%;
  }
  .lg\:w-2\/5{
    width: 40%;
  }
  .lg\:translate-y-\[-50\%\]{
    --tw-translate-y: -50%;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
  .lg\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .lg\:grid-cols-4{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .lg\:divide-y-0 > :not([hidden]) ~ :not([hidden]){
    --tw-divide-y-reverse: 0;
    border-top-width: calc(0px * calc(1 - var(--tw-divide-y-reverse)));
    border-bottom-width: calc(0px * var(--tw-divide-y-reverse));
  }
  .lg\:divide-x > :not([hidden]) ~ :not([hidden]){
    --tw-divide-x-reverse: 0;
    border-right-width: calc(1px * var(--tw-divide-x-reverse));
    border-left-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
  }
  .lg\:border-2{
    border-width: 2px;
  }
  .lg\:border-b-0{
    border-bottom-width: 0px;
  }
  .lg\:border-l-0{
    border-left-width: 0px;
  }
  .lg\:border-primary{
    --tw-border-opacity: 1;
    border-color: rgb(var(--color-primary) / var(--tw-border-opacity));
  }
  .lg\:border-r-white{
    --tw-border-opacity: 1;
    border-right-color: rgb(255 255 255 / var(--tw-border-opacity));
  }
  .lg\:bg-primary{
    --tw-bg-opacity: 1;
    background-color: rgb(var(--color-primary) / var(--tw-bg-opacity));
  }
  .lg\:bg-secondary{
    --tw-bg-opacity: 1;
    background-color: rgb(var(--color-secondary) / var(--tw-bg-opacity));
  }
  .lg\:p-8{
    padding: 2rem;
  }
  .lg\:p-3{
    padding: 0.75rem;
  }
  .lg\:p-20{
    padding: 5rem;
  }
  .lg\:pl-20{
    padding-left: 5rem;
  }
  .lg\:pr-12{
    padding-right: 3rem;
  }
  .lg\:pt-12{
    padding-top: 3rem;
  }
  .lg\:pb-0{
    padding-bottom: 0px;
  }
  .lg\:pt-0{
    padding-top: 0px;
  }
  .lg\:pl-12{
    padding-left: 3rem;
  }
  .lg\:pb-12{
    padding-bottom: 3rem;
  }
  .lg\:text-lg{
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
  .lg\:text-6xl{
    font-size: 3.75rem;
    line-height: 1;
  }
}
@media (min-width: 1280px){
  .xl\:w-1\/2{
    width: 50%;
  }
  .xl\:max-w-screen-xl{
    max-width: 1280px;
  }
  .xl\:max-w-6xl{
    max-width: 72rem;
  }
  .xl\:max-w-5xl{
    max-width: 64rem;
  }
  .xl\:gap-16{
    gap: 4rem;
  }
}
@media (min-width: 1536px){
  .\32xl\:relative{
    position: relative;
  }
  .\32xl\:-left-20{
    left: -5rem;
  }
  .\32xl\:pb-28{
    padding-bottom: 7rem;
  }
}