/*
Theme Name: Lumen Haru — Midnight Ember
Theme URI: https://lumenharu.com
Description: WooCommerce child theme of Storefront that reproduces the Lumen Haru "Midnight Ember" design — dark cream + ember gold, giant LUMEN HARU hero with sparkle, live FX strip, and re-skinned shop/product/cart/checkout. Tune further in the Customizer.
Author: Lumen Haru
Template: storefront
Version: 1.0
Text Domain: lumen-haru-ember
*/

/* ============ base design system (reused from the prototype) ============ */
/* Lumen Haru — WooCommerce-look PREVIEW · Midnight Ember
   Tokens mirror ../assets/css/themes.css (single design source). */
:root,[data-theme="dark"]{
  --bg:#211C14;--bg-alt:#2A2418;--surface:#2C261B;--ink:#F8F3E7;--ink-soft:#DFD8C6;
  --muted:#ABA088;--line:#43392B;--accent:#F2A024;--accent-2:#FF7A1A;--accent-text:#F9C055;
  --accent-ink:#1A1206;--shadow:0 18px 44px rgba(0,0,0,.5);
}
[data-theme="light"]{
  --bg:#FBF7EF;--bg-alt:#F3ECDD;--surface:#FFFFFF;--ink:#241C0E;--ink-soft:#4E4634;
  --muted:#7A6E54;--line:#E7DDC8;--accent:#C77F1B;--accent-2:#E0651A;--accent-text:#9A5E12;
  --accent-ink:#FFF6E8;--shadow:0 18px 44px rgba(120,90,30,.14);
}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--bg);color:var(--ink);
  font:16px/1.55 "Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  -webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px}
h1,h2,h3,h4{font-family:"Barlow Condensed","Inter",system-ui,sans-serif;line-height:1.05;margin:0}
.btn{display:inline-flex;align-items:center;gap:.5em;border:0;cursor:pointer;
  font-weight:700;border-radius:12px;padding:.8em 1.15em;font-size:.98rem;
  background:linear-gradient(135deg,var(--accent),var(--accent-2));color:var(--accent-ink)}
.btn.ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.btn.sm{padding:.5em .8em;font-size:.85rem;border-radius:9px}
.btn:disabled{opacity:.5;cursor:not-allowed}
.chip{display:inline-block;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;
  font-weight:800;padding:.28em .6em;border-radius:999px;background:rgba(242,160,36,.14);
  color:var(--accent-text);border:1px solid rgba(242,160,36,.3)}
.muted{color:var(--muted)}

/* header */
header.site{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 86%,transparent);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
header.site .bar{display:flex;align-items:center;gap:18px;height:68px}
.brand{display:flex;align-items:center;gap:11px;font-family:"Barlow Condensed",sans-serif;
  font-weight:800;font-size:1.5rem;letter-spacing:.04em}
.brand img{width:34px;height:34px;border-radius:8px}
nav.main{display:flex;gap:18px;margin-left:8px}
nav.main a{font-weight:600;font-size:.95rem;color:var(--ink-soft);padding:.3em 0;border-bottom:2px solid transparent}
nav.main a:hover,nav.main a.on{color:var(--ink);border-color:var(--accent)}
.spacer{flex:1}
.tools{display:flex;align-items:center;gap:12px}
select.mkt{background:var(--surface);color:var(--ink);border:1px solid var(--line);
  border-radius:9px;padding:.5em .6em;font-weight:600;font-size:.85rem}
.icon-btn{background:transparent;border:1px solid var(--line);color:var(--ink);border-radius:9px;
  width:38px;height:38px;cursor:pointer;font-size:1rem;display:grid;place-items:center}
.cartlink{position:relative;font-weight:700;display:flex;align-items:center;gap:7px}
.cartlink .cnt{background:var(--accent);color:var(--accent-ink);border-radius:999px;
  font-size:.72rem;font-weight:800;min-width:19px;height:19px;padding:0 5px;display:grid;place-items:center}

/* hero */
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line);
  background:radial-gradient(120% 120% at 80% -10%,rgba(255,122,26,.16),transparent 55%),
             linear-gradient(180deg,var(--bg-alt),var(--bg))}
