
.legal-page-body { min-height: 100vh; display: flex; flex-direction: column; background: var(--color-surface); }
.legal-page-shell { min-height: 100vh; display: flex; flex-direction: column; width: 100%; }
.legal-main { flex: 1 0 auto; width: 100%; padding: clamp(2.5rem, 6vw, 5rem) var(--spacing-xl); background: var(--color-surface); }
.legal-container { width: min(100%, 920px); margin: 0 auto; }
.legal-hero { margin-bottom: var(--spacing-2xl); display: flex; flex-direction: column; }
.legal-kicker { color: var(--color-accent); font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.legal-title { margin: .5rem 0 1rem; color: var(--color-primary); font-family: var(--font-family-heading); font-size: var(--font-size-4xl); }
.legal-updated { color: var(--color-on-surface-secondary); }
.legal-company-card { margin: 0 0 var(--spacing-2xl); padding: var(--spacing-xl); border: 1px solid var(--color-border); border-radius: var(--border-radius-lg); background: var(--color-surface-elevated); }
.legal-company-card h2 { margin-bottom: var(--spacing-md); color: var(--color-primary); font-family: var(--font-family-heading); font-size: var(--font-size-2xl); }
.legal-company-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem 1.5rem; }
.legal-company-grid p, .legal-section p, .legal-section li { overflow-wrap: anywhere; }
.legal-section { margin-top: var(--spacing-2xl); }
.legal-section h2 { margin-bottom: .75rem; color: var(--color-primary); font-family: var(--font-family-heading); font-size: var(--font-size-2xl); }
.legal-section h3 { margin: 1rem 0 .5rem; color: var(--color-primary); font-size: var(--font-size-xl); }
.legal-section p + p { margin-top: .8rem; }
.legal-section ul, .legal-section ol { margin: .75rem 0 0 1.25rem; padding-left: 1rem; }
.legal-section li + li { margin-top: .45rem; }
.legal-main a, .legal-main a:visited { color: var(--color-accent); text-decoration: none; font-weight: 600; }
.legal-main a:hover { color: var(--color-primary); }
@media(max-width: 767px){
 .legal-main { padding-inline: var(--spacing-md); }
 .legal-company-grid { grid-template-columns: 1fr; }
 .legal-company-card { padding: var(--spacing-lg); width: 80vw;}
 .legal-section{width: 85vw;}
    .footer-company-details {
        width:70vw;
    }
}
