/* ------------------------------------------------------------------
   Lunaria - magazin, produs, cos, checkout.
   Se incarca DOAR pe paginile WooCommerce, dupa style.css.
   Proprietar: Claude. style.css ramane la Codex.
   ------------------------------------------------------------------ */

/* ============================================================ archive */
.woocommerce-products-header{
  padding:clamp(34px,5vw,62px) var(--gut) 0;
  display:flex;flex-direction:column;gap:10px;
}
.woocommerce-products-header__title,
.woocommerce-products-header h1{
  font-size:clamp(2.4rem,5vw,4rem);font-weight:300;line-height:1;
}
.term-description{color:var(--muted);max-width:52ch;font-size:15.5px;margin:0}

.crumb{padding:20px var(--gut) 0;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}
.crumb a:hover{color:var(--ink)}
.crumb .sep{color:var(--line);margin:0 2px}

.shop-toolbar{
  display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
  padding:18px var(--gut);margin-top:clamp(24px,3vw,38px);
  border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);
}
.shop-toolbar .filters{display:flex;gap:8px;flex-wrap:wrap}
.shop-toolbar .filt{
  border:1px solid var(--line);background:none;border-radius:100px;
  padding:9px 17px;cursor:pointer;color:var(--muted);
  font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:600;
  transition:border-color .2s,color .2s,background .2s;
}
.shop-toolbar .filt:hover{border-color:var(--ink);color:var(--ink)}
.shop-toolbar .filt.on{background:var(--emerald);border-color:var(--emerald);color:#FAF7F2}
.woocommerce .woocommerce-ordering select{
  border:1px solid var(--line);background:var(--ground);
  padding:9px 13px;border-radius:100px;
  font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);
}
.shop-main{padding:clamp(30px,4vw,48px) var(--gut) clamp(60px,8vw,96px)}

/* ============================================================ single product */
.woocommerce div.product{
  display:grid;
  grid-template-columns:minmax(0,54%) minmax(400px,46%);
  align-items:start;
}
.woocommerce div.product > *{min-width:0}

.woocommerce div.product .woocommerce-product-gallery{
  width:auto!important;float:none!important;margin:0;position:relative;
  padding:clamp(22px,3vw,44px);background:#f1e8dc;
}
.woocommerce div.product div.images{width:auto!important;float:none!important;margin:0;max-width:660px;margin-inline:auto}
.woocommerce div.product div.images .woocommerce-product-gallery__image>a>img{
  width:auto!important;max-width:min(100%,640px)!important;max-height:660px;
  height:auto!important;margin:0 auto;background:var(--paper);object-fit:contain;
}

.woocommerce div.product .flex-control-thumbs{
  display:flex;justify-content:center;gap:10px;margin:14px 0 0;padding:0;
}
.woocommerce div.product .flex-control-thumbs li{
  width:72px!important;margin:0!important;float:none!important;list-style:none;
}
.woocommerce div.product .flex-control-thumbs img{
  width:100%!important;height:auto;aspect-ratio:4/5;object-fit:cover;
  background:var(--paper);border:1px solid transparent;opacity:.6;cursor:pointer;
  transition:opacity .25s,border-color .25s;
}
.woocommerce div.product .flex-control-thumbs img.flex-active,
.woocommerce div.product .flex-control-thumbs img:hover{border-color:var(--ink);opacity:1}

.woocommerce div.product .woocommerce-product-gallery__trigger{
  position:absolute;top:clamp(34px,4vw,56px);right:clamp(34px,4vw,56px);
  z-index:3;width:40px;height:40px;border-radius:50%;
  background:var(--ground);border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;font-size:0;
}
.woocommerce div.product .woocommerce-product-gallery__trigger::after{content:"⌕";font-size:20px;color:var(--ink);line-height:1}
.woocommerce div.product .woocommerce-product-gallery__trigger img{display:none}

