/* ==========================================================================
   300MILA — shop.css  v2 (refined)
   ========================================================================== */

/* ---------- product grid ---------- */
.pc-grid .wc-block-product-template{gap:clamp(28px,3vw,44px) clamp(14px,1.8vw,24px)!important}
@media (min-width:1024px){.pc-grid .wc-block-product-template.columns-4{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media (min-width:782px) and (max-width:1023px){.pc-grid .wc-block-product-template{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
.pc-grid .wc-block-product{display:flex;flex-direction:column;text-align:left!important}
.pc-grid .wc-block-components-product-image{margin:0 0 14px!important;border-radius:var(--radius);overflow:hidden;background:#f5f2ea;aspect-ratio:1/1}
.pc-grid .wc-block-components-product-image a,.pc-grid .wc-block-components-product-image img{display:block;width:100%;height:100%}
.pc-grid .wc-block-components-product-image img{object-fit:cover!important;aspect-ratio:auto!important;transition:transform 1.4s var(--ease)}
.pc-grid .wc-block-product:hover .wc-block-components-product-image img{transform:scale(1.03)}
.pc-grid .wp-block-post-title{margin:0 0 4px!important;font:600 1.2rem/1.25 var(--f-display)!important;text-align:left!important}
.pc-grid .wp-block-post-title a{color:#333;text-decoration:none}
.pc-grid .wp-block-post-title a:hover{color:var(--c-bord)}
.pc-grid .wc-block-components-product-price{margin:0 0 12px!important;font:400 15px/1.2 var(--f-label)!important;color:var(--c-sub);text-align:left!important}
.pc-grid .wc-block-components-product-button{margin-top:auto!important;justify-content:flex-start!important;align-items:flex-start!important}
.pc-grid .wc-block-components-product-button .wp-block-button__link{all:unset;box-sizing:border-box;cursor:pointer;display:inline-block;padding:0 0 4px;font:700 12px/1.2 var(--f-label)!important;letter-spacing:.6px;text-transform:uppercase;color:var(--c-ink);background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;transition:color .3s var(--ease),background-size .45s var(--ease)}
.pc-grid .wc-block-components-product-button .wp-block-button__link:hover{color:var(--c-bord);background-size:0 1px;background-position:100% 100%}
.pc-grid .wc-block-components-product-button .wp-block-button__link.loading{opacity:.5}
.pc-grid .wc-block-components-product-button .added_to_cart{display:none!important}
.wc-block-components-product-sale-badge{border-radius:var(--radius)!important;background:var(--c-bord)!important;color:#fff!important;border:0!important;font:500 10px/1 var(--f-body)!important;letter-spacing:.1em;padding:6px 8px!important;text-transform:uppercase}
@media (max-width:781px){
  .pc-grid .wc-block-product-template{grid-template-columns:1fr 1fr!important}
  .shop-home .pc-grid .wc-block-product-template{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(var(--gutter)*-1);padding-inline:var(--gutter);scrollbar-width:none}
  .shop-home .pc-grid .wc-block-product-template::-webkit-scrollbar{display:none}
  .shop-home .pc-grid .wc-block-product{flex:0 0 58%;scroll-snap-align:start}
}

/* ---------- shop archive ---------- */
.shop-archive{padding:clamp(36px,5vw,64px) var(--gutter) clamp(70px,8vw,120px)!important}
.shop-hero{text-align:center;margin-bottom:clamp(20px,3vw,36px)!important}
.shop-hero__title{font-size:clamp(2.2rem,3.6vw,3.2rem)!important;margin:0 auto 22px!important}
.chips--center{justify-content:center}
.shop-toolbar{border-block:1px solid var(--c-line);padding-block:12px;margin-bottom:clamp(26px,3vw,40px)!important;font-size:12.5px;color:var(--c-muted)}
.shop-toolbar select{border:0;background:transparent;font:700 13px var(--f-label);color:var(--c-ink)}
.shop-toolbar .woocommerce-result-count{margin:0}
.wp-block-query-pagination{margin-top:56px!important;font:500 13px var(--f-body)}

/* ---------- single product ---------- */
.sp{padding:clamp(18px,2.5vw,30px) var(--gutter) clamp(70px,8vw,120px)!important}
.sp__crumbs{font-size:12px;color:var(--c-muted);margin-bottom:clamp(18px,2.5vw,30px)!important}
.sp__crumbs a{color:var(--c-muted);text-decoration:none}
.sp__cols{gap:clamp(28px,5vw,80px)!important;align-items:flex-start!important}
@media (min-width:782px){.sp__info{position:sticky;top:calc(var(--admin) + var(--hdr-h) + 24px)}}
.sp__media .wc-block-product-gallery{gap:12px}
.sp__media .wc-block-product-gallery-large-image{border-radius:var(--radius);overflow:hidden;background:#f5f2ea}
.sp__media .wc-block-product-gallery-thumbnails__thumbnail{border-radius:var(--radius);overflow:hidden;opacity:.55;transition:opacity .3s var(--ease);background:#f5f2ea}
.sp__media .wc-block-product-gallery-thumbnails__thumbnail--active,.sp__media .wc-block-product-gallery-thumbnails__thumbnail:hover{opacity:1}
.sp__media .wc-block-product-gallery-large-image-next-previous button{background:rgba(255,255,255,.85)!important;border:0!important;border-radius:var(--radius)!important;width:38px;height:38px}
.sp__cat,.sp__cat a{font:700 13px/1.4 var(--f-label);letter-spacing:1.8px;text-transform:uppercase;color:var(--c-bord);text-decoration:none}
.sp__title{font-size:clamp(1.9rem,2.8vw,2.6rem)!important;margin:8px 0 10px!important;line-height:1.1!important}
.sp__price{font:400 1.15rem/1 var(--f-label)!important;color:var(--c-ink);margin-bottom:22px!important}
.sp__excerpt{font-size:14px;color:var(--c-text);margin-bottom:26px!important}
.sp__excerpt p{line-height:1.75}
.sp__atc{display:flex!important;flex-wrap:wrap;gap:10px;align-items:stretch}
.sp__atc>*{margin:0!important}
.sp__atc .wp-block-woocommerce-add-to-cart-with-options-quantity-selector,.sp__atc .wc-block-add-to-cart-with-options__quantity-selector{border:0!important;padding:0!important;flex:0 0 auto}
.sp__atc .wc-block-components-quantity-selector{border:1px solid var(--c-line)!important;border-radius:var(--radius)!important;background:#fff;min-height:48px;width:118px}
.sp__atc .wc-block-components-quantity-selector:after{display:none}
.sp__atc .wc-block-components-quantity-selector input{font:500 14px var(--f-body)!important;background:transparent!important}
.sp__atc .wc-block-components-quantity-selector__button{background:transparent!important;color:var(--c-ink)!important;border:0!important;font-size:16px}
.sp__atc .wp-block-woocommerce-product-button,.sp__atc .wc-block-components-product-button{flex:1 1 160px;margin:0!important}
.sp__atc button[type=submit],.sp__atc .wp-block-button__link{width:100%;min-height:48px}
.sp__atc button.is-loading{opacity:.6;pointer-events:none}
.sp .wcpay-express-checkout-wrapper,.sp #wcpay-express-checkout-element{margin-top:10px!important;width:100%}
.sp__trust{list-style:none;margin:24px 0!important;padding:0!important;font-size:12.5px;color:var(--c-muted);line-height:1.9}
.sp__trust li{padding:0}
.sp__acc{border-top:1px solid var(--c-line);padding:0!important;margin:0!important}
.sp__acc:last-of-type{border-bottom:1px solid var(--c-line)}
.sp__acc summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:17px 0;font:700 13px/1 var(--f-label);letter-spacing:.6px;text-transform:uppercase;color:var(--c-ink)}
.sp__acc summary::-webkit-details-marker{display:none}
.sp__acc summary::after{content:"";width:9px;height:9px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg) translateY(-3px);transition:transform .35s var(--ease)}
.sp__acc[open] summary::after{transform:rotate(-135deg)}
.sp__acc>*:not(summary){padding-bottom:20px;font-size:13.5px;line-height:1.75}
.sp__related{margin-top:clamp(64px,8vw,110px)!important;padding-top:clamp(40px,5vw,64px);border-top:1px solid var(--c-line)}
.sp__related-title{font-size:clamp(1.6rem,2.4vw,2.1rem)!important;margin:0 0 clamp(24px,3vw,36px)!important}

/* ---------- mini-cart drawer ---------- */
.wc-block-mini-cart__drawer .components-modal__content,.wc-block-mini-cart__drawer{background:#fff!important}
.wc-block-components-drawer__screen-overlay{background:rgba(20,16,12,.35)!important}
.wc-block-mini-cart__drawer.wc-block-components-drawer{width:min(420px,100vw)!important;max-width:100vw}
.wc-block-mini-cart__title{font:700 1.45rem/1.2 var(--f-title)!important;margin:26px 24px 8px!important;color:var(--c-ink)}
.wc-block-mini-cart__items{padding:0 24px!important}
.wc-block-mini-cart__drawer .wc-block-components-product-metadata{display:none!important}
.wc-block-mini-cart__drawer .wc-block-cart-items__row{padding:16px 0!important;border-bottom:1px solid var(--c-line);grid-template-columns:64px 1fr auto!important}
.wc-block-mini-cart__drawer .wc-block-cart-item__image img{border-radius:var(--radius);background:#f3efe6}
.wc-block-mini-cart__drawer .wc-block-components-product-name{font:600 1.1rem/1.3 var(--f-display)!important;color:#333!important;text-decoration:none!important}
.wc-block-mini-cart__drawer .wc-block-cart-item__prices{font-size:12px;color:var(--c-muted)}
.wc-block-mini-cart__drawer .wc-block-cart-item__total{font-size:13px}
.wc-block-mini-cart__drawer .wc-block-components-quantity-selector{border-radius:var(--radius)!important;border:1px solid var(--c-line)!important;width:96px!important;min-height:32px}
.wc-block-mini-cart__drawer .wc-block-components-quantity-selector:after{display:none}
.wc-block-mini-cart__footer{padding:20px 24px 24px!important;background:var(--c-paper);border-top:1px solid var(--c-line)}
.wc-block-mini-cart__footer .wc-block-components-totals-item__label{font:700 13px/1 var(--f-label)!important;letter-spacing:.6px;text-transform:uppercase}
.wc-block-mini-cart__footer .wc-block-components-totals-item__value{font:700 1.05rem/1 var(--f-label)!important;color:var(--c-ink)}
.wc-block-mini-cart__footer .wc-block-components-totals-item__description{font:400 12px/1.5 var(--f-body)!important;letter-spacing:0;text-transform:none;color:var(--c-muted)}
.wc-block-mini-cart__footer-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;width:100%;box-sizing:border-box}
.wc-block-mini-cart__footer-actions>*{min-width:0;margin:0!important}
.wc-block-mini-cart__footer-actions .wp-block-button__link,.wc-block-mini-cart__footer-actions .wc-block-components-button{width:100%;min-width:0;min-height:46px;padding:13px 10px!important;letter-spacing:.12em!important;white-space:normal;margin:0!important;box-sizing:border-box}
.wc-block-mini-cart__footer-cart .wp-block-button__link,.wc-block-mini-cart__footer-cart.wc-block-components-button{background:transparent!important;color:var(--c-ink)!important;border:1px solid var(--c-ink)!important}
.wc-block-mini-cart__footer-cart .wp-block-button__link:hover,.wc-block-mini-cart__footer-cart.wc-block-components-button:hover{background:var(--c-ink)!important;color:#fff!important}
.wc-block-mini-cart__empty-cart-wrapper{padding:56px 24px;text-align:center}
.wc-block-mini-cart__empty-cart-wrapper p{font:700 1.35rem var(--f-title);color:var(--c-ink)}

/* ---------- cart & checkout ---------- */
.woocommerce-cart main,.woocommerce-checkout main{padding:clamp(28px,4vw,56px) var(--gutter) clamp(70px,8vw,120px)!important}
.woocommerce-cart h1.wp-block-post-title,.woocommerce-checkout h1.wp-block-post-title{font-size:clamp(2rem,3.2vw,2.8rem)!important;margin-bottom:clamp(20px,2.5vw,32px)!important}
.wc-block-cart,.wc-block-checkout{max-width:1200px;margin-inline:auto}
.wc-block-components-sidebar-layout{gap:clamp(28px,4vw,60px)}
.wc-block-components-sidebar{background:#fff;border:1px solid var(--c-line);border-radius:var(--radius);padding:clamp(18px,2vw,28px)!important}
@media (min-width:782px){.wc-block-checkout .wc-block-components-sidebar,.wc-block-cart .wc-block-components-sidebar{position:sticky;top:calc(var(--admin) + var(--hdr-h) + 24px)}}
.wc-block-components-title.wc-block-components-title,.wc-block-components-checkout-step__title{font:600 1.4rem/1.2 var(--f-display)!important;color:var(--c-sub)}
.wc-block-components-text-input input,.wc-block-components-text-input textarea,.wc-block-components-combobox .components-combobox-control input,.wc-blocks-components-select__select,.wc-block-components-textarea{border-radius:var(--radius)!important;border:1px solid rgba(31,29,27,.2)!important;background:#fff!important;font-family:var(--f-body)!important}
.wc-block-components-text-input.is-active input,.wc-block-components-text-input input:focus{border-color:var(--c-ink)!important;box-shadow:0 0 0 1px var(--c-ink)!important}
.wc-block-components-radio-control__option,.wc-block-components-radio-control-accordion-option{border-radius:var(--radius)!important}
.wc-block-components-checkout-place-order-button,.wc-block-cart__submit-button{width:100%;min-height:52px;background:var(--c-bord)!important;color:#fff!important}
.wc-block-components-checkout-place-order-button:hover,.wc-block-cart__submit-button:hover{background:var(--c-bord-d)!important}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,.wc-block-components-totals-footer-item .wc-block-components-totals-item__label{font:600 1.05rem var(--f-body)!important;color:var(--c-ink)}
.wc-block-cart-items .wc-block-components-product-name{font:600 1.2rem/1.3 var(--f-display);color:#333;text-decoration:none}
.wc-block-cart-items .wc-block-components-product-metadata,.wc-block-components-order-summary-item__description .wc-block-components-product-metadata{display:none}
.wc-block-cart-item__image img{border-radius:var(--radius);background:#f3efe6}
