.page-header {
    position: relative;
    display: flex;
    align-items: baseline;
    justify-content: space-between;
}

.page-header-no-flex {
    position: relative;
    /*display: flex;*/
    align-items: baseline;
    justify-content: space-between;
}

.page-header h1 {
    width: auto;
    margin: 20px 0 16px 0;
    padding: 0;
    line-height: 1.2;
}


@media (max-width:540px) {
    .page-header h1 {
        margin: 0 0 16px;
    }
}

.read-more-button, .show-all-button
{
	color: #2d80b1;	
}

.read-more-button:hover, .show-all-button:hover
{
	cursor:pointer;
}

nav.tab-group {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-around;
    color: #fff;
    border: solid 0 #fff
}

nav.tab-group>a {
    background-color: #2c80af;
}

nav.tab-group>a:hover {
    background-color: #6493af;
}

nav.tab-group a {
    display: block;
    flex: 1 1 auto;
    padding: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: center;
    color: inherit;
    margin: 4px;
    border-radius: 8px;
    border: 1px solid #2c80af;
}

@media (max-width:540px) {
    nav.tab-group {
        display: flex;
        flex-flow: row wrap;
        justify-content: space-between;
    }

    nav.tab-group a {
        flex: unset;
        width: 45%;
    }
}


nav.tab-group .kebab-vert {
    display: none;
    background-color: #3d88b2;
    margin-left: 2px
}

nav.tab-group .kebab-vert svg {
    display: block;
    width: 17px;
    height: 34px;
    padding: 6px;
    stroke: none;
    fill: #6cc0ea
}

@media (max-width:759px) {

    nav.tab-group a {
        line-height: 3.4rem;
    }
}

@media (min-width:760px) {
    nav.tab-group a {
        line-height: 5rem
    }
}

.details.ovr nav.tab-group a[data-tab=ovr],
.details.liv nav.tab-group a[data-tab=liv],
.details.hds nav.tab-group a[data-tab=hds],
.details.dem nav.tab-group a[data-tab=dem] {
    background-color: #fff;
    color: #2c80af;
    pointer-events: none
}

.hide-follow #follow-place {
    display: none
}

#follow-place {
    display: inline-flex;
    flex-flow: row;
    justify-content: center;
    align-items: center;
    min-width: 20px;
    padding: 0 12px;
    text-align: center;
    border-radius: 6px;
    color: #000;
    border: 1px solid #ccc;
    font-size: 1.8rem;
    white-space: nowrap;
    margin-left: 2rem;
}

#follow-place::before {
    content: '\2661'
}

#follow-place[data-followed]::before {
    content: '\2665'
}

#follow-place span {
    display: none;
    text-indent: 2px;
    font-size: 1.2rem
}

#follow-place[data-followed] span::after {
    content: 'ed'
}

@media (min-width:600px) {
    #follow-place span {
        display: initial
    }
}

nav.tab-group+.category-menu-new {
    margin-top: 10px
}

.category-menu-new {
    display: grid;
    grid-gap: .5rem 2rem;
    grid-auto-flow: column;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(5, 1fr);
    padding: .5rem;
    font-size: 1.4rem
}

@media (min-width:600px) {
    .category-menu-new {
        grid-template-columns: repeat(5, 1fr);
        grid-template-rows: repeat(2, 1fr)
    }
}

@media (min-width:780px) {
    .category-menu-new {
        grid-gap: .5rem 0;
        grid-template-columns: repeat(10, 1fr);
        grid-template-rows: repeat(1, 1fr)
    }
}

.category-menu-new a {
    display: flex;
    flex-flow: row nowrap;
    overflow: hidden
}

.category-menu-new a>* {
    font-weight: 400;
    font-style: normal;
    height: 24px;
    line-height: 24px;
    overflow: hidden
}

.category-menu-new a em {
    flex: 1 1 auto;
    white-space: nowrap;
    font-weight: 400
}

.category-menu-new a:hover em {
    text-decoration: underline
}

.category-menu-new a i {
    flex: 0 0 24px;
    min-width: 34px;
    border-radius: 100%;
    color: #fff;
    text-align: center;
    font-weight: 700
}

@media (max-width:540px) {
    .category-nav-container {
        overflow: scroll;
        margin-top: 1rem;
    }

    .category-menu-new {
        display: flex;
        width: max-content;
    }

    .category-menu-new a {
        flex-flow: column-reverse;
        align-items: center;
        min-width: 82px;
    }

    .category-menu-new a i {
        height: 48px;
        min-width: 48px;
        flex: 0 0 48px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 2rem;
    }
}

.category-menu-new a i:not([class]) {
    background-color: #2d80b1
}

@media (min-width:780px) {

    .category-menu-new a {
        flex-flow: column-reverse;
        align-items: center
    }

    .category-menu-new a em {
        flex: 0 0 25px
    }

    .category-menu-new a i {
        flex: 0 0 54px;
        width: 54px;
        line-height: 54px;
        font-size: 1.8rem;
        margin: 5px auto
    }

}

table.av-default {
    width: 100%;
    min-width: 40rem;
    text-align: right;
    background-color: #eaf1f7;
}

@media (min-width:480px) {
    table.av-default {
        min-width: unset
    }
}

table.av-default th,
table.av-default td {
    vertical-align: top;
    padding: 10px 7px
}

table.av-default th:first-child,
table.av-default td:first-child {
    text-align: left
}

table.av-default tr:not(.header):not(.summary) {
    border-bottom: solid 1px #e3e3e3
}

table.av-default tr.header {
    background-color: #fff;
    color: #000;
    font-weight: 700
}

table.av-default tr.header td {
    text-overflow: clip
}

table.av-default tr.header td sub {
    display: block;
    width: 100%;
    margin: -2px 0 2px 0;
    height: 11px;
    line-height: 8px;
    font-size: 1.1rem;
    text-transform: capitalize
}

table.av-default tr.summary {
    background-color: #d9e8ef;
    color: #333
}

table.av-default tr {
    margin: 8px;
    border-radius: 8px;
}

table.av-default tr:not(.header):not(.summary):hover {
    background-color: rgba(255, 255, 255, .7)
}

table.av-default caption {
    margin-top: 10px;
    font-size: 1.3rem;
    text-align: left
}

.has-own-city-last tr:last-child {
    background-color: #fff;
}

td.up em,
td.dn em,
td.upi em,
td.dni em {
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    min-width: 60px;
    max-width: 80px;
    font-style: normal;
    text-align: right
}

td.up em::before,
td.dn em::before,
td.upi em::before,
td.dni em::before {
    font-size: 1.5rem;
    line-height: 0
}

td.up em::before {
    content: '\25bc';
    color: #080
}

td.dn em::before {
    content: '\25b2';
    color: #d00
}

td.upi em::before {
    content: '\25bc';
    color: #d00
}

td.dni em::before {
    content: '\25b2';
    color: #080
}

div.av-chart {
    width: 100%;
    padding: 1rem;
    margin: 0
}

.nearby-widget {
    display: grid;
    grid-gap: 2px;
    grid-template-columns: 1fr minmax(320px, 40%);
    grid-template-rows: min-content 1fr;
    width: 100%;
    padding: 0;
    margin: 0;
    overflow: hidden;
    user-select: none
}

