.journal-item {
    margin-bottom: 40px;
}

.h6 {
    font-size: var(--t-h6-fs);
    line-height: var(--t-h6-lh);
    letter-spacing: var(--t-h6-ls);
    margin: 0 0 20px -1px;
    font-weight: var(--heading-fw);
}

.c-heading {
    color: var(--s-headings)!important;
}

.h4 {
    font-size: var(--t-h4-fs);
    line-height: var(--t-h4-lh);
    letter-spacing: var(--t-h4-ls);
    margin: 0 0 24px -2px;
    font-family: var(--heading-ff);
    font-weight: var(--heading-fw);
    color: var(--s-headings);
}

.h5 {
    font-size: var(--t-h5-fs);
    line-height: var(--t-h5-lh);
    letter-spacing: var(--t-h5-ls);
    margin: 0 0 20px -2px;
    font-family: var(--heading-ff);
    font-weight: var(--heading-fw);
    color: var(--s-bg02-text);
}

.h3 {
    font-size: var(--t-h3-fs);
    line-height: var(--t-h3-lh);
    letter-spacing: var(--t-h3-ls);
    margin: 0 0 30px -3px;
    font-family: var(--heading-ff);
    font-weight: var(--heading-fw);
    color: var(--s-headings);
}

.h3 .highlight {
    color: var(--s-headings-gray);
}

.footer-widgets .h6 {
    margin-bottom: 31px;
}

footer#main-footer .h6 {
    color: var(--s-footer-title);
}

nav.language-switcher-mobile {
    display: none;
}

.team-heading {
    margin-bottom: 5px;
}

.no-scroll {
    overflow: hidden;
    height: 100vh; /* Locks viewport height to prevent background scroll */
}

.portfolio-card-content .h6 {
    color:black;
}

.dark-mode .portfolio-card-content .h6 {
    color:white;
}

/* TABLET: Landscape 
   ----------------- */
@media only screen and (max-width: 1420px) {
    /* --- Main Menu --- */
    .main-menu-popup {
        padding: 64px 48px 36px 48px;
        border-radius: 30px 0px 30px 30px;
    }
    .main-menu-list {
        gap: 24px;
    }
    .main-menu-popup .contact-info {
        padding: 64px 0 64px 0;
    }
    .menu-popup-footer {
        padding: 35px 0 0 0;
    }

    /* --- Typography --- */
    h1 {
        margin: 0 0 25px -5px;
    }
    h1.page-title,
    h1.post-title,
    h2 {
        margin: 0 0 25px -4px;
    }
    h3 {
        margin: 0 0 22px -2px;
    }
    h4 {
        margin: 0 0 18px -1px;
    }
    h5, h6 {
        margin: 0 0 15px -1px;
    }
    h2.elements-title {
        margin-bottom: 38px;
    }
    .shop-partners-grid h2 {
        margin-bottom: 60px;
    }
    .sub-title {
        margin-bottom: 21px;
    }
    .h5-logoslider {
        margin: 15px !important;
    }

    /* --- Content --- */
    main#content-area {
        padding-top: 205px;
    }

    /* --- Sections --- */
    .hero-section {
        padding-top: 61px;
    }
    .hero-section .page-title-row {
        gap: var(--d-gap);
    }
    .hero-section .page-title-wrap {
        max-width: 700px;
        min-width: 700px;
        width: auto;
    }
    .hero-section .page-title-wrap {
        /* max-width: 560px;
        min-width: 560px; */
        max-width: 100%;
        width: 100%;
    }
    .page-title-row.shop-page {
        align-items: stretch;
    }
    .shop-page .page-title-additional {
        flex-direction: column;
        justify-content: space-between;
        padding: 20px 0 0 0;
    }
    .shop-page .page-title-additional::before {
        top: -10px;
        max-width: 100%;
    }
    .page-title-additional {
        width: auto;
    }
    .intro-content {
        padding-top: 46px;
    }
    .partners-title {
        margin-bottom: 90px;
    }
    .partners-testimonials {
        padding: 85px 0 7px 0;
    }
    .section-title {
        margin-bottom: 48px;
    }
    .shop-page-content {
        margin: 0 0 96px 0;
    }
    .shop-partners {
        padding: 56px 0 3px 0;
    }

    /* --- Elements --- */
    .iconbox-item > i {
        margin-bottom: 75px;
    }
    .portfolio-button-wrap {
        padding: 51px 0 7px 0;
    }
    .marquee-on-scroll {
        padding-top: 63px;
        margin-bottom: -42px;
    }
    .marquee-on-scroll-inner {
        font-size: 248px;
    }
    .togglers-list {
        padding-top: 12px;
    }
    .toggled-item {
        padding: 32px 0 35px 0;
    }
    .counter-number {
        font-size: 90px;
        margin-bottom: 10px;
    }
    .counter-label {
        font-size: 13px;
        line-height: 24px;
        padding-left: 5px;
    }
    ul.team-socials {
        opacity: 1;
    }
    .testimonial-author {
        padding-top: 20px;
    }
    .portfolio-card-image {
        margin-bottom: 13px;
    }
    .journal-item-image {
        margin-bottom: 18px;
    }
    .journal-item span {
        margin-bottom: 7px;
    }
    ol.ordered-list-h5 li:not(:last-child) {
        margin-bottom: 34px;
    }
    .offer-banner {
        padding: 0 0 15px 30px;
    }
    .post-intro p {
        margin-bottom: 50px;
    }
    .post-image {
        margin-bottom: 45px;
    }
    .post-button {
        padding-top: 37px;
    }
    .recent-posts .section-title {
        margin-bottom: 42px;
    }

    /* --- Footer --- */
    .footer-widgets {
        padding: 108px 0 54px 0;
    }
    .footer-widgets h2 {
        font-size: 82px;
    }
    .footer-widgets > div:not(:first-child) {
        padding-top: 136px;
    }
    .footer-widgets > div.footer-info {
        width: 40%;
    }
    .footer-widgets > div.footer-contacts {
        padding-right: 45px;
    }
    .footer-menu ul li {
        padding: 1px 0 16px 0;
    }
    .copyright {
        padding: 30px 0 33px 0;
    }
}

