body.woocommerce-cart,
body.woocommerce-checkout{
background:#fdfcfb;
}

body.woocommerce-cart .site-main,
body.woocommerce-cart .ct-container,
body.woocommerce-cart .ct-container-full,
body.woocommerce-cart article,
body.woocommerce-cart .entry-content,
body.woocommerce-checkout .site-main,
body.woocommerce-checkout .ct-container,
body.woocommerce-checkout .ct-container-full,
body.woocommerce-checkout article,
body.woocommerce-checkout .entry-content{
width:100% !important;
max-width:none !important;
padding-left:0 !important;
padding-right:0 !important;
}

body.woocommerce-cart .entry-content,
body.woocommerce-checkout .entry-content{
margin:0 !important;
}

/* Notice WooCommerce */
.tc-wc-message-wrap{
width:min(1120px, calc(100vw - 32px));
margin:22px auto;
font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.tc-wc-message{
position:relative;
display:flex !important;
align-items:center;
gap:14px;
min-height:58px;
padding:16px 18px !important;
border-radius:20px !important;
background:#fff !important;
border:1px solid rgba(103,38,58,.22) !important;
box-shadow:0 16px 40px rgba(26,26,26,.065) !important;
color:rgba(26,26,26,.72) !important;
font-size:15px;
line-height:1.55;
}

.tc-wc-message + .tc-wc-message{
margin-top:12px;
}

.tc-wc-message-icon{
flex:0 0 36px;
width:36px;
height:36px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:#67263a;
color:#fff;
font-weight:900;
box-shadow:0 12px 26px rgba(103,38,58,.18);
}

.tc-wc-message-content{
flex:1;
min-width:0;
}

.tc-wc-message-content a{
color:#67263a !important;
font-weight:800;
text-decoration:none !important;
}

.tc-wc-message-content a.button,
.tc-wc-message-content .button{
display:inline-flex !important;
align-items:center;
justify-content:center;
min-height:38px;
margin:0 8px 0 0 !important;
padding:10px 16px !important;
border-radius:999px !important;
background:#67263a !important;
color:#fff !important;
border:0 !important;
font-size:11px !important;
font-weight:800 !important;
letter-spacing:.8px;
text-transform:uppercase;
box-shadow:0 12px 26px rgba(103,38,58,.16);
}

/* Layout carrello */
body.woocommerce-cart .woocommerce{
width:min(1120px, calc(100vw - 32px));
margin:44px auto 80px;
font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
color:#1a1a1a;
}

body.woocommerce-cart .woocommerce-cart-form{
position:relative;
padding:28px;
border-radius:32px;
background:#fff;
border:1px solid rgba(26,26,26,.08);
box-shadow:0 24px 64px rgba(26,26,26,.075);
}

body.woocommerce-cart table.shop_table{
width:100%;
margin:0 !important;
border:0 !important;
border-collapse:separate !important;
border-spacing:0 14px !important;
background:transparent !important;
}

body.woocommerce-cart table.shop_table thead th{
padding:0 14px 14px !important;
border:0 !important;
color:#67263a;
font-family:Cinzel, Georgia, serif;
font-size:12px;
font-weight:800;
letter-spacing:1.1px;
text-transform:uppercase;
}

body.woocommerce-cart table.shop_table tbody tr.cart_item{
overflow:hidden;
border-radius:24px;
background:#fdfcfb;
box-shadow:inset 0 0 0 1px rgba(26,26,26,.06);
}

body.woocommerce-cart table.shop_table tbody tr.cart_item td{
padding:18px 14px !important;
border:0 !important;
background:transparent !important;
vertical-align:middle !important;
}

body.woocommerce-cart td.product-thumbnail img{
width:96px !important;
height:96px !important;
object-fit:cover;
border-radius:18px;
box-shadow:0 12px 28px rgba(26,26,26,.10);
}

body.woocommerce-cart td.product-name a{
color:#67263a !important;
font-family:Cinzel, Georgia, serif;
font-size:18px;
font-weight:800;
line-height:1.2;
text-decoration:none !important;
}

body.woocommerce-cart td.product-price,
body.woocommerce-cart td.product-subtotal{
color:#1a1a1a;
font-size:15px;
font-weight:800;
}

body.woocommerce-cart td.product-subtotal{
color:#67263a;
}

body.woocommerce-cart td.product-remove a.remove{
width:36px;
height:36px;
display:inline-flex !important;
align-items:center;
justify-content:center;
border-radius:50%;
background:#fff !important;
color:#67263a !important;
border:1px solid rgba(103,38,58,.18);
font-size:22px !important;
line-height:1 !important;
text-decoration:none !important;
box-shadow:0 8px 18px rgba(26,26,26,.05);
}

body.woocommerce-cart td.product-remove a.remove:hover{
background:#67263a !important;
color:#fff !important;
}

body.woocommerce-cart .quantity input.qty{
width:82px !important;
min-height:44px;
border-radius:999px !important;
border:1px solid rgba(26,26,26,.12) !important;
background:#fff !important;
color:#1a1a1a !important;
font-weight:800;
text-align:center;
box-shadow:none !important;
}

/* Coupon e azioni */
body.woocommerce-cart td.actions{
padding:22px 0 0 !important;
background:transparent !important;
}

body.woocommerce-cart td.actions .coupon{
display:flex;
gap:10px;
float:left;
}

body.woocommerce-cart td.actions .coupon input.input-text{
min-width:240px;
min-height:46px;
padding:12px 16px !important;
border-radius:999px !important;
border:1px solid rgba(26,26,26,.12) !important;
background:#fdfcfb !important;
color:#1a1a1a !important;
}

body.woocommerce-cart button.button,
body.woocommerce-cart a.button,
body.woocommerce-cart .checkout-button{
display:inline-flex !important;
align-items:center;
justify-content:center;
min-height:46px;
padding:12px 22px !important;
border-radius:999px !important;
background:#67263a !important;
color:#fff !important;
border:0 !important;
font-size:12px !important;
font-weight:800 !important;
letter-spacing:1px;
text-transform:uppercase;
text-decoration:none !important;
box-shadow:0 14px 30px rgba(103,38,58,.16);
transition:transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease;
}

body.woocommerce-cart button.button:hover,
body.woocommerce-cart a.button:hover,
body.woocommerce-cart .checkout-button:hover{
transform:translateY(-2px);
background:#4a1a28 !important;
color:#c2a165 !important;
box-shadow:0 18px 38px rgba(74,26,40,.22);
}

/* Totali */
body.woocommerce-cart .cart-collaterals{
width:min(1120px, calc(100vw - 32px));
margin:28px auto 0;
}

body.woocommerce-cart .cart-collaterals::before,
body.woocommerce-cart .cart-collaterals::after{
display:none !important;
content:none !important;
}

body.woocommerce-cart .cart_totals{
float:none !important;
width:min(460px, 100%) !important;
margin-left:auto !important;
padding:28px !important;
border-radius:32px;
background:
radial-gradient(circle at 92% 8%, rgba(194,161,101,.18), transparent 34%),
#fff;
border:1px solid rgba(194,161,101,.30);
box-shadow:0 24px 64px rgba(26,26,26,.075);
}

body.woocommerce-cart .cart_totals h2{
margin:0 0 20px;
color:#67263a;
font-family:Cinzel, Georgia, serif;
font-size:30px;
line-height:1.08;
text-transform:uppercase;
}

body.woocommerce-cart .cart_totals table{
margin:0 0 22px !important;
border:0 !important;
}

body.woocommerce-cart .cart_totals th,
body.woocommerce-cart .cart_totals td{
padding:14px 0 !important;
border:0 !important;
border-bottom:1px solid rgba(26,26,26,.08) !important;
background:transparent !important;
}

body.woocommerce-cart .cart_totals th{
color:#67263a;
font-size:13px;
font-weight:800;
text-transform:uppercase;
letter-spacing:.8px;
}

body.woocommerce-cart .cart_totals td{
text-align:right;
color:#1a1a1a;
font-weight:800;
}

body.woocommerce-cart .wc-proceed-to-checkout{
padding:0 !important;
margin:0 !important;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
width:100%;
min-height:52px;
margin:0 !important;
}

/* Empty cart vecchio fallback */
body.woocommerce-cart .cart-empty.woocommerce-info,
body.woocommerce-cart .return-to-shop{
display:none !important;
}

@media (max-width:900px){
body.woocommerce-cart .woocommerce{
margin:28px auto 60px;
}

body.woocommerce-cart .woocommerce-cart-form{
padding:18px;
border-radius:26px;
}

body.woocommerce-cart table.shop_table thead{
display:none;
}

body.woocommerce-cart table.shop_table,
body.woocommerce-cart table.shop_table tbody,
body.woocommerce-cart table.shop_table tr,
body.woocommerce-cart table.shop_table td{
display:block !important;
width:100% !important;
}

body.woocommerce-cart table.shop_table tbody tr.cart_item{
padding:20px;
margin-bottom:14px;
}

body.woocommerce-cart table.shop_table tbody tr.cart_item td{
padding:8px 0 !important;
text-align:left !important;
}

body.woocommerce-cart td.product-thumbnail img{
width:100% !important;
height:auto !important;
max-height:320px;
}

body.woocommerce-cart td.product-remove{
text-align:right !important;
}

body.woocommerce-cart td.actions .coupon{
float:none;
display:grid;
grid-template-columns:1fr;
margin-bottom:12px;
}

body.woocommerce-cart td.actions .coupon input.input-text,
body.woocommerce-cart td.actions .coupon button,
body.woocommerce-cart td.actions > button{
width:100% !important;
}

body.woocommerce-cart .cart_totals{
margin:20px auto 0 !important;
border-radius:26px;
padding:22px !important;
}
}


/* =========================================================
   TESSUTI CREATIVI - CART QUANTITY FINAL FIX
   Desktop + Mobile
   ========================================================= */

/* Rimuove wrapper vuoti che creano spazio sopra il carrello */
body.woocommerce-cart .woocommerce-notices-wrapper:empty{
display:none !important;
margin:0 !important;
padding:0 !important;
}

/* FIX QUANTITÀ DESKTOP + MOBILE */
body.woocommerce-cart div.quantity,
body.woocommerce-cart div.quantity[data-type]{
position:relative !important;
display:inline-flex !important;
align-items:center !important;
justify-content:center !important;
width:auto !important;
min-width:116px !important;
height:42px !important;
margin:0 !important;
padding:0 !important;
border-radius:999px !important;
background:#fff !important;
border:1px solid rgba(26,26,26,.12) !important;
box-shadow:0 8px 18px rgba(26,26,26,.045) !important;
overflow:hidden !important;
}

/* Nasconde label accessibile senza rompere WooCommerce */
body.woocommerce-cart div.quantity label.screen-reader-text{
position:absolute !important;
width:1px !important;
height:1px !important;
padding:0 !important;
margin:-1px !important;
overflow:hidden !important;
clip:rect(0,0,0,0) !important;
white-space:nowrap !important;
border:0 !important;
}

/* Reset totale dei bottoni + e - di Blocksy */
body.woocommerce-cart div.quantity .ct-increase,
body.woocommerce-cart div.quantity .ct-decrease{
position:static !important;
inset:auto !important;
top:auto !important;
right:auto !important;
bottom:auto !important;
left:auto !important;
transform:none !important;
display:flex !important;
align-items:center !important;
justify-content:center !important;
flex:0 0 38px !important;
width:38px !important;
height:42px !important;
min-width:38px !important;
min-height:42px !important;
margin:0 !important;
padding:0 !important;
border:0 !important;
border-radius:0 !important;
background:transparent !important;
color:#67263a !important;
box-shadow:none !important;
cursor:pointer !important;
opacity:1 !important;
visibility:visible !important;
font-size:0 !important;
line-height:1 !important;
}

/* Ordine corretto: - 1 + */
body.woocommerce-cart div.quantity .ct-decrease{
order:1 !important;
}

body.woocommerce-cart div.quantity input.qty{
order:2 !important;
}

body.woocommerce-cart div.quantity .ct-increase{
order:3 !important;
}

/* Simboli visibili e puliti */
body.woocommerce-cart div.quantity .ct-increase::before{
content:"+" !important;
display:block !important;
font-size:17px !important;
font-weight:800 !important;
line-height:1 !important;
color:#67263a !important;
}

body.woocommerce-cart div.quantity .ct-decrease::before{
content:"−" !important;
display:block !important;
font-size:18px !important;
font-weight:800 !important;
line-height:1 !important;
color:#67263a !important;
}

body.woocommerce-cart div.quantity .ct-increase svg,
body.woocommerce-cart div.quantity .ct-decrease svg,
body.woocommerce-cart div.quantity .ct-increase:after,
body.woocommerce-cart div.quantity .ct-decrease:after{
display:none !important;
content:none !important;
}

/* Input quantità */
body.woocommerce-cart div.quantity input.qty{
width:40px !important;
min-width:40px !important;
max-width:40px !important;
height:42px !important;
min-height:42px !important;
padding:0 !important;
margin:0 !important;
border:0 !important;
border-radius:0 !important;
background:transparent !important;
color:#1a1a1a !important;
font-size:14px !important;
font-weight:800 !important;
text-align:center !important;
box-shadow:none !important;
appearance:textfield !important;
-moz-appearance:textfield !important;
}

body.woocommerce-cart div.quantity input.qty::-webkit-outer-spin-button,
body.woocommerce-cart div.quantity input.qty::-webkit-inner-spin-button{
-webkit-appearance:none !important;
margin:0 !important;
}

/* MOBILE CART */
@media (max-width:900px){

body.woocommerce-cart .site-main,
body.woocommerce-cart .entry-content{
padding-top:0 !important;
margin-top:0 !important;
}

body.woocommerce-cart .woocommerce{
width:calc(100vw - 24px) !important;
margin:10px auto 52px !important;
}

body.woocommerce-cart .woocommerce-cart-form{
padding:12px !important;
border-radius:24px !important;
}

body.woocommerce-cart table.shop_table,
body.woocommerce-cart table.shop_table tbody,
body.woocommerce-cart table.shop_table tr,
body.woocommerce-cart table.shop_table td{
display:block !important;
width:100% !important;
}

body.woocommerce-cart table.shop_table thead{
display:none !important;
}

body.woocommerce-cart table.shop_table{
border-spacing:0 !important;
}

body.woocommerce-cart table.shop_table tbody tr.cart_item{
position:relative !important;
display:grid !important;
grid-template-columns:104px minmax(0, 1fr) !important;
gap:12px 14px !important;
align-items:start !important;
margin:0 0 14px !important;
padding:14px !important;
border-radius:22px !important;
background:#fdfcfb !important;
box-shadow:inset 0 0 0 1px rgba(26,26,26,.07) !important;
}

body.woocommerce-cart table.shop_table tbody tr.cart_item td{
padding:0 !important;
border:0 !important;
background:transparent !important;
text-align:left !important;
}

body.woocommerce-cart table.shop_table_responsive tr td::before{
display:none !important;
content:"" !important;
}

body.woocommerce-cart td.product-remove{
position:absolute !important;
top:8px !important;
left:8px !important;
z-index:5 !important;
width:auto !important;
}

body.woocommerce-cart td.product-remove a.remove{
width:32px !important;
height:32px !important;
background:rgba(255,255,255,.94) !important;
color:#67263a !important;
border:1px solid rgba(103,38,58,.18) !important;
backdrop-filter:blur(8px);
}

body.woocommerce-cart td.product-thumbnail{
grid-column:1 !important;
grid-row:1 / span 3 !important;
}

body.woocommerce-cart td.product-thumbnail img{
width:104px !important;
height:104px !important;
aspect-ratio:1 / 1 !important;
object-fit:cover !important;
border-radius:18px !important;
box-shadow:0 10px 24px rgba(26,26,26,.10) !important;
}

body.woocommerce-cart td.product-name{
grid-column:2 !important;
padding-top:2px !important;
}

body.woocommerce-cart td.product-name a{
display:block !important;
max-width:100% !important;
color:#67263a !important;
font-size:15px !important;
line-height:1.25 !important;
text-align:left !important;
}

/* Su mobile togliamo il prezzo singolo per evitare il 4,00 € duplicato */
body.woocommerce-cart td.product-price{
display:none !important;
}

body.woocommerce-cart td.product-quantity{
grid-column:2 !important;
display:flex !important;
align-items:center !important;
justify-content:space-between !important;
gap:12px !important;
padding-top:10px !important;
border-top:1px solid rgba(26,26,26,.08) !important;
}

body.woocommerce-cart td.product-quantity::before{
content:"Quantità" !important;
display:block !important;
color:#67263a !important;
font-size:11px !important;
font-weight:800 !important;
letter-spacing:.7px !important;
text-transform:uppercase !important;
}

body.woocommerce-cart td.product-subtotal{
grid-column:2 !important;
display:flex !important;
align-items:center !important;
justify-content:space-between !important;
gap:12px !important;
padding-top:10px !important;
border-top:1px solid rgba(26,26,26,.08) !important;
color:#67263a !important;
font-weight:800 !important;
}

body.woocommerce-cart td.product-subtotal::before{
content:"Subtotale" !important;
display:block !important;
color:#67263a !important;
font-size:11px !important;
font-weight:800 !important;
letter-spacing:.7px !important;
text-transform:uppercase !important;
}

body.woocommerce-cart td.product-quantity .quantity{
margin:0 !important;
}

body.woocommerce-cart td.actions{
padding:4px 0 0 !important;
}

body.woocommerce-cart td.actions .coupon{
display:grid !important;
grid-template-columns:1fr !important;
gap:10px !important;
width:100% !important;
float:none !important;
margin:0 0 12px !important;
}

body.woocommerce-cart td.actions .coupon input.input-text,
body.woocommerce-cart td.actions .coupon button,
body.woocommerce-cart td.actions > button{
width:100% !important;
min-height:46px !important;
}

body.woocommerce-cart .cart-collaterals{
width:calc(100vw - 24px) !important;
margin:16px auto 0 !important;
}

body.woocommerce-cart .cart_totals{
width:100% !important;
margin:0 auto !important;
padding:22px !important;
border-radius:24px !important;
}

body.woocommerce-cart .cart_totals h2{
font-size:25px !important;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
width:100% !important;
min-height:50px !important;
}
}

@media (max-width:480px){
body.woocommerce-cart .woocommerce,
body.woocommerce-cart .cart-collaterals{
width:calc(100vw - 18px) !important;
}

body.woocommerce-cart .woocommerce-cart-form{
padding:9px !important;
}

body.woocommerce-cart table.shop_table tbody tr.cart_item{
grid-template-columns:96px minmax(0, 1fr) !important;
padding:12px !important;
gap:10px 12px !important;
}

body.woocommerce-cart td.product-thumbnail img{
width:96px !important;
height:96px !important;
}

body.woocommerce-cart td.product-name a{
font-size:14px !important;
}
}


/* =========================================================
   TESSUTI CREATIVI - CHECKOUT PAYMENT FINAL
   ========================================================= */

body.woocommerce-checkout{
background:#fdfcfb;
}

body.woocommerce-checkout .site-main,
body.woocommerce-checkout .ct-container,
body.woocommerce-checkout .ct-container-full,
body.woocommerce-checkout article,
body.woocommerce-checkout .entry-content{
width:100% !important;
max-width:none !important;
padding-left:0 !important;
padding-right:0 !important;
}

body.woocommerce-checkout .entry-content{
margin:0 !important;
}

body.woocommerce-checkout .woocommerce{
width:min(1180px, calc(100vw - 32px));
margin:44px auto 86px;
font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
color:#1a1a1a;
}

/* Coupon / login notice */
body.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.woocommerce-checkout .woocommerce-form-login-toggle{
width:min(1180px, calc(100vw - 32px));
margin:22px auto;
}

body.woocommerce-checkout .woocommerce-info{
border-radius:22px !important;
background:#fff !important;
border:1px solid rgba(194,161,101,.34) !important;
box-shadow:0 16px 40px rgba(26,26,26,.06) !important;
color:rgba(26,26,26,.72) !important;
padding:18px 20px !important;
}

body.woocommerce-checkout .woocommerce-info a{
color:#67263a !important;
font-weight:800 !important;
text-decoration:none !important;
}

/* Layout checkout */
body.woocommerce-checkout form.checkout{
display:grid !important;
grid-template-columns:minmax(0, 1fr) 430px !important;
gap:30px !important;
align-items:start !important;
margin:0 !important;
}

body.woocommerce-checkout #customer_details{
grid-column:1 !important;
display:block !important;
width:100% !important;
}

