@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap');

:root{
  --main-purple:#d9597f;
  --main-brown:#ebba79;
  --main-green:#79cfbb;
  --btn-radius:5px;
  --box-radius:5px;

  --product-box-radius:20px;
}

body {
     font-family: "Zen Maru Gothic", serif;
    overflow-x: hidden;
    /* font-weight: bold; */
}
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  font-family: "Zen Maru Gothic", var(--cassiopeia-font-family-headings,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");
  }
/* breadcrumbs */
.mod-breadcrumbs__wrapper {
  font-weight: 400;
  font-size: 1rem;
}
/* menu */
.mod-elmenu.el-hor-megamenu .el-main-list .depth-li-0 .list-link {
  white-space: nowrap;
  font-size: 1.05em;
}

/* Blog */

.blog-item{
  border-radius: var(--box-radius);
}


/* Eshop */

#fancybox-outer{
  border-radius: var(--box-radius);
}

.com_virtuemart .site-grid{
  background:#f7f7f7  
}


/* tags */
.tag-outer-right{
  right: 10px;
  top: 10px;
}
.tag-outer-left {
  left: 10px;
  top: 10px;
}
.tag{
  border-radius: var(--box-radius);
}

/* list */

/* hide manufacturers */
.category-view .vm-order-list >div:nth-child(2){
  display: none;
}


.category-view .product-container{
  background: #fff;
}

.category-view .vm-subcategory a{
  border-radius: var(--box-radius);
  transition: all 0.15s linear;
}

.category-view .vm-subcategory a:hover{
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.product-container{
  border-radius: var(--box-radius);
}

/* product details */

/* full width product */

.back-to-category .product-details{
  border-radius: 13px;
}
.view-productdetails .vm-product-container{
  align-items: stretch;
}

.view-productdetails .vm-product-media-container,
.view-productdetails .vm-product-details-container,
.additional-images.keen-slider > div{
  border: 1px solid #c1c1c1;
  border-radius: var(--product-box-radius);
  background-color: #fff;  
  overflow: hidden;
}

.view-productdetails  .product_tab_content{
  border-bottom-right-radius: var(--product-box-radius);
  border-bottom-left-radius: var(--product-box-radius);
  background: #fff;
}

.view-productdetails .product_tab{
  border-top-right-radius: var(--product-box-radius);
  border-top-left-radius: var(--product-box-radius);
}

.additional-images.keen-slider > div{
  margin-bottom: 1px;
}

.additional-images.keen-slider > div{
  border: 2px solid #c1c1c1;
}
.additional-images.keen-slider > div.active{
  border: 2px solid var(--main-green);
}

.view-productdetails  .vm-product-media-container{
  align-items: center;
}

.view-productdetails .vm-product-details-container{
  padding: 63px;
}


.vm-product-details-container .vm-price-value .PricesalesPrice {
  font-size: 30px !important;
  font-weight: 700;
  float: left !important;
  display: contents;
}
.manufacturer .manuModal img {
  max-height: 150px;
  max-width: 100%;
  object-fit: contain;
  width: 150px;
  object-position: left;
}
.product_tab button {
  color: inherit;
  background-color: inherit;
  float: left;
  border: none;
  outline: none;
  cursor: pointer;
  padding: 14px 16px;
  transition: 0.3s;
  font-weight: 700;
}
/* category products */
.product-price .vm-price-value, .vm-prices-info {
  display: flex;
  justify-content: space-between;
  font-size: 15px;
  margin-bottom: 0;
  align-items: end;
  font-size: 1.3rem !important;
}
.vm-subcategory-title {
  font-size: 1.1rem !important;
  color: #333;
  font-weight: 600 !important;
}


/* custom filters */

.cf4all_button{
  margin: 0 !important;
}

.cf4all_wrapper input:disabled + .cf4all_button::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: repeating-linear-gradient(
        -45deg,
        transparent 0%,
        transparent 45%,
        red 45%,
        red 55%,
        transparent 55%,
        transparent 100%
    );
    opacity: 0.6; /* Make it semi-transparent */
    pointer-events: none; /* Prevent interference with interactions */
}


/* checkout */

