/* Centralização forçada do título e breadcrumb para page.php e páginas comuns */
.titulo-da-pagina {
    width: 100%;
    background: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
}

.div-infor-titulos {
    max-width: 1076px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 12px;
    box-sizing: border-box;
}

.breadcrumb {
    width: 100%;
    margin-bottom: 0.5rem;
}

.titulo-da-pagina-atual {
    font-family: 'Kanit', sans-serif;
    font-weight: 600;
    font-size: 40px;
    line-height: 1.03;
    color: #465564;
    margin-bottom: 0.5rem;
}

.page-description {
    font-family: 'Kanit', sans-serif;
    font-weight: 300;
    font-size: 16px;
    line-height: 1.32;
    color: #465564;
}

/* Correção: b e strong não aumentam o tamanho da fonte */
b,
strong {
    font-size: inherit !important;
}

/* Sugestões de busca do header */
.search-suggestions-container,
#search-suggestions {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.search-suggestions-container::-webkit-scrollbar,
#search-suggestions::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.search-suggestions-container {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    background: #FEFEFE;
    border: 1px solid #C5C5C5;
    max-width: none !important;
    border-radius: 8px !important;
    max-height: 320px;
    width: 100%;
    min-width: 220px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    padding: 0 12px 0 0;
    margin-top: 6px;
    display: none;
    flex-direction: column;
    gap: 8px;
    box-sizing: border-box;
    font-weight: 600;
    overflow-y: auto;
    overflow-x: hidden;
    position: absolute;
}

.search-suggestions-container.is-visible {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 6px 12px 6px 0;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}

.search-suggestions-container.has-custom-scrollbar {
    padding-right: 12px;
}

/* Certifica que o input-group pai seja posicionamento de referência */
.search-form .input-group[style],
.search-form .input-group {
    position: relative;
}

/* Modal de erro quando a busca falha (AJAX error) */
#error-suggestions-modal {
    max-width: 520px;
    width: 100%;
    border-radius: 8px;
    opacity: 1;
    padding: 16px 20px;
    gap: 8px;
    border: 1px solid #D54747;
    background: #FEFEFE;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
}

#error-suggestions-modal .material-symbols-outlined {
    font-size: 36px;
    color: #D54747;
}

#error-suggestions-modal .error-title {
    font-family: Kanit, sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    color: #D54747;
    text-align: center;
    margin-top: 4px;
}

#error-suggestions-modal .error-sub {
    font-family: Kanit, sans-serif;
    font-weight: 300;
    font-size: 14px;
    line-height: 100%;
    color: #757575;
    text-align: center;
    margin-top: 2px;
}

/* Modal content: remove fixed sizes so it adapts to viewport and centers nicely */
#no-suggestions-modal {
    width: 469px;
    height: 154px;
    border-radius: 8px;
    opacity: 1;
    padding: 16px;
    gap: 8px;
    border: 1px solid #C5C5C5;
    background: #FEFEFE;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    text-align: center;
}

#no-suggestions-modal .material-symbols-outlined {
    font-size: 40px;
    color: #757575;
}

#no-suggestions-modal>div {
    width: 100%;
}

/* Title: "Nenhum resultado encontrado." */
#no-suggestions-modal>div:nth-child(2) {
    font-family: Kanit, sans-serif;
    font-weight: 500;
    /* Medium */
    font-style: normal;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0;
    color: #757575;
    text-align: center;
    vertical-align: middle;
    margin-top: 4px;
}

/* Subtitle: "Por favor, tente outro termo." */
#no-suggestions-modal>div:nth-child(3) {
    font-family: Kanit, sans-serif;
    font-weight: 300;
    /* Light */
    font-style: normal;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0;
    color: #757575;
    text-align: center;
    vertical-align: middle;
    margin-top: 8px;
}

.search-suggestions-container .suggestion-item {
    padding: 0;
    cursor: pointer;
    transition: background 0.12s;
}


.search-suggestions-container .suggestion-item:hover,
.search-suggestions-container .suggestion-item:focus {
    background: #f9f9f9;
}

.search-suggestions-container .suggestion-footer {
    padding: 10px 20px 6px 20px;
    border-top: none;
    font-size: 14px;
}

.search-suggestions-container .suggestion-footer a {
    color: #26A737;
    text-decoration: none;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 4px;
}

.search-suggestions-container .suggestion-footer a .material-symbols-outlined {
    font-size: 18px;
}

.search-suggestions-container .suggestion-help {
    background: transparent;
    padding: 12px 16px 0;
    border-radius: 0;
    font-size: 14px;
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    box-sizing: border-box;
}

