:root {
  --color-primary: #DF1834;
  --color-primary-dark: #7E2519;
  --color-dark: #271E00;
  --color-white: #FFFFFF;
  --color-light: #F2F2F2;
  --color-black: #000000;
  --color-dark-green: #2C5440;
  --rounded-radius: 16px;
  --rounded-radius-sm: 8px;
  --section-padding: 145px 0 180px 0;
  --grid-gap-x: 50px;
  --transition-base: all 0.1s ease;

  --h2-size: 72px;
  --h3-size: 36px;
  --p-size-lg: 22px; 
  --p-size-md: 20px; 
  --p-size: 16px; 
}
@media screen and (max-width: 767px) {
    :root {
        --grid-gap-x: 15px;
        --section-padding: 80px 0 80px 0;

        --h2-size: 48px;
        --h3-size: 24px;
        --p-size-lg: 18px; 
        --p-size-md: 15px; 
        --p-size: 16px; 
    }
}

body {
    color: var(--color-dark);
}

h1, h2, h3, h4, h5, h6 {
    color: var(--color-dark);
}

body.admin-bar {
    margin-top: 0;
    header.s-header {
        top: 32px;
    }
}


.centered-content {
    width: calc(100% - 40px);
    max-width: 1334px;
}
@media screen and (max-width: 767px) {
    .centered-content {
        width: calc(100% - 0px);
    }
}


.rounded { border-radius: var(--rounded-radius); }

.btn {
    background-color: var(--color-primary);
    color: var(--color-white) !important;
    display: inline-block;
    border-radius: var(--rounded-radius-sm);
    padding: 12px 20px;
    font-weight: 500;
    font-size: var(--p-size-md);
    line-height: 1.5;
    transition: var(--transition-base);
    &:hover {
        background-color: var(--color-white);
        color: var(--color-primary) !important;
        opacity: 1 !important;
    }
    &.btn--small {
        padding: 8px 16px;
        font-size: 14px;
    }
    &.btn--white {
        background-color: var(--color-white);
        color: var(--color-primary) !important;
        &:hover {
            background-color: var(--color-primary-dark);
            color: var(--color-white) !important;
        }
    }
    @media screen and (max-width: 767px) {
        padding: 12px 20px;
        font-size: 16px;

        &.btn--small {
            font-size: 14px;
        }
    }
}

.link {
    display: inline-block;
    color: var(--color-dark);
    text-decoration: underline !important;
    text-decoration-color: currentColor !important;
    text-decoration-thickness: 1px !important;
    transition: var(--transition-base);
    font-size: var(--p-size-md) !important;
    line-height: 1.5;
    font-weight: 400;
    &:hover {
        /* color: var(--color-primary); */
        opacity: 0.5;
        text-decoration-color: transparent !important;
    }
    &.link--white {
        color: var(--color-white) !important;
        text-decoration-color: var(--color-white) !important;
        font-weight: 500;
        &:hover {
            text-decoration-color: transparent !important;
        }
    }
}


header.s-header {
    padding: 15px 0;
    &.sticky {
        background-color: var(--color-black);
        > .centered-content .s-header__logo {
            width: 115px;
            height: auto;
            margin-top: 0;
        }
    }
    > .centered-content {
        .s-header__desktop-navigation {
            .s-header__primary-navigation {
                align-self: flex-end;
            }
            .s-header__secondary-navigation {
                align-items: center;
                li {
                    a,
                    button {
                        color: var(--color-white);
                    }
                }
            }
        }
        .s-header__logo {
            width: 150px;
            height: auto;
            margin-top: 0;
            align-self: center;
        }
    }
}
@media screen and (max-width: 767px) {
    header.s-header>.centered-content .s-header__logo {
        width: 90px;
    }
    header.s-header>.centered-content .s-header__mobile-navigation .s-header__mobile-navigation-item.s-header__mobile-menu-btn button span {
        background: #fff;
    }
}
header.s-header .s-header__mobile-nav-overflow {
    background: var(--color-black);
}
.m-mobile-navigation__item .m-mobile-navigation__item-name span {
    color: var(--color-white);
}
.m-mobile-navigation__item .m-mobile-navigation__accordion .m-mobile-navigation__accordion-item a {
    color: var(--color-white);
}
.m-mobile-navigation__item .m-mobile-navigation__item-name svg {
    fill: var(--color-white);
}
.m-mobile-secondary-navigation__item a, .m-mobile-secondary-navigation__item button {
    color: var(--color-white);
}
.m-mobile-secondary-navigation__item.m-mobile-secondary-navigation__language-switcher button svg {
    fill: var(--color-white);
}
.m-mobile-secondary-navigation__item.m-mobile-secondary-navigation__language-switcher .langs ul a {
    color: var(--color-white);
}


