@charset "UTF-8";

:root {
    --bs-primary: #1abc9c;
    --bs-secondary: #2c3e50;
    --bs-primary-rgb: 26, 188, 156;
    --bs-secondary-rgb: 44, 62, 80;
}


.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--bs-link-color);
    --bs-btn-hover-border-color: var(--bs-link-color);
    --bs-btn-focus-shadow-rgb: 60, 198, 171;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-primary);
    --bs-btn-active-border-color: var(--bs-primary);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--bs-primary);
    --bs-btn-disabled-border-color: var(--bs-primary);
}

.btn-secondary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--bs-secondary);
    --bs-btn-border-color: var(--bs-secondary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #253544;
    --bs-btn-hover-border-color: #233240;
    --bs-btn-focus-shadow-rgb: 76, 91, 106;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #233240;
    --bs-btn-active-border-color: #212f3c;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #2c3e50;
    --bs-btn-disabled-border-color: #2c3e50;
}

.text-bg-primary {
    color: #fff !important;
    background-color: var(--bs-primary) !important;
}

.text-bg-secondary {
    color: #fff !important;
    background-color: var(--bs-secondary) !important;
}

.link-primary {
    color: #1abc9c !important;
}

    .link-primary:hover, .link-primary:focus {
        color: #15967d !important;
    }

.link-secondary {
    color: #2c3e50 !important;
}

    .link-secondary:hover, .link-secondary:focus {
        color: #233240 !important;
    }

.border-primary {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important;
}

.border-secondary {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important;
}

/* rtl:end:remove */
.text-primary {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
}

.text-secondary {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;
}

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

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

.dropdown-menu {
    --bs-dropdown-spacer: 0;
    --bs-dropdown-link-color: rgba(0, 0, 0, 0.55);
}

.navbar {
    --bs-navbar-padding-y: 0;
}

html {
    height: 100%;
    scroll-padding-top: calc(4.5rem - 1px);
}

a {
    color: var(--bs-gray-100);
    text-decoration: none;
}

    a:hover {
        color: var(--bs-gray-400);
        text-decoration: none;
    }

.page-section {
    padding: 6rem 0;
}

    .page-section .page-section-heading {
        font-size: 2.25rem;
        line-height: 2rem;
    }

@media (min-width: 992px) {
    .page-section .page-section-heading {
        font-size: 3rem;
        line-height: 2.5rem;
    }
}

.divider-custom {
    margin: 1.25rem 0 1.5rem;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

    .divider-custom .divider-custom-line {
        width: 100%;
        max-width: 7rem;
        height: 0.25rem;
        background-color: #2c3e50;
        border-radius: 1rem;
        border-color: #2c3e50;
    }

        .divider-custom .divider-custom-line:first-child {
            margin-right: 1rem;
        }

        .divider-custom .divider-custom-line:last-child {
            margin-left: 1rem;
        }

    .divider-custom .divider-custom-icon {
        color: #2c3e50;
        font-size: 2rem;
    }

    .divider-custom.divider-light .divider-custom-line {
        background-color: #fff;
    }

    .divider-custom.divider-light .divider-custom-icon {
        color: #fff;
    }

.btn-xl {
    padding: 1rem 1.75rem;
    font-size: 1.25rem;
}

.btn-social {
    border-radius: 100%;
    display: inline-flex;
    width: 3.25rem;
    height: 3.25rem;
    font-size: 1.25rem;
    justify-content: center;
    align-items: center;
}

#mainNav {
    padding-top: 1rem;
    padding-bottom: 1rem;
    font-family: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-weight: 700;
}

    #mainNav .navbar-brand {
        color: #fff;
    }

    #mainNav .navbar-nav {
        margin-top: 1rem;
    }

        #mainNav .navbar-nav li.nav-item a.nav-link {
            color: #fff;
        }

            #mainNav .navbar-nav li.nav-item a.nav-link:hover {
                color: var(--bs-link-color);
            }

            #mainNav .navbar-nav li.nav-item a.nav-link:active, #mainNav .navbar-nav li.nav-item a.nav-link:focus {
                color: #fff;
            }

            #mainNav .navbar-nav li.nav-item a.nav-link.active {
                color: #1abc9c;
            }

    #mainNav .navbar-toggler {
        font-size: 80%;
        padding: 0.8rem;
    }

@media (min-width: 992px) {
    #mainNav {
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
        transition: padding-top 0.3s, padding-bottom 0.3s;
    }

        #mainNav .navbar-brand {
            font-size: 1.75em;
            transition: font-size 0.3s;
        }

        #mainNav .navbar-nav {
            margin-top: 0;
        }

            #mainNav .navbar-nav > li.nav-item > a.nav-link.active {
                color: #fff;
                background: #1abc9c;
            }

                #mainNav .navbar-nav > li.nav-item > a.nav-link.active:active, #mainNav .navbar-nav > li.nav-item > a.nav-link.active:focus, #mainNav .navbar-nav > li.nav-item > a.nav-link.active:hover {
                    color: #fff;
                    background: #1abc9c;
                }

        #mainNav.navbar-shrink {
            padding-top: 0.5rem;
            padding-bottom: 0.5rem;
        }

            #mainNav.navbar-shrink .navbar-brand {
                font-size: 1.5em;
            }
}

.form-floating input.form-control,
.form-floating textarea.form-control {
    font-size: 1.5rem;
    border-left: 0;
    border-right: 0;
    border-top: 0;
    border-radius: 0;
    border-width: 1px;
}

    .form-floating input.form-control:focus,
    .form-floating textarea.form-control:focus {
        box-shadow: none;
    }

.form-floating label {
    font-size: 1.5rem;
    color: #6c757d;
}

.masthead {
    padding-top: calc(6rem + 74px);
    padding-bottom: 6rem;
}

    .masthead .masthead-heading {
        font-size: 2.75rem;
        line-height: 2.75rem;
    }

    .masthead .masthead-subheading {
        font-size: 1.25rem;
    }

    .masthead .masthead-avatar {
        width: 15rem;
    }

@media (min-width: 992px) {
    .masthead {
        padding-top: calc(6rem + 104px);
        padding-bottom: 6rem;
    }

        .masthead .masthead-heading {
            font-size: 4rem;
            line-height: 3.5rem;
        }

        .masthead .masthead-subheading {
            font-size: 1.5rem;
        }
}

.portfolio .portfolio-item {
    cursor: pointer;
    position: relative;
    display: block;
    max-width: 25rem;
    border-radius: 0.5rem;
    overflow: hidden;
}

    .portfolio .portfolio-item .portfolio-item-caption {
        position: absolute;
        top: 0;
        left: 0;
        transition: all 0.2s ease-in-out;
        opacity: 0;
        background-color: rgba(26, 188, 156, 0.9);
    }

        .portfolio .portfolio-item .portfolio-item-caption:hover {
            opacity: 1;
        }

        .portfolio .portfolio-item .portfolio-item-caption .portfolio-item-caption-content {
            font-size: 1.5rem;
        }

.portfolio-modal .btn-close {
    color: #1abc9c;
    font-size: 2rem;
    padding: 1rem;
}

.portfolio-modal .portfolio-modal-title {
    font-size: 2.25rem;
    line-height: 2rem;
}

@media (min-width: 992px) {
    .portfolio-modal .portfolio-modal-title {
        font-size: 3rem;
        line-height: 2.5rem;
    }
}

.footer {
    padding-top: 5rem;
    padding-bottom: 5rem;
    background-color: #2c3e50;
    color: #fff;
}

.copyright {
    background-color: #1a252f;
}

/*
    customizacoes PRODEST
*/

.dropdown:hover > .dropdown-menu {
    display: block;
}

.dropdown-menu > li:hover > .dropdown-menu {
    display: block;
    position: absolute;
    left: 70%;
    top: 5px;
}

.gov-header {
    border-bottom: none;
}

li.nav-item::marker {
    content: none;
}


li.has-submenu > a {
    position: relative;
    padding-right: 20px;
}

.sf-menu li.has-submenu > a {
    position: relative;
    padding-right: 20px;
}

/*    .sf-menu li.has-submenu > a::after {
        content: ">";
        position: absolute;
        right: 5px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 1em;
        color: var(--color-text-menu);
        font-weight: 600;
    }*/




/**
* Accesibility Actions
*
* Main structure and common
* components of website
* such as accesibility actions
*
* @date 11/03/2015
*
* @subsubsection Accesibility Actions
*
*/

