/* Olive / chalk / charcoal. Classic Helvetica / Arial typography. */
.direction{--accent:#59634a;--accent-light:#cbd1b8;--surface:#f3f2ed;--surface-dense:#e9e8e0;--text:#292d26;--navy:#202621;--line:#d8dbcf;--copper:var(--accent);--display:'Helvetica Neue',Helvetica,Arial,sans-serif;--ui:'Helvetica Neue',Helvetica,Arial,sans-serif;background:#fbfaf7;color:var(--text);font-family:var(--ui)}
.direction :is(button,input,textarea,select){font-family:var(--ui)}
.direction .hero--refined h1{font-size:clamp(54px,5.3vw,80px);font-weight:400;line-height:1.08;letter-spacing:-.04em}
.direction :is(.section-heading h2,.service-copy h2,.featured h2,.contact h2,.contact h3,.mini-cta h2,.agent-intro h3,.developers-intro h2,.property-detail h2){font-weight:400;letter-spacing:-.035em}
.direction .brand{font-family:var(--ui)}
.direction .hero--refined .brand span{font-weight:400;letter-spacing:.15em}
.direction .hero--refined .hero-chooser{background:linear-gradient(135deg,#30352eeb,#202621f2)}
.direction .hero--refined .chooser-option:hover,.direction .hero--refined .chooser-option[aria-pressed=true]{background:#cbd1b818;border-color:#cbd1b85c}
.direction .hero--refined .hero-trust{background:#f5f5ef}
.direction .hero--refined .quiz-time{color:#d9dece}
.direction .action-button:hover,.direction .hero--refined .action-button:hover{background:#414c35}
.direction .featured--refined .exclusive-label,.direction .service-label{background:#dce1d0;color:#465238}
.direction .featured--refined .featured-only{background:#202621;color:#f5f5ef}
.direction .featured--refined .featured-image-facts{background:#f5f5eff5}
.direction .featured--refined .featured-copy>p:not(.featured-location){color:#62695c}
.direction .featured--refined .featured-location{color:#62695c}
.direction .catalog-card b{color:#465238}
.direction .catalog-panel,.direction .reviews-panel,.direction .journal-panel,.direction .media-panel,.direction .property-dialog{background:#f3f2ed}
.direction .developer-card .developer-logo{background:#353e32;border-color:#cbd1b822}
.direction .developer-card small{color:#c4cabd}
.direction .developer-action{color:#cbd1b8}
.direction .developers-more{border-color:#9da88b;color:#dce1d0}
.direction .contact-panel,.direction .site-footer{background:#202621}
.direction .contact-info b,.direction .contact-social button,.direction .footer-social button{color:#cbd1b8}
.direction .contact-social button{border-color:#a6af96;background:#cbd1b810}
.direction .contact-form .action-button{background:var(--accent)}
.direction .contact-form .action-button:hover{background:#414c35}
.direction .property-dialog .dialog-close{background:#f3f2ed}
.direction .property-price{color:#202621}
.direction .property-description{color:#62695c}
.direction .service-note{color:#59634a}
@media(max-width:900px){.direction .hero--refined h1{font-size:clamp(44px,6.4vw,65px)}}
@media(max-width:650px){.direction .hero--refined h1{font-size:clamp(33px,8.7vw,51px);line-height:1.17;letter-spacing:-.04em}.direction .featured--refined h2{font-size:31px;line-height:1.17}.direction .service-copy h2{font-size:27px}.direction .section-heading h2{font-size:29px}.direction :is(.catalog-panel,.reviews-panel,.journal-panel,.media-panel){background:none}.direction .property-detail h2{font-size:28px}}
@media(max-width:360px){.direction .featured--refined h2{font-size:27px}}
.direction .hero--refined .brand small{color:#d9dece}
.direction :is(.developers,.contact,.request-banner) .eyebrow{color:var(--accent-light)}
.direction .exclusive-title-open{font-family:var(--display);font-weight:inherit}
.direction .selection-grid button:hover,.direction .selection-grid button[aria-pressed=true],.direction .favorite[aria-pressed=true]{background:#e6e9dc;border-color:#9da88b;color:#465238}
.direction .interest-options button:hover,.direction .interest-options button:focus-visible,.direction .filter-options button:hover,.direction .filter-options button[aria-selected=true]{background:#e6e9dc;color:#292d26}
.direction .youtube-link,.direction .article-open,.direction .section-heading a{color:#465238}
.direction .site-footer .brand small{color:#cbd1b8}

.direction .service-note{font-family:var(--ui);font-style:normal;font-size:16px;line-height:1.45;transform:none}

/* Common desktop grid and authored navigation controls. */
.direction .menu-languages{display:none}
.direction{--wrap:min(1510px,calc(100% - 6vw))}
.direction .hero--refined .wrap,.direction .featured--refined .wrap{width:var(--wrap)}
.direction .hero--refined .hero-trust{margin-left:max(3vw,calc((100% - 1510px)/2));width:min(800px,calc(100% - 6vw))}
.direction .hero--refined .site-header{display:flex;justify-content:space-between;gap:24px}
.direction .header-tools{display:flex;align-items:center;gap:20px}
.direction .header-phone{font-size:15px;white-space:nowrap;color:#f5f5ef;letter-spacing:.01em}
.direction .hero--refined .header-contact,.direction .hero--refined .hero-actions .quiet-button{background:rgba(32,38,33,.5);border-color:#ffffff55;color:#fff}
.direction .hero--refined .header-contact:hover,.direction .hero--refined .hero-actions .quiet-button:hover{background:rgba(32,38,33,.75);border-color:#cbd1b8}
.direction .hero--refined .header-contact{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 20px;border-radius:8px}
.direction .menu-toggle,.direction .menu-close{display:grid;place-items:center;flex:none;width:46px;height:46px;padding:10px;border:1px solid #ffffff45;border-radius:8px;background:#20262180;color:#f5f5ef}
.direction .menu-toggle svg{width:26px;height:26px;stroke-width:1.7}
.direction .menu-toggle:hover{background:#202621c0;border-color:#cbd1b8}
.direction .language-picker{position:relative;z-index:10}
.direction .language-trigger{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 12px;border:1px solid #ffffff45;border-radius:8px;background:#20262180;color:#f5f5ef;font-size:13px;font-weight:500}
.direction .language-trigger>svg:first-child{width:20px;height:20px;stroke-width:1.4}
.direction .language-trigger>svg:last-child{width:14px;height:14px}
.direction .language-options{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;padding:6px;border:1px solid #cbd1b830;border-radius:8px;background:#202621;box-shadow:0 8px 30px #0004}
.direction .language-options button{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:12px;border-radius:5px;background:none;color:#f5f5ef;font-size:14px;text-align:left}
.direction .language-options button[aria-pressed=true],.direction .language-options button:hover{background:#59634a}
.direction .language-options span{font-size:11px;color:#d9dece}
.direction .site-menu{box-sizing:border-box;width:min(1100px,calc(100% - 80px));max-width:1100px;max-height:calc(100dvh - 80px);padding:32px 40px;margin:40px auto;border:1px solid #cbd1b833;border-radius:14px;background:#202621;color:#f5f5ef;overflow:auto;overscroll-behavior:contain;box-shadow:0 25px 90px #0006}
.direction .site-menu::backdrop{background:#111711b8}
.direction .site-menu .eyebrow{color:#cbd1b8}
.direction .menu-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:32px}
.direction .menu-brand{font-size:17px;letter-spacing:.12em;font-weight:400}
.direction .menu-body{display:grid;grid-template-columns:minmax(0,1fr) 32%;gap:70px}
.direction .menu-links{display:flex;flex-direction:column;margin-top:18px}
.direction .menu-links a{display:flex;align-items:center;gap:18px;padding:16px 10px;border:0;border-radius:6px;font-size:clamp(24px,2.8vw,38px);line-height:1.2;letter-spacing:-.025em;text-decoration:none;transition:background .18s}
.direction .menu-links a:hover{background:#59634a55}
.direction .menu-index{font-size:12px;letter-spacing:.05em;color:#a5af97;width:24px}
.direction .menu-links .icon{margin-left:auto;width:26px;height:26px;color:#cbd1b8;transition:transform .18s}
.direction .menu-links a:hover .icon{transform:translateX(4px)}
.direction .menu-contact{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-left:30px;border-left:1px solid #cbd1b833}
.direction .menu-contact h2{font-size:30px;font-weight:400;letter-spacing:-.03em;line-height:1.2;margin:18px 0}
.direction .menu-contact p{font-size:15px;color:#c4cabd;line-height:1.5;margin:0 0 25px}
.direction .menu-phone{font-size:18px;white-space:nowrap;margin-bottom:25px}
.direction .video-placeholder>span{display:grid;place-items:center;padding:0;background:#59634a;color:#fff}
.direction .video-placeholder>span svg{width:28px;height:28px;stroke:none;fill:currentColor;transform:translateX(-1.8px)}
.direction .video-placeholder:hover>span{background:#414c35}
.direction .agent-intro .agent-name,.direction .journal-grid article>div>span,.direction .agent-intro .text-button{color:#59634a}
.direction .article-meta{display:flex;align-items:center;gap:7px;margin:18px 0;color:#737a6c;font-size:12px}
.direction .article-meta .icon{width:16px;height:16px;stroke-width:1.5}
.direction .journal-grid .article-meta span{font-size:12px;font-weight:400;color:inherit}
.direction .journal-grid .article-open{display:flex;align-items:center;justify-content:flex-start;gap:10px;min-height:46px;padding:10px 12px;border:1px solid #d8dbcf;border-radius:6px;background:#f3f2ed;color:#465238;font-size:14px;font-weight:500;transition:background .18s,color .18s,border-color .18s}
.direction .journal-grid .article-open .icon{width:18px;height:18px;stroke-width:1.5}
.direction .journal-grid .article-open .icon:last-child{margin-left:auto;transform:translateX(.5px)}
.direction .journal-grid .article-open:hover,.direction .journal-grid .article-open:focus-visible{background:#59634a;color:#fff;border-color:#59634a}
@media(max-width:650px){
.direction{--wrap:calc(100% - 40px)}
.direction .hero--refined .hero-trust{margin-left:20px;width:calc(100% - 40px)}
.direction .featured--refined .wrap,.direction .service-panel{width:calc(100% - 24px)}
/* One mobile header row; language selection lives in the menu. */
.direction .hero--refined .site-header{display:flex;align-items:center;gap:12px;min-height:80px;padding:18px 0}
.direction .header-tools{display:flex;gap:8px;flex:none}
.direction .hero--refined .brand span{font-size:21px;letter-spacing:.12em}
.direction .hero--refined .brand small{font-size:9px;letter-spacing:.55em;margin-top:5px}
.direction .header-phone,.direction .language-picker{display:none}
.direction .hero--refined .header-contact{min-height:44px;padding:8px 12px;font-size:13px;white-space:nowrap}
.direction .menu-toggle{width:44px;height:44px;padding:9px}
.direction .hero--refined .hero-layout{padding:40px 0 32px}
.direction .hero--refined .hero-copy{width:100%;max-width:440px;margin-inline:auto;padding:0;text-align:center}
.direction .hero--refined h1{font-size:clamp(36px,10.7vw,58px);line-height:1.08;margin-bottom:28px}
.direction .hero--refined h1 em{display:inline-block;font-size:1.24em;line-height:1.12;margin-top:6px}
.direction .hero--refined .hero-copy>p{max-width:350px;margin:0 auto 30px;font-size:16px;line-height:1.5}
.direction .hero--refined .hero-actions{display:flex;flex-direction:column;align-items:center;gap:14px;padding:0;width:100%;max-width:350px;margin-inline:auto}
.direction .hero--refined .hero-quiz{width:100%;align-items:center}
.direction .hero--refined .hero-actions .action-button,.direction .hero--refined .hero-actions .quiet-button{box-sizing:border-box;width:100%;min-width:0;min-height:58px;padding:10px 14px;gap:12px;justify-content:space-between;font-size:14px;border-radius:8px}
.direction .hero--refined .quiz-label{font-size:14px}
.direction .hero--refined .action-mark{width:32px;height:32px}
.direction .hero--refined .quiz-time{position:static;margin:10px 0 0;font-size:12px;text-align:center}
.direction .menu-languages{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:28px;padding-bottom:22px;border-bottom:1px solid #cbd1b833}
.direction .menu-language-options{display:flex;gap:6px}
.direction .menu-language-options button{min-height:44px;padding:10px 12px;border:1px solid #cbd1b833;border-radius:6px;background:transparent;color:#f5f5ef;font-size:13px}
.direction .menu-language-options button[aria-pressed=true]{background:#59634a;border-color:#a5af97}
.direction .menu-language-options button:focus-visible{outline:2px solid #cbd1b8;outline-offset:3px}
.direction .site-menu{position:fixed;inset:0;margin:0;width:100%;max-width:none;height:100dvh;max-height:100dvh;padding:22px 20px;border:0;border-radius:0}
.direction .menu-head{margin-bottom:28px}
.direction .menu-body{grid-template-columns:1fr;gap:25px}
.direction .menu-links a{font-size:29px;padding:13px 6px}
.direction .menu-contact{padding:24px 0 0;border-left:0;border-top:1px solid #cbd1b833}
.direction .menu-contact h2{display:none}
.direction .menu-contact p{margin:12px 0 16px}
.direction .menu-phone{margin-bottom:16px}
}
.direction .journal-grid .article-open span{color:inherit;font-size:inherit;font-weight:inherit}

.direction .catalog-filters label.is-active-filter{background:#e0e5d5;box-shadow:inset 0 0 0 1px #79876a}.direction .catalog-filters label.is-active-filter .filter-trigger{color:#3d4b30}.direction .catalog-filters label.is-active-filter .filter-value:before{content:'';display:inline-block;width:6px;height:6px;background:#59634a;border-radius:50%;margin-right:8px;vertical-align:middle}.direction .lead-dialog{width:min(580px,calc(100% - 32px));padding:36px;box-sizing:border-box}.direction .lead-dialog h2{font-size:32px;font-weight:400;letter-spacing:-.03em;margin:20px 0 12px}.direction .lead-dialog>p{color:#68715f;line-height:1.5}.direction .lead-dialog .property-form{margin-top:24px}.direction .lead-dialog input,.direction .lead-dialog textarea{box-sizing:border-box;width:100%}.direction .editor-lead{background:white;border:1px solid #d8dbcf;padding:18px;margin:16px 0;border-radius:6px}.direction .editor-lead p{white-space:pre-wrap;overflow-wrap:anywhere}.direction .editor-lead small{color:#68715f}@media(max-width:600px){.direction .lead-dialog{padding:24px}.direction .lead-dialog h2{font-size:26px}.direction .lead-dialog .form-row{grid-template-columns:1fr}}

.direction #more-filters.has-active-filters{background:#e0e5d5;border-color:#79876a;box-shadow:inset 0 0 0 1px #79876a}

/* Mobile footer follows one grid, with the brand and contacts spanning both columns. */
@media(max-width:650px){
.direction .site-footer{padding:36px 0 22px;margin-top:40px}
.direction .site-footer .footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px 20px}
.direction .site-footer .footer-grid>div{min-width:0;gap:4px}
.direction .site-footer .footer-brand{grid-column:1/-1;padding-bottom:24px;border-bottom:1px solid #cbd1b826}
.direction .site-footer .brand span{font-size:25px;font-weight:400;letter-spacing:.12em}
.direction .site-footer .brand small{font-size:10px;letter-spacing:.55em;margin-top:6px}
.direction .site-footer .footer-brand p{max-width:290px;font-size:14px;line-height:1.5}
.direction .site-footer h2{font-size:12px;letter-spacing:.09em;margin:0 0 10px}
.direction .site-footer a:not(.brand){display:flex;align-items:center;min-height:44px;font-size:14px;line-height:1.4}
.direction .site-footer p{font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.direction .site-footer .footer-grid>div:last-child{grid-column:1/-1;padding-top:24px;border-top:1px solid #cbd1b826;gap:12px}
.direction .site-footer .footer-social{margin-top:4px;gap:10px}
.direction .site-footer .footer-bottom{flex-direction:row;align-items:center;gap:12px;margin-top:28px;padding-top:16px;font-size:12px}
.direction .site-footer .footer-bottom a{font-size:12px}
.direction .catalog-card{display:flex;flex-direction:column}
.direction .catalog-card>div{display:flex;flex-direction:column;flex:1;gap:10px}
.direction .catalog-card h3,.direction .catalog-card p{margin:0}
.direction .catalog-card b{margin-top:auto}
.direction .catalog-card>div>span{line-height:1.4}
.direction .catalog-card .property-tags{max-width:calc(100% - 16px);flex-wrap:wrap;gap:4px}
}
@media(max-width:360px){.direction .site-footer .footer-grid{grid-template-columns:minmax(0,1fr)}.direction .site-footer .footer-brand,.direction .site-footer .footer-grid>div:last-child{grid-column:auto}}

/* Compact mobile exclusive: photo, stable text slots and one action row. */
@media(max-width:650px){
.direction .featured--refined{padding:18px 0}
.direction .featured--refined .featured-panel{position:relative;grid-template-columns:minmax(0,1fr);padding:8px;gap:0}
.direction .featured--refined .featured-image{height:clamp(160px,26svh,230px);min-height:0}
.direction .featured--refined .featured-image>img{height:100%;min-height:0;aspect-ratio:auto;object-fit:cover}
.direction .featured--refined .featured-copy{height:auto;min-height:0;padding:14px 8px 8px;gap:10px}
.direction .featured--refined .featured-meta{min-height:28px;margin:0;gap:8px}
.direction .featured--refined .exclusive-label{font-size:10px;padding:5px 7px}
.direction .featured--refined .featured-price{font-size:19px;white-space:nowrap}
.direction .featured--refined h2{font-size:clamp(24px,6.7vw,29px);line-height:1.12;height:3.36em;min-height:0;margin:0;overflow:hidden}
.direction .featured--refined .exclusive-title-open{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.direction .featured--refined .featured-location{height:2.8em;min-height:0;font-size:12px;line-height:1.4;margin:0;overflow:hidden}
.direction .featured--refined .featured-location svg{width:16px;height:18px}
.direction .featured--refined .featured-specs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:10px 0;margin:0;gap:0}
.direction .featured--refined .featured-specs>span{gap:6px;min-width:0}
.direction .featured--refined .featured-specs svg{width:20px;height:20px}
.direction .featured--refined .featured-specs strong{font-size:14px;line-height:1.25}
.direction .featured--refined .featured-specs small{font-size:11px;line-height:1.3}
.direction .featured--refined .featured-specs strong,.direction .featured--refined .featured-specs small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.direction .featured--refined .featured-copy>p:not(.featured-location){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;height:2.8em;min-height:0;margin:0;font-size:13px;line-height:1.4;overflow:hidden}
.direction .featured--refined .featured-actions{flex-direction:row;align-items:center;margin:2px 0 0;gap:0}
.direction .featured--refined .presentation-button{min-height:44px;padding:8px 12px;font-size:13px}
.direction .featured--refined .featured-actions .exclusive-controls{position:absolute;grid-column:auto;justify-self:start;top:16px;left:16px;right:auto;z-index:3;margin:0;padding:3px 5px;gap:6px;align-self:auto;background:#f3f2edf2;border-radius:24px}
.direction .featured--refined .exclusive-controls button{width:44px;height:44px;border:0;background:transparent}
.direction .featured--refined .featured-only{top:12px;right:10px;font-size:10px;padding:7px 8px}
.direction .featured--refined .featured-image-facts{padding:8px;left:8px;right:8px;bottom:8px}
.direction .featured--refined .featured-image-facts span{font-size:11px;gap:5px}
}
@media(max-width:650px) and (max-height:650px){
.direction .featured--refined .featured-image{height:24svh;min-height:120px}
.direction .featured--refined .featured-copy{gap:7px;padding-top:10px}
.direction .featured--refined h2{font-size:24px}
.direction .featured--refined .featured-specs{padding-block:8px}
}
