html {
	height:100%;
}
body {
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	padding:0;
	margin:0;
	background-color:#F3F3F3;
	display:flex;
	flex-direction:column;
	min-height: 100%;
}

a {
	color:#0086AF;
	transition: all 0.2s ease-out;
}
a:hover {
	text-decoration: none;
}
img {
	border:0;
}


.cols {
	display: flex;
	justify-content: space-between;
	margin-bottom: 2em;
}
.col1, .col2, .col3 {
	box-sizing: border-box;
}
.col1, .col3 {
	box-sizing: border-box;
	min-width: 300px; /* spacing 45*/
}
.col1 {
}
.col3 {
}
.col12, .col23 {
	width: auto;
	box-sizing: border-box;
}
.col12 {
	margin-right:5%;
}
.col23 {
	flex-grow:1;
	margin-left:3%;
}

h1 {
	font-weight: 300;
}

.mrec {
	z-index: 1;
}

.scrollToTop {
	position: fixed;
	bottom:2em;
	right:-4em;
	opacity: 0;
	transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
	z-index: 100;
	display: none;
}
.scrollToTop.on {
	opacity: 0.2;
	right:2em;
}
.scrollToTop.on:hover {
	opacity: 0.4;
}


.sticky {
	z-index: 100;
	position: relative;
	position: sticky;
	top:3.5rem;
}


.botao {
	text-decoration: none;
	color:#333;
	font-weight: 400;
	background-color: #F0F0F0;
	padding:0.5em 1em;
	border-radius: 0.3em;
	border:0;
	border-bottom: 2px solid #CCC;
	text-align: center;
	text-transform: uppercase;
	position: relative;
}
.botao.icone {
	padding-left:2.3em;
}
.botao:hover {
	background-color: #CCC;
	border-color: #999;
}
.botao.primario {
	background-color: #b7d333;
	border-color:#9cb32b;
}
.botao.primario:hover {
	background-color: #9cb32b;
	border-color:#869925;
}
.botao.icone::before {
	content:"";
	display: block;
	width:1em;
	height:1em;
	position: absolute;
	left:0.8em;
	top:0.6em;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	transition: all 0.2s ease-out;
}
.botao.icone:hover::before {
	filter:drop-shadow(0 0 10px #FFF);
	transform: scale(1.2);
}
.botao.icone.telefone:hover::before {
	transform: inherit;
	animation: vibrar 1.3s infinite cubic-bezier(.36,.07,.19,.97);
}
@keyframes vibrar {
	0% {
		transform: rotate(0deg) scale(1);
	}
	10%, 30%, 50% {
	transform: rotate(-10deg) scale(1.2);
	}
	20%, 40%, 60% {
		transform: rotate(10deg) scale(1.2);
	}
	70% {
	transform: rotate(0deg) scale(1);
	}
}
/* clears the 'X' from Internet Explorer */
input[type=search]::-ms-clear {  display: none; width : 0; height: 0; }
input[type=search]::-ms-reveal {  display: none; width : 0; height: 0; }

/* clears the 'X' from Chrome */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration { display: none; }
input[type="search"] { -webkit-appearance: textfield; }
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }



.loading {
	display: inline-block;
	position: relative;
	width: 64px;
	height: 64px;
}
.loading div {
	box-sizing: border-box;
	display: block;
	position: absolute;
	width: 48px;
	height: 48px;
	margin: 6px;
	border: 6px solid #FFF;
	border-radius: 50%;
	animation: loading 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
	border-color: #b7d333 transparent transparent transparent;
}
.loading div:nth-child(1) {
	animation-delay: -0.45s;
}
.loading div:nth-child(2) {
	animation-delay: -0.3s;
}
.loading div:nth-child(3) {
	animation-delay: -0.15s;
}
@keyframes loading {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

.centrado {
	max-width:100%;
	margin:auto;
}

header {
	display: flex;
	justify-content: center;
	padding: 1em;
}
header .centrado {
	width: 100%;
}
header .logo {
	display: block;
	text-align: center;
}
header .logo img {
	position: static;
}
header .logo .branco {
	display: none;
}


/* sticky header */
body.stickyHeader {
}
body.stickyHeader header {
	animation: stickyHeaderIn 0.5s ease-out forwards;
	transform: translateY(-100%);
	background-color:#FFF;
	left: 0; 
	right: 0;
	box-shadow: 0 0 0.2em rgba(0,0,0,0.2);	
	position: fixed;
	z-index: 200;
}
@keyframes stickyHeaderIn {
	0% {}
	100% {
		transform:translateY(0px);
	}
}


header a.home {
	display: none;
}


/* pesquisa */
header form {
	display: flex;
	align-items: center;
	justify-content: center;
}
header form label { /* so para screen readers, esconder */
	position: absolute;
	top:-1000px;
	width:1px;
	height:1px;
	overflow: hidden;
}

header form .searchHolder {
	position: relative;
	width: 100%;
	z-index: 101;
}

header form input {
	border: 2px solid transparent;
	border-radius: 10em;
	padding:0.6em;
	padding-left:2.5em;
	padding-right:2em;
	background-color: transparent;
	font-family: "Roboto", sans-serif;
	font-size: 1em;
	font-weight: 300;
	background-color: #E7E7E7;
	transition: all 0.2s ease-out;
	width:100%;
	position: relative;
	z-index: 1;
	color:#000;
	outline: none;
}
header form .searchHolder img.icone {
	color:#FFF;
	position: absolute;
	top:0.85em;
	left:0.85em;
	z-index:1;
	display: flex;
	justify-content: center;
	opacity: 0.3;
	transition: all 0.2s ease-out;
	pointer-events: none;
}
header form input::placeholder {
	color:rgba(0,0,0, 0.4);
}
header form input:focus::placeholder {
	color:rgba(0,0,0, 0.7);
	outline: none;
}
header form input:focus {
	border: 2px solid #DDD;
	width: 100%;
}
header form input:focus + img.icone {
	opacity: 0.5;
}
header form input, #searchResults {
	/*transition-delay: 0.1s; */
	transition: all 0.2s ease-out, width 0.2s 0.1s, max-height 0.0s 0.1s, background-color 0.2s 0.1s;
}
header form input:focus ~ #searchResults {
	max-height: 5em;
	transition: all 0.2s ease-out;
	transition-delay: 0.2s;
}
header form input:focus ~ #searchResults.comResultados {
	max-height:20rem;
}
header form #searchResults .content {
	border-color: #DDD;
}
#searchResults .content {
	padding:1em;
	padding-top:2em;
}
#searchResults .content p.semPesquisa {
	margin:0;
	font-size: 0.9em;
}
#searchResults .content .resultados {
	display: none;
}

#searchResults {
	position: absolute;
	box-sizing: border-box;
	top:1.2em;
	left:0em;
	right:0em;
	z-index: 0;
	max-height:0em;
	overflow: hidden;
	box-shadow: 0 0.4em 0.5em rgba(0,0,0,0.1);
	border-bottom-left-radius: 0.8em;
	border-bottom-right-radius: 0.8em;
	opacity: 0;
	background-color: transparent;
	border: 2px solid #DDD;
}
#pesquisa:focus ~ #searchResults {
	display: block;
	opacity: 1;
	background-color: #FFF;
}

.animLoading {
	position: absolute;
	top:0.6em;
	right:0.6em;
	width:1.2em;
	height:1.2em;
	border-radius: 10em;
	border-left:2px solid #FFF;
	border-top: 2px solid #FFF;
	border-right: 2px solid transparent;
	border-bottom: 2px solid transparent;
	animation: loading 1s linear infinite;
	display: none;
}
.searchHolder.carregar .animLoading {
	display: block;
}

body.stickyHeader .searchHolder.carregar .animLoading, #pesquisa:focus ~ .animLoading {
	border-left:2px solid #999;
	border-top:2px solid #999;
	z-index: 1;
}


#searchResults.comResultados {
	overflow: scroll;
}
#searchResults h3.sticky {
	margin:0;
	padding:0;
	top:1em;
	padding:0.3em;
	padding-top:1em;
	padding-bottom:0.3em;
	margin-bottom:0em;
	background-color: #FFF;
	font-family: "Roboto Condensed", sans-serif;
	font-weight: normal;
	font-size: 1rem;
	text-transform: uppercase;
	border-bottom:1px solid #007FAD;
	color:#007FAD;
}
#searchResults h3.sticky::after {
	content:"";
	position: absolute;
	top:100%;
	left:0;
	right:0;
	margin-top:1px;
	height:0.8em;
	background: linear-gradient(rgba(255,255,255, 1), rgba(255,255,255, 0));
}
#searchResults .grupo {
	padding-bottom:1em;
}
#searchResults .grupo a {
	display: block;
	text-decoration: none;
	color:#333;
	padding: 0.5em 0.3em;
	border-bottom:1px dotted #CCC;
}
#searchResults .grupo a:hover, #searchResults .grupo a.sel {
	background-color:#F0F0F0;
}
#searchResults .grupo a em {
	display: block;
	font-size: 0.7em;
	margin-top:0.3em;
	font-weight: normal;
	font-style: normal;
}
.home .topo img {
	display: none;
}
.home .distritos h1 {
	display: none;
}
.home .distritos {
	text-align: center;
}
.home .distritos p {
	text-transform: uppercase;
	font-weight: 400;
}
.home .distritos ul {
	list-style:none;
	padding:0;
	margin:0;
}

.home .cols {
	display: flex;
	flex-direction: column;
	margin: 0em auto;
	z-index: 1;
	position: relative;
}
.home .cols {
	gap: 3%;
}
.home .cols {
	justify-content: stretch;
}
.home .cols.destaques {
	padding: 1em;
}
.home .destaque {
	border-radius: 1em;
	box-shadow: 0 0 1em rgba(0,0,0,0.1);
	overflow: hidden;
	background-color: #FFF;
	transition: all 0.2s ease-out;
	flex: none;
    width: 100%;
	margin-bottom: 2em;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
}