.s-footer {
    background-color: var(--color-dark);
    * {
        color: var(--color-white) !important;
    }
    .s-footer__main {
        gap: 50px;
    }
    .s-footer__infos {
        flex-basis: auto;
        flex: 1;
    }
    .s-footer__address {
        font-size: var(--p-size);
        font-weight: 400;
        span {
            font-size: 28px;
            line-height: 1.35;
            margin-bottom: 18px;
        }
    }
    .s-footer__primary-nav {
        flex-basis: auto;
        flex-grow: 0;
        flex-shrink: 0;
        margin-left: 0;
        width: 60%;

        li, a {
            font-size: var(--p-size);
            font-weight: 400;
        }

        > ul {

            > li {
                width: 50%;
                margin-left: 0 !important;
                margin-right: 0 !important;
                padding: 0 10px;

                margin-top: 0 !important;

                > a {
                    font-size: 28px;
                    line-height: 1.35;
                    margin-bottom: 18px;
                }

                &:nth-child(n+3) {
                    margin-top: 50px !important;
                }

                > ul {
                    > li {
                        &:not(:first-child) {
                            margin-top: 16px;
                        }
                    }
                }
            }
        }
    }
    .s-footer__secondary-nav {
        li, a {
            font-size: var(--p-size);
            font-weight: 400;
        }
    }
    .s-footer__questions {
        p {
            font-size: 28px;
            line-height: 1.35;
            margin-bottom: 18px;
        }
        a {
            font-size: var(--p-size);
            font-weight: 400;
        }
    }
    .s-footer__footer {
        border-top: 1px solid var(--color-white);
        margin-top: 100px;
        padding-top: 30px;
    }
    .s-footer__copyright {
        font-size: var(--p-size);
        font-weight: 400;
    }
    .s-footer__recaptcha-note {
        font-size: var(--p-size);
        margin-top: 30px;
        font-weight: 400;
    }
}


.s-small-hero {
    padding: 210px 0 0;
    background-color: var(--color-black) !important;
    background: linear-gradient(180deg, var(--color-black) 0%, var(--color-dark) 100%) !important;
    .centered-content {
        padding-bottom: 80px;
        .s-small-hero__main {
            h1 {
                color: var(--color-white);
                font-size: 88px;
                line-height: 1.125;
                width: 60%;
            }
            p {
                color: var(--color-white);
                font-size: var(--p-size-lg);
                line-height: 1.5;
                margin-top: 35px;
                width: 55%;
                @media screen and (max-width: 767px) {
                    width: 100%;
                }       
            }
            .btn {
                margin-top: 45px;
            }
        }
    }
    @media screen and (max-width: 767px) {
        padding-top: 100px !important;
        h1 {
            font-size: var(--h2-size) !important;
            width: 100% !important;
        }
    }
}


.s-categories{
    padding: 75px 0;
    .centered-content {
        .s-categories__descriptions {
            width: 75%;
            margin: 0 auto;
            text-align: center;
            .s-categories__description {
                position: static;
                display: block;
                width: 100%;
            }
        }
    }
}



.s-home-hero {
    position: relative;
    padding-top: 0;
    background-color: var(--color-black);
    background: linear-gradient(180deg, var(--color-black) 0%, var(--color-dark) 100%);
    height: 984px;
    .s-home-hero__image {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        bottom: auto;
        right: auto;
        object-fit: cover;
    }
    .centered-content {
        display: flex;
        align-items: center;
        height: 100%;
    }   
    .s-home-hero__content-wrapper {
        position: relative;
        min-height: 0;
        padding-top: 0;
        padding-bottom: 0;
    }
    .s-home-hero__title {
        width: 100%;
        max-width: 1070px;
        color: var(--color-white);
        font-size: 104px;
        line-height: 1.25;
    }
    .btn {
        margin-top: 55px;
    }

    @media screen and (max-width: 767px) {
        height: auto;
        padding: 150px 0 100px;
        .s-home-hero__image {
            position: absolute !important;
            bottom: 0 !important;
            margin: 0;
            height: 100%;
        }
        .s-home-hero__title {
            font-size: 48px;
            line-height: 1.125;
        }
    }
}



.m-header-nav-item {
    margin-right: 32px;
    .m-header-nav-item__sub-navigation {
        padding: 40px 35px;
    }
    .m-header-nav-item__title {
        color: var(--color-white);
        &::after {
            background: var(--color-white) !important;
        }
    }
}


