/* ==========================================================================
   FOLHA DE ESTILOS PRINCIPAL
   ========================================================================== */

/* ----------------------------------------- */
/* 1. RESET E CONFIGURAÇÕES GERAIS           */
/* ----------------------------------------- */
body { background: #ffffff; margin: 0; font-family: Roboto, 'Open Sans', Arial, sans-serif !important; }
p { margin: 0; border: none; }
ul { padding: 0; margin: 0; border: none; list-style-type: disc; }

/* ----------------------------------------- */
/* 2. TIPOGRAFIA                             */
/* ----------------------------------------- */
h2, h3, h4, h5, h6 { color: #084d75; }
h2 { margin: 0 0 30px; padding: 0; font-size: 1.7em; border: none; font-weight: 700; text-shadow: none; line-height: normal; }
h3 { margin: 0; padding: 20px 0; font-size: 1.3em; font-weight: 700; text-decoration: none; }
h4, h5 { margin: 30px 0; padding: 0; font-size: 1.1em; font-weight: 600; }
h6 { margin: 30px 0; padding: 0; font-size: 1em; font-weight: 600; }

/* ----------------------------------------- */
/* 3. ELEMENTOS GLOBAIS (LINKS E BOTÕES)     */
/* ----------------------------------------- */
a { color: #48648e; text-decoration: underline; }
a:hover { color: #0c4367; text-decoration: underline; }
a:visited { color: #6c7f93; text-decoration: underline; }
a:focus { color: #100051; }

button.veja_mais { margin: 0; width: 35%; padding: 8px 18px; border-radius: 35px; background-color: #c8cdd6; font-weight: 700; display: inline; }
button.veja_mais a { display: block; font-size: 16px; color: #182e4e; text-decoration: none; }
button.veja_mais:hover { display: block; background-color: #96a7c8; color: #fff; }
.veja_mais.button { display: inline-block; margin-top: 15px; background-color: #314A73; color: #fff; padding: 8px 15px; border-radius: 3px; text-decoration: none; transition: background-color 0.2s; }
.veja_mais.button:hover { opacity: 0.8; }

/* Remove sublinhado de elementos de UI */
.elementor-button, .elementor-icon-list-item a, #bar-topo a, .elementor-testimonial-wrapper a { text-decoration: none !important; }
.small-12.medium-9.large-9.columns a { text-decoration: underline; }

/* ----------------------------------------- */
/* 4. IMAGENS E MÍDIA                        */
/* ----------------------------------------- */
img.object-fit_fill { border-radius: 10px; }
.entry-content img { margin: 0 0 1.5em; }
.alignleft, img.alignleft { margin-right: 1.5em; display: inline; float: left; }
.alignright, img.alignright { margin-left: 1.5em; display: inline; float: right; }
.aligncenter, img.aligncenter { margin-right: auto; margin-left: auto; display: block; clear: both; }

/* Legendas de Imagens */
.wp-caption { margin-bottom: 1.5em; text-align: center; padding-top: 5px; }
.wp-caption img { border: 0 none; padding: 0; margin: 0; }
.wp-caption p.wp-caption-text { line-height: 1.5; font-size: 10px; margin: 0; }
.wp-smiley { margin: 0 !important; max-height: 1em; }

/* ----------------------------------------- */
/* 5. ESTRUTURA E CABEÇALHO (HEADER)         */
/* ----------------------------------------- */
#sup-full { width: 100%; margin: 0 auto; display: block; position: relative; background-color: #f8f8f8; padding: 0; }
#menu-header { max-width: 81rem; margin: 0 auto; display: block; position: relative; padding: 5px 0; border-top: 1px solid #ddd; }
#cabecalho { display: block; position: relative; background-size: contain; max-height: 250px; }
.modern-site-header { border: none; padding: 0; }
.header-container { max-width: 81rem; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; padding: 25px 0; }
.header-branding { display: flex; align-items: center; gap: 25px; flex: 1; }
.ufpr-logo img, .lab-logo img { max-height: 80px; width: auto; object-fit: contain; }
.lab-name span { font-size: 0.9rem; color: #a5c3ed; display: block; margin-bottom: 3px; font-weight: normal; text-transform: uppercase; letter-spacing: 1px; }
.lab-name h1 { font-size: 1.3rem; margin: 0; color: #284c80; font-weight: 600; line-height: 1.2; }
.header-search { flex-shrink: 0; min-width: 250px; }

/* Barra de Topo e Acessibilidade */
#bar-topo { background-color: #25487c; color: #ffffff; padding: 6px 0; font-size: 0.6rem; width: 100%; }
.bar-topo-wrapper { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 0px; }
#bar-topo ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: nowrap; gap: 20px; align-items: center; flex-direction: row; }
#bar-topo a { color: #ffffff; text-decoration: none; display: inline-flex; align-items: center; transition: opacity 0.2s ease; }
#bar-topo a:hover, #bar-topo a:focus { opacity: 0.8; text-decoration: underline; }
#menu_acessibilidade_left a span { background-color: rgba(255, 255, 255, 0.2); padding: 1px 6px; border-radius: 3px; font-size: 0.75rem; margin-left: 5px; font-weight: bold; }
.lang { display: inline-block; padding: 3px 3px 5px 3px; margin: 10px 10px 0px 0px; }

/* Pesquisa */
.barra_pesquisa { width: 100%; height: 2.4em; margin: 195px 0 0; color: #000; display: inline-block; }
.barra_pesquisa h3 { float: left; font-size: 1.5em; color: #23679e; font-weight: 700; top: 100px; left: 0; right: 0; z-index: 100; box-shadow: none; text-shadow: none; display: none; }
.barra_pesquisa div.busca { float: right; width: 13em; }
.barra_pesquisa .btn { margin: .5em; }
#s { position: relative; padding: 0; top: 0px; left: 10px; width: 82%; height: 100%; background-color: transparent; border: 0; outline: none; box-shadow: none; color: #1e1e1e; cursor: default; display: inline; }
#s:focus { border: none; background-color: transparent; }

/* ----------------------------------------- */
/* 6. NAVEGAÇÃO E MENUS                      */
/* ----------------------------------------- */
#menu_principal .menu, #menu_principal .menu li { background: transparent; }
#menu_responsivo, .top-bar ul, .title-bar { background-color: #25487c; }

#menu_principal a { text-decoration: none; color: #25487c; }
#menu_principal .menu { font-weight: 900; font-size: 1em; width: 100%; margin: 0; padding: 0; }
#menu_principal span { margin: 0; padding: 0; font-size: .9em; }
#menu_principal .menu li { width: 10em; text-align: center; padding: 0px 0; border-radius: 6px 6px 0 0; }
#menu_principal .menu li:last-child { border-right: none; }
#menu_principal .menu li ul { border-radius: 0 0 6px 6px; background-color: #25487c; }

/* Sub-menus */
#menu_principal .menu ul ul { list-style-type: none; padding: 0; margin: 0; }
#menu_principal .menu ul ul li { padding: 1em 0; margin: 0; }
#menu_principal .sub-menu { list-style-type: none; margin-left: 0; z-index: 1000; }
#menu_principal .sub-menu li a { padding: 6px 10px; display: inline-block; min-width: 100%; box-sizing: border-box; color: #fff; }
#menu_principal .sub-menu li { text-align: left; width: 15em; border: none; padding: 0px 10px; }
#menu_principal .sub-menu li:hover .sub-menu { display: block !important; }

/* Comportamento e Ícones Menu */
#menu_principal .dropdown.menu > li.is-dropdown-submenu-parent > a::after { content: ''; display: block; width: 0; height: 0; border: inset 6px; border-color: #446da7 transparent transparent; border-top-style: solid; border-bottom-width: 0; right: 5px; margin-top: -2px; }
#menu_principal .menu li:hover {background-color: #25487c; transition: 0.1s;}
#menu_principal .sub-menu li:hover {background-color: transparent }
#menu_principal .menu li:hover > a { color: #fff; }
#menu_principal .dropdown.menu > li.is-dropdown-submenu-parent:hover > a::after { border-color: #fff transparent transparent; }
#menu_principal li.menu-item-home, #menu-item-14171 { background: url('../img/home-ico.svg') center no-repeat !important; color: transparent !important; }
#menu_principal li.menu-item-home, li #menu-item-14171 li { width: 3em; }
#menu_principal .menu-item-home a, #menu-item-14171 a { color: transparent !important; }

/* Ícones automáticos em links */
a[href^="mailto:"]::after { content: ""; display: inline-block; width: 1em; height: 1em; background-size: contain; background-repeat: no-repeat; margin: 0 4px 0 4px; vertical-align: middle; background-image: url('../img/mail.svg'); }
.small-12.medium-9.large-9.columns a[href^="http"]:not([href*="ufpr.br"]):not([href*="lattes.cnpq.br"]):not(.elementor-button, .elementor-icon)::after { content: ""; display: inline-block; width: 1em; height: 1em; background-size: contain; background-repeat: no-repeat; margin: 0 3px 0 4px; vertical-align: middle; background-image: url('../img/externo.svg'); }
a[href^="mailto:"], a[href$=".pdf"], a[href$=".doc"], a[href$=".xls"], a[href$=".rss"], a[href$=".rdf"], a[href^="aim:"] { margin: 0; background-repeat: no-repeat; background-position: right center; }

/* ----------------------------------------- */
/* 7. CONTEÚDO PRINCIPAL (POSTS E PÁGINAS)   */
/* ----------------------------------------- */
#conteudo { min-height: 500px; color: #373737; padding: 40px 0; font-size: 110%; }
#conteudo .titulo { padding: 0; line-height: 1.1em; margin-left: 0; font-weight: 700; font-size: 120%; }
#conteudo .titulo h3 { font-size: 115%; color: #1e3a63; font-weight: 600; }
#conteudo .titulo a { font-size: .9em; color: #1e3a63; text-decoration: none; }
#conteudo .titulo a:hover { color: #999; }
#conteudo .conteudo_post { padding-right: .3em; }
#conteudo iframe { margin: 0; padding: 0; }
#conteudo span.pginternas { margin-left: 2em; }
#conteudo .sem_borda { border: none; font-size: .9em; font-weight: 400; }

/* Listas internas no conteúdo */
#conteudo ul { list-style-type: disc; list-style-position: outside; margin-left: 1.5rem; margin-bottom: 1.5rem; padding-left: 0; }
#conteudo ul ul { list-style-type: circle; margin-top: 0.5rem; margin-bottom: 0; margin-left: 1.5rem; }
#conteudo li { line-height: 1.6; margin-bottom: 0.5rem; color: inherit; }
#conteudo li:last-child { margin-bottom: 0; }
#conteudo .elementor-icon-list-items { padding: 0; margin: 0; }

/* Resumo, Categorias e Metadados */
#conteudo .resumo { padding: 0 0 25px; margin: 0 0 18px; font-size: 90%; border-bottom: 1px solid #e7e7e7; }
#conteudo .resumo p { padding: 0; margin: 0; }
#conteudo .resumo a { font-size: 1em; }
#conteudo .resumo a:hover { color: #999; }
#conteudo .lista_categorias { clear: both; font-size: .8em; color: #999; padding: .5em 1.5em; margin: 0; border-top: 1px solid #efefef; border-bottom: 1px solid #efefef; }
#conteudo .lista_categorias ul { list-style-type: none; display: inline-block; }
#conteudo .lista_categorias a { color: #999; margin-left: .5em; }
#conteudo .lista_categorias a:hover { color: #000; }
.post-meta { font-size: 80%; padding: 0 0 10px 0; margin: 0 0 10px 0; }
.post-tags { margin: 1em 0 0 0; padding: 15px; font-size: 80%; border: 1px solid #ddd; border-radius: 6px; }
#page-data { margin: 30px 0 0 0; border: none; font-size: 0.85rem; color: #666; text-align: right; }
#conteudo .data_de_publicacao { font-size: .9em; padding: 0; margin: 0 0 10px 0; }
#conteudo .data_de_publicacao span { color: #bababa !important; padding: 0 0 0 3px; line-height: .1em; }

/* Blockquotes */
blockquote.left { margin-right: 20px; text-align: right; margin-left: 0; width: 33%; float: left; }
blockquote.right { margin-left: 20px; text-align: left; margin-right: 0; width: 33%; float: right; }

/* Listagem de Posts (Archives e Grid) */
.archive-container { margin-top: 20px; margin-bottom: 40px;}
.archive-container h2 { font-size: 25px; color: #314A73; margin-bottom: 10px; border-bottom: 3px solid #ebf0f8; padding-bottom: 10px; }
.archive-description { font-size: 1.3em; color: #555; margin-bottom: 30px; line-height: 1.6; }
.archive-post.std { padding: 20px; border: 1px solid #eee; border-radius: 6px; transition: box-shadow 0.3s ease; width: 100%; box-sizing: border-box; }
.archive-post.std:hover { box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); }
.archive-post.std img { max-width: 100%; height: auto; border-radius: 3px; margin-bottom: 10px; }
.archive-post.std h3 { font-size: 1.2em; margin-bottom: 10px; line-height: 1.2; }
.archive-post.std h3 a { color: #333; text-decoration: none; }
.archive-post.std h3 a:hover { color: #084d75; }
.posts-grid { display: grid; gap: 20px; width: 100%; grid-template-columns: 1fr; }

/* Paginação e Buscas */
.erro-busca { display: block; padding: 30px; background-color: #ebf0f8; color: #4c77bd; border-radius: 6px; font-size: 1.1em; text-align: center; margin: 3em 0; font-weight: 600; }
.paginacao {text-align: center; }
.wp-pagenavi { margin-top: 40px; padding: 10px 0; letter-spacing: normal; }
.wp-pagenavi a, .wp-pagenavi span { margin-right: 6px; letter-spacing: normal; font-size: 16px; color: #fff; text-decoration: none; border-radius: 3px; background-color: #25487c; display: inline-block; border: 1px solid #f9f9f9; padding: 4px 9px !important; font-weight: bold; }
#conteudo .wp-pagenavi a { color: #b9d5eb; }
.wp-pagenavi a:hover, .wp-pagenavi span.current { background-color: rgba(255, 255, 255, 0.6); border: 1px solid rgba(0, 0, 0, 0.8) !important; color: #999; }

/* Blocos de Destaque / Informativos Especiais */
#destaque { margin-top: .6em; }
#destaque ul { margin: 0 .5em 1em 0; padding: 0; list-style-type: none; }
#destaque ul li { margin: 0; padding: 0; background: #fff; }
#destaque ul li:nth-child(odd) { background: #f1f1f1; }
#informativo, #noticia { margin: 0; padding: 0 1em; min-height: 300px; }
#informativo h3, #noticia h3 { font-size: 1em; padding: .3em 1em; background-color: #1A396A; color: #fff; letter-spacing: .2em; }
#informativo h2, #noticia h2 { font-size: 1em; margin: 0; padding: .4em 1em 0 .2em; color: #1B4991; font-weight: 700; border: none; letter-spacing: normal; }
#informativo p, #noticia p { margin: .5em .2em; padding-left: .3em; }
#informativo span, #noticia span { font-size: .8em; color: #999; font-style: italic; padding: 0 .4em; margin: 0 0 .3em; }
#informativo h2 a, #noticia h2 a { font-size: 1.2em; letter-spacing: .1em; color: #1A396A; text-decoration: none; }
#informativo h2 a:hover, #noticia h2 a:hover { color: #1B4991; }
#noticia img { float: left; margin: 0 .5em 0 0; }
#noticia .mais a, #informativo .mais a { color: #1A396A; float: right; }
#noticia .mais a:hover, #informativo .mais a:hover { color: #1B4991; }
#apresentacao h3 { font-size: 1.2em; margin: .5em .2em; padding: .2em 0; color: #1A396A; font-weight: 700; letter-spacing: .2em; }
#noticia_progepe { width: 100%; margin: 0 auto; display: grid; }
#noticia_progepe h4 { margin: 25px 0; padding: 0; font-size: 120%; font-weight: 600; }
#noticia_progepe a { text-decoration: none; }

/* Templates e Extras Diversos */
#pagina-erro { padding: 2em; margin: 3em auto; box-sizing: border-box; width: 90%; font-size: 120%; }
#pagina-erro a { text-decoration: underline; }
#filtro-busca { margin-bottom: 1em; }
#filtro-busca label { font-weight: bold; margin-right: 8px; }
#filtro-busca select { padding: 4px 8px; border-radius: 4px; border: 1px solid #ccc; }
.attachment-noticias-thumb { display: none; }
body.page-template-mais_posts .medium-3.large-3.columns.centered.hide-for-small-only { display: none !important; }

/* ----------------------------------------- */
/* 8. BARRA LATERAL (SIDEBAR / WIDGETS)      */
/* ----------------------------------------- */
#wp-block-categories-1 { height: 45px; padding: 6px 40px; border: 1px solid #cacaca; margin: 0; font-size: 15px; font-family: inherit; color: #818181; background-color: #fafafa; border-radius: 3px; }
.medium-3.large-3.columns.centered.hide-for-small-only { border: none !important; padding: 0; margin: 0; background: #fff; }
.medium-3.large-3.columns.centered.hide-for-small-only li { padding: 0 !important; margin: 0 !important; }
#sidebar_servicos, #sidebar_unidades { margin: 0; padding: 0 1em 0 0; }
#sidebar_servicos.row { clear: both; float: left; margin: 0 !important; padding: 0 1em 0 0 !important; background-color: #fff !important; }
#sidebar_unidades ul { padding: 0; margin: 0; background-color: #fff; }
#sidebar_servicos ul li, #sidebar_unidades ul li { width: 100%; float: left; padding-left: 0; text-decoration: none; }
#sidebar_unidades h5, #sidebar_servicos h5 { font-weight: 700; background-color: #efefef; margin: .6em 0 .1em; padding: .6em 0 .4em .8em; font-size: 1em; letter-spacing: normal; color: #0072bc; text-shadow: 2px 2px #e8f5ff; outline: 0; border-top: 3px solid #0072bc; }
#sidebar_servicos ul.nested ul li { margin: 0; padding: 0; }
#sidebar_servicos ul.nested ul li a { display: block; width: 100%; border-bottom: 1px solid rgba(154, 147, 147, 0.2); font-size: .9em; color: #000 !important; letter-spacing: normal; text-indent: -.1em; padding: .5em 0; margin: 0 !important; text-decoration: none; }
#sidebar_servicos ul.nested ul li:last-child { border-bottom: none !important; }
#sidebar_servicos a:hover { opacity: .7; }
#sidebar_servicos ul.nested ul li a:hover { background-color: #eeeff1; }
#sidebar_unidades ul li a:first-child { background-color: #d8d8d8; padding: 0; margin: 0; outline: 0; }
#sidebar_unidades ul.nested ul li:last-child { margin-bottom: .5em; }
#sidebar_unidades ul.nested ul li a { font-size: .95em; color: #000; border-bottom: 1px solid rgba(154, 147, 147, 0.2); background-color: #fff; letter-spacing: normal; list-style-position: inside; text-indent: -1em; padding: .5em .5em .5em 1.9em; border-radius: 0 !important; }
#sidebar_unidades ul li a::after { margin-top: .1em; border-color: #00510f transparent transparent; }
#sidebar_unidades ul.nested ul li a:hover { opacity: .7; }
#sidebar_01 ul { margin: 0; }

/* ----------------------------------------- */
/* 9. RODAPÉ (FOOTER)                        */
/* ----------------------------------------- */
#rodape-full { width: 100%; margin: 0 auto; display: block; position: relative; background-color: #314A73; padding: 0; }
#rodape .full-width-footer { width: 100%; margin: 0 auto; display: block; position: relative; background-color: #314A73; padding: 0; }
#rodape-lnks-ufpr { width: 100%; height: auto; background-color: #314A73; border: none; padding: 20px 0 0; color: #fff; }
#rodape-content { max-width: 81rem; margin: 0 auto; gap: 20px; border-bottom: 1px solid #3a5b8c; }
#rodape-principal { margin: 0 auto; background-color: #314A73; min-height: 10em; border: none; padding: 30px 0 0 0; }
.footer-info { display: flex; flex-direction: column; text-align: center; margin-bottom: 30px; color: #fff; }
.footer-info .footer-univ { font-size: 1em; font-weight: bold; margin-bottom: 10px; }
.footer-info .nomecentro, .footer-info .nomelab { font-size: 1.1em; }
#rodape-principal span { display: block; letter-spacing: 1px; line-height: 1em; }
#rodape-principal .nomecentro { font-size: 1.3em; margin-bottom: 10px; font-weight: 900;}
#rodape-principal .nomelab { margin-bottom: 10px; font-weight: 700; color: #a9c5eb; font-size: 20px; }
#rodape-principal .nome-nucleo { margin-bottom: 20px; font-weight: 700; color: #96b1cd; font-size: 1em; }
#linhasrodape { margin: 0; display: flex; flex-direction: column; gap: 8px; }
#linhasrodape span { font-size: 0.9em; line-height: 1.1; }
#linhasrodape i { font-size: 1.1em; margin-right: 5px; }
.footer-logo { display: flex; justify-content: center; align-items: center; }
.footer-logo img { max-width: 200px; height: auto; }
#copyright { border-top: 1px solid #3a5b8c; padding: 20px 0; margin-top: 30px; font-size: 11px; line-height: 1; color: #afc5d8; }
#copyright .row, #copyright .small-12, #copyright span { padding: 0; margin: 0}

/* Colunas de Links Customizados do Rodapé */
.colunas_de_links { list-style-type: none !important; color: #F2F2F2; font-size: .8em; float: left; margin: 1em 0 2em; }
.colunas_de_links h2 { margin: .2em 0 .8em; color: #333; font-weight: 400; font-size: 1.2em; border-bottom: thin solid #333; }
.colunas_de_links ul li { color: #F2F2F2; list-style-type: none !important; list-style-position: inside; margin-top: .2em; margin-left: 1.2em; padding-left: 0; display: list-item; text-indent: -13px; }
.colunas_de_links ul li a { text-decoration: none; color: #484848; line-height: 1.2em; padding: .15em 0; }
.colunas_de_links ul li a:hover { color: #0b0775; }

/* Menu rodapé */
.menula ul { padding: 0; margin: 0; }
.menula { padding: 0; margin: 0; width: 100%; box-sizing: border-box; box-shadow: none; color: #5e769d; font-weight: 600; font-size: 110%; }
.menula ul li { display: block; padding: 0px 0 0 2px; color: #663; font-weight: 600; }
.menula ul a li { color: #fff !important; }
.menula ul a { text-decoration: none; }

/* Sitemaps */
#sitemap-loader { border: 4px solid #ebf0f8; border-top: 4px solid #0072bc; border-radius: 50%; width: 40px; height: 40px; animation: girar 1s linear infinite; margin: 40px auto; }
@keyframes girar { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
#sitemap-content { display: none; }
.mapa_do_site_tree { padding: 20px; }
.mapa_do_site_tree ul { list-style: none; padding-left: 25px; margin-bottom: 0; }
.mapa_do_site_tree > ul { padding-left: 0; }
.mapa_do_site_tree li { margin-bottom: 8px; position: relative; }
.mapa_do_site_tree li a { color: #314A73; font-size: 1.1em; text-decoration: none; transition: color 0.2s ease; }
.mapa_do_site_tree li a:hover { color: #0072bc; text-decoration: underline; }


/* ----------------------------------------- */
/* 10. MEDIA QUERIES (RESPONSIVIDADE)        */
/* ----------------------------------------- */

/* Mobile Padrão (Até 640px / 39.9375em) */
@media screen and (max-width: 39.9375em) {
    #copyright span { display: inherit; }
    #pagina-erro { width: 100%; padding: 0; margin: 0 auto; }
    .tribe-events .tribe-events-l-container { padding: 0 !important; }
    #barra-brasil { display: none !important; }
    #cabecalho ul.orbit-ul, li.orbit-item { max-height: 140px; }
    #menu_principal .menu { font-size: .7em; }
    .barra_pesquisa { height: 2.3em; }
    .barra_pesquisa .busca { height: 2em; margin-top: .35em; }
    .barra_pesquisa h3 { font-size: 1.1em; }
    #menu_acessibilidade_right { text-align: center; padding: 0; }
    #editoria_banner { background-color: #fff; }
    #redes_sociais { text-align: center; }
    #redes_sociais h3 { font-size: 1em; }
    #texto_rodape span { text-align: center; padding: 0 !important; }
    #texto_rodape span img { width: 70%; }
    #noticia, #evento, #noticia_ccat, #noticia_caiss, #noticia_cdp, #noticia_cpp, #noticia_dap, #noticia_progepe { margin: 1em 0; padding: 0; }
    #acesso_rapido img { width: 27px; }
    #acesso_rapido a p { font-size: .65em; color: #006400; font-weight: 700; }
    #conteudo { padding: 40px 20px; }
    #noticia_progepe { width: 100%; margin: 0 auto; display: inline-block; }
    button.veja_mais:hover { display: inline-block; }

    /* Footer Mobile */
    #rodape-lnks-ufpr, #rodape-principal .nome-nucleo { display: none; }
    #rodape-principal .nomelab { margin-bottom: 30px; }
    #copyright { font-size: 10px; }
    #full-width-footer { padding: 0 30px; }
}

/* Intermediário (Min-width 640px) */
@media screen and (min-width: 640px) {
    .posts-grid { grid-template-columns: repeat(3, 1fr); }
    .footer-info { text-align: left; margin-bottom: 0; }
    .footer-info .footer-univ { font-size: 18px; }
    .footer-info .nome-nucleo, .footer-info #linhasrodape span:nth-child(2), .footer-info #linhasrodape span:nth-child(3) { display: flex; }
    .footer-info .nome-nucleo { flex-direction: column; margin-top: 10px; font-size: 0.9em; opacity: 0.8; }
    .footer-logo { justify-content: flex-end; margin-bottom: 0; }
}

/* Tablets / mobile grande (max 700px) */
@media screen and (max-width: 700px) {
    #post-content { padding-bottom: 40px !important; }
    #post-content img { max-width: 100%; margin: 0 0 10px !important; }
    button.veja_mais { width: 60% !important; margin: 5px 0 0 !important; }
    .medium-3.large-3.columns.centered.hide-for-small-only { display: none !important; }
    .small-12.medium-9.columns { min-width: 100% !important; margin: 0 auto; box-sizing: border-box; }
}

/* Menu e header responsivo (max 850px) */
@media screen and (max-width: 850px) {
    #menu-header {padding: 0}
    .header-container { flex-direction: column; justify-content: center; text-align: center; padding: 8px 20px; background-color:#e4e5e7; }
    .header-branding { flex-direction: column; gap: 10px; }
    .ufpr-logo, .header-search, .menu-item-home, .lab-name { display: none; }
    
    /* Acessibilidade */
    .bar-topo-wrapper { flex-direction: column; justify-content: center; text-align: center; }
    #bar-topo ul { justify-content: center; gap: 50px; }
    #bar-topo a { font-size: 0.8rem; }
    #menu_acessibilidade_left { margin-bottom: 8px; border-bottom: 1px solid rgba(255, 255, 255, 0.1); padding-bottom: 8px; width: 100%; display: none; }

    /* Menu pesquisa */
    #menu_responsivo { clear: inherit; color: #fff; text-align: left; font-weight: 900; }
    #menu_responsivo ul li { display: inline-block; border: none; padding: 5px 10px; }
    #menu_responsivo ul li a { color: #fff; padding: 5px 10px; margin: 0; box-sizing: border-box; text-decoration: none; display: inline-block; min-width: 100%; }
    #pesquisa_responsivo { padding: 6px 20px; margin: 0; background-color: #ededed; width: 100%; box-sizing: border-box; display: none; }
    #pesquisa_responsivo .busca { height: 2.3em; width: 100%; padding: 5px 0; margin: 0 auto; }
    #pesquisa_responsivo .busca .btn { float: right; background-repeat: no-repeat; background-position: right bottom; display: inline-block; vertical-align: top; padding: .2em; margin-right: .9em; margin-top: .3em; zoom: 1; border: 0; width: 17px; height: 17px; }
}

/* Tablets Grandes (40em a 63.9375em / ~640px a 1024px) */
@media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .barra_pesquisa div.busca { margin-top: 36px; }
    #cabecalho ul.orbit-ul, li.orbit-item { max-height: 200px; }
    #menu_principal .menu { font-size: .9em; text-align: center; }
    #editoria_banner { background-color: #fff; }
    .barra_pesquisa { height: 2.7em; margin-top: 6.9em; }
    .barra_pesquisa .busca { height: 2em; margin-top: .35em; }
    .barra_pesquisa h3 { font-size: 1.6em; }
    #redes_sociais h3 { font-size: 1.2em; }
    #acesso_rapido img { width: 30px; }
    #acesso_rapido a p { font-size: .7em; color: #006400; font-weight: 700; }
}

/* Telas Grandes Desktop (Min 1024px) */
@media screen and (min-width: 1024px) {
    .posts-grid { gap: 30px; } /* Simplificado e combinado com o breakpoint anterior */
    #cabecalho ul.orbit-ul, li.orbit-item { max-height: 250px; }
    #menu_principal .menu { font-size: .9em; text-align: center; }
    #editoria_banner { background-color: #fff; }
    .barra_pesquisa { height: 2.6em; }
    .barra_pesquisa .busca { height: 2em; margin-top: .35em; }
    .barra_pesquisa h3 { font-size: 1.6em; }
    #redes_sociais h3 { font-size: 1.4em; }
}

@media screen and (min-width: 960px) {
    #wrapper-footer-brasil { width: 98%; }
}

/* ----------------------------------------- */
/* 11. ESTILOS DE IMPRESSÃO (@MEDIA PRINT)   */
/* ----------------------------------------- */
@media print {
    .medium-3.large-3.columns.centered.hide-for-small-only, .small-12.show-for-small-only, #rodape-lnks-ufpr, #barra-brasil, #pesquisa_responsivo, #menu_principal, #menu_acessibilidade_left, #menu_acessibilidade_right, #redes_sociais, #footer-brasil, #copyright, .enabled, .access-button, #cabecalho { display: none !important; }
    body { background: none !important; color: #000 !important; font-family: serif !important; font-size: 12pt; line-height: 1.2; margin: 1cm; }
    body::before { content: "Conteúdo impresso em domínio institucional da Universidade Federal do Paraná (www.ufpr.br)"; display: block; text-align: center; font-size: 12pt; margin: 0 0 50px 0; padding: 10px; font-style: italic; color: #000; border-bottom: 1px solid #000; }
    main, .content, #conteudo { width: 100% !important; margin: 0 !important; padding: 0 !important; }
    * { box-shadow: none !important; text-shadow: none !important; background: transparent !important; }
    a[href]:after { display: none; }
    a { color: #000 !important; text-decoration: none !important; }
    img { max-width: 60% !important; height: auto !important; text-align: center !important; margin: 1em 0 !important; display: inline !important; }
    h1, h2, h3, h4, h5, h6, p, table, figure { page-break-inside: avoid; }
    section, #rodape-principal { page-break-before: auto; page-break-after: auto; }
    #rodape, #rodape-lnks-ufpr { margin-top: 1.5cm; padding: 0 !important; }
}