.home a.destaque {
	text-decoration: none;
	color:#333;
}
.home .destaque:hover {
	box-shadow: 0 0 1em rgba(0,0,0,0.2);
	transform: scale(1.05)
}
.home .destaque img {
	width: 100%;
	max-height:7em;
	object-fit: cover;
	margin-top:0em;
}
.home .destaque .texto {
	padding:1em 1em;
}
.home .destaque strong, .home .destaque h2 {
	margin:0;
	font-weight: 300;
	font-family: "Roboto Condensed", sans-serif;	
}
.home .destaque strong {
	font-family: "Roboto Condensed", sans-serif;	
	text-transform: uppercase;
	color:#595959;
	font-size:1em;
	font-weight: 300;
	display: block;
}
.home .destaque h2 {  
	font-size: 1.5em;
	margin-top:0.3em;
	margin-bottom: 0.5em;
	font-weight: normal;
}
.home .destaque .botoes {
	display: flex;
	gap: 1em;
	list-style: none;
	margin:0;
	padding:0;
}
.home .destaque .botoes li {
	flex: 1 1 0;
	text-align: center;
}
.home .destaque .botoes li a {
	background-color: #b7d333;
	display: block;
	padding:0.5em;
	border-radius: 0.5em;
	color:#000;
	text-decoration: none;
	border-bottom: 2px solid #9cb32b;
}
.home .destaque .botoes li a:hover {
	background-color:#9cb32b;
	border-color: #869925;
}
.home .destaque p {
	color:#666;
	font-size: 0.9em;
	flex-grow: 1;
}
.home .cols .mrec {
	align-self: center;
}
.home .cols .mrec div {
	background-color: #FFF;
}

/* noticias */
.home .noticias {
	padding-top: 2em;
}
.home .noticias h2 {
	margin-top: 0;
}

.noticias .cols {
	flex-direction: column;
	--gap: 2em;
	gap: var(--gap);
	margin: auto;
	margin-bottom: 2em;
	margin-top: 2em;
}
.noticias .cols a {
	margin:0;
	text-decoration: none;
	background-color: #FFF;
	border-radius: 1em;
	box-shadow: 0 0 1em rgba(0,0,0,0.1);
	overflow: hidden;
	position: relative;
	background-color: #FFF;
	transition: all 0.2s ease-out;
}
.noticias .cols a:hover {
	box-shadow: 0 0 1em rgba(0,0,0,0.2);
	transform: scale(1.05)
}
.noticias .cols a .imagem {
	padding-top: 60%;
	overflow: hidden;
	position: relative;
}
.noticias .cols a .imagem img {
	max-width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}
.noticias .cols a .texto {
	color: #000;
	padding: 1em;
	overflow: hidden;
}
.noticias .cols a h3 {
	font-weight: normal;
	margin-top: 0;
}
.noticias h2 {
	font-weight: 300;
	text-transform: uppercase;
	margin-bottom: 0;
}

.noticias .cols, .news .container.noticias .cols {
	margin-top: 2em;
}
.noticias .titulo {
	display: flex;
}
.noticias .titulo *:first-child {
	flex-grow: 1
}
.noticias .titulo a.mais {
	text-transform: uppercase;
	background-color: #FFF;
	font-size: 0.8em;
}
.container.noticias .individual {
	background-color: #FFF;
	box-shadow: 0 0 1em rgba(0,0,0,0.1);
	padding: 2em;
	display: flex;
	justify-content: space-between;
}
.container.noticias .individual .texto {
	max-width: 45em;
}

.container.noticias .individual .foto {
	width:100%;
}
.container.noticias .individual .texto div {
	font-size: 1.1em;
	line-height: 150%;
}
body.news .primeiraLinha {
	margin-bottom: 0;
}
.paginacao a.botao {
	background-color: #FFF;
}
.paginacao {
	display: flex;
	margin-bottom: 2em;
	gap: 2em;
	justify-content: center;
}


footer {
	background-color: #DDD;
	box-shadow: inset 0px 5px 5px -5px rgba(0,0,0,0.1);
	padding:2em;
	font-size: 0.9em;
	flex-grow: 1;
	margin-top: 2em;
}
footer .centrado {
	display: flex;
	flex-direction: column;
	gap: 2em;
}
footer .col {
	flex-grow: 1;
}
footer .col ul {
	list-style: none;
	padding:0;
	margin:0;
	display: flex;
	flex-direction: column;
	gap: 0.5em;
}
footer .col h4 {
	text-transform: uppercase;
	font-weight: 400;
	margin:0;
	margin-bottom: 0.6em;
	border-bottom:1px solid #CCC;
	padding-bottom:0.4em;
}
footer .col a {
	text-decoration: none;
	color:#333;
}
footer .col a:hover {
	color:#000;
}
footer .col li {
	font-size: 1em;
}
footer .col.apps ul {

}


/* sociais */
footer .sociais ul {
	list-style: none;
	padding: 0;
	margin:0;
	display: flex;
	flex-direction: row;
	gap: 1.5em;
}
.sociais ul li {
	margin-bottom:0.5em;
}
.sociais ul li a {
	display: flex;
	align-items: center;
	gap: 0.5em;
}
.sociais ul li a img {
	width: 2em;
	height: 3em;
}
.sociais ul li a span {
	display: none;
}

/* end of layout/homepage */



.distritosTopo .lists {
	display: flex;
}


.farmacia:hover::after {
	opacity: 0;
}
.mrecEsquerda {
	flex-grow: 1;
	align-self: center;
	padding-bottom: 1em;
}
.mrec.sticky {
	margin-top:1em;
	top:4.5em;
}

.menuConteudo {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 3%;
	margin-bottom: 2em;
}

.menuConteudo .col1 {
	background-color: transparent;
	display: flex;
	flex-direction: column;
}
.menuConteudo .submenu {
	display: flex;
	align-items: stretch;
	justify-content: center;
}


.separadorTipo {
	font-size: 1.3em;
	border-bottom: 2px solid;
	padding:0.5em;
	font-weight: normal;
	border-color: #000;
	margin:0;
	background-color: #F3F3F3;
	display:flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: baseline;
}
.separadorTipo::after {
	content:"";
	position: absolute;
	top:calc(100% + 2px);
	left:0;
	right:0;
	height:0.75em;
	overflow: hidden;
	background: transparent;
	background: linear-gradient(180deg, rgba(243,243,243,1) 0%, rgba(243,243,243,0) 100%);
}
.separadorTipo strong {
	font-family: "Roboto Condensed";
	font-weight: 500;
	text-transform: uppercase;
}
.separadorTipo em {
	font-style: normal;
	font-weight: 300;
	font-size: 0.9rem;
}
.separadorTipo.cP {
	border-color: #0076A1;
	color:#0076A1;
}
.separadorTipo.cHA {
	border-color: #c51c57;
	color:#c51c57;
}
.blocoFarm {
	margin:0;
	margin-bottom: 1em;
	display: flex;
	flex-direction: column;
}
.resto {
	text-align: center;
	padding:1em;
}

.farmacia {
	position: relative;
	background-color: #FFF;
	margin-top:1em;
	border-radius: 0.5em;
	border-bottom-left-radius: 0.5em;
	border-bottom-right-radius: 0.5em;
	border:1px solid #DFDFDF;
	border-bottom-width: 3px;
	overflow: hidden;
	transition: all 0.2s ease-out;
}
.farmacia:hover {
	box-shadow: 0 0 1em #FFF;
}
.farmacia.fechada {
	opacity: 0.6;
	filter: grayscale(1);
}
/* logica de fecho */
.cHA .farmacia.fechada,
.cE .farmacia.fechada {
	display: none;
}
.cE.tudoFechado, .cHA.tudoFechado {
	display: none;
}
#conteudoFarmacias.verTodas .blocoFarm {
	display: flex;
}
#conteudoFarmacias.verTodas #emptyState {
	display: none;
}
.farmacia.destaque.fechada.comAlerta, #conteudoFarmacias.verTodas .farmacia.destaque.fechada {
	display: block;
}
.farmacia.normal.fechada.comAlerta, #conteudoFarmacias.verTodas .farmacia.normal.fechada {
	display: flex;
}
/* ordem */
.separadorTipo {
	order:1;
}
.farmacia, .farmacia + script + ins {
	order:2;
}
.farmacia.fechada.comAlerta, .farmacia.fechada.comAlerta + script + ins {
	order:3;
}
.farmacia.fechada, .farmacia.fechada + script + ins {
	order:4;
}
.farmacia.normal, .farmacia.normal + script + ins {
	order:5;
}
.farmacia.normal.fechada, .farmacia.normal.fechada + script + ins {
	order:6;
}
ins {
	margin-top: 0.5em;
	border-radius: 0.5em;
	overflow: hidden;
	border: 1px solid #DFDFDF;
	border-bottom-width: 3px;
	background-color: #FFF;
}
ins[data-ad-status]:not([data-ad-status="filled"]) {
	display: none !important;
}
/**/

.farmacia.fechada .dados, .farmacia.fechada .mapa, .farmacia.fechada .logoFarmacia, .farmacia.fechada .botoes {
	
}
.farmacia.fechada:hover {
	opacity: 1;
	filter: grayscale(0);
}
.farmacia.fechada:hover .dados, .farmacia.fechada:hover .mapa, .farmacia.fechada:hover .logoFarmacia, .farmacia.fechada:hover .botoes {
	
}
.farmacia.fechada::after {
	content: "ENCERRADA DE MOMENTO";
	position: absolute;
	top:50%;
	left:50%;
	font-size: 1.2em;
	box-sizing: border-box;
	margin-top:-1.2em;
	margin-left:-7em;
	padding:0.6em 1em;
	border:2px solid #666;
	text-transform: none;
	font-family: "Roboto Condensed";
	font-weight: 500;
	border-radius: 0.5em;
	color:#666;
	transition: all 0.2s ease-out;
	background-color: rgba(255,255,255, 0.9);
	width:14em;
	text-align: center;
}
.farmacia.fechada:hover::after {
	opacity: 0;
	visibility: hidden;
}
.blocoFarm.cD .fechada::after, .blocoFarm.cP21D .fechada::after, .blocoFarm.cP24D .fechada::after, .blocoFarm.cP22D .fechada::after {
	content: "ENCERRADA - Ligue 1400 para atendimento urgente";
	text-align: center;
	margin-top:-2.9em;
	color:#000;
}
.farmacia .alerta {
	position: absolute;
	top:1em;
	right:1em;
	padding:0.5em;
	background-color: #FFF;
	border:2px solid #AAA;
	border-radius: 0.5em;
	text-transform: uppercase;
	font-weight: 500;
	font-size: 0.85em;
	animation: pulsar 1s infinite;
}
.farmacia .alerta.abreEm {
	border-color:#00CC00;
	color:#006600;
}
.farmacia .alerta.abreEm::before {
	content: "Abre em ";
}
.farmacia .alerta.fechaEm {
	border-color:#CC0000;
	color:#CC0000;
}
.farmacia .alerta.fechaEm::before {
	content: "Fecha em ";
}
@keyframes pulsar {
	0% {
		transform: scale(1);
	}
	50% {
		transform: scale(1.05);
	}
	100% {
	transform: scale(1.0);
	}
}