body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review{
grid-column:2 !important;
width:100% !important;
}

body.woocommerce-checkout #order_review{
position:sticky !important;
top:24px !important;
}

/* Card fatturazione / spedizione */
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields{
margin:0 0 24px !important;
padding:32px !important;
border-radius:32px !important;
background:#fff !important;
border:1px solid rgba(26,26,26,.08) !important;
box-shadow:0 22px 58px rgba(26,26,26,.065) !important;
}

body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3,
body.woocommerce-checkout #order_review_heading{
margin:0 0 24px !important;
color:#67263a !important;
font-family:Cinzel, Georgia, serif !important;
font-size:clamp(26px,3vw,38px) !important;
line-height:1.08 !important;
letter-spacing:-.035em !important;
text-transform:uppercase !important;
}

body.woocommerce-checkout #order_review_heading{
padding:30px 30px 0 !important;
border-radius:32px 32px 0 0 !important;
background:
radial-gradient(circle at 90% 8%, rgba(194,161,101,.18), transparent 34%),
#fff !important;
border:1px solid rgba(194,161,101,.30) !important;
border-bottom:0 !important;
box-shadow:0 22px 58px rgba(26,26,26,.065) !important;
}

/* Campi checkout */
body.woocommerce-checkout .form-row{
float:none !important;
width:100% !important;
margin:0 0 18px !important;
padding:0 !important;
}

