/* Combined by _source/bundle_assets.py from: assets/fonts/fonts.css, assets/market.css, assets/site-type.css */
/* The site's text fonts, served from the site itself (3.2.18) instead of Google Fonts: faster (no extra connection to
   another server), private (no request to Google on every page) and still working if Google is blocked or slow.
   Latin characters only (English and Kiswahili). Licences (SIL Open Font License) are in assets/fonts/licenses/.
   Antonio, the headline font, is declared in site-type.css. */
@font-face{font-family:"Inter";font-style:normal;font-display:swap;font-weight:100 900;src:url(fonts/inter-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-display:swap;font-weight:300 700;src:url(fonts/cormorant-garamond-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-display:swap;font-weight:300 700;src:url(fonts/cormorant-garamond-latin-wght-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-display:swap;font-weight:300;src:url(fonts/barlow-condensed-latin-300-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-display:swap;font-weight:500;src:url(fonts/barlow-condensed-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-display:swap;font-weight:600;src:url(fonts/barlow-condensed-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* Marketplace pages (3.0.0): land-for-sale.html and accommodations.html (assets/market.js) */
:root{--ink:#171816;--wine:#8E0D20;--wine2:#C31B37;--gold:#c9a76c;--paper:#f7f3eb;--card:#fff;--line:#e4ddd1;--muted:#5d5752;--soft:#efe9de}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:#1d1a18;font-family:Inter,Inter Fallback,Arial,sans-serif}
.mk-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
html.mk-lock{overflow:hidden}
.mk{min-height:70vh;min-height:70svh}
.mk [hidden],.mk-app [hidden],.mk-drawer [hidden]{display:none!important}

/* hero */
.mk-hero{position:relative;padding:58px 5% 0;background:radial-gradient(900px 380px at 85% 0%,rgba(195,27,55,.28),transparent 60%),linear-gradient(180deg,#141513,#1d1a18);color:#fff;overflow:hidden}
.mk-hero:after{content:"";position:absolute;right:-120px;top:-140px;width:460px;height:460px;border-radius:50%;border:46px solid rgba(142,13,32,.22);pointer-events:none}
.mk-hero-in{position:relative;z-index:1;max-width:1320px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:20px 48px;align-items:end}
.mk-ey{grid-column:1/-1;font:500 11px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.32em;color:#FF6F86}
.mk-h1{margin:0;font:500 clamp(48px,7vw,96px)/.9 "Antonio",Antonio Fallback,"Oswald","Arial Narrow",sans-serif;letter-spacing:.03em;text-transform:uppercase}
.mk-h1 span{display:block;font-size:.42em;letter-spacing:.12em;color:rgba(255,255,255,.82);margin-bottom:.15em}
.mk-h1 em{font-style:normal;background:linear-gradient(180deg,#FF6F86,#C31B37);-webkit-background-clip:text;background-clip:text;color:transparent}
.mk-lead{margin:0;font-size:15px;line-height:1.75;color:rgba(255,255,255,.82);max-width:520px}
.mk-stats{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px 40px;margin-top:8px}
.mk-stats div{display:flex;flex-direction:column;gap:4px}
.mk-stats b{font:400 30px/1 "Antonio",Antonio Fallback,"Arial Narrow",sans-serif;color:#fff}
.mk-stats div>span{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.66)}
.mk-tabs{position:relative;z-index:1;max-width:1320px;margin:34px auto 0;display:flex;gap:4px}
.mk-tabs a{position:relative;display:flex;align-items:center;gap:10px;padding:16px 22px 15px;border-radius:12px 12px 0 0;background:rgba(255,255,255,.08);color:rgba(255,255,255,.82);text-decoration:none;font-size:13px;letter-spacing:.14em;text-transform:uppercase;transition:background .3s,color .3s}
.mk-tabs a b{font-weight:500}
.mk-tabs a span{padding:2px 8px;border-radius:999px;background:rgba(255,255,255,.14);font-size:11px;letter-spacing:0}
.mk-tabs a:hover{background:rgba(255,255,255,.16);color:#fff}
.mk-tabs a[aria-current="page"]{background:var(--paper);color:var(--ink)}
.mk-tabs a[aria-current="page"] span{background:var(--wine);color:#fff}
.mk-tabs a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

/* app */
.mk-app{max-width:1320px;margin:0 auto;padding:22px 5% 40px;min-height:calc(100vh - 140px);min-height:calc(100svh - 140px)}   /* 3.1.5: room for the listings before the script draws them, so what follows does not jump */
.mk-loading,.mk-noscript{padding:40px 5%;text-align:center;color:var(--muted)}
.mk-regions{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.mk-regions button{min-height:38px;padding:0 16px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#2b2622;font:500 13px/1 Inter,Inter Fallback,Arial,sans-serif;cursor:pointer;transition:background .25s,color .25s,border-color .25s,transform .25s}
.mk-regions button:hover{border-color:var(--wine);transform:translateY(-1px)}
.mk-regions button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.mk-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;padding:14px;border-radius:14px;background:#fff;box-shadow:0 10px 30px rgba(30,20,10,.08)}
.mk-f{display:flex;flex-direction:column;gap:5px;flex:1 1 150px;min-width:0}
.mk-f.mk-q{flex:2 1 240px}.mk-f.mk-sm{flex:0 1 120px}.mk-f.mk-dates{flex:1 1 140px}
.mk-f label{font:600 10.5px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#4a423d}
.mk-f input,.mk-f select,#mkSort{width:100%;height:44px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#1d1a18;font:400 14px Inter,Inter Fallback,Arial,sans-serif}
.mk-f input:focus,.mk-f select:focus,#mkSort:focus{outline:2px solid var(--wine);outline-offset:0;border-color:var(--wine)}
.mk-more{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px;border:1px solid var(--ink);border-radius:9px;background:var(--ink);color:#fff;font:500 13px Inter,Inter Fallback,Arial,sans-serif;cursor:pointer}
.mk-more svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}
.mk-more b{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:50%;background:var(--wine2);font-size:11px}
.mk-more[aria-expanded="true"]{background:#fff;color:var(--ink)}
.mk-more:focus-visible,.mk-regions button:focus-visible{outline:2px solid var(--wine);outline-offset:2px}
.mk-moreP{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);gap:22px 30px;margin-top:10px;padding:20px;border-radius:14px;background:#fff;box-shadow:0 10px 30px rgba(30,20,10,.08);animation:mkin .35s ease}
@keyframes mkin{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.mk-ph{display:flex;justify-content:space-between;gap:10px;font:600 10.5px/1.3 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#4a423d}
.mk-ph output{font:500 13px Inter,Inter Fallback,Arial,sans-serif;letter-spacing:0;text-transform:none;color:var(--wine)}
.mk-hist{display:flex;align-items:flex-end;gap:2px;height:56px;margin:12px 0 0;padding:0 9px}
.mk-hist i{flex:1;background:#ddd5c8;border-radius:2px 2px 0 0;transition:height .35s,background .25s}
.mk-hist i.in{background:var(--wine)}
.mk-range{position:relative;height:28px}
.mk-range input{position:absolute;left:0;right:0;top:4px;width:100%;margin:0;background:none;pointer-events:none;-webkit-appearance:none;appearance:none;height:20px}
.mk-range input::-webkit-slider-runnable-track{height:3px;background:#d8d0c3;border-radius:3px}
.mk-range input+label+input::-webkit-slider-runnable-track{background:transparent}
.mk-range input::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:20px;height:20px;margin-top:-8.5px;border-radius:50%;background:#fff;border:2px solid var(--wine);box-shadow:0 2px 6px rgba(0,0,0,.2);cursor:grab}
.mk-range input::-moz-range-thumb{pointer-events:auto;width:18px;height:18px;border-radius:50%;background:#fff;border:2px solid var(--wine);cursor:grab}
.mk-range input::-moz-range-track{height:3px;background:#d8d0c3}
.mk-range input:focus-visible::-webkit-slider-thumb{outline:2px solid var(--wine);outline-offset:2px}
.mk-chips{margin:0;padding:0;border:0;display:flex;flex-wrap:wrap;gap:7px;align-content:flex-start}
.mk-chips legend{width:100%;margin:0 0 8px;font:600 10.5px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#4a423d}
.mk-chips label{position:relative;cursor:pointer}
.mk-chips input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.mk-chips span{display:inline-flex;align-items:center;min-height:34px;padding:0 13px;border:1px solid var(--line);border-radius:999px;font-size:13px;color:#2b2622;transition:background .2s,color .2s,border-color .2s}
.mk-chips input:checked+span{background:var(--wine);border-color:var(--wine);color:#fff}
.mk-chips input:focus-visible+span{outline:2px solid var(--wine);outline-offset:2px}
.mk-reset{grid-column:1/-1;justify-self:start;border:0;background:none;color:var(--wine);font:500 13px Inter,Inter Fallback,Arial,sans-serif;text-decoration:underline;cursor:pointer;padding:6px 0}

.mk-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:20px 0 14px}
.mk-count{margin:0;font-size:15px;color:#2b2622}
.mk-count b{font:500 22px/1 "Antonio",Antonio Fallback,"Arial Narrow",sans-serif;color:var(--wine);margin-right:2px}
.mk-active{display:flex;flex-wrap:wrap;gap:6px;flex:1}
.mk-active button{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;border:0;border-radius:999px;background:var(--soft);color:#2b2622;font:400 12.5px Inter,Inter Fallback,Arial,sans-serif;cursor:pointer}
.mk-active button:hover{background:#e6dccb}
.mk-active button span[aria-hidden]{font-size:15px;line-height:1;color:var(--wine)}
.mk-sortl{font-size:12px;color:var(--muted)}
#mkSort{width:auto;height:38px}
.mk-view{display:flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff}
.mk-view button{min-height:38px;padding:0 12px;border:0;background:none;font:500 12.5px Inter,Inter Fallback,Arial,sans-serif;color:#4a423d;cursor:pointer}
.mk-view button[aria-pressed="true"]{background:var(--ink);color:#fff}
.mk-view button:focus-visible{outline:2px solid var(--wine);outline-offset:-2px}

/* results + map */
.mk-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:22px;align-items:start}
.mk-body[data-view="grid"]{grid-template-columns:1fr}.mk-body[data-view="grid"] .mk-map{display:none}
.mk-body[data-view="map"]{grid-template-columns:1fr}.mk-body[data-view="map"] .mk-results{display:none}
.mk-body[data-view="map"] .mk-mapin{position:relative;top:0;height:min(78vh,820px);height:min(78svh,820px)}
.mk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.mk-body[data-view="grid"] .mk-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr))}
.mk-card{position:relative;display:flex;flex-direction:column;background:var(--card);border-radius:14px;overflow:hidden;box-shadow:0 1px 0 var(--line),0 8px 24px rgba(30,20,10,.06);transition:transform .35s cubic-bezier(.22,.61,.36,1),box-shadow .35s;animation:mkcard .5s cubic-bezier(.22,.61,.36,1) both;animation-delay:calc(var(--i,0) * 25ms);cursor:pointer}
@keyframes mkcard{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.mk-card:hover,.mk-card.hl,.mk-card:focus-within{transform:translateY(-4px);box-shadow:0 1px 0 var(--line),0 18px 40px rgba(30,20,10,.14)}
.mk-card.hl{outline:2px solid var(--gold)}
.mk-card.busy .mk-img.on,.mk-card.busy .mk-plot{filter:grayscale(.7) brightness(.92)}
.mk-media{position:relative;aspect-ratio:3/2;background:#e9e2d6;overflow:hidden}
.mk-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .45s,transform .8s cubic-bezier(.22,.61,.36,1)}
.mk-img.on{opacity:1}
.mk-card:hover .mk-img.on{transform:scale(1.05)}
.mk-plot{position:absolute;inset:0;width:100%;height:100%;display:block}
.mk-plotline{animation:mkdash 18s linear infinite}
@keyframes mkdash{to{stroke-dashoffset:-280}}
.mk-nav{position:absolute;top:50%;width:34px;height:34px;margin-top:-17px;border:0;border-radius:50%;background:rgba(255,255,255,.9);color:#1d1a18;font-size:22px;line-height:1;cursor:pointer;opacity:0;transition:opacity .25s,transform .25s;box-shadow:0 2px 10px rgba(0,0,0,.2)}
.mk-nav.prev{left:10px}.mk-nav.next{right:10px}
.mk-card:hover .mk-nav,.mk-nav:focus-visible{opacity:1}
.mk-nav:hover{transform:scale(1.08)}
.mk-dots{position:absolute;bottom:9px;left:0;right:0;display:flex;justify-content:center;gap:5px}
.mk-dots i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.55);transition:background .25s,transform .25s}
.mk-dots i.on{background:#fff;transform:scale(1.25)}
.mk-bs{position:absolute;left:10px;top:10px;display:flex;flex-wrap:wrap;gap:5px;max-width:calc(100% - 60px)}
.mk-dbody .mk-bs{position:static;max-width:none;margin-bottom:10px}
.mk-b{padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.94);color:#2b2622;font:600 10.5px/1.2 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.04em;box-shadow:0 1px 4px rgba(0,0,0,.12)}
.mk-b.ft{background:var(--gold);color:#2b1d07}.mk-b.ok{background:#1f6f4a;color:#fff}.mk-b.ib{background:var(--ink);color:#fff}.mk-b.new{background:var(--wine2);color:#fff}.mk-b.z{background:#fff;color:var(--wine)}
.mk-heart{position:absolute;right:10px;top:10px;display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.92);cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.15);transition:transform .25s}
.mk-heart svg{width:19px;height:19px;fill:none;stroke:#2b2622;stroke-width:1.8;transition:fill .25s,stroke .25s}
.mk-heart[aria-pressed="true"] svg{fill:var(--wine2);stroke:var(--wine2)}
.mk-heart:hover{transform:scale(1.1)}.mk-heart.pop{animation:mkpop .4s}
@keyframes mkpop{50%{transform:scale(1.3)}}
.mk-heart:focus-visible,.mk-nav:focus-visible{outline:2px solid var(--wine);outline-offset:2px}
.mk-cbody{display:flex;flex-direction:column;gap:6px;padding:14px 16px 16px;flex:1}
.mk-cbody h3{margin:0;font:600 15.5px/1.3 Inter,Inter Fallback,Arial,sans-serif}
.mk-open{color:#1d1a18;text-decoration:none}
.mk-open:after{content:"";position:absolute;inset:0}
.mk-open:focus-visible{outline:none}.mk-card:focus-within{outline:2px solid var(--wine);outline-offset:2px}
.mk-place{display:flex;align-items:center;gap:5px;margin:0;font-size:13px;color:var(--muted)}
.mk-place svg{width:14px;height:14px;flex:0 0 14px;fill:none;stroke:var(--wine);stroke-width:2}
.mk-facts{display:flex;flex-wrap:wrap;gap:4px 12px;margin:2px 0 0;padding:0;list-style:none;font-size:12.5px;color:#3a332f}
.mk-facts li+li:before{content:"·";margin-right:12px;color:#b9ae9e}
.mk-star span{color:var(--gold)}.mk-star small{color:var(--muted)}
.mk-pline{display:flex;flex-direction:column;gap:2px;margin-top:auto;padding-top:8px}
.mk-pline b{font:500 21px/1.1 "Antonio",Antonio Fallback,"Arial Narrow",sans-serif;letter-spacing:.02em;color:var(--wine)}
.mk-pline>span{font-size:12px;color:var(--muted)}
.mk-busy{margin:0;font-size:12px;color:#a6122b}
.mk-meta{margin:2px 0 0;font-size:11.5px;color:#625a53}
.mk-empty{padding:40px 20px;text-align:center;background:#fff;border-radius:14px}
.mk-empty h3{margin:0 0 8px;font:500 24px "Antonio",Antonio Fallback,"Arial Narrow",sans-serif;letter-spacing:.04em;text-transform:uppercase;color:var(--wine)}
.mk-empty p{margin:0;color:var(--muted)}
.mk-link{border:0;background:none;color:var(--wine);text-decoration:underline;font:inherit;cursor:pointer;padding:0}
.mk-empty a,.mk-noscript a{color:var(--wine)}
.mk-loadmore{display:block;margin:22px auto 0;min-height:46px;padding:0 26px;border:1px solid var(--ink);border-radius:999px;background:#fff;font:500 14px Inter,Inter Fallback,Arial,sans-serif;cursor:pointer;transition:background .25s,color .25s}
.mk-loadmore:hover{background:var(--ink);color:#fff}

.mk-map{position:relative}
.mk-mapin{position:sticky;top:84px;height:min(calc(100vh - 110px),760px);height:min(calc(100svh - 110px),760px);border-radius:16px;overflow:hidden;background:linear-gradient(180deg,#e9f0f2,#dfe8ea)}
.mk-svg{display:block;width:100%;height:100%}
.mk-ke{fill:#f6f1e7;stroke:#b9ae9e;stroke-width:1.5;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.mk-lake{font:italic 13px "Cormorant Garamond",Cormorant Garamond Fallback,Georgia,serif;fill:#6c8a94}
.mk-city circle{fill:#8a8073}.mk-city text{font:500 12px Inter,Inter Fallback,Arial,sans-serif;fill:#6a625b;letter-spacing:.06em;font-size:calc(12px / var(--z,1))}
.mk-pin{cursor:pointer;outline:none}
.mk-leg{stroke:var(--wine);stroke-width:1.2;vector-effect:non-scaling-stroke;opacity:.6}
.mk-pin .mk-dot{fill:var(--wine);stroke:#fff;stroke-width:2;vector-effect:non-scaling-stroke;transition:fill .25s}
.mk-pin .mk-ring{fill:none;stroke:var(--wine);stroke-width:1.5;vector-effect:non-scaling-stroke;opacity:.6}
.mk-pin.grp .mk-dot{fill:#5a0a16}
.mk-pin .mk-halo{fill:rgba(195,27,55,.18);transform:scale(.6);opacity:0;transition:transform .35s,opacity .35s;transform-box:fill-box;transform-origin:center}
.mk-pin text{fill:#fff;font-family:Inter,Inter Fallback,Arial,sans-serif;font-weight:600;text-anchor:middle;pointer-events:none}
.mk-pin.off .mk-dot{fill:#b9ae9e}.mk-pin.off text{display:none}
.mk-pin:hover .mk-halo,.mk-pin:focus-visible .mk-halo,.mk-pin.hot .mk-halo,.mk-pin.sel .mk-halo{transform:scale(1);opacity:1}
.mk-pin:hover .mk-dot,.mk-pin.hot .mk-dot,.mk-pin.sel .mk-dot{fill:var(--wine2)}
.mk-pin.sel .mk-dot{stroke:var(--gold);stroke-width:3}
.mk-pin:focus-visible .mk-dot{stroke:var(--ink);stroke-width:3}
.mk-tip{position:absolute;z-index:2;transform:translate(-50%,calc(-100% - 14px));min-width:150px;padding:10px 12px;border-radius:10px;background:var(--ink);color:#fff;font-size:12px;line-height:1.5;pointer-events:none;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.mk-tip b{display:block;font-size:14px}.mk-tip span{display:block;color:rgba(255,255,255,.8)}.mk-tip em{display:block;margin-top:3px;font-style:normal;color:var(--gold);font-size:11px}
.mk-tip:after{content:"";position:absolute;left:50%;bottom:-6px;margin-left:-6px;border:6px solid transparent;border-bottom:0;border-top-color:var(--ink)}
.mk-mapbar{position:absolute;left:12px;right:12px;bottom:12px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:11.5px;color:#4a423d}
.mk-mapbar span{padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.85)}
.mk-zoomout{min-height:34px;padding:0 14px;border:0;border-radius:999px;background:var(--ink);color:#fff;font:500 12.5px Inter,Inter Fallback,Arial,sans-serif;cursor:pointer}

/* details panel */
.mk-drawer{position:fixed;inset:0;z-index:var(--z-modal,10000)}
.mk-drawer[hidden]{display:none}
.mk-dveil{position:absolute;inset:0;background:rgba(15,10,10,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity .3s}
.mk-dpanel{position:absolute;top:0;right:0;bottom:0;width:min(720px,100%);background:#fff;overflow-y:auto;overscroll-behavior:contain;transform:translateX(100%);transition:transform .38s cubic-bezier(.22,.61,.36,1);outline:none}
.mk-drawer.in .mk-dveil{opacity:1}.mk-drawer.in .mk-dpanel{transform:none}
.mk-x{position:sticky;top:12px;float:right;z-index:3;margin:12px 12px -56px 0;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.95);font-size:26px;line-height:1;cursor:pointer;box-shadow:0 2px 12px rgba(0,0,0,.2)}
.mk-x:focus-visible{outline:2px solid var(--wine);outline-offset:2px}
.mk-dgal{background:#e9e2d6}
.mk-dmain{position:relative;aspect-ratio:16/10}
.mk-dgal.plot{position:relative;aspect-ratio:400/260}
.mk-thumbs{display:flex;gap:6px;padding:8px;background:#fff}
.mk-thumbs button{flex:0 0 84px;height:58px;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;cursor:pointer;opacity:.7;transition:opacity .2s,border-color .2s}
.mk-thumbs button[aria-current="true"],.mk-thumbs button:hover{opacity:1;border-color:var(--wine)}
.mk-thumbs img{width:100%;height:100%;object-fit:cover;display:block}
.mk-dbody{padding:24px clamp(18px,4vw,36px) 40px}
.mk-dbody h2{margin:0 0 6px;font:500 clamp(28px,4vw,38px)/1 "Antonio",Antonio Fallback,"Arial Narrow",sans-serif;letter-spacing:.02em;text-transform:uppercase;color:var(--ink)}
.mk-dbody h3{margin:28px 0 12px;font:600 11px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--wine)}
.mk-dprice{margin:14px 0 0}.mk-dprice b{font:500 30px/1 "Antonio",Antonio Fallback,"Arial Narrow",sans-serif;color:var(--wine)}.mk-dprice>span{display:block;margin-top:4px;font-size:13px;color:var(--muted)}
.mk-desc{margin:16px 0 0;font-size:15px;line-height:1.7;color:#3a332f}
.mk-dl{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin:0}
.mk-dl div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}
.mk-dl dt{color:var(--muted)}.mk-dl dd{margin:0;text-align:right;font-weight:500}
.mk-sum{margin:0;padding:14px 16px;border-radius:12px;background:var(--paper)}
.mk-sum div{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-size:14px}
.mk-sum dt{color:#3a332f}.mk-sum dd{margin:0;font-weight:500}
.mk-sum .tot{margin-top:6px;padding-top:10px;border-top:1px solid var(--line);font-size:16px}.mk-sum .tot dd{color:var(--wine);font-weight:600}
.mk-small{margin:8px 0 0;font-size:12px;line-height:1.5;color:#6a625b}
.mk-hint{margin:10px 0 0;font-size:13px;color:var(--muted)}
.mk-warn{margin:10px 0 0;padding:9px 12px;border-radius:8px;background:#fbe9ec;color:#8E0D20;font-size:13px}
.mk-ams{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none}
.mk-ams li{padding:7px 12px;border-radius:999px;background:var(--paper);font-size:13px}
.mk-cals{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.mk-cal b{display:block;margin:0 0 8px;font-size:13px}
.mk-calg{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.mk-calg span{font-size:10px;text-align:center;color:#8a8073;padding:3px 0}
.mk-calg button{aspect-ratio:1;border:0;border-radius:7px;font:500 12px Inter,Inter Fallback,Arial,sans-serif;cursor:pointer;transition:background .2s,color .2s}
.mk-calg .ok{background:#eef5ee;color:#1f4d33}.mk-calg .ok:hover{background:#1f6f4a;color:#fff}
.mk-calg .bk{background:#f1ece4;color:#b6aca0;text-decoration:line-through;cursor:not-allowed}
.mk-calg .past{background:none;color:#cfc6b9;cursor:default}
.mk-calg .sel{background:var(--wine);color:#fff}
.mk-calg button:focus-visible{outline:2px solid var(--wine);outline-offset:1px}
.mk-calkey{display:flex;flex-wrap:wrap;gap:14px;margin:10px 0 0;font-size:12px;color:var(--muted)}
.mk-calkey i{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-2px;margin-right:2px}
.mk-calkey .ok{background:#eef5ee;border:1px solid #bcd6c2}.mk-calkey .bk{background:#f1ece4}.mk-calkey .sel{background:var(--wine)}
.mk-book{margin-top:16px}
.mk-bookd{display:grid;grid-template-columns:1fr 1fr 90px;gap:10px;margin-bottom:12px}
.mk-bookd label,.mk-enq label{display:flex;flex-direction:column;gap:5px;font:600 10.5px/1.2 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#4a423d}
.mk-bookd input,.mk-bookd select,.mk-enq input,.mk-enq textarea{width:100%;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:9px;font:400 14px Inter,Inter Fallback,Arial,sans-serif;color:#1d1a18;background:#fff;text-transform:none;letter-spacing:0}
.mk-bookd input:focus,.mk-bookd select:focus,.mk-enq input:focus,.mk-enq textarea:focus{outline:2px solid var(--wine);border-color:var(--wine)}
.mk-mini{border-radius:12px;overflow:hidden;background:linear-gradient(180deg,#e9f0f2,#dfe8ea)}
.mk-mini svg{display:block;width:100%;height:200px}
.mk-mini .mk-ke{stroke-width:1}
.mk-mini text{font:600 9px Inter,Inter Fallback,Arial,sans-serif;fill:#2b2622}
.mk-mini .mk-small{margin:0;padding:8px 12px;background:#fff}
.mk-minipin{fill:var(--wine2);stroke:#fff;stroke-width:2}
.mk-minipulse{fill:none;stroke:var(--wine2);stroke-width:2;transform-box:fill-box;transform-origin:center;animation:mkpulse 1.8s ease-out infinite}
@keyframes mkpulse{from{transform:scale(1);opacity:.9}to{transform:scale(3.2);opacity:0}}
.mk-poster{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border:1px solid var(--line);border-radius:12px}
.mk-poster b{font-size:15px}.mk-poster span{font-size:13px;color:var(--muted)}
.mk-agent{display:flex;align-items:center;gap:12px;margin-top:10px;padding:12px 14px;border-radius:12px;background:var(--paper)}
.mk-agent img{width:52px;height:52px;border-radius:50%;object-fit:cover}
.mk-agent div{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.mk-agent small{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#6a625b}
.mk-agent a{color:#1d1a18}.mk-agent span{font-size:12.5px;color:var(--muted)}
.mk-astars{display:flex;align-items:center;gap:4px}
.mk-wa{flex:0 0 auto;padding:9px 14px;border-radius:999px;background:#1b8146;color:#fff!important;font-size:13px;text-decoration:none}
.mk-enq{display:grid;gap:12px;margin-top:8px;padding:18px;border-radius:14px;border:1px solid var(--line)}
.mk-enq h3{margin:0 0 2px}
.mk-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mk-check{flex-direction:row!important;align-items:center;gap:8px!important;font:400 13.5px Inter,Inter Fallback,Arial,sans-serif!important;letter-spacing:0!important;text-transform:none!important;color:#2b2622!important}
.mk-check input{width:18px!important;min-height:0!important;height:18px}
.mk-msg{margin:0;font-size:13px;color:#a6122b;min-height:1em}.mk-msg.ok{color:#1f6f4a}
.mk-acts{display:flex;flex-wrap:wrap;gap:8px}
.mk-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border:1px solid var(--wine);border-radius:999px;background:var(--wine);color:#fff;font:500 14px Inter,Inter Fallback,Arial,sans-serif;text-decoration:none;cursor:pointer;transition:background .25s,transform .25s}
.mk-btn:hover{background:var(--wine2);transform:translateY(-1px)}
.mk-btn.ghost{background:#fff;color:var(--wine)}.mk-btn.ghost:hover{background:var(--paper)}
.mk-btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.mk-done{padding:6px 0;outline:none}.mk-done h3{margin:0 0 8px;font:500 26px "Antonio",Antonio Fallback,"Arial Narrow",sans-serif;letter-spacing:.03em;text-transform:uppercase;color:var(--wine)}.mk-done p{margin:0;line-height:1.6}
.mk-sample{max-width:1320px;margin:0 auto;padding:0 5% 30px;font-size:12px;color:#5d5752}
.mk-dbody .mk-sample{padding:18px 0 0}

@media(max-width:999px){
  .mk-body{grid-template-columns:1fr}
  .mk-body[data-view="split"] .mk-map{display:none}
  .mk-mapin{position:relative;top:0;height:70vh;height:70svh}
  .mk-moreP{grid-template-columns:1fr 1fr}.mk-price{grid-column:1/-1}
  .mk-view button[data-view="split"]{display:none}
}
@media(max-width:760px){
  .mk-hero{padding-top:40px}.mk-hero-in{grid-template-columns:1fr}
  .mk-tabs{overflow-x:auto;margin-top:26px;scrollbar-width:none}.mk-tabs a{flex:0 0 auto;padding:13px 16px;font-size:12px}
  .mk-moreP{grid-template-columns:1fr}
  .mk-f.mk-sm,.mk-f.mk-dates{flex:1 1 40%}
  .mk-more{flex:1 1 100%;justify-content:center}
  .mk-tools{gap:10px}.mk-active{order:5;flex-basis:100%}
  .mk-dl{grid-template-columns:1fr}.mk-cals{grid-template-columns:1fr}.mk-bookd{grid-template-columns:1fr 1fr}.mk-bookd label:last-child{grid-column:1/-1}.mk-two{grid-template-columns:1fr}
  .mk-regions{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.mk-regions button{flex:0 0 auto}
}
@media(prefers-reduced-motion:reduce){.mk *,.mk-drawer *{animation:none!important;transition:none!important}}
@media print{.mk-bar,.mk-moreP,.mk-tools,.mk-map,.mk-heart,.mk-nav,.mk-loadmore,.mk-tabs,.mk-regions{display:none!important}.mk-hero{background:none;color:#000}.mk-card{break-inside:avoid;box-shadow:none;border:1px solid #ccc}}
.mk-heart,.mk-nav{z-index:2}
/* 3.1.1 land-use tabs under the heading (replace the links to other pages) */
.mk-zones{flex-wrap:wrap}
.mk-zones button{display:flex;align-items:center;gap:10px;padding:15px 20px 14px;border:0;border-radius:12px 12px 0 0;background:rgba(255,255,255,.08);color:rgba(255,255,255,.82);font:500 13px Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background .3s,color .3s}
.mk-zones button b{font-weight:500}
.mk-zones button span{padding:2px 8px;border-radius:999px;background:rgba(255,255,255,.14);font-size:11px;letter-spacing:0}
.mk-zones button:hover{background:rgba(255,255,255,.16);color:#fff}
.mk-zones button[aria-pressed="true"]{background:var(--paper);color:var(--ink)}
.mk-zones button[aria-pressed="true"] span{background:var(--wine);color:#fff}
.mk-zones button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
@media(max-width:760px){.mk-zones{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.mk-zones button{flex:0 0 auto;padding:12px 14px;font-size:12px}}

/* ---------- 3.2.19: homes for sale, documents, floor plan, video, brochure, text the agent, save this search ---------- */
.mk-cfoot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px}
.mk-cwa{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;min-height:34px;padding:0 12px;border:1px solid #cfe5d8;border-radius:999px;background:#f2faf5;color:#17693c;font:600 11.5px/1 Inter,Inter Fallback,Arial,sans-serif;text-decoration:none;transition:background .2s,border-color .2s}
.mk-cwa svg{width:15px;height:15px;fill:#1b8146}
.mk-cwa:hover,.mk-cwa:focus-visible{background:#1b8146;border-color:#1b8146;color:#fff}.mk-cwa:hover svg,.mk-cwa:focus-visible svg{fill:#fff}
.mk-por{font-style:italic;letter-spacing:.01em}
.mk-b.vid{background:var(--ink);color:#fff}
.mk-life legend{color:var(--wine)}
.mk-savesearch{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 14px;border:1px solid var(--wine);border-radius:999px;background:#fff;color:var(--wine);font:600 12px/1 Inter,Inter Fallback,Arial,sans-serif;cursor:pointer;transition:background .2s,color .2s}
.mk-savesearch svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
.mk-savesearch:hover,.mk-savesearch:focus-visible{background:var(--wine);color:#fff}
.mk-savesearch.on{background:var(--wine);color:#fff}
.mk-dacts{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}
.mk-dacts .mk-btn{min-height:40px;font-size:13px}
.mk-lifel{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.mk-lifel li{display:grid;grid-template-columns:130px 1fr;gap:12px;padding:10px 12px;background:var(--paper);border-radius:8px;font-size:13px;line-height:1.45}
.mk-lifel b{font:600 10.5px/1.5 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--wine)}
.mk-docs dd{font-weight:500}
.mk-fpw{border:1px solid var(--line);border-radius:10px;background:#fbfaf7;padding:10px}
.mk-fp{display:block;width:100%;height:auto}
.mk-fp .fp-r{fill:#fff;stroke:#3a3532;stroke-width:1.2}
.mk-fp .fp-r.liv{fill:#f7efe1}.mk-fp .fp-r.wet{fill:#eef4f6}.mk-fp .fp-r.dsq{fill:#f1eee8}
.mk-fp .fp-wall{fill:none;stroke:#171816;stroke-width:4}
.mk-fp .fp-t{font:600 10px Inter,Inter Fallback,Arial,sans-serif;fill:#2d2926;text-anchor:middle}
.mk-fp .fp-s{font:400 9px Inter,Inter Fallback,Arial,sans-serif;fill:#6a625b;text-anchor:middle}
.mk-vid video{display:block;width:100%;max-height:340px;border-radius:10px;background:#000}
@media(max-width:560px){.mk-lifel li{grid-template-columns:1fr;gap:4px}.mk-cwa span{display:none}.mk-cwa{padding:0 10px}}
/* the brochure: only the details panel goes to paper */
@media print{
  html.mk-printing body>*:not(main),html.mk-printing .mk>*:not(#mkApp),html.mk-printing #mkApp>*:not(.mk-drawer){display:none!important}
  html.mk-printing .mk-drawer{position:static!important;display:block!important;inset:auto!important}
  html.mk-printing .mk-dveil,html.mk-printing .mk-x,html.mk-printing .mk-enq,html.mk-printing .mk-dacts,html.mk-printing .mk-thumbs,html.mk-printing .mk-vid,html.mk-printing .mk-agent .mk-wa{display:none!important}
  html.mk-printing .mk-dpanel{position:static!important;transform:none!important;width:auto!important;max-width:none!important;height:auto!important;max-height:none!important;overflow:visible!important;box-shadow:none!important}
  html.mk-printing .mk-dgal .mk-img{display:none!important}html.mk-printing .mk-dgal .mk-img.on{display:block!important;max-height:9cm;object-fit:cover;width:100%}
  html.mk-printing .mk-dbody h3{break-after:avoid}html.mk-printing .mk-fpw,html.mk-printing .mk-docs{break-inside:avoid}
  html.mk-printing .mk-dbody:after{content:"The Haven Group · Sample brochure for illustration";display:block;margin-top:18px;font-size:10px;color:#6a625b}
}

/* ---------- 3.2.20: explore by region ---------- */
.mk-rgrid{margin:6px 0 22px}
.mk-rgh{margin:0 0 12px;font:600 11px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--wine)}
.mk-rcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}
.mk-rcard{position:relative;display:flex;flex-direction:column;padding:0;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);text-align:left;cursor:pointer;overflow:hidden;transition:transform .35s cubic-bezier(.22,.61,.36,1),box-shadow .35s,border-color .25s}
.mk-rph{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--soft)}
.mk-rph img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.22,.61,.36,1)}
.mk-rt{display:flex;flex-direction:column;gap:4px;padding:12px 40px 14px 14px}
.mk-rt b{font:500 18px/1.1 "Antonio","Antonio Fallback","Oswald",sans-serif;letter-spacing:.05em;text-transform:uppercase}
.mk-rt small{font:400 12px/1.4 Inter,Inter Fallback,Arial,sans-serif;color:var(--muted)}
.mk-rcard i{position:absolute;right:14px;bottom:16px;font-style:normal;color:var(--wine);transition:transform .3s}
.mk-rcard:hover,.mk-rcard:focus-visible{transform:translateY(-3px);box-shadow:0 18px 36px -22px rgba(40,10,14,.45);border-color:#d8c7b0}
.mk-rcard:hover img{transform:scale(1.06)}.mk-rcard:hover i{transform:translateX(4px)}
.mk-rcard:focus-visible{outline:2px solid var(--wine);outline-offset:3px}
.mk-rcard[aria-pressed="true"]{border-color:var(--wine);box-shadow:0 0 0 2px var(--wine)}
.mk-rcard[aria-pressed="true"] .mk-rt b{color:var(--wine)}
@media(max-width:700px){.mk-rcards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;padding-bottom:6px;scrollbar-width:none}.mk-rcard{flex:0 0 62%;scroll-snap-align:start}}
@media(prefers-reduced-motion:reduce){.mk-rcard,.mk-rph img{transition:none}}
.mk-private{margin:18px 0 0}
.mk-private a{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:baseline;color:rgba(255,255,255,.86);font:400 14px/1.5 Inter,Inter Fallback,Arial,sans-serif;text-decoration:none;border-bottom:1px solid rgba(142,13,32,.3);padding-bottom:3px}
.mk-private b{color:var(--gold);font-weight:600}
.mk-private a{border-bottom-color:rgba(201,167,108,.5)!important}.mk-private a:hover{border-bottom-color:var(--gold)!important}

/* ==========================================================================
   Site-wide headings: the same tall, condensed, uppercase lettering and
   crimson > burgundy > oxblood gradient used on the home page.
   (Loaded by every page except the home page, which carries its own copy.)
   ========================================================================== */
@font-face{font-family:"Antonio";src:url("fonts/antonio.woff2") format("woff2");font-weight:100 700;font-style:normal;font-display:swap}
:root{
  --hd-font:"Antonio",Antonio Fallback,"Oswald","Barlow Condensed",Barlow Condensed Fallback,"Arial Narrow",Impact,sans-serif;
  --hd-grad:linear-gradient(180deg,#C31B37 0%,#8E0D20 52%,#4A0005 100%);
}

/* page titles */
h1,h1.h-display{font-family:var(--hd-font);font-weight:500;letter-spacing:.04em;line-height:.92;text-transform:uppercase;text-shadow:none;
  background:var(--hd-grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
h1{font-size:clamp(52px,6.2vw,100px)}
/* the "small line over a large line" composition: identical on every page */
h1.h-display:not(.area-title){font-size:clamp(28px,2.9vw,44px)!important;line-height:1!important}
h1.h-display:not(.area-title) strong{display:block;font-size:clamp(52px,6.1vw,96px)!important;font-weight:500;line-height:.92;margin-top:.06em;color:inherit}
h1.area-title{font-size:clamp(60px,8vw,120px)}

/* section headings that sit on white */
.feat-text h2,.t-count h2,h2.section-title,.marketing-intro h2,.t-intro h2,.panel-head h2,.panel-head h3,.intro h2{
  font-family:var(--hd-font);font-weight:500;letter-spacing:.04em;line-height:.95;text-transform:uppercase;text-shadow:none;
  background:var(--hd-grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.feat-text h2,.t-count h2,h2.section-title,.marketing-intro h2,.t-intro h2{font-size:clamp(40px,4.6vw,70px)}
.panel-head h2,.panel-head h3{font-size:clamp(38px,4vw,60px);margin-bottom:14px}
.feat-text h2 strong,.band h2 strong,h2 strong{font-weight:500;color:inherit}

/* red bands: same lettering, in white (a gradient would not read on the red) */
.band h2{font-family:var(--hd-font);font-weight:500;letter-spacing:.04em;line-height:.92;text-transform:uppercase;font-size:clamp(44px,5vw,76px)}

/* big numerals */
.stat b,.t-count b,.fact b,.stats b{font-family:var(--hd-font);font-weight:500;letter-spacing:.03em}

/* ----- pages built with their own heading rules: same lettering, applied with the page's own selectors ----- */
html[data-page="contact-us"] .left h1,
html[data-page="gallery"] .hero h1,
html[data-page="office"] :is(.aboutVisual h1,.aboutVisual h2,.listingHead h2,.teamTitle,.galleryTitle),
html[data-page="offices"] .end h2,
html[data-page="agent"] :is(.copy h2,.portfolioHead h2),
html[data-page="listing"] :is(.hero h1,.intro h2,.galleryHead h2),
html[data-page="list-with-us"] :is(.hero h1,.contact h2){
  font-family:var(--hd-font)!important;font-weight:500!important;letter-spacing:.04em!important;text-transform:uppercase!important;line-height:.94!important;text-shadow:none!important;font-style:normal!important;
  background:var(--hd-grad)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important}
/* the same lettering on photographs and dark panels, with the lighter reds so it stays readable */
html[data-page="offices"] .officeCopy h1,
html[data-page="office"] section.contact h2,
html[data-page="listing"] section.contact h2{
  font-family:var(--hd-font)!important;font-weight:500!important;letter-spacing:.04em!important;text-transform:uppercase!important;line-height:.94!important;text-shadow:none!important;font-style:normal!important;
  background:linear-gradient(180deg,#FF6F86 0%,#EC3A54 50%,#C31B37 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important}
html[data-page="agent"] .copy h2{font-size:clamp(34px,3.4vw,50px)}

/* ----- fit: the condensed lettering must always stay inside its column ----- */
.t-hero h1,.t-count h1{font-size:clamp(46px,4.9vw,80px)!important;overflow-wrap:normal;word-break:normal}
h1{max-width:100%}
@media(max-width:600px){
  .t-hero h1,.t-count h1{font-size:clamp(30px,8.6vw,40px)!important;letter-spacing:.03em}
  h1.h-display:not(.area-title){font-size:clamp(22px,6.4vw,30px)!important}
  h1.h-display:not(.area-title) strong{font-size:clamp(40px,12.4vw,58px)!important}
}

/* ----- the shared top menu now has six links: on phones keep Rentals, Invest and Contact ----- */
@media(max-width:700px){
  .top nav a{display:none!important}
  .top nav a:nth-last-child(-n+3){display:inline-block!important}
  .top nav{gap:14px}
  .top .brand{font-size:11px;letter-spacing:.16em}
}

/* stat labels sit on white on these pages (the pale pink is only for the red band) */
.t-intro .stat span,.facts .stat span,.glance .stat span{color:#6a625b}

@media(max-width:360px){.top{padding:0 3%}.top .brand{font-size:10px;letter-spacing:.08em}.top nav{gap:9px}.top nav a{letter-spacing:.06em;font-size:9px}}
/* anchors on sub-pages land below the sticky header */
html:not([data-page]){scroll-padding-top:104px}

@media(max-width:480px){.t-intro{grid-template-columns:minmax(0,1fr)}.t-intro>*{min-width:0}.stat b{overflow-wrap:anywhere}}

/* ----- 3.2.11 readability floor: small type stays small, but never below about 9–10 px ----- */
@media screen{
html[data-page="list-with-us"] .field label{font-size:10px!important}
html[data-page="list-with-us"] .kicker,html[data-page="list-with-us"] .footer span,html[data-page="list-with-us"] .footer a{font-size:9.5px!important}
html[data-page="office"] .photo .badge,html[data-page="office"] .card .loc{font-size:9.5px!important}
html[data-page="office"] .meta span,html[data-page="office"] .meta b{font-size:10px!important}
html[data-page="office"] .teamCardCopy span{font-size:9px!important;letter-spacing:.12em!important}
html[data-page="office"] .sectionViewLink{font-size:9.5px!important;z-index:5!important}
html[data-page="listing"] .ey,html[data-page="listing"] .galleryHead span,html[data-page="listing"] .contact a,html[data-page="listing"] .note{font-size:9.5px!important}
}

/* ----- 3.2.11 no jumping while a page draws itself: room is kept for the parts its script fills in ----- */
#ppCards:is(:empty,:has(> noscript:only-child)){min-height:680px}#ppCmp:empty{min-height:665px}
@media(max-width:1100px){#ppCards:is(:empty,:has(> noscript:only-child)){min-height:750px}}
@media(max-width:820px){#ppCards:is(:empty,:has(> noscript:only-child)){min-height:1600px}#ppCmp:empty{min-height:715px}}
@media(max-width:480px){#ppCards:is(:empty,:has(> noscript:only-child)){min-height:1790px}#ppCmp:empty{min-height:725px}}
html[data-page="office"] #aboutText:empty{min-height:380px}
@media(max-width:1100px){html[data-page="office"] #aboutText:empty{min-height:500px}}
@media(max-width:820px){html[data-page="office"] #aboutText:empty{min-height:300px}}
@media(max-width:480px){html[data-page="office"] #aboutText:empty{min-height:600px}}
#prRoot,#vwRoot{min-height:70vh}

/* ----- 3.2.11 the shared footer, for pages that do not carry the marketing styles ----- */
.hv-foot{padding:28px 4%;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;font:400 11px/1.6 Inter,"Inter Fallback",Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#77706a;background:#fff}
.hv-foot .credits{flex:1;text-align:center;font-size:10px;letter-spacing:.08em;text-transform:none;color:#6a625b}
.hv-foot a{color:inherit;text-decoration:none}.hv-foot a:hover{color:#8E0D20}
@media(max-width:700px){.hv-foot{flex-direction:column;align-items:flex-start;text-align:left}.hv-foot .credits{text-align:left}}
/* the floating WhatsApp button and the social button never cover the footer's words */
footer.footer{padding-right:max(4%,250px)!important}
@media(max-width:700px){footer.footer{padding-right:4%!important;padding-bottom:96px!important}}
@media print{footer.hv-foot{display:none!important}}