.farmacia img {
	max-width: 100%;
	max-height: 100%;
}
.farmacia h3 {
	font-family: "Roboto Condensed";
	text-decoration: none;
	font-weight: 400;
	margin:0;
	font-size: 1.3em;
}
.farmacia h3 a {
	text-decoration: none;
	color:#000;
}
.farmacia a.mapa {
	display: block;
}
.farmacia.normal {
	display: flex;
}
.farmacia.normal a.mapa {
	flex-basis: 214px;
	flex-grow: 0;
	flex-shrink: 0;
	align-self: stretch;
	position: relative;
}
.farmacia.normal a.mapa img {
	display:block;
	position: absolute;
	left:0;
	top:0;
	border-left: 1px solid #DFDFDF;
	width: 100%;
	height: 100%;
	background-size: 100%;
	background-size: cover;
	background-position: center;
}
.farmacia .dados {
	padding:1.5em;
	position: relative;
}
.farmacia.normal .dados {
	flex-grow: 1;
}
.farmacia a.telefone {
	background-color: #ceecd5;
	border-color:#bdd9c3;
}
.farmacia a.telefone:hover {
	background-color: #bdd9c3;
	border-color:#a6bfac;
}
.farmacia a.website, .farmacia a.email, .farmacia a.bmapa {
font-weight: 300;
}
@media only screen and (max-width: 1100px) {
.farmacia .botoes a {
		font-size: 0.8em;
}
}

.farmacia a.telefone::before {
	background-image: url(../imgs/icones/telefone.svg);
}
.farmacia a.website::before {
	background-image: url(../imgs/icones/website.svg);
}
.farmacia a.email::before {
	background-image: url(../imgs/icones/email.svg);
}
.farmacia a.bmapa::before {
	background-image: url(../imgs/icones/mapa.svg);
}
.farmacia a.website::before, .farmacia a.email::before, .farmacia a.bmapa::before {
	opacity: 0.5;
}
.farmacia.normal .dados {
	display: flex;
	align-items: start;
}
.farmacia.normal .dados .nomeMorada {
	flex-grow: 1;
	padding-right:0.5em;
}
.farmacia a.telefone {
	text-decoration: none;
	color:#333;
	font-weight: 400;
	white-space: nowrap;
}
.farmacia.normal a.telefone {
	display: block;
	margin-bottom: 0.5em;
}

.farmacia .logoFarmacia {
	position: absolute;
	width:11.25em;
	height:7.8em;
	background-color: #FFF;
	top:3em;
	left:1em;
	padding:0.5em;
	box-shadow: 0 0 1em rgba(0,0,0,0.1);
	display: flex;
	align-items: center;
	justify-content: center;
}
.farmacia.destaque .logoFarmacia img {
	display: block;
}
.farmacia .botoes {
	margin-top:0.5em;
	margin-left:14em;
	margin-right:0.5em;
	list-style: none;
	display: flex;
	padding: 0;
}
.farmacia.destaque .mapa img {
	display: block;
	height: 118px;
	width: 100%;
	background-size: cover;
	background-position: center;
	
}
.farmacia.destaque .mapa {
	border-bottom: 1px solid #DFDFDF;
}
.farmacia .botoes li {
	flex-grow: 1;
	margin:0.3em;
}
.farmacia .botoes li a {
	display: block;
}
.farmacia.destaque .dados {
	position: relative;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 40% 3% 22% 3% 32%;
	grid-template-columns: 40% 22% 32%;
	grid-gap: 3%;
}
.farmacia.destaque .dados > div {
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.farmacia.destaque .dados .nomeMoradaDirector {
	-ms-grid-column: 1;
		grid-column-start: 1;
}
.farmacia .horario {
	-ms-grid-column: 2;
		grid-column-start: 2;
	-ms-grid-row-align: start;
		align-self: start;
}
.farmacia.destaque div.servicos {
	-ms-grid-column: 3;
		grid-column-start: 3;
}
.farmacia .horario {
	position: relative;
	padding:0.7em;
	border:1px solid #EDEDED;
	border-bottom:2px solid #e8e7da;
	border-radius: 0.3em;
	background-color: #FFF;
	padding-top:2.5em;
}
.farmacia .horario h4 {
	position: absolute;
	top:0;
	left:0;
	right:0;
	padding:0.5em 0.9em;
	border-bottom: 1px solid #DFDFDF;
	background-color: #F9F9F9;
	display: block;
	text-transform: uppercase;
	font-size: 0.8em;
	font-weight: 500;
	margin-bottom: 0.4em;
	color: #ab184b;
	margin:0;
	padding-left:2.2em;
}
.farmacia .horario strong {
	font-weight: 500;
}
.farmacia .horario h4::after {
	content:"";
	position: absolute;
	left:0.35em;
	top:0.35em;
	width:1em;
	height:1em;
	font-size: 1rem;
	background-image: url(../imgs/icones/horario.svg);
	background-repeat: no-repeat;
}
.farmacia .servicos {
	position: relative;
	padding:0.5em;
	padding-top:0.5em;
	border: 1px solid #F0F0F0;

	border-radius: 0.3em;
	background-color: #F9F9F9;
	overflow: hidden;
}
.farmacia .servicos h4 {
	text-transform: uppercase;
	margin:0;
	font-size: 0.8em;
	font-weight: 400;
}
.farmacia .servicos ul {
	padding:0em;
	list-style: none;
	margin: 0;
	margin-top:0.5em;
	font-size: 0.8em;
}
.farmacia .servicos ul li {
	padding-left: 1.7em;
	margin-left:0.3em;
	margin-bottom: 0.2em;
	background-image: url(../imgs/icones/bullet-servicos.svg);
	background-repeat: no-repeat;
	white-space: nowrap;
	text-overflow: ellipsis;
	background-position: 0 center;
	overflow: hidden;
	position: relative;
}
.servicos ul li.s11, .servicos ul li.s145, .servicos ul li.s170, .servicos ul li.s264, .servicos ul li.s265 {
	background-image: url(../imgs/icones/servicos/entregas.svg);
}
.servicos ul li.s64 {
	background-image: url(../imgs/icones/servicos/vendas-online.svg);
}
.servicos ul li.s139, .servicos ul li.s70 {
	background-image: url(../imgs/icones/servicos/drive.svg);
}
.servicos ul li.s7, .servicos ul li.s34, .servicos ul li.s23 {
	background-image: url(../imgs/icones/servicos/vacinas-injectaveis.svg);
}
.servicos ul li.s245, .servicos ul li.s263, .servicos ul li.s267, .servicos ul li.s270, .servicos ul li.s271, .servicos ul li.s272 {
	background-image: url(../imgs/icones/servicos/testes-covid.svg);
}
.farmacia .servicos a {
	display: block;
	position: absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	color:#999;
	margin-right:0.3em;
	margin-bottom:0.3em;
}
.farmacia .servicos a span {
	background-color:#FFF;
	padding:0.2em 0.6em;
	padding-right:2em;
	display: block;
	position: absolute;
	bottom:0;
	right:0;
	font-size: 0.7rem;
	text-transform: uppercase;
	font-weight: 500;
	display: block;
	border:1px solid #DFDFDF;
	border-radius: 3.5em;
	overflow: hidden;
	display:none;
}
.farmacia .servicos a span::after {
	content:"+";
	position: absolute;
	right:0;
	padding:0 0.2em;
	border-left:1px solid #DFDFDF;
	width:0.7em;
	text-align: center;
	border-radius: 4em;
	font-size: 1.5em;
	top:-0.1em;
	font-weight: normal;
	background-color: #F0F0F0;
}
.farmacia .servicos a:hover span::after {
	background-color: #E5E5E5;
}
.farmacia.normal .servicos {
	position: static;
	padding:0.3em;
	display: inline-block;
	margin-top:-0.3em;
	margin-bottom: -0.5em;
}
.farmacia.normal .servicos ul {
	margin-top: 0;
}
.farmacia.normal .servicos ul li {
	margin-bottom: 0
}

.farmacia .pDirector {
	display: none;
}
.farmacia.destaque .dados p:last-child {
	margin-bottom: 0;
}
.infoFarmacias {
	padding:0 1em;
	font-size: 0.9em;
}









/* individual */
.farmacia.individual {
	margin-top:2.9em;
	overflow: visible;
}
.farmacia.individual .logoFarmacia {
	top:-2.5em;
	left:1.5em;
	width:13em;
	height:9em;
}
.farmacia.individual h1 {
	font-family: "Roboto Condensed";
	font-size: 1.6em;
	font-weight: 400;
	width:60%;
}
.farmacia.individual .botoes {
	position: absolute;
	top:0;
	left:16.4em;
	margin-left:0;
	right:0;
}
.farmacia.individual .director {
	position: absolute;
	top:3.5em;
	left:16.4em;
	padding-left:0.5em;
}
.farmacia.individual .moradaRegime {
	display: flex;
}
.farmacia.individual .morada p:first-child {
	margin-top: 0;
}
.farmacia.individual.naodestacada .morada p:first-child {
	margin-bottom: 2em;
	margin-top: 0;
}
.farmacia.individual .morada {
	flex-grow: 1;
}
.farmacia.individual .horario {
	margin-top:-2.6em;
}
.farmacia.individual.naodestacada .horario {
	margin-top:0em;
}
.farmacia.individual.naodestacada .horario {
	flex-basis: auto;
}

.farmacia.individual .servicos {
	padding:1em;
	margin-top:1em;
}
.farmacia.individual .servicos h3 {
	font-size: 1.2em;
	text-transform: uppercase;
	margin-bottom: 1em;
}
.farmacia.individual .servicos ul li {
	display: inline-block;
	width: 49%;
	box-sizing: border-box;
	font-size: 0.9rem;
	white-space: normal;
}
.farmacia.individual .mapa {
	width:100%;
	margin-top:1em;
}
.farmacia.individual .mapa .frame {
	display: block;
	border-bottom-left-radius: 0.5em;
	border-bottom-right-radius: 0.5em;
	overflow: hidden;
	margin:0;
	border-top:1px solid #DFDFDF;
}
.farmacia.individual .mapa .frame iframe {
	width:100%;
	margin:0;
	border:0;
	display: block;
}
.farmacia.individual .mapa .tituloMapa {
}
.farmacia.individual .mapa .tituloMapa strong {
	font-family: "Roboto Condensed";
display: inline-block;
	padding:0.5em 1em;
	text-transform: uppercase;
	background-color: #F3F3F3;
	border-top:1px solid #DFDFDF;
	border-right:1px solid #DFDFDF;
	border-top-right-radius: 0.5em;
}
.farmacia.individual .mapa .tituloMapa a {
	float: right;
}
.farmacia .regime {
	border:1px solid #DFDFDF;
	padding:0.5em;
	border-radius: 0.5em;
}

.farmacia.individual.naodestacada h1 {
	margin-top:0;
}
.farmacia.individual .botao.todas {
	font-size: 0.8em;
	margin:1.7em;
	margin-top:0;
	display: block;
}
.botao.todas {
	background-color: #007FAD;
	border-color: #00678c;
	color: #FFF;
}
.farmacia.individual.naodestacada .botao.todas {
	margin-top:1em;
}
.botao.todas:hover {
	transform: none;
	background-color: #00678c;
	border-color: #00506e;
}
.farmacia.individual.destacada .dados {
	padding-top: 7.5em;
}





.caixa .conteudo p:first-child {
	margin-top:0;
}
.escolherConcelho .conteudo ul {
	list-style: none;
	padding:0;
	margin:0;
	display: flex;
	flex-wrap: wrap;
	box-sizing: border-box;
	align-items: stretch;
	gap: 2%;
}
.escolherConcelho .conteudo ul li a {
	text-decoration: none;
	padding:0.5em 1em;
	display: block;
	background-color: #FFF;
	border:1px solid #DFDFDF;
	border-bottom:2px solid #DFDFDF;
	color:#333;
	border-radius: 0.5em;
}
.escolherConcelho .conteudo ul li a:hover {
	border-color:#CCC;
	background-color: #F3F3F3;
}


.vazio {
	border-top:2px solid #000;
	margin-top:2.855em;
	background-color: #FFF;
	padding:1.8em;
	box-shadow: 0 2px 0 rgba(0,0,0,0.1);
	border-bottom-left-radius: 0.5em;
	border-bottom-right-radius: 0.5em;
}
.vazio p:first-child {
	margin-top:0;
}
.vazio .botao {
	margin-top:2em;
	display: block;
}
.resto .botao.todas {
	display: block;
}






/* estaticas */
.submenu ul {
}

.estaticas h4 {
	font-weight: 400;
	text-transform: uppercase;
}
.estaticas h3 {
	font-weight: 300;
	text-transform: uppercase;
}

.estaticas form {
	
}
.estaticas form label, .formulario form label {
	display: block;
	text-transform: uppercase;
	font-weight: 500;
	font-size: 0.7em;
	margin-bottom:0.3em;
}
form select {
	position:relative;
	-moz-appearance: none;
-webkit-appearance: none;
	background-image: url('../imgs/ui/select-arrow.svg');
background-repeat: no-repeat;
background-position: right .7em top 50%;
background-size: .65em auto;
}
form select option {
	font-weight: 400;
}
form select::-ms-expand {
	display: none;
}
.estaticas form input, .estaticas form textarea, .formulario input, .formulario textarea, .estaticas form select {
	font-family: "Roboto", sans-serif;
	font-size: 1em;
	font-weight: 300;
	margin-bottom: 1em;
	display: block;
	width:100%;
	box-sizing: border-box;
	padding:0.4em;
	background-color: #F3F3F3;
	border:0;
	border-radius: 0.2em;
}
.estaticas form *::placeholder, .formulario form *::placeholder {
	color:#666;
}
.estaticas form input.botao, .formulario form input.botao {
	-webkit-appearance: none;
	width:auto;
	background-color: #b7d333;
	border-bottom: 2px solid #9cb32b;
	padding:0.4em 1em;
	font-weight:500;
	transition: all 0.2s ease-out;
}
form input[type=color]{
	height:2em;
	box-sizing: border-box;
}
.formulario form input.botao:disabled {
	opacity: 0.5;
	filter:grayscale(1);
}
.estaticas form input.botao:hover, .formulario form input.botao:hover {
	transform: none;
	background-color: #9cb32b;
	border-color: #869925;
	cursor: pointer;
}






/* mapa */
.lity-iframe .lity-container {
	max-width:90%
}
.lity-iframe-container {
}
#mapaArea {
	position: absolute;
	left:0;
	width:calc(100% - 330px);
	top:0;
	bottom:0;
}
#mapaArea.individual {
	width:100%;
}
#mapaLateral {
	position: absolute;
	top:0;
	right:0;
	width:330px;
	bottom: 0;
	background-color: #FFF;
	border-left:1px solid #DFDFDF;
	z-index: 1;
	box-sizing: border-box;
	overflow: scroll;
	padding:1em;
	padding-top:0;
	box-shadow: 0 0 0.5em rgba(0,0,0, 0.1)
}
#mapaLateralConteudo {
	position: relative;
}
#mapaLateral .separadorTipo {
	padding:0.3em;
	background-color: #FFF;
	padding-top:1em;
	top:0em;
	display: flex;
	flex-direction: column;
}
#mapaLateral .separadorTipo strong {
	font-size: 0.9em;
	display: block;
}
#mapaLateral .separadorTipo em {
	float: none;
	position: static;
	font-size: 0.6em;
}
#mapaLateral .separadorTipo::after {
background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
}
#mapaLateral .blocoFarm .farmacia {
	display: block;
	text-decoration: none;
	color: #000;
	overflow: visible;
	cursor:pointer;
	margin-top: 1.6em;
	transition: all 0.2s ease-out;
}
#mapaLateral .blocoFarm .farmacia:hover {
	transform: scale(1.04);
}
#mapaLateral .blocoFarm .farmacia h3 {
	font-size: 1.2em;
}
#mapaLateral .blocoFarm .farmacia h3, #mapaLateral .blocoFarm .farmacia p {
	padding:0.4em;
	margin:0;
}
#mapaLateral .blocoFarm .farmacia .horario {
	background-color: transparent;
	border:0;
	padding:0.3em;
	padding-top:0.1em;
	padding-left:2em;
}
#mapaLateral .blocoFarm .farmacia .horario .linha {
	display: inline;
}
#mapaLateral .blocoFarm .farmacia .horario .linha::after {
	content: " / ";
	display: inline-block;
	width:1em;
	text-align: center;
}
#mapaLateral .blocoFarm .farmacia .horario .linha:last-child::after {
	content:"";
	display: none;
}
#mapaLateral .blocoFarm .farmacia .horario .linha strong {
	font-weight: 400;
}
#mapaLateral .blocoFarm .farmacia .horario h4 {
	display: none;
}
.mapaInfoWindow .horario {
	background-color: #F9F9F9;
	padding:0.3em 0.6em;
	padding-left:2em;
	position: relative;
	border:1px solid #DFDFDF;
	border-radius: 0.4em;
	display: flex;
}
.mapaInfoWindow .horario h4 {
	display: none;
}
#mapaLateral .blocoFarm .farmacia .horario::after {
	content:"";
	position: absolute;
	width:1em;
	height:1em;
	left:0.5em;
	top:0.35em;
	background-image:url(../imgs/icones/horario.svg); 
	background-size:100% 100%;
}
.mapaInfoWindow .horario {
	background-image:url(../imgs/icones/horario.svg); 
	background-size: 1em 1em;
	background-repeat: no-repeat;
	background-position: 0.5em center;
}
#mapaLateral .blocoFarm .farmacia .horario::after {
	top:0.2em;
}
#mapaLateral .blocoFarm .farmacia img {
	float: right;
	width:2em;
	margin:0.5em;
	margin-top:-0.8em;
}
#mapaLateral .blocoFarm .farmacia .telefone, .mapaInfoWindow .telefone {
	padding-left:1.9em;
	position: relative;
}
.mapaInfoWindow .telefone {
	background-image:url(../imgs/icones/telefone.svg); 
	background-size:1em 1em;
	background-repeat: no-repeat;
	background-position: left center;
}
.mapaInfoWindow {
	padding:0.5em;
}
.mapaInfoWindow .telefone {
	display: block;
	padding-left:1.5em;
	text-decoration: none;
	color:#000;
	margin-bottom: 1em;
}
.mapaInfoWindow .telefone::after {
	top:0.1em;
	left:0;
}
.mapaInfoWindow strong.nome {
	font-family: "Roboto Condensed";
	font-size: 1.5em;
	font-weight: normal;
}


