/*
Theme Name: Ashe Storefront Child
Template: storefront
Description: Clean child theme stylesheet for Ashe Hair Design, optimised for Storefront + WooCommerce + mobile.
Author: OpenAI
Version: 1.0.0
*/

/* =========================================================
   1. THEME TOKENS
   ========================================================= */

:root {
  --ashe-primary-900: #08172b;
  --ashe-primary-800: #0b1f3a;
  --ashe-primary-700: #132b4f;
  --ashe-primary-600: #1d3a63;

  --ashe-accent-500: #7a94a6;
  --ashe-accent-400: #93aabb;
  --ashe-accent-300: #b7c6d2;

  --ashe-platinum-500: #d9e1e8;
  --ashe-platinum-400: #e6ecf1;
  --ashe-platinum-300: #eef3f7;
  --ashe-platinum-200: #f4f7fa;
  --ashe-platinum-100: #f7f9fb;

  --ashe-neutral-900: #1a1a1a;
  --ashe-neutral-800: #2b2f33;
  --ashe-neutral-700: #4b5560;
  --ashe-neutral-600: #6b7280;
  --ashe-neutral-500: #8b93a1;
  --ashe-neutral-300: #d7dde4;
  --ashe-neutral-200: #e8edf2;
  --ashe-white: #ffffff;

  --ashe-success: #2f6d57;
  --ashe-warning: #a1731f;
  --ashe-error: #a33b3b;
  --ashe-info: #426a8c;

  --ashe-bg-body: var(--ashe-platinum-100);
  --ashe-bg-surface: var(--ashe-white);
  --ashe-bg-soft: var(--ashe-platinum-200);
  --ashe-bg-soft-2: var(--ashe-platinum-300);
  --ashe-bg-dark: var(--ashe-primary-800);
  --ashe-bg-dark-2: var(--ashe-primary-700);

  --ashe-text-primary: var(--ashe-neutral-900);
  --ashe-text-secondary: var(--ashe-neutral-600);
  --ashe-text-muted: var(--ashe-neutral-500);
  --ashe-text-inverse: var(--ashe-white);

  --ashe-border-soft: rgba(11, 31, 58, 0.08);
  --ashe-border-default: rgba(11, 31, 58, 0.12);
  --ashe-border-strong: rgba(11, 31, 58, 0.18);
  --ashe-border-inverse: rgba(255, 255, 255, 0.16);

  --ashe-shadow-xs: 0 2px 8px rgba(11, 31, 58, 0.05);
  --ashe-shadow-sm: 0 8px 24px rgba(11, 31, 58, 0.08);
  --ashe-shadow-md: 0 16px 40px rgba(11, 31, 58, 0.12);
  --ashe-shadow-lg: 0 24px 54px rgba(11, 31, 58, 0.16);

  --ashe-radius-sm: 0.5rem;
  --ashe-radius-md: 0.875rem;
  --ashe-radius-lg: 1.25rem;
  --ashe-radius-xl: 1.75rem;
  --ashe-radius-pill: 999px;

  --ashe-space-1: 0.25rem;
  --ashe-space-2: 0.5rem;
  --ashe-space-3: 0.75rem;
  --ashe-space-4: 1rem;
  --ashe-space-5: 1.25rem;
  --ashe-space-6: 1.5rem;
  --ashe-space-8: 2rem;
  --ashe-space-10: 2.5rem;
  --ashe-space-12: 3rem;
  --ashe-space-16: 4rem;

  --ashe-font-heading: "Cormorant Garamond", "Times New Roman", serif;
  --ashe-font-body: "Montserrat", "Helvetica Neue", Arial, sans-serif;

  --ashe-transition: 220ms cubic-bezier(0.2, 0.8, 0.2, 1);
  --ashe-header-gradient: linear-gradient(180deg, var(--ashe-primary-900) 0%, var(--ashe-primary-800) 55%, var(--ashe-primary-700) 100%);
  --ashe-soft-gradient: linear-gradient(180deg, var(--ashe-platinum-300) 0%, var(--ashe-platinum-100) 100%);
}

/* =========================================================
   2. RESET / BASE
   ========================================================= */

html {
  scroll-behavior: smooth;
}

body {
  background: var(--ashe-bg-body);
  color: var(--ashe-text-primary);
  font-family: var(--ashe-font-body);
  line-height: 1.65;
}

