/*
Theme Name: PXRTHM
Theme URI: http://pixelranger.co.uk/
Author: Pixel Ranger Studio
Author URI: http://pixelranger.co.uk/
Description: PXRTHM unique theme
Version: 1.0
Text Domain: pxrthm_textdomain
*/
:root {
   --content-width: 1420px;
   --side-width: calc((100vw - var(--content-width)) / 2);

   --section-padding: 2.5rem;

   --font-heading: Constantia, serif;
   --font-heading-alt: Avenir LT Pro, sans-serif;
   --font-heading-alt2: Avenir Next LT Pro, sans-serif;
   --font-text: Segoe UI, sans-serif;

   --color-white: #fff;
   --color-darkgrey: #2f312d;
   --color-highlight: #e6c978;
   --color-offwhite: #faf7f0;
   --color-egg: #eee9dc;
   --color-lightgrey: #f6f6f6;
   --color-darkgrey2: #272727;
   --color-red: #e50019;
   --color-red-dark: #bd0015;
   --text-color-dark: #333333;
   --text-color-light: #fff;
   --input-height: 40px;
}
* {
   box-sizing: border-box;
}
html {
   font-family: var(--font-text);
   font-size: 20px;
   color: var(--text-color);
}
body {
   margin: 0px;
   padding: 0px;
   position: relative;

   background-color: var(--color-white);
}
html.no-scroll,
body.no-scroll {
   overflow: hidden;
}
html.-popup-opened,
body.-popup-opened {
   position: fixed;
   overflow-y: scroll;
   width: 100%;
   height: 100%;
}
img {
   max-width: 100%;
   vertical-align: middle;
   display: inline-block;
}
img.aligncenter {
   display: block;
   text-align: center;
   margin: auto;
}
:focus {
   outline: none;
}
pre {
   display: block;
   clear: both;
   text-wrap: wrap;
}
.flex_wrap {
   width: 100%;
   height: 0px;
}
.flex_expand {
   flex: 1 1;
}
/* TYPOGRAPHY */
h1,
h2,
h3,
h4,
h5,
h1 a,
h2 a,
h3 a,
h4 a,
h5 a {
   font-family: var(--font-heading);
   line-height: 1.1;

   font-weight: normal;
   margin: 0px;
   hyphens: none;
   text-wrap: balance;
}
.-heading-alt:is(h1, h2, h3, h4, h5),
.-heading-alt:is(h1, h2, h3, h4, h5) a {
   font-family: var(--font-heading-alt);
}
h1 {
   font-size: 3rem;
}
h2 {
   font-size: 2rem;
}
h3 {
   font-size: 1.5rem;
}
h4 {
   font-size: 1rem;
}
h5 {
   font-size: 0.8rem;
}
p {
   font-family: var(--font-text);
   font-size: 1rem;
   margin-bottom: 0.6rem;
   margin-top: 0rem;
   line-height: 1.5;
}
p:last-child,
p:last-of-type {
   margin-bottom: 0px;
}
a {
   text-decoration: none;
   font-family: var(--font-text);
   color: var(--color);
}
a.underlined_link {
   text-decoration: underline;
}
input {
   font-family: var(--font-text);
   font-size: 17px;
}
mark {
   background-color: rgb(248 192 20 / 50%);
}
mark.-current {
   background-color: rgb(248 192 20 / 100%);
}
label {
   font-family: var(--font-text);
}
button {
   font-family: var(--font-text);
}
.pxrthm_text_highlight {
   color: var(--color-highlight);
}
.-align-left {
   text-align: left;
}
.-align-right {
   text-align: right;
}
.-align-center {
   text-align: center;
}
/* TABS */
.pxrthm-tabs {
   position: relative;
}
.pxrthm-tab-handles {
   display: flex;
   justify-content: center;
   align-items: flex-end;
   gap: 10px;
}
.pxrthm-tab-handle {
   border-radius: 15px 15px 0px 0px;
   cursor: pointer;
   opacity: 0.7;

   background-color: #fff;
   padding: 10px 35px;
   font-family: "Panton";
   font-weight: 900;
   font-size: 14px;
   text-transform: uppercase;
   letter-spacing: 2px;
   transition: all 300ms ease-out;
}
.pxrthm-tab-handle.-active {
   opacity: 1;
}
.pxrthm-tab-handle.-disabled {
   opacity: 0.5;
   cursor: not-allowed;
}
.pxrthm-tabs-container {
   position: relative;
}
.pxrthm-tab {
   position: absolute;
   top: 0px;
   left: 0px;
   width: 100%;
   height: 100%;
   opacity: 0;
   visibility: hidden;
   transition: all 300ms ease-out;
   pointer-events: none;

   padding: var(--section-content-padding);
}
.pxrthm-tab.-active {
   position: relative;
   z-index: 2;
   height: auto;
   opacity: 1;
   visibility: visible;
   pointer-events: all;
}
/* POPUP */
.pxrthm-popup {
   --popup-content-margin: 50px;
   --popup-content-padding: 30px;
   --popup-content-height: calc(
      100vh -
         (
            (2 * var(--popup-content-margin)) +
               (2 * var(--popup-content-padding))
         )
   );
   --popup-content-height: calc(
      100svh -
         (
            (2 * var(--popup-content-margin)) +
               (2 * var(--popup-content-padding))
         )
   );
   --popup-content-width: calc(
      100vw -
         (
            (2 * var(--popup-content-margin)) +
               (2 * var(--popup-content-padding))
         )
   );

   position: fixed;
   top: 0px;
   left: 0px;
   width: 100%;
   height: 100%;
   display: flex;
   justify-content: center;
   align-items: center;
   z-index: 1000;

   pointer-events: none;
   visibility: hidden;
   opacity: 0;
   -webkit-transition: all 300ms ease-out;
   -moz-transition: all 300ms ease-out;
   -ms-transition: all 300ms ease-out;
   -o-transition: all 300ms ease-out;
   transition: all 300ms ease-out;
}
.pxrthm-popup.-show {
   visibility: visible;
   opacity: 1;
   pointer-events: all;
}
.pxrthm-popup-overlay {
   position: absolute;
   top: 0px;
   left: 0px;
   width: 100%;
   height: 100%;
   background-color: rgba(30, 30, 30, 0.85);
   opacity: 0.8;
   z-index: 1;
}
.pxrthm-popup-content {
   position: absolute;
   z-index: 2;
   background-color: var(--color-darkgrey2);
   padding: var(--popup-content-padding);
   max-width: calc(100vw - (var(--popup-content-margin) * 2));
   max-height: calc(100vh - (var(--popup-content-margin) * 2));
   max-height: calc(100svh - (var(--popup-content-margin) * 2));
   display: flex;
   flex-wrap: wrap;
   border-radius: 0px;
   color: #fff;
}
.pxrthm-popup-content-inner {
   position: relative;
   display: flex;
   flex-wrap: wrap;
   width: 100%;
   max-height: calc(
      100vh - (var(--popup-content-margin) * 2) -
         (var(--popup-content-padding) * 2)
   );
   max-height: calc(
      100svh - (var(--popup-content-margin) * 2) -
         (var(--popup-content-padding) * 2)
   );
   overflow: auto;
}
.pxrthm-popup-close {
   position: absolute;
   top: 0px;
   right: 0px;
   color: var(--color-darkgrey2);
   background-color: var(--color-offwhite);
   line-height: 1;
   padding: 3px;
   z-index: 10;
   font-size: 20px;
   cursor: pointer;
   padding: 10px;
}
.pxrthm-popup-open {
   cursor: pointer;
}
.pxrthm-popup-content .video_wrapper {
   width: var(--popup-content-width);
   height: calc(
      100vh - (var(--popup-content-margin) * 2) -
         (var(--popup-content-padding) * 2)
   );
   height: calc(
      100svh - (var(--popup-content-margin) * 2) -
         (var(--popup-content-padding) * 2)
   );
   display: flex;
   align-content: center;
   align-items: center;
}
.pxrthm-popup-content .video_wrapper video {
   max-width: 100%;
   max-height: 100%;
}
/* FORMS */
body .pxrut_fields_container {
   --pxrut-gap: 25px;
   padding: 50px 0px;
}
body .pxrut_submit_wrapper {
   margin-top: 25px;
}
.pxrut_field_wrapper {
   position: relative;
   display: flex;
   flex-direction: column;
   gap: 5px;
   justify-content: flex-start;
   align-items: center;
}
.pxrut_field_wrapper label {
   cursor: pointer;
}
.pxrut_field_wrapper.-floating-label label {
   position: absolute;
   top: 6px;

   font-size: 1rem;
   font-family: var(--font-text);
   letter-spacing: 2px;
   text-transform: uppercase;
   color: var(--color);

   pointer-events: none;
   margin: 0px;
   -webkit-transition: all 150ms ease-out;
   -moz-transition: all 150ms ease-out;
   -ms-transition: all 150ms ease-out;
   -o-transition: all 150ms ease-out;
   transition: all 150ms ease-out;
}
.pxrut_field_wrapper.-floating-label input::placeholder {
   color: transparent;
}
.pxrut_field_wrapper.-floating-label input:not(:placeholder-shown) ~ label,
.pxrut_field_wrapper.-floating-label input:focus ~ label,
.pxrut_field_wrapper.-floating-label .select2-container--focus ~ label,
.pxrut_field_wrapper.-floating-label .select2-container--open ~ label,
.pxrut_field_wrapper.-floating-label
   .select2-container:has(.select2-selection__choice)
   ~ label {
   top: -19px;
   font-size: 14px;
   color: var(--color);
   pointer-events: all;
}
body .pxrut_field_wrapper input:not([type="checkbox"], [type="radio"]) {
   position: relative;
   height: var(--input-height);
   border: none;
   border-radius: 0px;
   background-color: transparent;
   color: var(--color);
   padding: 0px 1rem;
   font-size: 1rem;
   font-family: var(--font-text);
   line-height: 1.1;
   text-align: left;
}
.input_wrapper {
   width: 100%;
   position: relative;
}
.input_wrapper::before {
   content: "";
   display: block;
   position: absolute;
   z-index: 2;
   inset: -5px;
   width: calc(100% + 10px);
   height: calc(100% + 10px);
   background-color: var(--color);
   mask-image: url(assets/images/strokes/input_stroke_2.svg);
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;
   pointer-events: none;
}
.pxrut_field_wrapper:nth-child(even) .input_wrapper::before {
   mask-image: url(assets/images/strokes/input_stroke_3.svg);
}
.pxrut_field_wrapper.-half .input_wrapper::before,
.pxrut_field_wrapper.-third .input_wrapper::before {
   mask-image: url(assets/images/strokes/input_stroke_1.svg);
}
.input_wrapper.-textarea::before {
   mask-image: url(assets/images/strokes/textarea_stroke_1.svg);
}
body .pxrut_field_wrapper textarea:not(.select2-search__field) {
   width: 100%;
   min-width: 100%;
   max-width: 100%;
   border: none;
   outline: none;
   background-color: transparent;
   color: var(--color);
   padding: 1rem;
   font-size: 1rem;
   font-family: var(--font-text);
   line-height: 1.1;
   text-align: left;
}
body .pxrut_field_wrapper input[type="checkbox"] {
   position: relative;
   display: flex;
   justify-content: center;
   align-items: center;
   appearance: none;
   -webkit-appearance: none;
   background-color: transparent;
   border: 3px solid var(--color);
   color: var(--color);
   outline: none;
   width: 20px;
   height: 20px;
   margin: 0px;
   cursor: pointer;
   border-radius: 6px;
}
body .pxrut_field_wrapper input[type="checkbox"]::before {
   content: "\e90d";
   /* use !important to prevent issues with browser extensions that change fonts */
   font-family: "gyeaicons" !important;
   speak: never;
   font-style: normal;
   font-weight: normal;
   font-variant: normal;
   text-transform: none;
   line-height: 1;
   /* Better Font Rendering =========== */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   font-size: 0.8rem;

   opacity: 0;
   visibility: hidden;
   -moz-transform: scale(0) rotate(-45deg);
   -webkit-transform: scale(0) rotate(-45deg);
   -o-transform: scale(0) rotate(-45deg);
   -ms-transform: scale(0) rotate(-45deg);
   transform: scale(0) rotate(-45deg);
   -webkit-transition: all 600ms cubic-bezier(0.47, 1.64, 0.41, 0.8);
   -moz-transition: all 600ms cubic-bezier(0.47, 1.64, 0.41, 0.8);
   -ms-transition: all 600ms cubic-bezier(0.47, 1.64, 0.41, 0.8);
   -o-transition: all 600ms cubic-bezier(0.47, 1.64, 0.41, 0.8);
   transition: all 600ms cubic-bezier(0.47, 1.64, 0.41, 0.8);
}
body .pxrut_field_wrapper input[type="checkbox"]:checked::before {
   opacity: 1;
   visibility: visible;
   -moz-transform: scale(1) rotate(0deg);
   -webkit-transform: scale(1) rotate(0deg);
   -o-transform: scale(1) rotate(0deg);
   -ms-transform: scale(1) rotate(0deg);
   transform: scale(1) rotate(0deg);
}
.pxrut_field_wrapper label.checkbox_label {
   display: flex;
   justify-content: flex-start;
   align-items: center;
   gap: 10px;
   text-align: left;
}
.pxrut_field_wrapper label.checkbox_label a {
   text-decoration: underline;
}
.pxrut_radio_group {
   display: flex;
   justify-content: center;
   align-items: center;
   flex-wrap: wrap;
   gap: 15px;
}
.pxrut_field_wrapper .checkbox_label.-radio {
   position: relative;
   display: inline-flex;
   justify-content: center;
   font-size: 18px;
   font-family: var(--font-heading);
   letter-spacing: 2px;
   line-height: 1.2;
   text-transform: uppercase;
}
.pxrut_field_wrapper .checkbox_label.-radio::after {
   content: "";
   position: absolute;
   display: block;
   bottom: -3px;
   height: 2px;
   background-color: var(--color);
   width: 0%;
   opacity: 0;
   visibility: hidden;
   transition: all 300ms ease-out;
}
.pxrut_field_wrapper .checkbox_label.-radio:has(input:checked)::after {
   width: 100%;
   opacity: 1;
   visibility: visible;
}
.pxrut_field_wrapper .checkbox_label.-radio input {
   display: none;
}
.pxrut_form_errors:empty {
   display: none;
}
body .pxrut_submit_wrapper input[type="submit"].button,
body .pxrut_submit_wrapper button.button {
   height: var(--button-height);
   padding: 0px var(--button-padding);
}
body .pxrut-loader {
   visibility: hidden;
   opacity: 0;
}
body .button .pxrut-loader {
   position: absolute;
   width: 20px;
   height: 20px;
   right: -32px;
}
body .pxrut-loader.-show {
   visibility: visible;
   opacity: 1;
}
body .pxrut_button .pxrut-loader,
body .pxrut_submit_wrapper .button .pxrut-loader,
body .pxrut_submit_wrapper button .pxrut-loader {
   top: auto;
   left: auto;
   right: -40px;
   width: 30px;
   height: 30px;
}
.loader_icon {
   width: 30px;
   height: 30px;
   animation: loader_rotation 2s linear infinite;
}
.loader_icon::before {
   content: "";
   display: block;
   position: absolute;
   inset: 0px;
   width: calc(100%);
   height: calc(100%);
   background-color: var(--bg-color);
   mask-image: url(assets/images/strokes/loader_stroke.svg);
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;
   pointer-events: none;
}
@keyframes loader_rotation {
   from {
      transform: rotate(0deg);
   }
   to {
      transform: rotate(360deg);
   }
}
body .pxrut_form_errors {
   padding: 15px 0px 0px 0px;
}
body .pxrut_form_error,
body .pxrut_field_error {
   margin: 5px 0px;
   background-color: transparent;
   padding: 0px 10px;
   border-left: 3px solid var(--color-red);
   font-size: 14px;
   text-align: left;
}
body .pxrut_field_errors {
   width: 100%;
}
.grecaptcha-badge {
   z-index: 1000;
   display: none !important;
   visibility: hidden !important;
}
.-show-grecaptcha-badge .grecaptcha-badge {
   display: block !important;
   visibility: visible !important;
}
/* POST PASSWORD */
.section_post_password {
   min-height: 100vh;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
}
.password_container {
   width: 100%;
   max-width: 650px;
   position: relative;
   margin: auto;
}
.password_wrapper {
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   gap: var(--section-padding);
   padding: var(--section-padding) 0px;
}
.password_wrapper .pxrut_fields_container {
   width: 100%;
   padding: 0px;
}
/* BUTTONS */
.button,
.button:is(a, input, button, label) {
   position: relative;
   display: inline-flex;
   justify-content: center;
   align-items: center;
   user-select: none;
   -moz-appearance: none;
   -webkit-appearance: none;
   appearance: none;

   --button-border: 0px;
   --button-height: 35px;
   --button-padding: 15px;

   height: var(--button-height);
   padding: 0px var(--button-padding);
   border-radius: 100px;
   border: none;
   outline: none;

   --bg-color: var(--color-darkgrey);
   background-color: var(--bg-color);
   --color: #fff;
   color: var(--color);
   font-size: 14px;
   line-height: var(--button-height);
   text-align: center;
   text-transform: uppercase;
   font-family: var(--font-heading-alt);
   font-weight: 900;

   cursor: pointer;

   --transition: all 300ms ease-out;
   transition: var(--transition);
}
.button:hover,
.button:is(a, input, button, label):hover,
.button.-active,
.button:is(a, input, button, label).-active,
.button:has(input:checked),
.button:is(a, input, button, label):has(input:checked) {
   --bg-color: #fff;
   --color: var(--color-darkgrey);
}
.button::before {
   content: "";
   display: block;
   position: absolute;
   inset: -5px;
   width: calc(100% + 10px);
   height: calc(100% + 10px);
   background-color: var(--bg-color);
   mask-image: url("assets/images/strokes/button_stroke_1.svg");
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;
   transition: var(--transition);
}
.button span {
   display: inline-flex;
   justify-content: center;
   align-items: center;
   gap: 10px;
   --letter-spacing: 2px;

   transition: var(--transition);
}
.button span.btn-sizer {
   letter-spacing: var(--letter-spacing);
   position: relative;
   z-index: 1;
   visibility: hidden;
   opacity: 0;
   pointer-events: none;
}
.button span.btn-title {
   letter-spacing: 0px;
   position: absolute;
   z-index: 2;
}
.button:hover span.btn-title,
.button.-active span.btn-title,
.button:has(input:checked) span.btn-title {
   letter-spacing: var(--letter-spacing);
}
.button:disabled,
.button:is(a, input, button, label):disabled {
   opacity: 0.7;
   cursor: not-allowed;
}
.button.-ghost,
.button.-ghost:is(a, input, button, label) {
   background-color: transparent !important;
   color: var(--bg-color);
}
.button.-light,
.button.-light:is(a, input, button, label) {
   --bg-color: #fff;
   --color: var(--color-darkgrey);
}
.button.-light:hover,
.button.-light:is(a, input, button, label):hover {
   --bg-color: var(--color-darkgrey);
   --color: #fff;
}
.button.-red,
.button.-red:is(a, input, button, label) {
   --bg-color: var(--color-red);
   --color: #fff;
}
.button.-red:hover,
.button.-red:is(a, input, button, label):hover {
   --bg-color: var(--color-red-dark);
}
.button.-hover-dark:hover,
.button.-hover-dark:is(a, input, button, label):hover {
   --bg-color: var(--color-darkgrey);
   --color: #fff;
}
.button.-hover-light:hover,
.button.-hover-light:is(a, input, button, label):hover {
   --bg-color: #fff;
   --color: var(--color-darkgrey);
}
.button_wrapper {
   display: flex;
   justify-content: center;
   align-items: center;
   flex-wrap: wrap;
   gap: 20px;
}
.button_wrapper.-align-left {
   justify-content: flex-start;
}
.button_wrapper.-align-right {
   justify-content: flex-end;
}
.button_reveal {
   opacity: 0;
   visibility: hidden;
   transform: translateY(1rem);
   transition: all 300ms ease-out var(--anim-delay);
}
.-in-view .button_reveal {
   opacity: 1;
   visibility: visible;
   transform: translateY(0rem);
}
/* LAYOUT */
.preloader {
   position: fixed;
   top: 0px;
   left: 0px;
   width: 100%;
   height: 100%;
   z-index: 10000;
   display: flex;
   justify-content: center;
   align-items: center;
   background-color: var(--color-offwhite, #faf7f0);
   visibility: visible;
   opacity: 1;
   -webkit-transition: all 300ms ease-out;
   -moz-transition: all 300ms ease-out;
   -ms-transition: all 300ms ease-out;
   -o-transition: all 300ms ease-out;
   transition: all 300ms ease-out;
}
.preloader.-hide {
   opacity: 0 !important;
   visibility: hidden !important;
}
.site_wrapper {
   width: 100%;
   overflow: hidden;
   position: relative;

   display: flex;
   flex-direction: column;
   align-content: stretch;
   justify-content: space-between;
   min-height: 100vh;
}
.content_wrapper {
   position: relative;
   flex: 2;
}
/* SITE HEADER */
.site_header {
   position: absolute;
   z-index: 1000;
   display: flex;
   justify-content: center;
   align-items: center;
   width: 100%;
   --color: var(--text-color-dark);
}
.site_header_inner {
   width: 100%;
   max-width: 1920px;
   display: flex;
   justify-content: space-between;
   align-items: center;
   gap: var(--section-padding);
   padding: var(--section-padding);
}
.logo_container {
   position: relative;
   display: flex;
   justify-content: center;
   align-items: center;
   background-color: transparent;
   height: 80px;
}
.logo_container::before {
   content: "";
   display: block;
   position: absolute;
   width: 140px;
   height: 15px;
   bottom: -25px;
   right: 15px;
   background-image: url("assets/images/header_logo_stroke.svg");
   background-position: 50% 50%;
   background-size: contain;
   background-repeat: no-repeat;
}
.site_header.-color-light .logo_container::before {
   background-image: url("assets/images/header_logo_stroke_white.svg");
}
footer .logo_container::before {
   display: none;
}
img.header_logo {
   max-width: 100%;
   max-height: 100%;
}
.menu_container {
   display: flex;
   justify-content: space-between;
   align-items: stretch;
   flex: 1 1;
   max-width: 1024px;
}
.menu_inner {
   position: relative;
   display: flex;
   justify-content: flex-end;
   align-items: center;
   flex: 1 1;
}
.menu_items_container {
   position: relative;
   flex: 1 1;
   padding: 0.5rem 1rem;
}
.menu_items_container::before {
   content: "";
   display: block;
   position: absolute;
   z-index: -1;
   top: 0px;
   left: 0px;
   width: 100%;
   height: 100%;
   background-color: rgba(0, 0, 0, 0.1);
   backdrop-filter: blur(20px) brightness(90%);
   border-radius: 100px;
}
.menu_items_container_inner {
   display: flex;
   justify-content: space-between;
}
.menu_item {
   display: flex;
   justify-content: center;
   align-items: center;
   cursor: pointer;
   --bg-color: transparent;
   --transition: all 300ms ease-out;
   transition: var(--transition);
}
a.menu_item {
   text-decoration: none;
}
.menu_item.-login {
   font-size: 35px;
}
.-color-dark .menu_item.-login:hover {
   color: #fff;
}
.-color-light .menu_item.-login:hover {
   color: var(--text-color-dark);
}
.menu_item_inner {
   position: relative;
   display: flex;
   justify-content: center;
   align-items: center;
   padding: 0.2rem 1rem;
   background-color: var(--bg-color);
   transition: var(--transition);
   border-radius: 100px;
}
.menu_item:hover .menu_item_inner {
   --bg-color: #fff;
   --color: var(--text-color-dark);
}
.menu_item_inner::before {
   content: "";
   display: block;
   position: absolute;
   inset: -5px;
   width: calc(100% + 10px);
   height: calc(100% + 10px);
   background-color: var(--bg-color);
   mask-image: url(assets/images/strokes/button_stroke_1.svg);
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;
   transition: var(--transition);
}
.menu_item_inner::after {
   content: "";
   display: block;
   position: absolute;
   top: 100%;
   width: 100%;
   height: 0.5rem;
}
.menu_title {
   position: relative;
   z-index: 2;

   font-family: var(--font-heading-alt);
   font-weight: bold;
   color: var(--color);
   text-transform: uppercase;
   font-size: 1.25rem;
   white-space: nowrap;
   text-decoration: none;
   cursor: pointer;
   transition: all 300ms ease-out;
}
.menu_items_container_inner > .gyeaicon-separator {
   align-self: center;
   color: var(--color);
   font-size: 1rem;
}
.submenu {
   position: absolute;
   top: 100%;
   right: 0;
   width: 100%;
   padding: 0px 2rem;
   --color: var(--text-color-dark);
   --border-color: #b1b1b1;
   color: var(--color);

   visibility: hidden;
   opacity: 0;
   transform: translateY(-50px);
   transition: all 300ms ease-out;
}
.submenu.-align-right {
   left: auto;
   right: 0;
}
.menu_item:hover .submenu,
.menu_item.-open:focus .submenu,
.submenu:focus-within {
   transform: translateY(0px);
   visibility: visible;
   opacity: 1;
}
.submenu_inner {
   width: 100%;
   display: flex;
   justify-content: flex-start;
   align-items: stretch;
   background-color: rgba(255, 255, 255, 0.8);
   backdrop-filter: blur(20px) brightness(115%);
   border-radius: 0px 0px 1.5rem 1.5rem;
   overflow: hidden;
}
.submenu_items {
   flex: 1 1 60%;
   display: flex;
   flex-direction: column;
   justify-content: flex-start;
   align-items: stretch;
}
.submenu_cols {
   flex: 1 1;
   width: 100%;
   display: flex;
   justify-content: flex-start;
   align-items: stretch;
   border-bottom: 1px solid var(--border-color);
}
.submenu_col {
   flex: 1 1 50%;
   padding: 1.5rem;
}
.submenu_col:first-child {
   border-right: 1px solid var(--border-color);
}
.submenu_col_title {
   font-family: var(--font-heading-alt);
   font-weight: bold;
   font-size: 1.25rem;
   margin-bottom: 10px;
}
.submenu_text {
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: stretch;
   padding: 1.5rem;
   flex: 1 1 40%;
   border-left: 1px solid var(--border-color);
   background-color: rgb(214 204 202 / 40%);
}
.submenu_title {
   font-family: var(--font-heading-alt);
   font-weight: bold;
   font-size: 1.25rem;
   margin-bottom: 10px;
}
.submenu_text_inner,
.submenu_text_inner p {
   font-family: var(--font-text);
   font-size: 0.8rem;
}
a.submenu_item,
.submenu_item {
   position: relative;
   height: auto;
   width: 100%;
   max-width: none;
   padding: 10px 0px;
   justify-content: flex-start;
}
a.submenu_item:hover,
.submenu_item:hover {
}
.menu_item.submenu_item.-highlighted {
   padding: 10px 1.5rem;
}
.submenu_item .menu_title {
   text-align: left;
   text-transform: none;
   font-weight: normal;
   font-size: 0.9rem;
}
.submenu_item .menu_title::after {
   content: "\e902";
   display: inline-block;
   margin-left: 0.5rem;
   font-family: "gyeaicons";
   color: transparent;
   transform: translateX(-0.5rem);
   transition: var(--transition);
}
.submenu_item:hover .menu_title::after {
   color: var(--color);
   transform: translateX(0rem);
}
.menu_item.submenu_item.-highlighted .menu_title {
   text-transform: uppercase;
}
.menu_item.submenu_item.-highlighted .menu_title i {
   display: inline-block;
   margin-left: 15px;
}
.pxrthm_toggle_menu {
   position: relative;
   z-index: 5;
   display: none;
   flex-direction: column;
   width: 40px;
   cursor: pointer;
}
.pxrthm_toggle_menu span {
   background: var(--color);
   height: 3px;
   margin: 5px 0;
   transition: 0.4s cubic-bezier(0.68, -0.6, 0.32, 1.6);
}
.pxrthm_toggle_menu span:nth-of-type(1) {
   width: 100%;
}
.pxrthm_toggle_menu span:nth-of-type(2) {
   width: 100%;
}
.pxrthm_toggle_menu span:nth-of-type(3) {
   width: 100%;
}
.pxrthm_toggle_menu input[type="checkbox"] {
   display: none;
}
.menu_container.-open .pxrthm_toggle_menu span:nth-of-type(1) {
   transform-origin: bottom;
   width: 50%;
   transform: rotatez(45deg) translate(6px, 0px);
}
.menu_container.-open .pxrthm_toggle_menu span:nth-of-type(2) {
   transform-origin: top;
   transform: rotatez(-45deg);
}
.menu_container.-open .pxrthm_toggle_menu span:nth-of-type(3) {
   transform-origin: bottom;
   width: 50%;
   transform: translate(18px, -8px) rotatez(45deg);
}
.submenu_icon {
   position: absolute;
   bottom: -5px;
   font-size: 10px;
   color: var(--color);
}
.subsubmenu_icon {
   display: inline-flex;
   justify-content: center;
   align-items: center;
   font-size: 10px;
   background-color: #fff;
   border-radius: 100%;
   width: 12px;
   height: 12px;
   margin-top: 2px;
   margin-left: 5px;
   color: #000;
   letter-spacing: 0;
}
.subsubmenu_icon.-left {
   display: none;
   margin-left: -15px;
   margin-right: 5px;
}
.-subsubmenu-align-left .subsubmenu_icon {
   display: none;
}
.-subsubmenu-align-left .subsubmenu_icon.-left {
   display: inline-flex;
}
.menu_item:hover .subsubmenu_icon {
   color: #000;
}
.subsubmenu_icon i {
   margin-top: 1px;
   margin-right: -1px;
}
.subsubmenu_icon.-left i {
   margin-right: 0px;
}
/* SITE FOOTER */
.footer_header {
   position: relative;
   display: flex;
   justify-content: center;
   align-items: center;
}
.footer_body {
   padding: var(--section-padding) 0px;
}
.footer_columns {
   display: flex;
   justify-content: flex-start;
   align-items: flex-start;
   flex-wrap: wrap;
   --gap: var(--section-padding);
   gap: var(--gap);
}
.footer_column {
   display: flex;
   flex-direction: column;
   align-items: flex-start;
   justify-content: flex-start;
   gap: 10px;
   width: calc(25% - (3 * var(--gap) / 4));
}
.footer_column h4 {
   font-family: var(--font-text);
   font-size: 1.25rem;
   text-transform: uppercase;
}
.footer_column_divider {
   width: 4rem;
   height: 1px;
   background-color: var(--color);
}
.footer_column_items {
   list-style-type: none;
   padding: 0px;
   margin: 0px;
}
.footer_column a {
   color: var(--color);
}
.footer_social_icons {
   display: flex;
   justify-content: flex-start;
   align-items: center;
   flex-wrap: wrap;
   gap: 10px;
   margin-top: 5px;
}
.footer_social_icon img {
   width: auto;
   height: 33px;
}
.footer_partners {
   width: 100%;
   display: flex;
   justify-content: flex-start;
   align-items: center;
   flex-wrap: wrap;
   gap: 10px;
   margin-top: 5px;
}
.footer_partner img {
   width: auto;
   height: 40px;
}
.footer_copyright {
   text-align: center;
   font-size: 16px;
   width: 100%;
   border-top: 1px solid var(--color);
   padding-top: var(--section-padding);
}
/* SECTIONS */
section,
.section {
   position: relative;
   width: 100%;
   display: flex;
   justify-content: center;
   align-items: center;
   flex-wrap: wrap;
   --round-corner: 2rem;
}
.section_inner {
   position: relative;
   z-index: 2;
   width: 100%;
   max-width: var(--content-width);
   padding: var(--section-padding) var(--section-padding);
   color: var(--color);
}
.section:first-child:not(.section_hero) .section_inner {
   padding-top: calc(var(--section-padding) + 120px);
}
.section.-next-round-corners .section_inner {
   padding-bottom: calc(var(--section-padding) + var(--round-corner));
}
.section.-prev-round-corners .section_inner {
   padding-top: calc(var(--section-padding) + var(--round-corner));
}
.section_inner.-full {
   max-width: 100%;
   padding: 0px;
}
.section.-round-corners {
   z-index: 2;
   margin-top: calc(-1 * var(--round-corner));
   margin-bottom: calc(-1 * var(--round-corner));
}
.section_background {
   position: absolute;
   z-index: 1;
   width: 100%;
   height: 100%;
   display: flex;
   justify-content: center;
   align-items: center;
}
.section_background_inner {
   position: relative;
   width: 100%;
   height: 100%;
   display: flex;
   justify-content: center;
   align-items: center;
   overflow: hidden;
}
.section.-round-corners .section_background,
.section.-round-corners .section_background_inner {
   border-radius: var(--round-corner);
}
.-bg-white {
   --bg-color: var(--color-white);
   background-color: var(--bg-color);
}
.-bg-darkgrey {
   --bg-color: var(--color-darkgrey);
   background-color: var(--bg-color);
}
.-bg-offwhite {
   --bg-color: var(--color-offwhite);
   background-color: var(--bg-color);
}
.-bg-egg {
   --bg-color: var(--color-egg);
   background-color: var(--bg-color);
}
.-bg-lightgrey {
   --bg-color: var(--color-lightgrey);
   background-color: var(--bg-color);
}
.-bg-darkgrey2 {
   --bg-color: var(--color-darkgrey2);
   background-color: var(--bg-color);
}
.section_background_video,
.section_background_image {
   position: absolute;
   z-index: 1;
   width: 100%;
   height: 100%;
   object-position: 50% 50%;
   object-fit: cover;
}
.section_background_video.-blur,
.section_background_image.-blur {
   --blur: 10px;
   filter: blur(var(--blur));
   width: calc(100% + (2 * var(--blur)));
   min-width: calc(100% + (2 * var(--blur)));
   height: calc(100% + (2 * var(--blur)));
   min-height: calc(100% + (2 * var(--blur)));
}
.section_background_image.-mobilebg {
   display: none;
}
.section_title_container {
   position: relative;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   gap: 50px;
   --text-align: center;
}
.section_title_container.-align-left {
   align-items: flex-start;
}
.section_title_container.-align-right {
   align-items: flex-end;
}
.section_title,
h1.section_title,
h2.section_title {
   font-size: 3rem;
   text-wrap: balance;
   color: var(--color);
   text-align: var(--text-align);

   opacity: 0;
   visibility: hidden;
   transform: translateY(2rem);
   transition: all 300ms ease-out;
}
.-align-left .section_title,
.-align-left h1.section_title,
.-align-left h2.section_title {
   transform: translateY(0rem) translateX(2rem);
}
.-align-right .section_title,
.-align-right h1.section_title,
.-align-right h2.section_title {
   transform: translateY(0rem) translateX(-2rem);
}
.-in-view .section_title,
.-in-view h1.section_title,
.-in-view h2.section_title,
.-in-view .-align-left .section_title,
.-in-view .-align-left h1.section_title,
.-in-view .-align-left h2.section_title,
.-in-view .-align-right .section_title,
.-in-view .-align-right h1.section_title,
.-in-view .-align-right h2.section_title {
   opacity: 1;
   visibility: visible;
   transform: translateY(0rem) translateX(0rem);
}
.section_subtitle,
.section_subtitle:is(h1, h2, h3, h4, h5) {
   width: 100%;
   max-width: 850px;
   font-family: var(--font-heading-alt);
   font-size: 0.82rem;
   line-height: 1.5;
   text-transform: uppercase;
   text-wrap: balance;
   font-weight: bold;
   color: var(--color);
   text-align: var(--text-align);
   opacity: 0;
   visibility: hidden;
   transform: translateY(2rem);
   transition: all 300ms ease-out 150ms;
}
.-align-left .section_subtitle,
.-align-left .section_subtitle:is(h1, h2, h3, h4, h5) {
   transform: translateY(0rem) translateX(2rem);
}
.-align-right .section_subtitle,
.-align-right .section_subtitle:is(h1, h2, h3, h4, h5) {
   transform: translateY(0rem) translateX(-2rem);
}
.-in-view .section_subtitle,
.-in-view .section_subtitle:is(h1, h2, h3, h4, h5),
.-in-view .-align-left .section_subtitle,
.-in-view .-align-left .section_subtitle:is(h1, h2, h3, h4, h5),
.-in-view .-align-right .section_subtitle,
.-in-view .-align-right .section_subtitle:is(h1, h2, h3, h4, h5) {
   opacity: 1;
   visibility: visible;
   transform: translateY(0rem) translateX(0rem);
}
.section_subtitle a {
   font-family: var(--font-heading-alt);
   font-size: 0.82rem;
   text-transform: uppercase;
   text-wrap: balance;
   color: var(--color);
   text-align: var(--text-align);
}
.section_title_separator {
   max-width: 400px;
   height: 2px;
   background-color: var(--color);
   opacity: 0;
   visibility: hidden;
   width: 0%;
   transition: all 300ms ease-out 300ms;
}
.-in-view .section_title_separator {
   opacity: 1;
   visibility: visible;
   width: min(50%, 400px);
}
.section_title_separator.-stroke,
.section_title_separator.-stroke2,
.section_title_separator.-stroke3 {
   width: 145px;
   height: 18px;
   background-color: var(--color);
   mask-image: url("assets/images/strokes/title_separator_stroke.svg");
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;
   transform: translateY(2rem);
}
.section_title_separator.-stroke.-stroke2,
.section_title_separator.-stroke2 {
   width: 160px;
   height: 8px;
   mask-image: url("assets/images/strokes/title_separator_stroke2.svg");
}
.section_title_separator.-stroke.-stroke3,
.section_title_separator.-stroke3 {
   width: 290px;
   height: 12px;
   mask-image: url("assets/images/strokes/title_separator_stroke3.svg");
}
.-in-view .section_title_separator.-stroke,
.-in-view .section_title_separator.-stroke2,
.-in-view .section_title_separator.-stroke3 {
   transform: translateY(0rem);
}
/* SECTION PAGE TITLE */
/* SECTION SIMPLE TEXT */
.section_text:not(:first-child) {
   margin-top: var(--section-padding);
}
.section_text .wp-caption {
   width: 100%;
   max-width: 100%;
}
.section_text p:last-child {
   margin-bottom: 0px;
}
.section_text img {
   vertical-align: baseline;
}
.section_text :is(h1, h2, h3, h4, h5) {
   line-height: 1.3;
}
.section_text .alignleft {
   float: left;
   margin: 0.5em 1em 0.5em 0;
}
.section_text .alignright {
   float: right;
   margin: 0.5em 0 0.5em 1em;
}
.section_text .aligncenter {
   display: block;
   margin-left: auto;
   margin-right: auto;
}
.narrow .section_text .aligncenter {
   display: block;
   margin-left: auto;
   margin-right: auto;
   width: 100%;
}
.wp-caption-text {
   font-size: 12px;
}
.section_text a {
   font-weight: normal;
   text-decoration: underline;
}
.section_text iframe {
   margin-top: 25px;
   max-width: 100% !important;
   border: none;
}
.section_text .pxrthm-iframe {
   width: 100%;
   height: 90vh;
}
.section_text.-col_2 {
   column-count: 2;
   column-gap: calc(2 * var(--section-padding));
}
.section_simpletext .button_wrapper {
   margin-top: var(--section-padding);
}
/* SECTION IMAGE HALF */
.imghalf_container {
   display: flex;
   justify-content: center;
   align-items: stretch;
   min-height: 50vh;
}
.-layout-reverse .imghalf_container {
   flex-direction: row-reverse;
}
.image_half {
   display: flex;
   justify-content: center;
   align-items: center;
   width: calc(50% + var(--section-padding));
   --border-radius: 1.5rem;
}
.image_half_inner {
   opacity: 0;
   visibility: hidden;
   transform: translateX(-2rem);
   transition: all 300ms ease-out;
}
.-layout-reverse .image_half_inner {
   transform: translateX(2rem);
}
.-layout-reverse.-in-view .image_half_inner,
.-in-view .image_half_inner {
   opacity: 1;
   visibility: visible;
   transform: translateY(0rem);
}
.image_half.-landscape .image_half_inner {
   --offset: calc(var(--side-width) - var(--section-padding));
   --width: calc(100% + var(--offset));
   width: var(--width);
   min-width: var(--width);
   margin-left: calc(-1 * var(--offset));
}
.-layout-reverse .image_half.-landscape .image_half_inner {
   margin-left: auto;
   margin-right: calc(-1 * var(--offset));
}
.text_half {
   display: flex;
   justify-content: center;
   align-items: center;
   width: calc(50% - var(--section-padding));
   padding: var(--section-padding);
   padding-right: 0px;
}
.-layout-reverse .text_half {
   padding-left: 0px;
   padding-right: var(--section-padding);
}
.image_half img {
   border-radius: var(--border-radius);
}
.text_half_inner {
   width: 100%;
}
.text_half .section_text {
   opacity: 0;
   visibility: hidden;
   transform: translateX(2rem);
   transition: all 300ms ease-out 300ms;
}
.-layout-reverse .text_half .section_text {
   transform: translateX(-2rem);
}
.-in-view .text_half .section_text {
   opacity: 1;
   visibility: visible;
   transform: translateX(0rem);
}
.text_half .button_wrapper {
   margin-top: var(--section-padding);
}
.text_half .button_wrapper .button_reveal {
   opacity: 0;
   visibility: hidden;
   transform: translateY(1rem);
   transition: all 300ms ease-out var(--anim-delay);
}
.-in-view .text_half .button_wrapper .button_reveal {
   opacity: 1;
   visibility: visible;
   transform: translateY(0rem);
}
.-layout-reverse .-align-left .section_title,
.-layout-reverse .-align-left h1.section_title,
.-layout-reverse .-align-left h2.section_title {
   transform: translateY(0rem) translateX(-2rem);
}
.-layout-reverse .-align-left .section_subtitle,
.-layout-reverse .-align-left .section_subtitle:is(h1, h2, h3, h4, h5) {
   transform: translateY(0rem) translateX(-2rem);
}
.-layout-reverse .text_half .section_text {
   transform: translateX(-2rem);
}
.-in-view.-layout-reverse .-align-left .section_title,
.-in-view.-layout-reverse .-align-left h1.section_title,
.-in-view.-layout-reverse .-align-left h2.section_title {
   transform: translateY(0rem) translateX(0rem);
}
.-in-view.-layout-reverse .-align-left .section_subtitle,
.-in-view.-layout-reverse
   .-align-left
   .section_subtitle:is(h1, h2, h3, h4, h5) {
   transform: translateY(0rem) translateX(0rem);
}
.-in-view.-layout-reverse .text_half .section_text {
   transform: translateX(0rem);
}
/* SECTION VIDEO HALF */
.section_videohalf .image_half {
   width: 55%;
   --stroke-color: #fff;
}
.section_videohalf .text_half {
   width: 45%;
}
.section_videohalf .image_half_inner {
   display: flex;
   justify-content: center;
   align-items: center;
   position: relative;
}
.section_videohalf .image_half.-landscape .image_half_inner {
   --offset: calc((var(--side-width) / 2) - var(--section-padding));
}
.section_videohalf .image_half_inner::before {
   content: "";
   display: block;
   position: absolute;
   z-index: 3;
   inset: -3% -2%;
   width: 104%;
   height: 106%;
   background-color: var(--stroke-color);
   mask-image: url(assets/images/strokes/post_box_stroke.svg);
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;
   transition: var(--transition);
}
.section_videohalf .image_half .video_icon {
   position: absolute;
   z-index: 4;
   font-size: 90px;
   color: var(--stroke-color);
   cursor: pointer;
}
.image_half_overlay {
   position: absolute;
   inset: 0px;
   width: 100%;
   height: 100%;
   z-index: 2;
   background-color: #000;
   opacity: 0.35;
   pointer-events: none;
   border-radius: var(--border-radius);
}
.section_videohalf.-layout-normal .-align-right .section_title,
.section_videohalf.-layout-normal .-align-right h1.section_title,
.section_videohalf.-layout-normal .-align-right h2.section_title {
   transform: translateY(0rem) translateX(2rem);
}
.section_videohalf.-layout-normal .-align-right .section_subtitle,
.section_videohalf.-layout-normal
   .-align-right
   .section_subtitle:is(h1, h2, h3, h4, h5) {
   transform: translateY(0rem) translateX(2rem);
}
.section_videohalf.-layout-normal .text_half .section_text {
   transform: translateX(2rem);
}
.section_videohalf.-in-view.-layout-normal .-align-right .section_title,
.section_videohalf.-in-view.-layout-normal .-align-right h1.section_title,
.section_videohalf.-in-view.-layout-normal .-align-right h2.section_title {
   transform: translateY(0rem) translateX(0rem);
}
.section_videohalf.-in-view.-layout-normal .-align-right .section_subtitle,
.section_videohalf.-in-view.-layout-normal
   .-align-right
   .section_subtitle:is(h1, h2, h3, h4, h5) {
   transform: translateY(0rem) translateX(0rem);
}
.section_videohalf.-in-view.-layout-normal .text_half .section_text {
   transform: translateX(0rem);
}
.section_videohalf.-in-view.-layout-normal .text_half .section_text p,
.section_videohalf.-in-view.-layout-normal .text_half .section_text {
   text-align: right;
}
/* SECTION IMAGES */
.section_images .section_inner {
   display: flex;
   justify-content: center;
   align-items: center;
   width: 100%;
   height: 100%;
}
.section_slider {
   display: flex;
   justify-content: center;
   align-items: center;
   width: 100%;
   height: 100%;
}
.section_slide {
   position: relative;
   width: 100%;
   aspect-ratio: 16 / 9;
   max-height: 95vh;
   max-height: 95svh;
   display: flex;
   justify-content: center;
   align-items: center;
}
.section_slide img {
   position: absolute;
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: 50% 50%;
}
.section_slider .embla__viewport {
   border-radius: 1.5rem;
}
.section_slider .embla__prev,
.section_slider .embla__next {
   position: absolute;
   z-index: 5;
}
.section_slider .embla__prev {
   left: -30px;
}
.section_slider .embla__next {
   right: -30px;
}
/* SECTION HERO */
.hero_slide {
   display: flex;
   justify-content: center;
   align-items: flex-end;
   width: 100%;
   height: 100vh;
   height: 100svh;
}
.hero_slide .section_inner {
   width: 100%;
   max-width: 1920px;
   height: 100%;
   padding: var(--section-padding);
}
.section:first-child:not(.section_hero) .hero_slide .section_inner {
   padding-top: calc(var(--section-padding) + 120px);
}
.hero_slide .slide_content {
   position: relative;
   display: flex;
   justify-content: center;
   align-items: stretch;
   width: 100%;
   height: 100%;
}
.hero_slide .slide_content_inner {
   position: relative;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: flex-start;
   gap: 50px;
   width: 100%;
   height: 100%;
}
.-in-view .hero_slide.embla__slide .-align-left .section_title,
.-in-view .hero_slide.embla__slide .-align-left h1.section_title,
.-in-view .hero_slide.embla__slide .-align-left h2.section_title {
   opacity: 0;
   visibility: hidden;
   transform: translateY(0rem) translateX(2rem);
}
.-in-view .hero_slide.embla__slide.is-in-view .-align-left .section_title,
.-in-view .hero_slide.embla__slide.is-in-view .-align-left h1.section_title,
.-in-view .hero_slide.embla__slide.is-in-view .-align-left h2.section_title {
   opacity: 1;
   visibility: visible;
   transform: translateY(0rem) translateX(0rem);
}
.-in-view .hero_slide.embla__slide .-align-left .section_subtitle,
.-in-view
   .hero_slide.embla__slide
   .-align-left
   .section_subtitle:is(h1, h2, h3, h4, h5) {
   opacity: 0;
   visibility: hidden;
   transform: translateY(0rem) translateX(2rem);
}
.-in-view .hero_slide.embla__slide.is-in-view .-align-left .section_subtitle,
.-in-view
   .hero_slide.embla__slide.is-in-view
   .-align-left
   .section_subtitle:is(h1, h2, h3, h4, h5) {
   opacity: 1;
   visibility: visible;
   transform: translateY(0rem) translateX(0rem);
}
.hero_text {
   width: 100%;
   max-width: 400px;
   opacity: 0;
   visibility: hidden;
   transform: translateY(0rem) translateX(2rem);
   transition: all 300ms ease-out 150ms;
}
.-in-view .embla__slide.is-in-view .hero_text {
   opacity: 1;
   visibility: visible;
   transform: translateY(0rem) translateX(0rem);
}
.-in-view .embla__slide .button_reveal {
   opacity: 0;
   visibility: hidden;
   transform: translateY(1rem);
   transition: all 300ms ease-out var(--anim-delay);
}
.-in-view .embla__slide.is-in-view .button_reveal {
   opacity: 1;
   visibility: visible;
   transform: translateY(0rem);
}
/* SECTION CTA */
.cta_container {
   display: flex;
   justify-content: flex-start;
   align-items: center;
   gap: var(--section-padding);
}
.cta_container .text_half {
   flex: 1 1 auto;
   width: auto;
   padding: 0px;
}
.cta_container .button_half {
   width: auto;
}
/* SECTION CTA SLIDER */
.cta_slide {
   width: 100%;
   aspect-ratio: 16/10;
   max-height: 100vh;
   max-height: 100svh;
}
.cta_slide .section_inner.-full {
   width: 100%;
   height: 100%;
   padding: 80px var(--section-padding);
}
.cta_slide .slide_content {
   position: relative;
   display: flex;
   justify-content: center;
   align-items: flex-end;
   width: 100%;
   height: 100%;
}
.cta_slide .slide_content_inner {
   position: relative;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   gap: 20px;
   width: calc(100% - 80px);
   max-width: 800px;
   --bg-color: #fff;
   background-color: var(--bg-color);
   border-radius: 36px;
   padding: 1rem;
   text-align: center;
}
.cta_slide .slide_content_inner::before {
   content: "";
   display: block;
   position: absolute;
   inset: -20px;
   width: calc(100% + 40px);
   height: calc(100% + 40px);
   background-color: var(--bg-color);
   mask-image: url("assets/images/strokes/cta_content_stroke.svg");
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;
}
.cta_slide .section_title_container {
   gap: 20px;
}
.cta_slide .section_title {
   font-family: var(--font-heading-alt);
   font-size: 1rem;
   text-transform: uppercase;
   font-weight: bold;
}
.-in-view .cta_slide.embla__slide .section_title,
.-in-view .cta_slide.embla__slide h1.section_title,
.-in-view .cta_slide.embla__slide h2.section_title {
   opacity: 0;
   visibility: hidden;
   transform: translateY(2rem) translateX(0rem);
}
.-in-view .cta_slide.embla__slide.is-in-view .section_title,
.-in-view .cta_slide.embla__slide.is-in-view h1.section_title,
.-in-view .cta_slide.embla__slide.is-in-view h2.section_title {
   opacity: 1;
   visibility: visible;
   transform: translateY(0rem) translateX(0rem);
}
.-in-view .cta_slide.embla__slide .section_subtitle,
.-in-view .cta_slide.embla__slide .section_subtitle:is(h1, h2, h3, h4, h5) {
   opacity: 0;
   visibility: hidden;
   transform: translateY(2rem) translateX(0rem);
}
.-in-view .cta_slide.embla__slide.is-in-view .section_subtitle,
.-in-view
   .cta_slide.embla__slide.is-in-view
   .section_subtitle:is(h1, h2, h3, h4, h5) {
   opacity: 1;
   visibility: visible;
   transform: translateY(0rem) translateX(0rem);
}
.-in-view .cta_slide.embla__slide .section_title_separator.-stroke {
   opacity: 0;
   visibility: hidden;
   transform: translateY(2rem);
   transition-delay: 100ms;
}
.-in-view .cta_slide.embla__slide.is-in-view .section_title_separator.-stroke {
   opacity: 1;
   visibility: visible;
   transform: translateY(0rem) translateX(0rem);
}
.slide_content_text {
   font-family: var(--font-heading-alt);
   font-size: 0.64rem;
   text-transform: uppercase;
   font-weight: bold;
   width: 100%;
   opacity: 0;
   visibility: hidden;
   transform: translateY(2rem);
   transition: all 300ms ease-out 150ms;
}
.slide_content_text p {
   font-family: var(--font-heading-alt);
   font-size: 0.64rem;
   text-transform: uppercase;
   font-weight: bold;
}
.-in-view .embla__slide.is-in-view .slide_content_text {
   opacity: 1;
   visibility: visible;
   transform: translateY(0rem);
}
.cta_slider_buttons {
   position: absolute;
   z-index: 10;
   top: var(--section-padding);
   left: 0px;
   width: 100%;
}
/* BOX SLIDER */
.box_slider_outer {
   position: relative;
   display: flex;
   justify-content: center;
   align-items: center;
}
.box_slider {
   width: 100%;
   margin-top: var(--section-padding);
}
.box_slider.embla {
   overflow: visible;
}
.box_slide {
   flex: 0 0 33.36%;
   padding: 0px 25px;
}
.box_slide:has(.post_box_icon) {
   padding-top: 33px;
}
.box_slider .embla__container {
   align-items: stretch;
}
.box_slide.embla__slide {
   display: flex;
   justify-content: center;
   align-items: stretch;
}
.box_slider .embla__viewport {
   width: 133%;
   transform: translateX(-25px);
   margin-top: 50px;
   overflow: hidden;
}
.box_slider .embla__buttons {
   justify-content: flex-end;
}
.post_box {
   position: relative;
   width: 100%;
   --bg-color: var(--color-darkgrey);
   background-color: var(--bg-color);
   border-radius: 1.5rem;
   color: var(--color);
}
.post_box::before {
   content: "";
   display: block;
   position: absolute;
   inset: -5px;
   width: calc(100% + 10px);
   height: calc(100% + 10px);
   background-color: var(--bg-color);
   mask-image: url("assets/images/strokes/post_box_stroke.svg");
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;
   pointer-events: none;
}
.post_box_image {
   width: 100%;
   aspect-ratio: 5 / 4;
   display: flex;
   justify-content: center;
   align-items: center;
   border-radius: 1.5rem;
   overflow: hidden;
}
.post_box_image.-portrait {
   aspect-ratio: 4 / 5;
}
.post_box_image img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: 50% 50%;
}
.post_box_content {
   position: relative;
   display: flex;
   flex-direction: column;
   justify-content: flex-start;
   align-items: center;
   gap: 0.5rem;
   padding: 1.5rem 1rem 1rem 1rem;
}
.post_box_button {
   margin-top: calc(-17.5px - 1.5rem);
}
.post_box_title {
   font-size: 1.3rem;
   text-align: center;
   text-wrap: balance;
}
.post_box_text {
   text-align: justify;
   hyphens: auto;
   line-height: 1.2;
}
.post_box_text p {
   text-align: justify;
   hyphens: auto;
   line-height: 1.2;
}
.post_box_icon {
   position: absolute;
   inset: -33px 0px auto 0px;
   margin: auto;
   width: 66px;
   height: 66px;
   display: flex;
   justify-content: center;
   align-items: center;
   --color: var(--text-color-dark);
   color: var(--color);
   --bg-color: #fff;
   background-color: var(--bg-color);
   border-radius: 100%;
   font-size: 45px;
}
.post_box_icon_inner {
   position: relative;
   display: flex;
   justify-content: center;
   align-items: center;
   width: 100%;
   height: 100%;
}
.post_box_icon_inner::before {
   content: "";
   display: block;
   position: absolute;
   inset: -5px;
   width: calc(100% + 10px);
   height: calc(100% + 10px);
   background-color: var(--bg-color);
   mask-image: url("assets/images/strokes/post_box_icon_stroke.svg");
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;
   pointer-events: none;
}
.box_slider_backdrop {
   position: absolute;
   left: -235px;
   margin-bottom: -150px;
}
/* BOX LIST */
.pxrthm-post-list-container.-loading {
   opacity: 0.5;
   pointer-events: none;
}
.pagination {
   position: relative;
   display: flex;
   justify-content: center;
   align-items: center;
   flex-wrap: wrap;
   color: var(--color);
   margin-top: var(--section-padding);
   gap: 1rem;
}
.pagination_link {
   font-family: var(--font-heading-alt);
   font-weight: bold;
   color: var(--color);
   font-size: 1rem;
}
a.pagination_link {
   text-decoration: none;
}
.pagination_link.-active,
a.pagination_link.-active {
   --color: var(--color-red);
   text-decoration: underline;
}
.pagination_link.-disabled {
   opacity: 0.5;
   pointer-events: none;
}
.loadmore_container {
   display: flex;
   justify-content: center;
   align-items: center;
   margin-top: var(--section-padding);
}
/* SECTION NEWSLETTER */
.newsletter_form_container {
   position: relative;
   width: 100%;
   max-width: 950px;
   margin: auto;
}
.pxrthm_form_response_message {
   font-family: var(--font-heading);
   font-weight: normal;
   text-transform: uppercase;
   text-align: center;
   margin: var(--section-padding) 0px;
   font-size: 1.5rem;
   line-height: 1.5;
}
/* SECTION VIDEO */
.section_video .section_inner {
   position: relative;
   aspect-ratio: 16 / 9;
   max-height: 90vh;
   height: fit-content;
   display: flex;
   align-items: center;
   justify-content: center;
}
.section_video .section_video_title {
   position: relative;
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   align-items: center;
   height: auto;
   min-height: 80vh;
   max-height: 100%;
   padding: var(--section-padding);
}
.pxrthm-play-video {
   cursor: pointer;
}
.section_video .pxrthm-play-video {
   font-size: 90px;
}
.section_video .video_wrapper {
   display: flex;
   justify-content: center;
   align-items: center;
   top: 0px;
   left: 0px;
   position: absolute;
   z-index: 2;
   width: 100%;
   height: 100%;
}
.section_video.-round-corners .video_wrapper {
   border-radius: var(--round-corner);
}
.section_video .video_wrapper {
   pointer-events: none;
   visibility: hidden;
   opacity: 0;
   transition: opacity 500ms ease-out;
}
.section_video .video_wrapper.-show {
   visibility: visible;
   opacity: 1;
   pointer-events: all;
}
.video_wrapper {
   background-color: var(--color-darkgrey2);
}
.video_wrapper video {
   max-width: 100%;
   max-height: 100%;
   width: auto;
   height: auto;
}
.video_wrapper iframe {
   width: 100%;
   height: 100%;
}
/* SECTION NUMBERS */
.numbers_container {
   display: flex;
   justify-content: flex-start;
   align-items: stretch;
   flex-wrap: wrap;
   --gap: calc(2 * var(--section-padding));
   gap: var(--gap);
}
.numbers_container {
   margin-top: var(--section-padding);
}
.numbers_container .text_half {
   padding: 0px;
   width: calc(45% - (var(--gap) / 2));
}
.numbers_container .numbers_half {
   display: flex;
   justify-content: center;
   align-items: center;
   width: calc(55% - (var(--gap) / 2));
}
.numbers {
   width: 100%;
}
.numbers .number {
   position: relative;
   display: flex;
   justify-content: flex-start;
   align-items: center;
   width: 100%;
   border-top: 1px solid var(--color);
   overflow: hidden;
   line-height: 1;
   cursor: pointer;
   opacity: 0;
   visibility: hidden;
   transform: translateX(2rem);
   transition: all 400ms ease-out var(--anim-delay);
}
.numbers .number:last-child {
   border-bottom: 1px solid var(--color);
}
.numbers.-in-view .number {
   opacity: 1;
   visibility: visible;
   transform: translateX(0rem);
}
.number_inner {
   display: flex;
   justify-content: flex-start;
   align-items: stretch;
   width: 200%;
   min-width: 200%;
}
.number .number_main {
   position: relative;
   width: 50%;
   display: flex;
   justify-content: space-between;
   align-items: center;
   padding: 1rem 2rem 1rem 0;
   transform: translateX(0%) translateY(0%);
   transition: transform 500ms ease-out;
}
.number.-info .number_main {
   transform: translateX(0%) translateY(-100%);
}
.number .number_info {
   position: relative;
   width: 50%;
   display: flex;
   justify-content: flex-start;
   align-items: center;
   padding: 1rem 2rem 1rem 0;
   transform: translateX(-100%) translateY(100%);
   transition: transform 500ms ease-out;
}
.number.-info .number_info {
   transform: translateX(-100%) translateY(0%);
}
.number_num {
   font-family: var(--font-heading);
   font-size: 3.75rem;
}
.number_text {
   text-align: right;
}
.number_toggle {
   align-self: center;
   cursor: pointer;
   position: absolute;
   z-index: 2;
   right: 5px;
}
/* SECTION TEAM */
.post_list_container {
   margin-top: var(--section-padding);
}
.post_list {
   display: flex;
   justify-content: flex-start;
   align-items: flex-start;
   flex-wrap: wrap;
   --gap: 3rem;
   gap: var(--gap);
}
.post_list .post_box {
   flex: 0 0 calc(25% - (var(--gap) * 3 / 4));
   opacity: 0;
   visibility: hidden;
   transform: translateY(2rem);
   transition: all 300ms ease-out var(--anim-delay);
}
.post_list .post_box.-in-view {
   opacity: 1;
   visibility: visible;
   transform: translateY(0rem);
}
/* SECTION GALLERY */
.section_galeria {
   --content-width: 1920px;
}
.gallery {
   display: flex;
   justify-content: flex-start;
   align-items: flex-start;
   flex-wrap: wrap;
   margin-top: var(--section-padding);
}
.gallery_image {
   width: 25%;
   padding: 1.5rem;
}
.gallery_image_inner {
   width: 100%;
   position: relative;
   cursor: pointer;
   opacity: 0;
   visibility: hidden;
   transform: translateY(2rem);
   transition: all 300ms ease-out var(--anim-delay);
}
.gallery_image_inner.-in-view {
   opacity: 1;
   visibility: visible;
   transform: translateY(0rem);
}
.gallery_image_inner::before {
   content: "";
   display: block;
   position: absolute;
   inset: -5px;
   width: calc(100% + 10px);
   height: calc(100% + 10px);
   background-color: #fff;
   mask-image: url(assets/images/strokes/post_box_stroke.svg);
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;
   pointer-events: none;
}
.gallery_image img {
   border-radius: 2rem;
}
.gallery_popup_slider {
   display: flex;
   justify-content: center;
   align-items: center;
   width: var(--popup-content-width);
   height: var(--popup-content-height);
}
.gallery_popup_slider .embla__next,
.gallery_popup_slider .embla__prev {
   position: absolute;
   z-index: 5;
}
.gallery_popup_slider .embla__prev {
   left: -20px;
}
.gallery_popup_slider .embla__next {
   right: -20px;
}
.gallery_popup_slider .embla__viewport {
   height: 100%;
}
.gallery_popup_slider .embla__container {
   height: 100%;
}
.gallery_popup_slide {
   flex: 0 0 100%;
   height: var(--popup-content-height);
   display: flex;
   justify-content: center;
   align-items: center;
}
.gallery_popup_slide img {
   max-width: 100%;
   max-height: 100%;
}
/* SECTION FAQ */
.faq_container {
   margin-top: var(--section-padding);
}
.faq_item {
   --gap: 1.5rem;
   position: relative;
   padding: var(--gap) var(--gap) 0 var(--gap);
   display: flex;
   justify-content: flex-start;
   align-items: stretch;
   flex-direction: column;
}
.faq_item.-open {
   --color: #fff;
}
.faq_item::before {
   content: "";
   display: block;
   position: absolute;
   z-index: -1;
   top: 0px;
   left: 0px;
   width: 100%;
   height: 100%;
   border-radius: 0.75rem 0.75rem 2rem 2rem;
   background-color: transparent;
   transition: background-color 500ms ease-out;
   pointer-events: none;
}
.faq_item.-open::before {
   background-color: var(--color-darkgrey);
}
.faq_question {
   position: relative;
   display: flex;
   justify-content: flex-start;
   align-items: center;
   font-family: var(--font-heading);
   font-size: 1.25rem;
   line-height: 1.2;
   color: var(--color);
   cursor: pointer;
   padding-bottom: var(--gap);
   padding-right: 3rem;
}
.faq_separator {
   width: 100%;
   height: 10px;
   background-color: var(--color);
   mask-image: url(assets/images/strokes/faq_stroke.svg);
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;
   transition: background-color 500ms ease-out;
}
.faq_answer {
   display: none;
   color: var(--color);
}
.faq_answer_inner {
   padding: var(--gap) 0;
}
.faq_question i {
   position: absolute;
   right: 1rem;
   display: flex;
   justify-content: center;
   align-items: center;
   width: 1rem;
   height: 1rem;
   cursor: pointer;
   transform: rotate(0deg);
   transition: transform 500ms ease-out;
}
.faq_item.-open .faq_question i {
   transform: rotate(-90deg);
}
/* SECTION CONTACT */
.contact_container {
   display: flex;
   justify-content: flex-start;
   align-items: stretch;
}
.form_half {
   width: calc(50% + var(--section-padding));
}
/* SECTION PARTNERS */
.section_partners .section_inner {
   max-width: 1920px;
}
.partners_container {
   position: relative;
   display: flex;
   justify-content: center;
   align-items: center;
   margin-top: var(--section-padding);
}
.partners_container::before,
.partners_container::after {
   content: "";
   display: block;
   position: absolute;
   z-index: 2;
   top: 0px;
   width: 150px;
   height: 100%;
   pointer-events: none;
}
.partners_container::before {
   left: 0px;
   background: transparent;
   background: linear-gradient(
      90deg,
      var(--section-bg-color) 0%,
      transparent 100%
   );
}
.partners_container::after {
   right: 0px;
   background: transparent;
   background: linear-gradient(
      90deg,
      transparent 0%,
      var(--section-bg-color) 100%
   );
}
.partners_slider {
   width: 100%;
}
.partner_item {
   flex: 0 0 230px;
   height: 110px;
   margin: 0px 1rem;
   display: flex;
   justify-content: center;
   align-items: center;
   border: 1px solid #d4d4d4;
}
.partner_item_inner {
   display: flex;
   justify-content: center;
   align-items: center;
   width: 100%;
   height: 100%;
}
.partner_item_inner img {
   width: auto;
   height: auto;
   max-width: 100%;
   max-height: 100%;
}
/* DOWNLOADS */
.downloads_container {
   margin-top: var(--section-padding);
   padding: 1rem;
   --bg-color: #fff;
   background-color: var(--bg-color);
   border-radius: 2rem;
   --color: var(--text-color-dark);
}
table.downloads_table {
   width: 100%;
   border-collapse: collapse;
}
.downloads_table th,
.downloads_table td {
   padding: 1rem;
   width: 50%;
}
.downloads_table th {
   border-bottom: 1px solid var(--color);
   text-align: left;
   font-family: var(--font-heading-alt);
   font-weight: bold;
   text-transform: uppercase;
   letter-spacing: 2px;
}
.downloads_table td {
   position: relative;
   border-bottom: 1px solid #d6d6d6;
}
.downloads_table td:first-child::after {
   content: "";
   display: block;
   position: absolute;
   bottom: -1px;
   right: 0.5rem;
   width: 1rem;
   height: 1px;
   background-color: var(--bg-color);
   pointer-events: none;
}
.downloads_cell > a,
.downloads_cell > span {
   display: flex;
   justify-content: flex-start;
   align-items: center;
   gap: 1rem;
   line-height: 1.2;
}
.downloads_cell i {
   font-size: 1.3rem;
}
/* DONATION */
.donation_container {
   width: 100%;
   max-width: 1200px;
   margin: var(--section-padding) auto 0px auto;
}
.donation_container .pxrthm-tabs {
   display: flex;
   flex-direction: column;
   justify-content: flex-start;
   align-items: stretch;
   gap: 1rem;
}
.donation_tab_handles {
   justify-content: space-evenly;
   width: 100%;
   padding: 0.5rem;
   border-radius: 100px;
   background-color: #f8eed3;
}
.donation_tab_handle {
   position: relative;
   border-radius: 100px;
   text-align: center;
   color: var(--text-color-dark);
   background-color: transparent;
   opacity: 1;
   --transition: all 300ms ease-out;
   transition: var(--transition);
   user-select: none;
}
.donation_tab_handle.-active {
   color: var(--text-color-light);
}
.donation_tab_handle::before {
   content: "";
   position: absolute;
   inset: 0px;
   z-index: 1;
   display: block;
   width: 100%;
   height: 150%;
   background-color: transparent;
   mask-image: url(assets/images/strokes/tab_handle_stroke.svg);
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;

   transform: scaleY(0.5);
   transform-origin: top center;
   transition: var(--transition);
}
.donation_tab_handle.-active::before {
   transform: scaleY(1);
   background-color: var(--text-color-dark);
}
.donation_tab_handle span {
   position: relative;
   z-index: 2;
}
.donation_tab_handles > .gyeaicon-separator {
   align-self: center;
}
.donation_tab_inner {
   display: flex;
   flex-direction: column;
   justify-content: flex-start;
   align-items: center;
   --gap: 1rem;
   gap: var(--gap);
   text-align: center;
   background-color: #f8eed3;
   --padding: 1.5rem;
   padding: var(--padding);
   --border-radius: 1.5rem;
   border-radius: var(--border-radius);
}
.donation_tab_text {
   text-align: left;
}
.donation_tab_text table {
   position: relative;
   width: 100%;
   max-width: 550px;
   margin: auto;
}
.bacs_tables {
   display: flex;
   flex-wrap: wrap;
   justify-content: center;
   align-items: center;
   --gap: 1rem;
   gap: var(--gap);
   margin-top: 1rem;
}
.bacs_table {
   flex: 1 1 calc(50% - (var(--gap) / 2));
}
.bacs_table.-third {
   flex: 1 1 calc(33% - (2 * var(--gap) / 3));
}
.bacs_table table {
   width: 100%;
   border-collapse: collapse;
}
.bacs_table table th,
.bacs_table table td {
   padding: 0.5rem;
   text-align: left;
   border-bottom: 1px solid var(--color);
   font-size: 15px;
}
.bacs_table table th,
.bacs_table table td.-bold {
   font-weight: bold;
}
.bacs_table table td {
   user-select: all;
}
.donation_tab_text_highlight {
   margin-top: 1rem;
   padding: 1rem 2rem;
   background-color: var(--color-red);
   --color: #fff;
   color: var(--color);
   border-radius: 0.5rem;
}
.donation_tab_text_highlight strong {
   user-select: all;
}
.pxrut_field_wrapper.-third.pu_name,
.pxrut_field_wrapper.-third.pu_donor_number {
   flex: 1 0 calc(37.5% - (var(--pxrut-gap) * 2 / 3));
}
.pxrut_field_wrapper.-third.pu_number {
   flex: 1 0 calc(25% - (var(--pxrut-gap) * 2 / 3));
}
.pxrut_field_wrapper.-half.pu_zip {
   flex: 1 0 calc(25% - (var(--pxrut-gap) / 2));
}
.pxrut_field_wrapper.-half.pu_city {
   flex: 1 0 calc(75% - (var(--pxrut-gap) / 2));
}
.pxrut_field_wrapper.-half.pu_city .input_wrapper::before {
   mask-image: url(assets/images/strokes/input_stroke_2.svg);
}
.donation_tab.-wc .donation_tab_inner {
   flex-direction: row;
   align-items: stretch;
   background-color: transparent;
   padding: 0px;
}
.donation_form_container {
   flex: 1 1 calc(60% - var(--gap));
   display: flex;
   flex-direction: column;
   gap: var(--gap);
   justify-content: flex-start;
   align-items: stretch;
}
.donation_progress {
   text-align: left;
   padding: 1rem var(--padding);
   background-color: #f8eed3;
   border-radius: var(--border-radius);
}
.donation_progress .wcdp-progress-style-3 {
   margin-bottom: 0px;
}
.donation_progress .wcdp-progress-style-3 .wcdp-thermometer-bg {
   background-color: rgb(0 0 0 / 5%);
}
.donation_form {
   flex: 1;
   background-color: var(--color-darkgrey);
   border-radius: var(--border-radius);
   --color: var(--text-color-light);
   color: var(--color);
   text-align: left;
}
.donation_amount_info {
   display: flex;
   flex-direction: column;
   align-items: center;
   gap: 1rem;
   flex: 1 1 40%;
   background-color: #f8eed3;
   border-radius: var(--border-radius);
   --color: var(--text-color-dark);
   color: var(--color);
   padding: var(--padding);
}
.donation_amount_info_amount {
   display: flex;
   justify-content: center;
   align-items: center;
   width: 91px;
   height: 82px;
   font-family: var(--font-heading-alt2);
   font-weight: bold;
   font-size: 0.7rem;
   color: var(--text-color-light);
   background-color: var(--color);
   mask-image: url(assets/images/donation_amount_info_price.svg);
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;
}
.donation_amount_info_subtitle {
   font-family: var(--font-heading-alt2);
   font-weight: bold;
   font-size: 0.7rem;
   text-transform: uppercase;
}
.donation_amount_info_title {
   font-family: var(--font-heading);
   font-size: 2rem;
   text-wrap: balance;
   color: var(--color);
   text-align: var(--text-align);
}
.donation_amount_info_text {
   display: none;
}
body .wcdp-header {
   padding: var(--padding);
}
body .wcdp-body {
   padding: var(--padding);
}
body .wcdp_options {
   grid-gap: 30px;
   grid-template-columns: 1fr 1fr;
}
body .wcdp_options > li > label,
body .wcdp-button-label {
   position: relative;
   display: flex;
   justify-content: center;
   align-items: center;
   --bg-color: var(--color-offwhite);
   background-color: var(--bg-color);
   border-radius: 10px;
   font-family: var(--font-text);
   font-size: 1.25rem;
   color: var(--text-color-dark);
   --transition: all 300ms ease-out;
}
body ul.wcdp_options > li > input:hover:not(:disabled):not(:checked) + label,
body .wcdp_options > li > label:hover,
body .wcdp-button-label:hover {
   --bg-color: #f8eed3;
   background-color: var(--bg-color);
}
body ul.wcdp_options > li > input:checked + label {
   --bg-color: #f8eed3;
   background-color: var(--bg-color);
   color: var(--text-color-dark);
}
body .wcdp_options > li > input:checked + label:after {
   content: "\e90d";
   font-family: "gyeaicons" !important;
   position: relative;
}
body .wcdp_options > li > label::before,
body .wcdp-button-label::before {
   content: "";
   display: block;
   position: absolute;
   inset: -5px;
   width: calc(100% + 10px);
   height: calc(100% + 10px);
   background-color: var(--bg-color);
   mask-image: url(assets/images/strokes/button_stroke_sharp_1.svg);
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;
   transition: var(--transition);
   pointer-events: none;
}
.variations_form > .wcdp_options#wcdp_1_wcdp_amount > li:last-child,
.wcdp-row > .wcdp_options#wcdp_1_wcdp_amount > li:last-child {
   grid-column: 1 / -1;
}
body .wcdp_value_other + .wcdp_label_custom_amount {
   justify-content: flex-start;
   padding: 6px 1rem;
}
body .wcdp-body input.wcdp-donation-amount {
   background-color: transparent;
   border: none;
   padding: 0px;
   font-family: var(--font-text);
   font-size: 1.25rem;
   color: var(--text-color-dark);
}
body .wcdp-body input.wcdp-donation-amount::-webkit-outer-spin-button,
body .wcdp-body input.wcdp-donation-amount::-webkit-inner-spin-button {
   -webkit-appearance: none;
   margin: 0;
}
body .wcdp-body input.wcdp-donation-amount {
   -moz-appearance: textfield;
}
.wcdp-variation-heading[for="adomanyozas-gyakorisaga"],
#wcdp_va_amount .wcdp-variation-heading {
   display: none;
}
.donation_form .button {
   --button-padding: 3rem;
   --bg-color: #fff;
   --color: var(--text-color-dark);
}
.donation_form .button:hover {
   --bg-color: #fff;
   --color: var(--text-color-dark);
}
body .wcdp-arrow {
   position: absolute;
   color: transparent;
   font-size: 0px;
}
body .wcdp-arrow.wcdp-left-arrow {
   left: 1rem;
   line-height: 1;
}
body .wcdp-arrow.wcdp-left-arrow::before {
   content: "\e903";
   font-family: "gyeaicons" !important;
   font-size: 0.7rem;
   color: var(--color);
}
body .wcdp-arrow.wcdp-right-arrow {
   right: 1rem;
   line-height: 1;
}
body .wcdp-arrow.wcdp-right-arrow::before {
   content: "\e902";
   font-family: "gyeaicons" !important;
   font-size: 0.7rem;
   color: var(--color);
}
body .wcdp-progress-bar-background {
   background-color: var(--color-offwhite);
}
body .wcdp-step {
   font-family: var(--font-heading-alt);
   font-weight: bold;
   text-transform: uppercase;
   color: var(--text-color-light);
   font-size: 0.8rem;
}
body #wcdp-header-step-1,
body #wcdp-header-step-2,
body #wcdp-header-step-3 {
   color: var(--text-color-light);
}
body .wcdp-header .wcdp-step:hover {
   transform: scale(1);
}
body .wcdp-form .wcdp-header > .wcdp-step::before {
   display: flex;
   justify-content: center;
   align-items: center;
   text-align: center;
   width: 1.5rem;
   height: 1.5rem;
   margin-bottom: 0.5rem;
   color: var(--text-color-dark);
   font-size: 0.9rem;
}
body .wcdp-form .wcdp-header > #wcdp-header-step-1::before {
   color: var(--text-color-light);
}
body
   .wcdp-form[data-current-step="2"]
   .wcdp-header
   > #wcdp-header-step-2::before,
