/*
Theme Name: Rusk Racing New
Theme URI: https://ruskracing.com/
Author: Rusk Racing
Description: Block theme that copies the new Rusk Racing home page look (Racy dark / Bright light). Built for WooCommerce with no Ecwid.
Version: 0.1.52
Requires at least: 6.4
Requires PHP: 7.4
License: Proprietary
Text Domain: rrd-new
*/
/* Layout idea: sticky 3-tier navigation (notice, main bar with dropdowns, studio CTA), then big "pick your ride" tiles, studio band, 4 steps, sitemap footer. */
:root{
  color-scheme:dark;
  --bg:#0d0e11; --panel:#17191e; --ink:#f1f2f4; --muted:#a4abb7; --line:#2a2d35;
  --accent:#ff5a2b; --accent-ink:#120805; --band:#1d2026; --band-ink:#f1f2f4;
  --display:'Barlow Condensed','Arial Narrow',Arial,sans-serif;
  --body:'Barlow',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    color-scheme:dark;
    --bg:#0d0e11; --panel:#17191e; --ink:#f1f2f4; --muted:#a4abb7; --line:#2a2d35;
    --accent:#ff5a2b; --accent-ink:#120805; --band:#1d2026; --band-ink:#f1f2f4;
  }
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --bg:#0d0e11; --panel:#17191e; --ink:#f1f2f4; --muted:#a4abb7; --line:#2a2d35;
  --accent:#ff5a2b; --accent-ink:#120805; --band:#1d2026; --band-ink:#f1f2f4;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.55}
a{color:inherit}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
h1,h2,h3{font-family:var(--display);text-wrap:balance;line-height:1.02;margin:0}
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:.03em;text-transform:uppercase;text-decoration:none;padding:12px 22px;border-radius:4px;border:2px solid var(--accent);background:var(--accent);color:var(--accent-ink);cursor:pointer}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn.small{font-size:16px;padding:8px 14px}

/* notice bar */
.notice{background:var(--band);color:var(--band-ink);font-size:14px}
.notice .wrap{display:flex;gap:16px;align-items:center;justify-content:space-between;padding-top:7px;padding-bottom:7px;flex-wrap:wrap}
.notice a{color:var(--band-ink);font-weight:600}
.notice .theme{background:none;border:1px solid currentColor;color:inherit;border-radius:20px;font:inherit;font-size:13px;padding:2px 12px;cursor:pointer}

/* header + nav */
header.site{position:sticky;top:0;z-index:50;background:var(--panel);border-bottom:3px solid var(--accent)}
.bar{display:flex;align-items:center;gap:20px;min-height:68px}
.logo{display:flex;flex-direction:column;text-decoration:none;line-height:1}
.logo b{font-family:var(--display);font-style:italic;font-weight:800;font-size:32px;letter-spacing:.01em;text-transform:uppercase}
.logo b span{color:var(--accent)}
.logo small{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:3px}
nav.main{margin-left:auto}
nav.main ul{list-style:none;margin:0;padding:0;display:flex;gap:2px;align-items:center}
.nav-item{position:relative}
.nav-btn,.nav-link{display:flex;align-items:center;gap:6px;font-family:var(--display);font-weight:700;font-size:20px;text-transform:uppercase;letter-spacing:.04em;padding:22px 14px;background:none;border:0;color:var(--ink);text-decoration:none;cursor:pointer}
.nav-btn::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .15s}
.nav-btn[aria-expanded="true"]{color:var(--accent)}
.nav-btn[aria-expanded="true"]::after{transform:rotate(225deg) translateY(-2px)}
.nav-btn:hover,.nav-link:hover{color:var(--accent)}
.drop{display:none;position:absolute;top:100%;left:0;min-width:280px;background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--accent);box-shadow:0 14px 30px rgba(0,0,0,.25);padding:8px}
.drop.open{display:block}
.drop a{display:block;text-decoration:none;padding:10px 12px;border-radius:3px;font-weight:600}
.drop a small{display:block;font-weight:400;color:var(--muted);font-size:14px;line-height:1.3}
.drop a:hover,.drop a:focus-visible{background:var(--bg)}
.drop .soon{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:var(--accent);color:var(--accent-ink);padding:1px 6px;border-radius:3px;margin-left:6px;vertical-align:2px}
.bar-cta{display:flex;gap:10px;align-items:center}
.burger{display:none;margin-left:auto;background:none;border:2px solid var(--ink);color:var(--ink);border-radius:4px;font-family:var(--display);font-weight:700;font-size:18px;text-transform:uppercase;padding:8px 14px;cursor:pointer}

/* hero */
.hero{padding:44px 0 36px}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center}
.eyebrow{font-family:var(--display);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-size:18px}
.hero h1{font-size:clamp(46px,7vw,92px);font-style:italic;font-weight:800;text-transform:uppercase;margin:8px 0 26px}
.hero p.lead{font-size:20px;max-width:34em;margin:0 0 22px;color:var(--muted)}
.hero .ctas{display:flex;gap:12px;flex-wrap:wrap}
.hero .help{margin-top:18px;font-size:15px;color:var(--muted)}
.hero .help a{font-weight:600}
.play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-decoration:none;background:rgba(0,0,0,.28);color:#fff}
.play:hover{background:rgba(0,0,0,.12)}
.play-btn{width:84px;height:84px;border-radius:50%;background:var(--accent);position:relative;box-shadow:0 6px 24px rgba(0,0,0,.45)}
.play-btn::after{content:"";position:absolute;left:34px;top:25px;border-left:26px solid var(--accent-ink);border-top:17px solid transparent;border-bottom:17px solid transparent}
.play-label{font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:.08em;text-transform:uppercase;background:rgba(0,0,0,.6);padding:3px 12px;border-radius:3px}
.plate-art{position:relative;aspect-ratio:16/9;border-radius:6px;overflow:hidden;background:var(--band);border:1px solid var(--line)}
.plate-art svg{width:100%;height:100%;display:block}
.plate-art figcaption{position:absolute;left:12px;bottom:10px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:rgba(0,0,0,.55);padding:3px 8px;border-radius:3px}

/* quick path strip */
.quick{background:var(--band);color:var(--band-ink)}
.quick .wrap{display:grid;grid-template-columns:repeat(2,1fr);gap:0}
.quick a{display:block;text-decoration:none;padding:18px 20px;border-left:1px solid rgba(255,255,255,.14)}
.quick a:first-child{border-left:0}
.quick a:hover{background:rgba(255,255,255,.06)}
.quick b{display:block;font-family:var(--display);font-size:22px;text-transform:uppercase;letter-spacing:.04em}
.quick span{font-size:14px;opacity:.78}

