
:root{
  --night:#16143A;
  --cream:#F6EBE0;
  --white:#FFFFFF;
  --violet-deep:#6A3DF0;
  --violet:#7C4DFF;
  --blue:#5A7BD8;
  --leaf:#10B96A;
  --orange:#F07A1E;
  --sage:#ADC6B0;
  --sky:#8FD8EC;
  --text-green:#0B7A48;
  --text-orange:#9A4508;
  --text-muted:#4E4A78;
  --border:#E2D4C6;
  --glass:rgba(255,255,255,.56);
  --glass-strong:rgba(255,255,255,.75);
  --shadow:0 18px 55px rgba(22,20,58,.10),0 2px 10px rgba(22,20,58,.05);
  --shadow-soft:0 16px 40px rgba(22,20,58,.08);
  --radius-xl:32px;
  --radius-lg:24px;
  --radius-md:16px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--night);font-family:"Poppins",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.22),transparent 35%,rgba(124,77,255,.025));z-index:-4}
::selection{background:rgba(124,77,255,.22)}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
.noise{position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.83' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}
.ambient{position:fixed;width:52vw;height:52vw;border-radius:50%;filter:blur(110px);opacity:.16;z-index:-3;pointer-events:none;animation:ambientDrift 18s ease-in-out infinite alternate}
.ambient-a{left:-26vw;top:3vh;background:radial-gradient(circle,var(--violet),transparent 66%)}
.ambient-b{right:-25vw;top:38vh;background:radial-gradient(circle,var(--leaf),transparent 70%);animation-delay:-8s}
@keyframes ambientDrift{to{transform:translate3d(8vw,6vh,0) scale(1.12)}}

.section-shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.topbar{position:sticky;top:14px;z-index:50;width:min(1180px,calc(100% - 30px));margin:14px auto 0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px;padding:10px 12px 10px 18px;border:1px solid rgba(226,212,198,.86);background:rgba(246,235,224,.70);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%);border-radius:22px;box-shadow:0 8px 32px rgba(22,20,58,.07)}
.brand{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:1.2rem;letter-spacing:-.03em;width:max-content}.brand span{background:linear-gradient(100deg,var(--night) 10%,var(--violet-deep));-webkit-background-clip:text;background-clip:text;color:transparent}.brand-mark{width:30px;height:30px}
.desktop-nav{display:flex;gap:8px;padding:5px;border-radius:16px;background:rgba(255,255,255,.36);border:1px solid rgba(255,255,255,.56)}.desktop-nav a{font-size:.86rem;font-weight:500;color:var(--text-muted);padding:8px 14px;border-radius:11px;transition:.25s ease}.desktop-nav a:hover{background:rgba(255,255,255,.72);color:var(--night)}
.nav-actions{display:flex;justify-content:flex-end;align-items:center;gap:6px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;cursor:pointer;font-weight:600;transition:transform .22s ease,box-shadow .22s ease,background .22s ease;color:var(--night);white-space:nowrap}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0) scale(.985)}
.btn-primary{background:linear-gradient(135deg,var(--violet-deep),var(--violet));color:white;box-shadow:0 12px 28px rgba(106,61,240,.28),inset 0 1px rgba(255,255,255,.24)}.btn-primary:hover{box-shadow:0 15px 34px rgba(106,61,240,.34)}.btn-small{padding:10px 16px;border-radius:14px;font-size:.85rem}.btn-large{padding:15px 21px;border-radius:16px;font-size:.94rem}.btn-text{padding:10px 14px;font-size:.85rem}.btn-glass{background:rgba(255,255,255,.48);border:1px solid rgba(255,255,255,.75);box-shadow:0 8px 24px rgba(22,20,58,.06);backdrop-filter:blur(16px)}.btn-light{background:rgba(255,255,255,.94);color:var(--night);box-shadow:0 12px 30px rgba(0,0,0,.12)}

.hero{min-height:780px;display:grid;grid-template-columns:1.02fr .98fr;gap:54px;align-items:center;padding-top:94px;padding-bottom:96px;position:relative}
.hero-copy{position:relative;z-index:3}.eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:9px;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--text-muted)}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--leaf);box-shadow:0 0 0 6px rgba(16,185,106,.09);animation:pulseDot 2s ease infinite}@keyframes pulseDot{50%{box-shadow:0 0 0 10px rgba(16,185,106,0)}}
.hero h1{font-size:clamp(3.2rem,6.4vw,6.1rem);line-height:.98;letter-spacing:-.065em;margin:22px 0 26px;max-width:780px;font-weight:600}.ink-accent{display:inline-block;background:linear-gradient(105deg,var(--violet-deep),var(--blue) 55%,var(--leaf));-webkit-background-clip:text;background-clip:text;color:transparent;position:relative}.ink-accent::after{display:none}
.hero-sub{font-size:1.08rem;color:var(--text-muted);max-width:650px;margin:0;line-height:1.75}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.trust-row{display:flex;align-items:center;flex-wrap:wrap;gap:11px;color:var(--text-muted);font-size:.75rem;margin-top:26px}.trust-row i{width:3px;height:3px;border-radius:50%;background:var(--sage)}
.hero-stage{position:relative;min-height:550px;isolation:isolate}.stage-glow{position:absolute;inset:10% 0 0;background:radial-gradient(circle at 55% 45%,rgba(124,77,255,.22),rgba(90,123,216,.12) 28%,rgba(16,185,106,.08) 45%,transparent 72%);filter:blur(16px);z-index:-2}
.glass{background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(255,255,255,.42));border:1px solid rgba(255,255,255,.76);box-shadow:var(--shadow);backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%)}
.dashboard-card{position:absolute;width:min(540px,94%);right:0;top:68px;border-radius:30px;padding:22px;transform:perspective(1100px) rotateY(-7deg) rotateX(3deg);transform-origin:center;transition:transform .18s ease-out;overflow:hidden}.dashboard-card::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.34),transparent 30%,transparent 70%,rgba(255,255,255,.24));pointer-events:none}
.dash-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.micro-label,.feature-index{font-size:.62rem;text-transform:uppercase;letter-spacing:.13em;color:var(--text-muted);font-weight:600}.dash-head h3{font-size:1.16rem;margin:5px 0 0}.status-pill{font-size:.67rem;color:var(--text-green);font-weight:600;background:rgba(16,185,106,.10);padding:7px 9px;border-radius:999px}
.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0}.metric{background:rgba(255,255,255,.64);border:1px solid rgba(226,212,198,.72);border-radius:16px;padding:13px}.metric span,.metric small{display:block;color:var(--text-muted);font-size:.61rem}.metric strong{display:inline-block;font-size:1.15rem;margin-top:8px;letter-spacing:-.035em}.metric small{display:inline;margin-left:3px}
.chart-wrap{height:178px;border-radius:18px;background:rgba(246,235,224,.55);border:1px solid rgba(226,212,198,.65);position:relative;overflow:hidden}.chart-grid{position:absolute;inset:0;background:linear-gradient(rgba(22,20,58,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(22,20,58,.035) 1px,transparent 1px);background-size:100% 34px,70px 100%}.chart-wrap svg{position:absolute;inset:15px 13px 12px;width:calc(100% - 26px);height:calc(100% - 27px)}.pathway-line{stroke-dasharray:720;stroke-dashoffset:720;animation:drawLine 2.2s 1.1s cubic-bezier(.2,.7,.1,1) forwards}@keyframes drawLine{to{stroke-dashoffset:0}}
.dash-foot{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.quality-chip{display:flex;align-items:center;gap:8px;padding:9px 10px;background:rgba(255,255,255,.48);border-radius:13px}.quality-chip b{font-size:.73rem}.quality-chip span{font-size:.58rem;color:var(--text-muted)}
.float-card{position:absolute;border-radius:19px;padding:12px 14px;display:flex;align-items:center;gap:10px;z-index:4}.float-card strong,.float-card span{display:block}.float-card strong{font-size:.72rem}.float-card div>span{font-size:.6rem;color:var(--text-muted);margin-top:2px}.evidence-card{left:-6px;top:34px}.scope-card{right:-16px;bottom:32px}.audit-card{left:32px;bottom:2px}.icon-orb{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:rgba(16,185,106,.11);color:var(--text-green);font-weight:700}.scope-ring{width:42px;height:42px;border-radius:50%;background:conic-gradient(var(--violet) 0 71%,rgba(124,77,255,.12) 71% 100%);display:grid;place-items:center;position:relative}.scope-ring::before{content:"";position:absolute;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.82)}.scope-ring span{position:relative;font-size:.57rem;font-weight:700}.spark{width:11px;height:11px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 7px rgba(240,122,30,.11)}
.float-a{animation:floaty 5.2s ease-in-out infinite}.float-b{animation:floaty 6s ease-in-out -1.6s infinite}.float-c{animation:floaty 5.6s ease-in-out -2.8s infinite}@keyframes floaty{0%,100%{transform:translate3d(0,0,0) rotate(0deg)}50%{transform:translate3d(0,-9px,0) rotate(.5deg)}}
.data-stream{position:absolute;inset:0;pointer-events:none;z-index:-1}.data-stream span{position:absolute;left:var(--x);bottom:3%;width:5px;height:5px;border-radius:50%;background:var(--violet);box-shadow:0 0 12px rgba(124,77,255,.45);animation:riseParticle 7s var(--delay) linear infinite}@keyframes riseParticle{0%{transform:translateY(0) scale(.6);opacity:0}15%{opacity:.7}70%{opacity:.25}100%{transform:translateY(-480px) translateX(70px) scale(1.4);opacity:0}}

.signal-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:12px;border:1px solid rgba(226,212,198,.75);border-radius:26px;background:rgba(255,255,255,.34);backdrop-filter:blur(18px);margin-bottom:130px}.signal-item{display:flex;align-items:center;gap:12px;padding:16px;border-radius:18px;transition:.25s ease}.signal-item:hover{background:rgba(255,255,255,.52);transform:translateY(-2px)}.signal-item b,.signal-item small{display:block}.signal-item b{font-size:.78rem}.signal-item small{font-size:.62rem;color:var(--text-muted);margin-top:3px}.signal-icon{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;font-size:.62rem;font-weight:700}.blue{background:rgba(90,123,216,.11);color:var(--blue)}.violet{background:rgba(124,77,255,.11);color:var(--violet-deep)}.green{background:rgba(16,185,106,.11);color:var(--text-green)}.orange{background:rgba(240,122,30,.12);color:var(--text-orange)}

.product,.workflow,.pricing{padding-bottom:130px}.section-kicker{color:var(--violet-deep)}.section-kicker.light{color:var(--sky)}.section-heading{display:grid;grid-template-columns:1.45fr .55fr;gap:50px;align-items:end;margin:16px 0 44px}.section-heading h2,.pathway-copy h2,.waitlist-copy h2{font-size:clamp(2.4rem,4.8vw,4.3rem);line-height:1.04;letter-spacing:-.055em;margin:0;font-weight:600}.section-heading p,.pathway-copy p,.waitlist-copy p{margin:0;color:var(--text-muted);font-size:.95rem;line-height:1.75}.soft-underline{position:relative}.soft-underline::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:8px;border-radius:999px;background:rgba(124,77,255,.15);z-index:-1}
.feature-grid{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:auto auto;gap:16px}.feature-card{border-radius:28px;padding:28px;min-height:320px;overflow:hidden;position:relative}.feature-wide{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:center;grid-row:span 1}.feature-card h3{font-size:1.55rem;letter-spacing:-.035em;line-height:1.15;margin:10px 0 12px}.feature-card p{font-size:.82rem;color:var(--text-muted);line-height:1.7;margin:0}.quality-demo{display:flex;flex-direction:column;gap:9px}.quality-row{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:12px 13px;border-radius:14px;background:rgba(255,255,255,.58);border:1px solid rgba(226,212,198,.65);font-size:.69rem}.quality-row b{font-size:.67rem}.grade{font-style:normal;width:26px;height:26px;border-radius:8px;display:grid;place-items:center;font-weight:700;font-size:.63rem}.grade-a{background:rgba(16,185,106,.12);color:var(--text-green)}.grade-b{background:rgba(90,123,216,.12);color:var(--blue)}.grade-c{background:rgba(240,122,30,.13);color:var(--text-orange)}.grade-e{background:rgba(240,122,30,.18);color:var(--text-orange)}.muted-row{opacity:.75}
.mini-visual{height:130px;margin-bottom:24px}.hotspot-visual{display:flex;flex-direction:column;justify-content:center;gap:12px}.hotspot-visual .bar{width:var(--w);height:10px;border-radius:999px;background:rgba(90,123,216,.09);overflow:hidden}.hotspot-visual .bar span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--leaf),var(--blue));transition:width 1.2s cubic-bezier(.16,.8,.2,1)}.feature-card.is-visible .bar span{width:100%}
.dark-card{background:linear-gradient(150deg,#171534,#24204E);color:white;box-shadow:var(--shadow)}.dark-card p,.dark-card .feature-index{color:rgba(255,255,255,.66)}.audit-orbit{height:132px;position:relative;display:grid;place-items:center}.orbit{position:absolute;border-radius:50%;border:1px solid rgba(143,216,236,.24)}.orbit-1{width:120px;height:120px;animation:spin 12s linear infinite}.orbit-2{width:82px;height:82px;border-color:rgba(124,77,255,.4);animation:spin 8s linear reverse infinite}.orbit::after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:var(--sky);top:7px;left:50%}.orbit-2::after{background:var(--leaf);top:auto;bottom:2px}.orbit-core{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:var(--leaf);font-weight:700}@keyframes spin{to{transform:rotate(360deg)}}
.target-mini{height:130px;position:relative;border-radius:18px;background:rgba(246,235,224,.50);overflow:hidden;margin-bottom:24px}.target-mini::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(22,20,58,.035) 1px,transparent 1px);background-size:100% 32px}.target-line,.actual-line{position:absolute;height:3px;border-radius:999px;transform-origin:left center;left:12%;right:12%;top:43%;background:var(--orange);transform:rotate(13deg)}.actual-line{top:48%;background:linear-gradient(90deg,var(--blue),var(--leaf));transform:rotate(9deg);animation:targetWobble 5s ease-in-out infinite alternate}.target-dot{position:absolute;width:14px;height:14px;border-radius:50%;background:var(--leaf);right:11%;top:66%;box-shadow:0 0 0 8px rgba(16,185,106,.10)}@keyframes targetWobble{to{transform:rotate(11deg) translateY(7px)}}

.workflow{position:relative}.workflow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;position:relative}.workflow-step{padding:24px 20px 24px;background:rgba(255,255,255,.38);border:1px solid rgba(226,212,198,.75);border-radius:24px;min-height:260px;position:relative;backdrop-filter:blur(16px);transition:.3s ease}.workflow-step:hover{transform:translateY(-6px);background:rgba(255,255,255,.62);box-shadow:var(--shadow-soft)}.step-num{font-size:.58rem;color:var(--text-muted);font-weight:600}.step-icon{margin:30px 0 26px;width:54px;height:54px;border-radius:18px;display:grid;place-items:center;font-size:1.2rem;font-weight:600;background:linear-gradient(135deg,rgba(124,77,255,.11),rgba(90,123,216,.10));border:1px solid rgba(255,255,255,.65)}.workflow-step h3{font-size:1.02rem;margin:0 0 8px;letter-spacing:-.02em}.workflow-step p{font-size:.72rem;color:var(--text-muted);margin:0}.flow-line{position:absolute;height:1px;background:linear-gradient(90deg,transparent,var(--violet),var(--leaf),transparent);left:7%;right:7%;bottom:227px;opacity:.17;overflow:hidden}.flow-line span{display:block;width:90px;height:3px;background:linear-gradient(90deg,transparent,var(--violet),transparent);filter:blur(1px);animation:flowAcross 4.8s linear infinite}@keyframes flowAcross{from{transform:translateX(-80px)}to{transform:translateX(1100px)}}

