.calendar-date{display:flex;align-items:center;justify-content:space-between;background:#f5f8f6;border-radius:12px;padding:10px 12px;margin-bottom:8px}.calendar-date button{width:34px;height:34px;border:0;border-radius:9px;background:#fff;color:#0b6b47;font-size:1.2rem;cursor:pointer;box-shadow:0 2px 8px rgba(5,46,34,.07)}.calendar-date strong{font:700 .86rem Manrope}.calendar-date span{font-weight:500;color:#62716a}
.events{display:flex;flex-direction:column}.event{display:grid;grid-template-columns:45px minmax(0,1fr);align-items:center;gap:11px;padding:10px 0;border-bottom:1px solid #dfe8e3}.event time{display:flex;flex-direction:column;align-items:center;background:#e8f4ee;color:#09553a;border-radius:10px;padding:7px 5px}.event time b{font:800 .92rem Manrope;line-height:1}.event time span{font-size:.54rem;font-weight:800;margin-top:2px}.event>div{display:flex;min-width:0;flex-direction:column}.event strong{font-size:.74rem;line-height:1.3}.event small{color:#62716a;font-size:.62rem;margin-top:3px}.sync-note{display:flex;gap:10px;align-items:center;padding:11px;margin-top:12px;border-radius:11px;background:#eef7f3;color:#0b6b47}.sync-note svg{width:23px;height:23px;flex:0 0 auto}.sync-note span{display:flex;flex-direction:column}.sync-note b{font-size:.68rem}.sync-note small{font-size:.59rem;color:#62716a}
.side-stack{display:grid;gap:18px}.transparency-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.transparency-grid a{text-align:center;padding:12px 6px;border:1px solid #dfe8e3;border-radius:12px;transition:.2s;background:#fff}.transparency-grid a:hover{border-color:#8cc2aa;background:#f5f8f6;transform:translateY(-2px)}.transparency-grid span{display:grid;place-items:center;height:36px;color:#0b6b47}.transparency-grid svg{width:28px;height:28px}.transparency-grid strong,.transparency-grid small{display:block}.transparency-grid strong{font-size:.64rem;margin-top:5px;line-height:1.25}.transparency-grid small{font-size:.55rem;color:#62716a;margin-top:3px}
.program-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.program-grid a{text-align:center;padding:7px 3px;border-radius:11px;transition:.2s}.program-grid a:hover{background:#f5f8f6;transform:translateY(-2px)}.program-grid span{display:grid;place-items:center;width:46px;height:46px;margin:auto;border-radius:50%;background:#e8f4ee;color:#0b6b47}.program-grid a:nth-child(2n) span{background:#eef2ff;color:#315eb4}.program-grid a:nth-child(3n) span{background:#fff4e6;color:#d58219}.program-grid svg{width:25px;height:25px}.program-grid strong,.program-grid small{display:block}.program-grid strong{font-size:.59rem;margin-top:7px;text-transform:uppercase;line-height:1.2}.program-grid small{font-size:.51rem;color:#62716a;line-height:1.25;margin-top:3px}
.quick-info{background:#fff;border-top:1px solid #dfe8e3;border-bottom:1px solid #dfe8e3}.quick-info-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.quick-info-grid>a,.quick-info-grid>div{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:82px;padding:15px 18px;border-right:1px solid #dfe8e3}.quick-info-grid>*:first-child{border-left:1px solid #dfe8e3}.quick-info-grid svg{width:23px;height:23px;color:#0b6b47}.quick-info-grid span{display:flex;min-width:0;flex-direction:column}.quick-info-grid strong{font-size:.67rem;text-transform:uppercase;color:#073f2c;line-height:1.25}.quick-info-grid small{font-size:.57rem;color:#62716a;margin-top:3px}.quick-info-grid b{color:#0b6b47}.site-footer{background:#061a33;color:#bed0df;font-size:.72rem}.footer-inner{min-height:64px;display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-inner span:last-child{color:#f0c65e;font-weight:700}
@media(max-width:1180px){.dashboard-grid{grid-template-columns:1fr 1fr}.side-stack{grid-column:1/-1;grid-template-columns:1fr 1fr}.quick-info-grid{grid-template-columns:repeat(3,1fr)}.quick-info-grid>*:nth-child(n+4){border-top:1px solid #dfe8e3}}@media(max-width:900px){.dashboard-grid{grid-template-columns:1fr}.side-stack{grid-column:auto;grid-template-columns:1fr}.quick-info-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.panel{padding:17px}.panel-header{align-items:flex-start}.transparency-grid{grid-template-columns:repeat(2,1fr)}.program-grid{grid-template-columns:repeat(3,1fr);row-gap:14px}.quick-info-grid{grid-template-columns:1fr}.quick-info-grid>a,.quick-info-grid>div{border-left:1px solid #dfe8e3;border-top:1px solid #dfe8e3}.footer-inner{padding-block:18px;flex-direction:column;text-align:center}}

.updates-header-actions{display:flex;align-items:center}.updates-header-actions .updates-view-all{display:inline-flex;align-items:center;min-height:40px;padding:0 0 0 16px;border:1px solid #075f42;border-radius:6px;background:#076b49;color:#fff;font-size:.7rem;font-weight:800;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap;box-shadow:0 3px 8px rgba(4,65,44,.14);transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.updates-header-actions .updates-view-all span{display:grid;place-items:center;align-self:stretch;width:40px;margin-left:14px;border-left:1px solid rgba(255,255,255,.22);font-size:.92rem;line-height:1;transition:transform .16s ease}.updates-header-actions .updates-view-all:hover{background:#055c3e;border-color:#044c34;box-shadow:0 5px 12px rgba(4,65,44,.18);transform:translateY(-1px)}.updates-header-actions .updates-view-all:hover span{transform:translateX(2px)}.updates-header-actions .updates-view-all:focus-visible{outline:3px solid rgba(245,184,46,.48);outline-offset:3px}.updates-header-actions .updates-view-all:active{transform:none;box-shadow:0 2px 5px rgba(4,65,44,.16)}
@media(max-width:600px){.updates-portal-header{flex-direction:column}.updates-header-actions{width:100%;flex-wrap:wrap}.updates-header-actions>a{flex:1;text-align:center}.updates-header-actions .updates-view-all{min-width:160px}}

/* Uploaded municipal update repository. */
.updates-column--official .official-update-list{display:grid;gap:7px;max-height:480px;padding:2px;overflow-y:auto}.updates-column--official .official-update-item{grid-template-columns:72px minmax(0,1fr) 18px;gap:11px;min-height:70px;padding:8px;border:1px solid #e0e8e4;border-radius:8px;background:#fff;box-shadow:0 2px 7px rgba(5,46,34,.04);transition:none}.updates-column--official .official-update-item:first-child,.updates-column--official .official-update-item:last-child{padding:8px;border-bottom:1px solid #e0e8e4}.updates-column--official .official-update-item:hover,.updates-column--official .official-update-item:focus-visible{background:#f7faf8;border-color:#bfd4ca;outline:2px solid transparent}.updates-column--official .official-update-image{width:72px;height:54px;border-radius:6px}.updates-column--official .official-update-item:hover .official-update-image img,.updates-column--official .official-update-item:hover .official-update-arrow{transform:none}.updates-column--official .official-update-meta{margin-bottom:3px}.updates-column--official .official-update-meta time{font-size:9px}.updates-column--official .official-update-content>strong{font-size:12px;line-height:1.25}.updates-column--official .official-update-content>small{overflow:hidden;margin-top:2px;font-size:10px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.updates-column--official .official-update-arrow{font-size:16px}.updates-repository-empty{display:grid;gap:5px;padding:18px;border:1px solid #dfe8e3;border-radius:8px;background:#f8faf9;color:#5f7068}.updates-repository-empty strong{color:var(--green-900);font:700 .78rem Manrope}.updates-repository-empty span{font-size:.7rem;line-height:1.5}
@media(max-width:600px){.updates-column--official .official-update-item{grid-template-columns:62px minmax(0,1fr) 16px}.updates-column--official .official-update-image{width:62px;height:50px}.updates-column--official .official-update-meta{align-items:center;flex-direction:row}.updates-column--official .official-update-content>small{white-space:normal}}

/* What’s New action: static municipal styling using the homepage palette. */
.updates-header-actions .updates-view-all{min-height:40px;padding-left:16px;border-color:var(--green-800);border-radius:7px;background:var(--green-700);color:#fff;letter-spacing:.045em;box-shadow:0 3px 8px rgba(5,46,34,.14);transition:none;transform:none}.updates-header-actions .updates-view-all span{margin-left:14px;border-left-color:rgba(255,255,255,.22);background:transparent;color:var(--gold);transition:none;transform:none}.updates-header-actions .updates-view-all:hover{border-color:var(--green-900);background:var(--green-900);box-shadow:0 3px 8px rgba(5,46,34,.14);transform:none}.updates-header-actions .updates-view-all:hover span{transform:none}.updates-header-actions .updates-view-all:focus-visible{outline:3px solid rgba(245,184,46,.48);outline-offset:3px}.updates-header-actions .updates-view-all:active{background:var(--green-950);transform:none}


/* Official municipal wordmark in the homepage hero. */
.hero-wordmark{display:block;width:min(100%,645px);height:auto;margin:0 0 28px;object-fit:contain;filter:drop-shadow(0 2px 2px rgba(0,0,0,.12))}.hero-wordmark.is-receiving-wordmark{visibility:hidden}.hero-copy .service-search{margin-top:0}@media(max-width:600px){.hero-wordmark{width:min(100%,520px);margin-bottom:22px}}

/* Reference-aligned municipal hero typography. */
.municipal-homepage .hero-copy{max-width:650px}
.municipal-homepage .hero .eyebrow{margin:0 0 10px;color:#fff;font:600 13px/1.35 "Inter","Segoe UI",Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase}
.municipal-homepage .hero .hero-script{margin:0 0 -4px;color:#f4c430;font:400 clamp(25px,2.4vw,37px)/1.2 "Segoe Script","Brush Script MT",cursive!important}
.municipal-homepage .hero h1{margin:0;color:#fff;font-family:"Inter","Segoe UI",Arial,sans-serif!important;font-size:clamp(52px,5.6vw,86px)!important;font-weight:700!important;line-height:.98;letter-spacing:.01em;text-shadow:0 2px 4px rgba(0,0,0,.26)}
.municipal-homepage .hero .hero-tagline{margin:12px 0 0;color:#f4c430;font:600 clamp(19px,1.8vw,27px)/1.3 "Inter","Segoe UI",Arial,sans-serif!important}
.municipal-homepage .hero .hero-summary{max-width:610px;margin:15px 0 0;color:#fff;font:400 16px/1.6 "Inter","Segoe UI",Arial,sans-serif!important}
@media(max-width:767px){.municipal-homepage .hero h1{font-size:clamp(39px,13vw,56px)!important}.municipal-homepage .hero .hero-tagline{font-size:18px!important}.municipal-homepage .hero .hero-summary{font-size:15px!important;line-height:1.5}}

/* Official municipal-hall photograph with a neutral readability fade. */
.municipal-homepage .hero-image{object-position:center 64%}
.municipal-homepage .hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.60) 0%,rgba(0,0,0,.40) 32%,rgba(0,0,0,.16) 52%,rgba(0,0,0,.05) 72%,rgba(0,0,0,0) 100%)}
@media(max-width:767px){.municipal-homepage .hero-image{object-position:58% 64%}.municipal-homepage .hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.60) 0%,rgba(0,0,0,.38) 68%,rgba(0,0,0,.08) 100%)}}
