/*
Theme Name: Hebrew Explorer Marketplace
Theme URI: https://market.hebrewexplorer.com
Description: "Or / First Light" — a devotional-luminous marketplace child theme for Storefront. Custom header (stacked wordmark, Cart, Menu overlay), homepage (hero, featured products, light-verse band, meet the makers), single-product layout, and WooCommerce + WCFM styling. All header/footer/product customizations use hooks, so Storefront updates won't break it.
Author: Shawn Gibson
Template: storefront
Version: 2.13.1
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: hebrew-explorer-market
*/
/* ============================================================================
   Hebrew Explorer Marketplace — "Or / First Light"
   Devotional-luminous styling for WooCommerce + WCFM on Storefront.
   ============================================================================ */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Frank+Ruhl+Libre:wght@400;500;700;900&family=Hanken+Grotesk:wght@400;500;600;700;800&display=swap');

:root{
  --hem-midnight:#0c1a36; --hem-midnight-2:#0e1d3a; --hem-heaven:#14264a; --hem-tekhelet:#1f3d6e;
  --hem-gold:#d9a23b; --hem-gold-bright:#eec06a; --hem-gold-deep:#b9842a;
  --hem-stone:#f5f1e8; --hem-card:#fffdf8; --hem-ink:#171a22; --hem-ink-soft:#5d6472; --hem-mist:#b7c3d8;
  --hem-line:#e7dfce; --hem-line-dk:rgba(238,192,106,.18);
  --hem-display:"Cormorant Garamond",Georgia,serif; --hem-hebrew:"Frank Ruhl Libre",serif;
  --hem-ui:"Hanken Grotesk",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --hem-radius:16px; --hem-radius-sm:10px;
  --hem-shadow:0 1px 2px rgba(12,26,54,.06),0 14px 34px rgba(12,26,54,.10);
  --hem-shadow-lift:0 6px 12px rgba(12,26,54,.10),0 30px 60px rgba(12,26,54,.18);
  --hem-glow:0 0 0 1px rgba(217,162,59,.35),0 18px 50px rgba(217,162,59,.22);
  --hem-ease:cubic-bezier(.2,.7,.2,1);
  --hem-stars:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%201200%20600%27%3E%3Ccircle%20cx%3D%22926%22%20cy%3D%22573%22%20r%3D%221%22%20fill%3D%22%23eec06a%22%20opacity%3D%220.7%22/%3E%3Ccircle%20cx%3D%22388%22%20cy%3D%22189%22%20r%3D%221.2%22%20fill%3D%22%23eec06a%22%20opacity%3D%220.85%22/%3E%3Ccircle%20cx%3D%22381%22%20cy%3D%2296%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.35%22/%3E%3Ccircle%20cx%3D%22185%22%20cy%3D%22551%22%20r%3D%221.4%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.7%22/%3E%3Ccircle%20cx%3D%22811%22%20cy%3D%22463%22%20r%3D%221.4%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.7%22/%3E%3Ccircle%20cx%3D%2230%22%20cy%3D%22541%22%20r%3D%220.6%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.25%22/%3E%3Ccircle%20cx%3D%22389%22%20cy%3D%22247%22%20r%3D%221.2%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.4%22/%3E%3Ccircle%20cx%3D%22950%22%20cy%3D%22334%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.7%22/%3E%3Ccircle%20cx%3D%22478%22%20cy%3D%22301%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.85%22/%3E%3Ccircle%20cx%3D%22174%22%20cy%3D%22468%22%20r%3D%221.4%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.55%22/%3E%3Ccircle%20cx%3D%221128%22%20cy%3D%2285%22%20r%3D%221.4%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.45%22/%3E%3Ccircle%20cx%3D%22470%22%20cy%3D%22525%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.25%22/%3E%3Ccircle%20cx%3D%221153%22%20cy%3D%22110%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.4%22/%3E%3Ccircle%20cx%3D%22595%22%20cy%3D%22395%22%20r%3D%220.6%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.4%22/%3E%3Ccircle%20cx%3D%221%22%20cy%3D%22218%22%20r%3D%220.8%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.55%22/%3E%3Ccircle%20cx%3D%22768%22%20cy%3D%22406%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.7%22/%3E%3Ccircle%20cx%3D%22406%22%20cy%3D%22276%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.45%22/%3E%3Ccircle%20cx%3D%22681%22%20cy%3D%2215%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.35%22/%3E%3Ccircle%20cx%3D%22504%22%20cy%3D%22103%22%20r%3D%220.6%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.55%22/%3E%3Ccircle%20cx%3D%22997%22%20cy%3D%22181%22%20r%3D%221.4%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.55%22/%3E%3Ccircle%20cx%3D%221042%22%20cy%3D%22195%22%20r%3D%221.4%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.55%22/%3E%3Ccircle%20cx%3D%22785%22%20cy%3D%22119%22%20r%3D%221%22%20fill%3D%22%23eec06a%22%20opacity%3D%220.35%22/%3E%3Ccircle%20cx%3D%220%22%20cy%3D%22276%22%20r%3D%221.2%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.25%22/%3E%3Ccircle%20cx%3D%22431%22%20cy%3D%22191%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.25%22/%3E%3Ccircle%20cx%3D%22299%22%20cy%3D%22218%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.25%22/%3E%3Ccircle%20cx%3D%22673%22%20cy%3D%22303%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.25%22/%3E%3Ccircle%20cx%3D%22184%22%20cy%3D%22213%22%20r%3D%221.2%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.25%22/%3E%3Ccircle%20cx%3D%22755%22%20cy%3D%22380%22%20r%3D%221.2%22%20fill%3D%22%23eec06a%22%20opacity%3D%220.35%22/%3E%3Ccircle%20cx%3D%22990%22%20cy%3D%22588%22%20r%3D%220.8%22%20fill%3D%22%23eec06a%22%20opacity%3D%220.35%22/%3E%3Ccircle%20cx%3D%22315%22%20cy%3D%22318%22%20r%3D%220.8%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.85%22/%3E%3Ccircle%20cx%3D%22388%22%20cy%3D%22162%22%20r%3D%221.4%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.85%22/%3E%3Ccircle%20cx%3D%22795%22%20cy%3D%22494%22%20r%3D%221.2%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.55%22/%3E%3Ccircle%20cx%3D%2297%22%20cy%3D%22106%22%20r%3D%220.6%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.7%22/%3E%3Ccircle%20cx%3D%22522%22%20cy%3D%22244%22%20r%3D%221.4%22%20fill%3D%22%23eec06a%22%20opacity%3D%220.45%22/%3E%3Ccircle%20cx%3D%22861%22%20cy%3D%22502%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.85%22/%3E%3Ccircle%20cx%3D%22140%22%20cy%3D%22129%22%20r%3D%220.8%22%20fill%3D%22%23eec06a%22%20opacity%3D%220.7%22/%3E%3Ccircle%20cx%3D%22151%22%20cy%3D%22286%22%20r%3D%220.8%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.85%22/%3E%3Ccircle%20cx%3D%2233%22%20cy%3D%2270%22%20r%3D%221%22%20fill%3D%22%23eec06a%22%20opacity%3D%220.55%22/%3E%3Ccircle%20cx%3D%22510%22%20cy%3D%2261%22%20r%3D%220.6%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.45%22/%3E%3Ccircle%20cx%3D%22755%22%20cy%3D%22543%22%20r%3D%221.2%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.25%22/%3E%3Ccircle%20cx%3D%22741%22%20cy%3D%22141%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.85%22/%3E%3Ccircle%20cx%3D%221068%22%20cy%3D%22598%22%20r%3D%220.8%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.25%22/%3E%3Ccircle%20cx%3D%22972%22%20cy%3D%22366%22%20r%3D%221.4%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.25%22/%3E%3Ccircle%20cx%3D%2243%22%20cy%3D%2276%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.85%22/%3E%3Ccircle%20cx%3D%22637%22%20cy%3D%22326%22%20r%3D%220.8%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.25%22/%3E%3Ccircle%20cx%3D%22927%22%20cy%3D%22559%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.85%22/%3E%3Ccircle%20cx%3D%22265%22%20cy%3D%22349%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.85%22/%3E%3Ccircle%20cx%3D%22969%22%20cy%3D%2279%22%20r%3D%221%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.4%22/%3E%3Ccircle%20cx%3D%221023%22%20cy%3D%22586%22%20r%3D%220.6%22%20fill%3D%22%23eec06a%22%20opacity%3D%220.55%22/%3E%3Ccircle%20cx%3D%221193%22%20cy%3D%2212%22%20r%3D%221.2%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.25%22/%3E%3Ccircle%20cx%3D%22185%22%20cy%3D%22118%22%20r%3D%221%22%20fill%3D%22%23eec06a%22%20opacity%3D%220.85%22/%3E%3Ccircle%20cx%3D%22676%22%20cy%3D%22397%22%20r%3D%221.4%22%20fill%3D%22%23eec06a%22%20opacity%3D%220.55%22/%3E%3Ccircle%20cx%3D%22947%22%20cy%3D%22554%22%20r%3D%220.6%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.45%22/%3E%3Ccircle%20cx%3D%22179%22%20cy%3D%22492%22%20r%3D%220.6%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.85%22/%3E%3C/svg%3E");
}