body.woocommerce-checkout .form-row-first,
body.woocommerce-checkout .form-row-last{
width:calc(50% - 9px) !important;
display:inline-block !important;
vertical-align:top !important;
}

body.woocommerce-checkout .form-row-first{
margin-right:14px !important;
}

body.woocommerce-checkout label{
display:block !important;
margin:0 0 8px !important;
color:#67263a !important;
font-size:13px !important;
font-weight:800 !important;
letter-spacing:.2px !important;
}

body.woocommerce-checkout .required{
color:#c2a165 !important;
text-decoration:none !important;
}

body.woocommerce-checkout input.input-text,
body.woocommerce-checkout input[type="text"],
body.woocommerce-checkout input[type="email"],
body.woocommerce-checkout input[type="tel"],
body.woocommerce-checkout input[type="password"],
body.woocommerce-checkout textarea,
body.woocommerce-checkout select{
width:100% !important;
min-height:52px !important;
padding:13px 15px !important;
border-radius:16px !important;
border:1px solid rgba(26,26,26,.12) !important;
background:#fdfcfb !important;
color:#1a1a1a !important;
box-shadow:none !important;
font-size:15px !important;
}

body.woocommerce-checkout textarea{
min-height:120px !important;
resize:vertical !important;
}

body.woocommerce-checkout input.input-text:focus,
body.woocommerce-checkout input[type="text"]:focus,
body.woocommerce-checkout input[type="email"]:focus,
body.woocommerce-checkout input[type="tel"]:focus,
body.woocommerce-checkout input[type="password"]:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-checkout select:focus{
border-color:#c2a165 !important;
box-shadow:0 0 0 4px rgba(194,161,101,.14) !important;
outline:none !important;
}

