/* Shared spacing rhythm. Keep full-screen film heroes, tighten content gaps. */
.me-site .section{padding-block:clamp(64px,7vw,104px)}
.me-site .section-top{padding-bottom:18px;margin-bottom:34px}
.me-site .section-heading{margin-bottom:36px}
.me-site .journey-title{margin-bottom:48px}
.me-site .process-step{min-height:330px;padding-block:38px 48px}
.me-site .service-links{margin-top:48px}
.me-site .guide-intro{margin-top:32px}
.me-site .guide-benefits{margin-block:40px}
.me-site .guide-phases summary{padding-block:24px}
.me-site .guide-detail{padding-block:12px 32px}
.me-site .closing{padding-block:88px}
.me-site .closing-bottom{margin-top:36px}
.me-site .footer-top{margin-bottom:48px}
.me-site .brochure-heading{padding-block:165px 32px}
.me-site .films-library{padding-top:170px}
.me-site .property-hero-copy{padding-bottom:48px}
.me-site .listing-grid{row-gap:44px}
/* Override the theme's inherited red focus/active/visited colours. */
.me-site a:visited{color:inherit!important}
.me-site a:is(:hover,:focus,:active){color:var(--lavender)!important}
.me-site .button:is(:hover,:focus,:active),.me-site .original-form button:is(:hover,:focus,:active){background:var(--lavender)!important;color:var(--ink)!important;border-color:var(--lavender)!important}
.me-site .nav-contact:is(:hover,:focus,:active){background:var(--purple)!important;color:var(--text)!important;border-color:var(--lavender)!important}
.me-site :is(.film-toggle,.gallery-close,.gallery-prev,.gallery-next,.film-dialog-close):is(:hover,:focus,:active){background:var(--purple)!important;color:var(--text)!important;border-color:var(--lavender)!important}
.me-site :is(.gallery-open,.film-play):is(:hover,:focus,:active){background:var(--panel)!important;color:var(--text)!important;border-color:var(--lavender)!important}
.me-site .menu-toggle,.me-site .menu-toggle:is(:hover,:focus,:active){background:transparent!important;color:var(--text)!important;border-color:transparent!important}
.me-site :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--lavender)!important;outline-offset:4px}
.me-site :is(input,select,textarea):focus{border-color:var(--lavender)!important;box-shadow:none!important}
@media(max-width:700px){
 .me-site .section{padding-block:64px}
 .me-site .section-top{margin-bottom:26px;padding-bottom:16px}
 .me-site .section-heading{margin-bottom:28px}
 .me-site .journey-title{margin-bottom:32px}
 .me-site .process-step{min-height:0;padding-block:28px 36px}
 .me-site .service-links{margin-top:32px}
 .me-site .closing{padding-block:64px}
 .me-site .closing-bottom{margin-top:28px}
 .me-site .footer-top{margin-bottom:36px}
 .me-site .brochure-heading{padding-block:145px 26px}
 .me-site .films-library{padding-top:150px}
 .me-site .property-hero-copy{padding-bottom:36px}
 .me-site .listing-grid{row-gap:36px}
}
.me-site a.button:visited{color:var(--ink)!important}.me-site :is(.text-link,.nav-contact,.listing-film-link):visited{color:var(--text)!important}.me-site summary:is(:hover,:focus,:active){color:var(--lavender)!important;background:transparent!important}

/* Consistent brand typography, including content inherited from the old editor. */
.me-site :is(h1,h2,h3,h4,h5,h6){font-family:Reckless,Georgia,serif!important;font-weight:400}
.me-site :is(h1,h2,h3,h4,h5,h6) :is(a,span,code){font-family:inherit!important}
.me-site :is(p,li,dt,dd,label,input,textarea,select,button,summary,.eyebrow,.nav-side,.footer-links){font-family:Questrial,Arial,sans-serif!important}
.me-site .rich-copy code{font-family:inherit;background:none;color:inherit;padding:0;white-space:normal}
.me-site .rich-copy :is(h3,h4){line-height:1.25;letter-spacing:-.025em}
.me-site .rich-copy h3{font-size:clamp(28px,2.5vw,36px);margin:32px 0 18px}
.me-site .rich-copy h4{font-size:clamp(23px,2vw,28px);margin:28px 0 14px}
.me-site .rich-copy :is(p,li){font-size:18px;line-height:1.75}
.me-site .rich-copy p{margin-bottom:0}
.me-site .rich-copy p+p{margin-top:1.15em}
.me-site .rich-copy > :last-child{margin-bottom:0}
.me-site .rich-page{padding-bottom:32px}
.me-site .rich-page + .listing-collection{padding-top:32px}
.me-site .listing-collection + .listing-collection{padding-top:32px}
.me-site .local-guidance-section{padding-block:40px;border-top:1px solid var(--line)}
.me-site .local-guidance{max-width:85ch;color:var(--muted)}
.me-site .local-guidance a{color:var(--text);text-decoration:underline;text-underline-offset:4px}

