/* Main Container */

.product-wrapper {

  padding-top: 38px;

}



/* Left Section */

.product-gallery {

display: flex;

  max-width: 100%;

  overflow: hidden;

  gap: 10px;

  position: relative;

}



/* Thumbnails */

.thumbSwiper {

  width: 90px;



  flex-shrink: 0;

}



.thumbSwiper img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

  border-radius: 8px;

}



.thumbSwiper .swiper-slide {

  /* opacity: 0.4; */

  height: 76px !important;

  padding: 0 !important;





  display: flex;

  align-items: center;

  justify-content: center;

}



.thumbSwiper .swiper-slide-thumb-active {

  opacity: 1;

  border: 5px solid #EF82AB;

  border-radius: 12px;

}



/* Main Image */

.mainSwiper {

flex: 1;

  max-width: 100%;

  overflow: hidden;

}

.swiper {

  max-width: 100%;

  overflow: hidden;

}



.mainSwiper img {

  width: 100%;

  height: 484px;

  object-fit: cover;

  border-radius: 15px;

}



/* Right Section */

.product-info {

  /* background: #fff; */

  border-radius: 15px;

  padding-left: 60px;

  position: relative;

}

.product-info .wishlist{

    background: rgb(249 217 225);

}

del.cut-price.cut-sale-price i {

    font-weight: 700;

    color: #A8A8A8;

    font-size: 14px;

    font-weight: 400;

}

.select-v label {

    color: #8D8D8D;

    font-size: 14px;

    margin-bottom: 8px;

}

/* Stock Badge */

.stock {

    display: inline-block;

    border: 1px solid #EF82AB;

    color: #EF82AB;

    padding: 4px 30px;

    border-radius: 20px;

    font-size: 12px;

    margin-bottom: 27px;

    

    line-height: normal;

}



/* Title */

.product-info h1 {

    font-size: 38px;

    line-height: 44px;

    margin: 0 0 26px 0;

    font-weight: 800;

    padding-right: 20px;

}



/* Description */

.desc {

    color: #000;

    line-height: 24px;

    padding-top: 10px;

}



/* Price */

.price {

    margin: 0px;

    display: inline-flex;

    align-items: flex-start;

}

.price i {

    color: #000;

    font-family: "Oleo Script", system-ui;

    font-size: 25px;

    font-style: normal;

    font-weight: 700;

    line-height: normal;

    flex: 1;

}



.price span {

    color: #000;

    font-size: 14px;

    font-style: normal;

    

    line-height: normal;

    margin-right: 3px;

    padding-top: 4px;

    position: relative;

}



/* Divider */

.divider {

    height: 1px;

    background: #F9D9E1;

    margin: 25px 0;

}



/* Form */

.form-row {

  display: grid;

  grid-template-columns: 1fr 1.3fr;

  gap: 15px;

  margin-bottom: 15px;

}

.select-v select {

  background: url(../images/drop-arrow.svg) 92% no-repeat;

  appearance: none;

  

}

input#deliveryInput {

    background: url(../images/calendar-ico.svg) 92% no-repeat;

}

select,

input,

textarea {

  width: 100%;

  padding: 9px 15px;

  border: 1px solid #ffd1dc;

  border-radius: 12px;

  outline: none;

  font-size: 14px;

  color: #000;

}

 textarea::placeholder,input::placeholder{

   color: #000;

}



textarea {

  resize: none;

  height: 130px;

}



/* Checkbox */

.checkbox {

  display: flex;

  align-items: center;

  gap: 10px;

  margin-top: 5px;

  margin-bottom: 20px;

}

.checkbox input{

  width: auto;

}

.checkbox input[type="checkbox"] {

    width: 21px;

    height: 18px;

    accent-color: #F9D9E1;

    border: 2px solid #F9D9E1;

}

.custom-checkbox {

  display: flex;

  align-items: center;

  gap: 8px;

  cursor: pointer;

  font-size: 14px;

}



.custom-checkbox input {

  display: none;

}



.checkmark {

  width: 22px;

  height: 22px;

  border: 2px solid #F9D9E1;   /* 👈 Border Style Here */

  border-radius: 4px;

  display: inline-block;

  position: relative;

  transition: 0.2s ease;

}



