:root {
  --product-light-gray: #f6f6f6;
}

.focus-outline:focus {
  outline-width: 2px;
  outline-color: var(--wp--preset--color--custom-primary-red);
}

.focus-outline:focus-visible {
  outline-width: 2px;
  outline-color: var(--wp--preset--color--custom-primary-red);
}

.focus-outline-none:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.focus-outline-none:focus-visible {
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.text-base {
  font-size: 15px;
}

.font-light {
  font-weight: 300;
}

.rounded-sm {
  border-radius: 4px;
}

header::before {
  top: 100px;
}

header .mega-menu {
  z-index: 160;
}

@media (min-width: 1024px) {
  header .mega-menu {
    z-index: 120;
  }

  header.mega-menu-visible::before {
    z-index: 10;
  }
}

header.mega-menu-visible .wp-block-site-logo {
  z-index: 150;
}

.product-template-default.single-product header {
  border-bottom-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(208 208 208 / var(--tw-border-opacity));
  background-color: transparent;
  background-image: none;
}

.flowbite-modal {
  z-index: 250;
}

.single-product .wp-block-group {
  h1, .h1 {
    font-size: 32px;
  }
  h2, .h2 {
    font-size: 28px;
  }
  h2, .h2 {
    font-weight: 300;
  }
  h2, .h2 {
    letter-spacing: 2.8px;
  }
  h2, .h2 {
    font-weight: 300;
  }
  h3, .h3 {
    font-weight: 300;
  }
  h3, .h3 {
    font-weight: 300;
  }
  h5, .h5 {
    font-size: 1.25rem;
  }
  .text-large {
    font-size: 2rem;
  }
  .text-normal {
    font-size: 18px;
  }
  .text-normal {
    font-size: 15px;
  }
  p, .p,
    ul:not(.ignore-padding) li, ol:not(.ignore-padding) li {
    font-size: 18px;
  }
  p, .p,
    ul:not(.ignore-padding) li, ol:not(.ignore-padding) li {
    line-height: 160%;
  }
  p, .p,
    ul:not(.ignore-padding) li, ol:not(.ignore-padding) li {
    font-size: 15px;
  }
  .button-primary {
    display: inline-flex;
  }
  .button-primary {
    width: auto;
  }
  .button-primary {
    align-items: center;
  }
  .button-primary {
    justify-content: center;
  }
  .button-primary {
    border-radius: 0.375rem;
  }
  .button-primary {
    border-color: var(--wp--preset--color--custom-primary-red);
  }
  .button-primary {
    background-color: var(--wp--preset--color--custom-primary-red);
  }
  .button-primary {
    padding-top: 14px;
    padding-bottom: 14px;
  }
  .button-primary {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .button-primary {
    font-size: 18px;
  }
  .button-primary {
    font-weight: 700;
  }
  .button-primary {
    line-height: 132%;
  }
  .button-primary {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
  }
  .button-primary {
    font-size: 15px;
  }
  .button-primary:hover {
    --tw-border-opacity: 1 !important;
    border-color: rgb(189 0 30 / var(--tw-border-opacity)) !important;
  }
  .button-primary:hover {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity)) !important;
  }
  .button-primary:hover {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(189 0 30 / var(--tw-bg-opacity)) !important;
  }
  .button-primary:hover {
    text-decoration-line: none;
  }
  .button-primary:focus {
    background-color: var(--wp--preset--color--custom-primary-red) !important;
  }
  .button-primary:focus {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(189 0 30 / var(--tw-bg-opacity)) !important;
  }
  .button-primary:focus-visible {
    --tw-border-opacity: 1 !important;
    border-color: rgb(189 0 30 / var(--tw-border-opacity)) !important;
  }
  .button-primary:focus-visible {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(189 0 30 / var(--tw-bg-opacity)) !important;
  }
  .button-secondary {
    display: inline-flex;
  }
  .button-secondary {
    width: auto;
  }
  .button-secondary {
    align-items: center;
  }
  .button-secondary {
    justify-content: center;
  }
  .button-secondary {
    border-radius: 0.375rem;
  }
  .button-secondary {
    border-width: 1px;
  }
  .button-secondary {
    --tw-border-opacity: 1;
    border-color: rgb(175 175 175 / var(--tw-border-opacity));
  }
  .button-secondary {
    padding-top: 14px;
    padding-bottom: 14px;
  }
  .button-secondary {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .button-secondary {
    font-size: 18px;
  }
  .button-secondary {
    font-weight: 700;
  }
  .button-secondary {
    font-size: 15px;
  }
  .button-secondary:hover {
    border-color: var(--wp--preset--color--custom-primary-red) !important;
  }
  .button-secondary:hover {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity)) !important;
  }
  .button-secondary:hover {
    --tw-text-opacity: 1 !important;
    color: rgb(189 0 30 / var(--tw-text-opacity)) !important;
  }
  .button-secondary:hover {
    text-decoration-line: none;
  }
  .button-secondary:focus {
    border-color: var(--wp--preset--color--custom-primary-red) !important;
  }
  .button-secondary:focus {
    --tw-text-opacity: 1 !important;
    color: rgb(189 0 30 / var(--tw-text-opacity)) !important;
  }
  .button-secondary:focus-visible {
    border-color: var(--wp--preset--color--custom-primary-red) !important;
  }
  .button-secondary:focus-visible {
    --tw-text-opacity: 1 !important;
    color: rgb(189 0 30 / var(--tw-text-opacity)) !important;
  }
  .button-secondary-light {
    display: inline-flex;
  }
  .button-secondary-light {
    width: auto;
  }
  .button-secondary-light {
    align-items: center;
  }
  .button-secondary-light {
    justify-content: center;
  }
  .button-secondary-light {
    border-radius: 0.375rem;
  }
  .button-secondary-light {
    border-width: 1px;
  }
  .button-secondary-light {
    --tw-border-opacity: 1;
    border-color: rgb(175 175 175 / var(--tw-border-opacity));
  }
  .button-secondary-light {
    padding-top: 14px;
    padding-bottom: 14px;
  }
  .button-secondary-light {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .button-secondary-light {
    font-size: 18px;
  }
  .button-secondary-light {
    color: var(--wp--preset--color--custom-black);
  }
  .button-secondary-light {
    font-size: 15px;
  }
  .button-secondary-light:hover {
    border-color: var(--wp--preset--color--custom-primary-red) !important;
  }
  .button-secondary-light:hover {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity)) !important;
  }
  .button-secondary-light:hover {
    color: var(--wp--preset--color--custom-primary-red) !important;
  }
  .button-secondary-light:hover {
    text-decoration-line: none;
  }
  .button-secondary-light:focus {
    border-color: var(--wp--preset--color--custom-primary-red) !important;
  }
  .button-secondary-light:focus {
    color: var(--wp--preset--color--custom-primary-red) !important;
  }
  .button-secondary-light:focus-visible {
    border-color: var(--wp--preset--color--custom-primary-red) !important;
  }
  .button-secondary-light:focus-visible {
    color: var(--wp--preset--color--custom-primary-red) !important;
  }
  .button-secondary-light:hover {
    border-color: var(--wp--preset--color--custom-primary-red);
  }
  .button-secondary-light:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  }
  .button-secondary-light:hover {
    color: var(--wp--preset--color--custom-primary-red);
  }
  .button-secondary-light:focus {
    border-color: var(--wp--preset--color--custom-primary-red);
  }
  .button-secondary-light:focus {
    background-color: var(--wp--preset--color--custom-primary-red);
  }
  .button-secondary-light:focus {
    color: var(--wp--preset--color--custom-primary-red);
  }
  .button-secondary-light:focus-visible {
    border-color: var(--wp--preset--color--custom-primary-red);
  }
  .button-secondary-light:focus-visible {
    background-color: var(--wp--preset--color--custom-primary-red);
  }
  .button-secondary-light:focus-visible {
    color: var(--wp--preset--color--custom-primary-red);
  }
  .block-default-style {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
  }
  @media (min-width: 768px) {
    .block-default-style {
      margin-top: 4rem;
      margin-bottom: 4rem;
    }
  }
  @media (min-width: 1024px) {
    .block-default-style {
      margin-top: 5rem;
      margin-bottom: 5rem;
    }
  }
  div.product .block-default-style:last-of-type {
    margin-bottom: 2.5rem !important;
  }
  &.wc-blocks-footer-pattern .block-default-style {
    margin-top: 0px;
    margin-bottom: 0px;
  }
  div.product {
    margin-bottom: 2.5rem;
  }
  @media (min-width: 1024px) {
    div.product {
      margin-bottom: 5rem;
    }
  }
  div.summary {
    margin-bottom: 0px !important;
  }
  .product-light-gray {
    border-radius: 0.125rem;
  }
  .product-light-gray {
    border-radius: 4px;
  }
  .product-light-gray {
    background-color: var(--product-light-gray);
    background-blend-mode: multiply, normal;
  }
  .swiper-button-next,
    .swiper-button-prev {
    height: 46px;
  }
  .swiper-button-next,
    .swiper-button-prev {
    width: 46px;
  }
  .swiper-button-next,
    .swiper-button-prev {
    border-radius: 9999px;
  }
  .swiper-button-next,
    .swiper-button-prev {
    --tw-bg-opacity: 1;
    background-color: rgb(226 226 226 / var(--tw-bg-opacity));
  }
  .swiper-button-next,
    .swiper-button-prev {
    opacity: 0.8;
  }
  .swiper-button-next:focus,
    .swiper-button-prev:focus {
    outline-width: 2px;
  }
  .swiper-button-next:focus,
    .swiper-button-prev:focus {
    outline-color: var(--wp--preset--color--custom-primary-red);
  }
  .swiper-button-next:focus-visible,
    .swiper-button-prev:focus-visible {
    outline-width: 2px;
  }
  .swiper-button-next:focus-visible,
    .swiper-button-prev:focus-visible {
    outline-color: var(--wp--preset--color--custom-primary-red);
  }
  .swiper-button-next:after, 
    .swiper-button-prev:after {
    font-size: 30px;
  }
  .swiper-button-next:after, 
    .swiper-button-prev:after {
    color: var(--wp--preset--color--custom-black);
  }
  @media (min-width: 1024px) {
    .swiper-slide:not(.swiper-slide-fully-visible):not(.swiper-slide-active) {
      opacity: 0.5;
    }
  }
  .productCarousalSwiper .swiper-slide-visible:not(.swiper-slide-thumb-active) {
    opacity: 0.5;
  }
  .productCarousalSwiper .swiper-slide-visible:focus-within {
    opacity: 1 !important;
  }
  .productCarousalSwiper .swiper-slide-visible:hover {
    opacity: 1 !important;
  }
  .productCarousalSwiper .swiper-slide-visible:focus {
    opacity: 1 !important;
  }
  .productCarousalSwiper .swiper-slide-visible:focus-visible {
    opacity: 1 !important;
  }
  .productCarousalSwiper .swiper-slide-visible:active {
    opacity: 1 !important;
  }
  .productCarousalSwiper .swiper-slide-thumb-active img {
    border-color: var(--wp--preset--color--custom-primary-red);
  }
  .woocommerce-product-gallery .product-swiper-gallery-pagination {
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
  }
  /*
    .swiper-slide-fully-visible:last-child,
    .swiper-slide-fully-visible:last-of-type {
        @apply rounded-xl opacity-50;
    }
    */
  .swiper .swiper-button-prev {
    background-image: url('assets/icons/prev-arrow-white.svg');
    transform: rotate(0deg);
  }
  .swiper .swiper-button-next {
    background-image: url('assets/icons/next-arrow-white.svg');
  }
  .swiper .swiper-button-prev:after, 
    .swiper .swiper-button-next:after {
    background-image: none;
  }
  .swiper .swiper-button-prev svg, 
    .swiper .swiper-button-next svg {
    display: none;
  }
  .swiper-carousal .swiper-scrollbar {
    height: 0.5rem;
  }
  .default-container-right .swiper-carousal .swiper-scrollbar {
    width: calc(100% - 1.5rem);
  }
  .swiper-carousal .swiper-scrollbar-drag {
    --tw-bg-opacity: 1;
    background-color: rgb(51 51 51 / var(--tw-bg-opacity));
  }
  /*
    .swiper.swiper-half-hidden {
        @apply w-[110%] relative;
    }

    .swiper.swiper-half-hidden .swiper-button-next {
        @apply right-[10%]
    }
    */
  div.product div.images .woocommerce-product-gallery__trigger {
    height: 46px;
  }
  div.product div.images .woocommerce-product-gallery__trigger {
    width: 46px;
  }
  div.product div.images .woocommerce-product-gallery__trigger:focus {
    outline-width: 2px;
  }
  div.product div.images .woocommerce-product-gallery__trigger:focus {
    outline-color: var(--wp--preset--color--custom-primary-red);
  }
  div.product div.images .woocommerce-product-gallery__trigger:focus-visible {
    outline-width: 2px;
  }
  div.product div.images .woocommerce-product-gallery__trigger:focus-visible {
    outline-color: var(--wp--preset--color--custom-primary-red);
  }
  div.product div.images .woocommerce-product-gallery__trigger::before {
    left: 14px;
  }
  div.product div.images .woocommerce-product-gallery__trigger::before {
    top: 14px;
  }
  div.product div.images .woocommerce-product-gallery__trigger::after {
    left: 26px;
  }
  div.product div.images .woocommerce-product-gallery__trigger::after {
    top: 24px;
  }
  .woocommerce div.product div.summary .price {
    font-size: 20px;
  }
  .product_meta ul li a {
    color: var(--wp--preset--color--custom-primary-red);
  }
  .product_meta ul li a:focus {
    text-decoration-line: underline;
  }
  .product-faqs-wrapper .faq-content {
    display: grid;
  }
  .product-faqs-wrapper .faq-content {
    grid-template-rows: 0fr;
  }
  .product-faqs-wrapper .faq-content {
    overflow: hidden;
  }
  .product-faqs-wrapper .faq-content {
    opacity: 0;
  }
  .product-faqs-wrapper .faq-content {
    transition: grid-template-rows 300ms ease, opacity 200ms ease;
  }
  .product-faqs-wrapper details[open] .faq-content {
    grid-template-rows: 1fr;
  }
  .product-faqs-wrapper details[open] .faq-content {
    opacity: 1;
  }
  .compare-heading-title {
    font-size: 24px;
  }
  @media (min-width: 1024px) {
    .compare-heading-title {
      font-size: 28px;
    }
  }
  @media (min-width: 1024px) {
    .comparision-table .current-product {
      --tw-bg-opacity: 1;
      background-color: rgb(245 245 245 / var(--tw-bg-opacity));
    }
  }
  .comparision-table .separator-row {
    margin-top: 0.125rem;
  }
  .comparision-table .separator-row {
    height: 0.25rem;
  }
  @media (min-width: 768px) {
    .comparision-table .separator-row {
      display: none;
    }
  }
  .comparision-table .separator-row {
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.10);
  }
  .floating-add-to-cart {
    box-shadow: 0 -4px 20px 0 rgba(0, 0, 0, 0.08);
  }
}

.js-toggle-panel {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  visibility: hidden;
  transition:
        max-height 0.35s ease,
        opacity 0.35s ease,
        visibility 0s linear 0.35s;
}

.js-toggle-container.is-open .js-toggle-panel {
  max-height: 2000px;
  /* safe large value */
  opacity: 1;
  visibility: visible;
  transition:
        max-height 0.35s ease,
        opacity 0.35s ease,
        visibility 0s linear 0s;
}

@media (prefers-reduced-motion: reduce) {
  .js-toggle-panel {
    transition: none;
  }
}

#chat-widget-container {
  transition: transform 0.35s cubic-bezier(.4,0,.2,1);
  will-change: transform;
}