:root {
 --vp-ink1:#0E1B25;
 --vp-ink2:#13212F;
 --vp-ink3:#1A2E3E;
 --vp-ink4:#22394D;
 --vp-paper:#F4EFE4;
 --vp-paper2:#E8DEC4;
 --vp-muted:#B8A99A;
 --vp-muted2:#7A6E66;
 --vp-accent:#B4311C;
 --vp-warm:#C9A84C;
 --vp-line:rgba(255,255,255,.09);
 --vp-line2:rgba(232,222,196,.18);
 --vp-font:-apple-system,BlinkMacSystemFont,"SF Pro Text",system-ui,sans-serif;
 --vp-serif:Georgia,"Times New Roman",serif;
}
*,
*::before,
*::after { box-sizing:border-box; }
html { -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
body {
 margin:0;
 background:var(--vp-ink1);
 color:var(--vp-paper);
 font-family:var(--vp-font);
 line-height:1.65;
 -webkit-font-smoothing:antialiased;
}
a { color:var(--vp-paper2); text-decoration:none; }
a:hover { color:#fff; text-decoration:underline; }
.vp-wrap { overflow:hidden; }
.vp-hero {
 background:
  linear-gradient(135deg,rgba(14,27,37,.96),rgba(19,33,47,.92)),
  radial-gradient(circle at 20% 0%,rgba(180,49,28,.22),transparent 32%),
  radial-gradient(circle at 86% 16%,rgba(201,168,76,.16),transparent 30%);
 border-bottom:1px solid var(--vp-line);
 padding:82px 24px 62px;
 position:relative;
}
.vp-inner { width:min(1120px,100%); margin:0 auto; }
.vp-hero-grid {
 display:grid;
 grid-template-columns:minmax(0,1.12fr) 370px;
 gap:48px;
 align-items:start;
}
.vp-kicker {
 display:inline-flex;
 align-items:center;
 gap:8px;
 color:var(--vp-paper2);
 border:1px solid var(--vp-line2);
 border-radius:999px;
 padding:7px 12px;
 font-size:12px;
 font-weight:800;
 letter-spacing:.06em;
 text-transform:uppercase;
 background:rgba(232,222,196,.08);
}
.vp-dot {
 width:7px;
 height:7px;
 border-radius:999px;
 background:#4DA46A;
 box-shadow:0 0 0 4px rgba(77,164,106,.12);
}
.vp-hero h1 {
 font-family:var(--vp-serif);
 font-size:clamp(40px,6vw,68px);
 line-height:1;
 letter-spacing:0;
 margin:22px 0 18px;
 color:#fff;
 max-width:820px;
}
.vp-hero h1 em { color:var(--vp-paper2); font-style:italic; font-weight:400; }
.vp-sub {
 color:rgba(244,239,228,.76);
 font-size:18px;
 max-width:720px;
 margin:0 0 28px;
}
.vp-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.vp-btn {
 display:inline-flex;
 align-items:center;
 justify-content:center;
 min-height:46px;
 padding:0 18px;
 border-radius:8px;
 border:1px solid transparent;
 font-weight:800;
 font-size:14px;
 cursor:pointer;
 font-family:inherit;
 transition:transform .15s,background .15s,border-color .15s;
}
.vp-btn:hover { transform:translateY(-1px); text-decoration:none; }
.vp-btn-primary { background:var(--vp-paper2); color:var(--vp-ink1); }
.vp-btn-primary:hover { background:#fff; color:var(--vp-ink1); }
.vp-btn-ghost { border-color:var(--vp-line2); color:var(--vp-paper2); background:rgba(232,222,196,.04); }
.vp-btn-ghost:hover { background:rgba(232,222,196,.1); color:#fff; }
.vp-panel {
 background:rgba(19,33,47,.88);
 border:1px solid var(--vp-line2);
 border-radius:12px;
 padding:22px;
 box-shadow:0 22px 70px rgba(0,0,0,.28);
}
.vp-panel h2,
.vp-panel h3 { margin-top:0; }
.vp-mini-list {
 display:grid;
 gap:12px;
 margin-top:16px;
}
.vp-mini {
 display:flex;
 gap:10px;
 align-items:flex-start;
 color:var(--vp-muted);
 font-size:14px;
}
.vp-mini b { color:var(--vp-paper); }
.vp-tick {
 width:19px;
 height:19px;
 border-radius:6px;
 background:rgba(201,168,76,.16);
 color:var(--vp-paper2);
 display:inline-grid;
 place-items:center;
 flex:0 0 auto;
 font-size:12px;
 font-weight:900;
}
.vp-section {
 padding:64px 24px;
 background:var(--vp-ink1);
}
.vp-section.alt { background:var(--vp-ink2); border-block:1px solid var(--vp-line); }
.vp-head {
 display:flex;
 align-items:end;
 justify-content:space-between;
 gap:28px;
 margin-bottom:28px;
}
.vp-eyebrow {
 color:var(--vp-warm);
 font-size:12px;
 font-weight:900;
 letter-spacing:.07em;
 text-transform:uppercase;
 margin-bottom:8px;
}
.vp-section h2 {
 font-family:var(--vp-serif);
 font-size:clamp(28px,4vw,44px);
 line-height:1.08;
 color:#fff;
 margin:0;
 letter-spacing:0;
}
.vp-section h3 {
 font-family:var(--vp-serif);
 color:#fff;
 font-size:22px;
 line-height:1.18;
 margin:0 0 10px;
}
.vp-copy {
 color:var(--vp-muted);
 font-size:16px;
 max-width:660px;
 margin:0;
}
.vp-grid {
 display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));
 gap:16px;
}
.vp-card {
 border:1px solid var(--vp-line);
 background:rgba(255,255,255,.035);
 border-radius:10px;
 padding:22px;
 min-height:100%;
}
.vp-card p,
.vp-panel p,
.vp-check p,
.vp-faq p { color:var(--vp-muted); margin:0; }
.vp-card strong { color:var(--vp-paper2); }
.vp-two {
 display:grid;
 grid-template-columns:minmax(0,1fr) 360px;
 gap:24px;
 align-items:start;
}
.vp-checklist {
 display:grid;
 gap:10px;
 margin:0;
 padding:0;
 list-style:none;
}
.vp-check {
 display:grid;
 grid-template-columns:auto 1fr;
 gap:12px;
 align-items:start;
 border:1px solid var(--vp-line);
 background:rgba(255,255,255,.035);
 border-radius:10px;
 padding:15px;
}
.vp-check input {
 width:18px;
 height:18px;
 margin:4px 0 0;
 accent-color:var(--vp-accent);
}
.vp-check b { display:block; color:#fff; margin-bottom:2px; }
.vp-lead {
 position:sticky;
 top:76px;
 border:1px solid rgba(201,168,76,.28);
 background:linear-gradient(145deg,rgba(26,46,62,.98),rgba(19,33,47,.98));
 border-radius:12px;
 padding:22px;
 box-shadow:0 18px 55px rgba(0,0,0,.25);
}
.vp-lead h3 { margin-top:0; }
.vp-field { margin-bottom:12px; }
.vp-field label {
 display:block;
 color:var(--vp-muted2);
 font-size:11px;
 text-transform:uppercase;
 font-weight:900;
 letter-spacing:.06em;
 margin-bottom:6px;
}
.vp-field input,
.vp-field select,
.vp-field textarea {
 width:100%;
 border:1px solid var(--vp-line2);
 background:var(--vp-ink3);
 color:var(--vp-paper);
 border-radius:8px;
 min-height:44px;
 padding:10px 12px;
 font:inherit;
 outline:none;
}
.vp-field input:focus,
.vp-field select:focus,
.vp-field textarea:focus { border-color:var(--vp-paper2); background:var(--vp-ink4); }
.vp-field textarea { min-height:88px; resize:vertical; }
.vp-score {
 border:1px solid rgba(201,168,76,.28);
 background:linear-gradient(145deg,rgba(201,168,76,.12),rgba(26,46,62,.92));
 border-radius:12px;
 padding:20px;
 margin-top:18px;
}
.vp-score-top {
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:16px;
}
.vp-score-label {
 color:var(--vp-muted);
 font-size:13px;
 font-weight:800;
 text-transform:uppercase;
 letter-spacing:.06em;
}
.vp-score-value {
 font-family:var(--vp-serif);
 color:#fff;
 font-size:34px;
 line-height:1;
}
.vp-progress {
 height:9px;
 border-radius:999px;
 overflow:hidden;
 background:rgba(255,255,255,.1);
 margin-top:14px;
}
.vp-progress i {
 display:block;
 width:0%;
 height:100%;
 border-radius:inherit;
 background:var(--vp-paper2);
 transition:width .2s ease;
}
.vp-result {
 color:var(--vp-muted);
 font-size:14px;
 margin:12px 0 0;
}
.vp-tool-grid {
 display:grid;
 grid-template-columns:minmax(0,1fr) minmax(0,1fr);
 gap:12px;
}
.vp-resource {
 border:1px solid var(--vp-line);
 border-radius:10px;
 padding:18px;
 background:rgba(255,255,255,.035);
}
.vp-resource b {
 display:block;
 color:#fff;
 margin-bottom:4px;
}
.vp-resource span {
 color:var(--vp-muted);
 font-size:14px;
}
.vp-status {
 min-height:20px;
 color:var(--vp-muted);
 font-size:13px;
 margin-top:10px;
}
.vp-note {
 color:var(--vp-muted2);
 font-size:12px;
 line-height:1.55;
 margin-top:12px;
}
.vp-table {
 width:100%;
 border-collapse:collapse;
 border:1px solid var(--vp-line);
 border-radius:10px;
 overflow:hidden;
 background:rgba(255,255,255,.035);
}
.vp-table th,
.vp-table td {
 padding:14px 16px;
 text-align:left;
 border-bottom:1px solid var(--vp-line);
 vertical-align:top;
}
.vp-table th {
 color:var(--vp-paper2);
 font-size:12px;
 text-transform:uppercase;
 letter-spacing:.06em;
 background:rgba(232,222,196,.05);
}
.vp-table td { color:var(--vp-muted); font-size:14px; }
.vp-table tr:last-child td { border-bottom:0; }
.vp-faq {
 border-top:1px solid var(--vp-line);
}
.vp-faq-item {
 border-bottom:1px solid var(--vp-line);
}
.vp-faq-q {
 width:100%;
 border:0;
 background:transparent;
 color:#fff;
 padding:18px 0;
 display:flex;
 justify-content:space-between;
 gap:20px;
 text-align:left;
 cursor:pointer;
 font:inherit;
 font-weight:800;
}
.vp-faq-q span:last-child { color:var(--vp-paper2); }
.vp-faq-a {
 display:none;
 padding:0 0 18px;
 color:var(--vp-muted);
}
.vp-faq-item.open .vp-faq-a { display:block; }
.vp-disclaimer {
 border-top:1px solid var(--vp-line);
 color:var(--vp-muted2);
 font-size:12px;
 line-height:1.7;
 padding:22px 24px 0;
 max-width:1120px;
 margin:0 auto;
}
@media(max-width:900px) {
 .vp-hero-grid,
 .vp-two { grid-template-columns:1fr; }
 .vp-panel,
 .vp-lead { position:static; }
 .vp-grid { grid-template-columns:1fr; }
 .vp-tool-grid { grid-template-columns:1fr; }
 .vp-head { display:block; }
 .vp-head .vp-copy { margin-top:12px; }
}
@media(max-width:560px) {
 .vp-hero { padding:62px 18px 44px; }
 .vp-section { padding:46px 18px; }
 .vp-actions .vp-btn { width:100%; }
 .vp-table { display:block; overflow-x:auto; }
}
@media print {
 .nav,
 .site-footer,
 .vp-actions,
 .vp-lead { display:none!important; }
 body { background:#fff; color:#111; }
 .vp-section,
 .vp-section.alt,
 .vp-hero { background:#fff; color:#111; border:0; padding:24px; }
 .vp-hero h1,
 .vp-section h2,
 .vp-section h3,
 .vp-check b { color:#111; }
 .vp-card,
 .vp-check,
 .vp-panel { border:1px solid #ddd; background:#fff; box-shadow:none; }
 .vp-card p,
 .vp-panel p,
 .vp-check p { color:#333; }
}