.s-featured-video {
    padding: var(--section-padding);
    .s-featured-video__video-col {
        width: 100%;
        margin-top: 64px;
    }
    .s-featured-video__video-wrapper {
        iframe {
            border-radius: var(--rounded-radius);
        }
    }
    .s-featured-video__content-col {
        width: 100%;
        margin-left: 0;
    }
    .s-featured-video__title {
        font-size: var(--h2-size);
    }
    .s-featured-video__description {
        font-weight: 400;
        font-size: var(--p-size-lg);
        margin-top: 30px;
        color: var(--color-dark);
    }
}


.s-featured-products {
    padding: var(--section-padding);
    .s-featured-products__head {
        display: flex;
        align-items: baseline;
        width: 100%;
        @media screen and (max-width: 767px) {
            flex-direction: column;
            align-items: flex-start;
            gap: 20px;
        }
    }
    .s-featured-products__title {
        font-size: var(--h2-size);
        flex: 1;
        color: var(--color-dark);
    }
    .s-featured-products__list-ctn {
        margin-top: 70px;
    }
    &.is-gray {
        background-color: var(--color-white);
    }
}


.m-products-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--grid-gap-x);
    .m-product-list__tile-ctn {
        &:not(:nth-of-type(3n)) {
            margin-right: 0;
        }
        @media screen and (max-width: 767px) {
            margin-bottom: 0 !important;
        }
    }
    @media screen and (max-width: 767px) {
        grid-template-columns: repeat(1, 1fr);
        gap: 15px;
    }
}

.m-tile-product {
    height: 100%;
    padding: 44px;
    @media screen and (max-width: 767px) {
        padding: 20px;
    }
    border: 2px solid color-mix(in srgb, var(--color-dark), transparent 70%);
    border-radius: var(--rounded-radius);
    transition: var(--transition-base);
    &:hover {
        background-color: var(--color-primary);
        border-color: var(--color-primary);
        .m-tile-product__name,
        .m-tile-product__quantity {
            color: var(--color-white);
        }
    }
    .m-tile-product__image-ctn {
        img {
            width: 100%;
            height: 100%;
            aspect-ratio: 1 / 1;
            object-fit: contain;
        }
    }
    .m-tile-product__content {
        padding-top: 35px;
        @media screen and (max-width: 767px) {
            padding: 10px;
        }
    }
    .m-tile-product__name {
        font-size: 28px;
        font-weight: 600;
        line-height: 1.35;
        color: var(--color-dark);
        @media screen and (max-width: 767px) {
            font-size: var(--h3-size);
        }
    }
    .m-tile-product__quantities {
        margin-top: 10px;
    }
    .m-tile-product__quantity {
        font-size: var(--p-size-lg);
        font-weight: 400;
    }
}


.s-services-overview {
    padding: var(--section-padding);
    background-color: var(--color-primary-dark);
    color: var(--color-white);
    .s-services-overview__wrapper {
        display: block;
    }
    .s-services-overview__title {
        font-size: var(--h2-size);
        color: currentColor;
    }
    .s-services-overview__text {
        font-weight: 400;
        font-size: var(--p-size-lg);
        color: currentColor;
        margin-top: 30px;
        margin-left: 0;
    }
    .s-services-overview__services {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: var(--grid-gap-x);
        margin-top: 64px;
        @media screen and (max-width: 767px) {
            grid-template-columns: repeat(1, 1fr);
            gap: 60px;
        }
    }
    .s-services-overview__service {
        display: block;
        margin: 0 !important;
        .service__image-wrapper {
            border-radius: var(--rounded-radius-sm);
            overflow: hidden;
        }
        .service__content-wrapper {
            margin: 35px 0 0 0;
        }
        .service__title {
            font-size: var(--h3-size);
            line-height: 1.33;
            color: var(--color-white);
        }
        .service__cta {
            /* color: var(--color-white);
            font-size: 20px !important;
            line-height: 1.5;
            font-weight: 500; */
            font-weight: 500;
            margin-top: 30px;
        }
    }
}


.s-text {
    padding: var(--section-padding);
    background-color: var(--color-white);
    .s-text__wrapper {
        display: block;
    }
    .s-text__title {
        font-size: var(--h2-size);
    }
    p {
        font-weight: 400;
        font-size: var(--p-size-lg);
        color: currentColor;
        margin-top: 30px;
        margin-left: 0;
    }
}



.s-about-overview {
    background-color: var(--color-dark);
    color: var(--color-white);
    .s-about-overview__title {
        font-size: var(--h3-size);
        line-height: 1.33;
        color: currentColor;
    }
    .link {
        margin-top: 35px;
    }
    .s-about-overview__content-wrapper {
        padding: var(--section-padding);
    }
    .s-about-overview__title {
        width: 50%;
        @media screen and (max-width: 767px) {
            width: 100%;    
        }
    }
    .s-about-overview__background-image {
        position: absolute;
        width: 898px;
        max-width: none;
        top: 50%;
        transform: translateY(-50%);
        right: -80px;
    }
}


