/** 
 * Small screens CSS
 */

@media screen and (min-width: 641px) {
    .site-footer_widgets {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        padding-left: 5%;
        padding-right: 5%;
    }
    .site-footer_widgets>div:first-child {
        grid-column: 1 / 4;
        margin-bottom: 2em;
    }
    .site-footer_widgets .widget:last-child {
        align-self: flex-end;
        grid-column: 2 / 4;
        text-align: right;
    }
}

@media screen and (max-width: 1179px) {
    body {
        font-size: 16px;
        --wp--preset--font-size--medium: 1.125em;
        --wp--preset--font-size--medium-large: 0.8em;
        --wp--preset--font-size--large: 1.2em;
        --wp--preset--font-size--x-large: 1.5em;
        --wp--preset--font-size--xx-large: 2.6667em;
        --wp--preset--font-size--h-one: 2.25em;
        --wp--preset--font-size--h-two: 2.4em;
        --wp--preset--font-size--h-three: 1.5em;
        --wp--preset--font-size--1818: 1.2em;
        --wp--preset--font-size--1820: 1.2em;
        --wp--preset--font-size--1824: 1.2em;
        --wp--preset--font-size--1830: 1.2em;
        --wp--preset--font-size--1832: 1.2em;
        --wp--preset--font-size--1836: 1.2em;
        --wp--preset--font-size--2128: 1.4em;
        --wp--preset--font-size--2230: 1.46667em;
        --wp--preset--font-size--2432: 1.6em;
        --wp--preset--font-size--2844: 1.66667em;
        --wp--preset--font-size--3032: 1.875em;
        --wp--preset--font-size--3040: 1.875em;
        --wp--preset--font-size--3060: 2em;
        --wp--preset--font-size--3270: 2em;
        --wp--preset--font-size--3456: 2.25em;
        --wp--preset--font-size--3465: 2.25em;
        --wp--preset--font-size--3644: 2.4em;
        --wp--custom--logo--full--height: calc((8 / 3) * 1em);
    }
    h1 {
        font-size: 2.33333em;
    }
    h2 {
        font-size: 2.4em;
    }
    h3 {
        font-size: calc(1em * 5 / 3);
    }
    .has-1822-font-size {
        font-weight: normal;
    }
    /* Navigation Bar */
    .nav-bar {
        align-items: center;
        grid-template-columns: auto 1fr auto;
        margin-top: 1em;
        padding: 0.8em 1em;
        width: calc(100% - 2.25em);
    }
    .primary-navigation {
        grid-column: 3 / 4;
    }
    .quick-links {
        display: none;
    }
    .menu-button-container {
        line-height: 1;
        text-align: right;
    }
    .menu-item_description {
        display: none;
    }
    .show-description-on-mobile .menu-item_description {
        display: block;
        font-size: 0.875em;
        margin-bottom: 0;
    }
    .menu-item_description+.sub-menu {
        margin-top: 1.5em;
    }
    #primary-menu-opener span {
        display: block;
    }
    #primary-menu-opener .dropdown-icon {
        height: var(--wp--custom--logo--full--height);
    }
    #primary-menu-opener svg {
        height: var(--wp--custom--logo--full--height);
        width: var(--wp--custom--logo--full--height);
    }
    #primary-menu-opener .dropdown-icon.close {
        display: none;
    }
    .primary-navigation-open #primary-menu-opener .dropdown-icon.open {
        display: none;
    }
    .primary-navigation-open #primary-menu-opener .dropdown-icon.close {
        display: block;
    }
    .primary-menu-wrapper {
        display: block;
        position: absolute;
        left: -200%;
        opacity: 0;
        padding-top: 1.5em;
        transition: opacity 0.2s ease-in;
        width: 100%;
    }
    .primary-navigation-open .primary-menu-wrapper {
        left: 0;
        opacity: 1;
    }
    #primary-menu {
        background-color: var(--wp--preset--color--accent);
        border-radius: 1.25em;
        box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.3);
        max-height: calc(100vh - 6em);
        overflow-y: auto;
    }
    #primary-menu>li {
        font-size: calc(1em / 15 * 16);
        padding: 0;
    }
    #primary-menu>li .link-wrapper {
        padding: 0.75em 1.25em 0.75em 2em;
    }
    #primary-menu>li .link-wrapper a,
    #primary-menu>li .link-wrapper span {
        color: var(--wp--preset--color--white);
    }
    #primary-menu>li.open .link-wrapper a,
    #primary-menu>li.open .link-wrapper span {
        color: var(--wp--preset--color--accent);
    }
    #primary-menu>li:not(:last-child) {
        border-bottom: 1px solid var(--wp--preset--color--white);
    }
    #primary-menu>li.menu-item_alt {
        border-width: 0;
    }
    #primary-menu .menu-item_button.fill a {
        font-size: calc(1em / 16 * 12)
    }
    #primary-menu>li .link-wrapper .sub-menu-toggle {
        display: flex;
        flex-direction: column;
        justify-content: center;
        float: right;
        margin-top: -0.2em;
        min-height: 22px;
        padding: 0.4em;
    }
    #primary-menu>li>.sub-menu {
        display: none;
        padding-bottom: 0.25em;
        padding-top: 1em;
    }
    #primary-menu>li>.sub-menu li:not(:last-child) {
        margin-bottom: 0.5em;
    }
    .icon-down {
        color: var(--wp--preset--color--white);
        display: inline-block;
        line-height: 0;
    }
    .icon-up {
        color: var(--wp--preset--color--accent);
        display: none;
        line-height: 0;
    }
    .mega-menu_header:not(:first-child) {
        margin-top: 1.5em;
    }
    /* Open menu */
    #primary-menu>li.menu-item-has-children.open>.sub-menu {
        background-color: transparent;
        display: block;
        padding-right: 0;
        padding-top: 0;
    }
    #primary-menu > li.open {
        background-color: var(--wp--preset--color--white);
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' fill='none'%3E%3Cpath d='M0 0h10v10H0z' fill='%23fff'/%3E%3C/svg%3E");
        background-repeat: repeat-x; 
        background-size: 2.8em;
        border: 1px solid var(--wp--preset--color--accent);
        border-top-left-radius: 1.171875em;
        border-top-right-radius: 1.171875em;
        font-size: calc(1em / 15 * 16);
    }
    #primary-menu > li.open .link-wrapper {
        border-bottom: 1px solid var(--wp--preset--color--accent);
    }
    .menu-item-has-children.open>a {
        color: var(--wp--preset--color--accent);
    }
    .menu-item-has-children.open .icon-down {
        display: none;
    }
    .menu-item-has-children.open .icon-up {
        color: var(--wp--preset--color--accent);
        display: inline-block;
    }
    #primary-menu > li.open li.menu-item-has-children {
        background-color: #16838b20;
        margin-bottom: 0;
        padding: 0.75em 2em 0;
    }
    #primary-menu > li.open li.menu-item-has-children a {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 14'%3E%3Cpath fill='%2316838b' d='M9.038 5.272a2 2 0 0 1 0 3.455l-6.031 3.518A2 2 0 0 1 0 10.518V3.482a2 2 0 0 1 3.008-1.727Z'/%3E%3C/svg%3E");
        background-position: left center;
        background-repeat: no-repeat;
        background-size: 0.8em;
        padding-left: 1.4em;
    }
    #primary-menu > li.open li.menu-item-has-children > a {
        text-transform: uppercase;
    }
    #primary-menu > li.open li.menu-item-has-children .sub-menu {
        margin-top: 0.75em;
    }
    #primary-menu > li.open li:not(.menu-item-has-children) {
        background-color: var(--wp--preset--color--white);
        margin-bottom: 0;
        margin-left: -2em;
        padding: 0.2em 2em 0.2em 3.6em;
        width: calc(100% + 4em);
    }
    #primary-menu > li.open li:not(.menu-item-has-children):first-child {
        padding-top: 0.5em;
    }
    #primary-menu > li.open li:not(.menu-item-has-children):last-child {
        padding-bottom: 0.5em;
    }
    .page-header h1::after {
        margin-left: 0.08em;
        margin-top: 0.5em;
    }
    .page-header.alternative h1 {
        margin: 1em auto 0;
        width: 90%;
    }
      #primary-menu > li.button-link .link-wrapper {
        padding-top: 1em;
        padding-bottom: 1em;
    }
      #primary-menu > li.button-link .link-wrapper a {
        background-color: var(--wp--preset--color--white);
        border-radius: 100em;
        color: var(--wp--preset--color--accent) !important;
        display: inline-block;
        padding: 0.3em 1em;
        text-align: center;
        width: 100%;
    }
    /**
     * Blocks
     */
    /* Cover */
    .wp-block-cover {
        padding-bottom: 5.33333em;
        padding-top: 3.33333em;
    }
    .wp-block-cover img.wp-block-cover__image-background {
        object-position: 36%;
    }
    .wp-block-cover.mobile_object-position_20 img.wp-block-cover__image-background {
        object-position: 20% !important;
    }
    .wp-block-cover.mobile_object-position_40 img.wp-block-cover__image-background {
        object-position: 40% !important;
    }
    .wp-block-cover.mobile_object-position_60 img.wp-block-cover__image-background {
        object-position: 60% !important;
    }
    .wp-block-cover.mobile_object-position_80 img.wp-block-cover__image-background {
        object-position: 80% !important;
    }
    /* Group */
    .wp-block-group {
        padding-left: 2em;
        padding-right: 2em;
    }
}

