/* General Elements */
@font-face {
    font-display: swap;
}
body {
    font-family: 'Ubuntu', sans-serif;
    font-display: swap;
    font-size: 18px;
    color: #000;
    overflow-x: hidden;
}
html.popupOpen,
html.filtersOpen,
body.filtersOpen,
body.filtersOpen {
    overflow: hidden;
}
a {
    text-decoration: none;
}
p {
    margin: 0 0 20px;
}
p:last-child {
    margin: 0;
}
.generalButton {
    background-color: #000;
    color: #fff;
    width: 100%;
    float: left;
    line-height: 40px;
    text-align: center;
    font-size: 14px;
    transition: all 0.3s ease 0s;
    border: none;
    cursor: pointer;
}
.generalButton:hover {
    background-color: var(--color-one);
}

/* Template Structure */
.all {
    width: 100%;
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    min-height: 100vh;
}
.all .content,
.all .content > section,
.all .content > section div,
.all footer,
.all footer > div {
    overflow: hidden;
}
.header {
    float: left;
    width: 100%;
}
.topNav {
    background-color: var(--color-two);
    float: left;
    width: 100%;
    padding: 3px 0;
}
.topNavInner {
    float: left;
    width: 100%;
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}
.topNavLeft {
    float: left;
    width: auto;
    margin-right: auto;
}
.topNavCenter {
    float: left;
    width: auto;
    margin-left: auto;
    margin-right: auto;
}
.topNavRight {
    float: left;
    width: auto;
    margin-left: auto;
}
.mainNav {
    float: left;
    width: 100%;
    position: relative;
    background-color: #ffffff;
    z-index: 5;
    padding: 34px 0;
    border-bottom: 1px solid var(--color-two);
}
.mainNav.fixed.active {
    position: fixed;
    top: 0;
    left: 0;
}
.navSpacer {
    float: left;
    width: 100%;
}
.mainNav.scrollUp.active {
    position: fixed;
    top: 0;
    left: 0;
    transition: all 0.3s ease 0s;
    -webkit-box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.10);
    -moz-box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.10);
    box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.10);
}
.mainNav.scrollUp.active.down {
    transform: translateY(-120%);
}
.mainNav.scrollUp.active.up {
    transform: translateY(0);
}
.mainNavInner {
    float: left;
    width: 100%;
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}
.mainNavLeft {
    float: left;
    width: auto;
    margin-right: auto;
    display: flex;
    display: -webkit-flex;
    align-items: flex-end;
    -webkit-align-items: flex-end;
}
.verticalAlignCenter .mainNavLeft {
    align-items: center;
    -webkit-align-items: center;
}
.mainNavCenter {
    float: left;
    width: auto;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    display: -webkit-flex;
    align-items: flex-end;
    -webkit-align-items: flex-end;
}
.verticalAlignCenter .mainNavCenter {
    align-items: center;
    -webkit-align-items: center;
}
.mainNavRight {
    float: left;
    width: auto;
    margin-left: auto;
    display: flex;
    display: -webkit-flex;
    align-items: flex-end;
    -webkit-align-items: flex-end;
}
.mainNavRight > .icons {
    margin: 0;
}
.verticalAlignCenter .mainNavRight {
    align-items: center;
    -webkit-align-items: center;
}
.top1 {
    float: left;
    width: 100%;
}
.top2 {
    float: left;
    width: 100%;
}
.top3 {
    float: left;
    width: 100%;
}
.top4 {
    float: left;
    width: 100%;
}
.bottom1,
.bottom3,
.bottom5,
.bottom7,
.bottom9 {
    float: left;
    width: 100%;
}
.bottom2,
.bottom4,
.bottom6,
.bottom8,
.bottom10 {
    float: left;
    width: 100%;
    background-color: var(--color-two);
}
footer {
    margin-top: auto;
    padding-top: 70px;
}
.footerTop {
    float: left;
    width: 100%;
    background-color: var(--color-two);
}
.footerMiddle {
    float: left;
    width: 100%;
    border-top:1px solid #fff;
    padding: 70px 0 40px;
    background-color: var(--color-two);
}
.footerMiddleContainer {
    display: flex;
    display: -webkit-flex;
    float: left;
    width: calc(100% + 30px);
    margin: 0 0 0 -15px;
}
.footerMiddle1,
.footerMiddle2,
.footerMiddle3,
.footerMiddle4 {
    width: calc((100% / 4) - 30px);
    margin: 0 15px;
}
.footerBottom {
    float: left;
    width: 100%;
    border-top:1px solid #fff;
    padding: 40px 0 40px;
    background-color: var(--color-two);
}
.copyrights {
    float: left;
    width: 100%;
    padding: 10px 0;
}

/* Main Nav Logo */
.brand {
    float: left;
    width: auto;
    margin-right: 55px;
    max-width: 180px;
}
.brand img {
    float: left;
    width: 100%;
}

/* Main Nav Main Menu Simple */
.mainNav .menuMain {
    float: left;
    width: auto;
}
.mainNav .menuItem.level1 {
    position: relative;
    float: left;
    width: auto;
    margin-right: 40px;
}
.mainNav .menuItem.level1:last-child {
    position: relative;
    margin-right: 0;
}
.mainNav .menuItem.level1.static {
    position: static;
}
.mainNav .menuItem.level1 a,
.mainNav .menuItem.level1 span {
    font-size: 20px;
    color: #000;
    transition: color 0.3s ease 0s;
}
.mainNav .menuItem.level1 span {
    cursor: default;
}
.mainNav .menuItem.level1:hover > a,
.mainNav .menuItem.level1.active > a,
.mainNav .menuItem.level1:hover > span,
.mainNav .menuItem.level1.active > span {
    color: var(--color-one);
}

.mainNav .menuItems.level2.simple {
    position: absolute;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease 0s;
    width: 200px;
    background-color: #fff;
    padding: 25px 0 30px;
    left: -40px;
    box-sizing: border-box;
    -webkit-box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.10);
    -moz-box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.10);
    box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.10);
    margin-top: 34px;
}
.mainNav .menuItems.level2.mega {
    display: flex !important;
    display: -webkit-flex !important;
    width: 100%;
    left: 0;
    padding-top: 25px;
    padding-bottom: 30px;
    padding-left: calc((100% - var(--page-width)) / 2);
    padding-right: calc((100% - var(--page-width)) / 2);
    position: absolute;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease 0s;
    background-color: #fff;
    box-sizing: border-box;
    -webkit-box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.10);
    -moz-box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.10);
    box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.10);
    margin-top: 34px;
}
.mainNav .menuItems.level2.simple:before {
    content: '';
    position: absolute;
    width: 200px;
    height: 35px;
    background-color: #fff;
    left: 0;
    top: -35px;
}
.mainNav .menuItems.level2.mega:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 35px;
    background-color: transparent;
    box-shadow: inset 0 -10px 5px #fff;
    left: 0;
    top: -35px;
}
.mainNav .menuItems.level2.mega::before {

}
.mainNav .menuItems.level2.mega .menuBanner {
    width: 100%;
    order: 2;
    -webkit-order: 2;
}
.mainNav .menuItem.level1:hover .menuItems.level2 {
    visibility: visible;
    opacity: 1;
}
.mainNav .menuItems.level2.simple .menuItem.level2 {
    float: left;
    width: 100%;
    padding: 0 40px;
    box-sizing: border-box;
}
.mainNav .menuItems.level2.mega .menuItem.level2 {
    float: left;
    width: 100%;
    padding: 0;
    box-sizing: border-box;
}
.mainNav .menuItems.level2.mega .menuItem.level2 > a,
.mainNav .menuItems.level2.mega .menuItem.level2 > span {
    font-weight: bold;
    margin-bottom: 20px;
}
.mainNav .menuItems .menuItem.level2 a,
.mainNav .menuItems .menuItem.level2 span {
    font-size: 16px;
    color: #000;
    line-height: 26px;
    float: left;
    width: auto;
}
.mainNav .menuItems .menuItem.level2 a:hover,
.mainNav .menuItems .menuItem.level2 span:hover {
    color: var(--color-one);
}
.mainNav .menuItems.level2.simple .menuItems.level3 {
    position: absolute;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease 0s;
    width: 200px;
    background-color: #fff;
    padding: 25px 40px 30px;
    left: 100%;
    box-sizing: border-box;
    -webkit-box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.10);
    -moz-box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.10);
    box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.10);
    margin-top: -25px;
}
.mainNav .menuItems.level2.mega .menuItems.level3 {
    display: block;
    position: relative;
    float: left;
    clear: left;
}
.mainNav .menuItems.level2.simple .menuItem.level2:hover .menuItems.level3 {
    visibility: visible;
    opacity: 1;
}
.mainNav .menuItem.level3 {
    float: left;
    clear: left;
}

/* Top1 Usp */
.modUspContainer {
    float: left;
    width: 100%;
    background-color: var(--color-two);
}
.modUsp {
    padding: 35px 0;
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
}
.modUsp .usp {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
    width: 25%;
    color: #000;
}
.modUsp .usp .icon {
    float: left;
    width: auto;
}
.modUsp .usp .texts {
    float: left;
    width: auto;
    padding: 0 10px 0 30px;
    box-sizing: border-box;
}
.modUsp .usp .title {
    font-size: 18px;
    font-weight: 500;
}
.modUsp .usp .text {
    font-size: 18px;
}

/* Banners Style 4 */
.modBannersContainer.styleFour .modBanners {
    display: block;
    padding: 70px 0;
    width: 100%;
    margin-left: 0;
}
.modBannersContainer.styleFour .banner {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
    justify-content: center;
    -webkit-justify-content: center;
}
.modBannersContainer.styleFour .banner:nth-child(odd) {
    flex-direction: row-reverse;
    -webkit-flex-direction: row-reverse;
}
.modBannersContainer.styleFour .banner .icon {
    width: calc(50% - 100px);
    max-width: 560px;
}
.modBannersContainer.styleFour .banner .texts {
    position: relative;
    bottom: auto;
    left: auto;
    transform: none;
    box-sizing: border-box;
    width: 50%;
    max-width: unset;
    background-color: inherit;
    padding: 0 150px;
}


/* Virtuemart Products Default */
.modVirtuemartProducts.default {
    display: block;
    float: left;
    width: 100%;
    background-color: var(--color-two);
}
.modVirtuemartProducts.default .virtuemartProductsInner {
    float: left;
    width: 100%;
    margin: 70px 0;
}
.modVirtuemartProducts.default.slider .virtuemartProductsInner {
    position: relative;
    float: left;
    width: 100%;
    margin: 0 0 70px;
}
.modVirtuemartProducts.default .title {
    float: left;
    width: 100%;
    font-size: 30px;
    text-align: center;
}
.modVirtuemartProducts.default.slider .title {
    text-align: left;
    padding-right: 80px;
    box-sizing: border-box;
}
.modVirtuemartProducts.default .text {
    float: left;
    width: 100%;
    text-align: center;
    margin-top:5px;
}
.modVirtuemartProducts.default.slider .owl-nav button svg g {
    fill: #000;
}
.modVirtuemartProducts.default.slider .owl-nav button:hover svg g {
    fill: var(--color-one);
}
.modVirtuemartProducts.default.slider .owl-nav button.disabled svg g {
    fill: var(--color-three);
}
.modVirtuemartProducts.default.slider .owl-nav button.disabled:hover svg g {
    fill: var(--color-three);
}

/* Virtuemart Products Best Sellers */
.modVirtuemartProducts.bestSellers {
    float: left;
    width: 100%;
    margin: 70px 0;
    background-color: var(--color-two);
    padding: 70px 125px;
    box-sizing: border-box;
}
.modVirtuemartProducts.bestSellers .title {
    float: left;
    width: 100%;
    font-size: 30px;
    text-align: center;
}
.modVirtuemartProducts.bestSellers .text {
    float: left;
    width: 100%;
    text-align: center;
    margin-top:5px;
}
.modVirtuemartProducts.bestSellers .products {
    float: left;
    width: calc(100% + 30px);
    margin: 30px 0 0 -15px;
    display: block;
}
.modVirtuemartProducts.bestSellers .product {
    display: flex;
    display: -webkit-flex;
    width: calc(50% - 30px);
    min-width: unset;
    margin: 40px 15px 0;
}
.modVirtuemartProducts.bestSellers .product .imageArea {
    float: left;
    width: calc(100% - 245px);
}
.modVirtuemartProducts.bestSellers .product .texts {
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    justify-content: center;
    -webkit-justify-content: center;
    float: left;
    width: 245px;
    padding: 0 0 0 30px;
    box-sizing: border-box;
}
.modVirtuemartProducts.bestSellers .product .name {
    padding-top: 0;
    text-align: left;
}
.modVirtuemartProducts.bestSellers .product .prices {
    justify-content: flex-start;
    -webkit-justify-content: flex-start;
}

/* Virtuemart Products Slider */
.modVirtuemartProductsContainer + script + .modVirtuemartProductsContainer {
    margin-top: 75px;
}

