
*,
*::before,
*::after {
  box-sizing: border-box;
}
 html, body {
      margin: 0;
      padding: 0;
      height: 100%;
      scroll-behavior: smooth;
      scroll-snap-type: y mandatory;
      overflow-y: scroll;
    }
html {
  -webkit-text-size-adjust: 100%;
}
body,
html,
img {
   max-width: 100%
}
.page-scrollS{
    scroll-snap-align: start; 

}
h1,
h2,
h3,
h4,
h5,
h6 {
   padding: 0;
   margin: 0
}
.banner-sec,
.content-sec {
   background-color: #6d388b
}


.overlay,
.side-menu {
   display: none;
   z-index: 9
}
.cart-btn::before,
.side-menu {
   position: absolute;
   top: 0;
   left: 0
}
.acc-wrapper .accordion,
.acc-wrapper .accordion.active+.panel {
   border-bottom: .1rem solid #724a90
}
.acc-wrapper .accordion,
.content-sec h1,
.panel p,
.sleep-content p {
   font-family: var(--heading-font)
}
footer,
header {
   padding: 20px 0
}
footer h2,
h1 {
   font-weight: 700
}
.cart-btn,
.panel,
.video-bg,
body.open {
   overflow: hidden
}
.black-bg p,
.incluted-sec ul {
   line-height: 2;
   font-size: 1rem
}
.cart-btn,
.checkbox-item,
.fa {
   cursor: pointer
}
:root {
   --boldh-font: 'Harmonia Sans Pro Cyr';
   --heading-font: Poppins, sans-serif
}
@font-face {
   font-family: 'Harmonia Sans Pro Cyr';
   src: url('HarmoniaSansProCyr-Bold.woff2') format('woff2'), url('HarmoniaSansProCyr-Bold.woff') format('woff');
   font-weight: 700;
   font-style: normal;
   font-display: swap
}
@font-face {
   font-family: 'Harmonia Sans Pro Cyr';
   src: url('HarmoniaSansProCyr-Light.woff2') format('woff2'), url('HarmoniaSansProCyr-Light.woff') format('woff');
   font-weight: 300;
   font-style: normal;
   font-display: swap
}
@font-face {
   font-family: 'Harmonia Sans Pro Cyr';
   src: url('HarmoniaSansProCyr-Regular.woff2') format('woff2'), url('HarmoniaSansProCyr-Regular.woff') format('woff');
   font-weight: 400;
   font-style: normal;
   font-display: swap
}
body,
html {
   overflow-x: hidden;
   font-size: 16px;
   color: #000;
   font-family: var(--boldh-font)
}
.btn:focus,
.form-control:focus {
   box-shadow: none
}
a {
   text-decoration: none
}
.clearfix::after {
   content: "";
   clear: both;
   display: table
}
ol,
ul {
   list-style: none
}
section {
   position: relative
}
.row:after,
.row:before {
   width: 0;
   height: 0;
   content: ""
}
.banner-sec .container,
.content-sec .container,
header .container {
   max-width: 700px
}
.full-widthS{
    max-width: 55%;
    display: table;
    margin: 0 auto;
}
.align-items-center {
   -webkit-align-items: center
}
.justify-content-center {
   -webkit-justify-content: center
}
.justify-content-between {
   -webkit-justify-content: space-between
}
.top-header {
   background: #2e0040;
   font-size: 1.1rem;
   text-align: center;
   letter-spacing: .05rem;
   font-weight: 500
}
.top-header .horizontal-ticker__container {
   background-color: transparent;
   padding: 10px 0;
   color: #fff
}
header {
   background-color: #2e0040
}
header nav i.fa {
   color: #fff
}
.side-menu {
   width: 300px;
   background: #6d388b;
   border-right: 1px solid #6d388b;
   height: 100%;
   padding: 0
}
.side-menu li {
   margin-top: 20px;
   display: inline-block;
   width: 100%
}
.side-menu li a {
   color: #fff;
   font-weight: 600;
   padding: 10px
}
a.close-btn {
   font-size: 25px;
   display: flex;
   align-items: center;
   justify-content: space-between;
   color: #000
}
.fa {
   font-size: 25px
}
.banner-sec {
   margin: 0;
   padding-top: 0px
}
.banner-sec .owl-item .item,
.banner-sec .owl-item .item img {
   border-radius: 10px;
   overflow: hidden
}
p.rating-text {
    display: flex;
    justify-content: flex-start;
    color: #1a1f4f;
    font-size: 1.2rem;
    align-items: center;
}
.rating-text svg {
   fill: #ffcc00;
   /* width: 1.1rem;
   height: 1.2rem; */
   width: 2rem;
   height: 2rem;
   margin-left: 5px
}
.content-sec {
   padding-bottom: 0;
   padding-top: 0;
}
.content-sec .price-bg{
    background: url(../images/price-secimg.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    /* padding: 20px 30px; */
    padding: 30px 30px 10px;
}
.content-sec h1 {
   font-size: 2.1rem;
   font-weight: 600;
   letter-spacing: .01rem
}
.content-sec p,
.panel p,
.sleep-content p {
   letter-spacing: .03rem
}
.content-sec p {
   font-weight: 500
}
.overlay {
   background: rgba(0, 0, 0, .5);
   width: 100vw;
   height: 100vh;
   position: fixed
}
body.open {
   height: 100vh
}
.price .price-item {
   display: inline-block;
   color: #fff;
   letter-spacing: .1rem;
   line-height: 1
}
.price-item--sale {
   font-size: 1.3rem;
   font-weight: 600;
   color: #2ea5e4 !important
}
.price__compare-price {
   font-size: 1.3rem;
   margin-left: .2rem;
   font-weight: 600
}
del {
   text-decoration: line-through
}
.price__badge-sale {
   background-color: #2ea5e4;
   color: #fff;
   padding: .2rem .5rem;
   border-radius: .4rem;
   font-size: .8rem;
   font-weight: 600;
   letter-spacing: .05rem;
   margin-left: .4rem;
   margin-top: -4px
}
.cart-btn,
.cart-btn::before {
   background: var(--hover);
   width: 100%
}
.payment-badges {
   display: flex;
   justify-content: center;
   padding: 0
}
.payment-badges .list-payment__item {
   align-items: center;
   display: flex;
   padding: .5rem
}
.price__badge-sale svg {
   height: .8rem
}
.cart-btn {
   --color: #4d940e;
   --hover: #4d940e;
   position: relative;
   border: 2px solid var(--color);
   color: #fff;
   text-transform: uppercase;
   letter-spacing: .1rem;
   font-weight: 600;
   font-size: 1.3rem;
   text-align: center;
   transition: color .4s, background-color .4s;
   padding: 10px 6px 6px;
   display: flex;
   align-items: center;
   justify-content: center;
   /* margin-top: 25px; */
   margin-top: 15px;
   margin-bottom: 15px;
   border-radius: 8px
}
.cart-btn::before {
   content: "";
   height: 100%;
   z-index: 1;
   transform: scaleX(1);
   transform-origin: left;
   transition: transform .4s
}
.cart-btn:hover::before {
   transform: scaleX(0);
   transform-origin: right
}
.cart-btn:hover {
   background: 0 0;
   color: var(--hover);
   z-index: 2
}
.acc-wrapper .accordion,
.accordion.active,
.accordion:hover,
.panel {
   background-color: transparent
}
.cart-btn span {
   color: #fff;
   z-index: 1;
   transition: color .3s ease-in-out
}
.cart-btn:hover span {
   color: #4d940e
}
.acc-wrapper .accordion {
   font-size: 1.2rem;
   display: flex;
   color: #fff;
   align-items: center;
   border-top: none;
   border-right: none;
   border-left: none;
   padding: 10px 0;
   width: 100%;
   font-weight: 600;
   position: relative
}
.acc-wrapper .accordion.active {
   border-bottom: none
}
.acc-wrapper .accordion:first-child {
   border-top: .1rem solid #724a90
}
.accordion:after {
   content: "\f107";
   color: #fff;
   font-weight: 300;
   float: right;
   top: 13px;
   position: absolute;
   animation: 0;
   right: 15px;
   font-size: 18px;
   font-family: FontAwesome
}
.accordion.active:after {
   content: "\f106"
}
.panel {
   padding: 0 18px;
   max-height: 0;
   transition: max-height .2s ease-out
}
.black-bg,
footer {
   background-color: #6d388b
}
.icon-accordion {
   width: 5rem;
   height: 2rem;
   fill: #fff
}
.panel p {
   font-size: 1rem;
   font-weight: 300;
   color: #fff
}
.fall-slepp {
   display: flex;
   justify-content: space-between;
   align-items: center;
   flex-direction: column;
   margin: 0
}
.fall-slepp img {
   width: 45%
}
.sleep-content {
   width: 55%;
   padding: 15px 0;
}
.sleep-content h1 {
   font-size: 2.2rem
}
.sleep-content p {
   font-size: 1.1rem;
   font-weight: 300;
   margin-top: 20px;
   line-height: 2
}
.black-bg {
   padding: 60px 0;
   color: #fff
}
.black-bg h2,
.incluted-sec h2 {
   font-size: 1.7rem;
   font-weight: 600;
   margin-bottom: 15px
}
.black-bg p,
.incluted-sec ul,
.list-menu__item--link {
   letter-spacing: .03rem;
   font-family: var(--heading-font);
   font-weight: 300
}
.black-bg p {
   padding-right: 40px
}
footer h2 {
   font-size: 1.7rem;
   margin-bottom: 15px
}
.list-menu__item--link {
   font-size: .8rem;
   color: #fff;
   margin-top: 10px;
   display: inline-block;
   width: 100%
}
.subcribe-btn {
   width: 100%;
   background-color: #fff;
   border-radius: 5px;
   font-weight: 700
}
.form-control,
.form-control:focus {
   background-color: transparent;
   color: #fff
}
::placeholder {
   color: #fff
}
::-moz-placeholder {
   color: #fff
}
::-webkit-input-placeholder {
   color: #fff
}
.form-floating>label,
.fte-copy-text p {
   color: #fff
}
.copyright__content {
   font-size: .7rem
}
img.ninty-day {
   width: 300px
}
.video-bg {
   position: relative;
   width: 100%;
   height: 500px
}
.video-bg video {
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block
}
.incluted-sec {
   background-color: #f3f3f3;
   padding: 50px 0
}
.incluted-sec ul {
   list-style-type: disc;
   margin-top: 20px
}
.review-sec {
   padding: 40px 0;
}
.review-sec .container{
max-width: 700px;
width: 100%;
}
.review-sec h2 {
   margin-bottom: 20px;
   font-size: 1.5rem;
   font-weight: 600
}
.fa-star,
.fa-star-half {
   color: #ffcc00;
   font-size: 20px
}
.progress {
   height: .55rem
}
.tr-reviews-metrics__progress-bar {
   display: block;
   height: 10px;
   border-radius: 3px;
   background-color: #f3f3f3;
   position: relative;
   width: 180px
}
.progress-bar {
   background: #4aca94
}
.review-bar {
   width: 100%
}
.review-bar .progress {
   width: 70%
}
.review-bar p {
   width: 45px
}
.review-bar .fa-star {
   color: #000;
   font-size: 1rem
}
.reviews-content {
   display: flex;
   justify-content: center;
   align-items: flex-start;
   flex-direction: column;
   padding: 40px 0 0;
   margin-top: 40px;
   border-top: 0 solid #e3e1e1
}
.count-sec {
   display: flex;
      justify-content: flex-start;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-behavior: smooth;
        flex-wrap: nowrap;
        -webkit-overflow-scrolling: touch;
   padding: 50px 0 0 0;
   grid-gap: 20px;
}
.review-grid {
   border: 1px solid #d2c9c9;
   border-radius: 10px; 
   flex-direction: column;
   break-inside: avoid;
   display: flex;
        width: 80%;
        max-width: 100%;
        flex-basis: 80%;
        flex-grow: 0;
        flex-shrink: 0;
        padding: 0 10px;
        margin-bottom: 30px;
  }
   .review-sec .count-sec::-webkit-scrollbar {
        width: 10px;
        height:7px;
    }
  
    .review-sec .count-sec::-webkit-scrollbar-track {
        background: #E2E2E2;
    }
  
    .review-sec .count-sec::-webkit-scrollbar-thumb {
        background: #391E71;
    }
  
    .review-sec .count-sec::-webkit-scrollbar-thumb:hover {
        background: #555;
    }

.review-grid p.text-end.text-grey.mb-0 {
   position: absolute;
   bottom: 10px;
   right: 22px
}
.review-grid span {
   background: #fff;
   max-width: max-content;
   padding: 5px 10px;
   font-size: 14px;
   font-weight: 600;
   box-shadow: 0 0 5px #bfbfbf;
   border-radius: 18px;
   margin-top: -24px;
   margin-bottom: 10px;
   display: flex;
   align-items: center;
   justify-content: space-between;
}
.review-grid span .fa-star {
   font-size: 14px
}
.horizontal-ticker__container {
   background-color: #fff;
   padding: 15px 0;
   display: flex;
   width: fit-content;
   animation: 50s linear infinite forwards horTicker
}
.horizontal-ticker__item {
   margin: 0;
   color: rgb(var(--color-foreground));
   line-height: 1;
   white-space: nowrap;
   font-size: 0.95em;
   padding: 0 2em;
   font-weight: 400
}
@keyframes horTicker {
   to {
      transform: translateX(-50%)
   }
}
.price.price__sale {
   display: flex;
   align-items: center;
   gap: 5px;
   margin-top: 24px;
   margin-bottom: 20px
}
.checkbox-group {
   display: flex;
   flex-direction: column;
   gap: 15px;
   margin-top: 16rem;
}
.checkbox-item {
   display: flex;
   align-items: center;
   border: 2px solid #615ba2;
   /* padding: 15px; */
   padding: 6px 15px;
   border-radius: 8px;
   position: relative;
   transition: border-color .3s, background-color .3s;
   background-color: transparent;
   color: #fff;
   margin-bottom: 5px
}
.checkbox-item.active {
   background-color: rgba(46, 165, 228, .1);
   border-color: #54a3de
}
.checkbox-item:hover {
   border-color: #54a3de
}
.checkbox-item .content {
   margin-left: 10px;
   display: flex;
   width: 100%;
   justify-content: space-between;
   align-items: center
}
.checkbox-item .offer-title {
   font-weight: 700;
   font-size: 16px;
   display: flex;
   flex-direction: column
}
.checkbox-item .price {
   font-size: 1.2rem;
   color: #2ea5e4;
   font-weight: 700
}
.checkbox-item .save {
 color: #1a1f4f;
   font-size: 1.2rem;
}
.checkbox-item .original-price {
   color: #fff;
   font-size: 14px;
   text-decoration: line-through
}
.checkbox-group .badge {
   position: absolute;
   top: -14px;
   right: -13px;
   background-color: #54a3de;
   color: #29033d;
   font-size: 16px;
   font-weight: 700;
   padding: 5px 8px;
   border-radius: 3px;
   text-transform: uppercase;
   rotate: 3deg
}
.checkbox_right {
   flex-direction: column;
   display: flex;
   align-items: center
}
.checkbox_left .offf {
   display: inline-block;
   font-size: 10px;
   background: #2e0040;
   color: #2ea5e4;
   line-height: 1.9;
   padding: 0 .75em;
   font-weight: 700;
   border: 1px solid #2ea5e4;
   border-radius: .6em;
   margin-left: 5px;
   white-space: nowrap
}
.checkbox-group input[type=radio] {
   -ms-transform: scale(1.3);
   -webkit-transform: scale(1.3);
   transform: scale(1.3)
}
.checkbox-group input {
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
   border-radius: 50%;
   width: 14px;
   height: 13px;
   border: 2px solid #615ba2;
   transition: .2s linear;
   margin-right: 5px;
   position: relative
}
.checkbox-group input:checked {
   border: 2px solid #29033d;
   outline: unset !important;
   background: #ffe461
}
.ftr-menu-box {
   display: flex;
   align-items: center;
   justify-content: space-between
}
.fte-menu-links a {
   color: #fff;
   margin-right: 10px
}
.fte-menu-links a:hover {
   color: #f2f2f2
}
.section-one{
 
}
.section-four{    
    display: flex;
    display: -webkit-flex;
    align-items: center;
    justify-content: center;
}

#ctabtn-mob{
    position: fixed; 
    width: 100%;
    padding: 10px;
   bottom: -300px;
  transition: bottom 0.3s ease-in-out;
    z-index: 9;
}
#ctabtn-mob .cart-btn,#ctabtn-mob .cart-btn::before {
    max-width: 100% !important;
    border-radius: 30px;
    background: #8a5bab !important;
}
#ctabtn-mob .cart-btn span{
    color: #fff !important;
    font-size: 1.1rem;
    letter-spacing: 0;
}
@media(max-width:991px) {
   .sleep-content h1 {
      font-size: 1.6rem
   }
   .count-sec {
      grid-template-columns: repeat(1, 1fr)
   }
     /* .section-one img, .section-two img, .section-three img, .section-four img, .banner-sec img, .full-widthS {
    width: 100%;
    max-width: 80%;
   } */
}
@media(max-width:767px) {
   .checkbox-group .badge {
      right: -7px
   }
   .fall-slepp {
      flex-direction: column
   }
   .fall-slepp:nth-child(2) {
      flex-direction: column-reverse
   }
   .fall-slepp img {
      width: 100%;
   }
   img.ninty-day {
      width: auto
   }
   .sleep-content {
      width: 100%;
      padding-right: 3rem !important;
      padding-left: 3rem !important;
      margin-top: 20px
   }
   .acc-wrapper .accordion {
      font-size: 1.1rem
   }
   .content-sec h1 {
      font-size: 1.4rem
   }
   .stickyTop {
      position: fixed;
      width: 100%;
      left: 0;
      bottom: 0;
      z-index: 99999;
      background: #2e0040;
      -webkit-box-shadow: 0 3px 5px rgb(119 119 119 / 28%);
      box-shadow: 0 3px 5px rgb(119 119 119 / 28%);
      padding: 10px 6px;
      font-family: var(--boldh-font);
      font-size: 12px
   }
   .sticky-atc__title {
      color: #fff;
      font-size: 1.4em;
      font-weight: 600
   }
   .cta_btn_cntnr a {
      border-radius: 10px;
      background-color: #6d388b;
      color: #fff;
      font-weight: 600;
      padding: 10px 15px;
      max-width: 170px;
      width: 100%;
      line-height: 17.5px;
      font-size: 16px;
      display: inline-block;
      font-family: Barlow, sans-serif;
      margin-bottom: 0;
      box-shadow: 0 4px 4px rgba(0, 0, 0, .25)
   }
   .stickyTop .price-item--sale {
      font-size: 1.3em;
      letter-spacing: 0;
      color: #6d388b
   }
   .stickyTop .price__compare-price {
      font-size: 1em
   }
   .stickyTop .price__badge-sale {
      background-color: #2ea5e4;
      color: #fff;
      padding: 2px 4px;
      font-size: .8em;
      font-weight: 600;
      letter-spacing: 0;
      margin-left: 0
   }
   .stickyTop .price.price__sale {
      margin-top: 5px
   }
 .count-sec {
       display: flex;
      justify-content: flex-start;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-behavior: smooth;
        flex-wrap: nowrap;
        -webkit-overflow-scrolling: touch;
  }
  .review-grid{
        width: 80%;
        max-width: 100%;
        flex-basis: 80%;
        flex-grow: 0;
        flex-shrink: 0;
        padding: 0 10px;
        margin-bottom: 30px;
  }
   .review-sec .count-sec::-webkit-scrollbar {
        width: 10px;
        height:5px;
    }
  
    .review-sec .count-sec::-webkit-scrollbar-track {
        background: #E2E2E2;
    }
  
    .review-sec .count-sec::-webkit-scrollbar-thumb {
        background: #391E71;
    }
  
    .review-sec .count-sec::-webkit-scrollbar-thumb:hover {
        background: #555;
    }
}
@media(max-width:575.5px) {
   .ftr-menu-box {
      flex-direction: column
   }
}
/** NEW ADDED STYLES HERE **/
:root {
   --boldh-font: "Nunito", sans-serif;
   --heading-font: "Nunito", sans-serif;
}
@media screen and (max-width:767px) {
   .banner-sec .container, .content-sec .container {
      padding-left: 0;
      padding-right: 0
   }
   .content-sec .price-bg{
       padding: 20px 10px;
   }
}
.top-header {
   background: #6c1666;
}
.banner-sec,
.content-sec {
   background: linear-gradient(to right, #914a8c 0%, #995495 100%)
}
.checkbox-group .badge {
   /* background-color: #c94f7e;
   color: #faf2ff */
   background-color: #ffe461;
   color:#000;
}
.checkbox-item {
   /* border: 2px solid #fff;
   color: #faf2ff */
   border: 2px solid #1a1f4f;
    color: #1a1f4f;
    background: #fff;
}
.checkbox-item.active {
   /* background-color: rgba(154, 17, 144, 0.3);
   border-color: #6c1666 */
       background-color: rgba(26, 31, 79, 0.4);
    border-color: #1a1f4f;
}
/* .checkbox-item:hover {
   border-color: #6c1666
} */
.checkbox-group input {
   border: 2px solid #d0a6ce
}
.checkbox-item .price {
   color: #1a1f4f;
}
.price .price-item {
   color: #afafaf
}
.price-item--sale {
   color: #faf2ff !important
}
.price__badge-sale {
   background-color: #c94f7e;
   color: #faf2ff;
   font-size: 1rem
}
.cart-btn {
   /* --color: #cf4b7d;
   --hover: #cf4b7d;
   color: #faf2ff;
   font-weight: 700 */
       --color: #ffe461;
    --hover: #ffe461;
    color: #000 !important;
    font-weight: 700;
}
.cart-btn span,
.cart-btn:hover span {
   /* color: #faf2ff */
   color: #000;
    font-size: 1.5rem;
    font-weight: 800;
}
.acc-wrapper .accordion:first-child {
   border-top: .1rem solid #be83bb
}
.acc-wrapper .accordion,
.acc-wrapper .accordion.active+.panel {
   border-bottom: .1rem solid #be83bb
}
.fall-slepp-bg {
   background: linear-gradient(to right, #914a8c 0%, #995495 100%) !important
}
.black-bg,
footer {
   background: linear-gradient(to right, #914a8c 0%, #995495 100%)
}
.content-sec h1 {
  font-size: 2.7rem;
    font-weight: 800;
    color:#1a1f4f!important;
}
.price__compare-price,
.price-item--sale {
   font-size: 1.375rem
}
.checkbox-item.active .offer-title, .checkbox-item.active .save, .checkbox-item.active .price {
    color: #fff!important;
}
.checkbox-item .offer-title {
   font-size: 1.50rem;
   line-height: 1.4;
}
.acc-wrapper .accordion {
   font-size: 1.125rem
}
.sleep-content h1,
.incluted-sec h1,
.review-sec h2 {
   font-size: 1.75rem
}
.review-grid p strong {
   font-size: 1.125rem
}
.sleep-content p {
   font-weight: 400
}
.free-shippingtxt
{
     background: #87599e;
    padding: 10px;
    text-align: center;
    font-size: 1.2rem;
    font-weight: 800 !important;
    color: #fff;
    letter-spacing: 0.7px !important;
    margin-bottom: 0;
}
@media(max-width:991px) and (min-width:768px)
{
       .fall-slepp{
      flex-direction: column;
    }
    .fall-slepp img {
    width: 100%;
} 
}
@media(max-width:500px){
    .checkbox-item .offer-title {
        font-size: 1.10rem;
    }
    .checkbox-item .save, .checkbox-item .price{
        font-size: 1rem;
    }
    .content-sec h1 {
        font-size: 2rem;
    }
    .checkbox-group {
        margin-top: 18rem;
    }
}

