/* ===========================================================
   minnesotavikings.io — /players/chris-doleman/
   Every class on this page is prefixed .cdl- and every rule is
   scoped under .page-doleman so nothing leaks into the shared
   chrome or into a concurrently-built sibling page.
   =========================================================== */

.page-doleman{
  --cdl-purple:#4F2683;
  --cdl-purple-deep:#361a5c;
  --cdl-purple-ink:#20103c;
  --cdl-night:#140a26;
  --cdl-gold:#44CEE3;
  --cdl-gold-ink:#0e5863;          /* gold family, but legible on light */
  --cdl-page:#F4F2ED;
  --cdl-card:#ffffff;
  --cdl-ink:#141319;
  --cdl-ink-soft:#4b4a55;
  --cdl-line:#dad7ce;
  --cdl-line-dark:rgba(255,255,255,.20);
  --cdl-col:1160px;
  background:var(--cdl-page);
  color:var(--cdl-ink);
}

.page-doleman main{background:var(--cdl-page)}
.page-doleman :focus-visible{outline:3px solid var(--cdl-gold);outline-offset:2px;border-radius:2px}

.page-doleman .cdl-shell{width:100%;max-width:var(--cdl-col);margin:0 auto;padding:0 20px}
.page-doleman .cdl-shell > *{min-width:0}

/* ---------------- breadcrumb ---------------- */
.page-doleman .cdl-crumb{background:var(--cdl-night);color:#fff;padding:11px 0}
.page-doleman .cdl-crumb ol{
  list-style:none;margin:0;padding:0;
  display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;
  font-family:var(--display,inherit);font-size:12px;letter-spacing:.12em;text-transform:uppercase;
}
.page-doleman .cdl-crumb li{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.82)}
.page-doleman .cdl-crumb li + li::before{content:"/";color:rgba(255,255,255,.45)}
.page-doleman .cdl-crumb a{color:var(--cdl-gold);text-decoration:none;border-bottom:1px solid transparent}
.page-doleman .cdl-crumb a:hover{border-bottom-color:var(--cdl-gold)}
.page-doleman .cdl-crumb [aria-current="page"]{color:#fff}

/* ---------------- hero ---------------- */
.page-doleman .cdl-hero{
  position:relative;overflow:hidden;color:#fff;
  background:
    radial-gradient(120% 140% at 82% 6%, rgba(68,206,227,.22) 0%, rgba(68,206,227,0) 52%),
    radial-gradient(90% 120% at 6% 100%, rgba(79,38,131,.85) 0%, rgba(79,38,131,0) 60%),
    linear-gradient(160deg,#2c1550 0%,#20103c 46%,#140a26 100%);
}
.page-doleman .cdl-hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(115deg,rgba(255,255,255,.045) 0 2px,rgba(255,255,255,0) 2px 13px);
}
.page-doleman .cdl-hero-in{
  position:relative;display:grid;gap:28px;
  grid-template-columns:minmax(0,1fr);
  padding:46px 0 40px;
}
.page-doleman .cdl-dateline{
  display:inline-flex;align-items:center;gap:12px;
  font-family:var(--display,inherit);font-weight:600;text-transform:uppercase;
  font-size:12px;letter-spacing:.2em;color:var(--cdl-gold);margin:0 0 14px;
}
.page-doleman .cdl-dateline span{display:block;width:34px;height:2px;background:var(--cdl-gold)}
.page-doleman .cdl-hero .h1-group{
  font-family:var(--display,inherit);font-weight:700;text-transform:uppercase;
  font-size:clamp(38px,7.4vw,84px);line-height:.92;letter-spacing:.005em;margin:0;
  text-wrap:balance;
}
.page-doleman .cdl-hero .h1-group small{
  display:block;margin-top:14px;
  font-family:var(--body,inherit);font-weight:500;text-transform:none;
  font-size:clamp(14px,1.7vw,18px);letter-spacing:.02em;line-height:1.4;
  color:var(--cdl-gold);
}
.page-doleman .cdl-life{
  margin:18px 0 0;font-family:var(--display,inherit);font-weight:600;
  font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.78);
}
.page-doleman .cdl-tagline{
  margin:18px 0 0;max-width:56ch;font-size:clamp(16px,1.9vw,19px);line-height:1.55;
  color:rgba(255,255,255,.93);
}

