/* Shared community redesign. Extends the Buy and Sell design system. */
.city-page{overflow-x:clip}
.city-page .page-hero__inner{min-height:650px}
.city-page .page-hero h1{font-size:clamp(40px,4.25vw,61px)}
.city-page .page-hero__sub{max-width:540px}
.city-page .page-hero__media img{object-position:center}
.city-page .page-hero--photo .page-hero__veil{background:linear-gradient(90deg,rgba(0,27,55,.94) 0%,rgba(0,27,55,.76) 45%,rgba(0,27,55,.38) 100%)}
.city-page .page-hero--pattern .page-hero__media img{opacity:.42}
.city-page .page-hero--pattern .page-hero__veil{background:linear-gradient(90deg,rgba(0,27,55,.95),rgba(0,27,55,.72))}
.city-page .city-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.city-page .city-hero-actions .pill{min-height:46px;padding:12px 19px;font-size:11px;letter-spacing:.065em}
.city-page .city-hero-actions .pill--gold{box-shadow:0 8px 24px rgba(0,20,42,.22)}
.city-page .city-hero-phone{display:inline-flex;align-items:center;gap:7px;min-height:48px;margin-top:19px;color:#e5ecf3;font-size:15px;text-underline-offset:5px}
.city-page .city-hero-phone svg{width:17px;height:17px;flex:none}
.city-page .lead-card{border-radius:4px}
.city-page .lead-card__intro{margin-bottom:19px}
.city-page .lead-card__intro h2{font-size:29px;line-height:1.2}
.city-page .city-form-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:-4px 0 24px;border-bottom:1px solid rgba(0,35,73,.18)}
.city-page .city-form-tab{min-height:48px;padding:10px 8px;border:0;border-bottom:2px solid transparent;background:transparent;color:#5c6872;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}
.city-page .city-form-tab[aria-selected="true"]{color:var(--navy);border-bottom-color:var(--gold)}
.city-page .city-form-tab:hover{color:var(--navy)}
.city-page .city-service-sections{background:var(--cream-soft)}
.city-page .city-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.city-page .city-service-card{padding:45px;background:#fff;border-top:2px solid var(--gold)}
.city-page .city-service-card h2{font-size:38px;margin-bottom:22px}
.city-page .city-service-card p{font-size:17px;color:var(--ink-soft);line-height:1.75}
.city-page .city-checklist{list-style:none;padding:0;margin:28px 0 30px;display:grid;gap:17px}
.city-page .city-checklist li{position:relative;padding-left:27px;font-size:16px;line-height:1.65}
.city-page .city-checklist li:before{content:"";position:absolute;left:0;top:.7em;width:12px;height:2px;background:var(--gold)}
.city-page .city-service-card .pill{font-size:12px}
.city-page .city-neighborhoods{background:var(--cream)}
.city-page .city-neighborhoods .center .section-lead{max-width:650px}
.city-page .city-neighborhood-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:42px}
.city-page .city-neighborhood-card{background:#fff;padding:27px 27px 24px;border-bottom:2px solid var(--gold);display:flex;flex-direction:column;align-items:flex-start;min-height:210px}
.city-page .city-neighborhood-card h3{font-size:25px;line-height:1.2;margin-bottom:13px}
.city-page .city-neighborhood-card p{font-size:15px;color:var(--ink-soft);line-height:1.65;margin-bottom:17px}
.city-page .city-neighborhood-card .text-link{margin-top:auto;font-size:13px;min-height:40px}
.city-page .city-market-notes{background:linear-gradient(110deg,rgba(246,241,232,.96),rgba(255,255,255,.92)),url('/assets/sections/blue-marble-1440.webp') center/cover no-repeat}
.city-page .city-notes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.city-page .city-note{padding-top:24px;border-top:1px solid var(--gold)}
.city-page .city-note .eyebrow{margin-bottom:14px}
.city-page .city-note h3{font-size:28px;margin-bottom:16px}
.city-page .city-note p{font-size:15px;color:var(--ink-soft);line-height:1.75}
.city-page .city-note a{display:inline-block;margin-top:20px;font-size:14px;text-underline-offset:5px}
.city-page .city-faq-details{border-bottom:1px solid var(--line)}
.city-page .city-faq-details summary{list-style:none;position:relative;cursor:pointer;padding:23px 48px 23px 0;font:400 22px/1.4 var(--font-display)}
.city-page .city-faq-details summary::-webkit-details-marker{display:none}
.city-page .city-faq-details summary:after{content:'+';position:absolute;right:7px;top:23px;font:400 24px var(--font-body);color:var(--gold)}
.city-page .city-faq-details[open] summary:after{content:'-'}
.city-page .city-faq-details p{padding:0 40px 24px 0;font-size:16px;color:var(--ink-soft)}
.city-page #city-testimonial.testimonial{background:#002349 url('/assets/sections/navy-pattern-1440.webp') center/cover no-repeat;color:#fff;padding:65px 7%}
.city-page #city-testimonial .testimonial-inner{box-sizing:border-box;width:100%;max-width:940px;margin:0 auto;padding:35px 65px 40px;background:rgb(0 23 48 / .52)}
.city-page #city-testimonial h2{font-size:31px;color:#fff;text-align:center;margin-bottom:22px}
.city-page #city-testimonial .testimonial-quote{margin:0 auto;text-align:left}
.city-page #city-testimonial .quote-mark{display:block;color:#cfdae6;font-size:48px;height:34px;line-height:1;font-family:Georgia,'Times New Roman',serif}
.city-page #city-testimonial blockquote{margin:0}
.city-page #city-testimonial blockquote p{font:400 25px/1.5 Georgia,'Times New Roman',serif;color:#f1f4f8}
.city-page #city-testimonial figcaption{margin-top:28px;font:400 14px Georgia,serif;color:#d5e0ea}
.city-page .final-form .lead-card__intro h2{font-size:40px}
.city-page .final-form .lead-card__intro p{margin-top:18px}
.city-page .final-form .city-form-tabs{border-bottom-color:#c7d5e6}
.city-page .final-form .city-form-tab{color:#d5e0ea}
.city-page .final-form .city-form-tab[aria-selected="true"],.city-page .final-form .city-form-tab:hover{color:#fff}
.city-page .final-form .city-form-panel{margin-top:4px}
.city-page .mobile-access-bar a{border-radius:8px}
.hub-page .hub-intro{background:var(--navy) url('/assets/sections/navy-pattern-1440.webp') center/cover no-repeat;color:#fff;padding:72px 0}
.hub-page .hub-intro-inner{width:min(1080px,calc(100% - 80px));margin:auto;text-align:center}
.hub-page .hub-intro .eyebrow{color:#dec18b}
.hub-page .hub-intro h1{font-size:clamp(44px,5vw,64px)}
.hub-page .hub-lede{max-width:660px;margin:22px auto 0;font-size:18px;line-height:1.7;color:#e3eaf2}
.hub-page .hub-communities{background:var(--cream-soft);padding:70px 0}
.hub-page .hub-grid{width:min(1180px,calc(100% - 80px));margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.hub-page .hub-city-card{min-height:180px;display:flex;flex-direction:column;align-items:flex-start;padding:28px;background:#fff;border-bottom:2px solid var(--gold);text-decoration:none;transition:transform .2s,box-shadow .2s}
.hub-page .hub-city-card:hover,.hub-page .hub-city-card:focus-visible{transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,35,73,.1)}
.hub-page .hub-city-card h2{font-size:30px;margin-bottom:14px}
.hub-page .hub-city-card p{font-size:15px;line-height:1.6;color:var(--ink-soft)}
.hub-page .hub-city-card .hub-city-link{margin-top:auto;padding-top:20px;font-size:13px;color:var(--gold-deep);text-underline-offset:5px}
.hub-page .hub-contact{padding:58px 0;background:url('/assets/sections/blue-marble-1440.webp') center/cover no-repeat}
.hub-page .hub-contact-card{width:min(940px,calc(100% - 80px));margin:auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:65px;background:var(--navy);color:#fff;padding:45px;border-top:3px solid var(--gold)}
.hub-page .hub-contact h2{font-size:42px}
.hub-page .hub-contact p{color:#d5e0ea;line-height:1.7}
.hub-page .hub-contact .eyebrow{color:#dfbf83}
.hub-page .hub-contact-form{margin:0}
.hub-page .hub-contact-actions{display:grid;gap:14px}
.hub-page .hub-contact .pill--outline{border-color:#b6a176;color:#fff}
@media(min-width:1600px){.city-page #city-testimonial.testimonial,.hub-page .hub-intro{background-image:url('/assets/sections/navy-pattern-2400.webp')}.city-page .city-market-notes,.hub-page .hub-contact{background-image:url('/assets/sections/blue-marble-2400.webp')}}
@media(max-width:1100px){.city-page .page-hero h1{font-size:45px}.city-page .page-hero__inner{min-height:640px;gap:35px}.city-page .city-hero-actions{gap:9px}.city-page .city-hero-actions .pill{padding:12px 15px;font-size:10px}.city-page .city-service-card{padding:35px}.city-page .city-service-card h2{font-size:34px}.city-page .city-neighborhood-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.city-page .city-notes-grid{gap:25px}.hub-page .hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.city-page .page-hero h1{font-size:46px}.city-page .page-hero__inner{gap:29px}.city-page .city-service-grid{gap:20px}.city-page .city-service-card{padding:30px}.city-page .city-service-card h2{font-size:31px}.city-page .city-notes-grid{grid-template-columns:1fr;gap:28px}.city-page .city-note p{max-width:700px}.hub-page .hub-contact-card{gap:35px}}
@media(max-width:640px){.city-page .page-hero__inner{padding-block:36px;gap:30px}.city-page .page-hero h1{font-size:40px}.city-page .page-hero__sub{margin-top:19px}.city-page .city-hero-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:25px}.city-page .city-hero-actions .pill{width:100%;font-size:12px;min-height:48px}.city-page .city-hero-phone{margin-top:18px}.city-page .page-hero--city .page-hero__media img{opacity:.54}.city-page .page-hero--city .page-hero__veil{background:linear-gradient(180deg,rgba(0,27,55,.78),rgba(0,27,55,.94))}.city-page .lead-card__intro h2{font-size:28px}.city-page .city-service-grid{grid-template-columns:1fr;gap:20px}.city-page .city-service-card{padding:28px 24px}.city-page .city-service-card h2{font-size:31px}.city-page .city-service-card p{font-size:16px}.city-page .city-service-card .pill{width:100%}.city-page .city-checklist{margin:24px 0}.city-page .city-checklist li{font-size:15px}.city-page .city-neighborhood-grid{grid-template-columns:1fr;gap:14px;margin-top:30px}.city-page .city-neighborhood-card{min-height:0;padding:25px}.city-page .city-neighborhood-card h3{font-size:26px}.city-page .city-note h3{font-size:27px}.city-page .city-faq-details summary{font-size:21px;padding:21px 39px 21px 0}.city-page .city-faq-details summary:after{top:21px}.city-page .city-faq-details p{font-size:15px;padding:0 20px 22px 0}.city-page #city-testimonial.testimonial{background-image:url('/assets/sections/navy-pattern-640.webp');padding:38px 16px}.city-page #city-testimonial .testimonial-inner{padding:27px 21px 30px}.city-page #city-testimonial h2{font-size:27px}.city-page #city-testimonial blockquote p{font-size:20px}.city-page #city-testimonial figcaption{font-size:13px;margin-top:24px}.city-page .final-form .lead-card__intro h2{font-size:32px}.city-page .final-form .lead-card__intro p{font-size:16px}.city-page .final-form .city-form-tab{font-size:12px}.hub-page .hub-intro{padding:46px 0}.hub-page .hub-intro-inner{width:calc(100% - 40px)}.hub-page .hub-intro h1{font-size:43px}.hub-page .hub-lede{font-size:16px}.hub-page .hub-communities{padding:42px 0}.hub-page .hub-grid{width:calc(100% - 40px);grid-template-columns:1fr;gap:15px}.hub-page .hub-city-card{min-height:0;padding:25px}.hub-page .hub-city-card h2{font-size:30px}.hub-page .hub-contact{padding:24px 0}.hub-page .hub-contact-card{width:calc(100% - 32px);grid-template-columns:1fr;gap:26px;padding:28px 23px}.hub-page .hub-contact h2{font-size:33px}}
@media(prefers-reduced-motion:reduce){.hub-page .hub-city-card{transition:none}.hub-page .hub-city-card:hover{transform:none}}
.city-page .pill{border-radius:8px}
.city-page .pill--gold{background:#7a5f2e;border-color:#b6a176}
.city-page .pill--gold:hover,.city-page .pill--gold:focus-visible{background:#856c36;border-color:#b6a176}
.city-page .pill:focus-visible{outline:3px solid #b6a176}
.city-page .pill--outline{border-color:#b6a176;color:#fff}
.city-page .final-form .form-consent a{color:#fff}
.hub-page .pill{border-radius:8px;background:#7a5f2e;border-color:#b6a176;color:#fff}

.city-page .city-from-me{background:#fff;padding:72px 0}
.city-page .city-from-me .container{max-width:820px}
.city-page .city-from-me .gold-rule{margin:22px 0 26px}
.city-page .city-from-me .section-lead{font-size:19px;line-height:1.75;color:var(--ink-soft);max-width:720px}
@media(max-width:640px){.city-page .city-from-me{padding:48px 0}.city-page .city-from-me .section-lead{font-size:17px}}
