/* WooCommerce — map default markup onto the Haleigh's Hope design system. */

.woo-wrap .woocommerce-result-count,
.woo-wrap .woocommerce-ordering { margin-bottom: 18px; color: var(--ink-soft); font-size: 14px; }

/* Shop grid uses our .card via content-product.php; keep WooCommerce's own grid off. */
.woocommerce ul.products { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; margin: 0; list-style: none; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product { width: auto !important; margin: 0 !important; float: none !important; }
@media (max-width: 960px) { .woocommerce ul.products { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .woocommerce ul.products { grid-template-columns: 1fr; } }

/* Buttons → red pill like .btn-primary */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .woocommerce .button.alt,
.woocommerce-page a.button, .woocommerce-page button.button {
	background: var(--red); color: #fff; border: 0; border-radius: 999px;
	padding: 12px 22px; font-weight: 700; font-family: inherit; font-size: 15px;
	line-height: 1.1; cursor: pointer; transition: .18s; text-transform: none;
}
.woocommerce a.button:hover, .woocommerce button.button:hover,
.woocommerce .button.alt:hover, .woocommerce #respond input#submit:hover { filter: brightness(.94); color: #fff; }
.woocommerce .button.btn-sm { padding: 8px 16px; font-size: 13.5px; }

/* Prices */
.woocommerce div.product p.price, .woocommerce div.product span.price,
.woocommerce ul.products li.product .price { color: var(--ink); font-weight: 700; font-size: 20px; }
.woocommerce div.product p.price del { color: var(--ink-soft); font-weight: 400; }

/* PDP layout */
.woocommerce div.product.pdp { display: grid; grid-template-columns: 1fr 1fr; gap: 44px; align-items: start; }
.woocommerce div.product.pdp .pdp-info { float: none; width: auto; }
.woocommerce div.product.pdp .pdp-gallery { float: none; width: auto; }
.woocommerce div.product .product_title { font-family: 'Fraunces', serif; font-size: 32px; line-height: 1.1; margin-bottom: 10px; }
@media (max-width: 860px) { .woocommerce div.product.pdp { grid-template-columns: 1fr; gap: 26px; } }

/* Variation selects & quantity */
.woocommerce table.variations td.value select,
.woocommerce .quantity input.qty {
	border: 1.5px solid var(--line); border-radius: 12px; padding: 11px 14px;
	font-family: inherit; font-size: 15px; background: #fff;
}
.woocommerce table.variations th { font-weight: 700; }

/* Cart & checkout tables */
.woocommerce table.shop_table { border-radius: var(--radius); border-color: var(--line); }
.woocommerce table.shop_table th { font-family: inherit; }
.woocommerce .cart-collaterals .cart_totals, .woocommerce-checkout #order_review {
	background: var(--cream); border: 1px solid var(--line); border-radius: var(--radius); padding: 22px;
}
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea,
.woocommerce-page form .form-row input.input-text, .select2-container--default .select2-selection--single {
	border: 1.5px solid var(--line); border-radius: 12px; padding: 12px 14px; font-family: inherit;
}
.woocommerce .woocommerce-info, .woocommerce .woocommerce-message { border-top-color: var(--red); }

/* Breadcrumb spacing (rendered in our page-banner) */
.woo-wrap { padding-top: 4px; }
.hh-swatches .opt.is-disabled{opacity:.4;cursor:not-allowed;text-decoration:line-through}

/* Shop category tabs — stylish, centered pill row */
.shop-filters{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:0 auto 22px;max-width:900px}
.shop-filters .chip{text-decoration:none;display:inline-flex;align-items:center;line-height:1;transition:.18s}
.shop-filters .chip:hover:not(.active){background:#fff;border-color:var(--red);color:var(--red)}
.shop-filters .chip.active{background:var(--red-dark);color:#fff;border-color:var(--red-dark);font-weight:700;box-shadow:0 6px 16px rgba(225,64,44,.28)}

/* Meta row: attribute filters (left) + count & sorting (right) */
.shop-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 18px;margin-bottom:26px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.shop-attr-filters,.shop-sort{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.shop-meta select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1.5px solid var(--line);border-radius:999px;padding:9px 38px 9px 16px;font-family:inherit;font-size:14px;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23E1402C' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;background-size:11px;color:var(--ink);cursor:pointer;transition:.18s}
.shop-meta select:hover,.shop-meta select:focus{border-color:var(--red);outline:none}
.shop-meta .woocommerce-result-count{margin:0;color:var(--ink-soft);font-size:14px}
.shop-meta .woocommerce-ordering{margin:0}
.hh-clear-filters{font-size:13.5px;font-weight:600;color:var(--red);text-decoration:none;white-space:nowrap}
.shop-meta .m-filter{display:none}
@media(max-width:640px){
  .shop-filters{display:none}
  .shop-meta{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:12px;text-align:center}
  .shop-attr-filters,.shop-sort{flex-direction:column;align-items:stretch;gap:10px;width:100%}
  .shop-meta select{display:block;width:100%;flex:none;padding:14px 40px 14px 18px;font-size:15px;text-align:left;box-shadow:0 2px 8px rgba(0,0,0,.04)}
  .shop-meta .m-filter{display:block}
  .shop-meta .woocommerce-result-count{order:-1;width:100%;text-align:center;font-weight:600}
  .shop-meta .woocommerce-ordering,.shop-meta .woocommerce-ordering select{width:100%}
  .hh-clear-filters{display:block;text-align:center;padding:6px}
}

/* Hide WooCommerce leftover empty products header (our banner shows the title) */
.woo-wrap .woocommerce-products-header{display:none}

/* Stylish pagination */
.woocommerce nav.woocommerce-pagination{margin-top:44px;text-align:center;border:0}
.woocommerce nav.woocommerce-pagination ul{display:inline-flex;flex-wrap:wrap;gap:8px;justify-content:center;list-style:none;padding:0;margin:0;border:0}
.woocommerce nav.woocommerce-pagination ul li{margin:0;border:0}
.woocommerce nav.woocommerce-pagination ul li .page-numbers{
  display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:46px;padding:0 14px;
  border:1.5px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);
  font-weight:700;font-family:inherit;text-decoration:none;transition:.18s;line-height:1;
}
.woocommerce nav.woocommerce-pagination ul li a.page-numbers:hover{border-color:var(--red);color:var(--red)}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li .page-numbers.current{
  background:var(--red-dark);color:#fff;border-color:var(--red-dark);box-shadow:0 6px 16px rgba(225,64,44,.28)
}
.woocommerce nav.woocommerce-pagination ul li .page-numbers.dots{border-color:transparent;background:transparent;min-width:auto}
.woocommerce nav.woocommerce-pagination ul li a.next.page-numbers,
.woocommerce nav.woocommerce-pagination ul li a.prev.page-numbers{font-size:18px}

/* Product card buttons — guarantee crisp, high-contrast text over any plugin CSS */
.woo-wrap .card-actions .btn.btn-primary,
.woocommerce ul.products .card-actions .btn-primary{
  background:var(--red-dark)!important;color:#fff!important;border-color:var(--red-dark)!important;
  font-weight:700!important;opacity:1!important;text-shadow:none!important
}
.woo-wrap .card-actions .btn.btn-primary:hover{background:#a92a19!important}
.woo-wrap .card-actions .btn.btn-ghost{background:#fff!important;color:var(--ink)!important;font-weight:700!important}
.woo-wrap .card-actions .btn.btn-ghost:hover{color:var(--red)!important;border-color:var(--red)!important}

/* ---- PDP (single product) ---- */
.woocommerce div.product.pdp .pdp-info span.price,
.woocommerce div.product.pdp .pdp-info p.price{font-family:'Fraunces',serif;font-size:30px;color:var(--red);font-weight:600;margin:2px 0 8px}
.woocommerce div.product.pdp .pdp-info p.price del{font-size:20px}
/* Short description → cleaner typography + checklist bullets */
.woocommerce div.product.pdp .woocommerce-product-details__short-description{color:var(--ink-soft);font-size:15px;line-height:1.6;margin-bottom:4px}
.woocommerce div.product.pdp .woocommerce-product-details__short-description h3,
.woocommerce div.product.pdp .woocommerce-product-details__short-description h2{font-family:'Fraunces',serif;font-weight:600;font-size:17px;color:var(--ink);margin:0 0 4px}
.woocommerce div.product.pdp .woocommerce-product-details__short-description em{font-style:italic;color:var(--ink);font-weight:500}
.woocommerce div.product.pdp .woocommerce-product-details__short-description p{margin:0 0 10px}
.woocommerce div.product.pdp .woocommerce-product-details__short-description ul{list-style:none;padding:0;margin:14px 0;display:grid;gap:9px}
.woocommerce div.product.pdp .woocommerce-product-details__short-description ul li{position:relative;padding-left:28px;font-size:14.5px;color:var(--ink)}
.woocommerce div.product.pdp .woocommerce-product-details__short-description ul li::before{content:"";position:absolute;left:0;top:2px;width:18px;height:18px;border-radius:50%;background:#EAF6EF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 24 24' fill='none' stroke='%2331A06A' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/11px no-repeat}
/* the "* Orders can take up to 5 business days" fine-print line */
.woocommerce div.product.pdp .woocommerce-product-details__short-description p:last-child{font-size:13px;color:var(--ink-soft);border-top:1px solid var(--line);padding-top:10px;margin-top:12px}

/* Variation attribute labels (flavor / size / subscription) → uniform capitalized look */
.woocommerce div.product.pdp table.variations th,
.woocommerce div.product.pdp table.variations th label{text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:var(--ink-soft)}

/* variation rows → option-group look */
.woocommerce div.product.pdp form.cart{margin:6px 0 0}
.woocommerce div.product.pdp table.variations{border:0;margin:0;width:100%}
.woocommerce div.product.pdp table.variations tbody,.woocommerce div.product.pdp table.variations tr{display:block}
.woocommerce div.product.pdp table.variations th,.woocommerce div.product.pdp table.variations td{display:block;padding:0;border:0;text-align:left}
.woocommerce div.product.pdp table.variations th{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:16px 0 9px}
.woocommerce div.product.pdp table.variations td .reset_variations{display:inline-block;margin-top:8px;font-size:12.5px;color:var(--ink-soft)}
.woocommerce div.product.pdp .single_variation_wrap .single_variation .price{font-family:'Fraunces',serif;font-size:26px;color:var(--red);font-weight:600;display:block;margin:12px 0}
.woocommerce div.product.pdp .woocommerce-variation-add-to-cart,
.woocommerce div.product.pdp form.cart:not(.variations_form){display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:16px}
.woocommerce div.product.pdp .quantity input.qty{width:72px;height:50px;text-align:center;border:1.5px solid var(--line);border-radius:12px;font-size:15px}

/* add-to-cart button → our red pill (fixes the purple default) */
.woocommerce div.product .single_add_to_cart_button,
.woocommerce div.product form.cart button.single_add_to_cart_button,
.woocommerce div.product .single_add_to_cart_button.button.alt{
  background:var(--red-dark)!important;color:#fff!important;border:0!important;border-radius:999px!important;
  font-weight:700!important;padding:14px 28px!important;font-size:15px!important;text-transform:none!important;flex:1;min-width:150px;box-shadow:0 8px 20px rgba(225,64,44,.28)
}
.woocommerce div.product .single_add_to_cart_button:hover{background:#a92a19!important;color:#fff!important}

/* gallery */
.woocommerce div.product.pdp .pdp-gallery{width:auto;float:none}
.woocommerce div.product.pdp .pdp-gallery .woocommerce-product-gallery{width:100%!important;margin:0}
.woocommerce div.product.pdp .pdp-gallery .woocommerce-product-gallery__image img{border-radius:var(--radius-lg)}
.woocommerce div.product.pdp .stock{color:var(--green);font-weight:600}

/* Cart / checkout primary buttons — force brand red (fixes the purple .button.alt default) */
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,
.woocommerce #place_order, .woocommerce button#place_order,
.woocommerce a.checkout-button, .woocommerce .wc-proceed-to-checkout a.button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.wc-block-components-button, .wp-element-button{
  background:var(--red-dark)!important;color:#fff!important;border:0!important;border-color:var(--red-dark)!important;
  border-radius:999px!important;font-weight:700!important;box-shadow:0 8px 20px rgba(225,64,44,.28)
}
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover,
.woocommerce #place_order:hover, .woocommerce a.checkout-button:hover,
.wc-block-components-button:hover{background:#a92a19!important;color:#fff!important;filter:none!important}
.woocommerce a.checkout-button, .woocommerce #place_order{padding:15px 30px!important;font-size:16px!important}

/* ============ My Account — match the demo dashboard ============ */
.woocommerce-account.logged-in .woocommerce{display:grid;grid-template-columns:230px minmax(0,1fr);gap:32px;align-items:start}
/* WooCommerce floats the nav/content and sets width:30%/68% — neutralise so they fill the grid tracks. */
.woocommerce-account.logged-in .woocommerce>.woocommerce-MyAccount-navigation{float:none;width:auto;margin:0;grid-column:1}
.woocommerce-account.logged-in .woocommerce>.woocommerce-MyAccount-content{float:none;width:auto;margin:0;min-width:0;grid-column:2}
/* Demo-style icons before each nav item. */
.woocommerce-MyAccount-navigation-link--dashboard a::before{content:"▦ "}
.woocommerce-MyAccount-navigation-link--orders a::before{content:"🧾 "}
.woocommerce-MyAccount-navigation-link--subscriptions a::before{content:"↻ "}
.woocommerce-MyAccount-navigation-link--edit-address a::before{content:"📍 "}
.woocommerce-MyAccount-navigation-link--payment-methods a::before{content:"💳 "}
.woocommerce-MyAccount-navigation-link--edit-account a::before{content:"⚙ "}
.woocommerce-MyAccount-navigation-link--customer-logout a::before{content:"↩ "}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:12px;background:var(--cream);border:1px solid var(--line);border-radius:var(--radius)}
.woocommerce-MyAccount-navigation li{margin:0}
.woocommerce-MyAccount-navigation li a{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:11px;font-size:14.5px;font-weight:600;color:var(--ink-soft);text-decoration:none;transition:.15s}
.woocommerce-MyAccount-navigation li.is-active a,.woocommerce-MyAccount-navigation li a:hover{background:#fff;color:var(--red);box-shadow:var(--shadow-sm)}
.woocommerce-MyAccount-content{min-width:0}
.woocommerce-MyAccount-content>p:first-child{margin-top:0}

/* Native Woo account tables styled like the demo .otable, wrapped in a card */
.woocommerce-MyAccount-content .woocommerce-orders-table,
.woocommerce-MyAccount-content table.shop_table{width:100%;border-collapse:collapse;font-size:14.5px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.woocommerce-MyAccount-content table.shop_table th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);padding:12px 14px;border-bottom:1px solid var(--line);background:var(--cream)}
.woocommerce-MyAccount-content table.shop_table td{padding:14px;border-bottom:1px solid var(--line)}
.woocommerce-MyAccount-content table.shop_table tr:last-child td{border-bottom:none}

/* Addresses + account-details boxes as cards */
.woocommerce-MyAccount-content .woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:8px}
/* WooCommerce's .col2-set clearfix ::before/::after become phantom grid cells — remove them. */
.woocommerce-MyAccount-content .woocommerce-Addresses::before,
.woocommerce-MyAccount-content .woocommerce-Addresses::after{display:none}
.woocommerce-MyAccount-content .woocommerce-Addresses>.woocommerce-Address{float:none;width:auto;margin:0}
.woocommerce-MyAccount-content .woocommerce-Addresses>.col-1{grid-column:1;grid-row:1}
.woocommerce-MyAccount-content .woocommerce-Addresses>.col-2{grid-column:2;grid-row:1}
.woocommerce-MyAccount-content .woocommerce-Address{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.woocommerce-MyAccount-content .woocommerce-Address-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:6px}
.woocommerce-MyAccount-content .woocommerce-Address-title .edit{color:var(--red);font-weight:600;font-size:14px;white-space:nowrap}
.woocommerce-MyAccount-content .woocommerce-Address address{font-style:normal;color:var(--ink-soft);font-size:15px;line-height:1.7;margin-top:8px}
@media(max-width:640px){.woocommerce-MyAccount-content .woocommerce-Addresses{grid-template-columns:1fr}}

/* Demo dashboard cards rendered by our dashboard.php override */
.hh-acc .acc-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-bottom:22px}
.hh-acc .acc-card:last-child{margin-bottom:0}

@media(max-width:900px){
  .woocommerce-account.logged-in .woocommerce{grid-template-columns:1fr}
  .woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:6px}
  .woocommerce-MyAccount-navigation li a{justify-content:center}
}

/* ================= Cart (demo layout) ================= */
.cart-layout .qty{width:max-content}
.cart-layout .qty.justify-end,.cart-layout div[style*="text-align:right"] .qty{margin-left:auto}
.hh-update-cart{display:none}
.hh-coupon-wrap{display:inline-flex;gap:8px;align-items:center}
.hh-coupon{height:44px;border:1.5px solid var(--line);border-radius:11px;padding:0 14px;font-family:inherit;font-size:14px;width:150px}
.hh-coupon-wrap .btn{height:44px;padding:0 18px}
.cart_totals.summary h3{margin-bottom:14px}
.hh-cart-totals{width:100%;border-collapse:collapse;margin:0}
.hh-cart-totals th{text-align:left;font-weight:400;color:var(--ink-soft);font-size:15px;padding:9px 0;vertical-align:top}
.hh-cart-totals td{text-align:right;font-size:15px;color:var(--ink-soft);padding:9px 0}
.hh-cart-totals .order-total th,.hh-cart-totals .order-total td{border-top:1px solid var(--line);padding-top:14px;font-size:19px;font-weight:700;color:var(--ink)}
.hh-cart-totals #shipping_method{list-style:none;margin:0;padding:0;text-align:right}
.hh-cart-totals #shipping_method li{margin:4px 0;font-size:14px}
.hh-cart-totals .woocommerce-shipping-destination{font-size:12.5px;color:var(--ink-soft);margin-top:6px}
.hh-cart-totals .shipping-calculator-button{color:var(--red);font-weight:600}
.summary .wc-proceed-to-checkout{margin-top:16px}
.hh-checkout-btn{width:100%;justify-content:center}
.hh-secure-note{font-size:12.5px;color:var(--ink-soft);text-align:center;margin-top:12px}
@media(max-width:900px){.cart-layout{grid-template-columns:1fr}.summary.cart_totals{position:static}}

/* ================= Checkout (demo two-column) ================= */
.checkout-cols{display:grid;grid-template-columns:1.55fr 1fr;gap:34px;align-items:start}
.checkout-main{min-width:0}
.checkout-main #customer_details,.checkout-main .hh-payment{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;margin-bottom:22px}
.checkout-main .hh-payment{margin-bottom:0}
.hh-payment-heading{font-size:18px;font-family:'Fraunces';font-weight:600;margin-bottom:14px}
.checkout-side{position:sticky;top:90px}
.checkout-side #order_review_heading{margin:0 0 14px;font-size:18px;font-family:'Fraunces';font-weight:600}
.checkout-side #order_review{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.woocommerce-checkout #customer_details .col2-set{width:100%;display:block}
.woocommerce-checkout #customer_details .col-1,.woocommerce-checkout #customer_details .col-2{width:100%;float:none;margin-bottom:8px}
.woocommerce-checkout h3{font-size:18px;font-family:'Fraunces';font-weight:600;margin-bottom:14px}
.woocommerce-checkout .form-row{margin:0 0 14px}
.woocommerce-checkout .form-row label{display:block;font-size:13.5px;color:var(--ink-soft);margin-bottom:6px;font-weight:600}
.woocommerce-checkout .input-text,.woocommerce-checkout select,.woocommerce-checkout textarea,
.woocommerce-checkout .select2-selection{border:1.5px solid var(--line)!important;border-radius:11px!important;min-height:48px;padding:12px 14px!important;font-family:inherit;font-size:15px;width:100%;background:#fff}
.woocommerce-checkout .select2-selection__rendered{line-height:24px!important;padding:0!important}
.woocommerce-checkout .select2-selection__arrow{top:12px!important}
.woocommerce-checkout #order_review .shop_table{width:100%;border-collapse:collapse;background:transparent;border:0}
.woocommerce-checkout #order_review .shop_table th,.woocommerce-checkout #order_review .shop_table td{padding:10px 0;font-size:14.5px;border:0;border-bottom:1px solid var(--line);text-align:left}
.woocommerce-checkout #order_review .shop_table td{text-align:right;color:var(--ink-soft)}
.woocommerce-checkout #order_review .cart_item td.product-name{text-align:left;color:var(--ink)}
.woocommerce-checkout #order_review .order-total th,.woocommerce-checkout #order_review .order-total td{font-size:19px;font-weight:700;color:var(--ink);border-bottom:0;padding-top:14px}
.woocommerce-checkout #payment{background:transparent;border-radius:12px;margin-top:14px}
.woocommerce-checkout #payment ul.payment_methods{border:0;padding:0;margin:0 0 12px}
.woocommerce-checkout #payment ul.payment_methods li{border:1.5px solid var(--line);border-radius:12px;padding:14px;margin-bottom:10px;list-style:none}
.woocommerce-checkout #payment div.payment_box{background:var(--cream-2);border-radius:10px}
.woocommerce-checkout #payment div.payment_box::before{display:none}
.woocommerce-checkout #place_order{width:100%;justify-content:center}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{margin:10px 0}
@media(max-width:900px){
  .checkout-cols{grid-template-columns:1fr}
  .checkout-side{position:static}
}

/* ---- Cart fixes: full-width summary column + quiet Remove link ---- */
.cart-layout .cart-collaterals{width:auto;float:none;margin:0}
.cart-layout .cart-collaterals .cart_totals,
.cart-layout .summary.cart_totals{width:100%!important;float:none!important;max-width:none!important;margin:0}
.woocommerce .cart-layout .line-item .remove,
.cart-layout .line-item a.remove{display:inline-block!important;width:auto!important;height:auto!important;
  font-size:12.5px!important;font-weight:400!important;color:var(--ink-soft)!important;background:none!important;
  line-height:1.4!important;margin-top:4px!important;border-radius:0!important;text-align:left!important}
.woocommerce .cart-layout .line-item a.remove:hover,
.cart-layout .line-item a.remove:hover{color:var(--red)!important;background:none!important}
/* Shipping method radios inside the summary (subscriptions show several) */
.cart_totals.summary #shipping_method{margin:0;padding:0}
.cart_totals.summary .shipping td{text-align:right}

/* ================= My Account → View order ================= */
.hh-order-head{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--cream);border:1px solid var(--line);border-radius:14px;padding:16px 20px;margin:0 0 26px}
.hh-order-head .hh-order-num{font-family:'Fraunces',serif;font-weight:600;font-size:20px;color:var(--ink)}
.hh-order-head .hh-order-date{color:var(--ink-soft);font-size:14px;margin-left:12px}
/* Section titles in the order view */
.woocommerce-MyAccount-content .hh-order-h,
.woocommerce-MyAccount-content .woocommerce-order-details__title,
.woocommerce-MyAccount-content .woocommerce-column__title{font-family:'Fraunces',serif;font-weight:600;font-size:19px;margin:30px 0 14px}
/* Order updates → timeline cards */
.woocommerce-MyAccount-content .woocommerce-OrderUpdates{list-style:none;margin:0;padding:0}
.woocommerce-MyAccount-content .woocommerce-OrderUpdate{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-bottom:12px;position:relative}
.woocommerce-MyAccount-content .woocommerce-OrderUpdate-meta{font-size:12px;color:var(--ink-soft);font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin:0 0 6px}
.woocommerce-MyAccount-content .woocommerce-OrderUpdate-description p{margin:0;font-size:14.5px;color:var(--ink);line-height:1.6}
/* Order details table */
.woocommerce-MyAccount-content table.order_details{border-radius:var(--radius);overflow:hidden;margin-bottom:24px}
.woocommerce-MyAccount-content table.order_details tfoot th{text-align:left;text-transform:uppercase;font-size:11.5px;letter-spacing:.05em;color:var(--ink-soft);font-weight:700}
.woocommerce-MyAccount-content table.order_details tfoot td{text-align:right;font-weight:600;color:var(--ink)}
.woocommerce-MyAccount-content table.order_details tfoot tr:last-child th,
.woocommerce-MyAccount-content table.order_details tfoot tr:last-child td{font-size:17px;color:var(--ink)}
.woocommerce-MyAccount-content table.order_details td.product-total,
.woocommerce-MyAccount-content table.order_details th.product-total{text-align:right}
/* Order again button spacing */
.woocommerce-MyAccount-content .order-again{margin:6px 0 34px}
/* Customer details → address cards (fix col2-set clearfix + width like elsewhere) */
.woocommerce-MyAccount-content .woocommerce-columns--addresses{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:8px}
.woocommerce-MyAccount-content .woocommerce-columns--addresses::before,
.woocommerce-MyAccount-content .woocommerce-columns--addresses::after{display:none}
.woocommerce-MyAccount-content .woocommerce-columns--addresses>.col-1{grid-column:1;grid-row:1}
.woocommerce-MyAccount-content .woocommerce-columns--addresses>.col-2{grid-column:2;grid-row:1}
.woocommerce-MyAccount-content .woocommerce-column--billing-address,
.woocommerce-MyAccount-content .woocommerce-column--shipping-address{float:none;width:auto;margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px}
.woocommerce-MyAccount-content .woocommerce-column--billing-address .woocommerce-column__title,
.woocommerce-MyAccount-content .woocommerce-column--shipping-address .woocommerce-column__title{margin-top:0;font-size:17px}
.woocommerce-MyAccount-content .woocommerce-customer-details address{font-style:normal;border:0;padding:0;color:var(--ink-soft);font-size:15px;line-height:1.75}
.woocommerce-MyAccount-content .woocommerce-customer-details--phone,
.woocommerce-MyAccount-content .woocommerce-customer-details--email{margin:6px 0 0;font-size:14px;color:var(--ink-soft)}
@media(max-width:640px){.woocommerce-MyAccount-content .woocommerce-columns--addresses{grid-template-columns:1fr}.woocommerce-MyAccount-content .woocommerce-columns--addresses>.col-2{grid-column:1;grid-row:auto}}

/* ===== PDP variation labels, spacing, and cleaner subscription price ===== */
/* Hide the screen-reader "Price range: … through …" text that wc_format_price_range adds */
.woocommerce div.product.pdp .price .screen-reader-text,
.hh-sub-range .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.woocommerce div.product.pdp .pdp-info .price .hh-sub-range{font-family:'Fraunces',serif;font-size:30px;color:var(--red);font-weight:600}

/* Variation groups: uniform capitalised labels + consistent spacing (kills the odd gap) */
.woocommerce div.product.pdp table.variations td.value{line-height:0;padding:0}
.woocommerce div.product.pdp table.variations td.value select{display:none!important}
.woocommerce div.product.pdp table.variations td.value .hh-swatches{line-height:normal;margin:0}
.woocommerce div.product.pdp table.variations th,
.woocommerce div.product.pdp table.variations th label{display:block;text-transform:uppercase;letter-spacing:.08em;font-weight:700;font-size:12.5px;color:var(--ink-soft);margin:0}
.woocommerce div.product.pdp table.variations th{margin:20px 0 11px}
.woocommerce div.product.pdp table.variations tr:first-child th{margin-top:6px}
.woocommerce div.product.pdp table.variations td .reset_variations{margin-top:10px}

/* Variation labels are td.label (with an inline margin-bottom:5px) on variable-subscriptions —
   target them directly, add breathing room below each label, and unify the styling. */
.woocommerce div.product.pdp table.variations td.label,
.woocommerce div.product.pdp table.variations th.label,
.woocommerce div.product.pdp table.variations th{
  display:block!important;margin:22px 0 14px!important;padding:0!important;border:0!important;text-align:left!important;
  text-transform:uppercase;letter-spacing:.07em;font-weight:700;font-size:12.5px;color:var(--ink-soft);
}
.woocommerce div.product.pdp table.variations tr:first-child td.label,
.woocommerce div.product.pdp table.variations tr:first-child th.label,
.woocommerce div.product.pdp table.variations tr:first-child th{margin-top:6px!important}
.woocommerce div.product.pdp table.variations td.label label,
.woocommerce div.product.pdp table.variations th label{
  text-transform:uppercase;letter-spacing:.07em;font-weight:700;font-size:12.5px;color:var(--ink-soft);margin:0;
}

/* Fix the "Clear" (reset_variations) link — was overlapping the swatches.
   Make the value cell a flex column and order Clear BELOW the swatches. */
.woocommerce div.product.pdp table.variations td.value{display:flex;flex-direction:column;align-items:flex-start;line-height:normal}
.woocommerce div.product.pdp table.variations td.value select{display:none!important;order:-1}
.woocommerce div.product.pdp table.variations td.value .hh-swatches{order:0;margin:0}
.woocommerce div.product.pdp table.variations td.value .reset_variations{
  order:1;margin:10px 0 0!important;padding:0;font-size:12.5px;font-weight:600;color:var(--red);
  text-decoration:underline;background:none;line-height:1.2;position:static
}
.woocommerce div.product.pdp table.variations td.value .reset_variations:hover{color:var(--red-dark)}

/* ===== A3: mobile flow & checkout polish ===== */
@media(max-width:560px){
  /* Easier-to-tap variation swatches */
  .opts{gap:8px}
  .opt{padding:12px 17px;min-height:46px;display:inline-flex;align-items:center;font-size:14.5px}
  /* Bigger qty steppers (cart + PDP) */
  .qty button{width:46px;height:48px}
  .qty input{height:48px}
  .woocommerce div.product.pdp .quantity input.qty{height:52px}
  /* Full-width primary add-to-cart on PDP */
  .woocommerce div.product .single_add_to_cart_button{flex:1 1 100%;min-width:0;padding:16px 24px!important}
  /* Sticky primary actions — checkout is always one tap away */
  .summary .wc-proceed-to-checkout{position:sticky;bottom:10px;z-index:30}
  .summary .wc-proceed-to-checkout a.checkout-button{box-shadow:0 10px 26px rgba(225,64,44,.38)!important}
  .woocommerce-checkout #place_order{position:sticky;bottom:10px;z-index:30;box-shadow:0 10px 26px rgba(225,64,44,.38)!important}
  /* Comfortable padding on checkout cards */
  .checkout-main #customer_details,.checkout-main .hh-payment,.checkout-side #order_review{padding:20px}
  /* Order summary sits first on mobile checkout so totals are visible up top */
  .checkout-cols{display:flex;flex-direction:column}
  .checkout-side{order:-1}
}

/* ===== Product description video (clean native player) ===== */
.woocommerce div.product .hh-video,
.woocommerce div.product .a video.hh-video{
  display:block;width:100%;max-width:340px;height:auto;margin:14px auto;border-radius:12px;background:#000}