.search-suggestions-container .suggestion-help button {
    width: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 56px;
    padding: 16px;
    border-radius: 8px;
    border: 1px solid #C5C5C5;
    background: linear-gradient(90deg, #EEEEEE 0%, #D9F2EF 100%);
    cursor: pointer;
    transition: all 0.2s ease;
    box-sizing: border-box;
    white-space: nowrap;
}

.search-suggestions-container .suggestion-help button:hover {
    border-color: #17B288;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.search-suggestions-container .suggestion-help button:focus-visible {
    outline: 2px solid #545FFF;
    outline-offset: 2px;
}

.search-suggestions-container .pgbusca-avise-container {
    display: flex;
    justify-content: center;
    width: 100%;
    padding: 0 16px 16px;
    box-sizing: border-box;
}

.search-suggestions-container .pgbusca-avise-btn .material-symbols-outlined,
.search-suggestions-container .suggestion-help .material-symbols-outlined {
    font-size: 24px;
    color: #1B7727;
    flex-shrink: 0;
}

.search-suggestions-container .pgbusca-avise-text {
    font-family: Kanit, sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    color: #1B7727;
    text-decoration: underline solid #1B7727 1.5px;
    text-decoration-style: solid;
    text-decoration-thickness: 1.5px;
}

/* Dropdown-specific override to prevent page-level styles leaking into the suggestions dropdown */
.search-suggestions-container .pgbusca-avise-btn--dropdown,
#search-suggestions .pgbusca-avise-btn--dropdown {
    width: auto !important;
    max-width: calc(100% - 32px) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    height: 48px !important;
    padding: 12px 16px !important;
    border-radius: 8px !important;
    border: none !important;
    background: linear-gradient(90deg, #EEEEEE 0%, #D9F2EF 100%) !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    cursor: pointer !important;
    margin-bottom: 10px;
}

.search-suggestions-container .pgbusca-avise-btn--dropdown .material-symbols-outlined {
    font-size: 24px !important;
    color: #1B7727 !important;
}

/* Search suggestions typography and category icons */
.search-suggestions-container .suggestion-category {
    padding: 8px 16px 4px 16px;
}

.search-suggestions-container .suggestion-category strong {
    font-family: var(--font-primary);
    font-weight: 500;
    font-style: normal;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0;
    vertical-align: middle;
    color: #757575;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.search-suggestions-container .suggestion-category::before {
    font-family: 'Material Symbols Outlined';
    font-weight: normal;
    font-style: normal;
    font-size: 20px;
    line-height: 1;
    margin-right: 8px;
    color: #757575;
    display: inline-block;
    vertical-align: middle;
}

.suggestion-category--servicos::before {
    content: 'category'
}

.suggestion-category--noticias::before {
    content: 'contextual_token'
}

.suggestion-category--outros::before {
    content: 'deployed_code'
}

.search-suggestions-container .suggestion-item a {
    font-family: var(--font-primary);
    font-weight: 300;
    font-style: normal;
    font-size: 16px;
    line-height: 132%;
    letter-spacing: 0;
    color: #465564;
    display: grid;
    grid-template-columns: min-content 1fr;
    align-items: center;
    gap: 12px;
    padding: 8px 16px;
    text-decoration: none;
}

.search-suggestions-container .suggestion-item .material-symbols-outlined {
    margin: 0;
    font-size: 18px;
    color: #465564;
    flex-shrink: 0;
}

/* Hide category pseudo-icons (we place icons on each result instead) */
.search-suggestions-container .suggestion-category::before {
    display: none !important;
}

.search-suggestions-container .suggestion-item-icon {
    margin: 0;
    font-size: 20px;
    color: #465564;
    display: flex;
    align-items: center;
    justify-content: center;
}

.search-suggestions-container .suggestion-item-text {
    display: inline-block
}

.search-suggestions-container .suggestion-item-text {
    display: block;
    text-align: left;
    white-space: normal;
    word-break: break-word;
    width: 100%;
}

.search-suggestions-container .suggestion-footer a {
    font-family: var(--font-primary);
    font-weight: 500;
    font-style: normal;
    font-size: 16px;
    line-height: 100%;
    color: #465564;
    text-decoration: underline solid #465564 1px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

@media (max-width: 576px) {
    .search-suggestions-container {
        font-size: 14px;
        min-width: 160px;
        border-radius: 8px;
    }

    .search-suggestions-container .suggestion-category,
    .search-suggestions-container .suggestion-item,
    .search-suggestions-container .suggestion-footer,
    .search-suggestions-container .suggestion-help {
        padding-left: 12px;
        padding-right: 12px;
    }
}

/*
Theme Name: Governo do Estado do Ceará - 2025
Theme URI: http://ce.gov.br/
Author: Pedro Brito
Author: Cotic - Casa Civil
Author URI: mailto:informatica@casacivil.ce.gov.br
Description: Tema padrão do site do Governo do Estado do Ceará adaptado para o contexto multisite.
Version: 2.0
*/
:root {
    --font-primary: 'Kanit', sans-serif;

    /* Cores Bases */
    --color-white: #ffffff;
    --color-semiwhite: #fefefe;
    --color-gray-100: #f9f9f9;
    --color-gray-300: #c5c5c5;
    --color-gray-600: #757575;
    --color-gray-700: #465564;
    --color-black: #26323f;

    /* Cores Primárias */
    --color-primary: #007F6D;
    --color-primary-dark: #006557;
    --color-primary-25: #fafffa;
    --color-primary-50: #e9f6eb;
    --color-primary-100: #bce4c1;
    --color-primary-200: #9bd7a3;
    --color-primary-300: #6ec479;
    --color-primary-400: #51b95f;
    --color-primary-500: #26a737;
    --color-primary-600: #239832;
    --color-primary-700: #1b7727;
    --color-primary-800: #155c1e;
    --color-primary-900: #104617;


    --color-secondary: #EF6000;

    --color-leaf: #E7FFEB;

    /* Pseudos */
    --color-primary-hover: #009883;
    --color-primary-active: #006557;
    --color-primary-focus: #545FFF;
}

body {
    background-color: #F9F9F9;
}

@media (min-width: 1200px) {
    .container {
        max-width: 1080px !important;
    }
}

/* Tipografia */
.hero {
    font-family: var(--font-primary);
    font-weight: 600;
    font-size: 40px;
    line-height: 1.03em;
    letter-spacing: 0;
}

.titulo {
    font-family: var(--font-primary);
    font-weight: 400;
    font-size: 24px;
    line-height: 1em;
    letter-spacing: 0;
}

.subtitulo {
    font-family: var(--font-primary);
    font-weight: 300;
    font-size: 20px;
    line-height: 1em;
    letter-spacing: 0;
}

.destaque {
    font-family: var(--font-primary);
    font-weight: 500;
    font-size: 16px;
    line-height: 1em;
    letter-spacing: 0;
}

.footer-ouvidoria-link:hover {
    text-decoration: underline !important;
}

.corpo {
    font-family: var(--font-primary);
    font-weight: 300;
    font-size: 16px;
    line-height: 1.3em;
    letter-spacing: 0;
}

/* Backgrounds */
.bg-gradient-primary {
    background: linear-gradient(90deg, #008774 0%, #40B14F 100%);
}

.bg-gradient-secondary {
    background: linear-gradient(90deg, #F8620B, #EB9E0B);
}

.bg-primary {
    background-color: var(--color-primary) !important;
}

.bg-primary-25 {
    background-color: var(--color-primary-25);
}

.bg-primary-50 {
    background-color: var(--color-primary-50);
}

.bg-primary-100 {
    background-color: var(--color-primary-100);
}

.bg-primary-200 {
    background-color: var(--color-primary-200);
}

.bg-primary-300 {
    background-color: var(--color-primary-300);
}

.bg-primary-400 {
    background-color: var(--color-primary-400);
}

.bg-primary-500 {
    background-color: var(--color-primary-500);
}

.bg-primary-600 {
    background-color: var(--color-primary-600);
}

.bg-primary-700 {
    background-color: var(--color-primary-700);
}

.bg-primary-800 {
    background-color: var(--color-primary-800);
}

.bg-primary-900 {
    background-color: var(--color-primary-900);
}

.bg-active {
    background: #EEEEEE;
    background: -webkit-linear-gradient(90deg, rgba(238, 238, 238, 1) 50%, rgba(217, 242, 239, 1) 100%);
    background: -moz-linear-gradient(90deg, rgba(238, 238, 238, 1) 50%, rgba(217, 242, 239, 1) 100%);
    background: linear-gradient(90deg, rgba(238, 238, 238, 1) 50%, rgba(217, 242, 239, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#EEEEEE",
            endColorstr="#D9F2EF",
            GradientType=1);
}

/* Text Colors */
.text-white {
    color: var(--color-white);
}

.text-gray-100 {
    color: var(--color-gray-100);
}

.text-gray-300 {
    color: var(--color-gray-300);
}

.text-gray-600 {
    color: var(--color-gray-600);
}

.text-gray-700 {
    color: var(--color-gray-700) !important;
}

.text-black {
    color: var(--color-black);
}

.text-primary-25 {
    color: var(--color-primary-25);
}

.text-primary-50 {
    color: var(--color-primary-50);
}

.text-primary-100 {
    color: var(--color-primary-100);
}

.text-primary-200 {
    color: var(--color-primary-200);
}

.text-primary-300 {
    color: var(--color-primary-300);
}

.text-primary-400 {
    color: var(--color-primary-400);
}

.text-primary-500 {
    color: var(--color-primary-500);
}

.text-primary-600 {
    color: var(--color-primary-600);
}

.text-primary-700 {
    color: var(--color-primary-700);
}

.text-primary-800 {
    color: var(--color-primary-800);
}

.text-primary-900 {
    color: var(--color-primary-900);
}

.text-secondary {
    color: var(--color-secondary) !important;
}

/* Font Weight Utilities */
/* Font Weight Utilities with !important */
.fw-100 {
    font-weight: 100 !important;
}

.fw-200 {
    font-weight: 200 !important;
}

.fw-300 {
    font-weight: 300 !important;
}

.fw-400 {
    font-weight: 400 !important;
}

.fw-500 {
    font-weight: 500 !important;
}

.fw-600 {
    font-weight: 600 !important;
}

.fw-700 {
    font-weight: 700 !important;
}

.fw-800 {
    font-weight: 800 !important;
}

.fw-900 {
    font-weight: 900 !important;
}

.btn-outline-cc {
    line-height: 1em;
    font-size: 20px;
    font-family: var(--font-primary);
    font-weight: 400 !important;
    color: var(--color-semiwhite);
    border: 1px solid var(--color-primary-300);
    border-radius: 15px;
    padding: 8px 16px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.btn-outline-cc:hover {
    background-color: var(--color-primary-500);
    color: var(--color-semiwhite);
    border: 2px solid var(--color-semiwhite);
}

.btn-outline-cc:active {
    background-color: var(--color-primary-700) !important;
    color: var(--color-semiwhite) !important;
    border: 2px solid var(--color-semiwhite) !important;
}

.btn-outline-cc:focus,
.btn-outline-cc:focus-visible {
    background-color: var(--color-primary-400);
    color: var(--color-semiwhite);
    border: 2px solid var(--color-primary-focus);
}

.btn-icon-cc {
    line-height: 1em;
    font-size: 20px;
    font-family: var(--font-primary);
    font-weight: 400 !important;
    color: var(--color-semiwhite);
    border: 1px solid transparent;
    border-radius: 4px;
    padding: 0px 1px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-icon-cc:hover {
    background-color: var(--color-primary-700);
    color: var(--color-semiwhite);
    border: 1px solid transparent;
}

.btn-icon-cc:active {
    background-color: var(--color-primary-400) !important;
    color: var(--color-semiwhite) !important;
    border: 1px solid transparent !important;
}

.btn-icon-cc:focus,
.btn-icon-cc:focus-visible {
    background-color: transparent;
    color: var(--color-semiwhite);
    border: 1px solid var(--color-primary-focus);
}



main {
    margin-bottom: -10px;
}

.SinglePage em {
    font-style: italic;
}


/* Títulos */

.cc-bootstrap-wrapper h2.title {
    font-family: 'Geomanist Regular' !important;
}

.cc-bootstrap-wrapper h2.title {
    font-size: 20px;
}

/* Estilo específico para o título do módulo "Todas as notícias" */
.cc-bootstrap-wrapper.cc-all-posts-module h2.title {
    font-family: 'Kanit', sans-serif !important;
    font-weight: 500 !important;
    font-style: normal !important;
    font-size: 24px !important;
    leading-trim: none !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    vertical-align: middle !important;
    color: #26323F !important;
}

/* Ícone à esquerda do título 'Todas as notícias' */
.cc-bootstrap-wrapper.cc-all-posts-module h2.title .header-icon {
    font-variation-settings: 'wght' 500;
    /* ajustar peso se necessário */
    font-size: 26px !important;
    vertical-align: middle;
    margin-right: 12px;
    color: #465564;
    display: inline-block;
}


/* Cores */

.cc-bootstrap-wrapper .orange {
    color: #00a84a;
}


/* All Posts Module */

.cc-bootstrap-wrapper.cc-all-posts-module {
    padding-top: 25px;
    padding-bottom: 40px;
}

/* Estilos específicos para `.container` quando dentro do módulo de todas as notícias */
.cc-bootstrap-wrapper.cc-all-posts-module>.container,
.cc-bootstrap-wrapper.cc-all-posts-module .container {
    background: #FEFEFE !important;
    border: 1px solid #C5C5C5 !important;
    border-radius: 16px !important;
    padding: 24px !important;
    /* tornar coluna flex para respeitar gap (se necessário) */
    display: flex !important;
    flex-direction: column !important;
}

/* Regras mais específicas para garantir aplicação quando houver CSS concorrente */
body.home .cc-bootstrap-wrapper.cc-all-posts-module .container,
body.blog .cc-bootstrap-wrapper.cc-all-posts-module .container,
.page .cc-bootstrap-wrapper.cc-all-posts-module .container,
.archive .cc-bootstrap-wrapper.cc-all-posts-module .container {
    background: #FEFEFE !important;
    border: 1px solid #C5C5C5 !important;
    border-radius: 16px !important;
    padding: 24px !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Forçar alinhamento do título e ícone */
.cc-bootstrap-wrapper.cc-all-posts-module h2.title {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    font-family: 'Kanit', sans-serif !important;
    font-weight: 500 !important;
    font-size: 24px !important;
    line-height: 1 !important;
    color: #465564 !important;
    margin: 0 0 16px 0 !important;
}

.cc-bootstrap-wrapper.cc-all-posts-module h2.title .header-icon {
    font-size: 26px !important;
    line-height: 1 !important;
    display: inline-flex !important;
    vertical-align: middle !important;
    margin-right: 6px !important;
    color: #465564 !important;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-metas {
    font-family: "OpenSans-Bold", Helvetica, Arial, sans-serif;
    text-transform: uppercase;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-metas span.cc-post-metas-category {
    color: #00a84a;
    font-size: 12px;
    line-height: 12px;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-metas span.cc-post-metas-separator {
    color: #afafaf;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-metas span.cc-post-metas-date {
    color: #b4b3b2;
    font-size: 11px;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post a.cc-post-title {
    color: #000;
    margin-bottom: 10px;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post a.cc-post-title:hover {
    color: #00a84a;
    text-decoration: none;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post a.cc-post-title h3::before {
    /* height: 100%;
    max-height: 69px;
    max-width: 4px;
    background: #00a84a;
    color: #00a84a;
    content: "cc";
    position: absolute;
    left: 15px;
    top: 5px;
    overflow: hidden; */
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post a.cc-post-title h3 {
    font-family: "OpenSans-Semibold", Helvetica, Arial, sans-serif;
    font-size: 20px;
    line-height: 24px;
    min-height: 69px;
    padding-left: 15px;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post div.cc-post-excerpt {
    font-family: 'Kanit', sans-serif !important;
    font-weight: 300 !important;
    font-style: normal !important;
    font-size: 16px !important;
    leading-trim: none !important;
    line-height: 1.32 !important;
    letter-spacing: 0 !important;
    color: #26323F !important;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post div.cc-post-excerpt p {
    color: #6b6b6b;
    font-family: 'Geomanist Regular' !important;
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 0;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post hr.cc-divider {
    border-bottom: 1px solid #9a9a9a;
    margin-top: 20px;
    margin-bottom: 15px;
}

/* Mapear estilos do card de busca (pgbusca-noticia-card) para o markup atual (.cc-post) */
.cc-bootstrap-wrapper.cc-all-posts-module .cc-post {
    display: block;
    padding: 12px 0;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-thumbnail img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 8px;
    object-fit: cover;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-title h3 {
    font-family: var(--font-primary);
    font-weight: 600;
    font-size: 20px;
    line-height: 1.2;
    margin: 0 0 8px 0;
    color: #26323F;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-excerpt {
    color: #6b6b6b;
    font-family: 'Geomanist Regular', Arial, sans-serif;
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 0;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-metas {
    font-family: 'OpenSans-Bold', Helvetica, Arial, sans-serif;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-metas span.cc-post-metas-category {
    color: #00a84a;
    font-size: 12px;
    line-height: 12px;
}

/* Layout responsivo similar ao card original */
@media (min-width: 576px) {
    .cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-content {
        align-items: start;
    }

    .cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-thumbnail {
        margin-bottom: 0;
    }
}

/* Ajuste específico: definir largura fixa da coluna esquerda (thumb) dentro de .cc-post-content */
@media (min-width: 576px) {
    .cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-content .col-12.col-sm-5 {
        width: 24.666667% !important;
        -ms-flex: 0 0 28.666667% !important;
        flex: 0 0 25.666667% !important;
        max-width: 28.666667% !important;
    }
}

@media (max-width: 575px) {
    .cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-thumbnail img {
        border-radius: 6px;
    }
}

/* Ajustes finos para ficar igual ao layout referenciado */
.cc-bootstrap-wrapper.cc-all-posts-module .cc-post {
    padding: 10px 0;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post-thumbnail {
    max-width: 234px;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post-thumbnail img {
    width: 234px;
    height: 150px;
    object-fit: cover;
    border-radius: 8px;
    display: block;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-title h3 {
    font-size: 22px;
    font-weight: 700;
    color: #26323f;
    margin-bottom: 6px;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-excerpt {
    margin-bottom: 8px;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-readmore {
    display: inline-block;
    color: #007F6D;
    font-weight: 600;
    font-size: 13px;
    text-decoration: none;
}

.cc-bootstrap-wrapper.cc-all-posts-module .cc-post .cc-post-readmore:hover {
    text-decoration: underline;
}

@media (max-width: 576px) {
    .cc-bootstrap-wrapper.cc-all-posts-module .cc-post-thumbnail img {
        width: 100%;
        height: auto;
    }
}


/* Search Module */

.cc-bootstrap-wrapper.cc-search-module .cc-search-module-nav {
    border-bottom: 1px solid #c5c5c4;
}

.cc-bootstrap-wrapper.cc-search-module .cc-search-module-nav-item-link {
    color: #b4b3b2;
    font-family: 'Geomanist Regular' !important;
    font-size: 28px;
    line-height: 1em;
    border: 1px solid #c5c5c4 !important;
    border-radius: 0;
    padding: 10px 25px;
    letter-spacing: 1px;
    border-left: 0 !important;
}

.cc-bootstrap-wrapper.cc-search-module .cc-search-module-nav-item-link:hover {
    background: rgba(0, 0, 0, 0.03);
}

.cc-bootstrap-wrapper.cc-search-module .cc-search-module-nav-item-link.active {
    background: #FFF !important;
    color: #00a84a;
    border-bottom: 1px solid #fff !important;
    cursor: default;
}

.cc-bootstrap-wrapper.cc-search-module .cc-search-module-nav-item:first-child .cc-search-module-nav-item-link {
    border-left: 1px solid #c5c5c4 !important;
}

.cc-bootstrap-wrapper.cc-search-module .cc-search-module-result-title {
    font-family: 'isidora_sansbold', Helvetica, Arial, sans-serif !important;
    text-transform: uppercase;
    letter-spacing: 0;
    font-size: 18px;
    color: #b4b3b2;
    margin-top: 30px;
    margin-bottom: 10px;
}

.cc-bootstrap-wrapper.cc-search-module .cc-search-module-result-title-value {
    font-size: 12px;
    line-height: 1em;
    text-transform: uppercase;
    margin-top: 4px;
    letter-spacing: 1px;
}

.cc-bootstrap-wrapper.cc-search-module .cc-search-module-nav-item-link.active .cc-search-module-result-title-value {
    color: #b4b3b2 !important;
}

.cc-bootstrap-wrapper.cc-search-module .card {
    border: 0;
    border-radius: 0 !important;
}

.cc-bootstrap-wrapper.cc-search-module .card-header {
    background: transparent;
    border: 0;
    border-bottom: 2px solid #00a84a;
    padding: 0;
}

.cc-bootstrap-wrapper.cc-search-module .card-body {
    background-color: #f4f4f4;
    font-size: 16px;
    font-family: 'isidora_sans', Helvetica, Arial, sans-serif !important;
    line-height: 1.5em;
}

.cc-bootstrap-wrapper.cc-search-module .card-body ol li,
.cc-bootstrap-wrapper.cc-search-module .card-body ul li {
    font-family: 'isidora_sans', Helvetica, Arial, sans-serif !important;
    font-size: 16px;
}

.cc-bootstrap-wrapper.cc-search-module .card-body a {
    line-height: 1em;
    font-family: 'isidora_sansbold', Helvetica, Arial, sans-serif !important;
    font-size: 16px;
    color: #00a84a !important;
}

.cc-bootstrap-wrapper.cc-search-module .card-header button {
    text-decoration: none;
    padding: 15px 0 12px;
    line-height: 1em;
    border-radius: 0;
}

.cc-bootstrap-wrapper.cc-search-module .card-header span {
    color: #495057;
    font-weight: 600;
    font-size: 15px;
    text-transform: uppercase;
    font-family: 'isidora_sansbold', Helvetica, Arial, sans-serif !important;
    white-space: normal !important;
}

.cc-bootstrap-wrapper.cc-search-module .card-header svg {
    fill: #495057;
    overflow: visible;
}

.cc-bootstrap-wrapper.cc-search-module .card-header button:hover {
    border-radius: 0;
}

.cc-bootstrap-wrapper.cc-search-module .card-header button:hover span {
    color: #00a84a;
}

.cc-bootstrap-wrapper.cc-search-module .card-header button:hover svg {
    fill: #00a84a;
}


/* CC Cookies Module */

.cc-cookies {
    display: none;
    width: 100%;
    background: #00bd19;
    padding: 10px 25px;
    position: fixed;
    bottom: 0;
    z-index: 99999999;
    flex-direction: row;
    gap: 25px;
    justify-content: space-between;
    align-items: center;
    box-sizing: border-box;
    max-width: 100vw;
    overflow-wrap: break-word;
    word-break: break-word;
    flex-wrap: wrap;
}

.cc-cookies p {
    font-family: 'Geomanist Regular' !important;
    font-size: 14px;
    line-height: 1.2em;
    color: #FFF;
    word-break: break-word;
    max-width: 100%;
}

.cc-cookies p a {
    color: #FFF;
    font-weight: bold;
}

.cc-cookies p a:hover {
    text-decoration: underline;
}

.cc-cookies button {
    font-family: 'Geomanist Regular' !important;
    font-size: 16px;
    font-weight: bold;
    background: #00a84a;
    border-color: #00a84a;
    padding: 8px 20px;
    line-height: 1;
}

.cc-cookies button:hover {
    background-color: #ffbd00;
    background-color: #ffbd00;
    -webkit-transition: background-color 0.1s;
    transition: background-color 0.1s;
}

.titulo .material-symbols-outlined {
    font-size: 28px;
}

/* Pesquisa mobile */
form.form-search-mobile input {
    border: 0 !important;
    border-radius: 0 !important;
}

form.form-search-mobile button {
    padding: 0 5px !important;
    background: #ffdb33 !important;
    border: 0 !important;
    border-radius: 0 !important;
}

form.form-search-mobile button img {
    max-width: 30px !important;
    max-height: 30px !important;
}

header#main-header>.container {
    /* border-top: 1px solid rgba(218, 217, 216, 0.5); */
}

header#main-header #top-menu li a {
    padding-left: 32px;
    padding-right: 32px;
}

header#main-header #top-menu li:not(:last-child) {
    border-right: 1px solid #fff;
}


header#main-header #top-menu li:first-child .nav-link {
    padding-left: 0 !important;
}

header#main-header #top-menu a {
    font-family: var(--font-primary);
    font-size: 16px;
    font-weight: 500;
    line-height: 1em;
}

header#main-header {
    background: linear-gradient(90deg, #007F6D 0%, #139352 74.04%, #26A737 100%);
    position: relative;
    z-index: 1001;
}

header#main-header #top-bar {
    /* background: linear-gradient(90deg, #008774 0%, #40B14F 100%); */
    min-height: 40px;
}

header#main-header #main-infos {
    padding-top: 29px;
    padding-bottom: 29px;
}

.swiper-slide a {
    outline: none;
}

.swiper-slide a .swiper-item {
    text-align: center;
    min-height: 200px;
    border-radius: 4px;
    border: 1px solid var(--color-gray-300);
    border-bottom: 5px solid var(--color-primary-700);
    background-color: var(--color-white);
    transition: background-color 0.15s ease-in-out;
}

.swiper-slide a:hover .swiper-item {
    background-color: var(--color-primary-50);
}

.swiper-slide a:focus .swiper-item,
.swiper-slide a:active .swiper-item {
    background: #EEEEEE;
    background: -webkit-linear-gradient(90deg, rgba(238, 238, 238, 1) 50%, rgba(217, 242, 239, 1) 100%);
    background: -moz-linear-gradient(90deg, rgba(238, 238, 238, 1) 50%, rgba(217, 242, 239, 1) 100%);
    background: linear-gradient(90deg, rgba(238, 238, 238, 1) 50%, rgba(217, 242, 239, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#EEEEEE",
            endColorstr="#D9F2EF",
            GradientType=1);
}

.swiper-navigation .swiper-button {
    color: var(--color-white);
    background-color: var(--color-primary-700);
    border-radius: 8px;
    border: none;
    padding: 10px 11px 10px 9px;
    display: flex;
    align-items: center;
    justify-content: center;
}


.swiper-navigation .swiper-button:hover {
    background-color: var(--color-primary-800);
}

.swiper-navigation .swiper-button.swiper-button-next-custom {
    padding: 10px 9px 10px 11px;
}

.swiper-navigation .swiper-button.swiper-button-disabled {
    background-color: var(--color-gray-300) !important;
}

footer .divider {
    margin-bottom: -1px;
    width: 100%;
    padding: 0;
    background: url(./assets/images/divider.gif);
    height: 36px;
    background-size: cover;
    background-position: center center;
}

footer .container-middle {
    padding-top: 55px;
    padding-bottom: 55px;
}

footer .container-middle .logo-footer {
    max-width: 450px;
}

/* Remove margin-top (gutter y) dos cols do footer principal */
footer .footer-contact-row>[class*="col-"] {
    margin-top: 0 !important;
}

/* Remove margem superior indesejada no bloco de contato do footer (inspector: 24px) */
footer .container-middle .d-flex.flex-column.gap-2 {
    margin-top: 0 !important;
}


footer .container-middle i.material-icons-outlined {
    font-size: 19px;
}

/* Ajuste específico do gap na coluna do footer - apenas desktop */
@media (min-width: 768px) {
    .footer-contact-row .col-left {
        margin-left: 5.5rem !important;
    }

    .footer-contact-row .col-right {
        margin-right: 5.5rem !important;
    }

    footer .gap-3 {
        gap: 1.7rem !important;
    }
}

/* Ajuste do padding no footer */
footer .py-4 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Ajuste para mobile */
@media (max-width: 767px) {
    .footer-contact-row .col-left {
        margin-bottom: 20px;
    }

    footer .container-middle .logo-footer {
        max-width: 350px;
    }
}

/* Sidebar */
aside {
    /* padding: 0 0 32px; */
    margin-bottom: -32px;
    z-index: 9999;
}

aside a,
aside button {
    color: var(--color-semiwhite) !important;
    background-color: transparent !important;
    display: flex !important;
    flex-direction: row;
    align-items: center;
    justify-content: start;
    text-decoration: none !important;
    gap: 8px;
    padding: 4px !important;
    margin: 12px 24px 12px;
    border-radius: 4px !important;
    border: 2px solid transparent !important;
}

aside a span.text-button,
aside button span.text-button {
    font-family: var(--font-primary);
    font-weight: 500;
    font-size: 16px;
    line-height: 1.5em;
    max-width: 150px;
    text-align: left !important;
}

aside a:hover,
aside button:hover {
    background-color: var(--color-primary-hover) !important;
}

aside a:active,
aside button:active {
    background-color: var(--color-primary-active) !important;
}

aside a:focus,
aside button:focus {
    border: 2px solid var(--color-primary-focus) !important;
    box-shadow: none !important;
}

aside.toggled a[aria-expanded=true],
aside.toggled button[aria-expanded=true] {
    background-color: var(--color-black) !important;
}

aside a[aria-expanded=true],
aside button[aria-expanded=true] {
    background-color: transparent !important;
}

aside a:hover span.text-button,
aside button:hover span.text-button {
    text-decoration: underline !important;
}

aside.toggled a span.text-button,
aside.toggled button span.text-button {
    display: none;
}

aside a .opened,
aside.toggled a .closed,
aside button .opened,
aside.toggled button .closed {
    display: none;
}

aside a .closed,
aside.toggled a .opened,
aside button .closed,
aside.toggled button .opened {
    display: flex;
}

aside.toggled a,
aside.toggled button {
    justify-content: center !important;
}

aside #cc-mais-sites,
aside .cc-mais-sites {
    background-color: var(--color-primary-active);
}


aside #cc-mais-sites ul li a,
aside .cc-mais-sites ul li a,
aside #cc-mais-sites ul li .nav-link,
aside .cc-mais-sites ul li .nav-link {
    border: 0 !important;
    border-color: transparent !important;
    transition: none;
    color: var(--color-semiwhite) !important;
    background-color: var(--color-primary-active) !important;
    padding: 10px 22px !important;
    display: block !important;
    text-decoration: none !important;
}

aside #cc-mais-sites ul li:hover a,
aside .cc-mais-sites ul li:hover a,
aside #cc-mais-sites ul li:hover .nav-link,
aside .cc-mais-sites ul li:hover .nav-link {
    border: 0 !important;
    border-color: transparent !important;
    background: linear-gradient(90deg, #008774 0%, var(--color-primary-500) 100%) !important;
}

aside.toggled #cc-mais-sites,
aside.toggled .cc-mais-sites {
    position: fixed;
    left: 90px;
    z-index: 9999;
    background-color: #e3e3e3;
    border-radius: 8px;
    overflow: hidden;
}

aside.toggled #cc-mais-sites ul li a,
aside.toggled .cc-mais-sites ul li a {
    color: var(--color-gray-700) !important;
    background-color: #e3e3e3 !important;
    margin: 0;
    border-radius: 0 !important;
    justify-content: start !important;
}

aside.toggled #cc-mais-sites ul li:last-child a,
aside.toggled .cc-mais-sites ul li:last-child a {
    border-bottom-right-radius: 8px !important;
    border-bottom-left-radius: 8px !important;
}

aside.toggled #cc-mais-sites ul li a:hover,
aside.toggled .cc-mais-sites ul li a:hover {
    color: var(--color-semiwhite) !important;
    background: linear-gradient(90deg, #008774 0%, var(--color-primary-500) 100%) !important;
}

aside .header-menu {
    display: none;
}

aside.toggled .header-menu {
    display: block;
    width: 100%;
}

aside ul {
    list-style: none;
}

aside ul li {
    max-width: 100%;
    min-width: 100px;
}

aside .header-menu {
    font-family: var(--font-primary);
    font-weight: 500 !important;
    font-size: 16px;
    line-height: 1.5em;
    padding: 10px 22px !important;
    background: var(--color-primary-active);
    color: var(--color-semiwhite);
    border-radius: 8px 8px 0 0;
    text-align: center;
    width: 100%;
    white-space: nowrap;
}

aside ul li a {
    font-family: var(--font-primary);
    font-weight: 500 !important;
    font-size: 16px;
    line-height: 1.5em;
    padding: 10px 22px !important;
    max-width: 100%;
    background: transparent;
    margin: 0;
    border-radius: 0 !important;
    border: 2px solid transparent !important;
    border-color: transparent !important;
}

aside .arrow {
    font-size: 16px !important;
}

aside button[aria-expanded=true] .arrow-up {
    display: flex;
}

aside button[aria-expanded=true] .arrow-down {
    display: none;
}

aside button[aria-expanded=false] .arrow-down {
    display: flex;
}

/* Scroll para menu lateral desktop com muitos itens */
aside .position-sticky.h-75 {
    max-height: calc(100vh - 40px);
    /* Usa quase toda a altura disponível, deixando margem */
    overflow-y: auto;
    scrollbar-width: thin;
    /* Firefox */
    scrollbar-color: rgba(255, 255, 255, 0.3) transparent;
}

/* Webkit scrollbars para aside */
aside .position-sticky.h-75::-webkit-scrollbar {
    width: 6px;
}

aside .position-sticky.h-75::-webkit-scrollbar-track {
    background: transparent;
}

aside .position-sticky.h-75::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.3);
    border-radius: 3px;
}

aside .position-sticky.h-75::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.5);
}

aside button[aria-expanded=false] .arrow-up {
    display: none;
}

aside.toggled .arrow {
    display: none !important;
}

.aside-tooltip .tooltip-inner {
    font-family: var(--font-primary);
    font-weight: 500 !important;
    font-size: 16px;
    line-height: 1.5em;
    border-radius: 8px;
    background-color: var(--color-black);
    padding: 8px 16px;
    color: var(--color-semiwhite);
}

.aside-tooltip .tooltip-arrow {
    display: none;
}



aside #cc-gtranslate {
    margin-top: 244px;
}

aside #cc-gtranslate #cc-gtranslate-target {
    background-color: var(--color-primary-dark);
}

aside #cc-gtranslate .gtranslate_wrapper {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0;
    margin: 0;
}

aside #cc-gtranslate img {
    border: 1px solid var(--color-semiwhite);
    border-radius: 4px;
    width: 28px;
    height: 20px;
}

aside #cc-gtranslate .gtranslate_wrapper a.glink {
    color: var(--color-semiwhite);
    font-family: var(--font-primary);
    font-weight: 500 !important;
    font-size: 16px;
    line-height: 1.5em;
    padding: 10px 22px !important;
    max-width: 100%;
    min-width: 140px;
    background: transparent;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    justify-content: start;
    margin: 0;
    border-radius: 0 !important;
    border: 0 !important;
}

aside #cc-gtranslate .gtranslate_wrapper a.glink img {
    width: 22px;
    height: 16px;
    opacity: 1;
}

aside #cc-gtranslate .gtranslate_wrapper a.glink:hover {
    background: linear-gradient(90deg, #008774 0%, var(--color-primary-500) 100%);
    color: var(--color-semiwhite) !important;
}

/* Ajuste para estado toggled do menu lateral, garantindo que o dropdown de idiomas fique posicionado corretamente e com estilo adequado */
aside.toggled #cc-gtranslate #cc-gtranslate-target {
    position: fixed;
    z-index: 9999;
    top: 733px !important;
    left: 89px !important;
    background-color: #e3e3e3;
    border-radius: 8px;
    overflow: hidden;
}

aside.toggled #cc-gtranslate .gtranslate_wrapper a.glink {
    color: var(--color-black) !important;
    margin: 0;
    border-radius: 0 !important;
    justify-content: start !important;
}

aside.toggled #cc-gtranslate .gtranslate_wrapper a.glink:hover {
    color: var(--color-semiwhite) !important;
}

aside.toggled #cc-gtranslate .gtranslate_wrapper a.glink:last-of-type {
    border-bottom-right-radius: 8px !important;
    border-bottom-left-radius: 8px !important;
}

#main-content {
    margin-bottom: -32px;
    overflow-x: hidden;
}

header {
    border-bottom-right-radius: 8px;
}

header .search-form .input-group {
    border: 2px solid transparent;
    background:
        linear-gradient(#fff, #fff) padding-box,
        /* fundo do input */
        linear-gradient(to right, rgba(31, 166, 55, 1), rgba(90, 193, 212, 1)) border-box;
    /* degradê na borda */
    background-clip: padding-box, border-box;
}

header .search-form .input-group {
    border-radius: 32px !important;
}

header .search-form .input-group .input-group-text:first-child {
    border-radius: 32px 0 0 32px !important;
}

header .search-form .input-group .input-group-text:last-child {
    border-radius: 0 32px 32px 0 !important;
}

header .search-form .input-group .form-control {
    border-radius: 0 !important;
}

header .search-form .input-group .input-group-text {
    color: var(--color-gray-700) !important;
    background: transparent !important;
    border: none !important;
}

header .search-form .form-control {
    font-family: var(--font-primary);
    font-weight: 400 !important;
    font-size: 15px;
    line-height: 1em;
    box-shadow: none;
    background: transparent !important;
}

header #main-menu {
    background-color: var(--color-primary-dark);
    border-bottom-right-radius: 8px;
    transition: all 0.25s ease;
}

header #main-menu a {
    font-size: 20px;
    color: var(--color-semiwhite);
    font-family: var(--font-primary);
    font-weight: 400 !important;
    line-height: 1em;
    transition: all 0.25s ease;
    border-radius: 8px;
    border: 2px solid transparent;
}

header #main-menu a.show,
header #main-menu a:hover,
header #main-menu a:active {
    text-decoration: underline;
    transition: all 0.25s ease;
}

header #main-menu a:focus,
header #main-menu a:focus-visible {
    box-shadow: none;
    text-decoration: underline;
    border: 2px solid var(--color-primary-focus);
}


header #main-menu .dropdown-toggle.no-caret::after {
    display: none !important;
}

header #main-menu .material-icons {
    font-size: 18px;
    vertical-align: middle;
    transition: all 0.25s ease;
}

