@media screen and (min-width: 960px) {
    .product--large .product__media-wrapper {
        max-width: 60%!important;
        width: 60%!important;
    }
}
@media screen and (min-width: 960px) {
    .product--large .product__info-wrapper {
        max-width: 40%!important;
        width: 40%!important;
    }
}
.main-title{
    font-family: var(--title-font);
    font-style: var(--title-font-style);
    font-weight: var(--title-font-weight, 700);
    letter-spacing: var(--title-letter-spacing);
    line-height: var(--title-line-height);
    margin-bottom: 0;
    margin-top: 0;
    word-break: break-word;
    text-transform: var(--title-text-transform);
}

/* ******************** bundle styles */
.bundle-product-wrapper .bundle-main-intro {
	padding-bottom: 5px;
}

.bundle-product-wrapper .bundle-main-intro>div {
	margin-bottom: 0;
}

.bundle-product-wrapper .bundle-main-intro .main-title {
	font-size: 26px;
	font-weight: bold;
}

.bundle-product-wrapper .bundle-main-intro .price {
	font-size: 20px;
	font-weight: bold;
}

.bundle-product-wrapper .bundle-main-intro .description {
	font-size: 14px;
	font-weight: normal;
}

.bundle-product-wrapper .bundle-content-wrapper {
	/* position: relative; */
}

.bundle-product-wrapper .bundle-content-wrapper .product-bundle-part {
	border-top: 1px solid #eee;
	padding-top: 20px;
}

.bundle-product-wrapper .bundle-content-wrapper .variants {
	padding-left: 15px;
	border-inline-start: 1px solid rgba(0, 0, 0, 0.1);
}

.bundle-product-wrapper .bundle-content-wrapper .bene-addons {
	margin-bottom: 20px;
}

.bundle-product-wrapper .bundle-content-wrapper .product__block--lines {
	border-top: 0;
	border-bottom: 0;
}

.bundle-product-wrapper .bundle-content-wrapper .product__block--lines .selector-wrapper .radio__fieldset {
	border-bottom: 0;
}

.bundle-product-wrapper .bundle-content-wrapper .divider {
	width: 100%;
	height: 1px;
	border-top: 2px dashed #aaaaf1;
	margin: 0 0 20px 0;
}

.bundle-product-wrapper .bundle-content-wrapper .info-section {
	display: flex;
}
.bundle-product-wrapper .bundle-content-wrapper .info-section .featured-img a{
	display: inline-block;
}
.bundle-product-wrapper .bundle-content-wrapper .info-section .featured-img img{
	width: 80px;
	padding: 3px;
	border: 1px dashed #636f77;
	margin-right: 12px;
}
.bundle-product-wrapper .bundle-content-wrapper .info-section .main-intro {
	display: flex;
	flex-direction: column;
}

.bundle-product-wrapper .bundle-content-wrapper .info-section .main-intro .title {
	font-size: 13px;
	font-weight: 600;
    text-decoration: underline;
}

.bundle-product-wrapper .bundle-content-wrapper .product__option_selectors .selector-wrapper:first-child fieldset>div {
	padding-bottom: 15px;
}

.bundle-product-wrapper .bundle-content-wrapper .product__option_selectors .selector-wrapper:nth-child(n+2) fieldset>div {
	padding-top: 15px;
}

.bundle-product-wrapper .bundle-content-wrapper .view-details {
	margin-bottom: 10px;
	padding-bottom: 5px;
	font-size: 14px;
}

.bundle-product-wrapper .bundle-content-wrapper .view-details span {
	text-decoration: underline;
	cursor: pointer;
}

/* ex details */
.bundle-product-wrapper .bundle-content-wrapper .ex-details {
	position: fixed;
	width: 50%;
	max-height: 600px;
	overflow-y: auto;
	z-index: 9999;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	padding: 20px 30px;
	border: 1px solid #ccc;
	border-radius: 4px;
	display: flex;
	justify-content: center;
	background-color: #fff;
	display: none;
}

.layui-layer-content .content-wrapper {
	border: 1px solid #ccc;
	border-radius: 4px;
}

.layui-layer-content .content-wrapper .header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #ffffff;
	padding: 0 30px;
	padding-top: 20px;
}

