/* Les rubriques gardent leurs composants métier ; seules leurs ouvertures partagent les scènes. */
.jerry-next.j-category-page { background: var(--j-surface); color: var(--j-text); }
.jerry-next.j-category-page .j-stage { text-align: left; }
.jerry-next .j-category-stage, .jerry-next .j-category-stage .j-stage-inner { min-height: 24rem; }
.jerry-next .j-category-stage .j-stage-inner { padding-top: 1.2rem; }
.jerry-next .j-category-stage .j-stage-kicker { font-size: .65rem; max-width: 15rem; }
.jerry-next .j-category-stage .j-stage-title { font-size: clamp(3.1rem, 13vw, 8.5rem); line-height: .88; }
.jerry-next .j-category-stage .j-stage-title > .j-outline { margin-top: 2.2rem; }
.jerry-next .j-category-stage .j-stage-athlete { top: 1rem; right: -.5rem; width: 62%; height: 19rem; }
.jerry-next .j-category-intro { position: relative; z-index: 5; max-width: 28rem; margin-top: 8rem; padding-bottom: 2.2rem; font-size: 1rem; line-height: 1.5; }
.jerry-next .j-category-stage .j-stage-shade { background: linear-gradient(180deg, rgba(20,27,37,.8), rgba(20,27,37,.2) 35%, var(--j-surface) 92%); }
.jerry-next.j-category-page .filters-container { background: var(--j-surface); border-color: var(--j-line); }
.jerry-next.j-category-page .filter-btn, .jerry-next.j-category-page .filter-select { min-height: 44px; }
.jerry-next.j-category-page .filter-btn.active, .jerry-next.j-category-page .btn-add-race, .jerry-next.j-category-page .btn-add-pro { background: var(--j-paper) !important; color: var(--j-ink) !important; border-color: var(--j-paper) !important; box-shadow: none; }
.jerry-next.j-category-page .filter-btn.active { text-decoration: underline; text-underline-offset: .3em; }
.jerry-next.j-category-page button:not(.j-button), .jerry-next.j-category-page .btn-participate:hover, .jerry-next.j-category-page .badge-premium-star, .jerry-next.j-category-page .journal-card-category { background: var(--j-paper) !important; color: var(--j-ink) !important; border-color: var(--j-line) !important; box-shadow: none !important; }
.jerry-next.j-category-page .filter-select:focus, .jerry-next.j-category-page .pro-tip { border-color: var(--j-line); box-shadow: none; }
.jerry-next.j-category-page #journal-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)) !important; }
.jerry-next.j-diagnostic-page { background: var(--j-surface); }
.jerry-next .j-diagnostic-scene { position: fixed; inset: 0; min-height: 0; pointer-events: none; opacity: .6; }
.jerry-next .j-diagnostic-scene .j-stage-landscape { inset: 0; }
.jerry-next .j-diagnostic-scene .j-stage-shade { background: linear-gradient(180deg, rgba(20,27,37,.5), rgba(20,27,37,.6)); }
.jerry-next .j-diagnostic-scene .j-stage-athlete { top: 0; bottom: auto; right: -1rem; width: 60vw; height: 65dvh; opacity: .5; }
.jerry-next.j-diagnostic-page:not(:has(#intro.active)) .j-diagnostic-scene { display: none; }
.jerry-next.j-diagnostic-preview-page .j-diagnostic-scene { display: block; }
.jerry-next .j-diagnostic-preview { position: relative; z-index: 1; min-height: 38rem; display: grid; align-items: center; }
.jerry-next .j-diagnostic-panel { width: min(100%, 30rem); padding: 2rem; margin-inline: auto; background: rgba(20,27,37,.9); border: 1px solid var(--j-line); border-radius: 1rem; }
.jerry-next .j-diagnostic-panel > * + * { margin-top: 1.5rem; }
.jerry-next .j-preview-note { color: var(--j-muted); max-width: 45rem; font-size: .85rem; line-height: 1.6; }
.jerry-next.j-diagnostic-page .funnel-mode { position: relative; z-index: 1; }
.jerry-next.j-diagnostic-page .card { background: rgba(20,27,37,.9); border-color: var(--j-line); }
.jerry-next.j-diagnostic-page button.btn, .jerry-next.j-diagnostic-page .intro-start-btn { background: var(--j-paper) !important; color: var(--j-ink) !important; border-color: var(--j-line) !important; box-shadow: none !important; }
.jerry-next.j-diagnostic-page .progress-fill { background: var(--j-paper); box-shadow: none; }
.jerry-next.j-diagnostic-page .opt-btn.selected, .jerry-next.j-diagnostic-page .check-item.active { background: var(--j-surface-raised); border-color: var(--j-line); color: var(--j-text); box-shadow: none; }
.jerry-next.j-diagnostic-page .check-item.active .checkmark { background: var(--j-paper); border-color: var(--j-paper); }
.jerry-next.j-diagnostic-page .check-item.active .checkmark::after { color: var(--j-ink); }
.jerry-next.j-diagnostic-page input:focus, .jerry-next.j-diagnostic-page select:focus { border-color: var(--j-line); box-shadow: none; }
.jerry-next.j-diagnostic-page .intensity-slider::-webkit-slider-thumb { background: var(--j-paper); }
.jerry-next.j-diagnostic-page .intensity-slider::-moz-range-thumb { background: var(--j-paper); }
@media (min-width: 48rem) {
  .jerry-next .j-category-stage, .jerry-next .j-category-stage .j-stage-inner { min-height: 27rem; }
  .jerry-next .j-category-stage .j-stage-title { max-width: 70%; }
  .jerry-next .j-category-stage .j-stage-title > .j-outline { margin-top: 1.4rem; margin-left: 10%; }
  .jerry-next .j-category-stage .j-stage-athlete { top: .5rem; height: 26rem; width: 47%; right: 1rem; }
  .jerry-next .j-category-intro { margin-top: 1.8rem; max-width: 50%; }
  .jerry-next .j-diagnostic-scene .j-stage-athlete { top: auto; bottom: 0; right: 1vw; width: 44vw; height: 90dvh; opacity: .85; }
}

/* Annuaire : portrait panoramique sur ordinateur, groupe recadré entre titre et introduction sur téléphone. */
.jerry-next .j-team-stage .j-stage-inner { min-height:0; }
.jerry-next .j-team-stage .j-stage-title > .j-outline { margin:.2em 0 0 .6em; }
.jerry-next .j-team-stage .j-team-photo { position:relative; margin:.65rem calc(-1 * var(--j-gutter)) 0; }
.jerry-next .j-team-photo picture,.jerry-next .j-team-photo img { display:block; width:100%; }
.jerry-next .j-team-photo img { height:auto; max-height:23rem; object-fit:cover; object-position:50% 16%; }
.jerry-next .j-team-photo::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(0deg,var(--j-surface),transparent 24%); }
.jerry-next .j-team-stage .j-category-intro { margin:0; padding:.2rem 0 1.2rem; }
@media (min-width:48rem) {
  .jerry-next .j-team-stage .j-stage-inner { position:static; display:flex; flex-direction:column; align-items:start; justify-content:center; min-height:clamp(27rem,38vw,36rem); padding-block:2rem; }
  .jerry-next .j-team-stage .j-stage-title { font-size:clamp(3.8rem,8.3vw,8.5rem); }
  .jerry-next .j-team-stage .j-team-photo { position:absolute; z-index:-1; inset:0 0 0 auto; margin:0; width:100%; }
  .jerry-next .j-team-photo picture,.jerry-next .j-team-photo img { height:100%; max-height:none; }
  .jerry-next .j-team-photo img { object-position:50% 13%; }
  .jerry-next .j-team-photo::after { background:linear-gradient(90deg,var(--j-surface) 1%,rgba(20,27,37,.88) 28%,rgba(20,27,37,.07) 56%,transparent 67%),linear-gradient(0deg,var(--j-surface),transparent 18%); }
  .jerry-next .j-team-stage .j-category-intro { margin-top:1.6rem; max-width:min(41%,28rem); padding:0; }
}
@media (min-width:64rem) {
  .jerry-next .j-team-stage .j-team-photo { width:min(82%,92rem); }
  .jerry-next .j-team-stage .j-stage-title { font-size:clamp(3.8rem,9.8vw,8.5rem); }
}
