/** custom style **/
body {
    background: #f5f5f5;
}

a {
    text-decoration: none;
    transition: all 0.2s;
}

a:hover {
    color: inherit;
}

b,
strong {
    font-weight: 500;
}

html button {
    background-image: none;
    background: var(--callipo-dark-grey);
    border: 0 none;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-weight: 600;
    margin: 0;
    padding: 7px 15px;
    font-size: 1.4rem;
    line-height: 1.6rem;
    box-sizing: border-box;
    vertical-align: middle;
    transition: all 0.2s;
}

html button:hover,
html body:not(._keyfocus) button:focus,
button:not(.primary):active {
    background: var(--callipo-dark-grey);
    color: #fff;
    opacity: 0.7;
    border: 0;
}

.page-header {
    position: sticky;
    top: 0;
    z-index: 100;
    transition: all 0.3s;
}

.page-header .logo,
.page-header .logo img,
.page-header .main-nav-container,
.page-header .top-nav-container,
.page-header .header.content {
    transition: all 0.3s;
}

.page-header>.panel.wrapper {
    overflow: hidden;
}

.scrolling .page-header {
    transform: translateY(calc(var(--panel-height) * -1));
}

.scrolling .page-header .logo {
    margin: 0;
}

.scrolling.cms-home .top-nav-container {
    background: #000d;
}

.scrolling .page-header .logo img {
    transform: scale(0.55);
    transform-origin: top left;
    margin-left: 10px;
}

.scrolling .main-nav-container {
    box-shadow: 0 2px 4px #0002;
}

.page-with-filter.page-products .sidebar-sidebar-main .block.filter {
    /* border-right: 1px solid #c8c8c8;
     */
    position: sticky;
    top: 130px;
}

img {
    max-width: 100%;
    height: auto !important;
    border: 0;
}

h1.page-title {
    color: var(--callipo-main-color);
    font-size: 2.5em;
    font-weight: 300;
}

.catalog-product-view h1.page-title {
    color: var(--callipo-dark-grey);
}

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

.v-center {
    white-space: nowrap;
}

.v-center>* {
    vertical-align: middle;
}

.v-center:before {
    vertical-align: middle;
    height: 100%;
    content: "";
    display: inline-block;
    width: 0;
}

/** main menu **/
.main_menu ul.navigation__list {}

.main_menu li.navigation__item {
    margin: 0;
    padding: 0;
    display: inline-block;
    white-space: nowrap;
}

.main_menu li.navigation__item a {
    padding: 10px;
    display: inline-block;
    text-decoration: none;
}

.main_menu li.navigation__item--parent {
    position: relative;
}

.main_menu li.navigation__item--parent>ul {
    position: absolute;
    left: -999em;
    top: 100%;
    background: #fff;
    box-shadow: 0 3px 3px #0004;
    opacity: 0;
    transform: translateY(-10px);
    transition: left 0s ease 0.3s, opacity 0.3s, transform 0.3s ease 0.3s;
    z-index: 0;
}

.main_menu li.navigation__item--parent:hover>ul {
    left: 0;
    opacity: 1;
    transform: translateY(0);
    transition: left 0s ease 0s, opacity 0.3s, transform 0.3s;
    z-index: 1;
}

/* mobile menu */
body>.mm-wrapper--position-right {
    --mm-translate-multiplier: -1.8;
}

.mm-menu a,
.mm-menu a:active,
.mm-menu a:hover,
.mm-menu a:link,
.mm-menu a:visited {
    font-size: 1.3em;
}

.mm-menu a.mm-logo {
    padding: 0;
    margin: 5px;
    max-width: 25%;
}

.mm-iconbar a {
    font-size: 1.5em;
    text-align: center;
    padding: 0.8em;
    margin: 0.2em 0;
}

#html-body .mm-menu .wa-url-container,
html .mm-menu .wa-url-container {
    display: none;
}

.mm-menu .mm-navbar .cart-link {
    position: relative;
    font-size: 2em !important;
}

#menu_cart_number,
.mm-menu .mm-navbar .configurableBox>i {
    position: absolute;
    left: 50%;
    margin-left: -0.5em;
    width: 1.5em;
    font-size: 12px;
    text-align: center;
    /* display: block;
     */
    background: var(--callipo-main-color);
    border-radius: 30px;
    height: 1.5em;
    color: #fff;
    line-height: 1.5em;
    margin-top: -1.5em;
}

.mm-menu .mm-navbar .configurableBox>i {
    color: var(--callipo-main-color);
    background: transparent none repeat scroll 0 0;
    font-size: 19px;
    margin-left: -0.7em;
    margin-top: -0.9em;
}

.mm-menu .mm-navbar .configurableBox {
    font-size: 2em;
    position: relative;
}

.mm-menu .mm-navbar .pagebuilder-column-group {
    background: var(--callipo-dark-red);
    padding: 10px;
}

.mm-menu .mm-navbar .pagebuilder-column-group * {
    text-align: center !important;
    color: #fff;
}

