/*
Theme Name: RiderMates
Description: A responsive motorcycle magazine with regional NZ, AU and UK editions, editable bike reviews and media galleries.
Version: 2.0.0
Author: RiderMates
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ridermates
Tags: news, blog, custom-logo, custom-menu, featured-images, editor-style
*/

/* =====================================================================
   RiderMates cohesion layer — added 2026-10-28
   Loaded on every page (app pages and WordPress templates) so both
   rendering systems share one shell, spacing rhythm and component style.
   ===================================================================== */
:root{--rm-gutter:24px;--rm-shell:1280px;--rm-gap:48px}
@media(max-width:760px){:root{--rm-gutter:16px;--rm-gap:32px}}
html,body{overflow-x:clip}

/* ---------- App pages (home, articles, bike/dealer/ride archives) ---------- */

/* One shell: header, main and footer all use 1280px max with the same gutter */
body header[data-rm-hdr]>div{max-width:var(--rm-shell)!important;padding-left:var(--rm-gutter)!important;padding-right:var(--rm-gutter)!important}
body .rm-main{padding-left:var(--rm-gutter)!important;padding-right:var(--rm-gutter)!important}
body .rm-footer>div:first-child{padding-left:var(--rm-gutter)!important;padding-right:var(--rm-gutter)!important}

/* Wordmark uses the site font everywhere */
body header[data-rm-hdr]>div>a:first-child,body header[data-rm-hdr]>div>a:first-child *,body .rm-footer-brand,body .rm-footer-brand *{font-family:Geist,system-ui,-apple-system,sans-serif!important}

/* Coloured sections become true full-width bands whose content lines up with the header */
body [data-theme] .rm-main :is(.rm-bike-finder,.rm-rides,.rm-shelf,.rm-dealers){
  margin:0 calc(50% - 50vw)!important;
  padding:var(--rm-gap) calc(50vw - 50%)!important;
  border-radius:0!important;border:0!important;
  border-top:1px solid var(--rm-border)!important;
}
/* Even vertical rhythm for the boxed sections between bands */
body [data-theme] .rm-main :is(.rm-ad,.rm-gear){margin-top:var(--rm-gap)!important;margin-bottom:var(--rm-gap)!important}
/* gear is always followed by the marketplace banner: avoid a double gap */
body [data-theme] .rm-main .rm-gear{margin-bottom:0!important}
body [data-theme] .rm-main :has(> .rm-partner-block){margin-top:var(--rm-gap)!important;margin-bottom:var(--rm-gap)!important}
body [data-theme] .rm-main [data-dc-tpl="205"]{margin-top:var(--rm-gap)!important;margin-bottom:0!important}

/* Footer bottom bar sits inside the shell */
body .rm-footer{margin-top:var(--rm-gap)!important}
body [data-theme] .rm-footer.rm-footer-compact>.rm-footer-bottom,body .rm-footer>.rm-footer-bottom{max-width:var(--rm-shell)!important;margin-left:auto!important;margin-right:auto!important;padding:16px var(--rm-gutter) 24px!important;box-sizing:border-box!important}

/* Buttons: primary = filled pill, secondary = outlined pill, same height */
body [data-theme] :is(button[data-dc-tpl="179"],button[data-dc-tpl="192"],a[data-dc-tpl="212"]){min-height:44px!important;padding:0 20px!important;border-radius:999px!important;font-weight:700!important}
body [data-theme] :is(button[data-dc-tpl="193"],a[data-dc-tpl="213"]){
  min-height:44px!important;padding:0 18px!important;border:1px solid var(--rm-border)!important;border-radius:999px!important;
  background:transparent!important;color:var(--rm-ink)!important;text-decoration:none!important;font-weight:700!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important}
body [data-theme] :is(button[data-dc-tpl="193"],a[data-dc-tpl="213"]):hover{border-color:var(--rm-teal)!important;color:var(--rm-teal)!important}

