:root{
  --burgundy:#5C1A2B;
  --burgundy-deep:#3D0F1C;
  --burgundy-night:#200A12;
  --gold:#B8893A;
  --gold-light:#D4A857;
  --gold-soft:#E8C97D;
  --cream:#F5EFE3;
  --cream-deep:#EBE2CE;
  --paper:#FBF8F1;
  --ink:#1A1410;
  --ink-soft:#3D332C;
  --line:#C9B68A;
  --ease-soft:cubic-bezier(.2,.8,.2,1);
  --ease-out:cubic-bezier(.16,.84,.32,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--paper);color:var(--ink);
  font-family:'Plus Jakarta Sans',sans-serif;font-weight:400;line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--burgundy);text-decoration:none;border-bottom:1px solid rgba(184,137,58,.4);transition:color .3s ease,border-color .3s ease}
a:hover{color:var(--gold);border-color:var(--gold)}

.container{max-width:920px;margin:0 auto;padding:0 32px}

/* Nav (compact) */
.nav{
  position:sticky;top:0;z-index:30;
  background:rgba(32,10,18,.92);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(212,168,87,.18);
  padding:14px 32px;
}
.nav-inner{max-width:1280px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:24px}
.nav-brand{
  font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:500;
  color:var(--cream);font-size:22px;letter-spacing:.005em;
  display:flex;align-items:center;gap:10px;border:none;
}
.nav-brand:hover{color:var(--gold-light)}
.nav-brand .star{color:var(--gold-light);font-size:13px}
.nav-back{
  font-family:'DM Mono',monospace;font-size:10.5px;
  letter-spacing:.28em;text-transform:uppercase;color:var(--gold-soft);
  display:inline-flex;align-items:center;gap:8px;border:none;padding-bottom:2px;
}
.nav-back:hover{color:var(--cream)}
.nav-back::before{content:'←';transition:transform .3s var(--ease-soft)}
.nav-back:hover::before{transform:translateX(-3px)}

/* Hero strip */
.lg-hero{
  background:radial-gradient(ellipse at 30% 30%, #6B2236 0%, var(--burgundy-deep) 60%, var(--burgundy-night) 100%);
  color:var(--cream);padding:90px 32px 70px;position:relative;overflow:hidden;
}
.lg-hero::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(circle at 50% 50%, rgba(255,255,255,.014) 1px, transparent 1px);
  background-size:3px 3px;
}
.lg-hero .container{position:relative;z-index:2}
.lg-hero .eyebrow{
  font-family:'DM Mono',monospace;font-size:10.5px;letter-spacing:.35em;
  text-transform:uppercase;color:var(--gold-soft);
  display:inline-flex;align-items:center;gap:14px;margin-bottom:18px;
}
.lg-hero .eyebrow::before{content:'';width:28px;height:1px;background:var(--gold)}
.lg-hero h1{
  font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:400;
  font-size:clamp(40px,6vw,72px);color:var(--cream);line-height:1.05;letter-spacing:-.005em;
}
.lg-hero h1 em{color:var(--gold-light);font-style:italic}
.lg-hero .meta{
  margin-top:24px;padding-top:18px;border-top:1px solid rgba(212,168,87,.3);
  font-family:'DM Mono',monospace;font-size:10px;letter-spacing:.3em;
  text-transform:uppercase;color:var(--gold-soft);
}

/* Content */
.lg-body{padding:80px 0 100px}
.lg-body h2{
  font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:500;
  font-size:clamp(26px,3vw,38px);color:var(--burgundy-deep);
  margin:46px 0 14px;letter-spacing:-.005em;line-height:1.15;
}
.lg-body h2:first-child{margin-top:0}
.lg-body h3{
  font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:500;
  font-size:22px;color:var(--burgundy-deep);
  margin:28px 0 8px;
}
.lg-body p{font-size:15px;line-height:1.75;color:var(--ink-soft);margin-bottom:14px;max-width:760px}
.lg-body ul,.lg-body ol{margin:0 0 18px 22px}
.lg-body li{font-size:15px;line-height:1.75;color:var(--ink-soft);margin-bottom:6px}
.lg-body strong{color:var(--burgundy-deep);font-weight:600}
.lg-body table{
  width:100%;max-width:760px;border-collapse:collapse;margin:18px 0;
  font-size:14px;
}
.lg-body table th,.lg-body table td{
  text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);
}
.lg-body table th{
  font-family:'DM Mono',monospace;font-size:10.5px;
  letter-spacing:.25em;text-transform:uppercase;color:var(--gold);font-weight:500;
}
.lg-body table td{color:var(--ink-soft)}
.lg-body table td:first-child{
  font-family:'Cormorant Garamond',serif;font-style:italic;color:var(--burgundy-deep);
  font-size:16px;width:34%;
}
.lg-body .note{
  background:var(--cream);border-left:3px solid var(--gold);
  padding:18px 22px;margin:24px 0;max-width:760px;
}
.lg-body .note p{margin:0;font-size:14px}

.lg-toc{
  background:var(--cream);border:1px solid var(--cream-deep);
  padding:24px 28px;margin-bottom:48px;max-width:760px;
}
.lg-toc h4{
  font-family:'DM Mono',monospace;font-size:10px;letter-spacing:.3em;
  text-transform:uppercase;color:var(--gold);margin-bottom:12px;font-weight:500;
}
.lg-toc ul{list-style:none;margin:0;display:grid;gap:6px}
.lg-toc li{margin:0}
.lg-toc a{
  font-family:'Cormorant Garamond',serif;font-style:italic;font-size:17px;
  color:var(--burgundy-deep);border:none;display:inline-flex;align-items:center;gap:10px;
}
.lg-toc a::before{content:'⬥';color:var(--gold);font-size:11px}
.lg-toc a:hover{color:var(--gold)}

/* Footer (slim) */
footer.lg-foot{
  background:var(--burgundy-night);color:var(--gold-soft);
  padding:36px 0;font-family:'DM Mono',monospace;font-size:10px;
  letter-spacing:.28em;text-transform:uppercase;
}
.lg-foot .container{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;align-items:center}
.lg-foot a{color:var(--gold-soft);border:none;padding-bottom:2px;position:relative}
.lg-foot a::after{content:'';position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--gold);transition:width .35s var(--ease-out)}
.lg-foot a:hover{color:var(--cream)}
.lg-foot a:hover::after{width:100%}
.lg-foot .legal-nav{display:flex;gap:6px 18px;flex-wrap:wrap}
.lg-foot .sep{color:rgba(212,168,87,.35)}

@media (max-width:680px){
  .container{padding:0 22px}
  .nav{padding:12px 22px}
  .lg-hero{padding:70px 22px 50px}
  .lg-body{padding:60px 0 80px}
  .lg-body table td:first-child{width:auto;display:block;padding-bottom:4px}
  .lg-body table td:last-child{display:block;padding-top:0}
  .lg-body table tr{display:block;border-bottom:1px solid var(--line);padding:10px 0}
  .lg-body table th{display:none}
}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001s !important;transition-duration:.001s !important}
}
