/* Rich Property compact off-plan layout · 19 Oct 2026
   Two screens: (1) full-bleed hero with key facts, (2) gallery + plan + location + developer + enquiry form. */
@font-face{font-family:RPCSerif;src:url('/assets/fonts/playfair-display-latin.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:RPCSerif;src:url('/assets/fonts/playfair-display-italic-latin.woff2') format('woff2');font-weight:400 700;font-style:italic;font-display:swap}

body.rpc{--ink:#1c2f28;--forest:#1f3d33;--forest-deep:#142a22;--cream:#f6f2e9;--paper:#fffdf8;--gold:#c9b27a;--gold-deep:#8d7740;--muted:#5d6a63;--line:rgba(31,61,51,.17);--gut:clamp(20px,5vw,72px);--serif:RPCSerif,Georgia,'Times New Roman',serif;
  margin:0;background:var(--cream);color:var(--ink);font:15px/1.6 Arial,Helvetica,sans-serif;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}
body.rpc *,body.rpc *::before,body.rpc *::after{box-sizing:border-box}
:where(body.rpc) img{display:block;max-width:100%;height:auto}
:where(body.rpc a){color:inherit;text-decoration:none}
body.rpc button,body.rpc input,body.rpc select,body.rpc textarea{font:inherit}
.rpc-skip{position:absolute;left:-9999px;top:0}.rpc-skip:focus{left:12px;top:12px;z-index:100;background:#fff;color:#000;padding:8px 12px}

/* top bar: small logo, quiet nav */
.rpc-top{position:absolute;inset:0 0 auto 0;z-index:20;display:flex;align-items:center;gap:22px;height:64px;padding:0 var(--gut);color:#fff}
.rpc-brand{display:flex;align-items:center;gap:10px;font:700 11px/1 Arial,Helvetica,sans-serif;letter-spacing:.22em;white-space:nowrap}
.rpc-brand img{width:28px;height:28px;border-radius:50%}
.rpc-top nav{margin-left:auto;display:flex;gap:22px;font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.rpc-top nav a{opacity:.85}.rpc-top nav a:hover{opacity:1}
.rpc-top-actions{display:flex;align-items:center;gap:16px}
.rpc-tel{font-size:13px;letter-spacing:.04em;white-space:nowrap}
.rpc-pill{border:1px solid rgba(255,255,255,.7);padding:9px 16px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;transition:background .2s,color .2s}
.rpc-pill:hover{background:#fff;color:var(--forest)}

/* screen 1: hero */
.rpc-hero{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:min(86vh,780px);min-height:min(86svh,780px);color:#fff;background:var(--forest-deep);isolation:isolate;overflow:hidden}
.rpc-hero-img{position:absolute;inset:0;z-index:-2}
body.rpc .rpc-hero-img img{width:100%;height:100%;object-fit:cover;object-position:var(--pos,60% 50%)}
.rpc-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,22,17,.86) 0%,rgba(10,22,17,.55) 36%,rgba(10,22,17,.06) 72%),linear-gradient(0deg,rgba(10,22,17,.7) 0%,rgba(10,22,17,0) 34%),linear-gradient(180deg,rgba(10,22,17,.5) 0%,rgba(10,22,17,0) 18%)}
.rpc-hero-in{padding:110px var(--gut) 34px;max-width:min(820px,100%)}
.rpc-eyebrow{text-shadow:0 1px 8px rgba(8,18,14,.55);margin:0 0 14px;font-size:11px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}
.rpc-hero h1{text-wrap:balance;margin:0;font:400 clamp(46px,7vw,96px)/.98 var(--serif);letter-spacing:-.02em}
.rpc-tagline{text-shadow:0 1px 10px rgba(8,18,14,.5);margin:18px 0 0;max-width:34em;font-size:clamp(15px,1.4vw,18px);line-height:1.55;color:rgba(255,255,255,.9)}
.rpc-price{margin:26px 0 0;display:flex;flex-direction:column;gap:2px}
.rpc-price span{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.rpc-price strong{font:400 clamp(28px,3.2vw,40px)/1.1 var(--serif)}
.rpc-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.rpc-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 24px;background:var(--gold);color:var(--forest-deep);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--gold);cursor:pointer;transition:background .2s}
.rpc-btn:hover{background:#d9c58f}
.rpc-btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
.rpc-btn-ghost:hover{background:#fff;color:var(--forest)}
.rpc-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0 var(--gut);background:rgba(10,22,17,.52);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.22)}
.rpc-facts>div{padding:18px 20px 18px 0}
.rpc-facts>div+div{padding-left:22px;border-left:1px solid rgba(255,255,255,.18)}
.rpc-facts dt{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.rpc-facts dd{margin:4px 0 0;font:400 clamp(18px,2vw,26px)/1.15 var(--serif)}

/* screen 2 */
.rpc-body{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(340px,1fr);gap:clamp(28px,4vw,56px);max-width:1560px;margin:0 auto;padding:40px var(--gut) 44px;align-items:start}
.rpc-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:8px;height:clamp(280px,29vw,400px)}
.rpc-gallery figure{margin:0;overflow:hidden;background:#d8d2c2;min-height:0}
.rpc-gallery figure:first-child{grid-column:span 2;grid-row:span 2}
.rpc-gallery button{display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in;color:inherit}
body.rpc .rpc-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.rpc-gallery button:hover img{transform:scale(1.04)}
.rpc-gallery.rpc-g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.rpc-gallery.rpc-g3 figure:nth-child(2){grid-column:3;grid-row:1}
.rpc-gallery.rpc-g3 figure:nth-child(3){grid-column:3;grid-row:2}
.rpc-gallery.rpc-g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.rpc-gallery.rpc-g4 figure:nth-child(2){grid-column:3;grid-row:1}
.rpc-gallery.rpc-g4 figure:nth-child(3){grid-column:4;grid-row:1}
.rpc-gallery.rpc-g4 figure:nth-child(4){grid-column:3 / span 2;grid-row:2}
.rpc-overview{margin-top:24px}
.rpc-overview h2{margin:0 0 10px;font:400 clamp(24px,2.4vw,32px)/1.15 var(--serif)}
.rpc-overview p{margin:0;max-width:80ch;color:#34463f}
.rpc-chips{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;list-style:none}
.rpc-chips li{padding:6px 13px;border:1px solid var(--line);border-radius:999px;background:var(--paper);font-size:12px;color:#34463f}
.rpc-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px;border-top:1px solid var(--line)}
.rpc-card{padding:20px 22px 6px 0}
.rpc-card+.rpc-card{padding-left:22px;border-left:1px solid var(--line)}
.rpc-card h3{margin:0 0 12px;font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-deep)}
.rpc-card h4{margin:0 0 8px;font:400 22px/1.15 var(--serif)}
.rpc-card p{margin:0;font-size:13px;line-height:1.6;color:#4a5a53}
.rpc-steps{margin:0;padding:0;list-style:none}
.rpc-steps li{display:flex;align-items:baseline;gap:12px;padding:6px 0;border-bottom:1px dotted var(--line)}
.rpc-steps li:last-child{border-bottom:0}
.rpc-steps b{min-width:56px;font:400 26px/1 var(--serif);color:var(--forest)}
.rpc-steps span{font-size:13px;color:#4a5a53}
.rpc-note{margin:10px 0 0!important;font-size:11px!important;color:var(--muted)!important}
.rpc-times{margin:0;padding:0;list-style:none}
.rpc-times li{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px dotted var(--line);font-size:13px}
.rpc-times li:last-child{border-bottom:0}
.rpc-times span:last-child{color:var(--muted);white-space:nowrap}
.rpc-maplink{display:inline-block;margin-top:10px;font-size:12px;border-bottom:1px solid var(--gold-deep);padding-bottom:1px}
.rpc-more{margin-top:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.rpc-more summary{cursor:pointer;padding:14px 0;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--forest);list-style:none;display:flex;justify-content:space-between}
.rpc-more summary::-webkit-details-marker{display:none}
.rpc-more summary::after{content:"+";font-size:18px;line-height:1;font-weight:400}
.rpc-more[open] summary::after{content:"–"}
.rpc-more table{width:100%;border-collapse:collapse;font-size:13px;margin:0 0 6px}
.rpc-more th{padding:8px 10px 8px 0;text-align:left;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line)}
.rpc-more td{padding:9px 10px 9px 0;border-bottom:1px solid rgba(31,61,51,.08)}
.rpc-more .rpc-note{margin:6px 0 14px!important}
.rpc-tblwrap{overflow-x:auto}

/* enquiry card */
.rpc-aside{position:sticky;top:20px}
.rpc-form-card{background:var(--forest);color:#fff;padding:30px 30px 26px}
.rpc-form-card h2{margin:0 0 8px;font:400 clamp(26px,2.4vw,32px)/1.1 var(--serif)}
.rpc-form-card>p{margin:0 0 18px;font-size:13px;line-height:1.6;color:rgba(255,255,255,.82)}
.rpc-form-card form{display:flex;flex-direction:column;gap:2px}
.rpc-form-card label{display:block;margin-top:8px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.rpc-form-card input:not([type=hidden]):not([type=checkbox]):not([type=radio]),.rpc-form-card select,.rpc-form-card textarea{display:block;width:100%;padding:11px 0;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.4);border-radius:0;color:#fff;font-size:15px;outline:none;box-shadow:none}
.rpc-form-card textarea{min-height:64px;resize:vertical}
.rpc-form-card input:focus,.rpc-form-card select:focus,.rpc-form-card textarea:focus{border-bottom-color:var(--gold)}
.rpc-form-card ::placeholder{color:rgba(255,255,255,.66);opacity:1}
.rpc-form-card select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23ffffff' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 2px center;padding-right:22px}
.rpc-form-card select option{color:#111;background:#fff}
.rpc-form-card button[type=submit]{width:100%;min-height:50px;margin-top:16px;background:var(--gold);color:var(--forest-deep);border:0;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.rpc-form-card button[type=submit]:hover{background:#d9c58f}
.rpc-form-card button[disabled]{opacity:.7;cursor:wait}
.rpc-form-card [role=status]{margin-top:10px;font-size:13px;color:rgba(255,255,255,.9)}
.rpc-form-card .rp-phone-country{margin:0}
.rpc-form-card .iti{width:100%}
.rpc-wa{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;min-height:46px;border:1px solid rgba(255,255,255,.55);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.rpc-wa:hover{background:#fff;color:var(--forest)}

.rpc-qa h5{margin:14px 0 4px;font-size:14px;color:var(--forest)}.rpc-qa p{margin:0 0 10px;font-size:13px;color:#4a5a53}
.rpc-form-card .row2{display:flex;flex-direction:column;gap:2px}
.rpc-form-card .form-note,.rpc-form-card small{display:block;margin-top:8px;font-size:11px;color:rgba(255,255,255,.7)}
.rpc-form-card [aria-hidden=true] label{margin:0}
/* footer: small logo, small QR, one tight block */
.rpc-foot{background:var(--paper);border-top:1px solid var(--line);padding:22px var(--gut) 26px;font-size:12px;color:var(--muted)}
.rpc-foot-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 34px;max-width:1560px;margin:0 auto}
.rpc-permit{display:flex;align-items:center;gap:12px;max-width:430px;line-height:1.45}
.rpc-permit img{width:60px;height:60px;object-fit:contain;flex:none;background:#fff}
.rpc-permit strong{display:block;color:var(--ink);font-size:12px}.rpc-permit span{display:block}
.rpc-foot-brand{display:flex;align-items:center;gap:10px;color:var(--ink);line-height:1.4}
.rpc-foot-brand img{width:30px;height:30px;border-radius:50%;flex:none}
.rpc-foot-links{display:flex;flex-wrap:wrap;gap:6px 18px;margin-left:auto}
.rpc-foot-links a{color:var(--ink);border-bottom:1px solid var(--line)}
.rpc-disc{max-width:1560px;margin:12px auto 0;font-size:11px;line-height:1.55}

/* mobile action bar */
.rpc-mbar{display:none}

.rpc-vid{position:relative}.rpc-play{position:absolute;left:50%;top:50%;width:58px;height:58px;margin:-29px 0 0 -29px;border-radius:50%;background:rgba(15,32,25,.72);border:1px solid rgba(255,255,255,.8);pointer-events:none}
.rpc-play::after{content:"";position:absolute;left:23px;top:18px;border-left:15px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent}
/* lightbox */
body.rpc #rpc-lightbox [hidden]{display:none!important}
#rpc-lightbox{border:0;padding:0;margin:auto;width:min(1200px,96vw);max-height:94vh;background:#0e1b16;color:#fff;overflow:hidden}
#rpc-lightbox::backdrop{background:rgba(6,14,10,.88)}
body.rpc #rpc-lightbox video{display:block;width:100%;max-height:80vh;background:#000}
body.rpc #rpc-lightbox img{width:100%;max-height:80vh;object-fit:contain;background:#0e1b16}
.rpc-lb-x{position:absolute;right:10px;top:8px;z-index:2;width:44px;height:44px;border:0;background:rgba(0,0,0,.45);color:#fff;font-size:28px;line-height:1;cursor:pointer}
.rpc-lb-bar{display:flex;align-items:center;gap:14px;padding:10px 14px;font-size:12px}
.rpc-lb-bar p{flex:1;margin:0;text-align:center;color:rgba(255,255,255,.8)}
.rpc-lb-bar button{width:44px;height:44px;border:1px solid rgba(255,255,255,.4);background:none;color:#fff;font-size:20px;cursor:pointer}

@media(max-width:1100px){
  .rpc-body{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:36px}
  .rpc-aside{position:static}
  .rpc-top nav{display:none}.rpc-top-actions{margin-left:auto}
}
@media(max-width:760px){
  body.rpc{font-size:14px;padding-bottom:64px}
  .rpc-top{height:56px}.rpc-tel{display:none}
  .rpc-hero{min-height:min(88svh,720px)}
  .rpc-hero-in{padding-top:92px;padding-bottom:22px}
  .rpc-actions .rpc-btn{flex:1 1 150px;padding:0 14px}
  .rpc-facts{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 var(--gut)}
  .rpc-facts>div{padding:12px 12px 12px 0}
  .rpc-facts>div+div{padding-left:0;border-left:0}
  .rpc-facts>div:nth-child(2n){padding-left:16px;border-left:1px solid rgba(255,255,255,.18)}
  .rpc-facts>div:nth-child(n+3){border-top:1px solid rgba(255,255,255,.18)}
  .rpc-gallery,.rpc-gallery.rpc-g3,.rpc-gallery.rpc-g4{display:flex;height:auto;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;margin-inline:calc(var(--gut) * -1);padding-inline:var(--gut)}
  .rpc-gallery figure,.rpc-gallery figure:first-child,.rpc-gallery.rpc-g4 figure:nth-child(4){flex:0 0 82%;height:230px;scroll-snap-align:center;grid-column:auto;grid-row:auto}
  .rpc-cards{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:20px}
  .rpc-card{padding:16px 10px 6px 0}
  .rpc-card+.rpc-card{padding:16px 0 6px 12px;border-left:1px solid var(--line)}
  .rpc-card.dev-sec{grid-column:1 / -1;padding:14px 0 6px;border-left:0;border-top:1px solid var(--line)}
  .rpc-card h4{font-size:19px}
  .rpc-steps b{min-width:46px;font-size:22px}.rpc-steps span,.rpc-times li{font-size:12px}
  .rpc-times li{flex-direction:column;gap:0;padding:4px 0}
  .rpc-card p{font-size:12.5px}
  .rpc-overview h2{font-size:23px}
  .rpc-chips{margin-top:12px;flex-wrap:nowrap;overflow-x:auto;margin-inline:calc(var(--gut) * -1);padding-inline:var(--gut);scrollbar-width:none}
  .rpc-chips li{white-space:nowrap;flex:none}
  .rpc-form-card .rp-phone-note{display:none}
  .rpc-form-card textarea{min-height:48px}
  .rpc-form-card input:not([type=hidden]):not([type=checkbox]):not([type=radio]),.rpc-form-card select,.rpc-form-card textarea{padding:9px 0}
  .rpc-form-card{padding:24px 20px 22px}
  .rpc-foot{padding-bottom:30px}.rpc-foot-links{margin-left:0}
  .rpc-mbar{display:flex;transform:translateY(130%);transition:transform .25s ease;position:fixed;left:0;right:0;bottom:0;z-index:50;gap:8px;padding:8px var(--gut) calc(8px + env(safe-area-inset-bottom));background:rgba(20,42,34,.96)}
  body.rpc.rpc-mbar-on .rpc-mbar{transform:none}
  .rpc-mbar a{flex:1;display:flex;align-items:center;justify-content:center;min-height:46px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border:1px solid rgba(255,255,255,.5);color:#fff}
  .rpc-mbar a.rpc-mbar-main{background:var(--gold);border-color:var(--gold);color:var(--forest-deep)}
}

/* existing cookie notice (injected by cookie-consent.js): same text/choices, compact presentation */
body.rpc .rp-cc{background:var(--paper)!important;color:var(--forest)!important;border-top:1px solid var(--line)!important;box-shadow:0 -6px 24px rgba(15,32,25,.12)!important;padding:10px var(--gut)!important}
body.rpc .rp-cc-inner{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:24px!important;max-width:1560px!important;margin:auto!important;padding:0!important}
body.rpc .rp-cc-text{font:400 12px/1.5 Arial,Helvetica,sans-serif!important;color:#46564e!important;max-width:820px!important;margin:0!important;text-align:left!important}
body.rpc .rp-cc-text a{color:var(--forest)!important;text-decoration:underline!important}
body.rpc .rp-cc-actions{display:flex!important;gap:10px!important;flex-shrink:0!important;margin:0!important}
body.rpc .rp-cc-btn{border-radius:0!important;min-height:40px!important;padding:8px 14px!important;font:700 11px/1.3 Arial,Helvetica,sans-serif!important;letter-spacing:.06em!important;text-transform:uppercase!important;min-width:0!important;width:auto!important;box-shadow:none!important}
body.rpc .rp-cc-yes{background:var(--forest)!important;color:#fff!important;border:1px solid var(--forest)!important}
body.rpc .rp-cc-no{background:transparent!important;color:var(--forest)!important;border:1px solid #a3b0a8!important}
body.rpc .rp-cc-close{color:var(--forest)!important;top:2px!important;right:4px!important;font-size:20px!important;width:28px!important;height:28px!important}
@media(max-width:760px){body.rpc .rp-cc{padding:10px 36px 10px 16px!important}body.rpc .rp-cc-inner{display:block!important}body.rpc .rp-cc-text{font-size:11px!important;max-width:none!important}body.rpc .rp-cc-actions{margin-top:8px!important}body.rpc .rp-cc-btn{flex:1;min-height:42px!important;font-size:10px!important}}

@media(max-width:760px){
  .rpc-hero{min-height:min(80svh,660px)}
  .rpc-hero::after{background:linear-gradient(0deg,rgba(10,22,17,.9) 0%,rgba(10,22,17,.7) 42%,rgba(10,22,17,.42) 72%,rgba(10,22,17,.5) 100%)}
  body.rpc .rpc-hero-img img{object-position:var(--pos-m,var(--pos,60% 50%))}
  .rpc-hero-in{padding-top:84px;padding-bottom:18px}
  .rpc-hero h1{font-size:clamp(40px,12vw,56px)}
  .rpc-tagline{margin-top:12px}.rpc-price{margin-top:18px}.rpc-actions{margin-top:18px}
  .rpc-form-card input:not([type=hidden]):not([type=checkbox]):not([type=radio]),.rpc-form-card select,.rpc-form-card textarea{font-size:16px}
  .rpc-form-card textarea{min-height:92px}
  .rpc-form-card{padding:22px 16px 18px}
  .rpc-body{padding-top:28px;gap:24px}
  .rpc-foot{padding:18px var(--gut) 24px}.rpc-disc{font-size:10px;line-height:1.5}
}
@media(min-width:761px){.rpc-form-card textarea{min-height:84px}}

.rpc-steps li.rpc-long{flex-direction:column;align-items:flex-start;gap:0}
.rpc-steps li.rpc-long b{min-width:0;font-size:20px;line-height:1.15}
@media(max-width:760px){
  .rpc-eyebrow{color:#ead9a4;font-weight:700;text-shadow:0 0 2px rgba(6,14,10,.85),0 1px 10px rgba(6,14,10,.75)}
  .rpc-tagline{text-shadow:0 0 2px rgba(6,14,10,.6),0 1px 10px rgba(6,14,10,.65)}
}
@media(prefers-reduced-motion:reduce){body.rpc *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
