/* ============================================
   NOVOTTI — WooCommerce Shop Styles
   Applies NOVOTTI design to /boutique/ page
   ============================================ */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400&family=Jost:wght@300;400;500&display=swap');

:root {
  --dark: #1a1815;
  --gold: #9c8a72;
  --cream: #faf9f7;
  --sand: #f4f1ec;
  --border: #e8e4de;
  --accent: #d4b896;
  --text: #2a2520;
}

/* GLOBAL */
body {
  font-family: 'Jost', sans-serif !important;
  background: var(--cream) !important;
  color: var(--text) !important;
}

/* HIDE DEFAULT WORDPRESS NAV & USE NOVOTTI STYLE */
.wp-block-navigation,
.wp-block-site-title {
  font-family: 'Cormorant Garamond', serif !important;
}

/* SHOP PAGE TITLE */
.woocommerce-products-header__title,
h1.page-title,
.woocommerce-page h1 {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 48px !important;
  font-weight: 300 !important;
  letter-spacing: 3px !important;
  color: var(--dark) !important;
  text-align: center !important;
  padding: 48px 0 8px !important;
  border-bottom: none !important;
}

/* RESULTS COUNT */
.woocommerce-result-count {
  font-size: 12px !important;
  color: #aaa !important;
  letter-spacing: 0.5px !important;
  font-family: 'Jost', sans-serif !important;
}

/* ORDERING DROPDOWN */
.woocommerce-ordering select {
  font-family: 'Jost', sans-serif !important;
  font-size: 12px !important;
  border: 1px solid var(--border) !important;
  border-radius: 0 !important;
  padding: 8px 14px !important;
  color: var(--text) !important;
  background: #fff !important;
}

/* PRODUCT GRID */
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
  margin: 32px 0 !important;
}

/* PRODUCT CARD */
.woocommerce ul.products li.product {
  background: #fff !important;
  border: 1px solid var(--border) !important;
  padding: 0 !important;
  margin: 0 !important;
  position: relative !important;
  transition: transform 0.25s, box-shadow 0.25s !important;
  float: none !important;
  width: 100% !important;
}

.woocommerce ul.products li.product:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 40px rgba(0,0,0,0.08) !important;
}

/* PRODUCT IMAGE */
.woocommerce ul.products li.product a img {
  width: 100% !important;
  aspect-ratio: 2/3 !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  transition: transform 0.4s !important;
}

.woocommerce ul.products li.product:hover a img {
  transform: scale(1.04) !important;
}

/* PRODUCT IMAGE WRAPPER */
.woocommerce ul.products li.product .woocommerce-loop-product__link {
  display: block !important;
  overflow: hidden !important;
}

/* PRODUCT TITLE */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  letter-spacing: 0.5px !important;
  color: var(--dark) !important;
  padding: 14px 14px 4px !important;
  margin: 0 !important;
}

/* PRODUCT PRICE */
.woocommerce ul.products li.product .price {
  font-family: 'Jost', sans-serif !important;
  font-size: 14px !important;
  color: var(--gold) !important;
  padding: 0 14px 8px !important;
  display: block !important;
}

