:root{
  --night:#0a0b0d;
  --ivory:#faf8f4;
  --ivory-2:#f3efe8;
  --ink:#1c1e22;
  --soft:#5d6066;
  --palm:#1e3a2f;
  --brass:#b3915a;
  --line:#e4ddd0;
  --max:1180px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--ivory);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;width:100%}
.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}
.nav{background:var(--night);color:#fff;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.09)}
.navin{display:flex;justify-content:space-between;align-items:center;gap:24px}
.brand{font-family:Fraunces,Georgia,serif;font-size:1.5rem}.brand em{color:#cfb384;font-weight:300}
.back{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.back:hover{color:#fff}
.hero{padding:70px 0 42px}
.kicker{font-size:.68rem;font-weight:700;letter-spacing:.23em;text-transform:uppercase;color:var(--brass)}
h1,h2{font-family:Fraunces,Georgia,serif;font-weight:400;line-height:1.08}
h1{font-size:clamp(2.7rem,6vw,5.25rem);margin-top:16px;max-width:900px}
.lede{margin-top:18px;color:var(--soft);max-width:660px;font-size:1.03rem}
.price{margin-top:26px;color:var(--palm);font-family:Fraunces,Georgia,serif;font-size:2rem}.price small{font:500 .72rem Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--soft)}
.gallery{display:grid;grid-template-columns:1.5fr 1fr 1fr;grid-template-rows:repeat(2,minmax(190px,20vw));gap:10px;margin:14px auto 64px}
.gallery figure{overflow:hidden;background:#ddd}.gallery figure:first-child{grid-row:1/3}.gallery figure:nth-child(2){grid-column:2/4}.gallery img{height:100%;object-fit:cover;transition:transform .8s ease}.gallery figure:hover img{transform:scale(1.025)}
.bodygrid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(290px,.65fr);gap:70px;padding-bottom:92px}
.bodygrid h2{font-size:clamp(2rem,4vw,3.1rem);margin-bottom:20px}
.copy{color:var(--soft);font-weight:350;max-width:690px}.copy p+p{margin-top:14px}
.facts{list-style:none;margin-top:32px;border-top:1px solid var(--line)}
.facts li{display:flex;justify-content:space-between;gap:25px;padding:14px 0;border-bottom:1px solid var(--line)}
.facts span:first-child{color:var(--soft)}.facts strong{text-align:right;font-weight:600}
.panel{background:var(--ivory-2);border:1px solid var(--line);padding:30px;align-self:start;position:sticky;top:24px}
.panel h3{font:400 1.55rem Fraunces,Georgia,serif}.panel p{font-size:.9rem;color:var(--soft);margin:12px 0 22px}
.notice{border-left:3px solid var(--brass);padding:13px 14px;background:var(--ivory);font-size:.83rem;color:var(--soft);margin-bottom:22px}
.cta{display:block;text-align:center;background:var(--palm);color:#fff;border-radius:99px;padding:14px 20px;font-size:.75rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;transition:.25s ease}.cta:hover{background:#2e5546;transform:translateY(-1px)}
.ref{margin-top:15px;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:#8b8e93;text-align:center}
.foot{background:var(--night);color:rgba(255,255,255,.62);padding:38px 0;font-size:.79rem}.footin{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
@media(max-width:820px){
  .wrap{width:min(100% - 32px,var(--max))}
  .hero{padding-top:50px}
  .gallery{grid-template-columns:repeat(3,1fr);grid-template-rows:280px 150px;margin-bottom:44px}
  .gallery figure:first-child{grid-column:1/4;grid-row:auto}.gallery figure:nth-child(2){grid-column:auto}
  .bodygrid{grid-template-columns:1fr;gap:38px}.panel{position:static}
}
@media(max-width:520px){
  .back{font-size:.62rem}.gallery{grid-template-rows:230px 110px;gap:6px}
  .facts li{display:block}.facts strong{display:block;text-align:left;margin-top:3px}
}
