body.legal-page,html:has(body.legal-page){scroll-snap-type:none!important;scroll-behavior:smooth}body.legal-page{padding-top:0;min-height:100vh;display:flex;flex-direction:column}body.legal-page main{flex:1;width:100%;max-width:var(--content-width);margin:0 auto;padding:var(--spacing-3xl) var(--spacing-lg) var(--spacing-4xl);color:var(--color-text-primary);position:relative}@media (max-width:768px){.legal-page main{padding:var(--spacing-xl) var(--spacing-md) var(--spacing-3xl)}}.back-link,.page-header,.page-intro{margin-bottom:var(--spacing-2xl)}.page-header h1{font-size:clamp(2.5rem,5vw,4rem);margin-bottom:var(--spacing-md)}.back-link,.page-intro{color:var(--color-text-secondary)}.page-intro{font-size:1.125rem;line-height:1.6}.back-link{display:inline-flex;align-items:center;gap:.5rem;font-size:.9375rem;transition:color var(--transition-fast)}.back-link:hover{color:var(--color-accent)}.back-link::before{content:"←";font-size:1.25rem}.legal-page section{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border-light)}.legal-page section:last-of-type{border-bottom:none}.legal-page h2,.legal-page section h2{font-size:1.5rem;margin-bottom:var(--spacing-md);color:var(--color-text-primary)}.legal-page p,.legal-page section p{margin-bottom:var(--spacing-sm);line-height:1.6}.legal-page p:last-child,.legal-page section p:last-child{margin-bottom:0}.legal-page section ul,.legal-page ul{margin-left:var(--spacing-md);color:var(--color-text-secondary);margin-bottom:var(--spacing-sm)}.legal-page li,.legal-page section li{margin-bottom:var(--spacing-xs);line-height:1.6}.legal-page a[target=_blank]::after{content:" ↗";font-size:.875em;opacity:.7}.lang-switch{position:absolute;top:var(--spacing-lg);right:var(--spacing-lg);font-size:.75rem;letter-spacing:.02em;color:var(--color-text-tertiary);text-decoration:none;opacity:.5;transition:opacity var(--transition-fast)}.lang-switch:hover{opacity:1;color:var(--color-text-secondary)}@media (max-width:768px){.lang-switch{top:var(--spacing-md);right:var(--spacing-md)}}.translation-notice{background:var(--color-bg-secondary, rgba(255,255,255,0.05));border-left:3px solid var(--color-accent);padding:var(--spacing-md);margin-bottom:var(--spacing-2xl);font-size:.9375rem;color:var(--color-text-secondary)}.legal-page .footer.legal-footer{margin-top:auto;padding:var(--spacing-xl) var(--spacing-lg);border-top:1px solid var(--color-border-light);background:var(--color-background)}