.mm-menu .company a:after {
    content: '\f1ad';
    font-family: 'Font Awesome 5 Pro';
    color: #9a0027;
    font-size: 15px;
    font-weight: 600;
    margin-left: 10px;
}

.mm-menu--iconbar-left .mm-navbars,
.mm-menu--iconbar-left .mm-panels {
    background-color: transparent;
}

.mm-navbars .mm-navbar {
    position: relative;
    padding-top: 0;
    border-bottom: none;
    background: transparent;
    backface-visibility: hidden;
}

nav#mmenu.mm-menu--opened {
    box-shadow: -3px 0 5px #0004;
}

/** cart **/
#shopping-cart-table .item-options span.price:after {
    content: "";
    display: block;
    height: 0;
    line-height: 0;
    vertical-align: text-bottom;
}

#shopping-cart-table .action.towishlist {
    display: none;
}

[data-content-type='row'][data-appearance='contained'] {
    max-width: 1340px;
}

.product_content>label {
    font-weight: 600;
}

.product_content span.content_item {
    display: inline-block;
    padding: 0 0.5em 0 0;
    font-style: italic;
}

.cart.table-wrapper .product-item-name:first-letter {
    text-transform: uppercase;
}

#shopping-cart-table .item-info .cart.item.message.notice {
    background: #fff;
    border: 2px solid;
    padding: 5px 10px;
    display: inline-block;
    color: var(--callipo-main-color);
}

#shopping-cart-table .item-info .cart.item.message.notice>div:before {
    display: none;
}

.cart_message_packet {
    background: var(--callipo-main-color);
    padding: 5px 15px;
    color: #fff;
    margin-bottom: 15px;
}

.cart_message_packet i.icon-custom-box {
    font-size: 1.6em;
    vertical-align: middle;
    padding-right: 0.5em;
}

.cart_message_packet .packet_link {
    font-weight: 500;
    color: #fff;
    padding: 0 5px;
    text-decoration: underline;
}

.cart-container .cart.table-wrapper {
    background: #fff;
    border-radius: 3px;
    overflow: hidden;
    padding-bottom: 1em;
}

.cart-container .cart-summary #block-shipping {
    display: none;
}

.table#shopping-cart-table>:not(:first-child) {
    border-top: 0 solid currentColor;
}

.table#shopping-cart-table th {
    background: var(--callipo-dark-grey);
    color: #fff;
    padding: 15px;
}

#shopping-cart-table th.col {
    text-align: center;
    padding: 15px;
}

#shopping-cart-table th.col.item {
    text-align: left;
}

.table#shopping-cart-table tr.item-info td {
    padding: 15px !important;
}

.cart.table-wrapper #shopping-cart-table>.item {
    border-bottom: 1px solid var(--callipo-dark-grey);
    position: relative;
}

.cart.item .item-info .price {
    color: var(--callipo-dark-grey);
    line-height: 2em;
}

.cart.item .item-info .col.qty .input-text {
    margin: 0;
}

.cart.table-wrapper .product-item-details .item-options dd,
.cart.table-wrapper .product-item-details .item-options dt {
    line-height: 1.5em;
    font-size: 1.4rem;
    margin: 0;
    vertical-align: middle;
    display: block;
    float: none;
}

.cart.table-wrapper .product-item-details .item-options dd {
    margin-bottom: 0.5em;
    font-style: italic;
}

.cart.table-wrapper .product-item-details .item-options dd .price {
    line-height: inherit;
}

.cart.table-wrapper .product-item-details .product_content,
.cart.table-wrapper .product-item-details dl.item-options {
    font-size: 1.4rem;
}

.cart.table-wrapper .product-item-name>a {
    font-size: 1em;
    padding: 0;
}

.cart.table-wrapper .actions-toolbar {
    min-height: auto;
    padding: 0;
    position: relative;
    color: #fff;
    display: flex;
    margin: 0;
    border-top: 1px solid #eee;
    justify-content: flex-end;
}

.cart.table-wrapper #shopping-cart-table .actions-toolbar>.action-edit,
.cart.table-wrapper #shopping-cart-table .actions-toolbar>.action-delete {
    position: relative;
    display: inline-block;
    text-decoration: none;
    width: 20%;
    padding: 4px;
    right: auto;
    top: auto;
    margin: 0;
    text-align: center;
    opacity: 0.5;
}

.cart.table-wrapper #shopping-cart-table .actions-toolbar>.action-edit {
    border-right: 1px solid #ddd;
    width: 80%;
}

.cart.table-wrapper #shopping-cart-table .actions-toolbar>.action-edit>span {
    clip: initial;
    position: relative;
    display: inline-block;
    height: auto;
    width: auto;
    vertical-align: middle;
    padding-left: 1em;
}

.cart.table-wrapper #shopping-cart-table .actions-toolbar>.action-edit:before,
.cart.table-wrapper #shopping-cart-table .actions-toolbar>.action-delete:before {}

.cart.table-wrapper #shopping-cart-table .actions-toolbar>.action-edit:hover,
.cart.table-wrapper #shopping-cart-table .actions-toolbar>.action-delete:hover {
    background: #eee;
    color: var(--callipo-dark-grey);
    opacity: 1;
}

