:root{
  --burgundy-deep:#450104;
  --burgundy:#520104;
  --burgundy-black:#2E0002;
  --gold:#C8912E;
  --gold-bright:#E8A729;
  --gold-pale:#F6C03B;
  --ivory:#F7F1E6;
  --ivory-warm:#F1E7D6;
  --beige:#E4D6BE;
  --brown:#3A2A20;
  --brown-soft:#5A463A;
  --ink:#2A211C;
  --serif:"Cormorant Garamond", Georgia, serif;
  --serif-body:"EB Garamond", Georgia, serif;
  --sans:"Jost", "Helvetica Neue", Arial, sans-serif;
  --maxw:820px;
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0; background:var(--ivory); color:var(--ink);
  font-family:var(--serif-body); font-size:18px; line-height:1.68;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
a{color:var(--gold); text-decoration:none; transition:color .3s var(--ease);}
a:hover{color:var(--burgundy-deep);}
img{max-width:100%; display:block;}

/* Header */
header{
  position:sticky; top:0; z-index:60;
  background:rgba(247,241,230,.9); backdrop-filter:saturate(140%) blur(10px);
  border-bottom:1px solid rgba(58,42,32,.09);
}
.nav{display:flex; align-items:center; justify-content:space-between; height:74px; max-width:1180px; margin:0 auto; padding:0 28px;}
.brand{display:flex; align-items:center; gap:12px;}
.brand img{width:38px; height:38px; border-radius:8px;}
.brand span{font-family:var(--serif); font-size:19px; letter-spacing:.06em; color:var(--burgundy-deep);}
.back-link{font-family:var(--sans); font-size:12.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--brown-soft);}
.back-link:hover{color:var(--burgundy-deep);}

/* Legal band header */
.legal-hero{
  background:radial-gradient(120% 90% at 50% 0%, #5B0206, var(--burgundy-deep) 55%, var(--burgundy-black));
  color:var(--ivory); text-align:center; padding:76px 28px 66px; position:relative; overflow:hidden;
}
.legal-hero::before{content:""; position:absolute; inset:20px; border:1px solid rgba(200,145,46,.24); pointer-events:none;}
.legal-hero .flame{width:56px; margin:0 auto 24px; filter:drop-shadow(0 8px 18px rgba(0,0,0,.5)); position:relative; z-index:2;}
.legal-hero .eyebrow{font-family:var(--sans); font-size:11px; letter-spacing:.32em; text-transform:uppercase; color:var(--gold-pale); margin:0 0 16px; position:relative; z-index:2;}
.legal-hero h1{font-family:var(--serif); font-weight:500; font-size:clamp(38px,6vw,58px); color:var(--ivory); margin:0; letter-spacing:.01em; position:relative; z-index:2;}
.legal-hero .updated{font-family:var(--sans); font-size:11.5px; letter-spacing:.2em; text-transform:uppercase; color:rgba(247,241,230,.55); margin:18px 0 0; position:relative; z-index:2;}

/* Body */
main{max-width:var(--maxw); margin:0 auto; padding:70px 28px 90px;}
main h2{font-family:var(--serif); font-weight:500; font-size:clamp(26px,3.4vw,34px); color:var(--burgundy-deep); margin:48px 0 14px; letter-spacing:.005em;}
main h2:first-child{margin-top:0;}
main h3{font-family:var(--serif); font-weight:600; font-size:21px; color:var(--brown); margin:30px 0 8px;}
main p{color:var(--brown); margin:0 0 16px;}
main ul{margin:0 0 20px; padding-left:22px; color:var(--brown);}
main li{margin-bottom:9px;}
.rule{width:52px; height:1px; background:var(--gold); margin:0 0 36px;}
.callout{
  background:var(--ivory-warm); border-left:2px solid var(--gold);
  padding:22px 26px; margin:26px 0; border-radius:2px;
}
.callout p:last-child{margin-bottom:0;}
.company-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px 40px; margin:22px 0 6px;}
.company-grid .lbl{font-family:var(--sans); font-size:10.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--brown-soft); display:block; margin-bottom:3px;}
.company-grid .val{font-family:var(--serif-body); font-size:17px; color:var(--ink);}
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  font-family:var(--sans); font-weight:400; font-size:14px; letter-spacing:.16em; text-transform:uppercase;
  padding:18px 40px; background:var(--burgundy-deep); color:var(--ivory); border-radius:2px;
  transition:background .4s var(--ease), transform .4s var(--ease); margin-top:14px;
}
.btn:hover{background:var(--burgundy-black); color:var(--ivory); transform:translateY(-2px);}
.btn--gold{background:linear-gradient(180deg,var(--gold-bright),var(--gold)); color:var(--burgundy-black);}
.btn--gold:hover{background:linear-gradient(180deg,var(--gold-pale),var(--gold-bright)); color:var(--burgundy-black);}

/* Footer */
footer{background:var(--burgundy-black); color:rgba(247,241,230,.6); padding:50px 0 36px; font-size:14px;}
.foot-inner{max-width:1180px; margin:0 auto; padding:0 28px;}
.foot-top{display:flex; justify-content:space-between; align-items:center; gap:30px; flex-wrap:wrap; padding-bottom:28px; border-bottom:1px solid rgba(200,145,46,.18);}
.foot-brand{display:flex; align-items:center; gap:12px;}
.foot-brand img{width:40px; height:40px; border-radius:9px;}
.foot-brand span{font-family:var(--serif); font-size:20px; color:var(--gold-pale); letter-spacing:.05em;}
.foot-links{display:flex; gap:26px; flex-wrap:wrap; font-family:var(--sans); font-size:12px; letter-spacing:.1em; text-transform:uppercase;}
.foot-links a{color:rgba(247,241,230,.7);}
.foot-links a:hover{color:var(--gold-pale);}
.copy{font-family:var(--sans); font-size:12px; letter-spacing:.08em; color:rgba(247,241,230,.45); margin-top:24px;}

@media (max-width:640px){
  main{padding:52px 22px 70px;}
  .company-grid{grid-template-columns:1fr; gap:16px;}
  .foot-top{flex-direction:column; align-items:flex-start; gap:20px;}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto !important;}}
