/* Tailles de lecture communes, chargées après les styles de page et de couleur. */
.wc-theme .comparison-table :is(th, td) {
  font-size: 16px;
  line-height: 1.65;
  padding: 18px 22px;
}
.wc-theme .comparison-table td { font-family: var(--body); font-variant-numeric: tabular-nums; }
.wc-theme .comparison-table thead small { font-size: 14px; line-height: 1.6; color: var(--muted); }
.wc-theme .comparison-table .eyebrow { font-size: 13px; }
.wc-theme .comparison-table .photo { height: 150px; }
.wc-theme :is(.quiet-note, .meta, .lead-meta, .breadcrumb-inner, .wc-fiche-key dt,
.wc-fiche-key small, .wc-fiche-badge, .wx-small-note, .wx-location-card .wx-small-note,
.wx-privacy-note, .wx-home-actions > span, .feat-caption, .caption-text,
.wc-price-source small, .p-wrap .p-meta, .p-wrap .meta-el, .p-meta) {
  font-size: 14px;
  line-height: 1.65;
}
.wc-theme :is(.category-copy p, .p-wrap .entry-summary, .entry-summary,
.wx-choice small, .wx-quiz-panel .wx-choice small, .wx-field, .wx-field select,
.wx-location-form label, .wc-editor ul, .wc-editor ol) { font-size: 16px; line-height: 1.65; }
.wc-theme :is(.moto-category, .image-model, .wc-version) { font-size: 12px; }
.wc-theme .image-model { color: var(--muted); }
.wc-theme :is(.text-link, .add-compare, .filter-chips button, .sticky-tabs a) { font-size: 14px; }
.wc-theme ul.wc-card-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
  gap: 14px;
  list-style: none;
  margin: 22px 0;
  padding: 18px 0;
  border-top: 1px solid var(--line);
}
.wc-theme .wc-card-stats li { display: flex; flex-direction: column; gap: 5px; margin: 0; padding: 0; }
.wc-theme .wc-card-stats strong { font-size: 17px; line-height: 1.4; color: var(--white); }
.wc-theme .wc-card-stats span { font-size: 14px; line-height: 1.5; color: var(--muted); }
.wc-theme .moto-card { display: flex; flex-direction: column; }
.wc-theme .moto-card-copy { flex: 1; display: flex; flex-direction: column; }
.wc-theme .moto-card-bottom { margin-top: auto; flex-wrap: wrap; gap: 14px; }
@media (max-width: 760px) {
  .wc-theme .comparison-table :is(th, td) { font-size: 16px; padding: 16px; }
  .wc-theme .comparison-table thead strong { font-size: 28px; }
}
.wc-theme .accessories-card { min-height: 260px; isolation: isolate; color: #fff; text-decoration: none; }
.wc-theme .accessories-card .accessories-photo { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -2; }
.wc-theme .accessories-card .accessories-photo img { width: 100%; height: 100%; object-fit: cover; }
.wc-theme .accessories-card::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(5,9,7,.94), rgba(5,9,7,.55)); }
.wc-theme .accessories-card > .ico { color: #cad3c8; opacity: .6; }
.wc-theme .accessories-card > .eyebrow { font-size: 13px; color: #c6ff00; }
.wc-theme .accessories-card h3 { color: #fff; }
.wc-theme .accessories-card .text-link { color: #c6ff00; font-size: 14px; }
.wc-theme :is(.finder-card, .accessories-card) { transition: border-color .18s ease, box-shadow .18s ease; }
.wc-theme :is(.finder-card, .accessories-card):hover { border-color: var(--volt); box-shadow: inset 0 0 0 1px var(--volt); }
.wc-theme :is(.finder-card, .accessories-card):focus-visible { outline: 3px solid var(--volt); outline-offset: 5px; }
@media (prefers-reduced-motion: reduce) {
 .wc-theme :is(.finder-card, .accessories-card) { transition: none; }
}
/* Les deux appels à l'action gardent une largeur de lecture sur téléphone. */
@media (max-width: 600px) {
 .wc-theme .feature-aside { grid-template-columns: minmax(0, 1fr); }
 .wc-theme .accessories-card { min-height: 260px; }
}
.wc-theme .accessories-card .accessories-photo img { opacity: 1; }
/* Cohérence des cartes d'orientation : photographie, voile, lien et focus. */
.wc-theme .finder-card { position: relative; isolation: isolate; overflow: hidden; min-height: 340px; display: flex; flex-direction: column; justify-content: flex-end; }
.wc-theme .finder-card .finder-background { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -2; margin: 0; }
.wc-theme .finder-background img { width: 100%; height: 100%; object-fit: contain; object-position: center top; opacity: 1; }
.wc-theme .finder-card::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg, rgba(5,9,7,.97), rgba(5,9,7,.38)); }
.wc-theme .finder-card :is(h3,p,.text-link) { color: #fff; }
.wc-theme .finder-card > .eyebrow { color: #c6ff00; font-size: 13px; }
.wc-theme .finder-card p { line-height: 1.6; max-width: 34ch; }
.wc-theme .finder-card > .text-link { width: 100%; max-width: none; margin-top: 24px; color: #c6ff00; }
.wc-theme .finder-card h3 .volt { color: #c6ff00; -webkit-text-stroke: 0; }
.wc-theme .compare-select { display: block; border-radius: 12px; padding: 18px; background: var(--surface); }
.wc-theme .compare-select > .eyebrow { display: block; font-size: 12px; margin-bottom: 12px; }
.wc-theme .compare-select select { appearance: none; -webkit-appearance: none; cursor: pointer; min-height: 56px; width: 100%; border: 1px solid var(--muted); border-radius: 6px; padding: 12px 44px 12px 14px; font: 16px/1.5 var(--body); color: var(--white); background-color: var(--graphite); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='%2389938b' stroke-width='3'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; }
.wc-theme .compare-select select:hover { border-color: var(--volt); }
.wc-theme .compare-select select:focus-visible { outline: 3px solid var(--volt); outline-offset: 3px; }
.wc-theme .comparison-scroll { border-radius: 12px; }
.wc-theme .comparison-table thead th { background: var(--surface); }
.wc-theme .comparison-table .photo { height: 170px; background: radial-gradient(ellipse at center, #354139 0%, #121814 75%); border-radius: 8px; }
.wc-theme .comparison-table tbody tr:nth-child(even) td { background: color-mix(in srgb, var(--surface) 92%, var(--white)); }
.wc-theme .comparison-table tbody tr:hover :is(th,td) { background: color-mix(in srgb, var(--surface) 88%, var(--volt)); }
.wc-compare-highlights { display: flex; gap: 18px; flex-wrap: wrap; margin: 12px 0 18px; }
.wc-compare-highlights span { font: 13px/1.5 var(--body); color: var(--muted); }
.wc-compare-highlights b { display: block; color: var(--white); font: 700 20px/1.4 var(--body); }
.wc-comparison-help { font-size: 16px; line-height: 1.6; color: var(--muted); margin: 18px 0; }
.wc-theme :is(.category-tile,.moto-card):focus-within { outline: 2px solid var(--volt); outline-offset: 3px; }
.wc-wikiloc-demo { margin: 48px 0; padding: clamp(20px,4vw,40px); background: var(--surface); border: 1px solid var(--line); border-radius: 12px; }
.wc-wikiloc-demo h2 { font: italic 700 clamp(30px,4vw,48px)/1.1 var(--display); margin: 12px 0 20px; }
.wc-wikiloc-demo p { font-size: 16px; line-height: 1.7; max-width: 75ch; }
.wc-wikiloc-meta { display: flex; flex-wrap: wrap; gap: 12px 28px; margin: 20px 0; }
.wc-wikiloc-meta span { font-size: 16px; }
.wc-wikiloc-frame { margin-top: 20px; }
.wc-wikiloc-frame iframe { width: 100%; height: 480px; border: 0; border-radius: 8px; background: #fff; }
.wc-wikiloc-actions { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; margin-top: 24px; }
@media(max-width:600px) { .wc-theme .finder-card { min-height: 360px; } .wc-wikiloc-frame iframe { height: 420px; } }
/* Derniers écarts relevés dans le catalogue et les outils. */
.wc-theme :is(.button,.button.small,.check-label,.table-summary,.wx-back,.wc-qm-footnote,.wx-copy-status,.wx-neutral-note,.scroll-cue,.sort-label) { font-size: 14px; line-height: 1.6; }
.wc-theme .sort-label select { font-size: 16px; min-height: 44px; }
.wc-theme .eyebrow { font-size: 12px; }
.wc-theme .wx-section-label .eyebrow { font-size: 12px; }
.wc-theme select:not([data-compare-slot]) { appearance: auto; -webkit-appearance: menulist; padding-right: 24px; }
.wc-theme .button { max-width: 100%; min-width: 0; white-space: normal; overflow-wrap: anywhere; text-align: center; }
.wc-theme .button > .ico { flex-shrink: 0; }
.wc-theme :is(.notice p,.moto-content .notice p,.source-box p,.source-box a) { font-size: 14px; line-height: 1.7; }
/* Mobile: introduce the site before showing the motorcycle carousel. */
@media (max-width: 760px) {
 .wc-theme .hero { display: flex; flex-direction: column; height: auto; padding-top: 0; }
 .wc-theme .hero-grid { order: 0; padding-top: 28px; }
 .wc-theme .hero-copy { padding-bottom: 20px; }
 .wc-theme .hero-visual { order: 1; position: relative; inset: auto; width: 100%; height: clamp(302px, 80vw, 420px); flex-shrink: 0; }
 .wc-theme .hero-bottom { order: 2; position: relative; inset: auto; padding-top: 8px; padding-bottom: 20px; }
}

/* Keep filled action labels dark when generic link hover rules apply. */
.wc-theme :is(.button:not(.secondary),.is-btn:not(.is-secondary),.page404-btn,.rb-btn:not(.is-secondary),.cta-buttons a),
.wc-theme :is(.button:not(.secondary),.is-btn:not(.is-secondary),.page404-btn,.rb-btn:not(.is-secondary),.cta-buttons a):is(:hover,:focus-visible,:active){color:#050606}
/* In light mode the filled buttons must also keep a light background. */
:root[data-wc-theme=light] .wc-theme :is(.button:not(.secondary),.is-btn:not(.is-secondary),.page404-btn,.rb-btn:not(.is-secondary),.cta-buttons a):is(:hover,:focus-visible,:active){background:#dbff66;border-color:#172019;color:#050606}
:root[data-wc-theme=light] .wc-theme :is(.footer-main nav a,.desktop-nav a):hover{color:#354900}
