/*
Theme Name: O Municipio
Theme URI: http://adsi.pt/
Author: Jose Daniel
Author URI: https://facebook.com/jose.daniel.design
Template: enfold
Description: Responsive Child Theme Enfold
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: o_municipio
Domain Path: /
Tags: light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
*/
html {
    overflow-y: visible !important 
}
::-moz-selection { background: #F8BB11}
::selection { background: #F8BB11 }
#header_meta a {
    text-decoration: none 
}
#home-quick-tabs .av-layout-tab-inner {
    margin-left: -14px
}
#home-quick-tabs .av-section-tab-title[data-av-tab-section-title="1"] {
    color: #CD680B
}
#home-quick-tabs .av-active-tab-title[data-av-tab-section-title="1"] {
    background-color: #CD680B !important
}


#home-quick-tabs .av-section-tab-title[data-av-tab-section-title="2"] {
    color: #004F74
}
#home-quick-tabs .av-active-tab-title[data-av-tab-section-title="2"] {
    background-color: #004F74 !important
}


#home-quick-tabs .av-section-tab-title[data-av-tab-section-title="3"] {
    color: #D35D6E
}
#home-quick-tabs .av-active-tab-title[data-av-tab-section-title="3"] {
    background-color: #D35D6E !important
}

.home-atualidade-type-noticias {
    color: #004F74;
    font-weight: bold;
}
.home-atualidade-type-documentos {
    color: #DA1768;
    font-weight: bold;
}
.home-atualidade-type-cinema {
    color: #2b580c;
    font-weight: bold;
}
.home-atualidade-type-eventos {
    color: #a76800;
    font-weight: bold;
}


#home-quick-tabs .av-section-tab-title[data-av-tab-section-title="4"] {
    color: #2b580c
}
#home-quick-tabs .av-active-tab-title[data-av-tab-section-title="4"] {
    background-color: #2b580c !important
}

#home-quick-tabs .av-section-tab-title[data-av-tab-section-title="5"] {
    color: #ffa62b
}
#home-quick-tabs .av-active-tab-title[data-av-tab-section-title="5"] {
    background-color: #ffa62b !important
}

#home-quick-tabs .av-tab-arrow-container {
    display: none !important
}
#home-quick-tabs .av-section-tab-title {
    padding: 10px 20px 10px 20px;    
}
#avia2-menu li {
    padding: 0 3px !important
}

/*SEARCH*/
.home #searchform_element {
    margin-bottom: 0 !important
}

#top .template-search.content .entry-content-wrapper {
    padding-bottom: 40px;
    font-size: 1rem; /* era 13px, abaixo do mínimo legível (WCAG 1.4.4) */
    clear: both;
}
.search-results .post-meta-infos {
    display: none !important
}
.search-results .extra-mini-title {
    padding: 10px 0 !important;
    border-top: 1px #333 solid;
    border-bottom: 1px #333 solid;
    margin-bottom: 30px
}
.search-results .page-heading-container {
    padding-bottom: 15px !important;
    margin-bottom: 15px !important;
}
.search-results .entry-title {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}
.search-results .post-entry {
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px #ddd solid
}
.search-results .pagination {
    padding-left: 0;
    padding-right: 0;
    padding-top: 40px
}
/*SEARCH - FIM*/

.home main.content {
    padding-top: 10px
}

.avia-arrow {
    display: none !important
}
/*.av-flex-placeholder {
    width: 1% !important
}*/


/*TICKER DE AVISOS*/
#ticker-avisos {
    min-height: 1px !important;    
    padding: 7px 0 3px 0 !important
}
#newsTicker {
    border: none !important;
}
.bn-label {
    background: #3CB19C !important
}
.bn-breaking-news {
    background: #f1f1f1 !important
}
.bn-news li {
    padding: 1px 0 !important;
}
/*TICKER DE AVISOS - FIM*/

/*HOMEPAGE*/
#ultimas-noticias .content {
padding-top: 50px !important; 
padding-bottom: 50px !important; 
}
.avia-content-slider .slide-entry-wrap {
    margin-bottom: 10px !important
}
/*HOMEPAGE - FIM*/
/*BALCAO ONLINE*/
.adsi-bo-container {
    text-align: justify
}
.adsi-bo-container, .adsi-bo-header {
    padding: 60px 0 40px 0 !important;
}
.tdoc-shortcode-item-btn {
    color: #333 !important;
    text-decoration: none !important;
    padding: 15px 5px;
    border-radius: 0 !important
}
.tdoc-shortcode-item-btn:hover {
    color: #000000 !important;
    background: #f8bb12;
}

.bo-grid-term-item {
    background: #F4F4F2;
    text-decoration: none; 
}
.bo-list-term-item {
    background: #F4F4F2;
    text-decoration: none; 
}
.bo-list-term-item i {
    color: #00A650
}
.bo-grid-term-item span {
    display: none !important
}
.bo-grid-term-item-title {
    color: #222831
}
.bo-list-term-item-title {
    color: #222831
}
.bo-default-sidebar-menu li a, .bo-default-sidebar-menu-home {
    background: #F4F4F2;
    color: #222831;
    text-decoration: none;
}
.adsi-bo-breadcrumbs a {
    background: none;
    color: #fff
}
.bo-default-sidebar-menu .current-cat > a {
    background-color: #00A650;
    color: #fff
}
.bo-default-sidebar-menu .current-cat > .children, .bo-default-sidebar-menu .current-cat-ancestor > .children {
    border-left-color: #00A650;
}
.adsi-bo-breadcrumbs {
    background: #4d4d4d;
    color: #fff
}

.bo-list-loop-title {
    color: #222831;
    text-decoration: none
}
.bo-list-loop-btn {
    background: #00A650;
    text-decoration: none 
}
.bo-list-loop-inside {
    background-color: #F4F4F2
}
.bo-term-home-item img {
    height: 75px;
    margin: 5px;
}
/*BALCAO ONLINE - FIM*/

/*PAGINATION*/
.pagination .current {
    background: #4D4D4D !important;
    color: #fff !important;
}
.pagination span, .pagination a {
    color: #4D4D4D !important;
    line-height: 26px;
}
.pagination a:hover {
    color: #fff !important;
    background: #4D4D4D !important;    
}
.pagination a.next, .pagination a.prev {
    width: auto !important;
    min-width: 35px;
}
/*PAGINATION - FIM*/

/*DIRETORIO*/
.cat-inline-diretorio-grid {
    grid-gap: 50px;
}
.diretorio-results {
    display: grid;
    grid-template-columns: 100px 1fr;
    grid-gap: 50px;
    text-decoration: none; 
}

