:root{
  color-scheme:light;
  --black:#151515;--carbon:#25211d;--coffee:#2D2011;--taupe:#51463B;--stone:#6d645a;
  --paper:#EDEBE4;--surface:#F6F3EA;--surface2:#E3DED3;--signature:#582F0E;--signature2:#7F4F24;
  --warm:#B6AD90;--gold:#C4A67C;--ok:#2F5C3A;--risk:#7A352A;--line:rgba(64,52,39,.16);
  --serif:"Fraunces",Georgia,serif;--sans:"Work Sans","Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}html{background:var(--paper);scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--carbon);font:15px/1.55 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit}
.wrap{width:min(1240px,calc(100% - 40px));margin:0 auto}.top{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.top img{width:124px;height:auto}.top-links{display:flex;gap:22px;align-items:center;color:var(--stone);font-size:13px}.top-links a:hover{color:var(--signature)}
.hero{padding:64px 0 36px;border-bottom:1px solid var(--line)}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--signature2)}h1,h2,h3{font-family:var(--serif);font-weight:300;letter-spacing:-.04em;color:var(--black);margin:0}.hero h1{font-size:clamp(46px,6vw,76px);line-height:.96;margin:12px 0 18px}.hero p{max-width:780px;font-size:19px;color:var(--taupe);margin:0}.hero-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.pill{border:1px solid var(--line);background:rgba(255,255,255,.24);padding:7px 10px;border-radius:999px;font-size:11px}
.toolbar{padding:22px 0;display:grid;grid-template-columns:minmax(260px,1fr) 220px 220px;gap:12px;border-bottom:1px solid var(--line)}.field{height:46px;border:1px solid var(--line);background:#f5f1e8;border-radius:7px;padding:0 14px;color:var(--carbon);outline:none}.field:focus{border-color:var(--signature2)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:28px 0 54px}.card{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:22px;display:flex;flex-direction:column;min-height:310px;transition:.18s ease}.card:hover{transform:translateY(-2px);border-color:rgba(88,47,14,.35);box-shadow:0 14px 30px rgba(45,32,17,.06)}.card-top{display:flex;align-items:start;justify-content:space-between;gap:14px}.num{font:400 12px var(--sans);letter-spacing:.16em;color:var(--stone)}.score{font-family:var(--serif);font-size:28px;color:var(--signature)}.score small{font:400 11px var(--sans);color:var(--stone)}.card h2{font-size:27px;margin:16px 0 8px}.card .subtitle{color:var(--taupe);font-size:13px}.card .summary{color:var(--stone);font-size:13px;margin:16px 0}.badges{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}.badge{display:inline-flex;padding:5px 7px;border-radius:4px;background:#e3ddd1;font-size:9px;letter-spacing:.09em;text-transform:uppercase;color:var(--taupe)}.open{margin-top:16px;color:var(--signature);font-size:13px;font-weight:600}
.empty{padding:70px 0;text-align:center;color:var(--stone);grid-column:1/-1}
.detail{padding:34px 0 70px}.back{display:inline-flex;margin-bottom:22px;color:var(--signature);font-size:13px}.detail-head{display:grid;grid-template-columns:1fr 190px;gap:28px;padding:22px 0 34px;border-bottom:1px solid var(--line)}.detail-head h1{font-size:clamp(42px,5vw,68px);line-height:1}.detail-head .lead{font-size:18px;color:var(--taupe);max-width:820px;margin:14px 0 0}.score-box{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:20px;align-self:start}.score-box b{display:block;font:300 45px/1 var(--serif);color:var(--signature)}.score-box span{font-size:11px;color:var(--stone)}.meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.quick-title{font-size:30px;margin:34px 0 16px}.quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.quick-card{background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:20px}.quick-card h3{font:600 10px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--signature2);margin-bottom:8px}.quick-card p{margin:0;color:var(--taupe)}.quick-card ul{margin:0;padding-left:18px;color:var(--taupe)}
.section{padding:34px 0;border-bottom:1px solid var(--line)}.section h2{font-size:34px;margin-bottom:14px}.section-intro{max-width:900px;color:var(--taupe);font-size:16px}.bullet-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 24px;margin-top:18px}.bullet{border-left:2px solid var(--gold);padding:9px 0 9px 14px;color:var(--taupe)}
.connection-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:18px}.connection{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:18px}.connection h3{font-family:var(--sans);font-size:14px;font-weight:600;letter-spacing:0;margin-bottom:6px}.connection p{margin:0;color:var(--stone)}
.workflow-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.workflow{background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:20px}.workflow h3{font-size:22px;margin-bottom:14px}.steps{display:grid;gap:8px}.step{display:flex;gap:9px;color:var(--taupe);font-size:13px}.step i{font-style:normal;color:var(--signature);font-weight:600}
.risk{background:#efe3da;border:1px solid rgba(122,53,42,.18);border-radius:9px;padding:18px;color:#63372f;margin:8px 0}
.eval{width:100%;border-collapse:collapse;margin-top:16px}.eval td{padding:11px 0;border-bottom:1px solid var(--line)}.eval td:last-child{text-align:right}.stars{letter-spacing:.08em;color:var(--signature)}
.sources{display:grid;gap:8px}.source{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid var(--line)}.source a{color:var(--signature);font-size:13px}.footnote{font-size:12px;color:var(--stone);margin-top:16px}
.gate{position:fixed;inset:0;background:rgba(23,23,23,.88);z-index:20;display:none;align-items:center;justify-content:center;padding:20px}.locked .gate{display:flex}.locked #app{filter:blur(3px);pointer-events:none}.gate-card{width:min(540px,100%);background:var(--paper);padding:34px;border-radius:12px}.gate-card img{width:132px}.gate-card h2{font-size:36px;margin:20px 0 10px}.gate-card p{color:var(--taupe)}.gate-card form{display:grid;gap:10px}.btn{height:46px;border:1px solid var(--signature);background:var(--signature);color:#f7f2e7;border-radius:6px;padding:0 18px;cursor:pointer}.gate-error{color:var(--risk);font-size:12px;min-height:18px}
.loading{padding:100px 0;text-align:center;color:var(--stone)}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}.toolbar{grid-template-columns:1fr 1fr}.toolbar .search-field{grid-column:1/-1}.workflow-grid{grid-template-columns:1fr 1fr}.detail-head{grid-template-columns:1fr}.score-box{width:180px}.bullet-list,.connection-grid{grid-template-columns:1fr}}
@media(max-width:620px){.wrap{width:min(100% - 24px,1240px)}.top-links a:not(:last-child){display:none}.hero{padding-top:40px}.toolbar,.grid,.quick-grid,.workflow-grid{grid-template-columns:1fr}.toolbar .search-field{grid-column:auto}.card{min-height:0}.detail{padding-top:22px}.detail-head h1{font-size:40px}.section h2{font-size:29px}}
