/*
Theme Name: Plumis
Author:     Yellowball
Author URI: https://weareyellowball.com
Version:    0.0.3
*/

/* General */

:root {

    /* Sizes */
    --header-height: 0px;
    --document-width: 100vw;
    --page-size-narrow: 996px;
    --page-size: 1200px;
    --page-size-wide: 1320px;
    --page-padding-narrow: 1.5rem;
    --page-padding: 1.5rem;
    --page-padding-wide: 1.5rem;
    --modal-size: 700px;
    --modal-padding: 1.5rem;
    --offset: max(var(--page-padding), calc(var(--document-width) - var(--page-size)) / 2);

    /* Default Color Pallette */
    --c-text-lighter: #FFFCF8;
    --c-text-light: #DBD6CF;
    --c-text-dark: #3A4443;
    --c-text-darker: #2C2C2C;
    --c-bg-lightest: #FFFCF8;
    --c-bg-lighter: #DBD6CF;
    --c-bg-light: #B1B0AC;
    --c-bg-dark: #546561;
    --c-bg-darker: #3A4443;
    --c-bg-darkest: #2C2C2C;

    --c-error: #C02525;
    
    /* Font Families */
    --ff-borna: "Borna", sans-serif;
    --ff-mona-sans: "Mona Sans", sans-serif;

    /* Font Sizes (from 1440px to 390px) */
    --font-240-90: clamp(5.625rem, 2.1429rem + 14.2857vw, 15rem);
    --font-240-66: clamp(4.125rem, 0.0857rem + 16.5714vw, 15rem);
    --font-96-48: clamp(3rem, 1.8857rem + 4.5714vw, 6rem);
    --font-68-34: clamp(2.125rem, 1.3357rem + 3.2381vw, 4.25rem);
    --font-52-30: clamp(1.875rem, 1.3643rem + 2.0952vw, 3.25rem);
    --font-50-30: clamp(1.875rem, 1.4107rem + 1.9048vw, 3.125rem);
    --font-40-22: clamp(1.375rem, 0.9571rem + 1.7143vw, 2.5rem);
    --font-32-19: clamp(1.1875rem, 0.8857rem + 1.2381vw, 2rem);
    --font-21-17: clamp(1.0625rem, 0.9696rem + 0.381vw, 1.3125rem);
    --font-20-16: clamp(1rem, 0.9071rem + 0.381vw, 1.25rem);
    --font-20-17: clamp(1.0625rem, 0.9929rem + 0.2857vw, 1.25rem);
    --font-19-15: clamp(0.9375rem, 0.8446rem + 0.381vw, 1.1875rem);
    --font-18-16: clamp(1rem, 0.9536rem + 0.1905vw, 1.125rem);
    --font-16-14: clamp(0.875rem, 0.8286rem + 0.1905vw, 1rem);
    --font-15-12: clamp(0.75rem, 0.6804rem + 0.2857vw, 0.9375rem);
    --font-14-11: clamp(0.6875rem, 0.6179rem + 0.2857vw, 0.875rem);
    --font-12-11: clamp(0.6875rem, 0.6643rem + 0.0952vw, 0.75rem);
    --font-11-9: clamp(0.5625rem, 0.5161rem + 0.1905vw, 0.6875rem);
    --font-10-9: clamp(0.5625rem, 0.5393rem + 0.0952vw, 0.625rem);

    /* Swiper */
    --swiper-pagination-progressbar-size: 2px;
    --swiper-pagination-color: #000;
    --swiper-pagination-progressbar-bg-color: #00000033;

}

*, ::placeholder {
    text-box: trim-both cap alphabetic;
    text-rendering: geometricPrecision;
    scroll-margin-top: calc(var(--header-height, 0px) + 1rem);
}

html {
    scroll-behavior: smooth;
}

body {
	background-color: var(--c-bg-lightest);
    color: var(--c-text-dark);
}

html.scroll-lock,
body.scroll-lock {
    position: fixed;
    overflow: clip;
    width: 100%;
    overscroll-behavior: none;
}

html.no-smooth,
body.no-smooth {
    scroll-behavior: auto !important;
}

body:not(.window-loaded) {
    visibility: hidden;
}

@media screen and (width > 620px) {
    .only-mobile {
        display: none !important;
    }
}

:where(img, svg) {
    display: block;
    max-width: 100%;
    height: auto;
}

[data-href] {
    cursor: pointer;
}

.scroll-margin {
    scroll-margin-top: var(--header-height, 0px);
}

.grecaptcha-badge,
#awebChromeHelper { 
    visibility: hidden !important;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

#page {
    overflow-x: clip;
}

.text-content > * {
    margin: 0;
}

.text-content > :not(:last-child) {
    margin-bottom: 3.125rem;
}

.cta-buttons {
    display: flex;
    align-items: center;
    gap: 1.5625rem 1.875rem;
    flex-wrap: wrap;
}

hr {
    border: none;
    height: 1px;
    background-color: var(--theme-ui);
}

/* Typography */

:where(.text-small) {
    font-family: var(--ff-mona-sans);
    font-size: var(--font-16-14);
    font-style: normal;
    font-weight: 400;
    font-optical-sizing: auto;
    line-height: 1.6;
    letter-spacing: -0.03em;
    font-variation-settings: "wdth" 100;
}

:where(#page, .text-large) {
    font-family: var(--ff-mona-sans);
    font-size: var(--font-21-17);
    font-style: normal;
    font-weight: 400;
    font-optical-sizing: auto;
    line-height: 1.6;
    letter-spacing: -0.03em;
    font-variation-settings: "wdth" 100;
}

:where(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6) {
    color: var(--c-text-darker);
    font-family: var(--ff-borna);
    font-size: var(--fs);
    font-style: normal;
    font-weight: 400;
    font-optical-sizing: auto;
    line-height: 1.1;
    letter-spacing: -0.03em;
    vertical-align: middle;
    margin: 0;
}

:where(h1, .h1) {
    --fs: var(--font-96-48);
}

:where(h2, .h2) {
    --fs: var(--font-68-34);
}

:where(h3, .h3) {
    --fs: var(--font-52-30);
}

:where(h4, .h4) {
    --fs: var(--font-40-22);
}

:where(h5, .h5) {
    --fs: var(--font-32-19);
}

:where(h6, .h6) {
    --fs: var(--font-19-15);
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

:where(h6, .h6)::after {
    content: '';
    display: block;
    height: 1px;
    width: 2rem;
    background-color: currentColor;
}

#page :where(strong, b) {
    font-weight: 600;
}

/* Theming */

.theme--lightest {
    --theme-background: var(--c-bg-lightest);
    --theme-ui: var(--c-text-dark);
    background-color: var(--theme-background);
}