/* Select2 */
body.woocommerce-checkout .select2-container{
width:100% !important;
}

body.woocommerce-checkout .select2-container .select2-selection--single{
height:52px !important;
border-radius:16px !important;
border:1px solid rgba(26,26,26,.12) !important;
background:#fdfcfb !important;
}

body.woocommerce-checkout .select2-container .select2-selection__rendered{
line-height:52px !important;
padding-left:15px !important;
color:#1a1a1a !important;
}

body.woocommerce-checkout .select2-container .select2-selection__arrow{
height:52px !important;
right:12px !important;
}

/* Riepilogo ordine */
body.woocommerce-checkout #order_review{
padding:0 30px 30px !important;
border-radius:0 0 32px 32px !important;
background:#fff !important;
border:1px solid rgba(194,161,101,.30) !important;
border-top:0 !important;
box-shadow:0 22px 58px rgba(26,26,26,.065) !important;
}

body.woocommerce-checkout table.woocommerce-checkout-review-order-table{
width:100% !important;
margin:0 0 24px !important;
border:0 !important;
border-collapse:collapse !important;
background:transparent !important;
}

body.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
body.woocommerce-checkout table.woocommerce-checkout-review-order-table td{
padding:15px 0 !important;
border:0 !important;
border-bottom:1px solid rgba(26,26,26,.08) !important;
background:transparent !important;
vertical-align:top !important;
}

