:root {
    /* main */
    --color-main: #1F8A70;
    --color-main-reverse: #1B1A17;
    --menu-color: #1B1A17;
    --filter-color: #b3d1c9;
    --color-light: #c4d6d1;
    --alert-color: #e31e24;
    --alert-color-hover: #8b1317;

    --color-main: #e57200;
    --color-main-reverse: black;
    --menu-color: black;
    --filter-color: #ffab5a;
    --color-light: #ffdebd;
    --alert-color: #e31e24;
    --alert-color-hover: #8b1317;

    --color-main: #F0A500;
    --color-main-reverse: #1B1A17;
    --menu-color: #1B1A17;
    --filter-color: #ffd998;
    --color-light: #edddc2;
    --alert-color: #e31e24;
    --alert-color-hover: #8b1317;
}

@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,400;0,700;1,400;1,700&display=swap');

* {
    font-family: 'Raleway', sans-serif;
}

.menu ul a, .menu ul a font {
    font-family: 'Bebas Neue', cursive;
    font-size: 24px;
}

.banner, .banner-content, .banner img {
    width: 90%;
    height: 323px;
    padding-bottom: 35px;
    background-color: #d8d8d8!important;
}

.banner {
    width: 1400px;
    margin: 0px auto;
    background-color: white!important;
}

.banner::before,
.banner::after {
    content: "";
    height: 100%;
    width: 0px;
    display: block;
    position: absolute;
    top: 0;
    box-shadow: 0 0 60px 50px white;
    z-index: -1;
}

.banner::after {
    right: 0;
}

.banner-content {
    background-size: contain;
    background-position: top center;
    background-repeat: no-repeat;
    -webkit-transition:0.8s all ease;
    transition:0.8s ease all;
    width: 75%;
    left: 0;
    display: inline-block;
    vertical-align: top;
    position: relative;
    height: 100%;
    height: -webkit-fill-available;
    background-color: white!important;
    background-position: center;
    animation-name: banner-appear;
    animation-duration: 1s;
}

@keyframes banner-appear {
    0% {
        background-image: none;
    }

    100% {
        background-image: none;
    }
}

.banner, .banner * {
    cursor: pointer;
}

.banner-content-text {
    position: absolute;
    right: 50px;
    top: 50px;
    width: 400px;
    height: auto;
    text-align: center;
    display: none;
}

.banner-hrefs {
    width: 25%;
    vertical-align: top;
    position: relative;
    background-color: white;
    float: right;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}

.banner-hrefs a {
    display: block;
    width: 100%;
    text-decoration: none;
    border-top: 1px solid #eeebed;
    padding: 20px;
    font-weight: bold;
    font-size: 18px;
    color: black;
    box-sizing: border-box;
}

.banner-hrefs a:first-child {
    border-top: none;
}

.banner-hrefs a:hover:before, .banner-hrefs .active-href:before {
    content: " ";
    width: 0;
    height: 0;
    border-top: 31px solid transparent;
    border-right: 20px solid var(--color-main);
    border-bottom: 31px solid transparent;
    position: absolute;
    left: -20px;
    top: 0;
    z-index: 1;
}

.banner-hrefs a:hover, .banner-hrefs .active-href {
    background-color: var(--color-main);
    border-top: 1px solid var(--color-main);
    color: white;
}

.banner-content-text p {
    font-weight: bold;
    font-size: 28px;
    color: black;
}

.banner-navigation {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 75%;
    background-color: white;
    text-align: left;
    padding-left: 5px;
    height: 22px;
}

.banner-navigation button {
    width: 16px;
    height: 16px;
    border-radius: 20px;
    background-color: white;
    margin: 0;
    padding: 0;
    border: 1px solid var(--color-main);
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
    top: -3px;
}

.banner-navigation-active-point, .banner-navigation button:hover {
    background-color: var(--color-main)!important;
    border: 1px solid var(--color-main)!important;
}

.banner-animation-in {
    animation-name: banner-animation-in;
    animation-duration: 1s;
}

@keyframes banner-animation-in {
    0% { opacity: 0.6; }
    100% { opacity: 2; }
}

.banner-animation-out {}

@media only screen and (max-width: 1400px) {
    .banner-navigation {
        display: none;
    }

    .banner {
        height: 370px;
        width: 100%;
        margin: 0px auto;
        left: 0;
    }

    .banner, .banner-content, .banner img {
        padding-bottom: 0;
    }
}

@media only screen and (max-width: 1100px) {
    .banner, .banner-content, .banner img {
        height: auto;
    }
    .banner-content {
        width: 100%;
        height: -webkit-fill-available;
        padding-top: 30%;
    }

    .banner-hrefs {
        display: none !important;
    }

    .banner-navigation {
        display: none;
    }
}

@media only screen and (max-width: 680px) {
    .banner {
        display: none;
    }
}

.menu {
    width: 100%;
    height: 77px;
    background-color: white;
    display: grid;
    border-bottom: 1px solid var(--menu-color);
    grid-template-areas: "blank logo menu navigation blank2";
    grid-template-columns: auto 220px 32.25% 30.25% auto;
    text-align: center;
    background-color: var(--menu-color);
    border-bottom: 5px solid var(--color-main)!important;
}

.responsive-menu-symbol {
    display: none !important;
}

.contact-data {
    position: absolute;
    height: 20px;
    width: 1400px;
    left: 50%;
    top: 25px;
    margin-left: -820px;
    text-align: left;
    z-index: 49;
    display: none;
}

.contact-data * {
    margin-right: 10px;
    color: var(--menu-color);
    text-decoration: none;
}

#contact_phone {
    margin-left: 250px;
}

.contact-data img {
    width: 24px;
    height: 24px;
    vertical-align: bottom;
}

.contact-data .social img {
    filter: invert(1);
    -webkit-filter: invert(1);
    width: 28px;
    height: 28px;
    cursor: pointer;
    margin-right: 0;
    margin-left: 2px;
    margin-top: 1px;
}

.contact-data .social {
    float: right;
    margin-right: 0px;
    margin-right: 760px;
}

.contact-data .social a {
    margin-right: 0;
}

.menu .eshop-logo {
    grid-area: logo;
    height: 82px;
    width: fit-content;
    max-width: 180px;
    background-color: white;
    border-left: 5px solid var(--color-main);
    border-right: 5px solid var(--color-main);
}

.menu .eshop-logo::before,
.menu .eshop-logo::after {
    content: "";
    
}

