.legal-hero{position:relative;padding-bottom:clamp(54px,7vw,86px);overflow:hidden;border-bottom:1px solid var(--line)}
.legal-hero::after{content:"";position:absolute;z-index:-1;width:540px;height:540px;right:-170px;bottom:-330px;border-radius:50%;background:radial-gradient(circle,rgba(240,180,159,.3),rgba(139,134,174,.11) 52%,transparent 71%)}
.legal-hero h1{max-width:1040px}
.legal-hero h1 em{color:#7d789f;font-family:Georgia,serif;font-style:normal;font-weight:400}
.legal-effective{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:26px!important;color:#6b6e7e!important;font-size:.84rem!important}
.legal-body{padding:clamp(42px,6vw,76px) 0 24px}
.legal-intro{max-width:940px;margin-bottom:24px;padding:clamp(24px,4vw,38px);border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.76);box-shadow:0 14px 45px rgba(25,28,55,.07);color:var(--ink-soft);font-size:1.03rem}
.legal-intro p{margin:0}.legal-intro p+p{margin-top:15px}.legal-intro a,.legal-notice a,.legal-document a{color:#5e588a;font-weight:700;text-underline-offset:3px}
.legal-notice{margin-bottom:30px;padding:24px 27px;border:1px solid rgba(139,134,174,.32);border-left:5px solid var(--lavender);border-radius:17px;background:var(--lavender-light)}
.legal-notice-warning{border-color:rgba(240,180,159,.58);border-left-color:#d68e73;background:var(--peach-light)}
.legal-notice-label{margin-bottom:7px;color:#6d6794;text-transform:uppercase;letter-spacing:.13em;font-size:.7rem;font-weight:850}.legal-notice-warning .legal-notice-label{color:#8d583f}
.legal-notice h2{margin:0;font-size:1.18rem;letter-spacing:-.02em}.legal-notice p{max-width:980px;margin:8px 0 0;color:#4d5062;font-size:.92rem}
.legal-layout{display:grid;grid-template-columns:minmax(210px,.32fr) minmax(0,1fr);gap:clamp(25px,4vw,48px);align-items:start}
.legal-toc>div{position:sticky;top:104px;padding:22px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.78);box-shadow:0 12px 34px rgba(25,28,55,.06)}
.legal-toc h2{margin:0 0 14px;color:#737687;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem}
.legal-toc ol{display:grid;gap:8px;margin:0;padding:0;list-style:none;counter-reset:legal-toc}
.legal-toc a{display:block;padding:5px 7px;border-radius:8px;color:#55586a;text-decoration:none;font-size:.82rem;font-weight:650;line-height:1.35}
.legal-toc a:hover{color:var(--ink);background:var(--mist)}
.legal-document{display:grid;gap:18px;min-width:0}
.legal-document section{scroll-margin-top:104px;padding:clamp(25px,4vw,38px);border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 14px 42px rgba(25,28,55,.055);color:var(--ink-soft)}
.legal-document section h2{margin:0 0 19px;color:var(--ink);font-size:clamp(1.42rem,2.3vw,1.85rem);letter-spacing:-.035em;line-height:1.18}
.legal-document section h3{margin:0;color:var(--ink);font-size:1.04rem;line-height:1.4}.legal-document section h4{margin:0;color:var(--ink);font-size:.96rem;line-height:1.45}
.legal-document section p{margin:9px 0 0}.legal-document section>p:first-of-type{margin-top:0}.legal-document section ul{margin:0;padding-left:23px}.legal-document section li+li{margin-top:9px}
.legal-document section>div{overflow-x:auto}.legal-document section>div>div+div{margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}
.legal-document #section-8-2{margin-top:25px;padding:23px;border-left:4px solid var(--lavender);border-radius:0 14px 14px 0;background:#f8f7fb}
.legal-document #section-8-2>div+div{margin-top:21px;padding-top:21px;border-top:1px solid rgba(17,21,43,.1)}
.legal-document table{width:100%;min-width:660px;border-collapse:collapse;color:#4e5162;font-size:.85rem;line-height:1.5}
.legal-document th,.legal-document td{padding:13px 14px;border:1px solid var(--line);text-align:left;vertical-align:top}.legal-document th{color:var(--ink);background:var(--mist);font-weight:800}.legal-document tbody tr:nth-child(even){background:#fbfbfc}
.legal-document address{margin-top:15px;padding:20px;border:1px solid var(--line);border-radius:13px;background:var(--mist);font-style:normal}.legal-document address p:first-child{margin-top:0}
@media(max-width:900px){.legal-layout{grid-template-columns:1fr}.legal-toc>div{position:static}.legal-toc ol{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.legal-hero{padding-top:54px}.legal-body{padding-top:30px}.legal-intro,.legal-notice,.legal-document section{padding:21px;border-radius:16px}.legal-toc ol{grid-template-columns:1fr}.legal-document #section-8-2{padding:18px}.legal-document table{min-width:570px}}
@media print{.site-nav,.site-footer,.legal-toc{display:none!important}.legal-hero{padding:20px 0}.legal-body{padding:15px 0}.legal-layout{display:block}.legal-document section,.legal-intro,.legal-notice{break-inside:avoid;box-shadow:none}.legal-document section{margin-bottom:16px}}