.nearby-widget__options {
    grid-column: 1/-1;
    display: grid;
    grid-auto-flow: column;
    grid-template-rows: 50px;
    grid-auto-columns: 1fr;
    padding: 1rem;
    background-color: #eaf1f7;
}

.nearby-widget__options input {
    display: none
}

.nearby-widget__options input:checked+label {
    background-color: #2d80b1;
    color: #fff
}

.nearby-widget__options label {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 5px;
    margin: 0;
    cursor: pointer;
    white-space: nowrap;
    border-radius: 8px;
}

.nearby-widget__options label:hover {
    background-color: #bfe2f7
}

.nearby-widget__map {
    height: 50vh;
    background-color: #f1f1f1
}

.nearby-widget__results {
    height: 50vh;
    overflow: hidden;
    display: flex;
    flex-flow: column
}

.nearby-widget__filter {
    position: relative;
    flex: 0 0 40px;
    display: flex;
    margin-bottom: 2px
}

.nearby-widget__filter::after {
    position: absolute;
    display: flex;
    align-items: center;
    height: 100%;
    top: 0;
    right: 7px;
    font-size: 1rem;
    color: #fff;
    content: '\25bc';
    pointer-events: none
}

.nearby-widget__filter select {
    display: block;
    margin: 0;
    padding: 0 7px;
    border: 0;
    border-radius: 0;
    width: 100%;
    height: inherit;
    background: #2d80b1;
    color: #fff;
    outline: 0;
    border: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.nearby-widget__filter select option {
    background: #2d80b1
}

.nearby-widget__places {
    flex: 1;
    display: flex;
    flex-flow: column;
    height: inherit;
    overflow: hidden;
    overflow-y: scroll
}

.nearby-widget__place:first-child {
    margin-top: 0
}

.nearby-widget__place {
    flex: 0 1 100%;
    display: grid;
    grid-template-columns: 30px 1fr 36px;
    grid-template-rows: 17px 13px 12px;
    grid-gap: 2px 10px;
    margin: 2px 0 0 0;
    padding: 10px 5px;
    background-color: #f1f1f1
}

.nearby-widget__place>* {
    text-decoration: none;
    font-weight: 400;
    font-style: normal;
    pointer-events: none
}

.nearby-widget__place:hover,
.nearby-widget__place:active {
    background-color: #f8f8ee
}

.nearby-widget__place i.pos {
    grid-row: 1/-1;
    grid-column: 1
}

.nearby-widget__place i.scr {
    grid-row: 1/-1;
    grid-column: 3;
    width: 36px;
    height: 36px;
    border-radius: 2px;
    overflow: hidden;
    font-size: 1.6rem;
    line-height: 36px;
    text-align: center;
    color: #fff
}

.nearby-widget__place em,
.nearby-widget__place u {
    grid-column: 2;
    height: 100%;
    overflow: hidden;
    white-space: nowrap;
    line-height: 100%
}

.nearby-widget__place em {
    grid-row: 1;
    font-weight: 700
}

.nearby-widget__place u {
    font-size: 1.2rem;
    color: #999
}

.nearby-widget__place u:empty {
    display: none
}

.nearby-widget__place u:nth-of-type(1) {
    grid-row: 2
}

.nearby-widget__place u:nth-of-type(2) {
    grid-row: 3
}

@media (max-width:699px) {
    #places-widget .nearby-widget__options {
        grid-template-rows: repeat(2, 30px);
        grid-template-columns: repeat(4, 1fr)
    }
}

@media (max-width:599px) {
    .nearby-widget__results {
        grid-column: 1/-1
    }

    .nearby-widget__map {
        display: none
    }
}

@media (max-width:399px) {
    #places-widget .nearby-widget__options {
        grid-template-rows: repeat(4, 30px);
        grid-template-columns: repeat(2, 1fr)
    }
}

.nearby-widget__pagin {
    flex: 0 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 2px 0 0 0
}

.nearby-widget__pagin>* {
    flex: 0 1 auto;
    text-align: center;
    font-weight: 700;
    font-style: normal;
    background-color: #f1f1f1;
    min-width: 4rem;
    height: 4rem;
    line-height: 4rem
}

.nearby-widget__pagin>b {
    font-size: 2rem;
    cursor: pointer
}

.nearby-widget__pagin>i {
    flex: 1 1 auto;
    margin: 0 2px
}

.key-findings {
    background-color: #eaf1f7;
    border-radius: 8px;
    padding: 4rem;	
}

.hero-overlay.key-findings {
    position: relative;
    padding: 4rem 4rem 8rem;
}

.hero-overlay.key-findings #city-scape {
    position: absolute;
    width: 133%;
    bottom: -2px;
    left: 33%;
    max-width: unset;
}

.key-findings.alternate {
    /* margin: 1rem 1rem 1rem auto; */
	margin: 1rem auto 1rem  1rem;
    background-color: #fff;
    width: 50%;
	opacity:0.95;
}


@media (max-width:540px) {
    .key-findings {
        padding: 2rem;
    }

    .key-findings.alternate {
        margin: 1rem;
        width: calc(100% - 2rem);
        margin-bottom: 100%;
    }

}

.key-findings h2 {
    margin: 0 auto;
    font-size: 1.8rem;
    font-weight: 500;
    margin-bottom: 3px
}

@media (min-width:760px) {
    .key-findings h2 {
        font-size: 2.7rem
    }
}

.key-findings ul {
    width: auto;
    margin: 0 auto;
    padding: 0;
    list-style: none;
    margin-top: 2rem;
}

.key-findings ul li {
    margin: 1rem 0 0 0;
    font-size: 1.7rem;
    padding: 0 0 7px 0;
    overflow: hidden;
    padding-left: 3rem;
    background: url(/images/city-check-mark.svg) no-repeat left 3px;
    background-size: 18px;
}

.key-findings ul li sub {
    top: 0;
    font-size: 1.2rem
}

.simple-bar-chart {
    display: grid;
    grid-auto-flow: row;
    grid-gap: 10px;
    align-items: end;
    margin: 15px 0 16px 0;
    padding: 20px 0 4px 4px;
    border: solid 1px #555;
    border-width: 0 0 1px 1px
}

.simple-bar-chart .col {
    position: relative;
    height: var(--h);
    margin: 0 0 0 0;
    padding: 0;
    background-color: #2d80b1
}

.simple-bar-chart .col::before,
.simple-bar-chart .col::after {
    position: absolute;
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    text-align: center;
    line-height: 1;
    height: 13px;
    width: 100%
}

.simple-bar-chart .col::before {
    top: -15px;
    content: var(--v)
}

.simple-bar-chart .col::after {
    bottom: -21px;
    content: var(--l)
}

span.read-more {
    display: inline-block;
    margin-top: 1rem;
    font-size: 1.2rem;
}

span.read-more a {
    display: inline
}

span.read-more.with-explore::before {
    content: 'Explore '
}

span.read-more.with-explore:empty {
    display: none
}

.link-tiles {
    display: grid;
    grid-gap: 10px;
    width: 100%;
    justify-items: stretch;
    align-items: end
}

