/* ==========================================================================
   Whispering Watches — WooCommerce reskin
   Restyles WooCommerce's default markup (shop archive, single product,
   cart, checkout, my account) to match the brand's brass/ink/paper design,
   without overriding any WooCommerce template files.
   ========================================================================== */

.woocommerce, .woocommerce-page{
  font-family:'Inter',system-ui,-apple-system,Segoe UI,sans-serif;
  color:var(--ink);
}
.woocommerce h1,.woocommerce h2,.woocommerce h3{
  font-family:'Fraunces',Georgia,serif;font-weight:500;letter-spacing:-.01em;
}

/* ---------- shop archive filter/sort/result-count bar ---------- */
.woocommerce-ordering,.woocommerce-result-count{margin:0;font-size:.88rem;color:var(--ink-soft);}
.woocommerce-ordering select{
  border:1px solid var(--line-strong);background:var(--white);padding:.55em 1em;
  border-radius:var(--radius);font-family:'Inter',sans-serif;font-size:.88rem;
}
.woocommerce > .woocommerce-notices-wrapper,
.woocommerce-result-count,.woocommerce-ordering{max-width:var(--max);margin-left:auto;margin-right:auto;}

/* ---------- product grid (archive / related / upsells) ---------- */
.woocommerce ul.products{
  display:grid!important;grid-template-columns:repeat(3,1fr);gap:1px;
  background:var(--line);border:1px solid var(--line);list-style:none;margin:24px 0 0;padding:0;
}
.woocommerce ul.products li.product{
  background:var(--paper);display:flex;flex-direction:column;padding:0;margin:0;
}
.woocommerce ul.products li.product a img{
  width:100%;height:280px;object-fit:cover;margin:0;transition:transform .5s ease;
}
.woocommerce ul.products li.product:hover a img{transform:scale(1.04);}
.woocommerce ul.products li.product a{display:flex;flex-direction:column;flex:1;text-decoration:none;color:inherit;}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  order:2;margin:22px 22px 6px;font-size:1.15rem;font-family:'Fraunces',serif;font-weight:500;color:var(--ink);
}
.woocommerce ul.products li.product .price{
  order:3;margin:0 22px 14px;padding-top:14px;border-top:1px solid var(--line);
  font-family:'Fraunces',serif;font-size:1.25rem;font-weight:500;color:var(--ink);display:block;
}
.woocommerce ul.products li.product .price del{font-family:'Inter',sans-serif;font-size:.82rem;color:var(--ink-soft);opacity:1;font-weight:400;margin-right:8px;}
.woocommerce ul.products li.product .price ins{text-decoration:none;}
.woocommerce ul.products li.product .onsale{
  position:absolute;top:14px;left:14px;background:var(--green);color:var(--paper);
  font-size:.72rem;font-weight:600;padding:5px 10px;border-radius:0;min-height:0;min-width:0;line-height:1;
  margin:0;text-transform:none;
}
.woocommerce ul.products li.product .button{
  order:4;margin:0 22px 22px;width:calc(100% - 44px);justify-content:center;text-align:center;
  display:inline-flex;align-items:center;background:var(--ink);color:var(--paper);border:1px solid var(--ink);
  padding:.9em 1.6em;border-radius:var(--radius);font-weight:600;font-size:.95rem;
}
.woocommerce ul.products li.product .button:hover{background:var(--green);border-color:var(--green);}
.woocommerce ul.products li.product .button.added{display:inline-flex;}
.woocommerce ul.products li.product .added_to_cart{margin:0 22px 22px;font-size:.85rem;}
.woocommerce ul.products li.product .star-rating{order:5;margin:0 22px 14px;}
@media (max-width:980px){ .woocommerce ul.products{grid-template-columns:repeat(2,1fr);} }
@media (max-width:600px){ .woocommerce ul.products{grid-template-columns:1fr;} }

/* ---------- single product ---------- */
.woocommerce div.product{
  display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,72px);align-items:flex-start;
}
.woocommerce div.product .woocommerce-product-gallery{grid-column:1;}
.woocommerce div.product .summary{grid-column:2;}
.woocommerce div.product .woocommerce-product-gallery img{border:1px solid var(--line-strong);}
.woocommerce div.product .flex-control-thumbs li img{border:1px solid var(--line);}
.woocommerce div.product .flex-control-thumbs li img.flex-active{border-color:var(--brass-deep);border-width:2px;}

