.privacy-policy-page {
    --privacy-ink: #121212;
    --privacy-muted: #5f6f7d;
    --privacy-gold: #e0b000;
    --privacy-cream: #fff9e8;
    color: var(--privacy-ink);
    background: #fff;
    font-family: 'Outfit', sans-serif;
}

.privacy-policy-container {
    width: min(1180px, calc(100% - 3rem));
    margin-inline: auto;
}

.privacy-policy-hero {
    padding: 7rem 0 4.5rem;
    background: linear-gradient(135deg, #fff9e8 0%, #fff 70%);
    border-bottom: 1px solid rgba(224, 176, 0, .18);
}

.privacy-policy-eyebrow {
    display: inline-flex;
    padding: .45rem 1.1rem;
    border: 1px solid var(--privacy-gold);
    border-radius: 999px;
    color: #b78e00;
    font: 700 .75rem/1 'Plus Jakarta Sans', sans-serif;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.privacy-policy-hero h1 {
    max-width: 850px;
    margin: 1.5rem 0 1rem;
    font: 800 clamp(2.7rem, 6vw, 5.25rem)/1.02 'Plus Jakarta Sans', sans-serif;
    letter-spacing: -.045em;
}

.privacy-policy-hero > .privacy-policy-container > p:not(.privacy-policy-updated) {
    max-width: 760px;
    margin: 0;
    color: var(--privacy-muted);
    font-size: 1.15rem;
    line-height: 1.7;
}

.privacy-policy-updated {
    margin: 1.5rem 0 0;
    font-size: .9rem;
}

.privacy-policy-layout {
    display: grid;
    grid-template-columns: 240px minmax(0, 1fr);
    gap: clamp(3rem, 7vw, 7rem);
    align-items: start;
    padding-block: 5rem 7rem;
}

.privacy-policy-toc {
    position: sticky;
    top: 2rem;
    display: grid;
    gap: .25rem;
    padding: 1.4rem;
    background: var(--privacy-cream);
    border: 1px solid rgba(224, 176, 0, .22);
    border-radius: 18px;
}

.privacy-policy-toc strong {
    margin-bottom: .6rem;
    font-family: 'Plus Jakarta Sans', sans-serif;
}

.privacy-policy-toc a {
    padding: .42rem 0;
    color: #52636f;
    font-size: .9rem;
    text-decoration: none;
}

.privacy-policy-toc a:hover,
.privacy-policy-toc a:focus {
    color: #9b7900;
}

.privacy-policy-content {
    min-width: 0;
    max-width: 800px;
}

.privacy-policy-content section {
    scroll-margin-top: 2rem;
    padding-bottom: 2.8rem;
    margin-bottom: 2.8rem;
    border-bottom: 1px solid #e8e8e8;
}

.privacy-policy-content h2 {
    margin: 0 0 1rem;
    font: 800 clamp(1.55rem, 3vw, 2rem)/1.25 'Plus Jakarta Sans', sans-serif;
    letter-spacing: -.025em;
}

.privacy-policy-content h3 {
    margin: 1.6rem 0 .55rem;
    font: 750 1.15rem/1.35 'Plus Jakarta Sans', sans-serif;
}

.privacy-policy-content p,
.privacy-policy-content li {
    color: #4f606e;
    font-size: 1rem;
    line-height: 1.78;
}

.privacy-policy-content p {
    margin: 0 0 1.1rem;
}

.privacy-policy-content ul {
    padding-left: 1.35rem;
    margin: .5rem 0 1.25rem;
}

.privacy-policy-content li + li {
    margin-top: .45rem;
}

.privacy-policy-content a {
    color: #806400;
    text-decoration: underline;
    text-underline-offset: .18em;
}

.privacy-policy-contact {
    padding: 2rem !important;
    background: var(--privacy-cream);
    border: 1px solid rgba(224, 176, 0, .22) !important;
    border-radius: 20px;
}

@media (max-width: 850px) {
    .privacy-policy-layout {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }

    .privacy-policy-toc {
        position: static;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .privacy-policy-toc strong {
        grid-column: 1 / -1;
    }
}

@media (max-width: 575px) {
    .privacy-policy-container {
        width: min(100% - 2rem, 1180px);
    }

    .privacy-policy-hero {
        padding: 4.5rem 0 3rem;
    }

    .privacy-policy-layout {
        padding-block: 3rem 5rem;
    }

    .privacy-policy-toc {
        grid-template-columns: 1fr;
    }

    .privacy-policy-content section {
        padding-bottom: 2rem;
        margin-bottom: 2rem;
    }
}
