/* Shared styles for legal/content pages - matches landing page aesthetic */
:root{
  --cream: #f5ede0;
  --cream-warm: #ede0ca;
  --ink: #1a1410;
  --ink-soft: #2d231d;
  --rust: #b54d24;
  --rust-deep: #8b3817;
  --gold: #c89f4a;
  --paper: #fbf6ec;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:'Fraunces', Georgia, serif;
  background:var(--cream);
  color:var(--ink);
  line-height:1.7;
  overflow-x:hidden;
}
body::before{
  content:'';
  position:fixed; inset:0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.08 0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E");
  opacity:.35;
  pointer-events:none;
  z-index:1;
  mix-blend-mode:multiply;
}
nav{
  position:sticky; top:0;
  background:rgba(245,237,224,.92);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  z-index:100;
  padding:20px 6vw;
  display:flex; justify-content:space-between; align-items:center;
  border-bottom:1px solid rgba(26,20,16,.08);
}
.logo{
  font-family:'Fraunces', serif;
  font-weight:900;
  font-size:28px;
  letter-spacing:-.02em;
  color:var(--ink);
  text-decoration:none;
}
.logo em{font-style:italic; color:var(--rust); font-weight:400}
.nav-back{
  font-family:'DM Mono', monospace;
  font-size:12px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--ink);
  text-decoration:none;
  display:flex; align-items:center; gap:8px;
}
.nav-back:hover{color:var(--rust)}
.page-head{
  padding:80px 6vw 60px;
  position:relative;
  z-index:2;
  max-width:920px;
}
.page-head .section-label{
  font-family:'DM Mono', monospace;
  font-size:11px;
  letter-spacing:.25em;
  text-transform:uppercase;
  color:var(--rust);
  margin-bottom:24px;
  display:inline-block;
}
.page-head .section-label::before{
  content:'— '; color:var(--ink-soft);
}
.page-head h1{
  font-family:'Fraunces', serif;
  font-size:clamp(44px, 7vw, 88px);
  font-weight:300;
  line-height:.95;
  letter-spacing:-.02em;
  color:var(--ink);
  margin-bottom:30px;
}
.page-head h1 em{
  font-family:'Instrument Serif', serif;
  font-style:italic;
  font-weight:400;
  color:var(--rust);
}
.page-meta{
  font-family:'DM Mono', monospace;
  font-size:12px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--ink-soft);
  padding-bottom:30px;
  border-bottom:1px solid rgba(26,20,16,.15);
}
.page-body{
  padding:40px 6vw 100px;
  position:relative;
  z-index:2;
  max-width:820px;
}
.page-body h2{
  font-family:'Fraunces', serif;
  font-size:clamp(26px, 3vw, 36px);
  font-weight:600;
  margin:56px 0 20px;
  color:var(--ink);
  letter-spacing:-.01em;
}
.page-body h2:first-child{margin-top:0}
.page-body h3{
  font-family:'Fraunces', serif;
  font-size:20px;
  font-weight:600;
  margin:32px 0 14px;
  color:var(--ink-soft);
}
.page-body p{
  font-size:17px;
  color:var(--ink-soft);
  margin-bottom:18px;
  line-height:1.7;
}
.page-body ul, .page-body ol{
  margin:18px 0 28px 24px;
  color:var(--ink-soft);
}
.page-body li{
  font-size:17px;
  margin-bottom:10px;
  line-height:1.65;
  padding-left:6px;
}
.page-body ul li::marker{color:var(--rust); font-size:14px}
.page-body ol li::marker{color:var(--rust); font-family:'DM Mono', monospace; font-size:14px}
.page-body strong{color:var(--ink); font-weight:600}
.page-body a{
  color:var(--rust);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  transition:color .2s;
}
.page-body a:hover{color:var(--rust-deep)}
.callout{
  background:var(--paper);
  border-left:3px solid var(--rust);
  padding:24px 28px;
  margin:32px 0;
  border-radius:0 14px 14px 0;
}
.callout p{margin-bottom:0; font-size:16px}
.contact-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));
  gap:24px;
  margin:32px 0;
}
.contact-card{
  background:var(--paper);
  padding:28px;
  border-radius:16px;
  border:1px solid rgba(26,20,16,.08);
}
.contact-card h4{
  font-family:'DM Mono', monospace;
  font-size:11px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--rust);
  margin-bottom:14px;
}
.contact-card p, .contact-card a{
  font-size:16px;
  color:var(--ink);
  margin-bottom:6px;
  text-decoration:none;
  display:block;
}
.contact-card a:hover{color:var(--rust)}
footer{
  background:var(--ink);
  color:var(--cream);
  padding:60px 6vw 30px;
  position:relative;
  z-index:2;
}
.foot-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:40px;
  padding-bottom:30px;
  border-bottom:1px solid rgba(245,237,224,.1);
  flex-wrap:wrap;
}
.foot-nav{
  display:flex; gap:28px; flex-wrap:wrap;
  font-family:'DM Mono', monospace;
  font-size:11px;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.foot-nav a{
  color:rgba(245,237,224,.6);
  text-decoration:none;
  transition:color .2s;
}
.foot-nav a:hover{color:var(--gold)}
.foot-bot{
  padding-top:20px;
  font-family:'DM Mono', monospace;
  font-size:11px;
  color:rgba(245,237,224,.5);
  line-height:1.7;
}
.foot-bot strong{color:var(--gold)}
@media (max-width:820px){
  nav{padding:16px 6vw}
  .page-head{padding:50px 6vw 40px}
  .page-body{padding:30px 6vw 70px}
}