body.woocommerce-checkout table.woocommerce-checkout-review-order-table th{
color:#67263a !important;
font-size:12px !important;
font-weight:800 !important;
letter-spacing:.8px !important;
text-transform:uppercase !important;
}

body.woocommerce-checkout table.woocommerce-checkout-review-order-table td{
color:#1a1a1a !important;
font-size:14px !important;
font-weight:700 !important;
text-align:right !important;
}

body.woocommerce-checkout table.woocommerce-checkout-review-order-table .product-name{
text-align:left !important;
color:#67263a !important;
font-family:Cinzel, Georgia, serif !important;
font-size:15px !important;
line-height:1.25 !important;
}

body.woocommerce-checkout table.woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout table.woocommerce-checkout-review-order-table .order-total td{
border-bottom:0 !important;
font-size:18px !important;
color:#67263a !important;
}

/* Pagamento */
body.woocommerce-checkout #payment{
margin:0 !important;
padding:0 !important;
border-radius:26px !important;
background:#fdfcfb !important;
border:1px solid rgba(26,26,26,.08) !important;
overflow:hidden !important;
}

body.woocommerce-checkout #payment ul.payment_methods{
margin:0 !important;
padding:0 !important;
list-style:none !important;
border:0 !important;
background:transparent !important;
}

