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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


/*
 * Description for mobiles
 * something like facebook does the description
 * for the photos
*/

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

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

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

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

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

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

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

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

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

.greset {
  transition: all 0.3s ease;
}

.gabsolute {
  position: absolute;
}

.grelative {
  position: relative;
}

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

.glightbox-open {
  overflow: hidden;
}

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

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

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

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

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

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

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

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

iframe.wait-autoplay {
  opacity: 0;
}

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


/*Skin */

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

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

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

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

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

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

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

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

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

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

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

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


/*CSS Animations*/

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

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

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

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

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

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

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

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

@-webkit-keyframes lightboxLoader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes lightboxLoader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@-webkit-keyframes gfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

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

@-webkit-keyframes gfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

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

@-webkit-keyframes gslideInLeft {
  from {
    opacity: 0;
    transform: translate3d(-60%, 0, 0);
  }
  to {
    visibility: visible;
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes gslideInLeft {
  from {
    opacity: 0;
    transform: translate3d(-60%, 0, 0);
  }
  to {
    visibility: visible;
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@-webkit-keyframes gslideOutLeft {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-60%, 0, 0);
    opacity: 0;
    visibility: hidden;
  }
}

@keyframes gslideOutLeft {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-60%, 0, 0);
    opacity: 0;
    visibility: hidden;
  }
}

@-webkit-keyframes gslideInRight {
  from {
    opacity: 0;
    visibility: visible;
    transform: translate3d(60%, 0, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes gslideInRight {
  from {
    opacity: 0;
    visibility: visible;
    transform: translate3d(60%, 0, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@-webkit-keyframes gslideOutRight {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(60%, 0, 0);
    opacity: 0;
  }
}

@keyframes gslideOutRight {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(60%, 0, 0);
    opacity: 0;
  }
}

@-webkit-keyframes gzoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 1;
  }
}

@keyframes gzoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 1;
  }
}

@-webkit-keyframes gzoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}

@keyframes gzoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}

@media (min-width: 769px) {
  .glightbox-container .ginner-container {
    width: auto;
    height: auto;
    flex-direction: row;
  }
  .glightbox-container .ginner-container.desc-top .gslide-description {
    order: 0;
  }
  .glightbox-container .ginner-container.desc-top .gslide-image,
                .glightbox-container .ginner-container.desc-top .gslide-image img {
    order: 1;
  }
  .glightbox-container .ginner-container.desc-left .gslide-description {
    order: 0;
  }
  .glightbox-container .ginner-container.desc-left .gslide-image {
    order: 1;
  }
  .gslide-image img {
    max-height: 97vh;
    max-width: 100%;
  }
  .gslide-image img.zoomable {
    cursor: zoom-in;
  }
  .zoomed .gslide-image img.zoomable {
    cursor: -webkit-grab;
    cursor: grab;
  }
  .gslide-inline {
    max-height: 95vh;
  }
  .gslide-external {
    max-height: 100vh;
  }
  .gslide-description.description-left,
    .gslide-description.description-right {
    max-width: 275px;
  }
  .glightbox-open {
    height: auto;
  }
  .goverlay {
    background: rgba(0, 0, 0, 0.92);
  }
  .glightbox-clean .gslide-media {
    box-shadow: 1px 2px 9px 0px rgba(0, 0, 0, 0.65);
  }
  .glightbox-clean .description-left .gdesc-inner,
.glightbox-clean .description-right .gdesc-inner {
    position: absolute;
    height: 100%;
    overflow-y: auto;
  }
  .glightbox-clean .gprev,
    .glightbox-clean .gnext,
    .glightbox-clean .gclose {
    background-color: rgba(0, 0, 0, 0.32);
  }
  .glightbox-clean .gprev:hover,
.glightbox-clean .gnext:hover,
.glightbox-clean .gclose:hover {
    background-color: rgba(0, 0, 0, 0.7);
  }
  .glightbox-clean .gprev {
    top: 45%;
  }
  .glightbox-clean .gnext {
    top: 45%;
  }
}

@media (min-width: 992px) {
  .glightbox-clean .gclose {
    opacity: 0.7;
    right: 20px;
  }
}

@media screen and (max-height: 420px) {
  .goverlay {
    background: #000;
  }
}

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

/**
 * 1. Add border box sizing in all browsers (opinionated).
 * 2. Backgrounds do not repeat by default (opinionated).
 */

*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  background-repeat: no-repeat; /* 2 */
}

/**
 * 1. Add text decoration inheritance in all browsers (opinionated).
 * 2. Add vertical alignment inheritance in all browsers (opinionated).
 */

::before,
::after {
  text-decoration: inherit; /* 1 */
  vertical-align: inherit; /* 2 */
}

/**
 * 1. Use the default cursor in all browsers (opinionated).
 * 2. Change the line height in all browsers (opinionated).
 * 3. Breaks words to prevent overflow in all browsers (opinionated).
 * 4. Use a 4-space tab width in all browsers (opinionated).
 * 5. Remove the grey highlight on links in iOS (opinionated).
 * 6. Prevent adjustments of font size after orientation changes in iOS.
 */

:where(:root) {
  cursor: default; /* 1 */
  line-height: 1.5; /* 2 */
  overflow-wrap: break-word; /* 3 */
  -moz-tab-size: 4; /* 4 */
  -o-tab-size: 4;
     tab-size: 4; /* 4 */
  -webkit-tap-highlight-color: transparent; /* 5 */
  -webkit-text-size-adjust: 100%; /* 6 */
}

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

/**
 * Remove the margin in all browsers (opinionated).
 */

