:root {
    --color-black: #000000;
    --color-black-rgb: 0, 0, 0;
    --color-filter-black: brightness(0);

    --color-body-black: var(--color-black);
    --color-body-black-rgb: var(--color-black-rgb);

    --color-white: #ffffff;
    --color-white-rgb: 255, 255, 255;
    --color-filter-white: brightness(0) invert(1);

    --color-red: #ff0000;
    --color-red-rgb: 255, 0, 0;

    --color-teal: #152f44;
    --color-teal-rgb: 21, 47, 68;

    --color-gray: #c7c7c7;
    --color-gray-rgb: 199, 199, 199;

    --color-gray-2: #2d2d2d;
    --color-gray-2-rgb: 45, 45, 45;

    --color-light-gray: #d9d9d9;
    --color-light-gray-rgb: 217, 217, 217;

    --color-light-gray2: #f2f2f2;
    --color-light-gray2-rgb: 242, 242, 242;

    --color-body: var(--color-body-black);
    --color-body-rgb: var(--color-body-black-rgb);
    --color-body-couple: var(--color-white);
    --color-body-couple-rgb: var(--color-white-rgb);
    --color-theme: var(--color-tree);
    --color-theme-rgb: var(--color-tree-rgb);
    --color-theme-couple: var(--color-white);
    --color-theme-couple-rgb: var(--color-white-rgb);

    --color-active: var(--color-tree);
    --color-active-rgb: var(--color-tree-rgb);

    --rgb: var(--color-body-rgb);
    --rgb-couple: var(--color-body-couple-rgb);

    --font-body: "Montserrat", "sans-serif";
    --font-heading: var(--font-body);
    --font-weight-regular: normal;
    --font-weight-light: 300;
    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-black: 900;
    --font-weight-body: var(--font-weight-regular);

    --font-size-h1: 8rem;
    --font-size-h2: 7.2rem;
    --font-size-h3: 6rem;
    --font-size-h4: 4.8rem;
    --font-size-h5: 4rem;
    --font-size-h6: 2.8rem;
    --font-size-subtitle: 2rem;
    --font-size-body: 1.5rem;
    --font-size-overline: 1.2rem;
    --font-size-description: 1.2rem;
    --font-size-button: 1rem;

    --line-height-h1: 1;
    --line-height-h2: 1;
    --line-height-h3: 1;
    --line-height-h4: 1;
    --line-height-h5: 1;
    --line-height-h6: 1;
    --line-height-subtitle: 1.5;
    --line-height-body: 1.5;
    --line-height-overline: 1.2;
    --line-height-description: 1.5;
    --line-height-button: 1.2;

    --icon-size-4xs: 1rem;
    --icon-size-3xs: 1.2rem;
    --icon-size-2xs: 1.4rem;
    --icon-size-xs: 1.6rem;
    --icon-size-sm: 2rem;
    --icon-size-md: 2.6rem;
    --icon-size-lg: 3rem;
    --icon-size-xl: 3.2rem;
    --icon-size-2xl: 3.6rem;
    --icon-size-3xl: 4rem;

    --spacing-8xl: 16rem;
    --spacing-7xl: 14rem;
    --spacing-6xl: 12rem;
    --spacing-5xl: 10rem;
    --spacing-4xl: 8rem;
    --spacing-3xl: 7.2rem;
    --spacing-2xl: 6.4rem;
    --spacing-xl: 6rem;
    --spacing-4lg: 5.6rem;
    --spacing-3lg: 5rem;
    --spacing-2lg: 4.8rem;
    --spacing-lg: 4rem;
    --spacing-2md: 3.6rem;
    --spacing-md: 3rem;
    --spacing-2sm: 2.4rem;
    --spacing-sm: 2rem;
    --spacing-xs: 1.6rem;
    --spacing-2xs: 1.2rem;
    --spacing-3xs: 1rem;
    --spacing-4xs: 0.8rem;
    --spacing-5xs: 0.6rem;
    --spacing-6xs: 0.4rem;
    --spacing-7xs: 0.2rem;
    --container-max-width-xl: 188rem;
    --spacing-container: var(--spacing-2md);
    --spacing-container-sm: var(--spacing-xs);
    --gap-section: var(--spacing-4xl);

    --hamburger-size: 2.5rem;
    --hamburger-line: 0.1rem;
    --hamburger-gap: 0.55rem;
    --hamburger-background: var(--color-white);
    --logo-height: 2.2rem;
    --footer-height: 0rem;
    --navi-height: 0;

    --border-width: 1px;
    --border-style: solid;
    --border-color: var(--color-theme);
    --border: var(--border-width) var(--border-style) var(--border-color);
    --border-light: var(--border-width) var(--border-style)
        rgba(var(--color-white-rgb), 0.2);

    --input-height: 3.5rem;
    --input-spacing-x: var(--spacing-2xs);
    --input-spacing-y: 0.3em;
    --input-border: var(--border-width) var(--border-style)
        var(--color-lime-light);

    --button-height: 4.1rem;
    --button-spacing-x: var(--spacing-xs);
    --button-spacing-y: var(--spacing-3xs);

    --radius: 1rem;
    --radius-x2: 2rem;
    --opacity-overlay: 0.7;
    --opacity: 0.5;
    --opacity-light: 0.15;
    --duration: 0.3s;
    --duration-x2: 0.5s;
    --duration-x3: 1s;
    --duration-x4: 1.5s;
    --timing-function: ease-in-out;
}

/* SITE ==================== */
/* GENERAL */
.no-scroll {
    height: 100% !important;
    overflow: hidden !important;
}
.c-black {
    color: var(--color-black) !important;
    --rgb: var(--color-black-rgb);
    --rgb-couple: var(--color-white-rgb);
    --filter: var(--filter-black);
}
.c-white {
    color: var(--color-white) !important;
    --rgb: var(--color-white-rgb);
    --rgb-couple: var(--color-black-rgb);
    --filter: var(--filter-white);
}
.c-theme {
    color: var(--color-theme) !important;
    --rgb: var(--color-theme-rgb);
    --rgb-couple: var(--color-theme-couple-rgb);
}

.bg-black {
    background-color: var(--color-black) !important;
}
.bg-white {
    background-color: var(--color-white) !important;
}
.bg-theme {
    background-color: var(--color-theme) !important;
}

.filter-black {
    -webkit-filter: var(--filter-black) !important;
    filter: var(--filter-black) !important;
}
.filter-white {
    -webkit-filter: var(--filter-white) !important;
    filter: var(--filter-white) !important;
}
.filter-theme {
    -webkit-filter: var(--filter-theme) !important;
    filter: var(--filter-theme) !important;
}

.a-left {
    text-align: left !important;
}
.a-right {
    text-align: right !important;
}
.a-center {
    text-align: center !important;
}

.inline-block {
    display: inline-block !important;
}
.capitalize {
    text-transform: capitalize !important;
}
.uppercase {
    text-transform: uppercase !important;
}
.nowrap {
    white-space: nowrap !important;
}
.hidden {
    display: none !important;
}
.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
}

.overflow-hidden {
    overflow: hidden !important;
}

.media-wrapper {
    display: block;
    width: 100%;
    position: relative;
    overflow: hidden;
}

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

*:is(
    .object,
    .object-fit,
    .object-auto,
    .object-contain,
    .object-fill-height,
    .object-fill-width
) {
    text-decoration: none !important;
    box-shadow: none !important;
    background-image: none !important;
    display: block;
    overflow: hidden;
    position: relative;
    height: 100%;
}
.object-auto {
    height: auto;
}

.object > *:is(img, video, iframe) {
    display: block;
    margin: 0 auto;
    width: 100%;
    height: auto;
}

