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

/* Haven Living, our magazine (3.2.25; _source/build_magazine.py): the section on the home page (the title on the left,
   three editions as fanned covers on the right) and the reader page, magazine.html. The covers are photographs with the
   masthead and cover lines set as real text. The covers fan out as the section comes into view (assets/magazine.js). */
@font-face{font-family:"Antonio";src:url(fonts/antonio.woff2)format("woff2");font-weight:100 700;font-style:normal;font-display:swap}
.mgHome,.mgPage{--mg-paper:#f4efe7;--mg-ink:#1d1a18;--mg-text:#3a332f;--mg-muted:#6a625b;--mg-line:#ddd3c6;--mg-wine:#8E0D20;--mg-serif:"Cormorant Garamond",Cormorant Garamond Fallback,Georgia,"Times New Roman",serif;--mg-cond:"Antonio",Antonio Fallback,"Arial Narrow",sans-serif}

/* ---------- a cover ---------- */
.mgCover{position:relative;display:block;aspect-ratio:3/4;overflow:hidden;border-radius:3px;background:#2b2724;color:#fff;text-decoration:none;container-type:inline-size;
  box-shadow:0 34px 60px -34px rgba(20,12,8,.6),0 3px 10px rgba(20,12,8,.18)}
.mgCover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mgCover:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.22),rgba(255,255,255,0) 3%,rgba(0,0,0,.12) 4.5%,rgba(0,0,0,0) 9%);pointer-events:none}   /* the spine */
.mgShade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,10,9,.52) 0%,rgba(12,10,9,.08) 30%,rgba(12,10,9,0) 48%,rgba(12,10,9,.18) 64%,rgba(12,10,9,.78) 100%)}
.mgMast{position:absolute;left:0;right:0;top:5.5%;display:flex;flex-direction:column;align-items:center;text-align:center;line-height:1}
.mgMastK{font:500 7px/1 Inter,Inter Fallback,Arial,sans-serif;font-size:clamp(8px,2.6cqw,12px);letter-spacing:.34em;text-transform:uppercase;opacity:.9;padding-left:.38em}
.mgMastT{margin-top:.08em;font:500 54px/.86 var(--mg-serif);font-size:25cqw;letter-spacing:.06em;text-transform:uppercase;padding-left:.06em;text-shadow:0 2px 18px rgba(0,0,0,.25)}
.mgMastS{margin-top:.1em;font:italic 400 18px/1 var(--mg-serif);font-size:8.6cqw;letter-spacing:.04em}
.mgEd{position:absolute;left:8%;right:8%;top:43%;display:flex;align-items:center;gap:.6em;font:500 8px/1 Inter,Inter Fallback,Arial,sans-serif;font-size:clamp(8.5px,2.9cqw,12px);letter-spacing:.2em;text-transform:uppercase;opacity:.95}
.mgEd:before,.mgEd:after{content:"";flex:1;height:1px;background:rgba(255,255,255,.55)}
.mgLines{position:absolute;left:8%;right:8%;bottom:22%;display:grid;gap:.55em}
.mgLines span{display:block;padding-left:.7em;border-left:2px solid #e26a7d;font:600 11px/1.25 Inter,Inter Fallback,Arial,sans-serif;font-size:clamp(9.5px,4.1cqw,15px);letter-spacing:.01em;text-shadow:0 1px 8px rgba(0,0,0,.4)}
.mgIssue{position:absolute;left:8%;right:8%;bottom:6%;display:flex;flex-direction:column;gap:.25em;font:400 10px/1.2 Inter,Inter Fallback,Arial,sans-serif;font-size:clamp(8.5px,3.5cqw,13px);letter-spacing:.14em;text-transform:uppercase;opacity:.95}
.mgSr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mgIssue b{font:500 22px/1 var(--mg-cond);font-size:9.4cqw;letter-spacing:.06em;opacity:1}

/* ---------- the section on the home page ---------- */
.mgHome{position:relative;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:center;gap:clamp(32px,5vw,80px);
  padding:clamp(72px,9vw,132px) 6%;background:var(--mg-paper);color:var(--mg-ink);overflow:hidden;overflow:clip}
.mgHome .ey{color:var(--mg-wine)}
.mgHome .hd-plate{margin-bottom:22px}
.mgHome h2.hd{font-size:clamp(52px,5.6vw,88px)}
.mgLead{max-width:46ch;margin:0 0 28px;font-size:17px;line-height:1.7;color:var(--mg-text)}
.mgList{max-width:460px;margin:0 0 34px;padding:0;list-style:none;border-top:1px solid var(--mg-line)}
.mgList a{display:flex;align-items:baseline;gap:14px;padding:13px 2px;border-bottom:1px solid var(--mg-line);color:var(--mg-ink);text-decoration:none;font-size:15px;font-weight:500;transition:color .25s,padding .3s cubic-bezier(.22,.61,.36,1)}
.mgList span{font:500 15px/1 var(--mg-cond);letter-spacing:.06em;color:var(--mg-wine)}
.mgList em{margin-left:auto;font-style:normal;font-weight:400;font-size:13px;color:var(--mg-muted)}
.mgList a:hover,.mgList a:focus-visible{color:var(--mg-wine);padding-left:8px}
.mgList a:focus-visible,.mgRead:focus-visible,.mgCover:focus-visible{outline:2px solid var(--mg-wine);outline-offset:4px}
.mgRead{display:inline-flex;align-items:center;gap:6px;padding:16px 28px;border-radius:999px;background:var(--mg-ink);color:#fff;text-decoration:none;font:500 12px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;transition:background .25s,transform .25s}
.mgRead:hover{background:var(--mg-wine);transform:translateY(-1px)}

.mgFan{position:relative;height:clamp(400px,42vw,600px)}
.mgFan .mgCover{position:absolute;left:50%;top:50%;width:clamp(200px,21vw,310px);margin:0;
  transform:translate(-50%,-50%) translate(var(--x,0),var(--y,0)) rotate(var(--r,0deg));transition:transform .9s cubic-bezier(.2,.75,.2,1),box-shadow .4s;transition-delay:calc(var(--i) * 70ms)}
.mgFan .mgCover:nth-child(1){--x:62%;--y:3%;--r:8deg}      /* edition 3, right */
.mgFan .mgCover:nth-child(2){--x:-62%;--y:3%;--r:-8deg}    /* edition 2, left */
.mgFan .mgCover:nth-child(3){--x:0%;--y:-2%;--r:0deg}      /* edition 1, in front */
.mgFan:hover .mgCover:nth-child(1){--x:74%;--r:10deg}
.mgFan:hover .mgCover:nth-child(2){--x:-74%;--r:-10deg}
.mgFan .mgCover:hover,.mgFan .mgCover:focus-visible{--y:-6%;transition-delay:0s;z-index:4;box-shadow:0 44px 70px -34px rgba(20,12,8,.7),0 4px 14px rgba(20,12,8,.2)}
.mgFan.mg-wait .mgCover{--x:0%;--y:0%;--r:0deg;transition-delay:0s}   /* stacked until the section comes into view */
.mgHome:after{content:"";position:absolute;right:6%;bottom:clamp(26px,3vw,44px);width:clamp(200px,34vw,520px);height:1px;background:var(--mg-line)}

@media (max-width:860px){
  .mgHome{grid-template-columns:1fr;padding:72px 16px 64px}
  .mgHome:after{display:none}
  .mgFan{order:-1;height:min(92vw,470px);margin:0 -16px}
  .mgFan .mgCover{width:min(44vw,240px)}
  .mgFan .mgCover:nth-child(1){--x:48%}.mgFan .mgCover:nth-child(2){--x:-48%}
  .mgFan:hover .mgCover:nth-child(1){--x:52%}.mgFan:hover .mgCover:nth-child(2){--x:-52%}
  .mgList{max-width:none}
}
@media (prefers-reduced-motion:reduce){.mgFan .mgCover,.mgList a,.mgRead{transition:none}}

/* ---------- the reader: magazine.html ---------- */
.mgPage{max-width:1240px;margin:0 auto;font-family:Inter,Inter Fallback,Arial,sans-serif;font-weight:400;padding:0 clamp(16px,4vw,48px) 72px;color:var(--mg-ink)}
.mgHero{padding:clamp(40px,6vw,80px) 0 clamp(28px,4vw,48px);border-bottom:1px solid var(--mg-line);text-align:center}
.mgHeroK{margin:0 0 14px;font:600 11px/1.4 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.24em;text-transform:uppercase;color:var(--mg-wine)}
.mgHero h1{margin:0;font:500 clamp(56px,10vw,128px)/.9 var(--mg-serif);letter-spacing:.02em;color:var(--mg-ink)}
.mgHeroLead{max-width:62ch;margin:20px auto 30px;font-size:17px;line-height:1.7;color:var(--mg-text)}
.mgEdNav ol{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0;padding:0;list-style:none}
.mgEdNav a{display:inline-flex;align-items:center;gap:10px;padding:11px 18px;border:1px solid var(--mg-line);border-radius:999px;color:var(--mg-ink);text-decoration:none;font-size:14px;font-weight:500;background:#fff;transition:border-color .2s,color .2s}
.mgEdNav a span{font:500 14px/1 var(--mg-cond);color:var(--mg-wine);letter-spacing:.06em}
.mgEdNav a:hover,.mgEdNav a:focus-visible{border-color:var(--mg-wine);color:var(--mg-wine)}
.mgEdNav a:focus-visible,.mgToc a:focus-visible,.mgMore a:focus-visible,.mgBtn:focus-visible{outline:2px solid var(--mg-wine);outline-offset:3px}

.mgEdition{display:grid;grid-template-columns:minmax(220px,340px) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start;padding:clamp(48px,6vw,80px) 0;border-bottom:1px solid var(--mg-line);scroll-margin-top:80px}
.mgEdSide{position:sticky;top:96px}
.mgEdBody{max-width:720px}
.mgEdK{margin:0 0 10px;font:600 11px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--mg-wine)}
.mgEdBody h2{margin:0;font:500 clamp(40px,5.4vw,66px)/.95 var(--mg-cond);letter-spacing:.03em;text-transform:uppercase;color:var(--mg-ink)}
.mgEdBody h2 span{display:block;margin-top:10px;font:italic 400 clamp(24px,2.8vw,32px)/1.1 var(--mg-serif);letter-spacing:0;text-transform:none;color:var(--mg-muted)}
.mgEdIntro{margin:22px 0 28px;font:400 clamp(20px,2.2vw,24px)/1.5 var(--mg-serif);color:var(--mg-text)}
.mgToc{margin:0 0 12px;padding:20px 22px;border-radius:14px;background:var(--mg-paper)}
.mgToc h3,.mgMore h3{margin:0 0 10px;font:600 11px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--mg-wine)}
.mgToc ol{margin:0;padding:0;list-style:none;counter-reset:toc}
.mgToc li{counter-increment:toc}
.mgToc a{display:grid;grid-template-columns:28px 1fr;column-gap:8px;padding:9px 0;border-top:1px solid var(--mg-line);color:var(--mg-ink);text-decoration:none}
.mgToc li:first-child a{border-top:0}
.mgToc a:before{content:counter(toc,decimal-leading-zero);grid-row:span 2;font:500 15px/1.3 var(--mg-cond);color:var(--mg-wine)}
.mgToc b{font-weight:600;font-size:15px}.mgToc span{font-size:13.5px;color:var(--mg-muted)}
.mgToc a:hover b{color:var(--mg-wine)}
.mgStory{padding:36px 0 4px;scroll-margin-top:84px}
.mgStory+.mgStory{border-top:1px solid var(--mg-line)}
.mgMeta{margin:0 0 10px;font:500 11px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--mg-muted)}
.mgStory h3{margin:0 0 10px;font:500 clamp(30px,3.6vw,42px)/1.05 var(--mg-serif);color:var(--mg-ink)}
.mgStand{margin:0 0 18px;font:italic 400 20px/1.45 var(--mg-serif);color:var(--mg-wine)}
.mgStory p:not(.mgMeta):not(.mgStand){margin:0 0 16px;font-size:16.5px;line-height:1.8;color:var(--mg-text)}
.mgStory .mgStand+p:first-letter{float:left;margin:.06em .1em 0 0;font:500 3.6em/.8 var(--mg-serif);color:var(--mg-wine)}
.mgMore{margin-top:26px;padding-top:20px;border-top:1px solid var(--mg-line)}
.mgMore ul{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.mgMore a{display:inline-block;padding:8px 14px;border-radius:999px;background:var(--mg-paper);color:var(--mg-ink);text-decoration:none;font-size:13.5px;font-weight:500}
.mgMore a:hover{color:var(--mg-wine)}
.mgFoot{padding:40px 0 0;text-align:center}
.mgFoot p{max-width:70ch;margin:0 auto 20px;font-size:13.5px;line-height:1.6;color:var(--mg-muted)}
.mgFootActs{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.mgBtn{display:inline-flex;padding:14px 24px;border-radius:999px;background:var(--mg-ink);color:#fff;text-decoration:none;font-size:13px;font-weight:500;letter-spacing:.06em}
.mgBtn:hover{background:var(--mg-wine)}
.mgBtn.ghost{background:none;border:1px solid var(--mg-ink);color:var(--mg-ink)}.mgBtn.ghost:hover{border-color:var(--mg-wine);color:var(--mg-wine)}
.mgIssueActs{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 8px}
.mgIssueActs .mgBtn{flex:1 1 auto;justify-content:center;padding:12px 18px}
.mgIssueNote{margin:0;font-size:12.5px;line-height:1.5;color:var(--mg-muted)}
@media (max-width:860px){
  .mgEdition{grid-template-columns:1fr}
  .mgEdSide{position:static;width:min(62vw,300px);margin:0 auto}
}
@media print{.mgEdNav,.mgMore,.mgFootActs{display:none}.mgEdSide{position:static;width:5cm}.mgEdition{break-before:page;grid-template-columns:5cm 1fr}}

/* 3.2.28: "Get each new edition" (magazine page) and its link on the home page */
.mgSub{display:grid;grid-template-columns:1fr minmax(280px,420px);gap:clamp(20px,4vw,48px);align-items:center;margin:clamp(36px,5vw,64px) 0 0;padding:clamp(22px,3vw,34px);border-radius:18px;background:var(--mg-paper)}
.mgSub h2{margin:0 0 8px;font:500 clamp(30px,3.6vw,42px)/1 var(--mg-serif);color:var(--mg-ink);text-transform:none;letter-spacing:0}
.mgSub p{margin:0;font-size:14.5px;line-height:1.6;color:var(--mg-text)}
.mgSubF label{display:block;margin-bottom:6px;font-size:13px;font-weight:600;color:var(--mg-ink)}
.mgSubRow{display:flex;gap:8px}
.mgSubRow input{flex:1;min-width:0;padding:12px 14px;border:1px solid #cfc4b6;border-radius:999px;font:15px Inter,Inter Fallback,Arial,sans-serif;background:#fff}
.mgSubRow input:focus-visible{outline:2px solid var(--mg-wine);outline-offset:2px}
.mgSubRow input[aria-invalid="true"]{border-color:#b3261e}
.mgSubRow .mgBtn{border:0;cursor:pointer;white-space:nowrap}
.mgSubRow .mgBtn:disabled{opacity:.6}
.mgSubMsg{min-height:1.4em;margin-top:8px!important;font-size:13.5px!important;font-weight:500;color:#1f6f4a!important}
.mgSubMsg.bad{color:#b3261e!important}
.mgSubNote{margin-top:4px!important;font-size:12px!important;color:var(--mg-muted)!important}
.mgSubNote a{color:var(--mg-wine)}
.mgSubLink{display:inline-block;margin-left:18px;color:var(--mg-ink);font-size:13.5px;font-weight:500;text-decoration:underline;text-underline-offset:3px}
.mgSubLink:hover{color:var(--mg-wine)}
.mgSubLink:focus-visible{outline:2px solid var(--mg-wine);outline-offset:3px}
@media(max-width:760px){.mgSub{grid-template-columns:1fr}.mgSubRow{flex-direction:column}.mgSubLink{display:block;margin:14px 0 0}}

/* Haven Living, the full issue (3.2.26): issue.html?ed=<n>. assets/issue.js lays out 24 A4 pages (794 × 1123 px, the
   size of A4 at 96 dpi) and shows them like a printed magazine: two pages side by side on a wide screen, one on a phone,
   turning like paper. The same pages are drawn into the PDF ("Download the PDF") and printed one per sheet. */

/* ---------- the viewer ---------- */
/* the site's footer, "Get in touch", side rail and help buttons are not needed behind a full-screen magazine */
html[data-page="issue"] body>*:not(.isApp):not(.skip-link):not(script):not(style):not(.isPrint):not(.isExport):not(.isDlg){display:none!important}
html[data-page="issue"],html[data-page="issue"] body{height:100%;margin:0;overflow:hidden;background:#171412}
.isApp{position:fixed;inset:0;z-index:2147483000;display:flex;flex-direction:column;background:radial-gradient(120% 90% at 50% 40%,#2c2622 0%,#171412 70%);color:#f3eee7;font-family:Inter,Inter Fallback,Arial,sans-serif}
.isBar{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.08);background:rgba(16,13,11,.72);backdrop-filter:blur(8px)}
.isBack{display:inline-flex;align-items:center;gap:8px;padding:8px 12px 8px 8px;border-radius:999px;color:#f3eee7;text-decoration:none;font-size:13px;font-weight:500}
.isBack:hover{background:rgba(255,255,255,.08)}
.isBack svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}
.isTitle{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px;line-height:1.2}
.isTitle b{font:500 16px/1.1 "Cormorant Garamond",Cormorant Garamond Fallback,Georgia,serif;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.isTitle span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#bfb4a8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.isTools{display:flex;align-items:center;gap:4px}
.isTool{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:40px;height:40px;padding:0 10px;border:0;border-radius:999px;background:none;color:#f3eee7;cursor:pointer;font:500 13px Inter,Inter Fallback,Arial,sans-serif}
.isTool svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.isTool:hover{background:rgba(255,255,255,.09)}
.isTool[aria-pressed="true"]{background:rgba(255,255,255,.16)}
.isTool.isDl{margin-left:6px;padding:0 16px;background:#f3eee7;color:#1d1a18}
.isTool.isDl:hover{background:#fff}
.isTool:focus-visible,.isBack:focus-visible,.isNav:focus-visible,.isThumb:focus-visible,.isScrub:focus-visible,.isDlg button:focus-visible,.isDlg a:focus-visible{outline:2px solid #e6c46a;outline-offset:2px}
.isTool .isLbl{display:inline}

.isStage{position:relative;flex:1;min-height:0;overflow:hidden;touch-action:pan-y pinch-zoom}
.isStage.zoomed{overflow:auto;touch-action:auto;cursor:grab}
.isBook{position:absolute;left:50%;top:50%;transform-origin:0 0;perspective:2600px}
.isStage.zoomed .isBook{position:relative;left:auto;top:auto;margin:24px auto}
.isSlot{position:absolute;top:0;width:794px;height:1123px;overflow:hidden;background:#fff;box-shadow:0 30px 60px -20px rgba(0,0,0,.6)}
.isSlot.l{left:0}.isSlot.r{left:794px}
.isSlot.l:after,.isSlot.r:after{content:"";position:absolute;top:0;bottom:0;width:60px;pointer-events:none;z-index:5}
.isSlot.l:after{right:0;background:linear-gradient(90deg,rgba(0,0,0,0),rgba(0,0,0,.14))}   /* the fold */
.isSlot.r:after{left:0;background:linear-gradient(270deg,rgba(0,0,0,0),rgba(0,0,0,.18))}
.isBook.single .isSlot.r:after,.isBook.single .isSlot.l:after{display:none}
.isSlot:empty{visibility:hidden}
.isFlip{position:absolute;top:0;width:794px;height:1123px;transform-style:preserve-3d;z-index:20;transition:transform .75s cubic-bezier(.45,.05,.25,1)}
.isFlip>div{position:absolute;inset:0;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#fff}
.isFlip>.b{transform:rotateY(180deg)}
.isFlip.fwd{left:794px;transform-origin:0 50%}
.isFlip.back{left:0;transform-origin:100% 50%}
.isFlip>div:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.18),rgba(0,0,0,0) 30%);opacity:0;transition:opacity .75s}
.isFlip.go>div:after{opacity:1}
.isBook.single .isSlot{transition:opacity .35s ease,transform .35s ease}
.isBook.single .isSlot.out{opacity:0;transform:translateX(var(--dx,-40px))}

.isNav{position:absolute;top:50%;z-index:30;width:52px;height:52px;margin-top:-26px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}
.isNav svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2}
.isNav:hover{background:rgba(255,255,255,.22)}
.isNav:disabled{opacity:.25;cursor:default}
.isNav.prev{left:14px}.isNav.next{right:14px}

.isFoot{display:flex;align-items:center;gap:14px;padding:10px 18px 12px;border-top:1px solid rgba(255,255,255,.08);background:rgba(16,13,11,.72)}
.isCount{min-width:118px;font-size:12px;letter-spacing:.08em;color:#d8cfc4;font-variant-numeric:tabular-nums}
.isScrub{flex:1;accent-color:#e6c46a;height:24px}
.isHint{font-size:12px;color:#9d9388}

/* the pages at a glance */
.isThumbs{position:absolute;inset:0;z-index:40;overflow:auto;padding:22px clamp(14px,3vw,40px) 40px;background:rgba(16,13,11,.96)}
.isThumbs[hidden]{display:none}
.isThumbs h2{margin:0 0 16px;font:500 22px/1.1 "Cormorant Garamond",Cormorant Garamond Fallback,Georgia,serif;color:#f3eee7}
.isThumbGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:18px 14px;margin:0;padding:0;list-style:none}
.isThumb{display:flex;flex-direction:column;gap:6px;width:100%;padding:0;border:0;background:none;color:#d8cfc4;cursor:pointer;font:500 11px Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.06em;text-align:left}
.isThumb .tw{position:relative;display:block;width:100%;aspect-ratio:794/1123;overflow:hidden;background:#fff;border-radius:2px;box-shadow:0 8px 18px -10px #000}
.isThumb .tw>.ipg{position:absolute;left:0;top:0;transform-origin:0 0;pointer-events:none}
.isThumb[aria-current="true"] .tw{outline:3px solid #e6c46a;outline-offset:2px}
.isThumb:hover .tw{box-shadow:0 12px 26px -10px #000,0 0 0 1px rgba(255,255,255,.4)}

/* dialogs: the PDF being made, sharing */
.isDlg{position:fixed;inset:0;z-index:2147483600;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(10,8,7,.62)}
.isDlg[hidden]{display:none}
.isDlgBox{width:min(440px,100%);padding:26px 26px 22px;border-radius:16px;background:#fbf8f3;color:#1d1a18;box-shadow:0 40px 80px -30px #000}
.isDlgBox h2{margin:0 0 8px;font:500 28px/1.05 "Cormorant Garamond",Cormorant Garamond Fallback,Georgia,serif}
.isDlgBox p{margin:0 0 14px;font-size:14px;line-height:1.55;color:#4a423c}
.isBarP{height:6px;border-radius:999px;background:#e7ded2;overflow:hidden;margin:4px 0 10px}
.isBarP i{display:block;height:100%;width:0;background:#8E0D20;transition:width .25s}
.isDlgActs{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:6px}
.isDlgActs button,.isDlgActs a{display:inline-flex;align-items:center;padding:11px 18px;border-radius:999px;border:1px solid #1d1a18;background:none;color:#1d1a18;font:500 13px Inter,Inter Fallback,Arial,sans-serif;text-decoration:none;cursor:pointer}
.isDlgActs .pri{background:#1d1a18;color:#fff}
.isLive{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.isNoJs{max-width:520px;margin:80px auto;padding:0 16px;text-align:center;font-size:16px;line-height:1.6}.isNoJs a{color:#e6c46a}
.isExport{position:fixed;left:-30000px;top:0;width:794px;pointer-events:none}

@media (max-width:760px){
  .isTool .isLbl{display:none}
  .isBack span{display:none}
  .isBack{padding:8px}
  .isTool.isDl{padding:0 12px}
  .isTool.isOpt{display:none}           /* zoom and print: the phone has its own */
  .isNav{width:42px;height:42px;margin-top:-21px;background:rgba(0,0,0,.35)}
  .isNav.prev{left:6px}.isNav.next{right:6px}
  .isHint{display:none}
  .isBar{padding:8px 8px}
}
@media (prefers-reduced-motion:reduce){.isFlip,.isFlip>div:after,.isBook.single .isSlot,.isBarP i{transition:none}}

/* ---------- a page ---------- */
.ipg{--paper:#f6f1ea;--ink:#1d1a18;--text:#3a332f;--muted:#6f665e;--line:#ddd2c4;--wine:#8E0D20;--rose:#e26a7d;--gold:#b88a2e;
  --serif:"Cormorant Garamond",Cormorant Garamond Fallback,Georgia,"Times New Roman",serif;--cond:"Antonio",Antonio Fallback,"Arial Narrow",sans-serif;--sans:Inter,Inter Fallback,Arial,sans-serif;
  --mg-serif:var(--serif);--mg-cond:var(--cond);
  position:relative;width:794px;height:1123px;overflow:hidden;box-sizing:border-box;background:#fff;color:var(--ink);font:400 13.5px/1.62 var(--sans);text-align:left}
.ipg *{box-sizing:border-box}
.ipg a{color:inherit;text-decoration:none}
.ipg img{display:block;max-width:none}
.ipg.paper{background:var(--paper)}
.ipg.dark{background:#1d1a18;color:#f3eee7}
.ipg .pad{position:absolute;inset:64px 64px 70px}
.ipg .folio{position:absolute;left:64px;right:64px;bottom:30px;display:flex;justify-content:space-between;font:500 9.5px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.ipg.dark .folio{color:#a99f94}
.ipg.even .folio{flex-direction:row-reverse}
.ipg .kick{margin:0 0 14px;font:600 10.5px/1.3 var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--wine)}
.ipg.dark .kick{color:var(--rose)}
.ipg h2{margin:0 0 18px;font:500 64px/.95 var(--serif);letter-spacing:-.005em;color:var(--ink)}
.ipg.dark h2{color:#fff}
.ipg h2 em{font-style:italic;color:var(--wine)}
.ipg.dark h2 em{color:var(--rose)}
.ipg h3{margin:0 0 6px;font:500 24px/1.1 var(--serif);color:var(--ink)}
.ipg.dark h3{color:#fff}
.ipg p{margin:0 0 12px}
.ipg .lead{font:400 21px/1.45 var(--serif);color:var(--text)}
.ipg.dark .lead{color:#e8e0d6}
.ipg .rule{height:1px;background:var(--line);margin:22px 0}
.ipg .cols2{column-count:2;column-gap:34px}
.ipg .cols2 p{break-inside:avoid-column}
.ipg .ph{position:relative;overflow:hidden;background:#d9d0c4}
.ipg .ph img{width:100%;height:100%;object-fit:cover;color:transparent;font-size:0}   /* a photo that cannot load leaves a plain panel, not its description */
.ipg .pad.fill{display:flex;flex-direction:column}
.ipg .pad.fill>*{flex:0 0 auto}
.ipg .pad.fill>.grow{flex:1 1 auto;min-height:200px}
.ipg .cap{margin-top:6px;font-size:10.5px;letter-spacing:.04em;color:var(--muted)}
.ipg .tag{display:inline-block;margin:0 4px 4px 0;padding:3px 9px;border:1px solid var(--line);border-radius:999px;font-size:10.5px;color:var(--text)}
.ipg .big{font:500 46px/1 var(--cond);letter-spacing:.02em;color:var(--wine)}
.ipg .sign{margin-top:20px;font:italic 400 30px/1 var(--serif);color:var(--ink)}
.ipg .signby{margin-top:6px;font:500 10.5px/1.3 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.ipg .dc{float:left;margin:.1em .1em 0 0;font:500 4.2em/.78 var(--serif);color:var(--wine)}
.ipg .lead .dc{font-size:3.2em}

/* cover and back cover */
.ipg.cover .mgCover{position:absolute;inset:0;aspect-ratio:auto;border-radius:0;box-shadow:none;container-type:inline-size}
.ipg.cover .mgCover:after{display:none}
.ipg.cover .mgIssue b{font-size:7.4cqw}
.ipg.cover .cvNote{position:absolute;left:8%;right:8%;bottom:2.4%;font:400 9px/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.ipg.back .ph{position:absolute;inset:0}
.ipg.back .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,14,12,.15),rgba(18,14,12,.8))}
.ipg.back .bcIn{position:absolute;left:64px;right:64px;bottom:90px;color:#fff;text-align:center}
.ipg.back .bcMast{font:500 92px/.9 var(--serif);letter-spacing:.06em;text-transform:uppercase}
.ipg.back .bcSub{font:italic 400 28px/1.2 var(--serif);margin:6px 0 30px}
.ipg.back .bcWeb{font:500 12px/1.6 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:#e9dfd3}

/* contents */
.ipg .toc{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.ipg .toc li a{display:grid;grid-template-columns:40px 1fr auto;align-items:baseline;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}
.ipg .toc .n{font:500 20px/1 var(--cond);color:var(--wine)}
.ipg .toc b{font:500 18px/1.2 var(--serif);margin-right:6px}
.ipg .toc em{font-style:normal;font-size:11.5px;color:var(--muted)}
.ipg .toc span:last-child{font-size:11.5px;color:var(--muted)}

/* grids of people, listings and photos */
.ipg .grid{display:grid;gap:18px}
.ipg .g2{grid-template-columns:1fr 1fr}.ipg .g3{grid-template-columns:repeat(3,1fr)}.ipg .g5{grid-template-columns:repeat(5,1fr)}
.ipg .person .ph{aspect-ratio:4/5;border-radius:2px}
.ipg .person b{display:block;margin-top:7px;font:500 15px/1.15 var(--serif)}
.ipg .person span{display:block;font-size:10px;line-height:1.35;color:var(--muted)}
.ipg .lead2{display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:start}
.ipg .lead2 .ph{width:96px;height:118px}
.ipg .lead2 b{display:block;font:500 18px/1.1 var(--serif)}
.ipg .lead2 .t{display:block;margin:2px 0 5px;font:600 9.5px/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--wine)}
.ipg .lead2 p{margin:0;font-size:11.5px;line-height:1.5;color:var(--text)}
.ipg .office h4{margin:0 0 8px;padding-bottom:6px;border-bottom:1px solid var(--line);font:600 10.5px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--wine)}
.ipg .lst .ph{aspect-ratio:4/3;border-radius:2px}
.ipg .lst .pr{display:block;margin-top:9px;font:500 21px/1 var(--cond);letter-spacing:.02em;color:var(--wine)}
.ipg .lst b{display:block;margin-top:5px;font:500 17px/1.15 var(--serif)}
.ipg .lst .m{display:block;margin-top:3px;font-size:11px;color:var(--muted)}
.ipg .lst .ref{display:block;margin-top:2px;font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:#9a9086}
.ipg .feat .ph{height:430px}
.ipg .land{padding:16px 16px 14px;border:1px solid var(--line);border-radius:4px;background:#fff}
.ipg .land .pr{display:block;font:500 22px/1 var(--cond);color:var(--wine)}
.ipg .land b{display:block;margin:8px 0 4px;font:500 17px/1.2 var(--serif)}
.ipg .land .m{display:block;font-size:11px;color:var(--muted);margin-bottom:8px}
.ipg .svc .ph{height:118px;border-radius:2px}
.ipg .svc b{display:block;margin:10px 0 4px;font:500 20px/1.1 var(--serif)}
.ipg .svc p{font-size:11.5px;line-height:1.5;color:var(--text);margin:0}
.ipg .fig{padding:16px 0;border-top:1px solid var(--line)}
.ipg .fig .big{display:block;margin-bottom:6px}
.ipg .fig b{display:block;font:600 10.5px/1.3 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ink)}
.ipg .fig p{margin:4px 0 0;font-size:11.5px;color:var(--text)}
.ipg .quote{padding:18px 20px;border-left:3px solid var(--wine);background:#fff}
.ipg .quote p{margin:0 0 8px;font:italic 400 17px/1.4 var(--serif);color:var(--text)}
.ipg .quote span{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.ipg .area{padding:12px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:150px 1fr;gap:18px}
.ipg .area b{font:500 20px/1.1 var(--serif)}
.ipg .area .ty{display:block;margin-top:3px;font-size:10.5px;color:var(--muted)}
.ipg .area p{margin:0 0 6px;font-size:12px;line-height:1.5}
.ipg .area .fr{font:600 10px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--wine)}
.ipg .val{padding:14px 0;border-top:1px solid var(--line)}
.ipg .val b{display:block;font:500 21px/1.1 var(--serif)}
.ipg .val i{display:block;margin:3px 0 4px;font-style:italic;font-family:var(--serif);font-size:15px;color:var(--wine)}
.ipg .val p{margin:0;font-size:11.5px;line-height:1.5}
.ipg .road{padding:12px 0;border-top:1px solid rgba(255,255,255,.18)}
.ipg .road .y{font:500 22px/1 var(--cond);color:var(--rose)}
.ipg .road b{display:block;margin:4px 0;font:500 18px/1.15 var(--serif);color:#fff}
.ipg .road li{font-size:11px;color:#d9d0c6}
.ipg .road ul{margin:0;padding-left:16px}
.ipg .gal{position:absolute;inset:64px 64px 70px;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);gap:10px}
.ipg .gal .ph{border-radius:2px}
.ipg .gal .ph:nth-child(1){grid-column:span 2;grid-row:span 2}
.ipg .gal .ph:nth-child(6){grid-column:span 2;grid-row:span 2}
.ipg .note{font-size:10px;line-height:1.5;color:var(--muted)}
.ipg .linkrow a{display:inline-block;margin:0 6px 8px 0;padding:7px 13px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:11.5px;font-weight:500}
.ipg.dark .linkrow a{background:none;border-color:rgba(255,255,255,.3);color:#fff}
.ipg .steps{margin:0;padding:0;list-style:none;counter-reset:st}
.ipg .steps li{counter-increment:st;display:grid;grid-template-columns:44px 1fr;gap:12px;padding:13px 0;border-top:1px solid var(--line)}
.ipg .steps li:before{content:counter(st,decimal-leading-zero);font:500 24px/1 var(--cond);color:var(--wine)}
.ipg .steps b{display:block;font:500 19px/1.15 var(--serif)}
.ipg .steps p{margin:3px 0 0;font-size:12px;line-height:1.5}

/* printing the issue: one page per A4 sheet */
@media print{
  @page issue{size:A4;margin:0}          /* named, so the site's own print margins (extras.css) do not apply */
  html[data-page="issue"],html[data-page="issue"] body{height:auto;overflow:visible;background:#fff}
  body.isBody>*:not(.isApp):not(.isPrint){display:none!important}
  .isApp{display:none!important}
  .isPrint{display:block!important}
  .isPrint{margin:0;padding:0}
  .isPrint .ipg{page:issue;break-after:page;break-inside:avoid;width:210mm;height:296mm;margin:0;zoom:1;transform:none}
  .isPrint .ipg:last-child{break-after:auto}
}
.isPrint{display:none}

/* 3.2.30: shown the moment the page arrives, until the issue is laid out (assets/issue.js replaces it) */
.isLoad{margin:auto;display:flex;flex-direction:column;align-items:center;gap:10px;color:#f3eee7;text-align:center}
.isLoad b{font:500 clamp(40px,8vw,72px)/1 "Cormorant Garamond",Cormorant Garamond Fallback,Georgia,serif;letter-spacing:.04em}
.isLoad span{font:500 12px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.24em;text-transform:uppercase;color:#bfb4a8}

/* ==========================================================================
   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}}

