:root{--ink:#07131d;--deep:#0b2130;--gold:#d7ae6a;--cream:#f6f0e7;--line:rgba(215,174,106,.32)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#06131d;color:#fff;font-family:"DM Sans",sans-serif}
a{color:inherit}.property-topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid var(--line);position:absolute;inset:0 0 auto;z-index:2;background:linear-gradient(180deg,rgba(3,10,15,.8),transparent)}
.property-brand{text-decoration:none;display:flex;align-items:center;gap:12px;letter-spacing:.12em;font-weight:700}.property-brand b{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--gold);color:var(--gold);font-family:"Playfair Display",serif;font-size:24px}.property-brand em{color:var(--gold);font-style:normal}
.property-topbar>a:last-child{font-size:14px;text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:4px}
.property-hero{min-height:76vh;display:grid;grid-template-columns:1.45fr .85fr;position:relative}.property-visual{min-height:76vh;position:relative;overflow:hidden}.property-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 45%,#06131d),linear-gradient(0deg,rgba(2,8,12,.5),transparent 50%)}.property-visual img{width:100%;height:100%;object-fit:cover;position:absolute}
.property-copy{display:flex;flex-direction:column;justify-content:center;padding:120px 6vw 70px 2vw;position:relative}.property-copy small{color:var(--gold);letter-spacing:.19em;font-weight:700}.property-copy h1{font-family:"Playfair Display",serif;font-size:clamp(44px,5.4vw,78px);line-height:.98;margin:24px 0;max-width:760px}.property-copy p{font-size:18px;line-height:1.65;color:#c7d0d5;max-width:480px}.direct-signals{display:flex;gap:20px;flex-wrap:wrap;margin-top:24px;color:#e7d5b7;font-size:14px}
.property-gallery{padding:64px 6vw 76px;background:#081824;border-top:1px solid var(--line)}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.gallery-heading small{color:var(--gold);letter-spacing:.18em;font-weight:700}.gallery-heading h2{font:600 clamp(32px,4vw,52px)/1.05 "Playfair Display",serif;margin:0}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.gallery-item{appearance:none;border:1px solid transparent;background:transparent;padding:0;cursor:pointer;aspect-ratio:4/3;overflow:hidden;position:relative}.gallery-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease}.gallery-item:hover img,.gallery-item:focus-visible img{transform:scale(1.035)}.gallery-item.is-active{border-color:var(--gold)}.gallery-item:focus-visible{outline:2px solid #fff;outline-offset:3px}
.property-details{padding:72px 6vw 80px;background:#0a1c29;border-top:1px solid var(--line)}.facts{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));border:1px solid var(--line);margin-bottom:64px}.facts div{padding:25px 22px;border-right:1px solid var(--line)}.facts div:last-child{border-right:0}.facts strong{display:block;color:#fff;font-family:"Playfair Display",serif;font-size:30px}.facts span{display:block;color:#aeb9c0;font-size:13px;margin-top:7px;text-transform:uppercase;letter-spacing:.12em}.detail-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw}.detail-grid small{color:var(--gold);letter-spacing:.18em;font-weight:700}.detail-grid h2{font:600 clamp(34px,4vw,54px)/1.08 "Playfair Display",serif;margin:15px 0 22px}.detail-grid p{color:#bac5cb;font-size:17px;line-height:1.7;max-width:720px}.detail-grid ul{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;list-style:none;padding:0;margin:16px 0 30px}.detail-grid li{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.1);color:#e6ecef}.detail-grid li:before{content:"✓";color:var(--gold);margin-right:10px}.direct-book{display:inline-block;text-decoration:none;background:var(--gold);color:#07131d;font-weight:700;padding:16px 22px}.tax-note{font-size:13px!important;color:#8fa0aa!important;margin-top:18px}
.booking{background:var(--cream);color:var(--ink);padding:72px 6vw 88px;display:grid;grid-template-columns:.65fr 1.35fr;gap:7vw;align-items:start}.booking small{color:#986b2a;letter-spacing:.18em;font-weight:700}.booking h2{font-family:"Playfair Display",serif;font-size:clamp(36px,4vw,58px);margin:14px 0}.booking p{font-size:17px;line-height:1.7;color:#49545c}.widget-shell{background:#fff;padding:28px;border:1px solid #e0d3c0;box-shadow:0 18px 55px rgba(5,20,30,.12);min-height:150px}
.property-footer{padding:30px 6vw;display:flex;justify-content:space-between;gap:20px;color:#9daab2;border-top:1px solid rgba(255,255,255,.08);font-size:14px}.property-footer a{color:var(--gold)}
@media(max-width:820px){.property-topbar{padding:0 20px}.property-brand span:last-child{display:none}.property-hero{grid-template-columns:1fr}.property-visual{min-height:54vh}.property-visual:after{background:linear-gradient(0deg,#06131d,transparent 55%)}.property-copy{padding:30px 22px 58px}.property-gallery{padding:48px 22px 56px}.gallery-heading{display:block}.gallery-heading h2{margin-top:10px}.gallery-grid{grid-template-columns:1fr 1fr;gap:8px}.property-details{padding:52px 22px}.facts{grid-template-columns:1fr 1fr;margin-bottom:45px}.facts div{border-bottom:1px solid var(--line)}.facts div:nth-child(even){border-right:0}.detail-grid{grid-template-columns:1fr;gap:38px}.detail-grid ul{grid-template-columns:1fr}.booking{grid-template-columns:1fr;padding:56px 22px}.widget-shell{padding:16px}.property-footer{flex-direction:column;padding:28px 22px}}