:where(body) {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Edge, Firefox, and Safari.
 */

:where(h1) {
  font-size: 2em;
  margin: 0.67em 0;
}

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

/**
 * Remove the margin on nested lists in Chrome, Edge, and Safari.
 */

:where(dl, ol, ul) :where(dl, ol, ul) {
  margin: 0;
}

/**
 * 1. Correct the inheritance of border color in Firefox.
 * 2. Add the correct box sizing in Firefox.
 */

:where(hr) {
  color: inherit; /* 1 */
  height: 0; /* 2 */
}

/**
 * Remove the list style on navigation lists in all browsers (opinionated).
 */

:where(nav) :where(ol, ul) {
  list-style-type: none;
  padding: 0;
}

/**
 * Prevent VoiceOver from ignoring list semantics in Safari (opinionated).
 */

:where(nav li)::before {
  content: "\200B";
  float: left;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 * 3. Prevent overflow of the container in all browsers (opinionated).
 */

:where(pre) {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
  overflow: auto; /* 3 */
}

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

/**
 * Add the correct text decoration in Safari.
 */

:where(abbr[title]) {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

:where(b, strong) {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

:where(code, kbd, samp) {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

:where(small) {
  font-size: 80%;
}

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

/*
 * Change the alignment on media elements in all browsers (opinionated).
 */

:where(audio, canvas, iframe, img, svg, video) {
  vertical-align: middle;
}

/**
 * Remove the border on iframes in all browsers (opinionated).
 */

:where(iframe) {
  border-style: none;
}

/**
 * Change the fill color to match the text color in all browsers (opinionated).
 */

:where(svg:not([fill])) {
  fill: currentColor;
}

/* Tabular data
 * ========================================================================== */

/**
 * 1. Collapse border spacing in all browsers (opinionated).
 * 2. Correct table border color inheritance in all Chrome, Edge, and Safari.
 * 3. Remove text indentation from table contents in Chrome, Edge, and Safari.
 */

:where(table) {
  border-collapse: collapse; /* 1 */
  border-color: inherit; /* 2 */
  text-indent: 0; /* 3 */
}

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

/**
 * Remove the margin on controls in Safari.
 */

:where(button, input, select) {
  margin: 0;
}

/**
 * Correct the inability to style buttons in iOS and Safari.
 */

:where(button, [type="button" i], [type="reset" i], [type="submit" i]) {
  -webkit-appearance: button;
}

/**
 * Change the inconsistent appearance in all browsers (opinionated).
 */

:where(fieldset) {
  border: 1px solid #a0a0a0;
}

/**
 * Add the correct vertical alignment in Chrome, Edge, and Firefox.
 */

:where(progress) {
  vertical-align: baseline;
}

/**
 * 1. Remove the margin in Firefox and Safari.
 * 3. Change the resize direction in all browsers (opinionated).
 */

:where(textarea) {
  margin: 0; /* 1 */
  resize: vertical; /* 3 */
}

/**
 * 1. Correct the odd appearance in Chrome, Edge, and Safari.
 * 2. Correct the outline style in Safari.
 */

:where([type="search" i]) {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Safari.
 */

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */

::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}

/**
 * Remove the inner padding in Chrome, Edge, and Safari on macOS.
 */

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style upload buttons in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

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

/*
 * Add the correct styles in Safari.
 */

:where(dialog) {
  background-color: white;
  border: solid;
  color: black;
  height: -moz-fit-content;
  height: -webkit-fit-content;
  height: fit-content;
  left: 0;
  margin: auto;
  padding: 1em;
  position: absolute;
  right: 0;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

:where(dialog:not([open])) {
  display: none;
}

/*
 * Add the correct display in Safari.
 */

:where(details > summary:first-of-type) {
  display: list-item;
}

/* Accessibility
 * ========================================================================== */

/**
 * Change the cursor on busy elements in all browsers (opinionated).
 */

:where([aria-busy="true" i]) {
  cursor: progress;
}

/*
 * Change the cursor on control elements in all browsers (opinionated).
 */

:where([aria-controls]) {
  cursor: pointer;
}

/*
 * Change the cursor on disabled, not-editable, or otherwise
 * inoperable elements in all browsers (opinionated).
 */

:where([aria-disabled="true" i], [disabled]) {
  cursor: not-allowed;
}

/*
 * Change the display on visually hidden accessible elements
 * in all browsers (opinionated).
 */

:where([aria-hidden="false" i][hidden]) {
  display: initial;
}

:where([aria-hidden="false" i][hidden]:not(:focus)) {
  clip: rect(0, 0, 0, 0);
  position: absolute;
}

/**
 * Restrict sizing to the page width in all browsers (opinionated).
 */

:where(iframe, img, input, video, select, textarea) {
  height: auto;
  max-width: 100%;
}

/**
 * 1. Change the inconsistent appearance in all browsers (opinionated).
 * 2. Add typography inheritance in all browsers (opinionated).
 */

:where(button, input, select, textarea) {
  background-color: transparent; /* 1 */
  border: 1px solid WindowFrame; /* 1 */
  color: inherit; /* 1 */
  font: inherit; /* 2 */
  letter-spacing: inherit; /* 2 */
  padding: 0.25em 0.375em; /* 1 */
}

/**
 * Change the inconsistent appearance in all browsers (opinionated).
 */

:where(select) {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='4'%3E%3Cpath d='M4 0h6L7 4'/%3E%3C/svg%3E") no-repeat right center / 1em;
  border-radius: 0;
  padding-right: 1em;
}

/**
 * Don't show the arrow for multiple choice selects
 */

:where(select[multiple]) {
  background-image: none;
}

/**
 * Remove the border and padding in all browsers (opinionated).
 */

:where([type="color" i], [type="range" i]) {
  border-width: 0;
  padding: 0;
}

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 0px 0px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
}
.hamburger:hover {
  opacity: 1;
}
.hamburger.is-active:hover {
  opacity: 1;
}
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
  background-color: #fff;
}

.hamburger-box {
  width: 40px;
  height: 24px;
  display: inline-block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px;
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
  width: 40px;
  height: 4px;
  background-color: #fff;
  border-radius: 4px;
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}
.hamburger-inner::before, .hamburger-inner::after {
  content: "";
  display: block;
}
.hamburger-inner::before {
  top: -10px;
}
.hamburger-inner::after {
  bottom: -10px;
}

/*
 * Slider
 */
.hamburger--slider .hamburger-inner {
  top: 2px;
}
.hamburger--slider .hamburger-inner::before {
  top: 10px;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.15s;
}
.hamburger--slider .hamburger-inner::after {
  top: 20px;
}
.hamburger--slider.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}
.hamburger--slider.is-active .hamburger-inner::before {
  transform: rotate(-45deg) translate3d(-5.7142857143px, -6px, 0);
  opacity: 0;
}
.hamburger--slider.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(-90deg);
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

body {
  font-family: "Montserrat", sans-serif;
  color: #e1ddd6;
}

h1, h2, h3, h4 {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.0716rem;
}

.glightbox-clean .gslide-description {
  background: transparent;
  color: #fff;
  text-align: center;
}
.glightbox-clean .gslide-title {
  font-size: 1em;
  margin: 0;
  font-family: inherit;
  line-height: 1.4em;
  text-transform: uppercase;
  font-family: "Montserrat", sans-serif;
  color: #e1ddd6;
}

html {
  scroll-behavior: smooth;
}

img {
  max-width: 100%;
}

li::marker {
  color: #ac926d;
}

hr {
  max-width: 300px;
  margin: 0;
  color: #ac926d;
  border-style: solid;
  margin-bottom: 30px;
}
hr.center {
  margin-left: auto;
  margin-right: auto;
}

table {
  width: 100%;
}

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

@-webkit-keyframes fadeIn {
  from {
    visibility: visible;
    opacity: 0;
  }
  to {
    visibility: visible;
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    visibility: visible;
    opacity: 0;
  }
  to {
    visibility: visible;
    opacity: 1;
  }
}
@-webkit-keyframes fadeOut {
  from {
    visibility: visible;
    opacity: 1;
  }
  to {
    visibility: visible;
    opacity: 0;
  }
}
@keyframes fadeOut {
  from {
    visibility: visible;
    opacity: 1;
  }
  to {
    visibility: visible;
    opacity: 0;
  }
}
.g-logo {
  position: -webkit-sticky;
  position: sticky;
  top: 15px;
  margin: calc(50vh - 27px) auto calc(50vh - 27px) 0;
  text-align: center;
  z-index: 2;
}
.g-logo > img {
  height: 54px;
  width: auto;
}

@-webkit-keyframes bounce {
  0%, 20%, 53%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translateZ(0);
  }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
            animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -20px, 0) scaleY(1.1);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
            animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -10px, 0) scaleY(1.05);
  }
  80% {
    transform: translateZ(0) scaleY(0.95);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  90% {
    transform: translate3d(0, -3px, 0) scaleY(1.02);
  }
}

