/* ===========================================================
   Minnesota Vikings fan site — Cris Carter legend profile
   Prefix: ccr- (Cris CarteR). Scoped to .page-criscarter.
   Hero is CSS-gradient only: no photography is licensed for
   this subject, so nothing is hotlinked and no image is faked.
   =========================================================== */

.page-criscarter{background:var(--page)}
.page-criscarter ol{margin:0;padding:0;list-style:none}

/* ---------- breadcrumb ---------- */
.ccr-crumb{padding:14px 0}
.ccr-crumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12.5px;color:#5d5d66}
.ccr-crumb a{color:var(--purple)}
.ccr-crumb a:hover{text-decoration:underline}
.ccr-crumb [aria-current]{color:var(--text)}
.ccr-sep{color:#8a8a95}

/* =========================================================
   1. HERO — pure CSS gradient treatment
   ========================================================= */
.ccr-hero{
  position:relative;overflow:hidden;color:#fff;isolation:isolate;
  background:
    radial-gradient(ellipse 62% 92% at 14% 26%, rgba(79,38,131,.92), rgba(79,38,131,0) 64%),
    radial-gradient(ellipse 58% 88% at 86% 22%, rgba(68,206,227,.26), rgba(68,206,227,0) 62%),
    linear-gradient(180deg,#170f28 0%,#211538 46%,#0c0812 100%);
  border-bottom:3px solid var(--gold);
}
/* faint diagonal yard-line texture, drawn entirely in CSS */
.ccr-hero::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:repeating-linear-gradient(104deg,rgba(255,255,255,.05) 0 1px,rgba(255,255,255,0) 1px 74px);
}
.ccr-hero-in{position:relative;padding:54px 0 40px;max-width:760px}
.ccr-eyebrow{
  display:inline-flex;align-items:center;gap:8px;font-family:var(--display);font-weight:600;
  font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--gold);margin-bottom:14px;
}
.ccr-eyebrow .ccr-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);flex:none}
.ccr-h1{
  font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:-.01em;
  font-size:clamp(40px,7vw,76px);line-height:.96;margin-bottom:6px;
}
.ccr-h1 small{
  display:block;font-family:var(--body);font-weight:600;text-transform:none;letter-spacing:0;
  font-size:16px;color:rgba(255,255,255,.76);margin-top:10px;
}
.ccr-tagline{
  font-family:var(--display);font-weight:600;text-transform:uppercase;letter-spacing:.03em;
  font-size:clamp(15px,2vw,20px);color:#fff;margin:14px 0 0;line-height:1.4;
}
.ccr-tagline b{color:var(--gold)}
.ccr-lede{font-size:16.5px;line-height:1.62;color:rgba(255,255,255,.88);margin-top:16px;max-width:640px}
.ccr-hero-facts{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:26px;
  border-top:1px solid rgba(255,255,255,.2);padding-top:18px;
}
.ccr-hero-facts li{display:flex;flex-direction:column;gap:3px;min-width:0}
.ccr-hero-facts b{font-family:var(--display);font-weight:700;font-size:clamp(20px,3vw,28px);color:#fff;line-height:1}
.ccr-hero-facts span{font-size:11.5px;letter-spacing:.03em;text-transform:uppercase;color:rgba(255,255,255,.74)}

/* =========================================================
   2. ANCHOR TAB STRIP
   ========================================================= */
.ccr-tabs-wrap{
  position:sticky;top:0;z-index:20;background:var(--card);border-bottom:1px solid var(--line);
  box-shadow:0 2px 10px rgba(20,15,40,.06);
}
.ccr-tabs{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.ccr-tabs::-webkit-scrollbar{display:none}
.ccr-tabs a{
  flex:none;padding:15px 18px;font-family:var(--display);font-weight:600;font-size:13px;
  letter-spacing:.04em;text-transform:uppercase;color:#5d5d66;border-bottom:3px solid transparent;
  white-space:nowrap;transition:color var(--t-fast),border-color var(--t-fast);
}
.ccr-tabs a:hover{color:var(--purple)}
.ccr-tabs a:first-child{color:var(--purple);border-bottom-color:var(--purple)}

/* =========================================================
   3. SECTION SCAFFOLDING
   ========================================================= */
.ccr-sect{padding:var(--space-5) 0;border-bottom:1px solid var(--line)}
.ccr-sect-head{margin-bottom:var(--space-3)}
.ccr-eyebrow-sm{
  display:block;font-family:var(--display);font-weight:600;font-size:12px;letter-spacing:.08em;
  text-transform:uppercase;color:var(--purple);margin-bottom:8px;
}
.ccr-h2{
  font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:-.005em;
  font-size:clamp(24px,3.4vw,34px);line-height:1.08;
}
.ccr-dek{font-size:15px;color:#5d5d66;margin-top:8px;max-width:660px;line-height:1.55}
.ccr-prose p{font-size:16.5px;line-height:1.68;color:#2b2b33;max-width:72ch}
.ccr-prose p + p{margin-top:var(--space-2)}
.ccr-prose a{color:var(--purple);text-decoration:underline;text-underline-offset:2px}
.ccr-prose a:hover{color:#3b1c63}

/* =========================================================
   4. OVERVIEW GRID
   ========================================================= */
.ccr-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);align-items:start}
.ccr-panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.ccr-panel h3{
  font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:15px;
  letter-spacing:.05em;color:var(--purple-ink);margin-bottom:14px;
}
.ccr-snap-list{margin:0}
.ccr-snap-list > div{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #e7e7ee}
.ccr-snap-list > div:last-child{border-bottom:0}
.ccr-snap-list dt{font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;color:#5d5d66;flex:none}
.ccr-snap-list dd{margin:0;font-size:14.5px;font-weight:600;color:#22222a;text-align:right}

.ccr-callout{
  background:linear-gradient(160deg,#2a1450 0%,#4f2683 100%);color:#fff;
  border-radius:var(--radius);padding:24px;border:1px solid rgba(255,255,255,.12);
}
.ccr-callout h3{
  font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:15px;
  letter-spacing:.05em;color:var(--gold);margin-bottom:12px;
}
.ccr-callout p{font-size:15px;line-height:1.6;color:rgba(255,255,255,.92)}
.ccr-callout p + p{margin-top:10px}

.ccr-quicklinks{display:flex;flex-direction:column;gap:2px}
.ccr-quicklinks a{
  display:flex;align-items:center;gap:10px;padding:11px 4px;border-bottom:1px solid #e7e7ee;
  font-size:14.5px;color:#2b2b33;transition:color var(--t-fast),padding-left var(--t-fast);
}
.ccr-quicklinks a:last-child{border-bottom:0}
.ccr-quicklinks a:hover{color:var(--purple);padding-left:8px}
.ccr-quicklinks svg{width:15px;height:15px;flex:none;color:var(--purple)}
.ccr-quicklinks span{flex:1}
.ccr-quicklinks .ccr-ar{width:14px;height:14px;color:#9a9aa3}

/* =========================================================
   5. CHAPTER BLOCKS
   ========================================================= */
.ccr-chapter{
  background:var(--card);border:1px solid var(--line);border-left:4px solid var(--purple);
  border-radius:var(--radius);padding:26px;max-width:calc(72ch + 60px);
}
.ccr-stint-tag{
  display:inline-block;font-family:var(--display);font-weight:600;font-size:12px;letter-spacing:.08em;
  text-transform:uppercase;background:#efe9f8;color:#3b1c63;padding:6px 12px;border-radius:3px;margin-bottom:14px;
}
.ccr-stint-tag.ccr-mt{margin-top:var(--space-3)}

/* pull quote */
.ccr-pull{
  margin-top:var(--space-3);padding:18px 20px;background:#f6f4fb;border-left:4px solid var(--gold);
  border-radius:0 var(--radius) var(--radius) 0;
}
.ccr-pull blockquote{margin:0;font-size:16px;line-height:1.6;color:#2b2b33}
.ccr-pull cite{display:block;margin-top:10px;font-style:normal;font-size:12.5px;letter-spacing:.04em;
  text-transform:uppercase;color:#5d5d66}

/* =========================================================
   6. STAT TILES
   ========================================================= */
.ccr-tile-group + .ccr-tile-group{margin-top:var(--space-4)}
.ccr-tile-group h3{
  font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:15px;
  letter-spacing:.05em;color:var(--purple-ink);margin-bottom:14px;
}
.ccr-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.ccr-tile{
  background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  padding:18px 14px;text-align:center;min-width:0;
}
.ccr-tile b{display:block;font-family:var(--display);font-weight:700;font-size:clamp(22px,3vw,32px);
  line-height:1;color:var(--purple-ink)}
.ccr-tile span{display:block;margin-top:7px;font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;color:#5d5d66}
.ccr-tile.ccr-gold{background:#2a1450;border-color:#2a1450}
.ccr-tile.ccr-gold b{color:var(--gold)}
.ccr-tile.ccr-gold span{color:rgba(255,255,255,.82)}
.ccr-stat-note{margin-top:var(--space-3);font-size:13.5px;line-height:1.6;color:#5d5d66;max-width:80ch}

/* season table */
.ccr-table-scroll{margin-top:var(--space-3);overflow-x:auto;-webkit-overflow-scrolling:touch;
  border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}
.ccr-table{width:100%;border-collapse:collapse;min-width:520px;font-size:14.5px}
.ccr-table caption{
  text-align:left;padding:14px 16px;font-family:var(--display);font-weight:700;text-transform:uppercase;
  font-size:14px;letter-spacing:.05em;color:var(--purple-ink);border-bottom:1px solid var(--line);
}
.ccr-table th,.ccr-table td{padding:11px 16px;text-align:right;border-bottom:1px solid #e7e7ee;color:#2b2b33}
.ccr-table th:first-child,.ccr-table td:first-child{text-align:left}
.ccr-table thead th{
  font-family:var(--display);font-weight:600;font-size:12px;letter-spacing:.06em;text-transform:uppercase;
  color:#4a4a55;background:#f6f4fb;
}
.ccr-table tbody tr:last-child th,.ccr-table tbody tr:last-child td{border-bottom:0}
.ccr-table tbody th{font-weight:600}

/* =========================================================
   7. ACCOLADES + TIMELINE
   ========================================================= */
.ccr-acc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}
.ccr-acc-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.ccr-acc-card h3{
  display:flex;align-items:center;gap:9px;font-family:var(--display);font-weight:700;text-transform:uppercase;
  font-size:15px;letter-spacing:.05em;color:var(--purple-ink);margin-bottom:12px;
}
.ccr-acc-card h3 svg{width:16px;height:16px;color:var(--purple);flex:none}
.ccr-acc-card ul{display:flex;flex-direction:column;gap:9px}
.ccr-acc-card li{position:relative;padding-left:16px;font-size:14.5px;line-height:1.6;color:#2b2b33}
.ccr-acc-card li::before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.ccr-acc-card b{color:var(--purple-ink)}

.ccr-timeline{margin-top:var(--space-5)}
.ccr-tl-item{display:grid;grid-template-columns:120px 24px minmax(0,1fr);gap:0 16px}
.ccr-tl-when{
  font-family:var(--display);font-weight:700;font-size:14px;letter-spacing:.04em;text-transform:uppercase;
  color:var(--purple);padding-top:1px;
}
.ccr-tl-dot-col{display:flex;flex-direction:column;align-items:center}
.ccr-tl-dot{width:13px;height:13px;border-radius:50%;background:var(--purple);border:3px solid #fff;
  box-shadow:0 0 0 2px var(--purple);flex:none;margin-top:3px}
.ccr-tl-line{flex:1;width:2px;background:#ddd6ea;margin:6px 0 0}
.ccr-tl-body{padding-bottom:var(--space-3)}
.ccr-tl-body h3{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:16px;
  letter-spacing:.03em;color:var(--purple-ink);margin-bottom:5px}
.ccr-tl-body p{font-size:14.5px;line-height:1.62;color:#2b2b33}

/* =========================================================
   8. SIGNATURE SEASONS CARDS
   ========================================================= */
.ccr-seasons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}
.ccr-season{
  position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  padding:24px 22px 22px;
}
.ccr-season-no{
  display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;
  background:var(--purple);color:#fff;font-family:var(--display);font-weight:700;font-size:15px;margin-bottom:12px;
}
.ccr-season h3{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:17px;
  letter-spacing:.03em;color:var(--purple-ink);margin-bottom:8px}
.ccr-season p{font-size:14.5px;line-height:1.62;color:#2b2b33}
.ccr-season-when{
  display:block;margin-top:12px;padding-top:12px;border-top:1px solid #e7e7ee;
  font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:#5d5d66;
}

/* =========================================================
   9. LEGACY + RELATED + CLOSER
   ========================================================= */
.ccr-legacy-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:var(--space-4);align-items:start}

.ccr-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}
.ccr-related-card{
  display:block;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px;
  transition:transform var(--t),box-shadow var(--t),border-color var(--t);
}
.ccr-related-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(30,20,60,.12);border-color:#bfb3d8}
.ccr-related-tag{
  display:inline-block;font-family:var(--display);font-weight:600;font-size:11px;letter-spacing:.08em;
  text-transform:uppercase;background:#efe9f8;color:#3b1c63;padding:5px 10px;border-radius:3px;margin-bottom:12px;
}
.ccr-related-card h3{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:17px;
  letter-spacing:.02em;line-height:1.2;color:var(--purple-ink);margin-bottom:8px}
.ccr-related-card p{font-size:14.5px;line-height:1.6;color:#2b2b33}
.ccr-arlink{
  display:inline-flex;align-items:center;gap:7px;margin-top:14px;font-family:var(--display);font-weight:600;
  font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--purple);
}
.ccr-arlink svg{width:14px;height:14px}

.ccr-sources{
  margin-top:var(--space-4);padding:18px 20px;background:#f0eef6;border:1px solid #ddd6ea;
  border-radius:var(--radius);font-size:13.5px;line-height:1.65;color:#44444f;
}
.ccr-sources h2{
  font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:.08em;
  color:var(--purple-ink);margin-bottom:8px;
}
.ccr-sources a{color:var(--purple);text-decoration:underline;text-underline-offset:2px}

.ccr-closer{background:linear-gradient(160deg,#2a1450 0%,#4f2683 100%);color:#fff;padding:var(--space-5) 0;text-align:center}
.ccr-closer h2{font-family:var(--display);font-weight:700;text-transform:uppercase;
  font-size:clamp(24px,3.4vw,34px);letter-spacing:.01em;line-height:1.1;margin-bottom:12px}
.ccr-closer p{max-width:68ch;margin:0 auto var(--space-3);font-size:16px;line-height:1.6;color:rgba(255,255,255,.9)}

/* =========================================================
   10. RESPONSIVE
   ========================================================= */
@media (max-width:1024px){
  .ccr-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ccr-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ccr-seasons{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ccr-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ccr-legacy-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .ccr-hero-in{padding:40px 0 32px}
  .ccr-hero-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px}
  .ccr-overview-grid{grid-template-columns:minmax(0,1fr)}
  .ccr-acc-grid{grid-template-columns:minmax(0,1fr)}
  .ccr-seasons{grid-template-columns:minmax(0,1fr)}
  .ccr-related-grid{grid-template-columns:minmax(0,1fr)}
  .ccr-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ccr-chapter{padding:20px}
  .ccr-sect{padding:var(--space-4) 0}
  .ccr-tl-item{grid-template-columns:88px 22px minmax(0,1fr);gap:0 12px}
  .ccr-tl-when{font-size:12.5px}
  .ccr-prose p{font-size:16px}
}
@media (max-width:420px){
  .ccr-tiles{grid-template-columns:minmax(0,1fr)}
  .ccr-snap-list > div{flex-direction:column;gap:2px}
  .ccr-snap-list dd{text-align:left}
}
@media (prefers-reduced-motion:reduce){
  .ccr-related-card,.ccr-quicklinks a{transition:none}
  .ccr-related-card:hover{transform:none}
}
