﻿/* CONTAINER PADDING ETC */


.container.no-padding {
  padding-right: 0;
  padding-left: 0;
}

.overview, .media-block, .info-block {
  --bs-gutter-x: 3rem;
  padding-right: calc(var(--bs-gutter-x) * .5);
  padding-left: calc(var(--bs-gutter-x) * .5);
}

@media(min-width: 992px) {

  .container.no-padding {
    padding-right: calc(var(--bs-gutter-x) * .5);
    padding-left: calc(var(--bs-gutter-x) * .5);
  }

  .overview, .media-block, .info-block {
    padding-right: 0;
    padding-left: 0;
  }
}

/* BREADCRUMB */

.product-breadcrumb {
  margin-top: 0.875rem;
  margin-bottom: 1.5rem;
}

  .product-breadcrumb ul {
    font-size: 0;
  }

  .product-breadcrumb li {
    display: inline-block;
  }

    .product-breadcrumb li * {
      display: inline-block;
      font-size: 0.75rem;
      line-height: 1.125rem;
      letter-spacing: 0.004rem;
      color: var(--tertiary-color);
    }

  .product-breadcrumb strong {
    font-weight: normal;
  }

.product-breadcrumb li {
  font-weight: var(--font-family-san-weight-normal);
}

  .product-breadcrumb li:last-child {
    font-weight: var(--font-family-san-weight-light);
  }

  .product-breadcrumb li a:hover {
    text-decoration: none;
  }

  .product-breadcrumb .delimiter {
    margin: 0 5px 0 5px;
  }

@media all and (min-width:992px) {

  .product-breadcrumb li * {
    font-size: 1rem;
    line-height: 1.5rem;
    letter-spacing: 0.005rem;
  }
}


/* MEDIA BLOCK */

.media-block {
    margin-bottom: 2rem;
}

.media-block picture {
  display: block;
}

.main-product-img {
  margin-bottom: 0.375rem;
}

.media-block .mobile-swiper-wrapper {
  display: flex;
  flex-direction: row;
  align-items: center;
}

/* need for hover so image is not cut off with overflow */
.swiper-desk {
  padding: 5px;
  margin: -5px;
}


.swiper-mobile .swiper-slide,
.swiper-desk .swiper-slide 
{
  display: contents;
  cursor: pointer;
}


  .swiper-mobile .swiper-slide img,
  .swiper-desk .swiper-slide img {
    transition: all .2s ease-in-out;
    opacity: 0.5;
  }

  .swiper-mobile .swiper-slide img:hover,
  .swiper-desk .swiper-slide img:hover {
    transform: scale(1.05);
    opacity: 1;
  }

.desk-swiper-button-next,
.desk-swiper-button-prev {
  display: block;
  text-align: center;
  height: 1rem;
  color: var(--primary-color);
}

.desk-swiper-button-prev {
  margin-bottom: 1rem;
}

  .desk-swiper-button-next {
      margin-top: 1rem;
  }

  .swiper-mobile .swiper-slide img {
    margin-right: 4px;
  }

.swiper-mobile .swiper-slide:last-child img {
  margin-right: 0px;
}

.swiper-desk .swiper-slide img {
  margin-bottom: 4px;
}

  .swiper-desk .swiper-slide:last-child img {
    margin-bottom: 0px;
  }

.media-block .desk-swiper-wrapper {
  display: none;
}

@media(min-width: 992px) {

  .media-block .mobile-swiper-wrapper {
    display: none;
  }

  .media-block .desk-swiper-wrapper {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 631px;
  }
}

/* OVERVIEW & TITLE */

.overview .product-name h1 {
  font-family: var(--font-family-serif);
  font-size: 2rem;
  text-transform: uppercase;
  line-height: 2.5rem;
  letter-spacing: 0.15rem;
}

  .overview .discontinued-product {
    background: #f3f3f3;
    margin: 0 0 20px;
  }

    .overview .discontinued-product h4 {
      display: inline-block;
      font-size: 14px;
      padding: 17px 17px 17px 40px;
      background: url('../images/discontinued-product-icon.png') no-repeat 13px center;
      color: #de444c;
    }

