/*!
Theme Name: Insights
Theme URI: https://insights.is
Author: Insights
Author URI: https://insights.is
Description: Insights theme
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: insights
Tags: editor-style, featured-images, microformats, post-formats, rtl-language-support, sticky-post, threaded-comments, translation-ready
*/
html.lenis,
html.lenis body {
  height: auto;
}

.lenis:not(.lenis-autoToggle).lenis-stopped {
  overflow: clip;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-smooth iframe {
  pointer-events: none;
}

.lenis.lenis-autoToggle {
  transition-property: overflow;
  transition-duration: 1ms;
  transition-behavior: allow-discrete;
}

@keyframes text-underlined {
  0% {
    transform: scaleX(1);
    transform-origin: var(--transform-origin-end);
  }
  50% {
    transform: scaleX(0);
    transform-origin: var(--transform-origin-end);
  }
  51% {
    transform-origin: var(--transform-origin-start);
  }
  100% {
    transform: scaleX(1);
  }
}
@keyframes zoom-fade {
  0% {
    opacity: 0;
    transform: scale(1.2);
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes zoom-fade-short {
  0% {
    opacity: 0;
    transform: scale(1.1);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes spin {
  to {
    transform: rotate(1turn);
  }
}
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-in-up {
  0% {
    opacity: 0;
    transform: translate3d(0, 30px, 0);
  }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes scrolling-left {
  0% {
    transform: translate3d(0, 0, 0);
    visibility: visible;
  }
  100% {
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes scrolling-right {
  0% {
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}
@keyframes scrolling-left-rtl {
  0% {
    transform: translate3d(0, 0, 0);
    visibility: visible;
  }
  100% {
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes scrolling-right-rtl {
  0% {
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}
@keyframes move-up-down {
  0% {
    transform: translateY(0.8rem);
  }
  100% {
    transform: translateY(-0.8rem);
  }
}
@keyframes move-up-down-reverse {
  0% {
    transform: translateY(-0.8rem);
  }
  100% {
    transform: translateY(0.8rem);
  }
}
html {
  scroll-behavior: initial !important;
}

.no-js .no-js-hidden {
  display: none !important;
}

[style*="--aspect-ratio"] {
  position: relative;
  overflow: hidden;
}
[style*="--aspect-ratio"]:before {
  content: "";
  height: 0;
  display: block;
  padding-top: calc(100% / (0 + var(--aspect-ratio, 1.7777777778)));
}
[style*="--aspect-ratio"] > :first-child:not(source),
[style*="--aspect-ratio"] > :first-child:is(source) ~ img {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  position: absolute !important;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
@media (max-width: 767px) {
  [style*="--aspect-ratio"]:before {
    padding-top: calc(100% / (0 + var(--aspect-ratio-mobile, var(--aspect-ratio, 1.7777777778))));
  }
}

.placeholder-svg {
  background-color: rgba(var(--color-foreground), 0.04);
  color: rgba(var(--color-foreground), 0.4);
  fill: rgba(var(--color-foreground), 0.4);
  vertical-align: middle;
  width: 100%;
  height: 100%;
}

a:empty,
ul:empty,
dl:empty,
section:empty,
article:empty,
p:empty,
h1:empty,
h2:empty,
h3:empty,
h4:empty,
h5:empty,
h6:empty {
  display: none;
}

div:empty:not(.fixed-overlay, .bg-overlay, .empty-space, .drawer__body, .no-empty) {
  display: none;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

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

a {
  color: inherit;
  text-decoration: inherit;
}

a:not([href]) {
  cursor: not-allowed;
}

::selection {
  background-color: rgba(var(--color-foreground), 0.2);
}

blockquote {
  font-style: italic;
  color: rgba(var(--color-foreground), 0.75);
  border-inline-start: 0.2rem solid rgba(var(--color-foreground), 0.2);
  padding-inline-start: 1rem;
}

@media screen and (min-width: 750px) {
  blockquote {
    padding-inline-start: 1.5rem;
  }
}
hr {
  border: none;
  height: 0.1rem;
  background-color: rgba(var(--color-foreground), 0.2);
  display: block;
  margin: 5rem 0;
}

@media screen and (min-width: 750px) {
  hr {
    margin: 7rem 0;
  }
}
/* Modal */
.body-no-scrollbar,
.modal-show,
.modal-showing {
  overflow: hidden;
  padding-right: var(--scrollbar-width);
}

/* Media component */
.media-wrapper {
  display: block;
  position: relative;
  overflow: hidden;
  background-color: rgba(var(--color-foreground), 0.03);
}
.media-wrapper > img {
  object-fit: cover;
  object-position: center center;
  transition: 0.5s cubic-bezier(0.3, 1, 0.3, 1);
  transition-property: opacity, transform;
}
.media-wrapper.loading > img {
  opacity: 0;
}
.media-wrapper.loaded {
  background-color: transparent;
}

/* Video element */
video-element > :is(iframe, img, svg) {
  position: absolute;
  inset: 0;
}
video-element > :is(iframe, img, svg, video) {
  width: 100%;
  height: 100%;
  border: none;
  border-radius: inherit;
  transition: 0.2s cubic-bezier(0.7, 0, 0.3, 1);
  transition-property: opacity, visibility;
}
video-element > .media__poster {
  border: none;
  border-radius: inherit;
  transition: 0.2s cubic-bezier(0.7, 0, 0.3, 1);
  transition-property: opacity, visibility;
}
video-element[loaded] > img, video-element[loaded] > svg, video-element[loaded] .media__poster, video-element:not([loaded]) > :is(video, iframe) {
  opacity: 0;
  visibility: hidden;
}
video-element > video,
video-element > :is(img, svg),
video-element > video:not(:-webkit-full-screen),
video-element video:not(:fullscreen) {
  object-fit: cover;
  object-position: center;
}
video-element:not([playing]) {
  cursor: pointer;
}
video-element[suspended] ~ * {
  pointer-events: none;
}

.media {
  position: relative;
}
.media--adapt {
  height: 0;
  padding-block-start: calc(100% / (0 + var(--media-ratio, 1.7777777778)));
}
.media--height > :is(img, svg, video-element) {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  position: absolute;
  max-width: 100%;
  width: 100%;
  height: 100%;
}
.media .media-wrapper {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
}
.media__play-button {
  --play-background: 255, 255, 255;
  width: var(--play-button-size, 8rem);
  height: var(--play-button-size, 8rem);
  font-size: var(--play-button-size, 8rem);
  border-radius: 50%;
  color: rgb(var(--play-button-color, 0, 0, 0));
  background-color: rgba(var(--play-button-backgroud, var(--play-background)), var(--play-button-opacity, 0.8));
  transition: all var(--duration-default);
}
.media__play-button svg {
  width: var(--play-button-icon-size, 0.333334em);
  height: var(--play-button-icon-size, 0.333334em);
}
.media__poster:hover .media__play-button {
  transform: scale(1.1);
}
.media--extra-small {
  height: 35rem;
}
.media--small {
  height: 40rem;
}
.media--medium {
  height: 55rem;
}
.media--extra-medium {
  height: 65rem;
}
.media--large {
  height: 70rem;
}
.media--extra-large {
  height: 75rem;
}
@media (max-width: 767.98px) {
  .media--adapt {
    padding-block-start: calc(100% / (0 + var(--media-ratio-mobile, var(--media-ratio, 1))));
  }
  .media-wrapper {
    --play-button-size: 8rem;
  }
}

@media (max-width: 767.98px) {
  .mb\:media--small {
    height: 300px;
    padding-block-start: 0;
  }
  .mb\:media--medium {
    height: 400px;
    padding-block-start: 0;
  }
  .mb\:media--large {
    height: 500px;
    padding-block-start: 0;
  }
  .mb\:media--extra-large {
    height: 600px;
    padding-block-start: 0;
  }
  .mb\:media--adapt {
    height: 0;
    padding-block-start: calc(100% / (0 + var(--media-ratio-mobile, var(--media-ratio, 1))));
  }
}

.parallax-element__media {
  height: auto !important;
  bottom: auto !important;
}

.e-parent:has(.parallax-element) {
  display: block;
}

/* Sticky element */
.sticky-element {
  position: sticky;
  top: calc(var(--sticky-offset, 2rem) + var(--wp-admin--admin-bar--height, 0px));
  transition: all var(--animation-default);
}
body.header-pinned .sticky-element {
  top: calc(var(--sticky-offset, 2rem) + var(--header-height) + var(--wp-admin--admin-bar--height, 0px));
}

/* Select element */
.select-element {
  --icon-size: 0.7rem;
}
.select-element select {
  border: none;
  appearance: none;
  -webkit-appearance: none;
  font-size: inherit;
  line-height: inherit;
  width: 100%;
  max-width: calc(var(--width) + var(--icon-size) * 2 + 1.2rem);
  padding: 0;
  padding-inline-end: 2rem;
  background: transparent;
}
.select-element select:focus-visible {
  outline: 0.2rem solid rgb(var(--color-foreground));
  box-shadow: none;
}
.select-element svg.icon {
  inset-inline-end: 0;
}

/* Table */
table {
  border-collapse: collapse;
  border-color: inherit;
  text-indent: 0;
}

table:not([class]) {
  table-layout: fixed;
  border-collapse: collapse;
  font-size: 1.4rem;
  border-style: hidden;
  box-shadow: 0 0 0 0.1rem rgba(var(--color-foreground), 0.2);
  /* draws the table border  */
}

table:not([class]) td,
table:not([class]) th {
  padding: 1em;
  border: 0.1rem solid rgba(var(--color-foreground), 0.2);
}

/* base-details-summary */
details > * {
  box-sizing: border-box;
}

summary {
  cursor: pointer;
  list-style: none;
  position: relative;
}

summary::-webkit-details-marker {
  display: none;
}

/* rte */
.rte:after {
  clear: both;
  content: "";
  display: block;
}

.rte > *:first-child {
  margin-top: 0;
}

.rte > *:last-child {
  margin-bottom: 0;
}

.rte :where(img, iframe) {
  display: inline-block;
}

.rte :where(h1, h2, h3, h4, h5, h6) {
  margin-bottom: 0.85em;
  margin-top: 1em;
}

.rte p {
  margin-bottom: var(--paragraph-bottom-spacing, 1.6rem);
  margin-top: var(--paragraph-top-spacing, 1.6rem);
}
.rte p:first-child {
  margin-top: 0;
}
.rte p:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .rte p {
    --paragraph-bottom-spacing: 2.4rem;
    --paragraph-top-spacing: 2.4rem;
  }
}

.rte table {
  table-layout: fixed;
  width: 100%;
}

@media screen and (min-width: 750px) {
  .rte table td {
    padding-inline: 1.2rem;
  }
}
.rte iframe {
  max-width: 100%;
}

.rte img {
  height: auto;
  max-width: 100%;
  border-radius: var(--medium-blocks-radius);
}

.rte :where(ul, ol) {
  padding-inline-start: 1.6rem;
  margin-block: 1.6rem;
}
.rte :where(ul, ol):first-child {
  margin-top: 0;
}
.rte :where(ul, ol):last-child {
  margin-bottom: 0;
}
.rte :where(ul, ol) :where(ul, ol) {
  margin-block: 0.4rem;
}
.rte :where(ul, ol).liststyle-none {
  list-style: none;
  padding: 0;
}
.rte :where(ul, ol) :where(h1, h2, h3, h4, h5, h6) {
  display: inline-block;
  margin: 0;
}

.rte ul {
  list-style-type: revert;
}

.rte ol {
  list-style-type: decimal;
}

.rte li {
  list-style: inherit;
}
.rte li:last-child {
  margin-bottom: 0;
}

.rte a:not(.btn) {
  color: rgba(var(--color-link, var(--color-foreground)), var(--alpha-link, 1));
  text-underline-offset: 0.3rem;
  text-decoration-thickness: 0.1rem;
  text-decoration-line: underline;
  transition: text-decoration-thickness var(--duration-default) ease;
}
.rte a:not(.btn):hover {
  color: rgb(var(--color-link, var(--color-foreground)));
  text-decoration-thickness: 0.2rem;
}

.rte blockquote {
  display: inline-flex;
}
.rte blockquote > * {
  margin: -0.5rem 0 -0.5rem 0;
}

.page-width {
  margin-inline: auto;
  padding-inline: var(--page-padding);
}

.section--padding {
  padding-block: var(--section-padding-top-mobile, calc(var(--section-padding-top, 0px) * 0.48)) var(--section-padding-bottom-mobile, calc(var(--section-padding-bottom, 0px) * 0.48));
}

:root {
  --page-padding: 1.6rem;
}

@media (min-width: 768px) {
  .section--padding {
    padding-block: calc(var(--section-padding-top, 0px) * 0.75) calc(var(--section-padding-bottom, 0px) * 0.75);
  }
}
@media (min-width: 1024px) {
  :root {
    --page-padding: 5rem;
  }
}
@media (min-width: 1280px) {
  .section--padding {
    padding-block: var(--section-padding-top, 0px) var(--section-padding-bottom, 0px);
  }
}
.e-con {
  --container-default-padding-top: 0;
  --container-default-padding-bottom: 0;
  --container-default-padding-left: 0;
  --container-default-padding-right: 0;
}

.e-con-fixed {
  text-align: var(--text-align);
  padding-block-start: var(--padding-block-start);
  padding-block-end: var(--padding-block-end);
}
.e-con-fixed.e-parent {
  padding-inline: var(--page-padding) !important;
}
.e-con-fixed.e-flex {
  flex-direction: var(--flex-direction);
}

.elementor-element:where(.e-con-fixed) {
  flex-direction: var(--flex-direction);
  flex-wrap: var(--flex-wrap);
  justify-content: var(--justify-content);
  align-items: var(--align-items);
  align-content: var(--align-content);
  gap: var(--row-gap) var(--column-gap);
}

.main-content > [data-elementor-type] > .e-con-full {
  padding-inline: 0;
}

.section__header {
  padding-bottom: var(--section-header-gap);
}
@media (max-width: 767.98px) {
  .section__header {
    padding-bottom: var(--section-header-gap-mobile);
  }
}

.grecaptcha-badge {
  visibility: hidden;
}

.hd1, .hd2, .hd3, .h7,
h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: var(--font-heading-family);
  font-style: var(--font-heading-style);
  font-weight: var(--font-heading-weight);
  letter-spacing: var(--font-heading-letter-spacing, 0);
  text-transform: var(--font-heading-text-transform, none);
  line-height: 1.2;
  word-break: break-word;
  margin: 0;
}

.hd1,
.hd2,
.hd3 {
  font-size: var(--font-h2-size);
  line-height: 1.14286;
}

h1,
.h1 {
  font-size: var(--font-h3-size);
  letter-spacing: -0.022em;
  line-height: 1.2;
}

h2,
.h2 {
  font-size: var(--font-h4-size);
  line-height: 1.25;
}

h3,
.h3 {
  font-size: var(--font-h5-size);
  line-height: 1.3334;
  letter-spacing: 0;
}

h4,
.h4 {
  font-size: var(--font-h5-size);
  line-height: 1.3334;
}

h5,
.h5,
h6,
.h6 {
  font-size: var(--font-h6-size);
  line-height: 1.55556;
}

.h7 {
  font-size: 1.6rem;
  line-height: 1.625;
}

.text-subheading, .text-subheading-sm {
  font-family: var(--font-subheading-family);
  font-weight: var(--font-subheading-weight);
  text-transform: var(--font-subheading-text-transform);
  letter-spacing: var(--font-subheading-letter-spacing, 0);
  font-size: 1.6rem;
  line-height: 1.5;
}

.font-body {
  font-family: var(--font-body-family) !important;
  font-weight: var(--font-body-weight) !important;
  font-style: var(--font-body-style) !important;
}

.font-heading {
  font-family: var(--font-heading-family) !important;
  font-weight: var(--font-heading-weight) !important;
  font-style: var(--font-heading-style) !important;
}

.text-xs {
  font-size: calc(var(--font-body-size) * 0.8);
  line-height: 2.2rem;
}

.text-md {
  font-size: var(--font-body-size);
  line-height: var(--font-body-line-height);
}

.text-lg {
  font-size: var(--font-body-size);
  line-height: var(--font-body-line-height);
}

.link-xs,
.link-sm {
  font-family: var(--font-heading-family) !important;
  font-weight: var(--font-heading-weight) !important;
  font-style: var(--font-heading-style) !important;
  text-transform: uppercase;
}

.text-sm,
.link-xs,
.link-sm {
  font-size: 1.4rem;
  line-height: 1.71429;
}

@media only screen and (min-width: 768px) {
  .hd1 {
    font-size: calc(var(--font-hd1-size) * 0.7);
    line-height: 1.1;
  }
  .hd2 {
    font-size: calc(var(--font-hd2-size) * 0.7);
    line-height: 1.1;
  }
  .hd3 {
    font-size: calc(var(--font-hd3-size) * 0.7);
    line-height: 1;
  }
  h1, .h1 {
    font-size: calc(var(--font-h1-size) * 0.7);
    line-height: 1.1;
  }
  h2, .h2 {
    font-size: calc(var(--font-h2-size) * 0.7);
    line-height: 1.14286;
  }
  h3, .h3 {
    font-size: calc(var(--font-h3-size) * 0.7);
    letter-spacing: -0.022em;
    line-height: 1.2;
  }
  h4, .h4 {
    font-size: calc(var(--font-h4-size) * 0.7);
    line-height: 1.25;
  }
  h5, .h5 {
    font-size: calc(var(--font-h5-size) * 0.7);
    line-height: 1.3334;
  }
  .text-subheading {
    font-size: 2rem;
    line-height: 1.4;
  }
  .text-subheading-sm {
    font-size: 1.8rem;
    line-height: 1.44445;
  }
  .text-sm,
  .link-sm {
    font-size: 1.6rem;
    line-height: 1.625;
  }
  .text-lg {
    font-size: 2rem;
    line-height: 3rem;
  }
}
@media only screen and (min-width: 1024px) {
  .hd1 {
    font-size: min(var(--font-hd1-size), 10.62vw);
  }
  .hd2 {
    font-size: min(var(--font-hd2-size), 8.85vw);
  }
  .hd3 {
    font-size: min(var(--font-hd3-size), 7.08vw);
  }
  h1, .h1 {
    font-size: min(var(--font-h1-size), 4.72vw);
  }
  h2, .h2 {
    font-size: var(--font-h2-size);
  }
  h3, .h3 {
    font-size: var(--font-h3-size);
  }
  h4, .h4 {
    font-size: var(--font-h4-size);
  }
  h5, .h5 {
    font-size: var(--font-h5-size);
  }
  .text-lg {
    font-size: 2.2rem;
    line-height: 1.45455;
  }
}
@media only screen and (min-width: 1280px) {
  .hd1 {
    font-size: 10.62vw;
  }
  .hd2 {
    font-size: 8.85vw;
  }
  .hd3 {
    font-size: 7.08vw;
  }
  h1, .h1 {
    font-size: 4.72vw;
  }
}
.f-grid {
  --f-grid-columns: var(--f-columns-mobile);
  --f-column-gap: var(--f-column-gap-mobile);
  --f-row-gap: var(--f-row-gap-mobile);
  --f-grid-template: auto-flow dense/repeat(var(--f-grid-columns), minmax(0, 1fr));
  display: grid;
  grid: var(--f-grid-template);
  gap: var(--f-row-gap, 0px) var(--f-column-gap, 0px);
}
@media (min-width: 768px) {
  .f-grid {
    --f-grid-columns: var(--f-columns-md, var(--f-columns-mobile));
    --f-column-gap: var(--f-column-gap-md, var(--f-column-gap-mobile));
    --f-row-gap: var(--f-row-gap-md, var(--f-row-gap-mobile));
  }
}
@media (min-width: 1024px) {
  .f-grid {
    --f-grid-columns: var(--f-columns-lg, var(--f-columns-md, var(--f-columns-mobile)));
    --f-column-gap: var(--f-column-gap-lg, var(--f-column-gap-md, var(--f-column-gap-mobile)));
    --f-row-gap: var(--f-row-gap-lg, var(--f-row-gap-md, var(--f-row-gap-mobile)));
  }
}
@media (min-width: 1280px) {
  .f-grid {
    --f-grid-columns: var(--f-columns-xl, var(--f-columns-lg, var(--f-columns-md, var(--f-columns-mobile))));
    --f-column-gap: var(--f-column-gap-xl, var(--f-column-gap-lg, var(--f-column-gap-md, var(--f-column-gap-mobile))));
    --f-row-gap: var(--f-row-gap-xl, var(--f-row-gap-lg, var(--f-row-gap-md, var(--f-row-gap-mobile))));
  }
}
@media (min-width: 1536px) {
  .f-grid {
    --f-grid-columns: var(
    		--f-columns-xxl,
    		var(--f-columns-xl, var(--f-columns-lg, var(--f-columns-md, var(--f-columns-mobile))))
    );
    --f-column-gap: var(
    		--f-column-gap-xxl,
    		var(--f-column-gap-xl, var(--f-column-gap-lg, var(--f-column-gap-md, var(--f-column-gap-mobile))))
    );
    --f-row-gap: var(
    		--f-row-gap-xxl,
    		var(--f-row-gap-xl, var(--f-row-gap-lg, var(--f-row-gap-md, var(--f-row-gap-mobile))))
    );
  }
}

.f-flex {
  --f-column-gap: var(--f-column-gap-mobile);
  --f-row-gap: var(--f-row-gap-mobile);
  display: flex;
  flex-wrap: wrap;
  margin: 0 calc(var(--f-column-gap) / -2);
  gap: var(--f-row-gap) 0;
}
.f-flex > .f-column {
  padding: 0 calc(var(--f-column-gap, 0) / 2);
}
@media (min-width: 768px) {
  .f-flex {
    --f-column-gap: var(--f-column-gap-md, var(--f-column-gap-mobile));
    --f-row-gap: var(--f-row-gap-md, var(--f-row-gap-mobile));
  }
}
@media (min-width: 1024px) {
  .f-flex {
    --f-column-gap: var(--f-column-gap-lg, var(--f-column-gap-md, var(--f-column-gap-mobile)));
    --f-row-gap: var(--f-row-gap-lg, var(--f-row-gap-md, var(--f-row-gap-mobile)));
  }
}
@media (min-width: 1280px) {
  .f-flex {
    --f-column-gap: var(--f-column-gap-xl, var(--f-column-gap-lg, var(--f-column-gap-md, var(--f-column-gap-mobile))));
    --f-row-gap: var(--f-row-gap-xl, var(--f-row-gap-lg, var(--f-row-gap-md, var(--f-row-gap-mobile))));
  }
}
@media (min-width: 1536px) {
  .f-flex {
    --f-column-gap: var(
    		--f-column-gap-xxl,
    		var(--f-column-gap-xl, var(--f-column-gap-lg, var(--f-column-gap-md, var(--f-column-gap-mobile))))
    );
    --f-row-gap: var(
    		--f-row-gap-xxl,
    		var(--f-row-gap-xl, var(--f-row-gap-lg, var(--f-row-gap-md, var(--f-row-gap-mobile))))
    );
  }
}

.f-grid--gap-extra-large {
  --f-column-gap-xl: 10rem;
  --f-column-gap-md: 3rem;
  --f-column-gap-mobile: 2.4rem;
  --f-row-gap-mobile: 3.2rem;
}
.f-grid--gap-large {
  --f-column-gap-xl: 5rem;
  --f-column-gap-md: 3rem;
  --f-column-gap-mobile: 1.2rem;
  --f-row-gap-mobile: 2.4rem;
}
.f-grid--gap-medium {
  --f-column-gap-xl: 3rem;
  --f-column-gap-md: 3rem;
  --f-column-gap-mobile: 1.2rem;
}
.f-grid--gap-small {
  --f-column-gap-xl: 2rem;
  --f-column-gap-md: 2rem;
  --f-column-gap-mobile: 1.2rem;
}
.f-grid--gap-extra-small {
  --f-column-gap-xl: 1.2rem;
  --f-column-gap-md: 1.2rem;
  --f-column-gap-mobile: 1.2rem;
}
.f-grid--gap-2xs {
  --f-column-gap-xl: 0.8rem;
  --f-column-gap-md: 0.8rem;
  --f-column-gap-mobile: 0.8rem;
}
.f-grid--gap-2xs.mobile-columns--3 {
  --f-column-gap-mobile: 0.4rem;
}
.f-grid--gap-none {
  --f-column-gap-xl: 0px;
  --f-column-gap-md: 0px;
  --f-column-gap-mobile: 0px;
}

.f-grid--row-gap-inherit {
  --f-row-gap-xl: var(--f-column-gap-xl);
  --f-row-gap-md: var(--f-column-gap-md);
  --f-row-gap-mobile: var(--f-column-gap-mobile);
}
.f-grid--row-gap-none {
  --f-row-gap-xl: 0px;
  --f-row-gap-md: 0px;
  --f-row-gap-mobile: 0px;
}
.f-grid--row-gap-2xs {
  --f-row-gap-xl: 0.5rem;
  --f-row-gap-md: 0.5rem;
  --f-row-gap-mobile: 1.2rem;
}
.f-grid--row-gap-extra-small {
  --f-row-gap-xl: 1.2rem;
  --f-row-gap-md: 1.2rem;
  --f-row-gap-mobile: 1.2rem;
}
.f-grid--row-gap-small {
  --f-row-gap-xl: 1.6rem;
  --f-row-gap-md: 1.6rem;
  --f-row-gap-mobile: 1.6rem;
}
.f-grid--row-gap-medium {
  --f-row-gap-xl: 3rem;
  --f-row-gap-md: 3rem;
  --f-row-gap-mobile: 1.6rem;
}
.f-grid--row-gap-large {
  --f-row-gap-xl: 4rem;
  --f-row-gap-md: 3rem;
  --f-row-gap-mobile: 2.4rem;
}
.f-grid--row-gap-extra-large {
  --f-row-gap-xl: 6rem;
  --f-row-gap-md: 3rem;
  --f-row-gap-mobile: 3.6rem;
}

.w-1\/2 {
  width: 50%;
}

.w-1\/3 {
  width: 33.33%;
}

.w-2\/3 {
  width: 66.666667%;
}

.w-1\/4 {
  width: 25%;
}

.w-1\/5 {
  width: 20%;
}

.w-4\/5 {
  width: 80%;
}

.w-full {
  width: 100%;
}

.w-auto {
  width: auto;
}

.h-full {
  height: 100%;
}

.h-auto {
  height: auto;
}

.max-w-full {
  max-width: 100%;
}

.min-height-screen {
  min-height: calc(100dvh - var(--wp-admin--admin-bar--height, 0px));
}

.w-1\/12 {
  width: 8.3333333333%;
}

.w-2\/12 {
  width: 16.6666666667%;
}

.w-3\/12 {
  width: 25%;
}

.w-4\/12 {
  width: 33.3333333333%;
}

.w-5\/12 {
  width: 41.6666666667%;
}

.w-6\/12 {
  width: 50%;
}

.w-7\/12 {
  width: 58.3333333333%;
}

.w-8\/12 {
  width: 66.6666666667%;
}

.w-9\/12 {
  width: 75%;
}

.w-10\/12 {
  width: 83.3333333333%;
}

.w-11\/12 {
  width: 91.6666666667%;
}

.w-12\/12 {
  width: 100%;
}

@media (min-width: 768px) {
  .md\:w-1\/2 {
    width: 50%;
  }
  .md\:w-1\/3 {
    width: 33.33%;
  }
  .md\:w-2\/3 {
    width: 66.666667%;
  }
  .md\:w-1\/4 {
    width: 25%;
  }
  .md\:w-1\/5 {
    width: 20%;
  }
  .md\:w-4\/5 {
    width: 80%;
  }
  .md\:w-full {
    width: 100%;
  }
  .md\:w-auto {
    width: auto;
  }
  .md\:w-1\/12 {
    width: 8.3333333333%;
  }
  .md\:w-2\/12 {
    width: 16.6666666667%;
  }
  .md\:w-3\/12 {
    width: 25%;
  }
  .md\:w-4\/12 {
    width: 33.3333333333%;
  }
  .md\:w-5\/12 {
    width: 41.6666666667%;
  }
  .md\:w-6\/12 {
    width: 50%;
  }
  .md\:w-7\/12 {
    width: 58.3333333333%;
  }
  .md\:w-8\/12 {
    width: 66.6666666667%;
  }
  .md\:w-9\/12 {
    width: 75%;
  }
  .md\:w-10\/12 {
    width: 83.3333333333%;
  }
  .md\:w-11\/12 {
    width: 91.6666666667%;
  }
  .md\:w-12\/12 {
    width: 100%;
  }
}
@media (min-width: 1024px) {
  .lg\:w-1\/2 {
    width: 50%;
  }
  .lg\:w-1\/3 {
    width: 33.33%;
  }
  .lg\:w-2\/3 {
    width: 66.666667%;
  }
  .lg\:w-1\/4 {
    width: 25%;
  }
  .lg\:w-1\/5 {
    width: 20%;
  }
  .lg\:w-4\/5 {
    width: 80%;
  }
  .lg\:w-full {
    width: 100%;
  }
  .lg\:w-auto {
    width: auto;
  }
  .lg\:w-1\/12 {
    width: 8.3333333333%;
  }
  .lg\:w-2\/12 {
    width: 16.6666666667%;
  }
  .lg\:w-3\/12 {
    width: 25%;
  }
  .lg\:w-4\/12 {
    width: 33.3333333333%;
  }
  .lg\:w-5\/12 {
    width: 41.6666666667%;
  }
  .lg\:w-6\/12 {
    width: 50%;
  }
  .lg\:w-7\/12 {
    width: 58.3333333333%;
  }
  .lg\:w-8\/12 {
    width: 66.6666666667%;
  }
  .lg\:w-9\/12 {
    width: 75%;
  }
  .lg\:w-10\/12 {
    width: 83.3333333333%;
  }
  .lg\:w-11\/12 {
    width: 91.6666666667%;
  }
  .lg\:w-12\/12 {
    width: 100%;
  }
}
@media (min-width: 1280px) {
  .xl\:w-1\/2 {
    width: 50%;
  }
  .xl\:w-1\/3 {
    width: 33.33%;
  }
  .xl\:w-2\/3 {
    width: 66.666667%;
  }
  .xl\:w-1\/4 {
    width: 25%;
  }
  .xl\:w-1\/5 {
    width: 20%;
  }
  .xl\:w-4\/5 {
    width: 80%;
  }
  .xl\:w-full {
    width: 100%;
  }
  .xl\:w-auto {
    width: auto;
  }
  .xl\:w-1\/12 {
    width: 8.3333333333%;
  }
  .xl\:w-2\/12 {
    width: 16.6666666667%;
  }
  .xl\:w-3\/12 {
    width: 25%;
  }
  .xl\:w-4\/12 {
    width: 33.3333333333%;
  }
  .xl\:w-5\/12 {
    width: 41.6666666667%;
  }
  .xl\:w-6\/12 {
    width: 50%;
  }
  .xl\:w-7\/12 {
    width: 58.3333333333%;
  }
  .xl\:w-8\/12 {
    width: 66.6666666667%;
  }
  .xl\:w-9\/12 {
    width: 75%;
  }
  .xl\:w-10\/12 {
    width: 83.3333333333%;
  }
  .xl\:w-11\/12 {
    width: 91.6666666667%;
  }
  .xl\:w-12\/12 {
    width: 100%;
  }
}
@media (min-width: 1536px) {
  .xxl\:w-1\/2 {
    width: 50%;
  }
  .xxl\:w-1\/3 {
    width: 33.33%;
  }
  .xxl\:w-2\/3 {
    width: 66.666667%;
  }
  .xxl\:w-1\/4 {
    width: 25%;
  }
  .xxl\:w-1\/5 {
    width: 20%;
  }
  .xxl\:w-4\/5 {
    width: 80%;
  }
  .xxl\:w-full {
    width: 100%;
  }
  .xxl\:w-auto {
    width: auto;
  }
  .xxl\:w-1\/12 {
    width: 8.3333333333%;
  }
  .xxl\:w-2\/12 {
    width: 16.6666666667%;
  }
  .xxl\:w-3\/12 {
    width: 25%;
  }
  .xxl\:w-4\/12 {
    width: 33.3333333333%;
  }
  .xxl\:w-5\/12 {
    width: 41.6666666667%;
  }
  .xxl\:w-6\/12 {
    width: 50%;
  }
  .xxl\:w-7\/12 {
    width: 58.3333333333%;
  }
  .xxl\:w-8\/12 {
    width: 66.6666666667%;
  }
  .xxl\:w-9\/12 {
    width: 75%;
  }
  .xxl\:w-10\/12 {
    width: 83.3333333333%;
  }
  .xxl\:w-11\/12 {
    width: 91.6666666667%;
  }
  .xxl\:w-12\/12 {
    width: 100%;
  }
}
:root {
  --swiper-navigation-size: 4.8rem;
  --swiper-navigation-icon-size: 2rem;
  --swiper-navigation-offset-x: 2.4rem;
  --swiper-pagination-bullet-size: 1rem;
  --swiper-pagination-bullet-horizontal-gap: 0.6rem;
  --swiper-pagination-bullet-vertical-gap: 0.6rem;
}
@media (max-width: 767.98px) {
  :root {
    --swiper-pagination-bullet-size: 0.8rem;
  }
}

/**
 * Fix swiper ver 8 not working with vars in ver 11.
 * Remove these if using ver 11.
 */
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: var(--swiper-pagination-bottom, 8px);
}

.swiper {
  z-index: 0;
}

.swiper-initialized.swiper-equal-height .swiper-slide {
  height: auto;
}

.swiper-button {
  --buttons-border-width: 0.1rem;
  --swiper-nav-mt: calc(var(--swiper-controls-top-offset, 0rem) + var(--swiper-pagination-height, 0rem));
  text-align: center;
  width: var(--swiper-navigation-size);
  color: rgb(var(--color-foreground));
  background-color: rgb(var(--color-background));
  border: var(--buttons-border-width) solid rgba(var(--color-foreground), 0.2);
  border-radius: 50%;
  padding: 0;
  flex-shrink: 0;
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2 - var(--swiper-nav-mt, 0) / 2);
}
.swiper-button-prev {
  inset-inline: var(--swiper-navigation-offset-x) auto;
}
.swiper-button-next {
  inset-inline: auto var(--swiper-navigation-offset-x);
}
@media (max-width: 767.98px) {
  .swiper-button svg {
    width: 1.6rem;
    height: 1.6rem;
  }
}
.swiper-button:after {
  position: absolute !important;
  content: "" !important;
}
.swiper-button.btn {
  --buttons-height: var(--swiper-navigation-size);
}
.swiper-button-lock {
  display: none;
}
.swiper-button.swiper-button-disabled {
  pointer-events: auto;
}
.swiper-button--blank {
  --swiper-navigation-size: 2.4rem;
  background: none !important;
  border: 0 !important;
  color: inherit !important;
  width: var(--swiper-navigation-size);
  height: var(--swiper-navigation-size);
}
@media (max-width: 767.98px) {
  .swiper-button--blank-mobile {
    --swiper-navigation-size: 2.4rem;
    background: none !important;
    box-shadow: none !important;
    border: 0 !important;
    color: inherit !important;
    width: var(--swiper-navigation-size);
    height: var(--swiper-navigation-size);
  }
  .swiper-button--blank-mobile .btn__text {
    transform: none !important;
  }
  .swiper-button--blank-mobile:before, .swiper-button--blank-mobile:after {
    display: none !important;
  }
}
.swiper-button--drop-shadow {
  --buttons-border-width: 0px;
  box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.12);
}
.swiper-button .btn__text {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}
.swiper-button:not(.swiper-button--blank)::before {
  position: absolute;
  content: "";
  top: -0.1rem;
  width: 0;
  bottom: -0.1rem;
  left: -0.1rem;
  background-color: rgb(var(--color-foreground));
  transition: width var(--animation-button);
  z-index: 0;
  border-radius: inherit;
}

@media (hover: hover) {
  .swiper-button:not(.swiper-button--blank):hover {
    color: rgb(var(--color-background));
  }
  .swiper-button:not(.swiper-button--blank):hover::before {
    width: calc(100% + var(--buttons-border-width, 0px));
  }
}
.swiper-pagination {
  display: flex;
  line-height: 1;
  justify-content: center;
}
.swiper-pagination.swiper-pagination-lock {
  display: none;
}

.swiper-pagination-bullet {
  position: relative;
  opacity: 1;
  background: var(--swiper-pagination-bullet-inactive-color, rgba(var(--color-swiper-controls), 0.4));
  transition: all 0.3s;
  border-radius: 1rem;
}
.swiper-pagination-bullet:before {
  content: "";
  position: absolute;
  inset: -0.6rem;
}
.swiper-pagination-bullet:after {
  content: "";
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  border-radius: 1rem;
  background: var(--swiper-pagination-color, rgb(var(--color-swiper-controls)));
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: 100%;
  transition: all 0.3s;
  opacity: 0;
}
.swiper-pagination-bullet.swiper-pagination-bullet-active:after {
  opacity: 1;
}

.swiper-show-nav-on-hover:has(.swiper-controls--nav-floating) {
  position: relative;
}
@media (min-width: 768px) {
  .swiper-show-nav-on-hover:has(.swiper-controls--nav-floating) {
    --swiper-navigation-offset-x: calc(-1 * var(--swiper-navigation-size) / 2);
  }
  .page-width--full .swiper-show-nav-on-hover:has(.swiper-controls--nav-floating) {
    --swiper-navigation-offset-x: 0;
  }
  .swiper-show-nav-on-hover:has(.swiper-controls--nav-floating) .swiper-button {
    transition: all 0.3s;
    opacity: 0;
    visibility: hidden;
    transform: translateX(var(--swiper-button-transform-x));
  }
  .swiper-show-nav-on-hover:has(.swiper-controls--nav-floating) .swiper-button-prev {
    --swiper-button-transform-x: calc(-1 * var(--swiper-navigation-size) / 2);
  }
  .swiper-show-nav-on-hover:has(.swiper-controls--nav-floating) .swiper-button-next {
    --swiper-button-transform-x: calc(var(--swiper-navigation-size) / 2);
  }
  .swiper-show-nav-on-hover:has(.swiper-controls--nav-floating):hover .swiper-button {
    --swiper-button-transform-x: 0;
    opacity: 1;
    visibility: visible;
  }
  .swiper-show-nav-on-hover:has(.swiper-controls--nav-floating):hover .swiper-button.swiper-button-disabled {
    opacity: 0.5;
  }
}

.swiper-controls {
  --color-swiper-controls: var(--color-foreground);
  --swiper-controls-top-offset: 2.4rem;
  display: flex;
  align-items: center;
  column-gap: 1.2rem;
  margin-top: var(--swiper-controls-top-offset);
}
.swiper-controls:has(.swiper-button--blank) {
  column-gap: 0.3rem;
}
@media (max-width: 767.98px) {
  .swiper-controls {
    --swiper-controls-top-offset: 3.2rem;
  }
}
.swiper-controls .swiper-pagination {
  position: static;
  width: auto;
}
.swiper-controls .swiper-pagination-fraction {
  transition: 0.3s all;
  min-width: 3.4rem;
}
.swiper-controls--pagination-bullets .swiper-pagination-bullet:after {
  width: 0;
}
.swiper-controls--pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 5rem;
  background: rgba(var(--color-swiper-controls), 0.2);
  overflow: hidden;
}
.swiper-controls--pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active:after {
  width: 100%;
  transition: opacity 0.3s, width var(--swiper-autoplay-delay, 0.3s);
}
@media (max-width: 767.98px) {
  .swiper-controls--pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 4rem;
  }
}
.swiper-controls--pagination-progressbar {
  --swiper-pagination-color: rgb(var(--color-foreground));
}
.swiper-controls--pagination-progressbar .swiper-pagination-progressbar {
  --swiper-pagination-progressbar-bg-color: rgba(var(--color-foreground), 0.1);
  background: var(--swiper-pagination-progressbar-bg-color);
  flex: 1;
}
.swiper-controls--pagination-progressbar .swiper-pagination-progressbar.swiper-pagination-horizontal {
  --swiper-pagination-progressbar-size: 0.2rem;
  height: var(--swiper-pagination-progressbar-size, 0.4rem);
}
.swiper-controls--nav-floating {
  --swiper-controls-top-offset: 0rem;
}
.swiper-controls--nav-floating:has(.swiper-pagination:not(:empty)) {
  --swiper-controls-top-offset: 4rem;
  margin-top: var(--swiper-controls-top-offset);
}
@media (max-width: 767.98px) {
  .swiper-controls--nav-floating:has(.swiper-pagination:not(:empty)) {
    --swiper-controls-top-offset: 3.2rem;
  }
}
.swiper-controls--nav-floating:has(.swiper-pagination-progressbar) {
  --swiper-pagination-height: 0.2rem;
}
.swiper-controls--nav-floating:has(.swiper-pagination-bullets) {
  --swiper-pagination-height: 1rem;
}
.swiper-controls--grouped:has([class*=swiper-button--blank]) {
  margin-inline: -0.7rem;
}
.swiper-controls--grouped .swiper-button {
  position: relative;
  inset: auto;
  margin-top: 0;
}
.swiper-controls--grouped .swiper-pagination-progressbar {
  order: -1;
  margin-inline-end: 1.6rem;
}
@media (max-width: 767.98px) {
  .swiper-controls--grouped-mobile:has([class*=swiper-button--blank]) {
    margin-inline: -0.7rem;
    column-gap: 0;
  }
  .swiper-controls--grouped-mobile .swiper-button {
    position: relative;
    inset: auto;
    margin-top: 0;
  }
  .swiper-controls--grouped-mobile .swiper-button:before, .swiper-controls--grouped-mobile .swiper-button:after {
    display: none;
  }
  .swiper-controls--grouped-mobile .swiper-pagination-progressbar {
    order: -1;
    margin-inline-end: 1.6rem;
  }
}
.swiper-controls--float-bottom {
  position: absolute;
  bottom: var(--swiper-controls-bottom-offset, 3rem);
  inset-inline: 0 auto;
  margin-top: 0 !important;
  pointer-events: none;
  width: 100%;
}
.swiper-controls--float-bottom * {
  pointer-events: auto;
}
@media (max-width: 767.98px) {
  .swiper-controls--float-bottom {
    --swiper-controls-bottom-offset: 2rem;
  }
}

.form-fields {
  --field-gap-x: 4.8rem;
  --field-gap-y: 4.8rem;
  display: flex;
  flex-wrap: wrap;
  gap: var(--field-gap-y) var(--field-gap-x);
}
@media (min-width: 768px) {
  .form-fields {
    --field-gap-x: 6rem;
    --field-gap-y: 6rem;
  }
}
.form-field {
  width: 100%;
}
.form-field--1\/2 {
  width: calc((100% - var(--field-gap-x)) / 2);
}
.form-field br {
  display: none;
}
.form-field p {
  margin: 0;
}
.form-control {
  outline: none;
  box-shadow: none;
  color: rgb(var(--color-foreground));
  background-color: rgba(var(--color-field), var(--color-field-alpha, 1));
  border-radius: var(--inputs-radius);
  border: 0;
  border-bottom: var(--inputs-border-width) solid rgba(var(--color-border));
  line-height: calc(var(--inputs-height) - var(--inputs-border-width));
  padding: 0 0rem;
  width: 100%;
  font-family: var(--font-body-family);
  font-weight: var(--font-body-weight);
  font-size: var(--font-body-size);
  transition: 0.3s all;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
}
.form-control--textarea {
  resize: vertical;
  line-height: 2.4rem;
  padding: 1rem 0rem;
  border-radius: var(--textareas-radius);
  min-height: 11.8rem;
}
.form-control--plain {
  background-color: transparent;
  border: none;
  padding: 0;
  color: inherit;
}
.form-control--select {
  padding-inline-end: 1.6rem;
  cursor: pointer;
}
.form-control--select ~ .icon {
  color: rgb(var(--color-field-text));
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  inset-inline-end: 1.6rem;
  pointer-events: none;
}
.form-control--select.form-control--plain {
  padding-inline-end: 1.6rem;
}
.form-control--select.form-control--plain ~ .icon {
  color: inherit;
  inset-inline-end: 0;
}
.form-control:focus, .form-control:focus-visible {
  outline: 0;
  background-color: rgb(var(--color-background));
  color: rgb(var(--color-foreground));
}
.form-control:focus::placeholder, .form-control:focus-visible::placeholder {
  opacity: 0;
}
.form-control::placeholder {
  transition: 0.3s all;
  color: rgba(var(--color-foreground), 0.3);
}
.form-control:-webkit-autofill, .form-control:-webkit-autofill:hover, .form-control:-webkit-autofill:focus {
  -webkit-text-fill-color: #fff;
  -webkit-box-shadow: 0 0 0px 40rem #000 inset;
}
.form-control::selection {
  background-color: rgba(var(--color-field-text), 0.2);
}
.form-message {
  display: flex;
}
.form-message:not(:is(h1, h2, h3, h4, h5, h6)) {
  font-size: var(--font-body-size);
}
.form-message:not(:is(h1, h2, h3, h4, h5, h6)) svg {
  transform: translateY(0.3rem);
}
.form-field .form-message {
  margin-top: 0.8rem;
}
.form-message--small {
  font-size: calc(var(--font-body-size) * 0.9);
  line-height: 2.2rem;
}
.form-message--error {
  color: #c4301c;
}
.form-message--success {
  color: #0d8756;
}
.form-message--warning {
  color: #cea100;
}
.form-message svg {
  margin-inline-end: 0.8rem;
  transform: translateY(0.5rem);
  flex-shrink: 0;
}
.form-label {
  margin: 0 0 0.8rem;
  display: block;
}

.select {
  display: flex;
  position: relative;
  width: 100%;
}

.form-select {
  border: none;
  background-color: transparent;
  font-size: inherit;
}

/* checkbox */
input:is([type=checkbox], [type=radio]) {
  --active: rgb(var(--color-foreground));
  --active-inner: rgb(var(--color-background));
  --focus: 0.3rem hsla(0, 0%, 9%, 0.1);
  --border: rgb(var(--color-foreground), 0.6);
  --border-radius: 0.2rem;
  --border-hover: rgb(var(--color-foreground));
  --background: rgb(var(--color-background));
  appearance: none;
  width: var(--checkbox-size, 2rem);
  height: var(--checkbox-size, 2rem);
  background: var(--b, var(--background));
  border: 1px solid var(--bc, var(--border));
  cursor: pointer;
  display: inline-block;
  margin: 0;
  outline: none;
  position: relative;
  transition: background-color 0.3s, border-color 0.3s, box-shadow 0.2s;
  vertical-align: top;
  border-radius: var(--border-radius);
  flex: 0 0 auto;
}
input:is([type=checkbox], [type=radio])::after {
  content: "";
  display: block;
  position: absolute;
  border: 2px solid var(--active-inner);
  border-inline-start: 0;
  border-block-start: 0;
  width: calc(var(--checkbox-size, 2rem) * 0.3);
  height: calc(var(--checkbox-size, 2rem) * 0.6);
  inset-block-start: 50%;
  inset-inline-start: 50%;
  transform: translate(-50%, -63%) rotate(43deg);
}
input:is([type=checkbox], [type=radio]):checked {
  --b: var(--active);
  --bc: var(--active);
}
input:is([type=checkbox], [type=radio]):hover:not(:checked, :disabled, .disabled), input:is([type=checkbox], [type=radio]):focus:not(:checked, :disabled, .disabled) {
  --bc: var(--border-hover);
}

input:is([type=checkbox], [type=radio]) + label {
  cursor: pointer;
}

input:is([type=checkbox], [type=radio]):is(:disabled, .disabled),
input:is([type=checkbox], [type=radio]):is(:disabled, .disabled) + label {
  cursor: not-allowed;
  opacity: 0.6;
}

input:is([type=checkbox], [type=radio]):focus-visible + label {
  outline: 0.2rem solid rgb(var(--color-keyboard-focus));
  outline-offset: 0.2rem;
}

input:is([type=checkbox], [type=radio]):focus {
  box-shadow: 0 0 0 3px hsla(0, 0%, 9%, 0.1);
}

input:is([type=radio]) {
  --border-radius: 50%;
}
input:is([type=radio])::after {
  width: 0.6rem;
  height: 0.6rem;
  inset-inline-start: 0.5rem;
  inset-block-start: 0.5rem;
  border: none;
  background: var(--active-inner);
  border-radius: var(--border-radius);
}

.wpcf7-form br {
  display: none;
}
.wpcf7-form p {
  margin: 0;
}
.wpcf7-form-control-wrap {
  display: block;
  position: relative;
}
.wpcf7-form-control-wrap:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: rgb(var(--color-foreground));
  transition: transform var(--animation-long);
  transform: scaleX(0);
  transform-origin: right;
}
.wpcf7-form-control-wrap:has(:focus, :focus-visible):after {
  transform: scaleX(1);
  transform-origin: left;
}
.wpcf7-not-valid-tip {
  position: absolute;
  top: 100%;
  font-size: 1.6rem !important;
  line-height: 2.6rem;
  transform: translateY(0.6rem);
}

@supports (-webkit-overflow-scrolling: touch) {
  .form-control {
    font-size: 1.6rem !important;
  }
}
@media (min-width: 768px) {
  .form-control--textarea {
    min-height: 16.2rem;
  }
  .md\:form-field--1\/2 {
    width: calc((100% - var(--field-gap-x)) / 2);
  }
}
button,
.btn {
  font-size: 100%;
  position: relative;
  z-index: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0 var(--buttons-gap, 0.6rem);
  transition: background 0.3s, color 0.3s;
  white-space: nowrap;
  background: none;
  color: rgb(var(--color-foreground));
  border: var(--buttons-border-width) solid rgba(var(--color-border));
  border-radius: var(--buttons-radius, 0);
  padding: 0 var(--buttons-padding, 2rem);
  height: var(--buttons-height);
  line-height: 26px;
  font-family: var(--font-button-family);
  font-weight: var(--font-button-weight);
  letter-spacing: var(--buttons-letter-spacing, 0);
  text-transform: var(--buttons-transform, uppercase);
  box-sizing: border-box;
}
button[disabled], button[aria-disabled=true],
.btn[disabled],
.btn[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}
button .button-icon,
.btn .button-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}
button svg,
.btn svg {
  z-index: 1;
}

button,
a[href] {
  cursor: pointer;
}

.btn .btn__label {
  transition: transform 0.3s cubic-bezier(0, 0, 0.3, 1);
  will-change: transform;
}
.btn:hover .btn__label-normal {
  transform: translate3d(0, -100%, 0);
}
.btn:hover .btn__label-hover {
  transform: translate3d(0, 0, 0);
}

.btn--primary {
  --color-border: var(--color-button-border);
  background: rgb(var(--color-button-background));
  color: rgb(var(--color-button-text));
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.15);
}
.btn--blur {
  border: 0;
  color: rgba(var(--color-button-background));
  background: rgba(var(--color-button-background), 0.1);
  backdrop-filter: blur(12px);
}
.btn--outline {
  --color-border: $color-border-2;
  background-color: transparent;
  color: rgba(var(--color-foreground), 0.8);
  border: 2px solid rgba(var(--color-foreground), 0.13);
  font-family: var(--font-body-family);
  font-weight: var(--font-body-weight);
  font-style: var(--font-body-style);
  font-size: 1.6rem;
  text-transform: none;
  letter-spacing: 0;
}
.btn--outline:hover {
  --color-border: var(--color-button-border);
  background: rgb(var(--color-button-background));
  color: rgb(var(--color-button-text));
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.15);
}
.btn--outline.btn--large {
  --buttons-padding: 2rem;
  font-size: 2.2rem;
  line-height: 1.45454;
  height: calc(var(--buttons-height) + 8px);
}
@media (max-width: 767.98px) {
  .btn--outline.btn--large {
    --buttons-padding: 1.2rem;
    font-size: 1.4rem;
    line-height: 2.4rem;
    height: calc(var(--buttons-height) - 8px);
  }
}
.btn--plain {
  padding: 0;
  background: none !important;
  border: none !important;
  height: auto !important;
  line-height: 1.6;
}
.btn--plain:after {
  content: "";
  position: absolute;
  width: 0;
  height: 1px;
  inset-inline-end: 0;
  bottom: 0;
  transition: 0.3s all;
  background-color: rgb(var(--color-foreground));
}
.btn--plain:hover::after {
  inset-inline-end: auto;
  inset-inline-start: 0;
  width: calc(100% - var(--button-icon-width, 0rem));
}
.btn-extra-small {
  font-size: 1.4rem;
  line-height: 2.4rem;
}
.btn--small {
  font-size: 1.6rem;
  line-height: 2.6rem;
  --buttons-width: calc(var(--buttons-height) - 8px);
  --buttons-padding: 1.6rem;
  height: calc(var(--buttons-height) - 8px);
}
.btn--medium {
  --buttons-width: var(--buttons-height);
  --buttons-padding: 2rem;
  height: var(--buttons-height);
}
.btn--large {
  font-size: 3.2rem;
  line-height: 1.375;
}
@media (max-width: 767.98px) {
  .btn--outline {
    --buttons-padding: 1rem;
    font-size: 1.4rem;
    line-height: 2.4rem;
    height: calc(var(--buttons-height) - 8px);
  }
}

.link-with-arrow {
  --line-thickness: 0.2rem;
  font-size: 3.2rem;
  line-height: 1.5;
}
.link-with-arrow .icon {
  --icon-size: 0.925em;
}
.link-with-arrow__icon-normal {
  transition-delay: 0.2s;
}
.link-with-arrow__icon-hover {
  transform: translateX(-70%) scale(0);
}
.link-with-arrow:hover .link-with-arrow__icon-normal {
  transition-delay: 0s;
  transform: translateX(70%) scale(0);
}
.link-with-arrow:hover .link-with-arrow__icon-hover {
  transition-delay: 0.2s;
  transform: translateX(0) scale(1);
}
@media (min-width: 768px) {
  .link-with-arrow {
    font-size: 4.72vw;
    line-height: 1.3;
  }
}

.accordion-details__summary {
  cursor: pointer;
  padding-block: 2.4rem;
  width: 100%;
  white-space: inherit;
  text-align: start;
  user-select: none;
  box-shadow: inset 0 1px 0 0 rgba(var(--color-foreground), 0.13);
  transition: all var(--duration-default);
}
.accordion-details__summary .icon-plus-toggle {
  color: rgba(var(--color-subtext));
}
.accordion-details__summary .icon-plus-toggle path.vertical {
  transform: rotate(0deg);
  transform-origin: center;
  transition: transform var(--animation-default);
}
.accordion-details__content {
  padding-bottom: 2.4rem;
}
.accordion-details__content iframe {
  max-width: 100%;
}
.accordion-details[aria-expanded=true] .accordion-details__summary {
  border-color: rgb(var(--color-foreground));
}
.accordion-details[aria-expanded=true] .accordion-details__summary .icon-plus-toggle path.vertical {
  transform: rotate(270deg);
}
.accordion-details__wrap {
  position: relative;
  box-shadow: inset 0 -1px 0 0 rgba(var(--color-foreground), 0.13);
}
.accordion-details__wrap:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: rgb(var(--color-foreground));
  transition: transform var(--animation-long);
  transform: scaleX(0);
  transform-origin: right;
}
.accordion-details__wrap:has(details[aria-expanded=true]):after {
  transform: scaleX(1);
  transform-origin: left;
}
.accordion-details__wrap .accordion-details__summary {
  box-shadow: none;
}

.fixed-overlay {
  position: fixed;
  transition: var(--duration-default) cubic-bezier(0.7, 0, 0.2, 1);
  transition-property: opacity, visibility, background-color;
  inset-block-start: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background-color: rgb(var(--color-background));
  opacity: 0;
  visibility: hidden;
}
.fixed-overlay.absolute {
  position: absolute;
}

.drawer {
  --modal-gap: 3.2rem 2.4rem;
  position: fixed;
  z-index: 32;
  top: var(--wp-admin--admin-bar--height, 0px);
  inset-inline: 0 auto;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: transparent;
}
.drawer[open] {
  pointer-events: auto;
}
.drawer[active] > .drawer__inner {
  --translate-x: 0;
}
.drawer[active] > .fixed-overlay {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  cursor: zoom-out;
}
.drawer__inner {
  --translate-x: 100%;
  max-width: var(--modal-width, 50rem);
  z-index: 10;
  position: absolute;
  top: 0;
  width: 100%;
  height: calc(100dvh - var(--wp-admin--admin-bar--height, 0px));
  overflow: hidden;
  color: rgb(var(--color-foreground));
  background-color: rgb(var(--color-background));
  transition: all var(--duration-default) linear, transform 0.3s cubic-bezier(0.7, 0, 0.2, 1);
  transform: translate(var(--translate-x), var(--translate-y));
}
.drawer__header-inner {
  padding-block: 1.6rem;
  padding-inline: 3rem;
  border-block-end: 0.1rem solid rgba(var(--color-border));
}
@media (max-width: 767.98px) {
  .drawer__header-inner {
    padding: 1.2rem 1.6rem;
  }
}
.drawer__header .drawer__close-btn {
  position: relative;
  width: auto;
  height: auto;
  top: auto;
  inset-inline: auto;
}
.drawer__header .drawer__close-btn:before {
  content: "";
  position: absolute;
  inset: -0.8rem;
}
.drawer__header-title {
  padding: 1.6rem;
  border-bottom: 0.1rem solid rgba(var(--color-border));
  max-height: 6rem;
}
.drawer__body {
  padding-inline: 2rem;
  padding-block: 1.2rem 2rem;
}
.drawer__footer {
  padding-inline: 2rem;
  padding-block: 2.4rem;
}
.drawer__close-btn {
  position: absolute;
  top: 1rem;
  inset-inline-end: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--drawer-close-btn-size, 4rem);
  height: var(--drawer-close-btn-size, 4rem);
  border-radius: 50%;
  padding: 0;
  border: 0;
  background: none;
  color: rgb(var(--color-foreground));
}
.drawer__close-btn svg {
  transition: transform 0.3s;
}
.drawer__close-btn:hover svg {
  transform: rotate(180deg);
}
.drawer__close-btn--fill {
  top: 2rem;
  inset-inline-end: 2rem;
  background: rgb(var(--color-background));
  box-shadow: 0 8px 14px rgba(0, 0, 0, 0.15);
}
.drawer__close-btn--fill .icon {
  --icon-size: 1.6rem;
}
@media (max-width: 767.98px) {
  .drawer__close-btn--fill-mobile {
    top: 2rem;
    inset-inline-end: 2rem;
    background: rgb(var(--color-background));
    box-shadow: 0 8px 14px rgba(0, 0, 0, 0.15);
  }
  .drawer__close-btn--fill-mobile .icon {
    --icon-size: 1.6rem;
  }
}
.drawer--full .drawer__inner {
  max-width: none;
  opacity: 0;
}
.drawer--full .drawer__body {
  padding-inline: var(--page-padding);
  padding-block: 0;
}
.drawer--full[active] .drawer__inner {
  opacity: 1;
}
@media (min-width: 768px) {
  .drawer {
    --modal-gap: 3.2rem;
  }
}

.modal {
  --modal-height: calc(100dvh - 4rem);
  align-items: center;
  justify-content: center;
  padding: 0 1.6rem;
}
.modal:not([hidden]) {
  display: flex;
}
.modal .drawer__inner {
  position: relative;
  height: auto;
  max-height: var(--modal-height);
  transform: scale(0.8);
  opacity: 0;
  transition-property: transform, opacity;
  border-radius: var(--blocks-radius);
}
@media (max-width: 767.98px) {
  .modal .drawer__inner {
    border-radius: var(--blocks-radius-mobile);
  }
}
.modal .drawer__body {
  max-height: var(--modal-height);
  padding: var(--modal-gap);
}
.modal[active] > .drawer__inner {
  opacity: 1;
  transform: scale(1);
}

.scrolling-gallery .swiper-wrapper {
  transition-timing-function: linear !important;
}
.scrolling-gallery .swiper-slide {
  width: var(--image-width-mobile);
}
@media (min-width: 768px) {
  .scrolling-gallery .swiper-slide {
    width: var(--image-width);
  }
}
.scrolling-gallery__item {
  padding-inline: 1rem;
}

@media (prefers-reduced-motion: no-preference) and (hover: hover) and (pointer: fine) {
  .scrolling-gallery.is-hovering .scrolling-gallery__item:not(:hover) {
    opacity: 0.5;
  }
}
.icon-list {
  --icon-size: 4.8rem;
  grid-template-columns: 2fr;
  justify-content: end;
}
.icon-list__marker {
  width: min(7.6rem, 25%);
}
.icon-list lord-icon {
  width: var(--icon-size);
  height: var(--icon-size);
}
@media (min-width: 768px) {
  .icon-list {
    --icon-size: 8rem;
  }
  .icon-list__box {
    position: relative;
    padding-bottom: 4rem;
    box-shadow: inset 0 -1px 0 0 rgba(var(--color-border));
  }
  .icon-list__box:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: rgb(var(--color-foreground));
    transition: transform var(--animation-long);
    transform: scaleX(0);
    transform-origin: right;
  }
  .icon-list__box:hover:after {
    transform: scaleX(1);
    transform-origin: left;
  }
  .icon-list__box {
    padding-bottom: 8rem;
  }
  .icon-list__marker {
    width: min(25rem, 32%);
  }
}