.cart.table-wrapper #shopping-cart-table .actions-toolbar>.action-delete:hover {
    background: var(--callipo-dark-red);
    color: #fff;
    opacity: 0.6;
}

.cart.table-wrapper #shopping-cart-table .actions-toolbar>.action-delete:hover:before {
    color: #fff;
}

.cart.main.actions .action.update {
    border: 0 none;
    color: #fff;
    background: var(--callipo-dark-grey);
}

#gift-options-cart .cart-gift-item {
    display: none;
}

.cart-summary {
    background: #fff;
    border-radius: 3px;
    top: 0 !important;
}

.cart-summary .block>.title,
.cart-totals,
.cart-totals th,
.cart-totals td {
    border-top: 0 !important;
    border-bottom: 0 !important;
}

.cart-discount {
    padding-top: 15px;
    display: flex;
    flex-wrap: wrap;
    border: 0;
}

.cart-discount .block.discount {
    width: 50%;
}

.cart-discount .block>.title strong,
.cart-discount .block.discount .title>strong {
    color: var(--callipo-main-color);
    font-size: 14px;
    text-transform: uppercase;
}

.cart-discount .block .title:after {
    vertical-align: text-top;
}

#discount-giftcard-form .fieldset.coupon .action.primary,
#discount-coupon-form .fieldset.coupon .action.primary {
    height: 2.3em;
    line-height: 2.3em;
    padding: 0 12px;
    background: var(--callipo-main-color);
    color: #fff;
    border: 0 none;
    box-shadow: 0 0 0;
}

#block-gift-card-discount,
#block-discount {
    border-top: 1px solid #e1e1e1;
    padding-top: 15px;
    margin-left: 0;
}

html .mpfreegifts-notice-content {
    background: var(--callipo-main-color);
    color: #fff;
    padding: 0.6rem 1.5rem;
    text-shadow: none;
    margin-left: 10px;
}

html button.action.primary.mpfreegifts-action-remove {
    background: var(--callipo-main-color) !important;
    border: 0 none;
}

.mpfreegifts_modal .modal-inner-wrap,
.mpfreegifts_modal .modal-content,
.mpfreegifts-modal .mpfreegifts-item-left {
    background: #f4f4f4;
}

.mpfreegifts_modal .gift-container .gift-item {
    background: #fff;
}

input[readonly] {
    background: #f4f4f4;
}

.checkout-cart-index .grand.totals.excl {
    display: none;
}

/** one step checkout **/
.onestepcheckout-index-index .checkout_head {
    width: 100%;
    position: relative;
    background: var(--callipo-main-color);
    color: #fff;
    text-align: center;
    z-index: 1;
}

.onestepcheckout-index-index .checkout_head:before {
    content: "";
    z-index: -1;
    background: inherit;
    position: absolute;
    width: 100vw;
    height: 100%;
    top: 0;
    left: 50%;
    margin-left: -50vw;
}

.onestepcheckout-index-index .page-title-wrapper {
    margin-bottom: 0 !important;
}

.onestepcheckout-index-index .checkout_head:after {
    right: auto;
    left: 100%;
}

.checkout-index-index a.logo {
    margin: 0;
}

.checkout-index-index .logo>img {
    width: 90px;
}

.checkout_head h1.page-title {
    color: #fff;
    margin: 0;
}

.after_checkout_title.col {
    text-align: right;
}

.checkout_head a.back_to_checkout {
    opacity: 1;
    font-style: italic;
    color: #fff;
}

.opc-wrapper .fa-stack.fa-2x>i,
.opc-wrapper .fa.fa-gift.fa-2x,
.opc-wrapper .fa.fa-check-circle {
    color: var(--callipo-main-color);
}

.opc-wrapper .section {
    background: #fff;
    border-radius: 3px;
}

.opc-wrapper .shipping-methods .section,
.opc-wrapper .payment-methods .section,
.opc-wrapper .checkout-sidebar>.section {
    height: 100%;
}

.opc-wrapper .section-content {
    padding: 15px;
    height: 100%;
}

.opc-wrapper .step-title .icon {
    position: relative;
    background: var(--callipo-dark-grey);
    border-radius: 50%;
    vertical-align: middle;
}

.opc-wrapper .step-content {
    margin: 0;
}

.opc-wrapper .opc-block-summary.step-content {
    padding: 0;
}

.opc-wrapper #checkout-review-table thead th:last-child,
.opc-wrapper #checkout-review-table tbody tr td.last {
    display: none;
}

.opc-wrapper #checkout-review-table .qty-wrapper {
    white-space: nowrap;
    height: auto;
}

.opc-wrapper #checkout-review-table .qty-wrapper .button-action {
    width: auto;
    height: auto;
    margin: auto;
    background: transparent;
    font-size: 1em;
    vertical-align: middle;
    padding: 5px;
}

.opc-wrapper #checkout-review-table .qty-wrapper .qty-wrap {
    position: static;
    vertical-align: middle;
    height: auto;
}

