/* Team lobby only. House lobby keeps its own door language. */
html.home{background:#0A141C}
html.home body{
  min-height:100vh;
  background:
    radial-gradient(1200px 520px at 50% -80px, rgba(201,162,39,.18), transparent 62%),
    radial-gradient(900px 420px at 8% 108%, rgba(47,111,109,.14), transparent 58%),
    linear-gradient(180deg,#0A141C,#0E1A24);
}
html.home main{max-width:820px;padding:18px 22px 72px}
.lobby{
  position:relative;
  margin-top:28px;
  padding:56px 48px 48px;
  background:
    linear-gradient(180deg, rgba(22,34,44,.42), rgba(14,26,36,.78));
  border:1px solid rgba(201,162,39,.38);
  box-shadow:
    inset 0 0 0 1px rgba(10,20,28,.85),
    inset 0 0 0 7px rgba(201,162,39,.08),
    0 28px 70px rgba(0,0,0,.32);
}
.lobby::before,
.lobby::after{
  content:"";
  position:absolute;
  width:28px;height:28px;
  pointer-events:none;
  border:1.5px solid rgba(240,217,138,.55);
}
.lobby::before{top:10px;left:10px;border-right:0;border-bottom:0}
.lobby::after{bottom:10px;right:10px;border-left:0;border-top:0}
.place{
  display:flex;align-items:center;justify-content:center;gap:16px;
  margin:0 0 28px;color:var(--gold);
  font:500 11px/1 Cinzel,serif;letter-spacing:.28em;text-transform:uppercase;
}
.place::before,
.place::after{
  content:"";
  width:min(88px,18vw);height:1px;
  background:linear-gradient(90deg, transparent, var(--copper), var(--gold-hi), var(--copper), transparent);
}
.place span{position:relative}
.hero{text-align:center;padding:0}
.hero h1{
  margin:0;
  font-size:clamp(40px,7vw,72px);
  letter-spacing:.05em;
  color:var(--cream);
  text-shadow:0 1px 0 rgba(184,115,51,.28);
}
.hero h1::after{
  content:"";
  display:block;
  width:10px;height:10px;
  margin:22px auto 0;
  background:linear-gradient(135deg, var(--gold-hi), var(--copper));
  transform:rotate(45deg);
  box-shadow:0 0 0 4px rgba(14,26,36,.9), 0 0 0 5px rgba(201,162,39,.35);
}
.board{margin:36px 0 0;padding-top:8px;border-top:none}
.board::before{
  content:"";
  display:block;
  height:1px;
  margin:0 0 28px;
  background:linear-gradient(90deg, transparent, rgba(184,115,51,.15), var(--gold), rgba(184,115,51,.15), transparent);
}
.next,.watch-box,.note-line,.door,.year,.plaque{
  background:var(--plate);
  border:1px solid var(--plate-edge);
  box-shadow:var(--plate-inset);
}
.next,.watch-box{
  display:block;padding:22px 20px 20px;text-decoration:none;color:inherit;
}
.next:hover,.watch-box:hover,.note-line:hover,.door:hover,.year:hover,.plaque:hover{
  border-color:rgba(240,217,138,.7);
  box-shadow:var(--plate-inset), 0 0 0 1px rgba(201,162,39,.16);
}
.next .k,.watch-box .k{
  margin:0 0 10px;color:var(--gold);
  font:500 11px/1 Cinzel,serif;letter-spacing:.18em;text-transform:uppercase;
}
.next .g{margin:0 0 8px;font:600 26px/1.15 Cinzel,serif;color:var(--cream)}
.next .m{margin:0;color:var(--muted);font-size:16px}
.watch-box{margin:14px 0 0}
.watch-box .opt{margin:0;color:var(--muted);font-size:15px;line-height:1.4;font-weight:400}
.watch-box .opt.primary{color:var(--gold-hi);font:600 17px/1.35 Cinzel,serif;letter-spacing:.04em}
.watch-box .opt + .opt{margin-top:8px}
.notes{display:grid;gap:10px;margin:14px 0 0}
.note-line{
  display:block;padding:16px 18px;text-decoration:none;color:var(--ink);
}
.note-line b{display:block;margin-bottom:6px;color:var(--gold);font:500 11px/1 Cinzel,serif;letter-spacing:.14em;text-transform:uppercase}
.note-line span{display:block;color:#E8DCC6;font-size:16px;line-height:1.4}
.doors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0 0}
.door{
  display:block;padding:18px 10px 16px;text-align:center;text-decoration:none;color:var(--cream);
}
.door::before{
  content:"";
  display:block;
  width:6px;height:6px;
  margin:0 auto 10px;
  background:linear-gradient(135deg, var(--gold-hi), var(--copper));
  transform:rotate(45deg);
}
.door:hover{color:var(--gold)}
.door b{display:block;font:600 12px/1 Cinzel,serif;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.door span{display:block;margin-top:8px;color:var(--muted);font-size:14px}
.article{margin:40px auto 0;max-width:38rem}
.article p{margin:0 0 18px;color:#E8DCC6}
.plaque{display:block;margin:32px 0;padding:26px 22px 20px;text-align:center;text-decoration:none;color:inherit}
.plaque .names{margin:0;color:var(--gold);font-family:Cinzel,serif;font-size:12px;letter-spacing:.16em;text-transform:uppercase;line-height:2}
.plaque .cap{margin:14px 0 0;color:var(--muted);font:500 11px/1 Cinzel,serif;letter-spacing:.18em;text-transform:uppercase}
.job{margin:48px 0 0;text-align:center}
.job h2{margin:0 0 22px;color:var(--cream);font-size:18px;letter-spacing:.22em;text-transform:uppercase}
.years{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 22px}
.year{display:block;padding:18px 8px 16px;text-decoration:none;color:inherit}
.year b{display:block;font:600 22px/1 Cinzel,serif;color:var(--gold)}
.year span{display:block;margin-top:8px;color:var(--muted);font:500 10px/1 Cinzel,serif;letter-spacing:.2em;text-transform:uppercase}
.horizon{margin:0;color:#E8DCC6;text-align:center}
html.home .site-foot{margin-top:56px;text-align:center}
@media(max-width:700px){
  .lobby{padding:36px 20px}
  .lobby::before,.lobby::after{width:18px;height:18px}
  .hero h1{font-size:36px}
  .next .g{font-size:22px}
  .doors{grid-template-columns:repeat(2,minmax(0,1fr))}
  .door.span2{grid-column:1 / -1}
  .years{grid-template-columns:1fr;max-width:220px;margin-left:auto;margin-right:auto}
}
