/* ICD Universal Shop v0.5 - shared engine, per-brand accent. Elementor variables/classes remain untouched; the accent comes from --icd-brand (Accent-<Brand> variable). */
.icd-shop{--icd-blue-light:var(--Blue-ICD-Light);--icd-blue:var(--Blue-ICD);--icd-blue-dark:var(--Blue-ICD-Dark);--icd-dark:#222;--icd-border:rgba(255,255,255,.1);--icd-accent:var(--icd-brand,var(--icd-blue-light));--icd-panel:linear-gradient(160deg,#191919,#0c0c0c);box-sizing:border-box;width:100%;color:inherit;font:inherit}
.icd-shop*,.icd-shop*::before,.icd-shop*::after{box-sizing:inherit}.icd-shop input,.icd-shop select,.icd-shop button{font:inherit}
.icd-shop[hidden],.icd-shop [hidden]{display:none!important}
.icd-shop__preview-banner{margin-bottom:1rem;padding:.85rem 1rem;border:1px solid var(--icd-blue-light);border-radius:8px;background:color-mix(in srgb,var(--icd-blue-dark) 88%,transparent);color:#fff}
.icd-shop__preview-banner strong{margin-right:.5rem}

/* Product Condition guide */
.icd-guide{max-width:1000px;margin:0 auto 1.5rem}
.icd-guide__heading{display:flex;align-items:baseline;justify-content:center;gap:.5rem;margin-bottom:.55rem}
.icd-guide__heading span{color:var(--icd-accent);font-size:.66rem;font-weight:700;letter-spacing:.14em}.icd-guide__heading strong{color:#aaa;font-size:.8rem;font-weight:500}
.icd-guide__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}
.icd-guide-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;min-height:68px;padding:.55rem .75rem;overflow:hidden;background:var(--icd-panel);border:1px solid rgba(255,255,255,.075);border-radius:8px;transition:transform .2s,border-color .2s,box-shadow .2s}
.icd-guide-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--icd-accent) 45%,transparent);box-shadow:0 7px 18px rgba(0,0,0,.26),0 0 14px color-mix(in srgb,var(--icd-accent) 10%,transparent)}
.icd-guide-card__left{display:flex;align-items:center;gap:.5rem;min-width:0}
.icd-guide-card__mark{display:flex;align-items:center;justify-content:center;width:26px;height:26px;flex:0 0 26px;color:var(--icd-accent);background:color-mix(in srgb,var(--icd-accent) 6%,transparent);border:1px solid color-mix(in srgb,var(--icd-accent) 30%,transparent);border-radius:6px;font-weight:800;line-height:1}
.icd-guide-card__name{color:#fff;font-size:.8rem;font-weight:700;white-space:nowrap}
.icd-guide-card__right{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:84px;padding-left:.6rem;border-left:1px solid rgba(255,255,255,.07)}
.icd-guide-card__right strong{color:var(--icd-accent);font-size:1.25rem;font-weight:800;line-height:.95;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.icd-guide-card__right--label strong{font-size:.95rem;letter-spacing:.02em}
.icd-guide-card__divider{width:32px;height:1px;margin:.28rem 0 .22rem;background:rgba(255,255,255,.12)}
.icd-guide-card__right span{color:#8a8a8a;font-size:.58rem;font-weight:500;line-height:1.15;text-align:center;text-transform:uppercase;letter-spacing:.05em}.icd-guide-card__right--label span{margin-top:.15rem;letter-spacing:.12em}

/* Layout */
.icd-shop__layout{display:grid;grid-template-columns:minmax(190px,215px) minmax(0,1fr);gap:1.5rem;align-items:start}

/* Filter rail */
.icd-shop__filters{position:sticky;top:105px;max-height:calc(100dvh - 125px);padding:.8rem;overflow:hidden auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--icd-accent) 45%,transparent) transparent;background:var(--icd-panel);border:1px solid var(--icd-border);border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.28)}
.icd-shop__filters::before{content:"";position:absolute;top:0;left:14px;right:14px;height:2px;background:linear-gradient(90deg,transparent,var(--icd-accent),transparent)}
.icd-filter-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.4rem;padding:.15rem .1rem .7rem;border-bottom:1px solid rgba(255,255,255,.07)}
.icd-filter-head__eyebrow{display:block;margin-bottom:.15rem;color:var(--icd-accent);font-size:.6rem;font-weight:700;letter-spacing:.14em}
.icd-filter-head__title{margin:0;color:#fff;font-size:1.05rem;font-weight:600;line-height:1.15}
.icd-shop__clear{display:inline-flex;align-items:center;gap:.25rem;min-height:32px;padding:.15rem .3rem;border:0;background:transparent;color:var(--icd-accent);font-size:.72rem;font-weight:600;cursor:pointer}.icd-shop__clear svg{transition:transform .35s}.icd-shop__clear:hover svg{transform:rotate(-180deg)}
.icd-filter-group:not([hidden])~.icd-filter-group:not([hidden]){margin-top:.5rem;padding-top:.35rem;border-top:1px solid rgba(255,255,255,.09)}
.icd-filter-group summary{display:flex;align-items:center;justify-content:space-between;gap:.4rem;min-height:32px;padding:.4rem .1rem;color:#eee;list-style:none;cursor:pointer;font-size:.78rem;font-weight:700}.icd-filter-group summary::-webkit-details-marker{display:none}
.icd-chevron{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;color:#777;transition:transform .18s,color .18s}.icd-filter-group[open] .icd-chevron{color:var(--icd-accent);transform:rotate(180deg)}
.icd-filter-group__body{padding:.1rem 0 .3rem}
.icd-filter-option{display:flex;align-items:center;gap:.45rem;min-height:30px;padding:.15rem .35rem;color:#aaa;border-radius:5px;cursor:pointer;transition:color .14s,background .14s,transform .14s}
.icd-filter-option+.icd-filter-option{margin-top:.15rem}.icd-filter-option:hover{color:#fff;background:color-mix(in srgb,var(--icd-accent) 7%,transparent);transform:translateX(2px)}
.icd-filter-option:has(input:checked){color:#fff;background:linear-gradient(90deg,color-mix(in srgb,var(--icd-accent) 16%,transparent),color-mix(in srgb,var(--icd-accent) 5%,transparent))}
.icd-filter-option input{appearance:none;-webkit-appearance:none;flex:0 0 13px;width:13px;height:13px;margin:0;background:#101010;border:1px solid #4b4b4b;border-radius:3px;cursor:pointer;transition:.15s}
.icd-filter-option input:checked{background:var(--icd-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.3 5 8.8 9.5 3.5' fill='none' stroke='%23111' stroke-width='1.5'/%3E%3C/svg%3E") center/100% no-repeat;border-color:var(--icd-accent);box-shadow:0 0 7px color-mix(in srgb,var(--icd-accent) 35%,transparent)}
.icd-filter-option input:focus-visible{outline:2px solid var(--icd-accent);outline-offset:2px}
.icd-filter-option__label{flex:1 1 0;min-width:0;font-size:.78rem;line-height:1.2}.icd-filter-option small{margin-left:auto;color:#6a6a6a;font-size:.68rem}
.icd-filter-option__swatches{display:inline-flex;gap:3px}.icd-swatch{display:inline-block;width:.62rem;height:.62rem;border-radius:50%;background:var(--icd-swatch-color,var(--icd-blue));box-shadow:0 0 .45rem color-mix(in srgb,var(--icd-swatch-color,var(--icd-blue)) 45%,transparent)}

/* Toolbar */
.icd-shop__topbar{display:grid;grid-template-columns:minmax(220px,1fr) 160px 180px;align-items:end;gap:.9rem;margin-bottom:1.1rem;padding-bottom:.7rem;border-bottom:1px solid rgba(255,255,255,.07)}
.icd-shop__search{position:relative;max-width:420px}.icd-shop__search svg{position:absolute;left:12px;top:50%;color:#777;transform:translateY(-50%);pointer-events:none;transition:color .18s}.icd-shop__search:focus-within svg{color:var(--icd-accent)}
.icd-shop__search input{width:100%;height:42px;padding:0 .8rem 0 2.3rem;outline:0;background:#121212;color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:8px}.icd-shop__search input:focus{border-color:var(--icd-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--icd-accent) 12%,transparent)}
.icd-shop__label{display:block;margin-bottom:.3rem;color:#888;font-size:.66rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.icd-shop__size{display:block}.icd-shop__size-row{display:flex;align-items:center;min-height:30px}.icd-shop__size input{width:100%;accent-color:var(--icd-accent);cursor:ew-resize}.icd-shop__size output{display:block;margin-top:.1rem;color:#888;text-align:center;font-size:.68rem}
.icd-shop__sort{display:block}.icd-shop__sort-row{position:relative;display:block}.icd-shop__sort-row svg{position:absolute;left:10px;top:50%;color:var(--icd-accent);transform:translateY(-50%);pointer-events:none}
.icd-shop__sort select{width:100%;height:40px;padding:0 .6rem 0 2rem;outline:0;background:#151515;color:#fff;border:1px solid rgba(255,255,255,.11);border-radius:7px;cursor:pointer}.icd-shop__sort select:focus{border-color:var(--icd-accent)}
.icd-shop__count{grid-column:1/-1;display:flex;align-items:center;gap:.4rem;margin:0;color:#999;font-size:.78rem}.icd-shop__count i{width:5px;height:5px;background:var(--icd-accent);border-radius:50%;box-shadow:0 0 7px color-mix(in srgb,var(--icd-accent) 45%,transparent)}

.icd-shop__loading,.icd-shop__message,.icd-shop__external{margin-bottom:1rem;padding:1rem;border:1px solid var(--icd-border);border-radius:10px}
.icd-shop__external-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}.icd-shop__external-actions a{display:inline-flex;padding:.65rem .85rem;border:1px solid currentColor;border-radius:7px;color:inherit;text-decoration:none}

/* Product grid and cards */
.icd-product-grid{--icd-cols:3;display:grid;grid-template-columns:repeat(var(--icd-cols),minmax(0,1fr));align-items:stretch;gap:1.1rem}
.icd-product-grid shopify-context{display:contents}
.icd-product-card{--icd-card-brand:var(--icd-accent);position:relative;display:flex;flex-direction:column;overflow:hidden;border:1px solid color-mix(in srgb,var(--icd-card-brand) 22%,var(--icd-border));border-radius:10px;background:var(--icd-panel);transition:transform .28s,box-shadow .28s,border-color .28s}
.icd-product-card:hover{transform:translateY(-6px) scale(1.008);border-color:var(--icd-card-brand);box-shadow:0 0 0 1px color-mix(in srgb,var(--icd-card-brand) 80%,transparent),0 0 20px color-mix(in srgb,var(--icd-card-brand) 14%,transparent),0 18px 35px rgba(0,0,0,.4)}
.icd-product-card__image{display:flex;align-items:center;justify-content:center;width:100%;height:300px;padding:18px;overflow:hidden;border:0;background:#050505;cursor:pointer}
.icd-product-card__image img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;margin:auto;object-fit:contain;padding:0}
.icd-product-card__image-placeholder{display:grid;place-items:center;width:100%;height:100%;opacity:.35}
.icd-shop[data-icd-size-mode=compact] .icd-product-card__image{height:220px;padding:14px}.icd-shop[data-icd-size-mode=large] .icd-product-card__image{height:380px;padding:24px}
.icd-product-badge{position:absolute;top:10px;left:10px;z-index:2;padding:.28rem .55rem;border-radius:999px;background:var(--icd-card-brand);color:#111;font-size:.62rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;box-shadow:0 4px 10px rgba(0,0,0,.3);pointer-events:none}
.icd-product-card[data-stock=b-stock] .icd-product-badge{background:color-mix(in srgb,var(--icd-blue) 55%,#1a1a1a);color:#fff}
.icd-product-card[data-stock=c-stock] .icd-product-badge{background:color-mix(in srgb,var(--icd-card-brand) 85%,#000)}
.icd-product-card[data-stock=clearance] .icd-product-badge{background:color-mix(in srgb,var(--icd-card-brand) 62%,#000);color:#fff}
.icd-product-card__content{display:flex;flex:1;flex-direction:column;gap:.5rem;padding:1rem}.icd-product-card__title{margin:0;font-size:1.1rem;line-height:1.25}.icd-product-card__title-button{padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.icd-product-card__title-button:hover{color:var(--icd-card-brand)}
.icd-product-card__price{font-weight:700;font-size:1.05rem}.icd-product-card__compare{margin-left:.45rem;font-weight:400;font-size:.8em;opacity:.55}
.icd-product-card__inventory{display:flex;align-items:center;gap:.4rem;font-size:.8rem;opacity:.85}.icd-product-card__inventory strong{color:var(--icd-card-brand)}.icd-dot{width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:var(--icd-blue-light)}
.icd-product-meta{display:none}
.icd-product-card__actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.5rem;margin-top:auto;padding-top:.4rem}
.icd-quickview-button,.icd-add-cart{display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:40px;padding:.4rem .75rem;border:1px solid var(--icd-card-brand);border-radius:999px;background:transparent;color:inherit;font-size:.84rem;font-weight:600;text-decoration:none;cursor:pointer}
.icd-add-cart{background:var(--icd-card-brand);color:#111;font-weight:700}.icd-add-cart:disabled{opacity:.4;cursor:not-allowed}
.icd-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:.35rem;margin-top:1.4rem}.icd-pagination button{min-width:38px;min-height:38px;border:1px solid var(--icd-border);border-radius:7px;background:transparent;color:inherit;cursor:pointer}.icd-pagination button[aria-current=page]{border-color:var(--icd-accent);background:color-mix(in srgb,var(--icd-accent) 20%,transparent)}

/* Pilot: where the plugin shop renders, the retained legacy Claypaky widget stays out of the way (loaded only for admins while Safe Mode is ON). */
.icd-legacy-claypaky-retained,.icd-legacy-retained{display:none!important}
/* Shared commerce snippet (890) reads --brand-accent; keep it on the brand accent and lift its 300px card cap inside the plugin grid. */
.icd-shop[data-icd-shop]{--brand-accent:var(--icd-accent);color:var(--icd-text,#fff)}
.icd-shop[data-icd-shop] .icd-product-card{--brand-accent:var(--icd-card-brand);max-width:none;width:100%}
.icd-shop[data-icd-shop] .icd-add-cart{background:var(--icd-card-brand);color:#111}

/* Responsive */
@media(max-width:1050px){.icd-product-grid{grid-template-columns:repeat(min(var(--icd-cols),2),minmax(0,1fr))}.icd-guide__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){
	.icd-shop__layout{grid-template-columns:1fr}.icd-shop__filters{position:static;max-height:none}
	.icd-shop__topbar{grid-template-columns:1fr 1fr}.icd-shop__search{grid-column:1/-1;max-width:none}
	.icd-filter-option{min-height:44px}.icd-pagination button{min-height:44px;min-width:44px}
	.icd-shop[data-icd-shop] .icd-quickview-button,.icd-shop[data-icd-shop] .icd-add-cart,.icd-shop__clear{min-height:44px;height:auto}
	.icd-shop[data-icd-shop]{padding-inline:1rem}
	.icd-shop[data-icd-size-mode=large] .icd-product-card__image{height:300px}
}
@media(max-width:520px){.icd-product-grid{grid-template-columns:1fr}.icd-guide__grid{grid-template-columns:1fr 1fr}.icd-guide-card{grid-template-columns:1fr;gap:.35rem}.icd-guide-card__right{border-left:0;padding-left:0;min-width:0;flex-direction:row;gap:.4rem}.icd-guide-card__divider{display:none}.icd-shop__topbar{grid-template-columns:1fr}}

/* Shared page-top offset: Header #54 is position:fixed, so the first block of any page hosting the shop clears it.
   Uses Elementor variables only; every brand page inherits this. */
body:has([data-icd-shop]) [data-elementor-type="wp-page"] > .elementor-element:first-child{
	padding-top:calc(var(--Header-Height-Main) + var(--Gaps-S))!important;
}

/* Quick View compare-at price (shared snippet 890 markup) */
.icd-product-quickview__compare{margin-left:.5rem;font-size:.85em;opacity:.6;text-decoration:line-through}
.icd-product-quickview__compare:has(shopify-money:empty),.icd-product-quickview__compare:empty{display:none}
#icd-product-quickview .icd-product-quickview__add:hover:not(:disabled),
#icd-product-quickview .icd-product-quickview__add:focus-visible:not(:disabled){background:#fff!important;color:#111!important;-webkit-text-fill-color:#111!important;border-color:#fff!important}

/* ===== v0.5.6 shared visual pass ===== */
/* Shop atmosphere: layered charcoal + slow accent glow from --icd-brand (no hex). Cards (#191919>#0c0c0c) stay darker. */
.icd-shop[data-icd-shop]{position:relative;isolation:isolate;overflow:clip;background:linear-gradient(180deg,#1c1d1f 0%,#151617 55%,#111213 100%);border-radius:0}
.icd-shop[data-icd-shop]::before,.icd-shop[data-icd-shop]::after{content:"";position:absolute;z-index:-1;pointer-events:none;width:70%;height:60%;border-radius:50%;filter:blur(70px);opacity:.2;will-change:transform}
.icd-shop[data-icd-shop]::before{top:-10%;left:-10%;background:radial-gradient(circle,color-mix(in srgb,var(--icd-accent) 70%,transparent) 0,transparent 68%);animation:icd-aurora-a 28s ease-in-out infinite alternate}
.icd-shop[data-icd-shop]::after{bottom:-15%;right:-10%;background:radial-gradient(circle,color-mix(in srgb,var(--icd-accent) 45%,#000) 0,transparent 68%);opacity:.16;animation:icd-aurora-b 36s ease-in-out infinite alternate}
@keyframes icd-aurora-a{0%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(28%,18%,0) scale(1.15)}100%{transform:translate3d(8%,40%,0) scale(.95)}}
@keyframes icd-aurora-b{0%{transform:translate3d(0,0,0) scale(1.05)}50%{transform:translate3d(-30%,-14%,0) scale(.9)}100%{transform:translate3d(-8%,-34%,0) scale(1.1)}}
@media(prefers-reduced-motion:reduce){.icd-shop[data-icd-shop]::before,.icd-shop[data-icd-shop]::after{animation:none}}

/* Quick View shell: charcoal media panel, slightly lighter info panel, accent border + glow */
#icd-product-quickview{border:1px solid var(--popup-accent,var(--icd-accent,#888))!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--popup-accent,#888) 25%,transparent),0 0 36px var(--popup-glow,transparent),0 24px 60px rgba(0,0,0,.6)!important}
#icd-product-quickview .icd-product-quickview__media{display:block!important;position:relative;min-width:0;padding:0!important;background:linear-gradient(160deg,#1a1b1d,#0e0f10);box-shadow:inset 0 0 40px rgba(0,0,0,.45)}
#icd-product-quickview .icd-product-quickview__details{min-width:0;background:linear-gradient(180deg,#202123,#17181a);border-left:1px solid color-mix(in srgb,var(--popup-accent,#888) 28%,transparent)}
/* Gallery containment: one image at a time, centred, never cropped, original media hidden once the gallery exists */
#icd-product-quickview .icd-product-quickview__media:has(.icd-qv-gallery)>shopify-media{display:none!important}
#icd-product-quickview .icd-qv-gallery{box-sizing:border-box;display:flex;flex-direction:column;gap:10px;width:100%;max-width:100%;min-width:0;margin:0;padding:14px}
#icd-product-quickview .icd-qv-gallery__stage{position:relative;width:100%;aspect-ratio:1/1;max-height:60vh;overflow:hidden;border-radius:8px;background:#0b0c0d}
#icd-product-quickview .icd-qv-gallery__main{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:10px;box-sizing:border-box;object-fit:contain;object-position:center}
#icd-product-quickview .icd-qv-gallery__arrow{z-index:2;border:1px solid var(--popup-accent,#888)!important;background:rgba(0,0,0,.6)!important;color:#fff!important}
#icd-product-quickview .icd-qv-gallery__arrow:hover,#icd-product-quickview .icd-qv-gallery__arrow:focus-visible{background:#fff!important;color:#111!important;border-color:#fff!important}
#icd-product-quickview .icd-qv-gallery__thumbs{display:flex;flex-wrap:nowrap;justify-content:safe center;gap:8px;width:100%;max-width:100%;min-width:0;padding:2px 2px 8px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--popup-accent,#888) 50%,transparent) transparent}
#icd-product-quickview .icd-qv-gallery__thumb{flex:0 0 56px;width:56px;height:56px;border:1px solid rgba(255,255,255,.14)!important;border-radius:6px;background:#0b0c0d;opacity:.6;overflow:hidden;box-shadow:none!important}
#icd-product-quickview .icd-qv-gallery__thumb img{width:100%;height:100%;object-fit:contain}
#icd-product-quickview .icd-qv-gallery__thumb:hover{opacity:.9}
#icd-product-quickview .icd-qv-gallery__thumb.is-active,#icd-product-quickview .icd-qv-gallery__thumb[aria-current=true],#icd-product-quickview .icd-qv-gallery__thumb[aria-selected=true]{opacity:1;border-color:var(--popup-accent,#888)!important;box-shadow:0 0 10px var(--popup-glow,transparent)!important}
@media(max-width:680px){
	#icd-product-quickview .icd-product-quickview__layout{grid-template-columns:1fr!important}
	#icd-product-quickview .icd-qv-gallery__stage{max-height:46vh}
	#icd-product-quickview .icd-product-quickview__details{border-left:0;border-top:1px solid color-mix(in srgb,var(--popup-accent,#888) 28%,transparent)}
}

/* ===== v0.5.7 shared card action row: compact, container-scaled (card width drives type size) ===== */
.icd-shop[data-icd-shop] .icd-product-card{container-type:inline-size}
.icd-shop[data-icd-shop] .icd-product-card__content{gap:.6rem;padding:1rem 1rem 1.1rem}
.icd-shop[data-icd-shop] .icd-product-card__actions{gap:.4rem;padding-top:.75rem}
.icd-shop[data-icd-shop] .icd-quickview-button,.icd-shop[data-icd-shop] .icd-add-cart{
	gap:clamp(.2rem,2.2cqi,.4rem);min-height:36px;height:36px;padding:0 clamp(.3rem,3.2cqi,.7rem);
	font-size:clamp(.6rem,3.6cqi,.76rem);font-weight:600;line-height:1;letter-spacing:0;white-space:nowrap;overflow:hidden}
.icd-shop[data-icd-shop] .icd-quickview-button::after,.icd-shop[data-icd-shop] .icd-add-cart::before{flex:0 0 auto;width:1.15em;height:1.15em;font-size:1em;line-height:1}
.icd-shop[data-icd-shop] .icd-quickview-button::after{display:inline-flex;align-items:center;justify-content:center}
@media(max-width:480px){
	.icd-shop[data-icd-shop] .icd-product-card__actions{grid-template-columns:1fr 1fr}
	.icd-shop[data-icd-shop] .icd-quickview-button,.icd-shop[data-icd-shop] .icd-add-cart{height:44px;min-height:44px;font-size:.8rem}
}
/* v0.5.7b: shared snippet 890 forces button size with !important; match so card scaling wins */
.icd-shop[data-icd-shop] .icd-product-card .icd-quickview-button,.icd-shop[data-icd-shop] .icd-product-card .icd-add-cart{
	gap:clamp(.2rem,2.2cqi,.4rem)!important;min-height:36px!important;height:36px!important;padding:0 clamp(.3rem,3.2cqi,.7rem)!important;
	font-size:clamp(.6rem,3.6cqi,.76rem)!important;line-height:1!important;white-space:nowrap!important}
.icd-shop[data-icd-shop] .icd-product-card .icd-quickview-button::after,.icd-shop[data-icd-shop] .icd-product-card .icd-add-cart::before{width:1.1em!important;height:1.1em!important;flex:0 0 1.1em!important;font-size:1em!important}
@media(max-width:480px){.icd-shop[data-icd-shop] .icd-product-card .icd-quickview-button,.icd-shop[data-icd-shop] .icd-product-card .icd-add-cart{height:44px!important;min-height:44px!important;font-size:.8rem!important;padding:0 .8rem!important}}
/* v0.5.8: very narrow cards (Compact / 4 columns): tighter gutters, drop decorative glyphs so labels stay whole */
@container (max-width:200px){
	.icd-shop[data-icd-shop] .icd-product-card__content{padding-left:.7rem;padding-right:.7rem}
	.icd-shop[data-icd-shop] .icd-product-card .icd-quickview-button::after,.icd-shop[data-icd-shop] .icd-product-card .icd-add-cart::before{display:none!important}
	.icd-shop[data-icd-shop] .icd-product-card .icd-quickview-button,.icd-shop[data-icd-shop] .icd-product-card .icd-add-cart{padding:0 .25rem!important}
}
/* v0.5.9b: legible floor (legacy was 10.5px); narrow cards keep the smaller floor */
.icd-shop[data-icd-shop] .icd-product-card .icd-quickview-button,.icd-shop[data-icd-shop] .icd-product-card .icd-add-cart{font-size:clamp(.66rem,4cqi,.8rem)!important}
@container (max-width:200px){.icd-shop[data-icd-shop] .icd-product-card .icd-quickview-button,.icd-shop[data-icd-shop] .icd-product-card .icd-add-cart{font-size:.62rem!important}}

/* ===== v0.5.11 gallery arrows + visible atmosphere ===== */
/* Arrows: one shared sleek control (prev/next identical; chevron is a mask so it follows currentColor; accent only on focus ring + faint rest edge) */
#icd-product-quickview .icd-qv-gallery__arrow{
	position:absolute!important;top:50%!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:0!important;margin:0!important;
	display:inline-flex!important;align-items:center;justify-content:center;border-radius:50%!important;font-size:0!important;line-height:0!important;
	border:1px solid color-mix(in srgb,#fff 18%,transparent)!important;
	background:rgba(18,19,21,.55)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
	-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
	box-shadow:0 2px 10px rgba(0,0,0,.35),inset 0 0 0 1px color-mix(in srgb,var(--popup-accent,#888) 14%,transparent)!important;
	transform:translateY(-50%)!important;filter:none!important;
	transition:background-color .16s ease,color .16s ease,border-color .16s ease,transform .12s ease!important}
#icd-product-quickview .icd-qv-gallery__arrow--previous{left:10px!important;right:auto!important}
#icd-product-quickview .icd-qv-gallery__arrow--next{right:10px!important;left:auto!important}
#icd-product-quickview .icd-qv-gallery__arrow::before{content:"";display:block;width:20px;height:20px;background:currentColor;
	-webkit-mask:var(--icd-ico-chev-r) center/contain no-repeat;
	mask:var(--icd-ico-chev-r) center/contain no-repeat}
#icd-product-quickview .icd-qv-gallery__arrow--previous::before{transform:scaleX(-1)}
#icd-product-quickview .icd-qv-gallery__arrow:hover,#icd-product-quickview .icd-qv-gallery__arrow:focus-visible{background:#fff!important;color:#111!important;-webkit-text-fill-color:#111!important;border-color:#fff!important;box-shadow:0 2px 10px rgba(0,0,0,.35)!important;transform:translateY(-50%)!important}
#icd-product-quickview .icd-qv-gallery__arrow:focus-visible{outline:2px solid var(--popup-accent,var(--icd-accent,#888));outline-offset:2px}
#icd-product-quickview .icd-qv-gallery__arrow:active{transform:translateY(-50%) scale(.96)!important}

/* Atmosphere: charcoal base + visible broad accent glow + darker blue depth glow; surfaces over it go translucent so it reads through */
.icd-shop[data-icd-shop]{background:
	radial-gradient(900px 520px at 8% 0%,color-mix(in srgb,var(--icd-accent) 16%,transparent),transparent 70%),
	radial-gradient(900px 600px at 100% 45%,rgba(52,82,140,.20),transparent 70%),
	radial-gradient(800px 520px at 0% 92%,color-mix(in srgb,var(--icd-accent) 10%,transparent),transparent 70%),
	linear-gradient(180deg,#232426 0%,#1b1c1e 55%,#161719 100%)}
.icd-shop[data-icd-shop]::before,.icd-shop[data-icd-shop]::after{width:min(900px,95%);height:640px;filter:blur(90px)}
.icd-shop[data-icd-shop]::before{top:0;left:-8%;opacity:.38;background:radial-gradient(circle,color-mix(in srgb,var(--icd-accent) 85%,transparent) 0,transparent 65%);animation:icd-aurora-a 20.8s ease-in-out infinite alternate}
.icd-shop[data-icd-shop]::after{bottom:auto;top:55%;right:-12%;opacity:.32;background:radial-gradient(circle,rgba(60,95,170,.9) 0,transparent 65%);animation:icd-aurora-b 24s ease-in-out infinite alternate}
@keyframes icd-aurora-a{0%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(30%,45%,0) scale(1.12)}100%{transform:translate3d(10%,150%,0) scale(.95)}}
@keyframes icd-aurora-b{0%{transform:translate3d(0,0,0) scale(1.05)}50%{transform:translate3d(-25%,-35%,0) scale(.92)}100%{transform:translate3d(-8%,-90%,0) scale(1.08)}}
.icd-shop[data-icd-shop] .icd-shop__filters{background:linear-gradient(160deg,rgba(25,25,25,.62),rgba(12,12,12,.5))!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.icd-shop[data-icd-shop] .icd-guide-card{background:linear-gradient(160deg,rgba(25,25,25,.7),rgba(12,12,12,.6))!important}
@media(prefers-reduced-motion:reduce){.icd-shop[data-icd-shop]::before,.icd-shop[data-icd-shop]::after{animation:none!important}}

/* ===== v0.5.12 page-level atmosphere + rail cleanup ===== */
/* Atmosphere lives on the page (fixed layer behind all content), never on the shop wrapper: charcoal + Blue-ICD-Dark + active brand accent. */
.icd-shop[data-icd-shop]{background:none!important;overflow:visible;isolation:auto}
.icd-shop[data-icd-shop]::before,.icd-shop[data-icd-shop]::after{content:none!important;display:none!important;animation:none!important}
body:has([data-icd-shop]){background-color:#17181a}
body:has([data-icd-shop])::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-color:#17181a;background-repeat:no-repeat;background-size:140% 140%,120% 120%,130% 130%,100% 100%;background-image:
	radial-gradient(48% 42% at 50% 50%,color-mix(in srgb,var(--icd-brand,var(--Blue-ICD)) 20%,transparent),transparent 100%),
	radial-gradient(55% 50% at 50% 50%,color-mix(in srgb,var(--Blue-ICD-Dark,#122c50) 85%,transparent),transparent 100%),
	radial-gradient(40% 36% at 50% 50%,color-mix(in srgb,var(--icd-brand-2,var(--icd-brand,var(--Blue-ICD))) 14%,transparent),transparent 100%),
	linear-gradient(180deg,#1d1e20 0%,#16171a 100%);
	background-position:10% 5%,95% 40%,20% 95%,0 0;animation:icd-page-morph 22.4s ease-in-out infinite alternate}
@keyframes icd-page-morph{0%{background-position:6% 4%,100% 30%,10% 100%,0 0}50%{background-position:55% 45%,40% 60%,80% 40%,0 0}100%{background-position:100% 90%,0% 100%,30% 0%,0 0}}
@media(prefers-reduced-motion:reduce){body:has([data-icd-shop])::before{animation:none;background-position:12% 6%,96% 40%,20% 96%,0 0}}
/* Elementor page/footer containers are opaque black and would hide the page layer: let it through on shop pages only. */
body:has([data-icd-shop]) [data-id="9e8e698"],body:has([data-icd-shop]) [data-id="552249b5"]{background:transparent!important;background-color:transparent!important}
body:has([data-icd-shop]) .elementor-77 [data-id="cf31efa"],body:has([data-icd-shop]) .elementor-77 [data-id="a5be213"]{background:rgba(0,0,0,.4)!important}
/* Filter rail: eyebrow + Clear only, condensed rhythm */
.icd-shop[data-icd-shop] .icd-filter-head{align-items:center;padding:0 .1rem .45rem}
.icd-shop[data-icd-shop] .icd-filter-head__eyebrow{margin:0}
.icd-shop[data-icd-shop] .icd-filter-group:not([hidden])~.icd-filter-group:not([hidden]){margin-top:.25rem;padding-top:.15rem}
.icd-shop[data-icd-shop] .icd-filter-group summary{min-height:28px;padding:.25rem .1rem}
.icd-shop[data-icd-shop] .icd-filter-group__body{padding:0 0 .2rem}
@media(max-width:1024px){.icd-shop[data-icd-shop] .icd-filter-group summary{min-height:44px}}
.icd-shop[data-icd-shop] .icd-filter-option{min-height:28px;padding:.1rem .35rem}.icd-shop[data-icd-shop] .icd-filter-option+.icd-filter-option{margin-top:.05rem}
@media(max-width:1024px){.icd-shop[data-icd-shop] .icd-filter-option{min-height:44px}}

/* ===== v0.5.13 Product Info = same button family as View Details / Add to Cart ===== */

/* v0.5.14 Quick View manufacturer link: shared button family, brand accent via --popup-accent; hidden when no verified URL */
#icd-product-quickview .icd-product-quickview__brand-link[hidden]{display:none!important}
#icd-product-quickview .icd-product-quickview__brand-link{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;box-sizing:border-box;width:100%;min-height:44px;margin:0 0 .6rem;padding:0 1rem;border:1px solid var(--popup-accent,var(--icd-accent,#fff))!important;border-radius:999px;background:rgba(18,18,18,.9)!important;color:#f2f2f2!important;font:inherit;font-size:.85rem;font-weight:600;line-height:1;text-decoration:none!important;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}
#icd-product-quickview .icd-product-quickview__brand-link span{color:var(--popup-accent,var(--icd-accent,#fff));font-size:1.05em}
#icd-product-quickview .icd-product-quickview__brand-link:hover,#icd-product-quickview .icd-product-quickview__brand-link:focus-visible{background:#fff!important;color:#111!important;-webkit-text-fill-color:#111;border-color:#fff!important}
#icd-product-quickview .icd-product-quickview__brand-link:hover span,#icd-product-quickview .icd-product-quickview__brand-link:focus-visible span{color:#111}
#icd-product-quickview .icd-product-quickview__brand-link:focus-visible{outline:2px solid var(--popup-accent,#fff);outline-offset:2px}

/* ===== v0.5.15 Quick View action row: View on Brand Site | Add to Cart, anchored to the panel bottom ===== */
#icd-product-quickview .icd-product-quickview__details{display:flex;flex-direction:column;gap:.75rem}
#icd-product-quickview .icd-product-quickview__actions{display:flex;align-items:stretch;gap:.75rem;margin-top:auto;padding-top:1rem}
#icd-product-quickview .icd-product-quickview__actions>*{box-sizing:border-box;height:48px!important;min-height:48px!important;margin:0!important;padding:0 1rem!important;border-radius:999px!important;font-size:.9rem!important;line-height:1!important;display:inline-flex!important;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;transition:background .2s ease,color .2s ease,border-color .2s ease}
#icd-product-quickview .icd-product-quickview__actions .icd-product-quickview__brand-link{flex:0 0 42%;width:auto;font-weight:600;color:#fff!important}
#icd-product-quickview .icd-product-quickview__actions .icd-product-quickview__brand-link[hidden]{display:none!important}
#icd-product-quickview .icd-product-quickview__actions .icd-product-quickview__add{flex:1 1 0;width:auto!important;font-weight:700}
#icd-product-quickview .icd-product-quickview__actions .icd-product-quickview__brand-link:hover,#icd-product-quickview .icd-product-quickview__actions .icd-product-quickview__brand-link:focus-visible{color:#111!important}
#icd-product-quickview .icd-qv-icon{flex:0 0 auto;display:inline-block;width:1.1em;height:1.1em;background-color:currentColor;-webkit-mask:var(--qv-icon) center/contain no-repeat;mask:var(--qv-icon) center/contain no-repeat;transition:transform .22s ease}
#icd-product-quickview .icd-qv-icon--external{--qv-icon:var(--icd-ico-external);color:var(--popup-accent,#fff)}
#icd-product-quickview .icd-qv-icon--cart{--qv-icon:var(--icd-ico-cart)}
#icd-product-quickview .icd-product-quickview__add.is-added .icd-qv-icon--cart{--qv-icon:var(--icd-ico-check)}
#icd-product-quickview .icd-product-quickview__brand-link:hover .icd-qv-icon--external,#icd-product-quickview .icd-product-quickview__brand-link:focus-visible .icd-qv-icon--external{transform:translate(3px,-3px);color:#111}
#icd-product-quickview .icd-product-quickview__add:hover:not(:disabled) .icd-qv-icon--cart,#icd-product-quickview .icd-product-quickview__add:focus-visible:not(:disabled) .icd-qv-icon--cart{transform:translateX(2px)}
@media(max-width:560px){
	#icd-product-quickview .icd-product-quickview__actions{flex-direction:column}
	#icd-product-quickview .icd-product-quickview__actions .icd-product-quickview__add{order:-1;flex:0 0 auto;width:100%!important}
	#icd-product-quickview .icd-product-quickview__actions .icd-product-quickview__brand-link{flex:0 0 auto;width:100%}
}
@media(prefers-reduced-motion:reduce){#icd-product-quickview .icd-qv-icon{transition:none}}
#icd-product-quickview .icd-product-quickview__actions>*{font-size:.85rem!important;padding:0 .8rem!important;gap:.4rem}
#icd-product-quickview .icd-product-quickview__actions .icd-product-quickview__brand-link{flex:0 0 auto;min-width:0}
#icd-product-quickview .icd-product-quickview__actions .icd-qv-label{color:inherit!important;-webkit-text-fill-color:currentColor!important}
#icd-product-quickview .icd-product-quickview__actions .icd-qv-icon--external{color:var(--popup-accent,#fff)!important}
#icd-product-quickview .icd-product-quickview__actions .icd-product-quickview__brand-link:hover .icd-qv-icon--external,#icd-product-quickview .icd-product-quickview__actions .icd-product-quickview__brand-link:focus-visible .icd-qv-icon--external{color:#111!important}
/* v0.5.22 — neutralise the theme reset.css button:hover (#c36 pink) for plugin controls: white bg, black text/icon */
.icd-shop .icd-shop__clear:is(:hover,:focus-visible),.icd-shop .icd-pagination button:is(:hover,:focus-visible):not(:disabled),#icd-product-quickview .icd-product-quickview__close:is(:hover,:focus-visible){background:#fff!important;color:#111!important;border-color:#fff!important;-webkit-text-fill-color:#111!important}
.icd-shop .icd-product-card__title-button:is(:hover,:focus-visible){background-color:transparent}
#icd-product-quickview .icd-qv-gallery__thumb:is(:hover,:focus-visible){background-color:#0b0c0d}
/* v0.5.23 — one-dot brand filter is PHP; Clear rest state neutral; badge contrast; 2-line titles; logout hover */
.icd-shop .icd-shop__clear{color:rgba(255,255,255,.78);background:transparent;border:0}
.icd-shop .icd-shop__clear:is(:hover,:focus-visible){background:#fff!important;color:#111!important;border-color:#fff!important}
/* Shared badge contrast: text colour derives from the badge background lightness (dark bg → light text, light bg → dark text). Fallbacks first for browsers without relative colour. */
.icd-product-card .icd-product-badge{--icd-badge-bg:var(--icd-card-brand);background:var(--icd-badge-bg);color:#111;color:oklch(from var(--icd-badge-bg) clamp(0,(0.58 - l) * 1000,1) 0 0)}
.icd-product-card[data-stock=b-stock] .icd-product-badge{--icd-badge-bg:color-mix(in srgb,var(--icd-blue) 55%,#1a1a1a);color:#fff;color:oklch(from var(--icd-badge-bg) clamp(0,(0.58 - l) * 1000,1) 0 0)}
.icd-product-card[data-stock=c-stock] .icd-product-badge{--icd-badge-bg:color-mix(in srgb,var(--icd-card-brand) 85%,#000);color:#fff;color:oklch(from var(--icd-badge-bg) clamp(0,(0.58 - l) * 1000,1) 0 0)}
.icd-product-card[data-stock=clearance] .icd-product-badge{--icd-badge-bg:color-mix(in srgb,var(--icd-card-brand) 62%,#000);color:#fff;color:oklch(from var(--icd-badge-bg) clamp(0,(0.58 - l) * 1000,1) 0 0)}
.icd-product-card .icd-product-badge{max-width:calc(100% - 20px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* Titles: up to 2 lines, natural wrap, ellipsis after 2, consistent height */
.icd-product-card,.icd-product-card__content{min-width:0}
.icd-product-card__title{min-width:0;font-size:1.05rem;line-height:1.25;min-height:2.5em;overflow-wrap:anywhere;word-break:normal}
.icd-product-card__title-button{display:-webkit-box;max-width:100%;min-width:0;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;white-space:normal;overflow-wrap:anywhere;text-overflow:ellipsis}
.icd-product-card__price,.icd-product-card__inventory{min-width:0;overflow-wrap:anywhere}
.icd-product-card__price{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:.45rem}.icd-product-card__compare{margin-left:0}
.icd-quickview-button,.icd-add-cart{max-width:100%;white-space:normal}
.icd-account-logout:is(:hover,:focus-visible){background:#fff!important;color:#111!important;border-color:#fff!important;-webkit-text-fill-color:#111!important}
.icd-account-logout:is(:hover,:focus-visible) *{color:#111!important;fill:currentColor}
/* v0.5.25 — <button> blockifies display:-webkit-box, so the 2-line clamp lives on an inner span */
.icd-product-card__title-button{display:block;-webkit-line-clamp:unset;line-clamp:unset;overflow:visible;width:100%}
.icd-product-card__title-text{display:-webkit-box;min-width:0;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;overflow-wrap:anywhere;text-overflow:ellipsis}

/* ===== v0.5.26 shared page layout: page-wide atmosphere + compact masthead (all 8 shop pages) ===== */
/* Atmosphere: ~80% charcoal (--Dark) / --Blue-ICD-Dark, ~20% active brand accent (+ secondary where the brand has one). Shop All has no manufacturer accent: --Blue-ICD-Light / --Blue-ICD. */
body:has([data-icd-shop]){--icd-atmo-a:var(--icd-brand,var(--Blue-ICD-Light));--icd-atmo-b:var(--icd-brand-2,var(--icd-brand,var(--Blue-ICD)));background-color:var(--Dark,#222)}
body:has([data-icd-shop]:not([data-icd-locked])){--icd-atmo-a:var(--Blue-ICD-Light);--icd-atmo-b:var(--Blue-ICD)}
body:has([data-icd-shop])::before{background-color:color-mix(in srgb,var(--Dark,#222) 78%,#000);background-size:150% 130%,135% 125%,120% 120%,140% 140%,100% 100%;background-image:
	radial-gradient(46% 40% at 50% 50%,color-mix(in srgb,var(--icd-atmo-a) 34%,transparent),transparent 100%),
	radial-gradient(58% 52% at 50% 50%,color-mix(in srgb,var(--Blue-ICD-Dark,#122c50) 95%,transparent),transparent 100%),
	radial-gradient(42% 38% at 50% 50%,color-mix(in srgb,var(--icd-atmo-b) 28%,transparent),transparent 100%),
	radial-gradient(52% 46% at 50% 50%,color-mix(in srgb,var(--Blue-ICD,#0c71ae) 22%,transparent),transparent 100%),
	linear-gradient(180deg,color-mix(in srgb,var(--Dark,#222) 92%,#000) 0%,color-mix(in srgb,var(--Dark,#222) 70%,#000) 100%);
	background-position:8% 6%,96% 38%,18% 96%,70% 10%,0 0;animation:icd-page-morph-b 22.4s ease-in-out infinite alternate}
@keyframes icd-page-morph-b{0%{background-position:6% 4%,100% 30%,10% 100%,80% 0%,0 0}50%{background-position:58% 48%,40% 62%,80% 40%,20% 70%,0 0}100%{background-position:100% 92%,0% 100%,30% 0%,50% 100%,0 0}}
@media(prefers-reduced-motion:reduce){body:has([data-icd-shop])::before{animation:none;background-position:12% 6%,96% 40%,20% 96%,70% 10%,0 0}}
/* Nothing between the fixed layer and the shop may paint solid black */
body:has([data-icd-shop]) .e-con:has([data-icd-shop]){background:transparent!important;background-color:transparent!important}
/* Compact masthead */
.icd-masthead{display:grid;grid-template-columns:1fr minmax(0,auto) 1fr;align-items:center;gap:1.5rem;min-height:116px;margin:var(--Header-Height-Main,5rem) 0 .75rem;padding:.4rem 0}
.icd-masthead__logo{justify-self:start;width:clamp(150px,22vw,280px);height:76px;display:flex;align-items:center}
.icd-masthead__logo img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;object-position:left center}
.icd-masthead--all .icd-masthead__logo{height:auto}
.icd-masthead--all .icd-masthead__logo img{width:100%;max-height:70px}
.icd-masthead__title{text-align:center;max-width:640px}
.icd-masthead__eyebrow{margin:0 0 .25rem;color:var(--icd-accent);font-size:.68rem;font-weight:700;letter-spacing:.18em;line-height:1.2}
.icd-shop .icd-masthead__title h1{margin:0;color:#fff;font-size:clamp(1.45rem,2.5vw,2.15rem);font-weight:700;line-height:1.1;letter-spacing:-.01em}
.icd-masthead__sub{margin:.4rem 0 0;color:#b5b5b5;font-size:.86rem;line-height:1.35}
.icd-masthead__meta{justify-self:end;display:flex;flex-direction:column;align-items:flex-end;line-height:1.1}
.icd-masthead__meta strong{color:#fff;font-size:1.7rem;font-weight:700}
.icd-masthead__meta span{color:var(--icd-accent);font-size:.66rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.icd-masthead+.icd-guide{margin-top:0;margin-bottom:1rem}
@media(max-width:700px){
	.icd-masthead{grid-template-columns:1fr;gap:.6rem;min-height:0;margin:calc(var(--Header-Height-Main,4rem) + .25rem) 0 .5rem;padding:0}
	.icd-masthead__logo{width:auto;max-width:200px;height:52px}
	.icd-masthead--all .icd-masthead__logo{width:170px;height:auto}
	.icd-masthead__title{text-align:left}
	.icd-masthead__meta{display:none}
	.icd-shop .icd-masthead__title h1{font-size:1.4rem}
}

.icd-pg-ico{display:inline-block;width:14px;height:14px;background:currentColor;vertical-align:middle;-webkit-mask:var(--icd-ico-chev-r) center/contain no-repeat;mask:var(--icd-ico-chev-r) center/contain no-repeat}.icd-pg-ico--prev{-webkit-mask-image:var(--icd-ico-chev-l);mask-image:var(--icd-ico-chev-l)}

/* Shared Clear control (all shop filter rails): ICD hover language — white bg / black ink, subtle motion, visible focus */
.icd-shop .icd-shop__clear{border-radius:var(--Radius-S,6px);-webkit-text-fill-color:currentColor;transition:background-color .2s ease,color .2s ease,translate .2s ease,box-shadow .2s ease}
.icd-shop .icd-shop__clear svg{transition:transform .25s ease}
.icd-shop .icd-shop__clear:is(:hover,:focus-visible){translate:0 -1px}
.icd-shop .icd-shop__clear:is(:hover,:focus-visible) svg{transform:rotate(-60deg)}
.icd-shop .icd-shop__clear:focus-visible{outline:0;box-shadow:0 0 0 2px var(--Blue-ICD-Light,#00badb)}
@media (prefers-reduced-motion:reduce){.icd-shop .icd-shop__clear,.icd-shop .icd-shop__clear svg{transition:none}.icd-shop .icd-shop__clear:is(:hover,:focus-visible){translate:none}.icd-shop .icd-shop__clear:is(:hover,:focus-visible) svg{transform:none}}

/* ===== v0.5.28 Shop 1.0: SKU line, Contact Sales, chips, sticky toolbar, mobile filter drawer ===== */
.icd-product-card__sku{margin:-.1rem 0 0;color:#8f9399;font-size:.7rem;font-weight:500;letter-spacing:.02em;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Contact Sales (sales-assisted products): same premium button family as Add to Cart, icon on the right, white/black hover */
.icd-shop[data-icd-shop] .icd-contact-sales{display:inline-flex;align-items:center;justify-content:center;gap:clamp(.2rem,2.2cqi,.4rem);min-width:0;min-height:36px;height:36px;padding:0 clamp(.3rem,3.2cqi,.7rem);border:1px solid var(--icd-card-brand);border-radius:999px;background:transparent;color:#fff;font-size:clamp(.6rem,3.6cqi,.76rem);font-weight:700;line-height:1;white-space:nowrap;overflow:hidden;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease}
.icd-shop[data-icd-shop] .icd-contact-sales::after{content:"";flex:0 0 1.1em;width:1.1em;height:1.1em;background:currentColor;-webkit-mask:var(--icd-ico-arrow) center/contain no-repeat;mask:var(--icd-ico-arrow) center/contain no-repeat;transition:transform .22s ease}
.icd-shop[data-icd-shop] .icd-contact-sales:is(:hover,:focus-visible){background:#fff;color:#111;border-color:#fff}
.icd-shop[data-icd-shop] .icd-contact-sales:is(:hover,:focus-visible)::after{transform:translateX(3px)}
.icd-shop[data-icd-shop] .icd-contact-sales:focus-visible{outline:2px solid var(--icd-card-brand,#fff);outline-offset:2px}
@media(max-width:780px){.icd-shop[data-icd-shop] .icd-contact-sales{min-height:44px;height:44px}}

/* Quick View: brand / meta / purchase actions */
#icd-product-quickview .icd-qv-brand{margin:0;color:var(--popup-accent,#fff);font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
#icd-product-quickview .icd-qv-brand[hidden],#icd-product-quickview .icd-qv-meta[hidden],#icd-product-quickview .icd-product-quickview__contact[hidden]{display:none!important}
#icd-product-quickview .icd-qv-meta{display:flex;flex-wrap:wrap;gap:.25rem .75rem;margin:-.35rem 0 0;color:#9aa0a6;font-size:.78rem}
#icd-product-quickview .icd-qv-meta:empty{display:none}
#icd-product-quickview .icd-qv-meta span:empty{display:none}
#icd-product-quickview .icd-product-quickview__contact{flex:1 1 0;width:auto!important;border:1px solid var(--popup-accent,#fff);background:transparent;color:#fff;font-weight:700;cursor:pointer}
#icd-product-quickview .icd-product-quickview__actions.is-sales .icd-product-quickview__contact{background:var(--popup-accent,#fff);color:var(--popup-button-text,#111)}
#icd-product-quickview .icd-qv-icon--arrow{--qv-icon:var(--icd-ico-arrow)}
#icd-product-quickview .icd-product-quickview__contact:is(:hover,:focus-visible){background:#fff!important;color:#111!important;border-color:#fff}
#icd-product-quickview .icd-product-quickview__contact:is(:hover,:focus-visible) .icd-qv-icon{transform:translateX(3px)}
#icd-product-quickview .icd-product-quickview__contact:focus-visible{outline:2px solid var(--popup-accent,#fff);outline-offset:2px}
#icd-product-quickview .icd-product-quickview__actions.is-sales:not(.has-brand) .icd-product-quickview__contact{flex:1 1 100%}
@media(max-width:560px){#icd-product-quickview .icd-product-quickview__actions .icd-product-quickview__contact{order:-1;flex:0 0 auto;width:100%!important}}
.icd-availability-fallback{font-size:inherit}

/* Contact Sales modal (existing ICD JotForm in an iframe) */
.icd-contact-sales-dialog{--cs-accent:#00badb;width:min(640px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:0;border:1px solid color-mix(in srgb,var(--cs-accent) 45%,transparent);border-radius:14px;background:#111214;color:#fff;box-shadow:0 24px 70px rgba(0,0,0,.6);overflow:hidden}
.icd-contact-sales-dialog[open]{display:flex;flex-direction:column}
.icd-contact-sales-dialog::backdrop{background:rgba(0,0,0,.7);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.icd-cs__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem .5rem 1.2rem}
.icd-cs__eyebrow{display:block;color:var(--cs-accent);font-size:.66rem;font-weight:700;letter-spacing:.16em}
.icd-cs__title{margin:.1rem 0 0;font-size:1.15rem;font-weight:600;color:#fff}
.icd-cs__close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:transparent;color:#fff;cursor:pointer;transition:background-color .2s ease,color .2s ease}
.icd-cs__close:is(:hover,:focus-visible){background:#fff;color:#111}
.icd-cs__close:focus-visible{outline:2px solid var(--cs-accent);outline-offset:2px}
.icd-cs__product{margin:0;padding:0 1.2rem .6rem;color:#a9adb2;font-size:.8rem;line-height:1.35}
.icd-cs__frame{display:block;width:100%;flex:1 1 auto;min-height:min(560px,62dvh);border:0;background:#fff}
.icd-cs__foot{margin:0;padding:.55rem 1.2rem;color:#8f9399;font-size:.74rem}
.icd-cs__foot a{color:#fff;text-decoration:underline}
html:has(.icd-contact-sales-dialog[open]){overflow:hidden}

/* Active filter chips */
.icd-shop .icd-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin:-.4rem 0 1rem}
.icd-shop .icd-chips[hidden]{display:none!important}
.icd-shop .icd-chip{display:inline-flex;align-items:center;gap:.4rem;min-height:32px;padding:0 .35rem 0 .7rem;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.04);color:#e6e7e8;font-size:.76rem;line-height:1;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease}
.icd-shop .icd-chip svg{width:14px;height:14px;flex:0 0 14px;padding:0}
.icd-shop .icd-chip:is(:hover,:focus-visible){background:#fff;color:#111;border-color:#fff}
.icd-shop .icd-chip:focus-visible,.icd-shop .icd-chip-clear:focus-visible{outline:2px solid var(--icd-accent);outline-offset:2px}
.icd-shop .icd-chip-clear{min-height:32px;padding:0 .6rem;border:0;border-radius:999px;background:transparent;color:#9aa0a6;font-size:.76rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.icd-shop .icd-chip-clear:is(:hover,:focus-visible){color:#fff}
@media(pointer:coarse),(max-width:780px){.icd-shop .icd-chip,.icd-shop .icd-chip-clear{min-height:44px}.icd-shop .icd-chip{padding-left:.85rem;padding-right:.55rem}}

/* Sticky toolbar: sits under the fixed site header (header variable + admin bar), compacts once stuck */
.icd-topbar-sentinel{height:1px;margin:0 0 -1px;pointer-events:none}
.icd-shop .icd-shop__topbar{--icd-stick:calc(var(--Header-Height-Main,6rem) + var(--wp-admin--admin-bar--height,0px) + .5rem);position:sticky;top:var(--icd-stick);z-index:5;transition:padding .2s ease,background-color .2s ease}
.icd-shop .icd-shop__topbar.is-stuck{padding-top:.5rem;background:rgba(14,15,17,.86);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.icd-shop .icd-shop__topbar.is-stuck .icd-shop__count,.icd-shop .icd-shop__topbar.is-stuck .icd-shop__label,.icd-shop .icd-shop__topbar.is-stuck output{display:none}
.icd-shop .icd-shop__filters{top:calc(var(--Header-Height-Main,6rem) + var(--wp-admin--admin-bar--height,0px) + 1rem);max-height:calc(100dvh - var(--Header-Height-Main,6rem) - var(--wp-admin--admin-bar--height,0px) - 2rem)}

/* Mobile bar + drawer: hidden on desktop (the rail stays) */
.icd-mobilebar,.icd-drawer-head,.icd-drawer-foot,.icd-drawer-backdrop{display:none}
@media(max-width:780px){
	.icd-shop .icd-shop__topbar{grid-template-columns:1fr;gap:.5rem}
	.icd-shop .icd-shop__size,.icd-shop .icd-shop__sort,.icd-shop .icd-shop__count{display:none}
	.icd-shop .icd-shop__topbar.is-stuck .icd-shop__search{display:none}
	.icd-mobilebar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem}
	.icd-mobilebar__filters,.icd-mobilebar__sort{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:44px;padding:0 .95rem;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.04);color:#fff;font-size:.84rem;font-weight:600;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease}
	.icd-mobilebar__filters:is(:hover,:focus-visible),.icd-mobilebar__sort:is(:hover,:focus-visible,:focus-within){background:#fff;color:#111;border-color:#fff}
	.icd-mobilebar__filters:focus-visible,.icd-mobilebar__sort:focus-within{outline:2px solid var(--icd-accent);outline-offset:2px}
	.icd-mobilebar__filters b{font-weight:700}
	.icd-mobilebar__count{min-width:0;color:#9aa0a6;font-size:.74rem;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
	.icd-mobilebar__sort select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;font-size:16px}

	/* Filter rail -> bottom sheet (same aside, same inputs, same state) */
	.icd-shop .icd-shop__filters{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:100001;display:flex;flex-direction:column;gap:.25rem;max-height:86dvh;margin:0;padding:0 1rem;border-radius:16px 16px 0 0;overflow:hidden auto;transform:translateY(105%);visibility:hidden;transition:transform .28s ease,visibility 0s linear .28s;background:#121315!important;-webkit-backdrop-filter:none;backdrop-filter:none}
	.icd-shop.is-drawer-open .icd-shop__filters{transform:none;visibility:visible;transition:transform .28s ease,visibility 0s}
	.icd-drawer-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:.7rem 0;background:#121315}
	.icd-drawer-head h2{margin:0;font-size:1rem;font-weight:600;color:#fff}
	.icd-drawer-close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:transparent;color:#fff;cursor:pointer}
	.icd-drawer-close:is(:hover,:focus-visible){background:#fff;color:#111}
	.icd-drawer-foot{position:sticky;bottom:0;z-index:2;display:flex;gap:.6rem;margin-top:auto;padding:.75rem 0 calc(.75rem + env(safe-area-inset-bottom,0px));background:#121315;border-top:1px solid rgba(255,255,255,.08)}
	.icd-drawer-clear,.icd-drawer-apply{flex:1 1 0;min-height:48px;border-radius:999px;font-size:.9rem;font-weight:700;cursor:pointer;transition:background-color .2s ease,color .2s ease}
	.icd-drawer-clear{border:1px solid rgba(255,255,255,.25);background:transparent;color:#fff}
	.icd-drawer-apply{flex:2 1 0;border:1px solid var(--icd-accent);background:var(--icd-accent);color:#111}
	.icd-drawer-clear:is(:hover,:focus-visible),.icd-drawer-apply:is(:hover,:focus-visible){background:#fff;color:#111;border-color:#fff}
	.icd-drawer-clear:focus-visible,.icd-drawer-apply:focus-visible,.icd-drawer-close:focus-visible{outline:2px solid var(--icd-accent);outline-offset:2px}
	.icd-drawer-backdrop{position:fixed;inset:0;z-index:100000;display:block;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
	.icd-drawer-backdrop[hidden]{display:none}
	html.icd-drawer-lock{overflow:hidden}
	.icd-shop .icd-shop__filters>.icd-shop__clear,.icd-shop .icd-shop__filters .icd-shop__filters-head .icd-shop__clear{min-height:44px}
}
@media(prefers-reduced-motion:reduce){.icd-shop .icd-shop__filters,.icd-shop .icd-shop__topbar,.icd-contact-sales-dialog *,.icd-shop .icd-contact-sales,.icd-shop .icd-contact-sales::after{transition:none!important}}
#icd-product-quickview .icd-product-quickview__actions>[hidden],#icd-product-quickview .icd-product-quickview__actions .icd-product-quickview__add[hidden]{display:none!important}

/* ===== v0.5.33 stability: page atmosphere animates by compositor transform, not background-position ===== */
/* Animating background-position on a fixed full-viewport 5-gradient layer forced a full-viewport repaint every frame
   (with backdrop-filter panels recomputing on top) -> sustained renderer CPU + memory growth in desktop Chrome.
   Gradients now rasterize once; the oversized layer is moved on the GPU. */
body:has([data-icd-shop])::before{inset:-12%!important;animation:icd-page-drift 28s ease-in-out infinite alternate!important;will-change:transform;contain:strict;transform:translate3d(0,0,0)}
@keyframes icd-page-drift{0%{transform:translate3d(-3%,-2%,0) scale(1.02)}50%{transform:translate3d(2%,3%,0) scale(1.07)}100%{transform:translate3d(4%,-3%,0) scale(1)}}
@media(prefers-reduced-motion:reduce){body:has([data-icd-shop])::before{animation:none!important;will-change:auto}}

/* v0.5.35 — Shop wrapper matches the main ICD container system (ICD-P-Section gutter formula) and a compact intro */
body:has([data-icd-shop]) [data-elementor-type="wp-page"] > .e-con:has([data-icd-shop]){
	align-items:stretch!important;
	padding-inline:max(var(--icd-h-gutter,var(--Section-Sides,1.25rem)),calc((100% - var(--Width-Container-L)) / 2))!important;
}
body:has([data-icd-shop]) .e-con:has(> .elementor-widget [data-icd-shop]) > .elementor-widget{width:100%;max-width:100%}
.icd-shop[data-icd-shop]{padding-inline:0!important;border-radius:0}
.icd-masthead{min-height:0;gap:1rem;margin:0 0 .75rem;padding:0;grid-template-columns:minmax(0,1fr) auto}
.icd-masthead__logo{display:block;line-height:0}
.icd-masthead__logo img{display:block;height:48px;width:auto;max-width:min(60vw,220px);object-fit:contain;object-position:left center}
.icd-masthead__title{text-align:left;max-width:none}
.icd-masthead--brand .icd-masthead__title{display:none}
.icd-masthead--brand{grid-template-columns:auto 1fr auto}
.icd-masthead--all .icd-masthead__title h1{font-size:clamp(1.5rem,2.2vw,2rem);margin:0}
.icd-masthead__sub{margin:.2rem 0 0}
.icd-masthead+.icd-guide{margin-top:0;margin-bottom:.75rem;max-width:none}
@media(max-width:700px){
	.icd-masthead{margin:0 0 .5rem;grid-template-columns:1fr auto}
	.icd-masthead--brand{grid-template-columns:1fr auto}
	.icd-masthead__logo img{height:40px}
}

/* v0.5.35 — Mobile sticky/filter jitter: only the Filters/Sort bar sticks; nothing changes layout while scrolling; decorative animations stop on touch widths */
@media(max-width:780px){
	.icd-shop .icd-shop__topbar{display:contents}
	.icd-shop .icd-shop__search{margin:0 0 .5rem;max-width:none}
	.icd-shop .icd-mobilebar{--icd-stick:calc(var(--Header-Height-Main,4rem) + .25rem);position:sticky;top:var(--icd-stick);z-index:5;margin:0 0 .5rem;padding:.4rem 0;background:rgba(14,15,17,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:none}
	body:has([data-icd-shop])::before{animation:none;will-change:auto}
	.icd-shop[data-icd-shop]::before,.icd-shop[data-icd-shop]::after{animation:none;filter:none;will-change:auto;display:none}
}
@media(max-width:600px){.icd-shop .icd-mobilebar{--wp-admin--admin-bar--height:0px}}
/* Zero-price rule: no "$0.00" for non-purchasable products. Keep the price row's height so card rows stay aligned. */
.icd-product-card__price[data-price-hidden="1"]{min-height:1.4em}
html[data-icd-qv-price-hidden="1"] #icd-product-quickview .icd-product-quickview__price{display:none}