body
   .wcdp-form[data-current-step="3"]
   .wcdp-header
   > #wcdp-header-step-2::before {
   color: var(--text-color-light);
}
body
   .wcdp-form[data-current-step="3"]
   .wcdp-header
   > #wcdp-header-step-3::before {
   color: var(--text-color-light);
}
body #wcdp-step-1 {
   text-align: center;
}
.variations_form > .wcdp_options > li,
.wcdp-row > .wcdp_options > li {
   position: relative;
}
.wcdp_options[data-name="adomanyozas-gyakorisaga"]
   li:has([value="egyszeri"])::before,
.wcdp_options[data-name="adomanyozas-gyakorisaga"]
   li:has([value="rendszeres"])::before {
   display: block;
   position: absolute;
   z-index: 2;
   inset: 0 auto 0 0.5rem;
   width: 1.5rem;
   height: 1.5rem;
   margin: auto;
   font-family: "gyeaicons" !important;
   color: var(--text-color-dark);
   font-size: 1.5rem;
   line-height: 1;
}
.wcdp_options[data-name="adomanyozas-gyakorisaga"]
   li:has([value="egyszeri"])::before {
   content: "\e904";
}
.wcdp_options[data-name="adomanyozas-gyakorisaga"]
   li:has([value="rendszeres"])::before {
   content: "\e905";
}
.woocommerce form .form-row.woocommerce-invalid label,
.woocommerce form .form-row label {
   text-align: left;
   color: var(--color);
}
.woocommerce-input-wrapper {
   --input-bg: var(--color-offwhite);
   --stroke-bg: var(--input-bg);
   --wc-form-color-background: var(--input-bg);
   --wc-form-border-radius: 4px;
   display: block;
   position: relative;
}
.woocommerce form .form-row .woocommerce-input-wrapper .input-text,
.woocommerce form .form-row .woocommerce-input-wrapper select,
.woocommerce-input-wrapper input,
.woocommerce-input-wrapper select {
   background-color: var(--input-bg);
   border: none;
   padding: 0.5rem 1rem;
}
.woocommerce-input-wrapper::before {
   content: "";
   display: block;
   position: absolute;
   z-index: 2;
   inset: -5px;
   width: calc(100% + 10px);
   height: calc(2rem + 10px);
   background-color: var(--stroke-bg);
   mask-image: url(assets/images/strokes/input_stroke_2.svg);
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;
   pointer-events: none;
}
.woocommerce-input-wrapper:has(textarea)::before {
   height: calc(100% + 10px);
}
.woocommerce-input-wrapper .woocommerce-password-strength {
   margin-top: 10px;
}
.form-row-wide:nth-child(even) .woocommerce-input-wrapper::before {
   mask-image: url(assets/images/strokes/input_stroke_3.svg);
}
.form-row-first .woocommerce-input-wrapper::before,
.form-row-last .woocommerce-input-wrapper::before {
   mask-image: url(assets/images/strokes/input_stroke_1.svg);
}
.woocommerce table,
.woocommerce td,
.woocommerce th {
   border-color: var(--color) !important;
}
.woocommerce table.shop_table {
   border-collapse: collapse;
   margin-top: 10px;
}
#add_payment_method #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment {
   background-color: rgba(248, 238, 211, 0.1);
}
.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
   background-color: #f8eed3;
   --color: var(--text-color-dark);
   color: var(--color);
   border-radius: 4px;
   font-size: 1rem;
   line-height: 1.3;
}
.woocommerce-error a,
.woocommerce-info a,
.woocommerce-message a {
   text-decoration: underline;
}
.woocommerce-info .button {
   padding: 0px;
   background-color: transparent;
   text-decoration: underline;
   color: var(--text-color-light);
}
.woocommerce-info .button::before {
   display: none;
}
body .wcdp-button,
body .wcdp-form button {
   text-align: left;
}
.fee.recurring-total,
.recurring-totals,
.cart-subtotal {
   display: none;
}
.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order {
   float: none;
   width: 100%;
   margin-top: 20px;
}
.wcdp-heading.wcdp-donation-received-heading {
   margin-bottom: 0.5rem;
   text-align: center;
}
.woocommerce-thankyou-order-received,
p.woocommerce-thankyou-order-received {
   margin-bottom: var(--section-padding);
   text-align: center;
   font-size: 1.5rem;
}
.cart_container section {
   display: block;
}
.woocommerce ul.order_details,
.checkout_container section {
   display: block;
   border-radius: 1rem;
   background-color: #f8eed3;
   padding: 1rem;
   margin-bottom: 2rem;
}
.woocommerce .wc-bacs-bank-details-heading,
.woocommerce h2.wc-bacs-bank-details-heading {
   margin-bottom: 0.5rem;
}
.woocommerce .wc-bacs-bank-details-account-name,
.woocommerce h3.wc-bacs-bank-details-account-name {
   font-family: var(--font-heading-alt);
   font-weight: bold;
   font-size: 1.2rem;
   margin-bottom: 0.5rem;
}
.woocommerce-customer-details p:last-child {
   display: none;
}
.woocommerce table.my_account_orders td,
.woocommerce table.my_account_orders th {
   padding: 8px;
}
.woocommerce .woocommerce-customer-details address {
   border-color: var(--color);
   border-bottom-width: 1px;
   border-right-width: 1px;
}
.cart_container {
   margin-top: var(--section-padding);
}

