.page-home{
  --hm-card:18px 6px 22px 8px;
  --hm-card-alt:6px 20px 8px 18px;
  --hm-soft:14px 5px 16px 6px;
  background:var(--ink-night);
  color:var(--paper);
}

.page-home .hero-zone{
  position:relative;
  padding-block:.9rem clamp(1.8rem,4vw,3.2rem);
  background-image:
    repeating-linear-gradient(0deg, var(--line-08) 0 1px, transparent 1px 96px),
    repeating-linear-gradient(90deg, var(--line-08) 0 1px, transparent 1px 96px);
  background-position:center top;
  border-bottom:1px solid var(--line-08);
}

.page-home .crumbs{
  display:flex;
  gap:.55rem;
  align-items:center;
  padding-block:.5rem;
  font-family:var(--font-mono);
  font-size:.72rem;
  letter-spacing:.12em;
  color:var(--muted);
}

.page-home .crumb + .crumb::before{
  content:"/";
  margin-right:.5rem;
  color:var(--line);
}

.page-home .crumb[aria-current="page"]{ color:var(--chip-gold); }

.page-home .hero{
  display:grid;
  gap:var(--gap-l);
  align-items:start;
  padding-top:clamp(.6rem,2vw,1.2rem);
}

.page-home .hero-rail{
  display:flex;
  align-items:center;
  gap:.7rem;
  padding-bottom:.6rem;
  border-bottom:1px solid var(--line-08);
  font-family:var(--font-mono);
  font-size:.72rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--muted);
}

.page-home .hero-rail .mono{ color:var(--chip-gold); }

.page-home .hero-rail-sep{
  width:34px;
  height:1px;
  background:var(--line-14);
}

.page-home .hero-copy h1{
  font-family:var(--font-head);
  font-weight:800;
  letter-spacing:-.02em;
  line-height:1.16;
  font-size:clamp(2rem,7.2vw,3.4rem);
  margin:.5rem 0 0;
}

.page-home .hero-lede{
  max-width:var(--measure);
  margin:1rem 0 0;
  color:var(--paper-72);
  font-size:1.02rem;
  line-height:1.85;
}

.page-home .hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.7rem;
  margin-top:1.4rem;
}

.page-home .hero-clock{
  padding:clamp(1.1rem,4vw,1.7rem);
  border:1px solid var(--line-14);
  border-radius:var(--hm-card);
  background:linear-gradient(158deg, var(--felt-green), var(--lake-mid) 78%);
  box-shadow:var(--shadow-card);
  transition:transform var(--t-fast), border-color var(--t-fast);
}

.page-home .hero-clock:hover{
  transform:translateY(-2px);
  border-color:var(--chip-glow);
}

.page-home .clock-label{
  margin:0;
  font-size:.82rem;
  letter-spacing:.08em;
  color:var(--paper-72);
}

.page-home .clock-num{
  display:flex;
  align-items:baseline;
  gap:.5rem;
  margin:.35rem 0 .55rem;
}

.page-home .clock-num .mono{
  font-family:var(--font-mono);
  font-size:clamp(2.6rem,10vw,4rem);
  line-height:1;
  color:var(--chip-gold);
  letter-spacing:-.02em;
}

.page-home .clock-unit{
  font-size:.95rem;
  color:var(--paper-72);
}

.page-home .clock-note{
  margin:0;
  max-width:34ch;
  font-size:.9rem;
  line-height:1.75;
  color:var(--paper-72);
}

.page-home .clock-list{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem 1.1rem;
  list-style:none;
  margin:1rem 0 0;
  padding:.8rem 0 0;
  border-top:1px solid var(--paper-12);
  font-size:.84rem;
  color:var(--paper-72);
}

.page-home .clock-list .mono{
  font-family:var(--font-mono);
  color:var(--paper);
  margin-right:.3rem;
}

.page-home .hero-visual{
  margin:0;
  transition:transform var(--t-fast), border-color var(--t-fast);
}

.page-home .hero-visual:hover{
  transform:translateY(-2px);
}

.page-home .hero-visual .media-img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:var(--hm-card-alt);
  border:1px solid var(--line-14);
}

.page-home .media-cap{
  margin-top:.6rem;
  font-size:.78rem;
  letter-spacing:.04em;
  color:var(--muted);
}

.page-home .zone{
  padding-block:clamp(2.4rem,6vw,4.4rem);
}

