.page-product-bundle-confezione-personalizzata .bundle-options-container .product-add-form {
  display:block;
}

.page-product-bundle-confezione-personalizzata .product-info-main {
  float:none;
  width:auto !important;
}

.page-product-bundle-confezione-personalizzata .product.info.detailed {
  display:none;
}

.page-product-bundle-confezione-personalizzata h1.page-title {
    color: var(--callipo-main-color);
    font-size: 2.4em;
}

.page-product-bundle-confezione-personalizzata .product-social-links,
.page-product-bundle-confezione-personalizzata .product-info-main .product.attribute.overview {
  display:none;
}

.page-product-bundle-confezione-personalizzata {
  background:#f5f2e6;
}
.page-product-bundle-confezione-personalizzata footer.page-footer {
    padding-bottom: 160px;
    background: transparent;
}

.configurator_option {
  transition:all 0.3s;
}

.configurator_option.packaging {
  display:none;
}

.configurator_option.hidden, .show-promo .configurator_option.no-promo {
  padding:0;
  margin:0;
  transform:scale(0);
  width:0;
  visibility:hidden;
  opacity:0;
  transition: scale 0.3s;
  height:0;
}

a.package-item-photo {
    text-align: center;
}

.option_content {
    background: #fff;
    border-radius: 3px;
    position:relative;
    overflow:hidden;
    min-height:100%;
    padding: 1rem 1rem 5rem;
}

.option_content .option_image {
  text-align: center;
}
@media (min-width: 575px) {
  .option_content .option_image {
    height: 200px;
  }
}
@media (max-width: 767px) {
  .option_image img {
    height: 200px !important;
  }
}

.option_content .option_image:before {
    /*display: inline-block;*/
    vertical-align: middle;
    width: 0;
    height: 100%;
    content: "";
}

.option_spaces {
  font-weight:bold;
  color:var(--callipo-main-color);
  font-style:italic;
}

.option_title h3 {
    font-size: 12px;
    text-align: center;
    min-height: 50px;
}

.option_prices {
    font-size: 1.3em;
    font-weight: bold;
    text-align: center;
}

.option_prices span.old_price {
    color: #7e7e7e;
    font-style: italic;
    text-decoration: line-through;
    padding-right: 1em;
    font-weight: 500;
    font-size: 12px;
}

.option_weight {
  text-align:center;
}

.option_add {
    border: 1px solid;
    border-radius: 3px;
    padding: 10px;
    text-align: center;
    line-height: 1em;
    color: var(--callipo-main-color);
    cursor: pointer;
    width: 100%;
    text-transform: uppercase;
    font-weight: bold;
    position: absolute;
    bottom: 0;
    left: 0;
}
.option_add span {
  margin-left: 5px;
}
.option_add:hover {
  color: #fff;
  background-color: #ae002d;
}

.option_quantity {
    text-align: center;
    background: #000a;
    border-radius: 3px;
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 100%;
    color: #fff;
    font-size: 1.3em;
    line-height: 3em;
    transition: all 0.3s ease-in-out 0.3s;
    opacity:0;
}

.configurator_option.has_qty .option_quantity {
  bottom:0;
  opacity:1;
  transition: bottom 0.3s cubic-bezier(0.35, 0, 0.34, 1.48) 0s, opacity 0.3s ease 0s;
}

.option_quantity .qty {
    width: 2em;
    font-size: 3em;
    padding: 5px;
    cursor: default;
    font-weight: bold;
    border: 0 none;
    background: transparent;
    color: #fff;
    overflow: visible;
    line-height: 1.2;
    height: auto;
    text-align: center;
}

.option_quantity .qty::selection {
  background:transparent;
  color:inherit;
}

.option_quantity .chg_qty, .option_quantity .remove {
  padding:5px;
  transition:all 0.2s;
  cursor:pointer;
}

.option_quantity .chg_qty:hover {
  filter: drop-shadow(0px 0px 6px white);
}

/** sidebar **/

.configurator-sidebar {

  transition:all 1s ease 1s;
}

