/* SpiceRoot v1.4.0 */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700;900&family=DM+Sans:wght@400;500;600;700&display=swap');

:root {
  --sr-o:   #E8520A; --sr-odk: #B83E00; --sr-olt: #FFF0E8;
  --sr-y:   #D4860B; --sr-ylt: #FFF8E6;
  --sr-cr:  #FDF7EF; --sr-tx:  #1C1009; --sr-mu:  #6B4C2A;
  --sr-bd:  #E8D5C0; --sr-wh:  #FFFFFF; --sr-gn:  #3A7C47;
  --sr-r:   14px; --sr-sh: 0 6px 32px rgba(232,82,10,0.13);
  --sr-fn:  'DM Sans', sans-serif; --sr-sf: 'Playfair Display', serif;
}

/* ═══ ASTRA FULL-WIDTH OVERRIDE ═══ */
body.page-template-sr-home .site-content, body.page-template-sr-about .site-content,
body.page-template-sr-contact .site-content, body.page-template-sr-shop .site-content,
body.woocommerce .site-content, body.woocommerce-page .site-content,
body.single-product .site-content, body.woocommerce-cart .site-content { padding:0!important; margin:0!important; }

body.page-template-sr-home .ast-container, body.page-template-sr-about .ast-container,
body.page-template-sr-contact .ast-container, body.page-template-sr-shop .ast-container,
body.woocommerce .ast-container, body.woocommerce-page .ast-container,
body.single-product .ast-container, body.woocommerce-cart .ast-container { max-width:100%!important; padding:0!important; }

body.page-template-sr-home #primary, body.page-template-sr-about #primary,
body.page-template-sr-contact #primary, body.page-template-sr-shop #primary,
body.woocommerce #primary, body.woocommerce-page #primary,
body.single-product #primary, body.woocommerce-cart #primary { width:100%!important; max-width:100%!important; padding:0!important; margin:0!important; float:none!important; }

body.page-template-sr-home #secondary, body.page-template-sr-about #secondary,
body.page-template-sr-contact #secondary, body.page-template-sr-shop #secondary,
body.woocommerce #secondary, body.woocommerce-page #secondary,
body.single-product #secondary, body.woocommerce-cart #secondary { display:none!important; }

body.page-template-sr-home .entry-content, body.page-template-sr-about .entry-content,
body.page-template-sr-contact .entry-content, body.page-template-sr-shop .entry-content,
body.woocommerce .entry-content, body.woocommerce-page .entry-content,
body.single-product .entry-content, body.woocommerce-cart .entry-content { margin:0!important; padding:0!important; }

body.page-template-sr-home .entry-header, body.page-template-sr-about .entry-header,
body.page-template-sr-contact .entry-header, body.page-template-sr-shop .entry-header,
body.woocommerce .entry-header, body.woocommerce-page .entry-header,
body.single-product .entry-header, body.woocommerce-cart .entry-header,
body.woocommerce .ast-breadcrumbs-wrapper, body.woocommerce-page .ast-breadcrumbs-wrapper,
body.single-product .ast-breadcrumbs-wrapper, body.woocommerce-cart .ast-breadcrumbs-wrapper { display:none!important; }

body.woocommerce .ast-article-single, body.woocommerce-page .ast-article-single,
body.single-product .ast-article-single, body.woocommerce-cart .ast-article-single,
body.page-template-sr-home .ast-article-single, body.page-template-sr-shop .ast-article-single { padding:0!important; margin:0!important; }

/* Hide WooCommerce default shop page elements when our template takes over */
body.woocommerce .woocommerce-breadcrumb,
body.woocommerce-page .woocommerce-breadcrumb,
body.woocommerce .woocommerce-result-count,
body.woocommerce .woocommerce-ordering,
body.woocommerce-page .woocommerce-result-count,
body.woocommerce-page .woocommerce-ordering { display:none!important; }

/* Hide "X has been added to your cart" notices on shop pages */
body.woocommerce .woocommerce-message,
body.woocommerce-page .woocommerce-message { display:none!important; }

/* ═══ BASE ═══ */
.sr-page { font-family:var(--sr-fn); color:var(--sr-tx); line-height:1.6; background:var(--sr-cr); width:100%; overflow-x:hidden; }
.sr-page *, .sr-page *::before, .sr-page *::after { box-sizing:border-box; }
.sr-wrap { width:100%; max-width:1160px; margin:0 auto; padding:0 24px; }

/* ═══ TYPE ═══ */
.sr-label { font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--sr-o); margin-bottom:8px; display:block; }
.sr-h1,.sr-h2 { font-family:var(--sr-sf); font-weight:900; color:var(--sr-tx); line-height:1.15; letter-spacing:-.4px; margin:0 0 14px; }
.sr-h1 { font-size:clamp(28px,5vw,54px); }
.sr-h2 { font-size:clamp(22px,3.5vw,38px); }
.sr-h1 em,.sr-h2 em { font-style:normal; color:var(--sr-o); }
.sr-sub { font-size:15px; color:var(--sr-mu); max-width:540px; line-height:1.75; margin-bottom:36px; }

