/* Lavish Luxury — cart and checkout */
.ll-checkout{--ll-field:#fffdf9;--ll-field-line:#e2d9c9;font-family:var(--ll-sans);color:var(--ll-ink);}
.ll-checkout .woocommerce{max-width:1240px;margin:0 auto;}
.ll-checkout .amount,.ll-checkout .woocommerce-Price-amount,.ll-checkout .order-total *{color:var(--ll-ink) !important;}
.ll-checkout a{color:var(--ll-ink);text-decoration-color:var(--ll-gold);}

/* Steps and trust line */
.ll-co-steps{max-width:1240px;margin:0 auto clamp(30px,4vw,54px);padding-top:clamp(20px,3vw,40px);text-align:center;}
.ll-co-steps h1{font-family:var(--ll-serif);font-weight:400;font-size:clamp(34px,3.6vw,52px);margin:0 0 22px;color:var(--ll-ink);text-transform:none;letter-spacing:.01em;}
.ll-co-steps ol{list-style:none;margin:0 auto;padding:0;display:flex;justify-content:center;align-items:center;gap:14px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--ll-taupe);}
.ll-co-steps li{display:flex;align-items:center;gap:10px;}
.ll-co-steps li + li::before{content:"";width:clamp(26px,5vw,60px);height:1px;background:var(--ll-line);margin-right:4px;}
.ll-co-steps li i{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;border:1px solid var(--ll-line);font-style:normal;font-size:11px;letter-spacing:0;}
.ll-co-steps li.is-done i{background:var(--ll-gold);border-color:var(--ll-gold);color:#fff;}
.ll-co-steps li.is-current{color:var(--ll-ink);}
.ll-co-steps li.is-current i{border-color:var(--ll-ink);color:var(--ll-ink);}
.ll-co-trust{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 26px;margin:20px 0 0;font-size:13px;color:var(--ll-muted);}
.ll-co-trust span{display:inline-flex;align-items:center;gap:8px;}
.ll-co-trust svg{width:18px;height:18px;fill:none;stroke:var(--ll-gold);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}

/* Notices (coupon line, errors, "no payment methods") */
.ll-checkout .woocommerce-info,.ll-checkout .woocommerce-message,.ll-checkout .woocommerce-error,.ll-checkout .wc-block-components-notice-banner{background:var(--ll-field) !important;color:var(--ll-ink) !important;border:1px solid var(--ll-field-line) !important;border-left:3px solid var(--ll-gold) !important;border-radius:0 !important;box-shadow:none !important;padding:16px 20px 16px 22px !important;font-size:14px;line-height:1.6;margin:0 0 24px !important;}
.ll-checkout .woocommerce-error{border-left-color:#a3392b !important;}
.ll-checkout .woocommerce-info::before,.ll-checkout .woocommerce-message::before,.ll-checkout .woocommerce-error::before{color:var(--ll-gold) !important;}
.ll-checkout .woocommerce-info a,.ll-checkout .showcoupon{color:var(--ll-ink) !important;border-bottom:1px solid var(--ll-gold);text-decoration:none;}
.ll-checkout form.checkout_coupon{border:1px solid var(--ll-field-line) !important;border-radius:0 !important;background:var(--ll-field);padding:20px !important;}

/* Headings */
.ll-checkout h3,.ll-checkout #order_review_heading,.ll-checkout .woocommerce-billing-fields > h3,.ll-checkout .woocommerce-additional-fields > h3,.ll-checkout .cart_totals h2{font-family:var(--ll-serif) !important;font-weight:400 !important;font-size:clamp(24px,2.2vw,32px) !important;text-transform:none !important;letter-spacing:.01em !important;color:var(--ll-ink) !important;margin:0 0 24px !important;}

/* Fields */
.ll-checkout .form-row{margin:0 0 18px !important;padding:0 !important;}
.ll-checkout .form-row label{display:block !important;font-size:11px !important;font-weight:600 !important;letter-spacing:.16em !important;text-transform:uppercase !important;color:var(--ll-ink) !important;margin:0 0 8px !important;line-height:1.4 !important;}
.ll-checkout .form-row label .optional{font-weight:400;letter-spacing:.04em;text-transform:none;color:var(--ll-taupe);}
.ll-checkout .form-row .required{color:var(--ll-gold) !important;text-decoration:none;border:0;}
.ll-checkout .input-text,.ll-checkout select,.ll-checkout textarea,.ll-checkout .select2-container .select2-selection--single{width:100% !important;box-sizing:border-box !important;background:var(--ll-field) !important;border:1px solid var(--ll-field-line) !important;border-radius:2px !important;box-shadow:none !important;height:auto !important;min-height:52px !important;padding:14px 16px !important;font:inherit !important;font-size:15px !important;color:var(--ll-ink) !important;transition:border-color .25s,box-shadow .25s;}
.ll-checkout textarea{min-height:110px !important;}
.ll-checkout .input-text:focus,.ll-checkout select:focus,.ll-checkout textarea:focus,.ll-checkout .select2-container--open .select2-selection--single,.ll-checkout .select2-container--focus .select2-selection--single{border-color:var(--ll-gold) !important;box-shadow:0 0 0 3px rgba(184,150,79,.15) !important;outline:none !important;}
.ll-checkout .select2-container .select2-selection--single .select2-selection__rendered{line-height:22px !important;padding:0 !important;color:var(--ll-ink) !important;}
.ll-checkout .select2-container .select2-selection--single .select2-selection__arrow{height:50px !important;right:10px !important;}
.ll-checkout .input-text::placeholder,.ll-checkout textarea::placeholder{color:#a39a8f;}
.ll-checkout .woocommerce-invalid .input-text,.ll-checkout .woocommerce-invalid select{border-color:#a3392b !important;}
.ll-checkout .woocommerce-shipping-fields #ship-to-different-address label{font-size:14px !important;letter-spacing:0 !important;text-transform:none !important;font-family:var(--ll-sans);}

/* Order summary card */
.ll-checkout #order_review,.ll-checkout .cart_totals{background:var(--ll-field) !important;border:1px solid var(--ll-field-line) !important;border-radius:2px;padding:clamp(22px,2.6vw,36px) !important;box-shadow:0 30px 60px -45px rgba(60,45,25,.35);}
@media (min-width:1025px){ .ll-checkout #order_review{position:sticky;top:100px;} }
.ll-checkout table.shop_table{width:100% !important;border-collapse:collapse !important;border:0 !important;border-radius:0 !important;margin:0 0 20px !important;background:transparent !important;}
.ll-checkout table.shop_table th,.ll-checkout table.shop_table td{border:0 !important;border-bottom:1px solid var(--ll-line) !important;padding:16px 0 !important;background:transparent !important;font-size:14px;vertical-align:middle;}
.ll-checkout table.shop_table th{text-align:left;}
.ll-checkout table.shop_table thead th{font-family:var(--ll-sans) !important;font-size:11px !important;font-weight:600 !important;letter-spacing:.18em !important;text-transform:uppercase !important;color:var(--ll-taupe) !important;padding-top:0 !important;}
.ll-checkout table.shop_table td.product-total,.ll-checkout table.shop_table tfoot td{text-align:right !important;}
.ll-checkout table.shop_table tfoot th{font-family:var(--ll-sans) !important;font-weight:500 !important;text-transform:none !important;color:var(--ll-muted) !important;}
.ll-checkout table.shop_table tfoot .order-total th{font-family:var(--ll-serif) !important;font-size:20px !important;color:var(--ll-ink) !important;border-bottom:0 !important;}
.ll-checkout table.shop_table tfoot .order-total td{border-bottom:0 !important;}
.ll-checkout table.shop_table tfoot .order-total .amount{font-family:var(--ll-serif);font-size:24px;}
.ll-co-item{display:flex;align-items:center;gap:14px;}
.ll-co-thumb{position:relative;flex:0 0 56px;width:56px;height:70px;background:var(--ll-sand);overflow:hidden;}
.ll-co-thumb img{width:100%;height:100%;object-fit:cover;display:block;margin:0 !important;}
.ll-co-name{font-size:14px;line-height:1.45;color:var(--ll-ink);}
.ll-checkout .product-quantity{color:var(--ll-taupe);font-weight:400;}
.ll-checkout .variation{margin:4px 0 0;font-size:12px;color:var(--ll-taupe);}
.ll-checkout .variation dt,.ll-checkout .variation dd{display:inline;margin:0;padding:0;font-weight:400;}
.ll-checkout .variation dd p{display:inline;margin:0;}

/* Payment methods */
.ll-checkout #payment{background:transparent !important;border-radius:0 !important;}
.ll-checkout #payment ul.payment_methods{border:0 !important;padding:0 !important;margin:0 0 20px !important;}
.ll-checkout #payment ul.payment_methods li{list-style:none;border:1px solid var(--ll-field-line);padding:16px 18px !important;margin:0 0 10px !important;background:#fff;transition:border-color .25s;}
.ll-checkout #payment ul.payment_methods li:has(input:checked){border-color:var(--ll-ink);}
.ll-checkout #payment ul.payment_methods li label{font-size:14px !important;font-weight:500;letter-spacing:0 !important;text-transform:none !important;color:var(--ll-ink) !important;margin:0 !important;cursor:pointer;}
.ll-checkout #payment ul.payment_methods li input[type=radio]{accent-color:var(--ll-ink);margin-right:8px;}
.ll-checkout #payment div.payment_box{padding:12px 14px !important;background:var(--ll-sand) !important;color:var(--ll-muted) !important;font-size:13px;border-radius:0 !important;margin:12px 0 0 !important;}
.ll-checkout #payment div.payment_box::before{display:none !important;}
.ll-checkout #payment .place-order{padding:0 !important;margin:0 !important;}
.ll-checkout .woocommerce-privacy-policy-text,.ll-checkout .woocommerce-terms-and-conditions-wrapper{font-size:12px;line-height:1.7;color:var(--ll-taupe);}
.ll-checkout #place_order,.ll-checkout .checkout-button,.ll-checkout .wc-proceed-to-checkout a{display:flex !important;align-items:center;justify-content:center;gap:12px;width:100% !important;min-height:60px;padding:18px 24px !important;margin-top:18px !important;background:var(--ll-ink) !important;color:var(--ll-ivory) !important;border:0 !important;border-radius:0 !important;box-shadow:none !important;font-family:var(--ll-sans) !important;font-size:13px !important;font-weight:600 !important;letter-spacing:.2em !important;text-transform:uppercase !important;cursor:pointer;transition:background-color .3s;--ll-lock:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FBFBFA' stroke-width='1.6'%3E%3Crect x='5' y='10' width='14' height='10' rx='1'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E");}
.ll-checkout #place_order::before{content:"";flex:0 0 16px;width:16px;height:16px;background:var(--ll-lock) center/contain no-repeat;}
.ll-checkout #place_order:hover,.ll-checkout .checkout-button:hover,.ll-checkout .wc-proceed-to-checkout a:hover{background-color:#2b2620 !important;}

/* Cart page */
.ll-checkout table.shop_table.cart td.product-thumbnail img{width:80px;height:100px;object-fit:cover;}
.ll-checkout table.shop_table.cart td.product-name a{font-family:var(--ll-serif);font-size:18px;color:var(--ll-ink);text-decoration:none;}
.ll-checkout table.shop_table.cart a.remove{color:var(--ll-taupe) !important;font-weight:300;}
.ll-checkout table.shop_table.cart a.remove:hover{background:none !important;color:#a3392b !important;}
.ll-checkout .quantity .qty{background:var(--ll-field) !important;border:1px solid var(--ll-field-line) !important;border-radius:0 !important;min-height:44px;}
.ll-checkout .actions .button,.ll-checkout button[name="update_cart"],.ll-checkout button[name="apply_coupon"]{background:transparent !important;color:var(--ll-ink) !important;border:1px solid var(--ll-ink) !important;border-radius:0 !important;font-size:12px !important;letter-spacing:.14em !important;text-transform:uppercase !important;min-height:46px;padding:0 20px !important;}
.ll-checkout .actions .button:hover{background:var(--ll-ink) !important;color:var(--ll-ivory) !important;}
@media (max-width:560px){ .ll-co-steps ol{gap:6px;font-size:10px;letter-spacing:.08em;} .ll-co-steps li{gap:6px;} .ll-co-steps li + li::before{width:12px;margin-right:2px;} .ll-co-steps li i{width:20px;height:20px;font-size:10px;} }