.menu .eshop-logo a {
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

.menu .eshop-logo img {
    height: 77px;
    box-sizing: border-box;
    display: block;
    padding: 5px;
    width: 150px;
    object-fit: contain;
    object-position: center;
}

.logo-nr {
    height: 50px;
    width: auto;
    left: 240px;
    margin-top: -5px;
    cursor: pointer;
    z-index: 51;
}

.menu ul {
    grid-area: menu;
    margin: 0;
    padding: 0;
    padding-top: 7px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 20px;
    height: 70px;
    margin-left: 35px;
    position: unset;
}

.menu ul li {
    height: 30px;
    position: unset;
    display: flex;
    justify-content: center;
    box-sizing: border-box;
}

.menu ul li.has-submenu::after,
.menus-others-btns::after {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    content: "\f0dd";
    color: white;
    margin-right: 5px;
    margin-top: 3px;
    font-size: 16px;
}

.menus-others-btns::after {
    margin-left: 15px;
    margin-top: 0;
    display: inline-block;
    top: -5px;
    position: relative;
}

.menu ul li.has-submenu:hover::after,
.menus-others-btns:hover::after {
    color: var(--color-main);
}

.menu ul li a,
.menu ul span {
    list-style: none;
    display: inline-block;
    min-width: 160px;
    text-align: center;
}

.menu ul li.item-collapsed {
    display: none;
}

.menu ul li a {
    color: white;
    text-decoration: none;
}

.menu ul ul li a {
    line-height: initial;
    text-align: center;
    font-weight: 400;
    padding-top: 0px;
    padding-bottom: 0px;
    color: white;

    padding: 5px 0;
}

.menu ul li a:first-child {
    margin-left: 0;
}

.menu ul ul {
    display: none;
    position: absolute;
    width: 235px;
    background-color: var(--menu-color);

    flex-direction: column;
    margin: 0;
    height: auto;
    padding: 15px 0 25px;
    border-bottom: 5px solid var(--color-main);
    margin-top: 44px;
}

.menu .menus-others-btns {
    font-family: 'Bebas Neue', cursive;
    font-size: 24px;
    color: white;
}

.menu .menus-others-btns:hover {
    cursor: pointer;
    text-decoration: underline;
}

.menu .menus-others-btns.full::before {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    content: "\f0c9";
    margin-right: 10px;
}

.menu .menus-others-btns .menu-other-items-container {
    display: none;
}

.menu .menus-others-btns:hover .menu-other-items-container {
    display: flex;
}

.menu .menus-others-btns .menu-other-items-container {
    flex-direction: column;
    position: absolute;
    align-items: center;
    background-color: var(--menu-color);
    width: 230px;
    padding: 35px 0px 15px;
    gap: 5px;
    right: -35px;
    top: 25px;
    border-bottom: 5px solid var(--color-main);
}

.menu .menus-others-btns .menu-other-items-container a {
    color: white;
    text-decoration: none;
    padding: 5px 15px;
    width: 200px;
}

.menu .menus-others-btns:hover .menu-other-items-container a:hover {
    background-color: var(--color-main);
}

.menu ul ul ul ul {
    display: none!important;
}

.menu ul ul:before {
    content: " ";
    width: 100%;
    height: 20px;
    position: absolute;
    left: 0;
    top: -20px;
}

.homepage-menu {
    z-index: 50;
    border-bottom: 4px solid white;

}

.menu ul ul .menu-shape {
    display: none;
}

.category-menu .menu-shape {
    display: none;
}

.menu ul ul .category-icon {
    display: none;
}

.menu ul ul ul, .homepage-menu ul ul ul {
    display: block;
    position: relative;
    width: 100%;
    left: 0;
    margin-left: 0;
    min-height: 0!important;
    height: 150px;
    overflow: hidden;
    padding-bottom: 0;
    border: none;
    margin-bottom: 20px;
    padding-top: 0;
    background-color: transparent;
    margin-top: 5px;

    display: none !important;
}

.menu ul ul ul li:nth-child(n+7), .homepage-menu ul ul ul li:nth-child(n+7) {
    display: none!important;
}

.homepage-menu {
    position: absolute;
    top: 0px;
}

.menu-node {
    background-repeat: no-repeat;
    background-position: bottom right;
    background-size: auto 300px;
}

.menu ul ul a {
    text-align: left;
    border-radius: 0px;
    font-size: 16px;
    padding-left: 0;
    padding-right: 0;
    display: block;
    margin-top: 0;
    height: auto;
    line-height: auto;
    color: var(--menu-color);
    font-weight: bold;
}

.menu ul ul li {
    color: white;
    display: block;
    width: 100%;
}

.menu ul ul ul li a {
    line-height: initial;
    font-weight: normal;
    margin-left: 0!important;
    margin-bottom: 5px!important;
    font-size: 14px;
}

.menu ul ul ul li {
    width: auto!important;
    display: block!important;
    margin-left: 10px!important;
}

.menu ul li a:hover {
    text-decoration: underline;
}

.menu ul ul a:hover {
    text-decoration: none;
    background-color: var(--color-main);
    color: white;
}

@keyframes submenu-show {
    0% { opacity: 0; max-height: 10px; overflow: hidden; min-height: 0; padding: 0; }
    60% { opacity: 0; }
    80% { max-height: 10px; overflow: hidden; min-height: 0; padding: 0; }
    100% { opacity: 1;  }
}

.homepage-menu > ul > li:hover > ul, .category-menu-default > ul > li:hover > ul {
    /*display: block;
    animation-name: submenu-show;
    animation-duration: 0.6s;*/
}

.menu ul li:hover > ul {
    display: flex;
}

.menu .menu-navigation {
    grid-area: navigation;
    top: 0;
    right: 0;
    height: 77px;
    z-index: 50;
    border-bottom: none;
    display: grid;
    grid-template-areas: "search login cart";
    position: unset;
    align-items: center;
}

.menu-navigation .navigation-text {
    display: none;
}

.menu-navigation-login .navigation-text {
    display: inline-block;
}

.menu .menu-navigation-search button {
    display: none;
    background-color: transparent;
    border: none;
    position: absolute;
    right: 10px;
    top: 3px;
    z-index: 52;
    cursor: pointer;
    transition: transform 0.2s;
    transform-origin: 50% 50%;
}

.menu .menu-navigation-search button:hover {
    transform: scale(1.1);
}

.menu .menu-navigation-search input {
    display: block;
    margin: 0;
    padding: 0;
    font-size: 16px;
    background-color: white;
    border: none;
    outline: none;
    padding: 12px 48px 12px 16px;
    margin-left: 30px;
    color: var(--menu-color);
    border-radius: 5px;
    z-index: 50;
}

.menu .menu-navigation-search {
    display: flex;
    align-items: center;
    grid-area: search;
    position: unset;
    height: 64px;
}

.menu .menu-navigation-cart {
   background-color: transparent;
   top: 5px;
   z-index: 51;
}

.menu .menu-navigation-cart a {
    padding: 8px 0px;
    display: block;
    right: 10px;
    text-decoration: none;
    margin-top: -10px;
    border-radius: 0;
    width: 150px;
    border-left: 1px solid #3f3f3f;
    height: 30px;
}

.menu .menu-navigation-login a {
    text-decoration: none;
}

.menu .menu-navigation-login a font {
    margin-top: 0px;
    display: none;
    vertical-align: top;
    color: white;
}

.menu .menu-navigation-login {
    grid-area: login;
    width: 100px;
    text-align: center;
}

.menu .menu-navigation-login:hover font {
    text-decoration: underline;
}

.menu .menu-navigation-cart .cart-value {
    color: white;
    font-weight: bold;
    padding: 6px 12px;
    font-size: 16px;
    cursor: pointer;
    display: block;
    margin-left: 30px;
}

.menu .menu-navigation-cart .cart-amount {
    font-size: 14px;
    position: absolute;
    color: white;
    background-color: var(--color-main);
    right: -7px;
    top: -7px;
    height: 26px;
    min-width: 26px;
    line-height: 26px;
    border-radius: 26px;
    text-align: center;
    cursor: pointer;
}

.menu .menu-navigation-cart .cart-value .cart-value-value {
    margin-right: 10px;
}

.menu-navigation-login a img {
    width: 32px;
    height: 32px;
    display: inline-block;
    vertical-align: top;
    cursor: pointer;
    transition: transform 0.1s;
}

.menu .menu-navigation-cart a:hover img,
.menu-navigation-login a img:hover {
    transform: scale(1.2);
}

.menu .menu-navigation-search button img {
    width: 26px;
    height: 26px;
    object-fit: contain;
    cursor: pointer;
    margin-top: 6px;
}

.menu .menu-navigation-cart a img {
    width: 30px;
    height: 30px;
    top: 8px;
    position: absolute;
    left: 10px;
    cursor: pointer;
    transition: transform 0.1s;

}

.menu .eshop-search {
    width: 35%;
    height: auto;
    max-height: 650px;
    background-color: white;
    left: 60%;
    top: 91px;
    position: absolute;
    z-index: -1;
    text-align: left;
    display: none;
    outline: 10000px solid rgba(0,0,0,0.5);
    padding: 10px;
    border-radius: 5px;
}

.menu .eshop-search:before {
    content: " ";
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 20px solid white;
    position: absolute;
    left: 25px;
    top: -20px;
}

.menu .eshop-search-title {
    color: var(--menu-color);
    display: block;
    font-size: 14px;
    border-bottom: 1px solid var(--color-main);
    width: 100%;
    padding-bottom: 10px;
    font-weight: bold;
}

.menu .eshop-search-close {
    color: var(--menu-color);
    position: absolute;
    right: 15px;
    cursor: pointer!important;
    z-index: 60;
    margin-top: 0;
    font-size: 36px;
    line-height: 20px;
}


.homepage-menu .menu-navigation {
    width: 100%;
}

.menu .eshop-search-content * {
    color: white;
}

.menu .search-result-empty {
    color: var(--menu-color);
    margin-top: 50px;
    margin-bottom: 50px;
    width: 100%;
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    cursor: default;
}

.menu .search-result-product img {
    width: 100px;
    height: 100px;
    object-fit: contain;
}

.menu .eshop-search-content .title {
    display: none;
}

.menu .eshop-search-content .title:hover {
    text-decoration: underline;
}

.menu .search-result-category {
    padding-bottom: 10px;
    padding-top: 10px;
    border-bottom: 1px solid #3f3f3f;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: flex-start;
    display: flex;
    max-height: 100px;
}

.menu .search-result-product div label {
    display: none;
}

.menu .search-result-category a, .menu .search-result-product div a {
    text-decoration: none;
    font-size: 14px;
    display: block;
    color: var(--menu-color);
}

.menu .search-result-category a {
    width: 200px;
}

.menu .search-result-category a:hover {
    text-decoration: underline;
}

.menu .search-result-product span {
    display: block;
}

.menu .search-result-product label {
    margin-left: 10px;
    font-size: 14px;
    margin-top: 25px;
    display: block;
}

.menu .search-result-product div {
    width: 200px;
    min-height: 190px;
    display: inline-block;
    vertical-align: top;
    text-align: center;
    border: 2px solid white;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.menu .search-result-product div:last-child {
    border-right: none;
}

.menu .search-result-product {
    border-bottom: 1px solid var(--color-main);
    display: flex;
    justify-content: space-around;
    flex-direction: row;
    flex-wrap: wrap;
    max-height: 520px;
    overflow-y: scroll;
}

.menu .search-result-product div, .menu .search-result-product div * {
    cursor: pointer;
}

.menu .search-result-product div:hover a {
    text-decoration: underline;
}

.menu .search-result-show-all {
    margin-top: 10px;
}

.menu .eshop-search-title:before {
    content: " ";
    position: fixed;
    width: 100%;
    height: 70px;
    background-color: transparent;
    top: 0;
    left: 0;
}

.menu .search-result-show-all a {
    text-decoration: none;
    color: var(--menu-color);
    font-size: 14px;
    display: block;
    float: right;
    width: 225px;
    padding: 5px;
    font-weight: bolder;
}

.menu .search-result-show-all a font {
    float: right;
    color: var(--menu-color);
}

.menu-blog-href img {
    display: none;
}

.menu .search-result-show-all a:hover, .menu .search-result-show-all a:hover font {
    color: var(--color-main);
}

.menu .category-icon {
    display: inline-block;
    width: auto;
    height: 30px;
    vertical-align: top;
    margin-right: 10px;
    margin-top: 16px;
    display: none;
}

.menu-navigation-menu-icon {
    display: none;
}

@keyframes menu-slide-in {
    from { right: -300px; }
    to { right: 0; }
}

.menu-slide-in {
    animation-name: menu-slide-in;
    animation-duration: 0.6s;
}

@keyframes menu-slide-out {
    from { right: 0; }
    to { right: -300px; }
}

.menu-slide-out {
    animation-name: menu-slide-out;
    animation-duration: 0.6s;
}

.menu-navigation-active {
    z-index: 53!important;
}

.scroll-menu .menu-navigation-active {
    z-index: 50!important;
}

@media only screen and (max-width: 1360px) {
    .menu {
        grid-template-areas: "menu logo navigation";
        grid-template-columns: calc(50% - 110px) 220px calc(50% - 110px);
    }
}

@media only screen and (max-width: 1360px) {
    .menu .menu-navigation-search input {
        margin-left: 0px;
    }
}

@media only screen and (max-width: 1260px) {
    .menu .menu-navigation-search {
        position: relative;
    }
    .menu .menu-navigation-search input {
        display: none;
    }

    .menu .menu-navigation.searchActive .menu-navigation-search input {
        display: block;
    }

    .menu .menu-navigation.searchActive .menu-navigation-login,
    .menu .menu-navigation.searchActive .menu-navigation-cart,
    .menu .menu-navigation.searchActive .menu-navigation-menu-icon {
        display: none;
    }

    .menu .menu-navigation-search button {
        display: block;
        top: 3px;
        right: 0;
        position: relative;
    }

    .menu .menu-navigation-search button img{
        display: none;
    }
    .menu .menu-navigation-search button::before {
        font-family: 'Font Awesome 6 Free';
        font-weight: 900;
        content: "\f002";
        color: white;
        font-size: 32px;
        display: block;
        width: 32px;
        height: 32px;
        margin-bottom: 4px;
    }

    .menu-navigation-login a img {
        margin-right: 10px;
    }

    .menu .menu-navigation.searchActive .menu-navigation-search button::before {
        content: "\f00d";
    }

    .menu .menu-navigation .eshop-search {
        display: none;
    }

    .menu .menu-navigation:not(.searchActive) .eshop-search {
        display: none !important;
    }

    .menu .eshop-search {
        width: 100%;
        left: 10%;
    }

    .menu .search-result-show-all a {
        width: 100%;
        text-align: center;
    }

    .menu .search-result-show-all a font {
        display: none;
    }
}

@media only screen and (max-width: 1100px) {
    .menu .eshop-search {
        left: 0;
        width: 90%;
    }

    .menu .eshop-search:before {
        right: 48%;
        left: auto;
    }
}

@media only screen and (max-width: 960px) {
    .menu .menu-navigation-search button::before {
        margin-left: 15px;
    }
}

@media only screen and (max-width: 860px) {
    .menu {
        display: flex;
        justify-content: space-between;
    }

    .menu ul {
        order: 0;
        position: absolute;
        height: auto;
        background-color: var(--menu-color);
        width: 216px;
        align-items: flex-start;
        flex-direction: column;
        gap: 20px;
        margin-left: 0;
    }

    .menu ul::before {
        content: "";
        display: block;
        background-image: url(icon/menu-round.png);
        background-size: 40px;
        height: 40px;
        width: 40px;
        margin-left: 18px;
        margin-top: 15px;
        cursor: pointer;
        transition: transform 0.2s;
    }

    .menu ul:hover::before {
        transform: scale(1.1);
    }

    .menu.menu-open ul {
        border-bottom: 5px solid var(--color-main);
        padding-bottom: 15px;
    }

    .menu.searchActive ul::before {
        content: "";
        background-image: none;
    }

    .menu ul li {
        display: none;
        padding-left: 25px;
    }

    .menu ul li:last-child {
        padding-bottom: 15px;
    }

    .menu.menu-open ul li {
        display: block;
        padding-left: 0;
        width: 100%;
    }

    .menu .eshop-logo {
        margin-right: 15px;
        order: 2;
    }

    .menu .menu-navigation {
        margin-left: 65px;
        width: 310px;
        order: 1;
        display: flex;
        align-items: center;
    }

    .menu.searchActive .menu-navigation {
        margin-left: 0;
    }

    .menu .menu-navigation-cart a {
        width: auto;
    }

    .menu .eshop-search {
        left: 10%;
        width: 100%;
    }


    .menu .menus-others-btns {
        display: none;
    }

    .menu ul li:hover > ul {
        display: none;
    }

    .menu ul li.has-submenu::after, .menus-others-btns::after {
        content: none;
    }
}

@media only screen and (max-width: 680px) {
    .menu .eshop-logo img {
        width: 160px;   
    }

    .menu .search-result-product {
        max-height: 470px;
    }

    .menu {
        position: fixed !important;
    }

    body {
        margin-top: 75px !important;
    }

    .menu .eshop-logo img {
        width: 120px;
        border-bottom-left-radius: 30px;
        border-bottom-right-radius: 30px;
    }
}

@media only screen and (max-width: 620px) {
    .menu .menu-navigation-cart .cart-value {
        display: none;
    }

    .menu .menu-navigation-cart .cart-amount {
        top: 14px;
        left: 12px;
        right: auto;
        font-weight: bolder;
        background-color: transparent;
    }

    .menu .menu-navigation.searchActive .menu-navigation-search input {
        width: 100%;
        margin-right: 10px;
        margin-left: 5px;
    }

    .menu .menu-navigation-search button::before {
        margin-left: 10px;
    }

    .menu.searchActive .eshop-logo img {
        display: none;
    }

    .menu.searchActive .eshop-logo {
        border: none;
        display: none;
    }
}

@media only screen and (max-width: 500px) {
    .menu .menu-navigation-login {
        width: 60px;
    }
}

@media (hover: none) {
    .menu .menus-others-btns:hover .menu-other-items-container {
        display: none;
    }

    .menu .menus-others-btns.collapsed-btn .menu-other-items-container {
        display: flex;
    }

    .menu ul li:hover > ul {
        display: none;
    }
}

/*@media only screen and (min-width: 1000px) {

    .scroll-menu .menu-navigation:before {
        bottom: initial;
        top: 0;
        left: 0;
        position: fixed;
    }

    .scroll-menu {
        position: fixed!important;
        left: 0!important;
        margin-left: 0!important;
        top: 0!important;
        width: 100%!important;
        box-shadow: 5px -2px 20px 5px #888888;
        display: grid;
        grid-template-areas: 'logo search menu';
        grid-template-columns: 260px 280px auto;
    }
    
    .scroll-menu > ul {
        border-bottom: none!important;
        grid-area: menu;
    }
    
    .scroll-menu .eshop-logo {
        left: 10px;
        top: 0;
        margin-left: 0;
        width: auto;
        margin-top: 0;
        top: 10px;
        position: relative;
        grid-area: "logo";
    }
    
    .scroll-menu .eshop-logo img {
        height: auto;
        width: 100%;
        object-fit: contain;
    }
    
    .scroll-menu .menu-navigation-search {
        left: 0;
        width: 280px;
        margin-left: 0;
        position: relative;
    }
    
    .scroll-menu .menu-navigation {
        margin-top: -5px;
        background-color: transparent;
        position: relative;
        text-align: left;
        border-bottom: none;
        grid-area: search;
    }
    
    .scroll-menu .menu-navigation-search input {
        width: 215px;
        border: 1px solid #fecece;
    }
    
    .scroll-menu .menu-navigation-search button img {
        margin-top: -8px;
        margin-right: 4px;
    }
    
    .scroll-menu > ul {
        width: auto;
        margin-left: 0;
        left: 0;
        justify-content: left;
    }
    
    .scroll-menu > ul > li > a {
        padding-left: 20px;
    }
    
    .scroll-menu .menu-navigation-cart a {
        right: 0;
        background-color: #fecece;
    }
    
    .scroll-menu .menu-navigation-login {
        margin-top: -25px;
        right: 450px;
        width: auto;
        position: fixed;
    }
    
    .scroll-menu .menu-navigation-login font {
        display: none!important;
    }
    
    .scroll-menu .menu-navigation-cart {
        grid-area: cart;
    }
    
    .scroll-menu .eshop-search {
        right: initial;
    }
    
    .scroll-menu .eshop-search-close:before {
        right: 1230px;
    }
}

*/


.search-category-result div {
    margin-bottom: 10px;
}

.search-category-result div a {
    color: black;
    text-decoration: none;
    margin-left: 10px;
    margin-right: 10px;
}

.search-category-result div a font {
    font-weight: bold;
    cursor: pointer;
}

.search-category-result div a:hover {
    text-decoration: underline;
}

.search-category-result div font {
    cursor: default;
}

.search-category-result p {
    font-weight: bold;
    font-size: 18px;
    margin-top: 50px;
}

.search-category-result {
    margin-bottom: 50px;
    margin-left: 40px;
    text-align: left;
}

.search-found-categories h2 {
    text-align: left;
    margin-top: 0;
    padding-top: 0;
    margin-left: 20px;
    margin-top: 40px;
}

.homepage-two-categories {
    width: 100%;
    text-align: center;
    position: relative;
    display: inline-block;
}

.homepage-two-categories .content-block-category {
    width: 49.5%;
    height: 500px;
    display: inline-block;
    margin: 2px;
    margin-bottom: 10px;
    cursor: pointer;
    background-size: 100% auto;
    object-fit: cover;
    background-color: #e0e0e0;
}

.homepage-slider {
    display: inline-block;
    vertical-align: top;
    grid-area: slider;
    overflow: hidden;
}

.side-banner {
    width: 300px;
    height: 700px;
    display: inline-block;
    vertical-align: top;
    float: right;
    margin-right: 10px;
    cursor: pointer;
    object-fit: contain;
    margin-top: 52px;
}

.homepage-slider-content {
}

.homepage-slider-header {
    display: flex;
}

.homepage-slider-disabled {
    display: none!important;
}

.homepage-slider-header button {
    padding: 8px 16px;
    cursor: pointer;
    border: none;
    background-color: #d3d3d3;
    border-radius: 3px;
    font-weight: bold;
    font-weight: bold;
    width: 100%;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    margin-left: -1px;
}

.homepage-slider-header button:hover {
    background-color: var(--color-light);
}

.homepage-slider-header button:first-of-type {
    border-top-right-radius: 0;
}

.homepage-slider-header button:nth-of-type(2) {
    border-top-left-radius: 0;
}

/*.homepage-slider-header .homepage-slider-button.homepage-slider-button-active:first-child:after,
.homepage-slider-header .homepage-slider-button.homepage-slider-button-active:nth-child(2):after {
    content: "";
    display: block;
    height: 0;
    position: absolute;
    right: -15px;
    top: 0;
    border-left: 16px solid var(--color-main);
    z-index: 1;
    border-top: 16px solid transparent;
    border-bottom: 16px solid transparent;
}*/

.homepage-slider-header .homepage-slider-button.homepage-slider-button-active:nth-child(2):after {
    right: auto;
    left: -15px;
    border-left: none;
    border-right: 16px solid var(--color-main);
    border-top: 16px solid transparent;
    border-bottom: 16px solid transparent;
}

.homepage-slider-button-active {
    background-color: var(--color-main)!important;
    color: white;
}
/*
.homepage-slider-button-active:before {
    content: " ";
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid var(--color-main);
    position: absolute;
    bottom: -10px;
    left: 50%;
    margin-left: -10px;
}
*/
.content-block-category a {
    margin-top: 400px;
    display: inline-block;
}

.homepage-best-selling {
    width: 100%;
    height: auto;
    text-align: left;
    display: flex;
    flex-wrap: wrap;
}

.homepage-best-selling-arrow-right-container, .homepage-best-selling-arrow-left-container  {
    display: none;
}
.homepage-best-selling-arrow-right, .homepage-best-selling-arrow-left {
    width: 50px;
    height: 50px;
    position: relative;
    margin-left: 10px;
    margin-right: 10px;
    top: 200px;
    border-radius: 50px;
    border: 1px solid black;
    background-color: transparent;
    color: black;
    font-size: 18px;
    line-height: 20px;
    font-weight: bold;
    cursor: pointer;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
}

.homepage-best-selling-arrow-right:hover, .homepage-best-selling-arrow-left:hover {
    background-color: var(--color-main-reverse);
    color: white;
}

.homepage-newsletter {
    width: 1400px;
    display: inline-block;
    text-align: center;
    padding-top: 20px;
    background-color: white;
    background-size: cover;
    background-position: right top;
    background-repeat: no-repeat;
    grid-area: newsletter;
    margin-bottom: 0px;
    display: grid;
    grid-template-columns: 250px 420px auto;
    bottom: -10px;
}

.homepage-newsletter::before,
.homepage-newsletter::after {
    content: "";
    display: block;
    margin-top: 50px;
    bottom: 0px;
    position: relative;
    z-index: 2;
}

.homepage-newsletter::before {
    border-right: 10px solid var(--color-main);
    border-bottom: 10px solid var(--color-main);
    border-radius: 30px;
    border-top-right-radius: 0;
    border-bottom-left-radius: 0;
    right: -10px;
}

.homepage-newsletter::after {
    border-left: 10px solid var(--color-main);
    border-bottom: 10px solid var(--color-main);
    border-radius: 30px;
    border-top-left-radius: 0;
    border-bottom-right-radius: 0;
    left: 0px;
}

.homepage-newsletter h2 {
    color: white;
    margin-top: -250px;
    left: 65%;
    width: 40%;
    margin-left: -30%;
    font-size: 40px;
    position: absolute;
}

.homepage-newsletter-container {
    height: 250px;
    width: 400px;
    margin-top: 0;
    padding-top: 0;
    padding-bottom: 0;
    top: 10px;
    background-color: white;
    border: 10px solid var(--color-main);
    border-radius: 30px;
    border-bottom: none;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    margin-bottom: 40px;
    padding: 0 5px;
}

.homepage-newsletter-container::before {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    content: "\f0e0";
    position: absolute;
    top: -34px;
    left: 12%;
    width: 64px;
    height: 48px;
    border-radius: 32px;
    font-size: 28px;
    line-height: 48px;
    border: 8px solid var(--color-main);
    background-color: white;
    color: var(--color-main);
    display: flex;
    justify-content: center;
}

.homepage-newsletter-container::after {
    content: "";
    display: block;
    background-color: white;
    height: 10px;
    position: absolute;
    bottom: -30px;
    z-index: 1;
    width: 470px;
    left: -25px;
}

.homepage-newsletter-container .newsletter-envelope {
    background-image: url(icon/newsletter.png);
    background-repeat: no-repeat;
    background-size: 256px;
    position: absolute;
    width: 256px;
    height: 256px;
    display: block;
    left: 410px;
    top: 50px;
    transform: rotate(18deg);
    z-index: 0;
    opacity: 0.2;
}

.homepage-newsletter-container input {
    padding: 2px 8px;
    font-size: 12px;
    width: 300px;
    left: 50%;
    margin-left: -166px;
    padding: 8px 16px;
    border: 1px solid black;
    border-radius: 5px;
    text-align: center;
    display: block;
}

.homepage-newsletter-container button {
    padding: 8px 32px;
    background-color: var(--color-main);
    border: 2px solid var(--color-main)!important;
    color: white;
    font-weight: bold;
    cursor: pointer;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
    border: none;
    margin-top: 20px;
    border-radius: 5px;
}

.homepage-newsletter-container button:hover {
    background-color: white;
    color: var(--color-main);
}

.homepage-newsletter-container p {
    font-weight: bold;
    padding-top: 40px;
    color: black;
    font-size: 24px;
}

.homepage-text {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 0;
}

.homepage-content-text-card {
    display: inline-block;
    vertical-align: top;
    background-color: transparent;
    text-align: center;
    width: 33%;
    height: 150px;
    padding-top: 10px;
    opacity: 0;
    max-height: 1px;
}

.homepage-text p, .homepage-text h2 {
    width: 80%;
    margin-left: 10%;
}

.homepage-text img {
    height: 64px;
    width: auto;
}

.homepage-article {
    width: 100%;
    text-align: center;
    margin-bottom: 50px;
    margin-top: 50px;
    display: inline-block;
}

.homepage-article .homepage-article-container {
    display: inline-block;
    width: auto;
    text-align: left;
}

.homepage-article .article-content {
    width: 430px;
    margin-left: 10px;
    margin-right: 10px;
    height: auto;
    display: inline-block;
    vertical-align: top;
    position: relative;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
    padding: 10px;
}

.homepage-article .article-content:hover img  {
    transform: rotate(2deg);
}

.homepage-article .article-content:hover a  {
    text-decoration: underline;
}


.homepage-article .article-content * {
    cursor: pointer;
}

.homepage-article .article-content img {
    width: 100%;
    height: 400px; 
    object-fit: cover;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
}

.homepage-article .article-content p {
    text-align: left;
    font-size: 16px;
}

.homepage-article .article-content h3 {
    width: 100%;
    text-align: center;
}

.homepage-article .article-content a {
    display: block;
    color: black;
    font-weight: bold;
    margin-top: 20px;
    text-decoration: none;
}

.homepage-article .article-content a:hover {
    text-decoration: underline;
}

.homepage-recomended-products, .best-selling-products .products-container {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}

.homepage-recomended-products .product-card,
.best-selling-products .product-card {
    width: 278px;
}

.homepage-recomended-products .product-card:not(:first-of-type),
.best-selling-products .product-card:not(:first-of-type) {
    border-left: 0;
    width: 279px;
}

.homepage-recomended-products .product-card:nth-child(n + 6),
.best-selling-products .product-card:nth-child(n + 6) {
    display: none;
}

.best-selling-products {
    width: 100%;
}

.homepage-recommended-text, .homepage-best-selling-text {
    text-align: left;
    margin-left: 0;
    font-size: 14px;
    font-weight: bold;
    display: block;
    opacity: 1;
    width: 200px;
    text-align: center;
    border-radius: 5px;
    background-color: var(--color-main);
    color: white;
    padding: 10px;
    margin: 0px 13px 0px 11px;
    border-bottom-left-radius: 0;
    width: 100%;
    border-bottom-right-radius: 0;
}

.homepage-recommended-text:before, .homepage-best-selling-text:before {
    content: " ";
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid var(--color-main);
    position: absolute;
    left: 50%;
    margin-left: -10px;
    bottom: -10px;
}

.textpage-content {
    width: 100%;
    margin-top: 0;
    padding: 20px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    
}

.textpage-content .content-slim {
    width: 1080px;
    margin: 0px auto;
    box-shadow: 0 0 60px 50px white;
    background-color: white;
}

.textpage-content .content-contact {
    height: 700px;
    width: 680px;
    margin: 0px auto;
    background-color: white;
    box-shadow: 0 -80px 60px 50px white;
}

.textpage-content #company_map {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
}

.textpage-content .text-hightlight {
    font-weight: bolder;
}

.textpage-content .text-italic {
    font-style: italic;
}

.textpage-content .text-centered {
    margin-left: 25px;
    display: flex;
}

.textpage-content .text-centered::before {
    content: "●";
    margin-right: 10px;
    color: var(--color-main);
}

.textpage-content .text-highlight-color {
    color: var(--color-main);
    font-weight: bolder;
}

.textpage-content * {
    font-size: 20px;
}

.textpage-content .about-header {
    width: 100%;
    text-align: center !important;
}

.textpage-content .about-header::after {
    content: "";
    display: block;
    margin: 0px auto;
    width: 18%;
    height: 1px;
    background-color: darkgray;
    margin-top: 5px;
}

.textpage-content .about-header span {
    font-size: 18pt !important;
}

.homepage-banner {
    position: absolute;
    width:18%;
    height: 650px;
    top: 50px;
    right: 0;
    background-image: url("homepage/homepage-banner.jpg");
    background-size: contain;
    background-position: top right;
    background-repeat: no-repeat;
    text-align: center;
    background-color: #fff8dc;
    border: 1px solid #adadad;
}

.homepage-banner * {
    font-family: 'Indie Flower', cursive!important;
    font-size: 32px;
    position: absolute;
    top: 250px;
    width: 90%;
    margin-left: 5%;
    color: black;

}

.homepage-content-text-special {
    width: 100%!important;
    margin-left: 0!important;
    position: relative;
}


.homepage-content-text-special img {
    width: 20%;
    margin-left: 5%;
    height: auto;
    display: inline-block;
    vertical-align: top;
}

.homepage-content-text-special font {
    display: inline-block;
    vertical-align: top;
    width: 65%;
    margin-left: 5%;
    font-size: 16px;
    margin-top: 100px;
}

.homepage-content {
    width: 1400px;
    margin: 0px auto;
}

.homepage-content::before,
.homepage-content::after {
    content: "";
    height: 100%;
    width: 0px;
    display: block;
    position: absolute;
    top: 0;
    box-shadow: 0 0 60px 50px white;
    z-index: -1;
}

.homepage-content::after {
    right: 0;
}


/*
.homepage-content .homepage-text:nth-child(1) {
    display: none!important;
}
*/

.force-hidden {
    display: none!important;
}

.homepage-brewing {
    grid-area: brewing;
    display: flex;
    flex-direction: column;
    align-items: center;    
    border: 1px solid #eeebed;
    height: 484px;
    box-sizing: border-box;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
    box-sizing: border-box;
    margin: 0 5px;
    margin-bottom: 10px;
}

.homepage-brewing .header {
    padding: 6px 10px;
    background-color: var(--color-main);
    color: white;
    width: 100%;
    text-align: center;
    font-weight: bolder;
    box-sizing: border-box;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
}

.homepage-brewing .list {
    width: 100%;
    display: flex;
    flex-direction: column;
    max-height: 450px;
}

.homepage-brewing .product {
    display: grid;
    grid-template-areas: 
        "image header"
        "image info"
        "progress progress";
    grid-template-columns: 85px;
    grid-template-rows: 52px 50px;
    width: 100%;
    height: 150px;
    color: black;
    text-decoration: none;
    overflow: hidden;
}

.homepage-brewing .product::after {
    content: "";
    display: block;
    height: 1px;
    width: 30%;
    background-color: #eeebed;
    margin: 0px auto;
    position: absolute;
    left: 40%;
}

.homepage-brewing .product .product-image {
    grid-area: image;
    height: 80px;
    width: auto;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin: 7px;
    margin-top: 12px;
    transition: transform 0.2s;
}

.homepage-brewing .product:hover .product-image {
    transform: scale(1.15);
}

.homepage-brewing .product .product-header {
    grid-area: header;
    display: flex;
    align-items: center;
    font-weight: bolder;
}

.homepage-brewing .product .product-info {
    grid-area: info;
}

.homepage-brewing .product .product-info .counter {
    font-weight: bold;
    color: var(--color-main);
    text-transform: uppercase;
}

.homepage-brewing .product .product-info .counter.ready {
    color: #228B22;
}

.homepage-brewing .product .product-progress {
    grid-area: progress;
    width: 100%;
    height: 10px;
    background-color: var(--color-main);
    z-index: 1;
}

.homepage-brewing .product.ready .product-progress {
    background-color: #228B22 !important;
}

.homepage-brewing .product .product-progress::after {
    content: "";
    display: block;
    position: absolute;
    background-color: #f0f0f0;
    top: 0;
    width: calc(333px - 100%);
    height: 10px;
    left: 100%;
    z-index: -4;
}

.homepage-brewing .product .show-product {
    position: absolute;
    right: 30px;
    bottom: 15px;
    color: var(--color-main);
    font-weight: bolder;
}

.homepage-brewing .product .show-product::after {
    content: "❯❯";
    margin-left: 5px;
    font-size: 15px;
    letter-spacing: -3px;
    transition: letter-spacing 0.2s;
    position: absolute;
    top: -1px;
}

.homepage-brewing .product.ready .show-product {
    color: #228B22;
}

.homepage-brewing .product:hover .show-product::after {
    letter-spacing: 2px;
}

/*.homepage-brewing {
    grid-area: brewing;
    display: flex;
    flex-direction: column;
    align-items: center;    
    border: 1px solid #eeebed;
    height: 484px;
    box-sizing: border-box;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
}

.homepage-brewing .header {
    padding: 6px 10px;
    background-color: var(--color-main);
    color: white;
    width: 100%;
    text-align: center;
    font-weight: bolder;
    box-sizing: border-box;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
}

.homepage-brewing .product-image {
    width: 100%;
    height: 290px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transform: scale(0.8);
}

.homepage-brewing .product-header {
    font-size: 24px;
    font-weight: bold;
    white-space: normal;
}

.homepage-brewing .product-footer {
    background-color: black;
    color: white;
    width: 100%;
    text-align: center;
    height: 125px;
    margin-top: 7px;
    box-sizing: border-box;
    border-top: 5px solid var(--color-main);
    padding: 15px;
    font-size: 18px;
    font-weight: bolder;
}

.homepage-brewing .counter {
    text-transform: uppercase;
    color: var(--color-main);
    font-size: 24px;
    font-weight: bolder;
}

.homepage-brewing .detail {
    padding: 8px 16px;
    background-color: var(--color-main);
    font-weight: bolder;
    width: 70%;
    margin: 0px auto;
    margin-top: 5px;
    border-radius: 5px;
    transition: transform 0.2s;
}

.homepage-brewing .detail:hover {
    transform: scale(1.1);
}

.homepage-brewing .detail a {
    color: white;
    text-decoration: none;
}*/

@media only screen and (max-width: 1400px) {
    .homepage-content {
        width: 100%;
    }

    .homepage-slider {
        width: 100%;
        max-height: 485px;
        overflow: hidden;
    }

    .homepage-recomended-products, .best-selling-products .products-container {
        justify-content: space-evenly;
    }

    .homepage-recomended-products .product-card, .best-selling-products .product-card {
        border: none;
    }

    .homepage-slider-content {
        margin-top: 15px;
        max-height: 460px;
        overflow: hidden;
    }

    .homepage-recomended-products .product-card,
    .best-selling-products .product-card {
        flex-grow: 1;
        max-width: 350px;
    }

    .homepage-newsletter {
        width: 100%;
    }
}

@media only screen and (max-width: 1180px) {
    .textpage-content .content-slim {
        width: 100%;
    }
}

@media only screen and (max-width: 922px) {
    .homepage-brewing .product .product-progress::after {
        width: 100vw;
    }
}

@media only screen and (max-width: 900px) {
    .homepage-brewing {
        height: 100%;
    }

    .homepage-newsletter {
        grid-template-columns: auto 420px auto; 
    }
}

@media only screen and (max-width: 780px) {
    .homepage-slider {
        max-height: none;
    }

    .textpage-content .content-contact {
        width: 100%;
    }

    .homepage-newsletter {
        grid-template-columns: auto 420px auto;
    }


    .homepage-newsletter-container input {
        left: auto;
        width: 70%;
        margin: 0px auto;
    }
}

@media only screen and (max-width: 680px) {
    .homepage-content {
        margin-top: 7px;
    }

    .homepage-content::before {
        content: "";
        display: block;
        top: 0;
        left: 0;
        width: 100%;
        height: 34px;
    }
}

@media only screen and (max-width: 520px) {
    /*.homepage-recomended-products .product-card .product-card-product-url::after,
    .best-selling-products .product-card .product-card-product-url::after {
        content: "";
        display: block;
        width: 60%;
        height: 1px;
        background-color: #eeebed;
        z-index: 10;
        position: absolute;
        top: -15px;
        left: 20%;
    }*/

    .textpage-content * {
        text-align: center !important;
    }
}

@media only screen and (max-width: 480px) {
    .homepage-newsletter-container {
        width: 100%;
        box-sizing: border-box;
    }

    .homepage-newsletter {
        grid-template-columns: auto 80% auto;
    }

    .homepage-newsletter::after {
        width: 100%;
        left: -10px;
    }

    .homepage-newsletter-container p {
        padding-top: 25px;
    }
}

@media only screen and (max-width: 460px) {
    .homepage-slider-header button {
        padding-right: 0;
    }
}

@media only screen and (max-width: 452px) {
    .homepage-content {
        margin-top: 7px;
    }
}

.default-button, .add-to-cart-button, .cart-remove-button {
    padding: 8px 32px;
    border: 2px solid white;
    background-color: var(--color-main);
    text-decoration: none;
    color: white;
    font-size: 20px;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
    cursor: pointer;
    border-radius: 5px;
    font-weight: bold;
}

#product_valid_insert .back-button {
    background-color: white;
    color: black;
}

