/* HV-UX01: a player-first homepage using the existing Hollow Valley assets. */
.home-main.snapshot-home { padding-top:16px !important; }
.home-hub-eyebrow { margin:0 0 10px; color:#95e7b2; font-size:10px; font-weight:800; letter-spacing:.18em; }
.snapshot-welcome.home-hub-welcome {
  min-height:98px;
  padding:22px clamp(20px,4vw,54px);
  border:1px solid rgba(97,170,113,.3); border-radius:12px;
  background:linear-gradient(110deg,#071e19ed,#0b2c21d9),url('/assets/images/hollow-valley-banner.png') center/cover;
}
.snapshot-welcome.home-hub-welcome::before { display:none; }
.snapshot-welcome.home-hub-welcome h1 { margin:0; font:600 clamp(25px,2.7vw,40px)/1.18 Georgia,serif; color:#f5ecce; }
.snapshot-welcome.home-hub-welcome h1 span { color:#a6e9bb; }
.snapshot-welcome.home-hub-welcome p:last-child { margin:9px 0 0; font-size:12px; line-height:1.6; color:#c2d1c5; }

.home-overview { grid-template-columns:minmax(0,1.4fr) minmax(280px,.75fr); margin:18px 0 28px; align-items:stretch; }
.home-overview .snapshot-home-hero { display:flex; flex-direction:column; }
.home-overview .home-brand-art { width:100%; max-height:420px; object-fit:contain; flex:1; min-height:0; background:#e9dfcf; }
.home-overview .snapshot-server-bar { margin-top:auto; border-top:1px solid #4c674d; }
.home-overview .snapshot-server-card:nth-child(3) { display:grid; }
.home-hub-intro {
  display:flex; flex-direction:column; padding:clamp(22px,3.1vw,42px);
  border:1px solid #355f46; border-radius:12px;
  background:radial-gradient(circle at 90% 0%,rgba(34,106,76,.36),transparent 55%),linear-gradient(160deg,#15392a,#061710 85%);
}
.home-hub-intro h2 { margin:0 0 18px; font:600 clamp(27px,3vw,43px)/1.14 Georgia,serif; color:#f4e3b9; }
.home-hub-intro > p:not(.home-hub-eyebrow) { color:#c2d2c6; line-height:1.75; font-size:13px; }
.home-hub-intro-links { display:grid; gap:9px; margin:16px 0 18px; }
.home-hub-intro-links a {
  display:grid; grid-template-columns:22px minmax(0,1fr) 18px; gap:9px;
  align-items:center; padding:14px 12px; color:#f4ebd4;
  border:1px solid rgba(112,168,127,.36); border-radius:7px; background:#061c14af; font-weight:750; font-size:12px;
}
.home-hub-intro-links a span:first-child { color:#a3e4b4; }
.home-hub-intro-links a:hover { border-color:#9fd7ac; background:#123d2b; }
.home-hub-intro .home-hub-intro-footnote { margin-top:auto; font-size:11px; }
.home-hub-intro-footnote a { color:#f1d690; text-decoration:underline; text-underline-offset:3px; }

.home-hub-player,.home-hub-tools,.home-hub-community { margin-top:25px; }
.home-hub-section-heading { display:flex; align-items:end; justify-content:space-between; gap:15px; margin:0 0 16px; }
.home-hub-section-heading h2 { margin:0; font:600 clamp(24px,2.4vw,34px)/1.2 Georgia,serif; color:#f1e2b9; }
.home-hub-section-heading > a { color:#d5eacb; font-size:12px; font-weight:750; text-decoration:underline; text-underline-offset:4px; white-space:nowrap; }

.home-hub-player-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; }
.home-hub-player-grid > a {
  display:flex; flex-direction:column; min-height:154px; padding:23px;
  border:1px solid #3b684b; border-radius:10px; background:linear-gradient(145deg,#0e3022,#071b13);
  transition:border-color .15s ease,transform .15s ease;
}
.home-hub-player-grid a small { margin-bottom:16px; font-size:10px; color:#9bd7ab; font-weight:800; letter-spacing:.12em; }
.home-hub-player-grid a strong { font:600 clamp(19px,2vw,26px)/1.2 Georgia,serif; color:#f4e6c9; overflow-wrap:anywhere; }
.home-hub-player-grid a span { color:#b6cbb9; font-size:12px; line-height:1.5; margin-top:9px; }
.home-hub-player-grid a em { display:block; margin-top:auto; padding-top:14px; color:#eacb87; font-size:11px; font-style:normal; }
.home-hub-player-grid a:hover { border-color:#93be8f; transform:translateY(-2px); }

.home-hub-tools .snapshot-quick-grid { margin:0; }
.home-hub-community .home-explore-links { margin:0 0 14px; }
.home-hub-community-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.home-hub-community-grid a {
  display:grid; gap:8px; justify-items:start; min-height:130px; padding:20px;
  background:linear-gradient(130deg,#10271e,#071a13); border:1px solid #3c5f46; border-radius:10px;
}
.home-hub-community-grid a > span { display:grid; place-items:center; width:30px; height:30px; border:1px solid #678761; border-radius:8px; color:#e4d396; font-size:18px; }
.home-hub-community-grid b { color:#f2e1b5; font:600 19px Georgia,serif; }
.home-hub-community-grid small { color:#adbfad; font-size:11px; line-height:1.5; }
.home-hub-community-grid a:hover { border-color:#91c899; background:#133426; }

.home-main.snapshot-home .home-roadmap { margin:40px 0 30px; padding:clamp(20px,3vw,34px); }
.home-main.snapshot-home #home-roadmap-stages { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:22px; }
.home-main.snapshot-home .roadmap-stage { min-width:0; }
.home-main.snapshot-home .home-roadmap .roadmap-intro { font-size:13px; max-width:800px; }
.home-main.snapshot-home .home-roadmap .roadmap-feature summary { overflow-wrap:anywhere; }
.home-hub-intro-links a:focus-visible,.home-hub-player-grid a:focus-visible,
.home-hub-community-grid a:focus-visible,.home-hub-section-heading a:focus-visible {
  outline:2px solid #e9d694; outline-offset:4px;
}
@media(max-width:1100px) {
  .home-overview { grid-template-columns:minmax(0,1fr) minmax(280px,.8fr); }
  .home-hub-community-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:840px) {
  .home-overview { grid-template-columns:1fr; }
  .home-overview .home-brand-art { max-height:360px; }
  .home-hub-player-grid { grid-template-columns:1fr 1fr; }
  .home-main.snapshot-home #home-roadmap-stages { grid-template-columns:1fr; }
}
@media(max-width:580px) {
  .snapshot-welcome.home-hub-welcome { padding:20px 15px; }
  .home-hub-section-heading { align-items:start; flex-direction:column; }
  .home-hub-player-grid { grid-template-columns:1fr; gap:10px; }
  .home-hub-player-grid > a { min-height:115px; padding:17px; }
  .home-hub-community-grid { gap:10px; }
  .home-hub-community-grid a { min-height:105px; padding:14px; }
  .home-hub-community-grid b { font-size:16px; }
  .home-hub-intro { padding:22px; }
  .home-main.snapshot-home .home-roadmap { margin-top:30px; }
}
@media(prefers-reduced-motion:reduce) {
  .home-hub-player-grid > a { transition:none; }
  .home-hub-player-grid a:hover { transform:none; }
}