.modVirtuemartProducts.slider {
    position: relative;
    float: left;
    width: 100%;
    margin: 0;
    padding-top: 75px;
    border-top: 1px solid var(--color-two);
}
.modVirtuemartProducts.slider .title {
    float: left;
    width: 100%;
    font-size: 30px;
    text-align: left;
    padding-right: 80px;
    box-sizing: border-box;
}
.modVirtuemartProducts.slider .text {
    float: left;
    width: 100%;
    margin-top: 5px;
    text-align: left;
    padding-right: 80px;
    box-sizing: border-box;
}
.modVirtuemartProducts.slider .product {
    width: calc(100% - 30px);
}
.modVirtuemartProducts.slider .slick-nav {
    position: absolute;
    right: 0;
    margin-top: 2px;
}
.modVirtuemartProducts.slider .slick-nav .slick-arrow {
    background: none;
    color: inherit;
    border: none;
    padding: 0 !important;
    font: inherit;
    cursor: pointer;
}
.modVirtuemartProducts.slider .slick-nav .slick-arrow img {
    margin-top: 12px;
    width: auto;
    display: inline;
}
.modVirtuemartProducts.slider .slick-nav .slick-prev {
    margin-right: 30px;
}
.modVirtuemartProducts.slider .slick-arrow img,
.modVirtuemartProducts.slider .slick-arrow svg {
    width: 16px;
    height: auto;
}
.modVirtuemartProducts.slider .slick-arrow.slick-next svg {
    transform: rotate(180deg);
}
.modVirtuemartProducts.slider .slick-arrow button svg g {
    fill: var(--color-three);
    transition: all 0.3s ease 0s;
}
.modVirtuemartProducts.slider .slick-arrow:hover svg g {
    fill: var(--color-one);
}
.modVirtuemartProducts.slider .slick-arrow.slick-disabled svg g {
    fill: var(--color-two);
}
.modVirtuemartProducts.slider .slick-arrow.slick-disabled:hover svg g {
    fill: var(--color-two);
}

/* Bottom1 Banner */
.oneFullWidthBanner .modBanner {
    float: left;
    width: 100%;
    background-size: cover;
    background-position: center center;
}
.oneFullWidthBanner .modBanner .texts {
    float: left;
    width: 50%;
    background-color: var(--color-two);
    padding: 70px 40px;
    box-sizing: border-box;
}
.oneFullWidthBanner .modBanner .title {
    font-size: 60px;
    margin-bottom: 30px;
    max-width: 500px;
}
.oneFullWidthBanner .modBanner .text {
    font-size: 30px;
    margin-bottom: 30px;
    max-width: 500px;
}
.oneFullWidthBanner .modBanner .link {
    color: #000;
    text-decoration: underline;
    transition: all 0.3s ease 0s;
}
.oneFullWidthBanner .modBanner .link:hover {
    color: var(--color-one);
}

/* Module Carousel */
.modCarousel {
    float: left;
    width: 100%;
    margin: 50px 0 50px;
}
.modCarousel .title {
    float: left;
    width: 100%;
    font-size: 30px;
}
.modCarousel .text {
    float: left;
    margin-bottom: 35px;
    width: 100%;
}
.modCarousel .slider.slick-slider {
    float: left;
    width: 100%;
    position: relative;
    overflow: visible;
}
.modCarousel .slider.inactive .owl-stage-outer {
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
}
.modCarousel .slider .owl-stage {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
}
.modCarousel .slide {
    padding: 0 30px;
    box-sizing: border-box;
    position: relative;
    display: block;
}
.modCarousel .slide a,
.modCarousel .slide img {
    float: left;
    width: 100%;
    height: auto;
}
.modCarousel.style2 {
    margin: 0;
}
.modCarousel.style2 .carouselContainer {
    float: left;
    width: 100%;
    background-color: var(--color-two);
    padding: 75px 15%;
    box-sizing: border-box;
}
.modCarousel.style2 .title {
    text-align: center;
    font-size: 20px;
    transform: translateY(-35px);
}
.modCarousel.style2 .slide {
    padding: 0;
    height: auto;
}
.modCarousel.style2 .slide span,
.modCarousel.style2 .slide .gallery {
    position: relative;
    float: left;
    width: 100%;
    height: 0;
    padding-top: 100%;
    overflow: hidden;
}
.modCarousel.style2 .slide span img,
.modCarousel.style2 .slide .gallery img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.modCarousel.style2 .slick-prev {
    position: absolute;
    left: -50px;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: auto;
    padding: 10px;
    background-color: transparent;
    border: none;
    box-sizing: content-box;
    cursor: pointer;
}
.modCarousel.style2 .slick-prev img,
.modCarousel.style2 .slick-prev svg {
    width: 100%;
    height: auto;
}
.modCarousel.style2 .slick-next {
    position: absolute;
    right: -50px;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: auto;
    padding: 10px;
    background-color: transparent;
    border: none;
    box-sizing: content-box;
    cursor: pointer;
}
.modCarousel.style2 .slick-next img,
.modCarousel.style2 .slick-next svg {
    width: 100%;
    height: auto;
    transform: rotate(180deg);
}
.modCarousel.style2 .slick-arrow svg g {
    fill: var(--color-three);
    transition: all 0.3s ease 0s;
}
.modCarousel.style2 .slick-arrow:hover svg g {
    fill: var(--color-one);
}

/* Language Switcher */
.languageSwitcher .languages .language:first-child {
    margin-left: 0;
}
.languageSwitcher .languages .language {
    float: left;
    font-size: 14px;
    line-height: 20px;
    color: #000;
    margin: 0 34px;
    position: relative;
    transition: all 0.3s ease 0s;
}
.languageSwitcher .languages .language:after {
    content: '|';
    font-size: 14px;
    line-height: 20px;
    color: #000;
    float: right;
    position: absolute;
    right: -35px;
    pointer-events: none;
}
.languageSwitcher .languages .language:last-child {
    margin-right: 0;
}
.languageSwitcher .languages .language:last-child:after {
    display: none;
}
.languageSwitcher .languages .language:hover,
.languageSwitcher .languages .language.active {
    color: var(--color-one);
}

/* Wbn Links Horizontal Texts */
.wbnLinks.texts.horizontal .link {
    float: left;
    font-size: 14px;
    line-height: 20px;
    color: #000;
    margin: 0 34px;
    position: relative;
    transition: all 0.3s ease 0s;
}
.wbnLinks.texts.horizontal .link:after {
    content: '|';
    font-size: 14px;
    line-height: 20px;
    color: #000;
    float: right;
    position: absolute;
    right: -35px;
    pointer-events: none;
}
.wbnLinks.texts.horizontal .link:first-child {
    margin-left: 0;
}
.wbnLinks.texts.horizontal .link:last-child {
    margin-right: 0;
}
.wbnLinks.texts.horizontal .link:last-child:after {
    display: none;
}
.wbnLinks.texts.horizontal .link:hover {
    color: var(--color-one);
}

/* Wbn Links Horizontal Icons */
.wbnLinks.icons.horizontal .link {
    float: left;
    width: auto;
    margin-left: 18px;
    position: relative;
}
.wbnLinks.icons.horizontal .link img {
    float: left;
    opacity: 0.5;
    cursor: pointer;
    margin-top: 3px;
    transition: all 0.3s ease 0s;
}
.wbnLinks.icons.horizontal .link:hover img {
    opacity: 1;
}
.wbnLinks.icons.horizontal .link.inactive {
    opacity: 0.2;
    pointer-events: none;
}

/* Wbn Links Vertical */
.wbnLinks.texts.vertical .title {
    font-weight: bold;
    margin-bottom: 10px;
}
.wbnLinks.texts.vertical .link {
    float: left;
    width: auto;
    clear: left;
    font-size: 16px;
    line-height: 24px;
    color: #000;
    transition: all 0.3s ease 0s;
}
.wbnLinks.texts.vertical .link:hover {
    color: var(--color-one);
}

/* Footer Middle Contact Cards */
.footerMiddle .modCards .title {
    font-weight: bold;
    margin-bottom: 15px;
}
.footerMiddle .modCards .cards {
    float: left;
    width: calc(100% + 20px);
    margin: 0 0 0 -10px;
}
.footerMiddle .modCards .card {
    float: left;
    width: auto;
    padding: 0 10px 20px;
}
.footerMiddle .modCards .card img {
    height: 24px;
    width: auto;
}

/* Copyright */
.copyright {
    float: left;
    width: auto;
    font-size: 16px;
}

/* Developed */
.developed {
    float: right;
    width: auto;
}
.developed a {
    color: #000;
    font-size: 16px;
    transition: all 0.3s ease 0s;
}
.developed a:hover {
    color: var(--color-one);
}

/* Back To Top */
.backToTop {
    position: fixed;
    right: 30px;
    bottom: 30px;
    cursor: pointer;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease 0s;
    z-index: 1;
}
.backToTop.visible {
    visibility: visible;
    opacity: 1;
}
.backToTop img {
    float: left;
    width: auto;
    max-width: 60px;
    height: auto;
}

/* Popup */
#Popup {
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: #fff;
    left: 0;
    top: 0;
    z-index: 100;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease 0s;
}
#Popup.active {
    opacity: 1;
    visibility: visible;
    overflow-y: scroll;
}
#Popup > div {
    display: none;
}
#Popup > div.active {
    display: block;
}
#Popup .closePopup {
    display: block;
    position: sticky;
    position: -webkit-sticky;
    float: right;
    top: 0;
    width: 60px;
    height: 60px;
    cursor: pointer;
    opacity: 0.5;
    transition: all 0.3s ease 0s;
    z-index: 2;
}
#Popup .closePopup:hover {
    opacity: 1;
}
#Popup .closePopup:before {
    content: '';
    position: absolute;
    width: 40px;
    height: 1px;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%) rotate(45deg);
    background-color: #000;
}
#Popup .closePopup:after {
    content: '';
    position: absolute;
    width: 40px;
    height: 1px;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%) rotate(-45deg);
    background-color: #000;
}

/* Popup Search */
#Popup .searchProducts input {
    margin: 0 auto;
    text-align: center;
    display: block;
    margin-top: 100px;
    width: 600px;
    max-width: calc(100% - 40px);
    line-height: 60px;
    background-color: var(--color-two);
    border: none;
}
#Popup .noProducts {
    display: none;
    position: absolute;
    top: auto;
    width: 100%;
    max-width: var(--page-width);
    box-shadow: none;
    left: 50%;
    transform: translateX(-50%);
    margin: 50px 0;
    background: var(--color-two);
    padding: 50px;
    text-align: center;
}
#Popup .noProducts.active {
    display: block;
}
#Popup .vpajaxsearch-container {
    position: relative !important;
    top: auto;
    height: auto;
    max-height: unset !important;
    max-width: var(--page-width);
    box-shadow: none;
    left: 50%;
    transform: translateX(-50%);
    margin: 50px 0;
    background: var(--color-two);
    padding: 50px 50px 0;
}
#Popup .vpajaxsearch-suggestion-header {
    background: var(--color-two);
    border-bottom: none;
    padding: 0 0 50px;
}
#Popup .vpajaxsearch-suggestion-header > h4 {
    text-transform: none;
    font-size: 30px;
    font-weight: normal;
}
#Popup .vpajaxsearch-suggestion-content {
    background: var(--color-two);
    float: left;
    width: calc(100% + 30px);
    margin: 0 0 0 -15px;
}
#Popup .vpajaxsearch-suggestion .searched-product {
    width: 100%;
}
#Popup .vpajaxsearch-suggestion .searched-product-image {
    width: 100%;
}
#Popup .vpajaxsearch-suggestion .searched-product-image a {
    position: relative;
    float: left;
    width: 100%;
    height: 0;
    padding-top: 100%;
}
#Popup .vpajaxsearch-suggestion .searched-product-image a img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
}
#Popup .vpajaxsearch-suggestion .searched-product-info {
    width: 100%;
    padding: 0;
}
#Popup .vpajaxsearch-suggestion .searched-product-title {
    padding-top: 40px;
    float: left;
    width: 100%;
    color: #000;
    text-align: center;
    font-weight: normal;
    font-size: 18px;
    text-transform: none;
}
.vpajaxsearch-viewall {
    line-height: 36px;
    color: var(--color-one);
}
#Popup .vpajaxsearch-suggestion div.PricesalesPrice {
    float: left;
    width: 100%;
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
}
#Popup .vpajaxsearch-suggestion span.vm-price-desc {
    order: 2;
    width: auto;
    margin: 0;
    min-width: unset;
}
#Popup .vpajaxsearch-suggestion span.PricesalesPrice {
    float: left;
    width: auto;
    color: var(--color-one);
}

