@import url('https://fonts.googleapis.com/css2?family=Onest:wght@400;500;600;700&display=swap');

body.vyra-public-mode { margin: 0; background: #080907; color: #f2eee8; font-family: Onest, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
body.vyra-public-mode #root { display: none !important; }

#vyra-public-promo {
  --vp-bg: #080907; --vp-panel: #10110f; --vp-line: rgba(255, 255, 255, .11);
  --vp-text: #f2eee8; --vp-muted: #98948c; --vp-gold: #e8c496;
  min-height: 100svh;
  background: radial-gradient(circle at 78% 6%, rgba(177, 111, 55, .12), transparent 24rem), var(--vp-bg);
  overflow: hidden;
}
#vyra-public-promo * { box-sizing: border-box; }
#vyra-public-promo a { color: inherit; text-decoration: none; }
#vyra-public-promo a:focus-visible { outline: 2px solid var(--vp-gold); outline-offset: 4px; }
#vyra-public-promo svg { display: block; }
.vp-shell { width: min(1040px, calc(100% - 40px)); margin-inline: auto; }

.vp-header { height: 74px; display: flex; align-items: center; justify-content: space-between; position: relative; z-index: 10; }
.vp-logo { padding-left: .42em; font-size: 19px; font-weight: 500; letter-spacing: .42em; }
.vp-header-action { min-height: 39px; padding: 0 14px 0 16px; border: 1px solid rgba(232, 196, 150, .34); border-radius: 13px; display: inline-flex; align-items: center; gap: 10px; color: #dfd7cc !important; font-size: 11px; font-weight: 600; transition: border-color .2s ease, background .2s ease; }
.vp-header-action:hover { border-color: rgba(232, 196, 150, .7); background: rgba(232, 196, 150, .06); }
.vp-header-action svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }

.vp-hero { min-height: 620px; border: 1px solid var(--vp-line); border-radius: 30px; position: relative; overflow: hidden; opacity: 0; transform: translateY(12px); transition: opacity .7s ease, transform .7s cubic-bezier(.2, .75, .2, 1); }
.vp-ready .vp-hero { opacity: 1; transform: none; }
.vp-hero-media, .vp-hero-shade { position: absolute; inset: 0; }
.vp-hero-media img { width: 100%; height: 100%; object-fit: cover; object-position: 68% 26%; display: block; filter: saturate(.82) contrast(1.025); }
.vp-hero-shade { background: linear-gradient(90deg, rgba(4, 5, 4, .94) 0%, rgba(4, 5, 4, .72) 38%, rgba(4, 5, 4, .05) 74%), linear-gradient(0deg, rgba(5, 6, 5, .88) 0%, transparent 47%); }
.vp-face-map { width: 43%; height: 76%; position: absolute; top: 7%; right: 4%; overflow: visible; }
.vp-map-lines { fill: none; stroke: rgba(243, 210, 170, .72); stroke-width: 1.25; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 0 5px rgba(220, 161, 96, .48)); }
.vp-map-lines path { stroke-dasharray: 1; stroke-dashoffset: 1; animation: vp-draw 1.2s .42s cubic-bezier(.2, .75, .2, 1) forwards; }
.vp-map-points circle { fill: #f5ddbd; stroke: #5f4028; stroke-width: 2; opacity: 0; transform-box: fill-box; transform-origin: center; animation: vp-point .4s cubic-bezier(.2, .85, .2, 1.25) forwards; }
.vp-map-points circle:nth-child(1) { animation-delay: .48s; }.vp-map-points circle:nth-child(2) { animation-delay: .59s; }
.vp-map-points circle:nth-child(3) { animation-delay: .7s; }.vp-map-points circle:nth-child(4) { animation-delay: .81s; }
.vp-map-points circle:nth-child(5) { animation-delay: .92s; }.vp-map-points circle:nth-child(6) { animation-delay: 1.03s; }.vp-map-points circle:nth-child(7) { animation-delay: 1.14s; }
.vp-hero-copy { width: min(520px, 56%); padding: 112px 0 48px 54px; position: relative; z-index: 2; }
.vp-eyebrow, .vp-section-copy > span, .vp-service-copy > span, .vp-pricing-head span { color: #b79570; text-transform: uppercase; letter-spacing: .17em; font-size: 9px; font-weight: 700; }
.vp-hero h1 { margin: 17px 0 20px; font-size: clamp(54px, 6vw, 78px); font-weight: 600; letter-spacing: -.065em; line-height: .98; }
.vp-hero h1 em { color: var(--vp-gold); font-style: normal; }
.vp-hero-copy > p { max-width: 420px; margin: 0 0 26px; color: #b5b0a8; font-size: 15px; line-height: 1.6; }
.vp-cta { width: fit-content; min-height: 57px; padding: 0 17px; border: 1px solid #ebcda7; border-radius: 17px; background: linear-gradient(135deg, #efd4ae, #dbae7d); color: #211910 !important; display: inline-flex; align-items: center; gap: 13px; font-size: 13px; font-weight: 700; box-shadow: 0 13px 35px rgba(166, 104, 51, .14); transition: transform .2s ease, filter .2s ease; }
.vp-cta:hover { filter: brightness(1.05); transform: translateY(-2px); }.vp-cta:active { transform: scale(.985); }
.vp-cta svg { width: 19px; height: 19px; }.vp-cta svg:first-child { fill: currentColor; }
.vp-cta svg:last-child { margin-left: 7px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.vp-hero-copy > small { display: block; margin-top: 17px; color: #7e7b75; font-size: 9px; }

.vp-proof, .vp-service, .vp-pricing, .vp-final { padding-block: 84px; }
.vp-proof { display: grid; grid-template-columns: .76fr 1.24fr; align-items: center; gap: 54px; }
.vp-section-copy h2, .vp-service h2, .vp-pricing h2, .vp-final h2 { margin: 13px 0 15px; font-size: clamp(31px, 4.3vw, 49px); letter-spacing: -.052em; line-height: 1.04; }
.vp-section-copy p, .vp-service-copy p { color: var(--vp-muted); font-size: 13px; line-height: 1.65; }
.vp-metric-card { padding: 25px; border: 1px solid #3a332b; border-radius: 24px; background: radial-gradient(circle at 100% 0, rgba(155, 103, 55, .14), transparent 38%), var(--vp-panel); box-shadow: 0 28px 60px rgba(0, 0, 0, .24); }
.vp-metric-head { display: flex; justify-content: space-between; color: #a88a68; text-transform: uppercase; letter-spacing: .13em; font-size: 8px; }.vp-metric-head small { color: #6e6c66; }
.vp-metric-card h3 { margin: 19px 0 18px; font-size: 25px; letter-spacing: -.035em; }
.vp-metric-values { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--vp-line); border-radius: 16px; overflow: hidden; }
.vp-metric-values div { min-height: 76px; padding: 15px 12px; display: flex; flex-direction: column; justify-content: center; gap: 7px; }.vp-metric-values div + div { border-left: 1px solid var(--vp-line); }
.vp-metric-values b { font-size: 17px; font-weight: 600; white-space: nowrap; }.vp-metric-values span { color: #77756f; font-size: 8px; }.vp-metric-values .vp-score { color: #91d2a1; font-size: 24px; }
.vp-scale { height: 6px; margin: 29px 3px 16px; border-radius: 99px; background: linear-gradient(90deg, #bf5d52, #e3bd7e 48%, #58aa7d); position: relative; }
.vp-scale i { width: 20%; height: 12px; border: 1px solid rgba(239, 211, 174, .6); border-radius: 99px; position: absolute; top: 50%; left: 45%; transform: translateY(-50%); }
.vp-scale b { width: 15px; height: 15px; border: 3px solid #f1d4ad; border-radius: 50%; background: #e8bd85; position: absolute; top: 50%; left: 62%; transform: translate(-50%, -50%); box-shadow: 0 0 0 4px rgba(232, 189, 133, .14); }
.vp-metric-card > p { margin: 0; color: #918d85; font-size: 10px; line-height: 1.55; }

.vp-service { border-top: 1px solid var(--vp-line); border-bottom: 1px solid var(--vp-line); display: grid; grid-template-columns: 1.15fr .85fr; gap: 70px; align-items: end; }
.vp-service-copy p { max-width: 600px; }.vp-process { border: 1px solid var(--vp-line); border-radius: 20px; background: var(--vp-panel); overflow: hidden; }
.vp-process div { min-height: 62px; padding: 0 17px; display: flex; align-items: center; gap: 15px; }.vp-process div + div { border-top: 1px solid var(--vp-line); }
.vp-process b { color: #a58663; font-size: 10px; }.vp-process span { font-size: 12px; font-weight: 600; }

.vp-pricing-head { display: flex; justify-content: space-between; align-items: end; }.vp-pricing-head h2 { margin-bottom: 0; }
.vp-pricing-head > a { width: 46px; height: 46px; border: 1px solid rgba(232, 196, 150, .34); border-radius: 50%; display: grid; place-items: center; }
.vp-pricing-head svg { width: 18px; fill: none; stroke: var(--vp-gold); stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.vp-plans { margin-top: 30px; border: 1px solid var(--vp-line); border-radius: 22px; display: grid; grid-template-columns: repeat(4, 1fr); overflow: hidden; background: var(--vp-panel); }
.vp-plans div { min-height: 92px; padding: 18px; display: flex; flex-direction: column; justify-content: space-between; gap: 14px; }.vp-plans div + div { border-left: 1px solid var(--vp-line); }
.vp-plans span { color: #9b978f; font-size: 10px; }.vp-plans b { color: #e9c89d; font-size: 21px; font-weight: 600; }.vp-pricing > small { display: block; margin: 13px 2px 0; color: #6f6d67; font-size: 9px; }

.vp-final { border-top: 1px solid var(--vp-line); display: flex; align-items: center; justify-content: space-between; gap: 28px; }.vp-final > div > span { color: #a88a68; letter-spacing: .42em; font-size: 12px; }.vp-final h2 { margin-bottom: 0; }.vp-cta-compact { flex: none; min-height: 54px; }
.vp-footer { padding: 24px 0 calc(30px + env(safe-area-inset-bottom, 0px)); border-top: 1px solid var(--vp-line); }
.vp-footer nav { display: flex; justify-content: center; align-items: center; gap: 12px 27px; flex-wrap: wrap; }.vp-footer nav a { color: #96928b !important; font-size: 10px; transition: color .2s ease; }.vp-footer nav a:hover { color: #e7c99f !important; }
.vp-reveal { opacity: 0; transform: translateY(18px); transition: opacity .65s ease, transform .65s cubic-bezier(.2, .75, .2, 1); }.vp-reveal.vp-visible { opacity: 1; transform: none; }

@keyframes vp-draw { to { stroke-dashoffset: 0; } }
@keyframes vp-point { from { opacity: 0; transform: scale(.2); } to { opacity: 1; transform: scale(1); } }

@media (max-width: 700px) {
  .vp-shell { width: calc(100% - 28px); }.vp-header { height: 65px; }.vp-logo { font-size: 17px; }
  .vp-header-action { min-height: 37px; padding-inline: 13px; }.vp-hero { min-height: 590px; border-radius: 25px; }.vp-hero-media img { object-position: 58% 18%; }
  .vp-hero-shade { background: linear-gradient(0deg, rgba(5, 6, 5, .98) 0%, rgba(5, 6, 5, .84) 35%, rgba(5, 6, 5, .11) 76%), linear-gradient(90deg, rgba(5, 6, 5, .26), transparent 70%); }
  .vp-face-map { width: 70%; height: 63%; top: 0; right: 0; }.vp-hero-copy { width: 100%; padding: 295px 20px 23px; }
  .vp-hero h1 { margin: 13px 0 14px; font-size: clamp(43px, 13vw, 56px); }.vp-hero-copy > p { max-width: 330px; margin-bottom: 19px; font-size: 12px; line-height: 1.55; }
  .vp-cta { width: 100%; min-height: 53px; justify-content: center; padding-inline: 14px; font-size: 12px; }.vp-cta svg:last-child { margin-left: auto; }.vp-hero-copy > small { margin-top: 13px; font-size: 8px; line-height: 1.4; }
  .vp-proof, .vp-service, .vp-pricing, .vp-final { padding-block: 58px; }.vp-proof, .vp-service { grid-template-columns: 1fr; gap: 25px; }
  .vp-section-copy h2, .vp-service h2, .vp-pricing h2, .vp-final h2 { font-size: 31px; }.vp-section-copy p, .vp-service-copy p { margin-bottom: 0; font-size: 11px; }
  .vp-metric-card { margin-inline: -2px; padding: 18px; border-radius: 21px; }.vp-metric-card h3 { margin: 16px 0; font-size: 21px; }.vp-metric-values div { min-height: 69px; padding: 12px 8px; }
  .vp-metric-values b { font-size: clamp(12px, 3.8vw, 16px); }.vp-metric-values .vp-score { font-size: 21px; }.vp-service { gap: 22px; }.vp-process div { min-height: 56px; }
  .vp-plans { grid-template-columns: 1fr 1fr; border-radius: 19px; }.vp-plans div { min-height: 78px; padding: 14px; }.vp-plans div + div { border-left: 0; }.vp-plans div:nth-child(even) { border-left: 1px solid var(--vp-line); }.vp-plans div:nth-child(n + 3) { border-top: 1px solid var(--vp-line); }.vp-plans b { font-size: 19px; }
  .vp-final { display: grid; }.vp-final .vp-cta { width: 100%; }.vp-footer { padding-top: 21px; }.vp-footer nav { justify-content: flex-start; gap: 15px 22px; }.vp-footer nav a { font-size: 9px; }
}
@media (max-width: 360px) { .vp-header-action span { display: none; }.vp-header-action { width: 39px; padding: 0; justify-content: center; }.vp-hero-copy { padding-top: 282px; }.vp-hero h1 { font-size: 42px; } }
@media (prefers-reduced-motion: reduce) { .vp-hero, .vp-reveal { opacity: 1; transform: none; transition: none; }.vp-map-lines path, .vp-map-points circle { animation: none; opacity: 1; stroke-dashoffset: 0; }.vp-cta, .vp-header-action { transition: none; } }

.legal-document-footer small:empty { display: none !important; }

/* Promo refinement: sharp source image and the product itself, not decorative HUD. */
.vp-face-map{display:none!important}.vp-hero-media{background:radial-gradient(circle at 60% 27%,rgba(157,96,45,.22),transparent 38%)}.vp-hero-media img{object-fit:contain;object-position:72% 8%;filter:drop-shadow(0 24px 50px rgba(183,112,50,.18))}
.vp-report-preview{padding:0;overflow:hidden}.vp-report-preview .vp-metric-head{height:52px;padding:0 18px;align-items:center;border-bottom:1px solid var(--vp-line)}
.vp-preview-row{min-height:79px;padding:13px 14px 12px 18px;display:grid;grid-template-columns:minmax(0,1fr) 38px 16px;align-items:center;gap:10px}.vp-preview-row+.vp-preview-row{border-top:1px solid var(--vp-line)}.vp-preview-row>span{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center}.vp-preview-row b{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vp-preview-row small{padding:4px 7px;border:1px solid #393732;border-radius:999px;color:#96918a;font-size:8px;white-space:nowrap}.vp-preview-row i{grid-column:1/-1;height:3px;border-radius:99px;background:#252622;overflow:hidden}.vp-preview-row i em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#b86757,#ddbb81 56%,#72b18e)}.vp-preview-row>strong{color:#e9c598;font-size:17px}.vp-preview-row>svg{width:15px;height:15px;fill:none;stroke:#666761;stroke-width:1.7}
@media(max-width:700px){.vp-header{height:58px}.vp-hero{min-height:520px;border-radius:23px}.vp-hero-media{height:58%}.vp-hero-media img{width:92%;margin-left:auto;object-position:88% 0}.vp-hero-shade{background:linear-gradient(180deg,transparent 28%,rgba(7,8,7,.2) 50%,#080907 98%)}.vp-hero-copy{padding:245px 18px 19px}.vp-hero h1{font-size:42px;margin:10px 0 12px}.vp-hero-copy>p{font-size:11px;line-height:1.48;margin-bottom:16px}.vp-cta{min-height:50px;border-radius:15px}.vp-proof,.vp-service,.vp-pricing,.vp-final{padding-block:45px}.vp-section-copy h2,.vp-service h2,.vp-pricing h2,.vp-final h2{font-size:28px}.vp-metric-card{padding:0}.vp-preview-row{min-height:72px}.vp-footer nav{display:grid;grid-template-columns:1fr 1fr;gap:13px 18px}.vp-footer nav a{line-height:1.35}}

