:root{--ink:#1d1d1f;--muted:#626267;--blue:#003da5;--red:#dc1c2e;--red-hover:#aa1120;--paper:#f5f5f7}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;font-size:17px;line-height:1.5}a{color:inherit;text-decoration:none}a:hover{color:var(--blue)}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.skip{position:absolute;top:-100px}.skip:focus{top:12px;z-index:99;background:white;padding:10px}header{height:76px;position:sticky;top:0;z-index:20;background:rgba(255,255,255,.91);backdrop-filter:blur(20px);border-bottom:1px solid #e8e8ed}.nav{max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;height:100%;padding:0 36px}.brand{font-size:21px;font-weight:650;letter-spacing:-.8px}.brand span{font-weight:350}nav{display:flex;align-items:center;gap:32px;font-size:14px}nav [aria-current=page]{color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--red);color:#fff;border-radius:30px;padding:13px 25px;font-size:16px}.button:hover{background:var(--red-hover);color:white}.nav .button{padding:9px 18px;font-size:14px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:650}.hero{text-align:center;padding:64px 24px 0;background:var(--paper)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(48px,6.2vw,86px);letter-spacing:-4px;line-height:1.03;margin:18px 0 23px;font-weight:650}h1 span{color:#818187}.hero p{font-size:21px;color:var(--muted);max-width:610px;margin:0 auto 25px}.actions{display:flex;justify-content:center;align-items:center;gap:26px}.textlink{color:var(--blue);font-size:17px}.hero-image{display:block;width:calc(100% + 48px);margin:43px -24px 0;height:clamp(320px,38vw,550px);object-fit:cover;object-position:center 55%}.caption{display:flex;justify-content:space-between;max-width:1168px;margin:auto;padding:17px 24px;color:var(--muted);font-size:12px;letter-spacing:.2px}.wrap{max-width:1168px;margin:auto;padding:95px 24px}h2{font-size:clamp(34px,4.2vw,55px);letter-spacing:-2px;line-height:1.1;font-weight:600;margin-bottom:24px}h3{font-size:26px;line-height:1.18;letter-spacing:-.6px}p{color:var(--muted)}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.portrait{height:570px;overflow:hidden;background:var(--paper);border-radius:24px;display:flex;justify-content:center}.portrait img{height:100%;width:100%;object-fit:contain;object-position:bottom}.split p{max-width:440px}.sectionhead{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:40px}.sectionhead h2{margin:0}.tint{background:var(--paper)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:white;border-radius:22px;overflow:hidden;display:flex;flex-direction:column;transition:transform .25s}.card:hover{color:inherit}.cardtop{height:175px;padding:25px;background:#e3eaf2;display:flex;align-items:end;color:#183859;font-size:58px;font-weight:600;letter-spacing:-4px}.card:nth-child(2) .cardtop{background:#d9e7e9;color:#28545d}.card:nth-child(3) .cardtop{background:#e6e6ec;color:#595d70}.cardbody{padding:28px;display:flex;flex-direction:column;flex:1}.cardbody .eyebrow{color:var(--muted);font-size:12px}.cardbody h3{margin:15px 0}.cardbody p{font-size:16px}.cardbody .textlink{margin-top:auto;font-size:15px}.cta{text-align:center;background:#171719;color:#fff;padding:85px 24px}.cta p{color:#c9c9ce;font-size:20px}.cta .textlink{color:#8bc5ff}footer{background:var(--paper);padding:34px 24px;color:var(--muted);font-size:13px}.footerinner{max-width:1120px;margin:auto;display:flex;justify-content:space-between;gap:24px}.footerlinks{display:flex;gap:20px}.pagehead{max-width:1168px;margin:auto;padding:85px 24px 55px}.pagehead h1{max-width:900px}.pagehead p{font-size:21px;max-width:660px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.info-card{padding:38px;background:var(--paper);border-radius:24px}.contact{padding-top:60px;scroll-margin-top:100px}.contact a{color:var(--blue)}.contact p{font-size:20px}.article{max-width:760px;margin:auto;padding:70px 24px 100px}.article h1{font-size:52px;letter-spacing:-2.5px}.article p{font-size:19px;line-height:1.75}.article h2{font-size:30px;letter-spacing:-1px;margin-top:35px}@media(max-width:700px){header{height:auto;min-height:70px}.nav{padding:16px 20px;flex-wrap:wrap;gap:15px}.brand{font-size:20px}nav{gap:19px;width:100%;justify-content:space-between;font-size:14px}.nav .button{font-size:13px;padding:8px 12px}.hero{padding-top:45px}h1{letter-spacing:-2.5px}.hero p{font-size:18px}.hero-image{height:330px}.caption{font-size:12px;gap:20px}.wrap{padding:65px 22px}.split{grid-template-columns:1fr;gap:35px}.portrait{height:420px;order:2}.cards,.info-grid{grid-template-columns:1fr}.sectionhead{align-items:start;flex-direction:column}.cardtop{height:140px}.footerinner{flex-direction:column}.pagehead{padding-top:55px}.article h1{font-size:39px}.actions{gap:20px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* The larger portrait is anchored to the section's bottom and rises into the search photo. */
.meet-matt{min-height:675px;padding-top:0;padding-bottom:0;grid-template-columns:1fr 1fr;gap:64px;align-items:center;position:relative;z-index:1}
.meet-matt .portrait{position:absolute;right:24px;bottom:0;width:calc(50% - 32px);height:750px;min-width:0;background:transparent;border-radius:0;overflow:visible;align-items:end}
.meet-matt .portrait img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom;transform:scale(1.15);transform-origin:center bottom}
.meet-matt .meet-copy{grid-column:1;grid-row:1;min-width:0;container-type:inline-size;translate:10px 0}
.meet-matt .meet-copy h2{font-size:clamp(1.485rem,8.6cqw,2.835rem);letter-spacing:-.04em}
.meet-matt .meet-copy p{font-size:1.15625rem;max-width:475px}
.meet-matt .meet-copy .textlink{font-size:1.15625rem}
.meet-matt .meet-copy>.eyebrow{font-size:13px}
.meet-matt .meet-copy h2 span{display:block;white-space:nowrap}
@media(max-width:1100px) and (min-width:701px){.meet-matt{gap:40px;min-height:clamp(486px,61.4vw,675px)}.meet-matt .portrait{height:clamp(540px,68.2vw,750px);width:calc(50% - 20px)}}
@media(max-width:700px){.meet-matt{min-height:0;grid-template-columns:1fr;padding-top:38px;padding-bottom:0;gap:18px}.meet-matt .portrait{position:relative;right:auto;bottom:auto;grid-column:1;grid-row:2;height:585px;width:100%;overflow:hidden;justify-content:center}.meet-matt .portrait img{width:auto;max-width:none;height:100%}.meet-matt .meet-copy{grid-column:1;grid-row:1}}
/* Photo-led destinations and editorial pages. */
.tile-section{padding:82px 12px 12px}.tile-heading{max-width:1120px;margin:0 auto 44px;padding:0 20px}.tile-heading p{font-size:21px;max-width:600px}.photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo-tile{position:relative;min-height:530px;overflow:hidden;background:#eef1f5;text-align:center;isolation:isolate}.photo-tile>img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;z-index:-2;transition:transform .7s ease}.photo-tile:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.63),rgba(0,0,0,.04) 65%)}.tile-copy{padding:44px 24px;color:white}.tile-copy h3{font-size:clamp(32px,3vw,46px);letter-spacing:-1.5px;margin-bottom:8px}.tile-copy p{color:white;font-size:19px;margin-bottom:16px}.tile-copy .tile-link{display:inline-block;background:white;color:#1d1d1f;border-radius:30px;padding:9px 20px;font-size:15px}.photo-tile:hover{color:inherit}.quick-grid .photo-tile{min-height:440px}.quick-section{background:#efeff1;padding-bottom:12px}.quick-section .eyebrow{color:var(--muted)}.blog-wrap{padding-top:0}.blog-card>img{width:100%;height:220px;object-fit:cover}.blog-card{border:1px solid #e8e8ed}.post-meta{margin:35px 0 12px}.article-cover{width:100%;height:auto;max-height:500px;object-fit:cover;margin:20px 0 40px;border-radius:16px}.article-content img,.article-content video{display:block;max-width:100%;height:auto;margin:25px auto;border-radius:12px}.article-content figure{margin:25px 0}.article-content a{text-decoration:underline;color:var(--blue);overflow-wrap:anywhere}.article-content table{width:100%;border-collapse:collapse}.article-content td,.article-content th{padding:10px;border:1px solid #ddd}.article-content{overflow-wrap:anywhere}.article-content h1{font-size:36px}.article-content h2{font-size:30px}.article-content p{color:#444}.article-end{margin-top:60px;padding-top:35px;border-top:1px solid #ddd}.archive-note{font-size:15px!important;background:var(--paper);padding:18px;border-radius:12px}.archive-list{padding-top:0;display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.archive-list>a{padding:28px;background:var(--paper);border-radius:16px}.archive-list h3{margin:0 0 14px}.archive-page h1{margin-top:32px}.studio{display:grid;grid-template-columns:280px 1fr;gap:45px;padding-top:0}.studio-heading h1{font-size:64px}.studio label{display:block;font-weight:600;margin-bottom:20px}.studio input,.studio textarea{display:block;width:100%;margin-top:7px;border:1px solid #bfc3c8;border-radius:10px;padding:12px;font:inherit;background:white;color:var(--ink)}.studio textarea{resize:vertical}.studio button{font:inherit;cursor:pointer}.studio button:disabled{opacity:.5;cursor:wait}.studio .button{border:0}.post-choice{display:block;text-align:left;padding:14px 0;border:0;border-bottom:1px solid #ddd;background:none;width:100%;font-size:14px!important}.studio aside>.button{margin-bottom:18px}.studio aside>a{display:block;margin-top:24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.studio-actions{justify-content:start}.studio-actions>button:not(.button){padding:12px 20px;border-radius:30px;border:1px solid #bbb;background:white}.editor-help{font-size:14px}.studio #cover-preview{max-width:100%;max-height:240px;margin-bottom:24px}.studio [hidden]{display:none!important}#save-status{margin-top:20px}.community-sources{font-size:12px;max-width:1120px;margin:16px auto;padding:0 20px}.community-sources a{text-decoration:underline;margin-right:16px}
@media(max-width:700px){.tile-section{padding-top:55px}.photo-grid,.archive-list,.studio,.form-row{grid-template-columns:1fr}.photo-tile{min-height:470px}.quick-grid .photo-tile{min-height:390px}.tile-copy{padding:30px 20px}.tile-copy h3{font-size:34px}.tile-heading{margin-bottom:28px}.studio aside{max-height:280px;overflow:auto}.studio-heading h1{font-size:46px}.studio-actions{flex-wrap:wrap}.article{padding-left:22px;padding-right:22px}.blog-card>img{height:230px}}

#communities{background:#ffffff}#communities .tile-heading h2{color:#605c5c}#communities .tile-heading .eyebrow{color:#1f1f1f}#communities .photo-tile{background:#161617}
#communities .photo-grid,#quick-links .photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
#communities .photo-tile,#quick-links .photo-tile{display:flex;align-items:center;justify-content:center}
#communities .photo-tile{min-height:470px}
#communities .tile-copy,#quick-links .tile-copy{width:100%;padding:30px 20px;text-align:center}
#communities .photo-tile:after,#quick-links .photo-tile:after{background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.5) 45%,rgba(0,0,0,.5) 60%,rgba(0,0,0,.18))}
@media(max-width:700px){#communities .photo-grid,#quick-links .photo-grid{grid-template-columns:1fr}#communities .photo-tile{min-height:440px}}

/* REMAX accents on the existing neutral palette. */
.hero>.eyebrow{color:var(--red);display:block;width:100%;margin-inline:auto;text-align:center}
.tile-heading>.eyebrow,.meet-copy>.eyebrow,.cta>.eyebrow{display:flex;align-items:center;gap:10px}
.tile-heading>.eyebrow:before,.meet-copy>.eyebrow:before,.cta>.eyebrow:before{content:"";width:20px;height:3px;flex:none;background:var(--red)}
.cta>.eyebrow{justify-content:center}
nav>a:not(.button){position:relative;padding:5px 0}
nav>a:not(.button):after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
nav>a[aria-current=page]:not(.button):after,nav>a:not(.button):focus-visible:after{transform:scaleX(1)}
.button,.tile-link{transition:background-color .2s ease,color .2s ease,transform .25s ease,box-shadow .25s ease}
.textlink{transition:color .2s ease;text-underline-offset:5px}
.textlink:hover,.textlink:focus-visible{text-decoration:underline}
.photo-tile:focus-visible{outline:3px solid var(--blue);outline-offset:-5px}
.photo-tile:focus-visible .tile-link{background:var(--red);color:white}
.card{transition:transform .3s ease,box-shadow .3s ease}
@media(hover:hover) and (pointer:fine){
  nav>a:not(.button):hover:after{transform:scaleX(1)}
  .button:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgb(0 0 0 / 12%)}
  .photo-tile:hover>img{transform:scale(1.04)}
  .photo-tile:hover .tile-link{background:var(--red);color:white;transform:translateY(-2px)}
  .card:hover{transform:translateY(-5px);box-shadow:0 12px 26px rgb(0 0 0 / 8%)}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .button:hover,.photo-tile:hover>img,.photo-tile:hover .tile-link,.card:hover{transform:none}
}

/* Lowercase display type paired with uppercase section labels. */
main :is(h1,h2,h3){text-transform:lowercase}
.article-content :is(h1,h2,h3){text-transform:none}
nav>a,.button,.textlink,.tile-link,.footerlinks>a{ text-transform:lowercase }
.eyebrow{ text-transform:uppercase;letter-spacing:2px }

/* A persistent contact link with room for mobile browser safe areas. */
.whatsapp-float{position:fixed;right:24px;bottom:max(24px,env(safe-area-inset-bottom));z-index:30;display:inline-flex;align-items:center;gap:10px;padding:14px 20px;background:#bfff00;color:#173400;border:1px solid #fff;border-radius:40px;box-shadow:0 6px 24px #0003;font-size:16px;font-weight:600;line-height:1.4;min-height:52px}
.whatsapp-float:hover{background:#afe600;color:#173400}.whatsapp-float svg{width:24px;height:24px;flex:none}
footer{padding-bottom:110px}
@media(max-width:700px){.whatsapp-float{right:16px;bottom:max(16px,env(safe-area-inset-bottom));padding:12px 16px;font-size:14px}}

.reviews-section{background:#fff}.reviews-section .eyebrow{color:var(--red);margin-bottom:12px}.reviews-summary{display:flex;flex-direction:column;gap:6px;flex-shrink:0;padding:16px 20px;border:1px solid #dedee2;border-radius:16px;font-weight:600}.google-attribution{font-size:16px;font-weight:400;color:#1f1f1f;white-space:nowrap;letter-spacing:normal}.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.review-card{display:flex;flex-direction:column;padding:30px;background:var(--paper);border-radius:20px;min-width:0}.review-context{font-size:14px;color:var(--muted);margin-bottom:14px}.review-stars{color:#ffd600;letter-spacing:3px;font-size:20px}.review-card blockquote{margin:20px 0 26px;font-size:20px;line-height:1.55;overflow-wrap:anywhere}.review-author{margin-top:auto;margin-bottom:8px;color:var(--ink);font-weight:600;display:flex;align-items:center;gap:10px}.review-author img{width:36px;height:36px;border-radius:50%}.review-card .textlink,.review-note{font-size:14px}.review-note{margin:24px 0 0}.review-date{font-size:14px}.review-legal{display:flex;gap:18px;flex-wrap:wrap;font-size:14px;margin-top:18px}.review-legal a{text-decoration:underline}.review-card details{margin:16px 0 24px}.review-card summary{cursor:pointer;color:var(--blue);font-size:14px}.review-card details blockquote{margin-bottom:0}@media(max-width:700px){.reviews-grid{grid-template-columns:1fr}.review-card{padding:26px}.reviews-summary{align-self:flex-start}}

/* Brief, gentle nudge every 30 seconds; remain still during interaction. */
@keyframes whatsapp-nudge{0%,96%,100%{transform:translateX(0) rotate(0)}96.5%,97.5%,98.5%{transform:translateX(-2px) rotate(-1deg)}97%,98%,99%{transform:translateX(2px) rotate(1deg)}99.5%{transform:translateX(-1px) rotate(0)}}
@media(prefers-reduced-motion:no-preference){.whatsapp-float{animation:whatsapp-nudge 30s ease-in-out infinite}.whatsapp-float:hover,.whatsapp-float:focus-visible{animation:none}}

/* Keep both contact actions together inside the existing sticky header. */
.nav-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.header-whatsapp{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;border-radius:50%;background:#bfff00;color:#173400}
.header-whatsapp svg{width:24px;height:24px}.header-whatsapp:hover{background:#afe600;color:#173400}
@media(max-width:700px){nav{flex-wrap:wrap;column-gap:16px;row-gap:12px}.nav-actions{margin-left:auto}}

.blog-slider-track.cards{position:relative;display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 44px)/3);gap:22px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px;margin:-6px;scroll-padding:6px}
.blog-slider-track::-webkit-scrollbar{display:none}
.blog-slider-track>.blog-card{min-width:0;scroll-snap-align:start}
.blog-slider-track:focus-visible{outline:3px solid var(--blue);outline-offset:4px;border-radius:8px}
.blog-slider-controls{display:flex;align-items:center;justify-content:space-between;margin-top:24px;gap:20px}
.blog-slider-controls[hidden]{display:none}
.blog-slider-status{font-size:14px;color:var(--muted);font-variant-numeric:tabular-nums}
.blog-slider-buttons{display:flex;gap:10px}
.blog-slider-buttons button{display:grid;place-items:center;width:46px;height:46px;border:1px solid #d8d8dd;border-radius:50%;background:#fff;color:var(--ink);font:inherit;font-size:28px;line-height:1;cursor:pointer}
.blog-slider-buttons button:hover:not(:disabled){background:var(--blue);border-color:var(--blue);color:#fff}
.blog-slider-buttons button:disabled{opacity:.35;cursor:default}
@media(max-width:1000px){.blog-slider-track.cards{grid-auto-columns:calc((100% - 22px)/2)}}
@media(max-width:700px){.blog-slider-track.cards{grid-auto-columns:100%}}

/* Compact mobile navigation keeps the brand and menu control on one row. */
.menu-toggle{display:none}
@media(max-width:700px){
  header{height:70px;min-height:70px}
  .nav{height:100%;padding:0 20px;flex-wrap:nowrap;gap:12px}
  .brand{white-space:nowrap;min-width:0;font-size:clamp(17px,5vw,20px)}
  .menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:44px;height:44px;flex:0 0 44px;margin-left:auto;padding:0;border:0;background:transparent;color:var(--ink);cursor:pointer}
  .menu-toggle span{display:block;width:23px;height:2px;border-radius:2px;background:currentColor}
  .nav nav{display:none;position:absolute;top:100%;left:0;right:0;width:auto;padding:18px 20px 22px;background:#fff;border-bottom:1px solid #e8e8ed;box-shadow:0 12px 20px #00000012;flex-direction:column;align-items:stretch;gap:0}
  .nav nav.is-open{display:flex}
  .nav nav>a{display:block;padding:12px 4px;font-size:16px}
  .nav-actions{margin:12px 0 0;display:flex;justify-content:space-between;gap:12px}
  .nav-actions .button{flex:1;font-size:14px}
  .whatsapp-float{display:none}
}

/* Compact, photo-led mobile hero. Desktop remains as designed. */
.mobile-hero-card{display:none}
@media(max-width:700px){
  .hero{padding:22px 16px 0}
  .hero>.eyebrow{font-size:clamp(9px,2.45vw,12px);letter-spacing:clamp(.3px,.18vw,1px);white-space:nowrap}
  .hero h1{font-size:clamp(32px,8.5vw,43px);letter-spacing:-1.7px;line-height:1.04;margin:10px 0 19px}
  .hero>p,.hero>.actions{display:none}
  .mobile-hero-card{display:block;position:relative;width:calc(100% + 32px);max-width:none;margin:28px -16px 0;isolation:isolate}
  .mobile-property-image{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;object-position:center 57%;border-radius:0}
  .mobile-matt-image{position:absolute;z-index:2;bottom:0;left:-10px;height:125%;width:auto;max-width:55%;object-fit:contain;object-position:bottom;filter:drop-shadow(0 5px 12px #0003)}
  .mobile-talk-link{position:absolute;z-index:3;right:12px;top:15px;display:inline-flex;align-items:center;gap:14px;background:#fff;color:#1d1d1f;border-radius:100px;padding:9px 13px;font-size:14px;font-weight:650;box-shadow:0 3px 14px #0003}
  .mobile-talk-link:hover{color:var(--blue)}
  .hero-visual{width:100%;margin:12px 0 0}
  .hero-visual .hero-image{display:none}
  .mls-search-panel{position:relative;top:auto;left:auto;transform:none;width:100%;max-width:600px;margin:0 auto;padding:12px;box-shadow:0 5px 22px #0001}
}

/* Small scroll-linked movement for section labels across the site. */
.scroll-label{transform:translateX(var(--label-scroll-x,0px))}
@media(prefers-reduced-motion:reduce){.scroll-label{transform:none}}

main{overflow-x:clip}

/* The portrait is anchored to the section, outside the scrolling cards. */
.reviews-section{isolation:isolate;scroll-margin-top:76px}
.reviews-layout{position:relative;padding-top:80px;padding-bottom:52px}
.reviews-copy{position:relative;z-index:1}
.testimonials-portrait{position:absolute;z-index:0;right:calc((100% - 100vw)/2 - 130px);bottom:0;width:46%;height:780px;pointer-events:none}
.testimonials-portrait img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom}
.reviews-slider{padding-top:180px}
@media(min-width:701px){
  .reviews-layout{padding-top:90px}
  .reviews-copy>.sectionhead{justify-content:flex-start;align-items:center;gap:48px}
  .reviews-slider{padding-top:10px}
}
.reviews-slider-track.reviews-grid{position:relative;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 44px)/3);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px;margin:-6px;scroll-padding:6px}
.reviews-slider-track::-webkit-scrollbar{display:none}
.reviews-slider-track>.review-card{scroll-snap-align:start;background:rgb(255 255 255 / 18%);border:1px solid rgb(170 174 184 / 24%);box-shadow:0 3px 12px rgb(0 0 0 / 3%);backdrop-filter:blur(18px) brightness(1.85);-webkit-backdrop-filter:blur(18px) brightness(1.85)}
.reviews-slider-track:focus-visible{outline:3px solid var(--blue);outline-offset:4px;border-radius:8px}
.reviews-slider-controls{display:flex;align-items:center;justify-content:space-between;margin-top:24px;gap:20px}
.reviews-slider-controls[hidden]{display:none}
.reviews-slider-status{font-size:14px;color:var(--muted);font-variant-numeric:tabular-nums}
.reviews-slider-buttons{display:flex;gap:10px}
.reviews-slider-buttons button{display:grid;place-items:center;width:46px;height:46px;border:1px solid #d8d8dd;border-radius:50%;background:#fff;color:var(--ink);font:inherit;font-size:28px;line-height:1;cursor:pointer}
.reviews-slider-buttons button:hover:not(:disabled){background:var(--blue);border-color:var(--blue);color:#fff}
.reviews-slider-buttons button:disabled{opacity:.35;cursor:default}
@media(max-width:1000px){.reviews-slider-track.reviews-grid{grid-auto-columns:calc((100% - 22px)/2)}.testimonials-portrait{width:60%;right:calc((100% - 100vw)/2 - 110px);height:780px}}
@media(max-width:700px){.reviews-layout{padding-top:56px;padding-bottom:36px}.reviews-slider{padding-top:180px}.reviews-slider-track.reviews-grid{grid-auto-columns:100%}.testimonials-portrait{right:-120px;width:567px;height:850px}.reviews-section .sectionhead{position:relative;z-index:1}.reviews-section .review-note,.reviews-section .review-legal{max-width:65%;width:fit-content;background:rgb(255 255 255 / 94%);padding:8px;border-radius:8px}.reviews-slider-status{background:rgb(255 255 255 / 94%);padding:4px 8px;border-radius:8px}}

@media(min-width:1101px){.meet-matt .portrait img{left:calc(-28% + 90px)}}

/* Original neutral headline colors, with the existing entrance motion. */
.hero .hero-line{display:block;color:var(--ink)}
.hero .hero-line-secondary{color:#818187}
.meet-matt .portrait img,.mobile-matt-image{filter:drop-shadow(-6px 10px 16px rgb(0 0 0 / 12%))}
/* Clip only the photograph so search menus can still extend beyond it. */
.hero-image-frame{overflow:hidden;position:relative}
.terrace-cloud-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none;opacity:0}
.hero-image-frame.cloud-video-ready .terrace-cloud-video{opacity:1}
@media(max-width:700px){.terrace-cloud-video{display:none}}
@media(min-width:701px) and (prefers-reduced-motion:no-preference){
  .hero-image-frame .hero-image,.terrace-cloud-video{transform:translateY(var(--terrace-y,0px)) scale(1.07)}
}
.tile-arrow{display:inline-block;transition:transform 350ms cubic-bezier(.2,.65,.3,1)}
.header-whatsapp,.whatsapp-float{transition:background-color 200ms ease,box-shadow 250ms ease}
.blog-slider-buttons button,.reviews-slider-buttons button{transition:background-color 200ms ease,color 200ms ease,border-color 200ms ease}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  #quick-links .photo-tile:hover .tile-arrow{transform:translate(3px,-3px)}
  .header-whatsapp:hover{box-shadow:0 4px 14px rgb(0 0 0 / 14%)}
}
@media(prefers-reduced-motion:reduce){
  .hero-image-frame .hero-image,.tile-arrow{transform:none!important}
  .terrace-cloud-video{display:none}
}

/* Keep account navigation out of the v1 menu; direct sign-in remains available. */
.nav-signin{display:none!important;white-space:nowrap}
/* Buy navigation */
.buy-menu{position:relative}.buy-menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:6px}.buy-menu summary::-webkit-details-marker{display:none}.buy-menu summary:after{content:'⌄';font-size:16px;line-height:1}.buy-menu[open] summary,.buy-menu summary[aria-current=page]{color:var(--blue)}.buy-menu-panel{position:absolute;top:calc(100% + 18px);left:-20px;min-width:225px;padding:8px;background:#fff;border:1px solid #e8e8ed;border-radius:12px;box-shadow:0 18px 35px #101c2925;display:grid;z-index:24}.buy-menu-panel a{padding:11px 12px;border-radius:7px;white-space:nowrap}.buy-menu-panel a:hover{background:#f4f6fa}.buy-menu summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
@media(max-width:700px){.buy-menu{padding:0 4px}.buy-menu summary{padding:12px 0;font-size:16px}.buy-menu-panel{position:static;box-shadow:none;border:0;border-left:2px solid #e6e9ef;border-radius:0;margin:0 0 8px 8px;padding:0 0 0 10px}.buy-menu-panel a{font-size:15px}}
.homey-panel[hidden]{display:none}

/* Solid testimonials keep the portrait from showing through review text. */
.reviews-slider-track.reviews-grid>.review-card{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;border-color:#e3e3e8}
.mobile-contact-button{display:none}
.community-toggle{display:block;margin:24px auto 12px;min-height:46px;padding:12px 22px;border:1px solid #b8bdc7;border-radius:28px;background:#fff;color:var(--blue);font:inherit;font-size:16px;cursor:pointer}
.community-toggle[hidden]{display:none}
.community-toggle:hover{background:#f5f5f7}
@media(max-width:700px){
  .hero>.mobile-contact-button{display:flex;margin:14px auto 0;max-width:420px;width:100%;min-height:48px}
  #quick-links .photo-grid,#communities .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  #quick-links .photo-tile,#communities .photo-tile{min-height:230px}
  #quick-links .tile-copy,#communities .tile-copy{padding:22px 10px}
  #quick-links .tile-copy h3,#communities .tile-copy h3{font-size:clamp(20px,5.4vw,24px);line-height:1.12;letter-spacing:-.6px;overflow-wrap:normal}
  #quick-links .tile-copy p,#communities .tile-copy p{font-size:14px;line-height:1.4;margin-bottom:14px}
  #quick-links .tile-link,#communities .tile-link{font-size:14px;padding:9px 11px;line-height:1.3;max-width:100%}
  #communities .photo-tile[hidden]{display:none}
  .reviews-layout .testimonials-portrait{display:none}
  .reviews-slider{padding-top:0}
  .reviews-section .review-note,.reviews-section .review-legal{max-width:100%;background:none;padding:0}
}

/* Matt’s supplied portrait replaces the floating text button. Position the original
   transparent PNG within its visible bounds without changing the artwork. */
.whatsapp-float{display:block;width:102px;height:auto;aspect-ratio:203/256;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:inherit;box-shadow:none;overflow:hidden;filter:drop-shadow(0 4px 7px #0002);transition:filter .2s ease}
.whatsapp-float:hover{background:transparent;color:inherit;filter:drop-shadow(0 6px 10px #0004)}
.whatsapp-float img{position:absolute;left:-73.891626%;top:-41.015625%;width:246.305419%;height:195.3125%;max-width:none;object-fit:contain}
.whatsapp-float:focus-visible{outline:3px solid var(--blue);outline-offset:5px;border-radius:8px}
@media(max-width:700px){.whatsapp-float{display:block;width:76px;right:14px;bottom:max(14px,env(safe-area-inset-bottom));padding:0}}

/* Same portrait in the header’s existing 44px contact target. */
.header-whatsapp{position:relative;overflow:hidden;background:transparent;border-radius:0;box-shadow:none}
.header-whatsapp:hover{background:transparent}
.header-whatsapp img{position:absolute;width:195.3125%;height:195.3125%;max-width:none;left:-48.2421875%;top:-41.015625%;object-fit:contain}
.header-whatsapp:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:6px}

/* Delayed WhatsApp greeting; header contact stays immediately available. */
.whatsapp-widget{position:fixed;right:24px;bottom:max(24px,env(safe-area-inset-bottom));z-index:30;width:102px}
.whatsapp-widget[hidden],.whatsapp-message[hidden]{display:none!important}
.whatsapp-widget .whatsapp-float{position:relative;right:auto;bottom:auto;width:100%;animation:none}
.whatsapp-message{position:absolute;right:0;bottom:calc(100% + 18px);width:285px;max-width:calc(100vw - 40px);background:#dcf8c6;color:#16382b;border:1px solid #b9dfb3;border-radius:18px 18px 5px 18px;padding:20px 34px 20px 20px;box-shadow:0 8px 28px #10251d24;font-size:16px;line-height:1.5;text-align:left}
.whatsapp-message::after{content:"";position:absolute;right:23px;bottom:-8px;width:14px;height:14px;background:#dcf8c6;border-right:1px solid #b9dfb3;border-bottom:1px solid #b9dfb3;transform:rotate(45deg)}
.whatsapp-widget .whatsapp-message a{display:block;color:inherit;text-transform:none}
.whatsapp-message a:hover{text-decoration:underline;text-underline-offset:3px}
.whatsapp-message-close{position:absolute;right:3px;top:3px;width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:#355446;cursor:pointer;font:inherit;font-size:24px;line-height:1}
.whatsapp-message-close:hover{background:#16382b12}
.whatsapp-message-close:focus-visible,.whatsapp-message a:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
@keyframes whatsapp-swoosh{from{opacity:0;transform:translate3d(22px,180px,0) rotate(12deg)}70%{opacity:1;transform:translate3d(-3px,-8px,0) rotate(-2deg)}to{opacity:1;transform:translate3d(0,0,0) rotate(0)}}
@keyframes whatsapp-message-in{from{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:no-preference){.whatsapp-widget.is-visible{animation:whatsapp-swoosh 850ms cubic-bezier(.2,.8,.2,1) both}.whatsapp-message:not([hidden]){animation:whatsapp-message-in 250ms ease-out both;transform-origin:bottom right}}
@media(max-width:700px){.whatsapp-widget{width:76px;right:14px;bottom:max(14px,env(safe-area-inset-bottom))}.whatsapp-message{width:265px;max-width:calc(100vw - 28px);font-size:15px;bottom:calc(100% + 14px)}}

/* Home 2: REMAX network, using Matt’s supplied brand artwork. */
.remax-network{position:relative;isolation:isolate;overflow:hidden;background:var(--paper);padding:88px 0 36px;color:var(--ink);scroll-margin-top:76px}
.remax-world-map{position:absolute;z-index:-1;width:min(1120px,92%);height:auto;right:-65px;top:88px;opacity:.13;filter:grayscale(1);pointer-events:none;user-select:none;mask-image:linear-gradient(90deg,transparent,#000 26%,#000 92%,transparent)}
.remax-network-content{position:relative;padding-top:0;padding-bottom:0}
.remax-network-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:78px;align-items:end;margin-bottom:60px}
.remax-network-logo{display:block;width:228px;height:auto;margin:0 0 36px;object-fit:contain}
.remax-network .eyebrow{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:1.6px;color:var(--muted)}
.remax-network .eyebrow:before{content:"";display:block;width:20px;height:3px;background:var(--red);flex:none}
.remax-network h2{font-size:clamp(36px,4.3vw,56px);font-weight:600;line-height:1.08;letter-spacing:-2.4px;margin:20px 0 0}
.remax-network-copy{padding-bottom:4px}
.remax-network-copy p{font-size:17px;line-height:1.65;color:var(--muted);max-width:405px;margin:0 0 20px}
.remax-network-copy p:first-child{color:var(--ink);font-size:20px;line-height:1.5;font-weight:500}
.remax-network-copy .button{margin-top:9px;font-size:15px;font-weight:600;padding:13px 23px}
.remax-network-stats{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #cdcdcf;border-bottom:1px solid #cdcdcf;padding:38px 0 40px;gap:48px}
.remax-stat{min-width:0;padding-left:0}
.remax-stat+.remax-stat{border-left:1px solid #cdcdcf;padding-left:48px}
.remax-stat .remax-stat-number{color:var(--ink);font-size:clamp(58px,7.4vw,100px);font-weight:600;font-variant-numeric:tabular-nums;line-height:1.06;letter-spacing:-4px;margin:0 0 12px;white-space:nowrap}
.remax-stat-number>[data-remax-count]{display:inline-block;min-height:1.06em}
.remax-stat h3{font-size:19px;line-height:1.3;font-weight:600;letter-spacing:-.4px;margin:0 0 8px}
.remax-stat>p:last-child{font-size:16px;line-height:1.5;margin:0;color:var(--muted)}
.remax-network-source{font-size:12px;line-height:1.7;color:var(--muted);margin:22px 0 0}
.remax-network-source a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.remax-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){.remax-network-intro{gap:38px}.remax-network h2{font-size:43px}.remax-world-map{top:145px;right:-12%;width:110%;max-width:none}.remax-stat .remax-stat-number{font-size:76px;letter-spacing:-3px}}
@media(max-width:700px){.remax-network{padding:56px 0 30px;scroll-margin-top:70px}.remax-network-intro{grid-template-columns:1fr;gap:28px;margin-bottom:36px}.remax-network-logo{width:190px;margin-bottom:28px}.remax-network h2{font-size:clamp(34px,8.2vw,46px);letter-spacing:-1.8px}.remax-network-copy p{max-width:480px;font-size:16px}.remax-network-copy p:first-child{font-size:19px}.remax-network .eyebrow{font-size:11px;letter-spacing:1.2px}.remax-world-map{width:170%;right:-48%;top:240px;opacity:.12;mask-image:linear-gradient(90deg,transparent,#000 15%,#000 90%,transparent)}.remax-network-stats{gap:22px;padding:28px 0}.remax-stat+.remax-stat{padding-left:22px}.remax-stat .remax-stat-number{font-size:clamp(40px,9vw,62px);letter-spacing:-2px}.remax-stat h3{font-size:16px}.remax-stat>p:last-child{font-size:14px}.remax-network-source{font-size:12px;max-width:480px}}
@media(max-width:370px){.remax-network-stats{gap:15px}.remax-stat+.remax-stat{padding-left:15px}.remax-stat .remax-stat-number{font-size:36px;letter-spacing:-1.5px}}

/* Personal results sit alongside, and are distinguished from, global network figures. */
.remax-network-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.remax-stat+.remax-stat{padding-left:24px}
.remax-stat-owner{font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:22px}
.remax-stat .remax-stat-number{font-size:clamp(38px,4.5vw,62px);letter-spacing:-2.5px}
.remax-stat h3{font-size:17px}
@media(max-width:1000px){.remax-network-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.remax-stat:nth-child(3){border-left:0;padding-left:0}.remax-stat .remax-stat-number{font-size:clamp(40px,7vw,70px)}}
@media(max-width:700px){.remax-network-stats{gap:26px 18px}.remax-stat+.remax-stat{padding-left:18px}.remax-stat:nth-child(3){padding-left:0}.remax-stat .remax-stat-number{font-size:clamp(32px,8.4vw,54px);letter-spacing:-1.8px}.remax-stat-owner{font-size:10px;letter-spacing:.6px;margin-bottom:14px}.remax-stat h3{font-size:16px}}

.remax-stat-owner{color:var(--ink)}

/* The next chapter covers the pinned hero as the visitor scrolls. */
main>.hero{position:sticky;top:var(--hero-pin-top,76px);z-index:0}
.hero-scroll-content{position:relative;z-index:1;background:#fff;display:flow-root}
body>footer{position:relative;z-index:1}
@media(prefers-reduced-motion:reduce){main>.hero{position:relative;top:auto}}

/* Pin only the introduction; the terrace and search lead the covering content. */
main>.hero{padding-bottom:43px}
.hero-search-section{position:relative;background:var(--paper)}
.hero-search-section>.hero-visual{width:100%;margin:0}
@media(max-width:700px){main>.hero{padding-bottom:28px}.hero-search-section>.mobile-hero-card{width:100%;margin:0}.hero-search-section>.hero-visual{margin:0}}

.quick-slide,.quick-click{display:inline-block;position:relative}
.quick-pointer{position:absolute;left:76%;top:55%;pointer-events:none;opacity:0;z-index:1;line-height:0}
.quick-click-ring{position:absolute;left:76%;top:55%;width:30px;height:30px;border:2px solid var(--red);border-radius:50%;pointer-events:none;opacity:0;translate:-50% -50%}
.quick-motion-heading.is-playing .quick-slide{animation:quick-slide-in 1s cubic-bezier(.2,.7,.2,1) both}
.quick-motion-heading.is-playing .quick-pointer{animation:quick-pointer-click 1.4s 1s both}
.quick-motion-heading.is-playing .quick-click-ring{animation:quick-click-pulse .5s 1.85s both}
@keyframes quick-slide-in{from{opacity:0;transform:translateX(100px)}to{opacity:1;transform:translateX(0)}}
@keyframes quick-pointer-click{0%{opacity:0;transform:translate(85px,35px)}20%{opacity:1}55%{opacity:1;transform:translate(0,0) scale(1)}65%{opacity:1;transform:translate(0,0) scale(.8)}78%{opacity:1;transform:translate(0,0) scale(1)}100%{opacity:0;transform:translate(0,0)}}
@keyframes quick-click-pulse{0%{opacity:.8;scale:.4}100%{opacity:0;scale:1.6}}
@media(prefers-reduced-motion:reduce){.quick-motion-heading.is-playing .quick-slide{animation:none}.quick-pointer,.quick-click-ring{display:none}}

/* Keep the expanding headline inside the hero without horizontal page scrolling. */
main > .hero{overflow:clip}
.hero .agent-motion-word{display:inline-block;white-space:nowrap;color:inherit}
.hero .agent-motion-letter{display:inline-block;color:inherit;transform-origin:center center;will-change:transform,opacity}
@media(prefers-reduced-motion:reduce){.hero .agent-motion-letter{will-change:auto;transform:none!important;opacity:1!important}}

/* An inert visual layer lets the headline grow over the scrolling terrace. */
.agent-motion-layer{position:fixed;inset:0;z-index:5;pointer-events:none;overflow:clip}
.agent-motion-layer[hidden]{display:none}
.agent-motion-graphic{position:absolute;display:block;margin:0}
.agent-motion-layer .agent-motion-word{display:inline-block;white-space:nowrap;color:inherit}
.agent-motion-layer .agent-motion-letter{display:inline-block;color:inherit;transform-origin:center;will-change:transform,opacity}
@media(prefers-reduced-motion:reduce){.agent-motion-layer{display:none}}

/* Rasterize each glyph at its actual display size, without scale transforms. */
.agent-motion-graphic{left:0;width:100%;overflow:visible}
.agent-motion-layer .agent-motion-letter{position:absolute;display:block;text-align:center;transform:none;will-change:auto}

/* REMAX identity and contact action on the left, statement on the right. */
.remax-network-intro{grid-template-columns:minmax(270px,.65fr) minmax(0,1.35fr);align-items:center;gap:64px}
.remax-network-intro>div:first-child .button{font-size:15px;font-weight:600;padding:13px 23px}
.remax-network-logo{margin-bottom:24px}
.remax-network-copy{padding:0}
.remax-network-copy h2{margin:0}
@media(max-width:700px){.remax-network-intro{grid-template-columns:1fr;gap:30px}.remax-network-logo{margin-bottom:20px}}

@keyframes whatsapp-fade-out{from{opacity:1}to{opacity:0}}
@media(prefers-reduced-motion:no-preference){.whatsapp-widget.is-hiding{animation:whatsapp-fade-out 450ms ease-in both}}

.whatsapp-widget{bottom:calc(max(24px,env(safe-area-inset-bottom)) + 32px)}
.whatsapp-widget-close{position:absolute;right:calc(50% - 15px);bottom:-34px;display:grid;place-items:center;width:30px;height:30px;border:1px solid #d8d8de;border-radius:50%;background:#fff;color:#626267;font:22px/1 Arial,sans-serif;box-shadow:0 2px 8px #0001;cursor:pointer}
.whatsapp-widget-close[hidden]{display:none}
.whatsapp-widget-close:hover{background:#f1f1f4;color:#1d1d1f}
.whatsapp-widget-close:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.whatsapp-widget.is-hiding{pointer-events:none}
@media(max-width:700px){.whatsapp-widget{bottom:calc(max(14px,env(safe-area-inset-bottom)) + 32px)}}