/* Popup Cart */
.wbnLinks.icons .number {
    position: absolute;
    right: -8px;
    top: -1px;
    width: 14px;
    height: 14px;
    background-color: var(--color-one);
    border-radius: 50%;
    color: #fff;
    font-size: 10px;
    line-height: 14px;
    text-align: center;
}
#Popup.cart {
    background-color: var(--color-two);
}
#Popup.cart .vpajaxsearch-container {
    display: none !important;
}
#Popup .vmCartModule.active {
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    align-items: flex-start;
    -webkit-align-items: flex-start;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    margin: 60px auto 0;
    max-width: calc(var(--page-width) + 40px);
}
#Popup .vmCartModule .shoppingCartTitleBox {
    float: left;
    width: 100%;
    background-color: #fff;
    padding: 35px 50px;
    box-sizing: border-box;
    margin-bottom: 30px;
    margin-left: 20px;
    margin-right: 20px;
}
#Popup .vmCartModule .shoppingCartTitleBox .image {
    float: left;
    width: auto;
    margin-right: 35px;
}
#Popup .vmCartModule .shoppingCartTitleBox .title {
    font-size: 20px;
    padding-bottom: 5px;
    margin-top: -5px;
}
#Popup .vmCartModule .shoppingCartTitleBox .totalProducts > div {
    float: left;
    width: auto;
    font-size: 14px;
}
#Popup .vmCartModule .vm_cart_products {
    float: left;
    width: calc(100% - 510px);
    background-color: #fff;
    padding: 75px;
    margin-bottom: 50px;
    box-sizing: border-box;
    margin-left: 20px;
}
#Popup .vmCartModule .vm_cart_products .product_row {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
    padding-bottom: 35px;
    margin-bottom: 35px;
    border-bottom: 1px solid var(--color-two);
}
#Popup .vmCartModule .vm_cart_products .product_row .image {
    width: 190px;
    margin-right: 30px;
}
#Popup .vmCartModule .vm_cart_products .product_row .image img {
    float: left;
    width: 100%;
    height: auto;
}
#Popup .vmCartModule .vm_cart_products .product_row .otherDetails {
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
}
#Popup .vmCartModule .vm_cart_products .product_row .productName a {
    font-size: 18px;
    color: #000;
    margin-bottom: 5px;
    float: left;
    transition: all 0.3s ease 0s;
}
#Popup .vmCartModule .vm_cart_products .product_row .productName a:hover {
    color: var(--color-one);
}
#Popup .vmCartModule .vm_cart_products .product_row .productSku {
    font-size: 18px;
    color: #000;
    opacity: 0.5;
}
#Popup .vmCartModule .vm_cart_products .product_row .productCustomData {
    margin-top: 20px;
    font-size: 18px;
}
#Popup .vmCartModule .vm_cart_products .product_row .productCustomData br {
    display: none;
}
#Popup .vmCartModule .vm_cart_products .product_row .productCustomData span > .product-field-type-E:after {
    content: " | ";
}
#Popup .vmCartModule .vm_cart_products .product_row .productCustomData span > .product-field-type-E:nth-last-child(2):after {
    display: none;
}
#Popup .vmCartModule .vm_cart_products .product_row .productPrices {
    margin-top: 20px;
}
#Popup .vmCartModule .vm_cart_products .product_row .finalPrice {
    font-size: 18px;
    color: var(--color-one);
}
#Popup .vmCartModule .vm_cart_products .product_row .priceBeforeDiscount {
    float: left;
    width: auto;
    font-size: 14px;
    line-height: 25px;
    opacity: 0.5;
    text-decoration: line-through;
    margin-right: 20px;
}
#Popup .vmCartModule .vm_cart_products .product_row .discountRate {
    float: left;
}
#Popup .vmCartModule .vm_cart_products .product_row .productQuantity {
    margin-top: 20px;
}
#Popup .vmCartModule .vm_cart_products .product_row:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
}
#Popup .vmCartModule .shoppingCartTotalBox {
    position: relative;
    position: sticky;
    position: -webkit-sticky;
    top: 30px;
    float: right;
    width: 440px;
    background-color: #fff;
    padding: 75px 40px 40px;
    box-sizing: border-box;
    margin-bottom: 50px;
    margin-right: 20px;
}
#Popup .vmCartModule .shoppingCartTotalBox .title {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 30px;
}
#Popup .vmCartModule .shoppingCartTotalBox > div {
    float: left;
    width: 100%;
    margin-bottom: 5px;
}
#Popup .vmCartModule .shoppingCartTotalBox .text {
    float: left;
    width: auto;
    font-size: 16px;
}
#Popup .vmCartModule .shoppingCartTotalBox .value {
    float: right;
    width: auto;
    font-size: 16px;
}
#Popup .vmCartModule .shoppingCartTotalBox .totalFinalPrice {
    font-weight: bold;
    margin-top: 25px;
    padding-top: 30px;
    border-top: 1px solid var(--color-two);
}
#Popup .vmCartModule .shoppingCartTotalBox .proceedToCheckout {
    float: left;
    width: 100%;
    text-align: center;
    background-color: #000;
    color: #fff;
    font-size: 16px;
    line-height: 40px;
    margin-top: 30px;
    transition: all 0.3s ease 0s;
}
#Popup .vmCartModule .shoppingCartTotalBox .proceedToCheckout:hover {
    background-color: var(--color-one);
}
#Popup .vmCartModule .shoppingCartTotalBox .paymentCards {
    margin: 30px 0 0;
}
#Popup .vmCartModule .shoppingCartTotalBox .paymentCards .title {
    display: none;
}
#Popup .vmCartModule .shoppingCartTotalBox .paymentCards .cards {
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    justify-content: center;
    -webkit-justify-content: center;
}
#Popup .vmCartModule .shoppingCartTotalBox .paymentCards .cards .card {
    margin: 10px;
    height: 20px;
}
#Popup .vmCartModule .shoppingCartTotalBox .paymentCards .cards .card img {
    height: 100%;
    width: auto;
}

/* Popup RegisterLogin */
#Popup.registerLogin .vpajaxsearch-container {
    display: none !important;
}
#Popup.registerLogin {
    background-color: var(--color-two);
}
#Popup .modRegisterLogin {
    position: relative;
    margin: 60px auto;
}
#Popup .modRegisterLogin #error_message1 {
    position: fixed;
    right: 0;
    bottom: 0;
    width: 320px;
    padding: 30px;
    background-color: var(--color-error);
    box-shadow: 0 1px 0 rgba(255, 255, 255, .5);
    z-index: 1;
    transform: translateY(0);
    transition: all 0.3s ease 0s;
}
#Popup .modRegisterLogin #error_message1.success {
    background-color: var(--color-success);
}
#Popup .modRegisterLogin #error_message1.hideError {
    transform: translateY(120%);
}
#Popup .modRegisterLogin #error_message1 .closeMessage {
    position: absolute;
    right: 2px;
    top: 2px;
    color: #fff;
    font-size: 30px;
    width: 30px;
    text-align: center;
    height: 30px;
    display: inline-block;
    line-height: 24px;
    cursor: pointer;
    z-index: 1;
}
#Popup .modRegisterLogin #error_message1 .errorMessage {
    font-size: 16px;
    color: #fff;
    text-align: left;
}
#Popup .modRegisterLogin .jd-register-login-container {
    background-color: #fff;
    max-width: 460px;
}
#Popup .modRegisterLogin .jd-register-login-tab span {
    border: none;
    background-color: var(--color-two);
}
#Popup .modRegisterLogin .jd-register-login-tab span:hover {
    color: #000;
}
#Popup .modRegisterLogin .jd-register-login-tab span.active {
    background-color: #fff;
    color: #000;
    font-weight: bold;
}
#Popup .modRegisterLogin .jd-register-login-box {
    border: none;
}
#Popup .modRegisterLogin .jd-register-login-box .jd-register-container,
#Popup .modRegisterLogin .jd-register-login-box .jd-login-container {
    padding: 40px;
}
#Popup .modRegisterLogin .jd-register-login-box .jd-form-text {
    font-size: 16px;
    margin-bottom: 20px;
}
#Popup .modRegisterLogin .jd-register-login-box .jd-form-input {
    border: 1px solid var(--color-two);
    border-radius: 0;
    font-size: 14px;
    font-weight: normal;
}
#Popup .modRegisterLogin .jd-register-login-box .jd-form-input:focus {
    color: #000;
    border-color: var(--color-two);
    outline: 0;
    box-shadow: none;
}
#Popup .modRegisterLogin .jd-register-login-box .jd-input-group-addon {
    top: 0;
    background-color: var(--color-two);
    border: none;
    line-height: 42px;
    color: #000;
}
#Popup .modRegisterLogin .jd-register-login-box .g-recaptcha > div {
    margin: 0 auto;
}
#Popup .modRegisterLogin .jd-register-login-box .jd-form-button {
    background-color: #000;
    border: none;
    border-radius: 0;
    font-weight: normal;
    transition: all 0.3s ease 0s;
    font-size: 16px;
    padding: 10px 30px;
    margin-top: 50px;
}
#Popup .modRegisterLogin .jd-register-login-box .jd-list-wrapper {
    margin: 30px 0 0;
    display: block;
    text-align: center;
}
#Popup .modRegisterLogin .jd-register-login-box .jd-form-button:hover {
    background-color: var(--color-one);
}
#Popup .modRegisterLogin .jd-register-login-box .jd-list-group {
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    align-items: flex-start;
    -webkit-align-items: flex-start;
}
#Popup .modRegisterLogin .jd-register-login-box .jd-list-group a {
    font-size: 14px;
    margin-bottom: 5px;
}
#Popup .modRegisterLogin.active + .jd-social-btns {
    display: block;
    margin: -30px 0 50px;
}

.loginLogoutInvisible {
    position: fixed;
    width: 100%;
    height: 100%;
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
    align-items: center;
    -webkit-align-items: center;
    left: 0;
    top: 0;
    z-index: 10;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease 0s;
}
.loginLogoutInvisible.active {
    visibility: visible;
    opacity: 1;
}
.loginLogoutPopupOverlay {
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
    z-index: 11;
}
.loginLogoutPopup {
    background-color: #fff;
    width: 600px;
    max-width: 300px;
    z-index: 12;
}
#Popup .modRegisterLogin.afterLogin {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    justify-content: center;
    -webkit-justify-content: center;
    align-items: center;
    -webkit-align-items: center;
    pointer-events: none;
}
#Popup .modRegisterLogin.afterLogin.active {
    display: flex;
    display: -webkit-flex;
}
#Popup .modRegisterLogin.afterLogin .container {
    background-color: #fff;
    padding: 40px;
    box-sizing: border-box;
    pointer-events: all;
}
#Popup .modRegisterLogin.afterLogin .user {
    float: left;
    width: 100%;
    font-weight: bold;
    font-size: 16px;
    padding-bottom: 40px;
    margin-bottom: 40px;
    border-bottom: 1px solid var(--color-two);
}
#Popup .modRegisterLogin.afterLogin .buttons {
    float: left;
    width: calc(100% + 30px);
    margin: -15px;
}
#Popup .modRegisterLogin.afterLogin .button {
    float: left;
    width: 175px;
    border: 1px solid var(--color-two);
    margin: 15px;
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    align-items: center;
    -webkit-align-items: center;
    background-color: #fff;
    cursor: pointer;
    transition: all 0.3s ease 0s;
}
#Popup .modRegisterLogin.afterLogin .button .icon {
    height: 70px;
    padding: 35px 0 15px;
}
#Popup .modRegisterLogin.afterLogin .button .icon img {
    height: 99%;
    width: auto;
    filter: invert(0) contrast(100%);
    transition: all 0.3s ease 0s;
}
#Popup .modRegisterLogin.afterLogin .button .text {
    font-size: 14px;
    color: var(--color-three);
    padding: 15px 0;
    float: left;
    width: 100%;
    text-align: center;
    transition: all 0.3s ease 0s;
}
#Popup .modRegisterLogin.afterLogin .button:hover {
    border: 1px solid #000;
}
#Popup .modRegisterLogin.afterLogin .button:hover .icon img {
    filter: invert(100%) contrast(500%);
}
#Popup .modRegisterLogin.afterLogin .button:hover .text {
    color: #000;
}

/* Header Gray */
.headerGray {
    float: left;
    width: 100%;
    background-color: var(--color-two);
    margin-bottom: 70px;
}
.headerGray .texts {
    width: 100%;
    padding: 60px 0 70px;
    display: flex;
    display: -webkit-flex;
    align-items: center;
    justify-content: center;
    -webkit-justify-content: center;
    flex-direction: column;
    -webkit-flex-direction: column;
}
.headerGray .texts .title {
    max-width: 520px;
    font-size: 60px;
    font-weight: normal;
    margin: 0;
}
.headerGray .texts .description {
    max-width: 520px;
    margin: 20px 0 0 0;
    text-align: center;
}

/* Header White */
.headerWhite {
    float: left;
    width: 100%;
    border-bottom: 1px solid var(--color-two);
}
.headerWhite .container {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
    justify-content: space-between;
    -webkit-justify-content: space-between;
}
.headerWhite .texts {
    width: 50%;
    max-width: 520px;
    padding: 40px 40px 40px 0;
    box-sizing: border-box;
}
.headerWhite .texts .title {
    font-size: 60px;
    font-weight: normal;
    margin: 0;
}
.headerWhite .texts .description {
    margin: 20px 0 0 0;
}
.headerWhite .image {
    width: 50%;
    align-self: stretch;
}
.headerWhite .image.contain {
    max-height: 250px;
}
.headerWhite .image img {
    float: right;
    max-width: 100%;
    height: 100%;
    object-fit: cover;
}
.headerWhite .image.contain img {
    object-fit: contain;
    object-position: right;
}

/* Main Virtuemart  Category View */
.categoryView {
    float: left;
    width: 100%;
    margin: 0;
}
.categoryView .browseView {
    margin: 0;
}
.categoryView.wishlist .category {
    margin-bottom: 70px;
}
.categoryView .categoryDetails {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
    justify-content: space-between;
    -webkit-justify-content: space-between;
}
.categoryView .category.withoutImage .categoryDetails {
    justify-content: center;
    -webkit-justify-content: center;
}
.categoryView .categoryDetails .categoryDetailsImage {
    width: 50%;
}
.categoryView .categoryDetails .categoryDetailsImageContainer {
    float: left;
    position: relative;
    width: 100%;
    padding-top: 45%;
}
.categoryView .categoryDetails .categoryDetailsImage img {
    float: left;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    object-fit: cover;
}
.categoryView .withImage.contain .categoryDetails .categoryDetailsImage img {
    float: right;
    width: auto;
    right: 0;
    left: auto;
    object-fit: contain;
}
.categoryView .categoryDetails .categoryDetailsTexts {
    width: 50%;
    max-width: 520px;
    padding: 40px 40px 40px 0;
    box-sizing: border-box;
}
.categoryView .category.withoutImage .categoryDetails .categoryDetailsTexts {
    width: 100%;
    padding: 60px 0 70px;
}
.categoryView .categoryDetails .categoryDetailsTexts h1 {
    font-size: 60px;
    font-weight: normal;
    margin: 0;
}
.categoryView .category .categoryDetails .categoryDescription {
    margin: 20px 0 0 0;
}
.categoryView .category.withoutImage .categoryDetails .categoryDetailsTexts h1 {
    text-align: center;
}
.categoryView .category.withoutImage .categoryDetails .categoryDescription p {
    text-align: center;
}

