/* Elegatra — shared styles for legal pages.
   Tokens lifted from index.html so these pages read as the same brand. */
@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,300;9..144,400;9..144,500&family=Hanken+Grotesk:wght@300;400;500&display=swap");

:root{
  --void:#0A0A0C; --obsidian:#111114; --ash:#6B6B72; --ash-dim:#3A3A40;
  --bone:#E8E4DC; --brass:#C9A86A; --filament:#FFD9A0;
  --serif:"Fraunces",Georgia,serif; --sans:"Hanken Grotesk",system-ui,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:var(--void); color:var(--bone);
  font-family:var(--sans); font-weight:300; line-height:1.75;
  -webkit-font-smoothing:antialiased;
}
::selection{background:var(--brass);color:var(--void)}
a{color:var(--brass);text-decoration:none}
.legal-body a{border-bottom:1px solid var(--ash-dim);transition:border-color .3s}
.legal-body a:hover{border-color:var(--brass)}
:focus-visible{outline:2px solid var(--brass);outline-offset:3px}

/* nav */
.legal-nav{
  display:flex;align-items:center;justify-content:space-between;
  padding:28px clamp(20px,5vw,72px);
  border-bottom:1px solid var(--ash-dim);
}
.legal-nav img{height:22px;width:auto;display:block}
.legal-nav .back{
  font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ash);
  border-bottom:none;
}
.legal-nav .back:hover{color:var(--bone)}

/* page frame */
.wrap{max-width:760px;margin:0 auto;padding:clamp(56px,10vh,110px) clamp(20px,5vw,40px) 90px;position:relative}
.wrap::before{
  content:"";position:absolute;left:50%;top:0;width:120%;height:340px;transform:translateX(-50%);
  background:radial-gradient(circle,rgba(201,168,106,.08) 0%,transparent 60%);
  pointer-events:none;z-index:-1;
}
.eyebrow{font-size:11px;letter-spacing:.4em;text-transform:uppercase;color:var(--brass);display:block;margin-bottom:18px}
h1{font-family:var(--serif);font-weight:300;font-size:clamp(34px,6vw,52px);line-height:1.05;letter-spacing:-.01em}
.dates{margin-top:22px;color:var(--ash);font-size:13px;letter-spacing:.04em}
.dates span{color:var(--bone)}

/* sections */
h2{font-family:var(--serif);font-weight:400;font-size:22px;color:var(--bone);margin:46px 0 14px;letter-spacing:-.01em}
.legal-body p{margin:0 0 16px;color:#cfcabf;max-width:64ch}
.legal-body ul{margin:0 0 16px 0;padding-left:0;list-style:none;max-width:64ch}
.legal-body li{position:relative;padding-left:22px;margin-bottom:10px;color:#cfcabf}
.legal-body li::before{content:"";position:absolute;left:0;top:12px;width:6px;height:1px;background:var(--brass)}
.legal-body strong{color:var(--bone);font-weight:500}
.note{
  border-left:2px solid var(--brass);padding:14px 18px;margin:0 0 16px;
  background:var(--obsidian);color:var(--ash);font-size:14px;max-width:64ch;
}

/* table (cookie page) */
table{width:100%;border-collapse:collapse;margin:8px 0 20px;font-size:14px;max-width:100%}
th,td{text-align:left;padding:12px 14px;border:1px solid var(--ash-dim);vertical-align:top;color:#cfcabf}
th{color:var(--bone);font-weight:500;letter-spacing:.02em;background:var(--obsidian)}

/* contact block */
.contact{margin-top:14px;color:#cfcabf;font-size:15px;line-height:1.9}
.contact strong{display:block;color:var(--bone);margin-bottom:4px}

/* footer */
.legal-foot{
  border-top:1px solid var(--ash-dim);padding:36px clamp(20px,5vw,72px);
  font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ash-dim);
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;
}
.legal-foot a{color:var(--ash);border-bottom:none}
.legal-foot a:hover{color:var(--bone)}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