/* "See all" links: one style (teal, semibold, underline on hover only) */
body [data-theme] :is(a[data-dc-tpl="136"],a[data-dc-tpl="184"]),body [data-theme] .rm-main a:has(> span[data-dc-tpl="72"]),body [data-theme] .rm-main a > span[data-dc-tpl="72"]{
  font-size:14px!important;font-weight:600!important;color:var(--rm-teal)!important;text-decoration:none!important}
body [data-theme] :is(a[data-dc-tpl="136"],a[data-dc-tpl="184"]):hover,body [data-theme] .rm-main a:has(> span[data-dc-tpl="72"]):hover span{text-decoration:underline!important;text-underline-offset:3px}

/* Tags / badges: one small, clean pill style site-wide
   (category tag, "Specifications-based · Edition" tag, hero label, featured dealer, partner content) */
body [data-theme] .rm-main :is(.rm-lead span[data-dc-tpl="79"],span[data-dc-tpl="188"],span[data-dc-tpl="171"],span[data-dc-tpl="533"],span[data-dc-tpl="534"]){
  display:inline-flex!important;align-items:center!important;
  font-size:12px!important;font-weight:600!important;line-height:1.3!important;letter-spacing:.01em!important;text-transform:none!important;
  padding:3px 10px!important;border-radius:999px!important;border:1px solid transparent!important;box-shadow:none!important}
/* neutral tag: outlined, muted text */
html body [data-theme] .rm-main :is(span[data-dc-tpl="534"],span[data-dc-tpl="171"])[data-dc-tpl]{
  background:transparent!important;border-color:var(--rm-border)!important;color:var(--rm-muted)!important}
/* category tag: soft tint */
html body [data-theme] .rm-main span[data-dc-tpl="533"][data-dc-tpl]{background:var(--rm-peach)!important;color:var(--rm-action)!important}
body [data-theme] .rm-main [data-dc-tpl="532"]{gap:6px!important;align-items:center!important}
/* partner disclosure is long: show it as a plain small label instead of a wrapping pill */
html body [data-theme] .rm-main span[data-dc-tpl="171"][data-dc-tpl]{display:block!important;align-self:flex-start!important;width:auto!important;max-width:100%!important;padding:0!important;border:0!important;background:transparent!important;border-radius:0!important}

/* Newsletter: same border treatment as every other card */
body [data-theme] .rm-main .rm-newsletter{border:1px solid var(--rm-border)!important;border-top:1px solid var(--rm-border)!important;border-radius:20px!important}

