/* Variables */
/* Important Force Overrides */
.bundle-builder-app--bundle--product-select {
  display: inline-block !important;
  max-width: 200px;
  margin-bottom: 20px;
}

/* Main CSS (to be minified) */
#bundle-builder-app--bundle--root {
  padding-left: 55px;
  padding-right: 55px;
  max-width: 1200px;
  margin: 0 auto;
}

.bundle-builder-app--bundle--summary--empty {
  width: 100%;
  display: inline-block;
  text-align: center;
}

.bundle-builder-app--bundles--404 {
  text-align: center;
}

/* Breadcrumb */
.bundle-builder-app--bundle--section-breadcrumbs {
  margin: 0;
  padding: 0;
  text-align: center;
}

.bundle-builder-app--bundle--section-breadcrumbs li {
  display: inline-block;
  margin: 0 10px;
}

.bundle-builder-app--bundle--section-breadcrumbs li.bundle-builder-app--bundle--section-breadcrumb--active {
  font-weight: bold;
  text-decoration: underline;
}

/* Grid */
.bundle-builder-app--bundle--section--product-list {
  width: 100%;
  padding: 0;
  margin: 0;
}

.bundle-builder-app--bundle--section--product-list:after {
  content: "";
  display: block;
  clear: both;
}

.bundle-builder-app--products {
  clear: both;
}

.bundle-builder-app--products-per-row--1 {
  width: 100%;
  float: left;
}

@media screen and (max-width: 767px) {
  .bundle-builder-app--products-per-row--1 {
    float: none;
  }
}

.bundle-builder-app--products-per-row--2 {
  width: 50%;
  float: left;
}

@media screen and (max-width: 767px) {
  .bundle-builder-app--products-per-row--2 {
    width: 100%;
    float: none;
  }
}

.bundle-builder-app--products-per-row--2:nth-of-type(2n+1) {
  clear: both;
}

.bundle-builder-app--products-per-row--3 {
  width: 33.3%;
  float: left;
}

@media screen and (max-width: 767px) {
  .bundle-builder-app--products-per-row--3 {
    width: 100%;
    float: none;
  }
}

.bundle-builder-app--products-per-row--3:nth-of-type(3n+1) {
  clear: both;
}

.bundle-builder-app--products-per-row--4 {
  width: 25%;
  float: left;
}

@media screen and (max-width: 767px) {
  .bundle-builder-app--products-per-row--4 {
    width: 100%;
    float: none;
  }
}

.bundle-builder-app--products-per-row--4:nth-of-type(4n+1) {
  clear: both;
}

.bundle-builder-app--products-per-row--5 {
  width: 20%;
  float: left;
}

@media screen and (max-width: 767px) {
  .bundle-builder-app--products-per-row--5 {
    width: 100%;
    float: none;
  }
}

.bundle-builder-app--products-per-row--5:nth-of-type(5n+1) {
  clear: both;
}

.bundle-builder-app--bundle--product-name {
  font-size: 1.2em;
  color: #333;
  text-align: center;
  margin-bottom: 0.75em;
}

/* Header */
.bundle-builder-app--bundle--name {
  text-align: center;
}

.bundle-builder-app--bundle--description {
  text-align: center;
  padding-bottom: 10px;
}

.bundle-builder-app--bundle--section-name {
  text-align: center;
}

.bundle-builder-app--bundle--contents-section {
  text-align: center;
}

/* Product */
.bundle-builder-app--bundle--product {
  padding: 0.75em;
  position: relative;
  list-style-type: none;
}

.bundle-builder-app--bundle--product-details {
  padding: 0.75em;
  text-align: center;
}

.bundle-builder-app--button-container {
  text-align: center;
}

.bundle-builder-app--button {
  background: #333;
  margin: 0 1em;
  border: none;
  padding: 0.75em 1.5em;
  color: #fff;
  outline: none;
  clear: both;
  background-color: 0.5s ease;
}

.bundle-builder-app--bundle--product--show-more {
  padding: 10px 0;
  text-decoration: underline;
  display: inline-block;
}

.bundle-builder-app--bundle--view-contents--button {
  opacity: 0.5;
}

@media screen and (max-width: 767px) {
  .bundle-builder-app--bundle--view-contents--button {
    margin-bottom: 20px;
  }
}

.bundle-builder-app--bundle--product-options {
  width: 100%;
  text-align: center;
}

.bundle-builder-app--bundle--product-options + .bundle-builder-app--button {
  margin-top: 1.2em;
}

.bundle-builder-app--bundle--product-options label {
  width: 100%;
  display: inline-block;
}

.bundle-builder-app--bundle--product-price {
  margin-bottom: 20px;
}

.bundle-builder-app--bundle--product-description {
  margin-bottom: 20px;
}

/* Pagination */
.bundle-builder-app--bundle--nav-buttons {
  width: 100%;
  display: inline-block;
}

.bundle-builder-app--bundle--button--next {
  float: right;
}

/* Sidebar */
.bundle-builder-app--bundle--integration--sidebar .bundle-builder-app--products--block {
  width: 75%;
  display: inline-block;
  vertical-align: top;
}