.theme--lighter {
    --theme-background: var(--c-bg-lighter);
    --theme-ui: var(--c-text-darker);
    background-color: var(--theme-background);
}

.theme--light {
    --theme-background: var(--c-bg-light);
    --theme-ui: var(--c-text-darker);
    background-color: var(--theme-background);
}

:is(.theme--lightest,.theme--lighter,.theme--light) {
    --theme-text-body: var(--c-text-darker);
    --theme-text-heading: var(--c-text-dark);
    color: var(--theme-text-body);
}

:is(.theme--lightest,.theme--lighter,.theme--light) :where(h1, h2, h3, h4, h5, .h1, .h2, .h3, .h4, .h5) {
    color: var(--theme-text-heading);
}

.theme--dark {
    --theme-background: var(--c-bg-dark);
    background-color: var(--theme-background);
}

.theme--darker {
    --theme-background: var(--c-bg-darker);
    background-color: var(--theme-background);
}

.theme--darkest {
    --theme-background: var(--c-bg-darkest);
    background-color: var(--theme-background);
}

:is(.theme--dark,.theme--darker,.theme--darkest) {
    --theme-text-body: var(--c-text-light);
    --theme-text-heading: var(--c-text-lighter);
    --theme-ui: var(--c-text-lighter);
    color: var(--theme-text-body);

    --swiper-pagination-color: #fff;
    --swiper-pagination-progressbar-bg-color: #ffffff33;
}

:is(.theme--dark,.theme--darker,.theme--darkest) :where(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6) {
    color: var(--theme-text-heading);
}

/* Layout */

.wrap {
    --size: var(--page-size);
    --pad: var(--page-padding);
    --offset: max(var(--pad), calc(var(--document-width) - var(--size)) / 2);
    width: calc(100% - 2 * var(--pad, 0px));
	max-width: var(--size, 100%);
	padding-inline: var(--pad, 0px);
    margin: 0 auto;
    box-sizing: content-box;
}

.wrap.narrow {
    --size: var(--page-size-narrow);
    --pad: var(--page-padding-narrow);
}

.wrap.wide {
    --size: var(--page-size-wide);
    --pad: var(--page-padding-wide);
}

.wrap .wrap {
    margin: 0 !important;
    padding: 0 !important;
    width: unset !important;
    max-width: unset !important;
    box-sizing: border-box;
}

.site-inner {
    min-height: 100vh;
    min-height: 100svh;
    display: flex;
    flex-direction: column;
    overflow-y: clip;
    isolation: isolate;
}

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

/* Buttons */

.btn {
    position: relative;
    display: inline-block;
    line-height: 1.6;
    font-weight: 600;
    font-style: normal;
    letter-spacing: 0.08em;
    text-align: center;
    text-decoration: none;
    color: var(--theme-ui, currentColor);
    background: none;
    border: none;
    cursor: pointer;
    text-wrap: nowrap;
    user-select: none;
    text-transform: uppercase;
    font-family: var(--ff-mona-sans);
}

.btn:where(.primary) {
    font-size: var(--font-14-11);
    padding: 1.25rem 2.25rem;
    border: 1px solid currentColor;
}

.btn:where(.tertiary) {
    font-size: var(--font-15-12);
    padding-bottom: 0.5rem;
    border-bottom: 1px solid currentColor;
}

.btn[disabled] {
    opacity: .3;
    pointer-events: none;
}

.btn.w-icon {
    display: inline-flex;
    align-items: center;
    gap: 0.625rem;
}

.btn.w-icon svg {
    max-width: 0.85em;
    max-height: 0.85em;
}

/* CookieYes Banner */

.cky-consent-container {
    inset: unset !important;
    left: 50% !important;
    bottom: 1.875rem !important;
    width: min(27.25rem, calc(100% - 3.75rem)) !important;
    transform: translateX(-50%);
    height: auto !important;
    border-radius: 0 !important;
    font-family: var(--ff-borna);
    font-size: var(--font-16-12);
    line-height: 1.2;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    letter-spacing: -0.01em;
}

.cky-consent-container .cky-consent-bar {
    box-shadow: 0px 4px 40px 0px #00000026 !important;
    padding: 1.875rem !important;
    border: 0 !important;
    border-radius: 0 !important;
    background-color: var(--c-bg-dark) !important;
}

.cky-notice .cky-title,
.cky-preference-header .cky-preference-title {
    font-family: var(--ff-borna);
    font-size: var(--font-19-15) !important;
    font-weight: 400 !important;
    font-style: normal;
    line-height: 1;
    letter-spacing: 0.01em;
    color: var(--c-text-light) !important;
}

.cky-notice .cky-title {
    margin: 0 0 1.25rem 0 !important;
}

.cky-notice-des {
    text-wrap: balance;
    color: var(--c-text-light) !important;
}

.cky-notice-des a {
    text-decoration: underline;
    color: inherit;
    text-underline-offset: 2px;
}

.cky-notice-des *,
.cky-preference-content-wrapper *,
.cky-dma-content-wrapper *,
.cky-accordion-header-des *,
.cky-gpc-wrapper .cky-gpc-desc * {
    font-size: var(--font-16-12) !important;
}

.cky-notice-btn-wrapper {
    margin-top: 0 !important;
    gap: 0.75rem !important;
}

.cky-notice .cky-title, .cky-notice-des, .cky-notice-btn-wrapper {
    padding: 0 !important;
}

.cky-btn {
    position: relative;
    display: inline-block;
    font-size: 1.125rem !important;
    line-height: 1.2;
    font-weight: 500 !important;
    font-style: normal;
    letter-spacing: 0em;
    text-align: center !important;
    text-decoration: none;
    color: var(--c-text-light) !important;
    background: none !important;
    border: none !important;
    cursor: pointer;
    text-wrap: nowrap;
    isolation: isolate;
    user-select: none;
    margin: 0;
    padding: 1rem 1.5rem !important;
    border-radius: var(--radius-110);
}

.cky-btn::before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: transparent;
    border-radius: var(--radius-110);
    border: 1px solid var(--c-secondary);
    z-index: -1;
}

.cky-btn-accept {
    color: var(--c-primary) !important;
    background-color: var(--c-bg-light) !important;
}

@media screen and (hover: hover) {
    .cky-btn {
        transition: color 150ms ease-in-out;
    }

    .cky-btn::before {
        transition: 150ms ease-in-out;
        transition-property: transform, background-color, border-color;
    }

    .cky-btn:is(:hover, :focus, :focus-within) {
        color: var(--c-bg-light) !important;
    }

    .cky-btn:is(:hover, :focus, :focus-within)::before {
        transform: scale(1.2);
        background-color: var(--c-primary);
        border-color: var(--c-primary);
    }
}

