/* Stations: the monument and the clock. Scoped to .st-np (nameplate) and .st-front. */

/* nameplate: open ears, ruled above and below, no box */
.st-np .np-ear{border:none;border-top:3px solid #1a1a1a;border-bottom:1px solid #1a1a1a;padding:8px 2px 9px;background:none}
.st-np .np-ear::after{display:none}
.st-np .np-ear-k{color:#a0750a}
.st-np .np-ear-v{font-size:1.32rem}
.st-np .np-ear.r .np-ear-v{color:#1a1a1a}

.st-front{padding:24px 0 0}
.st-sec{display:flex;align-items:baseline;gap:10px;font-family:'Source Sans 3',sans-serif;font-size:0.66rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:#1a1a1a;margin-bottom:12px}
.st-sec::after{content:'';flex:1;border-top:1px solid #d1d1d1;align-self:center}
.st-sec em{font-style:normal;color:#c41200}
.st-sec span{font-family:'Fira Code',monospace;font-weight:400;letter-spacing:0;text-transform:none;color:#555;font-size:0.7rem}

/* top: the monument beside the lead */
.st-top{display:grid;grid-template-columns:300px minmax(0,1fr);border-bottom:1px solid #1a1a1a;position:relative}
.st-top::after{content:'';position:absolute;left:0;right:0;bottom:3px;border-bottom:1px solid #1a1a1a}
.st-front.no-mono .st-top{grid-template-columns:1fr}
.st-mono{padding:4px 28px 30px 0;border-right:1px solid #1a1a1a;box-shadow:3px 0 0 #fff,4px 0 0 #1a1a1a;margin-right:4px;text-align:left;min-width:0}
.st-mono-k{font-family:'Source Sans 3',sans-serif;font-size:0.7rem;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:#c41200;border-bottom:1px solid #1a1a1a;padding-bottom:6px;margin-bottom:10px}
.st-mono-m{font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:3.1rem;line-height:1;text-transform:uppercase;letter-spacing:0.06em;color:#c41200}
.st-mono-d{font-family:'Playfair Display',Georgia,serif;font-weight:800;font-size:clamp(9rem,15vw,14.5rem);line-height:0.78;letter-spacing:-0.05em;color:#1a1a1a;margin:6px 0 14px;text-shadow:0 0 0.8px rgba(26,26,26,0.5)}
.st-mono-y{display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-top:3px double #1a1a1a;padding-top:8px;font-family:'Fira Code',monospace;font-size:0.8rem;color:#1a1a1a}
.st-mono-left{font-family:'Source Sans 3',sans-serif;font-size:0.7rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:#c41200}
.st-lead{padding:0 0 28px 32px;min-width:0;display:flex;flex-direction:column}
.st-front.no-mono .st-lead{padding-left:0}
.st-kicker{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.st-label{font-family:'Source Sans 3',sans-serif;font-size:0.74rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:#c41200}
.st-fact{font-family:'Fira Code',monospace;font-size:0.74rem;color:#1a1a1a;border-left:1px solid #d1d1d1;padding-left:12px}
.st-hed{font-family:'Playfair Display',Georgia,serif;font-weight:800;font-size:clamp(2rem,3.9vw,3.7rem);line-height:1.04;letter-spacing:-0.015em;color:#1a1a1a;text-wrap:balance;text-shadow:0 0 0.6px rgba(26,26,26,0.5);overflow-wrap:break-word}
.st-hed a{color:inherit}
.st-hed a:hover{color:#c41200}
.st-front .st-rule{margin:18px 0 16px}
.st-dek{font-family:'Source Sans 3',sans-serif;font-size:1.16rem;line-height:1.5;color:#1a1a1a;max-width:46rem}
.st-ledger{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin-top:auto;padding-top:20px}
.st-ledger div{border-top:1px solid #1a1a1a;padding:7px 14px 0 0;font-family:'Fira Code',monospace;font-size:0.74rem;color:#1a1a1a;min-width:0}
.st-ledger b{display:block;font-family:'Source Sans 3',sans-serif;font-size:0.6rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:#888}
.st-ledger span{overflow-wrap:anywhere}

/* the clock plate */
.st-clock{padding:22px 0 8px;border-bottom:1px solid #1a1a1a}
.st-plate{position:relative;padding:26px 0 26px;margin:0 6px}
.st-axis{position:absolute;inset:0;pointer-events:none}
.st-tick{position:absolute;top:0;bottom:0;left:var(--x);border-left:1px solid #e0e0e0;font-family:'Fira Code',monospace;font-size:0.66rem;color:#888;padding-left:6px;line-height:1}
.st-tick:first-child{border-left-color:#1a1a1a}
.st-tick:last-child{border-left-color:#1a1a1a}
.st-due{position:absolute;top:0;bottom:0;left:var(--x);border-left:2px solid #c41200;z-index:2;pointer-events:none}
.st-due span{position:absolute;bottom:-2px;left:6px;white-space:nowrap;font-family:'Fira Code',monospace;font-size:0.64rem;font-weight:500;color:#c41200;background:#fff;padding:0 4px 0 2px;line-height:1.2}
.st-today{position:absolute;top:14px;bottom:0;left:var(--x);border-left:1px dashed #555;z-index:1;pointer-events:none}
.st-today span{position:absolute;bottom:-2px;right:6px;font-family:'Source Sans 3',sans-serif;font-size:0.6rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:#555;background:#fff;padding:0 3px;line-height:1.2}
.st-lane{position:relative;z-index:3;padding-top:10px}
.st-lane+.st-lane{border-top:1px dotted #888;margin-top:6px}
.st-lane-h{font-family:'Source Sans 3',sans-serif;font-size:0.62rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:#1a1a1a;margin-bottom:6px;display:inline-block;background:#fff;padding-right:8px}
.st-lane-track{list-style:none;position:relative;height:calc(var(--tiers) * 46px + 8px)}
.st-pt{position:absolute;left:var(--x);top:calc(var(--t) * 46px);padding-left:14px;max-width:17%;min-width:0}
.st-pt.is-flip{padding-left:0;padding-right:14px;transform:translateX(-100%);text-align:right}
.st-dot{position:absolute;left:-5px;top:4px;width:10px;height:10px;border-radius:50%;background:#1a1a1a;border:2px solid #fff;box-shadow:0 0 0 1px #1a1a1a}
.st-pt.is-flip .st-dot{left:auto;right:-5px}
.st-pt.is-past .st-dot{background:#fff}
.st-pt-n{display:block;font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:0.98rem;line-height:1.15;color:#1a1a1a;background:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.st-pt-d{display:block;font-family:'Fira Code',monospace;font-size:0.62rem;line-height:1.3;color:#555;background:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.st-pt.is-past .st-pt-n{color:#555;font-weight:500}
.st-bar{position:absolute;left:0;width:var(--x);bottom:2px;height:4px;background:repeating-linear-gradient(90deg,#1a1a1a 0 6px,#fff 6px 8px)}

/* lower: briefs and roster */
.st-lower{display:grid;grid-template-columns:minmax(0,1fr) 300px;padding-top:22px}
.st-briefs{padding-right:30px;min-width:0}
.st-brief-list{list-style:none;border-top:1px solid #1a1a1a}
.st-brief-list li{border-bottom:1px solid #e0e0e0}
.st-brief{display:grid;grid-template-columns:170px minmax(0,1fr);gap:20px;padding:16px 0;color:inherit}
a.st-brief:hover{color:inherit}
a.st-brief:hover .st-h3{color:#c41200}
.st-brief-v{font-family:'Playfair Display',Georgia,serif;font-weight:800;font-size:1.55rem;line-height:1.05;color:#a0750a;overflow-wrap:break-word}
.st-brief-v small{display:block;font-family:'Fira Code',monospace;font-weight:400;font-size:0.66rem;color:#555;margin-top:6px;line-height:1.4}
.st-brief-ag{display:block;font-family:'Source Sans 3',sans-serif;font-size:0.64rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:#888;margin-bottom:2px}
.st-h3{font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:1.3rem;line-height:1.16;color:#1a1a1a;margin-bottom:6px;transition:color 150ms}
.st-h3 span{display:block;font-style:italic;font-weight:500;font-size:0.8em;color:#555;margin-top:2px}
.st-brief p{font-family:'Source Sans 3',sans-serif;font-size:0.94rem;line-height:1.45;color:#555}
.st-roster{border-left:1px solid #1a1a1a;padding:0 0 22px 24px;min-width:0}
.st-ro{padding:12px 0 13px;border-bottom:1px dotted #888}
.st-ro:first-of-type{border-top:1px solid #1a1a1a}
.st-ro-ag{display:flex;justify-content:space-between;gap:10px;font-family:'Source Sans 3',sans-serif;font-size:0.64rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:#555}
.st-ro-ag i{font-style:normal;color:#888;letter-spacing:0.06em}
.st-ro.is-up .st-ro-ag i{color:#c41200}
.st-ro h4{font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:1.12rem;line-height:1.2;color:#1a1a1a;margin:3px 0 5px}
.st-ro-m{font-family:'Fira Code',monospace;font-size:0.66rem;color:#555;line-height:1.5}
.st-ro-m span{display:block}
.st-ro-m span:first-child{color:#a0750a}
.st-end{height:3px;border-bottom:1px solid #1a1a1a;border-top:1px solid #1a1a1a;margin:4px 0 8px}

@media(max-width:1000px){
  .st-top{grid-template-columns:230px minmax(0,1fr)}
  .st-mono-m{font-size:2.4rem}
  .st-mono-d{font-size:9rem}
  .st-lower{grid-template-columns:minmax(0,1fr) 260px}
  .st-brief{grid-template-columns:130px minmax(0,1fr)}
  .st-pt-n{font-size:0.88rem}
}
/* phone: the plate becomes a dated list per lane */
@media(max-width:760px){
  .st-front{padding-top:18px}
  .st-top{grid-template-columns:1fr}
  .st-mono{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"d k" "d m" "d y";column-gap:16px;align-items:end;border-right:none;box-shadow:none;margin:0 0 18px;padding:0 0 14px;border-bottom:3px double #1a1a1a}
  .st-mono-k{grid-area:k;margin:0;align-self:end}
  .st-mono-m{grid-area:m;font-size:2.2rem}
  .st-mono-d{grid-area:d;font-size:7.6rem;margin:0}
  .st-mono-y{grid-area:y;border-top:none;padding-top:2px;flex-wrap:wrap}
  .st-lead{padding:0 0 22px}
  .st-fact{border-left:none;padding-left:0}
  .st-dek{font-size:1.06rem}
  .st-plate{padding:0;margin:0}
  .st-axis,.st-due,.st-today,.st-bar{display:none}
  .st-lane-track{height:auto}
  .st-pt,.st-pt.is-flip{position:relative;left:auto;top:auto;transform:none;max-width:none;text-align:left;padding:6px 0 6px 20px;border-bottom:1px solid #f0f0f0}
  .st-dot,.st-pt.is-flip .st-dot{left:2px;right:auto;top:10px}
  .st-pt-n,.st-pt-d{white-space:normal}
  .st-lower{grid-template-columns:1fr}
  .st-briefs{padding-right:0}
  .st-brief{grid-template-columns:1fr;gap:6px}
  .st-roster{border-left:none;padding:18px 0 18px;border-top:3px double #1a1a1a;margin-top:6px}
}