/* ------------------------------------------------------------ *\
|* ------------------------------------------------------------ *|
|* Zoom Font Size
|* ------------------------------------------------------------ *|
\* ------------------------------------------------------------ */

.xx-small,
.xx-small .title-link a,
.xx-small .thumbnail .caption,
.xx-small .thumbnail .legend-banner,
.xx-small .header-name > a,
.x-small .header-name > a,
.xx-small .widget-aside-first .content-title,
.xx-small .widget-right-column .content-title,
.xx-small .widget-sep .content-title,
.xx-small .title-banner,
.xx-small #menu-vertical .widget-aside-first .content-title,
.xx-small #menu-vertical .widget-sep .content-title,
.xx-small .content-title,
.xx-small .btn,
.xx-small .submit-button button,
.xx-small .content-body,
.xx-small .footer-content,
.xx-small .projection-page .header-projection h1,
.xx-small .tagged-posts .header-projection h1,
.xx-small .tw-social-icon a,
.xx-small .description,
.xx-small .carousel-description-vertical .title-item-carousel,
.xx-small .carousel-description-vertical,
.xx-small .projection-page .content-projection,
.xx-small .tagged-posts .content-projection,
.xx-small .video-caption,
.xx-small .video-caption .video-title,
.xx-small .container-licitacoes .list-licitacoes,
.xx-small .list-licitacoes .item-licitacao .panel-title,
.xx-small .carousel-slider .carousel-caption h4 {
    font-size: xx-small;
}

    .x-small,
    .x-small .title-link a,
    .x-small .thumbnail .caption,
    .x-small .thumbnail .legend-banner,
    .small .header-name > a,
    .x-small .widget-aside-first .content-title,
    .x-small .widget-right-column .content-title,
    .x-small .widget-sep .content-title,
    .x-small .title-banner,
    .x-small #menu-vertical .widget-aside-first .content-title,
    .x-small #menu-vertical .widget-sep .content-title,
    .xx-small .content-title,
    .x-small .btn,
    .x-small .submit-button button,
    .x-small .content-body,
    .x-small .footer-content,
    .x-small .tw-social-icon a,
    .x-small .description,
    .x-small .carousel-description-vertical,
    .xx-small .carousel-description-vertical .title-item-carousel,
    .xx-small .projection-page .header-projection h1,
    .xx-small .tagged-posts .header-projection h1,
    .x-small .video-caption,
    .x-small .video-caption .video-title,
    .x-small .projection-page .content-projection,
    .x-small .tagged-posts .content-projection,
    .x-small .container-licitacoes .list-licitacoes,
    .x-small .list-licitacoes .item-licitacao .panel-title,
    .xx-small .carousel-slider .carousel-caption h4 {
        font-size: x-small;
    }

        .small,
        .small .title-link a,
        .small .thumbnail .caption,
        .small .thumbnail .legend-banner,
        .medium .header-name > a,
        .small .widget-aside-first .content-title,
        .small .widget-right-column .content-title,
        .small .widget-sep .content-title,
        .small .title-banner,
        .small #menu-vertical .widget-aside-first .content-title,
        .small #menu-vertical .widget-sep .content-title,
        .small .tw-social-icon a,
        .x-small .content-title,
        .small .btn,
        .small .submit-button button,
        .small .content-body,
        .small .footer-content,
        .small .description,
        .small .carousel-description-vertical,
        .small .video-caption,
        .small .video-caption .video-title,
        .x-small .carousel-description-vertical .title-item-carousel,
        .x-small .projection-page .header-projection h1,
        .x-small .tagged-posts .header-projection h1,
        .small .projection-page .content-projection,
        .small .container-licitacoes .list-licitacoes,
        .small .list-licitacoes .item-licitacao .panel-title,
        .small .tagged-posts .content-projection,
        .x-small .carousel-slider .carousel-caption h4 {
            font-size: small;
        }

            .medium,
            .medium .title-link a,
            .medium .thumbnail .caption,
            .medium .thumbnail .legend-banner,
            .large .header-name > a,
            .medium .widget-aside-first .content-title,
            .medium .widget-right-column .content-title,
            .medium .widget-sep .content-title,
            .medium .title-banner,
            .medium #menu-vertical .widget-aside-first .content-title,
            .medium #menu-vertical .widget-sep .content-title,
            .small .content-title,
            .medium .btn,
            .medium .submit-button button,
            .medium .content-body,
            .medium .footer-content,
            .medium .tw-social-icon a,
            .medium .description,
            .medium .projection-page .content-projection,
            .medium .tagged-posts .content-projection,
            .medium .carousel-description-vertical,
            .medium .video-caption,
            .medium .video-caption .video-title,
            .medium .container-licitacoes .list-licitacoes,
            .medium .list-licitacoes .item-licitacao .panel-title,
            .small .carousel-description-vertical .title-item-carousel,
            .small .projection-page .header-projection h1,
            .small .tagged-posts .header-projection h1,
            .small .carousel-slider .carousel-caption h4 {
                font-size: medium;
            }

                .large,
                .large .title-link a,
                .large .thumbnail .caption,
                .large .thumbnail .legend-banner,
                .x-large .header-name > a,
                .large .widget-aside-first .content-title,
                .large .widget-right-column .content-title,
                .large .widget-sep .content-title,
                .large .title-banner,
                .large #menu-vertical .widget-aside-first .content-title,
                .large #menu-vertical .widget-sep .content-title,
                .medium .content-title,
                .large .btn,
                .large .submit-button button,
                .large .content-body,
                .large .footer-content,
                .large .tw-social-icon a,
                .large .description,
                .large .projection-page .content-projection,
                .large .tagged-posts .content-projection,
                .large .carousel-description-vertical,
                .large .video-caption,
                .large .video-caption .video-title,
                .large .container-licitacoes .list-licitacoes,
                .large .list-licitacoes .item-licitacao .panel-title,
                .medium .carousel-description-vertical .title-item-carousel,
                .medium .projection-page .header-projection h1,
                .medium .tagged-posts .header-projection h1,
                .medium .carousel-slider .carousel-caption h4 {
                    font-size: large;
                }

                    .x-large,
                    .x-large .title-link a,
                    .x-large .thumbnail .caption,
                    .x-large .thumbnail .legend-banner,
                    .xx-large .header-name > a,
                    .x-large .widget-aside-first .content-title,
                    .x-large .widget-right-column .content-title,
                    .x-large .widget-sep .content-title,
                    .x-large .title-banner,
                    .x-large #menu-vertical .widget-aside-first .content-title,
                    .x-large #menu-vertical .widget-sep .content-title,
                    .large .content-title,
                    .x-large .btn,
                    .x-large .submit-button button,
                    .x-large .content-body,
                    .x-large .footer-content,
                    .x-large .tw-social-icon a,
                    .x-large .description,
                    .x-large .projection-page .content-projection,
                    .x-large .tagged-posts .content-projection,
                    .x-large .carousel-description-vertical,
                    .x-large .video-caption,
                    .x-large .video-caption .video-title,
                    .x-large .container-licitacoes .list-licitacoes,
                    .x-large .list-licitacoes .item-licitacao .panel-title,
                    .large .carousel-description-vertical .title-item-carousel,
                    .large .projection-page .header-projection h1,
                    .large .tagged-posts .header-projection h1,
                    .large .carousel-slider .carousel-caption h4 {
                        font-size: x-large;
                    }

                        .xx-large,
                        .xx-large .title-link a,
                        .xx-large .thumbnail .caption,
                        .xx-large .thumbnail .legend-banner,
                        .xx-large .header-name > a,
                        .xx-large .widget-aside-first .content-title,
                        .xx-large .widget-right-column .content-title,
                        .xx-large .widget-sep .content-title,
                        .xx-large .title-banner,
                        .xx-large #menu-vertical .widget-aside-first .content-title,
                        .xx-large #menu-vertical .widget-sep .content-title,
                        .x-large .content-title,
                        .xx-large .content-title,
                        .xx-large .btn,
                        .xx-large .submit-button button,
                        .xx-large .content-body,
                        .xx-large .footer-content,
                        .xx-large .tw-social-icon a,
                        .xx-large .description,
                        .xx-large .projection-page .content-projection,
                        .xx-large .tagged-posts .content-projection,
                        .xx-large .carousel-description-vertical,
                        .xx-large .video-caption,
                        .xx-large .video-caption .video-title,
                        .xx-large .container-licitacoes .list-licitacoes,
                        .xx-large .list-licitacoes .item-licitacao .panel-title,
                        .x-large .carousel-description-vertical .title-item-carousel,
                        .x-large .projection-page .header-projection h1,
                        .x-large .tagged-posts .header-projection h1,
                        .x-large .carousel-slider .carousel-caption h4 {
                            font-size: xx-large;
                        }