.object-fit > *:is(img, video, iframe) {
    display: block;
    margin: 0 auto;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.object-auto > *:is(img, video, iframe) {
    display: block;
    margin: 0 auto;
    width: auto;
    height: auto;
}

.object-contain > *:is(img, video, iframe) {
    display: block;
    margin: 0 auto;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center;
}

.object-fill-height > *:is(img, video, iframe) {
    display: block;
    margin: 0 auto;
    width: auto;
    height: 100%;
}

.object-fill-width > *:is(img, video, iframe) {
    display: block;
    margin: 0 auto;
    width: 100%;
    height: auto;
}

.aspect-ratio-1 {
    aspect-ratio: 1 / 1;
}

.aspect-ratio-4-3 {
    aspect-ratio: 4 / 3;
}

.aspect-ratio-3-2 {
    aspect-ratio: 3 / 2;
}

.aspect-ratio-16-9 {
    aspect-ratio: 16 / 9;
}

.aspect-ratio-1-2 {
    aspect-ratio: 1 / 2;
}

.aspect-ratio-2-3 {
    aspect-ratio: 2 / 3;
}

.aspect-ratio-3-4 {
    aspect-ratio: 3 / 4;
}

.social {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    grid-gap: var(--spacing-3xs) var(--spacing-xs);
    line-height: 1;
}
.social a {
    display: block;
    text-decoration: none;
    background: none;
    box-shadow: none;
}
.social .ic {
    display: block;
    padding: 1px;
    margin: -1px;
    font-size: var(--icon-size-xs);
}

.padding-top-0 {
    padding-top: 0 !important;
}

.padding-bottom-0 {
    padding-bottom: 0 !important;
}

.padding-x-0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.padding-y-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.padding-0 {
    padding: 0 !important;
}

.margin-top-0 {
    margin-top: 0 !important;
}

.margin-bottom-0 {
    margin-bottom: 0 !important;
}

.margin-x-0 {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.margin-y-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.margin-0 {
    margin: 0 !important;
}

/* RESET ==================== */
*,
*:before,
*:after {
    box-sizing: border-box;
}

::-webkit-scrollbar {
    width: 0;
    overflow: hidden;
}

::-moz-selection {
    background: var(--color-black);
    color: var(--color-white);
}
::selection {
    background: var(--color-black);
    color: var(--color-white);
}
.bg-theme ::-moz-selection {
    background: var(--color-white);
    color: var(--color-white);
}
.bg-theme ::selection {
    background: var(--color-black);
    color: var(--color-white);
}

article,
aside,
figcaption,
figure,
picture,
footer,
header,
hgroup,
main,
nav,
section,
dl,
dd {
    display: block;
    margin: 0;
}
html {
    font-family: sans-serif;
    font-size: 62.5%;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
@view-transition {
    navigation: auto;
}
body {
    margin: 0;
    position: relative;
    min-height: 100svh;
    overflow-x: hidden;
    background: var(--color-light-gray2);
    color: var(--color-black);
    /* -webkit-animation-name: pageAnimation;
    animation-name: pageAnimation;
    -webkit-animation-duration: var(--duration-x3);
    animation-duration: var(--duration-x3);
    -webkit-animation-timing-function: var(--timing-function);
    animation-timing-function: var(--timing-function);
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    will-change: opacity; */
}
@-webkit-keyframes pageAnimation {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
@keyframes pageAnimation {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}
p {
    margin: 0;
}
small {
    font-size: 88.8888888889%;
}
address {
    font-style: normal;
}
ul,
ol {
    list-style: none;
}
ul,
ol,
li {
    margin: 0;
    padding: 0;
}
a {
    color: inherit;
}
a,
a:hover,
a:focus {
    outline: 0;
    text-decoration: none;
    box-shadow: none;
}
a[href^="tel"] {
    white-space: nowrap;
}
a[href^="mailto"] {
    word-break: break-word;
}
a,
button,
[role="button"] {
    cursor: pointer;
}
button,
input,
textarea,
select {
    outline: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    box-shadow: none;
    border-radius: 0;
    border: 0;
    background: none;
    padding: 0;
    margin: 0;
    min-width: 0;
    font: inherit;
    line-height: normal;
    text-transform: inherit;
    text-align: inherit;
    letter-spacing: inherit;
    text-indent: inherit;
    color: inherit;
}
fieldset {
    border: 0 !important;
    background: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
img {
    border: 0;
    outline: 0;
    height: auto;
    width: auto;
    max-width: 100%;
    vertical-align: middle;
}
table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}
th,
td {
    padding: 0;
    font-weight: inherit;
}
hr {
    margin: 0;
    border: 0;
    display: block;
    width: 100%;
    height: 1px;
    background: var(--border-color);
}
iframe {
    border: 0;
}
[tabindex="-1"]:focus {
    outline: 0 !important;
}
script {
    margin: 0 !important;
}

html.resizing * {
    transition: none !important;
}

/* TEXT ==================== */
body {
    font-family: var(--font-body);
    font-weight: var(--font-weight-regular);
    font-size: var(--font-size-body);
    line-height: var(--line-height-body);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
strong {
    font-weight: var(--font-weight-bold);
}

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

.style-italic {
    font-style: italic !important;
}
.font-heading.style-italic {
    padding: 0.16em;
    margin: -0.16em;
}

.weight-light {
    font-weight: var(--font-weight-light) !important;
}
.weight-regular {
    font-weight: var(--font-weight-regular) !important;
}
.weight-medium {
    font-weight: var(--font-weight-medium) !important;
}
.weight-semibold {
    font-weight: var(--font-weight-semibold) !important;
}
.weight-bold {
    font-weight: var(--font-weight-bold) !important;
}
.weight-black {
    font-weight: var(--font-weight-black) !important;
}

.size-icon-4xs {
    font-size: var(--icon-size-4xs) !important;
}
.size-icon-3xs {
    font-size: var(--icon-size-3xs) !important;
}
.size-icon-2xs {
    font-size: var(--icon-size-2xs) !important;
}
.size-icon-xs {
    font-size: var(--icon-size-xs) !important;
}
.size-icon-sm {
    font-size: var(--icon-size-sm) !important;
}
.size-icon-md {
    font-size: var(--icon-size-md) !important;
}
.size-icon-lg {
    font-size: var(--icon-size-lg) !important;
}
.size-icon-xl {
    font-size: var(--icon-size-xl) !important;
}
.size-icon-2xl {
    font-size: var(--icon-size-2xl) !important;
}
.size-icon-3xl {
    font-size: var(--icon-size-3xl) !important;
}

.size-h1 {
    font-size: var(--font-size-h1) !important;
    line-height: var(--line-height-h1);
}
.size-h2 {
    font-size: var(--font-size-h2) !important;
    line-height: var(--line-height-h2);
}
.size-h3 {
    font-size: var(--font-size-h3) !important;
    line-height: var(--line-height-h3);
}
.size-h4 {
    font-size: var(--font-size-h4) !important;
    line-height: var(--line-height-h4);
}
.size-h5 {
    font-size: var(--font-size-h5) !important;
    line-height: var(--line-height-h5);
}
.size-h6 {
    font-size: var(--font-size-h6) !important;
    line-height: var(--line-height-h6);
}
.size-subtitle {
    font-size: var(--font-size-subtitle) !important;
    line-height: var(--line-height-subtitle);
}
.size-body {
    font-size: var(--font-size-body) !important;
    line-height: var(--line-height-body) !important;
}
.size-overline {
    font-size: var(--font-size-overline) !important;
    line-height: var(--line-height-overline) !important;
}
.size-description {
    font-size: var(--font-size-description) !important;
    line-height: var(--line-height-description) !important;
}
.size-button {
    font-size: var(--font-size-button) !important;
    line-height: var(--line-height-button) !important;
}

/* TRANSITION ====================*/
img,
a,
button,
[role="button"],
input,
textarea,
select,
.select2-selection__placeholder,
.select2-results__option,
.label.anim,
.button,
.ctrl,
.explore,
.container,
.object,
.object-fit,
.bg-img,
.tab-content,
.tabdata-content,
.ic:before,
*[class*="swiper-button-"] {
    transition: var(--duration) var(--timing-function);
}

/* CTAs ====================*/
html.no-touchevents a:hover {
    color: var(--color-active);
}

.link-overlay {
    font-size: 0;
    opacity: 0;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    pointer-events: auto;
}

.link-block {
    display: block;
    position: relative;
    z-index: 1;
}

*:is(.button, .wp-element-button, .wp-block-button__link) {
    --button-border: var(--border-width) var(--border-style)
        rgba(var(--color-black-rgb), 0.3);
    --button-hover-border: var(--border-width) var(--border-style)
        rgba(var(--color-black-rgb), 1);
    --button-bg: transparent;
    --button-hover-bg: transparent;
    --button-color: var(--color-black);
    --button-hover-color: var(--color-black);
    text-decoration: none !important;
    box-shadow: none !important;
    margin: 0;
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    grid-gap: var(--spacing-3xs);
    vertical-align: top;
    white-space: normal;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%;
    height: auto;
    min-height: 0;
    max-height: none;
    padding: var(--spacing-sm) var(--spacing-2sm) !important;
    opacity: 1 !important;
    color: var(--button-color) !important;
    background: var(--button-bg) !important;
    border: var(--button-border) !important;
    border-radius: 0 !important;
    overflow: hidden;
    font-family: var(--font-heading);
    font-weight: var(--font-weight-regular);
    font-size: var(--font-size-button);
    line-height: var(--line-height-button);
    text-align: center;
    transition: var(--duration) var(--timing-function);
    text-transform: uppercase;
    letter-spacing: 0.2rem;
}

*:is(.button, .wp-element-button, .wp-block-button__link):not(
        .secondary,
        .tertiary
    ) {
    min-width: 13rem;
    justify-content: center;
}

*:is(.button, .wp-element-button, .wp-block-button__link).white {
    --button-border: var(--border-width) var(--border-style)
        rgba(var(--color-white-rgb), 0.3);
    --button-hover-border: var(--border-width) var(--border-style)
        rgba(var(--color-white-rgb), 1);
    --button-color: var(--color-white);
    --button-hover-color: var(--color-white);
}

*:is(.button, .wp-element-button, .wp-block-button__link):disabled,
*:is(.button, .wp-element-button, .wp-block-button__link).white:disabled,
*:is(.button, .wp-element-button, .wp-block-button__link).disabled,
*:is(.button, .wp-element-button, .wp-block-button__link).white.disabled {
    --button-color: var(--color-light-gray);
    --button-hover-color: var(--color-light-gray);
    pointer-events: none;
    cursor: not-allowed;
}

html.no-touchevents
    *:is(.button, .wp-element-button, .wp-block-button__link):hover {
    color: var(--button-hover-color) !important;
    background-color: var(--button-hover-bg) !important;
    border: var(--button-hover-border) !important;
}

/* BUTTON TERTIARY */
*:is(.button, .wp-element-button, .wp-block-button__link).tertiary {
    --button-hover-color: #2473a5;
    padding: 0 !important;
    font-size: var(--font-size-description) !important;
    line-height: var(--line-height-description) !important;
    letter-spacing: 0;
    text-transform: unset !important;
    border: none !important;
    font-style: italic !important;
    text-decoration: underline !important;
    display: inline-block;
    width: fit-content;
    min-width: unset;
}

html.no-touchevents
    *:is(.button, .wp-element-button, .wp-block-button__link).tertiary:hover {
    border: unset !important;
}

/* BUTTON SECONDARY */
*:is(.button, .wp-element-button, .wp-block-button__link).secondary {
    --button-hover-color: #2473a5;
    padding: 0 !important;
    font-size: var(--font-size-body) !important;
    line-height: var(--line-height-body) !important;
    font-weight: var(--font-weight-bold) !important;
    letter-spacing: 0;
    text-transform: unset !important;
    border: none !important;
    z-index: 10;
}

*:is(.button, .wp-element-button, .wp-block-button__link).secondary::before {
    content: "";
    position: absolute;
    bottom: 0.2rem;
    left: 0;
    width: 0;
    height: 0.1rem;
    background-color: var(--button-hover-color);
    transition: width var(--duration) var(--timing-function);
}

html.no-touchevents
    *:is(.button, .wp-element-button, .wp-block-button__link).secondary:hover {
    border: unset !important;
}

html.no-touchevents
    *:is(
        .button,
        .wp-element-button,
        .wp-block-button__link
    ).secondary:hover::before {
    width: 100%;
}

.underline-hover {
    --hover-rgb: var(--color-black-rgb);
    --rgb: var(--color-black-rgb);
    display: inline-block;
    position: relative;
}

.underline-hover::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 0.1rem;
    background-color: rgba(var(--rgb), 1);
    transition: var(--duration) var(--timing-function);
}

html.no-touchevents .underline-hover:hover {
    color: rgba(var(--hover-rgb), 1);
}
html.no-touchevents .underline-hover:hover::before {
    width: 100%;
}

/* GENERAL ====================*/
.ic,
.ic-name {
    display: inline-block;
}
.ic > img {
    display: inline-block;
    vertical-align: top;
    width: auto;
    height: 1em;
}
*[class*="ic-"] + *[class*="ic-"] {
    margin-left: var(--spacing-2xs);
}
.ic-youtube:before,
.ic-envelope:before {
    transform: scale(1.3);
    display: block;
    margin: 0 0.2em;
}
.brand {
    text-decoration: none !important;
    box-shadow: none !important;
    opacity: 1 !important;
    display: inline-block;
    vertical-align: top;
    line-height: 1;
}
.brand .logo {
    display: inline-block;
    vertical-align: top;
    height: var(--logo-height);
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center;
}

.lang ul {
    display: inline-flex;
    vertical-align: top;
    align-items: baseline;
}
.lang ul > li:not(:last-child, :empty):after {
    content: "|";
    margin: 0 0.5em;
}
.lang ul > li > a.active {
    color: var(--color-active);
}

html.no-touchevents .lang ul > li > a:not(.active):hover {
    opacity: var(--opacity);
}

/*CONTENT====================*/
.entry-content {
    --gap-row: var(--spacing-2md);
    --gap-column: var(--spacing-2md);
    --gap-content: var(--spacing-2md);
    --wp--preset--font-size--normal: 1.5rem;
    --wp--preset--font-size--small: 1.2rem;
    --wp--preset--font-size--medium: 2rem;
    --wp--preset--font-size--large: 2rem;
    --wp--preset--font-size--x-large: 2.4rem;
    --wp--preset--font-size--xx-large: 2.8rem;
    --wp--preset--font-size--huge: 4rem;
    width: 100%;
}
.entry-content :is(h1, h2, h3, h4, h5, h6) {
    margin: 0;
    font-family: var(--font-heading);
    font-weight: var(--font-weight-regular);
    font-size: inherit;
    line-height: inherit;
    letter-spacing: normal;
    color: var(--color-theme);
}

.entry-content .has-small-font-size {
    font-size: var(--wp--preset--font-size--small) !important;
    line-height: 1.2;
}
.entry-content :is(h6, .has-normal-font-size, .has-regular-font-size) {
    font-size: var(--wp--preset--font-size--normal) !important;
    line-height: 1.5;
}
.entry-content :is(h5, .has-medium-font-size) {
    font-size: var(--wp--preset--font-size--medium) !important;
    line-height: 1.2;
}
.entry-content :is(h4, .has-large-font-size, .has-larger-font-size) {
    font-size: var(--wp--preset--font-size--large) !important;
    line-height: 1.2;
}
.entry-content :is(h3, .has-x-large-font-size) {
    font-size: var(--wp--preset--font-size--x-large) !important;
    line-height: 1.1;
}
.entry-content :is(h2, .has-xx-large-font-size) {
    font-size: var(--wp--preset--font-size--xx-large) !important;
    line-height: 1.1;
}
.entry-content :is(h1, .has-huge-font-size) {
    font-size: var(--wp--preset--font-size--huge) !important;
    line-height: 1;
}
.entry-content p {
    margin: 0;
    font-family: inherit;
    font-weight: inherit;
    font-size: inherit;
    line-height: inherit;
    letter-spacing: normal;
    color: inherit;
}
.entry-content a {
    color: var(--color-theme);
    text-decoration: underline;
    display: inline-block;
    text-decoration-thickness: 0.075rem;
    font-style: italic;
}
.entry-content ul {
    margin: 0;
    padding: 0;
    list-style-type: disc;
    padding-left: 1.2em;
}

.entry-content ul li::marker {
    font-size: 0.7em;
}
.entry-content ol {
    margin: 0;
    padding: 0;
    list-style-type: decimal;
    list-style-position: inside;
}

.entry-content *:is(ul, ol):not(:first-child) + p,
.entry-content p:not(:first-child) + *:is(ul, ol) {
    margin-top: 0;
}

.entry-content .is-layout-flex {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: unset;
    grid-gap: var(--gap-row);
}

.entry-content :is(.wp-block-image, .wp-block-video) :is(img, video) {
    margin: 0;
    height: auto;
    max-height: none;
    max-width: 100%;
    vertical-align: top;
    overflow: hidden;
}
.entry-content
    :is(.wp-block-image, .wp-block-video).size-medium
    :is(img, video) {
    max-width: min(40rem, calc(100% - 2 * var(--spacing-container)));
    max-height: min(47.3rem, calc(100vh - var(--header-height)));
}

.entry-content .wp-block-embed .wp-block-embed__wrapper {
    position: relative;
}
.entry-content .wp-block-embed .wp-block-embed__wrapper:before {
    content: "";
    display: block;
    width: 100%;
    padding-bottom: 56.25%;
}
.entry-content .wp-block-embed .wp-block-embed__wrapper > * {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center;
    position: absolute;
    top: 0;
    left: 0;
}

.entry-content [class*="wp-block"] figcaption {
    font-style: normal;
    font-size: var(--font-size-body-sm);
    line-height: var(--line-height-body);
    color: var(--color-body-black);
}

.entry-content > *,
.entry-content :is([class*="wp-block-"], figcaption) {
    margin: 0;
}
.entry-content > *:not(:first-child),
*:is(.wp-block-group, .wp-block-column, .wp-block-quote) > *:not(:first-child) {
    margin-top: var(--gap-content);
}
[class*="wp-block-"]:not(.wp-block-heading, .wp-block-list, .wp-block-column)
    + *:not(:first-child),
*
    + [class*="wp-block-"]:not(
        .wp-block-heading,
        .wp-block-list,
        .wp-block-column
    ):not(:first-child) {
    margin-top: var(--gap-row);
}
.entry-content li:not(:first-child),
.entry-content br + *:not(:first-child),
.entry-content [class*="wp-block-"] br + *:not(:first-child),
.entry-content [class*="wp-block-"] figcaption:not(:first-child) {
    margin-top: var(--gap-content-xs);
}

.entry-content .wp-block-columns {
    grid-gap: var(--gap-row) var(--gap-column);
}
.entry-content .wp-block-columns > * {
    margin: 0;
}

.entry-content [class*="wp-block"].aligncenter {
    margin-left: auto;
    margin-right: auto;
}

/* HAMBURGER ====================*/
.hamburger {
    position: relative;
    display: block;
    width: auto;
    height: auto;
    line-height: 1;
}
.hamburger .bars {
    display: block;
    width: var(--hamburger-size);
    height: var(--hamburger-size);
    position: relative;
    transform: rotate(0deg);
    transition: var(--duration) var(--timing-function);
    cursor: pointer;
}
.hamburger .bars > .bar {
    display: block;
    position: absolute;
    width: 100%;
    height: var(--hamburger-line);
    background: rgba(var(--rgb), 1);
    opacity: 1;
    left: 0;
    transform: rotate(0deg);
    transition: var(--duration) var(--timing-function);
}
.hamburger .bars > .bar:nth-child(1) {
    top: calc((var(--hamburger-size) / 3) - (var(--hamburger-line) / 2));
}
.hamburger .bars > .bar:is(:nth-child(2), :nth-child(3)) {
    top: calc((var(--hamburger-size) / 2) - (var(--hamburger-line) / 2));
}
.hamburger .bars > .bar:nth-child(4) {
    top: calc((var(--hamburger-size) * 2) / 3 - (var(--hamburger-line) / 2));
}
.active > .hamburger .bars > .bar:is(:nth-child(1), :nth-child(4)) {
    top: calc((var(--hamburger-size) / 2) - (var(--hamburger-line) / 2));
    left: 50%;
    width: 0%;
}
.active > .hamburger .bars > .bar:nth-child(2) {
    transform: rotate(45deg);
}
.active > .hamburger .bars > .bar:nth-child(3) {
    transform: rotate(-45deg);
}

/* FORM  ====================*/
*:is(input, textarea, select) {
    background: none;
    border-radius: 0.4rem;
    border: 0.1rem solid var(--color-light-gray);
    font-family: var(--font-body);
    font-weight: var(--font-weight-regular);
    font-size: var(--font-size-body);
    line-height: normal;
    text-transform: inherit;
    text-align: left;
    letter-spacing: inherit;
    text-indent: inherit;
    color: var(--color-body-black);
    display: block;
    width: 100%;
    height: var(--input-height);
    padding: var(--input-spacing-y) var(--input-spacing-x);
}

textarea {
    --height: calc(var(--input-height) * 3);
    resize: none;
    display: block;
    overflow: auto;
    width: 100% !important;
    min-width: 100%;
    max-width: 100%;
    min-height: var(--height);
}

.input :-ms-input-placeholder {
    font-size: var(--font-size-body) !important;
    font-weight: var(--font-weight-regular) !important;
    font-style: normal !important;
    text-transform: none !important;
    color: var(--color-light-gray) !important;
    opacity: 1 !important;
}
.input ::-webkit-input-placeholder {
    font-size: var(--font-size-body) !important;
    font-weight: var(--font-weight-regular) !important;
    font-style: normal !important;
    text-transform: none !important;
    color: var(--color-light-gray) !important;
    opacity: 1 !important;
}
.input ::-moz-placeholder {
    font-size: var(--font-size-body) !important;
    font-weight: var(--font-weight-regular) !important;
    font-style: normal !important;
    text-transform: none !important;
    color: var(--color-light-gray) !important;
    opacity: 1 !important;
}
.input ::placeholder {
    font-size: var(--font-size-body) !important;
    font-weight: var(--font-weight-regular) !important;
    font-style: normal !important;
    text-transform: none !important;
    color: var(--color-light-gray) !important;
    opacity: 1 !important;
}

textarea::-webkit-input-placeholder {
    font-size: var(--font-size-body) !important;
    font-weight: var(--font-weight-regular) !important;
    font-style: normal !important;
    text-transform: none !important;
    color: var(--color-light-gray) !important;
    opacity: 1 !important;
}

.checkbox {
    display: flex;
    align-items: center;
    justify-content: center;
    grid-gap: var(--spacing-5xs);
}

.checkbox input[type="checkbox"] {
    --input-height: 20px;
    box-shadow: unset;
    border: none;
    background: none;
    padding: inherit;
    margin: unset;
    min-width: unset;
    font: inherit;
    line-height: normal;
    text-align: center;
    width: unset;
    font: inherit;
    color: currentColor;
    width: 1em;
    height: 1em;
    border: 0.05em solid currentColor;
    border-radius: 0.15em;
    display: grid;
    place-content: center;
}

input[type="checkbox"]::before {
    content: "";
    width: 0.65em;
    height: 0.65em;
    transform: scale(0);
    transition: 120ms transform ease-in-out;
    transform-origin: center;
    box-shadow: inset 1em 1em var(--color-black);
    clip-path: polygon(16% 48%, 10% 60%, 48% 90%, 92% 20%, 80% 10%, 45% 70%);
}

input[type="checkbox"]:checked::before {
    transform: scale(1);
}

.input-file {
    display: flex;
    flex-direction: column;
    grid-gap: var(--spacing-3xs);
    z-index: 0;
}

.input-file .file-label .subttl {
    font-size: var(--font-size-description);
    line-height: var(--line-height-description);
    font-weight: var(--font-weight-regular);
}

.input-file .file-upload-wrapper {
    display: flex;
    grid-gap: var(--spacing-2xs);
    align-items: center;
}

.input-file .file-upload-action {
    flex-shrink: 0;
}

.input-file .file-upload-button {
    --button-border: var(--border-width) var(--border-style)
        rgba(var(--color-black-rgb), 0.3);
    --button-hover-border: var(--border-width) var(--border-style)
        rgba(var(--color-black-rgb), 1);
    --button-bg: transparent;
    --button-hover-bg: transparent;
    --button-color: var(--color-black);
    --button-hover-color: var(--color-black);
    color: var(--button-color) !important;
    background: var(--button-bg) !important;
    border: var(--button-border) !important;
    padding: var(--spacing-sm) var(--spacing-2sm);
    font-weight: var(--font-weight-regular);
    font-size: var(--font-size-button);
    line-height: var(--line-height-button);
    transition: var(--duration) var(--timing-function);
    text-transform: uppercase;
    letter-spacing: 0.2rem;
}

html.no-touchevents .input-file .file-upload-button:hover {
    color: var(--button-hover-color) !important;
    background-color: var(--button-hover-bg) !important;
    border: var(--button-hover-border) !important;
}

.file .upload-label {
    margin-top: var(--spacing-2xs);
}

.input-file .file-upload-placeholder {
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex-grow: 1;
}

.input-file .file-upload-placeholder .header {
    display: flex;
    grid-gap: var(--spacing-5xs);
    font-size: var(--font-size-description);
    line-height: var(--line-height-description);
    align-items: center;
}

.input-file .file-upload-placeholder .header .cancel-upload {
    margin-left: auto;
    width: var(--spacing-sm);
    aspect-ratio: 1;
    font-size: var(--font-size-description);
    line-height: 1;
    border-radius: 50%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-white);
    background-color: var(--color-teal);
    flex-shrink: 0;
}

.input-file .file-upload-placeholder .file-progress {
    width: 100%;
    border-radius: 0;
    height: 0.2rem;
    margin-top: var(--spacing-5xs);
    background-color: var(--color-white);
}

.input-file .file-upload-placeholder .file-progress {
    -webkit-appearance: none;
    appearance: none;
    border: none;
    mask-image: radial-gradient(var(--color-teal), var(--color-teal));
    -webkit-mask-image: radial-gradient(var(--color-teal), var(--color-teal));
}

.input-file .file-upload-placeholder .file-progress::-webkit-progress-bar {
    background-color: var(--color-white) !important;
}

.input-file .file-upload-placeholder .file-progress::-webkit-progress-value {
    background-color: var(--color-teal);
}

.input-file
    .custom-file-upload.filled
    .file-upload-placeholder
    .file-description {
    display: none;
}

/* SELECT */
.select {
    position: relative;
}
.select select {
    line-height: normal;
    padding-right: var(--input-height);
    text-overflow: "";
    cursor: pointer;
}
.select:after {
    font-family: "iconfont";
    content: "\e982";
    font-size: var(--icon-size-2xs);
    font-weight: normal;
    line-height: 1;
    color: inherit;
    vertical-align: top;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding-right: 0;
    width: var(--input-height);
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    z-index: 1;
    pointer-events: none;
    overflow: hidden;
}
.select2-parent:after {
    display: none !important;
}
.select2-rendered__match {
    text-decoration: underline;
}
.select2-close-mask {
    border: 0;
    margin: 0;
    padding: 0;
    display: block;
    position: fixed;
    left: 0;
    top: 0;
    min-height: 100%;
    min-width: 100%;
    height: auto;
    width: auto;
    opacity: 0;
    z-index: 98;
    background-color: #fff;
    filter: alpha(opacity=0);
}
.select2-hidden-accessible {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    -webkit-clip-path: inset(50%) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
    white-space: nowrap !important;
}
.select2-container {
    position: relative;
    display: block;
    width: 100%;
    margin: 0;
    top: calc(100% + var(--spacing-4xs)) !important;
}
.select2-dropdown {
    --color-active: var(--color-black);
    box-sizing: border-box;
    display: block;
    width: 100%;
    position: absolute;
    z-index: 1051;
    left: -100000px;
    font-weight: var(--font-weight-body);
    font-size: var(--font-size-body);
    line-height: var(--line-height-body) !important;
    color: var(--color-middark) !important;
    background: var(--color-white) !important;
    border: var(--input-border) !important;
    box-shadow: none !important;
    border-radius: 0.4rem !important;
    overflow: hidden !important;
    transition: none;
}
.select2-container--open .select2-dropdown {
    left: 0;
}
.select2-container--open .select2-dropdown--below {
    margin: -1px 0 0;
}
.select2-container--open .select2-dropdown--above {
    /*top*/
    margin: 0;
}
.select2-results {
    display: block;
}
.select2-results__options {
    list-style: none;
    margin: 0;
    font-size: var(--font-size-body);
    line-height: var(--line-height-body);
    text-align: left;
}
.select2-results__option {
    padding: var(--spacing-5xs) var(--spacing-3xs);
}
.select2-results__option[aria-selected] {
    cursor: pointer;
}
.select2-results__option:not([id]) {
    margin: 0;
}
.select2-search--dropdown {
    display: block;
    padding: var(--spacing-sm);
}
.select2-search--dropdown .select2-search__field {
    padding: 7px 15px 8px;
    width: 100%;
    box-sizing: border-box;
}
.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
    -webkit-appearance: none;
}
.select2-search--dropdown.select2-search--hide {
    display: none;
}
.select2-container--default .select2-selection--single {
    outline: 0;
    padding: 0;
    display: block;
    width: 100%;
    height: var(--input-height);
    color: inherit;
    background: none;
    border-bottom: var(--input-border);
    transition: none;
    overflow: hidden;
    cursor: pointer;
    font-weight: var(--font-weight-regular);
    border-radius: 0.4rem;
    border: 0.1rem solid var(--color-light-gray);
}
.select2-container--default
    .select2-selection--single
    .select2-selection__rendered {
    display: block;
    padding: var(--input-spacing-y) var(--input-spacing-x);
    padding-right: var(--input-height);
    height: 100%;
    line-height: calc(var(--input-height) - var(--input-spacing-y) * 2);
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: inherit;
}
.select2-container--default
    .select2-selection--single
    .select2-selection__rendered[title] {
    background-color: transparent;
}
.select2-container--default
    .select2-selection--single
    .select2-selection__clear {
    position: relative;
    cursor: pointer;
    float: right;
}
.select2-container--default
    .select2-selection--single
    .select2-selection__placeholder {
    color: var(--color-theme);
    opacity: 1;
}
.select2-container--default
    .select2-selection--single
    .select2-selection__arrow,
.select2-container--default
    .select2-selection--single
    .select2-selection__clear {
    position: absolute;
    top: 0px;
    right: var(--spacing-xs);
    z-index: 1;
    display: block;
    width: calc(var(--input-height) / 2);
    height: 100%;
    font-size: 0;
    text-align: center;
    color: inherit;
    cursor: pointer;
}
.select2-container--default
    .select2-selection--single
    .select2-selection__arrow
    b {
    border: 0;
    margin: 0;
    position: static;
    top: auto;
    left: auto;
    display: block;
    width: 100%;
    height: 100%;
    transition: transform var(--duration) var(--timing-function);
    transform-origin: center;
}
.select2-container--open
    .select2-selection--single
    .select2-selection__arrow
    b {
    transform: rotate(180deg);
}
.select2-container--default
    .select2-selection--single
    .select2-selection__arrow
    b:before,
.select2-container--default
    .select2-selection--single
    .select2-selection__clear:before {
    font-family: "iconfont";
    font-size: var(--icon-size-xs);
    font-weight: normal;
    line-height: 1;
    vertical-align: top;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    height: 100%;
}
.select2-container--default
    .select2-selection--single
    .select2-selection__arrow
    b:before {
    content: "\e982";
}
.select2-container--default
    .select2-selection--single
    .select2-selection__clear:before {
    content: "\e900";
}
.select2-container--default.select2-container--disabled
    .select2-selection--single {
    background-color: #eee;
    cursor: default;
}
.select2-container--default.select2-container--disabled
    .select2-selection--single
    .select2-selection__clear {
    display: none;
}
.select2-container--default.select2-container--disabled
    .select2-selection__choice__remove {
    display: none;
}
.select2-container--default.select2-container--open
    .select2-selection--single
    .select2-selection__arrow
    b {
    border: 0;
}
/* .select2-container--default.select2-container--open.select2-container--above .select2-selection--single {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
.select2-container--default.select2-container--open.select2-container--below .select2-selection--single {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
} */
.select2-container--default .select2-search--dropdown .select2-search__field {
    border: 1px solid var(--border-color);
}
.select2-container--default .select2-search--inline {
    float: left;
}
.select2-container--default .select2-search--inline .select2-search__field {
    -webkit-appearance: textfield;
    box-sizing: border-box;
    box-shadow: none;
    background: none;
    border: none;
    padding: 0;
    outline: 0;
    font-size: 100%;
    margin-top: 5px;
}
.select2-container--default
    .select2-search--inline
    .select2-search__field::-webkit-search-cancel-button {
    -webkit-appearance: none;
}
.select2-container--default .select2-results > .select2-results__options {
    max-height: 30vh;
    overflow-y: auto;
}
.select2-container--default .select2-results__option span {
    display: inline;
    font-weight: inherit;
    transition: var(--duration) var(--timing-function);
}
.select2-container--default .select2-results__option[role="group"] {
    padding: 0;
}
.select2-container--default
    .select2-results__option--highlighted[aria-selected] {
    background: var(--color-light-gray);
    color: inherit;
}
.select2-container--default
    .select2-results__option--highlighted[aria-selected]
    span {
    color: var(--color-active);
}
.select2-container--default .select2-results__option[aria-selected="true"],
.select2-container--default .select2-results__option[data-selected="true"] {
    font-weight: inherit;
    text-decoration: none;
    background: var(--color-light-gray2);
    color: inherit;
}
.select2-container--default
    .select2-results__option[aria-selected="true"]
    span {
    box-shadow: var(--cta-shadow);
}
.select2-container--default .select2-results__option[aria-disabled="true"] {
    background: none !important;
    color: inherit !important;
    opacity: var(--opacity-light) !important;
    pointer-events: none !important;
    text-decoration: none !important;
    box-shadow: none !important;
}
.select2-container--default
    .select2-results__option[aria-disabled="true"]:first-child {
    display: none;
}
.select2-container--default .select2-results__group {
    display: block;
    padding: 0;
    cursor: default;
}

/* CHECKBOX & RADIO */
.choice {
    position: relative;
    display: flex;
    max-width: 100%;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    font-family: inherit;
    font-weight: inherit;
    font-size: inherit;
    color: inherit;
    line-height: inherit;
    letter-spacing: normal;
    text-transform: none;
}
.choice > span {
    position: relative;
    display: inline-block;
    -webkit-touch-callout: none;
}
.choice > input {
    position: absolute;
    z-index: -1000;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    background: none;
}
.choice input + span {
    display: inline-block;
    vertical-align: baseline;
    text-align: left;
    padding-left: calc(1.6rem + var(--spacing-2xs));
    line-height: inherit;
    min-width: 1.6rem;
    min-height: 1.6rem;
    height: auto;
    cursor: pointer;
}
.choice input + span:before,
.choice input + span:after {
    content: "";
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.6rem;
    height: 1.6rem;
    border-radius: 2px;
    color: rgba(var(--rgb), 1);
    line-height: 1;
    margin: 0;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.choice input + span:before {
    background: none;
    border: 1px solid;
}
.choice input + span:after {
    background: currentColor;
    opacity: 0;
    transform: scale(0.5);
    transition: opacity var(--duration) var(--timing-function);
}
.choice input:checked + span:after {
    opacity: 1;
}
.choice input[type="checkbox"] + span:after {
    font-family: "iconfont";
    content: "\e923";
    background: none;
    width: 1.6rem;
    height: 1.6rem;
    transform: translateY(-50%) scale(1);
}
.choice input[type="radio"] + span:before,
.choice input[type="radio"] + span:after {
    border-radius: 50%;
}
.choice-container {
    display: grid;
    grid-template-columns: 100%;
    grid-gap: var(--spacing-xs);
}
.label:not(.anim) + *[class*="choice"] {
    margin-top: var(--spacing-sm);
}

.fields {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    grid-gap: var(--spacing-xs) 0;
}
.field {
    position: relative;
    width: 100%;
}
.field.focusin {
    z-index: 2;
}

.label {
    padding: 0;
    border: 0;
    border-radius: 0;
    position: relative;
    display: block;
    font-family: var(--font-body);
    font-weight: var(--font-weight-regular);
    font-size: var(--font-size-description);
    line-height: var(--line-height-description);
    text-transform: none;
    color: var(--color-theme);
    opacity: 1;
}
.c-white .label {
    color: inherit;
}
.label:not(.anim):not(:last-child) {
    margin-bottom: var(--spacing-4xs);
}
.label a {
    box-shadow: var(--cta-shadow);
}
.label.anim {
    height: auto;
    width: 100%;
    max-width: 100%;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    position: absolute;
    z-index: 1;
    left: 0;
    top: calc(var(--input-height) / 2);
    transform: translateY(-50%);
    padding: 0 var(--input-spacing-x);
    pointer-events: none;
}
.label.anim:not(.fixed) {
    transition-property: opacity, visibility;
}
.input.filled .label.anim:not(.fixed) {
    opacity: 0;
    visibility: hidden;
}
.input:has(*:-internal-autofill-selected) .label.anim:not(.fixed) {
    opacity: 0;
    visibility: hidden;
}

.input.filled .label.anim.fixed,
.input:has(*:-internal-autofill-selected) .label.anim.fixed {
    top: 0;
    padding: 0;
    transform: translateY(-50%);
    font-size: var(--font-size-body-sub);
    opacity: var(--opacity);
}

.input {
    position: relative;
    text-align: left;
}

.input .entry-title {
    font-weight: var(--font-weight-body);
    font-size: var(--font-size-h3);
    line-height: var(--line-height-h3);
}
.input .entry-title:not(:last-child) {
    margin-bottom: var(--spacing-2sm);
}

.input.with-cta .cta {
    margin: 0;
    position: absolute;
    z-index: 3;
    right: 0;
    top: calc(var(--input-height) / 2);
    transform: translateY(-50%);
}
.input input:-internal-autofill-selected,
.input textarea:-internal-autofill-selected,
.input select:-internal-autofill-selected {
    color: inherit;
}
.input input:disabled,
.input textarea:disabled,
.input select:disabled,
.select2-container--default.select2-container--disabled
    .select2-selection--single {
    cursor: default;
    opacity: 0.1;
}
.input input[type="checkbox"]:disabled,
.input input[type="radio"]:disabled {
    background-color: transparent;
}
.input :-ms-input-placeholder {
    font-size: var(--font-size-body) !important;
    font-weight: var(--font-weight-regular) !important;
    font-style: normal !important;
    text-transform: none !important;
    color: var(--color-light-gray) !important;
    opacity: 1 !important;
}
.input ::-webkit-input-placeholder {
    font-size: var(--font-size-body) !important;
    font-weight: var(--font-weight-regular) !important;
    font-style: normal !important;
    text-transform: none !important;
    color: var(--color-light-gray) !important;
    opacity: 1 !important;
}
.input ::-moz-placeholder {
    font-size: var(--font-size-body) !important;
    font-weight: var(--font-weight-regular) !important;
    font-style: normal !important;
    text-transform: none !important;
    color: var(--color-light-gray) !important;
    opacity: 1 !important;
}
.input ::-ms-clear {
    display: none;
    width: 0;
    height: 0;
}
.input ::-ms-reveal {
    display: none;
    width: 0;
    height: 0;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0;
}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
    outline: 0;
}
input::-webkit-contacts-auto-fill-button {
    display: none !important;
    visibility: hidden;
    pointer-events: none;
}
input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
    box-shadow: 0 0 0px 1000px #fff inset;
    -webkit-transition: 5000s ease 0s;
    transition: 5000s ease 0s;
}
input[type="number"] {
    -moz-appearance: textfield;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* FORM:UPLOAD FILE ====================*/

/* PLUGIN:POPUP ====================*/

/* PLUGIN:SLIDER ====================*/
.swiper {
    width: 100%;
}
.swiper-wrapper {
    will-change: transform;
}
.swiper-slide {
    width: 100% !important;
}

*[class*="swiper-button-"] {
    z-index: 10;
    outline: none;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    height: auto;
    color: inherit;
    background: none;
    border-radius: 0;
    overflow: visible;
    line-height: 1;
    top: 50%;
    transform: translateY(-50%);
    background-color: var(--color-white);
    padding: var(--spacing-3xs);
    border-radius: 50%;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
}
.swiper-button-next {
    right: 0;
}
.swiper-button-prev {
    left: 0;
}
*[class*="swiper-button-"]:after {
    position: relative;
    font-family: "iconfont";
    font-weight: normal;
    font-size: var(--icon-size-2xs);
    color: var(--color-black);
    opacity: 1;
    transition: var(--duration) var(--timing-function);
}

html.no-touchevents *[class*="swiper-button-"]:hover {
    background-color: var(--color-black);
}

html.no-touchevents *[class*="swiper-button-"]:hover:after {
    color: var(--color-white);
}
.swiper-button-prev:after {
    content: "\e909";
    transform: translateX(-12%);
}
.swiper-button-next:after {
    content: "\e90a";
    transform: translateX(12%);
}
.swiper-button-disabled {
    opacity: var(--opacity-light) !important;
    pointer-events: auto !important;
}
.swiper-button-lock {
    display: none !important;
}

.swiper-pagination {
    --rgb: var(--color-black-rgb);
    line-height: 0;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    gap: var(--spacing-2xs);
    pointer-events: none;
    position: static;
    margin-left: auto;
    margin-right: auto;
    margin-top: var(--spacing-xl);
}
.swiper-horizontal > .swiper-pagination-bullets {
    bottom: var(--gap-section);
    left: unset;
    right: var(--header-nav-right);
    width: fit-content;
}

.swiper-pagination.a-center {
    justify-content: center;
}
.swiper-pagination-bullet {
    outline: none !important;
    margin: 0 !important;
    opacity: 1 !important;
    font-size: 0;
    display: block;
    width: 1rem;
    height: 1rem;
    background: transparent;
    border: 1px solid rgba(var(--rgb), 1);
    border-radius: 50%;
    overflow: hidden;
    position: relative;
    transition: var(--duration) var(--timing-function);
    pointer-events: auto;
}
.swiper-pagination-bullet-active {
    background: rgba(var(--rgb), 1);
}
.static-pagination .swiper-pagination {
    position: static;
    margin: var(--spacing-2sm) 0;
}
.static-pagination .swiper-pagination-bullet {
    border: var(--border);
}
.static-pagination .swiper-pagination-bullet-active {
    background: rgba(var(--color-theme-rgb), 1);
}
.swiper-pagination[data-style="bar"] {
    grid-gap: 0;
}
.swiper-pagination[data-style="bar"] .swiper-pagination-bullet {
    border-radius: 0;
    height: 2px;
    width: 70px;
    max-width: 12.3076923077vw;
    margin: 0 !important;
}
.swiper-pagination[data-style="bar"] .swiper-pagination-bullet:first-child {
    margin-left: 0 !important;
}
.swiper-pagination[data-style="bar"] .swiper-pagination-bullet:last-child {
    margin-right: 0 !important;
}
.swiper-horizontal > .swiper-pagination[data-style="bar"] {
    bottom: var(--spacing-2md);
}

.swiper-fade .swiper-slide {
    opacity: 0 !important;
    z-index: 0 !important;
    pointer-events: none !important;
}
.swiper-fade .swiper-slide-active {
    opacity: 1 !important;
    z-index: 1 !important;
    pointer-events: auto !important;
}

.swiper.default.fade .swiper-slide,
.swiper.auto.fade .swiper-slide {
    width: 100% !important;
    height: auto !important;
}
.swiper.default.fade .swiper-slide > *,
.swiper.auto.fade .swiper-slide > * {
    height: 100%;
}

.swiper.fix *[class*="swiper-button-"] {
    top: 0;
    transform: none;
}

.swiper-button-prev.spacing-x {
    left: var(--spacing-container);
}
.swiper-button-next.spacing-x {
    right: var(--spacing-container);
}

/*PLUGIN:MARQUEE====================*/
*[data-js="liMarquee"] .mWrap .mMove,
*[data-js="liMarquee"] .mWrap .mItem {
    width: auto !important;
}
*[data-js="liMarquee"] .mWrap .mItem {
    float: left !important;
}
*[data-js="liMarquee"] .cloneContent {
    padding: 0 !important;
}

/* FUNCTION:TAB ====================*/
.tab,
.tabdata {
    position: relative;
}
.tab-content,
.tabdata-content {
    margin: 0 !important;
    position: relative;
    height: 0;
    opacity: 0;
    overflow: hidden;
    pointer-events: none;
    transition-property: opacity;
    transition-duration: 1s;
}
.tab-content.active,
.tabdata-content.active {
    height: auto;
    opacity: 1;
    overflow: visible;
    pointer-events: auto;
}

/* FUNCTION:ACCORDION ====================*/
.accordion {
    --border-color: rgba(var(--color-white-rgb), 0.2);
    border-bottom: var(--border-width) var(--border-style) var(--border-color);
}
.accordion > .entry-panel {
    display: none;
    padding-bottom: var(--spacing-2sm);
}
.accordion > .entry-panel *[block-width] {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.accordion > .entry-title {
    font-family: var(--font-heading);
    font-weight: var(--font-weight-semibold);
    font-size: var(--font-size-h5);
    line-height: var(--line-height-h5);
    color: inherit;
    position: relative;
    display: flex;
    align-items: center;
    gap: 0;
    padding: var(--spacing-2sm) 0;
    transition: var(--duration) var(--timing-function);
    cursor: pointer;
}
.accordion.active > .entry-title {
    color: inherit;
}
.accordion > .entry-title:after {
    font-family: "iconfont";
    content: "\e908";
    font-size: var(--icon-size-sm);
    font-weight: normal;
    line-height: 1;
    display: block;
    margin-left: auto;
    pointer-events: none;
    transition: var(--duration) var(--timing-function);
}
.accordion.active > .entry-title:after {
    transform: rotate(-180deg);
}

/* FUNCTION:VIDEO ==================== */

/* FUNCTION:CLIPBOARD ==================== */
#clipboard {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100px;
    width: 100px;
    max-width: 100%;
    margin: 0 auto;
    padding: var(--spacing-xs);
    font-family: var(--font-body);
    font-weight: var(--font-weight-body);
    font-size: var(--font-size-body-sub);
    line-height: normal;
    letter-spacing: normal;
    text-transform: uppercase;
    background-color: var(--color-theme);
    color: var(--color-white);
    border-radius: 50%;
    overflow: hidden;
    position: fixed;
    z-index: 999999;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* FUNCTION:COPY TO CLIPBOARD ==================== */
@-webkit-keyframes copy-slide-up {
    0% {
        -webkit-transform: translate(-50%, 0) scale(0.8);
        transform: translate(-50%, 0) scale(0.8);
        opacity: 0;
    }
    100% {
        -webkit-transform: translate(-50%, -120%) scale(1);
        transform: translate(-50%, -120%) scale(1);
        opacity: 1;
    }
}
@keyframes copy-slide-up {
    0% {
        -webkit-transform: translate(-50%, 0) scale(0.8);
        transform: translate(-50%, 0) scale(0.8);
        opacity: 0;
    }
    100% {
        -webkit-transform: translate(-50%, -120%) scale(1);
        transform: translate(-50%, -120%) scale(1);
        opacity: 1;
    }
}

#copy_tooltip {
    display: block;
    position: absolute;
    background: var(--color-teal);
    color: #fff;
    padding: 0.5rem 1rem;
    border-radius: 4px;
    top: 0;
    width: 10rem;
    text-align: center;
    left: 50%;
    transform: translateX(-50%);
    margin: auto;
    opacity: 0;
    pointer-events: none;
    font-size: var(--font-size-description);
    line-height: var(--line-height-description);
    font-family: var(--font-heading);
}

#copy_tooltip::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -8px;
    width: 0;
    height: 0;
    border-top: 8px solid var(--color-teal);
    border-right: 8px solid transparent;
    border-left: 8px solid transparent;
}

#copy_tooltip.active {
    -webkit-animation: copy-slide-up 0.15s cubic-bezier(0.51, 0.92, 0.265, 1.55)
        both;
    animation: copy-slide-up 0.15s cubic-bezier(0.51, 0.92, 0.265, 1.55) both;
}

