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

:root {
    --color-bob: #E9DF66;
    --color-bob-rgb: 233,223,102;
    --color-don: #EA3207;
    --color-don-rgb: 234,50,7;

    --color-black: #000000;
    --color-black-rgb: 0,0,0;
    --color-white: #ffffff;
    --color-white-rgb: 255,255,255;
    --color-gray: #9f9f9f;
    --color-gray-rgb: 159,159,159;
    --color-gray-light: #ededed;
    --color-gray-light-rgb: 237,237,237;
    --color-error: #EA3207;
    
    --color-body: var(--color-black);
    --color-body-rgb: var(--color-black-rgb);
    --color-body-couple: var(--color-white);
    --color-body-couple-rgb: var(--color-white-rgb);

    --rgb: var(--color-black-rgb);
    --rgb-couple: var(--color-white-rgb);
    
    --filter-black: brightness(0);
    --filter-white: brightness(0) invert(1);

    --font-body: 'Work Sans';
    --font-weight-regular: normal;
    --font-weight-bold: bold;
    
    --font-size-3xs: 8px;
    --font-size-2xs: 10px;
    --font-size-xs: 12px;
    --font-size-sm: 14px;
    --font-size-md: 16px;
    --font-size-lg: 18px;
    --font-size-xl: 20px;
    
    --line-height-xs: 1;
    --line-height-sm: 1.3;
    --line-height-md: 1.6;
    
    --letter-spacing: normal;
    
    --icon-size: 20px;
    --icon-size-lg: 24px;
    --icon-size-xl: 30px;
    
    --spacing-2xl: 120px;
    --spacing-2xl-minus: -120px;
    --spacing-xl: 60px;
    --spacing-xl-minus: -60px;
    --spacing-lg: 40px;
    --spacing-lg-minus: -40px;
    --spacing-md: 30px;
    --spacing-md-minus: -30px;
    --spacing-sm: 20px;
    --spacing-sm-minus: -20px;
    --spacing-xs: 15px;
    --spacing-xs-minus: -15px;
    --spacing-2xs: 10px;
    --spacing-2xs-minus: -10px;
    --spacing-3xs: 5px;
    --spacing-3xs-minus: -5px;
    --spacing-container: var(--spacing-md);
    --spacing-container-minus: var(--spacing-md-minus);
    
    /*

    
    

    --button-height: 40px;
    --button-border-color: var(--color-border);
    --button-spacing-x: var(--spacing-sm);
    --button-spacing-y: 0;
    */

    --input-height: 44px;
    --input-spacing-x: 0;
    --input-spacing-y: var(--spacing-3xs);

    --duration: 0.3s;
    --duration-x2: 0.6s;
    --timing-function: ease;
    --cta-shadow: 0 -0.5px 0px 0px inset;
    --opacity: 0.5;
    --opacity-light: 0.2; 
    
    --logo-width: 0px;
    --logo-height: 0px;
    --header-height: 0px;
    
    --vh: 1vh;
    --lvh: calc(var(--vh, 1vh) * 100);
    --lvh-flexible: calc(var(--dvh, 1vh) * 100);
    --lvh-fallback: 100vh;
}

@supports (-webkit-touch-callout:none) {
    :root {
        --lvh: var(--lvh-fallback);
    }
}

::-moz-selection {
    background: var(--color-theme);
    color: var(--color-theme-couple);
}

::selection {
    background: var(--color-theme);
    color: var(--color-theme-couple);
}

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

/*FIX====================*/
.bg-body { background-color: var(--color-body-couple) !important;}
.bg-bob { background-color: var(--color-bob) !important;}
.bg-don { background-color: var(--color-don) !important;}
.bg-theme { background-color: var(--color-theme) !important;}
.bg-black { background-color: var(--color-black) !important;}
.bg-white { background-color: var(--color-white) !important;}

.c-body { color: var(--color-body) !important;}
.c-bob { color: var(--color-bob) !important;}
.c-don { color: var(--color-don) !important;}
.c-theme { color: var(--color-theme) !important;}
.c-black { color: var(--color-black) !important;}
.c-white { color: var(--color-white) !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;}

.plaimanas a { color: inherit !important;}

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

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

.hidden { display: none !important;}
.overflow-hidden { overflow: hidden !important;}
.a-left { text-align: left !important;}
.a-right { text-align: right !important;}
.a-center { text-align: center !important;}
.uppercase { text-transform: uppercase !important;}
.nowrap { white-space: nowrap !important;}
.inline-block { display: inline-block !important;}

.alignwide { 
    width: 100% !important; 
    max-width: 100% !important; 
    margin-left: auto !important; 
    margin-right: auto !important;
}

.alignfull { 
    width: 100vw !important; 
    max-width: 100vw !important; 
    margin-left: calc(50% - 50vw) !important; 
    margin-right: calc(50% - 50vw) !important;
}


/*RESET====================*/
article, aside, figcaption, figure, picture, footer, header, hgroup, main, nav, section {
    display: block;
}
html {
    font-family: sans-serif;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}
body {
    margin: 0;
    position: relative;
    overflow-x: hidden;
    background: var(--color-body-couple);
    color: var(--color-body);
}
h1,h2,h3,h4,h5,h6 {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}
p {
    margin: 0;
}
address {
    font-style: normal;
}
ul, ol {
    list-style: none;
}
ul, ol, li {
    margin: 0;
    padding: 0;
}
img {
    border: 0;
    outline: 0;
    height: auto;
    width: auto;
    max-width: 100%;
    vertical-align: middle;
}
figure,
picture {
    margin: 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 {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    box-shadow: none;
    background: none;
    border-radius: 0;
    border: 0;
    outline: 0;
    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;
    margin: 0;
    padding: 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] {
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
    appearance: textfield;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    appearance: none;
    margin: 0;
}
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: rgba(var(--rgb),var(--opacity-light));
}
iframe {
    border: 0;
}
[tabindex="-1"]:focus {
    outline: 0 !important;
}
script {
    margin: 0 !important;
}


