/* Product Showcase: independent from old Shop Grid styles; no global selectors. */
.gcs-showcase{--gcs-sc-gap:16px;--gcs-sc-photo-height:auto;--gcs-sc-ink:#142e28;--gcs-sc-muted:#6b7370;--gcs-sc-button:#0c5842;width:100%;max-width:100%;min-width:0;box-sizing:border-box;color:var(--gcs-sc-ink);}
.gcs-showcase *, .gcs-showcase *::before, .gcs-showcase *::after{box-sizing:border-box}
.gcs-showcase button,.gcs-showcase a{font-family:inherit}
.gcs-showcase a{text-decoration:none}
.gcs-sc-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 22px;min-width:0}
.gcs-sc-head-copy{min-width:0}
.gcs-sc-heading{font-size:clamp(21px,2.2vw,34px);line-height:1.2;font-weight:700;color:inherit;margin:0 0 4px;padding:0}
.gcs-sc-subheading{margin:0;font-size:14px;color:var(--gcs-sc-muted)}
.gcs-sc-view-all{color:var(--gcs-sc-button);white-space:nowrap;flex:none;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.gcs-sc-view-all:hover{color:var(--gcs-accent,#980d3e)}
.gcs-sc-track{display:grid;grid-template-columns:repeat(var(--gcs-sc-cols,4),minmax(0,1fr));gap:var(--gcs-sc-gap);width:100%;min-width:0;align-items:stretch}
.gcs-showcase-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border-radius:15px;background:#fff;position:relative;isolation:isolate;border:1px solid rgba(10,45,38,.06);transition:box-shadow .2s ease,transform .2s ease}
.gcs-showcase-card:hover{box-shadow:0 12px 28px rgba(20,40,32,.09);transform:translateY(-2px)}
.gcs-sc-media{position:relative;background:#f7f7f5;overflow:hidden;flex:none;aspect-ratio:1/1;height:var(--gcs-sc-photo-height,auto);min-height:0;width:100%;border-radius:inherit;border-bottom-left-radius:0;border-bottom-right-radius:0}
.gcs-sc-image-link{display:block;width:100%;height:100%;overflow:hidden}
.gcs-sc-image{width:100%;height:100%;object-fit:cover;object-position:center;display:block;max-width:none;transition:transform .4s ease}
.gcs-showcase-card:hover .gcs-sc-image{transform:scale(1.035)}
.gcs-sc-corner,.gcs-sc-sale{position:absolute;top:12px;z-index:2;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:700;line-height:1.15;max-width:46%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.gcs-sc-corner{left:12px;background:#ffdc25;color:#122d1d}
.gcs-sc-sale{right:12px;background:#de3627;color:#fff}
.gcs-sc-rating{display:inline-flex;gap:4px;align-items:center;width:max-content;max-width:100%;font-size:12px;color:#075c47;line-height:1.3}
.gcs-sc-rating-count{font-weight:400;color:#777}
.gcs-sc-star{color:#e7a51e;font-size:13px}
.gcs-sc-rating-overlay .gcs-sc-media>.gcs-sc-rating{position:absolute;left:12px;bottom:12px;z-index:2;padding:4px 6px;background:rgba(255,255,255,.92);border-radius:4px}
.gcs-sc-rating-pill{background:#f0f7f3;border-radius:5px;padding:4px 6px}
.gcs-sc-body{padding:16px 16px 18px;display:flex;flex-direction:column;flex:1;gap:9px;min-width:0;min-height:0;text-align:var(--gcs-sc-align,left)}
.gcs-sc-title{color:inherit;display:block;font-weight:700;font-size:clamp(14px,1.18vw,20px);line-height:1.32;min-height:1.32em;margin:0;overflow-wrap:anywhere;letter-spacing:-.015em}
.gcs-sc-title:hover{color:var(--gcs-accent,#980d3e)}
.gcs-sc-intro{margin:0;color:var(--gcs-sc-muted);font-size:13px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.gcs-sc-price-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;margin-top:auto}
.gcs-sc-price{color:var(--gcs-sc-ink);font-size:17px;font-weight:700;line-height:1.4;min-width:0;white-space:normal}
.gcs-sc-price ins{text-decoration:none;background:transparent;color:inherit}
.gcs-sc-price del{color:#98a09b;font-size:.8em;font-weight:400;white-space:nowrap;margin-right:5px}
.gcs-sc-price del .woocommerce-Price-amount{text-decoration:line-through}
.gcs-sc-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;border-radius:50px;padding:10px 14px;border:1px solid transparent;cursor:pointer;white-space:nowrap;max-width:100%;font-size:13px;font-weight:700;line-height:1.25;text-decoration:none!important;transition:filter .15s ease,background-color .15s ease,border-color .15s ease,transform .15s ease}
.gcs-sc-action span:not(.gcs-sc-btn-icon){overflow:hidden;text-overflow:ellipsis}
.gcs-sc-action:focus-visible,.gcs-sc-arrow:focus-visible{outline:3px solid #6cb8a0;outline-offset:3px}
.gcs-sc-add{background:var(--gcs-sc-button);color:#fff;flex:none}
.gcs-sc-add:hover{background:#084131;color:#fff}
.gcs-sc-buy{background:#121b18;color:#fff}
.gcs-sc-buy:hover{background:#364c43;color:#fff}
.gcs-sc-action:disabled{opacity:.65;cursor:wait}
.gcs-sc-btn-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.gcs-sc-btn-icon .gcs-svg{width:17px;height:17px}
.gcs-sc-buttons{display:flex;gap:8px;width:100%}
.gcs-sc-buttons .gcs-sc-action{flex:1;min-width:0}
.gcs-sc-buttons-full .gcs-sc-buttons .gcs-sc-action{width:100%}
.gcs-sc-buttons-icon .gcs-sc-buttons .gcs-sc-action{border-radius:10px}
.gcs-sc-buy-only{margin-top:4px}
.gcs-sc-mode-carousel .gcs-sc-carousel-shell{position:relative;min-width:0;width:100%}
.gcs-sc-mode-carousel .gcs-sc-track{display:flex;gap:var(--gcs-sc-gap);overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;scroll-padding-inline-start:0;overscroll-behavior-inline:contain;scrollbar-width:none;align-items:stretch;padding-bottom:4px}
.gcs-sc-mode-carousel .gcs-sc-track::-webkit-scrollbar{display:none}
.gcs-sc-mode-carousel .gcs-showcase-card{flex:0 0 calc((100% - var(--gcs-sc-offset) - (var(--gcs-sc-cols,4) - 1)*var(--gcs-sc-gap))/var(--gcs-sc-cols,4));scroll-snap-align:start;min-width:0}
.gcs-sc-carousel-controls{display:flex;gap:10px;justify-content:flex-end;align-items:center;margin-top:16px}
.gcs-sc-arrow{border:1px solid #d8e3dc;border-radius:50%;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;background:#fff;color:var(--gcs-sc-button);font-size:24px;line-height:1;cursor:pointer;padding:0}
.gcs-sc-arrow:hover{background:var(--gcs-sc-button);color:#fff}
.gcs-sc-dots{display:flex;gap:5px;justify-content:center;align-items:center}
.gcs-sc-dot{border:0;width:7px;height:7px;padding:0;border-radius:100%;background:#bec8c3;cursor:pointer}
.gcs-sc-dot.is-active{width:17px;border-radius:8px;background:var(--gcs-sc-button)}
.gcs-sc-ugaoo .gcs-sc-media{aspect-ratio:1/1}
.gcs-sc-deyga .gcs-sc-media{background:#f3f2f1}
.gcs-sc-deyga .gcs-sc-image{object-fit:contain}
.gcs-sc-deyga .gcs-sc-buttons .gcs-sc-action{border-radius:9px}
.gcs-sc-beauty .gcs-showcase-card{border-radius:20px}
.gcs-sc-beauty .gcs-sc-media{aspect-ratio:4/3;background:#fff3f4}
.gcs-sc-beauty .gcs-sc-image{object-fit:contain}
.gcs-sc-beauty .gcs-sc-body{padding:12px}
.gcs-sc-minimal .gcs-showcase-card{box-shadow:none;border:none;background:transparent;border-radius:8px}
.gcs-sc-minimal .gcs-sc-body{padding:10px 2px}
.gcs-sc-minimal .gcs-sc-media{border-radius:9px}
.gcs-sc-minimal .gcs-sc-title{font-size:14px}
.gcs-sc-fashion .gcs-sc-media{aspect-ratio:3/4}
.gcs-sc-fashion .gcs-sc-body{padding:13px}
.gcs-sc-fashion .gcs-sc-sale{border-radius:4px}
.gcs-sc-tech .gcs-sc-image{object-fit:contain;padding:14px}
.gcs-sc-tech .gcs-sc-media{background:#f6f6f6}
.gcs-sc-tech .gcs-sc-buttons .gcs-sc-action{border-radius:50px}
.gcs-sc-empty{padding:20px;background:#f5f7f5;border:1px dashed #bbc6bd;border-radius:12px}
@media(max-width:1024px){
.gcs-sc-mode-grid .gcs-sc-track{grid-template-columns:repeat(var(--gcs-sc-tab,3),minmax(0,1fr))}
.gcs-sc-mode-carousel .gcs-showcase-card{flex-basis:calc((100% - var(--gcs-sc-offset) - (var(--gcs-sc-tab,3) - 1)*var(--gcs-sc-gap))/var(--gcs-sc-tab,3))}
}
@media(max-width:767px){
.gcs-sc-mode-grid .gcs-sc-track{grid-template-columns:repeat(var(--gcs-sc-mob,2),minmax(0,1fr))}
.gcs-sc-mode-carousel .gcs-showcase-card{flex-basis:calc((100% - var(--gcs-sc-offset) - (var(--gcs-sc-mob,2) - 1)*var(--gcs-sc-gap))/var(--gcs-sc-mob,2))}
.gcs-sc-body{padding:11px;gap:7px}.gcs-sc-title{font-size:13px}.gcs-sc-price{font-size:14px}
.gcs-sc-action{font-size:11px;min-height:36px;padding:7px 8px}
.gcs-sc-corner,.gcs-sc-sale{top:6px;font-size:9px;padding:4px 6px}
.gcs-sc-corner{left:6px}.gcs-sc-sale{right:6px}
.gcs-sc-rating-overlay .gcs-sc-media>.gcs-sc-rating{left:6px;bottom:6px}
.gcs-sc-heading{font-size:22px}
.gcs-sc-head{align-items:flex-start}
}
@media(max-width:430px){.gcs-sc-buttons-inline .gcs-sc-price-actions{flex-wrap:wrap}.gcs-sc-buttons-inline .gcs-sc-add{margin-left:auto}.gcs-sc-buttons-dual .gcs-sc-buttons{gap:4px}}
@media(prefers-reduced-motion:reduce){.gcs-showcase-card,.gcs-sc-image,.gcs-sc-action{transition:none!important}.gcs-sc-mode-carousel .gcs-sc-track{scroll-behavior:auto}}

/* v14: Product-specific ACF ratings and in-grid promotional card. */
.gcs-showcase .gcs-sc-rating-stars{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;background:transparent;padding:0;line-height:1.4}
.gcs-showcase .gcs-sc-stars-track{display:inline-block;position:relative;color:#cbd2cb;font-size:18px;letter-spacing:1px;line-height:1;white-space:nowrap}
.gcs-showcase .gcs-sc-stars-fill{position:absolute;left:0;top:0;width:var(--gcs-sc-rating-fill,0%);overflow:hidden;color:#f1b32c;white-space:nowrap;line-height:inherit}
.gcs-showcase .gcs-sc-rating-separator{color:#8c9890}
.gcs-showcase .gcs-sc-promo{position:relative;isolation:isolate;overflow:hidden;min-height:0;background:#233d32;border-radius:16px;display:flex;flex-direction:column;justify-content:stretch}
.gcs-showcase .gcs-sc-promo-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.gcs-showcase .gcs-sc-promo-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.3),transparent 42%,rgba(0,0,0,.45))}
.gcs-showcase .gcs-sc-promo-content{display:flex;flex-direction:column;align-items:stretch;gap:10px;width:100%;height:100%;min-height:220px;padding:20px;color:#fff}
.gcs-showcase .gcs-sc-promo-title{font-size:clamp(17px,1.4vw,24px);font-weight:700;line-height:1.2;color:inherit;margin:0}
.gcs-showcase .gcs-sc-promo-description{font-size:14px;line-height:1.4;color:inherit;margin:0}
.gcs-showcase .gcs-sc-promo-button{display:inline-flex;align-items:center;justify-content:center;align-self:stretch;min-height:43px;padding:10px 14px;margin-top:auto;border:1px solid transparent;border-radius:999px;background:#fff;color:#123a2a;text-decoration:none;font-weight:700;font-size:14px;text-align:center;transition:background .15s,border-color .15s,color .15s}
.gcs-showcase .gcs-sc-promo-button:hover{background:#e9f4ec;color:#0a3928}
/* Promotional cards are a single product slot in either display mode. */
.gcs-sc-mode-carousel .gcs-sc-promo{scroll-snap-align:start}
@media(max-width:767px){.gcs-showcase .gcs-sc-promo-content{padding:12px;min-height:160px}.gcs-showcase .gcs-sc-promo-title{font-size:15px}.gcs-showcase .gcs-sc-promo-button{min-height:36px;font-size:12px;padding:7px 9px}.gcs-showcase .gcs-sc-stars-track{font-size:13px}}
