:root{--cream:#f4eee3;--paper:#fffdf8;--ink:#263e32;--muted:#686b5e;--gold:#9b773f;--brick:#8c4b3c;--line:#dcd2bf;--sage:#e5e8dd}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 system-ui,-apple-system,sans-serif}a{color:var(--ink);text-underline-offset:4px}a:hover{color:var(--brick)}button,input,textarea,select{font:inherit}button,.button{display:inline-block;background:var(--ink);color:white;border:1px solid var(--ink);padding:11px 22px;border-radius:3px;cursor:pointer;text-decoration:none;text-align:center}button:hover,.button:hover{background:#385540;color:white}.outline{background:transparent;color:var(--ink)}.plain{background:transparent;border:0;color:var(--ink);padding:0;text-decoration:underline}.plain:hover{background:none;color:var(--brick)}header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 6%;background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:flex;gap:16px;align-items:center;text-decoration:none;font:20px Georgia,serif;letter-spacing:2px}.brand small{display:block;font:9px system-ui;letter-spacing:3px;margin-top:8px;color:var(--muted)}.crest{border:1px solid var(--gold);padding:9px 12px;letter-spacing:0;color:var(--gold);font:28px Georgia,serif}nav{display:flex;gap:24px;align-items:center}nav form{margin:0}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.14;overflow-wrap:anywhere}h1{font-size:clamp(36px,4.5vw,62px);margin:15px 0 25px}h2{font-size:30px;margin:10px 0 20px}h3{font-size:23px;margin:10px 0}.eyebrow{text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:2.3px;color:var(--gold);margin-top:14px}.hero-photo{height:clamp(300px,42vw,600px);overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 48%}.welcome{max-width:1000px;text-align:center;margin:auto;padding:50px 25px 60px}.welcome p{max-width:640px;margin:0 auto 25px;color:var(--muted);font-size:18px}.actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin:30px 0}.fine{font-size:12px;color:var(--muted)}.welcome-note{padding:55px 10%;background:var(--sage);display:grid;grid-template-columns:1fr 1fr;gap:60px}.welcome-note p{color:var(--muted);max-width:550px}.app-shell{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:75vh}aside{background:var(--ink);padding:30px 20px;color:var(--cream)}aside a{display:block;color:#e9e5d8;padding:12px 15px;text-decoration:none;border-radius:3px;margin:4px 0}aside a:hover,aside a.active{background:#ffffff15;color:#fff}aside .eyebrow{padding:0 15px;margin-bottom:20px;color:#d4b580}.side-note{font-size:11px;opacity:.65;border-top:1px solid #ffffff30;margin:40px 15px;padding-top:20px}.workspace{padding:40px 5%;min-width:0}.lead{color:var(--muted);margin-bottom:30px}.columns{display:grid;grid-template-columns:1.6fr 1fr;gap:24px;align-items:start}.card{background:var(--paper);border:1px solid var(--line);padding:28px;margin:0 0 22px;border-radius:4px;overflow-wrap:anywhere}.section-title{display:flex;align-items:center;justify-content:space-between;gap:15px}.section-title a{font-size:12px;white-space:nowrap}.list-item{padding:20px 0;border-bottom:1px solid var(--line)}.list-item:last-child{border:0}.list-item h2{font-size:25px;margin:10px 0}.list-item h2 a,.list-item h3 a{text-decoration:none}.note{padding:18px;background:var(--cream);margin-top:25px;font-size:13px}.form-card{max-width:580px;padding:36px;margin:55px auto;background:var(--paper);border:1px solid var(--line)}.form-card h1{font-size:43px}.form-card .eyebrow{margin-top:30px}label{display:block;font-size:13px;font-weight:600;margin:15px 0 7px}input,textarea,select{display:block;width:100%;padding:11px 12px;border:1px solid #b9bcaf;border-radius:3px;background:white;color:var(--ink);margin-top:6px}textarea{resize:vertical}input:focus,textarea:focus,select:focus{outline:2px solid var(--gold);outline-offset:2px}form button{margin-top:15px}.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.check{display:flex;align-items:start;gap:10px;font-weight:400}.check input{width:auto;margin-top:4px}.search,.inline{display:flex;align-items:end;gap:12px;margin:25px 0}.search input,.search select{margin:0}.search button{margin:0}.inline label{flex:1;margin:0}.inline select{min-width:180px}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.directory-grid h2{font-size:25px}.prose{white-space:pre-wrap;overflow-wrap:anywhere;margin:25px 0}.narrow{max-width:750px}details summary{cursor:pointer;font-weight:600}details[open]>summary{margin-bottom:20px}.message{padding:18px 6%;background:#e3e9dc;border-bottom:1px solid var(--line)}.message.error{background:#f6e5df;color:#703d30}.message ul{margin-bottom:0}footer{display:flex;justify-content:space-between;gap:20px;padding:28px 6%;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.pagination{justify-content:center;flex-wrap:wrap;font-size:13px;margin:30px 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:850px){.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell{grid-template-columns:190px minmax(0,1fr)}.columns{grid-template-columns:1fr}.workspace{padding:30px 6%}.brand{font-size:16px;gap:10px}nav{gap:14px;font-size:13px}header{padding:18px 4%}}@media(max-width:600px){header{align-items:start;flex-wrap:wrap;gap:18px}.brand small{font-size:8px}header nav{width:100%;justify-content:space-between}.hero-photo{height:310px}.welcome{padding:35px 6% 45px}.welcome h1{font-size:38px}.welcome p{font-size:16px}.welcome-note{grid-template-columns:1fr;gap:10px;padding:35px 7%}.app-shell{grid-template-columns:1fr}aside{display:flex;overflow-x:auto;gap:7px;padding:10px}aside .eyebrow,.side-note{display:none}aside a{white-space:nowrap;padding:9px;font-size:12px}.workspace{padding:25px 5%}.card{padding:20px}.form-card{margin:25px 5%;padding:25px}.two,.directory-grid{grid-template-columns:1fr;gap:0}.search{flex-wrap:wrap}.search input,.search select{flex:1;min-width:150px}.inline{flex-wrap:wrap}.section-title{align-items:start}footer{font-size:10px}.crest{font-size:24px}}