/* modal */
#modal {
	position: fixed;
	top:0;
	left:0;
right:0;
	bottom:0;
	z-index: 220;
	display:flex;
	align-content: center;
	justify-content: center;
	opacity: 0;
	transition: all 0.4s ease-out;
}
#modal .bg {
	position: fixed;
	left:0;
	right:0;
	top:0;
	bottom:0;
	background-color: rgba(0,0,0,0.85);
}
#modal .close {
	position: fixed;
	right:0.5em;
	top:0.5em;
	cursor: pointer;
color: #FFF;
	font-size: 2em;
	font-weight: bold;
}
#modal .close:hover {
	transform:scale(1.2);
}
#modal.on {
	opacity: 1;
}
#modal .conteudoModal {
	opacity: 0;
	transform: scale(0.5);
	transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
transition-delay: 0.5s;
	align-self: center;
}
#modal.on .conteudoModal {
	transform: none;
	opacity: 1;
	z-index: 1;
}
#modal .conteudoModal iframe {
	border:0;
	box-shadow: 0 0 1em #000;
	background-color: #FFF;
	width:100%;
	height:100%;
	border-radius: 0.5em;
	overflow: hidden;
	border-bottom: 2px solid #666;
}
#modal.iframe .conteudoModal {
	width:100%;
	max-width: 90%;
	height:100%;
	max-height:85%;
}
#modal .conteudoModal .loading {
	position: absolute;
	top:50%;
	left:50%;
	margin-left:-2em;
	margin-top:-1em;
}
#modal .conteudoModal .loading div {
	border-color: #CCC transparent transparent transparent;
}
#modal.ajax .conteudoModal {
	height: 100%;
	max-width:90%;
	display: flex;
}
#modal.ajax .conteudoModal .formulario {
	box-shadow: 0 0 1em rgba(0, 0, 0, 0.5);
	align-self: center;
	border-color:#666;
	border-bottom: 2px solid #666;
}
#modal.imagem .conteudoModal {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height:100%;
	pointer-events: none;
}
#modal.imagem .conteudoModal img {
	max-width:90%;
	max-height:90%;
	box-shadow: 0 0 1em #000;
	opacity:0;
	transition: all 1s ease-out;
}
#modal.imagem img.loaded {
	opacity: 1;
}