#product_valid_insert .back-button:hover {
    background-color: #d3d3d3;
}

.default-button:hover {
    text-decoration: underline;
}

.add-to-cart-button {
    background-color: var(--color-main);
    color: white;
    border: 2px solid var(--color-main);
    border-radius: 5px;
    margin-right: 10px;
    grid-area: add-to-cart;
    height: 45px;
    width: 300px;
}

.add-to-cart-button:hover {
    background-color: var(--color-main-reverse);
    border: 2px solid var(--color-main-reverse);
}

.add-to-cart-button img {
    width: auto;
    height: 16px;
    margin-right: 10px;
}

.cart-remove-button, .cart-template .clear-cart {
    font-size: 14px;
    color: white;
    background-color: var(--alert-color);
    border: none;
    text-align: right;
    margin-top: 15px;
    width: 228px;
    text-align: center;
}

.cart-remove-button:hover {
    background-color: var(--alert-color-hover);
}

.cart-remove-button:hover, .cart-template .clear-cart:hover {
    border: none;
}

.cart-template .clear-cart:hover {
    border: none;
}

@media only screen and (max-width: 580px) {
    .add-to-cart-button {
        width: auto;
    }
}

@media only screen and (max-width: 580px) {
    .add-to-cart-button {
        padding: 8px 16px;
    }
}

@media only screen and (max-width: 420px) {
    .add-to-cart-button {
        padding: 0;
    }
}

.product-card {
    width: 285px;
    height: 450px;
    display: inline-block;
    vertical-align: top;
    cursor: pointer;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
    background-color: white;
    position: relative;
    border: 1px solid #eeebed;
    overflow: hidden;
    padding: 0px 10px;
    box-sizing: border-box;
}

.product-card * {
    cursor: pointer;
}

.product-card .product-video,
.product-card .product-img {
    width: 100%;
    height: 280px;
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
    transform: scale(0.8);
}

.product-card .product-video {
    transform: scale(1);
    max-height: 280px;
    max-width: 100%;
}

.product-card:hover .product-img {
    filter: grayscale(0);
    -webkit-filter: grayscale(0);
    transform: scale(0.9);
}

.product-card .description-short {
    display: block !important;
    margin: 0px 10px;
    text-align: center;
    height: 40px;
    overflow: hidden;
    bottom: 15px;
}

.product-card .discount-price {
    color: red;
}

.product-card .product-new {
    position: absolute;
    display: block;
    z-index: 1;
    left: 0;
    font-size: 12px;
    top: 40px;
    color: white;
    text-align: center;
    font-weight: bold;
    background-color: #228B22;
    padding: 8px;
    transition: padding-right 0.2s;
}

.product-card:hover .product-new {
    padding-right: 35px;
}

.product-card .product-new::after {
    content: "";
    border: 15px solid transparent;
    border-left: 15px solid #228B22;
    position: absolute;
    display: block;
    top: 0;
    right: -29px;
}

.product-card .product-discount {
    position: absolute;
    display: block;
    z-index: 1;
    left: 0;
    font-size: 12px;
    top: 5px;
    color: white;
    text-align: center;
    font-weight: bold;
    background-color: var(--alert-color);
    padding: 8px;
    transition: padding-right 0.2s;
}

.product-card:hover .product-discount {
    padding-right: 30px;
}

.product-card .product-discount::after {
    content: "";
    border: 15px solid transparent;
    border-left: 15px solid var(--alert-color);
    position: absolute;
    display: block;
    top: 0;
    right: -29px;
}

.product-card .product-sale {
    position: absolute;
    font-size: 12px;
    text-align: center;
    font-weight: bold;
    padding: 8px;
    background-color: white;
    color: #228B22;
    z-index: 1;
    left: auto;
    right: 15px;
    top: 0;
    transition: transform 0.1s;
}

.product-card:hover .product-sale {
    transform: scale(1.05);
}

.product-card .discount-price {
    color: red;
}

.product-card .product-discount:before {
    content: " ";
}

.product-card .discount-price {
    color: var(--alert-color);
}