.s-small-hero.about-us {
    position: relative;
    .s-small-hero-about-us__image {
        position: absolute;
        width: 50%;
        max-width: 850px;
        bottom: 0;
        right: 0;
    }
    .s-small-hero__main {
        position: relative;
        z-index: 1;
        padding-bottom: 50px;
    }
}



.s-newsletter {
    padding: 0;
    background: transparent;
    .centered-content {
        width: 100%;
        max-width: none;
        padding: 0 !important;
    }
    .s-newsletter__cols {
        display: flex;
        align-items: stretch;
        & > div {
            width: 50%;
        }
        @media screen and (max-width: 767px) {
            display: block;
            & > div {
                width: 100%;
            }
        }
    }
    .s-newsletter__col-1 {
        padding: 110px 80px;
        background-color: var(--color-primary-dark);
        text-align: center;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 24px;
        @media screen and (max-width: 767px) {
            padding: 80px 20px;
        }
    }
    .s-newsletter__title {
        font-size: var(--h3-size);
        line-height: 1.5;
        color: var(--color-white);
        /* max-width: 450px; */
    }
    .s-newsletter__col-2 {
        padding: 110px 80px;
        background-color: var(--color-primary);
        text-align: center;
        @media screen and (max-width: 767px) {
            padding: 80px 20px;
        }
    }
    
    .centered-content {
        .s-newsletter__top-content {
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            /* gap: 24px; */
            margin-bottom: 0;
            .s-newsletter__title {
                width: 100%;
                font-size: var(--h3-size);
                line-height: 1.5;
                color: var(--color-white);
            }
            .s-newsletter__form {
                width: 100%;
                margin: 0;
                .s-newsletter__form-input {
                    border-bottom: 1px var(--color-white) solid;
                    color: var(--color-white);
                    text-align: center;
                    width: 100%;
                    font-size: var(--p-size-md);
                    line-height: 1.5;
                    font-weight: 500;
                    margin: 40px 0 50px;
                    padding-bottom: 10px;
                    &::placeholder {
                        color: var(--color-white) !important;
                        opacity: 1 !important;
                    }
                }
                .s-newsletter__message-wrapper.form-messages {
                    .s-newsletter__message {
                        width: 100%;
                        text-align: center;
                        color: var(--color-white);
                        /* &.error {
                            color: var(--color-primary-dark);
                        } */
                    }
                }
            }
        }
    }
}


.s-stats {
    background-color: var(--color-primary);
    text-align: center;
    display: flex;
    padding: 50px 0 75px;
    .s-stats__items {
        display: flex;
        gap: var(--grid-gap-x);
        justify-content: center;
    }
    .s-stats__item {
        .s-stats__number {
            font-size: 104px;
            font-weight: 600;
            line-height: 1.25;
            white-space: nowrap;
            color: var(--color-white);
        }
        .s-stats__label {
            font-size: var(--p-size-lg);
            line-height: 1.5;
            font-weight: 500;
            color: var(--color-white);
        }
    }
    @media screen and (max-width: 767px) {
        .s-stats__items {
            flex-wrap: wrap;
            gap: 40px var(--grid-gap-x);
        }
        .s-stats__item {
            width: 45%;
            .s-stats__number {
                font-size: 48px;
            }
        }
    }
}



.s-news-overview {
    padding: var(--section-padding);
    background-color: var(--color-white);
    .s-news-overview__head {
        display: flex;
        align-items: baseline;
        width: 100%;
        @media screen and (max-width: 767px) {
            flex-direction: column;
            align-items: flex-start;
            gap: 20px;
        }
    }
    .s-news-overview__title {
        font-size: var(--h2-size);
        flex: 1;
        color: var(--color-dark);
    }
    .s-news-overview__link-ctn {
        align-self: baseline;
    }
    .s-news-overview__list {
        margin-top: 70px;
        display: block;
    }
    .s-news-overview__item {
        margin: 0 !important;
        transition: var(--transition-base);
    }
    &:has(.s-news-overview__item:hover) .s-news-overview__item:not(:hover) {
        opacity: 0.6;
    }
}


.s-listing-news {
    padding: var(--section-padding);
    background-color: var(--color-white);
    .s-listing-news__title {
        font-size: var(--h2-size);
        flex: 1;
        color: var(--color-dark);
    }
    .s-listing-news__list {
        margin-top: 70px;
        padding: 0 !important;
    }
    .s-listing-news__item {
        margin: 0 !important;
        transition: var(--transition-base);
    }
    &:has(.s-listing-news__item:hover) .s-listing-news__item:not(:hover) {
        opacity: 0.6;
    }
}


