/* Loaded after the legacy stylesheet to preserve component-specific layouts. */
:root{--blue:#145eae;--blue-hover:#0d4b8d;--ink:#203c57;--muted:#546b80;--pale:#edf5fc;--border:#dbe6ef;--surface:#fff;--page:#fff;--scale:1}
body.iacri-modern{color:var(--ink);background:var(--page);font-size:calc(16px * var(--scale));line-height:1.6;margin:0;overflow-wrap:break-word}
body.iacri-modern *,body.iacri-modern p,body.iacri-modern a{font-family:Arial,Helvetica,sans-serif;box-sizing:border-box}
body.iacri-modern p{font-size:1em;line-height:1.65;color:var(--muted);text-align:left}
body.iacri-modern a{font-size:inherit;line-height:inherit;color:var(--blue);text-decoration:none}
body.iacri-modern a:hover{text-decoration:underline}
body.iacri-modern h1,body.iacri-modern h2,body.iacri-modern h3,body.iacri-modern h4{font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.25;letter-spacing:-.025em}
body.iacri-modern h1{font-size:2.25em;font-weight:700}
body.iacri-modern h2{font-size:1.75em;font-weight:700}
body.iacri-modern h3{font-size:1.45em;font-weight:700}
body.iacri-modern img{max-width:100%;height:auto}
body.iacri-modern .container{width:calc(100% - 64px);max-width:1200px;margin:0 auto;height:auto;min-width:0}
body.iacri-modern button,body.iacri-modern input,body.iacri-modern select,body.iacri-modern textarea{font:inherit}
body.iacri-modern button{cursor:pointer}
body.iacri-modern :focus-visible{outline:3px solid #c77908;outline-offset:4px}
body.iacri-modern .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}
body.iacri-modern .skip-link{position:fixed;top:-100px;left:12px;background:var(--surface);padding:12px 20px;border:2px solid var(--blue);z-index:10000}
body.iacri-modern .skip-link:focus{top:12px}
body.iacri-modern .site-header{background:var(--surface);border:0}
body.iacri-modern #topo{background:var(--pale);border-bottom:1px solid var(--border);color:var(--ink)}
body.iacri-modern #topo .utility-bar{display:flex;justify-content:space-between;gap:16px;align-items:center;min-height:42px;flex-wrap:wrap;padding:5px 0}
body.iacri-modern .utility-label,body.iacri-modern #topo .mensagem{font-size:.75em;color:var(--muted);font-weight:400}
body.iacri-modern .access-tools{display:flex;gap:6px;align-items:center}
body.iacri-modern .access-tools button{color:var(--ink);background:transparent;border:0;border-radius:6px;padding:4px 8px;font-size:.75em;min-height:30px}
body.iacri-modern .access-tools button:hover{background:var(--border)}
body.iacri-modern .header{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:26px 0;min-height:138px}
body.iacri-modern .logo{width:310px;min-width:200px;margin:0;float:none;display:block}
body.iacri-modern .logo img{width:100%;height:auto;display:block}
body.iacri-modern .phone-contato{display:flex;flex-direction:column;gap:3px;float:none;padding:0;margin:0;background:transparent;min-width:215px;max-width:270px;align-items:flex-start}
body.iacri-modern .contact-eyebrow{color:var(--muted);font-size:.75em;font-weight:400}
body.iacri-modern .phone-contato .numero-phone{font-size:1.2em;font-weight:700;color:var(--blue);line-height:1.5}
body.iacri-modern .phone-contato .horario{font-size:.7em;line-height:1.5;color:var(--muted);text-align:left}
body.iacri-modern #busca{width:auto;flex:1;min-width:0;max-width:360px;height:auto;margin:0}
body.iacri-modern .portal-search{display:flex;align-items:center;background:var(--pale);border:1px solid var(--border);border-radius:10px;overflow:hidden}
body.iacri-modern .portal-search input{border:0;background:transparent;padding:13px 16px;min-width:0;width:100%;color:var(--ink);font-size:.85em}
body.iacri-modern .portal-search button{border:0;background:transparent;color:var(--blue);font-size:1.8em;padding:0 14px;line-height:1.5}
body.iacri-modern #busca .header-search{min-width:0}
body.iacri-modern #busca .sb-search{width:100%;min-width:0;height:46px;float:none;margin:0;overflow:visible}
body.iacri-modern #busca .sb-search-input{height:46px;background:var(--pale);border:1px solid var(--border)!important;color:var(--ink);padding:12px 48px 12px 12px!important}
body.iacri-modern #busca .sb-icon-search,body.iacri-modern #busca .sb-search-submit{height:46px;line-height:46px;background-color:var(--blue);color:#fff}
body.iacri-modern #menu{background:var(--blue);width:100%;min-height:56px}
body.iacri-modern #menu #portal-navigation{display:block}
body.iacri-modern #menu .menu-toggle{display:none;background:transparent;border:0;color:#fff;padding:14px 0;font-weight:700}
/* Works with Joomla's menu and the existing Grue menu markup. */
body.iacri-modern #menu #portal-navigation ul{box-shadow:none!important;list-style:none;margin:0;padding:0;background:transparent;min-height:0}
body.iacri-modern #menu #portal-navigation ul.portal-menu{display:flex!important;flex-wrap:wrap;align-items:stretch;background:transparent!important;width:100%}
body.iacri-modern #menu #portal-navigation ul.portal-menu li{position:relative;border:0!important;border-radius:0!important;background:transparent!important;float:none;display:block;color:#fff;padding:0}
body.iacri-modern #menu #portal-navigation ul.portal-menu a,body.iacri-modern #menu #portal-navigation ul.portal-menu .nav-header,body.iacri-modern #menu #portal-navigation ul.portal-menu .separator{display:block;color:#fff!important;background:transparent!important;border:0!important;padding:17px 15px!important;font-size:.82em!important;font-weight:600;line-height:1.6!important;text-transform:none;letter-spacing:0!important;white-space:normal}
body.iacri-modern #menu #portal-navigation ul.portal-menu a:after{display:none!important}
body.iacri-modern #menu #portal-navigation ul.portal-menu>li.active,body.iacri-modern #menu #portal-navigation ul.portal-menu li:hover{background:var(--blue-hover)!important}
body.iacri-modern #menu #portal-navigation ul.portal-menu li.has-submenu>a,body.iacri-modern #menu #portal-navigation ul.portal-menu li.has-submenu>.nav-header,body.iacri-modern #menu #portal-navigation ul.portal-menu li.has-submenu>.separator{padding-right:40px!important}
body.iacri-modern #menu #portal-navigation .submenu-toggle{position:absolute;right:2px;top:9px;width:30px;height:36px;background:transparent;color:#fff;border:0;border-radius:5px;z-index:2}
body.iacri-modern #menu #portal-navigation .submenu-toggle:hover{background:rgba(255,255,255,.2)}
body.iacri-modern #menu #portal-navigation ul.portal-menu ul{display:none!important;position:absolute!important;top:100%!important;left:0!important;width:250px!important;height:auto!important;max-height:70vh;overflow:auto;min-height:0;padding:8px!important;border:1px solid var(--border);border-radius:0 0 12px 12px;background:var(--surface)!important;box-shadow:0 16px 32px #203c5720!important;z-index:2000}
body.iacri-modern #menu #portal-navigation ul.portal-menu li.submenu-open>ul{display:block!important}
body.iacri-modern #menu #portal-navigation ul.portal-menu ul li{background:var(--surface)!important;width:100%!important;margin:0!important}
body.iacri-modern #menu #portal-navigation ul.portal-menu ul a,body.iacri-modern #menu #portal-navigation ul.portal-menu ul .nav-header,body.iacri-modern #menu #portal-navigation ul.portal-menu ul .separator{color:var(--ink)!important;padding:10px 12px!important;font-size:.85em!important;background:transparent!important}
body.iacri-modern #menu #portal-navigation ul.portal-menu ul li:hover{background:var(--pale)!important}
body.iacri-modern #menu #portal-navigation ul.portal-menu ul .submenu-toggle{color:var(--ink);top:3px}
body.iacri-modern #menu #portal-navigation ul.portal-menu ul ul{position:static!important;width:100%!important;border:0!important;box-shadow:none!important;padding-left:12px!important}
body.iacri-modern #menu #navigation-toggle,body.iacri-modern #menu .grue-menu-toggle{display:none!important}
body.iacri-modern .menu2{display:block;min-height:0;background:var(--pale);border-bottom:1px solid var(--border)}
body.iacri-modern .menu2 .container{display:block;min-height:0}
body.iacri-modern .menu2 ul.menu{display:flex;flex-wrap:wrap;gap:2px;padding:7px 0}
body.iacri-modern .menu2 ul.menu li{float:none;padding:0;border:0;background:transparent!important;line-height:1.5}
body.iacri-modern .menu2 ul.menu li a{display:block;padding:6px 13px;color:var(--blue);font-size:.75em}
body.iacri-modern .menu2 ul.menu li.active a{color:var(--blue);font-weight:700}
body.iacri-modern #caminho{background:var(--surface);padding:12px 0;border-bottom:1px solid var(--border)}
body.iacri-modern #caminho ul{margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px;background:transparent;font-size:.8em}
body.iacri-modern .system-messages:empty{display:none}
body.iacri-modern #conteudo{outline:0}
body.iacri-modern .home-intro{padding:38px 0 8px}
body.iacri-modern .eyebrow{font-size:.68em;font-weight:700;letter-spacing:.12em;color:var(--blue);display:block;margin-bottom:10px}
body.iacri-modern .home-intro h1{margin:0 0 10px}
body.iacri-modern .home-intro p{font-size:.9em}
body.iacri-modern .portal-section{padding:26px 0 38px;background:var(--surface)}
body.iacri-modern .portal-section.grey{background:#f6f9fc}
body.iacri-modern .portal-section h3{padding:0;margin:0 0 24px;text-transform:none;color:var(--ink);font-size:1.55em;font-weight:700}
body.iacri-modern .portal-section h3:after{display:none}
body.iacri-modern .bloco1,body.iacri-modern .bloco2{padding-top:0;padding-bottom:0}
body.iacri-modern .bloco1 ul.menu_menubloco{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0;margin:0}
body.iacri-modern #blocos .bloco1 ul.menu_menubloco li a{margin:0;display:flex;align-items:center;gap:12px;min-height:92px;height:100%;border:1px solid var(--border);border-radius:12px;padding:18px!important;background:var(--surface)!important;color:var(--ink);font-size:.83em;font-weight:600;line-height:1.4;box-shadow:0 3px 12px #203c5705;transition:border-color .18s,transform .18s}
body.iacri-modern #blocos .bloco1 ul.menu_menubloco li a:after{display:none}
body.iacri-modern #blocos .bloco1 ul.menu_menubloco li a:hover{border-color:var(--blue);background:var(--pale)!important;transform:translateY(-2px);text-decoration:none}
body.iacri-modern .service-icon{display:flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;border-radius:10px;background:var(--pale);color:var(--blue)}
body.iacri-modern .service-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
body.iacri-modern .bloco2 .bannergroup{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
body.iacri-modern .bloco2 .bannergroup .banneritem{margin:0;border-radius:12px;overflow:hidden;border:1px solid var(--border);background:var(--surface)}
body.iacri-modern #servicos-digitais .banneritem img{width:100%;display:block}
/* Retain plugin slide geometry and inline controls; style only the content cards. */
body.iacri-modern #slide{background:var(--pale);margin:0}
body.iacri-modern #slide .descricao{border-radius:12px;background:rgba(255,255,255,.95)!important;color:var(--ink)!important;box-shadow:0 6px 24px #203c5710}
body.iacri-modern #slide .descricao a.bt-title{color:var(--ink)!important;font-weight:700}
body.iacri-modern #slide .descricao a.bt-category{color:var(--blue)!important}
body.iacri-modern #slide .descricao .bt-introtext{color:var(--muted)!important}
body.iacri-modern #slide .descricao .readmore a{color:var(--blue)!important}
body.iacri-modern #noticias .moduletable_noticias .bt-cs_noticias .slides_container .slide{gap:18px;justify-content:flex-start}
body.iacri-modern #noticias .moduletable_noticias .bt-cs_noticias .slides_container .slide .bt-row{margin:0;min-width:220px;min-height:0;background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden;flex:1}
body.iacri-modern #noticias .bt-inner{padding:0!important}
body.iacri-modern #noticias .bt-center{display:flex!important;flex-direction:column}
body.iacri-modern #noticias .bt-center .sl{order:-1}
body.iacri-modern #noticias .descricao{padding:20px;grid-row:auto;line-height:1.5}
body.iacri-modern #noticias .bt-category{font-size:.72em!important;color:var(--blue)!important;font-weight:600}
body.iacri-modern #noticias .bt-title{display:block;font-size:1.1em!important;line-height:1.4!important;font-weight:700;color:var(--ink)!important;margin:8px 0}
body.iacri-modern #noticias .bt-introtext{color:var(--muted);font-size:.85em;line-height:1.6}
body.iacri-modern #noticias .bt-center img{display:block;width:100%!important;height:180px;object-fit:cover}
body.iacri-modern #noticias .mascara{display:none}
body.iacri-modern #videos ._videosindex ul{display:flex;flex-wrap:wrap;gap:18px}
body.iacri-modern #videos ._videosindex ul li{flex:1;min-width:230px;max-width:100%!important;margin:0;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:12px}
body.iacri-modern #artigo{padding:38px 0 56px;min-height:300px;background:var(--surface)}
body.iacri-modern #artigo p{margin-bottom:1em}
body.iacri-modern #artigo ul,body.iacri-modern #artigo ol{padding-left:24px;margin:14px 0}
body.iacri-modern #artigo ul li{list-style:disc}
body.iacri-modern #artigo ol li{list-style:decimal}
body.iacri-modern #artigo .table-responsive{max-width:100%;overflow:auto}
body.iacri-modern #artigo table{border-collapse:collapse;max-width:100%}
body.iacri-modern #artigo th,body.iacri-modern #artigo td{padding:10px;border:1px solid var(--border)}
body.iacri-modern #artigo th{background:var(--pale);color:var(--ink)}
body.iacri-modern #artigo input,body.iacri-modern #artigo textarea,body.iacri-modern #artigo select{max-width:100%}
body.iacri-modern #mapa{display:block;padding:32px 0;background:var(--pale);margin:0}
body.iacri-modern #mapa .container{position:static;display:block;z-index:auto!important;max-height:none;width:calc(100% - 64px);background:transparent;height:auto}
body.iacri-modern .contact-panel{display:flex;justify-content:space-between;gap:40px;align-items:center}
body.iacri-modern .contact-panel h2{font-size:1.6em;margin:0 0 12px}
body.iacri-modern .contact-panel address{font-style:normal;font-size:.85em;color:var(--muted);max-width:520px}
body.iacri-modern .contact-links{display:flex;flex-direction:column;gap:6px;font-size:.85em}
body.iacri-modern .contact-links>a:first-child{font-size:1.15em;font-weight:700}
body.iacri-modern .map-module{margin-top:24px}
body.iacri-modern .map-module iframe{display:block;width:100%;border:0;max-width:100%}
body.iacri-modern #footer{--footer-text:#dce9f5;--footer-title:#fff;--footer-border:rgba(255,255,255,.2);background:#123d63;color:var(--footer-text);padding:40px 0 24px;border-top:1px solid var(--footer-border)}
body.iacri-modern .footer-heading{display:flex;justify-content:space-between;gap:20px;padding-bottom:24px;border-bottom:1px solid var(--footer-border);margin-bottom:32px;align-items:center}
body.iacri-modern .footer-heading p{font-weight:700;color:var(--footer-title)}
body.iacri-modern .back-top{font-size:.75em}
body.iacri-modern .footer--blocks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 32px;margin:0;padding:0}
body.iacri-modern .footer--blocks-block{width:auto;min-width:0;grid-column:auto;grid-row:auto;margin:0;padding:0}
body.iacri-modern #footer h3{font-size:1em;color:var(--footer-title);font-weight:700;margin:0 0 14px;text-transform:none}
body.iacri-modern #footer a,body.iacri-modern #footer p{font-size:.875em;line-height:1.8;color:var(--footer-text)}
body.iacri-modern #footer a:hover,body.iacri-modern #footer a:focus-visible{color:var(--footer-title);text-decoration:underline}
body.iacri-modern #footer ul,body.iacri-modern #footer li{padding:0;margin:0;display:block;border:0;float:none}
body.iacri-modern #footer li{margin-bottom:6px}
body.iacri-modern .footer-bottom{display:flex;gap:24px;justify-content:space-between;align-items:center;border-top:1px solid var(--footer-border);margin-top:36px;padding-top:20px;flex-wrap:wrap}
body.iacri-modern #footer .footer1_rodape{margin:0;padding:0;width:auto;background:transparent;color:var(--footer-text)}
body.iacri-modern .component-view{padding:20px}
body.iacri-modern.high-contrast{--blue:#174c8c;--blue-hover:#113a6b;--ink:#000;--muted:#151515;--pale:#fff;--border:#000;--surface:#fff;--page:#fff}
body.iacri-modern.high-contrast .portal-section.grey,body.iacri-modern.high-contrast #footer{background:#fff}
body.iacri-modern.high-contrast a{text-decoration:underline}
body.iacri-modern.high-contrast #slide .descricao{background:#fff!important}
@media(max-width:1050px){
 body.iacri-modern .header{gap:22px}body.iacri-modern .logo{width:260px;min-width:180px}body.iacri-modern .phone-contato{min-width:180px;max-width:200px}
 body.iacri-modern #menu #portal-navigation ul.portal-menu a{padding-left:12px!important;padding-right:12px!important}
 body.iacri-modern .bloco1 ul.menu_menubloco{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:800px){
 body.iacri-modern .container,body.iacri-modern #mapa .container{width:calc(100% - 36px)}
 body.iacri-modern .header{flex-wrap:wrap;gap:18px;padding:20px 0;min-height:0}
 body.iacri-modern .logo{width:230px}body.iacri-modern .phone-contato{margin-left:auto;min-width:0;max-width:190px}
 body.iacri-modern #busca{flex-basis:100%;order:3;max-width:none}
 body.iacri-modern #menu .menu-toggle{display:block}
 body.iacri-modern.js-ready #menu #portal-navigation{display:none}
 body.iacri-modern.js-ready #menu #portal-navigation.is-open{display:block}
 body.iacri-modern #menu #portal-navigation ul.portal-menu{flex-direction:column}
 body.iacri-modern #menu #portal-navigation ul.portal-menu a{padding:13px 10px!important}
 body.iacri-modern #menu #portal-navigation ul.portal-menu ul{position:static!important;width:100%!important;max-height:none;border-radius:6px;box-shadow:none!important}
 body.iacri-modern #menu #portal-navigation .submenu-toggle{top:6px}
 body.iacri-modern .footer--blocks{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.iacri-modern .contact-panel{align-items:flex-start;flex-direction:column;gap:24px}
 body.iacri-modern .bloco2 .bannergroup{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
 body.iacri-modern #topo .utility-bar{gap:5px}body.iacri-modern .utility-label{font-size:.67em}
 body.iacri-modern .logo{width:210px;min-width:0}body.iacri-modern .phone-contato{display:none}
 body.iacri-modern .home-intro{padding-top:28px}body.iacri-modern h1{font-size:1.7em}
 body.iacri-modern .home-intro p{font-size:.83em}body.iacri-modern .portal-section{padding:24px 0}
 body.iacri-modern .bloco1 ul.menu_menubloco{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 body.iacri-modern #blocos .bloco1 ul.menu_menubloco li a{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;min-height:126px;padding:16px!important;font-size:.8em}
 body.iacri-modern #noticias .moduletable_noticias .bt-cs_noticias .slides_container .slide .bt-row{min-width:100%;flex-basis:100%}
 body.iacri-modern .footer--blocks{gap:24px 18px}body.iacri-modern .footer-heading{align-items:flex-start}
 body.iacri-modern .footer-heading p{font-size:.9em}body.iacri-modern .footer-bottom{gap:12px}
 body.iacri-modern #slide .descricao{position:relative!important;width:100%!important;max-width:100%;padding:20px!important;left:auto!important;bottom:auto!important}
}
@media(prefers-reduced-motion:reduce){body.iacri-modern *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{body.iacri-modern .site-header,body.iacri-modern #footer,body.iacri-modern #mapa,body.iacri-modern [vw],body.iacri-modern .skip-link{display:none!important}body.iacri-modern .container{width:100%}body.iacri-modern #artigo{padding:0}}
/* Neutralize remaining legacy mobile rules and more specific module headings. */
body.iacri-modern .container{overflow:visible}
body.iacri-modern .site-header{padding-bottom:0}
body.iacri-modern .phone-contato .horario{font-style:normal}
body.iacri-modern .menu2{display:block!important}
body.iacri-modern #footer ul,body.iacri-modern #footer li{background:transparent!important}
body.iacri-modern #noticias .moduletable_noticias h3,body.iacri-modern #videos h3{padding:0;margin:0 0 24px;text-transform:none;font-size:1.55em;font-weight:700;color:var(--ink)}
body.iacri-modern #noticias .moduletable_noticias h3:after,body.iacri-modern #videos h3:after{display:none}
body.iacri-modern #slide .bt-cs_slidenoticias .slides_container .slide .bt-inner .bt-center .descricao{margin-left:max(24px,calc((100vw - 1200px)/2));padding:24px;max-width:min(700px,calc(100% - 48px))}
body.iacri-modern #slide .descricao .bt-category,body.iacri-modern #slide .descricao .bt-title,body.iacri-modern #slide .descricao .bt-introtext{text-shadow:none!important}
body.iacri-modern #slide .bt-center .mascara{background:transparent!important}
@media(max-width:520px){
 body.iacri-modern #slide .bt-cs_slidenoticias .slides_container .slide .bt-inner .bt-center{display:flex;flex-direction:column}
 body.iacri-modern #slide .bt-cs_slidenoticias .slides_container .slide .bt-inner .bt-center .descricao{margin:0;max-width:100%}
 body.iacri-modern #slide .bt-cs_slidenoticias .slides_container .slide .bt-inner .bt-center .sl{order:-1}
}

/* Optional custom HTML module examples, supplied in examples/. */
body.iacri-modern .portal-welcome{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;padding-top:36px;padding-bottom:36px}
body.iacri-modern .portal-welcome-copy h2{font-size:2.5em;margin:12px 0 18px}
body.iacri-modern .portal-welcome-copy p{font-size:.9em;margin-bottom:20px}
body.iacri-modern .portal-welcome-copy>a{display:inline-block;background:var(--blue);border-radius:8px;color:white;font-size:.85em;padding:12px 18px}
body.iacri-modern .portal-welcome>img{width:100%;height:290px;object-fit:cover;border-radius:16px}
body.iacri-modern .portal-online{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
body.iacri-modern .portal-online a{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);padding:22px;border-radius:12px;gap:8px}
body.iacri-modern .portal-online span{font-size:.8em;color:var(--muted)}
@media(max-width:800px){body.iacri-modern .portal-welcome{gap:20px}body.iacri-modern .portal-welcome-copy h2{font-size:1.8em}body.iacri-modern .portal-welcome>img{height:220px}}
@media(max-width:520px){body.iacri-modern .portal-welcome{grid-template-columns:1fr}body.iacri-modern .portal-welcome>img{height:180px}body.iacri-modern .portal-online{grid-template-columns:1fr}}
/* 2.0.1: Grue emits its own inline wrapper background, font sizes and mobile
   display:none rule. Normalize the wrapper, not just its child menu list. */
body.iacri-modern #menu #portal-navigation #gruemenu{
 display:block!important;
 background:transparent!important;
 color:var(--ink);
 font-size:1em!important;
 border-radius:0!important;
 width:100%;
}
body.iacri-modern #menu #portal-navigation #gruemenu ul,
body.iacri-modern #menu #portal-navigation #gruemenu li{
 font-size:1em!important;
}
body.iacri-modern #menu #portal-navigation #gruemenu>ul.portal-menu>li>a{
 font-size:.875em!important;
}
/* 2.0.2: dropdown continues the selected blue navigation item. */
body.iacri-modern #menu #portal-navigation ul.portal-menu>li.submenu-open{
 background:var(--blue-hover)!important;
}
body.iacri-modern #menu #portal-navigation ul.portal-menu ul{
 background:var(--blue-hover)!important;
 border-color:rgba(255,255,255,.16);
 border-radius:0 0 12px 12px;
 box-shadow:0 14px 28px rgba(13,55,94,.2)!important;
}
body.iacri-modern #menu #portal-navigation ul.portal-menu ul::before,
body.iacri-modern #menu #portal-navigation ul.portal-menu ul::after{
 display:none!important;
 content:none!important;
}
body.iacri-modern #menu #portal-navigation ul.portal-menu ul li{
 background:transparent!important;
}
body.iacri-modern #menu #portal-navigation ul.portal-menu ul a,
body.iacri-modern #menu #portal-navigation ul.portal-menu ul .nav-header,
body.iacri-modern #menu #portal-navigation ul.portal-menu ul .separator{
 color:#fff!important;
 padding:12px 14px!important;
 font-size:.9375em!important;
 line-height:1.5!important;
 min-height:44px;
 border-radius:6px!important;
}
body.iacri-modern #menu #portal-navigation ul.portal-menu ul li:hover,
body.iacri-modern #menu #portal-navigation ul.portal-menu ul li:focus-within,
body.iacri-modern #menu #portal-navigation ul.portal-menu ul li.active{
 background:var(--blue)!important;
 border-radius:6px!important;
}
body.iacri-modern #menu #portal-navigation .submenu-toggle{
 display:flex;
 align-items:center;
 justify-content:center;
}
body.iacri-modern #menu #portal-navigation .submenu-toggle::before{
 content:"";
 display:block;
 width:7px;
 height:7px;
 border-right:2px solid currentColor;
 border-bottom:2px solid currentColor;
 transform:translateY(-2px) rotate(45deg);
 transition:transform .16s ease;
}
body.iacri-modern #menu #portal-navigation .submenu-toggle[aria-expanded="true"]::before{
 transform:translateY(2px) rotate(225deg);
}
body.iacri-modern #menu #portal-navigation ul.portal-menu ul .submenu-toggle{
 color:#fff;
 top:7px;
}
@media(max-width:800px){
 body.iacri-modern #menu #portal-navigation ul.portal-menu ul{
  border-radius:8px;
  margin:0 0 8px;
 }
}
/* 2.0.3: remove the legacy 20px ceiling so the border clears the text. */
body.iacri-modern #caminho{
 max-height:none;
 height:auto;
 min-height:50px;
 padding:14px 0;
}
body.iacri-modern #caminho ul{
 height:auto;
 min-height:21px;
 align-items:center;
 font-size:.875em;
 line-height:1.5;
}
body.iacri-modern #caminho ul li,
body.iacri-modern #caminho ul li.active{
 display:flex;
 align-items:center;
 max-height:none;
 height:auto;
 min-width:0;
 font-size:inherit;
 line-height:inherit;
 vertical-align:baseline;
}
body.iacri-modern #caminho ul li a{
 display:inline-flex;
 align-items:center;
 max-height:none;
 height:auto;
 font-size:inherit;
 line-height:inherit;
 color:var(--blue);
}
body.iacri-modern #caminho ul li.active{
 color:var(--ink);
}

