#preloader {
  background-color: rgb(0 0 0/30%);
  bottom: 0;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 9999999999;
  width: 100%;
  height: 100%;
  display: block;
}

#preloader:not(:required)::before {
  content: "";
  border-radius: 50%;
  border: 2px solid #fff;
  border-top-color: #848484;
  animation: preloader 0.6s linear infinite;
  -webkit-animation: preloader 0.6s linear infinite;
}

#preloader::before {
  position: absolute;
  top: 40%;
  left: 0;
  width: 100px;
  height: 100px;
  right: 0;
  margin: 0 auto;
}

@keyframes preloader {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

@-webkit-keyframes preloader {
  from {
    -webkit-transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(360deg);
  }
}

/* end of custom preloader*/
:root {
  /* color */
  --primary: #000;
  --gray: #dadada;
  --lightgray: #f4f4f4;
  --white: #fff;
  --f8gray: #f8f8f8;

  /* font */
  --primary-font: "Montserrat";
  --font-100: 100;
  --font-200: 200;
  --font-300: 300;
  --font-400: 400;
  --font-500: 500;
  --font-600: 600;
  --font-700: 700;
  --font-800: 800;
  --font-900: 900;
  --font-bold: bold;

  /* bg color */
  --bg-color-1: #fefcf8;
  --bg-color-2: #ddd;
  --white: #fff;
  --black: #000;
  --text-1: #555;
  /* font */
  --primary-font: "Montserrat";

  /* -- shadow --- */
  --shadow-1: 0 0 8px #ddd;
  --shadow-2: 0px 0px 15px #b5b5b5;
  --shadow-3: 0px 0px 20px 0px #00000033;

  /* ---- border ---- */
  --border-light: 1px solid #d8d8d8;
  --border-light-1: 1px solid #dddddd;
  /* font-weight */
  --fw-400: 400;
  --fw-500: 500;
  --fw-600: 600;
  --fw-700: 700;
  /* radius */
  --rounded-5: 5px;
}

body {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-family: var(--primary-font);
  font-weight: normal;
  font-size: 16px;
}
a {
  text-decoration: none;
  outline: none;
  color: var(--primary);
  font-family: var(--primary-font);
}
h1,
h2,
h3,
h4,
h5,
h6,
.h0,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: var(--primary-font);
  font-weight: 500;
}
.btn {
  font-family: var(--primary-font);
}
button,
input,
optgroup,
select,
textarea {
  font-family: var(--primary-font);
  outline: none;
  box-shadow: none;
}
.btn {
  /* text-transform: uppercase;*/
  border-radius: 0 !important;
  &:focus {
    box-shadow: none;
  }
}
.btn-dark {
  background: var(--primary);
  border-radius: 0;
}

@media (min-width: 1600px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: 1600px;
  }
}

/*  start main css */
/* ------------ Header css ----------  */
:root :where(.wp-block-navigation a:where(:not(.wp-element-button)):hover) {
  text-decoration: none !important;
}
:where(.wp-site-blocks *:focus) {
  outline-width: 0 !important;
  outline-style: none !important;
}
.page-link:focus {
  color: #000 !important;
  outline: 0;
  box-shadow: none !important;
}

.pagination {
  .page-item.active {
    a.page-link {
      color: #fff;
    }
  }
}
.pagination {
  #next-page {
    a.page-link {
      background-color: #000;
      color: #fff !important;
    }
  }
}
.pagination {
  #previous-page {
    a.page-link {
      background-color: #000;
      color: #fff !important;
    }
  }
}
.pagination {
  #previous-page.disabled {
    a.page-link {
      background-color: #333;
      color: #fff;
    }
  }
}
.pagination {
  #next-page {
    a.page-link {
      &:focus {
        color: #fff;
      }
    }
  }
}
.pagination {
  #previous-page {
    a.page-link {
      &:focus {
        color: #fff;
      }
    }
  }
}

.is-layout-constrained > :where(.entry-content) .woocommerce {
  width: 100% !important;
  /* margin: 0 15px!important; */
}
.woocommerce-page .wc-block-components-button:not(.is-link) {
  height: 50px;
}
.woocommerce-uses-block-theme h2.wc-block-mini-cart__title {
  font-size: 24px;
}
.woocommerce-uses-block-theme .wc-block-components-button:not(.is-link):focus {
  box-shadow: none;
  box-shadow: none;
  outline: none;
}
.woocommerce-Addresses {
  .woocommerce-Address {
    &:nth-child(2) {
      border-left: 1px solid #ccc;
      padding-left: 30px;
    }
  }
}

.woocommerce-account {
  main {
    .woocommerce {
      max-width: 100%;
      padding: 20px 50px 50px 50px;
    }
  }
}

.woocommerce-account {
  main {
    .woocommerce-MyAccount-navigation {
      float: none;
      width: 100%;
    }
  }
}
.woocommerce-account {
  main {
    .woocommerce-MyAccount-content {
      float: none;
      width: 100%;
    }
  }
}

.woocommerce-account {
  .woocommerce-MyAccount-navigation {
    ul {
      display: flex;
      align-items: center;
    }
  }
}