.product-card .default-price {
    font-size: 10px;
    text-decoration: line-through;
    display: inline-block;
    margin-left: 10px;
}


.product-card .price-text {
    display: none;
}

.product-card .product-stock {
    display: none;
}

.product-card .product-available {
    color: #228B22;
}

.product-card .product-not-available {
    color: #3f3f3f;
}

.product-card h2 {
    text-align: center;
    margin: 0;
    padding: 0;
    font-size: 24px;
    font-weight: bold;
    white-space: normal;
    bottom: 15px;
    max-height: 58px;
    overflow: hidden;
}

.product-card .product-identificator {
    display: none;
}

.product-card p {
    display: none;
}

.product-card a {
    color: var(--color-main);
    width: 100%;
    text-decoration: none;
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 12px 5px;
    text-align: center;
    font-weight: bolder;
    transition: background-color 0.2s, color 0.2s;
}

.product-card:hover a {
    background-color: var(--color-main);
    color: white;
}

.product-card:hover a {
    bottom: 0;
}

.product-card .product-price {
    display: block;
    font-size: 22px;
    position: absolute;
    bottom: 58px;
    position: relative;
    font-weight: bold;
    position: absolute;
    width: 100%;
    text-align: center;
}

.product-card .currency-symbol {
    vertical-align: super;
    font-size: 14px;
}

.product-card .default-price .currency-symbol {
    font-size: 8px;
}

.product-card .rating {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 5px;
    right: 5px;
}

.product-card .rating img {
    width: 20px;
    height: 20px;
}

.product-variant-table img {
    width: 32px;
    height: 32px;
    object-fit: cover;
}

.product-variant-table {
    border-collapse: collapse;
    margin-top: 10px;
    width: 100%;
}

.product-variant-container {
    width: 100%;
}

.product-variant-table td {
    border-bottom: 1px solid #efefef;
    padding: 5px;
}

.product-variant-table tr:nth-child(even) td {
    background-color: #efefef;
}

.product-variant-table tr:hover td {
    background-color: #d3d3d3;
}

.product-variant-table * {
    cursor: pointer;
}

.product-variant-text-table {
    font-weight: bold;
    margin-top: 50px;
}

.product-variant-table-price {
    font-weight: bold;
    min-width: 100px;
    text-align: right;
}

.product-variant-table-active-row td {
    background-color: #228B22!important;
    color: white!important;
}

@media only screen and (max-width: 1510px) {
    .product-card {
        width: 24%;
    }
}

@media only screen and (max-width: 1400px) {
    .product-card {
        width: 32%;
    }
}

@media only screen and (max-width: 1180px) {
    .product-card {
        flex-grow: 1;
        width: 49%;
    }

    .product-card:nth-of-type(n + 3) {
        border-top: none;
    }
}


@media only screen and (max-width: 560px) {
    .product-card {
        width: 100%;
        max-width: 100%;
    }

    .product-card:nth-of-type(n + 2) {
        border-top: none;
    }
}

@media only screen and (hover:none) and (max-width: 680px) {
    .product-card a {
        background-color: var(--color-main);
        color: white;
    }
}

#popup_message {
    display: none;
    z-index: 999;
    height: 60px!important;
    top: auto!important;
    bottom: 0!important;
}

#popup_message .popup-large {
    left: 0;
    top: 0;
    width: 100%;
    min-height: initial;
    height: 60px;
    margin-left: 0;
    margin-top: 0;
    background-color: #228B22;
    color: white;
    text-align: center;
}

#popup_message .popup-large h2 {
    display: none;
}

#popup_message .popup-large * {
    font-size: 16px;
    font-weight: bold;
}

#popup_message .popup-large .modal-close {
    display: none;
}

.cookie-panel {
    position: fixed;
    z-index: 90;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: white;
    font-size: 16px;
    display: none;
    height: 150px;
    padding-top: 50px;
    color: black;
    border-top: 1px solid #adadad;
    outline: 2000px solid rgba(0,0,0,0.8);
}

.cookie-panel a {
    color: black;
    font-weight: bold;
    text-decoration: none;
}

.cookie-panel a:hover {
    text-decoration: underline;
}

.cookie-panel .default-button, .cookie-panel p {
    display: inline-block;
}

.cookie-panel p {
    width: 50%;
    margin-left: 25%;
    text-align: justify;
}

.cookie-panel p b {
    cursor: pointer;
}


.cookie-panel .default-button {
    font-size: 12px;
    margin-left: 20px;
    position: absolute;
    right: 0;
    top: 40px;
    font-size: 20px;
    padding: 50px;
    padding-right: 95px;
    padding-bottom: 35px;
    background-color: var(--color-main);
    border-radius: 0;
    color: white;
    padding-top: 35px;
    border: none;
}

.cookie-panel .default-button:before {
    content: " ";
    width: 0;
    height: 0;
    border-top: 47px solid transparent;
    border-right: 20px solid var(--color-main);
    border-bottom: 47px solid transparent;
    position: absolute;
    left: -20px;
    top: 0;
}

.cookie-panel .cookie-preferences {
    position: absolute;
    right: 40px;
    top: 145px;
    background-color: white;
    color: black;
    cursor: pointer;
    border: none;
    padding: 8px 31px;
}

.cookie-panel .cookie-preferences:hover {
    text-decoration: underline;
}

.modal {
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: rgba(0,0,0,0.8);
    z-index: 100;
    display: none;
}

.modal.custom .popup-default {
    padding: 25px;
}

.modal.custom .popup-default p {
    margin: 20px 20px;
}

.modal p {
    margin-top: 50px;
}

.popup-default {
    position: absolute;
    width: 400px;
    height: 200px;
    background-color: white;
    left: 50%;
    top: 50%;
    margin-left: -200px;
    margin-top: -100px;
    text-align: center;
    border-radius: 5px;
}

.popup-default img {
    height: 64px;
    width: auto;
    display: inline-block;
    margin-bottom: -50px;
    margin-top: 20px;
}

.modal-close {
    float: right;
    right: 10px;
    font-size: 24px;
    color: black;
    margin-top: 5px;
    cursor: pointer;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
}

#product_photo_zoom .modal-close {
    float: right;
    right: -10px;
    font-size: 48px;
    color: white;
    margin-top: -15px;
    cursor: pointer;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
}

.modal-close:hover, #product_photo_zoom .modal-close:hover {
    color: #e6c6a9;
}

.category-not-available, .product-detail-not-available, .empty-cart-content { 
    width: 100%;
    margin-top: 100px;
    font-size: 36px;
    height: 400px;
    margin-bottom: 100px;
    text-align: center;
    grid-column: 1/3;
}

.category-not-available img, .product-detail-not-available img, .empty-cart-content img {
    width: 7%;
    height: auto;
}

.category-not-available h2, .product-detail-not-available h2, .empty-cart-content h2 {
    font-size: 36px;
}

.popup-product-photo {
    height: 80%;
    margin-left: -400px;
    width: 800px;
    background-color: white;
    position: absolute;
    top: 10%;
    left: 50%;
    border: 5px solid white;
    border-radius: 5px;
}

.popup-product-photo img {
    width: auto;
    max-width: 98%;
    height: 98%;
    margin-top: 1%;
    position: relative;
    object-fit: contain;
    z-index: 1;
}

.popup-product-photo .product-photo-controls {
    position: absolute;
    z-index: 10;
    width: 100%;
    margin-top: -50px;
}

.popup-product-photo .product-photo-container {
    width: 100%;
    height: 100%;
    text-align: center;
    background-color: white;
}

.popup-product-photo .modal-button-prev, .popup-product-photo .modal-button-next {
    border: none;
    background-color: white;
    color: black;
    padding: 4px 16px;
    font-size: 18px;
    cursor: pointer;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
    border-radius: 5px;
}

.popup-product-photo .modal-button-next {
    margin-left: 10px;
}

.popup-product-photo .modal-button-prev:hover, .popup-product-photo .modal-button-next:hover {
    background-color: #e6c6a9;
}

.popup-product-photo .modal-button-prev font, .popup-product-photo .modal-button-next font {
    font-size: 14px;
    line-height: 30px;
}

.popup-large {
    width: 800px;
    min-height: 600px;
    left: 50%;
    top: 50%;
    margin-left: -410px;
    margin-top: -310px;
    position: absolute;
    background-color: white;
    padding: 20px;
}

.popup-column {
    width: 400px;
    height: 600px;
    left: 50%;
    top: 50%;
    margin-left: -210px;
    margin-top: -310px;
    position: absolute;
    background-color: white;
    padding: 20px;
    overflow: auto;
}

.popup-column h2 {
    margin-top: 0;
}

.popup-column h3 {
    padding: 0;
    margin: 0;
}

.popup-column h3 span {
    float: right;
    color: #adadad;
    cursor: pointer;
    margin-right: 10px;
}

.popup-column h3 span:hover {
    color: black;
}

.popup-column p {
    margin-top: 0px;
    font-size: 14px;
    color: #3f3f3f;
    font-style: italic;
}

.popup-column .modal-close {
    z-index: 50;
}

.popup-column table {
    width: 100%;
    margin-bottom: 50px;
    border-collapse: collapse;
}

.popup-column table td {
    border-bottom: 1px solid #dadada;
    padding-top: 5px;
    padding-bottom: 5px;
    cursor: pointer;
}

.popup-column font u {
    float: right;
    text-decoration: none;
    cursor: pointer;
}

.popup-column .checkbox-container {
    margin-top: 0;
    margin-bottom: 0;
}

.popup-column h3 .label {
    font-size: 12px;
    background-color: red;
    color: white;
    border-radius: 5px;
    padding: 5px 10px;
}

#popup_cookie p {
    margin-top: 10px;
    width: 80%;
}

#popup_cookie .switch {
    position: absolute;
    top: 50px;
    right: 50px;
}

.cookie-popup-controls {
    position: absolute;
    bottom: 20px;
    width: 95%;
}

.cookie-popup-controls button {
    font-size: 14px;
    border: none;
    cursor: pointer;
    margin: 10px;
    padding: 8px 16px;
    background-color: #570101;
    color: white;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
    font-weight: bold;
}

.cookie-popup-controls button:hover {
    background-color: #570101;
}

.cookie-popup-controls .cookie-accept-all, .cookie-popup-controls .cookie-accept-selected {
    float: right;
}

.cookie-popup-controls .cookie-accept-none, .cookie-popup-controls .cookie-accept-selected {
    color: black;
    background-color: white;
}

.cookie-popup-controls .cookie-accept-selected:hover {
    color: white;
}

.cookie-popup-controls .cookie-accept-none:hover {
    background-color: var(--alert-color);
    color: white;
}

.cookie-bar-image {
    position: absolute;
    height: 190px;
    margin-bottom: 5px;
    margin-left: 25px;
    left: 0;
    bottom: 0;
}

#reset_password input[type="text"] {
    display: block;
    padding: 4px 8px;
    width: 50%;
    margin-left: 22%;
}

#reset_password button {
    display: inline-block;
    margin-top: 10px;
    color: white;
    background-color: var(--color-main);
    cursor: pointer;
    border: none;
    padding: 8px 16px;
    font-size: 16px;
    border-radius: 5px;
    transition: 0.2s ease all;
    -webkit-transition: 0.2s ease all;
}

#reset_password button:hover {
    text-decoration: underline;
}

#adult_content .popup-default {
    padding-bottom: 40px;
    padding-left: 15px;
    padding-right: 15px;
}

#adult_invalid {
    background-color: #B33F40;
}

#additional_assortment button {
    width: 100%;
}

#additional_assortment tr td {
    padding: 10px;
}

#additional_assortment tr:hover td {
    background-color: var(--color-light);
}

#opening_hours {
    display: block;
    background-color: transparent;
    width: 300px;
    height: 155px;
    position: fixed;
    bottom: 25px;
    top: auto;
    left: auto;
    right: 25px;
    border: 5px solid var(--color-main);
    border-radius: 15px;
}

#opening_hours p {
    margin-top: 5px;
}

#opening_hours h2 {
    margin-top: 12px;
}

#opening_hours .popup-default {
    margin-top: auto;
    height: 155px;
    width: 300px;
    top: auto;
    border-radius: 0;
    border-radius: 10px;

    left: auto;
    right: 0;
}

#opening_hours .modal-close {
    font-size: 36px;
    top: -10px;
    z-index: 1;
}

@media only screen and (max-width: 1400px) {
    .cookie-bar-image {
        display: none;
    }

    .cookie-panel p {
        width: 60%;
        margin-left: 25px;
        margin-top: 0;
    }
}

@media only screen and (max-width: 900px) {
    .popup-large {
        width: 90%;
        margin: 0;
        left: 5%;
        top: 5%;
        box-sizing: border-box;
    }

    #popup_cookie p {
        width: 100%;
    }

    #popup_cookie .cookie-popup-section {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    #popup_cookie .cookie-popup-section h2 {
        margin: 0;
    }

    #popup_cookie .cookie-popup-section p {
        order: 1;
    }

    #popup_cookie .switch {
        position: relative;
        top: auto;
        right: auto;
    }

    #popup_cookie .cookie-popup-controls {
        position: relative;
        bottom: auto;
        width: 100%;
        margin-top: 10px;
    }
}

@media only screen and (max-width: 780px) {
    .cookie-panel {
        height: 170px;
    }
}

@media only screen and (max-width: 630px) {
    .cookie-panel {
        height: 200px;
    }
}

@media only screen and (max-width: 580px) {
    .cookie-panel p {
        width: 90%;
        margin: 0px 5% 20px;
    }

    .cookie-panel .default-button {
        top: auto;
        bottom: 25px;
        left: 5px;
        right: auto;
        padding: 8px 36px;
        border-radius: 5px;
        width: 65%;
    }

    .cookie-panel .default-button:before {
        content: none;
    }

    .cookie-panel .cookie-preferences {
        top: auto;
        bottom: 30px;
        left: auto;
        right: 20px;
    }
}

@media only screen and (max-width: 520px) {
    .modal .popup-default {
        width: 80%;
        left: auto;
        right: 5%;
    }
}

@media only screen and (max-width: 500px) {
    .cookie-panel {
        height: 250px;
    }

    .cookie-panel .default-button {
        top: auto;
        bottom: 25px;
        left: 5px;
        right: auto;
        padding: 8px 36px;
        border-radius: 5px;
        width: 50%;
    }

    #opening_hours {
        display: block;
        bottom: 0;
        right: 0;
        width: 100%;
        box-sizing: border-box;
    }

    #opening_hours h2 {
        margin-bottom: 10px;
    }

    #opening_hours .popup-default {
        height: 100%;
        width: 100%;
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        padding: 0px 10px;
        box-sizing: border-box;
    }

    #opening_hours .modal-close {
        position: absolute;
    }
}

@media only screen and (max-width: 420px) {
    #adult_content .popup-default {
        width: 90%;
        margin: 0px auto;
        left: 1%;
        top: 35%;
    }
}

.footer {
    width: 100%;
    min-height: 150px;
    background-color: var(--menu-color);
    padding-top: 50px;
    position: relative;
    float: left;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-around;
    overflow: hidden;
    border-top: 10px solid var(--color-main);
    bottom: 0;
    margin-top: auto;
}

.footer::after {
    content: " ";
    background-image: url(../../beer.png);
    width: 400px;
    height: 400px;
    background-size: contain;
    position: absolute;
    opacity: 0.1;
    transform: rotate(-21deg);
    right: -25px;
    bottom: -40px;
}

.footer ul {
    list-style-type: none;
}

.footer .footer-section-inline {
    display: inline-block;
    vertical-align: top;
    z-index: 2;
}

.footer .footer-section-inline.social-media-block {
    margin-bottom: 10px;
}

.footer .footer-section-inline .footer-icon-inline {
    display: flex;
    gap: 12px;
}

.footer .footer-section-inline p {
    width: auto;
}

.footer .footer-section-inline .footer-icon-inline a {
    margin: 0;
}

.footer a, .footer label {
    color: white;
    text-decoration: none;
    cursor: pointer;
    font-size: 14px;
    margin-bottom: 15px;
    display: block;
    font-weight: 400;
}

.footer a {
    display: inline-block;
}

.footer label {
    cursor: default;
}

.footer a:hover {
    text-decoration: underline;
}

.footer p {
    color: white;
    font-size: 14px;
    display: inline-block;
    vertical-align: top;
    width: 400px;
}

.footer img {
    cursor: pointer;
    width: 28px;
    height: 28px;
    margin-right: 10px;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
}

.footer img:hover {
    transform: scale(1.3);
}

.footer-payment div {
    width: 130px;
    height: 32px;
    background-size: 100% auto;
    background-repeat: no-repeat;
    margin-top: 50px;
}

.footer-section-copyright {
    width: 100%;
    height: 80px;
    border-top: 1px solid #3f3f3f;
    display: flex;
    align-items: center;
}

.footer-section-copyright p {
    width: 1380px;
    margin: 0px auto;
    display: block;
}

.footer-section-evie {
    width: auto;
    float: right;
    margin-right: 35px;
}