/* TABLET: Portrait
   ---------------- */
@media only screen and (max-width: 1020px) {

    /* --- Alignment --- */
    body .tp-align-left {
        text-align: left;
    }
    body .tp-align-center {
        text-align: center;
    }
    body .tp-align-right {
        text-align: right;
    }

    /* --- Flexbox --- */
    /* Reset Defaults */
    .flex-row {
        flex-wrap: wrap;
    }
    .flex-row > .flex-col-1,
    .flex-row > .flex-col-2,
    .flex-row > .flex-col-3,
    .flex-row > .flex-col-4,
    .flex-row > .flex-col-5,
    .flex-row > .flex-col-6,
    .flex-row > .flex-col-7,
    .flex-row > .flex-col-8,
    .flex-row > .flex-col-9,
    .flex-row > .flex-col-10,
    .flex-row > .flex-col-11,
    .flex-row > .flex-col-12 {
        width: calc(100% - var(--d-gap));
    }
    .flex-row.flex-no-gap > .flex-col-1,
    .flex-row.flex-no-gap > .flex-col-2,
    .flex-row.flex-no-gap > .flex-col-3,
    .flex-row.flex-no-gap > .flex-col-4,
    .flex-row.flex-no-gap > .flex-col-5,
    .flex-row.flex-no-gap > .flex-col-6,
    .flex-row.flex-no-gap > .flex-col-7,
    .flex-row.flex-no-gap > .flex-col-8,
    .flex-row.flex-no-gap > .flex-col-9,
    .flex-row.flex-no-gap > .flex-col-10,
    .flex-row.flex-no-gap > .flex-col-11,
    .flex-row.flex-no-gap > .flex-col-12 {
        width: 100%;
    }
    .flex-row > .flex-offset-1,
    .flex-row > .flex-offset-2,
    .flex-row > .flex-offset-3,
    .flex-row > .flex-offset-4,
    .flex-row > .flex-offset-5,
    .flex-row > .flex-offset-6,
    .flex-row > .flex-offset-7,
    .flex-row > .flex-offset-8,
    .flex-row > .flex-offset-9,
    .flex-row > .flex-offset-10,
    .flex-row > .flex-offset-11,
    .flex-row > .flex-offset-12 {
        margin-left: calc(0.5 * var(--d-gap));
    }

    /* TP Values */
    .flex-tp-no-gap,
    .flex-row.flex-tp-no-gap {
        margin: 0 auto;
        width: 100%;
    }
    .flex-tp-no-gap,
    .flex-row.flex-tp-no-gap > div {
        margin: 0;
    }

    /* Vertical Align */
    .tp-v-align-top {
        align-items: flex-start;
    }
    .tp-v-align-middle {
        align-items: center;
    }
    .tp-v-align-bottom {
        align-items: flex-end;
    }

    /* Directions */
    .flex-row.flex-tp-row {
        flex-direction: row;
    }
    .flex-row.flex-tp-row-reverse {
        flex-direction: row-reverse;
    }
    .flex-row.flex-tp-column {
        flex-direction: column;
    }
    .flex-row.flex-tp-column-reverse {
        flex-direction: column-reverse;
    }

    /* Column Sizes */
    .flex-row {
        flex-wrap: wrap;
    }
    .flex-row > .flex-tp-col-1 {
        width: calc(8.333% - var(--d-gap));
    }
    .flex-row > .flex-tp-col-16,
    .flex-row > .flex-tp-col-2 {
        width: calc(16.666% - var(--d-gap));
    }
    .flex-row > .flex-tp-col-25,
    .flex-row > .flex-tp-col-3 {
        width: calc(25% - var(--d-gap));
    }
    .flex-row > .flex-tp-col-33,
    .flex-row > .flex-tp-col-4 {
        width: calc(33.333% - var(--d-gap));
    }
    .flex-row > .flex-tp-col-5 {
        width: calc(41.666% - var(--d-gap));
    }
    .flex-row > .flex-tp-col-50,
    .flex-row > .flex-tp-col-6 {
        width: calc(50% - var(--d-gap));
    }
    .flex-row > .flex-tp-col-7 {
        width: calc(58.333% - var(--d-gap));
    }
    .flex-row > .flex-tp-col-66,
    .flex-row > .flex-tp-col-8 {
        width: calc(66.666% - var(--d-gap));
    }
    .flex-row > .flex-tp-col-9 {
        width: calc(75% - var(--d-gap));
    }
    .flex-row > .flex-tp-col-10 {
        width: calc(83.333% - var(--d-gap));
    }
    .flex-row > .flex-tp-col-11 {
        width: calc(91.666% - var(--d-gap));
    }
    .flex-row > .flex-tp-col-100,
    .flex-row > .flex-tp-col-12 {
        width: calc(100% - var(--d-gap));
    }
    
    .flex-row.flex-tp-no-gap > .flex-col-1,
    .flex-row.flex-no-gap > .flex-tp-col-1,
    .flex-row.flex-tp-no-gap > .flex-tp-col-1 {
        width: 8.333%;
    }
    .flex-row.flex-tp-no-gap > .flex-col-16,
    .flex-row.flex-no-gap > .flex-tp-col-16,
    .flex-row.flex-tp-no-gap > .flex-tp-col-16,
    .flex-row.flex-tp-no-gap > .flex-col-2,
    .flex-row.flex-no-gap > .flex-tp-col-2,
    .flex-row.flex-tp-no-gap > .flex-tp-col-2 {
        width: 16.666%;
    }
    .flex-row.flex-tp-no-gap > .flex-col-25,
    .flex-row.flex-no-gap > .flex-tp-col-25,
    .flex-row.flex-tp-no-gap > .flex-tp-col-25,
    .flex-row.flex-tp-no-gap > .flex-col-3,
    .flex-row.flex-no-gap > .flex-tp-col-3,
    .flex-row.flex-tp-no-gap > .flex-tp-col-3 {
        width: 25%;
    }
    .flex-row.flex-tp-no-gap > .flex-col-33,
    .flex-row.flex-no-gap > .flex-tp-col-33,
    .flex-row.flex-tp-no-gap > .flex-tp-col-33,
    .flex-row.flex-tp-no-gap > .flex-col-4,
    .flex-row.flex-no-gap > .flex-tp-col-4,
    .flex-row.flex-tp-no-gap > .flex-tp-col-4 {
        width: 33.333%;
    }
    .flex-row.flex-tp-no-gap > .flex-col-5,
    .flex-row.flex-no-gap > .flex-tp-col-5,
    .flex-row.flex-tp-no-gap > .flex-tp-col-5 {
        width: 41.666%;
    }
    .flex-row.flex-tp-no-gap > .flex-col-50,
    .flex-row.flex-no-gap > .flex-tp-col-50,
    .flex-row.flex-tp-no-gap > .flex-tp-col-50,
    .flex-row.flex-tp-no-gap > .flex-col-6,
    .flex-row.flex-no-gap > .flex-tp-col-6,
    .flex-row.flex-tp-no-gap > .flex-tp-col-6 {
        width: 50%;
    }
    .flex-row.flex-tp-no-gap > .flex-col-7,
    .flex-row.flex-no-gap > .flex-tp-col-7,
    .flex-row.flex-tp-no-gap > .flex-tp-col-7 {
        width: 58.333%;
    }
    .flex-row.flex-tp-no-gap > .flex-col-66,
    .flex-row.flex-no-gap > .flex-tp-col-66,
    .flex-row.flex-tp-no-gap > .flex-tp-col-66,
    .flex-row.flex-tp-no-gap > .flex-col-8,
    .flex-row.flex-no-gap > .flex-tp-col-8,
    .flex-row.flex-tp-no-gap > .flex-tp-col-8 {
        width: 66.666%;
    }
    .flex-row.flex-tp-no-gap > .flex-col-9,
    .flex-row.flex-no-gap > .flex-tp-col-9,
    .flex-row.flex-tp-no-gap > .flex-tp-col-9 {
        width: 75%;
    }
    .flex-row.flex-tp-no-gap > .flex-col-10,
    .flex-row.flex-no-gap > .flex-tp-col-10,
    .flex-row.flex-tp-no-gap > .flex-tp-col-10 {
        width: 83.333%;
    }
    .flex-row.flex-tp-no-gap > .flex-col-11,
    .flex-row.flex-no-gap > .flex-tp-col-11,
    .flex-row.flex-tp-no-gap > .flex-tp-col-11 {
        width: 91.666%;
    }
    .flex-row.flex-tp-no-gap > .flex-col-100,
    .flex-row.flex-no-gap > .flex-tp-col-100,
    .flex-row.flex-tp-no-gap > .flex-tp-col-100,
    .flex-row.flex-tp-no-gap > .flex-col-12,
    .flex-row.flex-no-gap > .flex-tp-col-12,
    .flex-row.flex-tp-no-gap > .flex-tp-col-12 {
        width: 100%;
    }
    
    /* Column Offsets */
    .flex-row > .flex-tp-offset-0 {
        margin-left: calc(0.5 * var(--d-gap));
    }
    .flex-row > .flex-tp-offset-1 {
        margin-left: calc(0.5 * var(--d-gap) + 8.333%);
    }
    .flex-row > .flex-tp-offset-2 {
        margin-left: calc(0.5 * var(--d-gap) + 16.666%);
    }
    .flex-row > .flex-tp-offset-3 {
        margin-left: calc(0.5 * var(--d-gap) + 25%);
    }
    .flex-row > .flex-tp-offset-4 {
        margin-left: calc(0.5 * var(--d-gap) + 33.333%);
    }
    .flex-row > .flex-tp-offset-5 {
        margin-left: calc(0.5 * var(--d-gap) + 41.666%);
    }
    .flex-row > .flex-tp-offset-6 {
        margin-left: calc(0.5 * var(--d-gap) + 50%);
    }
    .flex-row > .flex-tp-offset-7 {
        margin-left: calc(0.5 * var(--d-gap) + 58.333%);
    }
    .flex-row > .flex-tp-offset-8 {
        margin-left: calc(0.5 * var(--d-gap) + 66.666%);
    }
    .flex-row > .flex-tp-offset-9 {
        margin-left: calc(0.5 * var(--d-gap) + 75%);
    }
    .flex-row > .flex-tp-offset-10 {
        margin-left: calc(0.5 * var(--d-gap) + 83.333%);
    }
    .flex-row > .flex-tp-offset-11 {
        margin-left: calc(0.5 * var(--d-gap) + 91.666%);
    }
    .flex-row > .flex-tp-offset-100,
    .flex-row > .flex-tp-offset-12 {
        margin-left: calc(0.5 * var(--d-gap) + 100%);
    }

    /* --- Grid --- */
    .flex-row > div[class*='tp-grid'],
    [class*='tp-grid'] {
        display: grid;
        grid-column-gap: var(--d-gap);
        grid-row-gap: var(--d-gap);
    }
    .tp-grid-1col {
        grid-template-columns: repeat(1, 1fr);
    }
    .tp-grid-2cols {
        grid-template-columns: repeat(2, 1fr);
    }
    .tp-grid-3cols {
        grid-template-columns: repeat(3, 1fr);
    }
    .tp-grid-4cols {
        grid-template-columns: repeat(4, 1fr);
    }
    .tp-grid-5cols {
        grid-template-columns: repeat(5, 1fr);
    }
    .tp-grid-6cols {
        grid-template-columns: repeat(6, 1fr);
    }

    /* --- Main Menu --- */
    .main-menu-popup {
        width: calc(100% - 2 * var(--d-fw-spacing));
    }

    /* --- Typography --- */
    .sub-title {
        margin-bottom: 15px;
    }

    /* --- Sections --- */
    section.hero-section {
        padding-top: 60px;
    }
    .hero-section .page-title-row {
        flex-direction: column;
    }
    .page-title-row {
        margin-bottom: calc(var(--d-section-gap) - 37px);
    }
    .hero-section .page-title-row > div {
        width: 100%;
        max-width: 100%;
    }
    .shop-page .page-title-additional::before {
        top: 0;
    }
    .hero-section .page-title-additional {
        padding-top: 30px;
    }
    .page-title-additional hr {
        display: none;
    }
    .shop-page .page-title-additional::before {
        display: none;
    }
    .shop-page .page-title-additional {
        flex-direction: row;
        justify-content: space-between;
    }
    .section-title:not(.flex-tp-row) h2 {
        margin-bottom: 25px;
    }
    .flex-row.partners-title {
        margin-bottom: 90px;
    }
    .shop-page-content {
        margin-bottom: 60px;
    }
    
    /* --- Elements --- */
    ul.stylized-list {
        padding-left: 0;
    }
    .marquee-on-scroll-inner {
        font-size: 165px;
    }
    .toggled-item.flex-row {
        flex-direction: row;
        margin-top: 0;
        margin-bottom: 0;
    }
    .toggled-item.flex-row > div {
        margin-top: 0;
        margin-bottom: 0;
    }
    .toggled-item.flex-row .flex-col-4:first-child {
        width: 54px;
    }
    .toggled-item.flex-row .flex-col-6  {
        width: calc(100% - 108px - 3 * var(--d-gap));
    }
    .toggled-item.flex-row .flex-col-2:last-child {
        width: 54px;
    }
    .toggled-item.flex-row .flex-col-2 {
        padding-top: 7px;
    }
    .partners-grid[class*='tp-grid'] {
        grid-column-gap: 0;
        grid-row-gap: 0;
    }
    .carousel-wrapper {
        --items-view: 2;
    }
    .shop-partners .align-right {
        padding-bottom: 8px;
    }
    .offer-banner a {
        padding: 9px 8px 13px 18px;
        width: calc(100% - 40px);
        right: auto;
        left: 0;
    }
    .partners-grid img {
        width: 50%;
    }
    .partners-testimonials {
        padding: 70px 0 0 0;
    }
    .partners-testimonials h5 {
        margin-bottom: 15px;
    }
    .recent-posts {
        padding-top: 0;
    }
    
    /* --- Footer --- */
    .footer-widgets {
        flex-wrap: wrap;
    }
    .footer-widgets > div.footer-info {
        width: 100%;
        padding-right: 0;
    }
    .footer-widgets > div:not(:first-child) {
        padding-top: calc(0.5 * var(--d-section-gap));
    }
    .footer-widgets > div.footer-menu {
        width: 33%;
    }
    .footer-widgets > div.footer-contacts {
        width: 50%;
        padding-right: calc(3 * var(--d-gap));
    }
}

