/* Venti Red components. Every value comes from tokens.css; no raw colours here. */
.vr-root{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}
.vr-root *{box-sizing:border-box}
.vr-focus:focus-visible,.vr-btn:focus-visible,.vr-input:focus-visible,.vr-nav a:focus-visible{outline:2px solid var(--red);outline-offset:2px}

/* Logo: unchanged live wordmark */
.vr-logo{display:inline-block;font-family:var(--font-logo);font-size:22px;font-weight:700;letter-spacing:-0.02em;line-height:1.2;color:var(--logo-white);text-decoration:none;white-space:nowrap}
.vr-logo span{color:var(--logo-red)}

/* Buttons */
.vr-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-sans);font-size:14px;font-weight:600;line-height:1;padding:13px 22px;border-radius:var(--radius-md);border:1px solid transparent;text-decoration:none;cursor:pointer;transition:transform .15s ease,filter .15s ease,box-shadow .15s ease,border-color .15s ease,background-color .15s ease;white-space:normal;text-align:center}
.vr-btn svg{width:16px;height:16px;stroke-width:var(--icon-stroke)}
.vr-btn-primary{background:var(--red);color:var(--on-red)}
.vr-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.08);box-shadow:var(--shadow-red)}
.vr-btn-secondary{background:transparent;color:var(--text);border-color:var(--line-strong)}
.vr-btn-secondary:hover{border-color:var(--text-3);background:var(--surface-1)}
.vr-btn-link{padding:0;background:none;color:var(--red-text);border:0;border-radius:0}
.vr-btn-link:hover{color:var(--text)}
.vr-btn[disabled],.vr-btn[aria-disabled="true"]{opacity:.45;pointer-events:none}

/* Eyebrow: mono label with a red dot and halo */
.vr-eyebrow{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:12px;font-weight:500;line-height:1.4;color:var(--text-2)}
.vr-eyebrow::before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--red);box-shadow:0 0 0 4px var(--red-soft)}

/* Headlines: one emphasised phrase in red, upright */
.vr-headline{color:var(--text);margin:0;text-wrap:balance}
.vr-headline em{font-style:normal;color:var(--red)}

/* Tags and status pills */
.vr-tag{display:inline-flex;align-items:center;gap:var(--space-1);font-family:var(--font-mono);font-size:11.5px;font-weight:500;line-height:1;padding:5px 9px;border-radius:var(--radius-sm);background:var(--red-soft);color:var(--red-text);border:1px solid var(--red-border)}
.vr-status{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:11.5px;font-weight:500;line-height:1;padding:5px 10px;border-radius:var(--radius-pill);background:var(--surface-2);color:var(--success)}
.vr-status::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.vr-status.is-pending{color:var(--warning)}

/* Icon tile: Lucide, stroke 1.5 */
.vr-icon-tile{display:grid;place-items:center;width:46px;height:46px;border-radius:var(--radius-md);background:var(--surface-2);color:var(--text)}
.vr-icon-tile svg{width:22px;height:22px;stroke-width:var(--icon-stroke)}
.vr-icon-tile.is-accent{color:var(--red)}

/* Engagement card */
.vr-card{display:flex;flex-direction:column;gap:var(--space-3);min-width:0;background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-6)}
.vr-card.is-featured{border-color:var(--red-border)}
.vr-card-kicker{font-family:var(--font-mono);font-size:12px;font-weight:500;color:var(--text-3)}
.vr-card-title{font-family:var(--font-sans);font-size:21px;font-weight:600;line-height:1.15;letter-spacing:-0.03em;color:var(--text);margin:0}
.vr-card-text{margin:0;font-size:14px;line-height:1.6;color:var(--text-2)}
.vr-card-list{margin:0;padding:0;list-style:none;display:grid;gap:6px;font-size:13.5px;line-height:1.55;color:var(--text-2)}
.vr-card-list li{position:relative;padding-left:16px}
.vr-card-list li::before{content:"";position:absolute;left:0;top:.72em;width:8px;height:1px;background:var(--red)}
.vr-card-foot{margin-top:auto;display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);padding-top:14px;border-top:1px solid var(--line)}
.vr-card-price{font-family:var(--font-mono);font-size:19px;font-weight:500;color:var(--text)}
.vr-card-note{font-family:var(--font-mono);font-size:12px;color:var(--text-3)}
.vr-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}
@media (max-width:900px){.vr-card-grid{grid-template-columns:minmax(0,1fr)}}

/* Stat strip */
.vr-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--surface-1);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.vr-stat{padding:22px 20px 24px;border-left:1px solid var(--line);min-width:0}
.vr-stat:first-child{border-left:0}
.vr-stat-num{font-family:var(--font-sans);font-size:42px;font-weight:600;line-height:1.05;letter-spacing:-0.05em;color:var(--text);font-variant-numeric:tabular-nums}
.vr-stat-cap{margin-top:4px;font-family:var(--font-mono);font-size:12px;color:var(--text-3)}
@media (max-width:700px){.vr-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.vr-stat{border-left:0}.vr-stat-num{font-size:32px}}

/* Data panel: rows of named figures */
.vr-panel{background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-5)}
.vr-panel-label{font-family:var(--font-mono);font-size:12px;color:var(--text-3);margin-bottom:var(--space-1)}
.vr-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:10px 0;border-top:1px solid var(--line);font-size:13.5px;color:var(--text-2)}
.vr-row:first-of-type{border-top:0}
.vr-row b{font-family:var(--font-mono);font-weight:500;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}

/* Inputs */
.vr-field{display:grid;gap:6px}
.vr-field label{font-family:var(--font-mono);font-size:12px;color:var(--text-2)}
.vr-input{width:100%;font-family:var(--font-sans);font-size:14px;line-height:1.5;color:var(--text);background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--radius-md);padding:11px 14px}
.vr-input::placeholder{color:var(--text-3)}
.vr-input:focus{outline:none;border-color:var(--red-border)}
.vr-field-error{font-size:12.5px;color:var(--red-text)}

/* Nav bar */
.vr-nav{display:flex;align-items:center;gap:var(--space-6);height:var(--nav-height);padding:0 var(--space-14);background:var(--bg);border-bottom:1px solid var(--line)}
.vr-nav-links{display:flex;gap:var(--space-5);flex:1;flex-wrap:wrap}
.vr-nav-links a{font-size:13.5px;font-weight:500;color:var(--text-2);text-decoration:none;padding:6px 0}
.vr-nav-links a:hover,.vr-nav-links a[aria-current="page"]{color:var(--text)}
@media (max-width:900px){.vr-nav{padding:0 var(--space-4)}.vr-nav-links{display:none}}

/* Hero: the only textured block */
.vr-hero{position:relative;padding:var(--space-18) var(--space-14);background-color:var(--bg);background-image:radial-gradient(60% 90% at 85% 0%,var(--red-glow),transparent 60%)}
.vr-hero .vr-lead{max-width:52ch;margin:18px 0 0;font-size:17px;line-height:1.65;color:var(--text-2)}
.vr-hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:28px}
@media (max-width:900px){.vr-hero{padding:var(--space-10) var(--space-4)}}

/* Section */
.vr-section{padding:var(--space-18) var(--space-14)}
.vr-section.is-alt{background:var(--surface-1);border-top:1px solid var(--line)}
@media (max-width:900px){.vr-section{padding:var(--space-10) var(--space-4)}}