.link-tiles .item {
    position: relative;
    display: none;
    width: 100%;
    padding-top: 67%;
    cursor: pointer;
    font-size: 0;
    border: solid 1px #ddd
}

.link-tiles b {
    position: absolute;
    display: block;
    bottom: 0;
    right: 0;
    left: 0;
    font-size: 1.4rem;
    background-color: rgba(0, 0, 0, .4);
    padding: 5px;
    color: #fff
}

.link-tiles img {
    position: absolute;
    display: inline-block;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover
}

@media (min-width:300px) {
    .link-tiles {
        grid-template-columns: repeat(1, 1fr)
    }

    .link-tiles .item:nth-child(-n+1) {
        display: block
    }
}

@media (min-width:440px) {
    .link-tiles {
        grid-template-columns: repeat(2, 1fr)
    }

    .link-tiles .item:nth-child(-n+2) {
        display: block
    }
}

@media (min-width:660px) {
    .link-tiles {
        grid-template-columns: repeat(3, 1fr)
    }

    .link-tiles .item:nth-child(-n+3) {
        display: block
    }
}

@media (min-width:880px) {
    .link-tiles {
        grid-template-columns: repeat(4, 1fr)
    }

    .link-tiles .item:nth-child(-n+4) {
        display: block
    }
}

.quick-search-hoods {
    padding: 1.5rem;
    background-color: #f1f1f1;
    margin-bottom: 1.5rem
}

.place-compare-container {
    width: 100%;
    margin: 0;
}


.place-compare-images>div {
    position: relative;
    margin-bottom: 1rem;
}

@media (min-width:540px) {
    .place-compare-images {
        display: flex;
        justify-content: space-between;
    }

    .place-compare-images>div {
        width: 49%;
    }
}


.place-compare-container b {
    font-size: 48px;
    color: #999;
    position: absolute;
    background: white;
    height: 72px;
    width: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
    left: calc(50% - 36px);
    top: calc(50% - 18px);
}

@media (max-width:540px) {
    .place-compare-container b {
        font-size: 36px;
        color: #999;
        position: absolute;
        background: white;
        height: 48px;
        width: 48px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 100%;
        left: calc(50% - 24px);
        top: calc(50% - 48px);
    }
}

.place-compare-container img {
    width: 100%;
    height: 100%;
    border-radius: 16px;
    object-fit: cover;
    filter: grayscale(1);
    height: 275px;
}

.place-compare-container img[data-valid] {
    filter: unset
}

.place-compare-container button {
    margin: 0 auto;
    width: 25rem;
	padding: 5px 0;
	height:auto;
    background-color: #2f81b1;
    color: #fff;
    display: block;
}

.place-compare-container .list-pos {
    position: absolute;
    top: 0;
    width: calc(100% - 2rem);
    margin: 1rem;
}

.place-compare-container .list-pos>* {
    width: 100%
}

.place-compare-container ul {
    position: absolute;
    display: none;
    z-index: 999999;
    width: 100%;
    border: solid 1px #d1d1d1;
    border-radius: 4px;
    padding: .6rem;
    margin: 0;
    background-color: #fff;
    list-style: none;
    top: -1.5rem;
    top: 38px;
    text-align: left
}

.place-compare-container ul:empty {
    display: none !important
}

.place-compare-container ul li {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0 .6rem;
    line-height: 2.8rem;
    border-radius: 3px;
    cursor: pointer
}

.place-compare-container ul li.h {
    background-color: rgba(96, 96, 96, .2) !important
}

.place-compare-container ul li:hover {
    background-color: rgba(128, 128, 128, .1)
}

.poll-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;

}

.poll-container>div {
    width: calc(50% - 2rem);
    margin: 1rem;
}



@media (min-width:800px) {
    .poll-container {}
}

.poll-container>h2 {
    width: 100%;
    margin-top: 4rem;
}

.poll-container>.under-link,
.mortgage-under-link
{
    grid-column: 1/-1;
    padding: 1rem;
    text-align: center;
    background-color: #eaf1f7;
    font-weight: 700;
	font-size:1.8rem;
    display: block;
    width: 100%;
}

.poll-container .poll {
    display: flex;
    flex-flow: column;
    justify-content: flex-start;
    align-items: stretch;
    overflow: hidden;
    margin: 0;
    padding: 0;
    user-select: none;
    padding: 1rem;
    background: #eaf1f7;
    border-radius: 8px;
}


.full-page-polls.poll-container .poll {
    width: 49%;
}

.poll-container .poll-title>b {
    background: url(/images/logo-accent.png) no-repeat 0 2px;
    background-size: 2.5rem;
    background-position: center left;
    padding: 0 0 0 3rem;
    font-size: 2.5rem;
    color: #2d80b1;
    font-weight: 500;
}

.poll-container .poll-title>b::after {
    content: 'Take the Poll';
    color: #555
}

.poll-results .poll-container .poll-title>b {
    display: none
}

.poll-container .poll>strong {
    min-height: 3rem;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 1.5rem
}

@media (min-width:768px) {
    .poll-container .poll>strong {
        font-size: 1.7rem
    }
}


@media (max-width:540px) {
    .poll-container>div {
        width: calc(100% - 2rem);
        margin: 1rem;
    }

    .poll-container .poll>strong {
        white-space: unset;
        margin-bottom: 1rem;
    }
}

.poll-container .poll input {
    position: absolute;
    clip: rect(0, 0, 0, 0)
}

.poll-container .poll label {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    min-height: 58px;
    margin: 0 0 6px 0;
    padding: 5px;
    background: linear-gradient(to right, var(--clr) 0%, var(--clr) var(--pct), transparent var(--pct)), #fff;
    font-weight: 400;
    overflow: hidden;
    border-radius: 8px;
}

.poll-container .poll:not([data-populated]) label {
    cursor: pointer
}

.poll-container .poll label:last-of-type {
    margin-bottom: 0
}

.poll-container .poll label>* {
    pointer-events: none
}

.poll-container .poll label span {
    padding: 0 5px;
    line-height: 1.3
}

.poll-container .poll label span.txt {
    flex: 1
}

.poll-container .poll label span.num {
    flex: 0;
    width: max-content;
    color: var(--clr);
    font-weight: 700;
    text-shadow: -1px -1px 0 rgba(255, 255, 255, .9), 1px -1px 0 rgba(255, 255, 255, .9), -1px 1px 0 rgba(255, 255, 255, .9), 1px 1px 0 rgba(255, 255, 255, .9)
}

.poll-container .poll label:nth-of-type(1) {
    --clr: #a1ba4c
}

.poll-container .poll label:nth-of-type(2) {
    --clr: #c4cf9d
}

.poll-container .poll label:nth-of-type(3) {
    --clr: #f8be72
}

.poll-container .poll label:nth-of-type(4) {
    --clr: #f27749
}

.poll-container .poll[data-state=voting] label:hover {
    background-color: #ccc
}

.poll-container .poll .extra {
    display: flex;
    justify-content: space-between;
    margin-top: .5rem;
    line-height: 2;
    font-size: 1.4rem
}