/* Checked state */

.custom-checkbox input:checked + .checkmark {

  background-color: #F9D9E1;

  border-color: #F9D9E1;

}



/* Tick mark */

.custom-checkbox input:checked + .checkmark::after {

  content: "";

  position: absolute;

  left: 7px;

  top: 2px;

  width: 5px;

  height:12px;

  border: solid white;

  border-width: 0 2px 2px 0;

  transform: rotate(45deg);

}



/* Features */

.features {

  margin-top: 20px;

  display: flex;

  justify-content: space-between;

  gap: 20px;

  padding-left: 100px;

}

.product-info small {

    width: 100%;

    text-align: right;

    display: block;

}

.feature p {

    font-weight: 700;

    font-size: 11px;

    color: #623143;

    line-height: normal;

    margin-bottom: 0;

}

.feature {

  align-items: center;

flex: 1;

    font-size: 13px;

    color: #666;

    display: flex;

    gap: 14px;

    border-right: 1px solid #F9D9E1;

    padding-right: 12px;

}

.feature:last-child{

border-right: 0;

}

.youmay-like h4 {

    color: #141414;

    font-weight: 700;

    margin-bottom: 30px;

}



.feature img {

    width: 37px;

    margin-bottom: 0;

}



.quantity-wrap {

    display: flex;

    align-items: center;

    gap: 12px;

}

.quantity-control {

    display: flex;

    align-items: center;

    border: 1px solid #F9D9E1;

    border-radius: 12px;

    padding: 10px 18px;

    width: 120px;

    justify-content: center;

}

.quantity-btn {

    border: none;

    background: none;

    font-size: 26px;

    cursor: pointer;

    padding: 0;

}

.quantity-number {

font-size: 12px;

    font-weight: 700;

    text-align: center;

    display: block;

    padding: 0 23px;

}

.add-to-btn {

    border-radius: 100px;

    background: #EF82AB;

    backdrop-filter: blur(100px);

    padding: 15px 0;

    color: #FFF;

    font-size: 12px;

    font-style: normal;

    font-weight: 700;

    line-height: normal;

    letter-spacing:2px;

    text-transform: uppercase;

    border: none;

    display: flex;

    align-items: center;

    justify-content: center;

    width: 100%;

      transition: all 0.3s ease 0s;

}

.add-to-btn:hover{

   background: transparent;

   color: #797979;

   border: 1px solid #EF82AB;

}

.add-to-btn i {

    margin-right: 18px;

    height: 15px;

    display: flex;

    justify-content: center;

    align-items: center;

}

.tab-heading-line {

    border-bottom: 1px solid #F9D9E1;

    margin-bottom: 60px;

}

.tab-section .tab-heading {

    display: flex;

    justify-content: center;

    /* margin-bottom: 60px; */

}

.tab-heading a {

    color: #8D8D8D;

    text-decoration: none;

    font-size: 16px;

    line-height: normal;

    

    padding: 14px 20px 16px 20px;

    display: flex;

    align-items: center;

    position: relative;

    width: 50%;

    justify-content: center;

}

.tab-heading a.active::after {

    content: '';

    width: 100%;

    height: 3px;

    background: #EF82AB;

    position: absolute;

    bottom: 0;

    left: 0;

}

.tab-heading a::after {

    content: '';

    width: 100%;

    height: 1px;

    background: #F9D9E1;

    position: absolute;

    bottom: 0;

    left: 0;

}

.tab-heading a.active {

  color: #000;

    font-weight: 700;

}

.tab-section .content {

    display: none;

}

.tab-section .content.active {

    display: block;

}

.second-level-tab-wrap .content h4 {

    color: #141414;

    font-weight: 700;

    margin-bottom: 15px;

}

.second-level-tab-wrap .content p{

  margin-bottom:15px;

}

.second-level-tab-wrap .content li{

    font-size: 16px;

    line-height: 100%;

    padding: 0px;

    margin: 0px 0px 14px !important;

    

    color: #000000;

    position: relative;

    padding-left: 20px;

}

