/* Cabeçalho, rodapé e bolha de WhatsApp: mesmas regras das páginas de apresentação do hub (diario-oficial, revista, turismo-municipal).
   Extraídas de site.css, fidelity.css e diario.css sem mudar declarações; só as variáveis de cor ficam escopadas
   nestes elementos para não colidir com os tokens da Ata Viva. */
@font-face{font-family:Plex;src:url('fonts/plex-sans-regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Plex;src:url('fonts/plex-sans-semibold.woff2') format('woff2');font-weight:600 900;font-display:swap}
:root{--u:calc(clamp(17px,1.2vw + 12.5px,21px)/16)}
.skip,.header,.site-footer,.wa-bubble{--paper:#fdfdf9;--surface:#fff;--ink:#02092f;--muted:#11549a;--soft:#e3f3e9;--accent:#006c70;--accent-end:#007d80;--line:#c8d9d9;--focus:#006c70;--grid:rgba(35,70,65,.035)}
:root[data-theme=dark] .skip,:root[data-theme=dark] .header,:root[data-theme=dark] .site-footer,:root[data-theme=dark] .wa-bubble{--paper:#112522;--surface:#1b3430;--ink:#edf5ef;--muted:#bed1c8;--soft:#203f37;--accent:#83ddc9;--accent-end:#a7ebdc;--line:#46625b;--focus:#a7ebdc;--grid:rgba(199,224,210,.035)}
.header,.skip,.site-footer{font-family:Plex,Arial,sans-serif;font-size:clamp(17px,1.3vw,32px);line-height:1.5}
.header{color:var(--ink)}
/* de site.css */
@font-face{font-family:Plex;src:url('fonts/plex-sans-regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Plex;src:url('fonts/plex-sans-semibold.woff2') format('woff2');font-weight:600 900;font-display:swap}
@font-face{font-family:Mono;src:url('fonts/plex-mono-regular.woff2') format('woff2');font-weight:400;font-display:swap}
.skip{position:absolute;top:8px;left:10%;z-index:10;background:var(--ink);color:var(--paper);padding:12px;transform:translateY(-180%)}
.skip:focus{transform:none}
.header{display:flex;align-items:center;gap:30px;min-height:110px}
.brand{flex:0 0 auto;width:202px}
.brand img{width:100%;height:auto}
.brand .dark-logo{display:none}
[data-theme=dark] .brand .light-logo{display:none}
[data-theme=dark] .brand .dark-logo{display:block}
.nav{display:flex;align-items:center;justify-content:flex-end;gap:29px;margin-left:auto}
.nav a{text-decoration:none;font-size:.83em}
.nav a:hover{text-decoration:underline}
.theme-toggle{border:0;border-left:1px solid var(--line);background:none;padding:10px 0 10px 22px;font-size:.77em;min-width:70px;min-height:44px}
.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:9px 13px;min-height:44px}
@media(min-width:1800px){.header{min-height:130px}.brand{width:240px}}
@media(max-width:1100px){.nav{gap:17px}.header{gap:20px}.brand{width:170px}}
@media(max-width:899px){.header{min-height:88px;flex-wrap:wrap;gap:15px;padding-block:16px}.brand{width:178px;margin-right:auto}.menu-toggle{display:block}.theme-toggle{padding-left:12px;min-width:62px}.nav{order:4;width:100%;flex-wrap:wrap;justify-content:flex-start;margin-left:0;padding:15px 0}.has-js .nav:not(.open){display:none}}
@media(max-width:560px){.header{gap:10px}.brand{width:154px}.menu-toggle{font-size:14px;padding:8px 11px}.theme-toggle{font-size:13px;min-width:48px;padding-left:10px}}
/* de fidelity.css */
.school-home .header{height:6.6vw;min-height:76px;max-height:106px;gap:4vw}
.school-home .brand{width:19.5vw;max-width:310px}
.school-home .nav{margin-left:2.8vw;margin-right:auto;gap:3vw}
.school-home .nav a{font-size:14px}
.school-home .theme-toggle{padding-left:55px;min-width:140px;background:url('icons/sun.svg') 20px center/30px no-repeat;font-size:17px}
@media(max-width:1100px) and (min-width:900px){.school-home .nav{gap:2vw;margin-left:0}}
@media(max-width:899px){.school-home .header{height:auto;max-height:none;gap:14px;min-height:82px}.school-home .brand{width:185px}.school-home .nav{margin:0;gap:24px}.school-home .theme-toggle{background:none;padding-left:12px;min-width:50px;font-size:14px}}
@media(max-width:560px){.school-home .header{gap:10px}.school-home .brand{width:154px}}
/* de diario.css */
[data-theme=dark] .diario .theme-toggle{background-image:none}
footer.site-footer .si{display:block;flex-shrink:0}
footer.site-footer{background:#071a3d;color:#fff;border:0;border-top:1px solid rgba(255,255,255,.12);display:block;padding:0;text-align:left;margin:0;width:auto;max-width:none;grid-template-columns:none;gap:0;align-items:normal;font-size:calc(16*var(--u));line-height:calc(24*var(--u))}
footer.site-footer p{color:inherit}
footer.site-footer a{text-decoration:none;color:inherit}
footer.site-footer a:focus-visible{outline-color:#fff}
footer.site-footer .f-in{padding-top:calc(64*var(--u));padding-bottom:calc(112*var(--u))}
footer.site-footer .f-grid{display:grid;grid-template-columns:1fr;gap:calc(48*var(--u))}
footer.site-footer .f-brand img{height:calc(48*var(--u));width:auto;margin-bottom:calc(24*var(--u))}
footer.site-footer .f-brand p{max-width:calc(384*var(--u));margin-bottom:calc(16*var(--u));font-size:calc(16*var(--u));line-height:calc(26*var(--u));opacity:.9}
footer.site-footer .f-brand strong{font-weight:600;color:#fff}
footer.site-footer h3{margin-bottom:calc(24*var(--u));font-size:calc(18*var(--u));line-height:calc(28*var(--u));font-weight:600;letter-spacing:-.025em}
footer.site-footer .f-list{display:flex;flex-direction:column;gap:calc(16*var(--u))}
footer.site-footer .f-ct{display:flex;align-items:center;gap:calc(12*var(--u));font-size:calc(14*var(--u));line-height:calc(20*var(--u));opacity:.9;transition:opacity .2s,color .2s}
footer.site-footer .f-ct:hover{opacity:1;color:#c8981e}
footer.site-footer .f-ic{padding:calc(8*var(--u));border-radius:calc(9999*var(--u));background:rgba(255,255,255,.1);transition:background-color .2s}
footer.site-footer .f-ct:hover .f-ic{background:rgba(200,152,30,.2)}
footer.site-footer .f-sub{display:block;font-size:calc(12*var(--u));line-height:calc(16*var(--u));opacity:.7}
footer.site-footer .f-soc{display:flex;gap:calc(16*var(--u))}
footer.site-footer .f-so{padding:calc(12*var(--u));border-radius:calc(12*var(--u));background:rgba(255,255,255,.1);transition:background-color .3s,transform .3s}
footer.site-footer .f-so:hover{background:#c8981e;transform:translateY(calc(-4*var(--u)))}
footer.site-footer .f-bottom{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:calc(16*var(--u));margin-top:calc(64*var(--u));padding-top:calc(32*var(--u));border-top:1px solid rgba(255,255,255,.1)}
footer.site-footer .f-bottom p{font-size:calc(14*var(--u));line-height:calc(20*var(--u));opacity:.7}
footer.site-footer .f-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:calc(8*var(--u)) calc(24*var(--u))}
footer.site-footer .f-legal a{font-size:calc(14*var(--u));line-height:calc(20*var(--u));opacity:.7;transition:opacity .2s,color .2s}
footer.site-footer .f-legal a:hover{opacity:1;color:#c8981e}
@media(min-width:768px){footer.site-footer .f-grid{grid-template-columns:repeat(12,1fr)}footer.site-footer .f-brand{grid-column:span 5}footer.site-footer .f-col:nth-child(2){grid-column:span 4}footer.site-footer .f-col:nth-child(3){grid-column:span 3}footer.site-footer .f-bottom{flex-direction:row}footer.site-footer .f-legal{flex-wrap:nowrap}}
footer.site-footer p,footer.site-footer h3{margin-top:0}
footer.site-footer .f-bottom p{margin:0}
footer.site-footer .f-in{width:80%;max-width:1440px;margin-inline:auto}
@media(max-width:900px){footer.site-footer .f-in{width:auto;padding-inline:calc(20*var(--u))}}
.wa-bubble{position:fixed;right:calc(24*var(--u));bottom:calc(24*var(--u));z-index:50;display:flex;align-items:center;justify-content:center;width:calc(56*var(--u));height:calc(56*var(--u));border-radius:9999px;background:#25d366;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);transition:background-color .3s,transform .3s,box-shadow .3s}
.wa-bubble:hover{background:#20bd5a;transform:translateY(-2px);box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1)}
.wa-bubble[hidden]{display:none}
.wa-bubble svg{width:calc(28*var(--u));height:calc(28*var(--u));fill:#fff;position:relative}
.wa-ping{position:absolute;inset:0;border-radius:9999px;background:#25d366;opacity:.3;animation:wa-ping 1s cubic-bezier(0,0,.2,1) infinite}
@keyframes wa-ping{75%,100%{transform:scale(2);opacity:0}}
@media(prefers-reduced-motion:reduce){.wa-ping{animation:none}}
