:root{color-scheme:light;--ink:#2d332a;--muted:#59594b;--paper:#f7f3e8;--panel:#fffcf4;--line:#ded2b6;--forest:#234335;--green:#315846;--bronze:#9d5d33;--serif:"Crimson Text",Georgia,serif;font-family:"Source Sans 3",system-ui,sans-serif;font-size:16px}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);line-height:1.55}a{color:#25553e;text-underline-offset:.19em}a:hover{color:#873e24}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #a55d2c;outline-offset:3px}h1,h2,h3,.brand,.topic strong{font-family:var(--serif);line-height:1.12;color:#243a2c}h1{font-size:clamp(2.2rem,5vw,3.4rem);margin:.07em 0 .32em}h2{font-size:clamp(1.35rem,3vw,1.8rem);margin:0 0 .65rem}p{margin:.52em 0 1em}.muted,figcaption{color:var(--muted)}img{max-width:100%;display:block}.sr,.skip:not(:focus){position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}.skip:focus{position:absolute;left:10px;top:8px;z-index:3;background:white;padding:8px}
.top{background:var(--forest);color:#f8eed8;border-bottom:3px solid #b68756}.top-inner{max-width:1420px;margin:auto;display:flex;justify-content:space-between;gap:1.3rem;align-items:center;padding:1.04rem clamp(1rem,3vw,2.3rem)}.brand{display:flex;gap:.7rem;align-items:center;color:#fff2d5;text-decoration:none;font-weight:700;font-size:1.65rem;white-space:nowrap}.brand:hover{color:white}.brand small{font-family:system-ui;font-size:.65em;font-weight:500;color:#ead8b6}.sigil{border:1px solid #d7ae76;border-radius:50%;font-size:1.3rem;width:2.25rem;height:2.25rem;display:grid;place-items:center;color:#e9c58d}
.search{display:flex;gap:.3rem;width:min(100%,34rem);align-items:stretch}.search input{width:100%;min-width:0;background:#f9f3e6;border:1px solid #c1aa83;border-radius:.36rem;padding:.6rem .75rem;font:inherit;color:var(--ink)}.search button,.button{background:#e8c994;color:#2e3b2e;font:inherit;font-weight:700;border:1px solid #a77948;padding:.58rem .95rem;border-radius:.36rem;text-decoration:none;cursor:pointer}.search button:hover,.button:hover{background:#f5dba9;color:#2e3b2e}
.frame{max-width:1420px;margin:auto;display:grid;grid-template-columns:12.75rem minmax(0,1fr);gap:clamp(1.2rem,3vw,2.5rem);padding:clamp(1rem,3vw,2.4rem)}aside{align-self:start;position:sticky;top:1rem}aside nav{display:grid;gap:.24rem;border-right:1px solid var(--line);padding-right:.75rem}aside a{padding:.53rem .66rem;color:#36523f;border-radius:.38rem;text-decoration:none;font-weight:600}aside a:hover,aside a[aria-current]{background:#e6e6d2;color:#1b3a2a}aside a[aria-current]{box-shadow:inset 3px 0 #68835e}main{min-width:0}.page-head{margin:0 0 1.5rem}.page-head p{color:var(--muted);max-width:65ch}.panel{border:1px solid var(--line);background:var(--panel);border-radius:.56rem;padding:clamp(.85rem,2.4vw,1.35rem);margin:1rem 0 1.4rem}.panel p:last-child{margin-bottom:0}
.hero{isolation:isolate;position:relative;min-height:23rem;display:flex;align-items:center;border-radius:.7rem;overflow:hidden;background:#294a39;color:#fff6e2;margin-bottom:1.1rem}.hero img,.hero:before{position:absolute;inset:0;width:100%;height:100%}.hero img{object-fit:cover;object-position:right center;z-index:-2}.hero:before{content:"";background:linear-gradient(100deg,#18382c 10%,#203b30ea 35%,#273c298c 65%,#4f513424);z-index:-1}.hero>div{padding:clamp(1.5rem,4vw,3.5rem);max-width:40rem}.hero h1{color:#fff4dc}.hero p{font-size:1.08rem;max-width:28rem}.hero .button{display:inline-block;margin-top:.55rem}
.quick{display:flex;flex-wrap:wrap;gap:.6rem 1.7rem;padding:0 0 1.25rem;margin-bottom:1.35rem;border-bottom:1px solid var(--line);color:#574c3c;font-weight:650}.topics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.topic{min-height:6rem;background:var(--panel);border:1px solid var(--line);border-radius:.5rem;padding:1rem;display:grid;gap:.4rem;align-content:center;text-decoration:none;color:var(--muted)}.topic:hover{border-color:#a38758;background:#f1ead7}.topic strong{font-size:1.22rem}.topic span{font-size:.94rem}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10.4rem),1fr));gap:.6rem;margin:.5rem 0 1rem}.facts>div{background:#f0ecdd;border-radius:.38rem;border:1px solid #e4dbc5;padding:.68rem .75rem}.facts dt{color:#575343;font-size:.89rem;font-weight:600}.facts dd{margin:.14rem 0 0;overflow-wrap:anywhere}.filters{display:flex;flex-wrap:wrap;gap:.35rem;margin:.4rem 0 1.1rem}.chip{padding:.32rem .68rem;border:1px solid #c9b994;background:#fcf6e8;border-radius:2rem;text-decoration:none;font-size:.92rem}.chip.selected{background:var(--green);color:white;border-color:var(--green)}
.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:.45rem;background:var(--panel)}table{border-collapse:collapse;width:100%;font-size:.96rem}th,td{padding:.62rem .72rem;text-align:left;vertical-align:top;border-bottom:1px solid #e5ddc7}th{background:#ebe5d3;color:#35483b;font-weight:700;white-space:nowrap}td:first-child{font-weight:600;min-width:7.5rem}tbody tr:nth-child(even){background:#faf5e8}tbody tr:last-child td{border-bottom:none}td a{font-weight:600}
figure{margin:0 0 1.15rem}.city-art img,.map-art img{max-height:31rem;width:100%;object-fit:cover;border-radius:.6rem;border:1px solid var(--line)}.map-art img{object-fit:contain;background:#d7c59e}figcaption{font-size:.89rem;margin-top:.4rem}.entry-heading{display:flex;gap:1rem;align-items:center;margin-bottom:1rem}.entry-heading img{width:5.8rem;height:5.8rem;object-fit:contain;border-radius:.55rem;background:#eee2c7}.entry-heading .page-head{margin:0}details{margin-top:.75rem}summary{font-weight:700;cursor:pointer;color:var(--green);margin-bottom:.8rem}footer{max-width:1420px;margin:0 auto;padding:1rem clamp(1rem,3vw,2.4rem);color:#575344;display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);font-size:.88rem}
@media(max-width:940px){.topics{grid-template-columns:repeat(2,minmax(0,1fr))}.frame{grid-template-columns:10rem minmax(0,1fr)}.hero{min-height:18rem}}
@media(max-width:700px){.frame{display:block;padding:1rem}aside{position:static;margin:0 0 1.35rem}aside nav{display:flex;overflow:auto;white-space:nowrap;border-right:0;border-bottom:1px solid var(--line);padding:0 0 .46rem}aside a{padding:.36rem .58rem}.top-inner{flex-wrap:wrap;gap:.65rem;padding:.75rem 1rem}.search{width:100%}.hero{min-height:16rem}.hero:before{background:linear-gradient(95deg,#18382cf5 4%,#203b30d0 58%,#26392b64)}.hero h1{font-size:2.1rem}td,th{padding:.55rem}.city-art img{max-height:24rem}}
@media(max-width:400px){.topic{padding:.73rem;min-height:5rem}.topic strong{font-size:1.1rem}.topic span{font-size:.85rem}.hero>div{padding:1rem}.hero h1{font-size:1.85rem}.search button{padding:.5rem}.search input{font-size:.93rem}footer{flex-direction:column;gap:.1rem}}
