:root{--ink:#23302a;--forest:#20382e;--cream:#f2eee5;--gold:#b99a61;--line:#d4cbb9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.6 "Segoe UI",Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid #9b7538;outline-offset:4px}.skip{position:fixed;top:-100px;left:20px;background:#fff;padding:10px;z-index:30}.skip:focus{top:10px}header{height:92px;padding:15px 5vw;background:#182521;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand img{width:155px;height:68px;object-fit:contain}.sun-logo{width:155px}nav{display:flex;gap:28px;font-size:12px}main{max-width:1700px;margin:auto;padding:55px 4vw 80px}.intro{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:8vw;margin-bottom:38px}.eyebrow{font-size:10px;letter-spacing:.2em;font-weight:700;color:#81663d;margin:0 0 15px}h1{font:clamp(44px,5vw,78px)/.98 Georgia,serif;letter-spacing:-.045em;margin:0}h1 em{color:#7a6744;font-weight:400}.intro>p{max-width:480px;color:#626c65}.filters{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:20px}.filters button{border:1px solid var(--line);background:#faf8f3;padding:11px 17px;cursor:pointer}.filters button[aria-pressed=true]{background:var(--forest);color:#fff;border-color:var(--forest)}.filters span{opacity:.7;margin-left:8px;font-size:11px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}.plan-shell{background:#fff;border:1px solid var(--line);padding:15px;box-shadow:0 20px 60px #26352c12}.plan{position:relative;isolation:isolate;overflow:hidden}.plan>img{display:block;width:100%;aspect-ratio:2048/1153;object-fit:cover}.marker{position:absolute;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;border:2px solid #fff;background:#20382ee8;color:#fff;font-weight:700;box-shadow:0 5px 15px #0008;cursor:pointer;transition:.2s;z-index:2}.marker:hover,.marker:focus-visible,.marker[aria-pressed=true]{transform:translate(-50%,-50%) scale(1.17);background:#f4e7c9;color:#17271f;border-color:#20382e;z-index:3}.marker.dim{opacity:.18}.plan-shell>p{font-size:11px;color:#69736b;margin:12px 3px 0}aside{position:sticky;top:20px;background:#fff;border-top:3px solid var(--gold);padding:28px;box-shadow:0 18px 50px #26352c12}aside h2{font:40px/1 Georgia,serif;margin:3px 0 8px}aside .status{font-size:11px;color:#6d746f}.facts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:24px 0}.facts div{padding:14px 10px}.facts div:nth-child(odd){border-right:1px solid var(--line)}.facts strong{display:block;font:24px Georgia,serif}.facts span{font-size:10px;color:#6b756d}.actions{display:grid;gap:8px}.actions a{display:flex;justify-content:space-between;gap:15px;padding:13px 15px;background:var(--forest);color:#fff;font-size:12px}.actions a.secondary{background:#fff;color:var(--forest);border:1px solid var(--forest)}.detail-note{font-size:10px;line-height:1.6;color:#68716b;margin-top:16px}.villa-strip{display:flex;gap:7px;flex-wrap:wrap;margin-top:20px}.villa-strip button{border:1px solid var(--line);background:transparent;padding:9px 13px;font-size:11px;cursor:pointer}.villa-strip button[aria-pressed=true]{background:var(--forest);color:#fff}.villa-strip button.dim{display:none}footer{display:flex;justify-content:space-between;gap:20px;padding:25px 5vw;background:#182521;color:#dfe4dc;font-size:11px}footer strong{letter-spacing:.14em}@media(max-width:950px){.workspace{grid-template-columns:1fr}.workspace aside{position:relative;top:auto}.intro{grid-template-columns:1fr;gap:20px}.marker{width:36px;height:36px}}@media(max-width:600px){header{height:76px;padding:10px 5vw}.brand img{width:126px;height:55px}nav{gap:12px}nav a:nth-child(2){display:none}main{padding:38px 4vw 60px}.intro{margin-bottom:28px}h1{font-size:42px}.plan-shell{padding:7px;overflow:auto}.plan{min-width:720px}.marker{width:34px;height:34px}.workspace{gap:14px}aside{padding:22px}.filters{flex-wrap:nowrap;overflow:auto}.filters button{white-space:nowrap}footer{flex-direction:column}}