/* ------------------------------------------------------------ *\
|* ------------------------------------------------------------ *|
|* Contrast
|* ------------------------------------------------------------ *|
\* ------------------------------------------------------------ */

body.contraste,
body.contraste .form .table,
body.contraste .tag-title,
body.contraste .panel-group-downloads .description-table-container,
body.contraste .container-licitacoes .list-licitacoes,
body.contraste .table .title-row,
body.contraste .filter-licitacao,
body.contraste .carousel-slider .carousel-caption,
body.contraste .noticia .published,
body.contraste .alert,
body.contraste .pgwSlideshow,
body.contraste .pgwSlideshow .ps-list,
body.contraste .bg-color-element,
body.contraste .photographer,
body.contraste .content-items-wrapper .items-wrapper .crsl-item .item-carousel,
body.contraste .content-items-wrapper .items-wrapper .item-carousel .date-item-carousel,
body.contraste .list-services .service-item,
body.contraste .gov-bar-container,
body.contraste .col-gov-bar-left,
body.contraste .col-gov-bar-center .col-gov-bar-name,
body.contraste .header-bar-container .col-gov-bar-content .zone-header,
body.contraste .header-bar-container .col-gov-bar-navigation-header .btn-custom-toggler,
body.contraste .scroll-to-fixed-fixed .gov-header-accessibility,
body.contraste .scroll-to-fixed-fixed.fixed-top-header,
body.contraste .gov-header,
body.contraste .gov-header .circle-border,
body.contraste .footer-wrapper,
body.contraste .footer-bar-container .col-gov-bar-left,
body.contraste .footer-bar-container .col-gov-bar-right,
body.contraste .footer-bar-container .col-gov-bar-center-right,
body.contraste .footer-bar-container .col-gov-bar-center .col-gov-bar-name,
body.contraste .footer-bar-container .col-gov-bar-center .col-gov-bar-logo,
body.contraste .contact-info,
body.contraste .bar-red-footer,
body.contraste .footer-bar-container .col-gov-bar-center .footer-contact-info,
body.contraste .credits,
body.contraste .navbar-mobile,
body.contraste .navbar-mobile .navbar-toggle .icon-bar,
body.contraste .cbp-spmenu h3,
body.contraste #col-gov-bar-center-id .row-navigation,
body.contraste .footer-wrapper .footer-menu,
body.contraste .cbp-spmenu-left.menu-open,
body.contraste .zone-mobile-menu-header .menu li.open > a.dropdown-toggle,
body.contraste .event-description,
body.contraste .agenda-item-container,
body.contraste .widget-container,
body.contraste .navbar-governo,
body.contraste .col-gov-bar-navigation-header,
body.contraste .modal-content {
    background-color: black !important;
    background-image: none;
    color: white;
}

    body.contraste li.central-content-item a,
    body.contraste h1.item-media,
    body.contraste .h1.item-media,
    body.contraste h2.item-media,
    body.contraste .h2.item-media,
    body.contraste h3.item-media,
    body.contraste .h3.item-media {
        background-color: black;
    }

    body.contraste .tags .title {
        background: none;
    }

    body.contraste a,
    body.contraste a:active,
    body.contraste a:focus,
    body.contraste a:hover,
    body.contraste .gov-menu > li a,
    body.contraste .header-name > a,
    body.contraste .title-news a,
    body.contraste .menu > li a,
    body.contraste .nav > li > a.active,
    body.contraste .menu .dropdown-menu > .active > a,
    body.contraste .menu .dropdown-menu > .active > a:hover,
    body.contraste .menu .dropdown-menu > .active > a:focus,
    body.contraste .menu .dropdown-menu > li:hover > a,
    body.contraste .menu > li:hover > a,
    body.contraste .thumbnail .caption,
    body.contraste .thumbnail a:hover,
    body.contraste .thumbnail a:focus,
    body.contraste .thumbnail .link-color-color,
    body.contraste .thumbnail a.link-color-color:hover,
    body.contraste .thumbnail a.link-color-color:focus,
    body.contraste .album-wrapper .album-item .thumbnail,
    body.contraste .content-partners-wrapper .partners-item .thumbnail,
    body.contraste .btn-primary,
    body.contraste .submit-button button,
    body.contraste .btn-success,
    body.contraste .menu_vertical .smv_item_active .item,
    body.contraste .menu_vertical .smv_item_inactive .item,
    body.contraste .panel-group-downloads .panel .panel-heading a,
    body.contraste .table thead,
    body.contraste .expand .mybutton,
    body.contraste .pager li > a,
    body.contraste .nav .open > a,
    body.contraste .nav .open > a:hover,
    body.contraste .nav .open > a:focus,
    body.contraste .menu .open > a,
    body.contraste .menu .open > a:hover,
    body.contraste .menu .open > a:focus,
    body.contraste .menu-wrapper .navbar-brand,
    body.contraste .cbp-spmenu-open .nav > li > a,
    body.contraste .btn-read-more,
    body.contraste .default-widget .btn-default,
    body.contraste .menu > li,
    body.contraste .dropdown-menu > li,
    body.contraste .album-wrapper .album-item .date-album,
    body.contraste .overlay a.mybutton,
    body.contraste .carousel-nav .fa,
    body.contraste .gov-menu > li a .legend,
    body.contraste .gov-menu > li a .fa,
    body.contraste .video-caption .video-title a,
    body.contraste .fa.video-play,
    body.contraste button.close,
    body.contraste .content-items-wrapper .items-wrapper .item-carousel .title-item-carousel a,
    body.contraste .list-services .service-item a,
    body.contraste .list-services .service-item .prodesticons,
    body.contraste .list-services .service-item:hover a,
    body.contraste .list-services .service-item:hover .prodesticons,
    body.contraste .scroll-to-fixed-fixed .col-gov-bar-navigation .menu a,
    body.contraste .gov-menu > li a > span,
    body.contraste .navbar-header-mobile ul.accessibility-mobile > li > a,
    body.contraste .footer-wrapper .footer-menu a,
    body.contraste .footer-wrapper .footer-menu a span,
    body.contraste .btn-fullscreen-image,
    body.contraste .btn-fullscreen-image:hover,
    body.contraste .btn-fullscreen-image:focus,
    body.contraste .btn-fullscreen-image:active,
    body.contraste .zone-mobile-menu-header .menu li.open > a.dropdown-toggle,
    body.contraste .content-control .manage-actions a,
    body.contraste .title-service a:hover,
    body.contraste .learn-more-service,
    body.contraste .title-service,
    body.contraste a.jqtree_common.jqtree-title.jqtree-title-folder,
    body.contraste li.central-content-item a {
        color: #FFF333;
        border-color: #FFF333;
        text-decoration: underline;
    }

    body.contraste .title-news,
    body.contraste .gov-menu > li span,
    body.contraste .widget-aside-first .content-title,
    body.contraste .widget-right-column .content-title,
    body.contraste .title-banner,
    body.contraste .page-title span,
    body.contraste .projection-page .header-projection .metadata,
    body.contraste .tagged-posts .header-projection .metadata,
    body.contraste .submit-button:after,
    body.contraste .footer,
    body.contraste .filter-licitacao,
    body.contraste .filter-licitacao label,
    body.contraste .footer-bar-container .contact-info,
    body.contraste .event-description b,
    body.contraste .loading-image-calendar,
    body.contraste .modal-form-licitacao .title-licitacao-modal {
        color: white;
    }

    body.contraste #logo-prodest {
        fill: #fff333;
    }

    body.contraste #menu-vertical,
    body.contraste .menu,
    body.contraste .dropdown-menu,
    body.contraste .menu > li,
    body.contraste .menu > li a,
    body.contraste .nav > li > a.active,
    body.contraste .menu .dropdown-menu > .active > a,
    body.contraste .menu .dropdown-menu > .active > a:hover,
    body.contraste .menu .dropdown-menu > .active > a:focus,
    body.contraste .menu .dropdown-menu > li:hover > a,
    body.contraste .menu > li:hover > a,
    body.contraste .thumbnail,
    body.contraste .widget-aside-first .content-title,
    body.contraste .widget-right-column .content-title,
    body.contraste .title-banner,
    body.contraste .smv_slides,
    body.contraste .btn-primary,
    body.contraste .submit-button button,
    body.contraste .btn-success,
    body.contraste .smv_row,
    body.contraste .menu_vertical .smv_item_active .item,
    body.contraste .panel-group-downloads .panel .panel-heading,
    body.contraste table,
    body.contraste .table thead,
    body.contraste .table-striped > tbody > tr:nth-child(odd) > td,
    body.contraste .table-striped > tbody > tr:nth-child(odd) > th,
    body.contraste .table-hover > tbody > tr:hover > td,
    body.contraste .table-hover > tbody > tr:hover > th,
    body.contraste .overlay,
    body.contraste .legend-photo,
    body.contraste .pager li > a,
    body.contraste .nav .open > a,
    body.contraste .nav .open > a:hover,
    body.contraste .nav .open > a:focus,
    body.contraste .panel,
    body.contraste .sfHover,
    body.contraste .dropdown-menu > li > a,
    body.contraste .dropdown-menu > li > a:hover,
    body.contraste .dropdown-menu > li > a:focus,
    body.contraste .menu-wrapper,
    body.contraste .footer,
    body.contraste .btn-read-more,
    body.contraste .default-widget .btn-default,
    body.contraste .album-wrapper .album-item .date-album,
    body.contraste .carousel-inner,
    body.contraste .carousel-news .top-bar,
    body.contraste ul.gov-menu-accessibility li a:hover {
        background-color: black !important;
    }

    body.contraste .pager li > span,
    body.contraste .carousel-indicators .active {
        background-color: white !important;
        color: black;
    }

    body.contraste .form-control,
    body.contraste .edit-item-content textarea {
        background-color: rgb(250, 255, 189);
    }

    body.contraste .tw-social-icon a:hover span,
    body.contraste .tw-social-icon a.facebook:hover span,
    body.contraste .tw-social-icon a.twitter:hover span,
    body.contraste .tw-social-icon a.vimeo:hover span,
    body.contraste .tw-social-icon a.google-plus:hover span,
    body.contraste .tw-social-icon a.linkedin:hover span,
    body.contraste .tw-social-icon a.instagram:hover span,
    body.contraste .tw-social-icon a.pinterest:hover span,
    body.contraste .tw-social-icon a.tumblr:hover span,
    body.contraste .tw-social-icon a.youtube:hover span,
    body.contraste .pager li > a:hover,
    body.contraste .pager li > a:focus,
    body.contraste .menu-wrapper .navbar-toggle .icon-bar,
    body.contraste .carousel-indicators li,
    body.contraste .carousel-slider .carousel-control .fa,
    body.contraste .content-items-wrapper .items-wrapper .item-carousel .learn-more a,
    body.contraste .gov-menu-accessibility a:hover,
    body.contraste .gov-menu-accessibility a:hover > span,
    body.contraste .gov-menu-accessibility a:hover > i,
    body.contraste .oc-social-icon a span,
    body.contraste .oc-social-icon a:hover span,
    body.contraste #scrollUp,
    body.contraste .navbar-header-mobile.open-search .search-mobile .search-form .input-group-btn .btn-default,
    body.contraste .navbar-mobile .navbar-toggle,
    body.contraste .navbar-mobile .navbar-toggle:hover,
    body.contraste .navbar-mobile .navbar-toggle:focus,
    body.contraste .btn-search-mobile,
    body.contraste .btn-search-mobile:hover,
    body.contraste .btn-search-mobile:focus,
    body.contraste .service-icon,
    body.contraste .service-icon .fa,
    body.contraste li.central-content-item a:hover,
    body.contraste li.central-content-item a:focus,
    body.contraste li.central-content-item a:active {
        background-color: #FFF333 !important;
        color: black;
    }

    body.contraste .navbar-mobile,
    body.contraste .footer-wrapper .footer-menu {
        border: none;
    }

    body.contraste .menu,
    body.contraste .dropdown-menu,
    body.contraste .widget-aside-first .content-title,
    body.contraste .widget-right-column .content-title,
    body.contraste .title-banner,
    body.contraste .smv_item .thumbnail,
    body.contraste .btn-primary,
    body.contraste .submit-button button,
    body.contraste .btn-success,
    body.contraste .smv_slides,
    body.contraste .menu_vertical .smv_item_active .item,
    body.contraste .panel-group-contatos .panel,
    body.contraste .tag-title,
    body.contraste .listade-contatos .panel,
    body.contraste .galeriade-arquivos .panel .panel-heading,
    body.contraste .footer,
    body.contraste .pager li > span,
    body.contraste .list-licitacoes .item-licitacao .panel-title,
    body.contraste .pgwSlideshow,
    body.contraste .bg-color-element,
    body.contraste .content-items-wrapper .items-wrapper .crsl-item,
    body.contraste .cbp-spmenu h3,
    body.contraste .modal-content {
        border: 1px solid white;
    }

    body.contraste .btn-read-more,
    body.contraste .album-wrapper .album-item .thumbnail,
    body.contraste div.video .pp_content_container,
    body.contraste .video-image-thumb,
    body.contraste .agenda-item-container,
    body.contraste .gCalFlow .gcf-item-container-block,
    body.contraste a.item-inline-container {
        border: 1px solid #FFF333;
    }

    body.contraste .pgwSlideshow .ps-list,
    body.contraste .footer-wrapper,
    body.contraste .credits {
        border-top: 1px solid white;
    }

    body.contraste .menu > li,
    body.contraste .dropdown-menu li,
    body.contraste .listade-contatos .panel .panel-heading,
    body.contraste .carousel-news .top-bar,
    body.contraste .navbar-mobile,
    body.contraste .header-bar-container.mobile-content,
    body.contraste .gov-bar-container.mobile-content,
    body.contraste .cbp-spmenu h3,
    body.contraste .scroll-to-fixed-fixed.fixed-top-header,
    body.contraste .scroll-to-fixed-fixed .gov-header-accessibility,
    body.contraste .carousel-news .top-bar,
    body.contraste .navbar-mobile {
        border-bottom: 1px solid white;
    }

    body.contraste .cbp-spmenu-left.menu-open {
        border-right: 1px solid white;
    }

    body.contraste .pgwSlideshow .ps-current .ps-prev,
    body.contraste .pgwSlideshow .ps-current .ps-next,
    body.contraste .list-services .service-item,
    body.contraste .navbar-mobile .navbar-toggle,
    body.contraste .item-media {
        border-color: #FFF333;
    }

    body.contraste .cbp-spmenu-open .nav > li > a:hover,
    body.contraste .cbp-spmenu-open .nav > li > a:focus,
    body.contraste .menu > li.visible > a,
    body.contraste .pgwSlideshow .ps-nextIcon {
        border-left-color: #FFF333;
    }

    body.contraste .pgwSlideshow .ps-prevIcon {
        border-right-color: #fff333;
    }

    body.contraste .list-licitacoes .item-licitacao .painel-ativo .panel-title-downloads .bottom-triangle-default {
        border-top-color: #FFF333;
    }

    body.contraste .gov-header,
    body.contraste .content-header {
        background-color: black;
        border-bottom-color: white;
    }

    body.contraste .menu > li:last-child,
    body.contraste .dropdown-menu li:last-child,
    body.contraste .dropdown-menu > li {
        border-bottom: none;
    }

    body.contraste .gov-menu .dropdown-menu > li > a,
    body.contraste .cbp-spmenu h3 {
        border-top: none;
    }

    body.contraste .gov-name a {
        text-shadow: none;
    }

    body.contraste .content-container,
    body.contraste .filter-licitacao {
        background-color: black;
        box-shadow: none;
    }

    body.contraste .filter-licitacao {
        border: 2px solid white;
    }

    body.contraste #triangle-topleft {
        border-top-color: black;
    }

    body.contraste .panel-group-downloads .panel .panel-heading .bottom-triangle,
    body.contraste .bottom-triangle,
    body.contraste .carousel-news .top-bar .bottom-triangle,
    body.contraste .divisor-list-item {
        border-top-color: white;
        border-right-color: transparent;
        border-bottom-color: transparent;
        border-left-color: transparent;
    }

    body.contraste .bottom-triangle-right {
        border-top-color: transparent;
        border-right-color: transparent;
        border-bottom-color: transparent;
        border-left-color: white;
    }

    body.contraste .album-wrapper .album-item .date-album {
        border-top: 1px solid #FFF333;
    }

    body.contraste .icon-item {
        color: black;
    }

    /*Exceptions*/
    body.contraste .parallelogram,
    body.contraste .parallelogram-1,
    body.contraste .col-gov-bar .secondary-bar-top {
        background-color: #524F4F;
    }

    body.contraste .col-gov-bar .secondary-bar-bottom {
        background-color: #9A9A9A;
    }

    body.contraste #col-gov-bar-center-id .col-gov-bar-navigation {
        background-color: #1B1A1A;
    }

    body.contraste .trapezoid-1 {
        border-top-color: #9A9A9A;
    }

    body.contraste .triangle-1 {
        border-top-color: black;
    }

    body.contraste .triangle-2,
    body.contraste li.central-content-item a:hover,
    body.contraste li.central-content-item a:focus,
    body.contraste li.central-content-item a:active {
        border-bottom-color: black;
    }

    body.contraste .footer-bar-container .triangle-3 {
        border-right-color: black;
    }

    body.contraste .scroll-to-fixed-fixed.fixed-top-header,
    body.contraste .pgwSlideshow .ps-list {
        box-shadow: none;
    }

        body.contraste .pgwSlideshow .ps-list li img {
            outline-color: #fff333;
        }

    body.contraste button.close,
    body.contraste .item-category-service .logo-service i.prodesticons,
    body.contraste .list-services .service-item .prodesticons,
    body.contraste .list-services .service-item a {
        text-shadow: none;
    }

    body.contraste button.close,
    body.contraste .item-category-service .logo-service i.prodesticons,
    body.contraste .list-services .service-item .prodesticons,
    body.contraste .list-services .service-item a {
        opacity: 1;
    }

    body.contraste a.close,
    body.contraste .item-category-service .logo-service i.prodesticons,
    body.contraste .list-services .service-item .prodesticons,
    body.contraste .list-services .service-item a {
        text-decoration: none;
    }

    body.contraste .col-gov-bar-content ul.menu,
    body.contraste .col-gov-bar-content ul.menu li > a {
        background-color: #1B1A1A !important;
        border: none;
    }

    body.contraste .scroll-to-fixed-fixed .gov-header-accessibility .gov-header,
    body.contraste .scroll-to-fixed-fixed .gov-header-accessibility .gov-header a {
        color: #FFF333;
        border-color: #FFF333;
    }

    body.contraste .scroll-to-fixed-fixed.fixed-top-header .col-gov-bar-content ul.menu,
    body.contraste .scroll-to-fixed-fixed.fixed-top-header .col-gov-bar-content ul.menu li > a {
        background-color: black !important;
    }

    body.contraste .footer-bar-container .col-gov-bar-center .col-gov-bar-logo .diamond-effect {
        border-top: 5px solid #202020;
    }

    body.contraste li.central-content-item a,
    body.contraste a.item-inline-container {
        text-shadow: none;
        opacity: 1;
        text-decoration: none;
    }

        body.contraste a.item-inline-container:hover,
        body.contraste a.item-inline-container:focus,
        body.contraste a.item-inline-container:active {
            background: none;
        }

        body.contraste a.item-inline-container .item-inline {
            text-decoration: underline;
        }

    body.contraste .gov-header {
        border-color: white;
    }

    /* ----------------------------------
	prettyPhoto Default Theme - Contrast
----------------------------------- */
    body.contraste div.pp_default .pp_top .pp_left,
    body.contraste div.pp_default .pp_top .pp_right,
    body.contraste div.pp_default .pp_expand,
    body.contraste div.pp_default .pp_expand:hover,
    body.contraste div.pp_default .pp_contract,
    body.contraste div.pp_default .pp_contract:hover,
    body.contraste div.pp_default .pp_close,
    body.contraste div.pp_default .pp_nav .pp_play,
    body.contraste div.pp_default .pp_nav .pp_pause,
    body.contraste div.pp_default a.pp_arrow_previous,
    body.contraste div.pp_default a.pp_arrow_next,
    body.contraste div.pp_default .pp_bottom .pp_left,
    body.contraste div.pp_default .pp_bottom .pp_right {
        background-image: url(jquery-prettyPhoto/images/prettyPhoto/default-contrast/sprite.png);
    }
    /* Top left corner */

    body.contraste div.pp_default .pp_next:hover {
        background-image: url(jquery-prettyPhoto/images/prettyPhoto/default-contrast/sprite_next.png);
    }
    /* Next button */
    body.contraste div.pp_default .pp_previous:hover {
        background-image: url(jquery-prettyPhoto/images/prettyPhoto/default-contrast/sprite_prev.png);
    }
    /* Previous button */
    body.contraste div.pp_default .pp_gallery ul li a {
        background-image: url(jquery-prettyPhoto/images/prettyPhoto/default-contrast/default_thumb.png);
        border: 1px solid #aaa;
    }

    body.contraste div.pp_default .pp_content_container .pp_left,
    body.contraste div.pp_default .pp_content_container .pp_right {
        background-image: url(jquery-prettyPhoto/images/prettyPhoto/default-contrast/sprite_y.png);
    }

    body.contraste div.pp_default .pp_top .pp_middle,
    body.contraste div.pp_default .pp_bottom .pp_middle {
        background-image: url(jquery-prettyPhoto/images/prettyPhoto/default-contrast/sprite_x.png);
    }
    /* Bottom pattern/color */

    body.contraste div.pp_default .pp_content .ppt {
        color: #ffffff;
    }

    body.contraste div.pp_default .pp_content {
        background-color: black;
        border: 1px solid #FFF333;
    }
    /* Content background */
    body.contraste div.pp_default .pp_content_container .pp_details {
        border-top: 1px solid #FFF333;
    }

    body.contraste div.pp_default .pp_content .pp_fade {
        border-bottom: 1px solid #FFF333;
    }

    body.contraste div.pp_default #pp_full_res .pp_inline,
    body.contraste div.pp_default .pp_description,
    body.contraste div.pp_default .pp_nav .currentTextHolder {
        color: #ffffff;
    }

    body.contraste div.pp_default .pp_gallery ul li a:hover,
    body.contraste div.pp_default .pp_gallery ul li.selected a {
        border-color: #FFF333;
    }

    /* ----------------------------------
	prettyPhoto Video Theme - Contrast
----------------------------------- */
    body.contraste div.video .pp_arrow_next,
    body.contraste div.video .pp_arrow_previous,
    body.contraste div.video .pp_close {
        background-image: url(jquery-prettyPhoto/images/prettyPhoto/video/sprite-contrast.png);
    }

    body.contraste .fa.video-play {
        border: none;
        text-decoration: none;
        opacity: 1;
    }