/* Categories */
.categoriesView {
    float: left;
    width: 100%;
}
.categoryView.categories .subcategories {
    float: left;
    width: calc(100% + 30px);
    margin-left: -15px;
}
.categoryView.categories .subcategories .subcategory {
    float: left;
    position: relative;
    width: calc(50% - 30px);
    margin: 75px 15px 0 15px;
}
.categoryView.categories .subcategories.square .subcategory {
    width: calc(33.33% - 30px);
}
.categoryView.categories .subcategories .subcategory .image {
    aspect-ratio: 2;
    position: relative;
    display: block;
}
.categoryView.categories .subcategories.square .subcategory .image {
    padding-top: 100%;
}
.categoryView.categories .subcategories .subcategory .image img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    left: 0;
    top: 0;
}
.categoryView.categories .subcategories .subcategory h2 {
    float: left;
    position: absolute;
    left: 20%;
    bottom: 0;
    width: 60%;
    margin: 0;
    font-size: 18px;
    font-weight: normal;
    text-align: center;
    line-height: 40px;
    color: #000;
    background-color: #fff;
    transition: all 0.3s ease 0s;
}
.categoryView.categories .subcategories .subcategory:hover h2 {
    color: var(--color-one);
}

/* Order Products */
.orderProducts {
    float: left;
    width: 100%;
    margin: 35px 0;
}
.orderProducts .totalNumberOfProducts {
    float: left;
    width: auto;
    line-height: 28px;
    text-transform: uppercase;
}
.orderProducts .toggleFilters {
    display: none;
    float: left;
    width: auto;
    line-height: 28px;
    text-transform: uppercase;
}
.orderProducts .numberOfProductsToDisplay {
    float: right;
}
.orderProducts .numberOfProductsToDisplay .text {
    float: left;
    width: auto;
    opacity: 0.4;
    line-height: 28px;
}
.orderProducts .numberOfProductsToDisplay .select {
    float: left;
    width: auto;
}
.orderProducts .numberOfProductsToDisplay .select .select2-container .select2-selection--single {
    width: auto !important;
    border: none;
    float: left;
    position: relative;
}
.orderProducts .numberOfProductsToDisplay .select .select2-container .select2-selection--single .select2-selection__rendered {
    float: left;
    width: auto;
}
.orderProducts .orderList {
    float: right;
    margin-right: 30px;
}
.orderProducts .orderList .text {
    float: left;
    width: auto;
    opacity: 0.4;
    line-height: 28px;
}
.orderProducts .orderList .select {
    float: left;
    width: auto;
}
.orderProducts .orderList .select .select2-container {
    width: auto !important;
}
.orderProducts .orderList .select .select2-container .select2-selection--single {
    border: none;
}

/* Filters */
.categoryView .virtuemart_filters {
    float: left;
    width: calc(100% / 4);
    max-width: 250px;
}
.categoryView .virtuemart_filters + .productsInListContainer {
    float: right;
    width: calc((100% / 4) * 3);
}
.categoryView .virtuemart_filters + .productsInListContainer .productsInList .product {
    width: calc((100% / 3) - 30px);
}
.categoryView .virtuemart_filters h3 {
    font-size: 30px;
    font-weight: normal;
    line-height: 28px;
    margin: 35px 0 70px;
}
.virtuemart_filters .filter {
    border: none;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--color-two);
}
.virtuemart_filters .filter_title {
    border-bottom: none;
    font-size: 18px;
    background-color: #fff;
    padding: 0 0 5px;
    color: #000;
    font-weight: bold;
}
.virtuemart_filters .content {
    padding: 10px 0;
    background-color: #fff;
    overflow-y: auto;
}
.virtuemart_filters .categories a.active,
.virtuemart_filters .manufacturers .manufacturer.active,
.virtuemart_filters .customs .custom.active {
    font-weight: 400;
    color: var(--color-one);
}
.virtuemart_filters .type2 > div.active:after {
    color: var(--color-one);
}
.noUi-target {
    background: var(--color-two);
    border-radius: 0;
    border: none;
    box-shadow: none;
}
.virtuemart_filters .noUi-connect {
    background: #000;
}
.virtuemart_filters .noUi-horizontal {
    height: 4px;
}
.noUi-horizontal .noUi-handle {
    width: 14px;
    height: 14px;
    left: -9px;
    top: -5px;
    border-radius: 50%;
    border: none;
    background-color: #000;
    box-shadow: none;
    cursor: pointer;
}
.noUi-horizontal .noUi-handle:before,
.noUi-horizontal .noUi-handle:after{
    display: none;
}
.virtuemart_filters .price_filter .range_slider.visible_tooltip {
    margin-top: 50px;
}
.noUi-horizontal .noUi-tooltip {
    bottom: 160%;
}
.virtuemart_filters .price_filter .content {
    overflow: visible;
}
.virtuemart_filters .price_filter .go .button {
    background-color: #000;
    margin-bottom: -5px;
}
.virtuemart_filters .price_filter .range_slider {
    width: 100%;
}
#FiltersSubmit {
    margin-bottom: 20px;
}

/* Products in List */
.productsInList {
    float: left;
    width: calc(100% + 30px);
    margin: 35px 0 -70px -15px;
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}
.modVirtuemartProducts .productsInList {
    margin-top: 70px
}
.modVirtuemartProducts .products.owl-carousel  {
    overflow: visible;
}
.productsInList .product {
    display: block;
    width: calc((100% / 4) - 30px);
    min-width: unset;
    margin: 0 15px 70px 15px;
    padding: 0;
    overflow: hidden;
    position: relative;
}
.productsInList .product .imageArea {
    position: relative;
    float: left;
    width: 100%;
}
.productsInList .product .image img {
    float: left;
    width: 100%;
    height: 100%;
    object-fit: contain;
    aspect-ratio: var(--products-image-aspect-ratio);
    max-width: unset !important;
}
.productsInList .product .imageArea .buttons {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    padding: 40px 20px;
    box-sizing: border-box;
    background-color: rgba(0,0,0,0);
    transition: all 0.3s ease 0s;
    overflow: hidden;
    pointer-events: none;
}
.productsInList .product .button {
    width: 40px;
    height: 40px;
    margin-bottom: 10px;
    background-color: #fff;
    display: block;
    text-align: center;
    box-shadow: 0px 0px 10px 3px rgba(0,0,0,0.1);
    opacity: 0;
    transform: scale(0);
    transition: all 0.3s ease 0s;
    cursor: pointer;
    pointer-events: all;
}
.productsInList .product:hover .button {
    opacity: 1;
    transform: scale(1);
}
.productsInList .product .discountRate {
    position: absolute;
    right: 20px;
    top: 40px;
    width: 50px;
    height: 50px;
    background-color: var(--color-one);
    border-radius: 50%;
    box-shadow: 0px 0px 10px 3px rgba(0,0,0,0.1);
    text-align: center;
    color: #fff;
    line-height: 50px;
    font-size: 16px;
    font-weight: bold;
}
.productsInList .product .outOfStock {
    position: absolute;
    left: 50%;
    transform: translate(-50%,120%);
    bottom: 0;
    background-color: #fff;
    color: var(--color-one);
    padding: 10px 15px;
    box-shadow: 0px 0px 10px 3px rgba(0,0,0,0.1);
    transition: all 0.3s ease 0s;
}
.productsInList .product:hover .outOfStock {
    opacity: 1;
    transform: translate(-50%,0);
}
.productsInList .product .button img {
    transition: all 0.3s ease 0s;
    display: inline;
}
.productsInList .product .button.addToCart img {
    margin-top: 9px;
}
.productsInList .product .button.wishlist img {
    margin-top: 10px;
}
.productsInList .product .button.removeFromWishlist img {
    margin-top: 10px;
    filter: brightness(0);
}
.productsInList .product .button.viewProduct img {
    margin-top: 12px;
}
.productsInList .product .button.active,
.productsInList .product .button:hover {
    background-color: var(--color-one);
}
.productsInList .product .button.active img,
.productsInList .product .button:hover img {
    filter: brightness(0) invert(1);
}
.productsInList .product .image {
    float: left;
    width: 100%;
    opacity: 1;
    transition: all 0.3s ease 0s;
    position: relative;
    background-color: #fff;
}
.productsInList .product .image:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0;
    transition: all 0.3s ease 0s;
}
.productsInList .product:hover .image:after {
    opacity: 0.055;
}
.modVirtuemartProducts.default  .productsInList .product .image:after,
.modVirtuemartProducts.bestSellers  .productsInList .product .image:after,
.vpajaxsearch-container .productsInList .product .image:after {
    opacity: 0.055;
}
.modVirtuemartProducts.default .productsInList .product:hover .image:after,
.modVirtuemartProducts.bestSellers .productsInList .product:hover .image:after,
.vpajaxsearch-container .productsInList .product:hover .image:after {
    opacity: 0;
}
.productsInList .product .name {
    padding-top: 40px;
    float: left;
    width: 100%;
    color: #000;
    text-align: center;
}
.productsInList .product .prices {
    float: left;
    width: 100%;
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
}
.productsInList .product .salesPrice {
    float: left;
    width: auto;
    color: var(--color-one);
}
.productsInList .product .basePrice {
    float: left;
    width: auto;
    text-decoration: line-through;
    padding-left: 20px;
    font-size: 14px;
    opacity: 0.4;
    align-self: flex-end;
}
.productsInList .product .hidden {
    visibility: hidden;
    position: absolute;
    max-width: 100%;
}

/* Select 2 Dropdown */
span.select2-dropdown {
    border: 1px solid var(--color-two) !important;
    border-radius: 0;
    box-shadow: 0px 0px 10px 3px rgba(0,0,0,0.1);
}
body.view-category .select2-container:not([class*="selectChild"]) span.select2-dropdown {
    width: auto !important;
    margin-left: -9px;
}
span.select2-container--default .select2-results__option[aria-selected="true"] {
    background-color: #fff;
    color: var(--color-one);
}
span.select2-container--default .select2-results__option {
    white-space: nowrap;
    padding: 6px 15px;
}
span.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: var(--color-one);
    color: #fff;
    text-wrap: none;
    white-space: nowrap;
}

/* Pagination */
.productsInListPagination {
    float: left;
    width: 100%;
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
    margin-top: 70px;
}
.paginationContainer {
    float: left;
    width: auto;
    border-bottom: 1px solid var(--color-two);
}
.paginationContainer .paginationItem {
    float: left;
    width: auto;
}
.paginationContainer .pagenav {
    position: relative;
    display: block;
    float: left;
    width: 60px;
    height: 40px;
    line-height: 40px;
    background-color: transparent;
    border: none;
    padding: 0;
    margin: 0;
    text-align: center;
    border-bottom: 2px solid transparent;
    color: var(--color-three);
}
.paginationContainer span.pagenav {
    color: #000;
    border-bottom: 2px solid #000;
    opacity: 1;
}
.paginationContainer a.pagenav:hover {
    color: var(--color-one);
}
.paginationContainer .paginationPrevious .pagenav:before {
    content: '';
    position: absolute;
    right: 20px;
    top: 16px;
    width: 8px;
    height: 8px;
    border-left: 1px solid var(--color-three);
    border-top: 1px solid var(--color-three);
    transform: rotate(-45deg);
}
.paginationContainer .paginationPrevious a.pagenav:hover:before {
    border-left: 1px solid var(--color-one);
    border-top: 1px solid var(--color-one);
}
.paginationContainer .paginationNext .pagenav:before {
    content: '';
    position: absolute;
    left: 20px;
    top: 16px;
    width: 8px;
    height: 8px;
    border-right: 1px solid var(--color-three);
    border-top: 1px solid var(--color-three);
    transform: rotate(45deg);
}
.paginationContainer .paginationNext a.pagenav:hover:before {
    border-right: 1px solid var(--color-one);
    border-top: 1px solid var(--color-one);
}

