
/* V109 — shop grid integrity + restrained luxury motion */
:root{--pb-v109-ease:cubic-bezier(.22,.72,.18,1);--pb-v109-shadow:0 18px 48px rgba(30,23,17,.08);--pb-v109-shadow-hover:0 24px 60px rgba(30,23,17,.12)}

/* WooCommerce injects clearfix pseudo elements into ul.products. In CSS grid
   those become phantom grid cells. Remove them so product one starts in col 1. */
.pb-shop-content ul.products::before,.pb-shop-content ul.products::after,
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none!important;display:none!important}
.pb-shop-content>.woocommerce,.pb-shop-content .woocommerce{width:100%!important;max-width:none!important;margin:0!important}
.pb-shop-content ul.products{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;justify-content:stretch!important;align-items:start!important}
.pb-shop-content ul.products>li.product{min-width:0!important;width:100%!important;max-width:none!important;margin:0!important;clear:none!important}

/* Desktop shop proportions: editorial, not sparse. */
@media(min-width:1201px){
  .pb-shop-layout{grid-template-columns:230px minmax(0,1fr)!important;gap:38px!important;padding-top:46px!important}
  .pb-shop-content ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:58px 24px!important}
}
@media(min-width:981px) and (max-width:1200px){
  .pb-shop-layout{grid-template-columns:210px minmax(0,1fr)!important;gap:28px!important}
  .pb-shop-content ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:46px 20px!important}
}

/* More refined archive header row. */
.pb-shop-content .woocommerce-result-count{float:none!important;display:inline-flex!important;align-items:center!important;min-height:42px!important;margin:0!important;color:#7b746c!important}
.pb-shop-content .woocommerce-ordering{float:right!important;margin:0!important}
.pb-shop-content .woocommerce-ordering select{min-width:190px!important;border:1px solid rgba(36,30,24,.08)!important;border-radius:999px!important;background:#fff!important;padding:0 42px 0 18px!important;box-shadow:0 8px 20px rgba(30,23,17,.035)!important}
.pb-shop-content .woocommerce-ordering:after{pointer-events:none}
.pb-shop-content .woocommerce-notices-wrapper:empty{display:none!important}

/* Premium card interaction. */
.pb-shop-content .pb-luxury-product-card .pka-product-media{border-radius:22px!important;box-shadow:0 0 0 1px rgba(36,30,24,.04) inset;transition:transform .45s var(--pb-v109-ease),box-shadow .45s var(--pb-v109-ease)!important}
.pb-shop-content .pb-luxury-product-card .pka-product-media img{transition:transform .85s var(--pb-v109-ease),filter .5s ease!important;will-change:transform}
.pb-shop-content .pb-luxury-product-card:hover .pka-product-media{transform:translateY(-4px);box-shadow:var(--pb-v109-shadow-hover)}
.pb-shop-content .pb-luxury-product-card:hover .pka-product-media img{transform:scale(1.045)!important;filter:saturate(1.03) contrast(1.02)}
.pb-shop-content .pb-luxury-product-card .woocommerce-loop-product__title a{background-image:linear-gradient(currentColor,currentColor);background-size:0 1px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .35s var(--pb-v109-ease)}
.pb-shop-content .pb-luxury-product-card:hover .woocommerce-loop-product__title a{background-size:100% 1px}
.pb-shop-content .pb-luxury-card-view{border-radius:999px!important;left:18px!important;right:18px!important;bottom:18px!important;justify-content:center!important;min-height:42px!important;backdrop-filter:blur(12px)!important;box-shadow:0 12px 30px rgba(18,14,11,.08)!important}
.pb-shop-content .pka-card-heart{transition:opacity .25s ease,transform .32s var(--pb-v109-ease),background .2s ease!important}
.pb-shop-content .pka-card-heart:hover{background:#fff!important;transform:translateY(-2px) scale(1.04)!important}

/* Filter rail feels like a boutique control surface. */
.pb-shop-sidebar{top:178px!important}
.pb-curated-filter-link{transition:transform .28s var(--pb-v109-ease),box-shadow .28s ease,border-color .28s ease,background .28s ease!important}
.pb-curated-filter-link:hover{transform:translateX(3px)!important;box-shadow:0 12px 26px rgba(32,25,20,.07)!important}
.pb-curated-filter-link.is-active{box-shadow:0 12px 28px rgba(32,25,20,.06)!important}
.pb-shop-sidebar .widget_price_filter .price_slider_amount .button{transition:transform .2s var(--pb-v109-ease),box-shadow .2s ease!important}
.pb-shop-sidebar .widget_price_filter .price_slider_amount .button:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(28,21,17,.12)!important}

/* Site-wide restrained entrance animation. Content remains visible if JS fails. */
html.pka-motion-ready .pb-motion-reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .85s var(--pb-v109-ease)}
html.pka-motion-ready .pb-motion-reveal.is-visible{opacity:1;transform:none}
html.pka-motion-ready .pb-motion-reveal[data-motion-delay="1"]{transition-delay:.06s}
html.pka-motion-ready .pb-motion-reveal[data-motion-delay="2"]{transition-delay:.12s}
html.pka-motion-ready .pb-motion-reveal[data-motion-delay="3"]{transition-delay:.18s}
html.pka-motion-ready .pb-motion-reveal[data-motion-delay="4"]{transition-delay:.24s}

/* Header/topbar premium scroll response; sticky geometry remains stable. */
.pb-v105-topbar{transition:box-shadow .28s ease,background .28s ease!important}
.pb-v105-header{transition:box-shadow .3s ease,background .3s ease,border-color .3s ease!important}
html.pka-page-scrolled .pb-v105-topbar{box-shadow:0 8px 24px rgba(24,18,13,.05)!important}
html.pka-page-scrolled .pb-v105-header{box-shadow:0 14px 38px rgba(24,18,13,.07)!important}

/* Buttons: subtle material response. */
.pb-v103-button,.pb-v105-newsletter-form button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{transition:transform .22s var(--pb-v109-ease),box-shadow .22s ease,background .22s ease!important}
.pb-v103-button:hover,.pb-v105-newsletter-form button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(28,21,17,.12)!important}