body,
button,
input,
textarea,
select {
  font-family: var(--ashe-font-body);
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

img {
  max-width: 100%;
  height: auto;
  border-radius: var(--ashe-radius-md);
}

.site {
  overflow-x: clip;
}

a {
  color: var(--ashe-primary-700);
  text-decoration: none;
  transition: color var(--ashe-transition), opacity var(--ashe-transition);
}

a:hover,
a:focus {
  color: var(--ashe-primary-800);
}

h1,
h2,
h3,
h4,
h5,
h6,
.site-title,
.entry-title,
.woocommerce-products-header__title,
.product_title {
  font-family: var(--ashe-font-heading);
  color: var(--ashe-primary-800);
  line-height: 1.15;
  letter-spacing: -0.02em;
}

p,
ul,
ol,
li,
label,
address {
  color: var(--ashe-text-secondary);
}

:focus-visible {
  outline: 2px solid var(--ashe-accent-500);
  outline-offset: 2px;
}

.col-full {
  max-width: 1280px;
  padding-left: clamp(1rem, 3vw, 2rem);
  padding-right: clamp(1rem, 3vw, 2rem);
}

.storefront-breadcrumb,
.woocommerce-breadcrumb {
  color: var(--ashe-text-muted);
  font-size: 0.95rem;
  margin-bottom: var(--ashe-space-5);
}

.storefront-breadcrumb a,
.woocommerce-breadcrumb a {
  color: var(--ashe-text-secondary);
}

/* =========================================================
   3. HEADER / BRANDING / NAVIGATION
   ========================================================= */

.site-header {
  background: var(--ashe-header-gradient);
  border-bottom: 1px solid var(--ashe-border-inverse);
  box-shadow: var(--ashe-shadow-sm);
  color: var(--ashe-text-inverse);
  padding-top: 0;
}

.site-header .site-branding,
.site-header .site-logo-anchor,
.site-header .site-title,
.site-header .site-title a {
  color: var(--ashe-text-inverse) !important;
}

.site-branding {
  margin-bottom: 0;
}

.site-header .site-title {
  font-size: clamp(2rem, 4vw, 3.1rem);
  line-height: 1;
  margin-bottom: 0;
}

.site-header .site-description {
  color: rgba(255, 255, 255, 0.72);
}

.storefront-primary-navigation {
  background: transparent;
}

.main-navigation ul,
.secondary-navigation ul,
.handheld-navigation ul,
.nav-menu,
.menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

.main-navigation div.menu > ul > li > a,
.main-navigation ul.menu > li > a,
.secondary-navigation .menu a {
  color: rgba(255, 255, 255, 0.88);
  font-weight: 500;
  padding: 1rem 1rem;
  transition: color var(--ashe-transition), background var(--ashe-transition);
}

.main-navigation div.menu > ul > li:hover > a,
.main-navigation ul.menu > li:hover > a,
.main-navigation div.menu > ul > li.current-menu-item > a,
.main-navigation ul.menu > li.current-menu-item > a,
.main-navigation div.menu > ul > li.current_page_item > a,
.main-navigation ul.menu > li.current_page_item > a {
  color: var(--ashe-text-inverse);
  background: rgba(255, 255, 255, 0.05);
}

.main-navigation ul.menu ul.sub-menu,
.main-navigation ul.nav-menu ul.children {
  background: rgba(11, 31, 58, 0.97);
  border: 1px solid var(--ashe-border-inverse);
  border-radius: var(--ashe-radius-md);
  box-shadow: var(--ashe-shadow-md);
  padding: 0.5rem 0;
}

.main-navigation ul.menu ul.sub-menu li a,
.main-navigation ul.nav-menu ul.children li a {
  color: rgba(255, 255, 255, 0.9);
  padding: 0.75rem 1rem;
}

.main-navigation ul.menu ul.sub-menu li a:hover,
.main-navigation ul.nav-menu ul.children li a:hover {
  background: rgba(255, 255, 255, 0.06);
  color: #fff;
}

.site-header-cart .cart-contents {
  padding: 0.9rem 1rem;
  border-radius: var(--ashe-radius-md);
  color: rgba(255, 255, 255, 0.92);
}

.site-header-cart .cart-contents:hover {
  background: rgba(255, 255, 255, 0.06);
  color: #fff;
}

.site-header-cart .widget_shopping_cart,
.site-header-cart .widget_shopping_cart_content {
  background: rgba(11, 31, 58, 0.98);
  color: var(--ashe-text-inverse);
  border: 1px solid var(--ashe-border-inverse);
  border-radius: var(--ashe-radius-md);
  box-shadow: var(--ashe-shadow-md);
}

.site-header-cart .widget_shopping_cart a {
  color: rgba(255, 255, 255, 0.92);
}

.site-header-cart .widget_shopping_cart a:hover {
  color: #fff;
}

.site-header .widget_product_search input[type="search"],
.site-header .site-search input[type="search"] {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid var(--ashe-border-inverse);
  color: #fff;
  border-radius: var(--ashe-radius-pill);
}

.site-header .widget_product_search input[type="search"]::placeholder,
.site-header .site-search input[type="search"]::placeholder {
  color: rgba(255, 255, 255, 0.62);
}

/* =========================================================
   4. MOBILE MENU / HANDHELD NAV
   ========================================================= */

button.menu-toggle,
button.menu-toggle:hover,
button.menu-toggle:focus,
.main-navigation.toggled button.menu-toggle {
  background: rgba(255, 255, 255, 0.06);
  color: #fff;
  border: 1px solid var(--ashe-border-inverse);
  border-radius: var(--ashe-radius-md);
  box-shadow: none;
}

button.menu-toggle::before,
button.menu-toggle::after,
button.menu-toggle span::before {
  background: #fff;
}

.handheld-navigation,
.nav-menu-toggle,
.main-navigation.toggled .handheld-navigation,
.main-navigation.toggled div.menu {
  background: transparent;
}

.handheld-navigation ul.menu li a,
.handheld-navigation ul.nav-menu li a {
  color: rgba(255, 255, 255, 0.92);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  padding: 0.95rem 0;
  font-weight: 500;
}

.handheld-navigation ul.menu li a:hover,
.handheld-navigation ul.nav-menu li a:hover {
  color: #fff;
}

.handheld-navigation .dropdown-toggle {
  color: #fff;
}

@media (max-width: 767px) {
  .site-header {
    padding-bottom: 0.5rem;
  }

  .site-branding {
    width: 100%;
    text-align: center;
    margin-bottom: 0.75rem;
  }

  .site-header .site-title {
    font-size: 2.1rem;
  }

  .site-header .site-search,
  .site-header .secondary-navigation {
    display: none !important;
  }

  .main-navigation {
    clear: both;
  }

  .main-navigation.toggled {
    margin-top: 0.75rem;
    padding: 1rem;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid var(--ashe-border-inverse);
    border-radius: var(--ashe-radius-lg);
  }

  .storefront-handheld-footer-bar {
    background: var(--ashe-primary-800);
    box-shadow: 0 -6px 20px rgba(11, 31, 58, 0.2);
  }

  .storefront-handheld-footer-bar ul li > a,
  .storefront-handheld-footer-bar ul li > a::before {
    color: #fff;
  }
}

/* =========================================================
   5. BUTTONS
   ========================================================= */

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.button,
.added_to_cart,
.wp-element-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.single_add_to_cart_button {
  min-height: 3rem;
  border-radius: var(--ashe-radius-pill);
  padding: 0.9rem 1.4rem;
  font-weight: 600;
  border: 1px solid transparent;
  transition: background var(--ashe-transition), color var(--ashe-transition), border-color var(--ashe-transition), transform var(--ashe-transition), box-shadow var(--ashe-transition);
  box-shadow: var(--ashe-shadow-xs);
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
.button:hover,
.added_to_cart:hover,
.wp-element-button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.single_add_to_cart_button:hover {
  transform: translateY(-1px);
}

button,
input[type="submit"],
.button,
.wp-element-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.single_add_to_cart_button {
  background: var(--ashe-accent-500);
  color: #fff;
}

button:hover,
input[type="submit"]:hover,
.button:hover,
.wp-element-button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.single_add_to_cart_button:hover {
  background: #6a8699;
  color: #fff;
}

.button.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  background: var(--ashe-primary-800);
  color: #fff;
}

.button.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
  background: var(--ashe-primary-700);
  color: #fff;
}