/* Rides: balanced two-column grid on desktop (no orphan card) */
@media(min-width:761px){body [data-theme] .rm-main .rm-rides>[data-dc-tpl="137"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* Marketplace banner: eyebrow small, title reads as the heading */
body [data-theme] p[data-dc-tpl="208"]{font-size:12px!important;letter-spacing:.06em!important;margin-bottom:6px!important}
body [data-theme] p[data-dc-tpl="209"]{font-size:22px!important;font-weight:600!important;letter-spacing:-.01em!important;margin:0 0 6px!important}

/* Back-to-top no longer covers content on the left */
body button[aria-label="Back to top"]{left:auto!important;right:24px!important;bottom:24px!important}
html:has(#wpadminbar) body button[aria-label="Back to top"]{bottom:88px!important}
@media(max-width:760px){body button[aria-label="Back to top"]{display:none!important}}

/* Articles: comfortable reading width and a real headline */
body [data-theme] article[data-dc-tpl="221"]{max-width:760px!important;margin-left:auto!important;margin-right:auto!important;padding-top:32px!important}
body [data-theme] article[data-dc-tpl="221"]>h1{font-size:clamp(30px,4.4vw,44px)!important;line-height:1.12!important;letter-spacing:-.02em!important;margin:12px 0!important}
body [data-theme] article[data-dc-tpl="221"]>p[data-dc-tpl="224"]{font-size:19px!important;line-height:1.5!important;color:var(--rm-muted)!important;margin:0 0 16px!important}
body [data-theme] article[data-dc-tpl="221"]>span[data-dc-tpl="225"]{display:block!important;margin-bottom:24px!important}
body [data-theme] article[data-dc-tpl="221"] .rm-wp-content{font-size:17px!important;line-height:1.7!important}

/* ---------- WordPress templates (categories, pages, search, 404) ---------- */

/* Header matches the app header */
.site-header{position:sticky;top:var(--wp-admin--admin-bar--height,0px);z-index:50}
.header-main{min-height:76px;gap:24px}
.brand{font-size:22px;font-weight:700;letter-spacing:-.5px;display:inline-flex;align-items:center;gap:0}
.brand .brand-badge{margin-right:8px}
.brand .brand-badge{color:#fff;background:#2e2f36;font-size:18px;font-weight:600;letter-spacing:0;border-radius:8px;padding:0 6px;line-height:1.55}
.header-main .primary-nav{min-height:0;gap:2px}
.header-main .primary-nav ul{gap:2px}
.header-main .primary-nav a{padding:7px 10px;font-size:14px;font-weight:500;border-radius:0}
.header-main .primary-nav a:hover{color:var(--ink);box-shadow:inset 0 -2px var(--orange)}
.header-actions{gap:4px}
.header-actions>.edition-control select{min-height:36px;width:auto;padding:0 22px 0 8px;font-weight:700;font-size:14px;border:0;border-radius:6px;background-color:transparent}
.icon-button{font-size:18px}
.plus-link{color:var(--orange);font-weight:700;font-size:14px;text-decoration:none;margin-left:8px;white-space:nowrap}
.plus-link:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:1000px){.plus-link{display:none}.header-main .primary-nav a{padding-inline:7px}}
@media(max-width:760px){
  .header-main{min-height:64px}
  .header-main .primary-nav{position:absolute;left:0;right:0;top:100%;background:var(--paper);border-bottom:1px solid var(--border);padding:8px var(--rm-gutter) 16px}
  .header-main .primary-nav a{padding:10px 4px}
}

/* Topic chips match the app */
.category-strip{border-bottom:1px solid var(--border);padding-top:16px;padding-bottom:16px;margin-bottom:8px}
.category-strip a{border:0;background:var(--warm);color:var(--ink);padding:10px 16px;display:inline-flex;align-items:center}
.category-strip a:hover{background:var(--sage);color:var(--teal)}
.category-strip a[aria-current="page"]{background:var(--sage);color:var(--teal);font-weight:600}

/* Cards match app cards: image + text, no box */
.card{background:transparent;border:0;border-radius:0;overflow:visible}
.card-image{aspect-ratio:3/2;border-radius:12px;overflow:hidden}
.card-body{padding:14px 0 0}
.card .eyebrow{font-size:14px;font-weight:500;color:var(--teal)}
.card h3{font-size:18px;font-weight:600;line-height:1.3}

/* Page headings and spacing rhythm */
.page-heading{margin:32px 0 24px}
main.wrap{padding-bottom:var(--rm-gap)}

/* Ride cards: hide the "x going · y spots left" line (club rides don't publish live counts) */
body [data-theme] .rm-main span[data-dc-tpl="146"]{display:none!important}

/* Bikes page: budget filter row */
#rm-budget-box{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0 6px}
#rm-budget-box label{font-size:14px;font-weight:600;color:var(--rm-ink)}
#rm-budget-box select{min-height:40px;width:auto;border-radius:999px;padding:0 36px 0 14px;border:1px solid var(--rm-border);background-color:var(--rm-paper);color:var(--rm-ink);font:inherit;font-size:14px;cursor:pointer}
#rm-budget-box select:focus-visible{outline:2px solid var(--rm-focus);outline-offset:2px}
.rm-budget-count{font-size:14px;color:var(--rm-muted)}

/* Homepage alignment: shared edges, regular spacing and consistent card layouts. */
html body [data-theme] .rm-main [data-screen-label="Home"]{margin-top:0!important;padding-top:24px!important}
html body [data-theme] .rm-main [data-screen-label="Home"] > .rm-edition-intro{margin:0 0 12px!important;padding:0!important}
html body [data-theme] .rm-main [data-screen-label="Home"] > .rm-categories{margin:0!important;padding:0 0 16px!important;display:flex!important;gap:8px!important;flex-wrap:wrap!important}
html body [data-theme] .rm-main [data-screen-label="Home"] > :is(.rm-rides,.rm-shelf,.rm-dealers,.rm-gear){width:100%!important;box-sizing:border-box!important;margin:40px 0 0!important;padding:32px 0 0!important;border:0!important;border-top:1px solid var(--rm-border,#e6e6e6)!important;border-radius:0!important;background:transparent!important}
html body [data-theme] .rm-main [data-screen-label="Home"] > .rm-bike-finder{width:100%!important;box-sizing:border-box!important;margin:32px 0 0!important;padding:28px!important;border:1px solid var(--rm-border,#e6e6e6)!important;border-radius:16px!important}
html body [data-theme] .rm-main [data-screen-label="Home"] > .rm-lead-layout{display:grid!important;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)!important;gap:28px!important;margin:24px 0 0!important;align-items:stretch!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-lead{min-height:430px!important;border-radius:16px!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-lead-copy h2{font-size:clamp(25px,2.6vw,34px)!important;line-height:1.15!important;max-width:26ch!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-headlines{display:flex!important;flex-direction:column!important;gap:0!important;padding:0!important;height:100%!important;border:0!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-headlines > h2{margin:0 0 16px!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-headlines > a{flex:1!important;grid-template-columns:112px minmax(0,1fr)!important;gap:16px!important;padding:16px 0!important;align-items:start!important;border-bottom:1px solid var(--rm-border,#e6e6e6)!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-headlines > a img{width:112px!important;height:84px!important;aspect-ratio:4/3!important;object-fit:cover!important}
html body [data-theme] .rm-main [data-screen-label="Home"] :is(.rm-shelf,.rm-rides,.rm-dealers,.rm-gear) > div:first-child{display:flex!important;align-items:baseline!important;gap:10px 20px!important;flex-wrap:wrap!important;margin:0 0 22px!important;padding:0!important;border:0!important}
html body [data-theme] .rm-main [data-screen-label="Home"] :is(.rm-shelf,.rm-rides,.rm-dealers,.rm-gear) > div:first-child h2{font-size:24px!important;line-height:1.25!important;margin:0 auto 0 0!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-shelf [data-dc-tpl="158"]{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-shelf-reviews [data-dc-tpl="158"]{grid-template-columns:repeat(4,minmax(0,1fr))!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-shelf-guides [data-dc-tpl="158"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-shelf [data-dc-tpl="160"]{display:flex!important;flex-direction:column!important;gap:0!important;min-width:0!important;padding:0!important;border:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;transform:none!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-shelf [data-dc-tpl="162"]{width:100%!important;height:auto!important;aspect-ratio:16/10!important;object-fit:cover!important;border-radius:12px!important;grid-row:auto!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-shelf [data-dc-tpl="163"]{display:flex!important;flex-direction:column!important;gap:8px!important;padding:14px 0 0!important;flex:1!important;min-width:0!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-shelf [data-dc-tpl="165"]{font-size:18px!important;line-height:1.4!important;margin:0!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-shelf [data-dc-tpl="166"]{margin-top:auto!important;padding-top:8px!important}
html body [data-theme] .rm-main [data-screen-label="Home"] > .rm-ad{margin:32px 0 0!important;min-height:90px!important}
html body [data-theme] .rm-main [data-screen-label="Home"] > .rm-partner-block{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:24px!important;margin:40px 0 0!important;align-items:stretch!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-partner-block > a{display:flex!important;flex-direction:column!important;min-width:0!important;border-radius:16px!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-partner-block > a > img{width:100%!important;height:210px!important;min-height:0!important;object-fit:cover!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-newsletter{border-radius:16px!important;padding:28px!important;justify-content:center!important;gap:16px!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-newsletter input{min-width:0!important;width:100%!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-dealers [data-dc-tpl="185"]{gap:24px!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-dealers [data-dc-tpl="187"]{padding:24px!important;gap:10px!important;min-width:0!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-dealers [data-dc-tpl="191"]{margin-top:auto!important;padding-top:12px!important;display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-dealers [data-dc-tpl="191"] button{width:100%!important;justify-content:center!important}
html body [data-theme] .rm-main [data-screen-label="Home"] .rm-gear [data-dc-tpl="198"]{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:24px!important}
html body [data-theme] .rm-main [data-screen-label="Home"] > [data-dc-tpl="205"]{margin:40px 0 0!important;padding:28px!important;border-radius:16px!important;gap:24px!important}
@media(max-width:1199px){html body [data-theme] .rm-main [data-screen-label="Home"] .rm-shelf-reviews [data-dc-tpl="158"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:900px){html body [data-theme] .rm-main [data-screen-label="Home"] > .rm-lead-layout{grid-template-columns:1fr!important}html body [data-theme] .rm-main [data-screen-label="Home"] .rm-headlines > a{flex:none!important}html body [data-theme] .rm-main [data-screen-label="Home"] .rm-shelf [data-dc-tpl="158"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}html body [data-theme] .rm-main [data-screen-label="Home"] .rm-shelf-news [data-dc-tpl="158"]{grid-template-columns:1fr!important}html body [data-theme] .rm-main [data-screen-label="Home"] .rm-gear [data-dc-tpl="198"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){html body [data-theme] .rm-main [data-screen-label="Home"]{padding-top:20px!important}html body [data-theme] .rm-main [data-screen-label="Home"] > .rm-categories{flex-wrap:nowrap!important;overflow-x:auto!important;padding-bottom:12px!important}html body [data-theme] .rm-main [data-screen-label="Home"] > .rm-categories a{flex:none!important}html body [data-theme] .rm-main [data-screen-label="Home"] > :is(.rm-rides,.rm-shelf,.rm-dealers,.rm-gear){margin-top:32px!important;padding-top:24px!important}html body [data-theme] .rm-main [data-screen-label="Home"] > .rm-bike-finder{padding:20px!important}html body [data-theme] .rm-main [data-screen-label="Home"] .rm-lead{min-height:440px!important}html body [data-theme] .rm-main [data-screen-label="Home"] .rm-lead-copy{padding:22px!important}html body [data-theme] .rm-main [data-screen-label="Home"] > .rm-partner-block{grid-template-columns:1fr!important}html body [data-theme] .rm-main [data-screen-label="Home"] .rm-shelf [data-dc-tpl="158"],html body [data-theme] .rm-main [data-screen-label="Home"] .rm-rides > [data-dc-tpl="137"]{grid-template-columns:1fr!important}html body [data-theme] .rm-main [data-screen-label="Home"] .rm-newsletter{padding:22px!important}html body [data-theme] .rm-main [data-screen-label="Home"] > [data-dc-tpl="205"]{padding:22px!important}html body [data-theme] .rm-main [data-screen-label="Home"] :is(.rm-shelf,.rm-rides,.rm-dealers,.rm-gear) > div:first-child h2{flex-basis:100%!important;font-size:22px!important}}


/* Compact, app-style mobile browsing inspired by modern motorcycle marketplaces. */
@media(max-width:760px){
  :root{--rm-gutter:16px;--rm-gap:28px}
  html{scroll-padding-top:64px}
  body header[data-rm-hdr]{position:sticky!important;top:0!important;z-index:80!important;background:var(--rm-paper,#fff)!important;box-shadow:0 1px 10px rgba(0,0,0,.08)!important}
  html:has(#wpadminbar) body header[data-rm-hdr]{top:32px!important}
  body header[data-rm-hdr]>div{min-height:56px!important;padding:8px var(--rm-gutter)!important;gap:8px!important;flex-wrap:nowrap!important}
  body header[data-rm-hdr] [data-dc-tpl="22"]{font-size:18px!important;white-space:nowrap!important}
  body header[data-rm-hdr] [data-dc-tpl="23"]{border-radius:7px!important;padding:1px 5px!important}
  body header[data-rm-hdr] nav[data-dc-tpl="26"]{display:none!important}
  body header[data-rm-hdr] [data-dc-tpl="40"]{margin-left:auto!important;gap:2px!important;order:0!important}
  body header[data-rm-hdr] [data-dc-tpl="41"]{min-height:36px!important;padding:0 4px!important}
  body header[data-rm-hdr] [data-dc-tpl="44"],body header[data-rm-hdr] [data-dc-tpl="52"]{display:none!important}
  body header[data-rm-hdr] [data-dc-tpl="45"],body header[data-rm-hdr] .rm-menu-toggle{width:36px!important;height:36px!important;display:grid!important;place-items:center!important;border-radius:8px!important}
  body .rm-main{padding-bottom:28px!important}

  /* Every topic row behaves as a swipeable category rail. */
  body [data-theme] .rm-main .rm-categories,body [data-theme] .rm-main .rm-shelf > div:first-child{flex-wrap:nowrap!important;overflow-x:auto!important;overscroll-behavior-x:contain!important;scroll-snap-type:x proximity!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important}
  body [data-theme] .rm-main .rm-categories::-webkit-scrollbar,body [data-theme] .rm-main .rm-shelf > div:first-child::-webkit-scrollbar{display:none!important}
  body [data-theme] .rm-main .rm-categories a,body [data-theme] .rm-main .rm-shelf > div:first-child > *{flex:0 0 auto!important;scroll-snap-align:start!important}
  body [data-theme] .rm-main .rm-categories{gap:8px!important;padding:0 0 12px!important;margin:0 calc(-1 * var(--rm-gutter))!important;padding-left:var(--rm-gutter)!important;padding-right:var(--rm-gutter)!important;border-bottom:1px solid var(--rm-border,#e6e6e6)!important}
  body [data-theme] .rm-main .rm-categories a{min-height:38px!important;padding:0 14px!important;border-radius:999px!important;font-size:14px!important}

  /* Turn content groups into deliberate horizontal card sliders. */
  body [data-theme] .rm-main :is(.rm-shelf [data-dc-tpl="158"],.rm-rides > [data-dc-tpl="137"],.rm-gear [data-dc-tpl="198"]){display:grid!important;grid-auto-flow:column!important;grid-template-columns:none!important;grid-auto-columns:minmax(252px,78vw)!important;gap:14px!important;overflow-x:auto!important;overscroll-behavior-x:contain!important;scroll-snap-type:x mandatory!important;padding:0 var(--rm-gutter) 8px!important;margin:0 calc(-1 * var(--rm-gutter))!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important}
  body [data-theme] .rm-main :is(.rm-shelf [data-dc-tpl="158"],.rm-rides > [data-dc-tpl="137"],.rm-gear [data-dc-tpl="198"])::-webkit-scrollbar{display:none!important}
  body [data-theme] .rm-main :is(.rm-shelf [data-dc-tpl="160"],.rm-rides > [data-dc-tpl="137"] > *, .rm-gear [data-dc-tpl="198"] > *){scroll-snap-align:start!important}
  body [data-theme] .rm-main .rm-shelf [data-dc-tpl="162"]{aspect-ratio:16/10!important;border-radius:12px!important}
  body [data-theme] .rm-main .rm-shelf [data-dc-tpl="165"]{font-size:17px!important;line-height:1.33!important}
  body [data-theme] .rm-main .rm-shelf > div:first-child{margin-bottom:14px!important}
  body [data-theme] .rm-main .rm-shelf > div:first-child h2{font-size:21px!important}

  /* Dense mobile panels preserve hierarchy without large blank bands. */
  body [data-theme] .rm-main [data-screen-label="Home"]{padding-top:16px!important}
  body [data-theme] .rm-main [data-screen-label="Home"] > .rm-edition-intro{margin-bottom:10px!important;font-size:14px!important}
  body [data-theme] .rm-main [data-screen-label="Home"] > .rm-lead-layout{gap:20px!important;margin-top:18px!important}
  body [data-theme] .rm-main [data-screen-label="Home"] .rm-lead{min-height:390px!important}
  body [data-theme] .rm-main [data-screen-label="Home"] > :is(.rm-rides,.rm-shelf,.rm-dealers,.rm-gear){margin-top:28px!important;padding-top:22px!important}
  body [data-theme] .rm-main .rm-headlines > a{padding:13px 0!important;grid-template-columns:92px minmax(0,1fr)!important;gap:12px!important}
  body [data-theme] .rm-main .rm-headlines > a img{width:92px!important;height:70px!important}
  body [data-theme] .rm-main .rm-bike-finder,body [data-theme] .rm-main .rm-newsletter{border-radius:14px!important;padding:20px!important}

  /* Bike pages read as one compact product surface on phones. */
  body [data-theme] .rm-main [data-screen-label="Bike"]{padding-top:12px!important}
  body [data-theme] .rm-main :is(.rm-bike-hero,.rm-bike-summary){border-radius:14px!important}
  body [data-theme] .rm-main button{min-height:42px!important}
}


/* Mobile refinement: search-first header, dependable card rails and compact bike price bar. */
@media(max-width:760px){
  /* The search control is intentionally shaped like an app search field; it opens the existing site search. */
  body header[data-rm-hdr] [data-dc-tpl="41"]{display:none!important}
  body header[data-rm-hdr] [data-dc-tpl="45"]{width:min(43vw,164px)!important;height:38px!important;padding:0 10px!important;display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;border:1px solid var(--rm-border,#d9dddf)!important;border-radius:10px!important;background:var(--rm-paper,#fff)!important;color:var(--rm-muted,#5f6668)!important}
  body header[data-rm-hdr] [data-dc-tpl="45"]::after{content:"Search";font:500 15px/1 Geist,system-ui,sans-serif;letter-spacing:0;color:inherit}
  body header[data-rm-hdr] [data-dc-tpl="45"] svg{width:17px!important;height:17px!important;flex:none!important}
  body header[data-rm-hdr] .rm-menu-toggle{margin-left:2px!important;border:1px solid var(--rm-border,#d9dddf)!important;color:var(--rm-ink,#111)!important}

  /* Each swipe card has its own edge and a predictable text area. */
  body [data-theme] .rm-main .rm-shelf [data-dc-tpl="160"]{overflow:hidden!important;padding:0!important;border:1px solid var(--rm-border,#e2e4e5)!important;border-radius:16px!important;background:var(--rm-paper,#fff)!important;box-shadow:0 1px 2px rgba(0,0,0,.03)!important}
  body [data-theme] .rm-main .rm-shelf [data-dc-tpl="162"]{border-radius:0!important}
  body [data-theme] .rm-main .rm-shelf [data-dc-tpl="163"]{padding:12px 14px 14px!important;min-height:126px!important}
  body [data-theme] .rm-main .rm-shelf [data-dc-tpl="166"]{padding-top:10px!important}
  body [data-theme] .rm-main .rm-rides>[data-dc-tpl="137"]>*{min-height:184px!important;padding:16px!important;border:1px solid var(--rm-border,#e2e4e5)!important;border-radius:16px!important;background:var(--rm-paper,#fff)!important;box-shadow:0 1px 2px rgba(0,0,0,.03)!important}

  /* Keep the top offer row readable at any phone width. */
  body [data-theme] .rm-main>[data-dc-tpl="307"]{position:sticky!important;top:56px!important;z-index:30!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important;padding:9px var(--rm-gutter)!important;margin:0 calc(-1 * var(--rm-gutter))!important}
  html:has(#wpadminbar) body [data-theme] .rm-main>[data-dc-tpl="307"]{top:88px!important}
  body [data-theme] .rm-main>[data-dc-tpl="307"]>[data-dc-tpl="309"]{display:none!important}
  body [data-theme] .rm-main>[data-dc-tpl="307"]>[data-dc-tpl="310"]{min-width:0!important;gap:1px!important}
  body [data-theme] .rm-main>[data-dc-tpl="307"]>[data-dc-tpl="310"] *{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  body [data-theme] .rm-main>[data-dc-tpl="307"]>[data-dc-tpl="315"]{min-height:40px!important;padding:0 13px!important;border-radius:10px!important;font-size:13px!important;white-space:nowrap!important}
  body [data-theme] .rm-main>[data-dc-tpl="307"]+[data-screen-label="Bike page"]{padding-top:12px!important;gap:20px!important}
}


/* The editorial shelves keep a contained card edge when they become mobile sliders. */
@media(max-width:760px){
  html body [data-theme] .rm-main [data-screen-label="Home"] .rm-shelf [data-dc-tpl="160"]{border:1px solid var(--rm-border,#e2e4e5)!important;border-radius:16px!important;background:var(--rm-paper,#fff)!important;box-shadow:0 1px 2px rgba(0,0,0,.03)!important}
  html body [data-theme] .rm-main [data-screen-label="Home"] .rm-shelf [data-dc-tpl="162"]{border-radius:0!important}
  html body [data-theme] .rm-main [data-screen-label="Home"] .rm-shelf [data-dc-tpl="163"]{padding:12px 14px 14px!important;min-height:126px!important}
}


/* Keep off-screen carousel descriptions inside their cards. Without a positioned
   ancestor, absolute screen-reader text expands the document viewport on mobile. */
.rm-home-tool-slider .rm-ht-card{position:relative}

/* Mobile comparisons: two aligned values, with the specification label above. */
@media(max-width:760px){
 html body .rm-main [data-screen-label="Compare specs"]{min-width:0!important;gap:14px!important;padding-top:18px!important}
 html body .rm-main [data-screen-label="Compare specs"] [data-dc-tpl="740"]{font-size:12px!important;line-height:1.5!important;flex-wrap:wrap!important}
 html body .rm-main [data-screen-label="Compare specs"] [data-dc-tpl="741"]{white-space:nowrap!important}
 html body .rm-main [data-screen-label="Compare specs"] h1{font-size:25px!important;line-height:1.2!important;letter-spacing:-.025em!important}
 html body .rm-main [data-screen-label="Compare specs"] [data-dc-tpl="745"]{min-height:44px!important;font-size:14px!important}
 html body .rm-main [data-screen-label="Compare specs"] .rm-spec-table{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;overflow:hidden!important}
 html body .rm-main [data-screen-label="Compare specs"] .rm-spec-table::before{display:none!important;content:none!important}
 html body .rm-main [data-screen-label="Compare specs"] .rm-spec-table>div{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
 html body .rm-main [data-screen-label="Compare specs"] .rm-spec-table>div>span{position:static!important;left:auto!important;min-width:0!important;width:auto!important;max-width:100%!important;box-sizing:border-box!important;white-space:normal!important;overflow-wrap:anywhere!important;border-left:0!important;box-shadow:none!important}
 html body .rm-main [data-screen-label="Compare specs"] :is([data-dc-tpl="749"],[data-dc-tpl="762"]){display:none!important}
 html body .rm-main [data-screen-label="Compare specs"] :is([data-dc-tpl="750"],[data-dc-tpl="753"]){padding:12px!important;font-size:14px!important;line-height:1.35!important;gap:10px!important;background:var(--rm-paper,#fff)!important}
 html body .rm-main [data-screen-label="Compare specs"] .rm-spec-table img{width:100%!important;max-width:100%!important;aspect-ratio:4/3!important;height:auto!important;object-fit:contain!important;background:#fff!important;border-radius:8px!important}
 html body .rm-main [data-screen-label="Compare specs"] [data-dc-tpl="758"]{grid-column:1/-1!important;padding:8px 12px!important;background:var(--rm-warm,#f5f5f7)!important;font-size:12px!important;font-weight:600!important;line-height:1.4!important;color:var(--rm-muted,#55555c)!important}
 html body .rm-main [data-screen-label="Compare specs"] :is([data-dc-tpl="759"],[data-dc-tpl="760"]){padding:11px 12px 14px!important;font-size:14px!important;line-height:1.5!important;background:var(--rm-paper,#fff)!important}
 html body .rm-main [data-screen-label="Compare specs"] .rm-spec-table>div>:last-child{border-left:1px solid var(--rm-border,#e6e6e6)!important}
 html body .rm-main [data-screen-label="Compare specs"] :is([data-dc-tpl="763"],[data-dc-tpl="765"]){padding:12px!important}
 html body .rm-main [data-screen-label="Compare specs"] .rm-spec-table button{width:100%!important;min-height:44px!important;padding:0 8px!important;font-size:14px!important}
}