.cky-accordion-header-des {
    color: var(--c-text-light) !important;
}

/* CookieAdmin */

#page .cookieadmin_box {
    inset: unset;
    bottom: 1.875rem;
    left: 50%;
    transform: translateX(-50%);
    width: min(27.25rem, calc(100% - 3.75rem));
}

#page .cookieadmin_consent_inside {
    background-color: var(--c-bg-dark) !important;
    border: 0 !important;
    box-shadow: 0px 4px 40px 0px #00000026;
    padding: 1.875rem;
    border-radius: 0;
}

#page #cookieadmin_notice_title {
    color: var(--c-text-light) !important;
    font-family: var(--ff-borna);
    font-size: var(--font-19-15);
    font-style: normal;
    font-weight: 400;
    font-optical-sizing: auto;
    line-height: 1.1;
    letter-spacing: 0.01em;
    text-transform: uppercase;
    margin-bottom: 1.25rem;
    padding: 0;
}

#page .cookieadmin_notice_con {
    padding: 0;
}

#page #cookieadmin_notice {
    font-family: var(--ff-mona-sans);
    font-size: var(--font-16-12);
    font-style: normal;
    font-weight: 400;
    font-optical-sizing: auto;
    line-height: 1.2;
    letter-spacing: -0.01em;
    margin-block: 0 1.875rem;
}

#page .cookieadmin_consent_btns {
    flex-wrap: nowrap;
    gap: 0.75rem;
}

#page .cookieadmin_btn {
    position: relative;
    display: inline-block;
    font-size: 1.125rem;
    line-height: 1.2;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0em;
    text-align: center;
    text-decoration: none;
    color: var(--c-text-light) !important;
    background: none !important;
    border: none;
    cursor: pointer;
    text-wrap: nowrap;
    isolation: isolate;
    user-select: none;
    margin: 0;
    padding: 1rem 1.5rem;
    border-radius: var(--radius-110);
}

#page .cookieadmin_btn::before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: transparent;
    border-radius: var(--radius-110);
    border: 1px solid var(--c-secondary);
    z-index: -1;
}

#page .cookieadmin_accept_btn {
    color: var(--c-primary) !important;
    background-color: var(--c-bg-light) !important;
}

@media screen and (hover: hover) {
    #page .cookieadmin_btn {
        transition: color 150ms ease-in-out;
    }

    #page .cookieadmin_btn::before {
        transition: 150ms ease-in-out;
        transition-property: transform, background-color, border-color;
    }

    #page .cookieadmin_btn:is(:hover, :focus, :focus-within) {
        color: var(--c-bg-light) !important;
    }

    #page .cookieadmin_btn:is(:hover, :focus, :focus-within)::before {
        transform: scale(1.2);
        background-color: var(--c-primary);
        border-color: var(--c-primary);
    }
}

#page .cookieadmin-poweredby {
    display: none;
}

#page .cookieadmin_cookie_modal {
    background-color: var(--c-bg-dark) !important;
    border: 0 !important;
    box-shadow: 0px 4px 40px 0px #00000026;
    border-radius: 0;
}

#page .cookieadmin_mod_head {
    padding: 1.875rem;
    border-bottom: 1px solid var(--c-text-light);
}

#page .cookieadmin_preference_title {
    color: var(--c-text-light) !important;
    margin: 0;
}

#page .cookieadmin_close_pref {
    color: var(--c-text-light);
}

#page .cookieadmin_details_wrapper {
    padding: 1.875rem;
    color: var(--c-text-light) !important;
}

#page .cookieadmin_preference_details {
    padding: 0;
    margin-bottom: 1.25rem;
}

#page .cookieadmin_preference {
    font-size: var(--font-16-15);
    height: 7.1em;
    height: 5.7lh;
    padding-bottom: 4px;
}

#page .cookieadmin_showmore {
    color: var(--c-text-light);
    text-decoration: underline;
    font-size: var(--font-16-15);
}

#page .cookieadmin_types {
    padding: 1.875rem;
    border-top: 1px solid var(--c-text-light);
}

#page .cookieadmin_act {
    color: var(--c-tertiary);
}

#page .cookieadmin_desc {
    margin-top: 1.875rem;
    font-size: var(--font-16-15);
    padding: 0 4rem 0 1.5rem;
}

#page .cookieadmin-nece-cookies {
    margin-top: 1.5rem;
}

#page .cookieadmin_slider {
    border: 1px solid var(--c-text-light);
    box-sizing: content-box;
}

#page .cookieadmin_modal_footer {
    padding: 1.875rem;
    display: flex;
    gap: 0.75rem 1.875rem;
    border-top: 1px solid var(--c-text-light);
}

@media screen and (width <= 620px) {
    #page .cookieadmin_box {
        left: 1.25rem;
        right: 1.25rem;
        bottom: 1.25rem;
        transform: none;
        width: auto;
    }
    #page .cookieadmin_consent_btns {
        flex-wrap: wrap;
    }
    #page .cookieadmin_btn {
        width: auto;
    }
    #page .cookieadmin_modal_footer {
        gap: 0.75rem;
    }
    #page .cookieadmin_types {
        padding-inline: 0;
    }
}

@media screen and (width <= 420px) {
    #page .cookieadmin_cookie_modal {
        inset: 0;
        max-width: 100vw;
        max-height: 100vh;
    }
}

/* Modal */

.modal {
    position: fixed;
    inset: 0;
    z-index: 99;
}

:where(.modal) {
    background-color: rgb(from var(--c-bg-darkest) r g b / 0.75);
}

.modal:not(.active) {
    display: none !important;
}

.modal .modal-close {
    --size: 2rem;
    position: absolute;
    top: 1rem;
    right: 1rem;
    display: block;
    width: var(--size);
    height: var(--size);
    aspect-ratio: 1;
    background: none;
    border: 0;
    padding: 0;
    margin: 0;
}

.modal .modal-close::before,
.modal .modal-close::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 1px;
    background-color: currentColor;
}

.modal .modal-close::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.modal .modal-close::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.modal .modal-inner {
    --padding: 5rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.modal--video .modal-close {
    top: 0;
    right: 0;
    transform: translate(100%, -100%);
}

.modal--video .modal-inner {
    background: none;
    aspect-ratio: 16 / 9;
    width: calc(100% - 5rem);
    max-width: var(--page-size);
}

.modal--video :is(.wp-video, .mejs-container, video, iframe) {
    display: block;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
}

/* Horizontal Scroll Element */

.hscroll-container {
    --color: white;
    position: relative;
    width: calc(100% + 2 * var(--pad, var(--page-padding, 0px)));
    margin-left: calc(-1 * var(--pad, var(--page-padding, 0px)));
}

.hscroll-inner {
    padding-inline: var(--pad, var(--page-padding, 0px));
    padding-bottom: 0.9375rem;
    overflow-x: auto;
}

.hscroll-container::before,
.hscroll-container::after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 4rem;
    transition: opacity 200ms ease;
    z-index: 2;
    pointer-events: none;
}