/* formularios */
.formulario {
	margin:2em auto;
	background-color: #FFF;
	padding:1.5em;
	border-radius: 0.5em;
	border:1px solid #DFDFDF;
	border-bottom-width: 3px;
	width:34em;
	max-width:100%;
	max-height:100%;
	max-height:calc(100% - 4em);
	box-sizing: border-box;
	overflow-y: scroll;
}
.formulario h1 {
	margin-top:0;
	font-family: "Roboto Condensed", sans-serif;
}
.formulario p:first-child {
	margin-top:0;
}
.formulario form {
	margin-top:2em;
	position: relative;
}
.formulario form textarea {
	height: 6em;
}
.formulario .anti-spam {
	visibility: hidden;
	position: absolute;
	z-index: -100;
	top:0;
	left:0;
	pointer-events: none;
	width:1em;
	height:1em;
}
.formulario form .invalido {
	border:1px dotted #CC3333;
}
.formulario.carregar {
	
}
.formulario .erro {
	border:1px solid #FFCCCC;
	border-radius: 0.5em;
	padding:0.7em;
	margin:1em 0em;
	background-color: #FFF0F0;
}
.formulario .sucesso {
	border:1px solid #99DD99;
	border-radius: 0.5em;
	padding:0.7em;
	margin:1em 0em;
	background-color: #F0FFF0;
}
.formulario input[type=checkbox] {
	width:auto;
display: inline-block;
}
.formulario input[type=checkbox] + label {
	display: inline-block;
	text-transform: none;
	font-weight: 300;
font-size: 1rem;
}
.formulario form.carregar:after {
	content:"";
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background-color: rgba(255,255,255,0.8);
}
.formulario form.carregar:before {
	content:"";
	position: absolute;
	top:50%;
	left:50%;
	margin-left:-1em;
	margin-top:-1em;
	width:2em;
	height:2em;
	z-index: 1;
	box-sizing: border-box;
border: 0.2em solid #F0F0F0;
border-top: 0.2em solid #b7d333; 
border-radius: 50%;
animation: spin 1s linear infinite;
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}






/* conteudo */
.qrcode img {
	width:10em;
	border:1px solid #ccc;
	display: block;
	margin:auto;
}
#conteudoEstaticas h2 {
	font-weight: 300;
}
#conteudoEstaticas h2:first-child {
	margin-top:0;
}



/* widget */
#formWidget .inputPequeno.dimen {
	display: inline-block;
	width:60%;
}
#formWidget .unidade {
	display: inline-block;
	width:38%;
}
#formWidget .linha {
	display: flex;
}
#formWidget .linha div {
	margin:1%;
	flex-grow: 1;
}
#formWidget .linha div:first-child {
	margin-left:0;
}
#formWidget .linha div:last-child {
	margin-right:0;
}
#formWidget input + small {
	display: block;
	margin-top:-1.1em;
	font-size: 0.7em;
}
#formWidget .erro, #wCodigo .erro {
	background-color: #FFDDDD;
}
#wCodigo .erro {
	padding:0.5em;
	border:1px solid #FF9999;
	border-radius: 0.4em;
	margin-bottom: 1em;
}
#wCodigo textarea {
	width:100%;
	background-color: #F0F0F0;
	border:0;
	padding:1em;
	font-family: monospace;
	box-sizing: border-box;
	height:8em;
	border-radius: 0.5em;
}
#wPreview iframe {
box-shadow: 0 0 1em rgba(0,0,0,0.1);
}




#mobilePromo {
	position: fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	z-index:1001;
	background-color: #F0F0F0;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	visibility: hidden;
	text-align: center;
	transition: visibility 0s 0.5s, transform 0.5s ease-out;
	transform:translateY(100%);
}
#mobilePromo .centro {
	box-sizing: border-box;
	width:35em;
	max-width: 90%;
	padding:2em;
	background-color: #FFF;
	border-radius: 1em;
	box-shadow: 0 0 1em rgba(0,0,0,0.1)
}
#mobilePromo h3 {
	font-family: "Roboto Condensed", sans-serif;
	font-weight: normal;
}
#mobilePromo img {
	height:6em;
}
#mobilePromo .botoes {
	list-style: none;
	margin:0;
	padding:0;
	margin-top:1em;
	text-align:center;
}
#mobilePromo .botoes li {
	display: inline-block;
	width: 7em;
	margin: 1em;
}
#mobilePromo .botoes li a {
	display: block;
	cursor: pointer;
}

@media only screen and (max-width: 990px) {
	#mobilePromo {
		visibility: visible;
		transform: none;
		transition: visibility 0s, transform 0.5s ease-out;
	}
}



/* covid19 */
.covid19 li em {
	display: inline-block;
	margin-left:0.5em;
	font-style: normal;
	font-size: 0.7em;
	background-color: #E9E9E9;
	padding:0.1em 0.4em;
	border-radius:1em;
}
.covid19 .separadorTipo em {
	float:right;
	position: relative;
	margin-top: 0.3em;
	bottom: 0;
}
.covid19 .separadorTipo::after {
	display: none;
}
.covid19 .filtros {
	background-color: #FFF;
	border: 1px solid #CCC;
	border-top:0;
	background-color: #FFF;
	box-shadow: 0 2px 0 rgba(0,0,0,0.1);
	border-bottom-left-radius: 0.5em;
	border-bottom-right-radius: 0.5em;
}
.covid19 .filtros.separadorTipo {
	padding:0;
}
.covid19 .filtros h2 {
	font-size: 1rem;
	text-transform: uppercase;
	font-family: "Roboto Condensed", Roboto, sans-serif;
	margin: 0;
	padding: 0;
	font-weight: 300;
	/*
	padding: 0.3em 0.7em;
	border-bottom: 1px solid #CCC;
	*/
	padding:0.7em;
}
.covid19 .filtros form {
	padding:0.7em;
	font-size: 1rem;
}
.covid19 .filtros form .linha {
	display: flex;
	font-weight: 300;
	display: flex;
	padding-bottom:0;
}
.covid19 .filtros form .linha:first-child {
	border-bottom: 1px solid #F0F0F0;
}
.covid19 .filtros form .linha:last-child {
	padding-top:0.5em;
}
.covid19 .filtros form .linha > label {
	text-transform: uppercase;
	display: inline-block;
	min-width:8em;
	font-size: 0.9em;
	font-weight: normal;
	padding-top:0.4em;
}
.covid19 .filtros form .linha .opcoes {
	display: flex;
	flex-wrap: wrap;
	flex-grow: 1;
}
.covid19 .filtros form .linha input {
	position: absolute;
	top:0px;
	width:0px;
	height:0;
	visibility: hidden;
}
.covid19 .filtros form .linha input + label {
	font-size: 0.9em;
	padding:0.3em 0.5em;
	margin-right:0.5em;
	margin-bottom:0.5em;
	border-radius: 0.4em;
	padding-left:2em;
	cursor: pointer;
	color:#666;
	border-bottom:1px solid #DDD;
	position: relative;
	background-color: #F0F0F0;
}
.covid19 .filtros form .linha input:checked + label {
	background-color: #dae998;
	color:#000;
	border-bottom: 0;
	border-top:1px solid #FFF;
}
.covid19 .filtros form .linha input + label::after {
	content:"";
	background-size: 100%;
	width:1em;
	height:1em;
	position: absolute;
	top:0.4em;
	left:0.4em;
	background-color: #FFF;
	border-radius: 0.3em;
}
.covid19 .filtros form .linha input:checked + label::after {
	background-image: url('../imgs/icones/checkmark.svg');
}
.covid19 .vazio {
	order:3;
}
.covid19 #emptyState {
	display: none;
}
#conteudoFarmacias.covid19 ul.covid19 li {
	flex-basis:32%;
	margin-right:1.333%;
	margin-bottom:1.55%;
}
.promoCovid {
	margin-bottom: 0.5em;
	width: 100%;
}
.promoCovid a {
	border: 2px solid #CC0000;
	border-radius: 2em;
	padding: 0.7em;
	background-color: #FFF;
	padding-left: 8em;
	padding-right:5em;
	position: relative;
	overflow:hidden;
	text-decoration: none;
	color: #000;
	display: block;
	transition: all 0.2s linear;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-size: 1em;
}
.promoCovid strong.titulo {
	position: absolute;
	left:0;
	top:0;
	bottom:0;
	width: 7em;
	background-color: #C00;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #FFF;
	transition: all 0.2s linear;
	-webkit-transform: translateZ(0); /* bug safari */
	border-radius:2em;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	font-weight: bold;
}
.promoCovid em {
	position: absolute;
	right: 0.2em;
	top: 50%;
	font-style: normal;
	background-color: #CC0000;
	color:#FFF;
	font-weight: bold;
	text-transform: uppercase;
	padding: 0.5em 1em;
	border-radius: 2em;
	transform: translateY(-50%);
	transition: all 0.2s linear;
}

.promoCovid a:hover {
	border-color: #990000;
	background-color: #F9F9F9;
}
.promoCovid a:hover strong.titulo {
	background-color: #990000;
}
.promoCovid a:hover em {
	background-color: #990000;
}
.home .promoCovid {
	margin-top: 2em;
	margin-bottom: -1.5em;
}
.col1.distrito .promo {
	margin: 1em 0;
	padding: 0.5em 1em;
	background-color: #b7d333;
	box-shadow: 0 2px 0 rgba(0,0,0,0.1);
	border-radius: 0.5em;
	text-align: center;
	display: block;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 0.9em;
	font-weight: normal;
	color:#000;
	transition: all 0.2s linear;
	margin-top:1em;
	top:4.5em;
}
.col1.distrito .promo:hover {
	background-color: #a5bd2d;
}
.promo.covid + .mrec.sticky {
	top: 8em;
}

.longText {
	line-height: 150%;
}

.menuConteudo.estaticas .caixa h2, .menuConteudo.estaticas .caixa h1 {
	text-align: left;
}

.cols3 {
	display: flex;
	gap: 3%;
}

.marker {

}
.markerE {
	z-index: 60;
}
.markerD {
	z-index: 70;
}
.markerRD {
	z-index: 80;
}
.markerHA {
	z-index: 85;
}
.markerR {
	z-index: 90;
}
.markerP {
	z-index: 100;
}
.marker.selected {
	z-index: 102;
}
.maplibregl-popup {
	z-index: 103;
}
.maplibregl-popup a {
}
.maplibregl-control-container {
	position: absolute;
	z-index: 104;
	bottom: 0;
	top: 0;
	left: 0;
	right: 0;
	pointer-events: none;
}
.maplibregl-control-container > * {
  pointer-events: auto;
}

.farmacia .escalaOficial {
	padding: 0.2em 0.5em;
	text-align: center;
	display:flex;
	justify-content: space-between;
	background-color: #0076A1;
	color: #FFF;
	position: absolute;
	top: 1em;
	right: 1em;
	z-index: 99;
	flex-direction: column;
	border-radius: 0.5em:
}
.farmacia .escalaOficial span:last-child {
	display: none;
}
.blocoFarm.cAbertas h2 {
  visibility: hidden;
  padding-bottom: 0;
}