@media(min-width: 992px) {

  .overview .product-name h1 {
    font-size: 2.5rem;
    line-height: 3rem;
    letter-spacing: 0.188rem;
  }
}


/* YOTPO STARS */

.overview .yotpo .yotpo-bottomline .yotpo-icon-star,
.overview .yotpo .yotpo-bottomline .yotpo-icon-half-star,
.overview .yotpo .yotpo-bottomline .yotpo-icon-empty-star {
  color: var(--color-review-star);
}

.overview .yotpo .yotpo-bottomline a,
.overview .yotpo .yotpo-bottomline a:hover {
  color: var(--btn-outline-dark2) !important;
  display: inline-block;
  margin-left: 0.375rem;
}

/* PRICE */

  .prices-block {
    margin: 1.25rem 0 2rem 0;
    display: flex;
    background: linear-gradient(180deg, rgba(0,0,0,0) calc(50% - 1px), rgba(220,216,210,1) calc(50%), rgba(0,0,0,0) calc(50% + 1px) );
  }

    .prices-block .price-holder {
      background-color: #fff;
      padding-right: 0.625rem;
      color: var(--tertiary-color);
      font-size: 1.25rem;
      font-weight: 700;
    }

    .prices-block .old-price,
    .prices-block .old-price-holder {
      color: var(--color-highlight);
      text-decoration: line-through;
    }

    .prices-block .actual-price {
      margin: 0 5px 0 0;
      color: var(--tertiary-color);
    }

    .prices-block .postfix-price {
      font-size: 1.25rem;
    }


/* PRODUCT SELECTION */

.selection-block select {
  width: 100%;
  height: 3rem;
  border: 1px solid var(--border-light);
}

.select2-container--default .select2-selection--single {
  border: 1px solid var(--border-light);
  border-radius: 0;
  height: 3rem;
}

  .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--tertiary-color);
    line-height: 48px;
  }

.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #ddd;
}

/* This makes the custom arrow rotate. */
.select2-container--open .select2-selection__arrow {
  transform: rotate(180deg) !important;
}


/* arrow container */
.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 35px;
  top: 50%;
  right: 0px;
  width: 35px;
  margin-top: -15px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s ease-in-out;
}

  /*the arrow itself */
  .select2-container--default .select2-selection--single .select2-selection__arrow b {
    background-image: var(--select-chevron-url);
    background-size: contain;
    border: none !important;
    height: 20px !important;
    width: 20px !important;
    margin: auto !important;
    top: auto !important;
    left: auto !important;
  }


.selection-block {
  background-color: var(--primary-bg);
  padding: 1.5rem;
}

    .selection-block p,
    .selection-block label {
      font-weight: 700;
      font-size: 0.875rem;
      color: var(--tertiary-color);
      margin: 0 0 0.25rem 0;
      display: block;
    }

#product-select {
    margin:0
}

#dimensions-block {
  margin: 0.25rem 0 0 0;
  font-size: 0.875rem;
}

p.enter-qty-heading {
    margin-top: 1rem;
}

.qty-inputs {
  display: inline-flex;
  justify-items: center;
  align-items: center;
  background-color: #fff;
  width: 100%;
  height: 3rem;
}

    .qty-inputs input[type=number]::-webkit-inner-spin-button,
    .qty-inputs input[type=number]::-webkit-outer-spin-button {
      -webkit-appearance: none;
      margin: 0;
    }

    .qty-inputs .input-wrapper {
      min-width: 6.25rem;
      text-align: center;
      background-color: #ffffff;
      padding: 0;
      width: 100%;
    }

    .qty-inputs .input {
      border: none;
      background-color: #ffffff;
      font-size: 1rem;
      padding: 0;
    }

    .qty-inputs .input {
      text-align: left;
    }

    .qty-inputs .equals {
      font-size: 1rem;
      background: linear-gradient(90deg, rgba(0,0,0,0) calc(50% - 1px), rgba(220,216,210,1) calc(50%), rgba(0,0,0,0) calc(50% + 1px) );
      background-color: #fff;
      padding: 0;
      height: 100%;
      display: flex;
      align-items: center;
    }

  .qty-inputs .equals .symbol {
      font-size: smaller;
  }


  /* https://css-tricks.com/auto-growing-inputs-textareas/*/
  .input-wrap {
    position: relative;
  }

    .input-wrap .input {
      position: absolute;
      width: 100%;
      left: 0;
    }

  .width-machine {
    /* Sort of a magic number to add extra space for number spinner */
    /*padding: 0 1rem;*/
    font-size: 1rem;
  }

  .qty-inputs .suffix {
    padding: 0;
    display: inline-block;
    position: relative;
  }


