/* Homepage only. The approved v4 login and service cards are deliberately untouched. */
.hero-experience{position:relative;isolation:isolate;padding:32px var(--pad) 14px;overflow:hidden;background:radial-gradient(ellipse at 50% 80%,#dfefeb 0,transparent 55%),#fbfbf9}
.hero-intro{text-align:center;position:relative;z-index:3;margin:0 auto;max-width:970px}
.hero-eyebrow{display:flex;align-items:center;justify-content:center;gap:11px;font:9px Plex,monospace;letter-spacing:.17em;color:#58787c;margin-bottom:20px}
.hero-eyebrow>span{width:6px;height:6px;border-radius:50%;background:#388895;box-shadow:0 0 0 5px #38889510}
.hero-intro h1{font-size:clamp(44px,4.7vw,68px);font-weight:500;line-height:1.04;letter-spacing:-.062em;color:#142a31}
.hero-intro h1 em{color:#2e7f8e;font-style:normal}
.hero-description{margin:16px auto 0;font-size:13px;line-height:1.8;color:#63787f;max-width:600px}
.hero-actions{display:flex;justify-content:center;align-items:center;gap:28px;margin-top:20px}
.hero-actions .button{border-radius:8px;background:#2e7f8e;padding:14px 20px;min-height:49px;gap:25px;font-size:11px;box-shadow:0 7px 18px #2e7f8e24}
.hero-actions .button:hover{background:#246c79}
.hero-actions .button i{width:18px;height:18px}
.hero-explore{display:flex;align-items:center;gap:9px;font-size:11px;color:#38545c}
.hero-play{width:27px;height:27px;display:grid;place-items:center;border:1px solid #aac6c7;border-radius:50%;padding-left:2px;font-size:8px;color:#2e7f8e}
.hero-stage{height:475px;width:100%;max-width:1200px;position:relative;margin:3px auto 0;isolation:isolate}
.hero-stage:before{content:'';position:absolute;inset:18% 10% 4%;border-radius:50%;background:radial-gradient(ellipse,#bfded755,transparent 65%);z-index:-2}
.hero-stage .hero-portal{position:absolute;inset:0;z-index:-1;pointer-events:none}
.hero-portal .hero-portal-fallback{inset:0;display:block;transform:none;perspective:none}
.hero-portal-fallback img{width:100%;height:100%;object-fit:contain;max-width:none}
.hero-connections{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}
.hero-connections path{stroke:#7cb0b4;stroke-width:1;stroke-dasharray:5 7;opacity:.65;animation:connection-flow 22s linear infinite}
.hero-console{position:absolute;top:86px;left:50%;width:620px;max-width:65%;transform:translateX(-50%);border:1px solid #a9c4c2;border-radius:16px;background:#fff;box-shadow:0 3px 0 #b3cfcb,0 7px 0 #dbe9e5,0 30px 65px -15px #2b657e3d;overflow:hidden;z-index:2}
.hero-console-bar{height:51px;display:flex;align-items:center;padding:0 22px;gap:14px;border-bottom:1px solid #e2eae6;background:linear-gradient(#fff,#fbfdfa)}
.hero-console-bar>.official-lockup{width:154px;height:26px}
.hero-console-bar>span{margin-left:auto;font:6px/1.5 Plex,monospace;letter-spacing:.1em;color:#718a8c}
.hero-console-bar>i{width:15px;height:15px;color:#75999f}
.hero-console-body{display:grid;grid-template-columns:126px 1fr;min-height:260px}
.hero-console-nav{padding:21px 9px;background:#edf4f1;border-right:1px solid #dbe7e3;display:flex;flex-direction:column;gap:9px}
.hero-console-nav>button{border:0;background:none;display:flex;align-items:center;gap:8px;text-align:left;border-radius:6px;padding:10px 8px;font:8px Sora,sans-serif;color:#6b8287;cursor:pointer;transition:background .2s,color .2s}
.hero-console-nav>button>i{width:16px;height:16px;flex-shrink:0}
.hero-console-nav>button[aria-selected=true]{color:#fff;background:#2e7f8e;box-shadow:0 4px 12px #2e7f8e20}
.hero-console-nav>button:hover:not([aria-selected=true]){background:#e0ede7;color:#234f5c}
.hero-preview{padding:20px 24px 12px;min-width:0;background:radial-gradient(ellipse at 95% 80%,#f0f8f3,transparent 65%)}
.hero-panel-kicker{font:6px/1.5 Plex,monospace;letter-spacing:.14em;color:#6b9299}
.hero-preview h2{font-size:25px;font-weight:500;letter-spacing:-.05em;line-height:1.14;margin-top:8px;color:#1b3941}
.hero-dashboard{display:grid;grid-template-columns:1fr 1.2fr;gap:14px;align-items:center;margin-top:8px}
.hero-chart{min-width:0;text-align:center}
.hero-chart>svg{width:100%;height:112px}
.hero-chart>span{font:6px/1.6 Plex,monospace;color:#668188;display:block}
.hero-findings{display:flex;flex-direction:column;gap:10px}
.hero-findings>span{font-size:8px;color:#496570;display:flex;align-items:center;gap:7px}
.hero-findings>span>i{width:13px;height:13px;border-radius:50%;padding:2px;color:#2e7f8e;background:#e5f2ea}
.hero-findings>a{font-size:8px;color:#2e7f8e;font-weight:600;margin-top:7px;padding-top:9px;border-top:1px solid #d7e6df;display:flex;justify-content:space-between;align-items:center}
.hero-findings>a span{font-size:14px}
.hero-console-status{display:flex;justify-content:space-between;align-items:center;padding:10px 19px;border-top:1px solid #e0eae7;color:#779398;background:#fafdfb}
.hero-console-status>span{font:5px/1.4 Plex,monospace;letter-spacing:.05em;display:flex;align-items:center;gap:7px}
.hero-console-status i{width:5px;height:5px;border-radius:50%;background:#398f83}
.hero-console-status>b{font-size:7px;font-weight:500;color:#3f6971}
.hero-node{position:absolute;z-index:3;border:1px solid #c5dcd6;background:linear-gradient(135deg,#fffffff5,#f5fbf6eb);border-radius:12px;padding:18px;box-shadow:0 3px 0 #d4e5df,0 17px 35px -14px #25536b25;backdrop-filter:blur(8px)}
.node-evaluation,.node-sources{width:186px;top:105px;display:grid;grid-template-columns:27px 1fr;gap:12px}
.node-evaluation{left:0}.node-sources{right:0}
.node-icon{display:grid;place-items:center;width:29px;height:31px;color:#2e7f8e}
.hero-node small{font:5px/1.6 Plex,monospace;letter-spacing:.08em;color:#769499;display:block;margin-bottom:6px}
.hero-node strong{font-size:10px;font-weight:500;color:#21434d;line-height:1.5}
.node-bars{grid-column:1/-1;display:flex;align-items:flex-end;gap:7px;height:38px;padding:0 8px}
.node-bars b{height:70%;flex:1;background:linear-gradient(90deg,#64afb9,#46939e);border-radius:3px 3px 0 0;box-shadow:3px 0 #367785}
.node-bars b:nth-child(2){height:96%;background:#bad9d7}.node-bars b:nth-child(3){height:54%;background:#90c3c7}.node-bars b:nth-child(4){height:82%;background:#367e8a}.node-bars b:nth-child(5){height:67%;background:#83b9bb}
.node-dots{grid-column:1/-1;display:flex;align-items:center;padding-top:10px;border-top:1px solid #dce9e4;gap:4px}
.node-dots i{width:8px;height:8px;border:2px solid #2e7f8e;border-radius:50%;background:#fff}
.node-dots span{font:6px/1.5 Plex,monospace;margin-left:3px;color:#668a92}
.node-context,.node-report{top:329px;width:202px;display:flex;gap:10px;align-items:center;padding:15px 13px}
.node-context{left:0}.node-report{right:0}
.node-context>i,.node-report>i{width:25px;height:25px;color:#468993;flex-shrink:0}
.hero-node>div>span:not(.node-dots span){display:block;font-size:6px;color:#799198;margin-top:4px}
.hero-stage-footer{position:absolute;bottom:11px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:30px;z-index:4}
.hero-stage-footer>span{font:6px/1.5 Plex,monospace;letter-spacing:.09em;color:#739092}
.hero-stage-footer .scene-controls{position:static;gap:18px}
.hero-v5 .hero-stage-footer .scene-controls button{font-size:8px;min-height:32px;color:#587e85}
.hero-v5 .hero-stage-footer .scene-controls button[hidden]{display:none}
.hero-console button:focus-visible,.hero-console a:focus-visible,.hero-stage-footer button:focus-visible,.hero-explore:focus-visible{outline:2px solid #2e7f8e;outline-offset:3px}
.is-assembled .hero-console{animation:console-assemble 1.4s cubic-bezier(.16,1,.3,1) both}
.is-assembled .node-evaluation,.is-assembled .node-context{animation:node-assemble-left 1.5s .15s cubic-bezier(.16,1,.3,1) both}
.is-assembled .node-sources,.is-assembled .node-report{animation:node-assemble-right 1.5s .25s cubic-bezier(.16,1,.3,1) both}
.hero-stage[data-motion=paused] .hero-connections path{animation-play-state:paused}
.hero-stage[data-motion=paused] .hero-console,.hero-stage[data-motion=paused] .hero-node{animation:none}
@media(max-width:600px){.hero-intro h1>span{display:block}.hero-title-break{display:none}.hero-title-break:after{content:' '}}
.hero-v5 .node-evaluation{background:linear-gradient(135deg,#16313b,#234752);border-color:#416672;box-shadow:0 3px 0 #102a34,0 17px 35px -14px #25536b38}
.hero-v5 .node-evaluation .node-icon,.hero-v5 .node-evaluation strong{color:#e7f8f6}
.hero-v5 .node-evaluation small{color:#8fc1c7}
.hero-v5 .node-evaluation .node-bars b{box-shadow:3px 0 #235767}
@media(min-width:1201px){.node-evaluation,.node-sources{width:208px;padding:20px;gap:13px}.hero-node small{font-size:6px}.hero-node strong{font-size:12px}.hero-node>div>span:not(.node-dots span){font-size:7px}.node-context,.node-report{width:217px}.node-context strong,.node-report strong{font-size:10px}.node-dots span{font-size:7px}.hero-console-nav>button{font-size:9px}.hero-findings>span{font-size:9px}.hero-findings>a{font-size:9px}.hero-console-bar>span{font-size:7px}.hero-panel-kicker{font-size:7px}.hero-chart>span{font-size:7px}.hero-console-status>span{font-size:6px}}
.hero-rci-ring{width:95px;height:95px;border-radius:50%;background:conic-gradient(#2e7f8e 0deg 356deg,#d3e6e1 356deg);display:grid;place-items:center;margin:10px auto 7px;box-shadow:4px 3px #b6d3cf}
.hero-rci-ring b{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;background:#fff;font-size:24px;font-weight:500;color:#254e59}
.hero-aptitude-bars{height:117px;display:flex;align-items:flex-end;gap:9px;padding:10px 12px;margin-bottom:0}
.hero-aptitude-bars b{flex:1;border-radius:4px 4px 0 0;background:#63aab3;box-shadow:3px 0 #317c89}.hero-aptitude-bars b:nth-child(2n){background:#bad8d7}
@keyframes console-assemble{from{opacity:0;translate:0 65px;scale:.87;filter:blur(6px)}to{opacity:1;translate:0 0;scale:1;filter:blur(0)}}
@keyframes node-assemble-left{from{opacity:0;translate:75px 20px;scale:.9}to{opacity:1;translate:0 0;scale:1}}
@keyframes node-assemble-right{from{opacity:0;translate:-75px 20px;scale:.9}to{opacity:1;translate:0 0;scale:1}}
@keyframes connection-flow{to{stroke-dashoffset:-240}}
@media(min-width:1700px){.hero-console{top:80px;width:650px}.hero-preview{padding:20px 28px 12px}.hero-preview h2{font-size:28px}.hero-node{top:105px}.node-context,.node-report{top:330px}.hero-stage-footer{bottom:10px}}
@media(max-width:1200px){.node-evaluation,.node-sources{width:150px;padding:13px;gap:7px}.hero-node strong{font-size:8px}.hero-node small{font-size:4px}.node-context,.node-report{width:163px;padding:12px;gap:7px}.hero-node>div>span:not(.node-dots span){font-size:5px}.node-dots{gap:3px}.node-dots span{font-size:5px}.node-dots i{width:6px;height:6px}.hero-console{width:570px;max-width:64%}.hero-console-body{grid-template-columns:106px 1fr}.hero-console-nav>button{font-size:7px;gap:6px;padding:10px 5px}.hero-preview{padding:20px 18px 15px}.hero-preview h2{font-size:23px}.hero-findings>span{font-size:7px;gap:4px}.hero-dashboard{gap:7px}.hero-console-bar>span{font-size:5px}}
@media(max-width:950px){.hero-experience{padding-top:37px}.hero-intro h1{font-size:60px}.hero-stage{height:505px}.hero-console{width:550px;max-width:84%;top:80px}.node-evaluation,.node-sources{display:none}.node-context,.node-report{top:393px;width:190px;padding:12px}.node-context{left:calc(50% - 200px)}.node-report{right:calc(50% - 200px)}.hero-connections{display:none}.hero-stage-footer{bottom:3px;gap:22px}.hero-stage-footer>span{display:none}.hero-node strong{font-size:9px}.hero-node>div>span:not(.node-dots span){font-size:6px}}
@media(max-width:600px){.hero-experience{padding:33px 20px 13px}.hero-eyebrow{font-size:7px;letter-spacing:.09em;gap:9px;margin-bottom:21px}.hero-intro h1{font-size:clamp(36px,8vw,48px);letter-spacing:-.057em;line-height:1.09}.hero-description{font-size:11px;line-height:1.85;margin-top:18px;max-width:340px}.hero-description br{display:none}.hero-actions{gap:17px;margin-top:22px}.hero-actions .button{padding:13px 14px;font-size:9px;gap:14px}.hero-explore{font-size:9px;gap:7px}.hero-play{width:23px;height:23px;font-size:6px}.hero-stage{height:460px;margin-top:9px}.hero-stage .hero-portal{inset:-20px -20px 15px}.hero-console{top:67px;width:100%;max-width:100%;border-radius:11px;box-shadow:0 3px 0 #b3cfcb,0 6px 0 #dbe9e5,0 25px 48px -16px #2b657e33}.hero-console-bar{height:42px;padding:0 14px;gap:10px}.hero-console-bar>.official-lockup{width:130px;height:23px}.hero-console-bar>span{font-size:4px}.hero-console-bar>i{width:13px;height:13px}.hero-console-body{display:block;min-height:0}.hero-console-nav{padding:9px 12px;flex-direction:row;gap:5px;border-right:0;border-bottom:1px solid #dbe7e3;justify-content:space-between}.hero-console-nav>button{padding:8px 9px;font-size:7px;gap:6px;flex:1;justify-content:center}.hero-console-nav>button>i{width:13px;height:13px}.hero-preview{padding:17px 19px 14px}.hero-panel-kicker{font-size:5px}.hero-preview h2{font-size:23px;margin-top:6px}.hero-dashboard{grid-template-columns:1fr 1.35fr;margin-top:3px;gap:15px}.hero-chart>svg{height:91px}.hero-chart>span{font-size:5px}.hero-findings{gap:7px}.hero-findings>span{font-size:6px;gap:5px}.hero-findings>span>i{width:11px;height:11px}.hero-findings>a{font-size:6px;padding-top:6px;margin-top:3px}.hero-console-status{padding:9px 13px}.hero-console-status>span{font-size:4px;gap:5px}.hero-console-status>b{font-size:5px}.node-context,.node-report{top:383px;width:calc(50% - 5px);padding:11px 8px;border-radius:8px;gap:7px;box-shadow:none}.node-context{left:0}.node-report{right:0}.node-context>i,.node-report>i{width:20px;height:20px}.hero-node strong{font-size:7px}.hero-node>div>span:not(.node-dots span){font-size:5px;line-height:1.5}.hero-stage-footer{bottom:-4px}.hero-v5 .hero-stage-footer .scene-controls button{font-size:7px}.hero-rci-ring{width:79px;height:79px;margin:7px auto 3px}.hero-rci-ring b{width:62px;height:62px;font-size:21px}.hero-aptitude-bars{height:94px}}
@media(max-width:360px){.hero-experience{padding-inline:16px}.hero-intro h1{font-size:32px}.hero-actions{gap:12px}.hero-actions .button{font-size:8px;padding-inline:11px;gap:10px}.hero-explore{font-size:8px}.hero-console-nav{padding-inline:8px}.hero-console-nav>button{font-size:6px;padding:8px 6px}.hero-dashboard{gap:9px}.hero-preview{padding-inline:16px}.hero-preview h2{font-size:21px}.hero-findings>span{font-size:5.5px}.hero-node strong{font-size:6px}.hero-node>div>span:not(.node-dots span){font-size:4.5px}}
@media(prefers-reduced-motion:reduce){.is-assembled .hero-console,.is-assembled .hero-node,.hero-connections path{animation:none}.hero-console-nav>button{transition:none}}
@media(max-width:600px){.hero-stage{height:505px}.node-context,.node-report{top:410px}}
