.rt-legal{width:min(940px,calc(100% - clamp(40px,8vw,128px)));margin:clamp(32px,5vw,64px) auto clamp(64px,8vw,112px);padding:clamp(44px,6vw,76px) clamp(40px,7vw,88px) clamp(64px,8vw,96px);border:1px solid var(--rt-line);border-radius:clamp(18px,2vw,28px);background:rgba(255,255,255,.3);box-shadow:0 24px 70px rgba(22,26,23,.06)}
.rt-legal-title{margin:0 0 10px;color:var(--rt-ink);font-family:var(--rt-font-display);font-weight:700;font-size:clamp(1.9rem,3.4vw,2.5rem);letter-spacing:-.01em;line-height:1.08}
.rt-legal-updated{margin:0 0 clamp(28px,4vw,40px);color:var(--rt-ink-faint);font-family:var(--rt-font-text);font-size:.86rem;font-weight:500;line-height:1.5}
.rt-legal-intro{margin:0 0 clamp(36px,5vw,52px);max-width:62ch;color:var(--rt-ink-soft);font-family:var(--rt-font-text);font-size:clamp(1rem,1.2vw,1.08rem);font-weight:500;line-height:1.65}
.rt-legal-toc{margin:0 0 clamp(40px,5vw,56px);padding:20px 22px;border:1px solid var(--rt-line);border-radius:14px;background:var(--rt-card)}
.rt-legal-toc-title{margin:0 0 12px;color:var(--rt-ink-faint);font-family:var(--rt-font-text);font-size:.74rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.rt-legal-toc-list{margin:0;padding:0;list-style:none;columns:2;column-gap:24px}
.rt-legal-toc-list li{margin:0 0 8px;break-inside:avoid}
.rt-legal-toc-list a{font-family:var(--rt-font-text);font-size:.88rem;font-weight:600;color:var(--rt-ink-soft);border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}
.rt-legal-toc-list a:hover,.rt-legal-toc-list a:focus-visible{color:var(--rt-ink);border-color:var(--rt-ink-faint)}
.rt-legal-section{padding:clamp(26px,4vw,38px) 0;border-top:1px solid var(--rt-line)}
.rt-legal-section:first-of-type{border-top:0;padding-top:0}
.rt-legal-h2{margin:0 0 14px;color:var(--rt-ink);font-family:var(--rt-font-display);font-weight:700;font-size:clamp(1.1rem,1.6vw,1.35rem);letter-spacing:-.005em;scroll-margin-top:96px}
.rt-legal-h3{margin:22px 0 6px;color:var(--rt-ink);font-family:var(--rt-font-text);font-weight:700;font-size:.95rem}
.rt-legal-section .rt-legal-h3:first-child{margin-top:0}
.rt-legal-p{margin:0 0 14px;color:var(--rt-ink-soft);font-family:var(--rt-font-text);font-size:clamp(.96rem,1vw,1rem);font-weight:500;line-height:1.72}
.rt-legal-p:last-child{margin-bottom:0}
.rt-legal-ul{display:flex;flex-direction:column;gap:8px;margin:0 0 14px;padding:0;list-style:none}
.rt-legal-ul li{position:relative;padding-left:18px;color:var(--rt-ink-soft);font-family:var(--rt-font-text);font-size:.95rem;font-weight:500;line-height:1.6}
.rt-legal-ul li::before{content:"";position:absolute;left:2px;top:.65em;width:5px;height:5px;border-radius:50%;background:var(--rt-green-deep)}
.rt-legal-ul strong{color:var(--rt-ink)}
.rt-legal-link{color:var(--rt-ink);font-weight:600;border-bottom:1px solid var(--rt-ink-faint);transition:border-color .2s ease,opacity .2s ease}
.rt-legal-link:hover,.rt-legal-link:focus-visible{border-color:var(--rt-ink);opacity:.8}
@media(max-width:560px){.rt-legal{width:calc(100% - 32px);margin:20px auto 56px;padding:36px 24px 52px;border-radius:18px}.rt-legal-title{font-size:clamp(1.85rem,10vw,2.25rem)}.rt-legal-toc{margin-left:-4px;margin-right:-4px;padding:18px 20px}.rt-legal-toc-list{columns:1}}
@media(max-width:380px){.rt-legal{width:calc(100% - 24px);padding-left:20px;padding-right:20px}}