@media(min-width: 992px) {

  .qty-inputs {
    width: auto;
  }

}

/* TOTALS */

total-wrapper {
    margin-top: 3rem;
}

.total-label {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 0.875rem;
}

.total-price {
  font-size: 1.5rem;
  font-weight: 700;
}

.calculate-price,
.delivery-date-from {
  font-size: 0.875rem;
  margin: 0;
}

@media(min-width: 992px) {

  total-wrapper {
    margin-top: 0;
  }
}



/* WASTE CHOICE*/
.waste-choice-container {
  padding: 0;
  max-height: 0;
  transition: max-height 3s ease-out;
  overflow: hidden;
}

  .waste-choice-container.visible {
    max-height: 200px;
    padding: 1rem 0 1rem 0;
    border-top: 1px solid var(--border-light);
    border-bottom: 1px solid var(--border-light);
  }

  .waste-choice-container .switch-label-wrapper {
    display: flex;
  }

  .waste-choice-container .waste-choice-label {
    font-size: 0.875rem;
    font-weight: bold;
    color: var(--tertiary-color);
    cursor: pointer;
  }

  .waste-choice-container .waste-choice-notes {
      margin-top: 1rem;
      font-size: 0.75rem;
      color: var(--tertiary-color);
      font-weight:normal;
      display: none;
  }

  .waste-choice-container .waste-choice-label i {
    transition: transform 0.3s ease-out;
  }

  .waste-choice-container .waste-choice-label.open i {
    transform: rotate(180deg);
  }


    /* The switch - the box around the slider */
    .waste-choice-container .switch {
      position: relative;
      display: inline-block;
      width: 40px;
      height: 20px;
      margin-right: 5px;
      margin-top: 0;
    }

      /* Hide default HTML checkbox */
      .waste-choice-container .switch input {
        opacity: 0;
        width: 0;
        height: 0;
      }

    /* The slider */
    .waste-choice-container .slider {
      position: absolute;
      cursor: pointer;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background-color: #B7B5B1;
      -webkit-transition: .4s;
      transition: .4s;
    }

      .waste-choice-container .slider:before {
        position: absolute;
        content: "";
        height: 16px;
        width: 16px;
        left: 2px;
        bottom: 2px;
        background-color: white;
        -webkit-transition: .4s;
        transition: .4s;
      }

    .waste-choice-container input:checked + .slider {
      background-color: #499d09;
    }

    .waste-choice-container input:focus + .slider {
      box-shadow: 0 0 1px #499d09;
    }

    .waste-choice-container input:checked + .slider:before {
      -webkit-transform: translateX(20px);
      -ms-transform: translateX(20px);
      transform: translateX(20px);
    }

    /* Rounded sliders */
    .waste-choice-container .slider.round {
      border-radius: 30px;
    }

      .waste-choice-container .slider.round:before {
        border-radius: 50%;
      }

#calculate-price-link-wrapper {
  margin-top: 1.5rem;
  margin-bottom: 1.75rem;

}

#calculate-price-link-wrapper p {
  color: var(--primary-link-color);
  text-decoration: underline;
}

  #calculate-price-link-wrapper .calculate-price a {
    color: var(--primary-link-color);
    text-decoration: underline;
  }



/* BUYING BUTTONS */
.product-buttons button {
  margin-top: 1.5rem;
}


