/* Optional effects. Absent attributes leave every existing shop unchanged. */
html[data-fx-photo-frame="square"] .card:not([data-pl-frame]) .card-img{border-radius:0;overflow:hidden;}
html[data-fx-photo-frame="rounded"] .card:not([data-pl-frame]) .card-img{border-radius:var(--radius,16px);overflow:hidden;}
html[data-fx-photo-frame="arch"] .card:not([data-pl-frame]) .card-img{border-radius:50% 50% var(--radius,16px) var(--radius,16px);overflow:hidden;}
html[data-fx-heading-accent="underline"] :is(.editorial-block h2,.category-head h2,.deals-title h2){text-decoration:underline;text-decoration-color:var(--primary);text-decoration-thickness:3px;text-underline-offset:.25em;}
html[data-fx-heading-accent="marker"] :is(.editorial-block h2,.category-head h2,.deals-title h2){box-shadow:inset 0 -.24em var(--paper-dim);}
/* The page wash: from the paper to its own dim shade («רך») or to a fixed sand («חם»). Not --stone / --gold-light, which follow the
   primary: a green primary washed the whole page olive (momos 28.10). */
html[data-fx-background-blend="soft"] body{background-color:var(--paper);background-image:linear-gradient(155deg,var(--paper),var(--paper-dim));}
html[data-fx-background-blend="warm"] body{background-color:var(--paper);background-image:linear-gradient(155deg,var(--paper),#F3E6D3);}
@supports (color: color-mix(in srgb, red, blue)){
  html[data-fx-background-blend="warm"] body{background-image:linear-gradient(155deg,var(--paper),color-mix(in srgb,var(--paper) 55%,#E9CFA8));}
}
html[data-fx-texture-strength="low"][data-fx-grain="on"] body::after{opacity:.04;}
html[data-fx-texture-strength="high"][data-fx-grain="on"] body::after{opacity:.13;}
.fx-photo-swap{display:contents;}
.card .card-img .fx-swap-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;pointer-events:none;}
html[data-layout-catalog="gallery"] #catalog .product-grid:not(.product-carousel) > .card .fx-swap-image{transition:transform .5s cubic-bezier(.22,1,.36,1);}
html[data-layout-catalog="gallery"] #catalog .product-grid:not(.product-carousel) > .card:hover .fx-swap-image{transform:scale(1.03);}
html[data-fx-motion-speed="slow"]{--fx-enter-time:1.1s;}
html[data-fx-motion-speed="fast"]{--fx-enter-time:.35s;}
@media(hover:hover) and (pointer:fine){
 html[data-fx-card-hover="outline"] .card:not(.is-oos):not([data-pl-hover]):is(:hover,:focus-within){outline:2px solid var(--primary);outline-offset:2px;}
 html[data-fx-card-hover]:not([data-fx-card-hover="default"]) .card:not([data-pl-hover]):is(:hover,:focus-within){transform:none;translate:none;}
 html[data-fx-button-hover="color"] :is(.card:not([data-pl-btn-hover]) .qty-btn.plus,.qty-btn.plus:not(.card *),.cart-cta,.hero-cta):hover{filter:brightness(.9);}
 html[data-fx-button-hover="shadow"] :is(.card:not([data-pl-btn-hover]) .qty-btn.plus,.qty-btn.plus:not(.card *),.cart-cta,.hero-cta):hover{box-shadow:0 4px 12px rgba(0,0,0,.2);}
 html[data-fx-button-hover="none"] :is(.card:not([data-pl-btn-hover]) .qty-btn.plus,.qty-btn.plus:not(.card *),.cart-cta,.hero-cta):hover{transform:none;translate:none;filter:none;box-shadow:none;}
}
@media(prefers-reduced-motion:no-preference){
 html[data-fx-reveal-style="fade"]:not([data-motion="off"]):not([data-a11y-motion="1"]) .fx-rv{translate:none;}
 html[data-fx-motion-strength="subtle"]:not([data-fx-reveal-style="fade"]):not([data-motion="off"]):not([data-a11y-motion="1"]) .fx-rv:not(.fx-rv-in){translate:0 8px;}
 html[data-fx-reveal-style="scale"]:not([data-motion="off"]):not([data-a11y-motion="1"]) .fx-rv:not(.fx-rv-in){translate:none;scale:.97;}
 html:is([data-fx-reveal-style],[data-fx-motion-speed],[data-fx-motion-strength]):not([data-motion="off"]):not([data-a11y-motion="1"]) .fx-rv.fx-rv-in{scale:1;transition:opacity var(--fx-enter-time,.7s) ease,translate var(--fx-enter-time,.7s) ease,scale var(--fx-enter-time,.7s) ease;}
 @media(hover:hover) and (pointer:fine){
  html[data-fx-card-hover="lift"]:not([data-motion="off"]):not([data-a11y-motion="1"]) .card:not(.is-oos):not([data-pl-hover]):is(:hover,:focus-within){translate:0 -4px;transition:translate .2s ease;}
  html[data-fx-button-hover="lift"]:not([data-motion="off"]):not([data-a11y-motion="1"]) :is(.card:not([data-pl-btn-hover]) .qty-btn.plus,.qty-btn.plus:not(.card *),.cart-cta,.hero-cta):hover{translate:0 -2px;transition:translate .2s ease;}
  html[data-fx-image-swap="on"]:not([data-motion="off"]):not([data-a11y-motion="1"]) .card:not(.is-oos):not([data-pl-swap]):hover .fx-swap-image[data-ready]{opacity:1;}
 }
}