#add_payment_method #payment div.payment_box,
.woocommerce-cart #payment div.payment_box,
.woocommerce-checkout #payment div.payment_box {
   background-color: #7c7d75;
   border-radius: 10px;
   color: var(--color);
}
#add_payment_method #payment div.payment_box::before,
.woocommerce-cart #payment div.payment_box::before,
.woocommerce-checkout #payment div.payment_box::before {
   border: 1em solid #7c7d75;
   border-right-color: transparent;
   border-left-color: transparent;
   border-top-color: transparent;
}
#add_payment_method #payment div.payment_box a,
.woocommerce-cart #payment div.payment_box a,
.woocommerce-checkout #payment div.payment_box a {
   text-decoration: underline;
}
#wc-stripe-upe-form {
   margin-top: 15px;
   border-radius: 5px;
   outline: none;
   border: 1px solid var(--color);
}

/* MY ACCOUNT */
.account_container {
   margin-top: var(--section-padding);
}
.account_container > .woocommerce {
   display: flex;
   flex-wrap: wrap;
   align-items: flex-start;
   --gap: var(--section-padding);
   gap: var(--gap);
}
.woocommerce-account .woocommerce::after,
.woocommerce-account .woocommerce::before {
   display: none;
}
.woocommerce-account .woocommerce-MyAccount-navigation {
   width: 30%;
   float: none;
}
.woocommerce-account .woocommerce-MyAccount-content {
   width: calc(70% - var(--gap));
   float: none;
}
.woocommerce table.shop_table td .button:not(:first-child) {
   margin-left: 20px;
}
.woocommerce-MyAccount-navigation ul {
   list-style-type: none;
   display: flex;
   flex-direction: column;
   justify-content: flex-start;
   align-items: stretch;
   gap: 1rem;
   margin: 0;
   padding: 2rem;
   background-color: #f8eed3;
   border-radius: 1.5rem;
}
li.woocommerce-MyAccount-navigation-link a {
   position: relative;
   display: inline-flex;
   justify-content: center;
   align-items: center;
   user-select: none;
   -moz-appearance: none;
   -webkit-appearance: none;
   appearance: none;

   --button-border: 0px;
   --button-height: 35px;
   --button-padding: 15px;

   width: 100%;
   height: var(--button-height);
   padding: 0px var(--button-padding);
   border-radius: 100px;
   border: none;
   outline: none;

   --bg-color: var(--color-darkgrey);
   background-color: var(--bg-color);
   --color: #fff;
   color: var(--color);
   font-size: 14px;
   line-height: var(--button-height);
   text-align: center;
   text-transform: uppercase;
   font-family: var(--font-heading-alt);
   font-weight: 900;

   cursor: pointer;

   --transition: all 300ms ease-out;
   transition: var(--transition);
}
li.woocommerce-MyAccount-navigation-link a:hover {
   --bg-color: #fff;
   --color: var(--color-darkgrey);
}
li.woocommerce-MyAccount-navigation-link a::before {
   content: "";
   display: block;
   position: absolute;
   inset: -5px;
   width: calc(100% + 10px);
   height: calc(100% + 10px);
   background-color: var(--bg-color);
   mask-image: url("assets/images/strokes/button_stroke_1.svg");
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;
   transition: var(--transition);
}
li.woocommerce-MyAccount-navigation-link.is-active a {
   --bg-color: #fff;
   --color: var(--color-darkgrey);
}
li.woocommerce-MyAccount-navigation-link.is-active a:hover {
   --bg-color: #fff;
   --color: var(--color-darkgrey);
}
li.woocommerce-MyAccount-navigation-link.woocommerce-MyAccount-navigation-link--customer-logout
   a {
   --bg-color: var(--color-red);
   --color: #fff;
}
li.woocommerce-MyAccount-navigation-link.woocommerce-MyAccount-navigation-link--customer-logout
   a:hover {
   --bg-color: var(--color-darkgrey);
   --color: #fff;
}
.checkout_container > .woocommerce:has(.woocommerce-form-login),
.account_container.-login > .woocommerce {
   width: 100%;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
}
.checkout_container > .woocommerce > .woocommerce-notice,
.account_container > .woocommerce > .woocommerce-notices-wrapper {
   width: 100%;
}
.account_container > .woocommerce > .woocommerce-notices-wrapper:empty {
   display: none;
}
.account_container.-login > .woocommerce > h2 {
   display: none;
}
.woocommerce form.woocommerce-ResetPassword,
.woocommerce form.login,
.woocommerce form.register {
   width: 100%;
   max-width: 600px;
   padding: 2rem;
   background-color: #f8eed3;
   border-radius: 1.5rem;
   border: none;
}
.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme {
   display: inline-block;
   margin-bottom: 10px;
}
.woocommerce .woocommerce-form-login .woocommerce-form-login__submit {
   float: none;
   margin-right: 0;
   width: 100%;
}
.woocommerce-form-login .woocommerce-input-wrapper,
.account_container .woocommerce-input-wrapper {
   --input-bg: transparent;
   --stroke-bg: var(--color);
}
.woocommerce form.woocommerce-ResetPassword .form-row-first,
.woocommerce form.woocommerce-ResetPassword .form-row-last {
   float: none;
   width: 100%;
}
.woocommerce form.woocommerce-ResetPassword button[type="submit"] {
   width: 100%;
   margin-top: 10px;
}
#update_all_subscriptions_addresses_field .woocommerce-input-wrapper::before,
#update_all_subscriptions_billing_contact_field
   .woocommerce-input-wrapper::before {
   display: none;
}
.woocommerce form p:has(button[type="submit"]) {
   text-align: center;
   margin-top: 10px;
}
.woocommerce-Address h2 {
   margin: 1rem 0 0.5rem 0;
}
.woocommerce-Address address {
   background-color: #f8eed3;
   padding: 1rem;
   border-radius: 1.5rem;
}
.woocommerce-privacy-policy-text {
   display: none !important;
}
.woocommerce-terms-and-conditions-checkbox-text a {
   text-decoration: underline;
}
/* SHARED DONATION */
.shared_donation_backdrop {
   position: absolute;
   z-index: 2;
   width: calc(100% - (2 * var(--section-padding)));
   height: calc(100% - (2 * var(--section-padding)));
   background-color: rgb(235 235 235 / 50%);
   mask-image: url("assets/images/shared_donation_backdrop.svg");
   mask-repeat: no-repeat;
   mask-position: center;
   mask-size: 100% 100%;
   mask-mode: match-source;
   mask-origin: content-box;
   mask-clip: content-box;

   opacity: 0;
   visibility: hidden;
   transform: scale(0.5);
   transition: all 600ms ease-out 300ms;
}
.-in-view .shared_donation_backdrop {
   opacity: 1;
   visibility: visible;
   transform: scale(1);
}
.section.section_shared_donation:first-child .shared_donation_backdrop {
   height: calc(100% - ((2 * var(--section-padding)) + 120px));
   margin-top: 120px;
}
.section_shared_donation .section_inner {
   z-index: 3;
   padding-top: calc(2 * var(--section-padding));
   padding-bottom: calc(2 * var(--section-padding));
}
.section.section_shared_donation:first-child .section_inner {
   padding-top: calc((2 * var(--section-padding)) + 120px);
}
.pxr_order_share_desc {
   padding: 2rem 0;
}
.pxr_order_share_url a {
   color: var(--color-red);
}
.pxr_order_share_buttons {
   display: flex;
   justify-content: flex-start;
   align-items: center;
   gap: 1rem;
   line-height: 1;
}
.pxr_order_share_button {
   cursor: pointer;
   font-size: 1.5rem;
}

.woocommerce-MyAccount-content .pxr_order_share_container {
   border: 1px solid var(--color);
   padding: 1rem;
   margin-bottom: 1rem;
}

.woocommerce-MyAccount-content .pxr_order_certificate_container {
   border: 1px solid var(--color);
   padding: 1rem;
}
