/* Shop page (WooCommerce). Loaded only on WooCommerce pages. */
.btn-accent{background:linear-gradient(180deg,#3d55ff,#2236d6);color:#fff;box-shadow:0 8px 20px rgba(47,70,255,.28)}
.btn-accent:hover{background:linear-gradient(180deg,#2f48f5,#1b2cc0);box-shadow:0 12px 26px rgba(47,70,255,.38);transform:translateY(-2px)}
.mp-sbtn{min-height:40px;padding:9px 14px;font-size:.82rem;gap:7px;border-radius:12px;white-space:nowrap}
.mp-sbtn.is-off{background:var(--mp-soft);color:var(--mp-muted);cursor:not-allowed}
.in-ck{font-weight:800}

.shop{padding-top:var(--shop-pt,28px);padding-bottom:var(--shop-pb,90px)}
/* hero */
.shop-hero{position:relative;overflow:hidden;border-radius:36px;border:1px solid #e0e6fa;padding:clamp(24px,4vw,44px) clamp(18px,4vw,44px) 22px;background:radial-gradient(90% 100% at 100% 10%,#cdd7ff 0%,rgba(205,215,255,0) 62%),linear-gradient(180deg,#fafbff,#eef1fe)}
.shop-hero-in{display:block;text-align:center}
.shop-hero-copy{max-width:860px;margin-inline:auto;padding-bottom:26px}
.shop-badges{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;font-size:.78rem;color:var(--mp-muted);font-weight:600}
.shop-chipb{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:999px;background:var(--mp-accent);color:#fff;font-weight:800;font-size:.72rem}
.shop-kicker{display:flex;align-items:center;justify-content:center;gap:9px;width:fit-content;max-width:100%;margin:18px auto 0;padding:9px 20px;border-radius:999px;background:#fff;border:1px solid #d9e0fa;box-shadow:0 6px 18px rgba(47,91,255,.1);font-weight:800;font-size:clamp(.84rem,1.7vw,1rem);line-height:1.5;color:#1b2540}
.shop-kicker .mp-icon{flex:none;color:var(--mp-accent)}
.shop-hero h1{margin-top:18px;font-size:clamp(1.85rem,4.7vw,3.3rem);line-height:1.32;letter-spacing:0;font-weight:800}
.shop-h1a{display:block;margin-bottom:.12em;font-size:.7em;line-height:1.4;font-weight:700;color:#7a89a6}.shop-h1b{display:block}
.shop-h1b .hl{position:relative;background:none;-webkit-text-fill-color:var(--mp-accent);color:var(--mp-accent)}
.shop-h1b .hl{padding:0 .1em}.shop-h1b .hl::after{content:"";position:absolute;left:0;right:0;bottom:.06em;height:.2em;border-radius:6px;background:var(--mp-accent);opacity:.16;z-index:-1}.shop-h1b{position:relative;z-index:0}
.shop-desc{margin:18px auto 0;max-width:660px;color:#4a566e;font-size:clamp(.96rem,1.9vw,1.1rem);line-height:1.85}
.shop-search{display:flex;align-items:center;gap:10px;max-width:640px;margin:24px auto 0;padding:6px 6px 6px 16px;text-align:left;background:#fff;border:1px solid var(--mp-border);border-radius:18px;box-shadow:var(--sh-md);color:var(--mp-muted)}
.shop-search input[type=search]{flex:1;min-width:0;border:0;outline:0;background:none;font:inherit;font-size:.95rem;color:var(--mp-text);padding:10px 0;-webkit-appearance:none;appearance:none}
.shop-search kbd{font:inherit;font-size:.74rem;padding:1px 8px;border:1px solid var(--mp-border);border-radius:7px;color:var(--mp-muted)}
.shop-search:focus-within{border-color:var(--mp-accent);box-shadow:0 0 0 4px rgba(47,91,255,.12),var(--sh-md)}
.shop-pop{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin-top:16px;font-size:.78rem}
.shop-pop-l{display:inline-flex;align-items:center;gap:5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mp-muted);font-size:.68rem}
.shop-pop a{padding:5px 12px;border-radius:10px;background:#fff;border:1px solid var(--mp-border);font-weight:700;transition:border-color .2s,color .2s}
.shop-pop a:hover{border-color:var(--mp-accent);color:var(--mp-accent)}
.shop-hero-art{margin:6px auto 0;text-align:center}.shop-hero-art img{max-height:300px;width:auto;max-width:100%;object-fit:contain}
.shop-trust{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:6px}
.shop-tc{--t:#e3e8ff;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;border:1px solid rgba(255,255,255,.9);background:linear-gradient(90deg,var(--t),#fff 85%);box-shadow:var(--sh-sm)}
.shop-tc.t1{--t:#d9f5e6}.shop-tc.t2{--t:#ffefd2}.shop-tc.t3{--t:#ece3ff}
.shop-tic{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:11px;background:#fff;color:var(--mp-accent);box-shadow:0 4px 12px rgba(11,18,38,.08)}
.shop-tc strong{display:block;font-size:.86rem;line-height:1.25}.shop-tc small{display:block;font-size:.72rem;color:var(--mp-muted);line-height:1.3;margin-top:1px}
/* layout */
.shop-layout{position:relative;display:grid;grid-template-columns:268px minmax(0,1fr);gap:26px;margin-top:28px;align-items:start}
.shop-side{position:sticky;top:96px;padding:22px 16px 18px;background:var(--mp-surface);border:1px solid var(--mp-border);border-radius:22px;box-shadow:var(--sh-sm);max-height:calc(100vh - 116px);overflow:auto}
.shop-eyebrow{font-size:.66rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--mp-muted);margin-bottom:6px}
.shop-eb2{margin-top:22px}
.shop-side-h{font-size:1.35rem;margin-bottom:16px}.shop-side-h2{font-size:1.05rem;margin-bottom:10px}
.shop-sort{margin-bottom:16px}
.shop-sort select{width:100%;padding:11px 14px;border:1px solid var(--mp-border);border-radius:12px;background:#f7f9fe;font:inherit;font-size:.86rem;font-weight:600;color:var(--mp-text)}
.shop-cats{display:flex;flex-direction:column;gap:2px}
.shop-cats a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-radius:10px;font-size:.88rem;font-weight:600;color:#2a3550;transition:background .2s,color .2s}
.shop-cats a i{font-style:normal;font-size:.76rem;color:var(--mp-muted);font-weight:600}
.shop-cats a:hover{background:#f1f4ff}
.shop-cats a.is-active{background:#e6ebff;color:var(--mp-accent)}.shop-cats a.is-active i{color:var(--mp-accent)}
.shop-cats a.is-child{padding-left:26px;font-size:.83rem;font-weight:500;color:var(--mp-muted)}
.shop-brands a{font-weight:500;font-size:.84rem}
.shop-reset{width:100%;margin-top:20px}
.shop-close,.shop-mbar,.shop-sortsheet,.shop-ov{display:none}
/* top bar */
.shop-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-bottom:16px;font-size:.84rem;color:var(--mp-muted)}
.shop-bar strong{color:var(--mp-text);font-size:.92rem}.shop-bar .dot{opacity:.6}
.shop-chip{padding:3px 10px;border-radius:8px;background:#fff1d1;border:1px solid #fbdc94;color:#a15c07;font-size:.74rem;font-weight:800}
.shop-chip:hover{background:#ffe7ae}
/* grid + card */
.shop-grid{display:grid;grid-template-columns:repeat(var(--shop-cols,3),minmax(0,1fr));gap:18px}
.sc{display:flex;flex-direction:column;padding:12px;background:var(--mp-surface);border:1px solid var(--mp-border);border-radius:22px;box-shadow:var(--sh-sm);transition:transform .3s var(--ease),box-shadow .3s}
.sc:hover{transform:translateY(-4px);box-shadow:var(--sh-md)}
.sc-img{position:relative;display:block;aspect-ratio:1/1;border-radius:14px;overflow:hidden;background:var(--mp-soft)}
.sc-img img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .5s var(--ease)}
.sc:hover .sc-img img{transform:scale(1.03)}
.sc-body{display:flex;flex-direction:column;flex:1;gap:6px;padding:12px 4px 2px}
.sc-title{font-size:.93rem;font-weight:800;line-height:1.32;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.sc-title a:hover{color:var(--mp-accent)}
.sc-rate{font-size:.8rem;font-weight:700}.sc-rate small{color:var(--mp-muted);font-weight:600}.sc-star{color:#f5a524}
.sc-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 7px;font-weight:800;font-size:1.04rem}
.sc-price ins{text-decoration:none}.sp-from{font-size:.74rem;color:var(--mp-muted);font-weight:600}
.sp-was{font-size:.78rem;font-weight:500;color:#8a94a8;text-decoration:line-through}.sp-was .amount{font-weight:500}
.sc-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto;padding-top:12px;border-top:1px solid #eef1f8}
.sc-actions.is-single{grid-template-columns:1fr}
.sc-actions .btn{width:100%}
.sc-actions .add_to_cart_button.loading{opacity:.6;pointer-events:none}
.sc-actions .added_to_cart{display:none}
.shop-pages ul{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:30px}
.shop-pages .page-numbers{display:grid;place-items:center;min-width:40px;height:40px;padding:0 12px;border-radius:12px;background:#fff;border:1px solid var(--mp-border);font-weight:700;font-size:.88rem}
.shop-pages a.page-numbers:hover{border-color:var(--mp-accent);color:var(--mp-accent)}
.shop-pages .current{background:var(--mp-accent);border-color:var(--mp-accent);color:#fff}
.shop-empty{padding:50px 20px;text-align:center;background:#fff;border:1px dashed var(--mp-border);border-radius:22px}
.shop-empty h3{font-size:1.3rem;margin-bottom:8px}.shop-empty p{color:var(--mp-muted);margin-bottom:18px}

/* tablet + mobile: filters become a bottom sheet */
@media (max-width:960px){
	
	.shop-trust{grid-template-columns:repeat(2,minmax(0,1fr))}
	.shop-layout{grid-template-columns:1fr;margin-top:22px}
	.shop-mbar{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}
	.shop-mbar .btn{min-height:48px;border-radius:16px;font-size:.92rem;justify-content:space-between;padding-inline:18px;box-shadow:var(--sh-sm)}
	.shop-ov{display:block;position:fixed;inset:0;z-index:90;background:rgba(11,18,38,.5);opacity:0;pointer-events:none;transition:opacity .3s}
	.shop-side{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:100;max-height:86vh;border-radius:26px 26px 0 0;padding:24px 18px 22px;transform:translateY(105%);transition:transform .38s var(--ease);box-shadow:0 -20px 60px rgba(11,18,38,.25);overscroll-behavior:contain}
	.shop-close{display:grid;place-items:center;position:absolute;top:14px;right:14px;width:38px;height:38px;border:0;border-radius:50%;background:var(--mp-soft);color:var(--mp-text);cursor:pointer}
	.shop-sort{display:none}
	.shop-sortsheet{display:flex;flex-direction:column;gap:4px;position:fixed;left:0;right:0;bottom:0;z-index:100;padding:22px 18px 26px;background:#fff;border-radius:26px 26px 0 0;transform:translateY(105%);transition:transform .38s var(--ease);box-shadow:0 -20px 60px rgba(11,18,38,.25)}
	.shop-sortsheet a{padding:13px 14px;border-radius:12px;font-weight:700;font-size:.95rem}.shop-sortsheet a.is-active{background:#e6ebff;color:var(--mp-accent)}
	.shop-open-filter .shop-side,.shop-open-sort .shop-sortsheet{transform:none}
	.shop-open-filter .shop-ov,.shop-open-sort .shop-ov{opacity:1;pointer-events:auto}
	body.shop-lock{overflow:hidden}
}
@media (max-width:720px){
	.shop-hero{border-radius:26px}
	.shop-search{padding-left:14px}.shop-search kbd{display:none}.shop-search .btn span{display:none}.shop-search .btn{padding:9px 12px}
	.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
	.sc{padding:10px;border-radius:18px}
	.sc-title{font-size:.86rem;-webkit-line-clamp:2}.sc-price{font-size:.95rem}
	.sc-actions{grid-template-columns:1fr}
}
@media (max-width:420px){.shop-trust{gap:10px}.shop-tc{padding:10px;gap:9px}.shop-tic{width:30px;height:30px}.shop-tc strong{font-size:.78rem}.shop-tc small{font-size:.66rem}}

/* Other WooCommerce pages (single product, cart, checkout, account): light theme polish */
.wc-page{padding-top:40px;padding-bottom:80px}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt{background:var(--mp-accent);color:#fff;border-radius:var(--mp-btn-radius);font-weight:700;padding:.85em 1.4em}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:var(--mp-text);color:#fff}
.woocommerce .price,.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--mp-text);font-weight:800}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-radius:14px;border-top-color:var(--mp-accent);background:var(--mp-soft)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce .select2-container .select2-selection--single{border:1px solid var(--mp-border);border-radius:12px;padding:.7em .9em;min-height:46px;background:#fff}
.woocommerce table.shop_table{border-radius:16px;border-color:var(--mp-border);overflow:hidden}
.woocommerce div.product div.images img{border-radius:18px}
.woocommerce div.product .product_title{font-size:clamp(1.7rem,3vw,2.4rem);margin-bottom:10px}

/* section title + divider above the product list */
.shop-sec{max-width:860px;margin:clamp(34px,5vw,58px) auto clamp(22px,3.4vw,36px);text-align:center}
.shop-div{display:flex;align-items:center;gap:16px;max-width:520px;margin:0 auto 18px}
.shop-div i{flex:1;height:1px;background:linear-gradient(90deg,rgba(201,211,245,0),#c3cdf3)}.shop-div i:last-child{background:linear-gradient(270deg,rgba(201,211,245,0),#c3cdf3)}
.shop-div span{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:50%;background:#fff;border:1px solid #dbe2fa;box-shadow:0 6px 16px rgba(47,91,255,.14);color:var(--mp-accent)}
.shop-sec h2{font-size:clamp(1.3rem,3.2vw,2.15rem);line-height:1.5;letter-spacing:0;font-weight:800;color:#12182b}
.shop-sec h2 .hl{padding:0 .14em;color:var(--mp-accent);background:linear-gradient(transparent 66%,rgba(47,91,255,.15) 66%);border-radius:4px}
.shop-sec p{margin:8px auto 0;max-width:560px;color:var(--mp-muted);font-size:.98rem;line-height:1.7}
@media (max-width:720px){.shop-kicker{border-radius:18px;padding:9px 16px}.shop-div{gap:12px}.shop-div span{width:36px;height:36px}}

.sc-off{position:absolute;top:10px;left:10px;z-index:2;padding:4px 11px;border-radius:999px;background:linear-gradient(180deg,#ff5d4f,#e3302a);color:#fff;font-size:.74rem;font-weight:800;line-height:1.4;letter-spacing:.01em;box-shadow:0 6px 14px rgba(227,48,42,.35)}
/* compact hero on phones */
@media (max-width:720px){
	.shop-hero{padding:20px 14px 14px}
	.shop-badges{gap:8px;font-size:.72rem}.shop-chipb{font-size:.68rem;padding:4px 10px}
	.shop-kicker{margin-top:14px;padding:8px 14px;font-size:.8rem;gap:7px;line-height:1.45}
	.shop-hero h1{margin-top:14px;font-size:clamp(1.5rem,6.4vw,1.85rem);line-height:1.3}
	.shop-h1a{font-size:.68em;margin-bottom:.08em}
	.shop-desc{margin-top:12px;font-size:.88rem;line-height:1.7}
	.shop-search{margin-top:16px}
	.sc-off{top:8px;left:8px;font-size:.68rem;padding:3px 9px}
}

/* ===== Compact product cards (desktop, tablet, mobile) ===== */
.shop-grid{gap:14px}
.sc{container-type:inline-size;padding:9px;border-radius:18px}
.sc-img{aspect-ratio:1/.92;border-radius:12px}
.sc-body{gap:4px;padding:9px 3px 1px}
.sc-title{font-size:.88rem;line-height:1.3;-webkit-line-clamp:2}
.sc-price{font-size:.96rem;gap:3px 6px}
.sp-from{font-size:.7rem}.sp-was{font-size:.72rem}
.sc-actions{gap:6px;padding-top:9px}
.sc-actions .mp-sbtn{min-height:34px;padding:6px 8px;font-size:.76rem;gap:5px;border-radius:10px}
.sc-off{top:8px;left:8px;padding:3px 9px;font-size:.68rem}
@container (max-width:225px){.sc-actions{grid-template-columns:1fr}}
@media (max-width:1180px){.shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:720px){
	.shop-grid{grid-template-columns:repeat(var(--shop-cols-m,2),minmax(0,1fr));gap:10px}
	.sc{padding:8px;border-radius:16px}
	.sc-img{aspect-ratio:1/.95;border-radius:11px}
	.sc-body{padding:8px 2px 0}
	.sc-title{font-size:.8rem;line-height:1.28}
	.sc-price{font-size:.88rem}
	.sp-from{font-size:.66rem}.sp-was{font-size:.68rem}
	.sc-actions{grid-template-columns:1fr;gap:6px;padding-top:8px}
	.sc-actions .mp-sbtn{min-height:36px;font-size:.78rem;padding:6px 8px}
}

/* small highlighted note between the hero description and the search box */
.shop-note{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;width:fit-content;max-width:100%;margin:16px auto 0;padding:5px 14px 5px 5px;border-radius:999px;background:var(--mp-soft);border:1px dashed var(--mp-accent);font-size:.86rem;font-weight:700;line-height:1.4;color:var(--mp-text)}
.shop-note b{padding:3px 11px;border-radius:999px;background:var(--mp-accent);color:#fff;font-weight:800;font-size:.8em;letter-spacing:.01em}
.shop-note+.shop-search{margin-top:14px}
@media (max-width:720px){.shop-note{margin-top:12px;font-size:.78rem;padding-right:11px}}
