/* ==========================================================================
   WooCommerce product cards (v2)
   STRICT order: image > meta(origin+available) > brand > name > rating > price > button
   ========================================================================== */

:root{
	--hc-cta:#fdf0e7;          /* mustard gold CTA (decided) */
	--hc-cta-dark:#9fce9f;
	--hc-price-green:#40bd7a;  /* light green price (decided) */
}

ul.products li.product.hc-card {
	margin: 0 0 var(--hc-gap, 20px);
	padding: 0;
	background: transparent !important; /* Override Kadence li background/radius */
	border: 0 !important;
	border-radius: 14px !important;
	box-shadow: none !important;
	overflow: visible !important; /* Do not clip the inner hover shadow */
}

.hc-card__inner{
	display:flex; flex-direction:column; height:100%;
	background:#fff; border:1px solid #eee; border-radius:14px; overflow:hidden;
	transition:border-color .35s cubic-bezier(.2,.75,.5,1), box-shadow .35s cubic-bezier(.2,.75,.5,1), transform .35s cubic-bezier(.2,.75,.5,1);
}
.hc-card__inner:hover{
	border-color:#e0e0e0;
	/* Downward shadow: negative spread stops it spreading sideways and keeps it below */
	box-shadow:0 18px 24px -12px rgba(0,0,0,.42);
	transform:translateY(-6px);
}

