/********************************** CSS GERAL *********************************/
:root {
    /*0967B1*/
    --color-primary: 009, 103, 177;
    /*255586*/
    --color-primary-dark: 8, 60, 99;

    --color-yellow: 249, 178, 52;
    --color-yellow-light: 235, 186, 102;
    --color-yellow-dark: 181, 118, 44;

    --color-green: 13, 143, 54;
    --color-green-light: 78, 163, 103;
    --color-green-dark: 38, 110, 49;

    --color-red: 191, 21, 34;
    --color-red-light: 197, 85, 88;
    --color-red-dark: 145, 39, 40;
    
    --color-blue: 9, 103, 177;
    --color-blue-light: 77, 140, 183;
    --color-blue-dark: 8, 60, 99;

    --color-black: 0, 0, 0;
    --color-black-light: 90, 90, 90;
}

@media (max-width: 992px) {
    .text-sm-center{text-align:center}
}

i.fa {
    font-weight: 100 !important;
}
.oculto{position:absolute;left: -999em;}
a.disabled{cursor:not-allowed;pointer-events:none;opacity:0.5}
audio{width: 100%;}
.inlineBlock{display: inline-block;}

/** cores **/
.black{color: #000;}
.dark-gray{color: #494949;}
.gray{color: #666;}
.light-gray{color: #bababa;}
.white{color: #fff;}

/* cores famurs */
.txt-yellow { color: rgb(var(--color-yellow)); }
.txt-yellow-l { color: rgb(var(--color-yellow-light)); }
.txt-yellow-d { color: rgb(var(--color-yellow-dark)); }
.txt-green { color: rgb(var(--color-green)); }
.txt-green-l { color: rgb(var(--color-green-light)); }
.txt-green-d { color: rgb(var(--color-green-dark)); }
.txt-red { color: rgb(var(--color-red)); }
.txt-red-l { color: rgb(var(--color-red-light)); }
.txt-red-d { color: rgb(var(--color-red-dark)); }
.txt-blue { color: rgb(var(--color-blue)); }
.txt-blue-l { color: rgb(var(--color-blue-light)); }
.txt-blue-d { color: rgb(var(--color-blue-dark)); }

.bg-yellow { background: rgb(var(--color-yellow))!important;; color: #ffffff; }
.bg-yellow-l { background: rgb(var(--color-yellow-light)); color: #494949; }
.bg-yellow-d { background: rgb(var(--color-yellow-dark)); color: #fff; }
.bg-green { background: rgb(var(--color-green))!important;; color: #fff; }
.bg-green-l { background: rgb(var(--color-green-light)); color: #fff; }
.bg-green-d { background: rgb(var(--color-green-dark)); color: #fff; }
.bg-red { background: rgb(var(--color-red))!important;; color: #fff; }
.bg-red-l { background: rgb(var(--color-red-light)); color: #fff; }
.bg-red-d { background: rgb(var(--color-red-dark)); color: #fff; }
.bg-blue { background: rgb(var(--color-blue))!important;; color: #fff; }
.bg-blue-l { background: rgb(var(--color-blue-light)); color: #fff; }
.bg-blue-d { background: rgb(var(--color-blue-dark)); color: #fff; }
.bg-black { background: rgb(var(--color-black)); color: #fff; }


.backgroundGray{background-color: #f7f7f7!important;}
.backgroundWhite{background-color: #fff!important;}

/** font size **/
.fsize150{font-size: 150px!important;}
.fsize08em{font-size: 0.8em;}
.fsize12em{font-size: 1.2em;}
.fsize14em{font-size: 1.4em;}

/** frame **/
.frame-container{margin: 0;}
.frame-container iframe{
    display: block;
    border: none;
    height: 100vh;
    width: 100%;
}

/** line-height **/
.lineh240{line-height: 240px!important;}
.capitalize {text-transform: capitalize;}

/** margins **/
.m0 {margin: 0;}
.mb0{margin-bottom: 0px;}
.mb5{margin-bottom: 5px;}
.mb10{margin-bottom: 10px;}
.mb15{margin-bottom: 15px;}
.mb20{margin-bottom: 20px;}
.mb25{margin-bottom: 25px;}
.mb30{margin-bottom: 30px;}
.mb40{margin-bottom: 40px;}
.ml10{margin-left: 10px;}
.mt0{margin-top: 0px;}
.mt5{margin-top: 5px;}
.mt8{margin-top: 8px;} 
.mt10{margin-top: 10px;} 
.mt15{margin-top: 15px;}
.mt20{margin-top: 20px;}
.mt25{margin-top: 25px;}
.mt40{margin-top: 40px;}
.mv20{margin: 20px 0px;}

/** padding **/
.p0{padding: 0 !important;}
.p5{padding: 5px;}
.p10{padding: 10px;}
.p15{padding: 15px;}
.p20{padding: 20px;}
.p25{padding: 25px;}
.pb10{padding-bottom: 10px;}
.pb60{padding-bottom: 60px;}
.ph10{padding: 0 10px;}
.ph15{padding: 0 15px;}
.ph30{padding: 0 30px;}
.ph60{padding: 0 60px;}
.pl0{padding-left: 0;}
.pl20{padding-left: 20px;}
.pr0{padding-right: 0;}
.pt60{padding-top: 60px;}
.pv10{padding: 10px 0;}
.pv20{padding: 20px 0;}
.pv40{padding: 40px 0;}

.vab{vertical-align: bottom;}
/* para grid 5xN */
@media (min-width: 992px) {
  .col-md-2-5 {
    width: 20%;
  }
}

@media (min-width: 1200px) {
  .col-lg-2-5 {
    width: 20%;
  }
}

.flex {display: flex;}
.fill {width: 100%;}
.flex-fill {
    width: 100%;
    height: 100%;
    flex: 1 1 auto;
}

.flex-center {
    align-items: center;
    display: flex;
    justify-content: center;
}

.container {
    width: 100% !important;
    max-width: 1450px;
}

.grid-row { /*12 col grid*/
	display:grid;
	grid-template-columns: repeat(12, 1fr);
    row-gap: 5px;

    --x: auto;
    --y: auto;

	&.container::before, &.container::after {
		display: none;
	}

	& > * {
		grid-column: 1 / span 12;
        grid-row: var(--y) / span 1;
	}

    & > .gcol-xs-1 {grid-column: var(--x) / span 1}
    & > .gcol-xs-2 {grid-column: var(--x) / span 2}
    & > .gcol-xs-3 {grid-column: var(--x) / span 3}
    & > .gcol-xs-4 {grid-column: var(--x) / span 4}
    & > .gcol-xs-5 {grid-column: var(--x) / span 5}
    & > .gcol-xs-6 {grid-column: var(--x) / span 6}
    & > .gcol-xs-7 {grid-column: var(--x) / span 7}
    & > .gcol-xs-8 {grid-column: var(--x) / span 8}
    & > .gcol-xs-9 {grid-column: var(--x) / span 9}
    & > .gcol-xs-10 {grid-column: var(--x) / span 10;}
    & > .gcol-xs-11 {grid-column: var(--x) / span 11;}
    & > .gcol-xs-12 {grid-column: var(--x) / span 12;}

	@media (min-width: 576px) {
        & > .gcol-sm-1 {grid-column: var(--x) / span 1}
        & > .gcol-sm-2 {grid-column: var(--x) / span 2}
        & > .gcol-sm-3 {grid-column: var(--x) / span 3}
        & > .gcol-sm-4 {grid-column: var(--x) / span 4}
        & > .gcol-sm-5 {grid-column: var(--x) / span 5}
        & > .gcol-sm-6 {grid-column: var(--x) / span 6}
        & > .gcol-sm-7 {grid-column: var(--x) / span 7}
        & > .gcol-sm-8 {grid-column: var(--x) / span 8}
        & > .gcol-sm-9 {grid-column: var(--x) / span 9}
        & > .gcol-sm-10 {grid-column: var(--x) / span 10;}
        & > .gcol-sm-11 {grid-column: var(--x) / span 11;}
        & > .gcol-sm-12 {grid-column: var(--x) / span 12;}
	}

    @media (min-width: 768px) {
        column-gap: 30px;

        & > .gcol-md-1 {grid-column: var(--x) / span 1}
        & > .gcol-md-2 {grid-column: var(--x) / span 2}
        & > .gcol-md-3 {grid-column: var(--x) / span 3}
        & > .gcol-md-4 {grid-column: var(--x) / span 4}
        & > .gcol-md-5 {grid-column: var(--x) / span 5}
        & > .gcol-md-6 {grid-column: var(--x) / span 6}
        & > .gcol-md-7 {grid-column: var(--x) / span 7}
        & > .gcol-md-8 {grid-column: var(--x) / span 8}
        & > .gcol-md-9 {grid-column: var(--x) / span 9}
        & > .gcol-md-10 {grid-column: var(--x) / span 10;}
        & > .gcol-md-11 {grid-column: var(--x) / span 11;}
        & > .gcol-md-12 {grid-column: var(--x) / span 12;}
    }

    @media (min-width: 992px) {
        & > .gcol-lg-1 {grid-column: var(--x) / span 1}
        & > .gcol-lg-2 {grid-column: var(--x) / span 2}
        & > .gcol-lg-3 {grid-column: var(--x) / span 3}
        & > .gcol-lg-4 {grid-column: var(--x) / span 4}
        & > .gcol-lg-5 {grid-column: var(--x) / span 5}
        & > .gcol-lg-6 {grid-column: var(--x) / span 6}
        & > .gcol-lg-7 {grid-column: var(--x) / span 7}
        & > .gcol-lg-8 {grid-column: var(--x) / span 8}
        & > .gcol-lg-9 {grid-column: var(--x) / span 9}
        & > .gcol-lg-10 {grid-column: var(--x) / span 10;}
        & > .gcol-lg-11 {grid-column: var(--x) / span 11;}
        & > .gcol-lg-12 {grid-column: var(--x) / span 12;}
    }

    @media (min-width: 1200px) {
        & > .gcol-xl-1 {grid-column: var(--x) / span 1}
        & > .gcol-xl-2 {grid-column: var(--x) / span 2}
        & > .gcol-xl-3 {grid-column: var(--x) / span 3}
        & > .gcol-xl-4 {grid-column: var(--x) / span 4}
        & > .gcol-xl-5 {grid-column: var(--x) / span 5}
        & > .gcol-xl-6 {grid-column: var(--x) / span 6}
        & > .gcol-xl-7 {grid-column: var(--x) / span 7}
        & > .gcol-xl-8 {grid-column: var(--x) / span 8}
        & > .gcol-xl-9 {grid-column: var(--x) / span 9}
        & > .gcol-xl-10 {grid-column: var(--x) / span 10;}
        & > .gcol-xl-11 {grid-column: var(--x) / span 11;}
        & > .gcol-xl-12 {grid-column: var(--x) / span 12;}
    }

    & > .gcol-height-1 {grid-row: var(--y) / span calc(var(--y) + 0);}
    & > .gcol-height-2 {grid-row: var(--y) / span calc(var(--y) + 1);}

    &.reverseH {
        grid-auto-flow: column-reverse;
    }

    &.reverseV {
        grid-auto-flow: row-reverse;
    }

    &.reverse {
        grid-auto-flow: row-reverse column-reverse;
    }
}
.flex-lines-md {
    @media (max-width: 991px) {
        display: flex;
        flex-direction: column;
    }
}

.f0 {flex:100%;}
.f1 {flex:1}
.f1-xs {
    @media (max-width: 575px) {
        flex:1;
    }
}
.f1-sm {
    @media (min-width: 576px) {
        flex:1;
    }
}
.f2 {flex:2}
.f3 {flex:3}
.f4 {flex:4}
.f5 {flex:5}
.g5 {gap: 5px;}
.g10 {gap: 10px;}
.g15 {gap: 15px;}
.g20 {gap: 20px;}
.g25 {gap: 25px;}
.g30 {gap: 30px;}
.f-row {flex-direction: row;}
.f-col {flex-direction: column;}
.f-col-xs {
    @media (max-width: 575px) {
        flex-direction: column;
    }
}

.f-col-i-xs {
    @media (max-width: 575px) {
        flex-direction: column-reverse;
    }
}

.f-col-sm {
    @media (max-width: 767px) {
        flex-direction: column;
    }
}

.f-wrap {
    flex-wrap: wrap;
}

/** @polyfill bootstrap (float-right) */
.float-left {float: left;}
.float-right {float: right;}
.float-xs-right {
    @media (max-width: 575px) {
        float: right;
    }
}
.float-sm-right {
    @media (min-width: 576px) {
        float: right;
    }
}
.float-md-right {
    @media (min-width: 768px) {
        float: right;
    }
}
.float-lg-right {
    @media (min-width: 992px) {
        float: right;
    }
}
.float-xl-right {
    @media (min-width: 1200px) {
        float: right;
    }
}

/******************************** TOPO DO SITE ********************************/
#topBar a.social {margin: 5px 1px}
#barMain{margin-top:0}
#barMain .nav>li>a {color: #000;}
#barMain a img{max-height: 20px;margin-top: -3px;}
#barMain .linkBusca{border-left:1px solid #ccc}
.buscaTopo {
    position: absolute;
    padding: 10px;
    right: 0;
    display:none;
    background-color:#e7e7e7;
}
#topBar form.search input {margin-bottom:0}
#topBar form.search button {
    position: absolute;
    top: 10px;
    right: 25px;
    z-index: 1;
    color:#fff;
    padding: 8px 10px;
    background-color:#999;
}
#topBar form.search button i{padding-right: 0;}
#topNav a.logo{padding:20px 0;}
#topNav h1 {margin: 0;letter-spacing: normal;}
#topNav a.logo img{max-height: 80px;}
@media (max-width: 768px) {
    .buscaTopo {
        position: relative;
        width: 100%;
        background: none;
    }
    #barMain{width:100%}
    #topBar form.search{padding:0}
    #topBar form.search button {right: 10px;}
}

@media (min-width: 990px) {
    #topNav ul.nav>li.mega-menu .row-box{float: left;display: table;width: 100%;}
    #topNav ul.nav>li.mega-menu .row-box:not(:first-child){
        border-top: #eee 1px solid;
        margin-top: 5px;
    }
    #topNav ul.nav>li.mega-menu>ul li>a::before{
        margin-right: 4px;
        display: inline-block;
        font: normal normal normal 14px/1 var(--fa-fontawesone-family, "Font Awesome 6 Pro");
        font-size: inherit;
        text-rendering: auto;
        -webkit-font-smoothing: antialiased;
        content: '\f105';
    }
    #topNav ul.nav>li.mega-menu ul.sem-titulo li>a,
    #topNav ul.nav>li.mega-menu ul.sem-titulo li>a::before{
        font-weight: bold;
    }
}

/******************************* FOOTER DO SITE *******************************/
a.social.fa-instagram:hover {background: #8f49c3!important;color: #fff!important;}
a.social.fa-spotify:hover {background: #1dd05d!important;color: #fff!important;}
a.social.fa-youtube:hover {background: #cc181e!important;color: #fff!important;}
#footer .copyright img{max-height: 20px;}

/************************************ FORMS ***********************************/
.divInputHidden{display: none;}
.zend_form.form-horizontal select{width: 100%!important;}
.zend_form.form-horizontal .g-recaptcha>div{margin:0 auto;}
.zend_form.form-horizontal .divInputContainer .form-group{margin-bottom:0}
.zend_form.form-inline .form-group {margin-right: 5px;}
.zend_form.form-inline .label-inline, .zend_form.form-inline .input-inline{display: inline;}
.zend_form.form-horizontal .inline-input-description{display: inline-block;}

.sky-form.boxed .panel-heading{padding: 0;}
.sky-form.boxed .panel-heading .panel-title{
    margin: 0;
    background: #F5F5F5;
    background-color: transparent;
    background: -webkit-linear-gradient(top, white 1%, #f9f9f9 98%) repeat scroll 0 0 transparent;
    background: linear-gradient(to bottom, white 1%, #f9f9f9 98%) repeat scroll 0 0 transparent;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    border-bottom: rgba(0,0,0,0.07) 1px solid;
    padding: 15px 20px;
    font-size: 20px;
    font-weight: 400;
    display: block;
}
.sky-form.boxed .panel-body select{width: 100%!important;}
.sky-form .inline-input-description{display: inline; margin: 0; margin-left: 10px;}
.sky-form.form-horizontal .radio, .sky-form.form-horizontal .radio-inline{padding-top: 0px;}

/*********************************** MODALS ***********************************/
.modal-dialog .modal-error{background-color: #d9534f;}
.modal-dialog .modal-success{background-color: #5cb85c;}

/***************************** IMPRESSAO CONTEUDO *****************************/
#modalImpressao .modal-header button {font-size: 12px;}
#conteudoImpressao .container {width: 100%;}

/******************************** ACESSO RÁPIDO *******************************/
.acesso-rapido img{
    border-radius: 50%;
    width: 41px;
    height: 41px;
    padding: 3px;
    margin-right: 10px;
}
.acesso-rapido img.featured-icon.empty{
    border: #146794;
    width: 56px;
    height: 56px;
    margin: 25px 0;
}
#boxAcessoRapido .owl-carousel .owl-item div{text-align: left;}

/******************************* AREAS TECNCIAS *******************************/
#menuAreaTecnica .list-toggle ul li.active{
    background-color: rgba(0,0,0,0.06);
}

#menuAreaTecnica .list-toggle ul li a::before{
    content: "\f105";
    display: inline-block;
    font: normal normal normal 14px/1 var(--fa-fontawesone-family, "Font Awesome 6 Pro");
    font-size: inherit;
    text-rendering: auto;
    margin-right: 5px;
}

.linkAreaTecncica:hover{
    scale: 1.01;
    img{
        opacity: 0.6;
    }
    span{
        text-decoration: underline;
    }
}

/************************** ASSISTENCIA FARMACEUTICO **************************/
.logoFarmaceutico{max-width:260px}

/*********************************** AVISOS ***********************************/
#popup2{display: none;}

/*********************************** BANNERS **********************************/
.banner-servico{margin: 10px;}
.slider.fullwidthbanner-container{background-color: transparent;}

/******************************** BOXS DA CAPA ********************************/
section header{margin-bottom: 0;}
.featured-box-minimal>div.clearfix{margin-bottom: 0;}

/***************************** BOX AREAS TECNCIAS *****************************/
#boxAreasTecnicas .owl-carousel .owl-item div{text-align: left;}

/****************************** BOX ESCOLA FAMURS *****************************/
#boxEscolaFamurs{
    background-image:url('../img/escola.jpg');
    padding: 90px 0;
}

/********************************* BOX EVENTOS ********************************/
#boxEventos .data{padding:10px;margin-right: 10px;color:#fff}

/********************************* BOX GUIA RS ********************************/
#boxGuiaRS .lead{margin-bottom: 10px;}

/***************************** BOX MIDIAS SOCIAIS *****************************/
#boxMidiasSociais .owl-carousel .owl-controls{z-index: -1;}

/***************************** BOX NÓS EM NÚMEROS *****************************/
#boxNumeros .numero{margin: 10px;overflow: hidden;}
@media (min-width: 768px) {
    .numeros{display: flex; flex-wrap: wrap;margin-bottom:10px}
    .numeros .numero {flex: 0 50%;margin-bottom:10px}
    .numeros .numero .boxed {height: 90%;margin-top: 20px;}
}
@media (min-width: 992px) {
    .numeros{display: flex; flex-wrap: wrap}
    .numeros .numero {flex:1 1 auto}
}

/******************************** BOX NOTICIAS ********************************/
@media (min-width: 768px) {
    #box-noticias .noticias{display: flex; flex-wrap: wrap;margin-bottom:10px}
    #box-noticias .noticias .noticia {flex: 0 50%;margin-bottom:10px}
    #box-noticias .noticias .noticia .thumbnail {height: 90%;}
}
@media (min-width: 992px) {
    #box-noticias .noticias{display: flex; flex-wrap: wrap;margin-bottom:10px}
    #box-noticias .noticias .noticia {flex:1 1 auto}
    #box-noticias .noticias .noticia .thumbnail {height: 90%;}
    .text-md-left{text-align:left}
}

/******************************* BOX PRESIDENTE *******************************/
.presidente img {max-width:160px}
@media (max-width: 768px) {
    .presidente{text-align:center}
}
.vices {
    margin-top:20px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;

    h3 {
        flex: 100%;
    }
}
.vices .box-content {height: 200px}
.vices .vice{margin-bottom:20px}
.vices .vice h6{font-size:0.9em; margin-bottom:5px}
.vices .vice h6 small{margin-top:5px}
.vices .img-circle{width:100px; height: 100px}
.vices .logo-partido{max-width:90px;margin-bottom:5px}
.vices .box-content small{margin-top:5px}

/******************************** BOX RECEITAS ********************************/
#frameReceitas{width: 100%; height:500px}

/********************************* DOCUMENTOS *********************************/
.listaDocumento .alert{
    position: relative;
}

.listaDocumento .alert a::after{
    position: absolute;
    top: 27%;
    right: 25px;
    margin-top: -3px;
    font: normal normal normal 14px/1 var(--fa-fontawesone-family, "Font Awesome 6 Pro");
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    content: "\f107";
    font-size: 2.2em;
    line-height: 42px;
    color: #000;
}

.listaDocumento .alert a[aria-expanded="true"]::after{
    content: "\f106";
}

/******************************** ESCOLA FAMURS *******************************/
.logoEscola{max-width:260px}
#formCadastro #div_id_municipio, #formCadastro #div_instituicao{display: none;}
#formCadastro.associado #div_id_municipio{display: block;}
#formCadastro.naoassociado #div_instituicao{display: block;}

/********************************** EVENTOS ***********************************/
.alert.alert-default{overflow: hidden;}

/****************************** LISTA DE ARQUIVOS *****************************/
.arquivos2{border-bottom: none;}
.arquivos2 li a {display: flex}
.arquivos2 li a i{
    display: inline-block;
    margin-right: 10px;
    font-size: xx-large;
    align-self: center;
}
.arquivos2 li a p{
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
}
.arquivos2 li a small{color:#939393}
.arquivos2 li a span.download i{margin: 0;margin-left: 10px;opacity: 0.4;}
.lista-anexos .nome-arquivo {text-overflow: ellipsis;overflow: hidden;display: inline-block;}

/****************************** GALERIA DE FOTOS ******************************/
.owl-carousel .item-legend{
    position: absolute!important;
    bottom: 0;
    background-color: rgba(0,0,0,0.5);
    color: #fff;
    padding: 7px 5px 7px 5px;
    width: 100%;
    text-align: center;
}
.owl-carousel .item-legend p{margin: 0;}

/************************** GALERIA DE EX-PRESIDENTES *************************/
.box-ex-president{overflow: hidden;}
.box-ex-president:hover{background-color: #f3f3f3;}
.box-ex-president .retrato{margin-top:20px;overflow: hidden;transition: transform 0.4s;}
.box-ex-president .retrato .moldura{z-index:2; position:relative}
.box-ex-president .retrato > img {width: 350px; position: relative; z-index: 2}
.box-ex-president .retrato:hover{
    -ms-transform: rotate(2deg); /* IE 9 */
    -webkit-transform: rotate(2deg); /* Chrome, Safari, Opera */
    transform: rotate(2deg);
}
.box-ex-president .foto-retrato{
    position: absolute;
    top: 0;
    left: 0;
    padding: 25px 47px 40px 47px;
    z-index: 1
}
.box-ex-president .foto-retrato > img{-webkit-filter: sepia(0.5);}
.box-ex-president a.link-ex-president{color: #996E2B;}
.box-ex-president a.lightbox{cursor: zoom-in}
/** Moldura do Retrato **/
@media only screen and (min-width: 1024px) and (max-width: 1170px){
    .box-ex-president .foto-retrato{padding: 34px 48px 40px 48px;}
}
@media only screen and (min-width: 992px) and (max-width: 1024px){
    .box-ex-president .foto-retrato{padding: 23px 40px 40px 40px;}
}
@media only screen and (min-width: 758px) and (max-width: 992px){
    .box-ex-president{height: auto;}
    .box-ex-president .foto-retrato{padding: 36px 50px 40px 50px;}
}
@media only screen and (min-width: 540px) and (max-width: 767px){
    .box-ex-president .foto-retrato{padding: 63px 47px 40px 47px; width: 100%}
    .box-ex-president .foto-retrato > img{height: 310px}
}
@media only screen and (min-width:490px) and (max-width: 540px){
    .box-ex-president .foto-retrato{padding: 59px 80px 0 81px; width: 100%}
    .box-ex-president .foto-retrato > img{height: 310px}
}
@media only screen and (max-width: 490px){
    .box-ex-president .foto-retrato{padding: 16% 21% 5% 21%;width: 100%}
    .box-ex-president .foto-retrato > img{border-radius:4px; height: 300px}
}

/*********************************** GUIA RS **********************************/
#pesquisaMunicipio{overflow: visible;}

/******************************** MEDICAMENTOS ********************************/
#pesquisarMedicamentos{overflow: visible;}
#pesquisarMedicamentos .label-inline,
#pesquisarMedicamentos .input-inline {
    display: block;
}
#pesquisarMedicamentos #div_enviar{margin-top: 22px;}
#pesquisarMedicamentos .vsb-main{width: 100%;}

/********************************* MULTIMIDIAS ********************************/
#filtroMidias #cat{margin: 0;}
#midia-galerias ul.isotope{display: flex; flex-wrap: wrap;}
#midia-galerias .item-box{width: 100%;height: 90%;}
#midia-galerias .item-hover:focus, .item-hover:hover{opacity: 1;transition: none;}
#midia-galerias figure{max-height: 175px;}
#midia-galerias .img-centralizada{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    min-width: 300px;
}
#midia-galerias .item-box .item-hover .overlay{z-index:10}
#midia-galerias .item-box .item-hover > span{color: #fff;}
h3.titulo-form-midia{margin-bottom: 10px;margin-top: 5px;}

/******************************* OPORTUNIZASAUDE ******************************/
.logoOportuniza{max-width:260px}
.logoCremers{max-height: 120px;}
.logosCremers{display: flex;align-items: center;justify-content: center;}

/*************************** POLITICA DE PRIVACIDADE **************************/
#divPoliticaPrivacidade{
    width: 100%;
    background-color: #000;
    color: #fff;
    opacity: 0.8;
    padding: 20px;
    position: fixed;
    bottom: 0;
    z-index: 99999;
}

/*********************************** REMUME ***********************************/
.remume{display: flex; flex-wrap: wrap;;margin-bottom: 15px;}
.remume #pesquisarVagas {width: 100%;}
.remume .remumeForm #pesquisarVagas {height: 100%;}
.remumeFormDados{display: flex; flex-wrap: wrap}
.remumeFormDados .dadosMunicipio{align-self: flex-end;}
@media (max-width: 1090px) {
    .remume .remumeForm, .remume .remumeFormDados {width: 40%;}
    .remume .remumeMapa {width: 60%;}
}
@media (max-width: 991px) {
    .remume .remumeForm, .remume .remumeFormDados {width: 100%;margin-bottom: 15px;}
    .remume .remumeMapa {width: 100%;}
}
.remumeInfoMunicipios {
    display: flex; flex-wrap: wrap;
    @media (min-width: 768px) {
        height: 80%;
        padding: 15px;
    }
}
.remumeInfoMunicipios .remumeInfoMunicipiosTitulo{align-self: flex-end;}
svg.mapaRS{
    width: 90%;
    height: auto;
}
svg.mapaRS path{
    fill: #bf1522;
    cursor: pointer;
    stroke: #c7c7c7;
    stroke-width: 20px;
}
.remumeInfoMunicipios svg.mapaRS {
    max-height: 150px;
}
svg.mapaRS path.atualizado {fill: #0d8f36;}
svg.mapaRS path.pendente {fill: #f9b234;}
.popover .popover-title a{float: right;}

#formRemume .row.form-group{margin-left: 0;margin-right: 0;}

.postoDistribuicao .verEndereco{
    background-color:#7e7e7e;
    border-color: #7e7e7e;
}
.postoDistribuicao .verEndereco:hover{
    background-color:#6c6c6c;
    border-color: #6c6c6c;
}
.postoDistribuicao a[aria-expanded="false"] .verEndereco i:before {
    content: "\f078";
}
.postoDistribuicao a[aria-expanded="true"] .verEndereco i:before {
    content: "\f077";
}


#pesquisarVagas {
    flex-wrap: wrap;
    & > form {
        display: flex;
        flex-wrap: wrap;
        padding: 0;

        & > *, select {
            margin: 0;
            flex: 1;
        }

        label {
            display: none;
        }

        #div_grecaptcharesponse {
            flex: 100%;

            div:has(> textarea) {
                width: 304px !important;
            }
        }

        #div_municipio {
            flex: 1;
            max-width: 195px;
        }

        button {
            margin: 0;
        }
    }
    
    @media (max-width: 575px) {
        align-items: stretch;
        .div_enviar {
            width: 100%;
        }
    }

    @media (min-width: 576px) {
        max-width:337px;
    }
}
/************************************ VAGAS ***********************************/
#pesquisarVagas{
    overflow: visible;

    @media (min-width: 576px) {
       float: right;
    }
}
#pesquisarVagas #div_cidade button{border: #e6e6e6 2px solid !important;height: 38px;}
#modalInfoCidade .modal-content{min-height: 300px;}
#modalInfoCidade .modal-content .owl-carousel .owl-item img{display: inline-block !important;}

/************************* BOTOES DE COMPARTILHAMENTO *************************/
.btn-whatsapp{color: #fff!important;background-color: #48a91f;}
.btn-agenda {
    border: 1px solid #3333 !important;
}
.btn-agenda:hover, .btn-agenda:focus, .btn-agenda.active{
    color: #fff;
    margin-top: 0;
    text-decoration: underline;
}
.btn-agenda.bg-blue:hover{
    background: rgb(var(--color-blue-light))!important;
}
.btn-agenda.bg-yellow:hover{
    background: rgb(var(--color-yellow-light)) !important;
}
.btn-agenda.bg-green:hover{
    background: rgb(var(--color-green-light))!important;
}
.btn-agenda.bg-red:hover{
    background: rgb(var(--color-red-light))!important;
}
.btn-agenda.bg-black:hover{
    background: rgb(var(--color-black-light))!important;
}

.btn-small {
    padding: 5px 10px !important;
}
/******************************* CSS DE EXTERNOS ******************************/
/** GOOGLE MAPS **/
.gm-style a:hover, .gm-style a:focus{
    text-decoration: underline!important;
    color: blue!important
}

/** PLUGIN FACEBOOK **/
.fb_iframe_widget,
.fb_iframe_widget span,
.fb_iframe_widget span iframe[style],
.fb_iframe_widget span iframe div{
    width: 100% !important;
}

/** PESQUISA DO GOOGLE NO SITE **/
.gsc-tabsArea div {overflow: visible !important;}
.gs-result .gs-title a:hover,
.gs-result .gs-title a:hover *,
.gs-result .gs-title a:focus,
.gs-result .gs-title a:focus *{
    color: #ff0000!important;
}
.gsc-cursor-page:focus,
.gsc-cursor-page:hover{
    background-color:#CDCDCD!important;
    color:#FF0000!important;
}
.gsc-control-cse .gsc-tabsArea{margin: 0;height: auto;border:0;}
.gsc-refinementsArea{padding: 0!important;margin: 0!important;}
.gsc-control-cse .gsc-tabsArea .gsc-tabHeader{
    border:0!important;
    font-family: 'Open Sans', Arial, sans-serif;
    font-weight:normal;
    font-size: 14px;
    margin-right: 1px;
    padding: 15px 25px;
    color: #333;
    padding-top: 15px;
    position: relative;
    height: auto;
}
.gsc-results{width: 100%!important;}
.gsc-above-wrapper-area{min-height: 45px;}
.gsc-control-cse .gsc-tabsArea .gsc-tabhActive{
    background-color: rgba(0,0,0,0.03);
    border:0;
}
.gsc-control-cse .gsc-tabsArea .gsc-tabhInactive{background-color: #fff;border:0;}
.gsc-selected-option-container{
    min-width: 81px!important;
    font-family: 'Open Sans', Arial, sans-serif!important;
    font-weight: normal!important;
    line-height: 25px!important;
}
.gsc-imageResult-column, .gsc-imageResult-classic{
    padding: 0!important;font-family: 'Open Sans', Arial, sans-serif;
    margin:0!important;
}
table.gsc-branding, table.gcsc-branding{
    font-family: 'Open Sans', Arial, sans-serif!important;
}

table {
    td.fill-cell {
        position: relative;

        & > *:only-child {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
        }
    }
}
.gs-no-results-result .gs-snippet{
    display: block;
    padding: 9.5px!important;
    margin: 0 0 10px!important;
    font-size: 13px!important;
    line-height: 1.42857143!important;
    color: #333!important;
    word-break: break-all!important;
    word-wrap: break-word!important;
    background-color: #f5f5f5!important;
    border: 1px solid #ccc!important;
    border-radius: 4px!important;
    font-family: 'Open Sans', Arial, sans-serif!important;
    width: 100%;
}

/** Esconde Google Ads **/
.gsc-adBlock{display: none!important;}
.gcsc-branding{display: none!important;}
.gcsc-more-maybe-branding-root {display: none!important;}
.gsc-result-info-container{display: none!important;}

/** paginação da pesquisa no site **/
.gsc-results .gsc-cursor-box{
    display: inline-block;
    padding-left: 0;
    margin: 20px 0!important;
    border-radius: 4px;
}
.gsc-results .gsc-cursor-box .gsc-cursor-current-page{
    color:#fff!important;
    background-color: #B9B9B9!important;
    border: 1px solid #AFAFAF!important;
}
.gsc-results .gsc-cursor-box .gsc-cursor-page{
    position: relative;
    float: left;
    padding: 6px 12px;
    margin-left: -1px;
    line-height: 1.42857143;
    text-decoration: none!important;
    color:#000;
    background-color: #fff;
    border: 1px solid #ddd!important;
    margin-right: 0px!important;
    font-family: 'Open Sans', Arial, sans-serif!important;
}

/**elemento capacitacão famurs 3**/
#blog {
    .pre-escola .row.escola {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
    }
}

.pre-escola {
    background: rgb(var(--color-yellow));
    
    header img {
        /* filter: brightness(0); */
    }

    .row.escola {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        grid-template-columns: 1fr 1fr 1fr 1fr;
        justify-items: center;
        gap: 25px;
        
        
        &::before, &::after {
            content: unset;
        }
        
        @media (max-width: 1199px) {
            grid-template-columns: 1fr 1fr !important;
        }
        
        @media (max-width: 575px) {
            grid-template-columns: 1fr !important;
        }

        > div {
            display: flex;
            width: 100%;
            max-width: 350px;
            margin: 0 !important;
            padding: 0 !important;

            

            @media (min-width: 991px) {
                width: 20.83333333%;
            }
        }
    
        &:has(a.shop-item-list:hover) {
            a.shop-item-list:not(:hover) {
                transform: scale(0.95);
            }
        }
        a.shop-item-list {
            border: 1px solid #1467943d;
            background: white;
            filter: drop-shadow(0px 5px 0px #14679400);
            transition: all .5s;
            display: flex;
            z-index: 1;
            flex-direction: column;
            
            &:hover {
                text-decoration: none;
                border: 1px solid #146794FF;
                transform: scale(1.1);
                filter: drop-shadow(0px 0px 32px #14679480) drop-shadow(0px 8px 24px #146794);
                z-index: 5 !important;
            }
            
            figure {
                position: relative;
                --ctt: "Dispon\00EDvel";
                --colour: #0D8F36a0;
                margin-bottom: 5px;
            }
    
            .product-info {
                margin: 0 5px;
                padding-top: 5px;
                
                h3 {
                    font-size: 16px;
                    font-weight: 500;
                    line-height: 1.2;
                    margin-top: 10px !important;
                    color: #494949;

                    &:first-letter {
                        text-transform: capitalize;
                    }
                }
    
                .desc {
                    color: #777;
                    font-weight: 300;
                    margin-top: 5px !important;
                    margin-bottom: 8px !important;
                }
                
                div:has(.detail) {
                    display: inline-flex;
                }
    
                .detail {
                    background: #e8e8e8;
                    color: #777;
                    display: inline-block;
                    border-radius: 16px;
                    padding: 0px 6px;
                    font-size: 11px;
                    margin-right:3px !important;
                    margin-bottom: 5px !important;
    
                    &:last-of-type {
                        margin-right:0px !important;
                    }
                }
            }
    
            .botoes {
                margin: 5px;
                margin-top: 10px;
                margin-bottom: 2px;
                gap: 5px;
                flex: 1;
                align-items: end;
    
                > * {
                    flex: 1;
                    width: 50%;
                    padding-right: 0;
                    padding-left: 0;
                }
    
                > .btn-default {
                    font-weight: 100;
                }
            }
        }
    }

    .divider, .row.escola + div.row a.btn {
        border-color: #000 !important;
        color: black !important;
    }

    .pilula {
        position: absolute;
        div:after {
            content: var(--ctt);
            display: inline;
            border-radius: 20px;
            padding: 5px 10px;
            background: var(--colour);
            backdrop-filter: blur(3px);
        }

        div {
            color: white;
        }

        
        div.ind {
            --ctt: "Esgotado";
            --colour: #BF1522a0;
        }

        
        div.day {
            --ctt: "\00DAltimos Dias";
            --colour: #cc5500a0;
        }

        div.vaga {
            --ctt: "\00DAltimas Vagas";
            color: black;
            --colour: #F9B234a0;
        }

        div.run {
            --ctt: "Em Andamento";
            --colour: color-mix(in srgb, #146794a0, #44Fa 20%);
        }

        div.dead {
            --ctt: "Encerrado";
            --colour: #777777a0;
        }
    }

    &.eventos {
        background: #5c5c5a;

        &, .divider, .row.escola + div.row a.btn, header h2 {
            border-color: #FFF !important;
            color: #FFF !important;
        }
    }
}
#blog {
    .pre-escola .row.escola > div {
        width: 100% !important;
    }
}

.pill, .pilula {
    top: 8px;
    left: 5px;
    display: flex;
    gap: 3px;
    border-radius: 20px;

    &.pill {
        padding: 5px 10px;
        display: inline-flex;
    }
}

.graph-legend {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 10px;
    list-style: none;
    justify-content: center;
}
/**
 * Herdado do @iPrefeichurros
 */

/**
 * #region <PESQUISA DOS EDITAIS>
 * /diario-oficial
 * /concurso
 * /licitacoes
 * /contratos
 */
 div#div-search-concurso, div#div-pesquisa-legislacao {
    margin: 0 !important;
    padding: 36px;

    @media screen and (max-width:991px) {
        margin: 10px 0 !important;
        padding: 36px 18px;
    }

    .form-control {
        margin-bottom: 0 !important;
    }

    .form-group {
        &::after, &::before {
            content: unset !important;
        }
    }
    
    #div_container1 > .form-group {
        display:flex;
        align-items: flex-end;

        @media screen and (max-width:991px) {
            align-items: stretch;
            flex-direction: column;

            #submit {
                margin-top: 10px !important;
            }
        }

        #div_container2 > .form-group {
            @media screen and (min-width:992px) {
                flex-direction: column;
                align-items: stretch;
    
                #div_html {
                    position: relative;
                    margin-bottom: 30px;
    
                    > * {
                        position: absolute;
                        right: 0;
                        width: max-content;
                    }
                }
            }
        }
    }

    #div_container2 > .form-group {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-top: 30px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;

        &::after, &::before {
            content: unset !important;
        }
        
        @media screen and (max-width:575px) {
            flex-direction: column;
        }

        @media screen and (min-width:992px) {
            #div_submit {
                max-width: 250px;
                flex-grow: 0;
                width: 100%;
            }
        }
    }

    #div_container1_edital > .form-group {
        display: flex;
        flex-direction: column;
        margin: 0 !important;

        #div_containerTop > .form-group {
            display: flex;
            margin-left: 0 !important;
            margin-right: 0 !important;
            
            > * { flex: 1 }

            .form-control { width: 100% !important; }

            @media screen and (max-width: 767px) {
                flex-direction: column;
            }

            @media screen and (min-width:992px) {
                flex-grow: 0;
                width: 100%;
            }
        }
    }

    #div_submit {
        flex-grow: 1;

        @media screen and (max-width:575px) {
            width: 100%;
        }
    }

    #submit.btn {
        margin-top: 0px !important;
        
        @media screen and (max-width:575px) {
            max-width: unset !important;
        }
    }

    .exportar-pdf {
        display: flex;
        justify-content: space-between;
        align-items: center;
        
        @media (min-width: 576px) {
            justify-content: end;
        }
    
        >  p {
            margin-right: 15px;
        }

        .img-exportar {
            font-size: 1.5em;
        }
    }
}
/* #endregion </PESQUISA DOS EDITAIS> */

.attachment-item {
    display: flex;
    align-items: center;
    padding: 2.5px 20px !important;
    border-width: 1px !important;
    background-color: rgb(var(--color-primary), .7) !important;

    &:not(:hover) {
        border-color: #0000;
        background-color: rgb(var(--color-primary), .06) !important;
    }

    > * {
        background-clip: text;
        -webkit-background-clip: text;
        color: #FFF;
        mix-blend-mode: difference;
        filter: grayscale(1);
    }

    > p {
        font-size: 14px !important;
        font-weight: 100;
    }
}

.text-crop {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
}

/*Home: Editais 1*/
.home-editais-1 {
    .editais-list {
        display: flex;
        gap: 25px;

        @media screen and (max-width: 991px) {
            flex-direction: column-reverse;
        }

        > .edital {
            border-radius: 8px;
            padding: 8px 12px;
            display: flex;
            flex: 1;
            flex-direction: column;
            align-items: center;

            &.active {
                background-color: color-mix(in srgb, rgb(var(--color-primary)), #FFF 90%);
                filter: drop-shadow(0px 0px 5px #0002);
            }
        }
    }
}

/*Home: Editais 2*/
.home-editais-2 {
    .editais-list {
        display: flex;
        flex-direction: column;
        gap: 12px;

        > .edital {
            border-radius: 8px;
            padding: 18px 24px;
            display: flex;
            background-color: color-mix(in srgb, rgb(var(--color-primary)), #FFF 90%);
            filter: drop-shadow(0px 0px 5px #0002);
            gap: 8px;
            position: relative;

            &.active::after {
                content: attr(visaoi\:editalSituation);
                background-color: #FFFFFF;
                color: #000000;
                border-radius: 8px;
                padding: 2px 4px;
                position: absolute;
                top: 0; left: 0;
                transform: translate(-20px,-25%) rotate(-18deg);
                filter: drop-shadow(2px 2px 5px #FFF5);
            }

            @media (max-width: 576px) {
                flex-direction: column;

                .text-center {
                    margin-bottom: 8px;
                }
            }
        }
    }

    .edital-btns {
        display: flex;
        flex-direction: column;
        align-items: center;
        min-width: 150px;
        justify-content: center;
    }
}

.text-center-sm {
    @media (max-width: 576px) {
        text-align: center;
    }
}

div.box-ex-president div.retrato {
    &:hover {
        transform: scale(1.1);
    }

    .foto-retrato {
        padding: 10px 30px 4px 30px;
        @media only screen and (min-width: 490px) and (max-width: 540px) {
            padding: 59px 80px 0 81px;
        }

        & > img {
            border-radius: 10% / 8%;
            border: 1px solid #0004;
            filter: none;
        }
    }
    
    img.img-responsive.moldura {
        opacity: 0;
    }
}

/*Home: Diário Oficial*/
.home-diarioOficial {
    display: flex;
    flex-direction: column;
    gap: 8px;

    .main, .others > * {
        padding: 18px 24px;
        border-radius: 8px;
        background-color: color-mix(in srgb, rgb(var(--color-primary)), #FFF 90%);
        filter: drop-shadow(0px 0px 5px #0002);
        flex: 1;
        display: flex;
    }

    .others {
        display: flex;
        gap: 8px;

        @media (max-width: 991px) {
            flex-direction: column;
        }
    }
}

[data-toggle="collapse"] {
    i.rotate-me {
        transition: transform .5s;
        transform: rotate(0deg);
    }

    &[aria-expanded="true"] i.rotate-me {
        transform: rotate(90deg);
    }
}

.cp-nav {
    border-bottom: 1px solid #e8e8e8;
    margin-bottom: 10px;
    @media screen and (min-width: 768px) {
        border-bottom: 0px solid #e8e8e8;
        padding: 5px 0;
        margin: 0;
        padding-right: 5px;
        margin-right: 5px;
    }

    > li {
        overflow: hidden;
        border-radius: 8px;
    
        &.active {background: #0001;}
        a {margin: 0;}
    }
}

.arquivo-contas-publicas {
    background: white;
    border-radius: 8px;
    overflow: hidden;
    filter: drop-shadow(0px 2px 4px #0002);
    margin: 10px 5px;
}

.alert .accordion:not(:nth-child(1)) .modalidadeCp {
    &::before {
        content: " ";
        display: block;
        margin-top: 15px !important;
    }
}

.modalidadeCp::after {
    content: " ";
    display: block;
    margin-bottom: 8px !important;
}

@media screen and (min-width: 992px) {
    [class="nav"]:has(> .arquivo-contas-publicas) {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 0 5px;
    
        &::before, &::after {
            content: unset !important;
        }
    
        .arquivo-contas-publicas {
            width: 100%;
        }
    }
}

.exportar-pdf {
    float: right;
    width: 100%;
    padding: 10px 0;
    background: #efefef;
	margin-bottom: 20px;
    
    display: flex;
    gap: 10px;
    justify-content: center;
}

/**
 * #region Novos botões de compartilhamento
 */
.btn.btn-primary {
    background: rgb(var(--color-blue-dark));
}
.btn:not(:has(::first-letter)) > i.fa:only-child {
    padding: 0;
}
.btn-twitter {
	background-color: #000 !important;
	font-size: 25px !important;
}

.btn-tumblr {
	background-color: #001935 !important;
}

.btn-mail, .btn-share {
	width: 40px;
	height: 40px;
    font-size: 18px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
}


.share-cont {
	display: contents;
	
	@media (min-width: 1200px) {
        display: inline-block;
        position: absolute;
        top: 0;
        right: 0;
        width: unset;
        bottom: 0;
        transform: translate(50%);
	}

	.title {
		width: 100%;
		display: flex;
		padding-top: 15px;
		font-weight: 400;
	}
}

div#blog:has(.share-cont) {
	@media (min-width: 1200px) {
        min-height: 420px;
    }
}

div.featured-box i.fa-brands {
    padding: 0;
    color: #fff;
    margin: 20px 0;
    font-size: 40px;
    text-align: center;
    position: relative;
    background-color: #146794;
    display: inline-block;
    width: 100px;
    height: 100px;
    line-height: 100px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}   

.shared-midias-sociais {
	display: contents;
	@media (min-width: 1200px) {
		position: sticky;
		top: 15px;
		left: -55px;
		display: flex;
		flex-direction: column;

		.fa-share-alt {
			font-size: 25px;
			color: #949494;
		}

		.btn-share {
			margin-bottom: 12px !important;

			&:hover, &:focus {
				background-color: #FFF;
				cursor: default;
			}
		}
	}

	> * {
		@media (max-width: 1199px) {
			border-radius: 0 !important;
			margin-left: 10px !important;
			margin-right: 0 !important;

			&.btn-share {
				display: none !important;
			}
		}
	}

	/* Small devices */
	@media (max-width: 767px) {
		display: grid;
		width: 100%;
		justify-items: stretch;
		justify-content: space-around;
		grid-template-columns: 1fr 1fr 1fr;
		padding: 0 15px;

		> * {
			width: unset !important;
			margin: 5px !important;
		}

		.btn-mail {
			/*size: 3 blocks*/
			grid-column: span 3;

			&:after {
				content: "E-mail";
				font-size: 14px;
				margin-left: 8px;
			}
		}
	}
}

.botoes-conteudo {
	@media screen and (max-width: 767px) {
		display: flex;
		flex-wrap: wrap;
		gap: 20px;

		button {
			flex: 0.5;
			margin-left: 0 !important;
		}
	}
}

/**
 * #endregion Novos botões de compartilhamento
 */

 
/** input password **/
.divInputPassword .passwordContent,
.divInputPasswordStrength .passwordContent{
    /*display: inline-block;*/
    position: relative;
    overflow: hidden;
    width: 100%;
}
.divInputPassword .gerarSenha,
.divInputPasswordStrength .gerarSenha{
    cursor: pointer;
    display: inline-block;
}
.divInputPassword  span.showPass,
.divInputPasswordStrength span.showPass{
    position: absolute;
    top: 7px;
    right: 10px;
    transition: right 0.2s;
    font-size: 20px;
    z-index: 5;
    cursor: pointer;
}

.divInputCaptchaGoogleV3{display: none;}
.sky-form .btn-login {
    width: 100%;
    border: 1px solid #d6d6d6;
    background: #fff;
    margin: 0;
}

#oportunizaMunicipios_index {
    .select-municipio {
        .vsb-main > button, #search_\#municipio {
            height: 38px !important;
            padding: 0 12px !important;
            box-shadow: none !important;
            width: 100%;
        }

        .vsb-main > button, #search_\#municipio, .vsb-menu {
            border: #e6e6e6 2px solid !important;
            border-radius: 0 !important;
        }

        .vsb-js-search-zone {
            width: calc(100% - 20px);
            background-color: #0000;
        }

        .vsb-menu li:hover {
            background: #0967B1 !important;
            color: #fff !important;
        }
    }

    .mapaAssociacoes {
        path {
            fill: #bababa;
            cursor: pointer;
            stroke: #fff;
            stroke-width: 25px;
        }
    }
}

#oportunizaMunicipios_view, #oportunizaRemume {
    .card {
        border: 1px solid #DDDDDD;
        background-color: #F7F7F7;

        .btn {margin: 0}
    }

    .card-alt {
        border: 1px solid #DDDDDD;
        background-color: #FFF;

        .btn {margin: 0}
    }

    .gestao {
        padding: 10px 15px 10px 30px;
        gap: 30px;

        /* sm */
        @media (max-width: 575px) {
            padding: 10px 15px 10px 15px;
        }
    }

    .cidade {
        fill: #E1E1E1;
        scale: .95;
        stroke: #666;
        stroke-width: 2px;
    }

    .dados-municipio {
        span{text-align: center;}
        .flex-center{align-self: stretch;}
        /* sm (grid 2x2) to lg) */
        @media (min-width: 576px) and (max-width: 991px) {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 10px;
        }
    }

}

.ar-square {
    aspect-ratio: 1 / 1;
}
img.ar-square {
    object-fit: cover;
}

.ar-4x3 {
    aspect-ratio: 4 / 3;
}
img.ar-4x3 {
    object-fit: cover;
}


#dncalendar-container {
    display: flex;
    flex-wrap: wrap;
    border: rgba(0,0,0,0.2) 1px solid;
}

#dncalendar-header {
    display: flex;
    padding: 10px;
    position: relative;
    border-top: 5px solid rgb(var(--color-primary));
    border-bottom: rgba(0,0,0,0.2) 1px solid;
    align-items: center;
    width: 100%;

}

.dncalendar-note-prelist {
    width: 50%;
    overflow-y: auto;
    position: relative;
    border-left: 1px solid rgba(0,0,0,0.2);
}

.dncalendar-note-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    flex: 1;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    left: 0;
}

.dncalendar-note-list.null {
    justify-content: center;
}

.dncalendar-note-list.null p {
    font-size: 2.5em;
    font-weight: 500;
    text-align: center;
    line-height: 1em;
}

.dncalendar-note-list li {
    padding: 10px 0;
    border-bottom: 1px solid rgb(0 0 0 / 11%);
}

.dncalendar-note-list .date span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    margin-right: 5px;
}

.dncalendar-note-list li:last-child {
    border-bottom: none;
}

#dncalendar-header .dncalendar-prev-month::before,
#dncalendar-header .dncalendar-next-month::before {
    font-family: FontAwesome;
    font-size: 30px;
    display: flex;
    justify-content: center;
    cursor: pointer;
    width: 32px;
    color: rgb(var(--color-primary));
}

#dncalendar-header .dncalendar-prev-month::before {
    content: "\f104";
}

#dncalendar-header .dncalendar-next-month::before {
    content: "\f105";
}

#dncalendar-header h2 {
    font-size: 20px;
    line-height: 15px !important;
    text-align: center;
    color: #6E6E6E;
    text-transform: uppercase;
    font-weight: bolder;
    flex: 1;
    margin: 0;
}

#dncalendar-header h2 span {
    font-size: 13px;
}

#dncalendar-body {
    padding: 15px;
    background: rgb(var(--color-primary), .1);
    width: 50%;
    display: flex;
    flex-direction: column;
}

#dncalendar-body thead {
    color: rgb(var(--color-primary));
    text-transform: uppercase;
    text-align: center;
    padding: 10px 0;
    font-size: 15px;
}

#dncalendar-body tbody td {
    text-align: center;
    width: 13%;
    border: 1px solid rgba(0,0,0,0.2);
}

#dncalendar-body .entry {
    padding: 11px 0 13px;
    display: none;
}

#dncalendar-body .calendarClick {
    background: #FFFc;
}