.woocommerce-account {
  main {
    .woocommerce-MyAccount-navigation {
      ul {
        li {
          padding: 0;
          width: 100%;
        }
      }
    }
  }
}
.woocommerce-account {
  main {
    .woocommerce-MyAccount-navigation {
      ul {
        li {
          a {
            font-size: 14px !important;
            padding: 10px 10px 10px 35px;
            background-color: #f1f1f1;
            width: 100%;
            display: flex;
            justify-content: flex-start;
            align-items: center;
          }
        }
      }
    }
  }
}
.woocommerce-account {
  main {
    .woocommerce-MyAccount-navigation {
      ul {
        li.is-active {
          a {
            background-color: #000;
            color: #fff;
            text-decoration: none !important;
          }
        }
      }
    }
  }
}

.woocommerce-Address-title {
  h2 {
    font-size: 30px;
  }
}

.woocommerce-account {
  .woocommerce-Addresses {
    .woocommerce-Address {
      a.edit {
        float: none;
        background-color: #000;
        color: #fff;
        width: max-content;
        padding: 12px 20px;
        margin: 25px 0;
        text-transform: capitalize;
      }
    }
  }
}
.woocommerce-account {
  .woocommerce {
    .woocommerce-MyAccount-navigation {
      li {
        a {
          &:hover {
            text-decoration: none;
            color: #000;
          }
        }
      }
    }
  }
}
.woocommerce-account {
  .woocommerce {
    .woocommerce-MyAccount-navigation {
      li.is-active {
        a {
          &:hover {
            color: #fff;
          }
        }
      }
    }
  }
}
.woocommerce-account {
  .woocommerce {
    .woocommerce-MyAccount-navigation {
      li.is-active {
        a {
          color: #fff;
        }
      }
    }
  }
}

.woocommerce-MyAccount-navigation-link {
  position: relative;
}
.woocommerce-MyAccount-navigation-link {
  a {
    &:before {
      content: "";
      position: absolute;
      top: 10px;
      left: 10px;
      font-size: 15px;
      color: #000;
      font-family: "FontAwesome";
    }
  }
}

.woocommerce-MyAccount-navigation-link.is-active {
  a {
    &:before {
      color: #fff;
    }
  }
}

.woocommerce-MyAccount-navigation-link--dashboard {
  a {
    &:before {
      content: "\f0e4";
    }
  }
}
.woocommerce-MyAccount-navigation-link--orders {
  a {
    &:before {
      content: "\f07a";
    }
  }
}
.woocommerce-MyAccount-navigation-link--downloads {
  a {
    &:before {
      content: "\f0ed ";
    }
  }
}
.woocommerce-MyAccount-navigation-link--edit-address {
  a {
    &:before {
      content: "\f041";
    }
  }
}
.woocommerce-MyAccount-navigation-link--edit-account {
  a {
    &:before {
      content: "\f007";
    }
  }
}
.woocommerce-MyAccount-navigation-link--customer-logout {
  a {
    &:before {
      content: "\f08b ";
    }
  }
}
/* hover effect */
.lab-list.sp-diamondt-links {
  &:hover {
    box-shadow: rgb(134 163 193 / 55%) 0px 8px 24px;
    transition: all 0.3s linear;
  }
}

.nshp-wrap {
  .nshp-box {
    &:hover {
      box-shadow: rgb(134 163 193 / 55%) 0px 5px 10px;
      transition: all 0.3s linear;
    }
  }
}

.other-shape {
  &:hover {
    box-shadow: rgb(134 163 193 / 55%) 0px 5px 10px;
    transition: all 0.3s linear;
  }
}

.grid-card {
  .card {
    &:hover {
      box-shadow: rgb(157 184 211 / 64%) 0px 6px 10px;
      border-radius: 10px;
      overflow: hidden;
      border-color: #92afcfb3;
      transition: all 0.3s linear;
    }
  }
}

header.wp-block-template-part {
  background-color: #f1f1f1;
  padding: 10px !important;
  box-shadow: 0 0 2px #8f8686;
}
.wp-block-template-part .wp-block-group.wp-block-group-is-layout-flex {
  padding: 0 !important;
}
.wp-block-template-part .has-global-padding {
  padding: 0;
}
.wp-block-template-part .wp-block-site-logo {
  box-sizing: border-box;
  line-height: 0;
  width: 80px;
}

/* ----------------- step-wiz-wrapper ------------------- */
.wrapper {
  margin: 0;
}
.step-wiz-wrapper {
  padding: 50px 0 50px 0;
}
/* .sp-diamond-tabs {
  padding-top: 50px;
} */

.step-wizard {
  height: 60px;
}
.step-wizard {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.step-wizard .step-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 33.33%;
  position: relative;
  height: 100%;
  border: 1px solid var(--gray);

  &::before,
  &::after {
    /* left: 100%; */
    left: 100%;
    top: 50%;
    border: solid transparent;
    border-top-width: medium;
    border-top-color: transparent;
    border-right-width: medium;
    border-right-color: transparent;
    border-bottom-width: medium;
    border-bottom-color: transparent;
    border-left-width: medium;
    border-left-color: transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    z-index: 9;
  }
  &:not(:last-of-type)::after {
    border-width: 30px;
    margin-top: -30px;
    border-color: transparent;
    border-left-color: transparent;
    border-left-color: #fff;
  }
  &:not(:last-of-type)::before {
    border-color: transparent;
    border-left-color: transparent;
    border-left-color: #c1c1c1;
    border-width: 18px;
    margin-top: -18px;
    border-width: 31px;
    margin-top: -31px;
  }

  &:last-child::before,
  &:last-child::after {
    display: none;
  }
}
.step-box.active {
  background: var(--primary);
  border-color: var(--primary);
  &:not(:last-of-type)::after {
    border-left-color: var(--primary);
  }
  .step-num {
    border-color: var(--white);
    color: var(--white);
  }
  .step-txt {
    color: var(--white);
  }
  .step-img svg {
    fill: var(--white);
  }
}
.step-box {
  a {
    &:hover {
      color: #000;
    }
  }
}
.step-box.wiz-1 {
  border-right: none;
}
.step-box.wiz-2 {
  border-right: none;
  border-left: none;
}
.step-box.wiz-3 {
  border-left: none;
}
.step-txt {
  font-size: 20px;
  font-weight: 500;
}
.step-num {
  height: 40px;
  width: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  border-radius: 100%;
  font-weight: bold;
  border: 2px solid var(--gray);
  position: relative;
  left: 15px;
}
.step-box.wiz-2,
.step-box.wiz-3 {
  padding-left: 30px;
}
.step-box.wiz-3 .step-img {
  padding-right: 20px;
}