/* ═══ BUTTONS ═══ */
.sr-btn { display:inline-flex; align-items:center; gap:8px; background:var(--sr-o); color:#fff!important; padding:14px 32px; border-radius:50px; font-family:var(--sr-fn); font-weight:700; font-size:15px; text-decoration:none!important; border:none; cursor:pointer; box-shadow:0 4px 18px rgba(232,82,10,.40); transition:background .2s,transform .15s; }
.sr-btn:hover { background:var(--sr-odk); color:#fff!important; transform:translateY(-2px); }
.sr-btn-out { display:inline-flex; align-items:center; gap:8px; background:transparent; color:var(--sr-o)!important; padding:12px 26px; border-radius:50px; font-family:var(--sr-fn); font-weight:700; font-size:14px; text-decoration:none!important; border:2px solid var(--sr-o); cursor:pointer; transition:all .2s; }
.sr-btn-out:hover { background:var(--sr-olt); transform:translateY(-2px); }
.sr-btn-wh { display:inline-flex; align-items:center; gap:8px; background:#fff; color:var(--sr-odk)!important; padding:14px 30px; border-radius:50px; font-family:var(--sr-fn); font-weight:700; font-size:15px; text-decoration:none!important; border:none; cursor:pointer; box-shadow:0 4px 14px rgba(0,0,0,.13); transition:all .2s; }
.sr-btn-wh:hover { background:var(--sr-cr); transform:translateY(-2px); }
.sr-btn-gh { display:inline-flex; align-items:center; gap:8px; background:transparent; color:#fff!important; padding:12px 26px; border-radius:50px; font-family:var(--sr-fn); font-weight:600; font-size:15px; text-decoration:none!important; border:2px solid rgba(255,255,255,.65); cursor:pointer; transition:all .2s; }
.sr-btn-gh:hover { border-color:#fff; background:rgba(255,255,255,.12); }

/* After add-to-cart buttons */
.sr-after-atc { display:inline-flex; align-items:center; gap:5px; padding:8px 12px; border-radius:8px; font-family:var(--sr-fn); font-size:12px; font-weight:700; text-decoration:none!important; white-space:nowrap; transition:opacity .2s; }
.sr-cart-link { background:var(--sr-gn); color:#fff!important; }
.sr-cart-link:hover { opacity:.85; color:#fff!important; }
.sr-checkout-link { background:var(--sr-odk); color:#fff!important; }
.sr-checkout-link:hover { opacity:.85; color:#fff!important; }
.sr-atc-wrap { display:flex; align-items:center; gap:6px; flex-wrap:wrap; margin-top:4px; }

/* ATC button — orange, not WC blue */
.sr-atc-btn,
.sr-prod-footer .button,
.sr-prod-footer .add_to_cart_button {
  background:var(--sr-o)!important; color:#fff!important; border:none!important;
  border-radius:8px!important; padding:9px 16px!important; font-family:var(--sr-fn)!important;
  font-size:13px!important; font-weight:700!important; cursor:pointer;
  text-decoration:none!important; transition:background .2s!important;
  white-space:nowrap; line-height:1.4!important; display:inline-flex!important;
  align-items:center!important;
}
.sr-atc-btn:hover,
.sr-prod-footer .button:hover,
.sr-prod-footer .add_to_cart_button:hover { background:var(--sr-odk)!important; color:#fff!important; }
.sr-prod-footer .add_to_cart_button.added { background:var(--sr-gn)!important; }
.sr-prod-footer .added_to_cart { display:none!important; }

/* ═══ BADGE / SECTION ═══ */
.sr-badge { display:inline-flex; align-items:center; gap:6px; background:var(--sr-olt); border:1px solid rgba(232,82,10,.25); color:var(--sr-odk); font-size:12px; font-weight:700; padding:5px 14px; border-radius:100px; letter-spacing:.3px; margin-bottom:18px; }
.sr-sec { padding:68px 0; }
.sr-sec-white { background:var(--sr-wh); }
.sr-sec-dark { background:linear-gradient(135deg,#1C1009,#2E1A08); }

/* ═══ HERO ═══ */
.sr-hero { background:linear-gradient(135deg,#FFF5EE,#FDF7EF 55%,#FFF8E6); padding:80px 0 72px; position:relative; overflow:hidden; width:100%; }
.sr-hero::before { content:''; position:absolute; top:-80px; right:-80px; width:440px; height:440px; background:radial-gradient(circle,rgba(232,82,10,.07) 0%,transparent 70%); pointer-events:none; }
.sr-hero-inner { display:grid; grid-template-columns:1fr 1fr; gap:52px; align-items:center; max-width:1160px; margin:0 auto; padding:0 24px; }
.sr-hero-content>* { animation:srUp .55s ease both; }
.sr-hero-content>*:nth-child(1){animation-delay:.05s} .sr-hero-content>*:nth-child(2){animation-delay:.15s} .sr-hero-content>*:nth-child(3){animation-delay:.25s} .sr-hero-content>*:nth-child(4){animation-delay:.35s} .sr-hero-content>*:nth-child(5){animation-delay:.45s}
@keyframes srUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.sr-hero-desc { font-size:16px; color:var(--sr-mu); max-width:460px; margin:0 0 28px; line-height:1.75; }
.sr-hero-btns { display:flex; gap:14px; flex-wrap:wrap; margin-bottom:28px; }
.sr-trust { display:flex; gap:20px; flex-wrap:wrap; }
.sr-trust-item { display:inline-flex; align-items:center; gap:7px; font-size:13px; color:var(--sr-mu); font-weight:500; }
.sr-trust-dot { width:8px; height:8px; background:var(--sr-gn); border-radius:50%; flex-shrink:0; display:inline-block; }
.sr-hero-vis { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.sr-mini { background:var(--sr-wh); border:1.5px solid var(--sr-bd); border-radius:var(--sr-r); padding:18px 12px; text-align:center; transition:transform .2s,box-shadow .2s; cursor:pointer; }
.sr-mini:hover { transform:translateY(-4px); box-shadow:var(--sr-sh); }
.sr-mini:nth-child(2),.sr-mini:nth-child(4) { margin-top:22px; }
.sr-mini-img { height:75px; display:flex; align-items:center; justify-content:center; font-size:44px; border-radius:8px; overflow:hidden; margin-bottom:8px; }
.sr-mini-img img { width:100%; height:100%; object-fit:cover; border-radius:8px; display:block; }
.sr-mini h4 { font-size:13px; font-weight:600; color:var(--sr-tx); margin:0 0 2px; }
.sr-mini-cat { font-size:11px; color:var(--sr-mu); margin-bottom:4px; }
.sr-mini-price { font-size:13px; font-weight:700; color:var(--sr-odk); }
.sr-mini-badge { display:inline-block; background:var(--sr-olt); color:var(--sr-odk); font-size:10px; font-weight:700; padding:2px 8px; border-radius:100px; margin-top:4px; }

/* ═══ MARQUEE ═══ */
.sr-marquee { background:var(--sr-o); padding:12px 0; overflow:hidden; white-space:nowrap; width:100%; }
.sr-marquee-inner { display:inline-flex; animation:srScroll 30s linear infinite; }
.sr-marquee-inner span { color:#fff; font-size:13px; font-weight:500; padding:0 26px; letter-spacing:.3px; }
.sr-marquee-inner span::before { content:'✦'; margin-right:10px; opacity:.55; }
@keyframes srScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ═══ CATEGORIES ═══ */
.sr-cat-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:16px; }
.sr-cat-card { background:var(--sr-cr); border:1.5px solid var(--sr-bd); border-radius:var(--sr-r); padding:26px 14px 20px; text-align:center; display:block; text-decoration:none!important; color:inherit; transition:all .25s; }
.sr-cat-card:hover { background:var(--sr-olt); border-color:rgba(232,82,10,.35); transform:translateY(-3px); }
.sr-cat-emoji { font-size:38px; display:block; margin-bottom:10px; }
.sr-cat-card h3 { font-size:14px; font-weight:600; color:var(--sr-tx); margin:0 0 4px; }
.sr-cat-card p { font-size:12px; color:var(--sr-mu); line-height:1.4; margin:0; }
.sr-cat-count { display:inline-block; background:var(--sr-olt); color:var(--sr-odk); font-size:10px; font-weight:700; padding:2px 8px; border-radius:100px; margin-top:6px; }

/* ═══ PRODUCT CARDS ═══ */
.sr-prod-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:20px; }
.sr-prod-card { background:var(--sr-wh); border:1.5px solid var(--sr-bd); border-radius:var(--sr-r); overflow:hidden; display:flex; flex-direction:column; transition:transform .25s,box-shadow .25s; }
.sr-prod-card:hover { transform:translateY(-5px); box-shadow:var(--sr-sh); }
.sr-prod-thumb { background:linear-gradient(135deg,var(--sr-olt),var(--sr-ylt)); height:165px; overflow:hidden; position:relative; display:flex; align-items:center; justify-content:center; text-decoration:none; }
.sr-prod-thumb img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .3s; }
.sr-prod-card:hover .sr-prod-thumb img { transform:scale(1.04); }
.sr-no-img { font-size:60px; }
.sr-tag { position:absolute; top:10px; font-size:10px; font-weight:700; padding:3px 10px; border-radius:100px; }
.sr-tag-sale { left:10px; background:var(--sr-gn); color:#fff; }
.sr-tag-feat { right:10px; background:var(--sr-o); color:#fff; }
.sr-prod-body { padding:16px; flex:1; display:flex; flex-direction:column; }
.sr-prod-cat { font-size:11px; color:var(--sr-mu); font-weight:600; text-transform:uppercase; letter-spacing:.5px; margin-bottom:4px; }
.sr-prod-body h3 { font-size:15px; font-weight:600; color:var(--sr-tx); margin:0 0 6px; line-height:1.35; }
.sr-prod-body h3 a { text-decoration:none; color:inherit; }
.sr-prod-body h3 a:hover { color:var(--sr-o); }
.sr-prod-body p { font-size:13px; color:var(--sr-mu); line-height:1.55; margin:0 0 12px; flex:1; }
.sr-prod-footer { display:flex; flex-direction:column; gap:8px; margin-top:auto; }
.sr-prod-price { font-size:17px; font-weight:700; color:var(--sr-odk); }
.sr-prod-price del { font-size:12px; color:var(--sr-mu); font-weight:400; }

/* ═══ WHY / REVIEWS / CTA ═══ */
.sr-why-grid { display:grid; grid-template-columns:1fr 1fr; gap:52px; align-items:center; }
.sr-why-list { display:flex; flex-direction:column; gap:22px; }
.sr-why-item { display:flex; gap:16px; align-items:flex-start; }
.sr-why-icon { width:48px; height:48px; border-radius:12px; background:var(--sr-olt); display:flex; align-items:center; justify-content:center; font-size:22px; flex-shrink:0; }
.sr-why-item h4 { font-size:15px; font-weight:600; color:var(--sr-tx); margin:0 0 3px; }
.sr-why-item p { font-size:13px; color:var(--sr-mu); line-height:1.6; margin:0; }
.sr-why-box { background:linear-gradient(135deg,var(--sr-olt),var(--sr-ylt)); border-radius:20px; padding:36px 28px; text-align:center; border:1.5px solid var(--sr-bd); }
.sr-big-icon { font-size:72px; display:block; margin-bottom:14px; }
.sr-why-box h3 { font-family:var(--sr-sf); font-size:20px; color:var(--sr-odk); margin:0 0 8px; }
.sr-why-box p { font-size:13px; color:var(--sr-mu); line-height:1.7; margin:0; }
.sr-stats { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:20px; }
.sr-stat { background:rgba(255,255,255,.75); border-radius:10px; padding:14px; border:1px solid var(--sr-bd); text-align:center; }
.sr-stat b { font-family:var(--sr-sf); font-size:24px; font-weight:700; color:var(--sr-odk); display:block; }
.sr-stat span { font-size:12px; color:var(--sr-mu); }
.sr-rev-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:18px; }
.sr-rev-card { background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.13); border-radius:var(--sr-r); padding:22px; }
.sr-stars { color:#F5B942; font-size:14px; margin-bottom:12px; letter-spacing:2px; }
.sr-rev-card blockquote { font-size:14px; color:rgba(255,255,255,.82); line-height:1.7; margin:0 0 16px; font-style:italic; }
.sr-rev-who { display:flex; align-items:center; gap:10px; }
.sr-rev-av { width:38px; height:38px; border-radius:50%; background:var(--sr-o); display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:700; color:#fff; flex-shrink:0; }
.sr-rev-name { font-size:14px; font-weight:600; color:#fff; display:block; }
.sr-rev-loc { font-size:12px; color:rgba(255,255,255,.45); }
.sr-cta { background:linear-gradient(135deg,var(--sr-o),var(--sr-y)); border-radius:22px; padding:60px 44px; max-width:700px; margin:0 auto; position:relative; overflow:hidden; text-align:center; }
.sr-cta::before { content:'🌶️'; position:absolute; font-size:130px; opacity:.07; top:-15px; right:-10px; transform:rotate(15deg); pointer-events:none; }
.sr-cta h2 { font-family:var(--sr-sf); font-size:clamp(22px,3vw,34px); font-weight:700; color:#fff; margin:0 0 12px; }
.sr-cta p { font-size:15px; color:rgba(255,255,255,.85); margin:0 0 28px; line-height:1.7; }
.sr-cta-btns { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

/* ═══ ABOUT ═══ */
.sr-about-hero { background:linear-gradient(135deg,#FFF5EE,#FFF8E6); padding:68px 0; text-align:center; }
.sr-about-body { max-width:760px; margin:0 auto; }
.sr-about-body p { font-size:16px; color:var(--sr-mu); line-height:1.85; margin:0 0 20px; }
.sr-val-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:36px; }
.sr-val-card { background:var(--sr-wh); border:1.5px solid var(--sr-bd); border-radius:var(--sr-r); padding:26px 20px; display:flex; gap:14px; align-items:flex-start; }
.sr-val-ico { font-size:30px; flex-shrink:0; }
.sr-val-card h3 { font-size:15px; font-weight:700; color:var(--sr-tx); margin:0 0 5px; }
.sr-val-card p { font-size:13px; color:var(--sr-mu); line-height:1.6; margin:0; }
.sr-story { background:linear-gradient(135deg,var(--sr-olt),var(--sr-ylt)); border-radius:20px; padding:44px; margin-top:52px; display:grid; grid-template-columns:auto 1fr; gap:32px; align-items:center; }
.sr-story-ico { font-size:80px; }
.sr-story h2 { font-family:var(--sr-sf); font-size:26px; font-weight:700; color:var(--sr-odk); margin:0 0 10px; }
.sr-story p { font-size:15px; color:var(--sr-mu); line-height:1.8; margin:0; }

/* ═══ CONTACT ═══ */
.sr-contact-hero { background:linear-gradient(135deg,#FFF5EE,#FFF8E6); padding:64px 0; text-align:center; }
.sr-contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:start; }
.sr-info-list { display:flex; flex-direction:column; gap:16px; }
.sr-info-card { background:var(--sr-wh); border:1.5px solid var(--sr-bd); border-radius:var(--sr-r); padding:20px; display:flex; gap:14px; align-items:flex-start; }
.sr-info-ico { font-size:24px; flex-shrink:0; }
.sr-info-card h4 { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.5px; color:var(--sr-mu); margin:0 0 4px; }
.sr-info-card p,.sr-info-card a { font-size:15px; color:var(--sr-tx); font-weight:600; text-decoration:none; margin:0; }
.sr-info-card a:hover { color:var(--sr-o); }
.sr-form-wrap { background:var(--sr-wh); border:1.5px solid var(--sr-bd); border-radius:var(--sr-r); padding:30px 26px; }
.sr-form-wrap h3 { font-family:var(--sr-sf); font-size:20px; font-weight:700; color:var(--sr-tx); margin:0 0 20px; }
.sr-field { margin-bottom:14px; }
.sr-field label { display:block; font-size:13px; font-weight:600; color:var(--sr-mu); margin-bottom:5px; }
.sr-field input,.sr-field textarea,.sr-field select { width:100%; padding:11px 14px; border:1.5px solid var(--sr-bd); border-radius:10px; font-family:var(--sr-fn); font-size:14px; color:var(--sr-tx); outline:none; transition:border-color .2s; background:#fff; }
.sr-field input:focus,.sr-field textarea:focus,.sr-field select:focus { border-color:var(--sr-o); }
.sr-field textarea { resize:vertical; min-height:100px; }
.sr-form-ok { background:#EBF5EC; border:1px solid #3A7C47; color:#3A7C47; padding:10px 14px; border-radius:8px; font-size:14px; font-weight:600; display:none; margin-bottom:14px; }
.sr-map { border-radius:var(--sr-r); overflow:hidden; border:1.5px solid var(--sr-bd); margin-top:40px; }
.sr-map iframe { display:block; width:100%; height:300px; }
.sr-wa-box { background:linear-gradient(135deg,#25D366,#128C7E); border-radius:var(--sr-r); padding:26px 22px; text-align:center; margin-top:16px; }
.sr-wa-box h4 { font-size:17px; font-weight:700; color:#fff; margin:0 0 6px; }
.sr-wa-box p { font-size:13px; color:rgba(255,255,255,.85); margin:0 0 14px; }
.sr-btn-wa { display:inline-flex; align-items:center; gap:8px; background:#fff; color:#128C7E!important; padding:11px 22px; border-radius:50px; font-weight:700; font-size:14px; text-decoration:none!important; transition:all .2s; }
.sr-btn-wa:hover { transform:translateY(-2px); }

/* ═══ SHOP CONTROLS ═══ */
.sr-shop-hero { background:linear-gradient(135deg,#FFF5EE,#FFF8E6); padding:52px 0 44px; text-align:center; }
.sr-controls { display:flex; gap:12px; align-items:flex-start; flex-wrap:wrap; margin-bottom:32px; }
.sr-search { flex:1; min-width:200px; position:relative; }
.sr-search input { width:100%; padding:12px 18px 12px 44px; border-radius:50px; border:1.5px solid var(--sr-bd); font-family:var(--sr-fn); font-size:14px; background:var(--sr-wh); color:var(--sr-tx); outline:none; transition:border-color .2s; }
.sr-search input:focus { border-color:var(--sr-o); }
.sr-search-ico { position:absolute; left:16px; top:50%; transform:translateY(-50%); font-size:16px; pointer-events:none; }
.sr-filters { display:flex; gap:8px; flex-wrap:wrap; }
.sr-filter { padding:9px 18px; border-radius:50px; border:1.5px solid var(--sr-bd); background:var(--sr-wh); color:var(--sr-mu); font-family:var(--sr-fn); font-size:13px; font-weight:600; cursor:pointer; transition:all .2s; }
.sr-filter.active,.sr-filter:hover { background:var(--sr-o); border-color:var(--sr-o); color:#fff; }
.sr-more-wrap { text-align:center; margin-top:40px; }
.sr-spinner { display:none; width:28px; height:28px; border:3px solid var(--sr-bd); border-top-color:var(--sr-o); border-radius:50%; animation:srSpin .7s linear infinite; margin:0 auto 14px; }
.sr-spinner.on { display:block; }
@keyframes srSpin{to{transform:rotate(360deg)}}
.sr-no-results { text-align:center; padding:60px 20px; color:var(--sr-mu); font-size:15px; grid-column:1/-1; }

/* ═══ SINGLE PRODUCT ═══ */
.sr-bc { background:var(--sr-wh); border-bottom:1px solid var(--sr-bd); padding:14px 0; }
.sr-bc a,.sr-bc span { font-size:13px; color:var(--sr-mu); text-decoration:none; }
.sr-bc a:hover { color:var(--sr-o); }
.sr-bc span { margin:0 5px; }
.sr-bc-cur { color:var(--sr-tx); font-weight:500; }
.sr-single-sec { padding:48px 0 64px; background:var(--sr-wh); }
.sr-single-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; }
.sr-main-img { border-radius:16px; overflow:hidden; background:linear-gradient(135deg,var(--sr-olt),var(--sr-ylt)); position:relative; aspect-ratio:1/1; display:flex; align-items:center; justify-content:center; }
.sr-main-img img { width:100%; height:100%; object-fit:cover; display:block; border-radius:16px; }
.sr-img-ph { font-size:100px; }
.sr-single-sale { position:absolute; top:16px; left:16px; background:var(--sr-gn); color:#fff; font-size:12px; font-weight:700; padding:5px 14px; border-radius:100px; }
.sr-thumbs { display:flex; gap:10px; margin-top:14px; flex-wrap:wrap; }
.sr-thumb { width:72px; height:72px; border-radius:10px; overflow:hidden; border:2px solid var(--sr-bd); cursor:pointer; transition:border-color .2s; flex-shrink:0; }
.sr-thumb.active,.sr-thumb:hover { border-color:var(--sr-o); }
.sr-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.sr-single-cat { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:1.5px; color:var(--sr-o); text-decoration:none; margin-bottom:10px; display:block; }
.sr-single-title { font-family:var(--sr-sf); font-size:clamp(24px,4vw,36px); font-weight:900; color:var(--sr-tx); line-height:1.2; margin:0 0 16px; }
.sr-single-price { font-size:28px; font-weight:700; color:var(--sr-odk); margin-bottom:16px; }
.sr-single-price del { font-size:16px; color:var(--sr-mu); font-weight:400; margin-right:6px; }
.sr-single-price ins { text-decoration:none; }
.sr-single-short { font-size:15px; color:var(--sr-mu); line-height:1.75; margin-bottom:20px; }
.sr-stock-row { display:flex; align-items:center; gap:12px; margin-bottom:22px; flex-wrap:wrap; }
.sr-in-stock { font-size:13px; font-weight:600; color:var(--sr-gn); background:#EBF5EC; padding:5px 12px; border-radius:100px; }
.sr-out-stock { font-size:13px; font-weight:600; color:#c0392b; background:#FDECEA; padding:5px 12px; border-radius:100px; }
.sr-sale-pill { font-size:13px; font-weight:700; color:#fff; background:var(--sr-o); padding:5px 12px; border-radius:100px; }
.sr-single-atc { margin-bottom:16px; }
.sr-single-atc form.cart { display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.sr-single-atc .quantity { display:inline-flex; align-items:center; border:1.5px solid var(--sr-bd); border-radius:10px; overflow:hidden; }
.sr-single-atc .qty { width:56px; text-align:center; border:none!important; outline:none; font-size:16px; font-weight:600; padding:10px 6px; background:#fff; color:var(--sr-tx); -moz-appearance:textfield; }
.sr-single-atc .qty::-webkit-inner-spin-button,.sr-single-atc .qty::-webkit-outer-spin-button { -webkit-appearance:none; }
.sr-single-atc .single_add_to_cart_button { background:var(--sr-o)!important; color:#fff!important; border:none!important; padding:13px 32px!important; border-radius:50px!important; font-family:var(--sr-fn)!important; font-size:15px!important; font-weight:700!important; cursor:pointer!important; box-shadow:0 4px 18px rgba(232,82,10,.38)!important; transition:background .2s,transform .15s!important; }
.sr-single-atc .single_add_to_cart_button:hover { background:var(--sr-odk)!important; transform:translateY(-2px)!important; }
.sr-out-msg { color:var(--sr-mu); font-size:14px; padding:12px 0; }
.sr-wa-order { display:inline-flex; align-items:center; gap:8px; background:linear-gradient(135deg,#25D366,#128C7E); color:#fff!important; padding:13px 28px; border-radius:50px; font-weight:700; font-size:15px; text-decoration:none!important; margin-bottom:22px; transition:opacity .2s,transform .15s; }
.sr-wa-order:hover { opacity:.9; transform:translateY(-2px); }
.sr-trust-strip { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:20px; }
.sr-trust-b { background:var(--sr-olt); color:var(--sr-odk); font-size:12px; font-weight:600; padding:6px 12px; border-radius:100px; border:1px solid rgba(232,82,10,.2); }
.sr-prod-meta { border-top:1px solid var(--sr-bd); padding-top:16px; display:flex; flex-direction:column; gap:8px; }
.sr-meta-r { font-size:13px; color:var(--sr-mu); }
.sr-meta-r span { font-weight:600; color:var(--sr-tx); margin-right:4px; }
.sr-meta-r a { color:var(--sr-o); text-decoration:none; }
.sr-tabs { display:flex; gap:4px; border-bottom:2px solid var(--sr-bd); margin-bottom:28px; }
.sr-tab-btn { background:none; border:none; padding:12px 24px; font-family:var(--sr-fn); font-size:14px; font-weight:600; color:var(--sr-mu); cursor:pointer; border-bottom:2px solid transparent; margin-bottom:-2px; transition:all .2s; }
.sr-tab-btn.active { color:var(--sr-o); border-bottom-color:var(--sr-o); }
.sr-tab-pane { display:none; }
.sr-tab-pane.active { display:block; }
.sr-desc { font-size:15px; color:var(--sr-mu); line-height:1.8; max-width:740px; }
.sr-desc h2,.sr-desc h3 { font-family:var(--sr-sf); color:var(--sr-tx); margin:20px 0 10px; }
.sr-desc p { margin:0 0 14px; }

/* ═══ CART ═══ */
.sr-cart-hero { background:linear-gradient(135deg,#FFF5EE,#FFF8E6); padding:48px 0 40px; }
.sr-cart-layout { display:grid; grid-template-columns:1fr 380px; gap:32px; align-items:start; }
.sr-empty-cart { text-align:center; padding:80px 20px; }
.sr-empty-icon { font-size:80px; margin-bottom:20px; display:block; }
.sr-empty-cart h2 { font-family:var(--sr-sf); font-size:28px; color:var(--sr-tx); margin-bottom:12px; }
.sr-empty-cart p { font-size:15px; color:var(--sr-mu); margin-bottom:28px; }
.sr-cart-items { background:var(--sr-wh); border:1.5px solid var(--sr-bd); border-radius:var(--sr-r); overflow:hidden; }
.sr-cart-head { display:grid; grid-template-columns:2fr 1fr 140px 1fr 40px; gap:12px; padding:14px 20px; background:var(--sr-cr); border-bottom:1.5px solid var(--sr-bd); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.5px; color:var(--sr-mu); }
.sr-cart-row { display:grid; grid-template-columns:2fr 1fr 140px 1fr 40px; gap:12px; padding:20px; border-bottom:1px solid var(--sr-bd); align-items:center; transition:opacity .3s; }
.sr-cart-row:last-of-type { border-bottom:none; }
.sr-cart-prod { display:flex; gap:14px; align-items:center; }
.sr-cart-img { width:68px; height:68px; border-radius:10px; overflow:hidden; flex-shrink:0; display:block; background:var(--sr-olt); }
.sr-cart-img img { width:100%; height:100%; object-fit:cover; display:block; }
.sr-cart-prod-name { font-size:14px; font-weight:600; color:var(--sr-tx); text-decoration:none; display:block; margin-bottom:3px; }
.sr-cart-prod-name:hover { color:var(--sr-o); }
.sr-cart-prod-cat { font-size:11px; color:var(--sr-mu); }
.sr-cart-price { font-size:15px; font-weight:600; color:var(--sr-tx); }
.sr-cart-line-total { font-size:15px; font-weight:700; color:var(--sr-odk); }

/* QTY CONTROLS — fully fixed, no odd-number jumping */
.sr-qty-wrap { display:inline-flex; align-items:center; border:1.5px solid var(--sr-bd); border-radius:8px; overflow:hidden; user-select:none; }
.sr-qty-minus,
.sr-qty-plus {
  width:34px; height:34px; min-width:34px; min-height:34px;
  border:none; background:var(--sr-cr); color:var(--sr-tx);
  font-size:20px; font-weight:700; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  line-height:1; padding:0; margin:0; flex-shrink:0;
  -webkit-appearance:none; -moz-appearance:none; appearance:none;
  transition:background .15s;
  /* prevent double-tap zoom on mobile */
  touch-action:manipulation;
}
.sr-qty-minus:hover,.sr-qty-plus:hover { background:var(--sr-olt); color:var(--sr-o); }
.sr-qty-display { min-width:40px; text-align:center; font-family:var(--sr-fn); font-size:15px; font-weight:700; color:var(--sr-tx); padding:6px 4px; background:#fff; display:block; flex-shrink:0; }
.sr-qty-val { display:none; }

.sr-remove-item { display:flex; align-items:center; justify-content:center; width:30px; height:30px; border-radius:50%; background:var(--sr-cr); color:var(--sr-mu); font-size:12px; font-weight:700; border:none; cursor:pointer; transition:all .2s; touch-action:manipulation; }
.sr-remove-item:hover { background:#FDECEA; color:#c0392b; }
.sr-cart-footer-row { display:flex; justify-content:flex-start; padding:16px 20px; border-top:1.5px solid var(--sr-bd); }
.sr-cart-summary { position:sticky; top:100px; }
.sr-summary-box { background:var(--sr-wh); border:1.5px solid var(--sr-bd); border-radius:var(--sr-r); padding:28px; }
.sr-summary-title { font-family:var(--sr-sf); font-size:20px; font-weight:700; color:var(--sr-tx); margin:0 0 20px; padding-bottom:14px; border-bottom:1.5px solid var(--sr-bd); }
.sr-sum-row { display:flex; justify-content:space-between; font-size:14px; color:var(--sr-mu); padding:8px 0; border-bottom:1px solid var(--sr-bd); }
.sr-discount-row { color:var(--sr-gn); font-weight:600; }
.sr-sum-total { display:flex; justify-content:space-between; align-items:center; font-size:18px; font-weight:700; color:var(--sr-tx); padding:16px 0 20px; border-top:2px solid var(--sr-bd); margin-top:4px; }
.sr-sum-total span:last-child { color:var(--sr-odk); font-size:22px; }
.sr-checkout-btn { width:100%; justify-content:center; font-size:16px; padding:15px; margin-bottom:12px; border-radius:12px; }
.sr-wa-check-btn { display:flex; align-items:center; justify-content:center; gap:8px; background:linear-gradient(135deg,#25D366,#128C7E); color:#fff!important; padding:13px; border-radius:12px; font-weight:700; font-size:15px; text-decoration:none!important; margin-bottom:14px; }
.sr-wa-check-btn:hover { opacity:.9; color:#fff!important; }
.sr-secure-note { text-align:center; font-size:12px; color:var(--sr-mu); }
.sr-coupon-row { display:flex; gap:8px; margin:16px 0 10px; }
.sr-coupon-input { flex:1; padding:10px 14px; border:1.5px solid var(--sr-bd); border-radius:10px; font-family:var(--sr-fn); font-size:13px; outline:none; }
.sr-coupon-input:focus { border-color:var(--sr-o); }
.sr-applied-coupon { font-size:13px; color:var(--sr-gn); font-weight:600; background:#EBF5EC; padding:8px 12px; border-radius:8px; margin-bottom:10px; display:flex; align-items:center; justify-content:space-between; }
.sr-rm-coupon { color:var(--sr-mu); text-decoration:none; font-weight:700; }
.sr-rm-coupon:hover { color:#c0392b; }

/* ═══ RESPONSIVE ═══ */
@media (max-width:1024px) {
  .sr-cart-layout { grid-template-columns:1fr; }
  .sr-cart-summary { position:static; }
}
@media (max-width:900px) {
  .sr-hero-inner { grid-template-columns:1fr; gap:32px; }
  .sr-hero-vis { order:-1; grid-template-columns:repeat(4,1fr); }
  .sr-mini:nth-child(2),.sr-mini:nth-child(4) { margin-top:0; }
  .sr-why-grid { grid-template-columns:1fr; }
  .sr-why-box { order:-1; }
  .sr-story { grid-template-columns:1fr; text-align:center; }
  .sr-contact-grid { grid-template-columns:1fr; }
  .sr-single-grid { grid-template-columns:1fr; gap:32px; }
  .sr-cart-head { display:none; }
  .sr-cart-row { grid-template-columns:1fr 1fr; gap:10px; }
  .sr-cart-prod { grid-column:1/-1; }
  .sr-cart-del { justify-self:end; }
}
@media (max-width:640px) {
  .sr-hero { padding:44px 0 36px; }
  .sr-hero-inner { gap:24px; }
  .sr-hero-vis { grid-template-columns:1fr 1fr; }
  .sr-mini:nth-child(2),.sr-mini:nth-child(4) { margin-top:14px; }
  .sr-cat-grid { grid-template-columns:1fr 1fr; }
  .sr-val-grid { grid-template-columns:1fr; }
  .sr-cta { padding:36px 20px; }
  .sr-sec { padding:44px 0; }
  .sr-prod-grid { grid-template-columns:repeat(2,1fr); gap:12px; }
  .sr-prod-thumb { height:130px; }
  .sr-controls { flex-direction:column; }
  .sr-search { min-width:0; width:100%; }
  .sr-wrap { padding:0 16px; }
  .sr-hero-desc { font-size:15px; }
  .sr-single-atc form.cart { flex-direction:column; align-items:flex-start; }
  .sr-trust-strip { gap:6px; }
}
@media (max-width:400px) {
  .sr-prod-grid { grid-template-columns:1fr; }
}