body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method{
margin:0 !important;
padding:0 !important;
border-bottom:1px solid rgba(26,26,26,.08) !important;
background:#fff !important;
}

body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > input.input-radio{
position:absolute !important;
opacity:0 !important;
pointer-events:none !important;
}

body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label{
position:relative !important;
display:flex !important;
align-items:center !important;
gap:12px !important;
width:100% !important;
margin:0 !important;
padding:18px 20px !important;
cursor:pointer !important;
color:#67263a !important;
font-family:Cinzel, Georgia, serif !important;
font-size:14px !important;
font-weight:800 !important;
line-height:1.25 !important;
}

body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label::before{
content:"" !important;
flex:0 0 18px !important;
width:18px !important;
height:18px !important;
border-radius:50% !important;
border:2px solid rgba(103,38,58,.35) !important;
background:#fff !important;
box-shadow:inset 0 0 0 4px #fff !important;
}

body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > input.input-radio:checked + label::before{
background:#67263a !important;
border-color:#67263a !important;
}

body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method img{
max-height:28px !important;
width:auto !important;
margin-left:auto !important;
}

body.woocommerce-checkout #payment div.payment_box{
margin:0 !important;
padding:20px !important;
background:#fdfcfb !important;
border-top:1px solid rgba(26,26,26,.08) !important;
color:rgba(26,26,26,.66) !important;
font-size:14px !important;
line-height:1.65 !important;
}