/* 2.0.4: readable social buttons, independent of external icon fonts. */
body.iacri-modern #footer .social-buttons{display:flex;flex-wrap:wrap;gap:10px}
body.iacri-modern #footer .social-buttons a{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:44px;min-width:140px;padding:10px 14px;border:1px solid var(--footer-border);border-radius:8px;background:rgba(255,255,255,.08);color:var(--footer-title);font-size:.875em;line-height:1.4;font-weight:600;box-shadow:none;text-shadow:none;text-decoration:none}
body.iacri-modern #footer .social-buttons a:hover,body.iacri-modern #footer .social-buttons a:focus-visible{background:rgba(255,255,255,.18);border-color:var(--footer-title);text-decoration:none}
body.iacri-modern #footer a:focus-visible{outline:2px solid var(--footer-title);outline-offset:4px}
body.iacri-modern #footer .social-icon{display:inline-flex;flex:0 0 20px;width:20px;height:20px}
body.iacri-modern #footer .social-icon svg{width:20px;height:20px;fill:currentColor}
body.iacri-modern.high-contrast #footer{--footer-text:#151515;--footer-title:#000;--footer-border:#000;color:var(--footer-text)}
body.iacri-modern.high-contrast #footer .social-buttons a{background:#fff}
body.iacri-modern.high-contrast #footer .social-buttons a:hover,body.iacri-modern.high-contrast #footer .social-buttons a:focus-visible{background:#eee}

