:root{--navy:#0c1a2e;--gold:#d4a017;--cream:#faf8f3;--ink:#1a2a3a;--red:#b3261e}
*{box-sizing:border-box}body{margin:0;font:18px/1.6 Georgia,serif;color:var(--ink);background:var(--cream)}
a{color:#1d4f91}.wrap{max-width:1040px;margin:0 auto;padding:0 20px}.narrow{max-width:780px}
.top{background:var(--navy);position:sticky;top:0;z-index:5}.bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:12px 20px}
.logo{color:#fff;font:700 22px system-ui,sans-serif;text-decoration:none}.logo span{color:var(--gold)}
.top nav a{color:#e8e2d2;text-decoration:none;font:15px system-ui,sans-serif;margin-left:18px}.top nav a:hover{color:var(--gold)}
h1,h2,h3{font-family:system-ui,sans-serif;line-height:1.2;color:var(--navy)}
.hero{background:linear-gradient(135deg,#0c1a2e,#1b3558);color:#fff;padding:80px 0 70px}.hero h1{color:#fff;font-size:clamp(32px,5vw,54px);margin:.2em 0}
.eyebrow{color:var(--gold);font:700 14px system-ui;letter-spacing:.15em;text-transform:uppercase}.lead{font-size:21px}.hero .lead{color:#dfe6f0;max-width:720px}
.btn{display:inline-block;background:var(--gold);color:var(--navy);font:700 17px system-ui;padding:13px 24px;border-radius:8px;border:0;text-decoration:none;cursor:pointer;margin:6px 8px 6px 0}
.btn.ghost{background:transparent;color:inherit;border:2px solid currentColor}.hero .btn.ghost{color:#fff}
.steps li{margin-bottom:18px}blockquote.v{margin:12px 0;padding:12px 18px;background:#fff;border-left:4px solid var(--gold);border-radius:0 8px 8px 0}
blockquote.v p{margin:0;font-style:italic}blockquote.v cite{display:block;font:13px system-ui;color:#6b6b6b;margin-top:4px}
.callout{background:var(--navy);color:#fff;padding:24px;border-radius:12px;margin:30px 0}.callout h3{color:var(--gold)}.callout blockquote{color:var(--ink)}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:30px 0 50px}.card{background:#fff;padding:20px;border-radius:12px;text-decoration:none;color:inherit;box-shadow:0 2px 10px #0001;border-top:4px solid var(--gold)}
.toc{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 30px}.toc a{background:#fff;border:1px solid #d8d2c4;padding:6px 12px;border-radius:20px;font:14px system-ui;text-decoration:none}
.qa,.trad{background:#fff;padding:8px 26px 18px;border-radius:12px;margin-bottom:26px;box-shadow:0 1px 6px #0001}.obj{background:#f4f0e6;padding:10px 14px;border-radius:8px}
.trad .view{border-left:4px solid #999;padding-left:14px}.trad .fg{border-left:4px solid var(--gold);padding-left:14px}
.dbg-controls{display:flex;flex-wrap:wrap;gap:16px;font:15px system-ui;margin:16px 0}.dbg-controls select{display:block;padding:8px;font-size:15px}.chk{align-self:end}
.chat{background:#fff;border:1px solid #d8d2c4;border-radius:12px;height:440px;overflow:auto;padding:16px}.m{margin:0 0 14px;max-width:85%}.m b{font:700 13px system-ui;color:#777}.m p{margin:2px 0 0;padding:10px 14px;border-radius:12px}
.m.ai p{background:#f0ece2}.m.you{margin-left:auto}.m.you p{background:var(--navy);color:#fff}.wait p{opacity:.6}
.composer textarea,.contact input,.contact textarea{width:100%;font:17px Georgia,serif;padding:12px;border:1px solid #c9c2b2;border-radius:8px;margin-top:10px}.row{display:flex;justify-content:flex-end;flex-wrap:wrap}
.contact label{display:block;margin-bottom:14px;font:15px system-ui}.hp{position:absolute;left:-9999px}.small{font-size:14px;color:#666}
footer{background:var(--navy);color:#cfd6e0;padding:26px 0;margin-top:50px}footer a{color:var(--gold)}
.gate{background:#fff;border:1px solid #d8d2c4;border-top:4px solid var(--gold);border-radius:12px;padding:18px 24px;margin:18px 0}
.gate label{display:block;font:15px system-ui;margin:10px 0}.gate input{width:100%;font:17px Georgia,serif;padding:10px;border:1px solid #c9c2b2;border-radius:8px;margin-top:4px}
.gmsg{font:15px system-ui;color:var(--navy);min-height:1.2em}.gmsg.err{color:var(--red)}.privacy{font:14px system-ui;color:#555;background:#f4f0e6;padding:10px 12px;border-radius:8px}
.idle{font:15px system-ui;background:#fff6dc;border:1px solid #e8cf7a;padding:8px 12px;border-radius:8px}.notice{background:#eef4fb;border:1px solid #b9cde6;padding:12px;border-radius:8px;font:15px system-ui}
.gs{position:relative;flex:1;max-width:300px;margin:0 16px}.gs input{width:100%;padding:8px 12px;border-radius:20px;border:0;font:15px system-ui;box-sizing:border-box}
.gsr{position:absolute;top:110%;left:0;right:0;min-width:300px;background:#fff;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.25);max-height:70vh;overflow:auto;z-index:10}
.gsr a,.gsr p{display:block;padding:10px 14px;border-bottom:1px solid #eee;text-decoration:none;color:var(--ink);font:14px system-ui;margin:0}.gsr a:hover{background:#f4f0e6}.gsr b{display:block;color:var(--navy)}.gsr span{color:#555;font-size:13px}.gsr .all{font-weight:700;color:var(--navy)}
mark{background:#ffe48a;padding:0 1px}
.qsearch{position:sticky;top:64px;z-index:3;background:var(--cream);padding:10px 0;display:flex;gap:10px;align-items:center}.qsearch input{flex:1;font:18px system-ui;padding:14px 16px;border:2px solid var(--navy);border-radius:10px}#qcount{font:15px system-ui;color:#555;white-space:nowrap}
.qtoc{font:15px system-ui;line-height:1.9}.qcat h2{font-size:30px;border-bottom:3px solid var(--gold);padding-bottom:6px;margin-top:40px}.qa h3{font-size:21px;margin:26px 0 6px}.qa p{font-size:18px;margin:0}
.qnone{background:#f4f0e6;padding:14px;border-radius:8px;font:17px system-ui}.sr h3{margin-bottom:4px}.sr p{margin-top:0}
@media(max-width:700px){.gs{order:3;max-width:none;flex-basis:100%;margin:10px 0 0}.gsr{min-width:0}.qcat h2{font-size:25px}.qa h3{font-size:19px}.qsearch{top:0}}
.top nav a{white-space:nowrap;display:inline-block}