/* ---- base ---- */
body{ background:var(--hem-stone); color:var(--hem-ink); font-family:var(--hem-ui); }
body, button, input, select, textarea{ font-family:var(--hem-ui); }
.woocommerce h1,.woocommerce h2,.woocommerce h3,.woocommerce-page h1,.woocommerce-page h2,.woocommerce-page h3,
h1.entry-title,.hem-wrap h2{ font-family:var(--hem-display); color:var(--hem-tekhelet); font-weight:600; letter-spacing:.2px; }
a{ color:var(--hem-tekhelet); }
.heb{ font-family:var(--hem-hebrew); color:var(--hem-gold); font-weight:700; }
.hem-eyebrow{ font-family:var(--hem-ui); text-transform:uppercase; letter-spacing:.24em; font-size:.7rem;
  font-weight:700; color:var(--hem-gold-deep); display:inline-flex; align-items:center; gap:9px; }
.hem-eyebrow::before{ content:"\2726"; color:var(--hem-gold); font-size:.85em; }
.hem-horizon{ height:1px; width:100%; max-width:230px; border:none; margin:16px 0 0;
  background:linear-gradient(90deg,transparent,var(--hem-gold),transparent); opacity:.7; }
.hem-sky{ position:relative; background:var(--hem-midnight); color:#eef2f8; }
.hem-sky::before{ content:""; position:absolute; inset:0; background-image:var(--hem-stars);
  background-size:cover; opacity:.85; pointer-events:none; }

/* ---- buttons ---- */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,.wp-block-button__link,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,.woocommerce #place_order,.hem-btn{
  font-family:var(--hem-ui)!important; font-weight:700!important; letter-spacing:.01em;
  background:var(--hem-gold)!important; color:var(--hem-midnight)!important; border:none!important;
  border-radius:999px!important; padding:.78em 1.6em!important; box-shadow:0 1px 2px rgba(12,26,54,.2);
  transition:transform .16s var(--hem-ease),background .16s var(--hem-ease),box-shadow .16s var(--hem-ease)!important; }
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,.woocommerce a.button.alt:hover,.wp-block-button__link:hover,
.woocommerce #place_order:hover,.hem-btn:hover{
  background:var(--hem-gold-bright)!important; color:var(--hem-midnight)!important; transform:translateY(-2px); box-shadow:var(--hem-glow); }