#dncalendar-body .calendarClick .entry {
    display: block;
}

#dncalendar-body .calendarClick.today-date .entry {
    border: 1px solid rgb(var(--color-primary));
}

.dncalendar-note-list {
    padding: 0 15px;
    display: flex;
    flex-direction: column;
    margin: 0;
}

/* col-sm-12 */
@media only screen and (max-width: 768px) {
    .dncalendar-note-prelist,
    #dncalendar-body {
        width: 100%;
    }

    .dncalendar-note-list {
        position: initial;
    }

    .dncalendar-note-prelist {
        border-left: none;
        border-top: 1px solid rgba(0,0,0,0.2);
    }
}


#noticias-municipios .bloco {
    flex-grow: 1;
    flex-basis: 0;
    /*background: white;*/
    border-radius: 20px;
    height: inherit;
    padding: 10px;
}

#noticias-municipios .bloco > ul {
    padding: 0;
}

#noticias-municipios .bloco > ul > li {
    list-style: none;
}

#noticias-municipios .bloco > ul > li:not(:last-child) {
    margin-bottom: 10px;
    border-bottom: 1px solid rgba(0,0,0,.1);
}

#noticias-municipios .owl-wrapper {
    display: flex !important;
}

#noticias-municipios .owl-item {
    padding-right: 10px;
    display: flex;
}

