.benchmark-home { max-width: 1240px; margin: 0 auto; padding: 28px clamp(18px, 5vw, 72px) 92px; }
.benchmark-home-heading { display: flex; align-items: end; justify-content: space-between; gap: 32px; padding: 22px 0 28px; }
.benchmark-home-heading .section-kicker { margin-bottom: 12px; }
.benchmark-home-heading h1 { margin: 0; font-size: clamp(32px, 5vw, 58px); letter-spacing: -.055em; line-height: 1.02; }
.benchmark-home-heading p:last-child { max-width: 400px; margin: 0 0 4px; color: var(--muted); font-size: 14px; line-height: 1.55; }
.single-prompt-note { display: flex; align-items: center; gap: 7px; margin: 14px 0 0; color: var(--cyan-soft); font: 11px/1.5 var(--mono); }
.single-prompt-note .material-symbols-rounded { font-size: 16px; }
.scoreboard { padding: clamp(18px, 3vw, 32px); border: 1px solid rgba(74,232,224,.23); border-radius: 26px; background: linear-gradient(140deg, rgba(16,27,33,.98), rgba(9,20,25,.98)); box-shadow: 0 26px 70px rgba(0,0,0,.2); }
.scoreboard-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; margin-bottom: 26px; }
.scoreboard-heading .section-kicker { margin: 0 0 8px; }
.scoreboard-heading h1 { margin: 0; font-size: clamp(22px, 3vw, 32px); letter-spacing: -.04em; }
.scoreboard-summary { margin: 8px 0 0; color: var(--muted); font: 11px/1.5 var(--mono); }
.scoreboard-info { flex: 0 0 auto; margin-top: 3px; }
.scoreboard-legend { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 9px 24px; margin: -7px 8px 14px 52px; color: var(--muted); font: 9px/1.5 var(--mono); }
.scoreboard-legend span { display: inline-flex; align-items: center; gap: 7px; }
.scoreboard-legend i { display: inline-block; width: 22px; height: 4px; border-radius: 999px; background: #f7c86a; }
.score-chart-loading { display: grid; gap: 0; list-style: none; }
.score-chart-loading span { height: 76px; border-bottom: 1px solid rgba(169,187,194,.15); background: linear-gradient(100deg, transparent 20%, rgba(74,232,224,.055) 45%, transparent 70%); background-size: 240% 100%; animation: chart-loading-sweep 1.8s ease-in-out infinite; }
.score-chart-loading span:nth-child(2) { animation-delay: 100ms; }
.score-chart-loading span:nth-child(3) { animation-delay: 200ms; }
.score-chart-loading span:nth-child(4) { animation-delay: 300ms; }
.score-chart-error { display: grid; gap: 7px; padding: 22px; border: 1px solid rgba(255,128,108,.42); border-radius: 18px; color: var(--text); background: rgba(255,128,108,.06); list-style: none; }
.score-chart-error strong { font-size: 14px; }
.score-chart-error span { color: var(--muted); font-size: 12px; line-height: 1.5; }
.home-resource-footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px; max-width: 1240px; margin: 0 auto; padding: 22px clamp(18px, 5vw, 72px) 34px; border-top: 1px solid var(--outline); color: var(--muted); }
.home-resource-brand { display: grid; gap: 5px; }
.home-resource-brand strong { color: var(--text); font: 700 11px var(--mono); letter-spacing: .1em; }
.home-resource-brand small { font-size: 11px; }
.home-resource-links { display: flex; flex-wrap: wrap; gap: 8px 18px; }
.home-resource-links a { color: var(--muted); font-size: 11px; text-decoration-color: rgba(169,187,194,.3); text-underline-offset: 3px; }
.home-resource-links a:hover, .home-resource-links a:focus-visible { color: var(--cyan-soft); }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

@keyframes chart-loading-sweep { 0%, 100% { background-position: 100% 0; } 50% { background-position: 0 0; } }

@media (max-width: 760px) {
  .benchmark-home { padding-top: 14px; }
  .benchmark-home-heading { align-items: flex-start; flex-direction: column; gap: 12px; padding: 22px 0 20px; }
  .benchmark-home-heading p:last-child { max-width: 520px; font-size: 13px; }
  .scoreboard { padding: 17px 12px; border-radius: 20px; }
  .scoreboard-heading { margin: 0 2px 20px; }
  .scoreboard-legend { margin-inline: 38px 5px; }
  .scoreboard-axis { margin-inline: 38px 105px; }
  .home-resource-footer { align-items: flex-start; flex-direction: column; padding-top: 20px; }
}

@media (prefers-reduced-motion: reduce) {
  .score-chart-loading span { animation: none; }
}