.diretorio-wrapper {
    padding: 30px 0 !important
}
.diretorio-top-bar {
    padding: 15px 0 !important;
}
.adsidir-default-sidebar-menu li a {
    background: #fff;
    border: 1px #ddd solid;
    color: #777;
    text-decoration: none;
}
.adsidir-default-sidebar-menu-home {
    background: #fff;
    border: 1px #ddd solid;
    color: #777;
    text-decoration: none;
}
.adsidir-default-sidebar-menu .current-cat > a {
    background-color: #00A650;
    color: #fff
}
.adsidir-default-sidebar-menu li a:hover {
    background-color: #00A650;
    color: #fff
}

.loop-diretorio-item {
    color: #fff
}
.loop-diretorio-caption {
    background: #fff;
    color: #828282;
    position: absolute;
    bottom: 0;
    width: 100%;
    min-height: 74px;
    justify-content: center;
}
.loop-diretorio-caption-morada {
    font-size: 1rem; /* era 0.8em (~12.8px), abaixo do mínimo legível (WCAG 1.4.4) */
     white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.diretorio-top-bar {
    background: #f8f8f8;
    margin-top: 0;
}
@media (min-width: 768px) {
    .diretorio-top-bar {
        margin-top: 152px;
    }
}
.diretorio-top-bar .row {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 12px;
}
.diretorio-top-bar .col-md-3 {
    flex: 1 1 100%;
    min-width: 0;
    box-sizing: border-box;
}
@media (min-width: 768px) {
    .diretorio-top-bar .col-md-3 {
        flex-basis: calc(50% - 12px);
    }
}
@media (min-width: 992px) {
    .diretorio-top-bar .col-md-3 {
        flex-basis: calc(25% - 12px);
    }
}
.diretorio-top-bar input,
.diretorio-top-bar select {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
}
.diretorio-top-bar .select2,
.diretorio-top-bar .select2-container {
    width: 100% !important;
    max-width: 100% !important;
}
.diretorio-top-bar .select2-container .select2-selection {
    width: 100% !important;
    box-sizing: border-box;
}
.diretorio-top-bar input, .diretorio-top-bar select, .diretorio-top-bar .select2 span {
    border-radius: 0px !important;
}
.diretorio-top-bar-icon {
    background-color: #828282;
}
.loop-diretorio-wrapper-grelha {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 24px;
}
@media (min-width: 600px) {
    .loop-diretorio-wrapper-grelha {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (min-width: 900px) {
    .loop-diretorio-wrapper-grelha {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
@media (min-width: 1200px) {
    .loop-diretorio-wrapper-grelha {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
.loop-diretorio-wrapper-grelha a {
    display: block;
    position: relative;
    box-shadow: 0 0 3px 0 #707070;
}
.loop-diretorio-wrapper-grelha img {
    width: 100%;
    height: auto;
    display: block;
}
.loop-diretorio-wrapper img {
    height: inherit !important 
}
.diretorio-top-bar input[type=submit] {
    background-color: #828282 !important;
    color: #fff !important
}
.loop-diretorio-caption h2 {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 20px;
    margin-bottom: 0;
}
.diretorio-inline-cats-wrapper {
    display: none !important
}
.post-type-archive-diretorio .diretorio-inline-cats-wrapper {
    display: block !important
}
.diretorio-caticon-wrapper {
    transition: all 0.5s ease;
}
.diretorio-caticon-wrapper:hover {
    background: #f8bb11 !important;
}
/*DIRETORIO - FIM*/

/*AGENDA CULTURAL*/

.template-event-page {
    padding-top: 0 !important
}
.tribe-events-loop .tribe-events-event-meta {
    width: 20% !important;
    min-width: 222px;
    background: #f1f1f1 !important;
    border: 1px #333 solid;
    padding: 10px !important;
}
.tribe-events-list .tribe-events-loop .tribe-events-event-image {
    width: 100%;
    margin: 0
}
.tribe-events-list .tribe-events-loop .tribe-events-list-event-title {
    text-align: left !important;
    margin: 0 !important;
    padding-bottom: 0 !important;
    font-size: 1.8em !important;
}
.tribe-events-loop .tribe-events-content {
    padding: 0;
}
.tribe-events-loop .type-tribe_events {
    background: #f8f8f8;
    margin-bottom: 15px
}
.av-upcoming-events {
    display: grid;
    
    grid-gap: 50px;
}
.av-upcoming-events a {
    display: flex;
    flex-direction: column;
}
.av-upcoming-events .av-upcoming-event-image {
    border-radius: 0;
    width: 100%;
    float: none;
    margin: 0;

}
.tribe-events-calendar th {
    background: #28321c !important;
    border-color: #28321c !important;
}
.tribe-events-calendar .tribe-events-present > div {
    background: #28321c !important;
    border-color: #28321c !important;
}
.tribe-events-button {
    background: #28321c !important;
    border-color: #28321c !important;
}
.tribe-events-notices {
    background: #28321c!important;
}
.tribe-events-tooltip {
    padding: 10px
}
.tribe-events-tooltip .entry-title {
    padding: 10px 19px 5px
}

h3.tribe-events-month-event-title {
    font-size: 1rem !important /* era 14px, abaixo do mínimo legível (WCAG 1.4.4) */
}
.tribe-events-single > .type-tribe_events {
    display: grid;
}
.tribe-events-single .av-single-event-content {
    width: 100% !important;
    margin: 0 !important
}
.tribe-events-single .tribe-events-single-event-description {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 30px
}
.tribe-events-single .av-single-event-meta-bar-inner {
    display: grid;
    grid-template-columns: 1fr 3fr;
    grid-gap: 30px
}
.tribe-events-single-section .tribe-events-meta-group {
    width: 100% !important
}
/*AGENDA CULTURAL - FIM*/
/*MENU*/
#header .menu li > a:after { content: ' ▾'; } 
#header .menu li > a:only-child:after { content: ''; }




.menu-municipio > a {
    text-decoration: underline !important;
    text-decoration-color: #cf690b !important;
    text-decoration-thickness: 4px !important;
    text-underline-position: under;
}
.menu-municipio.current-menu-item > a, .menu-municipio:hover > a {
    color: #cf690b !important;
    font-weight: bold
}


.menu-conhecer > a {
    text-decoration: underline !important;
    text-decoration-color: #005076 !important;
    text-decoration-thickness: 4px !important;
    text-underline-position: under;
}
.menu-conhecer.current-menu-item > a, .menu-conhecer:hover > a  {
    color: #005076 !important;
    font-weight: bold
}

.menu-viver > a {
    text-decoration: underline !important;
    text-decoration-color: #f76a8c !important;
    text-decoration-thickness: 4px !important;
    text-underline-position: under;
}
.menu-viver.current-menu-item > a, .menu-viver:hover > a {
    color: #f76a8c !important;
    font-weight: bold
}

.menu-investir > a {
    text-decoration: underline !important;
    text-decoration-color: #00a650 !important;
    text-decoration-thickness: 4px !important;
    text-underline-position: under;
}
.menu-investir.current-menu-item > a, .menu-investir:hover > a {
    color: #00a650 !important;
    font-weight: bold
}

.menu-balcao-online > a {
    text-decoration: underline !important;
    text-decoration-color: #a76800 !important;
    text-decoration-thickness: 4px !important;
    text-underline-position: under;
}
.menu-balcao-online.current-menu-item > a, .menu-balcao-online:hover > a {
    color: #a76800 !important;
    font-weight: bold
}
.bo-grid-term-item img {
    max-height: 80px;
    margin: 10px
}
/*MENU - FIM*/
/*titulo das paginas*/
.page .entry-content-wrapper .post-title {
    font-size: 2.2rem !important;
    letter-spacing: normal !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
.custom-entry-content-header {
    margin-bottom: 30px !important;
}
/*titulo das paginas - fim*/
/*BLOG*/
.html_elegant-blog #top .post-entry .blog-categories {
    text-align: left;
}
.html_elegant-blog #top .post-entry .post-title, .html_elegant-blog .avia-content-slider .slide-entry-title {
    text-align: left;
    text-transform:  none;
}
/*BLOG - FIM*/

/*HOME QUICK TABS*/
#home-quick-tabs a.av-active-tab-title {
    background: #fff;
}
#home-quick-tabs .av-layout-tab-inner .flex_column.av_one_full {
    min-height: 310px !important
}
/*HOME QUICK TABS - END*/




.single .post-title.entry-title {
pointer-events: none !important;
}

/*top bar*/
#header_meta .sub_menu {
    top: 3px
}
.adsi-admin-header-notice-grid {
    display: grid !important;
}
/*top bar - fim*/

/*COLOR BARS*/
.container-color-bar {
    max-width: 1280px;
    margin: auto;
}

/*SHORTCODE ENQUADRAMENTO GEOGRAFICO E MAPA*/
.mconcelhocontainer {
            position: relative;
            display: grid;
            grid-template-columns: 1fr 2fr;
            grid-gap: 30px;
            align-items: center 
        }

        #mconcelhotext {  bottom: 10px; left: 25px; line-height: 120%; position: absolute; width: 125px;}
        .fregmeda:hover { 
            cursor: pointer;
            fill: #fff;
            fill-opacity: .5
        }
        .svg-mapa-gallery {
            position: relative;
            height: 100%
        }
        .svg-mapa-gallery-grid {
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            grid-gap: 15px;
            align-items: center;            
        }
        .svg-mapa-gallery-grid-principal {
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            grid-gap: 15px;
            align-items: center;            
        }
/*SHORTCODE ENQUADRAMENTO GEOGRAFICO E MAPA - FIM*/

/*HOME ATUALIDADE MODULO*/
.home-atualidade-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-gap: 15px;
    
}
.home-atualidade-item {
    position: relative;
    text-align: center;
    background: #fff
}
.home-atualidade-title {
    padding: 15px;
    background: #fff;
    width: 100%;
}
.home-atualidade-item  img {
    display: block !important;
}
/*HOME ATUALIDADE MODULO - FIM*/

/*ADVANCED AJAX SEARCH*/
.asp_res_url {
    text-decoration: none !important 
}
/*ADVANCED AJAX SEARCH - FIM*/

.modulo-conhecer-icons {
    display: grid;
    grid-template-columns: repeat(auto-fill, 244px);
    grid-gap: 15px;
    align-items: center;
    align-content: center;
    justify-content: center;
    text-align: center;
}
.modulo-conhecer-icons-item {
    height: 244px;
    display: flex;
    align-items: center;
    flex-flow: column;
    align-content: center;
    justify-content: center;
    padding: 15px;
    background: #f7f7f7;
    border-radius: 15px;
    color: #222831 !important;
    text-decoration: none !important 
}
.modulo-conhecer-icons-item > div {
    margin-bottom: 15px
}
#home-separador-seta {
    min-height: 0px !important
}
/*WIDGET WEATHER*/
.awe_desc {
    display: none
}
.awe_wide.awe_with_icons .awesome-weather-current-temp {
    font-size: 49px;
    width: 41%;
}
.awesome-weather-forecast {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
    margin-top: 0;
    padding: 15px 5% 15px 5%;
    border: none !important;
        
}
#awesome-weather-meda {
    border: none;
}


