/* ============================================================
   Truvya — WooCommerce skin. Re-styles default Woo markup into
   the brand (cream + forest + gold, Fraunces + Jost, rounded).
   ============================================================ */
.woo-page{padding:42px 0 80px;background:var(--cream)}
.woo-shell{max-width:var(--container)}
.woo-container{margin-top:6px}

/* Page heading (shop / cart / checkout / account) */
.woocommerce-products-header__title,
.woocommerce .woocommerce-products-header__title,
.woo-page .entry-title,
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce h1, .woo-page h1 {
  font-family:'Fraunces',Georgia,serif !important; color:var(--forest) !important;
  font-weight:400 !important; letter-spacing:-.01em;
}
.woocommerce-products-header{margin-bottom:26px}
.term-description,.woocommerce-result-count{color:var(--ink-soft)}

/* ---------- Buttons ---------- */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .woocommerce .button, .woocommerce-page .button,
.wc-block-components-button {
  background:var(--forest) !important; color:#F5F1E6 !important; border:1.5px solid transparent !important;
  border-radius:100px !important; padding:14px 28px !important; font-family:'Jost',sans-serif !important;
  font-weight:500 !important; font-size:14.5px !important; letter-spacing:.02em; cursor:pointer; transition:.3s ease !important;
  text-transform:none !important; line-height:1.2 !important;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce #respond input#submit:hover, .woocommerce .button:hover, .wc-block-components-button:hover {
  background:var(--forest-2) !important; transform:translateY(-2px); box-shadow:var(--shadow-sm);
}
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,
.woocommerce #place_order, .woocommerce-cart .wc-proceed-to-checkout .checkout-button {
  background:var(--gold) !important; color:#231d10 !important;
}
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce #place_order:hover,
.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover { background:var(--gold-2) !important; }
.woocommerce .button.add_to_cart_button, .woocommerce .added_to_cart { width:100%; text-align:center; justify-content:center; }

/* ---------- Prices ---------- */
.woocommerce .price, .woocommerce-Price-amount, .woocommerce div.product p.price,
.woocommerce div.product span.price { color:var(--forest) !important; font-family:'Fraunces',serif; }
.woocommerce div.product p.price, .woocommerce div.product span.price { font-size:30px !important; }
.woocommerce del { color:var(--ink-soft); opacity:.7; }
.woocommerce ins { text-decoration:none; }

/* ---------- Shop loop / product cards ---------- */
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
  background:var(--white); border:1px solid var(--line); border-radius:var(--radius);
  padding:16px; text-align:center; transition:.35s; box-shadow:var(--shadow-sm);
}
.woocommerce ul.products li.product:hover { transform:translateY(-6px); box-shadow:var(--shadow); }
.woocommerce ul.products li.product img { border-radius:12px; margin-bottom:14px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family:'Fraunces',serif; font-size:19px; color:var(--forest); padding-bottom:6px;
}
.woocommerce ul.products li.product .price { display:block; margin-bottom:10px; }
.woocommerce span.onsale {
  background:var(--moss) !important; color:#F1EEDF !important; border-radius:100px; font-family:'Jost';
  font-weight:600; letter-spacing:.06em; min-height:auto; min-width:auto; padding:6px 12px; top:14px; left:14px;
}

/* ---------- Single product ---------- */
.single-product div.product .product_title { font-family:'Fraunces',serif; color:var(--forest); font-size:clamp(28px,3.6vw,44px); margin-bottom:14px; }
.single-product div.product { display:grid; grid-template-columns:1fr 1fr; gap:54px; align-items:flex-start; }
.single-product div.product .woocommerce-product-gallery { margin-bottom:0; }
.single-product div.product .woocommerce-product-gallery__image img { border-radius:var(--radius); }
.single-product div.product .summary { margin:0 !important; }
.single-product .woocommerce-product-rating { margin-bottom:18px; }
.single-product .star-rating span::before, .woocommerce .star-rating span::before { color:var(--gold); }
.single-product div.product form.cart { margin:24px 0; }
.single-product div.product form.cart .quantity input.qty {
  border:1.5px solid var(--forest); border-radius:100px; padding:12px; width:72px; text-align:center; font-family:'Jost';
}
.woocommerce-tabs { grid-column:1 / -1; margin-top:30px; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background:var(--cream-2); border-radius:100px 100px 0 0; border:1px solid var(--line); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background:var(--white); border-bottom-color:var(--white); }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { font-family:'Jost'; color:var(--forest); }
.related.products, .up-sells { grid-column:1 / -1; }
.related.products > h2, .cross-sells > h2, .up-sells > h2 { font-family:'Fraunces'; color:var(--forest); font-size:28px; }

/* ---------- Tables (cart) ---------- */
.woocommerce table.shop_table {
  border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; background:var(--white);
}
.woocommerce table.shop_table th { font-family:'Jost'; color:var(--ink); background:var(--cream-2); }
.woocommerce-cart table.cart img { width:72px; border-radius:10px; }
.woocommerce .cart_totals h2, .woocommerce-checkout h3, .woocommerce-checkout #order_review_heading {
  font-family:'Fraunces'; color:var(--forest);
}
.cart-collaterals .cart_totals, .woocommerce-checkout #order_review {
  background:var(--white); border:1px solid var(--line); border-radius:var(--radius); padding:24px;
}

/* ---------- Forms / inputs ---------- */
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea,
.woocommerce-page form .form-row input.input-text, .woocommerce .select2-container .select2-selection,
.woocommerce form .form-row select, .woocommerce #customer_details input, .woocommerce input[type="text"],
.woocommerce input[type="email"], .woocommerce input[type="tel"], .woocommerce input[type="password"] {
  border:1.5px solid var(--line) !important; border-radius:12px !important; padding:13px 16px !important;
  font-family:'Jost' !important; background:var(--white) !important; font-size:15px !important; min-height:48px;
}
.woocommerce form .form-row input.input-text:focus, .woocommerce form .form-row textarea:focus {
  border-color:var(--gold) !important; outline:none !important; box-shadow:0 0 0 3px rgba(184,146,75,.12);
}
.woocommerce form .form-row label { font-family:'Jost'; font-weight:500; color:var(--ink); }

/* ---------- Notices ---------- */
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-noreviews {
  border-top-color:var(--gold) !important; border-radius:12px; background:var(--cream-2);
}
.woocommerce-message::before, .woocommerce-info::before { color:var(--gold); }

/* ---------- My Account ---------- */
.woocommerce-account .woocommerce-MyAccount-navigation ul { border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; background:var(--white); }
.woocommerce-account .woocommerce-MyAccount-navigation li { border-bottom:1px solid var(--line); }
.woocommerce-account .woocommerce-MyAccount-navigation li a { padding:14px 18px; display:block; font-family:'Jost'; color:var(--ink); }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { background:var(--forest); color:#F5F1E6; }

/* ---------- Mobile ---------- */
@media(max-width:980px){
  .single-product div.product { grid-template-columns:1fr; gap:28px; }
  .woocommerce-cart .cart-collaterals .cart_totals, .woocommerce .cart-collaterals { width:100% !important; float:none; }
}
@media(max-width:600px){
  .woo-page{padding:30px 0 60px}
  .woocommerce ul.products[class*="columns-"] li.product, .woocommerce-page ul.products[class*="columns-"] li.product { width:48% !important; }
  .woocommerce div.product p.price, .woocommerce div.product span.price { font-size:26px !important; }
}