#noticias-municipios .owl-item:last-child {
    padding-right: 0;
}

#noticias-municipios-img, .b_noticias_municipios_img {
    .data {
        display: grid;
        justify-content: center;
        grid-template-columns: repeat(auto-fill, minmax(240px,1fr));
        justify-items: center;
        gap: 10px 10px; /*baseado nas margens do bootstrap*/

        @media (min-width: 960px) {
            /* 2. Layout fixo e proporcional para telas grandes */
            grid-template-columns: repeat(4, 1fr);
        }
    }
    

    .card-alt {
        border: 1px solid #DDDDDD;
        background-color: #FFF;

        .btn {margin: 0}
    }

    .swiper-wrapper {
        height: auto !important;
    }

    .bloco {
        background-color: transparent;
        color: inherit;
        transition: ease-out .4s;
        min-width: 240px;
        width: 100%;
    }

    /*width xs*/
    @media screen and (max-width: 575px) {
        .bloco {
            flex: auto;
        }
    }

    .bloco:hover {
        transform: scale(1.05);
    }

    .thumb {
        overflow: hidden;
    }

    .thumb a {
        display: block;
        color: black !important;
        text-decoration: none !important;
    }

    .thumb a .bgWrapper img {
        border-radius: 8px;
    }
}


#mapaPontos .fa {
    color: rgb(var(--color-primary));
    font-size: 1.6em !important;
    filter: drop-shadow(rgb(255, 255, 255) 0px 0px 1px)
        drop-shadow(rgb(255, 255, 255) 0px 0px 2px)
        drop-shadow(rgb(255, 255, 255) 0px 0px 1px);
}

