/*
 Theme Name:   Elementor Child Pebbl and Ink
 Description:  Custom child theme for Pebbl and Ink, based on Hello Elementor.
 Author:       Anwar Baksh @ DigitalSpawn
 Template:     hello-elementor
 Version:      1.0.0
 Text Domain:  elementor-child-pebblandink
*/

/* div, p, span, form, label, select, input, textarea,h1,h2, h3, h4, h5, h6 {
outline: 1px solid red
} */

:root {
  --primary-color: #133598;
  --secondary-color: #b36875;
}

body.woocommerce-page div.page-content {
  padding: 0px 30px;
}


#maincont .woocommerce-notices-wrapper {
  max-width: 1340px;
  margin: 0 auto;
}

#maincont ul {
  margin-bottom:15px;
  margin-block-end: 15px !important;
}

.box-product-content {
  max-width: 1380px;
  margin: auto;
  padding:20px;
  display:flex;
}

.bpc-product-details {
  flex:1.618;
  padding:0px 40px 0px 0px;
  flex-direction: column;
  min-width: 300px;
}

.bpc-product-options h1.product_title {
  font-size: 25px;
  font-weight: 700;
  margin-bottom:20px;
}

.bpc-product-options .woocommerce-product-rating {
  display: flex;
  gap: 10px;
  margin-bottom:20px;
}

/* Star rating color */
.woocommerce-product-rating .star-rating::before,
.woocommerce-product-rating .star-rating span::before {
  color: #f5c518;
}

/* Custom star rating using unicode characters */
.woocommerce-product-rating .star-rating-custom {
  color: #f5c518;
  font-size: 26px;
  margin-right: 4px;
  line-height: 20px;
}

.bpc-product-short-desc p {
  margin-bottom:0px !important;
  padding:0px
}

.bpc-popts-section {
  margin-bottom: 30px;
  border-bottom: 1px dotted #b36874;
  padding-bottom: 30px;
}


.bpc-product-options h2.product_subtitle {font-size: 15px;}

.bpc-product-options {
  flex:1;
  padding:0px 0px 0px 40px;
  flex-direction: column;
  min-width: 300px;
}


.bpc-product-options select, .bpc-product-options input[type="text"] {
  max-width: 100%;
  padding: 8px;
  margin-top: 5px;
  margin-bottom: 15px;
}

.bpc-product-options .select-with-search{
  position: absolute;
}

.bpc-product-options input.custom-select-display {
  padding:3px 5px !important;
  max-width:300px;
  border:1px solid rgb(204, 204, 204) !important;
  cursor:text;
  text-wrap: nowrap
}

.bpc-product-options input.custom-select-display:focus{
  border:1px solid #b36875 !important
}

.school-search-wrapper,
.state-select-wrapper {
  position: relative;
  display: inline-block;
  width:300px;
}

.school-search-wrapper .clear-search,
.state-select-wrapper .clear-search {
  position: absolute;
  right: 5px;
  top: 12.5px;
  font-size: 15px;
  line-height: 15px;
  text-align: center;
  cursor: pointer;
  z-index: 2;
  opacity:0;
}
.school-search-wrapper .clear-search.hassearchtext,
.state-select-wrapper .clear-search.hassearchtext {
  opacity:1;
}

.bpc-product-options .custom-dropdown {
    padding: 5px;
    background: #b267737a;
    position: absolute;
    margin-top: -10px;
    margin-left: 65px;
}

.bpc-product-options .custom-option {
  background: #fff;
  margin-bottom: 3px;
  font-size: 12px;
  font-weight: 500;
}

.bpc-product-options .school-grade label {
  width:60px;
  display:inline-block;
}

.bpc-product-options .fine-text {
  font-size: 10px;
  color: #666;
  font-weight:500;
  margin-bottom: 0px;
}

.add-missing-school {
  font-size:12px;
  line-height:16px;
}
.add-missing-school span{
color:#333333;
font-weight:600;
}

#childName.input-error {
border: 2px dotted #e71717;
}

#childNameError {
color: #e71717;
font-size: 12px;
margin-top: -10px;
margin-bottom: 10px;
}

.good-msg {
background: #d4edda;
color: #155724;
border: 1px solid #c3e6cb;
padding: 8px;
border-radius: 4px;
font-size: 12px;
margin-top: 10px;
}