.configurator-sidebar .menu-icon {

}

@media (min-width: 768px) {
  .configurator-sidebar {
    border-right: 1px solid #c8c8c8;
  }
  .configurator-sidebar .menu-icon {
    display:none;
  }
}


#configurator_sidebar {
    position: sticky;
    top: 20px;
    overflow: hidden;
    margin-left: 0;
}

#configurator_sidebar .side_cat {
    padding-bottom: 1em;
}
#configurator_sidebar .side_link {
  font-weight:500;
  text-decoration:none;
  display:inline-block;
  color:#333;
  transition:all 0.2s;
  font-size:1.2em;
}

#configurator_sidebar .side_link.selected {
    color: var(--callipo-main-color);
}

@media (max-width: 767px) {
  .side_cat .arrow {
    display:none;
  }
  #configurator_sidebar {
    position: fixed;
    margin: 0;
    left: -100%;
    max-width: 100vw;
    background: var(--callipo-dark-grey);
    top: 10%;
    color: #fff;
    z-index: 99;
    overflow: visible;
    transition:all 0.3s ease 0.3s;
    padding:0 15px;
  }
  #configurator_sidebar:hover {
    left:0;
    transition:all 0.3s;
  }
  #configurator_sidebar .side_link {
    color:#fff;
  }
  #configurator_sidebar .side_link.selected {
    color: var(--callipo-main-color);
    background: #fff;
    padding: 0 5px;
    border-radius: 3px;
  }
  div#configurator_sidebar .menu-icon {
    background: var(--callipo-dark-grey);
    color: #fff;
    left: 100%;
    top: 0;
    position: absolute;
    width: 2em;
    height: 2em;
    font-size: 1.6em;
    padding: 0.5em;
  }

  .configuration_info > .total_price {
    display: block;
    text-align: center;
    line-height: 1.2;
  }
  .total_price span.packaging_label {
    padding:0.5em 0 0 0;
    display:block;
  }

  .summary_buttons .summary_button > button {
    width:90%;
  }
}


/** actions bar **/

#configurator_actions {
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    background: #000;
    color: #fff;
    z-index: 2;
}

.configuration_size {
    height: 40px;
    background: #d8d8d8;
    position: relative;
    width: 100%;
}

.page-title .in_cart {
    font-size: 14px;
    font-style: italic;
}

.configuration_occupied {
  height:100%;
  position:relative;
  background:var(--callipo-main-color);
  transition:all 0.3s ease-out;
  min-width:4em;
  opacity:1;
}

.warning {
    background: red;
    box-shadow: 0 0 10px red;
}

.max_products {
  transition:all 0.3s ease-out;
}

.configuration_size[data-actualsize="0"] .configuration_occupied {
  opacity:0;
}

.occupation_percent {
    color: #fff;
    font-style: italic;
    font-weight: bold;
    height: 100%;
    display: inline-block;
    font-size: 1.3em;
    position: absolute;
    right: 0;
    vertical-align: middle;
    padding: 0 1em;
}

.occupation_percent:before{
  content:'';
  display:inline-block;
  height:100%;
  width:0;
  vertical-align:middle;
}

.configuration_info {
  font-style:italic;
  font-size:1em;
  line-height:1.2em;
}

.configuration_info > * {
    flex: 0 1 350px;
    display: inline-flex;
    align-content: space-around;
    justify-content: center;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    border-right: 1px solid #222;
}

.action_name {
    font-size: 1.5em;
    font-weight: bold;
    text-transform: uppercase;
    font-style: italic;
    line-height: 1em;
}

.action-product-title {
    flex-grow: 1;
}

#configurator_actions .packet_image {
    max-height: 50px;
    padding: 0 10px;
}

#configurator_actions .packet_name {
  color:#fff;
}

.added_label, .max_label, .price_label, .add_cart_label{
    vertical-align: middle;
    padding-right: 1em;
}

.price_label {
  font-weight:bold;
}

.max_number, .added_number, .price_value {
    font-size: 1.5em;
    vertical-align: middle;
    font-weight: bold;
}