#copy_tooltip.inactive {
    -webkit-animation: copy-slide-up 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94)
        reverse both;
    animation: copy-slide-up 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94) reverse
        both;
}

/* PAGE ==================== */
#page {
    display: grid;
    grid-template-rows: 1fr auto;
    min-height: 100svh;
}

/* FILTER ==================== */

/*MODULES==================== */

/* ANIMATE ==================== */
.animate {
    -webkit-animation-duration: var(--duration-x2);
    animation-duration: var(--duration-x2);
    -webkit-animation-timing-function: var(--timing-function);
    animation-timing-function: var(--timing-function);
    /* will-change: opacity, transform; */
}
.animated {
    -webkit-animation-delay: 0.1s;
    animation-delay: 0.1s;
}

@-webkit-keyframes matrixZoomOut {
    from {
        opacity: 0;
        transform: scale(1.05);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}
@keyframes matrixZoomOut {
    from {
        opacity: 0;
        transform: scale(1.05);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}
.matrixZoomOut {
    transform-origin: center center;
    -webkit-animation-name: matrixZoomOut;
    animation-name: matrixZoomOut;
    animation-duration: 1s;
}

.lenis {
    height: auto;
}
.lenis.lenis-smooth {
    scroll-behavior: auto !important;
}
.lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain;
}
.lenis.lenis-stopped {
    overflow: hidden;
}
.lenis.lenis-scrolling iframe {
    pointer-events: none;
}

/* BUNDLE ==================== */
img,
iframe,
.button,
#header,
#footer,
.mfp-close,
.select2-selection--single,
.select2-results__option,
.choice > span,
.accordion > .entry-title,
.sc-billboard {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

html.touchevents a {
    -webkit-user-select: auto;
    -moz-user-select: auto;
    -ms-user-select: auto;
    user-select: auto;
}

.hamburger,
.plaimanas,
.button,
.social a,
.object,
.object-fit,
.qty-btn,
.sc-link,
.mfp-close .modal-dismiss {
    text-decoration: none !important;
    box-shadow: none !important;
}

/* CHECK ==================== */
#page-message {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: var(--spacing-md);
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: 999999;
    top: 0;
    left: 0;
    background: var(--color-white);
    color: var(--color-black);
    will-change: opacity;
    opacity: 0;
    pointer-events: none;
}
@media (max-width: 991px) and (orientation: landscape) {
    html.is-device #page-message {
        opacity: 1;
        pointer-events: auto;
        transition: opacity var(--duration) var(--timing-function);
    }
}

