/* 1R ReStart — product-card.css
 * Canonical order: foundations → layout/components → states/integrations → responsive.
 */

/* ==========================================================================
   PRODUCTS / CATALOG
   ========================================================================== */

.woocommerce ul.products{display:grid;grid-template-columns:repeat(var(--r1-shop-columns,4),minmax(0,1fr));gap:24px;margin:28px 0;}

.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important;}

.woocommerce ul.products li.product{float:none;width:auto;margin:0;padding:0 0 18px;border:1px solid var(--r1-border);border-radius:var(--r1-card-radius);overflow:hidden;background:#fff;transition:transform .18s ease,box-shadow .18s ease;}

.woocommerce ul.products li.product:hover{transform:translateY(-2px);box-shadow:var(--r1-shadow);}

.woocommerce ul.products li.product a img{margin:0 0 14px;aspect-ratio:var(--r1-product-image-ratio,1/1);object-fit:var(--r1-product-image-fit,cover);background:var(--r1-bg);}

.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce ul.products li.product .price,.woocommerce ul.products li.product .button,.woocommerce ul.products li.product .star-rating{margin-left:16px;margin-right:16px;}

.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1rem;color:var(--r1-text);padding:0;}

.woocommerce ul.products li.product .price{color:var(--r1-text);font-weight:700;}

.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category){position:relative;display:flex;flex-direction:column;float:none;width:auto;min-width:0;height:100%;margin:0;padding:0;overflow:hidden;background:var(--r1-surface);border:1px solid var(--r1-border);border-radius:var(--r1-card-radius);box-shadow:0 2px 10px rgba(15,23,42,.045);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;box-sizing:border-box;}

.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category):hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--r1-hover) 30%,var(--r1-border));box-shadow:var(--r1-shadow);}

.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category) .woocommerce-LoopProduct-link,.reactor-product-slider ul.products.reactor-product-slider__track>li.product:not(.product-category) .woocommerce-LoopProduct-link{display:flex;flex:1 1 auto;flex-direction:column;min-width:0;color:inherit;text-decoration:none;}

.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category) a img{display:block;width:calc(100% - 24px);height:auto;aspect-ratio:var(--r1-product-image-ratio,1/1);margin:12px auto 0;object-fit:var(--r1-product-image-fit,cover);object-position:center;background:var(--r1-surface);border-radius:0;transition:transform .28s ease;}

.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category):hover a img{transform:scale(1.02);}

.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category) .woocommerce-loop-product__title{min-height:2.7em;margin:0;padding:16px 16px 0;overflow:hidden;color:var(--r1-text);font-size:1rem;font-weight:600;line-height:1.35;text-align:left;text-transform:none;letter-spacing:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}

.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category) .star-rating{margin:10px 16px 0;}

.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category) .price{display:block;margin:auto 16px 14px;padding-top:12px;color:var(--r1-primary);font-size:1.08rem;font-weight:700;line-height:1.25;}

.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category) .price ins,.reactor-product-slider ul.products.reactor-product-slider__track>li.product:not(.product-category) .price ins{color:#e5484d;text-decoration:none;}

.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category) .price del,.reactor-product-slider ul.products.reactor-product-slider__track>li.product:not(.product-category) .price del{color:var(--r1-muted);opacity:.72;font-size:.9em;font-weight:500;}

.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category)>.button,.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category) .add_to_cart_button{display:flex;align-items:center;justify-content:center;width:auto;min-height:46px;margin:0 16px;padding:11px 14px;border:1px solid var(--r1-primary);border-radius:var(--r1-button-radius);background:var(--r1-primary);color:#fff;font-weight:600;line-height:1.2;text-align:center;text-decoration:none;box-shadow:none;}

.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category)>.button:hover,.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category) .add_to_cart_button:hover{background:var(--r1-hover);border-color:var(--r1-hover);color:#fff;}

:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category):hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--r1-hover) 30%,var(--r1-border));box-shadow:var(--r1-shadow);}
:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category) .woocommerce-loop-product__title,:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category) .price{color:var(--r1-text);}

:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category)>.button{margin-left:16px;margin-right:16px;}

:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category){background:var(--r1-surface);border:1px solid var(--r1-border);border-radius:var(--r1-card-radius);box-shadow:0 2px 10px rgba(15,23,42,.045);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;overflow:hidden;padding-bottom:0;}

:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category) .r1-product-card-actions>.button{float:none;display:flex;align-items:center;justify-content:center;flex:0 0 50%;width:50%;max-width:50%;min-width:0;min-height:56px;margin:0;padding:14px 10px;border:0;border-radius:0;box-shadow:none;font-size:13px;font-weight:400;line-height:1.2;text-align:center;text-decoration:none;box-sizing:border-box;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;transform:translateY(0) scale(1);transition:background-color .16s ease,
        border-color .16s ease,
        color .16s ease,
        box-shadow .12s ease,
        transform .08s ease,
        filter .08s ease;}
.woocommerce ul.products li.product:not(.product-category) .r1-product-card-actions>:is(.add_to_cart_button,.product_type_simple),.reactor-product-slider ul.products li.product:not(.product-category) .r1-product-card-actions>:is(.add_to_cart_button,.product_type_simple){border-radius:0 0 0 var(--r1-card-radius);background:var(--r1-primary);color:#fff;}

:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category) .r1-product-card-actions>.r1-product-details-button{border-radius:0 0 var(--r1-card-radius) 0;background:#f7f9fb;color:#111;border-left:1px solid var(--r1-border);}
:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category) .r1-product-card-actions>a.button{height:auto;float:none;clear:none;position:static;}
.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category) .r1-product-card-actions>a.button:is(.add_to_cart_button,.product_type_simple),.woocommerce ul.products li.product:not(.product-category) .r1-product-card-actions>a.button:is(.add_to_cart_button,.product_type_simple),.reactor-product-slider ul.products li.product:not(.product-category) .r1-product-card-actions>a.button:is(.add_to_cart_button,.product_type_simple){background:var(--r1-primary);color:#fff;}
:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category) .r1-product-card-actions>a.button.r1-product-details-button{border-left:1px solid var(--r1-border);background:#f7f9fb;color:#111;}

:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category) .r1-product-card-actions{gap:0;position:static;display:flex;align-items:stretch;width:100%;opacity:1;pointer-events:auto;border:0;border-top:1px solid var(--r1-border);background:var(--r1-surface);box-shadow:none;box-sizing:border-box;overflow:hidden;border-radius:0 0 var(--r1-card-radius) var(--r1-card-radius);margin:auto 0 0;padding:0;}

:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category) .r1-product-card-actions>.screen-reader-text{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

.reactor-product-slider ul.products.reactor-product-slider__track>li.product:not(.product-category){display:flex;flex-direction:column;height:100%;padding:0;}


.reactor-product-slider ul.products.reactor-product-slider__track>li.product:not(.product-category) .woocommerce-LoopProduct-link>img{display:block;width:calc(100% - 24px);height:auto;aspect-ratio:var(--r1-product-image-ratio,1/1);margin:12px auto 0;object-fit:var(--r1-product-image-fit,cover);object-position:center;background:#fff;border-radius:0;}

.reactor-product-slider ul.products.reactor-product-slider__track>li.product:not(.product-category) .woocommerce-loop-product__title{min-height:2.7em;margin:0;padding:16px 16px 0;color:var(--r1-text);font-size:1rem;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;}

.reactor-product-slider ul.products.reactor-product-slider__track>li.product:not(.product-category) .price{display:block;margin:auto 16px 14px;padding-top:12px;color:var(--r1-text);font-size:1.08rem;font-weight:700;}



body.r1-product-card-classic .woocommerce ul.products li.product:not(.product-category){box-shadow:none;transform:none;}

body.r1-product-card-classic .woocommerce ul.products li.product:not(.product-category):hover{transform:none;box-shadow:none;border-color:var(--r1-border);}

body.r1-product-card-classic .woocommerce ul.products li.product:not(.product-category) a img{border-radius:0;}

.woocommerce ul.products > li.product-category + li.product:not(.product-category){grid-column-start:1;clear:both;}


.woocommerce ul.products li.product:not(.product-category) .r1-product-card-actions>:is(.add_to_cart_button,.product_type_simple):hover,.reactor-product-slider ul.products li.product:not(.product-category) .r1-product-card-actions>:is(.add_to_cart_button,.product_type_simple):hover{background:var(--r1-hover);color:#fff;}

:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category) .r1-product-card-actions>.r1-product-details-button:hover{background:color-mix(in srgb,var(--r1-bg) 82%,var(--r1-text) 18%);color:var(--r1-text);}

:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category) .r1-product-card-actions>.button:active{transform:translateY(1px) scale(.985);filter:brightness(.96);box-shadow:inset 0 2px 5px rgba(15,23,42,.18);transition-duration:.04s;}

:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category) .r1-product-card-actions>.button:focus-visible{outline:2px solid var(--r1-primary);outline-offset:-3px;}
:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category),.single-product div.product{position:relative;}
:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category) .onsale,.single-product div.product > .onsale{position:absolute;z-index:20;display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:0;min-height:28px;margin:0;padding:0 10px;border:0;border-radius:8px;background:#e5484d;color:#fff;font-size:11px;font-weight:650;line-height:1;letter-spacing:.01em;text-transform:none;white-space:nowrap;box-shadow:0 2px 8px rgba(15,23,42,.14);transform:none;}

:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category) .onsale{top:20px;left:20px;right:auto;}