.icon-box-collapsible__image {
  width: 8rem;
}
@media (min-width: 768px) {
  .icon-box-collapsible__header {
    padding: 0;
    box-shadow: none;
    pointer-events: none;
  }
  .icon-box-collapsible__content {
    padding-block: 1.6rem 0;
  }
}

.video-with-text-overlay video-element {
  width: 100%;
  height: 100%;
}
@media (min-width: 1024px) {
  .video-with-text-overlay .content-overlay {
    padding-bottom: 15vh;
  }
}

/**
 * Parallax image expand each 150px for top + bottom
 */
.banner-with-logo__logo {
  font-size: 5.18vw;
  top: 22.3vw;
  left: 71.09vw;
}
.banner-with-logo__logo svg {
  width: 1em;
  height: 1em;
}
.banner-with-logo__tagline {
  font-size: 2.83vw;
  line-height: 1.20833;
  top: 27.38vw;
  left: 18.8vw;
  width: 30.27vw;
}
@media (max-width: 767.98px) {
  .banner-with-logo__logo {
    font-size: 13.85vw;
    top: 71.79vw;
    left: 67.18vw;
  }
}

custom-cursor {
  width: 2rem;
  height: 2rem;
  z-index: 9999;
  will-change: transform;
  transform: translate(-50%, -50%) scale(0);
  mix-blend-mode: difference;
}
custom-cursor:before {
  content: "";
  position: absolute;
  inset: 0;
  transition: all var(--duration-default);
  background: rgb(var(--color-foreground));
  border-radius: 99px;
}
custom-cursor:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0);
  width: 3rem;
  height: 3rem;
  border: 1px solid rgba(var(--color-foreground), 0.5);
  border-radius: 99px;
  opacity: 0;
  transition: all var(--duration-default);
}
custom-cursor.is-pointer:before {
  transform: scale(0.6);
}
custom-cursor.is-pointer:after {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}