header #main-menu .dropdown-toggle.show .material-icons {
    transform: rotate(-180deg);
}

header #main-menu .dropdown-menu {
    padding: 0;
    background-color: var(--color-semiwhite);
    border: 1px solid var(--color-gray-300);
    border-radius: 8px;
}


header #main-menu .dropdown-menu li {
    padding: 0;
    transition: all 0.25s ease;
}

header #main-menu .dropdown-menu li a {
    font-size: 16px;
    font-family: var(--font-primary);
    font-weight: 500 !important;
    line-height: 1em;
    color: var(--color-gray-600);
    text-align: left;
    padding: 8px 24px;
    transition: all 0.25s ease;
    background-color: transparent !important;
    text-decoration: none;
    border-radius: 8px;
}

header #main-menu .dropdown-menu li:hover {
    background-color: var(--color-leaf);
    transition: all 0.25s ease;
    border-radius: 8px;
}

header #main-menu .dropdown-menu li a:hover,
header #main-menu .dropdown-menu li:hover a {
    color: var(--color-primary-700);
    text-decoration: none;
    border-radius: 8px;
    background-color: var(--color-leaf) !important;
    transition: all 0.25s ease;
}


header #main-menu .dropdown-menu li:focus,
header #main-menu .dropdown-menu li:focus-visible {
    border: 2px solid var(--color-primary-focus);
    box-shadow: none;
    outline: none;
}

