/* Royather: mobile-first. Palette: deep green, brass, stone. */
:root{
  --r-primary:#12332f; --r-accent:#d1a24a; --r-accent-ink:#7d5d14;
  --r-ink:#14181a; --r-muted:#55615e; --r-bg:#f4f5f1; --r-alt:#eaede6; --r-card:#fff; --r-line:#dde1d8;
  --r-gutter:clamp(1rem,4.5vw,2.25rem);
  --r-head:"Fraunces",Georgia,"Times New Roman",serif;
  --r-body:"Figtree",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;-webkit-tap-highlight-color:transparent;font-family:var(--r-body);font-size:16px;line-height:1.6;color:var(--r-ink);background:var(--r-bg);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--r-head);font-weight:700;line-height:1.12;margin:0 0 .5em;letter-spacing:-.015em}
p{margin:0 0 1em}
[hidden]{display:none!important}
.container{width:100%;max-width:calc(1240px + 2*var(--r-gutter));margin-inline:auto;padding-inline:var(--r-gutter)}
.screen-reader-text,.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:.5rem;top:.5rem;z-index:999;background:#000;color:#fff;padding:.6rem 1rem;border-radius:6px}
:focus-visible{outline:3px solid var(--r-accent);outline-offset:2px}
.r-ico{display:block;flex:none}
.r-admin-note{background:#fff4d6;border:1px dashed #b88a1d;padding:.8rem 1rem;border-radius:8px;font-size:.9rem}

/* Announcement ticker */
.r-announce{background:var(--r-primary);color:#fff;font-size:.82rem;overflow:hidden;white-space:nowrap}
.r-announce__track{display:inline-flex;animation:ticker 40s linear infinite;padding:.55rem 0}
.r-announce__track span{padding-right:2.5rem}
.r-announce__track span::after{content:"\2726";margin-left:2.5rem;color:var(--r-accent)}
@keyframes ticker{to{transform:translateX(-50%)}}

/* Header */
.r-header{position:sticky;top:0;z-index:60;background:rgba(244,245,241,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--r-line)}
.r-header.is-stuck{box-shadow:0 8px 24px rgba(20,24,26,.08)}
.r-header__inner{display:grid;grid-template-columns:88px 1fr 88px;align-items:center;min-height:64px}
.r-brand{justify-self:center;text-align:center;font-family:var(--r-head);font-weight:700;font-size:1.6rem;letter-spacing:.02em;text-decoration:none;color:var(--r-primary)}
.r-brand img{max-height:44px;width:auto}
.r-nav{display:none}
.r-actions{display:flex;justify-self:end}
.r-iconbtn{position:relative;width:44px;height:44px;display:inline-grid;place-items:center;border:0;background:none;color:var(--r-ink);border-radius:50%;cursor:pointer;text-decoration:none}
.r-iconbtn:hover{background:rgba(18,51,47,.08)}
.royather-cart-count{position:absolute;top:2px;right:0;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--r-accent);color:var(--r-ink);font:800 .7rem/18px var(--r-body);text-align:center}
.royather-cart-count[data-count="0"]{display:none}
.royather-cart-count.bump{animation:bump .5s}
@keyframes bump{40%{transform:scale(1.5)}}
.r-burger{width:44px;height:44px;border:0;background:none;cursor:pointer;display:inline-flex;flex-direction:column;justify-content:center;gap:5px;padding:0 11px}
.r-burger span{display:block;height:2px;background:var(--r-ink);border-radius:2px}
.r-burger span:nth-child(2){width:70%}
.r-search{border-top:1px solid var(--r-line);background:#fff;padding:.8rem 0}
.r-search__form{display:flex;gap:.5rem}
.r-search__form input[type=search]{flex:1;min-width:0;height:46px;padding:0 1rem;border:1px solid var(--r-line);border-radius:999px;font:16px var(--r-body);background:var(--r-bg)}

/* Drawer */
.r-overlay{position:fixed;inset:0;background:rgba(10,14,13,.55);opacity:0;pointer-events:none;transition:opacity .25s;z-index:80}
.r-drawer{position:fixed;top:0;bottom:0;left:0;width:min(86vw,340px);background:var(--r-bg);z-index:90;transform:translateX(-102%);visibility:hidden;transition:transform .3s cubic-bezier(.2,.8,.2,1),visibility 0s .3s;padding:1rem 1.25rem 2rem;overflow:auto}
body.drawer-open,body.cart-open{overflow:hidden}
body.drawer-open .r-drawer{transform:none;visibility:visible;transition-delay:0s}
body.drawer-open .r-overlay{opacity:1;pointer-events:auto}
.r-drawer .r-menu{list-style:none;margin:1rem 0;padding:0}
.r-drawer .r-menu a{display:block;padding:1rem 0;border-bottom:1px solid var(--r-line);font:700 1.3rem var(--r-head);text-decoration:none}
.r-drawer__note{color:var(--r-muted);font-size:.9rem}

/* Buttons */
.r-btn,.r-card .button,.r-card .added_to_cart{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 1.5rem;border:2px solid transparent;border-radius:999px;font:700 1rem var(--r-body);text-decoration:none;cursor:pointer;transition:background .2s,color .2s,transform .15s}
.r-btn:active,.r-card .button:active{transform:scale(.97)}
.r-btn--sm{min-height:44px;padding:0 1.2rem;font-size:.95rem}
.r-btn--gold{background:var(--r-accent);color:var(--r-ink)}
.r-btn--gold:hover{background:#e3b75e}
.r-btn--navy{background:var(--r-primary);color:#fff}
.r-btn--navy:hover{background:#0b2421}
.r-btn--ghost{border-color:rgba(255,255,255,.6);color:#fff}
.r-btn--ghost:hover{background:rgba(255,255,255,.12)}
.r-btn--ghost-dark{border-color:var(--r-primary);color:var(--r-primary)}
.r-btn--ghost-dark:hover{background:var(--r-primary);color:#fff}

/* Hero */
.r-hero{position:relative;overflow:hidden;color:#fff;background:linear-gradient(150deg,#0c2420 0%,var(--r-primary) 60%,#1d4a43 100%);padding:clamp(2rem,7vw,5rem) 0 clamp(2.5rem,7vw,5rem)}
.r-hero__bg i{position:absolute;border-radius:50%;filter:blur(46px);opacity:.45;animation:drift 14s ease-in-out infinite alternate}
.r-hero__bg i:nth-child(1){width:280px;height:280px;background:var(--r-accent);top:-90px;right:-70px}
.r-hero__bg i:nth-child(2){width:240px;height:240px;background:#3f8f80;bottom:-100px;left:-70px;animation-delay:-5s}
.r-hero__bg i:nth-child(3){width:130px;height:130px;background:#f0cf8a;top:48%;left:46%;opacity:.2;animation-delay:-9s}
@keyframes drift{to{transform:translate3d(28px,-22px,0) scale(1.15)}}
.r-hero__grid{position:relative;display:grid;gap:2.2rem;align-items:center}
.r-hero h1{font-size:clamp(2.3rem,9.5vw,4.6rem);color:#fff;max-width:14ch}
.r-hero__text{font-size:clamp(1rem,3.6vw,1.2rem);color:#d6e3df;max-width:46ch}
.r-hero__cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.4rem}
.r-hero__cta .r-btn{flex:1 1 170px}
.r-hero__copy>*{animation:rise .8s cubic-bezier(.2,.8,.2,1) both}
.r-hero__copy>*:nth-child(2){animation-delay:.12s}
.r-hero__copy>*:nth-child(3){animation-delay:.24s}
@keyframes rise{from{opacity:0;transform:translateY(26px)}}
.r-hero__visual{position:relative;justify-self:center;width:min(74vw,350px);aspect-ratio:4/5;animation:rise 1s .2s cubic-bezier(.2,.8,.2,1) both}
.r-arch{position:absolute;inset:0;border-radius:999px 999px 26px 26px;overflow:hidden;background:linear-gradient(165deg,#f1e3c2,#d1a24a);box-shadow:0 34px 70px rgba(0,0,0,.4);animation:float 6s ease-in-out infinite}
.r-arch img{width:100%;height:100%;object-fit:cover}
@keyframes float{50%{transform:translateY(-12px)}}
.r-bag{position:absolute;left:50%;bottom:16%;width:64%;aspect-ratio:1/.86;transform:translateX(-50%)}
.r-bag__handle{position:absolute;left:22%;right:22%;top:-34%;height:46%;border:10px solid var(--r-primary);border-bottom:0;border-radius:999px 999px 0 0}
.r-bag__body{position:absolute;inset:0;background:linear-gradient(160deg,#1d4a43,var(--r-primary) 60%,#0a1f1c);border-radius:14px 14px 30px 30px;box-shadow:inset 0 -16px 26px rgba(0,0,0,.4)}
.r-bag__body::before{content:"";position:absolute;left:0;right:0;top:0;height:44%;border-bottom:2px solid rgba(255,255,255,.18);border-radius:14px 14px 60% 60%/14px 14px 34% 34%;background:rgba(255,255,255,.06)}
.r-bag__clasp{position:absolute;left:50%;top:38%;width:13%;aspect-ratio:1;transform:translateX(-50%);background:var(--r-accent);border-radius:50%;box-shadow:0 0 0 5px rgba(209,162,74,.3)}
.r-spark{position:absolute;width:14px;height:14px;background:#fff;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation:twinkle 2.8s ease-in-out infinite}
.r-spark--1{top:6%;right:-4%}.r-spark--2{bottom:20%;left:-8%;width:20px;height:20px;animation-delay:.9s}.r-spark--3{top:38%;right:-10%;width:10px;height:10px;animation-delay:1.7s}
@keyframes twinkle{50%{opacity:.2;transform:scale(.6)}}
@media(min-width:900px){.r-hero__grid{grid-template-columns:1.1fr .9fr}.r-hero__cta .r-btn{flex:0 0 auto}}

/* Store facts */
.r-trust{background:#fff;border-bottom:1px solid var(--r-line)}
.r-trust__grid{display:grid;grid-template-columns:1fr;gap:0}
.r-trust__item{display:flex;gap:.8rem;align-items:center;padding:.9rem 0;color:var(--r-primary);border-bottom:1px solid var(--r-line)}
.r-trust__item:last-child{border-bottom:0}
@media(min-width:760px){.r-trust__item{border-bottom:0;padding:1.2rem 0;justify-content:center}}
.r-trust__item p{margin:0;color:var(--r-ink);font-size:.85rem;line-height:1.35}
.r-trust__item strong{display:block;font-size:.95rem}
.r-trust__item span{color:var(--r-muted)}
@media(min-width:760px){.r-trust__grid{grid-template-columns:repeat(3,1fr);gap:0 1.5rem}}

/* Sections */
.r-section{padding:clamp(2.6rem,7vw,5rem) 0}
.r-section--alt{background:var(--r-alt)}
.r-head{text-align:center;max-width:620px;margin:0 auto 1.8rem}
.r-head h2{font-size:clamp(1.9rem,6.5vw,3rem);margin-bottom:.35em}
.r-head p{color:var(--r-muted);margin:0}
.r-more{text-align:center;margin:2rem 0 0}
.r-more .r-btn{min-width:min(100%,280px)}

/* Categories */
.r-cats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem .9rem}
.r-cat{text-align:center}
.r-cat__media{display:block;aspect-ratio:3/4;border-radius:999px 999px 16px 16px;overflow:hidden;background:var(--r-alt);margin-bottom:.8rem}
.r-cat__media img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.r-cat:hover .r-cat__media img{transform:scale(1.05)}
.r-cat__ph{display:grid;place-items:center;height:100%;font:700 3rem var(--r-head);color:var(--r-primary)}
.r-cat__title{font-size:1.2rem;margin:0}
.r-cat__title a{text-decoration:none}
.r-cat__count{color:var(--r-muted);font-size:.85rem;margin:.1rem 0 .7rem}
.r-cat .r-btn{width:100%;max-width:200px}
.js .r-cats .r-cat{opacity:0;transform:translateY(30px) scale(.96)}
.js .r-cats.is-in .r-cat{opacity:1;transform:none;transition:opacity .6s ease calc(var(--i)*80ms),transform .8s cubic-bezier(.2,.8,.2,1) calc(var(--i)*80ms)}
@media(min-width:900px){.r-cats{grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem 1.5rem}}

/* Product cards */
.r-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
@media(min-width:760px){.r-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}}
@media(min-width:1100px){.r-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.r-card{display:flex;flex-direction:column;background:var(--r-card);border:1px solid var(--r-line);border-radius:14px;overflow:hidden}
.r-card__media{position:relative;display:block;aspect-ratio:1/1;background:var(--r-alt)}
.r-card--feature .r-card__media{aspect-ratio:4/5}
.r-card__img{width:100%;height:100%;object-fit:cover}
.r-badge{position:absolute;top:.6rem;left:.6rem;background:var(--r-ink);color:#fff;font:700 .75rem var(--r-body);padding:.25rem .6rem;border-radius:6px}
.r-card__body{display:flex;flex-direction:column;flex:1;padding:.8rem .8rem 1rem}
.r-card__title{font:700 1rem/1.25 var(--r-body);margin:0 0 .3rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.5em}
.r-card__title a{text-decoration:none}
.r-card__desc{font-size:.9rem;color:var(--r-muted);margin:.2rem 0 .6rem}
.r-card__price{font-weight:800;font-size:1.1rem;margin:.2rem 0 .8rem;color:var(--r-primary)}
.r-card__price del{opacity:.55;font-weight:500;margin-right:.3rem}
.r-card__price ins{text-decoration:none}
.r-card__actions{display:grid;gap:.5rem;margin-top:auto}
.r-card .button{width:100%;background:var(--r-primary);color:#fff;min-height:48px}
.r-card .button:hover{background:var(--r-accent);color:var(--r-ink)}
.r-card .button.loading{opacity:.6;pointer-events:none}
.r-card .button.added::after{content:"\2713";margin-left:.4rem}
.r-card .added_to_cart{min-height:40px;padding:0;color:var(--r-primary);text-decoration:underline;font-size:.9rem}
.r-card .star-rating{font-size:.85rem;color:var(--r-accent-ink);margin-bottom:.2rem}

/* Horizontal rails (mobile snap, desktop grid) */
.r-rail{display:grid;grid-auto-flow:column;grid-auto-columns:80%;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:.2rem var(--r-gutter) 1rem;margin-inline:calc(var(--r-gutter)*-1);scrollbar-width:none}
.r-rail::-webkit-scrollbar{display:none}
.r-rail>*{scroll-snap-align:center}
@media(min-width:760px){.r-rail{grid-auto-columns:42%}}
@media(min-width:1100px){.r-rail{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;padding:0;margin:0}}

/* Visit */
.r-visit__grid{display:grid;gap:2rem;align-items:center}
.r-visit h2{font-size:clamp(1.8rem,6vw,2.6rem)}
.r-visit__cta{display:flex;flex-wrap:wrap;gap:.7rem}
.r-visit__card{margin:0;background:#fff;border:1px solid var(--r-line);border-radius:14px;padding:.4rem 1.2rem}
.r-visit__card div{padding:.9rem 0;border-bottom:1px solid var(--r-line)}
.r-visit__card div:last-child{border:0}
.r-visit__card dt{font-size:.8rem;color:var(--r-muted);font-weight:600}
.r-visit__card dd{margin:.1rem 0 0;font-weight:600}
@media(min-width:900px){.r-visit__grid{grid-template-columns:1fr 1fr;gap:4rem}}

/* Footer */
.r-footer{background:#0b1f1c;color:#c3d3cf;font-size:.95rem}
.r-footer__grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem 1.2rem;padding-block:3rem 2rem}
.r-footer__brand{grid-column:1/-1}
.r-footer__logo{font:700 1.8rem var(--r-head);color:#fff;margin-bottom:.5rem}
.r-footer h2{font:700 1.05rem var(--r-head);color:#fff;margin-bottom:.8rem}
.r-footer ul{list-style:none;margin:0;padding:0}
.r-footer li{margin:0 0 .35rem}
.r-footer a{text-decoration:none}
.r-footer a:hover{text-decoration:underline}
.r-footer address{font-style:normal;margin-bottom:.8rem}
.r-footer__col:last-of-type{grid-column:1/-1}
.r-pay{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 0}
.r-pay span{border:1px solid rgba(255,255,255,.3);border-radius:6px;padding:.25rem .65rem;font-size:.8rem;font-weight:700;color:#fff}
.r-footer__bar{border-top:1px solid rgba(255,255,255,.12);padding:1rem 0;font-size:.85rem}
@media(min-width:900px){.r-footer__grid{grid-template-columns:1.4fr 1fr 1fr 1.3fr}.r-footer__brand{grid-column:auto}.r-footer__col:last-of-type{grid-column:auto}}

@media(min-width:900px){
  .r-header__inner{display:flex;gap:1.5rem}.r-burger{display:none}
  .r-brand{justify-self:auto}
  .r-nav{display:block;flex:1}
  .r-menu{display:flex;gap:1.8rem;list-style:none;margin:0;padding:0}
  .r-menu a{text-decoration:none;font-weight:600;padding:.4rem 0;border-bottom:2px solid transparent}
  .r-menu a:hover{border-color:var(--r-accent)}
}

/* Pages & posts */
.site-main{min-height:50vh}
.prose{max-width:860px;padding-block:2rem 3rem}
.r-page__title{font-size:clamp(2rem,7vw,3rem)}
.entry-content h2{font-size:1.5rem;margin-top:1.8em}
.entry-content h3{font-size:1.2rem;margin-top:1.4em}
.entry-content ul,.entry-content ol{padding-left:1.3rem}
.entry-content table{width:100%;border-collapse:collapse;display:block;overflow-x:auto}
.entry-content th,.entry-content td{border:1px solid var(--r-line);padding:.6rem .8rem;text-align:left}
.entry-content th{background:var(--r-alt)}
.entry-content img{border-radius:12px}
.r-post{border-bottom:1px solid var(--r-line);padding:1rem 0}
.r-meta{color:var(--r-muted)}

/* WooCommerce pages */
.wc-main{padding:1.2rem 0 3rem}
.woocommerce-breadcrumb{font-size:.85rem;color:var(--r-muted);margin-bottom:1rem}
.woocommerce-products-header__title,.product_title{font-size:clamp(1.8rem,6vw,2.8rem)}
.woocommerce ul.products,.woocommerce-page ul.products{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:0 0 2rem;padding:0;list-style:none}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{float:none!important;width:auto!important;margin:0!important;display:flex;flex-direction:column;background:#fff;border:1px solid var(--r-line);border-radius:14px;padding:.6rem}
.woocommerce ul.products li.product img{aspect-ratio:1;object-fit:cover;width:100%;border-radius:10px;margin:0 0 .6rem}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font:700 .95rem/1.25 var(--r-body);padding:0;margin:0 0 .3rem}
.woocommerce ul.products li.product .price{color:var(--r-primary);font-weight:800;margin-bottom:.7rem}
.woocommerce ul.products li.product .button{margin-top:auto}
@media(min-width:760px){.woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1100px){.woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(4,minmax(0,1fr))}}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{background:var(--r-primary);color:#fff;border-radius:999px;min-height:46px;padding:.7rem 1.4rem;font-weight:700;line-height:1.2}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:#0b2421;color:#fff}
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,.woocommerce #payment #place_order{background:var(--r-accent);color:var(--r-ink);border-radius:999px;min-height:52px;font-weight:800}
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce #payment #place_order:hover{background:#e3b75e;color:var(--r-ink)}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--r-primary);font-weight:800;font-size:1.5rem}
.woocommerce div.product form.cart .button{min-height:52px;padding:0 2rem}
.woocommerce div.product form.cart .quantity .qty{height:52px;border:1px solid var(--r-line);border-radius:10px}
.woocommerce span.onsale{background:var(--r-ink);color:#fff;border-radius:6px;min-height:0;min-width:0;line-height:1.4;padding:.2rem .6rem;top:.8rem;left:.8rem}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-radius:10px}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,input,select,textarea{font-size:16px}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{border:1px solid var(--r-line);border-radius:10px;padding:.75rem}
.woocommerce table.shop_table{border-radius:12px;overflow:hidden}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .js .r-cats .r-cat{opacity:1;transform:none}
}

/* Help CTA + trust link + FAQ accordions */
.r-visit__inner{text-align:center;max-width:660px}
.r-visit__cta{display:flex;flex-wrap:wrap;gap:.7rem;justify-content:center}
.r-visit__cta .r-btn{flex:1 1 160px}
a.r-trust__item{text-decoration:none}
a.r-trust__item:hover strong{text-decoration:underline}
.entry-content details{border:1px solid var(--r-line);border-radius:12px;background:#fff;margin:0 0 .6rem;padding:0 1rem}
.entry-content summary{cursor:pointer;font-weight:700;padding:.9rem 0;list-style-position:outside}
.entry-content details[open] summary{border-bottom:1px solid var(--r-line);margin-bottom:.7rem}
.entry-content details p:last-child{margin-bottom:1rem}

/* Prices stay on one line: $25.00 USD */
.woocommerce-Price-amount{white-space:nowrap}

/* Badges: real sale %, out of stock, backorder */
.r-badges{position:absolute;top:.6rem;left:.6rem;display:flex;flex-direction:column;align-items:flex-start;gap:.3rem}
.r-badge{position:static;background:var(--r-ink);color:#fff;font:800 .75rem/1 var(--r-body);padding:.35rem .6rem;border-radius:6px}
.r-badge--sale{background:#b3261e}
.r-badge--out{background:#4a5552}
.r-badge--back{background:#7d5d14}
.r-badge--float{position:absolute;top:.8rem;right:.8rem;z-index:2}
.r-card.is-out .r-card__img{opacity:.55;filter:grayscale(.45)}
.r-card .r-card__out{background:#e4e7e0;color:var(--r-muted);width:100%}
.r-card .r-card__out:hover{background:#d8dcd4;color:var(--r-ink)}
.r-card__price ins{color:#b3261e}
.woocommerce ul.products li.product{position:relative}
.woocommerce span.onsale{background:#b3261e;color:#fff;border-radius:6px;font-weight:800}

/* Cart sidebar */
.r-cartdrawer{position:fixed;top:0;right:0;bottom:0;width:min(94vw,440px);z-index:95;display:flex;flex-direction:column;background:var(--r-bg);border-radius:28px 0 0 28px;box-shadow:-24px 0 70px rgba(8,20,18,.35);transform:translateX(105%);visibility:hidden;transition:transform .45s cubic-bezier(.2,.9,.25,1),visibility 0s .45s;overscroll-behavior:contain;overflow:hidden}
body.cart-open .r-cartdrawer{transform:none;visibility:visible;transition-delay:0s}
body.cart-open .r-overlay{opacity:1;pointer-events:auto}
.r-cartdrawer__head{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1rem 1rem 1.4rem;flex:none;background:linear-gradient(135deg,#0c2420,var(--r-primary) 70%,#1d4a43);color:#fff}
.r-cartdrawer__head h2{margin:0;display:flex;align-items:center;gap:.6rem;font-size:1.45rem;color:#fff}
.r-cartdrawer__head h2 .r-ico{color:var(--r-accent)}
.r-cartdrawer__n{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 .45rem;border-radius:13px;background:var(--r-accent);color:var(--r-ink);font:800 .8rem/1 var(--r-body)}
.r-cartdrawer__close{color:#fff}
.r-cartdrawer__close:hover{background:rgba(255,255,255,.14)}
.r-cartdrawer .widget_shopping_cart_content{flex:1;display:flex;flex-direction:column;min-height:0}
.r-cartdrawer ul.cart_list{flex:1;overflow:auto;list-style:none;margin:0;padding:.6rem 1.1rem;-webkit-overflow-scrolling:touch}
.r-cartdrawer li.mini_cart_item{position:relative;margin:.6rem 0;padding:.8rem;background:#fff;border:1px solid var(--r-line);border-radius:18px;animation:slidein .45s cubic-bezier(.2,.9,.25,1) both}
@keyframes slidein{from{opacity:0;transform:translateX(24px)}}
.r-mc{display:grid;grid-template-columns:78px 1fr;gap:.85rem;align-items:center}
.r-mc__img{display:block;border-radius:14px;overflow:hidden;background:var(--r-alt)}
.r-mc__img img{width:78px;height:78px;object-fit:cover;margin:0;float:none}
.r-mc__info{min-width:0;padding-right:1.6rem}
.r-mc__name{display:block;font-weight:700;line-height:1.3;text-decoration:none;margin-bottom:.15rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.r-mc__price{display:block;font-weight:800;color:var(--r-primary);font-size:.95rem;margin-bottom:.45rem}
.r-cartdrawer dl.variation{margin:0 0 .3rem;font-size:.8rem;color:var(--r-muted)}
.r-cartdrawer dl.variation dt,.r-cartdrawer dl.variation dd,.r-cartdrawer dl.variation p{display:inline;margin:0}
.r-cartdrawer a.remove{position:absolute;top:.55rem;right:.55rem;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--r-alt);color:var(--r-ink)!important;font-size:1.15rem;line-height:1;text-decoration:none}
.r-cartdrawer a.remove:hover{background:#b3261e;color:#fff!important}
.r-qty{display:inline-flex;align-items:center;border:1px solid var(--r-line);border-radius:999px;background:var(--r-bg);overflow:hidden}
.r-qty__btn{width:40px;height:40px;display:grid;place-items:center;border:0;background:none;color:var(--r-primary);cursor:pointer}
.r-qty__btn .r-ico{width:16px;height:16px}
.r-qty__btn:hover:not(:disabled){background:var(--r-alt)}
.r-qty__btn:disabled{opacity:.35;cursor:not-allowed}
.r-qty__n{min-width:28px;text-align:center;font-weight:800}
.r-qty.is-busy{opacity:.55;pointer-events:none}
.r-cartdrawer .woocommerce-mini-cart__total{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:0;padding:1rem 1.4rem .6rem;font-size:1.1rem;border-top:1px solid var(--r-line);background:#fff;flex:none}
.r-cartdrawer .woocommerce-mini-cart__buttons{display:grid;gap:.6rem;margin:0;padding:.4rem 1.4rem 1rem;background:#fff;flex:none}
.r-cartdrawer .woocommerce-mini-cart__buttons .button{display:flex;align-items:center;justify-content:center;min-height:50px;border-radius:999px;background:var(--r-bg);border:2px solid var(--r-primary);color:var(--r-primary);font-weight:800;text-decoration:none}
.r-cartdrawer .woocommerce-mini-cart__buttons .button.checkout{background:var(--r-accent);border-color:var(--r-accent);color:var(--r-ink)}
.r-mc-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;padding:2rem 1.4rem;text-align:center;color:var(--r-muted)}
.r-mc-empty .r-ico{width:54px;height:54px;color:var(--r-primary);opacity:.5}
.r-mc-empty p{margin:0 0 .6rem}
.r-cartdrawer__note{margin:0;padding:.8rem 1.4rem calc(.9rem + env(safe-area-inset-bottom));font-size:.8rem;color:var(--r-muted);background:#fff;border-top:1px solid var(--r-line);flex:none}
.r-cartdrawer__note a{color:var(--r-primary);font-weight:700}

/* Shop, category and search pages */
.wc-main{padding:1rem 0 3rem}
.r-shop-head{padding:.8rem 0 .4rem}
.r-shop-head h1{font-size:clamp(1.9rem,6vw,2.8rem);margin-bottom:.3rem}
.r-shop-head p{color:var(--r-muted)}
.r-shop-tools{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin:.6rem 0 1.1rem}
.r-shop-count{margin:0;color:var(--r-muted);font-size:.9rem}
.r-shop-sort select{height:44px;max-width:60vw;padding:0 1rem;border:1px solid var(--r-line);border-radius:999px;background:#fff;font:600 .9rem var(--r-body)}
.navigation.pagination{margin:2rem 0 0}
.navigation.pagination .nav-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem}
.page-numbers{min-width:44px;height:44px;display:inline-grid;place-items:center;padding:0 .9rem;border:1px solid var(--r-line);border-radius:999px;background:#fff;font-weight:700;text-decoration:none}
.page-numbers.current{background:var(--r-primary);border-color:var(--r-primary);color:#fff}
.r-empty{padding:2rem 0;color:var(--r-muted)}
.woocommerce div.product div.images img{border-radius:16px}

/* Sticky Add to Cart bar on product pages (mobile) */
.r-buybar{display:none}
@media(max-width:899px){
  .r-buybar{display:flex;align-items:center;gap:.8rem;position:fixed;left:.6rem;right:.6rem;bottom:calc(.8rem + env(safe-area-inset-bottom));z-index:65;padding:.55rem .6rem .55rem 1rem;background:var(--r-primary);color:#fff;border-radius:999px;box-shadow:0 12px 30px rgba(8,20,18,.35);transform:translateY(160%);transition:transform .35s cubic-bezier(.2,.9,.25,1)}
  .r-buybar.is-visible{transform:none}
  .r-buybar__info{flex:1;min-width:0;line-height:1.25}
  .r-buybar__info strong{display:block;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .r-buybar__info span{font-weight:800;color:#f0cf8a;font-size:.95rem}
  .r-buybar .r-btn{flex:none}
}

/* ===== v1.1 ===== */
/* USD after every amount in WooCommerce blocks (cart/checkout blocks ignore the classic price format) */
.wc-block-formatted-money-amount::after,.wc-block-components-formatted-money-amount::after{content:"\00a0USD"}
.r-noprice{font-weight:600;color:var(--r-muted);font-size:.9rem}

/* Shop: category chips + tidy tools */
.r-chips{display:flex;gap:.5rem;overflow-x:auto;padding:.2rem var(--r-gutter) .4rem;margin:.4rem calc(var(--r-gutter)*-1) .6rem;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.r-chips::-webkit-scrollbar{display:none}
.r-chip{flex:none;display:inline-flex;align-items:center;min-height:42px;padding:0 1.1rem;border:1px solid var(--r-line);border-radius:999px;background:#fff;font-weight:700;font-size:.92rem;text-decoration:none;white-space:nowrap;transition:background .2s,color .2s}
.r-chip:hover{border-color:var(--r-primary)}
.r-chip.is-on{background:var(--r-primary);border-color:var(--r-primary);color:#fff}
@media(min-width:900px){.r-chips{flex-wrap:wrap;overflow:visible;margin-inline:0;padding-inline:0}}
.navigation.pagination ul.page-numbers{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;list-style:none;margin:0;padding:0;border:0}
.navigation.pagination ul.page-numbers li{border:0;margin:0}

/* Cards: more polish */
.r-card{transition:transform .25s,box-shadow .25s}
@media(hover:hover){.r-card:hover{transform:translateY(-4px);box-shadow:0 18px 36px rgba(20,24,26,.1)}}
.r-card__media{overflow:hidden}
.r-card__img{transition:transform .5s}
@media(hover:hover){.r-card:hover .r-card__img{transform:scale(1.05)}}
.r-badge--sale{background:#b3261e;font-size:.8rem;letter-spacing:.02em}
.r-card.is-out .r-card__price{color:var(--r-muted)}

/* Product page */
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1fr);gap:1.4rem;margin-bottom:2rem}
.woocommerce div.product div.images,.woocommerce div.product div.summary,.woocommerce div.product .woocommerce-tabs,.woocommerce div.product .related,.woocommerce div.product .upsells{float:none!important;width:100%!important;margin:0!important;clear:none}
.woocommerce div.product div.images{position:relative}
.woocommerce div.product div.images .woocommerce-product-gallery__image img,.woocommerce div.product div.images img{border-radius:18px;width:100%}
.woocommerce div.product div.images .flex-control-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin:.6rem 0 0;padding:0;list-style:none}
.woocommerce div.product div.images .flex-control-thumbs li{width:auto!important;float:none!important;margin:0!important}
.woocommerce div.product div.images .flex-control-thumbs img{border-radius:12px;opacity:.6;cursor:pointer;aspect-ratio:1;object-fit:cover;transition:opacity .2s}
.woocommerce div.product div.images .flex-control-thumbs img.flex-active,.woocommerce div.product div.images .flex-control-thumbs img:hover{opacity:1}
.woocommerce div.product .woocommerce-product-gallery__trigger{top:.8rem;right:.8rem;border-radius:50%;background:#fff}
.woocommerce div.product div.summary{display:flex;flex-direction:column;gap:.2rem}
.woocommerce div.product .product_title{margin:0 0 .4rem}
.r-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 .6rem}
.r-tag{font:800 .8rem/1 var(--r-body);padding:.45rem .75rem;border-radius:999px;background:var(--r-alt);color:var(--r-ink)}
.r-tag--out{background:#4a5552;color:#fff}
.r-tag--back{background:#7d5d14;color:#fff}
.r-tag--sale{background:#b3261e;color:#fff}
.woocommerce div.product p.price del,.woocommerce div.product span.price del{opacity:.55;font-weight:500;font-size:.8em}
.woocommerce div.product p.price ins,.woocommerce div.product span.price ins{text-decoration:none;color:#b3261e}
.r-save{margin:0 0 .8rem;color:#b3261e;font-weight:700;font-size:.95rem}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--r-muted);margin-bottom:1rem}
.summary>p.stock.out-of-stock{display:none}
.woocommerce div.product form.cart:not(.variations_form),.woocommerce div.product form.cart .woocommerce-variation-add-to-cart{display:flex;gap:.7rem;align-items:stretch;margin:0 0 1rem}
.woocommerce div.product form.cart .quantity .qty{width:84px;text-align:center;font:700 1rem var(--r-body)}
.woocommerce div.product form.cart .single_add_to_cart_button{flex:1;border-radius:999px;background:var(--r-primary);color:#fff;font-weight:800}
.woocommerce div.product form.cart .single_add_to_cart_button:hover{background:var(--r-accent);color:var(--r-ink)}
.woocommerce div.product form.cart .variations{width:100%;margin-bottom:1rem}
.woocommerce div.product form.cart .variations td,.woocommerce div.product form.cart .variations th{display:block;padding:0 0 .4rem;text-align:left}
.woocommerce div.product form.cart .variations select{width:100%;height:48px;border:1px solid var(--r-line);border-radius:12px;padding:0 .8rem;background:#fff;font:600 1rem var(--r-body)}
.woocommerce div.product form.cart .reset_variations{display:inline-block;margin-top:.3rem;font-size:.85rem}
.r-facts{list-style:none;margin:.4rem 0 1rem;padding:1rem 1.1rem;background:#fff;border:1px solid var(--r-line);border-radius:16px;display:grid;gap:.7rem}
.r-facts li{display:flex;gap:.7rem;align-items:flex-start;font-size:.92rem;line-height:1.4}
.r-facts .r-ico{width:22px;height:22px;color:var(--r-primary);margin-top:1px}
.r-facts a{color:var(--r-primary);font-weight:700}
.woocommerce div.product .product_meta{font-size:.85rem;color:var(--r-muted);display:grid;gap:.2rem}
.woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;gap:.5rem;overflow-x:auto;margin:0 0 1rem;padding:0;list-style:none;border:0;scrollbar-width:none}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,.woocommerce div.product .woocommerce-tabs ul.tabs::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{margin:0;padding:0;border:0;background:none;border-radius:0;flex:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{display:inline-flex;align-items:center;min-height:44px;padding:0 1.2rem;border:1px solid var(--r-line);border-radius:999px;background:#fff;font-weight:700}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{background:var(--r-primary);border-color:var(--r-primary);color:#fff}
.woocommerce div.product .woocommerce-tabs .panel{margin:0;padding:1.2rem;background:#fff;border:1px solid var(--r-line);border-radius:16px;line-height:1.7}
.woocommerce div.product .related>h2,.woocommerce div.product .upsells>h2{font-size:clamp(1.5rem,5vw,2.1rem)}
@media(min-width:900px){
  .woocommerce div.product{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:2.5rem 3rem;align-items:start}
  .woocommerce div.product div.images{position:sticky;top:96px}
  .woocommerce div.product .woocommerce-tabs,.woocommerce div.product .related,.woocommerce div.product .upsells{grid-column:1/-1}
}

/* Related / upsell grids use the same 2-col mobile grid */
.woocommerce ul.products li.product .price del{opacity:.55;font-weight:500}
.woocommerce ul.products li.product .price ins{text-decoration:none;color:#b3261e}
.woocommerce ul.products li.product .button{border-radius:999px;width:100%;text-align:center;justify-content:center}

/* Cart & checkout (classic) */
.r-page--wc .r-page__title{font-size:clamp(1.8rem,6vw,2.6rem)}
.woocommerce table.shop_table{border:1px solid var(--r-line);background:#fff}
.woocommerce table.shop_table td,.woocommerce table.shop_table th{padding:.9rem 1rem}
.woocommerce-cart-form .product-thumbnail img{width:76px;border-radius:12px}
.woocommerce-cart table.cart td.actions .coupon{display:flex;gap:.5rem;flex-wrap:wrap}
.woocommerce-cart table.cart td.actions .coupon .input-text{width:auto;flex:1;min-width:140px;height:46px;border:1px solid var(--r-line);border-radius:999px;padding:0 1rem}
.woocommerce .quantity .qty{height:46px;border:1px solid var(--r-line);border-radius:10px;width:76px;text-align:center}
.woocommerce-cart .cart-collaterals .cart_totals,.woocommerce-page .cart-collaterals .cart_totals{float:none;width:100%}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{font-size:1.05rem;padding:1rem;border-radius:999px;display:flex;align-items:center;justify-content:center}
.woocommerce form.checkout h3{font-size:1.4rem}
.woocommerce-checkout #payment{background:#fff;border:1px solid var(--r-line);border-radius:16px}
.woocommerce-checkout #payment div.payment_box{background:var(--r-alt);border-radius:10px}
.woocommerce-checkout #payment div.payment_box::before{display:none}
.woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid var(--r-line)}
.woocommerce form.track_order .form-row-first,.woocommerce form.track_order .form-row-last{float:none;width:100%}
.woocommerce form.checkout .col2-set .col-1,.woocommerce form.checkout .col2-set .col-2{float:none;width:100%}
@media(min-width:960px){
  .woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);column-gap:2.5rem;align-items:start}
  .woocommerce-checkout form.checkout #customer_details{grid-column:1;grid-row:1/span 3}
  .woocommerce-checkout form.checkout #order_review_heading{grid-column:2;grid-row:1;margin-top:0}
  .woocommerce-checkout form.checkout #order_review{grid-column:2;grid-row:2;position:sticky;top:96px}
  .woocommerce-cart .woocommerce{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.8fr);gap:2rem;align-items:start}
  .woocommerce-cart .woocommerce>*{grid-column:1/-1}
  .woocommerce-cart .woocommerce>.woocommerce-cart-form{grid-column:1}
  .woocommerce-cart .woocommerce>.cart-collaterals{grid-column:2}
}

/* WooCommerce blocks cart/checkout: keep the same look */
.wc-block-components-button:not(.is-link){border-radius:999px!important;font-weight:800}
.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button{background:var(--r-accent)!important;color:var(--r-ink)!important;min-height:52px}
.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{max-width:100%}

/* Small screens: breathing room and tap comfort */
@media(max-width:560px){
  .r-header__inner{grid-template-columns:96px 1fr 96px}
  .r-brand{font-size:1.4rem}
  .woocommerce div.product form.cart .quantity .qty{width:72px}
  .r-buybar{left:var(--r-gutter);right:var(--r-gutter)}
}

/* Card buttons: specific enough to win over WooCommerce's own button styles, compact on phones */
.r-card a.button.r-card__out,.woocommerce .r-card a.button.r-card__out{background:#e4e7e0;color:var(--r-muted)}
.r-card a.button.r-card__out:hover{background:#d8dcd4;color:var(--r-ink)}
.r-card .button,.woocommerce .r-card a.button{padding:0 .8rem;font-size:.95rem;line-height:1.2;text-align:center;white-space:nowrap}
.woocommerce .r-card a.button:hover{background:var(--r-accent);color:var(--r-ink)}
@media(min-width:760px){.r-card .button,.woocommerce .r-card a.button{padding:0 1.2rem;font-size:1rem}}

/* ===== v1.2 fixes ===== */
/* Icons: always visible and sized */
.r-ico{width:24px;height:24px;stroke:currentColor}
.r-iconbtn .r-ico{width:24px;height:24px}
.r-bottombar .r-ico{width:24px;height:24px}

/* Buttons: WooCommerce forces display:inline-block + line-height:1, which pushed the text to the top. Re-center it everywhere. */
.r-card a.button,.r-card button.button,.woocommerce .r-card a.button,.woocommerce ul.products li.product a.button,.r-card .added_to_cart{display:inline-flex!important;align-items:center;justify-content:center;gap:.4rem;text-align:center;line-height:1.2!important;min-height:48px;padding:.4rem .9rem!important;white-space:normal;word-break:normal}
.r-card a.button.r-card__out,.woocommerce .r-card a.button.r-card__out{background:#e4e7e0;color:#55615e;cursor:pointer}
.r-card a.button.loading::after{position:static!important;margin:0 0 0 .4rem!important;top:auto!important;right:auto!important}
.r-card a.button.added::after{position:static!important;margin:0 0 0 .4rem!important;font-family:inherit!important;content:"\2713"!important}
.r-card .added_to_cart{display:flex!important;min-height:36px;padding:0!important;background:none;border:0}
.r-btn{line-height:1.2;text-align:center}

/* Product cards: image always fully inside its frame (never cut off) */
.r-card__media{position:relative;display:block;overflow:hidden;aspect-ratio:1/1;background:#fff;min-height:0}
.r-card--feature .r-card__media{aspect-ratio:1/1}
.r-card__media .r-card__img,.r-card__media img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:contain;padding:.5rem;margin:0}
.r-card.is-out .r-card__img{opacity:.6}
.r-card__title{min-height:2.5em}
.r-card__desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:4.2em}
.r-card__price{min-height:1.4em}
.r-rail{align-items:stretch}
.r-rail>.r-card{height:100%}

/* Cart drawer quantity: natural light stepper, clear +/- icons */
.r-qty{border:1px solid var(--r-line);background:#fff;gap:0;border-radius:999px}
.r-qty__btn{width:40px;height:40px;background:transparent;color:var(--r-primary);border-radius:0}
.r-qty__btn .r-ico{width:18px;height:18px;stroke:var(--r-primary);stroke-width:2.4}
.r-qty__btn:hover:not(:disabled){background:var(--r-alt)}
.r-qty__btn:disabled{opacity:.3}
.r-qty__n{min-width:34px;font-size:1rem;color:var(--r-ink)}

/* Cart drawer items: image box, no overlap between title and the remove button */
.r-cartdrawer li.mini_cart_item{padding:.8rem!important}
.r-cartdrawer .r-mc{grid-template-columns:84px minmax(0,1fr);padding-right:2.4rem}
.r-cartdrawer .r-mc__img{position:relative;width:84px;height:84px;background:#fff;border:1px solid var(--r-line)}
.r-cartdrawer .r-mc__img img,.r-cartdrawer ul.cart_list li img{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none;object-fit:contain;padding:4px;margin:0!important;float:none!important}
.r-cartdrawer .r-mc__info{padding-right:0}
.r-cartdrawer .r-mc__name{font-size:.95rem}
.r-cartdrawer a.remove,.r-cartdrawer ul.cart_list li a.remove{position:absolute!important;top:.6rem!important;right:.6rem!important;left:auto!important;width:30px;height:30px}

/* Product page: tidy gallery, one-line scrolling thumbnails */
.woocommerce div.product{align-items:start}
.woocommerce div.product div.images{height:auto!important;overflow:hidden}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper{margin:0}
.woocommerce div.product div.images .flex-viewport{height:auto;max-height:min(70vh,560px);background:#fff;border-radius:18px;border:1px solid var(--r-line)}
.woocommerce div.product div.images .woocommerce-product-gallery__image img,.woocommerce div.product div.images img{width:100%;max-height:min(70vh,560px);object-fit:contain;background:#fff}
.woocommerce div.product div.images .flex-control-thumbs{display:flex!important;flex-wrap:nowrap;gap:.5rem;overflow-x:auto;overflow-y:hidden;margin:.6rem 0 0;padding:0 0 .4rem;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.woocommerce div.product div.images .flex-control-thumbs li{flex:0 0 72px;width:72px!important;scroll-snap-align:start}
.woocommerce div.product div.images .flex-control-thumbs img{width:72px;height:72px;aspect-ratio:1;object-fit:cover;border:1px solid var(--r-line);border-radius:10px;background:#fff}
@media(min-width:900px){
  .woocommerce div.product{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:2rem 3rem}
  .woocommerce div.product div.images{position:relative;top:auto}
  .woocommerce div.product div.images .flex-control-thumbs li,.woocommerce div.product div.images .flex-control-thumbs img{flex-basis:84px;width:84px!important;height:84px}
}
.woocommerce div.product .woocommerce-tabs{position:relative;z-index:1;clear:both}
.woocommerce div.product div.images .woocommerce-product-gallery__trigger{z-index:3}
.r-facts .r-ico{display:block;width:22px;height:22px;flex:none}

/* Quantity stepper on product and cart pages: light and natural */
.woocommerce .quantity.r-has-step{display:inline-flex;align-items:stretch;border:1px solid var(--r-line);border-radius:12px;overflow:hidden;background:#fff}
.woocommerce .quantity.r-has-step .qty{border:0!important;border-radius:0!important;width:48px!important;height:50px;padding:0;-moz-appearance:textfield;appearance:textfield;background:transparent}
.woocommerce .quantity.r-has-step .qty::-webkit-outer-spin-button,.woocommerce .quantity.r-has-step .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.r-step{width:40px;border:0;background:transparent;color:var(--r-primary);font:600 1.5rem/1 var(--r-body);cursor:pointer}
.r-step:hover{background:var(--r-alt)}
.woocommerce div.product form.cart .quantity.r-has-step .qty{width:48px!important}

/* Product page buttons: Add to cart + Buy Now */
.woocommerce div.product form.cart:not(.variations_form),.woocommerce div.product form.cart .woocommerce-variation-add-to-cart{flex-wrap:wrap}
.woocommerce div.product form.cart .single_add_to_cart_button{flex:1 1 140px;background:#fff;color:var(--r-primary);border:2px solid var(--r-primary)}
.woocommerce div.product form.cart .single_add_to_cart_button:hover{background:var(--r-primary);color:#fff}
.woocommerce div.product form.cart .r-buynow{flex:1 0 100%;order:5;min-height:52px;border-radius:999px;background:var(--r-accent);color:var(--r-ink);border:2px solid var(--r-accent);font-weight:800;font-size:1rem;cursor:pointer}
.woocommerce div.product form.cart .r-buynow:hover{background:#e3b75e;border-color:#e3b75e;color:var(--r-ink)}
.woocommerce div.product form.cart .r-buynow.is-disabled{opacity:.5;cursor:not-allowed}

/* Cart page: product image shown clearly */
.woocommerce-cart-form .product-thumbnail img{width:84px;height:84px;object-fit:contain;background:#fff;border:1px solid var(--r-line)}

/* Footer: Business Info as labeled rows */
.r-biz{margin:0;display:grid;gap:.8rem}
.r-biz dt{font:700 .72rem var(--r-body);letter-spacing:.08em;text-transform:uppercase;color:var(--r-accent);margin-bottom:.1rem}
.r-biz dd{margin:0;color:#e4eeeb;line-height:1.5;overflow-wrap:anywhere}
.r-biz a{color:#e4eeeb}

/* Homepage categories: 2, 3 or 4 cards, centered, adjust automatically (mobile first) */
.r-cats{display:flex;flex-wrap:wrap;justify-content:center;gap:1.4rem .9rem}
.r-cats .r-cat{flex:0 0 calc(50% - .45rem);min-width:0}
.r-cats .r-cat__media{aspect-ratio:3/4}
.r-cats .r-cat__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.r-cats .r-cat__media{position:relative}
.r-cat .r-btn{width:100%;max-width:180px;padding:0 .8rem}
@media(min-width:760px){
  .r-cats{gap:2rem 1.5rem}
  .r-cats--n2 .r-cat{flex-basis:calc(50% - .75rem);max-width:340px}
  .r-cats--n3 .r-cat{flex-basis:calc(33.333% - 1rem);max-width:340px}
  .r-cats--n4 .r-cat{flex-basis:calc(25% - 1.15rem)}
}

/* ===== v1.3: product buttons layout, lighter steppers, disabled states ===== */
.woocommerce div.product form.cart:not(.variations_form),.woocommerce div.product form.cart .woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;gap:.7rem;align-items:stretch}
.woocommerce div.product form.cart .quantity,.woocommerce div.product form.cart .quantity.r-has-step{flex:0 0 100%;width:100%;display:flex}
.woocommerce .quantity.r-has-step .qty,.woocommerce div.product form.cart .quantity.r-has-step .qty{flex:1;width:auto!important;min-width:0;height:50px;font-weight:700}
.r-step{flex:0 0 56px;width:56px;background:#f4f5f1;color:var(--r-primary)}
.r-step:hover{background:var(--r-alt)}
.woocommerce .quantity.r-has-step{background:#fff;border-color:var(--r-line)}
.woocommerce div.product form.cart .single_add_to_cart_button,.woocommerce div.product form.cart .r-buynow{flex:1 1 calc(50% - .35rem);min-width:0;order:2;display:inline-flex;align-items:center;justify-content:center;text-align:center;line-height:1.2;padding:.4rem .8rem;min-height:52px;white-space:normal}
.woocommerce div.product form.cart .r-buynow{order:3}
.woocommerce div.product form.cart .single_add_to_cart_button.disabled,.woocommerce div.product form.cart .single_add_to_cart_button:disabled,.woocommerce div.product form.cart .r-buynow:disabled{opacity:.4;cursor:not-allowed;pointer-events:none;background:#eceee8;color:var(--r-muted);border-color:#dde1d8}
/* Lighter steppers everywhere */
.r-qty{background:#fff;border-color:var(--r-line)}
.r-qty__btn{background:#f4f5f1}
.r-qty__btn .r-ico{stroke:var(--r-primary);stroke-width:2.2}
.woocommerce div.product form.cart .single_add_to_cart_button,.woocommerce div.product form.cart .r-buynow{font-size:1rem!important;font-weight:800}