@keyframes bounce {
  0%, 20%, 53%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translateZ(0);
  }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
            animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -20px, 0) scaleY(1.1);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
            animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -10px, 0) scaleY(1.05);
  }
  80% {
    transform: translateZ(0) scaleY(0.95);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  90% {
    transform: translate3d(0, -3px, 0) scaleY(1.02);
  }
}
.google-maps-embed {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 aspect ratio */
  height: 0;
  overflow: hidden;
  max-width: 100%;
  margin: 0 auto;
  /* Center the container */
}
.google-maps-embed iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.u-text-center {
  text-align: center;
}
.u-text-center hr {
  margin-left: auto;
  margin-right: auto;
}

.u-text-right {
  text-align: right;
}
.u-text-right hr {
  margin-left: auto;
  margin-right: 0;
}

.u-text-left {
  text-align: left;
}

.u-text-justify {
  text-align: justify;
}

.u-btn {
  display: inline-block;
  padding: 7.5px 30px;
  border: 1px solid transparent;
  color: #e1ddd6;
  background: #236682;
  text-decoration: none;
  text-transform: uppercase;
  transition: alls 0.3s;
}
.u-btn:hover {
  color: #ac926d;
}
.u-btn--inverse {
  background-color: #ac926d;
  color: #236682;
}
.u-btn--inverse:hover {
  border: 1px solid #ac926d;
  background-color: #236682;
  color: #ac926d;
}

.u-btn + .u-btn {
  margin-left: 15px;
}

@media (min-width: 768px) {
  .u-ul-2cols {
    -moz-column-count: 2;
         column-count: 2;
  }
}

.u-virtual-office-table {
  width: 100%;
}
.u-virtual-office-table th, .u-virtual-office-table td {
  min-height: 50px;
  padding: 7.5px 0;
  border-bottom: 1px solid #000;
}
.u-virtual-office-table th:first-child, .u-virtual-office-table td:first-child {
  text-align: left;
  white-space: nowrap;
}
.u-virtual-office-table thead th {
  border-top: 1px solid #000;
}

@media (max-width: 767px) {
  .u-table-collapse td {
    display: block;
  }

  .u-table-responsive {
    overflow-x: auto;
  }
  .u-table-responsive > table {
    min-width: 600px;
  }
}
.u-social {
  margin: 0;
  padding: 0;
}
.u-social > li {
  display: inline-block;
  padding: 0;
  margin: 0 0 0 7.5px;
}
.u-social > li img {
  width: 37.5px;
  height: 37.5px;
  filter: invert(96%) sepia(9%) saturate(151%) hue-rotate(358deg) brightness(92%) contrast(92%);
  transition: filter 0.3s;
}
.u-social > li a:hover img {
  filter: invert(100%) sepia(0%) saturate(1%) hue-rotate(137deg) brightness(103%) contrast(101%);
}

.u-breadcrumbs {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  text-transform: uppercase;
}
.u-breadcrumbs > li {
  display: inline;
  margin: 0;
  padding: 0;
}
.u-breadcrumbs > li:not(:last-child):after {
  margin: 0 7.5px;
  content: "/";
}
.u-breadcrumbs > li a {
  color: #fff;
  text-decoration: none;
}
.c-scheme--yellow .u-breadcrumbs a, .c-scheme--sand .u-breadcrumbs a {
  color: #3c3746;
}