/* Estado inicial (escondido) */
header #main-menu .dropdown-menu {
    display: block;
    /* necessário para animar, Bootstrap cuida da visibilidade */
    opacity: 0;
    transform: translateY(10px);
    /* levemente deslocado para baixo */
    visibility: hidden;
    transition: opacity 0.25s ease, transform 0.25s ease;
}

/* Estado visível */
header #main-menu .dropdown .dropdown-menu.show {
    opacity: 1;
    transform: translateY(0);
    visibility: visible;
}

/* Logo do header: altura máxima 56px e largura proporcional */
.cc-logo {
    height: 48px;
    max-height: 48px;
    width: auto;
    max-width: none;
    margin-top: 0px !important;
    display: block;
}

.app-store:hover svg path {
    fill: #000000 !important;
}

.cc-breadcrumb a {
    text-decoration: none;
}

.cc-breadcrumb .material-symbols-outlined {
    font-size: 16px;
}

@media (min-width: 1200px) {
    .cc-logo {
        height: 56px;
        max-height: 56px;
        width: auto;
        max-width: none;
    }

    /* Header: busca encolhe quando o logo é largo e mantém 40px de distância */
    header#main-header .cc-header-top {
        justify-content: flex-start !important;
        gap: 0 !important;
    }

    header#main-header .cc-header-left {
        flex: 0 0 auto;
        margin-right: 40px;
    }

    header#main-header .cc-header-search {
        flex: 1 1 auto;
        min-width: 0;
        max-width: none;
    }

    header#main-header .cc-header-actions {
        flex: 0 0 auto;
        margin-left: 16px;
        /* Reduzido para aproximar da pesquisa */
    }

    .btn-outline-cc {
        line-height: 1em;
        font-size: 20px;
        font-family: var(--font-primary);
        font-weight: 400 !important;
        color: var(--color-semiwhite);
        border: 2px solid var(--color-semiwhite);
        border-radius: 8px;
        padding: 10px 40px;
    }

    .btn-outline-cc:hover {
        background-color: var(--color-primary-500);
        color: var(--color-semiwhite);
        border: 2px solid var(--color-semiwhite);
    }

    .btn-outline-cc:active {
        background-color: var(--color-primary-700) !important;
        color: var(--color-semiwhite) !important;
        border: 2px solid var(--color-semiwhite) !important;
    }

    .btn-outline-cc:focus,
    .btn-outline-cc:focus-visible {
        background-color: var(--color-primary-400);
        color: var(--color-semiwhite);
        border: 2px solid var(--color-primary-focus);
    }

    .w-xl-auto {
        width: auto !important;
    }
}


