/* ==========================================================================
   Legal Pages (Imprint, Privacy)
   ========================================================================== */

/* Static nav (always visible on legal pages) */
.nav--static {
    position: relative;
    transform: none;
    opacity: 1;
}

/* Page layout to push footer to bottom */
body:has(.legal-content) {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

body:has(.legal-content) .legal-content {
    flex: 1;
}

/* Main content area */
.legal-content {
    max-width: 700px;
    margin: 0 auto;
    padding: var(--s-8) var(--s-4);
    padding-top: var(--s-6);
}

.legal-content h1 {
    font-size: var(--fs-2xl);
    color: var(--primary);
    margin-bottom: var(--s-6);
}

.legal-content h2 {
    font-size: var(--fs-lg);
    color: var(--primary);
    margin-top: var(--s-6);
    margin-bottom: var(--s-3);
}

.legal-content p {
    margin-bottom: var(--s-4);
    color: var(--text);
}

.legal-content ul {
    margin-bottom: var(--s-4);
    padding-left: var(--s-6);
}

.legal-content li {
    margin-bottom: var(--s-2);
    color: var(--text);
    position: relative;
    list-style: none;
}

.legal-content li::before {
    content: '–';
    color: var(--primary);
    font-weight: 600;
    position: absolute;
    left: calc(-1 * var(--s-4));
}

/* Embed mode: hide nav and footer */
.embed-mode .nav,
.embed-mode .footer {
    display: none;
}

.embed-mode .legal-content {
    padding-top: var(--s-4);
}

/* Reduce footer margin on legal pages */
.legal-content + .footer {
    margin-top: 0;
}