.layui-layer-content .content-wrapper .header .layer-close {
	cursor: pointer;
}

.layui-layer-content .content-wrapper .content {
	max-height: 600px;
	overflow-y: auto;
	padding: 20px 30px;
	display: flex;
	justify-content: center;
	background-color: #fff;
}

.layui-layer-content .content-wrapper.mobile .content {
	height: 100vh;
	max-height: unset;
	flex-direction: column;
	align-items: center;
}

.bundle-product-wrapper .bundle-content-wrapper .ex-details .media,
.layui-layer-content .content-wrapper .media {
	width: 420px;
}

.layui-layer-content .content-wrapper.mobile .content .media {
	width: 100%;
}

.bundle-product-wrapper .bundle-content-wrapper .ex-details .media img,
.layui-layer-content .content-wrapper .media img {
	width: 100%;
	padding: 10px;
}

.bundle-product-wrapper .bundle-content-wrapper .ex-details .info,
.layui-layer-content .content-wrapper .info {
	flex-grow: 1;
}

.bundle-product-wrapper .bundle-content-wrapper .ex-details .info .title,
.layui-layer-content .content-wrapper .info .title {
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 10px;
}

.bundle-product-wrapper .bundle-content-wrapper .ex-details .info .split-purchase,
.layui-layer-content .content-wrapper .info .split-purchase {
	font-size: 16px;
	font-weight: 400;
	text-decoration: underline;
	margin-bottom: 10px;
}