.bad-msg {
background: #ffe6f0;
color: var(--secondary-color);
border: 1px solid #e9b8bd;
padding: 8px;
border-radius: 4px;
font-size: 12px;
margin-top: 10px;
}

#personalizationInfo {
background: #d4edda;
color: #155724;
border: 1px solid #c3e6cb;
padding: 8px;
border-radius: 4px;
font-size: 12px;
margin-top: 10px;
}

.tier-boxes {
  display: flex;
  justify-content: space-between;
}
.tier {
  border: 1px solid #ccc;
  padding: 10px;
  flex: 1;
  margin-right: 10px;
  cursor: pointer;
  font-size: 14px;
  line-height: 18px;
}
.tier.selected {
  border: 2px solid #b66b75;
}
.tier:last-child {
  margin-right: 0;
}
.extras, .supply-list {
  margin-top: 20px;
}
.supply-list label, .extras label {
  display: block;
}

.bundle-info {
  margin-top: 5px;
  font-weight: 600;
  font-size: 13px;
}
.bundle-info .original-price {
  text-decoration: line-through;
  margin-left: 5px;
  color: #777;
}

.give-one-message {
  background: #d4edda;
  color: #155724;
  border: 1px solid #c3e6cb;
  padding: 8px;
  border-radius: 4px;
  font-size: 12px;
  margin-top: 10px;
}
.total {
  font-size: 1.2em;
  margin-top: 20px;
}

.supply-box-product #custom-content{
  max-width: 1380px;
  margin: auto;
  padding:40px 20px;
  display:flex;
}

#supplies-container {
  font-size:14px;
  margin-bottom:15px;
}

#supplies-container img{
  height:26px;
  width:26px;
  display:none;
}
#supplies-container.loading img{
  display:inline-block;
}

#supplies-container.loading span.selschoolmsg {
  display:none;
}

#supplies-container.noresults{
  height:36px;
  overflow-y: auto;
  padding:5px;
  border: 2px dotted #e71717;
  background-color: #c989953d;
  border-radius: 3px;
}

#supplies-container.noresults img, 
#supplies-container.hassupplies img{
  display:none;
}

#supplies-container.hassupplies{
  height:300px;
  overflow-y: auto;
  padding:5px;
  border: 1px solid #ccc;
  background-color: #c989953d;
  border-radius: 3px;
}

#supplies-container ul{
  list-style-type: none;
  margin-left:0px;
  padding-left: 0;
}

#supplies-container ul li{
  background:#fff;
  margin-bottom:5px;
  padding:5px;
  box-shadow:0px 1px 1px 1px #ddd;
  border-radius:3px;
}

#supplies-container ul li.item-with-choices {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#supplies-container ul li.item-with-choices span.or {
  font-size: 10px;
  font-weight: 500;
  padding-top: 3px;
  padding-bottom: 3px;
}

#supplies-container ul li.item-with-choices span.related-subject {
  font-size: 10px;
  background: #b36974;
  padding: 0px 5px;
  border-radius: 30px;
  color: #fff;
  display:inline-block;
  margin-right:10px
}

#supplies-container ul li label{
  font-size:12px;
  line-height:18px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap:10px;
}

#supplies-container ul li label span.sbpitem-name{
  flex-basis:100%;
  outline:1px solid red
}

/* Home Sliders */

.desktop-home-slider {
  display: block;
}
.tablet-home-slider {
  display: none;
}
.mobile-home-slider {
  display: none;
}


.elementor-repeater-item-6874361 .elementor-slide-heading,
.elementor-repeater-item-6874361 .elementor-slide-description {
    color:#333;
}

.cycle-slideshow, .pai-slideshow { overflow:hidden;  }
.cycle-pager { 
    display:flex; 
    gap:10px; 
    position: static; 
    margin:10px 0;
    margin-left: -40px;
    justify-content: center;
    list-style: none;
}
.cycle-pager li {
    cursor:pointer;
    border-radius:10px; 
    box-shadow: inset 0px 0px 10px rgba(0,0,0,0.2);
}
.cycle-pager li.cycle-pager-active:after, .cycle-pager li:hover:after{
    content:'';
    display:block;
    width:40px;
    height:62.5px;
    margin:auto;
    margin-top:10px;
    border-bottom:3px solid #000;
    opacity:0.3;
}
.cycle-pager li.cycle-pager-active:after{
    opacity:1;
}

