/* Venti Red design system skin (E4 Geist), loaded LAST on every page.
   Maps the old site's classes onto the design system so all pages match the new homepage.
   Uses var(--red) for accents so sub brand pages (body.vr-sub: Parteloa, Z358 One, VR Coaching) keep their own accent colour. */

/* ---------- tokens that differ from the old site ---------- */
body:not(.vr-sub){--text-3:rgba(238,237,234,0.55);--accent-text:#ff3b4e}
body.vr-sub{--accent-text:var(--red)}

/* ---------- type ---------- */
html,body,button,input,textarea,select{font-family:var(--font-sans)}
body{-webkit-font-smoothing:antialiased}
.ph-h1,.h2,.section-h2,.hero-h1,.cta-h2,.prose h2,.prose h3,.app-name,.product-title,.intel-name,.info-title,.feat-title,.step-title,.faq-q,.mkt-card h3,.blog-title{font-family:var(--font-sans)!important;font-weight:600!important;letter-spacing:-0.035em!important}
.ph-h1{letter-spacing:-0.045em!important;line-height:1!important}
.ph-h1 em,.h2 em,.section-h2 em,.hero-h1 em,.cta-h2 em,.prose h2 em,.prose h3 em{font-style:normal!important;color:var(--red)!important}
.prose em{font-style:normal;color:inherit;font-weight:500}
.prose h2{font-size:26px!important}
.stat-val,.track-num,.product-price,.cta-card-price{font-family:var(--font-sans)!important;font-weight:600!important;letter-spacing:-0.05em!important;font-variant-numeric:tabular-nums}
.stat-val em,.track-num em{font-style:normal}

/* ---------- labels: mono, sentence case, no uppercase ---------- */
.eyebrow,.ph-eyebrow,.section-eyebrow{font-family:var(--font-mono)!important;font-size:12px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;color:var(--text-2)!important;gap:10px}
.eyebrow::before,.ph-eyebrow::before,.section-eyebrow::before{width:6px!important;height:6px!important;border-radius:50%;background:var(--red)!important;box-shadow:0 0 0 4px rgba(232,25,44,0.16);flex:none}
body.vr-sub .eyebrow::before,body.vr-sub .ph-eyebrow::before,body.vr-sub .section-eyebrow::before{box-shadow:none}
.drop-label,.app-tag,.product-tag,.intel-tag,.chip,.blog-cat,.stat-lbl,.track-co,.proof-result,.cta-card-tier,.tl-label,.logos-label,.pip-tag,.hero-card-title,.comp-table th,.footer-col h5,.step-num,.ph-crumb{font-family:var(--font-mono)!important;text-transform:none!important;letter-spacing:0!important}
.drop-label{font-size:11px!important;font-weight:500!important;color:var(--accent-text)!important}
.stat-lbl,.track-co,.cta-card-tier,.logos-label,.hero-card-title,.tl-label{font-size:12px!important;font-weight:500!important;color:var(--text-3)!important}
.blog-cat,.proof-result{font-size:12px!important;font-weight:500!important;color:var(--accent-text)!important}
.footer-col h5{font-size:12px!important;font-weight:500!important;color:var(--text-2)!important}
.step-num{font-weight:500!important}
.ph-crumb{font-size:12px!important}
.app-tag,.product-tag,.intel-tag{font-size:11.5px!important;font-weight:500!important;border-radius:6px!important}
.chip{font-size:12px!important;font-weight:500!important;border-radius:6px!important}

/* ---------- page header: soft red glow, no grid ---------- */
.ph-grid{display:none!important}
.ph-bg{background:radial-gradient(60% 90% at 85% 0%,rgba(232,25,44,0.14),transparent 60%)!important}
body.vr-sub .ph-bg{background:radial-gradient(60% 90% at 85% 0%,color-mix(in srgb,var(--red) 16%,transparent),transparent 60%)!important}

/* ---------- buttons ---------- */
.btn-primary,.btn-secondary,.nav-cta,.nav-login,.product-cta{font-family:var(--font-sans)!important;font-weight:600!important;border-radius:8px!important}
.btn-primary{padding:13px 22px!important}
.btn-secondary{padding:12px 22px!important;border-color:rgba(255,255,255,0.20)!important}
.btn-secondary:hover{border-color:var(--text-3)!important;background:var(--surface-1,#131315)!important}

/* ---------- cards and panels: 8px corners, hairlines, no left bars ---------- */
.info-card,.sticky-card,.app-card,.product-card,.intel-card,.proof-card,.blog-card,.who-card,.mkt-card,.step,.faq-item,.cta-strip,.cta-card,.hero-card,.feat-icon,.pullquote{border-radius:8px!important}
.feat-icon{border-radius:8px!important}
.prose blockquote{border-radius:0!important;font-family:var(--font-sans);letter-spacing:-0.01em}
.video-container{border-radius:12px!important}

/* ---------- nav ---------- */
#nav{background:rgba(11,11,12,0.90)}
.nav-link{font-family:var(--font-sans);font-weight:500}
.drop-menu{border-radius:8px!important;background:var(--surface-2,#1b1b1e)!important;box-shadow:0 24px 64px rgba(0,0,0,0.55)}
.drop-item{font-family:var(--font-sans);border-radius:6px!important}
.mob-link{font-family:var(--font-sans);font-weight:600;letter-spacing:-0.02em}
.mob-sub{font-family:var(--font-sans)}
.nav-logo a,.footer-brand a[style*="Poppins"]{font-family:Poppins,sans-serif!important}

/* ---------- footer ---------- */
footer{font-family:var(--font-sans)}
.footer-brand p,.footer-links a,.footer-contact a,.footer-copy,.footer-legal a{color:var(--text-3)}
.footer-links a:hover,.footer-contact a:hover{color:var(--text)!important}

/* ---------- focus ---------- */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--red);outline-offset:2px}
