/* Shared content edges across every page and language. */
:root{--content-width:1280px;--content-span:88%}
main>.wrap:not(.art-hero),main:has(.art-hero)>.editorial{width:var(--content-span);max-width:var(--content-width);margin-left:auto;margin-right:auto}
main.legal-page.wrap{width:var(--content-span);max-width:var(--content-width);margin-left:auto;margin-right:auto}
.legal-page>section,.legal-page>p{max-width:850px}
body>footer{padding-left:6%;padding-right:6%}
body>footer>.footer-top,body>footer>.footer-credentials,body>footer>.footer-bottom,body>footer>.design-credit{width:100%;max-width:var(--content-width);margin-left:auto;margin-right:auto}
.brokerage-intro a,.preview-note a{text-decoration:underline;text-underline-offset:3px;font-weight:550}

.footer-bottom a+a{margin-left:14px}

/* Three calm tiers: conversation, professional details, fine print. */
body>footer{padding-top:0;padding-bottom:24px}
body>footer .footer-top.contact-footer{padding:48px 0;grid-template-columns:1.15fr 1fr;gap:64px}
.contact-footer h2{max-width:440px;margin:14px 0 24px}
.footer-contact-details{display:grid;grid-template-columns:1fr auto;column-gap:32px;row-gap:0;align-items:start}
.footer-contact-details>.footer-agent-name,.footer-contact-details>a,.footer-contact-details>.footer-license{grid-column:1}
.footer-contact-details>.footer-agent-name{margin-bottom:8px}
.footer-contact-details>a{min-height:36px}
.footer-contact-details>.footer-social-group{grid-column:2;grid-row:1 / span 5;padding-top:5px}
.footer-social-group .eyebrow{font-size:9px;margin:0 0 14px;color:#b9c8b7}
.footer-socials{display:flex;flex-direction:column;gap:0;margin:0}
.footer-socials a{min-height:36px;padding:6px 0;font-size:13px}
.footer-contact-details>.footer-license{margin-top:14px}
body>footer .footer-credentials{border-top:1px solid #ffffff20;padding:24px 0;grid-template-columns:1fr auto;gap:40px}
body>footer .brokerage-footer{grid-template-columns:56px minmax(180px,1fr) 1fr;gap:20px;padding:0;max-width:720px}
.brokerage-footer .brokerage-logo img{width:56px;height:56px;object-fit:contain}
body>footer .membership-mark{padding:0;gap:24px}
body>footer .footer-bottom{display:flex;align-items:center;justify-content:flex-start;gap:24px;padding-top:20px}
.footer-legal-links{display:flex;gap:20px}
.footer-legal-links a{margin:0!important;padding:8px 0}
.footer-bottom>span:last-child{margin-left:auto}
body>footer .design-credit{padding-top:8px;margin-top:0;color:#b9c8b7}
@media(max-width:1000px){.footer-contact-details{grid-template-columns:1fr}.footer-contact-details>.footer-social-group{grid-column:1;grid-row:auto;margin-top:18px}.footer-socials{flex-direction:row;gap:24px}.footer-social-group .eyebrow{margin-bottom:4px}}
@media(max-width:720px){
 body>footer .footer-top.contact-footer{grid-template-columns:1fr;gap:32px;padding:36px 0}
 .footer-contact-details{border-top:1px solid #ffffff20;padding-top:28px}
 .footer-contact-details>a,.footer-socials a{min-height:44px}
 body>footer .footer-credentials{grid-template-columns:1fr;gap:24px;padding:28px 0}
 body>footer .brokerage-footer{grid-template-columns:48px 1fr;gap:16px}
 .brokerage-footer .brokerage-logo img{width:48px;height:48px}
 .brokerage-links{grid-column:2}
 body>footer .membership-mark{justify-content:flex-start;padding:0}
 body>footer .footer-bottom{flex-direction:row;flex-wrap:wrap;gap:8px 24px;align-items:center}
 .footer-bottom>span:last-child{width:100%;margin:4px 0 0}
 .footer-legal-links{margin-left:auto}
 body>footer .design-credit{font-size:10px;line-height:1.8;padding-top:12px}
}

.local-intro{border-top:1px solid var(--line);padding:40px 0}.local-intro h2{font-size:clamp(28px,3vw,40px);max-width:760px;letter-spacing:-.04em;line-height:1.15}.local-intro>p:not(.eyebrow){max-width:800px;margin:20px 0;color:var(--muted)}.local-links{display:flex;flex-wrap:wrap;gap:12px 28px}.local-links a{padding:10px 0;text-underline-offset:5px;font-size:14px}@media(max-width:720px){.local-links{flex-direction:column;align-items:flex-start;gap:4px}.local-intro{padding:32px 0}}

.footer-contact-details>.footer-agent-name{margin-bottom:2px}.footer-contact-details>.footer-license{margin:0 0 14px;grid-row:2}.footer-contact-details>.footer-social-group{grid-row:1 / span 5}@media(max-width:1000px){.footer-contact-details>.footer-social-group{grid-row:auto}}
