:root{color-scheme:light;--ink:#252925;--muted:#667069;--paper:#f4f5f1;--white:#fff;--line:#d8dcd5;--lime:#dce950;--blue:#255b91;--red:#c55442;--green:#305b4c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px}img{max-width:100%;display:block}.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}.skip-link{position:absolute;left:12px;top:-50px;z-index:20;padding:9px 14px;background:var(--ink);color:#fff}.skip-link:focus{top:12px}.topline{min-height:34px;background:var(--ink);color:#e8ebe4;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:4px max(26px,calc((100vw - 1500px)/2));font-size:12px;font-weight:700;text-transform:uppercase}.site-header{min-height:85px;padding:0 max(26px,calc((100vw - 1500px)/2));display:flex;align-items:center;gap:34px;border-bottom:1px solid var(--line);background:var(--white)}.brand{display:inline-flex;align-items:center;gap:10px;min-width:205px;font-size:12px;font-weight:700;line-height:1.13}.brand b{font-size:17px}.brand-mark{width:45px;height:45px;display:grid;place-items:center;background:var(--lime);font-family:Georgia,serif;font-size:31px;font-weight:700;line-height:1}.main-nav{display:flex;align-items:center;gap:27px;flex-wrap:wrap}.main-nav a{font-size:13px;font-weight:700;white-space:nowrap;padding:30px 0;border-bottom:3px solid transparent}.main-nav a:hover,.main-nav a[aria-current=page]{border-bottom-color:var(--red)}.header-note{margin-left:auto;white-space:nowrap;color:var(--blue);font-size:13px;font-weight:700}.header-note span{margin-left:5px}.layout{display:grid;grid-template-columns:228px minmax(0,1fr);gap:0;max-width:1500px;margin:0 auto}.side-rail{padding:52px 24px 40px 26px;border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:75vh}.rail-label,.kicker,.eyebrow{font-size:11px;font-weight:800;color:var(--red);letter-spacing:1.2px}.side-rail nav{display:flex;flex-direction:column;margin-top:20px}.side-rail nav a{font-size:14px;font-weight:700;padding:12px 10px;border-left:2px solid transparent;color:#465049}.side-rail nav a:hover,.side-rail nav a[aria-current=page]{background:#e9ece4;border-left-color:var(--red);color:var(--ink)}.rail-bottom{margin-top:auto;padding-top:45px}.rail-rule{display:block;width:42px;height:4px;background:var(--lime)}.rail-bottom p{font-size:12px;line-height:1.55;color:var(--muted)}.rail-bottom a{color:var(--blue);font-size:12px;font-weight:700}main{min-width:0;padding:0 46px 72px}.intro{padding:62px 0 40px;max-width:880px}.eyebrow{display:flex;align-items:center;gap:11px}.eyebrow-line{width:20px;height:2px;background:var(--red)}h1,h2,h3,p{margin-top:0}h1{font:normal 54px/1.07 Georgia,'Times New Roman',serif;letter-spacing:0;margin:17px 0 21px}h2{font:normal 32px/1.17 Georgia,'Times New Roman',serif;letter-spacing:0;margin:0}h3{line-height:1.27}.lead{font-size:19px;line-height:1.58;max-width:740px;color:#49524b;margin:0}.intro-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:28px}.primary-action{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:11px 17px;background:var(--lime);font-weight:800;font-size:14px;min-width:183px;min-height:46px}.primary-action:hover{background:#e7f263}.quiet-action{color:var(--blue);font-size:14px;font-weight:800}.city-photo{position:relative;margin:0;background:#d8dad5;height:300px;overflow:hidden}.city-photo img{width:100%;height:100%;object-fit:cover;object-position:center 48%}.city-photo figcaption{position:absolute;bottom:0;left:0;right:0;min-height:43px;background:rgba(30,36,33,.87);color:#fff;padding:10px 18px;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:11px;font-weight:700}.section{padding:56px 0 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:25px;padding-bottom:22px;border-bottom:1px solid var(--line)}.section-head h2{margin-top:10px}.section-head p{color:var(--muted);font-size:13px;margin:0 0 3px}.section-head>a{color:var(--blue);font-weight:700;font-size:13px}.step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.step{padding:25px 24px 0 0;min-height:185px}.step+.step{border-left:1px solid var(--line);padding-left:24px}.step span{font-size:12px;color:var(--red);font-weight:800}.step h3{font-size:18px;margin:17px 0 9px}.step p{font-size:13px;line-height:1.65;color:var(--muted);margin:0}.stories-section{padding-top:70px}.story-list{margin-top:3px}.story{display:grid;grid-template-columns:48px minmax(0,1fr) 20px;gap:14px;align-items:center;min-height:86px;border-bottom:1px solid var(--line);padding:14px 3px}.story:hover strong,.story:hover .story-arrow{color:var(--blue)}.story-no{font-size:12px;font-weight:800;color:var(--red)}.story strong{display:block;font-size:17px}.story small{display:block;color:var(--muted);font-size:13px;margin-top:3px}.story-arrow{font-size:19px}.note-band{margin-top:66px;padding:23px 25px;background:var(--ink);color:#fff;display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:18px;align-items:center}.note-band>span{display:grid;place-items:center;background:var(--lime);color:var(--ink);width:45px;height:45px;font-weight:900}.note-band p{font-size:13px;color:#e2e7de;margin:0}.note-band a{font-size:13px;font-weight:800;color:var(--lime);white-space:nowrap}.page-heading{padding:66px 0 39px;border-bottom:1px solid var(--line)}.page-heading h1{margin:15px 0 18px}.page-heading p{font-size:18px;line-height:1.6;color:#4b544c;max-width:760px;margin:0}.directory{padding-top:35px}.directory-controls{display:flex;justify-content:space-between;align-items:end;gap:20px}.directory-controls h2{font-size:28px}.directory-controls span:not(.sr-only){font-size:12px;color:var(--muted)}.search-field{display:flex;align-items:center;gap:9px;width:250px;min-height:42px;padding:0 12px;border:1px solid #b9c2b8;background:#fff}.search-field:focus-within{border-color:var(--blue)}.search-field svg{width:18px;height:18px;fill:none;stroke:var(--muted);stroke-width:2}.search-field input{min-width:0;width:100%;border:0;outline:0;background:none;font-size:13px}.filter-row{display:flex;gap:7px;flex-wrap:wrap;padding:22px 0}.filter{border:1px solid var(--line);background:transparent;color:#48524b;padding:7px 13px;font-size:12px;font-weight:700;min-height:34px}.filter:hover{border-color:var(--ink)}.filter.is-active{background:var(--ink);color:#fff;border-color:var(--ink)}.district-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.district{background:#fff;border:1px solid var(--line);border-radius:4px;padding:17px 17px 14px;min-height:184px;display:flex;flex-direction:column}.district[hidden]{display:none}.district-top{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted);font-weight:700;text-transform:uppercase}.district-top span:first-child{color:var(--red)}.district h3{font:normal 23px/1.1 Georgia,serif;margin:19px 0 7px}.district p{font-size:12px;color:var(--muted);line-height:1.48;margin:0 0 12px}.district a{margin-top:auto;color:var(--blue);font-size:11px;font-weight:800}.district a:hover{text-decoration:underline}.empty-state{padding:25px;border:1px dashed var(--line);font-size:14px}.editorial{max-width:800px;padding-top:54px}.editorial h2{font-size:28px;margin:22px 0 13px}.editorial h2:first-child{margin-top:0}.editorial p{color:#4c554e;line-height:1.78;margin:0 0 23px}.editorial a{color:var(--blue);font-weight:700;text-decoration:underline;text-underline-offset:3px}.number-list{list-style:none;counter-reset:steps;padding:0;margin:25px 0}.number-list li{counter-increment:steps;display:grid;grid-template-columns:35px 180px minmax(0,1fr);gap:14px;padding:17px 0;border-top:1px solid var(--line);font-size:14px}.number-list li:before{content:counter(steps,decimal-leading-zero);font-size:12px;font-weight:800;color:var(--red)}.number-list span{color:#4c554e}.inline-callout{border-left:4px solid var(--lime);background:#e9ece6;padding:18px 20px;margin:30px 0}.inline-callout p{font-size:13px;margin:6px 0 0}.inline-photo{height:260px;position:relative;overflow:hidden;margin:28px 0 0;max-width:800px}.inline-photo img{width:100%;height:100%;object-fit:cover;object-position:center 48%}.inline-photo figcaption{position:absolute;bottom:0;left:0;background:rgba(31,35,33,.87);color:#fff;padding:8px 12px;font-size:11px}.faq{max-width:800px;padding-top:65px}.faq h2{margin:10px 0 20px}.faq details{border-top:1px solid var(--line);padding:17px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{font-weight:700;cursor:pointer}.faq details p{color:var(--muted);font-size:14px;padding:10px 0 0;margin:0}.site-footer{border-top:1px solid var(--line);background:#e9ece6;padding:35px max(26px,calc((100vw - 1500px)/2)) 50px;display:grid;grid-template-columns:1.1fr 1.5fr 1fr;gap:35px}.site-footer strong{font-size:15px}.site-footer p,.site-footer small{font-size:12px;color:var(--muted);line-height:1.6}.site-footer nav{display:flex;flex-wrap:wrap;gap:10px 18px;align-content:start}.site-footer nav a{font-size:12px;font-weight:700}.site-footer a:hover{text-decoration:underline}.site-footer small a{color:var(--blue)}
@media(max-width:1100px){.site-header{gap:18px}.main-nav{gap:16px}.header-note{display:none}.layout{grid-template-columns:185px minmax(0,1fr)}.side-rail{padding-left:18px;padding-right:15px}main{padding-left:28px;padding-right:28px}.district-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.topline{padding:6px 16px;min-height:30px;font-size:10px}.topline span:last-child{display:none}.site-header{padding:12px 16px;display:block;min-height:auto}.brand{min-width:0}.main-nav{margin-top:13px;gap:0;overflow-x:auto;flex-wrap:nowrap;white-space:nowrap;border-top:1px solid var(--line)}.main-nav a{font-size:12px;padding:10px 11px 9px}.main-nav a:first-child{padding-left:0}.layout{display:block}.side-rail{display:none}main{padding:0 16px 56px}.intro{padding:38px 0 30px}h1{font-size:40px}.lead,.page-heading p{font-size:16px}.city-photo{height:220px}.section{padding-top:42px}.section-head{display:block}.section-head p,.section-head>a{display:inline-block;margin-top:9px}.step-grid{grid-template-columns:1fr}.step,.step+.step{min-height:0;border-left:0;border-bottom:1px solid var(--line);padding:20px 0}.step h3{margin:7px 0}.stories-section{padding-top:48px}.note-band{margin-top:45px;grid-template-columns:45px 1fr}.note-band a{grid-column:2}.page-heading{padding:42px 0 30px}.directory-controls{align-items:stretch;flex-direction:column}.search-field{width:100%}.directory-controls h2{font-size:25px}.district-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.district{min-height:188px;padding:14px}.district h3{font-size:20px}.number-list li{grid-template-columns:30px minmax(0,1fr);gap:5px 10px}.number-list span{grid-column:2}.site-footer{grid-template-columns:1fr 1fr;padding:32px 16px;gap:20px}.site-footer small{grid-column:1/-1}}
@media(max-width:480px){.district-grid{grid-template-columns:1fr}.district{min-height:150px}.district h3{margin-top:12px}.city-photo{height:195px}.city-photo figcaption{font-size:10px}.site-footer{grid-template-columns:1fr}.site-footer small{grid-column:auto}.note-band{padding:18px}.intro-actions{gap:15px}}
.city-photo img,.inline-photo img{object-position:center top}
.latest-section{padding-top:52px}.listing-directory{padding-top:34px}.listing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-top:23px}.listing-grid-all{grid-template-columns:repeat(3,minmax(0,1fr))}.listing-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:4px;overflow:hidden;display:flex;flex-direction:column}.listing-card[hidden]{display:none}.listing-image{display:block;aspect-ratio:1/1;background:#e4e7df;overflow:hidden}.listing-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.listing-image:hover img{transform:scale(1.035)}.listing-copy{padding:15px 16px 17px;display:flex;flex-direction:column;flex:1}.listing-meta{display:flex;flex-wrap:wrap;gap:5px 12px;color:var(--muted);font-size:11px;font-weight:700}.listing-meta span{color:var(--red)}.listing-copy h3{font-size:16px;line-height:1.36;margin:11px 0 8px;overflow-wrap:anywhere}.listing-copy h3 a:hover{color:var(--blue)}.listing-copy p{font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 15px}.listing-more{margin-top:auto;color:var(--blue);font-size:12px;font-weight:800}.listing-select{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:700}.listing-select select{min-width:180px;height:42px;border:1px solid #b9c2b8;background:#fff;color:var(--ink);padding:0 11px;font:inherit}.listing-heading{padding-bottom:29px}.listing-heading h1{font-size:45px;overflow-wrap:anywhere}.listing-heading .listing-meta{font-size:13px}.listing-detail{display:grid;grid-template-columns:minmax(0,43%) minmax(0,1fr);gap:35px;padding-top:30px}.listing-photos{display:grid;gap:10px;align-content:start}.listing-photos img{width:100%;height:auto;max-height:650px;object-fit:contain;background:#e4e7df}.listing-article{min-width:0;font-size:15px;line-height:1.8;color:#414a43}.listing-article p{margin:0 0 20px}.listing-article a,.listing-back a{color:var(--blue);font-weight:700}.listing-disclaimer{padding:15px 17px;border-left:4px solid var(--lime);background:#e9ece6;font-size:13px}.listing-back{margin-top:45px;border-top:1px solid var(--line);padding-top:20px;font-size:13px}
@media(max-width:1100px){.listing-grid,.listing-grid-all{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.listing-grid,.listing-grid-all{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.listing-copy{padding:12px}.listing-copy h3{font-size:14px}.listing-copy p{display:none}.listing-detail{grid-template-columns:1fr;gap:23px}.listing-heading h1{font-size:34px}.listing-photos{grid-template-columns:repeat(2,minmax(0,1fr))}.listing-photos img:first-child:last-child{grid-column:1/-1;max-height:520px}.listing-select{width:100%;justify-content:space-between}.listing-select select{min-width:0;flex:1;max-width:260px}}
@media(max-width:480px){.listing-meta{font-size:10px}.listing-copy h3{font-size:13px}.listing-copy{padding:10px}.listing-photos{grid-template-columns:1fr}.listing-photos img:first-child:last-child{grid-column:auto}}