section{padding:56px 0}
.sec-head{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.sec-head h2{font-size:clamp(34px,4.6vw,54px);text-transform:uppercase;font-weight:700}
.sec-head p{margin:6px 0 0;color:var(--muted);max-width:36em}

/* ride tiles */
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.tile{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:230px;padding:20px;background:var(--panel);border:1px solid var(--line);border-radius:6px;text-decoration:none;overflow:hidden;transition:transform .15s,border-color .15s}
.tile:hover,.tile:focus-visible{transform:translateY(-3px);border-color:var(--accent)}
.tile .big{position:absolute;right:-6px;top:-14px;font-family:var(--display);font-style:italic;font-weight:800;font-size:150px;line-height:1;color:transparent;-webkit-text-stroke:2px var(--accent);opacity:.55;pointer-events:none}
.tile h3{font-size:34px;text-transform:uppercase;font-weight:700;position:relative}
.tile p{margin:4px 0 12px;color:var(--muted);font-size:15.5px;position:relative;max-width:22em}
.tile .go{font-family:var(--display);font-weight:700;font-size:18px;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);position:relative}
.tile .go::after{content:" \2192"}

/* studio band */
.studio{background:var(--band);color:var(--band-ink)}
.studio .wrap{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
.studio h2{font-size:clamp(36px,5vw,60px);text-transform:uppercase;font-style:italic;font-weight:800}
.studio p{opacity:.85;max-width:34em}
.studio ul{padding:0;margin:0 0 22px;list-style:none;display:grid;gap:8px}
.studio li{display:flex;gap:10px;align-items:flex-start}
.studio li::before{content:"";flex:none;width:10px;height:10px;margin-top:9px;background:var(--accent);transform:skew(-20deg)}
.studio .btn.ghost{color:var(--band-ink);border-color:var(--band-ink)}
.studio-cards{display:grid;gap:14px}
.studio-card{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;border:1px solid rgba(255,255,255,.18);border-radius:6px;text-decoration:none;background:rgba(255,255,255,.04)}
.studio-card:hover{border-color:var(--accent)}
.studio-card b{font-family:var(--display);font-size:26px;text-transform:uppercase;display:block;line-height:1.1}
.studio-card span{font-size:14.5px;opacity:.78}
.studio-card .tag{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border:1px solid currentColor;padding:2px 8px;border-radius:3px;white-space:nowrap}

/* steps */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:s}
.step{background:var(--panel);border:1px solid var(--line);border-top:4px solid var(--accent);border-radius:4px;padding:18px}
.step::before{counter-increment:s;content:counter(s);font-family:var(--display);font-style:italic;font-weight:800;font-size:46px;color:var(--accent);line-height:1}
.step h3{font-size:26px;text-transform:uppercase;margin:6px 0}
.step p{margin:0;color:var(--muted);font-size:15.5px}
.price-note{margin-top:20px;padding:16px 18px;border-left:5px solid var(--accent);background:var(--panel);border-radius:0 4px 4px 0}

/* trust */
.trust .wrap{display:grid;grid-template-columns:auto 1fr;gap:34px;align-items:center}
.since{text-align:center}
.since .vlogo{display:block;width:clamp(150px,18vw,230px);aspect-ratio:2000/1332;margin:0 auto;background:var(--ink);-webkit-mask:url(assets/images/RRD_LOGO_vert.png) center/contain no-repeat;mask:url(assets/images/RRD_LOGO_vert.png) center/contain no-repeat}
.since small{display:block;font-size:22px;font-style:normal;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);font-weight:700;margin-top:8px}
.trust p{margin:0 0 10px;max-width:40em}
.trust .links{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px}
.trust .links a{font-weight:600}