/* =========================================================
   6. FORMS / INPUTS / SELECTS
   ========================================================= */

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
textarea,
select,
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
  background: rgba(255, 255, 255, 0.9);
  color: var(--ashe-text-primary);
  border: 1px solid var(--ashe-border-default);
  border-radius: var(--ashe-radius-md);
  box-shadow: var(--ashe-shadow-xs);
  min-height: 3rem;
  transition: border-color var(--ashe-transition), box-shadow var(--ashe-transition), background var(--ashe-transition);
}

textarea {
  min-height: 8rem;
  padding: 0.9rem 1rem;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
select {
  padding: 0 1rem;
}

input:focus,
textarea:focus,
select:focus,
.select2-container--default.select2-container--focus .select2-selection--multiple,
.select2-container--default.select2-container--open .select2-selection--single {
  border-color: var(--ashe-accent-500);
  box-shadow: 0 0 0 4px rgba(122, 148, 166, 0.12);
  outline: none;
}

label {
  color: var(--ashe-text-primary);
  font-weight: 600;
  margin-bottom: 0.35rem;
}

.required {
  color: var(--ashe-error);
}

/* =========================================================
   7. SURFACES / PANELS / DEFAULT CARDS
   ========================================================= */

.hentry,
.widget,
.storefront-full-width-content .woocommerce-products-header,
.woocommerce-MyAccount-content,
.woocommerce-cart-form,
.cart-collaterals .cart_totals,
.woocommerce-checkout-review-order,
.woocommerce-checkout-payment,
.woocommerce-form-coupon,
.woocommerce-form-login,
.woocommerce-form-register {
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid var(--ashe-border-soft);
  border-radius: var(--ashe-radius-lg);
  box-shadow: var(--ashe-shadow-sm);
}

.widget {
  padding: 1.25rem;
}

.page:not(.home) .site-main > .type-page,
.single-product .site-main > div.product,
.single .site-main > article {
  background: transparent;
  box-shadow: none;
  border: 0;
}

/* =========================================================
   8. SHOP / ARCHIVE / CATEGORY
   ========================================================= */

.woocommerce-products-header {
  background: var(--ashe-soft-gradient);
  padding: clamp(1.5rem, 4vw, 3rem);
  margin-bottom: 1.5rem;
}

.woocommerce-products-header__title.page-title {
  font-size: clamp(2rem, 4vw, 3.25rem);
  margin-bottom: 0.5rem;
}

.woocommerce-result-count,
.woocommerce-ordering {
  margin-bottom: 1.25rem;
}

.woocommerce-ordering select {
  min-width: 220px;
}

.woocommerce ul.products {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin: 0;
  padding: 0;
}

@media (min-width: 992px) {
  .woocommerce ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.5rem;
  }
}

.woocommerce ul.products li.product {
  margin: 0;
  padding: 1rem;
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid var(--ashe-border-soft);
  border-radius: var(--ashe-radius-lg);
  box-shadow: var(--ashe-shadow-sm);
  transition: transform var(--ashe-transition), box-shadow var(--ashe-transition);
}

.woocommerce ul.products li.product:hover {
  transform: translateY(-3px);
  box-shadow: var(--ashe-shadow-md);
}