.single-product div.product > .onsale{top:16px;left:16px;right:auto;}

/* ==========================================================================
   RESPONSIVE / CONDITIONAL
   ========================================================================== */

@media (max-width:1100px){
.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr));}
}

@media (max-width:800px){
.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (max-width:440px){
.woocommerce ul.products{gap:12px;}
.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce ul.products li.product .price,.woocommerce ul.products li.product .button,.woocommerce ul.products li.product .star-rating{margin-left:12px;margin-right:12px;}
.woocommerce ul.products li.product .button{font-size:.9rem;padding:.7rem .8rem;}
}

@media (max-width:640px){
.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category) a img{width:calc(100% - 16px);margin-top:8px;}
.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category) .woocommerce-loop-product__title{padding:12px 12px 0;font-size:.88rem;}
.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category) .price{margin-right:12px;margin-left:12px;font-size:1rem;}
}

@media (prefers-reduced-motion:reduce){
.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category),.woocommerce ul.products:not(.reactor-category-grid) li.product:not(.product-category) a img{transition:none;}
}

@media (max-width:640px){
:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category) .r1-product-card-actions>.button{min-height:48px;padding:12px 6px;font-size:12px;}

.reactor-product-slider ul.products.reactor-product-slider__track>li.product:not(.product-category) .woocommerce-LoopProduct-link>img{width:calc(100% - 16px);margin-top:8px;}

.woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(var(--r1-products-mobile-columns,2),minmax(0,1fr));}
:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category) .onsale{top:14px;left:14px;}
.single-product div.product > .onsale{top:12px;left:12px;}
}

@media (prefers-reduced-motion:reduce){
:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category) .r1-product-card-actions>.button{transition:none;}
}

/* Product image hover — theme-owned, one effect per state. */
body.r1-hover-image .woocommerce ul.products li.product:not(.product-category) .woocommerce-LoopProduct-link{position:relative;}
body.r1-hover-image .woocommerce ul.products li.product:not(.product-category) .r1-restart-secondary-image{position:absolute;inset:0;width:100%;height:100%;object-fit:var(--r1-product-image-fit,cover);opacity:0;transition:opacity .25s ease;pointer-events:none;z-index:1;}
body.r1-hover-image .woocommerce ul.products li.product:not(.product-category):hover .r1-restart-secondary-image{opacity:1;}
body.r1-hover-image .woocommerce ul.products li.product:not(.product-category):hover a img{transform:none;}

/* 1.0.212 — Native two-action card footer: Reactor may replace Details with
   One-click, but ReStart remains the sole owner of product card appearance. */
:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category)
.r1-product-card-actions > .button.r1-oneclick-trigger--product{
    display:flex;align-items:center;justify-content:center;flex:0 0 50%;width:50%;max-width:50%;
    min-width:0;min-height:56px;margin:0;padding:14px 10px;
    border:0;border-left:1px solid var(--r1-border);border-radius:0 0 var(--r1-card-radius) 0;
    background:#f7f9fb;color:#111;box-shadow:none;
    font-size:13px;font-weight:400;line-height:1.2;text-align:center;
    white-space:normal;transition:background-color .16s ease,color .16s ease;
}
:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category)
.r1-product-card-actions > .button.r1-oneclick-trigger--product:hover{
    background:color-mix(in srgb,var(--r1-bg) 82%,var(--r1-text) 18%);color:var(--r1-text);
}
/* Stronger than the ordinary .add_to_cart_button normal-state rule above.
   The previous hover selector had lower specificity and was overridden. */
:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category)
.r1-product-card-actions > a.button.add_to_cart_button:hover,
:is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category)
.r1-product-card-actions > a.button.product_type_simple:hover{
    background:var(--r1-hover,#087F95);border-color:var(--r1-hover,#087F95);color:#fff;
}
@media(max-width:640px){
    :is(.woocommerce,.reactor-product-slider) ul.products li.product:not(.product-category)
    .r1-product-card-actions > .button.r1-oneclick-trigger--product{
        min-height:48px;padding:12px 6px;font-size:12px;
    }
}