.woocommerce div.product .product_title{font-size:clamp(1.9rem,3.4vw,2.5rem);margin-bottom:.3em;}
.woocommerce div.product p.price,.woocommerce div.product span.price{
  font-family:'Fraunces',serif;font-size:2rem;font-weight:500;color:var(--ink);display:block;margin:14px 0 22px;
}
.woocommerce div.product p.price del{font-size:1rem;color:var(--ink-soft);}
.woocommerce div.product .stock{font-size:.85rem;color:var(--brass-deep);font-weight:600;}
.woocommerce div.product .stock.out-of-stock{color:#8c2f2f;}

.woocommerce div.product form.cart{margin:24px 0;}
.woocommerce div.product form.cart .button{
  background:var(--ink);color:var(--paper);border:1px solid var(--ink);padding:.9em 1.8em;
  border-radius:var(--radius);font-weight:600;font-size:.95rem;cursor:pointer;
}
.woocommerce div.product form.cart .button:hover{background:var(--green);border-color:var(--green);}
.woocommerce div.product form.cart .quantity input{
  border:1px solid var(--line-strong);padding:.85em 1em;font-family:'Inter',sans-serif;border-radius:var(--radius);
}

/* product tabs */
.woocommerce div.product .woocommerce-tabs{margin-top:60px;border-top:1px solid var(--line);}
.woocommerce div.product .woocommerce-tabs ul.tabs{
  display:flex;gap:32px;border-bottom:1px solid var(--line);list-style:none;margin:0;padding:0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li{margin:0;padding:0;}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  display:block;padding:18px 0;font-family:'Inter',sans-serif;font-size:.95rem;font-weight:600;
  color:var(--ink-soft);border-bottom:2px solid transparent;margin-bottom:-1px;text-decoration:none;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink);border-color:var(--brass-deep);}
.woocommerce div.product .woocommerce-tabs .panel{padding:28px 0;max-width:70ch;}

/* related products heading + grid reuse .products styling above */
.woocommerce .related.products,.woocommerce .upsells.products{margin-top:80px;}
.woocommerce .related.products > h2,.woocommerce .upsells.products > h2{
  font-size:clamp(1.9rem,3.4vw,2.75rem);border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:0;
}

@media (max-width:900px){
  .woocommerce div.product{grid-template-columns:1fr;}
}

/* ---------- breadcrumb ---------- */
.woocommerce-breadcrumb{
  margin-bottom:28px;font-size:.88rem;color:var(--ink-soft);
}
.woocommerce-breadcrumb a{color:var(--ink-soft);text-decoration:none;}
.woocommerce-breadcrumb a:hover{color:var(--brass-deep);}

/* ---------- cart & checkout ---------- */
.woocommerce table.shop_table{border:1px solid var(--line);border-collapse:collapse;width:100%;}
.woocommerce table.shop_table th{
  font-family:'Inter',sans-serif;font-size:.82rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;
  background:var(--paper-dim);border-bottom:1px solid var(--line);padding:14px;
}
.woocommerce table.shop_table td{border-bottom:1px solid var(--line);padding:14px;}
.woocommerce-cart table.cart img{border:1px solid var(--line-strong);width:80px;height:80px;object-fit:cover;}
.woocommerce #respond input#submit,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{
  background:var(--ink);color:var(--paper);border:1px solid var(--ink);padding:.9em 1.6em;
  border-radius:var(--radius);font-weight:600;font-size:.95rem;
}
.woocommerce #respond input#submit:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{
  background:var(--green);border-color:var(--green);color:var(--paper);
}
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{
  background:var(--brass);border-color:var(--brass);
}
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce input.button.alt:hover{
  background:var(--brass-deep);border-color:var(--brass-deep);
}
.woocommerce-checkout .form-row input.input-text,.woocommerce-checkout .form-row textarea,.woocommerce-checkout .form-row select{
  border:1px solid var(--line-strong);background:var(--white);padding:.85em 1em;font-family:'Inter',sans-serif;
  font-size:.95rem;border-radius:var(--radius);color:var(--ink);width:100%;
}
.woocommerce-checkout #order_review{border:1px solid var(--line);background:var(--paper-dim);padding:clamp(24px,3vw,32px);}

/* ---------- my account ---------- */
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);}
.woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--line);}
.woocommerce-MyAccount-navigation a{display:block;padding:14px 0;text-decoration:none;color:var(--ink);}
.woocommerce-MyAccount-navigation li.is-active a{color:var(--brass-deep);font-weight:600;}

/* ---------- notices ---------- */
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  border-top:2px solid var(--brass);background:var(--paper-dim);padding:16px 20px;list-style:none;
}
.woocommerce-error{border-top-color:#8c2f2f;}
