:root{--bg:#0d2116;--panel:#143222;--panel2:#1a3c2a;--line:#2b4a37;--gold:#8cc8ef;--gold2:#b5dcf5;--ink:#f3efe6;--dim:#a9bdb0;--no:#c4584f;--ok:#7bc47f}
*{box-sizing:border-box}html{background:var(--bg)}
body{margin:0;background:radial-gradient(1200px 600px at 85% -10%,rgba(140,200,239,.10),transparent 60%),var(--bg);color:var(--ink);font:16px/1.55 Roboto,system-ui,sans-serif}
a{color:var(--gold)}[hidden]{display:none!important}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px 60px}
header{padding:40px 0 20px}
.crumbs{display:flex;gap:16px;font-size:.88rem;margin-bottom:22px;flex-wrap:wrap}.crumbs a{text-decoration:none}.crumbs span{color:var(--dim)}
.kicker{color:var(--gold);letter-spacing:.18em;text-transform:uppercase;font-size:.78rem;font-weight:700}
h1{font:700 clamp(2.2rem,5vw,3.4rem)/1.1 Gelasio,serif;margin:.25em 0 .3em}h1 em{font-style:normal;color:var(--gold)}
.lede{color:var(--dim);max-width:720px;font-size:1.08rem;margin:0 0 14px}
.disclaimer{max-width:820px;font-size:.88rem;color:var(--dim);border-left:3px solid var(--gold);padding:6px 0 6px 12px;margin:0}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin-top:22px}
.card{all:unset;box-sizing:border-box;display:block;cursor:pointer;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px;transition:border-color .15s,transform .15s}
.card:hover,.card:focus-visible{border-color:var(--gold);transform:translateY(-2px)}.card:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.card .nm{display:flex;align-items:center;gap:10px;font:700 1.12rem Gelasio,serif}
.dot{width:12px;height:12px;border-radius:50%;flex:none;display:inline-block}
.card .tr{color:var(--dim);font-size:.86rem;margin:4px 0 10px;min-height:2.6em}
.card .row{display:flex;justify-content:space-between;font-size:.86rem}.card .libr{color:var(--gold);font-weight:700}
.profile{margin-top:34px;background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:26px}
.ph{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}
.av{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font:700 1.6rem Gelasio,serif;color:#111;flex:none}
.ph h2{margin:0;font:700 2rem/1.15 Gelasio,serif}.ph .tr{color:var(--dim);margin:4px 0 0}
.close{margin-left:auto;background:var(--panel2);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:8px 14px;cursor:pointer;font:inherit}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:22px 0}
.fact{background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:12px}.fact b{display:block;font:700 1.25rem Gelasio,serif;color:var(--gold)}.fact span{color:var(--dim);font-size:.82rem}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.box{background:var(--panel2);border:1px solid var(--line);border-radius:14px;padding:16px 18px}
.box h3{margin:0 0 10px;font:600 1.05rem Gelasio,serif;color:var(--gold2)}
.box p{margin:0 0 8px}.box ul{margin:0;padding:0;list-style:none}.box li{padding:7px 0;border-top:1px solid var(--line);font-size:.93rem}.box li:first-child{border-top:0}
.muted{color:var(--dim);font-size:.86rem}
.quote{font:600 1.05rem/1.5 Gelasio,serif}
.addr{font-family:ui-monospace,Menlo,monospace;font-size:.82rem;word-break:break-all}
.in{color:var(--ok)}.out{color:var(--no)}
.tag{display:inline-block;background:rgba(140,200,239,.1);border:1px solid rgba(140,200,239,.35);color:var(--gold2);border-radius:999px;padding:2px 10px;font-size:.78rem;margin:2px 4px 2px 0}
@media(max-width:820px){.cols{grid-template-columns:1fr}}
.qr{border-radius:10px;background:#fff;padding:6px;margin-top:8px}
.card .pic{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:12px;margin-bottom:12px;background:#1a3c2a}
.portrait{width:160px;height:160px;border-radius:18px;object-fit:cover;flex:none;border:1px solid var(--line);box-shadow:0 10px 30px rgba(0,0,0,.4)}
@media(max-width:560px){.portrait{width:110px;height:110px}}
.card .libr{display:block;white-space:nowrap;color:var(--gold);font-weight:700;font-size:.92rem}
.card .doing{margin-top:4px;color:var(--dim);font-size:.82rem;line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}
.card .tr{min-height:0}

/* passports (10-03) */
.passport{margin:18px 0}
.passport img{display:block;width:100%;max-width:760px;height:auto;border-radius:14px;margin:6px 0 10px}

/* Dunavia brand bar (10-05) */
.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 0 4px}
.brand{display:flex;align-items:center;gap:10px;color:#f6f3ea;text-decoration:none;font:700 22px Gelasio,serif;border:0}.brand img{border-radius:6px}
.topbar .crumbs{margin:0}
.topbar + h1{margin-top:34px}