@media (min-width: 768px) {
  .u-next-prev {
    display: flex;
    justify-content: center;
  }
}
.u-next-prev > a {
  margin: 7.5px 0;
  width: 250px;
  text-align: center;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  .u-next-prev > a {
    margin: 0 15px;
  }
}

.u-full-height {
  min-height: 100vh;
}

.d-mobile {
  display: none;
}
@media (max-width: 768px) {
  .d-mobile {
    display: block !important;
  }
}

.d-desktop {
  display: block;
}
@media (max-width: 768px) {
  .d-desktop {
    display: none !important;
  }
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  white-space: nowrap;
  -webkit-clip-path: inset(100%);
          clip-path: inset(100%);
  clip: rect(0 0 0 0);
  overflow: hidden;
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  padding: 30px;
  z-index: 2;
  display: flex;
  background: rgba(35, 101, 129, 0.7);
  background: rgba(35, 101, 129, 0.7);
}
.header__logo {
  margin: 0 auto;
  pointer-events: auto;
}
@media (max-width: 767px) {
  .header__logo img {
    height: 40px;
  }
}
.page-id-1 .header {
  pointer-events: none;
  visibility: hidden;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-duration: 0.4s;
          animation-duration: 0.4s;
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
  -webkit-animation-name: fadeIn;
          animation-name: fadeIn;
}
.header .hamburger {
  position: absolute;
  top: 37.5px;
  right: 30px;
  pointer-events: auto;
  cursor: pointer;
  display: flex;
  align-items: center;
}
.header .hamburger-label {
  color: #fff;
  font-size: 22px;
  text-transform: uppercase;
  padding-right: 15px;
}
@media (max-width: 767px) {
  .header .hamburger-label {
    display: none;
  }
}

.footer {
  margin-top: -125px;
  display: flex;
  justify-content: center;
  z-index: 1;
}
.footer__top {
  position: relative;
  display: block;
  color: #ac926d;
  background: url(/assets/img/up-arrow.svg?6325bb276ec80dd3bbec8f43cb465e5c) no-repeat top center;
  background-size: 66px 66px;
  padding-top: 80px;
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
}

