@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--ink:#18372c;--paper:#f5f4ec;--white:#fffef9;--muted:#5f6e64;--line:#d1d9cc;--sage:#e2e9dc;--gold:#dfb767}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 'DM Sans',system-ui,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}a{color:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(48px,6.2vw,94px)}h2{font-size:clamp(34px,4vw,58px)}h3{font-size:28px}button{border:0}.skip{position:absolute;left:20px;top:-100px;background:var(--white);padding:15px;z-index:100}.skip:focus{top:15px}header{display:flex;gap:25px;align-items:center;justify-content:space-between;padding:20px 5%;position:relative;z-index:5;background:var(--ink);color:var(--white);border-bottom:1px solid #ffffff30}.brand{display:flex;gap:13px;align-items:center;text-decoration:none;font:28px Georgia,serif}.brand b{font-size:40px;line-height:1}.brand small{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:.16em;text-transform:uppercase;margin-top:4px}nav{display:flex;flex-wrap:wrap;gap:24px}nav a{font-size:12px;text-decoration:none}nav a:hover,nav a[aria-current=page]{text-decoration:underline;text-underline-offset:6px}.hero{position:relative;min-height:640px;display:flex;flex-direction:column;justify-content:center;color:white;isolation:isolate;background:var(--ink)}.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0b281ee6,#0b281e85 58%,#0b281e22),linear-gradient(0deg,#0b281e8c,transparent);z-index:-1}.hero-inner{padding:75px 7%;max-width:1100px}.hero h1{max-width:800px;margin:20px 0 24px}.hero p{max-width:550px;color:#f0f3e8;font-size:17px}.hero.compact{min-height:430px}.hero .photo-credit{position:absolute;bottom:17px;right:5%;max-width:400px;text-align:right;font-size:10px;color:#fff}.eyebrow{display:block;text-transform:uppercase;letter-spacing:.19em;font-size:10px;font-weight:600;margin-bottom:18px}.btn{display:inline-flex;gap:15px;align-items:center;justify-content:center;border:1px solid var(--ink);padding:13px 22px;background:var(--ink);color:white;text-decoration:none;font-size:13px;border-radius:3px;min-height:46px}.btn.light{background:var(--white);color:var(--ink);border-color:var(--white)}.btn.outline{background:transparent;color:inherit;border-color:var(--line)}.hero .btn.outline{border-color:#ffffff80}.btn.small{padding:9px 15px;min-height:42px}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.chapter{max-width:1450px;margin:auto;padding:70px 7%}.chapter.tight{padding-top:30px;padding-bottom:35px}.heading-row{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:32px}.heading-row h2{margin:0}.heading-row p{max-width:430px;color:var(--muted);margin:0;font-size:14px}.lead{max-width:680px;font-size:17px;color:var(--muted)}.askbox{max-width:690px;margin-top:30px;display:flex;gap:6px;background:var(--white);padding:7px;border-radius:4px}.askbox input{flex:1;min-width:0;border:0;padding:10px 14px;background:transparent;color:var(--ink)}.askbox button{white-space:nowrap}.strip{display:flex;justify-content:space-between;gap:25px;padding:24px 7%;border-bottom:1px solid var(--line);font-size:12px}.strip strong{font-size:23px;font-weight:500;margin-right:7px}.city-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.city-card{position:relative;min-height:310px;color:white;background:var(--ink);overflow:hidden;text-decoration:none;display:flex;flex-direction:column;justify-content:end;padding:25px;isolation:isolate}.city-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .5s}.city-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#08291ee8,transparent 90%);z-index:-1}.city-card:hover img{transform:scale(1.04)}.city-card h3{font-size:32px;margin:8px 0}.city-card small{font-size:10px;letter-spacing:.11em;text-transform:uppercase}.city-card span{font-size:12px}.city-card .arrow{position:absolute;right:25px;bottom:30px;font-size:22px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.work-card{display:block;border-top:1px solid var(--line);padding:24px 0;text-decoration:none}.work-card h3{font-size:27px;margin:15px 0}.work-card p{color:var(--muted);font-size:13px}.work-card .num{font-size:11px;letter-spacing:.15em;color:var(--muted)}.work-card:hover h3{text-decoration:underline;text-underline-offset:5px}.band{background:var(--sage)}.forest{background:var(--ink);color:var(--paper)}.forest p{color:#d5e0d2}.two{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:45px}.panel{padding:30px;background:var(--white);border:1px solid var(--line)}.panel h3{margin-bottom:14px}.panel p{font-size:13px;color:var(--muted)}label{display:block;font-size:13px;font-weight:500;margin-bottom:16px}input[type=text],input[type=search],input[type=url],select,textarea{display:block;width:100%;padding:14px 16px;color:var(--ink);background:var(--white);border:1px solid #aebead;border-radius:3px;margin-top:6px;font-size:16px}textarea{min-height:110px;resize:vertical}.help{font-size:12px;color:var(--muted);margin:6px 0 20px}.inline-check{display:flex;gap:12px;align-items:center;font-weight:400;margin:0;padding:12px 0;min-height:44px}.inline-check input{width:19px;height:19px;accent-color:var(--ink);flex:none}.checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 22px}.toolbar{display:flex;gap:15px;align-items:end;flex-wrap:wrap;margin:26px 0}.toolbar label{flex:1;margin:0;min-width:200px}.breadcrumb{font-size:12px;display:inline-block;margin-bottom:25px}.status{border-left:3px solid #64824f;background:var(--sage);padding:16px 20px;margin:20px 0;font-size:13px}.error{border-color:#9d4329;background:#fff1e5;color:#6a2b18}.quiet{color:var(--muted);font-size:12px}.source{padding:21px 0;border-bottom:1px solid var(--line)}.source h3{font-size:22px;margin-bottom:10px}.source p{font-size:13px;color:var(--muted);margin-bottom:8px}.source a{font-size:13px;overflow-wrap:anywhere}.source small{display:block;font-size:11px;color:var(--muted);margin-top:8px}.step{display:flex;align-items:start;gap:16px;padding:23px 0;border-bottom:1px solid var(--line);font-size:16px}.step input{width:22px;height:22px;accent-color:var(--ink);margin-top:4px;flex:none}.step.checked span{text-decoration:line-through;color:var(--muted)}.progress{height:6px;background:var(--line);margin:20px 0}.progress span{display:block;background:#57805d;height:100%}.empty{padding:25px 0;color:var(--muted)}details{margin:20px 0}summary{cursor:pointer;font-size:13px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line)}.pill{display:inline-block;border:1px solid var(--line);padding:3px 9px;font-size:10px;letter-spacing:.07em;text-transform:uppercase}.city-pick{max-height:350px;overflow:auto;border-bottom:1px solid var(--line)}.queue-list{font-size:12px;max-height:230px;overflow:auto}.section-links{display:flex;gap:20px;flex-wrap:wrap;padding:20px 7%;border-bottom:1px solid var(--line);font-size:12px}.section-links a{text-decoration:none}.callout{padding:30px 0;border-top:1px solid var(--line)}footer{background:#10291f;color:#cad7c8;padding:40px 7%;display:flex;justify-content:space-between;gap:30px;font-size:11px}footer p{max-width:600px;margin:0}footer a{color:inherit}#notice{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);max-width:90%;padding:14px 22px;background:#142f24;color:white;z-index:50;box-shadow:0 5px 25px #0004;font-size:13px}#notice:empty{display:none}.file-input{max-width:100%;margin:15px 0}.hero.no-photo{background:radial-gradient(ellipse at 85% 10%,#859b61,#284f3f 60%,#15372c)}.statline{font-size:14px;margin:16px 0}.badge{font-size:11px;color:var(--muted)}@media(max-width:950px){.city-grid,.grid{grid-template-columns:repeat(2,minmax(0,1fr))}nav{gap:15px}.two{gap:25px}.checks{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){header{flex-wrap:wrap;padding:16px 6%;gap:15px}nav{width:100%;justify-content:space-between;gap:8px}nav a{font-size:11px}.brand{font-size:23px}.hero,.hero.compact{min-height:520px}.hero-inner{padding:55px 6% 85px}.hero h1{font-size:52px}.hero p{font-size:15px}.hero .photo-credit{font-size:9px;max-width:250px}.askbox{flex-direction:column}.askbox input{width:100%;min-height:45px}.chapter{padding:45px 6%}.heading-row,.two{display:block}.heading-row p{margin-top:22px}.two>*+*{margin-top:30px}.city-grid,.grid{grid-template-columns:1fr}.city-card{min-height:330px}.strip{flex-wrap:wrap;gap:10px 20px;padding:20px 6%}.strip strong{font-size:21px}.checks{grid-template-columns:1fr}.panel{padding:22px}.section-links{padding:20px 6%}.toolbar{align-items:stretch}.toolbar label{min-width:100%}footer{flex-direction:column}.btn{white-space:normal}.hero h1{overflow-wrap:anywhere}.city-pick{max-height:none}.queue-list{max-height:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media print{header,footer,.hero,button,.actions,#notice{display:none}.chapter{padding:10px}.two{display:block}.panel{border:0}.step{break-inside:avoid}}