.hscroll-container::before {
    left: 0;
    background-image: linear-gradient(90deg, var(--color), transparent);
}

.hscroll-container.no-left-shadow::before {
    opacity: 0;
}

.hscroll-container::after {
    right: 0;
    background-image: linear-gradient(-90deg, var(--color), transparent);
}

.hscroll-container.no-right-shadow::after {
    opacity: 0;
}

/* Header */

.site-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
}

.site-header #hamburger-menu-state {
    display: none;
}

.site-header .site-header-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.625rem 1.625rem 1.625rem 2.1875rem;
}

.site-header .site-branding .custom-logo {
    max-width: 12.25rem;
    max-height: 1.625rem;
    width: auto;
    height: auto;
}

.site-header--light .site-branding .custom-logo {
    color: var(--c-text-lighter);
}

.site-header--dark .site-branding .custom-logo {
    color: var(--c-text-darker);
}

.site-header .hamburger-container {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    position: absolute;
    right: 1.25rem;
    top: 1.25rem;
    height: calc(100vh - 2.5rem);
    height: calc(100svh - 2.5rem);
    width: 48rem;
    max-width: calc(100vw - 2.5rem);
    max-width: calc(100svw - 2.5rem);
    box-shadow: 0px 0px 60px 0px rgb(from var(--c-bg-darkest) r g b / 0.1);
    padding: 5.625rem 5rem 3.75rem;
    transform: translate(-6px, 6px) scale(0);
    transform-origin: top right;
    transition: transform 250ms ease-out;
    pointer-events: none;
    user-select: none;
}

.site-header #hamburger-menu-state:checked + .site-header-main .hamburger-container {
    transform: translate(0, 0) scale(1);
    transition-duration: 400ms;
    pointer-events: auto;
    user-select: auto;
}

.site-header .hamburger-container .main-nav {
    flex-basis: 1px;
    flex-grow: 1;
    flex-shrink: 1;
    overflow-y: auto;
    scrollbar-width: none;
}

.site-header .hamburger-container .main-nav::-webkit-scrollbar {
    display: none;
}

.site-header .hamburger-container .main-menu {
    margin: 0;
    padding: 0;
    list-style: none;
    font-family: var(--ff-borna);
    font-size: var(--font-50-30);
    line-height: 1.2;
}

.site-header .hamburger-container .main-menu > :not(:last-child) {
    margin-bottom: 0.5em;
}

.site-header .hamburger-container .main-menu a {
    color: var(--c-text-dark);
    text-decoration: none;
}

.site-header .hamburger-container .footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 2.5rem 1.25rem;
    margin-top: auto;
}

.site-header .hamburger-container .social-menu {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: var(--font-18-16);
    display: flex;
    align-items: baseline;
    gap: 1.875rem;
    flex-wrap: wrap;
    max-width: 13.9375rem;
}

.site-header .hamburger-container .social-menu a {
    color: currentColor;
    text-decoration: none;
}

.site-header .hamburger-container .footer .gbwp-widget--brand-attribute {
    margin-left: auto;
}

.site-header .hamburger-container .footer .gbwp-widget--brand-attribute svg {
    max-height: 1.625rem;
}

.site-header .hamburger-menu-toggle {
    display: block;
    width: 3.5rem;
    height: 2.6875rem;
    backdrop-filter: blur(20px);
    cursor: pointer;
    position: relative;
    z-index: 101;
    transition: 300ms ease-out;
    transition-property: background-color, color;
}

.site-header--light .hamburger-menu-toggle {
    color: var(--c-text-lighter);
    background-color: rgb(from var(--c-bg-lightest) r g b / 0.3);
}

.site-header--dark .hamburger-menu-toggle {
    color: var(--c-text-darker);
    background-color: rgb(from var(--c-bg-darkest) r g b / 0.15);
}

.site-header .hamburger-menu-toggle::before,
.site-header .hamburger-menu-toggle::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 1.625rem;
    height: 1px;
    background-color: currentColor;
    transition: transform 300ms ease-out;
}

.site-header .hamburger-menu-toggle::before {
    transform: translate(-50%, -2px);
}

.site-header .hamburger-menu-toggle::after {
    transform: translate(-50%, 2px);
}

.site-header #hamburger-menu-state:checked + .site-header-main .hamburger-menu-toggle {
    color: var(--c-text-darker);
    background-color: rgb(from var(--c-bg-lighter) r g b / 0.7);
}

.site-header #hamburger-menu-state:checked + .site-header-main .hamburger-menu-toggle::before {
    transform: translate(-50%, 0) rotate(-45deg);
}

.site-header #hamburger-menu-state:checked + .site-header-main .hamburger-menu-toggle::after {
    transform: translate(-50%, 0) rotate(45deg);
}

/* Forms */

.gform_wrapper .gform_validation_errors {
    display: none;
}

.gform_wrapper .gf_progressbar_wrapper {
    margin-bottom: 4.125rem;
}

.gform_wrapper .gf_progressbar_title {
    font-size: var(--font-16-14);
    margin: 0;
    margin-bottom: 1.5625rem;
}

.gform_wrapper .gf_progressbar {
    height: 1px;
    overflow: hidden;
    background-color: var(--c-bg-light);
}

.gform_wrapper .gf_progressbar_percentage {
    color: transparent !important;
    background-color: var(--theme-ui, currentColor) !important;
    height: 1px;
}

.gform_wrapper .gf_progressbar_percentage > * {
    display: none;
}

.gform_wrapper .gfield--type-html.text-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.875rem;
}

.gform_wrapper .gfield--type-html.text-content:first-child {
    gap: 2.5rem;
}

.gform_wrapper .gfield--type-html.text-content:not(:last-child) {
    margin-bottom: 1.25rem;
}

.gform_wrapper .gfield--type-html.text-content > * {
    margin: 0;
}

.gform_wrapper .gform_fields {
    --gf-form-gap-x: 1.25rem;
    --gf-form-gap-y: 2.5rem;
}

.gform_wrapper .gfield--type-radio.layout--boxes .gfield_radio {
    display: flex;
    flex-wrap: wrap;
    gap: 1.25rem;
}

.gform_wrapper .gfield--type-radio.layout--boxes .gfield_radio > * {
    flex-basis: calc(( 100% - 2.5rem ) / 3);
    flex-grow: 1;
}