.opc-wrapper #checkout-review-table .qty-wrapper .qty-wrap .input-text.update {
    position: static;
    top: auto;
}

.opc-wrapper #checkout-review-table thead th,
.opc-wrapper #checkout-review-table tbody tr td,
.opc-wrapper #checkout-review-table tfoot tr td {
    vertical-align: middle;
}

.opc-wrapper .opc-block-summary .items-in-cart .product .item-options dt {
    display: block;
    float: none;
}

.one:after,
.two:after,
.three:after,
.four:after {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    text-align: center;
    width: 100%;
    height: 100%;
    font-size: 0.6em;
    margin-top: -0.5em;
    font-family: arial;
    line-height: 1.1em;
    color: #fff;
    font-weight: 700;
}

.one:after {
    content: "1";
}

.two:after {
    content: "2";
}

.three:after {
    content: "3";
}

.four:after {
    content: "4";
}

.opc-wrapper .fieldset>.field.required>.label:after {
    content: '*';
    color: #e02b27;
    font-size: 1.2rem;
    margin: 0 0 0 5px;
}

.opc-wrapper .fieldset>.field.required>.label a {
    text-decoration: underline;
}

.opc-wrapper .step-title span {
    font-weight: 500;
    font-style: italic;
    color: var(--callipo-main-color);
    font-size: 0.8em;
    vertical-align: middle;
}

.opc-wrapper .osc-place-order-block.checkout-comment-block {
    border: 0 none;
    padding: 0 !important;
}

.opc-wrapper .billing-address-same-as-shipping-block {
    display: block !important;
}

.opc-wrapper .form-login .fieldset .note,
.opc-wrapper .form-shipping-address .fieldset .note {
    font-size: var(--bs-body-font-size, 12px);
}

.osc-authentication-wrapper a,
.osc-authentication-wrapper a:hover {
    color: #fff;
    background: var(--callipo-dark-grey);
    padding: 2px 5px;
    border-radius: 3px;
    display: inline-block;
}

.opc-wrapper .login_note {
    display: inline-block;
    padding-top: 0.5em;
    font-style: italic;
}

.opc-wrapper .login_note>* {
    display: inline;
}

.login_note .action {
    text-decoration: underline;
}

.opc-wrapper #co-place-order-area {
    padding: 0 !important;
}

.opc-wrapper .field.addresses .shipping-address-items {
    margin-top: 0 !important;
    padding: 0 !important;
}

.opc-wrapper .shipping-address-item.selected-item {
    border-color: var(--callipo-main-color);
}

.opc-wrapper .shipping-address-item.selected-item:after {
    background-color: var(--callipo-main-color);
}

.onestepcheckout-index-index .opc-wrapper .field.choice {
    font-size: 1.2em;
    display: inline-block;
    padding: 0.5em !important;
}

.onestepcheckout-index-index .opc-wrapper .field.choice.gift-message {
    padding-left: 0 !important;
    margin-bottom: 0 !important;
    cursor: pointer;
}

.onestepcheckout-index-index .opc-wrapper .field.choice.gift-message .action-toggle:after {
    display: inline-flex;
    align-items: center;
}

.onestepcheckout-index-index .osc-newsletter.field.choice.col-mp.mp-12,
.onestepcheckout-index-index .checkout-agreements-block .checkout-agreement.field,
.onestepcheckout-index-index #order-summary-fieldset .fieldset.address .field {
    padding-left: 0 !important;
    margin-bottom: 10px;
}

.onestepcheckout-index-index .checkout-agreements-block {
    margin-bottom: 0 !important;
}

.onestepcheckout-index-index .checkout-agreements-block #co-place-order-agreement {
    margin-bottom: 5px !important;
}

.opc-wrapper input[type="checkbox"],
.opc-wrapper input[type="radio"] {
    position: absolute;
    width: 1px;
    height: 1px;
    visibility: hidden;
}

.opc-wrapper input[type="radio"]+label:before,
.opc-wrapper input[type="checkbox"]+label:before {
    content: "\f111";
    padding-right: 1em;
    font-family: 'Font Awesome 5 Pro';
}

.opc-wrapper input[type="radio"]:checked+label:before,
.opc-wrapper input[type="checkbox"]:checked+label:before {
    content: "\f058";
}

.opc-wrapper input[type="radio"]:checked+label:before {
    content: "\f2f8";
}

.opc-wrapper .checkout-payment-method .payment-option-title {
    border: 0 none;
}

.opc-wrapper .checkout-payment-method .payment-option-title .action-toggle {
    color: var(--callipo-main-color);
    display: inline-block;
    text-decoration: none;
    font-style: italic;
}

.opc-wrapper .checkout-payment-method .payment-method-content {
    padding: 0 0.5em;
    font-style: italic;
}

.opc-wrapper .checkout-payment-method .payment-option-content {
    padding: 0 0.5em;
}

.opc-wrapper .checkout-payment-method .payment-option-inner {
    margin: 0;
    display: block;
    width: 100%;
}

