.today-guide{
  display:grid;
  grid-template-columns:1.12fr .88fr;
  gap:44px;
  align-items:center;
  margin:28px 0 0;
  padding:34px;
  border:1px solid #3b4351;
  border-radius:22px;
  background:
    linear-gradient(135deg,rgba(200,255,56,.08),transparent 38%),
    linear-gradient(145deg,#171c26,#0c0f15);
  box-shadow:0 28px 90px rgba(0,0,0,.3);
}
.today-guide-kicker{
  margin:0 0 8px;
  color:var(--lime);
  font-size:.68rem;
  font-weight:950;
  letter-spacing:.18em;
}
.today-guide-state{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:5px 9px;
  border:1px solid rgba(113,228,255,.38);
  border-radius:99px;
  color:var(--cyan);
  font-size:.7rem;
  font-weight:900;
}
.today-guide-state:before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:currentColor;
  box-shadow:0 0 0 4px rgba(113,228,255,.09);
}
.today-guide h1{
  margin:15px 0 0;
  font-size:clamp(2.5rem,5.2vw,5rem);
}
.today-guide h1 em{color:var(--pink);font-style:normal}
.today-guide-copy>p:not(.today-guide-kicker){
  max-width:610px;
  margin:20px 0 0;
  color:#cbd0d8;
  font-size:.92rem;
}
.today-guide-copy>p:not(.today-guide-kicker) b{color:var(--text)}
.today-guide-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
  margin-top:24px;
}
.today-guide-primary,.today-guide-secondary{
  display:inline-flex;
  justify-content:center;
  padding:12px 16px;
  border-radius:8px;
  text-decoration:none;
  font-size:.82rem;
  font-weight:950;
}
.today-guide-primary{background:var(--lime);color:#090b10}
.today-guide-secondary{border:1px solid var(--line);color:#dfe2e8}
.today-guide-budget{color:var(--muted);font-size:.78rem}
.today-guide-budget b{color:var(--text);font-size:1rem}
.today-guide-flow{
  padding:20px;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(9,11,16,.72);
}
.today-guide-flow>p{
  margin:0 0 13px;
  color:var(--muted);
  font-size:.7rem;
  font-weight:900;
}
.today-guide-flow ol{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.today-guide-flow li{
  display:grid;
  grid-template-columns:30px 1fr;
  align-items:center;
  gap:10px;
  color:#7f8795;
  font-size:.8rem;
  font-weight:850;
}
.today-guide-flow li b{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border:1px solid var(--line);
  border-radius:50%;
  font-size:.7rem;
}
.today-guide-flow li.is-current{color:var(--text)}
.today-guide-flow li.is-current b{
  border-color:var(--lime);
  background:rgba(200,255,56,.13);
  color:var(--lime);
}
.today-guide-flow small{
  display:block;
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid var(--line);
  color:#7f8795;
  font-size:.68rem;
}
.today-guide-candidates{
  display:grid;
  gap:8px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(9,11,16,.72);
}
.today-guide-candidate-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:3px;
}
.today-guide-candidate-head p{
  margin:0;
  color:var(--text);
  font-size:.72rem;
  font-weight:950;
}
.today-guide-candidate-head p em{
  display:inline-block;
  margin-left:6px;
  padding:2px 6px;
  border:1px solid rgba(255,191,71,.42);
  border-radius:99px;
  color:#ffbf47;
  font-size:.55rem;
  font-style:normal;
  vertical-align:1px;
}
.today-guide-candidate-head span{
  color:var(--cyan);
  font-size:.64rem;
  font-weight:900;
}
.today-guide-candidate{
  display:grid;
  grid-template-columns:1fr auto;
  gap:2px 12px;
  padding:12px 13px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#0b0e14;
  color:inherit;
  text-decoration:none;
}
.today-guide-candidate span{color:var(--muted);font-size:.64rem}
.today-guide-candidate b{
  max-width:32ch;
  overflow:hidden;
  font-size:.78rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.today-guide-candidate strong{
  grid-row:1/3;
  grid-column:2;
  align-self:center;
  color:var(--lime);
  font-size:.68rem;
  text-align:right;
}
.today-guide-candidate strong i{
  display:block;
  margin-bottom:2px;
  color:#ffbf47;
  font-size:.53rem;
  font-style:normal;
  font-weight:900;
}
.today-guide-steps{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:10px 8px;
  border-radius:8px;
  background:rgba(255,255,255,.025);
  color:#717a88;
  font-size:.56rem;
  text-align:center;
}
.today-guide-steps b{color:#aeb5c0}
.today-guide-candidates>small{
  margin-top:3px;
  color:#7f8795;
  font-size:.62rem;
}
.today-guide-races{display:grid;gap:9px}
.today-guide-race{
  display:grid;
  gap:5px;
  padding:16px;
  border:1px solid rgba(200,255,56,.3);
  border-radius:11px;
  background:
    linear-gradient(110deg,rgba(200,255,56,.08),transparent 50%),
    rgba(9,11,16,.82);
  color:inherit;
  text-decoration:none;
}
.today-guide-race span{color:var(--muted);font-size:.68rem}
.today-guide-race span i{
  margin-left:5px;
  padding:2px 6px;
  border-radius:99px;
  background:var(--lime);
  color:#090b10;
  font-size:.52rem;
  font-style:normal;
  font-weight:950;
}
.today-guide-race b{font-size:.82rem}
.today-guide-race strong{
  color:var(--lime);
  font-size:1.12rem;
  line-height:1.25;
}
.today-guide-race small{color:#a9b0bc;font-size:.68rem}
@media(max-width:760px){
  .today-guide{
    grid-template-columns:1fr;
    gap:22px;
    margin-top:14px;
    padding:22px 18px;
    border-radius:17px;
  }
  .today-guide h1{font-size:clamp(2.65rem,13vw,4.1rem)}
  .today-guide-copy>p:not(.today-guide-kicker){font-size:.85rem}
  .today-guide-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .today-guide-primary,.today-guide-secondary{width:100%;padding:12px 8px}
  .today-guide-budget{grid-column:1/-1}
  .today-guide-race strong{font-size:1rem}
  .today-guide-candidate{
    grid-template-columns:1fr;
    gap:3px;
  }
  .today-guide-candidate strong{
    grid-row:auto;
    grid-column:auto;
    text-align:left;
  }
  .today-guide-candidate-head{align-items:flex-start}
  .today-guide-candidate-head p em{display:block;width:max-content;margin:5px 0 0}
  .today-guide-steps{align-items:stretch;gap:4px;font-size:.5rem}
  .hero{padding-top:46px}
}