.bundle-builder-app--bundle--integration--sidebar .bundle-builder-app--summary--block {
  width: 25%;
  display: inline-block;
  vertical-align: top;
}

.bundle-builder-app--bundle--integration--sidebar .bundle-builder-app--bundle--contents-item {
  width: 100%;
}

.bundle-builder-app--bundle--integration--sidebar .bundle-builder-app--bundle--view-contents--button {
  margin-bottom: 10px;
}

/* Summary */
.bundle-builder-app--bundle--summary--empty {
  display: inline-block;
  width: 100%;
  margin: 10px 0;
}

.bundle-builder-app--bundle--original-price {
  text-decoration: line-through;
  margin-right: 20px;
  opacity: 0.75;
  width: 100%;
  display: inline-block;
  font-size: 24px;
}

.bundle-builder-app--bundle--total-price {
  font-size: 34px;
}

.bundle-builder-app--bundle--price {
  font-size: 2em;
  line-height: 1.5em;
  font-weight: bold;
  text-align: center;
  margin: 10px 0;
}

.bundle-builder-app--bundle--price-label {
  width: 100%;
  text-align: center;
  display: inline-block;
}

.bundle-builder-app--bundle--product-link {
  display: block;
}

.bundle-builder-app--bundle--product {
  text-align: center;
  margin-bottom: 40px;
}

.bundle-builder-app--bundle--product img {
  max-width: 100%;
}

.bundle-builder-app--products-per-row--3 .bundle-builder-app--bundle--product-link img {
  max-height: 100%;
}

.bundle-builder-app--bundle--minimum-message {
  display: inline-block;
  text-align: center;
  margin: 20px 0;
  width: 100%;
}

.bundle-builder-app--warning--bundle-in-cart {
  text-align: center;
  margin: 30px 0 0 0;
  padding: 10px 0;
  background-color: #fcf8e3;
  border: 1px solid #faf2cc;
  color: #8a6d3b;
}

/* Contents */
.bundle-builder-app--bundle--contents-list {
  margin: 20px 0 0;
  padding: 0;
}

.bundle-builder-app--bundle--contents-name {
  display: inline-block;
  text-align: center;
  margin: 20px 0 0 0;
}

.bundle-builder-app--bundle--contents-item {
  list-style-type: none;
  margin: 0;
  display: inline-block;
  width: 20%;
  text-align: center;
  vertical-align: top;
}

@media screen and (max-width: 767px) {
  .bundle-builder-app--bundle--contents-item {
    width: 100%;
  }
}

.bundle-builder-app--bundle--contents-item div {
  padding: 10px;
}

.bundle-builder-app--bundle--contents-item img {
  max-width: 100%;
}

.bundle-builder-app--bundle--summary .bundle-builder-app--number-of-products {
  text-align: center;
  margin: 8px 0 20px 0;
  display: inline-block;
  width: 100%;
}

/* Images */
.bundle-builder-app--bundle--header-image {
  margin-bottom: 20px;
}

/* Headers */
.bundle-builder-app--bundle--section-description {
  padding: 20px 0;
  text-align: center;
}

/* Error Messages */
.bundle-builder-app--bundle--error {
  background-color: #fcf8e3;
  border-color: #faf2cc;
  color: #8a6d3b;
  margin-bottom: 40px;
  padding: 20px;
  line-height: 30px;
  text-align: center;
}

.bundle-builder-app--bundle--error--title {
  font-weight: bold;
}

.bundle-builder-app--bundle--error-message {
  margin-top: 30px;
  text-align: center;
}

.bundle-builder-app--bundle--alert .bundle-builder-app--bundle--error-message {
  margin-top: 0;
}

/* Quantity Boxes */
.bundle-builder-app--bundle--contents-subtract {
  background: none;
  color: black;
  padding: 0.6em 0.5em;
  width: 25%;
}

.bundle-builder-app--bundle--contents-add {
  background: none;
  color: black;
  padding: 0.6em 0.5em;
  width: 25%;
}

.bundle-builder-app--bundle--add-to-cart-button img {
  vertical-align: text-top;
}

/* Layout Style - Store */
.bundle-builder-app--bundle--alert {
  left: 0;
  right: 0;
  top: auto !important;
  bottom: 1.6rem;
  position: fixed;
  justify-content: center;
  display: flex;
  margin: 0 1.6rem;
  z-index: 1000;
  transition: bottom 0.3s ease-out;
}

.bundle-builder-app--bundle--alert--hidden {
  bottom: -10rem;
}

.bundle-builder-app--bundle--alert--content {
  background: rgba(0, 0, 0, 0.88);
  box-shadow: 0 0 0 1px rgba(63, 63, 68, 0.05), 0 1px 3px 0 rgba(63, 63, 68, 0.15);
  border-radius: 3px;
  color: #ffffff;
  padding: 0.8rem 1.6rem;
  text-align: center;
}

.bundle-builder-app--bundle--alert .bundle-builder-app--bundle--minimum-message {
  display: initial;
}

.bundle-builder-app--quantity--variant {
  width: 100%;
  display: inline-block;
  padding: 20px 0 10px 0;
}

.bundle-builder-app--product--quantity button {
  border: none;
}