.page-home .sec-head{
  max-width:var(--measure);
  margin-bottom:clamp(1.4rem,3vw,2.2rem);
}

.page-home .sec-head h2{
  font-family:var(--font-head);
  font-weight:800;
  letter-spacing:-.02em;
  line-height:1.25;
  font-size:clamp(1.5rem,4.4vw,2.15rem);
  margin:.35rem 0 0;
}

.page-home .sec-lede,
.page-home .adapt-lede,
.page-home .v3-lede{
  margin:.8rem 0 0;
  color:var(--paper-72);
  font-size:.98rem;
  line-height:1.85;
}

.page-home .pace-grid{
  display:grid;
  gap:var(--gap-m);
}

.page-home .pace-card{
  padding:1.2rem 1.15rem 1.3rem;
  border:1px solid var(--line-08);
  border-radius:var(--hm-soft);
  background:var(--paper-06);
  transition:transform var(--t-fast), border-color var(--t-fast);
}

.page-home .pace-card:hover{
  transform:translateY(-2px);
  border-color:var(--chip-glow);
}

.page-home .pace-card--fast{
  border-color:var(--line-14);
  background:linear-gradient(170deg, rgba(31,91,74,.72), rgba(20,85,95,.42));
}

.page-home .pace-range{
  margin:0;
  font-family:var(--font-mono);
  font-size:clamp(1.5rem,5vw,2.1rem);
  color:var(--chip-gold);
  letter-spacing:-.01em;
}

.page-home .pace-card h3{
  margin:.5rem 0 .45rem;
  font-size:1.06rem;
}

.page-home .pace-card p{
  margin:0;
  font-size:.92rem;
  line-height:1.8;
  color:var(--paper-72);
}

.page-home .pace-tag{
  margin-top:.7rem !important;
  padding-top:.6rem;
  border-top:1px solid var(--paper-12);
  font-size:.8rem !important;
  color:var(--muted) !important;
}

.page-home .adapt-grid{
  display:grid;
  gap:var(--gap-xl);
}

.page-home .adapt-visual{
  margin:0;
}

.page-home .adapt-visual .media-img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:var(--hm-card);
  border:1px solid var(--line-14);
}

.page-home .spec-list{
  list-style:none;
  margin:1.4rem 0 1.7rem;
  padding:0;
  display:grid;
  gap:.6rem;
}

.page-home .spec-item{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:.85rem;
  align-items:center;
  padding:.75rem .9rem;
  border:1px solid var(--line-08);
  border-radius:var(--hm-soft);
  background:var(--paper-06);
  transition:transform var(--t-fast), border-color var(--t-fast);
}

.page-home .spec-item:hover{
  transform:translateY(-2px);
  border-color:var(--chip-glow);
}

.page-home .spec-num{
  font-family:var(--font-mono);
  font-size:1.35rem;
  color:var(--chip-gold);
  min-width:2.6em;
}

.page-home .spec-text{
  font-size:.9rem;
  line-height:1.7;
  color:var(--paper-72);
}

.page-home .tick{
  width:12px;
  height:12px;
  border-radius:3px;
  flex:0 0 auto;
}

.page-home .tick--on{
  background:var(--felt-light);
  box-shadow:0 0 0 3px rgba(46,125,99,.2);
}

.page-home .tick--wait{
  background:var(--paper-12);
  border:1px solid var(--line-14);
}

.page-home .band-visual{
  margin:0 0 1.2rem;
}

.page-home .band-visual .media-img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:16/5;
  object-fit:cover;
  border-radius:var(--hm-card-alt);
  border:1px solid var(--line-14);
}

.page-home .band--rooms{
  display:flex;
  gap:.75rem;
  list-style:none;
  margin:0;
  padding:.2rem 0 .9rem;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
}

.page-home .band--rooms > .band-item{
  flex:0 0 78%;
  scroll-snap-align:start;
}

.page-home .band-item{
  margin:0;
  padding:.95rem 1rem 1.05rem;
  border:1px solid var(--line-08);
  border-radius:var(--hm-soft);
  background:linear-gradient(180deg, rgba(110,42,56,.92), rgba(110,42,56,.6));
  transition:transform var(--t-fast), border-color var(--t-fast), box-shadow var(--t-fast);
}

.page-home .band-item:hover,
.page-home .band-item:focus-within{
  transform:translateY(-2px);
  border-color:var(--chip-glow);
  box-shadow:0 0 0 1px var(--chip-glow);
}

.page-home .band-link{
  display:block;
  color:inherit;
  text-decoration:none;
}

