.bs-city{letter-spacing:0}
.bs-city .city-hero{position:relative;isolation:isolate;min-height:650px;color:#fff;background:#102b49;padding:32px 0 0;display:flex;flex-direction:column;justify-content:space-between}
.bs-city .city-hero-copy{position:relative;z-index:2;order:0;padding-bottom:40px}
.bs-city .hero-gallery-bottom{order:1;position:relative;z-index:2;margin-top:0;padding-block:22px}
.bs-city .breadcrumb{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;margin-bottom:44px}
.bs-city .breadcrumb a{color:white}
.bs-city .breadcrumb>*+*:before{content:none}
.bs-city .city-hero h1{max-width:900px;font-size:54px;line-height:1.12;margin:20px 0 24px;letter-spacing:0}
.bs-city .city-title-service,.bs-city .city-title-place{display:block;white-space:nowrap}
.bs-city h2,.bs-city h3{text-wrap:balance;hyphens:none;word-break:normal;overflow-wrap:normal}
.bs-city .city-territory{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.bs-city .city-territory .city-heading{margin:0}
.bs-city .city-map{margin:0;min-width:0;border:1px solid #cbd3dc;border-radius:6px;overflow:hidden;background:#edf2ef}
.bs-city .city-map iframe{display:block;width:100%;height:340px;border:0}
.bs-city .city-map figcaption{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;background:white;font-size:14px}
.bs-city .city-map small{font-size:11px;color:#536171}
.bs-city .city-map a{font-size:12px}
.bs-city .city-hero .lead{max-width:730px;color:#edf3f8;font-size:18px;line-height:1.8}
.bs-city .city-hero .eyebrow{color:#a2cefa}
.bs-city .hero-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:28px}
.bs-city .city-outline{color:white;border:1px solid #c3cfda;background:transparent}
.bs-city .city-nav{display:flex;flex-wrap:wrap;gap:12px 30px;padding-block:22px;border-bottom:1px solid var(--line)}
.bs-city .city-nav a{font-size:13px;min-height:44px;display:inline-flex;align-items:center}
.bs-city .city-section{padding:72px 0}
.bs-city .city-section:nth-of-type(odd){background:#f4f6f8}
.bs-city .city-heading{max-width:840px;margin-bottom:30px}
.bs-city .city-heading h2{font-size:34px;line-height:1.25;margin:12px 0 20px}
.bs-city .city-section p{color:#536171;line-height:1.8}
.bs-city .city-section a:not(.button){color:#174991;text-decoration:underline;text-underline-offset:4px}
.bs-city .city-section a.text-link{text-decoration:none}
.bs-city .city-heading>.text-link{margin-top:24px;max-width:100%}
.bs-city .city-needs article>a.text-link{margin-top:16px}
.bs-city .city-needs article>p.city-source{margin-top:16px}
.bs-city .city-process .city-related-links{display:flex;flex-wrap:wrap;align-items:flex-start;gap:16px 28px;margin-top:8px}
.bs-city .city-map figcaption{border-top:3px solid var(--coral)}
.bs-city .city-needs .city-columns>article{position:relative;padding-left:54px}
.bs-city .city-usage-icon{position:absolute;left:0;top:24px;color:var(--blue)}
.bs-city .city-needs .city-columns>article:first-child .city-usage-icon{top:2px}
.bs-city .city-usage-icon svg{width:30px;height:30px}
.bs-city .city-process .city-columns>article{display:grid;grid-template-columns:38px minmax(0,1fr);column-gap:16px}
.bs-city .city-step-number{grid-column:1;grid-row:1/3;font-family:var(--display);font-size:14px;color:var(--blue);padding-top:2px}
.bs-city .city-process .city-columns article h3,.bs-city .city-process .city-columns article p{grid-column:2}
.bs-city .city-stats,.bs-city .city-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:32px 0}
.bs-city .city-stats>div,.bs-city .city-columns>article{border-top:2px solid #1e4f97;padding-top:22px}
.bs-city .city-stats strong{display:block;font-size:34px;color:#142b43;line-height:1.2}
.bs-city .city-stats span{display:block;font-size:14px;margin-top:10px}
.bs-city .city-source{font-size:12px;max-width:960px}
.bs-city .city-columns h3{font-size:21px;line-height:1.3;margin-bottom:16px}
.bs-city .city-solutions h3{font-size:22px;margin-bottom:14px}
.bs-city .city-solutions p{margin-bottom:14px}
.bs-city .city-reading{max-width:900px}
.bs-city details{border-top:1px solid #cbd3dc;padding:22px 0}
.bs-city summary{cursor:pointer;font-weight:650;font-size:19px;line-height:1.5}
.bs-city details p{padding-top:16px}
.bs-city a:focus-visible,.bs-city summary:focus-visible{outline:3px solid #e77350;outline-offset:5px}
.bs-city [id]{scroll-margin-top:120px}
@media(max-width:800px){.bs-city .city-hero{min-height:650px}.bs-city .city-hero h1{font-size:36px}.bs-city .city-hero .lead{font-size:16px}.bs-city .city-stats,.bs-city .city-columns,.bs-city .city-solutions{grid-template-columns:1fr;gap:24px}.bs-city .city-heading h2{font-size:28px}.bs-city .city-section{padding:48px 0}.bs-city .breadcrumb{margin-bottom:30px}.bs-city .hero-actions>a{width:100%;justify-content:center}.bs-city .city-hero-copy{padding-bottom:24px}}
@media(max-width:380px){.bs-city .city-hero h1{font-size:32px}.bs-city .container{width:calc(100% - 32px)}}
@media(max-width:1000px){.bs-city .city-territory{gap:32px}}
@media(max-width:800px){.bs-city .city-territory{grid-template-columns:1fr}.bs-city .city-map iframe{height:300px}}
@media(max-width:540px){.bs-city .city-hero h1{font-size:30px}.bs-city .city-map figcaption{flex-wrap:wrap}}
@media(max-width:380px){.bs-city .city-hero h1{font-size:26px}}

.bs-city .city-needs>.container{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:36px 64px;align-items:start}
.bs-city .city-needs .city-heading{grid-column:1/-1;margin-bottom:0;max-width:760px}
.bs-city .city-editorial-image{margin:0;min-width:0}
.bs-city .city-editorial-image img{display:block;width:100%;height:100%;object-fit:cover;border-radius:6px}
.bs-city .city-editorial-image figcaption{font-size:12px;color:#536171;padding-top:14px;line-height:1.6}
.bs-city .city-needs .city-editorial-image{position:sticky;top:140px}
.bs-city .city-needs .city-editorial-image img{aspect-ratio:1.05;height:auto}
.bs-city .city-needs .city-columns{grid-template-columns:1fr;gap:24px;margin:0}
.bs-city .city-needs .city-columns>article{border-top:1px solid #cbd3dc;padding-top:22px}
.bs-city .city-needs .city-columns>article:first-child{padding-top:0;border-top:0}
.bs-city .city-needs h3{font-size:23px;margin-bottom:10px}
.bs-city .city-needs article>p{margin-bottom:10px;font-size:15px}
.bs-city .city-needs article>p.city-source{font-size:11px;margin-top:10px;margin-bottom:0}
.bs-city .city-needs article>a{font-size:14px;font-weight:600}
.bs-city .city-solutions h3{font-size:21px;text-wrap:pretty}
.bs-city .city-solutions p{font-size:15px}
.bs-city .city-solutions a{font-size:14px;font-weight:600}
.bs-city .city-process>.container{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 72px}
.bs-city .city-process .city-heading{grid-column:1;margin:0}
.bs-city .city-process .city-editorial-image{grid-column:2;grid-row:1/4;align-self:center}
.bs-city .city-process .city-editorial-image img{aspect-ratio:.95;height:auto}
.bs-city .city-process .city-columns{grid-column:1;grid-template-columns:1fr;margin:0;gap:18px}
.bs-city .city-process .city-columns>article{border-top:1px solid #cbd3dc;padding-top:18px}
.bs-city .city-process .city-columns h3{font-size:18px;margin-bottom:8px;text-wrap:pretty}
.bs-city .city-process .city-columns p{font-size:14px}
.bs-city .city-process>.container>p{grid-column:1;font-size:13px}
@media(max-width:1000px){.bs-city .city-needs>.container,.bs-city .city-process>.container{column-gap:32px}}
@media(max-width:800px){.bs-city .city-needs>.container,.bs-city .city-process>.container{grid-template-columns:1fr;gap:28px}.bs-city .city-needs .city-editorial-image{position:static}.bs-city .city-needs .city-editorial-image img,.bs-city .city-process .city-editorial-image img{aspect-ratio:1.5}.bs-city .city-process .city-editorial-image{grid-column:1;grid-row:auto}.bs-city .city-solutions{grid-template-columns:1fr}.bs-city .city-solutions article{grid-template-columns:32px minmax(0,1fr);column-gap:16px}.bs-city .city-solutions article h3{text-wrap:pretty}}

.bs-city .city-controls{display:flex;justify-content:flex-end;gap:12px;align-items:center;margin:0 0 24px}
.bs-city .city-controls[hidden]{display:none}
.bs-city .city-controls button{display:grid;place-items:center;width:44px;height:44px;border:1px solid #cbd3dc;border-radius:4px;background:white;color:#142b43;cursor:pointer}
.bs-city .city-controls button:disabled{opacity:.35;cursor:default}
.bs-city .city-controls svg{width:24px;height:24px}
.bs-city .city-controls .sector-position{display:inline;font-size:13px;color:#536171;margin-right:12px}
.bs-city .city-solutions{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:4px;padding:4px 4px 18px;overscroll-behavior-x:contain;scrollbar-width:thin}
.bs-city .city-solutions article{display:flex;flex-direction:column;min-width:0;padding:0;border:1px solid #cbd3dc;border-radius:6px;background:white;overflow:hidden;scroll-snap-align:start}
.bs-city .city-solutions article>img{display:block;width:100%;height:auto;aspect-ratio:1.65;object-fit:cover}
.bs-city .city-card-content{display:flex;flex-direction:column;flex:1;padding:24px}
.bs-city .city-solutions h3{font-size:22px;line-height:1.3}
.bs-city .city-solutions p{font-size:14px;line-height:1.75;margin-bottom:24px}
.bs-city .city-card-links{margin-top:auto}
.bs-city .city-section .city-card-links a{display:block;position:relative;padding:14px 22px 14px 0;border-top:1px solid #d9dfe6;text-decoration:none;line-height:1.5}
.bs-city .city-card-links a::after{content:'↗';position:absolute;right:0;top:14px}
.bs-city .city-section .city-card-links a:hover{text-decoration:underline}
.bs-city .city-controls button:focus-visible,.bs-city .city-solutions:focus-visible{outline:3px solid #e77350;outline-offset:3px}
.bs-city .city-card-links a:focus-visible{outline-offset:0}
@media(max-width:1000px){.bs-city .city-solutions{grid-auto-columns:calc((100% - 24px)/2)}}
@media(max-width:600px){.bs-city .city-solutions{grid-auto-columns:90%;gap:16px}.bs-city .city-card-content{padding:20px}.bs-city .city-solutions h3{font-size:21px}}
