/* Combined by _source/bundle_assets.py from: assets/saved.css, assets/extras.css, assets/bottom-hero.css, assets/bh-shared.css */
/* Saved listings: floating button, drawer and compare table (assets/saved.js) */
.sr{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.hvSavedBtn{position:fixed;left:clamp(14px,2vw,24px);bottom:clamp(14px,2.4vh,24px);z-index:var(--z-float,1000);display:inline-flex;align-items:center;gap:9px;min-height:46px;padding:0 18px 0 14px;border:0;border-radius:999px;background:#171816;color:#fff;font:500 11px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;box-shadow:0 14px 30px -12px rgba(0,0,0,.55);animation:hvIn .45s cubic-bezier(.22,.61,.36,1) both;transition:background .3s,transform .35s cubic-bezier(.22,.61,.36,1)}
.hvSavedBtn[hidden]{display:none}
.hvSavedBtn svg{width:18px;height:18px;fill:#FF4D6A}
.hvSavedBtn .n{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#C31B37;font:600 11px/1 Inter,Inter Fallback,sans-serif;letter-spacing:0}
.hvSavedBtn:hover{background:#7c0b19;transform:translateY(-2px)}
.hvSavedBtn:focus-visible{outline:2px solid #FF4D6A;outline-offset:3px}
@keyframes hvIn{from{opacity:0;transform:translateY(12px)}}

.hvSaved{position:fixed;inset:0;z-index:var(--z-modal,10000);background:rgba(8,8,8,.62);display:flex;justify-content:flex-end;animation:hvFade .3s ease}
.hvSaved[hidden]{display:none}
@keyframes hvFade{from{opacity:0}}
.hvSaved-panel{position:relative;width:min(460px,100%);height:100%;overflow:auto;background:#faf7f3;color:#2d2926;box-shadow:-30px 0 60px -30px rgba(0,0,0,.5);display:flex;flex-direction:column;animation:hvSlide .45s cubic-bezier(.22,.61,.36,1);outline:0}
@keyframes hvSlide{from{transform:translateX(40px);opacity:.4}}
.hvSaved.comparing .hvSaved-panel{width:min(1080px,100%)}
.hvSaved-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px 6px}
.hvSaved-head h2{margin:0;font:500 30px/1 "Antonio",Antonio Fallback,"Oswald",Impact,sans-serif;letter-spacing:.05em;text-transform:uppercase;color:#7c0b19}
.hvSaved-x{width:44px;height:44px;border:1px solid #d6cdc0;background:#fff;font:300 26px/1 Inter,Inter Fallback,sans-serif;color:#2d2926;cursor:pointer}
.hvSaved-x:hover{background:#7c0b19;border-color:#7c0b19;color:#fff}
.hvSaved-hint{margin:6px 24px 14px;font:400 13px/1.5 Inter,Inter Fallback,sans-serif;color:#6a625b}
.hvSaved-list{list-style:none;margin:0;padding:0 24px;flex:1}
.hvSaved-empty{padding:30px 0;font:400 15px/1.6 Inter,Inter Fallback,sans-serif;color:#5d5752}
.hvSaved-item{display:grid;grid-template-columns:auto 76px 1fr auto;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #e6dccf}
.hvSaved-item .pick{display:grid;place-items:center;width:30px;height:44px;cursor:pointer}
.hvSaved-item .pick input{width:18px;height:18px;accent-color:#7c0b19;cursor:pointer}
.hvSaved-item .ph{display:block;width:76px;height:56px;overflow:hidden;background:#e9e2d8}
.hvSaved-item .ph img{width:100%;height:100%;object-fit:cover;display:block}
.hvSaved-item .tx{display:flex;flex-direction:column;gap:3px;min-width:0}
.hvSaved-item .tt{font:500 14px/1.3 Inter,Inter Fallback,sans-serif;color:#2d2926;text-decoration:none}
.hvSaved-item .tt:hover{color:#7c0b19;text-decoration:underline}
.hvSaved-item b{font:600 13px/1.2 Inter,Inter Fallback,sans-serif;color:#7c0b19}
.hvSaved-item small{font:400 12px/1.3 Inter,Inter Fallback,sans-serif;color:#6a625b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hvSaved-item .rm{width:40px;height:40px;border:0;background:none;font:300 22px/1 Inter,Inter Fallback,sans-serif;color:#6a625b;cursor:pointer}
.hvSaved-item .rm:hover{color:#C31B37}
.hvSaved-foot{position:sticky;bottom:0;display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:16px 24px 22px;background:#faf7f3;border-top:1px solid #e6dccf}
.hvSaved-cmp,.hvSaved-enq{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;font:600 11px/1 Inter,Inter Fallback,sans-serif;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;cursor:pointer}
.hvSaved-cmp{border:1px solid #171816;background:#171816;color:#fff}
.hvSaved-cmp:disabled{background:#fff;color:#6a625b;border-color:#cdbfb4;cursor:not-allowed}
.hvSaved-enq{border:1px solid #C31B37;background:#C31B37;color:#fff}
.hvSaved-enq:hover{background:#7c0b19;border-color:#7c0b19}
.hvSaved-enq[hidden],.hvSaved-cmp[hidden],.hvSaved-clear[hidden]{display:none}
.hvSaved-clear{margin-left:auto;min-height:44px;border:0;background:none;color:#6a625b;font:500 12px/1 Inter,Inter Fallback,sans-serif;text-decoration:underline;cursor:pointer}
.hvSaved-clear.arm{color:#C31B37;font-weight:600}
.hvSaved :focus-visible{outline:2px solid #C31B37;outline-offset:2px}

.hvSaved.comparing .hvSaved-hint,.hvSaved.comparing .hvSaved-list,.hvSaved.comparing .hvSaved-foot{display:none}
.hvCmp{padding:0 24px 28px}
.hvCmp-head{padding:6px 0 14px}
.hvCmp-back{min-height:44px;border:0;background:none;padding:0;color:#7c0b19;font:600 12px/1 Inter,Inter Fallback,sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.hvCmp-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.hvCmp-t{border-collapse:collapse;min-width:100%;font:400 14px/1.45 Inter,Inter Fallback,sans-serif}
.hvCmp-t th,.hvCmp-t td{padding:12px 14px;border-bottom:1px solid #e6dccf;text-align:left;vertical-align:top;min-width:170px}
.hvCmp-t th{position:sticky;left:0;z-index:1;min-width:110px;background:#faf7f3;font:600 10.5px/1.4 Inter,Inter Fallback,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#6a625b}
.hvCmp-t td.blank{position:sticky;left:0;background:#faf7f3;min-width:110px}
.hvCmp-t .cph{display:block;height:110px;margin-bottom:8px;background:#e9e2d8;overflow:hidden}
.hvCmp-t .cph img{width:100%;height:100%;object-fit:cover;display:block}
.hvCmp-t a{color:#2d2926;font-weight:500}
.hvCmp-t td.best b{color:#1f6f45}
.hvCmp-t td.best b:after{content:" · lowest";font-weight:500;color:#1f6f45}
.hvCmp-t .cenq{display:inline-block;padding:10px 14px;background:#C31B37;color:#fff;text-decoration:none;font:600 10.5px/1 Inter,Inter Fallback,sans-serif;letter-spacing:.16em;text-transform:uppercase}

@media(max-width:560px){
  .hvSaved-panel{width:100%}
  .hvSavedBtn .t{display:none}
  .hvSavedBtn{padding:0 14px}
}
@media(prefers-reduced-motion:reduce){.hvSavedBtn,.hvSaved,.hvSaved-panel{animation:none}.hvSavedBtn{transition:none}}
/* ---------- 3.2.19: saved searches (assets/saved-searches.js) ---------- */
.hvSavedBtn.fresh:after{content:"";position:absolute;right:6px;top:6px;width:10px;height:10px;border-radius:50%;background:#FF4D6A;box-shadow:0 0 0 2px #171816}
.hvSaved-ss{padding:6px 24px 14px}
.hvSaved-sh{margin:14px 0 8px;font:600 10.5px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#8E0D20}
.hvSaved-sl{list-style:none;margin:0;padding:0}
.hvSaved-sl li{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #e6dccf}
.hvSaved-sl a{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;color:#1d1a18;text-decoration:none}
.hvSaved-sl b{font:600 14px/1.35 Inter,Inter Fallback,Arial,sans-serif}
.hvSaved-sl em{font-style:normal;padding:3px 8px;border-radius:999px;background:#8E0D20;color:#fff;font:600 10.5px/1.2 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.04em}
.hvSaved-sl small{flex-basis:100%;font:400 12px/1.4 Inter,Inter Fallback,Arial,sans-serif;color:#6a625b}
.hvSaved-sl a:hover b{color:#8E0D20;text-decoration:underline}
.hvSaved-sl .rm{flex:0 0 auto;width:32px;height:32px;border:0;border-radius:50%;background:#f3ece2;color:#3a3532;font-size:18px;cursor:pointer}
.hvSS{position:fixed;inset:0;z-index:calc(var(--z-modal,10000) + 5);display:flex;align-items:center;justify-content:center;padding:16px}
.hvSS-veil{position:absolute;inset:0;background:rgba(14,10,8,.6);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
.hvSS-box{position:relative;width:min(480px,100%);max-height:calc(100svh - 32px);overflow-y:auto;padding:26px 26px 22px;background:#fff;color:#1d1a18;border-top:4px solid #8E0D20;border-radius:14px;box-shadow:0 40px 90px -30px rgba(0,0,0,.6);outline:none}
.hvSS-x{position:absolute;right:10px;top:10px;width:36px;height:36px;border:0;border-radius:50%;background:#f5efe8;color:#3a3532;font:300 22px/1 Inter,Inter Fallback,Arial,sans-serif;cursor:pointer}
.hvSS-box h2{margin:0 0 14px;font:500 26px/1.1 "Antonio","Antonio Fallback","Oswald",sans-serif;letter-spacing:.04em;text-transform:uppercase}
.hvSS-box form>label,.hvSS-to{display:block;margin:0 0 12px;font:600 11px/1.4 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#3f3a37}
.hvSS-box input[name=label],.hvSS-to input{display:block;width:100%;box-sizing:border-box;margin-top:6px;min-height:44px;padding:8px 12px;border:1px solid #d8cbbb;border-radius:8px;font:400 15px/1.4 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:0;text-transform:none;color:#1d1a18}
.hvSS-box .hvSS-chk{display:flex!important;align-items:center;gap:10px;letter-spacing:0!important;text-transform:none!important;font:500 14px/1.4 Inter,Inter Fallback,Arial,sans-serif!important}
.hvSS-chk input{width:18px;height:18px;accent-color:#8E0D20}
.hvSS-how{margin:0;padding:0;border:0;min-width:0}
.hvSS-how legend{margin-bottom:8px;font:600 11px/1.4 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#3f3a37}
.hvSS-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.hvSS-chips label{position:relative}
.hvSS-chips input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.hvSS-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}
.hvSS-chips input:checked+span{background:#8E0D20;border-color:#8E0D20;color:#fff}
.hvSS-chips input:focus-visible+span{outline:2px solid #8E0D20;outline-offset:2px}
.hvSS-small{margin:0 0 6px;font:400 12px/1.5 Inter,Inter Fallback,Arial,sans-serif;color:#6a625b}
.hvSS-msg{min-height:1em;margin:4px 0 8px;font:500 13px/1.4 Inter,Inter Fallback,Arial,sans-serif;color:#a3192f}
.hvSS-acts{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.hvSS-go{min-height:46px;padding:0 22px;border:0;border-radius:999px;background:#8E0D20;color:#fff;font:600 13px/1 Inter,Inter Fallback,Arial,sans-serif;cursor:pointer}
.hvSS-go:disabled{opacity:.6}
.hvSS-cancel{min-height:46px;padding:0 18px;border:1px solid #d8cbbb;border-radius:999px;background:#fff;color:#3a3532;font:500 13px/1 Inter,Inter Fallback,Arial,sans-serif;cursor:pointer}
.hvSS-done{margin:0 0 16px;font:400 14px/1.6 Inter,Inter Fallback,Arial,sans-serif}
@media print{.hvSS{display:none!important}}
/* "Save this search" on Homes for sale, Land for sale and Rentals */
.mk-savesearch{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 14px;border:1px solid #8E0D20;border-radius:999px;background:#fff;color:#8E0D20;font:600 12px/1 Inter,Inter Fallback,Arial,sans-serif;cursor:pointer;transition:background .2s,color .2s;white-space:nowrap}
.mk-savesearch svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
.mk-savesearch:hover,.mk-savesearch:focus-visible,.mk-savesearch.on{background:#8E0D20;color:#fff}
.mk-savesearch:focus-visible{outline:2px solid #8E0D20;outline-offset:2px}
.rs-tools .rs-savesearch{margin-right:12px}
@media(max-width:560px){.rs-tools{flex-wrap:wrap;row-gap:8px}.rs-tools .rs-savesearch{flex-basis:100%;justify-content:center;margin-right:0}}

/* 3.2.25: favourites need an account: the "Save your favourites" prompt, the confirmation, and hearts on any card */
.hvFavAsk{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:16px;background:rgba(12,10,9,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.hvFavAsk[hidden]{display:none}
.hvFavAsk-box{position:relative;width:min(420px,100%);padding:30px 26px 22px;border-radius:18px;background:#fff;color:#1d1a18;text-align:center;box-shadow:0 30px 70px -30px rgba(0,0,0,.6);animation:hvFavIn .35s cubic-bezier(.22,.61,.36,1)}
@keyframes hvFavIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.hvFavAsk-ic{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#fbeef0}
.hvFavAsk-ic svg{width:24px;height:24px;fill:#C31B37}
.hvFavAsk h2{margin:12px 0 8px;font:500 30px/1 "Antonio","Antonio Fallback","Arial Narrow",sans-serif;text-transform:uppercase;letter-spacing:.02em;color:#7c0b19}
.hvFavAsk p{margin:0 0 18px;font:400 15px/1.6 Inter,"Inter Fallback",Arial,sans-serif;color:#4a423d}
.hvFavAsk-acts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hvFavAsk-acts a{display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:999px;font:600 12px/1 Inter,"Inter Fallback",Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;text-decoration:none}
.hvFavAsk-in{background:#8E0D20;color:#fff}.hvFavAsk-in:hover,.hvFavAsk-in:focus-visible{background:#6d0a18}
.hvFavAsk-reg{border:1px solid #8E0D20;color:#8E0D20}.hvFavAsk-reg:hover,.hvFavAsk-reg:focus-visible{background:#fbeef0}
.hvFavAsk a:focus-visible,.hvFavAsk button:focus-visible{outline:2px solid #C31B37;outline-offset:3px}
.hvFavAsk-no{margin-top:12px;padding:10px;border:0;background:none;color:#6a625b;font:500 13px Inter,"Inter Fallback",Arial,sans-serif;cursor:pointer}
.hvFavAsk-x{position:absolute;right:10px;top:8px;width:40px;height:40px;border:0;background:none;font-size:26px;line-height:1;color:#6a625b;cursor:pointer}
.hvFavAsk-small{margin:6px 0 0!important;font-size:12.5px!important;color:#6a625b!important}
@media(max-width:380px){.hvFavAsk-acts{grid-template-columns:1fr}}
.hvFavToast{position:fixed;left:50%;bottom:24px;z-index:1250;max-width:calc(100% - 32px);padding:12px 18px;border-radius:999px;background:#1d1a18;color:#fff;font:500 14px/1.4 Inter,"Inter Fallback",Arial,sans-serif;box-shadow:0 14px 34px -14px rgba(0,0,0,.6);transform:translate(-50%,30px);opacity:0;pointer-events:none;transition:opacity .3s,transform .3s}
.hvFavToast.on{opacity:1;transform:translate(-50%,0)}
.hvFav{position:absolute;right:12px;top:12px;z-index:3;display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.94);cursor:pointer;box-shadow:0 2px 10px rgba(0,0,0,.18);transition:transform .25s,background .25s}
.hvFav svg{width:20px;height:20px;fill:none;stroke:#8E0D20;stroke-width:1.8;transition:fill .25s}
.hvFav:hover{transform:scale(1.1)}
.hvFav[aria-pressed="true"]{background:#8E0D20}.hvFav[aria-pressed="true"] svg{fill:#fff;stroke:#fff}
.hvFav.pop{animation:hvFavPop .4s}
@keyframes hvFavPop{50%{transform:scale(1.25)}}
.hvFav:focus-visible{outline:2px solid #fff;outline-offset:2px;box-shadow:0 0 0 4px #8E0D20}
@media(prefers-reduced-motion:reduce){.hvFavAsk-box,.hvFav.pop{animation:none}.hvFavToast{transition:none}}
/* hearts on cards that are one big link: the heart sits beside the link, over the photo */
.exclusiveCard{position:relative}.exclusiveLink{display:block;color:inherit;text-decoration:none}
.ol-card{position:relative}
.ofCard{position:relative}.ofCard .hvFav{top:14px;right:14px}
.rail>.ofCard{flex:0 0 min(430px,78vw);scroll-snap-align:start;min-width:0}.ofCard>.card{display:block}
.hvFav.prFav{position:static;display:inline-grid;margin-left:10px;vertical-align:middle;box-shadow:none;border:1px solid #e3dcd0}

/* 3.2.27: recently viewed (in the Saved panel) and "Picked for you" (Homes for sale, Rentals): assets/recent.js */
.hvSaved-rv{margin:18px 0 0;padding-top:14px;border-top:1px solid #e6ddd1}
.hvRv-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.hvRv-h h3{margin:0;font:600 11px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#8E0D20}
.hvRv-clear,.hvPick-x{border:0;background:none;padding:6px 4px;color:#6a625b;font:500 12.5px Inter,Inter Fallback,Arial,sans-serif;text-decoration:underline;cursor:pointer}
.hvRv-list{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.hvRv-list a{display:grid;grid-template-columns:64px 1fr;gap:10px;align-items:center;color:inherit;text-decoration:none}
.hvRv-list .ph{display:block;width:64px;height:48px;border-radius:6px;overflow:hidden;background:#e9e3d9}
.hvRv-list img{width:100%;height:100%;object-fit:cover;display:block}
.hvRv-list b{display:block;font-size:13.5px;font-weight:600}.hvRv-list small{color:#6a625b;font-size:12px}
.hvRv-list a:hover b{color:#8E0D20}
.hvPick{max-width:1320px;margin:18px auto 8px;padding:20px clamp(16px,3vw,28px);border:1px solid #e6ddd1;border-radius:16px;background:#fbf8f3;box-sizing:border-box}
.hvPick-h{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}
.hvPick-k{margin:0 0 4px;font:600 10.5px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#8E0D20}
.hvPick h2{margin:0;font:500 26px/1.1 "Cormorant Garamond",Cormorant Garamond Fallback,Georgia,serif;color:#1d1a18;text-transform:none;letter-spacing:0}
.hvPick-list{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin:14px 0 0;padding:0;list-style:none}
.hvPick-list a{display:flex;flex-direction:column;gap:3px;color:inherit;text-decoration:none}
.hvPick-list .ph{display:block;aspect-ratio:4/3;border-radius:10px;overflow:hidden;background:#e9e3d9}
.hvPick-list img{width:100%;height:100%;object-fit:cover;display:block}
.hvPick-list .pr{margin-top:6px;font:500 17px/1 Antonio,Antonio Fallback,"Arial Narrow",sans-serif;color:#8E0D20}
.hvPick-list .tt{font-weight:600;font-size:13.5px}.hvPick-list small{font-size:12px;color:#6a625b}
.hvPick-list a:hover .tt{color:#8E0D20}
.hvPick-list a:focus-visible,.hvRv-list a:focus-visible,.hvPick-x:focus-visible,.hvRv-clear:focus-visible{outline:2px solid #8E0D20;outline-offset:3px;border-radius:6px}
.hvPick-n{margin:10px 0 0;font-size:11.5px;color:#6a625b}
@media(max-width:1000px){.hvPick-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.hvPick-list{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.hvPick-list li{flex:0 0 62%;scroll-snap-align:start}}

/* 3.2.28: notes on favourites, alerts and the shared link (Saved panel) */
.hvSaved-tools{display:grid;gap:10px;margin:0 0 14px;padding:12px 14px;border-radius:12px;background:#f6f1ea}
.hvSaved-al{display:flex;align-items:flex-start;gap:8px;font-size:13.5px;line-height:1.4;color:#3a332f;cursor:pointer}
.hvSaved-al input{margin-top:2px;accent-color:#8E0D20}
.hvSaved-shb,.hvSaved-copy,.hvSaved-unsh,.nt,.nt-s,.nt-c{border:1px solid #1d1a18;border-radius:999px;background:#fff;color:#1d1a18;padding:7px 14px;font:500 12.5px Inter,Inter Fallback,Arial,sans-serif;cursor:pointer}
.hvSaved-shb:hover,.hvSaved-copy:hover,.nt-s:hover{background:#1d1a18;color:#fff}
.hvSaved-shbox{display:grid;gap:6px}
.hvSaved-shbox label{font-size:12.5px;color:#6a625b}
.hvSaved-shrow{display:flex;gap:6px}
.hvSaved-shrow input{flex:1;min-width:0;padding:8px 10px;border:1px solid #d9d0c4;border-radius:8px;font:13px Inter,Inter Fallback,Arial,sans-serif;background:#fff}
.hvSaved-unsh{justify-self:start;border:0;background:none;padding:4px 0;text-decoration:underline;color:#6a625b}
.hvSaved-item .nt{justify-self:start;margin-top:6px;padding:4px 10px;font-size:12px;border-color:#d9d0c4}
.hvSaved-item .nt-t{display:block;margin-top:5px;padding:6px 9px;border-left:2px solid #8E0D20;background:#fbf8f3;font-size:12.5px;line-height:1.45;color:#3a332f;white-space:pre-wrap}
.nt-ed{display:grid;gap:6px;margin-top:6px}
.nt-ed textarea{width:100%;box-sizing:border-box;padding:8px 10px;border:1px solid #d9d0c4;border-radius:8px;font:13px/1.45 Inter,Inter Fallback,Arial,sans-serif;resize:vertical}
.nt-ed span{display:flex;gap:6px}
.nt-c{border-color:#d9d0c4}
.hvSaved-tools button:focus-visible,.hvSaved-item .nt:focus-visible,.nt-ed button:focus-visible,.hvSaved-al input:focus-visible{outline:2px solid #8E0D20;outline-offset:2px}

/* 3.1.7 FALLBACK FONTS. Shown while a web font downloads, sized to take the same space (size-adjust and the overrides
   were measured from the real font files against Arial and Times New Roman), so text does not jump when the web font
   arrives. Font lists name them right after the web font: Inter,Inter Fallback,Arial,sans-serif (added by the build). */
@font-face{font-family:"Inter Fallback";src:local("Arial"),local("Liberation Sans"),local("Helvetica"),local("Roboto");size-adjust:107.48%;ascent-override:90.13%;descent-override:22.44%;line-gap-override:0%}
@font-face{font-family:"Cormorant Garamond Fallback";src:local("Times New Roman"),local("Liberation Serif"),local("Times");size-adjust:97.34%;ascent-override:94.93%;descent-override:29.49%;line-gap-override:0%}
@font-face{font-family:"Barlow Condensed Fallback";src:local("Arial"),local("Liberation Sans"),local("Helvetica"),local("Roboto");size-adjust:66.49%;ascent-override:150.4%;descent-override:30.08%;line-gap-override:0%}
@font-face{font-family:"Antonio Fallback";src:local("Arial"),local("Liberation Sans"),local("Helvetica"),local("Roboto");size-adjust:64.39%;ascent-override:179.35%;descent-override:21.61%;line-gap-override:0%}
/* 3.1.4 STACKING ORDER. Every layer that floats above the page takes its place from here, so a dialog is never
   covered by a sticky bar or a floating button. Page content stays below 100. Each use also carries the same number
   as a fallback (var(--z-modal,10000)), so a page without this file still stacks correctly.
   sticky   top bars and progress lines                                              100
   float    WhatsApp, Saved and inbox buttons; install banner                        1000
   modal    menus, dialogs, lightboxes, side panels; tours and share sheets above    10000
   toast    short confirmations                                                      11000
   top      the skip link when focused                                               12000 */
:root{--z-sticky:100;--z-float:1000;--z-modal:10000;--z-toast:11000;--z-top:12000}
/* 2.2.6 extras: WhatsApp button, virtual tour viewer, calculators, extra listing-card actions */

/* ---------- WhatsApp ---------- */
.hvWA{position:fixed;right:clamp(14px,2vw,22px);bottom:clamp(14px,2.4vh,22px);z-index:var(--z-float,1000);display:inline-flex;align-items:center;gap:10px;min-height:50px;padding:0 20px 0 15px;border-radius:999px;background:#1a7f4b;color:#fff;text-decoration:none;font:600 11px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;box-shadow:0 16px 30px -12px rgba(0,0,0,.5);animation:hvWAin .5s cubic-bezier(.22,.61,.36,1) .6s both;transition:background .3s,transform .35s cubic-bezier(.22,.61,.36,1),opacity .3s}
.hvWA svg{width:22px;height:22px;fill:#fff;flex:0 0 auto}
.hvWA:hover{background:#136c3b;transform:translateY(-2px)}
.hvWA:focus-visible{outline:2px solid #1a7f4b;outline-offset:3px;box-shadow:0 0 0 5px #fff}
.hvWA.away{opacity:0;pointer-events:none;transform:translateY(10px)}
@keyframes hvWAin{from{opacity:0;transform:translateY(16px)}}
html.has-wa .to-top,html.has-wa .moTop{bottom:84px!important}
@media(max-width:700px){.hvWA{padding:0;width:52px;height:52px;justify-content:center}.hvWA .t{display:none}html.has-wa .to-top,html.has-wa .moTop{bottom:80px!important}}

/* ---------- virtual tours ---------- */
.hvTour{position:fixed;inset:0;z-index:calc(var(--z-modal,10000) + 10);display:flex;flex-direction:column;background:#0b0d0c;color:#fff;animation:hvTourIn .35s ease}
.hvTour[hidden]{display:none}
@keyframes hvTourIn{from{opacity:0}}
.hvTour-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px 10px clamp(16px,3vw,32px);background:#0b0d0c;border-bottom:1px solid rgba(255,255,255,.12)}
.hvTour-bar h2{margin:0;font:500 clamp(18px,2vw,24px)/1.1 "Antonio",Antonio Fallback,"Oswald",Impact,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hvTour-x{flex:0 0 auto;width:46px;height:46px;border:1px solid rgba(255,255,255,.4);background:none;color:#fff;font:300 28px/1 Inter,Inter Fallback,sans-serif;cursor:pointer}
.hvTour-x:hover{background:#C31B37;border-color:#C31B37}
.hvTour-x:focus-visible{outline:2px solid #fff;outline-offset:2px}
.hvTour-stage{position:relative;flex:1}
.hvTour-wait{position:absolute;inset:0;display:grid;place-items:center;margin:0;font:400 14px/1 Inter,Inter Fallback,sans-serif;letter-spacing:.1em;color:rgba(255,255,255,.75)}
.hvTour.ready .hvTour-wait{display:none}
.hvTour-frame{position:absolute;inset:0;width:100%;height:100%;border:0;background:#0b0d0c}
.ltour{display:inline-flex;align-items:center;min-height:32px;margin-top:10px;padding:0 12px;border:1px solid #171816;background:#171816;color:#fff;font:600 10.5px/1 Inter,Inter Fallback,sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.ltour:hover{background:#C31B37;border-color:#C31B37}
.ltour.hero-tour{margin-top:22px;min-height:46px;padding:0 20px;background:#fff;border-color:#fff;color:#171816}
.ltour:focus-visible{outline:2px solid #C31B37;outline-offset:2px}

/* ---------- extra actions on listing cards ---------- */
.lwa,.lcalc{display:inline-flex;align-items:center;min-height:32px;margin:10px 10px 0 0;padding:0 12px;border:1px solid #cdbfb4;background:#fff;color:#2d2926;font:600 10.5px/1 Inter,Inter Fallback,sans-serif;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.lwa{color:#136c3b;border-color:#b9d8c6}
.lwa:hover{background:#136c3b;border-color:#136c3b;color:#fff}
.lcalc:hover{background:#171816;border-color:#171816;color:#fff}
.lwa:focus-visible,.lcalc:focus-visible,.saved-view:focus-visible{outline:2px solid #C31B37;outline-offset:2px}
.lbody .lenq{display:inline-block;margin-right:14px}
.saved-view{min-height:44px;padding:0 16px;border:1px solid rgba(255,255,255,.5);background:none;color:#fff;font:600 11px/1 Inter,Inter Fallback,sans-serif;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
.saved-view:hover{background:#fff;color:#171516}

/* ---------- calculators ---------- */
.hvCalc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(20px,3vw,44px);align-items:start;margin:0;padding:clamp(40px,6vw,72px) clamp(20px,10.5%,160px);background:#f6f2ed;border-top:1px solid #e6dccf;border-bottom:1px solid #e6dccf;color:#2d2926;scroll-margin-top:150px}
.hvCalc .kicker{font:600 10.5px/1 Inter,Inter Fallback,sans-serif;letter-spacing:.24em;text-transform:uppercase;color:#C31B37}
.hvCalc h2{margin:12px 0 12px;font:500 clamp(30px,3.2vw,46px)/1 "Antonio",Antonio Fallback,"Oswald",Impact,sans-serif;letter-spacing:.04em;text-transform:uppercase;color:#7c0b19;-webkit-text-fill-color:#7c0b19;background:none}
.hvCalc-head p{margin:0;font:400 14px/1.7 Inter,Inter Fallback,sans-serif;color:#5d5752}
.hvCalc-in{display:grid;gap:22px}
.hvCalc-f label{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px;font:600 10.5px/1.3 Inter,Inter Fallback,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#4a4540}
.hvCalc-f output{font:600 13px/1.3 Inter,Inter Fallback,sans-serif;letter-spacing:0;text-transform:none;color:#7c0b19}
.hvCalc-f input[type=range]{width:100%;accent-color:#C31B37;height:28px}
.hvCalc-f input[type=text]{width:100%;box-sizing:border-box;padding:14px;border:1px solid #cdbfb4;background:#fff;font:500 16px/1 Inter,Inter Fallback,sans-serif;color:#2d2926}
.hvCalc-f input:focus-visible{outline:2px solid #C31B37;outline-offset:2px}
.hvCalc-out{padding:24px;background:#171816;color:#fff}
.hvCalc-out .lbl{display:block;font:600 10.5px/1.3 Inter,Inter Fallback,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.hvCalc-out .big{display:block;margin:12px 0 16px;font:500 clamp(30px,3vw,42px)/1 "Antonio",Antonio Fallback,"Oswald",Impact,sans-serif;letter-spacing:.03em;color:#fff}
.hvCalc-out dl{margin:0 0 14px;display:grid;gap:8px}
.hvCalc-out dl div{display:flex;justify-content:space-between;gap:10px;font:400 13px/1.4 Inter,Inter Fallback,sans-serif;border-top:1px solid rgba(255,255,255,.14);padding-top:8px}
.hvCalc-out dt{color:rgba(255,255,255,.75)}.hvCalc-out dd{margin:0;font-weight:600}
.hvCalc-out .band{margin:0 0 12px;font:400 13px/1.5 Inter,Inter Fallback,sans-serif;color:rgba(255,255,255,.85)}
.hvCalc-out .fine{margin:0 0 16px;font:400 11.5px/1.55 Inter,Inter Fallback,sans-serif;color:rgba(255,255,255,.72)}
.hvCalc-go{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;background:#C31B37;color:#fff;text-decoration:none;font:600 11px/1 Inter,Inter Fallback,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.hvCalc-go[hidden]{display:none}
.hvCalc-go:hover{background:#fff;color:#7c0b19}
.hvCalc-go:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(max-width:1000px){.hvCalc{grid-template-columns:1fr 1fr}.hvCalc-head{grid-column:1/-1}}
@media(max-width:640px){.hvCalc{grid-template-columns:1fr;padding:36px 6%}}
@media(prefers-reduced-motion:reduce){.hvWA,.hvTour{animation:none}.hvWA,.lwa,.lcalc{transition:none}}

/* ---- 2.2.7 verification badges (assets/verify.js, _source/verification.py) ---- */
.vbadge{display:inline-flex;align-items:center;gap:6px;font:600 10px/1.2 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#2b2523;white-space:nowrap}
.vbadge svg{width:14px;height:14px;flex:0 0 14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.vbadge.vb-property{color:#1d6b45}
.vbadge.vb-agent{color:#8a1426}
.vbadge.vb-owner{color:#5a4a2c}
.vbadge.vb-card{display:flex;margin:9px 0 2px}
.exclusiveBody .vbadge.vb-card{margin:0 0 7px}
.card .vbadge.vb-card{margin:14px 0 -6px}
.vlisting{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:18px 0 0;padding:12px 14px;border:1px solid #e3dcd0;background:#faf8f4;font:400 13px/1.5 Inter,Inter Fallback,Arial,sans-serif;color:#4a423d}
.vlisting em{font-style:normal;color:#6a625b}
.vlegend{margin:14px 0 0;font:400 13px/1.5 Inter,Inter Fallback,Arial,sans-serif;color:#4a423d}
.vlegend summary{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font:600 11px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#8a1426;padding:8px 0;list-style:none}
.vlegend summary::-webkit-details-marker{display:none}
.vlegend summary::after{content:'+';font-size:14px;letter-spacing:0}
.vlegend[open] summary::after{content:'–'}
.vlegend summary:focus-visible{outline:2px solid #C31B37;outline-offset:3px}
.vlegend ul{list-style:none;margin:6px 0 8px;padding:0;display:grid;gap:8px}
.vlegend li{display:grid;grid-template-columns:minmax(170px,auto) 1fr;gap:4px 14px;align-items:center}
.vlegend p{margin:0;font-size:12px;color:#6a625b}
@media(max-width:560px){.vlegend li{grid-template-columns:1fr}}

/* ---- 2.2.7 "Add to home screen" offer (assets/pwa.js) ---- */
.hvInstall{position:fixed;left:clamp(12px,2vw,24px);bottom:clamp(14px,2.4vh,24px);z-index:calc(var(--z-float,1000) + 5);display:flex;align-items:center;gap:12px;max-width:min(440px,calc(100vw - 24px));padding:12px 12px 12px 14px;background:#171816;color:#f4efe6;box-shadow:0 12px 34px rgba(0,0,0,.3);font:400 13px/1.45 Inter,Inter Fallback,Arial,sans-serif;opacity:0;transform:translateY(16px);transition:opacity .3s,transform .3s}
.hvInstall.on{opacity:1;transform:none}
.hvInstall img{flex:0 0 40px;border-radius:9px}
.hvInstall-t{display:flex;flex-direction:column;gap:2px;min-width:0}
.hvInstall-t b{font-weight:600;color:#fff}
.hvInstall-t span{color:#cfc7bb;font-size:12px}
.hvInstall button{flex:0 0 auto;min-height:40px;padding:0 14px;border:1px solid #f4efe6;background:none;color:#f4efe6;font:600 10px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.hvInstall .hvInstall-go{background:#C31B37;border-color:#C31B37;color:#fff}
.hvInstall .hvInstall-x{border-color:transparent;padding:0 8px;color:#cfc7bb}
.hvInstall button:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media(max-width:640px){.hvInstall{right:12px;bottom:calc(clamp(14px,2.4vh,24px) + 66px);flex-wrap:wrap}.hvInstall-t{flex:1 1 calc(100% - 56px)}.hvInstall .hvInstall-go{margin-left:52px}}
@media(prefers-reduced-motion:reduce){.hvInstall{transition:none}}

/* ---- 2.2.8 share menu and "Link copied" notice (assets/share.js) ---- */
.hvShareBtn{display:inline-flex;align-items:center;gap:7px;cursor:pointer}
.hvShareBtn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
.hvShare{position:absolute;z-index:calc(var(--z-modal,10000) + 20);min-width:220px;max-width:calc(100vw - 16px);padding:6px;background:#fff;border:1px solid #e3dcd0;box-shadow:0 14px 40px rgba(20,14,10,.22);display:flex;flex-direction:column}
.hvShare a,.hvShare button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:11px 12px;border:0;background:none;text-align:left;font:500 14px/1.3 Inter,Inter Fallback,Arial,sans-serif;color:#2b2523;text-decoration:none;cursor:pointer}
.hvShare a:hover,.hvShare button:hover,.hvShare a:focus-visible,.hvShare button:focus-visible{background:#f6f1ea;outline:none;box-shadow:inset 3px 0 0 #C31B37}
.hvShare button span{font-size:11px;color:#6a625b;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hvToast{position:fixed;left:50%;bottom:28px;z-index:var(--z-toast,11000);transform:translate(-50%,20px);opacity:0;pointer-events:none;padding:12px 18px;background:#171816;color:#fff;font:500 13px/1.4 Inter,Inter Fallback,Arial,sans-serif;box-shadow:0 10px 30px rgba(0,0,0,.3);transition:opacity .25s,transform .25s;max-width:calc(100vw - 32px)}
.hvToast.on{opacity:1;transform:translate(-50%,0)}
.lshare{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:0;border:0;background:none;color:#5f574f;font:600 10px/1.2 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.lshare:hover{color:#7d111b}
.lshare:focus-visible{outline:2px solid #C31B37;outline-offset:3px}
.lagent{margin:6px 0 2px;font-size:12px;color:#5f574f}
.lagent a{color:#7d111b;text-decoration:none;border-bottom:1px solid rgba(125,17,27,.3)}
.lagent a:hover{border-bottom-color:currentColor}

/* ---- 2.2.8 skeleton placeholders while content loads ---- */
.sk,.sk-card .sk-ph,.sk-card .sk-l{background:linear-gradient(90deg,#ece6dd 0,#f6f2ec 40%,#ece6dd 80%);background-size:300% 100%;animation:hvSk 1.3s ease-in-out infinite}
.sk-line{height:12px;margin:0 0 12px;width:100%}
.sk-h{height:64px;width:80%;margin:6px 0 18px}
.sk-card{background:#fff;min-height:100%}
.sk-card .sk-ph{aspect-ratio:1.4;width:100%}
.sk-card .sk-b{padding:18px}
.sk-card .sk-l{height:12px;margin:0 0 12px}
.sk-card .sk-l.big{height:26px;width:55%}
.sk-card .sk-l.s{width:70%}
@keyframes hvSk{0%{background-position:100% 0}100%{background-position:0 0}}
@media(prefers-reduced-motion:reduce){.sk,.sk-card .sk-ph,.sk-card .sk-l{animation:none}.hvToast{transition:none}}
.rs-photo,.lthumb,.exclusiveImage,.ag-ph{background-color:#ece6dd}

/* ---- 2.2.8 listing page: reference, share, print, listing agent (assets/listing-page.js) ---- */
.lp-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin:18px 0 0}
.lp-ref{font:600 11px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#6a625b;margin-right:6px}
.lp-btn{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 14px;border:1px solid #cdbfb0;background:#fff;color:#2b2523;font:600 10.5px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.lp-btn:hover{border-color:#7d111b;color:#7d111b}
.lp-btn:focus-visible{outline:2px solid #C31B37;outline-offset:2px}
.lp-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round}
.lp-agent{display:flex;align-items:center;gap:14px;margin-top:22px}
.lp-av{position:relative;flex:0 0 56px;width:56px;height:56px;border-radius:50%;overflow:hidden;background:linear-gradient(140deg,#5a0b14,#c31b37);display:flex;align-items:center;justify-content:center}
.lp-av b{font:500 20px/1 'Cormorant Garamond',Cormorant Garamond Fallback,serif;color:#fff}
.lp-av img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lp-who{display:flex;flex-direction:column;gap:3px}
.lp-who small{font:600 9.5px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#b8b2aa}
.contact .lp-who a{font:500 22px/1.1 'Cormorant Garamond',Cormorant Garamond Fallback,serif;letter-spacing:0;text-transform:none;border:0;padding:0;color:#fff}
.contact .lp-who a:hover{text-decoration:underline}
.lp-who span{font-size:12px;color:#b8b2aa}
.lp-print{display:none}

/* ---- 2.2.8 printing: any page prints without menus, floating buttons or pop-ups; the listing page prints as a datasheet ---- */
@media print{
  @page{margin:14mm}
  .hvCalc,.sn,.snSvc,.snBack,.skip-link,#hvDock,.hvWA,.hvSavedBtn,.hvInstall,.hvToast,.hvShare,.to-top,#get-in-touch,.bh,footer,.lp-tools,.rs-saved,.saved-bar,.lwa,.lcalc,.lshare,.save,.rs-save{display:none!important}
  html,body{background:#fff!important;color:#000!important}
  *{animation:none!important;transition:none!important;box-shadow:none!important}
  .reveal,[class*="reveal"]{opacity:1!important;transform:none!important}
  a{color:inherit!important}
  html[data-page="listing"] .hero{display:grid;grid-template-columns:1.1fr .9fr;gap:6mm;padding:0 0 6mm;align-items:start}
  html[data-page="listing"] .hero img{height:72mm!important}
  html[data-page="listing"] .copy h1{font-size:34pt;line-height:.95;margin:0 0 4mm;color:#4a0005!important;-webkit-text-fill-color:#4a0005!important;background:none!important}
  html[data-page="listing"] .price{font-size:20pt;margin:4mm 0}
  html[data-page="listing"] .facts{font-size:9pt;gap:4mm}
  html[data-page="listing"] .vlisting{margin-top:4mm;font-size:9pt;border-color:#999}
  html[data-page="listing"] .intro{display:block;padding:0 0 5mm}
  html[data-page="listing"] .intro h2,html[data-page="listing"] .gallery h2{font-size:16pt;margin:0 0 2mm;color:#000!important;-webkit-text-fill-color:#000!important;background:none!important}
  html[data-page="listing"] .intro p{font-size:10pt;line-height:1.5;color:#222}
  html[data-page="listing"] .gallery{background:none;padding:0 0 4mm;break-inside:avoid}
  html[data-page="listing"] .galleryHead span,html[data-page="listing"] .gallery .ey{display:none}
  html[data-page="listing"] .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3mm}
  html[data-page="listing"] .g,html[data-page="listing"] .g:nth-child(n){grid-column:auto!important;height:32mm!important;background:#eee}
  html[data-page="listing"] .g:nth-child(n+4){display:none}
  html[data-page="listing"] .contact{background:none!important;color:#000!important;padding:4mm 0;border-top:1px solid #999;display:block;break-inside:avoid}
  html[data-page="listing"] .contact h2{font-size:14pt;color:#000!important}
  html[data-page="listing"] .contact p,html[data-page="listing"] .lp-who span,html[data-page="listing"] .lp-who small{color:#333!important}
  html[data-page="listing"] .contact>a,html[data-page="listing"] .contact a[href^="contact-us"]{display:none}
  html[data-page="listing"] .contact .lp-who a{color:#000!important}
  html[data-page="listing"] .note{background:none;font-size:7.5pt;padding:2mm 0}
  html[data-page="listing"] .lp-print{break-inside:avoid;display:flex;justify-content:space-between;gap:8mm;padding:4mm 0 0;border-top:1px solid #999;font:9pt/1.5 Inter,Inter Fallback,Arial,sans-serif}
  html[data-page="listing"] .lp-print div:last-child{text-align:right}
}

/* ---- 2.2.8 listing grids: empty-state help, card share, link targets ---- */
.lcard{scroll-margin-top:150px}
.lcard:target{outline:2px solid #C31B37;outline-offset:4px}
.lempty-acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.lreset{min-height:44px;padding:0 18px;border:1px solid #8a1426;background:#8a1426;color:#fff;font:600 11px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.lidea{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid #cdbfb4;background:#fff;color:#2d2926;font:500 14px/1.2 Inter,Inter Fallback,Arial,sans-serif;cursor:pointer;text-decoration:none}
.lidea em{font-style:normal;font-size:12px;color:#6a625b}
.lidea:hover{border-color:#8a1426;color:#8a1426}
.lidea.ask{border-color:transparent;color:#8a1426;padding-left:4px}
.lreset:focus-visible,.lidea:focus-visible{outline:2px solid #C31B37;outline-offset:2px}
.lempty p{margin:0}
.lthumb:not(.ld),.exclusiveImage:not(.ld),.ag-ph:not(.ld){background-image:linear-gradient(90deg,#e5ddd3 0,#f3eee7 40%,#e5ddd3 80%);background-size:300% 100%;animation:hvSk 1.3s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.lthumb:not(.ld),.exclusiveImage:not(.ld),.ag-ph:not(.ld){animation:none}}
.ex-sk{flex:0 0 min(24vw,330px)}
@media(max-width:900px){.ex-sk{flex-basis:44vw}}
@media(max-width:600px){.ex-sk{flex-basis:64vw}}

/* ---- 2.2.9 viewing requests (assets/booking.js) ---- */
.lp-book{padding:56px 4.5% 60px;background:#fff;border-top:1px solid #eee7e1}
.hvBook{--bk:#7d111b}
.hvBook .bk-head{max-width:720px;margin-bottom:22px}
.hvBook .bk-head h2{font:500 clamp(36px,4.4vw,58px)/.9 'Cormorant Garamond',Cormorant Garamond Fallback,serif;margin:0 0 10px;color:#4a0005}
.hvBook .bk-head p{margin:0;font-size:15px;line-height:1.6;color:#4a423d}
.bk-form{max-width:980px}
.bk-form fieldset{border:0;margin:0 0 20px;padding:0;min-width:0}
.bk-form legend{padding:0;margin:0 0 10px;font:600 11px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#4a423d}
.bk-type{display:flex;flex-wrap:wrap;gap:10px}
.bk-type legend{width:100%}
.bk-form input[type=radio]{position:absolute;opacity:0;width:1px;height:1px}
.bk-type label span{display:flex;flex-direction:column;gap:3px;min-width:220px;padding:12px 16px;border:1px solid #d6cabd;cursor:pointer;background:#fff}
.bk-type b{font:600 14px/1.2 Inter,Inter Fallback,Arial,sans-serif;color:#2b2523}
.bk-type small{font-size:12px;color:#6a625b}
.bk-scroll{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;scroll-snap-type:x proximity}
.bk-days label{flex:0 0 auto;scroll-snap-align:start}
.bk-days label span:first-of-type{display:flex;flex-direction:column;align-items:center;gap:2px;width:68px;padding:10px 4px;border:1px solid #d6cabd;background:#fff;cursor:pointer;text-align:center}
.bk-days b{font:300 26px/1 'Antonio',Antonio Fallback,'Arial Narrow',sans-serif;color:#2b2523}
.bk-days small{font:600 10px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#6a625b}
.bk-days i{font:500 9px/1 Inter,Inter Fallback,Arial,sans-serif;font-style:normal;color:#6a625b}
.bk-days label.off span:first-of-type{background:#f4f0ea;cursor:not-allowed;opacity:.7}
.bk-slots{display:flex;flex-wrap:wrap;gap:8px}
.bk-slots label span{display:inline-flex;align-items:center;min-height:42px;padding:0 16px;border:1px solid #d6cabd;background:#fff;font:500 14px/1 Inter,Inter Fallback,Arial,sans-serif;color:#2b2523;cursor:pointer}
.bk-none{margin:0;font-size:14px;color:#6a625b}
.bk-form input[type=radio]:checked+span{border-color:var(--bk);background:var(--bk);color:#fff}
.bk-form input[type=radio]:checked+span b,.bk-form input[type=radio]:checked+span small{color:#fff}
.bk-form input[type=radio]:focus-visible+span{outline:2px solid #C31B37;outline-offset:3px}
.bk-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;margin:0 0 14px}
.bk-fields label{display:flex;flex-direction:column;gap:6px;font:600 11px/1.2 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#4a423d}
.bk-fields small{font-weight:400;text-transform:none;letter-spacing:0;color:#6a625b}
.bk-fields .bk-wide{grid-column:1/-1}
.bk-fields input,.bk-fields textarea{width:100%;min-height:46px;padding:10px 12px;border:1px solid #cdbfb0;background:#fff;font:400 15px/1.4 Inter,Inter Fallback,Arial,sans-serif;color:#2b2523;letter-spacing:0;text-transform:none}
.bk-fields input:focus-visible,.bk-fields textarea:focus-visible{outline:2px solid #C31B37;outline-offset:1px}
.bk-consent{display:flex;gap:10px;align-items:flex-start;margin:0 0 12px;font-size:14px;color:#4a423d}
.bk-consent input{width:18px;height:18px;margin-top:1px;accent-color:#7d111b}
.bk-msg{min-height:1.2em;margin:0 0 10px;font-size:14px;color:#a3122c}
.bk-go,.bk-ghost{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border:1px solid var(--bk);background:var(--bk);color:#fff;font:600 11px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;cursor:pointer}
.bk-ghost{background:#fff;color:var(--bk)}
.bk-go:focus-visible,.bk-ghost:focus-visible{outline:2px solid #C31B37;outline-offset:3px}
.bk-note{margin:12px 0 0;font-size:12.5px;color:#6a625b;max-width:640px}
.bk-done{max-width:720px;padding:24px;border:1px solid #e3dcd0;background:#faf8f4}
.bk-done h3{margin:6px 0 10px;font:500 32px/1 'Cormorant Garamond',Cormorant Garamond Fallback,serif}
.bk-done p{margin:0 0 12px;line-height:1.6;color:#3a332f}
.bk-ref{font:600 12px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#7d111b}
.bk-acts{display:flex;flex-wrap:wrap;gap:10px}
@media(max-width:760px){.bk-fields{grid-template-columns:1fr}.bk-type label,.bk-type label span{width:100%}}
@media print{.lp-book{display:none!important}}
.bk-scroll,.bk-form label{position:relative}

/* ---- 2.2.9 language and currency switches (assets/prefs.js) ---- */
.hvPrefs{display:inline-flex;align-items:center;gap:6px;margin-left:14px;vertical-align:middle}
.hvPrefs[data-hv-hold]{min-width:118px;min-height:30px}   /* 3.1.5: space kept for the language and currency switches until prefs.js fills it */
.hvPref select{appearance:none;-webkit-appearance:none;min-height:30px;padding:0 22px 0 9px;border:1px solid rgba(255,255,255,.35);border-radius:2px;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5'%3E%3Cpath d='M0 0l4 5 4-5z' fill='%23ffffff'/%3E%3C/svg%3E") no-repeat right 7px center;color:inherit;font:600 10.5px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.1em;cursor:pointer}
.hvPref select option{color:#2b2523;background:#fff}
.hvPref select:hover{border-color:currentColor}
.hvPref select:focus-visible{outline:2px solid #fff;outline-offset:2px}
.ab-nav .hvPref select,.lc-nav .hvPref select,header.nav .hvPref select{border-color:rgba(43,37,35,.35);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5'%3E%3Cpath d='M0 0l4 5 4-5z' fill='%232b2523'/%3E%3C/svg%3E")}
.ab-nav .hvPref select:focus-visible,.lc-nav .hvPref select:focus-visible,header.nav .hvPref select:focus-visible{outline-color:#C31B37}
@media print{.hvPrefs{display:none}}
.bk-local{display:block;margin-top:3px;font-size:10.5px;font-weight:400;color:#6a625b}
.bk-times legend small{font-weight:400;text-transform:none;letter-spacing:0;color:#6a625b}
.bk-slots label span{flex-direction:column;justify-content:center;align-items:flex-start;padding-top:6px;padding-bottom:6px}
.bk-slots label input:checked+span .bk-local{color:rgba(255,255,255,.8)}
/* header switches follow the header's own text colour (light over photos, dark once the header turns solid) */
.hvPref{position:relative;display:inline-flex}
.hvPref select,.ab-nav .hvPref select,.lc-nav .hvPref select,header.nav .hvPref select{background-image:none;color:inherit;border-color:currentColor;border-color:color-mix(in srgb,currentColor 45%,transparent)}
.hvPref::after{content:'';position:absolute;right:8px;top:50%;margin-top:-2px;border:4px solid transparent;border-top-color:currentColor;pointer-events:none}
@media(max-width:700px){
  .ab-nav .hvPrefs,.lc-nav .hvPrefs,header.nav .navlinks .hvPrefs{position:absolute;right:16px;top:100%;margin:4px 0 0}
}

/* ---- 2.2.10 agent ratings: gold stars with a burgundy outline (assets/agents.js) ---- */
.hvStars{position:relative;display:inline-block;line-height:0;white-space:nowrap;vertical-align:middle}
.hvStars svg{width:18px;height:18px;margin-right:2px}
.hvStars.sm svg{width:13px;height:13px;margin-right:1px}
.hvStars.lg svg{width:26px;height:26px;margin-right:3px}
.hvStars-base svg{fill:#f3e7cf;stroke:#8a1426;stroke-width:1.4;stroke-linejoin:round}
.hvStars-fill{position:absolute;inset:0 auto 0 0;overflow:hidden}
.hvStars-fill svg{fill:#C9A646;stroke:#7d111b;stroke-width:1.4;stroke-linejoin:round}
.tm-rate{display:flex;align-items:center;gap:6px;margin-top:6px}
.tm-rate em{font-style:normal;font-size:11px;color:#6a625b}
.tm-m-rate{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:10px 0 4px}
.tm-m-rate>a:first-child{display:inline-flex;align-items:center;gap:7px;text-decoration:none;color:inherit}
.tm-m-rate b{font:600 15px/1 Inter,Inter Fallback,Arial,sans-serif;color:#7d111b}
.tm-m-rate span{font-size:12px;color:#6a625b}
.tm-direct{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border:1px solid #cdbfb0;color:#2b2523;font:600 10.5px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}
.tm-direct svg,.lp-direct svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round}
.tm-direct:hover{border-color:#7d111b;color:#7d111b}
.tm-direct:focus-visible,.tm-m-rate a:focus-visible{outline:2px solid #C31B37;outline-offset:2px}
.lp-rate{display:inline-flex;align-items:center;gap:6px;margin-top:4px;font-size:12px;color:#d9cfbf!important;text-decoration:none}
.lp-direct{display:flex;gap:8px;margin-left:8px}
.lp-direct a{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border:1px solid rgba(255,255,255,.4);color:#fff!important;font:600 10px/1 Inter,Inter Fallback,Arial,sans-serif!important;letter-spacing:.12em!important;text-transform:uppercase;text-decoration:none;padding-bottom:0!important}
.lp-direct a:hover{border-color:#d8b46a}
@media(max-width:640px){.lp-agent{flex-wrap:wrap}.lp-direct{margin:4px 0 0 70px}}
@media print{.lp-direct{display:none}}
/* the Our Team pop-up is dark */
#tm-box .tm-m-rate b{color:#e6c46a}
#tm-box .tm-m-rate span{color:#cfc7bb}
#tm-box .tm-direct{color:#f4efe6;border-color:rgba(255,255,255,.35)}
#tm-box .tm-direct:hover{border-color:#e6c46a;color:#fff}
.contact .lp-who a.lp-rate{font:400 12px/1.3 Inter,Inter Fallback,Arial,sans-serif;color:#d9cfbf}

/* ---- 2.2.11 "My account" in the menus: keep the right-hand group clear of the logo ---- */
@media(min-width:901px) and (max-width:1500px){
  .snLinks{gap:clamp(14px,1.5vw,26px)}
  .snLinks a{letter-spacing:.13em}
  .snLinks.r .hvPrefs{margin-left:6px}
}
.snAcct[data-signed-in="true"],.navAcct[data-signed-in="true"]{color:#e6c46a!important}
.navAcct{display:inline-flex;align-items:center;gap:6px}
.navAcct svg{width:16px;height:16px;flex:0 0 16px;fill:none;stroke:currentColor;stroke-width:1.8}
.hxLinks .navAcct svg{display:none}
header.nav .navlinks a[href="#contact"]{display:inline-block!important}
@media(max-width:860px){
  .ab-nav .navAcct span,.lc-nav .navAcct span,header.nav .navAcct span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .ab-nav .navAcct svg,.lc-nav .navAcct svg,header.nav .navAcct svg{width:20px;height:20px}
}
header.nav .navlinks a.navAcct{display:inline-flex!important}
.hxNav>.hvPrefs{position:absolute;right:var(--hx-gx);top:100%;margin:6px 0 0}
@media(max-width:700px){.hxNav>.hvPrefs{position:static;grid-column:1/-1;justify-self:start;margin:8px 0 0}}
@media(max-width:900px){.snLinks.r{flex-wrap:wrap;row-gap:4px}.snLinks.r .hvPrefs{margin-left:0}}

/* Home: bottom hero, Get in touch + Our offices (home page type system) */
.bh{--gold:#c9a76c;position:relative;isolation:isolate;overflow:hidden;background:#0a0c0b;color:#fff;min-height:var(--sec-h,740px);display:flex;align-items:center;padding:var(--sec-py,56px) var(--sec-gx,6%);box-sizing:border-box;font-family:Inter,Inter Fallback,Arial,sans-serif;font-weight:300}
.bh-bgs{position:absolute;inset:0;z-index:-2}
.bh-bg{position:absolute;inset:0;background:center/cover no-repeat;opacity:0;transform:scale(1.07);transition:opacity 1.1s cubic-bezier(.4,0,.2,1),transform 7s cubic-bezier(.22,.61,.36,1)}
.bh-bg.on{opacity:1;transform:scale(1)}
.bh:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(6,8,7,.9) 0%,rgba(6,8,7,.68) 45%,rgba(6,8,7,.38) 100%),linear-gradient(180deg,rgba(6,8,7,.5),rgba(6,8,7,0) 30%,rgba(6,8,7,.7) 100%)}
.bh-in{width:100%;max-width:var(--sec-max,1280px);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:6%;align-items:center}
.bh .ey{color:var(--gold)}
.bh h2{font:400 var(--sec-h2,clamp(34px,3.6vw,50px)) "Cormorant Garamond",Cormorant Garamond Fallback,serif;line-height:1.02;margin:10px 0 14px}
.bh-lead{margin:0 0 16px;max-width:470px;color:rgba(255,255,255,.78);font-size:13px;line-height:1.9}
.bh-form{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;max-width:560px;padding:22px 28px 20px;background:rgba(8,10,9,.55);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.bh-f{display:flex;flex-direction:column;gap:8px;min-width:0}
.bh-f.full{grid-column:1/-1}
.bh-f label{font:300 9px/1 Inter,Inter Fallback,sans-serif;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.62)}
.bh-f input,.bh-f select,.bh-f textarea{width:100%;padding:9px 0 10px;border:0;border-bottom:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;font:300 14px/1.4 Inter,Inter Fallback,sans-serif;border-radius:0;transition:border-color .3s}
.bh-f select{-webkit-appearance:none;appearance:none;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23c9a76c' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 2px center;padding-right:20px;cursor:pointer}
.bh-f select option{color:#171816}
.bh-f textarea{resize:none;min-height:44px}
.bh-f input::placeholder,.bh-f textarea::placeholder{color:rgba(255,255,255,.32)}
.bh-f input:focus,.bh-f select:focus,.bh-f textarea:focus{outline:0;border-color:var(--gold)}
.bh-f.bad input,.bh-f.bad select{border-color:#f0a0a8}
.bh-consent{grid-column:1/-1;display:flex;gap:12px;align-items:flex-start;font-size:11px;line-height:1.7;color:rgba(255,255,255,.65);cursor:pointer}
.bh-consent input{margin-top:3px;width:16px;height:16px;accent-color:var(--gold);flex:0 0 auto}
.bh-row{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between}
.bh-send{padding:15px 30px;border:1px solid #f4f0e8;background:#f4f0e8;color:#171816;font:400 9px/1 Inter,Inter Fallback,sans-serif;letter-spacing:1.8px;text-transform:uppercase;cursor:pointer;transition:background .3s,color .3s}
.bh-send:hover,.bh-send:focus-visible{background:transparent;color:#fff}
.bh-to{font:300 11px/1.4 Inter,Inter Fallback,sans-serif;letter-spacing:.04em;color:rgba(255,255,255,.62)}
.bh-to b{font-weight:400;color:var(--gold)}
.bh-msg{grid-column:1/-1;min-height:1.3em;margin:0;font:300 12px/1.5 Inter,Inter Fallback,sans-serif;color:var(--gold)}
.bh-msg.err{color:#f0a0a8}
.bh-done{display:none;max-width:560px;padding:34px 30px;background:rgba(8,10,9,.55);border:1px solid rgba(201,167,108,.5);backdrop-filter:blur(10px)}
.bh-done h3{margin:0 0 12px;font:400 30px/1.1 "Cormorant Garamond",Cormorant Garamond Fallback,serif}
.bh-done p{margin:0 0 18px;font-size:13px;line-height:1.8;color:rgba(255,255,255,.78)}
.bh-done button{border:0;border-bottom:1px solid var(--gold);background:none;color:var(--gold);font:300 9px/1 Inter,Inter Fallback,sans-serif;letter-spacing:2px;text-transform:uppercase;padding:0 0 6px;cursor:pointer}
.bh.sent .bh-form{display:none}.bh.sent .bh-done{display:block}

.bh-off{padding-left:6%;border-left:1px solid rgba(255,255,255,.2)}
.bh-list{list-style:none;margin:16px 0 0;padding:0}
.bh-list li{border-bottom:1px solid rgba(255,255,255,.16)}
.bh-list li:first-child{border-top:1px solid rgba(255,255,255,.16)}
.bh-list a{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:9px 4px 9px 0;border:0;background:transparent;color:rgba(255,255,255,.58);text-align:left;cursor:pointer;font:400 clamp(26px,2.5vw,34px)/1 "Cormorant Garamond",Cormorant Garamond Fallback,serif;transition:color .3s,padding .35s cubic-bezier(.22,.61,.36,1)}
.bh-list a:after{content:"→";font:300 18px/1 Inter,Inter Fallback,sans-serif;color:var(--gold);opacity:0;transform:translateX(-8px);transition:opacity .3s,transform .35s}
.bh-list a:before{content:"";position:absolute;left:-6.4%;top:50%;width:0;height:2px;background:var(--gold);transition:width .4s cubic-bezier(.22,.61,.36,1)}
.bh-list a:hover,.bh-list a:focus-visible,.bh-list a[aria-current="true"]{color:#fff;padding-left:14px}
.bh-list a[aria-current="true"]:after,.bh-list a:hover:after{opacity:1;transform:none}
.bh-list a[aria-current="true"]:before{width:5.6%}
.bh-list a:focus-visible{outline:1px solid var(--gold);outline-offset:-1px}
.bh-detail{margin-top:22px;min-height:150px;animation:bhin .5s ease}
@keyframes bhin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.bh-detail h3{margin:0 0 8px;font:300 9px/1 Inter,Inter Fallback,sans-serif;letter-spacing:3px;text-transform:uppercase;color:var(--gold)}
.bh-detail p{margin:0 0 14px;max-width:420px;font-size:13px;line-height:1.85;color:rgba(255,255,255,.8)}
.bh-detail dl{margin:0 0 14px;display:grid;grid-template-columns:auto 1fr;gap:6px 18px;font-size:12px;line-height:1.5}
.bh-detail dt{font:300 9px/1.8 Inter,Inter Fallback,sans-serif;letter-spacing:2.4px;text-transform:uppercase;color:rgba(255,255,255,.5)}
.bh-detail dd{margin:0;color:rgba(255,255,255,.88)}
.bh-detail dd.soon{color:rgba(255,255,255,.5);font-style:italic}
.bh-links{display:flex;flex-wrap:wrap;gap:8px 22px}
.bh-links a{color:#fff;text-decoration:none;font:300 9px/1 Inter,Inter Fallback,sans-serif;letter-spacing:2px;text-transform:uppercase;border-bottom:1px solid var(--gold);padding-bottom:6px;transition:color .25s}
.bh-links a:hover{color:var(--gold)}
.bh-note{position:absolute;left:var(--sec-gx,6%);bottom:16px;margin:0;font:300 11px/1.5 Inter,Inter Fallback,sans-serif;letter-spacing:.04em;color:rgba(255,255,255,.42)}
.bh button:focus-visible,.bh a:focus-visible{outline:1px solid var(--gold);outline-offset:3px}
@media(max-width:980px){.bh{flex-direction:column;align-items:stretch;justify-content:flex-start;padding-top:56px;padding-bottom:48px}.bh-in{grid-template-columns:1fr;gap:44px}.bh-off{padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.2);padding-top:34px}.bh-list a:before{display:none}.bh-note{position:static;margin-top:30px}}
@media(max-width:560px){.bh-form{grid-template-columns:1fr;padding:22px 20px}}
@media(prefers-reduced-motion:reduce){.bh-bg{transition:opacity .4s;transform:none}.bh-detail{animation:none}}

.bh-f input:focus-visible,.bh-f select:focus-visible,.bh-f textarea:focus-visible{outline:2px solid #FF6F86;outline-offset:3px}
.bh-consent input:focus-visible,.bh-list a:focus-visible,.bh-links a:focus-visible,.bh-send:focus-visible{outline:2px solid #FF6F86;outline-offset:3px}
.bh-list a{text-decoration:none;box-sizing:border-box}

/* 3.2.34: office email and phone links */
.bh-detail dd a{color:inherit;text-decoration:underline;text-decoration-color:rgba(255,255,255,.4);text-underline-offset:3px}.bh-detail dd a:hover{text-decoration-color:currentColor}

/* "Get in touch" bottom section on every sub-page. The home page carries its own copy of these rules in
   headings.css and home-system.css; this file gives the identical look to pages that do not load those. */
@font-face{font-family:"Antonio";src:url("fonts/antonio.woff2") format("woff2");font-weight:100 700;font-style:normal;font-display:swap}
.bh,.bh *{box-sizing:border-box}
.bh{--hd-font:"Antonio",Antonio Fallback,"Oswald","Arial Narrow",Impact,sans-serif;--hd-grad:linear-gradient(180deg,#FF6F86 0%,#EC3A54 50%,#C31B37 100%);--hd-ey:#FF6F86;--hd-small:.36em;
  --sec-gx:max(6%,calc((100% - 1280px)/2));--sec-py:56px;--sec-max:1280px;--sec-h:800px;--sec-h2:clamp(34px,3.6vw,50px);margin:0;scroll-margin-top:0;font-size:16px;line-height:1.5;text-align:left}
.bh .ey{display:block;font:400 9px/1 Inter,Inter Fallback,Arial,sans-serif;letter-spacing:4px;text-transform:uppercase;color:var(--hd-ey);margin:0 0 14px}
.bh .hd-plate{display:inline-block;background:none;padding:0;text-align:left;margin-bottom:16px}
.bh .bh-off .hd-plate{margin-bottom:6px}
.bh h2.hd{margin:0;font-family:var(--hd-font);font-weight:500;font-size:clamp(48px,4.9vw,70px);line-height:.9;letter-spacing:.04em;text-transform:uppercase;text-align:left;font-style:normal;
  background:var(--hd-grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:none;filter:none;padding:0}
.bh h2.hd-sm{font-size:clamp(44px,4.8vw,70px)}
.bh .hd .h-a{display:block;font-size:var(--hd-small);line-height:1;letter-spacing:.08em;margin:0 0 .12em}
.bh .hd .h-b{display:block;line-height:.92;padding-bottom:.08em}
.bh h3{margin:0;background:none;-webkit-text-fill-color:initial}
.bh p{margin-top:0}
.bh a{text-decoration:none}
@media(max-width:860px){.bh h2.hd{font-size:clamp(46px,12vw,66px)}}

.bh-f input:focus-visible,.bh-f select:focus-visible,.bh-f textarea:focus-visible{outline:2px solid #FF6F86;outline-offset:3px}
.bh-consent input:focus-visible,.bh-list a:focus-visible,.bh-links a:focus-visible,.bh-send:focus-visible{outline:2px solid #FF6F86;outline-offset:3px}

