/* VidSlicers brand treatment for the NFL proof-of-work page. */
.nfl-cinematic.nfl-branded { --font-display: 'Archivo', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; --ink: #05071f; --ink-soft: #46516b; --line: #d9e0ee; --surface-alt: #eff3fa; --gold: #deab45; background: #fafcff; }
.nfl-branded .nfl-jw { --jw-ink: #05071f; --jw-soft: #46516b; --jw-line: #d9e0ee; --jw-gold: #deab45; --jw-gold-deep: #9b6c15; --jw-navy: #000c66; background: #fafcff; }
.nfl-branded .container { max-width: 1200px; padding-inline: 32px; }
.nfl-branded h1, .nfl-branded h2, .nfl-branded h3, .nfl-branded h4 { font-family: var(--font-display); font-weight: 800; color: #000c66; }
.nfl-branded h2 { font-size: clamp(1.85rem,3.2vw,2.6rem); line-height: 1.17; letter-spacing: -.025em; }
.nfl-branded h3 { font-size: 1.3rem; line-height: 1.3; }
.nfl-branded .sport-eyebrow, .nfl-branded .nfl-jw-kicker { color: #315c9c; }
body:has(.nfl-branded) .nav { background: rgba(250,252,255,.96); border-color: #d9e0ee; color: #05071f; }
body:has(.nfl-branded) .nav-inner { max-width: 1200px; padding: 12px 32px; }
body:has(.nfl-branded) .nav-brand { color: #000c66; font-family: 'Archivo',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; font-size: 22px; font-weight: 800; letter-spacing: -.025em; gap: 12px; }
body:has(.nfl-branded) .nav-brand img { display: block; height: 40px; width: auto; }
body:has(.nfl-branded) .btn-nav { border-radius: 10px; background: #deab45; border-color: #deab45; color: #05071f; font-family: 'Archivo',sans-serif; }
.nfl-branded .btn { border-radius: 10px; font-family: var(--font-display); font-weight: 700; }
.nfl-branded .btn-gold { background: #deab45; color: #05071f; }
.nfl-branded .btn-gold:hover { background: #e6bd60; }
.nfl-branded .nfl-jw-head { display: block; text-align: center; margin: 0 auto 52px; max-width: 980px; }
.nfl-branded .nfl-jw-head h1 { max-width: 25ch; margin: 0 auto; font-size: clamp(2.2rem,4.3vw,3.8rem); line-height: 1.09; letter-spacing: -.035em; font-weight: 800; }
.nfl-branded .nfl-jw-head .hl { color: #000c66; background: linear-gradient(transparent 66%,#deab4550 66%); }
.nfl-branded .nfl-jw-lede { max-width: 69ch; margin: 24px auto 0; font-family: var(--font-body); font-size: 18px; line-height: 1.65; color: #46516b; }
.nfl-branded .nfl-intro-cta { margin-top: 26px; padding: 14px 24px; }
.nfl-branded .nfl-jw-episode-title { font-size: 18px; font-weight: 700; color: #000c66; letter-spacing: -.015em; }
.nfl-branded .nfl-jw-count { color: #000c66; }
.nfl-branded .nfl-jw-sum { border-color: #d9e0ee; color: #46516b; }
.nfl-branded .nfl-jw-sum strong { font-weight: 800; color: #000c66; }
.nfl-branded .nfl-jw-gallery h3 { font-family: var(--font-display); font-size: 28px; font-weight: 800; }
.nfl-branded .nfl-jw-card-title { font-family: var(--font-body); font-size: 15px; font-weight: 650; line-height: 1.4; }
.nfl-branded .nfl-jw-select[aria-pressed=true], .nfl-branded .nfl-jw-tab[aria-pressed=true] { background: #000c66; border-color: #000c66; color: #fff; }
.nfl-branded .nfl-jw-dialog { background: #000c36; }
.nfl-branded .nfl-jw-dialog h3 { color: #fff; font-weight: 700; font-size: 24px; }
.nfl-branded .nfl-jw-cta p { color: #fff; font-size: 22px; }
.nfl-branded .nfl-jw-panel-meta a, .nfl-branded .nfl-jw-credit a, .nfl-branded .nfl-jw-replay, .nfl-branded .text-link, .nfl-branded .sport-endnote a, .nfl-branded .sport-application a { color: #315c9c; }
.nfl-branded .nfl-perspectives { background: #000c66; color: #fff; }
.nfl-branded .nfl-perspectives h2, .nfl-branded .nfl-perspectives h3 { color: #fff; }
.nfl-branded .nfl-perspectives .sport-eyebrow, .nfl-branded .nfl-topic-kicker { color: #deab45; }
.nfl-branded .sport-contact { background: #000c66; color: #fff; }
.nfl-branded .sport-contact h2 { color: #fff; }
.nfl-branded .sport-application { background: #fafcff; }
.nfl-branded .sport-application legend { font-weight: 700; color: #000c66; }
.nfl-branded .sport-application legend span { color: #315c9c; }
.nfl-branded .sport-application-intro h2 { font-size: clamp(2.1rem,3.5vw,3rem); line-height: 1.12; }
.nfl-application-note { font-size: 13px; line-height: 1.65; color: #46516b; margin: 0 0 28px; padding-bottom: 22px; border-bottom: 1px solid #d9e0ee; }
.nfl-branded .sport-form-panel .form-note { color: #46516b; }
@media (max-width: 900px) {
 .nfl-branded .nfl-jw-head { margin-bottom: 36px; }
 .nfl-branded .nfl-jw-reel-wrap { display: none; }
 .nfl-branded .nfl-jw-episode-title { font-size: 15px; }
}
@media (max-width: 700px) {
 .nfl-branded .container { padding-inline: 20px; }
 body:has(.nfl-branded) .nav-inner { padding-inline: 20px; gap: 12px; }
 body:has(.nfl-branded) .nav-brand { font-size: 19px; gap: 8px; }
 body:has(.nfl-branded) .nav-brand img { height: 32px; }
 body:has(.nfl-branded) .btn-nav { font-size: 12px; padding: 10px 14px; }
 .nfl-branded .nfl-jw.nfl-workflow:first-child { padding-top: 42px; }
 .nfl-branded .nfl-jw-head h1 { font-size: clamp(2rem,7.8vw,2.75rem); max-width: 23ch; }
 .nfl-branded .nfl-jw-lede { font-size: 16px; margin-top: 20px; }
 .nfl-branded .nfl-intro-cta { font-size: 13px; padding: 13px 18px; }
 .nfl-branded .nfl-jw-cta p { font-size: 19px; }
}
@media (max-width: 780px) {
 .nfl-branded .nfl-jw-cards { margin-inline: 0; padding-inline: 0; scroll-padding-inline: 0; }
}

/* Keep the proof on-site; clear, consistent playback badges on the edited clips. */
.nfl-branded .nfl-jw-card-media::after { content: none; }
.nfl-clip-play { position: absolute; left: 50%; top: 50%; display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; transform: translate(-50%,-50%); color: #000c66; background: rgba(255,255,255,.95); border: 1px solid rgba(255,255,255,.85); box-shadow: 0 3px 18px #00000030, 0 0 0 5px #ffffff1f; pointer-events: none; transition: background .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease; }
.nfl-clip-play svg { display: block; width: 27px; height: 27px; margin-left: 2px; }
.nfl-jw-card:hover .nfl-clip-play, .nfl-jw-card:focus-visible .nfl-clip-play, .nfl-jw-reel-card:hover .nfl-clip-play, .nfl-jw-reel-card:focus-visible .nfl-clip-play { color: #fff; background: #000c66; border-color: #000c66; box-shadow: 0 3px 20px #00000038, 0 0 0 5px #deab4566; transform: translate(-50%,-50%) scale(1.06); }
.nfl-branded .nfl-jw-frame { cursor: default; }
@media (max-width: 900px) {
 .nfl-branded .nfl-jw-source { grid-template-areas: "frame kicker" "frame title" "foot foot"; }
 .nfl-branded .nfl-clip-play { width: 48px; height: 48px; }
 .nfl-branded .nfl-clip-play svg { width: 25px; height: 25px; }
}
@media (prefers-reduced-motion: reduce) { .nfl-clip-play { transition: none; } }