@media only screen and (max-width: 1400px) {
    .footer {
        padding-left: 25px;
        padding-right: 25px;
        box-sizing: border-box;
        justify-content: space-between;
    }

    .footer a {
        margin-right: 0;
    }

    .footer .footer-section-inline ul {
        padding-inline-start: 0px;
        margin-right: 30px;
    }
}

@media only screen and (max-width: 860px) {
    .footer p {
       width: 100%; 
    }
}

.category-content {
    display: grid;
    grid-template-areas:
    'left-panel top-panel'
    'left-panel products';
    grid-template-columns: 20% 80%;
    grid-template-rows: minmax(0px, auto) 1fr;
    margin-top: 0;
    width: 100%;
    margin-left: 0;
    left: 0;
    min-height: 655px;
}

/*
.category-content::before {
    content: "";
    position: absolute;
    left: -500%;
    top: -500%;
    width: 1000%;
    height: 1000%;
    opacity: 0.03;
    background-image: url(../../logo.png);
    background-repeat: repeat;
    background-size: 130px;
    transform: rotate(45deg);
    overflow: hidden;
}
*/
.category-content-block-bar {
    grid-area: left-panel;
    background-color: var(--filter-color);
    overflow: hidden;
    margin: 30px 15px;
    border-left: 10px solid var(--color-main);
}

/*
.category-content-block-bar::after {
    content: "";
    background-image: url(../../beer.svg);
    display: block;
    background-repeat: no-repeat;
    position: absolute;
    z-index: 0;
    width: 700px;
    height: 800px;
    opacity: 0.025;
    left: 0;
    top: 180px;
    overflow: hidden;
    transform: rotate(-10deg);
}
*/

.category-content-block-body {
    grid-area: products;
    padding: 2px;
}

.category-content-panel {
    grid-area: top-panel;
    padding-top: 30px;
    margin-left: 20px;
    margin-bottom: 20px;
    margin-right: 30px;
}

.category-products {
    margin-bottom: 50px;
    display: flex;
    flex-wrap: wrap;
}

.sort-by-button {
    display: none;
}

.category-content .category-uri {
    display: block!important;
    overflow: hidden;
    height: 0;
}

.category-content .category-uri * {
    font-size: 14px;
    color: #878787;
}

.category-content .category-uri font {
    margin-left: 10px;
    margin-right: 10px;
}

.category-content .category-uri a {
    text-decoration: none;
}

.category-content .category-uri a:hover {
    color: #bf7c55;
    text-decoration: underline;
}

.category-menu {
    display: none;
}

.category-menu ul ul {
    width: 100%;
    left: 0;
    min-height: 0;
    border-bottom: none;
}

.category-menu ul ul li {
    width: 100%!important;
    margin-left: 27px!important;
}

.category-menu ul ul ul, .category-menu ul ul {
    display: none!important;
    margin-bottom: 0;
    height: auto;
    margin-left: -15px;
}

.category-menu ul ul ul li a {
    margin-bottom: 0px!important;
}

.category-menu ul ul a {
    font-weight: normal;
}

.sort-by .ui-selectmenu-icon {
    display: none;
}

.category-menu .active-category > a > font {
    font-weight: bold;
}

.category-menu .active-category > ul {
    display: block!important;
}

.category-menu .category-icon {
    width: 24px;
    height: 24px;
    object-fit: contain;
    filter: invert(1);
    -webkit-filter: invert(1);
}

.category-menu ul li, .category-menu ul {
    display: block;
    text-align: left;
    margin-bottom: 0;
    left: 0;
    width: auto;
}

.category-menu ul ul li {
    margin-bottom: 0;
}

.category-menu ul ul, .category-menu ul  {
    display: block;
    position: relative;
    background-color: transparent;
    padding: 0;
    margin: 0;

}

.category-menu ul li a, .category-menu ul ul a {
    color: black!important;
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
    border-radius: 0;
    width: 80%;
    display: inline-block;
    height: auto;
    line-height: initial;
}

.category-menu * {
    margin-top: 0!important;
}

.category-menu ul li a:hover {
    text-decoration: underline;
}

.category-menu ul ul:before {
    display: none;
}

.category-menu a font {
    font-size: 14px;
}

.category-menu > ul > li > a > font {
    padding-left: 20px;
}


.category-menu a font:before {
    content: "➤";
    position: absolute;
    left: -20px;
    color: #adadad;
    top: 0;
}

.category-menu .active-category > a > font:before {
    color: black;
}

.category-menu a {
    margin-bottom: 0!important;
}

.category-menu .active-menu-node {
    display: block!important;
}

.category-menu ul li a:first-child {
    margin-left: 0;
}

.category-menu ul li a:hover, .category-menu ul ul a:hover {
    background-color: transparent;
}

.category-menu .menu-navigation {
    display: none;
}

.category-menu-default {
    border-bottom: 4px solid white;
    z-index: 50;
    position: relative;
    top: 0;
}

.category-content-panel h1 {
    padding-bottom: 0;
    margin: 0;
}

.category-content-panel p {
    margin: 0;
    margin-bottom: 30px;
    text-align: left;
    padding: 10px;
    font-size: 18px;
    width: 96%;
}

.category-content-panel .category-banner {
    width: 99%;
    height: 300px;
    object-fit: cover;
    object-position: left center;
    display: none;
}

.sort-by {
    width: 97%;
    margin-bottom: 20px;
    text-align: right;
    display: none;
}

.sort-by .ui-selectmenu-text {
    position: relative;
    top: 5px;
    padding-left: 0;
    padding-right: 0;
}

.sort-by label {
    margin-left: 20px;
}

.category-panel-subcategories {
    width: 100%;
    margin-top: 10px;
    margin-bottom: 10px;
    text-align: left;

    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 15px;
}

.category-panel-subcategories .category-icon {
    width: 30px;
    height: 30px;
    object-fit: cover;
    border-radius: 2px;
}

.category-panel-subcategories a {
    background-color: var(--color-main-reverse);
    padding: 10px 14px;
    border-radius: 3px;

    color: white;
    font-weight: bolder;
    transition: background-color 0.1s;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}

.category-panel-subcategories a:hover {
    background-color: var(--color-main);
    cursor: pointer;
}

.category-panel-subcategories a * {
    cursor: pointer!important;
    display: inline-block;
    vertical-align: middle;
}

.category-panel-subcategories a font {
    padding: 0px 8px;
}

.category-paging button, .reset-filter {
    text-decoration: none;
    color: white;
    font-size: 14px;
    border: none;
    cursor: pointer;
    background-color: var(--color-main-reverse);
    padding: 8px 16px;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
    border-radius: 5px;
    margin-left: 5px;
    margin-right: 5px;
    font-weight: bold;
}

.reset-filter {
    background-color: white;
    color: black;
    user-select: none;
}

.reset-filter:hover {
    background-color: var(--color-main-reverse);
    color: white;
}

.category-content .filter-switch {
    float: right;
    cursor: pointer;
    background-color: transparent;
    border: none;
    font-weight: bold;
}

.category-content .filter-switch::before {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    content: "\";
}

.category-paging button {
    margin-left: 2px;
    margin-right: 2px;
    font-size: 12px;
    padding: 2px 4px;
    width: 24px;
    height: 24px;
}

.reset-filter {
    width: 100%;
    margin-top: 100px;
    margin-left: 0;
    display: none;
}

.category-paging button:hover {
    background-color: #570101;
    color: white;
    cursor: pointer;
}

.category-paging {
    margin-top: 50px;
    margin-bottom: 50px;
    text-align: center;
    width: 100%;
}

.category-page-active {
    background-color: #570101!important;
    color: white!important;
}

.category-paging-break {
    border: 1px solid white!important;
    cursor: default!important;
}

.category-paging-break:hover {
    background-color: white!important;
}

.category-content-block-filters {
    margin: 20px 20px 50px;
    z-index: 1;
}

.category-content-block-filters .filter-block label {
    width: 100%;
    border-bottom: 1px solid var(--color-main-reverse);
    display: block;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
}

.category-content-block-filters #slider-range {
    position: relative;
    margin-bottom: 30px;
}

.category-content-block-filters .filter-block {
    margin-bottom: 50px;
}

.category-content-block-filters .filter-block label:first-child {
    display: block !important;
    margin-top: 10px;
}

.category-product-filters-label {
    font-weight: bold;
    display: block;
    font-size: 20px;
}

#max-price-currency, #min-price-currency {
    width: 20px;
}

.responsive-filters, .close-responsive-fitlers {
    display: none;
}

.category-menu li li li {
    display: none!important;
}

.category-menu li li {
    padding-left: 20px!important;
}

.recommended-prods-wrapper {
    display: none!important;
}

.recommended-prods-wrapper .recommended-item img {
    width: 32px;
    height: 32px;
    border-radius: 5px;
    object-fit: cover;
}

.recommended-prods-wrapper .recommended-item div {
    display: inline-block;
}

.recommended-prods-switch {
    font-weight: bold;
    font-size: 20px;
    margin-top: 20px;
}

.recommended-prods-wrapper h2 {
    display: none;
}

.filter-block .filter-switch {
    font-size: 0;
}

.filter-block .filter-switch::before {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 16px;
}

.filter-block .filter-switch::before {
    content: "\f077";
}

.filter-block .filter-switch.collapsed::before {
    content: "\f078";
}

@media only screen and (max-width: 1400px) {
    .category-content {
        grid-template-columns: 280px auto;
    }

    .category-content-panel {
        padding-top: 50px;
    }

    .category-content-block-body {
        padding: 2px 15px;
    }
}

@media only screen and (max-width: 1100px) {
    .category-panel-subcategories a {
        text-align: center;
        flex-grow: 1;
    }
}

@media only screen and (max-width: 860px) { 
    .category-content {
        grid-template-columns: 0 100%;
    }

    body.filter-visible .category-content .category-content-block-bar {
        display: block;
        position: fixed;
        z-index: 51;
        width: 300px;
        top: 0;
        height: 100%;
    }

    .category-uri::after {
        content: "Zobrazit filtry";
        position: fixed;
        bottom: 10px;
        right: 10px;
        background-color: var(--color-main);
        color: white;
        padding: 8px 12px;
        font-weight: bolder;
        border-radius: 5px;
        z-index: 52;
    }

    body.filter-visible .category-uri::after {
        content: "Skrýt filtry";
    }

    body.filter-visible .category-uri::after {
        background-color: var(--color-main-reverse);
    }

    .category-content-block-bar {
        display: none;
        margin: 0;
    }
}

.checkbox-container {
    display: block;
    position: relative;
    padding-left: 35px;
    padding-top: 2px;
    margin-bottom: 12px;
    margin-top: 12px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    border-bottom: none!important;
    font-size: 14px;
  }
  
  .checkbox-container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
    z-index: 10;
  }
  
  .checkmark {
    cursor: pointer;
    position: absolute;
    top: 0;
    left: 0;
    height: 20px;
    width: 20px;
    background-color: white;
    border: 1px solid white;
    border-radius: 5px;
  }

  .cart-template .checkmark {
    border: 1px solid var(--color-main-reverse);
  }
  
  .checkbox-container:hover input ~ .checkmark {
    background-color: white;
  }
  
  .checkbox-container input:checked ~ .checkmark {
    background-color: var(--color-main-reverse);
    border: 1px solid var(--color-main-reverse);
  }

  .checkbox-container input:checked ~ .checkmark:hover {
    background-color: var(--color-main);
    border: 1px solid var(--color-main);
  }
  
  .checkmark:after {
    content: "";
    position: absolute;
    display: none;
  }
  
  .checkbox-container input:checked ~ .checkmark:after {
    display: block;
  }
  
  .checkbox-container .checkmark:after {
    left: 6px;
    top: 2px;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  .imagebox-container {
      margin: 2px!important;
      display: inline-block!important;
      position: relative!important;
      width: auto!important;
      padding-left: 20px!important;

  }

  .option-disabled * {
    color: #adadad;
  }

#slider-range, .ui-slider-range {
	position: absolute;
	width: 96%;
	display: block;
	border: 0;
	background-position: 0 0;
	background-color: white;
	border-radius: 10px;
}

#slider-range {
	width: 92%;
}

#slider-range div {
	height: 3px;
	background-color: white;
	position: relative;
	border-radius:50px;
}

#slider-range span {
	position: absolute;
	z-index: 2;
	width: 1.2em;
	height: 1.2em;
	cursor: default;
	-ms-touch-action: none;
	touch-action: none;
	width: 15px;
	height: 15px;
    background-color: var(--color-main-reverse);
    border: 1px solid var(--color-main-reverse);
	margin-top: -10px;
	cursor: pointer;
	outline: none;
	border-radius: 50px;
}

.slider-range-value {
    display: inline-block;
    width: 50px;
    border: none;
    font-size: 16px;
	font-weight: bold;
	background-color: var(--filter-color);
}

#max-price, #min-price {
	background-color: white;
	border-radius: 5px;
	padding-right: 5px;
	padding-left: 5px;
}

.switch {
	position: relative;
	display: inline-block;
	width: 60px;
	height: 34px;
  }
  
  .switch input { 
	opacity: 0;
	width: 0;
	height: 0;
  }
  
  .slider {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #ccc;
	-webkit-transition: .4s;
	transition: .4s;
  }
  
  .slider:before {
	position: absolute;
	content: "";
	height: 26px;
	width: 26px;
	left: 4px;
	bottom: 4px;
	background-color: white;
	-webkit-transition: .4s;
	transition: .4s;
  }
  
  input:checked + .slider {
	background-color: #570101;
  }

  
  input:checked + .slider:before {
	-webkit-transform: translateX(26px);
	-ms-transform: translateX(26px);
	transform: translateX(26px);
  }

.select-box {
    display: none;
}

.ui-selectmenu-menu {
	padding: 0;
	margin: 0;
	position: absolute;
	top: 0;
	left: 0;
    display: none;
    background-color: var(--color-light);
    border-radius: 0;
    -webkit-box-shadow: 6px 7px 15px -3px rgba(173,173,173,1);
    -moz-box-shadow: 6px 7px 15px -3px rgba(173,173,173,1);
    box-shadow: 6px 7px 15px -3px rgba(173,173,173,1);
}

.ui-selectmenu-menu .ui-menu {
    width: 99%;
	overflow: auto;
	overflow-x: hidden;
    padding-bottom: 1px;
    list-style: none;
    margin-left: 0px;
    padding-left: 0;
    z-index: 20;
    background-color: var(--color-light);
}

.ui-selectmenu-menu .ui-menu-item-wrapper {
    font-size: 16px!important;
    margin-bottom: 3px;
}

.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup {
    font-size: 16px;
    margin-left: 0;
	height: auto;
	border: 0;
}

.ui-selectmenu-open {
	display: block;
}

.ui-selectmenu-text {
    display: inline-block;
    margin-left: 20px;
    cursor: pointer;
    font-size: 16px;
    padding-left: 10px;
    padding-right: 10px;
	overflow: hidden;
    text-overflow: ellipsis;
    position: absolute;
    background-color: transparent;
    font-weight: bold;
}

.ui-selectmenu-button.ui-button {
	text-align: left;
	white-space: nowrap;
	width: 14em;
}

.ui-selectmenu-icon.ui-icon {
	float: right;
	margin-top: 0;
}

.ui-selectmenu-menu .ui-menu li {
    cursor: pointer;
    padding: 8px 25px 5px;
}

.ui-selectmenu-menu .ui-menu li:hover {
    cursor: pointer;
}

.ui-selectmenu-menu .ui-menu .ui-state-active {
    font-weight: bold;
}

/* product card selectbox */

.product-content .ui-selectmenu-text {
    display: block;
    cursor: pointer;
    font-size: 16px;
    padding-left: 10px;
    padding-right: 10px;
	overflow: hidden;
    text-overflow: ellipsis;
    position: relative;
    width: 260px;
    margin-bottom: 20px;
    padding: 8px 64px 8px 16px;
    margin-left: 0;
    margin-top: 4px;
    background-color: #f1f1f1;
    border: 1px solid #adadad;
}

.product-content .ui-selectmenu-text:hover {
    background-color: var(--color-light);
}

.product-content .ui-selectmenu-button.ui-button {
	text-align: left;
	white-space: nowrap;
	width: 14em;
}

.product-content .ui-selectmenu-button-closed .ui-icon {
    position: absolute;
    display: block;
	margin-top: 0;
    top: 40px;
    color: transparent;
    left: 300px;
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #adadad;
    z-index: 10;
}

.product-content .ui-selectmenu-button-open .ui-icon {
    position: absolute;
    display: block;
	margin-top: 0;
    top: 40px;
    color: transparent;
    left: 300px;
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #adadad;
    z-index: 10;
}

.product-content .ui-selectmenu-menu .ui-menu li {
    cursor: pointer;
    padding-left: 30px;
}

.product-content .ui-selectmenu-menu .ui-menu li:hover {
    cursor: pointer;
    background-color: var(--color-light);
}

.product-content .ui-selectmenu-menu .ui-menu .ui-state-active {
    font-weight: bold;
}

.product-content .ui-selectmenu-icon {
    display: none;
}