/* the "56" typographic mark — purely decorative, no photography */
.page-doleman .cdl-mark{
  position:relative;align-self:center;justify-self:start;
  font-family:var(--display,inherit);font-weight:700;line-height:.8;
  font-size:clamp(110px,22vw,230px);letter-spacing:-.02em;
  color:transparent;
  -webkit-text-stroke:2px rgba(68,206,227,.55);
  text-shadow:0 0 60px rgba(68,206,227,.14);
  user-select:none;
}
.page-doleman .cdl-mark b{
  display:block;font-family:var(--display,inherit);font-weight:600;
  font-size:13px;letter-spacing:.24em;text-transform:uppercase;
  color:rgba(255,255,255,.7);-webkit-text-stroke:0;margin-top:10px;
}

/* ---------------- ledger band ---------------- */
.page-doleman .cdl-ledger{background:var(--cdl-night);border-top:1px solid var(--cdl-line-dark);color:#fff}
.page-doleman .cdl-ledger-in{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
}
.page-doleman .cdl-cell{
  padding:20px 20px 22px;border-top:1px solid var(--cdl-line-dark);border-left:1px solid var(--cdl-line-dark);
}
.page-doleman .cdl-cell:nth-child(-n+2){border-top:0}
.page-doleman .cdl-cell:nth-child(2n+1){border-left:0}
.page-doleman .cdl-cell b{
  display:block;font-family:var(--display,inherit);font-weight:700;
  font-size:clamp(28px,4.6vw,40px);line-height:1;color:var(--cdl-gold);
}
.page-doleman .cdl-cell span{
  display:block;margin-top:8px;font-size:13px;letter-spacing:.1em;
  text-transform:uppercase;color:rgba(255,255,255,.74);
}

/* ---------------- jump rail ---------------- */
.page-doleman .cdl-jump{background:var(--cdl-card);border-bottom:1px solid var(--cdl-line)}
.page-doleman .cdl-jump nav{display:flex;flex-wrap:wrap;gap:6px 4px;padding:10px 0}
.page-doleman .cdl-jump a{
  font-family:var(--display,inherit);font-weight:600;font-size:12px;letter-spacing:.11em;
  text-transform:uppercase;color:var(--cdl-purple);padding:9px 12px;border-radius:3px;
  min-height:38px;display:inline-flex;align-items:center;
  transition:background var(--t-fast,150ms),color var(--t-fast,150ms);
}
.page-doleman .cdl-jump a:hover{background:var(--cdl-purple);color:#fff}

/* ---------------- section frame ----------------
   Distinct rhythm: a numbered rail on the left, prose on the right. */
.page-doleman .cdl-sec{padding:46px 0;border-bottom:1px solid var(--cdl-line)}
.page-doleman .cdl-sec:last-of-type{border-bottom:0}
.page-doleman .cdl-sec-in{display:grid;gap:20px 40px;grid-template-columns:minmax(0,1fr)}
.page-doleman .cdl-rail{position:relative;padding-left:16px;border-left:3px solid var(--cdl-gold)}
.page-doleman .cdl-no{
  display:block;font-family:var(--display,inherit);font-weight:700;font-size:13px;
  letter-spacing:.2em;color:var(--cdl-gold-ink);
}
.page-doleman .cdl-kicker{
  display:block;margin-top:4px;font-family:var(--display,inherit);font-weight:700;
  text-transform:uppercase;font-size:12px;letter-spacing:.17em;color:var(--cdl-purple);
}
.page-doleman .cdl-h2{
  font-family:var(--display,inherit);font-weight:700;text-transform:uppercase;
  font-size:clamp(24px,3.2vw,36px);line-height:1.05;letter-spacing:.01em;margin:0 0 12px;
  text-wrap:balance;
}
.page-doleman .cdl-h3{
  font-family:var(--display,inherit);font-weight:700;text-transform:uppercase;
  font-size:16px;letter-spacing:.05em;line-height:1.2;margin:0 0 8px;
}
.page-doleman .cdl-deck{margin:0 0 16px;font-size:17px;line-height:1.5;color:var(--cdl-ink-soft);max-width:62ch}
.page-doleman .cdl-p{margin:0 0 14px;font-size:16.5px;line-height:1.66;max-width:68ch}
.page-doleman .cdl-p:last-child{margin-bottom:0}
.page-doleman .cdl-a{color:var(--cdl-purple);font-weight:600;border-bottom:2px solid rgba(79,38,131,.3)}
.page-doleman .cdl-a:hover{border-bottom-color:var(--cdl-purple)}

/* dark variant */
.page-doleman .cdl-dark{
  background:linear-gradient(165deg,#2a1450 0%,#1b0e34 100%);
  color:#fff;border-bottom:0;
}
.page-doleman .cdl-dark .cdl-rail{border-left-color:var(--cdl-gold)}
.page-doleman .cdl-dark .cdl-no,
.page-doleman .cdl-dark .cdl-kicker{color:var(--cdl-gold)}
.page-doleman .cdl-dark .cdl-deck{color:rgba(255,255,255,.82)}
.page-doleman .cdl-dark .cdl-a{color:var(--cdl-gold);border-bottom-color:rgba(68,206,227,.4)}

/* ---------------- snapshot ---------------- */
.page-doleman .cdl-snap{
  margin:0;background:var(--cdl-card);border:1px solid var(--cdl-line);border-radius:var(--radius,5px);
  padding:6px 18px;
}
.page-doleman .cdl-snap > div{
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 18px;
  padding:11px 0;border-bottom:1px solid var(--cdl-line);
}
.page-doleman .cdl-snap > div:last-child{border-bottom:0}
.page-doleman .cdl-snap dt{
  font-family:var(--display,inherit);font-weight:700;font-size:12px;letter-spacing:.11em;
  text-transform:uppercase;color:var(--cdl-ink-soft);margin:0;
}
.page-doleman .cdl-snap dd{margin:0;font-weight:600;font-size:15px;text-align:right}

/* ---------------- big pull number (1989) ---------------- */
.page-doleman .cdl-peak{
  display:grid;gap:18px 34px;align-items:center;grid-template-columns:minmax(0,1fr);
  background:rgba(255,255,255,.06);border:1px solid var(--cdl-line-dark);
  border-radius:var(--radius,5px);padding:24px;margin:0 0 20px;
}
.page-doleman .cdl-peak-n{
  font-family:var(--display,inherit);font-weight:700;line-height:.82;
  font-size:clamp(72px,14vw,132px);color:var(--cdl-gold);margin:0;
}
.page-doleman .cdl-peak-n em{
  display:block;font-style:normal;font-family:var(--display,inherit);font-weight:600;
  font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.78);margin-top:10px;
}
.page-doleman .cdl-peak div p{margin:0 0 12px;font-size:16.5px;line-height:1.65;color:rgba(255,255,255,.92)}
.page-doleman .cdl-peak div p:last-child{margin-bottom:0}

/* ---------------- rank bars ---------------- */
.page-doleman .cdl-bars{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.page-doleman .cdl-bar{display:grid;gap:5px}
.page-doleman .cdl-bar-top{
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 14px;align-items:baseline;
}
.page-doleman .cdl-bar-name{font-weight:600;font-size:15px}
.page-doleman .cdl-bar-name .cdl-rk{
  display:inline-block;min-width:2.1em;font-family:var(--display,inherit);font-weight:700;
  font-size:12px;letter-spacing:.1em;color:var(--cdl-ink-soft);
}
.page-doleman .cdl-bar-val{
  font-family:var(--display,inherit);font-weight:700;font-size:15px;letter-spacing:.04em;
}
.page-doleman .cdl-bar-track{height:12px;background:#e4e0d6;border-radius:2px;overflow:hidden}
.page-doleman .cdl-bar-fill{
  display:block;height:100%;background:linear-gradient(90deg,var(--cdl-purple),#6b38ac);border-radius:2px;
}
.page-doleman .cdl-bar.is-him .cdl-bar-fill{background:linear-gradient(90deg,#158596,var(--cdl-gold))}
.page-doleman .cdl-bar.is-him .cdl-bar-name,
.page-doleman .cdl-bar.is-him .cdl-bar-val{color:var(--cdl-gold-ink)}
.page-doleman .cdl-bar.is-him .cdl-bar-name .cdl-rk{color:var(--cdl-gold-ink)}
.page-doleman .cdl-barnote{margin:16px 0 0;font-size:14px;line-height:1.6;color:var(--cdl-ink-soft);max-width:72ch}

/* ---------------- table ---------------- */
.page-doleman .cdl-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--cdl-line);border-radius:var(--radius,5px);background:var(--cdl-card)}
.page-doleman .cdl-table{width:100%;border-collapse:collapse;min-width:520px;font-size:15px}
.page-doleman .cdl-table caption{
  text-align:left;padding:14px 16px;font-size:13.5px;line-height:1.5;color:var(--cdl-ink-soft);
  border-bottom:1px solid var(--cdl-line);
  position:sticky;left:0;box-sizing:border-box;width:min(100%,calc(100vw - 42px));
}
.page-doleman .cdl-table th,
.page-doleman .cdl-table td{padding:10px 16px;text-align:left;border-bottom:1px solid var(--cdl-line)}
.page-doleman .cdl-table thead th{
  font-family:var(--display,inherit);font-weight:700;font-size:12px;letter-spacing:.11em;
  text-transform:uppercase;background:var(--cdl-purple-ink);color:#fff;border-bottom:0;
}
.page-doleman .cdl-table tbody th{font-weight:700}
.page-doleman .cdl-table tbody tr:nth-child(even){background:#faf9f6}
.page-doleman .cdl-table tr.is-peak{background:rgba(68,206,227,.22)}
.page-doleman .cdl-table tr.is-peak td,
.page-doleman .cdl-table tr.is-peak th{font-weight:700}
.page-doleman .cdl-table tfoot th,
.page-doleman .cdl-table tfoot td{
  font-weight:700;background:#efece4;border-bottom:0;border-top:2px solid var(--cdl-purple);
}

/* ---------------- honors ---------------- */
.page-doleman .cdl-honors{list-style:none;margin:0;padding:0;display:grid;gap:0}
.page-doleman .cdl-honor{
  display:grid;gap:4px 22px;grid-template-columns:minmax(0,1fr);
  padding:16px 0;border-top:1px solid var(--cdl-line);
}
.page-doleman .cdl-honor:first-child{border-top:0}
.page-doleman .cdl-honor-when{
  font-family:var(--display,inherit);font-weight:700;font-size:13px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--cdl-gold-ink);margin:0;
}
.page-doleman .cdl-honor-body p{margin:0;font-size:16px;line-height:1.6;color:var(--cdl-ink-soft)}

/* ---------------- memorial card ---------------- */
.page-doleman .cdl-memorial{
  background:var(--cdl-card);border:1px solid var(--cdl-line);border-top:4px solid var(--cdl-purple);
  border-radius:var(--radius,5px);padding:24px;
}
.page-doleman .cdl-memorial .cdl-h3{color:var(--cdl-purple)}
.page-doleman .cdl-memorial p{margin:0 0 12px;font-size:16px;line-height:1.65}
.page-doleman .cdl-memorial p:last-child{margin-bottom:0}
.page-doleman p.cdl-memorial-dates{
  font-family:var(--display,inherit);font-weight:700;font-size:15px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--cdl-ink-soft);
}

/* ---------------- sources ---------------- */
.page-doleman .cdl-sources{
  margin-top:24px;padding:18px 20px;background:#eceadf;border-left:4px solid var(--cdl-purple);
  border-radius:0 var(--radius,5px) var(--radius,5px) 0;
}
.page-doleman .cdl-sources p{margin:0;font-size:14px;line-height:1.65;color:#3f3e48}
.page-doleman .cdl-sources ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:5px}
.page-doleman .cdl-sources li{font-size:14px;line-height:1.6;color:#3f3e48}

/* ---------------- related ---------------- */
.page-doleman .cdl-related{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}
.page-doleman .cdl-rel{
  display:block;background:var(--cdl-card);border:1px solid var(--cdl-line);
  border-radius:var(--radius,5px);padding:20px;
  transition:transform var(--t,220ms),box-shadow var(--t,220ms),border-color var(--t,220ms);
}
.page-doleman .cdl-rel:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(20,10,38,.14);border-color:#c3bdae}
.page-doleman .cdl-rel-tag{
  display:inline-block;font-family:var(--display,inherit);font-weight:700;font-size:11px;
  letter-spacing:.16em;text-transform:uppercase;color:var(--cdl-purple);margin-bottom:8px;
}
.page-doleman .cdl-rel p{margin:0 0 12px;font-size:15px;line-height:1.6;color:var(--cdl-ink-soft)}
.page-doleman .cdl-rel-go{
  display:inline-flex;align-items:center;gap:8px;font-family:var(--display,inherit);font-weight:700;
  font-size:12px;letter-spacing:.11em;text-transform:uppercase;color:var(--cdl-purple);
}
.page-doleman .cdl-rel-go svg{width:14px;height:14px}

/* ---------------- closer ---------------- */
.page-doleman .cdl-closer{
  background:linear-gradient(160deg,#2c1550 0%,#140a26 100%);color:#fff;padding:48px 0;text-align:center;
}
.page-doleman .cdl-closer h2{
  font-family:var(--display,inherit);font-weight:700;text-transform:uppercase;
  font-size:clamp(24px,3.6vw,38px);line-height:1.05;margin:0 0 14px;
}
.page-doleman .cdl-closer p{
  margin:0 auto 22px;max-width:64ch;font-size:16.5px;line-height:1.65;color:rgba(255,255,255,.9);
}

/* ---------------- responsive ---------------- */
@media (min-width:640px){
  .page-doleman .cdl-ledger-in{grid-template-columns:repeat(4,minmax(0,1fr))}
  .page-doleman .cdl-cell:nth-child(-n+4){border-top:0}
  .page-doleman .cdl-cell:nth-child(2n+1){border-left:1px solid var(--cdl-line-dark)}
  .page-doleman .cdl-cell:nth-child(4n+1){border-left:0}
  .page-doleman .cdl-peak{grid-template-columns:auto minmax(0,1fr)}
  .page-doleman .cdl-honor{grid-template-columns:170px minmax(0,1fr)}
  .page-doleman .cdl-related{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (min-width:900px){
  .page-doleman .cdl-hero-in{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);padding:60px 0 54px;gap:40px}
  .page-doleman .cdl-mark{justify-self:end;text-align:right}
  .page-doleman .cdl-sec-in{grid-template-columns:222px minmax(0,1fr)}
  .page-doleman .cdl-rail{position:sticky;top:18px;align-self:start}
  .page-doleman .cdl-related{grid-template-columns:repeat(3,minmax(0,1fr))}
  .page-doleman .cdl-split{display:grid;gap:34px;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start}
}

@media (prefers-reduced-motion:reduce){
  .page-doleman *,
  .page-doleman *::before,
  .page-doleman *::after{
    animation-duration:.01ms !important;animation-iteration-count:1 !important;
    transition-duration:.01ms !important;scroll-behavior:auto !important;
  }
  .page-doleman .cdl-rel:hover{transform:none}
}