.opc-wrapper .osc-payment-after-methods .opc-payment-additional .field .control {
    float: none;
    margin-right: 3px;
    width: 100%;
    margin-bottom: 10px;
}

.payment-option._collapsible.opc-payment-additional {
    padding: 10px 5px;
    border: 0 none !important;
    margin: 0;
}

.osc-payment-after-methods .row .field {
    padding-top: 0.5em;
}

.osc-payment-after-methods .row .field.mp-clear {
    clear: none;
}

.osc-payment-after-methods {
    padding-top: 15px;
    margin-top: 15px;
    border-top: 1px solid #eee;
}

.opc-wrapper .checkout-payment-method .form-discount .actions-toolbar {
    padding: 0;
    margin: 0;
    width: auto;
    display: inline-block;
}

.opc-wrapper .abs-discount-code .form-discount .actions-toolbar .primary,
.opc-wrapper .checkout-payment-method .payment-option-content .form-discount .actions-toolbar .primary {
    float: none;
    display: inline-block;
    padding: 0;
    width: auto;
}

.opc-wrapper .checkout-payment-method .form-discount .actions-toolbar {
    padding: 0;
    margin: 0;
    width: auto;
}

.opc-wrapper .checkout-payment-method .form-discount .actions-toolbar button {
    width: 100%;
}

.opc-wrapper .giftcard-messages .message {
    width: auto;
    left: auto;
}

.opc-wrapper .osc-place-order-block {
    border: 0;
}

.opc-wrapper .checkout-addition-block {
    padding-top: 0;
}

.checkout-onepage-success .checkout-success p {
    background: #fff;
    padding: 15px;
    border-radius: 3px;
    box-shadow: 0 1px 1px #0002;
}

.checkout-onepage-success .checkout-success .actions-toolbar {
    text-align: center;
}

.checkout-onepage-success .checkout-success .actions-toolbar>div.primary {
    float: none;
}

.checkout-onepage-success a.action.print {
    font-weight: 500;
    font-size: 1.2em;
    font-style: italic;
    text-decoration: underline;
}

body>div>.sp_social_share_widget {
    display: none !important;
    opacity: 0;
    width: 0;
    visibility: hidden;
}

.opc-wrapper .step-title,
.opc-wrapper input,
.opc-wrapper select,
.opc-wrapper textarea,
.osc-place-order-block.checkout-addition-block.col-mp.mp-12,
.osc-place-order-block.checkout-comment-block,
#checkout-review-table,
.order-summary .opc-block-summary table.data.table.table-totals {
    border-radius: 0 !important;
}

.qty-wrapper a.button-action {
    border: 0 !important;
}

.osc-place-order-wrapper button.action.primary.checkout {
    border-radius: 3px !important;
}

.opc-wrapper #discount-code {
    margin-left: 0 !important;
}

.osc-newsletter label span,
#order-summary-fieldset span {
    margin-left: 4px;
}

.opc-wrapper .fieldset>.field.required>.label a {
    font-size: 14px;
}

.opc-wrapper .fieldset>.field.col-mp,
.opc-wrapper .field.col-mp {
    margin: 0 0 20px;
    padding: 0 10px !important;
}

#create-account-checkbox:checked+label {
    background: none;
}

.opc-wrapper .form-create-account {
    padding-left: 10px;
    padding-right: 10px;
}

.opc-wrapper label.label {
    padding-left: 0;
}

/** product page **/
.content_container {
    background: #fff;
}

.page-product-bundle-confezione-personalizzata .a2a_kit {
    background: transparent;
}

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

.fotorama__stage__frame {
    background: #fff;
}

.fotorama__stage__frame .fotorama__img {
    height: auto;
    left: 50%;
    max-height: 100%;
    max-width: 100%;
    position: static;
    top: 50%;
    -webkit-transform: translate3d(0%, 0%, 0);
    -ms-transform: translate3d(0%, 0%, 0);
    -o-transform: translate3d(0%, 0%, 0);
    transform: translate3d(0%, 0%, 0);
    transition-duration: 0.3s;
    transition-property: width, height, top, left;
    vertical-align: middle;
    width: auto;
}

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

.product-info-main-content {
    text-align: right;
}

.product-info-main-content .product.attribute.overview {
    display: none;
}

.page-product-simple .product-info-main-content .product.attribute.overview {
    display: block;
    text-align: left;
    font-size: 13px;
    font-weight: 500;
    padding-top: 1em;
}

.page-product-configurable .product-info-main .product-info-price .price-box .price-container>span.price-label,
.page-product-configurable .product-options-wrapper .product-info-price .price-label {
    display: none;
}

.product-info-main-content .product-info-price {
    text-align: right;
}

.product-options-bottom .price-box,
.product-info-price .price-box {
    display: inline-block;
}

.product-options-bottom .actions .fa-shopping-cart {
    font-weight: 300;
    padding-left: 0.5em;
}

.product-options-bottom .actions button.primary {
    margin-right: 0;
}

.product-info-main-content .bundle-options-container .product-add-form {
    display: block;
}