.poll-container .poll .extra>* {
    display: none
}

.poll-container .poll .view-poll::after {
    content: 'View results'
}

.poll-container .poll .vote-poll::after {
    content: 'Vote now'
}

.poll-container .poll .vote-done::after {
    content: 'Thanks for voting'
}

.poll-container .poll .total-cnt::before {
    content: 'Based on\a0'
}

.poll-container .poll .total-cnt::after {
    content: '\a0responses'
}

.poll-container .poll .view-poll,
.poll-container .poll .vote-poll {
    cursor: pointer;
    color: #2d80b1
}

.poll-container .poll[data-state=viewing][data-voted="1"] .vote-done {
    display: block
}

.poll-container .poll[data-state=viewing][data-voted="0"] .vote-poll {
    display: block
}

.poll-container .poll[data-state=viewing] .total-cnt {
    display: block
}

.poll-container .poll[data-state=voting][data-voted="0"] .view-poll {
    display: block
}

.poll-container .poll[data-state=voting][data-voted="1"] .view-poll {
    display: block
}

.poll-container .poll .rel-link {
    display: block;
    overflow: hidden;
    line-height: 1.2;
    font-size: 1.4rem
}

#locals-survey-form {
    display: flex;
    flex-flow: column;
    justify-content: flex-start;
    align-items: stretch;
    overflow: hidden;
    padding: 4rem;
    background-color: #eaf1f7;
    border-radius: 8px;
}


#locals-survey-form h2 {
    margin: 0
}

#locals-survey-form .instr {
    margin: 2rem 0;
    line-height: 1.3
}

#locals-survey-form .tags,
#locals-survey-form .av-range {
    margin-bottom: 1rem
}

#locals-survey-form .tags {
    display: grid;
    grid-gap: 10px
}

@media (min-width:750px) {
    #locals-survey-form .tags {
        grid-template-columns: repeat(3, 1fr);
    }
}

#locals-survey-form button {
    margin: 1.5rem auto;
    min-width: 17rem;
    background-color: #61a02a;
    color: #fff
}

#locals-survey-form span.err,
#locals-survey-form a {
    font-size: 1.3rem;
    text-align: center
}

#locals-survey-form span.err {
    color: #f55;
    font-weight: 700
}

#locals-survey-form span:empty {
    display: none
}

#locals-survey-form label {
    padding: .5rem 1rem;
    margin: 0;
    border: 1px solid rgba(187, 187, 187, .8);
    border-radius: 8px;
    background-color: #fff;
    cursor: pointer;
    font-weight: 400;
    text-align: center;
    font-size: 1.3rem;
    user-select: none
}

#locals-survey-form label:hover {
    background-color: #fcfcfc;
    border-color: rgba(150, 150, 150, .8)
}

#locals-survey-form input[type=checkbox] {
    position: absolute;
    clip: rect(0, 0, 0, 0)
}

#locals-survey-form input[type=checkbox]:checked+label {
    background-color: #efe
}

#locals-survey-form .av-range-pad {
    padding: 0 .7rem
}

#locals-survey-form .av-range .ticks {
    display: flex;
    justify-content: space-between;
    margin: 0 -10px;
    padding: 0 0
}

#locals-survey-form .av-range .ticks i {
    position: relative;
    flex: 0 0 47px;
    text-align: center;
    font-size: 1.2rem;
    font-style: normal;
    line-height: 1;
    padding: 5px 0 0 0;
    overflow: visible
}

#locals-survey-form .av-range .ticks i::before {
    display: block;
    position: absolute;
    content: '';
    height: 12px;
    border-left: solid 1px #ccc;
    left: 50%;
    top: -9px;
    z-index: 1
}

#locals-survey-form .av-range .ticks i:first-child {
    margin-left: 7px
}

#locals-survey-form .av-range .ticks i:last-child {
    margin-right: 9px
}

#locals-survey-form .av-range output {
    --tooltip: 0;
    flex: 0 0 100%;
    position: relative;
    display: block;
    margin: 0 15px;
    height: 0;
    counter-increment: num var(--tooltip);
    z-index: 30;
    pointer-events: none
}

#locals-survey-form .av-range output::after {
    position: absolute;
    display: inherit;
    width: 30px;
    text-align: center;
    top: 6px;
    z-index: 300;
    left: calc(var(--tooltip)*1% - 15px);
    font-size: 1.1rem;
    content: counter(num)
}

#locals-survey-form input[type=range] {
    position: relative;
    z-index: 5;
    display: block;
    -webkit-appearance: none;
    width: 100%;
    height: 30px;
    background: 0 0;
    margin: 0;
    padding: 0
}

#locals-survey-form input[type=range]:focus {
    outline: 0
}

#locals-survey-form input[type=range]::-webkit-slider-runnable-track {
    width: 100%;
    height: 12px;
    cursor: pointer;
    background: #54aee2;
    border-radius: 3px;
    margin: 9px 0 9px 0
}

#locals-survey-form input[type=range]::-webkit-slider-thumb {
    border: 3px solid #54aee2;
    border-radius: 50%;
    background: #fff;
    cursor: pointer;
    -webkit-appearance: none;
    margin-top: -9px;
    height: 30px;
    width: 30px
}

#locals-survey-form input[type=range]::-moz-range-track {
    width: 100%;
    height: 12px;
    cursor: pointer;
    background: #54aee2;
    border-radius: 3px
}

#locals-survey-form input[type=range]::-moz-range-thumb {
    border: 3px solid #54aee2;
    border-radius: 50%;
    background: #fff;
    cursor: pointer;
    height: 24px;
    width: 24px
}

#locals-survey-form input[type=range]::-ms-track {
    width: auto;
    background: 0 0;
    border-color: transparent;
    color: transparent
}

#locals-survey-form input[type=range]::-ms-fill-lower,
#locals-survey-form input[type=range]::-ms-fill-upper {
    height: 12px;
    cursor: pointer;
    border-radius: 3px;
    background: #54aee2
}

#locals-survey-form input[type=range]::-ms-thumb {
    border: 3px solid #54aee2;
    border-radius: 50%;
    background: #fff;
    cursor: pointer;
    height: 24px;
    width: 24px;
    margin-top: 0
}

#locals-survey-results {
    display: grid;
    grid-template-columns: min-content 1fr;
    grid-template-rows: min-content min-content max-content min-content;
    grid-gap: 10px;
    width: 100%;
    margin: 10px 0 0 0;
    padding: 30px 10px;
    font-size: 1.3rem;
    background-color: #eaf1f7;
    border-radius: 16px;
}

#locals-survey-results>strong {
    grid-column: 1/-1;
    text-align: center;
    font-size: 3rem;
    margin: 0 0 2rem 0
}

#locals-survey-results i,
#locals-survey-results b,
#locals-survey-results u {
    font-style: normal;
    font-weight: 400;
    text-decoration: none
}

#locals-survey-results .scores {
    grid-column: 1/-1;
    display: flex;
    flex-flow: row;
    justify-content: space-evenly;
    margin-bottom: 2rem
}

#locals-survey-results .scores>div {
    flex: 0 1 auto;
    min-width: 75px;
    max-width: 135px;
    width: 23vw;
    display: flex;
    flex-flow: column;
    justify-content: flex-start;
    align-items: stretch
}