/*STYLE====================*/
/*TEXT*/
body {
    font-family: var(--font-body);
    font-weight: var(--font-weight-body);
    font-size: var(--font-size-body);
    line-height: var(--line-height-body);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.size-3xs {
    font-size: var(--font-size-3xs) !important;
}
.size-2xs {
    font-size: var(--font-size-2xs) !important;
}
.size-xs {
    font-size: var(--font-size-xs) !important;
}
.size-sm {
    font-size: var(--font-size-sm) !important;
}
.size-md {
    font-size: var(--font-size-md) !important;
}
.size-lg {
    font-size: var(--font-size-lg) !important;
}
.size-xl {
    font-size: var(--font-size-xl) !important;
}


/*TRANSITION*/
img, video,
a, button, 
input, textarea, select {
    transition: var(--duration) var(--timing-function);
}


/*CTAs*/
.link-overlay {
    font-size: 0;
    opacity: 0;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
}

.button-icon {
    line-height: 1;
}
.button-icon .ic {
    font-size: var(--icon-size-lg);
}
.button-icon:hover {
    opacity: var(--opacity-light);
}


/*GENERAL*/
.container {
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--spacing-container);
    padding-right: var(--spacing-container);
}

.ic, 
.ic-name {
    display: inline-block;
}
.ic > img {
    display: inline-block;
    vertical-align: top;
    width: auto;
    height: 1em;
}
.ic-youtube:before {
    transform: scale(1.2);
    display: block;
    margin: 0 0.2em;
}

.brand {
    display: inline-block;
    vertical-align: top;
}
.brand .logo {
    display: block;
    width: var(--logo-width);
    height: var(--logo-height);
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center;
}

.object,
.object-fit {
    display: block;
    overflow: hidden;
    position: relative;
}
.object > img,
.object > video,
.object > iframe {
    display: block;
    width: 100%;
    margin: auto;
}
.object-fit > img,
.object-fit > video,
.object-fit > 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-fit:before {
    content: "";
    display: block;
    width: 100%;
}
.object-overlay {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    top: 0; 
    bottom: 0;
    left: 0;
    right: 0;
}

.bg-img {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
.no-touchevents .bg-img.fixed {
    background-attachment: fixed;
}

.social {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    vertical-align: top;
    grid-gap: var(--spacing-sm);
    line-height: 1;
}
.social .ic {
    font-size: var(--icon-size);
    padding: 1px;
    margin: -1px;
}
.social a {
    text-decoration: none !important;
    box-shadow: none !important;
    display: block;
}
.social a:before,
.social a:after {
    display: none !important;
}

.iframe-container {
    position: relative;
    overflow: hidden;
    padding-top: 56.25%;
}
.iframe-container iframe {
    outline: 0;
    border: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

.map-container {
    width: 100%;
    position: relative;
    overflow: hidden;
}
.map-container:before {
    content: "";
    display: block;
    width: 100%;
}
.map-container iframe {
    outline: 0;
    border: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0; 
    top: 0;
}
.map-container .design {
    position: absolute;
    left: 50%; 
    top: 50%;
    transform: translate(-50%, -50%);
    cursor: pointer;
}
.map-container .design,
.map-container .design img {
    display: block;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}


/*FORM*/
input,
textarea,
select {
    border: 0;
    border-radius: 0;
    background: none;
    font-family: var(--font-body);
    font-size: var(--font-size-body);
    font-weight: var(--font-weight-body);
    line-height: normal;
    text-transform: inherit;
    text-align: left;
    letter-spacing: inherit;
    text-indent: inherit;
    color: inherit;
    display: block;
    width: 100%;
    height: var(--input-height);
    padding: var(--input-spacing-y) var(--input-spacing-x);
    border-bottom: 1px solid rgba(var(--rgb),var(--opacity-light));
}
textarea {
    resize: none;
    display: block;
    overflow: auto;
    width: 100% !important;
    min-width: 100%;
    max-width: 100%;
    padding-top: 0.75em;
}

/*FORM:SELECT*/
.select {
    position: relative;
}
.select select {
    line-height: normal;
    padding-right: var(--input-height);
    text-overflow: "";
    cursor: pointer;
}
.select:after {
    font-family: 'iconfont';
    content: "\e904";
    font-size: var(--font-size-3xs);
    font-weight: normal;
    line-height: 1;
    color: inherit;
    vertical-align: top;
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    text-align: right;
    padding-right: var(--input-spacing-x);
    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;
}
.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: 99;
    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;
}
.select2-dropdown {
    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-black) !important;
    background: var(--color-white) !important;
    box-shadow: none !important;
    border: 1px solid var(--input-border-color) !important;
    border-radius: var(--radius) !important;
    overflow: hidden !important;
    transition: none;
}
.select2-container--open .select2-dropdown {
    left: 0;
}
.select2-container--open .select2-dropdown--below {
    margin: var(--spacing-2xs) 0 0;
}
.select2-container--open .select2-dropdown--above { /*top*/
    margin: -1px 0 0;
}
.select2-results {
    display: block;
}
.select2-results__options {
    list-style: none;
    margin: 0;
    padding: var(--spacing-sm);
    font-size: var(--font-size-body);
    line-height: var(--line-height-body);
    text-align: left;
}
.select2-results__option {
    padding: 0;
}
.select2-results__option:not(:last-child) {
    margin-bottom: var(--spacing-2xs);
}
.select2-results__option[aria-selected] {
    cursor: pointer;
}
.select2-search--dropdown {
    display: block;
    padding: var(--spacing-xs);
}
.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: 0;
    border-bottom: 1px solid var(--input-border-color);
    border-radius: 0;
    transition: none;
    overflow: hidden;
    cursor: pointer;
    font-weight: var(--font-weight-regular);
}
.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 - 1px);
    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-gold);
    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: 0px;
    z-index: 1;
    display: block;
    width: var(--input-height);
    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%;
}
.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(--font-size-3xs);
    font-weight: normal;
    line-height: 1;
    vertical-align: top;
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    padding-right: var(--input-spacing-x);
    text-align: right;
    width: 100%;
    height: 100%;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b:before {
    content: "\e904";
}
.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(--color-border);
}
.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: none;
    color: inherit;
}
.select2-container--default .select2-results__option--highlighted[aria-selected] span {
    box-shadow: var(--cta-shadow);
}
.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: none;
    color: inherit;
}
.select2-container--default .select2-results__option[data-selected=true],
.select2-container--default .select2-results__option[aria-selected=true] span {
    
}
.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__group {
    display: block;
    padding: 0;
    cursor: default;
}