/* ----------------- step-wiz-wrapper ------------------- */
.sp-diamondt-links {
  min-height: 60px;
  border-radius: 0;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 7px;
  max-width: 400px;
  width: 100%;
}

.sp-diamondt-links a {
  padding: 0 15px;
  font-size: 16px;
  font-weight: 500;
  width: 100%;
  height: 50px;
  border-radius: 0;
  color: var(--primary);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;

  svg {
    fill: var(--primary);
  }
}
.sp-diamondt-links a.active {
  svg {
    fill: var(--white);
  }
}

.sp-diamondt-links a img {
  height: 30px;
  position: relative;
  top: -3px;
  padding-right: 7px;
}
.sp-diamondt-links a.active {
  color: var(--white);
  background: var(--primary);
}
.sp-diamondt-links a svg {
  height: 30px;
  display: inline-block;
}
.sp-diamondt-links {
  background: var(--lightgray);
}
/* ----------------- sp-diamond-tabs ------------------- */
.nshp-heading-wrap.only-color {
  display: flex;
  justify-content: start;
  align-items: center;
  gap: 20px;

  .whfancy-button {
    display: flex;
    justify-content: center;
    align-items: center;

    a {
      color: var(--primary);
      font-size: 12px;
      font-weight: 600;
      background: #f4f4f4;
      display: inline-block;
      padding: 5px 10px;
    }
    a.active {
      background: var(--primary);
      color: var(--white);
    }
  }
}
.sp-diamond-filter {
  padding: 30px 0;
}
.sp-setting-filter {
  padding: 30px 0 0;
}
.nshp-heading-wrap.only-shape {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.nshp-heading-wrap {
  margin-bottom: 15px;

  .nshp-heading {
    font-size: 18px;
    font-weight: 500;
    font-family: var(--primary-font);
  }
}

.other-shape {
  position: relative;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  line-height: 1.5;
  width: max-content;
  margin: 10px 0 10px auto;

  input {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    opacity: 0;
    z-index: 9;
    cursor: pointer;
  }

  input[type="checkbox"]:checked + .other-shapeimg {
    border-color: #000;
  }
}

.other-shapeimg {
  background-color: #f8f8f8;
  padding: 10px 25px;
  border: 1px solid transparent;
}

.nshp-wrap {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
  position: relative;

  .nshp-box {
    display: flex;
    text-align: center;
    cursor: pointer;
    position: relative;
    flex-direction: column;

    input {
      position: absolute;
      left: 0;
      right: 0;
      top: 0;
      bottom: 0;
      height: 100%;
      width: 100%;
      z-index: 99;
      display: inline-block;
      opacity: 0;
      cursor: pointer;

      &:checked ~ .img-bx {
        background: transparent;
        border: 1px solid var(--primary);
      }
    }

    .img-bx {
      width: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
      gap: 7px;
      min-height: 70px;
      background: var(--f8gray);
      border: 1px solid transparent;

      img {
        width: auto;
        max-width: 100%;
        height: 30px;
      }
      .shape-title {
        font-size: 13px;
      }
    }
  }
}
.nshp-wrap.setting-nshp-wrap {
  grid-template-columns: repeat(10, 1fr);
}
.nshp-wrap.metal-nshp-wrap {
  grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
}
/* custom css for range slider */
.irs--round .irs-grid-pol {
  background-color: transparent;
}
.irs--round .irs-bar {
  top: 36px;
  height: 6px;
  background-color: var(--primary);
  cursor: pointer;
  z-index: 2;
}
.irs--round .irs-grid-text {
  color: var(--primary);
  font-size: 13px;
}
.irs--round .irs-handle {
  top: 26px;
  width: 24px;
  height: 24px;
  border: 4px solid var(--white);
  background-color: var(--primary);
  border-radius: 24px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
  cursor: pointer;
  z-index: 3;
}
.irs--round .irs-handle.state_hover,
.irs--round .irs-handle:hover {
  background-color: var(--primary);
}
.irs--round .irs-from,
.irs--round .irs-to,
.irs--round .irs-single {
  font-size: 14px;
  line-height: 1;
  text-shadow: none;
  padding: 3px 5px;
  background-color: var(--primary);
  color: var(--white);
  border-radius: 4px;
}

.irs--round .irs-from::before,
.irs--round .irs-to::before,
.irs--round .irs-single::before {
  position: absolute;
  display: block;
  content: "";
  bottom: -6px;
  left: 50%;
  width: 0;
  height: 0;
  margin-left: -3px;
  overflow: hidden;
  border: 3px solid transparent;
  border-top-color: var(--primary);
  display: none;
}
.irs--round .irs-from,
.irs--round .irs-to,
.irs--round .irs-single {
  font-size: 13px;
  line-height: 1;
  text-shadow: none;
  padding: 3px 5px;
  background-color: var(--primary);
  color: var(--white);
  border-radius: 0;
}

.irs--round .irs-line {
  top: 36px;
  height: 45px;
  background-color: transparent;
  border-radius: 4px;
  z-index: 1;
  &::after {
    content: "";
    position: absolute;
    top: 0;
    height: 6px;
    width: 100%;
    background: #dee4ec;
    border-radius: 6px;
    cursor: pointer;
  }
}
.irs-grid-text {
  top: 100%;
}
.filt-wrapmbx {
  margin: 0 0 30px;
}
.range_inputs {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 10px;
  font-size: 13px;
  font-weight: 500;
  input {
    max-width: 100px;
    height: 26px;
    border: 1px solid #bdbdbd;
    padding: 0 10px;
  }
  .range_ingroup {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 99;
    span {
      background: #bdbdbd;
      height: 26px;
      padding: 0 7px;
      display: flex;
      justify-content: center;
      align-items: center;
      border: 1px solid #bdbdbd;
      position: relative;
      right: -5px;
    }
  }
}
.accordion.advance-accordion {
  background: transparent;
  color: var(--primary);
  --bs-accordion-active-color: var(--primary);
  --bs-accordion-btn-focus-border-color: #fff;
  --bs-accordion-active-bg: #fff;

  .accordion-item {
    border: 0;
    .accordion-header {
      text-align: center;
      margin: 0 auto;
      width: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      position: relative;

      .accordion-button {
        box-shadow: none;
        position: relative;
        display: inline-block;
        width: auto;
        background: var(--white);
        z-index: 1;
        padding-right: 50px;
        &::after {
          content: "";
          background-image: var(--bs-accordion-btn-icon);
          right: 20px;
          position: absolute;
        }
      }
      &::after {
        content: "";
        height: 1px;
        position: absolute;
        top: 50%;
        width: 100%;
        z-index: 0;
        background: radial-gradient(ellipse at center, #000 0%, #fff 100%);
      }
    }
  }
}
.adv-button {
  span {
    padding-left: 5px;
    font-size: 18px;
  }
  .minus {
    display: none;
  }
}
.adv-button.adv-btn-show {
  .minus {
    display: inline-flex;
  }
  .plus {
    display: none;
  }
}
/* custom css for range slider */
.lab-list.sp-diamondt-links {
  margin: 0 auto;
}
.lab-list {
  display: flex;
  align-items: center;
  overflow: hidden;
  list-style: none;
  position: relative;
  margin: 0;
  justify-content: center;
  gap: 15px;

  .lab-box {
    display: inline-block;
    text-align: center;
    position: relative;
    min-width: 50px;
    min-width: auto;
    white-space: nowrap;
    width: 100%;

    input {
      position: absolute;
      left: 0;
      right: 0;
      top: 0;
      bottom: 0;
      height: 100%;
      width: 100%;
      z-index: 1;
      display: inline-block;
      opacity: 0;
      cursor: pointer;
    }

    .filt-value-bx {
      padding: 10px 30px;
      border-radius: 0;
      border: 1px solid #000;
      font-size: 16px;
      font-weight: 500;
      width: 100%;
    }
    input:checked + .filt-value-bx {
      background: var(--primary);
      /* border-color: var(--primary); */
      color: var(--white);
      svg {
        fill: #fff;
      }
    }
  }
}
.sp-diamond-tabs {
  .lab-list.sp-diamondt-links {
    .lab-box {
      .filt-value-bx {
        border: none;
      }
    }
  }
}
.filt-wrapmbx {
  .lab-list {
    justify-content: flex-start;
    gap: 5px;
  }
}
.filt-wrapmbx {
  .lab-list {
    .lab-box {
      .filt-value-bx {
        padding: 10px 20px;
        font-size: 12px;
      }
    }
  }
}
.lab-list {
  .lab-box {
    .filt-value-bx {
      svg {
        margin: 0 5px 0 0;
      }
    }
  }
}

.search-box {
  position: relative;
  word-wrap: normal;
  display: flex;
  align-items: center;
  font-size: 14px;
  font-weight: 500;

  img {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translate(0, -50%);
  }
  input {
    min-width: 350px;
    height: 40px;
    padding: 0 15px 0 40px;
  }

  .btn-dark {
    height: 40px;
    padding: 0 30px;
    font-size: 16px;
    font-weight: 500;
  }
}

/*  filter baar */
.woocommerce-uses-block-theme
  .woocommerce
  .woocommerce-form-login
  .woocommerce-form-login__rememberme {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.woocommerce-uses-block-theme
  .woocommerce
  .woocommerce-form-login
  .woocommerce-form-login__rememberme
  span {
  margin: 0 0 0 10px;
}

.woocommerce-cart.woocommerce-page {
  h1 {
    text-align: center;
    padding: 30px 0;
  }
}

.sortings-bx {
  position: relative;
  &:after {
    content: "\f107";
    position: absolute;
    top: -5px;
    right: 5px;
    width: 20px;
    height: 20px;
    font-size: 25px;
    font-family: "FontAwesome";
  }
}
#sortings {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.sorting-filter {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 60px;
  background: #f4f4f4;
  margin: 30px 0;
  padding: 0 20px;

  .tstone-bx {
    font-size: 20px;
    font-weight: 600;
    text-align: left;
    color: #7c7c7c;
  }

  .reset-bx {
    font-size: 14px;
    font-weight: 600;
    text-align: left;
    color: var(--primary);
    display: flex;
    align-items: center;
    gap: 3px;
    border-bottom: 1px solid var(--primary);
    cursor: pointer;
  }

  .view-bx {
    display: flex;
    align-items: center;
    gap: 60px;
    position: relative;

    .view-opt {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 15px;
      font-size: 18px;
      font-weight: 500;
      color: var(--primary);

      .sort-icons {
        display: flex;
        align-items: center;
        gap: 7px;
        position: relative;
        top: 1px;
        cursor: pointer;

        span {
          position: relative;
          top: -2px;
          color: #bfbfbf;
        }
        i {
          color: #bfbfbf;
        }
        i.active {
          color: var(--primary);
        }
      }
    }
    .sortings-bx {
      display: flex;
      flex-direction: column;
      position: relative;

      span {
        font-weight: 600;
        position: absolute;
        left: 4px;
        top: -3px;
        font-size: 16px;
      }
      select {
        border: none;
        background: transparent;
        outline: none;
        font-size: 16px;
        color: #282828;
        padding: 20px 0 0 0;
        cursor: pointer;
        position: relative;
        height: 40px;
      }
      &::before {
        content: "";
        height: 40px;
        width: 2px;
        background: rgb(0, 0, 0);
        background: radial-gradient(
          circle,
          rgba(0, 0, 0, 1) 0%,
          rgba(255, 255, 255, 0) 100%
        );
        position: absolute;
        left: -30px;
      }
    }
  }
}

.sorting-filter {
  & .view-bx.setting-view-bx {
    & .sortings-bx {
      &::before {
        all: inherit;
      }
    }
  }
}
.color-mobfiltwrapper .whfancy-button {
  margin: 0 auto;
}
.nshp-heading-wrap.only-fci {
  text-align: left;
}
/*  filter baar */

/*  start mobile filter */
.mobile-filter {
  padding: 20px 0;
  .filtermob-button {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    position: relative;
    a {
      font-size: 14px;
      font-weight: 500;
      text-align: center;
      background: var(--white);
      color: var(--primary);
      /* border: 1px solid var(--f8gray); */
      border: 1px solid var(--primary);
      overflow: hidden;
      transition: all 0.3s ease-in-out;
      -webkit-transition: all 0.3s ease-in-out;
      -moz-transition: all 0.3s ease-in-out;
      -o-transition: all 0.3s ease-in-out;
      padding: 0;
      display: flex;
      justify-content: center;
      align-items: center;
    }
  }
}
.filtermob-button.settingft-mob {
  grid-template-columns: repeat(2, 1fr);
}
.filtermob-data .offcanvas-header {
  font-size: 16px;
  font-weight: 600;
  padding: 10px var(--bs-offcanvas-padding-x);
}
.mobfilter-heading {
  padding: 0 var(--bs-offcanvas-padding-x);
  text-align: center;
  .offcanvas-title {
    font-size: 20px;
    font-weight: 600;
    color: var(--primary);
  }
}
.filtermob-data {
  & .offcanvas.offcanvas-bottom {
    --bs-offcanvas-height: auto;
  }
  & .nshp-wrap {
    grid-template-columns: repeat(4, 1fr);
  }
  .mobfilter-view {
    font-size: 16px;
    font-weight: 500;
    min-height: 50px;
  }
}
.filt-wrapmbx.mobile-filt-wrapmbx {
  margin: 0 0 20px;
}
/*  end mobile filter */

/*  start tarun */
/*  diamond list */
.diamond-list-table {
  display: flex;
  flex-direction: column;
  width: 100%;

  & .table-header {
    display: flex;
    background: #dedede;
    font-size: 16px;
    font-weight: 500;

    & div {
      flex: 1;
      position: relative;
      padding: 10px;

      &:not(:first-child) {
        text-align: center;
      }

      &:not(:last-child)::after {
        content: "";
        position: absolute;
        top: 50%;
        height: 23px;
        width: 1px;
        right: 0;
        background-color: rgba(0, 0, 0, 0.1);
        transform: translateY(-50%);
      }
    }
  }

  & .table-row {
    display: flex;
    text-decoration: none;
    color: inherit;

    & div {
      flex: 1;
      font-size: 15px;
      padding: 10px;

      &:not(:first-child) {
        text-align: center;
      }
    }

    &:hover {
      background-color: #494949 !important;
      color: white !important;
    }

    &:nth-child(odd) {
      background-color: rgba(222, 222, 222, 0.2);
    }
  }
}

.single-product {
  main {
    padding: 0 15px;
  }

  .wp-block-woocommerce-product-image-gallery,
  .woocommerce-product-image-gallery {
    margin: auto;
  }
}

/*  end diamond list */
/* commone slider dots css */
.slick-dots li {
  width: 13px !important;
  height: 2px !important;
  overflow: hidden;

  &.slick-active button:before {
    opacity: 1 !important;
    background-color: var(--primary) !important;
  }

  & button {
    width: 13px !important;
    height: 2px !important;
    padding: 0 !important;

    &::before {
      width: 13px !important;
      height: 2px !important;
      background-color: var(--primary) !important;
      opacity: 0.25;
    }
  }
}

.slick-dotted.slick-slider {
  margin-bottom: 0 !important;
}
/*  start grid view */
.grid-card {
  margin-bottom: 28px;
  a {
    color: var(--primary);
  }

  & .card {
    border-radius: 0;
    border: 0;
    background: transparent;
    border: var(--border-light-1);

    & .btn-heart {
      width: 30px;
      height: 30px;
      top: 16px;
      right: 16px;
      z-index: 9;

      & svg {
        width: 15px;
      }
    }

    & .card-body {
      padding: 15px;

      & .text {
        margin-bottom: 20px;

        & h5 {
          font-size: 16px !important;
          font-weight: var(--fw-600);
          display: -webkit-box;
          -webkit-line-clamp: 2;
          -webkit-box-orient: vertical;
          overflow: hidden;
          text-overflow: inherit;
          white-space: normal;
        }

        & p {
          font-size: 16px;
          font-weight: var(--fw-500);
          width: calc(100% - 70%);
          text-align: end;
          white-space: nowrap;
        }
      }

      & .details {
        margin-bottom: 20px;

        & p {
          font-size: 12px;
          line-height: 12px;
          font-weight: var(--fw-600);
          margin-bottom: 0px;
        }

        & span {
          font-size: 10px;
        }
      }

      & .btn-group {
        gap: 15px;

        & .btn {
          padding-right: 6px;
          padding-left: 6px;

          & svg {
            height: 12px;
          }
        }
      }
    }
  }
}
.details {
  > .flex-auto {
    &:last-child {
      border-right: none !important;
    }
  }
}
.settingpro-description h5 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  white-space: inherit;
}
.pro-description .btn {
  height: 40px;
  font-weight: 500;
  font-size: 14px;
}
.btn-outline-light {
  border: var(--border-light);
  background: var(--white);
  color: var(--primary);
  height: 50px;
  border-radius: 0;

  &:active,
  &:hover {
    background: var(--primary) !important;
    border: 1px solid var(--primary);
    color: var(--white) !important;
  }
}

.btn-heart {
  width: 35px;
  height: 35px;
  background-color: var(--white);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: var(--shadow-2);
  cursor: pointer;
  stroke: var(--primary);
  & svg {
    height: 16px;
    width: 16px;
  }
  &:hover,
  &:hover svg,
  &:active svg,
  &:active,
  &[alreadyadded="true"] {
    stroke: var(--white) !important;
    background: var(--primary) !important;
    fill: var(--white) !important;
  }
}

@keyframes bounce {
  0% {
    transform: translateY(0);
  }
  20% {
    transform: translateY(-2px);
  }
  40% {
    transform: translateY(2px);
  }
  60% {
    transform: translateY(-2px);
  }
  80% {
    transform: translateY(2px);
  }
  100% {
    transform: translateY(0px);
  }
}

.bounce {
  animation: bounce 1s ease-in-out;
}

.btn-report {
  display: flex;
  align-items: center;
  justify-content: center;
  border: var(--border-light);

  & img {
    height: -webkit-fill-available;
    max-height: 100%;
  }
  &:hover {
    border-color: var(--black);
  }
}
.single-product .button_group button {
  text-transform: uppercase;
}
.button_group {
  .single_add_to_cart_button.btn.btn-cart {
    border: 1px solid #000;
  }
}
.woocommerce {
  div.product {
    .button_group {
      form.cart {
        margin-bottom: 0;
      }
    }
  }
}

.woocommerce {
  div.product {
    .button_group {
      form.cart {
        button.single_add_to_cart_button {
          margin-bottom: 0;
        }
      }
    }
  }
}

.divider {
  width: 100%;
  height: 1px;
  background: #0000001a;
  margin: 20px 0;
}

.ring-card {
  border-radius: 0;
  border: 0;
  background: #f6f6f9;

  & .card-body {
    padding: 20px;
  }
}

/*  end grid view */

body ul {
  margin: 0;
  padding: 0;
}

.fw-600 {
  font-weight: var(--fw-600) !important;
}

.gap-1 {
  gap: 5px !important;
}

.gap-20 {
  gap: 20px !important;
}

.mb-30 {
  margin-bottom: 30px !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.primary-text {
  color: var(--primary);
}

.text-grey {
  color: #8f8f8f;
}

.opcity-7 {
  opacity: 0.7;
}

.truncate-2 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 2;
  max-height: 3em;
  line-height: 1.5em;
}

.para-1 {
  font-size: 18px;
  font-weight: var(--fw-400);
}

.para-2 {
  font-size: 16px;
  font-weight: var(--fw-500);
  line-height: 1.2;
}

.para-3 {
  font-size: 15px;
  font-weight: var(--fw-500);
  line-height: 1.2;
}

.para-4 {
  font-size: 14px;
  font-weight: var(--fw-400);
  line-height: 1.2;
}

.head-1 {
  font-size: 30px;
  font-weight: var(--fw-500);
  line-height: 1.2;
}

.head-2 {
  font-size: 24px;
  line-height: 1.2;
}

.head-3 {
  font-size: 20px;
  font-weight: var(--fw-500);
  line-height: 1.2;
}

.head-4 {
  font-size: 18px;
  font-weight: var(--fw-600);
}

.heading-2 {
  font-size: 30px;
}

.heading-3 {
  font-size: 20px;
  line-height: 1.4;
}

.mx-w-fit {
  width: max-content !important;
}

.mx-650 {
  max-width: 650px;
}

.flex-auto {
  flex: auto;
}

.ratio-1 {
  aspect-ratio: 1;
  width: 100%;
  height: 100%;
}

.img-contain {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.cursor-pointer {
  cursor: pointer;
}

.overflow-x-hidden {
  overflow-x: hidden;
}

.form-select {
  height: 50px;
  border-radius: 0;
  font-size: 16px;
  border: 1px solid #ababab;
  cursor: pointer;
  &:focus {
    box-shadow: none;
    border-color: var(--primary);
  }
}

.btn-none {
  color: var(--primary);
  font-size: 18px;
  border-radius: 10px;
  border: 2px solid var(--primary);
  font-weight: var(--fw-500);
}

.btn {
  font-size: 16px;
  height: 50px;
  font-weight: var(--fw-500);
  border-radius: 0;
  line-height: 1;
  font-weight: 600;
}

.btn-light {
  background: #efefef;
  font-size: 16px;
  font-weight: var(--fw-600);
}

.btn-primary {
  background: var(--primary);
  border: 1px solid var(--primary);

  &:active,
  &:hover {
    background: var(--primary) !important;
    border: 1px solid var(--primary) !important;
    opacity: 0.7;
  }
}

.btn-outline-primary {
  background: transparent;
  border: 1px solid var(--primary);
  color: var(--primary);

  &:active,
  &:hover {
    background: var(--primary) !important;
    border: 1px solid var(--primary) !important;
  }
}
/* 
/*  end tarun */

.list-view,
.grid-view {
  display: none;
}
.grid-view.active,
.list-view.active {
  display: block;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
  width: 100% !important;
}
.detail-subhead {
  font-size: 18px;
  font-weight: 400;
  span {
    font-weight: 600;
  }
}
.select-ring-sizes .form-select {
  width: 150px;
}
.sub-head-block {
  margin-bottom: 20px;
}

/*  shape wizard new css */
.step-wiz-wrapper .col-12 {
  position: relative;
}

.diamond_popup {
  position: absolute;
  top: 100%;
  background-color: #f4f4f4;
  transition: all 0.4s;
  border: 1px solid #dadada;
  width: 32.5%;
  display: none;
  z-index: 999;
}

.diamond_popup.second_box {
  left: 33.8%;
}

.diamond_item_info {
  display: flex;
  justify-content: space-between;
  padding: 15px 15px 0;
}

.diamond_img_with_title {
  text-align: left;
  display: flex;
  gap: 10px;
}

.item_name,
.diamond_item_price h3 {
  font-size: 17px;
  line-height: 1.2;
  margin-bottom: 0;
  color: #000;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.diamond_compare_price {
  text-decoration: line-through;
}

.diamond_img img {
  border: 1px solid #c1c1c1;
  margin-right: 5px;
  object-fit: cover;
  width: 54px;
}

.item_metal,
.diamond_compare_price {
  font-size: 14px;
  letter-spacing: 0;
  line-height: 26px;
  margin-bottom: 0;
  color: #000;
  font-weight: 400;
}

.diamond_btn_group {
  display: flex;
  gap: 10px;
  margin-top: 5px;
  padding: 0 15px 15px;
}

.diamond_btn_group a {
  background-color: #0d0900;
  font-size: 14px;
  letter-spacing: 0.3px;
  text-transform: capitalize;
  height: 36px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 120px;
}

.diamond_title {
  padding-right: 15px;
}

.diamond_text_muted {
  text-align: right;
  font-size: 13px;
  margin: 0;
}

.diamond_btn_group .btn_outline {
  background-color: transparent;
  color: #000;
  transition: all 0.4s;
  border: 1px solid;
}

.btn_outline:hover {
  transition: all 0.4s;
  background: #000;
  color: #fff;
}
/*  shape wizard new css */

.single_variation_wrap
  .woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-enabled {
  display: block;
}

.diamond_item_price h3 {
  text-align: right;
}
.diamond_item_price {
  min-width: 80px;
}

#wp--skip-link--target {
  margin: 0;
}
.has-global-padding {
  padding: inherit;
}
.wp-block-woocommerce-add-to-cart-form .variations_button,
.wp-block-woocommerce-add-to-cart-form form.cart {
  --whole-width-in-grid: span 9999;
  display: -ms-grid;
  display: inline-block;
  width: 100%;
}
.share-icon-box a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  color: #000;
}
.product_detail-container {
  padding: 0 15px;
}
.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;

  .page-numbers {
    border: 1px solid #000;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 30px;
    padding: 5px 10px;
    transition: all 0.3s ease-in-out;
    &:hover {
      color: #fff;
      background: #000;
    }
  }

  .current {
    color: #fff !important;
    background: #000 !important;
  }
}
/* 150%  */
@media (min-width: 991px) and (max-width: 1280px) {
  h1 {
    font-size: 36px;
  }
  #wp--skip-link--target {
    margin: 0 30px;
  }
  .other-shapeimg {
    padding: 10px 10px;
    font-size: 10px;
  }
}
@media (min-width: 768px) {
  .woocommerce-uses-block-theme.woocommerce-account {
    .woocommerce {
      max-width: 1200px;
    }
  }
  .woocommerce-page {
    .wp-block-group {
      .woocommerce {
        max-width: 1200px;
      }
    }
  }
}

