/* ==================================================================
   Hipstoeren Headless — woocommerce.css
   Cart / checkout / account / notices / forms.
   The grid sits on WooCommerce's OWN wrapper (.woocommerce for cart +
   account, form.checkout for checkout) — never on our div, which has
   exactly one child. Selectors carry .hsh-woowrap .woocommerce so they
   out-specify WC core instead of tying with it.
================================================================== */

.hsh-woo .page-head{padding-bottom:0}
.hsh-woowrap{font-family:var(--f);color:var(--text);font-size:14.5px}
.hsh-woowrap .woocommerce::before,.hsh-woowrap .woocommerce::after{display:none}

/* ── buttons (beat .woocommerce a.button.alt = 0,3,1) ── */
.hsh-woowrap .woocommerce a.button,.hsh-woowrap .woocommerce button.button,.hsh-woowrap .woocommerce input.button,
.hsh-woowrap .woocommerce a.button.alt,.hsh-woowrap .woocommerce button.button.alt,
.hsh-woowrap .woocommerce #respond input#submit,.hsh-woowrap .woocommerce .checkout-button{
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  padding:17px 30px;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:#fff;
  font-family:var(--f);font-size:10.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;line-height:1.2;
  transition:background .5s var(--ease),border-color .5s var(--ease),color .5s var(--ease)}