/*FORM: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(1em + var(--spacing-2xs));
    line-height: inherit;
    min-width: 1em;
    min-height: 1em;
    height: auto;
    cursor: pointer;
}
.choice input + span:before,
.choice input + span:after {
    content: "";
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1em;
    height: 1em;
    line-height: 1;
    margin: 0;
    position: absolute;
    left: 0; 
    top: 2px;
}
.choice input + span:before {
    background: none;
    border: 1px solid;
}
.choice input + span:after {
    background: currentColor;
	opacity: 0;
    transform: scale(0.65);
}
.choice input:checked + span:after {
    opacity: 1;
}
.choice input[type="radio"] + span:before,
.choice input[type="radio"] + span:after {
    border-radius: 50%;
}
.choice input[type="checkbox"] + span:after {
    font-family: 'iconfont';
    content: "\e900";
    font-weight: bold;
    background: none;
    width: 1em;
    height: 1em;
    transform: scale(0.55);
}

.fields {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: var(--spacing-sm-minus);
}
.field {
    position: relative;
    width: 100%;
    margin-bottom: var(--spacing-sm);
}
.field.focusin {
    z-index: 2;
}
*[class*="fields"] + *[class*="fields"] {
    margin-top: var(--spacing-lg);
}

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

.label {
    padding: 0;
    border: 0;
    border-radius: 0;
    position: relative;
    display: block;
    opacity: 1;
}
.label:not(.anim):not(:last-child) {
    margin-bottom: var(--spacing-3xs);
}
.label a {
    box-shadow: var(--cta-shadow);
}
.label.anim {
    height: auto;
    width: calc(100% + var(--spacing-3xs)*2);
    max-width: calc(100% + var(--spacing-3xs)*2);
    margin: 0 var(--spacing-3xs-minus);
    padding: 0 var(--spacing-3xs);
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    position: absolute;
    z-index: 1;
    left: 0;
    top: calc((var(--input-height)/2) - var(--spacing-sm)/2);
    transform: translateY(-50%);
    transition: var(--duration) var(--timing-function);
    pointer-events: none;
}
.input.filled .label.anim:not(.fixed) {
    opacity: 0;
    visibility: hidden;
}
.input.filled .label.anim.fixed {
    top: 0;
    transform: translateY(-75%);
    opacity: var(--opacity-light);
}

.input:has(*:-internal-autofill-selected) .label.anim.fixed {
    top: 0;
    transform: translateY(-75%);
    opacity: var(--opacity-light);
}

.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-xs) !important;
    font-weight: var(--font-weight-regular) !important;
    font-style: normal !important;
    text-transform: none !important;
    color: var(--color-gray) !important;
    opacity: 1 !important;
}
.input ::-webkit-input-placeholder {
    font-size: var(--font-size-xs) !important;
    font-weight: var(--font-weight-regular) !important;
    font-style: normal !important;
    text-transform: none !important;
    color: var(--color-gray) !important;
    opacity: 1 !important;
}
.input ::-moz-placeholder {
    font-size: var(--font-size-xs) !important;
    font-weight: var(--font-weight-regular) !important;
    font-style: normal !important;
    text-transform: none !important;
    color: var(--color-gray) !important;
    opacity: 1 !important;
}
.input ::-ms-clear {
    display: none;
    width: 0;
    height: 0;
}
.input ::-ms-reveal {
    display: none;
    width: 0;
    height: 0;
}


/*FORM:UPLOAD FILE*/
.custom-file-upload-hidden {
    display: none;
    visibility: hidden;
    position: absolute;
    left: -9999px;
}
.custom-file-upload {
    display: flex;
    align-items: center;
    margin: 0;
}
.file-upload-wrapper {
    position: relative; 
    width: 100%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    display: flex;
    align-items: center;
}
.file-upload-wrapper .file-upload-action {
    cursor: pointer; 
    position: relative;
    z-index: 1;
    width: auto;
    height: auto;
    display: flex;
    align-items: center;
    margin-left: auto;
}
.file-upload-wrapper .file-upload-button {
    --button-height: 32px;
    min-width: 130px;
}
.file-upload-wrapper .file-upload-input {
    border: 0;
}


/*FUNCTION:TAB*/
.tab {
    position: relative;
}
.tab-content {
    margin: 0 !important;
    padding: 0 !important;
    position: relative;
    height: 0;
    opacity: 0;
    overflow: hidden;
    pointer-events: none;
    transition: opacity var(--duration-x2) var(--timing-function);
}
.tab-content.active {
    height: auto;
    opacity: 1;
    overflow: visible;
    pointer-events: auto;
}