/* ipad view */
@media (min-width: 768px) and (max-width: 991px) {
  #wp--skip-link--target {
    margin: 0 15px;
  }
  .setting_details_wrapper {
    align-content: center;
    height: 100%;
  }
  .woocommerce form .form-row label {
    line-height: normal;
  }
  .setting_details_wrapper {
    & .right_section {
      padding: 0 70px;
    }
  }
  .woocommerce-account {
    & main {
      .woocommerce {
        padding: 20px;
      }
    }
  }
  .woocommerce-account {
    & main {
      & .woocommerce-MyAccount-navigation {
        & ul {
          & li {
            a {
              padding: 10px 4px;
            }
          }
        }
      }
    }
  }
}

@media (max-width: 991px) {
  .btn {
    font-size: 14px !important;
    font-weight: 500 !important;
  }
  .head-1 {
    font-size: 24px;
  }

  .setting_details_wrapper {
    & .right_section {
      & h4 {
        font-size: 20px !important;
      }
      & .button_group {
        gap: 15px !important;
      }
    }
  }
  .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: 50% !important;
  }
  /* .single-product . wp-block-column-is-layout-flow */
  .single-product .step-wiz-wrapper .is-layout-flex {
    flex-direction: column;
  }
  .setting_details_wrapper {
    & .right_section {
      max-width: 100% !important;
    }
  }
}