.configuration_info .action_button {
    color: #000;
    background: #fff;
    cursor:pointer;

    position:relative;
    z-index:1;
    text-align:center;
}

.configuration_info .action_button.disabled {
    opacity: 0.9;
    color: #aaa;
    cursor:default;
}

.configuration_info .action_button .view_summary, .configuration_info .action_button .add_to_cart{
  position:absolute;
  width:100%;
  height:100%;
  transition:all 0.2s;
}

.configuration_info .action_button .add_to_cart {
    background: var(--callipo-main-color);
    color: #fff;
    z-index:2;
    overflow:hidden;
    height:0;
}

.add_cart_label {
  font-weight:500;
  text-transform:uppercase;
  font-style:normal;
}

span.packaging_label {
    padding-left: 1em;
    font-size: 0.9em;
    color: #fff9;
}

span.packaging_price[data-price="0"] {
  display:none;
}

span.packaging_price:after {
    content: attr(data-price);
}


/** category page **/

.page-layout-category-landing-creaconfezione #page-title-heading {
  height:0;
  overflow:hidden;
  opacity:0;
}

ol.packages-list {
    list-style: none;
    padding: 0;
    margin-right: calc(var(--bs-gutter-x) * -1);
    margin-left: calc(var(--bs-gutter-x) * -1);
}
.package-item-info {
    border-radius: 3px;
    overflow: hidden;
    background: #fff;
    transition:all 0.2s;
    min-height:100%;
}

.package-item-info:hover {
  box-shadow:0 5px 10px #0004;
}

.package-item-name {
    padding-bottom: 1em;
    display: block;
}

a.package-item-link {
    color: var(--callipo-main-color);
    font-style: italic;
    font-weight: bold;
    font-size: 1.4em;
    text-decoration: none;
    text-transform: uppercase;
    line-height: 1;
}

.package-action-container {
    background: #303030;
    color: #fff;
    padding: 10px;
    text-align: center;
    text-transform: uppercase;
    cursor: pointer;
    font-size: 1em;
    letter-spacing: 1px;
    font-weight: 100;
    vertical-align:middle;
}

.package-action-container a {
    color: #fff;
    text-decoration: none;
    display: block;
}
.package-action-container a span {
  color: #fff;
}
.package-action-container .scatola {
    vertical-align: middle;
    font-size: 2.1em;
    padding-left: 0.5em;
    font-weight: 100;
}

.package-description h2 {
  font-size:2.5rem;
}

.package-description .old-packet, .package-description.creating_packet .new-packet {
  display:none;
}

.package-description.creating_packet .old-packet {
  display:block;
}

.package-action-container .trash-packet, .package-action-container .continue-packet{
    background: #dedede;
    border: 4px solid #cdcdcd;
    color: #303030;
    line-height: 1;
    transition:all 0.2s;
}

.package-action-container .trash-packet:hover {
    background-color: var(--callipo-main-color);
    border-color: var(--callipo-dark-red);
    color: #fff;
}

.package-action-container .continue-packet  {
  border: 0 none;
}

.continue-packet {
  color: #303030;
}

.start-package {
  cursor:pointer;
}

.start-package .package-item-info {
  height:100%;
  text-align:center;
}

.start-package .package-item-empty {
    padding: 10% 10% 3%;
}

.new-packet h2 {
    color: var(--callipo-main-color);
    font-size: 2.1em;
}

.start-package .package-item-info .package-item-name{

}

/** summary */

.configurator_summary_content {
  background:#fff;
  border-radius:3px;
}

.configurator_summary_content .product_photo {
    padding: 0 7%;
}

.content_label h2 {
    color: var(--callipo-main-color);
    padding: 40px 0 20px;
    font-weight: lighter;
    font-size: 2.3em;
    text-align: center;
}

.configurator_summary_container {
  transition: all 1s ease 0s;
  max-height: 0;
  opacity: 0;
  overflow:hidden;
}

.summary_details {
  font-weight:700;
}

.summary_details > * {
  padding-right:0;
}