.m-tile-news {
    margin-top: -2px;
    border-bottom: 2px solid var(--color-dark);
    border-top: 2px solid var(--color-dark);
    padding: 34px 0;
    display: flex;
    align-items: center;
    gap: 50px;
    .m-tile-news__title {
        width: 65%;
        padding-right: 50px;
        font-weight: 600;
        font-size: 28px;
        line-height: 1.35;
        color: var(--color-dark);
    }
    .m-tile-news__category {
        flex: 1;
        font-size: var(--p-size);
        font-weight: 600;
        line-height: 1.5;
        color: var(--color-dark);
        margin: 0 !important;
    }
    .m-tile-news__date {
        flex: 1;
        font-size: var(--p-size);
        font-weight: 400;
        line-height: 1.5;
        color: var(--color-dark);
        opacity: 1;
    }
    .btn {
        padding: 8px 14px;
        background: var(--color-white);
        border: 1px solid var(--color-dark);
        color: var(--color-dark);
        svg {
            width: 13px !important;
            height: 14px !important;
            transform: rotate(90deg) translate(0, 20%);
            margin: 0 !important;
            fill: var(--color-dark) !important;
        }
        &:hover {
            background: var(--color-primary);
            border-color: var(--color-primary);
            color: var(--color-white);
            svg {
                fill: var(--color-white) !important;
            }
        }
    }
    &:hover {
        .m-tile-news__title {
            text-decoration: none !important;
        }
        .btn {
            background: var(--color-primary);
            border-color: var(--color-primary);
            color: var(--color-white);
            svg {
                fill: var(--color-white) !important;
            }
        }
    }
    @media screen and (max-width: 767px) {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        .m-tile-news__title {
            width: 100%;
            padding-right: 0;
            font-size: var(--h3-size);
        }
    }
}


.s-text-image{
	padding: var(--section-padding);

	&.yellow{
		
	}
	&.blue{
		background: var(--color-primary-dark);
	    .s-text-image__text {
            h2, h3, p {
        	    color: var(--color-white) !important;
            }
        }
	}
	&.green {
		
	}
	&.dark-green {
		background: var(--color-dark-green);
	    .s-text-image__text {
            h2, h3, p {
        	    color: var(--color-white);
            }
        }
	}
	&.dark {
		background: var(--color-dark);
	    .s-text-image__text {
            h2, h3, p {
        	    color: var(--color-white);
            }
        }
	}


    &.image-position--left {
        .centered-content {
            flex-direction: row-reverse !important;
            @media screen and (max-width: 767px) {
                flex-direction: column !important;
            }
        }
    }
    &.image-position--right {
        .centered-content {
            flex-direction: row !important;
            @media screen and (max-width: 767px) {
                flex-direction: column !important;
            }
        }
    }


    .centered-content {
        display: flex;
        align-items: center;
        gap: 100px;
        width: 100%;
        > * {
            flex: 1;
        }
        @media screen and (max-width: 767px) {
            gap: 20px;
        }
    }

	.s-text-image__text{
		h2{
			font-size: var(--h2-size) !important;
			line-height: 1.25;
        	color: var(--color-dark);
            margin-bottom: 30px;
            + h3 {
                font-size: var(--h3-size);
                line-height: 1.33;
            }
		}
		h3{
            color: var(--color-dark) !important;
			font-size: 54px;
			line-height: 1.2;
            + p {
                margin-top: 30px;
            }
            @media screen and (max-width: 767px) {
                font-size: var(--h3-size) !important;
            }
		}
		h4{
            color: var(--color-dark);
			font-size: var(--h3-size);
			line-height: 1.33;
            + p {
                margin-top: 30px;
            }
		}
		p{
			font-size: var(--p-size);
			line-height: 1.5;
        	color: var(--color-dark);
		}
		.m-primary-cta {
            margin-top: 20px;
		}
	}

	.s-text-image__image{
        padding: 0 !important;
        img {
            width: 100%;
            height: auto;
            border-radius: var(--rounded-radius);
            aspect-ratio: 1 / 1;
            object-fit: cover;
            + img {
                margin-top: 80px;
            }
        }
	}


    &.s-sticky-text-images {
        .centered-content {
            align-items: normal !important;
        }
        .s-text-image__text {
            align-self: stretch !important;
            .content {
                position: sticky;
                top: 150px;
            }
        }
        .s-text-image__image img + img {
            @media screen and (max-width: 767px) {
                margin-top: 20px !important;
            }
        }
    }


    &.s-sticky-image-text {
        .centered-content {
            align-items: normal !important;
        }
        .s-text-image__image {
            align-self: stretch !important;
            .content {
                position: sticky;
                top: 150px;
            }
            img {
                aspect-ratio: auto;
            }
        }
    }
}