span.wc-block-components-button__text {
  color: #fff;
}

a.wc-block-components-button.wp-element-button.wp-block-woocommerce-mini-cart-cart-button-block.wc-block-mini-cart__footer-cart.outlined {
  background: #111;
}

/* mobile view */
@media (max-width: 767px) {
  :root :where(.wp-block-group) {
    padding-top: 20px;
    padding-right: 20px;
    padding-bottom: 20px;
    padding-left: 20px;
  }

  body.page {
    main {
      > .entry-content {
        padding: 0;
      }
    }
  }

  .woocommerce-page {
    main.wp-block-group {
      .entry-content {
        padding: 0;
        .woocommerce {
          padding: 0;
        }
      }
    }
  }
  .woocommerce-account {
    .woocommerce-MyAccount-navigation {
      ul {
        flex-wrap: wrap;
      }
    }
  }
  .woocommerce-cart.woocommerce-page {
    h1 {
      padding: 10px 0;
    }
  }

  .product-container.grid-view {
    .row {
      > .grid-card {
        padding: 0 7px;
        margin-bottom: 15px;
      }
    }
  }

  .woocommerce-Addresses {
    .woocommerce-Address {
      &:nth-child(2) {
        border-top: 1px solid #ccc;
        padding-top: 30px;
        padding-left: 0;
        border-left: 0;
      }
    }
  }
}
@media (max-width: 576px) {
  header
    .wp-block-group.alignwide.is-content-justification-space-between.is-nowrap.is-layout-flex.wp-container-core-group-is-layout-2.wp-block-group-is-layout-flex {
    max-width: 100% !important;
    padding: 0 !important;
  }
  .wp-block-site-logo.is-default-size img {
    width: 80px !important;
    margin-left: 20px;
  }
  td.wc-block-cart-item__total {
    display: none;
  }
  header
    .wp-block-group.is-content-justification-right.is-nowrap.is-layout-flex.wp-container-core-group-is-layout-1.wp-block-group-is-layout-flex {
    padding-bottom: 10px;
    padding-top: 10px;
    padding-right: 0;
  }

  body.woocommerce-cart main,
  body.woocommerce-checkout main,
  body.woocommerce-account main {
    width: 95%;
    margin: 0 auto !important;
  }
  .step-wiz-wrapper {
    padding: 20px 0 20px !important;
  }
  .grid-card {
    & .card {
      & .card-body {
        & .text {
          & h5 {
            padding-right: 20px;
          }
          & p {
            width: max-content;
            white-space: nowrap;
          }
        }
      }
    }
  }
}