/*WIDGET WEATHER - FIM*/

/*SOCKET*/
#socket .social_bookmarks li a {
    text-decoration: none;
    font-size: 1.6em
}
/*SOCKET - FIM*/

/*FOOTER*/
#footer .widgettitle {
    border-bottom: 1px solid #555555;
    font-size: 1em !important;
    padding-bottom: 5px;
}
#footer .widget_nav_menu a {
    padding: 0;
}
#footer .widget {
    margin: 10px 0 10px 0;
}
#footer {
    border-top: 5px #222222 solid !important;
}
#footer .avia-button {
    background-color: #555555 !important
}
#footer .avia-button:hover {
    background-color: #333333 !important
}
/*FOOTER - FIM*/

/**/
.av-main-nav .menu-municipio .sub-menu li a {
    background: #f1f1f1 !important;
    padding: 15px 10px !important;
    text-align: center !important;
    margin: 5px !important;
    width: 100%;
}
.av-main-nav .menu-item-mega-parent .sub-menu li {
    padding: 0 5px 0 5px !important;
}
.av-main-nav .menu-item-mega-parent .sub-menu li a:hover {
    background: #F8BB12 !important;
    text-decoration: none !important; 
}
.av-main-nav .menu-item-mega-parent i {
    font-size: 24px !important;
    padding-right: 10px
}
/**/
/**/
.av-main-nav .menu-conhecer .sub-menu li a {
    background: #f1f1f1 !important;
    padding: 15px 10px !important;
    text-align: center !important;
    margin: 5px !important
}
/**/
/**/
.av-main-nav .menu-viver .sub-menu li a {
    background: #f1f1f1 !important;
    padding: 15px 10px !important;
    text-align: center !important;
    margin: 5px !important
}
/**/
/**/
.av-main-nav .menu-investir .sub-menu li a {
    background: #f1f1f1 !important;
    padding: 15px 10px !important;
    text-align: center !important;
    margin: 5px !important
}
/**/