#locals-survey-results .scores>div i {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 23vw;
    min-height: 75px;
    max-height: 135px;
    border-radius: 5px;
    font-size: 6rem;
    color: #fff
}

#locals-survey-results .scores>div b {
    font-size: 1.5rem;
    line-height: 2;
    text-align: center
}

#locals-survey-results .scores>div u {
    font-size: 1.2rem;
    line-height: 1;
    text-align: center
}


#locals-survey-results .scores>div u::after {
    font-weight: 400;
    content: ' votes'
}

#locals-survey-results .yaxis {
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    align-items: stretch;
    min-width: 120px;
    padding: 0 0 8px;
}

#locals-survey-results .yaxis i {
    width: 100%;
    margin: auto 0;
    line-height: 1.2;
    text-align: right
}

#locals-survey-results .xaxis {
    grid-column-start: 2;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    margin-right: 4rem;
    padding: 0 6px
}

#locals-survey-results .xaxis i {
    line-height: 1
}

#locals-survey-results .graph {
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    align-items: stretch;
    border: solid 0 #333;
    border-width: 0 0 1px 1px;
    margin-right: 4rem;
    padding: 3px 6px
}

#locals-survey-results .graph div {
    margin: 4px 0;
    background-color: #54aee2;
    line-height: 32px
}

#locals-survey-results .graph div i {
    display: inline-block;
    width: auto;
    margin-left: 100%;
    text-indent: 5px
}

#locals-survey-results .graph div i::after {
    content: '%'
}

#locals-survey-form[hidden="1"],
#locals-survey-results[hidden="1"] {
    display: none !important
}

#locals-survey-switcher {
    width: 100%;
    margin-top: .5rem;
    font-size: 1.4rem
}

#locals-survey-switcher .taker {
    color: #2d80b1;
    cursor: pointer
}

#locals-survey-switcher .taker,
#locals-survey-switcher .extra {
    display: inline-block;
    margin: 0 auto
}

.amenities-map .leaflet-popup-content-wrapper {
    border-radius: 0 3px 3px 0 !important;
    padding: 0 !important
}

.amenities-map .leaflet-popup-content {
    margin: 0 0 !important
}

.amenities-map .leaflet-popup-close-button {
    right: -3px !important;
    top: -2px !important
}

.amenities-map {
    position: relative;
    overflow: hidden;
    background-color: #f1f1f1;
    width: 100%;
    height: auto;
    min-height: 20rem;
    border: solid 1px #ddd
}

.amenities-map[data-waiting='1'] {
    background: url(/images/livability-ams-bg.jpg) no-repeat 50% 50%
}

.amenities-map[data-waiting='0'] .load-ams {
    display: none
}

.amenities-map[data-waiting='1'] .cat,
.amenities-map[data-waiting='1'] .map {
    display: none
}

.amenities-map .cat {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    border-bottom: solid 1px #ddd;
    pointer-events: none;
    user-select: none;
    text-align: center;
    font-size: 1.2rem
}

@media (min-width:560px) {
    .amenities-map .cat {
        font-size: 1.4rem
    }
}

@media (min-width:640px) {
    .amenities-map .cat {
        font-size: 1.5rem
    }
}

.amenities-map[data-loaded="0"] .cat::after {
    content: 'Loading amenities';
    color: #999;
    line-height: 4rem;
    margin: 0 auto
}

.amenities-map .cat div {
    flex: 1 1 auto;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    background-color: #f1f1f1;
    color: #3b94c9;
    padding: 0 2px;
    min-width: 3rem;
    min-height: 4rem;
    overflow: hidden
}

.amenities-map .cat div[data-checked="1"] {
    background-color: #c3e1ec;
    color: #555
}

.amenities-map[data-loaded="0"] .cat div {
    display: none
}

.amenities-map .cat div:hover {
    background-color: #fff;
    color: #111
}

.amenities-map .cat div:nth-child(n+2) {
    border-left: solid 1px #ddd
}

.amenities-map .cat div span {
    line-height: 1.1;
    pointer-events: auto;
    cursor: pointer
}

.amenities-map .cat div[data-checked="1"] span {
    pointer-events: none
}

.amenities-map .map {
    width: 100%;
    height: 32rem
}

@media (min-width:500px) {
    .amenities-map .map {
        min-height: 48rem
    }
}

.amenities-map button.load-ams {
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: #61a02a;
    color: #fff
}

.ams-icon {
    display: flex;
    justify-content: center;
    flex-direction: column;
    text-align: center;
    background: url(/images/ams-sprite.png) no-repeat 0 0;
    background-size: 24px 280px
}

.ams-popup {
    display: flex;
    flex-flow: row nowrap;
    padding: 14px 8px 8px 8px;
    padding: 0;
    min-width: 294px;
    color: #555;
    font-family: "Poppins";
}

.ams-popup img {
    flex: 0 0 auto;
    width: 100px;
    height: 100px
}

.ams-popup i.star {
    display: inline-block;
    background: url(/images/yelp-stars-sprite.png) no-repeat 0 0;
    width: 82px;
    height: 22px
}

.ams-popup i.star.s0 {
    background-position-y: 4px
}

.ams-popup i.star.s2 {
    background-position-y: -16px
}

.ams-popup i.star.s3 {
    background-position-y: -36px
}

.ams-popup i.star.s4 {
    background-position-y: -56px
}

.ams-popup i.star.s5 {
    background-position-y: -76px
}

.ams-popup i.star.s6 {
    background-position-y: -96px
}

.ams-popup i.star.s7 {
    background-position-y: -116px
}

.ams-popup i.star.s8 {
    background-position-y: -136px
}

.ams-popup i.star.s9 {
    background-position-y: -156px
}

.ams-popup i.star.s10 {
    background-position-y: -176px
}

.ams-popup a.logo {
    display: inline-block;
    background: url(/images/yelp-logo.png) no-repeat 0 0;
    width: 43px;
    height: 22px;
    margin-left: 5px
}

.ams-popup ul {
    flex: 1 1 auto;
    display: flex;
    flex-flow: column wrap;
    justify-content: space-between;
    line-height: 1;
    margin: 5px 20px 5px 8px;
    list-style: none;
    overflow: hidden
}

.ams-popup ul li {
    flex: 1 0 auto;
    margin: 0;
    min-height: 22px;
    max-height: 22.5px;
    line-height: 22px;
    white-space: nowrap
}

.ams-popup ul li a.title {
    font-size: 1.25em;
    height: inherit
}

.commute-container {
    width: 100%;
    padding: 1.5rem;
    background-color: #f1f1f1
}

.commute-container form {
    margin: 0 auto;
    text-align: center
}

.commute-container form>* {
    float: left;
    width: 100%
}

.commute-container form button {
    background-color: #61a02a;
    color: #fff
}

.commute-container table {
    table-layout: fixed;
    caption-side: bottom;
    height: auto;
    width: 100%;
    margin: 0;
    border-top: solid 1px #e1e1e1
}

.commute-container table td {
    transition: opacity .5s linear;
    opacity: 0
}

