:root{--green:#0d3b32;--deep:#082a24;--gold:#c9a56a;--cream:#f6f2e9;--ink:#18302b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}header{height:92px;display:flex;align-items:center;gap:40px;padding:12px 5vw;position:absolute;z-index:5;width:100%;background:rgba(255,255,255,.94)}.brand img{width:190px;height:66px;object-fit:contain}nav{display:flex;gap:34px;margin-left:auto}a{text-decoration:none;color:inherit}nav a{font-size:12px;letter-spacing:1.8px;font-weight:700}.wa.small{border:1px solid var(--green);padding:13px 17px;font-size:11px;letter-spacing:1px}.hero{height:88vh;min-height:650px;background:url('assets/hero-villa.jpg') center 45%/cover no-repeat;position:relative}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,30,25,.62),rgba(3,30,25,.08) 65%)}.hero-copy{position:absolute;left:7vw;bottom:13%;color:white;max-width:720px}.hero-copy>p:first-child,.section-head span,.about span{letter-spacing:3px;font-size:12px;font-weight:700}.hero h1{font-family:Georgia,serif;font-weight:400;font-size:76px;line-height:.98;margin:20px 0}.lead{font-size:18px;line-height:1.6;max-width:570px}.btn{display:inline-block;padding:17px 25px;margin:15px 8px 0 0;text-transform:uppercase;font-size:11px;letter-spacing:1.5px;font-weight:700}.gold{background:var(--gold);color:#fff}.ghost{border:1px solid rgba(255,255,255,.8);color:#fff}.searchbar{width:86%;margin:-34px auto 0;position:relative;z-index:6;background:white;box-shadow:0 10px 35px #0002;padding:18px;display:grid;grid-template-columns:1fr 1fr 1fr 1.2fr .7fr;gap:10px}.searchbar select,.searchbar input,.searchbar button{border:1px solid #ddd;background:white;padding:15px;font-size:13px}.searchbar button{background:var(--green);color:white;border:0;text-transform:uppercase;letter-spacing:1px}.section{padding:100px 7vw}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:40px}.section h2,.about h2,.contact h2{font-family:Georgia,serif;font-weight:400;font-size:46px;margin:10px 0}.section-head p{color:#6d7774}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.card{cursor:pointer}.photo{height:290px;background:#ddd center/cover;position:relative}.tag{position:absolute;top:14px;left:14px;background:white;padding:8px 11px;font-size:10px;letter-spacing:1px;font-weight:bold}.card h3{font-family:Georgia,serif;font-size:24px;font-weight:400;margin:17px 0 8px}.meta{font-size:13px;color:#71807c}.price{font-weight:bold;margin-top:10px}.empty{text-align:center;display:none}.about{background:var(--cream);padding:90px 12vw;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about p{font-size:18px;line-height:1.8}.contact{text-align:center;background:var(--deep);color:white;padding:90px 20px}.contact>p{letter-spacing:2px;font-size:11px}.phone{margin-top:20px;color:#cfd8d5}footer{display:flex;align-items:center;gap:30px;padding:28px 6vw}footer img{width:150px;height:60px;object-fit:contain}footer p{margin-right:auto;font-size:12px;color:#65716e}footer a{font-size:11px;color:#999}.modal{position:fixed;inset:0;background:#0009;z-index:20;display:none;padding:5vh 5vw;overflow:auto}.modal.show{display:block}.modal-box{max-width:1000px;margin:auto;background:white;position:relative}.close{position:absolute;right:15px;top:10px;border:0;background:white;font-size:30px;z-index:2}.detail-img{height:500px;background:center/cover}.detail-copy{padding:35px}.detail-copy h2{font-family:Georgia,serif;font-size:38px;font-weight:400}.facts{display:flex;gap:25px;flex-wrap:wrap;border-top:1px solid #ddd;border-bottom:1px solid #ddd;padding:18px 0}.desc{line-height:1.7;color:#52605c}.admin{background:#f5f6f4}.admin-wrap{max-width:1200px;margin:auto;padding:40px 20px}.admin-head{display:flex;justify-content:space-between;align-items:center}.admin-head img{width:170px}.admin-grid{display:grid;grid-template-columns:390px 1fr;gap:30px}.panel{background:white;padding:25px;box-shadow:0 2px 15px #0000000c}.form label{display:block;font-size:11px;font-weight:bold;letter-spacing:1px;margin:14px 0 6px}.form input,.form select,.form textarea{width:100%;padding:11px;border:1px solid #d7dcd9}.form textarea{height:110px}.form button,.danger{padding:12px 16px;border:0;background:var(--green);color:white;margin-top:14px}.admin-list .item{display:grid;grid-template-columns:90px 1fr auto;gap:15px;align-items:center;border-bottom:1px solid #eee;padding:12px 0}.admin-list img{width:90px;height:65px;object-fit:cover}.item button{border:1px solid #ccc;background:white;padding:7px;margin:2px}.item .delete{color:#a33}.hint{font-size:12px;color:#78837f;line-height:1.5}@media(max-width:800px){header{height:72px;padding:8px 4vw}.brand img{width:135px;height:55px}nav{display:none}.wa.small{margin-left:auto}.hero{min-height:620px}.hero h1{font-size:49px}.hero-copy{left:6vw;right:6vw}.searchbar{grid-template-columns:1fr 1fr;width:90%;margin-top:-45px}.searchbar button{grid-column:1/-1}.section{padding:75px 5vw}.section-head{display:block}.grid{grid-template-columns:1fr}.photo{height:260px}.about{grid-template-columns:1fr;gap:15px;padding:70px 7vw}.admin-grid{grid-template-columns:1fr}.detail-img{height:300px}footer p{display:none}}
.photo-count{position:absolute;right:14px;bottom:14px;background:rgba(8,42,36,.86);color:#fff;padding:7px 10px;font-size:11px;letter-spacing:.5px}.gallery{height:560px;background:#111;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.gallery img{width:100%;height:100%;object-fit:contain;display:block;user-select:none}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border:0;border-radius:50%;background:rgba(255,255,255,.88);color:var(--deep);font-size:38px;line-height:1;cursor:pointer}.gallery-arrow.prev{left:18px}.gallery-arrow.next{right:18px}.gallery-count{position:absolute;right:18px;bottom:18px;background:rgba(0,0,0,.62);color:#fff;padding:8px 12px;border-radius:20px;font-size:12px}.photo-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.preview-photo{position:relative;aspect-ratio:1.35;background:#eee}.preview-photo img{width:100%;height:100%;object-fit:cover}.preview-photo button{position:absolute;right:3px;top:3px;width:25px;height:25px;margin:0;padding:0;border-radius:50%;background:#fff;color:#922;font-size:18px}.preview-photo span{position:absolute;left:4px;bottom:4px;background:var(--green);color:#fff;padding:3px 5px;font-size:8px;letter-spacing:.5px}@media(max-width:800px){.gallery{height:360px}.gallery-arrow{width:44px;height:44px;font-size:32px}.gallery-arrow.prev{left:10px}.gallery-arrow.next{right:10px}}
.login-panel{max-width:430px;margin:70px auto}.admin-title-row{display:flex;align-items:start;justify-content:space-between;gap:20px}.admin-title-row .danger{margin-top:20px}.login-panel h1{font-family:Georgia,serif;font-weight:400}.login-panel button{width:100%}@media(max-width:800px){.admin-title-row{align-items:center}.admin-title-row h1{font-size:28px}}
/* v6 property experience */
body.modal-open{overflow:hidden}.card{background:#fff;border:1px solid #e7e9e7;transition:transform .22s ease,box-shadow .22s ease}.card:hover{transform:translateY(-4px);box-shadow:0 14px 34px #082a2414}.card-body{padding:18px 18px 20px}.card-location{text-transform:uppercase;letter-spacing:1.5px;font-size:10px;font-weight:700;color:#7a8783}.card h3{margin:9px 0 11px}.card-facts{display:flex;gap:0;flex-wrap:wrap}.card-facts span+span:before{content:'·';margin:0 8px;color:#a6aeab}.view-link{border-top:1px solid #eceeec;margin-top:16px;padding-top:13px;font-size:11px;text-transform:uppercase;letter-spacing:1px;font-weight:700;color:var(--green);display:flex;justify-content:space-between}.modal{padding:3vh 3vw}.modal-box{max-width:1240px}.property-detail{background:#fff}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:55px;padding:48px 55px 55px}.detail-eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:700;color:#77837f}.detail-main h2{font-family:Georgia,serif;font-size:44px;line-height:1.08;font-weight:400;margin:12px 0 12px}.detail-price{font-size:23px;font-weight:700;color:var(--green);margin-bottom:26px}.facts{gap:0}.facts span{padding-right:26px;margin-right:26px;border-right:1px solid #ddd;font-size:12px;color:#6f7b77}.facts span:last-child{border-right:0}.facts b{display:block;font-family:Georgia,serif;font-size:24px;font-weight:400;color:var(--ink);margin-bottom:4px}.detail-section{padding-top:28px}.detail-section h4{font-family:Georgia,serif;font-size:24px;font-weight:400;margin:0 0 13px}.amenities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;font-size:14px;color:#52605c}.enquiry-card{background:var(--cream);padding:30px;height:max-content;position:sticky;top:20px}.enquiry-card h3{font-family:Georgia,serif;font-size:28px;font-weight:400;line-height:1.15;margin:18px 0 10px}.enquiry-card p{font-size:14px;line-height:1.6;color:#65716e}.status-pill{display:inline-block;background:#e4eee9;color:var(--green);padding:7px 10px;font-size:10px;letter-spacing:1px;text-transform:uppercase;font-weight:700}.btn.full{display:block;text-align:center;width:100%;margin:12px 0 0}.outline-dark{border:1px solid var(--green);color:var(--green);background:transparent}.enquiry-card .gold{color:#fff}.close{width:44px;height:44px;border-radius:50%;box-shadow:0 3px 15px #0002;right:18px;top:18px;cursor:pointer}.gallery{height:min(68vh,700px)}
@media(max-width:800px){.modal{padding:0}.modal-box{min-height:100vh}.gallery{height:43vh;min-height:310px}.detail-layout{grid-template-columns:1fr;padding:30px 22px 40px;gap:28px}.detail-main h2{font-size:34px}.facts span{padding-right:14px;margin-right:14px;margin-bottom:10px}.amenities{grid-template-columns:1fr}.enquiry-card{position:static}.close{right:10px;top:10px}.card{box-shadow:0 5px 18px #082a240d}}

/* v8 Airbnb booking */
.airbnb-note{margin:18px 0 -3px;text-align:center;font-size:12px;color:#65716e}.btn.airbnb{background:#ff385c;color:#fff;border:1px solid #ff385c}