.woocommerce div.product div.summary{
  width:auto!important;float:none!important;margin:0;
  padding:clamp(34px,4vw,64px) clamp(26px,3.2vw,56px);
  display:flex;flex-direction:column;gap:20px;
  position:relative;top:auto;
}
.woocommerce div.product .product_title{
  font-size:clamp(2rem,3vw,3rem);font-weight:300;margin:0;line-height:1.02;text-wrap:pretty;
}
.woocommerce div.product p.price,
.woocommerce div.product span.price{
  font-family:var(--serif);font-size:1.9rem;color:var(--ink);
  font-variant-numeric:tabular-nums;margin:0;line-height:1;
}
.woocommerce div.product p.price del{color:var(--faint);font-size:.55em;margin-right:9px}
.woocommerce div.product p.price ins{text-decoration:none}
.woocommerce-product-details__short-description{color:var(--muted);font-size:15.5px;max-width:46ch}

/* add to cart */
.woocommerce div.product form.cart{
  margin:0;display:flex;flex-wrap:wrap;gap:10px;align-items:stretch;
}
.woocommerce div.product form.cart .variations,
.woocommerce div.product form.cart .woocommerce-variation,
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart{flex:1 0 100%}
.woocommerce div.product form.cart .quantity{margin:0;display:flex;flex:0 0 78px}
.woocommerce div.product form.cart .single_add_to_cart_button{flex:1;min-width:190px;min-height:52px}
.woocommerce .quantity input.qty{
  width:78px;height:100%;border:1px solid var(--line);background:var(--ground);
  padding:15px 8px;text-align:center;border-radius:2px;font-variant-numeric:tabular-nums;
}
.woocommerce div.product form.cart .button{width:100%;white-space:nowrap}

/* "ce incape in ea" */
.fits{background:var(--paper);padding:22px 24px;border-left:2px solid var(--emerald)}
.fits h4{
  font-family:var(--sans);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;
  font-weight:700;color:var(--emerald);margin:0 0 12px;
}
.fits ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:14.5px}
.fits li{display:flex;gap:11px;align-items:flex-start}
.fits li svg{width:15px;height:15px;flex:none;margin-top:4px}
.fits .yes{color:var(--emerald)}
.fits .no{color:var(--faint)}

/* specs */
.spec{display:grid;grid-template-columns:1fr;margin:0;font-size:13.5px;border-top:1px solid var(--line-soft)}
.spec div{
  display:flex;justify-content:space-between;align-items:baseline;gap:20px;
  padding:10px 0;border-bottom:1px solid var(--line-soft);
}
.spec dt{color:var(--muted);white-space:nowrap}
.spec dd{margin:0;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}

.woocommerce div.product .stock{
  display:inline-flex;align-items:center;gap:8px;margin:0;
  font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--emerald);
}
.woocommerce div.product .stock::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}
.woocommerce div.product .stock.out-of-stock{color:#A33}
.woocommerce div.product .product_meta{
  font-size:12px;color:var(--faint);border-top:1px solid var(--line-soft);padding-top:15px;
  letter-spacing:.04em;
}
.woocommerce div.product .product_meta > span{display:block;margin-bottom:4px}

.trust{
  display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;font-size:12px;color:var(--muted);
  border-top:1px solid var(--line-soft);padding-top:18px;
}
.trust span{display:flex;align-items:flex-start;gap:8px}
.trust svg{width:14px;height:14px;color:var(--emerald);flex:none;margin-top:2px}
@media(max-width:520px){.trust{grid-template-columns:1fr}}

/* tabs + related span the full width */
.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .related,
.woocommerce div.product .upsells{grid-column:1 / -1}
.woocommerce div.product .woocommerce-tabs{
  padding:clamp(40px,5vw,68px) var(--gut);border-top:1px solid var(--line-soft);
}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 26px;display:flex;gap:28px}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:none;border:0;border-radius:0;border-bottom:1px solid transparent;margin:0;padding:0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  padding:0 0 8px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--muted);font-weight:700;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{border-bottom-color:var(--emerald)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink)}
.woocommerce div.product .woocommerce-tabs .panel{max-width:68ch;color:var(--muted);font-size:15.5px}
.woocommerce div.product .woocommerce-tabs .panel h2{display:none}

