@import url('https://fonts.googleapis.com/css2?family=Alegreya+SC:wght@400;700&family=Fira+Sans+Condensed:wght@300;400;600&display=swap');

:root{
  --vt-graphite:#191d24;
  --vt-panel:#222831;
  --vt-panel2:#1f2630;
  --vt-line:#2f3a46;
  --vt-line2:#46525f;
  --vt-platinum:#c9d1d9;
  --vt-green:#2f8f5b;
  --vt-red:#e04b4b;
  --vt-text:#eef2f6;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--vt-graphite);
  color:var(--vt-text);
  font-family:'Fira Sans Condensed',Arial,sans-serif;
  font-weight:300;
  font-size:17px;
  line-height:1.62;
  overflow-x:hidden;
}
img,svg{max-width:100%}
a{color:var(--vt-platinum)}

.vtWrap{max-width:1120px;margin:0 auto;padding:0 18px}

/* ---------- header ---------- */
.vtTop{
  position:sticky;top:0;z-index:40;
  background:rgba(25,29,36,.96);
  border-bottom:1px solid var(--vt-line);
}
.vtTopIn{display:flex;align-items:center;gap:14px;padding:10px 18px;max-width:1120px;margin:0 auto}
.vtMark{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--vt-text)}
.vtMark svg{display:block;width:38px;height:38px;flex:0 0 38px}
.vtWord{font-family:'Alegreya SC',Georgia,serif;font-size:23px;letter-spacing:.06em;line-height:1}
.vtWordSub{display:block;font-family:'Fira Sans Condensed',sans-serif;font-size:10.5px;letter-spacing:.24em;color:#8b98a6;text-transform:uppercase}
.vtTopGap{flex:1 1 auto}
.vtKey{
  display:inline-block;padding:9px 18px;
  background:var(--vt-green);color:#f2fff7;text-decoration:none;
  font-weight:600;font-size:15px;letter-spacing:.04em;
  border:1px solid #3aa96c;border-radius:3px;
  box-shadow:inset 0 0 0 2px rgba(25,29,36,.35);
  white-space:nowrap;
}
.vtKey:hover{background:#38a568}
.vtKeyBig{padding:14px 30px;font-size:18px}

/* ---------- hero ---------- */
.vtHero{padding:34px 0 8px;border-bottom:1px solid var(--vt-line)}
.vtHeroGrid{display:grid;grid-template-columns:330px 1fr;gap:34px;align-items:center}
.vtDoorCase{
  position:relative;padding:16px;background:var(--vt-panel);
  border:1px solid var(--vt-line);
  box-shadow:inset 0 0 0 6px var(--vt-graphite),inset 0 0 0 7px #2b3540;
}
.vtDoor{display:block;width:100%;height:auto}
.vtStamp{
  position:absolute;right:-1px;bottom:-1px;
  font-family:ui-monospace,Consolas,monospace;
  font-size:10px;letter-spacing:.16em;color:#7d8b99;
  background:var(--vt-graphite);border:1px solid var(--vt-line);
  padding:3px 8px;
}
.vtTag{
  font-family:ui-monospace,Consolas,monospace;font-size:11.5px;letter-spacing:.3em;
  color:var(--vt-green);text-transform:uppercase;margin:0 0 10px;
}
h1{
  font-family:'Alegreya SC',Georgia,serif;font-weight:700;
  font-size:39px;line-height:1.14;margin:0 0 14px;color:#fff;
}
.vtLead{font-size:18px;color:#cfd8e1;margin:0 0 20px}
.vtGauge{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 22px}
.vtGaugeCell{
  background:var(--vt-panel);border:1px solid var(--vt-line);
  border-left:3px solid var(--vt-green);padding:11px 13px;
}
.vtGaugeNum{font-family:'Alegreya SC',Georgia,serif;font-size:24px;color:#fff;line-height:1.1}
.vtGaugeCap{font-size:13.5px;color:#93a1b0;letter-spacing:.02em}
.vtHeroFoot{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:8px}
.vtHeroFoot span{font-size:13.5px;color:#8b98a6}

/* ---------- rail ---------- */
.vtRail{display:flex;gap:4px;margin:28px 0}
.vtRail i{flex:1 1 0;height:15px;background:var(--vt-panel);border:1px solid #2b3540;border-radius:2px}
.vtRail i:nth-child(odd){background:var(--vt-panel2)}
.vtRail i:nth-child(5n){background:#24463a;border-color:#2f8f5b}

/* ---------- box section ---------- */
.vtBox{
  position:relative;margin:0;padding:34px 26px 28px;
  background:var(--vt-panel2);
  border:1px solid var(--vt-line2);
  box-shadow:inset 0 0 0 5px var(--vt-graphite),inset 0 0 0 6px var(--vt-line);
}
.vtPlate{
  position:absolute;top:-11px;left:22px;
  font-family:ui-monospace,Consolas,monospace;
  font-size:10.5px;letter-spacing:.14em;color:var(--vt-platinum);
  background:var(--vt-graphite);border:1px solid var(--vt-line2);
  padding:3px 10px;white-space:nowrap;
}
h2{
  font-family:'Alegreya SC',Georgia,serif;font-weight:700;
  font-size:28px;line-height:1.2;margin:0 0 16px;color:#fff;
}
h3{
  font-family:'Alegreya SC',Georgia,serif;font-weight:400;
  font-size:20px;line-height:1.25;margin:24px 0 8px;color:var(--vt-platinum);
}
p{margin:0 0 14px}

/* ---------- welcome steps ---------- */
.vtSteps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0 20px}
.vtStep{background:var(--vt-panel);border:1px solid var(--vt-line);padding:14px 15px}
.vtStepNo{font-family:ui-monospace,Consolas,monospace;font-size:10.5px;letter-spacing:.18em;color:#7d8b99}
.vtStepPct{font-family:'Alegreya SC',Georgia,serif;font-size:30px;color:var(--vt-green);line-height:1.15}
.vtStepSum{font-size:16.5px;color:#fff}
.vtStepFs{font-size:14px;color:#93a1b0}
.vtTerms{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px;padding:0;list-style:none}
.vtTerms li{
  font-size:14px;color:#cfd8e1;background:var(--vt-panel);
  border:1px solid var(--vt-line);padding:5px 11px;
}

/* ---------- catalog wall ---------- */
.vtWall{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0 20px}
.vtCellItem{
  position:relative;display:flex;justify-content:space-between;gap:8px;
  padding:13px 13px 13px 28px;background:var(--vt-panel);
  border:1px solid var(--vt-line);
}
.vtSlot{
  position:absolute;left:11px;top:14px;bottom:14px;width:6px;border-radius:3px;
  background:linear-gradient(180deg,#c9d1d9 0%,#6a7684 55%,#39434f 100%);
}
.vtCellName{font-size:15.5px;color:#fff;line-height:1.28}
.vtCellMeta{font-size:12.5px;color:#8b98a6;letter-spacing:.01em}
.vtCellWin{font-size:12.5px;color:var(--vt-platinum)}
.vtRtp{
  font-family:'Alegreya SC',Georgia,serif;font-size:25px;color:var(--vt-green);
  line-height:1;text-align:right;white-space:nowrap;
}
.vtRtp small{display:block;font-family:'Fira Sans Condensed',sans-serif;font-size:10px;letter-spacing:.2em;color:#7d8b99}

.vtStudios{font-size:15.5px;color:#aeb9c5;margin:0 0 16px;padding:12px 14px;background:var(--vt-panel);border-left:3px solid var(--vt-platinum)}

/* ---------- club bolts ---------- */
.vtBolts{display:flex;flex-direction:column;gap:9px;margin:18px 0 20px}
.vtBoltRow{display:flex;align-items:center;gap:12px}
.vtBolt{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  height:38px;padding:0 13px;
  background:linear-gradient(90deg,#2b3540,#3d4a58);
  border:1px solid var(--vt-line2);border-right:5px solid var(--vt-platinum);
  font-size:15px;color:#e7eef5;white-space:nowrap;overflow:hidden;
}
.vtBoltPts{font-family:ui-monospace,Consolas,monospace;font-size:12px;color:#9fb0c0}
.vtBoltCb{
  font-family:'Alegreya SC',Georgia,serif;font-size:21px;color:var(--vt-green);
  white-space:nowrap;flex:0 0 auto;
}
.w1{width:40%}.w2{width:52%}.w3{width:64%}.w4{width:76%}.w5{width:88%}.w6{width:100%}

/* ---------- live grid ---------- */
.vtDesk{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0 20px}
.vtDeskCell{background:var(--vt-panel);border:1px solid var(--vt-line);padding:13px 14px}
.vtDeskName{font-size:16px;color:#fff}
.vtDeskMeta{font-size:13.5px;color:#93a1b0}

/* ---------- ledger table ---------- */
.vtLedgerWrap{overflow-x:auto;margin:18px 0 18px;border:1px solid var(--vt-line)}
.vtLedger{width:100%;border-collapse:collapse;min-width:600px;font-size:15px}
.vtLedger th,.vtLedger td{padding:10px 13px;text-align:left;border-bottom:1px solid var(--vt-line)}
.vtLedger thead th{
  background:var(--vt-panel);color:var(--vt-platinum);font-weight:600;
  font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;
}
.vtLedger tbody tr:nth-child(even){background:rgba(34,40,49,.55)}
.vtOpen{color:var(--vt-green);white-space:nowrap}
.vtLedger tfoot td{
  background:#24463a;border-top:1px solid var(--vt-green);border-bottom:0;
  color:#dff3e7;font-size:14.5px;
}

/* ---------- review ---------- */
.vtNote{
  position:relative;margin:20px 0;padding:22px 20px 16px;
  background:var(--vt-panel);border:1px solid var(--vt-line);
  border-left:3px solid var(--vt-red);
}
.vtNote p{margin:0 0 9px;font-size:16.5px;color:#dbe3ec}
.vtNoteWho{font-size:13px;letter-spacing:.06em;color:#8b98a6}
.vtNoteTag{
  position:absolute;top:-10px;left:16px;
  font-family:ui-monospace,Consolas,monospace;font-size:10px;letter-spacing:.16em;
  color:#c1ccd8;background:var(--vt-graphite);border:1px solid var(--vt-line2);padding:2px 9px;
}

/* ---------- faq ---------- */
.vtAsk{border:1px solid var(--vt-line);background:var(--vt-panel);margin:0 0 8px}
.vtAsk summary{
  cursor:pointer;list-style:none;padding:12px 15px;
  font-size:17px;color:#fff;position:relative;padding-right:40px;
}
.vtAsk summary::-webkit-details-marker{display:none}
.vtAsk summary::after{
  content:'';position:absolute;right:15px;top:50%;width:11px;height:11px;margin-top:-6px;
  border:2px solid var(--vt-green);border-radius:50%;
}
.vtAsk[open] summary::after{background:var(--vt-green)}
.vtAskBody{padding:0 15px 14px;color:#cfd8e1;font-size:16px}

/* ---------- author + footer ---------- */
.vtAuthor{
  margin:28px 0 0;padding:20px 22px;background:var(--vt-panel2);
  border:1px solid var(--vt-line);border-top:3px solid var(--vt-platinum);
  font-size:15.5px;color:#b9c4d0;
}
.vtAuthorHead{font-family:'Alegreya SC',Georgia,serif;font-weight:700;font-size:21px;color:#fff;margin:0 0 10px}
.vtAge{
  display:inline-block;margin-top:6px;padding:4px 11px;
  border:1px solid var(--vt-red);color:#f0a6a6;font-size:13.5px;letter-spacing:.06em;
}
.vtFoot{margin-top:34px;border-top:1px solid var(--vt-line);background:#14181e;padding:24px 0 34px}
.vtFoot p{font-size:14px;color:#8b98a6;margin:0 0 9px}
.vtFootLinks{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:12px}
.vtFootLinks a{font-size:14px;color:var(--vt-platinum);text-decoration:none;border-bottom:1px solid var(--vt-line2)}
.vtFp{font-family:ui-monospace,Consolas,monospace;font-size:12px;color:#6d7b89;word-break:break-all}

/* ---------- responsive ---------- */
@media (max-width:980px){
  .vtHeroGrid{grid-template-columns:1fr;gap:22px}
  .vtDoorCase{max-width:330px}
  .vtWall{grid-template-columns:repeat(2,1fr)}
  .vtDesk{grid-template-columns:repeat(2,1fr)}
  h1{font-size:33px}
}
@media (max-width:640px){
  body{font-size:16.5px}
  .vtWrap{padding:0 13px}
  .vtTopIn{padding:9px 13px;gap:9px}
  .vtWord{font-size:19px}
  .vtWordSub{letter-spacing:.16em}
  .vtKey{padding:8px 13px;font-size:14px}
  .vtKeyBig{padding:13px 22px;font-size:16.5px}
  h1{font-size:26px}
  h2{font-size:22px}
  h3{font-size:18px}
  .vtBox{padding:30px 15px 22px}
  .vtPlate{left:13px}
  .vtSteps{grid-template-columns:1fr}
  .vtWall{grid-template-columns:1fr}
  .vtDesk{grid-template-columns:1fr}
  .vtGauge{grid-template-columns:1fr}
  .vtRail i{height:11px}
  .w1{width:52%}.w2{width:62%}.w3{width:71%}.w4{width:80%}.w5{width:90%}.w6{width:100%}
  .vtBolt{font-size:14px;padding:0 9px;height:36px}
  .vtBoltPts{display:none}
  .vtBoltCb{font-size:18px}
}
