@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;700;800&display=swap";:root{--landing-bg:#f7f9fc;--landing-ink:#0f172a;--landing-muted:#64748b;--landing-primary:#2457ff;--landing-primary-dark:#1538b8;--landing-card:#ffffffd1;--landing-border:#0f172a1a;--landing-shadow:0 24px 80px #0f172a1f}*{box-sizing:border-box}body{color:var(--landing-ink);background:var(--landing-bg);margin:0;font-family:Plus Jakarta Sans,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}.landing-page{isolation:isolate;min-height:100vh;position:relative;overflow:hidden}.landing-bg{z-index:-3;background-image:radial-gradient(#2457ff21 1px,#0000 1px);background-size:34px 34px;position:fixed;inset:0}.landing-glow{filter:blur(22px);z-index:-2;opacity:.35;border-radius:999px;width:520px;height:520px;position:fixed}.landing-glow-one{background:#bdd1ff;top:-180px;right:-140px}.landing-glow-two{background:#d7f6ff;bottom:-220px;left:-170px}.landing-nav{border:1px solid var(--landing-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffb8;border-radius:24px;justify-content:space-between;align-items:center;width:min(1180px,100% - 40px);height:76px;margin:18px auto 0;padding:0 18px 0 22px;display:flex;box-shadow:0 12px 40px #0f172a0f}.brand{color:var(--landing-ink);align-items:center;gap:12px;font-weight:800;text-decoration:none;display:inline-flex}.brand img{height:40px}.nav-button,.primary-button,.secondary-button,.role-button{cursor:pointer;border:0;font-family:inherit;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s}.nav-button,.secondary-button{color:var(--landing-ink);border:1px solid var(--landing-border);background:#fff;border-radius:999px;padding:12px 18px;font-weight:800}.primary-button{background:linear-gradient(135deg, var(--landing-primary), var(--landing-primary-dark));color:#fff;border-radius:16px;padding:16px 24px;font-weight:800;box-shadow:0 16px 36px #2457ff47}.primary-button:hover,.nav-button:hover,.secondary-button:hover,.role-button:hover{transform:translateY(-2px)}.primary-button:disabled{opacity:.55;cursor:not-allowed;transform:none}.full{width:100%}.hero-section{grid-template-columns:1.05fr .95fr;align-items:center;gap:56px;width:min(1180px,100% - 40px);min-height:calc(100vh - 100px);margin:0 auto;padding:70px 0;display:grid}.eyebrow{color:var(--landing-primary);letter-spacing:.1em;text-transform:uppercase;background:#2457ff17;border-radius:999px;padding:9px 13px;font-size:.72rem;font-weight:900;display:inline-flex}.hero-copy h1{letter-spacing:-.07em;margin:20px 0 22px;font-size:clamp(3rem,7vw,6rem);line-height:.92}.hero-copy p{max-width:650px;color:var(--landing-muted);font-size:1.18rem;line-height:1.75}.hero-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:34px;display:flex}.stats-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:34px;display:grid}.stat-pill{border:1px solid var(--landing-border);background:#ffffffb8;border-radius:20px;align-items:center;gap:12px;padding:15px;display:flex}.stat-pill i{width:38px;height:38px;color:var(--landing-primary);background:#2457ff1a;border-radius:14px;place-items:center;display:grid}.stat-pill strong,.stat-pill span{display:block}.stat-pill strong{font-size:1.05rem}.stat-pill span{color:var(--landing-muted);font-size:.72rem}.hero-visual{place-items:center;min-height:560px;display:grid}.scan-card{border:1px solid var(--landing-border);width:min(430px,100%);min-height:540px;box-shadow:var(--landing-shadow);background:linear-gradient(#ffffffeb,#ffffff9e);border-radius:42px;padding:22px;position:relative}.scan-header{gap:8px;display:flex}.scan-header span{background:#dbeafe;border-radius:50%;width:12px;height:12px}.face-frame{background:radial-gradient(circle at 50% 40%,#2457ff29,#0000 56%),#f8fbff;border:1px solid #2457ff24;border-radius:32px;place-items:center;height:390px;margin-top:35px;display:grid;position:relative;overflow:hidden}.scan-line{background:linear-gradient(90deg, transparent, var(--landing-primary), transparent);height:2px;animation:3.4s ease-in-out infinite scan;position:absolute;top:12%;left:0;right:0}@keyframes scan{0%,to{opacity:.25;top:12%}50%{opacity:.9;top:82%}}.face-outline{border:2px dashed #2457ff6b;border-radius:120px 120px 90px 90px;width:210px;height:290px;position:relative}.point{background:var(--landing-primary);border-radius:999px;width:10px;height:10px;animation:1.8s infinite alternate pulse;position:absolute;box-shadow:0 0 24px #2457ffbf}.p1{top:28%;left:29%}.p2{top:28%;right:29%}.p3{top:50%;left:50%;transform:translate(-50%)}.p4{bottom:22%;left:37%}.p5{bottom:22%;right:37%}@keyframes pulse{0%{opacity:.35;transform:scale(.85)}to{opacity:1;transform:scale(1.08)}}.scan-footer{color:#fff;background:#0f172a;border-radius:20px;justify-content:space-between;align-items:center;margin-top:18px;padding:16px;display:flex}.scan-footer span{color:#94a3b8;letter-spacing:.14em;font-size:.7rem;font-weight:900}.scan-footer strong{color:#86efac;font-size:.78rem}.features-section{width:min(1180px,100% - 40px);margin:0 auto;padding:70px 0 90px}.section-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:26px;display:flex}.section-heading h2{letter-spacing:-.05em;max-width:680px;margin:0;font-size:clamp(2rem,4vw,3.4rem);line-height:1}.feature-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.feature-card{background:var(--landing-card);border:1px solid var(--landing-border);border-radius:30px;min-height:260px;padding:28px;box-shadow:0 14px 50px #0f172a0f}.feature-card i{color:var(--landing-primary);margin-bottom:34px;font-size:1.6rem}.feature-card h3{letter-spacing:-.04em;margin:0 0 10px;font-size:1.45rem}.feature-card p{color:var(--landing-muted);margin:0;line-height:1.65}.big-card{grid-column:span 2}.dark-card{color:#fff;background:#0f172a}.dark-card p{color:#cbd5e1}.dark-card i{color:#93c5fd}.landing-footer{border-top:1px solid var(--landing-border);width:min(1180px,100% - 40px);color:var(--landing-muted);justify-content:space-between;align-items:center;margin:0 auto;padding:36px 0 50px;font-size:.85rem;font-weight:800;display:flex}.landing-footer img{opacity:.55;height:34px}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0f172a9e;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.login-modal{width:min(430px,100%);box-shadow:var(--landing-shadow);background:#fff;border-radius:32px;padding:34px;position:relative}.close-button{cursor:pointer;background:#f1f5f9;border:0;border-radius:12px;width:34px;height:34px;font-size:1.4rem;line-height:1;position:absolute;top:18px;right:18px}.login-modal img{height:52px;margin-bottom:22px}.login-modal h2{letter-spacing:-.05em;margin:0 0 8px;font-size:2rem}.login-modal p{color:var(--landing-muted);margin:0 0 22px;line-height:1.55}.login-modal input{border:1px solid var(--landing-border);width:100%;font:inherit;border-radius:16px;outline:none;margin-bottom:12px;padding:16px 17px}.login-modal input:focus{border-color:#2457ff8c;box-shadow:0 0 0 4px #2457ff1a}.login-error{color:#be123c;background:#fff1f2;border-radius:14px;margin-bottom:14px;padding:12px 14px;font-size:.85rem;font-weight:800}.role-modal{gap:12px;display:grid}.role-button{width:100%;color:var(--landing-ink);border:1px solid var(--landing-border);background:#f8fafc;border-radius:16px;padding:17px;font-weight:900}@media (width<=950px){.hero-section{grid-template-columns:1fr;padding-top:54px}.hero-visual{min-height:auto}.scan-card{min-height:470px}.feature-grid{grid-template-columns:1fr 1fr}.section-heading{display:block}}@media (width<=640px){.landing-nav{gap:12px;width:calc(100% - 24px);height:auto;padding:14px}.brand span{display:none}.hero-section,.features-section,.landing-footer{width:calc(100% - 24px)}.hero-copy h1{font-size:3.1rem}.stats-row,.feature-grid{grid-template-columns:1fr}.big-card{grid-column:span 1}.landing-footer{flex-direction:column;gap:14px}}.role-preview-card{min-height:220px}.role-modal-wide{width:min(860px,100vw - 28px);max-height:calc(100vh - 32px);overflow:auto}.role-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:12px;display:grid}.role-card-button{border:1px solid var(--landing-border);width:100%;min-height:170px;color:var(--landing-ink);text-align:left;cursor:pointer;background:linear-gradient(#fff,#f8fafc);border-radius:22px;padding:22px;transition:transform .2s,box-shadow .2s,border-color .2s}.role-card-button:hover{border-color:#2457ff59;transform:translateY(-4px);box-shadow:0 18px 40px #0f172a1f}.role-card-button i{width:44px;height:44px;color:var(--landing-primary);background:#2457ff1a;border-radius:14px;place-items:center;margin-bottom:18px;font-size:1.1rem;display:grid}.role-card-button strong{margin-bottom:8px;font-size:1.12rem;font-weight:950;display:block}.role-card-button span{color:var(--landing-muted);font-size:.92rem;line-height:1.45;display:block}.back-button{color:var(--landing-primary);cursor:pointer;background:0 0;border:0;margin:0 0 18px;padding:0;font-weight:900}@media (width<=760px){.role-modal-wide{border-radius:26px;padding:26px}.role-grid{grid-template-columns:1fr}.role-card-button{min-height:auto;padding:18px}.role-card-button i{margin-bottom:12px}}@media (width<=430px){.hero-copy h1{font-size:2.55rem}.login-modal{border-radius:24px;width:calc(100vw - 22px);padding:24px}.login-modal h2{font-size:1.55rem}.hero-actions{flex-direction:column;align-items:stretch}.primary-button,.secondary-button,.nav-button{text-align:center;justify-content:center;width:100%}}