.nav {
  position: fixed;
  height: 100vh;
  width: 100%;
  top: 0;
  pointer-events: none;
  z-index: 4;
  font-size: 1.3em;
}
.nav a {
  color: #e1ddd6;
  text-decoration: none;
}
.nav a:hover {
  color: #fff;
}
.nav__toggle {
  position: absolute;
  top: 130px;
  left: 65px;
  cursor: pointer;
  pointer-events: auto;
}
.nav__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  visibility: hidden;
  height: 100vh;
  opacity: 0;
  transition: opacity 0.3s, visibility 0s;
  background: #000;
}
.nav__container {
  text-align: right;
  overflow: auto;
  padding: 30px;
  width: 90%;
  max-width: 650px;
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  background: #0d9aab url(/assets/img/waves.svg?ba8b86bf70ac7a337ece96db7f04d701);
  background-size: cover;
  pointer-events: auto;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  transform: translateX(100%);
  transition: transform 0.3s;
  will-change: transform;
  contain: paint;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.nav__close {
  margin: 15px 0 0 auto;
  width: 30px;
  height: 30px;
  background: url(/assets/img/close.svg?b37774eb9431b8bcd48cbf7b02bfe6af) no-repeat center center;
  background-size: 22.5px 22.5px;
  border: none;
  cursor: pointer;
  text-indent: -200vw;
}
.nav__footer {
  padding: 15px 0;
  font-size: 0.75em;
}
.nav__footer > li {
  display: inline-block;
  text-transform: uppercase;
}
.nav__footer > li:before {
  margin-left: 5px;
  margin-right: 5px;
  content: " | ";
}
.nav__footer > li:first-child:before {
  content: none;
}
.nav__address {
  padding: 15px 0;
  font-size: 0.75em;
}
.nav__address a[href^="mailto:"] {
  color: #fff;
}
.nav__header {
  margin: 0;
  padding: 0;
}
.nav__header > li {
  margin: 0;
  padding: 0;
  overflow: hidden;
}
.nav__header > li:before {
  content: none;
}
.nav__header > li > a {
  font-family: "Montserrat", sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.0716rem;
  font-size: 1.5em;
  text-transform: uppercase;
  transform-origin: right center;
  display: block;
  width: 100%;
  position: relative;
  transition: transform 0.3s ease-in-out, color 0.3s ease-in-out;
  will-change: transform;
  min-width: 200px;
  padding: 7.5px 0;
}
@media (hover: hover) {
  .nav__header > li:hover > a {
    color: #fff;
    transform: scale(1.2);
  }
}
.nav__header > li.expanded > a {
  color: #fff;
  transform: scale(1.2);
}
.nav__header > li > ul {
  max-height: 0;
  transition: max-height 0.3s, opacity 0.3s;
  overflow: hidden;
  text-transform: uppercase;
  font-size: 0.75em;
  opacity: 0;
  position: relative;
}
.nav__header > li > ul:after {
  position: absolute;
  content: "";
  bottom: 0;
  right: 0;
  height: 1px;
  width: 200px;
  max-width: 100%;
}
@media (hover: hover) {
  .nav__header > li:hover > ul {
    max-height: 250px;
    opacity: 1;
  }
}
.nav__header > li.expanded > ul {
  max-height: 250px;
  opacity: 1;
}

.nav-is-active .nav__container {
  transform: none;
}
.nav-is-active .nav__bg {
  visibility: visible;
  opacity: 0.6;
  pointer-events: auto;
}

.main {
  padding-bottom: 175px;
}
.main a {
  color: #e1ddd6;
  text-decoration: none;
}
.main a:hover {
  color: #fff;
}
.main.c-scheme--yellow {
  background: #fcbd4a;
  color: #3c3746;
}
.main.c-scheme--yellow a {
  color: inherit;
}
.main.c-scheme--sand {
  background: #d4bdab;
  color: #3c3746;
}
.main.c-scheme--sand a {
  color: inherit;
}
.main.c-scheme--aubergine {
  background: #3d3847;
}
.main.c-scheme--purple {
  background: #8365a5;
}
.main.c-scheme--pink {
  background: #ff8582;
}
.main.c-scheme--blue {
  background: #236682;
}
.main.c-scheme--gray {
  background: #3b6669;
}
.main div[class*=b-image] + div[class*=b-image],
.main div[class*=b-2images] + div[class*=b-image],
.main div[class*=b-image] + div[class*=b-2images],
.main div[class*=b-2images] + div[class*=b-2images] {
  padding-top: 0;
}
.main p {
  -webkit-margin-before: 0;
          margin-block-start: 0;
}
.main hr + p {
  -webkit-margin-before: 1em;
          margin-block-start: 1em;
}

.sbox {
  position: fixed;
  right: 100px;
  bottom: 15px;
  max-width: 320px;
  padding: 15px;
  background: #236581;
  border: 2px solid #ac926d;
  border-radius: 25px;
  overflow: hidden;
}
@media (max-width: 767px) {
  .sbox {
    display: none;
  }
}
.sbox > h2 {
  margin: 0;
  position: relative;
  line-height: 1;
}
.sbox__body {
  max-height: 0;
  transition: all 0.3s;
}
.sbox__body > p {
  font-size: 0.8em;
  margin: 0;
  padding: 15px 0;
}
.sbox__open, .sbox__close {
  position: absolute;
  top: 0;
  right: 0;
  border: none;
  padding: 0;
  cursor: pointer;
  left: 0;
  bottom: 0;
  text-align: right;
  transition: all 0.3s;
}
.sbox__open > svg {
  width: 40px;
  height: 30px;
  color: #ac926d;
}
.sbox__close {
  opacity: 0;
  pointer-events: none;
  z-index: -1;
}
.sbox__close > svg {
  width: 20px;
  height: 20px;
  color: #ac926d;
}
.sbox.open .sbox__close {
  opacity: 1;
  pointer-events: auto;
  z-index: 1;
}
.sbox.open .sbox__open {
  opacity: 0;
  pointer-events: none;
  z-index: -1;
}
.sbox.open .sbox__body {
  max-height: 300px;
}
.sbox form {
  background-color: #3b6669;
  margin: 0 -15px -15px -15px;
  padding: 15px;
  border: 1px solid #ac926d;
  border-top: none;
  border-bottom-left-radius: 25px;
  border-bottom-right-radius: 25px;
  color: #ac926d;
  display: flex;
}
.sbox form > input {
  flex: 1 1 auto;
  border: none;
  outline: none;
}
.sbox form > button {
  border: none;
  cursor: pointer;
}
.sbox form > button > svg {
  width: 30px;
  height: 30px;
  color: #ac926d;
}

.b--p {
  padding: 30px 15px 30px 15px;
}
.b-image img {
  max-width: 738px;
  width: 100%;
  margin: 0 auto;
  display: block;
}

.b-video > video, .b-video > iframe {
  max-width: 768px;
  width: 100%;
  margin: 0 auto;
  display: block;
  aspect-ratio: 16/9;
}

.b-2images > div {
  max-width: 768px;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .b-2images > div {
    align-items: start;
    display: flex;
    justify-content: space-between;
  }
  .b-2images > div > a {
    flex: 1 1 calc(50% - 7.5px);
    max-width: calc(50% - 7.5px);
  }
}
.b-2images > div img {
  width: 100%;
}

.b-imagesx3 {
  display: flex;
  gap: 15px;
  max-width: 768px;
  margin: 0 auto;
}
.b-imagesx3 img {
  width: 100%;
  aspect-raio: 1;
}
.b-imagesx3__big {
  flex: 2;
}
.b-imagesx3__big img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.b-imagesx3__small {
  flex: 1;
}
.b-imagesx3__small > a:first-child {
  display: block;
  padding-bottom: 7.5px;
}
.b-imagesx3__small > a:last-child {
  display: block;
  padding-top: 7.5px;
}

.b-imagesx4 {
  display: flex;
  gap: 15px;
  max-width: 768px;
  margin: 0 auto;
}
.b-imagesx4--full-last {
  flex-direction: row-reverse;
}
.b-imagesx4 img {
  width: 100%;
}
.b-imagesx4__tall {
  flex: 1;
}
.b-imagesx4__tall img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.b-imagesx4__cont {
  flex: 2;
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.b-imagesx4__small {
  display: flex;
  gap: 15px;
}

.b-text:first-child {
  padding-top: 150px;
}
.b-text__container {
  max-width: 1024px;
  margin: 0 auto;
}
.b-text__container--centered {
  max-width: 768px;
  text-align: center;
}
.b-text__container--centered hr {
  margin: 0 auto;
}
@media (min-width: 768px) {
  .b-text__container--2col {
    display: flex;
    flex-flow: row;
    justify-content: space-between;
  }
  .b-text__container--2col > div {
    flex: 1 1 calc(50% - 15px);
    max-width: calc(50% - 15px);
  }
}
@media (min-width: 768px) {
  .b-text__container--3col {
    display: flex;
    flex-flow: row;
    justify-content: space-between;
  }
  .b-text__container--3col > div {
    flex: 1 1 calc(33.333% - 15px);
    max-width: calc(33.333% - 15px);
  }
}

@media (min-width: 768px) {
  .b-image-text {
    display: flex;
    flex-flow: row;
    justify-content: space-between;
  }
  .b-image-text > div {
    flex: 1 1 calc(50% - 15px);
    max-width: calc(50% - 15px);
  }
}
.b-image-text--text_image {
  flex-direction: row-reverse;
}
.b-image-text__image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: 100%;
  margin: auto 0 auto auto;
}
@media (min-width: 768px) {
  .b-image-text__image img {
    width: 700px;
  }
}
.b-image-text__text {
  display: flex;
}
@media (min-width: 768px) {
  .b-image-text__text > div {
    margin: auto auto auto 0;
    max-width: 512px;
  }
}

@media (min-width: 768px) {
  .b-image-text--text_image .b-image-text__image img {
    margin: auto auto auto 0;
  }
  .b-image-text--text_image .b-image-text__text > div {
    margin: auto 0 auto auto;
  }
}
.b-spaces {
  color: #e1ddd6;
}
.b-spaces > div {
  max-width: 1024px;
  margin: 0 auto 15px auto;
}
@media (min-width: 768px) {
  .b-spaces > div {
    display: flex;
  }
}
.b-spaces > div:last-child {
  margin-bottom: 0;
}
.b-spaces > div:nth-child(even) {
  flex-direction: row-reverse;
}
@media (min-width: 768px) {
  .b-spaces__image, .b-spaces__text {
    flex: 1 1 50%;
    max-width: 50%;
  }
}
.b-spaces__image img, .b-spaces__text img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.b-spaces__text {
  padding: 30px;
  background-color: #236682;
}
.b-spaces__text h1 {
  margin-top: 0;
}
.b-spaces__text h1 small {
  font-family: "Montserrat", sans-serif;
  color: #e1ddd6;
  font-style: normal;
  font-size: 0.5em;
  text-transform: none;
}

.b-team {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  max-width: 768px;
  margin: 0 auto;
  gap: 15px;
}
.b-team h3 {
  margin: 0;
}
.b-team__entry {
  text-align: center;
  position: relative;
  flex: 0 1 calc(33.333% - 10px);
}
@media (max-width: 768px) {
  .b-team__entry {
    flex: 0 1 calc(50% - 7.5px);
    font-size: 80%;
  }
}
@media (max-width: 320px) {
  .b-team__entry {
    flex: 0 1 100%;
  }
}
.b-team__entry > img {
  max-width: 100%;
}
.b-team__entry > div {
  padding: 15px;
}
.b-team__entry a {
  display: block;
  margin-top: 15px;
}
.b-team__entry a:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.b-team--bg1 {
  background-color: #96b05c;
}
.b-team--bg2 {
  background-color: #fcbd4a;
}
.b-team--bg3 {
  background-color: #8e64a8;
}
.b-team--bg4 {
  background-color: #faa11c;
}
.b-team--bg5 {
  background-color: #cc6b6b;
}
.b-team--bg6 {
  background-color: #3b6669;
}
.b-team--bg7 {
  background-color: #ff8582;
}
.b-team--bg8 {
  background-color: #8e64a8;
}
.b-team--bg9 {
  background-color: #5cc4de;
}
.b-team__modal {
  display: none;
  padding: 0 !important;
}
.b-team__modal > div {
  display: flex;
}
@media (max-width: 767px) {
  .b-team__modal > div {
    display: block;
  }
}
.b-team__modal > div > div {
  flex: 1 1 50%;
}
.b-team__modal > div img {
  width: 100%;
}
.b-team__modal__text {
  padding: 30px;
  display: flex;
  flex-direction: column;
}
.b-team__modal__text > a {
  margin-top: auto;
  display: inline-flex;
  color: #fff;
  text-decoration: none;
  align-items: center;
}
.b-team__modal__text > a > img {
  height: 30px;
  width: 30px;
  margin-right: 15px;
  filter: invert(100%) sepia(0%) saturate(1%) hue-rotate(137deg) brightness(103%) contrast(101%);
}

.b-contact-form {
  margin: 0 auto;
  max-width: 384px;
}
.b-contact-form > form input, .b-contact-form > form textarea {
  display: block;
  width: 100%;
  border-radius: 5px;
  background: #fff;
  border: 1px solid #fff;
  color: #3c3746;
  margin-bottom: 7.5px;
}
.b-contact-form > form button {
  display: block;
  border: none;
  text-align: center;
  margin: 0 auto;
}

.b-map {
  max-width: 768px;
  margin: 0 auto;
  aspect-ratio: 16/9;
}

.b-breadcrumbs {
  font-size: 14px;
  text-align: center;
}
.b-breadcrumbs:first-child {
  padding-top: 60px;
  padding-bottom: 0;
  margin-bottom: -45px;
}
.b-gallery > div {
  max-width: 1024px;
  margin: 0 auto;
}
.b-gallery > div .slick-dots {
  z-index: 1;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0;
  padding: 0;
  bottom: 30px;
  display: flex;
  list-style: none;
  justify-content: center;
}
.b-gallery > div .slick-dots button {
  line-height: 0;
  font-size: 0;
  display: block;
  text-indent: -200vw;
  width: 10px;
  height: 10px;
  border-radius: 5px;
  border: 2px solid #fff;
  margin-left: 3.75px;
  margin-right: 3.75px;
  overflow: hidden;
  outline: 0;
}
@media (min-width: 768px) {
  .b-gallery > div .slick-dots button {
    width: 20px;
    height: 20px;
    border-radius: 10px;
  }
}
.b-gallery > div .slick-dots .slick-active button {
  background: #fff;
}

.b-grid-4x > ul {
  display: flex;
  flex-flow: row wrap;
  gap: 15px;
  max-width: 1024px;
  margin: 0 auto;
  padding: 0;
}
.b-grid-4x > ul > li {
  flex: 0 1 calc(25% - 11.25px);
  aspect-ratio: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background-size: cover;
  position: relative;
  margin: 0 0 7.5px 0;
  list-style: none;
  justify-content: center;
  align-items: center;
  padding: 0;
  position: relative;
}
@media (max-width: 768px) {
  .b-grid-4x > ul > li {
    flex: 0 1 calc(33.333% - 10px);
  }
}
@media (max-width: 767px) {
  .b-grid-4x > ul > li {
    flex: 0 1 calc(50% - 7.5px);
  }
}
@media (max-width: 320px) {
  .b-grid-4x > ul > li {
    flex: 0 1 100%;
  }
}
.b-grid-4x > ul > li > img {
  max-width: 100%;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.b-grid-4x > ul > li > div {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.0716rem;
  font-size: 1rem;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.4);
  line-height: 1;
  display: flex;
  padding: 15px;
}
.b-grid-4x > ul > li > div > span {
  margin: auto;
}
.b-grid-4x > ul > li > a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1;
}
.b-grid-4x > ul > li > div:after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  opacity: 1;
  transition: opacity 0.3s;
}
.b-grid-4x > ul > li:nth-child(6n+1) > div:after {
  background-color: #ff8582;
}
.b-grid-4x > ul > li:nth-child(6n+2) > div:after {
  background-color: #5cc4de;
}
.b-grid-4x > ul > li:nth-child(6n+3) > div:after {
  background-color: #8e64a8;
}
.b-grid-4x > ul > li:nth-child(6n+4) > div:after {
  background-color: #96b05c;
}
.b-grid-4x > ul > li:nth-child(6n+5) > div:after {
  background-color: #fcbd4a;
}
.b-grid-4x > ul > li:nth-child(6n+6) > div:after {
  background-color: #d4bdab;
}
.b-grid-4x > ul > li:hover > div:after {
  opacity: 0;
}