#social-links, .social-links {
    --colour: #000;
    display: flex;
    justify-content: center;
    gap: 15px;
    height: 100%;
    transition: height .5s ease-in-out, padding .5s ease-in-out;
    overflow: hidden;

    a {
        border-radius: 100%;
        background-color: transparent;
        border: 2px solid var(--colour);
        color: var(--colour) !important;
        font-size: 1.5em;
        padding: 5px;
        transition: color .3s ease-in-out;
        font-weight: 200;

        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    &.min a {
        padding: 0;
        width: 30px;
        height: 30px;
        font-size: 1.2em;
        border: 0;
    }
}

.contents {
    display: contents;
}

body:has(#header-2025) {
    --header-height: 60px;

    #header-2025 {
        position: relative;
        z-index: 10;
        width: 100%;
        height: unset;
        transition: height .5s ease-in-out;
        overflow: hidden;
        backdrop-filter: blur(5px);
        background-color: rgb(var(--color-primary-dark), .8);
        transition: background-color .5s ease-in-out, backdrop-filter .5s ease-in-out, height .5s ease-in-out;
        @media (max-width: 991px) {
            box-shadow: 0 4px 30px rgba(0, 0, 0, 0.5);
        }
        &:not(.uncollapsed) {
            position: fixed;
            box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.5);
            #topNav a.logo {
                padding: 0;
                transition: height .5s ease-in-out, padding .5s ease-in-out;

                img {
                    height: 50px;
                    width: auto;
                }
            }
        }

        #social-links {
            --colour: #FFF;
        }
        
        .buscaTopo {
            position:relative;
            display: flex;
            background: unset;
            max-width: unset;
            flex-direction: column;

            .search {
                display: flex;
                flex: 1;
                max-width: 280px;
                margin: 0;
                width: 100%;
                height: 35px;
            }

            input {
                border-radius: 12px;
                border: 3px solid white;
                background: rgb(var(--color-primary-dark));
                color: white;
                flex: 1;
                margin: 0;
                padding: 8px;
                position: relative;
                z-index: 2;
                height: inherit;
            }

            button {
                position: relative;
                background-color: white;
                color: black;
                border-radius: 12px;
                border: 3px solid white;
                top: 0;
                right: 0;
                margin: 0;
                height: inherit;
                padding: 5px;
                i {padding:0}
                
				&::after {
                    content: ' ';
                    width: 22px;
                    background: white;
                    position: absolute;
                    top: -3px;
                    left: -14px;
                    bottom: -3px;
                    z-index: -1;
				}
            }
        }
    }

    #topBar {
        height: 0;
        min-height: unset;
        overflow: hidden;
        transition: height .5s ease-in-out;

        #barMain {float: none;}
    }
    
    #header-logo {
        display: flex;
        align-items: center;
        padding: 10px 20px;
        flex-direction: row-reverse;
        justify-content: space-around;

        .flex-center {
            justify-content: space-between;
        }
    }

    .btn-mobile {
        float: none;
        border-radius: 100%;
        background-color: #FFF3;
        border: 1px solid #FFF2;
        backdrop-filter: blur(2px);
        margin: 0;
    }

    #topNav {
        background: unset;
        border: 0;
        box-shadow: unset;
        
        .h1 {
            margin: 0;
        }
        a.logo {
            padding: 0;
            border-bottom: 0;
            transition: height .5s ease-in-out, padding .5s ease-in-out, width .5s ease-in-out;

            img {
                width: 100%;
                object-fit: contain;

                height: 50px;
                width: auto;
            }
        }

        @media (min-width: 992px) {
            #navbar {
                background: #FFF;
            }
        }
    }

    #barMain {
        ul {
            width: 100%;
            
            li a {
                font-weight: bold;
                font-size: 1.12em;
            }
        }

        li:nth-child(4n + 1) a {
            color: rgb(var(--color-blue)) !important;
        }

        li:nth-child(4n + 2) a {
            color: rgb(var(--color-green)) !important;
        }

        li:nth-child(4n + 3) a {
            color: rgb(var(--color-red)) !important;
        }

        li:nth-child(4n) a {
            color: rgb(var(--color-yellow)) !important;
        }
    }

    #topMain {
        display: none;
    }

    .nav-desktop {
        .dropdown-menu {
            position: relative;
        }

        ul#topDesktop {
            display: flex;
            flex-wrap: wrap;
            flex-direction: row;
            justify-content: center;
            align-items: center;
            gap: 1px;

            & > li {
                & > a {
                    color: rgb(var(--color-blue-dark)) !important;
                    font-weight: bold;
                    padding: 10px 10px;

                    &:hover {
                        background-color: rgb(var(--color-blue), .2) !important;
                    }
                }

                &.opened > a {
                    color: rgb(var(--color-green)) !important;
                }
            }
        }

        .dropdown-menu > li {
            position: relative;
            padding: 0;
            margin: 0;
            width: 100%;
        }
        

        h3 {
            color: rgb(var(--color-green)) !important;
            font-weight: bold;
            font-size: 1.8em;
            margin-bottom: 10px;
            flex-basis: 100%;
        }

        .row-box {
            display: flex;
            flex-direction: column;
            gap: 18px;
        }

        #navDesktopContent {
            li {
                list-style: none;
            }

            & > *:last-child {
                margin-bottom: 20px;
            }
    
            & > li:first-child {
                margin-top: 20px;
            }

            .row-box > * { 
                display: inline-flex;
                gap: 15px 10px;
                flex-wrap: wrap;
                width: 100%;

                &:has(> .sem-titulo) {margin-top: 10px;}
            }

            .row-box ul {
                display: contents;

                li a {
                    background: rgb(var(--color-blue-dark)) !important;
                    color: white !important;
                    padding: 5px 12px;
                }
            }
        }
    }


    /*bs mobile*/
    @media (max-width: 991px) {
        #topBar {
            background: unset;

            #barMain {
                display: none;
            }
        }
        
        #topMain {
            display: block;
            height: 200px;
        }

        #topNav {
            display: flex;
            flex-direction: column;
            flex: 1;

            & > .container {
                display: flex;
                flex-direction: column;
                flex: 1;
            }
        }

        .nav-desktop {
            display: none;
        }

        #header-2025 {
            #social-links {
                gap: 10px;
                width: 100%;

                a {
                    padding: 5px;
                    
                    width: 32px;
                    height: 32px;

                    &:hover {
                        color: rgb(var(--color-primary));
                    }
                }
            }

            .btn.btn-mobile {
                position: absolute;
                right: 15px;
            }

            &:not(.burguer) {
                #social-links {
                    display: none;
                }
            }

            .h1 {
                margin: 0;
            }

            #navbar {
                display: none;
                height: 0;
                overflow: hidden;
                max-height: calc(100dvh - var(60px));
            
                .nav-main, li {
                    background-color: unset;
                    border: 0;
                }

                li a, h3 { 
                    color: white !important;
                }

                li a:hover {
                    text-decoration: underline;
                }

                h3 {
                    font-weight: 500;
                }
            }

            &:not(.search-active) {
                .contents {
                    display: none;
                }
            }

            #header-logo {
                flex-direction: column;
                align-items: stretch;
                padding: 10px 0px;
                min-width: unset;
                flex: unset !important;

                & .flex-center {   
                    order: -1;
                }
            }

            &:not(.uncollapsed) {
                #social-links {
                    max-height: 0;
                }
            }

            .buscaTopo {
                max-width: unset;
                flex: 1;
                transition: max-height .5s ease-in-out;
                overflow: hidden;
                max-height: 0;
                padding: 0;
            }
            
            &.burguer {
                background: linear-gradient(
                    to bottom,
                    rgb(var(--color-primary-dark), 1),
                    rgb(var(--color-primary-dark), .6) 75%
                ) !important;

                backdrop-filter: blur(5px) !important;
                height: 100dvh;
                position: fixed;
                display: flex;
                flex-direction: column;

                #social-links {
                    max-height: unset;
                    flex: 1;
                }

                #navbar {
                    display: block;
                    overflow: auto;
                    height: unset;
                    overflow-x: hidden;
                    flex: 1;
                }

                .buscaTopo {
                    max-height: unset;

                    input {}
                }

                #topNav a.logo {
                    padding: 20px 0;
                    img {
                        height: 50px;
                    }
                }
            }

            &.uncollapsed:not(.burguer) {

            }
        }

        &:has(#header-2025.burguer) {
            overflow: hidden;
            overscroll-behavior: contain;
        }

    }

    @media (min-width: 992px) {
        #header-2025 {
            a.logo {
                height: 50px;
            }

            #header-logo > * {
                order: 1;
            }

            .buscaTopo {
                order: 2;
                min-width: 250px;
                padding-left: 0;
            }

            #social-links {
                order: 0;
                min-width: 250px;
                justify-content: flex-end;
            }
        }

        &:has(#navDesktopContent > *) {
            #navDesktopContent {
                min-height: calc(100dvh - 200px);
            }
            #conteudo {
                display: none;
            }
        }
    }
    
    &:has(#header-2025.uncollapsed) {
        --header-height: unset;

        #topBar {
            height: 30px;
            @media (max-width: 991px) {
                height: unset;
            }
        }

        #header-2025 {
            background-color: rgb(var(--color-primary-dark));
            backdrop-filter: blur(0px);
        }
    }

    #conteudo {
        padding-top: var(--header-height);
        transition: padding-top .5s ease-in-out;
    }
}

