@layer components{.sport-hero__kicker{display: inline-flex;align-items: center;gap: 10px;font-size: var(--fs-label);font-weight: var(--fw-bold);letter-spacing: var(--ls-label);text-transform: uppercase;color: var(--red);}}
@layer components{.photo-row{display: flex;gap: var(--sp-2);}}
@layer components{.photo-row--single .photo{aspect-ratio: max(var(--r),2.2);}}
@layer components{.photo__caption{position: absolute;left: 0;right: 0;bottom: 0;padding: 20px 12px 10px;font-family: var(--font-display);font-size: var(--fs-micro);font-weight: var(--fw-semi);letter-spacing: var(--ls-ui);text-transform: uppercase;color: var(--white-text);background: linear-gradient(180deg,transparent,rgba(8,8,10,.7));opacity: 0;transition: opacity var(--dur) var(--ease);pointer-events: none;}}
@layer components{.photo:hover .photo__caption,.photo:focus-within .photo__caption{opacity: 1;}}
@layer components{@media (max-width: 767px){.photo-row{flex-wrap: wrap;}}}
@layer components{@media (max-width: 767px){.photo--portrait,.photo--square{flex: 1 1 calc(50% - var(--sp-2) / 2);}}}
@layer components{@media (max-width: 767px){.photo__caption{opacity: 1;}}}
@layer components{.source-line{display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: baseline; margin-top: var(--sp-4); font-family: var(--font-serif); font-size: 0.8125rem; line-height: 1.5; color: var(--paper-muted);}}
@layer components{.source-line__label{font-family: var(--font-display); font-weight: var(--fw-bold); font-size: var(--fs-micro); letter-spacing: var(--ls-label); text-transform: uppercase; color: var(--red);}}
@layer components{.source-line a{color: inherit; text-decoration: underline; text-underline-offset: 2px;}}
@layer components{.source-line__notes{flex-basis: 100%; font-style: italic;}}
@layer components{.card .source-line,.details .source-line{color: var(--gray-meta);}}
@layer components{.pcard{display: flex; align-items: center; gap: 12px; padding: 10px; background: #fff; border: 1px solid var(--silver-line); color: var(--graphite); text-decoration: none; transition: transform .15s, box-shadow .15s, border-color .15s;}}
@layer components{.pcard:hover{transform: translateY(-2px); box-shadow: 0 14px 28px -18px rgba(0,0,0,.4); border-color: var(--red);}}
@layer components{.pcard__photo{position: relative; flex: 0 0 auto; width: 56px; height: 56px; overflow: hidden; background: var(--silver-2); display: grid; place-items: center;}}
@layer components{.pcard__photo img{width: 100%; height: 100%; object-fit: cover;}}
@layer components{.pcard__initials{font-family: var(--font-display); font-size: 1.5rem; color: var(--ink3);}}
@layer components{.pcard__num{position: absolute; left: 0; bottom: 0; background: var(--red); color: #fff; font-family: var(--font-display); font-size: .6875rem; letter-spacing: .04em; padding: 1px 5px;}}
@layer components{.pcard__body{min-width: 0;}}
@layer components{.pcard__name{display: block; font-family: var(--font-display); font-size: 1rem; line-height: 1.1; text-transform: uppercase; letter-spacing: .01em;}}
@layer components{.pcard__meta{display: block; font-size: .75rem; color: var(--ink3); margin-top: 2px;}}
@layer components{.pcard__why{display: block; font-family: var(--font-serif); font-size: .8125rem; color: var(--ink2); margin-top: 3px;}}
@layer components{.pcard--lg{flex-direction: column; align-items: stretch; gap: 0; padding: 0;}}
@layer components{.pcard--lg .pcard__photo{width: 100%; height: auto; aspect-ratio: 3 / 2;}}
@layer components{.pcard--lg .pcard__body{padding: 12px 14px 14px;}}
@layer components{.pcard--lg .pcard__name{font-size: 1.125rem;}}
@layer components{@media (max-width: 600px){.pcard__photo{width: 44px; height: 44px;}}}
@layer components{.whois__set{display: grid; gap: 18px;}}
@layer components{.whois__item{display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 20px; align-items: start; padding: 14px; background: #fff; border: 1px solid var(--silver-line);}}
@layer components{.whois__thumb{margin: 0;}}
@layer components{.whois__thumb img{width: 100%; height: auto; display: block;}}
@layer components{.whois__head{margin-bottom: 8px;}}
@layer components{.whois__grid{display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 6px;}}
@layer components{.whois__maybe{margin-top: 12px;}}
@layer components{.whois__label{display: block; font-family: var(--font-display); font-size: .625rem; letter-spacing: .16em; text-transform: uppercase; color: var(--ink3); margin-bottom: 6px;}}
@layer components{.whois__maybe .pcard{border-style: dashed;}}
@layer components{.whois__unknown{margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--silver-line);}}
@layer components{.whois__ask{font-family: var(--font-serif); font-size: 1rem; color: var(--ink2); margin: 0 0 8px;}}
@layer components{.whois__ask b{font-family: var(--font-display); font-size: 1.375rem; color: var(--red);}}
@layer components{.whois__ph{display: inline-block; margin-left: 6px; padding: 2px 8px; background: var(--silver-3); border: 1px dashed var(--silver-line); font-size: .75rem; color: var(--ink3);}}
@layer components{.whois__form summary{display: inline-block; cursor: pointer; font-family: var(--font-display); font-size: .8125rem; letter-spacing: .1em; text-transform: uppercase; color: var(--red);}}
@layer components{.whois__form form{display: grid; gap: 10px; margin-top: 12px; max-width: 560px;}}
@layer components{.whois__form label{display: grid; gap: 4px; font-family: var(--font-display); font-size: .6875rem; letter-spacing: .12em; text-transform: uppercase; color: var(--ink3);}}
@layer components{.whois__form input,.whois__form textarea{font-family: inherit; font-size: 1rem; padding: 9px 11px; border: 2px solid var(--silver-line); background: #fff;}}
@layer components{.whois__form input:focus,.whois__form textarea:focus{border-color: var(--red); outline: 0;}}
@layer components{.whois__row{display: grid; grid-template-columns: 1fr 1fr; gap: 10px;}}
@layer components{.whois__note,.whois__thanks{font-family: var(--font-serif); font-size: .8125rem; color: var(--ink3); margin: 0;}}
@layer components{.whois__thanks{color: var(--graphite);}}
@layer components{@media (max-width: 760px){.whois__item{grid-template-columns: 1fr;}}}
@layer components{@media (max-width: 760px){.whois__row{grid-template-columns: 1fr;}}}
@layer components{.pcard--poster{position: relative; display: block; aspect-ratio: 3 / 4; overflow: hidden; background: #15181c; color: #fff; text-decoration: none; isolation: isolate; border: 0; padding: 0;}}
@layer components{.pcard--poster .pcard__art{position: absolute; inset: 0; z-index: 0;}}
@layer components{.pcard--poster .pcard__art img{position: absolute; inset: 0; width: 100%; height: 100%;}}
@layer components{.pcard--poster .pcard__fill{object-fit: cover; filter: blur(30px) saturate(.7) brightness(.4); transform: scale(1.25);}}
@layer components{.pcard--poster .pcard__pic{object-fit: contain; object-position: center; filter: saturate(.95) contrast(1.05); transition: transform .7s ease;}}
@layer components{.pcard--poster:hover .pcard__pic{transform: scale(1.03);}}
@layer components{.pcard--poster .pcard__art::after{content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(14,16,19,.25) 0%, rgba(14,16,19,0) 22%, rgba(14,16,19,0) 55%, rgba(14,16,19,.7) 80%, rgba(14,16,19,.96) 100%);}}
@layer components{.pcard--poster.no-photo .pcard__art{background: linear-gradient(160deg, #1f2329 0%, #0e1013 100%);}}
@layer components{.pcard--poster .pcard__mark{position: absolute; right: -22%; top: -12%; width: 95%; aspect-ratio: 1; background: var(--c) center / contain no-repeat; opacity: .07;}}
@layer components{.pcard--poster .pcard__initials{position: absolute; left: 18px; top: 14px; font-family: var(--font-display); font-size: clamp(3.5rem, 6vw, 5.5rem); line-height: 1; color: rgba(255,255,255,.14); letter-spacing: -.03em;}}
@layer components{.pcard--poster .pcard__over{position: absolute; left: 0; right: 0; bottom: 0; z-index: 1; padding: 16px 16px 16px; display: flex; flex-direction: column; gap: 4px;}}
@layer components{.pcard--poster .pcard__why{align-self: flex-start; font-family: var(--font-display); font-size: .625rem; letter-spacing: .16em; text-transform: uppercase; color: #fff; background: var(--red); padding: 3px 7px; margin-bottom: 4px;}}
@layer components{.pcard--poster .pcard__name{font-family: var(--font-display); font-size: clamp(1.375rem, 2vw, 1.75rem); line-height: .95; text-transform: uppercase; letter-spacing: .005em; text-shadow: 0 2px 18px rgba(0,0,0,.6);}}
@layer components{.pcard--poster .pcard__meta{font-family: var(--font-display); font-size: .75rem; letter-spacing: .1em; text-transform: uppercase; color: rgba(255,255,255,.7);}}
@layer components{.pcard--poster::before{content: ""; position: absolute; left: 0; right: 0; top: 0; height: 5px; background: var(--red); z-index: 2; transform: scaleX(0); transform-origin: left; transition: transform .3s;}}
@layer components{.pcard--poster:hover::before{transform: scaleX(1);}}
@layer components{@media (max-width: 900px){.pcard--poster .pcard__name{font-size: 1.125rem;}}}