.product-thumbs {
  margin-right: -5px;
  margin-left: -5px;
}
.product-thumbs__elem {
  padding: 0 5px;
  cursor: pointer;
  opacity: 0.3;
  transition: 0.3s ease opacity;
  flex: 0 0 33.33333333%;
  max-width: 33.33333333%;
}
.product-thumbs__elem:focus, .product-thumbs__elem:hover {
  opacity: 0.6;
}
.product-thumbs__elem.swiper-slide-thumb-active {
  opacity: 1;
}
@media (min-width: 576px) {
  .product-thumbs__elem {
    flex: 0 0 25%;
    max-width: 25%;
  }
}

.product-main-images {
  position: relative;
  border: 1px solid #EFEFEF;
}
.product-main-images__modal-trigger-layer {
  position: absolute;
  z-index: 2;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  padding: 0;
  line-height: 1.6em;
  border: 0;
  color: #fff;
  text-align: center;
  opacity: 0;
  font-size: 1.25rem;
}
@media (max-width: 992px) {
  .product-main-images__modal-trigger-layer {
    font-size: calc(0.85rem + 0.6451612903vw);
  }
}
.product-main-images__modal-trigger-layer .material-icons {
  color: #fff;
  font-size: 3rem !important;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.product-main-images__modal-trigger-layer:hover {
  opacity: 1;
  background: rgba(0, 0, 0, 0.5);
}

.modal .modal-dialog.modal-lg, .modal .modal-dialog.modal-xl {
  max-width: 1200px;
  text-align: center;
}

.product-customization {
  margin: 40px 0;
}
.product-customization .product-customization-item {
  margin: 20px 0;
}
.product-customization .product-message {
  width: 100%;
  height: 3.125rem;
  padding: 0.625rem;
  resize: none;
  background: #f8f9fa;
  border: none;
}
.product-customization .product-message:focus {
  background-color: #fff;
  outline: 0.1875rem solid #007bff;
}
.product-customization .file-input {
  position: absolute;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 2.625rem;
  overflow: hidden;
  cursor: pointer;
  opacity: 0;
}
.product-customization .customization-message {
  margin-top: 20px;
}
.product-customization .custom-file {
  position: relative;
  display: block;
  width: 100%;
  height: 2.625rem;
  margin-top: 20px;
  line-height: 2.625rem;
  color: #6c757d;
  text-indent: 0.625rem;
  background: #f8f9fa;
}
.product-customization .custom-file button {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 0;
}
.product-customization small {
  color: #6c757d;
}

.js-product-container .product-title {
  color: #1D3865;
  max-width: 28.125rem;
  width: 100%;
  margin-bottom: 0px;
  line-height: 34px;
}
.js-product-container .title-manufacturer {
  display: flex;
}
.js-product-container .title-manufacturer .product-manufacturer {
  max-width: 175px;
  width: 100%;
  padding-top: 7px;
  margin-left: auto;
}
.js-product-container .title-manufacturer .product-manufacturer img {
  width: 100%;
  height: auto;
}
@media (max-width: 767px) {
  .js-product-container .title-manufacturer {
    display: block;
    text-align: left;
  }
  .js-product-container .title-manufacturer .product-manufacturer {
    padding-top: 0px;
    margin-left: auto;
  }
}
.js-product-container .product-reference label {
  margin-bottom: 0px;
}
.js-product-container .js-product-prices {
  padding: 20px 0 0 0;
}
.js-product-container h2 {
  color: #1D3865;
  margin-bottom: 0px;
  line-height: normal;
}

.product-attachments {
  padding: 3.5rem 0px;
  margin-top: 4rem;
  margin-bottom: 4rem;
  border-top: 1px solid #B5B5B5;
  border-bottom: 1px solid #B5B5B5;
}

.js-product-actions .availability {
  justify-content: unset;
  gap: 40px;
}
.js-product-actions .availability li {
  font-size: 1.125rem;
}
.js-product-actions .js-product-availability .badge {
  background: none;
  color: red;
  font-weight: 300;
  font-size: 1.125rem;
  padding: 0px;
  margin: 0.3rem 0 !important;
}
.js-product-actions .branch-availibility ul li {
  font-size: 1.125rem;
  padding: 0.3rem 0;
}

.product-add-to-cart .product-quantity {
  margin: 0px;
  flex-wrap: wrap;
  justify-content: left;
  text-align: left !important;
  align-items: flex-start !important;
  max-width: 570px;
}
.product-add-to-cart .product-quantity .qty {
  padding: 0px;
  max-width: 150px;
  width: 50%;
  margin-right: 20px;
}
.product-add-to-cart .product-quantity .add {
  width: calc(100% - 170px);
}
.product-add-to-cart .product-quantity .js-product-actions-buttons {
  padding: 0px;
  width: calc(100% - 170px);
  margin-left: auto;
  margin-top: 10px;
}
@media (max-width: 767px) {
  .product-add-to-cart .product-quantity {
    flex-direction: column;
    max-width: 100%;
  }
  .product-add-to-cart .product-quantity .add {
    width: 100%;
    margin-top: 20px;
  }
  .product-add-to-cart .product-quantity .js-product-actions-buttons {
    width: 100%;
    margin-top: 20px;
  }
}

.js-product-actions-buttons div {
  margin: 0px !important;
  padding: 0px !important;
  width: 100% !important;
  margin-left: auto !important;
}
.js-product-actions-buttons div .paypal-buttons {
  height: 50px !important;
  min-height: 50px !important;
  background: #ffc439;
}
.js-product-actions-buttons div .paypal-buttons:hover {
  filter: brightness(0.95) !important;
}
.js-product-actions-buttons div .paypal-buttons iframe {
  top: 8px !important;
}
@media (max-width: 767px) {
  .js-product-actions-buttons div .paypal-buttons {
    product-availabilitymin-width: 264px !important;
  }
}

#blockcart-modal .btn {
  color: #fff;
}

.product-description {
  margin: 1rem 0;
}

@media (min-width: 1200px) {
  #product #main {
    padding: 0 75px;
  }
}
@media (max-width: 767px) {
  #product .product-container .col-md-7 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  #product .product-container .col-md-5 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
.badge-danger {
  border-radius: unset;
  font-weight: 400;
  background: #1D3865;
}

.product-add-to-cart {
  margin-top: 2rem;
}

@media (min-width: 1200px) {
  .product-features {
    margin: 4rem 0 4rem 0;
  }
}
.product-features .row {
  margin: 0px;
}
@media (max-width: 767px) {
  .product-features dl dt {
    max-width: 42% !important;
    flex: 0 0 42%;
  }
  .product-features dl dd {
    width: 58% !important;
    flex: 0 0 58%;
  }
}

@media (max-width: 1099px) {
  .product-container.js-product-container .col-md-7,
  .product-container.js-product-container .col-md-5 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

#blockcart-modal .modal-footer .btn.btn-primary {
  background: #24B9D7;
}
#blockcart-modal .modal-footer .btn.btn-primary:hover {
  background: #1D3865;
}
#blockcart-modal .modal-footer button.btn {
  background: #1D3865;
}
#blockcart-modal .modal-footer button.btn:hover {
  background: #24B9D7;
}

.attribute-radio__label {
  position: relative;
  margin: 0;
}
.attribute-radio__input {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  opacity: 0;
}
.attribute-radio__input:checked ~ .attribute-radio__text {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.attribute-radio__text {
  display: block;
  min-width: 2.1875rem;
  padding: 5px 10px;
  font-size: 0.875rem;
  font-weight: 700;
  text-align: center;
  border: 1px solid #dee2e6;
  border-radius: 0.4rem;
}