/* Product Details */
.productDetails {
    float: left;
    width: 100%;
    margin-top: 70px;
}
.productDetails .productDetailsContainer {
    float: left;
    width: 100%;
    margin-bottom: 35px;
}
.productDetails .leftArea {
    float: left;
    width: 50%;
    margin-bottom: 30px;
    padding-right: 15px;
    box-sizing: border-box;
}
.productDetails .rightArea {
    float: right;
    width: 50%;
    padding-left: 15px;
    box-sizing: border-box;
}
.productDetails .rightArea.last {
    margin-bottom: 30px;
}
.productDetails .productName {
    margin: 0 0 5px;
    font-size: 30px;
    font-weight: normal;
    line-height: 30px;
}
.productDetails .manufacturerName {
    margin: 0;
    text-transform: uppercase;
    color: #000;
    transistion: all 0.3s ease 0s;
}
.productDetails a.manufacturerName:hover {
    color: var(--color-one);
}
.productDetails .images .mainImage,
.productDetails .images .mainImage img {
    float: left;
    width: 100%;
    height: auto;
    max-height: 800px;
    object-fit: contain;
}
.productDetails .additionalImages {
    float: left;
    width: calc(100% + 30px);
    margin: 15px 0 -15px -15px;
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}
.productDetails .additionalImage {
    position: relative;
    float: left;
    width: calc(20% - 30px);
    margin: 15px;
}
.productDetails .additionalImage img {
    float: left;
    width: 100%;
    height: auto;
}
.productDetails .additionalImage.video img {
    height: 100%;
    object-fit: cover;
    opacity: 0.4;
}
.productDetails .additionalImage.video:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent #000;
    z-index: 1;
}
.productDetails .additionalImage.video:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 2px solid #000;
}
.productDetails .prices {
    float: left;
    width: auto;
    margin: 30px 0 50px;
}
.productDetails .salesPrice {
    float: left;
    width: auto;
    font-size: 24px;
    color: var(--color-one);
    line-height: 24px;
}
.productDetails .basePrice {
    float: left;
    clear: left;
    width: auto;
    margin-top: 10px;
    font-size: 20px;
    line-height: 20px;
    color: var(--color-three);
    text-decoration: line-through;
    margin-right: 20px;
}
.productDetails .discountRate {
    float: left;
    width: auto;
    font-size: 24px;
    margin-top: 10px;
    line-height: 20px;
}
.productDetails .callForPrice {
    color: var(--color-one);
}
.productDetails .instalments {
    float: left;
    width: 100%;
    margin-bottom: 50px;
}
.productDetails .instalmentsText {
    font-size: 14px;
    font-style: italic;
    color: var(--color-three);
}
.productDetails .instalmentsText b {
    color: var(--color-one);
}
.productDetails .shortDescription {
    float: left;
    width: 100%;
    margin: 0 0 50px;
}
.productDetails .bonusPoints {
    float: left;
    width: 100%;
    margin-bottom: 45px;
    font-size: 16px;
}
.productDetails .bonusPoints span {
    font-weight: bold;
    color: var(--color-one);
}
.productDetails .bonusPoints a {
    color: var(--color-one);
    transition: all 0.3s ease 0s;
}
.productDetails .bonusPoints a:hover {
    color: #000;
}
.productDetails .skuStockAvailability {
    float: left;
    clear: left;
    margin-bottom: 20px;
}
.productDetails .skroutzReviews {
    float: left;
    clear: both;
    margin-bottom: 30px;
}
.productDetails .skuStockAvailability > div {
    width: 100%;
    color: var(--color-three);
    font-size: 14px;
}
.productDetails .pdfShipping {
    float: left;
    width: 100%;
    margin-bottom: 10px;
}
.productDetails .pdfShipping .pdfFile {
    float: left;
    width: auto;
    margin-right: 15px;
}
.productDetails .pdfShipping .pdfFile > a {
    float: left;
    color: var(--color-three);
    font-size: 14px;
}
.productDetails .addToCart {
    float: left;
    clear: left;
    width: 100%;
    margin-bottom: 50px;
}
.productDetails .addToCart .product-field {
    float: left;
    clear: left;
    width: 100%;
    max-width: 340px;
}
.productDetails .addToCart .addtocart-bar {
    float: left;
    clear: left;
    width: 100%;
    max-width: 340px;
}
.productDetails .addToCart .customTextInput input {
    border: 1px solid var(--color-two);
    border-radius: 0;
    font-size: 14px;
    font-weight: normal;
    color: #000;
    float: left;
    line-height: 40px;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 0 10px;
}
.productDetails .addToCart .product-field {
    margin: 0 0 10px;
}
.productDetails .addToCart .customfield_wrapper {
    float: left;
    width: 100%;
    margin-bottom: 10px;
}
.productDetails .addToCart .customfield_wrapper:last-child {
    margin-bottom: 0;
}
.productDetails .addToCart label,
.productDetails .addToCart .product-fields-title {
    display: none;
}
.productDetails .addToCart label.cf4all_color_btn {
    display: block;
}
.productDetails .addToCart span.select2 {
    float: left;
    width: 100% !important;
}
.productDetails .addToCart .select2-selection--single {
    background-color: var(--color-two);
    border: none;
    border-radius: 0;
    height: 40px;
}
.productDetails .addToCart .select2-selection__rendered {
    color: #000;
    font-size: 14px;
    line-height: 40px;
}
.productDetails .addToCart .select2-selection__arrow {
    height: 40px;
}
.productDetails .addToCart .addtocart-bar {
    margin: 0;
}
.productDetails .addToCart span.addtocart-button {
    width: 100%;
    float: left;
}
.addtocart-bar .notifyButton {
    border: none;
    border-radius: 0;
    background-color: #000;
    color: #fff;
    transition: all 0.3s ease 0s;
}
.addtocart-bar .generalButton.notify:hover {
    background-color: #ccc;
    color: #000;
}
.productDetails .addToCart span.addtocart-button-disabled {
    float: left;
    width: 100%;
    background: var(--color-two);
    color: #000;
    border: none;
    border-radius: 0;
    font-size: 14px !important;
}
.productDetails .addToCart .quantityInputs {
    float: left;
    width: auto;
}
.productDetails .addToCart .quantityNumber {
    float: left;
    border: none;
    background-color: #000;
    background-image: none;
    border-radius: 0;
    text-align: center;
    color: #ffff;
    padding: 0;
    height: 42px;
    font-size: 14px;
    width: 35px;
    line-height: 40px;
}
.productDetails .addToCart .quantityMinus,
.productDetails .addToCart .quantityPlus {
    float: left;
    border: none;
    background-color: #000;
    background-image: none;
    border-radius: 0;
    text-align: center;
    color: #ffff;
    padding: 0;
    height: 42px;
    font-size: 14px;
    width: 25px;
    line-height: 40px;
    margin: 0;
    transition: all 0.3s ease 0s;
}
.productDetails .addToCart .quantityMinus:hover,
.productDetails .addToCart .quantityPlus:hover {
    background-color: var(--color-one);
}
.productDetails .addToCart .addToCartButton {
    float: right;
    width: calc(100% - 95px);
}
.productDetails .accordionElements > div {
    float: left;
    width: 100%;
    border-bottom: 1px solid var(--color-two);
}
.productDetails .accordionElements .title {
    font-weight: bold;
    margin: 20px 0;
    cursor: pointer;
}
.productDetails .accordionElements .title:after {
    content: "+";
    float: right;
    line-height: 16px;
}
.productDetails .accordionElements .title.active:after {
    content: "-";
}
.productDetails .accordionElements .value {
    overflow: hidden;
    transition: max-height 0.3s ease-out;
}
.productDetails .accordionElements .valueInside {
    padding-bottom: 25px;
}
.productDetails .accordionElements .valueInside iframe {
    float: left;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 10px;
    height: auto !important;
    aspect-ratio: 16/9 !important;
    margin-bottom: 20px;
}
.productDetails .accordionElements .valueInside cite {
    font-size: 30px;
    text-align: center;
    padding: 0 60px;
    float: none;
    display: block;
    font-style: normal;
    line-height: 1.2;
    color: var(--color-three);
}
.productDetails .accordionElements .valueInside img {
    max-width: 100%;
    height: auto;
}
.productDetails .accordionElements .valueInside ol,
.productDetails .accordionElements .valueInside ul {
    margin: 0 auto 30px;
    line-height: 1.4;
    text-align: justify;
    list-style: none;
}
.productDetails .accordionElements .valueInside ol {
    counter-reset: numbers;
    padding-left: 0;
}
.productDetails .accordionElements .valueInside ol li {
    counter-increment: numbers;
    position: relative;
}
.productDetails .accordionElements .valueInside ol li:before {
    content: counter(numbers) ".";
    position: relative;
    padding-right: 10px;
    font-weight: bold;
}
.productDetails .accordionElements .valueInside ul {
    padding-left: 20px;
}
.productDetails .accordionElements .valueInside ul li {
    position: relative;
    padding-bottom: 5px;
}
.productDetails .accordionElements .valueInside ul li:before {
    content: "";
    position: absolute;
    left: -20px;
    top: 10px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: var(--color-three);
}
.productDetails .characteristic {
    float: left;
    width: 100%;
    background-color: var(--color-two);
    border-bottom: 1px solid #fff;
    padding: 10px 20px;
    box-sizing: border-box;
    font-size: 16px;
}
.productDetails .characteristicType {
    float: left;
    width: 50%;
    font-weight: bold;
}
.productDetails .characteristicValue {
    float: left;
    width: 50%;
}
.productDetails .moduletable {
    float: left;
    width: 100%;
}
.productDetails .modUspContainer.single {
    float: left;
    width: 100%;
    background-color: #fff;
    border: 1px solid var(--color-two);
    margin-top: 30px;
    padding: 30px;
    box-sizing: border-box;
}
.productDetails .modUspContainer.single .usp {
    float: left;
    width: 100%;
}
.productDetails .modUspContainer.single .top img {
    float: left;
    margin-right: 10px;
}
.productDetails .modUspContainer.single .top .title {
    float: left;
    margin-top: 4px;
}
.productDetails .modUspContainer.single .text {
    float: left;
    width: 100%;
    font-size: 14px;
    margin-top: 15px;
}
.productDetails .modUspContainer.single .text a {
    color: var(--color-one);
}
.productDetails .socialShare {
    float: left;
    clear: left;
    width: auto;
    margin-top: 45px;
}
.productDetails .socialShare .text {
    float: left;
    width: auto;
    line-height: 38px;
}
.productDetails .socialShare .socials {
    float: left;
    width: auto;
    line-height: 38px;
}
.productDetails .socialShare .ampz_container ul {
    display: block;
}
.productDetails .socialShare .ampz_container ul li {
    float: left;
    width: auto !important;
    margin: 0 0 0 15px !important;
    padding: 0 !important;
}
.productDetails .socialShare .ampz_container ul li a.template_minimal {
    color: #000 !important;
    width: 36px !important;
    height: 36px !important;
    border: 2px solid #000 !important;
    border-radius: 50%;
    text-align: center;
    box-sizing: border-box;
}
.productDetails .socialShare .ampz_container ul li a.template_minimal:hover {
    border: 2px solid var(--color-one) !important;
}
.productDetails .socialShare .ampz_container ul li a.template_minimal:hover i {
    color: var(--color-one);
}
.productDetails .pdfFiles {
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    margin: 20px 0;
}
.productDetails .pdfFile {
    float: left;
    width: 120px;
    margin-right: 30px;
}
.productDetails .pdfFile img {
    padding: 0 30px;
    margin: 0 auto;
    text-align: center;
    box-sizing: border-box;
}
.productDetails .pdfFile span {
    text-align: center;
    float: left;
    width: 100%;
    color: #000;
    transition: all 0.3s ease 0s;
}
.productDetails .pdfFile a:hover span {
    color: var(--color-one);
}


/* Fancybox 3 */
.fbx-container .fbx-image,
.fbx-container .fbx-spaceball {
    background-color: var(--color-two);
}
.fbx-thumbs__list a:before {
    border: 6px solid var(--color-one);
}

/* Fancybox (Add To Cart Popup) */
div#fancybox-overlay {
    display: none !important;
}
div#fancybox-wrap {
    width: 320px !important;
    position: fixed;
    left: auto !important;
    right: 0;
    top: auto !important;
    bottom: 0;
    background-color: var(--color-success);
    padding: 30px;
    box-sizing: border-box;
    box-shadow: 0 0 10px 3px rgba(0,0,0,0.1);
}
div#fancybox-wrap .fancybox-bg {
    display: none;
}
div#fancybox-wrap #fancybox-content {
    border-width: 0 !important;
    width: auto !important;
    height: auto;
    background-color: var(--color-success);
}
div#fancybox-wrap #fancybox-content h4,
div#fancybox-wrap #fancybox-content div div {
    font-size: 16px;
    margin: 0 0 20px;
    color: #fff;
    font-weight: normal;
}
div#fancybox-wrap #fancybox-content a.continue {
    display: none;
}
div#fancybox-wrap #fancybox-content .showcart {
    background-color: transparent;
    color: #fff;
    width: 100%;
    box-sizing: border-box;
    border-radius: 0;
    font-size: 16px;
    border: 1px solid #fff;
}
div#fancybox-wrap #fancybox-content .showcart:hover {
    background-color: #fff;
    color: var(--color-success);
}
div#fancybox-wrap #fancybox-close {
    background-image: none;
    text-align: center;
    line-height: 23px;
    right: -25px;
    top: -25px;
}
div#fancybox-wrap #fancybox-close:before {
    content: "×";
    color: #fff;
    font-size: 30px;
}

