/* Light sand refinements and stable heading geometry. */
:root{--surface:#E6E0D1;--surface-soft:#EEE8DA;--ink:#353820}
body{background:var(--surface);font-weight:400;color:var(--ink)}
.dark,.light,.about-page main,.pd-page,footer{background:var(--surface);color:var(--ink)}
.statistics,.testimonials,.newsletter{background:var(--surface-soft);color:var(--ink)}
.header.sticky,.inner-page .header{background:var(--surface-soft);color:var(--ink);box-shadow:0 1px 0 #BDB39A80}
body:not(.inner-page) .header:not(.sticky) .logo{position:relative;isolation:isolate}

.submenu,.side-menu,.media-dialog,.search-dialog,.property-gallery-dialog{background:var(--surface-soft);color:var(--ink)}
.search-dialog input,.pd-modal-stage>button{color:var(--ink)}
.social-rail{color:#5B5F3E;mix-blend-mode:normal}
.stat strong{color:var(--ink)}
.button,.filters input,.filters select,.filters button,.back-top{background:#D4CCB7;color:var(--ink);border:1px solid #BDB39A}
.button:hover,.filters button:hover,.store-link:hover,.marketing-grid>a:hover,.submenu a:hover{background:#BDB39A;color:var(--ink)}
.cta{background-image:linear-gradient(#E6E0D1E8,#E6E0D1E8),var(--bg);color:var(--ink)}
.cta a:before,.cta a:after{background:#8E906F70}
.pd-enquiry{background-image:linear-gradient(#E6E0D1F0,#EEE8DAF0),var(--pd-enquiry-bg);color:var(--ink)}
.pd-enquiry h2,.pd-enquiry-form input:not([type=checkbox]),.pd-enquiry-form textarea{color:var(--ink)}
.pd-enquiry-form input:not([type=checkbox]),.pd-enquiry-form textarea{border-bottom-color:#8E906F;font-weight:400}
.property-gallery-dialog::backdrop,.media-dialog::backdrop,.search-dialog::backdrop{background:#BDB39ACC}
main p,.pd-description,.about-intro-text,.about-history-top,.about-history-bottom,.founder-copy p,.concierge-copy p,footer p{font-weight:400}
.eyebrow,.snapshot,.pd-snapshot p,.pd-agent,.pd-enquiry-form label,.demo-form label{font-weight:500}
.quotes blockquote{font-weight:400}
/* Headings have entrance fades but never scroll out of their allocated space. */
main h1,main h2,.about-intro-title [data-about-motion],.about-history-title [data-about-motion],.about-quote[data-about-motion]{translate:none!important;transform:none!important}
body.reference-motion .heading-reveal{--reveal-x:0px;--reveal-y:0px;transform:none;transition:opacity .8s ease var(--reveal-delay,0ms)}
body.reference-motion .reference-reveal{--reveal-x:0px;--reveal-y:16px}
body.reference-motion .heading-reveal.reference-reveal{--reveal-y:0px}
.testimonials{padding-top:80px;min-height:0}
.testimonials .title{position:relative;top:auto;left:auto;right:auto;margin:0 0 55px}
.testimonials h2{overflow-wrap:normal;max-width:100%}
.testimonials .quotes{position:relative;min-height:220px}
.concierge-copy{min-width:0}
.concierge-copy h2{margin-bottom:24px}
.about-intro-title,.about-history-title{translate:none!important}
@media(max-width:640px){.testimonials{padding-top:60px}.testimonials .title{margin-bottom:35px}.testimonials .quotes{min-height:280px}}
.testimonials .quotes{margin:0 0 35px auto;display:grid;min-height:0}
.testimonials .quotes blockquote{position:relative;inset:auto;grid-area:1/1;pointer-events:none}
.testimonials .quotes blockquote.active{pointer-events:auto}
@media(max-width:640px){.testimonials .quotes{margin-top:0;min-height:0}}

/* No decorative logo or watermark overlays, including hover cards. */
.monogram,.about-watermark,.about-quote-accent,.pd-watermark,.about-logo-marquee{display:none!important}.card-hover:after{content:none!important;background:none!important}

/* One continuous header strip; no localized patch behind the logo. */
body:not(.inner-page) .header:not(.sticky){background:rgba(35,37,26,.52);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(230,224,209,.18)}
body:not(.inner-page) .header:not(.sticky) .logo:before{content:none!important;background:none!important}
/* Masked heading entrances retain their full layout height throughout. */
main .heading-entrance{overflow:hidden;isolation:isolate}
.heading-content{display:block;transform:none;opacity:1}
body.heading-motion .heading-entrance .heading-content{transform:translate3d(0,105%,0);opacity:.15;transition:transform .95s cubic-bezier(.22,1,.36,1),opacity .75s ease;transition-delay:var(--heading-delay,0ms)}
body.heading-motion .heading-entrance.heading-entered .heading-content{transform:translate3d(0,0,0);opacity:1}
.light h1>.heading-content,.light h2>.heading-content{background-image:linear-gradient(90deg,#8E906F,#5B5F3E 50%,#353820);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
@media(prefers-reduced-motion:reduce){body.heading-motion .heading-entrance .heading-content{transform:none;opacity:1;transition:none}}
@media print{body.heading-motion .heading-entrance .heading-content{transform:none;opacity:1}}

/* Entrance and scroll movement use separate layers. The padded mask reserves safe travel. */
main .heading-entrance{overflow:visible}
.heading-window{display:block;overflow:hidden;padding-block:16px;margin-block:-16px}
.heading-scroll{display:block;width:fit-content;max-width:100%;translate:0 0}
.light h1 .heading-content,.light h2 .heading-content{background-image:linear-gradient(90deg,#8E906F,#5B5F3E 50%,#353820);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
@media(prefers-reduced-motion:reduce){.heading-scroll,.about-large-heading{translate:none!important}}
@media print{.heading-scroll,.about-large-heading{translate:none!important}}

/* Page-specific scroll tracks reserve their complete vertical movement range. */
.section-head>.title{flex:1;min-width:0}
.inner-hero h1{width:100%;min-width:0}
.heading-entrance>.heading-window{display:block;position:relative;width:100%;overflow:hidden;padding-block:16px;margin-block:-16px}
.heading-entrance.heading-vertical>.heading-window{padding-block:var(--heading-travel);margin-block:0}
.heading-scroll{max-width:100%;width:fit-content;margin:0;will-change:translate;transform:translateZ(0)}
body.heading-motion .heading-entrance>.heading-window>.heading-scroll{transform:translate3d(0,28px,0);opacity:0;transition:transform 1s cubic-bezier(.22,1,.36,1),opacity 1s ease;transition-delay:var(--heading-delay,0ms)}
body.heading-motion .heading-entrance.heading-entered>.heading-window>.heading-scroll{transform:translate3d(0,0,0);opacity:1}
/* The entry and the scroll layer are independent; previous generic text motion is disabled. */
body.heading-motion .heading-entrance .heading-content{transform:none;opacity:1;transition:none}
.about-heading-stage{min-width:0;max-width:100%}
.about-heading-stage .about-large-heading{translate:none!important}
.about-heading-stage .heading-scroll{width:100%}
@media(prefers-reduced-motion:reduce){body.heading-motion .heading-entrance>.heading-window>.heading-scroll{transform:none;translate:none;opacity:1;transition:none}.heading-entrance.heading-vertical>.heading-window{padding-block:0}}
@media print{body.heading-motion .heading-entrance>.heading-window>.heading-scroll{transform:none;translate:none;opacity:1}.heading-entrance.heading-vertical>.heading-window{padding-block:0}}
.about-heading-stage .heading-scroll{width:fit-content;max-width:100%}
