@font-face{font-family:"Barlow Condensed";src:url('/assets/cache/5bc49d41f32810a1/barlow-condensed-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow Condensed";src:url('/assets/cache/e3e520cb7468f2ef/barlow-condensed-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Public Sans";src:url('/assets/cache/c1b6da516e0062e9/public-sans.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--brand:#174b3b;--brand-hover:#103629;--ink:#203b31;--muted:#52645a;--tint:#edf1e8;--tint-hover:#dfe8d9;--line:#d0d8cb;--sun:#edb949;--sun-hover:#f6cb67;--paper:#fbf9f2;--white:#fff;--on-brand:#fffaf0;--on-brand-muted:#d4e2d7;--on-brand-line:#416453;--field-border:#7a8f7d;--accent:#a83b2b;--focus:var(--brand);--wrap:1280px;--radius:14px;--body:"Public Sans",sans-serif;--display:"Barlow Condensed",sans-serif;scroll-behavior:smooth;scroll-padding-top:24px;color-scheme:light}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--body);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit;color:inherit}
button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
button,a,summary{touch-action:manipulation}
button{cursor:pointer}
button:disabled{opacity:.55;cursor:not-allowed}
a{color:var(--brand);text-decoration-thickness:1px;text-underline-offset:.22em}
a:hover{color:var(--brand-hover)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
input,textarea{caret-color:var(--brand)}
::selection{color:var(--ink);background:var(--sun)}
*{scrollbar-width:thin;scrollbar-color:var(--field-border) var(--tint)}
[hidden]{display:none!important}
img{display:block;max-width:100%;height:auto}
svg{flex-shrink:0}
p{margin:0 0 1.2em;max-width:72ch}
h1,h2,h3,h4{margin:0;color:inherit;line-height:1.1;text-wrap:balance}
h1,h2{font-family:var(--display);font-weight:600;letter-spacing:-.018em}
h3,h4{font-family:var(--body);font-weight:700;line-height:1.35}
h1{font-size:clamp(2.7rem,5.5vw,5rem);max-width:26ch;overflow-wrap:anywhere}
h2{font-size:clamp(2rem,3vw,3rem)}
h3{font-size:1.12rem}
ul,ol{padding-left:1.4em}
address{font-style:normal}
.wrap{width:min(calc(100% - 80px),var(--wrap));margin-inline:auto}
.icon{width:22px;height:22px;vertical-align:middle;flex-shrink:0}
.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.page-content .on-page-nav{background:var(--tint);padding:20px 24px;border-radius:var(--radius);margin-bottom:32px}
.page-content .on-page-nav h2{font-family:var(--body);font-size:1rem;letter-spacing:0;margin:0 0 12px}
.page-content .on-page-nav ul{display:flex;flex-wrap:wrap;gap:8px 24px;margin:0;padding:0;list-style:none}
.page-content .on-page-nav li{margin:0;font-size:.85rem}
.skip-link:focus{position:fixed;z-index:1000;left:16px;top:16px;background:var(--white);padding:12px 20px;border:2px solid var(--brand)}
.site-header{background:var(--paper);position:relative;z-index:50}
.header-top{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:104px}
.wordmark{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);min-width:0}
.wordmark b{font-family:var(--display);font-size:2.2rem;line-height:1;letter-spacing:-.015em;display:block;font-weight:600}
.wordmark small{display:block;font-size:.8125rem;line-height:1.3;margin:0;color:var(--muted)}
.city-seal{width:64px;height:64px;object-fit:contain;flex-shrink:0}
.header-tools{display:flex;align-items:center;gap:28px;font-size:.85rem;font-weight:600}
.header-tools>a{text-decoration:none;color:var(--ink)}
.language-label select{max-width:140px;border:0;background:var(--paper);color:var(--ink);font-size:.8125rem;font-weight:600;min-height:44px;cursor:pointer}
.header-top{position:relative}
.language-picker{position:relative;flex-shrink:0}
.language-toggle{display:flex;align-items:center;gap:8px;min-height:44px;max-width:180px;padding:8px 10px;border:0;border-radius:8px;background:transparent;font-size:.8125rem;font-weight:600}
.language-toggle:hover,.language-toggle[aria-expanded=true]{background:var(--tint)}
.language-toggle:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.language-toggle[aria-expanded=true] .chevron{transform:rotate(180deg)}
.language-toggle>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.language-globe{width:18px;height:18px}
.language-menu{position:absolute;top:calc(100% + 10px);right:0;width:300px;padding:8px;background:var(--white);border-radius:var(--radius);box-shadow:0 16px 35px #203b3129;z-index:70}
.language-menu>p{margin:0 4px 4px;padding:8px 8px 12px;border-bottom:1px solid var(--line);font-size:.8125rem;font-weight:700;color:var(--muted)}
.language-options{list-style:none;margin:0;padding:0;max-height:min(352px,calc(100svh - 150px));overflow-y:auto;overscroll-behavior:contain}
.language-options button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:10px 12px;border:0;border-radius:6px;background:transparent;text-align:left;font-size:.875rem;line-height:1.5;font-weight:400}
.language-options button:hover,.language-options button:focus-visible,.language-options button[aria-selected=true]{background:var(--tint);color:var(--brand)}
.language-options button:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}
.language-options button[aria-selected=true]{font-weight:600}
.language-options svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;opacity:0}
.language-options button[aria-selected=true] svg{opacity:1}
@media(max-width:760px){.language-picker{position:static}.language-toggle{width:80px;max-width:80px;gap:6px;padding-inline:6px}.language-globe{display:none}.language-menu{top:calc(100% - 6px);left:0;right:0;width:auto}.language-options{max-height:min(352px,calc(100svh - 140px))}}
@media(max-width:390px){.language-toggle{width:73px;max-width:73px;gap:5px;padding-inline:3px}}
@media(max-width:360px){.language-toggle{width:66px;max-width:66px;gap:4px;padding-inline:1px}.language-toggle .chevron{width:10px;height:10px}}
.mobile-search-link{display:none}
.translation-footer{background:var(--tint)}
.translation-footer p{margin:0;font-size:.8125rem;padding-block:8px}
.translation-footer p:empty{display:none}
#translation-engine{display:none}
body.translation-ready{top:0!important}
iframe.goog-te-banner-frame,iframe.VIpgJd-ZVi9od-ORHb-OEVmcd{display:none!important}
.VIpgJd-yAWNEb-L7lbkb{display:none!important}
.VIpgJd-yAWNEb-VIpgJd-fmcmS-sn54Q{background-color:transparent!important;box-shadow:none!important}
.header-search{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--tint)}
.mobile-menu{display:none;border:0;background:var(--tint);padding:8px 14px;border-radius:8px;min-height:44px}
.nav-band{background:var(--brand);color:var(--on-brand);border-top:1px solid var(--on-brand-line);border-bottom:1px solid var(--on-brand-line);--focus:var(--sun)}
.main-nav{display:flex;align-items:center;gap:45px;min-height:57px}
.nav-group{position:relative}
.nav-toggle{border:0;background:none;padding:16px 0;display:flex;align-items:center;gap:10px;font-size:.88rem;font-weight:600}
.chevron{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .16s ease-out}
.nav-toggle[aria-expanded=true] .chevron{transform:rotate(180deg)}
.is-current>.nav-toggle{color:var(--sun);font-weight:700}
.nav-fallback{display:block;color:var(--on-brand);padding:16px 0;font-size:.88rem;font-weight:600;text-decoration:none}
.nav-fallback:hover,.is-current>.nav-fallback{color:var(--sun)}
@media(max-width:760px){.main-nav:not([data-nav-enhanced]){display:flex}.nav-fallback{padding:14px 0}}
.nav-toggle:hover{color:var(--sun)}
.nav-panel{position:absolute;top:100%;left:-20px;width:340px;max-height:min(65vh,580px);overflow:auto;background:var(--white);box-shadow:0 18px 35px #00000022;border-radius:0 0 var(--radius) var(--radius);padding:16px;z-index:60;--focus:var(--brand)}
.nav-panel a{display:block;padding:10px 12px;text-decoration:none;font-size:.87rem;color:var(--ink);border-radius:6px}
.nav-panel a:hover,.nav-panel a[aria-current=page]{background:var(--tint);color:var(--brand)}
.nav-panel a:first-child{font-weight:700;border-bottom:1px solid var(--line);margin-bottom:6px;padding-bottom:16px}
.nav-services{margin-left:auto;display:flex;gap:18px;align-items:center;color:var(--sun);font-size:.85rem;font-weight:700;text-decoration:none}
.nav-services:hover{color:var(--on-brand);text-decoration:underline}
.main-nav .mobile-search-link{color:var(--on-brand)}
.nav-services .icon{width:18px}
.home-hero{background:var(--brand);color:var(--on-brand);--focus:var(--sun);padding-block:28px 0;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:54px;align-items:center}
.hero-copy{padding-block:0}
.hero-copy h1{font-size:clamp(3.8rem,6vw,5rem);letter-spacing:-.025em;line-height:.96;margin-bottom:18px}
.hero-copy>p{font-size:1rem;line-height:1.6;color:var(--on-brand-muted);margin-bottom:20px}
.city-search{color:var(--ink);--focus:var(--brand);display:flex;align-items:center;gap:12px;background:var(--white);padding:7px 7px 7px 18px;border:1px solid var(--field-border);border-radius:10px;max-width:560px;min-height:60px}
.city-search:focus-within{border-color:var(--brand);outline:2px solid var(--brand);outline-offset:0}
.city-search>.icon{color:var(--muted);width:20px}
.city-search input{width:100%;min-width:0;border:0;padding:10px 0;background:transparent;outline-offset:0;font-size:.9rem}
.city-search input:focus-visible{outline:none}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}
.city-search button{display:grid;place-items:center;background:var(--brand);color:var(--white);width:44px;min-width:44px;height:44px;border:0;border-radius:7px}
.city-search button:hover{background:var(--brand-hover)}
.city-search button:focus-visible{outline-offset:2px}
.search-suggestions{font-size:.8125rem;display:flex;flex-wrap:wrap;gap:5px 12px;margin-top:12px;color:var(--muted)}
.search-suggestions a{color:var(--ink)}
.home-hero .search-suggestions{color:var(--on-brand-muted)}
.home-hero .search-suggestions a{color:var(--on-brand)}
.home-hero .search-suggestions a:hover{color:var(--sun)}
.home-hero .city-search:focus-within{border-color:var(--sun);outline-color:var(--sun)}
.home-hero .city-search button{background:var(--sun);color:var(--brand-hover)}
.home-hero .city-search button:hover{background:var(--sun-hover)}
.hero-photo{margin:0;align-self:center;min-width:0}
.hero-photo img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center center;border-radius:18px 18px 64px 18px}
.service-bar{--focus:var(--brand);display:grid;grid-template-columns:repeat(4,1fr);margin-top:-30px;position:relative;z-index:3;background:var(--white);box-shadow:0 12px 25px #00000010;border-radius:var(--radius);overflow:hidden}
.service-link{display:flex;align-items:center;gap:15px;padding:26px 23px;text-decoration:none;color:var(--ink);min-width:0}
.service-link>span{min-width:0}
.service-link strong{font-size:.9rem;display:block;line-height:1.4}
.service-link small{font-size:.8125rem;display:block;line-height:1.6;color:var(--muted);margin-top:4px}
.service-link>.icon:first-child{color:var(--brand);width:28px;height:28px}
.service-link .service-arrow{margin-left:auto;width:17px;height:17px;transition:transform .15s ease-out}
.service-link:hover .service-arrow{transform:translateX(3px)}
.service-link:hover{background:var(--tint);color:var(--ink)}
.service-bar .service-link{padding:25px 21px;border-right:1px solid var(--line)}
.service-bar .service-link:last-child{border:0}
.service-bar .service-link:first-child{background:var(--sun);color:var(--brand-hover)}
.service-bar .service-link:first-child:hover{background:var(--sun-hover)}
.service-bar .service-link:first-child .icon,.service-bar .service-link:first-child small{color:var(--brand-hover)}
.service-bar .service-arrow{display:none}
.city-hall-strip{display:flex;justify-content:space-between;gap:16px;padding-block:29px;font-size:.8125rem;color:var(--muted);border-bottom:1px solid var(--line)}
.city-hall-strip span,.city-hall-strip a{display:flex;align-items:center;gap:8px;text-decoration:none}
.city-hall-strip .icon{width:17px;height:17px;color:var(--brand)}
.home-services{display:grid;grid-template-columns:1fr 1.7fr;gap:80px;padding-block:84px}
.section-opening h2{font-size:3.7rem;line-height:1;margin-bottom:24px}
.section-opening p{max-width:30ch;font-size:.95rem;color:var(--muted);margin-bottom:25px}
.button-link{gap:8px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--brand);border-radius:8px;padding:12px 18px;color:var(--brand);text-decoration:none;font-weight:600;font-size:.8125rem;line-height:1.5}
.button-link:hover{background:var(--brand);color:var(--white)}
.service-directory{display:grid;grid-template-columns:1fr 1fr;column-gap:38px;align-content:start}
.service-directory .service-link{padding:24px 0;border-bottom:1px solid var(--line);align-items:flex-start}
.service-directory .service-link>.icon:first-child{width:22px;height:22px;margin-top:3px}
.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:25px;margin-bottom:32px}
.text-link{display:inline-flex;align-items:center;gap:12px;font-size:.8125rem;font-weight:600;text-decoration:none}
.text-link .icon{width:18px;height:18px}
.news-section{background:var(--tint);padding-block:62px 70px}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}
.news-grid article{padding-top:22px;border-top:2px solid var(--brand)}
.news-grid h3{font-size:1.15rem;line-height:1.4;margin-bottom:14px;text-wrap:pretty}
.news-grid h3 a{color:var(--ink);text-decoration:none}
.news-grid p{font-size:.9375rem;line-height:1.7;color:var(--muted);margin-bottom:23px}
.city-records{display:grid;grid-template-columns:1.35fr 1fr;gap:90px;padding-block:78px}
.notice-list{margin:0;padding:0;list-style:none}
.notice-list li{border-bottom:1px solid var(--line);padding-block:20px}
.notice-list li:first-child{border-top:1px solid var(--line)}
.notice-list a{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-decoration:none;color:var(--ink);font-size:.85rem;line-height:1.6}
.participate{background:var(--brand);color:var(--on-brand);--focus:var(--sun);padding:38px 40px;border-radius:18px 18px 48px 18px;align-self:start}
.participate h2{font-size:3.5rem;line-height:1;margin-bottom:22px}
.participate p{font-size:.87rem;color:var(--on-brand-muted);line-height:1.8;margin-bottom:24px}
.participate .button-link{background:var(--sun);color:var(--brand-hover);border-color:var(--sun)}
.participate .button-link:hover{background:var(--sun-hover);border-color:var(--sun-hover)}
.participate>.text-link{display:block;margin-top:20px;color:var(--on-brand)}
.help-strip{background:var(--sun);padding-block:26px}
.help-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:25px}
.help-strip .wrap>div{display:flex;align-items:center;gap:18px}
.help-strip p{margin:0;font-size:.84rem;line-height:1.6}
.help-strip strong,.help-strip span{display:block}
.help-strip span{color:var(--ink);font-size:.8125rem}
.help-strip .wrap>a:not(.text-link){font-family:var(--display);font-size:2rem;white-space:nowrap;text-decoration:none}
.site-footer{background:var(--brand-hover);color:var(--on-brand);--focus:var(--sun);padding-top:54px}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:55px;padding-bottom:45px}
.footer-name{font-family:var(--display);font-size:2.7rem!important;line-height:1;text-decoration:none}
.footer-grid p{font-size:.8125rem;color:var(--on-brand-muted);margin:20px 0 14px}
.footer-grid h2{font-family:var(--body);font-weight:700;font-size:.87rem;margin:8px 0 22px;letter-spacing:0}
.footer-grid a{display:block;color:var(--on-brand);font-size:.8125rem;text-decoration:none;margin-bottom:12px}
.footer-grid a:hover,.footer-bottom a:hover{color:var(--sun);text-decoration:underline}
.footer-grid .footer-brand{display:flex;align-items:center;gap:14px}
.footer-grid .footer-brand .city-seal{width:60px;height:60px}
.footer-bottom{border-top:1px solid var(--on-brand-line);padding-block:23px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--on-brand-muted);font-size:.8125rem}
.footer-bottom p{margin:0}
.footer-bottom>div{display:flex;flex-wrap:wrap;gap:20px}
.footer-bottom a{color:inherit;text-decoration:none}
.page-title{padding:31px 0 43px;background:var(--tint)}
.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:.8125rem;color:var(--muted);margin-bottom:27px}
.breadcrumb a{color:var(--muted);text-decoration:none}
.breadcrumb>[aria-current]{max-width:65ch;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.page-intro{color:var(--muted);font-size:1rem;line-height:1.8;margin:20px 0 0;max-width:70ch}
.page-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:54px;padding-block:48px 75px;align-items:start}
.page-layout.full-width{display:block;max-width:min(var(--wrap),calc(100% - 80px))}
.section-nav{position:sticky;top:24px;font-size:.8125rem}
.section-nav summary{list-style:none;font-weight:700;font-size:1rem;padding-bottom:17px;border-bottom:2px solid var(--brand)}
.section-nav nav{display:flex;flex-direction:column;padding-top:10px;max-height:70vh;overflow:auto}
.section-nav a{display:block;padding:10px 12px;color:var(--muted);text-decoration:none;border-radius:7px;line-height:1.5}
.section-nav-label{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.section-nav a:hover{color:var(--brand);background:var(--tint)}
.section-nav a[aria-current=page]{color:var(--brand);font-weight:700;background:var(--tint)}
.page-content{min-width:0;font-size:1rem;overflow-wrap:anywhere}
.page-content>div,.page-content>section{min-width:0}
.page-content article{max-width:100%}
.page-content h2{font-size:2.2rem;margin:1.5em 0 .6em}
.page-content h3{margin:1.8em 0 .65em;font-size:1.04rem}
.page-content h4{margin:1.5em 0 .6em;font-size:.95rem}
.page-content h2:first-child{margin-top:0}
.page-content p{max-width:72ch}
.page-content li{margin-bottom:.55em}
.page-content section+section{margin-top:34px}
.page-content img{max-height:560px;object-fit:contain;border-radius:8px;margin-block:20px}
.page-content .icon{width:19px;height:19px;margin-right:5px}
.content-grid{display:grid;gap:20px;margin-block:20px;min-width:0;align-items:start}
.content-grid>*{min-width:0}
.calendar-week{display:contents}
@media(max-width:760px){.page-content .content-grid,.page-content .content-grid.cols-3{grid-template-columns:minmax(0,1fr)}}
.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.content-grid:has(>article){display:block}
.content-grid:has(>article)>aside{margin-top:35px}
.content-panel{padding:22px;background:var(--tint);border-radius:var(--radius);margin-block:14px}
.content-panel .content-panel{background:transparent;padding:0;border-radius:0}
.content-panel .content-grid{gap:20px}
.content-panel h2{font-size:1.9rem}
.content-panel h3:first-child{margin-top:0}
.content-panel:has(>img){padding:0;background:none}
.content-flex{display:flex;align-items:center;gap:10px;min-width:0}
.content-flex.vertical{flex-direction:column;align-items:stretch}
.content-flex.wrap-flex{flex-wrap:wrap}
.content-flex:has(>.field){flex-wrap:wrap}
.page-content .heading-group{justify-content:flex-start;align-items:center;gap:10px;margin:32px 0 14px;flex-wrap:nowrap}
.page-content .heading-group>h2,.page-content .heading-group>h3,.page-content .heading-group>h4{margin:0;flex:1;min-width:0}
.page-content .heading-group>.icon{margin:0}
.page-content .icon-text{align-items:flex-start;gap:10px;flex-wrap:nowrap}
.page-content .icon-text>.icon{margin-top:4px}
.page-content .staff-card{display:block}
.page-content .staff-card h3{margin:0 0 8px}
.page-content .staff-card p{margin:0 0 14px}
.content-flex>p{margin-bottom:0}
.stack>*+*{margin-top:18px}
.muted{color:var(--muted)}
.destination{display:block;text-decoration:none;color:var(--ink);padding:22px 18px;background:var(--tint);border-radius:var(--radius);height:100%}
.destination:hover{background:var(--tint-hover);color:var(--ink)}
.destination h2,.destination h3{margin-top:0}
.destination p{font-size:.9375rem;line-height:1.7;color:var(--muted)}
.destination .content-panel{background:transparent;padding:0;margin:0}
.sentence-heading{text-transform:none}
.pill{display:inline-flex;padding:3px 9px;font-size:.8125rem;color:var(--brand);background:var(--tint-hover);border-radius:20px;line-height:1.5}
.control,.page-content button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--field-border);border-radius:8px;padding:9px 15px;background:var(--white);font-size:.8125rem;font-weight:600;line-height:1.5;min-height:44px;max-width:100%}
.control:hover,.page-content button:hover{border-color:var(--brand);color:var(--brand)}
.control[aria-pressed=true],.control[aria-selected=true],.control.is-active{background:var(--brand);border-color:var(--brand);color:var(--white)}
.control[aria-pressed=true]:hover,.control[aria-selected=true]:hover,.control.is-active:hover{background:var(--brand-hover);border-color:var(--brand-hover);color:var(--white)}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-block:20px}
.page-content table{border-collapse:collapse;width:100%;font-size:.8125rem;text-align:left;font-variant-numeric:tabular-nums}
.page-content th{font-size:.8125rem;font-weight:700;background:var(--tint);text-align:left;padding:14px}
.page-content td{padding:16px 14px;border-bottom:1px solid var(--line);vertical-align:top}
.page-content table p{margin:0}
.table-scroll{max-width:100%;overflow-x:auto}
.table-scroll:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.table-scroll-hint{display:none}
@media(max-width:760px){.table-scroll-hint{display:block;font-size:.8125rem;color:var(--muted);margin:18px 0 10px}.table-scroll{border:1px solid var(--line);border-radius:8px}}
.field,.page-content input:not([type=checkbox]):not([type=radio]),.page-content select,.page-content textarea{width:100%;max-width:100%;min-height:44px;border:1px solid var(--field-border);border-radius:8px;padding:11px 13px;background:white;font-size:.88rem;line-height:1.5}
.page-content input[type=checkbox],.page-content input[type=radio]{width:18px;height:18px;accent-color:var(--brand);flex-shrink:0}
.page-content input[type=checkbox]+span,.page-content input[type=radio]+span{line-height:1.5}
.page-content label{display:block;font-size:.84rem;font-weight:600;margin-block:10px 7px;line-height:1.5}
.page-content label:has(input[type=checkbox]),.page-content label:has(input[type=radio]){display:flex;align-items:center;gap:9px;font-weight:400}
.page-content form{max-width:850px}
.page-content form>div{margin-bottom:18px}
.input-wrap{position:relative}
.input-wrap>.icon{position:absolute;top:14px;left:13px;color:var(--muted)}
.page-content .input-wrap>input.field{padding-inline-start:44px}
.form-preview-note{background:var(--tint);padding:16px 18px;font-size:.8125rem;border-radius:8px;line-height:1.65;margin-bottom:25px}
.form-review{background:var(--tint);padding:24px;border-radius:var(--radius);margin-top:24px}
.form-review dl{display:grid;grid-template-columns:1fr 2fr;gap:10px 20px;font-size:.85rem}
.form-review dt{font-weight:700}
.form-review dd{margin:0;overflow-wrap:anywhere}
.field-error{color:var(--accent);font-size:.8125rem}
.search-layout{padding-block:28px 70px;max-width:900px}
.page-title .city-search{margin-top:25px;max-width:760px}
.search-result{padding-block:22px;border-bottom:1px solid var(--line);overflow-wrap:anywhere;min-width:0}
.search-result h2{font-family:var(--body);font-size:1.1rem;margin-bottom:8px}
.search-result h2 a{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-decoration:none}
.search-result p{font-size:.85rem;color:var(--muted);line-height:1.75;margin:0}
.search-result small{display:block;font-size:.8125rem;color:var(--muted);margin-bottom:8px}
.sitemap-groups{columns:3;column-gap:45px;padding-block:45px 70px}
.sitemap-groups section{break-inside:avoid;margin-bottom:35px}
.sitemap-groups h2{margin-top:0;font-size:2rem}
.sitemap-groups ul{list-style:none;padding:0}
.sitemap-groups li{padding-block:6px;font-size:.83rem;line-height:1.6}
.accordion{border-bottom:1px solid var(--line);padding-block:16px}
.accordion summary{font-size:.95rem;font-weight:600;cursor:pointer;line-height:1.5}
.accordion>div{padding-top:16px;color:var(--muted)}
.filter-status{font-size:.8125rem;color:var(--muted);margin-block:15px}
.empty-state{padding:35px;background:var(--tint);border-radius:var(--radius);color:var(--muted)}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));font-size:.8125rem;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.calendar-day{min-height:110px;padding:10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.calendar-day.is-other{background:var(--paper);color:var(--muted)}
.calendar-day.is-today>strong{background:var(--brand);color:var(--white);padding:3px 6px;border-radius:4px}
.calendar-event{display:block;margin-top:8px;font-size:.8125rem;line-height:1.5;background:var(--tint);padding:5px;border-radius:4px}
.archive-page{padding-block:38px 65px}
.archive-filters{display:grid;grid-template-columns:2fr 1.2fr .7fr auto;gap:18px;align-items:end;margin-bottom:24px}
.archive-filters label{font-size:.8125rem;font-weight:600;display:flex;gap:8px;flex-direction:column}
.meeting-filters{grid-template-columns:1.4fr 1.2fr 1fr 1fr auto}
.archive-filters .control{min-height:44px;font-size:.8125rem}
.archive-record{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:30px;padding-block:22px;border-bottom:1px solid var(--line)}
.record-info{min-width:0}
.archive-record h2,[data-calendar] .archive-record h3{font-family:var(--body);font-size:1rem;line-height:1.45;letter-spacing:0;font-weight:600;text-wrap:pretty;overflow-wrap:anywhere}
.archive-record h2 a,[data-calendar] .archive-record h3 a{color:var(--ink);text-decoration:none}
.archive-record h2 a:hover,[data-calendar] .archive-record h3 a:hover{color:var(--brand);text-decoration:underline}
.record-meta{margin:9px 0 0;color:var(--muted);font-size:.8125rem;line-height:1.6}
.document-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;font-size:.8125rem}
.document-actions .button-link{font-size:.8125rem;padding:9px 12px}
.archive-record .document-actions{justify-content:flex-end;max-width:380px}
.pagination{display:flex;justify-content:center;align-items:center;gap:25px;padding-top:32px;font-size:.8125rem}
.archive-video{font-size:.82rem;margin-bottom:25px}
.document-viewer{padding-block:35px 55px}
.document-frame{display:block;width:100%;height:75vh;min-height:500px;border:1px solid var(--line);border-radius:10px;margin-top:24px}
.document-viewer>p{font-size:.85rem;margin-bottom:16px}
.document-viewer>a{margin:0 15px 20px 0}
.forms-page{padding-block:35px 60px}
.forms-directory{display:grid;grid-template-columns:1fr 1fr;gap:0 45px;max-width:950px}
.forms-directory .service-link{border-bottom:1px solid var(--line);padding-inline:0}
.faq-page{max-width:900px;margin-inline:auto}
.faq-page>label{font-size:.85rem;font-weight:600;display:block;margin-bottom:10px}
.faq-page>.field{margin-bottom:25px}
.long-title{font-family:var(--body);font-size:clamp(1.5rem,2.7vw,2.4rem);line-height:1.35;letter-spacing:-.015em;max-width:65ch;text-wrap:pretty}
.page-title h1.long-title{max-width:65ch}
.title-clamped{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.title-toggle{margin-top:18px}
.hero-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px 25px;margin-top:22px;font-size:.8125rem}
.hero-meta span{display:flex;align-items:center;gap:8px}
.hero-meta .icon{width:17px;height:17px}
.calendar-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:25px;margin-bottom:25px}
.calendar-controls>div{display:flex;gap:7px}
.calendar-controls h2{font-size:2.3rem}
.calendar-jump{display:flex;align-items:center;gap:10px;font-size:.84rem;font-weight:600}
.calendar-jump .field{width:auto;min-width:0}
.calendar-day{min-width:0}
.calendar-event,.calendar-jump{overflow-wrap:anywhere}
@media(max-width:760px){.calendar-jump{width:100%}.calendar-jump .field{flex:1}}
.calendar-weekday{background:var(--tint);padding:10px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);font-weight:600}
.calendar-footnote{font-size:.82rem;margin-top:25px}
.page-content fieldset{border:0;padding:0;margin:28px 0}
.page-content legend{font-weight:700;font-size:1.05rem;margin-bottom:15px}
@media(max-width:760px){.header-tools>.header-search{display:none}.language-label select{width:80px;max-width:80px;font-size:.8125rem}.mobile-search-link{display:block;padding:13px 0;font-size:.87rem;font-weight:600}.header-tools{gap:10px}.header-tools>.language-label{display:block}.wordmark{gap:9px}}
@media(max-width:390px){.language-label select{width:73px;max-width:73px}.header-tools{gap:8px}}
@media(max-width:760px){.calendar-controls{gap:18px}.calendar-controls h2{order:-1;flex-basis:100%;font-size:2rem}.calendar-controls .control{font-size:.8125rem;padding:7px 10px}.calendar-event{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.calendar-weekday{padding:7px 5px}}
@media(max-width:900px){.archive-filters,.meeting-filters{grid-template-columns:1fr 1fr}.archive-record{grid-template-columns:1fr;gap:15px}.archive-record .document-actions{justify-content:flex-start;max-width:none}.forms-directory{grid-template-columns:1fr}}
@media(max-width:760px){.archive-filters,.meeting-filters{gap:15px}.archive-filters label:first-child{grid-column:1/-1}.archive-record{padding-block:20px}.archive-record h2{font-size:1rem}.document-actions{gap:12px 16px}.archive-page{padding-top:28px}.pagination{gap:18px}.document-frame{min-height:420px;height:70vh}.mobile-menu .icon{width:17px;height:17px}.long-title{font-size:1.5rem!important}}
@media(min-width:1350px){.hero-grid{column-gap:75px}}
@media(max-width:1100px){.main-nav{gap:27px}.hero-grid{gap:35px}.hero-copy h1{font-size:5rem}.service-bar{grid-template-columns:repeat(2,1fr)}.service-bar .service-link{border-bottom:1px solid var(--line)}.service-bar .service-link:nth-child(2){border-right:0}.home-services{gap:40px;grid-template-columns:1fr 1.6fr}.service-directory{column-gap:20px}.city-records{gap:40px}.footer-grid{gap:26px}.city-hall-strip{flex-wrap:wrap}.page-layout{gap:30px;grid-template-columns:210px minmax(0,1fr)}.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header-top{min-height:85px;gap:15px}.wordmark b{font-size:2.1rem}.wordmark small{font-size:.8125rem}.wordmark .city-seal{width:44px;height:44px}.header-tools{gap:12px}.header-tools>a:first-child{display:none}.header-search{height:36px;width:36px}.mobile-menu{display:flex;gap:8px;font-size:.8125rem;align-items:center}.mobile-menu span{font-size:1rem}.nav-band{border-top:0}.main-nav{display:none;padding-block:12px;align-items:stretch;gap:0;flex-direction:column}.main-nav.is-open{display:flex}.nav-toggle{width:100%;justify-content:space-between;padding-block:14px}.nav-panel{position:static;box-shadow:none;width:100%;max-height:none;background:var(--tint);padding:8px;margin-bottom:8px;border-radius:8px}.nav-services{margin:0;padding:14px 0}.home-hero{padding-block:31px 55px}.hero-grid{grid-template-columns:1fr;gap:30px}.hero-copy{padding-block:4px}.hero-copy h1{font-size:4.5rem;line-height:.96;margin-bottom:20px}.hero-copy>p{font-size:.95rem;margin-bottom:22px}.hero-photo img{border-radius:14px 14px 48px 14px}.service-bar{margin-top:-24px}.service-bar .service-link{padding:20px 16px;gap:11px}.service-link strong{font-size:.875rem}.service-link small{font-size:.8125rem}.service-bar .service-link>.icon:first-child{width:23px;height:23px}.city-hall-strip{font-size:.8125rem;gap:13px;padding-block:24px;justify-content:flex-start}.city-hall-strip span{width:100%}.home-services{grid-template-columns:1fr;padding-block:47px;gap:24px}.section-opening h2{font-size:3rem}.section-opening p{max-width:42ch;margin-bottom:20px}.service-directory{grid-template-columns:1fr}.service-directory .service-link{padding-block:18px}.service-directory .service-link strong{font-size:.9rem}.service-directory .service-link small{font-size:.8125rem}.news-section{padding-block:40px}.section-heading{margin-bottom:24px;gap:16px}.section-heading h2{font-size:2.3rem}.section-heading .text-link{font-size:.8125rem;white-space:nowrap}.news-grid{grid-template-columns:1fr;gap:30px}.news-grid article{padding-top:18px}.news-grid p{margin-bottom:15px}.city-records{grid-template-columns:1fr;gap:35px;padding-block:45px}.participate{padding:32px}.participate h2{font-size:3rem}.help-strip .wrap{flex-wrap:wrap;justify-content:flex-start;gap:15px 25px}.help-strip .wrap>div{width:100%}.help-strip .wrap>a:not(.text-link){font-size:1.8rem}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 24px}.footer-place{grid-column:1/-1}.footer-grid p{margin-top:16px}.footer-bottom{align-items:flex-start;flex-direction:column;font-size:.8125rem;gap:15px}.footer-bottom>div{gap:12px 20px}.page-title{padding-block:24px 30px}.breadcrumb{margin-bottom:23px;font-size:.8125rem;gap:7px}.page-title h1{font-size:3.2rem;max-width:22ch}.page-intro{font-size:.9rem}.page-layout{display:flex;flex-direction:column;gap:28px;padding-block:28px 45px}.page-layout.full-width{max-width:none}.section-nav{position:static;width:100%}.section-nav summary{font-size:.85rem;padding:14px 16px;border:1px solid var(--line);border-radius:8px;list-style:revert;cursor:pointer}.section-nav nav{max-height:260px;font-size:.8125rem}.page-content{width:100%;font-size:1rem}.page-content h2{font-size:1.9rem}.content-grid,.cols-2,.cols-3{grid-template-columns:1fr}.content-flex{flex-wrap:wrap}.content-panel{padding:18px}.page-content table{min-width:520px}.page-content .content-grid:has(>article){display:block}.sitemap-groups{columns:1;padding-block:30px 45px}.form-review dl{grid-template-columns:1fr;gap:5px}.form-review dd{margin-bottom:12px}.calendar-grid{font-size:.8125rem}.calendar-day{min-height:65px;padding:5px}.calendar-event{font-size:.8125rem;padding:3px}.search-layout{padding-block:25px 45px}}
@media(max-width:390px){.wrap{width:calc(100% - 32px)}.wordmark small{max-width:160px}.wordmark b{font-size:1.9rem}.wordmark .city-seal{width:40px;height:40px}.header-tools{gap:8px}.mobile-menu{padding:7px 10px}.hero-copy h1{font-size:4.1rem}.service-bar .service-link{padding-inline:12px;gap:8px}.service-link strong{font-size:.875rem}.service-bar .service-link>.icon:first-child{width:20px;height:20px}.footer-grid{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{.site-header,.site-footer,.help-strip,.section-nav,.city-search,.control{display:none!important}.wrap{width:100%;max-width:none}.page-title{background:none;padding:0}.page-layout{display:block;padding:20px 0}.page-content{color:#000}.page-content a{color:#000;text-decoration:underline}.page-content h2{break-after:avoid}.page-content table{font-size:10pt}body{font-size:11pt}.page-content img{max-height:300px}}

/* One service tray changes order with the resident's available screen space. */
.home-hero .hero-grid{row-gap:0}
.hero-grid>.service-bar{grid-column:1/-1;margin:24px 0 0;width:100%}
@media(max-width:760px){
  .home-hero{padding-block:31px 34px}
  .hero-copy{order:0}
  .hero-grid>.service-bar{order:1;margin-top:20px}
  .hero-photo{order:2;margin-top:24px}
}

@media(max-width:360px){.header-top{gap:8px}.wordmark{gap:7px}.wordmark b{font-size:1.65rem}.wordmark .city-seal{width:36px;height:36px}.language-label select{width:66px;max-width:66px}.header-tools{gap:6px}.mobile-menu{padding-inline:8px}}

/* Shared resident-facing details: readable metadata, aligned navigation and clear form actions. */
.external-icon{width:15px!important;height:15px!important;margin:0!important;vertical-align:-.12em;flex-shrink:0}
.hero-meta a,.document-actions>a{display:inline-flex;align-items:center;gap:8px}
.hero-meta a{min-height:32px}
.search-page .page-title .wrap{max-width:900px}
.search-help{font-size:.875rem;color:var(--muted);margin-bottom:24px}
.search-help summary{cursor:pointer;min-height:44px;display:list-item;align-content:center;border-radius:8px}
.search-help p{margin:10px 0 0;max-width:72ch}
.search-start{padding-block:12px 28px}
.search-start h2{font-family:var(--body);font-size:1.12rem;font-weight:600;line-height:1.4;letter-spacing:0}
.search-start-links{display:flex;flex-wrap:wrap;gap:8px 24px;list-style:none;padding:0;margin:14px 0}
.search-start-links a{display:inline-flex;align-items:center;min-height:44px}
.search-start p{font-size:.875rem;color:var(--muted)}
.search-result h2{font-size:1.125rem;line-height:1.4}
.search-result p{font-size:1rem;line-height:1.75}
.search-result small{font-size:.8125rem;margin-bottom:9px}
.search-result{padding-block:26px}
.facility-heading{display:flex;align-items:flex-start;gap:12px;width:100%}
.facility-heading>.icon{margin-top:5px}
.page-content .facility-heading h2{font-size:1.9rem;margin:0;flex:1;min-width:0}
.content-flex.icon-text>span{min-width:0;flex:1}
.destination .content-flex.vertical{gap:14px}
.page-content .on-page-nav li{font-size:.875rem}
.page-content .on-page-nav a{display:inline-flex;min-height:32px;align-items:center}
.page-content .on-page-nav ul{gap:4px 24px}
.document-page .page-title .wrap,.document-viewer{max-width:1100px}
.document-back{display:inline-flex;margin-bottom:24px}
.document-viewer .document-actions{margin-block:20px}
.document-viewer>p{font-size:.9375rem}
.document-status{margin-bottom:0!important}
.document-actions .button-link,.archive-filters .control{font-size:.875rem}
.archive-record h2 a:focus-visible{outline-offset:5px}
.page-content form button[type=submit]{background:var(--brand);color:var(--white);border-color:var(--brand);padding:12px 20px;font-size:.9375rem}
.page-content form button[type=submit]:hover{background:var(--brand-hover);color:var(--white)}
.page-content form input[type=file]{display:block;width:100%;margin-top:10px;padding:8px;border:1px solid var(--field-border);border-radius:8px;background:var(--white);font-size:.875rem}
.page-content form input[type=file]::file-selector-button{border:0;border-radius:5px;background:var(--tint);color:var(--brand);font:inherit;padding:8px 12px;margin-right:12px;cursor:pointer}
.page-content form .form-preview-note{font-size:.875rem;line-height:1.7}
.form-review h2{margin:0 0 16px}
@media(max-width:900px){.page-layout{display:flex;flex-direction:column;gap:28px}.section-nav{position:static;width:100%}.section-nav summary{font-size:.9375rem;padding:14px 16px;border:1px solid var(--field-border);border-radius:8px;list-style:revert;cursor:pointer}.section-nav nav{max-height:260px;font-size:.875rem}.page-content{width:100%}.page-content .field,.page-content input,.page-content input:not([type=checkbox]):not([type=radio]),.page-content select,.page-content textarea,.city-search input,.archive-filters .field{font-size:1rem}.page-content .facility-heading h2{font-size:1.7rem}}

.search-suggestions a{min-height:28px;display:inline-flex;align-items:center}.section-nav a{min-height:44px;flex-shrink:0}
.document-preview{margin-top:28px;border-top:1px solid var(--line);padding-top:20px}
.document-preview summary{cursor:pointer;font-size:.9375rem;font-weight:600;min-height:44px;align-content:center;border-radius:8px}
.document-preview>p{font-size:.875rem;margin:12px 0 20px}

.service-choice{flex-direction:column;align-items:flex-start!important;justify-content:flex-start!important;text-align:left;gap:8px!important;padding:20px!important;height:100%}
.service-choice strong{font-size:1rem;line-height:1.4}.service-choice span{font-size:.875rem;font-weight:400;line-height:1.65;color:var(--muted)}
.service-choice[aria-pressed=true] span{color:var(--on-brand-muted)}
.service-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}
.service-choices .service-choice{width:100%;margin:0;min-width:0}
.page-content form label.email-updates-choice{align-items:flex-start}
.email-updates-choice>span>span{display:block}
.email-updates-choice>span>span+span{margin-top:4px}
.email-updates-choice input{margin-top:3px}
@media(max-width:760px){.service-choices{grid-template-columns:1fr}}
.utility-customer,.utility-panel{margin-top:32px;scroll-margin-top:24px}
.utility-customer h2{font-size:1.9rem}.utility-panel form{max-width:850px}
.utility-selection-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;max-width:520px;padding-block:12px;border-bottom:1px solid var(--line);margin-bottom:12px}
.utility-selection-value{font-weight:600;min-width:0;overflow-wrap:anywhere}
.utility-selection-row .control{flex-shrink:0}
.availability-handoff h3{margin:0 0 10px}.availability-handoff p{margin-bottom:18px;font-size:.9375rem}
.availability-handoff .button-link{white-space:normal;text-align:left;justify-content:flex-start}

/* People and files retain their own layout instead of inheriting generic cards. */
.page-content .official-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 32px;list-style:none;padding:0;margin:0}
.page-content .official-card{margin:0;padding-block:24px;border-top:1px solid var(--line);min-width:0}
.official-header{display:flex;align-items:center;gap:20px;margin-bottom:18px}
.official-header>div{min-width:0;flex:1}
.official-portrait-frame{display:block;width:96px;height:96px;flex:0 0 96px;overflow:hidden;border-radius:8px}
.page-content .official-portrait{width:96px;height:96px;flex:0 0 96px;object-fit:cover;margin:0;border-radius:8px}
.page-content .portrait-crop-top .official-portrait{width:110px;height:110px;max-width:none;border-radius:0;transform:translate(-2px,-13px)}
.page-content .official-name{font-family:var(--body);font-size:1.125rem;line-height:1.4;font-weight:700;margin:0}
.official-role{font-size:.875rem;line-height:1.5;color:var(--brand);margin:5px 0 0}
.official-contact{display:flex;flex-direction:column;gap:10px;font-size:1rem;line-height:1.5}
.official-contact>a,.official-term{display:flex;align-items:flex-start;gap:9px}
.official-contact>a{min-height:28px}
.official-contact>a>span{min-width:0;overflow-wrap:anywhere}
.official-contact .icon{flex-shrink:0;margin:3px 0 0}
.official-term{font-size:.875rem}
.page-content .official-assignments h3,.page-content .official-assignments h4{font-family:var(--body);font-size:.875rem;line-height:1.5;color:var(--ink);margin:20px 0 10px}
.official-assignments ul{padding-left:18px;margin:0;font-size:1rem;line-height:1.7}
.page-content .official-section-title{margin:44px 0 20px;font-size:2rem}
.page-content .destination-list{list-style:none;padding:0}
.page-content .destination-list>li{margin-left:0}
.page-content .document-list{display:grid;grid-template-columns:1fr;gap:12px;list-style:none;padding:0;margin:24px 0}
.document-list>li{margin:0}
.page-content .document-link{display:flex;align-items:center;gap:14px;padding:16px;font-size:1rem;line-height:1.6}
.document-link>div:has(>svg){flex:0 0 auto}
.document-link>div:not(:has(>svg)){flex:1;min-width:0}
.document-link .muted{font-size:.8125rem;gap:10px}
.page-content .document-link .icon{flex-shrink:0;margin:0}
.page-content .request-steps{min-width:0;font-size:1rem}
.request-steps caption{text-align:left;white-space:normal;font-size:1rem;line-height:1.5;padding-bottom:16px}
.request-steps th:first-child{width:30%}
.page-content .request-steps-container{border:0;border-radius:0}
.page-content .service-hub-heading{margin:0 0 14px}
.page-content .service-hub-heading>.icon{flex-shrink:0}
.council-description{font-size:1rem;line-height:1.7;margin:0 0 16px;color:var(--muted)}
.department-entry{padding-block:28px;border-top:1px solid var(--line)}
.department-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:start}
.department-title{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.department-title>.icon{flex-shrink:0;margin:0}
.page-content .department-name{font-size:2rem;margin:0;min-width:0}
.department-actions{display:flex;gap:10px;flex-wrap:wrap}
.department-actions a{font-size:.875rem;gap:8px;white-space:nowrap}
.department-header .content-flex{font-size:1rem}
.department-body{margin-top:20px}
.department-body>p{margin-bottom:14px}
.page-content .department-responsibilities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 32px;padding-left:20px;margin:0}
.department-responsibilities>li{margin:0}
.content-with-aside{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:28px;align-items:start}
.content-with-aside>*,.content-with-aside>aside{min-width:0;margin-top:0}
.event-summary>a:first-child{display:block;width:100%}
.page-content .event-summary img{width:100%;height:220px;max-height:220px;object-fit:contain;margin:0}
.page-content .contact-list{list-style:none;padding:0;margin:0;display:grid;gap:16px}
.contact-list>li{display:flex;align-items:flex-start;gap:10px;margin:0;font-size:1rem;line-height:1.6}
.contact-list>li>.icon{flex:0 0 19px;margin:3px 0 0}
.contact-list>li>a,.contact-list>li>span{min-width:0;overflow-wrap:normal;word-break:normal}
.page-content .link-ending{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.page-content .link-ending>.icon{flex-shrink:0;margin:0}
.staff-scope{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 16px;padding-bottom:16px;border-bottom:1px solid var(--line);color:var(--brand);font-size:1rem;font-weight:600}
.page-content .staff-scope button{font-size:.875rem;flex-shrink:0}
.page-content .destination-inline{display:flex;align-items:flex-start;gap:14px;height:auto}
.destination-inline>div:first-child{flex:0 0 19px;margin-top:3px}
.destination-inline>div:first-child>.icon{margin:0;flex-shrink:0}
.destination-inline>div:nth-child(2){flex:1;min-width:0}
.page-content .link-group-title{font-family:var(--body);font-size:1.125rem;font-weight:700;line-height:1.5;letter-spacing:0;margin:32px 0 14px}
.story-list{display:block}
.page-content .story-record{display:block;padding:24px 0;border-top:1px solid var(--line);color:var(--ink);text-decoration:none}
.page-content .story-record.has-thumbnail{display:grid;grid-template-columns:160px minmax(0,1fr);gap:24px;align-items:start}
.story-details{min-width:0}
.page-content .story-image img{width:100%;height:124px;object-fit:contain;border-radius:8px;margin:0}
.page-content .story-record h2{font-family:var(--body);font-size:1.125rem;font-weight:600;line-height:1.5;letter-spacing:0;margin:12px 0 10px;max-width:72ch;text-wrap:pretty}
.story-record:hover h2{color:var(--brand);text-decoration:underline;text-underline-offset:3px}
.story-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:.875rem;line-height:1.6}
.story-meta>span.muted{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.story-meta .icon,.story-action>.icon{flex-shrink:0;margin:0}
.page-content .story-excerpt{font-size:1rem;line-height:1.7;margin:0 0 14px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.story-action{display:inline-flex;align-items:center;gap:6px;font-size:.875rem;font-weight:600;line-height:1.6;color:var(--brand)}
.page-content .story-record .notice-title{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.news-categories{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}
.calendar-scroll{border:0;border-radius:0;min-width:0}
.calendar-scroll .calendar-grid{min-width:840px}
@media(max-width:760px){.page-content .story-record.has-thumbnail{grid-template-columns:96px minmax(0,1fr);gap:16px}.page-content .story-image img{height:96px}.news-categories{flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}.news-categories>button{flex:0 0 auto}.calendar-scroll .calendar-event{display:block;-webkit-line-clamp:unset;overflow:visible}.calendar-scroll .calendar-day{min-height:100px;padding:10px}}
.page-content .compact-table{min-width:0;table-layout:fixed;font-size:1rem}
.compact-table th,.compact-table td{overflow-wrap:anywhere}
.compact-table tbody th,.wide-table tbody th{font-size:1rem;font-weight:600;background:transparent;border-bottom:1px solid var(--line);vertical-align:top}
.compact-table caption{text-align:left;font-size:.875rem;line-height:1.6;color:var(--muted);padding:0 0 14px;white-space:normal}
.page-content .compact-table-region{border:0;border-radius:0}
.page-content .wide-table{min-width:760px;table-layout:fixed;font-size:1rem}
.wide-table thead th:first-child{width:90px}
.wide-table thead th:nth-child(2){width:230px}
.wide-table thead th:nth-child(3){width:140px}
.table-scroll-help{font-size:.875rem;line-height:1.6;color:var(--muted);margin:16px 0 12px}
@media(max-width:1100px){.content-with-aside{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){.department-header{grid-template-columns:minmax(0,1fr);gap:16px}.department-title{align-items:flex-start}.department-title>.icon{margin-top:7px}.page-content .department-responsibilities{grid-template-columns:minmax(0,1fr)}.compact-table th,.compact-table td{padding:12px 10px}}
@media(max-width:760px){.page-content .official-list{grid-template-columns:1fr;gap:0}.official-header{gap:16px}}

/* Applications and public records keep their source content in readable groups. */
.application-back{display:inline-flex;align-items:center;gap:8px;margin-bottom:20px}
.page-content .application-back>.icon{margin:0}
.application-return-address{margin:0 0 24px}
.application-return-address p{margin:0;line-height:1.7}
.application-return-address p:first-child{font-size:.875rem;color:var(--muted);margin-bottom:8px}
.page-content .application-form fieldset{min-inline-size:0;margin:32px 0}
.page-content .application-form legend{font-size:1.12rem;line-height:1.35;margin-bottom:0;padding:0}
.application-form fieldset>.content-grid,.application-form fieldset>.stack{margin-top:16px}
.application-form fieldset>.content-grid{margin-bottom:0;row-gap:24px}
.application-form label,.reservation-form label{font-size:.875rem;margin-block:0 8px}
.application-form label:has(input[type=checkbox]),.application-form label:has(input[type=radio]),.reservation-form label:has(input[type=checkbox]){min-height:44px;padding-block:10px;align-items:flex-start;margin:0}
.application-form label>input[type=checkbox],.application-form label>input[type=radio],.reservation-form label>input[type=checkbox]{margin-top:2px}
.application-form .form-review dl,.reservation-form .form-review dl{font-size:1rem;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:12px 24px}
.application-form .form-review dd,.reservation-form .form-review dd{min-width:0}
.facility-layout{display:block}
.facility-overview>div:first-child>.heading-group{margin-top:0}
.facility-facts{display:flex;flex-wrap:wrap;gap:24px 40px;margin:24px 0}
.facility-facts>.content-panel{background:none;border-radius:0;padding:0;margin:0;align-items:flex-start;gap:12px}
.page-content .facility-facts>.content-panel>.icon{margin:4px 0 0}
.facility-amenities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;list-style:none;padding:0;margin:16px 0 24px}
.page-content .facility-amenities>li{display:flex;align-items:flex-start;gap:10px;margin:0}
.page-content .facility-amenities .icon{flex-shrink:0;margin:4px 0 0}
.facility-fees{border-top:1px solid var(--line);padding-top:24px;margin-top:32px}
.page-content .facility-fees h3{margin:0 0 12px}
.reservation-section{border-top:1px solid var(--line);margin-top:40px;padding-top:32px}
.page-content .reservation-section>h2{display:flex;align-items:center;gap:10px;margin:0 0 24px}
.page-content .reservation-section>h2>.icon{margin:0}
.reservation-section>.availability-handoff{max-width:850px;margin:0 0 24px}
.reservation-section>.availability-handoff h3{margin:0 0 12px}
.reservation-form>.form-preview-note{background:none;padding:0;margin:0 0 24px;border-radius:0;max-width:72ch}
.reservation-schedule{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:end}
.reservation-schedule>.content-grid{margin:0}
.reservation-form>.content-panel{padding:0;background:none;border-radius:0}
.page-content .record-files{list-style:none;padding:0;margin:0}
.record-files>li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 24px;align-items:start;padding:18px 0;margin:0;border-bottom:1px solid var(--line)}
.record-files>li:first-child{border-top:1px solid var(--line)}
.record-file{display:flex;align-items:flex-start;gap:10px;min-width:0;font-size:1rem;line-height:1.65}
.page-content .record-file>.icon{flex-shrink:0;margin:4px 0 0}
.record-file-name{min-width:0}
.record-file-name>span.muted{display:block;font-size:.875rem;margin-top:4px}
.record-reader{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem;line-height:1.5;padding-block:8px}
.meeting-detail{max-width:960px}
.meeting-detail>.content-panel{margin:16px 0 32px}
.meeting-detail .content-flex{gap:16px 24px}
.meeting-detail .content-flex+.content-flex{margin-top:16px}
.meeting-detail .content-flex>span:has(>.icon){display:inline-flex;align-items:flex-start;gap:8px}
.meeting-detail .content-flex>span>.icon{flex-shrink:0;margin:4px 0 0}
.page-content .meeting-back{margin-top:32px}
.meeting-empty{margin:16px 0 32px;font-size:1rem}
.bid-record{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;padding:28px 0;border-top:1px solid var(--line)}
.page-content .bid-record h2{font-family:var(--body);font-size:1.12rem;line-height:1.5;letter-spacing:0;margin:0 0 20px}
.bid-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0}
.bid-dates dt{font-size:.8125rem;font-weight:600;color:var(--muted);margin-bottom:4px}
.bid-dates dd{font-size:.875rem;line-height:1.7;font-variant-numeric:tabular-nums;overflow-wrap:normal;margin:0}
.bid-record .record-files>li{padding-block:16px}
.bid-record .record-files>li:first-child{border-top:0;padding-top:0}
.bid-record .record-files>li:last-child{border-bottom:0;padding-bottom:0}
@media(max-width:900px){.bid-record{grid-template-columns:minmax(0,1fr);gap:20px}.bid-record .record-files>li:first-child{border-top:1px solid var(--line);padding-top:16px}}
@media(max-width:760px){.facility-amenities,.reservation-schedule{grid-template-columns:minmax(0,1fr)}.facility-facts{gap:20px 32px}.record-files>li{grid-template-columns:minmax(0,1fr);gap:4px}.record-reader{justify-self:start}.application-form .form-review dl,.reservation-form .form-review dl{grid-template-columns:minmax(0,1fr);gap:5px}.bid-record{padding-block:24px}.page-content .bid-record h2{margin-bottom:16px}}

.civic-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;margin:20px 0 32px}
.civic-destination{display:flex;flex-direction:column;min-width:0;padding:24px 0;border-top:1px solid var(--line);color:var(--ink);text-decoration:none}
.civic-destination .content-flex.vertical{display:block}
.page-content .civic-destination .heading-group{margin:0 0 12px}
.page-content .civic-destination h2,.page-content .civic-destination h3{font-family:var(--body);font-size:1.12rem;line-height:1.35;letter-spacing:0;margin:0 0 12px}
.page-content .civic-destination .heading-group h3{margin:0}
.civic-destination p{font-size:1rem;color:var(--muted);margin:0 0 12px;line-height:1.65}
.civic-destination>span:not(.sr-only),.civic-destination>.content-flex:not(.vertical){display:flex;align-items:center;gap:8px;font-size:.875rem;font-weight:600;margin-top:auto}
.page-content .civic-destination>.content-flex>.icon,.page-content .civic-destination>span>.icon{margin:0}
.civic-destination:hover h2,.civic-destination:hover h3{text-decoration:underline;text-underline-offset:4px}
.community-intro{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;align-items:center;margin-bottom:32px}
.community-intro figure{margin:0}
.page-content .community-intro img{display:block;width:100%;height:auto;margin:0}
.community-intro p{margin:0}
.resource-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;margin:24px 0}
.resource-option{border-top:1px solid var(--line);padding:24px 0;min-width:0}
.page-content .resource-option .heading-group{margin:0 0 12px}
.page-content .resource-option h3{font-size:1.12rem;line-height:1.35;margin:0}
.resource-option p{margin:0 0 12px}
.park-list{margin-top:32px}
.park-record{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;border-top:1px solid var(--line);padding:28px 0}
.park-image{position:relative;align-self:start}
.page-content .park-image img{display:block;width:100%;height:auto;max-height:180px;object-fit:contain;object-position:left center;margin:0}
.park-map-key{position:absolute;top:8px;left:8px;display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;border-radius:20px;background:var(--brand);color:var(--white);font-size:.8125rem;font-weight:600}
.page-content .park-copy .heading-group{margin:0 0 8px}
.page-content .park-title{font-family:var(--body);font-size:1.12rem;line-height:1.35;letter-spacing:0;margin:0}
.park-address{display:flex;align-items:flex-start;gap:8px;font-size:.875rem;margin:0 0 12px}
.page-content .park-address>.icon{flex-shrink:0;margin:3px 0 0}
.park-copy>p{margin:12px 0 16px}
.park-copy [data-disclosure-toggle][aria-expanded=true]>.icon{transform:rotate(180deg)}
.park-details{margin:16px 0 20px}
.page-content .park-details h3{font-size:1rem;margin:24px 0 12px}
.page-content .park-resource-links{list-style:none;padding:0;margin:16px 0}
.park-resource-links a{display:inline-flex;align-items:flex-start;gap:8px;min-height:44px}
.page-content .park-resource-links a>.icon{flex-shrink:0;margin:4px 0 0}
.park-resource-links a>span>span{display:block}
.park-resource-links .muted{font-size:.875rem;margin-top:4px}
@media(max-width:900px){.park-record{grid-template-columns:180px minmax(0,1fr)}}
@media(max-width:760px){.civic-directory,.community-intro,.resource-options,.park-record{grid-template-columns:minmax(0,1fr)}.community-intro figure{max-width:240px}.park-record{gap:20px;padding-block:24px}.page-content .park-image img{max-height:220px}}