/* CONTACT POINTS BLOCK*/
.contact-block {
  background-color: var(--section-primary-bg);
  padding: 1.5rem;
}

    .contact-block li {
      background-repeat: no-repeat;
      background-position: 0 50%;
      padding-left: 2rem;
      min-height: 1rem;
      display: block;
    }

    .contact-block li a {
      color: inherit;
      text-decoration: underline;
    }

      .contact-block li.icon-van {
        background-image: url('../images/Icon-van.svg');
        background-position-x: 2px;
      }

      .contact-block li.icon-present {
        background-image: url('../images/icon-present.svg');
        background-position-x: 3px;
      }

      .contact-block li.icon-shapes {
        background-image: url('../images/icon-shapes.svg');
        background-position-x: 0;
      }

      .contact-block li.icon-phone {
        background-image: url('../images/Icon-phone.svg');
        background-position-x: 4px;
      }


  .info-block h2 {
    font-size: 1.5rem;
    color: var(--tertiary-color);
    line-height: 2rem;
    letter-spacing: 0.113rem;
    font-family: var(--font-family-serif);
    font-weight: var(--font-family-serif-weight-normal);
    text-transform: uppercase;
    margin: 1.5rem 0 1.5rem 0;
  }

  .info-accordion {
    border-bottom: 1px solid var(--border-mid);
    padding: 0;
    background-color: #fff;
  }

  .info-accordion details {
    padding-bottom: 0;
    transition: padding-bottom 0.3s ease-out;
  }

  .info-accordion details.open {
      padding-bottom: 1rem;
    }

  .info-accordion summary {
    font-weight: 500;
    font-size: 1rem;
    border-top: 1px solid var(--border-mid);
    padding: 1.063rem 0 1.063rem 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .info-accordion:first-child summary {
    border-top: none;
  }

  .info-accordion details summary i {
    transition: transform 0.3s ease-out;
  }

  .info-accordion details.open summary i {
    transform: rotate(180deg);
  }

.info-accordion__body h2,
.info-accordion__body h3,
.info-accordion__body h4 {
  font-size: 1rem;
  font-weight: 500;
}

@media(min-width: 992px) {
  .info-block h2 {
    font-size: 2rem;
    line-height: 2.5rem;
    letter-spacing: 0.15rem;
  }
}

.specs-list li {
  background-repeat: no-repeat;
  background-position: 0 50%;
  padding-left: 1.5rem;
  min-height: 1rem;
  display: block;
}
  .specs-list li:first-letter {
    text-transform: uppercase;
  }

  .specs-list li.icon-living {
    background-image: url('../images/Icon-sofa.svg');
    background-position-x: 0;
  }

  .specs-list li.icon-kitchen{
    background-image: url('../images/Icon-kitchen.svg');
    background-position-x: 0;
  }

  .specs-list li.icon-bathroom {
    background-image: url('../images/Icon-bath.svg');
    background-position-x: 0;
  }

  .specs-list li.icon-floor {
    background-image: url('../images/Icon-floors.svg');
    background-position-x: 0;
  }

  .specs-list li.icon-wall {
    background-image: url('../images/Icon-wall.svg');
    background-position-x: 0;
  }

  .specs-list li.icon-outdoor {
    background-image: url('../images/Icon-outdoor.svg');
    background-position-x: 0;
  }

  .specs-list li.icon-indoor-outdoor {
    background-image: url('../images/Icon-indoor-outdoor.svg');
    background-position-x: 0;
  }


.product-essential {
  padding: 0 0 10px;
}

  .section-recently-viewed-products,
  .section-related-products {
    background-color: #E2E8DB;
  }

  .section-related-products {
    padding: 6rem 0 0 0;
  }

  .section-recently-viewed-products {
    padding: 5.5rem 0 5.5rem 0;
  }

    .section-recently-viewed-products h2,
    .section-related-products h2 {
      font-family: var(--font-family-serif);
      font-size: 2.5rem;
      font-weight: normal;
      line-height: 3rem;
      letter-spacing: 0.188rem;
      color: var(--tertiary-color);
      text-transform: uppercase;
    }


/* YOTPO REVIEWS */
.section-reviews .yotpo .yotpo-regular-box {
    margin: 0;
}