.commute-container table.animated td {
    opacity: 1
}

.commute-container table tr:first-child th:nth-child(n+2) {
    background: url(/images/sprites-commute.png) no-repeat 50% 100px;
    height: 60px
}

.commute-container table tr:first-child th.a {
    background-position: 50% -600px
}

.commute-container table tr:first-child th.b {
    background-position: 50% -700px
}

.commute-container table tr:first-child th.c {
    background-position: 50% -900px
}

.commute-container table tr:first-child th.d {
    background-position: 50% -1000px
}

.commute-container table tr:first-child th.e {
    background-position: 50% -1100px
}

@media (min-width:500px) {
    .commute-container table tr:first-child th.a {
        background-position: 50% 0
    }

    .commute-container table tr:first-child th.b {
        background-position: 50% -100px
    }

    .commute-container table tr:first-child th.c {
        background-position: 50% -300px
    }

    .commute-container table tr:first-child th.d {
        background-position: 50% -400px
    }

    .commute-container table tr:first-child th.e {
        background-position: 50% -500px
    }
}

.commute-container table tr:nth-child(n+3) th {
    text-align: left
}

.commute-container table tr:nth-child(n+3):nth-child(-n+4)>* {
    border-bottom-width: 1px
}

.commute-container table th {
    white-space: nowrap
}

.commute-container table th,
.commute-container table td {
    text-align: center;
    border-width: 0;
    padding: .5rem 0;
    overflow: hidden
}

.commute-container table caption {
    font-size: 1.2rem;
    padding-top: 1rem
}

.commute-container table .collapse {
    visibility: collapse;
    width: 0
}

@media (min-width:640px) {
    .commute-container form>* {
        width: 30%
    }

    .commute-container form input {
        margin-right: 5%
    }
}

@media (min-width:750px) {
    .commute-container table .collapse {
        visibility: visible;
        width: auto
    }
}

.commute-container+a {
    font-size: 1.3rem
}

.badges {
    position: relative;
    display: block;
    overflow: hidden;
    width: 100%;
    padding: 2rem 0;
}

.badges__overflow {
    width: 100%;
    overflow: hidden;
    user-select: none
}

@media (min-width:320px) {
    .badges__container {
        --ic: 1
    }
}

@media (min-width:450px) {
    .badges__container {
        --ic: 2
    }
}

@media (min-width:620px) {
    .badges__container {
        --ic: 3
    }
}

@media (min-width:820px) {
    .badges__container {
        --ic: 4
    }
}

.badges__container {
    position: relative;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    --uc: min(var(--ic), var(--cnt));
    --ml: calc((100% - var(--uc) * 176px + 1px) / (var(--uc) + 1));
    transition: transform 500ms ease
}

.badges__container a {
    flex: 0 0 auto;
    display: block;
    overflow: hidden;
    width: 174px;
    height: 144px;
    padding: 15px 0;
    border: solid 4px #eaf1f7;
    border-radius: 16px;
    margin-left: var(--ml);
    text-align: center
}

.badges__container a img {
    display: inline-block;
    width: auto;
    height: inherit;
    max-height: 100%;
    animation: forwards .5s delay-show
}

@keyframes delay-show {
    0% {
        transform: translateX(9999px)
    }

    99.9% {
        transform: translateX(9999px)
    }

    to {
        transform: translateX(0)
    }
}

.badges__overflow h2 {
    width: 100%;
    height: 2.7rem;
    padding: 0;
    line-height: 1;
}

.badges__overflow em {
    position: absolute;
    display: flex;
    align-items: center;
    top: 5.5rem;
    bottom: 2rem;
    overflow: hidden;
    font-style: normal;
    font-size: 65px;
    color: rgba(0, 0, 0, .05);
    pointer-events: none;
    cursor: default
}

.badges__overflow em:not(.disabled) {
    pointer-events: inherit;
    cursor: pointer;
    color: rgba(0, 0, 0, .25)
}

.badges__overflow em:not(.disabled):hover {
    color: rgba(0, 0, 0, .5)
}

.badges__overflow em:nth-of-type(1) {
    left: 5px
}

.badges__overflow em:nth-of-type(2) {
    right: 5px
}

.liv-box-container {
    display: grid;
    grid-auto-flow: column;
    grid-template-rows: 1fr 1fr;
    grid-gap: 20px
}

@media (min-width:640px) {
    .liv-box-container {
        grid-auto-flow: row;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: unset
    }
}

.liv-box-shield,
.liv-box-digest {
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    background-color: #f1f1f1;
    padding: 1rem 2rem
}

.liv-box-container span,
.liv-box-container strong {
    text-align: center
}

.liv-box-container strong {
    font-size: 2.3rem;
    margin-bottom: 1rem
}

.liv-box-shield span {
    text-transform: uppercase;
    font-weight: 700
}

.liv-box-shield span::after {
    content: ' livability score'
}

.liv-box-shield svg {
    max-width: 100%;
    width: 100%;
    height: auto;
    object-fit: cover
}

.liv-box-digest .simple-bar-chart {
    grid-template-columns: 1fr 1fr 1fr;
    list-style: none;
    height: 16rem;
    font-size: 1.2rem
}

.liv-header {
    width: 100%;
    font-size: 0;
    padding: 4rem 0 2.5rem;
    border-top: solid 2px #f1f1f1;
}

.liv-header a {
    color: #555;
}

.liv-header h2 {
    font-size: 3rem;
}

.liv-header>a>* {
    text-decoration: none;
    font-style: normal;
    display: inline-block;
    width: auto;
    white-space: nowrap;
}

.liv-header i {
    text-align: center;
    font-size: 3.2rem;
    font-weight: 400;
    color: #fff;
    border-radius: 8px;
    padding: 0rem 1rem;
    display: inline-block;
    font-style: normal;

    width: 64px;
    margin-right: 4px;

}

.liv-header strong {
    width: calc(100% - 5rem - 1rem);
    font-size: 1.8rem;
    line-height: 1.4;
    display:block;
}


.liv-header strong a {
    color: inherit
}

.liv-header small {
    width: calc(100% - 5rem - 1rem);
    height: 1.8rem;
    font-size: 1.3rem;
    line-height: 1
}

@media (max-width:540px) {
    .liv-header strong {
        width: 100%;
        font-size: 1.5rem;
        line-height: 1.4;
    }

    .liv-header>a>* {
        white-space: initial;
        width: 100%;
    }

    .liv-header i {
        text-align: center;
        font-size: 2.2rem;
        font-weight: 400;
        color: #fff;
        border-radius: 8px;
        padding: 0rem 1rem;
        display: inline-block;
        font-style: normal;
        width: 50px;
        margin-right: 4px;
    }

    .liv-header h2 {
        font-size: 2rem;
    }

}

@media (min-width:500px) {
    .liv-header strong {
        font-size: 1.6rem;
        line-height: 1.5;
        font-weight: 500;
    }

    .liv-header small {
        font-size: 1.4rem
    }
}

@media (min-width:540px) {
    .facts-box-container {
        display: flex;
    }

    .facts-box:nth-child(2) {
        margin: 0 2rem;
    }
}

