:root{--m:#6b1f2a;--m2:#8a2a38;--md:#4a141c;--ink:#1f1a1b;--mut:#6f6466;--bg:#faf7f6;--line:#e8dfdf;--r:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--bg)}
a{color:var(--m)}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;color:var(--md);line-height:1.2}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}main.wrap{padding-top:24px;padding-bottom:48px;min-height:60vh}
.top{background:var(--m);color:#fff;position:sticky;top:0;z-index:5;box-shadow:0 2px 8px #0003}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px}
.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none}
.brand img{width:46px;height:46px;border-radius:8px;background:#fff;padding:2px}
.brand span{display:flex;flex-direction:column;line-height:1.1}.brand b{font-family:Georgia,serif;font-size:19px}.brand small{opacity:.85;font-size:12px;letter-spacing:.04em}
nav{display:flex;flex-wrap:wrap;align-items:center;gap:2px}
nav a,.linkbtn{color:#fff;text-decoration:none;padding:7px 9px;border-radius:8px;font-size:14px}
nav a:hover,nav a.on{background:#ffffff22}
.top .linkbtn{background:none;border:0;cursor:pointer;font:inherit;font-size:14px}
.burger{display:none;font-size:26px;cursor:pointer}
@media(max-width:960px){.burger{display:block}nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--m);flex-direction:column;align-items:stretch;padding:8px 16px}#navtoggle:checked~nav{display:flex}}
.btn{display:inline-block;background:var(--m);color:#fff!important;border:0;border-radius:10px;padding:11px 18px;font:600 15px system-ui;text-decoration:none;cursor:pointer}
.btn:hover{background:var(--m2)}.btn.ghost{background:#fff;color:var(--m)!important;border:2px solid var(--m)}.btn.small{padding:7px 12px;font-size:13px}
.top .btn.small{background:#fff;color:var(--m)!important;margin-left:4px}
.linkbtn{background:none;border:0;color:var(--m);cursor:pointer;font:inherit;padding:2px 4px;text-decoration:underline}.danger{color:#a3101f!important}
.inline{display:inline}
.hero{display:flex;align-items:center;gap:40px;background:linear-gradient(135deg,var(--m),var(--md));color:#fff;border-radius:var(--r);padding:48px;margin-bottom:24px;position:relative;overflow:hidden}
.hero:after{content:"97";position:absolute;right:-10px;bottom:-60px;font:900 260px Georgia,serif;color:#ffffff10}
.hero h1{color:#fff;font-size:52px;margin:6px 0 12px}.hero h1 span{font-size:30px;opacity:.9}
.hero-logo{width:200px;height:200px;border-radius:20px;background:#fff;padding:8px;flex:none;box-shadow:0 8px 24px #0005}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:13px;opacity:.85;margin:0}.lead{font-size:19px}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.hero .btn{background:#fff;color:var(--m)!important}.hero .btn.ghost{background:transparent;color:#fff!important;border-color:#fff}
@media(max-width:760px){.hero{flex-direction:column;padding:28px;text-align:center}.hero h1{font-size:36px}.hero-logo{width:120px;height:120px}.cta{justify-content:center}}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:24px;margin-bottom:20px;box-shadow:0 1px 3px #0000000a}
.center{text-align:center}
.cd{display:flex;justify-content:center;gap:14px;margin:12px 0}.cd div{background:var(--m);color:#fff;border-radius:12px;width:96px;padding:14px 0;display:flex;flex-direction:column}
.cd b{font:700 34px Georgia,serif}.cd small{opacity:.8;text-transform:uppercase;font-size:11px;letter-spacing:.1em}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.tight{max-width:640px;margin:0 auto}
@media(max-width:760px){.grid2,.grid3{grid-template-columns:1fr}}
.pill{background:#f6eeee;border-radius:12px;padding:14px;display:flex;flex-direction:column}.pill b{color:var(--m);text-transform:uppercase;font-size:12px;letter-spacing:.1em}
.tile{text-decoration:none;color:inherit;border-top:5px solid var(--m)}.tile:hover{transform:translateY(-2px);transition:.15s}.tile h3{margin:0 0 6px;font-size:24px}
.row-between{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.news{border-bottom:1px solid var(--line);padding:8px 0}.news:last-child{border:0}.news time{color:var(--mut);font-size:13px}
.prose{white-space:pre-line}.muted{color:var(--mut)}.big{font-size:18px}
.notice{background:#f6eeee;border-left:4px solid var(--m);padding:12px 16px;border-radius:8px}
.flash{padding:12px 16px;border-radius:10px;margin-bottom:16px;background:#e8f5ea;border:1px solid #b7dcbd}.flash.err{background:#fbeaea;border-color:#e6b5b5}
.search{display:flex;gap:8px}.search input{width:240px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;margin-bottom:28px}
.person{display:flex;gap:16px;text-decoration:none;color:inherit;margin:0}.person:hover{border-color:var(--m)}.person h3{margin:0 0 4px}.person p{margin:2px 0}
.clip{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--mut)}
.avatar{width:84px;height:84px;border-radius:50%;object-fit:cover;flex:none;border:3px solid var(--m)}
.avatar.initials{display:flex;align-items:center;justify-content:center;background:#f3e6e8;color:var(--m);font:700 28px Georgia,serif}
.avatar.xl{width:180px;height:180px;font-size:56px}.org .avatar{margin:0 auto}
.socials{display:flex;gap:8px;flex-wrap:wrap}.socials span,.socials a{background:var(--m);color:#fff;border-radius:999px;padding:3px 12px;font-size:13px;text-decoration:none}
.socials.big a{font-size:15px;padding:6px 16px}
.namegrid{columns:4 200px;padding-left:18px}.namegrid li{margin-bottom:4px;break-inside:avoid}
.tag{background:#f3e6e8;color:var(--m);border-radius:6px;padding:1px 7px;font-size:12px}.tag.warn{background:#fff1cc;color:#7a5600}
.profile{display:flex;gap:32px;align-items:flex-start}.profile h1{margin-top:0;font-size:38px}.grow{flex:1}
@media(max-width:760px){.profile{flex-direction:column;align-items:center}}
.wall{columns:3 280px;column-gap:16px}.wall figure{break-inside:avoid;margin:0 0 16px;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.wall img{width:100%;display:block}.wall figcaption{padding:10px 12px;font-size:14px}
.form label{display:block;margin-bottom:14px;font-weight:600;font-size:14px}
input,select,textarea{width:100%;padding:10px 12px;border:1px solid #d8cccc;border-radius:9px;font:inherit;font-weight:400;margin-top:4px;background:#fff}
input[type=checkbox],input[type=radio]{width:auto}input:focus,textarea:focus,select:focus{outline:2px solid var(--m2);border-color:transparent}
.narrow{max-width:480px;margin:0 auto}.radios{display:flex;gap:18px;margin-bottom:14px}.radio{font-weight:400!important}
.inline-form{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.inline-form label{flex:1;min-width:180px;margin:0}.inline-form input,.inline-form select{width:auto}
.hp{position:absolute;left:-9999px}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}.tabs a{background:#fff;border:1px solid var(--line);padding:6px 12px;border-radius:999px;text-decoration:none}
table{width:100%;border-collapse:collapse;font-size:14px}th,td{border-bottom:1px solid var(--line);padding:6px;text-align:left;vertical-align:top}
.roster input,.roster select{padding:5px 7px;margin:0;width:auto}tr.rev{background:#fff8e1}.scroll{overflow-x:auto}
.msg{border-bottom:1px solid var(--line);padding:10px 0}.msg.done{opacity:.55}
.mem{display:inline-block;width:200px;margin:12px;vertical-align:top}.mem .avatar{margin:0 auto;filter:grayscale(1)}
.foot{background:var(--md);color:#fff;padding:28px 0;margin-top:20px}.foot .wrap{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.foot img{border-radius:6px;background:#fff}.foot a{color:#fff}.foot .muted{color:#e9d5d8;margin-left:auto}
/* header fit */
.top .wrap.nav{max-width:1280px}.brand small{white-space:nowrap}nav{flex-wrap:nowrap}nav a,.top .linkbtn{padding:6px 6px;font-size:13px;white-space:nowrap}
@media(max-width:1220px){.burger{display:block}nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--m);flex-direction:column;align-items:stretch;padding:8px 16px}#navtoggle:checked~nav{display:flex}}