.second-level-tab-wrap .content li::before{

  content: '';

  width: 10px;

  height: 10px;

  border-radius: 50%;

  background-color: #EF82AB;

  position: absolute;

  left: 0;

  top: 3px;

}





/* Container */

.review-wrapper{

    max-width:900px;

    margin:auto;

}





/* Existing Review Box */

.review-box{

    border:1px solid #ffd6dd;

    border-radius:15px;

    padding:25px;

    box-shadow:0 3px 10px rgba(255,0,100,0.1);

    margin-bottom: 13px;

}

.review-form-class {

    /* border-top: 1px solid #ffd6dd;

    padding-top: 30px; */

    margin-top: 8px;

}

.review-top{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:15px;

}



.review-name{

    font-size:20px;

    font-weight:bold;

}



.review-stars{

    color:#ffb400;

    margin-left:10px;

}



.review-date{

    color:#888;

    font-size:14px;

}



.review-text{

    color: #000;

    line-height: normal;

    font-size: 16px;

}



.note{

    color:#000;

    margin-bottom:25px;

}

.rating-div-btm{

  display: flex;

  gap: 20px;

  margin-bottom: 15px;

}

small{

  color: red;

  font-size: 14px;

}



/* Form */

.review-form label{

    display: block;

    font-weight: 400;

    color: #000;

    font-size: 14px;

}



.review-form input,

.review-form textarea{

    width:100%;

    padding:15px;

    border:1px solid #ffd6dd;

    border-radius:15px;

    margin-bottom:25px;

   font-size: 15px;

    outline:none;

    color: #000;

}

.review-form input::placeholder{

  color: #000;

  font-size: 15px;

}

.save-info input {

    width: inherit;

    margin-bottom: 0;

}

.review-form textarea{

    min-height:140px;

    resize:vertical;

    margin-bottom: 0;

}

.review-form input{

    margin-bottom: 0;

}



section.product-detail-wrap {

    background: linear-gradient(180deg, #FFF1F8 0%, rgba(255, 241, 248, 0) 100%);

}

/* Rating */

.rating{

    display:flex;

    gap:5px;

}



.rating input{

    display:none;

}



.rating label{

    font-size:28px;

    color:#ddd;

    cursor:pointer;

}



.rating input:checked ~ label,

.rating label:hover,

.rating label:hover ~ label{

    color:#ffb400;

}





/* Checkbox */

.save-info{

    display:flex;

    align-items:center;

    gap:10px;

    margin-bottom:30px !important;

    color:#555;

}





/* Submit */

.submit-btn{

    background:#fff;

    border:2px solid #ff4f7b;

    color:#ff4f7b;

    padding:12px 30px;

    border-radius:30px;

    font-size:15px;

    cursor:pointer;

    display:inline-flex;

    align-items:center;

    gap:10px;

    transition:0.3s;

}



.submit-btn:hover{

    background:#ff4f7b;

    color:#fff;

}



.arrow{

    font-size:18px;

}



/* Calendar */

/* Input */



.select-v {

    position: relative;

    /* width: 100%; */

}

/* Overlay */

#deliveryOverlay{

    position:absolute;

    /* inset:0;

    background:rgba(0,0,0,0.6);    

    justify-content:center;

    align-items:center; */

    z-index:99;

    display:none;

    width: 600px;

    padding: 35px;

    top: 0;

    right: 0;

}



/* Popup */

#popup{

    background:#fff;

    box-shadow: 0px 10px 20px 2px rgba(0, 0, 0, 0.3);

    width:550px;

    border-radius:16px;

    padding:35px 30px;

    display:flex;

    gap:30px;

    position:relative;

}



/* Close */

#close{

    position:absolute;

    right:20px;

    top:15px;

    font-size:22px;

    cursor:pointer;

    color:#444;

    font-size: 18px;

    font-weight: 300;

}



/* LEFT */

.calendar{

    width:65%;

}



/* Header */

.cal-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:25px;

    width: 83%;

    margin: 0 auto 25px;

}



.cal-header button{

    background:none;

    border:none;

    font-size: 20px;

    cursor: pointer;

    color: #AFAFAF;

    font-weight: 400;

}