.civic-destination.civic-inline{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:start}
.page-content .civic-inline>.content-flex{margin:3px 0 0}
.page-content .civic-inline>.content-flex>.icon{margin:0}
.page-content .civic-inline h3>.icon{width:17px;height:17px;margin:0 0 0 6px}
.civic-inline p{margin-bottom:0}
.page-content .on-page-nav:has([data-page-contents]){padding:12px 24px}
.on-page-nav [data-page-contents]>summary{min-height:44px;display:list-item;align-content:center;cursor:pointer;font-weight:700;font-size:1rem}
.on-page-nav [data-page-contents][open]>summary{margin-bottom:12px}
.page-content .service-document-list{margin:16px 0 32px}
.service-document-list li{margin:0}
.page-content .service-document-list .destination{display:flex;align-items:flex-start;gap:10px;padding:16px 0;border-top:1px solid var(--line);border-radius:0;background:none;height:auto;font-size:1rem;line-height:1.65}
.page-content .service-document-list .destination:hover{color:var(--brand);text-decoration:underline;text-underline-offset:4px}
.page-content .service-document-list .destination>.icon{margin:3px 0 0}
.page-content .service-table-region{padding:0;background:none;border-radius:0;margin:24px 0}
.license-resources{margin:32px 0}
.license-forms{padding:24px 0;border-top:1px solid var(--line)}
.page-content .license-forms h2{font-family:var(--body);font-size:1.12rem;line-height:1.35;letter-spacing:0;margin:0 0 12px}
.license-forms p{margin:0 0 12px}
.license-reference{display:flex;align-items:center;min-height:44px;padding:12px 0;border-top:1px solid var(--line)}
.license-tax-note{display:flex;align-items:flex-start;gap:12px;margin:24px 0}
.page-content .license-tax-note>.icon{margin:4px 0 0}
@media(max-width:900px){.page-content .on-page-nav:has([data-page-contents]){padding:8px 16px}.page-content .on-page-nav [data-page-contents] ul{display:grid;grid-template-columns:minmax(0,1fr);gap:4px}.page-content .on-page-nav [data-page-contents] a{min-height:44px;line-height:1.5}}
.page-content .service-reference-links{list-style:none;padding:0;margin:16px 0 24px}
.service-reference-links li{margin:0;border-top:1px solid var(--line)}
.service-reference-links a{display:flex;align-items:center;min-height:44px;padding:12px 0}
.page-content .license-fees th:first-child{width:44%}
.page-content .license-fees th:nth-child(2){width:22%}
.page-content .license-fees th,.page-content .license-fees td{overflow-wrap:normal}
.page-content .license-fees td:nth-child(2){white-space:nowrap}