.mobile-big-view {
    display:none; 
    position: absolute; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%; 
    background-color: rgba(0,0,0,0.5); 
    z-index: 10;
}
.magnifier {
    position: absolute; 
    top: 0; 
    left: 0; 
    width:120px; 
    height:120px; 
    border-radius: 50%;
    border:2px solid #fff;
    z-index: 100;
    display:none;
}
.pai-slideshow:hover .magnifier {
    display:block;
}

.bpc-product-image {
  position: relative;
  margin-bottom:30px;
}

ul.flex-direction-nav {
  position: absolute;
  top: 43%;
  width: 100%;
  display: flex;
  list-style: none;
  justify-content: space-between;
  margin-left:-20px
}

  ul.flex-direction-nav li a {
  text-align: center;
  color: #333;
  text-decoration: none;
  /* background: #ccc; */
  width: 32px;
  height: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  padding: 0px;
}
#prev4 svg, #next4 svg{
  fill:var(--secondary-color);
  width:30px;
  height:30px;
  transition: fill 0.3s ease;
}
#prev4 svg:hover, #next4 svg:hover{
  fill:var(--primary-color);
}
#prev4 svg g, #next4 svg g{
  fill:#ffffff;
  transition: fill 0.3s ease;
}
#prev4 svg:hover g, #next4 svg:hover g{
  fill:var(--primary-color);
}

#mobile-desc-toggle {
  display: none;
}

/* WooCommerce Product Page Edits */
.woocommerce-price-suffix {
  display:none;
}

.premium-woocommerce .premium-woo-products-details-wrap {
  padding:0px;
}

.premium-woo-product-desc {
  margin-bottom: 15px;
  margin-top: 15px;
}

.premium-woocommerce li.product .price {
  margin-bottom:15px;
}

.premium-woocommerce li.product .price .amount {
  font-family: "Poppins", Sans-serif;
  font-size: 22px;
  font-weight: 400;
  color: #000000;
}

.premium-woo-product__link .woocommerce-loop-product__title {
  font-family: "Poppins", Sans-serif;
  font-size: 20px;
  font-weight: 400;
  color: #000000;
  margin-top:20px;
  width: 90%;
  line-height: 30px;
}

.premium-woo-products-details-wrap .premium-woo-atc-button .button {
  background-color: #FFFFFF;
  font-family: "Josefin Sans", Sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1em;
  fill: #DA7B93;
  color: #DA7B93;
  border-style: solid;
  border-width: 1px 1px 1px 1px;
  border-color: #DA7B93;
  border-radius: 4px 4px 4px 4px;
  padding: 1em 1.5em 1em 1.5em;
  text-transform: capitalize;
}

.premium-woo-products-details-wrap .premium-woo-atc-button .button:hover {
  background-color: #DA7B93;
  color: #FFFFFF;
}

.premium-woo-products-details-wrap .premium-woo-atc-button .view-more-button{
  background-color: #DA7B93;
  font-family: "Josefin Sans", Sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1em;
  border-style: solid;
  border-width: 1px 1px 1px 1px;
  border-color: #DA7B93;
  border-radius: 4px 4px 4px 4px;
  padding: 1em 1.5em 1em 1.5em;
  color:#fff;
}

.premium-woo-products-details-wrap .premium-woo-atc-button .view-more-button:hover {
  color: #DA7B93;
  background-color: #FFFFFF;
}

.premium-woocommerce .premium-woo-products-inner ul.products {
  justify-content: center;
}

body.page-id-4661 .elementor-widget-container h2.elementor-heading-title{
  text-align:center;
}

body.product-template-default div.product h1.entry-title {
  font-size:26px !important;
}

body.product-template-default .related h2 {
  font-size:22px;
}

body.product-template-default div.product {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}

body.product-template-default div.product .woocommerce-product-gallery{
  flex-basis: 48%;
  min-width: 260px;
}

body.product-template-default div.product div.summary {
  flex-basis: 48%;
  min-width: 260px;
}

body.product-template-default div.product .related {
  flex-basis: 100%;
  min-width: 100%;
}