.hero .wrap{padding:54px 22px 40px}
.hero .eyebrow{color:var(--accent-text);font-weight:800;letter-spacing:.16em;text-transform:uppercase;font-size:.74rem}
.giant{font-family:"Barlow Condensed",sans-serif;font-weight:800;letter-spacing:.01em;
  font-size:clamp(56px,12vw,150px);line-height:.86;margin:.12em 0 .1em;
  background:linear-gradient(160deg,var(--accent-2),var(--accent) 55%,#ffe6b0);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.hero .lead{max-width:640px;color:var(--ink-soft);font-size:1.05rem}
.hero .cta{display:flex;gap:12px;margin-top:20px;flex-wrap:wrap}

/* generic section */
.sec{padding:42px 0}
.sec h2{font-size:clamp(26px,3.4vw,40px)}
.eyebrow2{color:var(--accent-text);font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;margin-bottom:6px}
.cats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}
.catcard{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface);
  box-shadow:var(--shadow);transition:transform .15s}
.catcard:hover{transform:translateY(-3px)}
.catcard .ph{aspect-ratio:16/10;overflow:hidden}
.catcard .ph img{width:100%;height:100%;object-fit:cover}
.catcard .bd{padding:15px 16px 18px}
.catcard h3{font-size:1.45rem}

/* product grid */
.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:6px 0 22px}
.filt{display:flex;gap:8px;flex-wrap:wrap}
.filt button{background:var(--surface);border:1px solid var(--line);color:var(--ink-soft);
  border-radius:999px;padding:.45em .9em;font-weight:600;font-size:.85rem;cursor:pointer}
.filt button.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:18px}
.card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface);
  display:flex;flex-direction:column;transition:transform .15s,border-color .15s;cursor:pointer}