/* mobile exclusive */


@media screen and (max-width: 767px) {


	header form {
		align-items: stretch;
		gap: 0.5em;
	}
	body.stickyHeader {
		padding-top: 9em;
	}
	body.stickyHeader header {
		top: 0;
	}
	body.stickyHeader header a.home .icone {
		opacity: 0.6;
	}
	
	body.stickyHeader header {
		padding: 0.5em 1em;
		display: flex;
		align-items: stretch;
		justify-content: stretch;
	}
	body.stickyHeader header .centrado {
		width: 100%;
		margin: auto;
		align-self: stretch;
		display: flex;
		justify-content: space-between;
	}
	body.stickyHeader header .logo img {
		width: 6.5em;
		transform: translateY(0.3em)
	}
	body.stickyHeader #pesquisa {
		width: 2.7em;
		height: 2.7em;
		padding:0;
		padding-left: 0;
		padding-right: 0;
		cursor: pointer;
		transition: none;
	}
	body.stickyHeader .searchHolder {
		width: auto;
	}
	body.stickyHeader .searchHolder .icone{
		opacity: 0.6;
	}
	body.stickyHeader header form {
		justify-content: end;
	}
	body.stickyHeader header form input::placeholder {
		color: transparent;
	}
	body.stickyHeader header a.home {
		background-color: #E7E7E7;
		display: flex;
		align-items: center;
		justify-content: center;
		aspect-ratio: 1 / 1;
		border-radius: 100%;
		width: 2.7em;
		pointer-events: auto;
	}
	body.stickyHeader .searchHolder a.pesquisa {
		pointer-events: none;
	}
	body.stickyHeader #pesquisa {
		color: transparent;
	}
	body.stickyHeader #pesquisa {
		
	}
	body.stickyHeader #pesquisa:focus ~ #searchResults {
		display: none;
	}
	body.stickyHeader header #searchResults {
		display: none;
	}

	.home .noticias {
		padding: 1em;
		margin-top: 1em;
	}
	.home .distritos ul {
		display: flex;
		flex-direction: column;
		flex-wrap: wrap;
		gap: 0.5em;	
		margin:0;
		padding:0;
		padding: 0 1em;
		gap: 0.3em;
		margin-bottom: 0.3em;
	}
	.home .distritos a {
		display: block;
		font-weight: 300;
		text-align: center;
		text-transform: uppercase;
		background-color: #FFF;
		text-decoration: none;
		padding:0.5em 1em;
		display: block;
		border:1px solid #DFDFDF;
		border-bottom:2px solid #DFDFDF;
		color:#333;
		border-radius: 0.5em;
		
	}
	.home .distritos a:hover, .home .distritos a:active {
		background-color: #CCC;
		border-color: #999;
	}

	.submenu .tituloMenu, .distritosTopo {
		margin: 0em 1em;
		position: relative;
		border-radius: 1.5em;
		border: 1px solid #DFDFDF;
		transition: all 0.4s ease-out, border-radius 0.4s 0.4s;
		background-color: #FFF;
		border-bottom: 3px solid #dfdfdf;
	}
	.submenu .tituloMenu.open {
	}
	.distritosTopo {
		position: relative;
		box-sizing: border-box;
		width: calc(100% - 2em);
		margin: 1em;
	}
	.submenu .tituloMenu h2.underline, 
	.distritosTopo h3 {
		font-size: 1rem;
		text-transform: none;
		padding: 0.7em 1.5em;
		margin: 0;
		font-weight: 400;
		text-transform: uppercase;
		z-index: 1;
		transition: all 0.4s ease-out;
		border: 0;
	}
	.submenu .tituloMenu h2.underline::after,
	.distritosTopo h3::after {
		content: "";
		position: absolute;
		top: 0.7em;
		right: 0.7em;
		width: 1.2em;
		height: 1.2em;
		z-index: 10;
		background-image: url('../imgs/icones/arrow-right.svg');
		background-size: 1.2em 1.2em;
		transform: rotate(90deg);
		transition: all 0.2s ease-out;
	}
	.submenu .tituloMenu.open h2.underline::after,
	.distritosTopo.open h3::after {
		transform: rotate(270deg);
	}
	.submenu .tituloMenu.open h2 {
	}
	.submenu .tituloMenu h2.underline span {
		position: static;
		color: #000;
	}
	.submenu .tituloMenu ul, .distritosTopo .lists {
		box-sizing: border-box;
		margin: 0;
		padding: 0;
		max-height: 0;
		opacity: 0;
		margin-top: -1.5em;
		transition: all 0.4s ease-out;
		z-index: 0;
		padding-bottom: 1.5em;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 0em;
		padding-left: 0.5em;
		padding-right: 0.5em;
		overflow: hidden;
		pointer-events: none;
	}
	.submenu .tituloMenu.open ul,
	.distritosTopo.open .lists {
		padding-bottom: 0.5em;
		padding-top: 2em;
		max-height: 100em;
		opacity: 1;
		pointer-events: all;
	}
	.submenu .tituloMenu ul li, 
	.distritosTopo .lists ul li {
		display: flex;
		align-items: stretch;
		justify-content: stretch;
		border-bottom: 1px solid #DDD;

	}
	.submenu .tituloMenu ul li a, 
	.distritosTopo .lists ul li a {
		display: block;
		width: 100%;
		text-decoration: none;
		color:#333;
		font-weight: 300;
		padding:0.5em 1em;
		text-align: left;
		text-transform: none;
		position: relative;
	}
	.submenu .tituloMenu ul li:last-child, 
	.distritosTopo .lists ul:last-child li:last-child {
		border: 0;
	}

	.distritosTopo .lists ul {
		margin: 0;
		padding: 0;
	}


	.primeiraLinha picture, 
	.primeiraLinha img, 
	.primeiraLinha .col3 {
		display: none;
	}

	.primeiraLinha .col12 {
		align-self: stretch;
	}

	.caixa {
	}
	#conteudoFarmacias {
		padding: 0 1em;
		width: calc(100% - 2em);
	}
	.menuConteudo {
		gap: 1em;
	}
	.menuConteudo .caixa h2 {
		font-family: "Roboto Condensed", Roboto, sans-serif;
		font-weight: 400;
		text-transform: uppercase;
		text-align: center;
	}
	.menuConteudo .submenu {
		flex-direction: column;
	}
	.escolherConcelho .conteudo {
		text-align: center;
	}
	.escolherConcelho .conteudo ul {
		flex-direction: column;
		gap: 0.3em;
	}
	.escolherConcelho .conteudo ul li {
		margin-right: 0;
	}


	/* farmacias */
	.farmacia {
	}
	.farmacia.destaque .logoFarmacia {
		width:6em;
		height:4.16em;
		top:0.8em;
		left:0.8em;
	}
	.farmacia.destaque .mapa {
		background-position: 0;
		height: 6.7em;
	}
	.farmacia.destaque .mapa img {
		background-position: 35%;
	}
	section .farmacia .horario, .cHA .farmacia.normal .horario {
		display: flex;
		flex-direction: row;
		padding:0.2em 0.7em;
		align-items: center;
		background-color: #FFF;
		border-radius: 0;
		border:0;
		border-top:1px solid #EEE;
		order: 9;
		align-self: stretch;
	}
	section .farmacia .horario h4 {
		display: block;
		position: relative;
		background-color: transparent;
		border: 0;
	}
	section .farmacia .horario h4::after {
		top: 0.3em;
		bottom: 0;
		background-position: center center;
	}
	section .farmacia .horario .linha {
		text-align: right;
		flex-grow: 1;
	}

	.farmacia .dados, .farmacia.destaque .dados {
		font-size: 0.95em;
		display: flex;
		flex-direction: column;
		padding: 0; 
		align-items: stretch;
		justify-content: stretch;
		gap: 0.8em;
	}
	.farmacia .dados .nomeMorada {
		
	}
	.farmacia .dados .nomeMorada, .farmacia.destaque .dados .servicos {
		padding-left: 1em;
		padding-right: 0.5em;
	}
	.farmacia .dados .nomeMorada {
		padding-top: 1em;
	}
	.farmacia .telefoneHorario a.telefone {
		display: none;
	}
	.farmacia.normal .mapa {
		display: none;
	}
	.farmacia.normal .dados {
		align-items: stretch;
	}
	.farmacia.normal .dados .nomeMorada .morada {
		font-size: 0.8em;
	}
	section .farmacia .botoes {
		margin: 0;
		font-size: 1.2rem;
		position: absolute;
		top:2.0em;
		right:0em;
		box-shadow: 0 0 1em #FFF;
		z-index: 10;
	}
	section .farmacia .botoes li {
		display: none;
	}
	section .farmacia.destaque .botoes li.telefone {
		display: block;
		margin: 0.5em;
	}
	section .farmacia a.telefone span {
		display: none;
	}
	section .farmacia a.telefone {
		padding:0.94em 1.5em;
		height:1em;
	}
	section .farmacia a.telefone::before {
		left:50%;
		top:50%;
		width:1.2em;
		height:1.2em;
		margin-left:-0.6em;
		margin-top:-0.6em;
	}
	
	
	section .farmacia .morada {
		padding-top:0;
		margin-top:0.5em;
		/*white-space: nowrap;*/
		overflow: hidden;
		text-overflow: ellipsis;
		height:1.3em;
		line-height: 1.3em;
		width:95%;
		margin-bottom: 0;
	}

	section .farmacia h3 {
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		padding-right:1em;
	}
	section .farmacia h3 {
		background-image: url(../imgs/icones/arrow-right.svg);
		background-position: right;
		background-repeat: no-repeat;
		background-size: 1.2em;
	}

	.farmacia.destaque .servicos {
		border:0;
		background-color: transparent;
		white-space: nowrap;
		overflow:hidden;
		margin:0;
		padding:0;
		padding-top:0.3em;
		margin-right:-1em;
		position:relative;
		font-size: 0.85em;
		margin-bottom:-0.5em;
	}
	.servicos::after {
		content:"";
		position: absolute;
		top:0;
		right:0;
		bottom:0;
		width:2em;
		background:linear-gradient(to right, rgba(255,255,255, 0), rgba(255,255,255,1) 80%)
	}
	.farmacia.destaque .servicos h4 {
		display: none;
	}
	.farmacia .servicos ul {
		margin-top: 0;
	}
	.servicos li {
		display:inline-block;
		background-color:#F0F0F0;
		padding:0.5em 0.8em;
		border-radius:10em;
		text-transform: uppercase;
		padding-left:1.5em;
	}
	.farmacia .servicos ul li {
		background-position: 0.3em;
	}
	.servicos ul li.s11, 
	.servicos ul li.s145, 
	.servicos ul li.s170, 
	.servicos ul li.s64, 
	.servicos ul li.s139, 
	.servicos ul li.s70,
	.servicos ul li.s7,
	.servicos ul li.s23,
	.servicos ul li.s34,
	.servicos ul li.s245,
	.servicos ul li.s263,
	.servicos ul li.s264,
	.servicos ul li.s265,
	.servicos ul li.s267,
	.servicos ul li.s270,
	.servicos ul li.s271,
	.servicos ul li.s272 {
		padding-left:3em;
		background-position: 1em;
	}

	.cHA .farmacia.normal {
		margin-top: 0.5em;
	}
	.cHA .farmacia.normal .nomeMorada .morada {
		display: none;
	}
	.cHA .farmacia.normal .nomeMorada {
		font-size: 0.9em;
		padding-top: 0.5em;
	}
	.cHA .farmacia.normal .dados {
		gap: 0.5em;
	}
	

	.farmacia.fechada::after {
		pointer-events: none;
		font-size:0.9em;
	}
	.farmacia.destaque.fechada::after {
		top:auto;
		bottom:0.2em;
		left:0.8em;
		margin-top:0;
		margin-left:0;
		padding:0.5em;
		width:auto;
		font-size:0.85em;
	}
	.farmacia.normal.fechada::after, .cHA .farmacia.normal.fechada::after {
		margin:0;
		top:auto;
		right:0.8em;
		bottom:0.2em;
		left:0.8em;
		font-size: 0.9em;
		padding:0.2em 0.5em;
		width:auto;
	}
	.farmacia .alerta {
		z-index: 1;
	}
	
	.farmacia a.mobile {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		color: transparent;
		z-index: 1;
	}
	/*
	
	.cHA .farmacia.normal {
		font-size:0.9em;
	}
	.cHA .farmacia.normal .dados {
		padding: 0.8em 1em;
	}
	
	.farmacia.destaque .botoes {
		display: none;
	}
	
	.farmacia.destaque .dados {
	}
	.farmacia.destaque .dados .telefone {
		float: right;
		margin-left:0.5em;
	}
	
	.farmacia h3 a {
		display: block;
	}


*/
	/* servicos covid em nao destacadas */

	.farmacia.individual h1 {
		margin: 0;
		text-align: center;
		text-transform: uppercase;
	}
	.farmacia.individual .dados {
		padding: 1em;
		padding-top: 0;
	}
	.farmacia.individual .moradaRegime {
		flex-direction: column;
		align-items: stretch;
		justify-content: stretch;
	}
	.farmacia.individual .morada {
		margin-top:1em;
	}
	.farmacia.individual .botoes {
		position: static;
		flex-direction: column;
		margin:0;
		padding:0;
		margin-top:1em;
	}
	.farmacia.individual .botoes li {
		margin:0;
		margin-bottom:0.5em;
	}
	.farmacia.individual .botoes a {
		font-size:1em;
	}
	.farmacia.individual.destacada .dados {
		padding-top:1em;
	}
	.farmacia.individual.naodestacada .dados {
		padding-top:2em;
	}

	.farmacia.individual .logoFarmacia {
		position: static;
		width: 13em;
		height: 9em;
		text-align: center;
		margin-top: -4em;
		max-width: 100%;
		margin: auto;
		margin-top: -4em;
		margin-bottom:1em;
	}
	.farmacia.individual .horario {
		margin:0;
		flex-basis: auto;
		align-self: stretch;
	}
	.farmacia.individual .director {
		position: static;
		padding: 0;
	}

	.farmacia.individual .servicos {
	}
	.farmacia.individual .servicos ul li {
		background-color: transparent;
		width:100%;
		text-transform: none;
		padding-top:0;
		padding-bottom: 0;
		margin:0;
		margin: 0em -1em;
		padding-left:2.5em;
		background-position: 1em;
	}
	.farmacia.individual h1 {
		font-family: "Roboto Condensed";
		font-size: 1.6em;
		font-weight: 400;
		width:auto;
		border-bottom: 0;
	}


	.farmacia.individual.naodestacada .morada {
		margin:0;
		display: flex;
		flex-direction: column;
		gap: 1em;
	}
	.farmacia.individual.naodestacada .telefone {
		
	}
	.farmacia.individual.naodestacada .horario {
		margin-top: 0;
	}
	
	.farmacia.individual.naodestacada .botoes {
		margin-bottom: 1em;
	}
	.farmacia.individual.naodestacada .morada p:first-child {
		margin-bottom: 1em;
	}
	.farmacia.individual {
		margin-top:1.5em;
	}
	.farmacia.individual .botao.todas {
		margin: 1em;
		margin-top: 0;
	}
	.farmacia.individual .director {
		margin-bottom: 0;
	}


	/* estaticas */
	.estaticas.menuConteudo .col2 {
		background-color: #FFF;
		padding: 2em;
		margin: 0;
	}
	.estaticas.menuConteudo .col2 h1 {
		margin-top: 0;
	}
	

	/* modal */
	#modal .close {
		top: 2.2em;
		right: 0em;
		z-index: 200;
		display: flex;
		align-items: center;
		justify-content: center;
		color: #000;
		background-color: #FFF;
		aspect-ratio: 1 / 1;
		width: 1.2em;
		text-align: center;
		border-radius: 100%;
		border: 2px solid #000;
		transition: all 0.2s 1s linear;
		opacity: 0;
		transform: scale(0.5);
	}
	#modal.on .close {
		opacity: 1;
		transform: scale(1);
	}
	.formulario input[type="checkbox"] + label { 
		display: inline;
		margin-bottom: 0;
	}
	.formulario input.botao  {
		margin-top: 1em;
	}



	#conteudoEstaticas .botao.primario {
		display: inline-block;
		margin-top: 1em;
	}


	#formWidget .linha {
		flex-direction: column;
	}


	.cols3 {
		flex-direction: column;
		gap: 0;
	}

	.cols3 ul {
		margin: 0;
	}


	.home .noticias {
		margin-top: 2em;
		padding: 1em;
	}
	.noticias .cols {
		flex-direction: column;
	}
	.news .individual h1 {
		font-size: 1.7em;
		text-transform: none;
		text-align: left;
		border-bottom: 0;
	}
	.news .individual h1 + em {
		display: block;
		margin-bottom: 1em;
	}
	.news .individual.centrado {
		flex-direction: column;
	}

	.container.noticias {
		padding: 1em;
	}

	.desktop {
		display: none;
	}


}