.cal-header h3{

    font-weight: 600;

    font-size: 20px;

    line-height: 100%;

    margin-bottom: 0;

}



/* Weekdays */

.weekdays{

    display: grid;

    grid-template-columns: repeat(7, 1fr);

    text-align: center;

    font-size: 14px;

    color: #000;

    font-weight: 700;

    margin-bottom: 16px;

}



/* Dates */

#dates{

    display:grid;

    grid-template-columns:repeat(7,1fr);

    gap:10px;

}



.date{

    width:35px;

    height:35px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:10px;

    cursor:pointer;

    font-size:14px;

}



.date:hover{

    background:#f1f1f1;

}



.date.active{

    background:#EF82AB;

    color:#fff;

    font-weight:600;

}



.empty{

    pointer-events:none;

}





/* RIGHT */

.time-panel{

    width:35%;

}



.time-panel h3{

    margin-top: 5px;

    margin-bottom: 20px;

    font-weight: 600;

    font-size: 20px;

    line-height: 100%;

    text-align: center;

}



/* Time slots */

.time{

    border: 1px solid #F9D9E1;

    padding: 11px 13px;

    border-radius: 12px;

    text-align: center;

    font-size: 14px;

    cursor: pointer;

    margin-bottom: 13px;

    transition: 0.2s;

    

}

.time:last-child{

    margin-bottom: 0;

}



.time:hover{

    background:#ffe5ec;

}



.time.active{

    background:#EF82AB;

    color:#fff;

}



/* Calendar ends */

.product-info .wishlist-wrap {

    display: none;

}

.woocommerce-Reviews h4.woocommerce-Reviews-title {

    display: none;

}

.woocommerce-Reviews p.note {

    display: none;

}

.woocommerce-Reviews .comment-text.review-box {

    margin: 0 0 0 0 !important;

}

.woocommerce-Reviews img.avatar.avatar-60.photo {

    display: none;

}

.woocommerce-Reviews ol.commentlist {

    padding-left: 0;

}

.woocommerce-Reviews ol.commentlist li::before{

display: none;

}

.woocommerce-Reviews .comment-text.review-box{

    border: 1px solid #ffd6dd !important;

    border-radius: 15px !important;

    padding: 25px 25px 10px !important;

    box-shadow: 0 3px 10px rgba(255, 0, 100, 0.1);

    margin-bottom: 13px !important;

}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) #reviews #comments ol.commentlist li .meta{

    color: #000;

    font-size: 20px !important;

}

time.woocommerce-review__published-date {

    font-size: 14px;

    color: #888;

    padding-left: 10px;

}

.woocommerce-Reviews .comment-text.review-box .woocommerce-review__dash {

    display: none;

}

.woocommerce .star-rating{

    font-size: 12px;

    color: #ffb400;

}

div#comments {

    border-bottom: 1px solid #ffd6dd;

    padding-bottom: 10px;

    margin-bottom: 30px;

}

span.required {

    color: red;

}

.woocommerce p.stars a{

    font-size: 17px;

    color: #ffb400;

}



.price-condition {

    width: 100%;

    justify-content: flex-start;

    align-items: center;

    gap: 10px;

}

.price-condition .custom-discount {

    right: 0;

    top: 0;

    font-size: 12px;

    line-height: normal;

    padding: 4px 9px 4px 9px;

}

.price-container {

    display: flex;

    align-items:center;

}

del.cut-price.cut-sale-price {

    margin-left:16px;

    display: flex;

    align-items: center;

    color: #A8A8A8;

 }

 del.cut-price.cut-sale-price span {

    padding-top: 0;

    color: #A8A8A8;

}



.categorylists a {

   

     color: #EF82AB;

}

.categorylists a:hover {

    color: #000;

}



del.cut-price.cut-sale-price {

    margin-left: 15px;

    display: flex;

 }

.price span.currency.initial {

    margin-top: -10px;

}

.categorylists a {

   

     color: #EF82AB;

}

.categorylists a:hover {

    color: #000;

}

/* Responsive */