/* The scrolled header is opaque on the home page and interior pages alike. */
/* Release the original opener's root scroll lock only after its exact animation. */
html:has(.me-site):not(:has(#homepage-intro:not(.remove))){height:auto!important;min-height:100%;overflow-x:clip!important;overflow-y:auto!important}
body:has(.me-site):not(:has(#homepage-intro:not(.remove))){height:auto!important;overflow:visible!important}
.me-site .nav{transition:padding .35s;isolation:isolate}
.me-site .nav.is-sticky{background:#1c1c2f!important;backdrop-filter:none!important;animation:none}
.me-site .nav .logo,.me-site .nav .logo img{opacity:1!important;mix-blend-mode:normal;filter:none}
.me-site .mobile-menu{overflow-y:auto;overscroll-behavior:contain}
.me-site .mobile-menu a{font-family:Questrial,Arial,sans-serif;font-size:20px}
.me-site .brokerage-logo{display:block;width:210px;max-width:100%;margin-top:28px}
.me-site .brokerage-logo img{width:210px;height:75px;object-fit:contain;object-position:left center}
.me-site .footer .footer-office{margin-top:20px}

/* Constrain the original Elementor form within its grid column. */
.me-site .contact-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.me-site .contact-layout > *{min-width:0;max-width:100%}
.me-site .original-form,.me-site .original-form :is(.elementor,.elementor-widget-form,.elementor-widget-container,form,.elementor-form-fields-wrapper){width:100%!important;max-width:100%!important;min-width:0!important}
.me-site .original-form .elementor-form-fields-wrapper{display:grid!important;grid-template-columns:minmax(0,1fr);gap:22px;margin:0!important}
.me-site .original-form .elementor-field-group{width:100%!important;max-width:100%!important;min-width:0!important;flex-basis:100%!important;margin:0!important;padding:0!important;display:flex;flex-wrap:wrap}
.me-site .original-form .elementor-field-label{flex-basis:100%;max-width:100%;margin-bottom:10px;white-space:normal}
.me-site .original-form :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]),textarea,select){width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;font-size:18px!important}
.me-site .original-form .elementor-field-type-recaptcha{overflow-x:auto;overflow-y:hidden;padding-bottom:4px!important}
.me-site .original-form .elementor-field-type-recaptcha .elementor-field{min-width:304px;flex-shrink:0}
.me-site .original-form .elementor-field-type-submit{justify-content:flex-start}
.me-site .original-form button{max-width:100%;white-space:normal}
@media(max-width:1050px){.me-site .contact-layout{grid-template-columns:minmax(0,1fr);gap:42px}.me-site .original-form{max-width:700px!important}}
@media(max-width:700px){.me-site .rich-page{padding-bottom:24px}.me-site .rich-page + .listing-collection,.me-site .listing-collection + .listing-collection{padding-top:24px}.me-site .local-guidance-section{padding-block:32px}.me-site .mobile-menu:not([hidden]){gap:15px;padding-block:24px}.me-site .brokerage-logo{margin-top:24px}}
/* WordPress's mobile toolbar scrolls away; keep the sticky header at the edge. */
/* Shared interactive palette, including native theme buttons without .button. */
.me-site button:is(:hover,:focus,:active){background-color:#39334e!important;color:#f3eee8!important;border-color:#c5badb!important}
.me-site .residence-plan-open:is(:hover,:focus,:active){background:#e3ddea!important;color:#191827!important}
.me-site .residence-plan-open:is(:hover,:focus,:active) span{color:#191827!important}
.me-site .menu-toggle:is(:hover,:focus,:active),.me-site .residence-share:is(:hover,:focus,:active){background:transparent!important}
.me-site :is(.text-link,.button,.circle,.property-arrow,.area-link,.service-link,.listing-card-arrow,.hero-scroll) svg{display:none!important}
.me-site .hero-scroll .circle,.me-site .listing-card-arrow{display:none!important}
.me-site :is(h1,h2,h3) br{white-space:normal}
.me-site .section-heading{gap:24px}
.me-site .section-heading h2+p{margin-top:20px}
.me-site .footer{background:#1c1b2d!important;padding-block:64px 28px}
.me-site .footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:48px;align-items:start}
.me-site .footer-logo{display:block;width:180px;max-width:100%}
.me-site .footer-logo img{width:180px;height:auto;object-fit:contain;filter:none;opacity:1}
.me-site .footer-service-area{font-size:16px;line-height:1.65;margin-top:24px;color:var(--muted)}
.me-site .footer-brokerage{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}
.me-site .footer .brokerage-logo{width:168px;margin:0}
.me-site .footer .brokerage-logo img{width:168px;height:60px;object-fit:contain;filter:none;opacity:1}
.me-site .footer .footer-office{font-size:14px;line-height:1.8;margin-top:18px;max-width:38ch}
.me-site .footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.me-site .footer-contact>a{font-size:clamp(17px,1.6vw,23px);overflow-wrap:anywhere}
.me-site .footer-contact .text-link{font-size:16px;margin-top:8px}
.me-site .footer-links{gap:16px;font-size:16px}
.me-site .footer .preserved-network{gap:32px}
.me-site .footer .trademark-note{font-size:13px;line-height:1.7}
@media(max-width:900px){.me-site .footer-top{grid-template-columns:1fr 1fr;gap:36px}.me-site .footer-brand{grid-column:1/-1}.me-site .footer-brokerage{display:flex;align-items:center;gap:28px}.me-site .footer .footer-office{margin:0}.me-site .footer .brokerage-logo{flex-shrink:0}}
@media(max-width:600px){.me-site .footer-top{grid-template-columns:1fr;gap:32px}.me-site .footer-brand{grid-column:auto}.me-site .footer-brokerage{align-items:flex-start;flex-direction:column;gap:16px}.me-site .footer-contact>a{font-size:19px}.me-site .footer-links{display:grid;grid-template-columns:1fr 1fr;gap:18px}.me-site .footer{padding-top:40px}.me-site .section{padding-block:40px}.me-site .section-heading{gap:20px}.me-site .hero h1{font-size:clamp(42px,10vw,60px)}}
@media(max-width:782px){body.admin-bar .me-site .nav.is-sticky{top:0}body.admin-bar .me-site:has(.nav.is-sticky) .scroll-progress{top:0}body.admin-bar .me-site .nav.is-sticky + .mobile-menu{top:82px;max-height:calc(100svh - 82px)}}
