:root{color-scheme:light;}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:oklch(0.93 0.007 80);color:oklch(0.26 0.02 55);font-family:'Hanken Grotesk',system-ui,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.65;}
a{color:oklch(0.45 0.075 55);text-underline-offset:4px;}
a:hover{color:oklch(0.36 0.07 55);}
a:focus-visible{outline:2px solid oklch(0.45 0.075 55);outline-offset:4px;border-radius:3px;}
::selection{background:oklch(0.6 0.085 52 / 0.28);}
.legal-header{position:sticky;top:14px;z-index:10;padding:0 16px;}
.legal-header-inner{max-width:1180px;margin:0 auto;padding:0 8px 0 24px;background:oklch(0.2 0.02 55 / 0.88);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);border:1px solid oklch(1 0 0 / 0.1);border-radius:100px;}
.legal-footer-inner{max-width:1180px;margin:0 auto;padding:0 32px;}
.legal-header-inner{height:62px;display:flex;align-items:center;justify-content:space-between;gap:20px;}
.legal-brand{display:inline-block;font-weight:700;font-size:25px;letter-spacing:-0.035em;color:oklch(0.95 0.008 82);text-decoration:none;white-space:nowrap;}
.legal-brand::after{content:'';display:inline-block;width:0.26em;height:0.26em;border-radius:50%;background:oklch(0.6 0.085 52);margin-left:0.11em;vertical-align:calc(0.5ex - 0.13em);animation:legal-pulse 2.6s ease-in-out infinite;}
.legal-back{display:inline-flex;align-items:center;min-height:44px;padding:10px 22px;border-radius:100px;background:oklch(0.75 0.1 58);color:oklch(0.2 0.02 55);font-weight:700;font-size:14px;text-decoration:none;white-space:nowrap;}
.legal-back:hover{background:oklch(0.95 0.008 82);color:oklch(0.2 0.02 55);}
.legal-main{max-width:880px;margin:0 auto;padding:96px 32px 112px;}
.legal-kicker{text-transform:uppercase;letter-spacing:.2em;font-size:12px;font-weight:600;color:oklch(0.5 0.08 55);}
h1{font-size:clamp(42px,6.4vw,84px);font-weight:800;line-height:0.96;letter-spacing:-.05em;text-wrap:balance;margin:20px 0 22px;}
.legal-intro{font-size:20px;line-height:1.55;color:oklch(0.4 0.02 55);max-width:63ch;margin:0 0 34px;}
.legal-updated{font-size:13px;color:oklch(0.5 0.03 60);margin:-15px 0 34px;}
.legal-note{padding:18px 22px;background:oklch(0.98 0.006 85);border:1px solid oklch(0.85 0.012 75);border-left:4px solid oklch(0.6 0.085 52);border-radius:14px;margin:0 0 22px;}
.legal-toc{background:oklch(0.905 0.008 78);border-radius:16px;padding:22px 28px;margin:34px 0;}
.legal-toc strong{display:block;font-size:14px;margin-bottom:8px;}
.legal-toc ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;margin:0;padding-left:18px;}
.legal-toc li{margin:5px 0;}
.legal-main section{scroll-margin-top:94px;background:oklch(0.98 0.006 85);border:1px solid oklch(0.85 0.012 75);border-radius:22px;padding:32px 36px;margin-top:18px;}
.legal-main h2{font-size:26px;line-height:1.18;font-weight:700;letter-spacing:-.025em;margin:0 0 18px;}
.legal-main h3{font-size:18px;line-height:1.35;margin:22px 0 10px;}
.legal-main p,.legal-main ul,.legal-main ol{margin:0 0 15px;}
.legal-main section>:last-child{margin-bottom:0;}
.legal-main ul,.legal-main ol{padding-left:22px;}
.legal-main li+li{margin-top:7px;}
.legal-main dl{display:grid;grid-template-columns:minmax(140px,180px) 1fr;gap:10px 20px;margin:0;}
.legal-main dt{font-weight:700;}
.legal-main dd{margin:0;overflow-wrap:anywhere;}
.legal-footer{border-top:1px solid oklch(1 0 0 / 0.08);padding:44px 0 40px;background:oklch(0.2 0.02 55);color:oklch(0.8 0.02 65);}
.legal-footer-inner{display:flex;align-items:center;gap:18px 28px;flex-wrap:wrap;}
.legal-footer-inner .legal-brand{font-size:20px;}
.legal-footer-inner .legal-brand::after{animation:none;}
.legal-footer-inner nav{display:flex;align-items:center;gap:10px 18px;flex-wrap:wrap;font-size:14px;}
.legal-footer-inner nav a{color:oklch(0.7 0.02 65);text-decoration:none;}
.legal-footer-inner nav a:hover{color:oklch(0.95 0.008 82);}
.legal-footer-inner nav a[aria-current="page"]{font-weight:700;color:oklch(0.75 0.1 58);text-decoration:none;}
@keyframes legal-pulse{0%,100%{transform:translateY(0) scale(1);opacity:1;}50%{transform:translateY(-7px) scale(1.06);opacity:.82;}}
@media(max-width:640px){.legal-footer-inner{padding-left:20px;padding-right:20px;}.legal-header-inner{height:58px;padding-left:20px;}.legal-back{padding:10px 16px;font-size:13px;}.legal-main{padding:72px 20px 80px;}.legal-intro{font-size:18px;}.legal-main section{padding:25px 24px;}.legal-main dl{grid-template-columns:1fr;gap:0;}.legal-main dd{margin-bottom:13px;}.legal-main dd:last-child{margin-bottom:0;}.legal-toc{padding:20px 24px;}.legal-toc ul{grid-template-columns:1fr;}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;}}
