:root{--ink:#17352f;--cream:#f5f1e8;--paper:#fffdf8;--orange:#e95d2a;--line:#d8d4ca;--muted:#6e756f}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}
header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1120px)/2));border-bottom:1px solid var(--line);background:rgba(245,241,232,.94)}
.brand{font:bold 24px Georgia,serif;color:var(--ink);text-decoration:none}.brand span{color:var(--orange)}.tagline,.micro,footer{color:var(--muted);font-size:13px}
main{max-width:1120px;margin:auto;padding:0 24px}.hero{padding:88px 0 78px;max-width:860px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.14em;color:var(--orange)}
h1,h2,h3,p{margin-top:0}h1{font:700 clamp(46px,7vw,88px)/.98 Georgia,serif;letter-spacing:-.045em;margin:18px 0 28px}h1 em{color:var(--orange);font-weight:400}
.hero>p:not(.eyebrow,.micro){font-size:20px;max-width:600px}.url-form{display:flex;background:var(--paper);border:1px solid var(--ink);padding:6px;margin:34px 0 10px;box-shadow:5px 5px 0 var(--ink)}
input,textarea{width:100%;font:inherit;padding:13px;border:1px solid var(--line);background:#fff}textarea{min-height:120px;resize:vertical}.url-form input{border:0;outline:0}.url-form button,button{border:0;background:var(--orange);color:white;font-weight:750;padding:14px 20px;cursor:pointer}
.recent,.discussion{padding:52px 0 90px;border-top:1px solid var(--line)}.section-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px}.section-title h2{font:600 32px Georgia,serif;margin:0}.section-title span{font-size:13px;color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.listing-card{min-height:180px;padding:24px;background:var(--paper);border:1px solid var(--line);color:var(--ink);text-decoration:none;display:flex;flex-direction:column}.listing-card:hover{border-color:var(--orange);transform:translateY(-2px)}.listing-card h3{font:600 22px Georgia,serif;margin:12px 0 auto}.listing-card div{display:flex;justify-content:space-between;font-size:13px}
.back{display:inline-block;margin:28px 0;color:var(--ink)}.property{display:grid;grid-template-columns:2fr 1fr;gap:60px;padding:50px 0 70px}.property h1{font-size:58px}.price{font:600 30px Georgia,serif;margin-bottom:16px}.details{color:#4f5b56}.source{color:var(--orange);font-weight:700}.edit{background:var(--paper);border:1px solid var(--line);padding:18px;align-self:start}.edit summary{cursor:pointer;font-weight:700}.edit form,.comment-form{display:grid;gap:14px;margin-top:18px}.edit label,.comment-form label{font-size:13px;font-weight:700}
.comment-form{background:var(--paper);border:1px solid var(--line);padding:24px;max-width:760px}.comment-form button{justify-self:start}.comments{max-width:820px;margin-top:32px}.comment{display:flex;gap:14px;padding:24px 0;border-bottom:1px solid var(--line)}.comment.reply{margin-left:0;padding:20px 0 0;border:0}.comment-main{flex:1;min-width:0}.avatar{flex:0 0 38px;height:38px;border-radius:50%;background:var(--ink);color:white;display:grid;place-items:center;font-weight:800}.comment-meta{display:flex;gap:10px;align-items:center}.comment-meta time{font-size:12px;color:var(--muted)}.comment p{margin:8px 0}.actions{display:flex;gap:14px}.actions form{margin:0}.text-btn{background:transparent;color:var(--muted);padding:0;font-size:12px}.text-btn:hover,.text-btn.active{color:var(--orange)}.empty{padding:30px;color:var(--muted);border:1px dashed var(--line)}
.panel{max-width:650px;margin:80px auto}.panel h1{font-size:48px}.panel p{font-size:18px}footer{border-top:1px solid var(--line);padding:30px max(24px,calc((100vw - 1120px)/2));text-align:center}footer a{color:var(--ink)}
@media(max-width:720px){header{height:60px}.tagline{display:none}main{padding:0 16px}.hero{padding:60px 0}.url-form{display:block}.url-form button{width:100%}.cards{grid-template-columns:1fr}.property{grid-template-columns:1fr;gap:28px}.property h1{font-size:44px}.section-title{align-items:start;gap:16px}.comment-form{padding:18px}.comment.reply{margin-left:-30px}.actions{gap:11px}}
