/*
Theme Name: RetroRevive
Theme URI: https://retrorevive.pl
Author: Jakub Bartosik
Description: Dedykowany motyw WooCommerce dla sklepu z konsolami, grami i akcesoriami retro.
Version: 1.4.9
Requires at least: 6.4
Requires PHP: 8.1
Text Domain: retrorevive
*/

:root {
  --rr-bg:#0E0E0E; --rr-bg-soft:#0F1110;
  --rr-surface:#141414; --rr-surface-2:#1F231E; --rr-surface-raised:#1F231E; --rr-surface-hover:#252A22;
  --rr-border:#2A2C27; --rr-border-strong:#3A3D34; --rr-border-olive:rgba(138,164,106,.42);
  --rr-cream:#F4F0E8; --rr-cream-soft:#EAE6D8; --rr-beige:#E7E1D6;
  --rr-green:#556B3F; --rr-green-dark:#556B3F; --rr-primary:#556B3F; --rr-primary-hover:#6C8746; --rr-primary-light:#8AA46A;
  --rr-muted-olive:#8D8A6D; --rr-warm-accent:#B8AA8C;
  --rr-text:#F4F0E8; --rr-text-soft:#D8D4C9; --rr-text-muted:#9A9B92; --rr-text-dark:#11130F;
  --rr-success:#6F8D55; --rr-warning:#A77D3F; --rr-error:#A7534E; --rr-info:#5F7992;
  --rr-muted:#9A9B92; --rr-gold:#B8AA8C; --rr-line:rgba(138,164,106,.42);
  --rr-radius:8px; --radius-xs:4px; --radius-sm:6px; --radius-md:8px; --radius-lg:12px; --radius-xl:16px;
  --rr-max:1440px; --rr-content:1360px;
  --rr-shadow:0 8px 24px rgba(0,0,0,.22); --rr-shadow-hover:0 16px 40px rgba(0,0,0,.4);
}

* { box-sizing: border-box; }
html { scroll-behavior:smooth; overflow-x:hidden; }
body {
  margin: 0;
  padding-inline:0;
  overflow-x:hidden;
  background: var(--rr-bg);
  color: var(--rr-cream);
  font: 400 16px/1.6 Inter, ui-sans-serif, system-ui, sans-serif;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; display: block; }
.rr-wrap { width: min(calc(100% - 40px), var(--rr-max)); margin-inline: auto; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }

.site-header {
  position: sticky; top: 0; z-index: 100;
  background: rgba(14,15,14,.94); backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--rr-line);
}
.header-top { display: flex; align-items: center; gap: 28px; min-height: 82px; }
.custom-logo { width: 240px; max-height: 62px; object-fit: contain; object-position: left center; }
.site-branding { min-width: 250px; }
.site-title { font: 700 28px/1 "Playfair Display", serif; letter-spacing: .12em; }
.site-tagline { color: var(--rr-green); font-size: 11px; letter-spacing: .28em; margin-top: 8px; }
.rr-search { flex: 1; position: relative; }
.rr-search input {
  width: 100%; padding: 13px 46px 13px 16px; border-radius: 4px;
  border: 1px solid var(--rr-line); background: #111310; color: var(--rr-cream);
}
.rr-search button { position: absolute; right: 4px; top: 4px; bottom: 4px; width: 40px; border: 0; color: var(--rr-cream); background: transparent; cursor: pointer; }
.header-actions { display: flex; gap: 10px; align-items: center; }
.header-action { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid var(--rr-line); border-radius: 50%; }
.cart-count { color: var(--rr-bg); background: var(--rr-green); border-radius: 20px; min-width: 18px; padding: 0 5px; font-size: 11px; text-align: center; }
.main-nav { border-top: 1px solid rgba(139,170,75,.15); }
.main-nav ul { list-style: none; display: flex; gap: 32px; justify-content: center; margin: 0; padding: 13px 0; }
.main-nav a { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; }
.main-nav a:hover { color: var(--rr-green); }
.menu-toggle { display: none; border: 0; background: transparent; color: inherit; font-size: 26px; }