body.woocommerce-checkout #payment div.payment_box::before{
display:none !important;
}

body.woocommerce-checkout #payment .place-order{
margin:0 !important;
padding:22px !important;
background:
linear-gradient(135deg, rgba(103,38,58,.98), rgba(74,26,40,.98)) !important;
color:#fff !important;
}

body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper{
color:rgba(255,255,255,.78) !important;
font-size:13px !important;
line-height:1.55 !important;
}

body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper a{
color:#c2a165 !important;
font-weight:800 !important;
text-decoration:none !important;
}

body.woocommerce-checkout #payment #place_order{
width:100% !important;
min-height:54px !important;
margin-top:16px !important;
padding:14px 24px !important;
border-radius:999px !important;
background:#c2a165 !important;
color:#1a1a1a !important;
border:0 !important;
font-size:12px !important;
font-weight:900 !important;
letter-spacing:1px !important;
text-transform:uppercase !important;
box-shadow:0 16px 34px rgba(0,0,0,.18) !important;
transition:transform .22s ease, background .22s ease, color .22s ease, box-shadow .22s ease !important;
}

body.woocommerce-checkout #payment #place_order:hover{
transform:translateY(-2px) !important;
background:#eadcc0 !important;
color:#67263a !important;
box-shadow:0 20px 42px rgba(0,0,0,.24) !important;
}