/* HEADER ==================== */
#header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
    --rgb: var(--color-white-rgb);
    --bg-color: rgba(var(--color-black-rgb), 0.2);
    background-color: var(--bg-color);
    padding: 0 var(--spacing-container);
    backdrop-filter: blur(6.75px);
    transition: background-color var(--duration) var(--timing-function);
}

html {
    --header-height: 8.8rem;
}

html.page-scrolling,
html .variant-header {
    --header-height: 7rem;
}

html.page-scrolling #header,
html .variant-header #header {
    --rgb: var(--color-black-rgb);
    --bg-color: var(--color-light-gray2);
    border-bottom: 0.1rem solid var(--color-gray);
}

html.page-scrolling .brand .logo,
html .variant-header .brand .logo {
    filter: var(--color-filter-black);
}

.header-nav {
    margin-left: auto;
    margin-right: auto;
    color: rgba(var(--rgb), 1);
    z-index: 100;
    transition: height var(--duration) var(--timing-function);
}

.panel-body .menu > li > a {
    text-transform: uppercase;
    text-align: center;
}

.submenu .link-overlay {
    pointer-events: none;
}

.submenu.active .link-overlay {
    pointer-events: auto;
}

/* FOOTER ==================== */
.not-found-page #footer {
    display: none;
}

