*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --void:#080808;--panel:#131110;--panel2:#1a1716;--line:#2b2624;
  --ivory:#f4efe8;--dim:#c8c0b4;--faint:#847b71;
  --ember:#c4846a;--ember2:#d89880;--gold:#c9a96e;
}
html{scroll-behavior:smooth}
body{
  background:var(--void);color:var(--ivory);
  font-family:'Jost',Arial,sans-serif;font-weight:300;
  line-height:1.62;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
::selection{background:var(--ember);color:var(--void)}
h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400}
em{font-style:italic;color:var(--ember)}
a{color:var(--gold)}
img{max-width:100%;display:block}

.wrap{max-width:1120px;margin:0 auto;padding:0 28px}
.wrap-narrow{max-width:840px;margin:0 auto;padding:0 28px}

/* ---------- Site nav ---------- */
.site-nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  padding:22px 28px;
}
.site-nav::after{
  content:"";position:absolute;top:0;left:0;right:0;height:170px;z-index:-1;
  background:linear-gradient(180deg, rgba(8,8,8,.92) 0%, rgba(8,8,8,.6) 45%, transparent 100%);
  opacity:0;transition:opacity .5s ease;pointer-events:none;
}
.site-nav.scrolled::after{opacity:1}
.site-nav .brandmark{
  font-family:'Playfair Display',Georgia,serif;font-size:15px;
  letter-spacing:.08em;color:var(--ivory);text-decoration:none;
}
.site-nav .links{display:flex;gap:28px;list-style:none}
.site-nav .links a{
  font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--ivory);text-decoration:none;opacity:.75;transition:opacity .2s;
}
.site-nav .links a:hover{opacity:1}
.site-nav .menu-btn{display:none;background:none;border:none;color:var(--ivory);font-size:11px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}

@media(max-width:720px){
  .site-nav .links{
    display:none;position:fixed;top:0;left:0;right:0;bottom:0;
    background:var(--void);flex-direction:column;align-items:center;
    justify-content:center;gap:30px;z-index:99;
  }
  .site-nav .links.open{display:flex}
  .site-nav .links a{font-size:14px;opacity:1}
  .site-nav .menu-btn{display:block;position:relative;z-index:101}
}

/* ---------- Footer / CTA (shared) ---------- */
.cta{
  text-align:center;padding:90px 0 100px;margin-top:40px;
  border-top:1px solid rgba(196,132,106,.22);
}
.cta h2{font-size:32px;color:var(--ivory);margin-bottom:14px}
.cta p{color:var(--dim);font-size:14.5px;max-width:480px;margin:0 auto 30px}
.cta-links{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.cta-links a{
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;
  padding:14px 26px;border:1px solid var(--ember);color:var(--ivory);
  transition:background .2s, color .2s;
}
.cta-links a.primary{background:var(--ember);color:var(--void)}
.cta-links a:hover{background:var(--ember);color:var(--void)}
.footfine{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-top:44px}