#top #header .avia_mega_div {
    padding: 15px 20px 20px 20px !important
}
#top #header .avia_mega_div > .sub-menu {
    padding: 0 !important
}
.awesome-weather-current-temp strong {
    color: #fff !important
}
/*MENU LATERAL*/
.sidebar .menu {
    box-sizing: border-box 
}
.sidebar .menu .sub-menu {
    display: none
}
.sidebar .menu > li {
    border: 1px #f1f1f1 solid;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    box-sizing: border-box !important 
    
}
.sidebar .menu > li > a {
    padding: 5px 10px !important;
}
.sidebar .menu > li.menu-item-has-children > a::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    content: "\f078";
    float: right;
    margin-right: -21px;
    padding-right: 20px
}
.sidebar .menu > li.menu-item-has-children > a {
    border-bottom: 1px #f1f1f1 dotted !important
}
.sidebar .widget_nav_menu ul:first-child > .current-menu-item, .sidebar .widget_nav_menu ul:first-child > .current_page_item, .sidebar .widget_nav_menu ul:first-child > .current-menu-ancestor {
    padding-left: 51px;
    left: 0;
    top: 1px;
    margin-top: -1px;
    padding-top: 1px;
    width: 100%;
    box-shadow: 0px 0px 1px 0px rgba(0, 0, 0, 0.2);
    margin-bottom: 4px;
}
/*MENU LATERAL - FIM*/
.lista-icons-inline .iconlist-timeline {
    display: none !important
}
.lista-icons-inline .iconlist_title {
    margin: 0 !important;
    font-size: 16px;
    line-height: 100%;
    font-weight: normal !important
}
.lista-icons-inline ul {
    display: grid;
    grid-template-columns: repeat( auto-fit, minmax(250px, 1fr) );
    grid-gap: 15px;
}
.lista-icons-inline ul li {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 25px;
    background: #f1f1f1 !important;
    border: 2px solid #ededed;
    transition: all 0.5s ease;
}
.lista-icons-inline ul li:hover {
    background-color: #F7BA10 !important
}
.lista-icons-inline .iconlist_icon {
    margin-right: 10px !important;
    background-color: transparent !important;
    border: none !important;
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
    font-size: 28px !important;
    line-height: 100% !important
}
.lista-icons-inline .article-icon-entry {
    display:  flex;
    align-items: center;
    min-height: 16px !important
}
.lista-icons-inline ul li a {
    text-decoration: none !important;
    color: #222222 !important
}

/*FORMULARIOS*/
.gform_button, .gform_next_button, .button {
    background-color: #62666a !important;
}
.gform_button:hover, .gform_next_button:hover, .button:hover {
    background-color: #f8bb11 !important;
}
.gform_description {
    text-align: justify
}
/*FORMULARIOS - FIM*/

/*CONTACTOS*/
.page-id-23 tr, .page-id-23 li, .page-id-23 .pricing-extra {
    background: none !important
}
/*CONTACTOS - FIM*/
/*LOAD MORE TEXT*/
.av-masonry-pagination.av-masonry-load-more {
    background: #828282 !important;
    color: #fff !important;
}
/*LOAD MORE TEXT - FIM*/
/*AGENDA DE EVENTOS*/
.datepicker {
    z-index: 999
}
#top #wrap_all .tribe-events-button {   
    top: 0 !important;
}
.tribe-bar-views-inner {
    padding: 30px 0 !important;
}
.tribe-bar-submit {
    padding: 27px 0px 27px 23px !important;
 }
 .tribe-bar-date-filter {
    padding: 23px !important;
}
.av-single-event-meta-bar {
    display: none !important
}

#home-quick-tabs .av-upcoming-events .av-upcoming-event-entry,
.home-quick-tabs .av-upcoming-events .av-upcoming-event-entry {
    margin: 0;
    padding: 0;
    background: #fff
}

.home-quick-tabs .av-upcoming-events {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    margin: 0;
    grid-gap: 15px;
}

#home-quick-tabs .tabcinema .av-upcoming-events {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    margin: 0;
    grid-gap: 15px;
}
#home-quick-tabs .tabeventos .av-upcoming-events {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    margin: 0;
    grid-gap: 15px;
}
#home-quick-tabs .tabatualidade .av-upcoming-events {
    display: grid;
    grid-template-columns: 1fr;
    margin: 0;
    grid-gap: 15px;
}
#home-quick-tabs .tabatualidade .av-upcoming-event-entry.cinema .av-upcoming-event-title:before {
    content: "Cinema" !important; 
    color: #2b580c !important;
    font-size: 16px;
    line-height: 1.5em;
    display: block
}
#home-quick-tabs .tabatualidade .av-upcoming-event-entry .av-upcoming-event-title:before {
    content: "Eventos";
    color: #a76800;
    font-size: 16px;
    line-height: 1.5em;
    display: block
}
#home-quick-tabs .av-upcoming-events a,
.home-quick-tabs .av-upcoming-events a {
    color: #545454;
    display: block
}
#home-quick-tabs .av-upcoming-events img,
.home-quick-tabs .av-upcoming-events img {
    object-fit: cover;
    width: 100%;
    aspect-ratio: 210 / 297;
    display: block
}
#home-quick-tabs .av-upcoming-event-data,
.home-quick-tabs .av-upcoming-event-data {
  padding: 15px;
  background: #fff;
  width: 100%;
  margin: 0;
  text-align: center;
  font-size: 16px;
  line-height: 1.1em;
}
.ae-archive-header__title {
    color: #232323 !important;
}
.main-content-wrapper.evento-wrapper {
    padding-top: 0 !important;
}
.core-card--layout-a {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.floating-menu .fm-label {
    background-color: #000000 !important;
    color: #ffffff !important;
    opacity: 1 !important;
    text-shadow: none !important;
    display: inline-flex;
}
.fm-label {
    background-color: #000000 !important;
    color: #ffffff !important;
    opacity: 1 !important;
    text-shadow: none !important;
    display: inline-flex;
}
.floating-menu a.fm-link .fm-label {
    background-color: #000000 !important;
    color: #ffffff !important;
    opacity: 1 !important;
}
.floating-menu .fm-link:hover .fm-label,
.floating-menu .fm-link:focus-visible .fm-label,
.floating-menu .fm-link.-active .fm-label {
    background-color: #000000 !important;
    color: #ffffff !important;
}
.fm-link:hover .fm-label,
.fm-link:focus-visible .fm-label,
.fm-link.-active .fm-label {
    background-color: #000000 !important;
    color: #ffffff !important;
}
.floating-menu a.fm-link:hover .fm-label,
.floating-menu a.fm-link:focus-visible .fm-label,
.floating-menu a.fm-link.-active .fm-label {
    background-color: #000000 !important;
    color: #ffffff !important;
}

.adsi-admin-header-notice-wrapper {
    color: #ffffff;
    padding: 8px 0;
}
.adsi-admin-header-notice-wrapper h1, .adsi-admin-header-notice-wrapper p  {
    color: #ffffff;
}
#header_meta .social_bookmarks,
#header_meta nav.sub_menu > ul {
    display: none !important;
}
#header_meta nav.sub_menu {
    width: 100%;
}
#header_meta #adsi-admin-header-notice {
    width: 100%;
}