.page-home .band-link:focus-visible{
  outline:2px solid var(--chip-glow);
  outline-offset:4px;
  border-radius:6px;
}

.page-home .band-idx{
  display:block;
  font-family:var(--font-mono);
  font-size:.7rem;
  letter-spacing:.16em;
  color:var(--chip-glow);
}

.page-home .band-name{
  margin:.4rem 0 .25rem;
  font-size:1.02rem;
  letter-spacing:.01em;
}

.page-home .band-desc{
  margin:0;
  font-size:.8rem;
  line-height:1.6;
  color:rgba(244,241,232,.74);
}

.page-home .band-note{
  max-width:var(--measure);
  margin:1rem 0 0;
  font-size:.88rem;
  line-height:1.85;
  color:var(--paper-72);
}

.page-home .band-note .mono{
  font-family:var(--font-mono);
  color:var(--chip-gold);
  padding:0 .12em;
}

.page-home .inline-link{
  color:var(--chip-gold);
  text-decoration:none;
  border-bottom:1px solid rgba(227,168,87,.45);
  transition:border-color var(--t-fast);
}

.page-home .inline-link:hover{ border-color:var(--chip-glow); }

.page-home .inline-link:focus-visible{
  outline:2px solid var(--chip-glow);
  outline-offset:3px;
  border-radius:4px;
}

.page-home .v3-grid{
  display:grid;
  gap:var(--gap-xl);
  align-items:start;
}

.page-home .v3-ver{
  padding:1.2rem 1.1rem 1.3rem;
  border:1px solid var(--line-14);
  border-radius:var(--hm-card);
  background:rgba(12,22,38,.5);
}

.page-home .v3-num{
  margin:.4rem 0 .3rem;
  font-family:var(--font-mono);
  font-size:clamp(2rem,7vw,3.5rem);
  line-height:1.05;
  color:var(--chip-gold);
  letter-spacing:-.02em;
}

.page-home .v3-cap{
  margin:0 0 1rem;
  font-size:.82rem;
  color:var(--muted);
}

.page-home .v3-steps h2{
  font-family:var(--font-head);
  font-weight:800;
  letter-spacing:-.02em;
  line-height:1.28;
  font-size:clamp(1.45rem,4.2vw,2rem);
  margin:0;
}

.page-home .step-list{
  list-style:none;
  margin:1.3rem 0 0;
  padding:0;
  display:grid;
  gap:.8rem;
}

.page-home .step{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:.25rem .9rem;
  padding:.95rem 1rem 1rem;
  border-left:2px solid var(--felt-light);
  border-radius:4px 14px 4px 14px;
  background:var(--paper-06);
  transition:transform var(--t-fast), border-color var(--t-fast);
}

.page-home .step:hover{
  transform:translateY(-2px);
  border-left-color:var(--chip-gold);
}

.page-home .step-idx{
  grid-column:1;
  grid-row:1/3;
  font-family:var(--font-mono);
  font-size:1.05rem;
  color:var(--chip-gold);
}

.page-home .step h3{
  grid-column:2;
  margin:0;
  font-size:1rem;
}

.page-home .step p{
  grid-column:2;
  margin:0;
  font-size:.9rem;
  line-height:1.75;
  color:var(--paper-72);
}

.page-home .v3-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.7rem;
  margin-top:1.4rem;
}

.page-home .updates-grid{
  display:grid;
  gap:var(--gap-xl);
}

.page-home .updates-col h2{
  font-family:var(--font-head);
  font-weight:800;
  letter-spacing:-.02em;
  line-height:1.28;
  font-size:clamp(1.45rem,4.2vw,2rem);
  margin:.35rem 0 0;
}

.page-home .note-list{
  list-style:none;
  margin:1.3rem 0 1.2rem;
  padding:0;
  display:grid;
  gap:1rem;
}

.page-home .note-item{
  padding-left:.95rem;
  border-left:1px solid var(--line-14);
}

.page-home .note-time{
  display:block;
  font-family:var(--font-mono);
  font-size:.72rem;
  letter-spacing:.08em;
  color:var(--chip-glow);
}

.page-home .note-item p{
  margin:.35rem 0 0;
  font-size:.92rem;
  line-height:1.8;
  color:var(--paper-72);
}

.page-home .scene-col{
  padding:clamp(1.1rem,3.5vw,1.5rem);
  border:1px solid var(--line-08);
  border-radius:var(--hm-card-alt);
  background:linear-gradient(180deg, rgba(53,44,99,.55), rgba(14,58,68,.35));
}

