:root{--ink:#14232E;--ink2:#1f3442;--saf:#E3A02B;--brick:#B5472F;--bg:#EEF1F2;--mute:#5d6b75}
body{font-family:'Public Sans',sans-serif;color:var(--ink);background:#fff}
h1,h2,h3,h4,h5,.navbar-brand,.stats b,.pprice{font-family:'Archivo',sans-serif;font-weight:800;letter-spacing:-.01em}
.site-nav{background:var(--ink);padding:.7rem 0}.site-nav .navbar-brand,.site-nav .nav-link{color:#fff}.site-nav .nav-link{opacity:.8}.site-nav .nav-link.active,.site-nav .nav-link:hover{opacity:1;color:var(--saf)}.navbar-toggler{color:#fff;border:0;font-size:1.6rem}
.btn-saffron{background:var(--saf);color:var(--ink);font-weight:600;border:0}.btn-saffron:hover{background:#f0b13e;color:var(--ink)}
.hero{color:#fff;padding:7rem 0 6rem;background-size:cover;background-position:center;position:relative}
.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:48px 48px}
.hero .container{position:relative}.hero h1{font-size:clamp(2.2rem,5.5vw,4.2rem);line-height:1.05;max-width:14ch}.hero .lead{max-width:48ch;opacity:.85;margin:1.2rem 0 2rem}
.searchbar{display:flex;flex-wrap:wrap;gap:.5rem;background:#fff;padding:.6rem;border-radius:.6rem;max-width:760px}.searchbar select,.searchbar input{flex:1 1 150px;border:1px solid #d8dee2;border-radius:.4rem;padding:.65rem;font-size:.95rem}.searchbar.light{background:var(--bg)}
.stats{background:var(--ink2);color:#fff;padding:1.6rem 0}.stats b{display:block;font-size:2rem;color:var(--saf)}
.sec{padding:4.5rem 0}.alt{background:var(--bg)}h2{font-size:clamp(1.6rem,3vw,2.3rem)}.more{color:var(--brick);font-weight:600;text-decoration:none}
.pcard{display:block;text-decoration:none;color:inherit;background:#fff;border:1px solid #dde3e6;border-radius:.5rem;overflow:hidden;height:100%;transition:transform .2s,box-shadow .2s}.pcard:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(20,35,46,.12)}
.pimg{height:210px;background-size:cover;background-position:center;position:relative}.tag{position:absolute;top:12px;left:12px;background:var(--saf);color:var(--ink);font-size:.78rem;font-weight:600;padding:.2rem .6rem;border-radius:.3rem}.tag.sold{left:auto;right:12px;background:var(--brick);color:#fff}
.pbody{padding:1.1rem}.pprice{color:var(--brick);font-size:1.35rem}.pbody h3{font-size:1.1rem;margin:.2rem 0}.ploc{color:var(--mute);font-size:.92rem}.pspec{display:flex;gap:1rem;flex-wrap:wrap;margin-top:.8rem;padding-top:.8rem;border-top:1px dashed #cfd6da;font-size:.85rem;color:var(--mute)}
.srv{background:#fff;padding:1.6rem;border-left:4px solid var(--saf);height:100%}.srv i{font-size:1.8rem;color:var(--brick)}.srv h3{font-size:1.15rem;margin:.6rem 0 .3rem}.srv p{margin:0;color:var(--mute)}
.proj{height:320px;background-size:cover;background-position:center;border-radius:.5rem;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:1.3rem;position:relative}.proj.tall{height:400px}.proj h3{margin:0}.proj p{margin:.4rem 0 0;opacity:.85}
.quote{background:#fff;padding:1.5rem;border-radius:.5rem;margin:0;height:100%}.quote footer{color:var(--mute);font-size:.9rem}
.cta{background:var(--brick);color:#fff;padding:4rem 0}.pagehead{background:var(--ink);color:#fff;padding:3rem 0}.pagehead h1{margin:0}
.enq{background:var(--bg);padding:1.5rem;border-radius:.5rem}.site-foot{background:var(--ink);color:#c5d0d6;padding:3.5rem 0 1rem}.site-foot h4,.site-foot h5{color:#fff}.site-foot a{display:block;color:#c5d0d6;text-decoration:none;margin-bottom:.4rem}.copy{border-top:1px solid #2c4252;margin-top:2rem;padding-top:1rem;font-size:.85rem}
.wa{position:fixed;right:18px;bottom:18px;width:52px;height:52px;border-radius:50%;background:#25D366;color:#fff;font-size:1.6rem;display:grid;place-items:center;z-index:99;text-decoration:none}
:focus-visible{outline:3px solid var(--saf);outline-offset:2px}