body.product-template-default div.product .quantity .qty {
  width: 60px;
  text-align:left;
  padding:13px;
  border:1px solid #ccc;
}
body.product-template-default div.product .single_add_to_cart_button {
  background-color: #DA7B93;
  font-family: "Josefin Sans", Sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1em;
  border-style: solid;
  border-width: 1px 1px 1px 1px;
  border-color: #DA7B93;
  border-radius: 4px 4px 4px 4px;
  padding: 1em 1.5em 1em 1.5em;
  color: #fff;
}

body.product-template-default div.product .single_add_to_cart_button:hover {
  background-color:#fff;
  color: #DA7B93;
  border-color: #DA7B93;
}

#product-feedback {
  max-width: 900px;
  margin: 0px auto;
  margin-top:30px;
  background: #f7f5f5;
  padding: 15px;
  border-radius: 10px;
}

body.page-template-template-supply-box-product h2.woocommerce-Reviews-title {
  font-size: 24px;
  font-weight: 500;
  margin-bottom: 20px;
}

body.page-template-template-supply-box-product .commentlist {
  list-style: none;
  margin-left: -40px;
}

body.page-template-template-supply-box-product .review {
  background: #fff;
  padding: 15px;
  border-radius: 10px;
  margin-bottom: 20px;
}

body.page-template-template-supply-box-product .review .comment_container {
  display: flex;
  gap: 20px;
}

body.page-template-template-supply-box-product .review .comment_container img{
  max-height:60px;
}

/* Responsive Styles */
@media (max-width: 1200px) {
  .wp-image-809 {
    max-width:196px !important;
  }

  .desktop-home-slider {
    display: none;
  }
  .tablet-home-slider {
    display: block;
  }
  .mobile-home-slider {
    display: none;
  }
  
  .box-product-content {
    flex-wrap:wrap;
  }
  
  .bpc-product-details, .bpc-product-options {
    flex-basis:100%;
    width:100%;
    min-width:100%;
    padding:0px;
    margin:0px auto;
  }
  
  .bpc-popts-section label {
    font-size:12px !important
  }

  .bpc-product-description {
    height:260px;
    overflow-y: auto;
  }
}

@media screen and (min-width: 1081px) {
  .cycle-slideshow, .pai-slideshow {
      width: 100%;
      height: 675px;
  }
  .cycle-slideshow img, .pai-slideshow img{
      width: 100%;
      height: 675px;
      object-fit: cover;
      object-position: center center;
  }

}

@media screen and (max-width: 1081px) {
  .box-product-content {
    padding:0px 20px;
  }
}

@media (max-width: 768px) {
  .desktop-home-slider {
    display: none !important;
  }
  .tablet-home-slider {
    display: none !important;
  }
  .mobile-home-slider {
    display: block !important;
  }

  /* Single Product Gallery */
  body.product-template-default div.product .woocommerce-product-gallery{
    flex-basis: 100%;
    min-width: 100%;
  }

  body.product-template-default div.product div.summary {
    flex-basis:100%;
    min-width: 100%;
  }

  body.product-template-default div.product .related {
    flex-basis: 100%;
    min-width: 100%;
  }
}

@media screen and (max-width: 600px) {
  .cycle-pager {
          display: none;
  }

  body.page-template-template-supply-box-product .review .comment_container {
    flex-wrap:wrap;
  }
}

@media (max-width: 768px) {
  #mobile-desc-toggle {
    display: flex;
    align-items: center;
    gap: 5px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 10px;
    justify-content: space-between;
    border: 1px solid #daeaea;
    padding: 10px;
  }

  #mobile-desc-toggle svg {
    transition: transform 0.3s;
  }

  #mobile-desc-toggle.open svg {
    transform: rotate(180deg);
  }

  .bpc-product-description {
    display: none;
    height: 260px;
    overflow-y: auto;
  }

  .bpc-product-description.open {
    display: block;
  }
}

/* Review tabs */
#product-feedback .review-tabs {
  display: flex;
  gap: 10px;
  margin-bottom: 15px;
}

#product-feedback .review-tab {
  background: #f0f0f0;
  border: 1px solid #ccc;
  padding: 8px 12px;
  cursor: pointer;
  color: #333;
}

#product-feedback .review-tab.active {
  background: #fff;
  border-bottom: none;
  font-weight: 600;
  color: #000;
}

#product-feedback #review_form_wrapper {
  display: none;
}