/* Homepage only. Reuse the configured storefront palette and Persian font. */
.cg-home .cgh-scroll-top { position:fixed; z-index:35; inset-inline-end:max(20px,env(safe-area-inset-left)); inset-block-end:calc(max(var(--cgh-scroll-clearance,0px),env(safe-area-inset-bottom)) + 16px); display:grid; place-items:center; inline-size:48px; block-size:48px; padding:0; border:0; border-radius:50%; background:var(--shop-surface); color:var(--cg-link,var(--shop-primary-strong)); box-shadow:0 3px 14px rgb(var(--shop-shadow-color) / .16); cursor:pointer; transition:background .18s,transform .18s; }
.cg-home .cgh-scroll-top[hidden] { display:none; }
.cg-home .cgh-scroll-top svg { position:absolute; inset:0; inline-size:100%; block-size:100%; fill:none; stroke-width:2; transform:rotate(-90deg); pointer-events:none; }
.cg-home .cgh-scroll-track { stroke:var(--shop-line-strong); }
.cg-home .cgh-scroll-progress { stroke:currentColor; stroke-linecap:round; stroke-dasharray:100; stroke-dashoffset:calc(100 - var(--cgh-scroll-progress,0)); }
.cg-home .cgh-scroll-top i { font-size:23px; pointer-events:none; }
.cg-home .cgh-scroll-top:hover { background:var(--shop-primary-faint); transform:translateY(-2px); }
.cg-home .cgh-scroll-top:active { transform:scale(.96); }
.cg-home .cgh-scroll-top:focus-visible { outline:3px solid var(--shop-primary); outline-offset:4px; }
@media(max-width:760px) { .cg-home .cgh-scroll-top { inset-inline-end:max(12px,env(safe-area-inset-left)); } }
@media(prefers-reduced-motion:reduce) { .cg-home .cgh-scroll-top { transition:none; } .cg-home .cgh-scroll-top:hover,.cg-home .cgh-scroll-top:active { transform:none; } }
@media(forced-colors:active) { .cg-home .cgh-scroll-top { border:1px solid ButtonText; } }
.cg-home { --cgh-radius:18px; --cgh-gap:24px; background:var(--shop-surface); }
html[data-shop-palette] body.cg-page.cg-home { background:var(--shop-bg); }
.cg-home i { line-height:1; }
.cg-home .cgh-site-logo { display:block; inline-size:105px; block-size:63px; flex-shrink:0; object-fit:contain; padding:4px; border-radius:6px; background:#fff; }
@media(max-width:760px) {
  .cg-home .cgh-site-logo { inline-size:97px; block-size:55px; }
  .cg-home .cgh-brand-title { position:absolute; inline-size:1px; block-size:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
}
.cg-home .cg-header { display:grid; grid-template-columns:auto minmax(240px,1fr) auto auto; gap:24px; padding-block:22px 0; border:0; }
.cg-home .cg-brand { grid-column:1; grid-row:1; }
.cg-home .cg-brand h1 { font-size:21px; line-height:1.8; letter-spacing:-.5px; }
.cg-home .cg-brand-mark { inline-size:52px; block-size:52px; border-radius:16px; font-size:34px; }
.cg-home .cg-search { grid-column:2; grid-row:1; border-radius:14px; background:var(--shop-surface-2); }
.cg-home .cg-search input { font-size:14px; }
.cg-home .cg-header>[data-open-cart] { grid-column:4; grid-row:1; position:relative; background:transparent; border:0; color:var(--shop-text) !important; padding:10px; }
.cg-home .cg-header>[data-open-cart] i { font-size:28px; }
.cg-home .cg-header>[data-open-cart] span { display:none; }
.cg-home .cg-header>[data-open-cart] b { position:absolute; inset-block-start:-2px; inset-inline-start:28px; min-inline-size:22px; padding-inline:4px; block-size:22px; display:grid; place-items:center; font-size:11px; border-radius:50%; background:var(--shop-primary); color:var(--shop-on-primary); }
.cg-home:not(.cgh-has-cart) .cg-header>[data-open-cart] b { display:none; }
.cgh-tracking { grid-column:3; grid-row:1; display:flex; align-items:center; gap:8px; min-block-size:44px; font-size:12px; white-space:nowrap; }
.cgh-tracking i { font-size:23px; }
.cgh-header-strip { grid-column:1/-1; grid-row:2; background:var(--shop-primary-strong); color:var(--shop-on-primary); text-align:center; padding:7px 16px; font-size:12px; border-radius:12px; }
.cg-home .cg-main { padding-block-start:22px; }
.cg-home .cg-steps { max-inline-size:650px; margin:0 auto 32px; justify-content:space-between; gap:12px; }
.cg-home .cg-steps li { position:relative; flex:1; justify-content:center; flex-direction:column; gap:5px; font-size:12px; }
.cg-home .cg-steps li:not(:last-child)::after { content:""; position:absolute; inset-inline-start:calc(50% + 20px); inset-block-start:15px; inline-size:calc(100% - 28px); block-size:1px; background:var(--shop-line-strong); }
.cg-home .cg-steps li span { inline-size:32px; block-size:32px; }
.cg-home h2 { font-size:24px; font-weight:800; letter-spacing:-.5px; }
.cgh-text-button { display:inline-flex; gap:6px; align-items:center; justify-content:center; min-block-size:44px; padding:4px 0; border:0; background:transparent; color:var(--cg-link,var(--shop-primary-strong)); font-size:13px !important; font-weight:700; }
.cgh-text-button i { font-size:20px; }
.cgh-text-button:hover { text-decoration:underline; text-underline-offset:5px; }
.cgh-categories { margin-block-end:30px; scroll-margin-block-start:20px; }
.cgh-category-list { display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:16px; }
.cgh-category-controls { display:none; }
@media(min-width:761px) {
  .cgh-categories { min-inline-size:0; }
  .cgh-category-list { grid-auto-flow:column; grid-template-columns:none; grid-auto-columns:clamp(112px,calc((100% - 112px)/8),150px); overflow-x:auto; scroll-snap-type:x proximity; padding:7px 5px 10px; margin-inline:-5px; scrollbar-width:thin; scrollbar-color:var(--shop-line-strong) transparent; }
  .cgh-category { scroll-snap-align:start; }
  .cgh-category-controls:not([hidden]) { display:flex; align-items:center; gap:8px; flex-shrink:0; }
  .cgh-category-controls>span { color:var(--shop-muted); font-size:12px; margin-inline-end:4px; }
  .cgh-category-controls button { display:grid; place-items:center; inline-size:44px; block-size:44px; padding:0; border:1px solid var(--shop-line-strong); border-radius:50%; background:var(--shop-surface); color:var(--cg-link,var(--shop-primary-strong)); cursor:pointer; }
  .cgh-category-controls i { font-size:24px; }
  .cgh-category-controls button:hover:not(:disabled) { background:var(--shop-primary-faint); border-color:var(--shop-primary); }
  .cgh-category-controls button:active:not(:disabled) { background:var(--shop-primary); color:var(--shop-on-primary); }
  .cgh-category-controls button:focus-visible { outline:3px solid var(--shop-primary); outline-offset:3px; }
  .cgh-category-controls button:disabled { opacity:.35; cursor:default; }
}
.cgh-category { min-inline-size:0; display:flex; flex-direction:column; align-items:center; gap:8px; background:transparent; border:0; padding:5px; color:var(--shop-text); font-size:14px !important; font-weight:700; border-radius:16px; }
.cgh-category-image { position:relative; display:grid; place-items:center; inline-size:min(100%,112px); aspect-ratio:1; outline:2px solid transparent; outline-offset:4px; transition:outline-color .15s; }
.cgh-category-image img { inline-size:100%; block-size:100%; object-fit:contain; border-radius:50%; }
.cgh-category-image>i:not(.cgh-category-check) { font-size:36px; color:var(--shop-primary); }
.cgh-category .cgh-category-check { display:none; position:absolute; inset-inline-end:0; inset-block-end:0; place-items:center; inline-size:25px; block-size:25px; background:var(--shop-primary); color:var(--shop-on-primary); border:2px solid var(--shop-surface); border-radius:50%; font-size:16px; }
.cgh-category:hover .cgh-category-image,.cgh-category[aria-pressed=true] .cgh-category-image { outline-color:var(--shop-primary); }
.cgh-category[aria-pressed=true] .cgh-category-check { display:grid; }
.cgh-category[aria-pressed=true]>span:last-of-type { color:var(--cg-link,var(--shop-primary-strong)); }
.cgh-category small { color:var(--shop-muted); font-size:11px; font-weight:400; }
.cgh-category>span:last-of-type { min-block-size:25px; text-align:center; overflow-wrap:anywhere; }
.cgh-banner { position:relative; display:grid; grid-template-columns:1.3fr 1fr; align-items:center; gap:24px; background:var(--shop-primary-faint); border:1px solid var(--shop-line); border-radius:22px; padding:26px 36px; margin-block-end:36px; overflow:hidden; }
.cgh-banner-copy { position:relative; z-index:1; }
.cgh-banner h2 { color:var(--cg-link,var(--shop-primary-strong)); font-size:32px; margin-block:3px 8px; }
.cgh-banner-copy>p:not(.cg-eyebrow) { color:var(--shop-muted); font-size:14px; }
.cgh-banner-copy>a { margin-block-start:10px; }
.cgh-banner-art { position:relative; display:flex; align-items:center; justify-content:center; isolation:isolate; min-block-size:180px; }
.cgh-banner-art>img { position:relative; inline-size:38%; max-inline-size:160px; block-size:auto; aspect-ratio:1; object-fit:contain; margin-inline:-10px; z-index:1; filter:drop-shadow(0 8px 8px rgb(var(--shop-shadow-color) / .09)); }
.cgh-banner-art>img:nth-of-type(2) { z-index:2; transform:translateY(-14px); }
.cgh-banner-orbit { position:absolute; inline-size:75%; aspect-ratio:1; border:1px solid var(--shop-line-strong); border-radius:50%; opacity:.6; z-index:0; }
.cgh-banner-seal { position:absolute; inset-block-end:0; display:flex; gap:6px; align-items:center; padding:5px 13px; border:1px solid var(--shop-line); border-radius:24px; background:var(--shop-surface); font-size:11px; z-index:3; }
.cgh-banner-seal i { color:var(--shop-primary); font-size:18px; }
.cgh-products-heading { margin-block-end:12px; }
.cgh-filter-panel { border:1px solid var(--shop-line); border-radius:14px; margin-block-end:12px; }
.cgh-filter-panel summary { display:flex; align-items:center; justify-content:space-between; padding:10px 16px; min-block-size:46px; cursor:pointer; list-style:none; font-size:13px; }
.cgh-filter-panel summary::-webkit-details-marker { display:none; }
.cgh-filter-panel summary:focus-visible { outline:3px solid var(--shop-primary); outline-offset:3px; border-radius:12px; }
.cgh-filter-panel summary>span { display:flex; align-items:center; gap:8px; }
.cgh-filter-panel summary i { font-size:20px; }
.cgh-filter-panel summary b { display:grid; place-items:center; min-inline-size:22px; block-size:22px; padding-inline:5px; border-radius:20px; color:var(--shop-on-primary); background:var(--shop-primary); font-size:11px; }
.cgh-filter-panel[open] summary>i { transform:rotate(180deg); }
.cg-home .cg-filters { padding:0 16px 16px; border:0; gap:18px; }
.cg-home .cg-filters label:not(.cg-checkbox) { min-inline-size:150px; }
.cg-home .cg-checkbox { font-size:13px; min-block-size:44px; }
.cgh-active-filters { display:flex; flex-wrap:wrap; gap:8px; margin-block:12px; }
.cgh-active-filters button { display:flex; align-items:center; gap:8px; min-block-size:44px; padding:5px 12px; border-radius:10px; border:1px solid var(--shop-line-strong); background:var(--shop-primary-faint); color:var(--cg-link,var(--shop-primary-strong)); font-size:12px; }
.cg-home .cg-catalog-note { display:flex; gap:6px; font-size:12px; margin-block:14px 20px; }
.cg-home .cg-products { gap:20px; }
.cg-home .cg-product { display:flex; flex-direction:column; min-inline-size:0; border-radius:var(--cgh-radius); background:var(--shop-surface); border:1px solid var(--shop-line); overflow:hidden; box-shadow:none; transition:border-color .15s,box-shadow .15s; }
.cg-home .cg-product:hover { border-color:var(--shop-line-strong); box-shadow:var(--shop-shadow-sm); transform:none; }
.cg-home .cg-product-image { inline-size:auto; min-inline-size:0; flex-shrink:0; margin:12px 12px 0; border-radius:12px; aspect-ratio:1; background:#fff; padding:0; overflow:hidden; }
.cg-home .cg-product-image img { inline-size:100%; block-size:100%; object-fit:contain; border-radius:inherit; }
.cg-home .cg-product-image:focus-visible { outline-offset:3px; }
.cg-home .cg-product-info { display:flex; flex-direction:column; flex:1; min-inline-size:0; padding:12px 16px 16px; gap:6px; }
.cg-home .cg-product-info>.cgh-product-brand { font-size:12px; color:var(--shop-muted); min-block-size:20px; }
.cg-home .cg-product h3 { font-size:15px; font-weight:700; line-height:1.85; margin:0; min-block-size:56px; overflow-wrap:anywhere; }
.cgh-product-meta { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; }
.cgh-stock-note { display:inline-flex; align-items:center; gap:4px; padding:3px 7px; border-radius:6px; background:var(--shop-surface-2); color:var(--shop-muted); font-size:12px; }
.cgh-unavailable .cg-product-image { filter:grayscale(.85); opacity:.7; }
.cgh-rating { display:inline-flex; align-items:center; gap:4px; min-block-size:32px; font-size:13px; }
.cgh-rating i { color:var(--cg-star,var(--shop-rating)); }
.cgh-rating small { color:var(--shop-muted); font-size:11px; }
.cgh-product-buy { display:flex; justify-content:space-between; align-items:center; gap:8px; margin-block-start:auto; padding-block-start:10px; }
.cg-home .cg-product-price { display:flex; align-items:baseline; flex-wrap:wrap; gap:4px; min-inline-size:0; margin:0; color:var(--cg-link,var(--shop-primary-strong)); font-size:18px; line-height:1.65; }
.cg-home .cg-product-price strong { font-weight:800; white-space:nowrap; }
.cg-home .cg-product-price small { font-size:11px; font-weight:500; }
.cg-home .cgh-add { inline-size:44px; min-inline-size:44px; block-size:44px; min-block-size:44px; border-radius:50%; padding:0; font-size:26px; }
.cg-home .cgh-add i { font-size:26px; }
.cg-home .cg-button:active { transform:none; }
.cg-home .cg-empty>.cg-button { margin-block-start:16px; }
.cgh-how { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-block-start:48px; border-block-start:1px solid var(--shop-line); padding-block-start:30px; }
.cgh-how>div { display:grid; grid-template-columns:auto 1fr; gap:4px 12px; align-items:center; }
.cgh-how i { grid-row:1/3; display:grid; place-items:center; inline-size:50px; block-size:50px; border-radius:14px; background:var(--shop-primary-faint); color:var(--shop-primary); font-size:26px; }
.cgh-how strong { font-size:14px; }.cgh-how p { font-size:12px; color:var(--shop-muted); }
.cgh-mobile-nav { display:none; }
.cg-home .cg-footer { margin-block-start:12px; }
.cg-home .cg-catalog-note i { font-size:16px; flex-shrink:0; }
@media(min-width:761px) { .cgh-categories [data-categories-toggle] { display:none; }.cg-home .cg-mobile-cart { display:none; } }
@media(max-width:1100px) and (min-width:761px) { .cg-home .cg-header { grid-template-columns:auto minmax(160px,1fr) auto; gap:16px; }.cg-home .cgh-tracking { display:none; }.cg-home .cg-header>[data-open-cart] { grid-column:3; }.cg-home .cg-brand h1 { font-size:18px; }.cgh-category-list { gap:10px; }.cgh-category { font-size:12px !important; }.cg-home .cg-products { grid-template-columns:repeat(3,minmax(0,1fr)); }.cgh-banner h2 { font-size:27px; } }
@media(max-width:760px) {
  html:has(body.cg-home) { scroll-padding-block:16px calc(78px + env(safe-area-inset-bottom)); }
  html:has(body.cg-home.cgh-has-cart) { scroll-padding-block-end:calc(160px + env(safe-area-inset-bottom)); }
  .cg-home { --cgh-radius:16px; padding-block-end:148px !important; }
  .cg-home .cg-header { grid-template-columns:minmax(0,1fr) 44px; gap:10px 12px; padding:10px 16px 0; }
  .cg-home .cg-brand { gap:8px; }.cg-home .cg-brand h1 { font-size:17px; letter-spacing:-.5px; }.cg-home .cg-brand-mark { inline-size:40px; block-size:40px; border-radius:12px; font-size:28px; }
  .cg-home .cg-header>[data-open-cart] { grid-column:2; margin:0; min-block-size:44px; inline-size:44px; padding:5px; }
  .cg-home .cg-header>[data-open-cart] b { inset-inline-start:25px; }
  .cgh-header-strip { margin-inline:-16px; border-radius:0 0 12px 12px; font-size:11px; padding-block:6px; }
  .cg-home .cg-search { grid-row:3; grid-column:1/-1; inline-size:100%; }.cg-home .cg-search input { font-size:16px; padding-block:10px; }.cg-home .cgh-tracking { display:none; }
  .cg-home .cg-main { padding:14px 16px 24px; }.cg-home .cg-steps { margin-block-end:16px; gap:8px; }.cg-home .cg-steps li { font-size:11px; }.cg-home .cg-steps li span { inline-size:28px; block-size:28px; }.cg-home .cg-steps li:not(:last-child)::after { inset-block-start:14px; }
  .cg-home h2 { font-size:19px; }.cg-home .cg-section-head { gap:8px; margin-block-end:12px; }.cgh-text-button { font-size:12px !important; }
  .cgh-category-list { display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x proximity; padding:7px 5px 4px; margin-inline:-5px; scrollbar-width:none; }
  .cgh-category-list::-webkit-scrollbar { display:none; }
  .cgh-category { flex:0 0 78px; scroll-snap-align:start; font-size:11px !important; gap:6px; padding:4px 1px; }.cgh-category-image { inline-size:72px; }.cgh-category small { display:none; }.cgh-category>span:last-of-type { min-block-size:36px; }
  .cgh-category-list.is-expanded { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px 8px; overflow:visible; }.cgh-category-list.is-expanded .cgh-category { inline-size:100%; }.cgh-category-list.is-expanded .cgh-category-image { inline-size:min(72px,100%); }
  .cgh-categories { margin-block-end:20px; }.cgh-banner { grid-template-columns:minmax(0,1fr) 96px; gap:8px; padding:18px 16px; border-radius:16px; margin-block-end:26px; }.cgh-banner h2 { font-size:20px; margin-block:0 6px; }.cgh-banner-copy>.cg-eyebrow,.cgh-banner-copy>a,.cgh-banner-seal { display:none; }.cgh-banner-copy>p:not(.cg-eyebrow) { font-size:12px; line-height:1.9; }.cgh-banner-art { min-block-size:106px; }.cgh-banner-art>img { inline-size:76px; max-inline-size:none; margin:0; position:absolute; }.cgh-banner-art>img:nth-of-type(1) { transform:translate(15px,15px); z-index:2; }.cgh-banner-art>img:nth-of-type(2) { transform:translate(-14px,-14px); }.cgh-banner-art>img:nth-of-type(3) { display:none; }.cgh-banner-orbit { inline-size:120px; }
  .cgh-products-heading .cg-eyebrow { display:none; }.cg-home .cgh-products-heading h2 { font-size:18px; }.cg-home #cg-result-count { font-size:11px; white-space:nowrap; }
  .cg-home .cg-filters { gap:12px; padding:4px 12px 14px; }.cg-home .cg-filters label:not(.cg-checkbox) { min-inline-size:130px; }.cg-home .cg-filters select { font-size:16px; }.cg-home .cg-filters>button { margin-inline-start:auto; }
  .cg-home .cg-catalog-note { font-size:12px; line-height:1.85; margin-block:12px 16px; }
  .cg-home .cg-products { gap:12px; }
  .cg-home .cg-product-image { margin:8px 8px 0; border-radius:10px; }
  .cg-home .cg-product-info { padding:10px; gap:5px; }
  .cg-home .cg-product h3 { font-size:13px; min-block-size:48px; }
  .cg-home .cg-product-info>.cgh-product-brand { font-size:11px; min-block-size:19px; }
  .cg-home .cg-product-price { font-size:15px; flex-direction:column; align-items:flex-start; gap:0; }
  .cg-home .cg-product-price small { font-size:11px; }
  .cgh-stock-note { font-size:11px; }
  .cgh-rating { font-size:12px; }.cgh-rating small { font-size:11px; }
  .cgh-product-meta { gap:6px; }
  .cg-home .cgh-add { inline-size:44px; min-inline-size:44px; }
  .cgh-product-buy { gap:6px; padding-block-start:8px; }
  .cgh-how { grid-template-columns:1fr; gap:20px; margin-block-start:32px; }.cgh-how>div { max-inline-size:330px; }.cg-home .cg-footer { padding:20px 16px; }
  .cgh-mobile-nav { position:fixed; z-index:11; inset-inline:0; inset-block-end:0; display:grid; grid-template-columns:repeat(4,1fr); background:var(--shop-surface); border-block-start:1px solid var(--shop-line); padding:5px 8px max(5px,env(safe-area-inset-bottom)); }
  .cgh-mobile-nav :is(a,button) { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; min-block-size:51px; border:0; background:transparent; color:var(--shop-muted); font-size:11px; border-radius:8px; }.cgh-mobile-nav i { font-size:23px; }.cgh-mobile-nav [aria-current] { color:var(--cg-link,var(--shop-primary-strong)); font-weight:700; }.cgh-mobile-nav :is(a,button):active { background:var(--shop-primary-faint); }
  .cg-home .cg-mobile-cart { inset-block-end:calc(62px + env(safe-area-inset-bottom)); padding:10px 16px; border-radius:18px 18px 0 0; box-shadow:0 -5px 20px rgb(var(--shop-shadow-color) / .05); }.cg-home .cg-mobile-cart>.cg-button { min-inline-size:142px; font-size:12px; }.cg-home .cg-toast { inset-block-end:calc(155px + env(safe-area-inset-bottom)); }.cg-home .cg-dialog { max-block-size:88dvh; }
}
@media(max-width:360px) { .cg-home .cg-brand h1 { font-size:15px; }.cg-home .cg-brand-mark { inline-size:36px; block-size:36px; }.cgh-banner { grid-template-columns:1fr 72px; padding:14px 12px; }.cgh-banner h2 { font-size:18px; }.cg-home .cg-products { gap:8px; }.cg-home .cg-product-info { padding:8px; }.cg-home .cg-product-price { font-size:13px; }.cgh-category-list.is-expanded { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(prefers-reduced-motion:reduce) { html:has(body.cg-home),.cg-home,.cg-home * { scroll-behavior:auto !important; transition:none !important; } }
/* Keep the first product row close to the category shortcuts on both layouts. */
@media(min-width:761px) {
  .cg-home .cg-steps { margin-block-end:22px; }
  .cg-home .cg-steps li { flex-direction:row; gap:8px; }
  .cg-home .cg-steps li::after { display:none; }
  .cgh-categories .cg-section-head { margin-block-end:10px; }
  .cgh-category-image { max-inline-size:96px; }
  .cgh-category { gap:5px; }
  .cgh-categories { margin-block-end:24px; }
  .cgh-banner { padding-block:18px; margin-block-end:28px; }
  .cgh-banner-art { min-block-size:142px; }
  .cgh-banner-art>img { max-inline-size:132px; }
  .cgh-filter-panel[open]>summary { padding-block:8px; }
}
@media(max-width:760px) {
  .cgh-categories .cg-section-head { margin-block-end:2px; }
  .cgh-category-list { padding-block:5px 0; }
  .cgh-category { gap:4px; line-height:1.6; }
  .cgh-categories { margin-block-end:12px; }
  .cgh-banner { padding-block:12px; margin-block-end:18px; }
  .cgh-banner-art { min-block-size:84px; }
  .cgh-banner h2 { font-size:19px; }
  .cgh-products-heading { margin-block-end:8px !important; }
  .cg-home .cg-catalog-note { margin-block:8px 12px; }
  .cg-home:not(.cgh-has-cart) .cg-mobile-cart { display:none; }
  .cg-home:not(.cgh-has-cart) { padding-block-end:74px !important; }
}

/* A richer homepage, using the existing palette in light and dark modes. */
.cg-home {
  --cgh-violet:#9b78cf;
  --cgh-blue:#639bc7;
  --cgh-pink:#d77da2;
  --cgh-orange:#e4a160;
  --cgh-category-surface:color-mix(in srgb,var(--cgh-violet) 7%,var(--shop-surface));
  --cgh-filter-surface:color-mix(in srgb,var(--cgh-blue) 8%,var(--shop-surface));
}
.cg-home .cg-header { border-block-start:4px solid var(--shop-primary); padding-block-end:16px; box-shadow:0 4px 24px rgb(var(--shop-shadow-color) / .04); }
.cgh-header-strip { background:var(--shop-primary-faint); color:var(--cg-link,var(--shop-primary-strong)); border-inline-start:4px solid var(--shop-accent); }
.cgh-categories {
  position:relative; isolation:isolate;
  padding:20px; border:1px solid color-mix(in srgb,var(--cgh-violet) 25%,var(--shop-line)); border-radius:var(--cgh-radius);
  background-color:var(--cgh-category-surface);
}
.cgh-categories::before { content:""; position:absolute; inset:0; z-index:-1; border-radius:inherit; pointer-events:none; background:url('../assets/mlmgram-lilac-tile-v3.webp') center / 40% auto repeat; opacity:.4; }
html[data-shop-mode-resolved=dark] .cgh-categories::before { filter:invert(1) hue-rotate(180deg); opacity:.14; mix-blend-mode:screen; }
.cgh-category-image { box-shadow:0 5px 12px rgb(var(--shop-shadow-color) / .06); }
.cgh-banner { background:linear-gradient(110deg,color-mix(in srgb,var(--cgh-pink) 16%,var(--shop-surface)),color-mix(in srgb,var(--cgh-orange) 12%,var(--shop-surface)) 55%,var(--shop-primary-faint)); border-color:color-mix(in srgb,var(--cgh-orange) 30%,var(--shop-line)); border-inline-start:5px solid var(--shop-primary); box-shadow:var(--shop-shadow-sm); }
.cgh-banner h2 { font-weight:850; }
.cgh-banner-copy>.cgh-text-button { background:var(--shop-primary); color:var(--shop-on-primary); border-radius:10px; padding:8px 18px; text-decoration:none; }
.cgh-banner-copy>.cgh-text-button:hover { background:var(--shop-primary-strong); }
.cgh-banner-orbit { border:14px solid color-mix(in srgb,var(--cgh-pink) 15%,transparent); outline:1px solid color-mix(in srgb,var(--cgh-orange) 32%,transparent); outline-offset:12px; }
.cgh-products-heading { padding-inline-start:14px; border-inline-start:4px solid var(--shop-accent); }
.cgh-filter-panel {
  background-color:var(--cgh-filter-surface);
  background-image:repeating-linear-gradient(135deg,transparent 0 12px,color-mix(in srgb,var(--cgh-blue) 6%,transparent) 12px 13px,transparent 13px 24px);
  border-color:color-mix(in srgb,var(--cgh-blue) 30%,var(--shop-line));
}
.cg-home .cgh-filter-panel select { background-color:var(--shop-surface); }
.cg-home .cgh-filter-panel .cg-filters { background:transparent; }
.cg-home .cg-product:hover { border-color:var(--shop-primary); box-shadow:0 8px 24px rgb(var(--shop-shadow-color) / .1); }
.cg-home .cgh-add { box-shadow:0 4px 10px rgb(var(--shop-primary-rgb) / .15); }
.cgh-how { padding:26px; border:1px solid var(--shop-line-strong); border-radius:var(--cgh-radius); background:var(--shop-primary-faint); scroll-margin-block-start:24px; }
.cgh-how>h2 { grid-column:1/-1; font-size:21px; margin:0; }
.cgh-how i { background:var(--shop-surface); color:var(--cg-link,var(--shop-primary-strong)); border:1px solid var(--shop-line); }
.cgh-footer { position:relative; isolation:isolate; border-block-start:4px solid var(--shop-primary); background:color-mix(in srgb,var(--cgh-blue) 8%,var(--shop-surface)); color:var(--shop-text); }
.cgh-footer::before { content:""; position:absolute; inset-block-start:-4px; inset-inline-start:0; inline-size:24%; block-size:4px; background:var(--shop-accent); }
.cgh-footer::after { content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; background:url('../assets/mlmgram-network-blue-v1.webp') center / cover no-repeat; opacity:.4; }
html[data-shop-mode-resolved=dark] .cgh-footer::after { filter:invert(1) hue-rotate(180deg); opacity:.1; mix-blend-mode:screen; }
.cgh-footer-inner { max-inline-size:1288px; padding:36px 24px 20px; margin-inline:auto; }
.cgh-footer-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-block-end:28px; border-block-end:1px solid var(--shop-line-strong); }
.cgh-footer .cg-brand { gap:12px; }
.cgh-footer .cg-brand b { font-size:22px; }
.cgh-footer .cg-brand small { font-size:12px; }
.cgh-back-top { display:inline-flex; align-items:center; gap:12px; min-block-size:44px; padding:8px 14px; border:1px solid var(--shop-line-strong); border-radius:10px; background:var(--shop-surface); font-size:12px; color:var(--shop-text); }
.cgh-back-top i { font-size:20px; }
.cgh-footer-grid { display:grid; grid-template-columns:1.2fr .65fr 1.2fr; gap:56px; padding-block:32px; }
.cgh-footer-grid>* { min-inline-size:0; }
.cgh-footer-grid h2 { font-size:16px; margin-block:0 14px; line-height:1.8; }
.cgh-footer-about h2 { font-size:28px; line-height:1.7; color:var(--cg-link,var(--shop-primary-strong)); letter-spacing:-.5px; }
.cgh-footer-about>p { font-size:13px; line-height:2.1; color:var(--shop-muted); max-inline-size:42ch; }
.cgh-footer-tracking { display:flex; align-items:center; gap:12px; padding:14px; margin-block-start:22px; border:1px solid var(--shop-line-strong); border-radius:12px; background:var(--shop-surface); color:var(--shop-text); }
.cgh-footer-tracking>i:first-child { font-size:28px; color:var(--cg-link,var(--shop-primary-strong)); }
.cgh-footer-tracking>i:last-child { margin-inline-start:auto; font-size:20px; }
.cgh-footer-tracking strong,.cgh-footer-tracking small { display:block; }
.cgh-footer-tracking strong { font-size:13px; }.cgh-footer-tracking small { font-size:12px; color:var(--shop-muted); }
.cgh-footer-links { display:flex; flex-direction:column; align-items:flex-start; }
.cgh-footer-links :is(a,button) { display:flex; align-items:center; min-block-size:44px; max-inline-size:100%; padding:6px 0; border:0; border-radius:4px; background:transparent; color:var(--shop-text); font-size:13px; text-align:start; cursor:pointer; }
.cgh-footer-links :is(a,button):hover { color:var(--cg-link,var(--shop-primary-strong)); text-decoration:underline; text-underline-offset:5px; }
.cgh-footer-help details { border-block-end:1px solid var(--shop-line-strong); }
.cgh-footer-help summary { display:flex; align-items:center; justify-content:space-between; gap:12px; min-block-size:56px; padding-block:12px; font-size:13px; line-height:1.9; list-style:none; cursor:pointer; }
.cgh-footer-help summary::-webkit-details-marker { display:none; }
.cgh-footer-help summary i { flex-shrink:0; font-size:20px; color:var(--cg-link,var(--shop-primary-strong)); }
.cgh-footer-help details[open] summary i { transform:rotate(45deg); }
.cgh-footer-help details p { color:var(--shop-muted); font-size:13px; line-height:2.1; padding-block:0 16px; }
.cgh-footer-help p a { color:var(--cg-link,var(--shop-primary-strong)); text-decoration:underline; text-underline-offset:4px; }
.cgh-footer :is(a,button,summary):focus-visible { outline:3px solid var(--shop-primary); outline-offset:4px; border-radius:6px; }
.cgh-footer :is(.cgh-back-top,.cgh-footer-tracking):hover { border-color:var(--shop-primary); background:var(--shop-primary-soft); }
.cgh-footer :is(a,button,summary):active { background:var(--shop-primary-soft); }
.cgh-footer-bottom { display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px 24px; border-block-start:1px solid var(--shop-line-strong); padding-block-start:20px; color:var(--shop-muted); font-size:12px; }
.cgh-footer-bottom b { font-weight:650; }
@media(max-width:1100px) { .cgh-footer-grid { gap:28px; } }
@media(max-width:760px) {
  .cg-home .cg-header { padding-block-end:12px; }
  .cgh-categories { padding:12px; margin-inline:-2px; }
  .cgh-banner { border-inline-start-width:4px; }
  .cgh-products-heading { padding-inline-start:10px; }
  .cgh-how { padding:20px; gap:20px; }
  .cgh-how>h2 { font-size:18px; }
  .cgh-footer-inner { padding:24px 20px 20px; }
  .cgh-footer-heading { gap:12px; padding-block-end:22px; }
  .cgh-footer .cg-brand b { font-size:19px; }.cgh-footer .cg-brand small { font-size:11px; }
  .cgh-back-top { gap:6px; padding:8px 10px; font-size:11px; }
  .cgh-footer-grid { grid-template-columns:1fr 1fr; gap:26px 20px; padding-block:24px; }
  .cgh-footer-about { grid-column:1/-1; }
  .cgh-footer-about h2 { font-size:25px; }.cgh-footer-about h2 br { display:none; }
  .cgh-footer-about>p { max-inline-size:none; }
  .cgh-footer-tracking { margin-block-start:16px; }
  .cgh-footer-links { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; gap:0 12px; }
  .cgh-footer-links h2 { grid-column:1/-1; margin-block-end:8px; }
  .cgh-footer-help { grid-column:1/-1; }
  .cgh-footer-bottom { font-size:11px; line-height:2; }
}

/* Match the public storefront navigation to MLMGram brand green. */
.cgh-mobile-nav :is(a,button){color:#0a7846}
.cgh-mobile-nav [aria-current=page],.cgh-mobile-nav :is(a,button):active{background:#0a7846;color:#fff}
/* Catalog continuation of Nova: existing product photography, calm green surfaces. */
body.cg-home.mlmg-unified-page .cg-main { padding-block-start:24px; }
.cg-home .cgh-intro { margin-block:0 28px; }
.cg-home .cgh-intro h1 { margin:0 0 8px; font-size:28px; font-weight:800; line-height:1.6; color:var(--shop-text); }
.cg-home .cgh-intro p { margin:0; font-size:14px; line-height:1.9; color:var(--shop-muted); }
body.cg-home.mlmg-unified-page .cg-product { border-radius:20px; box-shadow:0 4px 14px #18393205; }
body.cg-home.mlmg-unified-page .cg-product:hover { border-color:#7bad91; box-shadow:0 7px 24px #1839320b; }
body.cg-home.mlmg-unified-page .cg-product-image { border-radius:14px; }
body.cg-home.mlmg-unified-page .cgh-add { border-radius:50%; box-shadow:none; }
body.cg-home.mlmg-unified-page .cg-catalog-note { margin-block:12px 20px; }
body.cg-home.mlmg-unified-page .cg-load-more { border-radius:24px; min-inline-size:200px; }
@media(max-width:760px) {
  body.cg-home.mlmg-unified-page .cg-main { padding-block:18px 24px; }
  .cg-home .cgh-intro { margin-block-end:18px; }
  .cg-home .cgh-intro h1 { font-size:22px; }
  .cg-home .cgh-intro p { font-size:12px; }
  body.cg-home.mlmg-unified-page .cg-product { border-radius:16px; }
  body.cg-home.mlmg-unified-page .cg-product h3 { font-size:13px; line-height:1.8; }
  body.cg-home.mlmg-unified-page .cg-product-price { font-size:16px; }
}

/* Central discovery scene: Nova's tilted emblems, layered colour and image cards.
   Design read: lively RTL commerce; variance 7 / motion 5 / density 5.
   Existing category artwork, native controls, no new assets or dependencies. */
body.cg-home {
  --cgh-scene-mint:color-mix(in srgb,#b9e7d7 55%,var(--shop-surface));
  --cgh-scene-peach:color-mix(in srgb,#f7d9bd 56%,var(--shop-surface));
  --cgh-scene-blue:color-mix(in srgb,#d1e6f7 52%,var(--shop-surface));
}
body.cg-home .cgh-categories {
  padding:26px 26px 18px; margin-inline:0; margin-block-end:36px;
  border:1px solid color-mix(in srgb,#90baa7 28%,var(--shop-line));
  border-radius:30px 30px 10px 30px;
  background:linear-gradient(110deg,var(--cgh-scene-peach),var(--shop-surface-2) 48%,var(--cgh-scene-mint));
}
body.cg-home .cgh-categories::before {
  display:block; inset:1px; background:none; opacity:1;
  border:1px solid color-mix(in srgb,var(--shop-surface) 60%,transparent);
  filter:none; mix-blend-mode:normal;
}
body.cg-home .cgh-category-heading { margin-block-end:16px; gap:20px; }
.cgh-heading-lockup { display:flex; align-items:center; gap:16px; min-inline-size:0; }
body.cg-home .cgh-heading-lockup h2 { margin:0; font-size:24px; line-height:1.7; letter-spacing:-.6px; }
.cgh-heading-text { position:relative; }
.cgh-heading-text::after { content:""; position:absolute; inset-inline-start:0; inset-block-end:-3px; inline-size:35px; block-size:3px; border-radius:4px; background:var(--shop-primary); }
.cg-section-head:is(:hover,:focus-within) .cgh-heading-text::after { inline-size:65px; }
.cgh-heading-emblem {
  display:grid; place-items:center; flex:0 0 46px; inline-size:46px; block-size:46px;
  border-radius:14px 14px 5px 14px; background:var(--shop-primary); color:var(--shop-on-primary);
  box-shadow:4px 4px 0 color-mix(in srgb,var(--shop-primary) 22%,var(--shop-surface));
  transform:rotate(-6deg);
}
.cgh-heading-emblem i { font-size:25px; transform:rotate(6deg); }
body.cg-home .cgh-category-list {
  display:grid; grid-auto-flow:column; grid-template-columns:none;
  grid-auto-columns:140px; gap:12px; overflow-x:auto; overscroll-behavior-inline:contain;
  scroll-snap-type:x proximity; padding:8px 5px 14px; margin-inline:-5px;
  scrollbar-width:thin; scrollbar-color:color-mix(in srgb,var(--shop-primary) 28%,transparent) transparent;
}
body.cg-home .cgh-category {
  --cgh-card-tint:#eacdc7; position:relative; isolation:isolate; display:grid;
  grid-template-columns:minmax(0,1fr) 24px; grid-template-rows:auto 1fr auto;
  align-items:start; justify-items:start; gap:5px 3px; min-inline-size:0;
  padding:12px 11px 11px; border:1px solid color-mix(in srgb,var(--cgh-card-tint) 55%,var(--shop-line));
  border-radius:20px 20px 7px 20px; color:var(--shop-text); text-align:start;
  background:var(--shop-surface); box-shadow:0 4px 0 color-mix(in srgb,var(--cgh-card-tint) 48%,var(--shop-surface));
  font-size:13px!important; line-height:1.75; scroll-snap-align:start;
  transition:transform .24s,box-shadow .24s,border-color .24s,background-color .24s;
}
body.cg-home .cgh-category:nth-child(4n+2) { --cgh-card-tint:#c5dbe9; }
body.cg-home .cgh-category:nth-child(4n+3) { --cgh-card-tint:#e8d8a6; }
body.cg-home .cgh-category:nth-child(4n) { --cgh-card-tint:#c3ddd0; }
body.cg-home .cgh-category-image {
  grid-column:1/-1; inline-size:100%; max-inline-size:none; aspect-ratio:1.15;
  outline:none; box-shadow:none;
}
body.cg-home .cgh-category-image img { inline-size:100%; block-size:100%; border-radius:14px; object-fit:contain; transition:transform .3s; }
body.cg-home .cgh-category-name { grid-column:1/-1; min-block-size:3.5em; text-align:start; align-content:center; }
body.cg-home .cgh-category small { display:block; font-size:11px; align-self:center; line-height:1.8; }
.cgh-category-arrow { display:grid; place-items:center; align-self:center; inline-size:24px; block-size:24px; background:var(--shop-primary-faint); color:var(--cg-link,var(--shop-primary-strong)); border-radius:8px 8px 3px 8px; font-size:16px; transition:transform .24s; }
body.cg-home .cgh-category[aria-pressed=true] { border-color:var(--shop-primary); background:var(--shop-primary-faint); box-shadow:0 4px 0 var(--shop-primary); }
body.cg-home .cgh-category[aria-pressed=true] .cgh-category-arrow { background:var(--shop-primary); color:var(--shop-on-primary); }
body.cg-home .cgh-category .cgh-category-check { inset-inline-end:-4px; inset-block-end:-4px; z-index:1; }
body.cg-home .cgh-category-controls button { border-color:color-mix(in srgb,var(--shop-primary) 25%,var(--shop-line)); background:var(--shop-surface); border-radius:13px 13px 5px 13px; }
body.cg-home .cgh-category:focus-visible { outline:3px solid var(--shop-primary); outline-offset:3px; }
body.cg-home .cgh-category:active { transform:translateY(2px); box-shadow:0 1px 0 var(--shop-primary); }
body.cg-home .cgh-products-heading { border:0; padding:0; margin-block-end:20px!important; gap:20px; }
.cgh-products-heading .cgh-heading-emblem { background:#286fa9; color:#fff; box-shadow:4px 4px 0 var(--cgh-scene-blue); }
.cgh-products-heading .cgh-heading-text::after { background:#286fa9; }
body.cg-home #cg-result-count { flex-shrink:0; margin:0; padding:8px 15px; border:1px solid var(--shop-line); border-radius:14px 5px 14px 5px; background:var(--shop-surface); color:var(--cg-link,var(--shop-primary-strong)); font-size:13px; font-weight:700; white-space:nowrap; }
body.cg-home .cgh-filter-panel { overflow:clip; border:1px solid color-mix(in srgb,#a4c3da 45%,var(--shop-line)); border-radius:22px 8px 22px 22px; background:linear-gradient(110deg,var(--shop-surface),var(--cgh-scene-blue)); margin-block-end:14px; }
body.cg-home .cgh-filter-panel summary { min-block-size:68px; padding:12px 20px; gap:16px; font-size:14px; }
body.cg-home .cgh-filter-panel summary:focus-visible { outline-offset:-4px; }
body.cg-home .cgh-filter-panel[open]>summary { padding-block:12px; }
.cgh-filter-title { min-inline-size:0; font-weight:700; }
.cgh-filter-icon { display:grid; place-items:center; flex-shrink:0; inline-size:36px; block-size:36px; border:1px solid var(--shop-line); border-radius:11px 11px 4px 11px; background:var(--shop-surface); color:#286fa9; }
body.cg-home .cgh-filter-panel summary .cgh-filter-disclosure { gap:14px; color:var(--shop-muted); font-size:12px; }
.cgh-filter-disclosure>i { display:grid; place-items:center; flex-shrink:0; inline-size:30px; block-size:30px; border:1px solid var(--shop-line); border-radius:50%; background:var(--shop-surface); transition:transform .24s; }
.cgh-filter-panel[open] .cgh-filter-disclosure>i { transform:rotate(180deg); }
body.cg-home .cgh-filter-panel .cg-filters { display:block; margin:0; padding:0 20px 10px; background:transparent; border:0; }
.cgh-filter-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding-block:6px 18px; }
body.cg-home .cgh-filter-fields label { min-inline-size:0!important; gap:8px; color:var(--shop-text); font-size:12px; font-weight:600; }
body.cg-home .cgh-filter-fields select { min-block-size:48px; border:1px solid color-mix(in srgb,#91ac9c 60%,var(--shop-line)); border-radius:12px; padding-inline:12px 30px; font-size:14px; font-weight:400; background-color:var(--shop-surface); box-shadow:0 2px 0 #18393205; cursor:pointer; }
body.cg-home .cgh-filter-fields select:focus-visible { outline:3px solid var(--shop-primary); outline-offset:2px; }
body.cg-home .cgh-filter-fields select:disabled { opacity:.55; cursor:not-allowed; }
.cgh-filter-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; border-block-start:1px solid color-mix(in srgb,#a4c3da 30%,var(--shop-line)); padding-block-start:8px; }
body.cg-home .cgh-filter-actions .cg-checkbox { gap:10px; margin:0; font-size:13px; color:var(--shop-text); }
body.cg-home .cgh-filter-actions input { appearance:none; position:relative; flex:0 0 38px; inline-size:38px; block-size:22px; margin:0; border:1px solid #799487; border-radius:20px; background:var(--shop-surface); cursor:pointer; transition:background-color .2s; }
.cgh-filter-actions input::before { content:""; position:absolute; inline-size:14px; block-size:14px; inset-block-start:3px; inset-inline-start:3px; background:#60796c; border-radius:50%; transition:transform .2s; }
body.cg-home .cgh-filter-actions input:checked { background:var(--shop-primary); border-color:var(--shop-primary); }
.cgh-filter-actions input:checked::before { background:var(--shop-on-primary); transform:translateX(-16px); }
.cgh-filter-actions input:focus-visible { outline:3px solid var(--shop-primary); outline-offset:3px; }
body.cg-home #cg-reset-filters { padding:5px 8px; border-radius:8px; color:var(--shop-muted); font-size:12px!important; }
.cgh-show-results { display:none; }
body.cg-home .cgh-active-filters { gap:8px; margin-block:14px; }
body.cg-home .cgh-active-filters button { border-radius:12px 12px 4px 12px; background:var(--shop-primary-faint); color:var(--cg-link,var(--shop-primary-strong)); }
@media(hover:hover) {
  body.cg-home .cgh-category:hover { transform:translateY(-4px); border-color:var(--shop-primary); box-shadow:0 6px 0 color-mix(in srgb,var(--shop-primary) 22%,var(--shop-surface)); }
  body.cg-home.mlmg-unified-page .cgh-category:hover img,body.cg-home .cgh-category:hover img { transform:translateY(-3px) rotate(-3deg) scale(1.03); }
  .cgh-category:hover .cgh-category-arrow { transform:translateX(-2px); }
  body.cg-home .cgh-filter-panel summary:hover { background:color-mix(in srgb,var(--shop-surface) 35%,transparent); }
  body.cg-home #cg-reset-filters:hover { background:var(--shop-surface); color:var(--shop-text); }
}
@media(prefers-reduced-motion:no-preference) {
  .cg-section-head.is-heading-visible .cgh-heading-lockup { animation:cgh-heading-arrive .65s cubic-bezier(.215,.61,.355,1); }
  .cg-section-head:is(:hover,:focus-within) .cgh-heading-emblem { animation:cgh-emblem-pop .65s ease both; }
  .cgh-heading-text::after { transition:inline-size .35s; }
  body.cg-home .cgh-category { animation:cgh-choice-arrive .48s backwards; animation-delay:calc(var(--cgh-order,0) * 35ms); }
  .cgh-filter-panel[open] .cgh-filter-fields { animation:cgh-choice-arrive .24s both; }
}
@keyframes cgh-heading-arrive { from { opacity:.65; transform:translateY(18px); } to { opacity:1; transform:translateY(0); } }
@keyframes cgh-emblem-pop { 0%,100% { transform:rotate(-6deg); } 40% { transform:rotate(8deg) translateY(-3px); } 70% { transform:rotate(-9deg); } }
@keyframes cgh-choice-arrive { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
@media(max-width:760px) {
  body.cg-home .cgh-categories { padding:18px 14px 12px; border-radius:24px 24px 8px 24px; margin-block-end:28px; }
  body.cg-home .cgh-category-heading { gap:10px; margin-block-end:10px; }
  .cgh-heading-lockup { gap:11px; }
  .cgh-heading-emblem { flex-basis:34px; inline-size:34px; block-size:34px; border-radius:10px 10px 4px 10px; box-shadow:3px 3px 0 color-mix(in srgb,var(--shop-primary) 22%,var(--shop-surface)); }
  .cgh-heading-emblem i { font-size:21px; }
  body.cg-home .cgh-heading-lockup h2 { font-size:17px; letter-spacing:-.4px; }
  body.cg-home .cgh-category-heading [data-categories-toggle] { flex-shrink:0; gap:2px; font-size:11px!important; }
  body.cg-home .cgh-category-list { grid-auto-columns:112px; gap:10px; padding-block:8px 11px; scrollbar-width:none; }
  body.cg-home .cgh-category { inline-size:auto; padding:8px; border-radius:16px 16px 5px 16px; font-size:12px!important; gap:4px 2px; }
  body.cg-home .cgh-category-image { inline-size:100%; }
  body.cg-home .cgh-category-image img { border-radius:11px; }
  body.cg-home .cgh-category small { font-size:10px; }
  body.cg-home .cgh-category-list.is-expanded { grid-auto-flow:row; grid-auto-columns:auto; grid-template-columns:repeat(3,minmax(0,1fr)); overflow:visible; }
  body.cg-home .cgh-category-list.is-expanded .cgh-category-image { inline-size:100%; }
  body.cg-home .cgh-products-heading { align-items:center; gap:12px; margin-block-end:17px!important; flex-wrap:wrap; }
  body.cg-home .cgh-products-heading h2 { font-size:17px; }
  .cgh-products-heading .cgh-heading-lockup { flex:1 1 220px; }
  body.cg-home #cg-result-count { padding:6px 9px; font-size:11px; border-radius:10px 4px 10px 4px; margin-inline-start:auto; }
  body.cg-home .cgh-filter-panel { border-radius:18px 6px 18px 18px; }
  body.cg-home .cgh-filter-panel summary { min-block-size:60px; padding:10px 12px; gap:8px; font-size:13px; }
  .cgh-filter-title { gap:7px!important; }
  .cgh-filter-icon { inline-size:30px; block-size:30px; }
  #cgh-filter-hint { display:none; }
  body.cg-home .cgh-filter-panel .cg-filters { padding:0 12px 14px; }
  .cgh-filter-fields { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 10px; padding-block:6px 14px; }
  .cgh-filter-fields>label:last-child { grid-column:1/-1; }
  body.cg-home .cgh-filter-fields select { font-size:16px; padding-inline:8px 22px; }
  .cgh-filter-actions { flex-wrap:wrap; gap:8px; }
  body.cg-home .cgh-filter-actions .cg-checkbox { font-size:12px; }
  body.cg-home #cg-reset-filters { padding-inline:0; font-size:11px!important; }
  .cgh-show-results { display:flex; flex:1 0 100%; align-items:center; justify-content:space-between; gap:10px; min-block-size:46px; padding:10px 14px; border:0; border-radius:12px 12px 5px 12px; background:var(--shop-primary); color:var(--shop-on-primary); font-family:inherit; font-size:13px; font-weight:700; line-height:1.8; }
  .cgh-show-results i { font-size:20px; }
  .cgh-show-results:active { background:var(--shop-primary-strong); }
  .cgh-show-results:focus-visible { outline:3px solid var(--shop-primary); outline-offset:3px; }
}
@media(max-width:360px) {
  body.cg-home .cgh-category-list.is-expanded { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.cg-home .cgh-category-heading { flex-wrap:wrap; }
  body.cg-home .cgh-category-heading [data-categories-toggle] { margin-inline-start:auto; }
}
@media(forced-colors:active) {
  body.cg-home .cgh-filter-actions input { appearance:auto; }
  .cgh-filter-actions input::before { display:none; }
  body.cg-home .cgh-category[aria-pressed=true] { outline:2px solid Highlight; }
}

/* Approved mint/sky category scene: two rows, complete mobile columns. */
body.cg-home .cgh-categories { --cgh-bleed:16px; margin-block-start:12px; padding:18px 12px; border:0; border-radius:0; background:none; overflow:visible; }
body.cg-home .cgh-categories::before,body.cg-home .cgh-categories::after { content:""; position:absolute; inset:0 calc(-1 * var(--cgh-bleed)) -4px; z-index:-1; pointer-events:none; border:0; border-radius:0; clip-path:polygon(0 2%,100% 0,100% 98%,0 100%); }
body.cg-home .cgh-categories::before { background:linear-gradient(155deg,#cce9dc 0 26%,#d6e9f4 26% 53%,#e0ebca 53% 80%,#f4ebd2 80%); opacity:1; filter:none; mix-blend-mode:normal; }
body.cg-home .cgh-categories::after { background:linear-gradient(155deg,transparent 22%,#ffffff8a 26%,transparent 31%,transparent 49%,#ffffff82 53%,transparent 59%); opacity:.4; }
.cgh-crest-layer { position:absolute; inset:-48px calc(-1 * var(--cgh-bleed)) auto; height:240px; overflow:hidden; pointer-events:none; z-index:-1; }
.cgh-crest { position:absolute; top:10px; left:60px; width:200px; height:200px; background:#cce9dc; mask:var(--cgh-sun-mask) no-repeat center / 100% 100%; -webkit-mask:var(--cgh-sun-mask) no-repeat center / 100% 100%; }
body.cg-home .cgh-category-heading { padding-block:6px 12px; border-bottom:1px solid #ffffffa6; margin-block-end:12px; }
body.cg-home .cgh-category-heading [data-clear-home-category] { flex-shrink:0; white-space:nowrap; }
body.cg-home .cgh-category-list { grid-template-rows:repeat(2,auto); grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:calc((100% - 32px)/5); gap:8px; padding:6px 0 9px; margin-inline:0; scroll-padding-inline:0; scroll-snap-type:x mandatory; }
body.cg-home .cgh-category { display:flex; flex-direction:column; align-items:center; justify-content:start; gap:1px; padding:10px 7px 8px; border-radius:15px 15px 5px 15px; text-align:center; animation:none; box-shadow:0 3px 0 color-mix(in srgb,var(--cgh-card-tint) 48%,var(--shop-surface)); }
body.cg-home .cgh-category::before { content:""; position:absolute; top:0; right:13px; left:13px; height:3px; background:var(--cgh-card-tint); border-radius:0 0 6px 6px; }
body.cg-home .cgh-category-image { inline-size:90px; block-size:90px; max-inline-size:100%; aspect-ratio:1; flex-shrink:0; }
body.cg-home .cgh-category-name { display:flex; align-items:center; justify-content:center; inline-size:100%; min-block-size:37.7px; font-size:13px; line-height:1.45; text-align:center; }
body.cg-home .cgh-category small { font-size:11px; line-height:1.5; }
body.cg-home .cgh-category:focus-visible { outline-offset:-3px; }
body.cg-home .cgh-category-list:focus-visible { outline:2px solid var(--shop-primary); outline-offset:2px; }
body.cg-home .cgh-category-controls:not([hidden]) { display:flex; align-items:center; gap:8px; margin-top:3px; padding-top:6px; border-top:1px solid #ffffffa6; }
body.cg-home .cgh-category-controls>span { margin-inline-end:auto; font-size:10px; color:var(--shop-muted); }
body.cg-home .cgh-category-controls button { display:grid; place-items:center; inline-size:44px; block-size:44px; padding:0; border:1px solid var(--shop-line); color:var(--cg-link,var(--shop-primary-strong)); }
body.cg-home .cgh-category-controls i { font-size:24px; }
body.cg-home .cgh-category-controls button:disabled { opacity:.35; cursor:default; }
body.cg-home .cgh-category-controls button:focus-visible { outline:3px solid var(--shop-primary); outline-offset:2px; }
@media(max-width:760px) {
  body.cg-home .cgh-categories { padding:12px 12px 18px; }
  body.cg-home .cgh-category-heading { flex-wrap:nowrap; gap:8px; }
  body.cg-home .cgh-category-heading [data-clear-home-category] { font-size:10px!important; }
  body.cg-home .cgh-category-heading h2 { font-size:16px; }
  body.cg-home .cgh-category-list { grid-auto-columns:calc((100% - 16px)/3); }
  body.cg-home .cgh-category { padding:8px 4px 6px; }
  body.cg-home .cgh-category-image { inline-size:72px; block-size:72px; }
  body.cg-home .cgh-category-name { font-size:11px; min-block-size:31.9px; }
  body.cg-home .cgh-category small { font-size:10px; }
  .cgh-crest-layer { top:-38px; height:215px; }
  .cgh-crest { top:19px; left:-3px; width:clamp(120px,35vw,180px); height:clamp(120px,35vw,180px); }
}
@media(max-width:359px) {
  body.cg-home .cgh-categories { padding-inline:9px; }
  body.cg-home .cgh-category-heading h2 { font-size:14px; }
  body.cg-home .cgh-category-image { inline-size:64px; block-size:64px; }
  body.cg-home .cgh-category-name { font-size:10px; min-block-size:29px; }
  .cgh-crest { left:-6px; }
}
html[data-shop-mode-resolved=dark] body.cg-home .cgh-categories::before,html[data-shop-mode-resolved=dark] .cgh-crest { filter:brightness(.35) saturate(.65); }
html[data-shop-mode-resolved=dark] body.cg-home .cgh-categories::after { filter:brightness(.3); opacity:.15; }
@media(prefers-reduced-motion:no-preference) {
  .cgh-crest { animation:cgh-sun-turn 18s linear infinite; }
  body.cg-home .cgh-categories::after { animation:cgh-scene-light 8s ease-in-out infinite alternate; }
}
@keyframes cgh-sun-turn { from { rotate:0deg; } to { rotate:360deg; } }
@keyframes cgh-scene-light { from { opacity:.2; } to { opacity:.7; } }

.cgh-crest { --cgh-sun-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20120%20120%22%3E%3Cpath%20d%3D%22M60.00%200.00C61.68%20-0.00%2063.47%201.36%2065.03%202.52C66.59%203.69%2067.88%206.03%2069.35%207.00C70.81%207.97%2072.14%208.46%2073.84%208.35C75.54%208.24%2077.62%206.78%2079.53%206.34C81.45%205.89%2083.74%205.13%2085.33%205.67C86.93%206.21%2088.16%207.91%2089.13%209.55C90.09%2011.20%2090.27%2013.95%2091.12%2015.56C91.96%2017.17%2092.73%2018.49%2094.20%2019.24C95.68%2019.99%2098.02%2019.66%2099.95%2020.05C101.88%2020.44%20104.44%2020.53%20105.80%2021.57C107.16%2022.61%20107.86%2024.46%20108.12%2026.30C108.39%2028.15%20107.42%2030.75%20107.41%2032.63C107.41%2034.50%20107.23%2036.20%20108.08%2037.58C108.93%2038.96%20110.95%2039.71%20112.52%2040.88C114.09%2042.05%20116.54%2043.12%20117.50%2044.59C118.46%2046.07%20118.68%2047.96%20118.28%2049.72C117.88%2051.49%20115.97%2053.47%20115.09%2055.18C114.21%2056.89%20113.00%2058.39%20113.00%2060.00C113.00%2061.61%20114.21%2063.11%20115.09%2064.82C115.97%2066.53%20117.88%2068.51%20118.28%2070.28C118.68%2072.04%20118.46%2073.93%20117.50%2075.41C116.54%2076.88%20114.09%2077.95%20112.52%2079.12C110.95%2080.29%20108.93%2081.04%20108.08%2082.42C107.23%2083.80%20107.41%2085.50%20107.41%2087.38C107.42%2089.25%20108.39%2091.85%20108.12%2093.70C107.86%2095.54%20107.16%2097.39%20105.80%2098.43C104.44%2099.47%20101.88%2099.56%2099.95%2099.95C98.02%20100.34%2095.68%20100.01%2094.20%20100.76C92.73%20101.51%2091.96%20102.83%2091.12%20104.44C90.27%20106.05%2090.09%20108.80%2089.13%20110.45C88.16%20112.09%2086.93%20113.79%2085.33%20114.33C83.74%20114.87%2081.45%20114.11%2079.53%20113.66C77.62%20113.22%2075.54%20111.76%2073.84%20111.65C72.14%20111.54%2070.81%20112.03%2069.35%20113.00C67.88%20113.97%2066.59%20116.31%2065.03%20117.48C63.47%20118.64%2061.68%20120.00%2060.00%20120.00C58.32%20120.00%2056.53%20118.64%2054.97%20117.48C53.41%20116.31%2052.12%20113.97%2050.65%20113.00C49.19%20112.03%2047.86%20111.54%2046.16%20111.65C44.46%20111.76%2042.38%20113.22%2040.47%20113.66C38.55%20114.11%2036.26%20114.87%2034.67%20114.33C33.07%20113.79%2031.84%20112.09%2030.87%20110.45C29.91%20108.80%2029.73%20106.05%2028.88%20104.44C28.04%20102.83%2027.27%20101.51%2025.80%20100.76C24.32%20100.01%2021.98%20100.34%2020.05%2099.95C18.12%2099.56%2015.56%2099.47%2014.20%2098.43C12.84%2097.39%2012.14%2095.54%2011.88%2093.70C11.61%2091.85%2012.58%2089.25%2012.59%2087.38C12.59%2085.50%2012.77%2083.80%2011.92%2082.42C11.07%2081.04%209.05%2080.29%207.48%2079.12C5.91%2077.95%203.46%2076.88%202.50%2075.41C1.54%2073.93%201.32%2072.04%201.72%2070.28C2.12%2068.51%204.03%2066.53%204.91%2064.82C5.79%2063.11%207.00%2061.61%207.00%2060.00C7.00%2058.39%205.79%2056.89%204.91%2055.18C4.03%2053.47%202.12%2051.49%201.72%2049.72C1.32%2047.96%201.54%2046.07%202.50%2044.59C3.46%2043.12%205.91%2042.05%207.48%2040.88C9.05%2039.71%2011.07%2038.96%2011.92%2037.58C12.77%2036.20%2012.59%2034.50%2012.59%2032.63C12.58%2030.75%2011.61%2028.15%2011.88%2026.30C12.14%2024.46%2012.84%2022.61%2014.20%2021.57C15.56%2020.53%2018.12%2020.44%2020.05%2020.05C21.98%2019.66%2024.32%2019.99%2025.80%2019.24C27.27%2018.49%2028.04%2017.17%2028.88%2015.56C29.73%2013.95%2029.91%2011.20%2030.88%209.55C31.84%207.91%2033.07%206.21%2034.67%205.67C36.26%205.13%2038.55%205.89%2040.47%206.34C42.38%206.78%2044.46%208.24%2046.16%208.35C47.86%208.46%2049.19%207.97%2050.65%207.00C52.12%206.03%2053.41%203.69%2054.97%202.52C56.53%201.36%2058.32%200.00%2060.00%200.00Z%22%2F%3E%3C%2Fsvg%3E"); }

/* Keep nine categories together on wide screens; narrower rails retain two rows. */
@media(min-width:761px) and (max-width:1199px) {
  body.cg-home .cgh-category-list { grid-auto-columns:calc((100% - 24px)/4); }
}
@media(min-width:1200px) {
  body.cg-home .cgh-category-list { grid-template-rows:auto; grid-auto-columns:calc((100% - 64px)/9); }
}

/* Approved central intro Sparkles. CSS adaptation of Magic UI Sparkles Text.
 * https://magicui.design/docs/components/sparkles-text
 * Original star geometry is MIT-licensed; notice retained below.
 * The empty pseudo-elements are decorative and preserve the existing heading.
MIT License

Copyright (c) Magic UI

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

*/
.cg-home .cgh-intro h1 {
  position:relative;
  inline-size:fit-content;
  max-inline-size:100%;
  isolation:isolate;
  color:#087b51;
}
.cg-home .cgh-intro h1::before,
.cg-home .cgh-intro h1::after {
  content:"";
  position:absolute;
  display:block;
  inline-size:17px;
  block-size:17px;
  pointer-events:none;
  background:#ed1c24;
  z-index:1;
  opacity:0;
  transform-origin:center;
  -webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2021%2021%22%3E%3Cpath%20d%3D%22M9.82531%200.843845C10.0553%200.215178%2010.9446%200.215178%2011.1746%200.843845L11.8618%202.72026C12.4006%204.19229%2012.3916%206.39157%2013.5%207.5C14.6084%208.60843%2016.8077%208.59935%2018.2797%209.13822L20.1561%209.82534C20.7858%2010.0553%2020.7858%2010.9447%2020.1561%2011.1747L18.2797%2011.8618C16.8077%2012.4007%2014.6084%2012.3916%2013.5%2013.5C12.3916%2014.6084%2012.4006%2016.8077%2011.8618%2018.2798L11.1746%2020.1562C10.9446%2020.7858%2010.0553%2020.7858%209.82531%2020.1562L9.13819%2018.2798C8.59932%2016.8077%208.60843%2014.6084%207.5%2013.5C6.39157%2012.3916%204.19225%2012.4007%202.72023%2011.8618L0.843814%2011.1747C0.215148%2010.9447%200.215148%2010.0553%200.843814%209.82534L2.72023%209.13822C4.19225%208.59935%206.39157%208.60843%207.5%207.5C8.60843%206.39157%208.59932%204.19229%209.13819%202.72026L9.82531%200.843845Z%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2021%2021%22%3E%3Cpath%20d%3D%22M9.82531%200.843845C10.0553%200.215178%2010.9446%200.215178%2011.1746%200.843845L11.8618%202.72026C12.4006%204.19229%2012.3916%206.39157%2013.5%207.5C14.6084%208.60843%2016.8077%208.59935%2018.2797%209.13822L20.1561%209.82534C20.7858%2010.0553%2020.7858%2010.9447%2020.1561%2011.1747L18.2797%2011.8618C16.8077%2012.4007%2014.6084%2012.3916%2013.5%2013.5C12.3916%2014.6084%2012.4006%2016.8077%2011.8618%2018.2798L11.1746%2020.1562C10.9446%2020.7858%2010.0553%2020.7858%209.82531%2020.1562L9.13819%2018.2798C8.59932%2016.8077%208.60843%2014.6084%207.5%2013.5C6.39157%2012.3916%204.19225%2012.4007%202.72023%2011.8618L0.843814%2011.1747C0.215148%2010.9447%200.215148%2010.0553%200.843814%209.82534L2.72023%209.13822C4.19225%208.59935%206.39157%208.60843%207.5%207.5C8.60843%206.39157%208.59932%204.19229%209.13819%202.72026L9.82531%200.843845Z%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;
  animation:cgh-intro-sparkle-turn 2.8s ease-in-out infinite;
}
.cg-home .cgh-intro h1::before {
  inset-inline-start:45%;
  inset-block-start:-5px;
  animation-delay:-.4s;
}
.cg-home .cgh-intro h1::after {
  inset-inline-end:-9px;
  inset-block-end:1px;
  inline-size:14px;
  block-size:14px;
  animation-delay:-1.8s;
}
@keyframes cgh-intro-sparkle-turn {
  0%,42%,100% { opacity:0; transform:scale(0) rotate(75deg); }
  14% { opacity:1; transform:scale(1) rotate(110deg); }
  29% { opacity:.8; transform:scale(.7) rotate(135deg); }
  41% { opacity:0; transform:scale(0) rotate(150deg); }
}
html[data-shop-mode-resolved=dark] .cg-home .cgh-intro h1 { color:#92dcb4; }
html[data-shop-mode-resolved=dark] .cg-home .cgh-intro h1::before,
html[data-shop-mode-resolved=dark] .cg-home .cgh-intro h1::after { background:#ff747d; }
@media(min-width:761px) {
  .cg-home .cgh-intro h1::before { inline-size:19px; block-size:19px; inset-block-start:-3px; }
  .cg-home .cgh-intro h1::after { inline-size:16px; block-size:16px; inset-block-end:2px; }
}
@media(prefers-reduced-motion:reduce) {
  .cg-home .cgh-intro h1::before,
  .cg-home .cgh-intro h1::after { animation:none; opacity:.75; transform:scale(.65) rotate(110deg); }
}
@media(forced-colors:active) {
  .cg-home .cgh-intro h1 { color:CanvasText; }
  .cg-home .cgh-intro h1::before,
  .cg-home .cgh-intro h1::after { display:none; }
}
