/* Redesign v2 (owner, 9 Nov 2026): photo cards, filters and a value sort on Available Now; listing pages with the
   photo first, the payment plan as text and a summary box; a search-first home page; a tab bar on phones.
   Uses the site's own colour variables, so light and dark themes both work. Square corners, hairlines, as the logo. */
.v2-hide{display:none!important}
/* ---- tab bar: bottom of the screen on phones, a bar under the logo on computers ---- */
.v2nav{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:var(--ground);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}
.v2nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:58px;color:var(--ink);text-decoration:none;font-family:var(--sans);font-size:11px;letter-spacing:.04em;border-top:2px solid transparent}
.v2nav a[aria-current=page]{border-top-color:var(--gold);font-weight:600}
.v2nav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5}
.v2nav .n{position:absolute;margin:-26px 0 0 22px;min-width:16px;height:16px;padding:0 4px;background:var(--gold);color:var(--ground);font-size:10px;line-height:16px;text-align:center;font-weight:600}
body.v2nav-on{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
body.v2nav-on .wa-fab{display:none!important}
body.det .v2nav{display:none}
@media (min-width:900px){
  .v2nav{position:sticky;top:0;bottom:auto;display:flex;justify-content:center;gap:4px;border-top:0;border-bottom:1px solid var(--line);padding:0;margin:0 0 -10px}
  .v2nav a{flex-direction:row;gap:8px;min-height:46px;padding:0 16px;font-size:14px;border-top:0;border-bottom:2px solid transparent}
  .v2nav a[aria-current=page]{border-bottom-color:var(--gold)}
  .v2nav svg{width:18px;height:18px}
  .v2nav .n{position:static;margin:0}
  body.v2nav-on{padding-bottom:0}
  body.v2nav-on .wa-fab{display:flex!important}
  body.det .v2nav{display:flex}
}
/* ---- fixed WhatsApp bar on a listing (phones) ---- */
.v2cta{position:fixed;left:0;right:0;bottom:0;z-index:61;display:none;align-items:center;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--ground);border-top:1px solid var(--line)}
.v2cta .pr{flex:1;min-width:0;display:flex;flex-direction:column;font-family:var(--sans)}
.v2cta .pr b{font-family:var(--serif);font-weight:600;font-size:21px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v2cta .pr>span{font-size:12px;color:var(--soft)}
.v2cta a{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50px;padding:6px 18px;background:var(--ink);color:var(--ground);text-decoration:none;font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.v2cta a small{font-size:11px;letter-spacing:.04em;text-transform:none;font-weight:400;opacity:.8}
body.det.v2cta-on .v2cta{display:flex}
body.det.v2cta-on{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
body.det.v2cta-on .wa-fab{display:none!important}
@media (min-width:900px){body.det.v2cta-on .v2cta{display:none}body.det.v2cta-on{padding-bottom:0}}

/* ---- wide pages on computers ---- */
@media (min-width:1000px){body.v2wide .wrap{max-width:1240px}}

/* ---- Available Now: toolbar, applied filters, sheet ---- */
.v2bar{position:sticky;top:0;z-index:20;background:var(--ground);display:flex;flex-direction:column;gap:10px;padding:10px 0 12px;border-bottom:1px solid var(--line)}
.v2bar .row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) auto;gap:8px}
.v2btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 14px;border:1px solid var(--ink);background:none;color:var(--ink);font-family:var(--sans);font-size:15px;cursor:pointer;text-decoration:none}
.v2btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}
.v2btn.dark{background:var(--ink);color:var(--ground)}
.v2sel{display:flex;align-items:center;gap:6px;min-height:46px;padding:0 10px;border:1px solid var(--ink);font-family:var(--sans)}
.v2sel>span{font-size:12px;color:var(--soft);white-space:nowrap}
.v2sel select{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);font:500 15px var(--sans);padding:0;appearance:auto}
.v2view{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--ink)}
.v2view button{min-width:46px;min-height:44px;border:0;background:none;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center}
.v2view button[aria-pressed=true]{background:var(--ink);color:var(--ground)}
.v2view svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}
.v2applied{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.v2applied button{min-height:34px;padding:0 10px 0 12px;display:inline-flex;align-items:center;gap:6px;border:0;background:var(--ink);color:var(--ground);font:400 14px var(--sans);cursor:pointer}
.v2applied button.clear{background:none;color:var(--ink);text-decoration:underline;padding:0 4px}
.v2count{font-size:14px;color:var(--soft)}
.v2sheet{position:fixed;inset:0;z-index:90;display:none;background:rgba(13,13,11,.45)}
.v2sheet.on{display:block}
.v2sheet .pane{position:absolute;left:0;right:0;bottom:0;max-height:88vh;overflow:auto;background:var(--ground);padding:18px 16px calc(16px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:18px;border-top:1px solid var(--gold)}
.v2sheet .pane>*{flex:none}
.v2sheet .hd{display:flex;align-items:center;justify-content:space-between}
.v2sheet .hd b{font-family:var(--serif);font-weight:600;font-size:24px;letter-spacing:.08em;text-transform:uppercase}
.v2sheet .x{width:44px;height:44px;border:0;background:none;color:var(--ink);cursor:pointer}
.v2sheet .x svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.6}
.v2f{display:flex;flex-direction:column;gap:8px;border:0;margin:0;padding:0}
.v2f legend,.v2f>.lab{padding:0;margin-bottom:8px;font-size:12px;font-weight:600;letter-spacing:.24em;text-transform:uppercase}
.v2f .ch{display:flex;flex-wrap:wrap;gap:8px}
.v2f .ch button{min-height:40px;padding:0 14px;border:1px solid var(--line);background:none;color:var(--ink);font:400 15px var(--sans);cursor:pointer}
.v2f .ch button[aria-pressed=true]{background:var(--ink);color:var(--ground);border-color:var(--ink)}
.v2f .two{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.v2f label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--soft)}
.v2f select{min-height:44px;border:1px solid var(--line);background:var(--ground);color:var(--ink);font:400 15px var(--sans);padding:0 8px}
.v2sheet .go{position:sticky;bottom:0;display:grid;grid-template-columns:auto 1fr;gap:8px;background:var(--ground);padding-top:6px}
.v2sheet .go .v2btn.dark{font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:13px}
.v2layout{display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start}
.v2side{display:none}
.v2res{flex:999 1 560px;min-width:0}
@media (min-width:1000px){
  .v2side{display:flex;flex:1 1 230px;max-width:260px;flex-direction:column;gap:22px;position:sticky;top:66px;padding-top:12px}
  .v2bar .fbtn{display:none}
  .v2bar .row{grid-template-columns:minmax(0,1fr) auto}
}
/* ---- result cards ---- */
.v2grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px;padding-top:16px}
.v2card.v2card{display:flex;flex-direction:column;padding:0;gap:0;align-items:stretch;border:1px solid var(--line);background:var(--panel);min-width:0}
.v2card.v2card .ph{position:relative;display:block;aspect-ratio:12/5;overflow:hidden;background:#0d0d0b}
.v2card.v2card .ph img{width:100%;height:100%;object-fit:cover;object-position:50% 0;display:block}
/* owner, 9 Nov: the developer's logo on a photo must show whole: wide or upright photos are fitted, not cut */
.v2card.v2card .ph img.fit,.v2proj img.fit{object-fit:contain;background:#0d0d0b}
.v2card.v2card .tag{position:absolute;left:0;bottom:0;padding:5px 9px;background:#0d0d0b;color:#d2a973;font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.v2card.v2card .tag.f{left:auto;right:0;top:0;bottom:auto}
.v2card.v2card .t{display:flex;flex-direction:column;gap:3px;padding:12px 14px 14px}
.v2card.v2card .ov{font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--soft)}
.v2card.v2card h3{margin:0;font-family:var(--sans);font-size:16px;font-weight:600;letter-spacing:0;text-align:inherit}
.v2card.v2card h3 a{color:var(--ink);text-decoration:none}
.v2card.v2card h3 a::after{content:"";position:absolute;inset:0}
.v2card.v2card{position:relative}
.v2card.v2card .pr{font-family:var(--serif);font-weight:600;font-size:25px;line-height:1.15}
.v2card.v2card .pr small{font-size:17px;font-weight:500}
.v2card.v2card .ln{font-size:14.5px}
.v2card.v2card .mu{font-size:14px;color:var(--soft)}
.v2card.v2card .t .sv,.v2card.v2card .wa{position:relative;z-index:2}
.v2card.v2card .acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;align-items:center}
.v2card.v2card .wa{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 12px;border:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:13px;letter-spacing:.06em}
.v2card.v2card .wa svg{width:16px;height:16px;fill:none;stroke:var(--gold);stroke-width:1.7}
/* compact value list */
.v2rows{display:flex;flex-direction:column;padding-top:8px}
.v2rows .hd{display:grid;grid-template-columns:52px minmax(0,1fr) 96px;gap:10px;padding:8px 0 4px;font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--soft)}
.v2r{display:grid;grid-template-columns:52px minmax(0,1fr) 96px;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}
.v2r img{width:52px;height:52px;object-fit:cover;display:block}
.v2r .a{display:flex;flex-direction:column;gap:4px;min-width:0}
.v2r .a b{font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v2r .bar{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--soft);white-space:nowrap}
.v2r .bar i{flex:none;height:6px;background:var(--ink);display:block}
.v2r .b{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:13px;color:var(--soft);text-align:end}
.v2r .b b{font-size:15px;color:var(--ink)}
.v2r .k{font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;background:var(--panel);color:var(--ink);padding:1px 6px;flex:none}
@media (min-width:700px){.v2rows .hd,.v2r{grid-template-columns:64px minmax(0,1fr) 150px 120px}.v2r img{width:64px;height:48px}.v2r .p{display:block!important;text-align:end;font-size:15px}}
.v2r .p{display:none}
.v2empty{padding:30px 0;text-align:center;color:var(--soft)}

