*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --ink:#172223;
  --paper:#F1F0E8;
  --warm:#E6ECD6;
  --mid:#65706C;
  --faint:#CFD3C8;
  --blue:#2A3A33;
  --serif:'Newsreader',Georgia,'Times New Roman',serif;
  --sans:'Hanken Grotesk',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}

html{scroll-behavior:smooth}
body{
  font-family:var(--sans);color:var(--ink);
  background:var(--paper);line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit}
img{display:block;max-width:100%}

/* ── Nav ── */
header{
  padding:20px 40px;
  display:flex;align-items:center;justify-content:space-between;
}
.logo{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-size:22px;font-weight:400;letter-spacing:-0.02em;text-decoration:none}
.logo img{width:30px;height:30px}
.nav-r{display:flex;align-items:center;gap:20px}
.lang{display:flex;gap:2px}
.lang button{
  font-family:var(--sans);font-size:12px;font-weight:500;
  padding:5px 10px;border:1px solid var(--faint);background:transparent;
  color:var(--mid);cursor:pointer;transition:all 0.15s;
}
.lang button:first-child{border-radius:6px 0 0 6px}
.lang button:last-child{border-radius:0 6px 6px 0}
.lang button.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}

@media(max-width:640px){
  header{padding:16px 20px}
}

/* ── Content ── */
.content{
  max-width:720px;margin:0 auto;
  padding:clamp(40px,6vh,80px) 40px clamp(56px,8vh,100px);
}
.content h1{
  font-family:var(--serif);font-weight:400;
  font-size:clamp(32px,4vw,48px);line-height:1.1;
  letter-spacing:-0.02em;margin-bottom:8px;
}
.content .subtitle{
  font-size:14px;color:var(--mid);margin-bottom:40px;
}
.content .notice{
  padding:16px 18px;border-left:3px solid var(--blue);background:var(--warm);
  color:var(--ink);margin:0 0 30px;
}
.content h2{
  font-family:var(--serif);font-weight:400;
  font-size:22px;line-height:1.2;letter-spacing:-0.01em;
  margin:36px 0 12px;
}
.content p{
  font-size:15px;color:#5C574F;line-height:1.65;margin-bottom:16px;
}
.content ul{
  list-style:none;display:flex;flex-direction:column;gap:8px;
  margin-bottom:16px;
}
.content li{
  font-size:14px;color:#5C574F;line-height:1.5;
  padding-left:16px;position:relative;
}
.content li::before{
  content:'\2013';position:absolute;left:0;color:var(--mid);
}
.content a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}
.content a:hover{color:var(--ink)}
.legal-nav{display:flex;gap:18px;flex-wrap:wrap;margin-top:8px}
.legal-nav a{font-size:13px;color:var(--mid);text-decoration:none}
.legal-nav a:hover,.legal-nav a[aria-current="page"]{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.legal-grid{display:grid;grid-template-columns:160px 1fr;border-top:1px solid var(--faint);margin:18px 0 28px}
.legal-grid dt,.legal-grid dd{padding:12px 0;border-bottom:1px solid var(--faint);font-size:14px}
.legal-grid dt{color:var(--mid)}
.legal-grid dd{margin:0;color:#5C574F}

@media(max-width:640px){
  .content{padding:32px 20px 48px}
  .legal-grid{grid-template-columns:1fr}
  .legal-grid dt{border-bottom:0;padding-bottom:2px}
  .legal-grid dd{padding-top:2px}
}

/* ── Footer ── */
footer{
  border-top:1px solid rgba(26,24,22,0.1);
  padding:24px 40px;
  display:flex;align-items:center;justify-content:space-between;
  font-size:12px;color:var(--mid);
}
footer a{text-decoration:underline;text-underline-offset:2px}
footer a:hover{color:var(--ink)}
.legal-footer-links{display:flex;gap:16px;flex-wrap:wrap}
@media(max-width:640px){
  footer{padding:20px 20px;flex-direction:column;gap:8px}
}