.sidebar {
    ul.side-nav {
        border-right: 2px solid rgb(var(--color-green));
        padding-right: 5px;
    }
    ul.side-nav ul {border-right: none}
    .h4 {
        color: rgb(var(--color-green)) !important;
    }

    .list-group-item {
        border: 0 !important;
        padding: 0;
        a {
            color: rgb(var(--color-blue-dark)) !important;
            padding: 0px 15px 0px 15px;
        }
    }

    .list-group-item.active {
        background-color: rgb(var(--color-blue)) !important;
        a {
            color: white !important;
        }
    }

    ul.side-nav ul {
        background: transparent;
    }

    ul.side-nav > li a.dropdown-toggle {margin-top: 10px;}
    ul.side-nav > li a.dropdown-toggle::before{
        content: " ";
        display: inline-block;
        border-color: transparent;
        border-style: solid;
        border-width: 0;
        border-top: 5px solid transparent;
        border-bottom: 5px solid transparent;
        border-left: 5px solid  rgb(var(--color-green));
        margin-right: 5px;
    }

    a.dropdown-toggle {
        color: rgb(var(--color-green)) !important;
        font-weight: bold;
        padding: 0px 7.5px;
    }

    ul.side-nav li.list-toggle:after {
        top: 0px;
    }

    #menuAreaTecnica .list-toggle ul li:not(.active) {
        background-color: white;
        a {
            color: rgb(var(--color-blue-dark)) !important;
        }
    }
}