.secretarios-title-wrapper {
    margin-top: 24px;
    margin-bottom: 24px;
}

/* Default styles for comboboxes */
.form-group .form-label {
    color: var(--color-gray-700);
    /* Default label color */
}

.custom-select-wrapper select.form-select {
    border: 2px solid var(--color-gray-300);
    /* Default border */
    background-color: var(--color-white);
    /* Default background */
    color: var(--color-gray-600);
    /* Default text color */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding-right: 2.5em;
    /* Make space for custom arrow */
}

/* Custom styles for comboboxes when active */
.form-group.active-combobox .form-label {
    /* Target label when form-group is active */
    color: var(--color-primary-700);
    /* Active label color */
}

.form-group.active-combobox .custom-select-wrapper select {
    /* Target select when form-group is active */
    border-color: var(--color-primary-700);
    /* Active border color */
    box-shadow: none;
}

/* Styling the custom arrow */
.custom-select-wrapper {
    position: relative;
}

.form-group.active-combobox .custom-select-wrapper::after {
    /* Target arrow when form-group is active */
    border-top-color: var(--color-primary-700);
    /* Active arrow color */
}

.custom-select-wrapper::after {
    /* Default arrow color */
    content: '';
    position: absolute;
    top: 50%;
    right: 1em;
    /* Adjust as needed */
    transform: translateY(-50%);
    /* Example for a simple triangle arrow */
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    /* Default arrow color */
    pointer-events: none;
    /* Ensures clicks go through to the select */
}

