/* ===== LocalPilot — Legal Pages Stylesheet ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}

:root{
  --blue:#2563EB;--blue-light:#60A5FA;--blue-dark:#1D4ED8;
  --violet:#7C3AED;--cyan:#06B6D4;
  --bg:#050A18;--bg-card:#0C1425;
  --text-white:#FFFFFF;--text-light:rgba(255,255,255,.78);
  --text-muted:rgba(255,255,255,.45);
  --border:rgba(255,255,255,.08);
}

body{
  font-family:'Inter',system-ui,sans-serif;
  background:var(--bg);color:var(--text-light);
  line-height:1.7;font-size:15px;
}

a{color:var(--blue-light);text-decoration:none;transition:color .2s ease;-webkit-tap-highlight-color:transparent}
a:hover{color:#fff}

.serif{font-family:'Instrument Serif',Georgia,serif}

.container{max-width:840px;margin:0 auto;padding:0 24px}

/* ===== HEADER ===== */
header{
  position:sticky;top:0;z-index:100;
  background:rgba(5,10,24,.85);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid var(--border);
}
header .container{max-width:1200px;display:flex;align-items:center;justify-content:space-between;height:64px;padding-top:0;padding-bottom:0}
.logo{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:800;color:#fff;letter-spacing:-.01em}
.logo-icon{width:32px;height:32px;border-radius:9px;background:linear-gradient(135deg,var(--blue),var(--violet));display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(37,99,235,.4)}
.logo-icon svg{display:block}
.back-link{
  display:inline-flex;align-items:center;gap:8px;
  font-size:14px;font-weight:600;color:var(--text-light);
  padding:8px 14px;border-radius:10px;
  border:1px solid var(--border);background:rgba(255,255,255,.03);
  min-height:40px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;
}
.back-link:hover{background:rgba(255,255,255,.06);color:#fff}

/* ===== MAIN ===== */
main{padding:64px 0 96px}

.legal-eyebrow{
  display:inline-block;font-size:11px;font-weight:800;letter-spacing:.18em;
  text-transform:uppercase;color:var(--blue-light);margin-bottom:16px;
}

h1{
  font-family:'Instrument Serif',Georgia,serif;
  font-size:clamp(2.2rem,5vw,3.4rem);line-height:1.05;letter-spacing:-.02em;
  color:#fff;font-weight:400;margin-bottom:14px;
}
.subtitle{font-size:16px;color:var(--text-muted);margin-bottom:40px}

h2{
  font-family:'Instrument Serif',Georgia,serif;
  font-size:clamp(1.4rem,2.8vw,1.8rem);line-height:1.2;letter-spacing:-.02em;
  color:#fff;font-weight:400;margin:48px 0 16px;
  padding-top:24px;border-top:1px solid var(--border);
}
h2:first-of-type{padding-top:0;border-top:none;margin-top:0}

h3{
  font-size:16px;font-weight:700;color:#fff;
  margin:32px 0 10px;letter-spacing:-.01em;
}

p{margin-bottom:14px}

ul,ol{margin:14px 0 20px 24px}
li{margin-bottom:8px}

strong{color:#fff;font-weight:600}
em{font-style:italic;color:var(--text-light)}

hr{border:none;border-top:1px solid var(--border);margin:48px 0}

table{width:100%;border-collapse:collapse;margin:20px 0;font-size:14px}
table th,table td{text-align:left;padding:12px 16px;border-bottom:1px solid var(--border)}
table th{background:rgba(255,255,255,.03);font-weight:700;color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.05em}

.contact-block{
  background:linear-gradient(160deg,#0C1425 0%,#111B30 100%);
  border:1px solid var(--border);border-radius:18px;
  padding:28px;margin:24px 0;
}
.contact-block strong{display:block;color:#fff;margin-bottom:8px;font-size:16px}

.callout{
  border-left:3px solid var(--blue);
  background:rgba(37,99,235,.06);
  padding:18px 22px;border-radius:0 12px 12px 0;
  margin:24px 0;
}
.callout p:last-child{margin-bottom:0}

.muted{color:var(--text-muted);font-size:13px}

.toc{
  background:rgba(255,255,255,.03);border:1px solid var(--border);
  border-radius:14px;padding:22px 26px;margin:32px 0 48px;
}
.toc-title{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:14px}
.toc ol{margin:0;padding-left:22px;column-count:1}
@media(min-width:768px){.toc ol{column-count:2;column-gap:32px}}
.toc li{margin-bottom:6px;font-size:14px;break-inside:avoid}
.toc a{color:var(--text-light)}
.toc a:hover{color:var(--blue-light)}

/* ===== FOOTER ===== */
footer{border-top:1px solid var(--border);padding:32px 0;font-size:13px;color:var(--text-muted)}
footer .container{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;max-width:1200px}
footer a{margin-right:16px}
footer a:last-child{margin-right:0}

@media(max-width:767px){
  main{padding:40px 0 64px}
  .container{padding:0 20px}
  header .container{height:56px}
  h2{margin-top:36px;padding-top:20px}
  .contact-block{padding:22px}
  .toc{padding:18px 20px}
}