.summary_details .added_number, .summary_details .max_number {
  color:var(--callipo-main-color);
  font-size:2em;
}

.summary_details .added_label, .summary_details .max_label {
  font-style:italic;
}

.summary_details .price_label {
  padding:0;
  font-size:1.2em;
}

.summary_details .price_value {
  padding:0;
  font-size:2.5em;
  color:var(--callipo-main-color);
  font-style:italic;
}

.summary_details .packaging_label {
  font-size:0.9em;
}

.show_summary .configurator_summary_container {
  transform: scale(1);
  max-height: 1100px;
  opacity: 1;
}

.show_summary .configurator-sidebar {
    width: 0;
    padding: 0 !important;
    border: 0 none;
    opacity:0;
}

.configurator-products {
  transition: all 0.5s;
  margin:0 auto;
}

.show_summary .configurator-products {
    padding: 0 !important;

}

.show_summary .configurator_option:not(.has_qty) {
  opacity:0;
  transform:scale(0);
  padding:0;
  height:0;
  width:0;
  transition:all 0.3s ease 2s, width 0.3s ease 2.3s;
}

#configurator_title {
    max-height: 10em;
    transition: all 0.3s;
    overflow: hidden;
}

.show_summary #configurator_title{
  max-height:0em;
  margin:0;
  padding:0;
}

.show_summary #configurator {
  transition:all 0.3s;
}

.show_summary .configuration_info .action_button .add_to_cart {
  height:100%;
}

.show_summary .configuration_info .action_button .view_summary {
  height:0;
}

.summary_title h3 {
    font-weight: 500;
    font-size: 2em;
}

.summary_available_text .max_number {
  font-size:inherit;
}

.summary_button button {
    width: 50%;
    border: 1px solid transparent;
    text-transform: uppercase;
    border-radius: 3px;
}

.summary_button button.configurator_add {
    background-color: var(--callipo-main-color);
    color: #fff;
}

.summary_button button.configurator_continue  {
    color: var(--callipo-main-color);
    background-color: #fff;
    border:1px solid var(--callipo-main-color);
}

.loading .loader {
    display: block !important;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vw;
    background: #fff4;
}

.loading .loader .spinner {
    color: var(--callipo-main-color);
    position: absolute;
    left: 50vw;
    top: 50vh;
    margin: -0.5em;
    font-size: 40px;
    text-shadow: 0 0 10px #fff;
}


.filter_promo .promo {
  font-weight:500;
  color:#afb4b8;
  position:relative;
  cursor:pointer;
  transition:all 0.2s;
  padding-bottom: 10px;
}

.filter_promo .promo:after {
    content: "";
    height: 4px;
    width: 90%;
    background: #afb4b8;
    position: absolute;
    bottom: 0;
    left: 5%;
    border-radius: 3px;
    transition:all 0.2s;
}

.filter_promo .promo.active {
  color:var(--callipo-main-color);
}

.filter_promo .promo.active:after {
  background: var(--callipo-main-color);
}


.price_sort {
  cursor:pointer;
  text-align: right;
}

.price_sort .sort_label {
  text-transform:uppercase;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.3px;
}

.price_sort .toggle {
  color:#afb4b8;
  padding-left:8px;
  font-size:20px;
}

.price_sort .toggle.fa-toggle-on, .price_sort.sorted .toggle.fa-toggle-off {
  display:none;
}
.price_sort.sorted .toggle.fa-toggle-on, .price_sort .toggle.fa-toggle-off {
  display:inline-block;
}

.price_sort.sorted .toggle {
  color:var(--callipo-main-color);
}

.conf_sort.toggle:after,
.conf_sort.fa-toggle-off:before {
  color: #fff;
}
.conf_sort.fa-toggle-on:before {
  color: #19b96f;
}
.conf_sort.fa-toggle-off:after {
  color: #b2b7bb;
  opacity: 1;
}

.page-product-bundle-confezione-personalizzata.catalog-product-view .newsletter-form-container,
.page-product-bundle-confezione-personalizzata.catalog-product-view .footer.content{
  display:none;
}