/* Exibe dropdown e remove padding */
.dropdown-menu.show {
    display: block;
    padding: 0px !important;
}

/* Tags exibidas nos cartões de notícias (pgbusca-noticia-card) */
.pgbusca-noticia-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
}

.pgbusca-noticia-categoria {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.pgbusca-noticia-tag {
    display: inline-block;
    background: #E7FFEB;
    /* cor suave de destaque */
    color: #007F6D;
    /* verde primário */
    padding: 4px 8px;
    font-size: 12px;
    line-height: 1;
    border-radius: 12px;
    text-decoration: none;
    font-weight: 500;
    transition: background-color 0.12s ease, color 0.12s ease;
}

.pgbusca-noticia-tag:hover,
.pgbusca-noticia-tag:focus {
    background: #DFF8E7;
    color: #006557;
    text-decoration: none;
}

/* Separador e data ficam alinhados ao lado direito nas telas maiores */
.pgbusca-noticia-separator {
    width: 8px;
    height: 1px;
    background: transparent;
}

@media (max-width: 576px) {
    .pgbusca-noticia-tag {
        padding: 3px 6px;
        font-size: 11px;
    }
}

/* Global modal overlay / card for search states */
.global-modal {
    position: fixed;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 2000;
}

.global-modal.is-open {
    display: flex;
}

.global-modal .global-modal-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
}

.global-modal .modal-card {
    position: relative;
    z-index: 2010;
    max-width: 520px;
    width: calc(100% - 32px);
    margin: 16px;
}

.global-modal .modal-close {
    position: absolute;
    right: 8px;
    top: 8px;
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 6px;
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    cursor: pointer;
    z-index: 2020;
}

/* Animation: modal card enters with fade + slight upward -> down slide */
.global-modal .modal-card {
    transform: translateY(-8px);
    opacity: 0;
    transition: transform 180ms cubic-bezier(.2, .9, .2, 1), opacity 180ms ease;
}

.global-modal.is-open .modal-card {
    transform: translateY(0);
    opacity: 1;
}

/* Reuse existing inner styles (no-suggestions / error) inside modal-card */
.global-modal #no-suggestions-modal,
.global-modal #error-suggestions-modal {
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

/* Quando o modal é exibido dentro do dropdown de sugestões
   (regras originalmente em assets/css/header.css). Consolidado aqui
   para evitar estilos duplicados/override e facilitar manutenção. */
.search-suggestions-container #no-suggestions-modal {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    text-align: center;
    color: #666;
    gap: 8px;
}

.search-suggestions-container #no-suggestions-modal .material-symbols-outlined {
    font-size: 48px;
    color: #999;
}

.search-suggestions-container #no-suggestions-modal button {
    margin-top: 15px;
    background-color: #008442;
    color: #fff;
    border: none;
    padding: 8px 15px;
    border-radius: 5px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 5px;
    text-decoration: none;
}