/*FUNCTION:ACCORDION*/
.accordion > .entry-panel {
    display: none;
}
.accordion > .entry-title {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0 var(--spacing-2xs);
    min-height: 0;
    cursor: pointer;
    font-family: var(--font-heading);
    font-weight: var(--font-weight-regular);
    font-size: var(--font-size-navi);
    line-height: var(--line-height-navi);
    transition: var(--duration) var(--timing-function);
}
.accordion > .entry-title:after {
    font-family: 'iconfont';
    content: "\e945";
    font-size: var(--icon-size-lg);
    font-weight: normal;
    line-height: 1;
    display: block;
    margin-left: auto;
    pointer-events: none;
}
.accordion.active > .entry-title:after {
    content: "\e946";
}


/*FUNCTION:VIDEO*/
.video {
    position: relative;
    line-height: 0;
    transition: var(--duration) var(--timing-function);
}
.video video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    background-color:#000;
    background-size: cover;
    background-position: center center;
}
.video .ctrls-overlaid {
    width: auto;
    height: auto;
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    transition: none;
    color: var(--color-body);
}
.video .ctrls-overlaid .ctrl {
    display: block;
    width: auto;
    height: auto;
    line-height: 1;
    border-radius: 0;
    overflow: hidden;
    background: none;
    color: var(--color-white);
    cursor: pointer;
    transition: var(--duration) var(--timing-function);
    opacity: 1 !important;
}
.video .ctrls-overlaid .ctrl.play {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    line-height: 1;
    color: var(--color-black);
    background-color: rgba(var(--color-white-rgb),var(--opacity));
    border-radius: 50%;
    overflow: hidden;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
    transition: var(--duration);
    cursor: pointer;
}
.video .ctrls-overlaid .ctrl.play:before {
    font-family: 'iconfont';
    content: "\e933";
    font-size: var(--font-size-md);
    transform: translateX(0.1em);
}
.video.playing .ctrls-overlaid {
    opacity: 0 !important;
    pointer-events: none !important;
}
.video.hidden-ctrls video::-webkit-media-controls,
.video:not(.playing) video:not([controls])::-webkit-media-controls {
    display: none !important;
}


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


/*POST*/
.entry > *:not(:last-child) {
    margin-bottom: var(--spacing-lg);
}

.entry-header > *:not(:first-child) {
    margin-top: var(--spacing-2xs);
}

.entry-content {
    --wp--preset--font-size--normal: var(--font-size-body);
    --wp--preset--font-size--small: var(--font-size-sm);
    --wp--preset--font-size--medium: var(--font-size-md);
    --wp--preset--font-size--large: var(--font-size-lg);
    --wp--preset--font-size--x-large: var(--font-size-xl);
    --wp--preset--font-size--huge: var(--font-size-h1);
}
.entry-content > *:not(:first-child),
.entry-content .wp-block-group > *:not(:first-child),
.entry-content .wp-block-column > *:not(:first-child) {
    margin-top: var(--spacing-sm);
}
.entry-content h1 + *:not(:first-child),
.entry-content h2 + *:not(:first-child) {
    margin-top: var(--spacing-lg);
}
.entry-content li:not(:first-child) {
    margin-top: var(--spacing-2xs);
}

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
    font-family: inherit;
    font-weight: inherit;
    font-size: inherit;
    line-height: inherit;
}
.entry-content h1 {
    font-size: var(--wp--preset--font-size--large);
}
.entry-content h2 {
    font-size: var(--wp--preset--font-size--medium);
}
.entry-content h3 {
    font-size: var(--wp--preset--font-size--small);
}

.entry-content .has-regular-font-size {
    font-size: var(--wp--preset--font-size--normal) !important;
    line-height: inherit !important;
}
.entry-content .has-small-font-size {
    font-size: var(--wp--preset--font-size--small) !important;
    line-height: inherit !important;
}
.entry-content .has-medium-font-size {
    font-size: var(--wp--preset--font-size--medium) !important;
    line-height: inherit !important;
}
.entry-content .has-large-font-size,
.entry-content .has-larger-font-size {
    font-size: var(--wp--preset--font-size--large) !important;
    line-height: inherit !important;
}
.entry-content .has-x-large-font-size {
    font-size: var(--wp--preset--font-size--x-large) !important;
    line-height: inherit !important;
}
.entry-content .has-huge-font-size {
    font-size: var(--wp--preset--font-size--huge) !important;
    line-height: inherit !important;
}

.entry-content ol {
    list-style-type: decimal;
    list-style-position: inside;
    padding-left: 0;
}
.entry-content ul {
    list-style-type: disc;
    padding-left: 1em;
}
.entry-content li > *:not(:first-child) {
    margin-top: var(--spacing-3xs);
}
.entry-content li > ul {
    padding-left: 2em;
}

