/* Focus the catalog on the machine the rider has chosen. */
.parts-store .ride-hub[hidden],.parts-store .ride-hub [hidden],.parts-store #default-reference:empty{display:none!important}
.ride-count-label{display:none}
.results-toolbar,.results-heading{display:contents}
.parts-store.ride-focused #browse-intro,.parts-store.ride-focused .catalog>.section-head,.parts-store.ride-focused .range-intro,.parts-store.ride-focused .catalog-tabs,.parts-store.ride-focused .mobile-catalog-search,.parts-store.ride-focused .mobile-catalog-selects,.parts-store.ride-focused #category-shortcuts,.parts-store.ride-focused #selected-ride,.parts-store.ride-focused .featured-edit,.parts-store.ride-focused .category-story,.parts-store.ride-focused .parts-help,.parts-store.ride-focused #tyre-guidance{display:none!important}
.parts-store.ride-focused #browse-intro.lookup-only,.parts-store.ride-focused #browse-intro.lookup-only>.shopping-tools{display:block!important}
.parts-store.ride-focused #browse-intro.lookup-only>:not(.shopping-tools){display:none}
.parts-store.ride-focused .catalog{padding-top:clamp(14px,2vw,30px);scroll-margin:0}
.parts-store .ride-hub{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--card,#fff);color:var(--ink)}
.ride-head{min-height:100px;display:flex;align-items:center;gap:18px;padding:12px 20px;border-left:4px solid var(--accent)}
.ride-heading{min-width:0}
.parts-store .ride-heading .eyebrow,.parts-store .ride-count-label{color:var(--muted);font-size:10px;letter-spacing:.11em;text-transform:uppercase;line-height:1.35}
.parts-store .ride-heading h1{margin:5px 0 0;overflow-wrap:anywhere;line-height:1.1;font-size:clamp(25px,3.25vw,45px)}
.ride-photo{width:128px;height:81px;flex:none;overflow:hidden;border-radius:6px;background:white}
.ride-photo img{width:100%;height:100%;display:block;object-fit:contain}
.ride-change{margin-left:auto;padding:9px 13px;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--ink);font-size:13px;font-weight:650;min-height:44px;white-space:nowrap}
.ride-actions-row{display:flex;align-items:stretch;padding:0 12px;border-top:1px solid var(--line);background:var(--soft);gap:5px}
.ride-actions-row>button,.ride-actions-row>a,.ride-editor-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:transparent;border:0;color:var(--ink);padding:8px 12px;font-size:13px;line-height:1.3;font-weight:650;min-height:44px;cursor:pointer}
.ride-actions-row>button:hover,.ride-actions-row>a:hover,.ride-editor-actions button:hover{text-decoration:underline;text-underline-offset:3px}
.ride-actions-row #ride-ref-toggle span:after{content:'+';font-size:17px}.ride-actions-row #ride-ref-toggle[aria-expanded=true] span:after{content:'−'}
.ride-actions-row #ride-book-service{margin-left:auto}
.parts-store #ride-reference-body,.parts-store #ride-editor{padding:18px 20px;border-top:1px solid var(--line)}
.parts-store #ride-reference-body .stock-tyres{border:0;margin:0;padding:0;background:transparent;box-shadow:none}
.parts-store #ride-reference-body .service-facts{margin:12px 0;padding:12px 0}
.parts-store #ride-reference-body .ride-service-parts h3{font:700 15px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:0;margin:16px 0 10px}
.parts-store #ride-reference-body .reference-grid{margin:0;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));border:1px solid var(--line);border-radius:5px;overflow:hidden}
.parts-store #ride-reference-body .reference-item{padding:10px 12px}
.parts-store #ride-reference-body .reference-item dd{margin:4px 0 0}
.parts-store #ride-reference-body .reference-item a{min-height:36px}
.parts-store #ride-editor .bike-finder{padding:0;background:transparent;color:var(--ink);border:0;min-height:auto;display:block}
.parts-store #ride-editor .bike-finder>div,.parts-store #ride-editor .bike-finder>p{display:none}
.parts-store #ride-editor .bike-finder form{display:grid;grid-template-columns:1fr 2fr 1.4fr auto;align-items:end;gap:10px}
.parts-store #ride-editor .bike-finder form button{grid-column:auto}
.ride-editor-actions{display:flex;justify-content:flex-end;gap:10px}.ride-editor-actions button{font-size:12px;text-decoration:underline;text-underline-offset:3px}
.parts-store.ride-focused .results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0 12px}
.parts-store.ride-focused .results-heading{display:flex;align-items:baseline;gap:12px}
.parts-store.ride-focused .ride-count-label{display:block;color:var(--ink);font-weight:700;letter-spacing:0;text-transform:none;font-size:clamp(17px,2vw,23px)}
.parts-store.ride-focused .catalog-status{padding:0;margin:0;min-height:0;font-size:12px}
.parts-store.ride-focused .filter-toggle{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:auto;min-height:44px;padding:8px 14px;border:1px solid var(--line);background:var(--card,#fff);border-radius:5px;white-space:nowrap;font-size:13px}
.parts-store.ride-focused .catalog-tools{margin:0 0 12px;padding:0}
.parts-store.ride-focused .catalog-tools:has(.catalog-controls:not(.is-open)){display:none!important}
.parts-store.ride-focused .catalog-controls.is-open{display:grid}
.parts-store.ride-focused .active-filters:empty,.parts-store #products:empty{display:none}
.parts-store.ride-focused #active-filters:not(:empty){margin:0 0 10px}
.parts-store.ride-focused .tyre-controls{margin:0 0 12px;padding:10px 14px}
.parts-store.ride-focused .tyre-controls p{display:none}
.parts-store .product-open,.parts-store .edit-product>a,.parts-store .edit-product>a:hover{color:inherit;text-decoration:none;text-align:left}
.parts-store .edit-product>a{display:block;height:100%;width:100%}
.parts-store .tyre-card-intro{font-size:13px;color:var(--muted);line-height:1.5;margin:2px 0 8px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.parts-store .product-page,.parts-store .product-page-boot{max-width:1312px;margin:0 auto;padding:24px clamp(18px,4.2vw,64px) 45px}
.parts-store .item-path{display:flex;align-items:center;margin:0 0 17px;font-size:13px;font-weight:650}
.item-path a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.parts-store .item-layout{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start}
.parts-store .item-layout .detail-media{position:sticky;top:20px;align-self:start;margin:0;padding:clamp(15px,2.5vw,35px);border-radius:8px;border:1px solid var(--line);box-shadow:none;background:white;min-width:0}
.parts-store .item-layout .detail-media>img{width:100%;height:clamp(280px,34vw,470px);object-fit:contain}
.parts-store .item-layout .detail-copy{padding:4px 0 0;margin:0;min-width:0}
.parts-store .item-layout .detail-breadcrumb{display:none}
.parts-store .item-layout h1{font:650 clamp(25px,3vw,42px)/1.1 'DM Sans',Arial,sans-serif;letter-spacing:-.035em;margin:8px 0 18px;overflow-wrap:anywhere}
.parts-store .item-layout .detail-price{font-size:29px}
.parts-store .item-layout .add-row{position:static;padding:10px 0;background:transparent;box-shadow:none}
.parts-store .item-layout .item-empty{grid-column:1/-1;padding:35px 0}
.parts-store .item-layout .button:disabled{opacity:.64}
@media(max-width:760px){
 .parts-store.ride-focused .catalog{padding-top:12px}
 .ride-head{min-height:82px;gap:8px;padding:9px 9px 9px 7px}
 .ride-photo{width:70px;height:58px}.ride-change{font-size:11px;padding:7px}
 .parts-store .ride-heading h1{font-size:clamp(21px,5.9vw,28px);margin:4px 0 0}
 .parts-store .ride-heading .eyebrow{font-size:9px}
 .ride-actions-row{gap:0;padding:0 4px;justify-content:space-between}.ride-actions-row>button,.ride-actions-row>a{font-size:12px;padding:6px 8px}.ride-actions-row #ride-book-service{margin:0}
 .parts-store #ride-editor,.parts-store #ride-reference-body{padding:12px}
 .parts-store #ride-editor .bike-finder form{grid-template-columns:minmax(65px,.7fr) minmax(120px,1.6fr)}
 .parts-store #ride-editor form>label:nth-last-of-type(1){grid-column:1/-1}.parts-store #ride-editor .bike-finder form button{grid-column:1/-1}
 .parts-store.ride-focused .results-toolbar{gap:8px;margin:12px 0 8px}.parts-store.ride-focused .results-heading{display:grid;gap:2px}
 .parts-store.ride-focused .ride-count-label{font-size:16px}.parts-store.ride-focused .filter-toggle{padding:6px 9px;font-size:12px}
 .parts-store.ride-focused .catalog-controls.is-open{grid-template-columns:repeat(2,minmax(0,1fr))}
 .parts-store .item-layout{grid-template-columns:minmax(0,1fr);gap:18px}
 .parts-store .product-page{padding:8px 16px 30px}
 .parts-store .item-path{margin:0 0 7px}.parts-store .item-layout .detail-media{position:static;padding:10px}
 .parts-store .item-layout .detail-media>img{height:clamp(145px,24dvh,230px);max-height:230px}
 .parts-store .item-layout h1{font-size:26px}.parts-store .item-layout .detail-copy{padding:0}
 .parts-store .ride-photo[hidden]+.ride-heading{padding-left:6px}
}
@media(max-width:400px){.parts-store #ride-reference-body .reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.parts-store #ride-reference-body .reference-item{padding:8px}.ride-photo{width:55px}}
.opening-ride #app>main>.brand-hero{display:none!important}
/* A small service-first reference, with one source disclosure per section. */
.parts-store #ride-reference-body{padding:12px 18px}
.parts-store #ride-reference-body .compact-reference>section{margin:0 0 12px;padding:0}
.parts-store #ride-reference-body .compact-reference h3{font:700 12px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:0;margin:0 0 4px}
.parts-store #ride-reference-body .compact-reference .reference-grid{grid-template-columns:repeat(auto-fit,minmax(175px,1fr))!important;gap:0 18px;background:transparent;border:0;border-radius:0;overflow:visible}
.parts-store #ride-reference-body .compact-reference .reference-item{padding:5px 0!important;background:transparent;border-bottom:1px solid var(--line)}
.parts-store #ride-reference-body .compact-reference .reference-item dt{font-size:11px;line-height:1.4;font-weight:500}
.parts-store #ride-reference-body .compact-reference .reference-item dd{margin:2px 0 0;font-size:13px;line-height:1.4}
.parts-store #ride-reference-body .compact-reference .reference-item dd strong{font-size:14px;line-height:1.4;font-weight:650}
.parts-store #ride-reference-body .compact-reference .reference-item dd+dd{margin-top:4px;padding-top:4px}
.parts-store #ride-reference-body .compact-reference .reference-item a{min-height:28px;margin:0;gap:3px;align-items:center;font-size:13px;text-underline-offset:3px}
.parts-store #ride-reference-body .compact-reference .reference-item a strong{display:inline}
.parts-store #ride-reference-body .compact-reference .reference-part-divider{font-size:12px;color:var(--muted)}
.parts-store #ride-reference-body .compact-reference .reference-condition,.parts-store #ride-reference-body .compact-reference .reference-market{font-size:11px;line-height:1.4;margin-top:3px}
.parts-store #ride-reference-body .compact-reference .service-facts{grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:8px 18px;margin:0;padding:4px 0 8px;border-top:0}
.parts-store #ride-reference-body .compact-reference .service-facts .reference-item{padding:0!important;border:0}
.parts-store #ride-reference-body .compact-reference .service-facts dt{font-size:11px;margin-bottom:2px;line-height:1.4}
.parts-store #ride-reference-body .compact-reference .service-facts dd{font-size:14px;line-height:1.4}
.parts-store #ride-reference-body .compact-reference .stock-tyre-groups{gap:8px 18px}
.parts-store #ride-reference-body .compact-reference .stock-tyre-group{max-width:600px;min-width:0}
.parts-store #ride-reference-body .compact-reference .spec-group-label{font-size:12px;font-weight:700;margin:0 0 4px}
.parts-store #ride-reference-body .compact-reference .stock-tyre-pair{gap:8px}
.parts-store #ride-reference-body .compact-reference .stock-tyre-pair button{min-height:42px;padding:6px 9px;display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;background:transparent}
.parts-store #ride-reference-body .compact-reference .stock-tyre-pair strong{font-size:14px;line-height:1.4}
.parts-store #ride-reference-body .compact-reference .stock-tyre-pair small{margin:0;font-size:13px}
.parts-store #ride-reference-body .compact-reference .reference-evidence{margin:0;font-size:12px;line-height:1.5}
.parts-store #ride-reference-body .compact-reference .reference-evidence summary{min-height:30px;display:flex;align-items:center;gap:6px;padding:3px 0;cursor:pointer;font-size:11px;list-style:none;color:var(--muted)}
.parts-store #ride-reference-body .compact-reference .reference-evidence summary::before{content:'+';font-size:14px}
.parts-store #ride-reference-body .compact-reference .reference-evidence[open] summary::before{content:'−'}
.parts-store #ride-reference-body .compact-reference summary::-webkit-details-marker{display:none}
.parts-store #ride-reference-body .compact-reference .reference-source-item{padding:8px 10px;margin:0 0 6px;background:var(--soft);border-radius:4px}
.parts-store #ride-reference-body .compact-reference .reference-source-item>strong{font-size:12px}
.parts-store #ride-reference-body .compact-reference .reference-source-item p{font-size:12px;margin:3px 0;line-height:1.5}
.parts-store #ride-reference-body .compact-reference .reference-source-item a{display:inline-flex;align-items:center;min-height:32px;text-decoration:underline}
.parts-store #ride-reference-body .compact-reference .reference-pending{font-size:11px;line-height:1.4;margin:4px 0 0}
.parts-store #ride-reference-body .compact-reference .reference-more{border-top:1px solid var(--line);margin-top:5px}
.parts-store #ride-reference-body .compact-reference .reference-more>summary{min-height:36px;display:flex;align-items:center;gap:7px;cursor:pointer;font-size:12px;font-weight:650;list-style:none}
.parts-store #ride-reference-body .compact-reference .reference-more>summary::after{content:'+';font-size:15px}
.parts-store #ride-reference-body .compact-reference .reference-more[open]>summary::after{content:'−'}
.parts-store #ride-reference-body .compact-reference .reference-more .shared-reference-section{margin:0 0 8px}
.parts-store #ride-reference-body .compact-reference .reference-more .shared-reference-section>h3{display:none}
.parts-store #ride-reference-body .compact-reference .reference-diagrams-link{min-height:36px;font-size:12px;margin:0}
@media(max-width:760px){
 .parts-store #ride-reference-body{padding:10px 12px}
 .parts-store #ride-reference-body .compact-reference .reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 12px}
 .parts-store #ride-reference-body .compact-reference .service-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px}
 .parts-store #ride-reference-body .compact-reference .reference-item a{min-height:40px}
 .parts-store #ride-reference-body .compact-reference .reference-evidence summary{min-height:40px}
 .parts-store #ride-reference-body .compact-reference .stock-tyre-pair button{min-height:44px;padding:7px;gap:5px;grid-template-columns:1fr auto}
 .parts-store #ride-reference-body .compact-reference .stock-tyre-pair strong{grid-column:1;grid-row:2}
 .parts-store #ride-reference-body .compact-reference .stock-tyre-pair small{grid-column:2;grid-row:1/3}
 .parts-store #ride-reference-body .compact-reference .reference-more>summary{min-height:44px}
}
@media(max-width:760px){
 .parts-store.has-product-page .mobile-shop-bar{display:none}
 .parts-store .item-layout .add-row{position:sticky;bottom:0;z-index:2;padding:8px 0 max(8px,env(safe-area-inset-bottom));background:var(--paper);box-shadow:0 -5px 12px var(--paper)}
}