#header_meta .phone-info,
#header_meta .phone-info > div {
    display: block !important;
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: normal !important;
}
.adsi-admin-header-notice-grid {
    display: grid;
    align-items: center;
    grid-template-columns: 1fr;
    grid-gap: 4px;
}
.adsi-admin-header-notice-title {
    margin: 0;
    font-weight: 600;
    font-size: 1rem; /* era 14px — este bloco substitui a topbar do Enfold
                        para todos os visitantes e é <h1> na homepage,
                        abaixo do mínimo legível (WCAG 1.4.4) */
    line-height: 1.2;
}
.adsi-admin-header-notice-text {
    margin: 0;
    font-size: 1rem; /* era 13px, abaixo do mínimo legível (WCAG 1.4.4) */
    line-height: 1.2;
    opacity: 0.9;
}
@media only screen and (min-width: 768px) {
    .adsi-admin-header-notice-grid {
        grid-template-columns: max-content 1fr;
        align-items: center;
        grid-gap: 12px;
    }
    .adsi-admin-header-notice-text {
        text-align: right;
        justify-self: end;
    }
}
/*AGENDA DE EVENTOS - FIM*/

/*SEARCH RESULTS PAGE*/
.search-results .container_wrap .content {
    border-left: none !important;
    border-right: none;
    margin-right: 0px;
    margin-left: 0px;
    padding-left: 50px;
    padding-right: 50px;
    background: #f7f7f7
}
#top .template-search.content .entry-content-wrapper {
    padding-right: 0;
    padding-bottom: 0;
}
#top .template-search.content .entry-content-wrapper h2 {
    font-size: 1.5em
}


.search-results .container_wrap .content .search_form_field {
    padding: 40px;
    background: #fff;
}
.search-results .search-result-counter  {
    background: #fff;
    width: 30px;
    height: 30px;
    line-height: 17px;
    padding: 6px;
}
.search-results .page-heading-container {
    padding-right: 0;
}
.search-results .container_wrap .content .search_form_field #searchform > div {
    max-width: 100% !important;

}


.bo-input-btn {
    border: 1px #555555 solid !important;
    border-color: #555555 !important
}
.bo-btn-documento, .bo-inline-cat-button {
    background: #555555 !important;
}
/*SEARCH RESULTS PAGE - FIM*/

#top #wrap_all .av-social-link-instagram:hover a {
    background-color: #b33283 !important;
}
#top #wrap_all .av-social-link-mail:hover a {
    background-color: #128be0 !important;
}


#header_meta .phone-info {
    margin-left: 15px
}

.wysijap-template-default .post-meta-infos {
    display: none !important;
}
.wysijap-template-default .post-title, .wysijap-template-default .entry-content  {
    text-align: center !important
}

.documentos-recentes-novo .tdoc-shortcode-item-btn:hover {
    background: #ffffb6  !important;
    color: #3a3200 !important;
}

.documentos-recentes-novo .tdoc-shortcode-item-btn {
    background: #3a3200 !important;
    color: #fff !important;
    border-radius: 5px !important;
}
[class*="-card--layout-a"] [class*="-card__image-overlay"] {
    background: #2b580c !important;
}

.home-oque-procura form {
  margin-bottom: 0 !important;
}

.core-button--primary {
  color: #fff !important;
}
.adsi-bo-container, .adsi-bo-header {
    padding: 200px 0 40px 0 !important;
}
@media only screen and (min-width: 990px) {
    .menu-conhecer .sub-menu {
        display: grid !important;
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
        max-width: 100%;
    }
.menu-conhecer .sub-menu li {
    width: auto !important;
    display: flex;
    justify-content: center
}
}
@media only screen and (min-width: 1279px) {
    /*HOME QUICK TABS*/
    #home-quick-tabs .av-tab-section-tab-title-container {
        display: grid;
        max-width: 1280px;
        margin: auto;
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
        padding-top: 0
    }

    #home-quick-tabs .av-outer-tab-title {
        margin-bottom: 0
    }
    #home-quick-tabs .av-inner-tab-title {
        display: inline-block
    }
    #home-quick-tabs .av-inner-tab-title, .av-tab-section-icon, .av-tab-arrow-container, .av-tab-section-image {
        width: auto;
    }
    #home-quick-tabs .av-layout-tab-inner .flex_column.av_one_full {
        height: 430px !important
    }
    /*HOME QUICK TABS - END*/
}
/* Tablet Portrait size to standard 960 (devices and browsers) */
@media only screen and (max-width: 989px) {
    .tribe-events-single .tribe-events-single-event-description {
        grid-template-columns: 1fr;
    }
    .tribe-events-single .av-single-event-meta-bar-inner {
        grid-template-columns: 1fr;
    }
}
@media only screen and (min-width: 768px) and (max-width: 989px) {
    .lista-icons-inline ul {
        grid-template-columns: 1fr 1fr 1fr;
    }
    .home-atualidade-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media only screen and (max-width: 767px) {
    #home-quick-tabs .tabcinema .av-upcoming-events {
        grid-template-columns: 1fr;
    }
    #home-quick-tabs .tabeventos .av-upcoming-events {
        grid-template-columns: 1fr;
    }
    .lista-icons-inline ul {
        grid-template-columns: 1fr 1fr;
    }
    .bo-grid-term-container {
        grid-template-columns: 1fr 1fr;
    }
    .tdoc-shortcode-cols-4 {
        grid-template-columns: 1fr;
    }
    .home-atualidade-grid {
        grid-template-columns: 1fr;
    }
    .mconcelhocontainer {
        grid-template-columns: 1fr;
    }
    .svg-mapa-gallery-grid-principal, .svg-mapa-gallery-grid {
        position: relative
    }
}

/* MailPoet (formulário de newsletter): tamanho de texto mínimo de 16px
   (WCAG 1.4.4) e cor #232323 em texto/placeholder/borda dos campos.
   !important necessário para sobrepor os estilos inline gerados pelo
   editor visual do MailPoet em cada campo. */
.mailpoet_form .mailpoet_paragraph,
.mailpoet_form .mailpoet_text_label,
.mailpoet_form .mailpoet_textarea_label,
.mailpoet_form .mailpoet_select_label,
.mailpoet_form .mailpoet_segment_label,
.mailpoet_form .mailpoet_text,
.mailpoet_form .mailpoet_textarea,
.mailpoet_form .mailpoet_select,
.mailpoet_form .mailpoet_submit,
.mailpoet_form .mailpoet_message,
.mailpoet_form [class*="mailpoet_error_"] {
    font-size: 16px !important;
}