.woocommerce div.product .related,
.woocommerce div.product .upsells{padding:clamp(46px,6vw,80px) var(--gut);background:var(--paper)}
.woocommerce div.product .related > h2,
.woocommerce div.product .upsells > h2{font-size:clamp(1.8rem,3.4vw,2.6rem);margin-bottom:30px;font-weight:300}

@media(max-width:940px){
  .woocommerce div.product{grid-template-columns:1fr}
  .woocommerce div.product div.summary{position:static;border-top:1px solid var(--line-soft)}
}

/* sticky add-to-cart, mobile only */
.sticky-atc{
  position:fixed;left:0;right:0;bottom:0;z-index:60;display:none;
  align-items:center;gap:12px;padding:11px 16px;
  background:color-mix(in srgb,var(--ground) 96%,transparent);
  backdrop-filter:blur(10px);border-top:1px solid var(--line);
  transform:translateY(100%);transition:transform .3s cubic-bezier(.16,1,.3,1);
}
.sticky-atc.on{transform:translateY(0)}
.sticky-atc-info{display:flex;flex-direction:column;line-height:1.25;min-width:0}
.sticky-atc-info b{
  font-family:var(--serif);font-size:1rem;font-weight:400;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.sticky-atc-info span{font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.sticky-atc .btn{flex:1;padding:14px 12px;font-size:11px;letter-spacing:.12em}
@media(max-width:940px){.sticky-atc{display:flex}}

/* ============================================================ cart & checkout */
.woocommerce-cart .site-main,
.woocommerce-checkout .site-main,
.woocommerce-account .site-main{
  padding:clamp(30px,4vw,54px) var(--gut) clamp(60px,8vw,90px);
  max-width:var(--wrap);margin:0 auto;
}
/* These pages render through the generic page template; undo its prose caps. */
.woocommerce-cart .page-head,
.woocommerce-checkout .page-head,
.woocommerce-account .page-head{padding:0}
.woocommerce-cart .page-body,
.woocommerce-checkout .page-body,
.woocommerce-account .page-body{max-width:none;padding:26px 0 0}

.woocommerce table.shop_table{border:1px solid var(--line);border-radius:0;border-collapse:collapse}
.woocommerce table.shop_table th{
  font-family:var(--sans);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--muted);font-weight:700;border-bottom:1px solid var(--line);
}
.woocommerce table.shop_table td{border-top:1px solid var(--line-soft);font-size:14px}
.woocommerce table.shop_table td.product-name a{font-family:var(--serif);font-size:1.2rem}

.woocommerce form .form-row{padding:0;margin:0 0 15px;display:flex;flex-direction:column;gap:6px}
.woocommerce form .form-row label{
  font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:700;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container .select2-selection--single{
  border:1px solid var(--line);background:var(--ground);
  padding:14px;border-radius:2px;font-size:14.5px;height:auto;line-height:1.4;
}
.select2-container--default .select2-selection--single .select2-selection__rendered{
  line-height:1.4;padding:0;color:var(--ink);
}
.select2-container--default .select2-selection--single .select2-selection__arrow{top:13px}
.woocommerce form .form-row.woocommerce-invalid input.input-text{border-color:#A33}

/* --- checkout layout: fields left, sticky order summary right --- */
.woocommerce-checkout form.checkout{
  display:grid;grid-template-columns:minmax(0,1.5fr) minmax(340px,1fr);
  grid-template-areas:"details heading" "details review";
  gap:0 clamp(28px,4vw,64px);align-items:start;
}
#customer_details{grid-area:details;display:block;width:auto}
#customer_details .col-1,#customer_details .col-2{width:auto;float:none}
#customer_details .col-2{margin-top:10px}
#order_review_heading{grid-area:heading;margin:0 0 16px}
.woocommerce-checkout #order_review{
  grid-area:review;position:sticky;top:104px;
  background:var(--paper);padding:28px 26px;margin:0;border-radius:2px;
}
@media(max-width:960px){
  .woocommerce-checkout form.checkout{grid-template-columns:1fr;grid-template-areas:"details" "heading" "review"}
  #order_review_heading{margin-top:30px}
  .woocommerce-checkout #order_review{position:relative;top:auto}
}

/* paired name/phone fields share a row */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
.woocommerce-checkout .woocommerce-account-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.woocommerce-checkout .form-row-wide,
.woocommerce-checkout .notes,
.woocommerce-checkout .woocommerce-account-fields .form-row{grid-column:1/-1}

.woocommerce-checkout h3,
#order_review_heading{font-size:1.6rem;font-weight:400}
.woocommerce-checkout .woocommerce-billing-fields h3{margin-bottom:18px}

/* order summary table inside the card */
.woocommerce-checkout #order_review table.shop_table{border:0;margin-bottom:8px;background:transparent}
.woocommerce-checkout #order_review table.shop_table th{border-bottom:0;padding:9px 0;text-align:left;background:transparent}
.woocommerce-checkout #order_review table.shop_table td{border-top:1px solid rgba(27,26,23,.09);padding:9px 0;text-align:right}
.woocommerce-checkout #order_review .order-total td{font-family:var(--serif);font-size:1.35rem}
.woocommerce-checkout #order_review table.shop_table td.product-name{text-align:left;font-size:13.5px}

/* fields must read as fields: white on the cream page, visible chevron on selects */
.woocommerce-checkout form .form-row input.input-text,
.woocommerce-checkout form .form-row textarea,
.woocommerce-checkout form .form-row select{
  background:#fff;border:1px solid rgba(27,26,23,.24);
  transition:border-color .2s ease,box-shadow .2s ease;
}
.woocommerce-checkout form .form-row input.input-text:hover,
.woocommerce-checkout form .form-row select:hover{border-color:rgba(27,26,23,.45)}
.woocommerce-checkout form .form-row input.input-text:focus,
.woocommerce-checkout form .form-row textarea:focus,
.woocommerce-checkout form .form-row select:focus{
  outline:none;border-color:var(--emerald);box-shadow:0 0 0 1px var(--emerald);
}
.woocommerce-checkout form .form-row select{
  appearance:none;-webkit-appearance:none;cursor:pointer;
  padding-right:40px;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' stroke='%23064d36' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 15px center;
}
.woocommerce-checkout .select2-container .select2-selection--single{
  background:#fff;border:1px solid rgba(27,26,23,.24);
}

/* privacy + terms row above the place-order button */
.woocommerce-checkout .woocommerce-privacy-policy-text p{font-size:12.5px;color:var(--muted);line-height:1.65}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{margin-bottom:16px}
.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text{
  font-size:13.5px;line-height:1.55;
  text-transform:none;letter-spacing:.01em;font-weight:400;color:var(--ink);
}
.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text a{
  color:var(--emerald);font-weight:700;
  text-decoration:underline;text-underline-offset:3px;
}
.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text a:hover{color:var(--ink)}
.woocommerce-checkout .validate-required .woocommerce-terms-and-conditions-checkbox-text .required{color:#A33}
.woocommerce-checkout input[type=checkbox]{accent-color:var(--emerald);width:15px;height:15px;flex:none}
.woocommerce-checkout .woocommerce-form__label-for-checkbox{align-items:flex-start}
.woocommerce-checkout .woocommerce-form__label-for-checkbox input[type=checkbox]{margin-top:3px}

/* account benefits strip */
.checkout-perks{
  display:flex;flex-direction:column;gap:6px;
  background:#fbf8f2;border-left:2px solid var(--emerald);
  padding:18px 20px;margin:0 0 26px;
}
.checkout-perks b{font-family:var(--serif);font-weight:400;font-size:17px}
.checkout-perks span{font-size:13px;color:var(--muted);line-height:1.65;max-width:72ch}

/* create account box */
.woocommerce-checkout .create-account{
  background:#fbf8f2;border:1px solid var(--line-soft);border-radius:2px;
  padding:16px 18px;margin:6px 0 14px;
}
.woocommerce-checkout .woocommerce-form__label-for-checkbox{
  display:flex;align-items:center;gap:9px;font-size:13.5px;cursor:pointer;
}

.woocommerce-checkout #order_review{background:var(--paper);padding:30px 28px}
.woocommerce-checkout #payment{background:transparent;border-radius:0}
.woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid var(--line);padding:0 0 16px}
.woocommerce-checkout #payment ul.payment_methods li{
  border:1px solid var(--line);border-radius:2px;padding:15px 17px;margin-bottom:9px;
  list-style:none;background:var(--ground);
}
.woocommerce-checkout #payment div.payment_box{
  background:transparent;color:var(--muted);font-size:13px;margin:10px 0 0;padding:0;
}
.woocommerce-checkout #payment div.payment_box::before{display:none}
.woocommerce #payment #place_order{width:100%}