.product-content .product-variant-text {
    display: block;
    margin-top: 20px;
    font-weight: bold;
}

.product-content .ui-selectmenu-menu li {
    padding-left: 0;
    margin-left: 0;
}

/* shopping cart number selectbox */

.phone-row input[type="text"] {
	display: inline-block!important;
	width: 320px!important;
}

.phone-row .ui-selectmenu-text {
	display: block;
    background-color: transparent;
    padding-left: 0;
    padding-right: 0;
    margin-top: 0;
    position: relative;
    margin-left: 0;
}

.phone-row .ui-selectmenu-button * {
	cursor: pointer;
}

.phone-row .ui-selectmenu-button.ui-button {
	text-align: left;
	white-space: nowrap;
	display: inline-block;
	width: 70px;
	-webkit-transition:0.2s all ease;
    transition:0.2s ease all;
}

.phone-row .ui-selectmenu-icon {
	color: transparent;
}

.phone-row .ui-selectmenu-button-closed .ui-selectmenu-icon {
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 8px solid black;
}

.phone-row .ui-selectmenu-button-open .ui-selectmenu-icon {
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 8px solid black;
	margin-top: 8px;
}

.selectmenu-phone-open {
	background-color: #d3d3d3;
    width: 100px;
    height: 200px;
    overflow-y: auto;
    overflow-x: hidden;
    position: absolute;
    margin-top: 10px;
}

.selectmenu-phone-open ul {
	list-style-type: none;
	padding-left: 0;
	margin-left: 0;
}

.selectmenu-phone-open ul li {
	cursor: pointer;
	padding-left: 10px;
}

/*shopping cart country seletbox */

.country-row .ui-selectmenu-text {
	display: block;
    position: relative;
    background-color: transparent;
    margin-left: 0;
    padding-left: 0;
    color: black;
}

.country-row .ui-selectmenu-button * {
	cursor: pointer;
}

.country-row .ui-selectmenu-button.ui-button {
    height: 35px;
    text-align: left;
    white-space: nowrap;
    display: inline-block;
    width: 400px;
    padding-top: 3px;
    padding-bottom: 3px;
    padding-left: 20px;
    background-color: white;
    color: black;
    border-bottom: 1px solid black;
    -webkit-transition: 0.2s all ease;
    transition: 0.2s ease all;
    width: 100%;
    display: flex;
    align-items: center;
}

.country-row .ui-selectmenu-button.ui-button:hover {
	background-color: var(--color-light);
}

.country-row .ui-selectmenu-icon {
    display: inline-block;
	float: left!important;
	margin-left: -12px!important;
	color: transparent;
}

.country-row .ui-selectmenu-button-closed .ui-selectmenu-icon {
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 8px solid black;
    margin-right: 10px;
}

.country-row .ui-selectmenu-button-open .ui-selectmenu-icon {
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 8px solid black;
	margin-right: 10px;
}

.selectmenu-country-open {
	background-color: white;
	width: auto;
	height: 200px;
	overflow-y: auto;
	overflow-x: hidden;
	color: black;
	position: absolute;
}

.selectmenu-country-open ul {
	list-style-type: none;
	padding-left: 0;
	margin-left: 0;
}

.selectmenu-country-open ul li {
	cursor: pointer;
	padding-left: 10px;
}

.product-content {
    margin-top: 0;
    display: grid;
    grid-template-areas:
    'uri-line uri-line'
    'product-photo product-panel'
    'product-images product-panel'
    'product-description product-detail-controll-buttons'
    'product-description displayed-content'
    'product-description technical-specification'
    'product-blog-articles-container product-blog-articles-container'
    'homepage-best-selling homepage-best-selling'
    ;
    grid-template-columns: 50% 50%;
    grid-template-rows: auto auto auto 75px;

    max-width: 1380px;
    margin: 0px auto;
    box-shadow: 0 0 60px 50px white;
}

.product-content .uri-line {
    padding-top: 10px;
    grid-area: uri-line;
    display: none;
}

.product-content .uri-line a {
    color: #878787;
    text-decoration: none;
    margin-left: 10px;
    margin-right: 10px;
    margin-bottom: 10px;
    display: inline-block;
    font-size: 14px;
}

.product-content .uri-line font {
    cursor: default;
    font-size: 14px;
    color: white;
}

.product-content .uri-line font:before {
    content: ">";
    color: #878787;
}

.product-content .uri-line a:hover {
    text-decoration: underline;
    color: #bf7c55;
}

.product-variant-table-active-row .discount-mode {
    color: white;
}

.product-content .no-variant, .product-content .rating-review-empty h2, .product-content .no-recommended h2, .product-content .no_tech_specs h2 {
    text-align: center;
}

.product-content .images {
    height: auto;
    text-align: left;
    grid-area: product-images;
}

.product-content .images video,
.product-content .images img {
    max-width: 64px;
    max-height: 64px;
    min-width: 64px;
    min-height: 64px;
    border: 4px solid white;
    margin: 4px;
    object-fit: contain;
    cursor: pointer;
}

.product-content .upper-section {
    padding-bottom: 20px;
}

.product-content .images img:hover, .product-content .images .active-image {
   border: 4px solid var(--color-main);
}

.product-content .image-block {
    grid-area: product-photo;
    display: flex;
}

.product-content .image-block .images {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 85px;
}

.product-content .image-block .images > * {
    padding: 5px;
}

.product-content .image-block .product-photo-wrapper {
    width: 100%;
    height: 500px;
    padding: 25px;
}

.product-content .product-photo, .product-content .product-video {
    vertical-align: top;
    text-align: center;
    width: 100%;
    height: 100%;

    display: flex;
    justify-content: center;
    align-items: center;
}

.product-content .product-photo .product-photo-options img {
    display: none;
    cursor: pointer;
    width: 24px;
    height: 24px;
    margin-right: 10px;
}

.product-content .product-photo .product-photo-options {
    display: none;
}

.product-content .product-photo .product-photo-large-image {
    max-height: 100%;
    max-width: 100%;
}

.product-content .product-panel {
    grid-area: product-panel;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-top: 35px;
}

.product-content .product-panel .product-header {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
    margin-top: 35px;
    margin-bottom: 10px;
}

.product-content .product-panel > * {
    width: 100%;
}

.product-content .product-panel .dimensions, .product-content .product-panel .product-color-variant-container {
    display: none;
}

.product-content .product-panel .description {
    height: 170px;
    overflow: hidden;
}

.product-content .product-panel .description p {
    margin: 0;
}

.product-content .product-panel h2 {
    padding: 0;
    margin: 0;
    font-size: 40px;
    margin-bottom: 0;
    grid-area: name;

    border-left: 5px solid var(--color-main);
    height: auto;
    display: flex;
    align-items: center;
    padding-left: 15px;
    height: auto;
}

.product-content .panel-price {
    grid-area: price;
}

.product-content .panel-price .discount {
    display: none;
    font-size: 14px;
    color: white;
    border-radius: 50px;
    background-color: #228B22;
    width: 100px;
    text-align: center;
    font-size: 14px;
    margin-top: -10px;
}

.product-content .panel-price .final-price {
    margin-right: 20px;
    font-weight: bold;
    font-size: 32px;
}

.product-content .panel-price .no-discount-price {
    text-decoration: line-through;
    font-size: 20px;
}

.product-content .panel-controls {
    grid-area: controls;
    display: grid;
    grid-template-areas:
    'product-amount add-to-cart'
    'product-variant product-variant'
    ;
}

.product-content .panel-controls .ui-spinner {
    width: 250px;
    display: inline-block;
}

.product-content .panel-price .vat-info {
    display: block;
    font-size: 16px;
}

.product-content .panel-price .stock {
    margin-top: 15px;
    display: block;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 3px;
    margin-bottom: 5px;
}

.product-content .panel-price .stock .stock-not-available {
    width: 245px;
}

.product-content .panel-price .stock .availability-info {
    font-weight: bolder;
    text-align: center;
    padding: 8px 16px;
    border-left: 5px solid var(--color-main);
}

.product-content .panel-price .stock .availability-info > span {
    color: var(--color-main);
    font-size: 18px;
    margin-left: 5px;
}

.product-content .panel-price .stock .availability-info.ready {
    color: #228B22;
}

.product-content .price-panel .product-varint-select {
    display: inline-block;
}

.product-content .stock-available {
    color: green;
}

.product-content .product-card-color-variant {
    display: block;
    width: 300px;
    overflow-x: auto;
    margin-top: 20px;
}

.product-content .color-variant-box {
    width: 25px;
    height: 25px;
    margin: 2px;
    display: inline-block;
    cursor: pointer;
    border: 2px solid white;
}

.product-content .active-color-variant {
    border: 2px solid #037f51!important;
}

.product-content .product-card-color-variant label {
    display: block;
}

.product-content .product-description {
    display: block;
    border-top: 1px solid var(--color-main);
    grid-area: product-description;
    margin-top: 20px;
    padding: 20px;
}

.product-content .product-detail-controll-buttons {
    border-top: 1px solid var(--color-main);
    margin-top: 20px;
    grid-area: product-detail-controll-buttons;
    padding: 20px;

    display: flex;
    flex-wrap: wrap;
}

.product-content .product-detail-controll-buttons button {
    background-color: var(--color-main);
    color: white;
    cursor: pointer;
    outline: none;
    padding: 8px 16px;
    margin-right: 10px;
    font-weight: bold;
    border: none;
    border-radius: 5px;
    transition: 0.2s ease all;
    -webkit-transition: 0.2s ease all;
}

.product-content .product-detail-controll-buttons button:hover, .product-content .product-detail-controll-buttons .b-active {
    background-color: var(--color-main-reverse);
}

.product-content .product-detail-controll-buttons .b-active:before {
    content: " ";
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid var(--color-main-reverse);
    position: absolute;
    left: 50%;
    margin-left: -10px;
    bottom: -10px;
}

.product-content .technical-specification {
    grid-area: technical-specification;
}

.product-content .technical-specification td {
    padding: 5px;
}

.product-content .technical-specification tr:nth-child(even) td {
    background-color: #f1f4fd;
}

.product-content .technical-specification tr:hover td {
    background-color: #c5d1f6;
}

.discount-mode {
    color: #db0000;
}

.product-content .technical-specification td:first-child {
    font-weight: bold;
}

.product-content .technical-specification table {
    width: 96%;
    margin-left: 2%;
    border-collapse: collapse;
}

.product-content .product-description, .product-content .product-description * {
    cursor: default!important;
}

.product-content .product-description table td {
    padding: 10px;
    vertical-align: top;
    border: 1px solid #d3d3d3;
}

.product-content .product-description table {
    border-collapse: collapse;
    width: 100%!important;
}

.product-content .product-description table tr:hover {
    background-color: #d3d3d3;
}

.product-labels {
    margin-bottom: 0;
    text-align: right;
    grid-area: labels;
}

.code-ean {
    grid-area: code-ean;
    font-size: 14px;
    color: #878787;
    display: none;
}

.product-content .product-variant-container {
    grid-area: product-variant;
    display: none;
}

.product-content .product-blog-articles-container {
    grid-area: product-blog-articles-container;
    padding: 20px;
    display: none;
}

.product-content .blog-articles {
    display: none;
}

.product-content .product-panel .amount-block {
    grid-area: product-amount;
    display: flex;
    height: 45px;
}

.product-content .product-panel .amount-block .ui-spinner {
    display: flex;
    align-items: center;
}

.product-content .best-selling-products {
    padding: 12px;
    padding-top: 0px;
}

.product-content .best-selling-products .products-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.product-content .best-selling-products .product-card {
    width: 270px;
}

.product-content .recommended-to-buy, .product-content .rating-review, .product-content .product-variants {
    grid-area: displayed-content;
    display: none;
    min-height: 0;
    padding: 20px;
}

.product-content .recommended-to-buy > p:first-child {
    display: none;
}

.product-content .product-variants .product-card,
.product-content .recommended-to-buy .product-card {
    display: grid;
    grid-template-areas:
    'variant-image variant-name variant-price'
    'variant-image variant-desc variant-price'
    ;
    grid-template-columns: 60px;
    width: 100%;
    height: auto;
    min-height: 60px;
    padding: 5px;
}

.product-content .product-variants .product-card:hover,
.product-content .recommended-to-buy .product-card:hover {
    background-color: #F7EDE4;
}

.product-content .product-variants .product-card h2,
.product-content .recommended-to-buy .product-card h2 {
    width: 400px;
    margin-left: 10px;
    font-size: 14px;
    text-align: left;
    grid-area: variant-name;
    bottom: auto;
}

.product-content .product-variants .product-card .product-price,
.product-content .recommended-to-buy .product-card .product-price {
    position: relative;
    text-align: left;
    bottom: initial;
    width: auto;
    grid-area: variant-price;
    padding: 4px 0 4px 10px;
}

.product-content .product-variants .product-card .product-img,
.product-content .recommended-to-buy .product-card .product-img {
    width: 60px;
    height: 60px;
    grid-area: variant-image;
}

.product-content .product-variants .product-card .product-stock,
.product-content .recommended-to-buy .product-card .product-stock {
    grid-area: variant-stock;
    padding: 0;
    position: relative;
    text-align: left;
    bottom: initial;
}

.product-content .product-variants .product-card .description-short,
.product-content .recommended-to-buy .product-card .description-short {
    text-align: left;
    max-height: 40px;
    max-width: 445px;
    overflow: hidden;
    bottom: auto;
}

.product-content .product-variants .product-card a,
.product-content .product-variants .product-card .product-discount,
.product-content .product-variants .product-card .product-new,
.product-content .product-variants .product-card .product-sale,
.product-content .recommended-to-buy .product-card a,
.product-content .recommended-to-buy .product-card .product-discount,
.product-content .recommended-to-buy .product-card .product-new,
.product-content .recommended-to-buy .product-card .product-sale {
    display: none!important;
}

.product-content .rating-review label {
    display: none;
}

.product-content .rating-review .rating-block {
    display: flex;
    align-items: center;
}

.product-content .rating-review .rating-block .stars {
    display: inline-block;
    vertical-align: top;
    width: 60%;
}

.product-content .rating-review .rating-block .stars-text {
    display: inline-block;
    vertical-align: top;
    width: 30%;
    text-align: left;
    margin: 0;
}

.product-content .rating, .product-content .review {
    display: inline-block;
    vertical-align: top;
}

.product-content .rating {
    margin-left: 0;
    width: 100%;
    margin-top: 0;
    margin-bottom: 15px;
}

.product-content .rating img {
    width: 48px;
    height: 48px;
}

.product-content .stars-text {
    font-weight: bold;
    font-size: 26px;
}

.product-content .review {
    width: 100%;
}

.product-content .homepage-best-selling {
    margin-top: 50px;
    margin-left: 0;
    grid-area: homepage-best-selling;
    padding-bottom: 100px;
}

.product-content .homepage-best-selling .product-card {
    border-top: 0px;
}

.product-content .review-block {
    background-color: #f1f4fd;
    padding: 10px;
    padding-right: 15px;
    box-sizing: border-box;
    margin-bottom: 10px;
}

.product-content .review-block p {
    border-left: 5px solid #afb8d5;
    padding: 5px 0px 5px 10px;
    margin: 0;
}

.spe-code, .spe-ean {
    font-size: 12px;
    color: #878787;
    display: inline-block;
    margin-bottom: 0px;
    padding-bottom: 0px;
    margin-top: 0px;
    padding-top: 0px;
    display: none;
}

.warning-block {
    display: none;
    background-color: #f7911a;
    padding: 8px 16px;
    font-size: 12px;
    font-weight: bold;
    border-radius: 10px;
    position: absolute;
    top: -17px;
    width: 350px;
    left: -400px;
}

.warning-block:before {
    content: " ";
    width: 0;
    height: 0;
    position: absolute;
    top: 15px;
    right: -10px;
    border-top: 10px solid transparent;
    border-left: 10px solid #f7911a;
    border-bottom: 10px solid transparent;
}

.warning-block-acitve {
    display: block;
}

@media only screen and (max-width: 1400px) {
    .product-content .panel-controls {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }
}

@media only screen and (max-width: 1280px) { 
    .product-content .product-variants .product-card,
    .product-content .recommended-to-buy .product-card {
        grid-template-columns: 60px auto 120px;
    }

    .product-content .product-variants .product-card h2,
    .product-content .recommended-to-buy .product-card h2 {
        width: 100%;
    }
}

@media only screen and (max-width: 960px) {
    .product-content {
        grid-template-areas:
            'uri-line uri-line'
            'product-photo product-panel'
            'product-images product-panel'
            'product-description  product-description'
            'product-detail-controll-buttons product-detail-controll-buttons'
            'displayed-content displayed-content'
            'technical-specification technical-specification'
            'product-blog-articles-container product-blog-articles-container'
            'homepage-best-selling homepage-best-selling';

        grid-template-rows: auto;
    }
}