@media screen and (max-width: 640px) {
    .site-footer_widgets>.widget {
        margin-bottom: 3em;
        margin-left: auto;
        margin-right: auto;
        max-width: 72%;
    }
    .site-footer_widgets>.widget:last-child {
        margin-bottom: 1em;
    }
    .site-footer_widgets>.widget_nav_menu,
    .site-footer_widgets>#block-9 {
        max-width: 240px;
    }
    .site-footer_widgets .wp-container-1 {
        display: block;
        text-align: center;
    }
    .site-footer_widgets .wp-container-1 figure {
        margin-bottom: 1.5em;
    }
    .footer-logo {
        flex-direction: column;
    }
    .trust-forward {
        margin-top: 5em;
    }
}

@media screen and (max-width: 781px) {
    body {
        font-size: 15px;
    }
    /**
     * Helper Classes
     */
    .desktop-only {
        display: none !important;
    }
    .mobile_align-items_flex-start {
        align-items: flex-start !important;
    }
    .mobile_1_column {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }
    .mobile_2_columns {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
    }
    .mobile_flex-direction_column {
        flex-direction: column;
    }
    .mobile_font-size_1 {
        font-size: 1em !important;
    }
    .site-main .mobile_justify-content_center {
        justify-content: center;
    }
    .mobile_padding-bottom_12em {
        padding-bottom: 12em !important;
    }
    .mobile_vertical_padding_0 {
        padding-bottom: 0;
        padding-top: 0;
    }
    .mobile_text-align_center {
        text-align: center;
    }
    .mobile_text-align_center::after {
        margin-left: auto !important;
        margin-right: auto !important;
    }
    .mobile_text-align_center .wp-block-buttons {
        justify-content: center;
    }
    .mobile_text-align_center .wp-block-media-text__media {
        margin: 0 auto 2em;
        max-width: 90%;
    }
    .mobile_border-radius_0 {
        border-radius: 0 !important;
    }
    .mobile_order_1 {
        order: 1;
    }
    .mobile_order_2 {
        order: 2;
    }
    .mobile_order_3 {
        order: 3;
    }
    .mobile_row-gap_1 {
        row-gap: 1em !important;
    }
    .mobile_row-gap_2 {
        row-gap: 2em !important;
    }
    .mobile_row-gap_4 {
        row-gap: 4em !important;
    }
    .mobile_max-width_140 {
        margin-left: auto;
        margin-right: auto;
        max-width: 140px;
    }
    .mobile_max-width_10em {
        margin-left: auto;
        margin-right: auto;
        max-width: 10em;
    }
    .mobile_max-width_15em {
        margin-left: auto;
        margin-right: auto;
        max-width: 15em;
    }
    .mobile_max-width_20em {
        margin-left: auto;
        margin-right: auto;
        max-width: 20em;
    }
    .mobile_width_100,
    .site-main>.mobile_width_100 {
        border-radius: 0 !important;
        width: 100% !important;
    }
    .mobile_width_100 .mobile_width_100,
    .product_box.mobile_width_100 {
        margin-left: -2em !important;
        max-width: none !important;
        width: calc(100% + 4em) !important;
    }
    .wp-block-group:not(.alignwide,
    .alignfull) .mobile_width_100 {
        margin-left: -5.5% !important;
        width: 100vw !important;
    }
    .mobile_box-shadow_none {
        box-shadow: none !important;
    }
    .wp-block-columns.is-style-shadow.mobile_box-shadow_none,
    .wp-block-group.is-style-shadow.mobile_box-shadow_none {
        padding: 0;
    }
    .site-main .mobile_display_block {
        display: block;
    }
    .wp-block-columns.mobile_display_block>.wp-block-column:not(:last-child) {
        margin-bottom: var(--wp--style--block-gap);
    }
    /**
     * Blocks
     */
    .wp-block-button__link {
        font-size: 0.875em;
    }
    .wp-block-group.alignfull>.wp-block-group.alignwide.has-background {
        margin-left: -2em !important;
        width: calc(100% + 4em);
    }
}