.wf_product{flex:0 0 100%;background:var(--color-bg);text-align:center;position:relative;padding:2rem 1.6rem 1.6rem;display:flex;flex-direction:column;transition:transform .4s ease,opacity .3s ease;border:.1rem solid var(--color-border);border-radius:0}
.wf_product:hover{opacity:.96}
.wf_product:hover figure img:not(.hover-img){transform:scale(1.03)}
.wf_product a:hover{opacity:1}
.wf_product figure{position:relative;overflow:hidden;margin-bottom:1.6rem}
.wf_product figure img{width:100%;height:auto;max-height:32rem;min-height:32rem;object-fit:contain;transition:opacity .4s ease,transform .6s ease;border-radius:0}
.wf_product figure img.hover-img{position:absolute;inset:0;width:100%;height:100%;opacity:0;z-index:2;background:var(--color-bg)}
.wf_product figure.has-hover:hover img:not(.hover-img){opacity:0}
.wf_product figure.has-hover:hover .hover-img{opacity:1}
.wf_product h3{font-family:var(--font-family-serif);font-size:1.6rem;font-weight:500;color:var(--color-text);margin-bottom:.8rem;line-height:1.4;padding:0 1rem;text-transform:none;letter-spacing:.02em;margin:auto 0 0}
.wf_product h3 a:hover{color:var(--wf-cp)}
.wf_product p{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:.8rem;font-family:var(--font-family-sans);font-weight:400;color:var(--color-text-muted);margin:auto 0 1.2rem;margin:1rem 0 0;font-size:1.4rem}
.wf_product p strong,.wf_product p s,.wf_product p button{padding:.4rem 1.2rem;font-size:1.3rem;line-height:1.4;border-radius:0}
.wf_product p strong{background:var(--color-bg-alt);color:var(--color-text)}
.wf_product p s{background:var(--color-bg-alt);opacity:1}
.wf_product p button{background:var(--color-bg);color:var(--color-text);font-weight:500;border:.1rem solid var(--color-border);transition:background .3s ease,color .3s ease,transform .2s ease}
.wf_product p button:hover{background:var(--color-bg-alt)}
.wf_product p button[aria-pressed=true]{background:var(--color-border);color:var(--color-text-muted);transform:scale(1.03)}
.wf_product p.variants{margin-top:1rem}
.wf_product .btn{position:relative;overflow:hidden;margin-top:1rem;align-self:center;font-size:1.4rem;padding:1.2rem 2.4rem;border-radius:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,opacity .2s ease;background:var(--wf-cp);color:#fff}
.wf_product .btn svg{position:absolute;opacity:0;transform:scale(0);transition:opacity .3s ease,transform .5s cubic-bezier(.34,1.56,.64,1);pointer-events:none}
.wf_product .btn span{transition:opacity .3s ease,transform .3s ease}
.wf_product .btn.active{transform:scale(.98)}
.wf_product .btn.active span{opacity:0;transform:translateY(-8px)}
.wf_product .btn.active svg{opacity:1;transform:scale(1.3)}
.wf_product .btn:hover{opacity:.8}
.wf_product .wf_product_tags{position:absolute;top:1.2rem;left:1.2rem;display:flex;flex-wrap:wrap;gap:.8rem;z-index:3}
.wf_product .wf_product_tags strong,.wf_product .wf_product_tags span,.wf_product .wf_product_tags p{display:inline-flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:500;letter-spacing:.03em;padding:.4rem 1rem;text-transform:uppercase;line-height:1.3;border:.1rem solid transparent;border-radius:0;user-select:none;transition:all .3s ease;margin:0}
.wf_product .wf_product_tags strong{background:var(--color-primary);color:#fff}
.wf_product .wf_product_tags span{background:var(--wf-cp);color:var(--color-bg)}
.wf_product .wf_product_tags p{background:#2e7d32;color:#fff}
.wf_product .wf_product_tags strong{background:#b71c1c;color:#fff}
.wf_product .wf_product_tags.tr{top:1.2rem;right:1.2rem;left:unset;display:flex;flex-direction:column}
.wf_product .wf_product_badge{background:#b71c1c;color:#fff;font-size:1.2rem;font-weight:500;letter-spacing:.03em;padding:.4rem .8rem;border-radius:50%;width:4.2rem;height:4.2rem;display:flex;align-items:center;justify-content:center;line-height:1;transform:rotate(6deg);box-shadow:0 0 0 .2rem var(--color-bg);transition:transform .3s ease}
.wf_product .wf_product_badge:hover{transform:rotate(0) scale(1.05)}
.wf_product .wf_add_to_wishlist{background:var(--color-bg-alt);color:#333;font-size:1.2rem;font-weight:500;letter-spacing:.03em;padding:.4rem .8rem;border-radius:50%;width:4.2rem;height:4.2rem;display:flex;align-items:center;justify-content:center;line-height:1;transform:rotate(6deg);box-shadow:0 0 0 .2rem var(--color-bg);transition:transform .3s ease,background .3s ease,color .3s ease}
.wf_product .wf_add_to_wishlist:hover{transform:rotate(0) scale(1.05);background:#d5d5d5;color:#000}
.wf_product .wf_add_to_wishlist svg{font-size:2rem;color:var(--wf-cp)}
.wf_product .wf_add_to_wishlist [data-icon=heart2]{display:none}
.wf_product .wf_add_to_wishlist.is-active [data-icon=heart2]{display:block}
.wf_product .wf_add_to_wishlist.is-active [data-icon=heart]{display:none}
.wf_listing_grid .wf_product{width:100%;background:var(--color-bg);border:.1rem solid var(--color-border);border-radius:0;transition:transform .4s ease,box-shadow .4s ease}
.wf_listing_grid .wf_product:hover{transform:translateY(-.3rem);box-shadow:var(--shadow-md)}
.wf_product_view .r .wf_variants{margin:var(--space-lg)0;display:flex;flex-direction:column;gap:var(--space-md)}
.wf_product_view .r .wf_variants .wf_variant p{font-size:1.4rem;font-weight:600;margin-bottom:.6rem;color:var(--color-text)}
.wf_product_view .r .wf_variants .wf_variant--images{position:relative}
.wf_product_view .r .wf_variants .wf_variant--images .wf_variant_options{display:flex;align-items:center;gap:.8rem;overflow-x:auto;padding:.4rem 0;-webkit-overflow-scrolling:touch}
.wf_product_view .r .wf_variants .wf_variant--images .wf_variant_options::-webkit-scrollbar{height:.4rem}
.wf_product_view .r .wf_variants .wf_variant--images .wf_variant_options::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:2rem}
.wf_product_view .r .wf_variants .wf_variant--images .wf_variant_options--grid{display:flex;flex-wrap:wrap}
.wf_product_view .r .wf_variants .wf_variant--images .wf_color_option{width:6rem;height:6rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-bg-alt);padding:.2rem;transition:border-color .2s ease}
.wf_product_view .r .wf_variants .wf_variant--images .wf_color_option img{width:100%;height:100%;object-fit:contain;border-radius:var(--radius-xs)}
.wf_product_view .r .wf_variants .wf_variant--images .wf_color_option.active,.wf_product_view .r .wf_variants .wf_variant--images .wf_color_option[aria-pressed=true],.wf_product_view .r .wf_variants .wf_variant--images .wf_color_option:hover{border-color:var(--wf-cp)}
.wf_product_view .r .wf_variants .wf_variant--images .wf_colors_more{width:6rem;height:6rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--wf-surface);color:var(--wf-text-primary);font-size:1.2rem;font-weight:500;transition:all var(--transition-fast)}
.wf_product_view .r .wf_variants .wf_variant--images .wf_colors_more:hover{background-color:var(--color-bg-alt)}
.wf_product_view .r .wf_variants .wf_variant--images p{font-size:1.5rem;margin-bottom:.8rem;color:var(--wf-text-primary);font-weight:500}
.wf_product_view .r .wf_variants .wf_variant--images .wf_colors_dropdown{display:block;visibility:hidden;position:absolute;top:calc(100% + .8rem);left:0;z-index:20;width:100%;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden;opacity:0;transform:translateY(-.4rem);transition:opacity .25s,transform .25s,visibility .25s}
.wf_product_view .r .wf_variants .wf_variant--images .wf_colors_dropdown_inner{padding:1.6rem;max-height:30rem;overflow-y:auto;display:flex;flex-wrap:wrap;align-items:center;gap:.8rem}
.wf_product_view .r .wf_variants .wf_variant--images .wf_colors_dropdown_inner .wf_color_option{flex:unset}
.wf_product_view .r .wf_variants .wf_variant--images.open .wf_colors_dropdown{visibility:visible;opacity:1;transform:translateY(0)}
.wf_product_view .r .wf_variants .wf_variant--sizes button{padding:.6rem 1.2rem;border-radius:0;border:1px solid var(--color-border);background-color:var(--color-bg-alt);color:var(--color-text);font-size:1.4rem;font-weight:500;transition:all var(--transition-fast)}
.wf_product_view .r .wf_variants .wf_variant--sizes button.active,.wf_product_view .r .wf_variants .wf_variant--sizes button[aria-pressed=true]{background-color:var(--wf-cp);color:#fff;border-color:var(--wf-cp)}
.wf_product_view .r .wf_variants .wf_variant--sizes button.active:hover,.wf_product_view .r .wf_variants .wf_variant--sizes button[aria-pressed=true]:hover{background-color:var(--wf-cp);opacity:.8}
.wf_product_view .r .wf_variants .wf_variant--sizes button:hover{background-color:var(--color-bg)}
.wf_product_view .r .wf_variants .wf_variant--sizes .wf_variant_options{display:flex;flex-wrap:wrap;gap:.8rem}
.wf_product_view .r .wf_add_to_cart,.wf_product_view .r .wf_add_to_wishlist{margin-top:var(--space-md);width:100%;gap:1rem;background-color:var(--color-bg-alt);text-transform:uppercase;transition:background-color .3s ease,color .3s ease,transform .15s ease}
.wf_product_view .r .wf_add_to_cart svg,.wf_product_view .r .wf_add_to_wishlist svg{font-size:2rem}
.wf_product_view .r .wf_add_to_cart [data-icon=heart2],.wf_product_view .r .wf_add_to_wishlist [data-icon=heart2]{display:none}
.wf_product_view .r .wf_add_to_cart:hover,.wf_product_view .r .wf_add_to_wishlist:hover{background-color:#fff}
.wf_product_view .r .wf_add_to_cart:active,.wf_product_view .r .wf_add_to_wishlist:active{transform:scale(.97)}
.wf_product_view .r .wf_add_to_cart.is-active,.wf_product_view .r .wf_add_to_wishlist.is-active{background-color:#000;color:#fff}
.wf_product_view .r .wf_add_to_cart.is-active [data-icon=heart2],.wf_product_view .r .wf_add_to_wishlist.is-active [data-icon=heart2]{display:block}
.wf_product_view .r .wf_add_to_cart.is-active [data-icon=heart],.wf_product_view .r .wf_add_to_wishlist.is-active [data-icon=heart]{display:none}
.wf_slider .wf_product{background-color:var(--color-bg);transition:opacity .3s ease;flex:0 0 100%}
.wf_slider--bg .wf_product{background-color:var(--color-bg)}