@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400&display=swap');
:root{--cor1:#61a64f;--cor2:#c3d94e;--cor3:#e2f0db;--teal:#28817d;--cinza1:#f0f2f5;--cinza2:#e9f0f2;--cinza3:#dadfe6;--cinza4:#e8ecf1;--texto1:#18181b;--texto2:#27272a;--mut:#5b6470;--bd:#dde3e8;--r:6px;--w:1200px;
--azul:#28817d;--azul-esc:#1d5f5c;--verde:#61a64f;--verde-esc:#4a8a3a;--ouro:#c3d94e;--bg:#fff;--card:#fff;--txt:#18181b}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Montserrat',system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--texto1);background:#fff;line-height:1.55;font-size:.9375rem}
a{color:var(--teal)}img{max-width:100%}
.wrap{max-width:var(--w);margin:0 auto;padding:0 16px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:999}

/* ===== Topo ===== */
.p_topo{background:var(--cinza1);position:relative;z-index:200}
.login-tab{position:absolute;top:0;right:0;background:var(--cor1);color:#fff;text-decoration:none;font-weight:700;font-size:.72rem;padding:9px 22px;text-transform:uppercase;letter-spacing:.02em;border-radius:0 0 0 var(--r);z-index:3}
.login-tab:hover{background:var(--verde-esc)}
.p_cont_topo{max-width:var(--w);margin:0 auto;padding:22px 16px 12px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}
.p_brasao{background:#fff;border:1px solid #e3e7ec;box-shadow:0 1px 4px rgba(0,0,0,.07);padding:8px 12px;text-decoration:none;display:block}
.logo{display:flex;align-items:center;height:auto;gap:10px}
.logo .sq{width:48px;display:flex;align-items:center;justify-content:center}.logo .sq img{width:44px;height:44px}
.logo .tx{color:#26292c;display:flex;flex-direction:column;justify-content:center;line-height:1.25;text-align:left}
.logo .tx small{font-size:.78rem;font-weight:400;color:#6b7280;letter-spacing:normal}
.logo .tx b{font-size:1.12rem;font-weight:800;letter-spacing:-.01em;color:#22262a}
.p_menu_topo{flex:1;display:flex;align-items:center;justify-content:center;position:relative}
.p_menu_topo>ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:2px}
.p_menu_topo>ul>li{position:relative}
.p_menu_topo>ul>li>a{display:block;padding:12px 11px;font-size:.66rem;font-weight:700;text-transform:uppercase;color:var(--texto1);text-decoration:none;letter-spacing:.02em}
.p_menu_topo>ul>li:hover>a,.p_menu_topo>ul>li>a.on{color:var(--cor1)}
.p_dropdown{display:none;position:absolute;top:100%;left:0;background:#fff;min-width:230px;box-shadow:0 8px 24px rgba(0,0,0,.14);border-top:3px solid var(--cor1);border-radius:0 0 var(--r) var(--r);z-index:300;padding:6px 0}
.p_menu_topo li:hover>.p_dropdown,.p_menu_topo li:focus-within>.p_dropdown{display:block}
.p_menu_topo li:nth-last-child(-n+2)>.p_dropdown{left:auto;right:0}
.p_dropdown a{display:block;padding:9px 18px;font-size:.78rem;font-weight:500;color:var(--texto2);text-decoration:none}
.p_dropdown a:hover{background:var(--cor3);color:var(--verde-esc)}
.burger{width:40px;height:40px;border-radius:50%;background:#fff;border:1px solid var(--bd);color:var(--teal);font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center}
.p_busca{flex:100%;display:flex;justify-content:center;padding-bottom:6px}
.p_busca form{position:relative;width:100%;max-width:380px;border-radius:4px;box-shadow:0 1px 5px rgba(0,0,0,.12);overflow:hidden;background:#fff}
.p_busca input{width:100%;height:40px;border:0;padding:0 50px 0 15px;font:inherit;font-size:.8rem;color:var(--texto1);background:#fff}
.p_busca input:focus{outline:2px solid var(--cor1);outline-offset:-2px}
.p_busca button{position:absolute;right:0;top:0;width:40px;height:40px;border:0;background:#fff;color:var(--cor1);cursor:pointer;font-size:.85rem}

/* flutuantes */
.float-social{position:fixed;left:10px;top:70px;z-index:210;display:flex;flex-direction:column;gap:3px}
.float-social a{width:38px;height:38px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:.9rem;box-shadow:0 2px 6px rgba(0,0,0,.2)}
.float-social .fb{background:#1f5fbf}.float-social .ig{background:#d62ecf}
.agenda-widget{position:fixed;left:0;top:190px;z-index:150}
.agenda-toggle{display:flex;align-items:center;gap:8px;background:var(--cor1);color:#fff;border:0;padding:13px 16px 13px 14px;border-radius:0 var(--r) var(--r) 0;font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.02em;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.2)}
.agenda-toggle i{font-size:1.05rem}
.agenda-toggle:hover{background:var(--verde-esc)}
.agenda-toggle[hidden]{display:none}
.agenda-painel{position:fixed;left:0;top:190px;width:280px;background:#fff;border-radius:0 var(--r) var(--r) 0;box-shadow:0 10px 30px rgba(0,0,0,.22);overflow:hidden;z-index:151}
.agenda-painel-head{display:flex;align-items:flex-start;justify-content:space-between;background:var(--cinza1);padding:12px 14px;border-bottom:1px solid var(--bd)}
.agenda-painel-head strong{display:block;font-size:.92rem;text-transform:uppercase;color:var(--texto1)}
.agenda-painel-head small{color:var(--mut);font-size:.74rem}
.agenda-fechar{background:none;border:0;font-size:1.3rem;line-height:1;color:var(--mut);cursor:pointer;padding:0 2px}
.agenda-fechar:hover{color:var(--texto1)}
.agenda-vazio{padding:18px 14px;text-align:center}
.agenda-vazio p{color:var(--mut);font-size:.85rem;margin:0 0 10px}
.agenda-card{position:relative}
.agenda-seta{position:absolute;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.92);border:0;box-shadow:0 1px 4px rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--texto1);z-index:2;font-size:.75rem}
.agenda-prev{left:8px}.agenda-next{right:8px}
.agenda-seta:hover{background:#fff}
.agenda-img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;background:var(--cinza1)}
.agenda-info{padding:10px 14px 12px}
.agenda-data{color:var(--cor1);font-weight:700;font-size:.76rem;margin-bottom:4px;display:flex;align-items:center;gap:5px}
.agenda-titulo{display:block;font-size:.9rem;line-height:1.3;margin-bottom:6px}
.agenda-contato{color:#c0392b;font-size:.76rem;margin-bottom:8px;display:flex;align-items:flex-start;gap:5px}
.agenda-rodape{display:flex;align-items:center;justify-content:space-between;margin-top:4px;gap:8px}
.agenda-views{color:var(--mut);font-size:.76rem;display:flex;align-items:center;gap:5px;white-space:nowrap}
.agenda-vermais{background:var(--cor1);color:#fff;font-size:.7rem;font-weight:700;text-transform:uppercase;padding:6px 10px;border-radius:16px;text-decoration:none;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.agenda-vermais:hover{background:var(--verde-esc)}
.float-top{position:fixed;right:14px;bottom:18px;z-index:150;width:40px;height:40px;background:#111;color:#fff;border-radius:4px;display:none;align-items:center;justify-content:center;text-decoration:none}
.float-top.show{display:flex}

/* ===== Banner ===== */
.banner-wrap{padding:18px 0 10px;background:#fff}
.banner-wrap .wrap{max-width:1600px}
.banner{position:relative;overflow:hidden;background:#12382f;border-radius:18px;box-shadow:0 10px 30px rgba(0,0,0,.14)}
.banner .track{display:flex;transition:transform .6s ease}
.banner .slide{width:100%;flex:0 0 100%;min-width:0;height:clamp(230px,32vw,400px);position:relative;display:flex;align-items:center;background-size:cover;background-position:center;text-decoration:none;color:#fff;overflow:hidden}
.banner .slide.g0{background-image:linear-gradient(110deg,#1d5f5c 0%,#28817d 45%,#61a64f 100%)}
.banner .slide.g1{background-image:linear-gradient(110deg,#2a6f3b 0%,#61a64f 55%,#c3d94e 100%)}
.banner .slide.g2{background-image:linear-gradient(110deg,#123c3a 0%,#28817d 60%,#8cc36b 100%)}
.banner .slide::before{content:"";position:absolute;right:-60px;top:-60px;width:340px;height:340px;border-radius:50%;background:rgba(255,255,255,.08)}
.banner .slide::after{content:"";position:absolute;right:120px;bottom:-90px;width:260px;height:260px;border-radius:50%;background:rgba(195,217,78,.18)}
.banner .slide.img::before,.banner .slide.img::after{display:none}
.banner .cap{position:relative;z-index:2;max-width:var(--w);width:100%;margin:0 auto;padding:0 60px}
.banner .cap h2{margin:0 0 8px;font-size:clamp(1.5rem,3.6vw,2.8rem);font-weight:800;line-height:1.05;max-width:620px;text-transform:uppercase}
.banner .cap p{margin:0 0 16px;max-width:520px;font-size:1rem;opacity:.95}
.banner .cap .go{display:inline-flex;align-items:center;gap:10px;background:#fff;color:var(--verde-esc);padding:8px 8px 8px 18px;border-radius:99px;font-weight:700;font-size:.8rem;text-transform:uppercase}
.banner .cap .go i{background:var(--cor1);color:#fff;width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem}
.banner .ctl{position:absolute;top:14px;left:50%;transform:translateX(-50%);display:flex;gap:6px;z-index:5}
.banner .ctl button{width:34px;height:34px;border-radius:50%;border:0;background:rgba(255,255,255,.35);color:#fff;cursor:pointer}
.banner .arrow{position:absolute;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;border:0;background:rgba(255,255,255,.55);color:#333;cursor:pointer;z-index:5}
.banner .prev{left:12px}.banner .next{right:12px}
.banner .bar{position:absolute;left:0;top:0;height:4px;width:0;background:linear-gradient(90deg,var(--cor1),var(--cor2));z-index:6}
.banner .dots{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:6px;z-index:5}
.banner .dots i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.5);cursor:pointer}.banner .dots i.on{background:#fff}

/* ===== Blocos ===== */
.sec{padding:34px 0}
.sec.gray{background:var(--cinza4)}
.stitle{background:var(--cinza2);text-align:center;padding:16px 20px 14px;margin:0 0 22px;position:relative;border-radius:var(--r)}
.stitle h2{margin:0;font-size:1.45rem;font-weight:800;text-transform:uppercase;letter-spacing:-.02em;color:var(--texto1)}
.stitle p{margin:6px auto 0;max-width:340px;border-top:1px solid #c9d1d8;padding-top:6px;font-size:.85rem;color:var(--texto2);letter-spacing:.02em}
.stitle .more{position:absolute;right:14px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:6px;font-size:.7rem;font-weight:700;color:var(--texto1);text-decoration:none;text-transform:uppercase}
.stitle .more i{width:24px;height:24px;border-radius:50%;background:var(--cor1);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.6rem}
.gridA{display:grid;gap:16px}.c4{grid-template-columns:repeat(4,1fr)}.c3{grid-template-columns:repeat(3,1fr)}.c2{grid-template-columns:repeat(2,1fr)}
@media(max-width:980px){.c4{grid-template-columns:repeat(2,1fr)}.c3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.c4,.c3,.c2{grid-template-columns:1fr}}

/* atalhos */
.entry{margin-top:-2px;background:#fff;box-shadow:0 2px 0 var(--cor1) inset}
.entry .gridA{padding:16px 0}
.entry a{display:flex;align-items:center;gap:14px;background:#fff;border-radius:var(--r);padding:20px 18px;text-decoration:none;color:var(--texto1);box-shadow:0 1px 6px rgba(0,0,0,.09);border-bottom:4px solid var(--cinza3);transition:.3s}
.entry a:hover{transform:translateY(-3px);border-bottom-color:var(--cor1)}
.entry .bar3{color:var(--cor1);font-size:1.3rem}.entry small{display:block;font-size:.72rem;color:var(--mut)}.entry b{font-size:1.15rem;font-weight:800;text-transform:uppercase}

/* cards de notícia */
.ncard{background:#fff;border-radius:var(--r);box-shadow:0 1px 6px rgba(0,0,0,.09);overflow:hidden;display:flex;flex-direction:column;position:relative}
.ncard .thumb{aspect-ratio:4/3;background:linear-gradient(135deg,#dbeed3,#cfe5e3);display:flex;align-items:center;justify-content:center;color:var(--teal);font-size:2.4rem;position:relative;margin:10px 10px 0;border-radius:4px;overflow:hidden}
.ncard .thumb img{width:100%;height:100%;object-fit:cover}
.ncard .cat{position:absolute;left:0;top:14px;z-index:2;color:#fff;font-size:.68rem;font-weight:700;text-transform:uppercase;padding:6px 14px 6px 12px;max-width:80%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cat.k0{background:#0b7a72}.cat.k1{background:#b565d6}.cat.k2{background:#e58a1f}.cat.k3{background:#2f7bd0}.cat.k4{background:#d9534f}.cat.k5{background:#61a64f}
.ncard .body{padding:12px 14px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.ncard .date{font-size:.72rem;color:var(--mut);font-weight:600}
.ncard h3{margin:0;font-size:.88rem;line-height:1.35;text-transform:uppercase;font-weight:700}.ncard h3 a{color:var(--texto1);text-decoration:none}.ncard h3 a:hover{color:var(--cor1)}
.ncard p{margin:0;font-size:.8rem;color:var(--mut)}

/* acesso rápido */
.tile{display:block;background:#fff;border-radius:var(--r);text-align:center;padding:22px 14px 20px;text-decoration:none;color:var(--texto1);position:relative;box-shadow:0 1px 5px rgba(0,0,0,.08);border:4px solid #fff;outline:1px solid #e3e7ec;outline-offset:-5px;transition:.3s}
.tile::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:linear-gradient(90deg,var(--cor1),var(--cor2))}
.tile:hover{transform:translateY(-3px);box-shadow:0 8px 18px rgba(0,0,0,.13)}
.tile .ic{width:76px;height:76px;border-radius:50%;background:var(--teal);color:#fff;font-size:1.9rem;display:flex;align-items:center;justify-content:center;margin:0 auto 12px}
.tile b{display:block;font-size:.95rem;font-weight:800;text-transform:uppercase}.tile span{font-size:.8rem;color:var(--texto2)}

/* editais */
.edital{background:#fff;border-radius:var(--r);box-shadow:0 1px 6px rgba(0,0,0,.09);padding:16px;display:flex;flex-direction:column;gap:8px;border-top:4px solid var(--cor1)}
.edital .mod{font-size:.72rem;font-weight:800;text-transform:uppercase;color:var(--teal)}
.edital h3{margin:0;font-size:.92rem;line-height:1.35}
.edital .meta{font-size:.75rem;color:var(--mut)}
.edital .foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:8px}
.badge{display:inline-block;padding:3px 12px;border-radius:99px;font-size:.68rem;font-weight:800;text-transform:uppercase}
.badge.ok{background:#dff5e8;color:#17793f}.badge.warn{background:#fff3cd;color:#8a6500}.badge.info{background:#dbeaf8;color:#0b4f8a}.badge.muted{background:#eceff3;color:#5d6b7a}.badge.bad{background:#fde2e0;color:#a3251b}
.btn{display:inline-block;background:var(--cor1);color:#fff;padding:10px 20px;border-radius:99px;text-decoration:none;font-weight:700;border:0;cursor:pointer;font:inherit;font-weight:700;font-size:.8rem;text-transform:uppercase}
.btn:hover{background:var(--verde-esc)}
.btn.verde{background:var(--cor1);color:#fff}.btn.sm{padding:6px 14px;font-size:.72rem}.btn.red{background:#c0392b;color:#fff}.btn.gray{background:#e7edf3;color:var(--texto1)}.btn.sec{background:transparent;border:2px solid #fff}
.btn.alt{background:#fff;color:var(--cor1);border:2px solid var(--cor1);padding:8px 18px}.btn.alt:hover{background:var(--cor3)}
.btn.blue{background:#2c6ea3;color:#fff}.btn.blue:hover{background:#245a85}

/* Aviso de cookies */
.cookie-bar{position:fixed;left:0;right:0;bottom:0;z-index:950;background:#1c1c1f;color:#e6e6e6;box-shadow:0 -4px 18px rgba(0,0,0,.25)}
.cookie-bar-wrap{max-width:var(--w);margin:0 auto;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.cookie-bar-wrap p{margin:0;font-size:.84rem;line-height:1.6;flex:1;min-width:240px}
.cookie-bar-wrap a{color:#9fd3ff;text-decoration:underline}
.cookie-bar-btns{display:flex;gap:10px;flex:0 0 auto}
.cookie-bar-btns .btn{white-space:nowrap}
@media(max-width:640px){.cookie-bar-wrap{padding:14px 16px}.cookie-bar-btns{width:100%}.cookie-bar-btns .btn{flex:1}}

/* Modal de preferências de cookies */
.cookie-modal{position:fixed;inset:0;z-index:960;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;padding:16px}
.cookie-modal[hidden]{display:none}
.cookie-modal-card{background:#fff;border-radius:10px;max-width:520px;width:100%;max-height:88vh;overflow-y:auto;padding:26px 26px 22px;position:relative;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.cookie-modal-card h2{margin:0 0 14px;font-size:1.2rem;color:var(--texto1)}
.cookie-modal-fechar{position:absolute;top:12px;right:14px;background:transparent;border:0;font-size:1.6rem;line-height:1;cursor:pointer;color:#888}
.cookie-modal-fechar:hover{color:#222}
.cookie-cat{border-top:1px solid var(--bd);padding:14px 0}
.cookie-cat-tit{display:flex;align-items:center;justify-content:space-between;gap:14px}
.cookie-cat-tit strong{font-size:.9rem}
.cookie-cat p{margin:6px 0 0;font-size:.8rem;color:var(--mut);line-height:1.5}
.cookie-modal-acoes{display:flex;justify-content:flex-end;gap:10px;margin-top:18px;flex-wrap:wrap}

/* Popup de avisos/campanhas (Painel > Popup) */
.popup-modal{position:fixed;inset:0;z-index:970;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;padding:16px}
.popup-modal[hidden]{display:none}
.popup-modal-card{background:#fff;border-radius:12px;max-width:460px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 24px 60px rgba(0,0,0,.4)}
.popup-modal-img{width:100%;max-height:260px;object-fit:cover;display:block;border-radius:12px 12px 0 0}
.popup-modal-body{padding:24px 26px 26px;text-align:center}
.popup-modal-body h2{margin:0 0 12px;font-size:1.3rem;color:var(--texto1)}
.popup-modal-texto{font-size:.9rem;color:var(--texto2);line-height:1.6;margin-bottom:16px}
.popup-modal-texto p{margin:0 0 10px}
.popup-modal-fechar{position:absolute;top:10px;right:12px;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.9);border:0;font-size:1.4rem;line-height:1;cursor:pointer;color:#333;box-shadow:0 1px 6px rgba(0,0,0,.2);z-index:2}
.popup-modal-fechar:hover{background:#fff;color:#000}
@media(max-width:480px){.popup-modal-body{padding:20px 18px 22px}}
.switch{position:relative;display:inline-block;width:40px;height:22px;flex:0 0 auto}
.switch input{opacity:0;width:0;height:0}
.switch span{position:absolute;inset:0;background:#ccc;border-radius:99px;transition:background .15s ease;cursor:pointer}
.switch span::before{content:'';position:absolute;left:3px;top:3px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform .15s ease}
.switch input:checked+span{background:var(--cor1)}
.switch input:checked+span::before{transform:translateX(18px)}
.switch input:disabled+span{opacity:.6;cursor:not-allowed}

/* arquivos, secretarias, calendário */
.frow{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;border-radius:var(--r);box-shadow:0 1px 5px rgba(0,0,0,.08);padding:14px 16px}
.frow b{font-size:.85rem;text-transform:uppercase}.frow small{display:block;color:var(--mut);font-size:.72rem}
.scard{background:#fff;border-radius:var(--r);box-shadow:0 1px 5px rgba(0,0,0,.08);padding:16px;border-left:5px solid var(--cor1)}
.scard b{display:block;font-size:.85rem;text-transform:uppercase;line-height:1.3}.scard span{font-size:.8rem;color:var(--mut)}
.dgrid{display:grid;grid-template-columns:minmax(260px,340px) 1fr;gap:20px}@media(max-width:800px){.dgrid{grid-template-columns:1fr}}
.cal{background:#fff;border-radius:var(--r);box-shadow:0 1px 6px rgba(0,0,0,.09);padding:14px}
.cal h3{margin:0 0 10px;text-align:center;text-transform:uppercase;color:var(--teal);font-size:1rem}
.cal table{width:100%;border-collapse:collapse;text-align:center;font-size:.82rem}.cal th{font-size:.65rem;color:var(--mut);padding:4px 0;background:none;text-transform:uppercase}.cal td{padding:3px;border:0}
.cal td span{display:block;width:30px;height:30px;line-height:30px;margin:auto;border-radius:50%}.cal td.out span{color:#b6bcc4}
.cal td.has span{background:var(--cor1);color:#fff;font-weight:700}.cal td.has a{color:#fff;text-decoration:none;display:block}
.cal td.today span{outline:2px solid var(--teal)}
.ufm{background:#fff;border-radius:var(--r);box-shadow:0 1px 6px rgba(0,0,0,.09);padding:18px;text-align:center}.ufm b{display:block;font-size:2rem;color:var(--teal)}
.ufm-link{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:6px 14px;border-radius:999px;border:1px solid var(--teal);color:var(--teal);font-size:.85rem;font-weight:600;text-decoration:none}.ufm-link:hover{background:var(--teal);color:#fff}
.event{display:flex;gap:14px;background:#fff;border-radius:var(--r);box-shadow:0 1px 5px rgba(0,0,0,.08);padding:12px;margin-bottom:10px}
.event .d{background:var(--cor1);color:#fff;border-radius:var(--r);min-width:58px;text-align:center;padding:6px;line-height:1.1}
.event .d b{display:block;font-size:1.5rem}.event .d span{font-size:.7rem;text-transform:uppercase}
.meta{font-size:.78rem;color:var(--mut)}

/* internas */
.page{padding:26px 0 50px}
.page h1{font-size:1.6rem;font-weight:800;text-transform:uppercase;margin:0 0 18px;padding-bottom:10px;border-bottom:3px solid var(--cor1)}
.page h2{color:var(--teal);text-transform:uppercase;font-size:1.05rem}
.crumbs{font-size:.78rem;color:var(--mut);margin-bottom:10px}.crumbs a{color:var(--mut)}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.filters input,.filters select{padding:10px 12px;border:1px solid var(--bd);border-radius:4px;background:#fff;font:inherit;font-size:.85rem}
.grid{display:grid;gap:18px}.g3{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.g2{grid-template-columns:1fr 1fr}
.card{background:#fff;border:1px solid var(--bd);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.card .img{aspect-ratio:16/9;background:linear-gradient(135deg,#dbeed3,#cfe5e3);display:flex;align-items:center;justify-content:center;color:var(--teal);font-size:2rem}
.card .img img{width:100%;height:100%;object-fit:cover}
.card .body{padding:14px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.card h3{margin:0;font-size:1rem;line-height:1.3}.card h3 a{text-decoration:none;color:var(--texto1)}
.tag{display:inline-block;background:var(--cor3);color:var(--verde-esc);font-size:.68rem;font-weight:800;padding:2px 10px;border-radius:99px;text-transform:uppercase;align-self:flex-start}
.tbl-wrap{overflow-x:auto;background:#fff;border:1px solid var(--bd);border-radius:var(--r)}
table{width:100%;border-collapse:collapse;font-size:.88rem}
th,td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--bd);vertical-align:top}
th{background:var(--cinza2);color:var(--texto1);font-size:.72rem;text-transform:uppercase;letter-spacing:.03em}
tr:last-child td{border-bottom:0}
.pager{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:18px}
.pager a{padding:6px 12px;border:1px solid var(--bd);border-radius:4px;text-decoration:none;background:#fff;color:var(--texto1);line-height:1.3}
.pager a:hover{border-color:var(--cor1);color:var(--cor1)}
.pager a.cur{background:var(--cor1);color:#fff;border-color:var(--cor1);font-weight:700}
.pager a.nav{font-weight:600}
.pager .nav.off{padding:6px 12px;border:1px solid var(--bd);border-radius:4px;background:#f4f4f4;color:#b6bcc4;font-weight:600;line-height:1.3}
.pager .dots{padding:6px 2px;color:var(--mut)}
@media(max-width:520px){.pager a.nav,.pager .nav.off{padding:6px 9px;font-size:.82rem}}
.article{background:#fff;border:1px solid var(--bd);border-radius:var(--r);padding:26px;max-width:860px}
.article .cover{width:100%;border-radius:6px;margin-bottom:16px}.article h1{border:0;text-transform:none}.article .content{font-size:1rem}
.acc details{background:#fff;border:1px solid var(--bd);border-radius:var(--r);margin-bottom:10px;padding:0 16px}
.acc summary{cursor:pointer;padding:14px 0;font-weight:700;color:var(--teal)}
.acc details[open] summary{border-bottom:1px solid var(--bd);margin-bottom:10px}
.acc dl{margin:0 0 14px}.acc dt{font-weight:700;font-size:.78rem;color:var(--verde-esc);margin-top:8px;text-transform:uppercase}.acc dd{margin:0}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.tabs a{padding:9px 18px;border-radius:99px;background:var(--cinza3);color:var(--texto1);text-decoration:none;font-weight:700;font-size:.78rem;text-transform:uppercase}.tabs a.on{background:var(--cor1);color:#fff}
.form{background:#fff;border:1px solid var(--bd);border-radius:var(--r);padding:22px;max-width:640px}
.form label{display:block;font-weight:600;margin:12px 0 4px;font-size:.88rem}
.form input,.form select,.form textarea{width:100%;padding:10px 12px;border:1px solid var(--bd);border-radius:4px;font:inherit;background:#fff}
.form textarea{min-height:110px}.form small{color:var(--mut)}
.alert{padding:12px 16px;border-radius:6px;margin-bottom:14px}.alert.ok{background:#dff5e8;color:#17793f}.alert.err{background:#fde2e0;color:#a3251b}
.empty{background:#fff;border:1px dashed var(--bd);border-radius:var(--r);padding:28px;text-align:center;color:var(--mut)}

/* ===== Rodapé ===== */
.p_rodape{background:var(--cinza1);border-top:5px solid var(--cor1);margin-top:30px}
.p_rodape .logo .sq{width:52px}.p_rodape .logo .sq img{width:48px;height:48px}
.p_rodape .logo .tx small{font-size:.72rem}.p_rodape .logo .tx b{font-size:1.05rem}
.foot-grid{max-width:var(--w);margin:0 auto;padding:34px 16px 24px;display:grid;grid-template-columns:1.2fr 1fr 1.2fr 1fr 1fr;gap:26px}
@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.foot-grid{grid-template-columns:1fr}}
.p_rodape h4{margin:0 0 10px;font-size:.9rem;text-transform:uppercase;color:var(--teal);font-weight:800}
.p_rodape p{margin:4px 0;font-size:.82rem;color:var(--texto2)}.p_rodape a{color:var(--texto2)}
.soc{display:flex;gap:8px;margin-top:12px}.soc a{width:36px;height:36px;border-radius:50%;background:var(--teal);color:#fff;display:flex;align-items:center;justify-content:center;text-decoration:none}
.copy{background:var(--teal);color:#fff;text-align:center;padding:12px;font-size:.75rem}
.copy a{color:#fff}

@media(max-width:1000px){
 .p_menu_topo>ul{display:none;flex-direction:column;position:absolute;top:100%;right:0;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.15);width:260px;z-index:400}
 .p_menu_topo.open>ul{display:flex}
 .p_menu_topo{justify-content:flex-end;flex:1}
 .p_menu_topo>ul>li>a{font-size:.75rem}.p_dropdown{position:static;box-shadow:none;border-top:0;display:block;background:var(--cinza1);padding:0}
 .float-social,.agenda-widget{display:none}.stitle .more{position:static;transform:none;justify-content:center;margin-top:8px}
 .banner .cap{padding:0 44px}
}
/* ===== Admin ===== */
body.admin{background:#eef2f6}
.adm-top{background:var(--azul-esc);color:#fff}.adm-top .wrap{display:flex;justify-content:space-between;align-items:center;padding-top:12px;padding-bottom:12px;flex-wrap:wrap;gap:8px}
.adm-top a{color:#fff;text-decoration:none;margin-left:14px;font-size:.9rem}
.adm-nav{background:#fff;border-bottom:1px solid var(--bd)}.adm-nav .wrap{display:flex;gap:4px;flex-wrap:wrap;padding-top:6px;padding-bottom:6px}
.adm-nav a{padding:8px 14px;text-decoration:none;border-radius:8px;color:var(--txt);font-weight:600;font-size:.9rem}.adm-nav a.on,.adm-nav a:hover{background:#e3edf7;color:var(--azul)}
.adm-nav-group{position:relative}
.adm-nav-group>button{padding:8px 14px;border:0;background:transparent;border-radius:8px;color:var(--txt);font-weight:600;font-size:.9rem;font-family:inherit;cursor:pointer;display:flex;align-items:center;gap:5px}
.adm-nav-group>button:hover,.adm-nav-group.on>button{background:#e3edf7;color:var(--azul)}
.adm-caret{font-size:.7em;line-height:1}
.adm-dropdown{display:none;position:absolute;top:100%;left:0;background:#fff;min-width:230px;box-shadow:0 8px 24px rgba(0,0,0,.14);border-top:3px solid var(--azul);border-radius:0 0 var(--r) var(--r);z-index:300;padding:6px 0;flex-direction:column}
.adm-nav-group:hover>.adm-dropdown,.adm-nav-group.aberto>.adm-dropdown{display:flex}
.adm-dropdown a{padding:9px 16px;border-radius:0;font-size:.86rem}
.adm-main{padding:26px 0 50px}.adm-main h1{margin-top:0;color:var(--azul)}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:24px}
.stat{background:#fff;border:1px solid var(--bd);border-radius:var(--r);padding:16px;text-decoration:none;color:var(--txt)}.stat b{display:block;font-size:2rem;color:var(--azul)}
.login-box{max-width:380px;margin:9vh auto}
.actions a,.actions button{margin-right:4px}
.form.wide{max-width:900px}.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:700px){.row2{grid-template-columns:1fr}}
@media(max-width:700px){.p_cont_topo{padding-top:44px}.login-tab{font-size:.68rem}}

/* ===== Menu completo (estilo Dracena) ===== */
.p_menu_topo>ul>li>a{font-size:.66rem;padding:12px 9px}
.burger.on{background:var(--cor1);color:#fff;border-color:var(--cor1)}
.mega{position:absolute;left:50%;transform:translateX(-50%);top:100%;z-index:500;width:min(var(--w),calc(100% - 20px));background:var(--cor1);border-radius:4px;padding:10px;box-shadow:0 14px 34px rgba(0,0,0,.28)}
.mega[hidden]{display:none}
.mega-filter{background:rgba(0,0,0,.22);border-radius:2px;padding:9px;display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:10px}
.mega-filter label{color:#fff;font-weight:700;font-size:.8rem;white-space:nowrap}
.mega-filter input{width:220px;max-width:60%;height:26px;border:0;border-radius:0;padding:0 12px;font:inherit;font-size:.75rem;background:#fff}
.mega-cols{display:flex;flex-flow:column wrap;align-content:flex-start;height:min(60vh,395px);gap:0 25px;overflow-x:auto;overflow-y:hidden;padding-bottom:12px;scrollbar-color:rgba(0,0,0,.35) rgba(0,0,0,.15)}
.mega-cols::-webkit-scrollbar{height:12px}.mega-cols::-webkit-scrollbar-track{background:rgba(0,0,0,.15);border-radius:6px}.mega-cols::-webkit-scrollbar-thumb{background:rgba(0,0,0,.35);border-radius:6px}
.mi{flex:none;width:250px;display:block;color:#fff;text-decoration:none;font-size:.78rem;line-height:1.25;padding:13px 13px;border-bottom:1px solid rgba(255,255,255,.28)}
.mi:hover{background:rgba(0,0,0,.18)}
.mi-g{background:rgba(0,0,0,.2);font-weight:600;margin-top:8px;border-bottom:1px solid rgba(255,255,255,.28)}
.mi-s{background:rgba(0,0,0,.1);padding-left:13px}
.mi-l{margin:0 0 0 0;padding-left:15px}
@media(min-width:1001px){
 .p_busca{position:absolute;top:0;right:190px;flex:none;width:240px;padding:0;height:34px;z-index:4}
 .p_busca form{max-width:none;box-shadow:0 1px 4px rgba(0,0,0,.12);border-radius:0 0 4px 4px}
 .p_busca input{height:34px;font-size:.72rem}.p_busca button{height:34px}
 .p_cont_topo{padding-top:30px}
}
@media(max-width:1000px){
 .p_menu_topo>ul{display:none!important}
 .mega-cols{flex-flow:column nowrap;height:auto;max-height:65vh;overflow-y:auto;overflow-x:hidden}.mi{width:auto}
}
@media(max-width:700px){.p_cont_topo{padding-top:44px}.login-tab{font-size:.68rem}}

/* ===== Secretarias com foto ===== */
.sec-card{background:transparent;display:flex;flex-direction:column}
.sec-card .ph{aspect-ratio:1.12/1;background:linear-gradient(160deg,#dde9ee,#e6efe2);display:flex;align-items:flex-end;justify-content:center;overflow:hidden;color:#b7c6cf;font-size:6rem}
.sec-card .ph img{width:100%;height:100%;object-fit:cover;object-position:center top}
.sec-card .ph i{margin-bottom:-6px}
.sec-card .box{position:relative;background:#fff;margin:-26px 10px 0;padding:26px 14px 18px;text-align:center;border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.09);flex:1;display:flex;flex-direction:column;justify-content:center}
.sec-card .plus{position:absolute;left:50%;top:-14px;transform:translateX(-50%);width:32px;height:28px;background:#fff;color:var(--cor1);text-decoration:none;font-weight:700;font-size:1.05rem;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 5px rgba(0,0,0,.15);border-radius:2px}
.sec-card h3{margin:0 0 10px;font-size:.78rem;font-weight:800;text-transform:uppercase;line-height:1.35;padding-bottom:10px;border-bottom:1px solid #d3d9de}
.sec-card p{margin:0;font-size:.82rem;color:var(--mut);letter-spacing:.02em}
.scar{position:relative}
.strack{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:2px 0 12px}
.strack::-webkit-scrollbar{display:none}
.strack .sec-card{flex:0 0 calc((100% - 42px)/4);scroll-snap-align:start}
.sc-prev,.sc-next{position:absolute;top:38%;z-index:3;width:40px;height:40px;border-radius:50%;border:0;cursor:pointer;color:#fff;box-shadow:0 2px 6px rgba(0,0,0,.2)}
.sc-prev{left:-6px;background:rgba(90,100,110,.65)}.sc-next{right:-6px;background:var(--cor2);color:#fff}
.sec-full{display:flex;flex-direction:column;gap:8px}
.sec-info{display:flex;flex-direction:column;gap:4px;padding:2px 10px}.sec-info p{margin:0 0 4px;font-size:.82rem}
@media(max-width:980px){.strack .sec-card{flex-basis:calc((100% - 14px)/2)}}
@media(max-width:560px){.strack .sec-card{flex-basis:78%}.sc-prev{left:0}.sc-next{right:0}}

/* Dropdown A PREFEITURA (estilo Dracena) */
.p_menu_topo>ul>li.has-sub>a i{font-size:.8rem;margin-left:3px}
.p_menu_topo ul.p_dropdown{display:none;position:absolute;top:100%;left:0;margin:0;padding:0;list-style:none;background:var(--cor1);min-width:270px;border:0;border-radius:0;box-shadow:0 8px 20px rgba(0,0,0,.18);z-index:500}
.p_menu_topo li:hover>ul.p_dropdown,.p_menu_topo li:focus-within>ul.p_dropdown{display:block}
.p_menu_topo ul.p_dropdown li{border-bottom:1px solid rgba(255,255,255,.35)}
.p_menu_topo ul.p_dropdown li:last-child{border-bottom:0}
.p_menu_topo ul.p_dropdown a{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;color:#fff;font-size:.82rem;font-weight:500;text-transform:none;background:transparent}
.p_menu_topo ul.p_dropdown a:hover{background:rgba(0,0,0,.18);color:#fff}
.perfil{display:flex;gap:28px;align-items:flex-start;margin:18px 0}
.perfil .pf{flex:0 0 260px;aspect-ratio:3/4;background:var(--cor3);display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:6px;color:var(--cor1);font-size:4rem}
.perfil .pf img{width:100%;height:100%;object-fit:cover}
.perfil .pt{flex:1;min-width:0}.perfil h2{margin:0 0 6px;color:var(--cor1)}
@media(max-width:700px){.perfil{flex-direction:column}.perfil .pf{flex-basis:auto;width:200px}}

.p_menu_topo ul.p_dropdown{max-height:calc(100vh - 160px);overflow-y:auto}
.p_menu_topo ul.p_dropdown a{line-height:1.25}

/* Página da secretaria */
.sec-head{background:#e4e6ee;padding:18px 20px;font-weight:600;text-transform:uppercase;color:var(--texto1);font-size:1.05rem;position:relative;margin-top:14px}
.sec-det{position:relative;padding:14px 0 6px;border-bottom:1px solid #ddd;display:grid;grid-template-columns:1fr 1fr;gap:22px 30px;padding-right:230px;min-height:200px}
.sec-det .it{display:flex;align-items:center;gap:12px;font-size:.92rem;color:var(--texto2)}
.sec-det .it i{flex:0 0 36px;height:36px;border-radius:50%;background:#eceef3;display:flex;align-items:center;justify-content:center;color:#555}
.sec-det .it.full{grid-column:1/-1}
.sec-foto{position:absolute;right:0;top:-40px;width:196px;height:196px;border-radius:50%;background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.15);padding:6px}
.sec-foto>div{width:100%;height:100%;border-radius:50%;overflow:hidden;background:var(--cor3);display:flex;align-items:center;justify-content:center;color:var(--cor1);font-size:4rem}
.sec-foto img{width:100%;height:100%;object-fit:cover}
.sec-upd{text-align:right;font-size:.75rem;color:#555;margin:6px 0}
.sec-txt{text-align:justify;line-height:1.9;margin-top:16px}
.sec-deps{margin-top:18px}.sec-deps b{display:block;margin-bottom:6px}
@media(max-width:800px){.sec-det{grid-template-columns:1fr;padding-right:0;padding-top:0;min-height:0}
  .sec-foto{position:relative;right:auto;top:auto;grid-column:1/-1;justify-self:center;margin:14px 0 2px;width:172px;height:172px}}
.conteudo img{max-width:100%;height:auto}.conteudo table{border-collapse:collapse;max-width:100%}.conteudo td,.conteudo th{border:1px solid #ccc;padding:6px 10px}

/* Barra de acessibilidade (leque em círculo, como o widget de referência) */
.acc-bar{position:fixed;top:110px;right:6px;z-index:900;width:56px;height:56px}
.acc-toggle{position:relative;z-index:3;width:56px;height:56px;border-radius:50%;border:3px solid #fff;background:#fff;color:var(--teal);font-size:1.3rem;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.28);display:flex;align-items:center;justify-content:center}
.acc-toggle .ic-b{display:none}
.acc-bar.open .acc-toggle{background:#e33b2e;color:#fff;border-color:#e33b2e}
.acc-bar.open .acc-toggle .ic-a{display:none}
.acc-bar.open .acc-toggle .ic-b{display:inline-block}
.acc-cluster{position:absolute;top:-34px;right:-34px;z-index:2;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle at 68% 32%,#eef1f4 0%,#eef1f4 62%,rgba(238,241,244,0) 72%);opacity:0;transform:scale(.8);transform-origin:top right;pointer-events:none;transition:opacity .16s ease,transform .16s ease;display:grid;grid-template-columns:repeat(2,46px);grid-auto-rows:46px;gap:14px;justify-content:center;align-content:center;padding-top:26px}
.acc-bar.open .acc-cluster{opacity:1;transform:scale(1);pointer-events:auto}
.acc-cluster .acc-item:nth-child(2n+1){justify-self:end}
.acc-cluster .acc-item:nth-child(2n){justify-self:start}
.acc-item{width:46px;height:46px;border-radius:50%;border:0;background:#fff;box-shadow:0 3px 9px rgba(0,0,0,.18);display:flex;align-items:center;justify-content:center;font-size:1.05rem;color:var(--texto2);cursor:pointer}
.acc-item:hover{background:var(--cor3);color:var(--verde-esc,#1f5c17)}
.acc-item[aria-pressed="true"]{background:var(--cor1);color:#fff}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:700px){.acc-bar{top:auto;bottom:16px;right:2px}.acc-cluster{width:240px;height:240px;top:auto;bottom:-16px;right:-16px;transform-origin:bottom right;grid-template-columns:repeat(2,42px);grid-auto-rows:42px;padding-top:0;padding-bottom:22px}.acc-item{width:42px;height:42px}.acc-toggle{width:50px;height:50px}}

/* Efeitos de acessibilidade (aplicados em <html>) */
html.acc-contraste{filter:invert(1) hue-rotate(180deg)}
html.acc-contraste img,html.acc-contraste svg,html.acc-contraste video,html.acc-contraste iframe,html.acc-contraste .acc-bar{filter:invert(1) hue-rotate(180deg)}
html.acc-cinza{filter:grayscale(100%)}
html.acc-sublinhado a{text-decoration:underline!important}
html.acc-legivel,html.acc-legivel *{font-family:Arial,Helvetica,sans-serif!important;letter-spacing:.01em!important}

/* Mapa do site */
.page .lead{color:var(--mut);margin:-4px 0 22px;max-width:760px}
.sitemap-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px 30px;margin-bottom:20px}
.sitemap-col h2{font-size:.95rem;text-transform:uppercase;letter-spacing:.02em;color:var(--cor1);margin:0 0 10px;padding-bottom:8px;border-bottom:2px solid var(--cor3)}
.sitemap-col h2 a{color:inherit;text-decoration:none}
.sitemap-col h2 a:hover{text-decoration:underline}
.sitemap-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
.sitemap-col li a{color:var(--texto2);text-decoration:none;font-size:.86rem;display:flex;align-items:flex-start;gap:6px}
.sitemap-col li a:hover{color:var(--cor1);text-decoration:underline}
.sitemap-col li a i{color:var(--cor1);margin-top:3px;font-size:.7rem}
@media(max-width:900px){.sitemap-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.sitemap-grid{grid-template-columns:1fr}}

/* Abas no painel (usadas na edição de Notícias, para a galeria de imagens) */
.adm-tabs{display:flex;gap:4px;border-bottom:1px solid var(--bd);margin-bottom:18px}
.adm-tabs button{border:0;background:transparent;padding:10px 16px;font:inherit;font-weight:700;font-size:.85rem;color:var(--mut);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-1px}
.adm-tabs button.on{color:var(--azul);border-bottom-color:var(--azul)}
.adm-tabpanel[hidden]{display:none}
.gal-admin{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px;max-width:900px}
.gal-admin-item{background:#fff;border:1px solid var(--bd);border-radius:8px;padding:8px;text-align:center}
.gal-admin-item img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px;margin-bottom:8px;display:block}
.gal-admin-item form{margin:0}

/* Menu lateral de páginas da mesma categoria, na página pública de Páginas Personalizadas */
.pagina-col{display:block}
.pagina-col.com-menu{display:grid;grid-template-columns:1fr minmax(220px,280px);gap:20px;align-items:start}
.pagina-col.com-menu .article{max-width:none}
.pagina-sidebar{background:#fff;border:1px solid var(--bd);border-radius:var(--r);padding:18px;position:sticky;top:16px}
.pagina-sidebar h2{font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:var(--mut);margin:0 0 12px}
.pagina-sidebar ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.pagina-sidebar li a,.pagina-sidebar li .ativa{display:block;padding:9px 10px;border-radius:4px;font-size:.88rem;line-height:1.35}
.pagina-sidebar li a{text-decoration:none;color:var(--texto1)}
.pagina-sidebar li a:hover{background:var(--cinza1);color:var(--cor1)}
.pagina-sidebar li .ativa{background:var(--cor3);color:var(--verde-esc);font-weight:700}
@media(max-width:800px){.pagina-col.com-menu{grid-template-columns:1fr}.pagina-sidebar{position:static;order:2}.pagina-col.com-menu .article{order:1}}

/* Lista de arquivos anexados a uma Página Personalizada */
.pagina-arquivos{margin-top:32px;padding-top:24px;border-top:1px solid var(--bd)}
.pagina-arquivos h2{font-size:1.05rem;margin:0 0 14px;color:var(--texto1)}
.pagina-arquivos ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.pagina-arquivos li a{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--bd);border-radius:6px;background:var(--cinza1);text-decoration:none;color:var(--texto1)}
.pagina-arquivos li a:hover{border-color:var(--cor1);color:var(--cor1)}

/* Galeria de imagens na página pública da notícia, com lightbox */
.noticia-galeria{margin-top:32px;padding-top:24px;border-top:1px solid var(--bd)}
.noticia-galeria h2{font-size:1.05rem;margin:0 0 14px;color:var(--texto1)}
.ng-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
.ng-thumb{display:block;border-radius:6px;overflow:hidden;aspect-ratio:4/3;background:var(--cinza1)}
.ng-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .18s ease}
.ng-thumb:hover img{transform:scale(1.06)}
.ng-lightbox{position:fixed;inset:0;z-index:980;background:rgba(0,0,0,.9);display:flex;align-items:center;justify-content:center}
.ng-lightbox[hidden]{display:none}
.ng-lightbox img{max-width:88vw;max-height:84vh;object-fit:contain}
.ng-close,.ng-prev,.ng-next{position:absolute;background:rgba(255,255,255,.15);color:#fff;border:0;border-radius:50%;cursor:pointer;font-size:1.3rem;width:44px;height:44px;display:flex;align-items:center;justify-content:center}
.ng-close:hover,.ng-prev:hover,.ng-next:hover{background:rgba(255,255,255,.32)}
.ng-close{top:16px;right:16px}
.ng-prev{left:16px;top:50%;transform:translateY(-50%)}
.ng-next{right:16px;top:50%;transform:translateY(-50%)}
@media(max-width:600px){.ng-prev,.ng-next{width:38px;height:38px;font-size:1.05rem}}

/* ===== Assistente virtual (balão de conversa) ===== */
.ast{--ast-cor:var(--verde-esc,#4a8a3a);--ast-cor2:var(--cor2,#c3d94e);position:fixed;right:20px;bottom:var(--ast-base,20px);z-index:940;font-size:.92rem;line-height:1.45;transition:bottom .2s}
.ast[hidden]{display:none}
.ast-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ast-botao{position:relative;width:64px;height:64px;border:0;padding:0;border-radius:50%;background:#fff;cursor:pointer;box-shadow:0 6px 20px rgba(0,0,0,.25);display:block;margin-left:auto;transition:transform .15s}
.ast-botao:hover{transform:scale(1.06)}
.ast-botao:focus-visible,.ast button:focus-visible,.ast a:focus-visible,.ast-campo:focus-visible{outline:3px solid #f5b400;outline-offset:2px}
.ast-botao .ast-avatar{width:64px;height:64px}
.ast-botao::after{content:"";position:absolute;right:3px;bottom:3px;width:13px;height:13px;border-radius:50%;background:#2fbf4a;border:2px solid #fff}
.ast-botao-x{display:none;position:absolute;inset:0;border-radius:50%;background:var(--ast-cor);color:#fff;align-items:center;justify-content:center}
.ast-botao-x svg{width:26px;height:26px}
.ast-aberto .ast-botao-x{display:flex}
.ast-aberto .ast-botao::after{display:none}
.ast-avatar{display:block;width:44px;height:44px;border-radius:50%;overflow:hidden;flex:none;background:#fff}
.ast-avatar svg,.ast-avatar img{width:100%;height:100%;display:block;object-fit:cover}

.ast-balao{position:absolute;right:6px;bottom:78px;width:250px;background:#fff;border:1px solid #d5dbe1;border-radius:14px;box-shadow:0 8px 26px rgba(0,0,0,.18);animation:astSobe .35s ease-out}
.ast-balao::after{content:"";position:absolute;right:22px;bottom:-8px;width:14px;height:14px;background:#fff;border-right:1px solid #d5dbe1;border-bottom:1px solid #d5dbe1;transform:rotate(45deg)}
.ast-balao-abrir{display:block;width:100%;text-align:left;background:none;border:0;padding:14px 30px 14px 16px;font:inherit;color:var(--texto1,#18181b);cursor:pointer;border-radius:14px}
.ast-balao-abrir span{display:block;font-weight:700;margin-bottom:2px}
.ast-balao-fechar{position:absolute;top:4px;right:6px;border:0;background:none;font-size:1.25rem;line-height:1;color:#6b7280;cursor:pointer;padding:4px 6px;border-radius:6px}
.ast-balao-fechar:hover{background:#f0f2f5}

.ast-painel{position:absolute;right:0;bottom:78px;width:380px;height:min(600px,calc(100vh - 110px - var(--ast-base,20px)));background:#f4f6f8;border-radius:16px;box-shadow:0 14px 44px rgba(0,0,0,.28);display:flex;flex-direction:column;overflow:hidden;animation:astSobe .25s ease-out}
.ast-painel[hidden]{display:none}
@keyframes astSobe{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.ast-painel,.ast-balao{animation:none}.ast-botao{transition:none}}
.ast-topo{display:flex;align-items:center;gap:10px;padding:12px 10px 12px 14px;background:var(--ast-cor);color:#fff}
.ast-topo .ast-avatar{width:40px;height:40px;border:2px solid rgba(255,255,255,.85);background:#fff}
.ast-topo div{flex:1;min-width:0;display:flex;flex-direction:column}
.ast-topo strong{font-size:1rem}
.ast-topo small{font-size:.76rem;opacity:.9}
.ast-topo button{border:0;background:transparent;color:#fff;width:36px;height:36px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.ast-topo button:hover{background:rgba(255,255,255,.16)}
.ast-topo svg{width:20px;height:20px}

.ast-msgs{flex:1;overflow-y:auto;padding:16px 12px 8px;display:flex;flex-direction:column;gap:10px;overscroll-behavior:contain}
.ast-linha{display:flex;flex-direction:column;max-width:88%}
.ast-bot{align-self:flex-start}
.ast-eu{align-self:flex-end;align-items:flex-end}
.ast-bolha{padding:10px 13px;border-radius:14px;background:#fff;border:1px solid #e1e6eb;color:var(--texto1,#18181b);word-wrap:break-word}
.ast-bot .ast-bolha{border-top-left-radius:4px}
.ast-eu .ast-bolha{background:var(--ast-cor);border-color:transparent;color:#fff;border-top-right-radius:4px}
.ast-texto{margin:0;white-space:pre-line}
.ast-itens{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}
.ast-item{display:flex;flex-direction:column;gap:1px;padding:8px 10px;border:1px solid #dfe5ea;border-left:3px solid var(--ast-cor);border-radius:8px;text-decoration:none;color:var(--texto1,#18181b);background:#fafbfc}
.ast-item:hover{background:#f0f5ee;border-color:#cbd6c6}
.ast-item strong{font-size:.9rem;color:var(--teal,#28817d)}
.ast-item-tipo{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#6b7280}
.ast-item-desc{font-size:.8rem;color:#4b5563}
.ast-acoes{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.ast-acao{display:inline-block;padding:7px 12px;border-radius:999px;background:var(--ast-cor);color:#fff;text-decoration:none;font-weight:600;font-size:.82rem}
.ast-acao:hover{filter:brightness(1.1)}
.ast-chips{display:flex;flex-wrap:wrap;gap:6px;padding:2px 0 4px}
.ast-chips button{border:1px solid var(--ast-cor);background:#fff;color:var(--ast-cor);border-radius:999px;padding:6px 12px;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer}
.ast-chips button:hover{background:var(--ast-cor);color:#fff}
.ast-avaliar{display:flex;align-items:center;gap:6px;margin-top:4px;font-size:.76rem;color:#6b7280}
.ast-avaliar button{border:1px solid #cfd6dc;background:#fff;border-radius:999px;padding:2px 10px;font:inherit;font-size:.76rem;cursor:pointer;color:#374151}
.ast-avaliar button:hover{border-color:var(--ast-cor);color:var(--ast-cor)}
.ast-digitando .ast-bolha{display:flex;gap:4px;padding:13px 14px}
.ast-digitando span{width:7px;height:7px;border-radius:50%;background:#9aa4ae;animation:astPonto 1s infinite}
.ast-digitando span:nth-child(2){animation-delay:.15s}.ast-digitando span:nth-child(3){animation-delay:.3s}
@keyframes astPonto{0%,60%,100%{opacity:.3;transform:none}30%{opacity:1;transform:translateY(-3px)}}

.ast-form{display:flex;gap:8px;padding:10px 12px 4px;background:#fff;border-top:1px solid #e1e6eb}
.ast-campo{flex:1;min-width:0;border:1px solid #cfd6dc;border-radius:999px;padding:10px 14px;font:inherit;font-size:16px;background:#f8fafb}
.ast-campo:focus{border-color:var(--ast-cor);background:#fff;outline:none}
.ast-enviar{flex:none;width:42px;height:42px;border:0;border-radius:50%;background:var(--ast-cor);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}
.ast-enviar:disabled{opacity:.5;cursor:default}
.ast-enviar svg{width:20px;height:20px}
.ast-aviso{margin:0;padding:2px 14px 9px;background:#fff;font-size:.7rem;color:#6b7280;text-align:center}

body.tem-assistente .float-top{bottom:calc(var(--ast-base,20px) + 78px);right:32px}

@media (max-width:600px){
  .ast{right:14px}
  .ast-botao,.ast-botao .ast-avatar{width:56px;height:56px}
  .ast-balao{bottom:68px;width:min(250px,calc(100vw - 40px))}
  .ast-painel{position:fixed;inset:0;width:auto;height:auto;border-radius:0;bottom:0}
  .ast.ast-aberto{z-index:975}
  .ast-aberto .ast-botao{display:none}
  .ast-topo{padding-top:max(12px,env(safe-area-inset-top))}
  .ast-aviso{padding-bottom:max(9px,env(safe-area-inset-bottom))}
}
@media print{.ast{display:none!important}}

/* ===== Telefones e Ramais ===== */
.tel-aviso{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;background:var(--cor3,#e2f0db);border-left:4px solid var(--cor1);padding:12px 16px;border-radius:var(--r)}
.tel-busca{margin:22px 0 10px}
.tel-busca label{display:block;font-weight:700;margin-bottom:6px}
.tel-busca>div{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.tel-busca input{flex:1;min-width:220px;max-width:520px;padding:12px 14px;border:1px solid var(--bd);border-radius:var(--r);font:inherit;font-size:1rem;background:#fff}
.tel-busca input:focus{outline:2px solid var(--cor1);outline-offset:1px}
.tel-cont{margin:6px 0 0;font-size:.82rem;color:var(--mut)}
.tel-areas{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 8px}
.tel-areas a{padding:6px 12px;border:1px solid var(--bd);border-radius:999px;background:#fff;text-decoration:none;color:var(--texto1);font-size:.8rem;font-weight:600}
.tel-areas a:hover{border-color:var(--cor1);color:var(--verde-esc)}
.tel-areas span{color:var(--mut);font-weight:400}
.tel-area{scroll-margin-top:90px}
.tel-area h2{margin:28px 0 10px;font-size:1.15rem;padding-bottom:6px;border-bottom:2px solid var(--cor1)}
.tel-lista{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:10px}
.tel-item{background:#fff;border:1px solid var(--bd);border-radius:var(--r);padding:12px 14px;display:flex;flex-direction:column;gap:8px}
.tel-item[hidden],.tel-area[hidden]{display:none}
.tel-setor{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 10px;align-items:baseline}
.tel-setor strong{font-size:.95rem}
.tel-direto{font-weight:700;white-space:nowrap}
.tel-ramais{display:flex;flex-wrap:wrap;gap:5px;align-items:center}
.tel-rot{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--mut);font-weight:700;margin-right:2px}
.tel-ramal{font-variant-numeric:tabular-nums;font-weight:700;font-size:.92rem;padding:3px 9px;border-radius:5px;background:var(--cinza1,#f0f2f5);color:var(--texto1)}
.tel-ramal small{font-weight:400;font-size:.72rem;color:var(--mut)}
.tel-destaque{background:var(--cor1);color:#fff;font-size:1.05rem;padding:4px 11px}
.tel-principal{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}
.tel-obs{font-size:.88rem;color:var(--texto2,#27272a);font-weight:600}
.tel-fone{font-weight:700;color:var(--teal,#28817d);white-space:nowrap;text-decoration:none;border-bottom:1px dashed currentColor}
.tel-fone+.tel-fone::before{content:"ou ";color:var(--mut);font-weight:400;border:0}
.tel-fone:hover{border-bottom-style:solid}
.tel-fone-peq{font-weight:500;font-size:.78rem;color:var(--teal,#28817d);text-decoration:none;white-space:nowrap}
.tel-fone-peq::before{content:"· ";color:var(--mut)}
.tel-com-fone{display:inline-flex;gap:4px;align-items:baseline}
.tel-ramais .tel-ramal{font-size:.86rem}
.tel-rodape{margin-top:26px;font-size:.85rem;color:var(--mut)}
@media print{
  .p_topo,.p_rodape,.crumbs,.tel-busca,.tel-areas,.tel-rodape,.popup-modal,.cookie-modal,.float-social,.agenda-widget,.acc-bar,.float-top,.cookie-bar,.tel-aviso .btn{display:none!important}
  .tel-lista{grid-template-columns:1fr 1fr;gap:4px}
  .tel-item{padding:5px 8px;break-inside:avoid;flex-direction:row;justify-content:space-between;gap:10px}
  .tel-area h2{margin:12px 0 4px;font-size:1rem}
  .tel-ramal,.tel-ramais .tel-ramal{padding:0 4px;background:none;font-size:.85rem;color:#000}.tel-destaque{color:#000;font-size:.95rem}.tel-principal,.tel-ramais{gap:2px 4px}.tel-obs{font-size:.8rem}.tel-item{flex-wrap:wrap}
}

/* ===== Endereços das Unidades (e endereço nos cartões de telefone) ===== */
.tel-local{margin:-2px 0 0;font-size:.82rem;color:var(--mut);display:flex;flex-wrap:wrap;gap:2px 8px;align-items:baseline}
.tel-oficial{width:100%;color:var(--texto2,#27272a);font-style:italic}
.tel-mapa{font-size:.78rem;font-weight:600;white-space:nowrap}
.end-setor{font-size:.78rem;color:var(--mut);margin-top:-6px}
.end-endereco{margin:0;display:flex;gap:6px;align-items:flex-start;font-size:.92rem}
.end-endereco svg{width:16px;height:16px;flex:none;margin-top:2px;color:var(--cor1)}
.end-acoes{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;margin-top:2px}
.end-ramal{font-size:.78rem;color:var(--mut)}
.end-mapa{margin-left:auto}
.end-obs{margin:0;font-size:.8rem;color:var(--mut)}
@media print{.end-mapa{display:none!important}.end-lista .tel-item{flex-direction:column;gap:2px}}

/* ===== Sala do Empreendedor ===== */
.emp-topo{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:start;margin-bottom:10px}
.emp-lead{font-size:1.05rem;line-height:1.65;margin:0 0 16px}
.emp-atalhos{display:flex;flex-wrap:wrap;gap:8px}
.emp-atalhos a{display:inline-flex;gap:6px;align-items:baseline;padding:9px 14px;border:1px solid var(--bd);border-radius:999px;background:#fff;text-decoration:none;color:var(--texto1);font-size:.86rem;font-weight:600}
.emp-atalhos a strong{color:var(--verde-esc);font-size:1rem}
.emp-atalhos a:hover{border-color:var(--cor1)}
.emp-atendimento{background:var(--cor3,#e2f0db);border-radius:var(--r);padding:18px 20px;border-top:4px solid var(--cor1)}
.emp-atendimento h2{margin:0 0 10px;font-size:1.05rem}
.emp-atendimento ul{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:8px;font-size:.9rem}
.emp-atendimento li span{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--mut);font-weight:700}
.emp-atendimento li a{font-weight:600;word-break:break-word}
.emp-botoes{display:flex;flex-wrap:wrap;gap:8px}
.emp-secao{margin-top:34px;scroll-margin-top:90px}
.emp-secao>h2{font-size:1.25rem;padding-bottom:6px;border-bottom:2px solid var(--cor1);margin-bottom:14px}
.emp-filtro{margin-bottom:12px}
.emp-filtro label{display:block;font-weight:700;margin-bottom:4px;font-size:.88rem}
.emp-filtro input{width:100%;max-width:440px;padding:11px 13px;border:1px solid var(--bd);border-radius:var(--r);font:inherit}
.emp-lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.emp-lista[hidden],.emp-card[hidden]{display:none}
.emp-card{background:#fff;border:1px solid var(--bd);border-radius:var(--r);scroll-margin-top:90px}
.emp-card:target{border-color:var(--cor1);box-shadow:0 0 0 3px var(--cor3,#e2f0db)}
.emp-card details>summary{list-style:none;cursor:pointer;padding:14px 46px 14px 16px;position:relative;display:flex;flex-direction:column;gap:3px}
.emp-card details>summary::-webkit-details-marker{display:none}
.emp-card details>summary::after{content:"+";position:absolute;right:16px;top:12px;font-size:1.5rem;line-height:1;color:var(--verde-esc)}
.emp-card details[open]>summary::after{content:"−"}
.emp-card details>summary:hover .emp-tit{color:var(--verde-esc)}
.emp-tit{font-weight:800;font-size:1.02rem}
.emp-novo{display:inline-block;font-size:.66rem;text-transform:uppercase;letter-spacing:.04em;background:#f5b400;color:#1c1c1f;padding:2px 7px;border-radius:999px;vertical-align:middle;margin-left:4px}
.emp-meta{font-size:.88rem;color:var(--texto2,#27272a)}
.emp-datas{font-size:.76rem;color:var(--mut)}
.emp-corpo{padding:0 16px 16px;border-top:1px dashed var(--bd)}
.emp-corpo h4,.emp-card h4{margin:14px 0 4px;font-size:.88rem}
.emp-dados{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px 16px;margin:14px 0 4px}
.emp-dados dt{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--mut);font-weight:700}
.emp-dados dd{margin:0;font-weight:600;font-size:.9rem}
.emp-texto{font-size:.92rem;line-height:1.6;margin-top:8px}
.emp-acoes{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin:16px 0 0}
.emp-copiar{font-size:.8rem}
.emp-nota{margin-top:14px;font-size:.86rem;color:var(--mut)}
.emp-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.emp-grade .emp-card{padding:16px;display:flex;flex-direction:column}
.emp-grade h3{margin:4px 0 0;font-size:1.02rem}
.emp-img{width:calc(100% + 32px);margin:-16px -16px 10px;max-height:220px;object-fit:cover;border-radius:var(--r) var(--r) 0 0}
.emp-tipo{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--verde-esc)}
.emp-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
.emp-grupo h3{font-size:.95rem;margin:0 0 8px}
.emp-grupo ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.emp-grupo a{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--bd);border-left:3px solid var(--cor1);border-radius:var(--r);background:#fff;text-decoration:none;color:var(--texto1)}
.emp-grupo a:hover{background:var(--cor3,#e2f0db)}
.emp-grupo a strong{font-size:.9rem;color:var(--teal)}
.emp-grupo a span{font-size:.8rem;color:var(--mut)}
@media (max-width:860px){.emp-topo{grid-template-columns:1fr}}

/* ===== Enquetes ===== */
.enq{background:#fff;border:1px solid var(--bd);border-top:4px solid var(--cor1);border-radius:var(--r);padding:20px 22px;scroll-margin-top:90px}
.enq-topo{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 12px;align-items:center;margin-bottom:8px}
.enq-selo{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:3px 9px;border-radius:999px;background:var(--cor3,#e2f0db);color:var(--verde-esc)}
.enq-selo.enq-encerrada{background:#eceff2;color:#4b5563}
.enq-prazo{font-size:.78rem;color:var(--mut)}
.enq-pergunta{margin:0 0 6px;font-size:1.18rem;line-height:1.35}
.enq-desc{margin:0 0 12px;color:var(--texto2);font-size:.92rem}
.enq-aviso{margin:0 0 12px;padding:9px 12px;border-radius:var(--r);background:#fff8e1;border:1px solid #f3d27a;font-size:.88rem}
.enq-form fieldset{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.enq-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.enq-dica{margin:0 0 2px;font-size:.82rem;color:var(--mut)}
.enq-op{display:flex;gap:10px;align-items:center;padding:11px 13px;border:1px solid var(--bd);border-radius:var(--r);cursor:pointer;background:#fafbfc;transition:border-color .15s,background .15s}
.enq-op:hover{border-color:var(--cor1)}
.enq-op input{width:18px;height:18px;margin:0;accent-color:var(--verde-esc);flex:none}
.enq-op:has(input:checked){border-color:var(--verde-esc);background:var(--cor3,#e2f0db);font-weight:600}
.enq-op:focus-within{outline:3px solid #f5b400;outline-offset:1px}
.enq-acoes{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin-top:14px;font-size:.88rem}
.enq-resultado{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}
.enq-linha{display:flex;justify-content:space-between;gap:10px;font-size:.95rem}
.enq-linha b{color:var(--verde-esc)}
.enq-barra{height:12px;background:#e8edf0;border-radius:6px;overflow:hidden;margin:4px 0 2px}
.enq-barra i{display:block;height:100%;background:var(--cor1);border-radius:6px;transition:width .6s ease-out}
.enq-resultado small{font-size:.75rem;color:var(--mut)}
.enq-total,.enq-obrigado{margin:14px 0 0;font-size:.88rem;color:var(--texto2)}
.enq-nota{margin:14px 0 0;font-size:.72rem;color:var(--mut)}
.enq-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;align-items:start}
.enq-pagina{max-width:680px;margin:10px 0 20px}
.enq-home-caixa{max-width:720px;margin:0 auto}
.enq-mais{text-align:center;margin:12px 0 0;font-size:.88rem}
@media (max-width:520px){.enq{padding:16px}.enq-grade{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.enq-barra i{transition:none}}

/* ===== Conselhos Municipais ===== */
.cons-intro{max-width:860px}
.cons-grade{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.cons-card[hidden]{display:none}
.cons-card a{display:flex;flex-direction:column;gap:6px;height:100%;padding:16px 18px;background:#fff;border:1px solid var(--bd);border-top:4px solid var(--cor1);border-radius:var(--r);text-decoration:none;color:var(--texto1);transition:box-shadow .15s,transform .15s}
.cons-card a:hover{box-shadow:0 8px 22px rgba(0,0,0,.08);transform:translateY(-2px)}
.cons-card strong{font-size:1rem;line-height:1.35;color:var(--teal)}
.cons-sigla{align-self:flex-start;font-size:.7rem;font-weight:800;letter-spacing:.05em;padding:3px 9px;border-radius:999px;background:var(--cor3,#e2f0db);color:var(--verde-esc)}
.cons-desc{font-size:.85rem;color:var(--texto2)}
.cons-meta{margin-top:auto;padding-top:6px;display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.76rem;color:var(--mut)}
.cons-prox{color:var(--verde-esc);font-weight:700}
.cons-logo{width:56px;height:56px;object-fit:contain}
.cons-cab{display:flex;gap:16px;align-items:center}
.cons-cab h1{margin:6px 0 0}
.cons-logo-g{width:84px;height:84px;object-fit:contain;flex:none}
.cons-topo{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:start;margin-top:14px}
.cons-topo h2{font-size:1.05rem;margin:0 0 6px}
.cons-lead{font-size:1.02rem;line-height:1.65;margin:0 0 16px}
.cons-leis{display:block;font-size:.8rem;color:var(--texto2);margin-top:3px}
.cons-seg{font-size:.95rem;margin:18px 0 8px;color:var(--verde-esc)}
.tbl-rolagem{overflow-x:auto}
.cons-tabela{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--bd);border-radius:var(--r);font-size:.9rem}
.cons-tabela th{text-align:left;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--mut);background:var(--cinza1);padding:9px 12px}
.cons-tabela td{padding:9px 12px;border-top:1px solid var(--bd);vertical-align:top}
.cons-tabela details summary{cursor:pointer;color:var(--teal)}
.cons-tipo{font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--cor3,#e2f0db);color:var(--verde-esc)}
.cons-tipo.cons-suplente{background:#eef1f4;color:#4b5563}
.cons-reunioes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.cons-reunioes>li{display:flex;gap:14px;background:#fff;border:1px solid var(--bd);border-radius:var(--r);padding:12px 14px}
.cons-data{flex:none;width:56px;text-align:center;background:var(--cor1);color:#fff;border-radius:var(--r);padding:6px 0;line-height:1.1}
.cons-data b{display:block;font-size:1.4rem}
.cons-data span{font-size:.72rem;text-transform:uppercase}
.cons-quando{margin:2px 0 4px;font-size:.86rem;color:var(--texto2)}
.cons-situ{font-size:.7rem;font-weight:700;text-transform:uppercase;padding:2px 7px;border-radius:999px;background:#fff1d6;color:#8a5a00}
.cons-cancelada{opacity:.6}
.cons-cancelada .cons-data{background:#9aa3ab}
.cons-semlink{display:block;padding:10px 12px;border:1px solid var(--bd);border-radius:var(--r);background:#fff}
@media (max-width:860px){.cons-topo{grid-template-columns:1fr}.cons-cab{align-items:flex-start}}
@media (min-width:700px){.cons-tabela{table-layout:auto}.cons-tabela th:nth-child(1){width:34%}.cons-tabela th:nth-child(2){width:20%}.cons-tabela th:nth-child(4){width:16%}}
@media (max-width:600px){.cons-tabela thead{display:none}.cons-tabela tr{display:block;border-top:1px solid var(--bd);padding:8px 10px}.cons-tabela td{display:block;border:0;padding:2px 0}.cons-tabela td:first-child{font-weight:700}}
.cons-fotos{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;border:1px solid var(--bd);background:#fff;border-radius:999px;padding:3px 10px 3px 4px;cursor:pointer;font:inherit;font-size:.82rem;color:var(--teal);font-weight:600}
.cons-fotos:hover{border-color:var(--cor1)}
.cons-fotos-pilha{display:inline-flex}
.cons-fotos-pilha img{width:28px;height:28px;object-fit:cover;border-radius:50%;border:2px solid #fff;margin-left:-8px;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.cons-fotos-pilha img:first-child{margin-left:0}
.cons-visor{border:0;padding:0;background:transparent;max-width:none;max-height:none;width:100vw;height:100vh;overflow:hidden}
.cons-visor::backdrop{background:rgba(0,0,0,.88)}
.cons-visor[open]{display:flex;align-items:center;justify-content:center}
.cons-visor img{max-width:92vw;max-height:80vh;object-fit:contain;border-radius:4px;box-shadow:0 10px 40px rgba(0,0,0,.5)}
.cons-visor button{position:absolute;border:0;background:rgba(255,255,255,.14);color:#fff;font-size:1.6rem;width:48px;height:48px;border-radius:50%;cursor:pointer}
.cons-visor button:hover{background:rgba(255,255,255,.28)}
.cons-visor-ant{left:16px;top:50%;transform:translateY(-50%)}
.cons-visor-prox{right:16px;top:50%;transform:translateY(-50%)}
.cons-visor-fechar{top:14px;right:16px}
.cons-visor-tit{position:absolute;top:22px;left:20px;right:80px;margin:0;color:#fff;font-weight:600}
.cons-visor-cont{position:absolute;bottom:16px;left:0;right:0;text-align:center;margin:0;color:#ddd;font-size:.9rem}
@media (max-width:600px){.cons-tabela td:nth-child(5)::before{content:""}}
.form [hidden]{display:none!important}

/* Conselho: atas e documentos (lista com abas) */
.cdoc-barra{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:14px}
.cdoc-abas{display:flex;flex-wrap:wrap;gap:6px}
.cdoc-abas button{font:inherit;font-size:.88rem;font-weight:600;padding:7px 14px;border:1px solid var(--bd);border-radius:999px;background:#fff;color:var(--texto1);cursor:pointer}
.cdoc-abas button span{display:inline-block;min-width:1.5em;margin-left:4px;padding:0 6px;border-radius:999px;background:#eef2f4;font-size:.78rem;color:var(--mut);text-align:center}
.cdoc-abas button:hover{border-color:var(--cor1)}
.cdoc-abas button.ativo{background:var(--cor1);border-color:var(--cor1);color:#fff}
.cdoc-abas button.ativo span{background:rgba(255,255,255,.25);color:#fff}
.cdoc-filtros{display:flex;gap:8px;flex-wrap:wrap}
.cdoc-filtros input,.cdoc-filtros select{font:inherit;font-size:.9rem;padding:8px 12px;border:1px solid var(--bd);border-radius:var(--r);background:#fff}
.cdoc-filtros input{min-width:230px}
.cdoc-lista{list-style:none;margin:0;padding:0;border:1px solid var(--bd);border-radius:var(--r);background:#fff;overflow:hidden}
.cdoc-ano{padding:6px 16px;background:#f4f7f8;border-top:1px solid var(--bd);font-size:.8rem;font-weight:700;letter-spacing:.06em;color:var(--mut)}
.cdoc-ano:first-child{border-top:0}
.cdoc-item{display:flex;align-items:center;gap:14px;padding:12px 16px;border-top:1px solid #edf1f3}
.cdoc-ano+.cdoc-item{border-top:1px solid var(--bd)}
.cdoc-item:hover{background:#fafcfb}
.cdoc-ico{flex:none;width:42px;height:48px;border-radius:6px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:7px;font-size:.66rem;font-weight:800;letter-spacing:.03em;color:#fff;background:#7a8a94;position:relative}
.cdoc-ico::before{content:"";position:absolute;top:0;right:0;border-style:solid;border-width:0 12px 12px 0;border-color:transparent #fff transparent transparent;filter:drop-shadow(-1px 1px 0 rgba(0,0,0,.15))}
.cdoc-pdf{background:#d64541}.cdoc-doc{background:#2f6db5}.cdoc-xls,.cdoc-xlsx{background:#2e8b57}.cdoc-link{background:var(--cor1)}.cdoc-jpg,.cdoc-png{background:#b06ab3}
.cdoc-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.cdoc-tit{font-weight:600;color:var(--teal);text-decoration:none;line-height:1.35}
a.cdoc-tit:hover{text-decoration:underline}
.cdoc-meta{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--mut)}
.cdoc-tag{padding:1px 8px;border-radius:999px;background:var(--cor3,#e2f0db);color:var(--texto1);font-weight:600;font-size:.74rem}
.cdoc-abrir{flex:none;font-size:.85rem;font-weight:600;padding:7px 16px;border:1px solid var(--cor1);border-radius:var(--r);color:var(--cor1);text-decoration:none;white-space:nowrap}
.cdoc-abrir:hover{background:var(--cor1);color:#fff}
.cdoc-indisp{border-color:var(--bd);color:var(--mut)}
.cdoc-lista [hidden]{display:none}
@media (max-width:640px){
  .cdoc-filtros,.cdoc-filtros input{width:100%;min-width:0}
  .cdoc-filtros input{flex:1}
  .cdoc-item{gap:10px;padding:10px 12px}
  .cdoc-ico{width:34px;height:40px;font-size:.6rem}
  .cdoc-abrir{display:none}
}

/* Assistente: respostas com HTML (negrito, links, listas) */
.ast-html{white-space:normal}
.ast-html p{margin:0 0 .5em}.ast-html p:last-child{margin-bottom:0}
.ast-html ul,.ast-html ol{margin:.35em 0 .5em;padding-left:1.25em}
.ast-html li{margin:.15em 0}
.ast-html a{color:var(--cor1,#2e7d32);font-weight:600;text-decoration:underline;text-underline-offset:2px;word-break:break-word}
.ast-html a:hover{opacity:.8}

/* Concursos e processos seletivos */
.conc-lista{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px}
.conc-card[hidden]{display:none}
.conc-card a{display:flex;flex-direction:column;gap:8px;height:100%;padding:16px 18px;background:#fff;border:1px solid var(--bd);border-left:5px solid var(--conc-cor,#7a8a94);border-radius:var(--r);text-decoration:none;color:var(--texto1);transition:box-shadow .15s,transform .15s}
.conc-card a:hover{box-shadow:0 8px 22px rgba(0,0,0,.08);transform:translateY(-2px)}
.conc-card strong{font-size:1.02rem;line-height:1.35;color:var(--teal)}
.conc-topo{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;justify-content:space-between}
.conc-tipo{font-size:.74rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--mut)}
.conc-sit{font-size:.74rem;font-weight:800;padding:3px 10px;border-radius:999px;background:var(--conc-fundo,#eef1f4);color:var(--conc-cor,#4b5563)}
.conc-cargos{font-size:.86rem;color:var(--texto2)}
.conc-datas{margin-top:auto;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:.8rem;color:var(--mut)}
.conc-datas b{color:var(--texto2);font-weight:700}
.conc-abertas{--conc-cor:#1f8a4c;--conc-fundo:#dcf3e5}
.conc-breve,.conc-previsto{--conc-cor:#1c6383;--conc-fundo:#dcecf5}
.conc-andamento{--conc-cor:#b26a00;--conc-fundo:#fff1d6}
.conc-suspenso{--conc-cor:#b23c17;--conc-fundo:#fde4dc}
.conc-validade{--conc-cor:#6b3fa0;--conc-fundo:#ede4f7}
.conc-encerrado,.conc-cancelado{--conc-cor:#6b7280;--conc-fundo:#eef1f4}
.conc-cab{margin-top:6px}
.conc-cab .conc-topo{justify-content:flex-start}
.conc-cab h1{margin:8px 0 0}
.conc-etapa{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;background:#fff;border:1px solid var(--bd);border-left:5px solid var(--cor1);border-radius:var(--r);padding:12px 16px;margin:0 0 14px}
.conc-etapa span{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--verde-esc);width:100%}
.conc-etapa b{color:var(--texto1)}
.conc-aviso{background:#fff8e6;border:1px solid #f1d38a;border-radius:var(--r);padding:10px 14px;margin:0 0 14px;font-size:.92rem}
.conc-tab-wrap{overflow-x:auto}
.conc-crono{list-style:none;margin:0;padding:0 0 0 6px;position:relative}
.conc-crono::before{content:"";position:absolute;left:12px;top:6px;bottom:6px;width:2px;background:var(--bd)}
.conc-crono li{position:relative;display:grid;grid-template-columns:210px 1fr;gap:4px 16px;padding:8px 0 8px 30px}
.conc-crono li::before{content:"";position:absolute;left:1px;top:12px;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid #c3cbd2}
.conc-crono .conc-feito{color:var(--mut)}
.conc-crono .conc-feito::before{background:var(--cor1);border-color:var(--cor1)}
.conc-crono .conc-agora::before,.conc-crono .conc-proxima::before{border-color:var(--cor1);box-shadow:0 0 0 4px var(--cor3,#e2f0db)}
.conc-crono .conc-agora,.conc-crono .conc-proxima{font-weight:700}
.conc-quando{font-variant-numeric:tabular-nums;font-size:.9rem}
.conc-evento em{font-style:normal;font-size:.68rem;font-weight:800;text-transform:uppercase;padding:2px 7px;border-radius:999px;background:var(--cor1);color:#fff;margin-left:6px;vertical-align:2px}
.conc-ajuda{margin-top:28px;background:var(--cinza1);border-radius:var(--r);padding:16px 20px}
.conc-ajuda h2{font-size:1rem;margin:0 0 8px}
.conc-ajuda ul{margin:0;padding-left:1.2em;display:flex;flex-direction:column;gap:6px;font-size:.92rem}
.home-conc{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;list-style:none;margin:0;padding:0}
@media (max-width:640px){
  .conc-lista{grid-template-columns:1fr}
  .conc-crono li{grid-template-columns:1fr;gap:0}
  .conc-quando{font-size:.8rem;color:var(--mut)}
  .conc-cargos-tab thead{display:none}
  .conc-cargos-tab tr{display:block;border-top:1px solid var(--bd);padding:8px 10px}
  .conc-cargos-tab td{display:block;border:0;padding:2px 0}
  .conc-cargos-tab td:first-child{font-weight:700}
  .conc-cargos-tab td[data-rot]::before{content:attr(data-rot) ": ";font-weight:600;color:var(--mut)}
}

/* Organograma */
.org-barra{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:6px 0 22px}
.org-barra input{flex:1 1 300px;font:inherit;font-size:.92rem;padding:9px 12px;border:1px solid var(--bd);border-radius:var(--r)}
.org-cont{font-size:.82rem;color:var(--mut);margin-left:auto}
.org-chart{display:flex;flex-direction:column;align-items:center}
.org-no{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;padding:12px 22px;border-radius:10px;text-decoration:none;color:#fff;background:var(--verde-esc,#4a8a3a);box-shadow:0 4px 14px rgba(0,0,0,.1);min-width:240px}
.org-no strong{font-size:1.02rem}
.org-cargo{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;opacity:.85}
a.org-no:hover{filter:brightness(1.08)}
.org-chefia{display:flex;gap:18px;align-items:center;justify-content:center;flex-wrap:wrap;position:relative}
.org-prefeito{background:var(--teal,#28817d);min-width:270px;padding:14px 26px}
.org-prefeito strong{font-size:1.15rem}
.org-vice{background:#fff;color:var(--teal);border:2px dashed var(--teal);box-shadow:none;min-width:200px;padding:8px 16px}
.org-gabinete{position:relative;margin-top:26px;width:100%;max-width:980px;display:flex;flex-direction:column;align-items:center;gap:12px}
.org-gabinete::before,.org-barramento::before{content:"";position:absolute;top:-26px;left:50%;width:2px;height:26px;background:#b8c4cc}
.org-gab{background:#fff;color:var(--texto1);border:2px solid var(--teal);box-shadow:none;padding:9px 20px}
.org-gab .org-cargo{color:var(--teal)}
.org-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.org-chips li{display:flex;flex-direction:column;align-items:center;background:var(--cor3,#e2f0db);border-radius:8px;padding:7px 14px;font-size:.86rem;font-weight:600;text-align:center}
.org-chips li a{color:var(--verde-esc);text-decoration:none}
.org-chips li a:hover{text-decoration:underline}
.org-chips small{font-weight:400;font-size:.74rem;color:var(--mut)}
.org-barramento{position:relative;margin-top:26px;width:100%;text-align:center;border-top:2px solid #b8c4cc}
.org-barramento span{position:relative;top:-12px;background:#fff;padding:0 14px;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--mut)}
.org-secs{list-style:none;margin:4px 0 0;padding:0;width:100%;display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));grid-auto-flow:dense;gap:12px;align-items:start}
.org-sec:has(details[open]){grid-column:1/-1}
.org-sec[hidden]{display:none}
.org-sec details{background:#fff;border:1px solid var(--bd);border-top:4px solid var(--cor1);border-radius:var(--r);transition:box-shadow .15s}
.org-sec details[open]{box-shadow:0 8px 22px rgba(0,0,0,.08)}
.org-sec summary{list-style:none;cursor:pointer;padding:12px 38px 12px 14px;position:relative;display:flex;flex-direction:column;gap:3px}
.org-sec summary::-webkit-details-marker{display:none}
.org-sec summary::after{content:"+";position:absolute;right:12px;top:12px;width:22px;height:22px;border-radius:50%;background:var(--cor3,#e2f0db);color:var(--verde-esc);font-weight:800;text-align:center;line-height:22px}
.org-sec details[open] summary::after{content:"–"}
.org-sec-nome{font-weight:800;color:var(--teal);line-height:1.3}
.org-sec-nome small{display:block;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--mut)}
.org-resp{font-size:.82rem;color:var(--texto2)}
.org-num{font-size:.74rem;color:var(--mut)}
.org-sec-achou details{border-top-color:#e8a317}
.org-sec-corpo{padding:0 14px 12px;border-top:1px solid #edf1f3}
.org-ramo{list-style:none;margin:0;padding:0}
.org-n0{margin-top:10px;columns:3 250px;column-gap:28px}
.org-n0>li{padding:6px 0;break-inside:avoid}
.org-n0>li>.org-un-nome{font-weight:700}
.org-n1{margin:4px 0 2px 9px;padding-left:12px;border-left:2px solid #dbe3e8}
.org-n1>li{position:relative;padding:3px 0;font-size:.86rem}
.org-n1>li::before{content:"";position:absolute;left:-12px;top:13px;width:9px;border-top:2px solid #dbe3e8}
.org-un-nome{display:grid;grid-template-columns:auto 1fr;gap:2px 6px;align-items:baseline}
.org-tag{font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;border-radius:4px;background:#eef1f4;color:#4b5563;flex:none}
.org-t-dep{background:var(--teal,#28817d);color:#fff}
.org-t-div{background:#dcecf5;color:#1c6383}
.org-t-coord{background:#fff1d6;color:#8a5a00}
.org-achou>.org-un-nome,.org-achou>.org-un-nome a,.org-chips li.org-achou,.org-grupo li.org-achou{background:#fff3c4;border-radius:4px}
.org-desc{font-size:.84rem;color:var(--texto2);margin:8px 0 0}
.org-link{margin:10px 0 0;font-size:.86rem}
.org-grupos{margin-top:34px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;align-items:start}
.org-grupo{background:var(--cinza1);border-radius:var(--r);padding:14px 18px}
.org-grupo[hidden]{display:none}
.org-grupo h2{font-size:1rem;margin:0 0 4px;color:var(--teal)}
.org-grupo ul{margin:8px 0 0;padding-left:1.1em;font-size:.86rem;display:flex;flex-direction:column;gap:3px}
@media (max-width:640px){
  .org-no{min-width:0;width:100%}
  .org-chefia{flex-direction:column;gap:10px}
  .org-cont{margin-left:0;width:100%}
}
@media print{
  .org-barra,.site-header,header,footer,.ast,.acess,#vlibras{display:none!important}
  .org-sec details{break-inside:avoid}
  .org-sec details>*:not(summary){display:block!important}
}
.sec-org{margin-top:26px;background:#fff;border:1px solid var(--bd);border-top:4px solid var(--cor1);border-radius:var(--r);padding:14px 18px}
.sec-org h2{font-size:1.1rem;margin:0}
.sec-org .org-sec-corpo{padding:0;border:0}

/* Barras de rolagem nas cores do tema */
html{scrollbar-color:var(--cor1) var(--cinza1)}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:var(--cinza1)}
::-webkit-scrollbar-thumb{background:var(--cor1);border-radius:10px;border:2px solid var(--cinza1)}
::-webkit-scrollbar-thumb:hover{background:var(--verde-esc)}
/* menus suspensos (fundo verde): trilho no tom do menu e alça mais escura */
.p_menu_topo ul.p_dropdown,.mega-cols{scrollbar-width:thin;scrollbar-color:var(--verde-esc) var(--cor1)}
.p_menu_topo ul.p_dropdown::-webkit-scrollbar,.mega-cols::-webkit-scrollbar{width:8px}
.p_menu_topo ul.p_dropdown::-webkit-scrollbar-track,.mega-cols::-webkit-scrollbar-track{background:var(--cor1)}
.p_menu_topo ul.p_dropdown::-webkit-scrollbar-thumb,.mega-cols::-webkit-scrollbar-thumb{background:var(--verde-esc);border:2px solid var(--cor1)}
.p_menu_topo ul.p_dropdown::-webkit-scrollbar-thumb:hover,.mega-cols::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.7)}

/* Galeria de Prefeitos */
.gpref-atual{display:flex;gap:22px;align-items:center;max-width:640px;margin:8px 0 10px;padding:14px;background:#fff;border:1px solid var(--bd);border-left:6px solid var(--cor1);border-radius:var(--r);text-decoration:none;color:var(--texto1);box-shadow:0 6px 20px rgba(0,0,0,.06)}
.gpref-atual:hover{box-shadow:0 10px 26px rgba(0,0,0,.1)}
.gpref-atual .gpref-foto{width:150px;flex:none}
.gpref-atual strong{font-size:1.35rem;color:var(--teal)}
.gpref-selo{align-self:flex-start;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:3px 10px;border-radius:999px;background:var(--cor1);color:#fff}
.gpref-mais{font-size:.85rem;color:var(--verde-esc);font-weight:600}
.gpref-tit{font-size:1.2rem;margin:30px 0 14px;padding-bottom:6px;border-bottom:2px solid var(--cor1)}
.gpref-lista{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px;counter-reset:gp}
.gpref-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--bd);border-radius:var(--r);overflow:hidden;counter-increment:gp;position:relative}
.gpref-card::before{content:counter(gp);position:absolute;top:8px;left:8px;width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--teal);font-weight:800;font-size:.8rem;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px rgba(0,0,0,.2)}
.gpref-foto{display:flex;align-items:center;justify-content:center;aspect-ratio:3/4;background:linear-gradient(160deg,#dde9ee,#e6efe2);overflow:hidden;color:#b7c6cf;font-size:4rem;border-radius:4px}
.gpref-card .gpref-foto{border-radius:0}
.gpref-foto img{width:100%;height:100%;object-fit:cover;object-position:center top}
.gpref-txt{display:flex;flex-direction:column;gap:4px;padding:12px 14px 14px}
.gpref-card .gpref-txt{text-align:center;align-items:center}
.gpref-txt strong{font-size:.95rem;line-height:1.3}
.gpref-txt span{font-size:.82rem;color:var(--mut)}
.gpref-bio{padding:0 14px 12px;font-size:.85rem}
.gpref-bio summary{cursor:pointer;color:var(--teal);font-weight:600}
@media (max-width:560px){.gpref-atual{flex-direction:column;align-items:flex-start}.gpref-atual .gpref-foto{width:100%;max-width:220px}.gpref-lista{grid-template-columns:repeat(2,1fr);gap:12px}}
.gpref-txt .gpref-selo{color:#fff;font-size:.7rem}
.gpref-txt .gpref-mais{color:var(--verde-esc);font-size:.85rem}
.gpref-atual .gpref-txt span:not(.gpref-selo):not(.gpref-mais){font-size:.95rem}

/* População */
.pop{--pop-h:#00897b;--pop-m:#c2661a}
.pop-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:6px 0 22px}
.pop-tile{display:flex;flex-direction:column;gap:2px;background:#fff;border:1px solid var(--bd);border-radius:var(--r);padding:16px 18px}
.pop-tile b{font-size:2rem;line-height:1.1;color:var(--texto1);font-variant-numeric:tabular-nums}
.pop-tile span{font-size:.85rem;color:var(--texto2)}
.pop-tile small{margin-top:6px;font-size:.76rem;color:var(--mut)}
.pop-tile .pop-rot{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--mut)}
.pop-tile-dest{border-top:4px solid var(--cor1)}
.pop-tile-dest b{color:var(--teal)}
.pop-caixa{background:#fff;border:1px solid var(--bd);border-radius:var(--r);padding:16px 20px;margin-bottom:16px}
.pop-caixa h2{font-size:1.1rem;margin:0 0 10px}
.pop-caixa h3{font-size:1rem;margin:0 0 8px;color:var(--teal)}
.pop-duas{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}
.pop-duas .pop-caixa{margin-bottom:0}
.pop-duas+.pop-caixa{margin-top:16px}
.pop-split{display:flex;gap:2px;height:22px;border-radius:4px;overflow:hidden}
.pop-split span{display:block;height:100%}
.pop-s1{background:var(--pop-h)}.pop-s2{background:#9fb3bd}
.pop-h{background:var(--pop-h)}.pop-m{background:var(--pop-m)}
.pop-leg{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:.88rem;color:var(--texto2)}
.pop-leg i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.pop-leg-linha{flex-direction:row;flex-wrap:wrap;gap:4px 18px;margin:0 0 10px}
.pop-nota{font-size:.8rem;color:var(--mut);margin:8px 0 0}
.pop-colunas{display:flex;align-items:flex-end;gap:10px;height:260px;margin:22px 0 8px;padding:0 4px;border-bottom:1px solid #c9d2d8}
.pop-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;position:relative;outline:none}
.pop-barra{display:block;width:min(56px,80%);border-radius:4px 4px 0 0;background:var(--pop-h)}
.pop-estimativa .pop-barra{background:repeating-linear-gradient(45deg,var(--pop-h) 0 4px,#5fb9ae 4px 8px)}
.pop-legenda-est,.pop-leg i.pop-estimativa{background:repeating-linear-gradient(45deg,var(--pop-h) 0 3px,#5fb9ae 3px 6px)}
.pop-leg i.pop-censo{background:var(--pop-h)}
.pop-val{font-size:.78rem;font-weight:700;color:var(--texto2);margin-bottom:4px;font-variant-numeric:tabular-nums}
.pop-ano{position:absolute;bottom:-24px;font-size:.8rem;color:var(--mut)}
.pop-colunas+.pop-leg{margin-top:34px}
[data-tip]{position:relative}
[data-tip]:hover::after,[data-tip]:focus::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);white-space:nowrap;background:#1e2a32;color:#fff;font-size:.78rem;font-weight:600;padding:5px 9px;border-radius:5px;z-index:5;pointer-events:none;box-shadow:0 4px 12px rgba(0,0,0,.2)}
.pop-col:hover .pop-barra,.pop-col:focus .pop-barra{filter:brightness(1.12)}
.pop-pir{display:flex;flex-direction:column;gap:2px;max-width:760px;margin:0 auto}
.pop-pir-l{display:grid;grid-template-columns:1fr 88px 1fr;align-items:center;height:20px}
.pop-pir-faixa{text-align:center;font-size:.76rem;color:var(--mut);font-variant-numeric:tabular-nums}
.pop-pir-lado{display:flex;align-items:center;gap:6px;height:100%}
.pop-pir-esq{flex-direction:row-reverse}
.pop-pir-lado>span{display:block;height:16px;min-width:0;outline:none}
.pop-pir-esq>span{border-radius:4px 0 0 4px}
.pop-pir-lado:not(.pop-pir-esq)>span{border-radius:0 4px 4px 0}
.pop-pir-lado>span:hover,.pop-pir-lado>span:focus{filter:brightness(1.15)}
.pop-pir-lado em{font-style:normal;font-size:.7rem;color:var(--mut);font-variant-numeric:tabular-nums}
.pop-tabela{margin-top:14px;font-size:.9rem}
.pop-tabela summary{cursor:pointer;color:var(--teal);font-weight:600}
.pop-tabela table{margin-top:8px}
.pop-tit{font-size:1.2rem;margin:28px 0 12px;padding-bottom:6px;border-bottom:2px solid var(--cor1)}
.pop-ind{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;align-items:start}
.pop-ind .pop-caixa{margin:0}
.pop-ind ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.pop-ind li{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:9px 0;border-top:1px solid #edf1f3}
.pop-ind li:first-child{border-top:0}
.pop-ind-rot{font-size:.86rem;color:var(--texto2)}
.pop-ind-rot small{color:var(--mut)}
.pop-ind li b{font-size:.95rem;text-align:right;font-variant-numeric:tabular-nums}
.pop-ind-rk{grid-column:1/-1;font-size:.74rem;color:var(--mut)}
@media (max-width:600px){.pop-colunas{gap:4px;height:220px}.pop-val{font-size:.62rem}.pop-pir-l{grid-template-columns:1fr 64px 1fr}.pop-pir-lado em{display:none}.pop-tile b{font-size:1.7rem}}

/* Bandeira (A Nossa Cidade) */
.cidade-bandeira .conteudo img{display:block;margin:10px auto 18px;width:auto;max-width:min(100%,720px);border-radius:4px;box-shadow:0 6px 22px rgba(0,0,0,.15);border:1px solid var(--bd)}

/* Localização */
.loc-grade{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}
.loc-mapa{position:relative;border-radius:var(--r);overflow:hidden;border:1px solid var(--bd);box-shadow:0 6px 20px rgba(0,0,0,.08);aspect-ratio:4/3;background:#e9eef0}
.loc-mapa iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media (max-width:860px){.loc-grade{grid-template-columns:1fr}.loc-mapa{aspect-ratio:1/1}}
/* Legislação: busca no texto dos arquivos */
.leg-info{margin:-6px 0 14px;font-size:.88rem;color:var(--texto2)}
.leg-trecho{margin:8px 0 0;padding:8px 10px;background:#f6f8f5;border-left:3px solid var(--cor3);border-radius:0 4px 4px 0;font-size:.82rem;line-height:1.5;color:var(--texto2)}
.leg-trecho span{display:block;font-weight:600;color:var(--cor1);font-size:.76rem;margin-bottom:2px}
.leg-trecho mark,.tbl-wrap td mark{background:#fff1a8;color:inherit;padding:0 1px;border-radius:2px}
/* Endereços: horário de atendimento */
.end-horario{display:grid;grid-template-columns:16px 1fr;column-gap:6px;row-gap:5px;align-items:start;margin:0;font-size:.86rem;color:var(--texto2)}
.end-horario svg{width:16px;height:16px;color:var(--cor1);margin-top:2px}
.end-horario .end-status{grid-column:2;justify-self:start}
.end-status{font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:999px;white-space:nowrap}
.end-status.aberto{background:#e3f4e0;color:#2c6b21}
.end-status.fechado{background:#f6e6e3;color:#9b2c1c}
@media print{.end-status{display:none}}
/* Secretarias: biografia do(a) secretário(a) */
.sec-bio-link{margin-left:8px;font-size:.82rem;white-space:nowrap}
.sec-bio{display:flex;gap:24px;align-items:flex-start;margin:22px 0 6px;padding:22px;background:#f6f8f5;border:1px solid #e1e8de;border-left:4px solid var(--cor3);border-radius:6px;scroll-margin-top:90px}
.sec-bio-foto{width:120px;height:120px;border-radius:50%;object-fit:cover;flex:none;border:3px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.12)}
.sec-bio-txt{flex:1;min-width:0}
.sec-bio h2{margin:0 0 2px;font-size:1.05rem;color:var(--cor1);text-transform:uppercase;letter-spacing:.02em}
.sec-bio-nome{margin:0 0 10px;font-weight:700;font-size:1.05rem}
.sec-bio .conteudo{line-height:1.8;text-align:justify}
.sec-bio-corte{max-height:12.5em;overflow:hidden;position:relative}
.sec-bio-corte:not(.aberta)::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3.5em;background:linear-gradient(rgba(246,248,245,0),#f6f8f5)}
.sec-bio-corte.aberta{max-height:none}
#secBioMais{margin-top:8px}
@media(max-width:640px){.sec-bio{flex-direction:column;align-items:center;text-align:center;padding:18px}.sec-bio .conteudo{text-align:left}}
@media print{.sec-bio-corte{max-height:none}.sec-bio-corte::after,#secBioMais{display:none}}
/* Popup: larguras (Painel › Popup › Largura) */
.popup-modal-card.popup-larga{max-width:760px}
.popup-modal-card.popup-extra{max-width:1000px}
.popup-modal-card.popup-cheia{max-width:96vw;max-height:94vh}
.popup-modal-card:not(.popup-normal) .popup-modal-img{max-height:none;height:auto;object-fit:contain;background:#f3f5f2}
.popup-modal-texto img{max-width:100%;height:auto;display:block;margin:0 auto 10px;border-radius:6px}
/* ===== Lista de Espera dos CMEIs (lista-espera-cmeis.php) ===== */
.le-hero{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px;padding:28px 30px;margin:6px 0 20px;border-radius:14px;color:#fff;background:linear-gradient(120deg,var(--azul-esc) 0%,var(--teal) 55%,var(--verde) 100%)}
.le-hero-txt{flex:1 1 420px;max-width:680px}
.le-eyebrow{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:rgba(255,255,255,.16);padding:4px 10px;border-radius:999px}
.le-hero h1{color:#fff;margin:10px 0 8px;font-size:2rem;border:0;padding:0;text-transform:none}
.le-hero h1::after{display:none}
.le-hero p{margin:0;opacity:.92;line-height:1.6}
.le-meses{display:flex;flex-wrap:wrap;gap:6px}
.le-meses a{color:#fff;text-decoration:none;font-size:.82rem;font-weight:600;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.4)}
.le-meses a:hover{background:rgba(255,255,255,.14)}
.le-meses a.on{background:#fff;color:var(--azul-esc);border-color:#fff}
.le-obs{background:#fff8e1;border-left:4px solid #e2b500;padding:10px 14px;border-radius:0 6px 6px 0;margin:0 0 16px}
.le-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-bottom:18px}
.le-stat{background:#fff;border:1px solid var(--bd);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column}
.le-stat b{font-size:1.9rem;line-height:1.1;color:var(--azul-esc)}
.le-stat span{font-weight:600;color:var(--texto2);font-size:.88rem}
.le-stat small{color:var(--mut);font-size:.78rem;margin-top:2px}
.le-stat-dest{background:var(--cor3);border-color:#cfe3c4}
.le-stat-dest b{color:var(--verde-esc)}
.le-busca{position:sticky;top:0;z-index:20;background:#fff;border:1px solid var(--bd);border-radius:12px;padding:14px;margin-bottom:18px;box-shadow:0 6px 18px rgba(0,0,0,.05)}
.le-campo{display:flex;align-items:center;gap:8px;border:1px solid var(--bd);border-radius:10px;padding:0 12px;background:var(--cinza1)}
.le-campo svg{width:18px;height:18px;color:var(--mut);flex:none}
.le-campo input{flex:1;border:0;background:transparent;padding:12px 0;font:inherit;font-size:.92rem;min-width:0}
.le-campo input:focus{outline:none}
.le-campo:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px rgba(40,129,125,.15)}
.le-filtros{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-top:10px}
.le-chips{display:flex;flex-wrap:wrap;gap:6px}
.le-chips button{border:1px solid var(--bd);background:#fff;border-radius:999px;padding:6px 12px;font:inherit;font-size:.82rem;font-weight:600;color:var(--texto2);cursor:pointer}
.le-chips button span{font-weight:700;color:var(--mut);margin-left:2px}
.le-chips button.on{background:var(--teal);border-color:var(--teal);color:#fff}
.le-chips button.on span{color:#d8efed}
.le-filtros select{border:1px solid var(--bd);border-radius:8px;padding:7px 10px;font:inherit;font-size:.85rem;background:#fff}
.le-cont{margin:8px 2px 0;font-size:.8rem;color:var(--mut)}
.le-cmei{margin-bottom:24px}
.le-cmei-top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px;border-bottom:2px solid var(--cor1);padding-bottom:6px;margin-bottom:12px}
.le-cmei-top h2{margin:0;font-size:1.15rem;color:var(--azul-esc)}
.le-cmei-top span{font-size:.85rem;color:var(--mut);font-weight:600}
.le-turmas{display:grid;gap:12px}
.le-turma{background:#fff;border:1px solid var(--bd);border-radius:12px;overflow:hidden}
.le-turma summary{list-style:none;cursor:pointer;display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:12px 16px;background:var(--cinza1)}
.le-turma summary::-webkit-details-marker{display:none}
.le-turma summary::before{content:"▸";color:var(--teal);font-size:.9rem;transition:transform .2s}
.le-turma[open] summary::before{transform:rotate(90deg)}
.le-t-nome{font-weight:700;color:var(--texto1)}
.le-t-faixa{font-size:.8rem;color:var(--mut)}
.le-t-n{margin-left:auto;font-size:.82rem;color:var(--texto2)}
.le-t-n b{color:var(--azul-esc)}
.le-tab-wrap{overflow-x:auto}
.le-tab{width:100%;border-collapse:collapse;font-size:.88rem}
.le-tab th{text-align:left;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--mut);padding:9px 14px;border-bottom:1px solid var(--bd);white-space:nowrap}
.le-tab td{padding:9px 14px;border-bottom:1px solid #eef1f4;vertical-align:middle}
.le-tab tbody tr:last-child td{border-bottom:0}
.le-tab tbody tr:hover{background:#f7faf9}
.le-pos span{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:30px;padding:0 8px;border-radius:8px;background:var(--cor3);color:var(--verde-esc);font-weight:800}
.le-cr{font-weight:600}
.le-m{display:inline-block;font-size:.74rem;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}
.le-m-sobe{background:#e3f4e0;color:#2c6b21}.le-m-desce{background:#fdecea;color:#9b2c1c}.le-m-novo{background:#e3eefc;color:#1d4e89}
.le-m-igual{background:#eef1f4;color:var(--mut)}.le-m-mudou{background:#fff4d6;color:#7a5a00}
tr.le-achou td{background:#fff8d6}
.le-t-pe{margin:0;padding:8px 16px 12px;font-size:.8rem}
.le-info{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:26px 0 10px}
.le-caixa{background:var(--cinza1);border-radius:12px;padding:18px 20px}
.le-caixa h2{margin:0 0 10px;font-size:1.02rem;color:var(--azul-esc)}
.le-caixa ol{margin:0;padding-left:20px;display:grid;gap:6px;font-size:.9rem}
.le-caixa p{margin:0 0 8px;font-size:.9rem}
.le-nota{margin-top:12px!important;font-size:.82rem!important;color:var(--mut)}
.le-contato{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:4px;font-size:.88rem}
@media(max-width:760px){
  .le-hero{padding:22px 18px}.le-hero h1{font-size:1.55rem}
  .le-info{grid-template-columns:1fr}
  .le-busca{position:static}
  .le-t-n{margin-left:0;width:100%}
  .le-tab thead{display:none}
  .le-tab tr{display:grid;grid-template-columns:auto 1fr auto;gap:2px 12px;padding:10px 14px;border-bottom:1px solid #eef1f4}
  .le-tab td{padding:0;border:0}
  .le-tab td.le-pos{grid-row:1/4;align-self:center}
  .le-tab td.le-cr{grid-column:2}
  .le-tab td[data-rot]{grid-column:2;font-size:.8rem;color:var(--mut)}
  .le-tab td[data-rot]::before{content:attr(data-rot) ": "}
  .le-tab td.le-mov{grid-column:3;grid-row:1/4;align-self:center}
}
@media print{.le-busca,.le-meses,.le-info{display:none}.le-hero{background:none;color:#000;padding:0}.le-hero h1{color:#000}.le-turma{break-inside:avoid}}
.le-tab tr[hidden]{display:none!important}
/* Endereços: diretor(a) e e-mail */
.end-linha{display:grid;grid-template-columns:16px 1fr;column-gap:6px;align-items:start;margin:0;font-size:.86rem;color:var(--texto2)}
.end-linha svg{width:16px;height:16px;color:var(--cor1);margin-top:2px}
.end-linha a{word-break:break-all}
/* ===== Obras Públicas (obras.php / obra.php) ===== */
.ob-hero{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px;padding:30px;margin:6px 0 18px;border-radius:14px;color:#fff;
  background:radial-gradient(circle at 92% 10%,rgba(242,169,0,.35),transparent 40%),linear-gradient(120deg,#1f2d3a 0%,#22524f 60%,var(--teal) 100%)}
.ob-hero>div:first-child{flex:1 1 420px;max-width:700px}
.ob-eyebrow{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:rgba(255,255,255,.14);padding:4px 10px;border-radius:999px}
.ob-hero h1{color:#fff;margin:10px 0 8px;font-size:2rem;border:0;padding:0;text-transform:none}
.ob-hero h1::after{display:none}
.ob-hero p{margin:0;opacity:.92;line-height:1.6}
.ob-hero-num{background:#f2a900;color:#1f2d3a;border-radius:14px;padding:14px 20px;text-align:center;min-width:150px}
.ob-hero-num b{display:block;font-size:2.4rem;line-height:1}
.ob-hero-num span{font-weight:700;font-size:.82rem}
.ob-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:18px}
.ob-kpi{background:#fff;border:1px solid var(--bd);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:2px}
.ob-kpi-rot{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--mut)}
.ob-kpi b{font-size:1.7rem;line-height:1.15;color:#1f2d3a}
.ob-kpi small{color:var(--mut);font-size:.78rem}
.ob-kpi-alerta{border-color:#f0c4bd;background:#fff7f5}.ob-kpi-alerta b{color:#c0392b}
.ob-barra{height:8px;background:#e8edf0;border-radius:999px;overflow:hidden;margin:6px 0 2px}
.ob-barra i{display:block;height:100%;background:var(--verde);border-radius:999px}
.ob-barra-fisica i{background:var(--c,var(--teal))}
.ob-barra-grossa{height:14px}
.ob-barra-ferr{position:sticky;top:0;z-index:20;background:#fff;border:1px solid var(--bd);border-radius:12px;padding:14px;margin-bottom:18px;box-shadow:0 6px 18px rgba(0,0,0,.05);display:grid;gap:10px}
.ob-busca{display:flex;align-items:center;gap:8px;border:1px solid var(--bd);border-radius:10px;padding:0 12px;background:var(--cinza1)}
.ob-busca svg{width:18px;height:18px;color:var(--mut);flex:none}
.ob-busca input{flex:1;border:0;background:transparent;padding:12px 0;font:inherit;font-size:.92rem;min-width:0}
.ob-busca input:focus{outline:none}.ob-busca:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px rgba(40,129,125,.15)}
.ob-chips{display:flex;flex-wrap:wrap;gap:6px}
.ob-chips button{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--bd);background:#fff;border-radius:999px;padding:6px 12px;font:inherit;font-size:.82rem;font-weight:600;color:var(--texto2);cursor:pointer}
.ob-chips button i{width:9px;height:9px;border-radius:50%;background:var(--c)}
.ob-chips button span{color:var(--mut);font-weight:700}
.ob-chips button.on{background:#1f2d3a;border-color:#1f2d3a;color:#fff}.ob-chips button.on span{color:#cfd8de}
.ob-sel{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ob-sel select{border:1px solid var(--bd);border-radius:8px;padding:7px 10px;font:inherit;font-size:.85rem;background:#fff}
.ob-vista{margin-left:auto;display:inline-flex;border:1px solid var(--bd);border-radius:8px;overflow:hidden}
.ob-vista button{border:0;background:#fff;padding:7px 14px;font:inherit;font-size:.82rem;font-weight:700;color:var(--texto2);cursor:pointer}
.ob-vista button.on{background:var(--teal);color:#fff}
.ob-cont{margin:0;font-size:.8rem;color:var(--mut)}
.ob-mapa{height:460px;border-radius:12px;border:1px solid var(--bd);margin-bottom:18px;z-index:1}
.ob-grade{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.ob-card[hidden]{display:none}
.ob-card-link{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--bd);border-radius:14px;overflow:hidden;text-decoration:none;color:inherit;transition:box-shadow .2s,transform .2s}
.ob-card-link:hover{box-shadow:0 10px 28px rgba(0,0,0,.10);transform:translateY(-2px)}
.ob-card-link:focus-visible{outline:3px solid var(--teal);outline-offset:2px}
.ob-capa{position:relative;height:140px;background:#e9eff1 center/cover no-repeat;display:flex;align-items:center;justify-content:center}
.ob-capa svg{width:64px;height:64px;color:rgba(31,45,58,.35)}
.ob-t-pavimentacao{background-color:#e8ebef}.ob-t-predio{background-color:#e9f0ec}.ob-t-lazer{background-color:#eaf3e4}.ob-t-saneamento{background-color:#e6f0f6}
.ob-sit{position:absolute;left:12px;top:12px;background:var(--c);color:#fff;font-size:.72rem;font-weight:800;padding:4px 10px;border-radius:999px;letter-spacing:.02em}
.ob-atraso{position:absolute;right:12px;top:12px;background:#fff4d6;color:#7a5a00;font-size:.72rem;font-weight:800;padding:4px 10px;border-radius:999px}
.ob-corpo{padding:14px 16px 16px;display:flex;flex-direction:column;gap:8px;flex:1}
.ob-meta{font-size:.74rem;font-weight:700;color:var(--mut);text-transform:uppercase;letter-spacing:.03em}
.ob-corpo h2{margin:0;font-size:1rem;line-height:1.35;color:#1f2d3a}
.ob-local{display:flex;gap:6px;align-items:flex-start;margin:0;font-size:.82rem;color:var(--texto2)}
.ob-local svg{width:15px;height:15px;flex:none;margin-top:2px;color:var(--teal)}
.ob-prog-top{display:flex;justify-content:space-between;font-size:.78rem;color:var(--mut)}
.ob-prog-top b{color:#1f2d3a;font-size:.9rem}
.ob-dados{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:2px 0 0;padding:10px 0 0;border-top:1px solid #eef1f4}
.ob-dados dt{font-size:.7rem;color:var(--mut);text-transform:uppercase;letter-spacing:.03em}
.ob-dados dd{margin:0;font-weight:700;font-size:.86rem;color:#1f2d3a}
.ob-dados small{font-weight:600;color:var(--mut)}
.ob-emp{margin:0;font-size:.78rem;color:var(--mut)}
.ob-mais{margin-top:auto;font-size:.82rem;font-weight:700;color:var(--teal)}
.ob-grade-compacta .ob-capa{height:90px}
/* detalhe */
.obd-topo{display:flex;flex-wrap:wrap;gap:22px;align-items:center;justify-content:space-between;margin:10px 0 16px}
.obd-tit{flex:1 1 480px}
.obd-tit h1{margin:6px 0 10px;font-size:1.7rem;line-height:1.25;text-transform:none}
.obd-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.ob-sit-inline,.ob-atraso-inline{position:static;display:inline-block}
.obd-anel{--p:0;width:150px;height:150px;border-radius:50%;flex:none;display:grid;place-items:center;
  background:conic-gradient(var(--c) calc(var(--p)*1%),#e8edf0 0)}
.obd-anel>div{width:118px;height:118px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}
.obd-anel b{font-size:1.9rem;line-height:1;color:#1f2d3a}
.obd-anel span{font-size:.78rem;color:var(--mut)}
.obd-alerta{background:#fdecea;border-left:4px solid #c0392b;padding:12px 16px;border-radius:0 8px 8px 0;margin-bottom:16px;font-size:.92rem}
.obd-alerta-am{background:#fff6dc;border-color:#e2b500}
.obd-fotos{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-bottom:16px}
.obd-fotos a{position:relative;display:block;border-radius:10px;overflow:hidden;aspect-ratio:4/3;background:#eee}
.obd-fotos img{width:100%;height:100%;object-fit:cover}
.obd-fotos span{position:absolute;left:0;right:0;bottom:0;padding:6px 8px;background:linear-gradient(transparent,rgba(0,0,0,.65));color:#fff;font-size:.75rem}
.obd-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:18px;align-items:start}
.obd-princ,.obd-lado{display:grid;gap:16px}
.obd-caixa{background:#fff;border:1px solid var(--bd);border-radius:12px;padding:18px 20px}
.obd-caixa h2{margin:0 0 12px;font-size:1.02rem;color:#1f2d3a}
.obd-fin{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:6px}
.obd-fin span{display:block;font-size:.74rem;color:var(--mut);text-transform:uppercase;letter-spacing:.03em}
.obd-fin b{font-size:1.05rem;color:#1f2d3a}
.obd-fin-pago b{color:var(--verde-esc)}
.obd-leg{margin:4px 0 0;font-size:.82rem;color:var(--mut)}
.obd-objeto{margin:0;line-height:1.7}
.obd-linha{list-style:none;margin:14px 0 0;padding:0 0 0 22px;border-left:2px solid #e3e8ec;display:grid;gap:16px}
.obd-linha li{position:relative}
.obd-pt{position:absolute;left:-29px;top:3px;width:12px;height:12px;border-radius:50%;background:var(--c);box-shadow:0 0 0 3px #fff}
.obd-li-top{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.obd-li-top time{font-size:.82rem;color:var(--mut)}
.obd-li-num{display:flex;gap:14px;flex-wrap:wrap;font-size:.84rem;color:var(--texto2);margin-top:2px}
.obd-linha p{margin:4px 0 0;font-size:.86rem;color:var(--texto2)}
.obd-arq{display:inline-flex;align-items:center;gap:6px;margin:6px 8px 0 0;font-size:.82rem;font-weight:600;padding:5px 10px;border:1px solid var(--bd);border-radius:8px;text-decoration:none;color:var(--teal);background:#f7faf9}
.obd-arq::before{content:"PDF";font-size:.62rem;font-weight:800;color:#fff;background:#c0392b;border-radius:3px;padding:1px 4px}
.obd-arq:hover{border-color:var(--teal)}
.obd-ficha{margin:0;display:grid;gap:8px}
.obd-ficha div{display:grid;grid-template-columns:42% 1fr;gap:8px;padding-bottom:8px;border-bottom:1px solid #eef1f4}
.obd-ficha div:last-child{border-bottom:0;padding-bottom:0}
.obd-ficha dt{font-size:.8rem;color:var(--mut)}
.obd-ficha dd{margin:0;font-size:.88rem;font-weight:600;color:#1f2d3a}
.obd-mapa{height:220px;border-radius:10px;margin-bottom:10px;z-index:1}
.obd-docs{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.obd-docs small{display:block;color:var(--mut);font-size:.74rem;margin-top:2px}
.obd-caixa p{margin:0 0 6px;font-size:.88rem}
@media(max-width:900px){.obd-grid{grid-template-columns:1fr}}
@media(max-width:640px){.ob-hero{padding:22px 18px}.ob-hero h1{font-size:1.55rem}.ob-barra-ferr{position:static}.ob-vista{margin-left:0}.ob-grade{grid-template-columns:1fr}.obd-tit h1{font-size:1.35rem}.obd-anel{width:120px;height:120px}.obd-anel>div{width:94px;height:94px}.obd-ficha div{grid-template-columns:1fr}}
.ob h2,.ob h1,.ob .ob-corpo h2,.obd-caixa h2{text-transform:none}
.obd-caixa h2{font-size:1.02rem}
/* organograma: unidades dentro de um item do gabinete */
.org-chips .org-chip-sub{display:block;margin-top:4px;font-size:.74rem;color:#5b6670;max-width:260px;line-height:1.35}
/* obra: colunas não passam da tela; nomes de arquivo longos quebram linha */
.obd-princ,.obd-lado{grid-template-columns:minmax(0,1fr);min-width:0}
.obd-caixa{min-width:0;overflow-wrap:anywhere}
.obd-arq{max-width:100%;align-items:flex-start;line-height:1.35;overflow-wrap:anywhere;word-break:break-word}
.obd-arq::before{content:attr(data-ext);flex:none;margin-top:1px}
.obd-arq-xls::before{background:#1e7a45}.obd-arq-doc::before{background:#2b5797}.obd-arq-jpg::before,.obd-arq-png::before{background:#7a5a00}.obd-arq-arq::before,.obd-arq-zip::before{background:#5b6670}
.obd-docs li{min-width:0}
.obd-ficha dd{overflow-wrap:anywhere}
.obd-caixa-mapa .leaflet-container{max-width:100%}
/* rodapé: ícone e texto do contato sempre na mesma linha */
.foot-grid{grid-template-columns:1.15fr .9fr 1.1fr 1.35fr 1fr}
.ft-contato p,.ft-ico{display:flex;align-items:baseline;gap:8px}
.ft-contato p i,.ft-ico i{flex:none;width:16px;text-align:center}
.ft-contato a{overflow-wrap:anywhere;white-space:nowrap}
@media(max-width:1200px){.ft-contato a{white-space:normal}}
@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.foot-grid{grid-template-columns:1fr}}
.card .body{overflow-wrap:anywhere}
/* ---------- Transparência da Saúde ---------- */
.sd-hero{background:linear-gradient(135deg,#0f6b7a,#178a7c 60%,#2f9e5b)}
.sd-abas{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 14px;border-bottom:2px solid #e3e8ec}
.sd-abas button,.sd-abas a{border:0;background:none;padding:10px 16px;font:inherit;font-weight:700;color:var(--texto2);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;text-decoration:none;display:flex;gap:8px;align-items:center}
.sd-abas button span{background:#e8eef2;border-radius:999px;padding:1px 8px;font-size:.74rem}
.sd-abas button[aria-selected=true]{color:var(--cor1);border-color:var(--cor1)}
.sd-abas button[aria-selected=true] span{background:var(--cor1);color:#fff}
.sd-abas a{margin-left:auto;font-weight:600;font-size:.9rem}
.sd-ferr{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.sd-ferr .ob-busca{flex:1 1 280px}
.sd-ferr select{padding:9px 10px;border:1px solid var(--bd);border-radius:8px;font:inherit;background:#fff;max-width:280px;min-width:0;text-overflow:ellipsis}
.sd-cont{font-size:.85rem;color:var(--mut);margin-left:auto}
.sd-un{font-size:1rem;text-transform:none;margin:22px 0 10px;color:#1f2d3a;display:flex;gap:8px;align-items:center}
.sd-un span{font-size:.72rem;background:#e8eef2;border-radius:999px;padding:1px 8px;color:var(--texto2)}
.sd-lista{display:grid;gap:10px}
.sd-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:center;background:#fff;border:1px solid var(--bd);border-radius:12px;padding:12px 16px}
.sd-card[hidden],.sd-un[hidden]{display:none}
.sd-av{width:44px;height:44px;border-radius:50%;background:#e2f0ee;color:#0f6b7a;display:grid;place-items:center;font-weight:800;font-size:1.1rem}
.sd-info h3{margin:0;font-size:.98rem;text-transform:none;color:#1f2d3a}
.sd-esp{margin:2px 0 0;font-size:.86rem;color:var(--texto2)}.sd-esp small{color:var(--mut);font-size:.72rem;margin-left:4px}
.sd-turnos{margin:6px 0 0;display:flex;flex-wrap:wrap;gap:5px}.sd-turnos span{font-size:.7rem;background:#f1f4f6;border-radius:999px;padding:2px 8px;color:#4a5560}
.sd-vagas{text-align:center;min-width:80px}.sd-vagas b{display:block;font-size:1.3rem;color:#0f6b7a;line-height:1.1}.sd-vagas span{font-size:.7rem;color:var(--mut)}
.sd-ver{border:1px solid #0f6b7a;color:#0f6b7a;background:#fff;border-radius:8px;padding:7px 12px;font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}
.sd-ver[aria-expanded=true],.sd-ver:hover{background:#0f6b7a;color:#fff}
.sd-dias{grid-column:1/-1;border-top:1px dashed #dde3e8;padding-top:10px}
.sd-carregando{margin:0;font-size:.86rem;color:var(--mut)}
.sd-cal{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}
.sd-cal li{display:flex;gap:10px;align-items:flex-start;background:#f6faf9;border:1px solid #e1ece9;border-radius:8px;padding:8px 10px}
.sd-dia{display:flex;flex-direction:column;align-items:center;min-width:44px;font-size:.7rem;color:var(--mut);text-transform:uppercase}.sd-dia b{font-size:.95rem;color:#1f2d3a}
.sd-dia-t{display:flex;flex-direction:column;gap:2px;font-size:.8rem}.sd-dia-t em{font-style:normal}
.sd-intro{color:var(--texto2);font-size:.92rem;margin:0 0 14px}
.sd-fila{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}
.sd-fila-it{background:#fff;border:1px solid var(--bd);border-radius:12px;padding:16px 18px}
.sd-fila-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.sd-fila-top h3{margin:0;font-size:.98rem;text-transform:none;color:#1f2d3a}.sd-fila-top h3 small{display:block;color:var(--mut);font-size:.72rem;font-weight:500}
.sd-fila-top b{font-size:1.5rem;color:#b5470b;white-space:nowrap;line-height:1}.sd-fila-top b span{font-size:.72rem;color:var(--mut);font-weight:600}
.sd-fila-barra{height:8px;background:#f1ece6;border-radius:6px;margin:10px 0 12px;overflow:hidden}.sd-fila-barra i{display:block;height:100%;background:linear-gradient(90deg,#e8a33d,#c25b14);border-radius:6px}
.sd-fila-num{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 14px}
.sd-fila-num dt{font-size:.72rem;color:var(--mut);text-transform:uppercase;letter-spacing:.02em}.sd-fila-num dd{margin:0;font-weight:700;font-size:.9rem;color:#1f2d3a}.sd-fila-num dd small{font-weight:500;color:var(--mut)}
@media(max-width:700px){.sd-card{grid-template-columns:40px minmax(0,1fr)}.sd-ver{grid-column:1/-1}.sd-abas a{margin-left:0}.sd-fila{grid-template-columns:1fr}.sd-ferr select{max-width:none;width:100%;flex:1 1 100%}}
/* ---------- Portal da Transparência (resumo) ---------- */
.tp-hero{background:linear-gradient(135deg,#1f3b57,#245b6e 55%,#2c7a5e)}
.tp-ano{display:flex;flex-direction:column;gap:4px;background:rgba(255,255,255,.12);border-radius:12px;padding:12px 16px;color:#fff}
.tp-ano label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;opacity:.85}
.tp-ano select{font:inherit;font-size:1.3rem;font-weight:800;padding:4px 10px;border-radius:8px;border:0;color:#1f2d3a}
.tp-indice{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px}
.tp-indice a{font-size:.85rem;font-weight:600;text-decoration:none;padding:6px 12px;border-radius:999px;background:#eef3f6;color:#245b6e}
.tp-indice a:hover{background:#245b6e;color:#fff}
.tp-bloco{margin:28px 0 8px;scroll-margin-top:90px}
.tp-bloco>h2{font-size:1.3rem;text-transform:none;margin:0 0 12px;color:#1f2d3a}
.tp-sub{margin:-4px 0 12px;color:var(--texto2);font-size:.9rem}
.tp-duas{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:16px;align-items:start}
.tp-caixa{background:#fff;border:1px solid var(--bd);border-radius:12px;padding:18px 20px;min-width:0}
.tp-caixa h3{margin:0 0 14px;font-size:1rem;text-transform:none;color:#1f2d3a}
.tp-colunas{display:grid;grid-template-columns:repeat(12,1fr);gap:6px;align-items:end;height:220px;padding-top:18px}
.tp-col{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;position:relative}
.tp-col i{display:block;width:100%;max-width:34px;background:#2c7a5e;border-radius:4px 4px 0 0}
.tp-col.parcial i{background:repeating-linear-gradient(45deg,#2c7a5e 0 4px,#6fae94 4px 8px)}
.tp-col.futuro i{background:#e6ebe9}
.tp-col-v{font-size:.62rem;color:var(--texto2);margin-bottom:3px;white-space:nowrap;font-weight:600}
.tp-col-m{font-size:.72rem;color:var(--mut);margin-top:5px;text-transform:uppercase}
.tp-barras{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.tp-bar-top{display:flex;justify-content:space-between;gap:10px;font-size:.88rem}
.tp-bar-top span{color:#1f2d3a}.tp-bar-top b{white-space:nowrap;color:#1f2d3a}.tp-bar-top em{font-style:normal;font-weight:500;color:var(--mut);font-size:.78rem;margin-left:4px}
.tp-bar{position:relative;height:10px;background:#f1f4f6;border-radius:6px;margin:5px 0 3px;overflow:hidden}
.tp-bar i{position:absolute;left:0;top:0;bottom:0;border-radius:6px}
.tp-bar i.prev{background:#c9dcd5}.tp-bar i.real{background:#2c7a5e}
.tp-barras small{font-size:.74rem;color:var(--mut)}
.tp-legenda{font-size:.76rem;color:var(--mut);margin:10px 0 0;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.tp-legenda i{display:inline-block;width:12px;height:8px;border-radius:3px;margin-left:8px}.tp-legenda i.real{background:#2c7a5e}.tp-legenda i.prev{background:#c9dcd5}
.tp-nota{font-size:.8rem;color:var(--mut);margin:8px 0 0}
.tp-abas{display:flex;gap:8px;margin:0 0 12px}
.tp-abas button{border:1px solid var(--bd);background:#fff;border-radius:999px;padding:7px 14px;font:inherit;font-size:.86rem;font-weight:700;cursor:pointer;color:var(--texto2)}
.tp-abas button[aria-selected=true]{background:#245b6e;border-color:#245b6e;color:#fff}
.tp-desp{background:#fff;border:1px solid var(--bd);border-radius:12px;padding:18px 20px}
.tp-desp[hidden],.tp-desp li[hidden]{display:none}
.tp-mais{margin:10px 0 0;display:flex;flex-wrap:wrap;gap:14px;font-size:.88rem}
.tp-tbl td small{display:block;color:var(--mut);font-size:.74rem}
.tp-tbl .num{text-align:right;white-space:nowrap;font-weight:700}
.tp-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.tp-chips span{background:#fff;border:1px solid var(--bd);border-radius:999px;padding:5px 12px;font-size:.84rem;color:var(--texto2)}
.tp-chips span b{color:#1f2d3a}.tp-chips span.alerta{border-color:#e2b500;background:#fff8e1}
.tp-lista{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.tp-lista li{border-bottom:1px solid #f0f3f5;padding-bottom:9px}.tp-lista li:last-child{border:0;padding:0}
.tp-lista a{text-decoration:none;color:var(--texto2);font-size:.88rem;line-height:1.45}.tp-lista a b{color:#1f2d3a}.tp-lista a:hover{color:var(--cor1)}
.tp-lista small{display:block;font-size:.76rem;color:var(--mut);margin-top:3px}
.tp-links{list-style:none;margin:0;padding:0;display:grid;gap:8px}.tp-links a{font-weight:600;font-size:.9rem}
.tp-busca{width:100%;max-width:520px;padding:10px 14px;border:1px solid var(--bd);border-radius:8px;font:inherit;margin:0 0 14px}
.tp-menu{columns:4 230px;column-gap:20px}
.tp-menu-g{break-inside:avoid;margin:0 0 16px}.tp-menu-g[hidden],.tp-menu-g li[hidden]{display:none}
.tp-menu-g h3{font-size:.86rem;text-transform:uppercase;letter-spacing:.02em;color:#245b6e;margin:0 0 6px;padding-bottom:5px;border-bottom:2px solid #e3ecef}
.tp-menu-g ul{list-style:none;margin:0;padding:0;display:grid;gap:5px}.tp-menu-g a{font-size:.84rem;color:var(--texto2);text-decoration:none}.tp-menu-g a:hover{color:var(--cor1);text-decoration:underline}
@media(max-width:640px){.tp-colunas{gap:3px;height:180px}.tp-col-v{display:none}.tp-ano{flex-direction:row;align-items:center}}
/* Transparência da Saúde: Documentos e Dengue */
.sd-temas{display:flex;flex-wrap:wrap;gap:6px}
.sd-temas button{border:1px solid var(--bd);background:#fff;border-radius:999px;padding:6px 12px;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;color:var(--texto2)}
.sd-temas button.on{background:#0f6b7a;border-color:#0f6b7a;color:#fff}
.sd-tema[hidden],.sd-doc-sec[hidden],.sd-docs li[hidden],.sd-doc-g[hidden]{display:none}
.sd-doc-sec{background:#fff;border:1px solid var(--bd);border-radius:12px;margin:0 0 10px;padding:0 18px}
.sd-doc-sec summary{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:14px 0;cursor:pointer;font-weight:700;color:#1f2d3a;list-style:none}
.sd-doc-sec summary::-webkit-details-marker{display:none}
.sd-doc-sec summary::after{content:"+";font-size:1.3rem;color:#0f6b7a;margin-left:6px}.sd-doc-sec[open] summary::after{content:"–"}
.sd-doc-sec summary em{font-style:normal;font-weight:500;font-size:.8rem;color:var(--mut);margin-left:auto}
.sd-doc-sec[open]{padding-bottom:14px}
.sd-doc-desc{font-size:.88rem;color:var(--texto2);margin:0 0 10px}
.sd-doc-g{font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;color:#0f6b7a;margin:12px 0 6px}
.sd-docs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:6px 14px}
.sd-docs li{display:flex;align-items:center;gap:8px;border-bottom:1px solid #f0f3f5;padding:6px 0;min-width:0}
.sd-docs a{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--texto2);font-size:.86rem;min-width:0;flex:1}
.sd-docs a span{overflow-wrap:anywhere}.sd-docs a:hover span{color:var(--cor1);text-decoration:underline}
.sd-docs small{font-size:.72rem;color:var(--mut);white-space:nowrap}
.sd-ext{font-style:normal;font-size:.6rem;font-weight:800;color:#fff;border-radius:3px;padding:2px 4px;flex:none;background:#5b6670}
.sd-ext-pdf{background:#c0392b}.sd-ext-img{background:#7a5a00}.sd-ext-doc{background:#2b5797}.sd-ext-xls{background:#1e7a45}.sd-ext-ppt{background:#b7472a}
.sd-dg-topo{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;justify-content:space-between;margin:4px 0 14px}
.sd-dg-topo h2{margin:0;font-size:1.2rem;text-transform:none;color:#1f2d3a}
.sd-dg-topo>div{flex:1 1 420px}
.sd-dg-nivel{border:2px solid var(--c);color:var(--c);border-radius:12px;padding:10px 14px;font-weight:800;text-align:center;background:#fff}
.sd-dg-nivel small{display:block;font-weight:500;font-size:.74rem;color:var(--texto2)}
.sd-dg-pr{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.sd-dg-pr li{display:grid;grid-template-columns:1fr auto;gap:2px 10px;border-bottom:1px solid #f0f3f5;padding-bottom:6px}
.sd-dg-pr span{font-size:.86rem;color:var(--texto2)}.sd-dg-pr b{color:#1f2d3a}.sd-dg-pr small{grid-column:1/-1;font-size:.72rem;color:var(--mut)}
.sd-dg-nossa .tp-bar-top span,.sd-dg-nossa .tp-bar-top b{color:#c25b14;font-weight:800}
.sd-dg-dicas ul{margin:6px 0 10px;padding-left:18px;font-size:.88rem;line-height:1.6}.sd-dg-dicas p{font-size:.88rem;margin:0 0 6px}

/* ===== Portal da Saúde (saude.php) ===== */
.sp-hero{align-items:center}
.sp-urg{display:flex;gap:10px;flex-wrap:wrap}
.sp-urg a{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:132px;background:#fff;color:#1f2d3a;border-radius:14px;padding:12px 16px;text-decoration:none;text-align:center;box-shadow:0 6px 18px rgba(0,0,0,.12)}
.sp-urg a:first-child{background:#c0392b;color:#fff}
.sp-urg b{font-size:1.9rem;line-height:1.05}.sp-urg span{font-size:.74rem;font-weight:700;line-height:1.3}
.sp-dia-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#fff;border:1px solid var(--bd);border-radius:12px;padding:10px 14px;margin-bottom:6px}
.sp-dia-tit{display:flex;flex-direction:column;min-width:130px}.sp-dia-tit b{font-size:1.15rem;color:#1f2d3a}.sp-dia-tit span{font-size:.8rem;color:var(--mut)}
.sp-dia-nav{width:36px;height:36px;border-radius:50%;border:1px solid var(--bd);background:#fff;font-size:1.3rem;line-height:1;cursor:pointer;color:#0f6b7a}
.sp-dia-nav:hover{background:#eef6f5}
.sp-dia-bar input[type=date]{margin-left:auto;border:1px solid var(--bd);border-radius:8px;padding:7px 10px;font:inherit;font-size:.85rem}
.sp-turnos{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:12px}
.sp-turno{background:#fff;border:1px solid var(--bd);border-radius:12px;padding:12px 14px;min-width:0}
.sp-turno.agora{border-color:#2f9e5b;box-shadow:0 0 0 2px rgba(47,158,91,.18)}
.sp-turno-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.sp-turno-top b{color:#1f2d3a;font-size:.92rem}
.sp-turno-top em{font-style:normal;background:#2f9e5b;color:#fff;border-radius:999px;padding:1px 9px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.sp-turno small{color:var(--mut);font-size:.78rem}
.sp-turno ul{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:4px}
.sp-turno li{font-size:.88rem;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.sp-turno li span{font-size:.72rem;color:var(--mut)}
.sp-pdfs{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;font-size:.88rem;margin-top:16px}.sp-pdfs a{display:inline-flex;gap:6px;align-items:center;text-decoration:none}
.sp-sub{color:var(--mut);font-size:.84rem;margin:0 0 10px;line-height:1.5}
.sp-terr{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:16px;align-items:start}
.sp-terr-un h3{margin-bottom:4px}
.sp-mini{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px}.sp-mini div{background:#f2f7f6;border-radius:10px;padding:6px 10px;min-width:0;flex:1 1 90px}
.sp-mini b{display:block;font-size:1.1rem;color:#0f6b7a}.sp-mini span{font-size:.72rem;color:var(--texto2);line-height:1.25;display:block}
.sp-ma{border-top:1px solid #edf1f3}
.sp-ma summary{display:flex;justify-content:space-between;gap:8px;padding:9px 0;cursor:pointer;font-weight:600;font-size:.88rem;color:#1f2d3a;list-style:none}
.sp-ma summary::-webkit-details-marker{display:none}.sp-ma summary::after{content:"+";color:#0f6b7a;font-weight:700}.sp-ma[open] summary::after{content:"–"}
.sp-ma summary em{font-style:normal;font-weight:500;color:var(--mut);font-size:.78rem;margin-left:auto}
.sp-ma ul{margin:0 0 10px;padding-left:18px;font-size:.84rem;columns:2 220px;column-gap:20px}.sp-ma li{break-inside:avoid;margin-bottom:2px}
.sp-ma li.sp-ma-sub{list-style:none;margin-left:-18px;font-weight:700;color:#0f6b7a;margin-top:6px}
.sp-ma ul.sp-faixas{columns:auto;padding:0;margin-bottom:12px}
.sp-res{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:12px;margin-bottom:10px}
.sp-res-it{background:#f2faf5;border:2px solid #2f9e5b;border-radius:14px;padding:14px 16px}
.sp-res-rot{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#2f7a4a}
.sp-res-it h3{margin:2px 0 4px;font-size:1.15rem;color:#1f2d3a;text-transform:none}
.sp-res-it ul{margin:0 0 8px;padding-left:18px;font-size:.86rem}.sp-ver-terr{font-size:.84rem;font-weight:700}
.sp-locais{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.sp-locais span{background:#eef3f6;border-radius:999px;padding:4px 12px;font-size:.8rem;color:var(--texto2)}
.sp-rem-wrap{max-height:none}
.sp-rem{width:100%;border-collapse:collapse;font-size:.88rem}
.sp-rem th{position:sticky;top:0;background:#f6f8f9;text-align:left;padding:10px 12px;font-size:.78rem;border-bottom:1px solid var(--bd)}
.sp-rem td{padding:9px 12px;border-bottom:1px solid #edf1f3;vertical-align:top}
.sp-rem td:first-child{color:#1f2d3a;font-weight:600}
.sp-tags{display:inline-flex;gap:4px;flex-wrap:wrap;margin-left:6px;vertical-align:middle}
.sp-tags i{font-style:normal;font-size:.66rem;font-weight:700;border-radius:999px;padding:1px 7px;background:#e8eef2;color:#3b4a55;text-transform:uppercase;letter-spacing:.02em}
.sp-tags i.c{background:#fdebd3;color:#8a4b00}.sp-tags i.a{background:#e3ecfb;color:#24508f}
.sp-q{white-space:nowrap;font-weight:700}.sp-q.ok{color:#2c7a3f}.sp-q.no{color:#b23a26}.sp-q.nd{color:#9aa6ae;font-weight:400}.sp-q small{font-weight:500;color:var(--mut);margin-left:4px}
.sp-dicas ul{margin:0;padding-left:18px;font-size:.88rem;display:grid;gap:6px}
.sp-tipos{margin-bottom:14px}
.sp-uns{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:16px;align-items:start}
.sp-un{background:#fff;border:1px solid var(--bd);border-radius:14px;padding:16px 18px;min-width:0}
.sp-un img{width:calc(100% + 36px);margin:-16px -18px 12px;border-radius:14px 14px 0 0;aspect-ratio:16/7;object-fit:cover;display:block;max-width:none}
.sp-un-tipo{display:inline-block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#0f6b7a;background:#e6f3f1;border-radius:999px;padding:2px 9px}
.sp-un h3{margin:8px 0 2px;font-size:1.05rem;color:#1f2d3a;text-transform:none}
.sp-dados{list-style:none;margin:6px 0 8px;padding:0;display:grid;gap:7px;font-size:.86rem}
.sp-dados li{display:grid;grid-template-columns:104px minmax(0,1fr);gap:8px}.sp-dados b{color:var(--mut);font-weight:600;font-size:.78rem;padding-top:1px}
.sp-dados span{overflow-wrap:anywhere}
.sp-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px}.sp-chips span{background:#eef6ef;color:#2c6b21;border-radius:999px;padding:2px 10px;font-size:.76rem;font-weight:600}
.sp-un .sp-ma ul{columns:1}
.sp-serv-l{margin:0 0 6px;padding-left:20px;columns:2 300px;column-gap:28px;font-size:.88rem}
.sp-serv-l li{break-inside:avoid;margin-bottom:4px}
.sp-serv-l li.sp-serv-sub{list-style:none;margin-left:-20px;font-weight:700;color:#0f6b7a;margin-top:6px}
@media(max-width:720px){
  .sp-urg{width:100%}.sp-urg a{flex:1 1 120px;min-width:0}
  .sp-dia-bar input[type=date]{margin-left:0;width:100%}
  .sp-rem thead{display:none}
  .sp-rem,.sp-rem tbody,.sp-rem tr,.sp-rem td{display:block;width:100%}
  .sp-rem tr{border-bottom:1px solid var(--bd);padding:8px 0}
  .sp-rem tr[hidden]{display:none}
  .sp-rem td{border:0;padding:3px 12px}
  .sp-rem td.sp-q{display:flex;justify-content:space-between;gap:10px;font-size:.84rem}
  .sp-rem td.sp-q::before{content:attr(data-rot);font-weight:500;color:var(--mut);white-space:normal}
  .sp-dados li{grid-template-columns:1fr;gap:0}
}
@media(max-width:720px){.sp .sd-abas{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.sp .sd-abas::-webkit-scrollbar{display:none}.sp .sd-abas button,.sp .sd-abas a{white-space:nowrap;flex:none;padding:10px 12px}}
.sp-esc-pdfs{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:12px}
.sp-esc-mes{background:#fff;border:1px solid var(--bd);border-radius:12px;padding:12px 14px;display:grid;gap:8px;align-content:start}
.sp-esc-mes>b{color:#1f2d3a;font-size:.92rem}
.sp-esc-mes a{display:flex;gap:8px;align-items:flex-start;text-decoration:none;font-size:.86rem}
.sp-esc-mes a span{display:flex;flex-direction:column}.sp-esc-mes a small{color:var(--mut);font-size:.74rem}
/* Calendário da escala (saude.php › Plantão e escalas) */
.sp-cal-box{margin-top:28px;background:#fff;border:1px solid var(--bd);border-radius:16px;padding:20px 22px;box-shadow:0 8px 24px rgba(15,107,122,.06)}
.sp-cal-cab{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;align-items:flex-end;margin-bottom:14px}
.sp-cal-rot{font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#0f6b7a}
.sp-cal-cab h2{margin:2px 0 2px;font-size:1.6rem;color:#1f2d3a;text-transform:none;border:0;padding:0}.sp-cal-cab h2::after{display:none}
.sp-cal-sub{margin:0;color:var(--mut);font-size:.88rem}
.sp-cal-ferr{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.sp-cal-campo{display:flex;flex-direction:column;gap:3px;font-size:.72rem;font-weight:700;color:var(--mut);text-transform:uppercase;letter-spacing:.04em;min-width:0}
.sp-cal-campo select{font:inherit;font-size:.86rem;text-transform:none;letter-spacing:0;color:var(--texto1);font-weight:500;border:1px solid var(--bd);border-radius:10px;padding:8px 10px;background:#f7f9fa;max-width:340px}
.sp-cal-pdf{display:inline-flex;gap:6px;align-items:center;border:1px solid var(--bd);border-radius:10px;padding:8px 12px;font-size:.84rem;font-weight:600;text-decoration:none;color:#1f2d3a;background:#fff}
.sp-cal-pdf:hover{border-color:#0f6b7a}
.sp-cal-grupos{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px;padding:4px;background:#eef3f5;border-radius:12px;width:max-content;max-width:100%}
.sp-cal-grupos button{border:0;background:transparent;border-radius:9px;padding:8px 16px;font:inherit;font-weight:700;font-size:.86rem;color:var(--texto2);cursor:pointer}
.sp-cal-grupos button.on{background:#fff;color:#0f6b7a;box-shadow:0 1px 4px rgba(0,0,0,.1)}
.sp-cal-leg{display:flex;flex-wrap:wrap;gap:14px;font-size:.78rem;color:var(--mut);margin:4px 0 10px}
.sp-cal-leg span{display:inline-flex;align-items:center;gap:6px}.sp-cal-leg span::before{content:"";width:12px;height:12px;border-radius:4px;background:var(--c)}
.sp-cal-leg .manha{--c:#f2b705}.sp-cal-leg .tarde{--c:#e8762c}.sp-cal-leg .noite{--c:#3b4ba8}.sp-cal-leg .sp-cal-leg-hoje{--c:transparent}.sp-cal-leg .sp-cal-leg-hoje::before{border:2px solid #2f9e5b}
.sp-cal-resumo{background:#eef7f1;border-radius:10px;padding:8px 12px;font-size:.88rem;margin:0 0 10px}
.sp-cal-sem,.sp-cal-grade{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.sp-cal-sem span{text-align:center;font-size:.72rem;font-weight:700;color:var(--mut);text-transform:uppercase;letter-spacing:.05em;padding:4px 0}
.sp-cal-dia{background:#fbfcfc;border:1px solid #e6ecef;border-radius:10px;padding:6px 7px 7px;min-height:118px;display:flex;flex-direction:column;gap:4px;min-width:0;transition:opacity .15s}
.sp-cal-dia.vazio{background:transparent;border:0}
.sp-cal-dia.fds{background:#f6f8fb}
.sp-cal-dia.hoje{border:2px solid #2f9e5b;background:#f3fbf5}
.sp-cal-dia.apagado{opacity:.32}
.sp-cal-dia.marcado{box-shadow:0 0 0 2px #0f6b7a inset}
.sp-cal-n{display:flex;align-items:baseline;gap:5px}.sp-cal-n b{font-size:1rem;color:#1f2d3a}.sp-cal-n span{display:none;font-size:.72rem;color:var(--mut)}
.sp-cal-n em{margin-left:auto;font-style:normal;font-size:.6rem;font-weight:700;text-transform:uppercase;background:#2f9e5b;color:#fff;border-radius:999px;padding:1px 6px}
.sp-cal-t{border-left:3px solid var(--c);background:var(--bg);border-radius:6px;padding:2px 6px;display:flex;flex-wrap:wrap;gap:0 6px;align-items:baseline;line-height:1.3}
.sp-cal-t small{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--c2);width:100%}
.sp-cal-t span{font-size:.78rem;color:#1f2d3a;font-weight:600;overflow-wrap:anywhere}
.sp-cal-t span.eu{background:#0f6b7a;color:#fff;border-radius:4px;padding:0 4px}
.sp-cal-t.manha{--c:#f2b705;--bg:#fff8df;--c2:#8a6500}.sp-cal-t.tarde{--c:#e8762c;--bg:#fff0e6;--c2:#9a4510}
.sp-cal-t.noite{--c:#3b4ba8;--bg:#eceffd;--c2:#2c3a8c}.sp-cal-t.outro{--c:#0f6b7a;--bg:#e8f4f3;--c2:#0f6b7a}
.sp-cal-ts{display:flex;flex-direction:column;gap:4px;flex:1}
.sp-cal-sem-t{color:#c3ccd2;font-size:.8rem;margin:auto;text-align:center}
@media(max-width:820px){
  .sp-cal-box{padding:16px 14px}
  .sp-cal-sem{display:none}
  .sp-cal-grade{grid-template-columns:1fr;gap:8px}
  .sp-cal-dia.vazio{display:none}
  .sp-cal-dia{min-height:0;display:grid;grid-template-columns:54px minmax(0,1fr);gap:4px 10px;align-items:start;padding:8px 10px}
  .sp-cal-n{flex-direction:column;align-items:center;gap:0;border-right:1px solid #e6ecef;padding-right:8px}
  .sp-cal-n b{font-size:1.25rem}.sp-cal-n span{display:block}.sp-cal-n em{margin:2px 0 0}
  .sp-cal-sem-t{margin:0}
  .sp-cal-ferr,.sp-cal-campo,.sp-cal-campo select{width:100%;max-width:none}
  .sp-cal-grupos{width:100%}.sp-cal-grupos button{flex:1}
  .sp-cal-dia.apagado{display:none}
}
/* Páginas importadas do site antigo: lista de arquivos */
.content ul[data-arquivos]{list-style:none;padding:0;margin:10px 0 18px;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:8px}
.content ul[data-arquivos] li{margin:0}
.content ul[data-arquivos] a{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--bd);border-radius:10px;background:#fff;text-decoration:none;color:#1f2d3a;font-weight:600;font-size:.88rem;line-height:1.35;height:100%}
.content ul[data-arquivos] a::before{content:"PDF";flex:none;font-size:.62rem;font-weight:800;color:#fff;background:#c0392b;border-radius:5px;padding:3px 5px;letter-spacing:.03em}
.content ul[data-arquivos] a[href$=".jpg"]::before,.content ul[data-arquivos] a[href$=".jpeg"]::before,.content ul[data-arquivos] a[href$=".png"]::before{content:"IMG";background:#2c7a5e}
.content ul[data-arquivos] a[href$=".doc"]::before,.content ul[data-arquivos] a[href$=".docx"]::before,.content ul[data-arquivos] a[href$=".odt"]::before{content:"DOC";background:#2c5ea3}
.content ul[data-arquivos] a[href$=".xls"]::before,.content ul[data-arquivos] a[href$=".xlsx"]::before,.content ul[data-arquivos] a[href$=".ods"]::before{content:"XLS";background:#2c7a3f}
.content ul[data-arquivos] a:hover{border-color:var(--teal);background:#f4faf9}
.content img{height:auto}
.pagina-col.com-menu{grid-template-columns:minmax(0,1fr) minmax(220px,280px)}
.pagina-col .article{min-width:0}
.pagina-col .content{overflow-wrap:anywhere}
.pagina-col .content table{display:block;max-width:100%;overflow-x:auto}
@media(max-width:800px){.pagina-col.com-menu{grid-template-columns:minmax(0,1fr)}}
/* Dengue: números do município */
.sd-dg-pilha{display:flex;height:22px;border-radius:7px;overflow:hidden;background:#f1f4f6;margin:6px 0 12px}
.sd-dg-pilha i{display:block;height:100%;min-width:3px}
.sd-dg-leg{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.sd-dg-leg li{display:grid;grid-template-columns:12px 1fr auto 42px;gap:8px;align-items:center;font-size:.86rem}
.sd-dg-leg li i{width:12px;height:12px;border-radius:3px}
.sd-dg-leg li b{color:#1f2d3a}.sd-dg-leg li small{color:var(--mut);text-align:right}
.sd-dg-leg-l{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:10px}
.sd-dg-leg-l li{display:flex;gap:6px;font-size:.78rem;color:var(--texto2)}
.tp-col i.sd-dg-barra{position:relative;background:#f3d6c0;overflow:hidden}
.tp-col i.sd-dg-barra em,.tp-col i.sd-dg-barra b{position:absolute;left:0;right:0;bottom:0;display:block}
.tp-col i.sd-dg-barra em{background:#e08e0b}.tp-col i.sd-dg-barra b{background:#c0392b}
.form input[type=checkbox],.form input[type=radio]{width:auto;padding:0}