.entry-content small {
    display: inline-block;
    font-size: 87.5%;
}
.entry-content a {
    box-shadow: var(--cta-shadow);
}
.entry-content figure {
    overflow: hidden;    
}
.entry-content .wp-block-video {
    overflow: visible;
}
.entry-content .wp-block-image {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.entry-content .wp-block-image img {
    height: auto;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.entry-content .wp-block-image:not(.alignfull):not(.alignwide):not(.size-full) img,
.entry-content .wp-block-video:not(.alignfull):not(.alignwide):not(.size-full) video {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 290px;
    display: inline-block;
    vertical-align: top;
    line-height: 1;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center;
}
.entry-content .wp-block-video:not(.alignfull):not(.alignwide):not(.size-full) {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.entry-content [class*="wp-block-"] {
    list-style: none;
    padding: 0;
    max-width: 100%;
    margin: 0 auto;
}
.entry-content [class*="wp-block-"] li {
    margin: 0 auto !important;
}
.entry-content *[class*="wp-block-"] figcaption {
    font-size: var(--font-size-body-sub);
    line-height: inherit;
    text-align: center;
    color: var(--color-gray);
    margin: var(--spacing-2xs) 0;
}
.entry-content *[class*="wp-block-"] figcaption:first-child {
    margin-top: 0;
}
.entry-content *[class*="wp-block-"] figcaption:last-child {
    margin-bottom: 0;
}
.entry-content [class*="wp-block-"] + *:not(:first-child),
.entry-content * + [class*="wp-block-"]:not(:first-child) {
    margin-top: var(--spacing-md);
}
.entry-content [class*="wp-block-heading"] + *:not(:first-child) {
    margin-top: var(--spacing-sm);
}
.entry-content .wp-block-image + .wp-block-image,
.entry-content .wp-block-image + .wp-block-video,
.entry-content .wp-block-video + .wp-block-video,
.entry-content .wp-block-video + .wp-block-image {
    margin-top: var(--spacing-sm);
}

.entry-content .wp-block-gallery {
    --wp--style--unstable-gallery-gap: var(--spacing-sm);
}
.entry-content .wp-block-gallery > * {
    margin: 0 !important;
}
.entry-content .wp-block-gallery .blocks-gallery-grid {
    list-style: none;
    width: auto;
    max-width: none;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    display: grid;
    grid-gap: var(--spacing-sm);
    grid-template-columns: 100%;
}
.entry-content .wp-block-gallery .blocks-gallery-grid > li {
    flex: none !important;
    flex-basis: auto !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}
.entry-content .wp-block-gallery.columns-2 .blocks-gallery-grid {
    grid-template-columns: repeat(2,1fr);
}
.entry-content .wp-block-gallery.columns-3 .blocks-gallery-grid {
    grid-template-columns: repeat(3,1fr);
}
.entry-content .wp-block-gallery.columns-4 .blocks-gallery-grid {
    grid-template-columns: repeat(4,1fr);
}
.entry-content .wp-block-gallery.columns-5 .blocks-gallery-grid {
    grid-template-columns: repeat(5,1fr);
}
.entry-content .wp-block-gallery.columns-6 .blocks-gallery-grid {
    grid-template-columns: repeat(6,1fr);
}
.entry-content .wp-block-gallery.columns-7 .blocks-gallery-grid {
    grid-template-columns: repeat(7,1fr);
}
.entry-content .wp-block-gallery.columns-8 .blocks-gallery-grid {
    grid-template-columns: repeat(8,1fr);
}
.entry-content .wp-block-gallery .blocks-gallery-item,
.entry-content .wp-block-gallery .blocks-gallery-item > * {
    display: block;
    width: 100%;
}

.entry-content .wp-block-columns {
    justify-content: space-between;
}
.entry-content .wp-block-columns .wp-block-column {
    margin: 0;
}
.entry-content .wp-block-columns .wp-block-image {
    width: 100%;
}

.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 .wp-block-navigation {
    gap: unset;
    display: block;
    padding: 0;
    background: none;
    border: 0;
}
.entry-content .wp-block-navigation .wp-block-navigation__responsive-container {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    z-index: 1 !important;
    padding: 0 !important;
    width: auto !important;
    height: auto !important;
    background: none !important;
    color: inherit !important;
    display: block !important;
    margin: 0 !important;
}
.entry-content .wp-block-navigation .wp-block-navigation__responsive-container-open,
.entry-content .wp-block-navigation .wp-block-navigation__responsive-container-close {
    display: none !important;
}
.entry-content .wp-block-navigation .wp-block-navigation__responsive-container-content {
    gap: unset !important;
    display: block !important;
    margin: 0 !important;
}
.entry-content .wp-block-navigation .wp-block-navigation__container {
    display: block;
    padding: 0;
    list-style-type: decimal;
    list-style-position: inside;
}
.entry-content .wp-block-navigation .wp-block-navigation-item {
    display: list-item;
    list-style: inherit
}
.entry-content .wp-block-navigation .wp-block-navigation-item:not(:first-child) {
    margin-top: var(--spacing-2xs) !important;
}
.entry-content .wp-block-navigation .wp-block-navigation-item a:hover {
    box-shadow: var(--cta-shadow);
}
.entry-content .wp-block-navigation .wp-block-navigation-item__content {
    box-shadow: none;
    display: inline;
}

.entry-content .wp-block-quote .wp-block-heading {
    text-shadow: 0 4px 4px rgba(var(--rgb),0.25) !important;
}

.entry-content [class*="wp-block-"].alignfull {
	width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
}

.entry-content table tr > * {
    padding-top: var(--spacing-xs);
    padding-bottom: var(--spacing-xs);
    border-bottom: 1px solid var(--color-border);
}
.entry-content table tr > *:not(:last-child) {
    padding-right: var(--spacing-xs);
}
.entry-content table thead tr > * {
    padding-top: var(--spacing-2xs);
    padding-bottom: var(--spacing-2xs);
    border-bottom-color: inherit;
    font-family: var(--font-heading);
    font-size: var(--font-size-navi);
    line-height: var(--line-height-navi);
    text-align: left;
}
.entry-content table > *:first-child > tr:first-child > * {
    padding-top: 0;
}

.entry-content .is-layout-flex {
    gap: var(--spacing-md) var(--spacing-container);
}


/*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%);
}
.swiper-button-next {
    right: 0;
}
.swiper-button-prev {
    left: 0;
}
*[class*="swiper-button-"]:after {
    position: relative;
    font-family: 'iconfont';
    font-weight: normal;
    font-size: inherit;
    color: inherit;
    opacity: 1;
    transition: var(--duration) var(--timing-function);
}
*[class*="swiper-button-"]:not(:hover):after {
    opacity: var(--opacity);
}
.swiper-button-prev:after {
    content: "\e909";
    transform: translateX(-22%);
}
.swiper-button-next:after {
    content: "\e90a";
    transform: translateX(22%);
}
.swiper-button-disabled {
    opacity: 0 !important;
}
.swiper-button-lock {
    display: none !important;
}

.swiper-pagination {
    line-height: 0;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    gap: var(--spacing-3xs);
    pointer-events: none;
}
.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: 5px;
    height: 5px;
    background: var(--color-white);
    border: 0;
    border-radius: 50%;
    overflow: hidden;
    position: relative;
    transition: var(--duration-x2) var(--timing-function);
    pointer-events: auto;
}
.swiper-pagination-bullet-active {
    background: var(--color-theme);
}
.swiper-horizontal > .swiper-pagination-bullets {
    bottom: var(--spacing-md);
}

.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-duplicate-active {
    pointer-events: auto !important;
}

.swiper.default.fade .swiper-slide {
    width: 100% !important;
    height: auto !important;
    opacity: 0 !important;
    z-index: 0 !important;
}
.swiper.default.fade .swiper-slide > * {
    height: 100%;
}
.swiper.default.fade .swiper-slide-active,
.swiper.default.fade .swiper-slide-duplicate-active {
    opacity: 1 !important;
    z-index: 1 !important;
}

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

*[class*="swiper-ctrl-"] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    overflow: visible;
    line-height: 1;
    position: absolute;
    z-index: 10;
    top: 0;
    transform: none;
}
*[class*="swiper-ctrl-"] > *[class*="swiper-button-"] {
    position: relative;
    top: auto;
    transform: none;
}
.swiper-ctrl-left {
    left: 0;
}
.swiper-ctrl-right {
    right: 0;
}


/*MENU*/
.menu {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    grid-gap: 0 var(--spacing-sm);
}
.menu a {
    position: relative;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    color: inherit !important;
}
.menu a[data-title] {
    color: transparent !important;
}
.menu a[data-title]:before,
.menu a[data-title]:after {
    content: attr(data-title);
    display: block;
    width: 100%;
    position: absolute;
    left: 0;
    right: 0;
    color: rgb(var(--rgb));
    transition: var(--duration) var(--timing-function);
    transition-property: top, color, opacity;
}
.menu a[data-title]:before {
    top: 0%;
}
.menu a[data-title]:after {
    top: 100%;
}
.menu a[data-title]:hover:before {
    top: -100%;
}
.menu a[data-title]:hover:after {
    top: 0%;
}
.menu a:not([data-title]):hover,
.menu.link-active a:not(.active):not(:hover) {
    opacity: var(--opacity-light);
}
.menu > li {
    text-align: center;
}
.menu > li:first-child {
    text-align: left;
}
.menu > li:last-child:not(:only-child) {
    text-align: right;
}
.menu > li.space {
    width: calc(20vw - var(--spacing-container)*2);
    overflow: hidden;
    transition: var(--duration) var(--timing-function);
}


/*PAGE*/
#page {
    position: relative;
    min-height: var(--lvh-fallback);
    min-height: var(--lvh);
    min-height: 100svh;
    display: grid;
    grid-template-rows: 1fr;
    grid-template-columns: 100%;
}


/*BRAND*/
#brand {
    position: fixed;
    z-index: 101;
    transition: var(--duration-x2) var(--timing-function);
}


/*HEADER*/
#header {
    width: 100%;
    position: fixed;
    z-index: 100;
    top: 0; 
    left: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.header-nav {
    width: 100%;
    height: var(--header-height);
    display: flex;
    align-items: center;
}

.header-menu {
    width: 100%;
}
.header-menu .swiper {
    overflow: visible !important;
}
.header-menu .swiper-wrapper {
    grid-gap: 0 !important;
}
.header-menu .swiper-slide {
    width: auto !important;
    padding: 0 calc(var(--spacing-container)/2);
}
.header-menu .swiper-slide:first-child {
    padding-left: 0;
}
.header-menu .swiper-slide:last-child {
    padding-right: 0;
}

/*FOOTER*/
#footer {
    width: 100%;
    position: absolute;
    z-index: 99;
    bottom: 0;
    left: 0;
}

