/* Shared layout for individual market areas; local content stays in each page. */
.market-city-page .city-hero{min-height:580px;display:flex;align-items:center}
.market-city-page .city-hero .hero-scene{transform:none!important;filter:none}
.market-city-page .city-hero .lead{max-width:640px}
.market-city-page #main>.city-white{background:#fff}
.market-city-page .city-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:start}
.market-city-page .city-split h2,.market-city-page .city-section-head h2{margin-top:0}
.market-city-page .city-split>div>p:first-child{margin-top:0}
.market-city-page .city-intro{font-size:20px;line-height:1.6;max-width:420px}
.market-city-page .city-section-head{max-width:800px;margin-bottom:40px}
.market-city-page .city-locations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.market-city-page .city-locations article{border-top:1px solid #adc0c9;padding-top:24px}
.market-city-page h3{font:500 26px/1.25 'Playfair Display',Georgia,serif;color:#345b6e;margin:0 0 18px}
.market-city-page .city-takeaway{font-size:14px;font-weight:600;border-left:2px solid #b9606c;padding-left:15px}
.market-city-page .city-small{font-size:14px;line-height:1.65;color:#526873}
.market-city-page .city-locations+.city-small{margin-top:32px}
.market-city-page .city-source{font-size:13px;margin-top:16px;max-width:800px}
.market-city-page .city-source summary{cursor:pointer;min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:4px}
.market-city-page .city-source a{text-decoration:underline}
.market-city-page .city-steps{margin:0;gap:0}
.market-city-page #main>.city-evidence{background:#eaf0f3}
.market-city-page .city-evidence-note{border-top:1px solid #adc0c9;padding-top:25px}
.market-city-page .city-evidence-note ul{padding-left:20px;margin-bottom:26px}
.market-city-page .city-evidence-note li{padding:7px 0}
.market-city-page .city-faq details{border-top:1px solid #bacbd3}
.market-city-page .city-faq details:last-child{border-bottom:1px solid #bacbd3}
.market-city-page .city-faq summary{position:relative;cursor:pointer;padding:23px 34px 23px 0;list-style:none;font-weight:600;line-height:1.5}
.market-city-page .city-faq summary::-webkit-details-marker{display:none}
.market-city-page .city-faq summary::after{content:'+';position:absolute;right:4px;top:19px;font-size:25px;font-weight:400}
.market-city-page .city-faq details[open] summary::after{content:'−'}
.market-city-page .city-faq details p{margin:0;padding:0 0 24px}
.market-city-page .city-contact .lead{max-width:720px;margin:0 auto 28px;color:#fff}
.market-city-page .city-contact .page-actions{justify-content:center}
.market-city-page .city-contact-note{font-size:14px;margin:28px 0;color:#edf3f5}
.market-city-page .city-back{display:inline-flex;min-height:44px;align-items:center;color:#fff;text-decoration:underline;text-underline-offset:5px}
.market-city-page #main section[id]{scroll-margin-top:110px}
.market-city-page #main a:focus-visible,.market-city-page summary:focus-visible{outline:3px solid #b9606c;outline-offset:5px}

body.market-city-page #main>.city-contact .lead{color:#fff!important}
@media(max-width:760px){body.market-city-page #main>.city-hero::after{background:linear-gradient(180deg,rgba(40,65,78,.86),rgba(40,65,78,.72) 55%,rgba(40,65,78,.58))}}
/* Reuse the site's open editorial rhythm, with motion progressively enhanced. */
.market-city-page .city-feature{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.market-city-page .city-image{margin:0;overflow:hidden;border-radius:3px;aspect-ratio:4/5}
.market-city-page .city-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:none}
.market-city-page .city-feature-copy h2{margin-top:0}
.market-city-page .city-feature-copy .city-intro{font-size:20px}
.market-city-page .city-section-head{max-width:760px;margin:0 auto 48px;text-align:center}
.market-city-page .city-locations{gap:40px}
.market-city-page .city-locations article{padding-top:28px}
.market-city-page .city-process{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start}
.market-city-page .city-process-intro{position:sticky;top:140px}
.market-city-page .city-process-intro h2{margin-top:0}
.market-city-page .city-steps li{padding-bottom:38px}
.market-city-page .city-steps li>span{transition:background .35s,color .35s;border:1px solid #b8cbd3;border-radius:50%;width:46px;height:46px;display:flex;align-items:center;font-size:16px;justify-content:center;background:#fff}
.market-city-page .city-steps li.is-reached>span{background:#345b6e;color:#fff;border-color:#345b6e}
.market-city-page .city-presentation{list-style:none;padding:0;margin:24px 0}
.market-city-page .city-presentation li{padding:14px 0 14px 24px;border-top:1px solid #b8cbd3;position:relative}
.market-city-page .city-presentation li:before{content:'✓';position:absolute;left:0;color:#a94353}
.market-city-page .city-buyer{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.market-city-page .city-buyer h2{margin-top:0}
.market-city-page .city-faq{max-width:860px;margin-inline:auto}
.market-city-page .city-motion-ready{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.market-city-page .city-motion-ready.is-visible{opacity:1;transform:none}
@media(min-width:851px){.market-city-page .city-locations article:nth-child(2){transition-delay:90ms}.market-city-page .city-locations article:nth-child(3){transition-delay:180ms}}
@media(max-width:850px){.market-city-page .city-feature,.market-city-page .city-process,.market-city-page .city-buyer{grid-template-columns:1fr;gap:32px}.market-city-page .city-locations{grid-template-columns:1fr;gap:28px}.market-city-page .city-process-intro{position:static}.market-city-page .city-image{aspect-ratio:3/2}.market-city-page .city-feature-reverse .city-image{order:2}.market-city-page .city-section-head{margin-bottom:32px}.market-city-page .city-hero{min-height:520px}}
@media(max-width:540px){.market-city-page .city-hero{min-height:540px}.market-city-page h3{font-size:24px}.market-city-page .city-contact h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){.market-city-page .city-motion-ready{opacity:1;transform:none;transition:none}.market-city-page .city-steps li>span{transition:none}}

/* Local properties reuse the listing cards, without a carousel. */
.market-city-page .city-reference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.market-city-page .city-reference-card{min-width:0;border-bottom:1px solid #bacbd3;padding-bottom:24px}
.market-city-page .city-reference-card img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:4px;background:#dce5e9}
.market-city-page .city-reference-tag{display:block;margin:20px 0 12px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#345b6e}
.market-city-page .city-reference-card h3{font-size:25px;overflow-wrap:anywhere}
.market-city-page .city-reference-card p{font-size:15px;color:#526873}
.market-city-page .city-reference-card:only-child{grid-column:1/-1;max-width:760px;width:100%;margin-inline:auto}
.market-city-page .city-property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;background:transparent}
.market-city-page .city-property-grid .pp-card-content h3{font-size:19px;line-height:1.34;margin:7px 0 13px;min-height:77px}
.market-city-page .city-property-grid .pp-card{height:100%}
.market-city-page .city-property-actions{justify-content:center;margin-top:32px}
.market-city-page [data-city-status]{text-align:center;font-size:14px;margin-bottom:28px}
.market-city-page .city-card-enter{animation:city-card-enter .65s ease backwards}
@keyframes city-card-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:900px){.market-city-page .city-property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.market-city-page .city-reference-grid,.market-city-page .city-property-grid{grid-template-columns:1fr}.market-city-page .city-property-grid .pp-card-content h3{min-height:0}}
@media(prefers-reduced-motion:reduce){.market-city-page .city-card-enter{animation:none}}