.woocommerce ul.products li.product img {
  margin-bottom: 1rem;
  width: 100%;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2 {
  color: var(--ashe-primary-800);
  font-family: var(--ashe-font-heading);
  font-size: clamp(1.2rem, 2.3vw, 1.55rem);
  margin-bottom: 0.5rem;
}

.woocommerce ul.products li.product .price {
  color: var(--ashe-primary-800);
  font-weight: 700;
  margin-bottom: 0.8rem;
}

.woocommerce ul.products li.product .button {
  width: 100%;
  justify-content: center;
}

.woocommerce span.onsale {
  background: var(--ashe-primary-800);
  color: #fff;
  border-radius: var(--ashe-radius-pill);
  min-height: auto;
  min-width: auto;
  line-height: 1;
  padding: 0.5rem 0.7rem;
  font-size: 0.82rem;
  font-weight: 700;
  box-shadow: var(--ashe-shadow-xs);
}

/* =========================================================
   9. SINGLE PRODUCT
   ========================================================= */

.single-product div.product {
  display: grid;
  gap: 2rem;
}

@media (min-width: 992px) {
  .single-product div.product {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
    align-items: start;
  }
}

.single-product div.product .images,
.single-product div.product .summary {
  margin: 0;
}

.single-product div.product .images .woocommerce-product-gallery__wrapper,
.single-product div.product .summary {
  background: rgba(255, 255, 255, 0.84);
  border: 1px solid var(--ashe-border-soft);
  border-radius: var(--ashe-radius-xl);
  box-shadow: var(--ashe-shadow-sm);
  padding: clamp(1rem, 3vw, 2rem);
}

.single-product .product_title {
  font-size: clamp(2rem, 4vw, 3.3rem);
  margin-bottom: 0.5rem;
}

.single-product div.product p.price,
.single-product div.product span.price {
  color: var(--ashe-primary-800);
  font-size: clamp(1.35rem, 3vw, 2rem);
  font-weight: 700;
  margin-bottom: 1rem;
}

.single-product .woocommerce-product-details__short-description {
  margin-bottom: 1.25rem;
}

.single-product form.cart {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
}

.single-product form.cart .quantity {
  margin: 0 !important;
}

.quantity .qty {
  min-width: 4.5rem;
  text-align: center;
  border-radius: var(--ashe-radius-md);
}

.product_meta {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid var(--ashe-border-default);
  color: var(--ashe-text-secondary);
}

.woocommerce-product-gallery .flex-control-thumbs img {
  border: 1px solid transparent;
}

.woocommerce-product-gallery .flex-control-thumbs img.flex-active,
.woocommerce-product-gallery .flex-control-thumbs img:hover {
  border-color: var(--ashe-accent-500);
}

.woocommerce div.product .woocommerce-tabs {
  margin-top: 2rem;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  border-bottom: 1px solid var(--ashe-border-default);
  margin-bottom: 1.5rem;
  padding-left: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
  border: 0;
  background: transparent;
  margin: 0;
  padding: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  display: inline-block;
  padding: 0.9rem 1rem;
  color: var(--ashe-text-secondary);
  font-weight: 600;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
  color: var(--ashe-primary-800);
  border-bottom: 2px solid var(--ashe-accent-500);
}

.woocommerce-Tabs-panel,
.woocommerce-tabs .panel {
  background: rgba(255, 255, 255, 0.8);
  border: 1px solid var(--ashe-border-soft);
  border-radius: var(--ashe-radius-lg);
  padding: clamp(1rem, 3vw, 2rem);
  box-shadow: var(--ashe-shadow-sm);
}

.related.products,
.up-sells {
  margin-top: 3rem;
}

/* =========================================================
   10. CART
   ========================================================= */

.woocommerce-cart .entry-title,
.woocommerce-checkout .entry-title,
.woocommerce-account .entry-title {
  margin-bottom: 1.25rem;
}

.woocommerce-cart table.cart,
.woocommerce-checkout-review-order-table,
.shop_table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: rgba(255, 255, 255, 0.86);
  border: 1px solid var(--ashe-border-soft);
  border-radius: var(--ashe-radius-lg);
  overflow: hidden;
  box-shadow: var(--ashe-shadow-sm);
}

.shop_table th,
.shop_table td,
.woocommerce-cart table.cart td,
.woocommerce-cart table.cart th {
  padding: 1rem;
  border-color: var(--ashe-border-soft);
  vertical-align: middle;
}

.shop_table thead th {
  background: var(--ashe-platinum-300);
  color: var(--ashe-primary-800);
  font-weight: 700;
}

.woocommerce-cart table.cart img {
  width: 72px;
}

.woocommerce-cart table.cart td.actions {
  padding-top: 1rem;
  background: rgba(244, 247, 250, 0.7);
}

.woocommerce-cart .coupon {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.woocommerce-cart .coupon input.input-text {
  min-width: 220px;
}

.cart-collaterals .cart_totals {
  padding: 1.5rem;
}

.cart-collaterals .cart_totals h2 {
  font-size: 2rem;
  margin-bottom: 1rem;
}

.cart_totals table.shop_table {
  box-shadow: none;
  border: 0;
  background: transparent;
}

.cart_totals table.shop_table th,
.cart_totals table.shop_table td {
  padding-left: 0;
  padding-right: 0;
}

.woocommerce-cart .wc-proceed-to-checkout {
  margin: 1.25rem 0 0;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  width: 100%;
  text-align: center;
  min-height: 3.4rem;
  font-size: 1rem;
}

@media (max-width: 767px) {
  .woocommerce-cart table.cart td,
  .woocommerce-cart table.cart th {
    padding: 0.85rem;
  }

  .woocommerce-cart .coupon {
    display: block;
  }

  .woocommerce-cart .coupon input.input-text,
  .woocommerce-cart .coupon .button,
  .woocommerce-cart table.cart td.actions .button {
    width: 100%;
    margin: 0 0 0.75rem;
  }

  .cart-collaterals .cart_totals {
    margin-top: 1.5rem;
  }
}

/* =========================================================
   11. CHECKOUT
   ========================================================= */

.woocommerce-checkout .col2-set,
.woocommerce-checkout #customer_details {
  display: grid;
  gap: 1.5rem;
}

@media (min-width: 992px) {
  .woocommerce-checkout #customer_details {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: start;
  }
}

.woocommerce-billing-fields,
.woocommerce-shipping-fields,
.woocommerce-additional-fields,
.woocommerce-checkout-review-order,
.woocommerce-checkout-payment {
  background: rgba(255, 255, 255, 0.84);
  border: 1px solid var(--ashe-border-soft);
  border-radius: var(--ashe-radius-xl);
  box-shadow: var(--ashe-shadow-sm);
  padding: clamp(1rem, 3vw, 1.75rem);
}

.woocommerce-checkout h3,
.woocommerce-checkout h2,
#order_review_heading {
  font-size: clamp(1.6rem, 3vw, 2.25rem);
  margin-bottom: 1rem;
}

.woocommerce form .form-row {
  margin-bottom: 1rem;
}