.card:hover{transform:translateY(-3px);border-color:rgba(242,160,36,.5)}
.card .ph{aspect-ratio:1/1;background:#fff;overflow:hidden}
.card .ph img{width:100%;height:100%;object-fit:cover}
.card .bd{padding:13px 14px 15px;display:flex;flex-direction:column;gap:6px;flex:1}
.card .nm{font-weight:700;font-size:.98rem;line-height:1.25}
.card .meta{font-size:.78rem;color:var(--muted)}
.card .price{margin-top:auto;font-weight:800;color:var(--accent-text);font-size:1.04rem}
.brandchip{font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

/* product detail */
.pd{display:grid;grid-template-columns:1fr 1fr;gap:34px;padding:30px 0 10px}
@media(max-width:820px){.pd{grid-template-columns:1fr}.cats{grid-template-columns:1fr}}
.gal .main{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;aspect-ratio:1/1}
.gal .main img{width:100%;height:100%;object-fit:cover}
.gal .thumbs{display:flex;gap:9px;margin-top:10px;flex-wrap:wrap}
.gal .thumbs img{width:64px;height:64px;object-fit:cover;border-radius:9px;border:1px solid var(--line);cursor:pointer;background:#fff}
.gal .thumbs img.on{border-color:var(--accent)}
.pd h1{font-size:clamp(28px,4vw,42px);margin-bottom:8px}
.pd .price{font-size:1.7rem;font-weight:800;color:var(--accent-text);margin:12px 0}
.sizes{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.sizes button{background:var(--surface);border:1.5px solid var(--line);color:var(--ink);
  border-radius:10px;padding:.55em .85em;font-weight:700;cursor:pointer;font-size:.9rem}
.sizes button.on{border-color:var(--accent);background:rgba(242,160,36,.12);color:var(--accent-text)}
.qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.qty button{width:36px;height:40px;background:var(--surface);border:0;color:var(--ink);font-size:1.1rem;cursor:pointer}
.qty input{width:46px;height:40px;border:0;text-align:center;background:var(--bg);color:var(--ink);font-weight:700}
.buybar{display:flex;gap:12px;align-items:center;margin:16px 0;flex-wrap:wrap}
.desc{border-top:1px solid var(--line);margin-top:24px;padding-top:22px}
.desc h4{font-size:1.05rem;margin:16px 0 6px;color:var(--accent-text)}
.desc ul{margin:6px 0;padding-left:20px;color:var(--ink-soft)}
.desc .note{color:var(--muted);font-style:italic}
.spec{border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-top:14px;background:var(--surface)}
.spec div{display:flex;justify-content:space-between;gap:14px;padding:5px 0;border-bottom:1px dashed var(--line);font-size:.9rem}
.spec div:last-child{border-bottom:0}

/* cart + checkout */
.panel{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:18px 20px;box-shadow:var(--shadow)}
.linerow{display:flex;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.linerow img{width:64px;height:64px;object-fit:cover;border-radius:10px;background:#fff}
.linerow .gr{flex:1}
.tot{display:flex;justify-content:space-between;font-weight:800;font-size:1.15rem;margin-top:14px}
.co{display:grid;grid-template-columns:1.3fr 1fr;gap:24px}
@media(max-width:820px){.co{grid-template-columns:1fr}}
label.f{display:block;font-weight:600;font-size:.85rem;margin:10px 0 4px;color:var(--ink-soft)}
input.f,select.f{width:100%;background:var(--bg);border:1px solid var(--line);color:var(--ink);border-radius:10px;padding:.65em .7em}
.bankbox{border:1px dashed var(--accent);border-radius:12px;padding:14px 16px;margin-top:12px;background:rgba(242,160,36,.06)}
.bankbox h4{color:var(--accent-text);font-size:1rem}
.bankbox table{width:100%;font-size:.9rem;margin-top:6px}
.bankbox td{padding:3px 0}.bankbox td:first-child{color:var(--muted);width:42%}
.demoflag{font-size:.74rem;color:var(--accent-ink);background:var(--accent);font-weight:800;
  padding:.2em .6em;border-radius:6px;display:inline-block}
footer.site{border-top:1px solid var(--line);margin-top:40px;padding:26px 0;color:var(--muted);font-size:.85rem}
.crumb{font-size:.82rem;color:var(--muted);padding:16px 0 0}
.crumb a:hover{color:var(--accent-text)}
.banner{background:rgba(242,160,36,.1);border:1px solid rgba(242,160,36,.3);color:var(--accent-text);
  border-radius:10px;padding:8px 14px;font-size:.82rem;font-weight:600;margin:14px 0}

/* FX strip on the global/home page */
.fxbar{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.82rem;font-weight:600;
  color:var(--ink-soft);background:var(--surface);border:1px solid var(--line);
  border-radius:999px;padding:.4em .9em;margin-bottom:18px}
.fxbar strong{color:var(--accent-text)}
.fxbar .dot{width:8px;height:8px;border-radius:50%;background:#36d07a;box-shadow:0 0 0 3px rgba(54,208,122,.18)}
.cartlink{font-size:.92rem}

/* ============ Storefront / WooCommerce overrides → Midnight Ember ============ */
body,.site,.site-content,.col-full{background:var(--bg);color:var(--ink)}
a{color:inherit}a:hover{color:var(--accent-text)}
.site-header{background:var(--bg-alt)!important;border-bottom:1px solid var(--line);box-shadow:none}
.site-header,.site-branding h1 a,.main-navigation ul li a{color:var(--ink)!important}
.main-navigation ul li a:hover{color:var(--accent-text)!important}
/* buttons everywhere */
.woocommerce a.button,.woocommerce button.button,.woocommerce .button,.woocommerce #respond input#submit,
button,input[type="submit"],.button.alt,.added_to_cart{
  background:linear-gradient(135deg,var(--accent),var(--accent-2))!important;color:var(--accent-ink)!important;
  border:0!important;border-radius:12px!important;font-weight:700!important;text-shadow:none!important}
.woocommerce .button.ghost,.woocommerce a.added_to_cart{filter:saturate(1.05)}
/* product loop cards */
.woocommerce ul.products li.product,ul.products li.product{background:var(--surface);border:1px solid var(--line);
  border-radius:16px;padding:12px 12px 16px;transition:transform .15s,border-color .15s}
.woocommerce ul.products li.product:hover{transform:translateY(-3px);border-color:rgba(242,160,36,.5)}
.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price{
  color:var(--accent-text)!important;font-weight:800}
.woocommerce ul.products li.product .woocommerce-loop-product__title{color:var(--ink);font-weight:700}
/* single product / cart / checkout surfaces */
.woocommerce table.shop_table,.woocommerce-cart table.cart,.woocommerce-checkout #payment,
.woocommerce .cart-collaterals .cart_totals,.woocommerce-checkout .woocommerce-checkout-review-order{
  background:var(--surface);border:1px solid var(--line);border-radius:14px}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-color:var(--line)}
.woocommerce-message,.woocommerce-info,.woocommerce-noreviews,p.no-comments{
  background:var(--bg-alt);border-top-color:var(--accent)!important;color:var(--ink)}
input[type=text],input[type=email],input[type=tel],input[type=password],input[type=number],
select,textarea,.select2-container .select2-selection{
  background:var(--bg)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:10px!important}
/* footer */
.site-footer{background:var(--bg-alt)!important;color:var(--muted);border-top:1px solid var(--line)}
.site-footer a{color:var(--ink-soft)}
/* front-page sections spacing tweak inside Storefront wrapper */
.lh-hero{margin:-1px 0 0}

/* ============ CONTRAST FIX — readable text on dark store pages ============ */
.site h1,.site h2,.site h3,.site h4,.site h5,.site h6,
.entry-title,.product_title,.products .woocommerce-loop-product__title,
.widget-title,.widget .widgettitle,.widget h1,.widget h2,.widget h3,.widget h4,.widget h5,
.woocommerce-Tabs-panel,.woocommerce-tabs .panel,
.site-main,.site-main p,.site-main li,.site-main dd,.site-main dt,.site-main td,.site-main th,
.cart_totals,.cart-collaterals,.order-total,label,legend,.quantity,.stock,.posted_in,.product_meta{
  color:var(--ink)!important;
}
.widget,.woocommerce-breadcrumb,.woocommerce-result-count,.woocommerce-ordering,
.product_meta,.posted_in,.reviews_tab,.description_tab,.site-footer,.secondary-navigation{
  color:var(--ink-soft)!important;
}
.widget a,.site-main a:not(.button):not(.added_to_cart),.woocommerce-breadcrumb a,.site-footer a{
  color:var(--ink-soft);
}
.widget a:hover,.site-main a:not(.button):hover,.woocommerce-breadcrumb a:hover,.site-footer a:hover{
  color:var(--accent-text);
}
.price,.amount,.woocommerce-Price-amount{ color:var(--accent-text)!important; }
del .amount{ color:var(--muted)!important; }
/* search/widget inputs + secondary sidebar surfaces */
.widget input[type=text],.widget input[type=search],.wp-block-search__input{
  background:var(--bg)!important;color:var(--ink)!important;border:1px solid var(--line)!important;
}
.secondary-navigation a,.main-navigation ul.menu li a,.main-navigation ul.nav-menu li a{ color:var(--ink-soft); }

/* ============ FONTS + WOOCOMMERCE PAGES → MIDNIGHT EMBER (match mockup) ============ */
body,button,input,select,textarea,.site,.col-full{ font-family:"Inter","Be Vietnam Pro",system-ui,-apple-system,sans-serif; }
.woocommerce ul.products li.product .woocommerce-loop-product__title,.cart_totals h2,.woocommerce-checkout h3,.woocommerce-products-header__title{font-family:"Barlow Condensed","Be Vietnam Pro",sans-serif;letter-spacing:.01em;}
.col-full{ max-width:1180px; }
#content{ padding-top:24px; }
/* single product */
.single-product div.product .product_title{ font-size:clamp(28px,4vw,44px);color:var(--ink)!important; }
.single-product div.product p.price,.single-product .summary .price,.single-product .summary .amount{ color:var(--accent-text)!important;font-size:1.6rem;font-weight:800; }
.woocommerce div.product form.cart .variations td,.woocommerce div.product form.cart .variations th{ color:var(--ink); }
.woocommerce div.product form.cart .variations select,.woocommerce .quantity .qty{
  background:var(--bg)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:10px!important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs{ border-color:var(--line); }
.woocommerce div.product .woocommerce-tabs ul.tabs li{ background:var(--surface)!important;border-color:var(--line)!important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{ background:var(--bg-alt)!important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a{ color:var(--ink-soft)!important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{ color:var(--ink)!important; }
.woocommerce-Tabs-panel,.woocommerce-tabs .panel,.product_meta{ color:var(--ink-soft)!important; }
.related.products h2,.up-sells h2,.cross-sells h2,.cart_totals h2,.woocommerce-checkout h3,.cart-collaterals h2{ color:var(--ink)!important; }
/* cart + checkout */
.woocommerce table.cart img{ border-radius:8px; }
.woocommerce-cart table.cart td,.woocommerce-cart table.cart th,.woocommerce table.shop_table td,.woocommerce table.shop_table th{ border-color:var(--line)!important;color:var(--ink); }
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,
.select2-container--default .select2-selection--single,.woocommerce-checkout input,.woocommerce-checkout textarea{
  background:var(--bg)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:10px!important;
}
.woocommerce-checkout #payment{ background:var(--surface)!important;border:1px solid var(--line)!important;border-radius:14px; }
.woocommerce-checkout #payment ul.payment_methods{ border-color:var(--line)!important; }

/* ============ FONT FIX — match the original per-language fonts exactly ============
   Base = Be Vietnam Pro (Latin + Vietnamese). Japanese = Noto Sans JP. Khmer = Kantumruy Pro.
   These come last so they override the earlier (incorrect) Inter/Barlow !important rules. */
body,button,input,select,textarea,.site,.col-full,.woocommerce,.woocommerce-page,.widget,
.site-main,.site-main p,.site-main li{
  font-family:"Be Vietnam Pro",system-ui,-apple-system,"Segoe UI",sans-serif;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,.cart_totals h2,.woocommerce-checkout h3,.woocommerce-products-header__title{font-family:"Barlow Condensed","Be Vietnam Pro",sans-serif;letter-spacing:.01em;}
/* Japanese — Noto Sans JP everywhere, including headings */
:lang(ja),:lang(ja) body,:lang(ja) button,:lang(ja) input,:lang(ja) select,:lang(ja) textarea,
:lang(ja) h1,:lang(ja) h2,:lang(ja) h3,:lang(ja) h4,:lang(ja) h5,:lang(ja) h6,
:lang(ja) .product_title,:lang(ja) .entry-title,:lang(ja) .widget-title,:lang(ja) .woocommerce-loop-product__title{
  font-family:"Noto Sans JP","Be Vietnam Pro",sans-serif!important;
}
/* Khmer — Kantumruy Pro everywhere, including headings */
:lang(km),:lang(km) body,:lang(km) button,:lang(km) input,:lang(km) select,:lang(km) textarea,
:lang(km) h1,:lang(km) h2,:lang(km) h3,:lang(km) h4,:lang(km) h5,:lang(km) h6,
:lang(km) .product_title,:lang(km) .entry-title,:lang(km) .widget-title,:lang(km) .woocommerce-loop-product__title{
  font-family:"Kantumruy Pro","Be Vietnam Pro",sans-serif!important;
}

/* ============ SHOP ARCHIVE + BUTTONS + PRODUCT FORM → match mockup ============ */
.woocommerce ul.products,.woocommerce-page ul.products{ display:grid!important;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px;margin:0 0 24px; }
.woocommerce ul.products li.product{ float:none!important;width:auto!important;margin:0!important;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:12px 12px 16px;transition:transform .15s,border-color .15s; }
.woocommerce ul.products li.product:hover{ transform:translateY(-3px);border-color:rgba(242,160,36,.5); }
.woocommerce ul.products li.product a img{ border-radius:10px;background:#fff;margin-bottom:8px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title{ font-size:1rem;padding:.3em 0 .2em;color:var(--ink); }
.woocommerce ul.products li.product .price{ color:var(--accent-text)!important;font-weight:800; }
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering select{ color:var(--ink-soft); }
.woocommerce .woocommerce-ordering select{ background:var(--surface)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:8px;padding:.4em; }
/* buttons everywhere -> original gold .btn-primary */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce .button.alt,.single_add_to_cart_button,.button.add_to_cart_button,.checkout-button,
.wc-proceed-to-checkout .button,.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  background:linear-gradient(135deg,var(--accent),var(--accent-2))!important;color:var(--accent-ink)!important;
  border:0!important;border-radius:12px!important;font-weight:700!important;padding:.72em 1.2em!important;text-shadow:none!important;
}
.woocommerce a.button:hover,.single_add_to_cart_button:hover{ filter:brightness(1.06); }
/* single-product add-to-cart form inside pm layout */
.pm .pm-cta form.cart{ display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:14px 0 0; }
.pm .pm-cta table.variations{ width:100%;margin:0 0 10px; }
.pm .pm-cta table.variations td,.pm .pm-cta table.variations th{ border:0;padding:4px 8px 4px 0;color:var(--ink); }
.pm .pm-cta .variations select,.pm .pm-cta .quantity .qty{ background:var(--bg)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:10px!important;padding:.5em; }
.pm .woocommerce-variation-price .price,.pm .woocommerce-variation-price .amount{ color:var(--accent-text)!important;font-weight:800; }
.pm .reset_variations{ color:var(--ink-soft); }
/* tidy: hide the duplicate default WooCommerce price/short-desc that our pm layout already shows */
.pm > .summary > .price,.pm > .summary > .woocommerce-product-details__short-description{ display:none; }

/* ============ FULL-WIDTH SHOP + GRID + REVEAL (match original catalogue) ============ */
#secondary,.widget-area{ display:none!important; }
#primary,.content-area{ width:100%!important;float:none!important;margin:0!important; }
.woocommerce-page .col-full,.woocommerce .col-full{ max-width:1180px; }
.woocommerce ul.products,.woocommerce-page ul.products{
  grid-template-columns:repeat(auto-fill,minmax(240px,1fr))!important;gap:20px!important;
}
.woocommerce ul.products li.product{ text-align:left; }
.woocommerce ul.products li.product .button{ width:100%;text-align:center; }
.storefront-sorting{ margin-bottom:18px; }
.woocommerce .page-title,.woocommerce-products-header__title,h1.entry-title{ font-size:clamp(30px,5vw,52px); }
/* staggered fade-up reveal on cards (approximates the original .reveal) */
@keyframes lhUp{ from{opacity:0;transform:translateY(18px)} to{opacity:1;transform:none} }
.woocommerce ul.products li.product{ animation:lhUp .5s cubic-bezier(.2,.7,.2,1) both; }
.woocommerce ul.products li.product:nth-child(3n+2){ animation-delay:.06s; }
.woocommerce ul.products li.product:nth-child(3n+3){ animation-delay:.12s; }
.woocommerce ul.products li.product:nth-child(n+4){ animation-delay:.16s; }
@media (prefers-reduced-motion: reduce){ .woocommerce ul.products li.product{ animation:none; } }

/* ============ ALIGN store content with the header (.wrap = 1200px) ============ */
.col-full{ max-width:1200px!important;margin-left:auto!important;margin-right:auto!important;padding-left:24px!important;padding-right:24px!important; }
.woocommerce .col-full,.woocommerce-page .col-full{ max-width:1200px!important; }
/* products fill the wider container */
.woocommerce ul.products,.woocommerce-page ul.products{ grid-template-columns:repeat(auto-fill,minmax(250px,1fr))!important; }
/* mobile: single/two column, comfortable spacing */
@media (max-width:760px){
  .woocommerce ul.products,.woocommerce-page ul.products{ grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important;gap:12px!important; }
  .col-full{ padding-left:16px!important;padding-right:16px!important; }
  .pm-hero .wrap{ grid-template-columns:1fr!important; }
}

/* ====== Product price table: keep rows on the dark surface (Storefront forces td bg white) ====== */
.pm .pm-hero-prices table{ background:var(--surface)!important;border:1px solid var(--line)!important; }
.pm .pm-hero-prices thead th{ background:var(--bg-alt)!important;color:var(--muted)!important; }
.pm .pm-hero-prices tbody td{ background:var(--surface)!important;border-bottom:1px solid var(--line)!important; }
.pm .pm-hero-prices tbody tr:last-child td{ border-bottom:0!important; }
.pm .pm-hero-prices tbody td:first-child{ color:var(--ink)!important;font-weight:800!important; }
.pm .pm-hero-prices .pprice{ color:var(--p-accent)!important; }
.pm .pm-hero-prices .pprice .amount,.pm .pm-hero-prices td .woocommerce-Price-amount{ color:var(--p-accent)!important; }

/* ====== Product page: white-surface cards keep DARK text in the dark theme ====== */
[data-theme="dark"] .pm .pm-benefit{ color:#2A2110!important; }
[data-theme="dark"] .pm .pm-thumb-title{ color:#3B3422!important; }
[data-theme="dark"] .pm .pm-thumb.is-active .pm-thumb-title{ color:var(--p-accent)!important; }
[data-theme="dark"] .pm .pm-pair .name{ color:var(--ink)!important; }
/* slightly brighter "Contact" quote price for readability */
.pm .pm-hero-prices .pprice.quote{ color:var(--ink-soft)!important; }
