/* Combined by _source/bundle_assets.py from: assets/fonts/fonts.css, assets/editorial.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}

/* Editorial pages (3.2.20): The Haven Report (the-haven-report.html) and The Private Collection (private-collection.html). */
@font-face{font-family:"Antonio";src:url("fonts/antonio.woff2") format("woff2");font-weight:100 700;font-style:normal;font-display:swap}
:root{--ed-wine:#8E0D20;--ed-ink:#171816;--ed-paper:#f7f3eb;--ed-gold:#c9a76c;--ed-line:#e4ddd1;--ed-muted:#5d5752;--ed-dark:#100d0c}
*{box-sizing:border-box}
html,body{margin:0;background:#fff;color:var(--ed-ink);font-family:Inter,"Inter Fallback",Arial,sans-serif}
.ed-in{max-width:1180px;margin:0 auto;padding:0 clamp(20px,5vw,64px)}
.ed-sec{padding:clamp(56px,8vw,104px) 0}
.ed-soft{background:var(--ed-paper)}
.ed-dark{background:var(--ed-dark);color:#f3ede4}
.ed-k{margin:0 0 14px;font:600 11px/1.2 Inter,"Inter Fallback",Arial,sans-serif;letter-spacing:.3em;text-transform:uppercase;color:var(--ed-wine)}
.ed-dark .ed-k{color:var(--ed-gold)}
.ed-h1{margin:0;font:500 clamp(42px,6vw,88px)/.95 "Antonio","Antonio Fallback","Oswald",sans-serif;letter-spacing:.03em;text-transform:uppercase}
.ed-h1 em{font-style:normal;color:var(--ed-wine)}
.ed-dark .ed-h1 em{color:var(--ed-gold)}
.ed-h2{margin:0 0 28px;font:500 clamp(30px,3.4vw,48px)/1 "Antonio","Antonio Fallback","Oswald",sans-serif;letter-spacing:.04em;text-transform:uppercase}
.ed-lead{max-width:640px;margin:20px 0 0;font:500 clamp(18px,1.6vw,23px)/1.5 "Cormorant Garamond","Cormorant Garamond Fallback",Georgia,serif;color:inherit}
.ed-lead a{color:inherit;text-decoration-color:var(--ed-gold)}
.ed-acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.ed-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 26px;border:1px solid var(--ed-wine);border-radius:999px;background:var(--ed-wine);color:#fff;font:600 12px/1 Inter,"Inter Fallback",Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background .25s,transform .25s}
.ed-btn:hover{background:#6e0a18;transform:translateY(-1px)}
.ed-btn.ghost{background:transparent;color:var(--ed-wine)}
.ed-dark .ed-btn.ghost{color:#f3ede4;border-color:rgba(243,237,228,.5)}
.ed-btn:focus-visible{outline:2px solid var(--ed-gold);outline-offset:3px}
.ed-hero{padding:clamp(56px,9vw,120px) 0 clamp(48px,7vw,90px);background:linear-gradient(180deg,var(--ed-paper),#fff)}
.ed-hero.ed-dark{background:radial-gradient(1200px 500px at 80% 0%,rgba(201,167,108,.16),transparent 60%),var(--ed-dark)}
/* ---------- The Haven Report ---------- */
.rp-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:40px 0 0;background:var(--ed-line);border:1px solid var(--ed-line);border-radius:14px;overflow:hidden}
.rp-kpis div{display:flex;flex-direction:column;gap:6px;padding:20px;background:#fff}
.rp-kpis b{font:500 clamp(30px,3vw,44px)/1 "Antonio","Antonio Fallback","Oswald",sans-serif;color:var(--ed-wine)}
.rp-kpis span{font:500 11px/1.4 Inter,"Inter Fallback",Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--ed-muted)}
.rp-note{margin:14px 0 0;font:400 12.5px/1.5 Inter,"Inter Fallback",Arial,sans-serif;color:var(--ed-muted)}
.rp-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.rp-chart{position:relative;margin:0;padding:20px 20px 14px;border:1px solid var(--ed-line);border-radius:14px;background:#fff}
.rp-chart figcaption{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}
.rp-chart figcaption b{font:600 15px/1.3 Inter,"Inter Fallback",Arial,sans-serif;color:var(--ed-ink)}
.rp-chart figcaption span{font:400 12.5px/1.45 Inter,"Inter Fallback",Arial,sans-serif;color:var(--ed-muted)}
.rp-plot{position:relative;--rp-lw:118px;padding-bottom:22px}
.rp-grid{position:absolute;left:var(--rp-lw);right:70px;top:0;bottom:22px;pointer-events:none}
.rp-grid i{position:absolute;top:0;bottom:0;width:1px;background:#ece7de}
.rp-grid i:first-child{background:#cfc6b8}
.rp-axis{position:absolute;left:var(--rp-lw);right:70px;bottom:0;height:18px}
.rp-axis span{position:absolute;transform:translateX(-50%);font:400 11px/18px Inter,"Inter Fallback",Arial,sans-serif;color:#6a625b;white-space:nowrap}
.rp-axis span:first-child{transform:none}
.rp-bars{position:relative;list-style:none;margin:0;padding:0}
.rp-bar{display:grid;grid-template-columns:var(--rp-lw) 1fr;align-items:center;min-height:40px;outline:none;border-radius:6px}
.rp-cat{padding-right:12px;font:500 13px/1.25 Inter,"Inter Fallback",Arial,sans-serif;color:#2d2926;text-align:right}
.rp-track{position:relative;display:block;height:20px;margin-right:70px}
.rp-mark{display:block;height:100%;min-width:4px;background:var(--ed-wine);border-radius:0 4px 4px 0;transition:opacity .2s}
.rp-val{position:absolute;top:50%;margin-left:8px;transform:translateY(-50%);font:600 12px/1 Inter,"Inter Fallback",Arial,sans-serif;color:#2d2926;white-space:nowrap}
.rp-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.rp-chart:hover .rp-bar:not(.on) .rp-mark{opacity:.55}
.rp-bar:focus-visible{box-shadow:0 0 0 2px var(--ed-wine)}
@media(max-width:520px){.rp-plot{--rp-lw:92px}.rp-cat{font-size:12px}.rp-grid,.rp-axis{right:56px}.rp-track{margin-right:56px}.rp-axis span{font-size:10px}}
.rp-tip{position:absolute;z-index:2;display:flex;flex-direction:column;gap:2px;min-width:120px;padding:8px 10px;background:var(--ed-ink);color:#fff;border-radius:6px;font:400 12px/1.35 Inter,"Inter Fallback",Arial,sans-serif;pointer-events:none;transform:translateY(-100%)}
.rp-tip[hidden]{display:none}
.rp-tip b{font-weight:600}
.rp-table{margin-top:8px}
.rp-table summary{cursor:pointer;font:600 12px/1.4 Inter,"Inter Fallback",Arial,sans-serif;color:var(--ed-wine)}
.rp-table table,.rp-sum{width:100%;border-collapse:collapse;margin-top:8px;font:400 13px/1.4 Inter,"Inter Fallback",Arial,sans-serif}
.rp-table th,.rp-table td,.rp-sum th,.rp-sum td{padding:8px 10px;border-bottom:1px solid var(--ed-line);text-align:left}
.rp-table td,.rp-sum td{font-variant-numeric:tabular-nums}
.rp-wide{overflow-x:auto;margin-top:34px;border:1px solid var(--ed-line);border-radius:14px}
.rp-sum caption{padding:14px 12px 4px;text-align:left;font:600 11px/1 Inter,"Inter Fallback",Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--ed-wine)}
.rp-sum thead th{font:600 11px/1.3 Inter,"Inter Fallback",Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--ed-muted)}
.rp-how{max-width:760px;margin:20px 0 0;font:400 13.5px/1.65 Inter,"Inter Fallback",Arial,sans-serif;color:#4a4540}
.rp-arts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.rp-art{padding:26px;background:#fff;border-radius:14px;border-top:3px solid var(--ed-wine)}
.rp-art .rp-k{margin:0 0 10px;font:600 10.5px/1 Inter,"Inter Fallback",Arial,sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--ed-wine)}
.rp-art h3{margin:0 0 12px;font:500 24px/1.15 "Cormorant Garamond","Cormorant Garamond Fallback",Georgia,serif}
.rp-art p{margin:0 0 12px;font:400 14px/1.7 Inter,"Inter Fallback",Arial,sans-serif;color:#3a3532}
.rp-sample{font-size:11.5px!important;color:#6a625b!important}
.rp-join,.pc-acc{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,72px);align-items:start}
.rp-form,.pc-form{padding:26px;background:#fff;color:var(--ed-ink);border-radius:14px}
.rp-form label,.pc-form label,.rp-form legend,.pc-form legend{display:block;font:600 11px/1.4 Inter,"Inter Fallback",Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#3f3a37}
.rp-form>label,.pc-form>label{margin-bottom:14px}
.rp-form input:not([type=checkbox]),.pc-form input:not([type=checkbox]),.pc-form select,.pc-form textarea{display:block;width:100%;margin-top:6px;min-height:46px;padding:9px 12px;border:1px solid #d8cbbb;border-radius:8px;background:#fff;font:400 15px/1.4 Inter,"Inter Fallback",Arial,sans-serif;color:var(--ed-ink);letter-spacing:0;text-transform:none}
.rp-form input:focus,.pc-form input:focus,.pc-form select:focus,.pc-form textarea:focus{outline:2px solid rgba(142,13,32,.3);border-color:var(--ed-wine)}
.rp-form fieldset,.pc-form fieldset{margin:0 0 16px;padding:0;border:0;min-width:0}
.rp-form legend,.pc-form legend{margin-bottom:8px}
.rp-chips,.pc-chips{display:flex;flex-wrap:wrap;gap:8px}
.rp-chips label,.pc-chips label{position:relative;letter-spacing:0;text-transform:none}
.rp-chips input,.pc-chips input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.rp-chips span,.pc-chips span{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border:1px solid #d8cbbb;border-radius:999px;font:500 13px/1 Inter,"Inter Fallback",Arial,sans-serif;color:#3a3532}
.rp-chips input:checked+span,.pc-chips input:checked+span{background:var(--ed-wine);border-color:var(--ed-wine);color:#fff}
.rp-chips input:focus-visible+span,.pc-chips input:focus-visible+span{outline:2px solid var(--ed-wine);outline-offset:2px}
.rp-msg,.pc-msg{min-height:1em;margin:0 0 10px;font:500 13px/1.4 Inter,"Inter Fallback",Arial,sans-serif;color:#a3192f}
.rp-small,.pc-small{margin:12px 0 0;font:400 12px/1.5 Inter,"Inter Fallback",Arial,sans-serif;color:#6a625b}
.rp-done h3,.pc-done h3{margin:0 0 10px;font:500 26px/1.1 "Antonio","Antonio Fallback","Oswald",sans-serif;letter-spacing:.04em;text-transform:uppercase}
.rp-done p,.pc-done p{margin:0;font:400 15px/1.6 Inter,"Inter Fallback",Arial,sans-serif}
/* ---------- The Private Collection ---------- */
.pc-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;counter-reset:s}
.pc-steps li{position:relative;padding:26px 24px 24px;border:1px solid var(--ed-line);border-radius:14px;counter-increment:s}
.pc-steps li:before{content:"0" counter(s);display:block;margin-bottom:12px;font:500 34px/1 "Antonio","Antonio Fallback","Oswald",sans-serif;color:var(--ed-gold)}
.pc-steps b{display:block;margin-bottom:8px;font:600 16px/1.3 Inter,"Inter Fallback",Arial,sans-serif}
.pc-steps span{font:400 14px/1.65 Inter,"Inter Fallback",Arial,sans-serif;color:#4a4540}
.pc-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}
.pc-card{display:flex;flex-direction:column;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 20px 40px -32px rgba(40,10,14,.5)}
.pc-ph{position:relative;aspect-ratio:4/3;overflow:hidden;background:#2a2119}
.pc-ph img{display:block;width:100%;height:100%;object-fit:cover;filter:blur(14px) saturate(.85);transform:scale(1.15)}
.pc-lock{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;background:rgba(16,13,12,.72);color:#f3ede4;font:600 11px/1 Inter,"Inter Fallback",Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase}
.pc-lock svg{width:15px;height:15px;fill:none;stroke:var(--ed-gold);stroke-width:2}
.pc-b{display:flex;flex-direction:column;flex:1;padding:18px 20px 20px}
.pc-ref{margin:0;font:600 10.5px/1 Inter,"Inter Fallback",Arial,sans-serif;letter-spacing:.2em;color:var(--ed-wine)}
.pc-b h3{margin:8px 0 4px;font:500 23px/1.15 "Cormorant Garamond","Cormorant Garamond Fallback",Georgia,serif}
.pc-where{margin:0;font:400 13px/1.4 Inter,"Inter Fallback",Arial,sans-serif;color:var(--ed-muted)}
.pc-facts{list-style:none;display:flex;flex-wrap:wrap;gap:6px 14px;margin:12px 0;padding:0;font:500 12.5px/1.4 Inter,"Inter Fallback",Arial,sans-serif;color:#3a3532}
.pc-facts li:last-child{font-style:italic;color:var(--ed-wine)}
.pc-line{flex:1;margin:0 0 16px;font:400 14px/1.6 Inter,"Inter Fallback",Arial,sans-serif;color:#3a3532}
.pc-ask{align-self:flex-start;min-height:40px;padding:0 16px;border:1px solid var(--ed-wine);border-radius:999px;background:#fff;color:var(--ed-wine);font:600 12px/1 Inter,"Inter Fallback",Arial,sans-serif;cursor:pointer;transition:background .2s,color .2s}
.pc-ask:hover,.pc-ask.on{background:var(--ed-wine);color:#fff}
.pc-ask:focus-visible{outline:2px solid var(--ed-wine);outline-offset:2px}
.pc-note{margin:20px 0 0;font:400 12.5px/1.5 Inter,"Inter Fallback",Arial,sans-serif;color:var(--ed-muted)}
.pc-two{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.pc-form .pc-check{display:flex;align-items:center;gap:10px;letter-spacing:0;text-transform:none;font:500 14px/1.4 Inter,"Inter Fallback",Arial,sans-serif}
.pc-check input{width:18px;height:18px;accent-color:var(--ed-wine)}
@media(max-width:900px){.rp-charts,.rp-arts,.pc-steps,.rp-join,.pc-acc{grid-template-columns:1fr}.rp-kpis{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.pc-two{grid-template-columns:1fr}.rp-form,.pc-form{padding:20px}}
@media(prefers-reduced-motion:reduce){.ed-btn,.rp-mark,.pc-ask{transition:none}}
@media print{
  .ed-acts,.rp-join,#join,.rp-tip,.rp-table summary{display:none!important}
  .ed-hero,.ed-sec{padding:18px 0!important;background:#fff!important;color:#000!important}
  .rp-chart,.rp-art,.rp-sum{break-inside:avoid}
  .rp-charts,.rp-arts{grid-template-columns:1fr 1fr!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}}