/* 1) IMAGE */
.hc-card__image{ position:relative; display:block; background:#fff; border-bottom:1px solid #f3f3f3; overflow:hidden; margin:0; padding:10px; }
.hc-card__image img{
	display:block; width:100%; height:auto; aspect-ratio:1/1; object-fit:contain;
	border-radius:12px; transition:transform .55s cubic-bezier(.2,.75,.5,1);
}
.hc-card__inner:hover .hc-card__image img{ transform:scale(1.06); }

/* body */
.hc-card__body{ display:flex; flex-direction:column; gap:5px; padding:11px 10px 13px; flex:1 1 auto; }

/* 2) META ROW — origin bar + Available on the same line */
.hc-card__meta{ display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; }

.hc-origin{
	display:inline-flex; align-items:center; gap:7px;
	font-size:11.5px; font-weight:700; line-height:1;
	padding:4px 12px 4px 5px; border-radius:10px;
	background:#e7f5c4; border:1px solid #c5dd8f; color:#1f1f1f;
}
.hc-origin .hc-origin__text{ color:#1f1f1f; }
/* [Setting] Same as product page: bg #e7f5c4, border #c5dd8f, store name orange */
.hc-origin .hc-origin__lbl{ color:#1f1f1f; font-weight:700; }
.hc-origin .hc-origin__store{ color:#f18833; font-weight:700; }
.hc-origin .hc-origin__text{ border:0 !important; background:none !important; }
/* circular SVG flag, larger */
.hc-origin .hc-flag{
	width:22px; height:22px; border-radius:50%; object-fit:cover;
	display:inline-block; flex:0 0 auto;
	box-shadow:inset 0 0 0 1px rgba(0,0,0,.10);
	background:#f4f4f4;
}
.hc-origin .hc-flag--emoji{ width:auto; height:auto; font-size:16px; box-shadow:none; background:none; }
/* per-store accent kept for future use (selector bar, hover, detail page) */
.hc-origin--jp{ --o-dot:#D72638; } /* Sakura Red — Japan */
.hc-origin--id{ --o-dot:#E85D04; } /* Volcano Orange — Indonesia */
.hc-origin--my{ --o-dot:#0F9D58; } /* Emerald Green — Malaysia */
.hc-origin--kr{ --o-dot:#6C5CE7; } /* Royal Purple — Korea */
.hc-origin--rs{ --o-dot:#1E3A8A; } /* Deep Navy — Serbia */
.hc-origin--eu{ --o-dot:#D4A017; } /* Gold — EU */

/* Available pulse */
.hc-avail{ display:inline-flex; align-items:center; gap:5px; font-size:11.5px; font-weight:600; color:#2bb24c; white-space:nowrap; }
.hc-avail__pulse{ width:8px; height:8px; border-radius:50%; background:#2bb24c; position:relative; }
.hc-avail__pulse::after{ content:""; position:absolute; inset:0; border-radius:50%; background:#2bb24c; animation:hc-pulse 1.6s infinite; }
@keyframes hc-pulse{ 0%{transform:scale(1);opacity:.7} 70%{transform:scale(2.6);opacity:0} 100%{opacity:0} }

/* 3) BRAND eyebrow */
/* [Setting] Card brand name colour (mustard gold). To change: color */
.hc-card__brand{ font-size:10.5px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:#b8860b; }

/* 4) NAME */
/* [Setting] Card product title colour (grey). The high-specificity selector is needed to beat WooCommerce ".woocommerce li.product a{color:inherit}" - do not simplify. To change: color */
.woocommerce li.product a.hc-card__title, .hc-card__title{ display:block; color:#666; font-weight:700; font-size:15px; line-height:1.3; text-decoration:none; min-height:2.4em; } /* [Setting] title 15px */
.hc-card__title:hover{ color:var(--hc-cta-dark,#946c08); }
/* [Setting] Variable product price (from X - Y) colour (green). Simple price is separate and untouched. To change: color */
.hc-card__price.hc-price--from,
.hc-card__price.hc-price--from .amount,
.hc-card__price.hc-price--from bdi,
.hc-card__price.hc-price--from .price{ color:#40bd7a !important; }

/* 5) RATING */
.hc-card__rating{ display:flex; align-items:center; gap:5px; font-size:12px; color:var(--hc-text-muted,#6b6b6b); }
.hc-card__rating .star-rating{ font-size:.9em; color:#f1b434; }
.hc-card__rating-count{ color:#bbb; }

/* 6) PRICE — light green current, struck old */
.hc-card__price{ margin:2px 0 4px; font-weight:700; font-size:14px; } /* [Setting] price 14px */
.hc-card__price .price{ color:var(--hc-price-green,#40bd7a); font-weight:800; font-size:17px; }
.hc-card__price del,.hc-card__price del .amount{ color:var(--hc-price-old,#9b9b9b); font-weight:400; text-decoration:line-through; margin-right:4px; }
.hc-card__price ins{ text-decoration:none; }
.hc-price--from .price::before{ content:"from "; color:#666666; font-weight:700; font-size:.7em; } /* [Setting] "from" text: same colour and font as hc-card__title (#666, 700) */
/* Language-aware prefix. CSS content does not go through translation,
   so a fixed "from" showed in every language.
   Values come from the theme text domain catalogues:
   de=ab  fr=des  it=da  pt=desde  es=desde. English default stays above. */
html[lang^="de"] .hc-price--from .price::before{ content:"ab "; }
html[lang^="fr"] .hc-price--from .price::before{ content:"dès "; }
html[lang^="it"] .hc-price--from .price::before{ content:"da "; }
html[lang^="pt"] .hc-price--from .price::before{ content:"desde "; }
html[lang^="es"] .hc-price--from .price::before{ content:"desde "; }
/* ja: prefix emptied, Japanese has no "from" prefix. No suffix on purpose: the card price shows a
   range (min - max), so a suffix would land after the max price.
   Permanent fix: move the text to gettext. */
html[lang^="ja"] .hc-price--from .price::before{ content:""; }
/* ko: prefix emptied, same reason as ja (card price shows a range). */
html[lang^="ko"] .hc-price--from .price::before{ content:""; }
/* ar: price prefix; text only. */
html[lang^="ar"] .hc-price--from .price::before{ content:"ابتداءً من "; }
/* nl / ru / vi / zh: canonical theme catalogue msgid "from"; zh uses a suffix, so same as ja / ko (empty prefix). */
html[lang^="nl"] .hc-price--from .price::before{ content:"vanaf "; }
html[lang^="ru"] .hc-price--from .price::before{ content:"от "; }
html[lang^="vi"] .hc-price--from .price::before{ content:"từ "; }
html[lang^="zh"] .hc-price--from .price::before{ content:""; }
/* force green over Kadence */
ul.products li.product.hc-card .hc-card__price .price,
ul.products li.product.hc-card .hc-card__price ins .amount{ color:var(--hc-price-green,#40bd7a); }

/* 7) BUTTON — mustard, full width, with cart icon */
.hc-card__action{ margin-top:auto; padding-top:6px; }
.hc-card .hc-btn,
.hc-card .hc-card__action a.button,
.hc-card .hc-card__action a.add_to_cart_button{
	display:flex; align-items:center; justify-content:center; gap:8px;
	width:100%; padding:12px 14px; border:0; border-radius:12px;
	background:var(--hc-cta,#fdf0e7); color:#7a3d0f;
	font-weight:700; font-size:13.5px; text-align:center; text-decoration:none;
	cursor:pointer; transition:background .15s ease;
}
.hc-card .hc-btn:hover,
.hc-card .hc-card__action a.button:hover,
.hc-card .hc-card__action a.add_to_cart_button:hover{ background:var(--hc-cta-dark,#9fce9f); color:#7a3d0f; }

/* cart icon via mask (inherits white text colour) */
.hc-card .hc-btn--icon::before{
	content:""; width:16px; height:16px; flex:0 0 auto; background:currentColor;
	-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='9' cy='21' r='1'/><circle cx='20' cy='21' r='1'/><path d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'/></svg>") center/contain no-repeat;
	mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='9' cy='21' r='1'/><circle cx='20' cy='21' r='1'/><path d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'/></svg>") center/contain no-repeat;
}

/* disabled / unavailable */
.hc-card .hc-btn--disabled{ background:#eee; color:#9a9a9a; cursor:not-allowed; }
.hc-card.outofstock .hc-card__image{ opacity:.7; }

/* hide Kadence injected icons; keep WC loading spinner */
.hc-card .hc-card__action a .kadence-svg-iconset,
.hc-card .hc-card__action button .kadence-svg-iconset{ display:none !important; }

/* AJAX "view cart" line after add */
.hc-card .added_to_cart{
	display:flex; align-items:center; justify-content:center; width:100%; margin-top:6px;
	padding:.5em 1em; border-radius:8px; background:#f6efe0; color:var(--hc-cta-dark,#946c08);
	font-weight:600; font-size:12.5px; text-decoration:none;
}
.hc-card .add_to_cart_button.loading::after{ color:#7a3d0f; }

@media (max-width:480px){
	.hc-card__title{ font-size:13px; min-height:2.4em; }
	.hc-card__body{ padding:11px 12px 13px; }
	.hc-origin{ font-size:11px; padding:5px 8px; }
}
/* v0.9.0-css: card geometry + corner fix + hover */

/* Light green icon + radius override */
.hc-card .hc-btn, .hc-card .hc-card__action a.button, .hc-card .hc-card__action a.add_to_cart_button{ border-radius:10px !important; }
.hc-card .hc-btn--icon::before{ background-color:#7a3d0f !important; }


/* ============ OUT OF STOCK (OOS): Receive Stock Alert + Not Available ============ */
.hc-card__action{ display:flex; flex-direction:column; gap:7px; }
/* Receive Stock Alert: white background, dark green border + text + bell icon */
.hc-card .hc-bis-alert{
	display:flex; align-items:center; justify-content:center; gap:8px;
	width:100%; padding:11px 14px; box-sizing:border-box;
	background:#fff !important; color:#f18833 !important;
	border:1.5px solid #f18833 !important; border-radius:10px !important;
	font-weight:700; font-size:13.5px; text-decoration:none; cursor:pointer;
	transition:background .2s ease;
}
/* [Setting] "Receive Stock Alert" button HOVER colour (light orange). Base colour is in the .hc-card .hc-bis-alert block above. To change: background */
.hc-card .hc-bis-alert:hover{ background:#fff7ef !important; }
.hc-bis-bell{
	width:16px; height:16px; flex:0 0 auto; background:#f18833;
	-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2a6 6 0 0 0-6 6c0 3.5-1 5-2 6.5-.4.6 0 1.5.8 1.5h14.4c.8 0 1.2-.9.8-1.5-1-1.5-2-3-2-6.5a6 6 0 0 0-6-6zm0 20a2.5 2.5 0 0 0 2.45-2h-4.9A2.5 2.5 0 0 0 12 22z'/></svg>") center/contain no-repeat;
	mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2a6 6 0 0 0-6 6c0 3.5-1 5-2 6.5-.4.6 0 1.5.8 1.5h14.4c.8 0 1.2-.9.8-1.5-1-1.5-2-3-2-6.5a6 6 0 0 0-6-6zm0 20a2.5 2.5 0 0 0 2.45-2h-4.9A2.5 2.5 0 0 0 12 22z'/></svg>") center/contain no-repeat;
}
/* Not Available: grey button + sad face icon */
.hc-card .hc-btn--oos{
	display:flex; align-items:center; justify-content:center; gap:8px;
	width:100%; padding:11px 14px; box-sizing:border-box;
	background:#eee !important; color:#8a8a8a !important;
	border:0 !important; border-radius:10px !important;
	font-weight:700; font-size:13.5px; cursor:not-allowed;
}
.hc-oos-face{width:16px;height:16px;flex:0 0 auto;display:inline-block;background-color:currentColor;-webkit-mask:url("/wp-content/themes/hc-child/assets/icons/hc-oos-face.svg") no-repeat center/contain;mask:url("/wp-content/themes/hc-child/assets/icons/hc-oos-face.svg") no-repeat center/contain;}

/* ============ WIDE LIST LAYOUT (shop/category) ============ */
/* Listing pages use 1600px content; single product pages are excluded and keep the default. */
body.post-type-archive-product, body.tax-product_cat, body.tax-hc_store, body.woocommerce-shop, body.single-product { --global-content-width:1600px; }

/* ============ FACET SIDEBAR (category page left filters) ============ */
main.site-main{ display:grid; grid-template-columns:268px minmax(0, 1fr); column-gap:34px; row-gap:0; align-items:start; }
.hc-facets{ grid-column:1; grid-row:1 / 99; font-size:14px; padding-right:6px; }
main.site-main > *:not(.hc-facets){ grid-column:2; }
/* ---- Mobile filter drawer ---- */
.hc-filter-toggle, .hc-facets__close, .hc-facets__apply, .hc-facets__overlay{ display:none; }
@media (max-width:880px){
	main.site-main{ display:block; }
	.hc-filter-toggle{ display:flex; align-items:center; justify-content:center; gap:9px; width:100%; padding:13px 16px; margin:0 0 18px; background:#fff; border:1.5px solid #f18833; border-radius:10px; color:#f18833; font-weight:700; font-size:14px; cursor:pointer; }
	.hc-filter-toggle:before{ content:''; width:16px; height:16px; flex:0 0 auto; background:#f18833; -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='4' y1='6' x2='20' y2='6'/%3E%3Cline x1='7' y1='12' x2='17' y2='12'/%3E%3Cline x1='10' y1='18' x2='14' y2='18'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='4' y1='6' x2='20' y2='6'/%3E%3Cline x1='7' y1='12' x2='17' y2='12'/%3E%3Cline x1='10' y1='18' x2='14' y2='18'/%3E%3C/svg%3E") center/contain no-repeat; }
	.hc-facets{ position:fixed; top:0; left:0; height:100%; width:86%; max-width:340px; margin:0; background:#fff; z-index:99999; transform:translateX(-100%); transition:transform .28s ease; overflow-y:auto; padding:22px 20px 24px; box-shadow:2px 0 22px rgba(0,0,0,.18); grid-column:auto; grid-row:auto; }
	body.hc-drawer-open .hc-facets{ transform:translateX(0); }
	body.hc-drawer-open{ overflow:hidden; }
	.hc-facets__overlay{ display:block; position:fixed; inset:0; background:rgba(0,0,0,.45); z-index:99998; opacity:0; pointer-events:none; transition:opacity .25s ease; }
	body.hc-drawer-open .hc-facets__overlay{ opacity:1; pointer-events:auto; }
	.hc-facets__close{ display:block; position:absolute; top:16px; right:16px; width:30px; height:30px; border:0; background:none; cursor:pointer; padding:0; z-index:2; }
	.hc-facets__close:before, .hc-facets__close:after{ content:''; position:absolute; top:14px; left:6px; width:18px; height:2px; background:#555; border-radius:2px; }
	.hc-facets__close:before{ transform:rotate(45deg); }
	.hc-facets__close:after{ transform:rotate(-45deg); }
	.hc-facets__apply{ display:block; position:sticky; bottom:0; width:100%; margin-top:18px; padding:14px; background:#f18833; color:#fff; border:0; border-radius:10px; font-weight:700; font-size:14.5px; cursor:pointer; box-shadow:0 -6px 14px rgba(255,255,255,.9); }
}

.hc-facets__head{ font-size:17px; font-weight:700; color:#1a1a1a; padding:0 0 14px; margin:0 0 4px; border-bottom:1px solid #e6e6e6; }
/* [Setting] Prevent FOUC: hide the panel until JS hides empty facets.
   visibility:hidden keeps its space (no layout shift); shown with is-ready. */
.hc-facets{ visibility:hidden; }
.hc-facets.is-ready{ visibility:visible; }
.hc-facets__group{ padding:16px 0; margin:0; border-bottom:1px solid #ededed; }
.hc-facets__group:last-child{ border-bottom:0; }
.hc-facets__title{ font-size:14.5px; font-weight:700; text-transform:none; letter-spacing:0; color:#1a1a1a; margin:0 0 10px; display:flex; align-items:center; justify-content:space-between; cursor:pointer; user-select:none; }
.hc-facets__title:after{ content:''; width:11px; height:11px; flex:0 0 auto; margin-left:8px; background:#1a1a1a; -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center/contain no-repeat; transition:transform .2s ease; }
.hc-facets__group.is-collapsed .hc-facets__title:after{ transform:rotate(-90deg); }
.hc-facets__body{ overflow:hidden; transition:max-height .25s ease, opacity .2s ease; }
.hc-facets__group.is-collapsed .hc-facets__body{ max-height:0 !important; opacity:0; }

.hc-facets .facetwp-facet{ margin-bottom:0; }
.hc-facets .facetwp-checkbox, .facetwp-flyout .facetwp-checkbox{ display:flex; align-items:center; gap:9px; padding:6px 0; font-size:13.5px; color:#585858; cursor:pointer; line-height:1.3; background:none; transition:color .15s ease; }
.hc-facets .facetwp-checkbox:hover, .facetwp-flyout .facetwp-checkbox:hover{ color:#1a1a1a; }
.hc-facets .facetwp-checkbox:before, .facetwp-flyout .facetwp-checkbox:before{ content:''; width:16px; height:16px; flex:0 0 auto; border:1.5px solid #cfcfcf; border-radius:4px; background:#fff center no-repeat; background-size:11px; transition:all .15s ease; }
.hc-facets .facetwp-checkbox:hover:before, .facetwp-flyout .facetwp-checkbox:hover:before{ border-color:#f18833; }
.hc-facets .facetwp-checkbox.checked, .facetwp-flyout .facetwp-checkbox.checked{ color:#1a1a1a; font-weight:600; background:none; }
.hc-facets .facetwp-checkbox.checked:before, .facetwp-flyout .facetwp-checkbox.checked:before{ background-color:#f18833; border-color:#f18833; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E"); }
.hc-facets .facetwp-counter{ margin-left:auto; color:#b0b0b0; font-size:12px; font-weight:400; }
.hc-facets .facetwp-depth{ margin-left:8px; padding-left:9px; border-left:1px solid #eee; }
.hc-facets .facetwp-toggle{ color:#f18833; font-weight:600; font-size:12.5px; cursor:pointer; display:inline-block; margin-top:9px; }
.hc-facets .facetwp-toggle:hover{ text-decoration:underline; }
.hc-facets .facetwp-slider-wrap{ padding:12px 7px 0; }
.hc-facets .noUi-target{ height:4px; border:0; background:#e7e7e7; box-shadow:none; margin:6px 0; }
.hc-facets .noUi-connect{ background:#f18833; }
.hc-facets .noUi-handle{ width:15px; height:15px; top:-6px; right:-7px; border:2px solid #f18833; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.22); cursor:grab; }
.hc-facets .noUi-handle:before, .hc-facets .noUi-handle:after{ display:none; }
.hc-facets .facetwp-slider-label{ font-size:13px; color:#444; margin-top:12px; font-weight:500; }
.hc-facets .facetwp-slider-reset{ margin-top:12px; font-size:12px; color:#f18833; cursor:pointer; background:none; border:0; padding:0; font-weight:600; }
.hc-facets .facetwp-slider-reset:hover{ text-decoration:underline; }

/* ============ FACET DESIGN A: card groups, badge counter, in-list search, selection chips ============
   Edges and alignment use logical properties (mirror automatically in RTL). Mobile uses the FacetWP flyout; this block is for the sidebar. */
.hc-facets__head{ border-bottom:0; padding:0 0 12px; margin:0; }
.hc-facets__group{ background:#fff; border:1px solid #ece6de; border-radius:10px; padding:12px 14px; margin:0 0 10px; }
.hc-facets__group:last-child{ border-bottom:1px solid #ece6de; }
.hc-facets__group.is-hidden{ display:none; }
.hc-facets__title{ margin:0; padding:2px 0; font-size:14px; }
.hc-facets__title:focus-visible{ outline:2px solid #f18833; outline-offset:3px; border-radius:4px; }
.hc-facets__body > :first-child{ margin-top:10px; }
.hc-facets .facetwp-checkbox{ padding:5px 0; }
.hc-facets .facetwp-counter{ margin-left:0; margin-inline-start:auto; flex:0 0 auto; min-width:22px; padding:1px 7px; border-radius:999px; background:#f4efe9; color:#8a8178; font-size:11.5px; line-height:1.5; text-align:center; font-weight:500; }
.hc-facets .facetwp-checkbox.checked .facetwp-counter{ background:#fdecdc; color:#b85f17; }
.hc-facets .facetwp-toggle{ margin-top:6px; }
.hc-facets .facetwp-toggle.facetwp-hidden{ display:none; } /* "See less" only while the list is open (old rule overrode FacetWP hiding) */
/* In-list search */
.hc-facets__find{ position:relative; margin:0 0 6px; }
.hc-facets__find[hidden]{ display:none; }
.hc-facets__find:before{ content:''; position:absolute; inset-inline-start:10px; top:50%; width:14px; height:14px; transform:translateY(-50%); background:#9a9188; pointer-events:none; -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.6-3.6'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.6-3.6'/%3E%3C/svg%3E") center/contain no-repeat; }
.hc-facets__find input{ width:100%; box-sizing:border-box; height:34px; margin:0; padding:0 10px; padding-inline-start:31px; border:1px solid #e3ddd5; border-radius:8px; background:#faf8f5; color:#333; font-size:13px; box-shadow:none; outline:none; transition:border-color .15s, background .15s; }
.hc-facets__find input:focus{ border-color:#f18833; background:#fff; box-shadow:0 0 0 3px rgba(241,136,51,.12); }
.hc-facets__find input::placeholder{ color:#a39a90; }
@media (hover:none){ .hc-facets__find input{ font-size:16px; } }
.hc-facets .facetwp-facet .facetwp-checkbox.hc-find-miss{ display:none !important; }
.hc-facets .facetwp-facet.hc-is-searching .facetwp-overflow.facetwp-hidden{ display:block !important; }
.hc-facets .facetwp-facet.hc-is-searching .facetwp-toggle{ display:none !important; }
/* Selected filter chips */
.hc-facets__chips{ display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin:0 0 12px; }
.hc-facets__chips[hidden]{ display:none; }
.hc-facets .hc-chip{ display:inline-flex; align-items:center; gap:6px; max-width:100%; margin:0; padding:4px 8px; padding-inline-start:10px; border:1px solid #f3c79f; border-radius:10px; /* Same as the store chips (.hc-storebar__item), was 999px */ background:#fdf1e7; color:#1a1a1a; font-size:12.5px; font-weight:500; line-height:1.4; cursor:pointer; box-shadow:none; transition:background .15s, border-color .15s; }
.hc-facets .hc-chip span{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.hc-facets .hc-chip:after{ content:''; flex:0 0 auto; width:10px; height:10px; background:#b85f17; -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center/contain no-repeat; }
.hc-facets .hc-chip:hover{ background:#fbe3cf; border-color:#f18833; }
.hc-facets .hc-chip:focus-visible, .hc-facets .hc-chips__clear:focus-visible{ outline:2px solid #f18833; outline-offset:2px; }
.hc-facets .hc-chips__clear{ margin:0; padding:4px 4px; border:0; background:none; color:#f18833; font-size:12.5px; font-weight:600; cursor:pointer; box-shadow:none; }
.hc-facets .hc-chips__clear:hover{ text-decoration:underline; background:none; color:#e07a26; }

/* ============ STORE SELECTOR BAR (top of category/store page) ============ */
.hc-storebar-wrap{ margin:0 0 30px; }
.hc-storesearch{ position:relative; max-width:540px; margin:0 auto 20px; }
.hc-storesearch .facetwp-facet, .hc-storesearch .facetwp-input-wrap{ margin:0; width:100%; display:block; }
.hc-storesearch input, .hc-storesearch .facetwp-search{ width:100%; box-sizing:border-box; padding:13px 16px 13px 44px; border:1.5px solid #e2e2e2; border-radius:14px; font-size:14px; color:#333; outline:none; transition:border-color .15s,box-shadow .15s; background:#fff; }
.hc-storesearch input:focus, .hc-storesearch .facetwp-search:focus{ border-color:#f18833; box-shadow:0 0 0 3px rgba(241,136,51,.12); }
.hc-storesearch:before{ content:''; position:absolute; left:16px; top:50%; transform:translateY(-50%); width:18px; height:18px; z-index:2; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M21 21l-4.3-4.3'/%3E%3C/svg%3E") center/contain no-repeat; }
.hc-storesearch .facetwp-icon{ display:none; }
.hc-storeselect{ width:max-content; max-width:100%; box-sizing:border-box; margin:0 auto; border:1.5px solid #e4e4e4; border-radius:14px; padding:12px 16px; display:flex; align-items:center; gap:10px; flex-wrap:wrap; justify-content:center; background:#fafafa; }
.hc-storeselect__label{ font-weight:700; font-size:13px; color:#444; display:inline-flex; align-items:center; gap:5px; white-space:nowrap; margin-right:4px; }
.hc-storeselect__label svg{ width:13px; height:13px; }
.hc-storebar__item{ display:inline-flex; align-items:center; gap:8px; padding:8px 14px; border:1.5px solid #e2e2e2; border-radius:10px; background:#fff; color:#444; font-size:13.5px; font-weight:600; text-decoration:none; transition:all .15s ease; line-height:1; }
.hc-storebar__item:hover{ border-color:#f18833; color:#1a1a1a; }
.hc-storebar__item.is-active{ border-color:#f18833; background:#fdf0e7; color:#f18833; }
.hc-storebar__item img, .hc-storebar__item .hc-globe{ width:20px; height:20px; border-radius:50%; flex:0 0 auto; object-fit:cover; }
.hc-storebar__item .hc-globe{ background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23555' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3a14 14 0 0 1 0 18M12 3a14 14 0 0 0 0 18'/%3E%3C/svg%3E") center/contain no-repeat; border-radius:0; }
.hc-storebar__item .hc-check{ width:17px; height:17px; border-radius:50%; background:#f18833 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/11px no-repeat; flex:0 0 auto; }
.hc-storebar__status{ display:flex; align-items:center; justify-content:center; gap:9px; margin:18px auto 0; padding:11px 22px; width:max-content; max-width:100%; box-sizing:border-box; background:#fdf0e7; border:1px solid #f6c9a6; border-radius:14px; font-size:14.5px; color:#2a2a2a; }
.hc-storebar__status img{ width:22px; height:22px; border-radius:50%; }
.hc-storebar__status b{ color:#f18833; font-weight:700; }
@media (max-width:880px){ .hc-storeselect{ width:auto; } .hc-storebar__item{ font-size:12.5px; padding:7px 11px; } }

/* ============ Shrink the product archive title area (less hero space) ============ */
.product-archive-title.entry-header{ min-height:100px; }


/* ============================================================
   PDP — Product Detail Page (single product) redesign
   ============================================================ */

/* Only the product block is white; site background stays #f1f1f1 */
html body.single-product .wp-site-blocks,
html body.single-product #primary,
html body.single-product .content-area,
html body.single-product .site-content,
html body.single-product .site-main,
html body.single-product main,
html body.single-product .wrap.kt-clear{ background:#f1f1f1 !important; }
html body.single-product .content-container{ background:transparent !important; }
html body.single-product .entry-content-wrap.content-bg{ background:#fff !important; border-radius:18px; padding:32px !important; box-shadow:0 2px 20px rgba(0,0,0,.04); }

/* Item 1: large title */
body.single-product .summary .product_title{ font-size:32px !important; font-weight:800 !important; line-height:1.18 !important; color:#1f1f1f !important; margin:0 0 14px !important; letter-spacing:-.01em; }

/* Item 2: orange price range */
body.single-product .summary > .price{ font-size:26px !important; font-weight:800 !important; color:#f18833 !important; margin:0 0 14px !important; display:block; }
body.single-product .summary > .price del{ color:#b0b0b0 !important; font-weight:600 !important; font-size:18px !important; }
body.single-product .summary > .price ins{ text-decoration:none !important; }

/* Item 4: Ships from X Store badge */
.hc-pdp-meta{ margin:0 0 16px; }
.hc-pdp-badge{ display:inline-flex; align-items:center; gap:8px; border:1.5px solid #f18833; border-radius:22px; padding:6px 14px 6px 7px; font-size:13px; font-weight:700; color:#1f1f1f; background:#fff; margin:0 0 12px; }
.hc-pdp-badge img{ width:22px; height:22px; border-radius:50%; object-fit:cover; }
.hc-pdp-badge .store{ color:#f18833; }

/* Item 3: SKU */
.hc-pdp-sku{ font-size:13px; color:#7a7a7a; font-weight:500; }
.hc-pdp-sku b{ color:#1f1f1f; font-weight:700; letter-spacing:.02em; }
body.single-product .product_meta .sku_wrapper{ display:none !important; }

/* Item 6: Packing cards */
body.single-product .variations_form .variations{ display:none !important; }
body.single-product .variations_form .woocommerce-variation-price,
body.single-product .variations_form .woocommerce-variation-availability,
body.single-product .variations_form .reset_variations{ display:none !important; }

.hc-pack-label{ font-size:14px; font-weight:700; color:#1f1f1f; margin:4px 0 12px; }
.hc-pack-grid{ display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:0 0 20px; }
@media(max-width:480px){ .hc-pack-grid{ grid-template-columns:1fr; } }

.hc-pack-card{ position:relative; display:flex; align-items:center; gap:14px; border:2px solid #e7e7e7; border-radius:16px; padding:14px; cursor:pointer; background:#fff; transition:all .18s ease; }
.hc-pack-card:hover{ border-color:#f6c9a6; }
.hc-pack-card.is-active{ border-color:#f18833; background:#fdf3e7; box-shadow:0 4px 14px rgba(241,136,51,.13); }

.hc-pack-card__img{ width:78px; height:78px; flex:0 0 78px; border-radius:12px; object-fit:cover; background:#f5f5f5; }
.hc-pack-card__body{ flex:1; min-width:0; }
.hc-pack-card__name{ font-size:15px; font-weight:800; color:#1f1f1f; margin:0 0 6px; }

.hc-pack-stock{ display:inline-flex; align-items:center; gap:6px; font-size:11px; font-weight:700; color:#2eaf69; text-transform:uppercase; letter-spacing:.04em; margin:0 0 8px; }
.hc-pack-stock .dot{ width:7px; height:7px; border-radius:50%; background:#2eaf69; animation:hcPulse 1.3s ease-in-out infinite; }
.hc-pack-stock.is-out{ color:#c0392b; }
.hc-pack-stock.is-out .dot{ background:#c0392b; animation:none; }
@keyframes hcPulse{ 0%,100%{ opacity:1; transform:scale(1);} 50%{ opacity:.35; transform:scale(.8);} }

.hc-pack-price{ display:flex; align-items:baseline; gap:8px; }
.hc-pack-price .reg{ font-size:13px; color:#b0b0b0; text-decoration:line-through; font-weight:600; }
.hc-pack-price .now{ font-size:19px; font-weight:800; color:#2eaf69; }

.hc-pack-best{ position:absolute; top:-10px; right:14px; background:#f18833; color:#fff; font-size:10px; font-weight:800; letter-spacing:.05em; padding:3px 9px; border-radius:20px; text-transform:uppercase; }

/* Item 7: dynamic add to cart */
body.single-product .variations_form .single_variation_wrap{ margin-top:4px; }
body.single-product .variations_form .single_add_to_cart_button{ background:#f18833 !important; color:#fff !important; border:none !important; border-radius:12px !important; font-size:15px !important; font-weight:800 !important; letter-spacing:.02em; text-transform:uppercase; padding:0 22px !important; min-height:52px; display:inline-flex; align-items:center; justify-content:center; gap:12px; transition:background .18s; }
body.single-product .variations_form .single_add_to_cart_button:hover{ background:#d9731f !important; }
.hc-atc-price{ display:inline-flex; align-items:baseline; gap:7px; }
.hc-atc-price .reg{ text-decoration:line-through; opacity:.7; font-weight:600; font-size:13px; }


/* Product page width: widen the content container like the category page */
body.single-product .content-container.site-container{ max-width:1600px !important; }


/* ============================================================
   PDP — Gallery layout + GLightbox mosaic
   JS: hc-pdp-gallery.js (stops FlexSlider, builds mosaic + left thumbnails, GLightbox)
   ============================================================ */

/* Product block: gallery left + summary right, tabs/related full width below */
body.single-product div.product.type-product{ display:flex !important; flex-wrap:wrap !important; gap:48px !important; align-items:flex-start; }
body.single-product div.product.type-product > .onsale{ position:absolute; z-index:5; }
body.single-product div.product.type-product > .woocommerce-product-gallery{ flex:0 0 auto !important; width:50% !important; max-width:800px !important; float:none !important; margin:0 !important; }
body.single-product div.product.type-product > .summary.entry-summary{ flex:1 1 0 !important; width:auto !important; float:none !important; margin:0 !important; min-width:320px; }
body.single-product div.product.type-product > .woocommerce-tabs,
body.single-product div.product.type-product > .related{ flex:0 0 100% !important; width:100% !important; margin-top:48px !important; }

/* === Gallery: left vertical thumbnails + right mosaic === */
body.single-product .hc-gallery-wrap{ display:flex; flex-direction:row; gap:16px; align-items:flex-start; width:100%; }

/* Left vertical thumbnail column (sticky) */
body.single-product .hc-gallery-thumbs{
  display:flex; flex-direction:column; gap:10px; flex:0 0 72px; width:72px;
  position:sticky; top:20px; max-height:720px; overflow-y:auto; scrollbar-width:none;
}
body.single-product .hc-gallery-thumbs::-webkit-scrollbar{ display:none; }
body.single-product .hc-thumb{
  padding:0; border:2px solid #e7e7e7; border-radius:9px; overflow:hidden; cursor:pointer;
  background:none; width:72px; height:72px; flex:0 0 72px; transition:all .15s; opacity:.65;
}
body.single-product .hc-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
body.single-product .hc-thumb:hover{ opacity:1; }
body.single-product .hc-thumb.is-active{ opacity:1; border-color:#f18833; }

/* Right mosaic: flex-wrap, 1 full + 2 half */
body.single-product .hc-gallery-mosaic{ flex:1 1 auto; min-width:0; display:flex; flex-wrap:wrap; gap:12px; align-content:flex-start; }
/* Mosaic inner scroll: JS matches the gallery height to the summary (inline max-height).
   Extra images scroll inside the gallery. Thin, plain scrollbar. */
body.single-product .hc-gallery-mosaic{ scrollbar-width:thin; scrollbar-color:#ccc transparent; }
body.single-product .hc-gallery-mosaic::-webkit-scrollbar{ width:6px; }
body.single-product .hc-gallery-mosaic::-webkit-scrollbar-thumb{ background:#ccc; border-radius:3px; }
body.single-product .hc-gallery-mosaic::-webkit-scrollbar-track{ background:transparent; }
body.single-product .hc-mz-item{ display:block; border-radius:12px; overflow:hidden; line-height:0; cursor:zoom-in; }
body.single-product .hc-mz-item img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .3s; }
body.single-product .hc-mz-item:hover img{ transform:scale(1.04); }
body.single-product .hc-mz-full{ flex:0 0 100%; }
body.single-product .hc-mz-full img{ aspect-ratio:1/1; }
body.single-product .hc-mz-half{ flex:0 0 calc(50% - 6px); aspect-ratio:1/1; }

/* Hide old FlexSlider parts */
body.single-product .woocommerce-product-gallery > .flex-viewport,
body.single-product .woocommerce-product-gallery > .flex-control-thumbs,
body.single-product .woocommerce-product-gallery > .flex-control-nav,
body.single-product .woocommerce-product-gallery > .woocommerce-product-gallery__trigger{ display:none !important; }

/* Mobile: gallery and summary stacked */
@media(max-width:980px){
  body.single-product div.product.type-product > .woocommerce-product-gallery,
  body.single-product div.product.type-product > .summary.entry-summary{ width:100% !important; max-width:100% !important; flex:0 0 100% !important; }
}


/* Full-width product page: product block as wide as the header (1600).
   Do not touch --global-content-width (header and site stay fixed);
   only remove container padding and the empty sidebar column */
html body.single-product .content-container.site-container{ padding-left:0 !important; padding-right:0 !important; }
html body.single-product .site-main{ grid-template-columns:1fr !important; display:block !important; }
html body.single-product .entry-content-wrap.content-bg{ width:100% !important; max-width:100% !important; }

/* === GLightbox customisation (grey/semi-transparent backdrop + radius) === */
.glightbox-container.glightbox-clean .goverlay{ background:rgba(0,0,0,.78) !important; backdrop-filter:blur(4px); }
.glightbox-clean .gslide-media{ box-shadow:none !important; }
.glightbox-clean .gslide-image img{ border-radius:16px !important; }


/* ============================================================
   PDP — Accordion (description/additional info/reviews in the right column, stacked)
   JS: hc-pdp.js buildAccordion()  Style 1: separate cards
   ============================================================ */

/* Clear Kadence default button colours (.hc-acc-head is a <button>):
   - button:hover turned dark blue  /  button:focus turned white (invisible)
   Force the correct colours with higher specificity (.hc-acc prefix). */
body.single-product .hc-acc .hc-acc-head,
body.single-product .hc-acc .hc-acc-head:focus,
body.single-product .hc-acc .hc-acc-head:focus-visible,
body.single-product .hc-acc .hc-acc-head:active{
  color:#1a1a1a !important; background:transparent !important; box-shadow:none !important; outline:none !important;
}
body.single-product .hc-acc .hc-acc-head:hover,
body.single-product .hc-acc-item.is-open .hc-acc-head,
body.single-product .hc-acc-item.is-open .hc-acc-head:focus,
body.single-product .hc-acc-item.is-open .hc-acc-head:active{
  color:#f18833 !important;
}

.hc-acc{ margin-top:28px; display:flex; flex-direction:column; gap:10px; border:none; }
.hc-acc-item{
  border:1px solid #e7e7e7; border-radius:12px; overflow:hidden; background:#fff;
  transition:border-color .2s, box-shadow .2s;
}
.hc-acc-item:hover{ border-color:#d8d8d8; }
.hc-acc-item.is-open{ border-color:#f18833; box-shadow:0 2px 12px rgba(241,136,51,.08); }

.hc-acc-head{
  width:100%; cursor:pointer; border:0;
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 18px; font-size:15px; font-weight:600; color:#1a1a1a; text-align:left;
  font-family:inherit; letter-spacing:.2px;
}
.hc-acc-head:hover{ color:#f18833 !important; }
.hc-acc-item.is-open .hc-acc-head{ color:#f18833 !important; }

.hc-acc-ico{ transition:transform .25s; flex:0 0 auto; color:#bbb; }
.hc-acc-item.is-open .hc-acc-ico{ transform:rotate(180deg); color:#f18833; }

.hc-acc-body{
  max-height:0; overflow:hidden; transition:max-height .35s ease, padding .35s ease; padding:0 18px;
}
.hc-acc-item.is-open .hc-acc-body{ max-height:6000px; padding:0 18px 20px; }
.hc-acc-body p{ margin:0 0 12px; line-height:1.7; color:#444; }
.hc-acc-body table{ width:100%; border-collapse:collapse; margin:0; }
.hc-acc-body table th, .hc-acc-body table td{ padding:9px 12px; border-bottom:1px solid #eee; text-align:left; font-size:14px; }
.hc-acc-body table th{ color:#1a1a1a; font-weight:600; width:40%; }
.hc-acc-body h2{ font-size:18px; margin:0 0 12px; }
.hc-acc-body ul{ margin:0 0 12px 18px; }
.hc-acc-body li{ line-height:1.7; color:#444; }


/* ============================================================
   PDP — Breadcrumb inside the product block (white card), at the top
   JS: hc-pdp.js moveBreadcrumb()  (option C2, Shop item removed)
   ============================================================ */
body.single-product .entry-content-wrap > .product-title.product-above{
  flex:0 0 100% !important; width:100% !important; max-width:100% !important;
  order:-1 !important;
  margin:0 0 -30px 0 !important;   /* Negative: offsets flex row-gap (48px), moves gallery/title up */
  padding:0 0 8px 0 !important;
  border-bottom:1px solid #eee;
}
/* Reduce card top padding (breadcrumb higher) */
body.single-product .entry-content-wrap{ padding-top:18px !important; }
body.single-product .entry-content-wrap > .product-title.product-above .kadence-breadcrumbs{
  padding:0 !important; width:100% !important; max-width:100% !important; font-size:13px;
}
/* Sale! label hidden on the product page (not needed) */
body.single-product .entry-content-wrap > .onsale{ display:none !important; }
/* Reduce space between category bar and product block (content-area margin-top 80->20) */
body.single-product .content-area{ margin-top:20px !important; }


/* ============================================================
   PDP — Style settings (title/price/badge/pack-card)
   ============================================================ */
/* 1) title + price 36px */
body.single-product .product_title{ font-size:36px !important; }
body.single-product .summary .price{ font-size:36px !important; }

/* 2) hc-pdp-badge: radius 10px + light green background + border */
body.single-product .hc-pdp-badge{
  border-radius:10px !important;
  background:#e7f5c4 !important;
  border:1px solid #c5dd8f !important;
}

/* 3) hc-pack-card: border 1px; green background ONLY when selected (is-active) */
body.single-product .hc-pack-card{ border-width:1px !important; }
body.single-product .hc-pack-card.is-active{ background:#e7f5c4 !important; }
/* Price: now 22px #4dbc87, regular 18px grey */
body.single-product .hc-pack-card .hc-pack-price .now{ font-size:22px !important; color:#4dbc87 !important; }
body.single-product .hc-pack-card .hc-pack-price .reg{ font-size:18px !important; }
/* Content left-aligned, close to the image */
body.single-product .hc-pack-card .hc-pack-card__body{ text-align:left !important; align-items:flex-start !important; flex:1 !important; }

/* 4) hc-pack-best (BEST CHOICE badge) radius 5px */
body.single-product .hc-pack-best{ border-radius:5px !important; }

/* 5) Remove the PACKING label */
body.single-product .hc-pack-label{ display:none !important; }

/* Unselected card: clear grey border + light shadow (so it does not look faded) */
body.single-product .hc-pack-card:not(.is-active){
  border-color:#cfcfcf !important;
  box-shadow:0 1px 4px rgba(0,0,0,.06) !important;
}
/* Both cards get a hover shadow + slight lift like product cards */
body.single-product .hc-pack-card{
  transition:box-shadow .35s cubic-bezier(.2,.7,.3,1), transform .35s cubic-bezier(.2,.7,.3,1), border-color .2s !important;
  cursor:pointer;
}
body.single-product .hc-pack-card:hover{
  box-shadow:0 18px 24px -12px rgba(0,0,0,.42) !important;
  transform:translateY(-6px) !important;
}


/* ============================================================
   PDP — Add to Cart button (qty left, wide button right,
   aligned with Box of 200, inner price + cart icon)
   ============================================================ */
/* qty + button on one row, button fills the remaining width */
body.single-product .woocommerce-variation-add-to-cart{
  display:flex !important;
  align-items:stretch !important;
  gap:12px !important;
  width:100% !important;
}
body.single-product .woocommerce-variation-add-to-cart .quantity{
  flex:0 0 auto !important;
  margin:0 !important;
}
body.single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button{
  flex:1 1 auto !important;
  width:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
}
/* Price inside the button */
body.single-product .single_add_to_cart_button .hc-atc-price .reg{
  text-decoration:line-through; opacity:.65; margin-right:6px; font-weight:600;
}
body.single-product .single_add_to_cart_button .hc-atc-price .now{
  font-weight:800;
}
/* Cart icon */
body.single-product .single_add_to_cart_button .hc-atc-icon-wrap{
  display:inline-flex; align-items:center; margin:0 2px;
}
body.single-product .single_add_to_cart_button .hc-atc-icon{
  vertical-align:middle;
}

/* ============================================================
   PDP — Quantity box (light grey background,
   rounded, -/+ buttons, number in the middle)
   JS: hc-pdp.js hcQtyButtons()
   ============================================================ */
body.single-product .woocommerce-variation-add-to-cart .quantity,
body.single-product form.cart .quantity{
  display:flex !important;
  align-items:center !important;
  background:#fff !important;
  border:1px solid #cfcfcf !important;
  border-radius:12px !important;
  padding:0 4px !important;
  height:auto !important;
  flex:0 0 auto !important;
}
body.single-product .quantity .hc-qty-btn{
  display:flex !important; align-items:center !important; justify-content:center !important;
  width:38px !important; height:48px !important;
  background:transparent !important; border:none !important;
  color:#bbb !important; cursor:pointer !important;
  padding:0 !important; box-shadow:none !important;
  transition:color .15s !important;
}
body.single-product .quantity .hc-qty-btn:hover{ color:#333 !important; background:transparent !important; }
body.single-product .quantity input.qty{
  width:42px !important; height:48px !important;
  background:transparent !important; border:none !important;
  text-align:center !important; font-size:18px !important; font-weight:700 !important;
  color:#1a1a1a !important; padding:0 !important; margin:0 !important;
  -moz-appearance:textfield !important; appearance:textfield !important;
}
body.single-product .quantity input.qty::-webkit-outer-spin-button,
body.single-product .quantity input.qty::-webkit-inner-spin-button{
  -webkit-appearance:none !important; margin:0 !important;
}

/* ============================================================
   PDP — Hide Categories/Tag/Brand + Wishlist/Ask actions
   ============================================================ */
/* Hide Categories, Tag, Brand rows (SKU stays) */
body.single-product .product_meta .posted_in,
body.single-product .product_meta .tagged_as{ display:none !important; }

/* Add to Wishlist + Ask About This Product (style 4: single row with divider, inside a border) */
.hc-pdp-actions{
  display:inline-flex; align-items:center; gap:18px;
  border:1px solid #e2e2e2; border-radius:10px; padding:11px 20px;
  background:#fff; margin:18px 0 4px;
}
.hc-pdp-action{ display:inline-flex; align-items:center; gap:8px; color:#555 !important; font-size:14px; font-weight:600; text-decoration:none !important; transition:color .15s; }
.hc-pdp-action:hover{ color:#f18833 !important; }
.hc-pdp-action__ico{ width:18px; height:18px; background:currentColor; -webkit-mask-size:contain; mask-size:contain; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-position:center; mask-position:center; display:inline-block; }
.hc-pdp-action__svg{ flex:0 0 auto; }
.hc-pdp-sep{ width:1px; height:20px; background:#ddd; display:inline-block; flex:0 0 auto; }

/* ============================================================
   PDP — Ask About This Product modal (popup)
   PHP: Code Snippet "PDP - Ask About Product Modal" + wpforms [wpforms id="63676"]
   JS: hc-pdp.js hcAskModal()
   ============================================================ */
.hc-ask-modal{ position:fixed; inset:0; z-index:99999; display:none; align-items:flex-start; justify-content:center; }
.hc-ask-modal.is-open{ display:flex; }
.hc-ask-modal__backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.55); -webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px); }
.hc-ask-modal__dialog{
  position:relative; background:#fff; width:92%; max-width:560px;
  margin:6vh auto 0; border-radius:16px; padding:32px 30px 28px;
  box-shadow:0 24px 60px rgba(0,0,0,.3); max-height:86vh; overflow-y:auto;
}
.hc-ask-modal__close{
  position:absolute; top:14px; right:16px; width:34px; height:34px;
  border:none; background:transparent; font-size:28px; line-height:1;
  color:#999; cursor:pointer; transition:color .15s;
}
.hc-ask-modal__close:hover{ color:#f18833; background:none; box-shadow:none; }
.hc-ask-modal__title{ font-size:22px; font-weight:800; margin:0 0 4px; color:#1a1a1a; text-align:center; }
.hc-ask-modal__product{
  display:block; width:fit-content; background:#fff; border:1px solid #d8d8d8; border-radius:8px;
  padding:7px 14px; font-size:14px; color:#f18833; font-weight:600; margin:0 auto 22px; text-align:center;
}
/* Name + Email: widen the Email field (Name 40% - Email 57% side by side) */
.hc-ask-modal__body .wpforms-field-name.wpforms-one-half.wpforms-first{
  width:40% !important; float:left !important; margin-right:3% !important; clear:none !important;
}
.hc-ask-modal__body .wpforms-field-email.wpforms-one-half{
  width:65% !important; float:left !important; margin-left:0 !important; clear:none !important;
}
.hc-ask-modal__body .wpforms-field-textarea{ clear:both !important; }

/* Hide WPForms Product Name (field 8) from the user; JS auto-fills it for the email */
.hc-ask-modal__body #wpforms-63676-field_8-container{ display:none !important; }

/* ===== Ask modal: custom WPForms form design ===== */
.hc-ask-modal__body .wpforms-container{ margin:0 !important; }
.hc-ask-modal__body .wpforms-form{ margin:0; }

/* Space between field rows */
.hc-ask-modal__body .wpforms-field{ padding:0 0 16px 0 !important; }

/* label */
.hc-ask-modal__body .wpforms-field-label{
  font-size:13px !important; font-weight:600 !important; color:#444 !important;
  margin-bottom:6px !important; letter-spacing:.01em;
}
.hc-ask-modal__body .wpforms-required-label{ color:#f18833 !important; }

/* input + textarea shared */
.hc-ask-modal__body input[type=text],
.hc-ask-modal__body input[type=email],
.hc-ask-modal__body textarea{
  width:100% !important; box-sizing:border-box !important;
  border:1px solid #dcdcdc !important; border-radius:10px !important;
  padding:12px 14px !important; font-size:14px !important; color:#1a1a1a !important;
  background:#fafafa !important; transition:border-color .15s, box-shadow .15s, background .15s !important;
  box-shadow:none !important; outline:none !important;
}
.hc-ask-modal__body input::placeholder,
.hc-ask-modal__body textarea::placeholder{ color:#aaa !important; }

/* Focus state - orange highlight */
.hc-ask-modal__body input[type=text]:focus,
.hc-ask-modal__body input[type=email]:focus,
.hc-ask-modal__body textarea:focus{
  border-color:#f18833 !important; background:#fff !important;
  box-shadow:0 0 0 3px rgba(241,136,51,.12) !important;
}
.hc-ask-modal__body textarea{ min-height:110px !important; resize:vertical !important; }

/* SEND button - orange, full width */
.hc-ask-modal__body .wpforms-submit{
  background:#f18833 !important; color:#fff !important;
  border:none !important; border-radius:10px !important;
  width:100% !important; padding:14px 20px !important;
  font-size:15px !important; font-weight:700 !important; letter-spacing:.02em;
  cursor:pointer !important; transition:background .15s, transform .05s, box-shadow .15s !important;
  box-shadow:0 4px 14px rgba(241,136,51,.25) !important; margin-top:4px !important;
  text-transform:uppercase;
}
.hc-ask-modal__body .wpforms-submit:hover{ background:#e07a26 !important; box-shadow:0 6px 18px rgba(241,136,51,.35) !important; }
.hc-ask-modal__body .wpforms-submit:active{ transform:translateY(1px) !important; }
.hc-ask-modal__body .wpforms-submit-container{ padding-top:4px !important; }

/* Confirmation message after submit */
.hc-ask-modal .wpforms-confirmation-container-full{
  background:#f3faf0 !important; border:1px solid #cfe8c2 !important;
  border-radius:12px !important; padding:18px 20px !important;
  color:#2e6b1f !important; font-size:14px !important; margin:0 !important;
}
/* Error messages */
.hc-ask-modal__body .wpforms-error{
  border-color:#e25555 !important; box-shadow:0 0 0 3px rgba(226,85,85,.10) !important;
}
.hc-ask-modal__body label.wpforms-error{
  color:#e25555 !important; font-size:12px !important; font-weight:600 !important;
  border:none !important; box-shadow:none !important; margin-top:4px !important;
}

/* ===== YITH wishlist button - match style 4 ===== */
.hc-pdp-wishlist .yith-add-to-wishlist-button-block,
.hc-pdp-wishlist .yith-wcwl-add-to-wishlist{ margin:0; display:inline-flex; align-items:center; }
.hc-pdp-wishlist .yith-wcwl-add-to-wishlist-button,
.hc-pdp-wishlist a.add_to_wishlist,
.hc-pdp-wishlist .yith-wcwl-wishlistaddedbrowse a,
.hc-pdp-wishlist .yith-wcwl-wishlistexistsbrowse a{
  display:inline-flex; align-items:center; gap:8px;
  color:#555; font-size:14px; font-weight:600;
  text-decoration:none; line-height:1; transition:color .15s;
}
.hc-pdp-wishlist .yith-wcwl-add-to-wishlist-button:hover,
.hc-pdp-wishlist a.add_to_wishlist:hover{ color:#f18833; }
/* Added state (browse wishlist) orange */
.hc-pdp-wishlist .yith-wcwl-wishlistaddedbrowse a,
.hc-pdp-wishlist .yith-wcwl-wishlistexistsbrowse a{ color:#f18833; }
/* Hide YITH's own feedback/message box (so it does not overflow the row) */
.hc-pdp-wishlist .yith-wcwl-add-to-wishlist .ajax-loading{ display:inline-block; }


/* ===== Wishlist page - styled table ===== */
/* radius fix - shop_table override */
table.wishlist_table.shop_table{ border-radius:16px !important; overflow:hidden !important; }
.wishlist_table td.product-add-to-cart{ text-align:right; }
.wishlist_table td.product-add-to-cart a{ min-width:130px; }
.wishlist_table{
  border:none; border-collapse:separate; border-spacing:0;
  width:100%; background:#fff;
  border-radius:16px; overflow:hidden;
  box-shadow:0 4px 24px rgba(0,0,0,.06); margin-top:10px;
}
.wishlist_table thead th{
  background:#faf7f4; color:#1a1a1a;
  font-size:12px; font-weight:700; text-transform:uppercase;
  letter-spacing:.04em; padding:18px 20px; text-align:left;
  border:none; border-bottom:2px solid #f1ece7;
}
.wishlist_table tbody td{
  padding:18px 20px; border:none;
  border-bottom:1px solid #f2f2f2; vertical-align:middle;
  background:transparent;
}
.wishlist_table tbody tr:last-child td{ border-bottom:none; }
.wishlist_table tbody tr{ transition:background .15s; }
.wishlist_table tbody tr:hover td{ background:#fcfaf8; }

/* remove (x) */
.wishlist_table td.product-remove{ width:48px; text-align:center; }
.wishlist_table td.product-remove a.remove,
.wishlist_table td.product-remove a{
  display:inline-flex; align-items:center; justify-content:center;
  width:28px; height:28px; border-radius:50%;
  background:#f4f4f4; color:#bbb; font-size:16px;
  text-decoration:none; transition:all .15s; line-height:1;
}
.wishlist_table td.product-remove a:hover{ background:#ffe9e9; color:#e25555; }

/* thumbnail */
.wishlist_table td.product-thumbnail{ width:90px; }
.wishlist_table td.product-thumbnail img{
  width:64px; height:64px; object-fit:cover;
  border-radius:12px; border:1px solid #eee; background:#f7f7f7;
}
.wishlist_table td.product-thumbnail a{ display:inline-block; width:64px; height:64px; border-radius:12px; background:#f4f2ef; }

/* Product name */
.wishlist_table td.product-name a{
  color:#1a1a1a; font-size:15px; font-weight:600;
  text-decoration:none; transition:color .15s;
}
.wishlist_table td.product-name a:hover{ color:#f18833; }

/* Price */
.wishlist_table td.product-price{ font-size:15px; }
.wishlist_table td.product-price del{ color:#bbb; font-weight:400; margin-right:6px; font-size:13px; }
.wishlist_table td.product-price ins,
.wishlist_table td.product-price .amount{ color:#f18833; font-weight:700; text-decoration:none; }
.wishlist_table td.product-price ins{ background:transparent; }

/* Stock status - green badge */
.wishlist_table td.product-stock-status .wishlist-in-stock{
  display:inline-flex; align-items:center; gap:6px;
  background:#e7f7ee; color:#2e9b5f; font-weight:600;
  padding:5px 12px; border-radius:20px; font-size:12px;
}

/* Add to cart button - orange */
.wishlist_table td.product-add-to-cart a{
  display:inline-flex; align-items:center; justify-content:center;
  background:#f18833; color:#fff; border:none;
  border-radius:6px; padding:11px 22px;
  font-size:13px; font-weight:700; text-transform:uppercase;
  letter-spacing:.02em; text-decoration:none; transition:background .15s;
  white-space:nowrap;
}
.wishlist_table td.product-add-to-cart a:hover{ background:#e07a26; }


/* ===== Wishlist stock cell - card style (Available / Not Available) ===== */
.wishlist_table td.product-stock-status .hc-avail{
  display:inline-flex; align-items:center; gap:5px;
  font-size:12.5px; font-weight:600; color:rgb(43,178,76);
}
.wishlist_table td.product-stock-status span.hc-btn.hc-btn--oos{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  width:auto; min-width:0; padding:0 !important;
  background:none !important; background-color:transparent !important;
  color:rgb(138,138,138) !important;
  border-radius:0 !important; font-size:13px; font-weight:600; cursor:default;
  text-transform:none; letter-spacing:normal; box-shadow:none !important;
}


/* ===== Wishlist fine-tuning (price / title / button height) ===== */
/* Price: regular grey #b0b0b0, sale larger */
.wishlist_table td.product-price del,
.wishlist_table td.product-price del .amount{ color:#b0b0b0; font-size:13px; }
.wishlist_table td.product-price ins,
.wishlist_table td.product-price ins .amount{ font-size:18px; color:#f18833; font-weight:700; }
/* Move the "My wishlist" heading up */
.woocommerce-wishlist .entry-content-wrap{ padding-top:0; }
.wishlist-title{ margin-bottom:18px; }
.wishlist-title h2{ padding-top:0; margin-top:0; }
/* Taller ADD TO CART button (override display:table) */
.wishlist_table td.product-add-to-cart a{
  display:inline-flex !important; align-items:center; justify-content:center;
  padding:14px 24px; line-height:1; box-sizing:border-box;
}


/* ===== Wishlist - packing variation under the product name ===== */
.wishlist_table td.product-name .hc-wl-packing{
  display:block; margin-top:4px;
  font-size:12.5px; font-weight:500; color:#888;
}
.wishlist_table td.product-name .hc-wl-packing::before{
  content:""; display:inline-block; width:5px; height:5px; border-radius:50%;
  background:#f18833; margin-right:7px; vertical-align:middle;
}


/* ============================================================
   PDP — Specifications accordion
   ============================================================ */
.hc-specs{margin:14px 0 4px;border:1px solid #ececec;border-radius:14px;overflow:hidden;background:#fff;transition:border-color .3s,box-shadow .3s}
.hc-specs.is-open{border-color:#f7c89c;box-shadow:0 6px 22px -10px rgba(241,136,51,.35)}
/* Stop the theme (Kadence) focus/active blue background from leaking in */
.hc-specs__toggle,
.hc-specs__toggle:focus,
.hc-specs__toggle:active,
.hc-specs__toggle:focus-visible,
.hc-specs__toggle:hover{
  width:100%;display:flex;align-items:center;gap:10px;padding:14px 18px;
  background:#fff;color:#1a1a1a;border:0;outline:0;box-shadow:none;cursor:pointer;text-align:left;font:inherit;
  -webkit-appearance:none;appearance:none;transition:background .3s
}
.hc-specs__toggle:hover{background:#fafafa}
.hc-specs.is-open .hc-specs__toggle,
.hc-specs.is-open .hc-specs__toggle:focus,
.hc-specs.is-open .hc-specs__toggle:active{background:linear-gradient(180deg,#fff6ee,#fff)}
.hc-specs.is-open .hc-specs__toggle:hover{background:linear-gradient(180deg,#fff1e3,#fff)}
.hc-specs__ledico{display:flex;width:30px;height:30px;border-radius:8px;align-items:center;justify-content:center;background:#fff5ec;color:#f18833;transition:transform .35s}
.hc-specs.is-open .hc-specs__ledico{transform:rotate(-8deg) scale(1.05)}
.hc-specs__toggle h3{margin:0;font-size:15.5px;font-weight:700;letter-spacing:.2px;color:#1a1a1a;flex:1}
.hc-specs__pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid #e6e6e6;border-radius:10px;background:#f7f7f7;font-size:12.5px;font-weight:600;color:#6a6a6a;transition:all .25s}
.hc-specs__toggle:hover .hc-specs__pill{border-color:#f7c89c;background:#fff5ec;color:#f18833}
.hc-specs.is-open .hc-specs__pill{border-color:#f7c89c;background:#fff0e1;color:#f18833}
.hc-specs__chev{transition:transform .35s cubic-bezier(.4,0,.2,1)}
.hc-specs.is-open .hc-specs__pill .hc-specs__chev{transform:rotate(180deg)}
.hc-specs__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .38s cubic-bezier(.4,0,.2,1)}
.hc-specs.is-open .hc-specs__panel{grid-template-rows:1fr}
.hc-specs__panelinner{overflow:hidden}
.hc-specs__grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid #f0f0f0}
.hc-spec{display:flex;align-items:center;gap:11px;padding:13px 18px;border-bottom:1px solid #f4f4f4;opacity:0;transform:translateY(8px)}
.hc-specs.is-open .hc-spec{animation:hcSpecIn .4s ease forwards}
@keyframes hcSpecIn{to{opacity:1;transform:none}}
.hc-spec:nth-child(odd){border-right:1px solid #f4f4f4}
.hc-spec__ico{flex:0 0 34px;width:34px;height:34px;border-radius:9px;background:#fff5ec;display:flex;align-items:center;justify-content:center}
.hc-spec__ico svg{color:#f18833}
.hc-spec__txt{min-width:0}
.hc-spec__label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:#9a9a9a;font-weight:600;line-height:1.2}
.hc-spec__val{display:inline-block;margin-top:2px;font-size:14.5px;font-weight:600;color:#222;text-decoration:none;border-bottom:1px solid transparent;transition:color .15s,border-color .15s}
a.hc-spec__val:hover{color:#f18833;border-bottom-color:#f18833}
@media(max-width:560px){.hc-specs__grid{grid-template-columns:1fr}.hc-spec:nth-child(odd){border-right:none}}


/* ============================================================
   PDP — simple-product fixes (specs lines, OOS, BIS, packing)
   ============================================================ */

/* FIX 1: Specifications - remove stripe/table lines */
.hc-specs__grid{border-top:1px solid #f0f0f0}
.hc-specs .hc-spec{border-bottom:0}
.hc-specs .hc-spec:nth-child(odd){border-right:0}

/* FIX 2: Product page "Out of stock" -> card-style "Not Available" (reuses global .hc-btn--oos/.hc-oos-face) */
.summary .stock.out-of-stock{margin:14px 0 0;padding:0;color:inherit;font-size:inherit}
/* OOS badge on the product page matches the product card style: grey, compact, sad face */
.summary .hc-btn--oos,
.summary p.stock .hc-btn--oos{display:inline-flex !important;width:auto !important;align-items:center;gap:8px;background:#eee !important;color:#8a8a8a !important;border-radius:10px;padding:9px 16px;font-size:14px;font-weight:700;border:1px solid #e2e2e2;justify-content:flex-start !important;text-transform:none}
.summary .hc-btn--oos .hc-oos-face{flex:0 0 17px}


/* FIX 3: Back-in-Stock - both states in one styled box */
#wc_bis_product_form.hc-bis-card,
#wc_bis_already_registered.hc-bis-card{margin-top:14px;border:1px solid #ececec;border-radius:14px;background:linear-gradient(180deg,#fbfbfb,#fff);padding:18px;box-shadow:0 4px 16px -10px rgba(0,0,0,.12)}
.hc-bis-card .wc_bis_form_title{display:flex;align-items:center;gap:9px;margin:0 0 13px;font-size:14.5px;font-weight:600;color:#2a2a2a}
.hc-bis-card .wc_bis_form_title::before{content:"";flex:0 0 30px;width:30px;height:30px;border-radius:8px;background:#fff5ec url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="%23f18833" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9"/><path d="M13.73 21a2 2 0 0 1-3.46 0"/></svg>') center/17px no-repeat}
.hc-bis-card .wc_bis_send_form,.hc-bis-card button.wc_bis_send_form{width:100%;background:#f18833;color:#fff;border:0;border-radius:10px;padding:13px;font-size:14.5px;font-weight:700;cursor:pointer;transition:background .2s}
.hc-bis-card .wc_bis_send_form:hover{background:#e07a26}
.hc-bis-card p{margin:0}
.hc-bis-card a{color:#f18833;font-weight:600}
/* BIS 3.x compatibility: since plugin 3.x the registered template prints
   wc_print_notice() instead of <p>, so the content arrives as div.woocommerce-info.
   The old "p" rules no longer matched and the card looked like a bare Woo notice.
   The selectors below target both (p, .woocommerce-info) for old and new versions. */
#wc_bis_already_registered.hc-bis-card p{display:flex;align-items:center;gap:9px;font-size:14px;color:#2a2a2a}
/* BIS 3.x text is .woocommerce-info with a link inside.
   With flex the sentence would split into separate items with gaps between them
   and the link would shift in its own line box, so the text stays in NORMAL FLOW
   and the icon is absolutely positioned via ::before. */
#wc_bis_already_registered.hc-bis-card .woocommerce-info{display:block;position:relative;padding-left:39px;font-size:14px;color:#2a2a2a;line-height:1.6}
#wc_bis_already_registered.hc-bis-card .woocommerce-info a{display:inline}
/* Strip the Woo notice shell: blue background, border, own icon, button */
#wc_bis_already_registered.hc-bis-card .woocommerce-info{background:transparent !important;border:0 !important;padding:0 !important;margin:0 !important;box-shadow:none !important;list-style:none !important;min-height:0 !important}
#wc_bis_already_registered.hc-bis-card .woocommerce-info::after{display:none !important}
#wc_bis_already_registered.hc-bis-card .woocommerce-info .button,
#wc_bis_already_registered.hc-bis-card .woocommerce-info .wc-forward{display:none !important}
#wc_bis_already_registered.hc-bis-card .woocommerce-info::before{position:absolute;left:0;top:50%;transform:translateY(-50%);margin:0}
#wc_bis_already_registered.hc-bis-card p::before,
#wc_bis_already_registered.hc-bis-card .woocommerce-info::before{content:"";flex:0 0 30px;width:30px;height:30px;border-radius:8px;background:#eafaf0 url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="%2322a35a" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"/><polyline points="22 4 12 14.01 9 11.01"/></svg>') center/17px no-repeat}

/* FIX 4: hc-pack-info - packing indicator on simple products (separate from the .hc-pack-card selector) */
.hc-pack-info{display:flex;align-items:center;gap:13px;margin-top:14px;border:1px solid #f1ddc9;border-radius:14px;background:linear-gradient(180deg,#fff8f1,#fff);padding:14px 16px}
.hc-pack-info__ico{flex:0 0 42px;width:42px;height:42px;border-radius:11px;background:#fff;border:1px solid #f3e2d2;display:flex;align-items:center;justify-content:center}
.hc-pack-info__ico svg{color:#f18833}
.hc-pack-info__txt{min-width:0}
.hc-pack-info__label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:#b08254;font-weight:700}
.hc-pack-info__val{font-size:16px;font-weight:700;color:#222;text-decoration:none}
.hc-pack-info__val:hover{color:#f18833}
.hc-pack-info__sub{font-size:12.5px;color:#9a9a9a}


/* ============================================================
   PDP — Variable product OOS badge (server-side, hc_variable_oos_badge)
   ============================================================ */
body.single-product .woocommerce-variation-add-to-cart.hc-vac-oos{display:flex !important;align-items:center;gap:0;width:auto !important;margin-top:14px}
.hc-vac-oos .hc-btn--oos{display:inline-flex !important;width:auto !important;align-items:center;gap:8px;background:#eee !important;color:#8a8a8a !important;border-radius:10px;padding:9px 16px;font-size:14px;font-weight:700;border:1px solid #e2e2e2;justify-content:flex-start !important;text-transform:none}
.hc-vac-oos .hc-oos-face{flex:0 0 17px}


/* ============================================================
   PDP — Simple product add-to-cart: same design as variable
   (quantity + orange button, price + cart icon inside the button)
   ============================================================ */
body.single-product form.cart{display:flex !important;align-items:stretch !important;gap:12px !important;width:100% !important;margin-bottom:0}
body.single-product form.cart .quantity{flex:0 0 auto !important;margin:0 !important}
body.single-product form.cart .single_add_to_cart_button{flex:1 1 auto !important;width:auto !important;display:flex !important;align-items:center !important;justify-content:center !important;gap:10px;background:#f18833 !important;color:#fff !important;border:0 !important;border-radius:12px !important;padding:0 22px !important;font-weight:700;text-transform:none;min-height:52px}
body.single-product form.cart .single_add_to_cart_button:hover{background:#e07a26 !important}
/* Price inside the button (same look as variable .hc-atc-price) */
body.single-product form.cart .single_add_to_cart_button .hc-atc-price{display:inline-flex;align-items:baseline;gap:6px}
body.single-product form.cart .single_add_to_cart_button .hc-atc-price .reg{text-decoration:line-through;opacity:.65;font-weight:600}
body.single-product form.cart .single_add_to_cart_button .hc-atc-price .now{font-weight:800}
body.single-product form.cart .single_add_to_cart_button .hc-atc-sep{opacity:.5;margin:0 2px}
body.single-product form.cart .single_add_to_cart_button .hc-atc-icon{display:block}
body.single-product form.cart .single_add_to_cart_button .hc-atc-label{font-weight:700;letter-spacing:.02em;text-transform:uppercase;font-size:13.5px}


/* ============================================================
   PDP — Variable OOS: put the BIS box BELOW the pack-card + Not Available
   badge, full width (clean layout via flex order)
   ============================================================ */
body.single-product .variations_form{flex-wrap:wrap !important}
body.single-product .variations_form > #hc-pack-wrap{order:1; flex:1 1 100%; width:100%}
body.single-product .variations_form > .single_variation_wrap{order:2; flex:1 1 100%; width:100%}
body.single-product .variations_form > #wc_bis_product_form.hc-bis-card,
body.single-product .variations_form > #wc_bis_already_registered.hc-bis-card{order:3; flex:1 1 100%; width:100%; margin-top:14px}


/* ============================================================
   PDP — Simple product pack-card (hc-spc): like the selected variable
   card. In stock = light green (#e7f5c4) + SAVE badge; OOS = grey.
   Orange left stripe, AVAILABLE/Not Available, hover shadow.
   ============================================================ */
#hc-pack-wrap .hc-pack-grid--single{display:block !important}
.hc-spc{position:relative;width:100%;border-radius:16px;padding:16px 18px 16px 26px;display:flex;align-items:center;gap:16px;overflow:hidden;transition:box-shadow .35s cubic-bezier(.2,.7,.3,1),transform .35s cubic-bezier(.2,.7,.3,1);cursor:default}
.hc-spc::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px}
.hc-spc__img{width:70px !important;height:70px !important;min-height:70px;max-height:70px;border-radius:13px;object-fit:cover;background:#fff;flex:0 0 70px;overflow:hidden;font-size:0;color:transparent;display:block}
.hc-spc__body{flex:1 1 auto;min-width:0}
.hc-spc__row1{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.hc-spc__name{font-size:18px;font-weight:800;color:#1f1f1f;letter-spacing:-.01em}
.hc-spc__price{display:flex;align-items:baseline;gap:9px;margin-top:9px}
.hc-spc__price .now{font-size:25px;font-weight:800}
.hc-spc__save{flex:0 0 auto;align-self:center;background:#f18833;color:#fff;font-size:12px;font-weight:800;padding:7px 13px;border-radius:11px;box-shadow:0 2px 8px rgba(241,136,51,.3);white-space:nowrap;letter-spacing:.02em}

/* In-stock variant (light green) */
.hc-spc--instock{background:#e7f5c4;border:1px solid #f18833;box-shadow:0 4px 14px rgba(241,136,51,.13)}
.hc-spc--instock::before{background:linear-gradient(#f18833,#e07a26)}
.hc-spc--instock .hc-spc__img{border:1px solid #e4ddcf}
.hc-spc--instock .hc-spc__avail{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;color:#1f9e44;text-transform:uppercase;letter-spacing:.03em;background:#fff;padding:4px 10px;border-radius:999px}
.hc-spc--instock .hc-spc__avail .dot{width:7px;height:7px;border-radius:50%;background:#2bb24c}
.hc-spc--instock .hc-spc__price .reg{font-size:14px;color:#9aaa7e;text-decoration:line-through}
.hc-spc--instock .hc-spc__price .now{color:#f18833}
.hc-spc--instock:hover{box-shadow:0 18px 24px -12px rgba(0,0,0,.42);transform:translateY(-6px)}

/* OOS variant (grey) */
.hc-spc--oos{background:#f3f3f3;border:1px solid #dcdcdc;box-shadow:0 3px 12px rgba(0,0,0,.05)}
.hc-spc--oos::before{background:linear-gradient(#bdbdbd,#a5a5a5)}
.hc-spc--oos .hc-spc__img{border:1px solid #e2e2e2;filter:grayscale(1);opacity:.75}
.hc-spc--oos .hc-spc__name{color:#7a7a7a}
.hc-spc--oos .hc-spc__na{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;color:#8a8a8a;text-transform:uppercase;letter-spacing:.03em;background:#fff;padding:4px 10px;border-radius:999px}
.hc-spc--oos .hc-spc__na .hc-oos-face{width:14px;height:14px;flex:0 0 14px}
.hc-spc--oos .hc-spc__price .reg{font-size:14px;color:#bbb;text-decoration:line-through}
.hc-spc--oos .hc-spc__price .now{color:#8a8a8a}
.hc-spc--oos:hover{box-shadow:0 14px 20px -12px rgba(0,0,0,.3);transform:translateY(-4px)}


/* ============================================================
   PDP — Simple pack-card: Available/Not Available pill CENTRED
   + pulsing Available dot (same as variable).
   ============================================================ */
.hc-spc__row1{position:relative; justify-content:flex-start !important; min-height:26px}
.hc-spc__avail, .hc-spc__na{position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); margin:0 !important}
.hc-spc--instock .hc-spc__avail .dot{animation:hcPulse 1.3s ease-in-out infinite}


/* ============================================================
   SPC PILL ALIGN — centre the Available/Not Available pills at the
   same position on both cards. The SAVE badge is absolute and the
   card right space is fixed (equal body width on both cards).
   ============================================================ */
.hc-spc{padding-right:130px !important}
.hc-spc__save{position:absolute !important;top:50%;right:18px;transform:translateY(-50%);align-self:center}
.hc-spc__row1{flex-wrap:nowrap !important}
.hc-spc__avail,.hc-spc__na{margin-left:auto !important;margin-right:auto !important}


/* ============================================================
   OOS — Not Available inside a variable pack-card gets the
   sad face (hc-oos-face) + red colour, same look as simple products.
   ============================================================ */
.hc-pack-stock.is-out{display:inline-flex;align-items:center;gap:6px}
.hc-pack-stock.is-out .hc-oos-face{width:13px;height:13px;flex:0 0 13px;background-color:#c0392b;display:inline-block}

/* ============================================================
   OOS BTN FULLWIDTH — make the bottom "Not Available" button full width,
   for both simple (summary > .hc-btn--oos) and variable
   (.hc-vac-oos > .hc-btn--oos) products.
   ============================================================ */
body.single-product .summary > .hc-btn--oos,
body.single-product .hc-vac-oos > .hc-btn--oos{display:flex !important;width:100% !important;justify-content:center !important;box-sizing:border-box}
body.single-product .hc-vac-oos{display:block !important}


/* ============================================================
   VARIABLE OOS CARD GREY — on variable OOS products the
   pack-cards are always GREY (not green), same as simple products.
   Sad face + Not Available as a white pill (bg/radius/border), grey colour.
   ============================================================ */
/* Card background: cards containing is-out are always grey */
body.single-product .hc-pack-card:has(.hc-pack-stock.is-out){background:#f3f3f3 !important;border-color:#dcdcdc !important}
body.single-product .hc-pack-card.is-active:has(.hc-pack-stock.is-out){background:#f3f3f3 !important;border-color:#bdbdbd !important;box-shadow:0 3px 12px rgba(0,0,0,.05) !important}
/* Image grayscale, name/price grey */
body.single-product .hc-pack-card:has(.hc-pack-stock.is-out) .hc-pack-card__img{filter:grayscale(1);opacity:.75}
body.single-product .hc-pack-card:has(.hc-pack-stock.is-out) .hc-pack-card__name{color:#7a7a7a !important}
body.single-product .hc-pack-card:has(.hc-pack-stock.is-out) .hc-pack-price .now{color:#8a8a8a !important}
body.single-product .hc-pack-card:has(.hc-pack-stock.is-out) .hc-pack-price .reg{color:#bbb !important}

/* Sad face + Not Available: white pill (same as .hc-spc__na) */
body.single-product .hc-pack-stock.is-out{display:inline-flex !important;align-items:center;gap:6px;background:#fff !important;color:#8a8a8a !important;padding:4px 10px !important;border-radius:999px !important;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.03em}
body.single-product .hc-pack-stock.is-out .hc-oos-face{width:13px;height:13px;flex:0 0 13px;background-color:#8a8a8a !important;display:inline-block}


/* ============================================================
   PDP GAP NORMALIZE — fixed 14px vertical gap between the main
   blocks in the summary (consistent spacing).
   ============================================================ */
body.single-product .summary > .hc-pack-info,
body.single-product .summary > .hc-specs,
body.single-product .summary > #hc-pack-wrap,
body.single-product .summary > .hc-btn--oos,
body.single-product .summary > #wc_bis_product_form,
body.single-product .summary > #wc_bis_already_registered,
body.single-product .summary > form.cart,
body.single-product .summary > .hc-pdp-actions{margin-top:14px !important;margin-bottom:0 !important}
body.single-product #hc-pack-wrap .hc-pack-grid{margin-bottom:0 !important}


/* ============================================================
   PDP GAP VARIABLE — fixed 14px between blocks in the .variations_form
   flex layout on variable products too. row-gap is off and each
   flex child gets an explicit margin-top (except the first wrap).
   Hidden reset_variations_alert/variations flex rows are removed.
   ============================================================ */
body.single-product form.variations_form.cart{gap:0 !important;row-gap:0 !important}
body.single-product .variations_form > #hc-pack-wrap{margin-top:0 !important;margin-bottom:0 !important}
body.single-product .variations_form > .single_variation_wrap{margin-top:14px !important;margin-bottom:0 !important}
body.single-product .variations_form > #wc_bis_product_form,
body.single-product .variations_form > #wc_bis_already_registered{margin-top:14px !important;margin-bottom:0 !important}
body.single-product .single_variation_wrap > .hc-vac-oos{margin-top:0 !important;margin-bottom:0 !important}
body.single-product .variations_form > .reset_variations_alert,
body.single-product .variations_form > .variations{display:none !important}


/* ============================================================
   PDP GAP 28 — specific gaps (override on top of the 14px GAP
   NORMALIZE). specs->wrap = 28 for all types. In stock
   (.single_add_to_cart_button present) also wrap->cart=28 and
   cart->actions=28. On OOS the gap after wrap stays 14.
   Also form.cart ::before/::after are hidden and the qty box is left-aligned.
   ============================================================ */
body.single-product form.cart::before,
body.single-product form.cart::after{display:none !important}
/* specs -> wrap = 28 (simple + variable) */
body.single-product .summary > #hc-pack-wrap{margin-top:28px !important}
body.single-product .summary > form.cart{margin-top:28px !important}
body.single-product .summary > form.variations_form.cart{margin-top:28px !important}
/* In stock: wrap->cart(single_variation_wrap)=28 and cart->actions=28 */
body.single-product:has(.single_add_to_cart_button) .variations_form > .single_variation_wrap{margin-top:28px !important}
body.single-product:has(.single_add_to_cart_button) .summary > .hc-pdp-actions{margin-top:28px !important}


/* ============================================================
   PDP DETAIL TWEAKS
   1) hc-pdp-badge enlarged, hc-pdp-sku 14px.
   2) variable OOS: hc-pack-best (BEST CHOICE) grey to match the card
      (#f3f3f3 / #7B7A7A). Stays orange when in stock.
   3) hc-specs has a gradient like hc-pack-info when closed; the Show details
      pill is always #f18833 (no hover change); when open bg #f7f7f7.
   ============================================================ */
/* 1) badge + sku */
body.single-product .hc-pdp-badge{font-size:15px !important;padding:8px 16px 8px 9px !important}
body.single-product .hc-pdp-sku{font-size:14px !important}

/* 2) Variable OOS BEST CHOICE grey (only out of stock = no add-to-cart) */
body.single-product:not(:has(.single_add_to_cart_button)) .hc-pack-best{background:#f3f3f3 !important;color:#7B7A7A !important}

/* 3) hc-specs gradient + always-orange Show details + open bg */
body.single-product .hc-specs{background:linear-gradient(#fff8f1,#ffffff) !important}
body.single-product .hc-specs__pill{
	display:inline-flex !important;
	align-items:center !important;
	gap:6px !important;
	padding:6px 12px !important;
	border:1px solid #f7c89c !important;
	border-radius:10px !important;
	background:#fff0e1 !important;
	font-size:12.5px !important;
	font-weight:600 !important;
	color:#6a6a6a !important;
	transition:all .25s !important;
}
body.single-product .hc-specs__pill .hc-specs__txt2{color:#f18833 !important}
body.single-product .hc-specs__pill .hc-specs__chev{stroke:#f18833 !important;color:#f18833 !important}
body.single-product .hc-specs.is-open .hc-specs__pill{border-color:#f7c89c !important;background:#fff0e1 !important}
/* Mobile product page: "Show details" broke onto two lines on phones -> one line; if narrow the title wraps, the button does not shrink */
body.single-product .hc-specs__pill{white-space:nowrap !important;flex-shrink:0 !important}
body.single-product .hc-specs__toggle > :nth-child(2){min-width:0}

/* hc-specs: toggle button always transparent (gradient visible, no grey hover) + white grid when open */
body.single-product .hc-specs__toggle,
body.single-product .hc-specs__toggle:hover,
body.single-product .hc-specs__toggle:focus,
body.single-product .hc-specs__toggle:active,
body.single-product .hc-specs__toggle:focus-visible,
body.single-product .hc-specs.is-open .hc-specs__toggle,
body.single-product .hc-specs.is-open .hc-specs__toggle:hover{background:transparent !important}
body.single-product .hc-specs.is-open .hc-specs__grid{background:#fff !important}


/* ============================================================
   AVAIL PILL UNIFY — simple (.hc-spc__avail) and variable
   (.hc-pack-card .hc-pack-stock) "AVAILABLE" badges share one
   pill design: semi-transparent white bg, thin green border, soft
   shadow, rounded corners, bold green text + pulse dot.
   ============================================================ */
body.single-product .hc-spc__avail,
body.single-product .hc-pack-card .hc-pack-stock:not(.is-out){
	display:inline-flex !important;
	align-items:center !important;
	gap:6px !important;
	padding:4px 11px !important;
	border-radius:999px !important;
	background:rgba(255,255,255,.75) !important;
	border:1px solid rgba(46,175,105,.35) !important;
	box-shadow:0 1px 3px rgba(46,175,105,.12) !important;
	font-size:11px !important;
	font-weight:800 !important;
	letter-spacing:.04em !important;
	color:#1f9e44 !important;
	backdrop-filter:blur(2px) !important;
}


/* ============================================================
   OOS NA BORDER — on OOS products (simple .hc-spc__na +
   variable .hc-pack-stock.is-out) the sad face + NOT AVAILABLE
   pill inside hc-pack-wrap gets a border in the sad face colour
   (grey #8a8a8a).
   ============================================================ */
body.single-product #hc-pack-wrap .hc-spc__na,
body.single-product #hc-pack-wrap .hc-pack-stock.is-out{
	border:1px solid #8a8a8a !important;
}


/* ============================================================
   OOS BEST BORDER — on variable OOS products the hc-pack-best
   (BEST CHOICE) badge gets the same border colour as the pack-card
   (#dcdcdc). OOS ONLY (no add-to-cart); no border when in stock.
   ============================================================ */
body.single-product:not(:has(.single_add_to_cart_button)) #hc-pack-wrap .hc-pack-card:not(.is-active) .hc-pack-best{
	border:1px solid #dcdcdc !important;
}
body.single-product:not(:has(.single_add_to_cart_button)) #hc-pack-wrap .hc-pack-card.is-active .hc-pack-best{
	border:1px solid #bdbdbd !important;
}


/* ============================================================
   EMPTY CATEGORY — "No products were found" empty-state design.
   Only .woocommerce-no-products-found (other notices unaffected).
   Airy, centred, orange magnifier icon + title + subtext.
   ============================================================ */
.woocommerce-no-products-found{
	width:100% !important;
	grid-column:1 / -1 !important;
	box-sizing:border-box !important;
	display:flex !important;
	flex-direction:column !important;
	align-items:center !important;
	text-align:center !important;
	padding:54px 20px 90px !important;
}
.woocommerce-no-products-found::before{
	content:"" !important;
	display:block !important;
	width:96px !important;
	height:96px !important;
	margin-bottom:24px !important;
	background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Ccircle cx='50' cy='50' r='50' fill='%23fff1e3'/%3E%3Cg transform='translate(28 28)' fill='none' stroke='%23f18833' stroke-width='4' stroke-linecap='round'%3E%3Ccircle cx='18' cy='18' r='13'/%3E%3Cpath d='m35 35 9 9'/%3E%3C/g%3E%3C/svg%3E") no-repeat center/contain !important;
	border-radius:50% !important;
	box-shadow:0 8px 22px rgba(241,136,51,.18) !important;
}
.woocommerce-no-products-found .woocommerce-info{
	all:unset !important;
	display:block !important;
	font-family:inherit !important;
	font-size:22px !important;
	font-weight:800 !important;
	color:#2c2c2c !important;
	line-height:1.4 !important;
	max-width:460px !important;
}
.woocommerce-no-products-found .woocommerce-info::after{
	content:"We couldn\'t find any products here. Explore our other categories or search for what you need." !important;
	display:block !important;
	margin-top:12px !important;
	font-size:15px !important;
	font-weight:400 !important;
	color:#8a8a8a !important;
	line-height:1.6 !important;
}
/* ja empty-state text. CSS content does not go through translation; temporary override until the text moves to gettext. */
html[lang^="ja"] .woocommerce-no-products-found .woocommerce-info::after{ content:"お探しの商品が見つかりませんでした。他のカテゴリーをご覧いただくか、検索をお試しください。" !important; }
/* ko empty-state text. Temporary until the gettext fix. */
html[lang^="ko"] .woocommerce-no-products-found .woocommerce-info::after{ content:"이 카테고리에는 상품이 없습니다. 다른 카테고리를 둘러보거나 원하는 상품을 검색해 보십시오." !important; }
/* ar empty-state text. Text only; temporary until the gettext fix. */
html[lang^="ar"] .woocommerce-no-products-found .woocommerce-info::after{ content:"لا توجد منتجات هنا. يمكن تصفح الأقسام الأخرى أو البحث عن المنتج المطلوب." !important; }


/* ============================================================
   404 PAGE — "Page Not Found" error page design.
   Only body.error404. Orange "?" circle + large 404 +
   title + one-line description + working search box.
   ============================================================ */
body.error404 .content-area{
	display:flex !important;
	flex-direction:column !important;
	align-items:center !important;
	text-align:center !important;
	padding:54px 20px 90px !important;
}
body.error404 .content-area::before{
	content:"" !important;
	display:block !important;
	width:96px !important;
	height:96px !important;
	margin-bottom:18px !important;
	background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Ccircle cx='50' cy='50' r='50' fill='%23fff1e3'/%3E%3Ctext x='50' y='52' font-family='Arial,sans-serif' font-size='58' font-weight='bold' fill='%23f18833' text-anchor='middle' dominant-baseline='central'%3E%3F%3C/text%3E%3C/svg%3E") no-repeat center/contain !important;
	border-radius:50% !important;
	box-shadow:0 8px 22px rgba(241,136,51,.18) !important;
}
body.error404 .page-title::before{
	content:"404" !important;
	display:block !important;
	font-size:64px !important;
	font-weight:900 !important;
	line-height:1 !important;
	letter-spacing:-1px !important;
	color:#f18833 !important;
	margin-bottom:10px !important;
}
body.error404 .page-title{
	font-size:28px !important;
	font-weight:800 !important;
	color:#2c2c2c !important;
	margin:0 0 12px !important;
	max-width:560px !important;
	line-height:1.25 !important;
}
body.error404 .content-area p{
	font-size:15px !important;
	color:#8a8a8a !important;
	max-width:600px !important;
	line-height:1.6 !important;
	margin:0 0 24px !important;
}
body.error404 .search-form{
	max-width:440px !important;
	width:100% !important;
	margin:0 auto !important;
	position:relative !important;
	display:block !important;
}
body.error404 .search-form label{
	display:block !important;
	width:100% !important;
	margin:0 !important;
}
body.error404 .search-field{
	width:100% !important;
	height:54px !important;
	border:1px solid #e6e6e6 !important;
	border-radius:30px !important;
	padding:13px 60px 13px 24px !important;
	font-size:15px !important;
	box-shadow:0 2px 8px rgba(0,0,0,.04) !important;
	box-sizing:border-box !important;
}
body.error404 .search-submit{
	position:absolute !important;
	right:7px !important;
	top:7px !important;
	width:40px !important;
	height:40px !important;
	border-radius:50% !important;
	background:#f18833 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") no-repeat center/18px 18px !important;
	border:none !important;
	cursor:pointer !important;
	font-size:0 !important;
	color:transparent !important;
	text-indent:-9999px !important;
	overflow:hidden !important;
	padding:0 !important;
}
body.error404 .kadence-search-icon-wrap{ display:none !important; }

/* 404 FiboSearch box - same style as the homepage */
body.error404 .hc-404-fibo{max-width:440px !important;width:100% !important;margin:0 auto !important;}
body.error404 .hc-404-fibo .dgwt-wcas-sf-wrapp{background:transparent !important;box-shadow:none !important;padding:0 !important;}
body.error404 .hc-404-fibo .dgwt-wcas-search-input{border:1px solid #e6e6e6 !important;box-shadow:0 2px 8px rgba(0,0,0,.04) !important;padding-left:56px !important;}
body.error404 .hc-404-fibo .dgwt-wcas-sf-wrapp input[type="search"].dgwt-wcas-search-input{font-size:15px !important;}
body.error404 .hc-404-fibo .dgwt-wcas-search-submit{left:0 !important;right:auto !important;top:50% !important;transform:translateY(-50%) !important;}
body.error404 .hc-404-fibo .dgwt-wcas-suggestions-wrapp{border-radius:0 0 16px 16px !important;overflow:hidden !important;border:1px solid #e6e6e6 !important;border-top:none !important;box-shadow:0 8px 24px rgba(0,0,0,.10) !important;}

/* ============================================================
   Category SEO + FAQ block (full-width, before footer)
   ============================================================ */
.hc-seo{ position:relative; overflow:hidden; width:100%; background:#fff; padding:80px 0 60px; }
.hc-seo::before{ content:''; position:absolute; top:-120px; right:-120px; width:420px; height:420px; border-radius:50%; background:radial-gradient(circle, rgba(241,136,51,.08) 0%, rgba(241,136,51,0) 70%); pointer-events:none; }
.hc-seo::after{ content:''; position:absolute; bottom:-100px; left:-100px; width:360px; height:360px; border-radius:50%; background:radial-gradient(circle, rgba(241,136,51,.06) 0%, rgba(241,136,51,0) 70%); pointer-events:none; }
.hc-seo__in{ position:relative; z-index:1; max-width:1600px; margin:0 auto; padding:0 24px; }
.hc-seo__secs{ display:block; margin:0 0 8px; }
.hc-seo__sec{ display:block; padding:0 0 30px; margin-bottom:30px; border-bottom:1px solid #f0f0f0; }
.hc-seo__sec:last-child{ border-bottom:none; margin-bottom:0; }
.hc-seo__num{ display:none; }
.hc-seo__body h2{ display:flex; align-items:center; gap:14px; font-size:22px; font-weight:700; margin:0 0 12px; color:#1a1a1a; line-height:1.3; letter-spacing:-.2px; }
.hc-seo{ --hc-icon-color:#f18833; }
.hc-seo__body h2 .hc-ico{ flex:0 0 auto; width:30px; height:30px; display:inline-block; background-color:var(--hc-icon-color); -webkit-mask:var(--hc-ico-url) center / contain no-repeat; mask:var(--hc-ico-url) center / contain no-repeat; }
.hc-seo__body p{ font-size:15px; line-height:1.8; color:#555; margin:0; }
.hc-seo__faq{ margin-top:44px; border-top:2px solid #f18833; padding-top:8px; }
.hc-seo .hc-faq-item{ border-bottom:1px solid #eee; }
.hc-seo .hc-faq-q{ width:100%; text-align:left; background:none; border:none; padding:18px 40px 18px 0; font-size:16px; font-weight:600; color:#1a1a1a; cursor:pointer; position:relative; outline:none; margin:0; font-family:inherit; }
.hc-seo .hc-faq-q:focus, .hc-seo .hc-faq-q:active{ background:none; box-shadow:none; }
.hc-seo .hc-faq-q::after{ content:'+'; position:absolute; right:4px; top:50%; transform:translateY(-50%); font-size:22px; color:#f18833; font-weight:400; }
.hc-seo .hc-faq-item.is-open .hc-faq-q::after{ content:'\2212'; }
.hc-seo .hc-faq-h{ margin:0; }
.hc-seo .hc-faq-a{ max-height:0; overflow:hidden; transition:max-height .25s ease; }
.hc-seo .hc-faq-a p{ font-size:15px; line-height:1.8; color:#555; padding:0 0 18px; margin:0; }
@media (max-width:782px){
  .hc-seo{ padding:48px 0 40px; }
}

/* Tablet (768-1024px): product grid 2 columns (Kadence has no native tablet column setting) */
@media (min-width: 576px) and (max-width: 1024px) {
	ul.products.grid-sm-col-3 {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

/* ============================================================
   FacetWP Flyout - mobile filter design
   (supports Count + Soft Limit + Search; replaces the old .hc-facets drawer)
   ============================================================ */
.facetwp-flyout.active {
	width: 86% !important;
	max-width: 340px !important;
	border-radius: 0 18px 18px 0 !important;
	box-shadow: 2px 0 22px rgba(0,0,0,.18) !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	scrollbar-width: thin !important;
	scrollbar-color: #f18833 #f0f0f0 !important;
}
.facetwp-flyout.active::-webkit-scrollbar { width: 8px; }
.facetwp-flyout.active::-webkit-scrollbar-track { background: #f0f0f0; }
.facetwp-flyout.active::-webkit-scrollbar-thumb { background: #f18833; border-radius: 8px; }
.facetwp-flyout-content { padding: 22px 20px 24px !important; }
.facetwp-flyout .flyout-row { padding: 16px 0 !important; border-bottom: 1px solid #ededed !important; margin: 0 !important; }
.facetwp-flyout .flyout-row:last-child { border-bottom: 0 !important; }
.facetwp-flyout .flyout-row h3 { font-size: 14.5px !important; font-weight: 700 !important; color: #1a1a1a !important; margin: 0 0 10px !important; }
.facetwp-flyout-close { position: absolute !important; top: 16px !important; right: 16px !important; width: 30px !important; height: 30px !important; font-size: 0 !important; cursor: pointer !important; z-index: 2 !important; }
.facetwp-flyout-close:before, .facetwp-flyout-close:after { content: '' !important; position: absolute; top: 14px; left: 6px; width: 18px; height: 2px; background: #555; border-radius: 2px; }
.facetwp-flyout-close:before { transform: rotate(45deg); }
.facetwp-flyout-close:after { transform: rotate(-45deg); }
.facetwp-flyout .facetwp-type-search, .facetwp-flyout .facetwp-type-search .facetwp-input-wrap { width: 100% !important; display: block !important; position: relative; }
.facetwp-flyout .facetwp-search { width: 100% !important; box-sizing: border-box !important; border: 1.5px solid #e6e6e6 !important; border-radius: 10px !important; padding: 11px 14px 11px 38px !important; font-size: 13px !important; background: #fafafa !important; transition: border-color .15s, background .15s !important; }
.facetwp-flyout .facetwp-search:focus { border-color: #f18833 !important; background: #fff !important; outline: none !important; }
.facetwp-flyout .facetwp-search::placeholder { font-size: 13px !important; color: #999 !important; }
.facetwp-flyout .facetwp-type-search::before { content: '' !important; position: absolute !important; left: 13px !important; top: 50% !important; width: 16px !important; height: 16px !important; transform: translateY(-50%) !important; background: #999 !important; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='M21 21l-4.35-4.35'/%3E%3C/svg%3E") center/contain no-repeat !important; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='M21 21l-4.35-4.35'/%3E%3C/svg%3E") center/contain no-repeat !important; z-index: 2 !important; pointer-events: none !important; }
.facetwp-flyout .facetwp-icon { display: none !important; }
.facetwp-flyout .noUi-connect { background: #f18833 !important; }
.facetwp-flyout .noUi-handle { border: 2px solid #f18833 !important; border-radius: 50% !important; box-shadow: 0 2px 6px rgba(0,0,0,.15) !important; background: #fff !important; }
/* [Setting] Flyout facet labels (checkbox/radio/link) - clean font like the Search input:
   13px, system font. Fixes the default WooCommerce 17px look. */
.facetwp-flyout .facetwp-checkbox,
.facetwp-flyout .facetwp-radio,
.facetwp-flyout .facetwp-link,
.facetwp-flyout .facetwp-depth { font-size: 15px !important; line-height: 1.5 !important; color: #333 !important; }
.facetwp-flyout .facetwp-counter { font-size: 12px !important; color: #999 !important; }
.facetwp-flyout .noUi-target { border-radius: 6px !important; }
.facetwp-flyout .facetwp-slider-reset { background: #fff !important; color: #f18833 !important; border: 1.5px solid #f18833 !important; border-radius: 8px !important; padding: 7px 16px !important; font-size: 13px !important; font-weight: 600 !important; cursor: pointer !important; transition: background .15s, color .15s !important; }
.facetwp-flyout .facetwp-slider-reset:hover { background: #f18833 !important; color: #fff !important; }
.facetwp-flyout .fwp-show-results { position: sticky; bottom: 0; width: 100%; margin-top: 18px; padding: 14px; background: #f18833; color: #fff; border: 0; border-radius: 10px; font-weight: 700; font-size: 14.5px; cursor: pointer; box-shadow: 0 -6px 14px rgba(255,255,255,.9); }
.facetwp-flyout .fwp-show-results:hover { background: #e07a26; }
.fwp-flyout-overlay { position: fixed; inset: 0; background: rgba(0,0,0,.6); z-index: 9998; opacity: 0; pointer-events: none; transition: opacity .25s ease; }
.fwp-flyout-overlay.is-visible { opacity: 1; pointer-events: auto; }

/* [Setting] Prevent horizontal overflow/rubber-band: stops empty space or shifting when the
   page is dragged sideways. overflow-x:clip does not break sticky (hidden does).
   Showcase/New-In carousels keep working with their own overflow viewports. */
html, body { overflow-x: clip; }

/* ============================================================
   Wishlist — MOBILE card view (<=768px)
   YITH responsive JS template-swap disabled via
   `yith_wcwl_is_wishlist_responsive` = false (functions.php),
   so the 'traditional' table (with hc-origin + hc-avail badges)
   renders on mobile too. Here we restyle that table into cards.
   ============================================================ */
@media (max-width: 768px) {
  /* Kill the wrapping table's own shadow/bg (the grey "wall" behind cards) */
  .wishlist_table.shop_table,
  .wishlist_table tbody,
  .wishlist_table tbody.wishlist-items-wrapper {
    box-shadow: none !important;
    background: transparent !important;
    border: 0 !important;
  }

  /* Hide table header; make table/tbody flow as blocks */
  .wishlist_table thead { display: none !important; }
  .wishlist_table,
  .wishlist_table tbody {
    display: block !important; width: 100% !important;
    margin: 0 !important; padding: 0 !important;
  }

  /* Each row becomes a card */
  .wishlist_table tbody tr {
    display: block !important;
    background: #fff !important;
    border: 1px solid #ececec !important;
    border-radius: 16px !important;
    box-shadow: 0 2px 12px rgba(0,0,0,.07) !important;
    padding: 14px 14px 14px 112px !important;
    margin: 0 0 14px !important;
    position: relative !important;
    min-height: 112px !important;
  }
  .wishlist_table tbody tr td {
    display: block !important; border: 0 !important;
    padding: 0 !important; text-align: left !important; width: auto !important;
  }

  /* Thumbnail: fixed square, top-left */
  .wishlist_table td.product-thumbnail {
    position: absolute !important; left: 14px !important; top: 14px !important;
    width: 84px !important; height: 84px !important;
  }
  .wishlist_table td.product-thumbnail a {
    display: block !important; width: 84px !important; height: 84px !important;
  }
  .wishlist_table td.product-thumbnail img {
    width: 84px !important; height: 84px !important; aspect-ratio: 1 / 1 !important;
    object-fit: cover !important; border-radius: 12px !important;
    border: 1px solid #f0f0f0 !important; display: block !important;
  }

  /* Product name (leave room on the right for the remove button) */
  .wishlist_table td.product-name {
    font-size: 14px !important; font-weight: 700 !important; color: #1f1f1f !important;
    line-height: 1.3 !important; margin: 0 0 8px !important; padding-right: 30px !important;
  }
  .wishlist_table td.product-name a { color: #1f1f1f !important; text-decoration: none !important; }

  /* Store badge row */
  .wishlist_table td.product-store { margin: 0 0 8px !important; }

  /* Price + stock status side by side */
  .wishlist_table td.product-price {
    display: inline-flex !important; align-items: center !important;
    margin: 0 10px 0 0 !important; vertical-align: middle !important; float: none !important;
  }
  .wishlist_table td.product-stock-status {
    display: inline-flex !important; align-items: center !important;
    margin: 0 !important; vertical-align: middle !important; float: none !important;
  }

  /* Remove (×) button: top-right corner, above the name */
  .wishlist_table td.product-remove {
    position: absolute !important; top: 12px !important; right: 12px !important;
    width: auto !important; z-index: 2 !important;
  }

  /* Add to cart: full width, below (cancel the left thumbnail padding) */
  .wishlist_table td.product-add-to-cart {
    margin: 12px 0 0 -98px !important; clear: both !important;
  }
  .wishlist_table td.product-add-to-cart a {
    display: block !important; width: 100% !important; text-align: center !important;
  }
}

/* Hide redundant "My wishlist" heading (page title already says "Wishlist") — all viewports */
.woocommerce-wishlist .wishlist-title { display: none !important; }

/* ===== WooCommerce pagination — white card + circular buttons (custom) =====
   Wraps the shop/category pagination in a white rounded card with a soft orange
   border, renders each page number as a circular button (light-orange idle,
   solid orange for the current page), and keeps everything on a single line
   (no wrap) on both mobile and desktop. High-specificity selectors + !important
   override WooCommerce core's pagination radius/size. CheckoutWC/WooCommerce
   core files untouched. */
.woocommerce-pagination{
  background:#ffffff !important;
  border:1.5px solid #f3d9c3 !important;
  border-radius:14px !important;
  box-shadow:none !important;
  padding:12px 10px !important;
  margin:18px auto !important;
  text-align:center !important;
}
.woocommerce-pagination ul.page-numbers{
  display:flex !important;
  flex-wrap:nowrap !important;
  justify-content:center !important;
  align-items:center !important;
  gap:6px !important;
  width:100% !important;
  margin:0 auto !important;
  padding:0 !important;
  border:0 !important;
  list-style:none !important;
}
.woocommerce-pagination ul.page-numbers li{ margin:0 !important; padding:0 !important; display:flex !important; }
.woocommerce nav.woocommerce-pagination ul li .page-numbers,
.woocommerce-pagination .page-numbers{
  min-width:36px !important;
  width:36px !important;
  height:36px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:50% !important;
  font-weight:700 !important;
  font-size:14px !important;
  margin:0 !important;
  flex:0 0 auto !important;
}
.woocommerce-pagination a.page-numbers{
  background:#fff7f0 !important;
  color:#1f1f1f !important;
  border:1px solid #f3d9c3 !important;
}
.woocommerce-pagination a.page-numbers:hover{
  background:#f18833 !important;
  color:#fff !important;
  border-color:#f18833 !important;
}
.woocommerce nav.woocommerce-pagination ul li .page-numbers.current,
.woocommerce-pagination .page-numbers.current{
  background:#f18833 !important;
  color:#fff !important;
  border:1px solid #f18833 !important;
  border-radius:50% !important;
}
.woocommerce-pagination .page-numbers.dots{
  background:transparent !important;
  border:0 !important;
  min-width:18px !important;
  width:18px !important;
  border-radius:0 !important;
}
@media (max-width:480px){
  .woocommerce nav.woocommerce-pagination ul li .page-numbers,
  .woocommerce-pagination .page-numbers{ min-width:32px !important; width:32px !important; height:32px !important; font-size:13px !important; }
  .woocommerce-pagination ul.page-numbers{ gap:4px !important; }
  .woocommerce-pagination .page-numbers.dots{ min-width:14px !important; width:14px !important; }
}

/* ===== PDP gallery — mobile horizontal strip + dots (custom) =====
   On mobile, the 1-2-1-2 vertical mosaic gets very tall when a product has many
   images, pushing the price and add-to-cart far down the page. Below 768px the
   mosaic becomes a single full-width horizontal swipe strip (one image per view,
   scroll-snap), with hc-sc-dots-style indicators below it for position + tap nav.
   Desktop (>768px) keeps the original 1-2-1-2 mosaic untouched. */
@media (max-width:768px){
  .hc-gallery-thumbs{ display:none !important; }
  .hc-gallery-wrap{ display:block !important; }
  .hc-gallery-mosaic{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    gap:0 !important;
    scroll-snap-type:x mandatory !important;
    -webkit-overflow-scrolling:touch !important;
    scrollbar-width:none !important;
    width:100% !important;
    max-height:none !important;
    margin:0 !important;
  }
  .hc-gallery-mosaic::-webkit-scrollbar{ display:none !important; }
  .hc-gallery-mosaic .hc-mz-item{
    flex:0 0 100% !important;
    width:100% !important;
    max-width:100% !important;
    scroll-snap-align:center !important;
    aspect-ratio:1/1 !important;
    margin:0 !important;
  }
  .hc-gallery-mosaic .hc-mz-item img{
    width:100% !important; height:100% !important; object-fit:cover !important; border-radius:14px !important;
  }
  /* Page gallery dots (matches homepage hc-sc-dots) */
  .hc-gallery-dots{
    display:flex !important; justify-content:center !important; align-items:center !important;
    gap:9px !important; margin-top:14px !important; flex-wrap:wrap !important;
  }
  .hc-gallery-dot{
    width:9px !important; height:9px !important; border-radius:50% !important;
    background:#dcdcdc !important; border:none !important; padding:0 !important; cursor:pointer !important;
    transition:width .25s, background .25s, border-radius .25s !important;
  }
  .hc-gallery-dot.is-active{ background:#f18833 !important; width:26px !important; border-radius:5px !important; }
}
/* Page gallery dots only on mobile */
@media (min-width:769px){ .hc-gallery-dots{ display:none !important; } }

/* ===== GLightbox dots (custom) =====
   GLightbox already has touch swipe (touchNavigation) on mobile, but no visible
   position indicator and no arrow buttons there. These dots mirror the homepage
   hc-sc-dots style over the dark lightbox, driven entirely by GLightbox's own API
   (goToSlide / on('slide_changed')) so the core and swipe behavior stay intact.
   Shown only on mobile; desktop keeps GLightbox's prev/next arrows. */
.hc-glb-dots{
  position:fixed; left:0; right:0; bottom:22px; z-index:99999;
  display:flex; justify-content:center; align-items:center; gap:9px;
  flex-wrap:wrap; padding:0 16px; pointer-events:auto;
}
.hc-glb-dot{
  width:9px; height:9px; border-radius:50%;
  background:rgba(255,255,255,.45); border:none; padding:0; cursor:pointer;
  transition:width .25s, background .25s, border-radius .25s;
}
.hc-glb-dot.is-active{ background:#f18833; width:26px; border-radius:5px; }
@media (min-width:769px){ .hc-glb-dots{ display:none; } }

/* ===== Mobile add-to-cart button — price + icon, no label (custom) =====
   On mobile the variation add-to-cart button packs price + separator + cart icon
   + "ADD TO CART" text, which overflows the form's right edge (the label gets
   clipped to "...TO CA"). Below 768px we hide only the bare "ADD TO CART" text
   node (pushed off via text-indent, while the inner spans are pulled back), so the
   button shows price + separator + cart icon, fits beside the quantity selector,
   and aligns to the form's right edge. Desktop keeps the full button untouched. */
@media (max-width:768px){
  .single_add_to_cart_button{
    white-space:nowrap !important;
    padding:0 18px !important;
    gap:10px !important;
    overflow:hidden !important;
    text-indent:-9999px !important;
  }
  .single_add_to_cart_button > span{ text-indent:0 !important; }
}

/* ===== PDP title rating + review area v2 (custom) ===== */
.summary .hc-title-rating{
  margin:6px 0 14px; display:flex; align-items:center; gap:10px; flex-wrap:wrap;
}
.summary .hc-title-rating .star-rating{ font-size:18px; color:#f18833; margin:0; }
.summary .hc-title-rating .woocommerce-review-link{
  text-decoration:none; color:#888; font-size:14px; font-weight:400; transition:color .2s;
}
.summary .hc-title-rating .woocommerce-review-link:hover{ color:#f18833; }
.summary .hc-title-rating--empty .hc-no-reviews-link{
  text-decoration:none; color:#999; font-size:13.5px; display:inline-flex; align-items:center; gap:8px; transition:color .2s;
}
.summary .hc-title-rating--empty .hc-no-reviews-link:hover{ color:#f18833; }
.summary .hc-title-rating--empty .hc-empty-stars{ color:#d8d8d8; font-size:18px; letter-spacing:1px; }

#reviews #comments{ float:none; width:100%; margin:0; }
#reviews #review_form_wrapper{ float:none; width:100%; margin:0; }
#reviews .woocommerce-Reviews{ display:block; }
#reviews::after{ content:""; display:table; clear:both; }

#reviews .woocommerce-Reviews-title{ font-size:20px; font-weight:700; color:#1f1f1f; margin:0 0 20px; }

#reviews ol.commentlist{ margin:0 0 32px; padding:0; list-style:none; display:flex; flex-direction:column; gap:14px; }
#reviews ol.commentlist li.review{ margin:0; width:100%; }
#reviews .comment_container{
  display:flex; gap:14px; align-items:flex-start; width:100%; box-sizing:border-box;
  background:#fff; border:1px solid #ececec; border-radius:16px;
  padding:20px 24px 20px 22px; box-shadow:0 6px 20px rgba(0,0,0,.09);
}
#reviews .comment_container img.avatar{
  width:46px; height:46px; border-radius:50%; flex:0 0 auto; margin:0 0 0 6px; border:2px solid #f18833;
}
#reviews .comment-text{ flex:1; border:none; padding:0; background:transparent; }
#reviews .star-rating{ color:#f18833; font-size:15px; margin:0 0 6px; }
#reviews .comment-text p.meta{ margin:0 0 8px; font-size:13.5px; color:#888; display:flex; flex-wrap:wrap; align-items:center; gap:6px; }
#reviews .woocommerce-review__author{ color:#1f1f1f; font-weight:700; font-size:14.5px; }
#reviews .woocommerce-review__verified{
  background:#e8f6ec; color:#1d9d52; font-size:11.5px; font-weight:700; padding:2px 9px; border-radius:20px; letter-spacing:.2px;
}
#reviews .woocommerce-review__dash{ display:none; }
#reviews .woocommerce-review__published-date{ color:#aaa; font-size:12.5px; }
#reviews .comment-text .description{ color:#444; font-size:14.5px; line-height:1.55; }
#reviews .comment-text .description p{ margin:0; }

#reviews #respond.comment-respond{
  background:#faf9f8; border:1px solid #ececec; border-radius:18px; padding:24px 26px; margin-top:8px;
}
#reviews #reply-title.comment-reply-title{ font-size:18px; font-weight:700; color:#1f1f1f; display:block; margin:0 0 18px; }
#reviews .comment-form-rating label,
#reviews .comment-form-comment label{ display:block; font-weight:600; color:#333; font-size:14px; margin:0 0 8px; }
#reviews .comment-form-rating{ margin:0 0 18px; }
#reviews p.stars{ margin:0; }
#reviews p.stars a{ margin-right:2px; }
#reviews p.stars a::before{ color:#f18833; font-size:22px; }
#reviews #comment{
  width:100%; border:1.5px solid #e2e2e2; border-radius:12px; padding:14px 16px;
  font-size:14.5px; resize:vertical; min-height:120px; transition:border-color .2s; box-sizing:border-box;
}
#reviews #comment:focus{ border-color:#f18833; outline:none; }
#reviews .comment-form-comment{ margin:0 0 20px; }
#reviews .form-submit input#submit,
#reviews .form-submit input.submit{
  background:#f18833; color:#fff; border:none; border-radius:12px; padding:13px 32px;
  font-size:15px; font-weight:700; cursor:pointer; transition:background .2s, transform .1s;
}
#reviews .form-submit input#submit:hover,
#reviews .form-submit input.submit:hover{ background:#e07a28; transform:translateY(-1px); }

#reviews .woocommerce-noreviews{
  background:#faf9f8; border:1px dashed #ddd; border-radius:14px; padding:20px; text-align:center; color:#888; font-size:14.5px; margin:0 0 24px;
}
#reviews .woocommerce-verification-required{
  background:#fff6ee; border:1px solid #f7d9bd; border-left:4px solid #f18833; border-radius:10px; padding:13px 16px; color:#9a5a1f; font-size:13.5px; margin:16px 0 0;
}

/* Show the WooCommerce tab panel (review content) when the accordion opens */
.hc-acc-item.is-open .woocommerce-Tabs-panel{ display:block !important; }

/* Review empty/filled state on a full row - override the WooCommerce float with stronger specificity */
.woocommerce #reviews #comments,
.woocommerce #reviews #review_form_wrapper{
  float:none !important; width:100% !important; max-width:100% !important; margin:0 !important;
}
.woocommerce #reviews #review_form_wrapper{ margin-top:24px !important; }

/* Mobile simple product fix: long currency layout + icon-only add to cart */
@media (max-width:520px){
  /* Card (hc-spc = simple pack card; variable products do not have this class) */
  .hc-spc{position:relative;}
  .hc-spc__save{position:absolute;top:-4px;right:-6px;z-index:2;}
  .hc-spc .hc-spc__row1{position:static !important;}
  .hc-spc .hc-spc__row1 .hc-spc__avail{position:absolute !important;right:10px !important;left:auto !important;top:34px !important;transform:none !important;margin:0 !important;z-index:2;}
  .hc-spc:not(:has(.hc-spc__save)) .hc-spc__row1 .hc-spc__avail{top:12px !important;}
  .hc-spc__body{flex:1;min-width:0;}
  .hc-spc__price{display:flex;flex-direction:column;align-items:flex-start;gap:0;}
  .hc-spc__price .reg{order:0;}
  .hc-spc__price .reg .amount{font-size:.82em;}
  .hc-spc__price .now{order:1;position:static;}
  .hc-spc__price .now .amount{font-size:1.05em;}
  /* Add to cart button: simple products ONLY (variable unaffected) */
  .product-type-simple .single_add_to_cart_button{display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;column-gap:10px;height:auto;min-height:48px;padding:4px 12px;}
  .product-type-simple .single_add_to_cart_button,
  .product-type-simple .single_add_to_cart_button .hc-atc-price,
  .product-type-simple .single_add_to_cart_button .hc-atc-price .amount{line-height:1.2 !important;}
  .product-type-simple .single_add_to_cart_button .hc-atc-price{display:flex;align-items:center;min-width:0;}
  .product-type-simple .single_add_to_cart_button .hc-atc-price .now{font-size:.88em;}
  .product-type-simple .single_add_to_cart_button .hc-atc-price .reg{display:none;}
  .product-type-simple .single_add_to_cart_button .hc-atc-sep{display:none;}
  .product-type-simple .single_add_to_cart_button .hc-atc-label{display:none !important;}
}
/* Simple + SALE product card only: SAVE half-overhang + stripe gradient technique (mobile) */
@media (max-width:520px){
  .product-type-simple.sale .hc-spc{overflow:visible !important;background-image:linear-gradient(90deg,#f18833 0 6px,rgba(0,0,0,0) 6px) !important;}
  .product-type-simple.sale .hc-spc::before{display:none !important;}
  .product-type-simple.sale .hc-spc__save{position:absolute !important;top:0 !important;right:0 !important;}
}
/* OOS (NOT AVAILABLE) badge: .hc-spc__na, same right position as avail (mobile simple card) */
@media (max-width:520px){
  .hc-spc .hc-spc__row1 .hc-spc__na{position:absolute !important;right:10px !important;left:auto !important;top:34px !important;transform:none !important;margin:0 !important;z-index:2;}
  .hc-spc:not(:has(.hc-spc__save)) .hc-spc__row1 .hc-spc__na{top:12px !important;}
}

/* Mobile product page: on phones the simple card body was squeezed to 76px (the desktop padding-right:130px
   also applied; Available absolute on the right) -> "Pack of 4" broke onto two lines. On phones it now matches the variable card:
   name / Available / price stacked, 18px right space (mirrored in RTL). SAVE badge stays in place (top corner). */
@media (max-width:520px){
  body.single-product .hc-spc{padding-right:18px !important;}
  html[dir="rtl"] body.single-product .hc-spc{padding-left:18px !important;padding-right:26px !important;}
  body.single-product .hc-spc .hc-spc__row1{flex-direction:column !important;align-items:flex-start !important;flex-wrap:wrap !important;gap:6px !important;min-height:0 !important;}
  body.single-product .hc-spc .hc-spc__row1 .hc-spc__avail,
  body.single-product .hc-spc .hc-spc__row1 .hc-spc__na{position:static !important;transform:none !important;margin:0 !important;}
  /* SAVE badge in the top corner: content starts below the badge (long labels went under it) */
  body.single-product .hc-spc:has(.hc-spc__save){padding-top:40px !important;}
}

/* DESKTOP simple card: AVAILABLE/NOT AVAILABLE centred horizontally, SAVE half-overhang + right-aligned (sale only) */
@media (min-width:521px){
  .hc-spc .hc-spc__row1{position:static !important;}
  .hc-spc .hc-spc__row1 .hc-spc__avail,
  .hc-spc .hc-spc__row1 .hc-spc__na{position:absolute !important;left:0 !important;right:0 !important;margin:0 auto !important;width:fit-content !important;top:16px !important;transform:none !important;z-index:2;}
  .product-type-simple.sale .hc-spc{overflow:visible !important;background-image:linear-gradient(90deg,#f18833 0 6px,rgba(0,0,0,0) 6px) !important;}
  .product-type-simple.sale .hc-spc::before{display:none !important;}
  .product-type-simple.sale .hc-spc__save{position:absolute !important;top:0 !important;right:0 !important;}
}

/* hc-pdp-actions full width: aligned with the blocks above/below, content centred */
.hc-pdp-actions{display:flex !important;width:100% !important;justify-content:center !important;box-sizing:border-box;}
/* hc-pdp-actions DESKTOP: wishlist/ask spread symmetrically (stays centred on mobile) */
@media (min-width:521px){.hc-pdp-actions{gap:56px !important;}}
/* hc-pdp-actions DESKTOP: wishlist/ask spread symmetrically (stays centred on mobile) */
@media (min-width:521px){.hc-pdp-actions{gap:56px !important;}}

/* ECS: empty store-category hero box + full centring */
.hc-ecs-hero{max-width:560px;margin:6px auto 26px;background:linear-gradient(135deg,#fff4ea,#ffe3c7);border-radius:16px;padding:26px 24px;text-align:center;box-shadow:0 6px 22px rgba(241,136,51,.14);}
.hc-ecs-hero__flag{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2.5px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.15);}
.hc-ecs-hero h3{margin:12px 0 6px;font-size:19px;color:#1b1b1b;}
.hc-ecs-hero p{margin:0 0 16px;font-size:14px;color:#555;}
.hc-ecs-hero__btn{display:inline-block;background:#f18833;color:#fff !important;font-weight:700;font-size:15px;padding:13px 30px;border-radius:10px;text-decoration:none;}
.hc-ecs-hero__btn--row{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:10px;}
.hc-ecs-hero__btn--row img{width:22px;height:22px;border-radius:50%;object-fit:cover;}
body.hc-ecs-empty .woocommerce-no-products-found{text-align:center;}
@media (min-width:521px){
  body.hc-ecs-empty .site-main{display:block !important;}
  body.hc-ecs-empty .facetwp-template{width:100% !important;max-width:none !important;margin:0 !important;}
}
/* ECS: flag + store name pill in the single-store hero (product page badge style) */
.hc-ecs-hero__store{display:inline-flex;align-items:center;gap:8px;border:1.5px solid #f18833;border-radius:22px;padding:6px 14px 6px 7px;font-weight:700;font-size:13px;color:#f18833;background:#fff;}
.hc-ecs-hero__store img{width:22px;height:22px;border-radius:50%;object-fit:cover;}
/* ECS: hide the standard empty message when an alternative store exists (the hero speaks alone) */
body.hc-ecs-has-alt .woocommerce-no-products-found{display:none !important;}

/* Sidebar: 3rd level nested category accordion */
.hc-sb__subcat{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:0;padding:10px 14px 10px 22px;font:inherit;font-size:14px;color:#333;cursor:pointer;text-align:left;}
.hc-sb__subcat .hc-sb__chev{transition:transform .2s;}
.hc-sb__subcat.open .hc-sb__chev{transform:rotate(90deg);}
.hc-sb__subcat.is-active{color:#f18833;font-weight:700;}
.hc-sb__subsub{max-height:0;overflow:hidden;transition:max-height .25s ease;padding-left:14px;}
.hc-sb__subsub a{display:block;padding:8px 14px 8px 30px;font-size:13.5px;color:#555;text-decoration:none;}
.hc-sb__subsub a.is-active,.hc-sb__subsub a:hover{color:#f18833;}
/* Nested sidebar polish: All link without background and aligned, subcategories without background, plain links left-aligned */
#hc-sidebar .hc-sb__subsub .hc-sb__all{background:transparent !important;padding:8px 14px 8px 30px !important;}
#hc-sidebar .hc-sb__subsub .hc-sb__all.is-active{color:#f18833 !important;font-weight:700;}
#hc-sidebar .hc-sb__subcat:hover,#hc-sidebar .hc-sb__subcat:focus,#hc-sidebar .hc-sb__subcat.open{background:transparent !important;color:#f18833 !important;}
#hc-sidebar .hc-sb__sub > a:not(.hc-sb__all){padding-left:22px !important;}
/* Category archive breadcrumb left-aligned (in the flex-column title area; title stays centred) */
.product-archive-title .kadence-breadcrumbs{align-self:flex-start !important;text-align:left !important;}
/* ECS: empty page hero height equal to the filled (product-archive) page; fixes the Kadence post-archive 200px fallback */
body.hc-ecs-empty .entry-hero .entry-header{min-height:100px !important;}
/* ECS: chained breadcrumb on the empty page (same as the filled page, top left) */
body.hc-ecs-empty .hc-ecs-bc{margin:4px 0 16px;text-align:left;}
body.hc-ecs-empty .hc-ecs-bc .kadence-breadcrumbs{font-size:13px;}
/* post-archive (empty page) hero breadcrumb also top left; post-archive counterpart of the v156 rule */
.post-archive-title .kadence-breadcrumbs{align-self:flex-start !important;text-align:left !important;}
/* Hero breadcrumb ABSOLUTE top left (out of flow); the category title stays vertically centred */
.product-archive-title, .post-archive-title{position:relative;}
.product-archive-title .kadence-breadcrumbs, .post-archive-title .kadence-breadcrumbs{position:absolute !important;top:8px !important;left:0 !important;margin:0 !important;}

/* CONDITIONAL STICKY mega menu: when the Kadence sticky header is ON, header + mega stick together; when off, both are normal (body class from PHP) */
body.hc-header-sticky-on .hc-mega{position:sticky !important;top:80px !important;z-index:59 !important;} /* z:59: stays below site-header (60) so header dropdowns (currency etc.) open above the mega menu */
body.hc-header-sticky-on .hc-mega.hc-mega--stuck{background:#fff !important;box-shadow:0 2px 12px rgba(0,0,0,.07) !important;}
body.hc-header-sticky-on.admin-bar .hc-mega{top:112px !important;}
/* Mobile bottom nav: bar border same as the circle (3px orange), one unified look */
.hc-mnav{border:3px solid #f18833 !important;border-bottom:none !important;}
/* New In: showcase-style dots instead of arrows + native scroll + mouse drag; exactly 1 card on mobile */
.hc-newin__nav{display:none !important;}
.hc-newin__track{transform:none !important;transition:none !important;}
.hc-newin__viewport{overflow-x:auto !important;scroll-behavior:smooth;cursor:grab;scrollbar-width:none;scroll-snap-type:x mandatory;}
.hc-newin__viewport::-webkit-scrollbar{display:none;}
.hc-newin__viewport.is-dragging{cursor:grabbing;scroll-behavior:auto;scroll-snap-type:none;}
.hc-newin__track > *{scroll-snap-align:start;}
@media(max-width:520px){ .hc-newin__track > *{flex:0 0 100% !important;width:100% !important;max-width:none !important;} }
.hc-newin .hc-sc-dots{display:flex;justify-content:center;gap:8px;margin-top:16px;flex-wrap:wrap;}
/* New In badge: matches the product page hc-pdp-badge (green fill + 10px radius) */
.hc-newin__badge{border:1px solid rgb(197,221,143) !important;border-radius:10px !important;background:rgb(231,245,196) !important;}
/* New In tag FIX2: JS moves the tag onto the card to escape the clipping imgwrap; card is relative */
.hc-newin__track > *{position:relative !important;}
/* New In tag: same radius as the badge + top-left half-overhang (for the moved tag) */
.hc-newin__tag{border-radius:10px !important;position:absolute !important;top:0 !important;left:14px !important;transform:translateY(-50%) !important;margin:0 !important;z-index:3;}
.hc-newin__track > *{overflow:visible !important;}
/* Compensate vertical overflow of the viewport scroll container */
.hc-newin__viewport{padding-top:18px !important;margin-top:-18px !important;}
/* New In: brand eyebrow (same as the category card) + price always green (old price grey on sale) */
.hc-newin__brand{font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#b8860b;margin:6px 0 2px;}
.hc-newin__price, .hc-newin__price .amount, .hc-newin__price bdi, .hc-newin__price ins .amount{color:var(--hc-price-green,#40bd7a) !important;font-weight:800;}
.hc-newin__price del, .hc-newin__price del .amount, .hc-newin__price del bdi{color:#9b9b9b !important;font-weight:400;text-decoration:line-through;}
/* Product page header search: FiboSearch only on product detail, centred in the header (position/width from JS) */
#hc-pdp-hsearch{position:absolute;top:50%;transform:translate(-50%,-50%);z-index:5;display:none;}
#hc-pdp-hsearch .hc-storesearch{margin:0;}
#hc-pdp-hsearch .hc-storesearch:before{content:none !important;}
#hc-pdp-hsearch .dgwt-wcas-search-submit{left:20px !important;right:auto !important;top:50% !important;transform:translateY(-50%) !important;}
#hc-pdp-hsearch .dgwt-wcas-search-input{padding-left:56px !important;border-radius:14px !important;background:#fff !important;border:1.5px solid #e2e2e2 !important;}
@media(max-width:1024px){.single-product #mobile-header .site-container{margin-bottom:0 !important;}#hc-pdp-hsearch{position:relative !important;z-index:1;transform:none !important;display:block !important;margin:0 !important;padding:8px 14px 12px;background:#fff;border-radius:28px;}#hc-pdp-hsearch .dgwt-wcas-search-input{border-radius:14px !important;}#hc-pdp-hsearch .hc-storesearch{max-width:none;}.single-product #primary.content-area{margin-top:0 !important;}}

/* Neutralise the CheckoutWC side-cart body lock: it does not stop scrolling here anyway (the scroller is html); its only effect was breaking the sticky mega menu reference (admin-bar shift + scroll jump). No behaviour lost. */
body.cfw-side-cart-open{overflow:visible !important;}

/* ============================================================================
   CART — /cart/ page (WooCommerce Cart BLOCK / Gutenberg)
   ----------------------------------------------------------------------------
   Shell style mirrors the .hc-shipping card on the shipping-policy page:
   one large white block + 14px radius + 0 6px 30px shadow + 40/48 padding.
   NOTE: /cart/ is block-based (.wc-block-* classes), not the classic Woo shortcode.
   Kept here instead of Additional CSS so Kadence theme updates do not affect it.
   Rules are scoped to the cart page only via body.woocommerce-cart.
   ========================================================================== */

/* 1) One large white block (content width = 1488px, same as shipping-policy) */
body.woocommerce-cart .wp-block-woocommerce-cart{
	background:#fff !important;
	border-radius:14px;
	box-shadow:0 6px 30px rgba(0,0,0,.10);
	padding:40px 48px !important;
	max-width:100% !important;
	margin:16px 0 24px !important;
}

/* 2) Inner columns are NOT separate cards; they sit transparent inside the main block */
body.woocommerce-cart .wc-block-cart-items{background:transparent !important;box-shadow:none !important;padding:0 !important;}
body.woocommerce-cart .wc-block-cart__sidebar.wc-block-components-sidebar{background:transparent !important;box-shadow:none !important;padding:0 0 0 8px !important;}
body.woocommerce-cart .wc-block-cart-items__row{padding:18px 2px !important;}

/* 3) Hero <-> content gap: same as shipping-policy (16 / 24); the default was 80px */
body.woocommerce-cart .content-area{margin-top:16px !important;margin-bottom:24px !important;}
body.woocommerce-cart .entry-content-wrap{padding-top:0 !important;padding-bottom:0 !important;}

/* 4) Thin grey line under the container = Kadence .entry.content-bg shadow (0 15px 15px -10px) */
body.woocommerce-cart .entry.content-bg{box-shadow:none !important;background:transparent !important;}

/* 5) Mobile (same ratio as the shipping-policy @782 rule) */
@media(max-width:782px){
	body.woocommerce-cart .wp-block-woocommerce-cart{padding:24px 20px !important;}
	body.woocommerce-cart .wc-block-cart__sidebar.wc-block-components-sidebar{padding:0 !important;}
}
/* ===== CART end ===== */

/* ---- CART: error notices as SEPARATE BOXES instead of one banner ----------
   The order allowance plugin sends each limit error separately (Guard 1 ->
   classic notice, Guard 2 -> Store API error). The CheckoutWC side cart already
   shows them in separate boxes; WooCommerce BLOCKS lists all same-type errors
   as <li> items in ONE banner (its own behaviour, unrelated to the plugin).
   Here the outer banner background/border/icon and the "Please fix the following
   errors" heading are removed and each <li> becomes its own box.
   PLUGIN AND SIDE CART UNTOUCHED: rules are scoped to body.woocommerce-cart. */
body.woocommerce-cart .wc-block-components-notice-banner.is-error{
	background:transparent !important;
	border:0 !important;
	padding:0 !important;
	border-radius:0 !important;
	display:block !important;
}
body.woocommerce-cart .wc-block-components-notice-banner.is-error > svg{display:none !important;}
body.woocommerce-cart .wc-block-components-notice-banner.is-error > button{display:none !important;}
body.woocommerce-cart .wc-block-components-notice-banner__dismiss{display:none !important;}
body.woocommerce-cart .wc-block-components-notice-banner__summary{display:none !important;}
body.woocommerce-cart .wc-block-components-notice-banner__content ul{list-style:none !important;margin:0 !important;padding:0 !important;}
body.woocommerce-cart .wc-block-components-notice-banner__content li,
body.woocommerce-cart .wc-block-components-notice-banner.is-error > .wc-block-components-notice-banner__content > div{
	background:#fff0f0;
	border:1px solid #cc1818;
	border-radius:10px;
	padding:14px 16px;
	margin:0 0 12px;
	list-style:none;
}
body.woocommerce-cart .wc-block-components-notice-banner__content li:last-child,
body.woocommerce-cart .wc-block-components-notice-banner.is-error > .wc-block-components-notice-banner__content > div{margin-bottom:0;}
/* Each box gets its own error icon (the single outer banner icon is hidden);
   the icon is the original WooCommerce Blocks error-circle path, non-brand red #cc1818 */
body.woocommerce-cart .wc-block-components-notice-banner__content li,
body.woocommerce-cart .wc-block-components-notice-banner.is-error > .wc-block-components-notice-banner__content > div{position:relative;padding-left:46px;}
body.woocommerce-cart .wc-block-components-notice-banner__content li::before,
body.woocommerce-cart .wc-block-components-notice-banner.is-error > .wc-block-components-notice-banner__content > div::before{
	content:"";
	position:absolute;
	left:16px;
	top:15px;
	width:20px;
	height:20px;
	background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23cc1818'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M5.5 12a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0ZM12 4a8 8 0 1 0 0 16 8 8 0 0 0 0-16Zm.75 4v1.5h-1.5V8h1.5Zm0 8v-5h-1.5v5h1.5Z'/%3E%3C/svg%3E");
}
/* 2026-10-07: with a SINGLE error Blocks prints a <div> instead of <ul><li>; the same box + icon applies to > div too. */
/* ---- CART error notices end ---- */

/* ---- MY ACCOUNT: table action buttons (Back In Stock + Orders) ------
   The Resend verification / Cancel / Deactivate buttons on /my-account/backinstock/
   (and View in Orders) were solid orange, 3px radius, 18px font, too heavy
   in a table. Approved design: white background + orange border/text (#f18833),
   10px radius, 14px font; fills on hover. Scope: Woo tables in the UR account
   content (.user-registration-MyAccount-content .woocommerce-orders-table);
   .button elements elsewhere on the site are untouched. */
.user-registration-MyAccount-content .woocommerce-orders-table a.woocommerce-Button.button,
.user-registration-MyAccount-content .woocommerce-orders-table a.button{
	background:#fff !important;
	color:#f18833 !important;
	border:1.5px solid #f18833 !important;
	border-radius:10px !important;
	padding:6px 16px !important;
	font-size:14px !important;
	line-height:1.4 !important;
	font-weight:600 !important;
	transition:background .15s, color .15s;
}
.user-registration-MyAccount-content .woocommerce-orders-table a.woocommerce-Button.button:hover,
.user-registration-MyAccount-content .woocommerce-orders-table a.button:hover{
	background:#f18833 !important;
	color:#fff !important;
}
/* ---- MY ACCOUNT button style end ---- */

/* ---- TRACKING: /ts-shipment-tracking/ white card shell ----------------
   Goal: same look as about-us. Measured recipe (.hc-about):
   1488px white block, 14px radius, 0 6px 30px rgba(0,0,0,.10) shadow, 40/48
   padding, 42px between h1 and card. The gap here was 138px, coming from
   .content-area margin-top:80px (not padding) + .entry-content-wrap 32px top
   padding. Both are reset and replaced by a 16px margin under the hero
   (hero 26px bottom space + 16 = 42). The card is applied to .track-order-section
   (TrackShip form); the Kadence grey line shadow and f1f1f1 background are
   removed. Scope: body.hc-pg-tracking only. */
body.hc-pg-tracking .content-area{margin-top:16px !important;padding-top:0 !important;}
body.hc-pg-tracking .entry-content-wrap{padding-top:0 !important;padding-bottom:32px;}
body.hc-pg-tracking .entry-content{margin-top:0 !important;}
body.hc-pg-tracking .track-order-section{
	background:#fff !important;
	border-radius:14px !important;
	box-shadow:0 6px 30px rgba(0,0,0,.10) !important;
	padding:40px 48px !important;
	max-width:1488px !important;
	margin:0 auto !important;
}
body.hc-pg-tracking article.entry.content-bg{box-shadow:none !important;background:transparent !important;}
@media (max-width:782px){
	body.hc-pg-tracking .track-order-section{padding:24px 20px !important;border-radius:12px !important;}
}
/* Also: ?tracking=NUMBER result view. TrackShip prints two different views here:
   the entry form .track-order-section (carded above) and the RESULT view
   .enhanced_tracking_detail, which the card rule did not cover (different DOM,
   not a cache issue). The same card recipe is applied to it. NOTE: the same
   component also appears on the order payment/view page (hcph-shell > .hl-track);
   this rule must NOT reach it, so it is double-locked by hc-pg-tracking + direct
   child of .entry-content (neither holds on the payment page). */
body.hc-pg-tracking .entry-content > .enhanced_tracking_detail{
	background:#fff !important;
	border-radius:14px !important;
	box-shadow:0 6px 30px rgba(0,0,0,.10) !important;
	padding:40px 48px !important;
	max-width:1488px !important;
	margin:0 auto !important;
	box-sizing:border-box;
}
@media (max-width:782px){
	body.hc-pg-tracking .entry-content > .enhanced_tracking_detail{padding:24px 20px !important;border-radius:12px !important;}
}
/* ---- TRACKING end ---- */

/* ---- BIS: icon spacing (END OF FILE, must come after the shell rule) ----
   The "strip the notice shell" rule sets padding:0 !important with the same
   specificity, so only a LATER rule can restore the icon left space.
   The icon is absolutely positioned via ::before (left:0, centred on the first line)
   and the text starts 39px from the left, so they do not overlap. */
#wc_bis_already_registered.hc-bis-card .woocommerce-info{padding:0 0 0 39px !important}

/* ---- HOME: storesearch (FiboSearch) corner radius ------------------
   The FiboSearch input in .hc-storesearch--fibo on the homepage had a 30px (pill)
   radius while the notice strip right above it (.hc-hero__notice) is 12px.
   Both now use 12px. Scope .hc-storesearch--fibo; the header product search
   (same FiboSearch, different wrapper) is unaffected. */
.hc-storesearch--fibo .dgwt-wcas-search-input,
.hc-storesearch--fibo .dgwt-wcas-sf-wrapp{border-radius:12px !important;}
/* ---- HOME storesearch radius end ---- */

/* ---- PDP: pack-grid long price overflow (IDR/VND/JPY/KRW) ---------------
   ROOT CAUSE: .hc-pack-grid columns were "1fr"; in CSS Grid 1fr = minmax(auto,1fr)
   and the "auto" min width = the narrowest UNBREAKABLE content. EUR prices are short
   so the columns stayed at 50%; long IDR/VND prices grew the column and pushed the
   grid past the summary (measured: 386+415 = 801px, grid 720px).
   1) minmax(0,1fr) + min-width:0 -> equal columns independent of content, no overflow
   2) .hc-pack-price flex-wrap -> old/new price stack ONLY when they do not fit
      (no visual change for short prices like EUR/GBP/USD)
   Note: IDR/VND/JPY/KRW use 0 decimals; the wrap rule is a safety net
   for large amounts. */
.hc-pack-grid{grid-template-columns:repeat(2, minmax(0,1fr)) !important;}
.hc-pack-card{min-width:0 !important;}
/* gap 8->6px: 9-digit prices like IDR were just over the limit (232/231px); 2px keeps them on one line */
.hc-pack-price{flex-wrap:wrap !important;gap:2px 6px !important;}
.hc-pack-price .reg,
.hc-pack-price .now{white-space:nowrap;}
/* MOBILE: the minmax(0,1fr) !important rule above overrode the theme rule
   (max-width:480px){ .hc-pack-grid{grid-template-columns:1fr} }
   (!important beats the media query) -> phones showed two squeezed cards.
   Back to one column with the same weight; threshold 480 -> 600 (large phones / small
   tablets also stack the cards, prices on one line). */
@media (max-width:600px){
	.hc-pack-grid{grid-template-columns:1fr !important;}
}
/* TABLET / NARROW COLUMN (e.g. 1032px viewport, 436px summary column): the viewport
   is wide but the summary column is narrow, so two cards squeezed to 211px and the IDR
   price overflowed. The decision uses COLUMN WIDTH, not the viewport:
   container query, one column when the summary is below 620px (desktop 720 keeps
   two columns; covers every tablet/window size automatically). */
.summary.entry-summary{container-type:inline-size;}
@container (max-width:620px){
	.hc-pack-grid{grid-template-columns:1fr !important;}
}
/* ---- PDP pack-grid end ---- */

/* ---- ARCHIVE: List View (Kadence grid/list toggle) ------------------------
   In list mode Kadence adds .products-list-view to ul.products and drops to one
   column, but our vertical .hc-card showed as huge 417px cards (628px per product).
   Here, ONLY in list mode, the card becomes a horizontal row: 64px image left;
   brand / product name / badges (Ships from + Available) stacked in the middle;
   price + Add to cart on the right. Card gap: Kadence row-gap 40 + li margin 20 = 60px -> single 30px.
   Grid view UNAFFECTED (scope .products-list-view). On mobile (<=782) it returns
   to image on top, details below. */
ul.products.products-list-view{row-gap:30px !important;gap:30px !important;}
.products-list-view li.product.hc-card{display:block !important;width:100% !important;max-width:none !important;margin-bottom:0 !important;}
.products-list-view li.product.hc-card .hc-card__inner{display:flex !important;flex-direction:row !important;align-items:center !important;gap:16px !important;width:100% !important;max-width:none !important;height:auto !important;padding:8px 14px !important;}
.products-list-view .hc-card__image{flex:0 0 64px !important;width:64px !important;height:64px !important;margin:0 !important;padding:0 !important;border-radius:8px;overflow:hidden;background:#fff;}
.products-list-view .hc-card__image img{width:100% !important;height:100% !important;object-fit:contain !important;aspect-ratio:auto !important;}
.products-list-view .hc-card__body{flex:1 1 auto !important;min-width:0;display:grid !important;grid-template-columns:minmax(0,1fr) auto auto !important;grid-template-areas:'brand price actions' 'title price actions' 'meta price actions' !important;column-gap:12px !important;row-gap:2px !important;align-items:center !important;padding:0 !important;margin:0 !important;text-align:left !important;}
.products-list-view .hc-card__brand{grid-area:brand !important;font-size:11px !important;margin:0 !important;}
.products-list-view .hc-card__title{grid-area:title !important;margin:0 !important;font-size:14.5px !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.products-list-view .hc-card__meta{grid-area:meta !important;justify-content:flex-start !important;margin:0 !important;transform:scale(.92);transform-origin:left center;}
.products-list-view .hc-card__price{grid-area:price !important;text-align:right !important;justify-self:end !important;white-space:nowrap;margin:0 0 0 20px !important;}
.products-list-view .hc-card__body > *:not(.hc-card__meta):not(.hc-card__brand):not(.hc-card__title):not(.hc-card__price){grid-area:actions !important;justify-self:end !important;margin:0 !important;}
@media (max-width:782px){
	.products-list-view li.product.hc-card .hc-card__inner{flex-direction:column !important;align-items:stretch !important;gap:10px !important;}
	.products-list-view .hc-card__image{width:100% !important;height:140px !important;flex-basis:auto !important;}
	.products-list-view .hc-card__body{grid-template-columns:minmax(0,1fr) auto !important;grid-template-areas:'brand price' 'title price' 'meta actions' !important;}
	.products-list-view .hc-card__title{white-space:normal !important;}
	.products-list-view .hc-card__price{margin:0 !important;}
}
/* ---- ARCHIVE List View end ---- */

/* ---- ARCHIVE: List View PHONE ------------------------
   1) Kadence grid/list buttons were hidden below 576px (woocommerce.min.css: .kadence-woo-toggle{display:none}).
      Now visible on phones too, on the same row as the sort menu, on the right.
   2) <=782px list mode: the old rule made the card vertical (140px image on top), like a one-column grid.
      Now a horizontal row: 96px image left; brand / name (max 2 lines) / Ships from + Available / price / button stacked on the right.
      About 200px per product (about 600px in the grid card). High specificity (ul.products.products-list-view li.product.hc-card)
      because the mobile card rules in hc-woo.css are !important. Grid view UNAFFECTED. */
@media (max-width:575px){
	.kadence-shop-top-row .kadence-woo-toggle{display:block !important;margin-inline-start:auto;}
}
/* Mobile category page: a long sort label pushed the Grid/List buttons
   to the next line -> the sort menu takes the remaining width and truncates with ... if needed; the buttons stay on the same row. */
@media (max-width:575px){
	.kadence-shop-top-row .kadence-woo-ordering{flex:1 1 120px !important;min-width:0 !important;}
	.kadence-shop-top-row .woocommerce-ordering, .kadence-shop-top-row .woocommerce-ordering select{width:100% !important;max-width:100% !important;min-width:0 !important;}
	.kadence-shop-top-row .woocommerce-ordering select{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;}
	.kadence-shop-top-row .kadence-woo-toggle{flex:0 0 auto !important;}
	.kadence-shop-top-row .kadence-woo-results-count{flex:1 1 100% !important;}
}
@media (max-width:782px){
	ul.products.products-list-view{row-gap:12px !important;gap:12px !important;}
	ul.products.products-list-view li.product.hc-card .hc-card__inner{flex-direction:row !important;align-items:flex-start !important;gap:12px !important;padding:12px !important;}
	ul.products.products-list-view li.product.hc-card .hc-card__image{flex:0 0 96px !important;width:96px !important;height:96px !important;padding:4px !important;border:0 !important;}
	ul.products.products-list-view li.product.hc-card .hc-card__body{grid-template-columns:minmax(0,1fr) !important;grid-template-areas:'brand' 'title' 'meta' 'price' 'actions' !important;row-gap:5px !important;align-items:start !important;}
	ul.products.products-list-view li.product.hc-card .hc-card__title{white-space:normal !important;display:-webkit-box !important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:14px !important;line-height:1.3 !important;min-height:0 !important;height:auto !important;}
	ul.products.products-list-view li.product.hc-card .hc-card__meta{transform:none !important;flex-wrap:wrap;gap:4px 8px !important;align-items:center;}
	ul.products.products-list-view li.product.hc-card .hc-card__meta .hc-origin{padding:3px 7px !important;font-size:10.5px !important;}
	ul.products.products-list-view li.product.hc-card .hc-card__meta .hc-flag{width:16px !important;height:16px !important;}
	ul.products.products-list-view li.product.hc-card .hc-card__meta .hc-avail{font-size:11px !important;}
	ul.products.products-list-view li.product.hc-card .hc-card__price{margin:2px 0 0 !important;text-align:left !important;justify-self:start !important;white-space:normal !important;font-size:14.5px !important;}
	ul.products.products-list-view li.product.hc-card .hc-card__body > *:not(.hc-card__meta):not(.hc-card__brand):not(.hc-card__title):not(.hc-card__price){justify-self:stretch !important;}
	ul.products.products-list-view li.product.hc-card .hc-card__action .hc-btn{padding:6px 12px !important;font-size:13px !important;min-height:0 !important;width:100% !important;}
	html[dir="rtl"] ul.products.products-list-view li.product.hc-card .hc-card__body,
	html[dir="rtl"] ul.products.products-list-view li.product.hc-card .hc-card__price{text-align:right !important;}
}
/* ---- ARCHIVE List View PHONE end ---- */

/* ---- ARCHIVE title / breadcrumb overlap PHONE ----
   The breadcrumb was position:absolute (top 8px) in the hero (the .product-archive-title .kadence-breadcrumbs rule above);
   the title is vertically centred in a 100px box. On phones a 2-line title (96px) overlapped the breadcrumb.
   <=1024px (phone + tablet; long titles touched it at 800px too): breadcrumb in flow (above the title, aligned to start), title below; box height follows content.
   Desktop UNCHANGED. */
@media (max-width:1024px){
	.product-archive-title .kadence-breadcrumbs,
	.post-archive-title .kadence-breadcrumbs{position:static !important;align-self:stretch;text-align:start;margin:0 0 6px !important;}
	.product-archive-title.entry-header,
	.post-archive-title.entry-header{justify-content:flex-start !important;padding:8px 0 14px !important;min-height:0 !important;}
	.product-archive-title.entry-header .page-title,
	.post-archive-title.entry-header .page-title{line-height:1.2 !important;}
}
/* ---- ARCHIVE title / breadcrumb overlap end ---- */

/* ---- ARCHIVE store selector + status line PHONE ----
   Problem (393-402px phones): store buttons were ~106px so only 2 fit per row -> 4 rows
   (3 rows at 440px). In the "Showing all products from" box the text + flag + "Global Store" did not fit side by side;
   the text broke onto two lines with "Global Store" standing apart.
   <=480px (homepage hero + category page, both .hc-storebar-wrap): 3 rows on every phone, LEFT-aligned, same order:
     1: "Show products from >" + Global right next to it   2: EU ID JP   3: KR MY RS
   v2: flex, the stores take equal 1/3 width; an ::after after Global (flex-basis 100%, height 0) breaks the row so EU does not jump to row 1 on wide screens.
   The selected mark (orange tick) sits in the button corner so it takes no width. The status line is one flowing centred text; it
   wraps naturally if needed ("Global Store" is not split). Desktop / tablet UNCHANGED. */
@media (max-width:480px){
	.hc-storebar-wrap .hc-storeselect{display:flex !important;flex-wrap:wrap !important;justify-content:flex-start !important;align-items:center !important;gap:8px 6px !important;padding:12px !important;}
	.hc-storebar-wrap .hc-storeselect::after{content:"";order:2;flex:0 0 100%;height:0;margin-top:-8px;}
	.hc-storebar-wrap .hc-storeselect .hc-storeselect__label{order:0;flex:0 0 auto;margin:0 6px 0 0 !important;font-size:13px !important;white-space:nowrap;}
	.hc-storebar-wrap .hc-storeselect > a{order:3;flex:0 0 calc((100% - 12px) / 3) !important;}
	.hc-storebar-wrap .hc-storeselect > a:first-of-type{order:1;}
	.hc-storebar-wrap .hc-storeselect .hc-storebar__item{position:relative;justify-content:center;min-width:0;box-sizing:border-box;padding:6px !important;gap:5px !important;font-size:12px !important;margin:0 !important;white-space:nowrap;}
	.hc-storebar-wrap .hc-storeselect .hc-storebar__item img,
	.hc-storebar-wrap .hc-storeselect .hc-globe{width:18px !important;height:18px !important;flex:0 0 18px;}
	.hc-storebar-wrap .hc-storeselect .hc-check{position:absolute !important;top:-6px;right:-6px;width:16px !important;height:16px !important;margin:0 !important;}
	html[dir="rtl"] .hc-storebar-wrap .hc-storeselect .hc-check{right:auto;left:-6px;}
	html[dir="rtl"] .hc-storebar-wrap .hc-storeselect .hc-storeselect__label{margin:0 0 0 6px !important;}
	.hc-storebar-wrap .hc-storebar__status{display:block !important;text-align:center !important;padding:11px 12px !important;font-size:13.5px !important;line-height:1.5;}
	.hc-storebar-wrap .hc-storebar__status img{display:inline-block !important;vertical-align:-5px;margin:0 3px 0 6px;width:20px !important;height:20px !important;}
	.hc-storebar-wrap .hc-storebar__status b{white-space:nowrap;font-size:13.5px !important;}
}
/* ---- ARCHIVE store selector PHONE end ---- */

/* ---- CART (/cart/) product row overflow PHONE ----
   WooCommerce Blocks mobile layout (.is-mobile / .is-small): columns 80px 132px FIXED, the product cell spans 2/4, and the line total
   cell (td.wc-block-cart-item__total) fell into an implicit 4th column on the same row -> the table grew past the card (298px to 353px);
   the price / discount and the bottom line overflowed the card.
   Now: 72px image | remaining width (minmax(0,1fr)) product; line total BELOW the product, right-aligned, next to the discount badge. */
body.woocommerce-cart .wc-block-cart.is-mobile table.wc-block-cart-items .wc-block-cart-items__row,
body.woocommerce-cart .wc-block-cart.is-small table.wc-block-cart-items .wc-block-cart-items__row{grid-template-columns:72px minmax(0,1fr) !important;column-gap:14px !important;row-gap:8px !important;}
body.woocommerce-cart .wc-block-cart.is-mobile table.wc-block-cart-items .wc-block-cart-item__image,
body.woocommerce-cart .wc-block-cart.is-small table.wc-block-cart-items .wc-block-cart-item__image{grid-column:1 !important;grid-row:1 / span 2 !important;padding-right:0 !important;}
body.woocommerce-cart .wc-block-cart.is-mobile table.wc-block-cart-items .wc-block-cart-item__product,
body.woocommerce-cart .wc-block-cart.is-small table.wc-block-cart-items .wc-block-cart-item__product{grid-column:2 !important;grid-row:1 !important;min-width:0 !important;}
body.woocommerce-cart .wc-block-cart.is-mobile table.wc-block-cart-items .wc-block-cart-item__total,
body.woocommerce-cart .wc-block-cart.is-small table.wc-block-cart-items .wc-block-cart-item__total{grid-column:2 !important;grid-row:2 !important;}
body.woocommerce-cart .wc-block-cart.is-mobile .wc-block-cart-item__total .wc-block-cart-item__total-price-and-sale-badge-wrapper,
body.woocommerce-cart .wc-block-cart.is-small .wc-block-cart-item__total .wc-block-cart-item__total-price-and-sale-badge-wrapper{display:flex !important;flex-direction:row !important;flex-wrap:wrap;align-items:center !important;justify-content:flex-end !important;gap:8px !important;}
/* ---- CART product row overflow end ---- */

/* ---- CART product description hidden ----
   The WC Blocks cart row shows the short description; if it is empty (all products) it cuts the first 15 words of the long description.
   Simple products repeated the product name, variations (empty description) showed nothing -> hidden for consistency. */
.wc-block-cart-items .wc-block-components-product-metadata__description{display:none !important;}
/* Detail rows: variations used two lists stacked (Weight, then Packing), simple products one list joined with " / ".
   Always stacked and in the same order as checkout: Packing first, then Weight. */
.wc-block-cart-items .wc-block-components-product-metadata,.wc-block-cart-items .wc-block-components-product-details{display:flex;flex-direction:column;}
/* Mobile cart page: the old rule relied on the __packing class (English label name); in other languages the class differs and
   Weight came first on variations. Language-independent: on variations WC Blocks prints item_data (Weight) first, then the
   variation (Packing) list -> lists in reverse order. Simple products already have one list: Packing, Weight. */
.wc-block-cart-items .wc-block-components-product-metadata{flex-direction:column-reverse !important;}
.wc-block-cart-items .wc-block-components-product-details > .wc-block-components-product-details__packing{order:-1;}
.wc-block-cart-items .wc-block-components-product-details > span > span[aria-hidden="true"]{display:none;}
/* ---- CART product description hidden end ---- */

/* ---- ACCOUNT / ORDER PAGE breadcrumb ----
   The Kadence page title (hero) is full width and centred; the breadcrumb (Home / My account / Orders / Order …) sat in the middle.
   On tablet and desktop (>=768px) it aligns with the LEFT EDGE of the white block below; centred on phones.
   v2: v1 was aligned to the hero edge (24px). White block = content area (max 1600px, centred, 24px padding) + 32px (.entry-content-wrap).
   The breadcrumb is inside the hero (24px padding) → start offset = max(0, (hero inner + 48px - 1600px) / 2) + 32px. Scope: My account + order page + (v3) User Registration pages: login, ?pl=true, registration, lost-password. */
@media (min-width:768px){
	body.woocommerce-account .entry-hero .kadence-breadcrumbs,
	body.user-registration-page .entry-hero .kadence-breadcrumbs,
	body.hcph-hub .entry-hero .kadence-breadcrumbs{
		align-self:stretch;text-align:start;box-sizing:border-box;width:auto;
		margin-inline:calc(max(0px, (100% + 48px - 1600px) / 2) + 32px);
	}
}
/* v4: the white block (.user-registration) on account / login / registration / password pages was max 1280px and centred;
   the order page block (.hcph-shell) is as wide as the content area. Account blocks looked short on wide screens → same width. */
body.user-registration-page .entry-content .user-registration,
body.user-registration-page .entry-content #user-registration.user-registration{max-width:none!important;margin-left:0!important;margin-right:0!important} /* login / lost-password: style.css has 'body.hc-pg-login #user-registration{max-width:1280px!important}' */
/* v5: on phones (<=600px) full width like the order page; Kadence content side margin 0.
   (The order page plugin sets the same rule for body.hcph-hub.) */
@media (max-width:600px){
	/* my-account: the inline rule 'body.woocommerce-account .entry-content-wrap{padding:10px!important}' (<=700px) loads later; more specific selector */
	body.user-registration-page .entry-content-wrap,
	body.woocommerce-account.user-registration-page .entry-content-wrap{padding-left:0!important;padding-right:0!important}
}
/* ---- ACCOUNT breadcrumb end ---- */

/* ---- iOS INPUT ZOOM ----
   iPhone Safari zooms in when a field under 16px is tapped (14px -> 114%) and the page shifted sideways.
   On phones the fields in login / registration / password / account forms are 16px. Desktop and tablet unchanged. Age modal (hc-dob-*, 18px) excluded. */
@media (max-width:767px){
	body.user-registration-page input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=hidden]):not([id^=hc-dob]),
	body.user-registration-page select,
	body.user-registration-page textarea,
	body.woocommerce-account input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=hidden]):not([id^=hc-dob]),
	body.woocommerce-account select,
	body.woocommerce-account textarea{font-size:16px!important}
}
/* ---- iOS INPUT ZOOM end ---- */

/* ---- ACCOUNT MENU CARDS ----
   On phones the My account menu (Profile Details, Orders, ...) shows as bordered two-column cards instead of a stacked list.
   v2: order Profile-Orders / Address-Stock alerts / Downloads (full width) / Delete Account-User Logout (plain bottom row);
   a small description line under each card (text from a mu-plugin, 13 languages). Current page: like the store selector on the category page (hc-storebar__item.is-active),
   orange border + light orange background + tick top right.
   v3: /my-account/ (woocommerce-dashboard) shows the Profile Details form but UR does not set is-active -> Profile Details is selected there. Desktop and tablet unchanged. */
@media (max-width:767px){
	body #user-registration.user-registration .user-registration-MyAccount-navigation{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0 0 16px!important;width:100%!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin:0!important;padding:0!important;list-style:none!important;border:0!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li{margin:0!important;padding:0!important;border:0!important;background:none!important;min-width:0!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li a{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:10px!important;height:100%!important;box-sizing:border-box!important;padding:14px!important;background:#fff!important;border:1.5px solid #e2e2e2!important;position:relative!important;border-radius:14px!important;box-shadow:0 1px 3px rgba(43,29,18,.06)!important;color:#2b1d12!important;font-size:15px!important;font-weight:600!important;line-height:1.25!important;text-decoration:none!important;transition:all .15s ease!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li a:active{transform:scale(.98)!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li a i{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:38px!important;height:38px!important;border-radius:50%!important;background:#fdf0e6!important;color:#f18833!important;font-size:17px!important;margin:0!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li a span{display:block!important;overflow-wrap:break-word!important;-webkit-hyphens:auto!important;hyphens:auto!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li a:hover{border-color:#f18833!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.is-active a,body.woocommerce-dashboard #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--edit-profile a{border-color:#f18833!important;background:#fdf0e7!important;color:#f18833!important;box-shadow:none!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.is-active a i,body.woocommerce-dashboard #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--edit-profile a i{background:#fff!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.is-active a::after,body.woocommerce-dashboard #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--edit-profile a::after{content:""!important;position:absolute!important;top:10px!important;inset-inline-end:10px!important;width:17px!important;height:17px!important;border-radius:50%!important;background:#f18833 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/11px no-repeat!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--edit-profile{order:1!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--orders{order:2!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--store-credit{order:3!important} /* 1.7.287: Store credit tab after Orders */
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--edit-address{order:4!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--backinstock{order:5!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--downloads{order:6!important} /* 1.7.287: 8 cards → Downloads is also a half card (was a full row) */
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--delete-account{order:7!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--user-logout{order:8!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li a span::after{display:block!important;margin-top:3px!important;font-size:12.5px!important;font-weight:400!important;line-height:1.3!important;color:#8a7b6e!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.is-active a span::after,body.woocommerce-dashboard #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--edit-profile a span::after{color:#c26a22!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--delete-account a,body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--user-logout a{flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:8px!important;padding:11px!important;font-size:14px!important;font-weight:500!important;color:#6b5a4c!important;box-shadow:none!important;background:#faf8f6!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--delete-account a i,body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--user-logout a i{width:28px!important;height:28px!important;font-size:14px!important;background:#f0ebe6!important;color:#6b5a4c!important}
	body #user-registration.user-registration .user-registration-MyAccount-navigation ul li.user-registration-MyAccount-navigation-link--delete-account a:hover{border-color:#c0392b!important;color:#c0392b!important}
}
/* ---- ACCOUNT MENU CARDS end ---- */

/* =====================================================================
   STANDARD PAGE LAYOUT — all pages except the homepage, incl. My account and Blog
   1) Thin grey line under the card = Kadence .entry.content-bg shadow (0 15px 15px -10px) -> off, transparent background
      (generalised version of the cart / tracking fix)
   2) Large gap between block and footer on short pages = Kadence footer-on-bottom: #wrapper min-height 100vh +
      #inner-wrap flex-grow:1 -> off; footer right below the content
   3) Block <-> footer gap standard 24px (same as About / Shipping / Terms)
   New page: put the content in a card (.hc-xxx white card); this block handles the shadow + gap itself.
   ===================================================================== */
body:is(.page,.woocommerce-account):not(.home) .entry.content-bg{box-shadow:none !important;background:transparent !important} /* Except blog: post cards must stay white */
body:is(.page,.blog,.single-post,.woocommerce-account):not(.home) #wrapper{min-height:0 !important}
body:is(.page,.blog,.single-post,.woocommerce-account):not(.home) #inner-wrap{flex-grow:0 !important}
body:is(.page,.blog,.single-post,.woocommerce-account):not(.home):not(.woocommerce-cart):not(.woocommerce-checkout) .content-area{margin-bottom:24px !important}
/* Blog post (.single-post): article.entry is itself a white card (0 6px 30px shadow) -> NOT added to the shadow/background rule, only the footer gap */

/* ===== BLOG phone check =====
   (1) Post title on phones was 32px / 48px line height (long titles 4 lines) -> 26px / 1.25.
   (3) Kadence post navigation (Previous / Next) enabled (theme setting post_navigation); stacked on phones, inside a card. */
@media (max-width:767px){
	body.single-post .entry-header.post-title .entry-title{font-size:26px !important;line-height:1.25 !important;}
	body.single-post .post-navigation .nav-links{display:flex !important;flex-direction:column !important;gap:14px;}
	body.single-post .post-navigation .nav-previous,
	body.single-post .post-navigation .nav-next{width:100% !important;max-width:100%;text-align:start !important;}
	body.single-post .post-navigation .nav-previous::after{display:none !important;}
	body.single-post .post-navigation .nav-next{border-top:1px solid #eee;padding-top:14px;}
}
/* The Kadence box with grey background + -16px margin overflowed the post card -> same white card as the post */
body.single-post .post-navigation-wrap{background:#fff !important;border-radius:14px;box-shadow:0 6px 30px rgba(0,0,0,.1) !important;margin:18px 0 0 !important;padding:18px 22px !important;}
@media (max-width:767px){body.single-post .post-navigation-wrap{margin:18px -16px 0 !important;}}
body.single-post .post-navigation{margin:0 !important;}
body.single-post .post-navigation a{text-decoration:none;padding:0 !important;}
body.single-post .post-navigation .post-navigation-sub{margin:0 0 4px !important;}
body.single-post .post-navigation .post-navigation-sub small{color:#f18833;font-weight:700;letter-spacing:.06em;}
body.single-post .post-navigation a:hover .post-navigation-sub small{color:#d9741a;}

/* ===== MY ACCOUNT phone check =====
   (1) Address form: User Registration my-account-layout.css centres the account content wrapper (.user-registration-MyAccount-content);
       labels / country select in the address form stayed centred (desktop too) -> start-aligned; Save address full width on phones.
   (2) Mobile table: .shop_table_responsive prints data-title: per cell; the label-less no-records cell was left with a lone : (Stock alerts). */
#user-registration .user-registration-MyAccount-content .woocommerce-address-fields,
#user-registration .user-registration-MyAccount-content .woocommerce-address-fields label,
#user-registration .user-registration-MyAccount-content .woocommerce-address-fields .select2-selection__rendered,
#user-registration .user-registration-MyAccount-content .woocommerce-address-fields select{text-align:start}
@media (max-width:767px){#user-registration .user-registration-MyAccount-content .woocommerce-address-fields button[name=save_address]{width:100%;min-height:46px;font-size:15px}}
.shop_table_responsive td:not([data-title])::before{content:none !important;display:none !important}

/* ===== LOGIN / REGISTRATION phone check =====
   (1) Login form (User Registration): the envelope/lock icon inside the field was positioned against the field + 10px bottom space, not the field
       (wrapper 48px, field 38px) -> ~5px low, touching the bottom edge. The space moved to the wrapper,
       the password group (inline, line descender space) set to block; icon exactly centred. The registration form was already right; scope login form only.
   (2) Password reset: the field row floated left like WooCommerce form-row-first -> shrank to its content and the label
       broke onto two lines -> full width. */
.user-registration #ur-frontend-form.login .input-wrapper{display:block;margin-bottom:10px;}
.user-registration #ur-frontend-form.login .input-wrapper input.input-text{margin-bottom:0 !important;vertical-align:top;}
.user-registration #ur-frontend-form.login .input-wrapper .password-input-group{display:block;}
.user-registration #ur-frontend-form.login .input-wrapper > .ur-icon{top:50% !important;bottom:auto !important;height:auto !important;line-height:1 !important;transform:translateY(-50%) !important;display:flex !important;align-items:center;}
.user-registration-ResetPassword .user-registration-form-row{float:none !important;width:100% !important;}

/* ===== EDIT ADDRESS modern form =====
   Card (max 760px), two-column grid (first/last name, city/state, postcode/phone), 48px fields, 10px corners,
   orange focus ring; select2 same look; location icon in the street field (Google address autocomplete mu-plugin).
   Field order fixed with CSS order (WC reorders the fields when the country changes; the grid does not break). */
body.woocommerce-edit-address .user-registration-MyAccount-content form:has(.woocommerce-address-fields){max-width:760px;margin:8px auto 0;background:#fff;border:1px solid #ece6de;border-radius:16px;box-shadow:0 10px 34px rgba(26,26,26,.06);padding:28px 30px 30px;box-sizing:border-box;}
body.woocommerce-edit-address form:has(.woocommerce-address-fields) > h2,
body.woocommerce-edit-address form:has(.woocommerce-address-fields) > h3{text-align:start !important;font-size:20px !important;font-weight:700 !important;margin:0 0 20px !important;padding:0 0 14px !important;border-bottom:1px solid #f0ebe4;display:flex;align-items:center;gap:10px;}
body.woocommerce-edit-address form:has(.woocommerce-address-fields) > h2::before,
body.woocommerce-edit-address form:has(.woocommerce-address-fields) > h3::before{content:"";flex:0 0 34px;height:34px;border-radius:10px;background:#fff3e8 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f18833' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5A7 7 0 0 1 19 9.5C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E") center/18px no-repeat;}
body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper{display:grid !important;grid-template-columns:1fr 1fr;gap:16px 18px;}
body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper > .form-row{grid-column:1 / -1;width:auto !important;float:none !important;margin:0 !important;padding:0 !important;display:flex;flex-direction:column;gap:6px;}
body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper > .form-row[id$="_first_name_field"]{order:1;grid-column:auto;}
body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper > .form-row[id$="_last_name_field"]{order:2;grid-column:auto;}
body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper > .form-row[id$="_company_field"]{order:3;}
body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper > .form-row[id$="_country_field"]{order:4;}
body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper > .form-row[id$="_address_1_field"]{order:5;}
body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper > .form-row[id$="_address_2_field"]{order:6;}
body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper > .form-row[id$="_city_field"]{order:7;grid-column:auto;}
body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper > .form-row[id$="_state_field"]{order:8;grid-column:auto;}
body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper > .form-row[id$="_postcode_field"]{order:9;grid-column:auto;}
body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper > .form-row[id$="_phone_field"]{order:10;grid-column:auto;}
body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper > .form-row[id$="_email_field"]{order:11;}
body.woocommerce-edit-address .woocommerce-address-fields .form-row label{font-size:13px !important;font-weight:600 !important;color:#4b5259 !important;margin:0 !important;line-height:1.3 !important;text-align:start !important;}
body.woocommerce-edit-address .woocommerce-address-fields .form-row label .required{color:#f18833;text-decoration:none;}
body.woocommerce-edit-address .woocommerce-address-fields .form-row label .optional{color:#9aa0a6;font-weight:400;}
body.woocommerce-edit-address .woocommerce-address-fields .woocommerce-input-wrapper{display:block;width:100%;position:relative;}
body.woocommerce-edit-address .woocommerce-address-fields input.input-text,
body.woocommerce-edit-address .woocommerce-address-fields select:not(.select2-hidden-accessible){width:100% !important;height:48px !important;padding-top:0 !important;padding-bottom:0 !important;padding-right:14px !important;font-size:16px !important;color:#16181c !important;background:#fff !important;border:1px solid #d9dce1 !important;border-radius:10px !important;box-shadow:none !important;box-sizing:border-box !important;transition:border-color .15s,box-shadow .15s;}
body.woocommerce-edit-address .woocommerce-address-fields input.input-text::placeholder{color:#9aa0a6;}
body.woocommerce-edit-address .woocommerce-address-fields input.input-text:hover{border-color:#c5c9cf !important;}
body.woocommerce-edit-address .woocommerce-address-fields input.input-text:focus,
body.woocommerce-edit-address .woocommerce-address-fields select:focus{border-color:#f18833 !important;box-shadow:0 0 0 3px rgba(241,136,51,.18) !important;outline:none !important;}
body.woocommerce-edit-address .woocommerce-address-fields .select2-container{width:100% !important;}
body.woocommerce-edit-address .woocommerce-address-fields .select2-container .select2-selection--single{height:48px !important;border:1px solid #d9dce1 !important;border-radius:10px !important;background:#fff !important;display:flex;align-items:center;}
body.woocommerce-edit-address .woocommerce-address-fields .select2-container .select2-selection--single .select2-selection__rendered{line-height:46px !important;padding-left:14px !important;padding-right:38px !important;font-size:16px;color:#16181c !important;}
body.woocommerce-edit-address .woocommerce-address-fields .select2-container .select2-selection--single .select2-selection__arrow{height:46px !important;right:10px !important;}
body.woocommerce-edit-address .woocommerce-address-fields .select2-container--open .select2-selection--single,
body.woocommerce-edit-address .woocommerce-address-fields .select2-container--focus .select2-selection--single{border-color:#f18833 !important;box-shadow:0 0 0 3px rgba(241,136,51,.18) !important;}
body.woocommerce-edit-address .select2-dropdown{border-color:#e3ddd5 !important;border-radius:10px !important;overflow:hidden;box-shadow:0 12px 30px rgba(26,26,26,.12);}
body.woocommerce-edit-address .select2-results__option--highlighted[aria-selected],
body.woocommerce-edit-address .select2-results__option--highlighted[data-selected]{background:#f18833 !important;color:#fff !important;}
/* Street: location icon (Google suggestions) */
body.woocommerce-edit-address .woocommerce-address-fields .form-row[id$="_address_1_field"] .woocommerce-input-wrapper::before{content:"";position:absolute;left:14px;top:24px;transform:translateY(-50%);width:18px;height:18px;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f18833' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5A7 7 0 0 1 19 9.5C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E") center/contain no-repeat;}
body.woocommerce-edit-address .woocommerce-address-fields .form-row[id$="_address_1_field"] input.input-text{padding-left:42px !important;}
body.woocommerce-edit-address .woocommerce-address-fields > p:last-child,
body.woocommerce-edit-address .woocommerce-address-fields > p:has(button[name=save_address]){margin:24px 0 0 !important;padding-top:20px;border-top:1px solid #f0ebe4;display:flex;justify-content:flex-end;}
body.woocommerce-edit-address .woocommerce-address-fields button[name=save_address]{min-width:200px;height:48px;padding:0 28px !important;border-radius:10px !important;background:#f18833 !important;border:0 !important;color:#fff !important;font-size:15px !important;font-weight:700 !important;letter-spacing:.01em;box-shadow:0 6px 16px rgba(241,136,51,.28);transition:background .15s,transform .15s;}
body.woocommerce-edit-address .woocommerce-address-fields button[name=save_address]:hover{background:#d9741a !important;transform:translateY(-1px);}
/* Google suggestions list (pac-container at the end of body) */
body.woocommerce-edit-address .pac-container{border:1px solid #ece6de;border-top:0;border-radius:0 0 12px 12px;box-shadow:0 14px 32px rgba(26,26,26,.14);margin-top:2px;font-family:inherit;z-index:100000;}
body.woocommerce-edit-address .pac-item{padding:9px 14px;font-size:14px;line-height:1.4;border-top:1px solid #f3efe9;cursor:pointer;}
body.woocommerce-edit-address .pac-item:first-child{border-top:0;}
body.woocommerce-edit-address .pac-item:hover,body.woocommerce-edit-address .pac-item-selected{background:#fff6ee;}
body.woocommerce-edit-address .pac-item-query{font-size:14px;color:#16181c;}
body.woocommerce-edit-address .pac-matched{color:#d9741a;}
body.woocommerce-edit-address .pac-icon{display:none;}
@media (max-width:600px){
	body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper{grid-template-columns:1fr;}
	body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper > .form-row{grid-column:1 / -1 !important;}
}
/* Edit address main page (two address cards): same style as the form */
body.woocommerce-edit-address .woocommerce-Addresses{display:grid !important;grid-template-columns:1fr 1fr;gap:22px;max-width:980px;margin:6px auto 0 !important;}
body.woocommerce-edit-address .woocommerce-Addresses::before,body.woocommerce-edit-address .woocommerce-Addresses::after{display:none !important;}
body.woocommerce-edit-address .woocommerce-Addresses > .woocommerce-Address{width:auto !important;float:none !important;margin:0 !important;background:#fff !important;border:1px solid #ece6de !important;border-radius:16px !important;box-shadow:0 10px 34px rgba(26,26,26,.06) !important;padding:22px 24px 24px !important;box-sizing:border-box;}
/* WP Additional CSS (wp-custom-css) loads later with body.woocommerce-account .woocommerce-Address-title !important -> selector one level stronger */
body.woocommerce-edit-address .woocommerce-Addresses .woocommerce-Address-title{display:flex !important;align-items:center !important;justify-content:flex-start !important;gap:10px;flex-wrap:wrap;} /* Orange underline (Additional CSS) stays */
body.woocommerce-edit-address .woocommerce-Address-title::before{content:"";flex:0 0 34px;height:34px;border-radius:10px;background:#fff3e8 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f18833' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5A7 7 0 0 1 19 9.5C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E") center/18px no-repeat;}
body.woocommerce-edit-address .woocommerce-Addresses .woocommerce-Address-title h2,body.woocommerce-edit-address .woocommerce-Addresses .woocommerce-Address-title h3{flex:1 1 auto;margin:0 !important;font-size:18px !important;font-weight:700 !important;text-align:start !important;}
/* Edit button: same as the small button on the customer order page (.hl-paynow .hcph-btn): 10px corners, 1.5px orange border, white */
body.woocommerce-edit-address .woocommerce-Addresses .woocommerce-Address-title a.edit{float:none !important;margin:0 0 0 auto !important;display:inline-flex !important;align-items:center;padding:8px 16px !important;border:1.5px solid #f18833 !important;border-radius:10px !important;background:#fff !important;color:#b5561a !important;font-size:13px !important;font-weight:700 !important;line-height:1.3 !important;text-decoration:none !important;box-shadow:none !important;transition:background .15s,border-color .15s,color .15s;}
body.woocommerce-edit-address .woocommerce-Addresses .woocommerce-Address-title a.edit:hover,body.woocommerce-edit-address .woocommerce-Addresses .woocommerce-Address-title a.edit:focus{background:#fff8f0 !important;color:#a24b14 !important;border-color:#e07a26 !important;}
body.woocommerce-edit-address .woocommerce-Address address{font-style:normal;line-height:1.75;color:#3d434a;margin:0;font-size:15px;}
@media (max-width:767px){body.woocommerce-edit-address .woocommerce-Addresses{grid-template-columns:1fr;}}

/* EDIT ADDRESS: horizontal top strip (5px on the top edge) + phone intl-tel-input (address autocomplete mu-plugin 1.1.0) */
body.woocommerce-edit-address .woocommerce-Addresses > .woocommerce-Address{background-image:linear-gradient(180deg,#f18833 0 5px,transparent 5px) !important;padding-top:27px !important;}
body.woocommerce-edit-address .user-registration-MyAccount-content form:has(.woocommerce-address-fields){background-image:linear-gradient(180deg,#f18833 0 5px,transparent 5px);padding-top:33px;}
body.woocommerce-edit-address .woocommerce-address-fields input.input-text:not(.iti__tel-input){padding-left:14px !important;}
body.woocommerce-edit-address .woocommerce-address-fields .form-row[id$="_address_1_field"] input.input-text{padding-left:42px !important;}
body.woocommerce-edit-address .woocommerce-address-fields .iti{width:100%;display:block;}
body.woocommerce-edit-address .woocommerce-address-fields .iti__selected-country{border-radius:10px 0 0 10px;}
body.woocommerce-edit-address .woocommerce-address-fields .iti__selected-country-primary{padding:0 6px 0 14px;}
body.woocommerce-edit-address .iti__dropdown-content{border-radius:10px;border-color:#e3ddd5;box-shadow:0 12px 30px rgba(26,26,26,.12);}
body.woocommerce-edit-address .iti__country.iti__highlight{background:#fff6ee;}
html[data-theme="dark"] body.woocommerce-edit-address .iti__dropdown-content{background:#24211e;border-color:#34302c;color:#ece7e1;}
html[data-theme="dark"] body.woocommerce-edit-address .iti__country.iti__highlight{background:#2e2117;}
/* EDIT ADDRESS: phone verification card (phone OTP 5.2.0 #hc-ph-col) right below the phone field, full row */
body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper > #hc-ph-col{order:10;grid-column:1 / -1 !important;margin:0 !important;padding:0 !important;width:auto !important;}
body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper > #hc-ph-col #hc-ph-card{margin:0 !important;border-radius:10px;}
/* EDIT ADDRESS notices (address autocomplete mu-plugin 1.2.0 .hc-adr-uyari) as wide as the form card */
body.woocommerce-edit-address .hc-adr-uyari{max-width:760px;margin:0 auto 14px !important;}
body.woocommerce-edit-address:has(.woocommerce-Addresses) .hc-adr-uyari{max-width:980px;}
/* EDIT ADDRESS phone: nested card -> less padding; the flag box background must not cut the field border */
body.woocommerce-edit-address .woocommerce-address-fields .iti__selected-country{background:transparent !important;}
@media (max-width:600px){
	body.woocommerce-edit-address .user-registration-MyAccount-content form:has(.woocommerce-address-fields){padding:25px 16px 20px !important;margin-top:4px;border-radius:14px;}
	body.woocommerce-edit-address form:has(.woocommerce-address-fields) > h2,body.woocommerce-edit-address form:has(.woocommerce-address-fields) > h3{font-size:18px !important;margin-bottom:16px !important;}
	body.woocommerce-edit-address .woocommerce-address-fields__field-wrapper{gap:14px;}
	body.woocommerce-edit-address .woocommerce-address-fields > p:has(button[name=save_address]){margin-top:18px !important;padding-top:16px;}
	body.woocommerce-edit-address .woocommerce-address-fields button[name=save_address]{width:100%;}
	body.woocommerce-edit-address .woocommerce-Addresses > .woocommerce-Address{padding:25px 16px 18px !important;}
	body.woocommerce-edit-address .woocommerce-Address-title a.edit{font-size:12.5px !important;padding:7px 12px !important;}
}
/* EDIT ADDRESS: intl-tel-input arrow; another style rotated it 45deg with a 6px border (diamond) -> the library's own triangle */
body.woocommerce-edit-address .woocommerce-address-fields .iti__arrow{width:0 !important;height:0 !important;transform:none !important;margin-left:6px !important;border-left:4px solid transparent !important;border-right:4px solid transparent !important;border-top:5px solid #6b7178 !important;border-bottom:0 !important;}
body.woocommerce-edit-address .woocommerce-address-fields .iti__arrow--up{border-top:0 !important;border-bottom:5px solid #6b7178 !important;}
/* EDIT ADDRESS phone: Additional CSS (<=700px) made the title a column; the WooCommerce clearfix ::before (content " " table) overrode the location icon */
body.woocommerce-edit-address .woocommerce-Addresses .woocommerce-Address .woocommerce-Address-title{flex-direction:row !important;align-items:center !important;flex-wrap:wrap !important;gap:10px !important;}
body.woocommerce-edit-address .woocommerce-Addresses .woocommerce-Address .woocommerce-Address-title::before{content:"" !important;display:block !important;flex:0 0 34px !important;width:34px !important;height:34px !important;border-radius:10px !important;background:#fff3e8 url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27%23f18833%27 stroke-width=%272%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Cpath d=%27M12 21s-7-6.2-7-11.5A7 7 0 0 1 19 9.5C19 14.8 12 21 12 21z%27/%3E%3Ccircle cx=%2712%27 cy=%279.5%27 r=%272.5%27/%3E%3C/svg%3E") center/18px no-repeat !important;}
html[data-theme="dark"] body.woocommerce-edit-address .woocommerce-Addresses .woocommerce-Address .woocommerce-Address-title::before{background-color:#2e2117 !important;}
body.woocommerce-edit-address .woocommerce-Addresses .woocommerce-Address .woocommerce-Address-title h2{flex:1 1 auto !important;text-align:start !important;}

/* ===== BREADCRUMB phone: only <=767px, desktop unchanged =====
   Hidden only on static pages (body.page: policies, about, account pages, cart/checkout).
   Category, product, store, blog, search: unchanged (full path). Intermediate attempts (a single "‹ Up" link) were reverted. */
@media (max-width:767px){
	body.page #kadence-breadcrumbs,body.blog #kadence-breadcrumbs{display:none !important;} /* Blog list added; the breadcrumb stays on blog posts */
}

/* COUPON BOX cart + checkout: single source is a mu-plugin (the checkout page does not load this file) */

/* =====================================================================
   DISCLAIMER (brand disclaimer, Code Snippets #38), theme 1.7.281
   Desktop B: always open, cream background + orange left stripe (summary not clickable).
   Phone C: starts closed, opens on tap (small script inside the snippet).
   ===================================================================== */
.hc-disclaimer{ margin:4px 0 16px; font-size:13px; line-height:1.6; color:#5a554f; font-style:normal; }
.hc-disclaimer > summary{ list-style:none; display:flex; align-items:center; gap:8px; }
.hc-disclaimer > summary::-webkit-details-marker{ display:none; }
.hc-disclaimer > summary strong{ font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.hc-disclaimer__ic,.hc-disclaimer__ch{ width:17px; height:17px; flex:0 0 17px; }
@media (min-width:768px){
	.hc-disclaimer{ padding:11px 14px; background:#fdf0e7; border-left:3px solid #f18833; border-radius:0; } /* Colour = .hc-storebar__status */
	.hc-disclaimer > summary{ pointer-events:none; cursor:default; margin:0 0 3px; }
	.hc-disclaimer > summary strong{ color:#c96a1e; }
	.hc-disclaimer__ic,.hc-disclaimer__ch{ display:none; }
}
@media (max-width:767px){
	.hc-disclaimer{ border:1px solid #f6c9a6; border-radius:12px; background:#fdf0e7; }
	.hc-disclaimer > summary{ min-height:46px; box-sizing:border-box; padding:12px 14px; cursor:pointer; -webkit-tap-highlight-color:transparent; }
	.hc-disclaimer > summary strong{ color:#5a554f; }
	.hc-disclaimer__ic{ color:#f18833; }
	.hc-disclaimer__ch{ margin-inline-start:auto; color:#8a837b; transition:transform .2s ease; }
	.hc-disclaimer[open] > summary .hc-disclaimer__ch{ transform:rotate(180deg); }
	.hc-disclaimer__tx{ padding:0 14px 12px; padding-inline-start:39px; }
}
/* Category page: white card, same style as the filter cards. The product page is a separate decision. */
body.tax-product_cat .hc-disclaimer{ background:#fff; border:1px solid #ece6de; border-radius:12px; }
@media (min-width:768px){
	body.tax-product_cat .hc-disclaimer{ padding:12px 16px; }
	body.tax-product_cat .hc-disclaimer > summary strong{ color:#2b2b2b; }
	body.tax-product_cat .hc-disclaimer__ic{ display:block; color:#f18833; }
	body.tax-product_cat .hc-disclaimer__tx{ padding-inline-start:25px; }
}
/* Product page: white card, collapsible on desktop too; default open on desktop, closed on phone */
body.single-product .hc-disclaimer{ background:#fff; border:1px solid #ece6de; border-radius:12px; }
body.single-product .hc-disclaimer__ic{ color:#f18833; }
@media (min-width:768px){
	body.single-product .hc-disclaimer{ padding:0; }
	body.single-product .hc-disclaimer > summary{ pointer-events:auto; cursor:pointer; margin:0; padding:11px 16px; -webkit-tap-highlight-color:transparent; }
	body.single-product .hc-disclaimer > summary strong{ color:#2b2b2b; }
	body.single-product .hc-disclaimer__ic{ display:block; }
	body.single-product .hc-disclaimer__ch{ display:block; margin-inline-start:auto; color:#8a837b; transition:transform .2s ease; }
	body.single-product .hc-disclaimer[open] > summary .hc-disclaimer__ch{ transform:rotate(180deg); }
	body.single-product .hc-disclaimer__tx{ padding:0 16px 12px; padding-inline-start:41px; }
}
/* Category page is also collapsible on desktop, default open, same as the product page */
@media (min-width:768px){
	body.tax-product_cat .hc-disclaimer{ padding:0; }
	body.tax-product_cat .hc-disclaimer > summary{ pointer-events:auto; cursor:pointer; margin:0; padding:11px 16px; -webkit-tap-highlight-color:transparent; }
	body.tax-product_cat .hc-disclaimer__ch{ display:block; margin-inline-start:auto; color:#8a837b; transition:transform .2s ease; }
	body.tax-product_cat .hc-disclaimer[open] > summary .hc-disclaimer__ch{ transform:rotate(180deg); }
	body.tax-product_cat .hc-disclaimer__tx{ padding:0 16px 12px; padding-inline-start:41px; }
}

/* ============ 1.7.286: desktop filter panel alignment ============
   The "Filter" heading is hidden on desktop (kept for screen readers); the Price card starts on the same line as the
   "Show products from" bar. 57px = search box 51 + bottom gap 20 - the panel first empty block 14.
   No shift on pages without the search box (:has). The phone drawer (<=880) is unaffected. */
@media (min-width:881px){
	.hc-facets__head{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
	.site-main:has(.hc-storebar-wrap .hc-storesearch) .hc-facets{ margin-top:57px; }
	/* Price range and "€4 — €100" move closer to the heading */
	.hc-facets .facetwp-facet-price{ margin-top:2px; }
	.hc-facets .facetwp-facet-price .facetwp-slider-wrap{ padding-top:6px; }
}

/* S-192: badge "Ships from" + flag + store */
.hc-origin .hc-origin__lbl,.hc-pdp-badge .lbl,.hc-newin__badge .lbl{color:#1f1f1f;font-weight:700;white-space:nowrap;padding-inline-start:7px}
.hc-origin,.hc-pdp-badge,.hc-newin__badge{white-space:nowrap}
:is(html[lang^="de"],html[lang^="fr"],html[lang^="es"],html[lang^="nl"],html[lang^="ru"]) ul.products:not(.products-list-view) .hc-card__meta{min-height:58px;row-gap:6px;align-content:flex-start} /* Long badge: Available on the next line, names aligned */
html[data-theme="dark"] .hc-pdp-badge .lbl,html[data-theme="dark"] .hc-newin__badge .lbl{color:#ece7e1}

/* Empty blog: with no posts Kadence falls back to page-archive defaults (200px, #edf2f7). Title area and text like other pages: 100px white + card. Once posts are published the post-archive settings apply and these rules no longer match. */
body.blog .page-archive-hero-section .entry-hero-container-inner{background:#fff}
body.blog .page-archive-title.entry-header{min-height:100px}
.hc-blog-bos{font-size:15px;background:#fff;border-radius:14px;box-shadow:0 6px 30px rgba(0,0,0,.10);padding:40px 48px;line-height:1.75}
.hc-blog-bos .page-content{margin:0;padding:0}.hc-blog-bos p:first-child{margin-top:0}.hc-blog-bos p:last-child{margin-bottom:0}
body:has(.hc-blog-bos) .content-area{margin-top:16px}
@media (min-width:783px){.hc-blog-bos{margin-inline:32px}}
@media (max-width:782px){.hc-blog-bos{padding:24px 20px;margin-inline:-16px}}

/* =====================================================================
   WOOCOMMERCE NOTICES — design A "white card" (theme 1.7.303)
   Error / added to cart / info: white card, thin border, coloured round icon on the left (! ✓ i),
   bordered orange pill "View cart". On phones (<=600px) the button goes full width under the text.
   Kadence: grey-blue background + thick left line + 17px text + floating button; on mobile .woocommerce-message is
   column-reverse (button on top). The html:not(.hc-bn-kapali) prefix beats the Kadence .woocommerce .woocommerce-*
   rules (0,2,0). The checkout page does not load this file (CheckoutWC has its own notices).
   Places with their own box are protected by ID-based !important rules (BIS card, order lookup).
   ===================================================================== */
html:not(.hc-bn-kapali) :is(.woocommerce-error,.woocommerce-message,.woocommerce-info){ position:relative; list-style:none; margin:0 0 16px; padding-block:14px; padding-inline:56px 16px; font-size:15px; line-height:1.5; background:#fff; color:#1f1f1f; border:1px solid #ececec; border-radius:12px; box-shadow:0 4px 18px rgba(0,0,0,.06); }
html:not(.hc-bn-kapali) .woocommerce-error li{ display:flex; align-items:center; flex-wrap:wrap; gap:10px 14px; margin:0; padding:0; list-style:none; }
html:not(.hc-bn-kapali) .woocommerce-error li + li{ margin-top:8px; }
html:not(.hc-bn-kapali) :is(.woocommerce-message,.woocommerce-info){ display:flex; flex-direction:row; align-items:center; flex-wrap:wrap; gap:10px 14px; }
html:not(.hc-bn-kapali) :is(.woocommerce-error,.woocommerce-message,.woocommerce-info)::before{ position:absolute; inset-inline-start:16px; top:50%; transform:translateY(-50%); width:28px; height:28px; border-radius:50%; display:flex; align-items:center; justify-content:center; font:800 15px/1 system-ui,sans-serif; margin:0; }
html:not(.hc-bn-kapali) .woocommerce-error::before{ content:"!"; background:#fdecec; color:#c62828; }
html:not(.hc-bn-kapali) .woocommerce-message::before{ content:"\2713"; background:#e8f6ee; color:#2eaf69; }
html:not(.hc-bn-kapali) .woocommerce-info::before{ content:"i"; font-family:Georgia,serif; background:#fdf3e7; color:#f18833; }
html:not(.hc-bn-kapali) :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) .button{ order:2; float:none; margin:0; margin-inline-start:auto; white-space:nowrap; font-size:14px; font-weight:600; line-height:1.4; padding:7px 16px; box-shadow:none; text-decoration:none; background:#fff; color:#f18833; border:1.5px solid #f18833; border-radius:999px; }
html:not(.hc-bn-kapali) :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) .button:hover{ background:#f18833; color:#fff; }
@media (max-width:600px){
	html:not(.hc-bn-kapali) :is(.woocommerce-error,.woocommerce-message,.woocommerce-info){ font-size:14px; padding-inline:52px 14px; }
	html:not(.hc-bn-kapali) :is(.woocommerce-error,.woocommerce-message,.woocommerce-info)::before{ top:16px; transform:none; inset-inline-start:14px; }
	html:not(.hc-bn-kapali) :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) .button{ flex:1 0 100%; margin-inline-start:0; text-align:center; }
}
html[data-theme="dark"]:not(.hc-bn-kapali) :is(.woocommerce-error,.woocommerce-message,.woocommerce-info){ background:#1c1a18; color:#ece7e1; border-color:#2e2a26; }
html[data-theme="dark"]:not(.hc-bn-kapali) :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) .button{ background:transparent; }
html[data-theme="dark"]:not(.hc-bn-kapali) :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) .button:hover{ background:#f18833; color:#fff; }
/* 1.7.304: the white background did not stand out from the page → coloured background + coloured border by type,
   solid coloured circle icon; the button is a bordered pill with a white background. */
html:not(.hc-bn-kapali) .woocommerce-error{ background:#fdecec; border-color:#f3b9bc; color:#5f1d20; }
html:not(.hc-bn-kapali) .woocommerce-message{ background:#e9f7ef; border-color:#b5e2c8; color:#174a2e; }
html:not(.hc-bn-kapali) .woocommerce-info{ background:#fdf1e4; border-color:#f4cfa6; color:#5c3510; }
html:not(.hc-bn-kapali) .woocommerce-error::before{ background:#d0454c; color:#fff; }
html:not(.hc-bn-kapali) .woocommerce-message::before{ background:#2eaf69; color:#fff; }
html:not(.hc-bn-kapali) .woocommerce-info::before{ background:#f18833; color:#fff; }
html:not(.hc-bn-kapali) :is(.woocommerce-error,.woocommerce-message,.woocommerce-info){ box-shadow:0 4px 16px rgba(0,0,0,.07); font-weight:500; }
html[data-theme="dark"]:not(.hc-bn-kapali) .woocommerce-error{ background:rgba(208,69,76,.18); border-color:rgba(208,69,76,.45); color:#f3dcdd; }
html[data-theme="dark"]:not(.hc-bn-kapali) .woocommerce-message{ background:rgba(46,175,105,.16); border-color:rgba(46,175,105,.4); color:#d7efe1; }
html[data-theme="dark"]:not(.hc-bn-kapali) .woocommerce-info{ background:rgba(241,136,51,.16); border-color:rgba(241,136,51,.4); color:#f6e2cf; }
