/* ===========================================================
   minnesotavikings.io — /coaches/dennis-green/
   Dennis Green coach profile.
   Every class on this page is prefixed .dgr- and every rule is
   scoped to .page-dgreen, so nothing leaks into the shared
   chrome, into style.css, or into a sibling page being built
   at the same time.
   The page is built around a season-by-season ledger: a coach's
   record is the subject, so the ledger is the composition.
   Hero is CSS-gradient and type only: no photography of this
   subject is licensed on this server, so no <img> is used.
   =========================================================== */

.page-dgreen{
  --dgr-purple:var(--purple,#4f2683);
  --dgr-purple-deep:var(--purple-deep,#3b1c63);
  --dgr-purple-ink:var(--purple-ink,#2a1450);
  --dgr-gold:var(--gold,#44cee3);
  --dgr-gold-deep:var(--gold-deep,#1db7cf);
  --dgr-panel:var(--panel,#191325);
  --dgr-panel-2:var(--panel-2,#221c33);
  --dgr-card:var(--card,#ffffff);
  --dgr-text:var(--text,#1a1a1a);
  --dgr-muted:var(--text-muted,#5d5d66);
  --dgr-line:var(--line,#d2d2de);
  --dgr-col:1120px;
  --dgr-rail:250px;
  background:var(--page,#f3f3f5);
}

.page-dgreen .dgr-wrap{width:100%;max-width:var(--dgr-col);margin:0 auto;padding:0 20px}

/* keep style.css focus rings visible on light and dark alike */
.page-dgreen :focus-visible{outline:3px solid var(--dgr-gold);outline-offset:2px;border-radius:2px}

/* ---------- breadcrumb ---------- */
.page-dgreen .dgr-crumb{background:var(--dgr-card);border-bottom:1px solid var(--dgr-line)}
.page-dgreen .dgr-crumb ol{
  list-style:none;margin:0;padding:13px 0;display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  font-size:13px;color:var(--dgr-muted);
}
.page-dgreen .dgr-crumb a{color:var(--dgr-purple);text-decoration:underline;text-underline-offset:2px}
.page-dgreen .dgr-crumb a:hover{color:var(--dgr-purple-ink)}
.page-dgreen .dgr-crumb li[aria-current]{color:var(--dgr-text);font-weight:600}
.page-dgreen .dgr-sep{color:#8d8d99}

/* ---------- hero ---------- */
.page-dgreen .dgr-hero{
  position:relative;overflow:hidden;color:#fff;
  background:
    radial-gradient(115% 130% at 88% 8%, rgba(68,206,227,.20) 0%, rgba(68,206,227,0) 52%),
    linear-gradient(158deg, #2a1450 0%, #4f2683 46%, #3b1c63 78%, #221231 100%);
}
/* ruled field: the ledger motif, stated once, behind the type */
.page-dgreen .dgr-hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:repeating-linear-gradient(to bottom, rgba(255,255,255,.055) 0 1px, transparent 1px 46px);
  mask-image:linear-gradient(to bottom, transparent 0, #000 22%, #000 74%, transparent 100%);
  -webkit-mask-image:linear-gradient(to bottom, transparent 0, #000 22%, #000 74%, transparent 100%);
}
.page-dgreen .dgr-hero-in{position:relative;padding:52px 0 46px;max-width:940px}
.page-dgreen .dgr-eyebrow{
  font-family:var(--display);font-weight:600;text-transform:uppercase;letter-spacing:.16em;
  font-size:12px;color:var(--dgr-gold);display:flex;align-items:center;gap:10px;margin:0 0 18px;
}
.page-dgreen .dgr-eyebrow span.dgr-rule{flex:1;height:1px;background:rgba(68,206,227,.42);max-width:180px}
.page-dgreen .dgr-h1{
  font-family:var(--display);font-weight:700;text-transform:uppercase;
  font-size:clamp(40px,8.2vw,86px);line-height:.94;letter-spacing:.005em;margin:0;
}
.page-dgreen .dgr-life{
  display:block;margin-top:14px;font-family:var(--body);font-weight:500;text-transform:none;
  letter-spacing:.02em;font-size:clamp(14px,1.5vw,17px);color:rgba(255,255,255,.80);
}
.page-dgreen .dgr-tagline{
  margin:22px 0 0;font-size:clamp(17px,2vw,21px);line-height:1.45;max-width:50ch;color:rgba(255,255,255,.93);
}
.page-dgreen .dgr-tagline b{color:var(--dgr-gold);font-weight:700}
.page-dgreen .dgr-lede{margin:16px 0 0;font-size:16px;line-height:1.62;max-width:68ch;color:rgba(255,255,255,.80)}

/* hero ledger strip — four cells divided by hairlines, not boxes */
.page-dgreen .dgr-hero-facts{
  list-style:none;margin:34px 0 0;padding:22px 0 0;border-top:1px solid rgba(255,255,255,.20);
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;
}
.page-dgreen .dgr-hero-facts li{padding:0 18px;border-left:1px solid rgba(255,255,255,.16)}
.page-dgreen .dgr-hero-facts li:first-child{padding-left:0;border-left:0}
.page-dgreen .dgr-hero-facts b{
  display:block;font-family:var(--display);font-weight:700;font-size:clamp(24px,3.4vw,36px);
  line-height:1;color:var(--dgr-gold);
}
.page-dgreen .dgr-hero-facts span{
  display:block;margin-top:8px;font-size:12px;line-height:1.35;letter-spacing:.07em;
  text-transform:uppercase;color:rgba(255,255,255,.72);
}

/* ---------- numbered index strip ---------- */
.page-dgreen .dgr-index{background:var(--dgr-panel);border-bottom:3px solid var(--dgr-gold)}
.page-dgreen .dgr-index nav{display:flex;gap:0;overflow-x:auto;scrollbar-width:thin}
.page-dgreen .dgr-index a{
  flex:0 0 auto;display:flex;align-items:baseline;gap:8px;padding:14px 18px;
  font-family:var(--display);font-weight:600;text-transform:uppercase;letter-spacing:.08em;
  font-size:12.5px;color:rgba(255,255,255,.86);border-right:1px solid rgba(255,255,255,.10);
  transition:background var(--t-fast,150ms),color var(--t-fast,150ms);white-space:nowrap;
}
.page-dgreen .dgr-index a:first-child{padding-left:0}
.page-dgreen .dgr-index a i{font-style:normal;color:var(--dgr-gold);font-size:11px;letter-spacing:.04em}
.page-dgreen .dgr-index a:hover{background:rgba(255,255,255,.09);color:#fff}

/* ---------- sections ---------- */
.page-dgreen .dgr-sect{padding:52px 0;border-bottom:1px solid var(--dgr-line)}
.page-dgreen .dgr-sect-head{margin-bottom:26px;max-width:76ch}
.page-dgreen .dgr-kicker{
  display:block;font-family:var(--display);font-weight:600;text-transform:uppercase;
  letter-spacing:.15em;font-size:11.5px;color:var(--dgr-purple);margin-bottom:9px;
}
.page-dgreen .dgr-h2{
  font-family:var(--display);font-weight:700;text-transform:uppercase;line-height:1.06;
  font-size:clamp(25px,3.5vw,38px);letter-spacing:.01em;
}
.page-dgreen .dgr-h3{
  font-family:var(--display);font-weight:600;text-transform:uppercase;letter-spacing:.045em;
  font-size:16px;line-height:1.2;
}
.page-dgreen .dgr-dek{margin:12px 0 0;color:var(--dgr-muted);font-size:16px;line-height:1.6}
.page-dgreen .dgr-p{margin:0 0 14px;font-size:16.5px;line-height:1.68;max-width:72ch}
.page-dgreen .dgr-p:last-child{margin-bottom:0}
.page-dgreen .dgr-p a,.page-dgreen .dgr-sources a,.page-dgreen .dgr-note a{
  color:var(--dgr-purple);text-decoration:underline;text-underline-offset:2px;font-weight:600;
}
.page-dgreen .dgr-p a:hover,.page-dgreen .dgr-sources a:hover{color:var(--dgr-purple-ink)}
.page-dgreen .dgr-note{
  margin:20px 0 0;padding:14px 16px;border-left:3px solid var(--dgr-gold-deep);
  background:#fbf6e6;color:#4a3c14;font-size:14.5px;line-height:1.6;max-width:72ch;
}
.page-dgreen .dgr-note a{color:#5e3c9e}

/* ---------- overview: rail + panels ---------- */
.page-dgreen .dgr-overview{display:grid;grid-template-columns:var(--dgr-rail) minmax(0,1fr);gap:24px;align-items:start}
.page-dgreen .dgr-snapwrap{
  background:var(--dgr-card);border:1px solid var(--dgr-line);border-top:4px solid var(--dgr-purple);
  padding:20px;border-radius:var(--radius,5px);
}
.page-dgreen .dgr-snap{margin:14px 0 0}
.page-dgreen .dgr-snap div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #e7e7ef}
.page-dgreen .dgr-snap div:first-child{border-top:0;padding-top:4px}
.page-dgreen .dgr-snap dt{font-size:12.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--dgr-muted)}
.page-dgreen .dgr-snap dd{margin:0;font-weight:700;font-size:14.5px;text-align:right}
.page-dgreen .dgr-ov-body{display:grid;gap:18px}
.page-dgreen .dgr-dark{
  background:linear-gradient(150deg,var(--dgr-panel) 0%,var(--dgr-purple-ink) 100%);
  color:#fff;padding:24px;border-radius:var(--radius,5px);border-left:4px solid var(--dgr-gold);
}
.page-dgreen .dgr-dark .dgr-h3{color:var(--dgr-gold)}
.page-dgreen .dgr-dark p{margin:12px 0 0;font-size:15.5px;line-height:1.65;color:rgba(255,255,255,.90)}
.page-dgreen .dgr-dark a{color:var(--dgr-gold);text-decoration:underline;text-underline-offset:2px}

/* ---------- the ledger table ---------- */
.page-dgreen .dgr-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--dgr-line);
  border-radius:var(--radius,5px);background:var(--dgr-card)}
.page-dgreen .dgr-table{border-collapse:collapse;width:100%;min-width:720px;font-size:14.5px}
.page-dgreen .dgr-table caption{
  caption-side:top;text-align:left;padding:14px 16px;font-size:13px;color:var(--dgr-muted);
  border-bottom:1px solid var(--dgr-line);
}
.page-dgreen .dgr-table th,.page-dgreen .dgr-table td{padding:11px 14px;text-align:left;border-top:1px solid #e7e7ef;vertical-align:middle}
.page-dgreen .dgr-table thead th{
  background:var(--dgr-purple-ink);color:#fff;border-top:0;font-family:var(--display);font-weight:600;
  text-transform:uppercase;letter-spacing:.08em;font-size:11.5px;white-space:nowrap;
}
.page-dgreen .dgr-table tbody th[scope="row"]{font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:.02em;width:1%;white-space:nowrap}
.page-dgreen .dgr-table tbody tr:nth-child(even){background:#faf9fc}
.page-dgreen .dgr-table tfoot th,.page-dgreen .dgr-table tfoot td{
  background:#f1eef7;border-top:2px solid var(--dgr-purple);font-weight:700;
}
.page-dgreen .dgr-rec{font-weight:700;white-space:nowrap;font-size:15px}
.page-dgreen .dgr-bar{display:block;height:9px;min-width:120px;background:#e6e4ee;border-radius:999px;overflow:hidden}
.page-dgreen .dgr-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--dgr-purple) 0%,#6c3bab 100%);border-radius:999px}
.page-dgreen .dgr-row-title th[scope="row"],.page-dgreen tr.dgr-row-title td{background:#f7f2e2}
.page-dgreen tr.dgr-row-title .dgr-bar i{background:linear-gradient(90deg,var(--dgr-gold-deep) 0%,var(--dgr-gold) 100%)}
.page-dgreen .dgr-flag{
  display:inline-block;font-family:var(--display);font-weight:600;font-size:10.5px;letter-spacing:.09em;
  text-transform:uppercase;padding:3px 7px;border-radius:3px;background:#f0ecf8;color:#432075;white-space:nowrap;
}
.page-dgreen .dgr-flag-gold{background:#f7e6b0;color:#114850}
.page-dgreen .dgr-flag-none{background:#eceaf0;color:#55535c}

/* totals strip under the ledger */
.page-dgreen .dgr-totals{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:22px;
  background:var(--dgr-line);border:1px solid var(--dgr-line);border-radius:var(--radius,5px);overflow:hidden;
}
.page-dgreen .dgr-totals div{background:var(--dgr-card);padding:18px 16px}
.page-dgreen .dgr-totals b{display:block;font-family:var(--display);font-weight:700;font-size:clamp(22px,3vw,30px);line-height:1;color:var(--dgr-purple)}
.page-dgreen .dgr-totals span{display:block;margin-top:7px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--dgr-muted);line-height:1.35}

/* ---------- 1998 split ---------- */
.page-dgreen .dgr-98{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:26px;align-items:start}
.page-dgreen .dgr-98-stats{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--dgr-line);
  border:1px solid var(--dgr-line);border-radius:var(--radius,5px);overflow:hidden;margin-top:18px;
}
.page-dgreen .dgr-98-stats div{background:var(--dgr-card);padding:16px}
.page-dgreen .dgr-98-stats b{display:block;font-family:var(--display);font-weight:700;font-size:26px;line-height:1;color:var(--dgr-purple)}
.page-dgreen .dgr-98-stats span{display:block;margin-top:6px;font-size:12.5px;line-height:1.4;color:var(--dgr-muted)}
.page-dgreen .dgr-verdict{
  background:var(--dgr-panel);color:#fff;border-radius:var(--radius,5px);padding:24px;border-top:4px solid var(--dgr-gold);
}
.page-dgreen .dgr-verdict .dgr-h3{color:var(--dgr-gold)}
.page-dgreen .dgr-verdict p{margin:12px 0 0;font-size:15.5px;line-height:1.65;color:rgba(255,255,255,.90)}
.page-dgreen .dgr-verdict .dgr-plain{
  margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.20);
  font-family:var(--display);font-weight:600;text-transform:uppercase;letter-spacing:.05em;
  font-size:14px;color:var(--dgr-gold);
}

/* ---------- player cross-links ---------- */
.page-dgreen .dgr-players{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.page-dgreen .dgr-player{
  display:block;background:var(--dgr-card);border:1px solid var(--dgr-line);border-radius:var(--radius,5px);
  padding:20px;border-left:4px solid var(--dgr-purple);color:inherit;
  transition:transform var(--t,220ms),box-shadow var(--t,220ms),border-left-color var(--t,220ms);
}
.page-dgreen .dgr-player:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(42,20,80,.14);border-left-color:var(--dgr-gold-deep)}
.page-dgreen .dgr-player p{margin:10px 0 0;font-size:14.5px;line-height:1.6;color:var(--dgr-muted)}
.page-dgreen .dgr-player .dgr-go{
  display:inline-flex;align-items:center;gap:7px;margin-top:14px;font-family:var(--display);font-weight:600;
  text-transform:uppercase;letter-spacing:.09em;font-size:11.5px;color:var(--dgr-purple);
}
.page-dgreen .dgr-player svg{width:15px;height:15px;transition:transform var(--t-fast,150ms)}
.page-dgreen .dgr-player:hover svg{transform:translateX(4px)}

/* ---------- quote ---------- */
.page-dgreen .dgr-quote{
  margin:22px 0 0;padding:24px 26px;background:var(--dgr-card);border:1px solid var(--dgr-line);
  border-left:5px solid var(--dgr-gold);border-radius:var(--radius,5px);max-width:72ch;
}
.page-dgreen .dgr-quote p{
  margin:0;font-family:var(--display);font-weight:600;text-transform:uppercase;line-height:1.2;
  font-size:clamp(20px,3vw,30px);letter-spacing:.01em;color:var(--dgr-purple-ink);
}
.page-dgreen .dgr-quote footer{margin-top:14px;font-size:13.5px;color:var(--dgr-muted);line-height:1.5}

/* ---------- timeline (before / after Minnesota) ---------- */
.page-dgreen .dgr-timeline{list-style:none;margin:0;padding:0;display:grid;gap:0}
.page-dgreen .dgr-tl{display:grid;grid-template-columns:120px 22px minmax(0,1fr);gap:0}
.page-dgreen .dgr-tl-when{
  margin:0;padding:18px 16px 18px 0;font-family:var(--display);font-weight:700;font-size:15px;
  letter-spacing:.03em;color:var(--dgr-purple);text-align:right;
}
.page-dgreen .dgr-tl-rail{position:relative;display:flex;justify-content:center}
.page-dgreen .dgr-tl-dot{position:absolute;top:22px;width:11px;height:11px;border-radius:50%;background:var(--dgr-gold);box-shadow:0 0 0 3px #fff,0 0 0 4px var(--dgr-line)}
.page-dgreen .dgr-tl-line{position:absolute;top:22px;bottom:-6px;width:2px;background:var(--dgr-line)}
.page-dgreen .dgr-tl-body{padding:16px 0 22px 20px}
.page-dgreen .dgr-tl-body p{margin:8px 0 0;font-size:15.5px;line-height:1.62;color:var(--dgr-text);max-width:64ch}

/* ---------- memorial ---------- */
.page-dgreen .dgr-memorial{
  background:linear-gradient(150deg,#2a1450 0%,#4f2683 100%);color:#fff;border-radius:var(--radius,5px);
  padding:30px;border-bottom:4px solid var(--dgr-gold);
}
.page-dgreen .dgr-memorial .dgr-h3{color:var(--dgr-gold);letter-spacing:.1em;font-size:12px}
.page-dgreen .dgr-memorial .dgr-dates{
  margin:10px 0 0;font-family:var(--display);font-weight:700;text-transform:uppercase;
  font-size:clamp(20px,3vw,28px);line-height:1.1;
}
.page-dgreen .dgr-memorial p{margin:14px 0 0;font-size:15.5px;line-height:1.66;color:rgba(255,255,255,.90);max-width:70ch}
.page-dgreen .dgr-memorial a{color:var(--dgr-gold);text-decoration:underline;text-underline-offset:2px}

/* ---------- sources ---------- */
.page-dgreen .dgr-sources{
  background:var(--dgr-card);border:1px solid var(--dgr-line);border-radius:var(--radius,5px);padding:24px;
}
.page-dgreen .dgr-sources p{margin:0 0 14px;font-size:15px;line-height:1.66;color:var(--dgr-text)}
.page-dgreen .dgr-sources p:last-child{margin-bottom:0}

/* ---------- related ---------- */
.page-dgreen .dgr-related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.page-dgreen .dgr-related-card{
  display:block;background:var(--dgr-card);border:1px solid var(--dgr-line);border-radius:var(--radius,5px);
  padding:22px;color:inherit;transition:transform var(--t,220ms),box-shadow var(--t,220ms);
}
.page-dgreen .dgr-related-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(42,20,80,.14)}
.page-dgreen .dgr-tag{
  display:inline-block;font-family:var(--display);font-weight:600;text-transform:uppercase;letter-spacing:.1em;
  font-size:10.5px;color:#432075;background:#f0ecf8;padding:4px 8px;border-radius:3px;margin-bottom:12px;
}
.page-dgreen .dgr-related-card p{margin:10px 0 0;font-size:14.5px;line-height:1.6;color:var(--dgr-muted)}
.page-dgreen .dgr-arlink{
  display:inline-flex;align-items:center;gap:7px;margin-top:14px;font-family:var(--display);font-weight:600;
  text-transform:uppercase;letter-spacing:.09em;font-size:11.5px;color:var(--dgr-purple);
}
.page-dgreen .dgr-arlink svg{width:15px;height:15px}

/* ---------- closer ---------- */
.page-dgreen .dgr-closer{
  background:
    radial-gradient(90% 140% at 12% 0%, rgba(68,206,227,.16) 0%, rgba(68,206,227,0) 55%),
    linear-gradient(120deg,var(--dgr-purple-ink) 0%,var(--dgr-purple) 100%);
  color:#fff;padding:52px 0;text-align:center;
}
.page-dgreen .dgr-closer h2{
  font-family:var(--display);font-weight:700;text-transform:uppercase;line-height:1.06;
  font-size:clamp(24px,3.6vw,38px);
}
.page-dgreen .dgr-closer p{margin:14px auto 22px;max-width:62ch;font-size:16px;line-height:1.6;color:rgba(255,255,255,.88)}

/* ---------- responsive ---------- */
@media (max-width:980px){
  .page-dgreen .dgr-overview{grid-template-columns:1fr}
  .page-dgreen .dgr-98{grid-template-columns:1fr}
  .page-dgreen .dgr-players,.page-dgreen .dgr-related{grid-template-columns:1fr}
  .page-dgreen .dgr-totals{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .page-dgreen .dgr-hero-in{padding:38px 0 34px}
  .page-dgreen .dgr-hero-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 0}
  .page-dgreen .dgr-hero-facts li{padding:0 14px}
  .page-dgreen .dgr-hero-facts li:nth-child(odd){padding-left:0;border-left:0}
  .page-dgreen .dgr-sect{padding:38px 0}
  .page-dgreen .dgr-98-stats{grid-template-columns:1fr}
  .page-dgreen .dgr-tl{grid-template-columns:14px minmax(0,1fr)}
  .page-dgreen .dgr-tl-when{grid-column:1/-1;text-align:left;padding:18px 0 0}
  .page-dgreen .dgr-tl-body{padding:8px 0 22px 18px}
  .page-dgreen .dgr-tl-dot{top:10px}
  .page-dgreen .dgr-tl-line{top:10px}
  .page-dgreen .dgr-memorial{padding:22px}
  .page-dgreen .dgr-quote{padding:20px}
}

@media (prefers-reduced-motion:reduce){
  .page-dgreen *,.page-dgreen *::before,.page-dgreen *::after{
    animation-duration:.001ms !important;animation-iteration-count:1 !important;
    transition-duration:.001ms !important;scroll-behavior:auto !important;
  }
  .page-dgreen .dgr-player:hover,.page-dgreen .dgr-related-card:hover{transform:none}
}