#footer {
    background-color: var(--color-teal);
    color: var(--color-white);
}

.footer-nav {
    display: flex;
    flex-direction: column;
    gap: 33rem;
    padding: var(--spacing-2lg) var(--spacing-container) var(--spacing-2md);
}

.footer-cta [class*="block-content-"] {
    gap: var(--spacing-2sm);
}

.footer-links {
    display: flex;
    gap: var(--spacing-lg);
    align-items: center;
}

.footer-links .brand {
    filter: var(--color-filter-white);
}

.footer-links .footer-nav-list {
    margin-left: auto;
    display: flex;
    gap: var(--spacing-2md);
    align-items: center;
    text-transform: uppercase;
}

.footer-social {
    line-height: 1;
    flex-shrink: 0;
}

/* MAIN ====================*/
#main {
    --sticky-top: calc(var(--header-height) + var(--spacing-container));
    position: relative;
    width: 100%;
}

section {
    overflow: clip;
    position: relative;
    width: 100vw;
    background-color: var(--color-light-gray2);
    z-index: 5;
}

section.header-margin {
    margin-top: var(--header-height);
}

.sc-inner {
    position: relative;
    width: 100%;
    padding-top: var(--gap-section);
    padding-bottom: var(--gap-section);
}
.sc-inner.pc-t-header {
    padding-top: var(--header-height);
}
.sc-inner.pc-t-0 {
    padding-top: 0;
}
.sc-inner.pc-t-25 {
    padding-top: calc(var(--gap-section) / 4);
}
.sc-inner.pc-t-50 {
    padding-top: calc(var(--gap-section) / 2);
}
.sc-inner.pc-t-75 {
    padding-top: calc(var(--gap-section) * 3 / 4);
}
.sc-inner.pc-t-100 {
    padding-top: var(--gap-section);
}
.sc-inner.pc-t-125 {
    padding-top: calc(var(--gap-section) * 1.25);
}
.sc-inner.pc-t-150 {
    padding-top: calc(var(--gap-section) * 1.5);
}
.sc-inner.pc-t-175 {
    padding-top: calc(var(--gap-section) * 1.75);
}
.sc-inner.pc-t-200 {
    padding-top: calc(var(--gap-section) * 2);
}
.sc-inner.pc-b-header {
    padding-bottom: var(--header-height);
}
.sc-inner.pc-b-0 {
    padding-bottom: 0;
}
.sc-inner.pc-b-25 {
    padding-bottom: calc(var(--gap-section) / 4);
}
.sc-inner.pc-b-50 {
    padding-bottom: calc(var(--gap-section) / 2);
}
.sc-inner.pc-b-75 {
    padding-bottom: calc(var(--gap-section) * 3 / 4);
}
.sc-inner.pc-b-100 {
    padding-bottom: var(--gap-section);
}
.sc-inner.pc-b-125 {
    padding-bottom: calc(var(--gap-section) * 1.25);
}
.sc-inner.pc-b-150 {
    padding-bottom: calc(var(--gap-section) * 1.5);
}
.sc-inner.pc-b-175 {
    padding-bottom: calc(var(--gap-section) * 1.75);
}
.sc-inner.pc-b-200 {
    padding-bottom: calc(var(--gap-section) * 2);
}