/* ---- listing page ---- */
.v2d{display:flex;flex-direction:column;gap:14px}
.v2d .gal{position:relative}
.v2d .gal .sl{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;scrollbar-width:none}
.v2d .gal .sl::-webkit-scrollbar{display:none}
.v2d .gal figure{flex:none;width:100%;margin:0;scroll-snap-align:start;aspect-ratio:4/3;background:#0d0d0b;display:flex;align-items:center;justify-content:center;position:relative}
.v2d .gal figure img{width:100%;height:100%;object-fit:contain;display:block}
.v2d .gal figure.ph img{object-fit:contain}
.v2d .gal figcaption{position:absolute;left:0;bottom:0;padding:4px 9px;background:#0d0d0b;color:#efebe2;font-size:12px}
.v2d .gal .cnt{position:absolute;right:8px;bottom:8px;padding:4px 8px;background:#0d0d0b;color:#efebe2;font-size:12px;z-index:2}
.v2d .gal .nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;background:rgba(13,13,11,.7);color:#efebe2;cursor:pointer;z-index:2;display:flex;align-items:center;justify-content:center}
.v2d .gal .nav svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
.v2d .gal .nav.prev{left:0}.v2d .gal .nav.next{right:0}
.v2d .gal .nav:disabled{opacity:0;pointer-events:none}
.v2d .thumbs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}
.v2d .thumbs button{flex:none;width:64px;height:48px;padding:0;border:1px solid var(--line);background:#0d0d0b;cursor:pointer}
.v2d .thumbs button[aria-current=true]{outline:2px solid var(--ink);outline-offset:-2px}
.v2d .thumbs img{width:100%;height:100%;object-fit:cover;display:block}
.v2d .ov{font-size:12px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--soft);margin:6px 0 0}
.v2d h1{margin:0;font-family:var(--serif);font-weight:600;font-size:clamp(30px,6vw,40px);line-height:1.1;letter-spacing:.02em;text-align:start;text-transform:none}
.v2d .unit{margin:0;font-size:16px;color:var(--soft)}
.v2d .v2price{margin:2px 0 0;color:var(--ink);font-family:var(--serif);font-weight:600;font-size:32px;line-height:1.15}
.v2d .v2price small{font-size:22px;font-weight:500}
.v2sum{background:#0d0d0b;color:#efebe2;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
.v2sum div{display:flex;flex-direction:column;gap:2px;min-width:0}
.v2sum div>span{font-size:11.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#d2a973}
.v2sum b{font-size:21px;font-weight:600;line-height:1.2}
.v2sum em{font-style:normal;font-size:13px;color:#cfcac0}
.v2d .btn.cta{align-self:stretch}
.v2facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border-top:1px solid var(--line)}
.v2facts div{padding:11px 0;border-bottom:1px solid var(--line);min-width:0}
.v2facts div:nth-child(even){padding-inline-start:12px}
.v2facts dt{font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--soft)}
.v2facts dd{margin:2px 0 0;font-size:16px}
.v2tabs{display:flex;border-bottom:1px solid var(--line);margin-top:8px}
.v2tabs button{flex:1;min-height:48px;border:0;border-bottom:2px solid transparent;background:none;color:var(--ink);font:400 15px var(--sans);cursor:pointer}
.v2tabs button[aria-selected=true]{border-bottom-color:var(--ink);font-weight:600}
.v2pane[hidden]{display:none}
.v2plan{width:100%;border-collapse:collapse;font-size:15px}
.v2plan td{padding:13px 0;border-bottom:1px solid var(--line);vertical-align:top}
.v2plan td+td{padding-inline-start:10px;text-align:end;white-space:nowrap}
.v2plan td.s{width:64px}
.v2plan tr.tot td{font-weight:600;border-bottom:0}
.v2plan td small{display:block;color:var(--soft);font-size:13px}
.v2notes{margin:8px 0 0;padding:0;list-style:none;font-size:13px;color:var(--soft);display:flex;flex-direction:column;gap:3px}
.v2fp{display:flex;flex-direction:column;gap:12px;padding-top:12px}
.v2fp img{width:100%;height:auto;display:block;border:1px solid var(--line)}
.v2more{display:flex;flex-direction:column;border-top:1px solid var(--line);padding-top:14px}
.v2more h2{font-size:12px!important;font-weight:600;letter-spacing:.24em;text-transform:uppercase;text-align:start!important;margin:0 0 6px!important;font-family:var(--sans)!important}
.v2more a{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:15px}
.v2more a>span{color:var(--soft);white-space:nowrap}
.v2links{display:flex;flex-direction:column;gap:10px}
/* two columns on computers: pictures on the left (they stay in view), everything else on the right */
.v2d>.col1,.v2d>.col2{display:contents}
@media (min-width:1000px){
  body.det.v2wide .wrap{max-width:1180px}
  body.v2wide .dv,body.v2wide #dv{max-width:none}
  .v2d.two{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);column-gap:40px;align-items:start}
  .v2d.two>.col1,.v2d.two>.col2{display:flex;flex-direction:column;gap:14px;min-width:0}
  .v2d.two>.col1{position:sticky;top:64px}
}

/* ---- home ---- */
.v2home{display:flex;flex-direction:column;gap:30px}
.v2hero{display:flex;flex-direction:column;gap:14px}
.v2hero .ov{font-size:12px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--soft);margin:0}
.v2hero .h{margin:0;font-family:var(--serif);font-weight:600;font-size:clamp(30px,6.5vw,46px);line-height:1.08;letter-spacing:.02em}
.v2search{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--ink);background:var(--panel)}
.v2search label{display:flex;flex-direction:column;gap:2px;padding:10px 14px;border-bottom:1px solid var(--line);font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--soft);min-width:0}
.v2search label.w{grid-column:1/-1}
.v2search label+label:not(.w){border-inline-start:1px solid var(--line)}
.v2search select{border:0;background:transparent;color:var(--ink);font:400 16px var(--sans);letter-spacing:0;text-transform:none;padding:3px 0;min-width:0}
.v2search button{grid-column:1/-1;min-height:54px;border:0;background:var(--ink);color:var(--ground);font:600 14px var(--sans);letter-spacing:.22em;text-transform:uppercase;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px}
.v2search button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}
@media (min-width:900px){.v2search{grid-template-columns:2fr 1fr 1fr 1.2fr}.v2search label{border-bottom:0}.v2search label.w{grid-column:auto}.v2search button{grid-column:auto}}
.v2quick{display:flex;flex-wrap:wrap;gap:8px}
.v2quick a{min-height:38px;padding:0 14px;display:inline-flex;align-items:center;border:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:14px}
.v2sec{display:flex;flex-direction:column;gap:12px}
.v2sec .sh{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.v2sec h2{margin:0;font-family:var(--serif)!important;font-weight:600;font-size:26px!important;letter-spacing:.12em;text-transform:uppercase;text-align:start!important}
.v2sec .sh a{font-size:14px;color:var(--ink)}
.v2feat{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}
.v2feat .v2card.v2card .pr{font-size:23px}
.v2proj{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media (min-width:700px){.v2proj{grid-template-columns:repeat(4,minmax(0,1fr))}}
.v2proj a{display:flex;flex-direction:column;border:1px solid var(--line);background:var(--panel);color:var(--ink);text-decoration:none;min-width:0}
.v2proj img{width:100%;height:auto;aspect-ratio:12/5;object-fit:cover;object-position:50% 0;display:block;background:#0d0d0b}
.v2proj b{display:block;padding:8px 10px 0;font-size:15px;font-weight:600;line-height:1.25}
.v2proj a>span{display:block;padding:2px 10px 10px;font-size:13px;color:var(--soft)}
.v2np{display:grid;grid-template-columns:1fr;background:#0d0d0b;color:#efebe2;text-decoration:none}
.v2np img{width:100%;height:auto;aspect-ratio:16/7;object-fit:cover;display:block}
.v2np div{padding:14px 16px 16px;display:flex;flex-direction:column;gap:4px}
.v2np div>span{font-size:12px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:#d2a973}
.v2np b{font-family:var(--serif);font-weight:600;font-size:24px;line-height:1.2}
.v2np em{font-style:normal;font-size:14px;color:#cfcac0}
@media (min-width:800px){.v2np{grid-template-columns:1.2fr 1fr}.v2np img{aspect-ratio:auto;height:100%;min-height:200px}.v2np div{justify-content:center;padding:24px}}
.v2trust{border:1px solid var(--line);padding:20px 18px;display:flex;flex-direction:column;gap:12px}
.v2trust h2{margin:0;text-align:center;font-family:var(--serif)!important;font-size:24px!important;letter-spacing:.12em;text-transform:uppercase}
.v2trust .rl{width:48px;height:1.5px;background:var(--gold);align-self:center}
.v2trust ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;font-size:15.5px;line-height:1.45}
.v2trust li{display:flex;gap:10px}
.v2trust li svg{flex:none;width:18px;height:18px;margin-top:3px;fill:none;stroke:var(--gold);stroke-width:1.7}
.v2trust a{align-self:center;color:var(--ink);font-size:15px}
.v2svc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
@media (min-width:800px){.v2svc{grid-template-columns:repeat(4,minmax(0,1fr))}}
.v2svc a{display:flex;flex-direction:column;justify-content:center;min-height:56px;padding:10px 0;border-top:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:15px;font-weight:500}
.v2svc a>span{font-size:13px;font-weight:400;color:var(--soft)}
.v2apps{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;font-size:14px;color:var(--soft)}
.v2apps img{height:40px;width:auto;display:block}
[dir=rtl] .v2r .b{align-items:flex-start}
[dir=rtl] .v2d .gal .nav.prev{left:auto;right:0}[dir=rtl] .v2d .gal .nav.next{right:auto;left:0}
[dir=rtl] .v2d .gal .nav svg{transform:scaleX(-1)}
[dir=rtl] .v2card.v2card .tag{left:auto;right:0}[dir=rtl] .v2card.v2card .tag.f{right:auto;left:0}
.v2 .l,.v2d .l,.v2card.v2card .l{direction:ltr;unicode-bidi:isolate}
/* the page's own filters are replaced by the new bar */
body.v2on #available > .tools, body.v2on #v-list > .tools{display:none!important}
.v2d .btn.cta{display:flex;align-items:center;justify-content:center;min-height:52px;padding:10px 16px;background:var(--ink);color:var(--ground);border:0;text-decoration:none;font:600 13px var(--sans);letter-spacing:.22em;text-transform:uppercase;text-align:center}
.v2links a{color:var(--ink);text-underline-offset:3px}
.v2links small a{color:var(--soft)}
/* dark mode: the summary box keeps an edge against the dark page */
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .v2sum{border:1px solid var(--line)}}
:root[data-theme="dark"] .v2sum{border:1px solid var(--line)}
/* home: the app band (owner, 9 Nov 2026), hidden inside the apps by app-mode (.app-one) */
.v2appB{display:grid;grid-template-columns:1fr;gap:16px;background:#0d0d0b;color:#efebe2;padding:26px 22px}
.v2appB .o{margin:0;font:600 11px var(--sans);letter-spacing:.24em;text-transform:uppercase;color:#d2a973}
.v2appB h2{text-align:start;font:500 30px/1.15 var(--serif);margin:6px 0 8px;color:#efebe2;letter-spacing:0;text-transform:none}
.v2appB p{margin:0;font-size:15px;line-height:1.5;color:rgba(239,235,226,.75)}
.v2appB .o+h2+p{margin-bottom:0}
.v2appB ul{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px;color:#efebe2}
.v2appB li::before{content:"\2713";color:#d2a973;margin-inline-end:7px}
.v2appB .b{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.v2appB .b img{height:44px;width:auto;display:block}
@media (min-width:900px){.v2appB{grid-template-columns:1.4fr 1fr;align-items:center;padding:34px 38px}.v2appB .b{justify-content:flex-end}}
.v2hero .s{margin:-4px 0 4px;font-size:16px;line-height:1.5;color:var(--soft)}
/* Phones: a tighter home page (owner, 10 Nov 2026: "LOTS of blank space on the main page - most of this can be compacted").
   Header in one row (logo left, language button right), smaller hero, the three search fields in one row, shortcuts in one
   scrolling row, smaller gaps. Selects stay at 16px so iPhones do not zoom in on them. */
@media (max-width:640px){
  html body header:has(>.lang,>.lang-ur){padding:8px 16px 4px!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;text-align:start}
  html body header:has(>.lang,>.lang-ur)>a:has(>img.lockup){width:auto!important;justify-content:flex-start}
  html body header .lockup{width:min(230px,60vw)!important;margin:0!important}
  html body header>.lang-ur,html body header>.lang{position:static!important;order:2;font-size:16px;padding:3px 12px 9px;box-shadow:none;flex:none}
  .v2home{gap:18px}
  .v2hero{gap:6px}
  .v2hero .ov{font-size:10.5px;letter-spacing:.24em}
  .v2hero .h{font-size:27px;line-height:1.1}
  .v2hero .s{margin:0 0 4px;font-size:14.5px;line-height:1.4}
  .v2search{grid-template-columns:1.25fr 1fr 1fr}
  .v2search label{padding:6px 10px 4px;font-size:9.5px;letter-spacing:.12em;border-bottom:0}
  .v2search label.w{grid-column:auto}
  .v2search label+label{border-inline-start:1px solid var(--line)}
  .v2search select{padding:1px 0;text-overflow:ellipsis}
  .v2search button{min-height:46px;border-top:1px solid var(--ink)}
  .v2quick{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:-16px;padding-inline:16px}
  .v2quick::-webkit-scrollbar{display:none}
  .v2quick a{flex:none;min-height:34px;padding:0 12px;white-space:nowrap;font-size:13.5px}
  .v2sec{gap:10px}
  .v2sec h2{font-size:20px!important;letter-spacing:.1em}
  .v2appB{gap:12px;padding:20px 18px}
  .v2appB h2{font-size:26px;margin:4px 0 6px}
  .v2appB p{font-size:14px}
}
/* Phones, home page only (owner, 10 Nov 2026): the language button sits lower, beside "Pakistan · UAE · Beyond"; headline and
   subline on one line each; the four shortcuts in a 2 x 2 grid so none is cut off at the edge. */
@media (max-width:640px){
  html body header:has(~main.home){padding-bottom:0!important}
  html body header:has(~main.home)>.lang-ur,html body header:has(~main.home)>.lang{position:absolute!important;z-index:6}
  html body header:has(~main.home)>.lang-ur{top:calc(100% + 19px)!important;right:16px!important;left:auto!important;font-size:16px;padding:3px 12px 9px}
  html body header:has(~main.home)>.lang{top:calc(100% + 28px)!important;left:16px!important;right:auto!important;padding:7px 12px;font-size:12px}
  main.home .v2hero .ov{min-height:32px;display:flex;align-items:center;padding-inline-end:90px}
  main.home .v2hero .h{white-space:nowrap;font-size:min(27px,5.3vw)}
  main.home .v2hero .s{white-space:nowrap;font-size:min(16px,3.7vw)}
  main.home .v2search label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  main.home .v2quick{display:grid;grid-template-columns:1fr 1fr;gap:6px;overflow:visible;margin-inline:0;padding-inline:0}
  main.home .v2quick a{justify-content:center;min-height:34px;padding:0 6px;font-size:13px;text-align:center}
}
/* Home, owner 10 Nov 2026 (2): logo centred and larger; three shortcuts in one row; Browse by area keeps its 2 x 2 tiles,
   the first being H&S Residence, marked Featured. */
.v2proj4 .nw{white-space:nowrap}
.v2proj4 a i.ov{align-self:flex-start;position:relative;margin:-22px 6px 4px;padding:4px 7px 3px;background:#0d0d0b;border:1px solid #d2a973;font:600 9.5px/1 var(--sans);font-style:normal;letter-spacing:.18em;text-transform:uppercase;color:#d2a973}
@media (max-width:640px){
  html body header:has(~main.home){justify-content:center!important;padding-top:10px!important}
  html body header:has(~main.home)>a:has(>img.lockup){justify-content:center!important}
  html body header:has(~main.home) .lockup{width:min(310px,82vw)!important}
  main.home .v2quick{grid-template-columns:repeat(3,minmax(0,1fr))}
  main.home .v2quick a{min-height:40px;line-height:1.2;padding:4px 6px;font-size:12.5px;white-space:normal}
  .v2proj4 a>span{font-size:12px}
  .v2proj4 a:last-child:nth-child(odd){grid-column:1/-1}
}