.facts-box {
    border: solid 8px #eaf1f7;
    border-radius: 8px;
    width: 100%;
    margin: 0;
    padding: 1rem;
    display: block;
    color: #555;
}

@media (max-width:540px) {
    .facts-box {
        margin-top: 1rem;
    }
}


.facts-box .facts-box-head {
    white-space: nowrap;
    overflow: hidden;
    font-size: 1.8rem;
    line-height: 5rem;
    text-align: center;
    font-weight: 600;
    border-bottom: 1px solid #eee;
}

.facts-box .facts-box-body {
    padding: 2rem;
    text-align: center;
    color: #555
}

.facts-box .facts-box-body p {
    margin-top: 2rem;
}


.facts-box .facts-box-foot {
    flex: 0 0 2.5rem;
    padding: .5rem;
    text-align: center
}


.facts-box .facts-box-body em {
    position: relative;
    display: inline-block;
    width: 100%;
    font-size: 6rem;
    line-height: 1.9;
    font-style: normal;
}

@media (max-width:540px) {
    .facts-box .facts-box-body em {
        font-size: 4rem;
    }
}

.facts-box .facts-box-body em[data-subtext]::after {
    position: absolute;
    content: attr(data-subtext);
    font-size: 1.1rem;
    left: 0;
    right: 0;
    bottom: 0
}

.facts-box .arr::after {
    display: inline-block;
    font-size: 4.3rem;
    color: #999
}

.facts-box .arr.up::after {
    content: '\1f845'
}

.facts-box .arr.dn::after {
    content: '\1f847'
}

.hoods-by-list {
    display: grid;
    grid-template-columns: 1fr;
    grid-auto-flow: row;
    grid-gap: 2rem;
    padding: 2rem 0 4rem 0;
}

.hoods-by-list h2 {
    margin-bottom: 2rem
}

@media (min-width:660px) {
    .hoods-by-list {
        grid-template-columns: 1fr 1fr 1fr
    }

    .hoods-by-list h2 {
        grid-column: 1/-1
    }
}

.hbl-check {
    width: 18px;
    position: absolute;
    top: -11px;
    left: 50%;
    margin-left: -9px;
}

.hbl-icon {
    margin: 2rem 0;
    width: 84px;
}

.hoods-by-list a {
    position: relative;
    display: block;
    text-align: center;
    border: 2px solid #eaf1f7;
    border-radius: 16px;
    padding: 2rem 4rem 4rem;
    color: #000;
}

.hoods-by-list a:hover {
	background-color:#eaf1f7;
	transition: background-color 0.3s ease;
}

.hoods-by-list a i {
    margin: auto;
    display: block;
    top: -6px;
    left: 0;
    width: 3.6rem;
    height: 3.6rem;
    background: url(/images/hoods-by-sprite.png) no-repeat center 0
}

.hoods-by-list a.liv i {
    background-position-y: -19px
}

.hoods-by-list a.ams i {
    background-position-y: -59px
}

.hoods-by-list a.col i {
    background-position-y: -99px
}

.hoods-by-list a.cri i {
    background-position-y: -139px
}

.hoods-by-list a.edu i {
    background-position-y: -179px
}

.hoods-by-list a.emp i {
    background-position-y: -219px
}

.hoods-by-list a.hou i {
    background-position-y: -259px
}

.hoods-by-list a.wea i {
    background-position-y: -299px
}

.hoods-by-list a.rea i {
    background-position-y: -339px
}

.hoods-by-list a.dem i {
    background-position-y: -379px
}

.hoods-by-list a.rnt i {
    background-position-y: -259px
}

#city-widget-container {
    position: relative;
}

#city-widget>div>h2 {
    padding: 2rem;
    margin: 0;
    font-size: 2.5rem;
}



#city-widget {
    border: 1px solid #ccc;
    border-radius: 6px;
    z-index: 1000;
    background: white;	
}


#city-widget .city-widget-liv-score-head {
    display: flex;
    justify-content: space-between;
    background-image: url(/images/widget-scape.png);
    background-size: cover;
    background-position: bottom;
    background-repeat: no-repeat;
}

/* width */
#city-widget ::-webkit-scrollbar {
    width: 4px;
    border-radius: 2px;
}

/* Track */
#city-widget ::-webkit-scrollbar-track {
    background: #e3ecf8;
    border-radius: 2px;
}

/* Handle */
#city-widget ::-webkit-scrollbar-thumb {
    background: #b2c4df;
    border-radius: 2px;
}

/* Handle on hover */
#city-widget ::-webkit-scrollbar-thumb:hover {
    border-radius: 2px;
}


#city-widget .accordion-container {
    height: calc(550px - 8rem);
    overflow: hidden scroll;
}

#city-widget .ac {
    margin: 0;
    border: none;
}

#city-widget .ac .ac-trigger {
    font-family: 'poppins';
}

#city-widget .liv-header {
    padding: 0;
    margin: 0;
}

#city-widget .liv-header h2 {
    font-size: 1.7rem;
    padding: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0;
    font-weight: 500;
}

#city-widget .liv-header h2:hover {
    background-color:#eaf1f7;
    transition: background-color 0.3s ease;
}

#city-widget .liv-header img {
    width: 24px;
}

#city-widget .liv-header h2 span {
    width: 100%;
    margin-left: 8px;
    flex-shrink: 12;
}

#city-widget .liv-header i {
    text-align: center;
    font-size: 2rem;
    height: 42px;
    width: 42px;
    color: #fff;
    display: flex;
    border-radius: 50%;
    padding: 0rem 1rem;
    display: inline-flex;
    font-style: normal;
    align-items: center;
    justify-content: center;
    margin-right: 20px;
    flex-grow: 12;
}


#city-widget .facts-box-container {
    display: block;
}

#city-widget .facts-box-container small {
    display: block;
    border-top: 1px solid #ddd;
    padding-top: 1rem;
}

#city-widget .facts-box {
    border: none;
    padding: 1rem;
    background: #f3f3f3;
    margin: 1rem 0;
}

#city-widget .facts-box>div {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#city-widget #area-amenities-boxes {
    display: block;
}

#city-widget .area-amenity-category {
    width: 100%;
}

#city-widget .facts-box .facts-box-body {
    padding: 0;
    flex-direction: row-reverse;
    text-align: left;
    align-items: center;
}

#city-widget .facts-box .facts-box-body p {
    margin: 0;
    font-size: 1.2rem;
}

#city-widget .facts-box .facts-box-body em {
    width: 60px;
    font-size: 1.2rem;
    text-align: center;
}

#city-widget .facts-box .facts-box-head {
    font-size: 1.2rem;
    border-bottom: 0px solid transparent;
    line-height: 1;
    text-align: left;
}

#city-widget .widget-neighborhood-links {
    margin: 2rem 0;
    padding: 0;
    font-size: 1.2rem;
}

#city-widget .widget-neighborhood-links p {
    margin: 0;
}

#city-widget .widget-neighborhood-links a {
    color: #6bc3ff;
}

.city-widget-info-button {
    background-color: #029fec;
    border-radius: 50%;
    width: 14px;
    height: 14px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    font-size: 10px !important;
    cursor: pointer;
    margin-right: 0.5rem;
    margin-top: 0.5rem;
    position: relative;
    z-index: 2000;

}