@media (min-width: 1400px) {

    .two-gifting-wrap .container {

        max-width: 790px;

    }

}

@media (max-width: 991px) {



.product-gallery{

  flex-direction: column-reverse;

}

.swiper-vertical>.swiper-wrapper {

    flex-direction: row;

    gap: 10px;

}

.thumbSwiper .swiper-slide{

  width: 82px;

  margin-bottom: 0 !important;

}

.thumbSwiper {

    width: 100%;

}

.features{

  padding-left: 0;

  margin-bottom: 34px;

  margin-top: 20px;

}

.product-info {

    padding-left: 0;

}

.product-info h1 {

    font-size: 30px;

    line-height: 36px;

}

.feature{

    flex-wrap: wrap;

    justify-content: center;

    text-align: center;

    gap: 10px;

}

.feature:last-child{

  border-right: 0;

}

.form-row {

    display: block;

}

.select-v {

    margin-bottom: 10px;

}

.select-v select {

    background: url(../images/drop-arrow.svg) 96% no-repeat;

}

.bundle-box-sec {

    margin-bottom: 30px;

}

.bundle-box-img {

    border-radius: 20px;

    min-height: 155px;



}

 

}

@media (max-width:767px) {

    .second-level-tab-wrap .content p {

    margin-bottom: 0;

}

    .tab-heading a{

        width: auto;

    }

    del.cut-price.cut-sale-price {

    margin-left: 18px;

    }

    .mainSwiper img{

        height: auto;

    }

    input#deliveryInput {

    background: url(../images/calendar-ico.svg) 97% no-repeat;

}

    .youmay-like h4{

        text-align: center;

        margin-bottom: 20px;

    }

  #popup{

        width: auto;

            flex-wrap: wrap;

  }

  .time-panel {

    width: 100%;

}

.calendar {

    width: 100%;

}

#popup{

    padding:50px 12px;

}

}

@media (max-width:575px) {

    .comment-form-rating span.error {

    flex: 1 0 0;

}

        .bundle-box-sec {

        margin-bottom: 0;

    }

    #deliveryOverlay{

        width: auto;

        padding: 0;

    }

.tab-section .tab-heading {

    white-space: nowrap;

    overflow: auto;

    justify-content: start;

}

}



/* 27-02-2026 */



.mac-os .product-info h1{

    font-weight: 700;

}

.mac-os .stock{

    font-weight: 300;

}

.mac-os .price span{

    font-weight: 300;

}

.mac-os .price i{

    font-weight: 600;

}

.mac-os button, .mac-os input, .mac-os optgroup, .mac-os select, .mac-os textarea{

    font-weight: 300;

}

.mac-os .feature p{

    font-weight: 600;

}

.mac-os .quantity-number{

    font-weight: 300;

}

.mac-os .quantity-btn{

    font-weight: 300;

}

.mac-os .add-to-btn{

    font-weight: 600;

}

.mac-os .tab-heading a.active {

    font-weight: 600;

}

.mac-os .tab-heading a{

    font-weight: 300;

}

.mac-os .youmay-like h4{

    font-weight: 600;

}

.yith-wcwl-feedback-messages-container .yith-wcwl-add-to-wishlist__feedback{

    background: #ffbdda !important;

}



/* 23-06-2026 */



.two-gifting-wrap .content p {

  margin: 0 0 15px;

}

.two-gifting-wrap .content ul {

  margin-bottom: 20px;

}

.two-gifting-wrap .content ul li:last-child {

  margin-bottom: 0 !important;

}

.price-container .cut-price {

  margin-right: 15px;

}

.product-wrapper .col-lg-7 {

  position: sticky;

  top: 170px;

  height: fit-content;

}

@media only screen and (max-width: 991px){

 .product-wrapper .col-lg-7 {

  position: inherit;

  top: inherit;

  height: auto;

}

}

@media(min-width:1350px) and (max-width:1500px) {
    .product-detail-wrap .container {
        padding-left: 20px;
        padding-right: 20px;
    }

    .product-detail-wrap .product-info {
        padding-left: 56px;
    }
}

@media(max-width:575px) {
    .features {
    padding-left: 0;
}
}