.m-wysiwyg {
    h2, h3, h4, p {
        color: var(--color-dark);
    }
    h2 {
        font-size: var(--h3-size);
        line-height: 1.333;
    }
    h3 {
        font-size: 28px;
        line-height: 1.35;
    }
}


.sustain-section {
    margin-top: 100px;
    .item-row {
        margin-right: -60px;
        margin-left: -60px;
        .col-md-6 {
            padding-right: 60px;
            padding-left: 60px;
            margin-bottom: 100px;
        }
    }
    .icon-box {
        padding-left: 0;
        h6 {
            font-size: 28px;
            line-height: 1.35;
            margin-top: 25px;
            margin-bottom: 15px;
        }
        img {
            position: static;
            width: 150px;
            height: auto;
        }
    }
}


.s-did-you-know {
    padding: var(--section-padding);
    background-color: var(--color-white);
    .s-did-you-know__head {
        display: flex;
        align-items: baseline;
        width: 100%;
        @media screen and (max-width: 767px) {
            flex-direction: column;
            align-items: flex-start;
            gap: 20px;
        }
    }
    .s-did-you-know__title {
        font-size: var(--h2-size);
        flex: 1;
        color: var(--color-dark);
    }
    .s-did-you-know__link-ctn {
        align-self: baseline;
    }
    .s-did-you-know__faqs {
        display: block;
        .s-did-you-know__faq-ctn {
            margin: 0 !important;
            padding: 0 !important;
        }
        .m-accordion__content {
            margin-top: 0;
        }
    }
}


.s-faq-intro {
    padding: var(--section-padding);
}

.s-listing-faq {
    background-color: var(--color-white);
    padding: var(--section-padding) !important;
    padding-top: 0 !important;
}

.m-accordion {
    width: 100% !important;
    border-bottom: 2px solid var(--color-dark) !important;
    border-top: 2px solid var(--color-dark) !important;
    margin-top: -2px;
    .m-accordion__toggler {
        padding-top: 34px !important;
        padding-bottom: 34px !important;
        color: var(--color-dark);
        span {
            bottom: auto;
            top: 50%;
            transform: translate(50%, -50%) !important;
        }
    }
    &.is-open, &.is-opening {
        .m-accordion__toggler span {
            transform: translate(50%, -50%) rotate(45deg) !important;
        }
    }
    .m-accordion__content {
        padding-left: 0 !important;
        margin-left: 0 !important;
        border: 0 !important;
        margin-bottom: 34px !important;
        color: var(--color-dark);
    }
}
.s-listing-faq .centered-content .m-accordion .m-accordion__toggler span {
    right: 15px;
    bottom: auto;
    transform: translate(50%, -50%) !important;
}
.s-listing-faq .centered-content .m-accordion.is-open .m-accordion__toggler span, .s-listing-faq .centered-content .m-accordion.is-opening .m-accordion__toggler span {
    transform: translate(50%, -50%) rotate(45deg) !important;
}


.s-p-l-column {
    padding: var(--section-padding);
    * {
        color: var(--color-dark) !important;
    }
    img {
        border-radius: var(--rounded-radius);
        width: 100%;
    }
}

.s-brands {
    padding: var(--section-padding);
    background-color: var(--color-light);
    .s-brands__title {
        font-size: var(--h2-size);
        line-height: 1.25;
        color: var(--color-dark);
        margin-bottom: 30px;
    }
    .s-brands__list {
        margin-top: 30px;
        display: flex;
        justify-content: center;
        align-items: stretch;
        gap: 50px;
        .s-brands__item {
            flex: 1;
            img {
                width: 100%;
                aspect-ratio: 1 / 1;
                object-fit: contain;
                @media screen and (max-width: 767px) {
                    width: 60%;
                    height: auto;
                    aspect-ratio: auto;
                    margin: 0 auto;
                }
            }
            p {
                font-size: 14px;
                line-height: 1.5;
                margin-top: 20px;
            }
        }
        @media screen and (max-width: 767px) {
            flex-direction: column;
            gap: 50px;
        }
    }
}

.s-classification {
    .s-classification__section__image {
        border-radius: var(--rounded-radius);
    }
}

.s-get-in-touch .s-get-in-touch__title-wrapper .s-get-in-touch__contact-infos p a {
    color: var(--color-primary);
}
.s-get-in-touch__title {
    color: var(--color-dark) !important;
}


.s-favourite-products {
    padding: var(--section-padding);
    background-color: var(--color-light); 
    .s-favourite-products__title {
        font-size: var(--h2-size);
        line-height: 1.25;
        color: var(--color-dark);
    }
    .s-favourite-products__wrapper {
        display: block;
    }
    .s-favourite-products__list-ctn {
        margin-top: 70px;
    }
    .s-favourite-products__list-ctn .m-tile-product__quantities .m-tile-product__quantity:not(:first-child) {
        color: var(--color-dark);
    }
}