.container {
    max-width: 144rem;
    position: relative;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--spacing-container);
    padding-right: var(--spacing-container);
}
.container.width-container-sm {
    padding-left: var(--spacing-container-sm);
    padding-right: var(--spacing-container-sm);
}
.wrapper {
    width: 100%;
    height: 100%;
    position: relative;
}
[class*="block-content-"] {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-lg);
}
.block-content-start {
    align-items: flex-start;
    text-align: start;
}
.block-content-center {
    align-items: center;
    text-align: center;
    text-wrap: balance;
}
.block-content-end {
    align-items: flex-end;
    text-align: end;
}

.block-ttl > * {
    transition: var(--duration) var(--timing-function);
}

.block-desc > * {
    transition: var(--duration) var(--timing-function);
}

.h-svh {
    height: 100svh;
}
.h-lvh {
    height: 100lvh;
}
.h-vh {
    height: 100vh;
}

.sc-billboard {
    position: relative;
    width: 100%;
    /* -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; */
}

.sc-billboard.full-screen {
    height: 100svh;
}

[class*="gradient-overlay-"]::before {
    content: "";
    position: absolute;
    width: 100%;
    height: var(--gradient-height, 30%);
    left: 0;
    background: linear-gradient(
        var(--gradient-direction, 0deg),
        rgba(0, 0, 0, var(--gradient-opacity, 0.6)) 0%,
        rgba(0, 0, 0, 0) 100%
    );
    z-index: 10;
}

.gradient-overlay-top::before {
    top: 0;
    --gradient-direction: 180deg;
}

.gradient-overlay-bottom::before {
    bottom: 0;
    --gradient-direction: 0deg;
}

.overlay::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: rgba(var(--color-black-rgb), var(--overlay-opacity, 0.3));
    z-index: 1;
}

.sc-billboard .object-fit,
.sc-billboard .sc-inner,
.sc-billboard *:is(.swiper, .swiper-wrapper, .swiper-slide) {
    height: 100%;
    width: 100%;
}

.card {
    --text-align: left;
    width: 100%;
    display: block;
    position: relative;
    color: rgba(var(--rgb), 1);
    text-align: var(--text-align);
    white-space: normal;
    cursor: default;
}

.card .hover-scale-overlay {
    overflow: hidden;
    position: relative;
}

.card .hover-scale-overlay:before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: rgba(var(--color-black-rgb), 0.3);
    opacity: 0;
    transition: opacity var(--duration) var(--timing-function);
    z-index: 1;
}

.card .hover-scale-overlay *:is(img, video) {
    transition: transform var(--duration) var(--timing-function);
}

html.no-touchevents .card:hover .hover-scale-overlay:before {
    opacity: 1;
}

html.no-touchevents .card:hover .hover-scale-overlay *:is(img, video) {
    transform: scale(1.05);
}

.card-container {
    --gap-x: 0rem;
    --gap-y: 0rem;
    --column: 1;
    --minmax: 0rem;
    position: relative;
}

.card-container[data-card-layout="grid"] {
    display: grid;
    grid-gap: var(--gap-y) var(--gap-x);
    grid-template-columns: repeat(
        var(--column),
        calc((100% - (var(--gap-x) * (var(--column) - 1))) / var(--column))
    );
    grid-auto-flow: dense;
}

.card-container[data-card-layout="grid-minmax"] {
    display: grid;
    grid-gap: var(--gap-y) var(--gap-x);
    grid-template-columns: repeat(auto-fill, minmax(var(--minmax), 1fr));
    grid-auto-flow: dense;
}

.card-container[data-card-layout="flex"] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    grid-gap: var(--gap-y) var(--gap-x);
}
.card-container[data-card-layout="flex"] > .card {
    width: calc((100% - (var(--gap-x) * (var(--column) - 1))) / var(--column));
}

.card-container[data-card-layout="slider"] {
    margin-left: calc((var(--gap-x) * -1) / 2);
    margin-right: calc((var(--gap-x) * -1) / 2);
}
.card-container[data-card-layout="slider"] .swiper-slide {
    width: calc(100% / var(--column)) !important;
    padding-left: calc(var(--gap-x) / 2);
    padding-right: calc(var(--gap-x) / 2);
}
.card-container[data-card-layout="slider"] .swiper-button-prev {
    transform: translateX(calc((var(--gap-y)) / 2));
}
.card-container[data-card-layout="slider"] .swiper-button-next {
    transform: translateX(calc((var(--gap-x) * -1) / 2));
}

.card .card-image {
    position: relative;
}

.card .card-content {
    position: relative;
    display: flex;
    flex-direction: column;
    grid-gap: var(--spacing-sm);
}

.sc-header {
    width: 100%;
    display: flex;
    align-items: center;
    margin-bottom: var(--spacing-md);
}
.sc-header.justify-center {
    justify-content: center;
    text-align: center;
}
.sc-header.justify-between {
    justify-content: space-between;
}
.sc-ttl {
    text-align: center;
    margin-bottom: var(--spacing-5xl);
}
.marquee {
    display: inline-flex !important;
}

/* Popup */
.popup {
    width: fit-content;
    position: relative;
    z-index: 90;
    --top-offset: var(--spacing-2xs);
}

.popup-content {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: calc(100% + var(--top-offset));
    width: fit-content;
    box-shadow: 0px 0px 10px 0px rgba(var(--color-black-rgb), 0.25);
    transition: var(--duration) var(--timing-function);
}

.popup-content.active {
    opacity: 1;
    visibility: visible;
}

.popup-content-inner {
    padding: var(--spacing-2sm) var(--spacing-xs);
    background-color: var(--color-white);
}

.popup[data-popup-pc-location="start"] .popup-content {
    left: 0;
}

.popup[data-popup-pc-location="center"] .popup-content {
    left: 50%;
    transform: translateX(-50%);
}

.popup[data-popup-pc-location="end"] .popup-content {
    right: 0;
}

/* Map */
.map-wrapper {
    position: relative;
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}

.map-wrapper .map {
    width: 100%;
    aspect-ratio: 5;
}

.map-wrapper .pin {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 3.6rem;
    aspect-ratio: 1;
}

/* COMPONENT */
/* DEFAULT ====================*/

/* SECTION ====================*/
/* TAB CONTENT SELECT */
[data-section="tab-content-select"] .content {
    padding: 0 var(--spacing-sm);
}

[data-section="tab-content-select"] .sc-ttl {
    margin-bottom: var(--spacing-lg);
    text-align: left;
}

[data-section="tab-content-select"] .tab-container {
    display: flex;
    gap: var(--spacing-md);
    justify-content: space-between;
}

[data-section="tab-content-select"] .tab-container .tab-links {
    width: 32.1212121212%;
}

[data-section="tab-content-select"] .tab-links .tab-link {
    padding: var(--spacing-2sm) var(--spacing-xs);
    display: block;
}

[data-section="tab-content-select"] .tab-links .tab-link.active {
    pointer-events: none;
    background-color: var(--color-white) !important;
}

html.no-touchevents
    [data-section="tab-content-select"]
    .tab-links
    .tab-link:hover {
    background-color: var(--color-light-gray);
}

[data-section="tab-content-select"] .tab-container .tab-contents {
    width: 57.1212121212%;
}

[data-card="career"] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: var(--spacing-sm);
    padding: var(--spacing-2sm);
    border-bottom: 0.1rem solid var(--color-light-gray);
    transition: var(--duration) var(--timing-function);
}

html.no-touchevents [data-card="career"]:hover {
    background-color: var(--color-white);
    border-color: var(--color-white);
}

[data-card="career"] .card-name {
    font-size: var(--font-size-h6);
    line-height: var(--line-height-h6);
}

[data-card="career"] .career-cta {
    position: relative;
    z-index: 5;
}