/* MOBILE PHONES
   ------------- */
   @media only screen and (max-width: 739px) {

    nav.language-switcher-mobile {
        display: block;
    }

    .iconbox-footer {
        padding: 14px 0 0 0;
    }

    a.menu-close {
        position: absolute;
        top: -60px;
        right: 0;
        z-index: 100;
    }

    body {
        font-size: 16px;
    }

    .further-cases-title {
        margin-bottom: 20px!important;
    }
    /* --- Alignment --- */
    html .m-align-left {
        text-align: left;
    }
    html .m-align-center {
        text-align: center;
    }
    html .m-align-right {
        text-align: right;
    }

    /* --- Flexbox --- */
    /* Reset Default Grid */
    .flex-row {
        flex-wrap: wrap;
    }
    .flex-row > .flex-tp-col-1,
    .flex-row > .flex-tp-col-2,
    .flex-row > .flex-tp-col-3,
    .flex-row > .flex-tp-col-4,
    .flex-row > .flex-tp-col-5,
    .flex-row > .flex-tp-col-6,
    .flex-row > .flex-tp-col-7,
    .flex-row > .flex-tp-col-8,
    .flex-row > .flex-tp-col-9,
    .flex-row > .flex-tp-col-10,
    .flex-row > .flex-tp-col-11,
    .flex-row > .flex-tp-col-12 {
        width: calc(100% - var(--d-gap));
    }
    .flex-row.flex-no-gap > .flex-tp-col-1,
    .flex-row.flex-no-gap > .flex-tp-col-2,
    .flex-row.flex-no-gap > .flex-tp-col-3,
    .flex-row.flex-no-gap > .flex-tp-col-4,
    .flex-row.flex-no-gap > .flex-tp-col-5,
    .flex-row.flex-no-gap > .flex-tp-col-6,
    .flex-row.flex-no-gap > .flex-tp-col-7,
    .flex-row.flex-no-gap > .flex-tp-col-8,
    .flex-row.flex-no-gap > .flex-tp-col-9,
    .flex-row.flex-no-gap > .flex-tp-col-10,
    .flex-row.flex-no-gap > .flex-tp-col-11,
    .flex-row.flex-no-gap > .flex-tp-col-12 {
        width: 100%;
    }
    .flex-row > .flex-tp-offset-1,
    .flex-row > .flex-tp-offset-2,
    .flex-row > .flex-tp-offset-3,
    .flex-row > .flex-tp-offset-4,
    .flex-row > .flex-tp-offset-5,
    .flex-row > .flex-tp-offset-6,
    .flex-row > .flex-tp-offset-7,
    .flex-row > .flex-tp-offset-8,
    .flex-row > .flex-tp-offset-9,
    .flex-row > .flex-tp-offset-10,
    .flex-row > .flex-tp-offset-11,
    .flex-row > .flex-tp-offset-12 {
        margin-left: calc(0.5 * var(--d-gap));
    }

    .flex-m-no-gap,
    .flex-row.flex-m-no-gap {
        margin: 0 auto;
        width: 100%;
    }
    .flex-m-no-gap,
    .flex-row.flex-m-no-gap > div {
        margin: 0;
    }

    /* Vertical Align */
    .m-v-align-top {
        align-items: flex-start;
    }
    .m-v-align-middle {
        align-items: center;
    }
    .m-v-align-bottom {
        align-items: flex-end;
    }

    /* Directions */
    .flex-m-row,
    .flex-row > div.flex-m-row,
    .flex-row.flex-m-row {
        flex-direction: row;
    }
    .flex-m-row-reverse,
    .flex-row > div.flex-m-row-reverse,
    .flex-row.flex-m-row-reverse {
        flex-direction: row-reverse;
    }
    .flex-m-column,
    .flex-row > div.flex-m-column,
    .flex-row.flex-m-column {
        flex-direction: column;
    }
    .flex-m-column-reverse,
    .flex-row div.flex-m-column-reverse,
    .flex-row.flex-m-column-reverse {
        flex-direction: column-reverse;
    }

    .flex-row > .flex-m-col-1 {
        width: calc(8.333% - var(--d-gap));
    }
    .flex-row > .flex-m-col-16,
    .flex-row > .flex-m-col-2 {
        width: calc(16.666% - var(--d-gap));
    }
    .flex-row > .flex-m-col-25,
    .flex-row > .flex-m-col-3 {
        width: calc(25% - var(--d-gap));
    }
    .flex-row > .flex-m-col-33,
    .flex-row > .flex-m-col-4 {
        width: calc(33.333% - var(--d-gap));
    }
    .flex-row > .flex-m-col-5 {
        width: calc(41.666% - var(--d-gap));
    }
    .flex-row > .flex-m-col-50,
    .flex-row > .flex-m-col-6 {
        width: calc(50% - var(--d-gap));
    }
    .flex-row > .flex-m-col-7 {
        width: calc(58.333% - var(--d-gap));
    }
    .flex-row > .flex-m-col-66,
    .flex-row > .flex-m-col-8 {
        width: calc(66.666% - var(--d-gap));
    }
    .flex-row > .flex-m-col-9 {
        width: calc(75% - var(--d-gap));
    }
    .flex-row > .flex-m-col-10 {
        width: calc(83.333% - var(--d-gap));
    }
    .flex-row > .flex-m-col-11 {
        width: calc(91.666% - var(--d-gap));
    }
    .flex-row > .flex-m-col-100,
    .flex-row > .flex-m-col-12 {
        width: calc(100% - var(--d-gap));
    }
    
    .flex-row.flex-m-no-gap > .flex-col-1,
    .flex-row.flex-no-gap > .flex-m-col-1,
    .flex-row.flex-m-no-gap > .flex-m-col-1 {
        width: 8.333%;
    }
    .flex-row.flex-m-no-gap > .flex-col-16,
    .flex-row.flex-no-gap > .flex-m-col-16,
    .flex-row.flex-m-no-gap > .flex-m-col-16,
    .flex-row.flex-m-no-gap > .flex-col-2,
    .flex-row.flex-no-gap > .flex-m-col-2,
    .flex-row.flex-m-no-gap > .flex-m-col-2 {
        width: 16.666%;
    }
    .flex-row.flex-m-no-gap > .flex-col-25,
    .flex-row.flex-no-gap > .flex-m-col-25,
    .flex-row.flex-m-no-gap > .flex-m-col-25,
    .flex-row.flex-m-no-gap > .flex-col-3,
    .flex-row.flex-no-gap > .flex-m-col-3,
    .flex-row.flex-m-no-gap > .flex-m-col-3 {
        width: 25%;
    }
    .flex-row.flex-m-no-gap > .flex-col-33,
    .flex-row.flex-no-gap > .flex-m-col-33,
    .flex-row.flex-m-no-gap > .flex-m-col-33,
    .flex-row.flex-m-no-gap > .flex-col-4,
    .flex-row.flex-no-gap > .flex-m-col-4,
    .flex-row.flex-m-no-gap > .flex-m-col-4 {
        width: 33.333%;
    }
    .flex-row.flex-m-no-gap > .flex-col-5,
    .flex-row.flex-no-gap > .flex-m-col-5,
    .flex-row.flex-m-no-gap > .flex-m-col-5 {
        width: 41.666%;
    }
    .flex-row.flex-m-no-gap > .flex-col-50,
    .flex-row.flex-no-gap > .flex-m-col-50,
    .flex-row.flex-m-no-gap > .flex-m-col-50,
    .flex-row.flex-m-no-gap > .flex-col-6,
    .flex-row.flex-no-gap > .flex-m-col-6,
    .flex-row.flex-m-no-gap > .flex-m-col-6 {
        width: 50%;
    }
    .flex-row.flex-m-no-gap > .flex-col-7,
    .flex-row.flex-no-gap > .flex-m-col-7,
    .flex-row.flex-m-no-gap > .flex-m-col-7 {
        width: 58.333%;
    }
    .flex-row.flex-m-no-gap > .flex-col-66,
    .flex-row.flex-no-gap > .flex-m-col-66,
    .flex-row.flex-m-no-gap > .flex-m-col-66,
    .flex-row.flex-m-no-gap > .flex-col-8,
    .flex-row.flex-no-gap > .flex-m-col-8,
    .flex-row.flex-m-no-gap > .flex-m-col-8 {
        width: 66.666%;
    }
    .flex-row.flex-m-no-gap > .flex-col-9,
    .flex-row.flex-no-gap > .flex-m-col-9,
    .flex-row.flex-m-no-gap > .flex-m-col-9 {
        width: 75%;
    }
    .flex-row.flex-m-no-gap > .flex-col-10,
    .flex-row.flex-no-gap > .flex-m-col-10,
    .flex-row.flex-m-no-gap > .flex-m-col-10 {
        width: 83.333%;
    }
    .flex-row.flex-m-no-gap > .flex-col-11,
    .flex-row.flex-no-gap > .flex-m-col-11,
    .flex-row.flex-m-no-gap > .flex-m-col-11 {
        width: 91.666%;
    }
    .flex-row.flex-m-no-gap > .flex-col-100,
    .flex-row.flex-no-gap > .flex-m-col-100,
    .flex-row.flex-m-no-gap > .flex-m-col-100,
    .flex-row.flex-m-no-gap > .flex-col-12,
    .flex-row.flex-no-gap > .flex-m-col-12,
    .flex-row.flex-m-no-gap > .flex-m-col-12 {
        width: 100%;
    }
    
    /* Column Offsets */
    .flex-row > .flex-m-offset-0 {
        margin-left: calc(0.5 * var(--d-gap));
    }
    .flex-row > .flex-m-offset-1 {
        margin-left: calc(0.5 * var(--d-gap) + 8.333%);
    }
    .flex-row > .flex-m-offset-2 {
        margin-left: calc(0.5 * var(--d-gap) + 16.666%);
    }
    .flex-row > .flex-m-offset-3 {
        margin-left: calc(0.5 * var(--d-gap) + 25%);
    }
    .flex-row > .flex-m-offset-4 {
        margin-left: calc(0.5 * var(--d-gap) + 33.333%);
    }
    .flex-row > .flex-m-offset-5 {
        margin-left: calc(0.5 * var(--d-gap) + 41.666%);
    }
    .flex-row > .flex-m-offset-6 {
        margin-left: calc(0.5 * var(--d-gap) + 50%);
    }
    .flex-row > .flex-m-offset-7 {
        margin-left: calc(0.5 * var(--d-gap) + 58.333%);
    }
    .flex-row > .flex-m-offset-8 {
        margin-left: calc(0.5 * var(--d-gap) + 66.666%);
    }
    .flex-row > .flex-m-offset-9 {
        margin-left: calc(0.5 * var(--d-gap) + 75%);
    }
    .flex-row > .flex-m-offset-10 {
        margin-left: calc(0.5 * var(--d-gap) + 83.333%);
    }
    .flex-row > .flex-m-offset-11 {
        margin-left: calc(0.5 * var(--d-gap) + 91.666%);
    }
    .flex-row > .flex-m-offset-100,
    .flex-row > .flex-m-offset-12 {
        margin-left: calc(0.5 * var(--d-gap) + 100%);
    }

    /* --- Grid --- */
    .grid-container-1col,
    .grid-container-2cols,
    .grid-container-3cols,
    .grid-container-4cols,
    .grid-container-5cols,
    .grid-container-6cols {
        grid-template-columns: repeat(1, 1fr);   
    }

    .stg-row > div[class*='m-grid'],
    [class*='m-grid'] {
        display: grid;
        grid-column-gap: var(--stg-gap);
        grid-row-gap: var(--stg-gap);
    }
    .m-grid-1col {
        grid-template-columns: repeat(1, 1fr);
    }
    .m-grid-2cols {
        grid-template-columns: repeat(2, 1fr);
    }
    .m-grid-3cols {
        grid-template-columns: repeat(3, 1fr);
    }
    .m-grid-4cols {
        grid-template-columns: repeat(4, 1fr);
    }
    .m-grid-5cols {
        grid-template-columns: repeat(5, 1fr);
    }
    .m-grid-6cols {
        grid-template-columns: repeat(6, 1fr);
    }

    /* --- Header --- */
    header#main-header {
        position: fixed;
    }
    header#main-header::before {
        transition: opacity 0.3s, background-color 0.3s;
    }
    .show-menu header#main-header::before {
        box-shadow: unset;
    }
    header#main-header.content-reached::before {
        opacity: 1;
    }
    header#main-header.sticky-appearance {
        transform: unset;
    }
    .logo {
        display: block;
        width: 60px;
    }
    .header-inner,
    .sticky-appearance .header-inner {
        padding: 18px 20px 18px 20px;
    }
    .right-part {
        transform: translate(0);
        gap: 29px;
    }
    .sticky-appearance .logo {
        transform: scale(1);
    }

    /* --- Main Menu --- */
    .menu-overlay {
        z-index: 97;
    }
    .show-menu .menu-overlay {
        opacity: 1;
    }
    .main-menu-popup {
        border-radius: 0;
        position: fixed;
        left: 0;
        top: 0;
        bottom: 0;
        right: 0;
        width: 100%;
        z-index: 100;
        padding: var(--header-height) 20px 50px 20px;
        background: transparent;
        transform: scale(1);
        contain: paint;
    }
    .menu-popup-inner {
        height: 100%;
        flex-direction: column;
        transition: transform 0.3s, opacity 0.3s;
    }
    .menu-popup-inner {
        transform: translateY(-40px);
    }
    .show-menu .menu-popup-inner {
        transform: translateY(0);
        display: flex;
        justify-content: space-between;
    }
    /* .main-menu-popup .menu-close {
        display: none;
    } */
    .main-menu-popup .contact-info > div:not(.contact-links) {
        display: none;
    }
    .main-menu-popup .menu-popup-footer {
        display: none;
    }
    .main-menu-popup .contact-links i {
        display: none;
    }
    .main-menu-popup .main-menu {
        /* height: calc(100% - 150px); */
        display: flex;
        align-items: center;
        overflow: hidden;
        scrollbar-width: none;
        margin-top: 40px;
    }
    .main-menu-popup .main-menu::-webkit-scrollbar {
        width: 0;
        height: 0;
    }
    .main-menu-popup .contact-info {
        padding: 50px 0 0 0;
    }
    .main-menu-popup .contact-info .title, .language-switcher-mobile {
        font-size: 21px;
        line-height: 36px;
    }
    nav.language-switcher-mobile {
        color: var(--s-headings);
    }
    .dark-mode nav.language-switcher-mobile {
        color: white;
    }
    .main-menu-popup .contact-info > div:nth-child(odd) {
        width: 100%;
    }
    .main-menu-popup .contact-info > div {
        margin: 0;
    }

    /* --- Content --- */
    main#content-area {
        padding-top: 133px;
    }
    .page-background img {
        height: 100%;
        width: auto;
    }

    /* --- Typography --- */
    .text-xl {
        --p-gap: var(--t-content-xl-lh);
    }
    button i, 
    a.button i {
        margin-left: 20px;
    }
    h1 {
        margin: 0 0 18px -4px;
    }
    h1.page-title,
    h1.post-title,
    h2 {
        margin: 0 0 18px -3px;
    }
    h3 {
        margin: 0 0 20px -2px;
    }
    h4 {
        margin: 0 0 18px -1.5px;
    }
    h5 {
        margin: 0 0 18px -1.5px;
    }
    h6 {
        margin: 0 0 18px -1px;
    }
    
    /* --- Sections --- */
    section.hero-section, 
    .is-fullwidth {
        width: calc(100% + 2 * var(--d-fw-spacing));
        margin-left: calc(-1 * var(--d-fw-spacing));
        margin-right: calc(-1 * var(--d-fw-spacing));
        padding-left: var(--d-fw-spacing);
        padding-right: var(--d-fw-spacing);
    }
    section.hero-section {
        padding-top: 40px;
    }    
    .hero-section .page-title-wrap {
        min-width: 0;
    }
    .shop-page .page-title-wrap {
        padding-bottom: 0px;
    }
    .hero-section .page-title-additional {
        padding-top: 4px;
    }
    .hero-section .page-title-additional hr {
        display: none;
    }
    .shop-page .page-title-additional {
        flex-direction: column;
        align-items: flex-start;
    }
    .shop-page .page-title-additional p {
        margin-bottom: 27px;
    }
    .shop-page .page-title-additional .page-title-button {
        align-self: center;
        padding-top: 30px;
    }
    .page-title-row {
        margin-bottom: calc(var(--d-section-gap) - 27px);
    }
    .shop-ordered-list-wrap {
        padding-top: 24px;
    }
    ul.stylized-list {
        margin-bottom: 30px;
    }
    ol.ordered-list-h5 {
        padding-top: 30px;
        padding-left: 9px;
    }
    .intro-content {
        padding-top: 20px;
    }
    .flex-row.section-title {
        margin-bottom: 30px;
    }
    .recent-posts h2 {
        margin-bottom: 18px;
    }

    /* --- Elements --- */
    .accordeon-item {
        padding: 15px 20px 16px 20px;
    }
    .accordeon-content {
        padding: 20px 0 10px 0;
        margin: 16px 0 0 0;
    }
    .content-image {
        margin-bottom: 35px;
    }
    .flex-col-6:not(:first-child) > .testimonial-item {
        padding-top: 30px;
    }
    .shop-partners-list {
        width: 100%;
        max-width: 100%;
        display: block;
    }
    .shop-partners .swiper-wrapper {
        display: block;
        transform: none !important;
    }
    .shop-partners .swiper-slide {
        width: 100% !important;
        display: block;
        margin-bottom: 45px;
        text-align: center;
    }
    .shop-partners .swiper-slide a,
    .shop-partners .swiper-slide span {
        display: flex;
        justify-content: center;
        width: 100%;
    }
    .shop-partners .swiper-slide:last-child {
        margin-bottom: 0;
    }
    .shop-partners .swiper-slide.swiper-slide-duplicate {
        display: none !important;
    }
    .shop-partners-list a {
        opacity: 1 !important;
    }
    .shop-partners-list img {
        max-width: 75%;
        height: auto;
    }

    .h5-logoslider {
        margin: 20px 0 24px 0;
        text-align: center;
        width: 100%;
    }
    .partners-item img {
        width: 50%;
    }
    .offer-title a {
        align-self: center;
    }
    .offer-title h3 {
        margin-bottom: 20px;
    }
    .offer-banner {
        padding: 30px 20px 20px 0;
    }
    .offer-banner a {
        left: auto;
        right: 0;
        max-width: 50%;
    }
    .portfolio-grid {
        grid-template-columns: repeat(2, 1fr)
    }
    .toggled-item.flex-row {
        flex-direction: row;
        flex-wrap: nowrap;
    }
    .toggled-item.flex-row .flex-col-4,
    .toggled-item.flex-row .flex-col-2 {
        width: auto;
    }
    .toggled-item.flex-row .flex-col-6 {
        width: 100%;
    }
    .partners-title h5 {
        margin-bottom: 18px;
    }
    .flex-row.partners-title {
        margin-bottom: 40px;
    }
    .counter-section h2 {
        margin-bottom: 25px;
    }
    .counter-button-wraper {
        padding: 0 0 36px 0;
    }
    .counter-number {
        font-size: 55px;
    }
    .carousel-wrapper {
        --items-view: 1;
    }
    .partners-testimonials {
        padding-top: 60px;
    }
    .partners-testimonials .flex-col-6:not(:first-child) > .testimonial-item {
        padding-top: 0;
    }
    .marquee-on-scroll {
        padding-top: 42px;
        margin-bottom: -28px;
    }
    .marquee-on-scroll-inner {
        font-size: 124px;
    }

    /* --- Footer --- */
    .footer-widgets {
        padding: 77px 0 42px 0;
    }
    .footer-widgets h2 {
        font-size: 65px;
    }
    .footer-widgets h6 {
        margin-bottom: 16px;
    }
    .footer-info .contact-links {
        padding-top: 18px;
        display: flex;
        flex-direction: column;
        gap: 4px;
    }
    .footer-widgets > div.footer-menu {
        display: none;
    }
    .footer-widgets > div.footer-contacts {
        padding: 43px 80px 0 0;
        width: 100%;
    }
    .footer-widgets h6 {
        display: none;
    }
    .footer-widgets .title {
        font-size: 19px;
        height: 32px;
    }
    .footer-widgets > div.footer-contacts .title {
        margin-bottom: 4px;
    }
    .footer-widgets > div.footer-socials {
        padding-top: 45px;
    }
    .footer-socials ul {
        display: flex;
        gap: 20px;
        flex-wrap: wrap;
    }
    .footer-socials a {
        font-size: 15px;
        line-height: 1.2em;
    }
    .footer-socials a i {
        width: 11px;
        height: 11px;
        margin: 1px 0 0 0 2px;
    }
    .copyright {
        font-size: 14px;
        line-height: 24px;
        padding: 25px 0 25px 0;
    }

    /* --- Cookies --- */
    .cookies-popup {
        width: calc(100% - 2 * var(--d-fw-spacing));
        padding: 20px 16px 18px 16px;
        border-radius: 12px;
    }
    .cookies-popup .text-xs {
        font-size: 14px;
        line-height: 1.5em;
    }
}

@media only screen and (max-width: 425px) {
    .main-menu-list {
        gap: 18px;
    }
    .main-menu-list li a {
        font-size: 26px;
    }
}