/* rd-shop.css — archive-shop overlay blocks (hub / category / product pages). */
:root{--rd-brand:#0f4c5c;--rd-brand2:#5fb0c4;--rd-accent:#c44b44;--rd-line:#e2e2e2;--rd-soft:#f7f7f5;
--rd-brand-dk:color-mix(in srgb,var(--rd-brand) 78%,#000)}
.rd-shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px;margin:18px 0}
.rd-shop-card{border:1px solid var(--rd-line);border-radius:8px;padding:14px;background:#fff;display:flex;flex-direction:column;gap:8px}
.rd-shop-card img{width:100%;height:150px;object-fit:contain}
.rd-shop-card .rd-shop-noimg{height:150px;display:flex;align-items:center;justify-content:center;background:var(--rd-soft);border-radius:6px;color:var(--rd-brand);font-weight:700;font-size:1.6em}
.rd-shop-card h3{margin:0;font-size:1.02em;line-height:1.3}
.rd-shop-card h3 a{color:inherit;text-decoration:none}
.rd-shop-card h3 a:hover{color:var(--rd-brand)}
.rd-shop-price{font-weight:700;color:var(--rd-brand)}
.rd-shop-price small{font-weight:400;color:#777}
/* Recovered themes ship `a,a:link,a:visited{color:#333 !important}` (himberger's apotool CSS):
   every white-on-brand link below needs a:link-level specificity + !important to stay legible.
   Hover darkens the brand colour — the light secondary under white text failed contrast (2.3:1). */
a.rd-shop-cta,a.rd-shop-cta:link,a.rd-shop-cta:visited{margin-top:auto;text-align:center;background:var(--rd-brand);color:#fff !important;-webkit-text-fill-color:#fff;border-radius:6px;padding:9px 10px;text-decoration:none !important;display:block;font-weight:700}
a.rd-shop-cta:hover,a.rd-shop-cta:focus{background:var(--rd-brand-dk);color:#fff !important;-webkit-text-fill-color:#fff}
table.rd-shop-packs{width:100%;border-collapse:collapse;margin:16px 0;font-size:.97em}
table.rd-shop-packs th,table.rd-shop-packs td{border:1px solid var(--rd-line);padding:8px 10px;text-align:left}
table.rd-shop-packs th{background:var(--rd-soft)}
table.rd-shop-packs tr:nth-child(even) td{background:#fbfbfb}
button.rd-shop-add{background:var(--rd-brand);color:#fff !important;-webkit-text-fill-color:#fff;border:0;border-radius:6px;padding:7px 14px;cursor:pointer;font-size:.95em;font-weight:700;white-space:nowrap}
button.rd-shop-add:hover,button.rd-shop-add:focus{background:var(--rd-brand-dk)}
.rd-shop-hero{float:right;margin:0 0 14px 18px;max-width:230px;border:1px solid var(--rd-line);border-radius:8px;padding:10px;background:#fff}
.rd-shop-hero img{width:100%;height:auto;display:block}
.rd-shop-substance{color:#666;font-size:.92em;margin:-6px 0 12px}
.rd-shop-support{border:1px solid var(--rd-line);border-radius:8px;background:var(--rd-soft);padding:16px;margin:22px 0}
.rd-shop-support img{max-width:280px;width:100%;height:auto;display:block;margin:8px 0}
.rd-shop-support ul{margin:6px 0;padding-left:18px}
.rd-shop-back{display:inline-block;margin:6px 0 14px;font-size:.92em}
.rd-shop-toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);background:#222;color:#fff;padding:10px 18px;border-radius:22px;font-size:.95em;opacity:0;transition:opacity .25s;z-index:99999}
.rd-shop-toast.on{opacity:.95}
.rd-shop-catbar{margin:4px 0 18px;font-size:.95em}
.rd-shop-catbar a,.rd-shop-catbar a:link,.rd-shop-catbar a:visited{display:inline-block;margin:0 8px 6px 0;padding:4px 12px;border:1px solid var(--rd-line);border-radius:16px;text-decoration:none !important;color:#333 !important;background:#fff}
.rd-shop-catbar a:hover,.rd-shop-catbar a.on,.rd-shop-catbar a.on:link,.rd-shop-catbar a.on:visited{background:var(--rd-brand);color:#fff !important;-webkit-text-fill-color:#fff;border-color:var(--rd-brand)}
/* purchase info box (shipping + trust), reviews */
.rd-shop-buy{clear:both;border:1px solid var(--rd-line);border-radius:8px;background:var(--rd-soft);padding:12px 14px;margin:6px 0 16px;font-size:.95em}
.rd-shop-buy .rd-stock{color:#1d7a3a;font-weight:700}
.rd-shop-buy ul{list-style:none;margin:8px 0 0;padding:0}
.rd-shop-buy li{margin:3px 0;padding-left:20px;position:relative}
.rd-shop-buy li:before{content:"\2713";position:absolute;left:0;color:#1d7a3a;font-weight:700}
table.rd-shop-ship{width:100%;border-collapse:collapse;margin:8px 0 2px;font-size:.93em}
table.rd-shop-ship td{padding:4px 6px;border-top:1px solid var(--rd-line)}
.rd-shop-reviews{margin:24px 0}
.rd-shop-review{border-top:1px solid var(--rd-line);padding:10px 0}
.rd-shop-review .rd-stars{color:#e0a100;letter-spacing:1px}
.rd-shop-review .rd-meta{color:#666;font-size:.88em}
.rd-shop-review p{margin:6px 0 0}
/* ported blog + contacts */
.rd-blog-list{display:grid;gap:18px;margin:16px 0}
.rd-blog-card{display:grid;grid-template-columns:200px 1fr;gap:16px;border:1px solid var(--rd-line);border-radius:8px;padding:14px;background:#fff}
.rd-blog-card img{width:100%;height:130px;object-fit:cover;border-radius:6px}
.rd-blog-card h2{margin:0 0 4px;font-size:1.12em;line-height:1.3}
.rd-blog-card h2 a,.rd-blog-card h2 a:link,.rd-blog-card h2 a:visited{color:#222 !important;text-decoration:none !important}
.rd-blog-card a.rd-shop-cta{display:inline-block;margin-top:6px;padding:7px 14px}
.rd-blog-meta{color:#777;font-size:.88em;margin:0 0 8px}
.rd-blog-hero{margin:0 0 16px}.rd-blog-hero img{width:100%;height:auto;border-radius:8px;display:block}
@media (max-width:640px){.rd-blog-card{grid-template-columns:1fr}}
/* basket: floating button + drawer, on every shop page */
.rd-cart-btn{position:fixed;right:18px;bottom:18px;z-index:99990;display:flex;align-items:center;gap:8px;background:var(--rd-brand);color:#fff !important;-webkit-text-fill-color:#fff;border:0;border-radius:28px;padding:11px 18px;font:700 15px/1.2 Arial,Helvetica,sans-serif;box-shadow:0 4px 14px rgba(0,0,0,.25);cursor:pointer}
.rd-cart-btn:hover{background:var(--rd-brand-dk)}
.rd-cart-btn svg{width:20px;height:20px;fill:#fff}
.rd-cart-n{background:#fff;color:var(--rd-brand);-webkit-text-fill-color:var(--rd-brand);border-radius:11px;min-width:22px;padding:1px 6px;text-align:center;font-size:13px}
.rd-cart-btn.bump{animation:rdbump .35s}
@keyframes rdbump{50%{transform:scale(1.12)}}
.rd-cart-ov{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:99991;display:none}
.rd-cart-ov.on{display:block}
.rd-cart-panel{position:fixed;top:0;right:0;height:100%;width:min(400px,100%);background:#fff;z-index:99992;box-shadow:-4px 0 18px rgba(0,0,0,.2);transform:translateX(105%);transition:transform .25s;display:flex;flex-direction:column;font:15px/1.4 Arial,Helvetica,sans-serif;color:#222}
.rd-cart-panel.on{transform:none}
.rd-cart-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--rd-line);font-weight:700;font-size:17px}
.rd-cart-x{background:none;border:0;font-size:26px;line-height:1;cursor:pointer;color:#444}
.rd-cart-body{flex:1;overflow:auto;padding:8px 16px}
.rd-cart-line{display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:10px 0;border-bottom:1px solid var(--rd-line)}
.rd-cart-line .nm{font-weight:700}
.rd-cart-line .sub{color:#666;font-size:.9em}
.rd-cart-qty{display:flex;align-items:center;gap:6px}
.rd-cart-qty button{width:28px;height:28px;border:1px solid var(--rd-line);background:#fff;border-radius:6px;cursor:pointer;font-size:16px;color:#222}
.rd-cart-rm{background:none;border:0;color:#a33;cursor:pointer;font-size:.88em;padding:0;text-decoration:underline}
.rd-cart-foot{padding:14px 16px;border-top:1px solid var(--rd-line)}
.rd-cart-tot{display:flex;justify-content:space-between;font-weight:700;font-size:17px;margin-bottom:6px}
.rd-cart-note{color:#666;font-size:.88em;margin-bottom:10px}
a.rd-cart-go,a.rd-cart-go:link,a.rd-cart-go:visited{display:block;text-align:center;background:var(--rd-brand);color:#fff !important;-webkit-text-fill-color:#fff;border-radius:6px;padding:12px;font-weight:700;text-decoration:none !important}
a.rd-cart-go:hover{background:var(--rd-brand-dk)}
.rd-cart-more{display:block;width:100%;margin-top:8px;background:none;border:0;color:#333;cursor:pointer;text-decoration:underline;font-size:.93em}
.rd-cart-empty{color:#666;padding:20px 0}
@media (max-width:640px){
.rd-shop-hero{float:none;margin:0 auto 14px;max-width:260px}
table.rd-shop-packs{display:block;overflow-x:auto}
.rd-shop-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}}