.widget-containerfull-widget {
    width: 100%;
    margin: 0;
    padding: 0;
}


.widget-size-10 {
    flex: 0 0 10%;
    max-width: 10%
}

.widget-size-20 {
    flex: 0 0 20%;
    max-width: 20%
}

.widget-size-30 {
    flex: 0 0 30%;
    max-width: 30%
}

.widget-size-40 {
    flex: 0 0 40%;
    max-width: 40%
}

.widget-size-45 {
    flex: 0 0 45%;
    max-width: 45%
}

.widget-size-60 {
    flex: 0 0 60%;
    max-width: 60%
}

.widget-size-70 {
    flex: 0 0 70%;
    max-width: 70%
}

.widget-size-80 {
    flex: 0 0 80%;
    max-width: 80%
}

.widget-size-90 {
    flex: 0 0 90%;
    max-width: 90%
}


.hovereffect {
    width: 100%;
    height: 100%;
    float: left;
    overflow: hidden;
    position: relative;
    text-align: center;
    cursor: default;
}

    .hovereffect .overlay {
        inset: 0;
        width: 100%;
        height: 100%;
        position: absolute;
        overflow: hidden;
        top: 0;
        left: 0;
        opacity: 0;
        filter: alpha(opacity=0);
        background-color: rgba(0,0,0,0.5);
        -webkit-transition: all 0.4s cubic-bezier(0.88,-0.99, 0, 1.81);
        transition: all 0.4s cubic-bezier(0.88,-0.99, 0, 1.81);
    }

    .hovereffect img {
        width: 100%;
        height: auto; /* <- remove a altura fixa */
        aspect-ratio: 16 / 9; /* <- padroniza o quadro, pode trocar p/ 4/3, 1/1, etc. */
        object-fit: cover; /* <- recorte consistente, inclusive para fotos quadradas */
        display: block;
        border-radius: 10px;
    }

    .hovereffect h2 {
        text-transform: uppercase;
        color: #fff;
        text-align: center;
        position: relative;
        font-size: 17px;
        background: rgba(0,0,0,0.6);
        -webkit-transform: translatey(-100px);
        -ms-transform: translatey(-100px);
        transform: translatey(-100px);
        -webkit-transition: all 0.4s cubic-bezier(0.88,-0.99, 0, 1.81);
        transition: all 0.4s cubic-bezier(0.88,-0.99, 0, 1.81);
        padding: 10px;
    }

    .hovereffect a.info {
        text-decoration: none;
        display: inline-block;
        text-transform: uppercase;
        color: #fff;
        border: 1px solid #fff;
        background-color: transparent;
        opacity: 0;
        filter: alpha(opacity=0);
        -webkit-transition: all 0.4s ease;
        transition: all 0.4s ease;        
        padding: 7px 14px;
    }