/* Privacy / terms checkbox */
body.woocommerce-checkout #payment label.checkbox,
body.woocommerce-checkout #payment .woocommerce-form__label{
color:#fff !important;
font-size:13px !important;
line-height:1.55 !important;
}

/* Mobile checkout */
@media (max-width:980px){
body.woocommerce-checkout .woocommerce{
width:calc(100vw - 24px) !important;
margin:18px auto 64px !important;
}

body.woocommerce-checkout form.checkout{
display:block !important;
}

body.woocommerce-checkout #order_review{
position:static !important;
top:auto !important;
}

body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields{
padding:24px 20px !important;
border-radius:26px !important;
margin-bottom:18px !important;
}

body.woocommerce-checkout #order_review_heading{
margin-top:20px !important;
padding:24px 20px 0 !important;
border-radius:26px 26px 0 0 !important;
}

body.woocommerce-checkout #order_review{
padding:0 20px 20px !important;
border-radius:0 0 26px 26px !important;
}

body.woocommerce-checkout .form-row-first,
body.woocommerce-checkout .form-row-last{
width:100% !important;
display:block !important;
margin-right:0 !important;
}

body.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
body.woocommerce-checkout table.woocommerce-checkout-review-order-table td{
font-size:13px !important;
}

body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label{
padding:16px !important;
font-size:13px !important;
}

body.woocommerce-checkout #payment .place-order{
padding:20px 16px !important;
}
}

@media (max-width:480px){
body.woocommerce-checkout .woocommerce{
width:calc(100vw - 18px) !important;
margin-top:12px !important;
}

body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3,
body.woocommerce-checkout #order_review_heading{
font-size:25px !important;
}

body.woocommerce-checkout input.input-text,
body.woocommerce-checkout input[type="text"],
body.woocommerce-checkout input[type="email"],
body.woocommerce-checkout input[type="tel"],
body.woocommerce-checkout input[type="password"],
body.woocommerce-checkout textarea,
body.woocommerce-checkout select{
min-height:48px !important;
}
}