/* Cart Page */
body.view-cart .select2-container li {
    font-size: 14px;
}
body.view-cart #CartButton {
    opacity: 0.2;
    pointer-events: none;
}
#ProOPC.emptyCart-view {
    margin-top: 70px;
}
#ProOPC.emptyCart-view .proopc-empty-continue-link a {
    color: var(--color-one);
}
#ProOPC.emptyCart-view .proopc-empty-continue-link a:hover {
    color: #000;
}
#proopc-preloader > span.proopc-loading-bar {
    background-color: var(--color-one);
}
#proopc-system-message {
    position: fixed;
    width: 320px;
    right: 0;
    bottom: 0;
    text-align: left;
    z-index: 10;
}
#proopc-system-message button.close {
    color: #fff;
    opacity: 1;
    font-weight: 100;
    font-size: 30px;
    position: absolute;
    right: 10px;
    top: 10px;
    line-height: 15px;
}
#proopc-system-message button.close:hover {
    color: #fff;
}
#proopc-system-message .proopc-error-msg {
    background-color: var(--color-error);
    padding: 30px;
    margin: 0;
    border: none;
    border-radius: 0;
    color: #fff;
    text-shadow: none;
    box-shadow: 0 0 10px 3px rgba(0,0,0,0.1);
}
.cartPage {
    float: left;
    width: 100%;
    background-color: var(--color-two);
    padding: 70px 0;
    margin-bottom: -69px;
}
.cartPage .cartRows {
    float: left;
    width: 100%;
}
.cartPage .cartRow {
    float: left;
    width: 100%;
    padding: 35px 50px;
    box-sizing: border-box;
    margin-bottom: 30px;
    background-color: #fff;
}
.cartPage .cartRow.header .image {
    float: left;
    width: auto;
    margin-right: 35px;
}
.cartPage .cartRow.header h1.title {
    font-size: 20px;
    font-weight: 400;
    padding-bottom: 5px;
    margin-top: -5px;
    text-transform: none;
}
.cartPage .cartRow.header .totalProducts > div {
    float: left;
    width: auto;
    font-size: 14px;
}
.cartPage .mainArea {
    float: left;
    width: 100%;
}
.cartPage .leftArea {
    float: left;
    width: calc(100% - 490px);
}
.cartPage .rightArea {
    float: right;
    width: 460px;
}
.cartPage .cartRow.products {
    float: left;
    width: 100%;
    background-color: #fff;
    padding: 75px;
    box-sizing: border-box;
}
.cartPage .cartRow.products .product {
    float: left;
    width: 100%;
    display: flex;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
    padding-bottom: 35px;
    margin-bottom: 35px;
    border-bottom: 1px solid var(--color-two);
}
.cartPage .cartRow.products .product:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
}
.cartPage .cartRow.products .product .image {
    width: 190px;
    margin-right: 30px;
}
.cartPage .cartRow.products .product .image img {
    float: left;
    width: 100%;
    height: auto;
}
.cartPage .cartRow.products .product .otherDetails {
    float: left;
    width: calc(100% - 220px);
}
.cartPage .cartRow.products .product .productName a {
    color: #000;
    transition: all 0.3s ease 0s;
}
.cartPage .cartRow.products .product .productName a:hover {
    color: var(--color-one);
}
.cartPage .cartRow.products .product .productSku {
    font-size: 18px;
    color: #000;
    opacity: 0.5;
}
.cartPage .cartRow.products .product .productCustomData {
    margin-top: 20px;
    font-size: 18px;
}
.cartPage .cartRow.products .product .productTextInput {
    float: left;
    clear: left;
    color: var(--color-three);
    font-style: italic;
    font-size: 15px;
    margin-top: 10px;
}
.cartPage .cartRow.products .product .productTextInput:before {
    content: '* ';
}
.cartPage .cartRow.products .product .productCustomData br {
    display: none;
}
.cartPage .cartRow.products .product .productCustomData span > .product-field-type-E:after {
    content: " | ";
}
.cartPage .cartRow.products .product .productCustomData span > .product-field-type-E:nth-last-child(2):after {
    display: none;
}
.cartPage .cartRow.products .product .productPrices {
    margin-top: 20px;
}
.cartPage .cartRow.products .product .finalPrice {
    font-size: 18px;
    color: var(--color-one);
}
.cartPage .cartRow.products .product .priceBeforeDiscount {
    float: left;
    width: auto;
    font-size: 14px;
    line-height: 25px;
    opacity: 0.5;
    text-decoration: line-through;
    margin-right: 20px;
}
.cartPage .cartRow.products .product .discountRate {
    float: left;
}
.cartPage .cartRow.products .product .productControls {
    float: left;
    width: 100%;
    margin-top: 20px;
}
.cartPage .cartRow.products .product .productQuantity {
    float: left;
    width: auto;
}
.cartPage .cartRow.products .product .productQuantity .quantity-controls {
    width: 40px;
    height: 40px;
    background-color: transparent;
    border: 1px solid var(--color-two);
    color: var(--color-three);
    font-size: 30px;
    float: left;
    padding: 0;
    text-align: center;
    transition: all 0.3s ease 0s;
}
.cartPage .cartRow.products .product .productQuantity .quantity-controls:hover {
    color: #000;
}
.cartPage .cartRow.products .product .productQuantity .quantity-input {
    float: left;
    width: 40px;
    height: 40px;
    padding: 0;
    background-color: transparent;
    cursor: default;
    box-shadow: none;
    box-sizing: border-box;
    border: none;
    background-image: none;
    font-weight: normal;
    color: #000;
}
.cartPage .cartRow.products .product .productDelete {
    float: right;
    background-color: transparent;
    border: none;
    width: 40px;
    height: 40px;
    padding: 0;
}
.cartPage .cartRow.products .product .productDelete img {
    filter:brightness(100%);
    transition: all 0.3s ease 0s;
}
.cartPage .cartRow.products .product .productDelete:hover img {
    filter:brightness(0);
}
.cartPage .cartRow.synopsis {
    padding: 75px 40px 40px;
}
.cartPage .wbnVirtuemartCartGifts {
    float: left;
    width: auto;
}
.cartPage .cartRow.receivedGift,
.cartPage .cartRow.nextGift {
    padding: 40px;
    display: flex;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
}
.cartPage .cartRow.receivedGift .text,
.cartPage .cartRow.nextGift .text {
    padding-right: 30px;
    font-weight: bold;
    width: calc(100% - 90px);
}
.cartPage .cartRow.receivedGift .image,
.cartPage .cartRow.nextGift .image {
    width: 90px;
    height: auto;
}
.cartPage .cartRow.receivedGift .image img,
.cartPage .cartRow.nextGift .image img{
    width: 100%;
    height: auto;
}
.cartPage .cartRow.receivedGift.hidden,
.cartPage .cartRow.nextGift.hidden {
    display: none;
}
.cartPage .cartRow.synopsis .synopsisTitle {
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 30px;
}
.cartPage .cartRow.synopsis .synopsisRow {
    float: left;
    width: 100%;
    margin-bottom: 5px;
}
.cartPage .cartRow.synopsis .synopsisRow.synopsisTotal {
    font-weight: bold;
    margin: 25px 0 30px;
    padding-top: 30px;
    border-top: 1px solid var(--color-two);
}
.cartPage #synopsisRemoveCouponCodeContainer a {
    color: var(--color-three);
    font-size: 13px;
    font-style: italic;
    transition: all 0.3s ease 0s;
}
.cartPage #synopsisRemoveCouponCodeContainer a:hover {
    color: var(--color-one);
}
.cartPage #synopsisRemoveCouponCodeContainer a span {
    padding-left: 5px;
}
.cartPage .cartRow.synopsis .synopsisRow.synopsisBillWithoutTax {
    padding-top: 30px;
    border-top: 1px solid var(--color-two);
}
.cartPage .cartRow.synopsis .synopsisRow.synopsisBillTax {
    margin: 0 0 30px;
}
.cartPage .cartRow.synopsis .synopsisRow .synopsisLabel {
    float: left;
    width: auto;
    font-size: 16px;
}
.cartPage .cartRow.synopsis .synopsisRow .synopsisValue {
    float: right;
    width: auto;
    font-size: 16px;
}
.cartPage .cartRow.synopsis .cart-tos-group {
    position: relative;
}
.cartPage .cartRow.synopsis .prooopc-tos-label {
    padding-left: 30px;
    margin-top: 10px;
}
.cartPage .cartRow.synopsis #cart_tos_field {
    position: absolute;
    visibility: hidden;
}
.cartPage .cartRow.synopsis .terms-of-service-cont:before {
    content: "";
    border: 1px solid #D9D9D9;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 18px;
    height: 18px;
    border-radius: 3px;
    float: left;
    margin-right: 5px;
    transition: 0.3s ease 0s;
    background-color: #fff;
    position: absolute;
    left: 0;
    top: 2px;
    cursor: pointer;
}
.cartPage .cartRow.synopsis .terms-of-service-cont:after {
    position: absolute;
    content: '\2714';
    left: 3px;
    top: 2px;
    color: transparent;
    width: 10px;
    height: 10px;
    float: left;
    transition: 0.3s ease 0s;
    font-size: 15px;
    font-family: 'Arial';
    text-align: center;
    cursor: pointer;
}
.cartPage .cartRow.synopsis input[type=checkbox]:checked + .terms-of-service-cont:after {
    color: var(--color-one);
}
.cartPage .cartRow.synopsis .terms-of-service-cont {

}
.cartPage .cartRow.synopsis .terms-of-service-cont a {
    color: var(--color-one);
}
.cartPage .cartRow.synopsis .paymentCards {
    float: left;
    width: 100%;
    margin: 30px 0 0;
}
.cartPage .cartRow.synopsis .paymentCards .title {
    display: none;
}
.cartPage .cartRow.synopsis .paymentCards .cards {
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    justify-content: center;
    -webkit-justify-content: center;
}
.cartPage .cartRow.synopsis .paymentCards .cards .card {
    margin: 10px;
    height: 20px;
}
.cartPage .cartRow.synopsis .paymentCards .cards .card img {
    height: 100%;
    width: auto;
}
.cartPage input[type="text"],
.cartPage input[type="email"],
.cartPage input[type="password"] {
    border: 1px solid var(--color-two);
    border-radius: 0;
    font-size: 14px;
    font-weight: normal;
    width: 100% !important;
    height: auto;
    box-sizing: border-box;
    -webkit-appearance: none;
    -moz-appearance: none;
    text-transform: none;
    line-height: 40px;
    padding: 0 15px;
    background-color: #fff;
    box-shadow: none;
    outline: none;
}
.cartPage input[type="text"]:hover,
.cartPage input[type="text"]:focus,
.cartPage input[type="email"]:hover,
.cartPage input[type="email"]:focus,
.cartPage input[type="password"]:hover,
.cartPage input[type="password"]:focus {
    background-color: var(--color-two);
}
.cartPage .select2 {
    width: 100% !important;
    margin-bottom: 5px;
}
.cartPage .select2 .select2-selection--single {
    border: 1px solid var(--color-two);
    border-radius: 0;
    height: 40px;
}
.cartPage .select2 .select2-selection--single:hover {
    background-color: var(--color-two);
}
.cartPage .select2 .select2-selection__rendered {
    color: #000;
    font-size: 14px;
    line-height: 40px;
    padding: 0 15px;
}
.cartPage .select2 .select2-selection--single .select2-selection__arrow {
    top: 7px;
    right: 10px;
}
.cartPage .cartRow h3 {
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 30px;
}
.cartPage .cartRow .proopc-switch {
    float: left;
    width: auto;
    clear: both;
    cursor: pointer;
}
.cartPage .cartRow .proopc-switch + div {
    float: left;
    width: calc(100% - 30px);
    padding: 0 0 30px;
    margin-left: 30px;
}
.cartPage .cartRow.rowContinue .userFields {
    float: left;
    width: 50%;
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}
.cartPage .cartRow.rowContinue .userFields .userFieldContainer {
    width: 100%;
}
.cartPage .cartRow.rowContinue .userFields label {
    display: none;
}
.cartPage .cartRow.rowContinue .proopc-btn {
    max-width: 160px;
    float: left;
}
.cartPage .cartRow.rowContinue .userButtonForgotPassword {
    float: left;
    clear: left;
    margin-top: 20px;
    color: #000;
    font-size: 14px;
    transition: all 0.3s ease 0s;
}
.cartPage .cartRow.rowContinue .userButtonForgotPassword:hover {
    color: var(--color-one);
}
.cartPage #EditBTAddres,
.cartPage #EditSTAddres {
    float: left;
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    justify-content: space-between;
    -webkit-justify-content: space-between;
}
.cartPage #EditBTAddres > div,
.cartPage #EditSTAddres > div {
    width: calc(50% - 5px);
}
.cartPage #EditBTAddres label,
.cartPage #EditSTAddres label {
    display: none;
}
.cartPage .vmshipment,
.cartPage .vmpayment {
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}
.cartPage .vmshipment .vmshipment_description,
.cartPage .vmpayment .vmpayment_description {
    display: none;
    order: 1;
    width: 100%;
    padding: 0;
    margin: 10px 0;
    font-size: 14px;
    color: var(--color-three);
}
.cartPage input:checked + label .vmshipment .vmshipment_description,
.cartPage input:checked + label .vmpayment .vmpayment_description {
    display: block;
}
.cartPage .rowCoupons #proopc-coupon-code[type="text"] {
    float: left;
    width: calc(100% - 170px) !important;
}
.cartPage .rowCoupons button.proopc-btn {
    float: right;
    max-width: 160px;
}

/* Wishlist Message */
.vme-message {
    position: fixed;
    width: 320px;
    height: auto;
    right: 0;
    bottom: 0;
    margin: 0;
}
.vme-success .vme-message-content {
    background-color: var(--color-success);
}
.vme-message-content {
    padding: 30px;
    text-align: left;
    font-size: 18px;
    border-radius: 0;
    box-shadow: 0 0 10px 3px rgba(0,0,0,0.1);
}
.vme-message-close {
    display: none;
}
.vme-fade .vme-message {
    -webkit-transition: -webkit-transform .3s ease-out;
    -o-transition: -o-transform .3s ease-out;
    transition: transform .3s ease-out;
    -webkit-transform: translate3d(100%,0,0);
    -o-transform: translate3d(100%,0,0);
    transform: translate3d(100%,0,0);
}

/* Manufacturers */
.categoryView.manufacturers {
    float: left;
    width: 100%;
}
.categoryView.manufacturers .category {
    margin-bottom: 70px;
    background-color: var(--color-two);
}
.categoryView.manufacturers .manufacturers {
    float: left;
    width: calc(100% + 30px);
    margin: 35px 0 0 -15px;
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}
.categoryView.manufacturers .manufacturers .manufacturer {
    width: calc((100% / 6) - 30px);
    min-width: unset;
    margin: 0 15px 30px 15px;
    transition: all 0.3s ease 0s;
    background-color: var(--color-two);
}
.categoryView.manufacturers .manufacturers .manufacturer a,
.categoryView.manufacturers .manufacturers .manufacturer img {
    float: left;
    width: 100%;
    height: auto;
    transition: all 0.3s ease 0s;
}
.categoryView.manufacturers .manufacturers .manufacturer img {
    transform: scale(0.7);
}
.categoryView.manufacturers .manufacturers .manufacturer:hover img {
    transform: scale(0.75);
}

/* Header for Pages */
.mainTitle {
    margin-bottom: 70px;
    background-color: var(--color-two);
}
.mainTitle .mainTitleContainer {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
    justify-content: center;
    -webkit-justify-content: center;
}
.mainTitle .mainTitleTexts  {
    width: 100%;
    max-width: 520px;
    padding: 60px 0 70px;
}
.mainTitle .mainTitleTexts h1 {
    font-size: 60px;
    text-align: center;
    font-weight: normal;
    margin: 0;
}
.mainTitle .mainTitleTexts .description {
    text-align: center;
    margin-top: 20px;
}

