:root{
  --bg:#f5f5f7;
  --ink:#111217;
  --muted:#606571;
  --line:#d9dbe1;
  --accent:#526ac8;
  --max:880px;
}
*{box-sizing:border-box}
html{background:var(--bg);scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang TC","PingFang SC","Helvetica Neue",Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-underline-offset:3px}
button{font:inherit}
:focus-visible{outline:2px solid #526ac8;outline-offset:3px}
.site-head{
  position:sticky;
  top:0;
  z-index:10;
  border-bottom:1px solid rgba(17,18,23,.08);
  background:rgba(245,245,247,.90);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.site-head>div{
  width:min(calc(100% - 32px),var(--max));
  min-height:64px;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  font-weight:700;
}
.brand img{width:70px;height:auto}
.head-actions{display:flex;align-items:center;gap:8px}
.back-link,.lang-button{
  min-height:44px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(17,18,23,.10);
  border-radius:999px;
  background:#fff;
  color:var(--ink);
  font-size:12px;
  font-weight:600;
  text-decoration:none;
}
.lang-button{cursor:pointer}
main{
  width:min(calc(100% - 32px),var(--max));
  margin:auto;
  padding:92px 0 110px;
}
.hero{max-width:720px}
h1{
  margin:0;
  font-size:clamp(48px,8vw,78px);
  line-height:.96;
  letter-spacing:-.038em;
}
.lead{
  margin:28px 0 0;
  max-width:680px;
  color:var(--muted);
  font-size:19px;
  line-height:1.65;
}
.meta{
  margin-top:16px;
  color:#777c87;
  font-size:12px;
}
.content{
  margin-top:72px;
  border-top:1px solid var(--line);
}
section{
  padding:38px 0 42px;
  border-bottom:1px solid var(--line);
}
h2{
  margin:0 0 17px;
  font-size:28px;
  line-height:1.12;
  letter-spacing:-.03em;
}
h3{
  margin:28px 0 10px;
  font-size:18px;
  letter-spacing:-.02em;
}
p,li{
  color:#555a65;
  font-size:15px;
  line-height:1.75;
}
p{margin:10px 0}
ul{padding-left:21px;margin:12px 0}
.contact{
  padding:28px;
  border-radius:16px;
  background:#111217;
  color:#fff;
}
.contact h2,.contact p,.contact a{color:#fff}
.contact p{opacity:.78}
.contact a{font-weight:650}
.notice{
  margin-top:22px;
  padding:16px 18px;
  border-radius:12px;
  background:#e9ebf2;
  color:#555a65;
  font-size:13px;
  line-height:1.6;
}
footer{
  border-top:1px solid var(--line);
  padding:28px 16px calc(28px + env(safe-area-inset-bottom));
  color:#757a85;
  font-size:11px;
  text-align:center;
}
[data-lang-content][hidden]{display:none}
@media(max-width:620px){
  .site-head>div{min-height:60px}
  .brand img{width:62px}
  .back-link{padding-inline:11px}
  .lang-button{width:44px;padding:0}
  .lang-button span:last-child{display:none}
  main{padding-top:68px;padding-bottom:86px}
  h1{font-size:clamp(43px,13vw,58px)}
  .lead{font-size:17px}
  .content{margin-top:54px}
  section{padding-block:32px 36px}
  h2{font-size:25px}
  p,li{font-size:14px}
  .contact{padding:22px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Language switcher on the localized legal pages. */
.lang-links{display:flex;align-items:center;gap:10px;font-size:13px}
.lang-links a{color:inherit;opacity:.6;text-decoration:none}
.lang-links a[aria-current="page"]{opacity:1;font-weight:600}
.head-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
