/* Homepage only (Deploy A). Builds on desk.css tokens. No JS required. */
.hwrap{max-width:1120px;margin:0 auto;padding:0 16px}
.htop{position:sticky;top:0;z-index:5;background:rgba(10,11,12,.94);border-bottom:1px solid var(--line)}
.htop .hwrap{display:flex;align-items:center;gap:12px;min-height:56px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}
.htop .brand{letter-spacing:.08em;font-size:1.15rem;font-weight:650;white-space:nowrap}
.htop .brand span{color:var(--safety)}
.hnav{display:flex;gap:4px;overflow-x:auto;flex:1 1 100%;order:3;margin:0 -4px;scrollbar-width:none}
.hnav::-webkit-scrollbar{display:none}
.hnav a{color:var(--muted);padding:6px 10px;border-radius:999px;white-space:nowrap;font-size:.92rem}
.hnav a.on,.hnav a:hover{color:var(--paper);background:#1a1d20}
.htop .btn{margin-left:auto;min-height:38px;font-size:.9rem}
.hero{padding:40px 0 28px;border-bottom:1px solid var(--line)}
.hero h1{max-width:18ch;font-size:clamp(2rem,8vw,3.6rem)}
.hero .lead{margin:12px 0 22px}
.ctas{display:flex;flex-wrap:wrap;gap:10px}
.ctas .btn{min-height:48px;padding:0 18px}
.btn.safety,a.btn.safety{background:var(--safety);border-color:var(--safety);color:#0a0b0c}
.hsec{padding:34px 0 8px}
.hsec h2{margin-bottom:4px}
.hsec .lead{margin:0}
.pgrid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:18px}
.pcard{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;color:inherit}
.pcard:hover{border-color:var(--steel)}
.pcard h3{font-size:1.3rem}
.pcard p{margin:6px 0 0;color:var(--muted);font-size:.95rem}
.pcard .go{margin-top:auto;padding-top:12px;color:var(--steel);font-weight:600;font-size:.92rem}
.pcard:hover .go{color:var(--paper)}
.pcard.lead-card{border-left:3px solid var(--safety)}
.tgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:18px}
.tgrid a{display:block;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px;color:var(--paper);font-size:.95rem}
.tgrid a small{display:block;color:var(--muted);font-size:.8rem;margin-top:2px}
.tgrid a:hover{border-color:var(--steel)}
.more{margin-top:14px}
.more a{color:var(--steel);text-decoration:underline;text-underline-offset:3px}
.hfoot{border-top:1px solid var(--line);margin-top:40px;padding:28px 0 44px;color:var(--muted)}
.hfoot .cols{display:grid;gap:18px}
.hfoot ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 14px}
.hfoot .brand{letter-spacing:.08em}
.hfoot p{margin:6px 0}
@media (min-width:640px){
  .pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .hfoot .cols{grid-template-columns:1.2fr 1fr 1fr}
  .hfoot ul{flex-direction:column}
}
@media (min-width:900px){
  .hwrap{padding:0 24px}
  .htop .hwrap{flex-wrap:nowrap}
  .hnav{order:0;flex:1;margin:0 0 0 12px}
  .hero{padding:64px 0 44px}
  .pgrid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .pgrid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* 18 tools: 2 cols (9 rows) / 3 cols (6 rows) / 6 cols (3 rows) - no lonely last-row tile */
@media (min-width:1024px){
  .tgrid{grid-template-columns:repeat(6,minmax(0,1fr))}
}