@media (max-width: 991px) {
    .hovereffect a.info {
        position: relative;
        top: 40%;
    }
}

        .hovereffect a.info:hover {
            box-shadow: 0 0 5px #fff;
        }

    .hovereffect:hover img {
        -ms-transform: scale(1.2);
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
    }

    .hovereffect:hover .overlay {
        opacity: 1;
        filter: alpha(opacity=100);
    }

    .hovereffect:hover h2, .hovereffect:hover a.info {
        opacity: 1;
        filter: alpha(opacity=100);
        -ms-transform: translatey(0);
        -webkit-transform: translatey(0);
        transform: translatey(0);
    }

    .hovereffect:hover a.info {
        -webkit-transition-delay: .2s;
        transition-delay: .2s;
    }





/* Estilizar os botões <a> */
ul.pager li a {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;
}

    /* Efeito de hover */
    ul.pager li a:hover {
        background-color: --bs-navbar-hover-color;
        transform: scale(1.1);
    }

    /* Estilizar o ícone dentro do link (o '>' ou qualquer conteúdo) */
    ul.pager li a:focus,
    ul.pager li a:hover {
        outline: none;
    }

/* Alinhar os itens da lista com espaçamento */
ul.pager li {
    margin: 0 5px;
}


.btn {
    width: fit-content;
}