.woocommerce form .form-row-first,
.woocommerce form .form-row-last {
  width: 100%;
}

@media (min-width: 768px) {
  .woocommerce form .form-row-first,
  .woocommerce form .form-row-last {
    width: 48.5%;
  }
}

.select2-container .select2-selection--single {
  height: 3rem;
  display: flex !important;
  align-items: center;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 3rem;
  color: var(--ashe-text-primary);
  padding-left: 1rem;
}

.select2-dropdown {
  border: 1px solid var(--ashe-border-default);
  border-radius: var(--ashe-radius-md);
  box-shadow: var(--ashe-shadow-sm);
  overflow: hidden;
}

#order_review_heading {
  margin-top: 1.5rem;
}

.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
  padding: 0.95rem 1rem;
}

.woocommerce-checkout-payment ul.payment_methods {
  border-bottom: 1px solid var(--ashe-border-soft);
  padding-bottom: 1rem;
}

.woocommerce-checkout-payment div.payment_box {
  background: var(--ashe-platinum-200);
  color: var(--ashe-text-secondary);
  border-radius: var(--ashe-radius-md);
}

.woocommerce-checkout-payment div.payment_box::before {
  border-bottom-color: var(--ashe-platinum-200);
}

.woocommerce-checkout #payment .place-order {
  margin-bottom: 0;
}

.woocommerce-checkout #payment #place_order {
  width: 100%;
  min-height: 3.4rem;
  font-size: 1rem;
  background: var(--ashe-primary-800);
}

.woocommerce-checkout #payment #place_order:hover {
  background: var(--ashe-primary-700);
}

/* WooCommerce Blocks */
.wc-block-components-order-summary,
.wc-block-components-totals-wrapper,
.wc-block-checkout__form,
.wc-block-components-panel {
  background: rgba(255, 255, 255, 0.84);
  border: 1px solid var(--ashe-border-soft);
  border-radius: var(--ashe-radius-lg);
  box-shadow: var(--ashe-shadow-sm);
}

.wc-block-components-button,
.wc-block-components-checkout-place-order-button {
  background: var(--ashe-primary-800) !important;
  color: #fff !important;
  border-radius: var(--ashe-radius-pill) !important;
}

.wc-block-components-button:hover,
.wc-block-components-checkout-place-order-button:hover {
  background: var(--ashe-primary-700) !important;
}

/* =========================================================
   12. ORDER CONFIRMATION / THANK YOU
   ========================================================= */

.woocommerce-order-received .woocommerce-order,
.woocommerce-order .woocommerce-notice,
.woocommerce-order-details,
.woocommerce-customer-details,
.woocommerce-order-overview,
.woocommerce-thankyou-order-received {
  background: rgba(255, 255, 255, 0.84);
  border: 1px solid var(--ashe-border-soft);
  border-radius: var(--ashe-radius-xl);
  box-shadow: var(--ashe-shadow-sm);
}

.woocommerce-order {
  padding: clamp(1rem, 3vw, 2rem);
}

.woocommerce-thankyou-order-received {
  display: block;
  margin-bottom: 1.25rem;
  padding: 1rem 1.25rem;
  background: rgba(47, 109, 87, 0.08);
  border: 1px solid rgba(47, 109, 87, 0.18);
  color: var(--ashe-success);
  font-weight: 700;
}

.woocommerce-order-overview {
  list-style: none;
  margin: 0 0 1.5rem;
  padding: 0;
  overflow: hidden;
}

.woocommerce-order-overview li {
  padding: 1rem 1.25rem;
  border-bottom: 1px solid var(--ashe-border-soft);
  color: var(--ashe-text-secondary);
}

.woocommerce-order-overview li:last-child {
  border-bottom: 0;
}

.woocommerce-order-overview li strong {
  display: block;
  margin-top: 0.25rem;
  color: var(--ashe-primary-800);
  font-size: 1rem;
}

.woocommerce-order-details,
.woocommerce-customer-details {
  margin-top: 1.5rem;
  padding: clamp(1rem, 3vw, 1.75rem);
}

.woocommerce-order-details .shop_table,
.woocommerce-customer-details address {
  margin-bottom: 0;
}

.woocommerce-customer-details address {
  background: var(--ashe-platinum-200);
  border: 1px solid var(--ashe-border-soft);
  border-radius: var(--ashe-radius-lg);
  padding: 1rem 1.25rem;
  color: var(--ashe-text-secondary);
  font-style: normal;
}

.woocommerce-order-details__title,
.woocommerce-column__title,
.woocommerce-order-details h2,
.woocommerce-customer-details h2 {
  margin-bottom: 1rem;
  color: var(--ashe-primary-800);
}

@media (max-width: 767px) {
  .woocommerce-order {
    padding: 1rem;
  }

  .woocommerce-order-overview li {
    padding: 0.9rem 1rem;
  }

  .woocommerce-order-details,
  .woocommerce-customer-details {
    padding: 1rem;
    border-radius: var(--ashe-radius-lg);
  }
}

/* =========================================================
   12. MY ACCOUNT
   ========================================================= */

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
  background: rgba(255, 255, 255, 0.84);
  border: 1px solid var(--ashe-border-soft);
  border-radius: var(--ashe-radius-xl);
  box-shadow: var(--ashe-shadow-sm);
  padding: 1.25rem;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
  margin-bottom: 0.3rem;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
  display: block;
  padding: 0.8rem 0.95rem;
  border-radius: var(--ashe-radius-md);
  color: var(--ashe-text-secondary);
  font-weight: 600;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
  background: var(--ashe-platinum-300);
  color: var(--ashe-primary-800);
}

@media (min-width: 768px) {
  .woocommerce-account .woocommerce {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 1.5rem;
  }
}

/* =========================================================
   13. NOTICES / ALERTS
   ========================================================= */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.demo_store,
