.city-hero-title{font-size:2.7rem;font-weight:700;color:var(--tide-yellow);margin-bottom:.5rem}.city-stats-card{background:transparent;padding:1.5rem 0;margin:2rem auto 0;max-width:800px}.filters-section{background:transparent;margin:3rem 0;padding:2rem 0}.filters-title{text-align:center;font-size:1.3rem;font-weight:700;color:var(--tide-blue);margin-bottom:1.5rem;letter-spacing:.03em}.filters-grid{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.filter-button{background:#3355991a;color:var(--tide-blue);border:2px solid transparent;padding:.7rem 1.3rem;border-radius:20px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block}.filter-button:hover,.filter-button.active{background:var(--tide-blue);color:var(--tide-yellow);border-color:var(--tide-blue);transform:translateY(-2px);box-shadow:0 4px 12px #33559940}.no-data-section{padding:3rem 0}.no-data-card{background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;padding:2rem 2.5rem;text-align:center}.no-data{font-size:1.2rem;color:#4a5568;font-weight:500;margin:0}.laundromats-title{text-align:center;color:var(--tide-blue);font-size:2.2rem;font-weight:700;margin-bottom:1.5rem;text-shadow:0 2px 4px rgba(0,0,0,.08);border-bottom:1.5px solid rgba(255,136,77,.12);padding-bottom:.5rem}.city-hero{background:linear-gradient(135deg,#335599f2,#1a4a8dfa,#5fb76bf2);color:var(--tide-yellow);padding:4rem 0 3rem;text-align:center;margin-bottom:3rem}.city-hero .container{position:relative;z-index:2}.city-hero h1,.city-hero-title{color:#ebc11c!important;margin-bottom:.5rem;font-weight:700;font-size:2.7rem}.city-subtitle{color:var(--tide-yellow);font-size:1.1rem;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.1em;font-weight:600}.city-overview{color:var(--tide-yellow);font-size:1.1rem;line-height:1.6;max-width:700px;margin:0 auto 2rem}.city-main{color:var(--text-primary);background-color:var(--bg-primary)}.city-main h1,.city-main h2,.city-main h3{color:var(--tide-blue)!important}.city-main p,.city-main li{color:var(--text-primary)!important}.city-main .subtitle{color:var(--text-secondary)!important}.city-main .laundromat-card h3{color:var(--tide-blue)!important}.city-main .laundromat-card p{color:var(--text-primary)!important}.city-subtitle{font-size:1.2rem;color:var(--text-secondary)!important;margin-bottom:2rem;text-shadow:none;font-weight:600}.city-overview{max-width:700px;margin:0 auto 2rem;font-size:1.1rem;line-height:1.6;color:var(--text-primary)!important;text-shadow:none;font-weight:500}.city-stats{display:flex;flex-direction:row;justify-content:center;align-items:stretch;gap:2.5rem;margin-top:1rem}.city-stats .stat-item{text-align:center;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center}.city-stats .stat-number{font-size:2rem;font-weight:700;color:var(--tide-yellow)!important;margin-bottom:.25rem;display:block}.city-stats .stat-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--tide-yellow)!important;font-weight:600}.laundromats-section{padding:3rem 0}.laundromats-section h2{text-align:center;color:var(--tide-blue);font-size:2rem;font-weight:700;margin-bottom:2rem}.laundromats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:2rem;margin-top:2rem;padding:0;list-style:none}.laundromat-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 4px 12px #00000014;transition:all .3s ease;text-decoration:none;color:inherit;display:block;border:2px solid transparent}.laundromat-card:hover:before{transform:translate(0)}.laundromat-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 16px 40px #33559926,0 4px 8px #00000014;border-color:var(--tide-blue);background:linear-gradient(135deg,#fff,#3355990d)}.laundromat-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.2rem;gap:1rem}.laundromat-name{color:var(--tide-blue);font-size:1.35rem;font-weight:700;margin:0;letter-spacing:-.02em;line-height:1.3;flex:1;text-decoration:none}.status-badge{padding:.4em .8em;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;flex-shrink:0;transition:all .2s ease}.status-open{background:#5fb76b26;color:var(--tide-green);border:1px solid rgba(95,183,107,.3)}.status-closed{background:#e53e3e26;color:#e53e3e;border:1px solid rgba(229,62,62,.3)}.status-unknown{background:#ff884d26;color:var(--tide-orange);border:1px solid rgba(255,136,77,.3)}.laundromat-address{color:#4a5568;font-size:.95rem;margin-bottom:1.5rem;line-height:1.5}.laundromat-features{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.feature-tag{background:#3355991a;color:var(--tide-blue);padding:.4em .8em;border-radius:12px;font-size:.8rem;font-weight:500;border:1px solid rgba(51,85,153,.2);transition:all .2s ease}.feature-tag .emoji{font-size:1.5em;vertical-align:middle;margin-right:.2em}.feature-tag:hover{background:var(--tide-blue);color:var(--tide-yellow);transform:translateY(-1px)}.laundromat-rating{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.rating-stars{color:#fbbf24;font-size:1.1rem}.rating-value{color:var(--tide-blue);font-weight:600}.rating-count{color:#666;font-size:.9rem}.laundromat-hours{font-size:.9rem;color:#4a5568;margin-bottom:1rem}.laundromat-meta{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e2e8f0;font-size:.85rem;color:#666}.distance-info{color:var(--tide-green);font-weight:600}.last-updated{color:#9ca3af}.filters-section{background:transparent;padding:2rem 0;margin:2rem 0}.filters-grid{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:1rem}.filter-button{background:#3355991a;color:var(--tide-blue);border:1px solid rgba(51,85,153,.2);padding:.6rem 1.2rem;border-radius:20px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-block}.filter-button:hover,.filter-button.active{background:var(--tide-blue);color:var(--tide-yellow);transform:translateY(-2px)}.neighborhood-section{background:linear-gradient(135deg,#ff884d0f,#b494e01a,#5fb76b0f);padding:4rem 0;margin:3rem 0;border-radius:18px;box-shadow:0 8px 32px #0000000f,inset 0 0 0 1px #fff6}.neighborhoods-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:2rem}.neighborhood-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 4px 16px #0000000f;text-align:center;transition:transform .2s ease}.neighborhood-card:hover{transform:translateY(-6px)}.neighborhood-icon{font-size:2.5rem;color:var(--tide-orange);margin-bottom:1rem;display:block}.neighborhood-name{color:var(--tide-blue);font-size:1.2rem;font-weight:700;margin-bottom:.5rem}.neighborhood-count{color:#4a5568;font-size:.9rem;margin-bottom:1rem}.neighborhood-description{color:#666;font-size:.9rem;line-height:1.5}.local-services{background:#fff;padding:4rem 0;margin:2rem 0;border-radius:16px;box-shadow:0 6px 20px #0000000f}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:2rem}.service-item{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:#33559908;border-radius:12px;transition:background .2s ease}.service-item:hover{background:#33559914}.service-icon{font-size:2rem;color:var(--tide-blue);flex-shrink:0}.service-content h4{color:var(--tide-blue);font-size:1.1rem;font-weight:600;margin:0 0 .25rem}.service-content p{color:#4a5568;font-size:.9rem;margin:0;line-height:1.4}@media (max-width: 768px){.city-hero{padding:3rem 0 2rem}.city-hero h1{font-size:2rem}.city-subtitle{font-size:1.1rem}.city-overview{font-size:1rem}.city-stats{flex-direction:column;gap:1.5rem;align-items:center}.laundromats-grid{grid-template-columns:1fr;gap:1.5rem}.laundromat-card{padding:1.5rem;border-radius:12px}.laundromat-header{flex-direction:column;align-items:flex-start;gap:.5rem}.laundromat-name{font-size:1.2rem}.neighborhoods-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.services-grid{grid-template-columns:1fr;gap:1rem}.filters-grid{justify-content:flex-start}}@media (max-width: 480px){.neighborhoods-grid{grid-template-columns:1fr}.city-stats{gap:1rem}.city-stats .stat-number{font-size:1.8rem}.laundromat-features{gap:.25rem}.feature-tag{font-size:.75rem;padding:.25em .6em}}
