/* =========================================================================
   HAXOLE HOUSE — stylesheet
   Written in one pass, in this order:
   1 tokens · 2 base · 3 buttons & forms · 4 header · 5 footer
   6 product cards · 7 shop & category · 8 single product · 9 cart & checkout
   10 account · 11 blog · 12 plugins · 13 responsive
   ========================================================================= */

/* ---------------------------------------------------------------- 1 tokens */
:root{
  /* brand */
  --hx-ink:        var(--e-global-color-primary,   #16130F);
  --hx-brand:      var(--e-global-color-accent,    #C2410C);
  --hx-muted:      var(--e-global-color-secondary, #6E675D);
  --hx-text:       var(--e-global-color-text,      #443F38);

  --hx-brand-dark:#9A3412;
  --hx-amber:#B07A5B;
  --hx-amber-soft:#F6E9E1;
  --hx-green:#0E9F6E;

  --hx-surface:#F7F3EC;
  --hx-surface-2:#EFE9DE;
  --hx-line:#E6DFD2;
  --hx-line-soft:#EFEADF;
  --hx-white:#FFFFFF;

  /* type */
  --hx-display:var(--e-global-typography-primary-font-family,"Fraunces"),"Avenir Next",system-ui,sans-serif;
  --hx-body:var(--e-global-typography-text-font-family,"Manrope"),"Helvetica Neue",system-ui,sans-serif;

  /* shape */
  --hx-r-sm:3px;
  --hx-r:6px;
  --hx-r-lg:10px;
  --hx-pill:999px;

  /* depth */
  --hx-shadow-1:0 1px 2px rgba(22,19,15,.04);
  --hx-shadow-2:0 10px 30px -18px rgba(22,19,15,.35);
  --hx-shadow-3:0 22px 48px -24px rgba(22,19,15,.35);

  --hx-ease:cubic-bezier(.2,.8,.2,1);
}

/* ------------------------------------------------------------------ 2 base */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--hx-white);color:var(--hx-text);
  font-family:var(--hx-body);font-size:16px;line-height:1.65;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img,svg,video{display:block;max-width:100%;height:auto}
h1,h2,h3,h4,.elementor-heading-title{
  font-family:var(--hx-display);color:var(--hx-ink);letter-spacing:-.02em;line-height:1.15;margin:0;
}
h1{font-weight:700}h2,h3{font-weight:600}
h5,h6{font-family:var(--hx-body);font-weight:600;color:var(--hx-ink);margin:0}
p{margin:0 0 1em}
a{color:var(--hx-ink);text-decoration:none;transition:color .2s ease}
a:hover{color:var(--hx-brand)}
:focus-visible{outline:2px solid var(--hx-brand);outline-offset:3px;border-radius:4px}
::selection{background:var(--hx-brand);color:#fff}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* eyebrow labels */
.hx-eyebrow p{
  margin:0;color:var(--hx-brand)!important;font-family:var(--hx-body);
  font-size:12px!important;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
}
/* section heading underline */
.hx-sec-head .elementor-heading-title::after{
  content:"";display:block;width:46px;height:3px;border-radius:3px;
  background:var(--hx-brand);margin-top:14px;
}

/* --------------------------------------------------- 3 buttons and forms */
.elementor-button,.hx-btn .elementor-button,
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce #respond input#submit,.woocommerce a.button.alt,
.woocommerce button.button.alt,.wc-block-components-button{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-family:var(--hx-body)!important;font-weight:600!important;font-size:14.5px!important;
  line-height:1.2;letter-spacing:.01em;text-transform:none;
  padding:15px 28px;border-radius:var(--hx-r-sm)!important;
  background:var(--hx-ink);color:#fff;border:1px solid var(--hx-ink);
  box-shadow:var(--hx-shadow-1);cursor:pointer;
  transition:background .22s var(--hx-ease),border-color .22s,color .22s,transform .18s,box-shadow .22s;
}
.elementor-button:hover,.hx-btn .elementor-button:hover,
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,.wc-block-components-button:hover{
  background:var(--hx-brand)!important;border-color:var(--hx-brand)!important;color:#fff!important;
  transform:translateY(-2px);box-shadow:var(--hx-shadow-2);
}
.elementor-button:active,.woocommerce .button:active{transform:translateY(0)}
.woocommerce .button.disabled,.woocommerce .button:disabled{opacity:.45;box-shadow:none;transform:none}

input[type="text"],input[type="email"],input[type="search"],input[type="tel"],
input[type="number"],input[type="password"],textarea,select,
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,
.woocommerce form .form-row select,.select2-container--default .select2-selection--single{
  width:100%;min-height:50px;padding:12px 16px;
  font-family:var(--hx-body);font-size:15px;color:var(--hx-ink);
  background:var(--hx-white);border:1px solid var(--hx-line)!important;
  border-radius:var(--hx-r-sm)!important;box-shadow:none!important;transition:border-color .2s,box-shadow .2s;
}
input:focus,textarea:focus,select:focus{
  outline:none;border-color:var(--hx-brand)!important;box-shadow:0 0 0 3px rgba(194,65,12,.12)!important;
}
label{font-family:var(--hx-body);font-size:14px;font-weight:500;color:var(--hx-text)}

/* ---------------------------------------------------------------- 4 header */
.hx-announce{background:var(--hx-ink)}
.hx-announce-text p{
  margin:0;color:#D8CFBF!important;font-size:12.5px!important;letter-spacing:.06em;
}
.hx-announce-text strong{color:#fff}
.hx-header{position:sticky;top:0;z-index:99;background:rgba(250,247,242,.94);backdrop-filter:blur(12px)}
.hx-header-bar{border-bottom:1px solid var(--hx-line-soft)}
.hx-logo img,.custom-logo{max-height:60px!important;width:auto!important;object-fit:contain}
.hx-head-search input[type="search"]{
  min-height:46px;background:var(--hx-surface);border:1px solid transparent!important;border-radius:var(--hx-pill)!important;
}
.hx-head-search input[type="search"]:focus{background:#fff;border-color:var(--hx-line)!important}
.hx-head-icon .elementor-icon{
  width:42px;height:42px;border-radius:var(--hx-pill);display:grid;place-items:center;
  color:var(--hx-ink);transition:background .2s,color .2s;
}
.hx-head-icon .elementor-icon:hover{background:var(--hx-surface);color:var(--hx-brand)}

/* department bar */
.hx-deps-bar{border-bottom:1px solid var(--hx-line-soft);background:#fff}
.hx-deps .elementor-nav-menu--main .elementor-item{
  font-family:var(--hx-body);font-size:15px;font-weight:500;color:var(--hx-text);
  padding:16px 16px!important;
}
.hx-deps .elementor-nav-menu--main .elementor-item:hover,
.hx-deps .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var(--hx-brand)}
.hx-deps .elementor-nav-menu--main .elementor-item::after,
.hx-deps .elementor-nav-menu--main .elementor-item::before{background-color:var(--hx-brand)!important}
/* dropdown / mega */
.hx-deps .elementor-nav-menu--dropdown{
  border:1px solid var(--hx-line);border-top:0;border-radius:0 0 var(--hx-r) var(--hx-r);
  box-shadow:var(--hx-shadow-3);overflow:hidden;
}
.hx-deps .elementor-nav-menu--dropdown a.elementor-sub-item{
  font-size:14.5px;padding:13px 22px!important;color:var(--hx-text);
}
.hx-deps .elementor-nav-menu--dropdown a.elementor-sub-item:hover{background:var(--hx-surface);color:var(--hx-brand)}

/* cart button */
.elementor-menu-cart__toggle .elementor-button{
  background:var(--hx-ink)!important;color:#fff!important;border:1px solid var(--hx-ink)!important;
  border-radius:var(--hx-pill)!important;padding:11px 20px!important;font-weight:600;box-shadow:var(--hx-shadow-1);
}
.elementor-menu-cart__toggle .elementor-button:hover{
  background:var(--hx-brand)!important;border-color:var(--hx-brand)!important;
}
.elementor-menu-cart__toggle .elementor-button-icon,
.elementor-menu-cart__toggle .elementor-button-text{color:#fff!important}
.elementor-menu-cart__toggle .elementor-button-icon-qty{
  background:var(--hx-amber)!important;color:var(--hx-ink)!important;font-weight:700;
}
.elementor-menu-cart__footer-buttons .elementor-button{border-radius:var(--hx-r-sm)!important;font-weight:600}
.elementor-menu-cart__footer-buttons .elementor-button--view-cart{
  background:#fff!important;color:var(--hx-ink)!important;border:1px solid var(--hx-line)!important;
}
.elementor-menu-cart__footer-buttons .elementor-button--checkout{background:var(--hx-brand)!important;border-color:var(--hx-brand)!important;color:#fff!important}
.elementor-menu-cart__footer-buttons .elementor-button:hover{background:var(--hx-ink)!important;border-color:var(--hx-ink)!important;color:#fff!important}

/* ---------------------------------------------------------------- 5 footer */
.hx-footer{background:var(--hx-surface);border-top:1px solid var(--hx-line)}
.hx-footer .elementor-heading-title{
  font-family:var(--hx-body);font-size:12.5px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--hx-muted);
}
.hx-footer .elementor-nav-menu .elementor-item{
  padding:7px 0!important;font-size:15px;color:var(--hx-text);
}
.hx-footer .elementor-nav-menu .elementor-item:hover{color:var(--hx-brand)!important}
.hx-footer a{color:var(--hx-text)}
.hx-footer a:hover{color:var(--hx-brand)}
.hx-social a{
  border:1px solid var(--hx-line)!important;background:#fff!important;border-radius:var(--hx-pill)!important;
  transition:background .2s,border-color .2s,transform .2s;
}
.hx-social a:hover{background:var(--hx-brand)!important;border-color:var(--hx-brand)!important;transform:translateY(-2px)}
.hx-social a i,.hx-social a svg{color:var(--hx-ink)}
.hx-social a:hover i,.hx-social a:hover svg{color:#fff}
.hx-foot-bottom{border-top:1px solid var(--hx-line)}
.hx-foot-bottom p{color:var(--hx-muted);font-size:13.5px}

/* --------------------------------------------------------- 6 product cards */
.woocommerce ul.products,
.hx-grid ul.products{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:30px 26px;margin:0!important;padding:0;list-style:none;align-items:stretch;
}
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none!important;display:none!important}
.woocommerce ul.products li.product{
  position:relative;display:flex!important;flex-direction:column;height:100%;
  width:100%!important;margin:0!important;float:none!important;text-align:left;
  background:#fff;border:1px solid var(--hx-line);border-radius:var(--hx-r);
  padding:14px 14px 18px;box-shadow:var(--hx-shadow-1);
  transition:transform .3s var(--hx-ease),box-shadow .3s,border-color .3s;
}
.woocommerce ul.products li.product:hover{
  transform:translateY(-6px);box-shadow:var(--hx-shadow-3);border-color:#D8CFBF;
}
/* image sits in its own bordered box */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1 1 auto}
.woocommerce ul.products li.product img{
  aspect-ratio:1/1;object-fit:contain;width:100%;
  background:var(--hx-surface);border:1px solid var(--hx-line-soft);border-radius:var(--hx-r-sm);
  padding:16px;margin:0 0 16px!important;
  transition:transform .45s var(--hx-ease),background .3s;
}
.woocommerce ul.products li.product:hover img{transform:scale(1.04);background:var(--hx-surface-2)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--hx-body)!important;font-size:14.5px!important;font-weight:600;line-height:1.5;
  color:var(--hx-ink);margin:0 0 8px;padding:0!important;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:3em;
}
.woocommerce ul.products li.product:hover .woocommerce-loop-product__title{color:var(--hx-brand)}
.woocommerce ul.products li.product .star-rating{font-size:11px;color:var(--hx-amber);margin:0 0 8px;float:none}
.woocommerce ul.products li.product .price{
  display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;
  font-family:var(--hx-body);font-size:16px;font-weight:700;color:var(--hx-ink);margin:0 0 14px;
}
.woocommerce ul.products li.product .price del{order:2;font-size:13px;font-weight:400;color:var(--hx-muted);opacity:1}
.woocommerce ul.products li.product .price ins{order:1;text-decoration:none;color:var(--hx-ink)}
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart{
  margin-top:auto!important;width:100%;text-align:center;padding:13px 14px;font-size:14px!important;
}
.woocommerce ul.products li.product .added_to_cart{
  margin-top:8px!important;background:#fff;color:var(--hx-brand);border-color:var(--hx-line);box-shadow:none;
}
/* sale badge */
.woocommerce span.onsale{
  position:absolute;top:22px;left:22px;right:auto;z-index:4;margin:0;
  background:var(--hx-amber);color:var(--hx-ink);border-radius:var(--hx-pill);
  padding:5px 12px;font-family:var(--hx-body);font-size:11.5px;font-weight:700;
  letter-spacing:.04em;line-height:1.4;min-width:0;min-height:0;box-shadow:var(--hx-shadow-1);
}
/* wishlist and quick view, as icons over the image */
.woocommerce ul.products li.product > .yith-wcwl-add-to-wishlist,
.woocommerce ul.products li.product > .yith-wcqv-button,
.woocommerce ul.products li.product .yith-wcwl-add-to-wishlist + .yith-wcwl-add-to-wishlist{
  display:none!important;
}
.hxl-card-actions{
  position:absolute;top:22px;right:22px;z-index:5;display:flex;flex-direction:column;gap:8px;
  opacity:0;transform:translateX(8px);transition:opacity .25s,transform .25s;
}
.woocommerce ul.products li.product:hover .hxl-card-actions,
.woocommerce ul.products li.product:focus-within .hxl-card-actions{opacity:1;transform:none}
@media (hover:none){.hxl-card-actions{opacity:1;transform:none}}
.hxl-act > *{margin:0!important}
.hxl-act a,.hxl-act .yith-wcqv-button,.hxl-act .yith-wcwl-add-to-wishlist a{
  width:38px;height:38px;border-radius:var(--hx-pill);background:#fff;border:1px solid var(--hx-line);
  display:flex!important;align-items:center;justify-content:center;
  font-size:0!important;color:var(--hx-ink)!important;padding:0!important;margin:0!important;
  box-shadow:var(--hx-shadow-1);transition:background .2s,color .2s,border-color .2s,transform .2s;
}
.hxl-act a:hover,.hxl-act .yith-wcqv-button:hover{
  background:var(--hx-brand);border-color:var(--hx-brand);color:#fff!important;transform:scale(1.06);
}
.hxl-act i,.hxl-act svg{font-size:15px!important;width:15px;height:15px;margin:0!important}
.hxl-act .yith-wcwl-add-to-wishlist .feedback,.hxl-act .yith-wcwl-add-to-wishlist span{display:none!important}

/* ------------------------------------------------------- 7 shop / category */
.woocommerce-page:not(.elementor-page) .site-main{max-width:1340px;margin:0 auto;padding:44px 20px 100px}
.woocommerce .woocommerce-breadcrumb{font-size:13.5px;color:var(--hx-muted);margin:0 0 16px}
.woocommerce .woocommerce-products-header__title,.woocommerce h1.page-title{
  font-family:var(--hx-display);font-size:clamp(30px,4vw,48px);font-weight:700;margin:0 0 10px;
}
.woocommerce .term-description{color:var(--hx-muted);max-width:70ch;margin-bottom:26px}
.woocommerce .woocommerce-result-count{color:var(--hx-muted);font-size:14px;margin:0 0 24px}
.woocommerce .woocommerce-ordering{margin:0 0 24px}
.woocommerce .woocommerce-ordering select{min-height:46px;padding-right:38px}
.woocommerce nav.woocommerce-pagination{margin:56px 0 0}
.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.woocommerce nav.woocommerce-pagination ul li{border:0;margin:0;overflow:visible}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{
  min-width:46px;height:46px;display:flex;align-items:center;justify-content:center;padding:0 16px;
  border:1px solid var(--hx-line);border-radius:var(--hx-r-sm);font-weight:600;font-size:14.5px;
  background:#fff;transition:.2s;
}
.woocommerce nav.woocommerce-pagination ul li a:hover{border-color:var(--hx-brand);color:var(--hx-brand)}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--hx-ink);border-color:var(--hx-ink);color:#fff}
/* department cards */
.hx-cats ul.products{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:22px}
.hx-cats ul.products li.product-category{
  border:1px solid var(--hx-line);border-radius:var(--hx-r);overflow:hidden;background:#fff;
  box-shadow:var(--hx-shadow-1);padding:0;transition:transform .3s var(--hx-ease),box-shadow .3s,border-color .3s;
}
.hx-cats ul.products li.product-category:hover{transform:translateY(-6px);box-shadow:var(--hx-shadow-3);border-color:#D8CFBF}
.hx-cats li.product-category img{
  aspect-ratio:4/3;object-fit:cover;width:100%;border:0;border-radius:0;padding:0;margin:0!important;background:var(--hx-surface);
}
.hx-cats li.product-category h2,.hx-cats li.product-category h3{
  font-family:var(--hx-display)!important;font-size:18px!important;font-weight:600;color:var(--hx-ink);
  padding:16px 18px 2px!important;margin:0;display:flex;justify-content:space-between;align-items:center;gap:10px;
}
.hx-cats li.product-category .count{background:transparent;color:var(--hx-muted);font-family:var(--hx-body);font-size:13px;font-weight:400}
.hx-cats li.product-category > a::after{
  content:"Shop now →";display:block;padding:4px 18px 18px;
  font-family:var(--hx-body);font-size:13.5px;font-weight:600;color:var(--hx-brand);
}

/* ------------------------------------------------------- 8 single product */
.woocommerce div.product div.images img{border-radius:var(--hx-r);background:var(--hx-surface);border:1px solid var(--hx-line-soft)}
.woocommerce div.product div.images .flex-control-thumbs{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px;padding:0}
.woocommerce div.product div.images .flex-control-thumbs li{width:78px;margin:0;padding:0;float:none}
.woocommerce div.product div.images .flex-control-thumbs img{border-radius:var(--hx-r-sm);border:1px solid var(--hx-line);opacity:1;transition:border-color .2s}
.woocommerce div.product div.images .flex-control-thumbs img.flex-active,
.woocommerce div.product div.images .flex-control-thumbs img:hover{border-color:var(--hx-brand)}
.woocommerce div.product .product_title{font-size:clamp(26px,3.4vw,42px);font-weight:700;margin:0 0 12px}
.woocommerce div.product .woocommerce-product-rating{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:14px}
.woocommerce div.product .star-rating{color:var(--hx-amber);float:none;margin:0}
.woocommerce div.product p.price,.woocommerce div.product span.price{
  font-family:var(--hx-body);font-size:30px;font-weight:700;color:var(--hx-ink);margin:0 0 6px;display:flex;gap:12px;align-items:baseline;flex-wrap:wrap;
}
.woocommerce div.product p.price del{font-size:19px;font-weight:400;color:var(--hx-muted);opacity:1;order:2}
.woocommerce div.product p.price ins{text-decoration:none;order:1}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--hx-text);max-width:60ch;margin:14px 0 20px}
.woocommerce div.product .stock.in-stock{color:var(--hx-green);font-weight:600;font-size:14px}
.woocommerce div.product .stock.out-of-stock{color:#9A3412;font-weight:600;font-size:14px}
.woocommerce div.product form.cart{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:20px 0}
.quantity{display:inline-flex;align-items:stretch;border:1px solid var(--hx-line);border-radius:var(--hx-r-sm);overflow:hidden;background:#fff}
.quantity .hxl-qty-btn{width:46px;border:0;background:transparent;font-size:19px;color:var(--hx-ink);cursor:pointer;transition:.2s}
.quantity .hxl-qty-btn:hover{background:var(--hx-surface);color:var(--hx-brand)}
.woocommerce .quantity .qty{
  border:0!important;border-radius:0!important;width:58px;min-height:52px;text-align:center;
  background:transparent;-moz-appearance:textfield;box-shadow:none!important;
}
.woocommerce .quantity .qty::-webkit-outer-spin-button,.woocommerce .quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.woocommerce div.product form.cart .button.single_add_to_cart_button{flex:1 1 240px;min-height:54px;font-size:15.5px!important}
/* trust rows */
.hxl-usp{list-style:none;display:flex;flex-wrap:wrap;gap:8px 20px;margin:0 0 16px;padding:0;width:100%;font-size:14px;color:var(--hx-text)}
.hxl-usp li{position:relative;padding-left:24px}
.hxl-usp li::before{
  content:"";position:absolute;left:0;top:6px;width:12px;height:7px;
  border-left:2px solid var(--hx-brand);border-bottom:2px solid var(--hx-brand);transform:rotate(-45deg);
}
.hxl-assure{
  display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0 0;padding:22px;
  border:1px solid var(--hx-line);border-radius:var(--hx-r);background:var(--hx-surface);
}
.hxl-assure > div{display:flex;gap:12px;align-items:flex-start}
.hxl-assure-icon{
  flex:none;width:26px;height:26px;border-radius:var(--hx-pill);background:var(--hx-brand);color:#fff;
  display:grid;place-items:center;font-size:12px;
}
.hxl-assure strong{display:block;font-size:14.5px;color:var(--hx-ink);line-height:1.35}
.hxl-assure small{display:block;margin-top:3px;color:var(--hx-muted);font-size:13px;line-height:1.5}
.woocommerce div.product .product_meta{border-top:1px solid var(--hx-line);margin-top:24px;padding-top:18px;font-size:13.5px;color:var(--hx-muted);display:grid;gap:6px}
/* tabs */
.woocommerce div.product .woocommerce-tabs{margin-top:64px}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 28px;border-bottom:1px solid var(--hx-line);display:flex;gap:4px;flex-wrap:wrap}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:transparent;border:0;border-radius:0;margin:0;padding:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  display:block;padding:14px 20px;font-family:var(--hx-body);font-weight:600;font-size:15px;color:var(--hx-muted);
  border-bottom:2px solid transparent;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--hx-ink);border-bottom-color:var(--hx-brand)}
.woocommerce div.product .woocommerce-tabs .panel{max-width:78ch;font-size:16px;line-height:1.8}
.woocommerce div.product .woocommerce-tabs .panel h2{font-size:24px;margin:1.6em 0 .5em}
.woocommerce div.product .woocommerce-tabs .panel h2:first-child{margin-top:0}
.woocommerce div.product .woocommerce-tabs .panel ul{padding-left:22px}
.woocommerce div.product .woocommerce-tabs .panel li{margin-bottom:.45em}
.woocommerce div.product .related>h2,.woocommerce div.product .upsells>h2{font-size:clamp(24px,3vw,34px);margin:0 0 26px}
/* reviews */
.woocommerce #reviews ol.commentlist li .comment_container{border:1px solid var(--hx-line);border-radius:var(--hx-r);padding:20px;background:#fff}
.woocommerce #reviews ol.commentlist li img.avatar{position:static;float:left;width:44px;border:0;border-radius:var(--hx-pill);padding:0;margin-right:14px}
.woocommerce #reviews ol.commentlist li .comment-text{border:0;margin:0;padding:0;overflow:hidden}
.woocommerce #review_form_wrapper{border:1px solid var(--hx-line);border-radius:var(--hx-r);padding:24px;background:var(--hx-surface)}

/* ------------------------------------------------------ 9 cart & checkout */
.woocommerce table.shop_table{border:1px solid var(--hx-line);border-radius:var(--hx-r);border-collapse:separate;border-spacing:0;overflow:hidden;background:#fff}
.woocommerce table.shop_table th{background:var(--hx-surface);font-family:var(--hx-body);font-weight:600;font-size:13.5px;color:var(--hx-ink);padding:16px;border:0}
.woocommerce table.shop_table td{padding:18px 16px;border-top:1px solid var(--hx-line);color:var(--hx-text)}
.woocommerce table.cart img{width:78px;border-radius:var(--hx-r-sm);border:1px solid var(--hx-line-soft);background:var(--hx-surface)}
.woocommerce a.remove{color:var(--hx-muted)!important;border:1px solid var(--hx-line);width:26px;height:26px;line-height:24px;border-radius:var(--hx-pill)}
.woocommerce a.remove:hover{background:var(--hx-brand)!important;border-color:var(--hx-brand);color:#fff!important}
.woocommerce .cart-collaterals .cart_totals{border:1px solid var(--hx-line);border-radius:var(--hx-r);padding:26px;background:var(--hx-surface)}
.woocommerce .cart_totals h2,.woocommerce-checkout h3{font-family:var(--hx-display);font-size:21px;font-weight:600;margin:0 0 16px}
.woocommerce .cart_totals .checkout-button{display:block;text-align:center;background:var(--hx-brand);border-color:var(--hx-brand)}
.woocommerce-checkout #order_review{border:1px solid var(--hx-line);border-radius:var(--hx-r);padding:26px;background:var(--hx-surface)}
.woocommerce-checkout #payment{background:transparent}
.woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid var(--hx-line);padding:16px 0;list-style:none}
.woocommerce-checkout #payment div.payment_box{background:#fff;border:1px solid var(--hx-line);border-radius:var(--hx-r-sm);font-size:14px;margin-top:10px}
.woocommerce-checkout #payment div.payment_box::before{display:none}
.woocommerce-checkout #payment #place_order{width:100%;background:var(--hx-brand)!important;border-color:var(--hx-brand)!important;min-height:56px;font-size:16px!important}
.woocommerce-checkout #payment #place_order:hover{background:var(--hx-ink)!important;border-color:var(--hx-ink)!important}
@media (min-width:1025px){
  .woocommerce-checkout form.checkout.woocommerce-checkout{display:grid;grid-template-columns:1.2fr .85fr;gap:44px;align-items:start}
  .woocommerce-checkout #customer_details{grid-column:1;margin-bottom:0}
  .woocommerce-checkout #order_review_heading{grid-column:2;grid-row:1}
  .woocommerce-checkout #order_review{grid-column:2;grid-row:2/span 4;position:sticky;top:120px}
  .woocommerce-checkout .col2-set .col-1,.woocommerce-checkout .col2-set .col-2{width:100%;float:none}
  .woocommerce-checkout .col2-set .col-2{margin-top:26px}
}
/* block based cart and checkout */
.wc-block-components-button,.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button{
  background:var(--hx-brand)!important;color:#fff!important;border:1px solid var(--hx-brand)!important;
  border-radius:var(--hx-r-sm)!important;font-family:var(--hx-body)!important;font-weight:600!important;padding:16px 28px!important;
}
.wc-block-components-button:hover,.wc-block-cart__submit-button:hover,.wc-block-components-checkout-place-order-button:hover{
  background:var(--hx-ink)!important;border-color:var(--hx-ink)!important;
}
.wc-block-components-button.is-link{background:transparent!important;border:0!important;color:var(--hx-ink)!important}
.wc-block-components-text-input input,.wc-block-components-address-form input,.wc-block-components-select__container{
  border:1px solid var(--hx-line)!important;border-radius:var(--hx-r-sm)!important;box-shadow:none!important;
}
/* notices */
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info,.woocommerce .woocommerce-error,
.wc-block-components-notice-banner{
  background:var(--hx-surface);border:1px solid var(--hx-line);border-left:3px solid var(--hx-brand)!important;
  border-radius:var(--hx-r-sm);padding:16px 20px;font-size:15px;color:var(--hx-text);
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;list-style:none;
}
.woocommerce .woocommerce-message::before,.woocommerce .woocommerce-info::before,.woocommerce .woocommerce-error::before{display:none}
.woocommerce .woocommerce-message{border-left-color:var(--hx-green)!important}
.woocommerce .woocommerce-error{border-left-color:#9A3412!important}
.woocommerce .woocommerce-message .button,.woocommerce .woocommerce-info .button{margin-left:auto;padding:11px 20px}

/* ------------------------------------------------------------- 10 account */
.woocommerce-account .woocommerce-MyAccount-navigation{width:24%;float:left;padding-right:30px}
.woocommerce-account .woocommerce-MyAccount-content{width:76%;float:right}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.woocommerce-account .woocommerce-MyAccount-navigation li a{
  display:block;padding:13px 16px;border-radius:var(--hx-r-sm);font-weight:500;font-size:15px;color:var(--hx-text);transition:.2s;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{background:var(--hx-surface);color:var(--hx-brand)}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:var(--hx-ink);color:#fff}
.woocommerce-account .woocommerce-form-login,.woocommerce-account .woocommerce-form-register,
.woocommerce .woocommerce-form-login{border:1px solid var(--hx-line);border-radius:var(--hx-r);padding:28px;background:#fff}
.woocommerce-account:not(.logged-in) .woocommerce{max-width:960px;margin:0 auto}
.woocommerce-account .woocommerce-Address address{border:1px solid var(--hx-line);border-radius:var(--hx-r);padding:18px;font-style:normal}
/* thank you page */
.woocommerce ul.woocommerce-thankyou-order-details{
  list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;
  border:1px solid var(--hx-line);border-radius:var(--hx-r);padding:22px;margin:0 0 34px;background:var(--hx-surface);
}
.woocommerce ul.woocommerce-thankyou-order-details li{border:0;float:none;margin:0;padding:0;font-size:13px;color:var(--hx-muted);text-transform:none}
.woocommerce ul.woocommerce-thankyou-order-details li strong{display:block;font-family:var(--hx-display);font-size:18px;color:var(--hx-ink);margin-top:6px}

/* ---------------------------------------------------------------- 11 blog */
.hx-posts article.elementor-post{
  background:#fff;border:1px solid var(--hx-line);border-radius:var(--hx-r);overflow:hidden;
  box-shadow:var(--hx-shadow-1);transition:transform .3s var(--hx-ease),box-shadow .3s,border-color .3s;
}
.hx-posts article.elementor-post:hover{transform:translateY(-6px);box-shadow:var(--hx-shadow-3);border-color:#D8CFBF}
.hx-posts .elementor-post__thumbnail__link{margin:0!important}
.hx-posts .elementor-post__thumbnail{padding-bottom:62%!important;background:var(--hx-surface)}
.hx-posts .elementor-post__text{padding:20px 20px 24px}
.hx-posts .elementor-post__title{font-family:var(--hx-display);font-size:20px;line-height:1.35;margin:0 0 10px}
.hx-posts .elementor-post__meta-data{color:var(--hx-brand);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px}
.hx-posts .elementor-post__excerpt p{color:var(--hx-muted);font-size:15px}
.hx-posts .elementor-post__read-more{font-weight:600;color:var(--hx-brand)}
.hx-posts .elementor-pagination .page-numbers{
  border:1px solid var(--hx-line);border-radius:var(--hx-r-sm);min-width:46px;height:46px;
  display:inline-flex;align-items:center;justify-content:center;padding:0 16px;margin:0 4px;font-weight:600;
}
.hx-posts .elementor-pagination .page-numbers.current{background:var(--hx-ink);color:#fff;border-color:var(--hx-ink)}
.hx-sidebar{position:sticky;top:130px;align-self:flex-start}
.hx-side-list ul{list-style:none;padding:0;margin:0}
.hx-side-list li{border-bottom:1px solid var(--hx-line)}
.hx-side-list li a{display:inline-block;padding:11px 0;font-size:15px}
.hx-post-body{font-size:17px;line-height:1.85}
.hx-post-body h2{font-size:28px;margin:1.7em 0 .5em}
.hx-post-body h3{font-size:22px;margin:1.5em 0 .4em}
.hx-post-body img{border-radius:var(--hx-r)}
.hx-post-body blockquote{border-left:3px solid var(--hx-brand);padding:4px 0 4px 22px;margin:1.6em 0;font-size:1.08em}
.hx-post-body a{color:var(--hx-brand);border-bottom:1px solid currentColor}
.hx-author{border:1px solid var(--hx-line);border-radius:var(--hx-r);padding:22px;background:var(--hx-surface)}
.hx-share,.hx-postnav,.hx-comments{border-top:1px solid var(--hx-line);padding-top:26px}

/* -------------------------------------------------------------- 12 plugins */
/* Rank Math breadcrumbs */
.rank-math-breadcrumb{font-size:13.5px;color:var(--hx-muted);margin-bottom:16px}
.rank-math-breadcrumb a:hover{color:var(--hx-brand)}
/* YITH quick view modal */
#yith-quick-view-modal .yith-wcqv-main{border-radius:var(--hx-r);border:0;overflow:hidden}
#yith-quick-view-close{border-radius:var(--hx-pill);width:34px;height:34px;line-height:32px;text-align:center;background:var(--hx-surface);color:var(--hx-ink);opacity:1}
/* YITH wishlist page */
.wishlist_table{border:1px solid var(--hx-line);border-radius:var(--hx-r);overflow:hidden}
.wishlist_table thead th{background:var(--hx-surface);font-weight:600;font-size:13.5px}
.wishlist_table td{padding:16px;border-top:1px solid var(--hx-line)}
.wishlist_table td.product-thumbnail img{width:76px;border-radius:var(--hx-r-sm)}
/* variation swatches */
.variable-items-wrapper{display:flex;gap:8px;flex-wrap:wrap}
.variable-items-wrapper .variable-item{border-radius:var(--hx-r-sm)!important;box-shadow:0 0 0 1px var(--hx-line)!important;margin:0!important}
.variable-items-wrapper .variable-item:hover,.variable-items-wrapper .variable-item.selected{box-shadow:0 0 0 2px var(--hx-brand)!important}
/* MailPoet */
.mailpoet_form input.mailpoet_text,.mailpoet_form input.mailpoet_email{border-radius:var(--hx-r-sm)!important;border:1px solid var(--hx-line)!important;min-height:52px;padding:0 18px!important}
.mailpoet_form input.mailpoet_submit{background:var(--hx-ink)!important;color:#fff!important;border-radius:var(--hx-r-sm)!important;min-height:52px;padding:0 28px!important;font-weight:600}
.mailpoet_form input.mailpoet_submit:hover{background:var(--hx-brand)!important}
/* CookieYes */
.cky-consent-container .cky-consent-bar{border-radius:var(--hx-r)!important;border:1px solid var(--hx-line)!important;font-family:var(--hx-body)!important}
.cky-btn{border-radius:var(--hx-r-sm)!important;font-weight:600!important;padding:11px 22px!important}
.cky-btn-accept{background:var(--hx-brand)!important;border-color:var(--hx-brand)!important;color:#fff!important}

/* Elementor helpers used by the templates */
.hx-img img{border-radius:var(--hx-r);object-fit:cover;background:var(--hx-surface);transition:transform .5s var(--hx-ease)}
.hx-img .elementor-widget-container,.hx-img a{display:block;overflow:hidden;border-radius:var(--hx-r)}
.hx-img:hover img{transform:scale(1.04)}
.ratio-tall img{aspect-ratio:3/4}
.ratio-square img{aspect-ratio:1/1}
.ratio-card img{aspect-ratio:4/3.4}
.ratio-wide img{aspect-ratio:5/4}
.hx-flush img,.hx-flush a,.hx-flush .elementor-widget-container{border-radius:0;height:100%}
.hx-band{background:var(--hx-surface);border:1px solid var(--hx-line);border-radius:var(--hx-r-lg);overflow:hidden}
.hx-promo{background:var(--hx-ink)}
.hx-promo .elementor-heading-title,.hx-promo .elementor-widget-text-editor{color:#fff!important}
.hx-promo .elementor-widget-text-editor p{color:#D8CFBF!important}
.hx-trust-row{background:var(--hx-surface);border:1px solid var(--hx-line);border-radius:var(--hx-r-lg);padding:30px 26px!important}
.hx-trust .elementor-icon{color:var(--hx-brand);font-size:26px}
.hx-trust .elementor-icon-box-title{font-family:var(--hx-display);font-size:17px;margin-bottom:6px}
.hx-trust .elementor-icon-box-description{color:var(--hx-muted);font-size:14.5px}
.hx-note p{display:inline-block;border:1px dashed var(--hx-line);border-radius:var(--hx-pill);padding:5px 14px;margin:0;color:var(--hx-muted)}
.hxl-news-form{display:flex;gap:10px;flex-wrap:wrap;width:100%}
.hxl-news-form input{flex:1 1 240px;min-height:54px;border-radius:var(--hx-pill)!important;padding:0 22px}
.hxl-news-form button{
  min-height:54px;padding:0 30px;border-radius:var(--hx-pill);border:1px solid var(--hx-ink);
  background:var(--hx-ink);color:#fff;font-family:var(--hx-body);font-weight:600;font-size:15px;cursor:pointer;transition:.22s;
}
.hxl-news-form button:hover{background:var(--hx-brand);border-color:var(--hx-brand)}
.woocommerce-page .widget-area,.woocommerce-page #secondary{display:none}

/* ------------------------------------------------------------ 13 responsive */
@media (max-width:1200px){
  .woocommerce ul.products,.hx-grid ul.products{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 22px}
}
@media (max-width:1024px){
  .hx-head-search{display:block}
  .hx-deps-bar{overflow-x:auto}
  .hx-deps .elementor-menu-toggle{margin-left:auto!important}
  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce-account .woocommerce-MyAccount-content{width:100%;float:none;padding:0}
  .woocommerce-account .woocommerce-MyAccount-navigation{margin-bottom:26px}
  .woocommerce-account .woocommerce-MyAccount-navigation ul{grid-template-columns:repeat(2,1fr)}
  .hx-sidebar{position:static}
}
@media (max-width:767px){
  body{font-size:15.5px}
  .woocommerce-page:not(.elementor-page) .site-main{padding:28px 16px 72px}
  .woocommerce ul.products,.hx-grid ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px}
  .woocommerce ul.products li.product{padding:10px 10px 14px;border-radius:var(--hx-r-sm)}
  .woocommerce ul.products li.product img{padding:10px;margin-bottom:12px!important}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:13.5px!important;min-height:3.2em}
  .woocommerce ul.products li.product .price{font-size:15px;margin-bottom:10px}
  .woocommerce ul.products li.product .button{padding:11px 10px;font-size:13px!important}
  .woocommerce span.onsale{top:16px;left:16px;padding:4px 10px;font-size:10.5px}
  .hxl-card-actions{top:16px;right:16px}
  .hxl-act a,.hxl-act .yith-wcqv-button{width:34px;height:34px}
  .woocommerce div.product form.cart{flex-direction:column;align-items:stretch}
  .woocommerce div.product form.cart .quantity,.quantity{width:100%}
  .woocommerce .quantity .qty{flex:1}
  .woocommerce div.product form.cart .button.single_add_to_cart_button{width:100%}
  .hxl-assure{grid-template-columns:1fr}
  .woocommerce table.shop_table_responsive tr td{display:flex;justify-content:space-between;gap:16px;text-align:right}
  .woocommerce table.shop_table_responsive tr td::before{font-weight:600;color:var(--hx-ink);float:none}
  .woocommerce .cart .coupon input.input-text,.woocommerce .cart .actions .button{width:100%;margin-bottom:10px}
  .hxl-news-form button{flex:1 1 100%}
  .hx-trust-row{padding:22px 18px!important}
}
@media (max-width:420px){
  .woocommerce ul.products,.hx-grid ul.products{gap:14px 10px}
}

/* =========================================================================
   14 ATELIER LAYER — warm ivory, ink and vermilion. Editorial and sharp.
   Loaded last so it refines everything above without touching the templates.
   ========================================================================= */
:root{--hx-ivory:#FAF7F2;--hx-gold:#B07A5B}
body{background:var(--hx-ivory)}
h1,h2,h3,.elementor-heading-title{font-optical-sizing:auto;font-variation-settings:"SOFT" 30;letter-spacing:-.015em}
h1{font-weight:600}
h1 em,h2 em,.elementor-heading-title em{font-style:italic;color:var(--hx-brand);font-weight:500}

/* buttons: rectangular, confident, quiet lift */
.elementor-button,.hx-btn .elementor-button,
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce a.button.alt,.woocommerce button.button.alt,.wc-block-components-button{
  border-radius:2px!important;text-transform:uppercase;letter-spacing:.12em;font-size:12.5px!important;
  padding:16px 30px;box-shadow:none;
}
.elementor-button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{transform:translateY(-1px);box-shadow:0 12px 24px -14px rgba(22,19,15,.5)}
.elementor-menu-cart__toggle .elementor-button{border-radius:2px!important}

/* header */
.hx-header{background:rgba(250,247,242,.94)}
.hx-head-search input[type="search"]{border-radius:2px!important;background:#fff;border:1px solid var(--hx-line)!important}
.hx-deps-bar{background:var(--hx-ivory)}
.hx-deps .elementor-nav-menu--main .elementor-item{text-transform:uppercase;letter-spacing:.14em;font-size:12.5px;font-weight:600}
.hx-announce-text p{text-transform:uppercase;letter-spacing:.14em;font-size:11.5px!important}

/* section headings: thin gold rule instead of the old bar */
.hx-sec-head .elementor-heading-title::after{width:56px;height:1px;background:var(--hx-gold);margin-top:18px}
.hx-eyebrow p{color:var(--hx-gold)!important;letter-spacing:.28em}

/* product cards: clean gallery frame */
.woocommerce ul.products li.product{background:#fff;border:1px solid var(--hx-line);border-radius:var(--hx-r)}
.woocommerce ul.products li.product:hover{border-color:var(--hx-ink);transform:translateY(-4px)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--hx-display);font-weight:500;font-size:16px}
.woocommerce ul.products li.product .price{font-family:var(--hx-body);font-weight:700}
.woocommerce span.onsale{background:var(--hx-ink)!important;color:var(--hx-gold)!important;border-radius:2px!important;letter-spacing:.14em;text-transform:uppercase;font-size:10.5px!important;min-height:0;min-width:0;line-height:1;padding:8px 10px}

/* category tiles on the home page and shop */
.hx-cats ul.products li.product-category{border:0;background:transparent}
.hx-cats ul.products li.product-category img{aspect-ratio:4/5;object-fit:cover;border-radius:var(--hx-r);transition:transform .6s var(--hx-ease)}
.hx-cats ul.products li.product-category:hover img{transform:scale(1.04)}
.hx-cats ul.products li.product-category .woocommerce-loop-category__title{font-family:var(--hx-display);font-size:20px;font-weight:500;text-align:center;padding-top:14px}
.hx-cats ul.products li.product-category .count{background:none;color:var(--hx-muted);font-size:13px}

/* footer */
.hx-footer{background:var(--hx-ink);border-top:0}
.hx-footer,.hx-footer p,.hx-footer a,.hx-footer .elementor-nav-menu .elementor-item,.hx-footer .elementor-widget-text-editor,.hx-footer .elementor-widget-text-editor p{color:#D8CFBF!important}
.hx-footer .elementor-heading-title{color:var(--hx-gold)!important}
.hx-footer a:hover,.hx-footer .elementor-nav-menu .elementor-item:hover{color:#fff!important}
.hx-social a{background:transparent!important;border-color:rgba(255,255,255,.25)!important;border-radius:2px!important}
.hx-social a i,.hx-social a svg{color:#fff!important;fill:#fff!important}
.hx-footer .hx-logo img,.hx-footer .custom-logo{background:var(--hx-ivory);padding:10px 14px;border-radius:2px}
.hx-foot-bottom{border-top-color:rgba(255,255,255,.14)}
.hx-foot-bottom p{color:#9C9384!important}

/* smooth reveal on scroll-in for grids */
@keyframes hxRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.woocommerce ul.products li.product{animation:hxRise .6s var(--hx-ease) both}

/* small screens: comfortable tap targets, two-up grid */
@media (max-width:767px){
  .elementor-button,.woocommerce a.button,.woocommerce button.button{padding:15px 22px;width:auto}
  .hx-cats ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
}

/* =========================================================================
   15 CARDS, CATEGORY TILES, FOOTER GRID AND STORE EXTRAS
   Replaces the earlier card rules. Grid items never use height:100%, so rows
   size to their content and cards can no longer overlap.
   ========================================================================= */

/* ---- grid: one rule for the shop, categories, related and widgets ---- */
.woocommerce ul.products,
.elementor-widget-woocommerce-products ul.products,
.elementor-widget-wc-archive-products ul.products,
.hx-grid ul.products,
.hx-cats ul.products{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-auto-rows:auto!important;
  gap:34px 24px!important;
  align-items:stretch!important;
  margin:0 0 20px!important;padding:0!important;list-style:none!important;
  width:100%;
}
.woocommerce ul.products li.product,
.elementor-widget-woocommerce-products ul.products li.product,
.elementor-widget-wc-archive-products ul.products li.product{
  position:relative;display:flex!important;flex-direction:column;
  height:auto!important;min-width:0;width:auto!important;max-width:none!important;
  margin:0!important;padding:0!important;float:none!important;clear:none!important;
  background:transparent;border:0;box-shadow:none;border-radius:0;text-align:left;
  transform:none;overflow:visible;
}
.woocommerce ul.products li.product:hover{transform:none;box-shadow:none;border-color:transparent}

/* image frame */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
  display:flex;flex-direction:column;flex:0 0 auto;position:relative;min-width:0;
}
.woocommerce ul.products li.product img.attachment-woocommerce_thumbnail,
.woocommerce ul.products li.product .woocommerce-loop-product__link img,
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link > img{
  display:block;width:100%!important;height:auto!important;aspect-ratio:4/5;
  object-fit:contain;background:#fff;border:1px solid var(--hx-line);border-radius:var(--hx-r);
  padding:14px;margin:0 0 16px!important;
  transition:border-color .3s,box-shadow .35s var(--hx-ease),transform .35s var(--hx-ease);
}
.woocommerce ul.products li.product:hover img.attachment-woocommerce_thumbnail,
.woocommerce ul.products li.product:hover a.woocommerce-LoopProduct-link > img{
  border-color:var(--hx-ink);box-shadow:0 20px 34px -22px rgba(22,19,15,.45);transform:translateY(-3px);background:#fff;
}

/* text */
.hxl-card-cat{
  display:block;margin:0 0 6px;font-size:10.5px;font-weight:700;letter-spacing:.2em;
  text-transform:uppercase;color:var(--hx-gold);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--hx-display)!important;font-size:17px!important;font-weight:500;line-height:1.35;
  color:var(--hx-ink);margin:0 0 8px;padding:0!important;min-height:0;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.woocommerce ul.products li.product .price{
  display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;margin:0 0 14px;
  font-family:var(--hx-body);font-size:16px;font-weight:700;color:var(--hx-ink);
}
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart{
  margin-top:auto!important;width:100%;text-align:center;padding:13px 14px;font-size:11.5px!important;
  background:transparent;color:var(--hx-ink);border:1px solid var(--hx-ink);box-shadow:none;
}
.woocommerce ul.products li.product .button:hover{background:var(--hx-ink)!important;color:#fff!important;border-color:var(--hx-ink)!important;transform:none;box-shadow:none}
.woocommerce ul.products li.product .added_to_cart{margin-top:8px!important}

/* badges over the image frame */
.woocommerce span.onsale{top:12px!important;left:12px!important;right:auto!important}
.hxl-new{
  position:absolute;top:12px;left:12px;z-index:4;background:var(--hx-brand);color:#fff;
  font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1;padding:8px 10px;border-radius:2px;
}
.hxl-card-actions{top:12px!important;right:12px!important}

/* ---- category tiles (home page, shop page and category pages) ---- */
.woocommerce ul.products li.product-category{background:transparent;border:0;box-shadow:none;padding:0!important;overflow:visible}
.woocommerce ul.products li.product-category > a{display:flex;flex-direction:column;position:relative;min-width:0}
.woocommerce ul.products li.product-category img{
  display:block;width:100%!important;height:auto!important;aspect-ratio:4/5;object-fit:contain;
  background:#fff;border:1px solid var(--hx-line);border-radius:var(--hx-r);padding:18px;margin:0 0 14px!important;
  transition:border-color .3s,box-shadow .35s var(--hx-ease),transform .35s var(--hx-ease);
}
.woocommerce ul.products li.product-category:hover img{border-color:var(--hx-ink);box-shadow:0 20px 34px -22px rgba(22,19,15,.45);transform:translateY(-3px)}
.woocommerce ul.products li.product-category .woocommerce-loop-category__title{
  display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:0;padding:0 2px!important;
  font-family:var(--hx-display)!important;font-size:21px!important;font-weight:500;line-height:1.25;color:var(--hx-ink);
  background:none;position:static;
}
.woocommerce ul.products li.product-category .count{background:transparent;color:var(--hx-muted);font-family:var(--hx-body);font-size:12px;font-weight:600}
.woocommerce ul.products li.product-category > a::after{
  content:"Shop now  →"!important;display:block!important;padding:6px 2px 0;
  font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--hx-brand);
}

/* ---- single product extras ---- */
.hxl-points{list-style:none;margin:22px 0 0;padding:20px 0 0;border-top:1px solid var(--hx-line);display:grid;gap:10px}
.hxl-points li{position:relative;padding-left:26px;font-size:14.5px;color:var(--hx-text)}
.hxl-points li::before{
  content:"";position:absolute;left:0;top:.45em;width:14px;height:7px;border-left:2px solid var(--hx-brand);
  border-bottom:2px solid var(--hx-brand);transform:rotate(-45deg) translateY(-2px);
}
.hxl-ship{margin:0 0 22px;padding:16px 18px;background:#fff;border:1px solid var(--hx-line);border-radius:var(--hx-r)}
.hxl-ship p{margin:0 0 10px;font-size:14px}
.hxl-ship span{display:block;height:5px;background:var(--hx-line-soft);border-radius:5px;overflow:hidden}
.hxl-ship i{display:block;height:100%;background:var(--hx-brand);border-radius:5px;transition:width .5s var(--hx-ease)}
.hxl-sticky{
  position:fixed;left:0;right:0;bottom:0;z-index:98;display:none;align-items:center;justify-content:space-between;gap:14px;
  padding:12px 16px;background:#fff;border-top:1px solid var(--hx-line);box-shadow:0 -14px 30px -20px rgba(22,19,15,.4);
  transform:translateY(110%);transition:transform .3s var(--hx-ease);
}
.hxl-sticky.show{transform:none}
.hxl-sticky div{display:flex;flex-direction:column;min-width:0}
.hxl-sticky strong{font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hxl-sticky span{font-size:14px;font-weight:700}
.hxl-sticky .button{flex:0 0 auto;padding:13px 20px}
@media (max-width:767px){.hxl-sticky{display:flex}body.single-product{padding-bottom:70px}}

/* ---- footer grid: replaces the percentage widths that overflowed ---- */
.hx-footer{padding:0}
.hx-footer .hx-foot-cols > .e-con-inner{
  display:grid!important;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:48px 40px;
  align-items:start;width:100%;max-width:100%;flex-wrap:nowrap;
}
.hx-footer .hx-foot-col{width:auto!important;max-width:none!important;min-width:0;padding:0!important;--width:auto}
.hx-footer .hx-foot-col > .e-con-inner{width:100%;max-width:100%;padding:0}
.hx-footer .hx-foot-cols{padding:72px 0 48px!important;width:100%}
.hx-footer .hx-foot-cols > .e-con-inner{padding:0}
.hx-footer .elementor-widget-theme-site-logo img{max-width:150px;height:auto}
.hx-footer .hx-foot-bottom > .e-con-inner{
  display:flex!important;flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;
  width:100%;max-width:100%;
}
.hx-footer .hx-foot-bottom{padding:22px 0!important}
.hx-footer .hx-foot-bottom > .e-con-inner{padding:0}
.hx-footer .elementor-widget-text-editor p:last-child{margin-bottom:0}

/* ---- responsive ---- */
@media (max-width:1200px){
  .woocommerce ul.products,.elementor-widget-woocommerce-products ul.products,
  .elementor-widget-wc-archive-products ul.products,.hx-cats ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media (max-width:1024px){
  .hx-footer .hx-foot-cols > .e-con-inner{grid-template-columns:1fr 1fr;gap:40px 32px}
}
@media (max-width:767px){
  .woocommerce ul.products,.elementor-widget-woocommerce-products ul.products,
  .elementor-widget-wc-archive-products ul.products,.hx-cats ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:26px 14px!important}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:15px!important}
  .woocommerce ul.products li.product img.attachment-woocommerce_thumbnail,
  .woocommerce ul.products li.product a.woocommerce-LoopProduct-link > img{padding:8px}
  .woocommerce ul.products li.product-category .woocommerce-loop-category__title{font-size:16px!important}
  .woocommerce ul.products li.product .button{padding:12px 8px;font-size:10.5px!important;letter-spacing:.08em}
  .hx-footer .hx-foot-cols > .e-con-inner{grid-template-columns:1fr 1fr;gap:34px 20px}
  .hx-footer .hx-foot-col:first-child{grid-column:1/-1}
  .hx-footer .hx-foot-cols{padding:52px 0 32px!important}
  .hx-footer .hx-foot-bottom > .e-con-inner{flex-direction:column;align-items:flex-start}
}

/* =========================================================================
   16 JOURNAL, ARTICLE, AUTHOR, HOME, ABOUT, CHECKOUT COLOURS, FOOTER FIX
   ========================================================================= */

/* ---- one accent everywhere: kills browser and WooCommerce blues ---- */
:root{
  accent-color:var(--hx-brand);
  --wc-primary:#16130F;--wc-primary-text:#fff;--wc-secondary:#E6DFD2;--wc-secondary-text:#16130F;
  --wc-highlight:#C2410C;--wc-highligh-text:#fff;--wc-content-bg:#fff;--wc-subtext:#6E675D;
  --wp--preset--color--vivid-cyan-blue:#C2410C;--wp--preset--color--pale-cyan-blue:#F7F3EC;
}
input[type="checkbox"],input[type="radio"],progress{accent-color:var(--hx-brand)}
.woocommerce-info,.woocommerce-message,.woocommerce-error,.woocommerce-noreviews,p.no-comments{
  background:#fff!important;color:var(--hx-text)!important;border:1px solid var(--hx-line)!important;
  border-top:3px solid var(--hx-brand)!important;border-radius:var(--hx-r);padding:16px 20px 16px 52px!important;
}
.woocommerce-info::before,.woocommerce-message::before{color:var(--hx-brand)!important;top:16px}
.woocommerce-error{border-top-color:#9A3412!important}
.woocommerce-error::before{color:#9A3412!important}
.woocommerce-info a.button,.woocommerce-message a.button{background:transparent;color:var(--hx-ink)!important;border:1px solid var(--hx-ink)}
.woocommerce a.showcoupon,.woocommerce a.showlogin{color:var(--hx-brand);text-decoration:underline;text-underline-offset:3px}
.woocommerce-checkout #payment,.woocommerce #payment{background:var(--hx-surface);border-radius:var(--hx-r);border:1px solid var(--hx-line)}
.woocommerce-checkout #payment div.payment_box{background:#fff;color:var(--hx-text);border:1px solid var(--hx-line);border-radius:var(--hx-r-sm)}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:#fff}
.woocommerce-checkout #payment ul.payment_methods{border-bottom-color:var(--hx-line)}
.woocommerce-checkout h3,.woocommerce-checkout #order_review_heading{font-family:var(--hx-display);font-size:26px;font-weight:500}
.woocommerce table.shop_table{border:1px solid var(--hx-line);border-radius:var(--hx-r);background:#fff;border-collapse:separate;overflow:hidden}
.woocommerce table.shop_table th{color:var(--hx-ink)}
.woocommerce table.shop_table td,.woocommerce table.shop_table th{border-color:var(--hx-line-soft)}
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected]{background:var(--hx-ink)!important;color:#fff}
/* checkout and cart blocks */
.wc-block-components-button:not(.is-link),
.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button{
  background:var(--hx-ink)!important;color:#fff!important;border:1px solid var(--hx-ink)!important;border-radius:2px!important;
  text-transform:uppercase;letter-spacing:.12em;font-size:12.5px;font-weight:700;
}
.wc-block-components-button:not(.is-link):hover{background:var(--hx-brand)!important;border-color:var(--hx-brand)!important}
.wc-block-components-checkbox .wc-block-components-checkbox__input:checked,
.wc-block-components-radio-control .wc-block-components-radio-control__input:checked{background:var(--hx-ink);border-color:var(--hx-ink)}
.wc-block-components-radio-control .wc-block-components-radio-control__input:checked::before{background:#fff}
.wc-block-components-text-input input:focus,.wc-block-components-textarea:focus,.wc-block-components-select .wc-blocks-components-select__select:focus,
.wc-block-components-combobox .components-combobox-control__suggestions-container:focus-within{
  border-color:var(--hx-ink)!important;box-shadow:0 0 0 1px var(--hx-ink)!important;outline:0
}
.wc-block-components-text-input.is-active label{color:var(--hx-muted)}
.wc-block-components-panel__button,.wc-block-components-totals-coupon-link,.wc-block-components-checkout-return-to-cart-button,
.wc-block-components-product-name,.wc-block-cart-item__remove-link{color:var(--hx-ink)!important}
.wc-block-components-product-name:hover,.wc-block-components-checkout-return-to-cart-button:hover{color:var(--hx-brand)!important}
.wc-block-components-notice-banner.is-info,.wc-block-components-notice-banner.is-success{background:#fff;border-color:var(--hx-brand);color:var(--hx-text)}
.wc-block-components-notice-banner.is-info>svg,.wc-block-components-notice-banner.is-success>svg{background-color:var(--hx-brand)}
.wc-block-components-sidebar,.wc-block-components-order-summary{background:transparent}
.wc-block-cart,.wc-block-checkout{--wc-primary:#16130F}
.wc-block-components-sidebar-layout .wc-block-components-main{padding-right:40px}
.wc-block-components-totals-wrapper,.wc-block-components-panel{border-color:var(--hx-line)!important}
.wc-block-components-address-card,.wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option{border-color:var(--hx-line)!important;border-radius:var(--hx-r)}
.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted::after,
.wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted::after{border-color:var(--hx-ink)!important;box-shadow:none}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--hx-brand);outline-offset:2px}

/* ---- layout helpers ---- */
.hx-wrap{max-width:1320px;margin:0 auto;padding-left:24px;padding-right:24px;width:100%}
.hx-wrap-narrow{max-width:760px;margin:0 auto;padding-left:24px;padding-right:24px;width:100%}
.hx-eyebrow2{display:block;font-size:11.5px;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--hx-gold,#B07A5B);margin:0 0 14px}
.hx-chip{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--hx-brand);padding:0}
.hx-more{display:inline-flex;gap:8px;align-items:center;font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--hx-ink);border-bottom:1px solid var(--hx-ink);padding-bottom:3px;align-self:flex-start}
.hx-more:hover{color:var(--hx-brand);border-color:var(--hx-brand)}
.hx-more span{transition:transform .25s var(--hx-ease)}
.hx-more:hover span{transform:translateX(4px)}

/* ---- journal listing ---- */
.hx-jhead{background:var(--hx-surface);border-bottom:1px solid var(--hx-line);padding:76px 0 56px}
.hx-journal .hx-jhead h1{font-size:clamp(38px,5.4vw,68px);font-weight:500;line-height:1.05;margin:0 0 16px;max-width:16ch}
.hx-jhead p{max-width:52ch;font-size:18px;color:var(--hx-muted);margin:0}
.hx-jlayout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:56px;padding-top:56px;padding-bottom:100px;align-items:start}
.hx-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 26px}
.hx-cards-wide{gap:40px 30px}
.hx-card{display:flex;flex-direction:column;min-width:0;background:transparent}
.hx-card-img{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:var(--hx-r);background:var(--hx-surface-2);margin:0 0 18px;position:relative}
.hx-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--hx-ease)}
.hx-card:hover .hx-card-img img{transform:scale(1.05)}
.hx-card-ph{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--hx-display);font-size:64px;color:var(--hx-gold,#B07A5B);background:var(--hx-surface-2)}
.hx-card-body{display:flex;flex-direction:column;gap:10px;flex:1}
.hx-journal .hx-card h3,.hx-cards-home .hx-card h3,.hx-card .hx-card-body h3{font-family:var(--hx-display);font-size:21px;font-weight:500;line-height:1.28;margin:0}
.hx-card h3 a{color:var(--hx-ink);background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .35s var(--hx-ease)}
.hx-card:hover h3 a{background-size:100% 1px}
.hx-card p{margin:0;font-size:15px;line-height:1.65;color:var(--hx-muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.hx-card .hx-more{margin-top:auto}
.hx-card .hx-card-body > .hx-more{margin-top:6px}
.hx-empty{font-size:17px;color:var(--hx-muted);padding:40px 0}
.hx-pager ul{list-style:none;display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:56px 0 0;padding:0}
.hx-pager a,.hx-pager span{min-width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid var(--hx-line);border-radius:2px;background:#fff;font-weight:600;font-size:14px;padding:0 14px}
.hx-pager a:hover{border-color:var(--hx-ink)}
.hx-pager .current{background:var(--hx-ink);color:#fff;border-color:var(--hx-ink)}

/* sidebar */
.hx-jside{position:sticky;top:112px;display:flex;flex-direction:column;gap:30px}
.hx-journal .hx-side-box h4,.hx-side-box h4{font-family:var(--hx-body);font-size:11.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--hx-ink);margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid var(--hx-ink)}
.hx-side-search{display:flex;border:1px solid var(--hx-line);background:#fff;border-radius:2px}
.hx-side-search input{border:0!important;min-height:46px;padding:0 14px;background:transparent;flex:1;min-width:0;font-size:14px;box-shadow:none!important}
.hx-side-search button{border:0;background:var(--hx-ink);color:#fff;width:46px;cursor:pointer;font-size:16px}
.hx-side-search button:hover{background:var(--hx-brand)}
.hx-side-list,.hx-side-recent{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.hx-side-list li,.hx-side-recent li{border-bottom:1px solid var(--hx-line-soft);padding:10px 0;font-size:14.5px;color:var(--hx-muted)}
.hx-side-list a,.hx-side-recent a{color:var(--hx-text)}
.hx-side-recent a{font-family:var(--hx-display);font-size:15.5px;line-height:1.35;display:block}
.hx-side-list a:hover,.hx-side-recent a:hover{color:var(--hx-brand)}
.hx-side-cta{background:var(--hx-ink);padding:22px;border-radius:var(--hx-r)}
.hx-side-cta h4{color:var(--hx-gold,#B07A5B);border-color:rgba(255,255,255,.25)}
.hx-side-cta p{color:#D8CFBF;font-size:14.5px;margin:0 0 16px}
.hx-side-cta .button{background:#fff;color:var(--hx-ink);border-color:#fff;width:100%;text-align:center}

/* ---- single article ---- */
.hx-phead{max-width:860px;margin:0 auto;padding:72px 24px 34px;text-align:center}
.hx-journal .hx-phead h1{font-size:clamp(34px,5vw,60px);font-weight:500;line-height:1.08;margin:16px 0 20px;text-wrap:balance}
.hx-phead .hx-lede{font-size:20px;line-height:1.6;color:var(--hx-muted);max-width:60ch;margin:0 auto 26px}
.hx-byline{display:inline-flex;align-items:center;gap:12px;text-align:left}
.hx-byline img{width:44px;height:44px;border-radius:50%;border:1px solid var(--hx-line);background:var(--hx-ink)}
.hx-byline span{display:flex;flex-direction:column;line-height:1.35;font-size:14.5px}
.hx-byline a{font-weight:700;color:var(--hx-ink)}
.hx-byline em{font-style:normal;color:var(--hx-muted);font-size:13px}
.hx-pimg{max-width:1120px;margin:0 auto 56px;padding:0 24px}
.hx-pimg img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--hx-r-lg)}
.hx-pbody{max-width:720px;margin:0 auto;padding:0 24px;font-size:18px;line-height:1.85;color:var(--hx-text)}
.hx-journal .hx-pbody h2{font-size:clamp(26px,3.2vw,34px);font-weight:500;margin:52px 0 16px}
.hx-journal .hx-pbody h3{font-size:24px;font-weight:500;margin:38px 0 12px}
.hx-pbody p{margin:0 0 1.35em}
.hx-pbody a{color:var(--hx-brand);text-decoration:underline;text-underline-offset:3px}
.hx-pbody ul,.hx-pbody ol{padding-left:1.2em;margin:0 0 1.4em}
.hx-pbody li{margin-bottom:.5em}
.hx-pbody blockquote{margin:2em 0;padding:4px 0 4px 26px;border-left:2px solid var(--hx-gold,#B07A5B);font-family:var(--hx-display);font-size:24px;line-height:1.45;color:var(--hx-ink)}
.hx-pbody img{border-radius:var(--hx-r);height:auto}
.hx-pfoot{max-width:720px;margin:64px auto 0;padding:0 24px;display:flex;flex-direction:column;gap:36px}
.hx-share{display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap;border-top:1px solid var(--hx-line);padding-top:26px}
.hx-share span{font-size:11.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;margin-right:6px}
.hx-share a{font-size:13.5px;font-weight:600;padding:8px 14px;border:1px solid var(--hx-line);border-radius:2px;background:#fff}
.hx-share a:hover{background:var(--hx-ink);color:#fff;border-color:var(--hx-ink)}
.hx-authorbox{display:flex;gap:22px;align-items:flex-start;padding:26px;background:var(--hx-surface);border:1px solid var(--hx-line);border-radius:var(--hx-r)}
.hx-authorbox img{width:88px;height:88px;border-radius:50%;flex:0 0 auto;background:var(--hx-ink)}
.hx-journal .hx-authorbox h4,.hx-authorbox h4{font-size:22px;font-weight:500;margin:0 0 6px}
.hx-authorbox p{font-size:15px;color:var(--hx-muted);margin:0 0 12px;line-height:1.65}
.hx-postnav{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.hx-postnav a{display:flex;flex-direction:column;gap:6px;padding:18px 20px;border:1px solid var(--hx-line);border-radius:var(--hx-r);background:#fff;font-family:var(--hx-display);font-size:17px;line-height:1.35}
.hx-postnav a:hover{border-color:var(--hx-ink)}
.hx-postnav small{font-family:var(--hx-body);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--hx-muted)}
.hx-postnav .hx-next{text-align:right}
.hx-related{background:var(--hx-surface);border-top:1px solid var(--hx-line);margin-top:90px;padding:76px 0 90px}
.hx-journal .hx-related h2,.hx-journal .hx-authorposts h2{font-size:clamp(28px,3.6vw,40px);font-weight:500;margin:0 0 34px}
.hx-comments-wrap{padding:70px 0 90px}

/* ---- author page ---- */
.hx-authorhero{background:var(--hx-surface);border-bottom:1px solid var(--hx-line);padding:80px 0 70px}
.hx-authorhero-in{display:grid;grid-template-columns:auto minmax(0,1fr);gap:56px;align-items:center}
.hx-author-avatar{width:176px;height:176px;border-radius:50%;background:var(--hx-ink);border:1px solid var(--hx-ink);box-shadow:0 0 0 6px var(--hx-surface),0 0 0 7px var(--hx-gold,#B07A5B)}
.hx-journal .hx-authorhero h1{font-size:clamp(38px,5vw,64px);font-weight:500;margin:0 0 16px}
.hx-authorhero p{max-width:58ch;font-size:18px;line-height:1.7;color:var(--hx-text);margin:0 0 22px}
.hx-author-meta{list-style:none;display:flex;flex-wrap:wrap;gap:10px 28px;margin:0;padding:0;font-size:14px;color:var(--hx-muted)}
.hx-author-meta strong{color:var(--hx-ink);font-size:18px;font-family:var(--hx-display)}
.hx-author-meta a{font-weight:700;color:var(--hx-ink);border-bottom:1px solid var(--hx-ink)}
.hx-authorposts{padding-top:64px;padding-bottom:100px}

/* ---- footer: structural, does not depend on custom classes ---- */
.hx-footer .hx-foot-cols > .e-con-inner{
  display:grid!important;grid-template-columns:1.5fr 1fr 1fr 1fr!important;gap:48px 40px;width:100%;max-width:100%;padding:0;
}
.hx-footer .hx-foot-cols > .e-con-inner > .e-con,
.hx-footer .hx-foot-cols > .e-con-inner > .e-con.e-parent{
  width:100%!important;max-width:none!important;min-width:0;--width:100%;--content-width:100%;flex:none;padding:0!important;
}
.hx-footer .hx-foot-cols > .e-con-inner > .e-con > .e-con-inner{width:100%;max-width:100%;padding:0}
.hx-footer .elementor-nav-menu--layout-vertical .elementor-item{white-space:normal;padding:7px 0!important}
.hx-footer .hx-logo-link img{height:auto!important;width:230px!important;max-width:100%;background:#FAF7F2;padding:12px 16px;border-radius:2px}
.hx-logo-link{display:inline-block;line-height:0}
@media (max-width:1024px){.hx-footer .hx-foot-cols > .e-con-inner{grid-template-columns:1fr 1fr!important;gap:40px 32px}}
@media (max-width:767px){
  .hx-footer .hx-foot-cols > .e-con-inner{grid-template-columns:1fr 1fr!important;gap:34px 20px}
  .hx-footer .hx-foot-cols > .e-con-inner > .e-con:first-child{grid-column:1/-1}
}

/* ---- home and about sections (Elementor containers use full width, layout is here) ---- */
.hx-sec,.hx-band{width:100%;padding:0!important;gap:0!important}
.hx-sec > .hx-wrap,.hx-band > .hx-wrap{display:flex;flex-direction:column;gap:0}
.hx-sec-pad{padding-top:96px!important;padding-bottom:96px!important}
.hx-sec-pad-s{padding-top:64px!important;padding-bottom:64px!important}
.hx-sec .hx-head{display:flex!important;flex-direction:row!important;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:40px;flex-wrap:wrap}
.hx-head > .e-con{width:auto!important;max-width:100%}
.hx-head .hx-h2 .elementor-heading-title{font-size:clamp(32px,4.2vw,54px);font-weight:500;line-height:1.05;margin:0}
.hx-head .hx-h2 .elementor-heading-title::after{display:none}
.hx-kicker p{margin:0 0 14px;font-size:11.5px;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--hx-gold,#B07A5B)!important}

/* hero */
.hx-hero{background:var(--hx-surface);overflow:hidden;padding:0!important}
.hx-hero-in{display:grid!important;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:64px;align-items:center;padding-top:76px;padding-bottom:84px}
.hx-hero-copy{display:flex;flex-direction:column;gap:0;min-width:0}
.hx-hero-copy h1,.hx-hero-copy .hx-h1 .elementor-heading-title{font-size:clamp(42px,6.2vw,84px);font-weight:500;line-height:1.02;letter-spacing:-.025em;margin:0 0 24px}
.hx-hero-copy .hx-lede p{font-size:19px;line-height:1.7;color:var(--hx-muted);max-width:46ch;margin:0 0 34px}
.hx-btnrow{display:flex!important;flex-direction:row!important;flex-wrap:wrap;gap:14px;align-items:center}
.hx-btnrow > .elementor-widget{width:auto!important;margin:0!important}
.hx-btn-ghost .elementor-button{background:transparent!important;color:var(--hx-ink)!important;border:1px solid var(--hx-ink)!important}
.hx-btn-ghost .elementor-button:hover{background:var(--hx-ink)!important;color:#fff!important}
.hx-stats{display:flex;gap:34px;flex-wrap:wrap;margin:44px 0 0;padding:26px 0 0;border-top:1px solid var(--hx-line)}
.hx-stats div{display:flex;flex-direction:column;gap:2px}
.hx-stats strong{font-family:var(--hx-display);font-size:30px;font-weight:500;color:var(--hx-ink);line-height:1}
.hx-stats span{font-size:12.5px;color:var(--hx-muted);letter-spacing:.06em}
.hx-collage{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;max-width:600px;margin-left:auto}
.hx-collage figure{margin:0;overflow:hidden;background:#fff;border:1px solid var(--hx-line);border-radius:var(--hx-r)}
.hx-collage img{width:100%;aspect-ratio:3/4;object-fit:contain;padding:14px;background:#fff}
.hx-collage .c1{grid-row:span 2}
.hx-collage .c1 img{aspect-ratio:3/4.4;padding:20px}
.hx-collage .c3{margin-top:0}
.hx-collage .hx-tag{position:absolute;left:-18px;bottom:36px;background:var(--hx-ink);color:#fff;padding:14px 18px;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;border-radius:2px;box-shadow:0 18px 30px -18px rgba(22,19,15,.6)}
.hx-collage .hx-tag b{color:var(--hx-gold,#B07A5B);font-weight:700}

/* trust strip */
.hx-trust{border-bottom:1px solid var(--hx-line);background:#fff}
.hx-trust-in{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.hx-trust-in div{padding:26px 24px;border-right:1px solid var(--hx-line);display:flex;flex-direction:column;gap:3px}
.hx-trust-in div:last-child{border-right:0}
.hx-trust-in strong{font-family:var(--hx-display);font-size:18px;font-weight:500;color:var(--hx-ink)}
.hx-trust-in span{font-size:13.5px;color:var(--hx-muted)}

/* two banners */
.hx-banners{display:grid!important;grid-template-columns:1fr 1fr;gap:26px}
.hx-banner{position:relative;overflow:hidden;border-radius:var(--hx-r-lg);min-height:460px;display:flex!important;flex-direction:column!important;justify-content:flex-end;padding:44px!important;gap:0}
.hx-banner-dark{background:var(--hx-ink)}
.hx-banner-light{background:var(--hx-surface-2)}
.hx-banner .hx-banner-img{position:absolute;right:-4%;top:6%;width:52%;pointer-events:none}
.hx-banner .hx-banner-img img{width:100%;height:auto;max-height:340px;object-fit:contain;filter:drop-shadow(0 26px 30px rgba(0,0,0,.28))}
.hx-banner-light .hx-banner-img{width:44%;right:2%}
.hx-banner-light .hx-banner-img img{border-radius:4px;transform:rotate(4deg);filter:drop-shadow(0 24px 28px rgba(22,19,15,.3))}
.hx-banner .elementor-heading-title{font-size:clamp(28px,3.2vw,44px);font-weight:500;line-height:1.08;max-width:12ch;margin:0 0 14px;position:relative;z-index:2}
.hx-banner-dark .elementor-heading-title{color:#fff}
.hx-banner .hx-banner-txt p{max-width:32ch;margin:0 0 24px;font-size:16px;position:relative;z-index:2}
.hx-banner-dark .hx-banner-txt p{color:#D8CFBF}
.hx-banner-light .hx-banner-txt p{color:var(--hx-text)}
.hx-banner .hx-kicker{position:relative;z-index:2}
.hx-banner-dark .elementor-button{background:#fff!important;color:var(--hx-ink)!important;border-color:#fff!important}
.hx-banner-dark .elementor-button:hover{background:var(--hx-gold,#B07A5B)!important;border-color:var(--hx-gold,#B07A5B)!important}
.hx-banner .elementor-widget-button{position:relative;z-index:2;width:auto}

/* values */
.hx-values{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.hx-value{padding:8px 36px 8px 0!important;border-right:1px solid var(--hx-line);margin-right:36px;gap:12px!important}
.hx-value:last-child{border-right:0;margin-right:0}
.hx-value .elementor-heading-title{font-size:26px;font-weight:500;line-height:1.2}
.hx-value .hx-vtxt p{color:var(--hx-muted);font-size:16px;line-height:1.7;margin:0}
.hx-value .hx-vk p{margin:0;font-size:11.5px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--hx-brand)!important}

/* journal on the home page */
.hx-cards-home{grid-template-columns:repeat(3,minmax(0,1fr))}
.hx-dark-sec{background:var(--hx-ink)}

/* about */
.hx-about-hero{background:var(--hx-surface)}
.hx-about-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center}
.hx-story{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px;align-items:start}
.hx-story .hx-big .elementor-heading-title{font-size:clamp(30px,3.8vw,50px);font-weight:500;line-height:1.1}
.hx-story .hx-copy p{font-size:18px;line-height:1.8;color:var(--hx-text)}
.hx-partners{display:flex;flex-wrap:wrap;gap:14px 44px;align-items:center;justify-content:space-between;padding:34px 0;border-top:1px solid var(--hx-line);border-bottom:1px solid var(--hx-line)}
.hx-partners span{font-family:var(--hx-display);font-size:clamp(20px,2.4vw,30px);font-weight:500;color:var(--hx-muted);letter-spacing:.02em}
.hx-partners small{font-family:var(--hx-body);font-size:11.5px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--hx-ink)}
.hx-cta-band{background:var(--hx-ink);border-radius:var(--hx-r-lg);padding:64px 56px!important;display:flex!important;flex-direction:row!important;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:28px!important}
.hx-cta-band .elementor-heading-title{color:#fff;font-size:clamp(28px,3.4vw,44px);font-weight:500;max-width:18ch;line-height:1.1}
.hx-cta-band p,.hx-cta-band a:not(.elementor-button){color:#D8CFBF}
.hx-cta-band .elementor-button{background:#fff!important;color:var(--hx-ink)!important;border-color:#fff!important}
.hx-cta-band .elementor-button:hover{background:var(--hx-gold,#B07A5B)!important;border-color:var(--hx-gold,#B07A5B)!important}

/* ---- responsive ---- */
@media (max-width:1100px){
  .hx-jlayout{grid-template-columns:1fr;gap:48px}
  .hx-jside{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 34px}
  .hx-hero-in,.hx-about-grid,.hx-story{grid-template-columns:1fr;gap:44px}
  .hx-collage{margin:0 auto}
  .hx-collage .hx-tag{left:12px}
  .hx-trust-in{grid-template-columns:1fr 1fr}
  .hx-trust-in div:nth-child(2){border-right:0}
  .hx-trust-in div:nth-child(-n+2){border-bottom:1px solid var(--hx-line)}
}
@media (max-width:900px){
  .hx-cards,.hx-cards-home{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hx-banners{grid-template-columns:1fr}
  .hx-values{grid-template-columns:1fr}
  .hx-value{border-right:0;border-bottom:1px solid var(--hx-line);margin:0 0 26px;padding:0 0 26px!important}
  .hx-value:last-child{border-bottom:0}
  .hx-authorhero-in{grid-template-columns:1fr;gap:28px;text-align:center;justify-items:center}
  .hx-author-meta{justify-content:center}
}
@media (max-width:600px){
  .hx-cards,.hx-cards-home{grid-template-columns:1fr;gap:34px}
  .hx-jside{grid-template-columns:1fr}
  .hx-jhead{padding:52px 0 40px}
  .hx-phead{padding:48px 20px 26px}
  .hx-pimg{padding:0 16px}
  .hx-authorbox{flex-direction:column;padding:22px}
  .hx-postnav{grid-template-columns:1fr}
  .hx-sec-pad{padding-top:60px!important;padding-bottom:60px!important}
  .hx-hero-in{padding-top:44px;padding-bottom:56px}
  .hx-banner{min-height:400px;padding:28px!important}
  .hx-banner .hx-banner-img{width:60%;top:4%}
  .hx-cta-band{padding:40px 26px!important}
  .hx-stats{gap:20px 26px}
  .hx-trust-in div{padding:18px 14px}
  .hx-wrap,.hx-wrap-narrow{padding-left:16px;padding-right:16px}
  .hx-collage .hx-tag{position:static;grid-column:1/-1;text-align:center}
}

.hx-bg-surface{background:var(--hx-surface);border-top:1px solid var(--hx-line);border-bottom:1px solid var(--hx-line)}
.hx-sec .hx-grid ul.products,.hx-sec .hx-cats ul.products{margin:0!important}

/* ---- refinements after visual check ---- */
.hx-head > .elementor-widget,.hx-head > .e-con{width:auto!important;flex:0 1 auto}
.hx-collage .c1{display:flex}
.hx-collage .c1 img{height:100%;aspect-ratio:auto;min-height:100%}
/* departments: centred rows, so 5 or 8 categories never leave a lonely card */
.hx-cats ul.products{display:flex!important;flex-wrap:wrap;justify-content:center;gap:34px 24px!important}
.hx-cats ul.products li.product{flex:0 0 calc((100% - 96px)/5)!important;width:calc((100% - 96px)/5)!important}
@media (max-width:1100px){.hx-cats ul.products li.product{flex-basis:calc((100% - 48px)/3)!important;width:calc((100% - 48px)/3)!important}}
@media (max-width:600px){.hx-cats ul.products{gap:26px 14px!important}.hx-cats ul.products li.product{flex-basis:calc((100% - 14px)/2)!important;width:calc((100% - 14px)/2)!important}}
/* banners: photo sits in its own frame, text keeps to the left half */
.hx-banner .elementor-widget{max-width:54%}
.hx-banner .elementor-widget-shortcode{max-width:none;position:absolute;inset:0;pointer-events:none}
.hx-banner .hx-banner-img{right:6%;top:9%;width:36%;aspect-ratio:4/5;background:#fff;border-radius:6px;padding:14px;box-shadow:0 26px 40px -22px rgba(22,19,15,.55);transform:rotate(3deg)}
.hx-banner .hx-banner-img img{width:100%;height:100%;max-height:none;object-fit:contain;filter:none;transform:none;border-radius:0}
.hx-banner-light .hx-banner-img{width:34%;right:7%;transform:rotate(-3deg)}
@media (max-width:600px){
  .hx-banner .elementor-widget{max-width:100%}
  .hx-banner .hx-banner-img,.hx-banner-light .hx-banner-img{width:44%;right:8%;top:6%}
  .hx-banner{min-height:440px}
}

.hx-cta-band > .e-con,.hx-cta-band > .elementor-widget{width:auto!important;flex:0 1 auto}
.hx-head-search .elementor-search-form__submit,.hx-head-search button[type="submit"]{background:var(--hx-ink)!important;color:#fff!important;border-radius:0 2px 2px 0!important}
.hx-head-search .elementor-search-form__container{border-radius:2px;min-height:46px}
@media (max-width:600px){
  .hx-collage{grid-template-columns:1fr 1fr;max-width:100%}
  .hx-collage .c1{grid-row:auto}
  .hx-collage .c1 img{aspect-ratio:3/4;height:auto;min-height:0}
  .hx-collage .c3{display:none}
  .hx-collage .hx-tag{grid-column:1/-1}
}

/* ---- fixes after checking the live site ---- */
.hx-collage{align-items:start;grid-template-rows:auto auto}
.hx-collage .c1{display:block;grid-row:span 2}
.hx-collage .c1 img{height:auto!important;min-height:0!important;aspect-ratio:3/4.4!important}
.hx-collage figure img{max-height:520px}
.hx-journal .hx-side-cta h4{color:var(--hx-gold,#B07A5B);border-bottom-color:rgba(255,255,255,.25)}
.hx-side-cta a.button{display:block;background:#fff;color:var(--hx-ink);border:1px solid #fff;padding:14px 18px;text-align:center;text-transform:uppercase;letter-spacing:.14em;font-size:11.5px;font-weight:700;border-radius:2px}
.hx-side-cta a.button:hover{background:var(--hx-gold,#B07A5B);border-color:var(--hx-gold,#B07A5B);color:var(--hx-ink)}
.hx-side-search button{border-radius:0!important;padding:0;min-height:46px;box-shadow:none}
.hx-side-search{overflow:hidden}
/* plain pages: cart, checkout, account, policies */
.hx-page .hx-jhead{padding:56px 0 42px}
.hx-page .hx-jhead h1{font-size:clamp(34px,4.6vw,56px);max-width:none}
.hx-pagebody{padding-top:52px;padding-bottom:100px}
.hx-pagebody > .woocommerce,.hx-pagebody .entry-content{max-width:100%}
/* mobile header: logo left, icons right, search on its own row underneath */
@media (max-width:1024px){
  .hx-header-bar > .e-con-inner{
    display:grid!important;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"logo icons" "search search";
    gap:10px 12px;align-items:center;width:100%;padding:10px 0;
  }
  .hx-header-bar > .e-con-inner > .e-con{width:auto!important;max-width:100%!important;min-width:0;padding:0!important;--width:auto}
  .hx-header-bar > .e-con-inner > .e-con:nth-child(1){grid-area:logo}
  .hx-header-bar > .e-con-inner > .e-con:nth-child(2){grid-area:search;width:100%!important}
  .hx-header-bar > .e-con-inner > .e-con:nth-child(3){grid-area:icons;flex-wrap:nowrap}
  .hx-header-bar .hx-logo-img{height:44px!important}
}
/* hero collage, final: two equal portrait cards, no spans, nothing to overlap */
.hx-hero .hx-collage{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start;max-width:560px;margin-left:auto;position:relative}
.hx-hero .hx-collage figure{margin:0;aspect-ratio:4/5;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--hx-line);border-radius:var(--hx-r);overflow:hidden;grid-row:auto!important}
.hx-hero .hx-collage figure img,.hx-hero .hx-collage .c1 img{width:100%!important;height:100%!important;max-height:none!important;aspect-ratio:auto!important;min-height:0!important;object-fit:contain;padding:18px}
.hx-hero .hx-collage .c2{margin-top:44px}
.hx-hero .hx-collage .c3{display:none!important}
.hx-hero .hx-collage .hx-tag{position:absolute;left:-16px;bottom:64px;right:auto;top:auto;z-index:3}
@media (max-width:1100px){.hx-hero .hx-collage{margin:0 auto;max-width:520px}}
@media (max-width:600px){
  .hx-hero .hx-collage{gap:12px}
  .hx-hero .hx-collage .c2{margin-top:24px}
  .hx-hero .hx-collage .hx-tag{position:static;grid-column:1/-1;text-align:center;margin-top:8px}
}

/* =========================================================================
   17 CONTACT, FOOTER BAR, PERSONALISED FIELD, DEPARTMENTS, MOBILE HEADER
   ========================================================================= */

/* ---- departments: four across, extra ones wrap and stay centred ---- */
.hx-cats ul.products li.product{flex:0 0 calc((100% - 72px)/4)!important;width:calc((100% - 72px)/4)!important}
@media (max-width:1100px){.hx-cats ul.products li.product{flex-basis:calc((100% - 24px)/2)!important;width:calc((100% - 24px)/2)!important}}
@media (max-width:600px){.hx-cats ul.products li.product{flex-basis:calc((100% - 14px)/2)!important;width:calc((100% - 14px)/2)!important}}

/* ---- footer ---- */
.hx-footer .hx-social .elementor-social-icons-wrapper,.hx-footer .hx-social{justify-content:flex-start!important;text-align:left}
.hx-footer .hx-social .elementor-grid{justify-content:flex-start!important;justify-items:start}
.hx-footer .elementor-widget-social-icons{width:100%}
/* never collapse the footer menus into a hamburger */
.hx-footer .elementor-menu-toggle{display:none!important}
.hx-footer .elementor-nav-menu--main{display:block!important}
.hx-footer .elementor-nav-menu--dropdown{display:none!important}
.hx-footer .elementor-nav-menu--layout-vertical .elementor-nav-menu{display:flex;flex-direction:column}
.hx-footer .hx-foot-bottom > .e-con-inner{display:flex!important;flex-direction:row!important;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 28px}
.hx-footer .hx-foot-bottom .elementor-widget{width:auto!important}
.hx-footer .hx-foot-legal p{display:flex;flex-wrap:wrap;gap:8px 26px;margin:0;justify-content:flex-end}
.hx-footer .hx-foot-legal a{color:#D8CFBF!important;font-size:13.5px}
.hx-footer .hx-foot-legal a:hover{color:#fff!important}
.hx-footer .hx-foot-copy p{margin:0}
@media (max-width:767px){
  .hx-footer .hx-foot-legal p{justify-content:flex-start;gap:8px 20px}
  .hx-footer .hx-foot-bottom .elementor-widget{width:100%!important}
}

/* ---- contact ---- */
.hx-page-hero{padding:0!important}
.hx-page-hero-in{padding-top:72px;padding-bottom:60px}
.hx-page-hero-in .hx-h1 .elementor-heading-title{font-size:clamp(38px,5.4vw,68px);font-weight:500;line-height:1.05;max-width:16ch}
.hx-page-hero-in .hx-lede p{font-size:18px;color:var(--hx-muted);max-width:52ch;margin:18px 0 0}
.hx-contact-grid{display:grid!important;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:72px;align-items:start}
.hx-contact-left{gap:0}
.hx-h2s .elementor-heading-title{font-size:clamp(28px,3vw,38px);font-weight:500;margin:0 0 26px}
.hx-contact-list{list-style:none;margin:0 0 28px;padding:0;border-top:1px solid var(--hx-line)}
.hx-contact-list li{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:20px 0;border-bottom:1px solid var(--hx-line);align-items:baseline}
.hx-contact-list span{font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--hx-gold,#B07A5B)}
.hx-contact-list a,.hx-contact-list b{font-family:var(--hx-display);font-size:20px;font-weight:500;color:var(--hx-ink);word-break:break-word}
.hx-contact-list a:hover{color:var(--hx-brand)}
.hx-contact-note{display:flex;flex-direction:column;gap:4px;padding:18px 20px;background:var(--hx-surface);border:1px solid var(--hx-line);border-radius:var(--hx-r);margin-bottom:22px;font-size:15px}
.hx-contact-note span{color:var(--hx-muted)}
.hx-contact-links{display:flex;flex-wrap:wrap;gap:10px}
.hx-contact-links a{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:10px 14px;border:1px solid var(--hx-line);border-radius:2px;background:#fff}
.hx-contact-links a:hover{background:var(--hx-ink);color:#fff;border-color:var(--hx-ink)}
.hx-contact-right{background:#fff;border:1px solid var(--hx-line);border-radius:var(--hx-r-lg);padding:44px!important;box-shadow:0 30px 50px -40px rgba(22,19,15,.45)}
.hx-form .elementor-field-group{margin-bottom:8px}
.hx-form .elementor-field-label{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--hx-ink);margin-bottom:8px}
.hx-form .elementor-field-textual{background:var(--hx-ivory,#FAF7F2);border:1px solid var(--hx-line);border-radius:2px;padding:14px 16px;min-height:52px}
.hx-form textarea.elementor-field-textual{min-height:150px}
.hx-form .elementor-button{width:100%;justify-content:center}
@media (max-width:900px){
  .hx-contact-grid{grid-template-columns:1fr;gap:44px}
  .hx-contact-right{padding:28px 20px!important}
  .hx-contact-list li{grid-template-columns:90px 1fr}
}

/* ---- personalised text field ---- */
.hxl-personal{margin:0 0 20px;padding:18px 20px;background:var(--hx-surface);border:1px solid var(--hx-line);border-radius:var(--hx-r)}
.hxl-personal label{display:block;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--hx-ink);margin-bottom:10px}
.hxl-personal label em{font-style:normal;font-weight:500;letter-spacing:0;text-transform:none;color:var(--hx-muted);font-size:13px}
.hxl-personal-row{position:relative}
.hxl-personal input[type="text"]{padding-right:64px;background:#fff;font-size:17px;font-family:var(--hx-display)}
.hxl-count{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:12px;color:var(--hx-muted);font-variant-numeric:tabular-nums}
.hxl-personal small{display:block;margin-top:10px;font-size:13px;color:var(--hx-muted)}

/* ---- header: tidy on phones and tablets ---- */
.hx-header .elementor-nav-menu--main .menu-item-has-children > a .sub-arrow{margin-left:6px}
@media (max-width:1024px){
  .hx-header-bar > .e-con-inner{grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"logo icons" "search search"!important;gap:10px 12px!important}
  .hx-header-bar .hx-logo-img{height:42px!important}
  .hx-deps-bar{border-top:1px solid var(--hx-line-soft)}
  .hx-deps-bar > .e-con-inner,.hx-deps-bar{padding-top:0!important;padding-bottom:0!important}
  .hx-deps .elementor-menu-toggle{width:100%;justify-content:flex-start;border-radius:0;background:transparent;color:var(--hx-ink);padding:12px 0;font-size:13px;font-weight:700;letter-spacing:.14em}
  .hx-deps .elementor-menu-toggle::after{content:"Menu";margin-left:10px;font-family:var(--hx-body);text-transform:uppercase}
  .hx-deps .elementor-nav-menu--dropdown{background:#fff;border:1px solid var(--hx-line);border-radius:0 0 var(--hx-r) var(--hx-r)}
  .hx-deps .elementor-nav-menu--dropdown a{padding:14px 20px!important;font-size:14px;color:var(--hx-ink);border-bottom:1px solid var(--hx-line-soft)}
  .hx-deps .elementor-nav-menu--dropdown .sub-menu a{padding-left:38px!important;font-size:13.5px;color:var(--hx-text)}
  .hx-deps .elementor-nav-menu--dropdown .sub-menu .sub-menu a{padding-left:56px!important}
}
@media (max-width:600px){
  .hx-head-search input[type="search"]{min-height:44px}
  .hx-cart-toggle .elementor-button{padding:10px 14px!important}
  .hx-head-icon .elementor-icon{width:38px;height:38px}
}

/* ---- round 4 corrections ---- */
.hx-hero .hx-collage .hx-tag{position:static!important;grid-column:1/-1;justify-self:start;margin-top:6px}
.hx-hero .hx-collage .c2{margin-top:0}
.hx-head-search .elementor-search-form__container{width:100%}
@media (max-width:767px){
  .hx-header{position:relative}
  .hx-head-search{width:100%}
  .hx-hero .hx-collage .hx-tag{justify-self:stretch}
}
.hx-head-search .elementor-search-form__input{border-radius:2px 0 0 2px!important;border:1px solid var(--hx-line)!important;border-right:0!important;background:#fff}
.hx-head-search .elementor-search-form__container{border-radius:2px!important;overflow:hidden}
.hx-footer > .e-con-inner{padding-left:24px!important;padding-right:24px!important}
@media (max-width:600px){.hx-footer > .e-con-inner{padding-left:16px!important;padding-right:16px!important}}

/* =========================================================================
   18 MENU, CARD ACTIONS, BUY NOW, PRODUCT PAGE, QUICK VIEW, CATEGORIES, PAGE HEROES
   ========================================================================= */

/* ---- menu: nothing may clip the dropdowns ---- */
.hx-deps-bar,.hx-deps-bar > .e-con-inner,.hx-header,.hx-header-bar,.hx-deps .elementor-widget-container{overflow:visible!important}
.hx-deps .elementor-nav-menu--main .sub-menu{overflow:visible!important;min-width:230px}
.hx-deps .elementor-nav-menu--main .sub-menu .sub-menu{margin-top:-1px}
.hx-deps .elementor-nav-menu--main .sub-menu a.has-submenu .sub-arrow{margin-left:auto}
.hx-deps .elementor-nav-menu--main .sub-menu li{position:relative}

@media (max-width:1024px){
  .hx-deps .elementor-nav-menu--dropdown{position:absolute;left:0;right:0;z-index:9999;box-shadow:0 24px 40px -24px rgba(22,19,15,.5);max-height:70vh;overflow:auto!important}
  .hx-deps .elementor-nav-menu--dropdown .elementor-item,.hx-deps .elementor-nav-menu--dropdown a{display:flex;align-items:center;justify-content:space-between;min-height:50px;font-size:15px;font-weight:600;letter-spacing:.02em;text-transform:none}
  .hx-deps .elementor-nav-menu--dropdown .sub-menu a{font-weight:500;font-size:14.5px;min-height:46px}
  .hx-deps .elementor-nav-menu--dropdown .sub-arrow{width:44px;height:44px;display:flex;align-items:center;justify-content:center;margin:-6px 0 -6px auto;border-left:1px solid var(--hx-line-soft)}
  .hx-deps .elementor-nav-menu--dropdown .sub-menu{background:var(--hx-surface)}
  .hx-deps .elementor-menu-toggle{min-height:48px}
}

/* ---- footer spacing ---- */
.hx-footer{padding:0!important}
.hx-footer > .e-con-inner{padding-top:0!important;padding-bottom:0!important}
.hx-footer .hx-foot-cols{padding:44px 0 26px!important;margin:0!important}
.hx-footer .hx-foot-cols > .e-con-inner{gap:32px 40px}
.hx-footer .hx-foot-col{gap:10px!important}
.hx-footer .hx-foot-col > .e-con-inner{gap:10px!important}
.hx-footer .elementor-widget-social-icons{margin-top:6px}
.hx-footer .hx-foot-bottom{padding:16px 0 18px!important;margin:0!important}
.hx-footer .elementor-nav-menu--layout-vertical .elementor-item{padding:5px 0!important}
@media (max-width:767px){.hx-footer .hx-foot-cols{padding:36px 0 18px!important}}

/* ---- product card icons: wishlist and quick view, centred in circles ---- */
.woocommerce ul.products li.product > .hxl-card-actions,.hxl-card-actions{
  position:absolute!important;top:12px!important;right:12px!important;left:auto!important;z-index:7;
  display:flex;flex-direction:column;gap:8px;opacity:0;transform:translateX(6px);transition:opacity .25s,transform .25s;
}
.woocommerce ul.products li.product:hover > .hxl-card-actions,
.woocommerce ul.products li.product:focus-within > .hxl-card-actions{opacity:1;transform:none}
@media (hover:none){.hxl-card-actions{opacity:1!important;transform:none!important}}
.hxl-act{display:block;line-height:0;margin:0}
.hxl-act *{box-sizing:border-box}
.hxl-act .yith-wcwl-add-to-wishlist,.hxl-act .yith-wcwl-add-button,.hxl-act .yith-wcwl-wishlistaddedbrowse,.hxl-act .yith-wcwl-wishlistexistsbrowse{margin:0!important;padding:0!important;display:block!important;line-height:0}
.hxl-act a,.hxl-act button.hxl-qv{
  width:40px!important;height:40px!important;min-width:0;border-radius:50%!important;background:#fff!important;border:1px solid var(--hx-line)!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0!important;margin:0!important;
  font-size:0!important;line-height:0!important;color:var(--hx-ink)!important;box-shadow:0 8px 18px -10px rgba(22,19,15,.45);
  cursor:pointer;text-indent:0!important;position:relative;text-decoration:none;transition:background .2s,color .2s,border-color .2s,transform .2s;
}
.hxl-act a:hover,.hxl-act button.hxl-qv:hover{background:var(--hx-ink)!important;color:#fff!important;border-color:var(--hx-ink)!important;transform:scale(1.06)}
.hxl-act a span,.hxl-act a .yith-wcwl-tooltip,.hxl-act .feedback,.hxl-act .ajax-loading,.hxl-act .yith-wcwl-icon-svg + span{display:none!important}
.hxl-act a i,.hxl-act a svg,.hxl-act button svg{
  position:static!important;float:none!important;margin:0!important;padding:0!important;left:auto!important;top:auto!important;transform:none!important;
  width:18px!important;height:18px!important;font-size:18px!important;line-height:1!important;display:block!important;color:inherit;
}
.hxl-act a i::before{display:block;line-height:1}

/* ---- card buttons: Add to cart + Buy now ---- */
.woocommerce ul.products li.product .hxl-card-btns{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto;width:100%}
.woocommerce ul.products li.product .hxl-card-btns .button,
.woocommerce ul.products li.product .hxl-card-btns .added_to_cart{margin:0!important;width:100%;min-width:0;padding:13px 8px;font-size:11px!important;letter-spacing:.1em;white-space:nowrap;text-align:center;justify-content:center}
.woocommerce ul.products li.product .hxl-card-btns .button:only-child,.woocommerce ul.products li.product .hxl-card-btns .added_to_cart{grid-column:1/-1}
.woocommerce ul.products li.product .hxl-card-btns .hxl-buy{background:var(--hx-ink)!important;color:#fff!important;border:1px solid var(--hx-ink)!important}
.woocommerce ul.products li.product .hxl-card-btns .hxl-buy:hover{background:var(--hx-brand)!important;border-color:var(--hx-brand)!important}
@media (max-width:520px){.woocommerce ul.products li.product .hxl-card-btns{grid-template-columns:1fr}}

/* ---- related products: the Elementor widget used a row layout, force a column ---- */
.woocommerce ul.products li.product{flex-direction:column!important}
.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link{display:flex!important;flex-direction:column;width:100%;min-width:0}
.hx-also .related > h2,.hx-also .upsells > h2,.hx-also section > h2{display:none}
.hx-also .products{margin-top:6px}
.hx-also{gap:22px!important;padding-bottom:70px!important}

/* ---- single product ---- */
.hx-product-top{align-items:flex-start!important}
.hx-product-top > .e-con-inner{align-items:flex-start!important}
.hx-ptitle .product_title{font-family:var(--hx-display);font-size:clamp(28px,3.3vw,46px);font-weight:500;line-height:1.1;letter-spacing:-.015em;margin:4px 0 4px;color:var(--hx-ink)}
.hx-product-top .woocommerce-breadcrumb{margin:0}
.hx-atc form.cart{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch;margin:0}
.hx-atc form.cart .hxl-personal{flex:1 1 100%}
.hx-atc form.cart .quantity{flex:0 0 auto}
.hx-atc form.cart .single_add_to_cart_button{flex:1 1 180px;margin:0!important}
.hx-atc form.cart .hxl-buynow{flex:1 1 100%;margin:0!important;background:var(--hx-brand)!important;border-color:var(--hx-brand)!important;color:#fff!important}
.hx-atc form.cart .hxl-buynow:hover{background:var(--hx-ink)!important;border-color:var(--hx-ink)!important}
.hxl-qv-form form.cart{display:flex;flex-wrap:wrap;gap:10px}
.hxl-qv-form form.cart .hxl-personal,.hxl-qv-form form.cart .hxl-buynow{flex:1 1 100%;margin:0!important}
.hxl-qv-form form.cart .single_add_to_cart_button{flex:1 1 150px;margin:0!important}
.hxl-qv-form form.cart .hxl-buynow{background:var(--hx-brand)!important;border-color:var(--hx-brand)!important;color:#fff!important}
@media (max-width:900px){
  .hx-product-top > .e-con-inner{flex-direction:column!important}
  .hx-product-top > .e-con-inner > .e-con{width:100%!important;max-width:100%!important}
}

/* ---- quick view ---- */
html.hxl-lock{overflow:hidden}
.hxl-modal{position:fixed;inset:0;z-index:100000;background:rgba(22,19,15,.6);display:flex;align-items:center;justify-content:center;padding:20px}
.hxl-modal[hidden]{display:none}
.hxl-modal-box{position:relative;background:#fff;border-radius:6px;max-width:940px;width:100%;max-height:92vh;overflow:auto;padding:36px;box-shadow:0 40px 80px -30px rgba(0,0,0,.6)}
.hxl-modal-x{position:absolute;top:8px;right:14px;font-size:34px;line-height:1;background:none;border:0;cursor:pointer;color:var(--hx-ink);padding:4px 8px}
.hxl-modal-load{padding:60px 0;text-align:center;color:var(--hx-muted)}
.hxl-qv-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px;align-items:start}
.hxl-qv-img img{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;background:#fff;border:1px solid var(--hx-line);border-radius:var(--hx-r)}
.hxl-qv-info{display:flex;flex-direction:column;gap:12px;align-items:flex-start;min-width:0}
.hxl-qv-info h3{font-family:var(--hx-display);font-size:clamp(24px,3vw,32px);font-weight:500;line-height:1.15;margin:0}
.hxl-qv-price{font-size:22px;font-weight:700;color:var(--hx-ink)}
.hxl-qv-price del{font-size:16px;font-weight:400;color:var(--hx-muted);margin-right:8px}
.hxl-qv-price ins{text-decoration:none}
.hxl-qv-desc p{margin:0;color:var(--hx-text);font-size:15.5px}
.hxl-qv-form{width:100%}
@media (max-width:700px){.hxl-modal-box{padding:22px 18px}.hxl-qv-body{grid-template-columns:1fr;gap:20px}}

/* ---- categories: five across, "Shop all" tile completes the row ---- */
.hx-cats ul.products li.product{flex:0 0 calc((100% - 96px)/5)!important;width:calc((100% - 96px)/5)!important}
.hx-cats ul.products li.product-category{display:flex!important}
.hx-cats ul.products li.product-category > a{flex:1 1 auto}
.hx-cats ul.products li.product-category .woocommerce-loop-category__title{font-size:19px!important}
.hx-cat-all > a{background:var(--hx-ink)!important;border-radius:var(--hx-r);color:#fff!important;transition:background .3s}
.hx-cat-all > a:hover{background:var(--hx-brand)!important}
.hx-cat-all > a::after{display:none!important;content:none!important}
.hx-cat-all-in{display:flex;flex-direction:column;justify-content:flex-end;gap:10px;padding:26px 22px;min-height:100%;height:100%;width:100%}
.hx-cat-all-in small{font-size:11px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--hx-gold,#B07A5B)}
.hx-cat-all-in strong{font-family:var(--hx-display);font-size:clamp(22px,2vw,28px);font-weight:500;line-height:1.12;color:#fff}
.hx-cat-all-in em{font-style:normal;font-size:24px;color:var(--hx-gold,#B07A5B);transition:transform .3s var(--hx-ease)}
.hx-cat-all:hover em{transform:translateX(6px)}
@media (max-width:1100px){.hx-cats ul.products li.product{flex-basis:calc((100% - 48px)/3)!important;width:calc((100% - 48px)/3)!important}}
@media (max-width:600px){.hx-cats ul.products li.product{flex-basis:calc((100% - 14px)/2)!important;width:calc((100% - 14px)/2)!important}.hx-cat-all-in{padding:18px 14px}}

/* ---- inner page heroes ---- */
.hx-page-hero{background:var(--hx-surface);border-bottom:1px solid var(--hx-line)}
.hx-page-hero-in{padding-top:56px!important;padding-bottom:52px!important}
.hx-crumbs{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 22px;font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--hx-muted)}
.hx-crumbs a{color:var(--hx-muted)}
.hx-crumbs a:hover{color:var(--hx-brand)}
.hx-crumbs b{color:var(--hx-ink);font-weight:700}
.hx-crumbs span{color:var(--hx-gold,#B07A5B)}
.hx-hero-dark{background:var(--hx-ink)!important;border-bottom:0;position:relative;overflow:hidden}
.hx-hero-dark::before,.hx-hero-dark::after{content:"";position:absolute;border:1px solid rgba(176,122,91,.32);border-radius:50%;pointer-events:none}
.hx-hero-dark::before{width:460px;height:460px;right:-140px;top:-190px}
.hx-hero-dark::after{width:280px;height:280px;right:60px;top:20px;border-color:rgba(176,122,91,.2)}
.hx-hero-dark .hx-page-hero-in{position:relative;z-index:2}
.hx-hero-dark .hx-h1 .elementor-heading-title{color:#fff!important}
.hx-hero-dark .hx-lede p{color:#D8CFBF!important}
.hx-hero-dark .hx-crumbs,.hx-hero-dark .hx-crumbs a{color:#A79E8E}
.hx-hero-dark .hx-crumbs b{color:#fff}
.hx-page-hero .hx-lede{margin:0!important;max-width:none!important}
.hx-page-hero .hx-lede p{margin:16px 0 0}
.hx-page-hero .hx-crumbs-w{width:100%}
@media (max-width:767px){.hx-page-hero-in{padding-top:40px!important;padding-bottom:36px!important}.hx-hero-dark::before{right:-220px}}
@media (max-width:1024px){
  .hx-deps .elementor-nav-menu--dropdown a:hover,.hx-deps .elementor-nav-menu--dropdown a:focus,.hx-deps .elementor-nav-menu--dropdown a.elementor-item-active,.hx-deps .elementor-nav-menu--dropdown a.highlighted{background:var(--hx-surface)!important;color:var(--hx-brand)!important}
}
@media (min-width:1025px){
  .hx-deps .elementor-nav-menu--main .sub-menu{background:#fff!important;border:1px solid var(--hx-line);border-radius:0 0 var(--hx-r) var(--hx-r);box-shadow:0 26px 44px -26px rgba(22,19,15,.45);z-index:9999!important;padding:6px 0}
  .hx-deps .elementor-nav-menu--main .sub-menu .sub-menu{border-radius:var(--hx-r);margin-left:2px}
  .hx-deps .elementor-nav-menu--main .sub-menu a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 22px!important;font-size:14.5px;color:var(--hx-ink);white-space:nowrap}
  .hx-deps .elementor-nav-menu--main .sub-menu a:hover,.hx-deps .elementor-nav-menu--main .sub-menu a.highlighted{background:var(--hx-surface)!important;color:var(--hx-brand)!important}
}

/* =========================================================================
   19 CART, CHECKOUT, ACCOUNT, ORDER RECEIVED, SOCIAL ICONS
   Written against the Elementor cart and checkout widgets (e-cart__*, e-checkout__*)
   and the plain WooCommerce markup underneath them.
   ========================================================================= */

/* ---- one notice style everywhere ---- */
body .woocommerce-message,body .woocommerce-info,body .woocommerce-error,body .woocommerce-notice{
  background:#fff!important;border:1px solid var(--hx-line)!important;border-left:3px solid var(--hx-brand)!important;border-radius:var(--hx-r-sm)!important;
  outline:0!important;box-shadow:none!important;padding:15px 20px!important;margin:0 0 22px!important;color:var(--hx-text)!important;font-size:15px;
  display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap;list-style:none;width:auto;
}
body .woocommerce-message{border-left-color:var(--hx-green)!important}
body .woocommerce-error{border-left-color:#9A3412!important}
body .woocommerce-message::before,body .woocommerce-info::before,body .woocommerce-error::before{display:none!important;content:none!important}
body .woocommerce-error li{margin:0}
body .woocommerce-message .button,body .woocommerce-info .button{margin:0 0 0 auto!important;order:2}
body .woocommerce-info a,body .woocommerce-message a:not(.button),body .woocommerce-error a{color:var(--hx-brand)!important;text-decoration:underline;text-underline-offset:3px}

/* ---- links and buttons inside the Elementor cart / checkout / account widgets ---- */
.hx-cart a:not(.button):not(.remove),.hx-checkout a:not(.button),.hx-account a:not(.button),.hx-thanks a:not(.button){color:var(--hx-ink)}
.hx-cart a:not(.button):not(.remove):hover,.hx-checkout a:not(.button):hover,.hx-account a:not(.button):hover{color:var(--hx-brand)}
.hx-cart .button,.hx-cart button.button,.hx-checkout .button,.hx-checkout button.button,.hx-account .button,.hx-account button.button,.hx-thanks .button,
.woocommerce .woocommerce-form-login .button,.woocommerce .woocommerce-form-register .button{
  background:var(--hx-ink)!important;color:#fff!important;border:1px solid var(--hx-ink)!important;border-radius:2px!important;
  font-family:var(--hx-body)!important;font-weight:700!important;font-size:12px!important;letter-spacing:.12em;text-transform:uppercase;padding:15px 24px!important;
  box-shadow:none!important;min-height:0;line-height:1.2;transition:background .2s,border-color .2s,color .2s;
}
.hx-cart .button:hover,.hx-checkout .button:hover,.hx-account .button:hover,.woocommerce .woocommerce-form-login .button:hover{background:var(--hx-brand)!important;border-color:var(--hx-brand)!important;color:#fff!important;transform:none}
.hx-cart button[name="update_cart"],.hx-cart .coupon .button{background:transparent!important;color:var(--hx-ink)!important;border:1px solid var(--hx-ink)!important}
.hx-cart button[name="update_cart"]:hover,.hx-cart .coupon .button:hover{background:var(--hx-ink)!important;color:#fff!important}
.hx-cart button[name="update_cart"]:disabled,.hx-cart button[name="update_cart"][aria-disabled="true"]{opacity:.4;cursor:not-allowed;background:transparent!important;color:var(--hx-ink)!important}
.hx-cart .checkout-button,.hx-checkout #place_order{background:var(--hx-brand)!important;border-color:var(--hx-brand)!important;width:100%;text-align:center;font-size:13px!important;padding:18px 24px!important}
.hx-cart .checkout-button:hover,.hx-checkout #place_order:hover{background:var(--hx-ink)!important;border-color:var(--hx-ink)!important}

/* ---- quantity stepper ---- */
.woocommerce .quantity{display:inline-flex;align-items:center;border:1px solid var(--hx-line);border-radius:2px;background:#fff;overflow:hidden;height:50px}
.woocommerce .quantity input.qty{width:46px;height:48px;min-height:0!important;border:0!important;padding:0!important;text-align:center;background:transparent;font-size:15px;font-weight:600;-moz-appearance:textfield;box-shadow:none!important}
.woocommerce .quantity input.qty::-webkit-outer-spin-button,.woocommerce .quantity input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.woocommerce .quantity .hxl-qty-btn{width:40px;height:48px;border:0;background:transparent;font-size:18px;line-height:1;cursor:pointer;color:var(--hx-ink);padding:0}
.woocommerce .quantity .hxl-qty-btn:hover{background:var(--hx-surface)}

/* ================================ CART ================================ */
.hx-cart .e-cart__container{display:grid!important;grid-template-columns:minmax(0,1.6fr) minmax(0,.9fr)!important;gap:32px!important;width:100%!important;align-items:start}
.hx-cart .e-cart__column{width:100%!important;max-width:100%!important;min-width:0}
.hx-cart .e-cart-section,.hx-cart .e-shop-table,.hx-cart .coupon.e-cart-section{
  background:#fff!important;border:1px solid var(--hx-line)!important;border-radius:var(--hx-r)!important;box-shadow:none!important;padding:0!important;margin:0 0 20px!important;
}
.hx-cart .e-cart-totals{padding:28px!important}
.hx-cart .e-cart-totals .cart-collaterals,.hx-cart .e-cart-totals .cart_totals{background:transparent!important;border:0!important;padding:0!important;margin:0!important;width:100%!important;float:none!important;box-shadow:none!important}
.hx-cart .cart_totals h2{font-family:var(--hx-display);font-size:24px;font-weight:500;margin:0 0 14px}
.hx-cart table.shop_table{border:0!important;border-radius:0!important;background:transparent!important;margin:0!important}
.hx-cart table.shop_table th{background:transparent!important;font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--hx-muted);padding:16px 18px!important;border:0!important;border-bottom:1px solid var(--hx-line)!important}
.hx-cart table.shop_table td{padding:18px!important;border:0!important;border-bottom:1px solid var(--hx-line-soft)!important;background:transparent!important;vertical-align:middle}
.hx-cart table.cart td.product-remove{width:44px;padding-right:0!important}
.hx-cart table.cart td.product-thumbnail{width:96px}
.hx-cart table.cart img{width:80px!important;height:auto;aspect-ratio:1/1;object-fit:contain;border-radius:var(--hx-r-sm);border:1px solid var(--hx-line);background:#fff;padding:4px}
.hx-cart table.cart td.product-name a{font-family:var(--hx-display);font-size:18px;font-weight:500;line-height:1.3;color:var(--hx-ink)!important;text-decoration:none}
.hx-cart table.cart td.product-name a:hover{color:var(--hx-brand)!important}
.hx-cart table.cart td.product-subtotal{font-weight:700;color:var(--hx-ink)}
.hx-cart a.remove{display:inline-flex!important;align-items:center;justify-content:center;width:28px!important;height:28px!important;border-radius:50%;border:1px solid var(--hx-line);color:var(--hx-muted)!important;background:#fff;font-size:17px;line-height:1;text-decoration:none}
.hx-cart a.remove:hover{background:var(--hx-brand);border-color:var(--hx-brand);color:#fff!important}
.hx-cart td.actions{padding:18px!important;border:0!important}
.hx-cart .coupon{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:18px!important}
.hx-cart .coupon .form-row,.hx-cart .coupon-col{margin:0!important;width:auto!important;flex:1 1 200px}
.hx-cart .coupon input#coupon_code,.hx-cart .coupon input.input-text{width:100%!important;min-height:50px}
.hx-cart .cart_totals table.shop_table th{font-size:13px;letter-spacing:.04em;text-transform:none;color:var(--hx-text);font-weight:600;padding:14px 0!important;border:0!important;border-bottom:1px solid var(--hx-line-soft)!important}
.hx-cart .cart_totals table.shop_table td{padding:14px 0!important;text-align:right}
.hx-cart .cart_totals .order-total th,.hx-cart .cart_totals .order-total td{font-size:18px;color:var(--hx-ink);font-weight:700;border-bottom:0!important}
.hx-cart .wc-proceed-to-checkout{padding:16px 0 0}
.hx-cart .cart-empty,.woocommerce .cart-empty{font-family:var(--hx-display);font-size:26px;text-align:center;padding:60px 0 20px;border:0!important;background:transparent!important}
.woocommerce .return-to-shop{text-align:center;margin-bottom:60px}

/* ============================== CHECKOUT ============================== */
.hx-checkout .woocommerce,.hx-checkout form.checkout{width:100%;max-width:100%}
.hx-checkout .e-checkout__container{display:grid!important;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr)!important;gap:36px!important;width:100%!important;max-width:100%!important;align-items:start}
.hx-checkout .e-checkout__column{width:100%!important;max-width:100%!important;min-width:0;float:none!important}
.hx-checkout .e-checkout__column-inner{position:sticky;top:110px}
.hx-checkout #customer_details{background:#fff;border:1px solid var(--hx-line);border-radius:var(--hx-r);padding:32px!important;margin:0!important}
.hx-checkout #customer_details .col-1,.hx-checkout #customer_details .col-2{width:100%!important;float:none!important;padding:0!important;margin:0!important}
.hx-checkout #customer_details .col-2{margin-top:26px!important;padding-top:26px!important;border-top:1px solid var(--hx-line-soft)}
.hx-checkout h3,.hx-checkout .e-checkout__order_review h3,.hx-checkout #order_review_heading{font-family:var(--hx-display)!important;font-size:24px!important;font-weight:500!important;margin:0 0 20px!important;color:var(--hx-ink)}
.hx-checkout .woocommerce-billing-fields__field-wrapper,.hx-checkout .woocommerce-shipping-fields__field-wrapper,.hx-checkout .woocommerce-additional-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.hx-checkout .form-row{width:100%!important;float:none!important;margin:0 0 18px!important;padding:0!important;grid-column:1/-1;clear:none}
.hx-checkout .form-row-first,.hx-checkout .form-row-last{grid-column:span 1}
.hx-checkout .form-row label{display:block;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--hx-ink);margin:0 0 8px;line-height:1.3}
.hx-checkout .form-row label .required{color:var(--hx-brand);text-decoration:none}
.hx-checkout .form-row label .optional{font-weight:500;letter-spacing:0;text-transform:none;color:var(--hx-muted)}
.hx-checkout input.input-text,.hx-checkout textarea,.hx-checkout select,.hx-account input.input-text,.hx-account textarea,.hx-account select{
  width:100%!important;min-height:52px;padding:13px 16px;background:var(--hx-ivory,#FAF7F2)!important;border:1px solid var(--hx-line)!important;border-radius:2px!important;font-size:15px;color:var(--hx-ink);box-shadow:none!important;
}
.hx-checkout textarea{min-height:110px}
.hx-checkout input.input-text:focus,.hx-checkout textarea:focus,.hx-checkout select:focus{border-color:var(--hx-ink)!important;background:#fff!important}
.hx-checkout .select2-container{width:100%!important}
.select2-container--default .select2-selection--single{height:52px!important;background:var(--hx-ivory,#FAF7F2)!important;border:1px solid var(--hx-line)!important;border-radius:2px!important;display:flex;align-items:center}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:50px!important;padding:0 40px 0 16px!important;color:var(--hx-ink);width:100%}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:50px!important;right:10px!important}
.select2-dropdown{border:1px solid var(--hx-line)!important;border-radius:2px!important;box-shadow:0 20px 40px -20px rgba(22,19,15,.4)}
.hx-checkout .woocommerce-account-fields,.hx-checkout .create-account{margin-top:6px}
.hx-checkout input[type="checkbox"]{width:18px!important;min-height:0!important;height:18px}
.hx-checkout .woocommerce-form__label-for-checkbox{display:flex!important;align-items:center;gap:10px;text-transform:none!important;letter-spacing:0!important;font-size:14.5px!important;font-weight:500!important}

.hx-checkout .e-checkout__order_review,.hx-checkout .e-coupon-box,.hx-checkout .e-checkout__order_review-2{
  background:#fff!important;border:1px solid var(--hx-line)!important;border-radius:var(--hx-r)!important;padding:28px!important;margin:0 0 18px!important;box-shadow:none!important;
}
.hx-checkout .e-checkout__order_review-2{padding:24px 28px 28px!important}
.hx-checkout table.shop_table,.hx-checkout .woocommerce-checkout-review-order-table{width:100%!important;border:0!important;border-radius:0!important;background:transparent!important;margin:0!important;table-layout:auto}
.hx-checkout table.shop_table th,.hx-checkout table.shop_table td{background:transparent!important;border:0!important;border-bottom:1px solid var(--hx-line-soft)!important;padding:14px 0!important;vertical-align:top;font-size:15px}
.hx-checkout table.shop_table thead th{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--hx-muted);font-weight:700}
.hx-checkout table.shop_table .product-name{width:auto;color:var(--hx-ink);font-weight:500;padding-right:14px!important}
.hx-checkout table.shop_table .product-total,.hx-checkout table.shop_table td:last-child{text-align:right;white-space:nowrap}
.hx-checkout table.shop_table .product-quantity{font-weight:700;color:var(--hx-muted)}
.hx-checkout table.shop_table tfoot th{font-weight:600;color:var(--hx-text);text-transform:none;letter-spacing:0;font-size:15px}
.hx-checkout table.shop_table tfoot .order-total th,.hx-checkout table.shop_table tfoot .order-total td{font-size:19px;font-weight:700;color:var(--hx-ink);border-bottom:0!important}
.hx-checkout .e-coupon-box{font-size:15px}
.hx-checkout .e-coupon-box .woocommerce-info,.hx-checkout .e-coupon-box .e-woocommerce-coupon-nudge{border:0!important;padding:0!important;margin:0!important;background:transparent!important}
.hx-checkout .checkout_coupon{padding:0;border:0;margin:14px 0 0}
.hx-checkout #payment{background:transparent!important;border:0!important;border-radius:0!important}
.hx-checkout #payment ul.payment_methods{border:0!important;padding:0!important;margin:0 0 16px;list-style:none}
.hx-checkout #payment ul.payment_methods li{padding:14px 16px;border:1px solid var(--hx-line);border-radius:var(--hx-r-sm);margin:0 0 10px;background:var(--hx-ivory,#FAF7F2)}
.hx-checkout #payment ul.payment_methods li label{margin:0;text-transform:none;letter-spacing:0;font-size:15px;font-weight:600}
.hx-checkout #payment div.payment_box{background:#fff!important;border:0!important;padding:12px 0 0!important;margin:8px 0 0!important;font-size:14px;color:var(--hx-muted)}
.hx-checkout #payment div.payment_box::before{display:none!important}
.hx-checkout #payment .woocommerce-info{margin:0!important}
.hx-checkout .woocommerce-privacy-policy-text p{font-size:13px;line-height:1.6;color:var(--hx-muted);margin:0 0 16px}
.hx-checkout .woocommerce-terms-and-conditions-wrapper{margin-bottom:12px}

/* ============================== ACCOUNT ============================== */
.woocommerce-account .woocommerce{max-width:1200px;margin:0 auto}
.woocommerce-account .u-columns.col2-set,.woocommerce-account .col2-set#customer_login{display:grid!important;grid-template-columns:1fr 1fr;gap:32px;width:100%}
.woocommerce-account .u-columns .u-column1,.woocommerce-account .u-columns .u-column2,.woocommerce-account #customer_login .col-1,.woocommerce-account #customer_login .col-2{width:100%!important;float:none!important;background:#fff;border:1px solid var(--hx-line);border-radius:var(--hx-r);padding:34px}
.woocommerce-account h2{font-family:var(--hx-display);font-size:28px;font-weight:500;margin:0 0 20px}
.woocommerce form.login,.woocommerce form.register,.woocommerce form.lost_reset_password,.woocommerce form.woocommerce-form-track-order{border:0!important;padding:0!important;margin:0!important;border-radius:0;background:transparent}
.woocommerce form .form-row{margin:0 0 18px;padding:0}
.woocommerce form .form-row label{display:block;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--hx-ink);margin:0 0 8px}
.woocommerce form .form-row label.woocommerce-form__label-for-checkbox{text-transform:none;letter-spacing:0;font-weight:500;font-size:14.5px;display:flex;align-items:center;gap:10px}
.woocommerce form .lost_password a,.woocommerce .lost_password a{color:var(--hx-muted);text-decoration:underline;text-underline-offset:3px}
.woocommerce-account .woocommerce-MyAccount-navigation{float:none;width:100%}
.woocommerce-account .woocommerce-MyAccount-content{float:none;width:100%;min-width:0}
@media (min-width:901px){
  .woocommerce-account.logged-in .woocommerce{display:grid;grid-template-columns:260px minmax(0,1fr);gap:40px;align-items:start}
}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border:1px solid var(--hx-line);border-radius:var(--hx-r);background:#fff;overflow:hidden}
.woocommerce-MyAccount-navigation li{margin:0;border-bottom:1px solid var(--hx-line-soft)}
.woocommerce-MyAccount-navigation li:last-child{border-bottom:0}
.woocommerce-MyAccount-navigation a{display:block;padding:15px 20px;font-size:14.5px;font-weight:600;color:var(--hx-ink)}
.woocommerce-MyAccount-navigation a:hover{background:var(--hx-surface);color:var(--hx-brand)}
.woocommerce-MyAccount-navigation li.is-active a{background:var(--hx-ink);color:#fff}
.woocommerce-MyAccount-content{background:#fff;border:1px solid var(--hx-line);border-radius:var(--hx-r);padding:34px}
.woocommerce-MyAccount-content p a,.woocommerce-MyAccount-content a:not(.button){color:var(--hx-brand)}
.woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.woocommerce-Addresses .woocommerce-Address{width:100%!important;float:none!important;padding:20px;border:1px solid var(--hx-line-soft);border-radius:var(--hx-r-sm)}
.woocommerce-Address-title h3{font-family:var(--hx-display);font-size:20px;font-weight:500;margin:0 0 8px}
.woocommerce-orders-table a.button,.woocommerce-MyAccount-content .button{background:var(--hx-ink)!important;color:#fff!important;border-radius:2px!important;font-size:11.5px!important;letter-spacing:.1em;text-transform:uppercase;padding:12px 18px!important}
.woocommerce-MyAccount-content .button:hover{background:var(--hx-brand)!important}
@media (max-width:900px){
  .woocommerce-account .u-columns.col2-set,.woocommerce-account .col2-set#customer_login{grid-template-columns:1fr}
  .woocommerce-account .u-columns .u-column1,.woocommerce-account .u-columns .u-column2,.woocommerce-account #customer_login .col-1,.woocommerce-account #customer_login .col-2{padding:24px 20px}
  .woocommerce-MyAccount-navigation{margin-bottom:22px}
  .woocommerce-MyAccount-navigation ul{display:flex;overflow-x:auto;border-radius:var(--hx-r-sm)}
  .woocommerce-MyAccount-navigation li{border:0;border-right:1px solid var(--hx-line-soft);flex:0 0 auto}
  .woocommerce-MyAccount-content{padding:22px 18px}
  .woocommerce-Addresses{grid-template-columns:1fr}
}

/* ========================= ORDER RECEIVED / THANK YOU ========================= */
.woocommerce-order{max-width:980px;margin:0 auto}
.woocommerce-thankyou-order-received{font-family:var(--hx-display);font-size:26px;font-weight:500;color:var(--hx-ink);background:#fff;border:1px solid var(--hx-line);border-left:3px solid var(--hx-green);border-radius:var(--hx-r-sm);padding:22px 26px;margin:0 0 24px}
ul.woocommerce-order-overview{list-style:none;margin:0 0 30px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}
ul.woocommerce-order-overview li{border:1px solid var(--hx-line)!important;border-radius:var(--hx-r-sm);background:#fff;padding:16px 18px;margin:0!important;font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--hx-muted);float:none!important}
ul.woocommerce-order-overview li strong{display:block;margin-top:6px;font-size:16px;letter-spacing:0;text-transform:none;color:var(--hx-ink)}
.woocommerce-order-details,.woocommerce-customer-details{background:#fff;border:1px solid var(--hx-line);border-radius:var(--hx-r);padding:28px;margin:0 0 24px}
.woocommerce-order-details h2,.woocommerce-customer-details h2,.woocommerce-column__title{font-family:var(--hx-display);font-size:24px;font-weight:500;margin:0 0 16px}
.woocommerce-order-details table.shop_table{border:0;background:transparent}
.woocommerce-order-details table.shop_table th,.woocommerce-order-details table.shop_table td{background:transparent;border:0;border-bottom:1px solid var(--hx-line-soft);padding:14px 0}
.woocommerce-customer-details .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.woocommerce-customer-details .col2-set .col-1,.woocommerce-customer-details .col2-set .col-2{width:100%;float:none}
.woocommerce-customer-details address{border:0;padding:0;font-style:normal;line-height:1.7}
@media (max-width:700px){.woocommerce-customer-details .col2-set{grid-template-columns:1fr}.woocommerce-order-details,.woocommerce-customer-details{padding:20px 16px}}

/* ============================= RESPONSIVE: cart and checkout ============================= */
@media (max-width:1024px){
  .hx-cart .e-cart__container,.hx-checkout .e-checkout__container{grid-template-columns:1fr!important;gap:22px!important}
  .hx-checkout .e-checkout__column-inner{position:static}
}
@media (max-width:767px){
  .hx-checkout #customer_details{padding:22px 18px!important}
  .hx-checkout .woocommerce-billing-fields__field-wrapper,.hx-checkout .woocommerce-shipping-fields__field-wrapper{grid-template-columns:1fr}
  .hx-checkout .form-row-first,.hx-checkout .form-row-last{grid-column:1/-1}
  .hx-checkout .e-checkout__order_review,.hx-checkout .e-coupon-box,.hx-checkout .e-checkout__order_review-2{padding:20px 16px!important}
  .hx-cart .e-cart-totals{padding:22px 18px!important}
  /* each cart line becomes a small card */
  .hx-cart table.cart thead{display:none}
  .hx-cart table.cart,.hx-cart table.cart tbody{display:block;width:100%}
  .hx-cart table.cart tr.cart_item{display:grid;grid-template-columns:84px minmax(0,1fr) auto;grid-template-areas:"thumb name remove" "thumb price price" "thumb qty sub";gap:6px 14px;padding:16px;border-bottom:1px solid var(--hx-line-soft)}
  .hx-cart table.cart tr.cart_item td{display:block!important;border:0!important;padding:0!important;text-align:left!important;width:auto!important}
  .hx-cart table.cart tr.cart_item td::before{content:none!important;display:none!important}
  .hx-cart table.cart td.product-thumbnail{grid-area:thumb;width:84px!important}
  .hx-cart table.cart td.product-thumbnail img{width:84px!important}
  .hx-cart table.cart td.product-name{grid-area:name;align-self:start}
  .hx-cart table.cart td.product-remove{grid-area:remove;justify-self:end;align-self:start;width:auto!important}
  .hx-cart table.cart td.product-price{grid-area:price;color:var(--hx-muted)}
  .hx-cart table.cart td.product-quantity{grid-area:qty}
  .hx-cart table.cart td.product-subtotal{grid-area:sub;justify-self:end;align-self:center}
  .hx-cart table.cart tr:last-child{display:block;padding:16px}
  .hx-cart table.cart tr:last-child td.actions{display:block!important;padding:0!important}
  .hx-cart table.cart td.actions .coupon{display:none}
  .hx-cart button[name="update_cart"]{width:100%}
  .hx-cart .coupon.e-cart-section{display:flex}
  .hx-checkout table.shop_table td{font-size:14.5px}
  .woocommerce-thankyou-order-received{font-size:21px;padding:18px}
}

/* ============================= SOCIAL ICONS (footer) ============================= */
.hx-social-list{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0}
.hx-social-list li{margin:0}
.hx-social-list a{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.28);border-radius:2px;color:#fff!important;background:transparent;transition:background .2s,border-color .2s,transform .2s}
.hx-social-list a:hover{background:var(--hx-brand);border-color:var(--hx-brand);transform:translateY(-2px)}
.hx-social-list svg{width:18px;height:18px;fill:currentColor;display:block}
.hx-footer .hx-social .hx-social-list a{background:transparent!important;border:1px solid rgba(255,255,255,.28)!important;border-radius:2px!important;color:#fff!important;width:40px;height:40px}
.hx-footer .hx-social .hx-social-list a:hover{background:var(--hx-brand)!important;border-color:var(--hx-brand)!important}
.hx-footer .hx-social .hx-social-list svg{fill:#fff!important;width:18px;height:18px}
/* the older checkout grid put the whole Elementor container in one column */
.hx-checkout form.checkout,.woocommerce-checkout .hx-checkout form.checkout.woocommerce-checkout{display:block!important;grid-template-columns:none!important}
.hx-checkout #order_review,.hx-checkout #order_review_heading{grid-column:auto!important;grid-row:auto!important;position:static!important}
.hx-cart .woocommerce-message .button,.hx-cart .woocommerce-message a.wc-forward{display:none!important}
.hx-cart .e-cart-totals .cart_totals h2,.hx-cart .cart_totals h2{font-family:var(--hx-display)!important;font-size:26px!important;font-weight:500!important;letter-spacing:0!important;margin:0 0 14px!important;color:var(--hx-ink)!important}
.hx-cart .cart_totals table.shop_table th,.hx-cart .cart_totals table.shop_table td{color:var(--hx-ink)!important;font-family:var(--hx-body)}
.hx-cart .cart_totals table.shop_table th{font-weight:600}
.hx-cart .coupon .coupon-col-start,.hx-cart .coupon .coupon-col-end{margin:0!important;padding:0!important;border:0!important;background:transparent!important;width:auto!important}
.hx-cart .coupon .coupon-col-start{flex:1 1 220px}
.hx-cart .coupon .coupon-col-end .button{width:100%}
.hx-cart .coupon input#coupon_code{background:var(--hx-ivory,#FAF7F2)!important;border:1px solid var(--hx-line)!important;border-radius:2px!important}
.hx-checkout .e-checkout__order_review .shop_table{background:transparent!important}
.hx-checkout .e-checkout__order_review > *,.hx-checkout .e-checkout__order_review-2 > *{max-width:100%}
.hx-checkout .e-checkout__order_review table.shop_table{border-radius:0!important;background:transparent!important;padding:0!important}
.hx-checkout .e-checkout__order_review .woocommerce-checkout-review-order-table{background:transparent!important}
.hx-checkout #payment ul.payment_methods > li.woocommerce-info,.hx-checkout #payment .woocommerce-notice,.hx-checkout #payment li.woocommerce-info{margin:0!important}
/* checkout: no boxes inside boxes */
.hx-checkout .woocommerce-billing-fields,.hx-checkout .woocommerce-shipping-fields,.hx-checkout .woocommerce-additional-fields,.hx-checkout #customer_details .col-1,.hx-checkout #customer_details .col-2{
  border:0!important;padding:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;margin-left:0!important;margin-right:0!important;
}
.hx-checkout #customer_details .col-2{margin-top:26px!important;padding-top:26px!important;border-top:1px solid var(--hx-line-soft)!important}
.hx-checkout .woocommerce-billing-fields h3,.hx-checkout .woocommerce-additional-fields h3{margin:0 0 22px!important;padding:0!important;line-height:1.2}
.hx-checkout #order_review,.hx-checkout .woocommerce-checkout-review-order,.hx-checkout .e-checkout__order_review .woocommerce-checkout-review-order-table,.hx-checkout .e-checkout__order_review > div{
  background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important;border-radius:0!important;
}
.hx-checkout #payment ul.payment_methods > li.woocommerce-notice,.hx-checkout #payment ul.payment_methods > li.woocommerce-info,.hx-checkout #payment ul.payment_methods > li.woocommerce-error{background:transparent!important;border:0!important;padding:0!important;margin:0!important}
.hx-checkout #payment div.form-row.place-order,.hx-checkout #payment .place-order{padding:0!important;margin:0!important;border:0!important;background:transparent!important}
.hx-checkout #place_order{width:100%!important;float:none!important;display:block!important;margin:0!important}
.hx-checkout .e-checkout__order_review-2 #payment{padding:0!important}

@media (max-width:767px){
  .hx-cart .cart_totals table.shop_table td::before{display:inline!important;content:attr(data-title)!important;float:left;font-weight:600;color:var(--hx-ink)}
  .hx-cart .cart_totals table.shop_table td{text-align:right!important;display:block}
  .hx-cart td.actions .button,.hx-cart button[name="update_cart"]{width:100%!important;display:block}
  .hx-cart .coupon{padding:16px!important}
}

/* =========================================================================
   20 MINI CART, CARD BUTTONS, PRODUCT FORM, ACCOUNT, WISHLIST, SEARCH
   ========================================================================= */

/* ---- mini cart panel: backdrop-filter on the header trapped the fixed panel inside it ---- */
.hx-header{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:rgba(250,247,242,.98)!important}
.elementor-menu-cart__container{z-index:100001}
.elementor-menu-cart__main{background:#fff!important;padding:0!important}
.elementor-menu-cart__close-button{margin:16px 18px 6px auto}
.elementor-menu-cart__products{padding:0 22px}
.elementor-menu-cart__product{padding:16px 0!important;border-bottom:1px solid var(--hx-line-soft)!important;gap:14px}
.elementor-menu-cart__product-name a{font-family:var(--hx-display);font-size:16px;font-weight:500;color:var(--hx-ink)!important}
.elementor-menu-cart__product-image img{width:64px!important;height:auto;border:1px solid var(--hx-line);border-radius:2px;background:#fff}
.elementor-menu-cart__subtotal{padding:16px 22px!important;font-size:16px;text-align:left!important;border-top:1px solid var(--hx-line)!important;border-bottom:0!important}
.elementor-menu-cart__footer-buttons{padding:0 22px 26px!important;display:grid!important;grid-template-columns:1fr 1fr;gap:10px}
.elementor-menu-cart__footer-buttons .elementor-button{width:100%;margin:0!important;justify-content:center;padding:15px 10px!important;font-size:11.5px!important}
.elementor-menu-cart__footer-buttons .elementor-button--view-cart{background:#fff!important;color:var(--hx-ink)!important;border:1px solid var(--hx-ink)!important}
.elementor-menu-cart__footer-buttons .elementor-button--checkout{background:var(--hx-brand)!important;color:#fff!important;border:1px solid var(--hx-brand)!important}
.woocommerce-mini-cart__empty-message{padding:30px 22px;text-align:center;color:var(--hx-muted)}

/* ---- product card buttons: two equal buttons, nothing floating ---- */
.woocommerce ul.products li.product .hxl-card-btns{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin-top:auto!important;width:100%!important;align-items:stretch}
.woocommerce ul.products li.product .hxl-card-btns > a.woocommerce-LoopProduct-link,
.woocommerce ul.products li.product .hxl-card-btns > .screen-reader-text{display:none!important}
.woocommerce ul.products li.product .hxl-card-btns > a.button{
  display:flex!important;align-items:center;justify-content:center;width:100%!important;min-height:46px;margin:0!important;padding:10px 6px!important;float:none!important;
  font-size:11px!important;letter-spacing:.1em;line-height:1.2;text-align:center;white-space:nowrap;position:static!important;
}
.woocommerce ul.products li.product .hxl-card-btns > a.button:only-of-type{grid-column:1/-1}
.woocommerce ul.products li.product .hxl-card-btns > a.added_to_cart{grid-column:1/-1;min-height:40px;background:transparent!important;color:var(--hx-brand)!important;border:0!important;text-decoration:underline}
@media (max-width:520px){.woocommerce ul.products li.product .hxl-card-btns{grid-template-columns:1fr!important}}

/* ---- single product form: quantity, add to cart, buy now ---- */
.hx-atc form.cart,.elementor-add-to-cart form.cart{display:flex!important;flex-wrap:wrap!important;gap:12px!important;align-items:stretch!important;margin:0!important}
.hx-atc form.cart .hxl-personal{flex:1 1 100%!important}
.hx-atc form.cart .quantity{flex:0 0 auto!important;width:auto!important;max-width:150px;margin:0!important;float:none!important}
.hx-atc form.cart .single_add_to_cart_button{flex:1 1 200px!important;width:auto!important;min-width:170px;height:50px;min-height:50px;margin:0!important;float:none!important;padding:0 24px!important;white-space:nowrap;display:flex;align-items:center;justify-content:center}
.hx-atc form.cart .hxl-buynow{flex:1 1 100%!important;width:100%!important;height:50px;min-height:50px;margin:0!important;padding:0 24px!important;display:flex;align-items:center;justify-content:center;white-space:nowrap}
.hx-atc .woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;gap:12px;width:100%}
.hx-atc .variations{width:100%;margin:0 0 12px}
.hx-atc .variations td,.hx-atc .variations th{display:block;padding:0 0 8px;text-align:left}
@media (max-width:520px){.hx-atc form.cart .quantity{max-width:none;flex:1 1 100%!important}.hx-atc form.cart .quantity input.qty{flex:1}}

/* ---- notices: no stray buttons inside checkout notices ---- */
.hx-checkout .woocommerce-message .button,.hx-checkout .woocommerce-message a.wc-forward{display:none!important}

/* ---- page heroes reused on cart, checkout, account ---- */
.woocommerce-cart .hx-page-hero,.woocommerce-checkout .hx-page-hero,.woocommerce-account .hx-page-hero{margin-bottom:38px}

/* ---- my account: login card ---- */
.woocommerce-account:not(.logged-in) .hx-account .woocommerce{max-width:520px;margin:0 auto 60px}
.woocommerce-account:not(.logged-in) .hx-account .woocommerce-form-login,
.woocommerce-account:not(.logged-in) .hx-account .woocommerce-form-register,
.woocommerce-account:not(.logged-in) .hx-account .woocommerce-ResetPassword{background:#fff!important;border:1px solid var(--hx-line)!important;border-radius:var(--hx-r)!important;padding:34px!important;margin:0!important;box-shadow:0 30px 50px -40px rgba(22,19,15,.4)}
.woocommerce-account:not(.logged-in) .hx-account h2{font-family:var(--hx-display);font-size:30px;font-weight:500;margin:0 0 20px;text-align:left}
.woocommerce-account .hx-account .woocommerce-form-login .form-row,.woocommerce-account .hx-account .woocommerce-form-register .form-row{width:100%!important;float:none!important;margin:0 0 16px!important;padding:0!important}
.woocommerce-account .hx-account .woocommerce-form-login__submit{width:100%;margin-top:6px!important}
.woocommerce-account .hx-account .woocommerce-form-login .lost_password{margin:14px 0 0;text-align:center}
.woocommerce-account .hx-account .lost_password a{color:var(--hx-muted)!important}
.woocommerce-account .password-input{display:block;position:relative}
.woocommerce-account .show-password-input{position:absolute;right:14px;top:50%;transform:translateY(-50%);background:none;border:0;cursor:pointer;padding:0}
.woocommerce-account .hx-account .woocommerce-form-login input.input-text{background:var(--hx-ivory,#FAF7F2)!important}
/* logged in */
.woocommerce-account.logged-in .hx-account .woocommerce{max-width:1200px;margin:0 auto 70px}
.hx-account .e-my-account-tab,.hx-account .woocommerce{width:100%}
.woocommerce-account.logged-in .hx-account .woocommerce-MyAccount-navigation ul{margin:0!important}
.hx-account table.shop_table,.hx-account table.woocommerce-orders-table{border:0!important;background:transparent!important}
.hx-account table.shop_table th{background:transparent!important;font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--hx-muted);border:0!important;border-bottom:1px solid var(--hx-line)!important;padding:14px 10px!important}
.hx-account table.shop_table td{border:0!important;border-bottom:1px solid var(--hx-line-soft)!important;padding:16px 10px!important;background:transparent!important}
@media (max-width:767px){
  .woocommerce-account:not(.logged-in) .hx-account .woocommerce-form-login,.woocommerce-account:not(.logged-in) .hx-account .woocommerce-form-register{padding:24px 18px!important}
  .hx-account table.shop_table_responsive tr{display:block;border:1px solid var(--hx-line);border-radius:var(--hx-r-sm);margin:0 0 14px;background:#fff;padding:6px 14px}
  .hx-account table.shop_table_responsive tr td{display:flex!important;justify-content:space-between;gap:12px;border:0!important;border-bottom:1px solid var(--hx-line-soft)!important;padding:12px 0!important;text-align:right!important}
  .hx-account table.shop_table_responsive tr td:last-child{border-bottom:0!important}
  .hx-account table.shop_table_responsive tr td::before{float:none!important;font-weight:700;text-align:left;color:var(--hx-ink)}
  .hx-account table.shop_table_responsive thead{display:none}
}

/* ---- wishlist ---- */
.yith-wcwl-form h2,.wishlist-title-container .wishlist-title h2,.yith_wcwl_wishlist_title{display:none}
.wishlist-title-container{display:none}
.hx-wishlist-wrap,.yith-wcwl-form{max-width:1200px;margin:0 auto}
table.wishlist_table{width:100%;border:0!important;background:transparent!important;border-collapse:collapse}
table.wishlist_table thead th{background:transparent!important;font-size:11.5px!important;font-weight:700!important;letter-spacing:.14em;text-transform:uppercase;color:var(--hx-muted)!important;border:0!important;border-bottom:1px solid var(--hx-line)!important;padding:14px 12px!important;text-align:left}
table.wishlist_table td{padding:20px 12px!important;border:0!important;border-bottom:1px solid var(--hx-line-soft)!important;vertical-align:middle;background:transparent!important;text-align:left}
table.wishlist_table td.product-thumbnail img{width:84px!important;height:auto;border:1px solid var(--hx-line);border-radius:2px;background:#fff;padding:4px}
table.wishlist_table td.product-name a{font-family:var(--hx-display);font-size:18px;font-weight:500;color:var(--hx-ink)!important}
table.wishlist_table td.product-name a:hover{color:var(--hx-brand)!important}
table.wishlist_table td.product-price{font-weight:700;color:var(--hx-ink)}
table.wishlist_table td.product-remove a,table.wishlist_table .remove_from_wishlist{display:inline-flex!important;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--hx-line);border-radius:50%;color:var(--hx-muted)!important;background:#fff;font-size:17px;text-decoration:none}
table.wishlist_table .product-add-to-cart a.button{background:var(--hx-ink)!important;color:#fff!important;border:1px solid var(--hx-ink)!important;border-radius:2px!important;font-size:11.5px!important;letter-spacing:.1em;text-transform:uppercase;padding:13px 20px!important}
table.wishlist_table .product-add-to-cart a.button:hover{background:var(--hx-brand)!important;border-color:var(--hx-brand)!important}
.wishlist-empty,td.wishlist-empty{text-align:center!important;font-family:var(--hx-display);font-size:24px;color:var(--hx-muted);padding:64px 12px!important}
.yith-wcwl-share,.wishlist_table tfoot{display:none}
@media (max-width:767px){
  table.wishlist_table.responsive tr,table.wishlist_table tr{display:block;border:1px solid var(--hx-line);border-radius:var(--hx-r-sm);background:#fff;margin:0 0 14px;padding:8px 14px}
  table.wishlist_table thead{display:none}
  table.wishlist_table td{display:flex!important;justify-content:space-between;align-items:center;gap:12px;padding:12px 0!important;text-align:right!important}
  table.wishlist_table td::before{content:attr(data-title);font-weight:700;text-align:left;color:var(--hx-ink);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
  table.wishlist_table td.product-thumbnail::before,table.wishlist_table td.wishlist-empty::before{display:none}
  table.wishlist_table td.product-thumbnail{justify-content:flex-start}
}

/* ---- product search results ---- */
.hx-search .hx-pagebody{padding-top:48px}
.hx-search-empty{max-width:560px;margin:20px auto 80px;text-align:center}
.hx-search-empty h2{font-family:var(--hx-display);font-size:30px;font-weight:500;margin:0 0 12px}
.hx-search-empty p{color:var(--hx-muted);margin:0 0 24px}
.hx-search-empty .hx-cats-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:18px}
.hx-search-empty .hx-cats-links a{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:11px 16px;border:1px solid var(--hx-line);border-radius:2px;background:#fff}
.hx-search-empty .hx-cats-links a:hover{background:var(--hx-ink);color:#fff;border-color:var(--hx-ink)}

.hx-wc-body{padding-bottom:20px}
.elementor-menu-cart__product-price .quantity,.woocommerce-mini-cart .quantity{display:inline!important;border:0!important;height:auto!important;background:transparent!important;overflow:visible}
.elementor-menu-cart__footer-buttons .elementor-button{letter-spacing:.1em!important}
.elementor-menu-cart__product-remove a,.elementor-menu-cart__product-remove{color:var(--hx-muted)}

/* clean transparent logo sits straight on the dark footer */
.hx-footer .hx-logo-link img{background:transparent!important;padding:0!important;width:250px!important;border-radius:0!important}