.bundle-product-wrapper .bundle-content-wrapper .ex-details .info .specs-wrapper,
.layui-layer-content .content-wrapper .info .specs-wrapper {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.bundle-product-wrapper .bundle-content-wrapper .ex-details .info .specs-wrapper .specs-item,
.layui-layer-content .content-wrapper .info .specs-wrapper .specs-item {
	border-top: 1px solid #eee;
}

.bundle-product-wrapper .bundle-content-wrapper .ex-details .info .specs-wrapper .spec-tab,
.layui-layer-content .content-wrapper .info .specs-wrapper .spec-tab {
	display: flex;
	justify-content: space-between;
	align-items: center;
	cursor: pointer;
	padding: 15px 0;
}

.bundle-product-wrapper .bundle-content-wrapper .ex-details .info .specs-wrapper .specs-item:last-child,
.layui-layer-content .content-wrapper .info .specs-wrapper .specs-item:last-child {
	border-bottom: 1px solid #eee;
}

.bundle-product-wrapper .bundle-content-wrapper .ex-details .info .specs-wrapper .spec-tab svg,
.layui-layer-content .content-wrapper .info .specs-wrapper .spec-tab svg {
	width: 24px;
	height: 24px;
	transition: all .3s;
}

.bundle-product-wrapper .bundle-content-wrapper .ex-details .info .specs-wrapper .spec-tab svg.rotate,
.layui-layer-content .content-wrapper .info .specs-wrapper .spec-tab svg.rotate {
	transform: rotate(45deg);
}

.bundle-product-wrapper .bundle-content-wrapper .ex-details .info .specs-wrapper .spec-content,
.layui-layer-content .content-wrapper .info .specs-wrapper .spec-content {
	display: none;
	margin-bottom: 10px;
}

/* specs ===== layui-layer-content */
.bundle-product-wrapper .bundle-content-wrapper .bundle-add-set {
	display: flex;
	align-items: center;
}

.bundle-product-wrapper .bundle-content-wrapper .bundle-add-set popout-select {
	width: 20%;
	margin-right: 20px;
}

.bundle-product-wrapper .bundle-content-wrapper .bundle-add-set .add-bundle-action {
	flex-grow: 1;
}

.bundle-product-wrapper .bundle-content-wrapper .bundle-add-set .add-bundle-action button {
	width: 100%;
}


/*options */
.bundle-product-wrapper .product_option_selectors .variant_buttons input{
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    width: 0;
    height: 0;
    margin: 0;
    overflow: hidden;
    pointer-events: none;
    display: block;
}
.bundle-product-wrapper .product_option_selectors .variant_buttons label{
    cursor: pointer;
}
.bundle-product-wrapper .product_option_selectors .variant_buttons label.swatch-label{
    border: 1px solid #eee;
    border-radius: 5px;
    display: inline-block;
    width: 55px;
	height: 55px;
    padding: 1px;
    margin-right: 3px;
    margin-bottom: 4px;
}
.bundle-product-wrapper .product_option_selectors .variant_buttons label.swatch-label img{
    width: 100%!important;
}
.bundle-product-wrapper .product_option_selectors .variant_buttons label.text-label{
    border: 1px solid #eee;
    border-radius: 5px;
    display: inline-block;
    width: -moz-fit-content;
    width: fit-content;
    padding: 5px;
    min-width:35px;
    text-align: center;
    font-size: 14px;
    margin-right: 5px;
    margin-bottom: 6px;
}
.bundle-product-wrapper .product_option_selectors .variant_buttons .sw-eaction{
    display: inline-block;
	position: relative;
}
.bundle-product-wrapper .product_option_selectors .variant_buttons .sw-eaction input:disabled + label{
	cursor: not-allowed;
}
.bundle-product-wrapper .product_option_selectors .variant_buttons .sw-eaction input:disabled + label::before {
	content: "";
	position: absolute;
	left: 5.5px;
	top: 43%;
	width: calc(100% - 15px);
	border-bottom: 1px solid black;
	transform: rotate(-35deg);
}
.bundle-product-wrapper .product_option_selectors .variant_buttons .sw-eaction input:checked  +label{
    border-color: #aaaaf1;
}

.bundle-add-section .qty-selector{
	display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 0 10px 0;
}
.product-bundles-list {
  margin-top: 10px;
  padding: 8px 20px;
}
  .product-bundles-list .product-bundles-list-wrapper .top-title {
      font-size: 26px;
      font-weight: bold;
    }
  .product-bundles-list .product-bundles-list-wrapper .content-desktop {
      display: none;
      margin: 0;
      padding: 0;
    }
  .product-bundles-list .product-bundles-list-wrapper .content-desktop .bundle-item {
        position: relative;
        padding: 8px 0;
        border-top: 1px solid #eee;
        display: flex;
        justify-content: space-between;
      }
  .product-bundles-list .product-bundles-list-wrapper .content-desktop .bundle-item .name-and-price {
          text-align: left;
          padding: 20px;
          flex: 1 1 0;
        }
  .product-bundles-list .product-bundles-list-wrapper .content-desktop .bundle-item .name-and-price .title{
            font-size: 18px;
            font-weight: 700;
          }
  .product-bundles-list .product-bundles-list-wrapper .content-desktop .bundle-item .name-and-price .price{
            font-size: 16px;
            font-weight: var(--body-bold-font-weight) !important;
          }
  .product-bundles-list .product-bundles-list-wrapper .content-desktop .bundle-item .name-and-price .selected{
            font-size: 16px;
            font-weight: var(--body-bold-font-weight) !important;
          }
  .product-bundles-list .product-bundles-list-wrapper .content-desktop .bundle-item .variants {
          flex: 2 1 0;
        }
  .product-bundles-list .product-bundles-list-wrapper .content-desktop .bundle-item .variants fieldset {
            border-color: #fff;
          }
  .product-bundles-list .product-bundles-list-wrapper .content-desktop .bundle-item .variants fieldset .variant_buttons .sw-eaction {
                display: inline-block;
                margin-right: 8px;
              }
  .product-bundles-list .product-bundles-list-wrapper .content-desktop .bundle-item .variants fieldset .variant_buttons .sw-eaction label {
                  cursor: pointer;
                }
  .product-bundles-list .product-bundles-list-wrapper .content-desktop .bundle-item .variants fieldset .variant_buttons .sw-eaction .swatch-label {
                  border: 1px solid #eee;
                  border-radius: 5px;
                  display: inline-block;
                  width: -moz-fit-content;
                  width: fit-content;
                  padding: 1px;
                  margin-right: 3px;
                  margin-bottom: 4px;
                  line-height: 0;
                }
  .product-bundles-list .product-bundles-list-wrapper .content-desktop .bundle-item .variants fieldset .variant_buttons .sw-eaction .text-label {
                  border: 1px solid #eee;
                  border-radius: 5px;
                  display: inline-block;
                  width: -moz-fit-content;
                  width: fit-content;
                  padding: 5px;
                  min-width: 35px;
                  text-align: center;
                  font-size: 14px;
                  margin-right: 5px;
                  margin-bottom: 6px;
                }
  .product-bundles-list .product-bundles-list-wrapper .content-desktop .bundle-item .variants fieldset .variant_buttons .sw-eaction input {
                  position: absolute;
                  top: 0;
                  left: 0;
                  opacity: 0;
                  width: 0;
                  height: 0;
                  margin: 0;
                  overflow: hidden;
                  pointer-events: none;
                  display: block;
                }
  .product-bundles-list .product-bundles-list-wrapper .content-desktop .bundle-item .variants fieldset .variant_buttons .sw-eaction input:checked + label {
                    border: 1px solid #aaaaf1;
                  }
  .product-bundles-list .product-bundles-list-wrapper .content-desktop .bundle-item .actions {
          flex: 1 1 0;
          display: flex;
          align-items: center;
          justify-content: center;
        }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile {
      margin: 0;
      padding: 0;
    }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item {
        display: flex;
        border: 1px solid #eee;
        margin-bottom: 12px;
      }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item .name-and-price {
          padding: 12px;
          flex: 1 1 0;
        }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item .name-and-price .title {
            font-weight: bold;
            font-size: 14px;
          }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item .name-and-price .price {
            font-size: 12px;
            font-weight: bold;
          }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item .popup-actions {
          display: flex;
          padding: 12px;
          align-items: center;
        }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form {
          display: none;
          position: fixed;
          bottom: 0;
          left: 0;
          width: 100%;
          z-index: 999;
          background-color: #ffffff;
          height: 65vh;
          border-top: 2px solid #eee;
        }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .icon {
            cursor: pointer;
          }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup {
            height: 100%;
          }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .header {
              display: flex;
              justify-content: space-between;
              flex-direction: row;
              align-items: center;
            }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .header div {
                width: 33.33%;
              }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .header div:nth-child(2) {
                  text-align: center;
                  font-size: 20px;
                  font-weight: bold;
                }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .header div:nth-child(3) {
                  text-align: right;
                  padding-right: 15px;
                }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .header div:nth-child(3) svg {
                    width: 18px;
                    height: 18px;
                    vertical-align: middle;
                  }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .content {
              height: 70%;
              position: relative;
              overflow-y: auto;
            }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .content .product-information {
                display: flex;
              }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .content .product-information .title-and-price {
                  padding: 15px;
                }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .content .product-information .title-and-price .title {
                    font-size: calc(var(--body-font-size) * 1.142857);
                    font-weight: bold;
                  }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .content .product-information .title-and-price .price {
                    font-size: 14px;
                    font-weight: bold;
                    letter-spacing: 1px;
                  }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .content .variants {
                padding: 0 2px;
              }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .content .variants fieldset {
                  padding: 5px 26px;

                  border-color: #fff;
                }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .content .variants fieldset .variant_buttons .sw-eaction {
                      display: inline-block;
                      margin-right: 8px;
                    }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .content .variants fieldset .variant_buttons .sw-eaction label {
                        cursor: pointer;
                      }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .content .variants fieldset .variant_buttons .sw-eaction .swatch-label {
                        border: 1px solid #eee;
                        border-radius: 5px;
                        display: inline-block;
                        width: -moz-fit-content;
                        width: fit-content;
                        padding: 1px;
                        margin-right: 3px;
                        margin-bottom: 4px;
                        line-height: 0;
                      }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .content .variants fieldset .variant_buttons .sw-eaction .text-label {
                        border: 1px solid #eee;
                        border-radius: 5px;
                        display: inline-block;
                        width: -moz-fit-content;
                        width: fit-content;
                        padding: 5px;
                        min-width: 35px;
                        text-align: center;
                        font-size: 14px;
                        margin-right: 5px;
                        margin-bottom: 6px;
                      }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .content .variants fieldset .variant_buttons .sw-eaction input {
                        position: absolute;
                        top: 0;
                        left: 0;
                        opacity: 0;
                        width: 0;
                        height: 0;
                        margin: 0;
                        overflow: hidden;
                        pointer-events: none;
                        display: block;
                      }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .content .variants fieldset .variant_buttons .sw-eaction input:checked + label {
                          border: 1px solid #aaaaf1;
                        }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .actions{
              position: absolute;
              bottom: 0px;
              padding: 18px 25px;
              width: 100%;
            }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile .bundle-item product-bundle-popup-form .popup .actions .button{
                width: 100%;
              }

@media screen and (min-width: 1100px) {
  .product-bundles-list .product-bundles-list-wrapper .content-desktop {
    display: block;
  }
  .product-bundles-list .product-bundles-list-wrapper .content-mobile {
    display: none;
  }
}

.ph-text-customize {
  margin-bottom: 15px;
}
  .ph-text-customize .tab {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    background-color: #eee;
    border-radius: 5px;
    padding: 10px 15px;
    font-size: 14px;
    cursor: pointer;
  }
  .ph-text-customize .tab #em_apply {
      position: relative;
      top: 1px;
    }
  .ph-text-customize .tab label {
      display: flex;
      justify-content: space-between;
      align-items: center;
    }
  .ph-text-customize .tab svg {
      width: 30px;
    }
  .ph-text-customize .tab-content {
    display: none;
    padding: 10px 15px;
  }
  .ph-text-customize .tab-content .opt-spec .label {
        font-size: 14px;
        font-weight: bold;
      }
  .ph-text-customize .tab-content .opt-spec .opts-wrapper {
        position: relative;
      }
  .ph-text-customize .tab-content .opt-spec input {
        position: absolute;
        top: 0;
        left: 0;
        opacity: 0;
        width: 0;
        height: 0;
        margin: 0;
        overflow: hidden;
        pointer-events: none;
        display: block;
      }
  .ph-text-customize .tab-content .opt-spec label {
        border: 1px solid #eee;
        border-radius: 5px;
        display: inline-block;
        width: -moz-fit-content;
        width: fit-content;
        padding: 5px;
        min-width: 35px;
        text-align: center;
        font-size: 12px;
        margin-right: 5px;
        margin-bottom: 6px;
      }
  .ph-text-customize .tab-content .opt-spec input:checked + label {
        border-color: #aaaaf1;
      }
  .ph-text-customize .tab-content .opt-3 textarea {
        width: 100%;
        height: 50px;
        border-radius: 5px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        padding: 8px;
        border: 1px solid #ccc;
        resize: none;
        font-size: 12px;
        outline: none;
        scrollbar-width: none;
      }
  .ph-text-customize .tab-content .opt-3 textarea::-webkit-scrollbar {
        display: none;
      }