.search-suggestions-container #no-suggestions-modal button:hover {
    opacity: 0.9;
}

/* Make 'Nenhum resultado encontrado' inside categories match result item style */
.search-suggestions-container .suggestion-item.no-results,
.search-suggestions-container .suggestion-item.no-results>span,
.search-suggestions-container .suggestion-item.no-results>a {
    font-family: var(--font-primary);
    font-weight: 300;
    font-size: 16px;
    line-height: 132%;
    color: #465564;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    text-decoration: none;
}

/* ========== MODAL 'Avise pra gente' (global) ========== */
@media (max-width: 767px) {
    .pgbusca-modal {
        max-width: 100%;
        max-height: 95vh;
        margin: 0 12px;
        border-radius: 12px;
    }
}

@media (max-width: 600px) {
    .pgbusca-modal-success {
        width: 383px !important;
        height: 324px !important;
        margin: 0 auto;
        border-radius: 16px;
        padding: 16px;
        display: flex;
        flex-direction: column;
        align-items: center;
    }
}

.pgbusca-modal-body.pgbusca-modal-body-success {
    width: 351px;
    height: 324px;
    opacity: 1;
    border-radius: 16px;
    padding-top: 16px;
    padding-right: 16px;
    padding-bottom: 24px;
    padding-left: 16px;
    box-sizing: border-box;
}

.pgbusca-modal-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 9999;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(2px);
}

.pgbusca-modal-overlay.open {
    display: flex;
    animation: pgbusca-fade-in 0.3s ease;
}

@keyframes pgbusca-fade-in {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.pgbusca-modal {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    width: 100%;
    max-width: 748px;
    margin: 0 16px;
    max-height: 90vh;
    animation: pgbusca-slide-up 0.3s ease;
    box-sizing: border-box;
    position: relative;
}

@keyframes pgbusca-slide-up {
    from {
        transform: translateY(20px);
        opacity: 0;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.pgbusca-modal-header {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 24px 24px 0 24px;
    flex-wrap: wrap;
    width: 100%;
}

.pgbusca-modal-header h2 {
    font-family: 'Kanit', sans-serif;
    font-size: 24px;
    font-weight: 500;
    color: #465564;
    margin: 0;
    line-height: 100%;
    flex-basis: 100%;
    padding-bottom: 8px;
}

.pgbusca-modal-subtitle {
    font-family: 'Kanit', sans-serif;
    font-size: 16px;
    font-weight: 300;
    color: #26323F;
    margin: 0;
    line-height: 132%;
    flex-basis: 100%;
    letter-spacing: 0;
}

.pgbusca-modal-close {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: none;
    border: none;
    cursor: pointer;
    color: #757575;
    transition: color 0.2s ease;
    padding: 0;
    position: absolute;
    top: 16px;
    right: 16px;
    flex-shrink: 0;
}

.pgbusca-modal-close:hover {
    color: #465564;
}

.pgbusca-modal-close .material-symbols-outlined {
    font-size: 24px;
}

.pgbusca-modal-body {
    padding: 0 24px 24px 24px;
}

.pgbusca-feedback-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.pgbusca-form-group {
    display: flex;
    flex-direction: column;
    gap: 0;
    position: relative;
}

.pgbusca-feedback-textarea {
    font-family: 'Kanit', sans-serif;
    font-size: 16px;
    font-weight: 300;
    color: #757575;
    border: 1px solid #929292;
    border-radius: 4px;
    padding: 12px 16px;
    width: 100%;
    height: 159px;
    resize: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    box-sizing: border-box;
    background: #FEFEFE;
    line-height: 132%;
    letter-spacing: 0;
}

.pgbusca-feedback-textarea::placeholder {
    color: #757575;
    font-family: 'Kanit', sans-serif;
    font-size: 16px;
    font-weight: 300;
    line-height: 132%;
}

.pgbusca-feedback-textarea:focus {
    outline: none;
    border-color: #929292;
    box-shadow: none;
}

.pgbusca-textarea-counter {
    position: absolute;
    bottom: 12px;
    right: 16px;
    font-family: 'Kanit', sans-serif;
    font-size: 16px;
    font-weight: 300;
    color: #757575;
    line-height: 132%;
    letter-spacing: 0;
    pointer-events: none;
}

.pgbusca-form-actions {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 8px;
}

.pgbusca-btn-enviar {
    font-family: 'Kanit', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #fff;
    background: #C5C5C5;
    border: none;
    border-radius: 8px;
    padding: 10px 24px;
    cursor: pointer;
    transition: all 0.2s ease;
    min-width: 120px;
}

.pgbusca-btn-enviar:hover:not(:disabled) {
    background: #B0B0B0;
}

.pgbusca-btn-enviar:focus-visible {
    outline: 2px solid #545FFF;
    outline-offset: 2px;
}

.pgbusca-btn-enviar:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.pgbusca-btn-enviar.active {
    background: #1B7727;
    border: 1px solid #E3E3E3;
    color: #fff;
}

.pgbusca-btn-enviar.active:hover {
    background: #E9F6EB;
    border: 1px solid #E3E3E3;
    color: #1B7727;
}

.pgbusca-modal-success {
    max-width: 421px;
    width: 100%;
    background: #FEFEFE;
    border-radius: 16px;
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.25);
    padding: 16px;
}

body.front-page .pgbusca-modal-success,
body.home .pgbusca-modal-success {
    max-width: 380px;
}

.pgbusca-modal-header-success {
    border-bottom: none;
    justify-content: flex-end;
    padding: 0;
    margin-bottom: 0;
}

.pgbusca-modal-body-success {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    text-align: center;
    padding: 24px 16px 16px 16px;
}

.pgbusca-success-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    background: none;
    border-radius: 50%;
    order: 1;
}

.pgbusca-success-icon .material-symbols-outlined {
    font-size: 56px;
    color: #26A737;
}

.pgbusca-success-title {
    font-family: 'Kanit', sans-serif;
    font-size: 24px;
    font-weight: 500;
    color: #465564;
    margin: 0;
    line-height: 100%;
    letter-spacing: 0;
    order: 2;
}

.pgbusca-success-text {
    font-family: 'Kanit', sans-serif;
    font-size: 16px;
    font-weight: 300;
    color: #26323F;
    line-height: 132%;
    letter-spacing: 0;
    margin: 0;
    order: 3;
    flex-grow: 1;
    display: flex;
    align-items: center;
}

.pgbusca-btn-entendi {
    width: 100%;
    height: 57px;
    font-family: 'Kanit', sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    background: #1B7727;
    border: none;
    border-radius: 8px;
    padding: 8px 53px;
    cursor: pointer;
    transition: all 0.2s ease;
    order: 4;
}

.pgbusca-btn-entendi:hover {
    background: #1B7727;
    opacity: 0.9;
}

.pgbusca-btn-entendi:focus-visible {
    outline: 2px solid #545FFF;
    outline-offset: 2px;
}

/* Notificações */
#notification-button-desktop:not(:has(.notification-badge)) {
    width: 40px !important;
    /* Força a largura */
    min-width: 40px !important;
    /* Garante que não encolha */
    height: 40px !important;
    /* Para manter a proporção, se for um quadrado */
    padding: 0 !important;
    /* Remove qualquer padding para o ícone */
    display: flex !important;
    /* Garante que o ícone seja centralizado */
    justify-content: center !important;
    /* Centraliza horizontalmente */
    align-items: center !important;
    /* Centraliza verticalmente */
    border-radius: 8px !important;
    /* Para um botão redondo, se aplicável ao design */
}

/* Força grid correto no dropdown de sugestões */
.search-suggestions-container .suggestion-item a {
    display: grid !important;
    grid-template-columns: min-content 1fr !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 8px 16px !important;
}

/* Alinhamento justificado para blocos (suporte frontend) */
.is-style-justified {
    text-align: justify !important;
}

/* Gutenberg: estilo padrão para blocos de botão */
.wp-block-button .wp-block-button__link,
.wp-block-buttons .wp-block-button .wp-block-button__link,
.wp-block-buttons .wp-block-button .wp-element-button,
.wp-element-button,
.wp-block-button__link {
    background-color: #1B7727 !important;
    color: #fff !important;
    padding: 12px 20px !important;
    border-radius: 8px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    display: inline-block !important;
    border: 0 !important;
    margin: 8px 0 !important;
}

.wp-block-button .wp-block-button__link:hover,
.wp-block-button .wp-block-button__link:focus,
.wp-block-buttons .wp-block-button .wp-block-button__link:hover,
.wp-block-buttons .wp-block-button .wp-block-button__link:focus,
.wp-block-buttons .wp-block-button .wp-element-button:hover,
.wp-block-buttons .wp-block-button .wp-element-button:focus,
.wp-element-button:hover,
.wp-element-button:focus,
.wp-block-button__link:hover,
.wp-block-button__link:focus {
    background-color: #155c1e !important;
    color: #fff !important;
}

