.j80b {
    --j80b-accent: #7136c6;
    --j80b-background: #ffffff;
    --j80b-text: #242139;
    box-sizing: border-box;
    background: var(--j80b-background);
    color: var(--j80b-text);
    border: 1px solid #ffffff22;
    border-radius: 18px;
    padding: clamp(20px, 4vw, 40px);
    font-family: inherit;
    line-height: 1.65;
    overflow-wrap: anywhere;
}
.j80b *, .j80b *::before, .j80b *::after { box-sizing: border-box; }
.j80b .j80b__eyebrow { color: var(--j80b-accent); font-size: .8em; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; margin: 0 0 8px; }
.j80b .j80b__title { color: var(--j80b-text); font-size: clamp(1.5rem, 3vw, 2.25rem); line-height: 1.2; margin: 0 0 28px; }
.j80b .j80b__list { list-style: none; padding: 0; margin: 0; }
.j80b .j80b__item { display: grid; grid-template-columns: 65px minmax(0, 1fr); gap: 18px; margin: 0; padding: 20px 0; border-top: 1px solid #d8d5e2; }
.j80b .j80b__year { color: var(--j80b-accent); font-weight: 800; font-size: 1.35em; line-height: 1.5; font-variant-numeric: tabular-nums; }
.j80b .j80b__body p { margin: 0 0 8px; color: inherit; white-space: pre-line; }
.j80b .j80b__fact-title { color: inherit; font-size: 1.1em; line-height: 1.4; margin: 0 0 8px; }
.j80b a { color: var(--j80b-accent); text-decoration: underline; text-underline-offset: 3px; }
.j80b a:hover { text-decoration-thickness: 2px; }
.j80b a:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.j80b.j80b--no-border { border: 0; }
.j80b .j80b__image { margin: 0 0 16px; grid-column: 2; }
.j80b .j80b__image img { display: block; width: 100%; height: auto; max-height: 300px; object-fit: contain; border-radius: 8px; }
.j80b .j80b__item--has-image .j80b__body { grid-column: 2; }
.j80b .j80b__body .j80b__image-credit { font-size: .7em; line-height: 1.5; margin: 8px 0 0; }
.j80b .j80b__music { margin-top: 18px; padding-top: 16px; border-top: 1px solid #d8d5e244; }
.j80b .j80b__music--has-image { display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: 16px; align-items: start; }
.j80b .j80b__music-photo { display: block; width: 88px; height: 88px; object-fit: contain; border-radius: 10px; }
.j80b .j80b__music-copy { min-width: 0; }
.j80b .j80b__music-copy p { margin: 0 0 4px; white-space: normal; line-height: 1.4; }
.j80b .j80b__music-copy .j80b__music-label { font-size: .7em; opacity: .7; }
.j80b .j80b__music-copy .j80b__music-artist { font-size: 1em; font-weight: 700; }
.j80b .j80b__music-copy .j80b__music-single { font-size: .95em; }
.j80b .j80b__music-source { font-size: .7em; }
.j80b .j80b__source { font-size: .85em; }
.j80b .j80b__credit { font-size: .75em; margin: 24px 0 0; padding-top: 16px; border-top: 1px solid #d8d5e2; }
.j80b .j80b__empty { margin: 0; }
.j80b--cards .j80b__list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 16px; }
.j80b--cards .j80b__item { display: block; border: 1px solid #d8d5e2; border-radius: 10px; padding: 20px; }
.j80b--cards .j80b__year { display: block; margin-bottom: 10px; }
.j80b--rows {
    --j80b-background: #10151c;
    --j80b-text: #f5f5f7;
    --j80b-accent: #c6acf4;
    --j80b-row-background: #1a2029;
}
.j80b--rows .j80b__list { display: grid; gap: 24px; }
.j80b--rows .j80b__item { display: grid; grid-template-columns: minmax(0, 1fr) 72px; gap: 24px; align-items: center; padding: 24px 28px; border: 0; border-radius: 24px; background: var(--j80b-row-background); }
.j80b--rows .j80b__item--has-image { grid-template-columns: 160px minmax(0, 1fr) 72px; padding: 0 28px 0 0; }
.j80b--rows .j80b__year { grid-column: 2; grid-row: 1; color: var(--j80b-text); opacity: .6; text-align: right; font-size: 1.2em; }
.j80b--rows .j80b__item--has-image .j80b__year { grid-column: 3; }
.j80b--rows .j80b__body { grid-column: 1; grid-row: 1; padding: 0; min-width: 0; }
.j80b--rows .j80b__item--has-image .j80b__body { grid-column: 2; padding: 20px 0; }
.j80b--rows .j80b__image { grid-column: 1; grid-row: 1; margin: 0; align-self: start; }
.j80b--rows .j80b__image img { width: 160px; height: 160px; max-height: none; object-fit: contain; background: #10151c; border-radius: 24px 0 0 24px; }
.j80b--rows .j80b__body > p:first-of-type { font-size: 1.1em; line-height: 1.5; }
.j80b--rows .j80b__fact-title { font-size: 1.2em; }
.j80b .screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@media (max-width: 767px) {
    .j80b--rows .j80b__item { gap: 14px; padding: 20px; grid-template-columns: minmax(0, 1fr) 52px; border-radius: 16px; }
    .j80b--rows .j80b__item--has-image { grid-template-columns: 90px minmax(0, 1fr); padding: 0 16px 16px 0; align-items: start; }
    .j80b--rows .j80b__image img { width: 90px; height: 90px; border-radius: 16px 0 0 0; }
    .j80b--rows .j80b__item--has-image .j80b__body { grid-row: 1; padding: 14px 0 0; }
    .j80b--rows .j80b__item--has-image .j80b__year { grid-column: 1; grid-row: 1; align-self: start; margin-top: 104px; text-align: center; }
}
@media (max-width: 480px) {
    .j80b .j80b__music--has-image { grid-template-columns: 64px minmax(0, 1fr); gap: 12px; }
    .j80b .j80b__music-photo { width: 64px; height: 64px; }
    .j80b--rows .j80b__item:not(.j80b__item--has-image) { grid-template-columns: minmax(0, 1fr); gap: 8px; }
    .j80b--rows .j80b__item:not(.j80b__item--has-image) .j80b__year { grid-column: 1; grid-row: 1; text-align: left; }
    .j80b--rows .j80b__item:not(.j80b__item--has-image) .j80b__body { grid-column: 1; grid-row: 2; }
    .j80b--timeline .j80b__item { grid-template-columns: 1fr; gap: 6px; }
    .j80b--timeline .j80b__image, .j80b--timeline .j80b__item--has-image .j80b__body { grid-column: 1; }
    .j80b--rows .j80b__item--has-image { grid-template-columns: 72px minmax(0, 1fr); gap: 12px; padding: 0; }
    .j80b--rows .j80b__image img { width: 72px; height: 72px; }
    .j80b--rows .j80b__item--has-image .j80b__year { grid-column: 2; margin: 0; align-self: center; text-align: left; }
    .j80b--rows .j80b__item--has-image .j80b__body { grid-column: 1 / -1; grid-row: 2; padding: 0 16px 16px; }
}

.j80b .j80b__age{font-size:.95em;font-weight:700}
.j80b .j80b__born{font-size:.85em;opacity:.8}
.j80b--rows .j80b__year{font-size:1.5em}