.pathway-band{min-height:520px;border-radius:36px;padding:50px;margin-bottom:130px;background:linear-gradient(140deg,#171534 0%,#211D46 52%,#173E35 130%);color:white;display:grid;grid-template-columns:.78fr 1.22fr;gap:30px;align-items:center;overflow:hidden;position:relative;box-shadow:0 32px 70px rgba(22,20,58,.18)}.pathway-band::before{content:"";position:absolute;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(124,77,255,.32),transparent 68%);left:-180px;bottom:-220px}.pathway-copy{position:relative;z-index:2}.pathway-copy p{color:rgba(255,255,255,.66);margin-top:20px}.pathway-art{height:330px;position:relative}.pathway-art svg{position:absolute;inset:40px 0 0;width:100%;height:260px}.stream{fill:none;stroke-width:2;stroke-linecap:round;stroke-dasharray:8 8;animation:streamFlow 5s linear infinite}.stream-1{stroke:rgba(90,123,216,.75)}.stream-2{stroke:rgba(124,77,255,.72);animation-delay:-1.7s}.stream-3{stroke:rgba(16,185,106,.72);animation-delay:-3.1s}@keyframes streamFlow{to{stroke-dashoffset:-120}}
.document-chip{position:absolute;padding:9px 12px;border-radius:13px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.09);backdrop-filter:blur(16px);font-size:.64rem;color:rgba(255,255,255,.74);z-index:2;animation:floaty 5s ease-in-out infinite}.doc-a{left:0;top:36px}.doc-b{left:12px;top:132px;animation-delay:-1.8s}.doc-c{left:48px;bottom:22px;animation-delay:-3s}.verified-node{position:absolute;right:14px;top:112px;width:132px;padding:18px;border-radius:22px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(18px);text-align:center}.verified-node span{display:grid;place-items:center;width:42px;height:42px;border-radius:15px;margin:0 auto 10px;background:rgba(16,185,106,.18);color:#71F5B8;font-weight:700}.verified-node b,.verified-node small{display:block}.verified-node b{font-size:.8rem}.verified-node small{font-size:.58rem;color:rgba(255,255,255,.57);margin-top:4px}

.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.price-card{border-radius:28px;padding:28px;min-height:365px;display:flex;flex-direction:column;align-items:flex-start}.price-card>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);font-weight:600}.price-card h3{font-size:1.25rem;line-height:1.22;letter-spacing:-.03em;margin:14px 0 22px}.price-card ul{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:13px;color:var(--text-muted);font-size:.76rem}.price-card li::before{content:"✓";color:var(--text-green);margin-right:8px;font-weight:700}.price-card .btn{margin-top:auto;width:100%}.price-card.featured{background:linear-gradient(155deg,var(--night),#292559);color:white;box-shadow:0 20px 54px rgba(22,20,58,.18);position:relative}.price-card.featured>span,.price-card.featured ul{color:rgba(255,255,255,.7)}.popular{position:absolute;right:18px;top:18px;font-size:.57rem;background:rgba(16,185,106,.14);color:#8FF0BE;border:1px solid rgba(16,185,106,.18);padding:6px 8px;border-radius:999px}

.waitlist{padding:0 0 50px}.waitlist-card{min-height:420px;border-radius:38px;padding:54px;background:radial-gradient(circle at 85% 20%,rgba(143,216,236,.22),transparent 28%),radial-gradient(circle at 6% 100%,rgba(124,77,255,.34),transparent 37%),linear-gradient(135deg,#16143A,#211D47 58%,#17372F);color:white;display:grid;grid-template-columns:1fr .82fr;gap:54px;align-items:center;position:relative;overflow:hidden;box-shadow:0 28px 70px rgba(22,20,58,.21)}.waitlist-copy,.waitlist-form{position:relative;z-index:2}.waitlist-copy p{color:rgba(255,255,255,.66);margin-top:18px}.waitlist-form{padding:20px;border-radius:26px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(18px);display:grid;gap:12px}.waitlist-form label{display:block}.waitlist-form label span{display:block;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.58);font-weight:600;margin:0 0 6px 5px}.waitlist-form input{width:100%;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.08);color:white;padding:13px 14px;border-radius:14px;outline:0;transition:.2s}.waitlist-form input::placeholder{color:rgba(255,255,255,.42)}.waitlist-form input:focus{border-color:rgba(143,216,236,.55);box-shadow:0 0 0 4px rgba(143,216,236,.08)}.form-status{min-height:18px;margin:0;font-size:.68rem;color:#AEEED1}.waitlist-glow{position:absolute;width:320px;height:320px;border-radius:50%;right:-120px;bottom:-170px;background:radial-gradient(circle,rgba(16,185,106,.34),transparent 65%);filter:blur(10px)}

.footer{display:grid;grid-template-columns:1fr 1.3fr 1fr auto;gap:24px;align-items:center;padding:40px 0 44px;color:var(--text-muted);font-size:.72rem}.footer-copy{text-align:center}.footer-links{display:flex;gap:16px;justify-content:center}.footer small{font-size:.62rem}.footer-brand{font-size:1rem}

.reveal{opacity:0;transform:translateY(18px) scale(.992);transition:opacity .72s cubic-bezier(.2,.75,.25,1),transform .72s cubic-bezier(.2,.75,.25,1);transition-delay:var(--delay,0ms)}.reveal.is-visible{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}.reveal{opacity:1;transform:none}}
@media (max-width:980px){.topbar{grid-template-columns:1fr auto}.desktop-nav{display:none}.hero{grid-template-columns:1fr;padding-top:84px;gap:28px}.hero-copy{max-width:760px}.hero-stage{min-height:560px}.dashboard-card{right:50%;transform:translateX(50%) perspective(1100px) rotateY(-4deg) rotateX(2deg)}.signal-strip{grid-template-columns:1fr 1fr}.section-heading{grid-template-columns:1fr;gap:15px}.feature-grid{grid-template-columns:1fr}.feature-wide{grid-template-columns:1fr 1fr}.workflow-grid{grid-template-columns:1fr 1fr}.flow-line{display:none}.pathway-band{grid-template-columns:1fr}.pricing-grid{grid-template-columns:1fr 1fr}.price-card.featured{grid-row:span 1}.waitlist-card{grid-template-columns:1fr}.footer{grid-template-columns:1fr 1fr}.footer-copy{text-align:left}.footer-links{justify-content:flex-start}}
@media (max-width:680px){.section-shell{width:min(100% - 24px,1180px)}.topbar{top:8px;width:calc(100% - 16px);margin-top:8px;padding:8px 8px 8px 12px;border-radius:18px}.brand span{font-size:1rem}.brand-mark{width:27px;height:27px}.desktop-only{display:none}.btn-small{padding:9px 12px}.hero{padding-top:64px;padding-bottom:70px;min-height:auto}.hero h1{font-size:clamp(3rem,14vw,4.4rem);margin-top:18px}.hero-sub{font-size:.94rem}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}.hero-stage{min-height:510px;margin-top:10px}.dashboard-card{width:100%;top:75px;padding:15px;border-radius:24px;transform:translateX(50%)}.metric-row{gap:6px}.metric{padding:10px 8px}.metric strong{font-size:.94rem}.chart-wrap{height:150px}.float-card{padding:9px 10px}.evidence-card{left:-6px;top:26px}.scope-card{right:-8px;bottom:20px}.audit-card{left:5px;bottom:-10px}.signal-strip{grid-template-columns:1fr;margin-bottom:88px}.section-heading{margin-bottom:30px}.section-heading h2,.pathway-copy h2,.waitlist-copy h2{font-size:clamp(2.35rem,11vw,3.4rem)}.product,.workflow,.pricing{padding-bottom:90px}.feature-wide{grid-template-columns:1fr}.feature-card{min-height:auto;padding:23px;border-radius:24px}.workflow-grid{grid-template-columns:1fr}.workflow-step{min-height:auto}.pathway-band{width:calc(100% - 24px);padding:32px 22px;margin-bottom:90px;border-radius:28px}.pathway-art{height:290px}.pricing-grid{grid-template-columns:1fr}.waitlist-card{padding:34px 20px;border-radius:28px;gap:28px}.waitlist-form{padding:15px}.footer{grid-template-columns:1fr;gap:12px;text-align:left}.footer-copy{text-align:left}.footer-links{justify-content:flex-start;flex-wrap:wrap}}

/* Rendering stability: same V1 motion/layout, fewer backdrop-filter repaints. */
.dashboard-card,
.float-card,
.document-chip,
.reveal {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform, opacity;
}
.dashboard-card,
.float-card,
.document-chip {
  transform-style: preserve-3d;
}

/* Workflow retouch — V1 look, more motion and presence. */
.workflow{padding-top:22px;overflow:visible}
.workflow .section-heading{margin-bottom:54px;max-width:920px}
.workflow .section-heading h2{font-size:clamp(3rem,5.8vw,5.5rem);max-width:900px}
.workflow-grid{
  gap:18px;
  padding:22px;
  border-radius:34px;
  background:linear-gradient(145deg,rgba(255,255,255,.28),rgba(255,255,255,.10));
  border:1px solid rgba(255,255,255,.52);
  box-shadow:0 30px 80px rgba(22,20,58,.08),inset 0 1px 0 rgba(255,255,255,.78);
  isolation:isolate;
}
.workflow-grid::before{
  content:"";
  position:absolute;
  left:8%;right:8%;top:50%;height:2px;
  background:linear-gradient(90deg,transparent,rgba(106,61,240,.35),rgba(90,123,216,.42),rgba(16,185,106,.38),rgba(240,122,30,.36),transparent);
  z-index:-1;
  filter:blur(.2px);
}
.workflow-grid::after{
  content:"";
  position:absolute;
  width:110px;height:110px;border-radius:50%;
  top:calc(50% - 55px);left:3%;
  background:radial-gradient(circle,rgba(124,77,255,.18),rgba(124,77,255,0) 68%);
  filter:blur(4px);
  animation:workflowPulseTravel 7s linear infinite;
  z-index:-1;
}
@keyframes workflowPulseTravel{0%{left:2%;opacity:0}8%{opacity:1}92%{opacity:1}100%{left:88%;opacity:0}}
.workflow-step{
  min-height:330px;
  padding:30px 26px 28px;
  border-radius:28px;
  background:linear-gradient(155deg,rgba(255,255,255,.72),rgba(255,255,255,.34));
  border:1px solid rgba(255,255,255,.78);
  box-shadow:0 16px 42px rgba(22,20,58,.06),inset 0 1px 0 rgba(255,255,255,.9);
  overflow:hidden;
  isolation:isolate;
}
.workflow-step::before{
  content:"";position:absolute;inset:auto -44px -62px auto;width:150px;height:150px;border-radius:50%;
  background:radial-gradient(circle,rgba(124,77,255,.18),transparent 69%);
  transition:transform .55s cubic-bezier(.2,.75,.25,1),opacity .55s ease;
  opacity:.62;z-index:-1;
}
.workflow-step:nth-child(2)::before{background:radial-gradient(circle,rgba(90,123,216,.20),transparent 69%)}
.workflow-step:nth-child(3)::before{background:radial-gradient(circle,rgba(16,185,106,.20),transparent 69%)}
.workflow-step:nth-child(4)::before{background:radial-gradient(circle,rgba(240,122,30,.17),transparent 69%)}
.workflow-step:hover{transform:translateY(-10px);background:rgba(255,255,255,.78);box-shadow:0 26px 64px rgba(22,20,58,.12)}
.workflow-step:hover::before{transform:scale(1.5);opacity:1}
.workflow-step:nth-child(2){transform:translateY(18px)}
.workflow-step:nth-child(2):hover{transform:translateY(8px)}
.workflow-step:nth-child(4){transform:translateY(18px)}
.workflow-step:nth-child(4):hover{transform:translateY(8px)}
.workflow-step .step-num{font-size:.64rem;letter-spacing:.16em;text-transform:uppercase}
.step-icon{
  width:72px;height:72px;border-radius:24px;margin:34px 0 34px;
  font-size:1.45rem;position:relative;
  background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(124,77,255,.10));
  box-shadow:0 12px 30px rgba(22,20,58,.08),inset 0 0 0 1px rgba(255,255,255,.8);
}
.step-icon::before{
  content:"";position:absolute;inset:-9px;border-radius:30px;border:1px solid rgba(106,61,240,.16);
  animation:stepHalo 3.6s ease-in-out infinite;
}
.workflow-step:nth-child(2) .step-icon::before{border-color:rgba(90,123,216,.22);animation-delay:-.9s}
.workflow-step:nth-child(3) .step-icon::before{border-color:rgba(16,185,106,.22);animation-delay:-1.8s}
.workflow-step:nth-child(4) .step-icon::before{border-color:rgba(240,122,30,.22);animation-delay:-2.7s}
@keyframes stepHalo{0%,100%{transform:scale(.92);opacity:.35}50%{transform:scale(1.08);opacity:.95}}
.workflow-step h3{font-size:1.42rem;margin-bottom:12px}
.workflow-step p{font-size:.84rem;line-height:1.72;max-width:31ch}
.workflow-step::after{
  content:"";position:absolute;left:26px;right:26px;bottom:24px;height:5px;border-radius:999px;
  background:linear-gradient(90deg,var(--violet-deep) 0 34%,rgba(106,61,240,.12) 34% 100%);
  opacity:.75;
}
.workflow-step:nth-child(2)::after{background:linear-gradient(90deg,var(--blue) 0 58%,rgba(90,123,216,.12) 58% 100%)}
.workflow-step:nth-child(3)::after{background:linear-gradient(90deg,var(--leaf) 0 74%,rgba(16,185,106,.12) 74% 100%)}
.workflow-step:nth-child(4)::after{background:linear-gradient(90deg,var(--orange) 0 100%,rgba(240,122,30,.12) 100%)}
.flow-line{display:none}

/* Larger paper-trail section immediately below the workflow. */
.pathway-band{
  min-height:690px;
  padding:72px 62px;
  grid-template-columns:.72fr 1.28fr;
  gap:56px;
  border-radius:44px;
  margin-bottom:150px;
}
.pathway-band::after{
  content:"";position:absolute;right:-120px;top:-190px;width:540px;height:540px;border-radius:50%;
  background:radial-gradient(circle,rgba(90,123,216,.22),rgba(124,77,255,.12) 38%,transparent 70%);
  animation:pathGlow 8s ease-in-out infinite;
}
@keyframes pathGlow{0%,100%{transform:translate3d(0,0,0) scale(.95)}50%{transform:translate3d(-38px,32px,0) scale(1.08)}}
.pathway-copy h2{font-size:clamp(3rem,5.3vw,5.1rem);max-width:8.7ch}
.pathway-copy p{font-size:1.02rem;line-height:1.82;max-width:42ch}
.pathway-art{height:470px;min-width:0}
.pathway-art::before{
  content:"";position:absolute;inset:30px 18px 20px;border-radius:40px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.01));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.pathway-art svg{inset:82px 10px 0;height:330px;filter:drop-shadow(0 0 10px rgba(124,77,255,.12))}
.stream{stroke-width:2.4;stroke-dasharray:10 11;animation-duration:4.4s}
.document-chip{
  padding:13px 16px;border-radius:17px;font-size:.72rem;
  background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.18);
  box-shadow:0 14px 36px rgba(0,0,0,.12);
}
.doc-a{left:3%;top:62px}.doc-b{left:8%;top:194px}.doc-c{left:15%;bottom:50px}
.verified-node{
  right:4%;top:160px;width:180px;padding:26px 22px;border-radius:28px;
  background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.07));
  box-shadow:0 24px 54px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.12);
}
.verified-node::before{
  content:"";position:absolute;inset:-14px;border-radius:36px;border:1px solid rgba(113,245,184,.24);
  animation:verifyRing 3.2s ease-in-out infinite;
}
@keyframes verifyRing{0%,100%{transform:scale(.96);opacity:.25}50%{transform:scale(1.035);opacity:.8}}
.verified-node span{width:58px;height:58px;border-radius:20px;font-size:1.15rem;margin-bottom:14px}
.verified-node b{font-size:.94rem}.verified-node small{font-size:.66rem;margin-top:6px}

@media (max-width:980px){
  .workflow-grid{grid-template-columns:1fr 1fr;padding:18px}
  .workflow-step:nth-child(2),.workflow-step:nth-child(4){transform:none}
  .workflow-step:nth-child(2):hover,.workflow-step:nth-child(4):hover{transform:translateY(-10px)}
  .workflow-grid::before,.workflow-grid::after{display:none}
  .pathway-band{min-height:unset;padding:52px 38px;grid-template-columns:1fr;gap:28px}
  .pathway-copy h2{max-width:12ch}
  .pathway-art{height:430px}
}
@media (max-width:680px){
  .workflow .section-heading h2{font-size:clamp(2.7rem,13vw,4rem)}
  .workflow-grid{grid-template-columns:1fr;padding:12px;border-radius:26px}
  .workflow-step{min-height:300px;padding:26px 22px}
  .workflow-step:hover{transform:none}
  .workflow-step:nth-child(2):hover,.workflow-step:nth-child(4):hover{transform:none}
  .pathway-band{padding:38px 22px;border-radius:30px;margin-bottom:100px}
  .pathway-copy h2{font-size:clamp(2.8rem,13vw,4.1rem)}
  .pathway-art{height:380px}
  .pathway-art::before{inset:18px 0 8px;border-radius:28px}
  .doc-a{left:1%;top:48px}.doc-b{left:2%;top:155px}.doc-c{left:8%;bottom:44px}
  .verified-node{right:1%;top:128px;width:150px;padding:20px 16px}
}