.gform_wrapper .gfield--type-radio.layout--boxes .gfield-choice-input {
    display: none;
}

.gform_wrapper .gfield--type-radio.layout--boxes .gform-field-label {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1.5625rem;
    text-align: center;
    /* width: 100%; */
    height: 10rem;
    padding-inline: 1.875rem;
    cursor: pointer;
    border: 1px solid rgb(from var(--theme-ui, currentColor) r g b / 0.3);
    font-family: var(--ff-borna);
    font-size: var(--font-18-16);
    line-height: 1.1;
}

.gform_wrapper .gfield--type-radio.layout--boxes .gfield-choice-input:checked + .gform-field-label {
    border-color: var(--theme-ui, currentColor);
}

.gform_wrapper .gfield--type-radio.layout--boxes .gform-field-label::before {
    content: '';
    display: block;
    width: 0.5rem;
    height: 0.5rem;
    aspect-ratio: 1;
    outline: 1px solid rgb(from var(--theme-ui, currentColor) r g b / 0.5);
    padding: 0.25rem;
    box-sizing: content-box;
    background-clip: content-box;
}

.gform_wrapper .gfield--type-radio.layout--boxes .gfield-choice-input:checked + .gform-field-label::before {
    background-color: var(--theme-text-heading);
}

.gform_wrapper .gform_page_footer {
    --gf-form-footer-margin-y-start: 3.125rem;
}

.gform_wrapper .gform_next_button {
    margin-left: auto;
}

.gform_wrapper :is(.gform_next_button, .gform_previous_button) {
    position: relative;
    display: inline-block !important;
    line-height: 1.6;
    font-weight: 600;
    font-style: normal;
    letter-spacing: 0.08em;
    text-align: center;
    text-decoration: none;
    color: var(--theme-ui, currentColor);
    background: none;
    border: none;
    border-bottom: 1px solid var(--theme-ui, currentColor);
    cursor: pointer;
    text-wrap: nowrap;
    user-select: none;
    text-transform: uppercase;
    font-family: var(--ff-mona-sans);
    font-size: var(--font-15-12);
    padding: 0;
    padding-bottom: 0.5rem;
}

.gform_wrapper .gform-loader {
    display: none !important;
}

.gform_wrapper .gfield_required,
.gform_wrapper .gform_required_legend {
    display: none;
}

.gform_wrapper .gfield_contains_required .gfield_label::before {
    content: '*';
}

.gform_wrapper :where(.gfield--type-text,.gfield--type-phone,.gfield--type-email,.gfield--type-textarea,.gfield--type-select) {
    padding-top: 2.5rem;
    position: relative;
}

.gform_wrapper :where(.gfield--type-text,.gfield--type-phone,.gfield--type-email,.gfield--type-textarea,.gfield--type-select) .gfield_label {
    display: block;
    position: absolute;
    font-size: var(--font-20-17);
    transition: 300ms ease-out;
    transition-property: top, font-size, opacity;
    will-change: top, font-size, opacity;
    top: 2.5rem;
    margin-inline: 0.625rem;
    opacity: 0.5;
    pointer-events: none;
}

.gform_wrapper :where(.gfield--type-text,.gfield--type-phone,.gfield--type-email):has(input:not(:placeholder-shown),input:focus) .gfield_label,
.gform_wrapper :where(.gfield--type-textarea):has(textarea:not(:placeholder-shown),textarea:focus) .gfield_label,
.gform_wrapper :where(.gfield--type-select):has(option[value='']:not(:checked),select:focus) .gfield_label,
.gform_wrapper :where(.gfield--type-select):has(.chosen-container-active,.chosen-single:not(.chosen-default)) .gfield_label {
    top: 0;
    font-size: var(--font-14-11);
    pointer-events: none;
    opacity: 1;
}

.gform_wrapper :where(.gfield--type-text,.gfield--type-phone,.gfield--type-email,.gfield--type-textarea,.gfield--type-select) .ginput_container {
    display: flex;
}

.gform_wrapper :where(.gfield--type-text,.gfield--type-phone,.gfield--type-email) input,
.gform_wrapper :where(.gfield--type-textarea) textarea,
.gform_wrapper :where(.gfield--type-select) select {
    font-size: var(--font-20-17);
    background: none;
    border: 0;
    padding: 0 0.625rem 1.875rem 0.625rem;
    border-bottom: 1px solid var(--c-bg-light);
    text-box: unset;
    transition: border-color 300ms ease-out;
    outline: none;
}

.gform_wrapper :where(.gfield--type-select) .chosen-single {
    font-size: var(--font-20-17) !important;
    line-height: 1.6 !important;
    background: none !important;
    border: 0 !important;
    padding: 0 0.625rem 1.875rem 0.625rem !important;
    border-bottom: 1px solid var(--c-bg-light) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-box: unset;
    transition: border-color 300ms ease-out;
    outline: none;
    color: var(--theme-text-body) !important;
    min-height: 2em;
    min-height: 2lh;
}

.gform_wrapper :where(.gfield--type-select) .chosen-single span {
    height: 100%;
    align-content: center;
}

.gform_wrapper :where(.gfield--type-select) .chosen-single div,
.gform_wrapper :where(.gfield--type-select) .chosen-single.chosen-default span {
    display: none !important;
}

.gform_wrapper :where(.gfield--type-textarea) textarea {
    resize: none;
    max-height: 8.125rem;
    min-block-size: 3lh !important;
}

.gform_wrapper :where(.gfield--type-select) select {
    appearance: none;
    background-position: calc(100% - 13px) 13px;
    background-size: 13px 6px;
    background-repeat: no-repeat;
}

.gform_wrapper :where(.gfield--type-select) .chosen-single {
    background-position: calc(100% - 13px) 13px !important;
    background-size: 13px 6px !important;
    background-repeat: no-repeat !important;
}

:where(.theme--lightest,.theme--lighter,.theme--light) .gform_wrapper :where(.gfield--type-select) select {
    background-image: var(--i-select-down--dark);
}

:where(.theme--lightest,.theme--lighter,.theme--light) .gform_wrapper :where(.gfield--type-select) .chosen-single {
    background-image: var(--i-select-down--dark) !important;
}

:where(.theme--lightest,.theme--lighter,.theme--light) .gform_wrapper :where(.gfield--type-select) select:focus {
    background-image: var(--i-select-up--dark);
}

:where(.theme--lightest,.theme--lighter,.theme--light) .gform_wrapper :where(.gfield--type-select) .chosen-container-active .chosen-single {
    background-image: var(--i-select-up--dark) !important;
}

:where(.theme--dark,.theme--darker,.theme--darkest) .gform_wrapper :where(.gfield--type-select) select {
    background-image: var(--i-select-down--light);
}