.mailpoet_form .mailpoet_text,
.mailpoet_form .mailpoet_textarea,
.mailpoet_form .mailpoet_select {
    color: #232323 !important;
    border-color: #232323 !important;
}

.mailpoet_form .mailpoet_text,
.mailpoet_form .mailpoet_textarea,
.mailpoet_form .mailpoet_select,
.mailpoet_form .mailpoet_submit {
    min-height: 50px !important; /* min-height, não height, para não cortar texto/foco */
    box-sizing: border-box !important;
}

.mailpoet_form .mailpoet_text::placeholder,
.mailpoet_form .mailpoet_textarea::placeholder {
    color: #232323 !important;
    opacity: 1 !important; /* Firefox baixa a opacidade do placeholder por omissão */
}

.mailpoet_form .mailpoet_submit {
    background: #3a3200 !important;
    border-color: #3a3200 !important;
    color: #fff !important;
}
.mailpoet_form .mailpoet_submit:hover {
    background: #ffffb6 !important;
    color: #3a3200 !important;
}
#mailpoet_form_1 form.mailpoet_form {
  padding: 60px !important;
}
/* Formulário de pesquisa global do Enfold (#searchform): label visível
   numa linha própria, campo + botão lado a lado na linha seguinte,
   contraste de borda/texto/placeholder, e botão de pesquisa real e
   visível (antes um input[type=submit] sobreposto de forma invisível ao
   ícone decorativo — ver fix_global_search_form_accessibility() no
   plugin adsi-accessibility, que também garante que a ordem no DOM
   bate certo com esta ordem visual). */
#top #searchform .av_searchform_search.avia-svg-icon {
    display: none !important; /* ícone decorativo substituído pelo botão visível */
}
#top #searchform > div {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    gap: 8px !important;
}
#top #searchform label.adsi-search-label {
    flex: 0 0 100% !important; /* linha própria, acima do campo+botão */
    font-size: 16px !important;
    font-weight: 600;
    color: #232323 !important;
    margin: 0 0 6px !important;
}
/* Nota: o elemento "Search" nativo do Enfold (usado na homepage,
   [avia_sc_search], formulário #searchform_element) reutiliza o MESMO
   id="s" e id="searchsubmit" do #searchform do tooltip do cabeçalho — daí
   este seletor ter de ficar limitado a "#top #searchform #s" (não só
   "#top #s"), para não vazar largura/layout pensados para o tooltip
   estreito (300px) para este outro widget, de largura total. */
#top #searchform #s {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important; /* permite encolher dentro do flex container em vez de transbordar */
    box-sizing: border-box !important;
    padding: 11px 12px !important; /* já não precisa do espaço reservado ao ícone sobreposto */
    border: 2px solid #232323 !important;
    border-radius: 3px !important;
    color: #232323 !important;
    font-size: 16px !important;
}
#top #searchform #s::placeholder {
    color: #232323 !important;
    opacity: 1 !important; /* Firefox baixa a opacidade do placeholder por omissão */
}

/* Formulário "Search" da homepage (#searchform_element): o campo já tem
   width:100% comportamental por omissão, mas ficava a encolher porque
   herdava sem querer a regra "#top #s" acima (mesmo id="s") pensada para
   o tooltip do cabeçalho. */
#top #searchform_element #s {
    width: 100% !important;
    box-sizing: border-box !important;
}
#top #searchform #searchsubmit {
    display: inline-flex !important;
    align-items: center !important;
    position: static !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 44px !important;
    line-height: normal !important;
    margin: 0 !important;
    padding: 10px 16px !important;
    border-radius: 3px !important;
    background: #232323 !important;
    border: 2px solid #232323 !important;
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 600;
    cursor: pointer;
    appearance: none !important;
    -webkit-appearance: none !important;
}
#top #searchform #searchsubmit:hover,
#top #searchform #searchsubmit:focus {
    background: #fff !important;
    color: #232323 !important;
}

/* Foco de teclado visível em todos os campos de texto/select/textarea do
   site (WCAG 2.4.7 / 2.4.11). O Enfold desativa o outline nativo com
   #top input[type="..."]{outline:none}, que tem mais especificidade do
   que um :focus-visible genérico — por isso repetimos os mesmos
   seletores prefixados com #top para ganhar especificidade.
   #ffffb6 sozinho tem contraste muito baixo sobre fundo branco (falha
   WCAG 1.4.11 como indicador de foco), por isso serve de brilho/realce
   à volta de uma borda escura (#232323, já usada nos campos do site),
   que é quem garante o contraste mínimo de 3:1. */
#top input[type="text"]:focus-visible,
#top input[type="email"]:focus-visible,
#top input[type="tel"]:focus-visible,
#top input[type="number"]:focus-visible,
#top input[type="url"]:focus-visible,
#top input[type="search"]:focus-visible,
#top input[type="password"]:focus-visible,
#top input[type="date"]:focus-visible,
#top input[type="time"]:focus-visible,
#top textarea:focus-visible,
#top select:focus-visible {
    outline: 3px solid #232323 !important;
    outline-offset: 2px !important;
    border-color: #232323 !important;
    box-shadow: 0 0 0 6px #ffffb6 !important;
}

/* Formulário de pesquisa "O Que Procura?" da homepage: substituído o
   elemento nativo [avia_sc_search] (aria-label sem <label> real,
   input[type=submit] sem nome acessível fiável) pelo shortcode [usearch]
   do plugin adsi-core, que já tem <label> e <button> reais. Cores/borda/
   altura alinhadas com o resto do site (#232323, min-height 50px, radius
   3px — mesmo padrão do #searchform e do formulário do MailPoet). */
.home-search-usearch {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 8px;
}
.home-search-usearch > div {
    flex: 1 1 auto;
    min-width: 0;
}
.home-search-usearch label {
    display: block;
    font-size: 16px;
    font-weight: 600;
    color: #232323;
    margin: 0 0 6px;
}
.home-search-usearch input[type="text"] {
    width: 100%;
    min-height: 50px;
    box-sizing: border-box;
    padding: 11px 12px;
    border: 2px solid #232323 !important;
    border-radius: 3px;
    font-size: 16px;
    color: #232323;
    margin-bottom: 0 !important;
}
.home-search-usearch input[type="text"]::placeholder {
    color: #232323;
    opacity: 1; /* Firefox baixa a opacidade do placeholder por omissão */
}
.home-search-usearch button[type="submit"] {
    flex: 0 0 auto;
    background: #3a3200 !important;
    color: #fff;
    border: 2px solid #3a3200 !important;
    border-radius: 3px;
    padding: 10px 20px;
    min-height: 50px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
}
.home-search-usearch button[type="submit"]:hover,
.home-search-usearch button[type="submit"]:focus {
    background: #ffffb6 !important;
    color: #3a3200 !important;
}
/* O adsi-core (usearch--classic.usearch--inline, adsicore.css) sobe para 3
   colunas a partir de 1280px a pensar num terceiro campo de seleção de post
   type — este formulário da homepage não tem esse campo (só campo de texto +
   botão), por isso a 3ª coluna do grid fica vazia/sem uso a partir desse
   breakpoint. Repetir as mesmas 3 classes do plugin (mais .home-search-usearch,
   4 no total) para garantir especificidade suficiente para vencer a regra do
   plugin dentro do mesmo media query. */