/* Mobile/tablet: compact, premium and still native-scroll friendly. */
@media(max-width:980px){
  .pb-shop-sidebar{top:0!important}
  .pb-shop-content .woocommerce-result-count{display:none!important}
  .pb-shop-content .woocommerce-ordering{float:none!important;width:100%!important;margin:10px 0 18px!important}
  .pb-shop-content .woocommerce-ordering select{width:100%!important;min-width:0!important}
  .pb-shop-content ul.products{width:100%!important;margin-top:18px!important}
  .pb-shop-content .pb-luxury-product-card:hover .pka-product-media{transform:none;box-shadow:none}
  .pb-shop-content .pb-luxury-product-card:hover .pka-product-media img{transform:none!important;filter:none}
}
@media(max-width:620px){
  .pb-shop-content ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:34px 12px!important}
  .pb-shop-content .pb-luxury-product-card .pka-product-media{border-radius:16px!important}
  .pb-shop-content .pb-luxury-product-card .woocommerce-loop-product__title{font-size:14px!important}
  .pb-shop-content .pb-luxury-product-card .pka-product-price{font-size:10px!important}
}
@media(max-width:390px){
  .pb-shop-content ul.products{gap:28px 9px!important}
}
@media(prefers-reduced-motion:reduce){
  html.pka-motion-ready .pb-motion-reveal{opacity:1!important;transform:none!important;transition:none!important}
  .pb-shop-content .pb-luxury-product-card .pka-product-media,.pb-shop-content .pb-luxury-product-card .pka-product-media img,.pb-v103-button{transition:none!important}
}