/* PARALLAX BG */
[data-section="parallax-bg"] {
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 100svh;
    /* background-image: url("../media/design/soho-x-menu.jpg");
    background-attachment: fixed;
    background-size: cover;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    background-repeat: no-repeat;
    background-position: top center; */
}

[data-section="parallax-bg"] .bg-wrap {
    clip: rect(0, auto, auto, 0);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

[data-section="parallax-bg"] .bg {
    position: fixed;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100svh;
    background-size: cover;
    background-position: center center;
    transform: translateZ(0);
    will-change: transform;
    background-image: url("../media/design/soho-x-menu.jpg");
}

.studio-main [data-section="parallax-bg"] .bg {
    background-image: url("../media/design/studio-1.jpg");
}

[data-section="parallax-bg"]::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: rgba(var(--color-black-rgb), 0.4);
    z-index: 1;
}

[data-section="parallax-bg"] .sc-inner {
    height: 100%;
}

[data-section="parallax-bg"] .container {
    z-index: 1;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

[data-section="parallax-bg"] [class*="block-content-"] {
    gap: var(--spacing-md);
    max-width: 90rem;
    text-wrap: pretty;
}

/* FULL SCREEN BANNER */
[data-section="full-screen-banner"] .container {
    max-width: unset;
    width: 100vw;
    height: 100lvh;
    position: relative;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: var(--color-white);
    background-color: var(--color-black);
}

[data-section="full-screen-banner"].header-offset .container {
    padding-top: var(--header-height);
}

[data-section="full-screen-banner"] .banner-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-md);
    position: relative;
    z-index: 10;
}

[data-section="full-screen-banner"] .banner-content .vertical-logo {
    aspect-ratio: 2.5904761905;
    width: max(37.7777777778vw, 54.3rem);
}

[data-section="full-screen-banner"] .banner-content .vertical-logo img,
[data-section="full-screen-banner"] .banner-content .brand-single-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    filter: var(--color-filter-white);
}

[data-section="full-screen-banner"] .banner-media.brand-overlay::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 43.45%, #000 100%);
}

[data-section="full-screen-banner"] .banner-content .brand-single-logo {
    aspect-ratio: 1;
    width: max(16.25vw, 23.4rem);
}

/* SHORT TEXT CONTENT */
[data-section="short-text-contnet"] [class*="block-content-"] {
    max-width: 102.3rem;
    margin-left: auto;
    margin-right: auto;
}

[data-section="short-text-contnet"]
    [class*="block-content-"]
    .block-desc
    > *:not(:first-child) {
    margin-top: var(--spacing-sm);
}

[data-section="short-text-contnet"]
    [class*="block-content-"]
    .block-desc
    *:is(h1, p) {
    font-size: var(--font-size-h4);
    line-height: var(--line-height-h4);
}

.about-main
    [data-section="short-text-contnet"]
    [class*="block-content-"]
    .block-desc
    *:is(h1, p) {
    font-size: var(--font-size-body);
    line-height: var(--line-height-body);
}

/* SLIDE CONTENT */
[data-section="slide-content"] [class*="block-content-"] {
    margin-bottom: var(--spacing-5xl);
}

[data-section="slide-content"].full-width.team .card-container {
    margin-top: var(--spacing-sm);
}

[data-section="slide-content"] .card-container {
    --gap-x: var(--pc-gap-x);
    --gap-y: var(--pc-gap-y);
    --column: var(--pc-col-count);
}

[data-section="slide-content"].full-width .card-container {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-left: var(--spacing-container-sm);
    padding-right: var(--spacing-container-sm);
}

[data-section="slide-content"] .swiper {
    overflow: visible;
}

[data-section="slide-content"] .swiper-slide {
    height: auto;
}

[data-section="slide-content"] [class*="swiper-button-"] {
    top: calc(
        (100vw / var(--pc-col-count) - var(--pc-gap-x)) /
            var(--card-media-ratio) / 2
    );
}

/* ELEMENT ====================*/
/* FANCY BOX */
.fancybox__backdrop {
    background-color: rgba(var(--color-black-rgb), 0.5);
}

.fancybox__dialog .f-button {
    --f-button-bg: transparent;
    --f-button-width: 7rem;
    --f-button-height: 7rem;
    --f-button-svg-width: 4rem;
    --f-button-svg-height: 4rem;
    --f-button-color: var(--color-white);
}

.fancybox__dialog .f-button[title="Close"] {
    transform: translate(-1rem, 3rem);
}

/* CENTER SLIDE */
.center-slide .slide-ttl {
    padding: 0 var(--spacing-container-sm);
    margin-bottom: var(--spacing-lg);
    text-align: center;
}

.center-slide .card-container {
    --gap-x: var(--spacing-3xs);
    --gap-y: var(--spacing-3xs);
    --column: 2.5;
}

.center-slide .gallery-media {
    aspect-ratio: 1.3530997305;
    position: relative;
}

.center-slide .swiper-button-prev {
    left: var(--spacing-container-sm);
}

.center-slide .swiper-button-next {
    right: var(--spacing-container-sm);
}

.center-slide .gallery-media .gallery-text {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: var(--spacing-2sm);
    color: var(--color-white);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: var(--spacing-7xs);
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0) 0%,
        rgba(0, 0, 0, 0.6) 100%
    );
    transition: opacity var(--duration) var(--timing-function);
    opacity: 0;
}

html.no-touchevents .center-slide .gallery-media.has-text:hover .gallery-text {
    opacity: 1;
}

/* TAB BAR */
.tab-bar {
    max-width: 100vw;
    position: relative;
    border-top: 0.1rem solid var(--color-light-gray);
}
.tab-bar.tab-links {
    width: calc(100vw - var(--spacing-container-sm) * 2);
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    transform: translateX(var(--spacing-container-sm));
}
.tab-bar:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0.1rem;
    background-color: var(--color-light-gray);
}
.tab-bar-item {
    display: block;
    padding: var(--spacing-2xs);
}
.tab-bar-item span {
    opacity: 0.4;
    transition: opacity 1s ease-in-out;
}
.tab-bar-item.active span {
    opacity: 1;
}
.swiper-slide:first-child .tab-bar-item {
    padding-left: 0;
}
.swiper-slide:nth-last-child(2) .tab-bar-item {
    padding-right: 0;
}

.tab-bar .swiper-slide {
    width: auto !important;
}

.tab-bar .tab-selector {
    position: absolute;
    bottom: 0rem;
    left: 0;
    height: 0.1rem;
    background-color: var(--color-black);
    transition: all 1s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1;
}

.tab-bar.header-sticky {
    position: sticky;
    top: var(--header-height);
    z-index: 99;
    background-color: var(--color-light-gray2);
}

.tab-bar.header-sticky .swiper-slide:first-child .tab-bar-item {
    padding-left: var(--spacing-2sm);
}
.tab-bar.header-sticky .swiper-slide:nth-last-child(2) .tab-bar-item {
    padding-right: var(--spacing-2sm);
}

/* TEAM CARD */
[data-card="team"] .card-media {
    aspect-ratio: var(--card-media-ratio);
}

[data-card="team"] .card-ttl,
[data-card="team"] .card-desc {
    margin-top: var(--spacing-sm);
}

.swiper-slide:not(:last-child) [data-card="team"]:after {
    content: "";
    position: absolute;
    top: 0;
    right: calc(-1 * var(--pc-gap-x) / 2);
    width: 0.1rem;
    height: 100%;
    background-color: var(--color-light-gray);
}
/* ICON CARD */
[data-card="icon"] {
    height: 100%;
    text-align: center;
}

.swiper-slide:not(:last-child) [data-card="icon"]:after {
    content: "";
    position: absolute;
    top: 0;
    right: calc(-1 * var(--pc-gap-x) / 2);
    width: 0.1rem;
    height: 100%;
    background-color: var(--color-light-gray);
}

[data-card="icon"] .card-media {
    aspect-ratio: var(--card-media-ratio);
    background-color: var(--color-light-gray2);
    width: 68.1081081081%;
    margin-left: auto;
    margin-right: auto;
}

[data-card="icon"] .card-media *:is(img, video) {
    mix-blend-mode: multiply;
}

[data-card="icon"] .card-ttl {
    margin-top: var(--spacing-2lg);
}

[data-card="icon"] .card-desc {
    margin-top: var(--spacing-md);
}

/* LOAD MORE BUTTON */
.load-more-btn {
    text-align: center;
    margin-top: var(--spacing-3xl);
}

/* SQUARE CARD */
[data-card="square"] .card-media {
    aspect-ratio: 1;
}

[data-card="square"] .card-ttl,
[data-card="square"] .card-button {
    margin-top: var(--spacing-sm);
}

[data-card="square"] .card-desc {
    margin-top: var(--spacing-4xs);
}

/* STUDIO CARD */
[data-card="studio"] .card-media {
    aspect-ratio: var(--card-media-ratio);
}

[data-card="studio"] .card-content {
    gap: 0;
    width: 82.8220858896%;
}

.full-width-studio-card [data-card="studio"] .card-content {
    width: 100%;
}

[data-card="studio"] .card-ttl,
[data-card="studio"] .card-button,
[data-card="studio"].team .card-desc {
    margin-top: var(--spacing-sm);
}

[data-card="studio"] .card-button {
    flex-grow: 1;
    display: flex;
    align-items: flex-end;
}

[data-card="studio"] .card-desc {
    margin-top: var(--spacing-4xs);
}

[data-card="studio"].team .card-desc {
    font-size: var(--font-size-description);
    line-height: var(--line-height-description);
}

/* BRAND CARD */
[data-card="brand"] {
    height: 100%;
    padding-bottom: var(--spacing-2sm);
}

[data-card="brand"] .card-media {
    aspect-ratio: var(--card-media-ratio);
}

.swiper-slide:not(:last-child) [data-card="brand"]:after {
    content: "";
    position: absolute;
    top: 0;
    right: calc(-1 * var(--pc-gap-x) / 2);
    width: 0.1rem;
    height: 100%;
    background-color: var(--color-light-gray);
}

[data-card="brand"] .card-logo {
    height: 6.4rem;
    display: flex;
    align-items: center;
    border-bottom: 0.1rem solid var(--color-light-gray);
}

[data-card="brand"] .card-logo img {
    max-height: 3.9rem;
    max-width: 11.3rem;
}

[data-card="brand"] .card-desc,
[data-card="brand"] .card-ttl {
    margin-top: var(--spacing-xs);
}

[data-card="brand"] .card-button {
    position: relative;
    z-index: 10;
}

[data-card="brand"] .card-logo + .card-button {
    margin-top: var(--spacing-xs);
}

/* STICKY CONTAINER */
main .sticky-el {
    position: sticky;
    top: 0;
    z-index: 0;
}

/* SECTION SEPARATOR */
.separator {
    width: 100%;
    border-top: 0.1rem solid var(--color-light-gray);
    margin-top: -0.1rem;
    position: relative;
    z-index: 10;
}

.section-separator {
    width: calc(100% - var(--spacing-container-sm) * 2);
    margin-left: auto;
    margin-right: auto;
    border-top: 0.1rem solid var(--color-light-gray);
    margin-top: -0.1rem;
    position: relative;
    z-index: 10;
}

section .section-separator {
    width: calc(100vw - var(--spacing-container-sm) * 2);
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    transform: translateX(var(--spacing-container-sm));
}

/* PAGE */
/* PAGE: INDEX */

/* PAGE: ABOUT */

/* PAGE: BRAND */
/* BRAND SUMMARY */
.brand-summary {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 5;
    transition: transform var(--duration-x2) var(--timing-function);
    transform: translateY(calc(100% - 5.7rem - var(--spacing-2sm)));
}

html.no-touchevents .brand-summary:hover {
    transform: translateY(0);
}

/* Thumbs */
.brand-summary .thumbs .swiper-slide {
    width: auto !important;
    height: auto;
    padding-left: calc(var(--spacing-md) / 2);
    padding-right: calc(var(--spacing-md) / 2);
    cursor: pointer;
}