@media (min-width: 1280px) {
    .home-search-usearch.usearch.usearch--classic.usearch--inline {
        grid-template-columns: 1fr 1fr;
    }
}
.diretorio-top-bar input, .diretorio-top-bar select, .diretorio-top-bar .select2 span {
    margin-bottom: 0 !important;
    height: 46px !important;
    line-height: 100% !important;
    border-radius: 5px !important;
    color: #232323 !important
}

/*Alterações de acordo com recomendações de acessibilidade*/
.av-elegant-toggle .toggle_content {
  font-size: 1rem !important;
  line-height: 1.5rem !important;
}
#top .widget_nav_menu li {
  font-size: 1rem !important;
}
#top .widget_nav_menu li a {
  text-decoration: underline !important;
}
#socket {
    font-size: 1rem !important;
}
.awe_wide.awe_with_icons .awesome-weather-todays-stats {
    font-size: 1rem !important;
}

/* Complianz (banner de cookies): vários tokens de font-size do plugin
   (cookiebanner.css) abaixo do mínimo legível de 16px (WCAG 1.4.4).
   --cmplz_text_line_height é calc(--cmplz_text_font_size * 1.5), por isso
   ajusta-se sozinho ao subir o token base. !important garante que ganha
   independentemente da ordem de carregamento face ao CSS do plugin. */
:root {
    --cmplz_title_font_size: 1rem !important;
    --cmplz_text_font_size: 1rem !important;
    --cmplz_link_font_size: 1rem !important;
    --cmplz_category_body_font_size: 1rem !important;
    --cmplz_button_font_size: 1rem !important;
    --cmplz_category_header_title_font_size: 1rem !important;
    --cmplz_category_header_active_font_size: 1rem !important;
}

/* Float Menu: label de texto (tooltip junto aos ícones do menu flutuante)
   abaixo do mínimo legível de 16px. --fm-icon-size não é tocado (é o
   tamanho do glifo do ícone, não texto legível). Valor sem unidade,
   consumido pelo plugin como calc(var(--fm-label-size) * 1px). */
.floating-menu {
    --fm-label-size: 16 !important;
}

/* R 5.3 - 10 Aspetos, #6, item 2: o Enfold esconde o texto de apoio das
   setas de navegação (prev/next de todas as galerias/sliders/tabs) com
   display:none, o que também o remove da árvore de acessibilidade — sem
   isto, depois de remover o title redundante (ver functions.php,
   adsi_fix_slide_navigation_arrows_a11y), as setas ficavam sem nome
   acessível nenhum. Técnica padrão de "visualmente escondido mas acessível". */
#top .avia_hidden_link_text {
    display: block !important;
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* R 5.3 - 10 Aspetos, #6, item 3: o carrossel de imagens (av_horizontal_gallery)
   passou a ter um único <a> a envolver imagem + ícone de ampliação (ver
   functions.php, adsi_fix_horizontal_gallery_duplicate_link) em vez de dois
   elementos interativos separados. O link, que antes só cobria o cantinho do
   ícone (position:absolute; bottom/right:10px), passa a cobrir a imagem
   toda; o ícone SVG ganha o seu próprio posicionamento e continua só visível
   em hover/focus — agora ligado ao próprio link (antes estava ligado ao
   :hover do wrap, que deixou de ser o elemento interativo).
   Importante: o link NÃO pode ser position:absolute aqui — isso retira-o do
   fluxo normal, e como a imagem passou a viver dentro dele (em vez de ser
   irmã dele), o .av-horizontal-gallery-wrap (inline-block, largura calculada
   pelo conteúdo) deixa de ter qualquer conteúdo em fluxo normal para medir,
   colapsando para 0px de largura — a imagem carrega mas nunca é visível. Em
   fluxo normal (inline-block, position:relative só para ancorar o ícone), o
   link herda a largura da imagem lá dentro e o wrap volta a medir bem.
   O seletor #top .av-horizontal-gallery-link (em vez do simples .av-...-link)
   é necessário para igualar a especificidade da regra base do Enfold
   (#top .av-horizontal-gallery-link{width:24px;...}, pensada para o ícone
   pequeno de antes) — sem isso o width:24px dela continua a ganhar, mesmo
   com display:inline-block aqui, porque especificidade só perde para a
   ordem de carregamento quando é igual. */
#top .av-horizontal-gallery-link {
    position: relative;
    display: inline-block;
    width: 100% !important;
    height: 100%;
    opacity: 1;
    background: transparent;
}
.av-horizontal-gallery-link svg {
    position: absolute;
    bottom: 10px;
    right: 10px;
    opacity: 0;
    transition: opacity 0.4s ease-in-out;
}
.av-horizontal-gallery-wrap:hover .av-horizontal-gallery-link svg,
.av-horizontal-gallery-link:focus svg,
.av-horizontal-gallery-link:focus-visible svg {
    opacity: 1;
}
.av-horizontal-gallery-link:focus-visible {
    outline: 3px solid #1a73e8;
    outline-offset: -3px;
}
#top .avia-slideshow-arrows a.avia-svg-icon {
  background: #3a3200 !important;
  opacity: 1 !important;
}

/* R 5.2 - Conteúdo, elementos interativos com área clicável inferior à
   dimensão mínima recomendada de 44x44px CSS (WCAG 2.5.5/2.5.8). */

/* Paginação (ex.: página "Alojamento"): o Enfold define a caixa do número
   de página a 35x35px (#top .pagination .current/a, layout.css). Repete-se
   o mesmo seletor com !important para ganhar à regra do tema pai sem
   depender só de especificidade/ordem de carregamento. */
#top .pagination .current,
#top .pagination a,
#top .fullsize .template-blog .pagination a {
    height: 44px !important;
    width: 44px !important;
    line-height: 44px !important;
}

/* Botão "Pesquisar" da barra de pesquisa do Diretório (plugin
   adsi-balcao-online, layouts "meda"/genérico: .bo-search/.bo-grid-search)
   — height fixo de 42px, abaixo do mínimo. min-height em vez de height
   para não cortar texto/foco em ecrãs estreitos. */
.bo-search input,
.bo-search select,
.bo-search button,
.bo-grid-search input,
.bo-grid-search select,
.bo-grid-search button {
    min-height: 44px !important;
    height: auto !important;
}

