/* ==========================================================================
   Static Legal Pages (Privacy Policy, Terms & Conditions, Disclaimer)
   Privacy typography aligned to Figma specs
   ========================================================================== */

/* Main Section Wrapper */
.legal-page-section,
.privacy-wrapper,
.legal-wrapper {
    background-color: #ffffff;
    width: 100%;
    padding: 3.375rem var(--site-gutter-x) 6.25rem var(--site-gutter-x);
    box-sizing: border-box;
}

/* Inner Container - Matches .navbar max-width and margins */
.legal-page-container,
.privacy-container,
.legal-container {
    max-width: var(--site-content-max);
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
    background: transparent;
    border: none;
    box-shadow: none;
    border-radius: 0;
}

/* Page Title — 42px / 600 / #111827 / mb 20px */
.legal-title,
.privacy-title {
    font-family: "Poppins", sans-serif;
    font-size: 42px;
    font-weight: 600;
    color: #111827;
    line-height: 1.2;
    margin: 0 0 20px 0;
    letter-spacing: -0.02em;
}

/* Meta — Published On 14/700, Date 14/400, both #4A4F54 */
.legal-meta,
.privacy-meta {
    display: block;
    font-family: "Inter", sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #4a4f54;
    margin: 0 0 54px 0;
    line-height: 1.5;
    background: transparent;
    border: none;
    padding: 0;
    border-radius: 0;
}

.legal-meta strong,
.privacy-meta strong {
    font-family: "Inter", sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #4a4f54;
}

/* Content Container */
.legal-content,
.privacy-content {
    font-family: "Inter", sans-serif;
    font-size: 18px;
    line-height: 1.6;
    color: #4a4f54;
    max-width: 72rem;
}

/* Lead text (e.g. Terms welcome clause) — 10px gap after heading */
.legal-lead,
.legal-intro-lead {
    font-family: "Inter", sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #111827;
    line-height: 1.6;
    margin: 0 0 10px 0;
}

/* Section Headings — 30px / 600 / #111827 / mb 10px */
.legal-section-title,
.privacy-section-title {
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 600;
    color: #111827;
    margin: 0 0 10px 0;
    letter-spacing: -0.015em;
    line-height: 1.3;
}

/* Section Wrap — 30px gap between sections */
.privacy-section,
.legal-section {
    margin: 0 0 30px 0;
}

.privacy-section:last-child,
.legal-section:last-child {
    margin-bottom: 0;
}

/* Content points — 18px / 400 / #4A4F54 / mb 10px */
.legal-content p,
.privacy-content p,
.privacy-paragraph {
    font-family: "Inter", sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.6;
    color: #4a4f54;
    margin: 0 0 10px 0;
}

/* Disclaimer body — 16px */
.legal-content .legal-disclaimer-paragraph,
.legal-disclaimer-paragraph {
    font-family: "Inter", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6;
    color: #4a4f54;
    margin: 0 0 10px 0;
}

.legal-content p:last-child,
.privacy-content p:last-child,
.privacy-paragraph:last-child,
.privacy-section > :last-child {
    margin-bottom: 0;
}

/* Point highlights (Usage Data, etc.) — same font/color, bold only */
.legal-content strong,
.privacy-content strong,
.privacy-paragraph strong {
    font-family: "Inter", sans-serif;
    font-size: inherit;
    font-weight: 700;
    color: #000;
}

.legal-content a,
.privacy-content a {
    color: #4a4f54;
    text-decoration: none;
    font-weight: inherit;
}

.legal-content a:hover,
.privacy-content a:hover {
    color: #4a4f54;
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* Sub-titles (e.g. Dispute resolution heading) — 10px gap after heading */
.legal-subtitle {
    font-family: "Poppins", sans-serif;
    font-size: 1.25rem;
    font-weight: 600;
    color: #111827;
    margin: 2.5rem 0 10px 0;
}

/* Nested lists (a), (b), (c) — stacked */
.privacy-list,
.legal-sublist,
.legal-content ul:not(.legal-check-list),
.legal-content ol,
.privacy-content ul:not(.legal-check-list),
.privacy-content ol {
    padding: 0 0 0 1.5rem;
    margin: 0 0 10px 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.privacy-list.list-unstyled {
    list-style: none;
    padding: 0;
}

.privacy-list li,
.legal-sublist li,
.legal-content ul:not(.legal-check-list) li,
.legal-content ol li,
.privacy-content ul:not(.legal-check-list) li,
.privacy-content ol li {
    font-family: "Inter", sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.6;
    color: #4a4f54;
}

/* Horizontal inline lists — Managing Cookies / Our Details (Figma) */
.privacy-inline-list {
    list-style: none;
    padding: 0;
    margin: 0 0 10px 0;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.75rem 2.5rem;
}

.privacy-inline-list li {
    font-family: "Inter", sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.6;
    color: #4a4f54;
    padding-left: 0;
}

/* Checkmark List for Terms & Conditions — content 16px */
.legal-checklist:not(:last-child),
.legal-check-list:not(:last-child) {
    list-style: none;
    padding: 0;
    margin: 0 0 30px 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.legal-checklist-item,
.legal-check-list li {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
    font-family: "Inter", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6;
    color: #4a4f54;
}

.legal-checklist-item span,
.legal-check-list li span {
    font-size: 16px;
    font-weight: 400;
    color: #4a4f54;
}

.legal-checklist-icon,
.legal-check-icon {
    flex-shrink: 0;
    width: 1.25rem;
    height: 1.25rem;
    margin-top: 0.2rem;
    color: #2563eb;
}

/* Responsive */
@media (max-width: 64rem) {
    .legal-page-section,
    .privacy-wrapper,
    .legal-wrapper {
        padding: 2.5rem var(--site-gutter-x) 4.5rem var(--site-gutter-x);
    }

    .legal-title,
    .privacy-title {
        font-size: 36px;
    }

    .legal-section-title,
    .privacy-section-title {
        font-size: 26px;
    }
}

@media (max-width: 48rem) {
    .legal-meta, .privacy-meta {
        margin: 0 0 30px 0;
    }
    .legal-page-section,
    .privacy-wrapper,
    .legal-wrapper {
        /* padding: 2rem var(--site-gutter-x) 3.5rem var(--site-gutter-x); */
        padding-bottom: 50px;
        padding-top: 50px;
        margin: 0;
    }

    .legal-title,
    .privacy-title {
        font-size: 30px;
        margin-bottom: 16px;
    }

    .legal-section-title,
    .privacy-section-title {
        font-size: 22px;
    }

    .legal-content p,
    .privacy-content p,
    .privacy-paragraph,
    .legal-disclaimer-paragraph,
    .privacy-list li,
    .privacy-inline-list li,
    .legal-sublist li {
        font-size: 16px;
    }
}