section header {
    display: flex;
    flex-direction: column;
    align-items: center;
    
    & > h2, & > p {
        max-width: 740px;
        text-align: center;
        line-height: 1;
    }
}
section.page-title header {
    display: block;
}

.bannerInterno1 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    li, img, span, .slotholder *, .fullwidthbanner {
        width: 100%;
        max-height: unset !important;
        height: unset !important;
        max-width: 320px;
    }

    img {
        margin-bottom: 10px;
    }
}

.bannerPrimal, .patrocinadores1 {
    margin: 15px;
    margin-top: 0;
    overflow: hidden;
    border: 1px solid #0002;

    .swiper {
        aspect-ratio: 27 / 5;
    }

    .tp-caption.block_black {
        position: absolute;
        top: 10%;
        bottom: 10%;
        left: 10%;
        color: #131313;
        right: unset;
        -webkit-text-stroke: 1px #4448;
        white-space: normal;
        overflow-wrap: break-word;

        * {
            margin: 0;
            text-align: center;
            font-size: 25px;
        }
    }

    .tp-caption.block_black, .swiper-button-next, .swiper-button-prev {
        background: #FFFc;
        border: 1px solid #8885 !important;
        display: flex;
        align-items: center;
        justify-content: center;
        aspect-ratio: 1 / 1;
        backdrop-filter:blur(5px);
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);

        &.block_black {
            padding: 9px 20px !important;   
        }
    }

    .swiper-button-next, .swiper-button-prev {
        color: #313131 !important;
        --swiper-navigation-size: 30px;
        width: 40px;
        height: 40px;
        margin: 0 10px;

        &:hover {
            background-color: rgb(var(--color-primary)) !important;
        }
    }

    /* muda o aspecto para 1:1 em mobile */
    /*
    .swiper {
        height: 250px;
    }
    */

    @media (max-width: 575px) {
        margin-top: 10px;

        .tp-caption.block_black {
            aspect-ratio: unset;
            background-color: #FFF4;
            backdrop-filter:blur(2px);
            span.h1 {
                font-size: 0.7em;
                line-height: 1.2;
            }
        }

        /*.swiper {
            height: unset;
            width: 100%;
            aspect-ratio: 1 / 1;
        }

        .tp-caption.block_black {
            left: 0;
            right: 0;
            bottom: 0;
            top: unset;
            background: #FFF5;
            font-size: 14px !important;
            aspect-ratio: unset;
            border-radius: 0;
        } */
    }

    img {
        width: 100%;
        /*height: 100%;*/
        object-fit: cover;
        border-radius: 0;
    }
}

