*{margin:0;padding:0;box-sizing:border-box}
body{
  font-family:"Hiragino Sans","Yu Gothic",sans-serif;
  background:#050505;
  color:#fff;
  line-height:1.85;
}
a{color:#c7a46c;text-decoration:none}
a:hover{text-decoration:underline}
.container{width:90%;max-width:860px;margin:0 auto}
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(0,0,0,.85);
  border-bottom:1px solid rgba(255,255,255,.08);
  backdrop-filter:blur(10px);
}
.header-inner{
  display:flex;justify-content:space-between;align-items:center;
  padding:16px 0;
}
.logo{font-size:28px;font-weight:800;color:#fff;text-decoration:none}
.logo:hover{text-decoration:none}
.logo .gold{color:#c7a46c}
.back-link{color:#c7a46c;font-size:14px;letter-spacing:.08em;text-decoration:none}
.back-link:hover{text-decoration:underline}
.header-actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.pdf-btn{
  border:0;
  background:#c7a46c;
  color:#111;
  padding:10px 16px;
  border-radius:999px;
  font-weight:700;
  font-size:13px;
  cursor:pointer;
  white-space:nowrap;
  font-family:inherit;
}
.pdf-btn:hover{background:#d4b67a}
.legal-main{padding:100px 0 80px}
h1{
  font-size:clamp(28px,5vw,40px);
  font-weight:800;
  margin-bottom:16px;
  line-height:1.25;
}
.lead{color:#ccc;margin-bottom:36px;font-size:16px}
.legal-table{
  width:100%;
  border-collapse:collapse;
  background:rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  overflow:hidden;
}
.legal-table th,
.legal-table td{
  padding:18px 20px;
  border-bottom:1px solid rgba(255,255,255,.08);
  text-align:left;
  vertical-align:top;
  font-size:15px;
}
.legal-table tr:last-child th,
.legal-table tr:last-child td{border-bottom:none}
.legal-table th{
  width:34%;
  color:#c7a46c;
  font-weight:700;
  background:rgba(0,0,0,.25);
}
.legal-table td{color:#ddd}
.legal-table a{color:#e8d2aa}
h2{
  font-size:22px;
  font-weight:800;
  margin:40px 0 16px;
  color:#fff;
}
.legal-section{margin-bottom:28px}
.legal-section p,
.legal-section li{
  color:#ccc;
  font-size:15px;
}
.legal-section ul{
  margin:12px 0 0 1.2em;
}
.legal-section li{margin-bottom:8px}
.article{
  margin-bottom:36px;
  padding-bottom:28px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.article:last-of-type{border-bottom:none;padding-bottom:0}
.article h2{
  font-size:20px;
  margin:0 0 14px;
  color:#e8d2aa;
}
.article-sub{margin-top:14px}
.article-sub h3{
  font-size:16px;
  margin:18px 0 10px;
  color:#c7a46c;
  font-weight:700;
}
.note{
  margin-top:24px;
  padding:16px 18px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:12px;
  color:#aaa;
  font-size:13px;
}
.site-footer{
  padding:36px 0 48px;
  text-align:center;
  border-top:1px solid rgba(255,255,255,.08);
  color:#888;
  font-size:13px;
}
.footer-legal{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px 18px;
  margin-bottom:16px;
}
.footer-legal a{
  color:#aaa;
  font-size:12px;
  text-decoration:none;
}
.footer-legal a:hover{color:#c7a46c;text-decoration:underline}
@media print{
  .no-print{display:none !important}
  body{background:#fff;color:#000}
  .legal-main{padding:24px 0}
  h1,h2,.article h2,.article-sub h3{color:#000}
  .lead,.legal-section p,.legal-section li,.article p,.note{color:#333}
  .legal-table,.legal-table th,.legal-table td{
    border-color:#ccc;
    background:#fff;
    color:#000;
  }
  .legal-table th{color:#000}
  a{color:#000;text-decoration:none}
  .article{border-color:#ddd}
}
@media(max-width:640px){
  .legal-table th,
  .legal-table td{display:block;width:100%}
  .legal-table th{
    padding-bottom:8px;
    border-bottom:none;
  }
  .legal-table td{padding-top:0}
}