/* Ícone de pesquisa (lupa) do menu principal do Enfold
   (#menu-item-search, .menu-item-search-dropdown > a): largura da área
   clicável definida só pelo padding do ícone, ficando estreita a mais
   (a altura já cobre toda a barra do cabeçalho). display:flex centra o
   ícone dentro da caixa alargada sem alterar o tamanho visual do SVG. */
#top .av-main-nav .menu-item-search-dropdown > a.avia-svg-icon {
    min-width: 44px !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Botão "Fechar" (X) do painel de gestão de consentimento de cookies
   (Complianz, .cmplz-cookiebanner .cmplz-close) — caixa de 20x20px sem
   padding. Aumenta-se a caixa clicável mantendo o ícone SVG no tamanho
   visual original (20px), centrado por flexbox. */
.cmplz-cookiebanner .cmplz-close {
    width: 44px !important;
    height: 44px !important;
    line-height: 44px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.cmplz-cookiebanner .cmplz-close svg {
    width: 20px !important;
    height: 20px !important;
}

/* Botão "Fechar" (X) da janela de visualização de imagens (lightbox
   Magnific Popup do Enfold, ex.: página "Heráldica") — caixa de 40x40px.
   Desloca-se a posição (right/top) em metade do aumento para manter o
   botão ancorado ao mesmo canto do popup. */
div.avia-popup .mfp-close {
    width: 44px !important;
    height: 44px !important;
    line-height: 42px !important;
    right: -15px !important;
    top: -7px !important;
}

/* Galeria de imagens (Swiper.js) das páginas de detalhe do Diretório
   (plugin adsi-diretorio-empresarial, single-diretorio.php — ex.:
   /diretorio/rebelde-ii/): pontos de paginação sem área de toque (só o
   ponto de 8px é clicável) e setas de navegação com largura insuficiente
   (a altura já vem a 44px por omissão do Swiper). Ponto visual desenhado
   à parte via ::before, dentro de uma caixa de 44x44px, com o estado
   ativo a distinguir-se também pelo tamanho (não só cor, WCAG 1.4.1). */
.swiper-container .swiper-pagination-bullet {
    width: 44px !important;
    height: 44px !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    opacity: 1 !important;
}
.swiper-container .swiper-pagination-bullet::before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #fff;
    opacity: 0.6;
}
.swiper-container .swiper-pagination-bullet-active::before {
    opacity: 1;
    background-color: #F8BB11;
}
.swiper-container .swiper-button-prev,
.swiper-container .swiper-button-next {
    width: 44px !important;
}

/* R 3.3 - Conteúdo, hiperligações com apresentação visual inconsistente:
   algumas páginas (ex.: /como-chegar/, dentro de um [av_toggle]) têm
   hiperligações a azul (color:#0000ff, herdado de conteúdo colado do
   Word/editor externo) em vez da cor de marca definida para os links do
   site (#863823) — o estilo vem de um <span> aninhado dentro do <a>, não
   do próprio <a>, por isso o override tem de cobrir também os
   descendentes. Excluídos os botões [av_button] (.avia-button, ex.:
   "Todos os Documentos") e os botões do shortcode de documentos
   (.tdoc-shortcode-item-btn, ex.: "Ação Social" em /tipo-de-documento/) —
   a cor deles (normalmente branco sobre fundo de cor, já definida com
   !important na própria regra do componente) é definida de propósito pelo
   botão, não é o caso de inconsistência que este fix corrige, e forçar
   #863823 tornava o texto do botão ilegível sobre o fundo colorido. */
.entry-content-wrapper a:not(.avia-button):not(.tdoc-shortcode-item-btn),
.entry-content-wrapper a:not(.avia-button):not(.tdoc-shortcode-item-btn) *,
.toggle_content a:not(.avia-button):not(.tdoc-shortcode-item-btn),
.toggle_content a:not(.avia-button):not(.tdoc-shortcode-item-btn) * {
    color: #863823 !important;
}

/* Complemento ao fix anterior: o Enfold só sublinha links em
   :hover/:focus/:visited (ver print media query em base.css, único sítio
   do core com text-decoration:underline em <a> — não se aplica em ecrã).
   Em repouso, dentro de texto corrido, um link não se deve distinguir só
   pela cor (WCAG 1.4.1 - uso de cor), por isso mesmo com a cor de marca
   #863823 definida acima o sublinhado é sempre necessário.
   Sublinhado sempre, restrito a zonas de texto corrido (conteúdo, widgets
   de texto do rodapé, breadcrumb) — não ao menu principal, botões ou
   cartões, onde seria ruído visual. Excluídos os botões [av_button]
   (.avia-button, usados em 55+ páginas do site), os botões do shortcode
   de documentos (.tdoc-shortcode-item-btn, já com text-decoration:none
   próprio) e links que só contêm uma imagem/SVG (sublinhado por baixo de
   uma imagem não faz sentido visual). */
.entry-content-wrapper a:not(.avia-button):not(.tdoc-shortcode-item-btn):not(:has(> img)):not(:has(> svg)) {
    text-decoration: underline !important;
}
#footer .textwidget a {
    text-decoration: underline !important;
}
.breadcrumb.breadcrumbs.avia-breadcrumbs a,
.breadcrumb.breadcrumbs.avia-breadcrumbs a span {
    text-decoration: underline !important;
}
/* Reforço direto (não depende de :has() nem de o botão estar dentro de
   .entry-content-wrapper): botões [av_button]/elemento "Botão" do Avia
   Builder, sempre envolvidos em .avia-button-wrap (ex.: "Todos os
   Documentos" na homepage, a apontar para /balcao-online/), continuam sem
   sublinhado onde quer que apareçam no site — inclui #footer .textwidget,
   que ainda não tinha a mesma exclusão do bloco de conteúdo acima. */
.avia-button-wrap a,
a.avia-button {
    text-decoration: none !important;
}
.parsley-errors-list {
  color: #900;
  font-size: 1rem !important;
  line-height: 1.5rem !important;
  list-style-type: none !important;
}
.parsley-errors-list li {
    line-height: 1.5rem !important;
    margin: 0 !important;
}

/* Plugin adsi-core (módulo "destaques", destaques.css): data dos cartões de
   destaque abaixo do mínimo legível de 16px (WCAG 1.4.4) — 0.875rem (14px)
   no cartão normal, 0.75rem (12px) na variante compacta da grid-nine-row e
   no mês do overlay de data sobre a imagem. Corrigido aqui no child theme
   (não no ficheiro do plugin, que se perde em atualizações). */
.destaque-date,
.grid-nine-row--compact .destaque-date,
.destaque-date-overlay .date-month {
    font-size: 1rem !important;
}