[data-motion=fade-up] {
  visibility: hidden;
  transform: translateY(2.5rem);
  opacity: 0.01;
}

.flex {
  display: flex;
}

.inline-flex {
  display: inline-flex;
}

.grid {
  display: grid;
}

.block {
  display: block;
}

.\!block {
  display: block !important;
}

.inline-block {
  display: inline-block;
}

.hidden {
  display: none;
}

.\!hidden {
  display: none !important;
}

.flex-row-reverse {
  flex-direction: row-reverse;
}

.flex-column-reverse {
  flex-direction: column-reverse;
}

.flex-1 {
  flex: 1;
}

.shrink-0 {
  flex-shrink: 0;
}

.flex-grow {
  flex-grow: 1;
}

.flex-col {
  flex-direction: column;
}

.flex-row {
  flex-direction: row;
}

.items-start {
  align-items: flex-start;
}
.items-center {
  align-items: center;
}
.items-end {
  align-items: flex-end;
}

.justify-start {
  justify-content: flex-start;
}
.justify-center {
  justify-content: center;
}
.justify-end {
  justify-content: flex-end;
}
.justify-between {
  justify-content: space-between;
}
.justify-around {
  justify-content: space-around;
}

.flex-wrap {
  flex-wrap: wrap;
}
.flex-nowrap {
  flex-wrap: nowrap;
}