/* desktop exclusive */

@media screen and (min-width: 768px) {

	.centrado {
		max-width:1200px;
		margin:auto;
	}
	.menuConteudo.centrado {
		margin-bottom: 2em;
	}

	.mobile {
		display: none;
	}



	header {
		display: block;
		height:5.5em;
		position: absolute;
		left:0;
		right:0;
		z-index: 101;
		padding: 0em;
	}
	header .centrado {
		position: relative;
		height:100%;
	}
	header .logo {
		position: absolute;
		display: block;
		width:300px;
		top:0;
		left:0em;
		text-align: center;
		transition: all 0.2s ease-out;
		height:100%;
	}
	header .logo img {
		position: absolute;
		margin:auto;
		top:50%;
		left:50%;
		transform: translateX(-50%) translateY(-50%);
	}
	header .logo .branco {
		display: block;
		opacity:1;
	}
	header .logo .cor {
		opacity: 0;
	}


	/* sticky header */

	body.stickyHeader header {
		height:3.5em;
	}
	body.stickyHeader .logo {
		transform: scale(0.8) translateY(0.2em);
	}
	body.stickyHeader .logo .cor {
		opacity: 1;
	}
	body.stickyHeader .logo .branco {
		opacity: 0;
	}

	/* pesquisa */
	header form {
		position: absolute;
		right:0;
		height:100%;
	}
	
	header form input {
		border:2px solid rgba(255,255,255,0.5);
		background-color: rgba(0,0,0,0.1);
		width:13em;
		color:#FFF;
	}
	header form .searchHolder img.icone {
		filter:invert(100);
		opacity: 0.5;
	}
	header form input::placeholder {
		color:rgba(255,255,255, 0.7);
	}
	header form input:focus::placeholder {
		color:rgba(0,0,0, 0.7);
	}
	header form input:hover {
		outline: none;
		border:2px solid rgba(255,255,255,1);
	}
	header form input:hover + img.icone {
		opacity: 1;
	}
	
	header form input:focus, body.stickyHeader header form input:focus {
		background-color: #F0F0F0;
		color:#000;
		border:2px solid rgba(255,255,255,1);
	}
	header form input:focus {
		width:20em;
	}
	header form input:focus + a img.icone {
		opacity:0.8;
		filter: invert(0);
	}
	header form #searchResults .content {
	}
	body.stickyHeader header form input {
		border-color:#DDD;
		background-color: #FFF;
		color:#333;
	}
	body.stickyHeader header form #searchResults .content {
	}
	body.stickyHeader header form input:hover {
		border-color:#BBB;
	}
	body.stickyHeader header form input:hover + img.icone {
		opacity: 0.4;
	}
	body.stickyHeader header form input:focus {
		border-color:#DDD;
	}
	body.stickyHeader header form input::placeholder {
		color:rgba(0,0,0, 0.6);
	}
	body.stickyHeader header form img.icone {
		filter:none;
		opacity: 0.2;
	}
	body.stickyHeader header form input:focus + img.icone {
		opacity: 0.5;
	}
	#searchResults {
		box-shadow: 0 0.4em 0.5em rgba(0,0,0,0.2);
		border: 2px solid #FFF;
	}
	body.stickyHeader #searchResults {
		border: 2px solid #DDD;
	}
	/* home top */
	.home .topo {
		position:relative;
		height:26em;
		padding: 3em;
		padding-bottom: 2em;
		background-color: #999;
		box-shadow: inset 0 0 0.5em rgba(0,0,0,0.1);
		background-size: 100%;
		background-size: cover;
		background-position: center;
		background-attachment: fixed;
		overflow:hidden;
		padding-top:7em;
		box-shadow: inset 0 0 1em rgba(0,0,0,0.3);
	}
	.home .topo img {
		display: block;
	}
	.home .topo > picture {
		position: absolute;
		top:0;
		left:0;
		right:0;
		bottom:0;
	}
	.home .topo .bg {
		position: absolute;
		top:0;
	}
	.home .topo::after {
		content: "";
		position: absolute;
		top:0;
		left:0;
		width:100%;
		height:100%;
		background-color: rgba(0,0,0,0.1);
		background: linear-gradient(rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.1) 50%, rgba(0,0,0,0.1) 100%);
	}
	.home .distritos {
		position:relative;
		box-sizing: border-box;
		display: flex;
		padding-left: 25em;
		padding-top:4em;
		color:#FFF;
		text-align: left;
	}
	.home .distritos img, .home .distritos svg {
		position:absolute;
		top:0;
		left:0;
	}
	.home .distritos a img, .home .distritos a svg {
		transition: all 0.3s ease-out;
		z-index:10;
		opacity: 1;
	}
	.home .distritos a:hover img {
		z-index:100;
		opacity:0.7;
	}
	.home .distritos a:hover {
		fill: #FF0000;
	}
	.home .distritos ul:first-child {
		
	}
	.home .distritos ul {
		width: 12em;
		margin-right:1em;
		z-index: 2;
	}
	.home .distritos li {
		padding:0;
		margin:0;
	}
	.home .distritos a, .home .distritos span {
		display:block;
		text-decoration:none;
		padding:0.8em;
		padding-left:1.2em;
		margin-bottom:0.6em;
		font-size: 0.9em;
	}
	.home .distritos a {
		background-color: rgba(255,255,255, 0.9);
		color:#333;
		font-weight: normal;
		border-left:4px solid transparent;
		transition: all 0.2s ease-out;
		text-transform: uppercase;
	}

	.home .distritos a:hover {
		background-color: rgba(255,255,255, 1);
		color:#000;
		font-weight: bold;
		margin-left:1em;
		border-color: #B7D333;
	}
	.home h1 {
		font-family: "Roboto Condensed";
		display: block;
		position: absolute;
		top:0;
		margin-top:-0.8em;
		text-transform: uppercase;
		font-size: 2em;
		font-weight: 400;
		z-index: 2;
	}
	.home .distritos p {
		position: absolute;
		top:0.4em;
		font-size: 0.9em;
		font-weight: 300;
		z-index: 2;
	}
	.home .cols {
		flex-direction: row;
		margin: 4em auto;
	}

	.home .destaque {
		flex: 1;
		margin-bottom: 0;
	}
	.home .cols .mrec {
		flex: 0 0 300px;
	}

	.scrollToTop {
		display: block;
	}
	

	footer {
		margin-top: 0em;
	}

	footer .col ul {
		gap: 0.3em;
	}
	footer .centrado {
		flex-direction: row;
	}


	footer .sociais ul {
		flex-direction: column;
		gap: 0.5em;
	}
	.sociais ul li a img {
		width:1em;
		height:1em;
		transition: all 0.2s ease-out;
	}
	.sociais ul li a span {
		display: block;
	}
	.sociais ul li a:hover img {
		transform:scale(1.2);
	}


		
	.primeiraLinha {
		display: block;
		padding-top:1em;
		padding-bottom: 1em;
		background-color: #E7E7E7;
		margin-bottom:1em;
		box-shadow: inset 0 0 0.4em rgba(0,0,0,0.2);
		background-repeat: no-repeat;
		background-size: 100%;
		background-size: cover;
		background-position: center -10em;
		background-attachment: fixed;
		position: relative;
		padding-top:6em;
		overflow:hidden;
	}
	.primeiraLinha > picture {
		position: absolute;
		top:0;
		left:0;
		right:0;
		bottom:0;
	}
	.primeiraLinha .bg {
		position: absolute;
		top:0;
	}
	.bg.fit {
		left:0;
		width:100%;
		height:100%;
		object-fit: cover;
		object-position: top;
	}
	.primeiraLinha::after {
		content:"";
		position: absolute;
		top:0;
		left:0;
		right:0;
		bottom:0;
		background-color: rgba(0,0,0,0.0);
		background: linear-gradient(rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.1) 50%, rgba(0,0,0,0.1) 100%);
		z-index: 0;
	}
	.primeiraLinha .centrado.cols {
		margin-bottom: 0;
	}
		
	.distritosTopo {
		position: relative;
		padding:1em;
		padding-left:22%;
		display:flex;
		align-items: center;
		z-index: 2;
	}
	.distritosTopo img {
		position: absolute;
		left:0em;
	}
	.distritosTopo img.mapa {
		width:207px; 
		top:0; 
		opacity:0.8;
	}
	.distritosTopo ul li a img {
		opacity:0;
		transition: all 0.2s linear;
	}
	.distritosTopo ul li a:hover img {
		opacity:1;
	}
	.distritosTopo ul {
		margin:0;
		padding:0;
		list-style: none;
		margin-left:1em;
		width:9.5em;
		box-sizing: border-box;
	}
	.distritosTopo li {
	}
	.distritosTopo a {
		display: block;
		text-decoration: none;
		text-transform: uppercase;
		font-size: 0.8em;
		padding:0.5em;
		margin:0.3em 0;
		border-left: 4px solid transparent;
		background-color: rgba(255,255,255, 0.9);
		color:#333;
		font-weight: normal;
	}
	.distritosTopo a:hover {
		border-color: #B7D333;;
		background-color: rgba(255,255,255, 1);
		font-weight: bold;
		margin-left:1em;
	}
	.distritosTopo a.sel, .distritosTopo a.sel:hover {
		background-color: #FFF;
		font-weight: bold;
		margin:0;
		border-left: 4px solid #B7D333;
	}
	.distritosTopo li span {
		border-bottom: 1px solid transparent;
		padding:0.4em;
		display: block;
		font-size: 0.8em;
	}
	.primeiraLinha .mrec {
	}

	.menuConteudo {
		display: flex;
		flex-direction: row;
	}



	.submenu ul {
		display: flex;
		flex-direction: column;
		padding:0;
		margin:0;
		list-style: none;
		padding:0.5em 0;
		background-color: #FFF;
		box-shadow: 0 2px 0 rgba(0,0,0,0.1);
		border-bottom-left-radius: 0.5em;
		border-bottom-right-radius: 0.5em;
	}
	.submenu ul li a {
		display: block;
		padding:0.3em 1.3em;
		text-decoration: none;
		color:#000;
	}
	.submenu ul li a:hover {
		background-color: rgba(0,0,0,0.05);
	}
	.submenu ul li a.sel {
		background-color: rgba(0,0,0,0.1);
	}

	.underline {
		color:#000;
		font-weight: 500;
		text-transform: uppercase;
		margin:0;
		padding:0.5em;
		padding-left:1.3rem;
		border-top-left-radius: 0.5em;
		border-top-right-radius: 0.5em;
		border-bottom: 2px solid #b7d333;
		font-size: 1.3em;
		font-family: "Roboto Condensed";
		position: relative;
	}
	.underline span {
		font-size: 1.6em;
		position: absolute;
		bottom:-0.26em;
		color:#b7d333;
	}
	
	.caixa .underline {
		padding-top:1.7em;
		border-color:#666;
	}
	.caixa .underline span {
		color:#666;
	}
	.caixa .conteudo {
		background-color: #FFF;
		border-bottom: 2px solid #DFDFDF;
		padding:1.5em;
		border-bottom-left-radius: 0.5em;
		border-bottom-right-radius: 0.5em;
	}

	.escolherConcelho .conteudo ul li {
		flex-basis: 48%;
		margin-bottom:1.55%;
	}


	.separadorTipo {
		flex-direction: row;
	}


	/* HA normais */
	.cHA .farmacia.normal {
		margin-top: 0.5em;
	}
	.cHA .farmacia.normal .dados {
		padding:0.8em 1.5em;
	}
	.cHA .farmacia.normal .nomeMorada a {
		display: block;
	}
	.cHA .farmacia.normal .nomeMorada a::after {
		content:"";
		position: absolute;
		width:2em;
		height:100%;
		right:0em;
		top:0;
		text-align: center;
		z-index: 2;
		background-image: url(../imgs/icones/seta-direita.svg);
		background-repeat: no-repeat;
		background-position: center;
		opacity: 0.6;
	}
	.cHA .farmacia.normal .mapa, .cHA .farmacia.normal a.telefone, .cHA .farmacia.normal .morada {
		opacity: 0;
		display: none;
	}
	.cHA .farmacia.normal .horario h4 {
		display: none;
	}
	.cHA .farmacia.normal .horario {
		background-color: transparent;
		padding:0em;
		padding-top:0.2em;
		padding-right:1.3em;
		border:0;
		padding-left:1.5em;
		background-image: url(../imgs/icones/horario.svg);
		background-repeat: no-repeat;
		background-position-y: 0.3em;
	}
	.cHA .farmacia.normal .horario .linha {
		display: inline-block;
		margin-right:0.5em;
		padding-right:0.5em;
		border-right:1px dotted #CCC;
	}
	.cHA .farmacia.normal .horario .linha:last-child {
		margin-right: 0;
		border-right: 0;
		padding-right: 0;
	}
	.cHA .farmacia.normal .alerta {
		top:0.6em;
		z-index: 2;
	}
	.cHA .farmacia.normal.fechada::after {
		padding:0.2em;
		top:1.6em;
	}


	.farmacia a.mobile {
		display: none;
	}



	.home .noticias {
		margin: auto;
	}

	.noticias .cols {
		flex-direction: row;
		flex-wrap: wrap;
		gap: var(--gap);
		margin: 0;
		margin-bottom: 2em;
		margin-top: 2em;
	}
	.home .noticias {
		padding-top: 2em;
	}

	.noticias .cols a {
		flex: 1 1 calc(100% / 3 - calc(var(--gap)/3*2));
	}

	.readMargin {
		padding-right: 30%;
	}

	.menuConteudo .col2 {
		flex-grow: 1
	}
	.farmacia.individual.naodestacada .dados {
		display: flex;
		gap: 1em;
	}
	.farmacia.individual.naodestacada .morada {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		align-items: top;
	}

	.farmacia.individual.naodestacada .morada p {
		margin-top: 0;
	}
	.farmacia.individual.naodestacada .botoes {
		position: static;
		display: flex;
		flex-direction: column;
		margin:0;
		gap: 0.5em;
	}

	.farmacia.individual.naodestacada .botoes li {
		margin: 0;
		flex-grow: 0;
	}

	.farmacia.individual.naodestacada .horarioBotoes {
		display: flex;
		gap: 2em;
		
	}
	.farmacia.individual.naodestacada .telefone {
		
	}

}

@media only screen and (min-width: 768px) and (max-width: 1100px) {
	.home .distritos a {
		font-size: 0.8em;
	}
}