/* Estilos adicionais; não altera assets/css/style.css. */
.ipg-policy-links { display:flex; flex-wrap:wrap; gap:8px 16px; }
.ipg-policy-footer { display:flex; flex-wrap:wrap; justify-content:space-between; gap:18px; padding-top:24px; }
.ipg-legal-page { margin:0; color:#172033; background:#f4f7fb; font:16px/1.65 "Segoe UI",Roboto,Arial,sans-serif; }
.ipg-legal-page a:focus-visible { outline:3px solid #2e6fc5; outline-offset:4px; border-radius:3px; }
.ipg-legal-skip { position:absolute; left:16px; top:-120px; z-index:10; padding:12px; background:white; color:#102a56; }
.ipg-legal-skip:focus { top:12px; }
.ipg-legal-header { background:white; border-bottom:1px solid #e5eaf2; }
.ipg-legal-header-inner { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:18px 0; }
.ipg-legal-logo { display:block; width:170px; flex-shrink:0; }
.ipg-legal-logo img { display:block; width:100%; }
.ipg-legal-header nav { display:flex; align-items:center; flex-wrap:wrap; gap:24px; font-size:14px; font-weight:600; }
.ipg-legal-home { background:#102a56; color:white; padding:10px 18px; border-radius:10px; }
.ipg-legal-hero { color:white; background:linear-gradient(125deg,#102a56,#163b78); padding:48px 0 40px; }
.ipg-legal-eyebrow { margin:0 0 12px; text-transform:uppercase; font-size:12px; font-weight:700; letter-spacing:.1em; color:#bdd9ff; }
.ipg-legal-hero h1 { font-size:clamp(29px,4vw,44px); line-height:1.18; margin:0 0 18px; max-width:850px; }
.ipg-legal-lead { max-width:800px; color:#e3edfc; margin:0 0 16px; }
.ipg-legal-version { margin:0; color:#c4d5ec; font-size:13px; }
.ipg-legal-wrap { padding-top:28px; padding-bottom:40px; }
.ipg-legal-draft { padding:18px 22px; border:1px solid #eac370; border-left:4px solid #c98c17; border-radius:12px; background:#fff8e7; color:#6b4b10; margin-bottom:24px; }
.ipg-legal-draft p { margin:4px 0 0; }
.ipg-legal-tabs { display:flex; flex-wrap:wrap; gap:10px; padding-bottom:26px; }
.ipg-legal-tabs a { display:block; padding:11px 16px; background:white; border:1px solid #d6e0ee; border-radius:10px; font-size:14px; font-weight:600; }
.ipg-legal-tabs a[aria-current="page"] { color:white; background:#102a56; border-color:#102a56; }
.ipg-legal-grid { display:grid; grid-template-columns:245px minmax(0,1fr); gap:28px; align-items:start; }
.ipg-legal-toc { position:sticky; top:24px; padding:23px; background:white; border:1px solid #e5eaf2; border-radius:14px; font-size:14px; }
.ipg-legal-toc strong { color:#102a56; }
.ipg-legal-toc ol { padding-left:20px; margin:12px 0 0; }
.ipg-legal-toc li { margin:10px 0; }
.ipg-legal-toc a:hover { color:#2e6fc5; text-decoration:underline; }
.ipg-legal-content { background:white; padding:30px 36px; border:1px solid #e5eaf2; border-radius:16px; min-width:0; }
.ipg-legal-content section + section { border-top:1px solid #e5eaf2; padding-top:24px; margin-top:28px; }
.ipg-legal-content section { scroll-margin-top:20px; }
.ipg-legal-content h2 { font-size:23px; line-height:1.3; margin:0 0 16px; color:#102a56; }
.ipg-legal-content h3 { font-size:17px; margin:20px 0 8px; }
.ipg-legal-content p { margin:0 0 14px; }
.ipg-legal-content li { margin:6px 0; }
.ipg-legal-content a { color:#205ca3; text-decoration:underline; overflow-wrap:anywhere; }
.ipg-legal-details { margin:0; }
.ipg-legal-details div { display:grid; grid-template-columns:145px minmax(0,1fr); padding:10px 0; gap:16px; border-bottom:1px solid #eef2f7; }
.ipg-legal-details dt { font-weight:600; font-size:14px; color:#64748b; }
.ipg-legal-details dd { margin:0; overflow-wrap:anywhere; }
.ipg-legal-pending { color:#845905; font-size:14px; }
.ipg-legal-review { margin:20px 0; background:#fff8e7; border:1px dashed #d8b66f; padding:16px 18px; border-radius:10px; font-size:14px; color:#6b4b10; }
.ipg-legal-review p { margin:6px 0 0; }
.ipg-legal-contact { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px; margin-top:30px; background:#e7eef9; border-radius:14px; padding:24px; }
.ipg-legal-contact h2 { font-size:20px; margin:0 0 4px; color:#102a56; }
.ipg-legal-contact p { margin:0; }
.ipg-legal-contact a { color:#102a56; font-weight:700; overflow-wrap:anywhere; }
.ipg-legal-footer { background:#071b38; color:#d7e2f2; font-size:13px; padding:28px 0; }
.ipg-legal-footer .container { display:flex; flex-wrap:wrap; gap:18px; justify-content:space-between; }
.ipg-legal-footer nav { display:flex; flex-wrap:wrap; gap:18px; }
.ipg-legal-footer a { color:white; }
@media(max-width:900px) { .ipg-legal-grid { grid-template-columns:1fr; gap:20px; } .ipg-legal-toc { position:static; } .ipg-legal-toc ol { columns:2; column-gap:32px; } .ipg-legal-toc li { break-inside:avoid; } }
@media(max-width:600px) { .ipg-legal-header-inner { flex-direction:column; align-items:flex-start; gap:14px; } .ipg-legal-header nav { gap:18px; } .ipg-legal-hero { padding:32px 0; } .ipg-legal-content { padding:24px 20px; } .ipg-legal-details div { grid-template-columns:1fr; gap:3px; } .ipg-legal-toc ol { columns:1; } .ipg-legal-tabs a { width:100%; } .ipg-legal-contact { padding:20px; } }