:where(.theme--dark,.theme--darker,.theme--darkest) .gform_wrapper :where(.gfield--type-select) .chosen-single {
    background-image: var(--i-select-down--light) !important;
}

:where(.theme--dark,.theme--darker,.theme--darkest) .gform_wrapper :where(.gfield--type-select) select:focus {
    background-image: var(--i-select-up--light);
}

:where(.theme--dark,.theme--darker,.theme--darkest) .gform_wrapper :where(.gfield--type-select) .chosen-container-active .chosen-single {
    background-image: var(--i-select-up--light) !important;
}

.gform_wrapper :where(.gfield--type-text,.gfield--type-phone,.gfield--type-email) :is(input:not(:placeholder-shown),input:focus),
.gform_wrapper :where(.gfield--type-textarea) :is(textarea:not(:placeholder-shown),textarea:focus),
.gform_wrapper :where(.gfield--type-select) :is(select:focus),
.gform_wrapper :where(.gfield--type-select) select:has(option[value='']:not(:checked)) {
    border-color: currentColor;
}

.gform_wrapper :where(.gfield--type-select) :is(.chosen-container-active .chosen-single,.chosen-single:not(.chosen-default)) {
    border-color: currentColor !important;
}

.gform_wrapper .gfield_validation_message {
    margin-top: 0.625rem !important;
    font-size: 0.625rem !important;
    color: var(--c-error);
}

.gform_wrapper :where(.gfield--type-text,.gfield--type-phone,.gfield--type-email) input:invalid,
.gform_wrapper :where(.gfield--type-text,.gfield--type-phone,.gfield--type-email):has(.gfield_validation_message) input,
.gform_wrapper :where(.gfield--type-textarea) textarea:invalid,
.gform_wrapper :where(.gfield--type-textarea):has(.gfield_validation_message) textarea,
.gform_wrapper :where(.gfield--type-select) select:invalid,
.gform_wrapper :where(.gfield--type-select):has(.gfield_validation_message) :is(select, .chosen-single) {
    border-color: var(--c-error) !important;
}

.gform_wrapper .ginput_container_consent input {
    display: none;
}

.gform_wrapper .gfield_consent_label {
    font-size: var(--font-16-14);
    user-select: none;
}

.gform_wrapper .gfield_consent_label::before {
    content: '';
    display: inline-block;
    width: 0.375rem;
    height: 0.375rem;
    aspect-ratio: 1;
    outline: 1px solid var(--theme-ui, currentColor);
    padding: 0.1875rem;
    box-sizing: content-box;
    background-clip: content-box;
    margin-right: 0.75rem;
}

.gform_wrapper .ginput_container_consent input:checked + .gfield_consent_label::before {
    background-color: var(--theme-ui, currentColor);
}

.gform_wrapper .gfield_consent_label a {
    color: currentColor;
    text-decoration: underline;
    text-underline-offset: 0.3125em;
    text-decoration-thickness: 0.03em;
}

.gform_wrapper .gfield_description {
    font-size: var(--font-11-9);
}

.gform_wrapper .field_description_below .gfield_description {
    margin-top: 1.375rem;
}

.gform_wrapper .field_description_above .gfield_description {
    margin-bottom: 1.375rem;
}

.gform_wrapper .gfield_description a {
    color: currentColor;
    text-decoration: underline;
    text-underline-offset: 0.3125em;
}

.gform_wrapper .chosen-drop {
    border-radius: 0 !important;
    border: 1px solid var(--c-bg-light) !important;
    box-shadow: none !important;
    transform: translateY(0.9375rem);
    background: var(--c-bg-lightest) !important;
}

.gform_wrapper .chosen-drop .chosen-search {
    display: none;
}

.gform_wrapper .chosen-drop .chosen-results {
    font-size: var(--font-16-14);
    padding: 0 !important;
    margin: 0 !important;
    color: rgb(from var(--c-text-darker) r g b / 0.7) !important;
}

.gform_wrapper .chosen-drop .chosen-results .active-result {
    padding: 0.9375rem 1.25rem !important;
}

.gform_wrapper .chosen-drop .chosen-results :is(.result-selected, .active-result.highlighted) {
    color: var(--c-text-darker) !important;
    background: rgb(from var(--c-bg-darkest) r g b / 0.1) !important;
}

/* Footer */

.site-footer .main-wrapper {
    padding: 6.25rem 0;
}

.site-footer .main-wrapper .wrap {
    display: flex;
    gap: 3.75rem 7.5rem;
    flex-wrap: wrap;
}

.site-footer .main-wrapper .social-nav {
    flex-basis: 15.25%;
}

.site-footer .main-wrapper .social-menu {
    display: flex;
    gap: 1.25rem;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 1rem;
}

.site-footer .main-wrapper .social-menu a {
    color: currentColor;
    text-decoration: none;
}

.site-footer .main-wrapper .footer-nav {
    flex: 1 1 0;
}

.site-footer .main-wrapper .footer-menu {
    columns: 11.25rem auto;
    column-gap: 1rem;
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 1.375rem;
    line-height: 1.4;
    color: var(--theme-text-heading);
}

.site-footer .main-wrapper .footer-menu li {
    margin-bottom: 1rem;
    max-width: 9rem;
}

.site-footer .main-wrapper .footer-menu a {
    color: currentColor;
    text-decoration: none;
}

.site-footer .secondary-wrapper {
    padding: 1.25rem 1.5625rem;
    display: flex;
    justify-content: space-between;
    gap: 0.875rem 1.25rem;
    flex-wrap: wrap;
}

.site-footer .secondary-wrapper.theme--darkest {
    color: var(--c-bg-light);
}

.site-footer .secondary-wrapper .legal-menu {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: var(--font-12-11);
}

.site-footer .secondary-wrapper .legal-menu li:not(:last-child) {
    display: flex;
    gap: 0.75rem;
    align-items: center;
}

.site-footer .secondary-wrapper .legal-menu li:not(:last-child)::after {
    content: '';
    display: block;
    height: 1px;
    width: 1.125rem;
    background-color: currentColor;
    opacity: 0.5;
}

.site-footer .secondary-wrapper .legal-menu a {
    color: currentColor;
    text-decoration: none;
}

/* Widgets */

/* Widget - Brand Attribute */

.gbwp-widget--brand-attribute {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 1.25rem;
}

.gbwp-widget--brand-attribute .label {
    font-size: var(--font-16-14);
}

.gbwp-widget--brand-attribute a {
    color: currentColor;
}

.gbwp-widget--brand-attribute svg {
    max-width: 7.5rem;
}

/* Widget - Footer Credits */

.gbwp-widget--footer-credits {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem;
    font-size: var(--font-12-11);
}