.footer-nav {
    width: 100%;
    height: var(--header-height);
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    grid-gap: 0 var(--spacing-container);
    align-items: center;
}
.footer-nav > .left {
    grid-column: 1;
    justify-self: flex-start;
    text-align: left;
}
.footer-nav > .right {
    grid-column: 3;
    justify-self: flex-end;
    text-align: right;
}
.footer-nav > .center {
    grid-column: 2;
    justify-self: center;
    text-align: center;
}
.footer-nav > .center .menu li {
    text-align: inherit !important;
}

/*MAIN*/
#main {
    width: 100%;
    position: relative;
    z-index: 1;
}

section {
    --sc-spacing-y: var(--spacing-2xl);
    --sc-spacing-y-minus: var(--spacing-2xl-minus);
    --sc-spacing-y-resize: var(--spacing-lg);
    --sc-spacing-y-resize-minus: var(--spacing-lg-minus);
    
    position: relative;
    width: 100%;
}

.sc-link {
    margin: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block;
    position: absolute;
    z-index: 2;
    top: 0; 
    left: 0;
    font-size: 0;
    opacity: 0;
}

.sc-inner {
    width: 100%;
    padding-top: var(--sc-spacing-y);
    padding-bottom: var(--sc-spacing-y);
}

.sc-container + .sc-container {
    margin-top: var(--spacing-lg);
}
.sc-container > *:not(:first-child),
.sc-group > *:not(:first-child),
.sc-content > *:not(:first-child),
.sc-columns > *:not(:first-child),
.sc-column > *:not(:first-child) {
    margin-top: var(--spacing-lg);
}
.sc-headline > *:not(:first-child) {
    margin-top: var(--spacing-2xs);
}
.sc-desc > *:not(:first-child),
.sc-explore > *:not(:first-child) {
    margin-top: var(--spacing-sm);
} 