.hsh-woowrap .woocommerce a.button:hover,.hsh-woowrap .woocommerce button.button:hover,.hsh-woowrap .woocommerce input.button:hover,
.hsh-woowrap .woocommerce a.button.alt:hover,.hsh-woowrap .woocommerce button.button.alt:hover,.hsh-woowrap .woocommerce .checkout-button:hover{
  background:var(--olive);border-color:var(--olive);color:#fff}
.hsh-woowrap .woocommerce button.button:disabled,.hsh-woowrap .woocommerce button.button:disabled[disabled]{
  background:var(--ink);color:#fff;opacity:.45;padding:17px 30px}
.hsh-woowrap .woocommerce button[name="update_cart"]{background:#fff;color:var(--ink)}
.hsh-woowrap .woocommerce button[name="update_cart"]:hover{background:var(--ink);color:#fff}

/* ── form fields ── */
.hsh-woowrap .woocommerce form .form-row{padding:0;margin:0 0 16px}
.hsh-woowrap .woocommerce form .form-row label{font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin-bottom:7px;line-height:1.5}
.hsh-woowrap .woocommerce form .form-row .required{color:var(--blush);text-decoration:none}
.hsh-woowrap .woocommerce form .form-row input.input-text,.hsh-woowrap .woocommerce form .form-row textarea,
.hsh-woowrap .woocommerce form .form-row select,.hsh-woowrap .woocommerce .coupon input.input-text,
.hsh-woowrap .woocommerce input[type=email],.hsh-woowrap .woocommerce input[type=password],.hsh-woowrap .woocommerce input[type=text]{
  width:100%;border:1px solid var(--line);border-radius:0;background:#fff;font:inherit;font-size:14px;padding:13px 15px;color:var(--ink);line-height:1.4;box-shadow:none}
.hsh-woowrap .woocommerce form .form-row input.input-text:focus,.hsh-woowrap .woocommerce form .form-row textarea:focus{border-color:var(--olive);outline:none}
.hsh-woowrap .woocommerce .select2-container--default .select2-selection--single{height:auto;border:1px solid var(--line);border-radius:0;padding:9px 6px}
.hsh-woowrap .woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow{height:100%}
.select2-dropdown{border-color:var(--line);border-radius:0;font-family:var(--f)}
.select2-results__option--highlighted[aria-selected],.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--ink)}

/* ── notices (kill the black-box icons) ── */
.woocommerce-message,.woocommerce-info,.woocommerce-error{border:1px solid var(--line);border-left:3px solid var(--olive);background:var(--cream);
  color:var(--ink);font-size:13.5px;padding:15px 18px;margin:0 0 24px;list-style:none;border-radius:0}
.woocommerce-error{border-left-color:#b5524a}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{display:none}
.woocommerce-message .button,.woocommerce-info .button{float:right;padding:9px 14px;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;background:var(--ink);color:#fff}

/* ── tables ── */
.hsh-woowrap .woocommerce table.shop_table{border:0;border-radius:0;border-collapse:collapse;margin:0 0 24px;width:100%}
.hsh-woowrap .woocommerce table.shop_table th{font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--olive);padding:14px 10px;border-bottom:1px solid var(--line);border-top:0;text-align:left}
.hsh-woowrap .woocommerce table.shop_table td{padding:16px 10px;border-top:0;border-bottom:1px solid var(--line);vertical-align:middle}
.hsh-woowrap .woocommerce table.shop_table td.product-name a{color:var(--ink);font-weight:500}
.hsh-woowrap .woocommerce table.shop_table .variation{font-size:12px;color:var(--olive);margin:6px 0 0}
.hsh-woowrap .woocommerce table.shop_table .variation dt,.hsh-woowrap .woocommerce table.shop_table .variation dd{margin:0;display:inline}
.hsh-woowrap .woocommerce table.shop_table .variation dd p{display:inline;margin:0}
.hsh-woowrap .woocommerce-cart-form__contents{table-layout:fixed}
.hsh-woowrap .woocommerce-cart-form__contents .product-remove{width:36px}
.hsh-woowrap .woocommerce-cart-form__contents .product-thumbnail{width:84px}
.hsh-woowrap .woocommerce-cart-form__contents .product-thumbnail img{width:64px;min-width:64px;max-width:64px;height:auto;aspect-ratio:3/4;object-fit:cover}
.hsh-woowrap .woocommerce-cart-form__contents .product-price,.hsh-woowrap .woocommerce-cart-form__contents .product-subtotal{width:110px}
.hsh-woowrap .woocommerce-cart-form__contents .product-quantity{width:120px}
.hsh-woowrap .woocommerce a.remove{color:var(--sage);font-weight:300;font-size:20px}
.hsh-woowrap .woocommerce a.remove:hover{background:none;color:var(--ink)}
.hsh-woowrap .woocommerce .quantity .qty{width:72px;border:1px solid var(--line);border-radius:0;padding:11px 6px;font:inherit;text-align:center}
.hsh-woowrap .woocommerce table.cart td.actions{padding-top:22px}
.hsh-woowrap .woocommerce table.cart td.actions .coupon{display:flex;gap:8px;align-items:stretch}
.hsh-woowrap .woocommerce table.cart td.actions .coupon .input-text{width:200px;margin:0}

/* ── CART grid on .woocommerce ── */
.hsh-cart-layout .woocommerce{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:clamp(24px,3vw,44px);align-items:start}
.hsh-cart-layout .woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1}
.hsh-cart-layout .woocommerce>form.woocommerce-cart-form{grid-column:1;min-width:0}
.hsh-cart-layout .woocommerce>.cart-collaterals{grid-column:2;display:contents}
.hsh-cart-layout .woocommerce:not(:has(form.woocommerce-cart-form)){display:block}
.hsh-woowrap .woocommerce .cart-collaterals .cart_totals,.hsh-woowrap .woocommerce .cart-collaterals .cross-sells{width:100%;float:none}
.hsh-cart-layout .cart-collaterals .cart_totals{grid-column:2;grid-row:2;background:var(--cream);border:1px solid var(--line);padding:clamp(20px,2.4vw,30px)}
.hsh-cart-layout .woocommerce>form.woocommerce-cart-form{grid-row:2}
.hsh-cart-layout .cart-collaterals .cross-sells{grid-column:1/-1;grid-row:3}
.hsh-woowrap .cart_totals h2,.hsh-woowrap #order_review_heading,.hsh-woowrap .woocommerce-billing-fields h3,.hsh-woowrap .woocommerce-shipping-fields h3,.hsh-woowrap .woocommerce-additional-fields h3,.hsh-woowrap .cross-sells h2{
  font-size:21px;font-weight:300;margin:0 0 18px}
.hsh-woowrap .cart_totals table.shop_table th{width:42%;font-size:10px}
.hsh-woowrap .cart_totals table.shop_table td,.hsh-woowrap .cart_totals table.shop_table th{padding:13px 0;border-bottom:1px solid var(--line)}
.hsh-woowrap .cart_totals .order-total strong{font-family:var(--d);font-weight:300;font-size:22px;color:var(--ink)}
.hsh-woowrap .includes_tax{display:block;font-size:11px;color:var(--sage);margin-top:3px}
.hsh-woowrap .woocommerce .wc-proceed-to-checkout{padding:18px 0 0}
.hsh-woowrap .woocommerce .wc-proceed-to-checkout a.checkout-button{display:flex;width:100%;min-width:100%;font-size:10.5px;padding:18px 24px;margin:0}
.hsh-woowrap ul#shipping_method{margin:0;padding:0;list-style:none}
.hsh-woowrap ul#shipping_method li{margin:0 0 6px;text-indent:0;padding:0}
.hsh-woowrap .woocommerce-shipping-destination,.hsh-woowrap .shipping-calculator-button{font-size:12px;color:var(--olive)}
.hsh-woowrap .cart-empty{font-family:var(--d);font-size:22px;font-weight:300}
.hsh-woowrap .return-to-shop .button{margin-top:10px}

/* ── CHECKOUT grid on form.checkout, explicit rows ── */
.hsh-checkout-layout form.checkout{display:grid;grid-template-columns:minmax(0,1fr) 420px;column-gap:clamp(24px,3vw,48px);align-items:start}
.hsh-checkout-layout form.checkout>.woocommerce-NoticeGroup{grid-column:1/-1;grid-row:1}
.hsh-checkout-layout form.checkout>#customer_details{grid-column:1;grid-row:2/span 2;min-width:0}
.hsh-checkout-layout form.checkout>#order_review_heading{grid-column:2;grid-row:2;margin:0 0 14px}
.hsh-checkout-layout form.checkout>#order_review{grid-column:2;grid-row:3;background:var(--cream);border:1px solid var(--line);padding:clamp(18px,2.2vw,28px);position:sticky;top:24px}
.hsh-checkout-layout form.checkout>wc-order-attribution-inputs{display:none}
.hsh-woowrap .woocommerce .col2-set .col-1,.hsh-woowrap .woocommerce .col2-set .col-2{width:100%;float:none;max-width:none}
.hsh-woowrap .woocommerce .col2-set{display:grid;gap:30px}
.hsh-woowrap .woocommerce .col2-set::before,.hsh-woowrap .woocommerce .col2-set::after{display:none}
.hsh-woowrap .woocommerce form .form-row-first,.hsh-woowrap .woocommerce form .form-row-last{width:calc(50% - 8px)}
.hsh-woowrap #order_review table.shop_table td,.hsh-woowrap #order_review table.shop_table th{padding:12px 0}
.hsh-woowrap #order_review .order-total td{font-family:var(--d);font-size:20px;font-weight:300}
.hsh-woowrap .woocommerce-checkout #payment,.hsh-woowrap #payment{background:transparent;border-radius:0}
.hsh-woowrap #payment ul.payment_methods{padding:0 0 14px;border-bottom:1px solid var(--line)}
.hsh-woowrap #payment ul.payment_methods li{list-style:none;padding:8px 0}
.hsh-woowrap #payment div.payment_box{background:#fff;border:1px solid var(--line);color:var(--olive);font-size:13px;border-radius:0}
.hsh-woowrap #payment div.payment_box::before{display:none}
.hsh-woowrap #payment .place-order{padding:16px 0 0;display:grid;gap:14px}
.hsh-woowrap .woocommerce #payment #place_order{grid-column:1/-1;width:100%;min-width:100%;float:none;padding:19px 24px}
.hsh-woowrap .woocommerce-terms-and-conditions-wrapper{font-size:12.5px;color:var(--olive)}
.hsh-woowrap .woocommerce-form-coupon-toggle .woocommerce-info{margin-bottom:16px}
.hsh-woowrap form.checkout_coupon{border:1px solid var(--line);border-radius:0;padding:18px;margin:0 0 24px}

/* ── ACCOUNT grid on .woocommerce ── */
.hsh-account-layout .woocommerce{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(24px,3vw,48px);align-items:start}
.hsh-account-layout .woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1}
.hsh-account-layout .woocommerce>.woocommerce-MyAccount-navigation{grid-column:1;width:100%;float:none}
.hsh-account-layout .woocommerce>.woocommerce-MyAccount-content{grid-column:2;width:100%;float:none;min-width:0}
body:not(.logged-in) .hsh-account-layout .woocommerce{display:block;max-width:920px;margin-inline:auto}
.hsh-woowrap .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.hsh-woowrap .woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--line)}
.hsh-woowrap .woocommerce-MyAccount-navigation li a{display:block;padding:13px 0;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--olive);transition:color .3s,padding-left .45s var(--ease)}
.hsh-woowrap .woocommerce-MyAccount-navigation li a:hover,.hsh-woowrap .woocommerce-MyAccount-navigation li.is-active a{color:var(--ink);padding-left:8px}
.hsh-woowrap .woocommerce-MyAccount-content p{line-height:1.8}
.hsh-woowrap .woocommerce-MyAccount-content a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.woocommerce-account:not(.logged-in) .hsh-woowrap .u-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.woocommerce-account:not(.logged-in) .hsh-woowrap .u-column1,.woocommerce-account:not(.logged-in) .hsh-woowrap .u-column2{width:100%;float:none}
.woocommerce-account:not(.logged-in) .hsh-woowrap form.login,.woocommerce-account:not(.logged-in) .hsh-woowrap form.register{border:1px solid var(--line);border-radius:0;background:var(--cream);padding:clamp(20px,2.6vw,30px);margin:0}
.hsh-woowrap .woocommerce-account h2,.woocommerce-account .hsh-woowrap h2{font-size:22px;font-weight:300;margin:0 0 16px}
.hsh-woowrap .woocommerce-orders-table .button,.hsh-woowrap .woocommerce-Addresses .edit{padding:9px 14px}
.hsh-woowrap .woocommerce .woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.hsh-woowrap .woocommerce .woocommerce-Addresses .col-1,.hsh-woowrap .woocommerce .woocommerce-Addresses .col-2{width:100%;float:none}
.hsh-woowrap .woocommerce .woocommerce-Addresses::before,.hsh-woowrap .woocommerce .woocommerce-Addresses::after{display:none}

