.legal-page{max-width:72rem;margin-inline:auto;padding-block:clamp(2.5rem,6vw,5.5rem) var(--space-3xl)}
.legal-heading{max-width:53rem;padding-bottom:var(--space-xl)}
.legal-eyebrow{margin:0 0 var(--space-md);font-size:var(--text-sm);font-weight:600;color:var(--color-accent)}
.legal-heading h1{margin:0;font-family:var(--font-display);font-size:clamp(2.5rem,6vw,4.5rem);line-height:1.1;letter-spacing:-.035em;text-wrap:balance}
.legal-introduction{max-width:48rem;margin:var(--space-lg) 0 0;color:var(--color-muted);font-size:var(--text-lg);line-height:1.85}
.legal-updated{margin:var(--space-lg) 0 0;font-size:var(--text-xs);color:var(--color-muted)}
.legal-contents{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;border-block:1px solid var(--color-rule);padding-block:var(--space-sm);margin-bottom:var(--space-2xl)}
.legal-contents a{display:inline-flex;align-items:center;min-height:44px;font-size:var(--text-sm)}
.legal-body{max-width:53rem}
.legal-section{scroll-margin-top:8rem}
.legal-section+.legal-section{margin-top:clamp(2.5rem,5vw,4rem)}
.legal-section h2{margin:0 0 var(--space-md);font-family:var(--font-display);font-size:clamp(1.35rem,2.8vw,1.75rem);line-height:1.4;letter-spacing:-.025em;text-wrap:balance}
.legal-section p,.legal-section li,.legal-section dd{font-size:var(--text-md);line-height:1.9;color:var(--color-muted);overflow-wrap:anywhere}
.legal-section p{margin:0 0 var(--space-md)}
.legal-page a,.data-notice a{color:var(--color-accent);text-decoration:underline;text-underline-offset:.25em;text-decoration-thickness:1px}
.legal-page a:hover,.data-notice a:hover{text-decoration-thickness:2px}
.legal-page a:focus-visible,.data-notice a:focus-visible{outline:2px solid var(--color-focus);outline-offset:4px;border-radius:2px}
.legal-section .legal-action{margin-block:var(--space-md) 0}
.legal-action a{display:inline-flex;align-items:center;min-height:44px;font-weight:500}
.legal-facts{display:grid;margin:0;gap:var(--space-lg)}
.legal-facts>div{display:grid;grid-template-columns:10.5rem minmax(0,1fr);gap:var(--space-lg);padding-block:var(--space-md);border-top:1px solid var(--color-rule)}
.legal-facts dt{font-size:var(--text-sm);line-height:1.8;font-weight:600;color:var(--color-ink)}
.legal-facts dd{margin:0}
.legal-steps{padding-left:1.4rem;margin-block:var(--space-md)}
.legal-steps li{padding-left:.4rem;margin-bottom:var(--space-sm)}
.legal-steps li::marker{color:var(--color-accent);font-size:var(--text-sm);font-weight:600}
.data-notice{margin-block:var(--space-md);padding-left:var(--space-md);border-left:2px solid var(--color-rule);font-size:var(--text-sm);line-height:1.8;color:var(--color-muted)}
.data-notice p{margin:0;font-size:inherit;line-height:inherit}
.data-notice-links{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem;margin-top:.35rem}
.data-notice-links a{display:inline-flex;align-items:center;min-height:44px}
.footer-legal-links{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem}
.footer-legal-links a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:40rem){.legal-page{padding-block:var(--space-xl) var(--space-2xl)}.legal-heading{padding-bottom:var(--space-lg)}.legal-introduction{font-size:var(--text-md)}.legal-contents{column-gap:var(--space-lg);margin-bottom:var(--space-xl)}.legal-facts>div{grid-template-columns:minmax(0,1fr);gap:var(--space-xs)}.legal-section{scroll-margin-top:7rem}.legal-section p,.legal-section li,.legal-section dd{font-size:var(--text-sm);line-height:1.9}.legal-heading h1{font-size:clamp(2.2rem,9vw,3rem)}}