.b-latest-news {
  text-align: center;
}
.b-latest-news > ul {
  display: flex;
  flex-flow: row wrap;
  margin: 0 auto;
  padding: 0;
  gap: 15px;
  justify-content: center;
}
.b-latest-news > ul > li {
  flex: 0 1 256px;
  color: #fff;
  aspect-ratio: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  text-align: center;
  padding: 30px;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.4);
  background-size: cover;
}
.b-latest-news > ul > li > h3 {
  margin: 0;
  z-index: 2;
  pointer-events: none;
}
@media (max-width: 767px) {
  .b-latest-news > ul > li > h3 {
    font-size: 0.9em;
  }
}
.b-latest-news > ul > li p {
  position: relative;
  margin: 15px 0;
  font-size: 0.75em;
  z-index: 2;
  pointer-events: none;
}
.b-latest-news > ul > li > a {
  font-size: 0.75em;
  margin: 15px 0;
  text-transform: uppercase;
  z-index: 1;
  color: #fff;
}
@media (max-width: 767px) {
  .b-latest-news > ul > li > a {
    font-size: 0.6em;
  }
}
.b-latest-news > ul > li > a:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 1;
  z-index: -1;
  transition: opacity 0.3s;
}
.b-latest-news > ul > li:nth-child(6n+1) > a:before {
  background-color: #ff8582;
  border-color: #ff8582;
}
.b-latest-news > ul > li:nth-child(6n+2) > a:before {
  background-color: #5cc4de;
  border-color: #5cc4de;
}
.b-latest-news > ul > li:nth-child(6n+3) > a:before {
  background-color: #8e64a8;
  border-color: #8e64a8;
}
.b-latest-news > ul > li:nth-child(6n+4) > a:before {
  background-color: #96b05c;
  border-color: #96b05c;
}
.b-latest-news > ul > li:nth-child(6n+5) > a:before {
  background-color: #fcbd4a;
  border-color: #fcbd4a;
}
.b-latest-news > ul > li:nth-child(6n+6) > a:before {
  background-color: #d4bdab;
  border-color: #d4bdab;
}
.b-latest-news > ul > li.show-image > a:hover:before {
  opacity: 0;
}

