/* Menu público único (src/public-menu.js). Isolado com o prefixo .um para ficar igual
   em todas as páginas, independente do CSS de cada uma. */
.um{position:sticky;top:0;z-index:950;background:rgba(255,255,255,.94);-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid #e7ebf3;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.2}
.um *,.um *::before,.um *::after{box-sizing:border-box}
.um__in{max-width:1200px;margin:0 auto;padding:0 20px;height:68px;display:flex;align-items:center;gap:18px}
.um__brand{display:flex;align-items:center;flex:0 0 auto}
.um__brand img{height:60px;width:auto;display:block;margin:-6px 0 -6px -8px}
.um__nav{display:flex;align-items:center;gap:2px;margin-left:10px}
.um__nav>a,.um__sol>summary{display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border-radius:10px;color:#1d2939!important;font-size:15px;font-weight:600;text-decoration:none!important;cursor:pointer;list-style:none;white-space:nowrap;background:transparent}
.um__nav>a:hover,.um__sol>summary:hover,.um__sol[open]>summary{background:#f2f5fb;color:#015afd!important}
.um summary::-webkit-details-marker{display:none}
.um summary::marker{content:''}
.um__sol{position:relative}
.um__sol>summary::after{content:'';width:6px;height:6px;margin:-3px 0 0 8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}
.um__drop{position:absolute;top:calc(100% + 8px);left:0;min-width:270px;padding:8px;display:grid;gap:2px;background:#fff;border:1px solid #e7ebf3;border-radius:16px;box-shadow:0 24px 48px -20px rgba(16,24,40,.35)}
.um__drop a,.um__panel>a{display:block;padding:11px 12px;border-radius:10px;color:#1d2939!important;font-size:14.5px;font-weight:600;text-decoration:none!important}
.um__drop a:hover,.um__panel>a:hover{background:#f2f5fb;color:#015afd!important}
.um__act{margin-left:auto;display:flex;gap:8px;align-items:center}
.um__btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border-radius:12px;font-size:14.5px;font-weight:700;text-decoration:none!important;white-space:nowrap;transition:transform .15s ease,box-shadow .15s ease}
.um__btn--ghost{color:#0b1f4d!important;background:#fff;border:1px solid #d0d7e4}
.um__btn--ghost:hover{border-color:#015afd;color:#015afd!important}
.um__btn--primary{color:#fff!important;background:linear-gradient(180deg,#ff7a1a,#ff5a00);border:0;box-shadow:0 10px 24px -10px rgba(255,106,0,.7)}
.um__btn--primary:hover{transform:translateY(-1px)}
.um a:focus-visible,.um summary:focus-visible{outline:3px solid #015afd;outline-offset:2px}
.um__mob{display:none;margin-left:auto}
.um__mob>summary{width:44px;height:44px;display:grid;place-items:center;border:1px solid #d0d7e4;border-radius:12px;background:#fff;cursor:pointer;list-style:none}
.um__mob>summary svg{width:22px;height:22px;fill:none;stroke:#0b1f4d;stroke-width:2;stroke-linecap:round}
.um__mob[open]>summary{background:#f2f5fb}
.um__panel{position:fixed;left:0;right:0;top:68px;max-height:calc(100dvh - 68px);overflow:auto;padding:12px 16px calc(20px + env(safe-area-inset-bottom));display:grid;gap:2px;background:#fff;border-top:1px solid #e7ebf3;box-shadow:0 24px 40px -24px rgba(16,24,40,.45)}
.um__grupo{margin:10px 12px 4px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#667085}
.um__btns{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
@media (max-width:980px){.um__nav,.um__act{display:none}.um__mob{display:block}.um__in{height:64px;padding:0 16px}.um__brand img{height:62px}.um__panel{top:64px;max-height:calc(100dvh - 64px)}}
@media (prefers-reduced-motion:reduce){.um__btn{transition:none}}