.rr-hero {
  min-height: 600px; display: grid; align-items: center; position: relative; overflow: hidden;
  background:
    linear-gradient(90deg,rgba(8,9,8,.28) 0%,rgba(8,9,8,.08) 44%,rgba(8,9,8,0) 72%),
    url("assets/images/generated/hero-fullwidth-v2.png") center/cover no-repeat;
}
.rr-hero::after {
  content: ""; position: absolute; inset: 0;
  background-image: linear-gradient(rgba(139,170,75,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(139,170,75,.035) 1px, transparent 1px);
  background-size: 32px 32px; pointer-events: none;
}
.hero-grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 70px; position: relative; z-index: 1; }
.eyebrow { color: var(--rr-green); text-transform: uppercase; letter-spacing: .25em; font-size: 12px; }
h1,h2,h3 { font-family: "Playfair Display", Georgia, serif; line-height: 1.1; margin-top: 0; }
.rr-hero h1 { display:grid; justify-items:start; font-size:64px; line-height:1.02; margin:18px 0 26px; max-width:650px; letter-spacing:-.035em; text-wrap:balance; }
.rr-hero h1 span { display:block; position:relative; }
.rr-hero h1 span:last-child { margin-left:34px; color:var(--rr-cream-soft); }
.rr-hero h1 span:last-child::after {
  content:""; position:absolute; left:calc(100% + 18px); top:58%; width:76px; height:1px;
  background:linear-gradient(90deg,var(--rr-primary-light),transparent);
}
.rr-hero h1 span:last-child::before {
  content:"◇"; position:absolute; left:calc(100% + 5px); top:calc(58% - 7px);
  color:var(--rr-primary-light); font:400 12px/1 Inter,sans-serif;
}
.rr-hero p { color: #d6d0c5; max-width: 580px; font-size: 18px; }
.hero-console { width: 80%; aspect-ratio: 1.15; margin: auto; border: 2px solid var(--rr-green); border-radius: 24px; transform: perspective(900px) rotateY(-10deg); background: linear-gradient(145deg,#222721,#0f110f); box-shadow: 0 35px 80px rgba(0,0,0,.5), inset 0 0 80px rgba(127,154,85,.08); position: relative; }
.hero-console::before { content: "RETRO"; position: absolute; inset: 18% 12%; display: grid; place-items: center; border: 1px solid var(--rr-line); color: var(--rr-green); font: 700 34px/1 "Playfair Display"; letter-spacing: .25em; }
.hero-console-photo {
  min-height:520px;
  background:none;
  filter:none;
  -webkit-mask-image:none;
  mask-image:none;
}
.button, button, input[type=submit], .wp-element-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button {
  display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 24px;
  border: 1px solid var(--rr-green); border-radius: 4px; background: var(--rr-green-dark); color: var(--rr-cream);
  font-weight: 700; letter-spacing: .04em; cursor: pointer;
}
.button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover { background: var(--rr-green); color: #0e0f0e; }
.button--ghost { background: transparent; margin-left: 10px; }

.trust-strip { border:0; background:var(--rr-surface); }
.trust-grid { display: grid; grid-template-columns: repeat(4,1fr); }
.trust-item { min-height:108px; padding:22px 28px; display:flex; align-items:center; justify-content:center; gap:14px; text-align:left; border:0; }
.trust-item:last-child { border:0; }
.trust-item strong { display: block; font-family: "Playfair Display"; }
.trust-item span { color: #aaa; font-size: 13px; }
.trust-item .rr-icon { flex:0 0 26px; width:26px; height:26px; color:var(--rr-primary-light); }

.rr-integrations {
  padding:56px 0;
  border-top:1px solid var(--rr-border);
  border-bottom:1px solid var(--rr-border);
  background:var(--rr-bg-soft);
}
.rr-integrations--detail {
  margin-top:44px;
  padding:0;
  border:0;
  background:transparent;
}
.rr-integrations__heading {
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);
  align-items:end;
  gap:48px;
  margin-bottom:26px;
}
.rr-integrations__heading .eyebrow { margin-bottom:10px; }
.rr-integrations__heading h2 { margin:0; font-size:clamp(30px,3.2vw,44px); }
.rr-integrations__heading > p {
  max-width:560px;
  margin:0;
  color:var(--rr-text-muted);
  font-size:13px;
}
.rr-integration-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.rr-integration-card {
  position:relative;
  min-height:235px;
  padding:28px;
  overflow:hidden;
  border:1px solid var(--rr-border-olive);
  border-radius:var(--radius-md);
  background:var(--rr-surface);
}
.rr-integration-card::before {
  content:"";
  position:absolute;
  top:0;
  left:28px;
  width:54px;
  height:2px;
  background:var(--rr-primary-light);
}
.rr-integration-card__top { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.rr-integration-card__icon {
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  color:var(--rr-primary-light);
  border:1px solid var(--rr-border-olive);
  border-radius:50%;
}
.rr-integration-card__icon .rr-icon { width:21px; height:21px; }
.rr-integration-badge {
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:6px 9px;
  color:#d6bd8a;
  border:1px solid rgba(167,125,63,.45);
  border-radius:99px;
  background:rgba(167,125,63,.09);
  font-size:9px;
  font-weight:600;
  line-height:1;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.rr-integration-card--active .rr-integration-badge,
.rr-integration-mini--active .rr-integration-badge {
  color:var(--rr-primary-light);
  border-color:var(--rr-border-olive);
  background:rgba(138,164,106,.1);
}
.rr-integration-card h3 { margin:26px 0 9px; font-size:25px; }
.rr-integration-card p { max-width:590px; margin:0; color:var(--rr-text-muted); font-size:13px; }
.rr-integration-card > small {
  display:block;
  margin-top:22px;
  padding-top:14px;
  color:var(--rr-text-soft);
  border-top:1px solid var(--rr-border);
  font-size:11px;
}
.rr-integrations__note { margin:16px 0 0; color:var(--rr-text-muted); font-size:10px; }
.rr-integrations__link {
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:20px;
  color:var(--rr-primary-light);
  border-bottom:1px solid var(--rr-border-olive);
  font-size:11px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.rr-integrations__link .rr-icon { width:15px; height:15px; }
.rr-section { padding: 90px 0; }
.rr-section--muted { background: var(--rr-surface); }
.section-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 36px; }
.section-head h2 { font-size:40px; line-height:1.2; margin:0; }
.section-head a { color: var(--rr-green); border-bottom: 1px solid currentColor; }
.category-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; }
.category-card { min-height:280px; padding:32px; display:flex; flex-direction:column; justify-content:end; position:relative; overflow:hidden; border:1px solid var(--rr-line); border-radius:var(--rr-radius); background-color:var(--rr-surface-2); background-size:cover; background-position:center; transition:.25s; }
.category-card::before { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(14,14,14,.04) 20%,rgba(14,14,14,.9) 100%); }
.category-card > * { position:relative; z-index:1; }
.category-card:nth-child(1) { background-image:url("assets/images/generated/category-consoles.png"); }
.category-card:nth-child(2) { background-image:url("assets/images/generated/category-games.png"); }
.category-card:nth-child(3) { background-image:url("assets/images/generated/category-accessories.png"); }
.category-card:hover { transform: translateY(-4px); border-color: var(--rr-green); }
.category-card h3 { font-size: 30px; margin: 0; }
.category-card span { color: #aaa; }
.tradein { display:grid; grid-template-columns:1.2fr .8fr; gap:50px; align-items:center; min-height:360px; padding:60px; border:1px solid var(--rr-line); background:linear-gradient(90deg,var(--rr-surface-2) 0%,rgba(31,35,30,.9) 45%,rgba(31,35,30,.05) 100%),url("assets/images/generated/tradein-money.png") right center/auto 100% no-repeat,var(--rr-surface-2); border-radius:var(--rr-radius); }
.tradein h2 { font-size: clamp(36px,5vw,64px); }
.tradein-art { visibility:hidden; }

.site-main { min-height: 60vh; }
.content-area { padding: 55px 0 90px; }
.entry-title, .woocommerce-products-header__title { font-size: clamp(38px,5vw,64px); }
.woocommerce .products ul, .woocommerce ul.products { display: grid; grid-template-columns: repeat(4,1fr); gap: 22px; }
.woocommerce ul.products::before,.woocommerce ul.products::after { display:none; }
.woocommerce ul.products li.product { width: auto!important; margin: 0!important; float: none!important; padding: 14px; border: 1px solid var(--rr-line); border-radius: var(--rr-radius); background: var(--rr-surface); }
.woocommerce ul.products li.product a img { aspect-ratio: 1; object-fit: contain; background: #f0eee8; border-radius: 4px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color: var(--rr-cream); font: 600 18px/1.35 Inter,sans-serif; }
.woocommerce ul.products li.product .price, .woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--rr-cream); font-weight: 700; }
.woocommerce span.onsale { background: var(--rr-green); color: #0e0f0e; }
.woocommerce div.product { display: flow-root; }
.woocommerce div.product div.images img { aspect-ratio:1; object-fit:cover; object-position:right center; background:#0e0f0e; border-radius:8px; }
.woocommerce div.product div.images img.zoomImg { display:none!important; }
.woocommerce div.product .woocommerce-product-gallery__image {
  position:relative;
  background:#0e0f0e url("assets/images/hero-console.png") center/contain no-repeat;
  border:1px solid var(--rr-line);
  border-radius:8px;
}
.woocommerce div.product .woocommerce-product-gallery__image > a > img { opacity:0; }
.woocommerce div.product .woocommerce-product-gallery__image::before {
  content:"";
  position:absolute;
  z-index:2;
  inset:0;
  background:url("assets/images/hero-console.png") center/contain no-repeat;
  pointer-events:none;
}
.woocommerce div.product form.cart .button,
.woocommerce div.product form.cart .button.alt { background:var(--rr-green-dark)!important; color:var(--rr-cream)!important; }
.woocommerce div.product form.cart .button:hover,
.woocommerce div.product form.cart .button.alt:hover { background:var(--rr-green)!important; color:var(--rr-bg)!important; }
.woocommerce-message,.woocommerce-info { border-top-color: var(--rr-green); background: var(--rr-surface-2); color: var(--rr-cream); }
.woocommerce-message::before,.woocommerce-info::before { color: var(--rr-green); }
.woocommerce table.shop_table { border-color: var(--rr-line); }
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce select {
  background: #111310; color: var(--rr-cream); border: 1px solid var(--rr-line); padding: 12px;
}

.site-footer { border-top: 1px solid var(--rr-line); background: #0a0b0a; }
.footer-grid { display: grid; grid-template-columns: 1.4fr repeat(3,1fr); gap: 44px; padding: 70px 0; }
.footer-grid h3 { font-size: 17px; margin-bottom: 18px; }
.footer-grid ul { list-style: none; margin: 0; padding: 0; color: #aaa; }
.footer-grid li { margin: 7px 0; }
.footer-brand { font: 700 30px/1 "Playfair Display"; letter-spacing:.1em; }
.footer-copy { border-top: 1px solid var(--rr-line); padding: 20px 0; color:#888; font-size: 13px; }
.rr-gutenberg-home > *:not(.alignfull) { width:min(calc(100% - 40px),var(--rr-max)); margin-inline:auto; }
.rr-gutenberg-home > .alignwide { width:min(calc(100% - 40px),var(--rr-max)); max-width:var(--rr-max); margin-inline:auto; }
.rr-gutenberg-home .alignfull { width:100%; }
.rr-gutenberg-home .wp-block-cover h1 { font-size:clamp(48px,7vw,92px); }
.rr-gutenberg-home .wp-block-cover__inner-container { width:min(calc(100% - 40px),var(--rr-max)); }
.rr-gutenberg-home .wp-block-columns { gap:1px; }
.rr-gutenberg-home .wp-block-column { padding:28px; border:1px solid var(--rr-line); background:var(--rr-surface); }

/* Makieta 1:1 — komponenty desktop/mobile */
.header-action { position:relative; width:auto; min-width:52px; padding:0 9px; gap:5px; border:0; border-radius:0; font-size:20px; }
.header-action small { display:block; font-size:9px; color:#aaa; text-transform:uppercase; letter-spacing:.05em; }
.main-nav li:first-child:hover > a { color:var(--rr-green); }
.main-nav li:first-child::after {
  content:"Konsole   PlayStation   Xbox   Nintendo   Sega        Gry   PlayStation   Nintendo   Retro        Akcesoria   Kontrolery   Kable i zasilacze";
  white-space:pre; position:absolute; top:100%; left:50%; width:min(1100px,calc(100vw - 40px)); transform:translateX(-50%) translateY(-8px);
  pointer-events:none; opacity:0; padding:32px; color:#d8d2c8; font-size:13px; line-height:2.2; word-spacing:18px;
  background:#101210; border:1px solid var(--rr-line); box-shadow:var(--rr-shadow); transition:.2s;
}
.main-nav li:first-child:hover::after { opacity:1; transform:translateX(-50%) translateY(0); }
.main-nav li { position:relative; }
.home-featured { padding-top:65px; }
.icon-categories { display:grid; grid-template-columns:repeat(5,1fr); gap:16px; }
.icon-categories a { padding:24px 10px; text-align:center; border:1px solid var(--rr-line); background:var(--rr-surface); border-radius:var(--rr-radius); transition:.2s; }
.icon-categories a:hover { transform:translateY(-4px); border-color:var(--rr-green); }
.icon-categories b { display:block; color:var(--rr-green); font-size:44px; line-height:1; margin-bottom:12px; }
.icon-categories span { font:600 16px/1.2 "Playfair Display"; }
.shop-layout { display:grid; grid-template-columns:245px 1fr; gap:30px; align-items:start; }
.shop-content { min-width:0; }
.shop-sidebar { position:sticky; top:118px; border:1px solid var(--rr-line); background:var(--rr-surface); padding:20px; }
.sidebar-title { display:flex; justify-content:space-between; align-items:center; padding-bottom:15px; border-bottom:1px solid var(--rr-line); text-transform:uppercase; letter-spacing:.12em; }
.filter-block { padding:20px 0; border-bottom:1px solid var(--rr-line); }
.filter-block h3 { font:600 12px/1 Inter; text-transform:uppercase; letter-spacing:.1em; }
.filter-block label { display:block; color:#bbb; font-size:13px; margin:9px 0; }
.filter-block input[type=checkbox] { accent-color:var(--rr-green); margin-right:8px; }
.filter-block input[type=range] { width:100%; accent-color:var(--rr-green); }
.filter-block select,.rr-price-inputs input { width:100%; min-height:42px; padding:9px 10px; color:var(--rr-cream); border:1px solid var(--rr-border); border-radius:4px; background:var(--rr-bg-soft); }
.rr-filter-context {
  display:grid;
  gap:5px;
  margin:16px 0 2px;
  padding:16px;
  border:1px solid var(--rr-border-olive);
  border-radius:6px;
  background:var(--rr-surface-raised);
}
.rr-filter-context span {
  color:var(--rr-text-muted);
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.rr-filter-context strong { color:var(--rr-cream); font:600 20px/1.2 "Playfair Display",serif; }
.rr-filter-context small { color:var(--rr-text-muted); font-size:10px; line-height:1.45; }
.rr-filter-context a {
  width:max-content;
  margin-top:6px;
  color:var(--rr-primary-light);
  border-bottom:1px solid var(--rr-border-olive);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.rr-filter-empty {
  display:grid;
  gap:10px;
  margin-top:16px;
  padding:18px;
  border:1px dashed var(--rr-border-olive);
  border-radius:6px;
  background:var(--rr-bg-soft);
}
.rr-filter-empty strong { color:var(--rr-cream); font:600 17px/1.25 "Playfair Display",serif; }
.rr-filter-empty p { margin:0; color:var(--rr-text-muted); font-size:11px; line-height:1.55; }
.rr-filter-empty .button { width:100%; margin-top:4px; text-align:center; }
.rr-filter-check { margin-top:14px!important; }
.rr-price-inputs { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.rr-price-inputs label { margin:0; color:var(--rr-text-muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.rr-price-inputs input { margin-top:6px; }
.rr-catalog-filters > .button { width:100%; margin-top:18px; }
.rr-filter-reset { display:block; margin-top:12px; color:var(--rr-text-muted); text-align:center; font-size:11px; text-decoration:underline; }
.price-range { display:flex; justify-content:space-between; color:#aaa; font-size:11px; }
.filter-close,.filter-toggle { display:none; }
.woocommerce .products .product { position:relative; overflow:hidden; }
.product-badges { position:absolute; z-index:2; top:24px; left:22px; }
.product-badges span { padding:5px 8px; background:var(--rr-green-dark); color:var(--rr-cream); border-radius:3px; font-size:10px; text-transform:uppercase; }
.wishlist-button { position:absolute; z-index:3; top:18px; right:18px; min-height:32px; width:32px; padding:0; border:1px solid var(--rr-line); border-radius:50%; background:rgba(14,15,14,.75); }
.rr-wishlist-quick { margin:0; }
.wishlist-button.is-active { color:var(--rr-bg); border-color:var(--rr-primary-light); background:var(--rr-primary-light); }
.wishlist-button.is-loading { opacity:.6; cursor:wait; }
.wishlist-count {
  display:grid; place-items:center; position:absolute; right:1px; top:0; min-width:16px; height:16px; padding-inline:4px;
  color:var(--rr-bg); border-radius:99px; background:var(--rr-primary-light); font-size:9px; line-height:1;
}
.woocommerce ul.products li.product .button { width:100%; min-height:40px; margin-top:10px; font-size:12px; }
.woocommerce ul.products li.product .price { font-size:17px; }
.woocommerce div.product .product_title { font-size:clamp(34px,4vw,54px); }
.custom-product-visual { position:relative; float:left; width:48%; margin-bottom:2em; }
.custom-product-visual > img { width:100%; aspect-ratio:1; object-fit:contain; background:#0e0f0e; border:1px solid var(--rr-line); border-radius:8px; }
.product-state-badge { position:absolute; z-index:2; top:16px; left:16px; padding:6px 10px; background:var(--rr-green-dark); border-radius:3px; font-size:11px; text-transform:uppercase; }
.product-thumbs { display:flex; gap:8px; margin-top:10px; }
.product-thumbs button { min-height:64px; width:64px; padding:0; background:#151815 url("assets/images/hero-console.png") center/cover; border:1px solid var(--rr-line); }
.product-proof { list-style:none; padding:16px 0; margin:12px 0; border-block:1px solid var(--rr-line); color:#c8c3b8; }
.product-proof li { margin:7px 0; }
.product-proof li::first-letter { color:var(--rr-green); }
.product-trust { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; clear:both; margin-top:30px; }
.product-trust span { padding:16px 10px; text-align:center; border:1px solid var(--rr-line); color:#bbb; font-size:12px; }
.product-trust span { display:flex; align-items:center; justify-content:center; gap:8px; }
.product-trust .rr-icon { width:18px; color:var(--rr-primary-light); }
.rr-product-meta-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin:16px 0; }
.rr-product-meta-grid > div { display:grid; gap:4px; padding:12px; border:1px solid var(--rr-border); background:var(--rr-bg); }
.rr-product-meta-grid small { color:var(--rr-text-muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.rr-product-meta-grid strong { font-size:12px; color:var(--rr-primary-light); }
.rr-checkout-steps { display:grid; grid-template-columns:repeat(5,1fr); grid-column:1/-1; list-style:none; margin:0 0 32px; padding:0; }
.rr-checkout-steps li { display:flex; position:relative; flex-direction:column; align-items:center; gap:6px; color:var(--rr-text-muted); text-align:center; }
.rr-checkout-steps li::after { content:""; position:absolute; z-index:0; top:15px; left:50%; width:100%; height:1px; background:var(--rr-border); }
.rr-checkout-steps li:last-child::after { display:none; }
.rr-checkout-steps span { display:grid; place-items:center; position:relative; z-index:1; width:30px; height:30px; border:1px solid var(--rr-border); border-radius:50%; background:var(--rr-bg); font-size:11px; }
.rr-checkout-steps small { font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.rr-checkout-steps .is-active { color:var(--rr-primary-light); }
.rr-checkout-steps .is-active span { color:var(--rr-bg); border-color:var(--rr-primary-light); background:var(--rr-primary-light); }
.rr-cart-assurance { display:grid; gap:8px; margin-top:16px; color:var(--rr-text-muted); font-size:11px; }
.rr-cart-assurance span { display:flex; align-items:center; gap:7px; }
.rr-cart-assurance .rr-icon { width:16px; color:var(--rr-primary-light); }
.mobile-drawer,.drawer-overlay,.mobile-bottom-nav,.mobile-sticky-cart { display:none; }
.woocommerce div.product form.cart .button { min-width:240px; }

@media (min-width:961px) {
  .woocommerce ul.products.columns-4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .shop-layout .woocommerce ul.products.columns-4 { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width: 960px) {
  .rr-wrap { width: min(calc(100% - 28px), var(--rr-max)); }
  .header-top { min-height: 66px; }
  .site-branding { min-width: 0; flex: 1; }
  .custom-logo { width: 180px; }
  .site-title { font-size: 20px; }
  .site-tagline,.rr-search,.header-action--account { display:none; }
  .menu-toggle { display:block; }
  .main-nav { display:none; }
  .hero-grid { grid-template-columns:1fr; }
  .rr-hero { min-height:650px; }
  .hero-console { display:none; }
  .trust-grid { grid-template-columns:repeat(2,1fr); }
  .trust-item:nth-child(2) { border-right:0; }
  .rr-integrations__heading { grid-template-columns:1fr; align-items:start; gap:14px; }
  .category-grid { grid-template-columns:1fr; }
  .category-card { min-height:200px; }
  .woocommerce .products ul,.woocommerce ul.products { grid-template-columns:repeat(2,1fr); }
  .tradein { grid-template-columns:1fr; padding:35px 24px; }
  .tradein-art { display:none; }
  .footer-grid { grid-template-columns:1fr 1fr; }
  .hero-console-photo { display:none; }
  .icon-categories { display:flex; overflow:auto; padding-bottom:10px; }
  .icon-categories a { min-width:128px; }
  .mobile-drawer { display:block; position:fixed; z-index:1001; inset:0 auto 0 0; width:min(86vw,360px); padding:20px; background:#101210; border-right:1px solid var(--rr-line); transform:translateX(-105%); transition:transform .26s ease; }
  .mobile-drawer.is-open { transform:translateX(0); }
  .drawer-head { display:flex; align-items:center; justify-content:space-between; padding-bottom:18px; border-bottom:1px solid var(--rr-line); }
  .drawer-close { min-height:36px; width:36px; padding:0; background:transparent; border:0; font-size:28px; }
  .mobile-drawer .rr-search { display:block; margin:18px 0; }
  .mobile-drawer nav>a,.mobile-drawer summary { display:block; padding:12px 4px; border-bottom:1px solid rgba(139,170,75,.17); }
  .mobile-drawer details a { display:block; padding:8px 0 8px 24px; color:#aaa; }
  .drawer-overlay { display:block; position:fixed; z-index:1000; inset:0; background:rgba(0,0,0,.72); opacity:0; pointer-events:none; transition:.2s; }
  .drawer-overlay.is-open { opacity:1; pointer-events:auto; }
  body.drawer-open { overflow:hidden; }
  .mobile-bottom-nav { display:grid; position:fixed; z-index:900; bottom:0; left:0; right:0; grid-template-columns:repeat(4,1fr); min-height:62px; padding-bottom:env(safe-area-inset-bottom); background:#101210; border-top:1px solid var(--rr-line); }
  .mobile-bottom-nav a { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; font-size:10px; color:#aaa; position:relative; }
  .mobile-bottom-nav span { color:var(--rr-green); font-size:20px; }
  .mobile-bottom-nav a > span { color:inherit; font-size:11px; line-height:1.2; }
  .mobile-bottom-nav .cart-count { position:absolute; top:5px; margin-left:20px; }
  body { padding-bottom:calc(62px + env(safe-area-inset-bottom)); }
  .shop-layout { display:block; }
  .filter-toggle { display:block; margin-bottom:18px; }
  .shop-sidebar { position:fixed; z-index:1002; inset:0 0 0 auto; width:min(88vw,380px); overflow:auto; transform:translateX(105%); transition:.25s; top:0; }
  .shop-sidebar.is-open { transform:translateX(0); }
  .filter-close { display:block; min-height:32px; width:32px; padding:0; background:transparent; }
  .product-trust { grid-template-columns:1fr; }
  .custom-product-visual { float:none; width:100%; margin-bottom:24px; }
  .mobile-sticky-cart { display:flex; position:fixed; z-index:890; bottom:calc(62px + env(safe-area-inset-bottom)); left:0; right:0; align-items:center; justify-content:space-between; gap:12px; padding:10px 14px; background:#141714; border-top:1px solid var(--rr-line); }
  .mobile-sticky-cart div { display:grid; }
  .mobile-sticky-cart small { max-width:165px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .mobile-sticky-cart strong { color:var(--rr-cream); }
  .mobile-sticky-cart button { min-height:42px; padding:0 16px; font-size:11px; }
  body.single-product { padding-bottom:calc(132px + env(safe-area-inset-bottom)); }
}
@media (max-width: 560px) {
  .rr-hero h1 { font-size:48px; }
  .rr-section { padding:60px 0; }
  .trust-grid { grid-template-columns:1fr 1fr; }
  .trust-item { padding:20px 8px; }
  .rr-integrations { padding:44px 0; }
  .rr-integrations--detail { padding:0; }
  .rr-integration-grid { grid-template-columns:1fr; }
  .rr-integration-card { min-height:0; padding:22px; }
  .rr-integration-card::before { left:22px; }
  .rr-integration-card__top { align-items:flex-start; }
  .rr-integration-card h3 { margin-top:22px; font-size:23px; }
  .rr-integration-badge { max-width:190px; line-height:1.25; }
  .woocommerce .products ul,.woocommerce ul.products { gap:10px; }
  .woocommerce ul.products li.product { padding:9px; }
  .footer-grid { grid-template-columns:1fr; }
  .woocommerce .products ul,.woocommerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size:14px; }
  .product-badges { top:16px; left:14px; }
  .wishlist-button { top:10px; right:10px; }
}

/* Final design-system alignment */
.rr-icon { width:20px; height:20px; display:block; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.site-header { z-index:1000; min-height:76px; background:rgba(15,17,16,.98); }
.header-top { min-height:75px; gap:16px; }
.site-branding { flex:0 0 240px; min-width:240px; overflow:visible; }
.custom-logo-link {
  display:flex;
  align-items:flex-start;
  width:230px;
  height:54px;
  overflow:hidden;
}
.custom-logo {
  flex:0 0 auto;
  width:230px;
  max-width:none;
  height:auto;
  max-height:none;
  object-fit:contain;
  mix-blend-mode:lighten;
  transform:translateY(-11px);
}
.main-nav { flex:1 1 auto; border:0; min-width:0; }
.main-nav > ul { justify-content:flex-start; gap:clamp(9px,1vw,18px); padding:0; }
.main-nav a { font-size:10px; letter-spacing:.07em; white-space:nowrap; }
.main-nav li:first-child::after { content:none; }
.rr-search { flex:0 1 230px; }
.rr-search input { min-height:42px; padding-block:9px; }
.header-actions { gap:2px; }
.header-action { min-width:38px; width:38px; height:42px; padding:0; color:var(--rr-cream-soft); }
.header-action:hover { color:var(--rr-primary-light); }
.header-action .cart-count { position:absolute; top:1px; right:-3px; line-height:18px; }
.mega-menu {
  position:fixed; z-index:1010; top:75px; left:50%; width:min(1180px,calc(100vw - 48px));
  display:grid; grid-template-columns:1fr 1fr 1fr 1.15fr 1.35fr; gap:0;
  padding:28px; border:1px solid var(--rr-border-olive); border-radius:0 0 8px 8px;
  background:#101210; box-shadow:0 24px 60px rgba(0,0,0,.55);
  opacity:0; visibility:hidden; pointer-events:none; transform:translate(-50%,-8px); transition:.18s ease;
}
.has-mega:hover .mega-menu,.has-mega:focus-within .mega-menu { opacity:1; visibility:visible; pointer-events:auto; transform:translate(-50%,0); }
.mega-menu > div { min-width:0; padding:0 22px; border-right:1px solid var(--rr-border); }
.mega-menu > div:first-child { padding-left:0; }
.mega-menu > div:last-child { border:0; padding-right:0; }
.mega-menu h3 { margin:0 0 14px; color:var(--rr-primary-light); font:600 13px/1 Inter,sans-serif; text-transform:uppercase; letter-spacing:.12em; }
.mega-menu a { display:block; padding:5px 0; color:var(--rr-text-soft); font-size:12px; letter-spacing:0; text-transform:none; white-space:normal; }
.mega-menu a:hover,.mega-menu .mega-more { color:var(--rr-primary-light); }
.mega-menu .mega-more { margin-top:8px; font-size:11px; }
.mega-menu .mega-trade { background:var(--rr-surface-raised); margin:-12px 12px; padding:18px; border:1px solid var(--rr-border-olive); }
.mega-trade p { color:var(--rr-text-muted); font-size:12px; line-height:1.55; }
.mega-menu .button { display:inline-flex; padding:0 15px; min-height:36px; color:var(--rr-cream); }
.mega-line-art { display:block; margin-top:22px; color:var(--rr-primary-light); font-size:30px; text-align:center; }
.mega-product { display:grid!important; grid-template-columns:72px 1fr; align-items:center; gap:10px; margin-bottom:10px; padding:7px!important; border:1px solid var(--rr-border); }
.mega-product img { width:72px; height:58px; object-fit:contain; background:var(--rr-bg); }
.mega-product span,.mega-product small { display:block; }
.mega-product small { margin-top:3px; color:var(--rr-text-muted); font-size:9px; }

.site-footer { background:var(--rr-bg-soft); }
.footer-grid { grid-template-columns:1.4fr repeat(4,1fr); gap:32px; padding:56px 0 38px; }
.footer-logo {
  width:230px;
  max-height:none;
  object-fit:contain;
  object-position:left center;
  mix-blend-mode:lighten;
}
.footer-intro p { max-width:280px; color:var(--rr-text-muted); font-size:13px; }
.footer-socials { display:flex; gap:8px; }
.footer-socials a { display:grid; place-items:center; width:30px; height:30px; border:1px solid var(--rr-border-olive); border-radius:50%; color:var(--rr-primary-light); font-size:10px; }
.footer-socials .rr-icon { width:15px; height:15px; stroke-width:1.65; }
.footer-socials a:nth-child(2) .rr-icon { width:14px; height:14px; }
.footer-socials a:nth-child(3) .rr-icon { width:16px; height:16px; }
.footer-column { border:0; }
.footer-column summary { list-style:none; pointer-events:none; }
.footer-column summary::-webkit-details-marker { display:none; }
.footer-column summary h3 { display:inline; color:var(--rr-cream); font:600 12px/1 Inter,sans-serif; text-transform:uppercase; letter-spacing:.1em; }
.footer-column summary .rr-icon { display:none; }
.footer-grid ul { margin-top:17px; color:var(--rr-text-muted); font-size:12px; }
.footer-grid a:hover { color:var(--rr-primary-light); }
.footer-services { display:grid; grid-template-columns:1fr 1fr 1.4fr; align-items:end; gap:28px; padding:22px 0; border-top:1px solid var(--rr-border); }
.footer-services > div { display:grid; gap:4px; }
.footer-services strong,.footer-newsletter label { color:var(--rr-cream); font-size:11px; text-transform:uppercase; letter-spacing:.09em; }
.footer-services span { color:var(--rr-text-muted); font-size:12px; }
.footer-services .rr-integration-mini {
  display:grid;
  grid-template-columns:32px minmax(0,1fr);
  align-items:start;
  gap:11px;
}
.rr-integration-mini__icon {
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  color:var(--rr-primary-light);
  border:1px solid var(--rr-border-olive);
  border-radius:50%;
}
.rr-integration-mini__icon .rr-icon { width:16px; height:16px; }
.rr-integration-mini > div { display:grid; justify-items:start; gap:5px; }
.footer-services .rr-integration-mini .rr-integration-badge { font-size:8px; }
.rr-integration-mini small { color:var(--rr-text-muted); font-size:10px; line-height:1.45; }
.footer-newsletter { display:grid; grid-template-columns:1fr auto; }
.footer-newsletter label { grid-column:1/-1; margin-bottom:7px; }
.footer-newsletter input { min-width:0; padding:10px 12px; color:var(--rr-cream); background:var(--rr-surface); border:1px solid var(--rr-border); }
.footer-newsletter button { min-height:40px; padding-inline:16px; }
.footer-copy { color:var(--rr-text-muted); }

@media (min-width:1321px) {
  .header-top { display:grid; grid-template-columns:240px minmax(0,1fr) 230px auto; gap:20px; }
  .main-nav > ul { width:100%; justify-content:center; gap:clamp(20px,1.65vw,32px); }
  .rr-search { width:230px; }
}
@media (max-width:1320px) {
  .site-branding { flex:1; }
  .main-nav,.header-top > .rr-search { display:none; }
  .menu-toggle {
    display:grid; place-items:center; flex:0 0 44px;
    width:44px; min-width:44px; min-height:44px; padding:0;
  }
  .mobile-drawer {
    display:block; position:fixed; z-index:1101; inset:0 auto 0 0;
    width:min(86vw,380px); max-height:100dvh; padding:20px;
    overflow-y:auto; overscroll-behavior:contain;
    background:#101210; border-right:1px solid var(--rr-line);
    visibility:hidden; pointer-events:none;
    transform:translateX(-105%);
    transition:transform .26s ease,visibility 0s linear .26s;
  }
  .mobile-drawer.is-open {
    visibility:visible; pointer-events:auto; transform:translateX(0);
    transition-delay:0s;
  }
  .drawer-head {
    display:flex; align-items:center; justify-content:space-between;
    padding-bottom:18px; border-bottom:1px solid var(--rr-line);
  }
  .drawer-close {
    display:grid; place-items:center; width:44px; min-width:44px;
    min-height:44px; padding:0; border:0; background:transparent;
    color:var(--rr-cream); cursor:pointer;
  }
  .mobile-drawer .rr-search { display:block; margin:18px 0; }
  .mobile-drawer nav>a,.mobile-drawer summary {
    display:block; padding:12px 4px;
    border-bottom:1px solid rgba(139,170,75,.17);
  }
  .mobile-drawer details a { display:block; padding:8px 0 8px 24px; color:#aaa; }
  .drawer-overlay {
    display:block; position:fixed; z-index:1100; inset:0;
    background:rgba(0,0,0,.72); opacity:0; visibility:hidden;
    pointer-events:none; transition:opacity .2s ease,visibility 0s linear .2s;
  }
  .drawer-overlay.is-open {
    opacity:1; visibility:visible; pointer-events:auto; transition-delay:0s;
  }
  body.drawer-open { overflow:hidden; }
}
@media (max-width:767px) {
  .site-header,.header-top { min-height:64px; }
  .header-top {
    display:grid; grid-template-columns:44px minmax(0,1fr) 44px;
    align-items:center; gap:8px;
  }
  .site-branding {
    display:flex; min-width:0; justify-content:center;
  }
  .custom-logo-link {
    min-width:0;
    width:155px;
    height:52px;
    align-items:center;
    justify-content:center;
    overflow:visible;
  }
  .custom-logo {
    width:155px;
    max-width:none;
    height:auto;
    max-height:52px;
    transform:none;
  }
  .drawer-brand { overflow:visible; }
  .header-actions { width:44px; justify-content:flex-end; }
  .trust-item { min-height:94px; padding:16px 12px; justify-content:flex-start; gap:9px; }
  .trust-item .rr-icon { width:20px; height:20px; flex-basis:20px; }
  .header-actions .header-action:not(:last-child) { display:none; }
  .footer-grid { grid-template-columns:1fr; gap:0; padding:42px 0 20px; }
  .footer-intro { padding-bottom:24px; }
  .footer-column { border-top:1px solid var(--rr-border); }
  .footer-column summary { display:flex; align-items:center; justify-content:space-between; min-height:54px; pointer-events:auto; cursor:pointer; }
  .footer-column summary .rr-icon { display:block; transition:transform .2s; }
  .footer-column[open] summary .rr-icon { transform:rotate(180deg); }
  .footer-column ul { margin:0; padding-bottom:18px; }
  .footer-services { grid-template-columns:1fr; align-items:stretch; }
  .footer-services .rr-integration-mini { padding-block:10px; }
  .footer-newsletter { order:-1; }
  .mobile-bottom-nav a { gap:3px; color:var(--rr-text-muted); }
  .mobile-bottom-nav a > .rr-icon { width:20px; height:20px; color:var(--rr-primary-light); }
  .mobile-bottom-nav a > span { color:inherit; font-size:10px; }
  .mobile-bottom-nav .cart-count { top:4px; right:calc(50% - 24px); margin:0; }
}

/* Premium category collection */
.rr-collection-head { align-items:flex-end; }
.rr-collection-head > div p { max-width:580px; margin:10px 0 0; color:var(--rr-text-muted); font-size:14px; }
.icon-categories { grid-template-columns:repeat(5,minmax(0,1fr)); gap:14px; }
.icon-categories a {
  min-height:240px; padding:20px; display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-end;
  isolation:isolate; text-align:left; border-color:var(--rr-border); border-radius:8px;
  background-color:var(--rr-surface); background-position:center; background-size:cover;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 16px 36px rgba(0,0,0,.18);
}
.icon-categories a:nth-child(1) { background-image:url("assets/images/generated/category-consoles.png"); }
.icon-categories a:nth-child(2) { background-image:url("assets/images/generated/category-games.png"); }
.icon-categories a:nth-child(3) { background-image:url("assets/images/generated/category-accessories.png"); }
.icon-categories a:nth-child(4) { background-image:url("assets/images/generated/product-controller.png"); }
.icon-categories a:nth-child(5) { background-image:url("assets/images/generated/product-memory.png"); }
.icon-categories a::before {
  content:""; position:absolute; z-index:-1; inset:0; border-radius:inherit;
  background:linear-gradient(180deg,rgba(8,9,8,.08) 5%,rgba(8,9,8,.22) 36%,rgba(8,9,8,.96) 100%);
  transition:background .35s ease;
}
.icon-categories a::after {
  content:""; position:absolute; z-index:2; inset:9px; width:auto; height:auto; right:9px; bottom:9px;
  border:1px solid transparent; border-top-color:rgba(244,240,232,.1); border-left-color:rgba(244,240,232,.05);
  transform:none; transition:border-color .3s ease;
}
.icon-categories a:hover { transform:translateY(-6px); border-color:var(--rr-primary-light); box-shadow:0 24px 50px rgba(0,0,0,.35); }
.icon-categories a:hover::before { background:linear-gradient(180deg,rgba(8,9,8,.02) 0%,rgba(8,9,8,.18) 34%,rgba(8,9,8,.94) 100%); }
.icon-categories a:hover::after { transform:none; border-top-color:rgba(138,164,106,.28); border-left-color:rgba(138,164,106,.14); }
.icon-categories b {
  position:absolute; z-index:3; top:18px; left:18px; display:grid; place-items:center;
  width:34px; height:34px; margin:0; border:1px solid var(--rr-border-olive); border-radius:50%;
  color:var(--rr-cream-soft); background:rgba(14,14,14,.76); backdrop-filter:blur(8px);
  font:600 10px/1 Inter,sans-serif; letter-spacing:.08em;
}
.icon-categories span { position:relative; z-index:3; display:block; color:var(--rr-cream); font:600 23px/1.15 "Playfair Display",serif; }
.icon-categories small { display:block; margin-top:7px; color:var(--rr-text-muted); font:400 11px/1.35 Inter,sans-serif; }
.icon-categories i {
  position:absolute; z-index:3; right:20px; bottom:22px; color:var(--rr-primary-light);
  font:400 20px/1 Inter,sans-serif; font-style:normal; opacity:0; transform:translateX(-8px); transition:opacity .25s ease,transform .25s ease;
}
.icon-categories a:hover i { opacity:1; transform:none; }

@media (max-width:960px) {
  .icon-categories { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; gap:12px; padding:2px 2px 14px; scrollbar-width:none; }
  .icon-categories::-webkit-scrollbar { display:none; }
  .icon-categories a { flex:0 0 230px; min-width:230px; min-height:260px; scroll-snap-align:start; }
}
@media (max-width:560px) {
  .rr-collection-head { align-items:flex-start; }
  .rr-collection-head > a { margin-top:8px; }
  .icon-categories a { flex-basis:78vw; min-width:78vw; }
}

/* Editorial premium collections */
.rr-collections .section-head > div > p { max-width:620px; margin:10px 0 0; color:var(--rr-text-muted); font-size:14px; }
.rr-collections .collections-grid {
  display:grid; grid-template-columns:minmax(0,1.45fr) minmax(340px,.75fr); grid-template-rows:1fr 1fr; gap:16px;
}
.rr-collections .collections-grid > a {
  min-height:225px; position:relative; isolation:isolate; overflow:hidden; padding:28px;
  justify-content:space-between; border:1px solid var(--rr-border); border-radius:8px;
  background-position:center; background-size:cover;
}
.rr-collections .collections-grid > a::before {
  content:""; position:absolute; z-index:-1; inset:0;
  background:linear-gradient(90deg,rgba(10,11,10,.96) 0%,rgba(10,11,10,.74) 47%,rgba(10,11,10,.1) 100%);
  transition:background .35s ease;
}
.rr-collections .collections-grid > a::after {
  content:""; position:absolute; z-index:1; inset:11px; pointer-events:none;
  border-top:1px solid rgba(244,240,232,.08); border-left:1px solid rgba(244,240,232,.04);
}
.rr-collections .collection-featured {
  grid-row:1/3; min-height:466px; padding:38px;
  background-image:url("assets/images/generated/product-ps2.png");
}
.rr-collections .collection-classics { background-image:url("assets/images/generated/blog-games.png"); }
.rr-collections .collection-accessories { background-image:url("assets/images/generated/category-accessories.png"); }
.rr-collections .collections-grid span {
  position:relative; z-index:2; color:var(--rr-primary-light); font-size:10px; letter-spacing:.15em; text-transform:uppercase;
}
.rr-collections .collections-grid > a > div { position:relative; z-index:2; max-width:540px; }
.rr-collections .collections-grid h3 { margin:0 0 8px; color:var(--rr-cream); font-size:28px; line-height:1.12; }
.rr-collections .collection-featured h3 { font-size:40px; }
.rr-collections .collections-grid small { display:block; max-width:470px; color:var(--rr-text-muted); font-size:12px; line-height:1.5; }
.rr-collections .collections-grid strong {
  display:inline-flex; align-items:center; gap:10px; margin-top:20px; color:var(--rr-cream-soft);
  font-size:11px; text-transform:uppercase; letter-spacing:.08em;
}
.rr-collections .collections-grid strong i { color:var(--rr-primary-light); font:400 19px/1 Inter,sans-serif; font-style:normal; transition:transform .2s ease; }
.rr-collections .collections-grid > a:hover { transform:translateY(-4px); border-color:var(--rr-primary-light); }
.rr-collections .collections-grid > a:hover::before { background:linear-gradient(90deg,rgba(10,11,10,.95),rgba(10,11,10,.62) 48%,rgba(10,11,10,.04)); }
.rr-collections .collections-grid > a:hover strong i { transform:translateX(5px); }

@media (max-width:960px) {
  .rr-collections .collections-grid { grid-template-columns:1fr; grid-template-rows:auto; }
  .rr-collections .collection-featured { grid-row:auto; min-height:390px; }
  .rr-collections .collections-grid > a:not(.collection-featured) { min-height:260px; }
}
@media (max-width:560px) {
  .rr-collections .collection-featured { min-height:360px; padding:26px; }
  .rr-collections .collection-featured h3 { font-size:31px; }
  .rr-collections .collections-grid > a { padding:24px; }
}

/* Unified shop mega menu */
.has-mega > a { display:inline-flex; align-items:center; gap:5px; }
.has-mega > a .rr-icon { width:13px; height:13px; transition:transform .22s ease; }
.has-mega:hover > a .rr-icon,.has-mega:focus-within > a .rr-icon { transform:rotate(180deg); }
.mega-menu {
  width:min(1240px,calc(100vw - 48px)); padding:30px;
  background:
    linear-gradient(115deg,rgba(138,164,106,.035),transparent 28%),
    linear-gradient(180deg,#111411,#0e100f);
  border-top:2px solid rgba(138,164,106,.58);
}
.mega-menu::before {
  content:""; position:absolute; top:-5px; left:68px; width:8px; height:8px;
  border-top:1px solid var(--rr-primary-light); border-left:1px solid var(--rr-primary-light);
  background:#111411; transform:rotate(45deg);
}
.mega-menu > div { position:relative; transition:background-color .2s ease; }
.mega-menu > div:nth-child(-n+3) { padding-block:6px; }
.mega-menu > div:nth-child(-n+3):hover { background:rgba(138,164,106,.025); }
.mega-menu > div:nth-child(-n+3) h3 { display:flex; align-items:center; gap:9px; }
.mega-menu > div:nth-child(-n+3) h3::before {
  display:grid; place-items:center; width:23px; height:23px; border:1px solid var(--rr-border-olive);
  border-radius:50%; color:var(--rr-cream-soft); font-size:8px;
}
.mega-menu > div:nth-child(1) h3::before { content:"01"; }
.mega-menu > div:nth-child(2) h3::before { content:"02"; }
.mega-menu > div:nth-child(3) h3::before { content:"03"; }
.mega-menu > div:nth-child(-n+3) > a:not(.mega-more) { position:relative; padding-left:0; transition:padding-left .18s ease,color .18s ease; }
.mega-menu > div:nth-child(-n+3) > a:not(.mega-more)::before {
  content:""; position:absolute; left:0; top:50%; width:0; height:1px; background:var(--rr-primary-light); transition:width .18s ease;
}
.mega-menu > div:nth-child(-n+3) > a:not(.mega-more):hover { padding-left:15px; }
.mega-menu > div:nth-child(-n+3) > a:not(.mega-more):hover::before { width:8px; }
.mega-menu .mega-trade { display:flex; flex-direction:column; justify-content:flex-start; min-height:240px; }
.mega-line-art { display:flex; justify-content:center; gap:18px; margin-top:auto; }
.mega-line-art .rr-icon { width:32px; height:32px; }
.mega-product { min-height:80px; background:rgba(20,20,20,.7); transition:border-color .2s ease,transform .2s ease,background-color .2s ease; }
.mega-product:hover { transform:translateX(3px); border-color:var(--rr-primary-light); background:var(--rr-surface-raised); }
.mega-product img { width:72px; height:64px; object-fit:cover; }

/* Premium motion and finish */
body::before {
  content:""; position:fixed; z-index:9998; inset:0; pointer-events:none; opacity:.025;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.75'/%3E%3C/svg%3E");
}
.site-header { transition:background-color .3s ease,box-shadow .3s ease,border-color .3s ease; }
.site-header.is-scrolled { background:rgba(12,14,13,.985); border-bottom-color:var(--rr-border-olive); box-shadow:0 12px 40px rgba(0,0,0,.38); }
.custom-logo { transition:transform .3s ease,filter .3s ease; }
.custom-logo-link:hover .custom-logo { transform:translateY(-1px); filter:brightness(1.08); }
.main-nav > ul > li > a { position:relative; padding-block:28px; }
.main-nav > ul > li > a::after { content:""; position:absolute; left:50%; right:50%; bottom:20px; height:1px; background:var(--rr-primary-light); transition:left .22s ease,right .22s ease; }
.main-nav > ul > li:hover > a::after,.main-nav > ul > li:focus-within > a::after { left:0; right:0; }
.header-action { transition:color .2s ease,transform .2s ease,background-color .2s ease; }
.header-action:hover { transform:translateY(-2px); background:rgba(138,164,106,.06); }
.rr-search input { transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease; }
.rr-search input:focus { outline:0; border-color:var(--rr-primary-light); background:#121512; box-shadow:0 0 0 3px rgba(138,164,106,.1); }

.rr-hero::before {
  display:none;
}
.hero-console-photo { animation:none; }
@keyframes rr-float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-9px)} }
.eyebrow { display:flex; align-items:center; gap:10px; }
.eyebrow::before { content:""; width:28px; height:1px; background:var(--rr-primary-light); box-shadow:34px 0 0 -0.3px rgba(138,164,106,.35); }
.section-head h2,.rr-collections h2,.rr-journal h2 { position:relative; }
.section-head h2::after,.rr-collections h2::after,.rr-journal h2::after {
  content:"◇"; display:inline-block; margin-left:14px; color:var(--rr-primary-light); font:400 15px/1 Inter,sans-serif; vertical-align:middle; opacity:.8;
}
.button,button,input[type=submit],.wp-element-button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button {
  position:relative; overflow:hidden; isolation:isolate; transition:transform .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease;
}
.button::after,button::after,input[type=submit]::after,.wp-element-button::after,.woocommerce a.button::after,.woocommerce button.button::after {
  content:""; position:absolute; z-index:-1; top:-50%; bottom:-50%; left:-35%; width:26%; transform:rotate(18deg) translateX(-260%);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent); transition:transform .55s ease;
}
.button:hover::after,button:hover::after,.wp-element-button:hover::after,.woocommerce a.button:hover::after,.woocommerce button.button:hover::after { transform:rotate(18deg) translateX(650%); }
.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover { transform:translateY(-2px); box-shadow:0 10px 26px rgba(50,66,35,.28); }
.button:active,button:active { transform:translateY(0); }

.category-card,.collections-grid > a,.journal-grid article,.woocommerce ul.products li.product {
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 12px 30px rgba(0,0,0,.12);
}
.category-card::after,.collections-grid > a::after,.journal-grid article::after,.woocommerce ul.products li.product::after {
  content:""; position:absolute; pointer-events:none; inset:0; border-radius:inherit;
  background:linear-gradient(130deg,rgba(244,240,232,.055),transparent 24%,transparent 72%,rgba(138,164,106,.04));
  opacity:0; transition:opacity .28s ease;
}
.category-card:hover::after,.collections-grid > a:hover::after,.journal-grid article:hover::after,.woocommerce ul.products li.product:hover::after { opacity:1; }
.woocommerce ul.products li.product,.journal-grid article { position:relative; transition:transform .28s cubic-bezier(.2,.8,.2,1),border-color .28s ease,box-shadow .28s ease; }
.woocommerce ul.products li.product:hover,.journal-grid article:hover { transform:translateY(-6px); border-color:var(--rr-border-olive); box-shadow:0 20px 45px rgba(0,0,0,.32); }
.woocommerce ul.products li.product img,.journal-art { transition:transform .5s cubic-bezier(.2,.8,.2,1),filter .4s ease; }
.woocommerce ul.products li.product:hover img { transform:scale(1.025); filter:brightness(1.06); }
.journal-grid article { overflow:hidden; }
.journal-grid article:hover .journal-art { transform:scale(1.035); filter:brightness(1.07); }
.icon-categories a { position:relative; overflow:hidden; }
.icon-categories a::after { content:""; position:absolute; width:70px; height:70px; right:-38px; bottom:-40px; border:1px solid rgba(138,164,106,.17); transform:rotate(45deg); transition:transform .35s ease; }
.icon-categories a:hover::after { transform:rotate(45deg) translate(-9px,-9px); }
.tradein { position:relative; overflow:hidden; box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 22px 60px rgba(0,0,0,.22); }
.tradein::after { content:""; position:absolute; width:8px; height:8px; left:50%; bottom:-5px; border:1px solid var(--rr-primary-light); background:var(--rr-surface-raised); transform:rotate(45deg); }
.trust-item { transition:background-color .25s ease; }
.trust-item:hover { background:rgba(138,164,106,.035); }
.trust-item .rr-icon { transition:transform .3s ease,color .3s ease; }
.trust-item:hover .rr-icon { transform:translateY(-2px) scale(1.06); color:var(--rr-cream-soft); }
.rr-newsletter { position:relative; overflow:hidden; }
.rr-newsletter::after { content:""; position:absolute; width:260px; height:260px; right:-100px; top:-145px; border:1px solid rgba(138,164,106,.13); transform:rotate(45deg); }
.footer-socials a { transition:transform .2s ease,color .2s ease,border-color .2s ease; }
.footer-socials a:hover { transform:translateY(-3px); color:var(--rr-cream); border-color:var(--rr-primary-light); }

.rr-reveal { opacity:0; transform:translateY(26px); transition:opacity .7s ease,transform .7s cubic-bezier(.2,.75,.2,1); }
.rr-reveal.is-visible { opacity:1; transform:none; }
.rr-stagger > * { opacity:0; transform:translateY(18px); transition:opacity .55s ease,transform .55s cubic-bezier(.2,.75,.2,1); }
.rr-stagger.is-visible > * { opacity:1; transform:none; }
.rr-stagger.is-visible > *:nth-child(2) { transition-delay:.07s; }
.rr-stagger.is-visible > *:nth-child(3) { transition-delay:.14s; }
.rr-stagger.is-visible > *:nth-child(4) { transition-delay:.21s; }
.rr-stagger.is-visible > *:nth-child(5) { transition-delay:.28s; }
.rr-stagger.is-visible > *:nth-child(6) { transition-delay:.35s; }

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
  .rr-reveal,.rr-stagger > * { opacity:1; transform:none; }
}
@media (max-width:767px) {
  body::before { opacity:.018; }
  .rr-hero { background-position:64% center; }
  .rr-hero::before { display:none; }
  .hero-console-photo { animation:none; }
  .eyebrow::before { width:20px; }
  .section-head h2::after,.rr-collections h2::after,.rr-journal h2::after { display:none; }
  .woocommerce ul.products li.product:hover,.journal-grid article:hover,.category-card:hover { transform:none; }
}

.collections-grid,.journal-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.collections-grid > a { min-height:220px; display:flex; flex-direction:column; justify-content:flex-end; padding:28px; border:1px solid var(--rr-border-olive); background:linear-gradient(150deg,var(--rr-surface-raised),var(--rr-surface)); transition:.2s; }
.collections-grid > a:hover { transform:translateY(-4px); border-color:var(--rr-primary-light); }
.collections-grid span { color:var(--rr-primary-light); font-size:12px; letter-spacing:.16em; }
.collections-grid h3 { margin:10px 0 4px; font-size:26px; }
.collections-grid small { color:var(--rr-text-muted); }
.journal-grid article { padding:14px 14px 22px; border:1px solid var(--rr-border); background:var(--rr-surface); }
.journal-art { width:100%; aspect-ratio:16/9; object-fit:cover; margin-bottom:18px; background:var(--rr-bg); border:1px solid var(--rr-border); }
.journal-grid article > small { color:var(--rr-primary-light); text-transform:uppercase; letter-spacing:.12em; }
.journal-grid h3 { margin:8px 0; font-size:23px; }
.journal-grid p { color:var(--rr-text-muted); font-size:13px; }
.journal-grid a { color:var(--rr-primary-light); font-size:12px; }
.rr-newsletter { padding:46px 0; border-block:1px solid var(--rr-border-olive); background:var(--rr-surface-raised); }
.newsletter-grid { display:grid; grid-template-columns:1.2fr .8fr; align-items:center; gap:60px; }
.newsletter-grid h2 { margin:5px 0; font-size:34px; }
.newsletter-grid p { margin:0; color:var(--rr-text-muted); }
.newsletter-grid form { display:grid; grid-template-columns:1fr auto; }
.newsletter-grid input { min-width:0; padding:13px 16px; color:var(--rr-cream); background:var(--rr-bg); border:1px solid var(--rr-border); }
.newsletter-grid small { grid-column:1/-1; margin-top:8px; color:var(--rr-text-muted); }

/* WooCommerce: dark product, cart, checkout and account surfaces */
.woocommerce .woocommerce-breadcrumb { color:var(--rr-text-muted); font-size:12px; }
.woocommerce .woocommerce-breadcrumb a { color:var(--rr-text-soft); }
.woocommerce div.product .summary { padding:24px; border:1px solid var(--rr-border); background:var(--rr-surface); }
.woocommerce div.product .stock { color:var(--rr-success); }
.woocommerce .quantity .qty { min-height:46px; color:var(--rr-cream); background:var(--rr-bg); border:1px solid var(--rr-border); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { border-color:var(--rr-border); }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background:var(--rr-surface); border-color:var(--rr-border); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { color:var(--rr-primary-light); background:var(--rr-surface-raised); border-color:var(--rr-border-olive); }
.woocommerce div.product .woocommerce-tabs .panel { padding:24px; border:1px solid var(--rr-border); background:var(--rr-surface); }
.woocommerce table.shop_table { border-collapse:separate; background:var(--rr-surface); }
.woocommerce table.shop_table th,.woocommerce table.shop_table td { padding:16px; border-color:var(--rr-border); }
.woocommerce-cart table.cart img { width:92px; background:var(--rr-bg); }
.woocommerce-cart .cart-collaterals .cart_totals { padding:24px; border:1px solid var(--rr-border-olive); background:var(--rr-surface-raised); }
.woocommerce form.checkout_coupon,.woocommerce form.login,.woocommerce form.register { border-color:var(--rr-border); background:var(--rr-surface); }
.woocommerce form .form-row label { color:var(--rr-text-soft); }
.select2-container--default .select2-selection--single { height:46px; color:var(--rr-cream); background:var(--rr-bg); border-color:var(--rr-border); }
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height:44px; color:var(--rr-cream); }
#order_review_heading { margin-top:34px; }
.woocommerce-checkout-review-order { padding:24px; border:1px solid var(--rr-border-olive); background:var(--rr-surface-raised); }
#add_payment_method #payment,.woocommerce-cart #payment,.woocommerce-checkout #payment { color:var(--rr-cream); background:var(--rr-surface); }
#add_payment_method #payment div.payment_box,.woocommerce-cart #payment div.payment_box,.woocommerce-checkout #payment div.payment_box { color:var(--rr-text-soft); background:var(--rr-surface-raised); }
#add_payment_method #payment div.payment_box::before,.woocommerce-cart #payment div.payment_box::before,.woocommerce-checkout #payment div.payment_box::before { border-bottom-color:var(--rr-surface-raised); }
.woocommerce-page .select-paczkomat-button {
  width:100%;
  min-height:42px;
  margin:10px 0 0!important;
  border:1px solid var(--rr-border-olive)!important;
  background:var(--rr-primary)!important;
  color:var(--rr-cream)!important;
  font-size:11px!important;
  font-weight:700!important;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.woocommerce-page .select-paczkomat-button:hover {
  background:var(--rr-primary-hover)!important;
  color:var(--rr-text-dark)!important;
}
.woocommerce-page #selected-paczkomat {
  margin-top:9px;
  padding:11px 12px;
  color:var(--rr-text-soft);
  border-left:2px solid var(--rr-primary-light);
  background:rgba(138,164,106,.08);
  font-size:11px;
  font-weight:500;
  line-height:1.55;
}
.woocommerce-page #selected-paczkomat:empty { display:none; }
.woocommerce-MyAccount-navigation { padding:18px; border:1px solid var(--rr-border); background:var(--rr-surface); }
.woocommerce-MyAccount-navigation ul { list-style:none; margin:0; padding:0; }
.woocommerce-MyAccount-navigation li a { display:block; padding:12px 8px; border-bottom:1px solid var(--rr-border); }
.woocommerce-MyAccount-navigation li.is-active a { color:var(--rr-primary-light); }
.woocommerce-MyAccount-content { padding:24px; border:1px solid var(--rr-border); background:var(--rr-surface); }

.rr-tradein-form { max-width:920px; padding:28px; border:1px solid var(--rr-border-olive); background:var(--rr-surface); }
.rr-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.rr-tradein-form label { display:grid; gap:7px; color:var(--rr-text-soft); font-size:13px; }
.rr-form-wide { grid-column:1/-1; }
.rr-tradein-form input,.rr-tradein-form select,.rr-tradein-form textarea { width:100%; padding:12px; color:var(--rr-cream); background:var(--rr-bg); border:1px solid var(--rr-border); border-radius:4px; }
.rr-tradein-form input:focus,.rr-tradein-form select:focus,.rr-tradein-form textarea:focus { outline:2px solid var(--rr-primary-light); outline-offset:2px; }
.rr-consent { grid-template-columns:auto 1fr!important; align-items:start; margin:22px 0; }
.rr-consent input { width:auto; margin-top:4px; accent-color:var(--rr-primary); }
.rr-form-notice { max-width:920px; margin-bottom:16px; padding:14px; border:1px solid; }
.rr-form-success { color:var(--rr-success); }.rr-form-error { color:var(--rr-error); }

@media (max-width:767px) {
  .rr-hero { min-height:560px; }
  .rr-hero h1 { font-size:40px; line-height:1.08; }
  .rr-hero h1 span:last-child { margin-left:0; }
  .rr-hero h1 span:last-child::before,.rr-hero h1 span:last-child::after { display:none; }
  .section-head h2 { font-size:32px; }
  .collections-grid,.journal-grid,.newsletter-grid { grid-template-columns:1fr; }
  .collections-grid > a { min-height:170px; }
  .journal-grid { gap:14px; }
  .newsletter-grid { gap:24px; }
  .newsletter-grid h2 { font-size:28px; }
  .rr-form-grid { grid-template-columns:1fr; }
  .rr-form-wide { grid-column:auto; }
  .rr-tradein-form { padding:18px; }
  .woocommerce-cart table.cart thead { display:none; }
  .woocommerce .woocommerce-MyAccount-navigation,.woocommerce .woocommerce-MyAccount-content { float:none; width:100%; }
  .rr-checkout-steps { margin-bottom:22px; }
  .rr-checkout-steps small { display:none; }
  .rr-product-meta-grid { grid-template-columns:1fr; }
}

/* Informational pages — editable Gutenberg system */
.rr-page-shell {
  position:relative;
  background:
    radial-gradient(circle at 76% 0,rgba(85,107,63,.12),transparent 29rem),
    var(--rr-bg);
}
.rr-page-hero {
  position:relative;
  overflow:hidden;
  padding:76px 0 68px;
  border-bottom:1px solid var(--rr-border);
  background:
    linear-gradient(rgba(138,164,106,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(138,164,106,.025) 1px,transparent 1px),
    linear-gradient(110deg,#101311,#0e0f0e 58%,#121611);
  background-size:32px 32px,32px 32px,auto;
}
.rr-page-hero::after {
  content:""; position:absolute; width:440px; height:440px; right:6%; top:-250px;
  border:1px solid rgba(138,164,106,.11); border-radius:50%;
  box-shadow:0 0 0 80px rgba(138,164,106,.025),0 0 0 160px rgba(138,164,106,.018);
}
.rr-page-hero .rr-wrap { position:relative; z-index:1; }
.rr-breadcrumbs {
  display:flex; align-items:center; gap:9px; margin-bottom:34px;
  color:var(--rr-text-muted); font-size:11px; text-transform:uppercase; letter-spacing:.1em;
}
.rr-breadcrumbs a:hover { color:var(--rr-primary-light); }
.rr-page-hero .entry-title {
  max-width:950px; margin:15px 0 18px;
  font-size:clamp(44px,6vw,78px); line-height:1.02; letter-spacing:-.035em;
}
.rr-page-excerpt { max-width:760px; margin:0; color:var(--rr-text-soft); font-size:clamp(16px,1.6vw,20px); line-height:1.65; }
.rr-page-content { padding-block:78px 110px; }
.rr-page-content > :first-child { margin-top:0; }
.rr-page-content > * + * { margin-top:72px; }
.rr-page-section { margin-block:72px; }
.rr-page-content h2 { margin-bottom:20px; color:var(--rr-cream); font-size:clamp(32px,4vw,48px); line-height:1.1; }
.rr-page-content h3 { color:var(--rr-cream-soft); }
.rr-page-content p,.rr-page-content li { color:var(--rr-text-soft); }
.rr-page-content a:not(.wp-element-button) { color:var(--rr-primary-light); }
.rr-page-content a:not(.wp-element-button):hover { color:var(--rr-cream); }
.rr-page-lead { max-width:930px; }
.rr-page-lead > p:not(.eyebrow) { max-width:850px; font-size:18px; }

.rr-card-grid { display:grid; gap:16px; }
.rr-card-grid--4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.rr-card-grid--3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.rr-info-card {
  position:relative; min-height:230px; margin:0!important; padding:28px;
  border:1px solid var(--rr-border); border-radius:var(--radius-md);
  background:
    linear-gradient(135deg,rgba(244,240,232,.028),transparent 35%),
    var(--rr-surface);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02);
}
.rr-info-card::after {
  content:""; position:absolute; right:-24px; bottom:-24px; width:72px; height:72px;
  border:1px solid rgba(138,164,106,.13); transform:rotate(45deg);
}
.rr-info-card h3 { margin:38px 0 9px; font-size:23px; }
.rr-info-card p { margin:0; color:var(--rr-text-muted); font-size:14px; line-height:1.65; }
.rr-card-number { color:var(--rr-primary-light); font-size:11px; letter-spacing:.16em; }
.rr-info-card--link { display:block; overflow:hidden; color:inherit!important; transition:transform .25s ease,border-color .25s ease,background-color .25s ease; }
.rr-info-card--link strong { display:block; margin-top:22px; color:var(--rr-primary-light); font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.rr-info-card--link:hover { transform:translateY(-4px); border-color:var(--rr-border-olive); background:var(--rr-surface-raised); }

.rr-process-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; padding:1px; background:var(--rr-border); }
.rr-process-step { min-height:225px; padding:28px; background:linear-gradient(155deg,#171817,#111311); }
.rr-process-step b {
  display:grid; place-items:center; width:38px; height:38px; margin-bottom:38px;
  color:var(--rr-primary-light); border:1px solid var(--rr-border-olive); border-radius:50%;
  font-size:10px; letter-spacing:.08em;
}
.rr-process-step h3 { margin:0 0 8px; font-size:22px; }
.rr-process-step p { margin:0; color:var(--rr-text-muted); font-size:13px; }

.rr-callout {
  position:relative; overflow:hidden; padding:42px;
  border:1px solid var(--rr-border-olive); border-radius:var(--radius-md);
  background:
    radial-gradient(circle at 92% 5%,rgba(138,164,106,.12),transparent 18rem),
    linear-gradient(115deg,var(--rr-surface-raised),var(--rr-surface));
}
.rr-callout::after {
  content:"◇"; position:absolute; right:44px; bottom:22px; color:rgba(138,164,106,.22);
  font:400 80px/1 Inter,sans-serif;
}
.rr-callout h2 { max-width:760px; margin-bottom:12px; }
.rr-callout p { max-width:760px; margin-bottom:0; }
.rr-callout--split { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:42px; }
.rr-callout--split > * { position:relative; z-index:1; }
.rr-callout--split .wp-block-buttons { justify-content:flex-end; flex-wrap:wrap; }
.is-style-outline .wp-block-button__link { color:var(--rr-cream)!important; background:transparent!important; border:1px solid var(--rr-border-olive)!important; }

.rr-contact-layout { display:grid; grid-template-columns:.78fr 1.22fr; gap:22px; align-items:start; }
.rr-contact-panel,.rr-form-panel {
  margin:0!important; padding:34px; border:1px solid var(--rr-border); border-radius:var(--radius-md);
  background:var(--rr-surface);
}
.rr-contact-panel { position:sticky; top:112px; }
.rr-contact-panel h2,.rr-form-panel h2 { font-size:38px; }
.rr-contact-list { display:grid; gap:1px; margin:34px 0; padding:1px; background:var(--rr-border); }
.rr-contact-list > * { display:grid; gap:4px; padding:18px; color:var(--rr-text)!important; background:var(--rr-bg); }
.rr-contact-list small { color:var(--rr-text-muted); font-size:10px; text-transform:uppercase; letter-spacing:.11em; }
.rr-contact-list strong { overflow-wrap:anywhere; font-size:14px; line-height:1.6; }
.rr-fine-print { padding-top:18px; border-top:1px solid var(--rr-border); color:var(--rr-text-muted)!important; font-size:11px; }

.rr-form,.rr-contact-form,.rr-return-form,.rr-tradein-form {
  max-width:none; margin:0; padding:0; border:0; background:transparent;
}
.rr-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.rr-form label,.rr-contact-form label,.rr-return-form label,.rr-tradein-form label {
  display:grid; gap:7px; color:var(--rr-text-soft); font-size:12px; letter-spacing:.02em;
}
.rr-form input,.rr-form select,.rr-form textarea,
.rr-contact-form input,.rr-contact-form select,.rr-contact-form textarea,
.rr-return-form input,.rr-return-form select,.rr-return-form textarea,
.rr-tradein-form input,.rr-tradein-form select,.rr-tradein-form textarea {
  width:100%; min-height:48px; padding:12px 14px; color:var(--rr-cream);
  border:1px solid var(--rr-border); border-radius:var(--radius-xs); background:var(--rr-bg-soft);
}
.rr-form textarea,.rr-contact-form textarea,.rr-return-form textarea,.rr-tradein-form textarea { min-height:130px; resize:vertical; }
.rr-form input:focus,.rr-form select:focus,.rr-form textarea:focus,
.rr-contact-form input:focus,.rr-contact-form select:focus,.rr-contact-form textarea:focus,
.rr-return-form input:focus,.rr-return-form select:focus,.rr-return-form textarea:focus,
.rr-tradein-form input:focus,.rr-tradein-form select:focus,.rr-tradein-form textarea:focus {
  outline:0; border-color:var(--rr-primary-light); box-shadow:0 0 0 3px rgba(138,164,106,.1);
}
.rr-form-wide { grid-column:1/-1; }
.rr-consent { display:grid!important; grid-template-columns:auto 1fr!important; align-items:start; gap:10px!important; margin:22px 0; }
.rr-consent input { width:auto!important; min-height:auto!important; margin-top:3px; accent-color:var(--rr-primary); }
.rr-form-notice { max-width:none; margin:0 0 20px; padding:14px 16px; border:1px solid; border-radius:var(--radius-xs); }
.rr-form-success { color:#b9d6a3; border-color:rgba(111,141,85,.55); background:rgba(111,141,85,.1); }
.rr-form-error { color:#e3aaa5; border-color:rgba(167,83,78,.55); background:rgba(167,83,78,.1); }
.rr-honeypot { position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; overflow:hidden!important; }

.rr-faq-nav,.rr-legal-jump {
  display:flex; flex-wrap:wrap; gap:8px; margin-bottom:64px!important; padding-bottom:24px;
  border-bottom:1px solid var(--rr-border);
}
.rr-faq-nav a,.rr-legal-jump a {
  padding:10px 14px; color:var(--rr-text-soft)!important; border:1px solid var(--rr-border);
  border-radius:99px; background:var(--rr-surface); font-size:11px; text-transform:uppercase; letter-spacing:.08em;
}
.rr-faq-nav a:hover,.rr-legal-jump a:hover { color:var(--rr-bg)!important; border-color:var(--rr-primary-light); background:var(--rr-primary-light); }
.rr-faq-section { max-width:980px; margin:0 auto 76px!important; scroll-margin-top:120px; }
.rr-faq-section h2 { margin-bottom:28px; }
.rr-faq-item { margin:0; padding:0; border-top:1px solid var(--rr-border); background:transparent; }
.rr-faq-item:last-child { border-bottom:1px solid var(--rr-border); }
.rr-faq-item summary {
  position:relative; padding:21px 54px 21px 2px; color:var(--rr-cream); cursor:pointer;
  font:600 17px/1.45 Inter,sans-serif; list-style:none;
}
.rr-faq-item summary::-webkit-details-marker { display:none; }
.rr-faq-item summary::after {
  content:"+"; position:absolute; right:10px; top:50%; transform:translateY(-50%);
  color:var(--rr-primary-light); font:300 24px/1 Inter,sans-serif;
}
.rr-faq-item[open] summary::after { content:"−"; }
.rr-faq-item p { max-width:850px; margin:0; padding:0 54px 24px 2px; color:var(--rr-text-muted); }

.rr-stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; padding:1px; background:var(--rr-border); }
.rr-stat-grid > div { display:grid; gap:3px; min-height:142px; padding:26px; background:var(--rr-surface); }
.rr-stat-grid small { color:var(--rr-text-muted); font-size:10px; text-transform:uppercase; letter-spacing:.12em; }
.rr-stat-grid strong { margin-top:18px; color:var(--rr-cream); font:600 22px/1.15 "Playfair Display",serif; }
.rr-stat-grid span { color:var(--rr-primary-light); font-size:11px; }
.rr-page-columns { gap:22px; align-items:stretch!important; }
.rr-page-columns > .wp-block-column {
  padding:36px; border:1px solid var(--rr-border); border-radius:var(--radius-md); background:var(--rr-surface);
}
.rr-page-columns > .wp-block-column h2 { font-size:38px; }
.rr-check-list { list-style:none; margin:26px 0 0; padding:0; }
.rr-check-list li { position:relative; margin:0; padding:12px 0 12px 28px; border-top:1px solid var(--rr-border); }
.rr-check-list li::before { content:"✓"; position:absolute; left:2px; color:var(--rr-primary-light); }
.rr-steps-list { counter-reset:rr-step; list-style:none; margin:28px 0; padding:0; }
.rr-steps-list li {
  counter-increment:rr-step; position:relative; min-height:64px; margin:0; padding:18px 18px 18px 72px;
  border-top:1px solid var(--rr-border);
}
.rr-steps-list li::before {
  content:counter(rr-step,decimal-leading-zero); position:absolute; left:12px; top:17px; color:var(--rr-primary-light);
  font-size:11px; letter-spacing:.1em;
}
.rr-note {
  margin-block:24px; padding:22px 24px; color:var(--rr-text-soft);
  border-left:3px solid var(--rr-primary-light); background:rgba(138,164,106,.065);
}
.rr-note strong { color:var(--rr-cream); }
.rr-note p { margin:.4em 0 0; color:var(--rr-text-muted); }
.rr-legal-section { max-width:1020px; scroll-margin-top:120px; }
.rr-legal-section > p { max-width:940px; }

.rr-document-meta { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:26px!important; }
.rr-document-meta span { padding:8px 12px; color:var(--rr-text-muted); border:1px solid var(--rr-border); border-radius:99px; font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.rr-legal-document { max-width:1060px; margin-inline:auto!important; }
.rr-legal-document h2 {
  margin:72px 0 22px; padding-bottom:15px; border-bottom:1px solid var(--rr-border);
  font-size:clamp(26px,3vw,36px);
}
.rr-legal-document > h2:first-child { margin-top:34px; }
.rr-legal-document ol,.rr-legal-document ul { padding-left:22px; }
.rr-legal-document li { margin:11px 0; color:var(--rr-text-soft); }
.rr-table-wrap { overflow:auto; border:1px solid var(--rr-border); }
.rr-table-wrap table { width:100%; min-width:760px; border-collapse:collapse; background:var(--rr-surface); }
.rr-table-wrap th,.rr-table-wrap td { padding:15px; border-bottom:1px solid var(--rr-border); text-align:left; vertical-align:top; }
.rr-table-wrap th { color:var(--rr-primary-light); background:var(--rr-bg-soft); font-size:10px; text-transform:uppercase; letter-spacing:.09em; }
.rr-table-wrap td { color:var(--rr-text-soft); font-size:13px; }

.rr-blog-intro { max-width:860px; }
.rr-blog-query .wp-block-post-template { gap:20px; }
.rr-blog-query .wp-block-post {
  overflow:hidden; border:1px solid var(--rr-border); border-radius:var(--radius-md); background:var(--rr-surface);
  transition:transform .25s ease,border-color .25s ease;
}
.rr-blog-query .wp-block-post:hover { transform:translateY(-5px); border-color:var(--rr-border-olive); }
.rr-blog-query .wp-block-post-featured-image { margin:0; overflow:hidden; background:var(--rr-bg); }
.rr-blog-query .wp-block-post-featured-image img { transition:transform .45s ease; }
.rr-blog-query .wp-block-post:hover .wp-block-post-featured-image img { transform:scale(1.035); }
.rr-blog-card-body { padding:22px; }
.rr-blog-card-body .wp-block-post-date { color:var(--rr-primary-light); font-size:10px; text-transform:uppercase; letter-spacing:.1em; }
.rr-blog-card-body .wp-block-post-title { margin:10px 0; font-size:24px!important; }
.rr-blog-card-body .wp-block-post-excerpt { color:var(--rr-text-muted); font-size:13px; }
.rr-blog-card-body .wp-block-post-excerpt__more-link { display:inline-block; margin-top:12px; color:var(--rr-primary-light); text-transform:uppercase; letter-spacing:.08em; font-size:11px; }
.rr-blog-query .wp-block-query-pagination { margin-top:38px; }

.rr-wishlist__header { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:28px; }
.rr-wishlist__header h2 { margin:8px 0; }
.rr-wishlist__count { margin:0; color:var(--rr-text-muted)!important; font-size:12px; }
.rr-wishlist-clear { margin:0; }
.rr-button-link { min-height:auto; padding:8px 0; color:var(--rr-primary-light); border:0; border-bottom:1px solid currentColor; background:transparent; font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.rr-wishlist__empty { padding:42px; border:1px solid var(--rr-border); background:var(--rr-surface); text-align:center; }
.rr-wishlist__empty p { margin:0 0 18px; }
.rr-wishlist__products .products { grid-template-columns:repeat(4,minmax(0,1fr)); }
.rr-wishlist-product-control { margin:10px 0 0; }
.rr-wishlist-toggle { width:100%; min-height:40px; padding:0 14px; gap:8px; color:var(--rr-primary-light); border-color:var(--rr-border-olive); background:transparent; font-size:11px; }
.rr-wishlist-toggle.is-active { color:var(--rr-cream); }

.footer-socials span {
  display:grid; place-items:center; width:36px; height:36px; color:var(--rr-text-muted);
  border:1px solid var(--rr-border); border-radius:50%; cursor:default;
}
.footer-copy { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.footer-copy a:hover { color:var(--rr-primary-light); }
.footer-newsletter { min-width:min(100%,430px); }
.footer-newsletter .rr-form-notice { margin-bottom:8px; padding:8px 10px; font-size:10px; }
.footer-newsletter .rr-newsletter-fields { display:grid; grid-template-columns:1fr auto; }
.footer-newsletter .rr-newsletter-fields label { display:block; }
.footer-newsletter .rr-newsletter-fields input { height:42px; min-height:42px; border-radius:4px 0 0 4px; }
.footer-newsletter .rr-newsletter-fields button { min-height:42px; padding-inline:16px; border-radius:0 4px 4px 0; font-size:11px; }
.footer-newsletter .rr-consent { margin:8px 0 0; color:var(--rr-text-muted); font-size:9px; line-height:1.45; }
.footer-newsletter .rr-consent input { margin-top:2px; }
.rr-account-intro { margin-bottom:28px; padding:26px; border:1px solid var(--rr-border-olive); background:var(--rr-surface-raised); }
.rr-account-intro h2 { margin:8px 0 10px; font-size:32px; }
.rr-account-intro p:not(.eyebrow) { color:var(--rr-text-muted); }
.rr-account-intro > div { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.rr-account-intro .button--ghost { margin-left:0; background:transparent!important; }

@media (max-width:1024px) {
  .rr-card-grid--4,.rr-process-grid,.rr-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .rr-contact-layout { grid-template-columns:1fr; }
  .rr-contact-panel { position:static; }
  .rr-wishlist__products .products { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .rr-blog-query .wp-block-post-template { display:grid; grid-template-columns:repeat(2,minmax(0,1fr))!important; }
}
@media (max-width:767px) {
  .rr-page-hero { padding:44px 0 42px; }
  .rr-breadcrumbs { margin-bottom:24px; }
  .rr-page-hero .entry-title { font-size:42px; }
  .rr-page-excerpt { font-size:15px; }
  .rr-page-content { padding-block:50px 80px; }
  .rr-page-content > * + *,.rr-page-section { margin-top:52px; }
  .rr-card-grid--3,.rr-card-grid--4,.rr-process-grid,.rr-stat-grid { grid-template-columns:1fr; }
  .rr-info-card { min-height:190px; padding:24px; }
  .rr-process-step { min-height:190px; padding:24px; }
  .rr-process-step b { margin-bottom:24px; }
  .rr-callout,.rr-contact-panel,.rr-form-panel,.rr-page-columns > .wp-block-column { padding:24px; }
  .rr-callout--split { grid-template-columns:1fr; gap:24px; }
  .rr-callout--split .wp-block-buttons { justify-content:flex-start; }
  .rr-callout::after { display:none; }
  .rr-form-grid { grid-template-columns:1fr; }
  .rr-form-wide { grid-column:auto; }
  .rr-page-columns { gap:14px; }
  .rr-page-columns > .wp-block-column h2,.rr-contact-panel h2,.rr-form-panel h2 { font-size:31px; }
  .rr-faq-nav,.rr-legal-jump { flex-wrap:nowrap; overflow-x:auto; padding-bottom:16px; }
  .rr-faq-nav a,.rr-legal-jump a { flex:0 0 auto; }
  .rr-faq-item summary { padding-right:42px; font-size:15px; }
  .rr-faq-item p { padding-right:10px; }
  .rr-table-wrap { margin-inline:-14px; }
  .rr-wishlist__header { align-items:flex-start; flex-direction:column; }
  .rr-wishlist__products .products { grid-template-columns:1fr 1fr; gap:10px; }
  .rr-blog-query .wp-block-post-template { display:grid; grid-template-columns:1fr!important; }
  .footer-copy { align-items:flex-start; flex-direction:column; }
  .footer-newsletter .rr-newsletter-fields { grid-template-columns:1fr; gap:8px; }
  .footer-newsletter .rr-newsletter-fields input,.footer-newsletter .rr-newsletter-fields button { border-radius:4px; }
}

/* Premium consistency, responsive commerce and accessibility pass */
button,input,select,textarea { font:inherit; }
input[type="checkbox"],input[type="radio"] { accent-color:var(--rr-primary-light); }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible {
  outline:2px solid var(--rr-primary-light);
  outline-offset:3px;
}

.main-nav > ul { align-items:stretch; }
.main-nav > ul > li { display:flex; align-items:stretch; }
.main-nav > ul > li > a {
  display:inline-flex;
  align-items:center;
  min-height:75px;
  padding-block:0;
  color:var(--rr-cream-soft);
  font-size:12px;
  font-weight:600;
  line-height:1;
  letter-spacing:.065em;
}

.rr-catalog-hero {
  grid-column:1/-1;
  position:relative;
  overflow:hidden;
  margin-bottom:8px;
  padding:34px 38px 36px;
  border:1px solid var(--rr-border);
  border-radius:var(--radius-md);
  background:
    radial-gradient(circle at 88% 0,rgba(138,164,106,.12),transparent 24rem),
    linear-gradient(115deg,var(--rr-surface),var(--rr-bg-soft));
}
.rr-catalog-hero::after {
  content:"";
  position:absolute;
  right:40px;
  bottom:-74px;
  width:210px;
  height:210px;
  border:1px solid rgba(138,164,106,.11);
  border-radius:50%;
  box-shadow:0 0 0 44px rgba(138,164,106,.025);
  pointer-events:none;
}
.rr-catalog-breadcrumbs {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin-bottom:23px;
  color:var(--rr-text-muted);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.rr-catalog-breadcrumbs a:hover { color:var(--rr-primary-light); }
.rr-catalog-hero .eyebrow { margin:0 0 9px; }
.rr-catalog-hero h1 {
  position:relative;
  z-index:1;
  max-width:820px;
  margin:0 0 12px;
  font-size:clamp(40px,5vw,62px);
  letter-spacing:-.03em;
}
.rr-catalog-description {
  position:relative;
  z-index:1;
  max-width:760px;
  color:var(--rr-text-muted);
  font-size:14px;
}
.rr-catalog-description p { margin:0; }
.sidebar-title h2 {
  margin:0;
  font:600 12px/1 Inter,sans-serif;
  text-transform:uppercase;
  letter-spacing:.12em;
}
.filter-heading {
  display:block;
  margin-bottom:10px;
  color:var(--rr-cream-soft);
  font-size:11px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.filter-overlay { display:none; }
.shop-content .woocommerce-result-count { color:var(--rr-text-muted); font-size:12px; }
.shop-content .woocommerce-ordering select {
  min-height:44px;
  padding:8px 36px 8px 12px;
  color:var(--rr-cream);
  border:1px solid var(--rr-border);
  border-radius:var(--radius-xs);
  background:var(--rr-bg-soft);
}
.rr-card-condition {
  display:block;
  min-height:20px;
  margin:3px 0 6px;
  color:var(--rr-primary-light);
  font-size:10px;
  letter-spacing:.02em;
}
.woocommerce ul.products li.product .button { min-height:44px; }
.wishlist-button {
  width:44px;
  min-width:44px;
  min-height:44px;
  font-size:20px;
}

.rr-product-breadcrumb { margin:0 0 28px; }
.rr-product-breadcrumb .woocommerce-breadcrumb { margin:0; }
.custom-product-visual { padding-bottom:0; }
.rr-product-image-note {
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:10px;
  padding:12px 14px;
  color:var(--rr-text-muted);
  border:1px solid var(--rr-border);
  border-radius:var(--radius-xs);
  background:var(--rr-surface);
  font-size:11px;
}
.rr-product-image-note strong {
  flex:0 0 auto;
  color:var(--rr-primary-light);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.rr-single-wishlist { margin:10px 0 0; }
.rr-single-wishlist .rr-wishlist-toggle {
  width:100%;
  min-height:44px;
  gap:9px;
  color:var(--rr-cream-soft);
  border-color:var(--rr-border-olive);
  background:transparent;
}
.rr-single-wishlist .rr-wishlist-toggle:hover,
.rr-single-wishlist .rr-wishlist-toggle.is-active {
  color:var(--rr-bg);
  background:var(--rr-primary-light);
}
.rr-single-wishlist .rr-icon { width:17px; height:17px; }
.woocommerce div.product .product_meta {
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
  margin-top:20px;
  padding-top:18px;
  color:var(--rr-text-muted);
  border-top:1px solid var(--rr-border);
  font-size:11px;
}
.woocommerce div.product .product_meta a { color:var(--rr-primary-light); }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display:none!important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border-radius:4px 4px 0 0; }
.woocommerce .related.products > h2 { margin-top:54px; text-align:center; }
.woocommerce .related.products ul.products.columns-4 {
  grid-template-columns:repeat(auto-fit,minmax(220px,290px));
  justify-content:center;
}

.woocommerce-page form .form-row input.input-text,
.woocommerce-page form .form-row textarea,
.woocommerce-page form select,
.woocommerce-page .quantity .qty,
.woocommerce-page .coupon input.input-text,
.woocommerce-page #review_form textarea,
.woocommerce-page #review_form input[type="text"],
.woocommerce-page #review_form input[type="email"] {
  min-height:46px!important;
  color:var(--rr-cream)!important;
  border:1px solid var(--rr-border)!important;
  border-radius:var(--radius-xs)!important;
  background:var(--rr-bg-soft)!important;
  box-shadow:none!important;
}
.woocommerce-page form .form-row textarea,
.woocommerce-page #review_form textarea { min-height:132px!important; resize:vertical; }
.woocommerce-page input::placeholder,.woocommerce-page textarea::placeholder { color:#777b73; opacity:1; }
.woocommerce-page form .form-row input:focus,
.woocommerce-page form .form-row textarea:focus,
.woocommerce-page form select:focus,
.woocommerce-page .quantity .qty:focus {
  border-color:var(--rr-primary-light)!important;
  outline:2px solid rgba(138,164,106,.24);
  outline-offset:1px;
}
.woocommerce #review_form #respond .form-submit input {
  min-height:46px;
  color:var(--rr-cream);
  border:1px solid var(--rr-primary);
  background:var(--rr-primary);
}
.woocommerce-password-strength { margin-top:6px; padding:8px; color:var(--rr-text-dark); }
.show-password-input { min-width:44px; min-height:44px; }
.rr-consent > span { min-width:0; overflow-wrap:anywhere; }

.newsletter-grid .rr-newsletter-form { display:block; }
.newsletter-grid .rr-newsletter-fields { display:grid; grid-template-columns:minmax(0,1fr) auto; }
.newsletter-grid .rr-newsletter-fields label { display:block; }
.newsletter-grid .rr-newsletter-fields input { width:100%; min-height:46px; border-radius:4px 0 0 4px; }
.newsletter-grid .rr-newsletter-fields button { min-height:46px; border-radius:0 4px 4px 0; }
.newsletter-grid .rr-consent {
  margin:11px 0 0;
  color:var(--rr-text-muted);
  font-size:11px;
  line-height:1.5;
}
.footer-newsletter .rr-newsletter-fields input,
.footer-newsletter .rr-newsletter-fields button { min-height:44px; height:44px; }
.footer-newsletter .rr-newsletter-fields button { font-size:12px; }
.footer-newsletter .rr-consent { font-size:11px; line-height:1.5; }
.rr-table-wrap {
  position:relative;
  scrollbar-color:var(--rr-primary-light) var(--rr-bg);
  scrollbar-width:thin;
}
.rr-table-wrap:focus-visible { border-color:var(--rr-primary-light); }

.mobile-bottom-nav a { min-height:62px; }
.mobile-bottom-nav a.is-current {
  color:var(--rr-cream);
  background:linear-gradient(180deg,rgba(138,164,106,.12),transparent);
}
.mobile-bottom-nav a.is-current::before {
  content:"";
  position:absolute;
  top:0;
  width:32px;
  height:2px;
  background:var(--rr-primary-light);
}
.mobile-bottom-nav a.is-current > .rr-icon { color:var(--rr-primary-light); }

.woocommerce-cart .rr-page-hero,
.woocommerce-checkout .rr-page-hero,
.woocommerce-account .rr-page-hero { padding-block:52px 48px; }
.woocommerce-cart .rr-page-hero .rr-breadcrumbs,
.woocommerce-checkout .rr-page-hero .rr-breadcrumbs,
.woocommerce-account .rr-page-hero .rr-breadcrumbs { margin-bottom:22px; }
.woocommerce-cart .rr-page-hero .entry-title,
.woocommerce-checkout .rr-page-hero .entry-title,
.woocommerce-account .rr-page-hero .entry-title { font-size:clamp(40px,5vw,62px); }

@media (min-width:1200px) {
  .shop-layout { display:grid; grid-template-columns:245px minmax(0,1fr); }
  .shop-layout .shop-content ul.products.columns-4 { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .shop-sidebar { visibility:visible!important; transform:none!important; }
}

@media (max-width:1199px) {
  .shop-layout { display:block; }
  .filter-toggle {
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:44px;
    margin:0 0 22px;
  }
  .filter-toggle .rr-icon { width:17px; height:17px; }
  .shop-sidebar {
    position:fixed;
    z-index:1202;
    inset:0 0 0 auto;
    top:0;
    width:min(88vw,390px);
    height:100dvh;
    padding:22px;
    overflow-y:auto;
    overscroll-behavior:contain;
    visibility:hidden;
    pointer-events:none;
    transform:translateX(105%);
    transition:transform .25s ease,visibility 0s linear .25s;
    box-shadow:-28px 0 70px rgba(0,0,0,.55);
  }
  .shop-sidebar.is-open {
    visibility:visible;
    pointer-events:auto;
    transform:translateX(0);
    transition-delay:0s;
  }
  .filter-close {
    display:grid;
    place-items:center;
    width:44px;
    min-width:44px;
    min-height:44px;
    padding:0;
    color:var(--rr-cream);
    border:0;
    background:transparent;
    font-size:28px;
  }
  .filter-overlay {
    display:block;
    position:fixed;
    z-index:1201;
    inset:0;
    visibility:hidden;
    pointer-events:none;
    opacity:0;
    background:rgba(0,0,0,.72);
    transition:opacity .2s ease,visibility 0s linear .2s;
  }
  .filter-overlay.is-open {
    visibility:visible;
    pointer-events:auto;
    opacity:1;
    transition-delay:0s;
  }
  body.filter-open { overflow:hidden; }
  .shop-layout .shop-content ul.products.columns-4 { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width:767px) {
  .section-head {
    align-items:flex-start;
    flex-direction:column;
    gap:14px;
  }
  .section-head > a { align-self:flex-start; }
  .rr-hero .hero-grid > div > p:last-child {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
  }
  .rr-hero .hero-grid > div > p:last-child .button { margin-left:0; }
  .rr-catalog-hero {
    margin-bottom:20px;
    padding:26px 22px 28px;
  }
  .rr-catalog-hero::after { display:none; }
  .rr-catalog-breadcrumbs { margin-bottom:18px; }
  .rr-catalog-hero h1 { font-size:40px; }
  .rr-catalog-description { font-size:13px; }
  .shop-layout .shop-content ul.products.columns-4 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .rr-product-image-note {
    align-items:flex-start;
    flex-direction:column;
    gap:4px;
  }
  .woocommerce .related.products ul.products.columns-4 {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .newsletter-grid .rr-newsletter-fields { grid-template-columns:1fr; gap:8px; }
  .newsletter-grid .rr-newsletter-fields input,
  .newsletter-grid .rr-newsletter-fields button { border-radius:4px; }
  .mobile-bottom-nav a > span { font-size:11px; }
  .wishlist-button { top:8px; right:8px; }
  body.single-product { padding-bottom:132px; }
  .mobile-sticky-cart button { min-height:44px; }
  .footer-newsletter .rr-newsletter-fields input,
  .footer-newsletter .rr-newsletter-fields button { min-height:46px; height:46px; }
  .footer-newsletter .rr-consent { font-size:11px; }
  .woocommerce-cart table.shop_table_responsive tr.cart_item {
    display:grid!important;
    grid-template-columns:72px minmax(0,1fr) 44px;
    gap:7px 13px;
    margin-bottom:12px;
    padding:14px;
    border:1px solid var(--rr-border);
    background:var(--rr-surface);
  }
  .woocommerce-cart table.shop_table_responsive tr.cart_item td {
    padding:0!important;
    border:0!important;
    background:transparent!important;
  }
  .woocommerce-cart table.shop_table_responsive tr.cart_item td.product-thumbnail {
    display:block!important;
    grid-column:1;
    grid-row:1/5;
    text-align:left!important;
  }
  .woocommerce-cart table.shop_table_responsive tr.cart_item td.product-thumbnail::before { display:none; }
  .woocommerce-cart table.shop_table_responsive tr.cart_item td.product-thumbnail img { width:72px; height:72px; object-fit:contain; }
  .woocommerce-cart table.shop_table_responsive tr.cart_item td.product-name { grid-column:2; grid-row:1; text-align:left!important; }
  .woocommerce-cart table.shop_table_responsive tr.cart_item td.product-name::before { margin-inline-end:.35em; }
  .woocommerce-cart table.shop_table_responsive tr.cart_item td.product-remove { grid-column:3; grid-row:1; text-align:right!important; }
  .woocommerce-cart table.shop_table_responsive tr.cart_item td.product-remove a {
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    margin:-8px -8px 0 0;
  }
  .woocommerce-cart table.shop_table_responsive tr.cart_item td.product-price,
  .woocommerce-cart table.shop_table_responsive tr.cart_item td.product-quantity,
  .woocommerce-cart table.shop_table_responsive tr.cart_item td.product-subtotal {
    grid-column:2/4;
    display:flex!important;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    text-align:right!important;
  }
  .woocommerce-cart table.shop_table_responsive tr.cart_item td.product-price { grid-row:2; }
  .woocommerce-cart table.shop_table_responsive tr.cart_item td.product-quantity { grid-row:3; }
  .woocommerce-cart table.shop_table_responsive tr.cart_item td.product-subtotal { grid-row:4; }
  .woocommerce-cart .coupon {
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto;
    gap:8px;
  }
  .woocommerce-cart .coupon input.input-text,
  .woocommerce-cart .coupon button { width:auto!important; min-height:46px!important; }
}

@media (max-width:560px) {
  .woocommerce-checkout .form-row-first,
  .woocommerce-checkout .form-row-last {
    float:none!important;
    width:100%!important;
  }
}

.rr-consent {
  grid-template-columns:18px minmax(0,1fr)!important;
}
.rr-consent input[type="checkbox"] {
  justify-self:start;
  width:18px!important;
  min-width:18px!important;
  height:18px!important;
  min-height:18px!important;
  margin:2px 0 0!important;
}
.woocommerce a.checkout-button.button.alt,
.woocommerce button#place_order.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
  color:var(--rr-cream)!important;
  border-color:var(--rr-primary)!important;
  background:var(--rr-primary)!important;
}
.woocommerce a.checkout-button.button.alt:hover,
.woocommerce button#place_order.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
  color:var(--rr-text-dark)!important;
  border-color:var(--rr-primary-hover)!important;
  background:var(--rr-primary-hover)!important;
}
.woocommerce ul.products li.product .button,
.rr-wishlist__empty .button { color:var(--rr-cream)!important; }
.rr-wishlist__products ul.products,
.rr-wishlist__products li.product { list-style:none!important; }
.show-password-input { color:var(--rr-primary-light)!important; }
.rr-checkout-tools {
  margin:0 0 28px;
  padding:18px;
  border:1px solid var(--rr-border);
  border-radius:var(--radius-xs);
  background:var(--rr-surface);
}
.rr-checkout-tools > p { margin:0 0 14px; color:var(--rr-text-muted); font-size:12px; }
.rr-checkout-tools > p a { color:var(--rr-primary-light); }
.woocommerce form.rr-checkout-coupon {
  display:block!important;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
}
.rr-checkout-coupon > label {
  display:block;
  margin-bottom:7px;
  color:var(--rr-cream-soft);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.rr-checkout-coupon > div { display:grid; grid-template-columns:minmax(0,1fr) auto; }
.rr-checkout-coupon input {
  min-height:46px;
  padding:10px 13px;
  color:var(--rr-cream);
  border:1px solid var(--rr-border);
  border-radius:4px 0 0 4px;
  background:var(--rr-bg-soft);
}
.rr-checkout-coupon button { min-height:46px; border-radius:0 4px 4px 0; }

@media (max-width:767px) {
  .rr-faq-nav,.rr-legal-jump,.rr-table-wrap {
    scroll-snap-type:x proximity;
    scrollbar-width:none;
  }
  .rr-faq-nav::-webkit-scrollbar,
  .rr-legal-jump::-webkit-scrollbar,
  .rr-table-wrap::-webkit-scrollbar { display:none; }
  .rr-faq-nav a,.rr-legal-jump a { scroll-snap-align:start; }
  .rr-checkout-coupon > div { grid-template-columns:1fr; gap:8px; }
  .rr-checkout-coupon input,.rr-checkout-coupon button { border-radius:4px; }
}

/* Single journal article */
.rr-article-hero {
  position:relative;
  overflow:hidden;
  padding:72px 0 66px;
  border-bottom:1px solid var(--rr-border);
  background:
    radial-gradient(circle at 82% 8%,rgba(138,164,106,.12),transparent 28rem),
    linear-gradient(rgba(138,164,106,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(138,164,106,.025) 1px,transparent 1px),
    var(--rr-bg-soft);
  background-size:auto,32px 32px,32px 32px,auto;
}
.rr-article-hero::after {
  content:"";
  position:absolute;
  right:8%;
  bottom:-180px;
  width:370px;
  height:370px;
  border:1px solid rgba(138,164,106,.1);
  border-radius:50%;
  box-shadow:0 0 0 78px rgba(138,164,106,.022);
}
.rr-article-hero .rr-wrap { position:relative; z-index:1; }
.rr-article-hero h1 {
  max-width:1000px;
  margin:12px 0 20px;
  font-size:clamp(46px,6vw,78px);
  line-height:1.03;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.rr-article-lead { max-width:790px; color:var(--rr-text-soft); font-size:18px; }
.rr-article-meta {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:28px;
}
.rr-article-meta span {
  padding:7px 11px;
  color:var(--rr-text-muted);
  border:1px solid var(--rr-border);
  border-radius:99px;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.rr-article-shell {
  display:grid;
  grid-template-columns:minmax(0,900px) 280px;
  justify-content:center;
  gap:54px;
  padding-block:70px 100px;
}
.rr-article-cover {
  overflow:hidden;
  margin:0 0 46px;
  border:1px solid var(--rr-border);
  border-radius:var(--radius-md);
  background:var(--rr-surface);
}
.rr-article-cover img { width:100%; max-height:520px; object-fit:cover; }
.rr-article-content { max-width:820px; font-size:17px; line-height:1.8; }
.rr-article-content > :first-child { margin-top:0; }
.rr-article-content p,.rr-article-content li { color:var(--rr-text-soft); }
.rr-article-content h2 {
  margin:58px 0 18px;
  padding-top:8px;
  font-size:36px;
  scroll-margin-top:110px;
}
.rr-article-content h3 { margin:38px 0 14px; font-size:25px; }
.rr-article-content ul,.rr-article-content ol { padding-left:24px; }
.rr-article-content li { margin:9px 0; }
.rr-article-content a { color:var(--rr-primary-light); text-decoration:underline; text-underline-offset:3px; }
.rr-article-content blockquote {
  margin:36px 0;
  padding:24px 28px;
  border-left:3px solid var(--rr-primary-light);
  background:rgba(138,164,106,.065);
}
.rr-article-aside {
  position:sticky;
  top:110px;
  align-self:start;
  padding:25px;
  border:1px solid var(--rr-border-olive);
  border-radius:var(--radius-md);
  background:var(--rr-surface-raised);
}
.rr-article-aside h2 { margin:8px 0 13px; font-size:27px; }
.rr-article-aside p:not(.eyebrow) { color:var(--rr-text-muted); font-size:13px; }
.rr-article-aside a {
  display:block;
  padding:12px 0;
  color:var(--rr-primary-light);
  border-top:1px solid var(--rr-border);
  font-size:11px;
}
.rr-related-articles { border-top:1px solid var(--rr-border); background:var(--rr-surface); }
.rr-related-articles .journal-grid article > a { display:block; color:inherit; }
.rr-related-articles .journal-grid article span { color:var(--rr-primary-light); font-size:12px; }

@media (max-width:1024px) {
  .rr-article-shell { grid-template-columns:minmax(0,820px); }
  .rr-article-aside { position:static; }
}
@media (max-width:767px) {
  .rr-article-hero { padding:46px 0 44px; }
  .rr-article-hero::after { display:none; }
  .rr-article-hero h1 { font-size:42px; }
  .rr-article-lead { font-size:15px; }
  .rr-article-shell { gap:32px; padding-block:40px 70px; }
  .rr-article-cover { margin-bottom:32px; }
  .rr-article-content { font-size:16px; }
  .rr-article-content h2 { margin-top:44px; font-size:30px; }
}

/* Keep fixed drawers usable while an editor is signed in. */
.admin-bar .mobile-drawer,
.admin-bar .shop-sidebar {
  top:32px;
  height:calc(100dvh - 32px);
}
@media (max-width:782px) {
  .admin-bar .mobile-drawer,
  .admin-bar .shop-sidebar {
    top:46px;
    height:calc(100dvh - 46px);
  }
}

/* Premium mobile navigation */
@media (max-width:1320px) {
  .mobile-drawer {
    display:flex;
    flex-direction:column;
    width:min(92vw,390px);
    max-height:100dvh;
    padding:0;
    overflow:hidden;
    color:var(--rr-text);
    border-right:1px solid rgba(138,164,106,.32);
    background:
      linear-gradient(rgba(138,164,106,.018) 1px,transparent 1px),
      linear-gradient(90deg,rgba(138,164,106,.018) 1px,transparent 1px),
      radial-gradient(circle at 12% 0,rgba(138,164,106,.1),transparent 16rem),
      #0f1110;
    background-size:28px 28px,28px 28px,auto,auto;
    box-shadow:24px 0 70px rgba(0,0,0,.62);
  }
  .drawer-head {
    position:relative;
    z-index:3;
    display:flex;
    flex:0 0 auto;
    align-items:center;
    justify-content:space-between;
    min-height:72px;
    padding:10px 18px;
    border-bottom:1px solid var(--rr-border);
    background:rgba(15,17,16,.96);
    backdrop-filter:blur(16px);
  }
  .drawer-brand {
    display:flex;
    align-items:center;
    min-width:0;
    width:174px;
    height:48px;
    overflow:hidden;
  }
  .drawer-brand img {
    width:174px;
    max-width:none;
    max-height:none;
    height:auto;
    object-fit:contain;
    object-position:left center;
    mix-blend-mode:lighten;
    transform:translateY(-5px);
  }
  .drawer-close {
    display:grid;
    place-items:center;
    width:42px;
    min-width:42px;
    min-height:42px;
    padding:0;
    color:var(--rr-cream-soft);
    border:1px solid var(--rr-border-olive);
    border-radius:50%;
    background:rgba(31,35,30,.78);
    transition:color .2s ease,border-color .2s ease,background-color .2s ease,transform .2s ease;
  }
  .drawer-close .rr-icon { width:18px; height:18px; }
  .drawer-close:hover {
    color:var(--rr-bg);
    border-color:var(--rr-primary-light);
    background:var(--rr-primary-light);
    transform:rotate(4deg);
  }
  .drawer-body {
    flex:1 1 auto;
    min-height:0;
    padding:16px 18px 18px;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-width:thin;
    scrollbar-color:var(--rr-primary) transparent;
  }
  .drawer-kicker {
    display:flex;
    align-items:center;
    gap:9px;
    margin:0 0 10px;
    color:var(--rr-primary-light);
    font-size:9px;
    font-weight:600;
    letter-spacing:.18em;
    text-transform:uppercase;
  }
  .drawer-kicker::before {
    content:"";
    width:20px;
    height:1px;
    background:var(--rr-primary-light);
  }
  .mobile-drawer .rr-search {
    display:block;
    margin:0 0 12px;
  }
  .mobile-drawer .rr-search input {
    min-height:46px;
    padding:10px 48px 10px 14px;
    color:var(--rr-cream);
    border-color:var(--rr-border-strong);
    border-radius:8px;
    background:rgba(20,20,20,.9);
    font-size:13px;
  }
  .mobile-drawer .rr-search input:focus {
    outline:0;
    border-color:var(--rr-primary-light);
    box-shadow:0 0 0 3px rgba(138,164,106,.1);
  }
  .mobile-drawer .rr-search button {
    top:3px;
    right:3px;
    bottom:3px;
    width:42px;
    color:var(--rr-primary-light);
  }
  .mobile-drawer nav { display:block; }
  .drawer-home,
  .drawer-categories > summary {
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr) 18px;
    align-items:center;
    gap:11px;
    min-height:62px;
    padding:10px!important;
    color:var(--rr-text-soft);
    border:1px solid var(--rr-border)!important;
    border-radius:8px;
    background:rgba(20,20,20,.72);
    cursor:pointer;
    transition:border-color .2s ease,background-color .2s ease,color .2s ease;
  }
  .drawer-home:hover,
  .drawer-home:focus-visible,
  .drawer-home.is-current,
  .drawer-categories > summary:hover,
  .drawer-categories > summary:focus-visible {
    color:var(--rr-cream);
    border-color:var(--rr-border-olive)!important;
    background:var(--rr-surface-raised);
  }
  .drawer-row-icon {
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    color:var(--rr-primary-light);
    border:1px solid rgba(138,164,106,.25);
    border-radius:50%;
    background:rgba(138,164,106,.06);
  }
  .drawer-row-icon .rr-icon { width:17px; height:17px; }
  .drawer-row-copy {
    display:grid;
    min-width:0;
    gap:2px;
  }
  .drawer-row-copy strong {
    color:inherit;
    font:600 13px/1.25 Inter,sans-serif;
  }
  .drawer-row-copy small {
    overflow:hidden;
    color:var(--rr-text-muted);
    font:400 10px/1.35 Inter,sans-serif;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .drawer-home > .drawer-arrow,
  .drawer-chevron {
    width:17px;
    height:17px;
    color:var(--rr-primary-light);
  }
  .drawer-home:hover > .drawer-arrow { transform:translateX(2px); }
  .drawer-categories {
    margin:9px 0 12px;
    border:1px solid var(--rr-border);
    border-radius:8px;
    background:rgba(20,20,20,.54);
  }
  .drawer-categories > summary {
    border:0!important;
    border-radius:7px;
    list-style:none;
  }
  .drawer-categories > summary::-webkit-details-marker { display:none; }
  .drawer-categories .drawer-chevron { transition:transform .22s ease; }
  .drawer-categories[open] .drawer-chevron { transform:rotate(180deg); }
  .drawer-category-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
    padding:0 9px 9px;
  }
  .mobile-drawer .drawer-category-grid a {
    display:grid;
    justify-items:center;
    align-content:center;
    min-width:0;
    min-height:78px;
    padding:8px 4px;
    color:var(--rr-text-soft);
    border:1px solid var(--rr-border);
    border-radius:7px;
    background:var(--rr-bg-soft);
    text-align:center;
    transition:color .2s ease,border-color .2s ease,background-color .2s ease;
  }
  .drawer-category-grid .rr-icon {
    width:20px;
    height:20px;
    margin-bottom:6px;
    color:var(--rr-primary-light);
  }
  .drawer-category-grid strong {
    overflow:hidden;
    width:100%;
    color:inherit;
    font:600 10px/1.2 Inter,sans-serif;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .drawer-category-grid small {
    margin-top:3px;
    color:var(--rr-text-muted);
    font-size:8px;
    line-height:1;
    text-transform:uppercase;
    letter-spacing:.08em;
  }
  .drawer-category-grid a:hover,
  .drawer-category-grid a:focus-visible,
  .drawer-category-grid a.is-current {
    color:var(--rr-cream);
    border-color:var(--rr-primary-light);
    background:rgba(138,164,106,.08);
  }
  .drawer-nav-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
    margin-bottom:12px;
  }
  .mobile-drawer .drawer-nav-grid a {
    display:flex;
    align-items:center;
    gap:9px;
    min-height:46px;
    padding:9px 11px;
    color:var(--rr-text-soft);
    border:1px solid var(--rr-border);
    border-radius:7px;
    background:rgba(20,20,20,.62);
    font-size:11px;
    font-weight:600;
    transition:color .2s ease,border-color .2s ease,background-color .2s ease;
  }
  .drawer-nav-grid .rr-icon {
    flex:0 0 16px;
    width:16px;
    height:16px;
    color:var(--rr-primary-light);
  }
  .drawer-nav-grid a:hover,
  .drawer-nav-grid a:focus-visible,
  .drawer-nav-grid a.is-current {
    color:var(--rr-cream);
    border-color:var(--rr-border-olive);
    background:var(--rr-surface-raised);
  }
  .mobile-drawer .drawer-trade {
    position:relative;
    isolation:isolate;
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:82px;
    overflow:hidden;
    padding:14px 15px!important;
    color:var(--rr-cream);
    border:1px solid var(--rr-border-olive)!important;
    border-radius:8px;
    background:
      radial-gradient(circle at 100% 0,rgba(138,164,106,.2),transparent 9rem),
      linear-gradient(115deg,#20271d,#151814);
  }
  .drawer-trade::after {
    content:"";
    position:absolute;
    z-index:-1;
    right:-31px;
    width:100px;
    height:100px;
    border:1px solid rgba(138,164,106,.16);
    border-radius:50%;
  }
  .drawer-trade > span:first-child { display:grid; gap:2px; }
  .drawer-trade small {
    color:var(--rr-primary-light);
    font-size:8px;
    font-weight:600;
    letter-spacing:.18em;
    text-transform:uppercase;
  }
  .drawer-trade strong { font:600 16px/1.25 "Playfair Display",serif; }
  .drawer-trade em {
    color:var(--rr-text-muted);
    font-size:9px;
    font-style:normal;
  }
  .drawer-trade-arrow {
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    color:var(--rr-bg);
    border-radius:50%;
    background:var(--rr-primary-light);
    transition:transform .2s ease;
  }
  .drawer-trade-arrow .rr-icon { width:17px; height:17px; }
  .drawer-trade:hover .drawer-trade-arrow { transform:translateX(3px); }
  .drawer-account {
    display:grid;
    flex:0 0 auto;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1px;
    padding:1px;
    border-top:1px solid var(--rr-border);
    background:var(--rr-border);
  }
  .drawer-account a {
    display:grid;
    place-items:center;
    align-content:center;
    gap:5px;
    min-height:68px;
    padding:8px 3px;
    color:var(--rr-text-muted);
    background:#111311;
    font-size:9px;
    text-align:center;
    transition:color .2s ease,background-color .2s ease;
  }
  .drawer-account .rr-icon {
    width:18px;
    height:18px;
    color:var(--rr-primary-light);
  }
  .drawer-account a:hover,
  .drawer-account a:focus-visible,
  .drawer-account a.is-current {
    color:var(--rr-cream);
    background:var(--rr-surface-raised);
  }
  .drawer-home:focus-visible,
  .drawer-categories > summary:focus-visible,
  .drawer-category-grid a:focus-visible,
  .drawer-nav-grid a:focus-visible,
  .drawer-trade:focus-visible,
  .drawer-account a:focus-visible,
  .drawer-close:focus-visible {
    outline:2px solid var(--rr-primary-light);
    outline-offset:2px;
  }
  .drawer-overlay { background:rgba(0,0,0,.72); backdrop-filter:blur(3px); }
}

@media (max-width:400px) {
  .drawer-head { padding-inline:15px; }
  .drawer-brand { width:162px; height:46px; }
  .drawer-brand img { width:162px; transform:translateY(-4px); }
  .drawer-body { padding-inline:15px; }
}
