.detail .top{position:relative;background:#08080a;border-bottom:1px solid var(--line)}
.pcard{display:block}
.phero{display:grid;gap:18px;padding:18px var(--gut) 8px}
.pgal .pmain{width:100%;height:240px;object-fit:cover;border-radius:12px;border:1px solid var(--line)}
.pthumbs{display:flex;gap:8px;margin-top:8px;overflow-x:auto;scrollbar-width:none}
.pthumbs img{flex:none;width:76px;height:54px;object-fit:cover;border-radius:6px;border:2px solid transparent;opacity:.65;cursor:pointer}
.pthumbs img.on{border-color:var(--gold);opacity:1}
.tag.static{position:static;display:inline-block}
.pinfo h1{font-weight:400;font-size:28px;line-height:1.15;margin:10px 0 6px}
.ploc{color:var(--muted);font-size:13px}
.pprice{font-size:26px;font-weight:600;color:var(--gold2);margin:12px 0}
.meta.big{font-size:12px;margin-bottom:18px;gap:14px}

.psec{padding:28px var(--gut) 6px;border-top:1px solid var(--line);margin-top:22px}
.psec h2{font-weight:400;font-size:28px;margin:6px 0 16px}
.lead{color:#d5d0c5;font-size:14px;line-height:1.7;margin-bottom:14px}
.ovgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ovgrid div{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px}
.ovgrid span{display:block;font-size:11px;color:var(--muted);margin-bottom:4px}
.ovgrid b{font-weight:600;font-size:14px}
.ticks{list-style:none;display:grid;gap:10px}
.ticks li{padding-left:26px;position:relative;font-size:14px}
.ticks li:before{content:"✓";position:absolute;left:0;color:var(--gold)}
.amgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.amgrid div{display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px;font-size:13px}
.fpwrap{display:grid;gap:14px}
.fpimg{width:100%;border-radius:10px;border:1px solid var(--line);background:#fff}
.fpbox{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:18px;display:grid;gap:8px;justify-items:start}
.fpbox span{font-size:11px;color:var(--muted)}
.fpbox b{font-size:22px;color:var(--gold2)}
.gscroll{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:10px}
.gscroll img{flex:none;width:80%;max-width:420px;height:240px;object-fit:cover;border-radius:10px;scroll-snap-align:start;border:1px solid var(--line)}
.locgrid{display:grid;gap:18px}
.lmarks{list-style:none}
.lmarks li{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid var(--line);font-size:13px}
.lmarks b{color:var(--gold2);font-weight:500;white-space:nowrap}
.map{width:100%;height:300px;border:1px solid var(--line);border-radius:10px;filter:grayscale(.4) invert(.9) hue-rotate(180deg)}
.enq{display:grid;gap:12px;max-width:640px}
.enq input,.enq textarea{width:100%;background:#121213;border:1px solid var(--line);color:var(--text);border-radius:8px;padding:13px;font-family:inherit;font-size:14px}
.enq textarea{min-height:100px}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:10px;margin-bottom:10px;padding:14px 16px}
.faq summary{cursor:pointer;font-weight:500;font-size:14px;list-style:none;display:flex;justify-content:space-between;gap:10px}
.faq summary:after{content:"+";color:var(--gold);font-size:18px;line-height:1}
.faq details[open] summary:after{content:"–"}
.faq p{color:#cfc9bc;font-size:13px;margin-top:10px;line-height:1.7}

@media(min-width:1000px){
  .detail .top{padding-top:20px;padding-bottom:20px}
  .phero{grid-template-columns:1.4fr 1fr;gap:40px;padding-top:34px;align-items:start}
  .pgal .pmain{height:460px}
  .pthumbs img{width:110px;height:76px}
  .pinfo{padding-top:8px}
  .pinfo h1{font-size:42px}
  .pprice{font-size:34px}
  .psec{margin-top:34px;padding-top:40px}
  .psec h2{font-size:36px}
  .ovgrid{grid-template-columns:repeat(4,1fr)}
  .amgrid{grid-template-columns:repeat(4,1fr)}
  .fpwrap{grid-template-columns:1.6fr 1fr;align-items:start}
  .gscroll img{width:360px;height:260px}
  .locgrid{grid-template-columns:1fr 1.2fr}
  .map{height:380px}
  .enq{grid-template-columns:1fr 1fr}
  .enq textarea{grid-column:1/-1}
  .lead{max-width:900px}
}

/* breadcrumb, grid gallery, title card */
.crumbs{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:18px var(--gut) 14px;font-size:13px;color:var(--muted)}
.backbtn{border:1px solid var(--line);background:var(--card);color:var(--text);border-radius:20px;padding:7px 16px;font-weight:500}
.crumbs nav b{color:var(--text);font-weight:600}
.crumbs nav a:hover{color:var(--gold)}
.gridgal{display:grid;gap:10px;padding:0 var(--gut);grid-template-columns:1fr 1fr;grid-template-areas:"a a" "b c"}
.gridgal a{position:relative;display:block;overflow:hidden;border-radius:14px;border:1px solid var(--line);cursor:pointer}
.gridgal img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.gridgal a:hover img{transform:scale(1.04)}
.g1{grid-area:a;height:230px}.g2{grid-area:b;height:120px}.g3{grid-area:c;height:120px}
.gridgal.few{grid-template-areas:"a a"}
.more{position:absolute;inset:0;background:rgba(0,0,0,.55);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:600;font-size:15px}
.more i{font-style:normal;font-size:28px;line-height:1;color:var(--gold2)}
.titlecard{margin:18px var(--gut) 0;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px}
.tc-top{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;align-items:center}
.titlecard h1{font-size:22px;font-weight:600;margin:8px 0 6px;line-height:1.25}
.titlecard .ploc{color:var(--muted)}
.tc-btns{display:flex;gap:10px;flex-wrap:wrap}
.tc-btns .btn{padding:13px 20px;font-size:14px}
.btn.ghost{background:none;border:1px solid var(--gold);color:var(--gold2)}
.chips{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:18px;padding-top:16px;border-top:1px dashed var(--line)}
.chips .pprice{margin:0 6px 0 0;font-size:22px}
.chip{background:#1a150c;border:1px solid #3d3220;color:var(--text);border-radius:20px;padding:8px 14px;font-size:12px;font-weight:500}
.lightbox{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center}
.lightbox.open{display:flex}
.lightbox img{max-width:88vw;max-height:84vh;border-radius:8px}
.lbx{position:absolute;top:16px;right:22px;background:none;border:0;color:#fff;font-size:34px;cursor:pointer}
.lbn{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.12);border:0;color:#fff;width:44px;height:44px;border-radius:50%;font-size:26px;cursor:pointer}
.lbn.prev{left:14px}.lbn.next{right:14px}
.lbc{position:absolute;bottom:18px;color:#ccc;font-size:13px}
@media(min-width:1000px){
  .crumbs{padding-top:26px}
  .gridgal{grid-template-columns:2fr 1fr;grid-template-rows:250px 250px;grid-template-areas:"a b" "a c";gap:14px}
  .g1,.g2,.g3{height:auto}
  .gridgal.few{grid-template-columns:1fr;grid-template-areas:"a";grid-template-rows:420px}
  .titlecard{padding:28px 32px;margin-top:26px}
  .titlecard h1{font-size:34px}
}

/* results page */
.results{overflow:visible;display:grid;grid-template-columns:1fr;gap:16px}
.results .pcard{width:auto}
.noresult{padding:40px var(--gut);text-align:center;color:var(--muted);display:grid;gap:14px;justify-items:center}
.detail .search{margin-top:6px}
@media(min-width:640px){.results{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.results{grid-template-columns:repeat(4,1fr);gap:20px}.detail .search{margin:6px var(--gut) 0;max-width:780px}}
