/* Portal additions are scoped to avoid changing shared hero and sidebar geometry. */
:root{--portal-ink:#173f32;--portal-muted:#68766e;--portal-line:#dfe7e0;--portal-paper:#f5f7f1;--portal-radius:18px}
.portal-city-profile{display:grid;grid-template-columns:1.3fr 1fr;gap:32px;padding:32px;margin:0 0 24px;background:#fff;border:1px solid var(--portal-line);border-radius:var(--portal-radius)}
.portal-city-profile h2,.portal-pilot h2{color:var(--portal-ink);font-size:28px;line-height:1.4;margin:10px 0 16px}.portal-city-profile p{line-height:1.9;color:var(--portal-muted)}
.portal-city-profile aside{padding:24px;background:var(--portal-paper);border-radius:12px}.portal-city-profile aside h3{margin:0}.portal-city-profile aside p{font-size:12px}.portal-city-profile aside a{display:block;padding:12px 0;border-top:1px solid var(--portal-line)}.portal-city-profile aside span{display:block;font-size:13px;color:var(--portal-muted);margin-top:7px}.portal-city-profile small{display:block;margin-top:20px;color:var(--portal-muted)}
.portal-tags{display:flex;flex-wrap:wrap;gap:8px}.portal-tags span{background:#eaf0e7;color:var(--portal-ink);padding:5px 12px;border-radius:20px;font-size:12px}
.portal-pilot,.portal-recommendations,.portal-related{margin-top:40px;margin-bottom:40px}.portal-pilot>div:last-child,.portal-recommend-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.portal-pilot>div>a{background:var(--portal-paper);border:1px solid var(--portal-line);border-radius:var(--portal-radius);padding:28px;display:flex;flex-direction:column}.portal-pilot h3{font-size:23px;color:var(--portal-ink);margin:16px 0}.portal-pilot p{color:var(--portal-muted);line-height:1.85;flex:1}.portal-pilot b{margin-top:18px;font-size:13px}.portal-pilot a>span{font-size:12px;letter-spacing:2px;color:#64836b}.portal-recommend-grid>a{border:1px solid var(--portal-line);border-radius:16px;overflow:hidden;background:#fff;padding-bottom:20px}.portal-recommend-grid img{width:100%;aspect-ratio:16/10;object-fit:cover}.portal-recommend-grid h3,.portal-recommend-grid p,.portal-recommend-grid small{display:block;margin:12px 20px}
.portal-channel-pending .city-discovery{min-height:0}.portal-channel-pending .city-discovery-copy{padding:24px}.portal-breadcrumb{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:13px;color:var(--portal-muted);padding-top:22px;padding-bottom:22px}.portal-detail-trust{display:grid;grid-template-columns:2fr 1fr;gap:32px;padding:32px;background:var(--portal-paper);border:1px solid var(--portal-line);border-radius:var(--portal-radius);margin-top:32px;margin-bottom:40px}.portal-detail-trust h2{font-size:21px;color:var(--portal-ink);margin:0 0 24px}.portal-detail-trust dl{display:grid;grid-template-columns:120px 1fr;gap:14px;font-size:14px;line-height:1.7}.portal-detail-trust dt{color:var(--portal-muted)}.portal-detail-trust dd{margin:0;overflow-wrap:anywhere}.portal-detail-trust aside{border-left:1px solid var(--portal-line);padding-left:32px}.portal-detail-trust p{line-height:1.8}.portal-inline-link{display:block;margin-top:20px;font-size:13px}.portal-search-help{display:flex;gap:20px;flex-wrap:wrap;padding:24px;background:var(--portal-paper);margin-bottom:32px}
.portal-tabs,.portal-city-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.portal-tabs a,.portal-city-tabs a{padding:10px 16px;background:#fff;border:1px solid var(--portal-line);border-radius:8px;font-size:14px}.portal-tabs a.selected,.portal-city-tabs a.selected{background:var(--portal-ink);color:#fff}.portal-editor,.portal-inquiry{padding:28px;background:#fff;border:1px solid var(--portal-line);border-radius:14px;margin-bottom:20px}.portal-editor>p,.portal-inquiry small{color:var(--portal-muted);line-height:1.8}.portal-editor label,.portal-inquiry label,#portal-dialog label{display:grid;gap:8px;margin:18px 0;font-size:14px}.portal-editor input,.portal-editor select,.portal-editor textarea,.portal-inquiry input,.portal-inquiry textarea,.portal-inquiry select,#portal-dialog input,#portal-dialog textarea{width:100%;padding:12px;border:1px solid #ced8d0;border-radius:8px;background:#fff;font:inherit;color:#21372c;box-sizing:border-box}.portal-editor textarea{resize:vertical}.portal-rec-row{display:grid;grid-template-columns:2fr 1fr;gap:20px;border-bottom:1px solid var(--portal-line)}.portal-quality{border-top:1px solid var(--portal-line);padding:18px 0}.portal-quality summary{cursor:pointer;line-height:1.8}.portal-quality b{color:#317550}.portal-feedback{color:#23633c}.portal-feedback.error{color:#a62d27}.portal-inquiry>p,.portal-inquiry blockquote{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.portal-inquiry blockquote{margin:20px 0;background:var(--portal-paper);padding:18px}.portal-consent{display:flex!important;align-items:flex-start;gap:10px!important;line-height:1.7}.portal-consent input{width:18px!important;flex:none;margin-top:4px}.portal-privacy{background:none;border:0;color:inherit;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
#portal-dialog{width:min(560px,calc(100% - 32px));max-height:90vh;overflow:auto;border:0;border-radius:20px;padding:30px;color:#21372c;box-shadow:0 24px 80px #0003}#portal-dialog::backdrop{background:#10241bc4}#portal-dialog [data-close-dialog]{float:right;background:none;border:0;font-size:28px;cursor:pointer}#portal-dialog p{font-size:12px;line-height:1.8;color:var(--portal-muted)}.server-content{padding-top:50px;padding-bottom:70px;min-height:55vh}.server-content p{max-width:900px;line-height:1.9}.server-links{display:flex;gap:18px;flex-wrap:wrap}.portal-editor .upload-field img{max-width:300px;max-height:180px;object-fit:cover}
@media(max-width:800px){.portal-city-profile,.portal-detail-trust{grid-template-columns:1fr;padding:22px;gap:24px}.portal-pilot>div:last-child,.portal-recommend-grid{grid-template-columns:1fr}.portal-detail-trust aside{border-left:0;border-top:1px solid var(--portal-line);padding:24px 0 0}.portal-detail-trust dl{grid-template-columns:100px 1fr}.portal-rec-row{grid-template-columns:1fr;gap:0}.portal-editor{padding:18px}.portal-city-profile h2,.portal-pilot h2{font-size:24px}.portal-tabs a{padding:9px 12px}.portal-breadcrumb{font-size:12px}}
@media(prefers-reduced-motion:reduce){.portal-pilot *,.portal-recommendations *{transition:none!important}}
/* City editions: same portal structure, restrained local color and drawn motifs. */
body[data-city-theme]{--edition-dark:#1b493d;--edition-accent:#dce9b5;--edition-soft:#eff3e9;--edition-mark:#53735b}
body[data-city-theme=ocean]{--edition-dark:#174653;--edition-accent:#c5e3e2;--edition-soft:#edf4f5;--edition-mark:#406f7c}
body[data-city-theme=clay]{--edition-dark:#543b32;--edition-accent:#efdab6;--edition-soft:#f6f0e8;--edition-mark:#92664c}
body[data-city-theme=gold]{--edition-dark:#44462c;--edition-accent:#eee0a7;--edition-soft:#f7f4e8;--edition-mark:#8a7544}
body[data-city-theme=ink]{--edition-dark:#283e46;--edition-accent:#d6e1cc;--edition-soft:#eff2ef;--edition-mark:#566d6a}
body[data-city-theme=rose]{--edition-dark:#543d45;--edition-accent:#efcfcc;--edition-soft:#f8f0ef;--edition-mark:#986575}
body[data-city-theme] .city-edition-hero .city-hero-overlay{background:linear-gradient(90deg,var(--edition-dark) 5%,color-mix(in srgb,var(--edition-dark) 70%,transparent) 62%,color-mix(in srgb,var(--edition-dark) 40%,transparent))}
body[data-city-theme] .city-edition-hero .city-hero-copy{width:65%;padding-bottom:76px;min-height:390px}
body[data-city-theme] .city-edition-hero h1{font-size:clamp(35px,4vw,58px);line-height:1.25}
body[data-city-theme] .city-edition-hero h1>span{color:var(--edition-accent)}
body[data-city-theme] .city-edition-hero .city-hero-copy>p{max-width:490px;min-height:27px;line-height:1.9}
body[data-city-theme] .city-edition-hero .button{background:var(--edition-accent);color:var(--edition-dark)}
.city-edition-seal{position:absolute;right:6%;top:32px;bottom:54px;width:24%;max-width:270px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;color:var(--edition-accent);border:1px solid #ffffff40;border-radius:130px 130px 12px 12px;background:#ffffff08;backdrop-filter:blur(3px)}
.city-edition-seal>span{font-size:9px;letter-spacing:3px}.city-edition-seal svg{height:98px;width:96px;margin:24px 0 17px}.city-edition-seal strong{font-family:serif;font-size:36px;font-weight:500;letter-spacing:8px;margin-left:8px}.city-edition-seal p{font-size:10px;letter-spacing:1px;line-height:1.8;max-width:90%;margin:14px 0!important}.city-edition-seal small{font-size:8px;opacity:.7}
body[data-city-theme] .city-sidebar-brand{background:var(--edition-soft)}body[data-city-theme] .city-sidebar-brand strong{color:var(--edition-dark)}body[data-city-theme] .city-sidebar nav a[aria-current=page]{background:var(--edition-dark)}
body[data-city-theme] .portal-city-profile h2{color:var(--edition-dark)}body[data-city-theme] .portal-tags span{background:var(--edition-soft);color:var(--edition-mark)}.portal-city-profile.city-profile-wide{grid-template-columns:1fr}.city-profile-wide>div{max-width:850px}.city-profile-wide p{font-size:15px}.city-profile-wide .portal-tags{margin-top:18px}
.city-edition-stories{margin:28px 0 30px}.city-edition-stories>header{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:20px}.city-edition-stories h2{font-size:25px!important;line-height:1.5;margin:10px 0 0!important;color:var(--edition-dark)!important}.city-edition-stories>header>p{font-size:12px;color:#7b8379;margin:0 0 3px}.city-edition-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.city-edition-grid article{display:flex;flex-direction:column;padding:24px;background:var(--edition-soft);border:1px solid #243b2b12;border-radius:15px;min-width:0}.city-edition-card-top{display:flex;justify-content:space-between;align-items:center;color:var(--edition-mark);margin-bottom:20px}.city-edition-card-top>span{font-family:Georgia,serif;font-size:32px;font-style:italic;opacity:.7}.city-edition-card-top svg{width:46px;height:48px;opacity:.65}.city-edition-grid h3{font-size:18px!important;line-height:1.5;margin:0 0 12px!important;color:var(--edition-dark)!important}.city-edition-grid article>p{font-size:13px;line-height:1.85;color:#657267;flex:1;margin:0 0 24px}.city-edition-links{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding-top:16px;border-top:1px solid #243b2b20;font-size:11px}.city-edition-links a:first-child{font-weight:600;color:var(--edition-dark)}.city-edition-links a:last-child{color:#788077;font-size:10px}.city-edition-grid a:hover{text-decoration:underline;text-underline-offset:4px}
@media(max-width:1000px){.city-edition-grid{grid-template-columns:1fr}.city-edition-grid article{padding:24px}.city-edition-card-top{margin-bottom:10px}.city-edition-stories>header{display:block}.city-edition-stories>header>p{margin-top:10px}.city-edition-seal{right:4%;width:25%}.city-edition-seal>span{letter-spacing:1px}}
@media(max-width:650px){body[data-city-theme] .city-edition-hero .city-hero-copy{width:100%;padding:30px 24px 78px;min-height:410px}body[data-city-theme] .city-edition-hero h1{font-size:clamp(30px,8.5vw,42px);margin:30px 0 20px}body[data-city-theme] .city-edition-hero .city-hero-copy>p{max-width:270px}.city-edition-seal{display:none}.city-edition-stories h2{font-size:22px!important}.city-edition-grid{gap:12px}.city-profile-wide p{font-size:13px}}
body[data-city-theme] .city-edition-seal p{color:var(--edition-accent)}

/* Compact editorial portal shared by all city homepages. */
.city-site-mast .city-hero-main.city-edition-hero{min-height:280px}.city-site-mast .city-hero-main.city-edition-hero .city-hero-copy{padding:30px 38px 44px}.city-site-mast .city-hero-main.city-edition-hero h1{font-size:38px;line-height:1.3;margin:14px 0}.city-site-mast .city-hero-main.city-edition-hero .city-hero-copy>p{font-size:13px;max-width:650px}.city-editorial{display:grid;grid-template-columns:minmax(0,1fr) 170px;margin:20px 0;border:1px solid #e1e7df;background:#fff;border-radius:12px;overflow:hidden}.city-editorial-intro{padding:26px 28px}.editorial-kicker{font-size:11px;color:#81927c;letter-spacing:1px}.city-home .city-editorial h2{font-size:24px;line-height:1.45;margin:10px 0 12px;color:#294c3a}.city-home .city-editorial-intro>p{font-size:13px;line-height:1.9;color:#748070;margin:0}.editorial-tags{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 12px}.editorial-tags span{font-size:11px;background:#f1f5ed;color:#627a55;padding:4px 10px;border-radius:4px}.city-editorial-intro>small{font-size:10px;color:#8d9888}.city-editorial-facts{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#edf3e8;border-left:1px solid #e0e8da;padding:22px;gap:10px;color:#56704c}.city-editorial-facts>span{font-size:9px;letter-spacing:2px}.city-editorial-facts svg{width:60px;height:64px;opacity:.6}.city-editorial-facts>strong{font-size:32px;font-weight:400;line-height:1.2}.city-editorial-facts small{font-size:11px}.city-editorial-facts>a{font-size:11px}.city-editorial-guides{margin:24px 0}.city-editorial-guides>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.city-home .city-editorial-guides h2{font-size:19px;margin:0}.city-editorial-guides>header>span{font-size:11px;color:#8c9785}.city-editorial-guides>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.city-editorial-guides article{padding:20px;background:#fff;border:1px solid #e3e8df;border-top:3px solid #bacbad;border-radius:8px}.editorial-number{font:italic 22px Georgia;color:#a4b497}.city-home .city-editorial-guides h3{font-size:15px;line-height:1.5;margin:10px 0}.city-home .city-editorial-guides p{font-size:12px;line-height:1.85;color:#83907a;min-height:66px;margin:0 0 14px}.city-editorial-guides article>a{font-size:12px;color:#4d7458}.city-site-main .city-list-panel{border-top:3px solid #b9cbb0}.city-site-main .city-list-heading h2{font-size:19px}.city-site-main .city-toolbar{border-radius:10px}.city-site-main .city-counties{margin:0}.city-site-main .city-county-band{margin-top:24px}.city-site-page .city-sidebar nav a[aria-current=page]{box-shadow:none;border-left:3px solid #c4d3ac}.city-site-page .city-sidebar{border-color:#e1e7dc}
@media(max-width:700px){.city-editorial{grid-template-columns:minmax(0,1fr) 115px}.city-editorial-intro{padding:20px}.city-home .city-editorial h2{font-size:20px}.city-editorial-facts{padding:12px}.city-editorial-guides>div{grid-template-columns:1fr}.city-editorial-guides article{padding:16px 18px}.city-home .city-editorial-guides p{min-height:0}.city-editorial-guides>header>span{font-size:10px}.city-site-mast .city-hero-main.city-edition-hero{min-height:240px}.city-site-mast .city-hero-main.city-edition-hero .city-hero-copy{padding:26px 24px 40px}.city-site-mast .city-hero-main.city-edition-hero h1{font-size:30px}}

.content-list{display:block;background:#fff;border:1px solid #e1e7df;border-radius:10px;overflow:hidden}.content-list-row{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 24px}.content-list-row+.content-list-row{border-top:1px solid #e9ede6}.content-list-row>div{min-width:0}.content-list .content-list-row h2{font-size:18px;line-height:1.5;margin:6px 0;color:#2d4c38}.content-list .content-list-row p{font-size:13px;color:#82907a;line-height:1.8;margin:6px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.content-list-meta{font-size:11px;color:#899580;line-height:1.8}.content-list-action{flex-shrink:0;font-size:12px;color:#416e50}.content-list-row:hover{background:#fafcf8}.content-list>.empty{padding:36px 20px}.content-list-row h2 a:hover{text-decoration:underline}@media(max-width:650px){.content-list-row{padding:18px 16px;gap:12px;align-items:flex-start}.content-list .content-list-row h2{font-size:16px}.content-list-action{font-size:11px;margin-top:24px}}
