/* One paint layer per animated title. Parent backgrounds must never paint moving glyphs. */
main h1.heading-entrance,main h2.heading-entrance,.pd-info h1{background:none!important;background-clip:border-box!important;-webkit-background-clip:border-box!important;color:inherit!important;-webkit-text-fill-color:currentColor!important}
main h1.heading-entrance .heading-window,main h2.heading-entrance .heading-window,main h1.heading-entrance .heading-scroll,main h2.heading-entrance .heading-scroll{background:none;background-clip:border-box;-webkit-background-clip:border-box}
.light h1 .heading-content,.light h2 .heading-content,.dark h1 .heading-content,.dark 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}
.seller-hero .heading-content,.project-detail-hero .heading-content,.inner-hero .heading-content{background:none!important;color:#F5F1E8!important;-webkit-text-fill-color:#F5F1E8!important}
/* Standard titles: small caption and short accent, without a surrounding box. */
.clean-title{position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:0;border:0;min-width:0}
.clean-title h1{font-size:clamp(60px,6.7vw,105px)}
.clean-title h2{font-size:clamp(45px,5.2vw,80px)}
.clean-title h1 b,.clean-title h2 b{display:block;font-weight:500}
.clean-title h1,.clean-title h2{order:2}
.clean-title>.cross-caption{order:1;align-self:flex-start;width:auto;margin:0 0 25px;padding:0 0 12px;border:0;text-align:left;font:500 11px var(--title);letter-spacing:.22em;text-transform:uppercase;color:#5B5F3E;position:relative}
.clean-title>.cross-caption:after{content:'';position:absolute;bottom:0;left:0;width:44px;height:2px;background:#8E906F}
.clean-title:before,.clean-title:after{content:none}
.title{border:0}
.title>.eyebrow{margin:0 0 16px}
.ml-faq>.clean-title{margin-bottom:30px}
/* Compact split review composition: the quote and its controls balance the heading. */
.ml-reviews{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:7vw;align-items:center;padding:80px 8vw;min-height:0;text-align:left;background:#EEE8DA}
.ml-reviews .review-copy{position:relative;padding:34px 0 0 26px;min-width:0}
.ml-reviews .review-symbol{position:absolute;left:-10px;top:-15px;font:100 88px Georgia,serif;line-height:1;color:#8E906F;opacity:.6}
.ml-reviews .review-preview-label{display:block;font:500 10px var(--body);letter-spacing:.12em;text-transform:uppercase;color:#5B5F3E;margin:0 0 22px}
.ml-reviews .quotes{width:100%;display:grid;margin:0 0 26px;min-height:0;position:relative}
.ml-reviews .quotes blockquote{position:relative;inset:auto;grid-area:1/1;margin:0;font:400 clamp(20px,1.8vw,28px)/1.65 var(--body);opacity:0;transform:translateY(10px);transition:opacity .65s,transform .65s;pointer-events:none;text-align:left}
.ml-reviews .quotes blockquote.active{opacity:1;transform:none;pointer-events:auto}
.ml-reviews .quotes cite{display:none}
.ml-reviews .quote-controls{justify-content:flex-start;gap:16px;margin:0}
.ml-reviews .quote-controls>button{width:40px;height:40px;font-size:23px;border:1px solid #BDB39A;border-radius:50%;display:grid;place-items:center}
.ml-reviews .quote-controls>button:hover{background:#D4CCB7;color:#23251A}
.ml-reviews .quote-controls .button{margin-left:8px;font-size:12px}
.ml-reviews .review-heading{min-width:0;text-align:right}
.ml-reviews .review-heading>.eyebrow{display:block;font:500 11px var(--title);letter-spacing:.22em;text-transform:uppercase;color:#5B5F3E;margin-bottom:20px}
.ml-reviews .review-heading>.eyebrow:after{content:'';display:block;width:44px;height:2px;background:#8E906F;margin:12px 0 0 auto}
.ml-reviews h2{font:100 clamp(48px,5vw,80px)/1 var(--title);letter-spacing:.01em;text-align:right;margin:0}
.ml-reviews h2 b{display:block;font-weight:500}
.ml-reviews .heading-vertical>.heading-window{padding-block:var(--heading-travel,48px);margin-block:0}
.ml-reviews .heading-scroll{margin-left:auto}
/* High-contrast navigation in each real header state, including keyboard focus. */
.header.sticky .nav-item>a,.inner-page .header .nav-item>a{color:#353820}
.header.sticky .nav-item:hover>a,.inner-page .header .nav-item:hover>a,.header.sticky .nav-item>a:focus-visible,.inner-page .header .nav-item>a:focus-visible{color:#23251A;background:#D4CCB7;box-shadow:inset 0 -2px 0 #8E906F}
body:not(.inner-page) .header:not(.sticky) .nav-item:hover>a,body:not(.inner-page) .header:not(.sticky) .nav-item>a:focus-visible{color:#F5F1E8;background:#F5F1E81A;box-shadow:inset 0 -2px 0 #C9A45E}
.header .nav-item>a{transition:color .2s,background .2s,box-shadow .2s}
.submenu a,.side-menu a{color:#353820}
.submenu a:hover,.submenu a:focus-visible,.side-menu a:hover,.side-menu a:focus-visible{color:#23251A;background:#D4CCB7}
@media(max-width:991px){.ml-reviews{gap:35px;padding:65px 6vw}.ml-reviews h2{font-size:54px}.ml-reviews .quotes blockquote{font-size:21px}}
@media(max-width:640px){.ml-reviews{display:flex;flex-direction:column-reverse;align-items:stretch;padding:55px 25px;gap:26px}.ml-reviews .review-heading{text-align:left}.ml-reviews .review-heading>.eyebrow:after{margin-left:0}.ml-reviews h2{text-align:left;font-size:50px}.ml-reviews .heading-scroll{margin-left:0}.ml-reviews .review-copy{padding-left:18px}.ml-reviews .review-symbol{font-size:65px;left:-5px;top:-6px}.ml-reviews .quotes blockquote{font-size:20px}.clean-title h1{font-size:59px}.clean-title h2{font-size:45px}.ml-reviews .quote-controls{flex-wrap:wrap}.ml-reviews .heading-vertical>.heading-window{padding-block:24px}}
@media(prefers-reduced-motion:reduce){.ml-reviews .quotes blockquote{transition:none;transform:none}}

/* Maple & Lane collection and mobile property showcase. */
.ml-collection{overflow:hidden;gap:5vw;align-items:center;padding-block:110px}
.ml-collection>div:first-child{position:relative;z-index:2}
.ml-collection p{max-width:480px}
.ml-cover-stack{height:530px;position:relative;min-width:0}
.ml-cover{position:absolute;display:flex;flex-direction:column;width:56%;height:440px;padding:20px;background:#EEE8DA;color:#353820;box-shadow:0 20px 35px #35382022;border:1px solid #CFC6B4;transition:transform .5s,box-shadow .5s}
.ml-cover-0{left:0;top:45px;transform:rotate(-13deg)}.ml-cover-1{left:22%;top:0;transform:rotate(0);z-index:2}.ml-cover-2{left:42%;top:68px;transform:rotate(12deg);z-index:3}
.ml-cover:hover{transform:translateY(-18px) rotate(0);z-index:4;box-shadow:0 25px 45px #35382033}
.ml-cover-masthead{font:500 clamp(16px,1.5vw,25px) var(--title);letter-spacing:.15em;color:#5B5F3E;white-space:nowrap}
.ml-cover small{font:500 8px var(--body);letter-spacing:.12em;margin:10px 0 17px}
.ml-cover img{width:100%;height:240px;object-fit:cover}
.ml-cover-place{font:500 9px var(--body);letter-spacing:.14em;text-transform:uppercase;margin:16px 0 6px}
.ml-cover strong{font:400 24px/1.1 var(--title)}
.ml-cover-foot{margin-top:auto;padding-top:15px;font:500 7px var(--body);letter-spacing:.12em;display:flex;justify-content:space-between}.ml-cover-foot i{font-size:16px;font-style:normal}
.ml-connect{padding-block:95px;gap:4vw;align-items:center;grid-template-columns:1.05fr .8fr 1fr}
.ml-phone{width:280px;height:555px;border:8px solid #35352F;border-radius:42px;padding:45px 15px 25px;background:#EEE8DA;position:relative;box-shadow:0 25px 45px #35382020;justify-self:center;overflow:hidden}
.ml-phone-island{position:absolute;width:90px;height:23px;border-radius:20px;background:#35352F;top:8px;left:calc(50% - 45px)}
.ml-phone-brand img{width:205px;height:auto;display:block;margin:0 auto 22px}
.ml-phone-topline{display:flex;justify-content:space-between;font:500 8px var(--body);letter-spacing:.06em;padding-bottom:12px;border-bottom:1px solid #C8BDA5}
.ml-phone-slides{height:340px;position:relative;margin-top:14px}
.ml-phone-slide{position:absolute;inset:0;display:flex;flex-direction:column;opacity:0;visibility:hidden;transition:opacity .85s;pointer-events:none}
.ml-phone-slide.active{opacity:1;visibility:visible;pointer-events:auto}
.ml-phone-slide img{width:100%;height:220px;object-fit:cover}
.ml-phone-location{font:500 9px var(--body);letter-spacing:.07em;text-transform:uppercase;margin-top:15px}
.ml-phone-slide strong{font:500 24px/1.05 var(--title);margin:7px 0}
.ml-phone-price{font:500 11px var(--body)}
.ml-phone-explore{font:500 10px var(--body);padding-top:12px;color:#5B5F3E}
.ml-phone-bottom{position:absolute;bottom:18px;left:0;right:0;text-align:center;font:500 7px var(--body);letter-spacing:.06em}
.ml-connect-copy h3{font:400 clamp(27px,2.6vw,42px)/1.1 var(--title);text-transform:uppercase;margin-bottom:26px}
.ml-connect-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.ml-connect-actions .button{font-size:12px;padding:14px 18px;gap:24px}
.header .logo img,footer>a>img,.side-menu>img{filter:none!important;opacity:1}
@media(max-width:1000px){.ml-connect{grid-template-columns:1fr 1fr}.ml-connect>.title{grid-column:1/-1}.ml-cover-stack{height:440px}.ml-cover{height:365px;padding:13px}.ml-cover img{height:190px}.ml-cover strong{font-size:20px}}
@media(max-width:640px){.ml-collection{padding-block:60px;display:block}.ml-cover-stack{height:410px;margin-top:45px}.ml-cover{width:54%;height:330px}.ml-cover img{height:165px}.ml-cover-masthead{font-size:15px}.ml-cover small{font-size:6px}.ml-cover strong{font-size:19px}.ml-cover-2{left:43%}.ml-connect{display:flex;flex-direction:column;align-items:stretch;padding-block:55px;gap:35px}.ml-phone{align-self:center}.ml-connect-copy h3{font-size:34px}}