.proopc-bt-address,
.proopc-register-login,
.proopc-st-address,
.proopc-shipments,
.proopc-payments,
.proopc-coupon,
.proopc-confirm-order{
  border-radius: var(--box-radius);
  overflow: hidden;
}

/* HEADER */

@media (width >= 1400px) {
  .header-line1-inner,
  .footer-main {
    max-width: 1320px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* LOGO  */
.header .logo{
  margin-top: -10px;  
}

/* FOOTER */
.footer{
  position: relative;
  background-image: url('/images/headers/footer.webp') !important;
  background-repeat: no-repeat !important;
  background-size: 100% auto !important;
  background-position: bottom !important;
  margin-top:0;
}

.footer-main{
  align-items: flex-start !important;
  padding-top: 200px !important;
  flex-wrap: wrap;
}


.footer-company .custom{
  position:unset;
}

.footer-company .custom img{
  position: absolute;
  top: 0;
}


.contact-section {
  margin-top:50px;
  background-color: #ffa7b7;
  color: white;
  padding: 20px 40px;
  border-radius: 10px;
}
.contact-item {
  text-align: center;
  margin-bottom: 15px;
}
.contact-item i {
  font-size: 30px;
  color: #d9597f;
  margin-bottom: 8px;
}
.contact-item h6 {
  font-weight: bold;
  margin: 0;
}
.contact-item p {
  margin: 0;
  font-size: 14px;
}


/* MENU */

/* home image */
.header .mod-elmenu.el-hor-megamenu .el-main-list .site-menu-101 a::before {
  --size: 19px;
  background-image: url("data:image/svg+xml,%3Csvg id='Layer_1' enable-background='new 0 0 100 100' height='32' viewBox='0 0 100 100' width='32' xmlns='http://www.w3.org/2000/svg'%3E%3Cg%3E%3Cpath d='m83.5 100h-67c-9 0-16.5-7.6-16.5-16.7v-36.5c0-4.6 2-9.1 5.5-12.2l33.5-30.4c6.5-5.6 15.5-5.6 22 0l33.5 30.4c3.5 3 5.5 7.6 5.5 12.2v36.5c-.5 9.6-7.5 16.7-16.5 16.7zm-33.5-89.7c-1.5 0-3 .5-4.5 1.5l-33.5 30.4c-1.5 1-2 3-2 5.1v36.5c0 3.5 3 6.6 6.5 6.6h66.5c3.5 0 6.5-3 6.5-6.6v-36.5c0-2-1-3.5-2-5.1l-33.5-30.4c-1-1-2.5-1.5-4-1.5z'/%3E%3C/g%3E%3C/svg%3E");
  content: "";
  position: absolute;
  width: var(--size);
  height: var(--size);
  background-size: var(--size) var(--size);
  background-repeat: no-repeat;
  filter: invert(1);
}
.header .mod-elmenu.el-hor-megamenu .el-main-list .site-menu-101 a{
  position: relative;
}
.header .mod-elmenu.el-hor-megamenu .el-main-list .site-menu-101 a > div{
  padding-left: 32px;
}

/* inner list */
.header .mod-elmenu.el-hor-megamenu .el-main-list .depth-ul-1-wrapper.list-inner-wrapper {
  margin-top:10px;
}

.mod-elmenu.el-hor-megamenu .el-main-list .list-item.parent.depth-li-0 > .list-inner-wrapper > .list-inner{
  border-radius: 0 0 15px 15px;
}

/* hover animation */
.mod-elmenu.el-hor-megamenu .el-main-list .list-item.parent.depth-li-0 > .list-inner-wrapper > .list-inner{
    opacity: 0;
  transform: perspective(1000px) translateY(-20px) scale(0.9); /* Start slightly above and scaled down */
  transform-origin: top;
  transition: all 0.2s ease-out; /* Smooth animation */
}
.mod-elmenu.el-hor-megamenu .el-main-list .list-item.parent.depth-li-0:hover > .list-inner-wrapper > .list-inner,
.mod-elmenu.el-hor-megamenu .el-main-list .list-item.parent.depth-li-0.el-hovered > .list-inner-wrapper > .list-inner {
  opacity: 1;
  transform: perspective(1000px) translateY(0) scale(1)

}

/* SEARCH BAR */
.el-search-outer input.search-query{
  width: 720px;
  max-width: 100%;
  height: 50px;
  padding-left: 30px;
  border-radius: 51px;
  color: black;
  border: 3px solid #d9597f;
  outline: none;
  background-color: transparent;
}


/* BUTTON STYLE */

.btn{
/*  color: white !important;*/
/*  background-color: #333 !important;*/

  /*color: white !important;
  background-color: var(--main-blue) !important;*/
  border-radius: var(--btn-radius);
  padding: 7px 15px;
  border:unset !important;
}

.btn .icon-chevron-right{display: none;}


.btn:hover{
/* background-color: #555 !important;*/
/*  border-radius: var(--btn-radius);*/
}

.btn.black,
.btn.btn-secondary{
  color: white !important;
  background-color: #333 !important;
}

.btn.black:hover,
.btn.btn-secondary:hover{
  background-color: #555 !important;
  border-radius: var(--btn-radius);
}


/* TABS MODULE */

.tab-container .tab{gap:10px;margin:15px 0;}

.tab button {
  border-radius: var(--btn-radius);
  padding: 5px 10px;
  font-size: 1.2rem;
}

.tab button.active{
    color: white;
    background-color: var(--main-purple);
}

/* styled header */
.styled-header,.styled-header span{
  font-weight: 550;
  font-size: 1.375rem; 
}

.styled-header.colored,.styled-header.colored span{
  font-size: 1.8rem;
  background-image: linear-gradient(to right, var(--main-purple) 35%, #00ffc5);
  -webkit-background-clip: text;
  color: transparent;
}

.styled-header.colored-alt{
  background-image: linear-gradient(to right, #553c9a 35%, red);
}

.styled-header.colored-alt-2{
  background-image: linear-gradient(to right, #ebba79 15%, #333);
/*  background-image: linear-gradient(to right, purple 15%, #333);*/
}

/* MANUFACTURER MODULE */

.vmgroup .vmmanufacturer{
  filter: grayscale(85%);
  transition: filter 0.2s linear;
}

.vmgroup .vmmanufacturer:hover{
  filter: grayscale(0%);
}

/* SLIDER */

.arrow {
  width: 40px;
  height: 40px;
  background: #79cfbb;
  border-radius: 50%;
  padding: 10px;
}

.arrow--right-img,.arrow--left-img{
  filter: brightness(0) invert(1);
}



/* 7. party-balloons */
.party-balloons h2 {
    font-size: 50px;
    font-weight: bold;
    padding-bottom: 10px;
}
.party-balloons p {
    color: #ff3394;
    font-weight: 500;
    width: 90%;
    padding-bottom: 26px;
}
.party-balloons ul{
  padding: 0;
  margin: 0;
}

.party-balloons ul li {
    font-size: 18px;
    color: #666666;
    margin-bottom: 10px;
    display: block;
}
.party-balloons ul li img {
    padding-right: 15px;
}
.party-balloon-img img {
    border-radius: 50%;
    position: relative;
    z-index: 1;
}
.party-balloon-img {
    position: relative;
    text-align: end;
    margin-bottom: 43px;
}
img.p-balloon {
    position: absolute;
    bottom: -20px;
    left: -112px;
    z-index: 2;
}
.b-shap {
    left: -40px;
    position: absolute;
    width: 570px;
    height: 570px;
    border-radius: 50%;
    background-color: #eae9ea;
    top: 2%;
    z-index: 0;
}
.b-shap:before {
    content: "";
    position: absolute;
    width: 90px;
    height: 30px;
    background-color: #eae9ea;
    bottom: -3%;
    z-index: 0;
    left: 233px;
}
/* 8. call-us */
.call-us {
  background-color: #672b83;
    display: flex;
    border-radius: 15px;
    align-items: center;
    padding: 50px;
}
.call-us img {
    width: 130px;
    margin-right: 40px;
}
.call-us span {
    color: white;
    display: block;
}
.call-us a {
    color: #f6ff00;
    font-size: 34px;
}
.call-us p {
    color: white;
    width: 90%;
    line-height: 26px;
    padding-bottom: 0;
}
.call-us {
    display: flex;
    border-radius: 15px;
    align-items: center;
    padding: 40px;
    width: 80%;
    margin-top: 40px;
}




.home-row-contact,
.manufacturers-slider{
  margin:50px 0 !important;
}