.service-card {
    transition: transform 0.3s ease-in-out;
    border: none;
    border-radius: 15px;
}

    .service-card:hover {
        transform: translateY(-4px);
    }

.icon-circle {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}

.gradient-custom {
    background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
}

.text-gradient {
    background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}


.content-item-bordered {
    border: 1px solid #ddd;
    position: relative; /* Para garantir que o botão de edição seja posicionado em relação a este contêiner */
}

.edit-btn {
    position: absolute; /* Permite posicionar o botão fora do fluxo normal do layout */
    top: 0px; /* Ajuste a distância do topo */
    right: 0px; /* Ajuste a distância da direita */
    opacity: 0.7; /* Tornando o botão um pouco transparente */
    z-index: 10; /* Garante que o botão fique sobre o conteúdo */
    transition: opacity 0.3s ease; /* Adiciona uma transição suave quando a opacidade mudar */
}

    .edit-btn:hover {
        opacity: 1; /* Quando o botão for hover, ele ficará completamente opaco */
    }


.widget-section {
    padding-bottom: 50px;
    padding-top: 50px;
    overflow: hidden;
    word-wrap: break-word;
}

    .widget-section img,
    .widget-section video,
    .widget-section iframe {
        max-width: 100%;
        height: auto;
    }

.content-title h3 {
    font-weight: bold;
    font-size: 20px;
    font-family: 'OpenSans-Bold',Arial,sans-serif;
    /*padding-top: 7px;*/
}

/*
 *  Bootstrap Carousel Effect Ken Burns
 * ===========================================================================*/

@keyframes kenburns-in {
    0% {
        transform: scale(1);
    }

    100% {
        transform: scale(1.4); /* Zoom In */
    }
}

@keyframes kenburns-out {
    0% {
        transform: scale(1.4); /* Zoom Out */
    }

    100% {
        transform: scale(1); /* Zoom normal */
    }
}

@keyframes kenburns-none {
    0% {
        transform: scale(1);
    }

    100% {
        transform: scale(1); /* Sem zoom */
    }
}


