:root{
  --ink:#173c36;
  --ink-deep:#102d29;
  --cream:#f3efe4;
  --paper:#fbfaf6;
  --white:#fffef9;
  --gold:#b98a46;
  --gold-light:#d8b779;
  --line:rgba(23,60,54,.16);
  --muted:#66736e;
  --display:"Iowan Old Style","Baskerville","Palatino Linotype",Georgia,serif;
  --body:"Avenir Next",Avenir,"Trebuchet MS",sans-serif;
}
*{box-sizing:border-box;}
body{
  margin:0;
  font-family:var(--body);
  color:var(--ink-deep);
  background:var(--paper);
  line-height:1.65;
}
.legal-header{
  padding:22px 24px;
  border-bottom:1px solid var(--line);
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:var(--ink);
}
.legal-header a.brand{
  color:var(--white);
  font-family:var(--display);
  font-weight:400;
  font-size:1.2rem;
  letter-spacing:.08em;
  text-decoration:none;
}
.legal-header a.back{
  color:rgba(255,255,255,.72);
  font-size:.78rem;
  font-weight:600;
  letter-spacing:.05em;
  text-decoration:none;
}
.legal-header a.back:hover{ color:var(--gold-light); }
.legal-wrap{
  max-width:760px;
  margin:0 auto;
  padding:60px 24px 110px;
}
.legal-wrap h1{
  font-family:var(--display);
  color:var(--ink);
  font-weight:400;
  font-size:2.4rem;
  letter-spacing:-.02em;
  margin:0 0 .3rem;
}
.legal-wrap .updated{
  color:var(--muted);
  font-size:.78rem;
  letter-spacing:.05em;
  text-transform:uppercase;
  margin-bottom:2.8rem;
}
.legal-wrap h2{
  font-family:var(--display);
  color:var(--ink);
  font-weight:400;
  font-size:1.35rem;
  margin-top:2.4rem;
  margin-bottom:.7rem;
}
.legal-wrap p{ margin:0 0 1rem; color:var(--ink-deep); }
.legal-wrap a{ color:var(--ink); text-decoration:underline; text-underline-offset:2px; }
.legal-wrap a:hover{ color:var(--gold); }
table.cookie-table{
  width:100%;
  border-collapse:collapse;
  margin:1rem 0 1.5rem;
  font-size:.88rem;
}
table.cookie-table th, table.cookie-table td{
  border:1px solid var(--line);
  padding:11px 13px;
  text-align:left;
  vertical-align:top;
}
table.cookie-table th{
  background:var(--cream);
  color:var(--ink);
  font-weight:700;
  font-size:.72rem;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.legal-footer{
  border-top:1px solid var(--line);
  padding:26px 24px;
  text-align:center;
  color:var(--muted);
  font-size:.68rem;
  letter-spacing:.05em;
}
.legal-footer a{ color:var(--muted); text-decoration:underline; text-underline-offset:2px; }
.legal-footer a:hover{ color:var(--ink); }

/* Cookie consent banner (injected by cookie-consent.js) */
#secmip-cookie-banner{
  position:fixed;
  left:16px;
  right:16px;
  bottom:16px;
  max-width:600px;
  margin:0 auto;
  background:var(--white);
  border:1px solid var(--line);
  box-shadow:0 24px 60px rgba(16,45,41,.18);
  padding:24px 26px;
  z-index:9999;
  font-family:var(--body);
}
#secmip-cookie-banner p{
  margin:0 0 16px;
  font-size:.86rem;
  color:var(--ink-deep);
  line-height:1.6;
}
#secmip-cookie-banner a{ color:var(--ink); text-decoration:underline; text-underline-offset:2px; }
#secmip-cookie-banner .secmip-cookie-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
#secmip-cookie-banner button{
  flex:1 1 auto;
  min-width:130px;
  min-height:44px;
  padding:0 18px;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
  border:1px solid var(--gold);
  transition:transform 180ms ease, background 180ms ease;
}
#secmip-cookie-banner button:hover{ transform:translateY(-2px); }
#secmip-cookie-banner .secmip-accept{
  background:var(--gold);
  color:var(--ink-deep);
}
#secmip-cookie-banner .secmip-accept:hover{ background:var(--gold-light); }
#secmip-cookie-banner .secmip-reject{
  background:transparent;
  color:var(--ink);
  border-color:var(--line);
}
#secmip-cookie-banner .secmip-reject:hover{ border-color:var(--ink); }
.secmip-map-placeholder{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:12px;
  background:var(--cream);
  border:1px solid var(--line);
  padding:36px 16px;
  text-align:center;
  color:var(--muted);
  font-size:.82rem;
}
.secmip-map-placeholder button{
  padding:10px 20px;
  border:1px solid var(--gold);
  background:var(--gold);
  color:var(--ink-deep);
  font-weight:800;
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
}
