/* WooCommerce-specific styling — relies on tokens defined in style.css */

.woocommerce-page .site-main{ max-width:var(--container); margin:0 auto; padding:0 var(--gutter) 96px; }

/* Archive / shop header */
.shop-header{ padding:40px 0 32px; }
.shop-header .breadcrumb{ margin-bottom:16px; }
.shop-header__row{ display:flex; justify-content:space-between; align-items:flex-end; gap:16px; flex-wrap:wrap; }
.woocommerce-products-header__title.page-title{
  font-family:var(--font-display);
  font-weight:500;
  font-size:clamp(30px, 4vw, 44px);
  margin:0;
}
.shop-header .result-count{ font-size:13px; color:var(--navy-a55); margin:0; }

.woocommerce-result-count,
.woocommerce-ordering{
  font-size:13px;
  color:var(--navy);
}
.woocommerce-ordering select{
  border:none;
  border-bottom:1px solid rgba(20,43,74,0.3);
  padding:0 0 6px;
  background:transparent;
}
.woocommerce-notices-wrapper{ max-width:var(--container); margin:24px auto 0; padding:0 var(--gutter); }
.woocommerce-message, .woocommerce-info, .woocommerce-error{
  background:#fff;
  border:1px solid var(--gray);
  border-left:3px solid var(--blue);
  padding:16px 20px;
  font-size:14px;
  list-style:none;
}
.woocommerce-error{ border-left-color:var(--red); }

/* Layout: sidebar + grid */
.shop-layout{ display:flex; gap:56px; align-items:flex-start; }
.shop-layout__sidebar{ width:240px; flex-shrink:0; }
.shop-layout__main{ flex:1; min-width:0; }
@media (max-width:900px){
  .shop-layout{ flex-direction:column; }
  .shop-layout__sidebar{ width:100%; }
}

/* Widget styling (Filter by price / attribute / rating) */
.widget{ margin-bottom:36px; }
.widget-title{
  font-size:11px; letter-spacing:1.5px; text-transform:uppercase; color:var(--navy-a55);
  margin:0 0 18px; font-weight:600;
}
.widget ul{ display:flex; flex-direction:column; gap:12px; }
.widget ul li{ font-size:13px; }
.widget ul li a{ color:var(--navy); }
.widget_layered_nav_filters ul{ flex-direction:row; flex-wrap:wrap; gap:10px; }
.widget_layered_nav_filters ul li a{
  border:1px solid var(--gray); border-radius:999px; padding:6px 14px; font-size:12px;
}
.widget_price_filter .price_slider{ margin-bottom:16px; }
.widget_price_filter .price_slider_amount{ font-size:12px; color:var(--navy-a60); }
.widget_price_filter .price_slider_amount button{
  float:right;
  border:1px solid var(--navy); border-radius:999px; padding:6px 16px;
  font-size:11px; text-transform:uppercase; letter-spacing:1px;
}
.widget_price_filter .ui-slider{ background:var(--gray); height:2px; border:none; }
.widget_price_filter .ui-slider .ui-slider-range{ background:var(--navy); }
.widget_price_filter .ui-slider .ui-slider-handle{
  width:12px; height:12px; border-radius:50%; background:var(--navy); border:none; top:-5px;
}
.reset_variations, .woocommerce-widget-layered-nav-list__item--chosen a{ color:var(--red); }

/* Pagination */
.woocommerce-pagination ul.page-numbers{
  display:flex; justify-content:center; align-items:center; gap:22px; list-style:none;
  margin-top:56px;
}
.woocommerce-pagination .page-numbers{ font-size:13px; color:var(--navy); opacity:0.6; }
.woocommerce-pagination .page-numbers.current{ opacity:1; font-weight:700; border-bottom:1.5px solid var(--navy); padding-bottom:2px; }

/* Single product */
.product .summary{ padding-left:8px; }
.product .product_title{
  font-family:var(--font-display); font-weight:500; font-size:32px; margin:0 0 12px;
}
.product p.price{ font-size:20px; font-weight:600; color:var(--navy); margin-bottom:20px; }
.product .woocommerce-product-details__short-description{ color:var(--navy-a82); line-height:1.8; margin-bottom:24px; }
.product form.cart{ display:flex; gap:16px; align-items:center; flex-wrap:wrap; }
.product .quantity input{
  width:64px; text-align:center; border:1px solid var(--gray); padding:14px 8px; background:#fff;
}
.single_add_to_cart_button{
  background:var(--red) !important; color:#fff !important; border:none !important;
  border-radius:999px !important; padding:16px 40px !important;
  font-size:12px !important; font-weight:600 !important; letter-spacing:1.5px !important; text-transform:uppercase !important;
}
.single_add_to_cart_button:hover{ background:#c22f28 !important; }
.woocommerce-tabs ul.tabs{ display:flex; gap:32px; border-bottom:1px solid var(--gray); margin-bottom:24px; list-style:none; padding:0; }
.woocommerce-tabs ul.tabs li{ padding:0; }
.woocommerce-tabs ul.tabs li a{ font-size:12px; text-transform:uppercase; letter-spacing:1px; padding-bottom:12px; display:inline-block; }
.woocommerce-tabs ul.tabs li.active a{ border-bottom:2px solid var(--navy); }
.related.products{ margin-top:96px; }
.related.products h2{ font-family:var(--font-display); font-weight:500; font-size:28px; margin-bottom:32px; }

/* Cart */
table.shop_table{ width:100%; border-collapse:collapse; }
table.shop_table th{ text-align:left; font-size:11px; text-transform:uppercase; letter-spacing:1px; color:var(--navy-a55); padding:0 0 16px; border-bottom:1px solid var(--gray); }
table.shop_table td{ padding:20px 12px 20px 0; border-bottom:1px solid var(--gray); font-size:14px; }
.product-remove a{ color:var(--red); font-size:18px; }
.cart-collaterals .cart_totals{ background:#fff; border:1px solid var(--gray); padding:28px; max-width:400px; margin-left:auto; }
.cart_totals h2{ font-family:var(--font-display); font-size:22px; font-weight:500; margin-bottom:16px; }
.checkout-button, button.checkout{
  background:var(--navy) !important; color:#fff !important; border:none !important;
  border-radius:999px !important; padding:16px 32px !important; width:100%;
  font-size:12px !important; font-weight:600 !important; letter-spacing:1.5px !important; text-transform:uppercase !important;
}

/* Checkout */
#customer_details .col-1, #customer_details .col-2{ width:48%; }
.form-row label{ font-size:12px; text-transform:uppercase; letter-spacing:0.5px; color:var(--navy-a60); margin-bottom:6px; display:block; }
.form-row input, .form-row select, .form-row textarea{
  width:100%; border:1px solid var(--gray); background:#fff; padding:12px 14px;
}
#order_review{ background:#fff; border:1px solid var(--gray); padding:28px; }

/* My account */
.woocommerce-MyAccount-navigation ul{ display:flex; flex-direction:column; gap:4px; }
.woocommerce-MyAccount-navigation a{ display:block; padding:10px 0; font-size:14px; border-bottom:1px solid var(--gray); }
.woocommerce-MyAccount-navigation .is-active a{ color:var(--red); font-weight:600; }
.woocommerce-MyAccount-content{ margin-top:32px; }
.woocommerce-form-row input{ border:1px solid var(--gray); padding:12px 14px; width:100%; }