.b-social-links {
  text-align: center;
}
.b-social-links .u-social > li img {
  filter: invert(100%) sepia(0%) saturate(1%) hue-rotate(137deg) brightness(103%) contrast(101%);
}

.b-home {
  height: 100vh;
  overflow: visible;
  display: flex;
  background-size: cover;
  position: relative;
  overflow-x: clip;
}
.b-home__logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-duration: 0.4s;
          animation-duration: 0.4s;
  -webkit-animation-delay: 1.8s;
          animation-delay: 1.8s;
  -webkit-animation-name: fadeOut;
          animation-name: fadeOut;
}
@media (max-width: 767px) {
  .b-home__logo {
    display: none;
  }
}
.b-home__k {
  position: absolute;
  pointer-events: none;
}
@media (min-width: 768px) {
  .b-home__k {
    height: 50vh;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
    -webkit-animation-duration: 1.5s;
            animation-duration: 1.5s;
    -webkit-animation-delay: 0.5s;
            animation-delay: 0.5s;
    -webkit-animation-name: introK;
            animation-name: introK;
  }
}
@media (max-width: 767px) {
  .b-home__k {
    width: 100%;
    height: 100%;
  }
}
@-webkit-keyframes introK {
  from {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
  }
  to {
    left: -10vh;
    top: 52%;
    translate: 150% 50%;
    scale: 2;
  }
}
@keyframes introK {
  from {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
  }
  to {
    left: -10vh;
    top: 52%;
    translate: 150% 50%;
    scale: 2;
  }
}
.b-home__arrow-down {
  position: absolute;
  bottom: 9vh;
  left: 50%;
  margin-left: -25px;
  width: 50px;
  -webkit-animation-name: fadeIn, bounce;
          animation-name: fadeIn, bounce;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-duration: 0.4s, 2s;
          animation-duration: 0.4s, 2s;
  -webkit-animation-delay: 3.5s;
          animation-delay: 3.5s;
  -webkit-animation-iteration-count: 1, infinite;
          animation-iteration-count: 1, infinite;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transform-origin: center bottom;
}
.b-home__nav {
  margin-left: 15vh;
  z-index: 1;
  margin-bottom: 9vh;
  margin-top: auto;
}
@media (max-width: 767px) {
  .b-home__nav {
    margin: auto auto;
  }
}
.b-home__nav ul {
  font-family: "Montserrat", sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.0716rem;
  margin: 0;
  padding: 0;
  font-size: 6rem;
}
@media (max-width: 767px) {
  .b-home__nav ul {
    font-size: 4rem;
  }
}
.b-home__nav ul > li {
  visibility: hidden;
  list-style: none;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-duration: 0.4s;
          animation-duration: 0.4s;
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
  -webkit-animation-name: fadeIn;
          animation-name: fadeIn;
  margin: 0;
  padding: 0;
}
@media (max-width: 767px) {
  .b-home__nav ul > li {
    -webkit-animation-delay: 0.5s;
            animation-delay: 0.5s;
  }
}
.b-home__nav ul > li > a {
  display: block;
  transition: transform 0.4s;
  line-height: 1;
}
.b-home__nav ul > li > a:hover {
  transform: scale(1.1);
}
.b-home__nav ul > li:nth-child(2) {
  -webkit-animation-delay: 2.5s;
          animation-delay: 2.5s;
}
@media (max-width: 767px) {
  .b-home__nav ul > li:nth-child(2) {
    -webkit-animation-delay: 1s;
            animation-delay: 1s;
  }
}
.b-home__nav ul > li:nth-child(3) {
  -webkit-animation-delay: 3s;
          animation-delay: 3s;
}
@media (max-width: 767px) {
  .b-home__nav ul > li:nth-child(3) {
    -webkit-animation-delay: 1.5s;
            animation-delay: 1.5s;
  }
}
.b-home__nav > div {
  visibility: hidden;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-duration: 0.4s;
          animation-duration: 0.4s;
  -webkit-animation-delay: 3.5s;
          animation-delay: 3.5s;
  -webkit-animation-name: fadeIn;
          animation-name: fadeIn;
  font-size: 1.25rem;
  font-weight: 500;
  margin-top: 15px;
}
@media (max-width: 767px) {
  .b-home__nav > div {
    font-size: 1rem;
    -webkit-animation-delay: 2s;
            animation-delay: 2s;
  }
}