.patrocinadores1 .swiper {
    aspect-ratio: 97 / 25;

    img {
        image-rendering: -webkit-optimize-contrast;
    }
}

@keyframes marquee-scroll-left {
    0% { transform: translateX(0%); }
    100% { transform: translateX(-50%); } /* Rola 50% do conteúdo (uma cópia completa) */
}

/* Define a animação de rolagem para a direita */
@keyframes marquee-scroll-right {
    0% { transform: translateX(-50%); } /* Começa da metade para rolar para a direita */
    100% { transform: translateX(0%); } /* Termina no início da primeira metade */
}

.marquee-container {
    width: 100%;
    overflow: hidden; /* Esconde o conteúdo que transborda */
    padding: 20px 0;
    margin-top: 30px; /* Espaço entre os marquees e outros elementos */
    position: relative; /* Essencial para posicionar os pseudo-elementos */
    display: flex;
    flex-direction: column;
    gap: 15px;

    --speed: 40s; /* Velocidade da animação, pode ser ajustada conforme necessário */

    &::before, &::after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 80px;
        height: 100%;
        background: linear-gradient(to right, #ffffff, rgba(255, 255, 255, 0));
        z-index: 1; 
        pointer-events: none;
    }

    &::after {
        left: unset;
        right: 0;
        background: linear-gradient(to left, #ffffff, rgba(255, 255, 255, 0));
    }

    & > .marquee-content {
        display: flex;
        white-space: nowrap; /* Impede que os itens quebrem linha */
        animation-timing-function: linear; /* Velocidade constante para a animação */
        animation-iteration-count: infinite; /* Repete a animação infinitamente */
    }

    /* Aplica a animação ao primeiro marquee */
    .marquee-left {
        animation-name: marquee-scroll-left;
        animation-duration: var(--speed);
    }

    /* Aplica a animação ao segundo marquee (com direção reversa para rolar para a direita) */
    .marquee-right {
        animation-name: marquee-scroll-right;
        animation-duration: var(--speed);
    }

    img {
        max-height: 120px;
    }
}


.b_diretoria, .b_presidencia {
    .social-links {
        gap: 2px;
        a.social {
            border: 0 !important;
        }
    }
}


/* é o espaço que tem */
.vice .social-links {
    gap: 2px;
    a.social {
        width: 18px;
        height: 18px;
        border: 0 !important;
        padding: 0 !important;
        margin-bottom: 0 !important;
        font-size: 1rem !important;
    }
}
.vicediretor .social-links {
    a.social {
        width: 22px;
        height: 22px;
        font-size: 1.5rem !important;
        margin: 0;
    }
}

.calamidade {
    background: #000;
    color: #fff;
    border-radius: 30px;
    padding: 2px 8px 2px 5px;
}

.white-popup-block {
    background: #fff;
    padding: 20px 30px;
    text-align: left;
    max-width: 650px;
    margin: 40px auto;
    position: relative;
}

.timeline .timeline-centered div.item:first-of-type {
    margin-top: 0;
}

.agenda {

    div.item {
        border: 1px solid #ddd;
        width: 100%;
        padding: 2px !important;
        float: left;

        .padder {
            padding: 13px;
        }

        &:has(img) .padder {
            padding-top: 8px;
        }

        img {
            border-bottom: 2px solid #ddd;
            width: 100%;
        }

        &::after {
            border: solid transparent;
            content: " ";
            position: absolute;
            top: 10px;

            background: #f0f0f0;
            border: 1px solid #ddd !important;
            width: 20px !important;
            height: 20px !important;

            /* transparency half mask */
            mask-image: linear-gradient(45deg, transparent 0%, transparent 50%, #f0f0f0 50%, #f0f0f0 100%);
        }

        &::before {
            right: 100%;
            border: #ddd 5px solid;
            content: " ";
            position: absolute;
            top: 10px;
            width:22px; height:22px;
            z-index:1;
            background-color: rgb(var(--color-primary-dark));
        }
        
        &:nth-of-type(2n) {
            float: right;
            clear: right;
            margin-top: 130px;

            &::before {
                left: -46px !important;
            }

            &::after {
                left: -10px !important;
                rotate: 225deg;
            }
        }

        &:nth-of-type(2n + 1) {
            float: left;
            clear: left;

            &::before {
                right: -51px !important;
            }

            &::after {
                right: -10px !important;
                rotate: 45deg;
            }
        }
    }
}

.b_oportuniza {
    position: relative;

    --rot: 45deg;

    .bg {
        background: linear-gradient(var(--rot), rgb(var(--color-blue-dark)) 0 50%, rgb(var(--color-red)) 50% 100%);
        color: #fff;
        /* box-shadow: 0 4px 32px 0 rgba(0,0,0,0.40) inset; */
        padding-top: 20px;
        transition: background .5s ease-in-out;
        position: absolute;
        overflow: hidden;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;

        &::before {
            content: '';
            position: absolute;
            /* Torna o pseudo-elemento maior para garantir cobertura total após rotação */
            width: 200%;
            height: 200%;
            /* Posiciona o centro do pseudo-elemento no centro do pai */
            top: -50%;
            left: -100%;
            background-color: rgb(var(--color-blue-dark));
            /* Inicia fora da tela no canto superior esquerdo, já rotacionado var(--rot) */
            transform: translate(-25%, -25%) rotate(var(--rot));
            transition: transform 0.5s ease-in-out; /* Animação de deslize */
        }

        &::after {
            content: '';
            position: absolute;
            width: 200%;
            height: 200%;
            top: -50%;
            left: 50%;
            background-color: rgb(var(--color-red));
            /* Inicia fora da tela no canto inferior direito, já rotacionado var(--rot) */
            transform: translate(25%, 25%) rotate(var(--rot));
            transition: transform 0.5s ease-in-out; /* Animação de deslize */
            z-index:0;
        }
    }

    
    /* xs: rot -45deg */
    @media (max-width: 575px) {
        .bg::after {
            transform: translate(-5%, 18%) rotate(var(--rot)); /* Volta para fora (inferior) */
        }

        .bg::before {
            transform: translate(-15%, -20%) rotate(var(--rot)); /* Desliza para dentro, cobrindo */
        }
    }
    
        
    &:has(.municipios a:hover) {
        .bg::before {
            transform: translate(25%, 0%) rotate(var(--rot)); /* Desliza para dentro, cobrindo */
        }

        .bg::after {
            transform: translate(25%, 25%) rotate(var(--rot)); /* Volta para fora (inferior direito) */
        }
    }

    &:has(.farmaceutico a:hover) {
        .bg::before {
            transform: translate(-25%, -25%) rotate(var(--rot)); /* Volta para fora (superior esquerdo) */
        }

        .bg::after {
            transform: translate(-50%, 0%) rotate(var(--rot)); /* Desliza para dentro, cobrindo */
        }
    }

    a, header.text-center, h2, p {
        z-index: 3;
    }

    header {
        z-index: 2;
        h2, p {
            color: #fff;
            margin-bottom: 10px;
        }
    }

    img {
        filter: brightness(0) invert(1);
        transition: scale .3s ease-in-out;
        z-index: 2;

        &:hover {
            scale: 1.2;
        }
    }
}


.card-areatecnica {
    --img: url(/~eduardo/famurs2/html/uploads/banner/25144/original_1.jpg);
    background: linear-gradient(0deg, #3338, #3330), var(--img) center;
    border: 1px solid #3334;
    border-radius: 8px;
    min-height: 180px;
    color: white !important;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    font-size: 20px;
    padding-bottom: 8px;
    transition: scale 0.3s ease-in-out;

    /* Força formato fixo */
    /* aspect-ratio: 1 / 1; */

    &:hover {
        scale: 1.1;
    }
}



body:has(.captcha-popup.shown) {
    .captcha-popup.shown {
        display: flex !important;
    }
}
.captcha-popup {
    position: fixed;
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 101 !important;
    top: 0; left: 0; right: 0; bottom: 0;
    color: #fff;
    background: rgb(0,0,0,.5);

    & > div {
        background: #FFF;
        padding: 20px;
        border-radius: 12px;
        box-shadow: 0 0 10px #0008;
    }
}