/* Namespaced card presentation. Theme and WooCommerce retain the outer wrapper and hooks. */
.arc-card,.arc-card * { box-sizing:border-box; }
.arc-card { color:var(--arc-text,#45392b); font-family:Lato,Arial,sans-serif; display:flex; flex-direction:column; height:100%; min-width:0; }
.arc-card .arc-media { position:relative; width:100%; aspect-ratio:1/1; overflow:hidden; border-radius:var(--arc-radius,10px); background:var(--arc-media,#f3efeb); }
.arc-card .arc-image-link { display:block; width:100%; height:100%; }
.arc-card .arc-image { display:block; width:100% !important; height:100% !important; margin:0 !important; object-fit:cover; object-position:center; }
.arc-card .arc-image[hidden],.arc-card .arc-arrow[hidden] { display:none !important; }
.arc-card .arc-body { display:flex; flex:1 1 auto; flex-direction:column; align-items:stretch; text-align:center; min-width:0; padding:16px 20px 0; gap:var(--arc-gap,12px); }
.arc-card .arc-title,.arc-card .arc-title a { color:var(--arc-text,#45392b) !important; font-family:Lato,Arial,sans-serif; font-size:var(--arc-title-desktop,18px) !important; font-weight:700; line-height:1.25; letter-spacing:normal; text-decoration:none; overflow-wrap:anywhere; }
.arc-card .arc-title { margin:0 !important; padding:0; }
.arc-card .arc-title a:focus-visible,.arc-card .arc-image-link:focus-visible { outline:3px solid #a55917; outline-offset:3px; }
.arc-card .arc-rating { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:6px; font-size:var(--arc-details,14px); line-height:1.3; color:var(--arc-text,#45392b); }
.arc-card .arc-stars { position:relative; display:inline-block; white-space:nowrap; color:#c7c0b8; font-size:18px; line-height:1; letter-spacing:1px; }
.arc-card .arc-stars-fill { position:absolute; left:0; top:0; overflow:hidden; white-space:nowrap; color:#a8967e; }
.arc-card .arc-price { margin-top:auto; color:var(--arc-text,#45392b) !important; font-size:var(--arc-price,16px) !important; font-weight:700; line-height:1.4; overflow-wrap:anywhere; }
.arc-card .arc-price .amount,.arc-card .arc-price ins,.arc-card .arc-price ins .amount { color:var(--arc-text,#45392b) !important; font-size:var(--arc-price,16px) !important; font-weight:700; text-decoration:none; }
.arc-card .arc-price del,.arc-card .arc-price del .amount { color:#666 !important; opacity:1 !important; font-size:var(--arc-details,14px) !important; font-weight:400; }
.arc-card .arc-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; }
.arc-card .arc-actions a,.arc-card .arc-actions .button { display:inline-flex !important; justify-content:center; align-items:center; max-width:100%; min-height:40px; margin:0 !important; padding:9px 12px !important; border:1px solid var(--arc-action-bg,#45392b) !important; border-radius:3px; background:var(--arc-action-bg,#45392b) !important; color:var(--arc-action-text,#fff) !important; font:700 var(--arc-details,14px)/1.25 Lato,Arial,sans-serif !important; text-decoration:none; text-align:center; white-space:normal; overflow-wrap:anywhere; }
.arc-card .arc-actions a:hover,.arc-card .arc-actions a:focus-visible { filter:brightness(.85); color:var(--arc-action-text,#fff) !important; }
.arc-card .arc-actions a:focus-visible,.arc-card .arc-arrow:focus-visible { outline:3px solid #a55917; outline-offset:2px; }
.arc-card .arc-arrow { position:absolute; top:50%; transform:translateY(-50%); z-index:2; display:flex; align-items:center; justify-content:center; width:40px; height:40px; min-width:40px; margin:0; padding:10px; border:0; border-radius:50%; background:rgba(255,255,255,.9); color:#45392b; opacity:0; cursor:pointer; }
.arc-card .arc-arrow--prev { left:8px; }.arc-card .arc-arrow--next { right:8px; }
.arc-card .arc-arrow svg { width:18px; height:18px; flex:0 0 18px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.arc-card:hover .arc-arrow,.arc-card:focus-within .arc-arrow,.arc-card .arc-arrow:focus-visible { opacity:1; }
.arc-card .arc-stock { position:absolute; left:8px; bottom:8px; padding:5px 8px; border-radius:3px; background:#45392b; color:#fff; font:700 var(--arc-details,14px)/1.2 Lato,Arial,sans-serif; }
@media(max-width:767px) {
 .arc-card .arc-body { padding:12px 8px 0; }
 .arc-card .arc-title,.arc-card .arc-title a { font-size:var(--arc-title-mobile,16px) !important; }
 .arc-card .arc-arrow { opacity:1; }
}
/* The target's native fallback emits a separate discount label outside WooCommerce's sale-flash filter. */
.product-small.wgm-native-card .wgm-native-card__sale-label { display:none !important; }
.arc-card .arc-tools { position:absolute; right:8px; z-index:3; max-width:calc(100% - 16px); }
.arc-card .arc-tools--top { top:8px; }.arc-card .arc-tools--bottom { bottom:8px; }
/* Actual variation-image previews; these do not change the purchase selection. */
.arc-card .arc-swatches { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:2px; min-width:0; }
.arc-card .arc-swatch[hidden] { display:none !important; }
.arc-card .arc-swatch { display:grid; place-items:center; box-sizing:border-box; width:40px; min-width:40px; max-width:40px; height:40px; min-height:40px; margin:0; padding:5px; border:1px solid transparent; border-radius:50%; background:transparent; box-shadow:none; cursor:pointer; }
.arc-card .arc-swatch-image { display:block; box-sizing:border-box; width:26px !important; height:26px !important; max-width:26px; margin:0 !important; padding:0; border:1px solid #bfb6aa; border-radius:50%; background:var(--arc-media,#f3efeb); object-fit:cover; }
.arc-card .arc-swatch[aria-pressed=true] { border-color:var(--arc-text,#45392b); }
.arc-card .arc-swatch:hover { border-color:var(--arc-text,#45392b); background:transparent; }
.arc-card .arc-swatch:focus-visible { outline:3px solid #a55917; outline-offset:2px; }
