/* OPO project template (v3). Site idiom: Poppins uppercase titles, Roboto body, gold #B9A366 + black. */
/* Mockup styles in the live site's own idiom (Elementor kit 5 + home page 8):
   headings Poppins 600 uppercase black, body Roboto 18-26px, gold #B9A366, black #000, grey #3F3F3F,
   90% containers, 3px gold-gradient buttons (.polished-button), #F5F0E8 chips, 8-10px corners. */
.mk{--gold:#B9A366;--gold-d:#8f7a45;--black:#000;--grey:#3F3F3F;--chip:#F5F0E8;--line:#e7e1d4;font-family:Roboto,sans-serif;color:#000}
.mk *{box-sizing:border-box}
.mk a:not(.mk-btn){text-decoration:none;color:inherit}
.mk a.mk-btn{text-decoration:none}
.mk img{max-width:100%;display:block}
.mk-wrap{width:90%;max-width:1500px;margin:0 auto}
.mk-sec{padding:90px 0}
.mk-center{text-align:center}
.mk-eyebrow{font:600 20px/1.3 Poppins,sans-serif;text-transform:uppercase;color:var(--gold);margin:0 0 10px}
.mk-h2{font:600 37px/1.2 Poppins,sans-serif;text-transform:uppercase;color:#000;margin:0 0 16px}
.mk-sub{font:400 21px/1.55 Roboto,sans-serif;color:#000;max-width:980px;margin:0 auto 46px}
.mk-p{font:400 18px/1.7 Roboto,sans-serif;color:var(--grey);margin:0 0 16px}
.mk-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;border:0;font:600 14px/1 Poppins,sans-serif;letter-spacing:.3px;padding:16px 28px;border-radius:3px;transition:background .25s,box-shadow .25s,transform .15s;min-height:48px}
.mk-btn--gold{background:linear-gradient(135deg,#E9D9A8 0%,#C9B074 42%,#A98C4E 100%);color:#14110D;box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 8px 20px rgba(169,140,78,.32)}
.mk a.mk-btn--gold:hover,.mk a.mk-btn--gold:focus,.mk-btn--gold:hover{background:linear-gradient(135deg,#F0E3BC 0%,#D2B97E 42%,#B5944F 100%);color:#14110D}
.mk-btn--black{background:#000;color:var(--gold);border:1px solid var(--gold);font:600 16px/1 Roboto,sans-serif;border-radius:2px}
/* The theme recolours link text on hover; keep the button text gold */
.mk a.mk-btn--black:hover,.mk a.mk-btn--black:focus,.mk-btn--black:hover{background:#1a1a1a;color:var(--gold)}
.mk-btn--line{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.8)}
.mk-btn--line:hover{background:rgba(255,255,255,.1)}
.mk-chip{display:inline-block;background:var(--chip);border-radius:14px;padding:5px 15px;font:400 15px/1.4 Roboto,sans-serif;color:#000}

/* Shared enquiry form (one form for every page) */
.mk-form{background:#fff;border-radius:10px;padding:34px;border:1px solid var(--line)}
.mk-form h3{font:600 24px/1.25 Poppins,sans-serif;text-transform:uppercase;margin:0 0 6px}
.mk-form .note{font:400 16px/1.5 Roboto,sans-serif;color:var(--grey);margin:0 0 22px}
.mk-form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.mk-form label.f{display:block;margin-bottom:16px}
.mk-form label.f>span,.mk-form fieldset legend{display:block;font:500 15px/1.3 Roboto,sans-serif;margin-bottom:7px;color:#000;padding:0}
.mk-form input[type=text],.mk-form input[type=email],.mk-form input[type=tel],.mk-form select,.mk-form textarea{width:100%;font:400 16px Roboto,sans-serif;color:#000;background:#fff;border:1px solid #cfc8b8;border-radius:3px;padding:13px 14px;min-height:48px}
.mk-form textarea{min-height:90px;resize:vertical}
.mk-form input:focus,.mk-form select:focus,.mk-form textarea:focus{outline:2px solid var(--gold);outline-offset:0;border-color:var(--gold)}
.mk-form label.f>span.tel{display:grid;grid-template-columns:110px 1fr;gap:8px;margin:0;font:inherit}
.mk-form fieldset{border:0;margin:0 0 16px;padding:0}
.mk-form .opts{display:flex;flex-wrap:wrap;gap:8px}
.mk-form .opts label{position:relative}
.mk-form .opts input{position:absolute;opacity:0;inset:0;cursor:pointer}
.mk-form .opts span{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid #cfc8b8;border-radius:3px;font:400 15px Roboto,sans-serif;background:#fff;cursor:pointer}
.mk-form .opts input:checked+span{background:#000;color:var(--gold);border-color:#000}
.mk-form .opts input:focus-visible+span{outline:2px solid var(--gold)}
.mk-form .send{width:100%;margin-top:6px;font-size:15px}
.mk-form .fine{font:400 13px/1.5 Roboto,sans-serif;color:#6b6b66;margin:12px 0 0}
@media (max-width:767px){.mk-form{padding:22px}.mk-form .row{grid-template-columns:1fr;gap:0}}

@media (max-width:1024px){.mk-sec{padding:64px 0}.mk-h2{font-size:30px}.mk-sub{font-size:19px}}
@media (max-width:767px){.mk-wrap{width:calc(100% - 32px)}.mk-sec{padding:52px 0}.mk-h2{font-size:25px}.mk-eyebrow{font-size:15px}.mk-sub{font-size:17px;margin-bottom:30px}.mk-p{font-size:17px}}
@media (prefers-reduced-motion:reduce){.mk *,.opo-card,.opo-card__img img{transition:none!important}}


/* ---------- Top: breadcrumb + gallery ---------- */
.pv-top{padding:26px 0 0}
.pv-crumb{font:400 15px/1.5 Roboto,sans-serif;color:var(--grey);margin-bottom:18px}
.pv-crumb a{color:var(--gold-d)}
.pv-gal{position:relative;display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:265px 265px;gap:10px;border-radius:10px;overflow:hidden}
.pv-gal button{position:relative;display:block;padding:0;border:0;background:#ddd;overflow:hidden;cursor:pointer}
.pv-gal button img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.pv-gal button:hover img{transform:scale(1.04)}
.pv-gal button:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}
.pv-gal .g0{grid-row:span 2}
.pv-gal .pv-all{position:absolute;right:16px;bottom:16px;z-index:2;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;background:#fff;color:#000;border:0;border-radius:3px;font:500 15px Roboto,sans-serif;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.pv-gal .pv-all:hover,.pv-gal .pv-all:focus{background:#fff;color:#000}
.pv-gal .pv-all svg{width:18px;height:18px}
.pv-gal .pv-badge{position:absolute;left:16px;top:16px;z-index:2;background:#000;color:var(--gold);font:500 15px/1.3 Roboto,sans-serif;border-radius:3px;padding:9px 14px;pointer-events:none}

/* ---------- Title block ---------- */
.pv-title{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap;padding:34px 0 32px}
.pv-title h1{font:600 54px/1.05 Poppins,sans-serif;text-transform:uppercase;margin:0 0 12px;color:#000}
.pv-title .by{font:400 20px/1.45 Roboto,sans-serif;margin:0 0 16px}
.pv-title .by a{color:var(--gold-d);font-weight:500}
.pv-title .chips{display:flex;flex-wrap:wrap;gap:8px}
.pv-title .chips .mk-chip{font-size:16px;padding:7px 16px}
.pv-title .ctas{display:flex;gap:12px;flex-wrap:wrap}

/* ---------- Black facts band (live "Inside" counters) ---------- */
.pv-facts{background:#000;color:#fff}
.pv-facts .in{display:grid;grid-template-columns:repeat(4,1fr)}
.pv-facts .f{padding:34px 20px;text-align:center;border-left:1px solid rgba(255,255,255,.14)}
.pv-facts .f:first-child{border-left:0}
.pv-facts b{display:block;font:500 32px/1.2 Roboto,sans-serif;color:var(--gold)}
.pv-facts span{display:block;font:400 17px/1.4 Roboto,sans-serif;margin-top:6px;color:#ddd}

/* ---------- Body: content + sticky price card ---------- */
.pv-body{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:56px;align-items:start;padding:80px 0 30px}
.pv-main>section{margin-bottom:84px;scroll-margin-top:60px}
.pv-main .mk-h2{text-align:left}
.pv-intro{font:400 19px/1.6 Roboto,sans-serif;color:var(--grey);margin:0 0 30px;max-width:760px}

/* Overview */
.pv-hl{list-style:none;padding:0;margin:8px 0 26px;display:grid;grid-template-columns:1fr 1fr;gap:16px 36px}
.pv-hl li{position:relative;padding-left:24px;font:400 19px/1.5 Roboto,sans-serif;color:#000}
.pv-hl li::before{content:"";position:absolute;left:0;top:9px;width:10px;height:10px;background:var(--gold);transform:rotate(45deg)}
.pv-more p{font:400 19px/1.75 Roboto,sans-serif;color:var(--grey);margin:0 0 18px}

/* Unit cards (stacked, like the live "Find your perfect home") */
.pv-units{display:flex;flex-direction:column;gap:30px}
.pv-unit{display:grid;grid-template-columns:44% 1fr;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 18px 40px -30px rgba(60,45,10,.35)}
.pv-slide{position:relative;background:#f6f4ef;min-height:360px;touch-action:pan-y}
.pv-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:12px;opacity:0;transition:opacity .4s}
.pv-slide img.on{opacity:1}
.pv-slide .nav{position:absolute;left:10px;right:10px;top:50%;transform:translateY(-50%);display:flex;justify-content:space-between;pointer-events:none;z-index:2}
.pv-slide .nav button{pointer-events:auto;padding:0;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.92);box-shadow:0 4px 14px rgba(0,0,0,.18);color:#000;cursor:pointer;display:flex;align-items:center;justify-content:center}
.pv-slide .nav button:hover,.pv-slide .nav button:focus{border-color:var(--gold);background:#fff;color:#000}
.pv-slide .nav button svg{width:18px;height:18px}
.pv-ud{padding:28px 30px}
.pv-ud .top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.pv-ud .type{font:600 16px/1.3 Poppins,sans-serif;text-transform:uppercase;color:var(--gold)}
.pv-ud .ho{display:inline-flex;align-items:center;gap:7px;font:500 16px Roboto,sans-serif;color:#000}
.pv-ud .ho svg{width:18px;height:18px;color:var(--gold-d)}
.pv-ud h3{font:600 28px/1.2 Poppins,sans-serif;text-transform:uppercase;margin:0 0 14px;color:#000}
.pv-ud .from{font:400 17px Roboto,sans-serif;color:var(--grey)}
.pv-ud .from b{display:block;font:600 30px/1.2 Roboto,sans-serif;color:var(--gold)}
.pv-specs{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}
.pv-specs div{background:#faf8f4;border:1px solid var(--line);border-radius:8px;padding:11px 18px;min-width:112px}
.pv-specs b{display:block;font:600 21px/1.25 Roboto,sans-serif;color:#000}
.pv-specs span{font:400 15px Roboto,sans-serif;color:var(--grey)}
/* Floor-by-floor layout: full-width strip under the photo and details, one column per floor */
.pv-floors{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px 40px;padding:22px 30px 18px;background:#faf8f4;border-top:1px solid var(--line)}
.pv-floors:not(:has(.pv-floor)){display:none}
.pv-floor h4{display:flex;align-items:center;gap:10px;font:600 15px/1.3 Poppins,sans-serif;text-transform:uppercase;color:#000;margin:0 0 8px}
.pv-floor .lvl{flex:none;width:28px;height:28px;border-radius:50%;background:var(--gold);color:#fff;display:flex;align-items:center;justify-content:center;font:600 14px Roboto,sans-serif}
.pv-floor ul{list-style:none;margin:0;padding:0;columns:2;column-gap:24px}
.pv-floor li{position:relative;padding:5px 0 5px 17px;break-inside:avoid;font:400 16px/1.4 Roboto,sans-serif;color:#000}
.pv-floor li::before{content:"";position:absolute;left:0;top:12px;width:7px;height:7px;background:var(--gold);transform:rotate(45deg)}
/* Line the diamonds up under the centre of the G / 1 badge */
.pv-floor:has(.lvl) ul{padding-left:10px}
.pv-ud .acts{display:flex;gap:10px;margin-top:24px}
.pv-ud .acts .mk-btn--black{flex:1}
.mk a.pv-wa{width:48px;height:48px;flex:none;border-radius:50%;border:0;display:flex;align-items:center;justify-content:center;color:#fff;background:#25D366}
.mk a.pv-wa svg{width:24px;height:24px}
.mk a.pv-wa:hover{background:#1ebe5b;color:#fff}
.pv-wa svg{width:22px;height:22px}
.pv-unit-note{font:400 16px/1.55 Roboto,sans-serif;color:var(--grey);margin:22px 0 0}

/* Features */
.pv-amen{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pv-amen .it{border:1px solid var(--line);border-radius:10px;padding:26px 22px;background:#fff}
.pv-amen .ic{width:54px;height:54px;border-radius:50%;background:var(--chip);color:var(--gold-d);display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.pv-amen .ic svg{width:26px;height:26px}
.pv-amen h3{font:600 19px/1.3 Poppins,sans-serif;text-transform:uppercase;margin:0 0 8px;color:#000}
.pv-amen p{font:400 17px/1.6 Roboto,sans-serif;color:var(--grey);margin:0}

/* Location */
.pv-loc-line{font:500 20px/1.4 Roboto,sans-serif;margin:0 0 18px;display:flex;align-items:center;gap:8px}
.pv-loc-line svg{width:22px;height:22px;flex:none;color:var(--gold)}
.pv-map{border-radius:10px;overflow:hidden;border:1px solid var(--line);aspect-ratio:16/8;background:#eee}
.pv-map iframe{width:100%;height:100%;border:0;display:block}

/* Developer */
.pv-dev{display:grid;grid-template-columns:auto 1fr;gap:26px;align-items:start;border:1px solid var(--line);border-radius:10px;padding:30px;background:#faf8f4}
.pv-dev .logo{width:88px;height:88px;border-radius:50%;background:#000;color:var(--gold);display:flex;align-items:center;justify-content:center;font:600 24px Poppins,sans-serif}
.pv-dev h3{font:600 24px/1.25 Poppins,sans-serif;text-transform:uppercase;margin:0 0 10px;color:#000}
.pv-dev .mk-p{margin:0}

/* FAQ (same idiom as the live home FAQ) */
.pv-faq details{border-bottom:1px solid var(--line)}
.pv-faq details:first-child{border-top:1px solid var(--line)}
.pv-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:44px;padding:22px 4px;font:500 20px/1.4 Roboto,sans-serif;color:#000}
.pv-faq summary::-webkit-details-marker{display:none}
.pv-faq summary::after{content:"+";flex:none;font:400 30px/1 Roboto,sans-serif;color:var(--gold)}
.pv-faq details[open] summary::after{content:"\2212"}
.pv-faq p{font:400 18px/1.7 Roboto,sans-serif;color:var(--grey);margin:0 4px 24px}

/* Disclaimer note */
.pv-disc{display:flex;gap:16px;align-items:flex-start;border-left:4px solid var(--gold);background:#faf8f4;padding:22px 24px;border-radius:0 10px 10px 0}
.pv-disc svg{flex:none;width:26px;height:26px;color:var(--gold-d)}
.pv-disc p{margin:0;font:400 17px/1.65 Roboto,sans-serif;color:var(--grey)}
.pv-disc b{color:#000}

/* Sticky price / enquiry card */
/* The theme sets overflow-x:hidden on html/body, which turns body into a scroll box and stops sticky working. clip hides sideways overflow without that. */
html,body{overflow:visible!important;overflow-x:clip!important}
.pv-aside{position:sticky;top:60px}
.pv-price{border:1px solid var(--line);border-radius:10px;padding:30px;background:#fff;box-shadow:0 18px 40px -24px rgba(0,0,0,.35)}
.pv-price .lbl{font:400 17px Roboto,sans-serif;color:var(--grey);margin:0}
.pv-price .amt{font:600 42px/1.15 Roboto,sans-serif;color:var(--gold);margin:4px 0 2px}
.pv-price .usd{font:400 17px Roboto,sans-serif;color:var(--grey);margin:0 0 20px}
.pv-price dl{margin:0 0 20px;border-top:1px solid var(--line)}
.pv-price dl div{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font:400 16px/1.4 Roboto,sans-serif}
.pv-price dt{color:var(--grey)}
.pv-price dd{margin:0;font-weight:500;color:#000;text-align:right}
.pv-price .avail{background:var(--chip);border-radius:3px;padding:12px 14px;margin:0 0 18px;font:400 16px/1.45 Roboto,sans-serif}
.pv-price .avail b{display:block;font-weight:600}
.pv-price .mk-btn{width:100%;margin-bottom:10px}
.pv-price .call{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;font:500 16px Roboto,sans-serif;color:#000}
.pv-price .call svg{width:18px;height:18px;color:var(--gold-d)}
.pv-price .disc{font:400 14px/1.55 Roboto,sans-serif;color:var(--grey);margin:12px 0 0;padding-top:14px;border-top:1px solid var(--line)}

/* Enquiry section */
.pv-enq{background:var(--chip)}
.pv-enq .in{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}
.pv-enq .left .mk-h2{text-align:left}
.pv-enq .left{position:sticky;top:90px}
.pv-enq ul{list-style:none;padding:0;margin:22px 0 0;display:flex;flex-direction:column;gap:12px;font:400 18px/1.5 Roboto,sans-serif}
.pv-enq li{position:relative;padding-left:21px}
.pv-enq li::before{content:"";position:absolute;left:0;top:9px;width:9px;height:9px;background:var(--gold);transform:rotate(45deg)}

/* Lightbox */
.pv-lb{position:fixed;inset:0;z-index:100000;touch-action:pan-y;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center}
.pv-lb.open{display:flex}
/* Floating WhatsApp, staging bar and price bar stay out of the way while photos are open */
body.pv-lb-on .opo-wa-float,body.pv-lb-on .opo-stg,body.pv-lb-on .pv-bar{display:none!important}
.pv-lb img{max-width:min(1200px,92vw);max-height:80vh;object-fit:contain;border-radius:6px}
.pv-lb button{padding:0;position:absolute;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:rgba(0,0,0,.4);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}
.pv-lb button svg{width:22px;height:22px}
.pv-lb .x{top:20px;right:20px}
.pv-lb .p{left:20px;top:50%;transform:translateY(-50%)}
.pv-lb .n{right:20px;top:50%;transform:translateY(-50%)}
.pv-lb .c{position:absolute;bottom:22px;left:0;right:0;pointer-events:none;text-align:center;color:#fff;font:400 15px Roboto,sans-serif}

/* Mobile sticky bar */
.pv-bar{display:none}

@media (max-width:1240px){.pv-body{grid-template-columns:minmax(0,1fr) 330px;gap:36px}.pv-unit{grid-template-columns:1fr}.pv-slide{min-height:340px}.pv-amen{grid-template-columns:1fr 1fr}}
@media (max-width:1024px){
 .pv-body{grid-template-columns:1fr;padding-top:60px}.pv-aside{display:none}
 .pv-gal{grid-template-columns:1fr 1fr;grid-template-rows:320px 170px}.pv-gal .g0{grid-column:span 2;grid-row:auto}.pv-gal .g3,.pv-gal .g4{display:none}
 .pv-facts .in{grid-template-columns:1fr 1fr}.pv-facts .f:nth-child(3){border-left:0}.pv-facts .f:nth-child(n+3){border-top:1px solid rgba(255,255,255,.14)}
 .pv-unit{grid-template-columns:44% 1fr}
 .pv-enq .in{grid-template-columns:1fr;gap:30px}.pv-enq .left{position:static}
 .pv-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:98;background:#fff;border-top:1px solid var(--line);padding:10px 16px calc(10px + env(safe-area-inset-bottom));gap:12px;align-items:center;justify-content:space-between;box-shadow:0 -8px 24px -12px rgba(0,0,0,.25);transition:transform .3s}
 .pv-bar.hide{transform:translateY(110%)}
 .pv-bar small{display:block;font:400 13px Roboto,sans-serif;color:var(--grey)}
 .pv-bar b{display:block;font:600 21px/1.2 Roboto,sans-serif;color:var(--gold)}
 .pv-bar .mk-btn{flex:none}
 .opo-wa-float{bottom:calc(84px + env(safe-area-inset-bottom))!important;transition:bottom .3s}
 body.pv-bar-off .opo-wa-float{bottom:16px!important}
 body{padding-bottom:72px}
}
@media (max-width:767px){
 .pv-top{padding-top:18px}.pv-crumb{font-size:14px;margin-bottom:12px}
 .pv-gal{width:100vw;margin-left:-16px;border-radius:0;grid-template-rows:240px 120px;gap:6px}
 .pv-gal .pv-all{right:12px;bottom:12px;font-size:14px;padding:0 14px}.pv-gal .pv-badge{left:12px;top:12px;font-size:13px;padding:7px 11px}
 .pv-title{padding:24px 0 26px;gap:18px}.pv-title h1{font-size:34px}.pv-title .by{font-size:17px}.pv-title .chips .mk-chip{font-size:15px}
 .pv-title .ctas{width:100%}.pv-title .ctas .mk-btn{flex:1 1 140px}
 .pv-facts .f{padding:22px 10px}.pv-facts b{font-size:22px}.pv-facts span{font-size:15px}
 .pv-body{padding-top:48px}.pv-main>section{margin-bottom:60px}
 .pv-intro{font-size:17px}.pv-hl{grid-template-columns:1fr;gap:12px}.pv-hl li,.pv-more p{font-size:17px}
 .pv-unit{grid-template-columns:1fr}.pv-slide{min-height:300px}.pv-ud{padding:22px 20px}.pv-floors{padding:18px 20px 14px}.pv-floor ul{columns:1}.pv-ud h3{font-size:23px}.pv-ud .from b{font-size:26px}
 .pv-specs div{min-width:0;flex:1 1 40%;padding:10px 14px}.pv-specs b{font-size:19px}
 .pv-amen{grid-template-columns:1fr}.pv-amen .it{padding:22px 20px}
 .pv-map{aspect-ratio:4/3}.pv-loc-line{font-size:18px}
 .pv-dev{grid-template-columns:1fr;padding:24px 20px;gap:16px}.pv-dev .logo{width:68px;height:68px;font-size:20px}
 .pv-faq summary{font-size:18px;padding:18px 2px}.pv-faq p{font-size:17px}
 .pv-disc{padding:18px}.pv-disc p{font-size:16px}
 .pv-enq ul{font-size:17px}
 /* The floating WhatsApp button (96px at this size) sits above the bar, never under it */
 .pv-bar .mk-btn{padding:14px 18px;font-size:14px}
 .opo-wa-float{bottom:calc(80px + env(safe-area-inset-bottom))!important}
 .pv-lb .p,.pv-lb .n{top:auto;bottom:12px;transform:none}.pv-lb .c{bottom:26px}
}
@media (prefers-reduced-motion:reduce){.pv-gal button img,.pv-slide img,.pv-bar{transition:none!important}}

/* Elementor global form (template 7423) inside the enquiry block */
.pv-enq .pv-form{background:#fff;border-radius:10px;padding:34px;border:1px solid var(--line)}
.pv-enq .pv-form h3{font:600 24px/1.25 Poppins,sans-serif;text-transform:uppercase;margin:0 0 6px}
.pv-enq .pv-form .note{font:400 16px/1.5 Roboto,sans-serif;color:var(--grey);margin:0 0 18px}
.pv-enq .elementor-field-group .elementor-field{min-height:48px;border-radius:3px!important}
.pv-enq .elementor-button[type=submit]{background:linear-gradient(135deg,#E9D9A8 0%,#C9B074 42%,#A98C4E 100%)!important;color:#14110D!important;font:600 15px Poppins,sans-serif!important;border-radius:3px!important;min-height:50px}
@media (max-width:767px){.pv-enq .pv-form{padding:22px}}

/* Thank-you page */

.ty-hero{background:#000;color:#fff;padding:90px 0 80px;text-align:center}
.ty-tick{width:84px;height:84px;margin:0 auto 26px;border-radius:50%;border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;color:var(--gold)}
.ty-tick svg{width:40px;height:40px}
.ty-hero h1{font:600 50px/1.1 Poppins,sans-serif;text-transform:uppercase;margin:0 0 18px}
.ty-hero h1 span{color:var(--gold)}
.ty-hero p{font:400 21px/1.6 Roboto,sans-serif;color:#e8e8e8;max-width:780px;margin:0 auto}
.ty-hero p b{color:#fff;font-weight:500}
.ty-next{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:10px}
.ty-next .it{border:1px solid var(--line);border-radius:10px;padding:30px 26px;background:#fff}
.ty-next .n{font:600 40px/1 Poppins,sans-serif;color:var(--gold);margin-bottom:14px}
.ty-next h3{font:600 20px/1.3 Roboto,sans-serif;margin:0 0 8px}
.ty-next p{font:400 17px/1.6 Roboto,sans-serif;color:var(--grey);margin:0}
.ty-wa{background:var(--chip);border-radius:10px;padding:34px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:50px}
.ty-wa h3{font:600 24px/1.25 Poppins,sans-serif;text-transform:uppercase;margin:0 0 6px}
.ty-wa p{font:400 18px/1.5 Roboto,sans-serif;color:var(--grey);margin:0}
.ty-wa .btns{display:flex;gap:12px;flex-wrap:wrap}
.ty-green{background:#25D366;color:#fff!important;font:600 15px/1 Poppins,sans-serif;border-radius:3px}
.ty-green:hover{background:#1FA855}
@media (max-width:1024px){.ty-next{grid-template-columns:1fr}}
@media (max-width:767px){.ty-hero{padding:60px 0 54px}.ty-hero h1{font-size:30px}.ty-hero p{font-size:17px}.ty-wa{padding:24px}.ty-wa .btns,.ty-wa .btns .mk-btn{width:100%}}

/* ---------- Dark sections: black with a faint gold geometric pattern ---------- */
.mk .v3-dark,.opo-foot{background-color:#0b0b0b;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cg fill='none' stroke='%23B9A366' stroke-width='1' opacity='.16'%3E%3Crect x='21' y='21' width='30' height='30'/%3E%3Cpath d='M36 14.8 57.2 36 36 57.2 14.8 36z'/%3E%3Cpath d='M0 0l14.8 14.8M72 0 57.2 14.8M0 72l14.8-14.8M72 72 57.2 57.2'/%3E%3Cpath d='M36 0v14.8M36 72V57.2M0 36h14.8M72 36H57.2'/%3E%3C/g%3E%3C/svg%3E");background-size:72px 72px}
.mk a.mk-btn--line:hover,.mk a.mk-btn--line:focus{background:rgba(255,255,255,.12);color:#fff;border-color:#fff}

/* ---------- Footer (inc/footer.php) ---------- */
.opo-foot{color:#cfcfcf;font:400 16px/1.6 Roboto,sans-serif}
.opo-foot *{box-sizing:border-box}
.opo-foot__wrap{width:90%;max-width:1500px;margin:0 auto}
.opo-foot a{color:#e9e9e9;text-decoration:none}
.opo-foot a:hover,.opo-foot a:focus{color:#B9A366}
.opo-foot__cta{border-bottom:1px solid rgba(185,163,102,.25)}
.opo-foot__cta-in{display:flex;align-items:center;justify-content:space-between;gap:24px 40px;flex-wrap:wrap;padding:56px 0}
.opo-foot__eyebrow{font:600 15px/1.3 Poppins,sans-serif;text-transform:uppercase;color:#B9A366;margin:0 0 8px}
.opo-foot h2{font:600 34px/1.2 Poppins,sans-serif;text-transform:uppercase;color:#fff;margin:0}
.opo-foot__btns{display:flex;gap:12px;flex-wrap:wrap}
.opo-foot a.opo-foot__btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 28px;border-radius:3px;font:600 14px/1 Poppins,sans-serif}
.opo-foot a.opo-foot__btn--gold{background:linear-gradient(135deg,#E9D9A8 0%,#C9B074 42%,#A98C4E 100%);color:#14110D}
.opo-foot a.opo-foot__btn--gold:hover{background:linear-gradient(135deg,#F0E3BC 0%,#D2B97E 42%,#B5944F 100%);color:#14110D}
.opo-foot a.opo-foot__btn--line{border:1px solid rgba(255,255,255,.7);color:#fff}
.opo-foot a.opo-foot__btn--line:hover{background:rgba(255,255,255,.12);color:#fff;border-color:#fff}
.opo-foot__cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;padding:60px 0 50px}
.opo-foot__brand img{width:220px;height:auto;display:block;margin-bottom:18px}
.opo-foot__brand p{margin:0 0 20px;max-width:340px;color:#bdbdbd}
.opo-foot__social{display:flex;gap:10px}
.opo-foot__social a{width:42px;height:42px;border-radius:50%;border:1px solid rgba(185,163,102,.5);display:flex;align-items:center;justify-content:center;color:#B9A366}
.opo-foot__social a:hover{background:#B9A366;color:#000}
.opo-foot__social svg{width:19px;height:19px}
.opo-foot__col{display:flex;flex-direction:column;gap:10px}
.opo-foot__col h3{font:600 16px/1.3 Poppins,sans-serif;text-transform:uppercase;color:#B9A366;margin:0 0 8px}
.opo-foot__contact a,.opo-foot__contact span{display:flex;gap:10px;align-items:flex-start}
.opo-foot__contact svg{flex:none;width:19px;height:19px;margin-top:3px;color:#B9A366}
.opo-foot__bar{border-top:1px solid rgba(185,163,102,.25);background:rgba(0,0,0,.5)}
.opo-foot__bar-in{display:flex;justify-content:space-between;gap:10px 24px;flex-wrap:wrap;padding:18px 0;font-size:14px;color:#9a9a9a}
.opo-foot__bar-in span:last-child{display:flex;gap:22px;flex-wrap:wrap}
.opo-foot__bar a{color:#bdbdbd}
@media (max-width:1024px){.opo-foot__cols{grid-template-columns:1fr 1fr}.opo-foot h2{font-size:28px}}
@media (max-width:767px){
 .opo-foot__wrap{width:calc(100% - 32px)}
 .opo-foot__cta-in{padding:40px 0}
 .opo-foot h2{font-size:23px}
 .opo-foot__btns,.opo-foot a.opo-foot__btn{width:100%}
 .opo-foot__cols{grid-template-columns:1fr 1fr;gap:30px 20px;padding:40px 0 34px}
 .opo-foot__brand,.opo-foot__contact{grid-column:1/-1}
 .opo-foot__bar-in{flex-direction:column;padding:16px 0 90px}
}

/* ---------- Header (inc/header.php): no animation, logo lined up with the page content ---------- */
.opo-head{position:sticky;top:0;z-index:1000;background:#fff;border-bottom:1px solid transparent;transition:box-shadow .25s,border-color .25s}
.admin-bar .opo-head{top:32px}
.opo-head.scrolled{box-shadow:0 10px 30px -18px rgba(0,0,0,.35);border-bottom-color:#eee6d6}
.opo-head__in{width:90%;max-width:1500px;margin:0 auto;display:flex;align-items:center;gap:28px;min-height:84px}
.opo-head__logo{flex:none;display:block;margin-right:auto}
.opo-head__logo img{display:block;width:230px;height:auto}
.opo-head__nav{display:flex;align-items:center}
.opo-head__menu{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:6px}
.opo-head__menu a{display:block;padding:10px 12px;font:500 15px/1.2 Roboto,sans-serif;text-transform:uppercase;letter-spacing:.02em;color:#000;text-decoration:none;position:relative}
.opo-head__menu a::after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;background:#B9A366;transform:scaleX(0);transition:transform .25s}
.opo-head__menu a:hover,.opo-head__menu a:focus{color:#000}
.opo-head__menu a:hover::after,.opo-head__menu .current-menu-item>a::after,.opo-head__menu .current-menu-ancestor>a::after{transform:scaleX(1)}
a.opo-head__btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 26px;border-radius:3px;background:linear-gradient(135deg,#E9D9A8 0%,#C9B074 42%,#A98C4E 100%);color:#14110D;font:600 14px/1 Poppins,sans-serif;text-transform:uppercase;letter-spacing:.03em;text-decoration:none;box-shadow:0 8px 20px rgba(169,140,78,.3)}
a.opo-head__btn:hover,a.opo-head__btn:focus{color:#14110D;background:linear-gradient(135deg,#F0E3BC 0%,#D2B97E 42%,#B5944F 100%)}
.opo-head__mob-extra{display:none}
.opo-head .opo-head__burger{display:none;width:46px;height:46px;padding:0;border:1px solid #e3dccb;border-radius:4px;background:#fff;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.opo-head .opo-head__burger:hover,.opo-head .opo-head__burger:focus{background:#fff;border-color:#B9A366;color:#000}
.opo-head__burger span{display:block;width:20px;height:2px;background:#000;transition:transform .25s,opacity .25s}
.opo-head.open .opo-head__burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.opo-head.open .opo-head__burger span:nth-child(2){opacity:0}
.opo-head.open .opo-head__burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
/* Header search (inc/search.php) */
.opo-head .opo-head__search{flex:none;width:46px;height:46px;padding:0;border:1px solid #e3dccb;border-radius:4px;background:#fff;color:#000;cursor:pointer;display:flex;align-items:center;justify-content:center}
.opo-head .opo-head__search:hover,.opo-head .opo-head__search:focus,.opo-head.searching .opo-head__search{background:#fff;border-color:#B9A366;color:#000}
.opo-head__search svg{width:21px;height:21px}
.opo-search{position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid #eee6d6;box-shadow:0 24px 40px -22px rgba(0,0,0,.4)}
.opo-search[hidden]{display:none}
.opo-search__in{width:90%;max-width:880px;margin:0 auto;padding:22px 0 26px}
.opo-search__box{display:flex;align-items:center;gap:12px;border:1px solid #d9cfb7;border-radius:4px;padding:0 8px 0 16px;background:#fff;transition:border-color .2s,box-shadow .2s}
.opo-search__box:focus-within{border-color:#B9A366;box-shadow:0 0 0 3px rgba(185,163,102,.18)}
.opo-search__box>svg{flex:none;width:22px;height:22px;color:#8f7a45}
.opo-search input[type=search]{flex:1;min-width:0;height:56px;border:0!important;outline:0;background:transparent!important;box-shadow:none!important;padding:0!important;font:400 18px/1.2 Roboto,sans-serif;color:#000}
.opo-search input[type=search]::-webkit-search-cancel-button{display:none}
.opo-search .opo-search__x{flex:none;width:40px;height:40px;padding:0;border:0;border-radius:3px;background:transparent;color:#555;cursor:pointer;display:flex;align-items:center;justify-content:center}
.opo-search .opo-search__x:hover,.opo-search .opo-search__x:focus{background:#F5F0E8;color:#000}
.opo-search__x svg{width:20px;height:20px}
.opo-search__list{list-style:none;margin:10px 0 0;padding:0;max-height:min(60vh,520px);overflow:auto}
.opo-search__list:empty{display:none}
.opo-search__list li{margin:0}
.opo-search__list a{display:flex;align-items:center;gap:16px;padding:10px 12px;border-radius:4px;color:#000;text-decoration:none}
.opo-search__list a:hover,.opo-search__list li.on a{background:#F5F0E8;color:#000}
.opo-search__list img,.opo-search__list .ph{flex:none;width:56px;height:56px;border-radius:3px;object-fit:cover;background:#eee6d6}
.opo-search__list .tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.opo-search__list .nm{font:500 17px/1.3 Roboto,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.opo-search__list .nm b{font-weight:500;background:linear-gradient(transparent 62%,rgba(185,163,102,.38) 62%)}
.opo-search__list .mt{font:400 14px/1.3 Roboto,sans-serif;color:#6b6250;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.opo-search__list .pr{flex:none;text-align:right;font:500 16px/1.2 Roboto,sans-serif;color:#8f7a45}
.opo-search__list .pr small{display:block;font-size:12px;color:#6b6250;font-weight:400}
body.opo-search-on .opo-wa-float{display:none}
.opo-search__empty{margin:16px 4px 0;font:400 16px/1.5 Roboto,sans-serif;color:#444}
.opo-search__empty a{color:#8f7a45;text-decoration:underline}
@media (max-width:767px){
 .opo-head .opo-head__search{width:44px;height:44px}
 .opo-search__in{width:calc(100% - 32px);padding:14px 0 18px}
 .opo-search input[type=search]{height:50px;font-size:16px}
 .opo-search__list{max-height:calc(100vh - 170px)}
 .opo-search__list a{gap:12px;padding:9px 6px}
 .opo-search__list img,.opo-search__list .ph{width:48px;height:48px}
 .opo-search__list .nm{font-size:16px}
 .opo-search__list .pr{font-size:14px}
}
/* Menu items stay on one line; tighter spacing on laptops; burger menu from 1200px down (the full menu no longer fits there) */
.opo-head__menu a{white-space:nowrap}
@media (max-width:1440px){.opo-head__menu{gap:0}.opo-head__menu a{padding:10px 9px;font-size:14px}.opo-head__in{gap:16px}.opo-head__logo img{width:200px}}
@media (max-width:1200px){
 .opo-head__in{min-height:70px}
 .opo-head .opo-head__burger{display:flex}
 .opo-head__btn--desk{display:none!important}
 .opo-head__nav{position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid #eee6d6;box-shadow:0 20px 40px -20px rgba(0,0,0,.35);flex-direction:column;align-items:stretch;padding:8px 5% 22px;display:none;max-height:calc(100vh - 70px);overflow:auto}
 .opo-head.open .opo-head__nav{display:flex}
 .opo-head__menu{flex-direction:column;align-items:stretch;gap:0}
 .opo-head__menu a{padding:16px 0;font-size:16px;border-bottom:1px solid #f0ebe0}
 .opo-head__menu a::after{display:none}
 .opo-head__menu .current-menu-item>a{color:#8f7a45}
 .opo-head__mob-extra{display:flex;flex-direction:column;gap:10px;margin-top:18px}
 .opo-head__mob-extra .opo-head__btn{width:100%;min-height:50px}
 .opo-head__call{display:flex;align-items:center;justify-content:center;min-height:48px;border:1px solid #d9cfb7;border-radius:3px;font:500 16px Roboto,sans-serif;color:#000;text-decoration:none}
}
@media (max-width:767px){.opo-head__in{width:calc(100% - 32px)}.opo-head__logo img{width:170px}.admin-bar .opo-head{top:0}}
body.opo-nav-on{overflow:hidden}

/* The header is now sticky (84px), so sticky cards and anchors sit below it */
.pv-aside{top:104px}
.pv-enq .left{top:110px}
.mk section[id],.mk [id="enquire"]{scroll-margin-top:96px}

/* ---------- Call-back pop-up (opo_modal) ---------- */
.opo-modal{position:fixed;inset:0;z-index:100001;background:rgba(10,10,10,.72);display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;transition:opacity .2s}
.opo-modal[hidden]{display:none}
.opo-modal.open{opacity:1}
body.opo-modal-on{overflow:hidden}
body.opo-modal-on .opo-wa-float,body.opo-modal-on .opo-stg,body.opo-modal-on .pv-bar{display:none!important}
.opo-modal__box{position:relative;width:100%;max-width:980px;max-height:calc(100vh - 48px);overflow:auto;display:grid;grid-template-columns:.85fr 1.15fr;background:#fff;border-radius:12px;box-shadow:0 40px 80px -20px rgba(0,0,0,.6);transform:translateY(12px);transition:transform .2s}
.opo-modal.open .opo-modal__box{transform:none}
.opo-modal .opo-modal__x{position:absolute;top:14px;right:14px;z-index:2;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:#f5f0e8;color:#000;cursor:pointer;display:flex;align-items:center;justify-content:center}
.opo-modal__x:hover,.opo-modal__x:focus{background:#ebe1cc;color:#000;border:0!important}
.opo-modal__x svg{width:20px;height:20px}
.opo-modal__side{background-color:#0b0b0b;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cg fill='none' stroke='%23B9A366' stroke-width='1' opacity='.16'%3E%3Crect x='21' y='21' width='30' height='30'/%3E%3Cpath d='M36 14.8 57.2 36 36 57.2 14.8 36z'/%3E%3Cpath d='M0 0l14.8 14.8M72 0 57.2 14.8M0 72l14.8-14.8M72 72 57.2 57.2'/%3E%3Cpath d='M36 0v14.8M36 72V57.2M0 36h14.8M72 36H57.2'/%3E%3C/g%3E%3C/svg%3E");background-size:72px 72px;color:#e6e6e6;padding:44px 38px;display:flex;flex-direction:column}
.opo-modal__eyebrow{font:600 14px/1.3 Poppins,sans-serif;text-transform:uppercase;color:#B9A366;margin:0 0 10px}
.opo-modal__side h2{font:600 30px/1.15 Poppins,sans-serif;text-transform:uppercase;color:#fff;margin:0 0 12px}
.opo-modal__lead{font:400 16px/1.55 Roboto,sans-serif;margin:0 0 22px;color:#d6d6d6}
.opo-modal__side ul{list-style:none;margin:0 0 26px;padding:0;border-top:1px solid rgba(185,163,102,.35)}
.opo-modal__side li{position:relative;padding:13px 0 13px 22px;border-bottom:1px solid rgba(185,163,102,.35);font:400 16px/1.4 Roboto,sans-serif;color:#fff}
.opo-modal__side li::before{content:"";position:absolute;left:2px;top:20px;width:8px;height:8px;background:#B9A366;transform:rotate(45deg)}
.opo-modal__zero{display:flex;align-items:baseline;gap:10px;margin:auto 0 18px}
.opo-modal__zero strong{font:600 44px/1 Poppins,sans-serif;color:#B9A366}
.opo-modal__zero span{font:500 15px/1.3 Roboto,sans-serif;color:#fff;text-transform:uppercase;letter-spacing:.04em}
.opo-modal__call{font:400 15px/1.5 Roboto,sans-serif;color:#bdbdbd;margin:0}
.opo-modal__call a{display:block;font:600 19px/1.4 Roboto,sans-serif;color:#fff!important;text-decoration:none}
.opo-modal__call a:hover{color:#B9A366!important}
.opo-modal__form{padding:44px 38px 34px}
@media (max-width:860px){
 .opo-modal{padding:0;align-items:flex-end}
 .opo-modal__box{grid-template-columns:1fr;max-height:92vh;border-radius:14px 14px 0 0}
 .opo-modal__side{padding:26px 22px 18px}
 .opo-modal__side h2{font-size:23px;padding-right:44px}
 .opo-modal__lead{margin-bottom:0}
 .opo-modal__side ul,.opo-modal__zero,.opo-modal__call,.opo-modal__eyebrow{display:none}
 .opo-modal__form{padding:22px 22px 28px}
 .opo-modal__x{background:rgba(255,255,255,.12);color:#fff}
 .opo-modal__x:hover,.opo-modal__x:focus{background:rgba(255,255,255,.2);color:#fff}
}

/* Enquiry section on project pages: both columns sticky (no empty gap beside the longer one) */
@media (min-width:1025px){.pv-enq .in>*{position:sticky;top:110px}}

/* ---------- Breadcrumb bar (opo_place_breadcrumb): slim strip under the header ---------- */
.opo-crumbs{background:#faf8f4;border-bottom:1px solid #eee6d6}
.opo-crumbs__in{width:90%;max-width:1500px;margin:0 auto;list-style:none;padding:0;display:flex;align-items:center;flex-wrap:nowrap;gap:2px;min-height:46px;overflow-x:auto;scrollbar-width:none;font:400 14px/1.3 Roboto,sans-serif}
.opo-crumbs__in::-webkit-scrollbar{display:none}
.opo-crumbs li{display:flex;align-items:center;gap:2px;white-space:nowrap;flex:none}
.opo-crumbs .sep{width:16px;height:16px;color:#c9b98e;margin:0 4px}
.opo-crumbs a{display:inline-flex;align-items:center;gap:6px;padding:6px 4px;color:#6b6b66;text-decoration:none;border-radius:4px}
.opo-crumbs a:hover,.opo-crumbs a:focus{color:#8f7a45}
.opo-crumbs .home{width:16px;height:16px;color:#8f7a45}
.opo-crumbs [aria-current]{color:#000;font-weight:500;padding:6px 4px}
@media (max-width:767px){.opo-crumbs__in{width:calc(100% - 32px);min-height:42px;font-size:13px}.opo-crumbs a span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}}
.pv-top{padding-top:26px}
@media (max-width:767px){.pv-top{padding-top:0}} /* phones: the full-width gallery sits right under the header */

/* Breadcrumb inside a photo hero: no strip, light text, sits under the intro */
.opo-crumbs--hero{background:none;border:0;margin:22px 0 0}
.opo-crumbs--hero .opo-crumbs__in{width:auto;max-width:none;margin:0;min-height:0;font-size:14px}
.opo-crumbs--hero a{color:rgba(255,255,255,.75);padding:4px 2px}
.opo-crumbs--hero a:hover,.opo-crumbs--hero a:focus{color:#fff}
.opo-crumbs--hero .home{color:var(--gold,#B9A366)}
.opo-crumbs--hero .sep{color:rgba(185,163,102,.8)}
.opo-crumbs--hero [aria-current]{color:var(--gold,#B9A366);padding:4px 2px}
.pl-hero .opo-crumbs--hero + .ctas{margin-top:28px}
@media (max-width:767px){.opo-crumbs--hero .opo-crumbs__in{width:auto}.opo-crumbs--hero a span{position:static;width:auto;height:auto;overflow:visible;clip:auto}}

/* Breadcrumb under the title on light pages (project and resale details) */
.opo-crumbs--plain{margin:12px 0 16px}
.opo-crumbs--plain a{color:#6b6b66}
.opo-crumbs--plain a:hover,.opo-crumbs--plain a:focus{color:#8f7a45}
.opo-crumbs--plain .home{color:#8f7a45}
.opo-crumbs--plain .sep{color:#c9b98e}
.opo-crumbs--plain [aria-current]{color:#8f7a45;max-width:420px;overflow:hidden;text-overflow:ellipsis}
@media (max-width:767px){.opo-crumbs--plain [aria-current]{max-width:220px}}

/* ---------- Facts band (project + resale): gold pattern, icons, no plain black ---------- */
.pv-facts{background-color:#0b0b0b;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cg fill='none' stroke='%23B9A366' stroke-width='1' opacity='.16'%3E%3Crect x='21' y='21' width='30' height='30'/%3E%3Cpath d='M36 14.8 57.2 36 36 57.2 14.8 36z'/%3E%3Cpath d='M0 0l14.8 14.8M72 0 57.2 14.8M0 72l14.8-14.8M72 72 57.2 57.2'/%3E%3Cpath d='M36 0v14.8M36 72V57.2M0 36h14.8M72 36H57.2'/%3E%3C/g%3E%3C/svg%3E");background-size:72px 72px;border-top:1px solid rgba(185,163,102,.35);border-bottom:1px solid rgba(185,163,102,.35)}
.pv-facts .in{grid-template-columns:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column}
.pv-facts .f{display:flex;align-items:center;justify-content:center;gap:16px;padding:30px 22px;text-align:left;border-left:1px solid rgba(185,163,102,.22)}
.pv-facts .f i{flex:none;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(185,163,102,.55);background:rgba(185,163,102,.08);color:#d9c58f}
.pv-facts .f i svg{width:24px;height:24px}
.pv-facts b{font:600 26px/1.15 Poppins,sans-serif;color:#E2CD8F}
.pv-facts span{font:400 15px/1.4 Roboto,sans-serif;margin-top:4px;color:#cfcfcf}
/* thank-you hero: same pattern */
.ty-hero{background-color:#0b0b0b;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cg fill='none' stroke='%23B9A366' stroke-width='1' opacity='.16'%3E%3Crect x='21' y='21' width='30' height='30'/%3E%3Cpath d='M36 14.8 57.2 36 36 57.2 14.8 36z'/%3E%3Cpath d='M0 0l14.8 14.8M72 0 57.2 14.8M0 72l14.8-14.8M72 72 57.2 57.2'/%3E%3Cpath d='M36 0v14.8M36 72V57.2M0 36h14.8M72 36H57.2'/%3E%3C/g%3E%3C/svg%3E");background-size:72px 72px}
@media (max-width:1024px){.pv-facts .in{grid-auto-flow:row;grid-template-columns:1fr 1fr}.pv-facts .f{justify-content:flex-start}}
@media (max-width:767px){.pv-facts .f{padding:18px 12px;gap:10px}.pv-facts .f i{width:40px;height:40px}.pv-facts .f i svg{width:20px;height:20px}.pv-facts b{font-size:19px}.pv-facts span{font-size:13px}}

/* Gallery adapts to the number of photos (no empty boxes) */
.pv-gal--1{grid-template-columns:1fr;grid-template-rows:520px}
.pv-gal--1 .g0{grid-row:auto}
.pv-gal--2{grid-template-columns:2fr 1fr;grid-template-rows:520px}
.pv-gal--2 .g0{grid-row:auto}
.pv-gal--3{grid-template-columns:2fr 1fr}
.pv-gal--4{grid-template-columns:2fr 1fr 1fr}
.pv-gal--4 .g3{grid-column:2/4}
@media (max-width:1024px){.pv-gal--1,.pv-gal--2{grid-template-columns:1fr;grid-template-rows:380px}.pv-gal--2 .g1{display:none}.pv-gal--3 .g0,.pv-gal--4 .g0{grid-column:span 2}.pv-gal--4 .g3{grid-column:auto;display:none}}
@media (max-width:767px){.pv-gal--1,.pv-gal--2{grid-template-rows:280px}}
/* Menu links to other sites (Rentals on vistaoman.com) get a small arrow */
.opo-head__menu a[target="_blank"]{padding-right:22px!important;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M4 2h6v6M10 2 3 9' fill='none' stroke='%23B9A366' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 6px center/10px}
.opo-foot .opo-ext{color:#B9A366;font-size:.85em}

/* ---------- Readable gold (Lighthouse contrast, Nov 2026) ----------
   Brand gold #B9A366 is 2.5:1 on white and #8f7a45 is 4.2:1, both under the 4.5:1 minimum for
   normal text. Gold text on light backgrounds uses a deeper bronze (#7a6636, 5.6:1 on white,
   4.9:1 on the cream sections); on black it keeps the bright gold (8:1). */
.mk{--gold-t:#7a6636}
.mk-eyebrow,.v3-why .num,.wo-item .num,.ty-next .n,.pv-ud .type,.pv-ud .from b,.pv-price .amt{color:var(--gold-t)}
.v3-light .mk-eyebrow,.v3-dark .mk-eyebrow,.v3-hero .mk-eyebrow,.v3-band .mk-eyebrow,.v3-proof .mk-eyebrow,.v3-enq .mk-eyebrow,.ty-hero .mk-eyebrow,.v3-dark .wo-item .num,.v3-light .wo-item .num{color:var(--gold)}
.mk .v3-find label.seg span,.mk .v3-find label.seg svg,.mk .v3-why .num{color:var(--gold-t)}
/* Form buttons: dark text on the gold gradient (white on gold was 2.5:1) */
.elementor-form .elementor-button[type=submit]{background:linear-gradient(135deg,#E9D9A8 0%,#C9B074 42%,#A98C4E 100%)!important;color:#14110D!important;border:0!important}
.elementor-form .elementor-button[type=submit]:hover,.elementor-form .elementor-button[type=submit]:focus{background:linear-gradient(135deg,#F0E3BC 0%,#D2B97E 42%,#B5944F 100%)!important;color:#14110D!important}
.elementor-form .elementor-button[type=submit] .elementor-button-text{color:inherit!important}