.gbwp-widget--footer-credits > :not(:last-child) {
    display: flex;
    align-items: center;
}

.gbwp-widget--footer-credits > :not(:last-child)::after {
    content: '';
    display: block;
    height: 1px;
    width: 1.125rem;
    background-color: currentColor;
    opacity: 0.5;
    margin-left: 0.75rem;
}

.gbwp-widget--footer-credits a {
    color: currentColor;
    text-decoration: none;
}


/* Rolling Number */

@property --num {
    syntax: "<integer>";
    initial-value: 0;
    inherits: false;
}
  
.rolling-number {
    --anim-dur: 1000ms;
    counter-reset: num var(--num);
}

.rolling-number.animate {
    animation: rolling-number var(--anim-dur) forwards ease-in-out;
}

.rolling-number::before {
    content: var(--num);
    content: counter(num);
}

@keyframes rolling-number {
    from {
        --num: 0;
    }
    to {
        --num: var(--nr);
    }
}

/* Ajax Loading Indicator */

@keyframes ajax-loading-spinner {
    100%{
        transform: translate(-50%, -50%) rotate(1turn);
    }
}

.ajax-loading {
    position: relative;
    pointer-events: none;
    min-height: 10rem;
}

.ajax-loading::after {
    content: '';
    display: block;
    width: 5rem;
    height: 5rem;
    aspect-ratio: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background:
      radial-gradient(farthest-side, var(--c-primary) 94%, transparent) top/8px 8px no-repeat,
      conic-gradient(transparent 30%, var(--c-primary));
    -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 8px),black 0);
    animation: ajax-loading-spinner 1s infinite linear;
    z-index: 1;
}

.ajax-loading > * {
    opacity: .3 !important;
    transition-duration: 0ms !important;
}

/* Accordions */

.accordion {
    border-top: 1px solid rgb(from var(--c-primary) r g b / 0.2);
}

.accordion:last-child {
    border-bottom: 1px solid rgb(from var(--c-primary) r g b / 0.2);
}

.accordion .ac-state {
    display: none;
}

.accordion .ac-trigger {
    display: flex;
    align-items: center;
    justify-content: flex-start;
	cursor: pointer;
    padding-block: 2.5rem;
    user-select: none;
}

.accordion .ac-counter {
    flex-basis: 17%;
    flex-shrink: 0;
    color: var(--c-bg-dark);
}

.accordion .ac-title {
    transition: transform 100ms ease-out;
    margin-right: 0.5rem;
}

.accordion .ac-state:not(:checked) ~ .ac-trigger:hover .ac-title {
    transform: translateX(0.9375rem);
}

.accordion .ac-icon {
    width: 1.5rem;
    height: 1.5rem;
    position: relative;
    margin-left: auto;
    flex-shrink: 0;
}

.accordion .ac-icon::before,
.accordion .ac-icon::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    background-color: var(--c-primary);
    top: 50%;
    left: 50%;
    transition: transform 200ms ease-out;
}

.accordion .ac-icon::before {
    transform: translate(-50%, -50%);
}

.accordion .ac-icon::after {
    transform: translate(-50%, -50%) rotate(-90deg);
}

.accordion .ac-state:checked ~ .ac-trigger .ac-icon::after {
    transform: translate(-50%, -50%) rotate(0deg);
}

.accordion .ac-content {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 200ms ease-out;
}

.accordion .ac-state:checked ~ .ac-content {
    grid-template-rows: 1fr;
}

.accordion .ac-content-inner {
	overflow: hidden;
	transition: padding 200ms ease-out;
    width: 66%;
    margin-inline: auto;
}

.accordion .ac-state:checked ~ .ac-content .ac-content-inner {
    padding-block: 1.25rem 3.75rem;
}

/* Background Video */

.wp-video-shortcode.background {
    pointer-events: none !important;
    user-select: none;
}

.wp-video-shortcode.background :is(.mejs-controls, .mejs-layers) {
    display: none !important;
}

/* Swiper */

.swiper-navigation {
    display: flex;
    gap: 0.625rem;
    color: var(--theme-ui);
}

.swiper-navigation button {
    display: grid;
    place-items: center;
    width: 3.3125rem;
    height: 3.3125rem;
    aspect-ratio: 1;
    padding: 0;
    margin: 0;
    background: none;
    border: 1px solid currentColor;
}

.swiper-navigation button[disabled] {
    opacity: 0.4;
}

.swiper-navigation button svg {
    max-width: 0.75rem;
    max-height: 0.75rem;
}

.swiper-pagination {
    position: static;
    display: flex;
    gap: 0.75rem;
    color: var(--theme-ui);
}

.swiper-pagination-bullet {
    display: block;
    width: 0.67rem;
    height: 0.67rem;
    border: 1px solid currentColor;
    background-color: transparent;
    border-radius: 2px;
    transform: rotate(-45deg);
    margin: 0 !important;
    padding: 0;
    opacity: 1;
}

.swiper-pagination-bullet-active {
    background-color: currentColor;
}

/* Post Wrapper */

.post {
    display: flex;
    gap: 5rem;
    align-items: stretch;
    padding: 2.8125rem;
}

.post .post__image {
    width: 40%;
    flex-basis: 40%;
    flex-shrink: 0;
    object-fit: cover;
}

.post .post__data {
    flex-basis: 1px;
    flex-grow: 1;
    align-self: center;
}

:where(.post .post__data > *) {
    margin: 0;
}

:where(.post .post__data > :not(:last-child)) {
    margin-bottom: 1.5rem;
}

