:root{--ink:#15383c;--deep:#102f35;--paper:#f5f2ea;--muted:#687b78;--copper:#b27645;--gold:#d7ab74;--line:#d9dfd6;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:15px;line-height:1.6}a{color:inherit}button,a,input,select,summary{outline-offset:5px}button,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12}h1{font-size:clamp(2.7rem,5vw,4.8rem);letter-spacing:-.045em}h1 em{color:var(--copper);font-weight:400}h2{font-size:1.9rem;letter-spacing:-.025em}h3{font-size:1.6rem}main{max-width:1320px;margin:auto;padding:0 48px;min-height:70vh}.masthead{max-width:1440px;margin:auto;min-height:108px;padding:25px 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-size:21px;letter-spacing:.13em;line-height:1.2}.brand b{font-weight:700}.brand small{display:block;font-size:7px;letter-spacing:.16em;margin-top:7px}.masthead nav{display:flex;gap:25px;align-items:center;font-size:12px}.masthead nav a{text-decoration:none}.masthead form{margin:0}.quiet{background:none;border:0;color:var(--muted);padding:0}.agency-tag{color:var(--muted)}.eyebrow{font-family:system-ui,sans-serif;font-weight:600;font-size:10px;letter-spacing:.17em;line-height:1.5}.live-dot{display:inline-block;width:7px;height:7px;background:var(--copper);border-radius:50%;margin-right:7px}.button{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:15px 19px;border:1px solid var(--line);background:transparent;text-decoration:none;color:var(--ink);font-size:13px;font-weight:600;border-radius:3px}.button-primary{background:var(--deep);border-color:var(--deep);color:#fff}.button:hover:not(:disabled){filter:brightness(1.13)}.notice{padding:20px;border:1px solid #d4c2a3;background:#efe7d6;font-size:13px;line-height:1.7;border-radius:4px}.notice.error{background:#f4ded7;border-color:#d8a393;color:#7d3024;margin-bottom:22px}.small-note{font-size:11px;color:var(--muted)}.site-footer{max-width:1320px;margin:60px auto 0;padding:24px 48px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:8px;letter-spacing:.1em;color:var(--muted)}.skip{position:absolute;top:-100px;left:20px}.skip:focus{top:10px;z-index:100;background:white;padding:10px}.landing{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;padding:75px 0 65px}.landing .eyebrow{margin-bottom:25px}.landing h1{margin-bottom:25px}.lede{max-width:420px;color:var(--muted);font-size:15px;line-height:1.85}.login-buttons{max-width:360px;margin-top:30px}.login-buttons form+form{margin-top:12px}.landing .small-note{margin-top:17px}.landing-art{position:relative;min-height:470px;background:var(--deep);border-radius:48% 48% 5px 5px;color:var(--gold);overflow:hidden}.atlas-circle{position:absolute;inset:20px -10px 10px}.orbit{position:absolute;border:1px solid #d7ab7430;border-radius:50%;inset:7%}.orbit.two{inset:19%}.orbit.three{inset:32%}.crosshair:before,.crosshair:after{content:'';position:absolute;background:#d7ab7425}.crosshair:before{width:1px;height:95%;left:50%;top:2%}.crosshair:after{height:1px;width:95%;top:50%;left:2%}.north{position:absolute;left:49%;top:1%;font-size:10px}.atlas-circle svg{position:absolute;width:100%;height:100%}.map-label{font-size:9px;letter-spacing:.14em;position:absolute}.l1{top:30%;left:19%}.l2{top:58%;left:27%}.l3{top:72%;left:68%}.map-dot{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 6px #d7ab741a}.d1{top:36%;left:28%}.d2{top:63%;left:40%}.d3{top:72%;left:75%}.art-stamp{position:absolute;bottom:25px;left:25px;font-family:var(--serif);font-size:9px;line-height:1.8;letter-spacing:.15em;border:1px solid #d7ab7450;padding:12px 18px;transform:rotate(-7deg)}.art-stamp b{font-size:13px}.landing-features{border-top:1px solid var(--line);padding:32px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.landing-features span{font-size:9px;letter-spacing:.14em;color:var(--copper)}.landing-features h2{font-size:1.5rem;margin:15px 0}.landing-features p{font-size:13px;color:var(--muted);max-width:250px}.career-header{padding:60px 0 40px;display:flex;justify-content:space-between;align-items:center}.career-header h1{font-size:3.6rem}.career-header>div>p:last-child{color:var(--muted);font-size:13px}.rank-card{border:1px solid var(--line);border-radius:4px;min-width:230px;padding:25px;display:grid;grid-template-columns:45px 1fr;gap:8px;background:#eceee5}.rank-card p{font-size:8px;letter-spacing:.13em;line-height:1.6;margin:0}.rank-card strong{display:block;font-size:21px;font-family:var(--serif);letter-spacing:0}.rank-icon{font-size:35px;color:var(--copper);grid-row:span 2}.rank-card>span:last-child{font-size:10px;color:var(--muted)}.resume-strip{display:flex;gap:12px;align-items:center;padding:18px 22px;background:#e6ebe0;border-left:3px solid #708871;font-size:12px;margin-bottom:32px;flex-wrap:wrap}.resume-strip a{margin-left:auto}.section-heading{display:flex;align-items:end;justify-content:space-between;margin:20px 0 24px;gap:15px}.section-heading h2{margin:0}.section-heading>span{font-size:11px;color:var(--muted)}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.case-card{border:1px solid var(--line);padding:22px;background:#fcfaf4;border-radius:5px;display:flex;flex-direction:column;min-height:350px}.case-top{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.1em;gap:10px}.case-top span:last-child{color:var(--copper)}.case-emblem{font-size:48px;margin:12px 0;color:var(--copper);line-height:1.4}.case-card .eyebrow{font-size:8px;color:var(--muted)}.case-card h3{font-size:1.55rem;margin-bottom:24px}.case-card form{margin-top:auto}.case-card select{border:1px solid var(--line);border-radius:3px;background:var(--paper);padding:10px 12px;width:100%;font-size:11px;margin-bottom:10px}.case-card.locked{background:transparent}.case-card.locked .case-emblem{opacity:.35}.locked-note{color:var(--muted);font-size:11px;margin-top:auto}.badge-section{margin-top:65px}.badge-section>h2{font-size:1.9rem;max-width:430px}.badges{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:24px}.badge-card{display:flex;gap:16px;padding:20px;border:1px solid var(--line);border-radius:4px;color:var(--muted)}.badge-card>span{font-size:33px;color:#a8b0a3}.badge-card h3{font-size:18px;line-height:1.2}.badge-card p{font-size:10px;line-height:1.7}.badge-card small{font-size:8px;letter-spacing:.12em}.badge-card.earned{border-color:#cdb085;background:#f2eadb;color:var(--ink)}.badge-card.earned>span{color:var(--copper)}.case-heading{padding:25px 0;display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.1em;color:var(--muted)}.case-heading a{text-decoration:none}.mission-header{display:flex;justify-content:space-between;align-items:center;gap:30px;margin:15px 0 30px}.mission-header h1{font-size:clamp(2rem,4vw,3.4rem);margin:0;max-width:700px}.clock-box{border-left:1px solid var(--line);padding:5px 0 5px 25px;min-width:155px}.clock-box>span{display:block;font-size:8px;letter-spacing:.1em;color:var(--muted)}.clock-box strong{display:block;font-size:28px;font-weight:400;font-family:var(--serif);line-height:1.4}.clock-box small{font:12px system-ui}.investigation-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(285px,1fr);gap:32px}.city-scene{background:#dbe5db;min-height:310px;border-radius:5px;overflow:hidden;position:relative;display:flex;align-items:end}.scene-sky{position:absolute;inset:0;background:linear-gradient(160deg,#dce8da,#e9ddbd)}.sun{width:72px;height:72px;border-radius:50%;background:#e1b17b;position:absolute;right:16%;top:35px;opacity:.8}.scene-sky svg{position:absolute;bottom:60px;left:0;width:100%;height:230px}.skyline-back{fill:#78988a;opacity:.5}.skyline-front{fill:#385e59;opacity:.9}.city-caption{position:relative;background:linear-gradient(transparent,#173c3bea 35%);color:#fff;width:100%;padding:55px 25px 22px}.city-caption>span{font-size:8px;letter-spacing:.17em;color:#d9c5a0}.city-caption h2{font-size:36px;margin:7px 0 10px}.city-caption h2 small{font:10px system-ui;margin-left:12px;color:#d9c5a0}.city-caption p{font-size:11px;line-height:1.65;max-width:430px;margin:0}.scene-river .scene-sky{background:linear-gradient(160deg,#d9e2e6,#d9bf9d)}.scene-spire .skyline-front{fill:#564d55}.scene-spire .scene-sky{background:linear-gradient(160deg,#e5dccd,#b3bfca)}.scene-clock .skyline-back{fill:#8c7773}.mission-brief{padding:25px 0;border-bottom:1px solid var(--line)}.mission-brief>p:not(.eyebrow){font-size:13px;line-height:1.8}.goal{font-size:10px;background:#e5e8de;padding:5px 9px;display:inline-block;border-radius:3px;margin:3px 5px 0 0;color:var(--muted)}.goal.complete{background:#dce9d8;color:#335c3b}.section-heading.compact{margin:27px 0 16px}.compact h2{font-size:1.5rem}.locations{display:grid;gap:10px}.location-button{display:flex;align-items:center;width:100%;gap:14px;padding:17px 18px;border:1px solid var(--line);border-radius:4px;background:#fcfaf4;text-align:left;color:var(--ink)}.location-button:hover{background:#ebece1}.location-button>span:nth-child(2){flex:1;font-family:var(--serif);font-size:18px}.location-button small{display:block;color:var(--muted);font:10px system-ui;margin-top:5px}.location-icon{width:36px;height:36px;display:grid;place-items:center;background:#e6e9de;border-radius:50%;font-size:22px}.location-button.visited{background:#ebeee5}.location-button.visited .location-icon{font-size:14px;color:#557c57}.travel-section{margin-top:30px;border-top:1px solid var(--line);padding-top:22px}.travel-section>summary{font:24px var(--serif)}.travel-section>summary>span{float:right}.travel-section>p{font-size:10px;color:var(--muted);margin:14px 0}.travel-options{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.travel-options button{border:1px solid var(--line);background:#eeeee4;border-radius:3px;padding:14px 12px;width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;color:var(--ink);gap:5px;font-size:13px}.travel-options button small{display:block;font-size:9px;color:var(--muted);margin-top:4px}.travel-options b{font-size:17px;font-weight:400;color:var(--copper)}.desk{background:#eaece2;border:1px solid #d9ddcf;border-radius:5px;padding:24px;height:fit-content}.desk h2{font-size:23px;margin-bottom:20px}.desk h2>span{font:10px system-ui;display:inline-grid;place-items:center;background:#d9dfce;border-radius:50%;width:22px;height:22px;margin-left:8px;vertical-align:middle}.evidence-note{background:#fcf9ed;padding:17px 18px;position:relative;border:1px solid #e0dccb;box-shadow:1px 3px 8px #1f3c3610;border-radius:2px;margin-top:13px}.evidence-note:before{content:'';position:absolute;left:42%;top:-5px;width:45px;height:10px;background:#c6baa354;transform:rotate(-3deg)}.evidence-note>span{font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:var(--copper)}.evidence-note p{font-family:var(--serif);font-size:15px;line-height:1.55;margin:9px 0 12px}.evidence-note small{font-size:8px;display:inline-block;border-top:1px solid #d7d4c6;padding-top:5px;margin-right:8px;color:var(--muted)}.empty-note{font:italic 16px/1.7 var(--serif);color:var(--muted);padding:20px 0}.warrant-section{border-top:1px solid #cdd5c3;margin-top:28px;padding-top:24px}.warrant-section>p:not(.eyebrow){font-size:10px;color:var(--muted)}.trait-check{display:flex;gap:10px;align-items:center;margin:10px 0;padding:8px 10px;background:#f5f4e9;border:1px solid #d7ddce;border-radius:3px}.trait-check input{accent-color:var(--ink)}.trait-check span{font-size:8px;color:var(--muted)}.trait-check b{display:block;font-size:11px;color:var(--ink);font-weight:500}.warrant-section .button{font-size:11px;margin-top:15px}.warrant-section details{margin-top:18px}.desk summary{font-size:11px}.suspect{border-bottom:1px solid #cdd5c3;padding:10px 0}.suspect strong{display:block;font-size:11px;font-weight:600}.suspect span{font-size:9px;color:var(--muted)}.warrant-issued{padding:15px;border:1px solid #a4b99c;border-radius:4px;background:#dce9d4;font-size:10px}.warrant-issued strong{display:block;font-family:var(--serif);font-size:22px;margin-top:7px}.city-facts{border-top:1px solid #cdd5c3;margin-top:24px;padding-top:20px}.city-facts p:not(.small-note){font-size:11px;padding-bottom:12px;border-bottom:1px solid #d6dccd}.city-facts a{font-size:9px;color:var(--copper)}.city-facts .small-note{margin-top:12px;font-size:9px}.confront-section{padding:25px;background:#e5e8dc;border:1px solid #c8d0bf;margin-top:25px;border-radius:4px}.confront-section h2{font-size:25px}.confront-section p{font-size:12px}.result-card{border:1px solid var(--line);border-radius:6px;background:#eeeee2;text-align:center;padding:55px 25px;margin:30px auto;max-width:700px}.result-card h2{font-size:50px;margin:20px 0}.result-card p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:420px;margin:15px auto}.result-card .button{max-width:300px;margin:30px auto 0}.result-symbol{font-size:70px;color:var(--copper)}.offline{background:#f3dfaf;padding:12px;text-align:center;font-size:12px}.htmx-request button{pointer-events:none;opacity:.55}
@media(min-width:1450px){.landing{padding-top:100px}.landing-art{min-height:530px}}@media(max-width:1000px){main{padding:0 28px}.masthead{padding:24px 28px}.landing{gap:25px}.landing-art{min-height:420px}.case-grid{grid-template-columns:repeat(2,1fr)}.badges{gap:12px}.badge-card{padding:14px;gap:8px}.badge-card h3{font-size:16px}.investigation-layout{gap:20px;grid-template-columns:minmax(0,1.45fr) minmax(270px,1fr)}.desk{padding:18px}.travel-options{grid-template-columns:1fr}.travel-options button small{display:inline;margin-left:10px}.mission-header h1{font-size:2.7rem}.career-header h1{font-size:3rem}}@media(max-width:700px){main{padding:0 20px}.masthead{min-height:82px;padding:19px 20px}.brand{font-size:17px;gap:9px}.brand img{width:30px;height:30px}.brand small{font-size:5.5px;letter-spacing:.1em}.agency-tag{display:none}.masthead nav{font-size:10px;gap:14px}.masthead nav>a{display:none}.landing{padding:45px 0 25px;grid-template-columns:1fr;gap:28px}.landing h1{font-size:3.5rem}.landing .eyebrow{font-size:8px;margin-bottom:20px}.lede{font-size:13px}.login-buttons{max-width:none}.landing-art{min-height:320px;border-radius:45% 45% 4px 4px;margin:0 20px}.landing-features{grid-template-columns:1fr;gap:16px;padding:25px 0}.landing-features article{display:grid;grid-template-columns:90px 1fr;column-gap:15px;align-items:start}.landing-features article>span{grid-row:span 2;padding-top:6px;font-size:8px}.landing-features h2{margin:0 0 8px;font-size:1.4rem}.landing-features p{max-width:none;font-size:11px}.site-footer{margin-top:35px;padding:20px;display:block;font-size:7px;line-height:2}.site-footer span{display:block}.career-header{padding:35px 0 25px;gap:15px;align-items:start}.career-header h1{font-size:2.4rem}.career-header .eyebrow{font-size:8px}.career-header>div>p:last-child{font-size:10px}.rank-card{min-width:105px;padding:12px;display:block;text-align:center}.rank-icon{font-size:25px}.rank-card p{font-size:6px;margin-top:5px}.rank-card strong{font-size:17px}.rank-card>span:last-child{font-size:8px}.section-heading h2{font-size:1.7rem}.section-heading>span{font-size:9px;text-align:right;max-width:120px}.section-heading .eyebrow{font-size:8px}.case-grid{grid-template-columns:1fr;gap:15px}.case-card{min-height:0;padding:22px;display:grid;grid-template-columns:55px 1fr;gap:0 14px}.case-top{grid-column:span 2}.case-card .case-emblem{grid-row:span 2;font-size:42px;margin:13px 0 10px}.case-card .eyebrow{margin:24px 0 5px}.case-card h3{margin:0 0 20px;font-size:1.5rem}.case-card form,.locked-note{grid-column:span 2}.case-card form{display:flex;gap:10px;align-items:center}.case-card select{width:48%;margin:0;font-size:10px;min-width:0;height:46px}.case-card .button{padding:12px;font-size:10px;width:52%;gap:5px;height:46px}.badges{grid-template-columns:1fr}.badge-section{margin-top:40px}.badge-section>h2{font-size:1.7rem}.badge-card{gap:20px;padding:18px}.badge-card p{margin:4px 0}.badge-card h3{margin:0;font-size:19px}.badge-card>span{font-size:35px}.case-heading{padding:20px 0;font-size:8px;letter-spacing:.05em}.mission-header{align-items:start;gap:15px;margin:10px 0 25px}.mission-header .eyebrow{font-size:8px}.mission-header h1{font-size:2rem}.clock-box{padding-left:12px;min-width:100px}.clock-box>span{font-size:6px}.clock-box strong{font-size:23px}.clock-box small{font-size:10px}.investigation-layout{grid-template-columns:1fr;gap:25px}.city-scene{min-height:280px}.city-caption{padding:45px 20px 20px}.city-caption h2{font-size:32px}.city-caption p{font-size:10px}.scene-sky svg{height:200px}.mission-brief{padding:22px 0}.mission-brief>p:not(.eyebrow){font-size:12px}.travel-options{grid-template-columns:repeat(3,1fr)}.travel-options button{padding:12px 9px;font-size:12px}.travel-options button small{display:block;margin-left:0;font-size:8px}.travel-options b{font-size:13px}.desk{padding:22px}.desk h2{font-size:25px}.evidence-note p{font-size:17px}.evidence-note>span,.evidence-note small{font-size:9px}.warrant-section>p:not(.eyebrow){font-size:12px}.trait-check span{font-size:10px}.trait-check b{font-size:13px}.warrant-section .button{font-size:12px}.desk summary{font-size:12px}.suspect strong{font-size:13px}.suspect span{font-size:11px}.city-facts p:not(.small-note){font-size:12px}.result-card{padding:35px 20px}.result-card h2{font-size:38px}.result-card p:not(.eyebrow){font-size:12px}}

.mobile-navigation{display:none}@media(max-width:700px){body{padding-bottom:calc(60px + env(safe-area-inset-bottom))}.mobile-navigation{position:fixed;bottom:0;left:0;right:0;z-index:50;display:grid;grid-template-columns:1fr 1fr;background:var(--deep);color:#f5f2ea;padding:14px 20px calc(14px + env(safe-area-inset-bottom));border-top:1px solid #59716c;gap:20px}.mobile-navigation a{text-align:center;text-decoration:none;font-size:12px;letter-spacing:.04em}}

.auth-card{max-width:520px;margin:50px auto}.auth-field{margin:0 0 18px}.auth-field label{display:block;font-weight:600;font-size:13px;margin-bottom:6px}.auth-field input{display:block;width:100%;min-height:46px;border:1px solid var(--line);border-radius:3px;background:#fff;padding:10px 12px;font:inherit;color:var(--ink)}.auth-field ul{padding-left:18px}.field-errors{color:#7d3024;font-size:13px}.field-errors ul{margin:6px 0}.auth-card h1{font-size:3rem}