.s-product-hero {
    background-color: var(--color-black) !important;
    background: linear-gradient(180deg, var(--color-black) 0%, var(--color-dark) 100%) !important;
    * {
        color: var(--color-white) !important;
    }
    svg, svg * {
        fill: var(--color-white) !important;
    }
    .s-product-hero__zoom {
        background-color: var(--color-primary);
        color: var(--color-white) !important;
    }
    .s-product-hero__content {
        padding-top: 50px;
    }
}

.s-product-details {
    .s-product-details__accordion-ctn {
        padding-bottom: 0;
        border: 0;
        margin-top: 0 !important;
    }
    .s-product-details__bulk-title {
        color: var(--color-dark);
    }
}


.s-recipes-more {
    padding: var(--section-padding);
    .s-recipes-more__title {
        font-size: var(--h2-size);
        line-height: 1.25;
        color: var(--color-dark);
    }
}


.m-tile-recipe {
    border-radius: var(--rounded-radius);
    overflow: hidden;
    .m-tile-recipe__info {
        color: var(--color-white);
    }
    svg {
        fill: var(--color-white) !important;
    }
    .no-touchevents & {
        &:hover, &:focus {
            .m-tile-recipe__content {
                background-color: var(--color-primary);
            }
            .m-tile-recipe__category, .m-tile-recipe__title{
                color: var(--color-white);
            }
        }
    }
}


.s-recipe-hero {
    background-color: var(--color-black) !important;
    background: linear-gradient(180deg, var(--color-black) 0%, var(--color-dark) 100%) !important;
    * {
        color: var(--color-white) !important;
    }
    svg, svg * {
        fill: var(--color-white) !important;
    }
    img {
        border-radius: var(--rounded-radius);
    }
}

.m-ingredients .m-ingredients__subtitle {
    color: var(--color-dark);
}
.m-ingredients .m-ingredients__item a {
    color: var(--color-primary);
    &:hover {
        color: var(--color-primary-dark) !important;
    }
}
.m-ingredients .m-ingredients__title,
.m-directions .m-directions__title,
.m-directions .m-directions__item,
.m-directions .m-directions__subtitle {
    color: var(--color-dark);
}

.m-search-bar .m-search-bar__form .m-search-bar__submit {
    background-color: var(--color-primary);
    svg, svg * {
        fill: var(--color-white) !important;
    }
}
.m-pagination .m-pagination__pages .m-pagination__page.current a {
    background-color: var(--color-primary) !important;
    span {
        color: var(--color-white);
    }
}
.no-touchevents .m-share:not(.is-small) .m-share__button:focus svg, .no-touchevents .m-share:not(.is-small) .m-share__button:hover svg,
.no-touchevents .m-post-heading .m-post-heading__print:focus svg, .no-touchevents .m-post-heading .m-post-heading__print:hover svg {
    fill: var(--color-primary) !important;
}


.s-image {
    padding: var(--section-padding);
    img {
        width: 100%;
        height: auto;
        border-radius: var(--rounded-radius);
    }
    + .s-listing-products {
        padding-top: 0;
    }
}


.s-listing-products {
    padding: var(--section-padding);
    .s-listing-products__title {
        font-size: var(--h2-size);
        line-height: 1.25;
        color: var(--color-dark);
        margin-bottom: 30px;
    }
    .s-listing-products__description-wrapper {
        display: flex;
        gap: 30px;
        @media screen and (max-width: 767px) {
            flex-direction: column;
            gap: 0;
        }
    }
    .s-listing-products__description {
        width: 50%;
        color: var(--color-dark);
        column-count: 1;
        @media screen and (max-width: 767px) {
            width: 100%;
        }
    }
    .s-listing-products__sort-by {
        &:first-child {
            margin-top: 0;
        }
    }
}