/* --- Product ecosystem preview replacing the duplicate mini workflow strip --- */
.ecosystem{display:grid;grid-template-columns:minmax(0,.88fr) minmax(460px,1.12fr);gap:32px;align-items:center;margin-bottom:130px;padding:30px;border:1px solid rgba(226,212,198,.78);border-radius:34px;background:linear-gradient(180deg,rgba(255,255,255,.42),rgba(255,255,255,.27));box-shadow:0 24px 60px rgba(22,20,58,.07);overflow:hidden}
.ecosystem-copy{padding:18px 8px 18px 10px;position:relative;z-index:2}
.ecosystem-copy h2{margin:13px 0 16px;font-size:clamp(2.35rem,4.6vw,4.4rem);line-height:1.03;letter-spacing:-.055em;font-weight:600;max-width:11ch}
.ecosystem-copy p{margin:0;max-width:40ch;color:var(--text-muted);font-size:1rem;line-height:1.72}
.ecosystem-pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.ecosystem-pills span{padding:9px 13px;border:1px solid rgba(226,212,198,.86);background:rgba(255,255,255,.62);border-radius:999px;font-size:.68rem;font-weight:600;box-shadow:0 8px 20px rgba(22,20,58,.04)}
.ecosystem-visual{position:relative;min-height:420px;border-radius:28px;overflow:hidden;background:radial-gradient(circle at 50% 45%,rgba(90,123,216,.18),transparent 28%),linear-gradient(145deg,#17153a,#25204f 57%,#17362f);box-shadow:0 26px 64px rgba(22,20,58,.18)}
.ecosystem-visual::before{content:"";position:absolute;inset:-25%;background:radial-gradient(circle at 68% 24%,rgba(143,216,236,.13),transparent 25%),radial-gradient(circle at 22% 82%,rgba(16,185,106,.11),transparent 23%);pointer-events:none}
.ecosystem-svg{position:absolute;inset:0;width:100%;height:100%}
.eco-ring,.eco-orbit,.eco-flow{fill:none;vector-effect:non-scaling-stroke}
.eco-ring{stroke:rgba(255,255,255,.16);stroke-width:1.3;transform-origin:310px 210px}
.eco-ring-a{stroke-dasharray:5 8;animation:ecoRotate 20s linear infinite}.eco-ring-b{stroke-dasharray:2 10;animation:ecoRotate 30s linear infinite reverse}
.eco-orbit{stroke:rgba(255,255,255,.1);stroke-width:1.1;stroke-dasharray:7 11}
.eco-flow{stroke:url(#flowStroke);stroke-width:1.8;stroke-dasharray:7 11;opacity:.64;animation:ecoDash 9s linear infinite}
.eco-flow-b{animation-delay:-2.2s}.eco-flow-c{animation-delay:-4.4s}.eco-flow-d{animation-delay:-6.6s}
@keyframes ecoRotate{to{transform:rotate(360deg)}}@keyframes ecoDash{to{stroke-dashoffset:-145}}
.eco-particle{fill:#fff;filter:drop-shadow(0 0 8px rgba(143,216,236,.85));animation:ecoBlink 3.2s ease-in-out infinite}.p2{animation-delay:-.8s}.p3{animation-delay:-1.6s}.p4{animation-delay:-2.4s}@keyframes ecoBlink{50%{opacity:.42;transform:scale(1.45);transform-box:fill-box;transform-origin:center}}
.eco-core-label{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;text-align:center;color:white;z-index:2}.eco-core-label b{font-size:1.35rem;letter-spacing:-.04em}.eco-core-label small{margin-top:5px;color:rgba(255,255,255,.62);font-size:.63rem;letter-spacing:.08em;text-transform:uppercase}
.eco-node{position:absolute;display:grid;grid-template-columns:10px auto;column-gap:8px;row-gap:1px;min-width:112px;padding:10px 12px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);box-shadow:0 12px 32px rgba(0,0,0,.1);color:#fff;z-index:3;animation:ecoFloat 6s ease-in-out infinite}
.eco-node span{grid-row:1/3;width:9px;height:9px;margin-top:4px;border-radius:50%;background:#8FD8EC;box-shadow:0 0 14px rgba(143,216,236,.7)}.eco-node b{font-size:.72rem}.eco-node small{font-size:.58rem;color:rgba(255,255,255,.56)}
.node-data{left:24px;top:42px}.node-evidence{right:24px;top:42px;animation-delay:-1.2s}.node-targets{left:25px;bottom:42px;animation-delay:-2.3s}.node-actions{right:25px;bottom:42px;animation-delay:-3.2s}.node-reports{right:20px;top:50%;transform:translateY(-50%);animation:none}.node-reports span{background:#10B96A;box-shadow:0 0 14px rgba(16,185,106,.6)}
@keyframes ecoFloat{50%{transform:translateY(-7px)}}

/* --- Who it's for redesign --- */
.audience{padding-bottom:130px}.audience-heading{margin-bottom:34px}
.audience-primary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.audience-card{min-height:400px;padding:30px;border-radius:30px;display:flex;flex-direction:column;position:relative;overflow:hidden}
.audience-card.glass{background:rgba(255,255,255,.48);border:1px solid rgba(226,212,198,.84);box-shadow:0 20px 50px rgba(22,20,58,.07);backdrop-filter:blur(16px)}
.audience-consultants{color:white;background:radial-gradient(circle at 90% 12%,rgba(143,216,236,.18),transparent 26%),radial-gradient(circle at 5% 100%,rgba(16,185,106,.16),transparent 30%),linear-gradient(150deg,#16143A,#2a2459 64%,#18392f);box-shadow:0 26px 62px rgba(22,20,58,.2)}
.audience-preview{position:absolute;right:22px;top:22px;padding:6px 10px;border-radius:999px;border:1px solid rgba(143,216,236,.25);background:rgba(143,216,236,.09);color:#b9efff;font-size:.56rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700}
.audience-card-head{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start}
.audience-glyph{width:54px;height:54px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,rgba(124,77,255,.13),rgba(90,123,216,.1));border:1px solid rgba(255,255,255,.72);font-size:1.15rem;color:var(--violet-deep);box-shadow:inset 0 1px rgba(255,255,255,.7)}
.audience-consultants .audience-glyph{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.14);color:#aeeed1}
.audience-card-head span,.early-copy>span{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.13em;color:var(--text-muted);font-weight:700;margin-top:4px}.audience-consultants .audience-card-head span{color:rgba(255,255,255,.62)}
.audience-card h3,.early-copy h3{margin:8px 0 0;font-size:clamp(1.3rem,2vw,1.75rem);line-height:1.17;letter-spacing:-.035em}
.audience-card ul{list-style:none;margin:26px 0 24px;padding:20px 0 0;border-top:1px solid rgba(226,212,198,.8);display:grid;gap:15px}.audience-consultants ul{border-top-color:rgba(255,255,255,.13)}
.audience-card li{position:relative;padding-left:29px;color:var(--text-muted);font-size:.83rem;line-height:1.65}.audience-consultants li{color:rgba(255,255,255,.76)}.audience-card li::before{content:"✓";position:absolute;left:0;top:0;color:var(--text-green);font-weight:700}.audience-consultants li::before{color:#8ff0be}
.audience-cta{margin-top:auto;width:100%;min-height:54px;padding:0 20px;border-radius:17px;display:inline-flex;align-items:center;justify-content:space-between;text-decoration:none;color:var(--night);background:rgba(255,255,255,.68);border:1px solid rgba(255,255,255,.9);box-shadow:0 12px 28px rgba(22,20,58,.08);font-size:.9rem;font-weight:600;transition:.25s ease}.audience-cta:hover{transform:translateY(-2px);background:#fff;color:var(--night)}.audience-cta i{font-style:normal;font-size:1.1rem;transition:transform .25s ease}.audience-cta:hover i{transform:translateX(4px)}
.audience-cta-light{background:linear-gradient(135deg,#7C4DFF,#5A7BD8);color:white;border-color:rgba(255,255,255,.12);box-shadow:0 16px 34px rgba(106,61,240,.25)}.audience-cta-light:hover{color:white;background:linear-gradient(135deg,#7144ee,#5070cc)}
.early-access-panel{margin-top:18px;min-height:170px;padding:28px 30px;border-radius:30px;display:grid;grid-template-columns:1.08fr 1.35fr auto;gap:28px;align-items:center;position:relative;overflow:hidden;background:linear-gradient(105deg,rgba(255,255,255,.48),rgba(255,255,255,.28));border:1px solid rgba(226,212,198,.82);box-shadow:0 20px 48px rgba(22,20,58,.06)}
.early-orb{position:absolute;width:240px;height:240px;right:9%;top:50%;transform:translateY(-50%);border-radius:50%;background:radial-gradient(circle,rgba(143,216,236,.18),rgba(124,77,255,.09) 40%,transparent 70%);pointer-events:none}
.early-copy,.early-access-panel ul,.early-cta{position:relative;z-index:2}.early-copy h3{font-size:1.32rem}.early-access-panel ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}.early-access-panel li{position:relative;padding-left:22px;color:var(--text-muted);font-size:.77rem;line-height:1.55}.early-access-panel li::before{content:"•";position:absolute;left:2px;color:var(--violet-deep);font-weight:700}
.early-cta{width:auto;min-width:180px;white-space:nowrap;background:var(--night);color:white;border-color:var(--night);box-shadow:none}.early-cta:hover{background:#282453;color:white}

@media (max-width:980px){
  .ecosystem{grid-template-columns:1fr;padding:24px}.ecosystem-copy h2{max-width:13ch}.ecosystem-visual{min-height:400px}
  .audience-primary{grid-template-columns:1fr}.early-access-panel{grid-template-columns:1fr 1fr}.early-cta{grid-column:1/-1;width:100%}
}
@media (max-width:680px){
  .ecosystem{width:min(100% - 24px,1180px);padding:16px;margin-bottom:88px;border-radius:27px;gap:18px}.ecosystem-copy{padding:8px 5px 0}.ecosystem-copy h2{font-size:clamp(2.35rem,11vw,3.4rem);max-width:11ch}.ecosystem-copy p{font-size:.92rem}.ecosystem-pills{gap:7px;margin-top:18px}.ecosystem-pills span{font-size:.62rem;padding:8px 10px}
  .ecosystem-visual{min-height:430px;border-radius:23px}.eco-core-label b{font-size:1.1rem}.eco-core-label small{font-size:.55rem}.eco-node{min-width:96px;padding:9px 10px;border-radius:14px}.eco-node b{font-size:.66rem}.eco-node small{font-size:.52rem}.node-data{left:10px;top:16px}.node-evidence{right:10px;top:16px}.node-targets{left:10px;bottom:16px}.node-actions{right:10px;bottom:16px}.node-reports{right:8px;top:51%}
  .audience{padding-bottom:88px}.audience-heading{margin-bottom:28px}.audience-card{min-height:auto;padding:22px;border-radius:25px}.audience-preview{right:14px;top:14px;font-size:.5rem}.audience-card-head{gap:13px;padding-right:56px}.audience-glyph{width:46px;height:46px;border-radius:15px}.audience-card h3{font-size:1.2rem}.audience-card ul{margin:20px 0 20px;padding-top:17px;gap:12px}.audience-card li{font-size:.8rem}.audience-cta{min-height:50px;border-radius:15px}
  .early-access-panel{grid-template-columns:1fr;padding:22px;border-radius:25px;gap:18px}.early-copy h3{font-size:1.2rem}.early-cta{grid-column:auto;min-width:0}
}


/* ===== Final interaction + mobile polish ===== */
/* Safeguard: the old compact Measure/Understand/Act/Report strip must never render. */
.signal-strip{display:none!important}

/* Hero: keep the gradient words clean; no underline/highlighter under them. */
.ink-accent::after{display:none!important}

/* Make the illustrative pathway feel alive without making the whole card wobble. */
.pathway-line{
  stroke-dasharray:1!important;
  stroke-dashoffset:1;
  animation:pathwayCycle 6.4s cubic-bezier(.22,.72,.18,1) infinite!important;
  filter:drop-shadow(0 2px 4px rgba(106,61,240,.16));
}
.pathway-dash{animation:dashDrift 6.4s linear infinite;opacity:.72}
.chart-tracer{filter:drop-shadow(0 0 5px rgba(124,77,255,.55));opacity:.92}
.chart-point{transform-box:fill-box;transform-origin:center;animation:chartPointPulse 2.8s ease-in-out infinite}
.chart-point.point-b{animation-delay:-.9s}.chart-point.point-c{animation-delay:-1.8s}
@keyframes pathwayCycle{
  0%{stroke-dashoffset:1;opacity:0}
  8%{opacity:.9}
  42%{stroke-dashoffset:0;opacity:1}
  84%{stroke-dashoffset:0;opacity:1}
  100%{stroke-dashoffset:0;opacity:0}
}
@keyframes dashDrift{to{stroke-dashoffset:-1}}
@keyframes chartPointPulse{50%{transform:scale(1.18);filter:drop-shadow(0 0 5px rgba(124,77,255,.35))}}

/* Clean, subtle card response. No aggressive tilting or large jumps. */
.feature-card,.audience-card,.early-access-panel,.float-card,.quality-row,.waitlist-form{
  -webkit-tap-highlight-color:transparent;
  transition:border-color .22s ease,box-shadow .22s ease,background-color .22s ease,filter .22s ease,opacity .22s ease;
}
@media (hover:hover) and (pointer:fine){
  .feature-card:hover,.audience-card:hover,.early-access-panel:hover,.float-card:hover,.quality-row:hover,.waitlist-form:hover{
    border-color:rgba(124,77,255,.22);
    box-shadow:0 22px 52px rgba(22,20,58,.10);
    filter:saturate(1.025) brightness(1.01);
  }
  .audience-card:hover .audience-glyph{box-shadow:0 10px 24px rgba(106,61,240,.13),inset 0 1px rgba(255,255,255,.75)}
}
.touch-active{
  border-color:rgba(124,77,255,.30)!important;
  box-shadow:0 16px 38px rgba(22,20,58,.11)!important;
  filter:saturate(1.035) brightness(1.015);
}

/* Audience cards: more editorial, less like pricing boxes. */
.audience-primary{gap:16px}
.audience-card{min-height:360px;padding:26px;border-radius:28px}
.audience-business{
  background:
    radial-gradient(circle at 92% 8%,rgba(143,216,236,.18),transparent 25%),
    radial-gradient(circle at 4% 100%,rgba(124,77,255,.10),transparent 30%),
    linear-gradient(145deg,rgba(255,255,255,.82),rgba(255,255,255,.48))!important;
}
.audience-consultants{
  background:
    radial-gradient(circle at 86% 10%,rgba(143,216,236,.19),transparent 25%),
    radial-gradient(circle at 8% 96%,rgba(16,185,106,.17),transparent 31%),
    linear-gradient(150deg,#151337,#272253 64%,#18382f)!important;
}
.audience-card-head{position:relative;z-index:2}
.audience-glyph{width:50px;height:50px;border-radius:16px}
.audience-card h3{font-size:clamp(1.35rem,2vw,1.7rem)}
.audience-card ul{border-top:0;margin:22px 0 22px;padding:0;gap:10px;position:relative;z-index:2}
.audience-card li{
  padding:11px 13px 11px 39px;
  border-radius:14px;
  background:rgba(255,255,255,.48);
  border:1px solid rgba(226,212,198,.58);
  line-height:1.55;
  font-size:.8rem;
}
.audience-card li::before{left:14px;top:11px}
.audience-consultants li{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.09);color:rgba(255,255,255,.78)}
.audience-cta{
  width:100%;min-height:52px;border-radius:999px;
  padding:6px 8px 6px 20px;
  justify-content:space-between;
  background:linear-gradient(135deg,#6A3DF0,#7C4DFF);
  color:#fff;border:0;
  box-shadow:0 14px 32px rgba(106,61,240,.24);
}
.audience-cta:hover{background:linear-gradient(135deg,#6337e8,#7445f7);color:#fff}
.audience-cta i{
  width:38px;height:38px;border-radius:50%;display:grid;place-items:center;
  background:rgba(255,255,255,.16);font-size:1rem;
}
.audience-cta-light{background:rgba(255,255,255,.94);color:var(--night);box-shadow:0 14px 32px rgba(0,0,0,.13)}
.audience-cta-light:hover{background:#fff;color:var(--night)}
.audience-cta-light i{background:rgba(22,20,58,.07)}
.audience-preview{background:rgba(16,185,106,.12);color:#aeeed1;border-color:rgba(16,185,106,.18)}

/* Early access becomes a compact bridge rather than another oversized card. */
.early-access-panel{min-height:150px;border-radius:27px;padding:24px 26px}
.early-cta{background:var(--night);box-shadow:none;color:#fff}
.early-cta i{background:rgba(255,255,255,.10)}

@media (max-width:680px){
  /* The graph becomes the animation focus on touch screens. Floating cards stay composed. */
  .hero-stage{min-height:500px;margin-top:6px}
  .dashboard-card{top:62px;width:calc(100% - 2px);padding:14px;border-radius:23px}
  .chart-wrap{height:142px}
  .float-a,.float-b,.float-c{animation:none!important}
  .float-card{padding:8px 10px;border-radius:17px}
  .float-card strong{font-size:.68rem}.float-card div>span{font-size:.56rem}
  .evidence-card{left:6px;top:6px}
  .scope-card{right:2px;bottom:4px}
  .audit-card{left:8px;bottom:4px}
  .data-stream{opacity:.45}

  /* Hide the legacy compact workflow even if a cached/older fragment sneaks in. */
  .signal-strip,.signal-item{display:none!important}

  /* Keep the actual main workflow later on the page; it is the only Measure/Understand/Act/Report section. */
  .workflow{padding-top:8px}

  /* Audience cards: compact, tactile, and visibly designed for phones. */
  .audience-primary{gap:14px}
  .audience-card{padding:20px;border-radius:24px;min-height:0}
  .audience-card-head{grid-template-columns:44px 1fr;gap:12px;padding-right:0}
  .audience-consultants .audience-card-head{padding-right:68px}
  .audience-glyph{width:44px;height:44px;border-radius:14px}
  .audience-card-head span{font-size:.58rem;letter-spacing:.12em}
  .audience-card h3{font-size:1.19rem;line-height:1.2;margin-top:6px}
  .audience-card ul{margin:18px 0 18px;gap:8px}
  .audience-card li{font-size:.78rem;padding:10px 11px 10px 36px;border-radius:13px}
  .audience-card li::before{left:12px;top:10px}
  .audience-cta{min-height:50px;border-radius:999px;font-size:.84rem;padding-left:18px}
  .audience-cta i{width:36px;height:36px}
  .audience-preview{right:14px;top:14px;font-size:.46rem;padding:5px 8px}
  .early-access-panel{padding:20px;border-radius:24px;gap:15px}
  .early-access-panel ul{gap:7px}.early-access-panel li{font-size:.75rem}

  /* Touch response uses light/shadow only, avoiding glass transform flicker. */
  .touch-active{filter:saturate(1.04) brightness(1.015);}
}

@media (prefers-reduced-motion:reduce){
  .pathway-line,.pathway-dash,.chart-point{animation:none!important;stroke-dashoffset:0!important;opacity:1!important}
  .chart-tracer{display:none}
}


/* ===== 2026-10-06 motion + workflow graphic polish ===== */
/* Animated hero phrase — moving colour, not a moving underline. */
.ink-accent{
  background:linear-gradient(100deg,#6F55E7 0%,#6680D5 38%,#6FB9A0 58%,#6190CF 76%,#7058E2 100%)!important;
  background-size:165% 100%!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  color:transparent!important;
  animation:stiraInkFlow 11s ease-in-out infinite alternate!important;
  filter:saturate(.92);
}
@keyframes stiraInkFlow{
  from{background-position:8% 50%}
  to{background-position:92% 50%}
}

/* Main hero CTA gets a restrained moving sheen and glow. */
.hero-actions .btn-primary{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:linear-gradient(110deg,#6337EE,#7C4DFF 42%,#6F57FF 62%,#5A7BD8 100%);
  background-size:190% 100%;
  animation:heroCtaGradient 6.2s ease-in-out infinite,heroCtaGlow 3.8s ease-in-out infinite;
}
.hero-actions .btn-primary::before{
  content:"";
  position:absolute;
  top:-70%;bottom:-70%;left:-34%;width:24%;
  transform:skewX(-18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);
  animation:heroCtaSheen 4.8s ease-in-out infinite;
  pointer-events:none;
  z-index:-1;
}
.hero-actions .btn-primary span{display:inline-block;animation:heroArrowNudge 2.4s ease-in-out infinite}
@keyframes heroCtaGradient{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
@keyframes heroCtaGlow{0%,100%{box-shadow:0 12px 28px rgba(106,61,240,.27),inset 0 1px rgba(255,255,255,.22)}50%{box-shadow:0 18px 38px rgba(106,61,240,.36),0 0 0 5px rgba(124,77,255,.04),inset 0 1px rgba(255,255,255,.26)}}
@keyframes heroCtaSheen{0%,18%{left:-34%;opacity:0}34%{opacity:1}52%,100%{left:118%;opacity:0}}
@keyframes heroArrowNudge{0%,100%{transform:translateX(0)}50%{transform:translateX(4px)}}

/* Workflow cards now carry product-specific mini visualisations instead of generic icons. */
.workflow-grid{align-items:stretch}
.workflow-step{
  min-height:390px!important;
  padding:24px 22px 25px!important;
  display:flex;
  flex-direction:column;
  transform:none!important;
}
.workflow-step:hover{transform:translateY(-7px)!important}
.workflow-step:nth-child(2),.workflow-step:nth-child(4){transform:none!important}
.workflow-step:nth-child(2):hover,.workflow-step:nth-child(4):hover{transform:translateY(-7px)!important}
.workflow-step::after{display:none!important}
.step-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;position:relative;z-index:3}
.step-num{font-size:.62rem!important;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);font-weight:700}
.step-tag{font-size:.56rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--text-muted);padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.48);border:1px solid rgba(226,212,198,.6)}
.workflow-step h3{font-size:1.48rem!important;margin:18px 0 9px!important;position:relative;z-index:3}
.workflow-step p{font-size:.82rem!important;line-height:1.68!important;max-width:32ch!important;position:relative;z-index:3}

.step-graphic{
  height:154px;
  margin:18px 0 4px;
  border-radius:23px;
  position:relative;
  overflow:hidden;
  background:linear-gradient(145deg,rgba(255,255,255,.74),rgba(255,255,255,.28));
  border:1px solid rgba(255,255,255,.72);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 12px 34px rgba(22,20,58,.055);
  isolation:isolate;
}
.step-graphic::before{content:"";position:absolute;inset:auto -35px -55px auto;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(124,77,255,.18),transparent 68%);z-index:-1;animation:graphicBreath 5.2s ease-in-out infinite}
.workflow-understand .step-graphic::before{background:radial-gradient(circle,rgba(90,123,216,.20),transparent 68%)}
.workflow-act .step-graphic::before{background:radial-gradient(circle,rgba(16,185,106,.19),transparent 68%)}
.workflow-report .step-graphic::before{background:radial-gradient(circle,rgba(240,122,30,.16),transparent 68%)}
@keyframes graphicBreath{50%{transform:scale(1.2) translate(-6px,-5px);opacity:.82}}

/* Measure: Fuel / Power / Travel converge into the carbon inventory. */
.measure-graphic{display:grid;grid-template-columns:repeat(3,1fr);align-items:start;padding:16px 14px 12px;gap:8px}
.source-chip{height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:.62rem;font-weight:600;color:var(--text-muted);background:rgba(255,255,255,.68);border:1px solid rgba(226,212,198,.66);position:relative;z-index:2;animation:sourceBreathe 4.8s ease-in-out infinite}
.source-b{animation-delay:-1.4s}.source-c{animation-delay:-2.8s}
.source-chip i{width:7px;height:7px;border-radius:50%;background:var(--violet);box-shadow:0 0 0 5px rgba(124,77,255,.07)}
.source-b i{background:var(--blue)}.source-c i{background:var(--leaf)}
@keyframes sourceBreathe{50%{transform:translateY(-3px);box-shadow:0 8px 18px rgba(22,20,58,.06)}}
.carbon-node{position:absolute;left:50%;bottom:15px;transform:translateX(-50%);width:76px;height:50px;border-radius:17px;background:linear-gradient(145deg,#171537,#292458);color:white;display:flex;align-items:center;justify-content:center;gap:6px;box-shadow:0 14px 30px rgba(22,20,58,.16);font-size:.63rem;font-weight:700;z-index:3}
.carbon-node b{width:18px;height:18px;border-radius:6px;background:rgba(16,185,106,.18);color:#93efbf;display:grid;place-items:center;font-size:.72rem}
.measure-flow{position:absolute;top:58px;width:2px;height:46px;border-radius:999px;background:linear-gradient(180deg,rgba(124,77,255,.05),rgba(124,77,255,.55),rgba(124,77,255,.05));overflow:hidden}
.measure-flow::after{content:"";position:absolute;left:-2px;top:-7px;width:6px;height:10px;border-radius:999px;background:var(--sky);box-shadow:0 0 8px rgba(143,216,236,.7);animation:dataDrop 2.7s linear infinite}
.flow-a{left:20%}.flow-b{left:50%}.flow-c{left:80%}.flow-b::after{animation-delay:-.85s}.flow-c::after{animation-delay:-1.7s}
@keyframes dataDrop{from{transform:translateY(-8px);opacity:0}18%{opacity:1}to{transform:translateY(52px);opacity:0}}

/* Understand: hotspot share, category bars and a moving trend tracer. */
.understand-graphic{display:grid;grid-template-columns:94px 1fr;align-items:center;padding:16px;gap:16px}
.hotspot-ring{width:84px;height:84px;border-radius:50%;background:conic-gradient(var(--violet) 0 53.5%,rgba(124,77,255,.10) 53.5% 100%);display:grid;place-items:center;position:relative;animation:ringBreathe 4s ease-in-out infinite}
.hotspot-ring::before{content:"";position:absolute;inset:9px;border-radius:50%;background:rgba(255,255,255,.83);box-shadow:inset 0 0 0 1px rgba(226,212,198,.55)}
.hotspot-ring span,.hotspot-ring small{position:absolute;z-index:2}.hotspot-ring span{font-size:.85rem;font-weight:700;top:28px}.hotspot-ring small{font-size:.46rem;bottom:25px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}
@keyframes ringBreathe{50%{filter:drop-shadow(0 8px 12px rgba(124,77,255,.14));transform:scale(1.025)}}
.insight-bars{height:82px;display:flex;align-items:flex-end;gap:7px;padding:0 2px 15px;border-bottom:1px solid rgba(78,74,120,.15);position:relative}
.insight-bars i{flex:1;height:var(--h);min-width:8px;border-radius:7px 7px 3px 3px;background:linear-gradient(180deg,var(--blue),var(--violet));transform-origin:bottom;animation:barPulse 4.6s ease-in-out infinite}
.insight-bars i:nth-child(2){animation-delay:-.5s}.insight-bars i:nth-child(3){animation-delay:-1s}.insight-bars i:nth-child(4){animation-delay:-1.5s}.insight-bars i:nth-child(5){animation-delay:-2s}
@keyframes barPulse{0%,100%{transform:scaleY(.88);opacity:.74}50%{transform:scaleY(1);opacity:1}}
.insight-trend{position:absolute;right:17px;left:124px;bottom:22px;height:28px;border-top:2px solid rgba(16,185,106,.32);transform:skewY(-8deg)}
.insight-trend span{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--leaf);top:-5px;left:0;box-shadow:0 0 0 5px rgba(16,185,106,.08),0 0 10px rgba(16,185,106,.35);animation:trendRun 4.2s ease-in-out infinite}
@keyframes trendRun{0%,100%{left:1%}50%{left:93%}}

/* Act: target gap with achieved + planned reductions. */
.act-graphic{padding:20px 17px}
.target-label{font-size:.58rem;text-transform:uppercase;letter-spacing:.11em;font-weight:700;color:var(--text-muted)}
.target-track{height:13px;border-radius:999px;background:rgba(22,20,58,.07);margin-top:14px;position:relative;overflow:visible}
.target-achieved,.target-estimated{position:absolute;left:0;top:0;bottom:0}.target-achieved{width:8%;border-radius:999px 0 0 999px;background:var(--leaf)}.target-estimated{left:8%;width:61%;background:repeating-linear-gradient(135deg,rgba(16,185,106,.70) 0 6px,rgba(143,216,236,.68) 6px 10px);animation:targetStripe 8s linear infinite}
@keyframes targetStripe{to{background-position:42px 0}}
.target-runner{position:absolute;left:66%;top:50%;width:17px;height:17px;border-radius:50%;background:white;border:4px solid var(--leaf);transform:translate(-50%,-50%);box-shadow:0 0 0 7px rgba(16,185,106,.09);animation:targetRunner 4.4s ease-in-out infinite}
@keyframes targetRunner{0%,100%{left:64%}50%{left:70%}}
.act-stats{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:25px}.act-stats>span{padding:10px 11px;border-radius:14px;background:rgba(255,255,255,.58);border:1px solid rgba(226,212,198,.55)}.act-stats b,.act-stats small{display:block}.act-stats b{font-size:.77rem}.act-stats small{font-size:.52rem;color:var(--text-muted);margin-top:2px}

/* Report: source/evidence becomes a reviewed report. */
.report-graphic{padding:17px 16px}
.report-sheet{position:absolute;width:112px;height:92px;border-radius:15px;background:rgba(255,255,255,.78);border:1px solid rgba(226,212,198,.68);box-shadow:0 14px 28px rgba(22,20,58,.07);padding:18px 15px;left:20px;top:27px;transform-origin:center}
.sheet-back{transform:rotate(-6deg) translate(-2px,4px);opacity:.56;animation:sheetBack 5s ease-in-out infinite}.sheet-front{animation:sheetFront 5s ease-in-out infinite}
@keyframes sheetFront{50%{transform:translateY(-4px) rotate(.5deg)}}@keyframes sheetBack{50%{transform:rotate(-8deg) translate(-6px,7px)}}
.report-sheet i{display:block;height:5px;border-radius:999px;background:rgba(78,74,120,.13);margin-bottom:8px}.report-sheet i:nth-child(2){width:72%}.report-sheet i:nth-child(3){width:54%}
.report-check{position:absolute;right:10px;bottom:10px;width:25px;height:25px;border-radius:9px;background:rgba(16,185,106,.13);color:var(--text-green);display:grid;place-items:center;font-size:.72rem;font-weight:700;animation:checkPulse 3.4s ease-in-out infinite}
@keyframes checkPulse{50%{box-shadow:0 0 0 7px rgba(16,185,106,.07)}}
.signoff-chip{position:absolute;right:18px;bottom:23px;min-width:88px;padding:11px 13px;border-radius:16px;background:linear-gradient(145deg,#171537,#292458);color:white;box-shadow:0 14px 28px rgba(22,20,58,.15);animation:signoffFloat 5.3s ease-in-out infinite}
.signoff-chip b,.signoff-chip small{display:block}.signoff-chip b{font-size:.76rem}.signoff-chip small{font-size:.5rem;color:rgba(255,255,255,.62);margin-top:2px}
@keyframes signoffFloat{50%{transform:translateY(-5px)}}

/* More tactile workflow response, matching the rest of the site. */
.workflow-step{transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease,filter .24s ease!important;-webkit-tap-highlight-color:transparent}
@media (hover:hover) and (pointer:fine){
  .workflow-step:hover{border-color:rgba(124,77,255,.20)!important;box-shadow:0 26px 64px rgba(22,20,58,.115)!important;filter:saturate(1.03)}
  .workflow-step:hover .step-graphic{box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 18px 40px rgba(22,20,58,.075)}
}
.workflow-step.touch-active{border-color:rgba(124,77,255,.25)!important;box-shadow:0 18px 42px rgba(22,20,58,.10)!important;filter:saturate(1.035)}

@media (max-width:680px){
  .workflow-grid{padding:10px!important;gap:14px!important;border-radius:26px!important}
  .workflow-step{min-height:342px!important;padding:18px 18px 20px!important;border-radius:24px!important}
  .workflow-step:hover,.workflow-step:nth-child(2):hover,.workflow-step:nth-child(4):hover{transform:none!important}
  .step-graphic{height:140px;margin-top:15px;border-radius:20px}
  .workflow-step h3{font-size:1.32rem!important;margin-top:15px!important}
  .workflow-step p{font-size:.8rem!important;line-height:1.62!important}
  .step-tag{font-size:.51rem;padding:5px 8px}
  .understand-graphic{grid-template-columns:82px 1fr;padding:13px;gap:13px}
  .hotspot-ring{width:74px;height:74px}.hotspot-ring span{top:24px;font-size:.78rem}.hotspot-ring small{bottom:21px}
  .insight-trend{left:108px;right:14px}
  .report-sheet{left:15px;top:25px;width:104px;height:86px}.signoff-chip{right:13px;bottom:21px}
  .measure-graphic{padding:13px 10px}.source-chip{font-size:.56rem}.carbon-node{bottom:13px}
  .hero-actions .btn-primary{animation:heroCtaGradient 6.2s ease-in-out infinite,heroCtaGlowMobile 3.8s ease-in-out infinite}
  @keyframes heroCtaGlowMobile{0%,100%{box-shadow:0 12px 25px rgba(106,61,240,.24)}50%{box-shadow:0 16px 32px rgba(106,61,240,.34),0 0 0 4px rgba(124,77,255,.035)}}
}

@media (prefers-reduced-motion:reduce){
  .ink-accent,.hero-actions .btn-primary,.hero-actions .btn-primary::before,.hero-actions .btn-primary span,
  .source-chip,.measure-flow::after,.hotspot-ring,.insight-bars i,.insight-trend span,.target-estimated,.target-runner,
  .sheet-front,.sheet-back,.report-check,.signoff-chip,.step-graphic::before{animation:none!important}
}

/* ---- Feedback pass: clearer customer language, pricing and waitlist ---- */
#product,#how,#pricing,#waitlist{scroll-margin-top:118px}
.brand-logo-img{width:36px;height:28px;object-fit:contain;display:block;filter:drop-shadow(0 5px 10px rgba(22,20,58,.08))}
.footer-brand .brand-logo-img{width:32px;height:25px}

/* The quality demo now uses plain-language status labels rather than tiny letter badges. */
.quality-row{grid-template-columns:minmax(0,1fr) auto auto;gap:10px}
.quality-row b{font-weight:500;color:var(--text-muted);white-space:nowrap}
.grade{width:auto;min-width:48px;height:27px;padding:0 8px;border-radius:999px;font-size:.57rem}

/* Transparent pricing from the approved mockup. */
.plans{padding:0 0 130px}
.plans-heading{margin-bottom:34px}
.plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
.plan-card{min-height:520px;padding:28px;border-radius:30px;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.plan-card::after{content:"";position:absolute;width:250px;height:250px;border-radius:50%;right:-120px;bottom:-145px;background:radial-gradient(circle,rgba(124,77,255,.11),transparent 68%);pointer-events:none}
.plan-card:hover{transform:translateY(-5px);box-shadow:0 26px 60px rgba(22,20,58,.11)}
.plan-featured{color:white;background:radial-gradient(circle at 92% 8%,rgba(143,216,236,.16),transparent 24%),radial-gradient(circle at 3% 100%,rgba(16,185,106,.14),transparent 28%),linear-gradient(150deg,#16143A,#292458 66%,#173a31);border:1px solid rgba(255,255,255,.08);box-shadow:0 28px 66px rgba(22,20,58,.20)}
.plan-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;position:relative;z-index:1}
.plan-head>span{font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;color:var(--text-muted);padding-top:7px}
.plan-featured .plan-head>span{color:rgba(255,255,255,.72)}
.plan-price{text-align:right;white-space:nowrap}.plan-price b{display:block;font-size:2.25rem;line-height:1;letter-spacing:-.055em}.plan-price small{display:block;margin-top:7px;color:var(--text-muted);font-size:.65rem}.plan-featured .plan-price small{color:rgba(255,255,255,.6)}
.plan-card>p{margin:26px 0 20px;color:var(--text-muted);font-size:.83rem;line-height:1.7;max-width:34ch;position:relative;z-index:1}.plan-featured>p{color:rgba(255,255,255,.72)}
.plan-card ul{list-style:none;padding:18px 0 0;margin:0 0 26px;border-top:1px solid rgba(226,212,198,.75);display:grid;gap:12px;position:relative;z-index:1}.plan-featured ul{border-top-color:rgba(255,255,255,.13)}
.plan-card li{position:relative;padding-left:25px;font-size:.78rem;line-height:1.55;color:var(--text-muted)}.plan-featured li{color:rgba(255,255,255,.78)}
.plan-card li::before{content:"✓";position:absolute;left:0;top:0;color:var(--text-green);font-weight:700}.plan-featured li::before{color:#8ff0be}
.plan-cta{margin-top:auto;min-height:52px;width:100%;padding:0 18px;border-radius:16px;display:inline-flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.62);border:1px solid rgba(255,255,255,.9);box-shadow:0 12px 28px rgba(22,20,58,.08);font-size:.86rem;font-weight:600;position:relative;z-index:1;transition:.24s ease}
.plan-cta:hover{background:white;transform:translateY(-2px)}.plan-cta i{font-style:normal;font-size:1.05rem}
.plan-cta-light{background:linear-gradient(135deg,#7C4DFF,#5A7BD8);color:white;border-color:rgba(255,255,255,.12);box-shadow:0 15px 32px rgba(106,61,240,.25)}.plan-cta-light:hover{background:linear-gradient(135deg,#7144ee,#5274d2);color:white}

/* Waitlist fields requested by the founders. */
.waitlist-card{grid-template-columns:.82fr 1.18fr;gap:42px}
.waitlist-form{padding:22px}
.waitlist-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.waitlist-form label{min-width:0}
.waitlist-form input,.waitlist-form select,.waitlist-form textarea{width:100%;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.08);color:white;padding:13px 14px;border-radius:14px;outline:0;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
.waitlist-form select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,rgba(255,255,255,.65) 50%),linear-gradient(135deg,rgba(255,255,255,.65) 50%,transparent 50%);background-position:calc(100% - 18px) 19px,calc(100% - 13px) 19px;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:35px}
.waitlist-form select option{color:var(--night);background:white}
.waitlist-form textarea{resize:vertical;min-height:92px;line-height:1.5}
.waitlist-form input::placeholder,.waitlist-form textarea::placeholder{color:rgba(255,255,255,.42)}
.waitlist-form input:focus,.waitlist-form select:focus,.waitlist-form textarea:focus{border-color:rgba(143,216,236,.55);box-shadow:0 0 0 4px rgba(143,216,236,.08);background:rgba(255,255,255,.105)}
.waitlist-interest{grid-column:1/-1}
.waitlist-form>.btn{width:100%;margin-top:2px}
.form-note{margin:0;color:rgba(255,255,255,.48);font-size:.61rem;line-height:1.5}

@media (max-width:980px){
  .plans-grid{grid-template-columns:1fr 1fr}.plan-card:last-child{grid-column:1/-1;min-height:auto}
  .waitlist-card{grid-template-columns:1fr}
}
@media (max-width:680px){
  .brand-logo-img{width:32px;height:25px}
  .quality-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.quality-row b{grid-column:1/2;font-size:.61rem}.quality-row .grade{grid-column:2;grid-row:1/3;align-self:center}
  .plans{padding-bottom:88px}.plans-grid{grid-template-columns:1fr;gap:14px}.plan-card,.plan-card:last-child{grid-column:auto;min-height:0;padding:22px;border-radius:25px}.plan-price b{font-size:2rem}.plan-card>p{margin-top:20px}.plan-card ul{margin-bottom:22px}
  .waitlist-fields{grid-template-columns:1fr}.waitlist-interest{grid-column:auto}.waitlist-form{padding:16px}.form-note{font-size:.6rem}
}


/* ===== Production clean pass, based on stira-founder-feedback-pass ===== */

/* Who it's for — intentionally calm, open, and free of boxed bullet clutter. */
.audience-clean{padding-bottom:130px}
.audience-clean-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
.audience-clean-card{
  min-height:520px;
  position:relative;
  overflow:hidden;
  border-radius:32px;
  padding:34px;
  display:flex;
  flex-direction:column;
  border:1px solid rgba(226,212,198,.82);
  background:
    radial-gradient(circle at 92% 8%,rgba(143,216,236,.13),transparent 27%),
    linear-gradient(145deg,rgba(255,255,255,.70),rgba(255,255,255,.36));
  box-shadow:0 18px 50px rgba(22,20,58,.07);
  backdrop-filter:blur(20px) saturate(135%);
  -webkit-backdrop-filter:blur(20px) saturate(135%);
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.audience-clean-consultants{
  color:white;
  border-color:rgba(255,255,255,.09);
  background:
    radial-gradient(circle at 88% 12%,rgba(143,216,236,.16),transparent 28%),
    radial-gradient(circle at 4% 96%,rgba(16,185,106,.13),transparent 30%),
    linear-gradient(150deg,#171536,#272252 66%,#183a31);
  box-shadow:0 24px 60px rgba(22,20,58,.17);
}
@media (hover:hover) and (pointer:fine){
  .audience-clean-card:hover{transform:translateY(-5px);box-shadow:0 26px 64px rgba(22,20,58,.11)}
  .audience-clean-consultants:hover{box-shadow:0 30px 70px rgba(22,20,58,.22)}
}
.audience-clean-top{display:grid;grid-template-columns:54px 1fr;gap:15px;align-items:start}
.audience-clean-icon{
  width:54px;height:54px;border-radius:17px;display:grid;place-items:center;
  background:rgba(124,77,255,.09);border:1px solid rgba(124,77,255,.09);
  color:var(--violet-deep);font-size:1.05rem;
}
.audience-clean-consultants .audience-clean-icon{
  background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.13);color:#9ee7d0;
}
.audience-clean-kicker{
  display:block;margin:3px 0 7px;font-size:.61rem;letter-spacing:.14em;text-transform:uppercase;
  font-weight:700;color:var(--text-muted);
}
.audience-clean-consultants .audience-clean-kicker{color:rgba(255,255,255,.56)}
.audience-clean-card h3{
  margin:0;font-size:clamp(1.55rem,2.6vw,2.15rem);line-height:1.12;letter-spacing:-.045em;font-weight:600;
}
.audience-clean-lead{
  margin:30px 0 28px;max-width:42ch;font-size:.86rem;line-height:1.78;color:var(--text-muted)
}
.audience-clean-consultants .audience-clean-lead{color:rgba(255,255,255,.66)}
.audience-clean-list{border-top:1px solid rgba(226,212,198,.8)}
.audience-clean-consultants .audience-clean-list{border-top-color:rgba(255,255,255,.10)}
.audience-clean-list>div{
  display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:start;
  padding:17px 0;border-bottom:1px solid rgba(226,212,198,.66);
}
.audience-clean-consultants .audience-clean-list>div{border-bottom-color:rgba(255,255,255,.09)}
.audience-clean-list span{
  font-size:.55rem;letter-spacing:.11em;color:var(--violet-deep);font-weight:700;padding-top:4px
}
.audience-clean-consultants .audience-clean-list span{color:#87dec0}
.audience-clean-list p{margin:0;font-size:.82rem;line-height:1.55;color:var(--text-muted)}
.audience-clean-consultants .audience-clean-list p{color:rgba(255,255,255,.78)}
.clean-link{
  margin-top:auto;padding-top:28px;display:inline-flex;align-items:center;justify-content:space-between;
  color:var(--night);font-size:.84rem;font-weight:600;
}
.clean-link i{
  font-style:normal;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;
  background:rgba(124,77,255,.09);transition:transform .22s ease,background .22s ease;
}
.clean-link-light{color:white}.clean-link-light i{background:rgba(255,255,255,.10)}
.clean-link:hover i{transform:translateX(3px);background:rgba(124,77,255,.14)}
.clean-link-light:hover i{background:rgba(255,255,255,.16)}
.early-clean{
  margin-top:18px;border-radius:26px;padding:24px 28px;display:flex;align-items:center;justify-content:space-between;gap:28px;
  border:1px solid rgba(226,212,198,.82);background:rgba(255,255,255,.38);backdrop-filter:blur(16px);
}
.early-clean>div{display:grid;grid-template-columns:auto auto 1fr;gap:14px;align-items:center}
.early-clean span{font-size:.59rem;letter-spacing:.13em;text-transform:uppercase;color:var(--violet-deep);font-weight:700}
.early-clean strong{font-size:.85rem}.early-clean p{margin:0;color:var(--text-muted);font-size:.76rem}
.early-clean>a{white-space:nowrap;font-size:.8rem;font-weight:600;display:inline-flex;gap:14px;align-items:center}
.early-clean i{font-style:normal}

/* Pricing — fewer visual boxes, consistent rhythm, same founder-approved plan facts. */
.plans-clean{padding-bottom:130px}
.plans-clean-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.plan-clean-card{
  min-height:500px;padding:31px;border-radius:30px;position:relative;overflow:hidden;
  display:flex;flex-direction:column;
  border:1px solid rgba(226,212,198,.82);
  background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(255,255,255,.38));
  box-shadow:0 18px 50px rgba(22,20,58,.07);
  backdrop-filter:blur(20px) saturate(135%);
  -webkit-backdrop-filter:blur(20px) saturate(135%);
  transition:transform .28s ease,box-shadow .28s ease;
}
.plan-clean-card::after{
  content:"";position:absolute;width:230px;height:230px;right:-130px;bottom:-150px;border-radius:50%;
  background:radial-gradient(circle,rgba(124,77,255,.09),transparent 67%);pointer-events:none;
}
.plan-clean-featured{
  color:white;border-color:rgba(255,255,255,.09);
  background:
    radial-gradient(circle at 92% 9%,rgba(143,216,236,.15),transparent 27%),
    radial-gradient(circle at 4% 100%,rgba(16,185,106,.13),transparent 31%),
    linear-gradient(150deg,#171536,#282353 66%,#183a31);
  box-shadow:0 26px 64px rgba(22,20,58,.19);
}
@media (hover:hover) and (pointer:fine){
  .plan-clean-card:hover{transform:translateY(-5px);box-shadow:0 28px 66px rgba(22,20,58,.12)}
  .plan-clean-featured:hover{box-shadow:0 32px 72px rgba(22,20,58,.24)}
}
.plan-clean-badge{
  position:absolute;top:18px;right:18px;border-radius:999px;padding:6px 9px;
  font-size:.48rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;
  background:rgba(16,185,106,.12);border:1px solid rgba(16,185,106,.18);color:#a9edcf;
}
.plan-clean-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;position:relative;z-index:1}
.plan-clean-heading>span{
  padding-top:7px;font-size:.67rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--text-muted)
}
.plan-clean-featured .plan-clean-heading>span{color:rgba(255,255,255,.66)}
.plan-clean-price{text-align:right;white-space:nowrap}
.plan-clean-price b{display:block;font-size:2.7rem;line-height:.92;letter-spacing:-.065em;font-weight:600}
.plan-clean-price small{display:block;margin-top:8px;font-size:.62rem;color:var(--text-muted)}
.plan-clean-featured .plan-clean-price small{color:rgba(255,255,255,.55)}
.plan-clean-purpose{
  margin:35px 0 26px;min-height:70px;font-size:.82rem;line-height:1.7;color:var(--text-muted);max-width:34ch;
  position:relative;z-index:1;
}
.plan-clean-featured .plan-clean-purpose{color:rgba(255,255,255,.69)}
.plan-clean-facts{
  display:grid;grid-template-columns:1fr 1fr;gap:0;padding:18px 0;
  border-top:1px solid rgba(226,212,198,.75);border-bottom:1px solid rgba(226,212,198,.75);
  position:relative;z-index:1;
}
.plan-clean-featured .plan-clean-facts{border-color:rgba(255,255,255,.11)}
.plan-clean-facts>div{padding-right:14px}
.plan-clean-facts>div+div{padding-left:16px;border-left:1px solid rgba(226,212,198,.75)}
.plan-clean-featured .plan-clean-facts>div+div{border-left-color:rgba(255,255,255,.11)}
.plan-clean-facts b{display:block;font-size:1.08rem;letter-spacing:-.035em}
.plan-clean-facts span{display:block;margin-top:4px;font-size:.58rem;line-height:1.45;color:var(--text-muted)}
.plan-clean-featured .plan-clean-facts span{color:rgba(255,255,255,.55)}
.plan-clean-list{list-style:none;padding:22px 0 0;margin:0 0 26px;display:grid;gap:13px;position:relative;z-index:1}
.plan-clean-list li{position:relative;padding-left:20px;font-size:.75rem;line-height:1.52;color:var(--text-muted)}
.plan-clean-list li::before{
  content:"";position:absolute;left:0;top:.52em;width:7px;height:7px;border-radius:50%;background:var(--leaf);
  box-shadow:0 0 0 5px rgba(16,185,106,.07)
}
.plan-clean-featured .plan-clean-list li{color:rgba(255,255,255,.76)}
.plan-clean-featured .plan-clean-list li::before{background:#82e3b5;box-shadow:0 0 0 5px rgba(130,227,181,.08)}
.plan-clean-cta{
  margin-top:auto;min-height:52px;border-radius:16px;padding:0 17px;display:flex;align-items:center;justify-content:space-between;
  border:1px solid rgba(226,212,198,.82);background:rgba(255,255,255,.50);font-size:.82rem;font-weight:600;
  position:relative;z-index:1;transition:transform .22s ease,background .22s ease,box-shadow .22s ease;
}
.plan-clean-cta i{font-style:normal}.plan-clean-cta:hover{transform:translateY(-2px);background:rgba(255,255,255,.78)}
.plan-clean-cta-light{
  color:white;border-color:rgba(255,255,255,.12);
  background:linear-gradient(135deg,#7042f2,#5a7bd8);box-shadow:0 13px 30px rgba(106,61,240,.22)
}
.plan-clean-cta-light:hover{background:linear-gradient(135deg,#7649f4,#6382da)}
.plans-clean-footnote{margin:16px 2px 0;color:var(--text-muted);font-size:.65rem}

/* Keep the waitlist form invisible honeypot out of layout/accessibility flow. */
.stira-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* Hide the superseded founder-pass audience/pricing rules if old cached selectors remain. */
.audience-primary,.early-access-panel,.plans-grid{}

/* Production form state. */
.waitlist-form button[disabled]{opacity:.65;cursor:wait;transform:none!important}
.form-status{min-height:1.4em}

/* Mobile clean-up. */
@media (max-width:980px){
  .audience-clean-grid,.plans-clean-grid{grid-template-columns:1fr}
  .audience-clean-card,.plan-clean-card{min-height:0}
  .plan-clean-purpose{min-height:0}
}
@media (max-width:680px){
  .audience-clean{padding-bottom:88px}
  .audience-clean-card{padding:23px;border-radius:25px}
  .audience-clean-top{grid-template-columns:46px 1fr;gap:12px}
  .audience-clean-icon{width:46px;height:46px;border-radius:14px}
  .audience-clean-card h3{font-size:1.32rem}
  .audience-clean-lead{margin:24px 0 20px;font-size:.79rem;line-height:1.7}
  .audience-clean-list>div{padding:14px 0}
  .audience-clean-list p{font-size:.76rem}
  .clean-link{padding-top:22px}
  .early-clean{padding:20px;border-radius:22px;display:block}
  .early-clean>div{display:block}
  .early-clean span,.early-clean strong,.early-clean p{display:block}
  .early-clean strong{margin-top:7px}.early-clean p{margin-top:7px;line-height:1.6}
  .early-clean>a{margin-top:16px}

  .plans-clean{padding-bottom:88px}
  .plan-clean-card{padding:23px;border-radius:25px}
  .plan-clean-price b{font-size:2.35rem}
  .plan-clean-purpose{margin:28px 0 22px}
  .plan-clean-facts{padding:16px 0}
  .plan-clean-list{padding-top:19px}
}

/* Founder pass responsive motion is preserved; only remove motion when the user asks the OS to. */
@media (prefers-reduced-motion:reduce){
  .audience-clean-card,.plan-clean-card,.clean-link i,.plan-clean-cta{transition:none!important}
}


/* ===== Audience v3 + adaptive colour theme ===== */
html{color-scheme:light}
html[data-theme="dark"]{color-scheme:dark}

.audience-v3{padding-bottom:130px}
.audience-v3-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.persona-card{
  min-height:530px;border-radius:34px;padding:26px;position:relative;overflow:hidden;
  display:grid;grid-template-rows:245px 1fr;gap:24px;
  border:1px solid rgba(226,212,198,.78);
  background:linear-gradient(145deg,rgba(255,255,255,.68),rgba(255,255,255,.34));
  box-shadow:0 20px 56px rgba(22,20,58,.075);
  backdrop-filter:blur(20px) saturate(135%);-webkit-backdrop-filter:blur(20px) saturate(135%);
  transition:transform .32s cubic-bezier(.2,.75,.25,1),box-shadow .32s ease,border-color .32s ease;
}
.persona-card::after{content:"";position:absolute;inset:auto -90px -110px auto;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(124,77,255,.11),transparent 68%);pointer-events:none}
.persona-consultant{background:radial-gradient(circle at 85% 5%,rgba(143,216,236,.13),transparent 29%),linear-gradient(145deg,rgba(255,255,255,.68),rgba(255,255,255,.35))}
@media (hover:hover) and (pointer:fine){.persona-card:hover{transform:translateY(-6px);box-shadow:0 30px 72px rgba(22,20,58,.12)}}
.persona-visual{position:relative;border-radius:25px;overflow:hidden;border:1px solid rgba(226,212,198,.72);background:radial-gradient(circle at 50% 45%,rgba(124,77,255,.10),rgba(90,123,216,.045) 45%,rgba(255,255,255,.38) 72%)}
.persona-visual-team{isolation:isolate}
.persona-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:104px;height:104px;border-radius:32px;display:grid;place-content:center;text-align:center;background:linear-gradient(145deg,#201d4a,#171536);color:white;box-shadow:0 18px 40px rgba(22,20,58,.20);z-index:4}
.persona-core span{font-size:.56rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.58)}
.persona-core b{font-size:.82rem;margin-top:4px}
.persona-orbit{position:absolute;left:50%;top:50%;border-radius:50%;border:1px solid rgba(124,77,255,.18);transform:translate(-50%,-50%);animation:personaSpin 16s linear infinite}
.persona-orbit::after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;top:11%;left:18%;background:var(--violet);box-shadow:0 0 18px rgba(124,77,255,.55)}
.persona-orbit-a{width:190px;height:190px}.persona-orbit-b{width:148px;height:148px;animation-direction:reverse;animation-duration:12s;border-color:rgba(16,185,106,.17)}
.persona-orbit-b::after{left:auto;right:11%;top:auto;bottom:15%;background:var(--leaf);box-shadow:0 0 18px rgba(16,185,106,.45)}
@keyframes personaSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
.persona-node{position:absolute;z-index:5;display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.75);border:1px solid rgba(226,212,198,.72);box-shadow:0 9px 24px rgba(22,20,58,.06);font-size:.58rem;color:var(--text-muted);animation:personaFloat 5.5s ease-in-out infinite}
.persona-node i{width:7px;height:7px;border-radius:50%;background:var(--violet)}
.node-sustainability{left:9%;top:16%}.node-finance{right:8%;top:25%;animation-delay:-1.7s}.node-operations{left:18%;bottom:13%;animation-delay:-3.3s}.node-finance i{background:var(--blue)}.node-operations i{background:var(--leaf)}
@keyframes personaFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}

.persona-visual-clients{background:radial-gradient(circle at 75% 18%,rgba(90,123,216,.13),transparent 32%),linear-gradient(145deg,rgba(255,255,255,.60),rgba(124,77,255,.05))}
.client-stack{position:absolute;left:9%;right:28%;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:space-between;padding:0 15px;background:rgba(255,255,255,.75);border:1px solid rgba(226,212,198,.72);box-shadow:0 10px 25px rgba(22,20,58,.06);font-size:.63rem;animation:clientBreathe 6s ease-in-out infinite}
.client-stack span{font-weight:600}.client-stack i{font-style:normal;font-size:.56rem;color:var(--text-muted)}
.client-stack-a{top:20%;z-index:3}.client-stack-b{top:42%;left:14%;right:23%;z-index:2;animation-delay:-2s}.client-stack-c{top:64%;left:19%;right:18%;z-index:1;animation-delay:-4s}
@keyframes clientBreathe{0%,100%{transform:translateX(0)}50%{transform:translateX(8px)}}
.portfolio-bubble{position:absolute;right:8%;top:31%;width:80px;height:80px;border-radius:26px;display:grid;place-content:center;text-align:center;background:linear-gradient(145deg,#6f43f0,#557bd7);color:white;box-shadow:0 17px 35px rgba(106,61,240,.22);z-index:5;animation:portfolioPulse 4.8s ease-in-out infinite}
.portfolio-bubble b{font-size:1.2rem;line-height:1}.portfolio-bubble span{font-size:.48rem;text-transform:uppercase;letter-spacing:.1em;margin-top:5px;color:rgba(255,255,255,.72)}
.portfolio-line{position:absolute;right:19%;top:50%;width:70px;height:1px;background:linear-gradient(90deg,rgba(124,77,255,.15),rgba(124,77,255,.72));transform-origin:right;animation:portfolioLine 3s ease-in-out infinite}
@keyframes portfolioPulse{50%{transform:translateY(-6px) scale(1.03)}}@keyframes portfolioLine{50%{opacity:.4;transform:scaleX(.72)}}
.persona-copy{padding:0 6px 4px;position:relative;z-index:2}
.persona-kicker{display:block;font-size:.59rem;letter-spacing:.14em;text-transform:uppercase;color:var(--violet-deep);font-weight:700;margin-bottom:10px}
.persona-copy h3{font-size:clamp(1.5rem,2.4vw,2.08rem);line-height:1.12;letter-spacing:-.045em;margin:0 0 14px;font-weight:600}
.persona-copy>p{font-size:.82rem;line-height:1.72;color:var(--text-muted);max-width:48ch;margin:0}
.persona-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.persona-tags span{padding:7px 10px;border-radius:999px;font-size:.57rem;color:var(--text-muted);border:1px solid rgba(226,212,198,.72);background:rgba(255,255,255,.40)}

/* Slightly stronger footer brand and Material-like theme control. */
.footer-brand{font-size:1.12rem}.footer-brand .brand-logo-img{width:38px;height:30px}.footer-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px}.theme-toggle{appearance:none;border:1px solid rgba(226,212,198,.82);background:rgba(255,255,255,.46);color:var(--night);height:42px;padding:0 14px 0 10px;border-radius:15px;display:inline-flex;align-items:center;gap:9px;font:600 .68rem/1 "Poppins",sans-serif;cursor:pointer;box-shadow:0 7px 20px rgba(22,20,58,.055);backdrop-filter:blur(14px);transition:transform .2s ease,background .2s ease,border-color .2s ease}
.theme-toggle:hover{transform:translateY(-2px);background:rgba(255,255,255,.72)}.theme-toggle:active{transform:scale(.97)}
.theme-toggle-icon{width:28px;height:28px;border-radius:10px;display:grid;place-items:center;background:rgba(124,77,255,.10);color:var(--violet-deep)}
.theme-icon{grid-area:1/1;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:opacity .2s ease,transform .25s ease}
.theme-icon-moon{opacity:0;transform:rotate(-25deg) scale(.7)}html[data-theme="dark"] .theme-icon-sun{opacity:0;transform:rotate(25deg) scale(.7)}html[data-theme="dark"] .theme-icon-moon{opacity:1;transform:none}

/* Dark mode: follow device preference by default; JS can persist a manual override. */
html[data-theme="dark"]{--cream:#11111a;--night:#F5F1FA;--white:#171722;--text-muted:#B8B2C9;--border:#312E40;--glass:rgba(30,29,43,.62);--glass-strong:rgba(35,34,48,.78);--shadow:0 20px 56px rgba(0,0,0,.28),0 2px 10px rgba(0,0,0,.20);--shadow-soft:0 16px 40px rgba(0,0,0,.23);--text-green:#72DEAB;--text-orange:#FFB16C}
html[data-theme="dark"] body{background:#11111a;color:#F5F1FA}
html[data-theme="dark"] body::before{background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 35%,rgba(124,77,255,.05))}
html[data-theme="dark"] .topbar{background:rgba(17,17,26,.72);border-color:rgba(255,255,255,.08);box-shadow:0 10px 35px rgba(0,0,0,.24)}
html[data-theme="dark"] .brand span{background:linear-gradient(100deg,#fff 5%,#9b7cff 82%);-webkit-background-clip:text;background-clip:text;color:transparent}
html[data-theme="dark"] .desktop-nav{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.07)}
html[data-theme="dark"] .desktop-nav a:hover{background:rgba(255,255,255,.08);color:#fff}
html[data-theme="dark"] .btn-glass{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.10);color:#F5F1FA;box-shadow:0 8px 24px rgba(0,0,0,.15)}
html[data-theme="dark"] .glass,html[data-theme="dark"] .workflow-step,html[data-theme="dark"] .persona-card,html[data-theme="dark"] .plan-clean-card:not(.plan-clean-featured){background:linear-gradient(145deg,rgba(35,34,48,.78),rgba(24,23,34,.58));border-color:rgba(255,255,255,.075);box-shadow:0 20px 55px rgba(0,0,0,.24)}
html[data-theme="dark"] .dashboard-card::after{background:linear-gradient(115deg,rgba(255,255,255,.06),transparent 30%,transparent 70%,rgba(255,255,255,.035))}
html[data-theme="dark"] .metric,html[data-theme="dark"] .quality-chip,html[data-theme="dark"] .persona-node,html[data-theme="dark"] .client-stack{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.075);box-shadow:0 8px 22px rgba(0,0,0,.14)}
html[data-theme="dark"] .chart-wrap,html[data-theme="dark"] .target-mini,html[data-theme="dark"] .persona-visual{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.065)}
html[data-theme="dark"] .chart-grid{background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:100% 34px,70px 100%}
html[data-theme="dark"] .scope-ring::before{background:#1b1a26}
html[data-theme="dark"] .signal-strip,html[data-theme="dark"] .workflow-grid{background:rgba(255,255,255,.025);border-color:rgba(255,255,255,.065);box-shadow:0 24px 70px rgba(0,0,0,.16)}
html[data-theme="dark"] .signal-item:hover{background:rgba(255,255,255,.055)}
html[data-theme="dark"] .workflow-step:hover{background:rgba(43,42,58,.88)}
html[data-theme="dark"] .persona-tags span{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.075)}
html[data-theme="dark"] .plan-clean-facts,html[data-theme="dark"] .plan-clean-facts>div+div{border-color:rgba(255,255,255,.085)}
html[data-theme="dark"] .plan-clean-cta:not(.plan-clean-cta-light){background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.09);color:#F5F1FA}
html[data-theme="dark"] .plan-clean-cta:not(.plan-clean-cta-light):hover{background:rgba(255,255,255,.09)}
html[data-theme="dark"] .waitlist-form input,html[data-theme="dark"] .waitlist-form select,html[data-theme="dark"] .waitlist-form textarea{color:#fff}
html[data-theme="dark"] .footer{color:#AAA5BA}
html[data-theme="dark"] .theme-toggle{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.085);color:#F5F1FA;box-shadow:0 8px 20px rgba(0,0,0,.17)}
html[data-theme="dark"] .theme-toggle:hover{background:rgba(255,255,255,.09)}
html[data-theme="dark"] .theme-toggle-icon{background:rgba(124,77,255,.16);color:#A98CFF}

@media(max-width:980px){.audience-v3-grid{grid-template-columns:1fr}.persona-card{min-height:0}.footer{grid-template-columns:1fr 1fr}.footer-actions{justify-content:flex-start}}
@media(max-width:680px){.audience-v3{padding-bottom:88px}.persona-card{grid-template-rows:210px auto;padding:19px;border-radius:27px;gap:19px}.persona-visual{border-radius:21px}.persona-core{width:90px;height:90px;border-radius:28px}.persona-orbit-a{width:166px;height:166px}.persona-orbit-b{width:128px;height:128px}.persona-node{font-size:.52rem;padding:7px 8px}.node-sustainability{left:5%;top:12%}.node-finance{right:5%;top:23%}.node-operations{left:10%;bottom:10%}.client-stack{left:6%;right:30%;height:46px;padding:0 11px}.client-stack-b{left:11%;right:25%}.client-stack-c{left:16%;right:20%}.portfolio-bubble{width:70px;height:70px;border-radius:23px;right:6%}.persona-copy{padding:0 3px 4px}.persona-copy h3{font-size:1.34rem}.persona-copy>p{font-size:.77rem}.persona-tags{margin-top:18px}.persona-tags span{font-size:.52rem;padding:6px 8px}.footer-brand{font-size:1.08rem}.footer-brand .brand-logo-img{width:36px;height:29px}.footer-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:6px}.theme-toggle{height:40px}.footer small{font-size:.6rem}}


/* ===== Dark theme contrast pass v2 =====
   Keep the founder-pass layout/motion exactly as-is; only correct dark surfaces/contrast. */

html[data-theme="dark"] .ecosystem{
  background:
    radial-gradient(circle at 8% 5%,rgba(124,77,255,.10),transparent 30%),
    radial-gradient(circle at 94% 94%,rgba(16,185,106,.07),transparent 31%),
    linear-gradient(155deg,rgba(31,30,44,.88),rgba(19,18,29,.82));
  border-color:rgba(255,255,255,.075);
  box-shadow:0 24px 66px rgba(0,0,0,.25);
}
html[data-theme="dark"] .ecosystem-pills span{
  background:rgba(255,255,255,.055);
  border-color:rgba(255,255,255,.085);
  color:#EDE9F5;
  box-shadow:none;
}

/* Product cards: remove the pale-grey islands that became unreadable in dark mode. */
html[data-theme="dark"] .quality-row{
  background:rgba(255,255,255,.045);
  border-color:rgba(255,255,255,.075);
  color:#F3EFF8;
}
html[data-theme="dark"] .quality-row b{color:#AFA9BF}
html[data-theme="dark"] .muted-row{opacity:.86}
html[data-theme="dark"] .grade-a{
  background:rgba(16,185,106,.13);
  color:#80E5B6;
}
html[data-theme="dark"] .grade-b{
  background:rgba(90,123,216,.15);
  color:#9EB6FF;
}
html[data-theme="dark"] .grade-c,
html[data-theme="dark"] .grade-e{
  background:rgba(240,122,30,.14);
  color:#FFC08B;
}
html[data-theme="dark"] .hotspot-visual .bar{background:rgba(255,255,255,.055)}

/* Animated Measure / Understand / Act / Report graphics. */
html[data-theme="dark"] .step-tag{
  background:rgba(255,255,255,.055);
  border-color:rgba(255,255,255,.085);
  color:#BEB8CD;
}
html[data-theme="dark"] .step-graphic{
  background:
    radial-gradient(circle at 88% 16%,rgba(124,77,255,.08),transparent 32%),
    linear-gradient(145deg,rgba(36,35,50,.92),rgba(23,22,34,.80));
  border-color:rgba(255,255,255,.08);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.055),
    0 14px 34px rgba(0,0,0,.20);
}
html[data-theme="dark"] .source-chip{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.085);
  color:#D2CDDC;
  box-shadow:0 7px 18px rgba(0,0,0,.10);
}
html[data-theme="dark"] .hotspot-ring::before{
  background:#201F2D;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.065);
}
html[data-theme="dark"] .hotspot-ring span{color:#F7F4FA}
html[data-theme="dark"] .hotspot-ring small{color:#AAA4BA}
html[data-theme="dark"] .insight-bars{
  border-bottom-color:rgba(255,255,255,.09);
}
html[data-theme="dark"] .target-track{background:rgba(255,255,255,.075)}
html[data-theme="dark"] .act-stats>span{
  background:rgba(255,255,255,.055);
  border-color:rgba(255,255,255,.075);
}
html[data-theme="dark"] .act-stats small{color:#AAA4BA}
html[data-theme="dark"] .report-sheet{
  background:rgba(255,255,255,.075);
  border-color:rgba(255,255,255,.09);
  box-shadow:0 14px 28px rgba(0,0,0,.20);
}
html[data-theme="dark"] .report-sheet i{background:rgba(255,255,255,.14)}
html[data-theme="dark"] .report-check{
  background:rgba(16,185,106,.15);
  color:#86E8B9;
}

/* Waitlist: the previous light CTA inherited --night after --night became white,
   producing a blank white-on-white button. Give it an explicit dark-theme treatment. */
html[data-theme="dark"] .waitlist-form{
  background:rgba(8,8,18,.20);
  border-color:rgba(255,255,255,.11);
}
html[data-theme="dark"] .waitlist-form input,
html[data-theme="dark"] .waitlist-form select,
html[data-theme="dark"] .waitlist-form textarea{
  background:rgba(255,255,255,.065);
  border-color:rgba(255,255,255,.12);
  color:#FBF9FD;
}
html[data-theme="dark"] .waitlist-form input::placeholder,
html[data-theme="dark"] .waitlist-form textarea::placeholder{
  color:rgba(245,241,250,.48);
}
html[data-theme="dark"] .waitlist-form input:focus,
html[data-theme="dark"] .waitlist-form select:focus,
html[data-theme="dark"] .waitlist-form textarea:focus{
  background:rgba(255,255,255,.085);
  border-color:rgba(143,216,236,.52);
  box-shadow:0 0 0 4px rgba(143,216,236,.08);
}
html[data-theme="dark"] .waitlist-form select option{
  color:#16143A;
  background:#FFFFFF;
}
html[data-theme="dark"] .waitlist-form>.btn-light{
  color:#FFFFFF;
  background:linear-gradient(135deg,#7042F2 0%,#7C4DFF 52%,#5A7BD8 100%);
  box-shadow:0 14px 34px rgba(106,61,240,.30),inset 0 1px rgba(255,255,255,.20);
}
html[data-theme="dark"] .waitlist-form>.btn-light:hover{
  background:linear-gradient(135deg,#7950F5 0%,#8459FF 52%,#6484DE 100%);
  box-shadow:0 17px 40px rgba(106,61,240,.36),inset 0 1px rgba(255,255,255,.22);
}
html[data-theme="dark"] .form-note{color:rgba(255,255,255,.60)}
html[data-theme="dark"] .form-status{color:#A8F0CF}

/* Footer polish in dark mode. */
html[data-theme="dark"] .footer-links a{color:#B8B2C9}
html[data-theme="dark"] .footer-links a:hover{color:#FFFFFF}
html[data-theme="dark"] .footer-copy{color:#AFAAbe}

/* Hash navigation should clear the floating mobile header. */
@media (max-width:680px){
  #product,#how,#pricing,#waitlist,#audience{scroll-margin-top:148px}
}


/* ===== Semantic animation pass =====
   Remove decorative dotted connectors. Motion now communicates state/progression,
   and both visuals scale from narrow phones to wide desktop cards. */

/* Connected workflow: modules share one record without fake network lines. */
.ecosystem-semantic{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-template-rows:1fr 1.2fr 1fr;
  align-items:center;
  justify-items:center;
  gap:clamp(8px,1.8vw,18px);
  padding:clamp(16px,2.8vw,30px);
  min-height:clamp(360px,42vw,470px)!important;
  isolation:isolate;
}
.ecosystem-semantic::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:clamp(180px,44%,290px);
  aspect-ratio:1;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(circle,rgba(124,77,255,.12),rgba(90,123,216,.055) 44%,transparent 72%);
  filter:blur(2px);
  pointer-events:none;
  animation:ecoSemanticHalo 6.8s ease-in-out infinite;
}
.ecosystem-semantic .ecosystem-svg{display:none!important}
.eco-core-shell{
  grid-column:2;
  grid-row:2;
  width:clamp(112px,13vw,154px);
  aspect-ratio:1;
  position:relative;
  display:grid;
  place-items:center;
  align-self:center;
  justify-self:center;
  z-index:4;
}
.eco-core-glow{
  position:absolute;
  inset:-24%;
  border-radius:50%;
  background:
    radial-gradient(circle,rgba(143,216,236,.42) 0 9%,rgba(124,77,255,.37) 24%,rgba(16,185,106,.24) 48%,transparent 72%);
  filter:blur(9px);
  animation:ecoCoreBreathe 5.4s ease-in-out infinite;
}
.ecosystem-semantic .eco-core-label{
  position:relative!important;
  left:auto!important;
  top:auto!important;
  transform:none!important;
  width:100%;
  aspect-ratio:1;
  border-radius:38%;
  display:grid;
  place-content:center;
  text-align:center;
  background:
    radial-gradient(circle at 50% 32%,rgba(143,216,236,.23),transparent 30%),
    linear-gradient(150deg,rgba(41,35,91,.97),rgba(20,29,55,.98) 62%,rgba(17,65,50,.94));
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 20px 48px rgba(0,0,0,.22),inset 0 1px rgba(255,255,255,.08);
  z-index:2;
}
.ecosystem-semantic .eco-core-label b{font-size:clamp(1.02rem,2vw,1.38rem)}
.ecosystem-semantic .eco-core-label small{
  font-size:clamp(.46rem,.82vw,.61rem);
  letter-spacing:.075em;
}
.eco-core-state{
  position:absolute;
  left:50%;
  bottom:-14px;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:6px;
  padding:6px 9px;
  border-radius:999px;
  color:rgba(255,255,255,.72);
  background:rgba(11,14,28,.76);
  border:1px solid rgba(255,255,255,.11);
  backdrop-filter:blur(12px);
  font-size:clamp(.44rem,.72vw,.54rem);
  text-transform:uppercase;
  letter-spacing:.1em;
  white-space:nowrap;
  z-index:5;
}
.eco-core-state i{
  width:6px;height:6px;border-radius:50%;background:#72E5AC;
  box-shadow:0 0 12px rgba(114,229,172,.65);
  animation:ecoStateDot 2.6s ease-in-out infinite;
}
.ecosystem-semantic .eco-node{
  position:relative!important;
  inset:auto!important;
  left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
  transform:none!important;
  width:min(100%,142px);
  min-width:0!important;
  margin:0;
  align-self:center;
  justify-self:center;
  padding:clamp(9px,1.25vw,12px);
  border-radius:clamp(13px,1.8vw,17px);
  animation:ecoModuleFocus 8s ease-in-out infinite!important;
  will-change:transform,box-shadow,border-color;
}
.ecosystem-semantic .node-data{grid-column:1;grid-row:1;animation-delay:0s!important}
.ecosystem-semantic .node-evidence{grid-column:3;grid-row:1;animation-delay:-1.6s!important}
.ecosystem-semantic .node-targets{grid-column:1;grid-row:3;animation-delay:-3.2s!important}
.ecosystem-semantic .node-reports{grid-column:2;grid-row:3;animation-delay:-4.8s!important}
.ecosystem-semantic .node-actions{grid-column:3;grid-row:3;animation-delay:-6.4s!important}
.ecosystem-semantic .eco-node span{transition:box-shadow .3s ease}
@keyframes ecoModuleFocus{
  0%,14%,100%{transform:translateY(0) scale(1);border-color:rgba(255,255,255,.13);box-shadow:0 12px 32px rgba(0,0,0,.10)}
  7%{transform:translateY(-5px) scale(1.025);border-color:rgba(143,216,236,.30);box-shadow:0 18px 38px rgba(0,0,0,.16),0 0 24px rgba(124,77,255,.10)}
}
@keyframes ecoSemanticHalo{50%{transform:translate(-50%,-50%) scale(1.09);opacity:.72}}
@keyframes ecoCoreBreathe{50%{transform:scale(1.08);opacity:.80}}
@keyframes ecoStateDot{50%{opacity:.45;transform:scale(.82)}}

/* Report/evidence illustration: a real bundle of inputs, not three boxes with decorative streams. */
.pathway-semantic{
  height:auto!important;
  min-height:clamp(300px,34vw,420px);
  display:grid;
  align-items:center;
  min-width:0;
}
.pathway-semantic::before{
  inset:clamp(8px,1.5vw,18px)!important;
  border-radius:clamp(24px,3vw,34px)!important;
}
.review-bundle{
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(145px,.82fr);
  align-items:center;
  gap:clamp(14px,2.4vw,28px);
  width:100%;
  padding:clamp(18px,2.7vw,30px);
}
.review-inputs{
  display:grid;
  gap:clamp(9px,1.4vw,14px);
  min-width:0;
}
.review-input{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:clamp(10px,1.5vw,14px);
  align-items:center;
  min-height:clamp(64px,6.4vw,78px);
  padding:clamp(11px,1.6vw,15px);
  border-radius:clamp(15px,2vw,19px);
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 12px 28px rgba(0,0,0,.09);
  backdrop-filter:blur(16px);
  color:white;
  animation:reviewInputFocus 7.2s ease-in-out infinite;
  will-change:transform,border-color,background;
}
.review-input-evidence{animation-delay:-2.4s}
.review-input-notes{animation-delay:-4.8s}
.review-index{
  width:clamp(28px,3.2vw,36px);
  aspect-ratio:1;
  border-radius:11px;
  display:grid;
  place-items:center;
  background:rgba(124,77,255,.16);
  color:#D9CDFF;
  font-size:clamp(.48rem,.7vw,.57rem);
  font-weight:700;
  letter-spacing:.08em;
}
.review-input b,.review-input small{display:block}
.review-input b{
  font-size:clamp(.67rem,1.1vw,.82rem);
  line-height:1.2;
}
.review-input small{
  margin-top:4px;
  color:rgba(255,255,255,.52);
  font-size:clamp(.49rem,.78vw,.59rem);
  line-height:1.3;
}
.review-input>i{
  font-style:normal;
  width:clamp(26px,3vw,34px);
  aspect-ratio:1;
  border-radius:10px;
  display:grid;
  place-items:center;
  background:rgba(16,185,106,.13);
  color:#78E8B1;
  font-weight:700;
  font-size:clamp(.64rem,.92vw,.8rem);
}
.review-state{
  min-height:clamp(190px,22vw,265px);
  border-radius:clamp(22px,2.8vw,30px);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:clamp(18px,2.6vw,28px);
  background:
    radial-gradient(circle at 50% 0,rgba(16,185,106,.15),transparent 38%),
    linear-gradient(150deg,rgba(255,255,255,.11),rgba(255,255,255,.055));
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 20px 45px rgba(0,0,0,.13),inset 0 1px rgba(255,255,255,.06);
  color:white;
  animation:reviewReadyBreathe 7.2s ease-in-out infinite;
}
.review-state-icon{
  width:clamp(54px,7vw,72px);
  aspect-ratio:1;
  border-radius:clamp(17px,2.2vw,23px);
  display:grid;
  place-items:center;
  margin-bottom:clamp(15px,2vw,21px);
  background:rgba(16,185,106,.15);
  color:#73E8AE;
  font-size:clamp(1.25rem,2.5vw,1.8rem);
  box-shadow:0 0 0 0 rgba(16,185,106,.10);
  animation:reviewCheckPulse 3.6s ease-in-out infinite;
}
.review-state small{
  order:-1;
  margin-bottom:10px;
  color:rgba(255,255,255,.46);
  font-size:clamp(.47rem,.72vw,.56rem);
  letter-spacing:.11em;
  text-transform:uppercase;
}
.review-state b{
  font-size:clamp(1rem,1.7vw,1.35rem);
  line-height:1.18;
}
.review-state p{
  margin:7px 0 0;
  color:rgba(255,255,255,.55);
  font-size:clamp(.55rem,.85vw,.67rem);
}
@keyframes reviewInputFocus{
  0%,20%,100%{transform:translateX(0);background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.12)}
  10%{transform:translateX(5px);background:rgba(255,255,255,.105);border-color:rgba(143,216,236,.24)}
}
@keyframes reviewReadyBreathe{
  0%,100%{transform:scale(1);box-shadow:0 20px 45px rgba(0,0,0,.13),inset 0 1px rgba(255,255,255,.06)}
  50%{transform:scale(1.018);box-shadow:0 26px 55px rgba(0,0,0,.18),0 0 35px rgba(16,185,106,.06),inset 0 1px rgba(255,255,255,.08)}
}
@keyframes reviewCheckPulse{
  50%{box-shadow:0 0 0 10px rgba(16,185,106,0);transform:scale(1.035)}
}

/* Explicitly retire old connector art even if a stale HTML fragment survives a partial deploy. */
.pathway-semantic svg,
.pathway-semantic .stream,
.pathway-semantic .document-chip,
.pathway-semantic .verified-node,
.ecosystem-semantic .eco-ring,
.ecosystem-semantic .eco-orbit,
.ecosystem-semantic .eco-flow,
.ecosystem-semantic .eco-particle{
  display:none!important;
}

/* Responsive behaviour: no fixed pixel composition assumptions. */
@media (max-width:760px){
  .ecosystem-semantic{
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-template-rows:1fr 1.15fr 1fr;
    min-height:clamp(340px,105vw,430px)!important;
    gap:8px;
    padding:14px 10px 18px;
  }
  .ecosystem-semantic .eco-node{
    width:min(100%,104px);
    padding:8px;
    grid-template-columns:8px minmax(0,1fr);
    column-gap:6px;
  }
  .ecosystem-semantic .eco-node b{font-size:clamp(.55rem,2.2vw,.66rem)}
  .ecosystem-semantic .eco-node small{font-size:clamp(.43rem,1.75vw,.51rem)}
  .eco-core-shell{width:clamp(104px,29vw,132px)}
  .eco-core-state{bottom:-12px}

  .pathway-semantic{min-height:0!important}
  .review-bundle{
    grid-template-columns:1fr;
    gap:14px;
    padding:12px 5px 6px;
  }
  .review-inputs{gap:9px}
  .review-input{
    min-height:62px;
    padding:11px 12px;
    border-radius:16px;
  }
  .review-state{
    min-height:150px;
    display:grid;
    grid-template-columns:auto 1fr;
    grid-template-rows:auto auto auto;
    column-gap:15px;
    text-align:left;
    align-items:center;
    justify-items:start;
    padding:17px;
    border-radius:21px;
  }
  .review-state-icon{
    grid-column:1;
    grid-row:1/4;
    margin:0;
    width:56px;
    border-radius:18px;
  }
  .review-state small{grid-column:2;grid-row:1;margin:0 0 3px}
  .review-state b{grid-column:2;grid-row:2;font-size:1.05rem}
  .review-state p{grid-column:2;grid-row:3;margin:4px 0 0}
}

@media (max-width:430px){
  .ecosystem-semantic .eco-node small{display:none}
  .ecosystem-semantic .eco-node{
    min-height:44px;
    display:flex;
    justify-content:center;
    align-items:center;
  }
  .ecosystem-semantic .eco-node span{
    grid-row:auto;
    margin:0;
    flex:0 0 auto;
  }
  .ecosystem-semantic .node-reports{width:92px}
  .review-input small{font-size:.52rem}
}

@media (min-width:1200px){
  .ecosystem-semantic{min-height:460px!important}
  .review-bundle{max-width:680px;margin-inline:auto}
}

@media (prefers-reduced-motion:reduce){
  .ecosystem-semantic::after,
  .eco-core-glow,
  .eco-core-state i,
  .ecosystem-semantic .eco-node,
  .review-input,
  .review-state,
  .review-state-icon{
    animation:none!important;
  }
}


/* ===== Connected motion pass =====
   Lines are back, but each path now has a defined meaning:
   inputs -> shared record -> plans/reports; provenance -> figure -> review. */

/* ---------- Connected workflow ---------- */
.ecosystem-connected{
  min-height:clamp(390px,46vw,500px)!important;
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.ecosystem-connected::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:clamp(210px,43%,310px);
  aspect-ratio:1;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(circle,rgba(124,77,255,.12),rgba(90,123,216,.055) 45%,transparent 72%);
  filter:blur(3px);
  animation:ecoConnectedHalo 7s ease-in-out infinite;
  pointer-events:none;
}
.eco-link-map{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  z-index:1;
  pointer-events:none;
  overflow:visible;
}
.eco-link{
  fill:none;
  stroke-linecap:round;
  stroke-width:2.1;
  stroke-dasharray:7 11;
  opacity:.72;
  animation:ecoDashMove 8s linear infinite;
}
.eco-link-in{stroke:url(#ecoInbound)}
.eco-link-out{stroke:url(#ecoOutbound)}
.eco-link-report{
  stroke:url(#ecoOutbound);
  stroke-width:2.5;
  opacity:.88;
}
.eco-flow-dot-cyan{fill:#8FD8EC}
.eco-flow-dot-violet{fill:#9C80FF}
.eco-flow-dot-green{fill:#24D17E}

.ecosystem-connected .eco-core-shell{
  position:absolute;
  left:50%;
  top:50%;
  width:clamp(118px,14vw,160px);
  aspect-ratio:1;
  transform:translate(-50%,-50%);
  display:grid;
  place-items:center;
  z-index:4;
}
.ecosystem-connected .eco-core-glow{
  position:absolute;
  inset:-26%;
  border-radius:50%;
  background:
    radial-gradient(circle,rgba(143,216,236,.34) 0 10%,rgba(124,77,255,.34) 24%,rgba(16,185,106,.22) 48%,transparent 72%);
  filter:blur(10px);
  animation:ecoCoreBreathe 5.2s ease-in-out infinite;
}
.ecosystem-connected .eco-core-label{
  position:relative!important;
  left:auto!important;
  top:auto!important;
  transform:none!important;
  width:100%;
  aspect-ratio:1;
  border-radius:36%;
  display:grid;
  place-content:center;
  text-align:center;
  background:
    radial-gradient(circle at 50% 28%,rgba(143,216,236,.20),transparent 28%),
    linear-gradient(150deg,rgba(41,35,91,.98),rgba(20,29,55,.98) 62%,rgba(17,65,50,.95));
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 20px 50px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.08);
  z-index:2;
}
.ecosystem-connected .eco-core-label b{font-size:clamp(1.05rem,2vw,1.42rem)}
.ecosystem-connected .eco-core-label small{font-size:clamp(.46rem,.82vw,.62rem);letter-spacing:.075em}
.ecosystem-connected .eco-core-state{
  position:absolute;
  left:50%;
  bottom:-15px;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:6px;
  padding:6px 9px;
  border-radius:999px;
  color:rgba(255,255,255,.72);
  background:rgba(11,14,28,.82);
  border:1px solid rgba(255,255,255,.11);
  backdrop-filter:blur(12px);
  font-size:clamp(.44rem,.72vw,.54rem);
  text-transform:uppercase;
  letter-spacing:.1em;
  white-space:nowrap;
  z-index:5;
}
.ecosystem-connected .eco-core-state i{
  width:6px;height:6px;border-radius:50%;background:#72E5AC;
  box-shadow:0 0 12px rgba(114,229,172,.65);
  animation:ecoStateDot 2.6s ease-in-out infinite;
}
.ecosystem-connected .eco-node{
  position:absolute!important;
  width:clamp(108px,16vw,148px);
  min-width:0!important;
  z-index:5;
  margin:0;
  padding:clamp(9px,1.25vw,12px);
  border-radius:clamp(13px,1.8vw,17px);
  animation:ecoNodeFloat 6.8s ease-in-out infinite;
  will-change:transform;
}
.ecosystem-connected .node-data{left:4.5%;top:9%;animation-delay:-.4s}
.ecosystem-connected .node-evidence{right:4.5%;top:9%;animation-delay:-2s}
.ecosystem-connected .node-targets{left:4.5%;bottom:8%;animation-delay:-3.6s}
.ecosystem-connected .node-reports{left:50%;bottom:7%;transform:translateX(-50%);animation:ecoReportFloat 6.8s ease-in-out -4.7s infinite}
.ecosystem-connected .node-actions{right:4.5%;bottom:8%;animation-delay:-5.2s}

@keyframes ecoDashMove{to{stroke-dashoffset:-144}}
@keyframes ecoConnectedHalo{50%{transform:translate(-50%,-50%) scale(1.08);opacity:.78}}
@keyframes ecoNodeFloat{50%{transform:translateY(-6px)}}
@keyframes ecoReportFloat{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,-6px)}}

/* ---------- Figure provenance + review ---------- */
.provenance-map{
  height:auto!important;
  min-height:clamp(330px,36vw,440px);
  aspect-ratio:1.5;
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.provenance-map::before{
  content:"";
  position:absolute;
  inset:clamp(6px,1vw,12px);
  border-radius:clamp(24px,3vw,34px);
  border:1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(circle at 48% 48%,rgba(124,77,255,.10),transparent 31%),
    radial-gradient(circle at 88% 80%,rgba(16,185,106,.08),transparent 28%),
    linear-gradient(150deg,rgba(255,255,255,.025),rgba(255,255,255,.015));
  pointer-events:none;
}
.provenance-links{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  z-index:1;
  pointer-events:none;
}
.prov-link{
  fill:none;
  stroke-linecap:round;
  stroke-width:2.05;
  stroke-dasharray:7 11;
  opacity:.78;
  animation:provDashMove 8.8s linear infinite;
}
.prov-blue{stroke:url(#provBlue)}
.prov-violet{stroke:url(#provViolet)}
.prov-review{
  stroke:url(#provGreen);
  stroke-width:2.7;
  opacity:.9;
  stroke-dasharray:8 10;
}
.dot-blue{fill:#8FD8EC}
.dot-violet{fill:#A58AFF}
.dot-green{fill:#2BDB87}

.prov-source{
  position:absolute;
  z-index:4;
  width:clamp(132px,21vw,190px);
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:10px;
  align-items:center;
  padding:clamp(10px,1.35vw,13px);
  border-radius:clamp(15px,2vw,19px);
  color:white;
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 13px 30px rgba(0,0,0,.11);
  backdrop-filter:blur(15px);
  animation:provSourceFloat 6.6s ease-in-out infinite;
}
.prov-source-icon{
  width:clamp(28px,3.3vw,36px);
  aspect-ratio:1;
  border-radius:11px;
  display:grid;
  place-items:center;
  font-size:clamp(.66rem,1vw,.82rem);
  font-weight:700;
  background:rgba(124,77,255,.16);
  color:#D9CDFF;
}
.prov-source b,.prov-source small{display:block}
.prov-source b{font-size:clamp(.61rem,1vw,.78rem);line-height:1.22}
.prov-source small{margin-top:4px;color:rgba(255,255,255,.50);font-size:clamp(.46rem,.72vw,.57rem);line-height:1.3}

.source-data{left:3.5%;top:7%;animation-delay:-.3s}
.source-evidence{right:3.5%;top:8%;animation-delay:-2.4s}
.source-notes{left:5.5%;bottom:8%;animation-delay:-4.4s}

.prov-figure-card{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  z-index:5;
  width:clamp(150px,22vw,205px);
  min-height:clamp(168px,20vw,210px);
  padding:clamp(17px,2.2vw,23px);
  border-radius:clamp(24px,3vw,31px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  color:white;
  background:
    radial-gradient(circle at 50% 4%,rgba(143,216,236,.15),transparent 30%),
    linear-gradient(150deg,rgba(40,35,91,.96),rgba(27,27,57,.97) 60%,rgba(20,67,55,.92));
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 24px 52px rgba(0,0,0,.22),0 0 42px rgba(124,77,255,.10),inset 0 1px rgba(255,255,255,.08);
  animation:provFigureBreathe 5.4s ease-in-out infinite;
}
.prov-figure-kicker{
  font-size:clamp(.44rem,.67vw,.54rem);
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
.prov-figure-title{
  margin-top:8px;
  font-size:clamp(.8rem,1.35vw,1.05rem);
  letter-spacing:-.02em;
}
.prov-figure-value{display:flex;align-items:baseline;gap:6px;margin-top:13px}
.prov-figure-value strong{font-size:clamp(1.8rem,3.5vw,2.7rem);line-height:.9;letter-spacing:-.06em}
.prov-figure-value small{font-size:clamp(.5rem,.8vw,.62rem);color:rgba(255,255,255,.55)}
.prov-formula{
  margin-top:14px;
  display:flex;
  align-items:center;
  gap:7px;
  font-size:clamp(.47rem,.72vw,.57rem);
  color:rgba(255,255,255,.58);
}
.prov-formula span{
  padding:5px 7px;
  border-radius:8px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.08);
}
.prov-formula i{font-style:normal;color:#9F8AFF}
.prov-source-count{
  margin-top:11px;
  display:flex;
  align-items:center;
  gap:7px;
  font-size:clamp(.46rem,.7vw,.56rem);
  color:rgba(255,255,255,.55);
}
.prov-source-count i{
  width:6px;height:6px;border-radius:50%;background:#70E2AA;
  box-shadow:0 0 10px rgba(112,226,170,.45);
}

.prov-review-card{
  position:absolute;
  right:4%;
  bottom:7%;
  z-index:5;
  width:clamp(145px,21vw,190px);
  min-height:clamp(112px,13vw,138px);
  padding:clamp(14px,1.9vw,19px);
  border-radius:clamp(21px,2.7vw,28px);
  display:grid;
  grid-template-columns:auto 1fr;
  gap:12px;
  align-items:center;
  color:white;
  background:
    radial-gradient(circle at 18% 20%,rgba(16,185,106,.13),transparent 36%),
    linear-gradient(150deg,rgba(255,255,255,.11),rgba(255,255,255,.055));
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 20px 44px rgba(0,0,0,.14),inset 0 1px rgba(255,255,255,.06);
  animation:provReviewPulse 5.8s ease-in-out infinite;
}
.prov-review-check{
  width:clamp(43px,5.6vw,56px);
  aspect-ratio:1;
  border-radius:17px;
  display:grid;
  place-items:center;
  background:rgba(16,185,106,.15);
  color:#75E8B0;
  font-size:clamp(1rem,1.9vw,1.38rem);
  font-weight:700;
}
.prov-review-card small,.prov-review-card b,.prov-review-card p{display:block}
.prov-review-card small{
  margin-bottom:4px;
  font-size:clamp(.43rem,.66vw,.52rem);
  letter-spacing:.1em;
  text-transform:uppercase;
  color:rgba(255,255,255,.45);
}
.prov-review-card b{font-size:clamp(.73rem,1.2vw,.94rem);line-height:1.16}
.prov-review-card p{margin:5px 0 0;font-size:clamp(.47rem,.72vw,.56rem);color:rgba(255,255,255,.52)}

@keyframes provDashMove{to{stroke-dashoffset:-144}}
@keyframes provSourceFloat{50%{transform:translateY(-6px)}}
@keyframes provFigureBreathe{
  50%{transform:translate(-50%,-50%) scale(1.025);box-shadow:0 28px 58px rgba(0,0,0,.26),0 0 52px rgba(124,77,255,.14),inset 0 1px rgba(255,255,255,.10)}
}
@keyframes provReviewPulse{
  50%{transform:translateY(-5px);border-color:rgba(112,226,170,.23);box-shadow:0 24px 52px rgba(0,0,0,.18),0 0 30px rgba(16,185,106,.07)}
}

/* Mobile composition: same logic, taller canvas, no overlaps. */
@media (max-width:760px){
  .ecosystem-connected{
    min-height:clamp(390px,104vw,470px)!important;
  }
  .ecosystem-connected .eco-node{
    width:clamp(94px,27vw,116px);
    padding:8px 9px;
  }
  .ecosystem-connected .eco-node b{font-size:clamp(.56rem,2.25vw,.68rem)}
  .ecosystem-connected .eco-node small{font-size:clamp(.43rem,1.75vw,.52rem)}
  .ecosystem-connected .eco-core-shell{width:clamp(108px,30vw,136px)}
  .ecosystem-connected .node-data{left:4%;top:8%}
  .ecosystem-connected .node-evidence{right:4%;top:8%}
  .ecosystem-connected .node-targets{left:4%;bottom:7%}
  .ecosystem-connected .node-actions{right:4%;bottom:7%}
  .ecosystem-connected .node-reports{bottom:6%}

  .provenance-map{
    min-height:clamp(460px,122vw,570px);
    aspect-ratio:auto;
  }
  .source-data{left:3%;top:5%}
  .source-evidence{right:3%;top:6%}
  .source-notes{left:4%;bottom:8%}
  .prov-source{
    width:clamp(122px,38vw,155px);
    padding:9px 10px;
  }
  .prov-source b{font-size:clamp(.57rem,2.35vw,.7rem)}
  .prov-source small{font-size:clamp(.43rem,1.78vw,.52rem)}
  .prov-figure-card{
    width:clamp(160px,48vw,195px);
    min-height:175px;
    top:49%;
  }
  .prov-review-card{
    width:clamp(150px,41vw,178px);
    right:3%;
    bottom:8%;
    min-height:105px;
  }
}

/* On very narrow phones, keep the labels but trim the secondary prose. */
@media (max-width:420px){
  .ecosystem-connected .eco-node small{display:none}
  .ecosystem-connected .eco-node{width:88px;display:flex;align-items:center;justify-content:center;gap:7px}
  .ecosystem-connected .eco-node span{margin:0}
  .prov-source small{display:none}
  .prov-source{width:118px}
  .prov-figure-card{width:158px}
  .prov-review-card{width:148px}
}

/* Wide desktop: stop the artwork from becoming comically large. */
@media (min-width:1200px){
  .ecosystem-connected{min-height:475px!important}
  .provenance-map{min-height:410px;max-height:440px}
}

/* Reduced motion: keep the semantic paths visible but static. */
@media (prefers-reduced-motion:reduce){
  .eco-link,.prov-link,
  .ecosystem-connected::before,
  .ecosystem-connected .eco-core-glow,
  .ecosystem-connected .eco-core-state i,
  .ecosystem-connected .eco-node,
  .prov-source,.prov-figure-card,.prov-review-card{
    animation:none!important;
  }
  .eco-flow-dot,.prov-dot{display:none!important}
}


/* ===== Product-accurate motion v2 ===== */

/* CONNECTED WORKFLOW
   Actual relationship: Data + Evidence -> shared record -> Targets / Actions / Reports. */
.ecosystem-product-flow{
  position:relative;
  overflow:hidden;
  min-height:clamp(520px,57vw,620px)!important;
  padding:clamp(18px,2.5vw,28px);
  display:grid;
  grid-template-rows:auto 1fr auto;
  isolation:isolate;
}
.ecosystem-product-flow::before{
  content:"";
  position:absolute;left:50%;top:50%;
  width:min(54%,360px);aspect-ratio:1;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(circle,rgba(124,77,255,.11),rgba(90,123,216,.05) 45%,transparent 72%);
  filter:blur(2px);pointer-events:none;
  animation:productHalo2 6.8s ease-in-out infinite;
}
.flow-row{
  position:relative;z-index:5;
  display:grid;align-items:center;
  gap:clamp(10px,1.8vw,18px);
  width:100%;margin:0 auto;
}
.flow-input-row{grid-template-columns:repeat(2,minmax(0,1fr));max-width:600px}
.flow-output-row{grid-template-columns:repeat(3,minmax(0,1fr));max-width:720px}
.ecosystem-product-flow .eco-node{
  position:relative!important;inset:auto!important;transform:none!important;
  width:100%!important;min-width:0!important;max-width:none!important;
  margin:0!important;padding:clamp(10px,1.4vw,13px);
  border-radius:clamp(14px,1.9vw,18px);
  z-index:6;
  animation:productNodeFloat2 6.5s ease-in-out infinite!important;
}
.ecosystem-product-flow .node-data{animation-delay:-.3s!important}
.ecosystem-product-flow .node-evidence{animation-delay:-2.2s!important}
.ecosystem-product-flow .node-targets{animation-delay:-1.1s!important}
.ecosystem-product-flow .node-actions{animation-delay:-3.1s!important}
.ecosystem-product-flow .node-reports{animation-delay:-4.7s!important}

.flow-core-wrap{
  position:relative;
  min-height:clamp(255px,29vw,315px);
  display:grid;place-items:center;z-index:2;
}
.flow-output-wrap{
  position:relative;
  min-height:clamp(195px,22vw,235px);
  display:flex;align-items:flex-end;z-index:2;
}
.eco-flow-lines{
  position:absolute!important;inset:0!important;
  width:100%!important;height:100%!important;
  pointer-events:none;z-index:1;
}
.eco-product-path{
  fill:none;
  stroke:url(#ecoFlowIn2);
  stroke-width:2.1;
  stroke-dasharray:7 11;
  stroke-linecap:round;
  opacity:.76;
  animation:productDash2 8.5s linear infinite;
}
.eco-product-out{stroke:url(#ecoFlowOut2);opacity:.82}
.eco-dot-cyan{fill:#8FD8EC}.eco-dot-violet{fill:#A58AFF}.eco-dot-green{fill:#2BD985}

.ecosystem-product-flow .eco-core-shell{
  position:relative!important;left:auto!important;top:auto!important;transform:none!important;
  width:clamp(122px,15vw,165px);aspect-ratio:1;
  display:grid;place-items:center;z-index:4;
}
.ecosystem-product-flow .eco-core-glow{
  position:absolute;inset:-26%;border-radius:50%;
  background:radial-gradient(circle,rgba(143,216,236,.34) 0 10%,rgba(124,77,255,.34) 24%,rgba(16,185,106,.22) 48%,transparent 72%);
  filter:blur(10px);animation:ecoCoreBreathe 5.2s ease-in-out infinite;
}
.ecosystem-product-flow .eco-core-label{
  position:relative!important;left:auto!important;top:auto!important;transform:none!important;
  width:100%;aspect-ratio:1;border-radius:36%;
  display:grid;place-content:center;text-align:center;
  background:radial-gradient(circle at 50% 28%,rgba(143,216,236,.20),transparent 28%),linear-gradient(150deg,rgba(41,35,91,.98),rgba(20,29,55,.98) 62%,rgba(17,65,50,.95));
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 20px 50px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.08);
}
.ecosystem-product-flow .eco-core-label b{font-size:clamp(1.05rem,2vw,1.42rem)}
.ecosystem-product-flow .eco-core-label small{font-size:clamp(.46rem,.82vw,.62rem);letter-spacing:.075em}
.ecosystem-product-flow .eco-core-state{
  position:absolute;left:50%;bottom:-15px;transform:translateX(-50%);
  display:flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;
  color:rgba(255,255,255,.72);background:rgba(11,14,28,.82);
  border:1px solid rgba(255,255,255,.11);backdrop-filter:blur(12px);
  font-size:clamp(.44rem,.72vw,.54rem);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;
}
.ecosystem-product-flow .eco-core-state i{
  width:6px;height:6px;border-radius:50%;background:#72E5AC;box-shadow:0 0 12px rgba(114,229,172,.65);
}

/* TRUST / REVIEW
   Product relationship: data + evidence + method stay with the figure; reviewer and reports use that same record. */
.trust-flow{
  position:relative;overflow:hidden;
  min-height:clamp(545px,60vw,650px);
  padding:clamp(18px,2.5vw,28px);
  isolation:isolate;
}
.trust-flow::before{
  content:"";position:absolute;inset:clamp(7px,1vw,12px);
  border-radius:clamp(24px,3vw,34px);
  border:1px solid rgba(255,255,255,.08);
  background:radial-gradient(circle at 50% 45%,rgba(124,77,255,.09),transparent 30%),radial-gradient(circle at 76% 82%,rgba(16,185,106,.07),transparent 27%),linear-gradient(150deg,rgba(255,255,255,.025),rgba(255,255,255,.015));
}
.trust-top-row{
  position:relative;z-index:5;
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(8px,1.6vw,14px);
}
.trust-chip{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:center;min-width:0;
  padding:clamp(10px,1.3vw,13px);border-radius:clamp(15px,2vw,19px);
  color:white;background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 13px 30px rgba(0,0,0,.11);
  backdrop-filter:blur(15px);
  animation:trustFloat2 6.7s ease-in-out infinite;
}
.chip-evidence{animation-delay:-2.1s}.chip-method{animation-delay:-4.2s}
.trust-chip>span{
  width:clamp(29px,3.5vw,37px);aspect-ratio:1;border-radius:11px;
  display:grid;place-items:center;background:rgba(124,77,255,.16);
  color:#D9CDFF;font-weight:700;font-size:clamp(.63rem,1vw,.82rem);
}
.trust-chip b,.trust-chip small{display:block}
.trust-chip b{font-size:clamp(.61rem,1vw,.78rem);line-height:1.2}
.trust-chip small{margin-top:4px;color:rgba(255,255,255,.50);font-size:clamp(.45rem,.72vw,.56rem);line-height:1.25}

.trust-stage{
  position:relative;min-height:clamp(265px,30vw,330px);
  display:grid;place-items:center;
}
.trust-lines{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:1;pointer-events:none;
}
.trust-path{
  fill:none;stroke:url(#trustIn2);stroke-width:2.1;stroke-dasharray:7 11;stroke-linecap:round;
  opacity:.78;animation:trustDash2 8.8s linear infinite;
}
.trust-path-review{stroke:#44C992}
.trust-path-report{stroke:#8E72F5}
.trust-dot-cyan{fill:#8FD8EC}.trust-dot-violet{fill:#A58AFF}.trust-dot-green{fill:#2BD985}

.trust-record-card{
  position:relative;z-index:4;
  width:clamp(190px,28vw,245px);min-height:clamp(165px,19vw,200px);
  padding:clamp(18px,2.4vw,24px);border-radius:clamp(25px,3vw,32px);
  display:flex;flex-direction:column;justify-content:center;text-align:center;color:white;
  background:radial-gradient(circle at 50% 0,rgba(143,216,236,.14),transparent 30%),linear-gradient(150deg,rgba(41,35,91,.97),rgba(25,27,57,.98) 60%,rgba(19,61,51,.94));
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 24px 52px rgba(0,0,0,.22),0 0 40px rgba(124,77,255,.10),inset 0 1px rgba(255,255,255,.08);
  animation:trustRecord2 5.5s ease-in-out infinite;
}
.trust-record-kicker{font-size:clamp(.45rem,.68vw,.54rem);letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48)}
.trust-record-card>b{margin-top:8px;font-size:clamp(1rem,1.7vw,1.35rem);line-height:1.12}
.trust-record-lines{display:grid;gap:7px;margin:18px auto 0;width:76%}
.trust-record-lines i{display:block;height:5px;border-radius:999px;background:linear-gradient(90deg,rgba(143,216,236,.55),rgba(124,77,255,.62),rgba(16,185,106,.50))}
.trust-record-lines i:nth-child(2){width:78%;justify-self:center;opacity:.72}
.trust-record-lines i:nth-child(3){width:58%;justify-self:center;opacity:.50}
.trust-record-status{margin:15px auto 0;display:inline-flex;align-items:center;gap:7px;font-size:clamp(.5rem,.8vw,.62rem);color:rgba(255,255,255,.62)}
.trust-record-status span{width:23px;height:23px;border-radius:8px;display:grid;place-items:center;background:rgba(16,185,106,.14);color:#79E6B0}

.trust-bottom{position:relative;min-height:clamp(180px,20vw,215px);display:flex;align-items:flex-end}
.trust-outcome-row{
  position:relative;z-index:5;width:min(100%,640px);margin:0 auto;
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(10px,1.8vw,16px);
}
.trust-outcome{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:11px;align-items:center;
  padding:clamp(14px,1.8vw,18px);min-height:clamp(92px,10vw,110px);
  border-radius:clamp(21px,2.8vw,27px);color:white;
  background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.13);
  box-shadow:0 18px 40px rgba(0,0,0,.13);backdrop-filter:blur(15px);
  animation:trustFloat2 6.5s ease-in-out infinite;
}
.trust-report{animation-delay:-3.1s}
.trust-outcome-icon{
  width:clamp(43px,5.5vw,56px);aspect-ratio:1;border-radius:17px;
  display:grid;place-items:center;background:rgba(16,185,106,.14);
  color:#76E8AF;font-size:clamp(1rem,1.8vw,1.35rem);font-weight:700;
}
.trust-outcome small,.trust-outcome b{display:block}
.trust-outcome small{font-size:clamp(.45rem,.68vw,.53rem);letter-spacing:.11em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:5px}
.trust-outcome b{font-size:clamp(.72rem,1.16vw,.9rem);line-height:1.18}

@keyframes productDash2{to{stroke-dashoffset:-144}}
@keyframes trustDash2{to{stroke-dashoffset:-144}}
@keyframes productNodeFloat2{50%{transform:translateY(-5px)}}
@keyframes trustFloat2{50%{transform:translateY(-5px)}}
@keyframes productHalo2{50%{transform:translate(-50%,-50%) scale(1.08);opacity:.76}}
@keyframes trustRecord2{50%{transform:scale(1.022);box-shadow:0 28px 58px rgba(0,0,0,.25),0 0 48px rgba(124,77,255,.13),inset 0 1px rgba(255,255,255,.10)}}

@media (max-width:760px){
  .ecosystem-product-flow{min-height:500px!important;padding:15px 10px}
  .flow-core-wrap{min-height:240px}
  .flow-output-wrap{min-height:185px}
  .ecosystem-product-flow .eco-node{padding:9px 7px}
  .ecosystem-product-flow .eco-node b{font-size:clamp(.57rem,2.2vw,.67rem)}
  .ecosystem-product-flow .eco-node small{font-size:clamp(.42rem,1.68vw,.51rem)}
  .ecosystem-product-flow .eco-core-shell{width:clamp(112px,31vw,136px)}

  .trust-flow{min-height:575px;padding:15px 10px}
  .trust-top-row{gap:7px}
  .trust-chip{padding:9px 7px;gap:6px}
  .trust-chip>span{width:29px;border-radius:9px}
  .trust-chip b{font-size:clamp(.54rem,2.1vw,.64rem)}
  .trust-chip small{font-size:clamp(.39rem,1.55vw,.48rem)}
  .trust-stage{min-height:270px}
  .trust-record-card{width:clamp(180px,52vw,210px);min-height:166px}
  .trust-bottom{min-height:180px}
  .trust-outcome-row{gap:8px}
  .trust-outcome{padding:11px 9px;gap:8px;min-height:90px}
  .trust-outcome-icon{width:40px;border-radius:13px}
}
@media (max-width:430px){
  .ecosystem-product-flow .eco-node small{display:none}
  .ecosystem-product-flow .eco-node{display:flex;align-items:center;justify-content:center;gap:6px}
  .ecosystem-product-flow .eco-node span{margin:0}

  .trust-chip small{display:none}
  .trust-chip{display:flex;align-items:center;justify-content:center;gap:5px}
  .trust-chip>span{width:27px}
  .trust-chip b{font-size:.55rem}
  .trust-outcome b{font-size:.65rem}
  .trust-outcome small{font-size:.4rem}
}
@media (min-width:1200px){
  .ecosystem-product-flow{min-height:590px!important}
  .trust-flow{min-height:625px}
}
@media (prefers-reduced-motion:reduce){
  .eco-product-path,.trust-path,
  .ecosystem-product-flow::before,
  .ecosystem-product-flow .eco-core-glow,
  .ecosystem-product-flow .eco-node,
  .trust-chip,.trust-record-card,.trust-outcome{animation:none!important}
  .eco-product-dot,.trust-dot{display:none!important}
}


/* ===== Aligned responsive flow pass =====
   All cards and paths share one coordinate system.
   No free-floating row maths, so line endpoints remain aligned from phone to desktop. */

/* ---------- Visual 1: connected workflow ---------- */
.ecosystem-aligned{
  position:relative;
  overflow:hidden;
  min-height:clamp(500px,58vw,610px)!important;
  isolation:isolate;
}
.ecosystem-aligned::before{
  content:"";
  position:absolute;
  left:50%;top:50%;
  width:min(54%,350px);
  aspect-ratio:1;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(circle,rgba(124,77,255,.11),rgba(90,123,216,.05) 46%,transparent 73%);
  filter:blur(2px);
  animation:alignedHalo 6.8s ease-in-out infinite;
  pointer-events:none;
}
.aligned-links{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:1;
  pointer-events:none;
}
.aligned-path{
  fill:none;
  stroke-width:2.1;
  stroke-dasharray:7 11;
  stroke-linecap:round;
  opacity:.76;
  animation:alignedDash 8.5s linear infinite;
}
.aligned-in{stroke:url(#alignedIn)}
.aligned-out{stroke:url(#alignedOut)}
.aligned-dot.dot-cyan{fill:#8FD8EC}
.aligned-dot.dot-violet{fill:#A58AFF}
.aligned-dot.dot-green{fill:#2BD985}

.aligned-node{
  position:absolute;
  z-index:5;
  width:42%;
  min-height:70px;
  display:grid;
  grid-template-columns:10px minmax(0,1fr);
  column-gap:9px;
  align-content:center;
  padding:12px 14px;
  border-radius:18px;
  color:white;
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 13px 30px rgba(0,0,0,.11);
  backdrop-filter:blur(15px);
  animation:alignedNodeFloat 6.6s ease-in-out infinite;
}
.aligned-node span{
  width:10px;height:10px;border-radius:50%;
  margin-top:4px;
  background:#8FD8EC;
  box-shadow:0 0 12px rgba(143,216,236,.35);
}
.aligned-node b,.aligned-node small{display:block}
.aligned-node b{font-size:clamp(.62rem,1.05vw,.80rem);line-height:1.2}
.aligned-node small{
  grid-column:2;
  margin-top:4px;
  color:rgba(255,255,255,.50);
  font-size:clamp(.46rem,.74vw,.58rem);
  line-height:1.25;
}
.aligned-data{left:4%;top:4.5%;animation-delay:-.3s}
.aligned-evidence{right:4%;top:4.5%;animation-delay:-2.1s}

.aligned-targets,.aligned-actions,.aligned-reports{
  width:29.5%;
  bottom:4%;
}
.aligned-targets{left:2%;animation-delay:-1.1s}
.aligned-actions{left:35.25%;animation-delay:-3.1s}
.aligned-reports{right:2%;animation-delay:-4.7s}
.aligned-reports span{background:#10B96A;box-shadow:0 0 12px rgba(16,185,106,.35)}

.aligned-core{
  position:absolute;
  left:50%;top:50%;
  transform:translate(-50%,-50%);
  width:clamp(122px,16vw,165px);
  aspect-ratio:1;
  display:grid;
  place-items:center;
  z-index:4;
}
.aligned-core-glow{
  position:absolute;
  inset:-28%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(143,216,236,.34) 0 10%,rgba(124,77,255,.34) 24%,rgba(16,185,106,.22) 48%,transparent 72%);
  filter:blur(10px);
  animation:alignedCoreBreath 5.2s ease-in-out infinite;
}
.aligned-core-card{
  position:relative;
  width:100%;
  aspect-ratio:1;
  border-radius:36%;
  display:grid;
  place-content:center;
  text-align:center;
  color:white;
  background:radial-gradient(circle at 50% 28%,rgba(143,216,236,.20),transparent 28%),linear-gradient(150deg,rgba(41,35,91,.98),rgba(20,29,55,.98) 62%,rgba(17,65,50,.95));
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 20px 50px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.08);
}
.aligned-core-card b{font-size:clamp(1.05rem,2vw,1.42rem)}
.aligned-core-card small{
  margin-top:8px;
  font-size:clamp(.46rem,.82vw,.62rem);
  letter-spacing:.075em;
  text-transform:uppercase;
  color:rgba(255,255,255,.56);
}
.aligned-sync{
  position:absolute;
  left:50%;bottom:-15px;
  transform:translateX(-50%);
  display:flex;align-items:center;gap:6px;
  padding:6px 9px;border-radius:999px;
  color:rgba(255,255,255,.72);
  background:rgba(11,14,28,.82);
  border:1px solid rgba(255,255,255,.11);
  backdrop-filter:blur(12px);
  font-size:clamp(.44rem,.72vw,.54rem);
  text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;
}
.aligned-sync i{
  width:6px;height:6px;border-radius:50%;background:#72E5AC;
  box-shadow:0 0 12px rgba(114,229,172,.65);
}

@keyframes alignedDash{to{stroke-dashoffset:-144}}
@keyframes alignedNodeFloat{50%{transform:translateY(-5px)}}
@keyframes alignedHalo{50%{transform:translate(-50%,-50%) scale(1.08);opacity:.76}}
@keyframes alignedCoreBreath{50%{transform:scale(1.06);opacity:.82}}

/* ---------- Visual 2: figure provenance / review ---------- */
.trust-aligned{
  position:relative;
  overflow:hidden;
  min-height:clamp(500px,58vw,610px);
  isolation:isolate;
}
.trust-aligned::before{
  content:"";
  position:absolute;
  inset:10px;
  border-radius:32px;
  border:1px solid rgba(255,255,255,.08);
  background:radial-gradient(circle at 50% 46%,rgba(124,77,255,.09),transparent 30%),radial-gradient(circle at 74% 82%,rgba(16,185,106,.07),transparent 27%),linear-gradient(150deg,rgba(255,255,255,.025),rgba(255,255,255,.015));
}
.trust-aligned-links{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:1;
  pointer-events:none;
}
.trust-aligned-path{
  fill:none;
  stroke-width:2.1;
  stroke-dasharray:7 11;
  stroke-linecap:round;
  opacity:.78;
  animation:trustAlignedDash 8.8s linear infinite;
}
.trust-in{stroke:url(#trustAlignedIn)}
.trust-out{stroke:url(#trustAlignedReview)}
.trust-aligned-dot.dot-cyan{fill:#8FD8EC}
.trust-aligned-dot.dot-violet{fill:#A58AFF}
.trust-aligned-dot.dot-green{fill:#2BD985}

.trust-small-card{
  position:absolute;
  top:4.5%;
  z-index:5;
  width:29.5%;
  min-height:66px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:11px 10px;
  border-radius:17px;
  color:white;
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 13px 30px rgba(0,0,0,.11);
  backdrop-filter:blur(15px);
  animation:trustAlignedFloat 6.7s ease-in-out infinite;
}
.trust-small-card span{
  width:31px;height:31px;border-radius:10px;
  display:grid;place-items:center;
  flex:0 0 auto;
  background:rgba(124,77,255,.16);
  color:#D9CDFF;
  font-weight:700;
  font-size:.72rem;
}
.trust-small-card b{
  font-size:clamp(.56rem,1vw,.75rem);
  line-height:1.16;
}
.trust-data{left:2%;animation-delay:-.3s}
.trust-evidence{left:35.25%;animation-delay:-2.1s}
.trust-method{right:2%;animation-delay:-4.2s}

.trust-centre{
  position:absolute;
  left:50%;top:50%;
  transform:translate(-50%,-50%);
  width:clamp(190px,29vw,250px);
  min-height:clamp(150px,20vw,190px);
  z-index:4;
  display:grid;
  place-items:center;
}
.trust-centre-glow{
  position:absolute;
  inset:-24%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(143,216,236,.12),rgba(124,77,255,.16) 36%,rgba(16,185,106,.09) 55%,transparent 73%);
  filter:blur(12px);
  animation:trustCentreBreath 5.6s ease-in-out infinite;
}
.trust-centre-card{
  position:relative;
  width:100%;
  min-height:inherit;
  border-radius:30px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:24px;
  color:white;
  background:radial-gradient(circle at 50% 0,rgba(143,216,236,.14),transparent 30%),linear-gradient(150deg,rgba(41,35,91,.97),rgba(25,27,57,.98) 60%,rgba(19,61,51,.94));
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 24px 52px rgba(0,0,0,.22),0 0 40px rgba(124,77,255,.10),inset 0 1px rgba(255,255,255,.08);
}
.trust-centre-card small{
  font-size:clamp(.45rem,.68vw,.54rem);
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
.trust-centre-card b{
  margin-top:9px;
  max-width:12ch;
  font-size:clamp(1rem,1.8vw,1.4rem);
  line-height:1.12;
}

.trust-out-card{
  position:absolute;
  bottom:4%;
  z-index:5;
  width:42%;
  min-height:80px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  border-radius:22px;
  color:white;
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 18px 40px rgba(0,0,0,.13);
  backdrop-filter:blur(15px);
  animation:trustAlignedFloat 6.5s ease-in-out infinite;
}
.trust-out-card span{
  width:44px;height:44px;border-radius:15px;
  display:grid;place-items:center;
  background:rgba(16,185,106,.14);
  color:#76E8AF;
  font-size:1.12rem;
  font-weight:700;
}
.trust-out-card b{
  font-size:clamp(.75rem,1.2vw,.95rem);
}
.trust-review-card{left:4%;animation-delay:-1.3s}
.trust-report-card{right:4%;animation-delay:-3.4s}

@keyframes trustAlignedDash{to{stroke-dashoffset:-144}}
@keyframes trustAlignedFloat{50%{transform:translateY(-5px)}}
@keyframes trustCentreBreath{50%{transform:scale(1.05);opacity:.82}}

/* Phone sizing: same coordinates, smaller cards. The SVG paths therefore remain aligned. */
@media (max-width:760px){
  .ecosystem-aligned,.trust-aligned{
    min-height:500px!important;
  }
  .aligned-node{
    min-height:62px;
    padding:10px 9px;
  }
  .aligned-node b{font-size:clamp(.57rem,2.3vw,.68rem)}
  .aligned-node small{font-size:clamp(.42rem,1.68vw,.51rem)}
  .aligned-core{width:clamp(112px,31vw,138px)}

  .trust-small-card{
    min-height:60px;
    padding:9px 7px;
    gap:6px;
  }
  .trust-small-card span{
    width:28px;height:28px;border-radius:9px;
    font-size:.62rem;
  }
  .trust-small-card b{font-size:clamp(.52rem,2vw,.63rem)}
  .trust-centre{
    width:clamp(180px,53vw,215px);
    min-height:158px;
  }
  .trust-out-card{
    min-height:76px;
    gap:9px;
  }
  .trust-out-card span{
    width:40px;height:40px;border-radius:13px;
  }
  .trust-out-card b{font-size:clamp(.68rem,2.3vw,.82rem)}
}
@media (max-width:430px){
  .aligned-node small{display:none}
  .aligned-node{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
  }
  .aligned-node span{margin:0}
  .trust-small-card span{display:none}
  .trust-small-card b{font-size:.56rem}
  .trust-out-card span{width:36px;height:36px}
}
@media (min-width:1200px){
  .ecosystem-aligned,.trust-aligned{min-height:590px!important}
}
@media (prefers-reduced-motion:reduce){
  .aligned-path,.trust-aligned-path,
  .ecosystem-aligned::before,.aligned-core-glow,
  .aligned-node,.trust-small-card,.trust-centre-glow,.trust-out-card{
    animation:none!important;
  }
  .aligned-dot,.trust-aligned-dot{display:none!important}
}