.wp-block-button.is-style-outline .wp-block-button__link,
.wp-block-button.is-style-outline .wp-element-button,
.wp-block-buttons .wp-block-button.is-style-outline .wp-element-button,
.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link {
    background-color: transparent !important;
    color: #1B7727 !important;
    border: 2px solid #1B7727 !important;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:focus,
.wp-block-button.is-style-outline .wp-element-button:hover,
.wp-block-button.is-style-outline .wp-element-button:focus,
.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link:focus,
.wp-block-buttons .wp-block-button.is-style-outline .wp-element-button:hover,
.wp-block-buttons .wp-block-button.is-style-outline .wp-element-button:focus {
    background-color: #1B7727 !important;
    color: #fff !important;
}

/* Gutenberg: tabelas com borda padrão */
.wp-block-table table {
    border-collapse: collapse !important;
    width: 100% !important;
    border: 1px solid #1B7727 !important;
    margin: 12px 0 !important;
}

.wp-block-table td,
.wp-block-table th {
    border: 1px solid #1B7727 !important;
    padding: 12px 16px !important;
}

.wp-block-table tbody tr:last-child td,
.wp-block-table tbody tr:last-child th {
    border-bottom: 1px solid #1B7727 !important;
}

/* Override Bootstrap reset que zera bordas em tbody/td/th/tr */
.wp-block-table table,
.wp-block-table tbody,
.wp-block-table thead,
.wp-block-table tfoot,
.wp-block-table tr,
.wp-block-table td,
.wp-block-table th {
    border-color: #1B7727 !important;
    border-style: solid !important;
    border-width: 1px !important;
}

.wp-block-table th {
    background: #E9F6EB !important;
    font-family: 'Kanit', 'OpenSans-Light', Helvetica, Arial, sans-serif !important;
    font-weight: 500 !important;
    font-style: normal !important;
    font-size: 16px !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
    color: #26323F !important;
}

/* Rótulos de cabeçalho/rodapé */
.cegovbr-header-label,
.cegovbr-footer-label,
.cegovbr-section-label {
    background: #E9F6EB;
    font-family: 'Kanit', 'OpenSans-Light', Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 16px;
    line-height: 1;
    letter-spacing: 0;
    text-transform: uppercase;
    color: #26323F;
    display: inline-block;
    padding: 8px 12px;
}

/* Texto padrão (corpo e listas) */
body,
p,
li {
    font-family: 'Kanit', 'OpenSans-Light', Helvetica, Arial, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0;
}

/* ========================================
   TABLEPRESS - Estilização de Tabelas
   ======================================== */

/* Base da tabela */
.tablepress {
    font-family: 'Kanit', sans-serif;
    border-collapse: collapse;
    width: 100%;
}

/* Cabeçalho e rodapé */
.tablepress thead th,
.tablepress tfoot th {
    background-color: #E9F6EB;
    color: #26323F;
    border: 1px solid #1B7727;
    font-weight: 600;
    padding: 12px;
    text-align: left;
}

/* Células */
.tablepress td,
.tablepress th {
    border: 1px solid #ddd;
    padding: 10px;
}

/* Linhas zebradas */
.tablepress tbody tr:nth-child(even) {
    background-color: #f9f9f9;
}

/* Hover em linhas */
.tablepress tbody tr:hover {
    background-color: #f5f5f5;
}

/* Links no caption */
.tablepress caption a {
    color: #1B7727;
}

/* Estados de ordenação do DataTables */
.tablepress .sorting:hover,
.tablepress .sorting_asc:hover,
.tablepress .sorting_desc:hover {
    background-color: #d1ecda;
}

/* ========================================
   DATATABLES - Controles da Tabela
   ======================================== */

/* Container principal do DataTables v2 */
.dt-container .dt-layout-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
    flex-wrap: wrap;
    gap: 1rem;
}

/* Layout dos controles superiores */
.dt-container .dt-layout-start,
.dt-container .dt-layout-end {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* Labels dos controles */
.dt-container .dt-length label,
.dt-container .dt-search label {
    font-family: 'Kanit', sans-serif;
    font-weight: 400;
    font-size: 14px;
    color: #26323F;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* Select de quantidade de registros */
.dt-container .dt-length select {
    font-family: 'Kanit', sans-serif;
    padding: 6px 12px;
    border: 1px solid #1B7727;
    border-radius: 4px;
    background-color: #fff;
    color: #26323F;
    font-size: 14px;
    cursor: pointer;
}

.dt-container .dt-length select:focus {
    outline: none;
    border-color: #155d1f;
    box-shadow: 0 0 0 2px rgba(27, 119, 39, 0.1);
}

/* Campo de busca */
.dt-container .dt-search input[type="search"] {
    font-family: 'Kanit', sans-serif;
    padding: 6px 12px;
    border: 1px solid #1B7727;
    border-radius: 4px;
    font-size: 14px;
    min-width: 200px;
}

.dt-container .dt-search input[type="search"]:focus {
    outline: none;
    border-color: #155d1f;
    box-shadow: 0 0 0 2px rgba(27, 119, 39, 0.1);
}

/* Informações de paginação */
.dt-container .dt-info {
    font-family: 'Kanit', sans-serif;
    font-size: 14px;
    color: #465564;
}

/* Botões de paginação */
.dt-container .dt-paging .dt-paging-button {
    font-family: 'Kanit', sans-serif;
    padding: 6px 12px;
    margin: 0 2px;
    border: 1px solid #1B7727;
    background-color: #fff;
    color: #1B7727;
    cursor: pointer;
    border-radius: 4px;
    font-size: 14px;
}

.dt-container .dt-paging .dt-paging-button:hover {
    background-color: #E9F6EB !important;
    border: 1px solid #1B7727 !important;
    color: #1B7727 !important;
}

.dt-container .dt-paging .dt-paging-button.current {
    background-color: #1B7727 !important;
    border: 1px solid #1B7727 !important;
    color: #fff !important;
}

.dt-container .dt-paging .dt-paging-button.disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Responsivo */
@media (max-width: 768px) {
    .dt-container .dt-layout-row {
        flex-direction: column;
        align-items: stretch;
    }

    .dt-container .dt-layout-start,
    .dt-container .dt-layout-end {
        width: 100%;
        justify-content: space-between;
    }

    .dt-container .dt-search input[type="search"] {
        min-width: 150px;
        width: 100%;
    }
}

/* ========================================
   DATATABLES LEGACY - Suporte v1.x
   ======================================== */

/* Wrapper principal */
.dataTables_wrapper {
    font-family: 'Kanit', sans-serif;
}

/* Controles superiores */
.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter {
    margin-bottom: 1rem;
}

.dataTables_wrapper .dataTables_length label,
.dataTables_wrapper .dataTables_filter label {
    font-family: 'Kanit', sans-serif;
    font-weight: 400;
    font-size: 14px;
    color: #26323F;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* Select de quantidade */
.dataTables_wrapper .dataTables_length select {
    font-family: 'Kanit', sans-serif;
    padding: 6px 12px;
    border: 1px solid #1B7727;
    border-radius: 4px;
    background-color: #fff;
    color: #26323F;
    font-size: 14px;
}

/* Campo de busca */
.dataTables_wrapper .dataTables_filter input {
    font-family: 'Kanit', sans-serif;
    padding: 6px 12px;
    border: 1px solid #1B7727;
    border-radius: 4px;
    font-size: 14px;
    margin-left: 0.5rem;
}

/* Informações e paginação */
.dataTables_wrapper .dataTables_info {
    font-family: 'Kanit', sans-serif;
    font-size: 14px;
    color: #465564;
    padding-top: 1rem;
}

.dataTables_wrapper .dataTables_paginate {
    padding-top: 1rem;
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
    font-family: 'Kanit', sans-serif;
    padding: 6px 12px;
    margin: 0 2px;
    border: 1px solid #1B7727;
    background-color: #fff;
    color: #1B7727 !important;
    cursor: pointer;
    border-radius: 4px;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background-color: #E9F6EB !important;
    border-color: #1B7727 !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current {
    background-color: #1B7727 !important;
    color: #fff !important;
    border-color: #1B7727 !important;
}

/* VLibras */
div[vw].enabled {
    transform: scale(1.4) !important;
}

div[vw-access-button] {
    top: 733px !important;
    left: 89px !important;
}

@media (max-width: 767.98px) {
    div[vw] {
        display: none !important;
    }
}