.brand-summary .thumbs .swiper-slide:first-child {
    padding-left: 0;
}

.brand-summary .thumbs .swiper-slide:last-child {
    padding-right: 0;
}

.brand-summary .brand-logo-media {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 9.6rem;
    max-height: 5.7rem;
}

.brand-summary .brand-logo-media img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    filter: var(--color-filter-white);
    opacity: 0.34;
}

.brand-summary .swiper-slide-thumb-active .brand-logo-media img {
    opacity: 1;
}

/* Slides */
.brand-summary .slides {
    margin-top: var(--spacing-2sm);
    padding-bottom: var(--spacing-lg);
    max-width: 38rem;
}

.brand-summary .brand-summray-slide .brand-button {
    margin-top: var(--spacing-2sm);
}

/* HRZ GRID */
[data-section="hrz-grid"] .content {
    display: flex;
    gap: var(--spacing-2lg);
    padding: 0 var(--spacing-md);
}

[data-section="hrz-grid"] .content-text {
    width: max(30rem, 20.8333333333vw);
    flex-shrink: 0;
}

[data-section="hrz-grid"] .content-text-desc {
    margin-top: var(--spacing-3xl);
}

[data-section="hrz-grid"] .card-container {
    --column: var(--pc-col-count);
    --gap-x: var(--pc-gap-x);
    --gap-y: var(--pc-gap-y);
}

[data-section="hrz-grid"] .card-container [data-card="brand"]:before {
    content: "";
    position: absolute;
    top: 0;
    left: calc(-1 * var(--pc-gap-x) / 2);
    width: 0.1rem;
    height: 100%;
    background-color: var(--color-light-gray);
}

/* PAGE: BRAND SINGLE */
/* DUAL BLOCK */
[data-section="dual-block"] .content {
    display: flex;
    justify-content: space-between;
    gap: var(--spacing-3xl);
    padding: 0 var(--spacing-2md);
}

[data-section="dual-block"] .content [class*="block-content-"] {
    width: 44.6165762974%;
    flex-shrink: 0;
    padding-left: 2.4786986832%;
    justify-content: center;
}

[data-section="dual-block"] .content .content-media {
    width: 47.4825716499%;
    flex-shrink: 0;
    aspect-ratio: 0.8909883721;
    height: fit-content;
}

[data-section="dual-block"].reverse .content {
    flex-direction: row-reverse;
}

[data-section="dual-block"].reverse .content [class*="block-content-"] {
    padding-left: 0;
    padding-right: 2.4786986832%;
}

/* STATS */
[data-section="stats"] .stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border-top: 0.1rem solid var(--color-light-gray);
    border-bottom: 0.1rem solid var(--color-light-gray);
}

[data-section="stats"] .stat-item {
    padding: var(--spacing-2lg) var(--spacing-3xs);
    text-align: center;
    position: relative;
}

[data-section="stats"] .stat-item .odometer.odometer-auto-theme {
    font-family: var(--font-body);
    line-height: var(--line-height-h5);
}

[data-section="stats"] .stat-item:not(:last-child):after {
    content: "";
    --offset: var(--spacing-xs);
    position: absolute;
    top: var(--offset);
    right: 0;
    width: 0.1rem;
    height: calc(100% - var(--offset) * 2);
    background-color: var(--color-light-gray);
}

.odometer {
    /* display: inline-flex;
    justify-content: center;
    min-width: 4ch; */
    font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum";
}

/* BRAND SINGLE GALLERY */
[data-section="brand-single-gallery"] .main-media {
    aspect-ratio: 1.932885906;
    margin-top: var(--spacing-3xs);
}

[data-section="develop-with-us"] [class*="block-content-"] {
    max-width: 83.3rem;
}

/* PAGE: PARTNER */
/* DUAL BLOCK TEMPLATE */
[data-section="dual-block-template"] [class*="block-content-"] .block-desc {
    max-width: 80rem;
}
[data-section="dual-block-template"] [class*="block-content-"] {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: var(--spacing-5xl);
}

.dual-block-template-container {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-md);
}

.dual-block-template {
    display: flex;
    gap: var(--spacing-md);
    align-items: center;
    justify-content: space-between;
}

.dual-block-template .block-text {
    width: 42.7356484763%;
    flex-shrink: 0;
}

.dual-block-template:nth-child(odd) .block-text {
    padding-left: min(4.4444444444vw, var(--spacing-2xl));
}

.dual-block-template:nth-child(even) .block-text {
    padding-right: min(4.4444444444vw, var(--spacing-2xl));
    order: 2;
}

.dual-block-template .block-text [class*="block-content-"] {
    margin-bottom: 0;
}

.dual-block-template .block-media {
    width: 48.3345145287%;
    aspect-ratio: 1.3694779116;
    flex-shrink: 0;
}

/* PARTNER FORM */
[data-section="partner-form"] [class*="block-content-"] {
    margin-bottom: var(--spacing-5xl);
}

.content-form {
    max-width: 66.2rem;
    margin-left: auto;
    margin-right: auto;
}

.content-form .fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    row-gap: var(--spacing-2sm);
    column-gap: var(--spacing-lg);
}

.content-form .fields > * {
    grid-column: span 2;
}

.content-form .fields > .half-width {
    grid-column: span 1;
}

.content-form .form-button {
    margin-top: var(--spacing-5xl);
}

/* PAGE: STORIES  */
/* STORIES */
[data-section="stories"] [class*="block-content-"] {
    margin-bottom: var(--spacing-3xl);
}

[data-section="stories"] .tab-links .swiper {
    overflow: visible;
}

[data-section="stories"] .card-container.stories {
    margin-top: var(--spacing-lg);
    padding: 0 var(--spacing-2lg);
}

/* PAGE: STORY SINGLE  */
[data-section="story-single"] .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-lg);
}

[data-section="story-single"] [class*="block-content-"] {
    max-width: 89rem;
}

[data-section="story-single"] .entry-content {
    max-width: 63.4rem;
}

.link-share {
    display: flex;
    align-items: center;
    gap: var(--spacing-2sm);
}

.link-share a {
    position: relative;
}

html.no-touchevents .link-share a:hover span:first-child {
    opacity: 0.6;
}

/* PAGE: NOT FOUND */
[data-section="not-found"] .sc-inner {
    min-height: 100svh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: var(--color-teal);
}

[data-section="not-found"] [class*="block-content-"] .block-illus {
    width: 7rem;
    aspect-ratio: 1;
}

/* PAGE: CONTACT */
[data-section="contact"] .contact-map {
    display: flex;
    gap: var(--spacing-md);
    margin-top: var(--spacing-xl);
}

[data-section="contact"] .contact-map .map {
    aspect-ratio: 1.5;
    flex-grow: 1;
    flex-shrink: 0;
    position: relative;
}

[data-section="contact"] .contact-map .map-label {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        0deg,
        rgba(0, 0, 0, 0) 72.6%,
        rgba(0, 0, 0, 0.2) 100%
    );
    color: var(--color-white);
    z-index: 10;
    display: flex;
    padding: var(--spacing-md);
    pointer-events: none;
}

[data-section="contact"] .contact-map .map-marker {
    position: absolute;
    border-radius: 50%;
    width: 5rem;
    aspect-ratio: 1;
    overflow: hidden;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
    cursor: pointer;
    display: block;
    transition: transform var(--duration) var(--timing-function);
}

html.no-touchevents [data-section="contact"] .contact-map .map-marker:hover {
    transform: scale(1.2);
}

[data-section="contact"] .contact-map .map-marker img {
    user-drag: none;
    -webkit-user-drag: none;
    -khtml-user-drag: none;
    -moz-user-drag: none;
    -o-user-drag: none;
    user-select: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
}

[data-section="contact"] .tab-bar {
    border-top: none;
}

[data-section="contact"] .location-list-scroll {
    --mask-box-image-offset: var(--spacing-5xl);
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -ms-scroll-chaining: none;
    overscroll-behavior-y: auto !important;
    -webkit-mask-box-image: -webkit-linear-gradient(
        -90deg,
        transparent 0%,
        white var(--spacing-md),
        white calc(100% - var(--mask-box-image-offset)),
        transparent 100%
    );
    scrollbar-width: none;
    -ms-overflow-style: none;
    &::-webkit-scrollbar {
        display: none;
    }
}

[data-section="contact"] .location-list {
    height: 37.7083333333vw;
}

[data-section="contact"] .location-item {
    display: flex;
    gap: var(--spacing-2xs);
    padding: var(--spacing-2xs);
    border-bottom: 0.1rem solid var(--color-light-gray);
}

[data-section="contact"] .location-item:first-child {
    margin-top: var(--spacing-xs);
}
[data-section="contact"] .location-item:last-child {
    padding-bottom: var(--spacing-5xl);
}

[data-section="contact"] .location-item .location-item-logo {
    width: max(15.421686747%, 6.4rem);
    aspect-ratio: 1;
    flex-shrink: 0;
}

[data-section="contact"] .location-item .buttons {
    margin-top: var(--spacing-md);
    margin-bottom: var(--spacing-xs);
    display: flex;
    gap: var(--spacing-2xs);
    align-items: center;
}

[data-section="contact"] .contact-info .card-container {
    --column: 3;
    --gap-x: var(--spacing-xs);
    --gap-y: var(--spacing-md);
    margin-top: var(--spacing-xs);
}

[data-card="contact-info"] .card-media {
    aspect-ratio: 1.3719512195;
}

[data-card="contact-info"] .card-content {
    margin-top: var(--spacing-2sm);
    grid-gap: var(--spacing-2sm);
}

[data-card="contact-info"] .card-content .card-contact {
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: var(--spacing-lg);
}

/* PAGE: CAREER SINGLE */
.back-button {
    display: inline-block;
    margin-bottom: var(--spacing-2sm);
}

[data-section="career-single"] .content {
    display: flex;
    gap: var(--spacing-4xl);
    justify-content: space-between;
    margin-top: var(--spacing-2lg);
}

[data-section="career-single"] .content-header {
    width: 26.8065268065%;
}

[data-section="career-single"] .content-body {
    width: 66.2004662005%;
}

[data-section="career-single"] .content-header [class*="block-content-"] {
    gap: var(--spacing-2sm);
}

[data-section="career-single"] .content-body {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-2lg);
}

[data-section="career-single"] .content-body .description-item {
    display: grid;
    column-gap: var(--spacing-xl);
    grid-template-columns: 17.5% 1fr;
}

[data-section="career-single"] .content-form .form-button {
    margin-top: var(--spacing-2sm);
}

/* PAGE: STUDIO SINGLE */
/* OVERVIEW */
[data-section="studio-overview"] .content {
    display: flex;
    gap: var(--spacing-md);
    justify-content: space-between;
    padding: 0 var(--spacing-3lg);
    align-items: center;
}

[data-section="studio-overview"] .content-text {
    width: 43.1746031746%;
}

[data-section="studio-overview"] .content-text .block-grid {
    width: 93.9338235294%;
    margin-left: auto;
    margin-right: auto;
    display: grid;
    grid-template-columns: 37.9647749511% 1fr;
    gap: var(--spacing-2sm);
    grid-auto-flow: column;
    text-align: left;
}

[data-section="studio-overview"] .content-text .block-grid .grid-ttl {
    grid-column: 1;
}

[data-section="studio-overview"] .content-text .block-grid .grid-text {
    grid-column: 2;
}

[data-section="studio-overview"] .content-media {
    width: 48.6894360604%;
    aspect-ratio: 0.8909883721;
}

/* GALLERY */
[data-section="studio-gallery"] .sc-ttl {
    margin-bottom: var(--spacing-lg);
}

[data-section="studio-gallery"] .card-container {
    --gap-x: var(--spacing-3xs);
    --gap-y: var(--spacing-3xs);
    --column: 3;
}

[data-section="studio-gallery"] .gallery-media {
    aspect-ratio: 1.3530997305;
    position: relative;
}