@media (max-width: 480px) {
  /* 	.grid-card{
		 width:100% !important;
	} */
  .pagination .page-link {
    font-size: 14px !important;
    padding: 1px 5px;
  }
  body .pagination {
    gap: 5px;
  }
}

a.next.page-numbers:before {
  content: ">";
  position: absolute;
  background: #fff;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  padding-left: 8px;
  padding-top: 3px;
}

a.prev.page-numbers:before {
  content: "<";
  position: absolute;
  background: #fff;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  padding-left: 8px;
  padding-top: 3px;
}
a.prev.page-numbers,
a.next.page-numbers {
  position: relative;
}
footer.wp-block-template-part {
  background: #f1f1f1;
}
footer .wp-block-group.alignwide.is-layout-flow.wp-block-group-is-layout-flow {
  padding-top: 13px;
  padding-bottom: 18px;
}

a.prev.page-numbers:hover:before,
a.next.page-numbers:hover:before {
  background: #000;
  color: #fff;
}

/* header{display:none !important} */

a.page-link {
  color: #000;
}
li.active a.page-link {
  background: #000;
  border-color: #000;
}
li a.page-link:hover {
  background: #000;
  color: #fff;
}

.woocommerce-account h1.wp-block-post-title {
  text-align: center;
  display: block;
  width: 100%;
  max-width: initial;
}

.woocommerce-account main .woocommerce {
  width: 40%;
}
