.page-home{
  --home-panel:rgba(11,39,69,.72);
  --home-edge:rgba(43,224,200,.24);
  --home-ink-soft:#2b4256;
  --home-ink-mid:#5b7288;
}

.page-home .breadcrumbs{
  display:flex;
  align-items:center;
  gap:.5rem;
  padding:clamp(.9rem,2.4vw,1.4rem) 0 0;
  font-family:var(--font-mono);
  font-size:.7rem;
  letter-spacing:.18em;
  color:var(--steel);
}

/* ---------- hero ---------- */
.page-home .hero{
  position:relative;
  padding:clamp(1rem,3vw,1.8rem) 0 clamp(2.4rem,6vw,4.2rem);
  background:
    radial-gradient(115% 78% at 6% -14%,rgba(43,224,200,.18),transparent 62%),
    radial-gradient(85% 66% at 98% 2%,rgba(110,123,255,.20),transparent 66%);
  border-bottom:1px solid var(--line-soft);
}
.page-home .hero__grid{
  display:grid;
  gap:clamp(1.6rem,4vw,2.8rem);
  align-items:start;
}
.page-home .hero__title{
  margin:.7rem 0 0;
  font-size:clamp(1.85rem,5.4vw,3.4rem);
  line-height:1.1;
  font-weight:800;
  letter-spacing:-.01em;
  color:var(--mist);
  transform:skewX(-2.5deg);
  transform-origin:left center;
  max-width:18em;
}
.page-home .hero__accent{
  color:var(--cyan);
  display:inline-block;
}
.page-home .hero__lead{
  margin:1.1rem 0 0;
  max-width:34rem;
  font-size:clamp(.92rem,1.7vw,1.04rem);
  line-height:1.9;
  color:var(--steel);
}
.page-home .hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:.7rem;
  margin-top:1.4rem;
}
.page-home .hero__figure{
  margin:clamp(1.4rem,3.4vw,2rem) 0 0;
  border:1px solid var(--home-edge);
}
.page-home .hero__figure::after{
  content:"";
  position:absolute;
  right:-1px;
  bottom:-1px;
  width:42%;
  height:6px;
  background:linear-gradient(90deg,var(--cyan),var(--violet),var(--lava));
  opacity:.85;
}
.page-home .stats{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.9rem 1.1rem;
  margin:1.5rem 0 0;
  padding:1.1rem 0 0;
  list-style:none;
  border-top:1px solid var(--line-soft);
}
.page-home .stats__num{
  display:block;
  font-family:var(--font-mono);
  font-size:clamp(1.1rem,3.2vw,1.55rem);
  font-weight:700;
  color:var(--cyan);
  letter-spacing:.01em;
}
.page-home .stats__label{
  display:block;
  margin-top:.3rem;
  font-size:.74rem;
  line-height:1.5;
  color:var(--steel);
}

/* ---------- hero rail ---------- */
.page-home .rail-panel{
  padding:clamp(.9rem,2.4vw,1.15rem);
  border:1px solid var(--home-edge);
  border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(11,39,69,.94),rgba(2,10,18,.88));
}
.page-home .rail-panel__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.6rem;
}
.page-home .rail-panel__title{
  margin:0;
  font-size:clamp(.98rem,2.4vw,1.12rem);
  letter-spacing:.05em;
  color:var(--mist);
}
.page-home .rail-panel__figure{
  margin:.9rem 0 1rem;
  border:1px solid var(--line-soft);
}
.page-home .rail{
  position:relative;
  display:grid;
  gap:.95rem;
  margin:0;
  padding:0;
  list-style:none;
}
.page-home .rail::before{
  content:"";
  position:absolute;
  left:5px;
  top:.4rem;
  bottom:.4rem;
  width:1px;
  background:linear-gradient(180deg,var(--cyan),rgba(43,224,200,.04));
}
.page-home .rail__item{
  position:relative;
  padding-left:1.45rem;
  display:grid;
  gap:.15rem;
}
.page-home .rail__item::before{
  content:"";
  position:absolute;
  left:0;
  top:.42rem;
  width:11px;
  height:11px;
  border-radius:50%;
  border:1px solid var(--cyan);
  background:var(--abyss);
}
.page-home .rail__item--next::before{
  background:var(--lava);
  border-color:var(--lava);
  box-shadow:0 0 0 4px rgba(255,106,42,.18);
}
.page-home .rail__time{
  font-family:var(--font-mono);
  font-size:.68rem;
  letter-spacing:.12em;
  color:var(--steel);
}
.page-home .rail__teams{
  margin:0;
  font-size:.94rem;
  font-weight:600;
  color:var(--mist);
}
.page-home .rail__score{
  font-family:var(--font-mono);
  font-weight:700;
  color:var(--cyan);
  padding:0 .22rem;
}
.page-home .rail__note{
  margin:0;
  font-size:.73rem;
  line-height:1.6;
  color:var(--steel);
}
.page-home .rail-panel__more{
  display:inline-block;
  margin-top:1.05rem;
  padding-bottom:.15rem;
  font-size:.8rem;
  color:var(--cyan);
  text-decoration:none;
  border-bottom:1px solid rgba(43,224,200,.42);
}

