/* ===== POLÍTICA DE PRIVACIDADE ===== */
.privacy { background: var(--color-bg-alt); padding-bottom: 70px; }

.privacy-hero {
    background: linear-gradient(180deg, #3d3d3d 0%, #252525 100%);
    color: var(--color-white);
    padding: 70px 0 60px;
}
.privacy-hero__tag {
    display: inline-block; font-size: 0.75rem; font-weight: 700;
    letter-spacing: .14em; text-transform: uppercase;
    color: #FFB699; border: 1px solid rgba(255,182,153,.45);
    border-radius: 100px; padding: 6px 15px; margin-bottom: 16px;
}
.privacy-hero h1 { font-size: 2.6rem; font-weight: 800; margin-bottom: 12px; line-height: 1.15; }
.privacy-hero p { font-size: 1.05rem; color: rgba(255,255,255,.88); max-width: 680px; line-height: 1.7; }
.privacy-hero .privacy-hero__date { font-size: 0.88rem; margin-top: 14px; color: rgba(255,255,255,.7); }

.privacy-layout {
    display: grid;
    grid-template-columns: 250px 1fr;
    gap: 40px;
    margin-top: 40px;
    align-items: start;
}

/* sumario lateral fixo durante a rolagem */
.privacy-toc {
    position: sticky; top: 100px;
    background: var(--color-white); border-radius: var(--radius);
    box-shadow: var(--shadow-sm); padding: 22px 22px 18px;
}
.privacy-toc strong { display: block; font-size: 0.78rem; letter-spacing: .1em; text-transform: uppercase; color: var(--color-primary); margin-bottom: 12px; }
.privacy-toc ol { list-style: none; padding: 0; margin: 0; counter-reset: toc; }
.privacy-toc li { counter-increment: toc; margin: 0; }
.privacy-toc a {
    display: flex; gap: 8px; padding: 6px 0; font-size: 0.86rem;
    color: var(--color-text); text-decoration: none; line-height: 1.4;
    transition: color .2s;
}
.privacy-toc a::before { content: counter(toc) "."; color: var(--color-primary); font-weight: 700; min-width: 18px; }
.privacy-toc a:hover { color: var(--color-primary); }

.privacy-content {
    background: var(--color-white); border-radius: var(--radius);
    box-shadow: var(--shadow-sm); padding: 46px 52px;
}
.privacy-content section { padding-bottom: 30px; margin-bottom: 30px; border-bottom: 1px solid var(--color-border); scroll-margin-top: 100px; }
.privacy-content section:last-child { border-bottom: none; margin-bottom: 0; padding-bottom: 0; }
.privacy-content h2 { font-size: 1.35rem; font-weight: 800; color: var(--color-text-dark); margin-bottom: 14px; }
.privacy-content p, .privacy-content li {
    font-size: 0.97rem; line-height: 1.75; color: var(--color-text);
    text-align: justify; hyphens: auto;
}
.privacy-content p { margin-bottom: 12px; }
.privacy-content ul { padding-left: 20px; margin-bottom: 12px; }
.privacy-content li { margin-bottom: 8px; }
.privacy-content li::marker { color: var(--color-primary); }
.privacy-content a { color: var(--color-primary); font-weight: 600; text-decoration: none; }
.privacy-content a:hover { text-decoration: underline; }
.privacy-content strong { color: var(--color-text-dark); }

.privacy-content .base { display: block; font-size: 0.84rem; color: var(--color-grey-pleasant); margin-top: 2px; }

.privacy-table-wrap { overflow-x: auto; margin: 6px 0 16px; }
.privacy-table { width: 100%; border-collapse: collapse; font-size: 0.92rem; }
.privacy-table th {
    text-align: left; background: var(--color-bg-alt); color: var(--color-text-dark);
    font-size: 0.78rem; text-transform: uppercase; letter-spacing: .06em;
    padding: 11px 14px; border-bottom: 2px solid var(--color-border);
}
.privacy-table td { padding: 12px 14px; border-bottom: 1px solid var(--color-border); color: var(--color-text); line-height: 1.6; vertical-align: top; }
.privacy-table td:first-child { white-space: nowrap; width: 1%; }

.privacy-highlight {
    background: #FDF5F1; border-left: 4px solid var(--color-primary);
    border-radius: 10px; padding: 26px 28px !important;
    border-bottom: none !important;
}

.privacy-contact { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 24px; margin-top: 14px; }
.privacy-contact span { display: block; font-size: 0.75rem; text-transform: uppercase; letter-spacing: .08em; color: var(--color-grey-pleasant); }
.privacy-contact strong { font-size: 0.97rem; }

/* campos ainda nao preenchidos: bem visiveis para revisao antes de publicar */
mark.preencher { background: #FFE58A; color: #5a4300; padding: 1px 5px; border-radius: 4px; font-weight: 600; }

@media (max-width: 900px) {
    .privacy-layout { grid-template-columns: 1fr; }
    .privacy-toc { position: static; }
    .privacy-content { padding: 30px 22px; }
    .privacy-hero h1 { font-size: 2rem; }
    .privacy-contact { grid-template-columns: 1fr; }
    .privacy-table td:first-child { white-space: normal; }
}