.hem-btn-ghost{ background:transparent!important; color:var(--hem-tekhelet)!important; border:1.5px solid var(--hem-tekhelet)!important; box-shadow:none; }
.hem-btn-ghost:hover{ background:var(--hem-tekhelet)!important; color:#fff!important; }
.hem-btn-ghost-dk{ background:transparent!important; color:#f3ead8!important; border:1.5px solid rgba(238,192,106,.5)!important; box-shadow:none; }
.hem-btn-ghost-dk:hover{ background:rgba(238,192,106,.12)!important; color:#fff!important; border-color:var(--hem-gold-bright)!important; }

/* ---- product grid + cards ---- */
.woocommerce ul.products,.woocommerce-page ul.products{
  display:grid!important; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:26px; margin:0; padding:0; list-style:none; }
.woocommerce ul.products::before,.woocommerce ul.products::after{ content:none!important; display:none!important; }
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{
  width:auto!important; float:none!important; margin:0!important;
  background:var(--hem-card); border:1px solid var(--hem-line); border-radius:var(--hem-radius);
  padding:15px 15px 20px; box-shadow:var(--hem-shadow); position:relative;
  transition:transform .24s var(--hem-ease),box-shadow .24s var(--hem-ease),border-color .24s var(--hem-ease); }
.woocommerce ul.products li.product:hover{
  transform:translateY(-7px); border-color:rgba(217,162,59,.5);
  box-shadow:var(--hem-shadow-lift),0 0 60px -18px rgba(217,162,59,.55); }
.woocommerce ul.products li.product a img{ border-radius:var(--hem-radius-sm); margin-bottom:.85em;
  background:var(--hem-stone); transition:transform .4s var(--hem-ease); }
.woocommerce ul.products li.product:hover a img{ transform:scale(1.05); }
.woocommerce ul.products li.product .wcfmmp_sold_by_wrapper,
.woocommerce ul.products li.product .wcfmmp-sold-by-container{
  font-family:var(--hem-ui); font-size:.71rem; letter-spacing:.07em; text-transform:uppercase;
  color:var(--hem-gold-deep); font-weight:700; margin-bottom:2px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--hem-display); font-weight:600; font-size:1.4rem; line-height:1.16; color:var(--hem-ink); padding:.12em 0 .3em; }
.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price{
  font-family:var(--hem-ui); color:var(--hem-tekhelet); font-weight:800; font-size:1.14rem; }
.woocommerce .price del{ color:var(--hem-ink-soft); font-weight:500; opacity:.6; }
.woocommerce .price ins{ text-decoration:none; color:var(--hem-gold-deep); }
.woocommerce .star-rating span::before,.woocommerce p.stars a::before{ color:var(--hem-gold); }

/* ---- badges ---- */
.woocommerce span.onsale{
  background:var(--hem-midnight); color:var(--hem-gold-bright); border:1px solid rgba(238,192,106,.55);
  font-family:var(--hem-ui); font-weight:800; letter-spacing:.05em; text-transform:uppercase; font-size:.64rem;
  min-height:auto; min-width:auto; line-height:1; padding:.5em .8em; border-radius:999px; top:18px; left:18px; right:auto; margin:0; }
.hem-badge{ font-family:var(--hem-ui); font-weight:800; font-size:.64rem; letter-spacing:.05em; text-transform:uppercase;
  padding:.5em .8em; border-radius:999px; display:inline-block; }
.hem-badge--new{ background:var(--hem-gold); color:var(--hem-midnight); }

/* ---- single product ---- */
.single-product div.product{ display:grid; grid-template-columns:1.05fr 1fr; gap:46px; align-items:start; }
.single-product div.product .woocommerce-product-gallery,.single-product div.product .summary.entry-summary{
  width:auto!important; float:none!important; margin:0!important; }
.single-product div.product .woocommerce-product-gallery img{ border-radius:var(--hem-radius); }
.single-product div.product .summary.entry-summary{ position:sticky; top:24px; }
.single-product div.product .product_title{ margin-top:0; font-size:2.4rem; }
.single-product div.product .woocommerce-tabs,.single-product div.product .hem-more,
.single-product div.product .related,.single-product div.product .up-sells{ grid-column:1 / -1; }
.hem-vendor-card{ display:flex; align-items:center; gap:12px; background:#fff; border:1px solid var(--hem-line);
  border-radius:var(--hem-radius); padding:12px 14px; margin:8px 0 18px; box-shadow:var(--hem-shadow); }
.hem-vendor-ava{ width:40px; height:40px; border-radius:50%; flex:0 0 auto; display:grid; place-items:center;
  background:linear-gradient(150deg,var(--hem-gold-bright),var(--hem-gold-deep)); color:var(--hem-midnight);
  font-family:var(--hem-display); font-weight:700; font-size:1.05rem; box-shadow:0 0 18px rgba(217,162,59,.4); }
.hem-vendor-meta{ display:flex; flex-direction:column; line-height:1.25; }
.hem-vendor-label{ font-family:var(--hem-ui); font-size:.64rem; text-transform:uppercase; letter-spacing:.12em; color:var(--hem-ink-soft); }
.hem-vendor-name{ font-family:var(--hem-display); font-weight:600; font-size:1.12rem; color:var(--hem-tekhelet); text-decoration:none; }
.hem-vendor-name:hover{ color:var(--hem-gold-deep); }
.hem-vendor-visit{ margin-left:auto; font-family:var(--hem-ui); font-weight:700; font-size:.78rem; color:var(--hem-tekhelet);
  text-decoration:none; border:1.5px solid var(--hem-tekhelet); border-radius:999px; padding:.45em 1em; white-space:nowrap;
  transition:background .15s var(--hem-ease),color .15s var(--hem-ease),transform .15s var(--hem-ease); }
.hem-vendor-visit:hover{ background:var(--hem-tekhelet); color:#fff; transform:translateY(-1px); }
.hem-trust{ list-style:none; display:flex; flex-wrap:wrap; gap:8px 18px; margin:18px 0 0; padding:14px 0 0;
  border-top:1px solid var(--hem-line); font-family:var(--hem-ui); font-size:.8rem; color:var(--hem-ink-soft); }
.hem-trust li{ display:flex; align-items:center; gap:7px; margin:0; }
.hem-trust li::before{ content:""; width:7px; height:7px; border-radius:50%; background:var(--hem-gold); display:inline-block; flex:0 0 auto; }
.hem-more{ margin-top:50px; }
.hem-more-title{ font-family:var(--hem-display); color:var(--hem-tekhelet); font-size:1.9rem; margin:0 0 18px; }
.woocommerce-tabs ul.tabs{ border:none; padding-left:0; }
.woocommerce-tabs ul.tabs li{ background:transparent; border:none; }
.woocommerce-tabs ul.tabs li a{ font-family:var(--hem-ui); font-weight:700; color:var(--hem-ink-soft); }
.woocommerce-tabs ul.tabs li.active a{ color:var(--hem-tekhelet); }

/* ---- notices / forms ---- */
.woocommerce-message,.woocommerce-info,.woocommerce-noreviews{ border-top-color:var(--hem-gold); font-family:var(--hem-ui); border-radius:var(--hem-radius-sm); }
.woocommerce-message::before,.woocommerce-info::before{ color:var(--hem-gold); }
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce-page select,
.woocommerce input[type="text"],.woocommerce input[type="email"],.woocommerce input[type="password"]{
  border:1px solid var(--hem-line)!important; border-radius:var(--hem-radius-sm)!important; background:#fffdf8!important;
  font-family:var(--hem-ui); padding:.7em .85em!important; }
.woocommerce input:focus,.woocommerce textarea:focus{ outline:none; border-color:var(--hem-gold)!important; box-shadow:0 0 0 3px rgba(217,162,59,.18)!important; }

/* ---- WCFM customer-facing store pages ---- */
.wcfmmp-store-list .wcfmmp-store,.wcfmmp_store_list_wrapper .store-wrapper{
  background:var(--hem-card); border:1px solid var(--hem-line); border-radius:var(--hem-radius); box-shadow:var(--hem-shadow);
  transition:transform .2s var(--hem-ease),box-shadow .2s var(--hem-ease); }
.wcfmmp-store-list .wcfmmp-store:hover,.wcfmmp_store_list_wrapper .store-wrapper:hover{ transform:translateY(-4px); box-shadow:var(--hem-shadow-lift); }
.wcfmmp-store-info .wcfm_store_name,.wcfmmp_store_name{ font-family:var(--hem-display); color:var(--hem-tekhelet); font-weight:600; }

/* ============================================================================
   HEADER  (custom, via hooks in functions.php)
   ============================================================================ */
.site-header{ background:var(--hem-midnight)!important; background-image:var(--hem-stars); background-size:cover;
  border-bottom:1px solid var(--hem-line-dk); margin-bottom:0!important; padding:0!important; position:relative; }
.site-header .col-full{ position:relative; z-index:2; padding-top:18px!important; padding-bottom:18px!important; }
.hem-bar{ display:flex; align-items:center; gap:20px; }
.hem-wordmark{ text-decoration:none; line-height:1; display:inline-block; }
.hem-wm-small{ display:block; font-family:var(--hem-ui); font-weight:700; text-transform:uppercase; letter-spacing:.2em;
  font-size:.66rem; color:var(--hem-gold); margin-bottom:3px; }
.hem-wm-large{ display:block; font-family:var(--hem-display); font-weight:600; font-size:2rem; color:#f6f1e6; letter-spacing:.3px; }
.hem-wm-large .heb{ color:var(--hem-gold-bright); font-size:.78em; margin-left:6px; }
.hem-bar-right{ margin-left:auto; display:flex; align-items:center; gap:18px; }
.hem-cart{ font-family:var(--hem-ui); font-weight:700; font-size:.92rem; color:#e7edf6!important; text-decoration:none; display:inline-flex; align-items:center; gap:8px; }
.hem-cart:hover{ color:#fff!important; }
.hem-cart-count{ background:var(--hem-gold); color:var(--hem-midnight); font-size:.68rem; font-weight:800; border-radius:999px; padding:1px 8px; min-width:20px; text-align:center; }
.hem-menu-toggle{ font-family:var(--hem-ui); font-weight:700; font-size:.92rem; color:var(--hem-midnight); background:var(--hem-gold);
  border:none; border-radius:999px; padding:.55em 1.15em; cursor:pointer; display:inline-flex; align-items:center; gap:9px;
  transition:transform .15s var(--hem-ease),background .15s var(--hem-ease),box-shadow .15s var(--hem-ease); }
.hem-menu-toggle:hover{ background:var(--hem-gold-bright); transform:translateY(-1px); box-shadow:var(--hem-glow); }
.hem-menu-icon{ width:16px; height:2px; background:var(--hem-midnight); position:relative; display:inline-block; }
.hem-menu-icon::before,.hem-menu-icon::after{ content:""; position:absolute; left:0; width:16px; height:2px; background:var(--hem-midnight); }
.hem-menu-icon::before{ top:-5px; } .hem-menu-icon::after{ top:5px; }

/* menu overlay */
.hem-menu-overlay{ position:fixed; inset:0; z-index:9999; background:var(--hem-midnight); background-image:var(--hem-stars); background-size:cover;
  display:flex; flex-direction:column; align-items:center; justify-content:center; opacity:0; visibility:hidden;
  transition:opacity .28s var(--hem-ease); }
.hem-menu-overlay.open{ opacity:1; visibility:visible; }
.hem-menu-close{ position:absolute; top:26px; right:34px; background:none; border:none; color:#f3ead8; font-size:2.4rem; line-height:1; cursor:pointer; }
.hem-menu-close:hover{ color:var(--hem-gold-bright); }
.hem-menu-nav .hem-menu-list{ list-style:none; margin:0; padding:0; text-align:center; }
.hem-menu-nav .hem-menu-list li{ margin:.35em 0; }
.hem-menu-nav .hem-menu-list a{ font-family:var(--hem-display); font-weight:500; font-size:2.4rem; color:#eef2f8; text-decoration:none;
  transition:color .15s var(--hem-ease); }
.hem-menu-nav .hem-menu-list a:hover{ color:var(--hem-gold-bright); }
body.hem-menu-on{ overflow:hidden; }

/* ============================================================================
   HOMEPAGE  (Template: Market Home)
   ============================================================================ */
.hem-home-page .site-content{ padding:0!important; }
.hem-home-page .site-content .col-full{ max-width:none!important; padding-left:0!important; padding-right:0!important; width:100%; }
.hem-home-page #primary,.hem-home-page .content-area,.hem-home-page .entry-content,.hem-home-page .page-content{ margin:0!important; padding:0!important; }
.hem-home-page .entry-header,.hem-home-page .page-header{ display:none!important; }
.hem-wrap{ max-width:1160px; margin:0 auto; padding:0 26px; }

/* hero — block edge, no fade */
.hem-hero{ position:relative; color:#eef2f8; text-align:center; padding:64px 0 72px; overflow:hidden;
  background:radial-gradient(120% 78% at 50% 116%, rgba(238,192,106,.40), rgba(217,162,59,.10) 34%, transparent 60%),
    linear-gradient(180deg,#0a1730 0%, #0c1a36 46%, #14264a 100%); }
.hem-hero::before{ content:""; position:absolute; inset:0; background-image:var(--hem-stars); background-size:cover; opacity:.85; pointer-events:none; }
.hem-hero > .hem-wrap{ position:relative; z-index:2; }
.hem-hero .hem-eyebrow{ color:var(--hem-gold); justify-content:center; }
.hem-hero h1{ font-family:var(--hem-display); font-weight:500; font-size:4rem; line-height:1.06; margin:.26em auto .3em; max-width:16ch; color:#f6f2ea; }
.hem-hero h1 .lit{ color:var(--hem-gold-bright); font-style:italic; font-weight:600; }
.hem-hero p.lead{ color:#c2cde0; font-size:1.16rem; max-width:46ch; margin:0 auto 28px; }
.hem-hero-cta{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

/* light sections */
.hem-section{ padding:62px 0 10px; }
.hem-sec-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:16px; }
.hem-sec-head h2{ font-family:var(--hem-display); font-weight:600; font-size:2.5rem; color:var(--hem-tekhelet); margin:.06em 0 0; }
.hem-see{ font-family:var(--hem-ui); font-weight:700; font-size:.85rem; color:var(--hem-gold-deep); text-decoration:none; white-space:nowrap; }
.hem-section ul.products{ margin-top:30px!important; }

/* verse band — block edge */
.hem-verse{ position:relative; color:#eef2f8; text-align:center; padding:66px 0; margin-top:62px; overflow:hidden;
  background:radial-gradient(90% 140% at 50% -10%, rgba(238,192,106,.30), transparent 55%), linear-gradient(180deg,#0c1a36,#14264a); }
.hem-verse::before{ content:""; position:absolute; inset:0; background-image:var(--hem-stars); background-size:cover; opacity:.7; pointer-events:none; }
.hem-verse > .hem-wrap{ position:relative; z-index:2; }
.hem-verse .heb{ display:block; font-size:1.5rem; color:var(--hem-gold-bright); margin-bottom:14px; letter-spacing:.06em; }
.hem-verse blockquote{ font-family:var(--hem-display); font-weight:500; font-style:italic; font-size:2.2rem; line-height:1.3; margin:0 auto; max-width:24ch; color:#f4efe4; border:none; padding:0; }
.hem-verse cite{ display:block; font-family:var(--hem-ui); font-style:normal; font-weight:700; letter-spacing:.18em; text-transform:uppercase; font-size:.72rem; color:var(--hem-gold); margin-top:20px; }

/* makers */
.hem-makers{ padding:62px 0; }
.hem-mgrid{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; margin-top:30px; }
.hem-maker{ background:var(--hem-card); border:1px solid var(--hem-line); border-radius:var(--hem-radius); padding:26px 20px; text-align:center;
  box-shadow:var(--hem-shadow); text-decoration:none; display:block; transition:transform .22s var(--hem-ease),box-shadow .22s var(--hem-ease); }
.hem-maker:hover{ transform:translateY(-5px); box-shadow:var(--hem-shadow-lift); }
.hem-ava{ width:68px; height:68px; border-radius:50%; margin:0 auto 14px; display:grid; place-items:center; color:var(--hem-midnight);
  font-family:var(--hem-display); font-weight:700; font-size:1.5rem; background:linear-gradient(150deg,var(--hem-gold-bright),var(--hem-gold-deep));
  box-shadow:0 0 0 4px rgba(217,162,59,.16),0 0 26px rgba(217,162,59,.4); }
.hem-maker h3{ font-family:var(--hem-display); font-weight:600; font-size:1.32rem; color:var(--hem-tekhelet); margin:.1em 0 .3em; }
.hem-vbadge{ font-family:var(--hem-ui); font-weight:700; font-size:.62rem; letter-spacing:.07em; text-transform:uppercase; color:var(--hem-gold-deep);
  background:rgba(217,162,59,.12); border:1px solid rgba(217,162,59,.4); border-radius:999px; padding:.36em .72em; display:inline-block; }
.hem-makers .hem-muted{ font-family:var(--hem-ui); font-size:.8rem; color:var(--hem-ink-soft); margin:10px 0 0; }
.hem-empty{ font-family:var(--hem-ui); color:var(--hem-ink-soft); padding:6px 0 0; }

/* ============================================================================
   FOOTER  (custom, via hooks)
   ============================================================================ */
.site-footer{ background:#091428!important; background-image:var(--hem-stars); background-size:cover; color:#9fb0cb!important; position:relative; padding-top:46px!important; }
.site-footer .col-full{ position:relative; z-index:2; }
.hem-foot{ display:grid; grid-template-columns:1.7fr 1fr; gap:30px; align-items:start; }
.hem-foot-brand .hem-wm-small{ color:var(--hem-gold); }
.hem-foot-brand .hem-wm-large{ color:#f6f1e6; }
.hem-foot-brand p{ max-width:34ch; margin:.7em 0 0; color:#9fb0cb; font-size:.88rem; }
.hem-foot-nav .hem-foot-list{ list-style:none; margin:0; padding:0; columns:2; }
.hem-foot-nav .hem-foot-list a{ display:block; padding:5px 0; color:#9fb0cb; font-family:var(--hem-ui); font-size:.88rem; text-decoration:none; }
.hem-foot-nav .hem-foot-list a:hover{ color:#fff; }
.hem-foot-bar{ border-top:1px solid rgba(255,255,255,.1); margin-top:34px; padding:18px 0 6px; display:flex; justify-content:space-between;
  color:#6f7f9c; font-size:.78rem; font-family:var(--hem-ui); }
.site-footer a{ color:#9fb0cb; }

/* ---- quality floor ---- */
a:focus-visible,button:focus-visible,.woocommerce a.button:focus-visible{ outline:2px solid var(--hem-gold-bright); outline-offset:2px; }
@media (max-width:900px){
  .hem-hero h1{ font-size:2.8rem; } .hem-sec-head h2{ font-size:2rem; } .hem-verse blockquote{ font-size:1.7rem; }
  .hem-mgrid{ grid-template-columns:repeat(2,1fr); } .hem-foot{ grid-template-columns:1fr; }
  .hem-wm-large{ font-size:1.6rem; } .single-product div.product{ grid-template-columns:1fr; }
}
@media (max-width:520px){ .hem-mgrid{ grid-template-columns:1fr; } .hem-menu-nav .hem-menu-list a{ font-size:1.9rem; } }
@media (prefers-reduced-motion:reduce){ *{ transition:none!important; } .woocommerce ul.products li.product:hover{ transform:none; } }

/* ============================================================================
   BUILDER KIT — full-width blocks, custom logo, button styles, block sections
   ============================================================================ */
.site-content .alignfull{ width:100vw; max-width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }
.site-content .alignwide{ width:min(100%,1320px); margin-left:auto; margin-right:auto; }

/* custom logo in the dark header */
.hem-wordmark.hem-has-logo img{ max-height:58px; width:auto; display:block; }

/* Button block styles (Market Gold = default gold; Market Ghost = outline) */
.wp-block-button.is-style-hem-ghost .wp-block-button__link{ background:transparent!important; color:#f3ead8!important; border:1.5px solid rgba(238,192,106,.5)!important; box-shadow:none; }
.wp-block-button.is-style-hem-ghost .wp-block-button__link:hover{ background:rgba(238,192,106,.12)!important; color:#fff!important; }

/* hero / verse when built from block patterns */
.wp-block-group.hem-hero,.wp-block-group.hem-verse{ color:#eef2f8; }
.hem-hero .hem-wrap,.hem-verse .hem-wrap{ position:relative; z-index:2; }
.hem-hero .wp-block-heading{ font-family:var(--hem-display); font-weight:500; font-size:clamp(2.6rem,5vw,4rem); line-height:1.06;
  color:#f6f2ea; max-width:16ch; margin:.26em auto .3em; text-align:center; }
.hem-hero .wp-block-heading .lit{ color:var(--hem-gold-bright); font-style:italic; }
.hem-hero .hem-eyebrow{ display:flex; justify-content:center; color:var(--hem-gold); }
.hem-hero .lead{ text-align:center; }
.hem-hero .wp-block-buttons{ justify-content:center; }
.hem-verse .heb{ display:block; text-align:center; font-size:1.5rem; color:var(--hem-gold-bright); margin-bottom:12px; }
.hem-verse .wp-block-quote{ border:none; padding:0; font-family:var(--hem-display); font-style:italic; font-size:2.2rem;
  line-height:1.3; color:#f4efe4; max-width:24ch; margin:0 auto; text-align:center; }
.hem-verse .wp-block-quote cite{ display:block; font-family:var(--hem-ui); font-style:normal; font-weight:700;
  letter-spacing:.18em; text-transform:uppercase; font-size:.72rem; color:var(--hem-gold); margin-top:18px; }
/* block-built light sections keep their inner width tidy */
.wp-block-group.hem-section,.wp-block-group.hem-makers{ max-width:1160px; margin-left:auto; margin-right:auto; }

/* ============================================================================
   OPTIONAL PARALLAX  (add class "hem-parallax", or pick the "Parallax stars"
   block style on a Group). Drifts the starfield; respects reduced-motion.
   ============================================================================ */
.hem-parallax{ position:relative; overflow:hidden; }
.hem-parallax-on::before{ display:none !important; }            /* hide the static star layer */
.hem-parallax-on > .hem-parallax-stars{
	position:absolute; left:0; right:0; top:-22%; height:144%;
	background-image:var(--hem-stars); background-size:cover; opacity:.85;
	pointer-events:none; z-index:0; transform:translate3d(0,var(--hem-py,0),0); will-change:transform; }
.hem-parallax-on > *:not(.hem-parallax-stars){ position:relative; z-index:2; }
@media (prefers-reduced-motion:reduce){
	.hem-parallax-on > .hem-parallax-stars{ transform:none !important; } }

/* ============================================================================
   SINGLE PRODUCT — desktop refinement (Amazon-style buy box) + Ask Shamash
   Mobile keeps the stacked layout; desktop gets a sticky boxed buy panel.
   ============================================================================ */
.single-product div.product .product_title{ font-size:1.95rem; line-height:1.16; margin:0 0 .35em; }
.single-product div.product .summary .price{ font-size:1.75rem; color:var(--hem-tekhelet); margin:.1em 0 .55em; display:block; }
.single-product div.product .summary .woocommerce-product-rating{ margin:0 0 .6em; }
.single-product div.product .summary .woocommerce-product-details__short-description{ color:var(--hem-ink-soft); font-size:.96rem; margin-bottom:1em; }
.single-product div.product .summary form.cart{ margin:.5em 0 .3em; display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.single-product div.product .summary .quantity input.qty{ height:48px; width:84px; border-radius:999px; text-align:center; font-weight:700; }
.single-product div.product .summary .single_add_to_cart_button{ flex:1 1 auto; min-width:180px; text-align:center; padding:.95em 1.4em !important; font-size:1rem !important; }
.single-product div.product .summary .product_meta{ margin-top:1em; padding-top:1em; border-top:1px solid var(--hem-line); font-size:.82rem; color:var(--hem-ink-soft); }

/* gallery thumbnails */
.single-product .woocommerce-product-gallery .flex-control-thumbs{ display:flex; gap:10px; margin:14px 0 0; padding:0; list-style:none; flex-wrap:wrap; }
.single-product .woocommerce-product-gallery .flex-control-thumbs li{ width:74px !important; margin:0 !important; }
.single-product .woocommerce-product-gallery .flex-control-thumbs img{ border-radius:var(--hem-radius-sm); border:1px solid var(--hem-line); opacity:.7; transition:.15s var(--hem-ease); }
.single-product .woocommerce-product-gallery .flex-control-thumbs img:hover,
.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active{ opacity:1; border-color:var(--hem-gold); }

@media (min-width:783px){
	.single-product div.product{ grid-template-columns:minmax(0,1.28fr) minmax(330px,.78fr); gap:42px; }
	.single-product div.product .woocommerce-product-gallery{ position:static; }
	.single-product div.product .summary.entry-summary{
		position:sticky; top:24px; background:var(--hem-card); border:1px solid var(--hem-line);
		border-radius:var(--hem-radius); padding:24px 24px 26px; box-shadow:var(--hem-shadow); align-self:start; }
}

/* description / additional info / reviews — full width, comfortable measure */
.single-product div.product .woocommerce-tabs{ grid-column:1 / -1; margin-top:46px; border-top:1px solid var(--hem-line); padding-top:30px; }
.single-product div.product .woocommerce-Tabs-panel{ max-width:840px; }
.single-product div.product #reviews{ max-width:840px; }
.single-product div.product .woocommerce-tabs .panel h2{ font-family:var(--hem-display); color:var(--hem-tekhelet); font-size:1.6rem; }
.single-product div.product .hem-more{ grid-column:1 / -1; }

/* ---- Ask Shamash (AI Q&A) ---- */
.hem-shamash{ grid-column:1 / -1; max-width:840px; margin:46px 0 0; background:var(--hem-card);
	border:1px solid var(--hem-line); border-radius:var(--hem-radius); padding:24px 26px 22px; box-shadow:var(--hem-shadow); }
.hem-shamash-head{ display:flex; align-items:center; gap:14px; margin-bottom:14px; }
.hem-shamash-ava{ width:46px; height:46px; flex:0 0 auto; border-radius:50%; display:grid; place-items:center;
	font-family:var(--hem-hebrew); font-weight:700; font-size:1.5rem; color:var(--hem-midnight);
	background:linear-gradient(150deg,var(--hem-gold-bright),var(--hem-gold-deep)); box-shadow:0 0 22px rgba(217,162,59,.45); }
.hem-shamash-head h2{ font-family:var(--hem-display); color:var(--hem-tekhelet); font-size:1.5rem; margin:0; }
.hem-shamash-head p{ margin:.1em 0 0; font-size:.86rem; color:var(--hem-ink-soft); }
.hem-shamash-log{ display:flex; flex-direction:column; gap:10px; max-height:340px; overflow-y:auto; margin-bottom:14px; }
.hem-shamash-log:empty{ display:none; }
.hem-bub{ padding:.7em 1em; border-radius:14px; font-size:.92rem; line-height:1.5; max-width:88%; }
.hem-bub-you{ align-self:flex-end; background:var(--hem-tekhelet); color:#fff; border-bottom-right-radius:4px; }
.hem-bub-bot{ align-self:flex-start; background:var(--hem-stone); color:var(--hem-ink); border-bottom-left-radius:4px; }
.hem-bub-typing{ color:var(--hem-ink-soft); font-style:italic; }
.hem-shamash-form{ display:flex; gap:10px; }
.hem-shamash-input{ flex:1 1 auto; height:48px; border:1px solid var(--hem-line) !important; border-radius:999px !important;
	background:#fff !important; padding:0 18px !important; font-family:var(--hem-ui); font-size:.95rem; }
.hem-shamash-input:focus{ border-color:var(--hem-gold) !important; box-shadow:0 0 0 3px rgba(217,162,59,.18) !important; outline:none; }
.hem-shamash-send{ flex:0 0 auto; border:none; border-radius:999px; padding:0 1.5em; height:48px; cursor:pointer;
	font-family:var(--hem-ui); font-weight:700; background:var(--hem-gold); color:var(--hem-midnight);
	transition:transform .15s var(--hem-ease),background .15s var(--hem-ease),box-shadow .15s var(--hem-ease); }
.hem-shamash-send:hover{ background:var(--hem-gold-bright); transform:translateY(-2px); box-shadow:var(--hem-glow); }
.hem-shamash-send:disabled{ opacity:.6; cursor:default; transform:none; box-shadow:none; }
.hem-shamash-chips{ display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.hem-chip{ border:1px solid var(--hem-line); background:#fff; color:var(--hem-tekhelet); border-radius:999px;
	padding:.4em .9em; font-family:var(--hem-ui); font-size:.8rem; cursor:pointer; transition:.15s var(--hem-ease); }
.hem-chip:hover{ border-color:var(--hem-gold); background:rgba(217,162,59,.08); }
.hem-shamash-fine{ margin:14px 0 0; font-size:.72rem; color:var(--hem-ink-soft); }

/* ============================================================================
   PDP v2 — Amazon-style 3-column product page (template: content-single-product)
   media(gallery+Ezer) | center(brand,title,rating,price,highlights) | buy box
   Reflows to a single ordered column on mobile via display:contents + order.
   ============================================================================ */
.single-product div.product{ display:block !important; }        /* PDP grid takes over */

.hem-pdp{ display:flex; flex-direction:column; gap:22px; }
.hem-el-media{ display:contents; }
.hem-el-center{ display:contents; }
/* neutralise the older summary-card styling on the center column */
.single-product div.product .hem-el-center.summary.entry-summary{
	position:static !important; background:none !important; border:none !important;
	padding:0 !important; box-shadow:none !important; margin:0 !important; }

/* mobile order: rating, brand, title, pictures, price, buy box, highlights, meta, Ezer */
.hem-el-rating{ order:1; margin:0 0 .35em; }
.hem-el-brand{ order:2; }
.hem-el-title{ order:3; }
.hem-el-gallery{ order:4; }
.hem-el-price{ order:5; }
.hem-el-buybox{ order:6; }
.hem-el-excerpt{ order:7; }
.hem-el-meta{ order:8; }
.hem-el-ezer{ order:9; }

.hem-el-title .product_title{ margin:0 0 .2em; font-size:1.9rem; line-height:1.15; }
.hem-el-price .price{ font-size:1.9rem !important; color:var(--hem-tekhelet) !important; font-weight:800; display:block; margin:.1em 0 .2em; }
.hem-el-excerpt{ color:var(--hem-ink-soft); font-size:.96rem; }
.hem-el-meta .product_meta{ font-size:.82rem; color:var(--hem-ink-soft); border-top:1px solid var(--hem-line); padding-top:1em; margin-top:.5em; }
.hem-el-brand .hem-vendor-card{ margin:0 0 4px; }

/* buy box */
.hem-el-buybox{ background:var(--hem-card); border:1px solid var(--hem-line); border-radius:var(--hem-radius);
	padding:22px; box-shadow:var(--hem-shadow); }
.hem-el-buybox form.cart{ margin:0; }
.hem-el-buybox .quantity{ display:inline-block; margin:0 0 12px; }
.hem-el-buybox .quantity input.qty{ width:96px; height:48px; border-radius:999px; text-align:center; font-weight:700; }
.hem-el-buybox .single_add_to_cart_button{ display:block; width:100%; text-align:center; margin-top:4px;
	padding:.95em 1.2em !important; font-size:1rem !important; }
.hem-el-buybox .hem-trust{ margin-top:16px; }
/* variation selectors stack cleanly in the narrow buy box */
.hem-el-buybox table.variations{ width:100%; margin:0 0 12px; }
.hem-el-buybox table.variations tbody,
.hem-el-buybox table.variations tr{ display:block; }
.hem-el-buybox table.variations th,
.hem-el-buybox table.variations td{ display:block; width:100%; padding:0 0 4px; text-align:left; }
.hem-el-buybox table.variations select{ width:100%; height:46px; border:1px solid var(--hem-line);
	border-radius:10px; background:#fff; padding:0 12px; font-family:var(--hem-ui); }
.hem-el-buybox .reset_variations{ display:inline-block; margin:2px 0 10px; font-size:.8rem; color:var(--hem-ink-soft); }
.hem-el-buybox .woocommerce-variation-price .price{ font-size:1.5rem !important; margin-bottom:10px; }

/* Ask Ezer sits under the gallery in the media column */
.hem-el-ezer .hem-shamash{ margin-top:0; max-width:none; }

/* full-width description / specifications / reviews */
.hem-pdp-below{ margin-top:44px; border-top:1px solid var(--hem-line); padding-top:30px; }
.hem-pdp-below .woocommerce-Tabs-panel{ max-width:860px; }
.hem-pdp-below #reviews{ max-width:860px; }

/* hide any leftover WCFM inquiry / "ask a question" button (Ezer replaces it) */
.wcfm_enquiry_button, .wcfmmp_enquiry_button, .wcfm-enquiry-btn, a.wcfmmp-enquiry-button,
.wcfm_catalog_enquiry_button, .wcfmmp-store-enquiry, .woocommerce-product-enquiry,
.wcfm_product_enquiry, .wcfmmp_enquiry_tab_btn, .enquiry_button{ display:none !important; }

/* desktop: three columns */
@media (min-width:900px){
	.hem-pdp{ display:grid; align-items:start; gap:40px;
		grid-template-columns:minmax(0,1fr) minmax(0,1.12fr) minmax(280px,.72fr);
		grid-template-areas:"media center buybox"; }
	.hem-el-media{ display:flex; flex-direction:column; gap:24px; grid-area:media; }
	.hem-el-center{ display:block; grid-area:center; }
	.hem-el-buybox{ grid-area:buybox; position:sticky; top:24px; }
	.hem-el-title .product_title{ font-size:2rem; }
}

/* AI authoring fields on the PDP */
.hem-brand-line{ font-family:var(--hem-ui); font-size:.72rem; letter-spacing:.14em; text-transform:uppercase;
	color:var(--hem-gold-deep); font-weight:700; margin:0 0 6px; }
.hem-highlights{ list-style:none; margin:12px 0 0; padding:0; }
.hem-highlights li{ position:relative; padding-left:20px; margin:6px 0; color:var(--hem-ink); font-size:.92rem; line-height:1.5; }
.hem-highlights li::before{ content:""; position:absolute; left:2px; top:.62em; width:7px; height:7px; border-radius:50%; background:var(--hem-gold); }

/* Ask Ezer now sits below the description, above reviews */
.hem-pdp-below .hem-shamash{ margin:40px 0 0; }
.hem-reviews{ max-width:860px; margin-top:44px; border-top:1px solid var(--hem-line); padding-top:30px; }

/* ============================================================================
   MAKER PAGE — custom WCFM store header
   ============================================================================ */
.hem-makerpage{ margin:0 0 30px; }
.hem-maker-banner{ height:230px; border-radius:var(--hem-radius); background:linear-gradient(135deg,var(--hem-midnight),var(--hem-tekhelet));
	background-size:cover; background-position:center; position:relative; box-shadow:var(--hem-shadow); }
.hem-maker-banner::after{ content:""; position:absolute; inset:0; border-radius:var(--hem-radius);
	background:linear-gradient(180deg,rgba(12,26,54,.15),rgba(12,26,54,.55)); }
.hem-maker-head{ display:flex; align-items:flex-end; gap:24px; margin:-64px 0 0; padding:0 8px; position:relative; z-index:2; }
.hem-maker-photo{ flex:0 0 auto; width:150px; height:150px; border-radius:50%; overflow:hidden;
	border:5px solid var(--hem-card); box-shadow:0 10px 30px rgba(12,26,54,.28); background:var(--hem-stone); }
.hem-maker-photo img{ width:100%; height:100%; object-fit:cover; display:block; }
.hem-maker-id{ padding-bottom:8px; }
.hem-maker-brand{ font-family:var(--hem-ui); font-size:.74rem; letter-spacing:.16em; text-transform:uppercase;
	color:var(--hem-gold-deep); font-weight:700; margin-bottom:3px; }
.hem-maker-name{ font-family:var(--hem-display); color:var(--hem-tekhelet); font-size:2.3rem; line-height:1.1; margin:0; }
.hem-maker-loc{ color:var(--hem-ink-soft); font-size:.9rem; margin-top:4px; }
.hem-maker-shop{ display:inline-block; margin-top:12px; background:var(--hem-gold); color:var(--hem-midnight) !important;
	font-family:var(--hem-ui); font-weight:700; padding:.6em 1.4em; border-radius:999px; text-decoration:none;
	transition:transform .15s var(--hem-ease),box-shadow .15s var(--hem-ease),background .15s var(--hem-ease); }
.hem-maker-shop:hover{ background:var(--hem-gold-bright); transform:translateY(-2px); box-shadow:var(--hem-glow); }

.hem-maker-about-grid{ display:grid; grid-template-columns:1fr 1fr; gap:24px; margin:32px 0 0; }
.hem-maker-about{ background:var(--hem-card); border:1px solid var(--hem-line); border-radius:var(--hem-radius);
	padding:22px 24px; box-shadow:var(--hem-shadow); }
.hem-maker-about h2{ font-family:var(--hem-display); color:var(--hem-tekhelet); font-size:1.4rem; margin:0 0 .4em;
	padding-bottom:.3em; border-bottom:2px solid var(--hem-gold); display:inline-block; }
.hem-maker-about p{ color:var(--hem-ink); font-size:.96rem; line-height:1.6; margin:0 0 .8em; }

.hem-maker-products-head{ display:flex; align-items:baseline; justify-content:space-between; gap:16px;
	margin:40px 0 4px; padding-bottom:12px; border-bottom:1px solid var(--hem-line); }
.hem-maker-products-head h2{ font-family:var(--hem-display); color:var(--hem-tekhelet); font-size:1.6rem; margin:0; }
.hem-maker-viewall{ font-family:var(--hem-ui); font-weight:700; color:var(--hem-gold-deep); text-decoration:none; white-space:nowrap; }
.hem-maker-viewall:hover{ color:var(--hem-gold); }

@media (max-width:781px){
	.hem-maker-head{ flex-direction:column; align-items:center; text-align:center; margin-top:-70px; }
	.hem-maker-about-grid{ grid-template-columns:1fr; }
	.hem-maker-name{ font-size:1.9rem; }
	.hem-maker-products-head{ flex-direction:column; align-items:flex-start; gap:4px; }
}

/* Maker page — brand mark (single) + brand cards (multiple) */
.hem-maker-brandmark{ display:flex; align-items:center; gap:10px; margin-bottom:4px; }
.hem-brandmark-img{ height:34px; width:auto; max-width:120px; object-fit:contain; background:#fff;
	border:1px solid var(--hem-line); border-radius:8px; padding:3px 6px; }
.hem-maker-brandmark .hem-maker-brand{ margin:0; }

.hem-maker-brands{ margin:36px 0 0; }
.hem-maker-brands h2{ font-family:var(--hem-display); color:var(--hem-tekhelet); font-size:1.5rem; margin:0 0 16px; }
.hem-brand-cards{ display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:16px; }
.hem-brand-card{ display:flex; flex-direction:column; align-items:center; gap:12px; text-decoration:none;
	background:var(--hem-card); border:1px solid var(--hem-line); border-radius:var(--hem-radius); padding:22px 16px;
	box-shadow:var(--hem-shadow); transition:transform .18s var(--hem-ease),box-shadow .18s var(--hem-ease),border-color .18s var(--hem-ease); }
.hem-brand-card:hover{ transform:translateY(-4px); box-shadow:var(--hem-shadow-lift); border-color:var(--hem-gold); }
.hem-brand-card img{ height:70px; width:auto; max-width:100%; object-fit:contain; }
.hem-brand-initial{ height:70px; width:70px; border-radius:50%; display:grid; place-items:center;
	font-family:var(--hem-display); font-weight:700; font-size:1.9rem; color:var(--hem-midnight);
	background:linear-gradient(150deg,var(--hem-gold-bright),var(--hem-gold-deep)); }
.hem-brand-cardname{ font-family:var(--hem-ui); font-weight:700; color:var(--hem-tekhelet); text-align:center; }

/* ============================================================
   Maker page v2 — vertical stack:
   banner (WCFM) → photo → About the Maker (full width) →
   brand logo + name → About the Brand (full width) → products
   ============================================================ */
.hem-makerpage{ max-width:1100px; margin:0 auto 44px; }

/* Centered header; only the photo overlaps the banner (no text on banner) */
.hem-maker-head{ display:flex; flex-direction:column; align-items:center; text-align:center; margin:0 0 6px; }
.hem-maker-photo{ width:150px; height:150px; margin:-64px 0 16px; }
.hem-maker-photo img{ width:100%; height:100%; object-fit:cover; border-radius:50%;
	border:5px solid var(--hem-card); box-shadow:var(--hem-shadow-lift); background:var(--hem-card); }
.hem-maker-name{ font-family:var(--hem-display); color:var(--hem-tekhelet); font-weight:700;
	font-size:2.1rem; line-height:1.1; margin:0 0 6px; }
.hem-maker-loc{ font-family:var(--hem-ui); color:var(--hem-ink-soft); font-size:.95rem; margin:0 0 16px; }
.hem-maker-shop{ display:inline-block; text-decoration:none; font-family:var(--hem-ui); font-weight:700;
	color:var(--hem-midnight); background:linear-gradient(150deg,var(--hem-gold-bright),var(--hem-gold-deep));
	padding:11px 26px; border-radius:999px; box-shadow:var(--hem-shadow);
	transition:transform .16s var(--hem-ease),box-shadow .16s var(--hem-ease); }
.hem-maker-shop:hover{ transform:translateY(-2px); box-shadow:var(--hem-shadow-lift); color:var(--hem-midnight); }

/* Full-width stacked sections */
.hem-maker-section{ background:var(--hem-card); border:1px solid var(--hem-line); border-radius:var(--hem-radius);
	box-shadow:var(--hem-shadow); padding:30px 34px; margin:22px 0 0; }
.hem-maker-section > h2{ font-family:var(--hem-display); color:var(--hem-tekhelet); font-weight:700;
	font-size:1.7rem; margin:0 0 14px; padding-bottom:10px; border-bottom:2px solid var(--hem-gold); display:inline-block; }
.hem-maker-section p{ font-family:var(--hem-ui); color:var(--hem-ink); line-height:1.75; margin:0 0 12px; }
.hem-maker-section p:last-child{ margin-bottom:0; }

/* Brand block — centered logo + name */
.hem-brandblock{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:16px; }
.hem-brandblock .hem-brandblock-logo{ max-width:240px; max-height:120px; width:auto; height:auto; object-fit:contain; }
.hem-brandblock-name{ font-family:var(--hem-display); color:var(--hem-tekhelet); font-weight:700; font-size:1.8rem; }
.hem-maker-brands.hem-maker-section > h2{ display:block; text-align:center; border-bottom:0; }

@media (max-width:600px){
	.hem-maker-section{ padding:24px 20px; }
	.hem-maker-name{ font-size:1.8rem; }
}

/* Brand block v2 — no card; small name above the logo */
.hem-brandblock{ background:none; border:0; box-shadow:none; padding:0; margin:30px 0 0;
	display:flex; flex-direction:column; align-items:center; text-align:center; gap:10px; }
.hem-brandblock .hem-brandblock-name{ font-family:var(--hem-ui); font-weight:700; font-size:.82rem;
	letter-spacing:.14em; color:var(--hem-gold-deep); }
.hem-brandblock .hem-brandblock-logo{ max-width:260px; max-height:130px; width:auto; height:auto; object-fit:contain; }

/* Shop-all button, centered at the bottom below About the Brand */
.hem-maker-shopwrap{ text-align:center; margin:30px 0 4px; }
.hem-maker-shopwrap .hem-maker-shop{ display:inline-block; text-decoration:none; font-family:var(--hem-ui);
	font-weight:700; color:var(--hem-midnight); background:linear-gradient(150deg,var(--hem-gold-bright),var(--hem-gold-deep));
	padding:13px 34px; border-radius:999px; box-shadow:var(--hem-shadow); font-size:1.02rem;
	transition:transform .16s var(--hem-ease),box-shadow .16s var(--hem-ease); }
.hem-maker-shopwrap .hem-maker-shop:hover{ transform:translateY(-2px); box-shadow:var(--hem-shadow-lift); color:var(--hem-midnight); }

/* ============================================================
   Maker page v3 tweaks + maker cards + product-card brand
   ============================================================ */
/* Header: photo bottom-left of banner, name to its right */
.hem-maker-head{ display:flex; flex-direction:row; align-items:flex-end; justify-content:flex-start;
	text-align:left; gap:22px; margin:0 0 10px; }
.hem-maker-photo{ width:150px; height:150px; margin:-64px 0 0; flex:0 0 auto; }
.hem-maker-idcol{ padding-bottom:8px; }
.hem-maker-idcol .hem-maker-name{ text-align:left; margin:0 0 4px; }
.hem-maker-idcol .hem-maker-loc{ text-align:left; margin:0; }

/* About the Brand: logo floated left, text wraps right and below */
.hem-aboutbrand{ overflow:hidden; }            /* contain the float */
.hem-aboutbrand-logo{ float:left; max-width:150px; max-height:150px; width:auto; height:auto;
	object-fit:contain; margin:0 24px 12px 0; }
.hem-aboutbrand h2{ display:block; width:-moz-fit-content; width:fit-content; }

/* Meet-the-makers cards: About Me photo + brand-name link only */
.hem-maker .hem-ava{ overflow:hidden; padding:0; display:block; }
.hem-maker .hem-ava img{ width:100%; height:100%; object-fit:cover; border-radius:50%; display:block; }

/* Product card: brand name at the bottom (replaces WCFM sold-by) */
.hem-loop-brand{ font-family:var(--hem-ui); font-size:.74rem; font-weight:700; letter-spacing:.12em;
	text-transform:uppercase; color:var(--hem-gold-deep); margin:6px 0 2px; text-align:center; }
.wcfmmp_sold_by_logo, .wcfmmp_sold_by_container .wcfmmp_sold_by_logo{ display:none !important; }

@media (max-width:600px){
	.hem-maker-head{ gap:16px; }
	.hem-maker-photo{ width:120px; height:120px; margin-top:-50px; }
	.hem-aboutbrand-logo{ max-width:110px; margin-right:16px; }
}

/* Policy tab content (Shipping Policy / Return Policy) */
.hem-policy h2{ font-family:var(--hem-display); color:var(--hem-tekhelet); font-size:1.5rem; margin:0 0 12px; }
.hem-policy h3{ font-family:var(--hem-display); color:var(--hem-tekhelet); font-size:1.18rem; margin:20px 0 8px; }
.hem-policy h4{ font-family:var(--hem-ui); color:var(--hem-gold-deep); font-weight:700; font-size:.92rem; letter-spacing:.04em; text-transform:uppercase; margin:18px 0 8px; }
.hem-policy p{ line-height:1.7; margin:0 0 12px; }
.hem-policy ul{ margin:0 0 12px 1.2em; }
.hem-policy li{ margin:5px 0; line-height:1.6; }
.hem-policy table{ border-collapse:collapse; width:100%; margin:0 0 16px; font-size:.94rem; }
.hem-policy th, .hem-policy td{ border:1px solid var(--hem-line); padding:8px 11px; text-align:left; vertical-align:top; }
.hem-policy th{ background:rgba(217,162,59,.10); color:var(--hem-tekhelet); font-family:var(--hem-ui); }

/* ============================================================
   Ezer — store-wide customer-service widget (home page)
   ============================================================ */
.hem-ezsup{ max-width:840px; margin:60px auto; padding:0 20px; }
.hem-ezsup-card{ background:linear-gradient(160deg,var(--hem-midnight),var(--hem-tekhelet)); border-radius:var(--hem-radius);
	box-shadow:var(--hem-shadow-lift); padding:26px 26px 22px; color:#eef2f8; position:relative; overflow:hidden; }
.hem-ezsup-head{ display:flex; align-items:center; gap:14px; margin-bottom:16px; }
.hem-ezsup-ava{ width:46px; height:46px; border-radius:50%; display:grid; place-items:center; flex:0 0 auto;
	font-family:var(--hem-hebrew); font-size:1.5rem; color:var(--hem-midnight);
	background:linear-gradient(150deg,var(--hem-gold-bright),var(--hem-gold-deep)); box-shadow:0 6px 18px rgba(238,192,106,.3); }
.hem-ezsup-title{ font-family:var(--hem-display); color:#fff; font-size:1.45rem; margin:0; font-weight:700; }
.hem-ezsup-sub{ font-family:var(--hem-ui); color:var(--hem-mist); font-size:.9rem; margin:2px 0 0; }
.hem-ezsup-log{ background:rgba(255,255,255,.05); border:1px solid rgba(238,192,106,.16); border-radius:12px;
	padding:14px; max-height:380px; overflow-y:auto; display:flex; flex-direction:column; gap:10px; }
.hem-ezsup-msg{ display:flex; }
.hem-ezsup-you{ justify-content:flex-end; }
.hem-ezsup-bubble{ max-width:82%; padding:10px 14px; border-radius:14px; font-family:var(--hem-ui);
	font-size:.95rem; line-height:1.5; white-space:pre-wrap; word-wrap:break-word; }
.hem-ezsup-ezer .hem-ezsup-bubble{ background:rgba(255,255,255,.10); color:#eef2f8;
	border:1px solid rgba(238,192,106,.18); border-top-left-radius:4px; }
.hem-ezsup-you .hem-ezsup-bubble{ background:linear-gradient(150deg,var(--hem-gold-bright),var(--hem-gold-deep));
	color:var(--hem-midnight); font-weight:600; border-top-right-radius:4px; }
.hem-ezsup-typing .hem-ezsup-bubble{ letter-spacing:.15em; opacity:.75; }
.hem-ezsup-form{ display:flex; gap:10px; margin-top:14px; }
.hem-ezsup-input{ flex:1; padding:12px 16px; border-radius:999px; border:1px solid rgba(238,192,106,.28);
	background:rgba(255,255,255,.96); color:var(--hem-ink); font-family:var(--hem-ui); font-size:.95rem; }
.hem-ezsup-input:focus{ outline:none; border-color:var(--hem-gold-bright); box-shadow:0 0 0 3px rgba(238,192,106,.25); }
.hem-ezsup-send{ padding:12px 26px; border:0; border-radius:999px; cursor:pointer; font-family:var(--hem-ui);
	font-weight:700; color:var(--hem-midnight); background:linear-gradient(150deg,var(--hem-gold-bright),var(--hem-gold-deep));
	transition:transform .16s var(--hem-ease); }
.hem-ezsup-send:hover{ transform:translateY(-2px); }
.hem-ezsup-send:disabled{ opacity:.6; cursor:default; transform:none; }
@media (max-width:600px){
	.hem-ezsup-card{ padding:20px 16px; }
	.hem-ezsup-bubble{ max-width:88%; }
	.hem-ezsup-send{ padding:12px 18px; }
}

/* Ezer support — human-verification bits */
.hem-ezsup-hp{ position:absolute !important; left:-9999px !important; top:auto; width:1px; height:1px; opacity:0; overflow:hidden; pointer-events:none; }
.hem-ezsup-ts{ margin-top:12px; display:flex; justify-content:center; }

/* Vendor registration — scroll-to-accept Terms box */
.hem-terms-gate{ max-height:280px; overflow-y:auto; border:1px solid var(--hem-line); background:var(--hem-card);
	border-radius:12px; padding:16px 20px; margin:0 0 12px; color:var(--hem-ink); font-family:var(--hem-ui);
	box-shadow:inset 0 -20px 22px -20px rgba(12,26,54,.18); }
.hem-terms-gate h2{ font-family:var(--hem-display); color:var(--hem-tekhelet); font-size:1.35rem; margin:0 0 10px; }
.hem-terms-gate h3{ font-family:var(--hem-display); color:var(--hem-tekhelet); font-size:1.05rem; margin:16px 0 6px; }
.hem-terms-gate p, .hem-terms-gate li{ font-size:.9rem; line-height:1.6; }
.hem-terms-gate hr{ border:0; border-top:1px solid var(--hem-line); margin:14px 0; }
.hem-terms-note{ font-family:var(--hem-ui); font-size:.9rem; font-weight:700; color:var(--hem-gold-deep); margin:0 0 12px; }
.hem-terms-note.ok{ color:#2e7d32; }
input[type=checkbox][data-hem-gated]:disabled{ opacity:.5; cursor:not-allowed; }

/* Footer legal links */
.hem-foot-legal{ display:inline; }
.hem-foot-legal a{ color:var(--hem-mist); text-decoration:none; }
.hem-foot-legal a:hover{ color:var(--hem-gold-bright); text-decoration:underline; }
.hem-foot-legal .sep{ opacity:.5; margin:0 2px; }

/* Agreement checkbox (registration + checkout) */
.hem-agree{ display:flex; align-items:flex-start; gap:9px; margin:12px 0; font-family:var(--hem-ui); font-size:.92rem; line-height:1.5; }
.hem-agree label{ display:flex; align-items:flex-start; gap:9px; cursor:pointer; }
.hem-agree input[type=checkbox]{ margin-top:3px; flex:0 0 auto; accent-color:var(--hem-gold-deep); }
.hem-agree a{ color:var(--hem-tekhelet); font-weight:700; text-decoration:underline; }
.hem-agree-checkout{ padding:12px 14px; border:1px solid var(--hem-line); border-radius:10px; background:var(--hem-card); }