.woocommerce-noreviews,
p.no-comments {
  border-radius: var(--ashe-radius-md);
  border: 1px solid var(--ashe-border-default);
  box-shadow: var(--ashe-shadow-xs);
  padding: 1rem 1rem 1rem 3rem;
}

.woocommerce-message {
  background: rgba(47, 109, 87, 0.08);
  color: var(--ashe-success);
}

.woocommerce-info {
  background: rgba(66, 106, 140, 0.08);
  color: var(--ashe-info);
}

.woocommerce-error {
  background: rgba(163, 59, 59, 0.08);
  color: var(--ashe-error);
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
  top: 1rem;
}

/* =========================================================
   14. SIDEBAR / WIDGETS
   ========================================================= */

.widget-area .widget {
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid var(--ashe-border-soft);
  border-radius: var(--ashe-radius-lg);
  box-shadow: var(--ashe-shadow-sm);
  margin-bottom: 1.25rem;
}

.widget .widget-title,
.widget .widgettitle {
  margin-bottom: 0.85rem;
  font-size: 1.6rem;
}

.widget_product_categories ul,
.widget_layered_nav ul,
.widget_recent_reviews ul {
  list-style: none;
  padding-left: 0;
}

.widget_product_categories li,
.widget_layered_nav li {
  padding: 0.35rem 0;
  border-bottom: 1px solid var(--ashe-border-soft);
}

.widget_product_search input[type="search"] {
  margin-bottom: 0.75rem;
}

/* =========================================================
   15. PAGINATION
   ========================================================= */

.pagination .page-numbers,
.woocommerce-pagination .page-numbers li .page-numbers {
  border-radius: var(--ashe-radius-pill);
  border: 1px solid var(--ashe-border-default);
  color: var(--ashe-text-secondary);
  background: rgba(255, 255, 255, 0.85);
}

.pagination .page-numbers.current,
.woocommerce-pagination .page-numbers li .page-numbers.current,
.pagination .page-numbers:hover,
.woocommerce-pagination .page-numbers li .page-numbers:hover {
  background: var(--ashe-primary-800);
  border-color: var(--ashe-primary-800);
  color: #fff;
}

/* =========================================================
   16. FOOTER
   ========================================================= */

.site-footer {
  background: var(--ashe-header-gradient);
  color: rgba(255, 255, 255, 0.84);
  border-top: 1px solid var(--ashe-border-inverse);
  padding: 3rem 0 1.5rem;
}

.site-footer a {
  color: rgba(255, 255, 255, 0.88);
}

.site-footer a:hover {
  color: #fff;
}

.site-footer .widget-title,
.footer-widgets .widget-title {
  color: #fff;
  font-family: var(--ashe-font-heading);
  font-size: 1.8rem;
}

.site-info {
  color: rgba(255, 255, 255, 0.68);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  padding-top: 1rem;
}

/* =========================================================
   17. MOBILE REFINEMENTS
   ========================================================= */

@media (max-width: 991px) {
  .right-sidebar .content-area,
  .left-sidebar .content-area,
  .right-sidebar .widget-area,
  .left-sidebar .widget-area {
    width: 100%;
    float: none;
  }

  .widget-area {
    margin-top: 2rem;
  }

  .single-product div.product .images .woocommerce-product-gallery__wrapper,
  .single-product div.product .summary,
  .woocommerce-billing-fields,
  .woocommerce-shipping-fields,
  .woocommerce-additional-fields,
  .woocommerce-checkout-review-order,
  .woocommerce-checkout-payment,
  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce-account .woocommerce-MyAccount-content {
    border-radius: var(--ashe-radius-lg);
    padding: 1rem;
  }
}

