.neighborhood-hero{padding:28px 0 80px}.neighborhood-stage{max-width:1320px}.map-frame{position:relative;overflow:hidden;border-radius:26px;background:#e9eee7;border:1px solid var(--line)}.neighborhood-map{display:block;width:100%;height:auto}.map-controls{position:absolute;bottom:14px;left:20px;right:20px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:11px;color:#52695c}.map-controls>span{background:#fcfcf8e8;padding:8px 12px;border-radius:20px}.map-pause{border:1px solid #d8dfd5;border-radius:20px;background:#fcfcf8;color:#203e36;font:inherit;padding:9px 12px;cursor:pointer;min-height:36px}.map-pause span{margin-left:7px}.neighborhood-copy{text-align:center;padding-top:38px;max-width:1040px}.neighborhood-copy h1{font-size:clamp(44px,5vw,76px);line-height:1.07;letter-spacing:-3.3px;margin:0 auto 22px;max-width:960px}.neighborhood-copy .lead{max-width:670px;margin:0 auto;font-size:18px;line-height:1.65}.neighborhood-copy .hero-actions{justify-content:center;margin-top:26px}.neighbor .leg{transform-box:fill-box;transform-origin:50% 0;animation:neighbor-step .65s ease-in-out infinite alternate}.neighbor .leg.two{animation-delay:-.65s}.neighbor[data-neighbor=older] .leg{animation-duration:1.1s}.neighbor .balloon{transform-box:fill-box;transform-origin:center bottom;animation:balloon-drift 3s ease-in-out infinite alternate}.neighbor .dog-companion{animation:dog-sniff 4s ease-in-out infinite}.map-frame[data-paused=true] .neighbor *{animation-play-state:paused}.neighborhood-copy h1,.neighborhood-copy .lead,.neighborhood-copy .hero-actions{animation:none;opacity:1;transform:none;filter:none}@keyframes neighbor-step{from{transform:rotate(-18deg)}to{transform:rotate(18deg)}}@keyframes balloon-drift{from{transform:rotate(-7deg)}to{transform:rotate(8deg)}}@keyframes dog-sniff{0%,70%,100%{transform:translate(36px,16px) rotate(0)}80%,90%{transform:translate(36px,18px) rotate(9deg)}}@media(max-width:760px){.neighborhood-hero{padding-top:20px;padding-bottom:55px}.neighborhood-stage{width:100%;padding:0 16px}.map-frame{border-radius:18px}.neighborhood-map{width:180%;max-width:none;margin-left:-40%;height:290px}.map-controls{bottom:10px;left:10px;right:10px;font-size:10px}.map-controls>span{max-width:145px;line-height:1.3}.map-pause{min-height:40px}.neighborhood-copy{padding-top:30px}.neighborhood-copy h1{font-size:43px;letter-spacing:-1.9px;line-height:1.1}.neighborhood-copy .lead{font-size:16px}.neighborhood-copy .hero-actions{gap:20px;flex-wrap:wrap;margin-top:24px}}@media(prefers-reduced-motion:reduce){.neighbor *{animation:none!important}}
/* Storefront story: a squarer map, faces, and a short flag-placement sequence. */
.neighborhood-stage{max-width:1010px}.map-frame{aspect-ratio:4/3}.neighborhood-map{width:100%;height:100%;margin:0}.map-controls{justify-content:center;pointer-events:none}.map-controls>span{font-size:12px}.store-flag .flag-arrival{opacity:0;transform:translateY(-45px) rotate(-12deg);transform-box:fill-box;transform-origin:center bottom}.flag-placed .flag-arrival{animation:place-store-flag 1.2s cubic-bezier(.22,.8,.3,1) forwards}.map-frame[data-paused=true] *{animation-play-state:paused}.map-frame[data-story-phase=complete] .flag-arrival{opacity:1;transform:none;animation:none}@keyframes place-store-flag{0%{opacity:0;transform:translateY(-45px) rotate(-12deg)}45%{opacity:1}70%{transform:translateY(3px) rotate(4deg)}100%{opacity:1;transform:none}}@media(max-width:760px){.neighborhood-map{width:100%;height:100%;margin:0}.map-frame{aspect-ratio:1/1}.neighborhood-stage{max-width:650px}.map-controls>span{max-width:none;font-size:10px}.map-controls{bottom:8px}.neighborhood-copy h1{font-size:40px}}@media(prefers-reduced-motion:reduce){.store-flag .flag-arrival{opacity:1;transform:none;animation:none!important}}
/* Wide looping neighborhood, without labels or an end-state crowd. */
.neighborhood-stage{max-width:1320px}.map-frame{aspect-ratio:20/7}.neighborhood-map{width:100%;height:auto}.store-flag{color:#203e36}.store-flag .flag-arrival path{fill:#203e36}.map-frame[data-story-phase=reset] .flag-arrival{animation:none;opacity:0;transform:translateY(-45px)}@media(max-width:760px){.map-frame{aspect-ratio:20/7}.neighborhood-map{width:100%;height:auto;margin:0}}

.neighbor .leg{animation-duration:var(--walk-beat,.65s)}.neighbor .leg.two{animation-delay:calc(var(--walk-beat,.65s) * -1)}

/* Alternating planted steps and lifted shoes; bodies stay grounded. */
.neighbor .leg{animation-name:walking-step;animation-direction:normal;animation-duration:calc(var(--walk-beat,.65s)*2);animation-timing-function:linear}
.neighbor .leg.two{animation-delay:calc(var(--walk-beat,.65s)*-1)}
@keyframes walking-step{0%,100%{transform:rotate(-22deg) translateY(0)}45%{transform:rotate(22deg) translateY(0)}65%{transform:rotate(12deg) translateY(-3px)}85%{transform:rotate(-15deg) translateY(-2px)}}
.store-fabric{transform-box:fill-box;transform-origin:left top}
.flag-placed .store-fabric{animation:store-wind 2.3s ease-in-out 1.2s infinite}
@keyframes store-wind{0%,100%{transform:skewY(0deg) scaleX(1)}25%{transform:skewY(-7deg) scaleX(.9)}55%{transform:skewY(5deg) scaleX(.98)}80%{transform:skewY(-3deg) scaleX(.94)}}
@media(prefers-reduced-motion:reduce){.store-fabric{animation:none!important}}
/* The neighborhood is an introduction, not a full-screen hero on laptops. */
.neighborhood-hero{padding:12px 0 4px}.neighborhood-stage{max-width:860px}.map-frame{border-radius:20px}
@media(max-width:760px){.neighborhood-stage{width:100%;max-width:520px;padding-inline:22px}.neighborhood-hero{padding:8px 0 0}.map-frame{border-radius:13px}}

.search-first{min-height:calc(100svh - 125px);align-items:center;padding-bottom:60px}.search-first h2{font-size:clamp(38px,4.2vw,62px);line-height:1.08}.neighborhood-copy{padding-bottom:55px}.neighborhood-copy h1{font-size:clamp(38px,4.2vw,62px)}@media(max-width:760px){.search-first{min-height:calc(100svh - 100px)}.search-first h2{font-size:42px}.neighborhood-copy h1{font-size:38px}}

.hero-option-links{display:flex;gap:14px;margin-left:auto;font-size:11px}.hero-option-links a{text-decoration:underline;text-underline-offset:3px}.map-first-copy{display:block;padding-top:30px;padding-bottom:45px}.map-first-copy .lead{margin-inline:auto}.map-first-search{max-width:600px;padding-bottom:65px}.map-first-copy .hero-actions{justify-content:center}@media(max-width:760px){.preview-bar{flex-wrap:wrap}.hero-option-links{font-size:10px;gap:10px}.map-first-copy{padding-top:25px}.map-first-search{padding-bottom:40px}}

.hero-option-links{margin-right:16px}