.catalog-product-view .nested.options-list .qty-holder {
    display: none;
}

.product-info-main-content .page-title-wrapper.product {
    text-align: left;
}

.bundle-info .discounted {
    display: none;
    font-size: 1.2em;
}

.bundle-info .discounted.active {
    display: block;
}

.bundle-info .discounted .old-price {
    font-style: italic;
    text-decoration: line-through;
    padding: 0 5px;
    font-weight: bold;
}

.bundle-info .discounted .discount {
    color: var(--callipo-dark-red);
    padding: 0 0 0 5px;
}

.product-info-stock-sku {
    display: none !important;
}

.product-info-main-content .bundle-options-wrapper {
    display: none;
}

.bundle-options-container .bundle-summary-wrapper .block-bundle-summary {
    width: inherit;
    margin: 0;
    float: none;
    position: static;
}

.product-social-links .action.tocompare {
    display: none;
}

.catalog-product-view .field.qty,
.bundle-info .field.qty {
    display: inline-block;
    border: 2px solid #eee;
    border-radius: 3px;
    padding: 3px 1em;
}

.catalog-product-view .field.qty .control,
.bundle-info .field.qty .control {
    display: inline-block;
}

.catalog-product-view .field.qty .control input,
.bundle-info .field.qty .control input {
    border: 0;
    text-align: center;
    font-weight: 600;
}

.catalog-product-view .box-tocart .action.primary {
    font-size: 1.2em !important;
    border-radius: 3px;
    text-transform: uppercase;
    font-weight: 500;
    margin-right: 0 !important;
}

.catalog-product-view .box-tocart .action.primary i {
    padding-left: 0.5em;
    font-weight: 900;
}

.catalog-product-view .product.info.detailed {
    background: #fff;
}

.catalog-product-view .product.info.detailed .product.data.items {
    margin-left: 0;
    margin-right: 0;
    padding-bottom: 15px;
    text-align: center;
}

.catalog-product-view .product.info.detailed .data.item.title {
    display: inline-block;
    float: none;
    position: relative;
    left: 0;
    margin: 0 2px;
}

.catalog-product-view .product.info.detailed .data.switch {
    border: 0;
    background: transparent;
    font-size: 12px;
    text-transform: unset;
    position: relative;
    font-weight: 500;
    color: #afb4b8;
}

.catalog-product-view .product.info.detailed .active .data.switch,
.catalog-product-view .product.info.detailed .data.switch:active {
    color: var(--callipo-main-color);
}

.catalog-product-view .product.info.detailed .data.item.title:after {
    content: "";
    height: 4px;
    position: absolute;
    left: 0;
    width: 100%;
    border-radius: 5px;
    background: #afb4b8;
    bottom: 0;
    z-index: 2;
}

.catalog-product-view .product.info.detailed .data.item.title.active:after {
    background-color: var(--callipo-main-color);
}

.catalog-product-view .product.info.detailed .data.item.content {
    text-align: left;
    margin: 0 auto;
    border: 0;
}

.catalog-product-view .product.info.detailed .data.item.content .product.attribute,
.catalog-product-view .product.info.detailed .data.item.content .additional-attributes-wrapper {
    max-width: 70%;
    margin: 0 auto;
}

.catalog-product-view .additional-attributes-wrapper .attr_vn_etichetta .label {
    display: none;
}

.product.info.detailed .additional-attributes>tbody>tr.attr_vn_etichetta>td.data {
    padding-left: 0;
    font-weight: 600;
}

.catalog-product-view .additional-attributes-wrapper .table>:not(:first-child) {
    border: 0 none;
}

.catalog-product-view .additional-attributes-wrapper .table tbody {
    display: flex;
    flex-wrap: wrap;
}

.catalog-product-view .additional-attributes-wrapper .table tr {
    width: 100%;
}

.catalog-product-view .additional-attributes-wrapper .table th,
.catalog-product-view .additional-attributes-wrapper .table td {
    padding: 5px 5px 0 0 !important;
    vertical-align: middle;
}

.catalog-product-view .additional-attributes-wrapper .table th:after {
    content: ': ';
}

.page-product-bundle .bundle-options-container .bundle-options-wrapper,
.page-product-bundle .bundle-options-container .product-options-wrapper {
    float: none;
    width: inherit;
}

.page-product-bundle .product-add-form .product-options-wrapper .field .control {
    width: auto;
}

.fieldset-bundle-options {
    margin: 0;
}

.fieldset-bundle-options .option .label {
    display: none;
}

.bundle-options-container .product-options-wrapper .field.choice .label {
    display: inline-block;
    margin-left: 0;
    border: 2px solid #ddd;
    background: #f4f4f4;
    padding: 2px 5px;
    cursor: pointer;
    transition: all 0.2s;
    color: #888;
}

.bundle-options-container .product-options-wrapper .field.choice .label:hover,
.bundle-options-container .product-options-wrapper .field.choice input[type="radio"]:checked+.label {
    border-color: var(--callipo-main-color);
    background: #fff;
    color: #000;
}