/* ---------- shared section bits ---------- */
.page-home .block{
  padding:clamp(2.2rem,5.5vw,4rem) 0;
  border-bottom:1px solid var(--line-soft);
}
.page-home .block--light{background:var(--mist);}
.page-home .block--midnight{background:var(--midnight);}
.page-home .sec-head{
  display:grid;
  gap:.55rem;
  margin-bottom:clamp(1.3rem,3.2vw,2.1rem);
}
.page-home .sec-head__no{
  margin:0;
  font-family:var(--font-mono);
  font-size:.7rem;
  letter-spacing:.22em;
  color:var(--cyan);
}
.page-home .sec-head__title{
  margin:0;
  font-size:clamp(1.3rem,3.6vw,2.15rem);
  line-height:1.22;
  font-weight:800;
  color:var(--mist);
  max-width:22em;
}
.page-home .sec-head__note{
  margin:0;
  max-width:44rem;
  font-size:.9rem;
  line-height:1.85;
  color:var(--steel);
}
.page-home .sec-head__link{
  justify-self:start;
  margin-top:.3rem;
  padding-bottom:.2rem;
  font-family:var(--font-mono);
  font-size:.75rem;
  letter-spacing:.1em;
  color:var(--cyan);
  text-decoration:none;
  border-bottom:1px solid rgba(43,224,200,.45);
}
.page-home .block--light .sec-head__no{color:var(--lava-deep);}
.page-home .block--light .sec-head__title{color:var(--abyss);}
.page-home .block--light .sec-head__note{color:#3c5266;}

/* ---------- feed band ---------- */
.page-home .feed-hint{
  margin:0 0 .6rem;
  font-family:var(--font-mono);
  font-size:.68rem;
  letter-spacing:.14em;
  color:var(--steel);
}
.page-home .feed-band{
  display:flex;
  gap:.9rem;
  max-width:100%;
  overflow-x:auto;
  padding:.2rem .1rem 1.2rem;
  scroll-snap-type:x mandatory;
  scrollbar-color:var(--cyan-deep) transparent;
  -webkit-overflow-scrolling:touch;
}
.page-home .feed-band::-webkit-scrollbar{height:6px;}
.page-home .feed-band::-webkit-scrollbar-track{background:rgba(159,178,196,.14);}
.page-home .feed-band::-webkit-scrollbar-thumb{background:var(--cyan-deep);}
.page-home .feed-card{
  flex:0 0 min(82vw,320px);
  scroll-snap-align:start;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  text-decoration:none;
  border:1px solid var(--line-soft);
  border-radius:var(--radius);
  background:var(--home-panel);
  transition:transform .28s var(--ease),border-color .28s var(--ease);
}
.page-home .feed-card:hover,
.page-home .feed-card:focus-visible{
  transform:translateY(-3px);
  border-color:var(--home-edge);
}
.page-home .feed-card__media{
  border-bottom:1px solid var(--line-soft);
}
.page-home .feed-card__body{
  display:grid;
  gap:.5rem;
  padding:1rem;
}
.page-home .feed-card__body .tag{justify-self:start;}
.page-home .feed-card__title{
  margin:0;
  font-size:1rem;
  line-height:1.45;
  color:var(--mist);
}
.page-home .feed-card__text{
  margin:0;
  font-size:.82rem;
  line-height:1.8;
  color:var(--steel);
}
.page-home .feed-card__meta{
  margin:0;
  font-family:var(--font-mono);
  font-size:.68rem;
  letter-spacing:.08em;
  color:var(--cyan-deep);
}

/* ---------- command bar ---------- */
.page-home .cmd{
  display:grid;
  gap:.42rem;
  margin:0;
  padding:0;
  list-style:none;
}
.page-home .cmd__link{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:.15rem .9rem;
  align-items:baseline;
  padding:.85rem 1rem;
  text-decoration:none;
  border:1px solid var(--line-soft);
  background:rgba(6,26,46,.55);
  transition:border-color .25s var(--ease),background .25s var(--ease);
}
.page-home .cmd__link:hover,
.page-home .cmd__link:focus-visible{
  border-color:var(--home-edge);
  background:rgba(18,127,120,.16);
}
.page-home .cmd__no{
  font-family:var(--font-mono);
  font-size:.76rem;
  font-weight:700;
  letter-spacing:.08em;
  color:var(--cyan);
}
.page-home .cmd__name{
  font-size:.96rem;
  font-weight:600;
  color:var(--mist);
}
.page-home .cmd__hint{
  grid-column:2;
  font-size:.73rem;
  line-height:1.6;
  color:var(--steel);
}
.page-home .cmd__item--key .cmd__link{
  border-color:var(--lava);
  background:linear-gradient(90deg,rgba(255,106,42,.16),rgba(6,26,46,.55));
}
.page-home .cmd__item--key .cmd__no{color:var(--lava);}
.page-home .cmd__item--key .cmd__name{color:var(--mist);}
.page-home .cmd__link[aria-current="page"]{
  border-left:2px solid var(--cyan);
}

/* ---------- round archive ---------- */
.page-home .archive{
  display:grid;
  gap:1.5rem;
}
.page-home .archive__text{
  margin:0 0 1rem;
  font-size:.88rem;
  line-height:1.9;
  color:#3c5266;
}
.page-home .archive__keys{
  display:grid;
  gap:.45rem;
  margin:0;
  padding:0;
  list-style:none;
  font-size:.83rem;
  color:var(--home-ink-soft);
}
.page-home .archive__keys li{
  position:relative;
  padding-left:1.1rem;
}
.page-home .archive__keys li::before{
  content:"";
  position:absolute;
  left:0;
  top:.62em;
  width:.55rem;
  height:1px;
  background:var(--lava-deep);
}
.page-home .rounds{
  display:grid;
  grid-template-columns:1fr;
  gap:.42rem;
  margin:0;
  padding:0;
  list-style:none;
}
.page-home .round{
  display:grid;
  grid-template-columns:2.3rem minmax(0,1fr) auto;
  gap:.6rem;
  align-items:center;
  padding:.6rem .7rem;
  background:#fff;
  border:1px solid rgba(6,26,46,.1);
  border-left:2px solid var(--cyan-deep);
}
.page-home .round__no{
  font-family:var(--font-mono);
  font-size:.95rem;
  font-weight:700;
  color:var(--cyan-deep);
}
.page-home .round__focus{
  font-size:.84rem;
  color:var(--home-ink-soft);
}
.page-home .round__meta{
  font-family:var(--font-mono);
  font-size:.67rem;
  color:var(--home-ink-mid);
  white-space:nowrap;
}

/* ---------- wednesday steps ---------- */
.page-home .steps{
  display:grid;
  gap:1.1rem;
  margin:0;
  padding:0;
  list-style:none;
}
.page-home .steps__item{
  display:grid;
  gap:.45rem;
  padding:1rem 0 0;
  border-top:2px solid var(--cyan);
}
.page-home .steps__no{
  font-family:var(--font-mono);
  font-size:.7rem;
  letter-spacing:.18em;
  color:var(--lava);
}
.page-home .steps__item h3{
  margin:0;
  font-size:1rem;
  line-height:1.4;
  color:var(--mist);
}
.page-home .steps__item p{
  margin:0;
  font-size:.84rem;
  line-height:1.85;
  color:var(--steel);
}
.page-home .steps__actions{margin-top:1.6rem;}

/* ---------- partner ---------- */
.page-home .partner{
  display:grid;
  gap:.8rem;
}
.page-home .partner__item{
  display:grid;
  gap:.45rem;
  padding:1.1rem;
  border:1px solid var(--line-soft);
  border-radius:var(--radius);
  background:linear-gradient(135deg,rgba(11,39,69,.9),rgba(6,26,46,.6));
  transition:border-color .25s var(--ease),transform .25s var(--ease);
}
.page-home .partner__item:hover{
  border-color:var(--home-edge);
  transform:translateY(-2px);
}
.page-home .partner__item h3{
  margin:0;
  font-size:1rem;
  color:var(--mist);
}
.page-home .partner__item p{
  margin:0;
  font-size:.84rem;
  line-height:1.85;
  color:var(--steel);
}
.page-home .partner__foot{
  display:flex;
  flex-wrap:wrap;
  gap:.7rem;
  margin-top:1.5rem;
}

/* ---------- media ---------- */
.page-home .media-frame img{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  object-fit:cover;
}

/* ---------- focus ---------- */
.page-home a:focus-visible,
.page-home .feed-card:focus-visible{
  outline:2px solid var(--cyan);
  outline-offset:3px;
}

/* ---------- breakpoints ---------- */
@media (min-width:640px){
  .page-home .stats{grid-template-columns:repeat(4,minmax(0,1fr));}
  .page-home .rounds{grid-template-columns:repeat(2,minmax(0,1fr));}
  .page-home .feed-card{flex-basis:300px;}
}

@media (min-width:760px){
  .page-home .cmd{grid-template-columns:repeat(2,minmax(0,1fr));}
  .page-home .steps{grid-template-columns:repeat(3,minmax(0,1fr));}
}

@media (min-width:880px){
  .page-home .partner{grid-template-columns:repeat(3,minmax(0,1fr));}
}

@media (min-width:900px){
  .page-home .hero__grid{
    grid-template-columns:minmax(0,3fr) minmax(0,2fr);
  }
  .page-home .archive{
    grid-template-columns:minmax(0,5fr) minmax(0,7fr);
    gap:2.4rem;
    align-items:start;
  }
  .page-home .sec-head__title{font-size:clamp(1.6rem,2.6vw,2.15rem);}
}

@media (prefers-reduced-motion:reduce){
  .page-home .feed-band{scroll-behavior:auto;}
  .page-home .feed-card,
  .page-home .partner__item,
  .page-home .cmd__link{
    transition:none;
  }
  .page-home .feed-card:hover,
  .page-home .partner__item:hover{transform:none;}
}