/* Carousel Wrapper */
.kb-carousel {
    overflow: hidden;
    max-height: 450px;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .kb-carousel,
    .kb-carousel .carousel-inner,
    .kb-carousel .carousel-item {
        min-height: 450px; /* era max-height */
    }

    /* Carousel Items */
    .kb-carousel .carousel-item {
        transition: transform .6s ease-in-out 0s, opacity ease-in-out .6s;
    }

        .kb-carousel .carousel-item.active {
            transition: transform .6s ease-in-out 0s, opacity ease-in-out .6s;
        }

    .kb-carousel > .carousel-inner > .carousel-item > img,
    .kb-carousel > .carousel-inner > .carousel-item > a > img {        
        animation: var(--zoom-animation) 20000ms linear 0s infinite alternate;
    }

    .kb-carousel .carousel-item-next.carousel-item-start .carousel-caption,
    .kb-carousel .carousel-item-prev.carousel-item-end .carousel-caption {
        z-index: 0;
        opacity: 0;
    }

        .kb-carousel .carousel-item > a,
        .kb-carousel .carousel-item > img,
        .kb-carousel .carousel-item > a > img {
            height: 450px;
            width: 100%;
            display: block;
            object-fit: cover; /* cobre o box; troca pra 'contain' se não quiser recorte */
            object-position: center;
        }


        .kb-carousel .carousel-control-prev .carousel-control-prev-icon,
        .kb-carousel .carousel-control-next .carousel-control-next-icon {
            background-image: none !important;
        }

/* Carousel Captions */
/* Posicionamento do texto baseado nas opções 3x3 */
.kb-caption.top-left {
    position: absolute;
    top: 0%;
    left: 0%;
    width: max-content;
}

.kb-caption.top-center {
    position: absolute;
    top: 0%;
    left: 50%;
    transform: translateX(-50%);
    width: max-content;
}

.kb-caption.top-right {
    position: absolute;
    top: 0%;    
    left: auto;
    right: 0%;
}

.kb-caption.center-left {
    position: absolute;
    left: 6%;
    bottom: 37%;
    right: auto;
}

.kb-caption.center {
    position: absolute;
    top: 35%;
    left: 50%;
    transform: translate(-50%);
    width: max-content;
}

.kb-caption.center-right {
    position: absolute;    
    bottom: 37%;
    left: auto;
    right: 6%;    
}

.kb-caption.bottom-left {
    position: absolute;
    bottom: 0%;
    left: 0%;
    width: max-content;
    padding-bottom: 2.25rem;
}

.kb-caption.bottom-center {
    position: absolute;    
    left: 50%;
    transform: translate(-50%);
    width: max-content;
}

.kb-caption.bottom-right {
    position: absolute;
    bottom: 0%;
    right: 0%;
    left: auto;
    padding-bottom: 2.25rem;
}


.kb-caption h1,
.kb-caption h4 {
    padding: 0.5rem 0;
    margin-bottom: 0;
}

.kb-caption h1 {
    animation-delay: 1s;
}

.kb-caption h4 {
    animation-delay: 1.5s;
    color: #fff;
    background: rgba(0 0 0 / 0.8);
}

@media (min-width: 768px) {
    .kb-caption {
        bottom: 37%;
        max-width: 75%;
        min-width: 35%;
    }

}

@media (max-width: 768px) {
    .kb-caption h4 {
        font-size: 13px;
    }
}

@media (max-width: 768px) {

        .kb-caption.top-left {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }

        .kb-caption.top-center {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }

        .kb-caption.top-right {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }

        .kb-caption.center-left {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }

        .kb-caption.center-right {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }

        .kb-caption.bottom-left {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }

        .kb-caption.bottom-center {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }

        .kb-caption.bottom-right {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }
}

@media (max-width: 450px) {

    .kb-caption.top-left {
        position: absolute;
        top: 40%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .kb-caption.top-center {
        position: absolute;
        top: 40%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .kb-caption.top-right {
        position: absolute;
        top: 40%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .kb-caption.center-left {
        position: absolute;
        top: 40%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .kb-caption.center-right {
        position: absolute;
        top: 40%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .kb-caption.bottom-left {
        position: absolute;
        top: 40%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .kb-caption.bottom-center {
        position: absolute;
        top: 40%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .kb-caption.bottom-right {
        position: absolute;
        top: 40%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
}

@media (min-width: 1200px) {
    .kb-caption {
        bottom: 45%;
    }
}

/* Controls */
    .kb-control-prev, .kb-control-next {
    width: 3.5rem;
    height: 3.5rem;
    margin: auto 0;
    opacity: 0;
    color: #fff;
    background: rgba(0 0 0 / 0.7);
}

.kb-carousel:hover .kb-control-prev,
.kb-carousel:hover .kb-control-next {
    opacity: 0.8;
    background: #000;
}

.kb-control-prev {
    left: 1%;
}

.kb-control-next {
    right: 1%;
}

    .kb-control-prev:hover,
    .kb-control-prev:focus,
    .kb-control-next:hover,
    .kb-control-next:focus {
        color: #fff;
        background: rgba(0 0 0 / 1);
    }

.img-carousel {
    width: 100%;
    /*height: 550px;*/
    object-fit: cover;
}


/************************/

.title-bar {
    border-top: 2px solid #000;
    width: 50%;
    margin: 0 auto;
    padding-top: 10px;
}



/******************* SERVIÇOS *****************/


.servcies-section-wrapper {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 25px;
}

.services-box {
    color: white;
    width: 250px;
    min-height: 250px;
    padding: 30px 20px;
    border-radius: 12px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    transition: all 0.3s ease-in-out;
}

    .services-box h3,
    .services-box p {
        margin: 0px;
        text-align: center;
    }

    .services-box i {
        background-color: white;
        color: #d2691e;
        width: 60px;
        height: 60px;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 40px;
        margin-bottom: 16px;
        font-size: 24px;
    }

.services-center-content {
    display: block;
    text-align: -webkit-center;
    max-width: 1120px;
    margin: 0 auto;
    max-width: 100%;
}

/********************** NOTICIAS *****************/

#news-slider {
    margin-top: 80px;
}

.post-slide {
    background: #fff;
    margin: 20px 15px 20px;
    border-radius: 15px;
    padding-top: 1px;
    height: 580px;
    text-align: left;
    text-decoration: auto;
    box-shadow: rgba(0, 0, 0, 0.15) 0px 2px 8px;
}

    .post-slide .post-img {
        position: relative;
        overflow: hidden;
        /* width: auto; */
        height: 250px;
        padding: 10px;
        margin-bottom: 10px;
        object-fit: cover;
        object-position: center;
    }

        .post-slide .post-img img {
            width: 100%;
            height: -webkit-fill-available;
            object-fit: cover;
            border-radius: 2%;
            object-position: center;
            transform: scale(1, 1);
            transition: transform 0.2slinear;
        }

    .post-slide:hover .post-img img {
        opacity: 0.95;
        border-radius: 2%;
        transform: scale(1.05,1.05);
    }

    .post-slide .over-layer {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        opacity: 0;
        transition: all 0.50s linear;
    }

    .post-slide:hover .over-layer {
        opacity: 1;
        text-decoration: none;
    }

    .post-slide .post-content {
        background: #fff;
        padding: 2px 20px 40px;
        border-radius: 15px;
    }

    .post-slide .post-title a {
        font-size: 15px;
        font-weight: bold;
        color: #333;
        margin-top: 5px;
        min-height: 50px;
        text-decoration: auto;
        display: inline-block;
        text-transform: uppercase;
        transition: all 0.3s ease 0s;
    }

        .post-slide .post-title a:hover {
            text-decoration: underline;
            color: var(--bs-link-color);
        }

    .post-slide .post-description {
        line-height: 24px;
        color: #808080;
        margin-bottom: 25px;
        min-height: 100px;
    }

    .post-slide .post-date {
        color: #a9a9a9;
        font-size: 14px;
    }

        .post-slide .post-date i {
            font-size: 20px;
            margin-right: 8px;
            color: #CFDACE;
        }

    .post-slide .read-more {
        font-size: 12px;
        position: absolute;
        top: 90%;
        text-wrap-mode: nowrap;
    }


.own-controls {
    padding: 10px 0px 20px;
}

button.control-prev {
    margin-right: 10px;
}

.content-galeria-de-noticias {
    display: flex;
    gap: 20px;
    border-block-start: 1px solid #ccc;
    margin-bottom: 18px !important;
    transition: transform 0.3s ease;
}

    .content-galeria-de-noticias:hover {
        transform: translateX(-2px);
    }

    .content-galeria-de-noticias .noticias-imagem img {
        width: 180px;
        height: 140px;
        object-fit: cover;
        object-position: center;
        transition: transform 0.3sease;
        transition: transform 0.3s ease;
    }

   /* .content-galeria-de-noticias:hover .noticias-imagem img {
        transform: scale(1.05);
    }*/

.conteudo-lista-noticias {
    display: flex;
    flex-direction: column;
    /*justify-content: space-between;*/
    margin-left: 20px;
    flex-grow: 1;
}

    .conteudo-lista-noticias a {
        text-decoration: none;
        color: inherit;
    }

        .conteudo-lista-noticias a:hover {
            opacity: 0.7;
            text-decoration: underline;
        }

.noticias-imagem {
    flex-shrink: 0;
    align-self: center;
}

.readmore {
    align-self: flex-end;
    margin-top: 10px;
}

    .readmore a {
        text-decoration: none;
        color: #000;
    }

@media (max-width: 768px) {
    .content {
        flex-direction: column; /* Imagem vai para baixo */
    }

    /* Opcional: Ajustar a imagem para não ultrapassar a largura */
    .content-galeria-de-noticias .noticias-imagem img {
        width: 100%;
        height: auto;
    }
}


/*.content-title-noticias h3 {
    font-size: xx-large !important;
}*/


.image-capa-noticia {
    margin-bottom: 5%;
    height: 50vh;
    object-fit: contain;
}

.lightbox-modal .carousel-item.active img {
    animation: zoomin 2s ease-in-out;
    max-height: 75vh;
    width: auto;
    height: auto;
    object-fit: contain;
}


/*========================================================
                    Galeria de Imagens
 ==========================================================*/
/* Adiciona uma borda e estilo à div que envolve o carrossel */
.carousel-container {
    border: 2px solid #ccc; /* Borda leve e discreta */
    overflow: hidden; /* Garante que o conteúdo não ultrapasse a borda */
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1); /* Sombra leve para destacar */
    position: relative; /* Garante que o conteúdo posicionado dentro dela seja relativo a esta div */
}

/* Personalizando a barra de rolagem horizontal */
.carousel-thumbnails::-webkit-scrollbar {
    height: 8px; /* Define a altura da barra de rolagem horizontal */
}

.carousel-thumbnails::-webkit-scrollbar-track {
    background: #f1f1f1; /* Cor de fundo da trilha da barra de rolagem */
}

.carousel-thumbnails::-webkit-scrollbar-thumb {
    background: #888; /* Cor do "polegar" da barra de rolagem */
    border-radius: 10px; /* Torna o polegar arredondado */
}

    .carousel-thumbnails::-webkit-scrollbar-thumb:hover {
        background: #555; /* Cor do "polegar" quando o usuário passa o mouse sobre ele */
    }

/* Estilo das miniaturas */
.carousel-thumbnails .img-thumbnail-carousel {
    width: 60px; /* Largura fixa */
    height: 60px; /* Altura fixa */
    object-fit: cover; /* Garante que a imagem ocupe todo o espaço da miniatura sem distorção */
    border-radius: 5px; /* Bordas arredondadas nas miniaturas */
    transition: border 0.3s ease-in-out, z-index 0s; /* Transição suave para a borda */
    z-index: 1; /* Garante que a miniatura tenha um z-index acima do fundo */
}


.carousel-caption.d-none.d-md-block h4.m-0{
    color: #FFF !important;
}

.carousel-thumbnails .row {
    display: flex;
    justify-content: flex-start;
    gap: 5px;
    flex-wrap: nowrap;
}

.carousel-thumbnails .thumbnail-btn {
    border: none;
    background-color: transparent;
    padding: 0;
}

.carousel-thumbnails {
    position: absolute;
    bottom: 10px;
    left: 50%;
    z-index: 10;
    width: 70%;
    overflow-x: auto;
    white-space: nowrap;
    padding-bottom: 10px;
    padding: 1%;
    box-sizing: border-box;
    transform: translateX(-50%);
}

    .carousel-thumbnails .col-auto {
        flex: 0 0 auto;
    }

    .carousel-thumbnails .active-thumbnail {
        border: 3px solid white;
        z-index: 10;
    }

.img-carousel-galeria {
    object-fit: contain;
    background-color: #444444;
    height: 500px;
}

.img-thumbnail {
    padding: 0.1rem;
    background-color: #9a9999;
    max-width: 100%;
    height: auto;
    border: none;
}

@media (max-width: 767px) {
    .carousel-thumbnails .img-thumbnail-carousel {
        width: 40px;
        height: 40px;
    }

    /*.img-carousel-galeria {
        height: 80vh;
    }*/

    .carousel-thumbnails {
        bottom: 5px;
        width: 70%;
        left: 50%;
        padding: 2%;
        transform: none;
        overflow-x: auto;
        white-space: nowrap;
        transform: translateX(-50%);
    }

        .carousel-thumbnails .row {
            flex-wrap: nowrap;
            justify-content: center !important;
        }
}

.row.justify-content-center {
    justify-content: center !important;
}

@media (min-width: 768px) {
    .carousel-thumbnails .img-thumbnail-carousel {
        width: 50px;
        height: 50px;
    }

    /*.img-carousel-galeria {
        height: 80vh;
    }*/

    .carousel-thumbnails {
        bottom: 10px;
        width: 70%;
    }

        .carousel-thumbnails .row {
            flex-wrap: nowrap;
            justify-content: center !important;
        }
}

@media (min-width: 1401px) {
    .carousel-thumbnails .img-thumbnail-carousel {
        width: 60px;
        height: 60px;
    }
}

/** modal da galeria */

:root {
    --lightbox: rgb(0 0 0 / 0.75);
    --carousel-text: #fff;
}

@keyframes zoomin {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.05);
    }

    100% {
        transform: scale(1);
    }
}

.gallery-item {
    display: block;
}

    .gallery-item img {
        box-shadow: 0 0.2rem 0.2rem rgba(0, 0, 0, 0.35);
    }

    .gallery-item:hover img {
        transform: scale(1.01);
    }

.lightbox-modal .modal-content {
    background-color: var(--lightbox);
}

.lightbox-modal .btn-close {
    position: absolute;
    top: 1.25rem;
    right: 1.25rem;
    font-size: 1.25rem;
    z-index: 10;
    filter: invert(1) grayscale(100);
}

.lightbox-modal .modal-body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 1rem;
}

.lightbox-modal .lightbox-content {
    width: 100%;
}

.lightbox-modal .carousel-indicators {
    margin-bottom: 0;
}

    .lightbox-modal .carousel-indicators [data-bs-target] {
        background-color: var(--carousel-text) !important;
    }

.lightbox-modal .carousel-inner {
    width: 75%;
}

    .lightbox-modal .carousel-inner img {
        animation: zoomin 10s linear infinite;
    }

.lightbox-modal .carousel-item .carousel-caption {
    right: 0;
    bottom: 0;
    left: 0;
    padding-bottom: 2rem;
    background-color: var(--lightbox);
    color: var(--carousel-text) !important;
}

.lightbox-modal .carousel-control-prev,
.lightbox-modal .carousel-control-next {
    width: auto;
}

.lightbox-modal .carousel-control-prev {
    left: 4.25rem;
}

.lightbox-modal .carousel-control-next {
    right: 4.25rem;
}

@media (min-width: 1400px) {
    .lightbox-modal .carousel-inner {
        max-width: 60%;
    }
}

.lightbox-modal .carousel-control-next-icon,
.lightbox-modal .carousel-control-prev-icon {
    filter: none;
}

.imagem-modal-galeria {
    /* Remove a animação que pode contribuir para o 'flash' */
    animation: none;
    /* Garante que a imagem se ajuste sem distorcer */
    object-fit: contain;
    /* Define o tamanho máximo da imagem usando as dimensões da tela (viewport) */
    max-width: 85vw; /* Máximo de 85% da largura da tela */
    max-height: 75vh; /* Máximo de 75% da altura da tela */
    /* Permite que o navegador calcule as dimensões corretas mantendo a proporção */
    width: auto;
    height: auto;
}


.btn-fullscreen-enlarge,
.btn-fullscreen-exit {
    position: absolute;
    top: 1.25rem;
    right: 3.5rem;
    z-index: 10;
    border: 0;
    background: transparent;
    opacity: .6;
    font-size: 1.25rem;
}

.btn-play-pause {
    position: absolute;
    top: 1.25rem;
    right: 6rem;
    z-index: 10;
    border: 0;
    background: transparent;
    opacity: .6;
    font-size: 1.25rem;
}

.btn-download-galeria {
    position: absolute;
    top: 1.25rem;
    right: 8.5rem;
    z-index: 10;
    border: 0;
    background: transparent;
    opacity: .6;
    font-size: 1.25rem;
}

.bi {
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: -0.035em;
    fill: currentcolor;
}


.lightbox-modal .carousel-inner img {
    animation: zoomin 10s linear infinite; /* Apenas se você quiser essa animação */
}

.lightbox-modal .carousel-item.active img {
    animation: none !important;
}

.lightbox-modal .carousel-item {
    transition: none !important;
}

.img-resize {
    width: 100%;
    min-height: 230px;
    object-fit: cover;
}


.carousel-fade .carousel-item-modal-galeria.active {
    display: flex !important;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.carousel-indicators li::marker {
    content: none; 
}

.carousel-indicators li {
    background-color: #000 !important;
    border-radius: 50% !important;
    width: 10px !important;
    box-sizing: border-box !important;
    margin-left: 0px !important;
    background-clip: border-box !important;
    border-top: 0 !important;
}

.carousel-indicators .active {
    background-color: #000;
}


/*========================================================
* Social Icons
========================================================== */
.noticias-icones-compartilhar {
    display: inline-flex;
    justify-content: flex-start;
    align-items: center;
    gap: 10px; /* Espaçamento entre os ícones */
    margin-bottom: 20px;
}

    .noticias-icones-compartilhar a {
        width: 30px;
        height: 30px;
        padding: 5px;
        border-radius: 20%; /* Ícones arredondados */
        transition: background-color 0.3s ease; /* Efeito de transição */
    }

        .noticias-icones-compartilhar a:hover {
            opacity: 0.8; /* Efeito de hover */
        }

        /* Ícones específicos */
        .noticias-icones-compartilhar a.facebook {
            background-color: #305fb3;
        }

        .noticias-icones-compartilhar a.twitter {
            background-color: #659FCB;
        }

        .noticias-icones-compartilhar a.whatsapp {
            background-color: #4DC247;
        }

        .noticias-icones-compartilhar a.print {
            background-color: #000000;
        }

    .noticias-icones-compartilhar i {
        font-size: 1.5rem; /* Ajuste do tamanho do ícone */
    }

    /* Alterar a cor de fundo ao passar o mouse (hover) */
    .noticias-icones-compartilhar a:hover .fa-facebook-f {
        background-color: #2d4882;
    }

    .noticias-icones-compartilhar a:hover .fa-twitter {
        background-color: #4a81c4;
    }

    .noticias-icones-compartilhar a:hover .fa-whatsapp {
        background-color: #3a9e3d;
    }

    .noticias-icones-compartilhar a:hover .fa-print {
        background-color: #444;
    }




/*==============================================
    MENU DO RODAPÉ
===============================================*/

.footer-menu-table th, .footer-menu-table td {
    padding-right: 40px;
    text-align: left;
}

.footer-menu-table th {
    font-weight: bold;
}

    .footer-menu-table th a {
        text-decoration: none;
    }

        .footer-menu-table th a:hover {
            text-decoration: underline;
        }

.footer-menu-table td a {
    text-decoration: none;
}

    .footer-menu-table td a:hover {
        text-decoration: underline;
    }

.footer-menu-table td {
    vertical-align: top;
}

.submenu {
    margin-top: 10px;
    padding-left: 15px; /* Indentation for sub-items */
    display: block; /* Makes sub-items stack vertically */
}

/*==========================================================
    MAPA
===========================================================*/

.leaflet-style {
    width: 100%;
    min-width: 577px; /* Tamanho mínimo fixo */
    height: 400px;
}


@media (max-width: 575px) {
    .leaflet-style {
        min-width: 90vw;
    }
}

/*==============================================
    Páginas
 =============================================*/

.pagina h1 {
    font-family: 'Raleway-extralight', sans-serif !important;
    font-size: 48px !important;
    display: flex;
    justify-content: center;
    color: #2C3E50;
    padding-bottom: 20px;
}

.content-pagina .content-title h3 {
    font-size: 30px;
}

/*=======================================
    Barra do governo
=========================================*/
.navbar-governo {
    font-size: small;
}

/*=======================================
    Utilitarios
=========================================*/

.content-title-border-top-none{
    border-top: none !important;
}


/*=======================================
    Header e Banner - Mobile
=========================================*/