.city-widget-info-text-box {
    position: absolute;
    left: 0;
    width: 318px;
    top: 2px;
    z-index: 1000;
    background: white;
    padding: 6px 26px 6px 6px;
    font-size: 12px !important;
    border-bottom: 1px solid #ddd;
    display: none;
}

.widget-indiv-entry {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #eee;
    border-radius: 4px;
    padding: .5rem;
    margin: .5rem 0;
    cursor: pointer;
}

.widget-entry i {
    width: 40px;
    color: #fff;
    text-align: center;
    font-style: normal;
    border-radius: 4px;
}




.liv-body>div {
    padding: 1rem;
}

#city-widget .liv-body>div {
    padding: 0 1rem 1rem;
}

.area-amenity-category {
    background-color: #eaf1f7;
    border-radius: 16px;
    padding: 1rem;
}



.pro-con-list .item {
   display: flex;
   align-items:center;
}						

.pro-con-list, 
.pro-con-list p, 
.pro-con-list span {
	list-style: none;
	margin:0; padding:0;
}

.pro-con-list span
{
	padding-left:10px;
	font-size:2rem;
	
}

.pro-con-list li{						  
	margin-right: 20px;
	width: 100%;						  
	border-radius: 8px;
	padding: 1rem 0rem 1.5rem 0rem;							
}

.pro-con-list img {
  display:block;
  float:left;
  margin-right:10px;
  width:24px; height:24px;
}

.pro-con-category {
	background-color: #eaf1f7;
	border-radius: 16px;
	padding: 1rem;
}

.pro-con-category .title
{
	text-align: center;	
	font-size:2rem;
	font-weight:900;
	background: #fff;
	border-radius: 8px;
	padding: 1rem;
}

.pro-con-category span
{
	display:block;
}

.area-amenity-category span
{
	display:block;
}

@media (min-width:540px) {
    #area-amenities-boxes {
        display: flex;
        justify-content: space-between;
    }

    .area-amenity-category {
        width: 31%;
    }
	
	.pro-con-category {
		width: 49%;
	}
}

@media (max-width:540px) {
    .area-amenity-category {
        margin-top: 1rem;
    }
	
	.pro-con-category {
		margin-top: 1rem;
	}
}

.area-amenity-category h3 {
    background: #fff;
    border-radius: 8px;
    padding: 1rem;
}


#city-widget .amenity-line {
    padding: .5rem;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
    overflow: hidden;
    display: flex;
    justify-content: space-between;
    background-color: #eee;
    margin: .5rem 0;
    font-size: 12px;
}

.amenity-line.hidden-amenity {
    display: none !important;
}

.amenity-popup-icon {
    font-size: 12px;
    width: 216px;
    font-family: 'Poppins' !important;
}

.amenity-popup-icon .leaflet-popup-content-wrapper {
    border-radius: 3px !important;
}

.amenity-popup-icon .leaflet-popup-content {
    margin: 16px 16px 10px 16px !important;
    line-height: 1.5 !important;
    color: #757575;
}

.amenity-line>img {
    width: 16px;
    margin-right: 8px;
}


.amenity-marker-icon {
    background: #537BBE;
    margin: -16px 0 0 -16px !important;
    padding: 3px;
    border-radius: 100%;
    border: 2px solid #537BBE;
}

.amenity-marker-icon:hover {
    border: 2px solid white !important;
}


.area-hoods-content h3 {
    margin-top: 2rem;
}

article.state-faq section {
	margin-top:2rem;	
}

.sfs__score-fact-shard {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    padding: 10px;
    border: 8px solid #e8eff5;
    border-radius: 8px;
}

.sfs__score {
    flex: 0 0 auto;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 48px;
    color: #fff;
    width: 96px;
    height: 96px;
    border-radius: 8px;
}

.sfs__score::after {
    position: absolute;
    content: 'RATING';
    top: 16px;
    left: 0;
    right: 0;
    text-align: center;
    font-size: 9px;
    opacity: 60%
}

.sfs__fact {
    display: flex;
    width: min-content;
    justify-content: center;
    align-items: center;
}

.sfs__fact em {
    height: 54px;
    font-size: 33px;
    font-style: normal;
    letter-spacing: -1px;
    margin-right: 8px;
}

.sfs__fact svg {
    width: 16px;
    height: 26px;
    overflow: hidden;
    margin-left: 3px;
    transform: translateY(1px);
    stroke: none
}

.sfs__fact svg.pos {
    fill: #84983b
}

.sfs__fact svg.neg {
    fill: #e9502d
}

.sfs__find {
    background-color: #61a02a;
    color: #fff;
    cursor: pointer;
    padding: 8px 16px;
    border-radius: 8px;
}

.sfs__find.rlt {
    background-color: #f4f4f4;
    color: #000;
}

.sfs__find:hover {
    color: #fff
}

@media (max-width:540px) {

    .sfs__fact,
    .sfs__score {
        width: 100%;
        margin-bottom: 1rem;
    }

    .sfs__find {
        margin: auto;
    }

    .sfs__fact .text {
        width: 100%;
    }

    .sfs__score-fact-shard {
        padding: 3rem;
        flex-wrap: wrap;
    }

}


.sfs__fact .text {
    margin: 0 .5rem;
}

.sfs__fact .top-text {
    line-height: 1.2;
    font-size: 12px;
    display: block;
    white-space: nowrap;
}

.sfs__fact .bottom-text {
    line-height: 1.2;
    font-size: 14px;
    font-weight: 600;
    display: block;
    white-space: nowrap;
}

.hood-popup-icon {
    font-family: 'Poppins' !important;
    text-align: center;
}


.cw-score {
    line-height: .5 !important;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}

.cw-score-numerator {
    font-size: 24px;
    margin-top: 8px;
}

.cw-score-denominator {
    font-size: 9px;
}






@media (min-width:540px) {
    #city-widget {
        width: 320px;
        margin:4rem 12rem ; /*CHANGED margin: 4rem*/
        position: absolute;
        top: 0;
    }

    .hood-map-legend {
        float: left;
		margin-left:8rem; /*CHANGED added this line*/
    }

    #proximitiiMap-brand {
        float: right;
        margin-top: 3px;
        margin-right: 3px;
    }
}

@media (max-width:540px) {
    #city-widget-container {
        display: flex;
        flex-direction: column-reverse;
    }
    #city-widget {
        width: 100%;
    }

    #side-sticky-menu {
        display: none;		
    }

    .city-widget-liv-score-head {
        width: 100%;
    }

    #city-widget .accordion-container {
        height: 100%;
        overflow: unset;
    }

    .hood-map-legend {
        padding:0;
        justify-content: center;
    }
    #proximitiiMap-brand {
        display: block;
        text-align: center;
        margin-top: 6px;
    }
    #city-widget>div>h2 {
        flex-grow: 10;
    }
}




.amenity-page-line:nth-child(2n+1) {
    background: #fff;
    border-radius: 8px;
}

.amenity-page-line {
    padding: 1rem;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
    overflow: hidden;
}