/* 2.0.5: consistent search corners, including the existing RD module. */
body.iacri-modern #busca .sb-search{border-radius:10px!important;overflow:hidden}
body.iacri-modern #busca .sb-search-input{border-radius:10px!important}
body.iacri-modern #busca .sb-icon-search,
body.iacri-modern #busca .sb-search-submit{width:46px;border-radius:0 10px 10px 0!important}
body.iacri-modern #busca .portal-search input,
body.iacri-modern #busca .portal-search button{border-radius:0}

/* 2.0.8: subtle area colors on the icon only. */
body.iacri-modern .service-icon--alert{color:#b45309;background:#fff3e6}
body.iacri-modern .service-icon--health{color:#b42332;background:#fff0f2}
body.iacri-modern .service-icon--leaf{color:#237345;background:#edf8ef}
body.iacri-modern .service-icon--culture{color:#7543a1;background:#f5effb}
body.iacri-modern .service-icon--sport{color:#087b80;background:#eaf8f8}
body.iacri-modern.high-contrast .service-icon{color:#000;background:#fff;outline:1px solid #000}

/* 2.0.9: complete topic palette; unrecognized topics retain institutional blue. */
body.iacri-modern .service-icon--education{color:#225ca5;background:#edf4ff}
body.iacri-modern .service-icon--tools{color:#926211;background:#fcf5e5}
body.iacri-modern .service-icon--vehicle{color:#216477;background:#edf6f8}
body.iacri-modern .service-icon--money{color:#25613e;background:#edf7f0}
body.iacri-modern .service-icon--chart,
body.iacri-modern .service-icon--building,
body.iacri-modern .service-icon--default{color:var(--blue);background:var(--pale)}
body.iacri-modern .service-icon--people{color:#76509a;background:#f5effa}
body.iacri-modern .service-icon--chat{color:#a13e71;background:#fceff5}
body.iacri-modern .service-icon--shield{color:#514da0;background:#f1f0fb}
body.iacri-modern .service-icon--calendar{color:#a14c35;background:#fcf0eb}
body.iacri-modern .service-icon--document{color:#52677f;background:#eff3f7}
body.iacri-modern.high-contrast .service-icon{color:#000;background:#fff;outline:1px solid #000}

/* 2.0.10: refine existing banners and news cards without changing module data. */
body.iacri-modern #servicos-digitais .bannergroup{gap:18px;align-items:stretch}
body.iacri-modern #servicos-digitais .banneritem{margin:0;min-width:0;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--surface);box-shadow:0 3px 10px #203c5708;transition:transform .18s,box-shadow .18s,border-color .18s}
body.iacri-modern #servicos-digitais .banneritem a{display:flex;align-items:center;justify-content:center;aspect-ratio:3.3 / 1;overflow:hidden;background:var(--surface)}
body.iacri-modern #servicos-digitais .banneritem img{display:block;width:100%!important;height:100%!important;object-fit:contain;margin:0;opacity:1}
body.iacri-modern #servicos-digitais .banneritem:hover{transform:translateY(-2px);border-color:var(--blue);box-shadow:0 6px 18px #203c5715}
body.iacri-modern #servicos-digitais .banneritem a:focus-visible{outline:3px solid var(--blue);outline-offset:-3px}
body.iacri-modern #noticias .bt-title{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere;height:auto!important;max-height:none!important;min-height:2.8em}
body.iacri-modern #noticias .bt-center .sl{background:#f4f7fa;border-bottom:1px solid var(--border)}
body.iacri-modern #noticias .bt-center .sl a{display:block}
body.iacri-modern #noticias .bt-center img{object-fit:contain!important;object-position:center;height:210px!important;margin:0!important}
body.iacri-modern #noticias .descricao{padding:18px!important}
body.iacri-modern #noticias .readmore a{display:inline-block;font-weight:600;color:var(--blue);padding:6px 0}
body.iacri-modern.high-contrast #noticias .bt-center .sl{background:#fff}
@media(max-width:800px){body.iacri-modern #servicos-digitais .bannergroup{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
@media(max-width:520px){body.iacri-modern #servicos-digitais .bannergroup{grid-template-columns:1fr;gap:12px}body.iacri-modern #noticias .bt-center img{height:240px!important}}
@media(prefers-reduced-motion:reduce){body.iacri-modern #servicos-digitais .banneritem{transition:none}body.iacri-modern #servicos-digitais .banneritem:hover{transform:none}}

/* 2.0.11: existing image banners without decorative frames. */
body.iacri-modern #servicos-digitais .banneritem,
body.iacri-modern #servicos-digitais .banneritem:hover{border:0;box-shadow:none;background:transparent;transform:none}
body.iacri-modern #servicos-digitais .banneritem a{background:transparent}

/* 2.0.13: shared article pattern, extending the existing #artigo .item-page styles. */
body.iacri-modern #artigo .item-page{max-width:1000px;width:100%;margin:0 auto}
body.iacri-modern #artigo .item-page .page-header{margin:0 0 10px;padding:0;border:0}
body.iacri-modern #artigo .item-page h1{font-size:2.1em;line-height:1.2;color:var(--ink);margin:0;font-weight:700}
body.iacri-modern #artigo .item-page ._subtitulo{font-size:1.12em;line-height:1.6;font-style:normal;font-weight:400;color:var(--muted);margin:0 0 16px}
body.iacri-modern #artigo .item-page ._article.container{width:100%;max-width:none;margin:16px 0 0;padding:0}
body.iacri-modern #artigo .item-page ._article{font-size:1.0625em;line-height:1.85;color:var(--ink)}
body.iacri-modern #artigo .item-page ._article p{font-size:1em;line-height:1.85;color:var(--ink);margin:0 0 1.15em;text-align:left}
body.iacri-modern #artigo .item-page ._article li{line-height:1.85}
body.iacri-modern #artigo .item-page ._article h2{margin:28px 0 12px;font-size:1.5em}
body.iacri-modern #artigo .item-page ._article h3{margin:24px 0 10px;font-size:1.2em}
body.iacri-modern #artigo .item-page .item-image{float:none!important;text-align:center;margin:8px auto 20px;max-width:680px;width:100%}
body.iacri-modern #artigo .item-page .item-image img,
body.iacri-modern #artigo .item-page ._article figure img,
body.iacri-modern #artigo .item-page ._article p img{border-radius:12px;height:auto;max-width:100%;width:auto;margin:0 auto;display:block}
body.iacri-modern #artigo .item-page ._article figure{max-width:680px;margin:16px auto 24px}
body.iacri-modern #artigo .item-page figcaption,
body.iacri-modern #artigo .item-page .img_caption p{font-size:.85em!important;line-height:1.5!important;color:var(--muted)!important;text-align:center!important;margin:8px 0 0!important}
body.iacri-modern #artigo .item-page .article-tools{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:12px 0;margin:0 0 20px}
body.iacri-modern #artigo .item-page .article-info{display:flex;justify-content:flex-start;flex-wrap:wrap;gap:6px 14px;font-size:.85em;font-weight:400;color:var(--muted);margin:0}
body.iacri-modern #artigo .item-page .article-info dd{margin:0}
body.iacri-modern #artigo .item-page .icons{margin:0 0 0 auto;float:none}
body.iacri-modern #artigo .item-page .icons ul{height:auto;margin:0;padding:0;list-style:none}
body.iacri-modern #artigo .item-page .icons ul li{list-style:none}
body.iacri-modern #artigo .item-page .icons a{font-size:.85em;color:var(--blue);display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--border);border-radius:6px}
body.iacri-modern #artigo .item-page .e-mailit_toolbox{padding:0;margin:0}
@media(max-width:520px){body.iacri-modern #artigo .item-page h1{font-size:1.65em}body.iacri-modern #artigo .item-page ._subtitulo{font-size:1em}body.iacri-modern #artigo .item-page .article-tools{gap:10px}body.iacri-modern #artigo .item-page .icons{margin-left:0}}
@media print{body.iacri-modern #artigo .item-page .article-tools{display:none}body.iacri-modern #artigo .item-page{max-width:none}}

/* 2.0.15: existing com_prefeito gallery, using its original classes. */
body.iacri-modern #artigo .prefeitos{width:100%;max-width:1100px;margin:0 auto}
body.iacri-modern #artigo .prefeitos .lista{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;width:100%;margin:0;padding:0}
body.iacri-modern #artigo .prefeitos .lista-prefeitos{display:flex!important;align-items:flex-start;gap:20px;float:none!important;width:auto!important;min-width:0;max-width:none;margin:0!important;padding:22px!important;background:var(--surface)!important;color:var(--ink);border:1px solid var(--border)!important;border-radius:14px;box-shadow:0 3px 12px #203c5706;box-sizing:border-box}
body.iacri-modern #artigo .prefeitos .foto{flex:0 0 110px;float:none!important;width:110px!important;margin:0!important;padding:0}
body.iacri-modern #artigo .prefeitos .foto a{display:block}
body.iacri-modern #artigo .prefeitos .foto img{display:block;width:110px!important;height:145px!important;max-width:100%;object-fit:contain;object-position:center top;border-radius:8px;background:var(--pale);margin:0!important}
body.iacri-modern #artigo .prefeitos .descricaoPrefeito{flex:1;min-width:0;float:none!important;width:auto!important;margin:0!important;padding:0;font-size:1em;line-height:1.65;color:var(--ink);overflow-wrap:anywhere}
body.iacri-modern #artigo .prefeitos .descricaoPrefeito>div{margin:0 0 10px;line-height:1.65}
body.iacri-modern #artigo .prefeitos .descricaoPrefeito>div:last-child{margin-bottom:0}
body.iacri-modern #artigo .prefeitos .titulos_item{font-size:.85em;font-weight:600;color:var(--muted);margin-right:5px}
body.iacri-modern #artigo .prefeitos .prefeito>.titulos_item{display:block;margin:0 0 3px}
body.iacri-modern #artigo .prefeitos .nome_prefeito{display:block;text-transform:none!important;font-size:1.08em;font-weight:700;line-height:1.35;color:var(--blue)}
body.iacri-modern #artigo .prefeitos .nome_vice,
body.iacri-modern #artigo .prefeitos .nome_periodo,
body.iacri-modern #artigo .prefeitos .nome_descricao_curta{font-size:.9em;line-height:1.65;color:var(--ink)}
body.iacri-modern #artigo .prefeitos .periodo_de_mandato{border-top:1px solid var(--border);padding-top:10px}
body.iacri-modern #artigo .prefeitos .pagination{margin-top:24px}
body.iacri-modern.high-contrast #artigo .prefeitos .lista-prefeitos{box-shadow:none}
@media(max-width:800px){body.iacri-modern #artigo .prefeitos .lista{grid-template-columns:1fr;gap:16px}}
@media(max-width:520px){body.iacri-modern #artigo .prefeitos .lista-prefeitos{gap:14px;padding:16px!important}body.iacri-modern #artigo .prefeitos .foto{flex-basis:85px;width:85px!important}body.iacri-modern #artigo .prefeitos .foto img{width:85px!important;height:115px!important}}

/* 2.0.16: contact-category cards for the existing Secretarias directory. */
body.iacri-modern #artigo .contact-category{width:100%;max-width:1100px;margin:0 auto;color:var(--ink)}
body.iacri-modern #artigo .contact-category h2{font-size:2em;line-height:1.25;color:var(--ink);margin:0 0 24px;font-weight:700}
body.iacri-modern #artigo .contact-category ul.category{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;list-style:none;margin:0;padding:0;width:100%}
body.iacri-modern #artigo .contact-category ul.category>li{display:flow-root;float:none;width:auto;min-width:0;margin:0;padding:22px;list-style:none;background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:14px;box-shadow:0 3px 12px #203c5706;box-sizing:border-box;overflow-wrap:anywhere}
body.iacri-modern #artigo .contact-category ul.category>li img{float:left;width:110px;height:145px;max-width:100%;object-fit:contain;object-position:center top;margin:0 20px 12px 0;border-radius:8px;background:var(--pale)}
body.iacri-modern #artigo .contact-category .span7,
body.iacri-modern #artigo .contact-category .span3{float:none;width:auto;min-height:0;margin:0;font-size:.95em;line-height:1.65;color:var(--ink)}
body.iacri-modern #artigo .contact-category .span7>a{font-size:1.05em;font-weight:700;line-height:1.4;color:var(--blue)}
body.iacri-modern #artigo .contact-category .contact-field-entry{margin:8px 0 3px}
body.iacri-modern #artigo .contact-category .contact-field-entry .field-value{font-size:1em;font-weight:600;line-height:1.5;text-transform:none}
body.iacri-modern #artigo .contact-category .contact-position{color:var(--muted);line-height:1.6}
body.iacri-modern #artigo .contact-category .pagination{margin-top:24px}
body.iacri-modern.high-contrast #artigo .contact-category ul.category>li{box-shadow:none}
@media(max-width:800px){body.iacri-modern #artigo .contact-category ul.category{grid-template-columns:1fr;gap:16px}}
@media(max-width:520px){body.iacri-modern #artigo .contact-category h2{font-size:1.65em}body.iacri-modern #artigo .contact-category ul.category>li{padding:16px}body.iacri-modern #artigo .contact-category ul.category>li img{width:85px;height:115px;margin-right:14px}}

/* 2.0.17: shared directory headings and the existing useful-address component. */
body.iacri-modern #artigo .municipal-directory-heading{width:100%;max-width:1100px;margin:0 auto 24px;padding:0;border:0}
body.iacri-modern #artigo .municipal-directory-heading h1,
body.iacri-modern #artigo .municipal-directory-heading h2{font-size:2em;line-height:1.25;color:var(--ink);margin:0;font-weight:700;letter-spacing:normal}
body.iacri-modern #artigo .municipal-directory-form{width:100%;max-width:1100px;margin:0 auto}
body.iacri-modern #artigo .enderecos-uteis{width:100%;max-width:none;margin:0}
body.iacri-modern #artigo .enderecos-uteis .lista{display:block;width:100%;margin:0;padding:0}
body.iacri-modern #artigo .enderecos-uteis .estabelecimento-item{float:none;width:100%!important;min-width:0;margin:0 0 16px!important;padding:22px!important;background:var(--surface)!important;color:var(--ink);border:1px solid var(--border)!important;border-radius:14px;box-shadow:0 3px 12px #203c5706;box-sizing:border-box;overflow-wrap:anywhere}
body.iacri-modern #artigo .enderecos-uteis .descricao{float:none;width:auto!important;margin:0;padding:0;font-size:1em;line-height:1.8;color:var(--ink)}
body.iacri-modern #artigo .enderecos-uteis .local{margin:0 0 8px}
body.iacri-modern #artigo .enderecos-uteis .local-nome{font-size:1.12em;font-weight:700;line-height:1.4;color:var(--blue)}
body.iacri-modern #artigo .enderecos-uteis .titulos_item{font-size:.9em;font-weight:600;color:var(--muted)}
body.iacri-modern #artigo .enderecos-uteis .texto-nome{font-size:.95em;line-height:1.8;color:var(--ink)}
body.iacri-modern #artigo .enderecos-uteis .imagem img{max-width:100%;height:auto;border-radius:8px}
body.iacri-modern #artigo .address-directory-form #filter-bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 24px;padding:0}
body.iacri-modern #artigo .address-directory-form .filter-search{flex:1 1 300px;float:none;margin:0;max-width:600px}
body.iacri-modern #artigo .address-directory-form #filter_search{width:100%;height:44px;margin:0;padding:10px 14px;box-sizing:border-box;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit}
body.iacri-modern #artigo .address-directory-form #filter-bar .btn{height:auto;min-height:44px;margin:0;padding:10px 16px;border:1px solid var(--blue);border-radius:8px;background:var(--blue);background-image:none;color:#fff;text-shadow:none;box-shadow:none;font:inherit;font-weight:600;cursor:pointer}
body.iacri-modern #artigo .address-directory-form #filter-bar .btn[type=button]{background:var(--surface);border-color:var(--border);color:var(--blue)}
body.iacri-modern #artigo .address-directory-form #filter-bar .btn:hover{filter:brightness(.95)}
body.iacri-modern #artigo .address-directory-form #filter-bar input:focus,
body.iacri-modern #artigo .address-directory-form #filter-bar button:focus{outline:2px solid var(--blue);outline-offset:3px}
body.iacri-modern.high-contrast #artigo .enderecos-uteis .estabelecimento-item{box-shadow:none}
@media(max-width:520px){body.iacri-modern #artigo .municipal-directory-heading h1,body.iacri-modern #artigo .municipal-directory-heading h2{font-size:1.65em}body.iacri-modern #artigo .enderecos-uteis .estabelecimento-item{padding:16px!important}body.iacri-modern #artigo .address-directory-form .filter-search{flex-basis:100%;max-width:none}body.iacri-modern #artigo .address-directory-form #filter-bar .btn{flex:1 1 auto}}

/* 2.0.18: address directory readability and alignment refinements. */
body.iacri-modern #artigo .address-directory-form{padding:0!important;box-sizing:border-box;align-items:stretch}
body.iacri-modern #artigo .address-directory-form .filter-search{font-size:1em}
body.iacri-modern #artigo .address-directory-form #filter_search,
body.iacri-modern #artigo .address-directory-form #filter-bar .btn{font-size:1rem}
body.iacri-modern #artigo .address-directory-form #filter_search::placeholder{font-size:1em;color:var(--muted);opacity:1}
body.iacri-modern #artigo .enderecos-uteis .estabelecimento-item{padding:16px 20px!important;min-height:0;align-items:flex-start}
body.iacri-modern #artigo .enderecos-uteis .descricao{font-size:1rem;line-height:1.65}
body.iacri-modern #artigo .enderecos-uteis .descricao .local{font-size:1em;margin-bottom:6px}
body.iacri-modern #artigo .enderecos-uteis .local-nome{font-size:1.125rem;line-height:1.4}
body.iacri-modern #artigo .enderecos-uteis .descricao .titulos_item,
body.iacri-modern #artigo .enderecos-uteis .texto-nome{font-size:1em;line-height:1.65}
body.iacri-modern #artigo .enderecos-uteis .address-label-icon{display:inline-flex;width:15px;height:15px;margin-right:5px;vertical-align:-2px;color:var(--muted)}
body.iacri-modern #artigo .enderecos-uteis .address-label-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:520px){body.iacri-modern #artigo .enderecos-uteis .estabelecimento-item{padding:14px 16px!important}}

/* 2.0.19: inner content follows the existing 1200px header container. */
body.iacri-modern #artigo .municipal-directory-heading,
body.iacri-modern #artigo .municipal-directory-form,
body.iacri-modern #artigo .contact-category,
body.iacri-modern #artigo .prefeitos{width:100%;max-width:none;margin-left:0;margin-right:0}
body.iacri-modern #artigo .municipal-directory-form{padding:0!important;box-sizing:border-box;align-items:stretch}
body.iacri-modern #artigo .item-page{width:100%;max-width:none;margin:0}
body.iacri-modern #artigo .item-page ._article.container{width:100%;max-width:1000px;margin:16px 0 0;padding:0}
@media print{body.iacri-modern #artigo .item-page ._article.container{max-width:none}}

/* 2.0.20: articles and the address search use the full shared content width. */
body.iacri-modern #artigo .item-page ._article.container{max-width:none;width:100%;margin:16px 0 0}
body.iacri-modern #artigo .address-directory-form .filter-search{max-width:none;min-width:0;flex:1 1 300px}
body.iacri-modern #artigo .address-directory-form #filter-bar .btn{flex:0 0 auto}
@media(max-width:520px){body.iacri-modern #artigo .address-directory-form .filter-search{flex-basis:100%}body.iacri-modern #artigo .address-directory-form #filter-bar .btn{flex:1 1 auto}}

/* 2.0.21: justified article paragraphs. */
body.iacri-modern #artigo .item-page ._article p{text-align:justify}

/* 2.0.22: shared Phoca Download category and file list presentation. */
body.iacri-modern #artigo .pd-category-view,
body.iacri-modern #artigo .pd-categories-view{width:100%;margin:0;padding:0;color:var(--ink)}
body.iacri-modern #artigo .pd-category{width:100%;min-height:0;font-size:1em}
body.iacri-modern #artigo .pd-category .pd-ctitle,
body.iacri-modern #artigo .pd-categories-view>h1{font-size:2em;line-height:1.25;font-weight:700;color:var(--ink);background:transparent!important;border:0;letter-spacing:normal;padding:0;margin:0 0 16px}
body.iacri-modern #artigo .pd-category .pd-cdesc{margin:0 0 24px;padding:0;color:var(--muted);font-size:1em;line-height:1.65}
body.iacri-modern #artigo .pd-category .pd-cdesc p,
body.iacri-modern #artigo .pd-categories-view .pd-desc p{padding:0;margin:0 0 12px;font-size:1em;line-height:1.65}
body.iacri-modern #artigo .pd-category .subcategory{display:block;width:100%;margin:0 0 12px;padding:0;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 3px 12px #203c5706;transition:border-color .15s,background-color .15s}
body.iacri-modern #artigo .pd-category .subcategory>a{display:flex;align-items:center;gap:12px;width:100%;padding:18px 20px;font-size:1.05em;line-height:1.5;font-weight:600;color:var(--blue);text-decoration:none;overflow-wrap:anywhere}
body.iacri-modern #artigo .pd-category .subcategory>a::before{content:"";display:block;flex:0 0 22px;width:22px;height:22px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.7' stroke-linejoin='round' d='M3 7V5a2 2 0 0 1 2-2h5l2 3h7a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V7Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.7' stroke-linejoin='round' d='M3 7V5a2 2 0 0 1 2-2h5l2 3h7a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V7Z'/%3E%3C/svg%3E") center/contain no-repeat}
body.iacri-modern #artigo .pd-category .subcategory:hover{border-color:var(--blue);background:var(--pale)}
body.iacri-modern #artigo .pd-category .subcategory>a:focus-visible{outline-offset:-4px;border-radius:12px}
body.iacri-modern #artigo .pd-category .pd-hr-cb{border:0;margin:8px 0}
body.iacri-modern #artigo .pd-filebox,
body.iacri-modern #artigo .pd-categories-view .pd-categoriesbox{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px;margin:0 0 16px;box-shadow:0 3px 12px #203c5706;overflow-wrap:anywhere}
body.iacri-modern #artigo .pd-filebox a{font-size:1em;text-transform:none;color:var(--blue);line-height:1.5}
body.iacri-modern #artigo .pd-filebox .pd-filenamebox{max-width:100%}
body.iacri-modern #artigo .pd-filebox .pd-title{font-size:1.1em;line-height:1.5;color:var(--blue);font-weight:600}
body.iacri-modern #artigo .pd-category-view .pd-button-download a{display:inline-block;border:1px solid var(--blue);border-radius:8px;background:var(--blue);background-image:none;color:#fff;font-size:.95em;line-height:1.5;padding:10px 16px;min-height:42px;text-transform:none;text-shadow:none;box-shadow:none}
body.iacri-modern #artigo .pd-category-view .pd-button-download a:hover{background:var(--blue-hover);text-decoration:none}
body.iacri-modern #artigo .pd-category-view .pagination{font-size:.9em;color:var(--muted);margin:24px 0 0}
body.iacri-modern #artigo .pd-category-view .pagination select{font-size:1em;line-height:1.5;min-height:38px;height:auto;padding:6px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--ink);max-width:100%}
body.iacri-modern.high-contrast #artigo .pd-category .subcategory,
body.iacri-modern.high-contrast #artigo .pd-filebox{box-shadow:none}
@media(max-width:520px){body.iacri-modern #artigo .pd-category .pd-ctitle,body.iacri-modern #artigo .pd-categories-view>h1{font-size:1.65em}body.iacri-modern #artigo .pd-category .subcategory>a{padding:15px 16px}body.iacri-modern #artigo .pd-filebox{padding:16px}}
@media(prefers-reduced-motion:reduce){body.iacri-modern #artigo .pd-category .subcategory{transition:none}}

/* 2.0.23: article category lists follow the municipal page pattern. */
body.iacri-modern #artigo .category-list{width:100%;max-width:none;margin:0;padding:0}
body.iacri-modern #artigo .category-list .content-category>h2{font-family:Arial,Helvetica,sans-serif!important;font-size:2em;line-height:1.25;font-weight:700;color:var(--ink);margin:0 0 16px}
body.iacri-modern #artigo .category-list .category-desc{margin:0 0 24px;padding:0}
body.iacri-modern #artigo .category-list .category-desc p{font-size:1em;line-height:1.65;font-weight:400;color:var(--muted);margin:0 0 12px}
body.iacri-modern #artigo .category-list form{width:100%;margin:0;padding:0;display:block}
body.iacri-modern #artigo .category-list .category.table{width:100%;margin:0;padding:0;border:0;background:transparent}
body.iacri-modern #artigo .category-list .links_noticias{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;width:100%}
body.iacri-modern #artigo .category-list .links_noticias .cat-list-row{display:block;min-width:0;margin:0;padding:18px 22px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 3px 12px rgba(20,62,100,.04)}
body.iacri-modern #artigo .category-list .links_noticias .cat-list-row .list-date{display:block;font-size:.875em;line-height:1.5;font-weight:400;color:var(--muted);margin:0 0 6px}
body.iacri-modern #artigo .category-list .links_noticias .cat-list-row .list-title{margin:0;font-size:1.125em;line-height:1.5}
body.iacri-modern #artigo .category-list .links_noticias .cat-list-row .list-title a{display:inline-block;font-size:1em;line-height:inherit;font-weight:600;color:var(--blue);white-space:normal;overflow-wrap:anywhere;text-transform:none}
body.iacri-modern #artigo .category-list .links_noticias .cat-list-row .list-title a:hover{color:var(--blue-hover);text-decoration:underline}
body.iacri-modern #artigo .category-list .links_noticias .cat-list-row:focus-within{border-color:var(--blue)}
body.iacri-modern #artigo .category-list .links_noticias .list-author,body.iacri-modern #artigo .category-list .links_noticias .list-hits{font-size:.875em;color:var(--muted);margin-top:6px}
body.iacri-modern #artigo .category-list .filters{border:0;margin:0 0 20px;padding:0;display:flex;flex-wrap:wrap;gap:12px}
body.iacri-modern #artigo .category-list .filters .btn-group{float:none;margin:0;max-width:100%}
body.iacri-modern #artigo .category-list .filters input,body.iacri-modern #artigo .category-list .filters select{font-size:1em;min-height:44px;height:auto;max-width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink)}
body.iacri-modern #artigo .category-list .pagination{margin-top:24px}
body.iacri-modern.high-contrast #artigo .category-list .links_noticias .cat-list-row{box-shadow:none}
@media(max-width:600px){
 body.iacri-modern #artigo .category-list .content-category>h2{font-size:1.65em}
 body.iacri-modern #artigo .category-list .links_noticias .cat-list-row{padding:16px}
 body.iacri-modern #artigo .category-list .links_noticias .cat-list-row .list-title{font-size:1.0625em}
}

/* 2.0.24: shared presentation for municipal contact and participation forms. */
body.iacri-modern #artigo .contact_contato-site{width:100%;max-width:none;margin:0;padding:0}
body.iacri-modern #artigo .contact_contato-site .page-header{margin:0 0 24px;padding:0;border:0}
body.iacri-modern #artigo .contact_contato-site .page-header h2{font-family:Arial,Helvetica,sans-serif!important;font-size:2em;line-height:1.25;font-weight:700;color:var(--ink);margin:0;padding:0}
body.iacri-modern #artigo .contact_contato-site .accordion{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:24px;align-items:start;width:100%}
body.iacri-modern #artigo .contact_contato-site .accordion-group{min-width:0;margin:0;padding:22px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 3px 12px #203c5706}
body.iacri-modern #artigo .contact_contato-site .accordion-heading{display:none}
body.iacri-modern #artigo .contact_contato-site .accordion-inner{padding:0;border:0}
body.iacri-modern #artigo .contact_contato-site .contact-address{display:grid;gap:16px;padding:0;font-size:1em;line-height:1.65;color:var(--ink)}
body.iacri-modern #artigo .contact_contato-site .contact-address>div{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start;margin:0;overflow-wrap:anywhere}
body.iacri-modern #artigo .contact_contato-site .contact-address img{display:block;width:22px;max-height:24px;object-fit:contain;margin:2px 0 0}
body.iacri-modern #artigo .contact_contato-site #contact-form{display:block;width:100%;margin:0;padding:0;background:transparent;border:0;box-shadow:none}
body.iacri-modern #artigo .contact_contato-site #contact-form legend.formulario{font-size:1.25em;line-height:1.4;font-weight:700;color:var(--ink);width:100%;margin:0 0 18px;padding:0;border:0}
body.iacri-modern #artigo .contact_contato-site #contact-form .control-group{display:block;margin:0 0 16px}
body.iacri-modern #artigo .contact_contato-site #contact-form .control-label,body.iacri-modern #artigo .contact_contato-site #contact-form .controls{float:none;width:100%;margin:0;padding:0;text-align:left}
body.iacri-modern #artigo .contact_contato-site #contact-form label{display:block;font-size:.95em;line-height:1.5;font-weight:600;color:var(--ink);margin:0 0 6px}
body.iacri-modern #artigo .contact_contato-site #contact-form input:not([type=hidden]),body.iacri-modern #artigo .contact_contato-site #contact-form textarea{display:block;width:100%;max-width:none;min-height:44px;height:auto;margin:0;padding:10px 12px;border:1px solid #b8c9d8;border-radius:8px;background:var(--surface);color:var(--ink);font-size:1em;line-height:1.5;box-shadow:none}
body.iacri-modern #artigo .contact_contato-site #contact-form textarea{min-height:150px;resize:vertical}
body.iacri-modern #artigo .contact_contato-site #contact-form input:focus,body.iacri-modern #artigo .contact_contato-site #contact-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #145eae1f;outline:0}
body.iacri-modern #artigo .contact_contato-site #contact-form button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:10px 18px;border:1px solid var(--blue);border-radius:8px;background:var(--blue);color:#fff;font-size:1em;font-weight:600;text-transform:none;text-shadow:none;box-shadow:none}
body.iacri-modern #artigo .contact_contato-site #contact-form button:hover{background:var(--blue-hover)}
body.iacri-modern #artigo .contact_contato-site #contact-form .g-recaptcha{max-width:100%;overflow:auto}
body.iacri-modern #artigo .contact_contato-site #contact-form .field-spacer label{font-size:.875em;font-weight:400;color:var(--muted)}

body.iacri-modern #artigo .visforms-form{width:100%;max-width:none;margin:0;padding:0;color:var(--ink)}
body.iacri-modern #artigo .visforms-form .category-desc{width:100%;margin:0 0 28px;padding:0}
body.iacri-modern #artigo .visforms-form .category-desc h2,body.iacri-modern #artigo .visforms-form .category-desc>p:first-child>strong:first-child{display:block;font-size:2em;line-height:1.25;font-weight:700;color:var(--ink);margin:0 0 16px}
body.iacri-modern #artigo .visforms-form .category-desc p{font-size:1em;line-height:1.75;font-weight:400;color:var(--muted);text-align:justify;margin:0 0 14px}
body.iacri-modern #artigo .visforms-form .category-desc strong{color:var(--ink)}
body.iacri-modern #artigo .visforms-form form.visform{display:block;width:100%;margin:0;padding:26px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 3px 12px #203c5706}
body.iacri-modern #artigo .visforms-form form.visform fieldset{min-width:0;margin:0;padding:0;border:0}
body.iacri-modern #artigo .visforms-form form.visform .row-fluid{display:flex;gap:20px;width:100%;margin:0}
body.iacri-modern #artigo .visforms-form form.visform .row-fluid>[class*=span]{float:none;flex:1 1 0;width:auto;min-width:0;margin-left:0}
body.iacri-modern #artigo .visforms-form form.visform .control-group,body.iacri-modern #artigo .visforms-form form.visform .row-fluid>[class*=span]{margin-bottom:18px}
body.iacri-modern #artigo .visforms-form form.visform label{float:none;display:block;width:100%;font-size:.95em;line-height:1.5;font-weight:600;color:var(--ink);margin:0 0 6px;padding:0;text-align:left}
body.iacri-modern #artigo .visforms-form form.visform .controls{margin:0}
body.iacri-modern #artigo .visforms-form form.visform input:not([type=hidden]):not([type=submit]),body.iacri-modern #artigo .visforms-form form.visform select,body.iacri-modern #artigo .visforms-form form.visform textarea{float:none;display:block;width:100%;max-width:none;min-height:44px;height:auto;margin:0;padding:10px 12px;border:1px solid #b8c9d8;border-radius:8px;background:var(--surface);color:var(--ink);font-size:1em;line-height:1.5;box-shadow:none}
body.iacri-modern #artigo .visforms-form form.visform textarea{min-height:150px;resize:vertical}
body.iacri-modern #artigo .visforms-form form.visform input:focus,body.iacri-modern #artigo .visforms-form form.visform select:focus,body.iacri-modern #artigo .visforms-form form.visform textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #145eae1f;outline:0}
body.iacri-modern #artigo .visforms-form form.visform .vis_mandatory{font-size:.875em;font-weight:600;color:#b42318;margin-bottom:18px}
body.iacri-modern #artigo .visforms-form form.visform .form-actions{margin:4px 0 0;padding:0;background:transparent;border:0}
body.iacri-modern #artigo .visforms-form form.visform .form-actions input[type=submit]{min-height:44px;margin:0;padding:10px 22px;border:1px solid var(--blue);border-radius:8px;background:var(--blue);color:#fff;font-size:1em;font-weight:600;text-shadow:none;box-shadow:none}
body.iacri-modern #artigo .visforms-form form.visform .form-actions input[type=submit]:hover:not(:disabled){background:var(--blue-hover)}
body.iacri-modern #artigo .visforms-form form.visform .form-actions input[type=submit]:disabled{opacity:.55;cursor:not-allowed}
body.iacri-modern #artigo .visforms-form form.bthorizontal fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
body.iacri-modern #artigo .visforms-form form.bthorizontal fieldset>.control-group:first-child,body.iacri-modern #artigo .visforms-form form.bthorizontal fieldset>.field16,body.iacri-modern #artigo .visforms-form form.bthorizontal fieldset>.form-actions,body.iacri-modern #artigo .visforms-form form.bthorizontal fieldset>.clearfix{grid-column:1/-1}
body.iacri-modern #artigo .visforms-form form.bthorizontal fieldset>[class^=fc-tbx]:empty{display:none}

body.iacri-modern #artigo .pd-category-view .pd-filebox{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 20px;align-items:center}
body.iacri-modern #artigo .pd-category-view .pd-filebox .pd-filenamebox{grid-column:1;grid-row:1}
body.iacri-modern #artigo .pd-category-view .pd-filebox .pd-buttons{grid-column:2;grid-row:1;margin:0}
body.iacri-modern #artigo .pd-category-view .pd-filebox .pd-fdesc{grid-column:1/-1;margin:0}
body.iacri-modern #artigo .pd-category-view .pd-filebox .pd-fdesc p{margin:0;font-size:.95em;line-height:1.65;color:var(--muted)}
body.iacri-modern #artigo .pd-category-view .pd-filebox .pd-cb,body.iacri-modern #artigo .pd-category-view .pd-filebox .pd-mirrors{display:none}
body.iacri-modern.high-contrast #artigo .contact_contato-site .accordion-group,body.iacri-modern.high-contrast #artigo .visforms-form form.visform{box-shadow:none}
@media(max-width:760px){
 body.iacri-modern #artigo .contact_contato-site .page-header h2,body.iacri-modern #artigo .visforms-form .category-desc h2,body.iacri-modern #artigo .visforms-form .category-desc>p:first-child>strong:first-child{font-size:1.65em}
 body.iacri-modern #artigo .contact_contato-site .accordion{grid-template-columns:minmax(0,1fr)}
 body.iacri-modern #artigo .contact_contato-site .accordion-group,body.iacri-modern #artigo .visforms-form form.visform{padding:18px}
 body.iacri-modern #artigo .visforms-form form.visform .row-fluid{display:block}
 body.iacri-modern #artigo .visforms-form form.bthorizontal fieldset{grid-template-columns:minmax(0,1fr)}
 body.iacri-modern #artigo .visforms-form form.bthorizontal fieldset>*{grid-column:1!important}
 body.iacri-modern #artigo .pd-category-view .pd-filebox{grid-template-columns:minmax(0,1fr)}
 body.iacri-modern #artigo .pd-category-view .pd-filebox .pd-filenamebox,body.iacri-modern #artigo .pd-category-view .pd-filebox .pd-buttons,body.iacri-modern #artigo .pd-category-view .pd-filebox .pd-fdesc{grid-column:1;grid-row:auto}
}

/* 2.0.25: accessible FAQ accordion generated from the existing article content. */
body.iacri-modern #artigo .faq-accordion{width:100%;max-width:none;margin:0;padding:0}
body.iacri-modern #artigo .faq-accordion .faq-page-title{font-size:2em!important;line-height:1.25!important;font-weight:700!important;color:var(--ink)!important;text-align:left!important;margin:0 0 28px!important;padding:0!important}
body.iacri-modern #artigo .faq-accordion .faq-page-title span,body.iacri-modern #artigo .faq-accordion .faq-page-title strong{font:inherit!important;color:inherit!important}
body.iacri-modern #artigo .faq-accordion .faq-section-title{font-size:1.25em!important;line-height:1.4!important;font-weight:700!important;color:var(--ink)!important;text-align:left!important;margin:30px 0 12px!important;padding:0!important}
body.iacri-modern #artigo .faq-accordion .faq-section-title span,body.iacri-modern #artigo .faq-accordion .faq-section-title strong{font:inherit!important;color:inherit!important}
body.iacri-modern #artigo .faq-accordion .faq-spacer{display:none!important}
body.iacri-modern #artigo .faq-accordion .faq-item{width:100%;margin:0 0 12px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 3px 12px #203c5706;overflow:hidden}
body.iacri-modern #artigo .faq-accordion .faq-question{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;min-height:56px;margin:0;padding:16px 20px;border:0;background:var(--surface);color:var(--blue);font-size:1.05em;line-height:1.5;font-weight:600;text-align:left;text-transform:none;box-shadow:none}
body.iacri-modern #artigo .faq-accordion .faq-question:hover{background:var(--pale);color:var(--blue-hover)}
body.iacri-modern #artigo .faq-accordion .faq-question[aria-expanded=true]{background:var(--pale);color:var(--ink)}
body.iacri-modern #artigo .faq-accordion .faq-chevron{display:block;flex:0 0 11px;width:11px;height:11px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .18s ease;margin:-5px 3px 0 0}
body.iacri-modern #artigo .faq-accordion .faq-question[aria-expanded=true] .faq-chevron{transform:rotate(225deg);margin:5px 3px 0 0}
body.iacri-modern #artigo .faq-accordion .faq-answer{padding:18px 20px 20px;border-top:1px solid var(--border);background:var(--surface)}
body.iacri-modern #artigo .faq-accordion .faq-answer[hidden]{display:none!important}
body.iacri-modern #artigo .faq-accordion .faq-answer p{font-size:1em;line-height:1.75;color:var(--muted);text-align:justify;margin:0 0 12px}
body.iacri-modern #artigo .faq-accordion .faq-answer p:last-child{margin-bottom:0}
body.iacri-modern.high-contrast #artigo .faq-accordion .faq-item{box-shadow:none}
@media(max-width:600px){
 body.iacri-modern #artigo .faq-accordion .faq-page-title{font-size:1.65em!important;margin-bottom:22px!important}
 body.iacri-modern #artigo .faq-accordion .faq-section-title{font-size:1.15em!important;margin-top:24px!important}
 body.iacri-modern #artigo .faq-accordion .faq-question{padding:15px 16px;font-size:1em}
 body.iacri-modern #artigo .faq-accordion .faq-answer{padding:16px}
}
@media(prefers-reduced-motion:reduce){body.iacri-modern #artigo .faq-accordion .faq-chevron{transition:none}}

/* 2.0.28: compact mobile navigation with a single-section accordion. */
@media(max-width:800px){
 body.iacri-modern #menu #portal-navigation.is-open{max-height:78vh;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:2px 0 12px;scrollbar-gutter:stable}
 body.iacri-modern #menu #portal-navigation ul.portal-menu{padding:2px 0 8px!important}
 body.iacri-modern #menu #portal-navigation ul.portal-menu>li>a{display:flex;align-items:center;min-height:52px;padding:12px 20px!important}
 body.iacri-modern #menu #portal-navigation ul.portal-menu>li.has-submenu>a{padding-right:58px!important}
 body.iacri-modern #menu #portal-navigation ul.portal-menu>li.has-submenu>.submenu-toggle{top:0;right:4px;width:48px;height:52px}
 body.iacri-modern #menu #portal-navigation ul.portal-menu ul{width:calc(100% - 32px)!important;margin:0 12px 8px 20px!important;padding:2px 0 4px 12px!important;border:0!important;border-left:2px solid rgba(255,255,255,.28)!important;border-radius:0!important;background:rgba(13,75,141,.56)!important;box-shadow:none!important;overflow:visible}
 body.iacri-modern #menu #portal-navigation ul.portal-menu ul li{border-radius:0!important}
 body.iacri-modern #menu #portal-navigation ul.portal-menu ul li:not(:last-child){border-bottom:1px solid rgba(255,255,255,.1)!important}
 body.iacri-modern #menu #portal-navigation ul.portal-menu ul a,
 body.iacri-modern #menu #portal-navigation ul.portal-menu ul .nav-header,
 body.iacri-modern #menu #portal-navigation ul.portal-menu ul .separator{display:flex;align-items:center;min-height:44px;padding:9px 12px!important;border-radius:4px!important}
 body.iacri-modern.mobile-menu-open .djacc,
 body.iacri-modern.mobile-menu-open [vw-access-button]{visibility:hidden!important;opacity:0!important;pointer-events:none!important}
}
@supports(height:100svh){@media(max-width:800px){body.iacri-modern #menu #portal-navigation.is-open{max-height:calc(100svh - 64px)}}}

/* 2.0.29: mobile-only disclosure for the complementary portal shortcuts. */
body.iacri-modern .secondary-menu-toggle{display:none}
body.iacri-modern .secondary-menu-panel{display:block}
/* 2.0.30: compact desktop toolbar for the complementary portal shortcuts. */
@media(min-width:801px){
 body.iacri-modern #portal-shortcuts{display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px;padding:11px 0;background:var(--pale)}
 body.iacri-modern .desktop-shortcuts-label{display:flex;align-items:center;gap:9px;flex:0 0 auto;color:var(--ink);font-size:.78em;font-weight:700;line-height:1.25;white-space:nowrap}
 body.iacri-modern .desktop-shortcuts-label .secondary-menu-icon{display:flex;flex:0 0 20px;width:20px;height:20px;color:var(--blue)}
 body.iacri-modern .desktop-shortcuts-label .secondary-menu-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
 body.iacri-modern #portal-shortcuts>.moduletable{flex:1 1 660px;margin:0}
 body.iacri-modern #portal-shortcuts ul.menu{display:flex;flex:1 1 660px;flex-wrap:wrap;gap:7px;margin:0;padding:0}
 body.iacri-modern #portal-shortcuts ul.menu li{display:block;float:none;width:auto;margin:0;padding:0;border:0;background:transparent!important;line-height:1.35}
 body.iacri-modern #portal-shortcuts ul.menu li a{display:flex;align-items:center;min-height:38px;padding:7px 11px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--blue);font-size:.74em;font-weight:600;line-height:1.25;box-shadow:0 2px 8px #203c5705;transition:border-color .16s ease,background-color .16s ease,color .16s ease,transform .16s ease}
 body.iacri-modern #portal-shortcuts ul.menu li a:hover,body.iacri-modern #portal-shortcuts ul.menu li a:focus-visible{border-color:var(--blue);background:#f8fbff;color:var(--blue-hover);text-decoration:none;transform:translateY(-1px)}
 body.iacri-modern #portal-shortcuts ul.menu li.active a{border-color:#9dbbe0;background:#f4f8fd;color:var(--blue);font-weight:700}
}
@media(max-width:800px){
 body.iacri-modern .menu2 .container{width:100%}
 body.iacri-modern .desktop-shortcuts-label{display:none}
 body.iacri-modern .secondary-menu-toggle{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;margin:0;padding:12px 18px;border:0;border-bottom:1px solid var(--border);background:var(--pale);color:var(--ink);font-size:.9em;font-weight:700;text-align:left}
 body.iacri-modern .secondary-menu-icon{display:flex;flex:0 0 22px;width:22px;height:22px;color:var(--blue)}
 body.iacri-modern .secondary-menu-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8}
 body.iacri-modern .secondary-menu-chevron{display:block;width:9px;height:9px;margin:0 4px 5px auto;border-right:2px solid var(--blue);border-bottom:2px solid var(--blue);transform:rotate(45deg);transition:transform .16s ease}
 body.iacri-modern .secondary-menu-toggle[aria-expanded=true] .secondary-menu-chevron{margin-top:6px;margin-bottom:0;transform:rotate(225deg)}
 body.iacri-modern.js-ready .secondary-menu-panel{display:none}
 body.iacri-modern.js-ready .secondary-menu-panel.is-open{display:block}
 body.iacri-modern #portal-shortcuts{padding:12px 18px 16px;background:var(--pale)}
 body.iacri-modern #portal-shortcuts ul.menu{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0}
 body.iacri-modern #portal-shortcuts ul.menu li{display:block;width:auto;margin:0;padding:0;background:transparent!important}
 body.iacri-modern #portal-shortcuts ul.menu li a{display:flex;align-items:center;height:100%;min-height:48px;padding:9px 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--blue);font-size:.78em;font-weight:600;line-height:1.35;box-shadow:0 2px 8px #203c5705}
 body.iacri-modern #portal-shortcuts ul.menu li a:hover,body.iacri-modern #portal-shortcuts ul.menu li a:focus-visible{border-color:var(--blue);background:var(--surface);text-decoration:none}
}
@media(max-width:360px){body.iacri-modern #portal-shortcuts ul.menu{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){body.iacri-modern .secondary-menu-chevron,body.iacri-modern #portal-shortcuts ul.menu li a{transition:none}body.iacri-modern #portal-shortcuts ul.menu li a:hover,body.iacri-modern #portal-shortcuts ul.menu li a:focus-visible{transform:none}}