.color-palette-attr-box .color-palette-attr-value{
  width: 50px!important;
  height: 50px!important;
  border-radius: 5px!important;
}


/*Category list css*/
.aa-category-list{
  width: 100%;
  overflow: hidden;
}
@media screen and (min-width: 1024px) {
  .aa-category-list{
    padding: 0 30px 0 30px;
  }
}
@media screen and (min-width: 375px) {
  .aa-category-list{
    padding: 0 2px;
  }
}
.aa-category-list .category-items > li > .category-item__inner {
  height: 100%;
  background-color: #eee;
}
.aa-category-list .category-items .heading-part a{
  display: flex;
  flex-direction: column;
  width: 100%;
  position: relative;
}
.aa-category-list .category-items .heading-part a img{
  width: 100%;
  height: auto;
  border: 1px solid #eee;
  /* padding: 5px; */
  box-sizing: border-box;
}
.aa-category-list .category-items .heading-part a h4{
  display: block;
  font-size: 18px;
  background-color: #2e2e2e;
  color:white;
  padding: 10px 15px;
  text-transform: uppercase;
}

.aa-category-list .category-items ul{
  padding-top: 6px;
  list-style: none;
  padding: 0 0 30px 0;
  margin: 0;
}

.aa-category-list .category-items ul li{
  padding: 6px 15px;
  font-size: 14px;
  font-weight: bold;
}

.aa-category-list .category-items ul li > a{
  display: block;
  padding: 2px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}