/* Account Details */
.editAccount .accountFields {
    display: block;
    width: calc(100% + 30px);
    margin-left: -15px;
}
.editAccount .passwordChange {
    position: relative;
    float: left;
    width: calc(100% - 30px);
    border: 1px solid #000;
    margin: 0 15px 30px;
    padding: 30px 30px 10px;
    box-sizing: border-box;
}
.editAccount .groupLabel {
    position: absolute;
    left: 30px;
    top: -12px;
    background-color: #fff;
    padding: 0 15px;
}
.editAccount .accountField {
    float: left;
    width: calc((100% / 2) - 30px);
    margin: 0 15px 15px;
}
.editAccount .accountField label {
    float: left;
    width: auto;
    font-size: 16px;
    margin-bottom: 5px;
}
.editAccount .accountField input,
.editAccount .accountField select,
.editAccount .accountField span.select2 {
    float: left;
    font-size: 14px;
    width: 100% !important;
}
.editAccount .accountField input {
    line-height: 40px;
    padding: 0 10px;
    box-sizing: border-box;
    border: 1px solid var(--color-two);
    background-color: var(--color-two);
}
.editAccount .accountField span.select2 .select2-selection {
    height: auto;
    box-sizing: border-box;
    border: 1px solid var(--color-two);
    background-color: var(--color-two);
    background-image: none;
    border-radius: 0;
}
.editAccount .accountField span.select2 .select2-selection__rendered {
    line-height: 40px;
    padding: 0 10px;
}
.editAccount .accountField span.select2 .select2-selection__arrow {
    top: 8px;
    right: 5px;
}
body.view-user .select2-container--default .select2-results__options .select2-results__option,
body.view-user .select2-container--default .select2-results__option .select2-results__option {
    font-size: 14px;
}
.editAccount .generalButton {
    margin: 30px 15px 0;
    width: auto;
    padding: 0 40px;
}

/* Order History */
.orderHistory .head,
.orderHistory .order {
    float: left;
    width: 100%;
    display: flex;
    display: -webkit-flex;
    background-color: var(--color-two);
}
.orderHistory .order {
    background-color: #fff;
    border-bottom: 1px solid var(--color-two);
}
.orderHistory .head .orderValue,
.orderHistory .order .orderValue {
    float: left;
    width: calc((100% - 140px) / 4);
    padding: 0 15px;
    box-sizing: border-box;
    line-height: 40px;
}
.orderHistory .head .orderValue:last-child,
.orderHistory .order .orderValue:last-child {
    width: 140px;
}
.orderHistory .orders .orderValue .field {
    display: none;
}
.orderHistory .orders .orderValue a {
    color: var(--color-one);
}

/* Thank You Page */
.thankYou {
    float: left;
    width: 100%;
    margin: 70px 0 0;
}
.thankYou h1 {
    float: left;
    width: 100%;
    margin: 0 0 35px;
    font-size: 30px;
    font-weight: normal;
}
.thankYou .successText {
    float: left;
    width: 100%;
}
.thankYou .orderInfos {
    float: left;
    width: 100%;
}
.thankYou .orderInfo {
    float: left;
    width: 100%;
    background-color: var(--color-two);
    border-bottom: 1px solid #fff;
}
.thankYou .orderInfo > div {
    float: left;
    width: 50%;
    padding: 0 15px;
    line-height: 40px;
    font-size: 14px;
    box-sizing: border-box;
}
.thankYou .vmpayment_description,
.thankYou .vmshipment_description {
    display: none;
}
.thankYou .viewOrder .generalButton {
    float: left;
    width: auto;
    padding: 0 40px;
    margin-top: 30px;
}

/* Order Details */
.orderDetails .orderDetailsLoginFirst {
    float: left;
    width: 100%;
    text-align: center;
}
.orderDetails .orderDetailsContainer {
    float: left;
    width: calc(100% + 30px);
    margin-left: -15px;
}
.orderDetails .orderDetailsContainer > div {
    float: left;
    clear: left;
    width: calc(50% - 30px);
    margin: 0 15px 70px;
}
.orderDetails .orderDetailsContainer .title {
    float: left;
    width: 100%;
    margin-bottom: 10px;
    font-weight: bold;
}
.orderDetails .orderDetailsContainer .orderInfos {
    float: right;
    position: sticky;
    top: 70px;
}
.orderDetails .orderInfo {
    float: left;
    width: 100%;
    background-color: var(--color-two);
    border-bottom: 1px solid #fff;
}
.orderDetails .orderInfo > div {
    float: left;
    width: 50%;
    padding: 10px 15px;
    line-height: 20px;
    font-size: 14px;
    box-sizing: border-box;
}
.orderDetails .vmpayment_description,
.orderDetails .vmshipment_description {
    display: none;
}
.orderDetails .viewOrder .generalButton {
    float: left;
    width: auto;
    padding: 0 40px;
    margin-top: 30px;
}
.orderDetails .products .sectiontableheader {
    background-color: var(--color-two);
}
.orderDetails .products .sectiontableheader th {
    line-height: 40px;
    padding: 0 15px;
}
.orderDetails .products .product td {
    line-height: 20px;
    padding: 10px 15px;
    border-bottom: 1px solid var(--color-two);
}
.orderDetails .products .product td a {
    color: var(--color-one)
}

/* System Messages */
#system-message {
    position: fixed;
    width: 320px;
    height: auto;
    right: 0;
    bottom: 0;
    margin: 0;
    z-index: 100;
}
#system-message .alert {
    position: relative;
    background-color: var(--color-error);
}
#system-message .alert.alert-success,
#system-message .alert.alert-notice {
    background-color: var(--color-success);
}
#system-message .close {
    color: #fff;
    position: absolute;
    text-align: center;
    line-height: 23px;
    width: 30px;
    height: 30px;
    right: 3px;
    top: 3px;
    font-size: 30px;
    cursor: pointer;
}
#system-message .alert-heading {
    display: none;
}
#system-message .alert-message {
    padding: 30px;
    text-align: left;
    font-size: 18px;
    color: #fff;
}