/* sister sites */
.sisters{padding:34px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sisters .wrap{display:flex;gap:14px 22px;align-items:center;flex-wrap:wrap}
.sisters h2{font-size:22px;text-transform:uppercase;letter-spacing:.08em;margin-right:6px}
.sisters a{text-decoration:none;font-family:var(--display);font-weight:700;font-size:20px;text-transform:uppercase;letter-spacing:.04em;padding:6px 14px;border:1px solid var(--line);border-radius:4px;background:var(--panel)}
.sisters a:hover{border-color:var(--accent);color:var(--accent)}
.sisters a.logo-link{background:#101216;border-color:#2a2e36;padding:4px 12px;display:inline-flex;align-items:center}
.sisters a.logo-link img{height:36px;width:auto;display:block}

/* footer */
footer.site{background:var(--band);color:var(--band-ink);padding:44px 0 26px}
.fcols{display:grid;grid-template-columns:1.3fr repeat(4,1fr);gap:28px}
footer h3{font-size:20px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px;color:var(--accent)}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:15.5px}
footer a{text-decoration:none;opacity:.88}
footer a:hover{opacity:1;text-decoration:underline}
footer .about p{font-size:15px;opacity:.8;margin:8px 0 14px}
.legal{margin-top:30px;padding-top:16px;border-top:1px solid rgba(255,255,255,.16);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:14px;opacity:.8}

/* mobile */
@media (max-width:980px){
  .burger{display:block}
  .bar-cta{display:none}
  nav.main{position:absolute;left:0;right:0;top:100%;background:var(--panel);border-bottom:3px solid var(--accent);margin:0;display:none;max-height:calc(100vh - 120px);overflow:auto}
  nav.main.open{display:block}
  nav.main ul{flex-direction:column;align-items:stretch;padding:8px 20px 18px}
  .nav-btn,.nav-link{width:100%;justify-content:space-between;padding:14px 4px;border-bottom:1px solid var(--line)}
  .drop{position:static;box-shadow:none;border:0;border-left:3px solid var(--accent);margin:4px 0 8px 4px;min-width:0}
  .mobile-cta{display:flex!important}
  .hero .wrap,.studio .wrap,.trust .wrap{grid-template-columns:1fr}
  .tiles{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(2,1fr)}
  .quick .wrap{grid-template-columns:repeat(2,1fr)}
  
  .fcols{grid-template-columns:repeat(2,1fr)}
  .fcols .about{grid-column:1/-1}
}
@media (max-width:560px){
  .tiles,.steps{grid-template-columns:1fr}
  .tile{min-height:190px}
  .quick .wrap{grid-template-columns:1fr}
  .quick a{border-left:0;border-top:1px solid rgba(255,255,255,.14)}
  .quick a:first-child{border-top:0}
}
.mobile-cta{display:none;gap:10px;padding:6px 20px 18px;flex-wrap:wrap}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* shop drawer (WooCommerce categories live inside) */
.shopbtn{display:flex;align-items:center;gap:10px;background:var(--accent);color:var(--accent-ink);border:0;border-radius:4px;padding:10px 14px;font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
.scrim{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:90;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s}
.scrim.open{opacity:1;visibility:visible}
.drawer{position:fixed;top:0;bottom:0;left:0;width:min(350px,92vw);background:#2b2e34;color:#fff;z-index:100;display:flex;flex-direction:column;transform:translateX(-102%);visibility:hidden;transition:transform .25s,visibility .25s;box-shadow:8px 0 30px rgba(0,0,0,.4)}
.drawer.open{transform:none;visibility:visible}
.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:3px solid var(--accent);background:#14161a;color:#fff}
.drawer-head h2{font-size:28px;text-transform:uppercase;font-style:italic;font-weight:800}
.drawer-close{background:none;border:2px solid #fff;color:#fff;border-radius:4px;font-family:var(--display);font-weight:700;font-size:18px;text-transform:uppercase;padding:6px 12px;cursor:pointer}
.drawer-body{flex:1;overflow:auto;padding:12px}
@media (max-width:980px){.shopbtn{padding:8px 10px;font-size:18px}.logo small{display:none}.logo b{font-size:26px}}
@media (prefers-reduced-motion:reduce){.drawer,.scrim{transition:none}}

/* logo is white on clear, so the header stays dark in both looks */
header.site{background:#14161a}
.logo img{display:block;height:50px;width:auto;max-width:100%}
.nav-btn,.nav-link{color:#f3f4f6}
.bar-cta .btn.ghost,.mobile-cta .btn.ghost{color:#f3f4f6;border-color:#f3f4f6}
.burger{color:#f3f4f6;border-color:#f3f4f6}
@media (max-width:980px){
  nav.main{background:#14161a}
  .nav-btn,.nav-link{border-bottom-color:rgba(255,255,255,.16)}
  .logo img{height:38px}
}
.plate-art img.poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}

/* keep our link colors over any plugin styles that restyle links */
:where(.wp-site-blocks) :where(header,main,footer) a{color:inherit!important}
.btn{color:var(--accent-ink)!important;white-space:nowrap}
.btn.ghost{color:var(--ink)!important}
.bar-cta .btn.ghost,.mobile-cta .btn.ghost{color:#f3f4f6!important}
.studio .btn.ghost{color:var(--band-ink)!important}
.tile .go{color:var(--accent)!important}
.sisters a:hover,.drop a:hover{color:var(--accent)!important}
.notice a{color:var(--band-ink)!important}
/* header fits on one line */
.bar{gap:14px}
.nav-btn{white-space:nowrap;padding-left:10px;padding-right:10px}
.logo img{height:44px}
@media (max-width:980px){.logo img{height:38px}.nav-btn{padding-left:4px;padding-right:4px}}
[hidden]{display:none!important}
/* phones: the Shop button is the only menu; the other links live in the footer */
@media (max-width:980px){.burger,nav.main{display:none!important}}
.tile.has-img{background:#0d0e11 var(--tile-img) no-repeat right 6px center/auto 94%;border-color:#2a2d35}
.tile.has-img::after{content:"";position:absolute;inset:0;background:linear-gradient(to right,rgba(13,14,17,.9) 0%,rgba(13,14,17,.5) 42%,rgba(13,14,17,0) 72%)}
.tile.has-img h3,.tile.has-img p{color:#fff!important;text-shadow:0 1px 6px rgba(0,0,0,.85)}
.tile.has-img h3,.tile.has-img p,.tile.has-img .go{position:relative;z-index:1}
.tile.has-img .big{display:none}
.tile.has-photo{background:#0d0e11 var(--tile-img) no-repeat;background-position:var(--tile-pos,center 38%);background-size:cover;border-color:#2a2d35}
.tile.has-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(13,14,17,.92) 0%,rgba(13,14,17,.58) 40%,rgba(13,14,17,.06) 100%)}
.tile.has-photo h3,.tile.has-photo p{color:#fff!important;text-shadow:0 1px 6px rgba(0,0,0,.85)}
.tile.has-photo h3,.tile.has-photo p,.tile.has-photo .go{position:relative;z-index:1}
.tile.has-photo .big{display:none}
.tile.has-photo .go,.tile.has-img .go{text-shadow:0 1px 6px rgba(0,0,0,.95)}
.tile.has-photo.vignette::after{background:linear-gradient(rgba(13,14,17,.3),rgba(13,14,17,.3)),linear-gradient(to top,rgba(13,14,17,.9) 0%,rgba(13,14,17,.45) 38%,rgba(13,14,17,0) 62%),radial-gradient(ellipse at center,rgba(13,14,17,0) 42%,rgba(13,14,17,.9) 100%)}
.hero .alt-link{margin:16px 0 0;font-family:var(--display);font-size:22px;letter-spacing:.03em;text-transform:uppercase}
.hero .alt-link a{text-decoration:underline;text-underline-offset:5px;font-weight:600}
.hero .alt-link a:hover{color:var(--accent)!important}
.hero .play,.hero .play .play-label{color:#fff!important}

/* ===== WordPress / WooCommerce additions ===== */
.wp-site-blocks{padding:0}
.wp-site-blocks>*{margin-block-start:0!important}
header.site.wp-block-template-part{position:sticky;top:0;z-index:50}
.admin-bar header.site.wp-block-template-part{top:32px}
@media (max-width:782px){.admin-bar header.site.wp-block-template-part{top:46px}}
header.site>.wrap.bar{background:transparent}
.shopbtn .lines{width:22px;height:2px;background:currentColor;position:relative;box-shadow:0 7px 0 currentColor,0 -7px 0 currentColor}
.cart-link{display:inline-flex;align-items:center;gap:8px;font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;color:#f3f4f6!important}
.cart-link:hover{color:var(--accent)!important}
.cart-link .cart-count{background:var(--accent);color:var(--accent-ink);border-radius:20px;min-width:24px;padding:0 7px;text-align:center;font-size:16px;line-height:24px}
.drawer-body{padding:0}
.shop-tree,.shop-tree ul{list-style:none;margin:0;padding:0}
.shop-tree li{border-bottom:1px solid rgba(255,255,255,.1)}
.shop-tree a{display:block;padding:14px 18px;text-decoration:none;color:#fff!important;font-weight:600}
.shop-tree a:hover{background:rgba(255,255,255,.1)}
.shop-tree details>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;font-weight:600;color:#fff}
.shop-tree details>summary::-webkit-details-marker{display:none}
.shop-tree details>summary::after{content:"";width:8px;height:8px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg);transition:transform .15s}
.shop-tree details[open]>summary::after{transform:rotate(225deg)}
.shop-tree details>summary:hover{background:rgba(255,255,255,.1)}
.shop-tree details ul{background:#3b3f47}
.shop-tree details ul a{padding-left:34px;font-weight:500}
.shop-tree details details>summary{padding-left:34px;font-weight:500}
.shop-tree details details ul{background:#454a53}
.shop-tree details details ul a{padding-left:50px}
.shop-tree details details details>summary{padding-left:50px}
.shop-tree details details details ul a{padding-left:66px}
.shop-empty{padding:18px;color:#fff}
.page-wrap{padding:44px 0 56px;min-height:50vh}
.page-wrap h1{font-size:clamp(40px,5.5vw,68px);text-transform:uppercase;font-style:italic;font-weight:800;margin:0 0 22px}
.page-wrap .entry>*+*{margin-top:1em}
.page-wrap .entry a{color:var(--accent)!important;text-decoration:underline}
.page-wrap .entry h2{font-size:clamp(28px,3.6vw,40px);text-transform:uppercase;margin-top:1.6em}
.page-wrap .entry h3{font-size:24px;text-transform:uppercase;margin-top:1.4em}
/* WooCommerce buttons use the same look as .btn */
.wc-block-components-button:not(.is-link),.wp-element-button,.woocommerce a.button,.woocommerce button.button,.woocommerce #respond input#submit{font-family:var(--display)!important;font-weight:700!important;font-size:20px!important;letter-spacing:.03em;text-transform:uppercase;border-radius:4px!important;background:var(--accent)!important;color:var(--accent-ink)!important;border:2px solid var(--accent)!important}
.woocommerce .price,.wc-block-components-product-price{font-weight:600}


/* ---- Product pages and shop pages (WooCommerce) ---- */
.product-page .woocommerce div.product{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:34px 44px;align-items:start}
.product-page .woocommerce div.product div.images,
.product-page .woocommerce div.product div.summary{float:none;width:auto;margin:0}
.product-page .woocommerce div.product .woocommerce-tabs,
.product-page .woocommerce div.product .related,
.product-page .woocommerce div.product .upsells{grid-column:1 / -1}
.product-page .product_title{font-size:clamp(34px,4.6vw,56px);text-transform:uppercase;font-style:italic;font-weight:800;margin:0 0 12px}
.product-page .summary .price{font-family:var(--display);font-weight:700;font-size:30px;color:var(--ink);margin:0 0 14px}
.product-page .woocommerce-product-details__short-description{margin:0 0 18px;color:var(--muted)}
.product-page .woocommerce-product-gallery{position:relative;margin:0}
.product-page .woocommerce-product-gallery__image img{display:block;width:100%;height:auto;border-radius:4px;background:#fff}
.product-page .woocommerce-product-gallery__trigger{position:absolute;top:10px;right:10px;z-index:9;background:var(--panel);border-radius:20px;width:36px;height:36px;text-align:center;line-height:36px;text-decoration:none;font-size:0}
.product-page .woocommerce-product-gallery__trigger::before{content:"+";font-size:22px;font-weight:700;color:var(--ink)}
/* slideshow arrows */
.product-page .flex-direction-nav{list-style:none;margin:0;padding:0}
.product-page .flex-direction-nav a{position:absolute;top:calc(var(--rrd-vh,300px) / 2 - 22px);z-index:10;width:44px;height:44px;margin:0;border-radius:50%;background:var(--accent);color:var(--accent-ink)!important;text-decoration:none;font-size:0;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 10px rgba(0,0,0,.3);opacity:.92}
.product-page .flex-direction-nav a:hover{opacity:1}
.product-page .flex-direction-nav a::before{content:"";width:12px;height:12px;border-top:3px solid currentColor;border-right:3px solid currentColor}
.product-page .flex-direction-nav .flex-prev{left:10px}
.product-page .flex-direction-nav .flex-prev::before{transform:rotate(-135deg);margin-left:5px}
.product-page .flex-direction-nav .flex-next{right:10px}
.product-page .flex-direction-nav .flex-next::before{transform:rotate(45deg);margin-right:5px}
.product-page .flex-direction-nav .flex-disabled{opacity:.25!important;pointer-events:none}
/* little pictures under the big one */
.product-page .flex-control-thumbs{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:10px 0 0;padding:0}
.product-page .flex-control-thumbs li{width:calc(25% - 6px);margin:0;float:none}
.product-page .flex-control-thumbs img{display:block;width:100%;height:auto;border-radius:3px;border:2px solid transparent;opacity:.6;cursor:pointer;background:#fff}
.product-page .flex-control-thumbs img.flex-active,.product-page .flex-control-thumbs img:hover{opacity:1;border-color:var(--accent)}
/* add to cart row */
.product-page form.cart{margin:0 0 18px}
.product-page .quantity .qty{width:5em;padding:8px;font:inherit}
.product-page .single_add_to_cart_button{margin-top:6px}
.product-page .product_meta{font-size:14px;color:var(--muted);margin-top:14px}
/* description tabs */
.product-page .woocommerce-tabs ul.tabs{display:flex;gap:6px;list-style:none;margin:0 0 -1px;padding:0;border-bottom:1px solid var(--line)}
.product-page .woocommerce-tabs ul.tabs li{margin:0;border:1px solid var(--line);border-bottom:0;background:var(--bg);border-radius:4px 4px 0 0}
.product-page .woocommerce-tabs ul.tabs li.active{background:var(--panel);border-top:3px solid var(--accent)}
.product-page .woocommerce-tabs ul.tabs li a{display:block;padding:10px 18px;text-decoration:none;font-family:var(--display);font-weight:700;font-size:20px;text-transform:uppercase;letter-spacing:.03em}
.product-page .woocommerce-tabs .panel{background:var(--panel);border:1px solid var(--line);border-top:0;padding:22px;margin:0}
/* related items and shop grids */
.shop-page ul.products,.product-page ul.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:20px;list-style:none;margin:0;padding:0}
.shop-page ul.products li.product,.product-page ul.products li.product{float:none;width:auto;margin:0;background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:12px;display:flex;flex-direction:column;gap:6px}
.shop-page ul.products li.product img,.product-page ul.products li.product img{width:100%;height:auto;border-radius:3px}
.shop-page .woocommerce-loop-product__title,.product-page .woocommerce-loop-product__title{font-family:var(--display);font-size:22px;text-transform:uppercase}
.shop-page .page-title{font-size:clamp(40px,5.5vw,68px);text-transform:uppercase;font-style:italic;font-weight:800;margin:0 0 22px}
.product-page .woocommerce-breadcrumb,.shop-page .woocommerce-breadcrumb{font-size:14px;color:var(--muted);margin:0 0 14px}
.product-page .woocommerce-breadcrumb a,.shop-page .woocommerce-breadcrumb a{color:var(--muted)}
@media (max-width:820px){
  .product-page .woocommerce div.product{grid-template-columns:1fr}
}


/* top bar search box (top left) */
.notice .nleft{display:flex;align-items:center;gap:8px 18px;flex-wrap:wrap}
.notice .nsearch{display:flex;align-items:center;gap:6px;margin:0}
.notice .nsearch input[type="search"]{width:190px;max-width:42vw;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.35);color:var(--band-ink);border-radius:20px;font:inherit;font-size:13px;padding:3px 12px;-webkit-appearance:none;appearance:none}
.notice .nsearch input::placeholder{color:var(--band-ink);opacity:.7}
.notice .nsearch input:focus{outline:2px solid var(--accent);outline-offset:1px;background:rgba(255,255,255,.18)}
.notice .nsearch button{background:var(--accent);color:#fff;border:0;border-radius:20px;font:inherit;font-size:13px!important;font-weight:600;padding:3px 12px!important;line-height:1.3;min-height:0;cursor:pointer}
@media (max-width:640px){.notice .nsearch input[type="search"]{width:130px}}


/* ---- Cart and checkout pages ---- */
.page-wrap .wc-block-cart,.page-wrap .wc-block-checkout{font-size:16px}
.page-wrap .wc-block-cart__main,.page-wrap .wc-block-checkout__main{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:18px 22px}
.page-wrap .wc-block-cart__sidebar,.page-wrap .wc-block-checkout__sidebar{background:var(--panel);border:1px solid var(--line);border-top:4px solid var(--accent);border-radius:4px;padding:18px 22px!important}
.page-wrap .wc-block-cart-items__header,.page-wrap .wc-block-components-totals-wrapper .wc-block-components-title,.page-wrap .wc-block-cart__totals-title{font-family:var(--display);text-transform:uppercase;letter-spacing:.06em}
.page-wrap .wc-block-cart-item__product a,.page-wrap .wc-block-components-product-name{font-family:var(--display);font-size:22px;font-weight:700;text-transform:uppercase;text-decoration:none;color:var(--ink)}
.page-wrap .wc-block-cart-item__product a:hover{color:var(--accent)}
.page-wrap .wc-block-components-totals-item__value,.page-wrap .wc-block-components-product-price{font-weight:600}
/* each chosen option on its own line (WooCommerce wraps each one in a span, with a " / " between) */
.page-wrap .wc-block-components-product-details{display:block;margin:6px 0 10px;padding:0;list-style:none;font-size:14px;color:var(--muted)}
.page-wrap .wc-block-components-product-details>span{display:block;margin:0 0 2px}
.page-wrap .wc-block-components-product-details>span>span[aria-hidden="true"]{display:none}
.page-wrap .wc-block-components-product-details__name{font-weight:600;color:var(--ink)}
.page-wrap .wc-block-components-product-details__value{display:inline}
.page-wrap .wc-block-components-checkout-place-order-button,.page-wrap .wc-block-cart__submit-button{margin-top:6px}
/* the general "links inside page text are orange and underlined" rule must not paint over cart buttons and product names */
.page-wrap .entry a.wc-block-components-button{color:var(--accent-ink)!important;text-decoration:none!important}
.page-wrap .entry .wc-block-cart-item__product a,.page-wrap .entry .wc-block-components-product-name{color:var(--ink)!important;font-family:var(--display);font-size:22px!important;font-weight:700;text-transform:uppercase;text-decoration:none!important}
.page-wrap .entry .wc-block-cart-item__product a:hover{color:var(--accent)!important}
.page-wrap .entry .wc-block-cart__totals-title,.page-wrap .entry .wc-block-components-title{margin:0 0 10px;font-size:22px;letter-spacing:.06em}
.page-wrap .entry .wc-block-components-checkout-step__title{margin:0;font-size:24px}


/* banner picture at the top of the cart page */
.page-banner{margin:0 0 22px}
.page-banner picture{display:block}
.page-banner img{display:block;width:100%;height:auto;border-radius:4px}


/* cart and checkout pages: no "Our other shops" strip (the cart banner already shows them) */
body.woocommerce-cart .sisters,body.woocommerce-checkout .sisters{display:none}
/* cart page: the banner has the RRD logo, so the small one next to the Shop button goes */
body.woocommerce-cart header.site .bar>a.logo{display:none}
.page-banner a{display:block}


/* ---- Checkout and cart form boxes: follow the Racy (dark) / Bright (light) colors ----
   WooCommerce paints these boxes white. In the dark look the labels turned white too, so they vanished. */
.page-wrap .wc-block-components-text-input input,
.page-wrap .wc-block-components-text-input input[type="text"],
.page-wrap .wc-block-components-text-input input[type="email"],
.page-wrap .wc-block-components-text-input input[type="tel"],
.page-wrap .wc-block-components-text-input input[type="number"],
.page-wrap .wc-block-components-text-input input[type="password"],
.page-wrap .wc-block-components-textarea,
.page-wrap .wc-block-components-combobox .components-combobox-control input,
.page-wrap .wc-block-components-address-form input,
.page-wrap .wc-blocks-components-select__select,
.page-wrap .wc-block-components-quantity-selector,
.page-wrap .wc-block-components-quantity-selector input{
  background-color:var(--bg)!important;color:var(--ink)!important;
  border:1px solid rgba(128,128,128,.6)!important;
  -webkit-text-fill-color:var(--ink)}
.page-wrap .wc-blocks-components-select__container{background-color:var(--bg)!important;border-radius:4px}
.page-wrap .wc-block-components-text-input label,
.page-wrap .wc-blocks-components-select__label,
.page-wrap .wc-block-components-combobox .components-form-field label{color:var(--muted)!important}
.page-wrap .wc-block-components-text-input input::placeholder{color:var(--muted)}
.page-wrap .wc-blocks-components-select__expand{fill:var(--ink)!important}
.page-wrap .wc-block-components-text-input input:focus,
.page-wrap .wc-blocks-components-select__select:focus{border-color:var(--accent)!important;box-shadow:0 0 0 1px var(--accent)!important;outline:none}
.page-wrap .wc-block-components-text-input input:-webkit-autofill,
.page-wrap .wc-block-components-text-input input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink)!important;box-shadow:0 0 0 1000px var(--bg) inset!important}
/* payment choices, notes, coupon box, checkbox labels */
.page-wrap .wc-block-components-radio-control__option,
.page-wrap .wc-block-components-radio-control-accordion-option,
.page-wrap .wc-block-components-checkbox__label,
.page-wrap .wc-block-components-totals-coupon__input input{color:var(--ink)}
.page-wrap .wc-block-components-radio-control__option,
.page-wrap .wc-block-components-radio-control-accordion-option{border-color:rgba(128,128,128,.6)!important}


/* ---- Same styling for the checkout page when WooCommerce draws it in its own layout ---- */
body.woocommerce-checkout .wc-block-cart,body.woocommerce-checkout .wc-block-checkout{font-size:16px}
body.woocommerce-checkout .wc-block-cart__main,body.woocommerce-checkout .wc-block-checkout__main{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:18px 22px}
body.woocommerce-checkout .wc-block-cart__sidebar,body.woocommerce-checkout .wc-block-checkout__sidebar{background:var(--panel);border:1px solid var(--line);border-top:4px solid var(--accent);border-radius:4px;padding:18px 22px!important}
body.woocommerce-checkout .wc-block-cart-items__header,body.woocommerce-checkout .wc-block-components-totals-wrapper .wc-block-components-title,body.woocommerce-checkout .wc-block-cart__totals-title{font-family:var(--display);text-transform:uppercase;letter-spacing:.06em}
body.woocommerce-checkout .wc-block-cart-item__product a,body.woocommerce-checkout .wc-block-components-product-name{font-family:var(--display);font-size:22px;font-weight:700;text-transform:uppercase;text-decoration:none;color:var(--ink)}
body.woocommerce-checkout .wc-block-cart-item__product a:hover{color:var(--accent)}
body.woocommerce-checkout .wc-block-components-totals-item__value,body.woocommerce-checkout .wc-block-components-product-price{font-weight:600}
/* each chosen option on its own line (WooCommerce wraps each one in a span, with a " / " between) */
body.woocommerce-checkout .wc-block-components-product-details{display:block;margin:6px 0 10px;padding:0;list-style:none;font-size:14px;color:var(--muted)}
body.woocommerce-checkout .wc-block-components-product-details>span{display:block;margin:0 0 2px}
body.woocommerce-checkout .wc-block-components-product-details>span>span[aria-hidden="true"]{display:none}
body.woocommerce-checkout .wc-block-components-product-details__name{font-weight:600;color:var(--ink)}
body.woocommerce-checkout .wc-block-components-product-details__value{display:inline}
body.woocommerce-checkout .wc-block-components-checkout-place-order-button,body.woocommerce-checkout .wc-block-cart__submit-button{margin-top:6px}
/* the general "links inside page text are orange and underlined" rule must not paint over cart buttons and product names */
body.woocommerce-checkout a.wc-block-components-button{color:var(--accent-ink)!important;text-decoration:none!important}
body.woocommerce-checkout .wc-block-cart-item__product a,body.woocommerce-checkout .wc-block-components-product-name{color:var(--ink)!important;font-family:var(--display);font-size:22px!important;font-weight:700;text-transform:uppercase;text-decoration:none!important}
body.woocommerce-checkout .wc-block-cart-item__product a:hover{color:var(--accent)!important}
body.woocommerce-checkout .wc-block-cart__totals-title,body.woocommerce-checkout .wc-block-components-title{margin:0 0 10px;font-size:22px;letter-spacing:.06em}
body.woocommerce-checkout .wc-block-components-checkout-step__title{margin:0;font-size:24px}


/* banner picture at the top of the cart page */
.page-banner{margin:0 0 22px}
.page-banner picture{display:block}
.page-banner img{display:block;width:100%;height:auto;border-radius:4px}


/* cart and checkout pages: no "Our other shops" strip (the cart banner already shows them) */
body.woocommerce-cart .sisters,body.woocommerce-checkout .sisters{display:none}
/* cart page: the banner has the RRD logo, so the small one next to the Shop button goes */
body.woocommerce-cart header.site .bar>a.logo{display:none}
.page-banner a{display:block}


/* ---- Checkout and cart form boxes: follow the Racy (dark) / Bright (light) colors ----
   WooCommerce paints these boxes white. In the dark look the labels turned white too, so they vanished. */
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-text-input input[type="text"],
body.woocommerce-checkout .wc-block-components-text-input input[type="email"],
body.woocommerce-checkout .wc-block-components-text-input input[type="tel"],
body.woocommerce-checkout .wc-block-components-text-input input[type="number"],
body.woocommerce-checkout .wc-block-components-text-input input[type="password"],
body.woocommerce-checkout .wc-block-components-textarea,
body.woocommerce-checkout .wc-block-components-combobox .components-combobox-control input,
body.woocommerce-checkout .wc-block-components-address-form input,
body.woocommerce-checkout .wc-blocks-components-select__select,
body.woocommerce-checkout .wc-block-components-quantity-selector,
body.woocommerce-checkout .wc-block-components-quantity-selector input{
  background-color:var(--bg)!important;color:var(--ink)!important;
  border:1px solid rgba(128,128,128,.6)!important;
  -webkit-text-fill-color:var(--ink)}
body.woocommerce-checkout .wc-blocks-components-select__container{background-color:var(--bg)!important;border-radius:4px}
body.woocommerce-checkout .wc-block-components-text-input label,
body.woocommerce-checkout .wc-blocks-components-select__label,
body.woocommerce-checkout .wc-block-components-combobox .components-form-field label{color:var(--muted)!important}
body.woocommerce-checkout .wc-block-components-text-input input::placeholder{color:var(--muted)}
body.woocommerce-checkout .wc-blocks-components-select__expand{fill:var(--ink)!important}
body.woocommerce-checkout .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wc-blocks-components-select__select:focus{border-color:var(--accent)!important;box-shadow:0 0 0 1px var(--accent)!important;outline:none}
body.woocommerce-checkout .wc-block-components-text-input input:-webkit-autofill,
body.woocommerce-checkout .wc-block-components-text-input input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink)!important;box-shadow:0 0 0 1000px var(--bg) inset!important}
/* payment choices, notes, coupon box, checkbox labels */
body.woocommerce-checkout .wc-block-components-radio-control__option,
body.woocommerce-checkout .wc-block-components-radio-control-accordion-option,
body.woocommerce-checkout .wc-block-components-checkbox__label,
body.woocommerce-checkout .wc-block-components-totals-coupon__input input{color:var(--ink)}
body.woocommerce-checkout .wc-block-components-radio-control__option,
body.woocommerce-checkout .wc-block-components-radio-control-accordion-option{border-color:rgba(128,128,128,.6)!important}

/* checkout page in WooCommerce's own layout: spacing, banner, readable text */
body.woocommerce-checkout .wp-site-blocks>.wp-block-group{max-width:1180px;margin:0 auto!important;padding:24px 20px 56px}
body.woocommerce-checkout .checkout-banner{margin:0 0 22px}
body.woocommerce-checkout{color:var(--ink)}

.checkout-title{font-family:var(--display);font-size:clamp(40px,5.5vw,68px);line-height:1.02;text-transform:uppercase;font-style:italic;font-weight:800;margin:0 0 22px;text-wrap:balance}

/* checkout page: the logo at the top left, a quarter of the full banner width */
body.woocommerce-checkout .checkout-banner{width:25%;min-width:200px;max-width:100%;margin:0 0 18px}

/* Gallery with many pictures: 5 little pictures plus a "+N more" tile (6 across). */
.product-page .flex-control-thumbs[data-rrd-more].rrd-collapsed li.rrd-extra{display:none}
.product-page .flex-control-thumbs[data-rrd-more]:has(.rrd-more) li{width:calc(16.666% - 7px)}
.product-page .flex-control-thumbs li.rrd-more{display:flex;align-items:center;justify-content:center}
.product-page .flex-control-thumbs li.rrd-more button{width:100%;aspect-ratio:1/1;border:2px solid var(--accent);border-radius:3px;background:var(--panel);color:var(--accent);font:600 14px/1.2 'Barlow Condensed',sans-serif;text-transform:uppercase;cursor:pointer;padding:4px}
.product-page .flex-control-thumbs li.rrd-more button:hover{background:var(--accent);color:#fff}

/* Hide the "pay later" message (Klarna / Affirm / Afterpay) under prices. Rob, Nov 4: hide for now, decide at launch. */
#payment-method-message,.wc-block-components-payment-method-message{display:none!important}

.account-link{display:inline-flex;align-items:center;font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;color:#f3f4f6!important;margin-right:14px}
.account-link:hover{color:var(--accent)!important}
.account-link.is-in{color:var(--accent)!important}
@media(max-width:700px){.account-link{font-size:16px;margin-right:8px}}

/* Bike finder (top bar) */
.bikefinder{display:flex;align-items:center;gap:6px;margin:0;flex-wrap:wrap;font-size:13px}
.bikefinder label{font-weight:600}
.bikefinder select{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.35);color:var(--band-ink);border-radius:20px;font:inherit;font-size:13px;padding:3px 10px;max-width:150px;-webkit-appearance:none;appearance:none}
.bikefinder select option{color:#111;background:#fff}
.bikefinder select:focus{outline:2px solid var(--accent);outline-offset:1px}
.bikefinder select:disabled{opacity:.5}
.bikefinder .bf-go{background:var(--accent);color:#fff;border:0;border-radius:20px;font:inherit;font-size:13px;font-weight:600;padding:3px 14px;line-height:1.3;min-height:0;cursor:pointer}
.bikefinder .bf-go:disabled{opacity:.5;cursor:default}
.bikefinder .bf-mine{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.bikefinder .bf-mine b{font-weight:700}
.bikefinder .bf-change{background:none;border:0;color:inherit;text-decoration:underline;font:inherit;font-size:13px;cursor:pointer;padding:0}
.bikefinder .bf-garage{max-width:170px}.bikefinder .bf-sep{opacity:.5}@media (max-width:640px){.bikefinder select{max-width:112px}}

.rrd-garage-list{list-style:none;margin:0 0 1em;padding:0}.rrd-garage-list li{display:flex;align-items:center;gap:12px;padding:6px 0;border-bottom:1px solid rgba(128,128,128,.25)}

.rrd-design-list{list-style:none;margin:0 0 1.5em;padding:0}.rrd-design-list li{display:flex;align-items:center;gap:14px;padding:10px 0;border-bottom:1px solid rgba(128,128,128,.25);flex-wrap:wrap}.rrd-design-list img{width:120px;height:80px;object-fit:cover;border-radius:6px;display:block}.rrd-design-noimg{width:120px;height:80px;background:rgba(128,128,128,.15);border-radius:6px}.rrd-design-info{flex:1;min-width:160px}.rrd-design-btns{display:flex;gap:8px}

.cart-link{position:relative;padding:2px 6px}.cart-link .cart-icon{display:block}.cart-link .cart-count{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;box-sizing:border-box;font-size:12px;line-height:20px;font-weight:700;font-family:var(--body,inherit);letter-spacing:0;display:none}.cart-link.has-items .cart-count{display:block}

/* product grids: every card the same size; picture, name and price share the space, the button sits at the bottom, smaller */
.shop-page ul.products li.product,.product-page ul.products li.product{height:100%}
.shop-page ul.products li.product a.woocommerce-LoopProduct-link,.product-page ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;gap:6px;flex:1 1 auto;text-decoration:none}
.shop-page ul.products li.product img,.product-page ul.products li.product img{aspect-ratio:4/3;height:auto;object-fit:contain;margin:0}
.shop-page ul.products li.product .woocommerce-loop-product__title,.product-page ul.products li.product .woocommerce-loop-product__title{font-size:20px;line-height:1.15;min-height:2.3em;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.shop-page ul.products li.product .price,.product-page ul.products li.product .price{margin-top:auto}
.shop-page ul.products li.product a.button,.product-page ul.products li.product a.button{font-size:13px!important;padding:.4em .9em!important;line-height:1.2!important;margin-top:4px;align-self:center;text-align:center}

/* Shop menu: drops down under the Shop button (v0.1.32) */
.drawer{top:var(--dd-top,70px);bottom:auto;left:var(--dd-left,8px);width:min(380px,calc(100vw - 16px));max-height:calc(100vh - var(--dd-top,70px) - 12px);border-radius:0 0 8px 8px;transform:translateY(-10px);opacity:0;transition:transform .18s,opacity .18s,visibility .18s;box-shadow:0 12px 30px rgba(0,0,0,.45)}
.drawer.open{transform:none;opacity:1}
.drawer-head{padding:8px 14px}
.drawer-head h2{font-size:22px}
.drawer-close{font-size:15px;padding:4px 10px}
.scrim{background:rgba(0,0,0,.35)}

/* dark look only: the Racy/Bright button is gone */
.notice .theme,#themeBtn{display:none!important}

/* top bar: Find my bike on the right */
.notice .nleft{flex:1 1 auto;width:100%}
.notice .nleft{flex-direction:row-reverse}
.notice .nleft .bikefinder{margin-left:0}
.notice .nleft .nsearch{margin-left:auto}

/* static info pages (Contact, FAQs, Instructions, Ordering, Privacy, Shipping) */
.rrd-page{max-width:800px;margin:0 auto;padding:10px 0 56px}
.rrd-page h2{font-size:clamp(24px,3.2vw,34px);text-transform:uppercase;margin:34px 0 12px}
.rrd-page h3,.rrd-page h3.q{font-size:20px;margin:24px 0 8px}
.rrd-page p{margin:0 0 16px;max-width:68ch}
.rrd-page a{color:var(--accent);text-decoration:underline}
.rrd-page .callout{border-left:5px solid var(--accent);background:var(--panel);padding:16px 18px;border-radius:0 4px 4px 0;font-weight:600}
.rrd-page .video-frame{position:relative;aspect-ratio:16/9;border-radius:6px;overflow:hidden;background:var(--band);margin:0 0 26px}
.rrd-page .video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.rrd-page .contact-card{font-style:normal;background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:18px 20px;margin:26px 0 16px;line-height:1.7}
.rrd-page .info-list,.rrd-page .toc,.rrd-page .steps-list{margin:0 0 20px;padding-left:22px;max-width:68ch}
.rrd-page .info-list li,.rrd-page .toc li,.rrd-page .steps-list li{margin:0 0 14px}
.rrd-page .toc{list-style:none;padding-left:0}
.rrd-page .toc li{margin:0 0 6px}
.rrd-page .info-list .note-line{margin-top:8px}
.rrd-page .info-list .note-line img{vertical-align:middle;margin-left:6px;background:#fff;border-radius:3px;padding:2px}
.rrd-page hr{border:0;border-top:1px solid var(--line);margin:26px 0}
.rrd-page img,.rrd-page .inline-img{max-width:100%;height:auto;border-radius:4px}
.rrd-page .fonts-thumb{border:1px solid var(--line);vertical-align:top}
.rrd-page .finish-video{display:block;width:100%;max-width:400px;border-radius:6px;background:#000}
.rrd-page .fonts-img{display:block;width:100%;max-width:800px;height:auto;border-radius:6px;margin-bottom:8px}
.rrd-page .warn-note,.rrd-page .red{color:#ff6b5a;font-weight:700}

/* "New in store" (and other product blocks): same cards as the shop; readable small orange button; equal heights */
.wc-block-grid__products{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:20px;list-style:none;margin:0;padding:0}
.wc-block-grid__product{float:none!important;width:auto!important;max-width:none!important;margin:0!important;background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:12px!important;display:flex!important;flex-direction:column;gap:6px;height:100%}
.wc-block-grid__product-link{display:flex;flex-direction:column;gap:6px;flex:1 1 auto;text-decoration:none;color:var(--ink)}
.wc-block-grid__product-image img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;border-radius:3px;margin:0}
.wc-block-grid__product .wc-block-grid__product-title{font-family:var(--display);font-size:20px;font-weight:700;line-height:1.15;min-height:2.3em;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-transform:uppercase;color:var(--ink)}
.wc-block-grid__product .wc-block-grid__product-price{margin-top:auto;text-align:left}
.wc-block-grid__product .wc-block-grid__product-add-to-cart{margin:4px 0 0;text-align:center}
.wc-block-grid__product .wc-block-grid__product-add-to-cart .wp-block-button__link,.wc-block-grid__product .wc-block-grid__product-add-to-cart a{color:var(--accent-ink)!important;background:var(--accent)!important;font-size:13px!important;padding:.4em .9em!important;line-height:1.2!important;width:auto;display:inline-block;text-align:center}

/* You might also like (bike pages) */
.rrd-also{margin:40px 0 10px;clear:both}
.rrd-also h2{font-size:clamp(24px,3.2vw,34px);text-transform:uppercase;margin:0 0 16px}
.rrd-also ul.products{grid-template-columns:repeat(auto-fill,minmax(210px,260px))}
.rrd-from{font-size:.8em;font-weight:600;opacity:.85;margin-right:2px}

/* Book a chat (Cal.com) floating button */
.rrd-book{cursor:pointer;position:fixed;right:18px;bottom:18px;z-index:60;display:inline-flex;align-items:center;gap:9px;font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;padding:11px 18px;border-radius:999px;background:var(--accent);color:var(--accent-ink);border:2px solid var(--accent);box-shadow:0 6px 18px rgba(0,0,0,.35);transition:transform .15s ease,box-shadow .15s ease}
.rrd-book:hover,.rrd-book:focus-visible{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.45);color:var(--accent-ink)}
.rrd-book-dot{width:9px;height:9px;border-radius:50%;background:#2fd36b;box-shadow:0 0 0 0 rgba(47,211,107,.7);animation:rrd-pulse 2s infinite}
@keyframes rrd-pulse{0%{box-shadow:0 0 0 0 rgba(47,211,107,.7)}70%{box-shadow:0 0 0 9px rgba(47,211,107,0)}100%{box-shadow:0 0 0 0 rgba(47,211,107,0)}}
@media (prefers-reduced-motion:reduce){.rrd-book,.rrd-book-dot{animation:none;transition:none}}
@media (max-width:600px){.rrd-book{right:12px;bottom:12px;font-size:15px;padding:9px 14px}}

/* rrd gift card select */
select#gift-card-amount{background-color:#3b3b3b;color:#fff;padding:8px 10px}
select#gift-card-amount option{background-color:#3b3b3b;color:#fff}

/* rrd studio button palette */
a.btn[href*="-studio"]::before,
a.btn[href*="graphics-studio"]::before,
a[href*="-studio"][style*="ff6a00"]::before,
a[href*="graphics-studio"][style*="ff6a00"]::before{content:"";display:inline-block;width:1.15em;height:1.05em;margin-right:.45em;vertical-align:-.2em;background:url(https://ruskracing.com/new/wp-content/uploads/2026/11/8e077007-image.png) center/contain no-repeat}