.bundle-options-container .product-options-wrapper,
.bundle-options-container .product-options-wrapper .fieldset {
    margin: 0;
}

.bundle-options-container .product-options-wrapper .field.choice input[type="radio"] {
    visibility: hidden;
    position: absolute;
    overflow: hidden;
    height: 0;
    width: 0;
}

.bundle-options-container .block-bundle-summary .price-box {
    margin-bottom: 0;
}

.fieldset-bundle-options .field.choice input[type="radio"]+label.label:before {
    content: "\f111";
    font-family: 'Font Awesome 5 Pro';
    font-weight: 500;
    transition: all 0.2s;
    padding: 0 0.5em 0 0;
    display: none;
}

.fieldset-bundle-options .field.choice input[type="radio"]:checked+label.label:before {
    content: "\f058";
    color: var(--callipo-main-color)
}

.fieldset-bundle-options .locked_quantity {
    font-weight: 600;
    display: none;
}

.bundle-summary-custom {
    padding-top: 1em;
}

.bundle-summary-custom .item {
    display: none;
}

.bundle-summary-custom .item.active {
    display: block;
}

#bundleSummary .label,
#bundleSummary .value,
.catalog-product-view .field.qty .label {
    color: #747474;
    font-weight: 500;
    font-size: 1.2em;
    vertical-align: middle;
}

.catalog-product-view .field.qty .label {
    padding-right: 0 !important;
    margin-bottom: 3px;
}

#bundleSummary .value.unit_price_value,
#bundleSummary .qty_value {
    color: #000;
}

#bundleSummary .label.qty_label,
#bundleSummary .qty_value {
    font-style: italic;
}

#bundleSummary .qty_value {
    font-weight: 400;
}

.catalog-product-view .price-box .price-wrapper>.price,
.bundle-options-container #bundleSummary .price-box .price-wrapper>.price {
    font-size: 30px;
    line-height: 1em;
}

#bundleSummary .package_qty {
    font-weight: 500;
    font-size: 1.5em;
    line-height: 1.4em;
    padding-bottom: 0.5em;
}

.bundle-options-container p.required {
    display: none;
}

.bundle-options-wrapper .product-options-bottom {
    display: none;
}

.product-options-bottom .field.qty .control {
    display: inline-block;
}

.product-options-bottom .field.qty label.label {
    padding-right: 0.5em;
}

strong#block-related-heading {
    text-align: center;
    font-size: 30px;
    display: block;
    font-weight: 300;
}

.acquistabile_singolarmente {
    font-weight: 500;
    display: none;
}

.acquistabile_singolarmente a {
    color: #000;
}

.acquistabile_singolarmente.default {
    display: block;
}

.acquistabile_singolarmente a>i.icon-custom-box {
    color: #000;
    font-size: 1.8em;
    line-height: 1;
    vertical-align: middle;
    padding-right: 0.5em;
    text-shadow: 0 0 1px black;
}

.contenuto_confezione .type {
    font-size: 30px;
    font-weight: 300;
}

.contenuto_confezione .product_content {
    background: #fff;
    border-radius: 3px;
    height: 100%;
}

.contenuto_confezione .product_image_wrap {
    position: relative;
    height: 0;
    padding-bottom: 100%;
}

.contenuto_confezione .product_image {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}

.contenuto_confezione .product_name {
    min-height: 55px;
}

.contenuto_confezione .info_weight_qty {
    font-size: 12px;
    font-style: italic;
}

.sp_social_share_inline_widget:before {
    line-height: 2.9;
    vertical-align: middle;
    display: inline-block;
    height: 100%;
    padding-right: 0.5em;
    font-size: 10px;
    font-weight: 500;
    margin-top: 2px;
}

html[lang="it"] .sp_social_share_inline_widget:before {
    content: "CONDIVIDI";
}

html[lang="en"] .sp_social_share_inline_widget:before {
    content: "SHARE";
}

.sp_social_share_inline_widget .a2a_kit_size_16 span.a2a_svg {
    border-radius: 3px !important;
}

.a2a_default_style a:last-child {
    padding-right: 0;
}

.giftcard-template-setting .giftcard-design-button-container button,
.giftcard-information-container .giftcard-design-button-container button {
    font-weight: 700;
}

html body .giftcard-design-button-container button:focus,
html body .giftcard-design-button-container button:hover {
    background: inherit;
    color: inherit;
    opacity: 1;
}

.giftcard-template-setting .giftcard-design-button-container,
.giftcard-information-container .giftcard-design-button-container {
    color: #686868;
    background: #f5f5f5;
    font-size: 12px;
    font-weight: 700;
    border: 2px solid;
}

.giftcard-template-setting .giftcard-design-button-container.active,
.giftcard-information-container .giftcard-design-button-container.active {
    border-color: var(--callipo-main-color);
    background: #fff;
    color: #000;
}

.giftcard-template-container .giftcard-template-setting .giftcard-template-setting-content .giftcard-template-choose-images {
    border: 1px solid #ccc;
    background-color: #f8f8f8;
    margin: 11px;
}