.self-start {
  align-self: flex-start;
}
.self-center {
  align-self: center;
}
.self-end {
  align-self: flex-end;
}
.self-auto {
  align-self: auto;
}
.self-stretch {
  align-self: stretch;
}

.content-end {
  align-content: flex-end;
}

.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.fixed {
  position: fixed;
}

.sticky {
  position: sticky;
}

.top-0 {
  inset-block-start: 0;
}

.bottom-0 {
  inset-block-end: 0;
}

.left-0 {
  inset-inline-start: 0;
}

.right-0 {
  inset-inline-end: 0;
}

.inset-0 {
  inset: 0;
}

.inset-center {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.translate-y-100 {
  transform: translateY(100%);
}

.overflow-clip {
  overflow: clip;
}

.overflow-hidden {
  overflow: hidden;
}

.overflow-visible {
  overflow: visible;
}

.visually-hidden {
  position: absolute !important;
  overflow: hidden;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
  word-wrap: normal !important;
}

.visually-hidden--inline {
  margin: 0;
  height: 1em;
}

.break {
  word-break: break-word;
}

.linklist--vertical li + li {
  padding-top: 1.2rem;
}
.linklist--horizontal {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem 2.4rem;
}

.rich-text {
  --rt-gap: 2.4rem;
}
.rich-text > * + * {
  margin: var(--rt-gap) 0 0;
}
.rich-text > *:first-child:is(.rich-text__subheading) {
  margin-bottom: var(--rt-subheading-gap, var(--rt-gap));
}
.rich-text > *:first-child:is(.rich-text__subheading) + * {
  margin-top: 0;
}
@media (min-width: 768px) {
  .rich-text {
    --rt-gap: 4.8rem;
  }
}
.rich-text--small {
  --rt-subheading-gap: 2.4rem;
}
@media (min-width: 768px) {
  .rich-text--small {
    --rt-gap: 3.2rem;
  }
}
.rich-text__heading > * {
  max-width: var(--rt-heading-width, 100%);
}
.rich-text__description > * {
  max-width: var(--rt-description-width, 100%);
}

.reversed-link.reversed-link__text,
.reversed-link .reversed-link__text {
  transition: background-size var(--animation-default);
  background: linear-gradient(to var(--transform-origin-end), currentColor, currentColor) var(--transform-origin-end) bottom/0 var(--line-thickness, 0.1rem) no-repeat;
}

.reversed-link-2.reversed-link__text,
.reversed-link-2 .reversed-link__text {
  transition: background-position 0.5s linear;
  background: linear-gradient(to var(--transform-origin-end), currentColor 0%, currentColor 33.33%, rgb(var(--color-background)) 33.33%, rgb(var(--color-background)) 66.66%, currentColor 66.66%, currentColor 100%) var(--transform-origin-end) bottom/300% var(--line-thickness, 0.1rem) no-repeat;
}

.list-disc {
  list-style-type: disc;
  list-style-position: inside;
}

.icon:is(svg) {
  width: var(--icon-size, 2rem);
  height: var(--icon-size, 2rem);
}
.icon svg {
  width: var(--icon-size, 2rem);
  height: var(--icon-size, 2rem);
}
.icon--extra-small {
  --icon-size: 1.4rem;
}
.icon--small {
  --icon-size: 1.6rem;
}
.icon--extra-medium {
  --icon-size: 1.8rem;
}
.icon--medium {
  --icon-size: 2rem;
}
.icon--large {
  --icon-size: 2.4rem;
}
.icon--extra-large {
  --icon-size: 3.2rem;
}
.icon--thick {
  stroke-width: 0.2rem;
}
.icon--thick path {
  stroke-width: 0.2rem;
}
.icon--non-scalable path {
  vector-effect: non-scaling-stroke;
}

.animate-spin {
  animation: spin 1s linear infinite;
}

.opacity-0 {
  opacity: 0;
}

.invisible {
  visibility: hidden;
}

.text-body {
  color: rgb(var(--color-foreground));
}

.text-body-10 {
  color: rgba(var(--color-foreground), 0.1);
}

.text-body-15 {
  color: rgba(var(--color-foreground), 0.15);
}

.text-body-20 {
  color: rgba(var(--color-foreground), 0.2);
}

.text-body-70 {
  color: rgba(var(--color-foreground), 0.7);
}

.text-body-80 {
  color: rgba(var(--color-foreground), 0.8);
}

.rte,
.text-subtext {
  color: rgba(var(--color-subtext));
}

.text-left {
  text-align: start;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: end;
}

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

.text-lowercase {
  --btn-transform: lowercase;
  text-transform: lowercase;
}

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

.text-normal {
  --btn-transform: none;
  text-transform: none;
}

.text-wrap {
  text-wrap: wrap;
}

.text-nowrap {
  text-wrap: nowrap;
}

[class*=text-limit-] {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: var(--line-clamp, unset);
  -webkit-box-orient: vertical;
}

.text-limit-1-line {
  --line-clamp: 1;
}
.text-limit-2-lines {
  --line-clamp: 2;
}
.text-limit-3-lines {
  --line-clamp: 3;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.order-first {
  order: -999;
}
.order-last {
  order: 999;
}
.order-none {
  order: 0;
}

.m-0 {
  margin: 0;
}

.p-0 {
  padding: 0;
}

.gap-1 {
  gap: 0.4rem;
}

.gap-2 {
  gap: 0.8rem;
}

.gap-3 {
  gap: 1.2rem;
}

.gap-4 {
  gap: 1.6rem;
}

.gap-5 {
  gap: 2rem;
}

.gap-6 {
  gap: 2.4rem;
}

.gap-7 {
  gap: 2.8rem;
}

.gap-7_5 {
  gap: 3rem;
}

.gap-8 {
  gap: 3.2rem;
}

.gap-9 {
  gap: 3.6rem;
}

.gap-10 {
  gap: 4rem;
}

.gap-12 {
  gap: 4.8rem;
}

.gap-x-1 {
  column-gap: 0.4rem;
}

.gap-y-1 {
  row-gap: 0.4rem;
}

.gap-x-2 {
  column-gap: 0.8rem;
}

.gap-y-2 {
  row-gap: 0.8rem;
}

.gap-x-3 {
  column-gap: 1.2rem;
}

.gap-y-3 {
  row-gap: 1.2rem;
}

.gap-x-4 {
  column-gap: 1.6rem;
}

.gap-y-4 {
  row-gap: 1.6rem;
}

.gap-x-5 {
  column-gap: 2rem;
}

.gap-y-5 {
  row-gap: 2rem;
}

.gap-x-6 {
  column-gap: 2.4rem;
}

.gap-y-6 {
  row-gap: 2.4rem;
}

.gap-x-7 {
  column-gap: 2.8rem;
}

.gap-y-7 {
  row-gap: 2.8rem;
}

.gap-x-7_5 {
  column-gap: 3rem;
}

.gap-y-7_5 {
  row-gap: 3rem;
}

.gap-x-8 {
  column-gap: 3.2rem;
}

.gap-y-8 {
  row-gap: 3.2rem;
}

.gap-x-9 {
  column-gap: 3.6rem;
}

.gap-y-9 {
  row-gap: 3.6rem;
}

.gap-x-10 {
  column-gap: 4rem;
}

.gap-y-10 {
  row-gap: 4rem;
}

.gap-x-12 {
  column-gap: 4.8rem;
}

.gap-y-12 {
  row-gap: 4.8rem;
}

.-rotate-90 {
  transform: rotate(-90deg);
}

.flip-x {
  transform: scale(-1);
}

.radius-inherit {
  border-radius: inherit;
}

.content-overlay {
  display: flex;
  flex-direction: column;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  color: rgb(var(--color-foreground));
  padding-block: var(--padding-y, 3.2rem);
  background-color: transparent;
}
.content-overlay:not(.page-width) {
  padding: var(--padding-x, 3.2rem);
}
.content-overlay--top-left {
  align-items: flex-start;
}
.content-overlay--top-center {
  align-items: center;
}
.content-overlay--top-right {
  align-items: flex-end;
}
.content-overlay--middle-left {
  justify-content: center;
  align-items: flex-start;
}
.content-overlay--middle-center {
  justify-content: center;
  align-items: center;
}
.content-overlay--middle-right {
  justify-content: center;
  align-items: flex-end;
}
.content-overlay--bottom-left {
  justify-content: flex-end;
  align-items: flex-start;
}
.content-overlay--bottom-center {
  justify-content: flex-end;
  align-items: center;
}
.content-overlay--bottom-right {
  justify-content: flex-end;
  align-items: flex-end;
}
@media (max-width: 767.98px) {
  .content-overlay--top-left-mobile {
    justify-content: flex-start;
    align-items: flex-start;
  }
  .content-overlay--top-center-mobile {
    justify-content: flex-start;
    align-items: center;
  }
  .content-overlay--middle-left-mobile {
    justify-content: center;
    align-items: flex-start;
  }
  .content-overlay--middle-center-mobile {
    justify-content: center;
    align-items: center;
  }
  .content-overlay--bottom-center-mobile {
    justify-content: flex-end;
    align-items: center;
  }
}

.card-media--small .content-overlay {
  --padding-y: 2rem;
  --padding-x: 2rem;
}
.card-media--medium .content-overlay {
  --padding-y: 3.2rem;
  --padding-x: 3.2rem;
}
@media (max-width: 767.98px) {
  .card-media--medium .content-overlay {
    --padding-x: 2.4rem;
    --padding-y: 2.4rem;
  }
}
.card-media--large .content-overlay {
  --padding-y: 6rem;
  --padding-x: 4rem;
}
@media (max-width: 767.98px) {
  .card-media--large .content-overlay {
    --padding-x: 2rem;
    --padding-y: 3rem;
  }
}

@media (min-width: 768px) {
  .md\:hidden {
    display: none;
  }
  .md\:block {
    display: block;
  }
  .md\:flex {
    display: flex;
  }
  .md\:inline-flex {
    display: inline-flex;
  }
  .md\:grid {
    display: grid;
  }
  .md\:flex-grow {
    flex-grow: 1;
  }
  .md\:flex-row-reverse {
    flex-direction: row-reverse;
  }
  .md\:flex-column-reverse {
    flex-direction: column-reverse;
  }
  .md\:items-start {
    align-items: flex-start;
  }
  .md\:items-center {
    align-items: center;
  }
  .md\:items-end {
    align-items: flex-end;
  }
  .md\:justify-start {
    justify-content: flex-start;
  }
  .md\:justify-center {
    justify-content: center;
  }
  .md\:justify-end {
    justify-content: flex-end;
  }
  .md\:justify-between {
    justify-content: space-between;
  }
  .md\:justify-around {
    justify-content: space-around;
  }
  .md\:flex-wrap {
    flex-wrap: wrap;
  }
  .md\:flex-nowrap {
    flex-wrap: nowrap;
  }
  .md\:flex-col {
    flex-direction: column;
  }
  .md\:flex-row {
    flex-direction: row;
  }
  .md\:self-start {
    align-self: flex-start;
  }
  .md\:self-center {
    align-self: center;
  }
  .md\:self-end {
    align-self: flex-end;
  }
  .md\:self-auto {
    align-self: auto;
  }
  .md\:self-stretch {
    align-self: stretch;
  }
  .md\:order-first {
    order: -999;
  }
  .md\:order-last {
    order: 999;
  }
  .md\:order-none {
    order: 0;
  }
  .md\:gap-1 {
    gap: 0.4rem;
  }
  .md\:gap-2 {
    gap: 0.8rem;
  }
  .md\:gap-3 {
    gap: 1.2rem;
  }
  .md\:gap-4 {
    gap: 1.6rem;
  }
  .md\:gap-5 {
    gap: 2rem;
  }
  .md\:gap-6 {
    gap: 2.4rem;
  }
  .md\:gap-7 {
    gap: 2.8rem;
  }
  .md\:gap-7_5 {
    gap: 3rem;
  }
  .md\:gap-8 {
    gap: 3.2rem;
  }
  .md\:gap-9 {
    gap: 3.6rem;
  }
  .md\:gap-10 {
    gap: 4rem;
  }
  .md\:gap-12 {
    gap: 4.8rem;
  }
  .md\:gap-x-1 {
    column-gap: 0.4rem;
  }
  .md\:gap-y-1 {
    row-gap: 0.4rem;
  }
  .md\:gap-x-2 {
    column-gap: 0.8rem;
  }
  .md\:gap-y-2 {
    row-gap: 0.8rem;
  }
  .md\:gap-x-3 {
    column-gap: 1.2rem;
  }
  .md\:gap-y-3 {
    row-gap: 1.2rem;
  }
  .md\:gap-x-4 {
    column-gap: 1.6rem;
  }
  .md\:gap-y-4 {
    row-gap: 1.6rem;
  }
  .md\:gap-x-5 {
    column-gap: 2rem;
  }
  .md\:gap-y-5 {
    row-gap: 2rem;
  }
  .md\:gap-x-6 {
    column-gap: 2.4rem;
  }
  .md\:gap-y-6 {
    row-gap: 2.4rem;
  }
  .md\:gap-x-7 {
    column-gap: 2.8rem;
  }
  .md\:gap-y-7 {
    row-gap: 2.8rem;
  }
  .md\:gap-x-7_5 {
    column-gap: 3rem;
  }
  .md\:gap-y-7_5 {
    row-gap: 3rem;
  }
  .md\:gap-x-8 {
    column-gap: 3.2rem;
  }
  .md\:gap-y-8 {
    row-gap: 3.2rem;
  }
  .md\:gap-x-9 {
    column-gap: 3.6rem;
  }
  .md\:gap-y-9 {
    row-gap: 3.6rem;
  }
  .md\:gap-x-10 {
    column-gap: 4rem;
  }
  .md\:gap-y-10 {
    row-gap: 4rem;
  }
  .md\:gap-x-12 {
    column-gap: 4.8rem;
  }
  .md\:gap-y-12 {
    row-gap: 4.8rem;
  }
  .md\:text-left {
    text-align: start;
  }
  .md\:text-center {
    text-align: center;
  }
  .md\:text-right {
    text-align: end;
  }
}
@media (min-width: 1024px) {
  .lg\:hidden {
    display: none;
  }
  .lg\:block {
    display: block;
  }
  .lg\:flex {
    display: flex;
  }
  .lg\:inline-flex {
    display: inline-flex;
  }
  .lg\:grid {
    display: grid;
  }
  .lg\:flex-grow {
    flex-grow: 1;
  }
  .lg\:flex-row-reverse {
    flex-direction: row-reverse;
  }
  .lg\:flex-column-reverse {
    flex-direction: column-reverse;
  }
  .lg\:items-start {
    align-items: flex-start;
  }
  .lg\:items-center {
    align-items: center;
  }
  .lg\:items-end {
    align-items: flex-end;
  }
  .lg\:justify-start {
    justify-content: flex-start;
  }
  .lg\:justify-center {
    justify-content: center;
  }
  .lg\:justify-end {
    justify-content: flex-end;
  }
  .lg\:justify-between {
    justify-content: space-between;
  }
  .lg\:justify-around {
    justify-content: space-around;
  }
  .lg\:flex-wrap {
    flex-wrap: wrap;
  }
  .lg\:flex-nowrap {
    flex-wrap: nowrap;
  }
  .lg\:flex-col {
    flex-direction: column;
  }
  .lg\:flex-row {
    flex-direction: row;
  }
  .lg\:self-start {
    align-self: flex-start;
  }
  .lg\:self-center {
    align-self: center;
  }
  .lg\:self-end {
    align-self: flex-end;
  }
  .lg\:self-auto {
    align-self: auto;
  }
  .lg\:self-stretch {
    align-self: stretch;
  }
  .lg\:order-first {
    order: -999;
  }
  .lg\:order-last {
    order: 999;
  }
  .lg\:order-none {
    order: 0;
  }
  .lg\:gap-1 {
    gap: 0.4rem;
  }
  .lg\:gap-2 {
    gap: 0.8rem;
  }
  .lg\:gap-3 {
    gap: 1.2rem;
  }
  .lg\:gap-4 {
    gap: 1.6rem;
  }
  .lg\:gap-5 {
    gap: 2rem;
  }
  .lg\:gap-6 {
    gap: 2.4rem;
  }
  .lg\:gap-7 {
    gap: 2.8rem;
  }
  .lg\:gap-7_5 {
    gap: 3rem;
  }
  .lg\:gap-8 {
    gap: 3.2rem;
  }
  .lg\:gap-9 {
    gap: 3.6rem;
  }
  .lg\:gap-10 {
    gap: 4rem;
  }
  .lg\:gap-12 {
    gap: 4.8rem;
  }
  .lg\:gap-x-1 {
    column-gap: 0.4rem;
  }
  .lg\:gap-y-1 {
    row-gap: 0.4rem;
  }
  .lg\:gap-x-2 {
    column-gap: 0.8rem;
  }
  .lg\:gap-y-2 {
    row-gap: 0.8rem;
  }
  .lg\:gap-x-3 {
    column-gap: 1.2rem;
  }
  .lg\:gap-y-3 {
    row-gap: 1.2rem;
  }
  .lg\:gap-x-4 {
    column-gap: 1.6rem;
  }
  .lg\:gap-y-4 {
    row-gap: 1.6rem;
  }
  .lg\:gap-x-5 {
    column-gap: 2rem;
  }
  .lg\:gap-y-5 {
    row-gap: 2rem;
  }
  .lg\:gap-x-6 {
    column-gap: 2.4rem;
  }
  .lg\:gap-y-6 {
    row-gap: 2.4rem;
  }
  .lg\:gap-x-7 {
    column-gap: 2.8rem;
  }
  .lg\:gap-y-7 {
    row-gap: 2.8rem;
  }
  .lg\:gap-x-7_5 {
    column-gap: 3rem;
  }
  .lg\:gap-y-7_5 {
    row-gap: 3rem;
  }
  .lg\:gap-x-8 {
    column-gap: 3.2rem;
  }
  .lg\:gap-y-8 {
    row-gap: 3.2rem;
  }
  .lg\:gap-x-9 {
    column-gap: 3.6rem;
  }
  .lg\:gap-y-9 {
    row-gap: 3.6rem;
  }
  .lg\:gap-x-10 {
    column-gap: 4rem;
  }
  .lg\:gap-y-10 {
    row-gap: 4rem;
  }
  .lg\:gap-x-12 {
    column-gap: 4.8rem;
  }
  .lg\:gap-y-12 {
    row-gap: 4.8rem;
  }
  .lg\:text-left {
    text-align: start;
  }
  .lg\:text-center {
    text-align: center;
  }
  .lg\:text-right {
    text-align: end;
  }
}
@media (min-width: 1280px) {
  .xl\:hidden {
    display: none;
  }
  .xl\:block {
    display: block;
  }
  .xl\:flex {
    display: flex;
  }
  .xl\:inline-flex {
    display: inline-flex;
  }
  .xl\:grid {
    display: grid;
  }
  .xl\:flex-grow {
    flex-grow: 1;
  }
  .xl\:flex-row-reverse {
    flex-direction: row-reverse;
  }
  .xl\:flex-column-reverse {
    flex-direction: column-reverse;
  }
  .xl\:items-start {
    align-items: flex-start;
  }
  .xl\:items-center {
    align-items: center;
  }
  .xl\:items-end {
    align-items: flex-end;
  }
  .xl\:justify-start {
    justify-content: flex-start;
  }
  .xl\:justify-center {
    justify-content: center;
  }
  .xl\:justify-end {
    justify-content: flex-end;
  }
  .xl\:justify-between {
    justify-content: space-between;
  }
  .xl\:justify-around {
    justify-content: space-around;
  }
  .xl\:flex-wrap {
    flex-wrap: wrap;
  }
  .xl\:flex-nowrap {
    flex-wrap: nowrap;
  }
  .xl\:flex-col {
    flex-direction: column;
  }
  .xl\:flex-row {
    flex-direction: row;
  }
  .xl\:self-start {
    align-self: flex-start;
  }
  .xl\:self-center {
    align-self: center;
  }
  .xl\:self-end {
    align-self: flex-end;
  }
  .xl\:self-auto {
    align-self: auto;
  }
  .xl\:self-stretch {
    align-self: stretch;
  }
  .xl\:order-first {
    order: -999;
  }
  .xl\:order-last {
    order: 999;
  }
  .xl\:order-none {
    order: 0;
  }
  .xl\:gap-1 {
    gap: 0.4rem;
  }
  .xl\:gap-2 {
    gap: 0.8rem;
  }
  .xl\:gap-3 {
    gap: 1.2rem;
  }
  .xl\:gap-4 {
    gap: 1.6rem;
  }
  .xl\:gap-5 {
    gap: 2rem;
  }
  .xl\:gap-6 {
    gap: 2.4rem;
  }
  .xl\:gap-7 {
    gap: 2.8rem;
  }
  .xl\:gap-7_5 {
    gap: 3rem;
  }
  .xl\:gap-8 {
    gap: 3.2rem;
  }
  .xl\:gap-9 {
    gap: 3.6rem;
  }
  .xl\:gap-10 {
    gap: 4rem;
  }
  .xl\:gap-12 {
    gap: 4.8rem;
  }
  .xl\:gap-x-1 {
    column-gap: 0.4rem;
  }
  .xl\:gap-y-1 {
    row-gap: 0.4rem;
  }
  .xl\:gap-x-2 {
    column-gap: 0.8rem;
  }
  .xl\:gap-y-2 {
    row-gap: 0.8rem;
  }
  .xl\:gap-x-3 {
    column-gap: 1.2rem;
  }
  .xl\:gap-y-3 {
    row-gap: 1.2rem;
  }
  .xl\:gap-x-4 {
    column-gap: 1.6rem;
  }
  .xl\:gap-y-4 {
    row-gap: 1.6rem;
  }
  .xl\:gap-x-5 {
    column-gap: 2rem;
  }
  .xl\:gap-y-5 {
    row-gap: 2rem;
  }
  .xl\:gap-x-6 {
    column-gap: 2.4rem;
  }
  .xl\:gap-y-6 {
    row-gap: 2.4rem;
  }
  .xl\:gap-x-7 {
    column-gap: 2.8rem;
  }
  .xl\:gap-y-7 {
    row-gap: 2.8rem;
  }
  .xl\:gap-x-7_5 {
    column-gap: 3rem;
  }
  .xl\:gap-y-7_5 {
    row-gap: 3rem;
  }
  .xl\:gap-x-8 {
    column-gap: 3.2rem;
  }
  .xl\:gap-y-8 {
    row-gap: 3.2rem;
  }
  .xl\:gap-x-9 {
    column-gap: 3.6rem;
  }
  .xl\:gap-y-9 {
    row-gap: 3.6rem;
  }
  .xl\:gap-x-10 {
    column-gap: 4rem;
  }
  .xl\:gap-y-10 {
    row-gap: 4rem;
  }
  .xl\:gap-x-12 {
    column-gap: 4.8rem;
  }
  .xl\:gap-y-12 {
    row-gap: 4.8rem;
  }
  .xl\:text-left {
    text-align: start;
  }
  .xl\:text-center {
    text-align: center;
  }
  .xl\:text-right {
    text-align: end;
  }
}
@media (min-width: 1536px) {
  .xxl\:hidden {
    display: none;
  }
  .xxl\:block {
    display: block;
  }
  .xxl\:flex {
    display: flex;
  }
  .xxl\:inline-flex {
    display: inline-flex;
  }
  .xxl\:grid {
    display: grid;
  }
  .xxl\:flex-grow {
    flex-grow: 1;
  }
  .xxl\:flex-row-reverse {
    flex-direction: row-reverse;
  }
  .xxl\:flex-column-reverse {
    flex-direction: column-reverse;
  }
  .xxl\:items-start {
    align-items: flex-start;
  }
  .xxl\:items-center {
    align-items: center;
  }
  .xxl\:items-end {
    align-items: flex-end;
  }
  .xxl\:justify-start {
    justify-content: flex-start;
  }
  .xxl\:justify-center {
    justify-content: center;
  }
  .xxl\:justify-end {
    justify-content: flex-end;
  }
  .xxl\:justify-between {
    justify-content: space-between;
  }
  .xxl\:justify-around {
    justify-content: space-around;
  }
  .xxl\:flex-wrap {
    flex-wrap: wrap;
  }
  .xxl\:flex-nowrap {
    flex-wrap: nowrap;
  }
  .xxl\:flex-col {
    flex-direction: column;
  }
  .xxl\:flex-row {
    flex-direction: row;
  }
  .xxl\:self-start {
    align-self: flex-start;
  }
  .xxl\:self-center {
    align-self: center;
  }
  .xxl\:self-end {
    align-self: flex-end;
  }
  .xxl\:self-auto {
    align-self: auto;
  }
  .xxl\:self-stretch {
    align-self: stretch;
  }
  .xxl\:order-first {
    order: -999;
  }
  .xxl\:order-last {
    order: 999;
  }
  .xxl\:order-none {
    order: 0;
  }
  .xxl\:gap-1 {
    gap: 0.4rem;
  }
  .xxl\:gap-2 {
    gap: 0.8rem;
  }
  .xxl\:gap-3 {
    gap: 1.2rem;
  }
  .xxl\:gap-4 {
    gap: 1.6rem;
  }
  .xxl\:gap-5 {
    gap: 2rem;
  }
  .xxl\:gap-6 {
    gap: 2.4rem;
  }
  .xxl\:gap-7 {
    gap: 2.8rem;
  }
  .xxl\:gap-7_5 {
    gap: 3rem;
  }
  .xxl\:gap-8 {
    gap: 3.2rem;
  }
  .xxl\:gap-9 {
    gap: 3.6rem;
  }
  .xxl\:gap-10 {
    gap: 4rem;
  }
  .xxl\:gap-12 {
    gap: 4.8rem;
  }
  .xxl\:gap-x-1 {
    column-gap: 0.4rem;
  }
  .xxl\:gap-y-1 {
    row-gap: 0.4rem;
  }
  .xxl\:gap-x-2 {
    column-gap: 0.8rem;
  }
  .xxl\:gap-y-2 {
    row-gap: 0.8rem;
  }
  .xxl\:gap-x-3 {
    column-gap: 1.2rem;
  }
  .xxl\:gap-y-3 {
    row-gap: 1.2rem;
  }
  .xxl\:gap-x-4 {
    column-gap: 1.6rem;
  }
  .xxl\:gap-y-4 {
    row-gap: 1.6rem;
  }
  .xxl\:gap-x-5 {
    column-gap: 2rem;
  }
  .xxl\:gap-y-5 {
    row-gap: 2rem;
  }
  .xxl\:gap-x-6 {
    column-gap: 2.4rem;
  }
  .xxl\:gap-y-6 {
    row-gap: 2.4rem;
  }
  .xxl\:gap-x-7 {
    column-gap: 2.8rem;
  }
  .xxl\:gap-y-7 {
    row-gap: 2.8rem;
  }
  .xxl\:gap-x-7_5 {
    column-gap: 3rem;
  }
  .xxl\:gap-y-7_5 {
    row-gap: 3rem;
  }
  .xxl\:gap-x-8 {
    column-gap: 3.2rem;
  }
  .xxl\:gap-y-8 {
    row-gap: 3.2rem;
  }
  .xxl\:gap-x-9 {
    column-gap: 3.6rem;
  }
  .xxl\:gap-y-9 {
    row-gap: 3.6rem;
  }
  .xxl\:gap-x-10 {
    column-gap: 4rem;
  }
  .xxl\:gap-y-10 {
    row-gap: 4rem;
  }
  .xxl\:gap-x-12 {
    column-gap: 4.8rem;
  }
  .xxl\:gap-y-12 {
    row-gap: 4.8rem;
  }
  .xxl\:text-left {
    text-align: start;
  }
  .xxl\:text-center {
    text-align: center;
  }
  .xxl\:text-right {
    text-align: end;
  }
}
@media (prefers-reduced-motion: no-preference) and (hover: hover) and (pointer: fine) {
  .reversed-link:not([aria-disabled]).reversed-link__text:hover, .reversed-link:not([aria-disabled]):hover .reversed-link__text {
    background-position-x: var(--transform-origin-start);
    background-size: 100% var(--line-thickness, 0.1rem);
  }
  .reversed-link-2:not([aria-disabled]).reversed-link__text:hover, .reversed-link-2:not([aria-disabled]):hover .reversed-link__text {
    background-position-x: var(--transform-origin-start);
  }
  .hover-wrapper .hover-scale-up {
    --scale-x: 1;
    --scale-y: 1;
    transition: var(--animation-default);
    transition-property: transform;
    transform: scaleX(var(--scale-x)) scaleY(var(--scale-y));
  }
  .hover-wrapper:hover .hover-scale-up {
    --scale-x: 1.08;
    --scale-y: 1.08;
  }
  .hover-wrapper:hover .hover-scale-up__large {
    --scale-x: 1.2;
    --scale-y: 1.2;
  }
}
.link-underline:hover {
  text-decoration: underline;
}

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

.v-scrollable {
  scroll-behavior: smooth;
  scroll-snap-type: y mandatory;
  overflow-x: hidden;
  overflow-y: auto;
}
.v-scrollable::-webkit-scrollbar {
  width: 0.6rem;
}
.v-scrollable::-webkit-scrollbar-thumb {
  border-radius: 1rem;
  background-clip: padding-box;
  background: rgba(var(--color-foreground), 0.25);
}
.v-scrollable::-webkit-scrollbar-track {
  background: transparent;
  border: none;
}

.rounded {
  border-radius: 999px;
}

.pointer-events-auto {
  pointer-events: all;
}
.pointer-events-none {
  pointer-events: none;
}

.unselectable {
  user-select: none;
  -webkit-user-drag: none;
  user-drag: none;
  -webkit-touch-callout: none;
}

.bg-overlay {
  display: block !important;
  background: var(--color-overlay-bg, #000);
  opacity: calc(var(--color-overlay-alpha, 40) * 1%);
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.bg-none {
  background: none;
}

.bg-video {
  display: block;
  max-width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  overflow: hidden;
  pointer-events: none;
}
.bg-video iframe,
.bg-video video {
  display: block;
  position: absolute;
  width: 300%;
  height: 100%;
  left: -100%;
  top: 0;
  max-width: none;
  border: none;
}
@media (min-width: 768px) {
  .bg-video iframe,
  .bg-video video {
    left: auto;
    width: 100%;
    object-fit: cover;
  }
}

.bg-image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.bg-image img {
  width: 100% !important;
  height: 100%;
  object-fit: cover;
}

.border-top {
  border-block-start: 0.1rem solid rgb(var(--color-border));
}

.cursor-pointer {
  cursor: pointer;
}

.transition-all {
  transition-property: all;
  transition-duration: var(--duration-default);
}

@media (prefers-reduced-motion) {
  .motion-reduce {
    transition: none !important;
    animation: none !important;
  }
}
@media (max-width: 767.98px) {
  .mobile-no-br br {
    display: none;
  }
}
.header {
  padding-block: var(--header-padding-top-mobile) 2.4rem;
  mix-blend-mode: difference;
}
.header__inner {
  min-height: 4rem;
}
.header__text {
  width: min(100% - 15rem, 50rem);
}
@media (min-width: 768px) {
  .header {
    padding-block: var(--header-padding-top) 2.2rem;
  }
  .header__inner {
    grid-template-columns: 1fr 2fr;
  }
}
@media (min-width: 1280px) {
  .header__inner {
    grid-template-columns: repeat(2, 1fr);
  }
}

.menu-drawer__toggle-wrap {
  position: fixed;
  top: calc(var(--header-padding-top-mobile) + var(--wp-admin--admin-bar--height, 0px));
  right: var(--page-padding);
}
@media (min-width: 768px) {
  .menu-drawer__toggle-wrap {
    top: calc(var(--header-padding-top) + var(--wp-admin--admin-bar--height, 0px));
  }
}
.menu-drawer__toggle svg {
  transition: all var(--duration-default) linear;
}
.menu-drawer__toggle .btn__text-inner {
  min-width: 5.4rem;
  will-change: transform;
}
.menu-drawer__toggle .is-active {
  transform: translateY(100%);
  opacity: 0;
}
.menu-drawer__toggle[aria-expanded=true] .is-normal {
  transform: translateY(-100%);
  opacity: 0;
}
.menu-drawer__toggle[aria-expanded=true] .is-active {
  transform: translateY(0);
  opacity: 1;
}
.menu-drawer__toggle[aria-expanded=true] svg {
  transform: rotate(135deg);
  transform-origin: center;
}

.header-pinned .header-sticky {
  position: sticky;
  top: 0;
}
.header-pinned.header-passed .header__text {
  transition: none;
  opacity: 0;
}

.logo {
  width: var(--logo-width, auto);
  overflow: visible !important;
}
.logo-image {
  height: auto;
}
@media (max-width: 1023.98px) {
  .logo {
    width: var(--logo-width-mobile, auto);
  }
}

.navigation--primary {
  grid-template-columns: auto var(--menu-image-width, 0);
  gap: 2rem;
}
@media (min-width: 1024px) {
  .navigation--primary {
    --menu-image-width: max(27rem, 36.36vw);
  }
}

.menu-item__arrow {
  --icon-size: 0.6666667em;
  transform: translateX(-1rem);
}
.menu-item__link {
  color: rgba(var(--color-foreground), 0.3);
}
.menu-item__link:hover .menu-item__arrow {
  opacity: 1;
  transform: none;
}
.menu-item.is-active .menu-item__link {
  color: rgb(var(--color-foreground));
}

.menu-drawer .socials {
  gap: 1.6rem 6.2rem;
}
.menu-drawer .drawer__body {
  padding-block: var(--header-height) 2.4rem;
}
@media (min-width: 768px) {
  .menu-drawer .drawer__body {
    padding-block: var(--header-height) 5rem;
  }
}

.page-template-homepage .header {
  mix-blend-mode: unset;
}
.page-template-homepage .logo-image {
  right: auto !important;
  bottom: auto !important;
  transition: all 0.25s linear;
  will-change: width, height;
}
.page-template-homepage:not(.menu-drawer--showing) .header__text {
  opacity: 0;
}
.page-template-homepage .header {
  position: fixed;
  top: var(--wp-admin--admin-bar--height, 0px);
  left: 0;
  right: 0;
}
@media (max-width: 767.98px) {
  .page-template-homepage .content-overlay {
    padding-top: 8rem;
  }
}

.footer ul li {
  line-height: 1;
}
.footer ul a {
  padding-block: var(--links-gap, 0.2rem);
}
.footer__col-tagline {
  --buttons-gap: 0.8rem;
}
.footer__row-top {
  row-gap: 8rem;
}
.footer__row-bottom {
  margin-top: 8rem;
}
.footer--fixed .footer__row {
  width: min(50rem, 100vw - 3.2rem);
}
@media (min-width: 768px) {
  .footer {
    --links-gap: 0.4rem;
  }
  .footer__col-main {
    width: min(48rem, 50%);
  }
  .footer__row-bottom {
    margin-top: 13rem;
  }
  .footer__animated-words {
    column-gap: 5rem;
  }
}
