/* Cart cards keep WooCommerce's native form, rows, actions and AJAX updates. */
.woocommerce-cart .rp-shop-page>.woocommerce:has(>.rp-cart-form){display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}
.woocommerce-cart .rp-shop-page>.woocommerce:has(>.rp-cart-form)::before,.woocommerce-cart .rp-shop-page>.woocommerce:has(>.rp-cart-form)::after{display:none}
.woocommerce-cart .rp-shop-page>.woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1}
.woocommerce-cart .rp-shop-page>.woocommerce>.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-cart .rp-shop-page>.woocommerce>.woocommerce-message,.woocommerce-cart .rp-shop-page>.woocommerce>.woocommerce-info,.woocommerce-cart .rp-shop-page>.woocommerce>.woocommerce-error{grid-column:1/-1}
.rp-shop-content .rp-cart-form{margin:0;min-width:0}
.rp-shop-content .rp-cart-form table.rp-cart-items{display:block;border:0;background:none;border-radius:0;overflow:visible;margin:0}
.rp-cart-items>thead{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.rp-cart-items>tbody{display:grid;gap:18px}
.rp-shop-content .rp-cart-items tr.cart_item{display:grid;grid-template-columns:72px minmax(0,1fr) auto 32px;gap:0 18px;align-items:center;background:#fff;border:1px solid #dfe0e8;border-radius:22px;padding:24px}
.rp-shop-content .rp-cart-items tr.cart_item>td{display:block;border:0!important;padding:0!important;background:transparent!important;text-align:left!important;min-width:0;width:auto;float:none}
.rp-shop-content .rp-cart-items tr.cart_item>td::before{display:none!important}
.rp-cart-items .product-thumbnail{grid-row:1;grid-column:1}
.rp-shop-content .rp-cart-items .product-thumbnail img{display:block;width:72px;height:72px;object-fit:contain;border-radius:12px}
.rp-cart-items .product-name{grid-row:1;grid-column:2}
.rp-shop-content .rp-cart-items .product-name>a{font-size:20px;line-height:1.3;letter-spacing:-.025em;display:inline-block;text-decoration:none}
.rp-cart-items .product-name small{display:block;margin-top:4px}
.rp-cart-items .rp-cart-quantity-label{display:block;margin-top:6px;color:#737681;font-size:13px;font-weight:400}
.rp-cart-items .product-subtotal{grid-row:1;grid-column:3;text-align:right!important;font-size:21px;font-weight:750;line-height:1.4}
.rp-cart-items .product-subtotal::after{content:'Totale servizio';display:block;font-size:11px;font-weight:500;color:#737681;text-align:right}
.rp-cart-items .product-remove{grid-row:1;grid-column:4;justify-self:end}
/* A symmetric icon avoids the font-dependent baseline of the multiplication glyph. */
.rp-shop-content .rp-cart-items .product-remove a.remove{padding:0;margin:0;line-height:1}
.rp-shop-content .rp-cart-items a.remove>.rp-cart-remove-icon{display:block;width:18px;height:18px;pointer-events:none}
.rp-shop-content .rp-cart-items a.remove:focus-visible{outline:2px solid #da0036;outline-offset:3px}
.rp-shop-content .rp-cart-items tr.cart_item>:is(.product-price,.product-quantity){display:none!important}
.rp-shop-content .rp-cart-items tr.cart_item>.rp-cart-item-details{grid-column:1/-1;margin-top:20px}
.rp-cart-details,.rp-cart-area{border:1px solid #e4e4ed;border-radius:12px;background:#f8f8fc;overflow:hidden}
.rp-cart-details>summary,.rp-cart-area>summary{list-style:none;display:flex;align-items:center;gap:10px;padding:15px 16px;color:#30323a;cursor:pointer;font-size:14px;font-weight:700;line-height:1.4}
.rp-cart-details>summary::-webkit-details-marker,.rp-cart-area>summary::-webkit-details-marker{display:none}
.rp-cart-details>summary::marker,.rp-cart-area>summary::marker{content:''}
.rp-cart-details>summary:hover,.rp-cart-area>summary:hover{background:#fff0f4;color:#d30033}
.rp-cart-details>summary:focus-visible,.rp-cart-area>summary:focus-visible{outline:2px solid #f7063c;outline-offset:-3px}
.rp-cart-area-count{font-size:12px;font-weight:500;color:#777a85;white-space:nowrap;margin-left:auto}
.rp-cart-chevron{width:7px;height:7px;border:solid #f7063c;border-width:0 2px 2px 0;transform:rotate(45deg);flex:0 0 7px;margin-left:auto;margin-right:3px;transition:transform .15s}
.rp-cart-area-count+.rp-cart-chevron{margin-left:4px}
:is(.rp-cart-details,.rp-cart-area)[open]>summary>.rp-cart-chevron{transform:rotate(225deg)}
.rp-cart-details[open]>summary{border-bottom:1px solid #e4e4ed}
.rp-cart-areas{padding:14px;background:#fff;display:grid;gap:10px}
.rp-cart-area{background:#fff}
.rp-cart-area>summary{font-size:14px;background:#f8f8fc}
.rp-cart-fields{margin:0;padding:4px 16px 12px;font-size:14px;text-align:left}
.rp-cart-field{display:grid;grid-template-columns:minmax(120px,.85fr) minmax(0,1.3fr);gap:8px 20px;border-bottom:1px solid #eeeef4;padding:12px 0;align-items:start}
.rp-cart-field:last-child{border:0;padding-bottom:0}
.rp-cart-fields dt{float:none;clear:none;font-weight:650;color:#41444f;margin:0;overflow-wrap:anywhere}
.rp-cart-fields dd{float:none;margin:0;color:#696d79;overflow-wrap:anywhere;min-width:0}
.rp-cart-fields dd p{margin:0 0 6px;line-height:1.6}
.rp-cart-fields dd p:last-child{margin-bottom:0}
.rp-cart-fields img{max-width:100px;max-height:110px;width:auto;height:auto;object-fit:contain;border-radius:8px;display:inline-block;margin:4px 8px 4px 0}
.rp-cart-fields .pewc-upload-thumb-wrapper{max-width:100%}
.rp-cart-fields .pewc-cart-item-price{white-space:nowrap}
.rp-shop-content .rp-cart-items .rp-cart-actions-row{display:block;background:none}
.rp-shop-content .rp-cart-items .actions{display:flex!important;flex-wrap:wrap;align-items:center;gap:14px;padding:6px 0!important;border:0;background:none!important;text-align:left!important}
.rp-cart-items .actions::before{display:none!important}
.rp-shop-content .rp-cart-items .actions .coupon{float:none;display:flex;flex:1;gap:10px}
.rp-shop-content .rp-cart-items .actions #coupon_code{width:100%;min-width:0;max-width:260px}
.rp-shop-content .rp-cart-items .actions button{font-size:14px;white-space:nowrap;padding:13px 20px;min-height:48px;margin:0}
.rp-shop-content .rp-cart-items .actions button[name=update_cart]{background:#343740;color:#fff}
.rp-shop-content .rp-cart-items .actions button[name=update_cart]:disabled{display:none}
.woocommerce-cart .rp-shop-content .cart-collaterals{width:100%;min-width:0;position:sticky;top:105px}
.woocommerce-cart .rp-shop-content .cart-collaterals .cart_totals{float:none;width:100%;padding:26px;box-sizing:border-box}
.woocommerce-cart .rp-shop-content .cart_totals h2{font-size:25px;margin-bottom:18px}
.woocommerce-cart .rp-shop-content .cart_totals table{border:0;border-radius:0;margin:0 0 20px;background:none}
.woocommerce-cart .rp-shop-content .cart_totals :is(th,td){padding:13px 0;background:none!important;font-size:14px;border-top:1px solid #ededf3}
.woocommerce-cart .rp-shop-content .cart_totals th{width:50%;font-weight:500;color:#707480}
.woocommerce-cart .rp-shop-content .cart_totals td{text-align:right;color:#30323a}
.woocommerce-cart .rp-shop-content .cart_totals .order-total :is(th,td){font-size:22px;font-weight:750;color:#17181b;padding-top:20px}
.woocommerce-cart .rp-shop-content .cart_totals .order-total small{display:block;font-size:12px;font-weight:400;white-space:normal}
.woocommerce-cart .rp-shop-content .wc-proceed-to-checkout{padding:0}
.woocommerce-cart .rp-shop-content .wc-proceed-to-checkout a.checkout-button{width:100%;margin:0;box-sizing:border-box;font-size:15px;padding:16px}
@media(max-width:1100px){.woocommerce-cart .rp-shop-page>.woocommerce:has(>.rp-cart-form){grid-template-columns:minmax(0,1fr) 320px;gap:20px}.rp-shop-content .rp-cart-items tr.cart_item{grid-template-columns:56px minmax(0,1fr) auto 28px;padding:20px;gap:0 12px}.rp-shop-content .rp-cart-items .product-thumbnail img{width:56px;height:56px}.rp-shop-content .rp-cart-items .product-name>a{font-size:18px}.rp-cart-items .product-subtotal{font-size:19px}}
@media(max-width:900px){.woocommerce-cart .rp-shop-page>.woocommerce:has(>.rp-cart-form){grid-template-columns:minmax(0,1fr)}.woocommerce-cart .rp-shop-content .cart-collaterals{position:static}.rp-shop-content .rp-cart-items tr.cart_item{grid-template-columns:64px minmax(0,1fr) auto 30px}.rp-shop-content .rp-cart-items .product-thumbnail img{width:64px;height:64px}}
@media(max-width:600px){.rp-shop-content .rp-cart-items tr.cart_item{grid-template-columns:54px minmax(0,1fr) 28px;padding:18px;gap:0 12px}.rp-shop-content .rp-cart-items .product-thumbnail img{width:54px;height:54px}.rp-cart-items .product-name{grid-column:2}.rp-cart-items .product-remove{grid-column:3}.rp-shop-content .rp-cart-items tr.cart_item>.product-subtotal{grid-row:2;grid-column:2/4;display:flex;align-items:baseline;justify-content:space-between;margin-top:12px;text-align:left!important}.rp-cart-items .product-subtotal::after{font-size:12px}.rp-shop-content .rp-cart-items tr.cart_item>.rp-cart-item-details{margin-top:16px}.rp-cart-details>summary{font-size:13px;padding:14px 12px}.rp-cart-area-count{font-size:11px}.rp-cart-areas{padding:10px}.rp-cart-fields{padding:4px 12px 12px}.rp-cart-field{grid-template-columns:1fr;gap:4px}.rp-cart-field dt,.rp-cart-field dd{font-size:13px}.rp-shop-content .rp-cart-items .actions .coupon{flex-direction:row;flex-wrap:wrap;width:100%}.rp-shop-content .rp-cart-items .actions #coupon_code{max-width:none;flex:1;min-width:130px}.rp-shop-content .rp-cart-items .actions .coupon button{width:auto!important;flex:0 0 auto}.woocommerce-cart .rp-shop-content .cart_totals th{display:table-cell!important}.woocommerce-cart .rp-shop-content .cart_totals td{display:table-cell!important}.woocommerce-cart .rp-shop-content .cart_totals td::before{display:none!important}.woocommerce-cart .rp-shop-content .cart_totals tr{display:table-row!important}}