.woocommerce-info,.woocommerce-message,.woocommerce-error{
  border-top:0;border-left:2px solid var(--emerald);background:var(--paper);
  color:var(--ink);border-radius:0;font-size:14.5px;
}
/* the actionable part of a notice must read as a link, not as body text */
.woocommerce-info a,
.woocommerce-message a{
  color:var(--emerald);font-weight:700;
  text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px;
}
.woocommerce-info a:hover,
.woocommerce-message a:hover{color:var(--ink)}

/* inline forms revealed by those notices (checkout login + coupon) */
.woocommerce-checkout form.checkout_coupon{
  max-width:520px;background:#fff;border:1px solid var(--line);border-radius:2px;
  padding:22px;margin:0 0 26px;display:flex;gap:10px;align-items:stretch;flex-wrap:wrap;
}
.woocommerce-checkout form.checkout_coupon p{margin:0}
.woocommerce-checkout form.checkout_coupon .form-row{flex:1;min-width:180px}
.woocommerce-checkout form.checkout_coupon .form-row-last{flex:0 0 auto;min-width:0}
.woocommerce-checkout form.checkout_coupon input.input-text{height:100%}
.woocommerce-checkout form.login{margin-bottom:26px}
.woocommerce-error{border-left-color:#A33}
.woocommerce-info::before,.woocommerce-message::before{color:var(--emerald)}
.woocommerce-error::before{color:#A33}

/* courier logo in the shipping method label */
.ship-logo{
  display:inline-block;width:auto;height:22px;
  vertical-align:middle;margin-right:8px;
}

/* ============================================================ cart layout
   Classic cart shortcode: items left, sticky summary right. */
.woocommerce-cart .site-main .woocommerce{
  display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,1fr);
  gap:clamp(28px,4vw,60px);align-items:start;
}
.woocommerce-cart .site-main .woocommerce > .woocommerce-notices-wrapper{grid-column:1/-1}
.woocommerce-cart form.woocommerce-cart-form{min-width:0}
.woocommerce-cart table.shop_table{border:0}
.woocommerce-cart table.shop_table th{padding:0 12px 12px;border-bottom:1px solid var(--line)}
.woocommerce-cart table.shop_table td{padding:18px 12px;vertical-align:middle}
.woocommerce-cart td.product-thumbnail{width:96px}
.woocommerce-cart td.product-thumbnail img{width:84px;aspect-ratio:4/5;object-fit:cover;background:var(--paper);border-radius:2px}
.woocommerce-cart table.shop_table td.product-name a{font-family:var(--serif);font-size:1.3rem}
.woocommerce-cart td.product-price,
.woocommerce-cart td.product-subtotal{font-family:var(--serif);font-size:1.1rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.woocommerce-cart td.product-remove{width:36px}
.woocommerce-cart td.product-remove a.remove{
  display:grid;place-items:center;width:28px;height:28px;
  border:1px solid var(--line);border-radius:50%;
  color:var(--faint)!important;font-size:18px;font-weight:400;line-height:1;
  transition:background .2s,border-color .2s,color .2s;
}
.woocommerce-cart td.product-remove a.remove:hover{background:var(--ink);border-color:var(--ink);color:#fff!important}
.woocommerce-cart .quantity input.qty{width:64px;padding:11px 6px}
.woocommerce-cart td.actions{padding:24px 12px 0}
.woocommerce-cart td.actions .coupon{display:flex;gap:8px;float:none}
.woocommerce-cart td.actions .coupon label{display:none}
.woocommerce-cart td.actions .coupon .input-text{
  border:1px solid var(--line);background:var(--ground);
  padding:12px 14px;border-radius:2px;width:180px;font-size:13.5px;
}
.woocommerce-cart td.actions > .button{float:right}
/* Woo's disabled state inherits text colour over our emerald fill; restyle as ghost. */
.woocommerce .button:disabled,
.woocommerce .button.disabled,
.woocommerce .button:disabled[disabled]{
  background:transparent!important;border:1px solid var(--line)!important;
  color:var(--faint)!important;opacity:1!important;
  padding:15px 30px;cursor:not-allowed;
}

.woocommerce-cart .cart-collaterals{position:sticky;top:104px}
.woocommerce-cart .cart-collaterals .cart_totals{
  width:100%!important;float:none!important;
  background:var(--paper);padding:28px 26px;border-radius:2px;
}
.woocommerce-cart .cart_totals h2{font-size:1.7rem;font-weight:400;margin:0 0 14px}
.woocommerce-cart .cart_totals table.shop_table{border:0;margin-bottom:6px}
.woocommerce-cart .cart_totals table.shop_table th{
  border-bottom:0;padding:10px 0;text-align:left;
}
.woocommerce-cart .cart_totals table.shop_table td{border-top:1px solid var(--line-soft);padding:10px 0;text-align:right}
.woocommerce-cart .cart_totals .order-total td{font-family:var(--serif);font-size:1.35rem}
.woocommerce-cart .wc-proceed-to-checkout{padding:12px 0 0}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{width:100%;margin:0;font-size:12px}

@media(max-width:900px){
  .woocommerce-cart .site-main .woocommerce{grid-template-columns:1fr}
  .woocommerce-cart .cart-collaterals{position:relative;top:auto}
  .woocommerce-cart td.actions .coupon .input-text{flex:1;width:auto}
}

/* ============================================================ account */
.woocommerce-account .woocommerce > h2{font-size:1.9rem;font-weight:300;margin:0 0 18px}
.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.lost_reset_password{
  max-width:480px;border:1px solid var(--line);border-radius:2px;
  background:#fff;box-shadow:var(--shadow);padding:32px 30px;margin:0;
}
.woocommerce form.login .form-row,
.woocommerce form.register .form-row{margin-bottom:16px}
.woocommerce form.login .woocommerce-form-login__submit,
.woocommerce form.register .woocommerce-form-register__submit{width:100%;margin-top:4px}
.woocommerce form.login .woocommerce-form-login__rememberme{
  display:flex;align-items:center;gap:8px;padding:2px 0 12px;
  font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);
}
.woocommerce .lost_password{margin:14px 0 0;font-size:13px}
.woocommerce .lost_password a{color:var(--muted);border-bottom:1px solid var(--line)}
.woocommerce .lost_password a:hover{color:var(--ink);border-color:var(--ink)}

.woocommerce-account.logged-in .woocommerce-MyAccount-navigation{float:none;width:auto;margin-bottom:26px}
.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul{
  list-style:none;margin:0;padding:0;display:flex;gap:8px;flex-wrap:wrap;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-navigation a{
  display:inline-block;border:1px solid var(--line);border-radius:100px;
  padding:9px 17px;font-size:11px;letter-spacing:.13em;text-transform:uppercase;
  font-weight:600;color:var(--muted);
}
.woocommerce-account.logged-in .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account.logged-in .woocommerce-MyAccount-navigation a:hover{
  background:var(--emerald);border-color:var(--emerald);color:#FAF7F2;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content{float:none;width:auto}

.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:6px;justify-content:center;margin-top:48px}
.woocommerce nav.woocommerce-pagination ul li{border:0}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  border:1px solid var(--line);padding:10px 16px;border-radius:2px;font-size:13px;
}
.woocommerce nav.woocommerce-pagination ul li span.current{
  background:var(--emerald);color:#FAF7F2;border-color:var(--emerald);
}

/* ============================================================ colour family + product details */
.product-colours{padding:18px 0 20px;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.colour-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:13px}
.colour-head span{font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ink)}
.colour-head b{font-size:11px;font-weight:400;color:var(--muted)}
.colour-options{display:flex;gap:10px;overflow-x:auto;padding:3px 3px 8px;scrollbar-width:thin}
.colour-option{display:flex;flex-direction:column;gap:7px;min-width:76px;font-size:11px;color:var(--muted)}
.colour-thumb{width:76px;height:88px;display:grid;place-items:center;background:#f1e8dc;border:1px solid transparent;transition:border-color .2s,box-shadow .2s}
.colour-thumb img{width:100%!important;height:100%!important;object-fit:contain!important;background:transparent!important}
.colour-option:hover .colour-thumb{border-color:var(--muted)}
.colour-option.active{color:var(--ink);font-weight:700}
.colour-option.active .colour-thumb{border:1px solid var(--emerald);box-shadow:0 0 0 2px var(--ground),0 0 0 3px var(--emerald)}

.product-accordions{border-top:1px solid var(--line)}
.product-accordions details{border-bottom:1px solid var(--line)}
.product-accordions summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 0;cursor:pointer;list-style:none;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.product-accordions summary::-webkit-details-marker{display:none}
.product-accordions summary span{font-family:var(--serif);font-size:22px;font-weight:300;line-height:1;transition:transform .2s}
.product-accordions details[open] summary span{transform:rotate(45deg)}
.product-accordions details p{margin:-2px 0 18px;color:var(--muted);font-size:13px;line-height:1.65;max-width:48ch}

/* Product information moves below the purchase area:
   full-width heading, then three matching cards so nothing floats loose. */
.woocommerce div.product .product-more{
  grid-column:1/-1;display:block;
  padding:clamp(56px,8vw,96px) var(--gut);
  background:#f3ece3;border-top:1px solid var(--line-soft);
}
.product-more-heading{max-width:var(--wrap);margin:0 auto clamp(30px,4vw,46px)}
.product-more-heading .eyebrow{color:var(--emerald);margin-bottom:14px}
.product-more-heading h2{font-size:clamp(2.4rem,4vw,3.9rem);line-height:.92}
.product-more-heading h2 em{color:var(--emerald);font-weight:300}
.product-more-content{
  max-width:var(--wrap);margin:0 auto;
  display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.5vw,30px);
  align-items:start;
}
.product-more .fits,
.product-more .spec,
.product-more .product-accordions{
  margin:0;background:#fbf8f2;border:0;border-top:2px solid var(--emerald);
}
.product-more .fits{padding:24px 26px}
.product-more .spec{grid-template-columns:1fr;padding:14px 26px 10px}
.product-more .product-accordions{padding:4px 26px 8px}
.product-more .product-accordions details:last-child{border-bottom:0}
@media(max-width:960px){
  .product-more-content{grid-template-columns:1fr;gap:18px}
  .woocommerce div.product .product-more{padding:54px 22px}
}
