.city-handbook {
    box-sizing: border-box;
    width: 100%;
    max-width: 72em;
    margin: 0 auto;
    padding: 1em;
    color: #1f2924;
    background: #fff;
    font-size: 16px;
    line-height: 1.55;
    overflow-wrap: anywhere;
}

.city-handbook__section {
    max-width: 42em;
    margin-inline: auto;
}

.city-handbook__start {
    margin-block: 1.5em;
    padding: 1em;
    border-radius: .5em;
    background: #f3f6f4;
}

.city-handbook__start ol {
    display: grid;
    gap: .75em;
    padding-left: 1.5em;
}

.city-handbook__start a {
    display: inline-block;
    min-height: 44px;
    padding-block: .5em;
}

.city-handbook__hotlines { margin-block: 2em; }

.city-handbook *,
.city-handbook *::before,
.city-handbook *::after {
    box-sizing: inherit;
}

.city-handbook a {
    color: var(--handbook-accent, currentColor);
    text-decoration-thickness: .1em;
    text-underline-offset: .15em;
}

.city-handbook__menu,
.city-handbook__search,
.city-handbook__sections,
.city-handbook__contacts {
    display: grid;
    gap: .75em;
}

.city-handbook__menu {
    grid-template-columns: repeat(auto-fit, minmax(min(10em, 100%), 1fr));
    margin-bottom: 1.25em;
}

.city-handbook__menu a,
.city-handbook button,
.city-handbook select,
.city-handbook input {
    min-height: 44px;
}

.city-handbook__menu a,
.city-handbook__section-card,
.city-handbook__block,
.city-handbook__contact,
.city-handbook__alert,
.city-handbook__search-result {
    padding: 1em;
    border: 1px solid currentColor;
    border-radius: .5em;
}

.city-handbook__sections {
    grid-template-columns: repeat(auto-fit, minmax(min(18em, 100%), 1fr));
}

.city-handbook__search {
    grid-template-columns: repeat(auto-fit, minmax(min(16em, 100%), 1fr));
    align-items: end;
    margin-bottom: 1em;
}

.city-handbook__search label {
    display: grid;
    gap: .35em;
}

.city-handbook input,
.city-handbook select,
.city-handbook button {
    width: 100%;
    padding: .55em .7em;
    font: inherit;
}

.city-handbook button {
    color: inherit;
    background: transparent;
    border: 1px solid currentColor;
    border-radius: .4em;
    cursor: pointer;
}

.city-handbook__copy {
    width: auto !important;
    min-height: 44px;
    margin-left: .35em;
}

.city-handbook__rows {
    display: grid;
    grid-template-columns: minmax(7em, 12em) minmax(0, 1fr);
    gap: .5em 1em;
}

.city-handbook__rows dt,
.city-handbook__rows dd {
    margin: 0;
}

.city-handbook__alert {
    margin: 1em 0;
    border-color: var(--handbook-accent, currentColor);
}

.city-handbook__sources {
    margin-top: 1.5em;
    padding-top: .75em;
    border-top: 1px solid currentColor;
}

@media (max-width: 480px) {
    .city-handbook {
        padding: .75em;
        font-size: 16px;
    }

    .city-handbook h1 {
        font-size: 1.6em;
    }

    .city-handbook h2 {
        font-size: 1.25em;
    }

    .city-handbook__rows {
        grid-template-columns: 1fr;
    }

    .city-handbook__copy {
        display: block;
        margin: .5em 0 0;
    }
}