.sc-function,
.sc-navi {
    width: 100%;
    position: relative;
    z-index: 99;
}

.sc-grid-row,
.sc-billboard {
    min-height: var(--lvh-fallback);
    min-height: var(--lvh);
}
.sc-grid-row.h-svh,
.sc-billboard.h-svh {
    min-height: var(--lvh-fallback);
    min-height: var(--lvh);
    min-height: 100svh;
}

.sc-grid-row {
    width: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
}
.sc-grid-row > * {
    width: 100%;
}
.sc-grid-row > .sc-inner {
    flex: 1;
    display: flex;
    flex-direction: column;
}
.sc-grid-row > .sc-inner > .sc-container {
    flex: 1;
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: 1fr auto 1fr;
    grid-gap: var(--sc-spacing-y-resize) 0;
}
.sc-grid-row > .sc-inner > .sc-container > *:not(:first-child) {
    margin-top: 0 !important;
}
.sc-grid-row > .sc-inner > .sc-container > *[data-pos="top"] {
    grid-row: 1;
    align-self: flex-start;
}
.sc-grid-row > .sc-inner > .sc-container > *[data-pos="middle"] {
    grid-row: 2;
    align-self: center;
}
.sc-grid-row > .sc-inner > .sc-container > *[data-pos="bottom"] {
    grid-row: 3;
    align-self: flex-end;
}
.sc-grid-row > .sc-inner > .sc-container[data-row="2"] {
    grid-template-rows: 1fr auto;
}
.sc-grid-row > .sc-inner > .sc-container[data-row="2"] > *[data-pos="top"],
.sc-grid-row > .sc-inner > .sc-container[data-row="2"] > *[data-pos="middle"] {
    grid-row: 1;
}
.sc-grid-row > .sc-inner > .sc-container[data-row="2"] > *[data-pos="bottom"] {
    grid-row: 2;
}
.sc-grid-row > .sc-inner > .sc-container[data-row="1"] {
    grid-template-rows: 1fr;
    grid-gap: 0;
}
.sc-grid-row > .sc-inner > .sc-container[data-row="1"] > * {
    grid-row: auto;
}

.sc-billboard {
    width: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
}
.sc-billboard > * {
    width: 100%;
}
.sc-billboard > .sc-cover {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.sc-billboard > .sc-cover,
.sc-billboard > .sc-cover .object-fit,
.sc-billboard > .sc-cover .object-fit:before,
.sc-billboard > .sc-cover .swiper-container,
.sc-billboard > .sc-cover .swiper-wrapper,
.sc-billboard > .sc-cover .swiper-slide {
    height: 100%;
}
.sc-billboard > .sc-inner {
    width: 100%;
    position: relative;
    z-index: 2;
    pointer-events: none;
}
.sc-billboard > .sc-inner.auto,
.sc-billboard > .sc-inner a,
.sc-billboard > .sc-inner button,
.sc-billboard > .sc-inner form {
    pointer-events: auto;
}

.sc-boxes {
    display: flex;
    flex-wrap: wrap;
}
.sc-boxes > .sc-box {
    width: 100%;
}
.sc-boxes > .sc-box > .sc-grid-row {
    height: 100%;
}
.sc-box.cover .sc-cover,
.sc-box.cover .sc-cover .object-fit {
    height: 100%;
}
.sc-box.cover .sc-cover .object-fit:before {
    padding-bottom: 100%;
    min-height: 100%;
}

.bundle-section > section:not(:last-child) > .sc-inner:last-child {
    padding-bottom: 0 !important;
}


/*WP PLUGIN:WPCF7*/
.wpcf7-form .wpcf7-form-control-wrap {
    position: relative;
    display: block;
    width: 100%;
}
.wpcf7-form .wpcf7-not-valid-tip {
    display: block;
    font-weight: inherit;
    font-size: var(--font-size-body-sub);
    color: var(--color-error);
}
.wpcf7-form .wpcf7-form-control-wrap .wpcf7-not-valid-tip {
    margin-top: var(--spacing-3xs);
}
.wpcf7-form .wpcf7-response-output {
    margin: var(--spacing-sm) 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
}
.wpcf7-form .ajax-loader {
    display: block;
    margin: 0 auto;
    left: 0;
    right: auto;
    top: calc(100% + var(--spacing-3xs));
}
.wpcf7-form .a-center .ajax-loader {
    left: 0;
    right: 0;
}
.wpcf7-form .wpcf7-list-item {
    margin-left: 0 !important;
}

form.wpcf7-form.submitting {
	cursor: progress;
}
form.wpcf7-form.submitting button[type="submit"] {
	pointer-events: none;
}

@media (max-width:991px) {

    .wpcf7-form .a-center-device-sm .ajax-loader {
        left: 0;
        right: 0;
    }

}


/*ANIMATION====================*/
.header-nav,
.footer-nav,
#main {
    -webkit-animation: pageAnimation 1.2s ease;
    animation: pageAnimation 1.2s ease;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    will-change: opacity;
}