.post .post__meta {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.post .post__type {
    font-size: var(--font-10-9);
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 0.625rem 1rem;
    border: 1px solid currentColor;
}

.post .post__distance {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: var(--font-16-14);
}

.post .post__distance svg {
    max-width: 1rem;
    max-height: 1rem;
}

:where(.theme--dark,.theme--darker,.theme--darkest) .post__distance svg {
    color: var(--c-bg-light);
}

:where(.theme--lightest,.theme--lighter,.theme--light) .post__distance svg {
    color: var(--c-bg-dark);
}

.post .post__title {
    margin-block: 1.625rem;
}

.post .post__divider {
    max-width: 4.375rem;
    background-color: var(--c-bg-light);
}

.post .post__info {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    flex-wrap: wrap;
    font-family: var(--ff-borna);
    font-size: var(--font-19-15);
    font-weight: 500;
    line-height: 1.1;
    letter-spacing: -0.03em;
    word-break: break-all;
}

.post .post__info > :not(:last-child) {
    display: flex;
    gap: 0.875rem;
    align-items: center;
}

.post .post__info > :not(:last-child)::after {
    content: '';
    display: block;
    height: 1.5rem;
    width: 1px;
    background-color: var(--c-bg-light);
}

.post .post__info a {
    color: currentColor;
    text-decoration: none;
}

.post .post__actions {
    margin-top: 2rem;
}

@media screen and (width <= 920px) {
    /* Post Wrapper */
    .post {
        gap: 2rem;
        padding: 1rem;
    }
    .post .post__image {
        width: 50%;
        flex-basis: 50%;
    }
}

@media screen and (width <= 620px) {
    .only-desktop {
        display: none !important;
    }
    .cta-buttons {
        gap: 1rem 1.5625rem;
    }
    .btn:where(.primary) {
        padding: 1rem 1.625rem;
    }
    .btn:where(.tertiary) {
        padding-bottom: 0.375rem;
    }
    .btn.w-icon {
        gap: 0.375rem;
    }
    .btn.w-icon svg {
        max-width: 0.7em;
        max-height: 0.7em;
    }
    .text-content > :not(:last-child) {
        margin-bottom: 1.875rem;
    }
    :where(h6, .h6)::after {
        width: 1.5rem;
    }
    .swiper-pagination {
        gap: 0.5rem;
    }
    .swiper-pagination-bullet {
        width: 0.463125rem;
        height: 0.463125rem;
    }
    .site-header .hamburger-container {
        padding: 5rem 1.875rem 1.875rem;
    }
    .site-footer .main-wrapper {
        padding-block: 3.75rem;
    }
    /* Forms */
    .gform_wrapper .gform_fields {
        --gf-form-gap-y: 1.875rem;
    }
    .gform_wrapper .gfield--type-html.text-content:not(:last-child) {
        /* margin-bottom: 2.1875rem;*/
        margin-bottom: 0.625rem;
    }
    .gform_wrapper :where(.gfield--type-text,.gfield--type-phone,.gfield--type-email,.gfield--type-textarea,.gfield--type-select) {
        padding-top: 1.875rem;
    }
    .gform_wrapper :where(.gfield--type-text,.gfield--type-phone,.gfield--type-email,.gfield--type-textarea,.gfield--type-select) .gfield_label {
        top: 1.875rem;
    }
    .gform_wrapper :where(.gfield--type-text,.gfield--type-phone,.gfield--type-email) input,
    .gform_wrapper :where(.gfield--type-textarea) textarea,
    .gform_wrapper :where(.gfield--type-select) select {
        padding-bottom: 1.375rem;
    }
    .gform_wrapper :where(.gfield--type-select) .chosen-single {
        padding-bottom: 1.375rem !important;   
    }
    .gform_wrapper :where(.gfield--type-textarea) textarea {
        max-height: 3.9375rem;
        min-block-size: 2lh !important;
    }
    .gform_wrapper .gf_progressbar_wrapper {
        margin-bottom: 3.125rem;
    }
    .gform_wrapper .gfield--type-html.text-content {
        gap: 1.25rem;
    }
    .gform_wrapper .gfield--type-html.text-content:first-child {
        gap: 1.875rem;
    }
    .gform_wrapper .gfield--type-radio.layout--boxes .gfield_radio {
        gap: 0.9375rem;
    }
    .gform_wrapper .gfield--type-radio.layout--boxes .gform-field-label {
        height: 8.75rem;
        gap: 1.25rem;
        padding-inline: 1.25rem;
    }
    .gform_wrapper .gfield--type-radio.layout--boxes .gform-field-label::before {
        padding: 0.1875rem;
    }
    /* Post Wrapper */
    .post {
        flex-direction: column;
        padding-bottom: 2.1875rem;
    }
    .post .post__image {
        flex-basis: unset;
        width: 100%;
        aspect-ratio: 1.72;
    }
    .post .post__data {
        align-self: unset;
        margin-inline: 0.5625rem;
    }
    .post .post__data > :not(:last-child) {
        margin-bottom: 1.375rem;
    }
    .post .post__type {
        padding: 0.5rem 0.75rem;
    }
    .post .post__distance svg {
        max-width: 0.75rem;
        max-height: 0.75rem;
    }
    .post .post__divider {
        max-width: 3.125rem;
    }
    .post .post__info {
        flex-direction: column;
        align-items: flex-start;
    }
    .post .post__info > :not(:last-child) {
        display: block;
    }
    .post .post__info > :not(:last-child)::after {
        content: unset;
    }
    .post .post__actions {
        gap: 1rem 1.25rem;
    }
}

@media screen and (width <= 420px) {
    .modal .modal-inner {
        --padding: 0;
    }
    .modal--video .modal-inner {
        width: 100%;
    }
    .modal--video .modal-close {
        transform: translateY(-100%);
    }
    .site-header .site-header-main {
        padding: 1.125rem;
    }
    .site-header .site-branding .custom-logo {
        max-width: 9.6875rem;
        max-height: 1.3125rem;
    }
    .site-header .hamburger-menu-toggle {
        width: 2.875rem;
        height: 2.25rem;
    }
    .site-header .hamburger-menu-toggle::before,
    .site-header .hamburger-menu-toggle::after {
        width: 1.125rem;
    }
    .site-header .hamburger-container {
        right: 0.9375rem;
        top: 0.9375rem;
        height: calc(100vh - 1.875rem);
        height: calc(100svh - 1.875rem);
        max-width: calc(100vw - 1.875rem);
        max-width: calc(100svw - 1.875rem);
        transform: translate(-3px, 3px) scale(0);
    }
    .site-header .hamburger-container .footer {
        flex-direction: column;
        align-items: flex-start;
    }
    .site-header .hamburger-container .social-menu {
        gap: 1.25rem;
    }
    .site-header .hamburger-container .footer .gbwp-widget--brand-attribute {
        margin-left: unset;
    }
    .site-footer .main-wrapper .wrap {
        flex-direction: column;
    }
    .site-footer .main-wrapper .social-menu {
        max-width: 11.4375rem;
    }
    .site-footer .secondary-wrapper .legal-menu,
    .site-footer .secondary-wrapper .legal-menu li:not(:last-child) {
        gap: 0.5rem;
    }
    .site-footer .secondary-wrapper .legal-menu li:not(:last-child)::after {
        width: 0.875rem;
    }
    /* Widgets */
    /* Widget - Brand Attribute */
    .gbwp-widget--brand-attribute {
        align-items: flex-start;
    }
    .gbwp-widget--brand-attribute svg {
        max-width: 6rem;
    }
    /* Widget - Footer Credits */
    .gbwp-widget--footer-credits {
        gap: 0.5rem;
    }
    .gbwp-widget--footer-credits > :not(:last-child)::after {
        width: 0.875rem;
        margin-left: 0.5rem;
    }
}