/* Properties directory — scoped to the catalogue; shared header/footer preserved. */
.catalogue-page{max-width:1440px;margin:0 auto;padding:38px 6% 70px}
.catalogue-page [hidden]{display:none!important}
.catalogue-heading{margin-bottom:28px}
.catalogue-breadcrumb{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:16px;color:#77756d;font-size:12px;letter-spacing:.07em;text-transform:uppercase}
.catalogue-breadcrumb a:hover{color:#806334;text-decoration:underline}
.catalogue-heading h1{font:clamp(34px,3.5vw,52px)/1.14 var(--serif);font-weight:400;letter-spacing:-.025em;margin:0}
.catalogue-shortcuts{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:28px;align-items:start;margin-bottom:30px}
.shortcut-group h2{font:600 12px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.15em;color:#856636;margin:0 0 10px}
.shortcut-tiles{display:flex;gap:12px}
.shortcut-areas{border-left:1px solid #d9d7d0;padding-left:28px}
.catalogue-tile{flex:1;min-width:0;position:relative;display:block;padding:0;overflow:hidden;border:2px solid transparent;background:#191919;text-align:left;color:white;cursor:pointer;height:126px;transition:border-color .15s}
.catalogue-tile img{display:block;width:100%;height:100%;object-fit:cover}
.catalogue-tile::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#000c,transparent 85%);pointer-events:none}
.catalogue-tile>span:first-of-type{position:absolute;bottom:10px;left:12px;right:10px;z-index:1;font:16px/1.2 var(--serif);text-shadow:0 1px 3px #000}
.catalogue-tile:hover,.catalogue-tile[aria-pressed=true]{border-color:#9a793e}
.catalogue-tile[aria-pressed=true]{box-shadow:0 0 0 1px #9a793e}
.catalogue-tile .tile-check{display:none;position:absolute;right:8px;top:8px;z-index:1;width:22px;height:22px;align-items:center;justify-content:center;background:#9a793e;color:white;font-size:14px}
.catalogue-tile[aria-pressed=true] .tile-check{display:flex}
.catalogue-tile:disabled{cursor:default}
.catalogue-page button:focus-visible,.catalogue-page select:focus-visible{outline:2px solid #806334;outline-offset:3px}
.filter-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) .8fr;gap:8px;align-items:end}
.filter-fields label>span{display:block;margin:0 0 6px;font-size:13px;color:#5e5c55}
.filter-fields select{width:100%;min-width:0;height:48px;border:1px solid #d7d4cd;background:#fff;padding:0 12px;color:#25241f;font:14px var(--sans);border-radius:0}
.catalogue-search{height:48px;border:1px solid #080808;background:#080808;color:white;padding:0 20px;cursor:pointer;font-size:14px}
.catalogue-search:hover{background:#3a3327}
.filter-summary{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-top:12px;min-height:26px}
.filter-summary p{font-size:13px;color:#736e63;margin:0}
.clear-filters{font-size:13px;white-space:nowrap;border:0;background:none;padding:4px 0;color:#625c50;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.catalogue-results-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:26px 0 20px}
.catalogue-results-bar>p{font:22px/1.3 var(--serif);margin:0}
.catalogue-sort{display:flex;align-items:center;gap:10px;font-size:14px}
.catalogue-sort select{font:14px var(--sans);max-width:180px;min-height:40px;border:0;background:transparent;color:#2e2c27;padding:5px;cursor:pointer}
.property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}
.property-card{min-width:0;border:1px solid #dcd9d2;background:#fff;padding:12px}
.property-photo-link{display:block;aspect-ratio:9/16;overflow:hidden;background:#eeeae3}
.property-photo-link img{display:block;width:100%;height:100%;object-fit:cover}
.property-card-body{padding:14px 2px 0}
.property-sale-label{font-size:12px;line-height:1.5;font-weight:600;letter-spacing:.16em;color:#92713c;margin:0 0 7px}
.property-card h2{font:25px/1.18 var(--serif);letter-spacing:0;margin:0 0 7px}
.property-card h2 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.property-building,.property-location{color:#77746d;font-size:14px;line-height:1.5;margin:0 0 4px}
.property-price{font:26px/1.25 var(--serif);margin:15px 0 7px}
.property-specs{font-size:14px;color:#6c6a63;margin:0 0 18px}
.property-link{border-top:1px solid #e3e0d9;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0 1px;font-size:14px}
.property-link span{font-size:21px}
.property-link:hover{color:#806334}
.catalogue-empty{border:1px solid #dcd9d2;background:#fff;padding:50px 30px;text-align:center;margin-top:4px}
.catalogue-empty .eyebrow{color:#8b6b36;margin-bottom:16px}
.catalogue-empty h2{font-size:36px;margin-bottom:16px}
.catalogue-empty p:not(.eyebrow){max-width:500px;margin:0 auto 25px;color:#69665e}
.catalogue-empty .button{cursor:pointer}
.catalogue-noscript{padding:15px;border:1px solid #dcd9d2;font-size:14px}
@media(min-width:1600px){.catalogue-tile{height:145px}}
@media(max-width:1050px){.catalogue-page{padding-inline:5%}.catalogue-shortcuts{gap:16px}.shortcut-areas{padding-left:16px}.shortcut-tiles{gap:8px}.catalogue-tile>span:first-of-type{font-size:14px;left:8px;bottom:8px}.property-grid{gap:16px}.property-card h2{font-size:22px}}
@media(max-width:800px){.catalogue-shortcuts{display:block}.shortcut-group{margin-bottom:20px}.shortcut-areas{border-left:0;padding-left:0}.shortcut-tiles{overflow-x:auto;padding:2px;scroll-snap-type:x proximity;scroll-padding-inline:2px}.catalogue-tile{height:115px;min-width:145px;scroll-snap-align:start}.catalogue-tile>span:first-of-type{font-size:16px}.filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.catalogue-search{grid-column:1/-1}.property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalogue-results-bar{margin-top:20px}}
@media(max-width:520px){.catalogue-page{padding:28px 6% 45px}.catalogue-heading h1{font-size:35px}.catalogue-heading{margin-bottom:24px}.catalogue-breadcrumb{font-size:12px;gap:8px}.catalogue-shortcuts{margin-bottom:24px}.shortcut-areas .catalogue-tile{flex-basis:145px;flex-shrink:0}.property-grid{grid-template-columns:1fr;gap:22px}.property-card{padding:12px}.property-card h2{font-size:27px}.catalogue-sort{gap:5px;font-size:13px}.catalogue-sort select{max-width:145px;font-size:13px}.catalogue-results-bar>p{font-size:20px}.catalogue-empty{padding:35px 20px}.catalogue-empty h2{font-size:30px}.filter-summary{align-items:start}.filter-summary p{font-size:12px}.filter-fields label>span{font-size:13px}}
@media(prefers-reduced-motion:reduce){.catalogue-tile{transition:none}}

.catalogue-photo-credits{font-size:12px;color:#6d695f;margin-top:30px}
.catalogue-photo-credits summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.catalogue-photo-credits p{margin:12px 0 8px}.catalogue-photo-credits ul{padding-left:18px}.catalogue-photo-credits a{text-decoration:underline}

/* V1.014: a single, horizontally scrollable row keeps area discovery compact. */
.shortcut-group{min-width:0}
.shortcut-areas .shortcut-tiles{overflow-x:scroll;overflow-y:hidden;flex-wrap:nowrap;gap:12px;padding:4px 4px 12px;scroll-snap-type:x proximity;scroll-padding-inline:4px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#9a793e #e4e0d8}
.shortcut-areas .catalogue-tile{flex:0 0 calc((100% - 24px)/2.7);min-width:180px;scroll-snap-align:start}
.shortcut-areas .shortcut-tiles::-webkit-scrollbar{height:7px}
.shortcut-areas .shortcut-tiles::-webkit-scrollbar-track{background:#e4e0d8;border-radius:8px}
.shortcut-areas .shortcut-tiles::-webkit-scrollbar-thumb{background:#9a793e;border-radius:8px}
.shortcut-areas .shortcut-tiles:focus-visible{outline:2px solid #806334;outline-offset:3px}
@media(max-width:800px){.shortcut-areas .catalogue-tile{flex-basis:190px;min-width:190px}}
@media(max-width:520px){.shortcut-areas .catalogue-tile{flex-basis:160px;min-width:160px}}