.s-color-and-flavor {
    padding: 0;
    /* background-color: var(--color-light); */
    .centered-content {
        padding: var(--section-padding);
        @media screen and (max-width: 767px) {
            padding-left: 30px;
            padding-right: 30px;
        }
    }
    &.s-text-image:not(:first-child) {
        .centered-content {
            padding-top: 0 !important;
        }
    }
    &.s-text-image:not(:last-child) {
        .centered-content {
            /* padding-bottom: 0 !important; */
        }
    }
    .s-text-image__text {
        h3 {
            font-size: 54px;
            line-height: 1.2;
            color: var(--color-dark);
            margin-bottom: 10px;
            @media screen and (max-width: 767px) {
                font-size: 36px;
            }
        }
        h4 {
            font-size: var(--p-size);
            line-height: 1.5;
            color: var(--color-primary);
            font-weight: 400;
            text-transform: uppercase;
        }
    }

    .s-color-and-flavor__specs {
        margin: 30px 0 40px;
        .spec {
            font-size: var(--p-size-lg);
            line-height: 1.5;
            color: var(--color-dark);
            margin: 0;
        }
    }
    p {
        margin: 20px 0;
    }
}
.s-color-and-flavor__sections-wrapper {
    margin-top: 0 !important;
    position: relative;
    background-color: var(--color-white);
    .s-color-and-flavor__cols {
        /* height: 100vh; */
        /* min-height: 800px; */
        display: flex;
        align-items: stretch;
        .s-color-and-flavor__col-1 {
            width: 50%;
            /* padding: 80px 80px 120px 80px; */
            padding: 40px 80px;
            display: flex;
            align-items: center;
            h3 {
                font-size: 54px;
                line-height: 1.2;
                color: var(--color-dark);
                margin-bottom: 10px;
                @media screen and (max-width: 767px) {
                    font-size: 36px;
                }
            }
            h4 {
                font-size: var(--p-size);
                line-height: 1.5;
                color: var(--color-primary);
                font-weight: 400;
                text-transform: uppercase;
            }
        }
        .s-color-and-flavor__col-2 {
            width: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 10px;
            img {
                width: 80%;
                height: 80%;
                object-fit: contain;
            }
        }
        

        &:nth-child(1) {
            .s-color-and-flavor__col-2 {
                background-color: #FFCB05;
            }
        }
        &:nth-child(2) {
            flex-direction: row-reverse;
            .s-color-and-flavor__col-2 {
                background-color: var(--color-primary);
            }
        }
        &:nth-child(3) {
            .s-color-and-flavor__col-2 {
                background-color: var(--color-primary-dark);
            }
        }
        &:nth-child(4) {
            flex-direction: row-reverse;
            .s-color-and-flavor__col-2 {
                background-color: var(--color-dark);
            }
        }

        @media screen and (max-width: 767px) {
            flex-direction: column !important;
            .s-color-and-flavor__col-1 {
                width: 100%;
                padding: 80px 30px;
            }
            .s-color-and-flavor__col-2 {
                width: 100%;
                padding: 30px 30px;
            }
            .s-color-and-flavor__col-2 {
                img {
                    width: 100%;
                    aspect-ratio: 1 / 1;
                    object-fit: contain;
                }
            }
        }
    }

    .nav {
        position: absolute;
        bottom: 80px;
        left: 80px;
        display: flex;
        gap: 20px;

        .btn {
            cursor: pointer;
            padding: 8px 14px;
            /* background: var(--color-white); */
            /* border: 1px solid var(--color-dark); */
            /* color: var(--color-dark); */
            svg {
                width: 13px !important;
                height: 14px !important;
                transform: rotate(90deg) translate(0, 20%);
                margin: 0 !important;
                fill: var(--color-white) !important;
            }
            &:hover {
                /* background: var(--color-primary); */
                /* border-color: var(--color-primary); */
                /* color: var(--color-white); */
                svg {
                    fill: var(--color-primary) !important;
                }
            }
            &.embla__prev {
                svg {
                    transform: rotate(-90deg) translate(0, 20%);
                }
            }
        }

    }
}


/* .embla__viewport {
  overflow: hidden;
}

.embla__container {
  display: flex;
  touch-action: pan-y pinch-zoom;
}

.embla__slide {
  flex: 0 0 100%;
  min-width: 0;
} */


.s-natural {
    padding: var(--section-padding);
    padding-bottom: 145px;
    background-color: var(--color-primary-dark);
    * {
        color: var(--color-white) !important;
    }
    @media screen and (max-width: 767px) {
        padding: var(--section-padding);
    }
}


.s-page-intro {
    padding: var(--section-padding);
    .s-image {
        padding-top: 0 !important;
    }
    .s-image + .s-text {
        padding-top: 0 !important;
    }
    .s-text {
        padding-bottom: 0 !important;
        &:first-child {
            padding-top: 0 !important; 
        }
    }
    @media screen and (max-width: 767px) {
        padding-left: 30px;
        padding-right: 30px;
    }
}


.s-benefits-jobs .s-benefits-jobs__wrapper .s-benefits-jobs__cta-wrapper {
    justify-content: center;
}


.s-newsletter__form {
    position: relative;
    .s-newsletter-form__success-message {
        position: absolute;
        pointer-events: none;
        color: var(--color-white) !important;
        font-size: var(--p-size-lg);
        width: 100%;
        text-align: center;
        top: 40px;
        opacity: 0;
        transition: opacity 0.5s ease;
    }

    &.success-form {
        .s-newsletter-form__success-message {
            opacity: 1 !important;
        }
    }
}