:root { --font-archivo:Arial,Helvetica,sans-serif; --font-space:"Courier New",monospace; --navy:#06234f; --ink:#234f5f; --blue:#0a4394; --electric:#115bb5; --green:#b8c900; --forest:#1e653d; --leaf:#3b8c3b; --cream:#f3f5f2; --white:#fff; --line:rgba(35,79,95,.18); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--cream); color:var(--ink); font-family:var(--font-archivo),Arial,sans-serif; }
button,a { font:inherit; }
a { color:inherit; text-decoration:none; }
button { cursor:pointer; }
.topbar { height:84px; padding:0 4vw; display:flex; align-items:center; justify-content:space-between; background:#fff; border-bottom:1px solid var(--line); position:sticky; top:0; z-index:50; }
.brand { display:flex; align-items:center; }
.brandLogo { display:block; width:230px; height:auto; object-fit:contain; }
nav { display:flex; align-items:center; gap:28px; font:700 11px var(--font-space); letter-spacing:.4px; }
nav a:hover { color:var(--blue); }
.reportLink { padding:13px 17px; color:#fff; background:var(--navy); font:700 10px var(--font-space); letter-spacing:.5px; }

.hero { min-height:calc(100vh - 84px); padding:6vw; display:grid; grid-template-columns:1.1fr .9fr; align-items:center; overflow:hidden; background:linear-gradient(115deg,#fff 0 54%,#edf2f4 54%); position:relative; }
.hero:before { content:""; position:absolute; left:0; top:0; width:8px; height:100%; background:var(--green); }
.eyebrow,.sectionCode { font:700 11px var(--font-space); letter-spacing:1.7px; }
.eyebrow span { color:var(--leaf); margin-right:8px; }
h1,h2,h3,p { margin-top:0; }
h1 { font-size:clamp(58px,7.4vw,118px); letter-spacing:-.085em; line-height:.78; margin:28px 0 35px; font-weight:900; }
h1 em,h2 em { color:var(--blue); font-style:normal; }
.heroLead { max-width:580px; font-size:20px; line-height:1.55; color:#41506a; }
.heroActions { display:flex; align-items:center; gap:28px; margin-top:36px; }
.primaryButton { padding:19px 24px; background:var(--blue); color:#fff; font:700 12px var(--font-space); box-shadow:8px 8px 0 var(--green); transition:.2s; }
.primaryButton:hover { transform:translate(-2px,-2px); box-shadow:12px 12px 0 var(--green); }
.primaryButton span { margin-left:28px; }.textButton { font:700 12px var(--font-space); border-bottom:1px solid; padding-bottom:4px; }
.heroStats { display:flex; gap:0; margin-top:70px; }
.heroStats div { display:flex; align-items:center; gap:12px; padding:0 28px; border-left:1px solid var(--line); }.heroStats div:first-child { padding-left:0; border-left:0; }
.heroStats strong { font:700 30px var(--font-space); color:var(--blue); }.heroStats span { font:700 9px/1.5 var(--font-space); letter-spacing:1px; }
.radar { width:min(42vw,570px); aspect-ratio:1; margin:auto; position:relative; border-radius:50%; border:1px solid #99a5b5; background:radial-gradient(circle at center,#071a3d 0 10%,transparent 10.5%),repeating-radial-gradient(circle,transparent 0 12%,rgba(5,49,121,.16) 12.2% 12.5%),conic-gradient(from 25deg,transparent 0 78%,rgba(17,104,255,.18) 84%,transparent 91%); box-shadow:inset 0 0 60px rgba(6,26,62,.1); }
.radar:before,.radar:after { content:""; position:absolute; background:#8e9aad; opacity:.5; }.radar:before { width:1px; height:100%; left:50%; }.radar:after { height:1px; width:100%; top:50%; }
.radarGrid { position:absolute; inset:8%; border-radius:50%; border:1px dashed #78879d; }
.orbit { position:absolute; inset:20%; border:1px solid rgba(17,104,255,.5); border-radius:50%; animation:spin 16s linear infinite; }.orbit span { position:absolute; top:-10px; left:50%; background:var(--cream); color:var(--blue); padding:4px; font:700 8px var(--font-space); }
.orbitTwo { inset:33%; animation-direction:reverse; animation-duration:10s; }.orbitTwo span { top:auto; bottom:-10px; }
.radarCore { position:absolute; inset:39%; display:flex; align-items:center; justify-content:center; flex-direction:column; background:var(--navy); color:#fff; border:8px solid var(--blue); border-radius:50%; z-index:2; box-shadow:0 0 0 8px rgba(17,104,255,.15); }.radarCore b { color:var(--green); font-size:58px; line-height:.8; }.radarCore small { text-align:center; font:700 8px/1.3 var(--font-space); }
.signal { width:11px; height:11px; border-radius:50%; background:var(--green); position:absolute; box-shadow:0 0 0 7px rgba(184,201,0,.18); }.s1{left:18%;top:34%}.s2{right:14%;top:26%}.s3{right:20%;bottom:19%}
.radar>p { position:absolute; bottom:-50px; right:0; text-align:right; font:400 8px/1.6 var(--font-space); letter-spacing:1px; }.radar>p b { color:#377b23; }
@keyframes spin { to { transform:rotate(360deg); } }

.definition { background:#fff; display:grid; grid-template-columns:.25fr 1.2fr .75fr; gap:4vw; padding:110px 6vw 80px; border-top:1px solid var(--line); }
.definitionMain .kicker { color:var(--blue); font:700 11px var(--font-space); letter-spacing:2px; }.definition h2 { font-size:clamp(34px,4vw,65px); line-height:1.08; letter-spacing:-.045em; }.definition h2 span { color:var(--blue); }
.assetList { align-self:center; border-top:1px solid var(--ink); }.assetList div { padding:18px 0; border-bottom:1px solid var(--line); display:flex; align-items:center; gap:20px; }.assetList b { font:700 26px var(--font-space); color:var(--blue); }.assetList span { font:700 11px/1.5 var(--font-space); letter-spacing:1px; }
.definition blockquote { grid-column:2/4; margin:28px 0 0; background:var(--green); padding:24px 30px; font:700 18px var(--font-space); }

.threats,.habits { padding:110px 6vw; background:var(--navy); color:#fff; }
.sectionHead { display:flex; align-items:end; justify-content:space-between; margin-bottom:55px; }.sectionHead>p { width:360px; color:#647089; line-height:1.55; }.sectionHead h2,.incident h2,.quiz h2 { margin:12px 0 0; font-size:clamp(48px,5.4vw,82px); letter-spacing:-.065em; line-height:.86; }.sectionHead.light>p { color:#afbdd3; }.sectionHead.light h2 em { color:var(--green); }
.threatGrid { display:grid; grid-template-columns:1.15fr repeat(3,1fr); border-top:1px solid rgba(255,255,255,.25); border-left:1px solid rgba(255,255,255,.25); }
.threatCard { min-height:410px; padding:25px; border-right:1px solid rgba(255,255,255,.25); border-bottom:1px solid rgba(255,255,255,.25); position:relative; display:flex; flex-direction:column; }.threatCard.featured { background:var(--blue); }.threatNo { font:700 10px var(--font-space); opacity:.65; }.threatIcon { margin:auto 0 35px; font:700 55px var(--font-space); color:var(--green); }.threatCard h3 { font-size:26px; margin-bottom:10px; }.threatCard p { color:#b5c0d2; line-height:1.55; }.threatCard.featured p { color:#fff; }.threatCard ul { display:flex; flex-wrap:wrap; list-style:none; padding:0; gap:7px; }.threatCard li { border:1px solid rgba(255,255,255,.5); padding:5px 8px; font:700 8px var(--font-space); }.miniAlert { margin-top:auto; border-top:1px solid rgba(255,255,255,.2); padding-top:14px; color:var(--green); font:700 9px/1.4 var(--font-space); }

.simulator { padding:110px 6vw; background:var(--cream); }.simulatorLayout { display:grid; grid-template-columns:1.35fr .65fr; box-shadow:16px 16px 0 #d9dbcf; }.messagePanel { background:#fff; border:1px solid var(--ink); }.messageToolbar { display:flex; justify-content:space-between; padding:13px 18px; background:var(--navy); color:#fff; font:700 9px var(--font-space); letter-spacing:1px; }.messageSender { padding:25px; display:flex; align-items:center; gap:14px; border-bottom:1px solid var(--line); }.avatar { width:42px;height:42px;background:#dde6f8;color:var(--blue);display:grid;place-items:center;font-weight:900; }.messageSender div:nth-child(2) { display:flex; flex-direction:column; }.messageSender strong { font-size:14px; }.messageSender small { margin-top:5px; color:#6d7788; }.messageSender button { margin-left:auto;border:0;background:none; }.messageBody { padding:38px 8%; min-height:285px; font-size:17px; line-height:1.65; }.messageSubject { font-size:25px; font-weight:800; line-height:1.2; }.fakeAction { display:inline-block; margin-top:18px; background:var(--blue); color:#fff; padding:13px 20px; font:700 10px var(--font-space); }.decision { background:#f3f4f0; padding:20px 8%; border-top:1px solid var(--line); }.decision p { font:700 10px var(--font-space); letter-spacing:1px; }.decision div { display:flex; gap:10px; }.decision button { flex:1; padding:15px; background:#fff; border:1px solid #8790a0; font:700 10px var(--font-space); }.decision button.selected { color:#fff; background:#276e36; border-color:#276e36; }.decision button.selected.danger { background:#ba2d3b; border-color:#ba2d3b; }
.analysisPanel { background:var(--blue); color:#fff; padding:34px; display:flex; flex-direction:column; }.waiting { margin:auto; text-align:center; max-width:260px; }.waiting>span { margin:auto; width:80px;height:80px;display:grid;place-items:center;border:1px dashed #9cc0ff;border-radius:50%;font:700 38px var(--font-space); }.waiting h3 { margin-top:20px; }.waiting p { color:#c3d6f6; line-height:1.5; }.resultLabel { color:var(--green); font:700 9px var(--font-space); letter-spacing:1px; }.result.wrong .resultLabel { color:#ffd56b; }.result h3 { font-size:25px; }.result ol { padding:0; list-style:none; }.result li { display:flex; align-items:center; gap:10px; padding:10px 0; border-bottom:1px solid rgba(255,255,255,.2); font-size:13px; }.result li span { color:var(--green); font:700 10px var(--font-space); }.verdict { margin-top:20px; color:#dce8ff; line-height:1.5; font-size:13px; }.nextButton { margin-top:auto; color:#fff; background:transparent; border:1px solid rgba(255,255,255,.7); padding:14px; font:700 10px var(--font-space); }

.practiceLab { padding:110px 6vw; background:var(--navy); color:#fff; }
.practiceLab .sectionHead { align-items:flex-end; }.practiceLab .sectionHead h2 em { color:var(--green); }
.labProgress { width:min(360px,100%); font:700 10px var(--font-space); letter-spacing:.6px; }.labProgress>div { height:7px; margin:12px 0; background:rgba(255,255,255,.15); overflow:hidden; }.labProgress i { display:block; width:0; height:100%; background:var(--green); transition:width .35s ease; }.labProgress small { color:#aebbd0; }
.labShell { display:grid; grid-template-columns:270px 1fr; min-height:650px; border:1px solid rgba(255,255,255,.28); }
.labNav { background:#041832; border-right:1px solid rgba(255,255,255,.22); padding:12px; }.labNav button { width:100%; min-height:68px; padding:12px; display:grid; grid-template-columns:34px 1fr 20px; align-items:center; gap:8px; color:#a9b8cc; background:transparent; border:0; border-bottom:1px solid rgba(255,255,255,.12); text-align:left; font:700 10px var(--font-space); letter-spacing:.5px; }.labNav button span { color:#62758e; }.labNav button b { color:#5c7089; text-align:center; }.labNav button:hover,.labNav button.active { background:var(--blue); color:#fff; }.labNav button.done b { color:var(--green); }.labNav button.done b::before { content:"✓"; }.labNav button.done b { font-size:0; }.labNav button.done b::before { font-size:14px; }
.labWorkspace { padding:42px; background:#f2f5f4; color:var(--ink); min-width:0; }.labPanel { animation:labIn .25s ease; }.labPanel[hidden] { display:none; }@keyframes labIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.labTitle { display:flex; gap:20px; align-items:flex-start; padding-bottom:25px; border-bottom:2px solid var(--ink); margin-bottom:30px; }.labTitle>span { color:var(--blue); font:700 11px var(--font-space); padding-top:6px; }.labTitle h3 { margin:0 0 6px; font-size:30px; letter-spacing:-.04em; }.labTitle p { margin:0; color:#667783; }
.browserMock,.miniMail,.linkReveal,.passwordLab,.loginMock,.verifyMock,.phoneMock,.attachmentMock,.fileWindow { background:#fff; border:1px solid #afbbc0; }
.browserTop { height:42px; padding:0 16px; display:flex; gap:7px; align-items:center; background:#dfe5e6; font:700 9px var(--font-space); }.browserTop i { width:9px;height:9px;border-radius:50%;background:#a8b2b5; }.browserTop span { margin-left:10px; color:#637077; }
.urlChoices { padding:15px; display:grid; gap:10px; }.urlChoices button { padding:17px; display:flex; gap:16px; align-items:center; background:#f7f8f7; border:1px solid #cbd2d3; text-align:left; color:#53626c; overflow-wrap:anywhere; }.urlChoices button small { width:28px;height:28px;display:grid;place-items:center;background:var(--navy);color:#fff;font:700 10px var(--font-space); }.urlChoices button:hover { border-color:var(--blue); }.urlChoices button.correct { border-color:var(--leaf); background:#e7f1df; }.urlChoices button.wrong { border-color:#b73748; background:#f7e2e5; }.urlChoices b { color:var(--ink); }
.labFeedback { margin-top:18px; padding:15px 18px; border-left:5px solid var(--blue); background:#e5ebed; color:#435661; line-height:1.5; }.labFeedback.success { border-color:var(--leaf); background:#e3efdc; color:var(--forest); }.labFeedback.danger { border-color:#b73748; background:#f7e2e5; color:#842b37; }
.linkTest { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.miniMail,.linkReveal { padding:25px; min-height:190px; }.miniMail small,.linkReveal small { font:700 9px var(--font-space); color:#64727b; }.miniMail p { margin:28px 0 12px; }.miniMail button { color:var(--blue); border:0; background:none; padding:0; text-decoration:underline; font-weight:700; }.linkReveal { display:flex; flex-direction:column; }.linkReveal code { margin:auto 0; padding:12px; background:#edf0ef; color:#7e2937; overflow-wrap:anywhere; }.linkReveal button { border:0; background:var(--navy); color:#fff; padding:12px; font:700 9px var(--font-space); }.labDecision { display:flex; gap:10px; margin-top:16px; }.labDecision button { flex:1; border:1px solid #8d989d; background:#fff; color:var(--ink); padding:14px; font:700 9px var(--font-space); }.labDecision button:last-child { background:var(--blue); color:#fff; border-color:var(--blue); }
.passwordLab { padding:28px; }.passwordLab label>span { display:block; margin-bottom:8px; font:700 9px var(--font-space); }.passwordLab label>div { display:flex; }.passwordLab input { flex:1; min-width:0; padding:15px; border:1px solid #aeb9bd; outline:none; font-family:var(--font-space); }.passwordLab label button { border:0; background:var(--navy); color:#fff; padding:0 18px; font:700 9px var(--font-space); }.passwordMeter { height:10px; margin:20px 0 9px; background:#dfe4e2; }.passwordMeter i { display:block; width:0; height:100%; background:#b73748; transition:.2s; }.passwordLab>strong { font:700 11px var(--font-space); }.passwordLab ul { display:grid; grid-template-columns:1fr 1fr; gap:8px; list-style:none; padding:20px 0; margin:0; }.passwordLab li { color:#7b878d; font-size:13px; }.passwordLab li::before { content:"○"; margin-right:8px; }.passwordLab li.pass { color:var(--forest); }.passwordLab li.pass::before { content:"✓"; }.labPrimary { border:0; background:var(--blue); color:#fff; padding:14px 18px; font:700 9px var(--font-space); }.passwordLab>small { display:block; margin-top:15px; color:#6d797e; }
.mfaLab { display:grid; grid-template-columns:1fr 34px .8fr 34px 1fr; align-items:stretch; }.loginMock,.verifyMock,.phoneMock { min-height:260px; padding:25px; display:flex; flex-direction:column; }.loginMock>span,.verifyMock>span { width:28px;height:28px;display:grid;place-items:center;background:var(--green);color:var(--navy);font:700 10px var(--font-space); }.mfaLab h4 { margin:35px 0 8px; }.mfaLab p { color:#69767e; line-height:1.5; }.mfaLab button { margin-top:auto; border:0; background:var(--navy); color:#fff; padding:12px; font:700 9px var(--font-space); }.mfaLab button:disabled { opacity:.4; }.mfaArrow { display:grid;place-items:center;color:var(--green);font-size:24px; }.phoneMock { background:var(--navy); color:#fff; text-align:center; justify-content:center; border:8px solid #173f68; }.phoneMock strong { display:block; margin:30px 0 12px; color:var(--green); font:700 28px var(--font-space); letter-spacing:5px; }.phoneMock i { color:#9fb0c5; font-size:10px; }.verifyMock input { margin-top:25px; padding:14px; text-align:center; font:700 20px var(--font-space); letter-spacing:6px; border:1px solid #aeb9bd; }
.attachmentMock { padding:18px; display:flex; align-items:center; gap:14px; }.attachmentMock>span { width:48px;height:52px;display:grid;place-items:center;background:#f1d8a0;color:#6f4d00;font:700 10px var(--font-space); }.attachmentMock>div { display:flex; flex-direction:column; }.attachmentMock small { margin-top:4px;color:#758087; }.attachmentMock button { margin-left:auto;border:0;background:var(--navy);color:#fff;padding:12px;font:700 9px var(--font-space); }.infectionChain { display:grid; grid-template-columns:repeat(7,auto); align-items:center; justify-content:space-between; margin:30px 0; }.infectionChain>div { width:112px; min-height:120px; padding:14px; display:flex;flex-direction:column;background:#dfe5e5;border-top:4px solid #84969e;opacity:.5; }.infectionChain>div.active { opacity:1;background:#f8dedf;border-color:#b73748; }.infectionChain span { color:var(--blue);font:700 9px var(--font-space); }.infectionChain b { margin-top:auto;font-size:12px; }.infectionChain small { margin-top:5px;color:#6f7c82; }.infectionChain>i { color:#839098; }
.fileWindowTop { padding:12px 16px;background:var(--navy);color:#fff;font:700 9px var(--font-space);display:flex;justify-content:space-between; }.fileWindowTop span { color:var(--green); }.fileWindow ul { list-style:none;padding:12px 18px;margin:0; }.fileWindow li { display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #dfe4e4; }.fileWindow li b { color:var(--forest);font:700 8px var(--font-space); }.fileWindow li.locked { color:#8a2734; }.fileWindow li.locked b { color:#b73748; }.ransomLab>.labPrimary { margin-top:16px; }.ransomNote { margin-top:16px;padding:18px;background:#861e2e;color:#fff;text-align:center; }.ransomNote strong { font:700 13px var(--font-space); }.ransomNote p { margin:8px 0 0;color:#ffdce1; }
.diagnosisLab { display:grid;grid-template-columns:.9fr 1.1fr;gap:30px;align-items:center; }.computerMock { padding:20px; }.monitor { height:260px;background:linear-gradient(145deg,#0a4394,#06234f);border:14px solid #263b45;position:relative;overflow:hidden; }.desktopIcons { display:flex;flex-direction:column;gap:14px;padding:18px; }.desktopIcons i { font-style:normal; }.popup { position:absolute;right:12px;top:45px;width:190px;padding:14px;background:#fff;color:#8a2734;border-top:5px solid #b73748;font-size:12px; }.popup button { margin-top:10px;border:0;background:#b73748;color:#fff;padding:8px;font:700 8px var(--font-space); }.taskbar { position:absolute;bottom:0;left:0;right:0;padding:10px;background:#05152b;display:flex;justify-content:space-between;color:#fff;font-size:10px; }.taskbar b { color:#ff6578; }.stand { width:110px;height:22px;margin:auto;background:#263b45;clip-path:polygon(35% 0,65% 0,80% 75%,100% 75%,100% 100%,0 100%,0 75%,20% 75%); }.symptomList { display:grid;gap:8px; }.symptomList button { padding:12px;text-align:left;background:#fff;color:var(--ink);border:1px solid #bcc6c9; }.symptomList button.selected { border-color:var(--blue);background:#dfe9f3; }.symptomList .labPrimary { text-align:center;background:var(--blue);color:#fff;border:0;margin-top:8px; }

.habits { background:#fff; color:var(--ink); }.habits .sectionHead h2 em { color:var(--blue); }.habits .sectionHead.light>p { color:#647089; }.accordion { border-top:2px solid var(--ink); }.habit { width:100%; display:grid; grid-template-columns:70px 1fr 40px; align-items:start; text-align:left; background:transparent; color:var(--ink); border:0; border-bottom:1px solid var(--line); padding:22px 0; }.habit:hover,.habit.active { color:var(--blue); }.habitNo { font:700 11px var(--font-space); padding-top:6px; }.habitText { display:flex; flex-direction:column; }.habitText strong { font-size:24px; }.habitText small { color:#5a6577; font-size:15px; line-height:1.5; margin-top:9px; max-width:740px; }.habitToggle { font:400 27px var(--font-space); text-align:right; }

.incident { display:grid; grid-template-columns:.8fr 1.2fr; background:var(--green); }.incidentIntro { padding:90px 6vw; }.incidentIntro h2 em { color:var(--blue); }.incidentIntro>p:not(.sectionCode) { max-width:430px; line-height:1.6; font-size:18px; }.incidentIntro>a { display:inline-block; margin-top:30px; background:var(--navy); color:#fff; padding:15px 20px; font:700 10px var(--font-space); }.protocol { display:grid; grid-template-columns:1fr 1fr; background:var(--navy); }.protocol div { min-height:280px; padding:35px; color:#fff; border-left:1px solid rgba(255,255,255,.18); border-bottom:1px solid rgba(255,255,255,.18); display:flex; flex-direction:column; }.protocol span { color:var(--green); font:700 11px var(--font-space); }.protocol b { font-size:26px; margin-top:auto; }.protocol p { color:#afbdd3; line-height:1.5; margin:8px 0 0; }

.quiz { background:#eef2f1; padding:110px 6vw; }.quizTop { display:flex; justify-content:space-between; align-items:end; border-bottom:2px solid var(--ink); padding-bottom:40px; }.score { min-width:230px; }.score small { font:700 9px var(--font-space); letter-spacing:1px; }.score strong { display:block; font:700 66px/1 var(--font-space); color:var(--blue); }.score strong span { color:#9ba3ae; font-size:26px; }.score p { margin:8px 0 0; font-size:13px; }.quizItem { display:grid; grid-template-columns:.85fr 1.15fr; gap:5vw; padding:38px 0; border-bottom:1px solid var(--line); }.quizQuestion { display:flex; gap:25px; }.quizQuestion>span { font:700 10px var(--font-space); color:var(--blue); padding-top:5px; }.quizQuestion h3 { font-size:25px; line-height:1.3; }.quizOptions { display:grid; gap:8px; }.quizOptions button { display:flex; align-items:center; gap:12px; padding:13px; background:#fff; color:var(--ink); border:1px solid #bec3c3; text-align:left; }.quizOptions button:hover { border-color:var(--blue); }.quizOptions button>span { width:26px;height:26px;display:grid;place-items:center;background:#e9ebea;font:700 10px var(--font-space); }.quizOptions button b { margin-left:auto; }.quizOptions .correctOption { border-color:var(--leaf); background:#e8f2df; }.quizOptions .wrongOption { border-color:#b54955; background:#fae5e7; }
.participantForm { margin-top:70px; background:#fff; border-top:8px solid var(--green); padding:42px; display:grid; grid-template-columns:.75fr 1.25fr; gap:6vw; box-shadow:14px 14px 0 rgba(6,35,79,.12); }
.websiteField { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.formIntro h3 { margin:14px 0 12px; font-size:34px; letter-spacing:-.04em; }.formIntro>p:last-child { color:#65737d; line-height:1.55; }
.formFields { display:grid; grid-template-columns:1fr 1fr; gap:18px; }.formFields label { display:flex; flex-direction:column; gap:8px; }.formFields label span { font:700 9px var(--font-space); letter-spacing:1px; }.formFields input { width:100%; padding:15px 14px; background:#f3f5f2; color:var(--ink); border:1px solid #b8c1c3; outline:none; }.formFields input:focus { border-color:var(--blue); box-shadow:0 0 0 3px rgba(10,67,148,.12); }.formFields button { grid-column:1/-1; padding:17px; background:var(--navy); color:#fff; border:0; font:700 10px var(--font-space); letter-spacing:.7px; }.formFields button:disabled { opacity:.45; cursor:not-allowed; }.privacyNote { grid-column:1/-1; color:#66727d; }.saveMessage { grid-column:1/-1; margin:0; padding:12px 14px; background:#e4efdc; color:var(--forest); font-weight:700; }.saveMessage.error { background:#f9e3e5; color:#a12c3b; }

.finalCallout { padding:80px 6vw; display:grid; grid-template-columns:1fr 1fr; align-items:end; background:var(--blue); color:#fff; }.finalCallout>div p { font:700 10px var(--font-space); letter-spacing:1px; color:var(--green); }.finalCallout h2 { font-size:clamp(52px,6vw,92px); line-height:.85; letter-spacing:-.06em; margin:0; }.finalCallout h2 em { color:var(--green); }.finalCallout>p { max-width:500px; font-size:21px; line-height:1.5; }
footer { padding:65px 6vw 40px; display:grid; grid-template-columns:1.5fr .8fr .8fr; gap:40px; background:var(--navy); color:#fff; }.footerLogo { width:300px; background:#fff; padding:12px 16px; }footer>div:not(.brand) { display:flex; flex-direction:column; gap:7px; }footer>div>small { color:var(--green); font:700 9px var(--font-space); letter-spacing:1px; margin-bottom:8px; }footer>div a,footer>div span { color:#c2ccda; }footer>p { grid-column:1/-1; margin:35px 0 0; border-top:1px solid rgba(255,255,255,.15); padding-top:25px; color:#8795a9; font:400 10px var(--font-space); }

@media (max-width:900px) {
  nav { display:none; }.topbar { height:70px; }.reportLink { padding:10px; font-size:8px; }
  .hero { min-height:auto; grid-template-columns:1fr; padding:80px 7vw 100px; background:#fff; }.radar { width:min(78vw,520px); margin-top:90px; }.heroStats { flex-wrap:wrap; gap:20px; }.heroStats div { padding:0 15px; }
  .definition { grid-template-columns:1fr; padding:80px 7vw; }.definitionMain,.assetList,.definition blockquote { grid-column:1; }.definition blockquote { margin-top:10px; }
  .threats,.habits,.simulator,.quiz { padding:80px 7vw; }.sectionHead { align-items:start; flex-direction:column; gap:25px; }.sectionHead>p { width:auto; }.threatGrid { grid-template-columns:1fr 1fr; }.simulatorLayout { grid-template-columns:1fr; }.analysisPanel { min-height:430px; }
  .labShell { grid-template-columns:1fr; }.labNav { display:grid;grid-template-columns:repeat(2,1fr);border-right:0;border-bottom:1px solid rgba(255,255,255,.22); }.labWorkspace { padding:28px; }.mfaLab { grid-template-columns:1fr;gap:10px; }.mfaArrow { transform:rotate(90deg); }.infectionChain { grid-template-columns:1fr;gap:8px; }.infectionChain>div { width:100%;min-height:80px; }.infectionChain>i { transform:rotate(90deg);text-align:center; }.diagnosisLab { grid-template-columns:1fr; }.incident { grid-template-columns:1fr; }.incidentIntro { padding:80px 7vw; }.quizItem { grid-template-columns:1fr; }.participantForm { grid-template-columns:1fr; }.finalCallout { grid-template-columns:1fr; gap:40px; }footer { grid-template-columns:1fr 1fr; }footer .brand { grid-column:1/-1; }
}
@media (max-width:560px) {
  .brandLogo { width:165px; }.hero { padding-top:60px; }h1 { font-size:56px; }.heroLead { font-size:17px; }.heroActions { align-items:flex-start; flex-direction:column; }.heroStats div { width:44%; border:0; padding:0; }.radar { margin-bottom:20px; }.threatGrid { grid-template-columns:1fr; }.threatCard { min-height:340px; }.decision div { flex-direction:column; }.messageSender strong { font-size:11px; word-break:break-all; }.analysisPanel { padding:26px; }.practiceLab { padding:70px 5vw; }.labNav { grid-template-columns:1fr; }.labWorkspace { padding:20px; }.labTitle h3 { font-size:23px; }.linkTest { grid-template-columns:1fr; }.labDecision { flex-direction:column; }.passwordLab ul { grid-template-columns:1fr; }.attachmentMock { align-items:flex-start;flex-wrap:wrap; }.attachmentMock button { margin-left:62px; }.fileWindow li { gap:10px;font-size:12px; }.monitor { height:220px; }.habit { grid-template-columns:44px 1fr 25px; }.habitText strong { font-size:18px; }.protocol { grid-template-columns:1fr; }.protocol div { min-height:220px; }.quizTop { align-items:start; flex-direction:column; gap:30px; }.quizQuestion h3 { font-size:20px; }.participantForm { padding:25px; }.formFields { grid-template-columns:1fr; }.formFields button,.privacyNote,.saveMessage { grid-column:1; }.finalCallout>p { font-size:17px; }footer { grid-template-columns:1fr; }footer .brand { grid-column:1; }.footerLogo { width:260px; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.orbit { animation:none; } }
