.page-home{
  --hp-gap: clamp(14px,2vw,22px);
  --hp-pad: clamp(16px,2.2vw,24px);
  display:block;
  background:
    radial-gradient(1100px 560px at 82% -8%, rgba(0,229,199,.10), transparent 62%),
    radial-gradient(900px 520px at -8% 18%, rgba(59,42,102,.38), transparent 60%),
    var(--night);
  overflow-x:hidden;
}

.page-home .hero{
  position:relative;
  isolation:isolate;
  padding:clamp(12px,2vw,20px) 0 clamp(34px,5vw,64px);
  overflow:hidden;
}
.page-home .hero__bg{ position:absolute; inset:0; z-index:-2; }
.page-home .hero__bg img{
  width:100%; height:100%;
  object-fit:cover;
  opacity:.30;
  filter:saturate(.85) contrast(1.05);
}
.page-home .hero__veil{
  position:absolute; inset:0; z-index:-1;
  background:
    repeating-linear-gradient(90deg, rgba(42,58,88,.30) 0 1px, transparent 1px 76px),
    repeating-linear-gradient(0deg, rgba(42,58,88,.22) 0 1px, transparent 1px 76px),
    linear-gradient(180deg, rgba(10,16,32,.62) 0%, rgba(10,16,32,.90) 56%, var(--night) 100%);
}
.page-home .hero__inner{ position:relative; }

.page-home .breadcrumb{ margin:0 0 clamp(16px,2.6vw,26px); }
.page-home .breadcrumb__list{ color:var(--muted); }

.page-home .hero__kicker{
  display:inline-flex; align-items:center; gap:9px;
  margin:0 0 clamp(12px,1.6vw,16px);
  font:600 12px/1.4 var(--font-body);
  letter-spacing:.06em;
  color:var(--cyan);
}
.page-home .hero__kicker::before{
  content:"";
  width:7px; height:7px; border-radius:50%;
  background:var(--cyan);
  box-shadow:0 0 0 4px rgba(0,229,199,.16);
  animation:hpPulse 2.6s var(--ease) infinite;
}
@keyframes hpPulse{
  0%,100%{ box-shadow:0 0 0 4px rgba(0,229,199,.16); opacity:1; }
  50%{ box-shadow:0 0 0 8px rgba(0,229,199,.04); opacity:.72; }
}

.page-home .hero__title{
  margin:0;
  max-width:20ch;
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(29px,6.4vw,58px);
  line-height:1.06;
  letter-spacing:-.015em;
  color:var(--text);
}
.page-home .hero__lede{
  margin:clamp(14px,1.8vw,20px) 0 0;
  max-width:60ch;
  color:var(--muted);
  font-size:clamp(14px,1.55vw,16.5px);
  line-height:1.78;
}
.page-home .hero__actions{
  display:flex; flex-wrap:wrap; gap:10px;
  margin-top:clamp(18px,2.4vw,26px);
}

.page-home .hero-grid{
  margin-top:clamp(24px,3.4vw,40px);
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:var(--hp-gap);
}

.page-home .hero-index,
.page-home .hero-score,
.page-home .rank-strip,
.page-home .hero-meta{
  box-shadow:0 1px 0 rgba(255,255,255,.02), 0 12px 30px rgba(0,0,0,.28);
}

.page-home .rounds{ list-style:none; margin:0; padding:0; display:grid; gap:2px; }
.page-home .rounds__item{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:9px 11px;
  background:rgba(42,58,88,.10);
  border-left:2px solid transparent;
  font-size:13.5px;
  color:var(--muted);
}
.page-home .rounds__item.is-current{
  background:linear-gradient(90deg, rgba(0,229,199,.13), rgba(0,229,199,.02));
  border-left-color:var(--cyan);
  color:var(--text);
}
.page-home .rounds__num{
  font-size:14px; font-weight:700; color:var(--text);
}
.page-home .rounds__item.is-current .rounds__num{ color:var(--cyan); }
.page-home .rounds__state{
  font-size:11px; font-weight:600; letter-spacing:.08em;
  color:var(--muted);
  border:1px solid var(--line);
  padding:2px 6px;
}
.page-home .rounds__state--live{
  color:var(--orange);
  border-color:rgba(255,122,26,.5);
  background:rgba(255,122,26,.10);
}
.page-home .hero-index__foot{
  margin:12px 0 0;
  font-size:12.5px;
  line-height:1.6;
}