.network-return{display:flex;align-items:center;flex-wrap:wrap;gap:10px 22px;padding:11px 5%;background:#e2e9dc;border-bottom:1px solid #c5d0c1;color:#18372c;font-size:12px}.network-return span{font-weight:700}.network-return a{text-decoration:underline;text-underline-offset:3px;font-weight:600}.network-return a:hover{text-decoration-thickness:2px}.network-return small{margin-left:auto;color:#43594b;font-size:11px}@media(max-width:650px){.network-return{padding:11px 6%;gap:8px 16px}.network-return small{margin-left:0;flex-basis:100%}}@media print{.network-return{display:none}}
.network-move{padding:8px 5% 10px;background:#f5f3e9;border-bottom:1px solid #d9dccf;color:#284335;font-size:12px}.network-move summary{width:max-content;max-width:100%;cursor:pointer;font-weight:700;text-decoration:underline;text-underline-offset:3px}.network-move summary:focus-visible{outline:2px solid #284335;outline-offset:3px}.network-move p{max-width:1000px;margin:10px 0 4px;line-height:1.65}.network-move a{color:inherit;text-decoration:underline}@media(max-width:650px){.network-move{padding-inline:6%}}@media print{.network-move{display:none}}

.city-site {
  --city-ink: #173c2e;
  --city-forest: #103326;
  --city-paper: #f5f3e9;
  --city-white: #fffef8;
  --city-muted: #56695d;
  --city-line: #ccd5c7;
  --city-sage: #e5ebde;
  --city-gold: #e2c17b;
  width: 100%;
  min-width: 0;
  background: var(--city-paper);
  color: var(--city-ink);
  font: 15px/1.65 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  overflow-wrap: break-word;
  color-scheme: light;
}

.city-site *, .city-site *::before, .city-site *::after { box-sizing: border-box; }
.city-site :where(h1, h2, h3, h4, p, ul, ol, figure) { margin: 0 0 1em; }
.city-site :where(h1, h2, h3, h4) { font-family: Georgia, "Times New Roman", serif; font-weight: 400; line-height: 1.12; letter-spacing: -.035em; text-wrap: balance; }
.city-site h1 { font-size: clamp(48px, 5.7vw, 72px); }
.city-site h2 { font-size: clamp(32px, 3.7vw, 48px); }
.city-site h3 { font-size: 27px; }
.city-site h4 { font-size: 22px; }
.city-site a { color: inherit; text-underline-offset: 4px; }
.city-site :where(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid #a36a13; outline-offset: 4px; }
.city-site :where(button, input, select, textarea) { font: inherit; }
.city-site :where(button, a) { -webkit-tap-highlight-color: transparent; }
.city-site button { cursor: pointer; }
.city-site button:disabled { opacity: .55; cursor: not-allowed; }
.city-site :where(img, video, svg) { max-width: 100%; }
.city-site :where(p, li, a) { overflow-wrap: anywhere; }
.city-site :where(main, section, article, aside, form, div) { min-width: 0; }
.city-site [hidden] { display: none !important; }

.city-site .city-topline { display: flex; justify-content: space-between; gap: 16px; padding: 9px max(6%, calc((100vw - 1320px) / 2)); background: var(--city-forest); color: #dfebdc; font-size: 10px; letter-spacing: .08em; line-height: 1.5; }
.city-site .city-header { display: flex; align-items: center; justify-content: space-between; gap: 25px; position: relative; z-index: 2; padding: 23px max(6%, calc((100vw - 1320px) / 2)); background: var(--city-white); color: var(--city-ink); border-bottom: 1px solid var(--city-line); }
.city-site .city-brand { display: inline-flex; align-items: center; gap: 13px; flex: 0 1 auto; min-width: 0; text-decoration: none; font: 32px/1 Georgia, "Times New Roman", serif; letter-spacing: -.04em; }
.city-site .city-brand > b { display: grid; place-items: center; width: 46px; height: 46px; flex: 0 0 auto; border: 1px solid var(--city-line); border-radius: 50%; font: italic 40px/1 Georgia, serif; }
.city-site .city-brand strong { display: block; font-weight: 400; }
.city-site .city-brand small { display: block; margin-top: 7px; color: var(--city-muted); font: 10px/1.4 system-ui, sans-serif; letter-spacing: .16em; text-transform: uppercase; }
.city-site .city-tools { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 10px 18px; font-size: 12px; }
.city-site .city-tools a { text-decoration: none; }
.city-site .city-tools label { margin: 0; font-size: 11px; }
.city-site .city-tools select { min-height: 40px; margin-top: 4px; padding: 7px 28px 7px 10px; font-size: 12px; }
.city-site .city-nav { display: flex; flex-wrap: nowrap; align-items: center; justify-content: flex-start; gap: 0; max-width: 100%; padding: 0 max(6%, calc((100vw - 1320px) / 2)); overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: thin; background: var(--city-white); border-bottom: 1px solid var(--city-line); }
.city-site .city-nav a { position: relative; display: block; flex: 0 0 auto; padding: 16px 17px; min-height: 52px; color: var(--city-muted); white-space: nowrap; font-size: 12px; text-decoration: none; }
.city-site .city-nav a:first-child { padding-left: 0; }
.city-site .city-nav a:hover { color: var(--city-forest); text-decoration: underline; }
.city-site .city-nav a[aria-current="page"] { color: var(--city-forest); font-weight: 650; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 9px; }

.city-site .city-layout { width: min(100%, 1440px); margin-inline: auto; }
.city-site .city-chapter { padding: 64px 6%; }
.city-site .city-chapter + .city-chapter { border-top: 1px solid var(--city-line); }
.city-site .city-chapter > :last-child { margin-bottom: 0; }
.city-site .city-eyebrow { display: block; margin-bottom: 17px; color: var(--city-muted); font: 600 10px/1.5 system-ui, sans-serif; letter-spacing: .17em; text-transform: uppercase; }
.city-site .city-lead { max-width: 730px; color: var(--city-muted); font-size: 17px; line-height: 1.75; }
.city-site .city-hero { position: relative; display: flex; align-items: flex-end; min-height: 610px; overflow: hidden; isolation: isolate; background: var(--city-forest); color: var(--city-white); }
.city-site .city-hero > img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.city-site .city-hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(8, 33, 23, .89), rgba(8, 33, 23, .55) 60%, rgba(8, 33, 23, .18)), linear-gradient(0deg, rgba(8, 33, 23, .6), transparent 75%); pointer-events: none; }
.city-site .city-hero-body { width: min(100%, 1060px); padding: 88px 6% 83px; }
.city-site .city-hero h1 { max-width: 850px; margin-bottom: 24px; font-size: clamp(48px, 5.5vw, 68px); }
.city-site .city-hero p { max-width: 650px; color: #f0f3e8; font-size: 17px; }
.city-site .city-hero .city-eyebrow { color: #e8d59e; }
.city-site .city-hero .city-button { background: var(--city-white); color: var(--city-forest); border-color: var(--city-white); }
.city-site .city-hero .city-button.secondary { background: rgba(16, 51, 38, .45); color: var(--city-white); border-color: #d4dfd2; }
.city-site .city-photo-credit { display: block; color: var(--city-muted); font-size: 10px; line-height: 1.6; }
.city-site .city-hero .city-photo-credit { position: absolute; right: 6%; bottom: 15px; max-width: min(480px, 88%); margin: 0; color: #fffef8; text-align: right; font-size: 9px; }
.city-site .city-photo-credit a { text-decoration-thickness: 1px; }

.city-site .city-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.city-site .city-two { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); gap: 32px; align-items: start; }
.city-site .city-card { display: flex; flex-direction: column; justify-content: flex-start; position: relative; isolation: auto; min-height: 0; overflow: visible; padding: 26px; border: 1px solid var(--city-line); background: var(--city-white); color: var(--city-ink); text-decoration: none; }
.city-site .city-card::after { content: none; }
.city-site .city-card > img { position: static; inset: auto; z-index: auto; display: block; width: calc(100% + 52px); max-width: none; height: auto; aspect-ratio: 3 / 2; margin: -26px -26px 24px; object-fit: cover; transform: none; transition: none; }
.city-site .city-card h3 { margin: 9px 0 14px; font-size: 27px; }
.city-site .city-card p { margin-bottom: 19px; color: var(--city-muted); font-size: 13px; }
.city-site .city-card > :last-child { margin-bottom: 0; }
.city-site .city-card > .city-actions:last-child { margin-top: auto; padding-top: 7px; }
.city-site .city-card > small, .city-site .city-card > span { font-size: 12px; letter-spacing: normal; text-transform: none; }
.city-site .city-card .city-eyebrow { font-size: 10px; letter-spacing: .15em; text-transform: uppercase; }
.city-site a.city-card:hover { border-color: #6d8769; box-shadow: 0 5px 18px #18372c0c; }
.city-site a.city-card:hover h3 { text-decoration: underline; text-underline-offset: 5px; }
.city-site .city-panel { padding: 30px; border: 1px solid var(--city-line); background: var(--city-white); }
.city-site .city-panel h2 { font-size: 34px; }
.city-site .city-panel h3 { margin-bottom: 15px; }
.city-site .city-panel > :last-child { margin-bottom: 0; }
.city-site .city-panel p { color: var(--city-muted); font-size: 14px; }
.city-site .city-panel + .city-panel { margin-top: 22px; }
.city-site .city-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 12px; margin: 22px 0; }
.city-site .city-button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 46px; max-width: 100%; padding: 12px 20px; border: 1px solid var(--city-forest); border-radius: 3px; background: var(--city-forest); color: var(--city-white); font: 600 12px/1.5 system-ui, sans-serif; text-decoration: none; text-align: center; white-space: normal; }
.city-site .city-button:hover { background: #244f39; border-color: #244f39; text-decoration: none; }
.city-site .city-button.secondary { background: transparent; color: var(--city-ink); border-color: #93a38f; }
.city-site .city-button.secondary:hover { background: var(--city-sage); border-color: var(--city-ink); }
.city-site .city-button.small { min-height: 40px; padding: 8px 13px; font-size: 11px; }
.city-site .city-button[aria-pressed="true"] { background: #e5ebde; color: var(--city-forest); box-shadow: inset 0 0 0 1px var(--city-forest); }
.city-site .city-toolbar { display: flex; align-items: flex-end; flex-wrap: wrap; gap: 16px; margin: 28px 0; }
.city-site .city-toolbar > label { flex: 1 1 190px; margin-bottom: 0; }
.city-site .city-toolbar > .city-button { flex: 0 0 auto; }
.city-site .city-tabs { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin: 24px 0; padding-bottom: 18px; border-bottom: 1px solid var(--city-line); }
.city-site .city-tabs :where(a, button) { min-height: 42px; padding: 10px 14px; border: 1px solid var(--city-line); border-radius: 3px; background: transparent; color: var(--city-ink); font-size: 12px; text-decoration: none; }
.city-site .city-tabs :where([aria-selected="true"], [aria-pressed="true"], [aria-current="page"]) { border-color: var(--city-forest); background: var(--city-forest); color: var(--city-white); }

.city-site label { display: block; margin-bottom: 20px; color: var(--city-ink); font-size: 13px; font-weight: 600; }
.city-site :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), select, textarea) { display: block; width: 100%; max-width: 100%; min-height: 48px; margin: 7px 0 0; padding: 12px 14px; border: 1px solid #98aa95; border-radius: 3px; background: var(--city-white); color: var(--city-ink); font-size: 16px; font-weight: 400; line-height: 1.5; }
.city-site :where(input, textarea)::placeholder { color: #657562; opacity: 1; }
.city-site textarea { min-height: 130px; resize: vertical; }
.city-site input[type="file"] { padding: 12px; font-size: 13px; }
.city-site input[type="file"]::file-selector-button { min-height: 38px; margin-right: 12px; padding: 6px 11px; border: 1px solid #93a38f; border-radius: 2px; background: var(--city-sage); color: var(--city-ink); font: inherit; cursor: pointer; }
.city-site :where(input[type="checkbox"], input[type="radio"]) { width: 21px; height: 21px; flex: 0 0 auto; accent-color: var(--city-forest); }
.city-site .city-check { display: flex; align-items: flex-start; gap: 13px; min-height: 48px; margin: 0; padding: 18px 0; border-bottom: 1px solid var(--city-line); font-size: 14px; font-weight: 400; }
.city-site .city-check input { margin-top: 3px; }
.city-site .city-check small { display: block; margin-top: 4px; color: var(--city-muted); font-size: 12px; }
.city-site .city-check:has(input:checked) > span { color: var(--city-muted); }
.city-site details { margin: 22px 0; padding: 19px 0; border-top: 1px solid var(--city-line); border-bottom: 1px solid var(--city-line); }
.city-site details details { padding: 14px 0; border-bottom: 0; }
.city-site summary { cursor: pointer; padding: 4px 0; font-size: 14px; font-weight: 600; }
.city-site details[open] > summary { margin-bottom: 17px; }
.city-site details > :last-child { margin-bottom: 0; }
.city-site dialog { width: min(760px, calc(100% - 32px)); max-height: calc(100dvh - 48px); padding: 34px; border: 1px solid var(--city-line); border-radius: 4px; background: var(--city-white); color: var(--city-ink); box-shadow: 0 25px 90px #10291f45; overflow-y: auto; }
.city-site dialog::backdrop { background: #0d271fc9; }
.city-site dialog h2 { font-size: 36px; }
.city-site dialog > .city-button:first-child { float: right; margin: -8px -8px 18px 20px; }

.city-site .city-notice { margin: 24px 0; padding: 18px 22px; border-left: 3px solid #658258; background: var(--city-sage); color: #294936; font-size: 13px; }
.city-site .city-notice:empty { display: none; }
.city-site .city-notice.error, .city-site .city-notice[data-kind="error"] { border-color: #9c5137; background: #faeae0; color: #70341f; }
.city-site .city-source { padding: 22px 0; border-bottom: 1px solid var(--city-line); }
.city-site .city-source h3 { margin-bottom: 10px; font-size: 23px; }
.city-site .city-source p { margin: 8px 0; color: var(--city-muted); font-size: 13px; }
.city-site .city-source :where(small, time) { display: block; margin-top: 8px; color: var(--city-muted); font-size: 11px; }
.city-site .city-stat { padding: 23px 0; border-block: 1px solid var(--city-line); }
.city-site .city-stat strong { display: block; color: var(--city-forest); font: 46px/1.1 Georgia, serif; letter-spacing: -.04em; }
.city-site .city-stat span { display: block; margin-top: 7px; color: var(--city-muted); font-size: 12px; }
.city-site .city-badge { display: inline-block; padding: 4px 9px; border: 1px solid #b4c0ad; border-radius: 2px; color: #3f5c47; background: #eef2e7; font-size: 10px; font-weight: 600; letter-spacing: .06em; line-height: 1.5; text-transform: uppercase; }
.city-site .city-progress { height: 7px; margin: 22px 0; overflow: hidden; border-radius: 6px; background: var(--city-line); }
.city-site .city-progress > span { display: block; height: 100%; max-width: 100%; background: #537b48; }
.city-site progress { width: 100%; height: 9px; accent-color: #537b48; }
.city-site .city-empty { padding: 26px; border: 1px dashed #aebca5; background: #f0f1e6; color: var(--city-muted); font-size: 14px; }
.city-site .city-relations { display: flex; flex-wrap: wrap; gap: 9px; margin: 20px 0; padding: 0; list-style: none; }
.city-site .city-relations :where(a, button) { display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 9px 13px; border: 1px solid var(--city-line); border-radius: 3px; background: transparent; color: var(--city-ink); font-size: 12px; text-decoration: none; }
.city-site .city-relations :where(a, button):hover { border-color: var(--city-ink); background: var(--city-sage); }
.city-site .city-footer { display: flex; align-items: flex-start; justify-content: space-between; gap: 40px; padding: 42px 6%; background: var(--city-forest); color: #dfe8d9; font-size: 12px; }
.city-site .city-footer p { max-width: 640px; margin-bottom: 0; font-size: 11px; }
.city-site .city-footer .city-brand { color: var(--city-white); }
.city-site .city-footer .city-brand small { color: #d0dfca; }
.city-site .city-footer a { color: inherit; }
.city-site .city-footer .city-actions { margin: 0; }
.city-site .city-table-wrap { width: 100%; max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; }
.city-site table { width: 100%; border-collapse: collapse; font-size: 12px; }
.city-site :where(th, td) { padding: 13px; border-bottom: 1px solid var(--city-line); text-align: left; vertical-align: top; }
.city-site th { color: var(--city-forest); font-weight: 600; }
.city-site .city-help { display: block; margin: 8px 0 18px; color: var(--city-muted); font-size: 12px; }
.city-site .city-map { width: 100%; min-height: 340px; border: 1px solid var(--city-line); background: var(--city-sage); }
.city-site .city-map iframe { display: block; width: 100%; min-height: 340px; border: 0; }

@media (max-width: 1000px) {
  .city-site .city-header { padding-inline: 5%; }
  .city-site .city-nav { padding-inline: 5%; }
  .city-site .city-tools { gap: 10px; }
  .city-site .city-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .city-site .city-two { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 24px; }
  .city-site .city-card, .city-site .city-panel { padding: 23px; }
  .city-site .city-card > img { width: calc(100% + 46px); margin: -23px -23px 22px; }
  .city-site .city-hero { min-height: 570px; }
}

@media (max-width: 700px) {
  .city-site .city-topline { padding: 9px 6%; flex-wrap: wrap; gap: 4px 14px; font-size: 9px; }
  .city-site .city-header { position: relative; flex-wrap: wrap; gap: 19px; padding: 21px 6%; }
  .city-site .city-brand { font-size: 30px; }
  .city-site .city-brand > b { width: 41px; height: 41px; font-size: 36px; }
  .city-site .city-brand small { font-size: 9px; }
  .city-site .city-tools { width: 100%; justify-content: flex-start; gap: 10px 17px; }
  .city-site .city-tools label { flex: 1 1 150px; max-width: 240px; }
  .city-site .city-nav { width: 100%; padding-inline: 6%; scroll-padding-inline: 6%; }
  .city-site .city-nav a { padding: 14px 13px; min-height: 49px; font-size: 11px; }
  .city-site .city-nav a:first-child { padding-left: 0; }
  .city-site .city-hero { min-height: 590px; }
  .city-site .city-hero::after { background: linear-gradient(90deg, #082117c9, #08211770), linear-gradient(0deg, #082117d9, #08211724); }
  .city-site .city-hero-body { padding: 65px 6% 100px; }
  .city-site .city-hero h1, .city-site h1 { font-size: 48px; line-height: 1.08; }
  .city-site .city-hero p { font-size: 15px; line-height: 1.75; }
  .city-site .city-hero .city-photo-credit { font-size: 8px; }
  .city-site .city-chapter { padding: 43px 6%; }
  .city-site h2 { font-size: 35px; }
  .city-site h3 { font-size: 26px; }
  .city-site .city-lead { font-size: 15px; }
  .city-site .city-grid, .city-site .city-two { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .city-site .city-card, .city-site .city-panel { padding: 23px; }
  .city-site .city-panel h2 { font-size: 31px; }
  .city-site .city-toolbar { align-items: stretch; gap: 15px; }
  .city-site .city-toolbar > label { flex-basis: 100%; }
  .city-site .city-toolbar > .city-button { flex: 1 1 auto; }
  .city-site .city-tabs { gap: 7px; }
  .city-site .city-tabs :where(a, button) { padding: 9px 12px; font-size: 11px; }
  .city-site .city-check { font-size: 13px; }
  .city-site .city-footer { flex-direction: column; gap: 25px; padding: 34px 6%; }
  .city-site .city-notice { padding: 16px 18px; }
  .city-site dialog { padding: 25px 22px; }
  .city-site dialog h2 { font-size: 31px; }
}

@media (max-width: 360px) {
  .city-site .city-hero h1, .city-site h1 { font-size: 43px; }
  .city-site .city-actions > .city-button { flex: 1 1 100%; }
  .city-site .city-hero-body { padding-top: 48px; }
}

@media (prefers-reduced-motion: reduce) {
  .city-site *, .city-site *::before, .city-site *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}

@media print {
  .city-site { color: #14231b; background: white; font-size: 11px; }
  .city-site :where(.city-topline, .city-header, .city-nav, .city-footer, .city-tools, .city-toolbar, .city-tabs, .city-actions, .city-button) { display: none; }
  .city-site .city-chapter { padding: 16px 0; }
  .city-site .city-grid, .city-site .city-two { display: block; }
  .city-site .city-panel, .city-site .city-card, .city-site .city-source { break-inside: avoid; margin-bottom: 16px; box-shadow: none; }
  .city-site .city-hero { min-height: 0; background: white; color: #14231b; }
  .city-site .city-hero > img, .city-site .city-hero::after, .city-site .city-hero .city-photo-credit { display: none; }
  .city-site .city-hero-body { padding: 16px 0; }
  .city-site .city-hero :where(p, .city-eyebrow) { color: #14231b; }
  .city-site .city-hero h1, .city-site h1 { font-size: 36px; }
  .city-site h2 { font-size: 28px; }
  .city-site a { text-decoration: underline; }
}

.city-site .city-hero label{color:#fffef8}
.city-site .city-skip{position:absolute;top:-100px;left:20px;z-index:20;background:#fffef8;color:#18372c;padding:15px}
.city-site .city-skip:focus{top:12px}

.city-site .city-return{display:flex;align-items:center;flex-wrap:wrap;gap:10px 22px;padding:11px max(6%,calc((100vw - 1320px)/2));background:#e6ebdf;border-bottom:1px solid #c7d2c6;color:#18372c;font-size:12px}.city-site .city-return span{font-weight:700}.city-site .city-return a{color:inherit;text-decoration:underline;text-underline-offset:3px;font-weight:600}.city-site .city-return a:hover{text-decoration-thickness:2px}.city-site .city-return small{margin-left:auto;color:#43594b;font-size:11px}@media(max-width:650px){.city-site .city-return{padding:11px 6%;gap:8px 16px}.city-site .city-return small{margin-left:0;flex-basis:100%}}@media print{.city-site .city-return{display:none}}
.city-site .city-move{padding:8px max(6%,calc((100vw - 1320px)/2)) 10px;background:#f5f3e9;border-bottom:1px solid #d9dccf;color:#284335;font-size:12px}.city-site .city-move summary{width:max-content;max-width:100%;cursor:pointer;font-weight:700;text-decoration:underline;text-underline-offset:3px}.city-site .city-move summary:focus-visible{outline:2px solid #284335;outline-offset:3px}.city-site .city-move p{max-width:1000px;margin:10px 0 4px;line-height:1.65}@media print{.city-site .city-move{display:none}}
