
/* 4P3X SafeSpark™ investor-ready public presentation layer */
:root{
  --ss-page:min(1240px,94vw);--ss-section:clamp(1rem,2.4vw,1.8rem);--ss-radius:24px;
  --ss-border:rgba(255,255,255,.13);--ss-panel:rgba(255,255,255,.055);
  --ss-green:var(--ss-primary-border);--ss-purple:var(--ss-primary);--ss-gold:var(--ss-primary-border);--ss-text:#f7f7f7;--ss-muted:#cfcfcf;
}
html{scroll-behavior:smooth;overflow-x:hidden}body{overflow-x:hidden}
.publicTopbar,.investorPublicMain,.publicFooter{width:var(--ss-page);margin-inline:auto}
.publicTopbar{position:relative;z-index:80}
.investorPublicMain{padding-bottom:2rem}
.investorPublicMain>*{min-width:0}
.breadcrumbs{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin:.9rem 0;color:var(--ss-muted);font-size:.88rem}
.breadcrumbs a{color:#dfe9ff;text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}
.investorHero{margin-top:.5rem;align-items:stretch}.investorHero .roleHeroCard{display:flex;flex-direction:column;justify-content:center}
.publicHeroLogo{display:block;width:min(270px,65vw);height:auto;aspect-ratio:1/1;object-fit:contain;margin:auto}
.investorSection{margin:var(--ss-section) auto;padding:clamp(1.1rem,2.5vw,1.8rem);border:1px solid var(--ss-border);border-radius:var(--ss-radius);background:linear-gradient(155deg,rgba(28,28,28,.93),rgba(10,10,10,.93));box-shadow:0 18px 55px rgba(0,0,0,.3)}
.investorSection>h2,.investorSection .sectionTitle{margin-top:0}.investorSection p,.investorCard p{max-width:75ch}
.investorGrid{display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr))}.investorGrid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.investorGrid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.investorCard{min-width:0;border:1px solid var(--ss-border);border-radius:20px;background:var(--ss-panel);padding:1rem;display:flex;flex-direction:column;gap:.45rem}.investorCard h3{margin:.1rem 0}.investorCard .roleActions{margin-top:auto}
.heroCtas,.investorActions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}.heroCtas .roleButton,.investorActions .roleButton{min-height:48px}
.problemQuote{font-size:clamp(1.15rem,2.4vw,1.55rem);line-height:1.55;border-left:5px solid var(--ss-green);padding:1rem 1.1rem;background:rgba(var(--ss-primary-rgb), .08);border-radius:18px}
.roleFlow{display:flex;gap:.55rem;align-items:center;justify-content:center;flex-wrap:wrap;margin:1rem 0}.roleFlow span{border:1px solid var(--ss-border);border-radius:999px;padding:.65rem .85rem;background:rgba(255,255,255,.06);font-weight:800}.roleFlow strong{color:var(--ss-gold)}
.metricGrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem}.metricCard{border:1px solid var(--ss-border);border-radius:18px;padding:1rem;background:rgba(255,255,255,.05);text-align:center}.metricCard strong{display:block;font-size:clamp(1.8rem,4vw,3rem);color:#fff}.metricCard span{color:var(--ss-muted)}
.statusBand{display:grid;grid-template-columns:1.2fr .8fr;gap:1rem;align-items:center;border-color:rgba(var(--ss-primary-rgb), .32);background:linear-gradient(135deg,rgba(var(--ss-primary-rgb), .08),rgba(var(--ss-primary-rgb), .08))}
.fictionalNotice{border:1px solid rgba(var(--ss-primary-rgb), .4);background:rgba(var(--ss-primary-rgb), .08);border-radius:18px;padding:1rem}.fictionalNotice strong{color:var(--ss-primary-soft)}
.roleCardIcon{width:82px;height:82px;object-fit:contain;aspect-ratio:1/1}
.vexPortrait,.roleMascot,.takeHomeMascot,.standaloneMascot,.vexIntroCompact img{height:auto!important;aspect-ratio:2/3!important;object-fit:contain!important;max-width:100%}
.roleMascot{width:min(130px,32vw)!important}.roleMascot.small{width:82px!important}
.publicFooter{align-items:center}.publicFooter nav{display:flex;gap:.75rem;flex-wrap:wrap}.publicFooter a{color:#ddd;text-decoration:none}.publicFooter a:hover{text-decoration:underline}
.validationMethod{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.timelineList{display:grid;gap:.8rem}.timelineItem{display:grid;grid-template-columns:auto 1fr;gap:.8rem}.timelineItem strong{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--ss-purple),var(--ss-green))}
.contactForm{display:grid;gap:.85rem}.contactForm label{display:grid;gap:.35rem;font-weight:700}.contactForm input,.contactForm select,.contactForm textarea{width:100%;border:1px solid var(--ss-border);border-radius:14px;background:#111;color:#fff;padding:.85rem 1rem}.contactForm input:focus,.contactForm select:focus,.contactForm textarea:focus{outline:3px solid rgba(var(--ss-primary-rgb), .32);outline-offset:2px}.consentRow{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;gap:.65rem!important}.consentRow input{width:auto;margin-top:.25rem}.formStatus{min-height:1.5rem}.copyArea{white-space:pre-wrap;word-break:break-word;border:1px dashed var(--ss-border);border-radius:14px;padding:.85rem;background:rgba(255,255,255,.04)}
.trustList{display:grid;gap:.6rem;padding-left:1.2rem}.trustList li::marker{color:var(--ss-green)}
.commercialList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;list-style:none;padding:0}.commercialList li{border:1px solid var(--ss-border);border-radius:16px;padding:.8rem;background:rgba(255,255,255,.04)}
.roleChooserCard{position:relative}.roleChooserCard .roleButton{width:100%}.roleChooserCard img{width:86px;height:86px;object-fit:contain}
.pageAnchorNav{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.pageAnchorNav a{border:1px solid var(--ss-border);border-radius:999px;padding:.5rem .75rem;text-decoration:none;color:#fff;background:rgba(255,255,255,.05)}
.inlineLink{color:var(--ss-primary-soft)}.inlineLink:hover{text-decoration-thickness:2px}
.shortSpeechNotice{margin:1rem 0;padding:.85rem 1rem;border:1px solid var(--ss-border);border-radius:16px;background:rgba(255,255,255,.04)}
.legacyDemoNotice{border:1px solid rgba(var(--ss-primary-rgb), .4);background:rgba(var(--ss-primary-rgb), .08);border-radius:16px;padding:.85rem;margin-bottom:1rem}
.noHorizontalOverflow{min-width:0;max-width:100%}
img{max-width:100%}
:focus-visible{outline:3px solid var(--ss-gold)!important;outline-offset:3px!important}
@media(max-width:1050px){.investorGrid.four,.metricGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.investorGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.statusBand{grid-template-columns:1fr}}
@media(max-width:720px){
  :root{--ss-page:min(100% - 24px,1240px)}
  .publicTopbar{align-items:center!important;flex-direction:row!important}.publicTopbar .roleHamburgerWrap{width:auto!important;margin-left:auto;justify-content:flex-end!important}.publicTopbar .roleHamburgerMenu{right:0!important;left:auto!important}
  .investorGrid,.investorGrid.two,.investorGrid.four,.metricGrid,.validationMethod,.commercialList{grid-template-columns:1fr}
  .heroCtas,.investorActions{display:grid;grid-template-columns:1fr}.heroCtas .roleButton,.investorActions .roleButton{width:100%}
  .roleFlow{justify-content:flex-start}.roleFlow strong{display:none}.roleFlow span{width:100%;text-align:center}
  .publicFooter{width:var(--ss-page);padding-inline:0}.publicFooter nav{width:100%}
}
@media(max-width:360px){:root{--ss-page:min(100% - 18px,1240px)}.investorSection{padding:.9rem}.roleHeroCard,.rolePanel{padding:1rem}.roleCleanBrand strong{font-size:.9rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.roleHomeCard,.roleButton,.investorCard{transition:none!important;animation:none!important}}
@media print{.publicTopbar,.publicFooter,.breadcrumbs,.heroCtas,.investorActions{display:none!important}.investorSection,.investorCard{background:#fff!important;color:#000!important;box-shadow:none!important;border:1px solid #999!important}}

/* Guided demonstration: manual presentation controls and ten-step flow */
.demoSceneNavControls {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: .55rem;
}
.demoSceneNavControls .roleButton[disabled] {
  opacity: .45;
  cursor: not-allowed;
}
.demoRoleFlowNav {
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
  padding-bottom: .35rem;
}
.demoRoleFlowNav .demoFlowStep {
  min-width: 9rem;
  flex: 0 0 auto;
}
@media (max-width: 640px) {
  .demoSceneTopbar { align-items: flex-start; }
  .demoSceneNavControls { width: 100%; justify-content: stretch; }
  .demoSceneNavControls .roleButton { flex: 1 1 5.5rem; }
  .demoRoleFlowNav .demoFlowStep { min-width: 8rem; }
}

/* Branded validation and pilot-readiness additions */
.evidenceLeadSection{border-color:rgba(var(--ss-primary-rgb), .38);background:linear-gradient(145deg,rgba(var(--ss-primary-rgb), .09),rgba(var(--ss-primary-rgb), .08),rgba(10,10,10,.96))}
.evidenceQuickStats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1rem 0}
.evidenceQuickStats span{display:flex;flex-direction:column;gap:.15rem;min-width:0;padding:.9rem;border:1px solid var(--ss-border);border-radius:16px;background:rgba(255,255,255,.05)}
.evidenceQuickStats strong{font-size:clamp(1.35rem,3vw,2rem);color:#fff}
.evidenceMetrics{grid-template-columns:repeat(4,minmax(0,1fr))}
.trialQrPanel{display:grid;grid-template-columns:minmax(140px,220px) 1fr;gap:1rem;align-items:center;margin-top:1rem;padding:1rem;border:1px solid var(--ss-border);border-radius:18px;background:rgba(255,255,255,.04)}
.trialQrPanel img{display:block;width:min(220px,55vw);height:auto;aspect-ratio:1/1;object-fit:contain;background:#fff;padding:.5rem;border-radius:12px}
@media(max-width:720px){.evidenceQuickStats,.evidenceMetrics{grid-template-columns:1fr}.trialQrPanel{grid-template-columns:1fr}.trialQrPanel img{margin-inline:auto}}


/* How SafeSpark™ Works — expanded approved flow, offline capability and VexSpark™ guided lessons */
.connectedFlowSection .sectionLead,.capabilitySpotlight .sectionLead{max-width:78ch}
.roleFlowExpanded{margin-bottom:.75rem}
.takeHomeFlow{display:flex;gap:.55rem;align-items:center;justify-content:center;flex-wrap:wrap;margin:.25rem 0 1.15rem;padding:.8rem;border:1px dashed rgba(var(--ss-primary-rgb), .38);border-radius:18px;background:rgba(var(--ss-primary-rgb), .055)}
.takeHomeFlow span{border:1px solid rgba(var(--ss-primary-rgb), .3);border-radius:999px;padding:.65rem .85rem;background:rgba(255,255,255,.055);font-weight:800;text-align:center}
.takeHomeFlow strong{color:var(--ss-green)}
.capabilitySpotlight{position:relative;overflow:hidden}
.capabilitySpotlight::before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:4px;background:linear-gradient(90deg,var(--ss-green),var(--ss-gold),var(--ss-purple));opacity:.9}
.offlineCapabilitySection{border-color:rgba(var(--ss-primary-rgb), .48);background:radial-gradient(circle at 15% 0,rgba(var(--ss-primary-rgb), .12),transparent 34%),linear-gradient(155deg,rgba(20,30,25,.96),rgba(8,10,9,.96))}
.capabilityHeading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.capabilityBadge{display:inline-flex;align-items:center;min-height:40px;padding:.5rem .8rem;border:1px solid rgba(var(--ss-primary-rgb), .4);border-radius:999px;background:rgba(var(--ss-primary-rgb), .09);color:var(--ss-green);font-weight:900;font-size:.85rem}
.capabilityStats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;margin:1.1rem 0}
.capabilityStat{display:grid;gap:.35rem;align-content:start;padding:1rem;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:rgba(0,0,0,.22)}
.capabilityStat strong{font-size:clamp(1.45rem,3vw,2.2rem);line-height:1;color:var(--ss-gold)}
.capabilityStat span{color:var(--ss-muted)}
.accuracyNote{padding:.9rem 1rem;border-left:4px solid var(--ss-green);border-radius:0 14px 14px 0;background:rgba(var(--ss-primary-rgb), .07)}
.vexGuidedSection{border-color:rgba(var(--ss-primary-rgb), .42);background:radial-gradient(circle at 90% 10%,rgba(var(--ss-primary-rgb), .15),transparent 35%),linear-gradient(155deg,rgba(25,18,34,.96),rgba(9,8,12,.96))}
.guidedLessonLayout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,.5fr);gap:clamp(1rem,3vw,2rem);align-items:center}
.guidedLessonList{margin-bottom:1rem}
.vexGuidedFigure{margin:0;display:grid;justify-items:center;gap:.75rem;text-align:center}
.vexGuidedFigure img{display:block;width:min(100%,270px);height:auto;aspect-ratio:2/3;object-fit:contain;border-radius:28px;border:1px solid rgba(var(--ss-primary-rgb), .32);background:radial-gradient(circle at 50% 18%,rgba(var(--ss-primary-rgb), .18),rgba(0,0,0,.12));box-shadow:0 20px 50px rgba(0,0,0,.38)}
.vexGuidedFigure figcaption{max-width:34ch;color:var(--ss-muted);font-size:.9rem}
@media(max-width:820px){.capabilityStats{grid-template-columns:1fr}.guidedLessonLayout{grid-template-columns:1fr}.vexGuidedFigure{order:-1}.vexGuidedFigure img{width:min(58vw,220px)}}
@media(max-width:520px){.takeHomeFlow{justify-content:flex-start}.takeHomeFlow strong{display:none}.takeHomeFlow span{width:100%}.capabilityBadge{width:100%;justify-content:center;text-align:center}}