.page-home .hero-score{ background:linear-gradient(160deg, rgba(0,229,199,.07), rgba(17,21,28,1) 42%); }
.page-home .hero-score__head{
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px;
  margin-bottom:clamp(10px,1.6vw,18px);
}
.page-home .hero-score__clock{ font-size:12px; color:var(--muted); }
.page-home .scoreboard{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;
  gap:clamp(8px,1.6vw,18px);
  padding:clamp(6px,1.4vw,12px) 0;
}
.page-home .scoreboard__side{ display:grid; gap:6px; }
.page-home .scoreboard__side--end{ justify-items:end; text-align:right; }
.page-home .scoreboard__role{
  font-family:var(--font-display);
  font-weight:700;
  font-size:clamp(15px,2vw,19px);
  color:var(--text);
  letter-spacing:.02em;
}
.page-home .scoreboard__tag{
  font-size:11px;
  letter-spacing:.12em;
  color:var(--muted);
}
.page-home .scoreboard__digits{
  font-size:clamp(38px,9vw,72px);
  font-weight:700;
  line-height:1;
  letter-spacing:-.03em;
  color:var(--text);
  text-shadow:0 0 34px rgba(0,229,199,.26);
}
.page-home .scoreboard__digits i{
  font-style:normal;
  color:var(--cyan);
  margin:0 .1em;
}
.page-home .hero-score__foot{ margin-top:clamp(8px,1.4vw,14px); }
.page-home .meter{
  height:3px; width:100%;
  background:rgba(42,58,88,.75);
  overflow:hidden;
}
.page-home .meter__fill{
  display:block; height:100%; width:62%;
  background:linear-gradient(90deg, var(--cyan), var(--orange));
}
.page-home .hero-score__foot-row{
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px;
  margin-top:9px; font-size:12.5px;
}
.page-home .hero-score__live{
  color:var(--cyan); font-weight:700; letter-spacing:.16em; font-size:12px;
}

.page-home .hero-side{ display:grid; gap:var(--hp-gap); }

.page-home .rank-list{ list-style:none; margin:0; padding:0; display:grid; gap:8px; }
.page-home .rank-list__row{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto auto;
  align-items:center;
  gap:9px;
}
.page-home .rank-list__pos{ font-size:12.5px; color:var(--muted); }
.page-home .rank-list__row:first-child .rank-list__pos{ color:var(--cyan); font-weight:700; }
.page-home .rank-list__bar{
  height:6px; background:rgba(42,58,88,.5); overflow:hidden;
}
.page-home .rank-list__fill{ display:block; height:100%; }
.page-home .rank-list__fill--a{ width:100%; background:linear-gradient(90deg, rgba(0,229,199,.85), rgba(0,229,199,.35)); }
.page-home .rank-list__fill--b{ width:88%; background:linear-gradient(90deg, rgba(0,229,199,.62), rgba(0,229,199,.22)); }
.page-home .rank-list__fill--c{ width:74%; background:linear-gradient(90deg, rgba(0,229,199,.46), rgba(0,229,199,.16)); }
.page-home .rank-list__fill--d{ width:60%; background:linear-gradient(90deg, rgba(138,153,181,.5), rgba(138,153,181,.16)); }
.page-home .rank-list__fill--e{ width:50%; background:linear-gradient(90deg, rgba(138,153,181,.38), rgba(138,153,181,.12)); }
.page-home .rank-list__pts{ font-size:13px; color:var(--text); }
.page-home .rank-list__delta{ font-size:11.5px; }
.page-home .rank-list__delta--up{ color:var(--green); }
.page-home .rank-list__delta--down{ color:var(--orange); }
.page-home .rank-strip__foot{ margin:12px 0 0; font-size:12.5px; }

.page-home .hero-meta{ display:grid; gap:12px; }
.page-home .hero-meta .stat{ display:grid; gap:4px; }
.page-home .hero-meta .stat__value{ font-size:clamp(20px,2.6vw,26px); color:var(--cyan); }
.page-home .hero-meta .stat__label{ font-size:12.5px; color:var(--muted); }

.page-home .section{ padding:clamp(40px,6vw,72px) 0; }
.page-home .section__title{
  font-family:var(--font-display);
  font-weight:800;
  font-size:clamp(21px,3.4vw,34px);
  line-height:1.14;
  letter-spacing:-.01em;
  color:var(--text);
  margin:6px 0 0;
  max-width:34ch;
}
.page-home .eyebrow{ color:var(--cyan); }
.page-home .section__note{ font-size:12.5px; margin:0; }
.page-home .lede{ color:var(--muted); line-height:1.78; font-size:clamp(14px,1.5vw,16px); }