@media only screen and (max-width: 860px) {
    .product-content {
        display: flex;
        flex-direction: column;
    }

    .product-content .image-block {
        margin-top: 0px;
        padding: 0px 15px;
    }

    .product-content .product-panel {
        padding: 0px 15px;
    }

    .product-content .product-panel .product-header {
        margin-top: 0px;
        margin-bottom: 15px;
    }

    .product-content .technical-specification {
        order: 9;
        border-top: 1px solid var(--color-main);
        padding-top: 30px;
        margin-top: 10px;
    }

    .product-content .homepage-best-selling {
        order: 10;
        padding-bottom: 0px;
    }

    .product-content .panel-controls {
        flex-direction: row;
        justify-content: space-between;
    }

    .product-content .product-panel .description {
        height: auto;
    }

    .product-content .image-block .product-photo-wrapper {
        height: 350px;
    }

    .product-content .panel-price .stock {
        justify-content: space-between;
    }

    .product-content .panel-price .stock .availability-info {
        margin-right: 12px;
    }
}

@media only screen and (max-width: 580px) {
    .product-content .image-block {
        display: flex;
        flex-direction: column-reverse;
    }

    .product-content .image-block .images {
        flex-direction: row;
        max-width: none;
        max-height: 85px;
    }

    .product-content .image-block .product-photo-wrapper {
        box-sizing: border-box;
    }

    .product-content .product-detail-controll-buttons button {
        margin-top: 15px;
        flex-grow: 1;
    }

    .product-content .rating-review .rating-block .stars {
        width: 100%;
    }

    .product-content .product-panel h2 {
        margin-right: 10px;
    }
}

@media only screen and (max-width: 480px) {
    .product-content .panel-controls {
        flex-direction: column;
    }

    .product-content .product-panel .product-header {
        flex-direction: column-reverse;
        align-items: flex-start;
    }

    .product-content .panel-price .stock .stock-not-available,
    .product-content .product-panel h2 {
        margin-bottom: 5px;
    }
}

.img-zoom-lens {
  position: absolute;
  border: 1px solid black;
  width: 120px;
  height: 120px;
  z-index: 20;
  background-color: rgba(0,0,0,0.5);
  cursor: pointer;
  display: block;
}

.img-zoom-result {
  border: 2px solid #d3d3d3;
  width: 600px;
  height: 600px;
  position: absolute;
  top: 0; 
  right: -600px;
  z-index: 20;
  display: none;
}

#final_price_no_vat_text {
    text-align: right;
    padding-right: 20px;
}

#final_price_no_vat_value label, #final_price_no_vat_text label {
    /* top: -30px; */
}

.cart-template .amount-unit {
    margin-left: -115px;
}

.cart-template {
    width: 1400px;
    margin: 110px auto 0px;
    margin-top: 110px;
    padding-bottom: 100px;
    position: relative;
    min-height: 80%;
    box-shadow: 0 0 60px 50px white;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    min-height: 525px;
    box-sizing: border-box;
}

.important-accept-checkbox {
    display: none!important;
}

.cart-final-accept {
    font-weight: normal!important;
    margin-left: 45px;
    margin-bottom: 40px;
    top: 30px;
    font-size: 14px!important;
}

.cart-final-accept a {
    font-weight: bold;
}

.cart-template .cart-summary-options {
    margin-top: 30px;
    margin-bottom: 30px;
}

.cart-template .cart-summary-options label {
    width: auto;
    display: inline-block;
    margin-left: 10px;
}

.cart-template .cart-summary-options a {
    color: black;
    text-decoration: none;
}

.cart-template .cart-summary-options a:hover {
    text-decoration: underline;
}

.cart-template .cart-header {
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}

.cart-template .cart-header p {
    margin: 0;
    border-bottom: none!important;
    width: auto !important;
}

.cart-template .clear-cart {
    font-size: 16px;
    color: var(--alert-color);
    font-weight: bolder;
    background-color: white;
    margin-right: 15px;
    cursor: pointer;
    position: absolute;
    top: 0;
}

.cart-template .clear-cart:hover {
    text-decoration: underline;
}

.cart-template .cart-summary, .cart-template .cart-customer-info {
    width: 100%;
}

.cart-template .cart-summary-final-note td {
    padding-top: 15px;
    padding-bottom: 15px;
    border: none!important;
}

.cart-template .cart-customer-info textarea {
    width: 65%;
    border: 1px solid black;
    resize: none;
    padding: 1%;
    height: 200px;
    margin: 35px auto 0;
    display: block;
    border-radius: 10px;
}

.cart-template #final_price_text {
    text-align: right;
}

.cart-template #final_price_text label {
    margin-right: 20px;
}

.cart-template .cart-summary .cart-summary-info {
    text-align: left;
    width: 680px;
    margin: 10px auto 50px;
}

.cart-template .cart-summary-final-price td {
    padding-top: 30px;
    padding-bottom: 30px;
    border-bottom: none!important;
}

.cart-template .cart-summary-final-price label {
    font-weight: bold;
    font-size: 22px;
}

.cart-template .cart-summary-products {
    border-collapse: collapse;
}

.cart-template .cart-summary-products tr:first-child {
    border-bottom: 3px solid var(--color-main);
}

.cart-template .cart-summary-products tr:nth-child(2) td {
    padding-top: 10px;
}

.cart-template .cart-summary-products th {
    padding-bottom: 6px;
}

.cart-template .cart-summary-products td {
    border-bottom: 1px solid #adadad;
}

.cart-template .cart-summary .cart-summary-info td {
    vertical-align: bottom;
}

.cart-template .cart-summary p {
    font-weight: bold;
}

.cart-template .cart-summary-total label {
    font-weight: bold;
    padding-top: 15px;
    padding-bottom: 15px;
    display: block;
}

.cart-summary-delivery-payment label {
    padding-top: 15px;
    padding-bottom: 15px;
    display: block;
}

.cart-template .cart-header p,
.cart-template .cart-delivery p,
.cart-template .cart-payment p,
.cart-template .discount-code p,
.cart-template .cart-billing-info p,
.cart-template .cart-company-info p,
.cart-template .cart-delivery-info p,
.cart-template .cart-summary p {
    font-weight: bold;
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 1px solid #adadad;
    width: 98%;
    margin: 0px auto;
    padding-bottom: 5px;
    margin-bottom: 35px;
    text-align: center;
}

.cart-template .cart-delivery td:nth-child(1), .cart-template .cart-payment td:nth-child(1) {
    width: 80%;
}

.cart-template .billing-delivery-checkbox-container label, .cart-template .company-checkbox-container label {
    display: block!important;
}

.cart-template .cart-billing-info, .cart-template .cart-delivery-info, .cart-template .cart-company-info {
    width: 100%;
}

.cart-template .cart-billing-info table, .cart-template .cart-delivery-info table, .cart-template .cart-company-info table {
    width: 100%;
}

.cart-template .cart-billing-info label, .cart-template .cart-delivery-info label, .cart-template .cart-company-info label {
        display: none;
}

.cart-template .cart-billing-info input,
.cart-template .cart-delivery-info input,
.cart-template .cart-company-info input {
    border: 1px solid #adadad;
    font-size: 16px;
    padding: 4px 8px;
    width: 100%;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
    height: 32px;
    border: none;
    border-bottom: 1px solid black;
    border-radius: 0;
}

.cart-template .cart-billing-info input:focus,
.cart-template .cart-delivery-info input:focus,
.cart-template .cart-company-info input:focus,
.country-row .ui-selectmenu-button.ui-button:focus {
    border-bottom: 1px solid var(--color-main);
}s

.cart-template .cart-delivery-info,
.cart-template .cart-company-info {
    margin-top: 50px;
}

.cart-template .cart-billing-info table tbody,
.cart-template .cart-delivery-info table tbody,
.cart-template .cart-company-info table tbody {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 15px;
}

.cart-template .cart-billing-info table tbody tr,
.cart-template .cart-delivery-info table tbody tr,
.cart-template .cart-company-info table tbody tr {
    display: flex;
    width: 100%;
    flex-direction: row;
    justify-content: center;
    gap: 44px;
}

.cart-template .cart-billing-info table tbody tr td,
.cart-template .cart-delivery-info table tbody tr td,
.cart-template .cart-company-info table tbody tr td {
    width: 32%;
}

.cart-template .cart-billing-info table tbody tr td.phone-row,
.cart-template .cart-delivery-info table tbody tr td.phone-row,
.cart-template .cart-company-info table tbody tr td.phone-row {
    display: flex;
    align-items: center;
}

.cart-template .cart-billing-info table tbody tr td.phone-row > span,
.cart-template .cart-delivery-info table tbody tr td.phone-row > span,
.cart-template .cart-company-info table tbody tr td.phone-row > span {
    display: flex;
    align-items: center;
    gap: 10px;
    height: 100%;
    padding-left: 10px;
}

.cart-template .discount-code p {
    border-bottom: none;
}

.cart-template .discount-code input {
    border: 1px solid #adadad;
    font-size: 18px;
    padding: 6px 8px;
}

.cart-template .product-list, .cart-template .cart-summary-products {
    width: 100%;
}

.cart-template .product-list .product-list-card {
    padding-top: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #d6d6d6;

    display: flex;
}

.cart-template .product-list .product-list-card .product-icon {
    width: 128px;
    height: 128px;
    object-fit: contain;
    display: inline-block;
    vertical-align: top;
    cursor: pointer;
    margin-left: 20px;
    border-radius: 5px;
}

.summary-product-table-image img {
    width: 64px;
    height: 64px;
    object-fit: contain;
    vertical-align: top;
}

.cart-template .product-list .product-list-card .color {
    display: inline-block;
}

.cart-template .product-list .product-list-card .color img{
    width: 24px;
    height: 24px;
    margin-left: 100px;
}

.cart-template .product-list .product-list-card .color font {
    display: none;
} 

.cart-template .product-list .product-list-card .data-block {
    width: 100%;
    margin-top: 0px;
    margin-left: 20px;
    display: inline-block;
    vertical-align: top;
}

.cart-template .product-list .product-list-card .data-block a{
    width: 300px;
}

.cart-template .product-list .product-list-card a, .summary-product-table-name a {
    font-size: 18px;
    color: black;
    text-decoration: none;
    font-weight: bold;
    display: inline-block;
}

.cart-template .product-list .product-list-card a:hover, .summary-product-table-name a:hover {
    text-decoration: underline;
}

.cart-summary-products td, .cart-summary-products th {
    text-align: left;
}

.cart-template .product-list .product-list-card .ean, .cart-template .product-list .product-list-card .code, .summary-product-table-name font, .summary-product-table-name label {
    display: none;
}

.cart-template .product-list .product-list-card .final-price-discount {
    color: red;
    font-weight: bold;
    margin-right: 10px;
}

.cart-template #final_price_value .discount {
    color: red;
    font-weight: bold;
}

.cart-template #final_price_value .no-discount {
    text-decoration: line-through;
    font-size: 14px;
    display: block;
}

.cart-template .product-list .product-list-card .final-price {
    font-weight: bold;
}

.cart-template .product-list .product-list-card .no-discount {
    text-decoration: line-through;
    font-size: 14px;
}

.cart-template .product-list .product-list-card .stock {
    display: none;
    margin-top: 10px;
}

.cart-template .product-list .product-list-card .stock font {
    font-size: 12px;
    padding: 4px 8px;
}

.cart-template .product-list .product-list-card .price-container {
    margin-top: 40px;
}

.cart-template .product-list .product-list-card .default-price {
    display: block;
    font-size: 12px;
}

.cart-template .product-list .product-list-card .option-block {
    width: 360px;
    background-color: white;
    margin-right: 2%;
}

.cart-template .product-list .product-list-card .option-block > div {
    display: flex;
}

.cart-template .product-list .product-list-card .option-block .ui-spinner {
    display: flex;
}

.cart-template .product-list .product-list-card .option-block .ui-spinner a {
    display: flex;
    justify-content: center;
    color: white;
}

.cart-template .cart-buttons {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-top: 50px;
    margin-right: 50px;
}

.cart-template .cart-buttons button {
    background-color: var(--color-main);
    border-radius: 5px;
    text-decoration: none;
}

.cart-template .cart-buttons button:hover {
    background-color: var(--color-main-reverse);
}

.cart-template #cart_button_prev {
    background-color: #d3d3d3;
    color: var(--color-main-reverse);
}

.cart-template #cart_button_prev:hover {
    background-color: #8d8d8d;
}

.cart-template .cart-delivery {
    width: 45%;
    display: inline-block;
    width: 47%;
    margin-right: 5%;
}

.cart-template .cart-delivery::after {
    content: " ";
}

.cart-template .cart-payment {
    width: 45%;
    display: inline-block;
    width: 47%;
}

.cart-template .cart-delivery .cart-delivery-block table,
.cart-template .cart-payment .cart-payment-block table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 20px;
}

.cart-template .cart-delivery .cart-delivery-block table tr:not(:last-child) td,
.cart-template .cart-payment .cart-payment-block table tr:not(:last-child) td {
    border-bottom: 1px solid #d6d6d6;
}

.cart-template .cart-delivery .cart-delivery-block table tr td,
.cart-template .cart-payment .cart-payment-block tr table td {
    padding-left: 20px;
}

.cart-template .cart-status-bar {
    width: 100%;
    text-align: center;
    padding-top: 0;
    margin-bottom: 50px;
}

.cart-template .cart-status-bar  span img {
    display: none;
}

.cart-template .cart-status-bar span {
    width: 250px;
    display: inline-block;
    margin-left: 20px;
    margin-right: 20px;
    padding: 4px 8px;
    font-size: 20px;
    cursor: default;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    font-weight: bold;
}

.cart-template .cart-status-bar span:before {
    content: "→";
    position: absolute;
    right: -40px;
}

.cart-template .cart-status-bar span:nth-child(4):before {
    display: none;
}

.cart-template .cart-status-bar span * {
    cursor: default;
}

.cart-template .active-cart-step {
    color: var(--color-main)!important;
}

@media only screen and (max-width: 1400px) {
    .cart-template {
        width: 98%;
    }

    .cart-template .cart-status-bar {
        display: flex;
        justify-content: center;
    }

    .cart-template .cart-buttons {
        margin-right: 0;
        justify-content: center;
    }
}

@media only screen and (max-width: 610px) {
    .cart-template .product-list .product-list-card {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        text-align: center;
    }

    .cart-template .product-list .product-list-card .option-block,
    .cart-template .product-list .product-list-card > * {
        width: 100%;
        margin: 0;
    }

    .cart-template .product-list .product-list-card .option-block > div {
        display: flex;
        justify-content: center;
        margin-right: 100px;
        margin-top: 10px;
    }
    
    .cart-template .product-list .product-list-card .data-block,
    .cart-template .product-list .product-list-card .product-icon {
        margin-left: 0;
    }

    .cart-template .product-list .product-list-card .price-container {
        margin-top: 10px;
    }

    .cart-template .cart-status-bar {
        display: none;
    }

    .cart-template .cart-payment,
    .cart-template .cart-delivery {
        width: 100%;
        margin: 10px;
    }

    .cart-template .cart-delivery .cart-delivery-block table tr td,
    .cart-template .cart-payment .cart-payment-block tr table td {
        padding-left: 0;
    }

    .cart-template .cart-billing-info table tbody tr,
    .cart-template .cart-delivery-info table tbody tr,
    .cart-template .cart-company-info table tbody tr {
        flex-direction: column;
        gap: 15px;
    }

    .cart-template .cart-billing-info table tbody tr td,
    .cart-template .cart-delivery-info table tbody tr td,
    .cart-template .cart-company-info table tbody tr td {
        width: 96%;
    }

    .cart-template .cart-billing-info input,
    .cart-template .cart-delivery-info input,
    .cart-template .cart-company-info input {
        width: 100% !important;
    }

    .country-row .ui-selectmenu-button.ui-button {
        width: 98%;
    }

    .cart-template .cart-customer-info textarea {
        width: 94%;
    }

    .cart-template .cart-summary .cart-summary-info {
        width: 96%;
        margin-left: 4%;
    }

    .cart-template .cart-buttons {
        flex-direction: column;
    }

    .cart-summary-products .cart-summary-final-price td:first-child {
        display: none;
    }

    .cart-template .product-list, .cart-template .cart-summary-products {
        width: 100%;
        display: block;
        overflow-x: scroll;
    }

    .cart-summary-products .cart-summary-final-price #final_price_value label {
        display: block;
        min-width: 120px;
    }

    .cart-summary-products tr:first-child th:nth-child(2) {

    }
}

/* amount */
.ui-spinner-input {
    font-size: 18px;
    border: none;
    background-color: white;
    border: 1px solid black;
    outline: none;
    padding: 8px 16px;
    padding-right: 80px;
    border-radius: 0;
    max-width: 40px;
    font-weight: bold;
    border-bottom-left-radius: 5px;
    border-top-left-radius: 5px;
    height: 27px;
    border-right: 0px;
}