/* Webinners Slider */
.textBanner {
    background-color: var(--color-two);
    border-bottom: 1px solid #fff;
}
.textBanner .slick-track {
    display: flex;
    display: -webkit-flex;
}
.textBanner .slick-slide {
    height: auto !important;
    display: flex !important;
    display: -webkit-flex !important;
}
.textBanner .textBannerContent {
    float: left;
    width: 100%;
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    align-items: center;
    -webkit-align-items: center;
    justify-content: space-between;
    -webkit-justify-content: space-between;
}
.textBanner .texts {
    float: left;
    width: 50%;
    margin: 0 0 80px;
    padding: 0 0 0 20px;
    box-sizing: border-box;
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    justify-content: center;
    -webkit-justify-content: center;
}
.textBanner .texts .textsContainer {
    padding-right: 70px;
    box-sizing: border-box;
    float: right;
    max-width: calc(var(--page-width) / 2);
    margin-left: auto;
}
.textBanner .texts .title {
    float: left;
    font-size: 60px;
    margin-bottom: 30px;
}
.textBanner .texts .text {
    float: left;
    clear: left;
    font-size: 30px;
    margin-bottom: 50px;
}
.textBanner .texts .link {
    float: left;
    clear: left;
    color: #000;
    text-decoration: underline;
    transition: all 0.3 ease 0s;
    margin-right: auto;
}
.textBanner .texts .link:hover {
    color: var(--color-one);
}
.textBanner .image {
    float: right;
    width: 50%;
}
.textBanner .image.full {
    align-self: stretch;
    display: flex;
    display: -webkit-flex;
}
.textBanner .image.full .imageContainer {
    align-self: stretch;
}
.textBanner .image.full img {
    float: left;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.textBanner .image.space {
    padding-right: 20px;
    box-sizing: border-box;
}
.textBanner .image.space .imageContainer {
    float: left;
    width: 100%;
    max-width: calc(var(--page-width) / 2);
}
.textBanner .image.space img {
    display: inline-block;
    box-sizing: border-box;
    width: auto;
    float: right;
    height: auto;
}
.modSlider > .arrows {
    float: left;
    width: 100%;
    position: absolute;
    bottom: 40px;
    left: 0;
}
.modSlider > .arrows .slick-prev.slick-arrow {
    border: none;
    background-color: transparent;
    cursor: pointer;
    padding: 0;
    margin-right: 70px;
    width: 30px;
}
.modSlider > .arrows .slick-next.slick-arrow {
    border: none;
    background-color: transparent;
    cursor: pointer;
    transform: rotate(180deg);
    padding: 0;
    margin-right: 70px;
    width: 30px
}
.modSlider > .arrows .slick-prev.slick-arrow svg,
.modSlider > .arrows .slick-next.slick-arrow svg {
    float: left;
    width: 100%;
    padding: 0;
}
.modSlider > .arrows .slick-prev.slick-arrow svg g,
.modSlider > .arrows .slick-next.slick-arrow svg g {
    transition: all 0.3s ease 0s;
}
.modSlider > .arrows .slick-prev.slick-arrow:hover svg g,
.modSlider > .arrows .slick-next.slick-arrow:hover svg g {
    fill: var(--color-one);
}

/* Reset Password (Reset Password & Login) */
.userPages {
    margin-top: 70px;
}
.userPages .leftArea {
    float: left;
    width: 50%;
    padding-right: 70px;
    box-sizing: border-box;
}
.userPages .leftArea h1 {
    font-weight: normal;
    margin-top: 0;
}
.userPages .rightArea {
    float: left;
    width: 50%;
}
.userPages .rightArea .control-group {
    float: left;
    clear: left;
    width: 100%;
    max-width: 320px;
    margin-bottom: 10px;
}
.userPages .rightArea .control-group input {
    background-color: var(--color-two);
    border: none;
    line-height: 40px;
    float: left;
    padding: 0 15px;
    font-size: 14px;
    width: 100%;
    box-sizing: border-box;
}
.userPages .rightArea .control-group label {
    display: none;
}

/* Article */
.article ul {
    list-style: none;
    padding-left: 20px;
    box-sizing: border-box;
}
.article ul li {
    position: relative;
    padding-bottom: 5px;
}
.article ul li:before {
    content: "";
    position: absolute;
    left: -20px;
    top: 10px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: var(--color-three);
}
.article a {
    color: var(--color-one);
}

/* Error Page */
.errorPage {
    position: relative;
    width: 100vw;
    height: 100vh;
    margin: 0;
    padding: 0;
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
    align-items: center;
    -webkit-align-items: center;
}
.errorPage .errorPageContainer {
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    align-items: center;
    -webkit-align-items: center;
}
.errorPage .errorText {
    line-height: 1;
    text-transform: uppercase;
}
.errorPage .errorCode {
    font-size: 180px;
    line-height: 1;
}
.errorPage .generalButton {
    margin-top: 30px;
}
.errorPage .generalButton:hover {
    background-color: var(--color-one);
}

/* Contact Page */
.contactPage .form {
    float: left;
    width: 100%;
    margin: 0 0 75px;
}
.contactPage .form .cf-fields {
    float: left;
    width: calc(100% + 30px);
    margin-left: -15px;
    display: grid;
    grid-template-columns: 50% 50%;
}
.contactPage .form .cf-control-group {
    float: left;
    margin: 0 15px 10px;
}
.contactPage .form .cf-control-group div {
    float: left;
    width: 100%;
}
.contactPage .form .cf-control-group.fullWidth {
    grid-column-start: 1;
    grid-column-end: 3;
}
.contactPage .form .cf-control-group.fullRight {
    grid-column-start: 2;
    grid-row-start: 2;
    grid-row-end: 5;
}
.contactPage .form h2 {
    font-size: 20px;
    font-weight: normal;
    margin: 0 0 25px;
}
.contactPage .form label {
    float: left;
    width: 100%;
    margin-bottom: 5px;
    font-size: 16px;
}
.contactPage .form input {
    float: left;
    width: 100%;
    box-sizing: border-box;
    border: none;
    padding: 10px 15px;
    font-size: 16px;
    background-color: var(--color-two) !important;
}
.contactPage .form textarea {
    float: left;
    width: 100%;
    padding: 10px 15px;
    font-size: 16px;
    box-sizing: border-box;
    border: none;
    background-color: var(--color-two) !important;
    height: 184px;
    resize: none;
}
.contactPage .form .requiredDescription {
    text-align: right;
    color: var(--color-three);
    font-size: 14px;
}
.contactPage .form .generalButton {
    float: right;
    width: auto;
    margin-top: 25px;
}
.contactPage .form .generalButton:hover {
    background-color: var(--color-one) !important;
}

/* Blog Category */
.categoryBlog {
    float: left;
    width: 100%;
}
.categoryBlog .emptyCategory {
    margin-top: 60px;
}
.categoryBlog .article.leading {
    float: left;
    width: 100%;
    display: flex;
    display: -webkit-flex;
    background-color: var(--color-two);
    margin-bottom: 70px;
}
.categoryBlog .article.leading .rightArea {
    order: 2;
    -webkit-order: 2;
    width: 50%;
}
.categoryBlog .article.leading .rightArea * {
    float: left;
    width: 100%;
}
.categoryBlog .article.leading .rightArea div,
.categoryBlog .article.leading .rightArea a {
    height: 100%;
}
.categoryBlog .article.leading .rightArea img {
    float: left;
    width: 100%;
    max-width: 100% !important;
    height: 100%;
    object-fit: cover;
}
.categoryBlog .article.leading .leftArea {
    order: 1;
    -webkit-order: 1;
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    justify-content: center;
    -webkit-justify-content: center;
    width: 50%;
}
.categoryBlog .article.leading .leftArea .texts {
    padding: 16%;
    box-sizing: border-box;
}
.categoryBlog .article.leading .leftArea h2 {
    margin: 0;
}
.categoryBlog .article.leading .leftArea h2 a {
    font-size: 60px;
    text-align: center;
    font-weight: normal;
    color: #000;
    transition: all 0.3s ease 0s;
}
.categoryBlog .article.leading .leftArea h2 a:hover {
    color: var(--color-one);
}
.categoryBlog .article.leading .leftArea .createDate {
    float: left;
    width: 100%;
    margin-top: 20px;
    font-size: 24px;
}
.categoryBlog .article.leading .leftArea .readMore {
    float: left;
    width: auto;
    color: var(--color-three);
    margin-top: 50px;
    transition: all 0.3s ease 0s;
    text-decoration: underline;
}
.categoryBlog .article.leading .leftArea .readMore:hover {
    color: var(--color-one);
}
.categoryBlog .intoArticles {
    width: calc(100% + 30px);
    padding: 0;
    box-sizing: border-box;
    left: -15px;
    max-width: 1240px;
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    margin: 0 auto 50px;
    position: relative;
}
.categoryBlog .article.intro {
    position: relative;
    float: left;
    width: calc(50% - 30px);
    margin: 15px;
}
.categoryBlog .article.intro .topArea,
.categoryBlog .article.intro .topArea * {
    float: left;
    width: 100%;
    height: auto;
}
.categoryBlog .article.intro .bottomArea {
    position: absolute;
    bottom: 0;
    margin: 0 40px;
    padding: 30px 20px 0 20px;
    box-sizing: border-box;
    width: calc(100% - 80px);
    background-color: #fff;
    transition: all 0.3s ease 0s;
}
.categoryBlog .article.intro:hover .bottomArea {
    padding-bottom: 30px;
}
.categoryBlog .article.intro .bottomArea .texts {
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    align-items: center;
    -webkit-align-items: center;
}
.categoryBlog .article.intro .bottomArea h2 {
    margin: 0;
}
.categoryBlog .article.intro .bottomArea h2 a {
    float: left;
    width: 100%;
    text-align: center;
    font-size: 20px;
    font-weight: normal;
    color: #000;
    transition: all 0.3s ease 0s;
}
.categoryBlog .article.intro .bottomArea h2:hover a {
    color: var(--color-one);
}
.categoryBlog .article.intro .bottomArea .createDate {
    color: var(--color-three);
    margin-top: 5px;
}
.categoryBlog .article.intro .bottomArea .readMore {
    margin-top: 20px;
    color: #000;
    font-size: 16px;
    text-decoration: underline;
    transition: all 0.3s ease 0s;
}
.categoryBlog .article.intro .bottomArea .readMore:hover {
    color: var(--color-one);
}
.categoryBlog .pagination {
    display: flex;
    justify-content: center;
    float: left;
    width: 100%;
}

/* Blog Article */
.articleBlog .mainTitle.withImage {
    background-color: #fff;
}
.articleBlog .mainTitleContainer {
    background-color: var(--color-two);
}
.articleBlog .mainTitle .mainTitleTexts {
    width: 50%;
    max-width: 50%;
    padding: 8%;
    box-sizing: border-box;
}
.articleBlog .mainTitle .mainTitleTexts h1 {
    text-align: left;
}
.articleBlog .mainTitle .mainTitleTexts .createDate {
    float: left;
    width: 100%;
    margin-top: 50px;
    font-size: 24px;
}
.articleBlog .mainTitle .mainTitleImage {
    width: 50%;
}
.articleBlog .mainTitle .mainTitleImage * {
    float: left;
    width: 100%;
    height: auto;
}
.articleBlog .mainTitle .mainTitleImage img {
    max-width: 100% !important;
    height: 100%;
    object-fit: cover;
}
.articleBlog .socialShare {
    float: left;
    position: absolute;
}
.articleBlog .socialShare .text {
    float: left;
    width: auto;
    font-size: 18px;
    color: var(--color-three);
}
.articleBlog .socialShare .text span {
    display: inline-block;
    width: auto;
    border-bottom: 2px solid #000;
    padding-bottom: 10px;
}
.articleBlog .socialShare .socials {
    float: left;
    width: 100%;
    clear: left;
    padding-top: 5px;
}
.articleBlog .socialShare .socials > div {
    float: right;
}
.articleBlog .socialShare .socials ul {
    padding-left: 0;
}
.articleBlog .socialShare .socials ul li {
    min-width: 25px;
}
.articleBlog .socialShare .socials ul li i {
    color: #000;
    transition: all 0.3 ease 0s;
}
.articleBlog .socialShare .socials ul li:hover i {
    color: var(--color-one);
}
.articleBlog .fullText cite {
    font-size: 30px;
    text-align: center;
    padding: 0 60px;
    float: none;
    display: block;
    font-style: normal;
    line-height: 1.2;
    color: var(--color-three);
}
.articleBlog .fullText p,
.articleBlog .fullText ol,
.articleBlog .fullText ul {
    margin: 0 auto 30px;
    max-width: 700px;
    line-height: 1.4;
    text-align: justify;
}
.articleBlog .fullText ol {
    counter-reset: numbers;
    list-style: none;
    padding-left: 0;
}
.articleBlog .fullText ol li {
    counter-increment: numbers;
    position: relative;
}
.articleBlog .fullText ol li:before {
    content: counter(numbers) ".";
    position: relative;
    padding-right: 10px;
    font-weight: bold;
}
.articleBlog .fullText .modCarousel {
    margin-bottom: 30px;
}
.articleBlog .fullText .modCarousel .carouselContainer {
    background-color: #fff;
    width: 950px;
    max-width: calc(100vw - 140px);
    margin: 0 auto;
    padding: 0;
    float: none;
}
.articleBlog .fullText p img {
    margin: 0 auto;
    max-width: 100%;
    height: auto;
    float: none;
    display: block;
}
.articleBlog .fullText p iframe {
    max-width: 100vw !important;
    width: calc(100% + 250px) !important;
    margin-left: -125px;
}
.articleBlog .fullText .mixed {
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    align-items: center;
    -webkit-align-items: center;
}
.articleBlog .fullText .mixed > div {
    margin: 0 0 30px;
}
.articleBlog .fullText .mixed > .text p:last-child,
.articleBlog .fullText .mixed > .text ul:last-child {
    margin-bottom: 0;
}
.articleBlog .fullText .mixed > .text {
    max-width: 700px;
}
.articleBlog .tags {
    margin: 30px auto 30px;
    width: 100%;
    max-width: 700px;
    display: flex;
    display: -webkit-flex;
}
.articleBlog .tags .label {
    float: left;
    width: auto;
}
.articleBlog .tags .tagsList {
    float: left;
    width: auto;
}
.articleBlog .tags .tag {
    float: left;
    padding-left: 5px;
    transition: all 0.3s ease 0s;
}
.articleBlog .tags .tag:after {
    content: ",";
}
.articleBlog .tags .tag:last-child:after {
    display: none;
}
.articleBlog .tags .tag:hover {
    color: #000;
}

/* Default Article */
.articleDefault {
    float: left;
    width: 100%;
}
.articleDefault .accordion {
    float: left;
    width: 100%;
    padding: 50px 140px;
    box-sizing: border-box;
    background-color: var(--color-two);
}
.articleDefault .accordion > .accordion-group {
    margin: 0;
    border: none;
    border-bottom: 1px solid #000;
    border-radius: 0;
}
.articleDefault .accordion > .accordion-group:last-child {
    border-bottom: none;
}
.articleDefault .accordion > .accordion-group .accordion-heading .accordion-toggle {
    padding: 20px 0;
    background-color: transparent;
}
.articleDefault .accordion > .accordion-group > .accordion-heading > a.accordion-toggle:hover {
    background-color: transparent;
}
.articleDefault .accordion > .accordion-group .accordion-heading .accordion-toggle:after {
    content: "+";
    font-weight: bold;
    cursor: pointer;
    float: right;
    color: #000;
    padding-right: 20px;
}
.articleDefault .accordion > .accordion-group.active > .accordion-heading > a.accordion-toggle {
    background-color: transparent;
}
.articleDefault .accordion > .accordion-group.active > .accordion-heading > a.accordion-toggle:after {
    content: "-";
}
.articleDefault .accordion > .accordion-group .accordion-heading .accordion-toggle span {
    color: #000;
    font-weight: bold;
}
.articleDefault .accordion > .accordion-group > .accordion-body > .accordion-inner {
    border-top: none;
}
.articleDefault .accordion > .accordion-group.active > div > a:focus,
.articleDefault .accordion > .accordion-group > div > a:focus {
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.articleDefault .accordion > .accordion-group > .accordion-body > .accordion-inner {
    padding: 0 0 30px;
}

/* Instagram Feed */
#jux_social_instagram_feed {
    margin-top: 70px;
}

/* Virtuemart Notify Page */
.notifyMe {
    padding: 40px 0 60px;
    text-align: center;
}
.notifyMe input[type="email"] {
    float: left;
    width: 300px;
    padding: 0 15px;
    line-height: 40px;
}
.notifyMe .generalButton {
    width: 180px;
}
.notifyMe .formContainer {
    display: flex;
    justify-content: center;
}

/* Order Done Page */
.orderDone {
    margin-top: 70px;
}
.vmLoadingDivMsg {
    display: none;
}
#vmPaymentForm .input {
    background-color: transparent;
    border: none;
}

/* Atc Popup */
#ActPopup {
    visibility: hidden;
    opacity: 0;
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 999;
    top: 0;
    left: 0;
    transition: all 0s ease 0s;
}
#ActPopup.active {
    visibility: visible;
    opacity: 1;
    transition: all 0.3s ease 0s;
}
#ActPopup .atcPopupOverlay {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1;
}
#ActPopup .atcPopup {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    z-index: 2;
    width: 360px;
    background-color: #fff;
    padding: 50px;
    box-sizing: border-box;
}
#ActPopup .atcPopup .closePopup {
    position: absolute;
    right: 0;
    top: 0;
    width: 44px;
    height: 36px;
    text-align: center;
    line-height: 36px;
    font-size: 30px;
    color: rgb(136, 136, 136);
    cursor: pointer;
    transition: all 0.3s ease 0s;
}
#ActPopup .atcPopup .closePopup:hover {
    color: #000;
}
#ActPopup .product-container > * {
    display: none;
}
#ActPopup .hidden {
    display: block;
}
#ActPopup .hidden > * {
    display: none;
}
#ActPopup .hidden .addtocart-area {
    display: block;
}
#ActPopup .hidden .addtocart-area .customfield_wrapper {
    float: left;
    width: 100%;
    margin-bottom: 10px;
}
#ActPopup .hidden .addtocart-area label,
#ActPopup .hidden .addtocart-area .product-fields-title {
    display: none;
}
#ActPopup .hidden .addtocart-area span.select2 {
    float: left;
    width: 100% !important;
}
#ActPopup .hidden .addtocart-area .select2-selection--single {
    background-color: var(--color-two);
    border: none;
    border-radius: 0;
    height: 40px;
}
#ActPopup .hidden .addtocart-area .select2-selection__rendered {
    color: #000;
    font-size: 14px;
    line-height: 40px;
}
#ActPopup .hidden .addtocart-area .select2-selection__arrow {
    height: 40px;
}
body.view-category.atcPopupActive span.select2-dropdown {
    width: 260px !important;
    margin-left: 0;
}
#ActPopup .hidden .addtocart-area .quantityInputs {
    float: left;
    width: auto;
}
#ActPopup .hidden .addtocart-area .quantityMinus,
#ActPopup .hidden .addtocart-area .quantityPlus {
    float: left;
    border: none;
    background-color: #000;
    background-image: none;
    border-radius: 0;
    text-align: center;
    color: #ffff;
    padding: 0;
    height: 40px;
    font-size: 14px;
    width: 25px;
    line-height: 40px;
    margin: 0;
    transition: all 0.3s ease 0s;
}
#ActPopup .hidden .addtocart-area .quantityNumber {
    float: left;
    border: none;
    background-color: #000;
    background-image: none;
    border-radius: 0;
    text-align: center;
    color: #ffff;
    padding: 0;
    height: 40px;
    font-size: 14px;
    width: 35px;
    line-height: 40px;
}
#ActPopup .hidden .addtocart-area .quantityMinus,
#ActPopup .hidden .addtocart-area .quantityPlus {
    float: left;
    border: none;
    background-color: #000;
    background-image: none;
    border-radius: 0;
    text-align: center;
    color: #ffff;
    padding: 0;
    height: 40px;
    font-size: 14px;
    width: 25px;
    line-height: 40px;
    margin: 0;
    transition: all 0.3s ease 0s;
}
#ActPopup .hidden .addtocart-area .addToCartButton {
    float: right;
    width: calc(100% - 95px);
}

/* Footer Logo */
.footerLogo picture,
.footerLogo img {
    float: left;
    max-width: 100%;
    height: auto;
}

/* Bought Together */
.productDetails .addToCart .product-field.product-field-type-X {
    width: 100%;
    max-width: 100%;
}
.plgBoughtTogether .product.boughtTogether {
    float: left;
    width: 100%;
    background-color: var(--color-two);
    padding: 10px 20px !important;
    box-sizing: border-box;
    border-bottom: 1px solid #fff;
}
.plgBoughtTogether .vpbt-inner {
    border: none;
}
.plgBoughtTogether .product.boughtTogether.currentProduct {
    display: none;
}
.plgBoughtTogether .product.boughtTogether img {
    float: left;
    width: 60px;
    height: auto;
}
.plgBoughtTogether .product.boughtTogether .vpbt-title {
    padding-left: 20px;
    font-size: 16px;
}
.plgBoughtTogether .product.boughtTogether .vm-price-value {
    font-size: 16px;
}
.plgBoughtTogether .product.boughtTogether .PricesalesPrice {
    color: #000;
}
.plgBoughtTogether .product.boughtTogether .orderable {
    color: green;
}
.plgBoughtTogether .product.boughtTogether .notOrderable {
    color: red;
}
.plgBoughtTogether .product.boughtTogether.inactive > * {
    opacity: 0.3;
}
.plgBoughtTogether .totalPrice {
    float: left;
    width: 100%;
}