.page-home .section--snap{
  background:linear-gradient(180deg, rgba(17,21,28,.9), rgba(10,16,32,.9));
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.page-home .snap-track{
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scroll-snap-type:x mandatory;
  padding:2px 0 20px;
  scrollbar-width:thin;
  scrollbar-color:var(--line) transparent;
}
.page-home .snap-track:focus-visible{ outline:1px solid var(--cyan); outline-offset:-2px; }
.page-home .snap-track::-webkit-scrollbar{ height:6px; }
.page-home .snap-track::-webkit-scrollbar-thumb{ background:var(--line); }
.page-home .snap-track__inner{
  display:flex;
  gap:var(--hp-gap);
  padding:0 var(--gutter);
  width:max-content;
}
.page-home .snap-card{
  scroll-snap-align:start;
  flex:0 0 clamp(228px,74vw,286px);
  display:grid;
  gap:10px;
  padding:var(--hp-pad);
  background:var(--panel);
  border:1px solid var(--line);
  border-top:2px solid var(--cyan);
}
.page-home .snap-card:nth-child(2n){ border-top-color:var(--orange); }
.page-home .snap-card:nth-child(3n){ border-top-color:var(--violet); }
.page-home .snap-card__top{
  display:flex; align-items:center; justify-content:space-between; gap:8px;
}
.page-home .snap-card__idx{ font-size:11.5px; color:var(--muted); }
.page-home .snap-card__score{
  margin:4px 0 0;
  font-size:clamp(26px,4.4vw,34px);
  font-weight:700;
  line-height:1;
  letter-spacing:-.02em;
  color:var(--text);
}
.page-home .snap-card__meta{
  margin:0; font-size:12.5px; color:var(--muted);
}
.page-home .snap-card__line{
  margin:0; padding-top:9px;
  border-top:1px solid rgba(42,58,88,.75);
  font-size:12px; color:var(--muted);
}

.page-home .section--paths{ background:transparent; }
.page-home .paths{
  margin-top:clamp(20px,3vw,30px);
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:var(--hp-gap);
}
.page-home .path{
  position:relative;
  display:grid;
  gap:12px;
  padding:clamp(20px,3vw,30px);
  background:var(--panel);
  border:1px solid var(--line);
  text-decoration:none;
  color:inherit;
  transition:transform .35s var(--ease), border-color .35s var(--ease), background .35s var(--ease);
}
.page-home .path::after{
  content:"";
  position:absolute; left:0; top:0; bottom:0;
  width:3px;
  background:var(--cyan);
}
.page-home .path--violet::after{ background:var(--violet); }
.page-home .path:hover{ transform:translateY(-3px); border-color:rgba(0,229,199,.45); }
.page-home .path--violet:hover{ border-color:rgba(155,124,255,.45); }
.page-home .path__idx{
  font-size:12px; letter-spacing:.18em; color:var(--muted);
}
.page-home .path__title{
  margin:0;
  font-family:var(--font-display);
  font-weight:800;
  font-size:clamp(20px,2.8vw,26px);
  color:var(--text);
  letter-spacing:.01em;
}
.page-home .path__desc{
  margin:0; color:var(--muted); font-size:14px; line-height:1.78;
}
.page-home .path__list{
  list-style:none; margin:0; padding:0;
  display:grid; gap:8px;
}
.page-home .path__list li{
  position:relative;
  padding-left:16px;
  font-size:13.5px;
  color:var(--text);
  line-height:1.6;
}
.page-home .path__list li::before{
  content:"";
  position:absolute; left:0; top:.62em;
  width:6px; height:1px; background:var(--cyan);
}
.page-home .path--violet .path__list li::before{ background:var(--violet); }
.page-home .path__go{
  margin-top:4px;
  font-size:13px; font-weight:600;
  color:var(--cyan);
  letter-spacing:.02em;
}
.page-home .path--violet .path__go{ color:#9B7CFF; }

.page-home .section--refresh{
  background:linear-gradient(180deg, rgba(17,21,28,.55), rgba(10,16,32,.2));
  border-top:1px solid var(--line);
}
.page-home .refresh-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:clamp(22px,3.4vw,40px);
  align-items:start;
}
.page-home .refresh-copy .lede{ margin:14px 0 0; max-width:58ch; }
.page-home .timeline{
  list-style:none; margin:clamp(18px,2.6vw,28px) 0 0; padding:0;
  border-top:1px solid var(--line);
}
.page-home .timeline__row{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:baseline;
  gap:clamp(12px,2vw,22px);
  padding:13px 0;
  border-bottom:1px solid rgba(42,58,88,.7);
}
.page-home .timeline__t{
  font-size:12.5px; color:var(--cyan); font-weight:700; letter-spacing:.04em;
}
.page-home .timeline__d{ font-size:14px; color:var(--text); line-height:1.6; }
.page-home .refresh-media .media__frame{
  border:1px solid var(--line);
  background:var(--panel);
}

.page-home .section--rank{
  background:
    linear-gradient(180deg, rgba(59,42,102,.24), rgba(10,16,32,.9)),
    var(--night);
  border-top:1px solid var(--line);
}
.page-home .rank-layout{
  margin-top:clamp(20px,3vw,30px);
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:var(--hp-gap);
}
.page-home .season-block{
  padding:clamp(18px,2.4vw,24px);
  background:rgba(59,42,102,.22);
  border:1px solid rgba(155,124,255,.26);
  display:grid;
  gap:10px;
  align-content:start;
}
.page-home .mini-title{
  margin:0 0 4px;
  font-family:var(--font-display);
  font-weight:700;
  font-size:15px;
  letter-spacing:.06em;
  color:var(--text);
}
.page-home .season-item{
  border:1px solid rgba(42,58,88,.9);
  background:rgba(17,21,28,.72);
}
.page-home .season-item summary{
  cursor:pointer;
  list-style:none;
  padding:11px 13px;
  font-size:13.5px;
  color:var(--text);
  display:flex; align-items:baseline; gap:10px;
}
.page-home .season-item summary::-webkit-details-marker{ display:none; }
.page-home .season-item summary::after{
  content:"+";
  margin-left:auto;
  color:var(--muted);
  font-family:var(--font-mono);
}
.page-home .season-item[open] summary::after{ content:"−"; color:#9B7CFF; }
.page-home .season-item p{
  margin:0;
  padding:0 13px 13px;
  font-size:13px;
  line-height:1.72;
  color:var(--muted);
}
.page-home .season-item__tag{
  font-size:11.5px;
  letter-spacing:.1em;
  color:#9B7CFF;
}
.page-home .season-block__go{
  margin-top:6px;
  font-size:13px;
  font-weight:600;
  color:#9B7CFF;
  text-decoration:none;
}
.page-home .season-block__go:hover{ color:var(--cyan); }

.page-home .rank-block{
  padding:clamp(18px,2.4vw,24px);
  background:var(--panel);
  border:1px solid var(--line);
  display:grid;
  gap:clamp(16px,2.2vw,22px);
  align-content:start;
}
.page-home .rank-block__head{
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px;
}
.page-home .rank-bars{ display:grid; gap:12px; }
.page-home .rank-bars__row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:"name val" "track track";
  align-items:center;
  gap:7px 12px;
}
.page-home .rank-bars__name{
  grid-area:name;
  font-size:13px; color:var(--text);
}
.page-home .rank-bars__val{
  grid-area:val;
  font-size:12.5px; color:var(--muted);
}
.page-home .rank-bars__track{
  grid-area:track;
  height:5px;
  background:rgba(42,58,88,.55);
  overflow:hidden;
}
.page-home .rank-bars__fill{ display:block; height:100%; }
.page-home .rank-bars__fill--a{ width:100%; background:linear-gradient(90deg, var(--cyan), rgba(0,229,199,.25)); }
.page-home .rank-bars__fill--b{ width:82%; background:linear-gradient(90deg, rgba(0,229,199,.7), rgba(0,229,199,.2)); }
.page-home .rank-bars__fill--c{ width:64%; background:linear-gradient(90deg, var(--orange), rgba(255,122,26,.2)); }
.page-home .rank-bars__fill--d{ width:42%; background:linear-gradient(90deg, rgba(138,153,181,.6), rgba(138,153,181,.16)); }
.page-home .rank-notes{
  list-style:none; margin:0; padding:0;
  display:grid; gap:10px;
  border-top:1px solid var(--line);
  padding-top:16px;
}
.page-home .rank-notes__item{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:baseline;
  gap:10px;
  font-size:13.5px;
  color:var(--muted);
  line-height:1.68;
}
.page-home .rank-notes__dot{
  width:7px; height:7px; border-radius:50%;
  margin-top:.42em;
}
.page-home .rank-notes__dot--up{ background:var(--green); }
.page-home .rank-notes__dot--flat{ background:var(--cyan); }
.page-home .rank-notes__dot--down{ background:var(--amber); }

.page-home .section--compat{
  background:linear-gradient(180deg, rgba(17,21,28,.94), rgba(10,16,32,.6));
  border-top:1px solid var(--line);
}
.page-home .compat{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:clamp(22px,3.2vw,40px);
  align-items:start;
}
.page-home .compat__media .media__frame{
  border:1px solid var(--line);
  background:var(--panel);
}
.page-home .compat__copy .lede{ margin:14px 0 0; max-width:58ch; }
.page-home .compat__tags{
  display:flex; flex-wrap:wrap; gap:8px;
  margin:clamp(14px,2vw,20px) 0 0;
}
.page-home .steps{
  list-style:none; margin:clamp(16px,2.2vw,22px) 0; padding:0;
  display:grid; gap:2px;
}
.page-home .steps__row{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:14px;
  padding:13px 14px;
  background:rgba(42,58,88,.10);
  border-left:2px solid rgba(255,176,32,.55);
}
.page-home .steps__n{
  font-size:13px;
  font-weight:700;
  color:var(--amber);
  letter-spacing:.06em;
}
.page-home .steps__d{
  font-size:13.5px;
  color:var(--text);
  line-height:1.68;
}

.page-home .section--support{
  background:
    radial-gradient(760px 420px at 88% 0%, rgba(255,122,26,.10), transparent 62%),
    linear-gradient(180deg, rgba(10,16,32,.9), rgba(10,16,32,.98));
  border-top:1px solid var(--line);
  padding-bottom:clamp(48px,7vw,88px);
}
.page-home .support__head .lede{ margin:14px 0 0; max-width:56ch; }
.page-home .support__cards{
  margin-top:clamp(20px,3vw,30px);
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:var(--hp-gap);
}
.page-home .support__card{
  display:grid; gap:8px;
  padding:clamp(16px,2.2vw,22px);
  background:var(--panel);
  border:1px solid var(--line);
  border-top:2px solid var(--cyan);
  text-decoration:none;
  color:inherit;
  transition:border-color .3s var(--ease), transform .3s var(--ease);
}
.page-home .support__card:hover{ transform:translateY(-2px); border-color:rgba(0,229,199,.5); }
.page-home .support__card--static{ border-top-color:var(--line); }
.page-home .support__card--static:hover{ transform:none; border-color:var(--line); }
.page-home .support__label{
  font-size:12px; letter-spacing:.12em; color:var(--muted);
}
.page-home .support__value{
  font-size:clamp(14px,1.7vw,17px);
  font-weight:600;
  color:var(--text);
  word-break:break-word;
}
.page-home .support__value--addr{
  font-size:13.5px;
  font-weight:400;
  line-height:1.7;
  color:var(--muted);
}
.page-home .support__hint{
  font-size:12.5px;
  color:var(--muted);
  line-height:1.6;
}
.page-home .support__media{
  margin-top:clamp(24px,3.4vw,38px);
}
.page-home .support__media .media__frame{
  border:1px solid var(--line);
  background:var(--panel);
}

@media (min-width:720px){
  .page-home .hero-grid{
    grid-template-columns:minmax(0,236px) minmax(0,1fr);
    align-items:start;
  }
  .page-home .hero-side{
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:var(--hp-gap);
  }
  .page-home .paths{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .page-home .rank-layout{
    grid-template-columns:minmax(0,300px) minmax(0,1fr);
    align-items:start;
  }
  .page-home .support__cards{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .page-home .rank-bars__row{
    grid-template-columns:minmax(0,220px) minmax(0,1fr) auto;
    grid-template-areas:"name track val";
  }
}

@media (min-width:1040px){
  .page-home .hero-grid{
    grid-template-columns:minmax(0,224px) minmax(0,1fr) minmax(0,296px);
  }
  .page-home .hero-side{
    grid-column:auto;
    grid-template-columns:minmax(0,1fr);
  }
  .page-home .refresh-grid{
    grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  }
  .page-home .compat{
    grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  }
  .page-home .support__cards{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .page-home .hero__title{ max-width:22ch; }
}

@media (prefers-reduced-motion:reduce){
  .page-home .hero__kicker::before{ animation:none; }
  .page-home .path,
  .page-home .support__card{ transition:none; }
  .page-home .snap-track{ scroll-behavior:auto; }
}
