*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:#f6f4ee;color:#243b3b;font:16px/1.75 Arial,sans-serif}a{color:inherit;text-underline-offset:4px}header,main,footer{max-width:1200px;margin:auto}header{padding:28px 30px;display:flex;justify-content:space-between;align-items:center;gap:24px;border-bottom:1px solid #d6dcd3}.brand{text-decoration:none;font:24px Georgia,serif}.brand small{display:block;font:9px Arial,sans-serif;letter-spacing:3px;padding-left:25px;margin-top:4px}nav{display:flex;gap:24px;font-size:13px}nav a{text-decoration:none}nav a[aria-current]{border-bottom:1px solid}main{padding:0 30px}.intro{padding:70px 0 55px;max-width:850px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:bold;color:#687e6e}h1{font:clamp(42px,6vw,70px)/1.12 Georgia,serif;letter-spacing:-2px;margin:22px 0}h1 em{font-weight:normal;color:#637f65}.intro>p:not(.eyebrow){color:#657570;font-size:17px}.jump{display:flex;gap:15px;margin-top:30px;flex-wrap:wrap}.jump a{padding:9px 16px;border:1px solid #c9d2c5;border-radius:30px;text-decoration:none;font-size:12px}.listing{background:#fff;border:1px solid #dce1d7;border-radius:18px;padding:35px;margin-bottom:30px}.listing-top{display:flex;justify-content:space-between;align-items:center;gap:25px;border-bottom:1px solid #e2e7df;padding-bottom:22px}h2{font:34px/1.25 Georgia,serif;margin:8px 0}.subtitle{font-size:13px;color:#63746b;margin-bottom:0}.price{font:42px Georgia,serif;white-space:nowrap}.price span{display:block;font:11px Arial,sans-serif;margin-top:10px;color:#63746b}.details{display:grid;grid-template-columns:1.4fr 1fr;gap:55px;padding-top:15px}.amenities{display:flex;flex-wrap:wrap;list-style:none;padding:0;gap:9px}.amenities li{font-size:12px;background:#eef3eb;border-radius:6px;padding:6px 12px}.details aside{background:#f6f7f2;border-radius:12px;padding:24px;margin-top:15px;font-size:13px}h3{font:23px/1.3 Georgia,serif;margin:0 0 14px}.button{display:inline-block;background:#304f43;color:white;padding:12px 18px;border-radius:7px;text-decoration:none;font-size:13px}.button:hover{background:#20382e}.contact{line-height:1.9;margin-bottom:0}.photo-note{font-size:12px;color:#6b786e}.gallery-section{margin-top:35px;padding-top:25px;border-top:1px solid #e2e7df}.gallery-title{display:flex;align-items:center;justify-content:space-between;gap:16px}.gallery-title h3{margin:0}.gallery-title span{font-size:11px;color:#63746b}.gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:20px}.gallery-photo{position:relative;border-radius:8px;overflow:hidden;background:#e9eee7;aspect-ratio:4/3;display:block}.gallery-photo img{width:100%;height:100%;object-fit:cover;transition:transform .2s}.gallery-photo:hover img{transform:scale(1.04)}.gallery-photo span{position:absolute;bottom:5px;right:7px;color:#fff;background:#1c302ad9;padding:0 7px;border-radius:4px;font-size:10px}footer{padding:25px 30px 45px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#62766b}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #b18740;outline-offset:4px}dialog{width:min(1000px,95vw);max-height:94dvh;border:0;border-radius:12px;background:#12251f;color:white;padding:18px}dialog::backdrop{background:#000d}.viewer-toolbar,.viewer-controls{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:13px}.viewer-toolbar p{margin:0}dialog button{background:transparent;color:inherit;border:1px solid #ffffff55;border-radius:6px;padding:8px 14px}#full-photo{width:100%;height:65dvh;object-fit:contain;display:block;margin:12px 0}.viewer-controls{justify-content:center}@media(max-width:700px){header{padding:20px;align-items:flex-start}.brand{font-size:19px}nav{gap:12px;flex-wrap:wrap;justify-content:flex-end;font-size:11px;max-width:160px}main{padding:0 16px}.intro{padding:40px 3px}.intro>p:not(.eyebrow){font-size:14px}h1{letter-spacing:-1px}.listing{padding:23px 18px}.listing-top{align-items:flex-start;flex-direction:column;gap:18px}h2{font-size:28px}.price{font-size:34px}.details{grid-template-columns:1fr;gap:5px;font-size:14px}.details aside{padding:20px}.gallery-title{align-items:flex-start;flex-direction:column;gap:6px}.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.gallery-title h3{font-size:22px}footer{padding:20px 18px;font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