.b-hero {
  min-height: 100vh;
  display: flex;
  flex-flow: column;
  justify-content: flex-end;
  margin-bottom: 5vh;
  position: relative;
}
@media (max-width: 1024px) {
  .b-hero {
    justify-content: center;
  }
}
.b-hero__image, .b-hero__video {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 1024px) {
  .b-hero__image--desktop, .b-hero__video--desktop {
    display: none;
  }
}
.b-hero__image--mobile, .b-hero__video--mobile {
  display: none;
}
@media (max-width: 1024px) {
  .b-hero__image--mobile, .b-hero__video--mobile {
    display: block;
  }
}
.b-hero__k {
  z-index: 1;
  margin-bottom: -5vh;
  position: relative;
  margin-right: auto;
}
.b-hero__title {
  position: absolute;
  display: flex;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
@media (min-width: 1025px) {
  .b-hero__title {
    display: block;
    left: 150px;
    right: auto;
    bottom: 15%;
    top: auto;
  }
}
.b-hero__title > h1 {
  font-family: "Montserrat", sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.0716rem;
  font-size: 6rem;
  color: #fff;
  line-height: 1;
}
@media (max-width: 1024px) {
  .b-hero__title > h1 {
    font-size: 3rem;
    text-align: center;
    margin: auto;
  }
}
@media (max-width: 767px) {
  .b-hero__title > h1 {
    font-size: 2rem;
  }
}
.b-hero__arrow-down {
  position: absolute;
  bottom: 9vh;
  left: 50%;
  margin-left: -25px;
  width: 50px;
  pointer-events: none;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-name: bounce;
          animation-name: bounce;
  transform-origin: center bottom;
}

.b-sub-nav > ul {
  display: flex;
  flex-flow: row wrap;
  gap: 15px;
  max-width: 768px;
  margin: 0 auto;
  padding: 0;
  justify-content: center;
}
.b-sub-nav > ul > li {
  flex: 0 1 calc(33.333% - 10px);
  aspect-ratio: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background-size: cover;
  margin: 0 0 7.5px 0;
  list-style: none;
  justify-content: center;
  align-items: center;
  padding: 0;
  position: relative;
}
@media (max-width: 767px) {
  .b-sub-nav > ul > li {
    flex: 0 1 calc(50% - 7.5px);
  }
}
@media (max-width: 320px) {
  .b-sub-nav > ul > li {
    flex: 0 1 100%;
  }
}
.b-sub-nav > ul > li > img {
  max-width: 100%;
  max-height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.b-sub-nav > ul > li > a {
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.0716rem;
  letter-spacing: 0.25rem;
  font-size: 1.25rem;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.4);
  z-index: 1;
  padding: 5px;
}
.b-sub-nav > ul > li > a:before {
  position: absolute;
  background: url(/assets/img/waves.svg?ba8b86bf70ac7a337ece96db7f04d701) center center;
  background-size: calc(100% - 10px) calc(100% - 10px);
  border: 10px solid transparent;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 1;
  z-index: -1;
  transition: opacity 0.3s;
}
.b-sub-nav > ul > li > a:hover:before {
  opacity: 0;
}
.b-sub-nav > ul > li:nth-child(6n+1) > a:before {
  background-color: #ff8582;
  border-color: #ff8582;
}
.b-sub-nav > ul > li:nth-child(6n+2) > a:before {
  background-color: #5cc4de;
  border-color: #5cc4de;
}
.b-sub-nav > ul > li:nth-child(6n+3) > a:before {
  background-color: #8365a5;
  border-color: #8365a5;
}
.b-sub-nav > ul > li:nth-child(6n+4) > a:before {
  background-color: #96b05c;
  border-color: #96b05c;
}
.b-sub-nav > ul > li:nth-child(6n+5) > a:before {
  background-color: #fcbd4a;
  border-color: #fcbd4a;
}
.b-sub-nav > ul > li:nth-child(6n+6) > a:before {
  background-color: #d4bdab;
  border-color: #d4bdab;
}
.b-sub-nav > ul > li:nth-child(6n+7) > a:before {
  background-color: #df6896;
  border-color: #df6896;
}
.b-sub-nav > ul > li:nth-child(6n+7) > a:before {
  background-color: #ac926d;
  border-color: #ac926d;
}
