
:root{--ink:#10151d;--muted:#68717e;--line:#e7e2d8;--paper:#fbfaf7;--cream:#f3eee5;--gold:#b28a50;--gold2:#d2ab6e;--charcoal:#151a22;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--paper)}a{color:inherit;text-decoration:none}.nav{position:sticky;top:0;z-index:50;background:rgba(251,250,247,.86);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:18px 5%}.brand{font-family:'Cormorant Garamond',serif;font-size:1.42rem;letter-spacing:.12em;font-weight:600}.brand span{color:var(--gold)}.navlinks{display:flex;gap:28px;font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-weight:700}.navlinks a:hover{color:var(--gold)}.navbtn{border:1px solid var(--ink);padding:10px 18px;font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.hero{min-height:78vh;display:grid;grid-template-columns:1.05fr .95fr;background:var(--cream);border-bottom:1px solid var(--line)}.hero-copy{padding:90px 8% 70px 10%;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:800;margin-bottom:22px}.hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(3rem,6vw,5.8rem);font-weight:300;line-height:.98;margin:0 0 24px}.hero h1 em{color:var(--gold);font-style:italic}.hero p{max-width:560px;color:var(--muted);line-height:1.9;font-size:1rem}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 26px;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:800;border:1px solid var(--ink);transition:.25s}.btn.primary{background:var(--ink);color:white}.btn:hover{transform:translateY(-2px)}.hero-img{position:relative;min-height:420px;background:url('https://images.unsplash.com/photo-1600585154340-be6161a56a0c?w=1500&q=80') center/cover}.hero-img:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(243,238,229,.78),transparent 40%),linear-gradient(0deg,rgba(16,21,29,.25),transparent)}section{padding:90px 5%}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:42px}.section-head h2{font-family:'Cormorant Garamond',serif;font-size:clamp(2.2rem,4vw,4rem);font-weight:300;margin:0}.section-head p{max-width:480px;color:var(--muted);line-height:1.8}.filters{background:var(--white);border:1px solid var(--line);padding:18px;display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:12px;margin-bottom:32px;box-shadow:0 18px 50px rgba(16,21,29,.05)}.filters input,.filters select{width:100%;border:1px solid var(--line);background:var(--paper);padding:13px 14px;font:inherit;color:var(--ink);outline:none}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.card{background:#fff;border:1px solid var(--line);overflow:hidden;transition:.3s;position:relative}.card:hover{transform:translateY(-5px);box-shadow:0 24px 70px rgba(16,21,29,.10)}.card-img{height:270px;background:#ddd center/cover;position:relative}.badge{position:absolute;top:16px;left:16px;background:rgba(16,21,29,.88);color:#fff;padding:7px 12px;font-size:.64rem;text-transform:uppercase;letter-spacing:.15em;font-weight:800}.card-body{padding:24px}.meta{font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);font-weight:800;margin-bottom:10px}.card h3{font-family:'Cormorant Garamond',serif;font-size:1.65rem;font-weight:400;line-height:1.15;margin:0 0 12px}.loc{color:var(--muted);font-size:.86rem;margin-bottom:20px}.features{display:flex;flex-wrap:wrap;gap:10px 16px;border-top:1px solid var(--line);padding-top:16px;color:var(--muted);font-size:.82rem}.price{font-weight:900;margin-top:18px;color:var(--ink)}.view{margin-top:18px;color:var(--gold);font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;font-weight:900}.dark{background:var(--charcoal);color:#fff}.dark .section-head p{color:#a9b1bd}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12)}.stat{background:#1d232e;padding:34px;text-align:center}.stat b{font-family:'Cormorant Garamond',serif;color:var(--gold2);font-size:2.5rem}.stat span{display:block;margin-top:8px;font-size:.68rem;text-transform:uppercase;letter-spacing:.15em;color:#a9b1bd}footer{background:#0d1118;color:#c7ced9;padding:52px 5%;display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}.footer-brand{font-family:'Cormorant Garamond',serif;color:#fff;font-size:1.6rem;letter-spacing:.1em}.small{font-size:.78rem;color:#8d96a4;line-height:1.7}.detail-hero{padding:70px 5% 30px;background:var(--cream)}.detail-hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(2.4rem,5vw,4.8rem);font-weight:300;line-height:1;margin:18px 0}.crumb{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--gold);font-weight:900}.detail-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:42px;padding:40px 5% 90px}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.gallery img{width:100%;height:320px;object-fit:cover;background:#ddd}.gallery img:first-child{grid-column:1/-1;height:520px}.panel{position:sticky;top:90px;background:#fff;border:1px solid var(--line);padding:34px;height:max-content}.panel .price{font-size:1.6rem;margin:0 0 18px}.specs{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:24px 0}.spec{border:1px solid var(--line);padding:14px}.spec small{display:block;color:var(--muted);font-size:.66rem;text-transform:uppercase;letter-spacing:.13em;font-weight:800}.spec b{font-size:1rem}.desc{line-height:1.9;color:#46505c;white-space:pre-line}.notice{background:var(--cream);border:1px solid var(--line);padding:18px;margin-top:24px;color:#68717e;font-size:.85rem;line-height:1.7}@media(max-width:900px){.hero{grid-template-columns:1fr}.hero-img{order:-1;min-height:340px}.grid{grid-template-columns:1fr 1fr}.filters{grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:1fr}.panel{position:static}.navlinks{display:none}}@media(max-width:620px){section{padding:64px 5%}.grid,.filters,.stats{grid-template-columns:1fr}.gallery img,.gallery img:first-child{height:300px}.navbtn{display:none}.hero-copy{padding:58px 6%}.footer{display:block}}