/* ADD TO CART BUTTON */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button {
  display: block !important;
  width: calc(100% - 28px) !important;
  margin: 8px 14px 14px !important;
  background: var(--dark) !important;
  color: #fff !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 10px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  padding: 12px !important;
  text-align: center !important;
  border: none !important;
  border-radius: 0 !important;
  cursor: pointer !important;
  transition: background 0.2s !important;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product .add_to_cart_button:hover {
  background: var(--gold) !important;
  color: #fff !important;
}

/* SALE BADGE */
.woocommerce ul.products li.product .onsale {
  background: var(--gold) !important;
  border-radius: 0 !important;
  font-size: 9px !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  padding: 5px 10px !important;
  min-height: unset !important;
  min-width: unset !important;
  line-height: 1.5 !important;
  top: 12px !important;
  left: 12px !important;
}

/* BREADCRUMB */
.woocommerce .woocommerce-breadcrumb {
  font-size: 11px !important;
  color: #aaa !important;
  letter-spacing: 0.5px !important;
  font-family: 'Jost', sans-serif !important;
  padding: 16px 0 0 !important;
  background: transparent !important;
}

/* SINGLE PRODUCT PAGE */
.woocommerce div.product .product_title {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 40px !important;
  font-weight: 300 !important;
  letter-spacing: 1.5px !important;
  color: var(--dark) !important;
  margin-bottom: 8px !important;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 32px !important;
  color: var(--dark) !important;
  font-weight: 300 !important;
}

.woocommerce div.product .woocommerce-product-details__short-description {
  font-size: 14px !important;
  color: #777 !important;
  line-height: 1.8 !important;
  border-top: 1px solid var(--border) !important;
  padding-top: 16px !important;
  margin-top: 16px !important;
}

/* SINGLE PRODUCT ADD TO CART */
.woocommerce div.product form.cart .single_add_to_cart_button {
  background: var(--dark) !important;
  color: #fff !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  padding: 16px 40px !important;
  border: none !important;
  transition: background 0.2s !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button:hover {
  background: var(--gold) !important;
}

/* QTY INPUT */
.woocommerce div.product form.cart .qty {
  border: 1px solid var(--border) !important;
  border-radius: 0 !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 14px !important;
  padding: 12px 16px !important;
  width: 80px !important;
}

/* PRODUCT TABS */
.woocommerce div.product .woocommerce-tabs ul.tabs {
  border-bottom: 2px solid var(--border) !important;
  padding: 0 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: #888 !important;
  padding: 12px 20px !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
  color: var(--dark) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active::after {
  background: var(--gold) !important;
  bottom: -2px !important;
}

/* CART PAGE */
.woocommerce-cart .cart-collaterals h2,
.woocommerce-cart h2 {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 28px !important;
  font-weight: 300 !important;
  letter-spacing: 1px !important;
  color: var(--dark) !important;
}

.woocommerce table.shop_table {
  border: 1px solid var(--border) !important;
  border-radius: 0 !important;
}

.woocommerce table.shop_table th {
  font-family: 'Jost', sans-serif !important;
  font-size: 10px !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: #aaa !important;
  font-weight: 400 !important;
  background: var(--sand) !important;
  border: none !important;
  padding: 14px 16px !important;
}

.woocommerce table.shop_table td {
  font-family: 'Jost', sans-serif !important;
  font-size: 14px !important;
  border-color: var(--border) !important;
  padding: 16px !important;
}

/* CART TOTALS */
.woocommerce .cart-collaterals .cart_totals .order-total .amount {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 28px !important;
  color: var(--dark) !important;
}

/* CHECKOUT BUTTON */
.woocommerce a.checkout-button,
.woocommerce .wc-proceed-to-checkout a.checkout-button {
  background: var(--dark) !important;
  color: #fff !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  padding: 16px 32px !important;
  display: block !important;
  text-align: center !important;
  transition: background 0.2s !important;
}

.woocommerce a.checkout-button:hover {
  background: var(--gold) !important;
  color: #fff !important;
}

/* PAGINATION */
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  font-family: 'Jost', sans-serif !important;
  font-size: 12px !important;
  color: #666 !important;
  border: 1px solid var(--border) !important;
  border-radius: 0 !important;
  padding: 8px 14px !important;
}

.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
  background: var(--dark) !important;
  color: #fff !important;
  border-color: var(--dark) !important;
}

/* NOTICES */
.woocommerce-message,
.woocommerce-info {
  background: var(--sand) !important;
  border-top-color: var(--gold) !important;
  color: var(--text) !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 13px !important;
  border-radius: 0 !important;
}

/* CHECKOUT FORM */
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout #order_review_heading {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 24px !important;
  font-weight: 300 !important;
  letter-spacing: 1px !important;
  color: var(--dark) !important;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
  border: 1px solid var(--border) !important;
  border-radius: 0 !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 13px !important;
  padding: 12px 14px !important;
  color: var(--text) !important;
}

.woocommerce form .form-row input.input-text:focus {
  border-color: var(--gold) !important;
  box-shadow: none !important;
  outline: none !important;
}

.woocommerce form .form-row label {
  font-family: 'Jost', sans-serif !important;
  font-size: 10px !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  color: #888 !important;
  font-weight: 400 !important;
}

/* PLACE ORDER BUTTON */
#place_order {
  background: var(--dark) !important;
  color: #fff !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  padding: 16px 40px !important;
  border: none !important;
  width: 100% !important;
  cursor: pointer !important;
  transition: background 0.2s !important;
}

#place_order:hover {
  background: var(--gold) !important;
}

/* MY ACCOUNT */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none !important;
  padding: 0 !important;
  background: #fff !important;
  border: 1px solid var(--border) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
  display: block !important;
  padding: 13px 18px !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 12px !important;
  color: #555 !important;
  border-bottom: 1px solid var(--border) !important;
  letter-spacing: 0.3px !important;
  transition: background 0.15s !important;
  text-decoration: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
  background: var(--sand) !important;
  color: var(--dark) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
  background: var(--sand) !important;
  color: var(--dark) !important;
  font-weight: 500 !important;
  border-left: 3px solid var(--gold) !important;
}

/* RESPONSIVE */
@media (max-width: 960px) {
  .woocommerce ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 600px) {
  .woocommerce ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
  }
}