@media (max-width: 767px) {
  body {
    font-size: 15.5px;
  }

  .col-full {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  h1,
  .product_title,
  .woocommerce-products-header__title.page-title {
    line-height: 1.08;
  }

  .woocommerce ul.products {
    gap: 0.85rem;
  }

  .woocommerce ul.products li.product {
    padding: 0.85rem;
    border-radius: var(--ashe-radius-md);
  }

  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .woocommerce ul.products li.product h2 {
    font-size: 1.15rem;
  }

  .woocommerce ul.products li.product .price {
    font-size: 0.98rem;
  }

  .single-product form.cart {
    display: block;
  }

  .single-product form.cart .quantity,
  .single-product form.cart .single_add_to_cart_button {
    width: 100%;
    margin-bottom: 0.75rem;
  }

  .single-product form.cart .single_add_to_cart_button {
    min-height: 3.25rem;
  }

  .woocommerce form .form-row-first,
  .woocommerce form .form-row-last {
    width: 100%;
  }

  .shop_table_responsive tr td::before,
  .shop_table_responsive tr th::before {
    color: var(--ashe-primary-800);
    font-weight: 700;
  }

  .woocommerce-checkout-review-order-table,
  .shop_table,
  .woocommerce-cart-form,
  .cart-collaterals .cart_totals {
    border-radius: var(--ashe-radius-md);
  }
}

/* =========================================================
   18. BRAND / TAXONOMY GRID FIXES
   ========================================================= */

/* Fix narrow vertical product/category/brand cards caused by plugin/theme width conflicts */
.woocommerce ul.products,
ul.products,
.products {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

@media (min-width: 992px) {
  .woocommerce ul.products,
  ul.products,
  .products {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.5rem;
  }
}

.woocommerce ul.products li.product,
ul.products li.product,
.products li.product,
.tax-product_brand ul.products li.product,
.post-type-archive-product ul.products li.product {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
  clear: none !important;
  min-width: 0;
  max-width: none;
}

/* Force brand/category blocks to behave like cards */
.tax-product_brand .site-main ul.products li.product,
.tax-product_cat .site-main ul.products li.product,
.post-type-archive-product .site-main ul.products li.product {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  min-height: 100%;
}

/* Prevent titles from breaking one letter per line */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3,
ul.products li.product .woocommerce-loop-product__title,
ul.products li.product h2,
ul.products li.product h3,
.products li.product .woocommerce-loop-product__title,
.products li.product h2,
.products li.product h3 {
  white-space: normal;
  word-break: normal;
  overflow-wrap: break-word;
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  line-height: 1.2;
  max-width: 100%;
}

/* Product images */
.woocommerce ul.products li.product img,
ul.products li.product img,
.products li.product img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

/* Remove accidental extreme min-heights from archive cards */
.woocommerce ul.products li.product,
ul.products li.product,
.products li.product {
  min-height: 0 !important;
}

/* =========================================================
   19. SIDEBAR / LAYOUT CLEANUP
   ========================================================= */

/* Optional: full-width shop archives without sidebar */
.post-type-archive-product.right-sidebar .content-area,
.post-type-archive-product.left-sidebar .content-area,
.tax-product_cat.right-sidebar .content-area,
.tax-product_cat.left-sidebar .content-area,
.tax-product_brand.right-sidebar .content-area,
.tax-product_brand.left-sidebar .content-area {
  width: 100%;
  float: none;
}

.post-type-archive-product.right-sidebar .widget-area,
.post-type-archive-product.left-sidebar .widget-area,
.tax-product_cat.right-sidebar .widget-area,
.tax-product_cat.left-sidebar .widget-area,
.tax-product_brand.right-sidebar .widget-area,
.tax-product_brand.left-sidebar .widget-area {
  display: none;
}

/* =========================================================
   20. HEADER SEARCH / DUPLICATE ELEMENT TIDY-UP
   ========================================================= */

/* Hide duplicate search block if both Storefront and custom header search are showing */
.site-header .widget_product_search + .site-search,
.site-header .site-search + .widget_product_search {
  display: none !important;
}

/* Tidy header layout */
.site-header .col-full {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.site-header .site-branding {
  flex: 0 0 auto;
}

.site-header .site-search,
.site-header .widget_product_search {
  flex: 1 1 280px;
  max-width: 420px;
}

.site-header-cart,
.site-header .secondary-navigation,
.site-header .main-navigation {
  flex: 0 0 auto;
}

@media (max-width: 767px) {
  .site-header .col-full {
    display: block;
  }

  .site-header .widget_product_search,
  .site-header .site-search {
    max-width: none;
  }
}

/* =========================================================
   21. OPTIONAL HELPER CLASSES
   ========================================================= */

.ashe-panel {
  background: rgba(255, 255, 255, 0.84);
  border: 1px solid var(--ashe-border-soft);
  border-radius: var(--ashe-radius-xl);
  box-shadow: var(--ashe-shadow-sm);
  padding: clamp(1rem, 3vw, 2rem);
}

.ashe-section-soft {
  background: var(--ashe-soft-gradient);
}

.ashe-text-inverse {
  color: #fff !important;
}

.ashe-bg-dark {
  background: var(--ashe-primary-800);
}

.ashe-hide-mobile {
  display: none;
}

@media (min-width: 768px) {
  .ashe-hide-mobile {
    display: initial;
  }
}


/* =========================================================
   BY BRAND PAGE - PAGE SPECIFIC CLEANUP
   Replace .page-id-123 with the real page ID if needed
   ========================================================= */

/* Try slug first */
.page .entry-title,
.page-template-default .entry-title {
  margin-bottom: 1.5rem;
}

/* Full width layout for the By Brand page */
body.page .content-area {
  width: 100%;
  float: none;
}

/* Hide sidebar on By Brand page */
body.page .widget-area {
  display: none;
}

/* Remove Storefront default left/right widths */
body.page.right-sidebar .content-area,
body.page.left-sidebar .content-area,
body.page.right-sidebar .site-main,
body.page.left-sidebar .site-main {
  width: 100%;
  float: none;
  margin-right: 0;
  margin-left: 0;
}

/* Improve the By Brand grid wrapper */
body.page ul.products,
body.page .products {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
  margin-top: 2rem;
}

@media (min-width: 768px) {
  body.page ul.products,
  body.page .products {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1200px) {
  body.page ul.products,
  body.page .products {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* Brand cards */
body.page ul.products li.product,
body.page .products li.product {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
  padding: 1rem;
  background: rgba(255,255,255,0.88);
  border: 1px solid rgba(11,31,58,0.08);
  border-radius: 1.25rem;
  box-shadow: 0 8px 24px rgba(11,31,58,0.08);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
}

/* Brand images */
body.page ul.products li.product img,
body.page .products li.product img {
  width: 100%;
  height: 180px;
  object-fit: contain;
  background: #f4f7fa;
  border-radius: 0.875rem;
  padding: 0.75rem;
  margin-bottom: 1rem;
}

/* Brand titles */
body.page ul.products li.product h2,
body.page ul.products li.product h3,
body.page ul.products li.product .woocommerce-loop-product__title,
body.page .products li.product h2,
body.page .products li.product h3,
body.page .products li.product .woocommerce-loop-product__title {
  font-family: "Cormorant Garamond", serif;
  font-size: 1.1rem;
  line-height: 1.25;
  text-align: center;
  color: #0b1f3a;
  white-space: normal;
  word-break: normal;
  overflow-wrap: break-word;
  margin: 0.5rem 0 0;
}

/* Hide unwanted blog/post content below the grid if present in page template */
body.page .comments-area,
body.page .comment-list,
body.page .comment-respond,
body.page .post-navigation,
body.page .entry-footer {
  display: none;
}

/* If testimonial widgets or blog loops are injected below the page content */
body.page .site-main > article + article,
body.page .site-main .type-post,
body.page .site-main .post,
body.page .site-main .wp-block-latest-posts {
  display: none;
}
/* =========================================================
   PAGE 1564 - BY BRAND PAGE FIX
   Based on actual markup from the page
   ========================================================= */

body.page-id-1564 #primary.content-area {
  width: 100%;
  float: none;
  margin: 0;
}

body.page-id-1564 #secondary.widget-area {
  display: none !important;
}

body.page-id-1564.right-sidebar .content-area,
body.page-id-1564.left-sidebar .content-area,
body.page-id-1564.right-sidebar .site-main,
body.page-id-1564.left-sidebar .site-main {
  width: 100%;
  float: none;
  margin: 0;
}

/* Clean page spacing */
body.page-id-1564 .site-main {
  margin-bottom: 0;
}

body.page-id-1564 .entry-header {
  margin-bottom: 1.5rem;
}

body.page-id-1564 .entry-title {
  margin-bottom: 1rem;
}

/* =========================================================
   BY BRAND GRID
   ========================================================= */

body.page-id-1564 .entry-content > .woocommerce.columns-4 {
  width: 100%;
  margin: 0 0 2rem;
}

body.page-id-1564 .entry-content > .woocommerce.columns-4 > ul.products.columns-4,
body.page-id-1564 .entry-content > .woocommerce > ul.products,
body.page-id-1564 .entry-content ul.products {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
}

@media (min-width: 768px) {
  body.page-id-1564 .entry-content > .woocommerce.columns-4 > ul.products.columns-4,
  body.page-id-1564 .entry-content > .woocommerce > ul.products,
  body.page-id-1564 .entry-content ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1200px) {
  body.page-id-1564 .entry-content > .woocommerce.columns-4 > ul.products.columns-4,
  body.page-id-1564 .entry-content > .woocommerce > ul.products,
  body.page-id-1564 .entry-content ul.products {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* Override Storefront/WooCommerce category widths/floats */
body.page-id-1564 ul.products li.product,
body.page-id-1564 ul.products li.product-category {
  width: 100% !important;
  float: none !important;
  clear: none !important;
  margin: 0 !important;
  min-width: 0;
  max-width: none;
  padding: 1rem;
  background: rgba(255,255,255,0.9);
  border: 1px solid rgba(11,31,58,0.08);
  border-radius: 1.25rem;
  box-shadow: 0 8px 24px rgba(11,31,58,0.08);
  transition: transform 220ms cubic-bezier(0.2, 0.8, 0.2, 1),
              box-shadow 220ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

body.page-id-1564 ul.products li.product:hover,
body.page-id-1564 ul.products li.product-category:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 40px rgba(11,31,58,0.12);
}

/* Anchor becomes card layout */
body.page-id-1564 ul.products li.product > a,
body.page-id-1564 ul.products li.product-category > a {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  height: 100%;
  text-decoration: none;
}

/* Brand logos */
body.page-id-1564 ul.products li.product img,
body.page-id-1564 ul.products li.product-category img {
  width: 100%;
  height: 180px;
  object-fit: contain;
  background: #f4f7fa;
  border-radius: 0.875rem;
  padding: 0.75rem;
  margin: 0 0 1rem;
  box-shadow: none;
}

body.page-id-1564 ul.products li.product h2,
body.page-id-1564 ul.products li.product-category h2,
body.page-id-1564 ul.products li.product .woocommerce-loop-category__title,
body.page-id-1564 ul.products li.product-category .woocommerce-loop-category__title {
  margin: 0.25rem 0 0;
  font-family: "Cormorant Garamond", "Times New Roman", serif;
  font-size: 1.15rem;
  line-height: 1.25;
  text-align: center;
  color: #0b1f3a;
  white-space: normal;
  word-break: normal;
  overflow-wrap: break-word;
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
}

body.page-id-1564 ul.products li.product mark.count,
body.page-id-1564 ul.products li.product-category mark.count {
  background: transparent;
  color: #0b1f3a;
  font-weight: 700;
}

/* =========================================================
   REMOVE REVIEW / TESTIMONIAL BLOCK BELOW GRID
   ========================================================= */

/* Everything after the first WooCommerce block in entry content */
body.page-id-1564 .entry-content > .woocommerce.columns-4 ~ * {
  display: none !important;
}

/* Also suppress stray line breaks after the grid */
body.page-id-1564 .entry-content > br {
  display: none !important;
}

/* =========================================================
   HEADER CLEANUP FOR THIS PAGE
   ========================================================= */

/* Hide default Storefront header search on this page
   because you already have the AJAX search inside the menu */
body.page-id-1564 .site-header .site-search {
  display: none !important;
}

/* Keep menu search aligned */
body.page-id-1564 .main-navigation .dgwt-wcas-search-wrapp {
  min-width: 260px;
}

/* Remove duplicated secondary fallback menu block if needed */
body.page-id-1564 #site-navigation > .menu {
  display: none;
}

/* Improve overall header spacing */
body.page-id-1564 .site-header .col-full {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

@media (max-width: 767px) {
  body.page-id-1564 .site-header .col-full {
    display: block;
  }

  body.page-id-1564 ul.products li.product,
  body.page-id-1564 ul.products li.product-category {
    padding: 0.85rem;
    border-radius: 0.875rem;
  }

  body.page-id-1564 ul.products li.product img,
  body.page-id-1564 ul.products li.product-category img {
    height: 140px;
  }

  body.page-id-1564 ul.products li.product h2,
  body.page-id-1564 ul.products li.product-category h2,
  body.page-id-1564 ul.products li.product .woocommerce-loop-category__title,
  body.page-id-1564 ul.products li.product-category .woocommerce-loop-category__title {
    font-size: 1.05rem;
  }
}