/* ── order received ── */
.hsh-woowrap .woocommerce-order-overview{display:flex;flex-wrap:wrap;gap:20px;padding:0;list-style:none}
.hsh-woowrap .woocommerce-order-overview li{border-right:1px solid var(--line);padding-right:20px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--olive)}

/* cart/checkout font is declared, never inherited */
body.woocommerce-cart .hsh-woowrap,body.woocommerce-cart .hsh-woowrap *,
body.woocommerce-checkout .hsh-woowrap,body.woocommerce-checkout .hsh-woowrap *,.select2-container{font-family:var(--f)}
body.woocommerce-cart .hsh-woowrap h2,body.woocommerce-checkout .hsh-woowrap h3,body.woocommerce-checkout .hsh-woowrap #order_review_heading,
body.woocommerce-cart .cart_totals .order-total strong,body.woocommerce-checkout #order_review .order-total td{font-family:var(--d)}

@media(max-width:980px){
  .hsh-cart-layout .woocommerce,.hsh-checkout-layout form.checkout,.hsh-account-layout .woocommerce{display:block}
  .hsh-cart-layout .cart-collaterals .cart_totals{margin-top:24px}
  .hsh-checkout-layout form.checkout>#order_review{position:static;margin-top:10px}
  .woocommerce-account:not(.logged-in) .hsh-woowrap .u-columns,.hsh-woowrap .woocommerce .woocommerce-Addresses{grid-template-columns:1fr}
}
