:root{
  --ink:#1c1c1a;
  --iron:#4d4c48;
  --stone:#8a887f;
  --paper:#f4f2ec;
  --paper-2:#eae7dd;
  --line:#d8d5c9;
  --accent:#e2007a;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--paper);
  color:var(--ink);
  font-family:'Inter',sans-serif;
  font-size:16px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:'Fraunces',serif;font-weight:500;line-height:1.2;color:var(--ink);}
a{color:inherit;}
img{max-width:100%;display:block;}
.wrap{max-width:820px;margin:0 auto;padding:0 32px;}

.skip-link{
  position:absolute;left:-9999px;top:0;z-index:100;
  background:var(--ink);color:var(--paper);
  padding:12px 20px;font-size:14px;font-weight:600;
}
.skip-link:focus{left:12px;top:12px;}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;}

header{
  background:rgba(244,242,236,.92);
  border-bottom:1px solid var(--line);
}
.nav{
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 32px;max-width:1140px;margin:0 auto;
}
.nav-logo img{height:64px;width:auto;}
.nav-back{font-size:14.5px;font-weight:600;border:1px solid var(--ink);padding:10px 18px;transition:background .18s ease,color .18s ease;text-decoration:none;}
.nav-back:hover{background:var(--ink);color:var(--paper);}

main{padding:72px 0 96px;}
.page-kicker{color:var(--accent);font-size:13.5px;font-weight:600;letter-spacing:.02em;display:block;margin-bottom:14px;}
main h1{font-size:clamp(2rem,4vw,2.8rem);max-width:20ch;margin-bottom:14px;}
.updated{color:var(--stone);font-size:14px;margin-bottom:48px;}

.legal-content h2{font-size:1.3rem;margin-top:44px;margin-bottom:14px;}
.legal-content h3{font-size:1.05rem;margin-top:28px;margin-bottom:10px;}
.legal-content p{margin-bottom:16px;color:var(--iron);max-width:70ch;}
.legal-content ul{margin:0 0 16px 20px;color:var(--iron);}
.legal-content li{margin-bottom:8px;}
.legal-content strong{color:var(--ink);}
.legal-content a{text-decoration:underline;}

.placeholder{
  background:#fdf2f8;border:1px dashed var(--accent);color:#8a0055;
  padding:2px 6px;border-radius:2px;font-size:.95em;white-space:nowrap;
}
.notice-box{
  border:1px solid var(--line);background:var(--paper-2);
  padding:20px 24px;margin:28px 0;font-size:14.5px;color:var(--iron);
}
.notice-box strong{color:var(--ink);}

table.data-table{width:100%;border-collapse:collapse;margin:20px 0 28px;font-size:14.5px;}
table.data-table th, table.data-table td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top;}
table.data-table th{background:var(--paper-2);font-weight:600;}

footer{background:var(--ink);color:#a6a49a;padding:40px 0 26px;}
.foot-wrap{max-width:1140px;margin:0 auto;padding:0 32px;text-align:center;}
.foot-links{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:18px;font-size:14px;justify-content:center;}
.foot-links a{text-decoration:none;}
.foot-links a:hover{color:var(--paper);}
.foot-bottom{font-size:12.5px;}

@media (max-width:600px){
  main{padding:52px 0 64px;}
  .nav{padding:10px 20px;}
  .wrap{padding:0 20px;}
  .foot-wrap{padding:0 20px;}
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *{transition:none !important;}
}
