@charset "UTF-8";
@font-face {
    font-family: 'fontello';
    src: url('../../font/fontello.eot?80747879');
    src: url('../../font/fontello.eot?80747879#iefix') format('embedded-opentype'),
    url('../../font/fontello.woff2?80747879') format('woff2'),
    url('../../font/fontello.woff?80747879') format('woff'),
    url('../../font/fontello.ttf?80747879') format('truetype'),
    url('../../font/fontello.svg?80747879#fontello') format('svg');
    font-weight: normal;
    font-style: normal;
}

[class^="wooup-icon-"]:before, [class*=" wooup-icon-"]:before
{
    font-family: "fontello";
    font-style: normal;
    font-weight: normal;
    speak: never;
    display: inline-block;
    text-decoration: inherit;
    width: 1em;
    margin-right: .2em;
    text-align: center;
    font-variant: normal;
    text-transform: none;
    line-height: 1em;
    margin-left: .2em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.wooup-icon-basket:before { content: '\e800'; } /* '' */
.wooup-icon-briefcase:before { content: '\e802'; } /* '' */
.wooup-icon-basket-1:before { content: '\e803'; } /* '' */
.wooup-icon-truck:before { content: '\e804'; } /* '' */
.wooup-icon-list-add:before { content: '\e805'; } /* '' */
.wooup-icon-flight:before { content: '\e806'; } /* '' */
.wooup-icon-basket-alt:before { content: '\e807'; } /* '' */
.wooup-icon-cog:before { content: '\e808'; } /* '' */
.wooup-icon-arrows-cw:before { content: '\e80a'; } /* '' */
.wooup-icon-info-circled:before { content: '\e80c'; } /* '' */
.wooup-icon-floppy:before { content: '\e80d'; } /* '' */
.wooup-icon-comment:before { content: '\e80e'; } /* '' */
.wooup-icon-attention:before { content: '\e80f'; } /* '' */
.wooup-icon-gift:before { content: '\e810'; } /* '' */
.wooup-icon-basket-2:before { content: '\e811'; } /* '' */
.wooup-icon-bag:before { content: '\e812'; } /* '' */
.wooup-icon-pencil:before { content: '\e813'; } /* '' */
.wooup-icon-pause:before { content: '\e816'; } /* '' */
.wooup-icon-calendar:before { content: '\e817'; } /* '' */
.wooup-icon-play:before { content: '\e81a'; } /* '' */
.wooup-icon-empty-cart:before { content: '\e81b'; } /* '' */
.wooup-icon-trash:before { content: '\e83d'; } /* '' */
.wooup-icon-sort:before { content: '\f0dc'; } /* '' */
.wooup-icon-newspaper:before { content: '\f1ea'; } /* '' */
.wooup-icon-bicycle:before { content: '\f206'; } /* '' */
.wooup-icon-opencart:before { content: '\f23d'; } /* '' */
.wooup-icon-shopping-bag:before { content: '\f290'; } /* '' */
.wooup-icon-linkedin-squared:before { content: '\f30c'; } /* '' */
.wooup-icon-camera:before { content: '\e814'; } /* '' */
.wooup-icon-fast-food:before { content: '\e815'; } /* '' */
.wooup-icon-videocam:before { content: '\e80b'; } /* '' */
.wooup-icon-tablet:before { content: '\e81c'; } /* '' */
.wooup-icon-thumbs-up:before { content: '\e81d'; } /* '' */
.wooup-icon-heart:before { content: '\e81e'; } /* '' */

.flex-row-center,
.flex-row-between,
.flex-row-end,
.flex-row-start,
.flex-column-center,
.flex-column-start,
.flex-column-end,
.flex-column-between
{
    display:flex;
}

.flex-row-center,
.flex-row-between,
.flex-row-end,
.flex-row-start
{
    flex-flow:row;
}

.flex-column-between,
.flex-column-center,
.flex-column-start,
.flex-column-end
{
    flex-flow:column;
}

.flex-row-center
{
    justify-content:center;
    align-items:center;
}

.flex-column-between,
.flex-row-between
{
    justify-content:space-between;
    align-items:center;
}

.flex-row-start
{
    justify-content:flex-start;
    align-items:center;
}

.flex-row-end
{
    justify-content:flex-end;
    align-items:center;
}

.flex-column-center
{
    justify-content:center;
    align-items:center;
}

.flex-column-start
{
    justify-content:center;
    align-items:flex-start;
}

.flex-row-end.wrap,
.flex-row-start.wrap,
.flex-row-between.wrap,
.flex-row-center.wrap
{
    flex-flow:row wrap;
}

.flex-row-end.start,
.flex-row-start.start,
.flex-row-between.start,
.flex-row-center.start
{
    align-items:flex-start;
}

.flex-row-end.end,
.flex-row-start.end,
.flex-row-between.end,
.flex-row-center.end
{
    align-items:flex-end;
}

.flex-column-start.wrap,
.flex-column-end.wrap,
.flex-column-center.wrap
{
    flex-flow:column wrap;
}

.flex-column-start.start,
.flex-column-end.start,
.flex-column-center.start
{
    justify-content:flex-start;
}

.web3-cart-modal-cover,
.web3-cart-button,
.web3-cart-product,
.web3-cart-remove-product,
.web3-cart-product .qty-change,
.wooup-shipping-bar:after,
.wooup-shipping-bar .shipping-icon,
.shipping-bar-icon,
.shipping-bar-icon:after,
.web3-cart-product-add a,
.web3-cart-product .image,
.web3-cart-java-bullet,
.wc-nav-prev,
.wc-nav-next
{
    transition:300ms ease all;
}

.web3-cart-product .qty
{
    transition:200ms ease all;
}

.web3-cart-container-shop-header,
.web3-cart-empty-modal,
.web3-cart-container-close-icon,
.web3-cart-container-header-text,
.web3-cart-product,
.web3-cart-product .heading,
.web3-cart-checkout-button,
.web3-cart-remove-product,
.web3-cart-product.upsell,
.web3-cart-empty-modal .web3-cart-button,
.web3-cart-footer
{
    box-sizing:border-box;
}

.web3-cart-empty-modal .heading,
.web3-cart-empty-modal .fulltext,
.web3-cart-empty-modal .sub-heading,
.web3-cart-product .btn-qty,
.web3-cart-remove-product,
.web3-cart-product .qty-change,
.shipping-bar-text,
.wooup-shipping-bar .shipping-icon,
.web3-cart-button-show-cart .wc-item-count,
.web3-cart-container-close-icon
{
    text-align: center;
}

.shipping-progress-bar,
.web3-cart-product,
.web3-cart-inner-container .image,
.web3-cart-checkout-upsell .image,
.shipping-bar-plugin,
.wooup-shipping-bar
{
    position:relative;
}

.web3-cart-button-show-cart,
.web3-cart-modal-cover-container,
.wooup-shipping-bar .shipping-icon
{
    background-color:var(--modal-bg-color);
}

.web3-cart-product .discounted,
.web3-cart-product-category,
.web3-cart-product .upsell-heading,
.web3-cart-container-shop-header,
.web3-cart-checkout-button,
.web3-cart-empty-modal .web3-cart-button,
.web3-cart-empty-modal .heading,
.footer-coupon .coupon_button
{
    text-transform: uppercase;
}

.web3-cart-checkout-upsell .web3-cart-java-items-carousel
{
    padding: 5px 10px;
}

.web3-cart-cart-notice:not(:empty)
{
    width: 100%;
    border-bottom: 1px solid rgba(0,0,0,.03);
    color: white;
    padding: 10px 30px;
    font-size:0.9em;
}

.web3-cart-cart-notice.error
{
    background:#e2401c;
    border-left:.6180469716em solid rgba(0,0,0,.15);
}

.web3-cart-checkout-upsell .web3-cart-product.upsell
{
    margin:0px 0px 15px 0px;
    width:100%;
    box-shadow: 0 0.4rem 1rem rgb(0 0 0 / 5%);
    background-color: white;
}

.web3-cart-cart-products
{
    overflow:auto;
}

.web3-cart-cart-upsell,
.web3-cart-cart-products,
.web3-cart-modal-upsell
{
    width:100%;
}

.web3-cart-cart-products::-webkit-scrollbar-thumb
{
    background: var(--font-color);
    height: 100px;
    border-radius: 0;
}

.web3-cart-cart-products::-webkit-scrollbar
{
    width: 4px;
}

.web3-cart-cart-products::-webkit-scrollbar-track
{
    background: rgba(0,0,0,0.02);
    border-left: 1px solid rgba(255,255,255,.1);
}

.web3-cart-button:hover,
.checkout-btn:hover,
.cart-btn:hover,
.wc-nav-prev:hover,
.wc-nav-next:hover,
.coupon-list .coupon:hover:before
{
    transform:scale(1.03);
    background:var(--w3cca-button-color-hover);
    color:var(--w3cca-button-font-color-hover);
}

.web3-cart-button-show-cart,
.web3-cart-modal-cover-container,
.web3-cart-product .btn-qty
{
    color: var(--font-color);
}

.web3-cart-product .discounted.special, 
.web3-cart-product-add a,
.web3-cart-product.upsell-product .qty
{
    background-color: var(--upsell-color) !important;
    color:var(--upsell-text-color) !important;
    border:none !important;

}

.web3-cart-product-add a
{
    line-height:15px !important;
    height:auto !important;
}

.web3-cart-product .qty,
.web3-cart-button-show-cart .wc-item-count,
.web3-cart-product .discounted,
.wooup-upsellator-label.label-offer
{
    background-color: var(--item-count-background);
    color:var(--item-count-color);
}

.web3-cart-button, .checkout-btn, .cart-btn, 
.wc-nav-prev,
.wc-nav-next
{
    background:var(--button-color);
    color:var(--font-button-color);
}

.wooup-hidden,
.elementor-menu-cart__container,
.shipping-bar-plugin.empty,
.web3-cart-product .out-of-stock,
.web3-cart-modal-cover,
.web3-cart-product .image .loader
{
    display:none;
}

.web3-cart-product .out-of-stock
{

    margin-top: 2px;
    margin-left:1px;
    text-decoration: underline;
    border-radius: 5px;
    font-size: 9px;

}

.product-name .woo-wooup-cart-name
{
    font-weight: bold;
    font-size: 12px;
}

/* Shop Labels */
.wooup-upsellator-labels .wooup-upsellator-label
{
    padding: 5px 30px;
    font-size: 11px;
    font-weight: bold;
    text-transform: uppercase;
    text-align:center;
    margin-bottom:2px;
}

.wooup-upsellator-labels.rotated
{
    right: 0;
    transform: rotate( 45deg) translate( 30%, -40% );
    top: 0%;
    position: absolute;
}

.wooup-upsellator-labels.inline
{
    position:relative;
    display: flex;
    justify-content: center;
    margin-bottom:10px;
}

.upsellator-before-short-description
{
    margin-bottom:10px;
}

.single .wooup-upsellator-labels.inline
{
    justify-content: flex-start;
}

.web3-cart-product.free-gift-product .discounted,
.web3-cart-product.free-gift-product .qty,
.wooup-upsellator-label.label-gift
{
    background-color:var(--free-gift-color) !important;
    color:var(--gift-text-color) !important;
}

.web3-cart-product.free-gift-product span.free,
.product-name .woo-wooup-cart-name.gift,
.web3-cart-product.free-gift-product .web3-cart-product-category
{
    color:var(--free-gift-color);
    opacity:1;
}

.web3-cart-product-category,
.web3-cart-product .upsell-heading
{
    font-size: 0.7em;
    font-weight:bold;
    text-align:left;
}

.web3-cart-product-category
{
    opacity: 0.6;
}

.web3-cart-product-category.saved
{
    opacity:1;
    color:var(--item-count-background);
}

.web3-cart-product-add a:hover
{
    background:var(--w3cca-button-color-hover) !important;
    color:var(--w3cca-button-font-color-hover) !important;
    transform:scale(1.1);
    -webkit-transform: scale(1.1);
    backface-visibility:hidden;
}

.web3-cart-product-add a:hover:after
{
    content:'' !important;
}

.web3-cart-footer a
{
    color:var(--font-button-color);
}

.web3-cart-product-title,
.web3-cart-footer a,
body .web3-cart-product-add a
{
    text-decoration: none !important;
}

.web3-cart-button-show-cart.right
{
    right: 20px;
}

.web3-cart-button-show-cart.left
{
    left: 20px;
}

.web3-cart-button-show-cart.hidden
{
    display:none;
}

.footer-buttons
{
    width:100%;
    flex-wrap: wrap;
}

.web3-cart-modal-cover-container.small .footer-buttons a
{
    width:100%;
    max-width:100%;
    margin:0px;
}

.coupon-list .coupon::before
{
    content: '✕';
    position: absolute;
    right: 0px;
    transition:300ms ease all;
    height: 100%;
    width: 19px;
    top: 0px;
    display: flex;
    justify-content: center;
    background: rgba(0,0,0,0.05);
    align-items: center;

}

.coupon-list .coupon
{
    cursor: pointer;
    margin: 3px 3px 3px 0px;
    background: rgba(0,0,0,0.05);
    font-size: 12px;
    border-radius: 5px;
    padding: 2px 30px 2px 10px;
    position: relative;
}

.footer-coupon-container
{
    width: 100%;
    padding-bottom: 15px;
    border-bottom: 1px solid rgba(0,0,0,.03);
    margin-bottom: 15px;
}

.footer-coupon .loader
{
    max-height:80%;
}

.footer-coupon input::placeholder,
.footer-coupon input
{
    font-size:12px;
}

.web3-cart-product.fake-product
{
    padding-top:20px !important;
    padding-bottom:30px !important;

    margin-bottom:1px;
}

.w3cartf-fake-product--text i
{
    position: absolute;
    right: 0%;
    top: 50%;
    font-size: 80px;
    transform: translate( 0%, -50% );
    opacity: 0.04;
}

.w3cartf-fake-product--overlay
{
    position: absolute;
    left: 0px;
    top: 0px;
    
    height: 100%;
    width:100%;
    display: flex;
    background-color: rgba(0,0,0,0.02);
    align-items: center;
    z-index: 999;
    backdrop-filter: blur( 5px );
   color:var(--gift-banertext-color) !important;
      font-size:var(--gift-banertextsize-color);
}

.footer-coupon input,
.footer-coupon .coupon_button
{
    height:35px !important;
}

.footer-coupon input
{
    flex-grow:1;
    border: 1px solid #ededed;
    box-shadow: none !important;
}

.footer-coupon .coupon_button
{
    border-radius: 0px 5px 5px 0px;
    font-size: 0.7em;
    padding:0px 25px;
    min-width:150px;
    cursor:pointer;
}

.web3-cart-notifications:empty
{
    display:none;
}

.web3-cart-notifications
{
    position:absolute;
    width:100%;
    color:white;
    height:90px;
    line-height:90px;
    padding:0px 30px;
    text-align:center;
    background-color:#6eb76e;
}

.web3-cart-notifications[data-type="error"]
{
    background-color: #e2401c;
}

.has-loader .loader
{
    display:none;
}

.has-loader.loading .loader
{
    display:block;
}

.has-loader.loading .text
{
    display:none;
}

@media screen and (min-width: 621px)
{
    .web3-cart-modal-cover-container.small .web3-cart-container-shop-header
    {
        width:100%;
        left:0px;
    }

    .web3-cart-modal-cover-container.small .web3-cart-notifications
    {
        height:65px;
        line-height: 65px;
    }

    .web3-cart-modal-cover-container.small .web3-cart-product
    {
        padding:10px;
    }

    .web3-cart-modal-cover-container.small .web3-cart-container-header-image img
    {
        height:35px;
    }

    .web3-cart-modal-cover-container.small .web3-cart-container-shop-header
    {
        height:65px;
    }

    .web3-cart-modal-cover-container.small .web3-cart-container-close-icon
    {
        font-size: 22px;
        width: 65px;
        line-height: 65px;
        height: 65px;
    }
}

.web3-cart-modal-cover-container.small .web3-cart-checkout-button
{
    height:50px;
}

.web3-cart-modal-cover-container.small .footer-buttons a:not(:first-child)
{
    margin-top:10px;
}

.wc-upsellator-footer-button
{
    flex-grow:1;
}

.wc-upsellator-footer-button.cart
{
    margin-right:10px;
    max-width:35%;
}

.web3-cart-button-show-cart
{
    position: fixed;
    height: 60px;
    width: 60px;
    border-radius: 50%;
    bottom: 20px;
    box-shadow: 0 0.4rem 3rem rgba(0,0,0,.1);
    cursor: pointer;
    z-index: 2222;
    font-size: 30px;
}

.web3-cart-product-add
{
    position: absolute;
    bottom: 10px;
    display:flex;
}

.web3-cart-button-show-cart .wc-item-count
{
    height: 25px;
    width: 25px;
    position: absolute;
    line-height: 26px;
    font-size: 14px;
    left: -3px;
    bottom: -3px;
    border-radius: 50%;
    font-size: 12px;
    font-weight: bold;
}

.web3-cart-modal-cover
{

    left: 0;
    z-index: 9998;
    position: fixed;
    top: 0;
    bottom: 0;
    width: 100%;
    opacity: 0;
    background: rgba(95,92,92,.6);

}

.web3-cart-product.upsell
{
    margin: 15px;
    margin-bottom:0px;
    margin-top:0px;
    padding: 10px;
    border-radius: 8px;
    width: calc( 100% - 30px );
    /*box-shadow: 0 0.7rem 1rem rgba(0,0,0,.1); */
}

.web3-cart-product-add a
{
    padding: 8px 15px !important;
    font-size: 0.7em !important;
    border-radius: 5px !important;
    white-space: initial !important;
}

.web3-cart-product .upsell-heading,
.product-name .woo-wooup-cart-name.upsell,
.web3-cart-product.upsell-product .web3-cart-product-category
{
    color:var(--upsell-color);
}

.wc-nav-prev,
.wc-nav-next,
.web3-cart-java-bullet,
.web3-cart-java-items-carousel .web3-cart-product
{
    cursor:pointer;
}

.wc-nav-prev,
.wc-nav-next
{
    width: 25px;
    height: 25px;
    font-size: 21px;
    font-family: Arial;
    line-height: 22px;
    text-align: center;
    border-radius: 50%;
}

.wc-nav-prev{ opacity:0; }

.web3-cart-java-bullet
{
    height:5px;
    width:13px;
    border-radius:3px;
    margin:0px 3px;
    opacity:0.3;
    background-color:var(--upsell-color);
}

.web3-cart-java-items-carousel-nav
{
    height:40px;
    padding: 0px 35px;
}

.web3-cart-java-items-carousel
{
    margin: 0 auto;
    overflow: hidden;
    width: 100%;
    padding: 0px 0px;
}

.web3-cart-product.composite-child .qty
{
    height:1.7em;
    width:1.7em;
    font-size:0.6em;
}
.web3-cart-product.composite-child .web3-cart-price-container:before
{
    font-family: 'FontAwesomeCP';
    font-size: 0.8rem;
    display: inline-block;
    transform: rotate(90deg);
    content: "\e811";
    margin: 0 12px 0 3px;
    opacity: .17;
}

.web3-cart-inner-container .web3-cart-product.composite-child .image:after
{
    height:70px;
    background:#f7f5f580;
    width:10px;
    z-index:-1;
    top:-100%;
    content:'';
    position:absolute;
    left:50%;
    transform:translateX( -50% );
}

.web3-cart-inner-container .web3-cart-product.composite-child .image
{
    width:80px;
}

.web3-cart-product.composite-child  .image,
.web3-cart-product.composite-child  .options,
.web3-cart-product.composite-child  .heading
{
    height:70px;
}

.web3-cart-item-composite-option
{
    font-size:12px;
    line-height:12px;
}

.web3-cart-java-items-carousel-inner
{
    position: relative;
    white-space: nowrap;
    width: 100%;
    transform: translate3d(0,0,0);
    -webkit-transform: translate3d(0,0,0);
    display: flex;
    transition:400ms ease all;
}

.web3-cart-java-items-carousel-inner.stacked .web3-cart-product
{
    margin-bottom:0px;
}

.web3-cart-checkout-upsell .web3-cart-product.upsell
{
    margin-bottom:15px !important;
}

.web3-cart-java-items-carousel-inner.stacked .web3-cart-product:last-child
{
    margin-bottom:15px;
}

.web3-cart-java-items-carousel-inner.stacked
{
    flex-flow:column;
}

.web3-cart-java-items-carousel .web3-cart-product
{
    flex: 0 0 auto;
    white-space: normal;
}

.web3-cart-java-bullet.active
{
    opacity:1;
    width:35px;
}

.wc-items-container
{
    width: 100%;
    overflow: auto;
    flex-grow: 1;
    max-width: 100% !important;
    margin: 0px !important;
}

.web3-cart-inner-container
{
    flex-shrink:1;
    flex-grow:1;
    overflow: auto;
    overflow-x: hidden;
}

.web3-cart-product .upsell-text
{
    font-size: 0.75em;
    line-height: 1em;
    margin-top: 5px;
    max-width: 250px;
    font-weight: 500;
    width: 100%;
    text-align:left;
}

.web3-cart-product .currency,
.web3-cart-footer .currency
{
    font-size: 0.6em;
    margin-left: 2px;
    font-weight:bold;
}

.web3-cart-product-price.striked
{
    font-size: 0.6em;
    text-decoration: line-through;
    opacity: 0.5;
    margin-right: 5px;
}

.web3-cart-product-price
{
    font-weight:bold;
}

.wc-footer-subtotal
{
    font-weight: bold;
    font-size: 1.2em;
    padding-right:5px;
    line-height: 1em;
}

.web3-cart-product-title
{
    color: inherit;
    font-weight: bold;
    display: -webkit-box;
    text-align:left;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.web3-cart-product .btn-qty::-webkit-inner-spin-button,
.web3-cart-product .btn-qty::-webkit-outer-spin-button
{
    -webkit-appearance: none !important;
    margin: 0 !important;
    display:none !important;
}

.web3-cart-modal-cover.opened
{
    display: block;
    opacity: 1;
}

.web3-cart-modal-cover-container:not(.opened)
{
    pointer-events:none;
}

.web3-cart-checkout-upsell
{
    font-size:var(--base_font_size);
}

.web3-cart-modal-cover-container.small
{
    width:550px;
}

.web3-cart-modal-cover-container
{
    height: 100%;
    width: 800px;
    max-width: 100%;
    transform: translate3D(100%,0,0);
    -webkit-transform: translate3D(100%,0,0);
    top: 0;
    font-size:var(--base_font_size);
    position: fixed;
    right: 0;
    z-index: 19999;
    display: flex;
    flex-flow: column;
    justify-content: flex-start;
    opacity:0;
    transition:1200ms ease all;
}

.web3-cart-product-price.currency-before,
.shipping-bar-plugin.currency-before .web3-cart-product-price
{
    display:inline-flex;
    flex-flow:row-reverse;
    align-items: baseline;
}

.web3-cart-product-price.currency-before .currency,
.shipping-bar-plugin.currency-before .web3-cart-product-price .currency
{
    margin-left:0px;
    margin-right:2px;
}

.web3-cart-modal-cover-container.opened
{
    transform: translate3D(0,0,0);
    -webkit-transform: translate3D(0,0,0);
    opacity: 1;
}

.web3-cart-container-shop-header
{
    height:30px;
    width: calc( 100% + 90px );
  /* background-color: rgba(0,0,0,.015);
    border-bottom: 1px solid rgba(0,0,0,.03); */
    left: -90px;
    position:relative;
}

.web3-cart-modal-cover-container.logo .web3-cart-container-shop-header
{
    background:transparent;
}

.web3-cart-modal-cover-container.logo .web3-cart-container-shop-header
{
    border-bottom:none;
}

.web3-cart-container-header-text
{
    text-align:right;
    padding: 25px 35px;
}

.web3-cart-container-header-image img
{
    height:50px;
    padding-right: 35px;
}

.web3-cart-container-close-icon
{
    font-size: 30px;
    font-family: Arial;
    cursor: pointer;
    width: 90px;
    height: 100%;
    line-height: 30px;
    color: var(--upsell-modal-close);
    background-color: var(--upsell-modal-close-text);
}

.web3-cart-empty-modal
{
    max-width: 500px;
    width: 70%;
    margin: 0 auto;
    overflow: hidden;
    padding: 0px 20px;
}

.web3-cart-empty-modal .empty-icon
{
    font-size:150px;
    opacity:0.2;
}

.wc-footer-subtotal .discounted-total
{
    font-size: 12px;
    opacity: 0.6;
    margin-left: 5px;
    display:flex;
    margin-right:3px;
}

.web3-cart-empty-modal a
{
    margin-top:30px;
    text-decoration:none;
}

.web3-cart-empty-modal .web3-cart-button, .cart-btn, .checkout-btn,
.web3-cart-checkout-button
{
    width: 100%;
    height: 65px;
    border-radius:5px;
    font-size:0.9em;
    font-weight:700;
}

.web3-cart-empty-modal .heading
{
    font-size: 0.8em;
    font-weight: 900;
    opacity: .5;
    margin-bottom:20px;
}

.web3-cart-empty-modal .fulltext
{
    margin: 10px 0;
    font-size: 1.7em;
    font-weight: 900;
}

.web3-cart-empty-modal .sub-heading
{
    max-width: 300px;
}

.web3-cart-product .image,
.web3-cart-product .options,
.web3-cart-product .heading
{
    height: 90px;
}

.web3-cart-product.upsell,
.web3-cart-product.upsell .heading
{
    height:auto;
}

.web3-cart-product.upsell .heading,
.web3-cart-product.upsell .options
{
    align-self:stretch;
}

.web3-cart-product.upsell .heading
{
    padding:0px;
    /* padding-top:10px; */
}

.web3-cart-product.upsell .image img:not(.loader)
{
    max-height:90px;
}

.web3-cart-product .options,
.web3-cart-product .heading
{
    justify-content:space-between;

}

.cart-collaterals .web3-cart-cart-upsell
{
    float:left;
    width:100%;
}

.web3-cart-cart-upsell > .web3-cart-product.upsell
{
    margin:0px 0px 15px 0px;
    width:100%;
}

.cart-collaterals .wc-proceed-to-checkout .web3-cart-cart-upsell
{
    float:none;
    width:100%;
}

.web3-cart-product .image
{
    width: calc( 80px * var(--modal-cart-image-ratio ) );
    padding: 5px;
    margin-right: 10px;
    display:flex;
    position:relative;
}

.web3-cart-product .image .loader
{
    position:absolute;
    height:50%;
    width:auto;
    left:50%;
    z-index:9;
    top:50%;
    transform:translate( -50%, -50% );
}

.web3-cart-product .image img:not(.loader)
{
    height:100%;
    border-radius:5px;
    width:100%;
    object-fit:cover;
    margin: 0 auto;
}


.web3-cart-product .image2
{
    width: calc( 120px * var(--modal-cart-image-ratio ) );
    padding: 5px;
    margin-right: 10px;
    display:flex;
    position:relative;
}

.web3-cart-product .image2 .loader
{
    position:absolute;
    height:50%;
    width:auto;
    left:50%;
    z-index:9;
    top:50%;
    transform:translate( -50%, -50% );
}

.web3-cart-product .image2 img:not(.loader)
{
    height:100%;
    border-radius:5px;
    width:100%;
    object-fit:cover;
    margin: 0 auto;
}

.web3-cart-product
{
    width: 100%;
    padding: 10px 25px;
}

.web3-cart-product:not(.upsell):hover
{
    background-color:rgba(0,0,0,0.02);
}

.web3-cart-product .options
{
    padding: 10px 0;
    align-items: flex-end;
    justify-content: space-between;
    flex-shrink:0;
}

.magic {
    display:inline-block;
    position:relative;
    --r:18px;
}

.footer-shipping-row
{
    font-size:0.8em;
}

.magic:before {
    content:"";
    position:absolute;
    top:calc(50% - var(--r));
    left:calc(50% - var(--r));
    width:calc(2*var(--r));
    height:calc(2*var(--r));
    border-radius:50%;
    border:solid var(--shipping_bar_success_background) var(--r);
    transform:scale(0);
    box-sizing:border-box;
}

.magic.activated::before {
    border-width:0;
    transform:scale(1);
    transition:transform 0.5s, border-width 0.5s 0.5s;
}

.magic::after,
.magic i::after{
    content:"";
    position:absolute;
    width: calc(4*var(--r));
    height:calc(4*var(--r));
    left:calc(50% - 2*var(--r));
    top: calc(50% - 2*var(--r));
    --c1:radial-gradient(circle,red 50%   ,transparent 60%);
    --c2:radial-gradient(circle,var(--shipping_bar_success_background) 50%,transparent 60%);
    background:
            var(--c1),var(--c1),var(--c1),var(--c1),
            var(--c2),var(--c2),var(--c2),var(--c2);

    background-size:calc(var(--r)/3) calc(var(--r)/3);
    background-position:
            calc(50% - var(--r)) calc(50% - var(--r)),
            calc(50% + var(--r)) calc(50% - var(--r)),
            calc(50% - var(--r)) calc(50% + var(--r)),
            calc(50% + var(--r)) calc(50% + var(--r)),
            calc(50% +  0px) calc(50% + var(--r)*1.414),
            calc(50% + var(--r)*1.414) calc(50% +  0px),
            calc(50% - var(--r)*1.414) calc(50% +  0px),
            calc(50% +  0px) calc(50% - var(--r)*1.414);
    background-repeat:no-repeat;
    transform:scale(0);
}
.magic i::after {
    background-size:calc(var(--r)/5) calc(var(--r)/5);
    transform:rotate(55deg) scale(0);
}

.magic.activated:after {
    transform:scale(1);
    opacity:0;
    background-size:0 0;
    transition:
            transform 0.5s 0.5s,
            opacity 0.4s 0.9s,
            background-size 0.5s 0.9s;
}
.magic.activated i:after {
    transform:rotate(55deg) scale(1);
    opacity:0;
    background-size:0 0;
    transition:
            transform 0.5s 0.5s,
            opacity 0.4s 0.9s,
            background-size 0.5s 0.9s;
}

.web3-cart-product-discounted
{
    font-size:0.7em;
    text-decoration: line-through;
    margin-top:-5px;
}

.web3-cart-remove-product:hover,
.web3-cart-product .qty-change:hover
{
    background-color: var(--font-color);
    color:var(--modal-bg-color);
}

.web3-cart-remove-product
{
    cursor: pointer;
    font-size: 18px;
    height: 25px;
    width: 25px;
    border-radius:50%;
    line-height: 25px;
}

.web3-cart-product-data
{
    flex-grow:1;
    flex-shrink:1;
}

.web3-cart-product .discounted
{
    position:absolute;
    font-size: 0.55em;
    font-weight:bold;
    padding:2px 8px;
    bottom:12px;
    line-height: 12px;
    border-radius: 4px;
}

.web3-cart-product .heading
{
    width: calc(100% - 150px);
    padding: 10px 0;
    line-height:18px;

}

.prodotto-carrello-info
{
    flex-flow: row;
    flex-grow: 1;
}

.web3-cart-product .qty-change
{
    cursor: pointer;
    width: 20px;
    line-height: 20px;
    font-family: serif;
    font-weight: 100;
    flex-shrink: 0;
    font-size: 13px;
    border-radius: 50%;
}

.web3-cart-product .btn-qty
{
    height: 100%;
    border: none !important;
    background: 0 0 !important;
    width:25px !important;
    font-size: 14px !important;
    font-weight: 700;
    pointer-events: none;
    padding:0px !important;
    box-shadow: none !important;
    margin:0 !important;
    -moz-appearance:textfield;
}

.web3-cart-remove-product,
.web3-cart-product .qty,
.web3-cart-product .qty-change
{
    letter-spacing:0px;
}

.web3-cart-product .qty
{
    height: 1.8em;
    width: 1.8em;
    position: absolute;
    font-weight: 700;
    font-size: 0.7em;
    right: 2px;
    top: 2px;
    border-radius: 50%;
    z-index: 99;
}

.web3-cart-footer
{
    padding: 15px 30px;
    width: 100%;
    border-top: 1px solid rgba(0,0,0,.03);
    background-color: rgba(0,0,0,.015);
    max-width: 100% !important;
    margin: 0px !important;
}

.web3-cart-footer .total
{
    width:100%;
    padding-bottom:10px;
}

.shipping-bar-plugin
{
    border-bottom:1px solid rgba(0,0,0,.03);
    padding: 0px 0 20px 0;
    height:105px;
}

.wooup-shipping-bar
{
    width: 70%;
    max-width:400px;
    left:-16px;
    margin: 0 auto;
    border-radius: 10px;
    background-color: var(--shipping_bar_bar_background_empty);
}

.shipping-progress-bar.active
{
    background-color:var(--shipping_bar_bar_background);
}

.wooup-shipping-bar .shipping-icon
{
    position:absolute;
    top:50%;
    transform:translateY( -50% );
    border-radius:50%;
    background:var(--shipping_bar_bar_background_empty);
}

.wooup-shipping-bar .shipping-icon
{
    width:32px;
    height:32px;
    right:-32px;
    line-height:30px;
    font-size:16px;
}

.wooup-shipping-bar.line .shipping-icon
{
    right:-15px;
}

.wooup-shipping-bar.line2 .shipping-icon
{
    background:transparent;
}

.wooup-shipping-bar.line2 .shipping-icon i
{
    background:transparent;
    opacity:0.2;
}

.shipping-bar-plugin.success .wooup-shipping-bar.line2 .shipping-icon i
{
    color:var(--shipping_bar_success_background);
    opacity:1;
    background:transparent;
}

.shipping-progress-bar.success,
.shipping-bar-plugin.success .wooup-shipping-bar:before,
.shipping-bar-plugin.success .wooup-shipping-bar.line .shipping-icon
{
    background-color:var(--shipping_bar_success_background);
    color:White;
}

.shipping-bar-plugin.success .wooup-shipping-bar .shipping-icon
{
    border:2px solid var(--modal-bg-color);
    width:34px;
    height:34px;
}

.shipping-bar-text
{
    margin-top: 15px;
    max-width: 300px;
    font-size: 0.95em;
    line-height: 1.2em;
}

.web3-cart-footer-subtotal-text
{
    margin-right:10px;
}

.web3-cart-footer-items-count
{
    font-size:1.45em;
}

.items-count-text
{
    font-size:10px;
    line-height:10px;
    padding-left:7px;
}

.shipping-bar-text .web3-cart-product-price
{
    display:inline-block;
}

.wooup-shipping-bar.line:before,
.wooup-shipping-bar.line .shipping-progress-bar:after
{
    display:none;
}

.wooup-shipping-bar.line .shipping-progress-bar
{
    height:18px;
    border-radius:15px;
}

.shipping-progress-bar
{
    height: 2px;
    max-width: 100%;
}

.shipping-progress-bar.transition
{

    transition: width .6s ease,background-color .3s .3s ease-in;

}

/* ShortCodes */

.web3-cart-java-upsellator-cart-count-container
{
    cursor:pointer;
    position:relative;
    width:auto;
    display:inline-block;
    padding:10px;
}

.icon-count-container
{
    position:relative;
}

.web3-cart-java-upsellator-cart-count-container.no-icon .web3-cart-java-upsellator-cart-count
{
    position:relative;
    margin-left:5px;
    right:unset;
    top:unset;
}

.web3-cart-java-upsellator-cart-count-container i
{
    font-size:26px;
}

.web3-cart-java-upsellator-cart-count:empty
{
    display:none;
}

.web3-cart-java-upsellator-cart-count
{
    height: 15px;
    width: 15px;
    position: absolute;
    line-height: 15px;
    top: 0px;
    text-align: center;
    font-size: 11px;
    right: -2px;
    border-radius: 50%;
    background-color: var(--item-count-background);
    color: var(--item-count-color);
}

@media screen and (max-width: 960px)
{

    .cart-collaterals .web3-cart-cart-upsell
    {
        width:100%;
        margin-bottom:40px;
    }

    .web3-cart-product .btn-qty,
    .web3-cart-remove-product
    {
        font-size:14px;
    }

    .web3-cart-modal-cover-container
    {
        width:80vw;
    }

    .web3-cart-checkout-button,
    .web3-cart-empty-modal .web3-cart-button, .cart-btn, .checkout-btn
    {
        height:60px;
    }

    .wc-nav-prev,
    .wc-nav-next
    {
        opacity:0 !important;
    }

    .web3-cart-java-items-carousel-nav
    {
        height:30px;
    }

    .web3-cart-java-bullet
    {
        height:5px;
    }

}

@media screen and (max-width: 620px)
{

    .web3-cart-notifications
    {
        height:60px;
        line-height:60px;
    }

    .web3-cart-container-header-image img
    {
        height:40px;
        padding-right: 25px;
    }

    .web3-cart-checkout-button,
    .web3-cart-empty-modal .web3-cart-button, 
    .web3-cart-empty-modal .cart-btn,
    .web3-cart-empty-modal .checkout-btn

    {
        height:50px;
        margin:0 auto;
    }

    .web3-cart-cart-notice
    {
        padding:10px 15px;
    }

    .web3-cart-footer
    {
        padding:13px 20px 15px 20px;
    }

    .web3-cart-inner-container .image,
    .web3-cart-checkout-upsell .image
    {
        padding:2px;
    }

    .web3-cart-product .out-of-stock,
    .web3-cart-product-title,
    .web3-cart-product .upsell-text,
    .web3-cart-product .upsell-heading,
    .web3-cart-product-category
    {
        margin-left:5px;
    }

    .web3-cart-product .upsell-text
    {
        max-width: calc( 100% - 40px );
    }

    .web3-cart-product-category,
    .web3-cart-product .upsell-heading
    {
        line-height:12px;
        margin-bottom:3px;
    }

    .web3-cart-product.upsell
    {
        margin: 10px 5px;
        width: calc( 100% - 10px );
        padding:10px 10px 10px 5px;
    }

    .web3-cart-product .upsell-text
    {
        line-height: 12px;
        font-size: 11px;
    }

    .shipping-bar-icon,
    {
        width:55px;
    }

    .shipping-bar-text
    {
        font-size: 0.82em;
        max-width: 250px;
        line-height: 1em;
    }

    .web3-cart-product .qty
    {
        top:-2px;
        right:-2px;
    }
    .web3-cart-product .discounted
    {
        font-size: 0.45em;
        bottom:-2px;
    }

    .web3-cart-product-title
    {
        font-size: 0.9em;
        max-width: 250px;
        line-height: 0.9em;
    }

    .web3-cart-product
    {
        padding: 10px 10px 10px 5px;
    }

    .web3-cart-product .image
    {
        margin-right:5px;
        widt0h: calc( 80px * var(--modal-cart-image-ratio ) );
        height:80px;
    }

    .web3-cart-container-shop-header
    {
        height:60px;
        width:100%;
        left:0;
    }

    .web3-cart-container-close-icon
    {
        width: 60px;
        line-height: 60px;
        font-size: 20px;
    }

    .web3-cart-product:not(.fake-product),
    .web3-cart-product .options
    {
        height:90px;
    }

    .web3-cart-product .heading
    {
        width:calc(100% - 100px);
        height:80px;
        padding:5px 0px;
    }

    .web3-cart-modal-cover-container
    {
        width:100vw;
    }

    .web3-cart-inner-container .web3-cart-product.composite-child .image
    {
        width:60px;
    }

    .web3-cart-product.composite-child  .image,
    .web3-cart-product.composite-child  .options,
    .web3-cart-product.composite-child  .heading
    {
        height:55px;
    }

    .web3-cart-product.composite-child,
    .web3-cart-product.composite-child .options
    {
        height:65px;
    }

}