.ui-spinner-button {
    display: inline-block;
    background-color: white;
    font-weight: bold;
    width: 45px;
    height: 45px;
    cursor: pointer;
    border-radius: 0;
    transition: 0.2s ease all;
    -webkit-transition: 0.2s ease all;
    color: white;
    box-sizing: border-box;
    font-size: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ui-spinner-button:first-of-type {
    background-color: var(--color-main);
    border: 3px solid var(--color-main);
}

.ui-spinner-button:last-of-type {
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    background-color: var(--color-main-reverse);
}

.ui-spinner-button:hover {
    opacity: 0.65;
    color: white!important;
    text-decoration: none!important;
}

.amount-unit {
    font-size: 14px;
    margin-left: -150px;
    font-weight: bold;
    display: flex;
    align-items: center;
}

.ui-icon-triangle-1-n:after {
    content: "+";
    cursor: pointer;
    width: 36px;
    height: 36px;
    line-height: 36px;
    text-align: center;
    display: block;
}

.ui-icon-triangle-1-s:after {
    content: "-";
    cursor: pointer;
    width: 36px;
    height: 36px;
    line-height: 36px;
    text-align: center;
    display: block;
}

@media only screen and (max-width: 685px) {
    .cart-template .ui-spinner-input {
        padding: 8px 12px;
    }
    
    .cart-remove-button, .cart-template .clear-cart {
        padding: 8px 12px;
        width: auto;
    }
}

.thanks-content {
    width: 100%;
    text-align: center;
    position: relative;
    min-height: 80%;
    padding-top: 100px;
    padding-bottom: 100px;
    box-shadow: 0 0 60px 50px white;
    background-color: white;
    width: 1400px;
    left: 50%;
    margin-left: -700px;
}

.thanks-content h1 {
    font-size: 42px;
}

.thanks-content p {
    font-size: 20px;
}

.thanks-content .bank-transfer table {
    margin-top: 50px;
    width: 400px;
    left: 50%;
    margin-left: -210px;
    background-color: #ededed;
    border-bottom: 5px solid var(--color-main);
    padding: 2px 10px;
}

.thanks-content .bank-transfer table td {
    text-align: left;
    padding: 5px;
}

.thanks-content .bank-transfer p {
    font-size: 20px;
    margin-top: 100px;
}

.thanks-content .thanks-font-detail {
    font-weight: bold;
}

.blog-articles, .blog-article-content {
    width: 1000px;
    display: inline-block;
    vertical-align: top;
    margin-top: 50px;
    margin-left: 50px;
    z-index: 1;
}

.blog-articles, .product-blog-articles {
    cursor: default!important;
}

.blog-articles-menu {
    width: auto;
    display: inline-block;
    vertical-align: top;
    text-align: right;
    height: auto;
    grid-area: left-panel;
    margin: 50px 10px 20px;
    background-color: var(--filter-color);
    border-left: 5px solid var(--color-main);
    border-radius: 25px;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 25px 10px;
}

.blog-articles-menu .blog-menu-search {
    width: 100%;
    display: flex;
    justify-content: center;
}


.blog-article {
    width: 350px;
    height: 470px;
    margin-right: 10px;
    margin-bottom: 10px;
    display: inline-block;
    vertical-align: top;
    position: relative;
    border-radius: 25px !important;
    box-shadow: 0px 0px 20px -12px grey;
    padding: 15px;
    box-sizing: border-box;
    overflow: hidden;
}

.blog-article, .blog-article * {
    cursor: pointer;
}

.blog-article img {
    width: 100%;
    height: 160px;
    object-fit: contain;
}

.blog-articles p {
    height: 135px;
    overflow-y: hidden;
}

.blog-article .default-button {
    padding-left: 0;
    padding-right: 0;
    text-align: left;
    display: block;
    color: black;
    background-color: transparent;
    border: none;
    text-align: center;
    text-decoration: none;
}

.blog-article div {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
}

.blog-article:hover .default-button {
    background-color: var(--color-main);
    color: white;
    border-radius: 0;
}

.blog-article h2 {
    height: 70px;
    max-height: 70px;
    overflow-y: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}

.blog-menu-search input {
    padding: 8px 12px;
    background-color: white;
    border: 1px solid #3f3f3f;
    width: 100%;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}

.blog-menu-search img {
    width: 16px;
    height: 16px;
    display: none;
}

.blog-menu-search button {
    border: none;
    background-color: black;
    height: auto;
    width: 40px;
    cursor: pointer;
    vertical-align: bottom;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

.blog-menu-search button::after {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    content: "\f002";
    color: white;
    font-size: 16px;
}

.blog-menu-search button:hover {
    background-color: #f7911a;
}

.blog-menu-search button:hover img {
    filter: invert(1);
    -webkit-filter: invert(1);
}

.blog-menu-label,
.blog-article-label {
    display: block;
    margin-top: 5px;
    text-decoration: none;
    color: black;
    padding: 4px 10px;
    background-color: var(--color-main-reverse);
    border: 2px solid var(--color-main-reverse);
    color: white;
    width: 120px;
    text-align: center;
    border-radius: 5px;
    font-weight: bolder;
}

.blog-menu-label:hover,
.blog-article-label:hover {
    background-color: white;
    color: var(--color-main-reverse);
}

.blog-article-label {
    display: inline-block;
    width: auto;
    padding: 4px 24px;
}

.blog-article-banner img {
    max-width: 100%;
    max-height: 200px;
    object-fit: contain;
    margin: 0px auto;
    display: block;
}

.blog-article-panel {
    margin-bottom: 20px;
}

.blog-article-banner p {
    color: dimgray;
    font-size: 18px;
    font-style: italic;
}

.blog-search-not-found {
    max-width: 400px;
}

.blog-search-not-found img {
    width: 100%;
}

@media only screen and (max-width: 1400px) {
    .blog-articles, .blog-article-content {
        width: calc(100% - 30px);
        margin-left: 0;
        padding: 0px 15px;
    }
}

@media only screen and (max-width: 860px) {
    .blog-articles, .blog-article-content {
        grid-area: products;
        display: flex;
        justify-content: center;
        margin: 10px 0;
    }
    
    .blog-articles {
        flex-wrap: wrap;
    }

    .blog-article-content {
        flex-direction: column;
    }

    .blog-articles-menu {
        grid-area: top-panel;
        border-left: 0;

        flex-direction: row;
        flex-wrap: wrap;
        gap: 10px;
    }

    .blog-articles-menu h2 {
        display: none;
    }

    .blog-menu-label, .blog-article-label {
        flex-grow: 1;
    }
}

.shopper-login, .shopper-admin {
    max-height: 1380px;
    min-height: 600px;
    width: fit-content;
    margin: 0px auto;
    padding-top: 50px;
    background-color: white;
    box-shadow: 0 0 60px 50px white;
}

.shopper-admin {
    padding-bottom: 50px;
    width: 1300px;
    padding: 50px 35px 0;
}

.shopper-login-inner {
    padding-top: 50px;
    background-color: white;
    border-radius: 0;
    width: 980px;
    text-align: center;
    margin-bottom: 30px;
}

.shopper-login-inner img {
    width: auto;
    max-height: 150px;
}

.shopper-login-inner h2 {
    color: black;
}

#register_form {
    display: none;
}

.shopper-form {
    display: block;
    padding-top: 40px;
    padding-bottom: 40px;
}

.shopper-form input {
    padding: 8px 16px;
    margin: 0px auto;
    font-size: 16px;
    display: block;
    border: none;
    width: 400px;
    margin-bottom: 15px;
    border-bottom: 1px solid black;
    transition: border-bottom 0.2s;
}

.shopper-form input:focus {
    border-bottom: 1px solid var(--color-main);
}

.shopper-form input[type="submit"] {
    width: 434px;
    cursor: pointer;
    background-color: var(--color-main);
    border: none;
    color: white;
    font-weight: bold;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
    margin-top: 30px;
    text-decoration: none;
    border-radius: 5px;
}

.shopper-form input[type="submit"]:hover {
    background-color: var(--color-main-reverse);
}

.shopper-register-login-switch, .forgotten-password {
    cursor: pointer;
    border: none;
    background-color: transparent;
    color: black;
    font-weight: bold;
    font-size: 14px;
    margin-top: 20px;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
    width: 100%;
}

.shopper-register-login-switch:hover, .forgotten-password:hover {
    color: black;
    text-decoration: underline;
}

.newsletter-accept {
    font-size: 12px;
    font-style: italic;
    color: black;
    margin-top: 20px;
}

.shopper-login-message {
    color: red;
    font-size: 14px;
    font-weight: bold;
    margin-top: 20px;
}

.shopper-admin-menu {
    flex-direction: column;
    height: 800px;
    background-color: white;
    width: 250px;
    display: inline-block;
    margin-top: 30px;
}

.shopper-admin-menu a {
    text-align: left;
    display: block;
    padding: 10px;
    padding-left: 15px;
    margin: 0;
    border: none;
    margin-top: 8px;
    background-color: var(--color-main);
}
.shopper-admin-menu a:first-child {
    border-top: none;
}

.shopper-admin-menu a:hover {
    background-color: var(--color-main-reverse);
    text-decoration: none;
}

.shopper-content {
    display: inline-block;
    vertical-align: top;
    width: 1050px;
    float: right;
    background-color: white;
    height: 800px;
}

.shopper-customer-info {
    display: block;
    width: 100%;
    margin-top: 40px;
    display: none;
}

.shopper-customer-info p {
    color: #1D4B40;
}

.shopper-customer-info p font {
    font-weight: bold;
}

.customer-page {
    padding-left: 35px;
    padding-top: 20px;
}

.customer-order-table {
    width: 100%;
    border-collapse: collapse;
}

.customer-order-button {
    cursor: pointer;
    background-color: var(--color-main);
    color: white;
    font-weight: bolder;
    padding: 7px 15px;
    border: none;
    -webkit-transition:0.2s all ease;
    transition:0.2s ease all;
    display: block;
    text-decoration: none;
    float: right;
    clear: left;
    font-size: 14px;
    border-radius: 5px;
    margin-right: 10px;
}

.customer-order-button:hover {
    background-color: var(--color-main-reverse);
}

.customer-order-table th {
    text-align: left;
}

.table-right {
    text-align: right!important;
}

.customer-order-table tr:nth-child(even) td {
    background-color: #e5e5e5;
}

.customer-order-table tr:hover td {
    background-color: #d3d3d3;
}

.customer-order-table tr td {
    padding: 2px 0px;
}

.customer-order-table tr td:first-child {
    padding-left: 10px;
}

.customer-order-table {
    cursor: default;
}

.customer-order-detail-header p {
    font-weight: bold;
    color: white;
    padding: 2px;
}

.customer-order-detail-header {
    background-color: #001f3f;
    width: 100%;
}

.customer-order-detail-table {
    width: 100%;
    border-collapse: collapse;
}

.customer-order-detail-table td {
    border: 1px solid #adadad;
    padding: 5px;
}

.half {
    width: 50%;
}

.customer-order-detail-table th {
    text-align: left;
}

.customer-order-detail-table * {
    cursor: default;
}

.customer-order-detail-table-product th {
    padding-top: 20px;
}

.final-title, .final-summary {
    font-weight: bold;
}

.final-summary {
    text-align: right;
}

.customer-note-title {
    font-size: 16px;
    margin: 0;
    padding: 0;
    margin-top: 30px;
}

.customer-note {
    margin: 0;
    padding: 0;
}

.customer-order-detail-controls {
    height: 20px;
    width: 100%;
    text-align: right;
}

.customer-order-detail-controls a {
    float: right;
}

.complaint-header {
    font-style: italic;
}

.complaint-form-date {
    margin-top: 0;
    padding-top: 0;
}

.complaint-form-title {
    margin-bottom: 0;
    padding-bottom: 0;
}

.complaint-form-form textarea {
    width: 100%;
    resize: none;
    height: 300px;
    padding: 5px;
}

.complaint-form-form input {
    margin-top: 20px;
}

.message {
    margin-top: 100px;
    font-weight: bold;
    width: 100%;
    text-align: center;
}

.customer-order-product-image {
    width: 42px;
    height: 42px;
    object-fit: cover;
    margin-left: 10px;
    margin-top: 3px;
    object-fit: contain;
}

#product-rating .modal-content {
    width: 50%;
    margin: 25px auto;
    background-color: white;
    border-radius: 5px;
    padding: 25px 10px 45px;

    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

#product-rating h2 {
    width: 45%;
    text-align: left;
}

#product-rating textarea {
    width: 90%;
    resize: none;
    height: 200px;
    border-radius: 5px;
    padding: 5px 10px;
}

#product-rating button {
    border-radius: 5px;
    padding: 10px;
    width: 100%;
    margin: 25px 35px 0px;
    background-color: var(--color-main);
    font-weight: bolder;
}

#product-rating button:hover {
    background-color: var(--color-main-reverse);
}

#product-rating .stars {
    width: 45%;
    text-align: center;
    margin-bottom: 25px;
    margin-top: 25px;
}

#product-rating .stars span {
    width: 48px;
    height: 48px;
    background-image: url("icon/rating.png");
    background-size: contain;
    display: inline-block;
    margin-left: 2px;
    margin-right: 2px;
    cursor: pointer;
}

#product-rating .stars .active-rating {
    background-image: url("icon/rating-active.png");
}

#product-rating .stars .active-rating-set {
    background-image: url("icon/rating-active.png")!important;
}

#product-rating label {
    display: none;
}

#product-rating .close {
    cursor: pointer;
    position: absolute;
    right: 20px;
    top: 0;
    font-size: 45px;
}
/*
.modal {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
}

.modal-content {
    position: fixed;
    background-color: white;
    left: 50%;
    top: 50%;
    width: 600px;
    margin-left: -300px;
    height: 600px;
    margin-top: -300px;
}
*/

@media only screen and (max-width: 1400px) { 
    .shopper-admin {
        width: 100%;
        padding: 50px 15px 0;
        box-sizing: border-box;
        display: flex;
    }

    .shopper-admin-menu {
        min-width: 200px;
    }
}

@media only screen and (max-width: 1100px) { 
    .shopper-login-inner {
        width: auto;
    }
}

.spedition-wrapper,
.login-wrapper {
    width: 400px;
    height: 470px;
    background-color: var(--color-main);
    margin: 30px auto 0;
    border-radius: 15px;

    display: flex;
    flex-direction: column;
}

.spedition-wrapper #main-spedition-window img,
.login-wrapper img {
    width: 50%;
    height: auto;
    margin: 50px auto 70px;
    background-color: white;
    padding: 8px 20px;
    border-left: 5px solid var(--color-main-reverse);
    border-right: 5px solid var(--color-main-reverse);
}

.login-wrapper input, .login-wrapper button {
    display: block;
    margin-bottom: 10px;
    width: 70%;
    margin-left: 10%;
    padding: 8px 16px;
    font-size: 14px;
    border: none;
    border-radius: 3px;
}

.login-wrapper button {
    width: 78%;
    cursor: pointer;
    margin-top: 30px;
    background-color: var(--color-main-reverse);
    border: 2px solid var(--color-main-reverse);
    color: white;
    font-weight: bolder;
    transition: background-color 0.2s;
}

.login-wrapper button:hover {
    background-color: white;
    color: var(--color-main-reverse);
}

.login-wrapper a {
    color: white;
    font-size: 12px;
    display: block;
    width: 100%;
    text-align: center;
    cursor: pointer;
}

.login-wrapper a:hover {
    text-decoration: underline;
}

.top-message-wrapper {
    position: fixed;
    top: 50px;
    font-size: 20px;
    right: 30px;
    background-color: #ffc5c5;
    padding: 12px 25px;
    border: 1px solid red;
    border-radius: 15px;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    gap: 15px;
}

.top-message-wrapper .message-close {
    cursor: pointer;
}

.spedition-wrapper .spedition-top-bar-wrapper {
    margin: 20px auto 0;
}

.spedition-wrapper .spedition-top-bar-wrapper button {
    border: 1px solid gray;
    padding: 5px 8px;
    cursor: pointer;
}

.spedition-wrapper .spedition-top-bar-wrapper button:hover {
    opacity: 0.8;
}

.spedition-wrapper .spedition-top-bar-wrapper img {
    width: 48px;
    height: 48px;
}

.spedition-wrapper #main-spedition-window {
    display: flex;
    flex-direction: column;
    align-items: center;

    width: 100%;
}

.spedition-wrapper #main-spedition-window .inputs,
.spedition-wrapper #main-spedition-window #submit-button {
    width: 80%;
    margin-bottom: 10px;
}

.spedition-wrapper #main-spedition-window .inputs input {
    width: 100%;
}

.spedition-wrapper #main-spedition-window input,
.spedition-wrapper #main-spedition-window button {
    padding: 5px 10px;
    box-sizing: border-box;
    border-radius: 5px;
    border: 1px solid gray;
    font-size: 16px;
}

.spedition-wrapper #main-spedition-window button {
    background-color: var(--color-main-reverse);
    border: 2px solid var(--color-main-reverse);
    color: white;
    font-weight: bolder;
    cursor: pointer;
}

.spedition-wrapper #main-spedition-window button:hover {
    background-color: white;
    color: var(--color-main-reverse);
}

.gmap_canvas, #gmap_canvas {
    width: 100%;
    height: 300px;
}

.gmap_canvas {
    margin-top: 100px;
}