.page-home .scene-title{
  margin:0 0 1rem;
  font-size:1.06rem;
  letter-spacing:.01em;
}

.page-home .scene-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:.2rem;
}

.page-home .scene-list li{
  padding:.75rem 0;
  border-bottom:1px solid var(--paper-12);
}

.page-home .scene-list li:last-child{ border-bottom:0; padding-bottom:0; }

.page-home .scene-list a{
  display:block;
  color:var(--paper);
  font-size:.94rem;
  line-height:1.6;
  text-decoration:none;
  transition:color var(--t-fast);
}

.page-home .scene-list a:hover{ color:var(--chip-glow); }

.page-home .scene-list a:focus-visible{
  outline:2px solid var(--chip-glow);
  outline-offset:3px;
  border-radius:4px;
}

.page-home .scene-hint{
  display:block;
  margin-top:.3rem;
  font-size:.78rem;
  color:var(--muted);
}

.page-home .closing{
  background:linear-gradient(180deg, var(--lake-deep), var(--ink-night) 78%);
}

.page-home .closing-inner{
  display:grid;
  gap:var(--gap-l);
  align-items:center;
}

.page-home .closing-media{
  margin:0;
}

.page-home .closing-media .media-img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:21/9;
  object-fit:cover;
  border-radius:var(--hm-card);
  border:1px solid var(--line-14);
}

.page-home .closing-copy h2{
  font-family:var(--font-head);
  font-weight:800;
  letter-spacing:-.02em;
  line-height:1.3;
  font-size:clamp(1.4rem,4.2vw,1.95rem);
  margin:0;
}

.page-home .closing-copy p{
  max-width:var(--measure);
  margin:.9rem 0 0;
  font-size:.96rem;
  line-height:1.85;
  color:var(--paper-72);
}

.page-home .closing-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.7rem;
  margin-top:1.3rem;
}

@media (min-width:760px){
  .page-home .pace-grid{
    grid-template-columns:1.2fr 1fr 1fr;
    align-items:start;
  }

  .page-home .pace-card:nth-child(2){ margin-top:1.5rem; }
  .page-home .pace-card:nth-child(3){ margin-top:.7rem; }

  .page-home .band--rooms > .band-item{ flex:0 0 40%; }
}

@media (min-width:900px){
  .page-home .adapt-grid{
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    align-items:center;
  }

  .page-home .updates-grid{
    grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  }

  .page-home .closing-inner{
    grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
  }
}

@media (min-width:960px){
  .page-home .hero{
    grid-template-columns:84px minmax(0,1.02fr) minmax(0,.98fr);
    grid-template-rows:auto auto;
    column-gap:clamp(1.2rem,3vw,2.2rem);
    row-gap:var(--gap-l);
  }

  .page-home .hero-rail{
    grid-column:1;
    grid-row:1/3;
    writing-mode:vertical-rl;
    justify-content:flex-start;
    align-self:stretch;
    padding:0 0 0 1rem;
    border-bottom:0;
    border-left:1px solid var(--line-14);
  }

  .page-home .hero-rail-sep{
    width:1px;
    height:34px;
  }

  .page-home .hero-copy{
    grid-column:2;
    grid-row:1;
  }

  .page-home .hero-clock{
    grid-column:2;
    grid-row:2;
  }

  .page-home .hero-visual{
    grid-column:3;
    grid-row:1/3;
    align-self:stretch;
  }

  .page-home .hero-visual .media-img{
    aspect-ratio:3/4;
    height:100%;
  }

  .page-home .v3-grid{
    grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);
  }
}

@media (min-width:1040px){
  .page-home .band--rooms{
    overflow:visible;
    scroll-snap-type:none;
  }

  .page-home .band--rooms > .band-item{
    flex:0 0 calc((100% - 3.75rem) / 6);
  }
}

@media (prefers-reduced-motion:reduce){
  .page-home .hero-clock,
  .page-home .pace-card,
  .page-home .spec-item,
  .page-home .band-item,
  .page-home .step,
  .page-home .hero-visual{
    transition:none;
  }

  .page-home .hero-clock:hover,
  .page-home .pace-card:hover,
  .page-home .spec-item:hover,
  .page-home .band-item:hover,
  .page-home .step:hover,
  .page-home .hero-visual:hover{
    transform:none;
  }
}