@-webkit-keyframes pageAnimation {
    0% { opacity: 0; visibility: hidden;}
    25% { opacity: 0;}
    100% { opacity: 1; visibility: visible;}
}
@keyframes pageAnimation {
    0% { opacity: 0; visibility: hidden;}
    25% { opacity: 0;}
    100% { opacity: 1; visibility: visible;}
}

.sticky-container {
    position: relative;
}
.sticky-panel {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
}


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


/*MEDIA QUERIES====================*/
/*MIN*/
@media (min-width:576px) {

    .visible-mobile-sm { display: none !important;}

}

@media (min-width:768px) {

    .visible-mobile { display: none !important;}

    /* GENERAL */
    .container.md {
        max-width: calc(1150px + var(--spacing-container)*2);
        min-width: calc(79.8611111111vw + var(--spacing-container)*2);
    }
    .container.sm {
        max-width: calc(510px + var(--spacing-container)*2);
    }
    
    .f-left {
        margin-left: 0;
        margin-right: auto;
    }
    .f-right {
        margin-left: auto;
        margin-right: 0;
    }

}

@media (min-width:992px) {

    .visible-device-sm { display: none !important;}
    
    /* FORM */
    .field.half {
        width: calc(50% - var(--spacing-container)/2);
    }

    /* SECTION */
    .sc-box.cover .sc-cover {
        max-height: var(--lvh-fallback);
        max-height: var(--lvh);
        position: -webkit-sticky;
        position: sticky;
        top: 0;
    }

    .sc-columns {
        display: flex;
    }
    .sc-columns > .sc-column {
        width: 50%;
    }
    .sc-columns > .sc-column:not(:first-child) {
        margin-top: 0 !important;
    }
    .sc-columns > .sc-column.spacing-x:not(:last-child) {
        padding-right: var(--spacing-2xl);
    }
    .sc-columns > .sc-column.sticky {
        height: -webkit-fit-content;
        height: -moz-fit-content;
        height: fit-content;
        position: -webkit-sticky;
        position: sticky;
        top: var(--header-height);
    }
    .sc-columns > .sc-column .sc-navi {
        width: calc(50vw + var(--spacing-2xs));
        padding-right: var(--spacing-container);
        padding-left: var(--spacing-2xs);
        margin-left: var(--spacing-2xs-minus);
        -webkit-mask-box-image: -webkit-linear-gradient(0deg, transparent 0%, white var(--spacing-2xs));
        overflow: hidden;
    }
    .sc-columns > .sc-column .sc-navi .sc-menu.swiper {
        overflow: visible;
    }
    
}

@media (min-width:1280px) {

    .visible-device { display: none !important;}
    
}

/*MAX*/
@media (max-width:1279px) {

    .hidden-device { display: none !important;}
    
}

@media (max-width:991px) {

    .hidden-device-sm { display: none !important;}
    .overflow-hidden-device-sm { overflow: hidden !important;}
    
    .a-left-device-sm { text-align: left !important;}
    .a-right-device-sm { text-align: right !important;}
    .a-center-device-sm { text-align: center !important;}
    .alignwide-device-sm { width: 100% !important;}

    .alignwide-device-sm { 
        width: 100% !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    .alignfull-device-sm { 
        width: 100vw !important; 
        max-width: 100vw !important; 
        margin-left: calc(50% - 50vw) !important; 
        margin-right: calc(50% - 50vw) !important;
    }
    

    /* SECTION */
    section .hidden-device-sm:first-child + * { margin-top: 0 !important;}
    
    .sc-grid-row.re-h-auto {
        min-height: 0;
    }
    
    .sc-boxes {
        min-height: var(--lvh-fallback);
        min-height: var(--lvh);
    }
    .sc-boxes > .sc-box-content {
        flex: 1;
    }
    .sc-boxes > .sc-box.content:not(:last-child) .sc-inner {
        padding-bottom: var(--sc-spacing-y-resize);
    }

    .sc-navi {
        width: 100vw;
        max-width: 100vw;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
        padding-left: var(--spacing-container);
        padding-right: var(--spacing-container);
        overflow: hidden;
    }
    .sc-navi .sc-menu.swiper {
        overflow: visible;
    }
    
    .bundle-section-device-sm > section:not(:last-child) > .sc-inner:last-child { 
        padding-bottom: 0 !important;
    }
    
}

@media (max-width:767px) {

    .hidden-mobile { display: none !important;}
    .overflow-hidden-mobile { overflow: hidden !important;}
    
    .a-left-mobile { text-align: left !important;}
    .a-right-mobile { text-align: right !important;}
    .a-center-mobile { text-align: center !important;}

    .alignwide-mobile { 
        width: 100% !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    .alignfull-mobile { 
        width: 100vw !important; 
        max-width: 100vw !important; 
        margin-left: calc(50% - 50vw) !important; 
        margin-right: calc(50% - 50vw) !important;
    }

    :root {
        --spacing-container: var(--spacing-sm);
        --spacing-container-minus: var(--spacing-sm-minus);
    }

    /*HEADER*/
    .header-menu .menu > li.space {
        display: none;
    }
    
}

@media (max-width:575px) {

    .hidden-mobile-sm { display: none !important;}


    /*MENU*/
    .menu {
        grid-gap: 0 var(--spacing-2xs);
    }

    
    /* POST */
    .entry-content .wp-block-gallery > * {
        width: 100% !important;
    }
    .entry-content .wp-block-gallery .blocks-gallery-grid {
        grid-template-columns: 100% !important;
    }
    .entry-content .wp-block-gallery .blocks-gallery-grid:nth-child(odd):last-child {
        grid-column: unset !important;
    }


    /* SECTION */
    section .hidden-mobile-sm:first-child + * {
        margin-top: 0 !important;
    }

}