.city-handbook-page { padding-top: 1.5em; padding-bottom: 2em; }
.city-handbook__section-card { display: block; color: inherit !important; text-decoration: none; }
.city-handbook__section-card:hover { background: #f7f7f5; text-decoration: none; }
.city-handbook__section-card h2 { color: var(--handbook-accent); }
.city-handbook__local { margin-block: 1.5em; padding: 1em; border-inline-start: 3px solid var(--handbook-accent); background: #faf8f5; }

.city-handbook :is(a, button, input, select):focus-visible { outline: 3px solid var(--handbook-accent); outline-offset: 3px; }

/* Compact reader: plain navigation, editorial sections, phone rows and contact table. */
.city-style .city-handbook-page .city-handbook{max-width:1120px;padding:0;background:transparent;font-size:16px;line-height:1.5}
.city-style .city-handbook-page .city-handbook__heading h1{font-size:clamp(24px,3vw,34px);line-height:1.2;margin:20px 0 24px;max-width:900px}
.city-style .city-handbook-page .city-handbook__menu{display:flex;flex-wrap:wrap;gap:8px 24px;margin:0;padding:0 0 8px;border-bottom:1px solid var(--cs-line,#dce1e7)}
.city-style .city-handbook-page .city-handbook__menu a{flex:none;padding:8px 0;min-height:40px;border:0;border-radius:0;background:transparent;color:var(--cs-text,#17212e);font-size:14px;text-decoration:none}
.city-style .city-handbook-page .city-handbook__menu a:hover{color:var(--cs-ink,#bd5520);text-decoration:underline}
.city-style .city-handbook-page .city-handbook__section{max-width:800px;margin-inline:auto}
.city-style .city-handbook-page .city-handbook__section>p{margin:8px 0 16px}
.city-style .city-handbook-page .city-handbook__block{border:0;border-top:1px solid var(--cs-line,#dce1e7);border-radius:0;padding:20px 0;margin:0;background:transparent}
.city-style .city-handbook-page .city-handbook__block h2{font-size:22px;line-height:1.3;margin:0 0 12px}
.city-style .city-handbook-page .city-handbook__block p{margin:8px 0}
.city-style .city-handbook-page .city-handbook__contact{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;align-items:start;border:0;border-bottom:1px solid var(--cs-line,#dce1e7);border-radius:0;padding:10px 0;margin:0;background:transparent;font-size:14px}
.city-style .city-handbook-page .city-handbook__contact-name{display:block;font-size:14px;line-height:1.4;font-weight:600;color:var(--cs-text,#17212e)}
.city-style .city-handbook-page .city-handbook__contact-note{display:block;margin-top:4px;font-size:13px;line-height:1.45;font-weight:400;color:#4b5563}
.city-style .city-handbook-page .city-handbook__contact-meta{display:block;margin-top:4px;font-size:11px;line-height:1.4;font-weight:400;color:#667080}
.city-style .city-handbook-page .city-handbook a.city-handbook__phone{display:inline-flex;align-items:center;min-height:32px;white-space:nowrap;font-size:14px;font-weight:600;color:var(--cs-ink,#bd5520);text-decoration:none;font-variant-numeric:tabular-nums}
.city-style .city-handbook-page .city-handbook a.city-handbook__phone:hover{text-decoration:underline}
.city-style .city-handbook-page .city-handbook__hotlines{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 20px;margin:24px 0}
.city-style .city-handbook-page .city-handbook__hotlines>h2{grid-column:1/-1;font-size:20px;margin:0 0 8px}
.city-style .city-handbook-page .city-handbook__hotlines .city-handbook__contact-meta,.city-style .city-handbook-page .city-handbook__hotlines .city-handbook__contact-note{display:none}
.city-style .city-handbook-page .city-handbook__contact-table{width:100%;table-layout:fixed;border-collapse:collapse;background:#fff;font-size:14px;text-align:left}
.city-style .city-handbook-page .city-handbook__contact-table caption{text-align:left;font-size:14px;color:#667080;padding:0 0 12px}
.city-style .city-handbook-page .city-handbook__contact-table th,.city-style .city-handbook-page .city-handbook__contact-table td{border:0;border-bottom:1px solid var(--cs-line,#dce1e7);padding:10px 16px;vertical-align:top;text-align:left}
.city-style .city-handbook-page .city-handbook__contact-table thead th{background:#e6ebf2;font-size:12px;font-weight:600;padding-block:10px}
.city-style .city-handbook-page .city-handbook__contact-table th:last-child,.city-style .city-handbook-page .city-handbook__contact-table td:last-child{width:180px}
.city-style .city-handbook-page .city-handbook__contact-table tbody tr:hover{background:#f8fafc}
.city-style .city-handbook-page .city-handbook__start,.city-style .city-handbook-page .city-handbook__local{padding:16px;margin:20px 0;border:0;border-radius:4px;background:#e6ebf2}
.city-style .city-handbook-page .city-handbook__start h2,.city-style .city-handbook-page .city-handbook__local h2{font-size:18px;margin:0 0 8px}
.city-style .city-handbook-page .city-handbook__start ol{display:flex;flex-wrap:wrap;gap:4px 28px;margin:0;padding-left:20px}
.city-style .city-handbook-page .city-handbook__start a{padding:4px 0;min-height:32px;font-size:14px}
.city-style .city-handbook-page .city-handbook__section-card{padding:16px;border-radius:4px;box-shadow:none}
.city-style .city-handbook-page .city-handbook__section-card h2{font-size:20px;line-height:1.3}
.city-style .city-handbook-page .city-handbook__section-card p{font-size:14px;margin:8px 0}
.city-style .city-handbook-page .city-handbook__freshness{font-size:12px;color:#667080}
@media(max-width:700px){
 .city-style .city-handbook-page .city-handbook__menu{gap:8px 20px}
 .city-style .city-handbook-page .city-handbook__menu a{flex:none;padding:8px 0}
 .city-style .city-handbook-page .city-handbook__hotlines{grid-template-columns:1fr}
 .city-style .city-handbook-page .city-handbook__contact-table th,.city-style .city-handbook-page .city-handbook__contact-table td{padding:10px 8px}
 .city-style .city-handbook-page .city-handbook__contact-table th:last-child,.city-style .city-handbook-page .city-handbook__contact-table td:last-child{width:124px}
 .city-style .city-handbook-page .city-handbook__contact-name{font-size:13px}
 .city-style .city-handbook-page .city-handbook a.city-handbook__phone{font-size:13px}
 .city-style .city-handbook-page .city-handbook__block{padding:16px 0}
 .city-style .city-handbook-page .city-handbook__block h2{font-size:20px}
}

.city-style .city-handbook-page .city-handbook__layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:32px;align-items:start}
.city-style .city-handbook-page .city-handbook__topics{display:flex;flex-direction:column;gap:4px;position:sticky;top:20px}
.city-style .city-handbook-page .city-handbook__topics a{display:block;border:1px solid transparent;border-radius:6px;padding:10px 12px;font-size:14px;font-weight:500;line-height:1.35;text-decoration:none;color:var(--cs-text,#17212e)}
.city-style .city-handbook-page .city-handbook__topics a:hover{background:#fff}
.city-style .city-handbook-page .city-handbook__topics a[aria-current]{background:var(--cs-ink,#bd5520);color:#fff}
.city-style .city-handbook-page .city-handbook__body{min-width:0}
.city-style .city-handbook-page .city-handbook__sections{display:flex;flex-direction:column;gap:12px}
.city-style .city-handbook-page .city-handbook__topic{border:1px solid var(--cs-line,#dce1e7);border-radius:8px;background:#fff;overflow:hidden}
.city-style .city-handbook-page .city-handbook__topic[open]{border-color:var(--cs-ink,#bd5520)}
.city-style .city-handbook-page .city-handbook__topic summary{position:relative;list-style:none;cursor:pointer;padding:16px 44px 16px 20px}
.city-style .city-handbook-page .city-handbook__topic summary::-webkit-details-marker{display:none}
.city-style .city-handbook-page .city-handbook__topic summary::after{content:'+';position:absolute;right:18px;top:16px;color:var(--cs-ink,#bd5520);font-size:20px}
.city-style .city-handbook-page .city-handbook__topic[open]>summary::after{content:'−'}
.city-style .city-handbook-page .city-handbook__topic-title{display:block;font-size:18px;font-weight:600;line-height:1.35}
.city-style .city-handbook-page .city-handbook__topic-short{display:block;color:#667080;font-size:13px;line-height:1.4;margin-top:6px}
.city-style .city-handbook-page .city-handbook__section{max-width:none;margin:0;padding:20px;background:#fff;border:1px solid var(--cs-line,#dce1e7);border-radius:8px}
.city-style .city-handbook-page .city-handbook__topic>.city-handbook__section{border:0;border-top:1px solid var(--cs-line,#dce1e7);border-radius:0}
.city-style .city-handbook-page .city-handbook__about{background:#fff;padding:20px;border-radius:8px;border:1px solid var(--cs-line,#dce1e7)}
.city-style .city-handbook-page .city-handbook__local{margin-top:0}
.city-style .city-handbook-page .city-handbook__hotlines{display:flex;gap:8px;align-items:stretch;flex-wrap:wrap}
.city-style .city-handbook-page .city-handbook__hotlines>h2{flex:0 0 100%}
.city-style .city-handbook-page .city-handbook__hotlines .city-handbook__contact{display:flex;flex:1 1 0;min-width:0;flex-direction:column;gap:4px;align-items:center;text-align:center;background:#fff;border:1px solid var(--cs-line,#dce1e7);border-radius:4px;padding:10px 8px}
.city-style .city-handbook-page .city-handbook__hotlines .city-handbook__contact-name{font-size:11px}
.city-style .city-handbook-page .city-handbook__hotlines .city-handbook__phone{min-height:24px}
.city-style .city-handbook-page .city-handbook summary:focus-visible{outline:3px solid var(--cs-ink,#bd5520);outline-offset:-3px}
@media(max-width:800px){
 .city-style .city-handbook-page .city-handbook__layout{grid-template-columns:1fr;gap:16px}
 .city-style .city-handbook-page .city-handbook__topics{position:static;flex-direction:row;flex-wrap:wrap;gap:6px}
 .city-style .city-handbook-page .city-handbook__topics a{border-color:var(--cs-line,#dce1e7);background:#fff;border-radius:20px;font-size:12px;padding:8px 12px}
 .city-style .city-handbook-page .city-handbook__section{padding:16px}
 .city-style .city-handbook-page .city-handbook__topic summary{padding:14px 40px 14px 16px}
 .city-style .city-handbook-page .city-handbook__topic-title{font-size:17px}
}

.city-style .city-handbook-page .city-handbook__alert{padding:12px 16px;margin:8px 0;border-radius:4px;border:0;border-left:3px solid var(--cs-ink,#bd5520);font-size:14px}
.city-style .city-handbook-page .city-handbook__alert p{margin:4px 0}
.city-style .city-handbook-page .city-handbook__alert small{font-size:11px;color:#667080}
.city-style .city-handbook-page .city-handbook__body>section[aria-label]{margin-bottom:16px}
.city-style .city-handbook-page .city-handbook__body>section[aria-label]>h2{font-size:16px;margin:0 0 8px}
@media(max-width:800px){
 .city-style .city-handbook-page .city-handbook__topics{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}
 .city-style .city-handbook-page .city-handbook__topics::-webkit-scrollbar{display:none}
 .city-style .city-handbook-page .city-handbook__topics a{flex:none;white-space:nowrap}
 .city-style .city-handbook-page .city-handbook__hotlines .city-handbook__phone{font-size:11px}
 .city-style .city-handbook-page .city-handbook__heading h1{margin:16px 0}
}