.giftcard-template-container .giftcard-template-setting .giftcard-template-setting-content .image.item-template.active .template-image-wrapper {
    border-color: var(--callipo-main-color);
}

.giftcard-template-container .giftcard-template-container-preview .giftcard-template-preview .preview-giftcard {
    position: relative;
    overflow: visible;
    border: 0 none;
}

.giftcard-template-container .giftcard-template-container-preview .giftcard-template-preview .preview-giftcard:after {
    content: "";
    height: 22px;
    width: 100%;
    border-radius: 50%;
    background: #0009;
    position: absolute;
    top: 100%;
    left: 0;
    display: block;
    transform: scale(0.8);
    filter: blur(17px);
    z-index: -1;
    margin-top: -11px;
}

.giftcard-information-container .giftcard-field-label {
    text-align: left;
}

.giftcard-template-container {
    padding-top: 30px;
    min-height: auto !important;
}

.giftcard-template-container .giftcard-template-container-preview {
    margin: auto;
    position: relative;
    height: 0 !important;
    padding-top: 44%;
}

.giftcard-template-container .giftcard-template-container-preview .giftcard-template-preview {
    position: absolute;
    top: 0;
    left: 0;
}

.gift-card-saved-list .saved-list-title {
    padding-left: 0;
    padding-right: 0;
}

.checkout-payment-method .payment-option-content form.form-discount .actions-toolbar .primary button.action.action-apply {
    border: 0;
    box-shadow: 0 0 0;
    background-color: var(--callipo-main-color);
    color: #fff;
    border-radius: 3px;
    margin: 0;
    height: 30px;
}

.checkout-payment-method .payment-option-content form.form-discount .actions-toolbar .primary button.action.action-cancel {
    border: 0;
    box-shadow: 0 0 0;
    background-color: var(--callipo-dark-grey);
    color: #fff;
}

#discount-giftcard-form .fieldset.coupon {
    display: flex;
    margin-bottom: 0;
}

#discount-giftcard-form .actions-toolbar {
    margin: 0;
}

#discount-giftcard-form .fieldset.coupon .field {
    width: 55%;
}

.opc-wrapper .form-discount .gift-card-check-code>.fieldset>.field>label,
.opc-wrapper .form-discount .gift-card-check-code>.fieldset>.field>.control {
    display: inline-block;
    width: auto !important;
    vertical-align: top;
    margin-left: 0 !important;
    padding-right: 0.5em;
}

.opc-wrapper .form-discount .gift-card-check-code>.fieldset>.field>label:after {
    content: ":";
}

.checkout-payment-method .payment-option._collapsible .payment-option-content.saved-list-content {
    padding: 0;
}

ul.giftcard-amount {
    text-align: left;
}

.mp-giftcard-preview {
    display: none;
}

.shipping-hint .hint {
    background-color: #fff;
    padding: 10px 15px;
}

.shipping-hint .hint i {
    margin-right: 5px;
    font-size: 15px;
    color: #0bab0b;
    vertical-align: text-bottom;
}

/** sitemap **/
.xsitemap ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.xsitemap ul a {
    font-weight: 400;
    font-size: 1.3rem;
}

.xsitemap>div {
    padding: 0 var(--bs-gutter-x, 0.75em) 0 0;
}

/** recipes **/
.socialcitites_recipes_route-recipelist-index .recipes .item .recipe-image img {
    height: 100% !important;
}

.recipes-view-wrapper .pagebuilder-column-group {
    flex-wrap: wrap;
}

.products.list span.product-image-wrapper {
    background: url(../images/loading.gif);
    background-size: 10%;
    background-repeat: no-repeat;
    background-position: 50%;
}

/** quantity selector **/
.input-group-qty .input-group-button {
    background: white;
    color: #000;
}

.input-group-qty .input-group-input {
    max-width: 3em
}

.input-group-qty .input-group-button:hover,
.input-group-qty .input-group-button:focus {
    background: white;
    opacity: 0.5;
    color: #000;
}

.table#shopping-cart-table tr.item-info td.qty {
    min-width: 170px
}

.cart.table-wrapper .col.qty .input-text,
.minicart-items .item-qty {
    width: 45px
}

.minicart-items .update-cart-item {
    width: 65px;
    padding: 5px;
    font-size: 1rem;
}

.minicart-items .product-item-details {
    padding-bottom: 10px
}

#mini-cart .product.actions {
    position: absolute;
    bottom: 5px;
    right: 8px;
}

.minicart-wrapper .block-minicart li {
    position: relative
}

/** promo **/
.sconti-col {
    border-radius: 3px;
    overflow: hidden;
}

.sconti-col p {
    margin: 0;
    padding: 0;
}

.sconti-col strong {
    font-weight: 700;
}

.sconti-top {
    background: #fff;
}

.sconti-bottom {
    background: var(--callipo-main-color);
    color: #fff;
}

.sconti-top,
.sconti-bottom {
    line-height: 1.5;
    padding: 1.2em;
}

.sconti-bottom * {
    color: #fff;
}
