


@font-face {
  font-family: "ocr-aregular";
  src: url("font/ocr-aregular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}


.avisoicon {
  position: relative;
left: -17px;
top: -17px;
height: 0px !important;
width: 0px !important;

}
.avisoiconimage{
  position: relative;
height: 20px !important;
width: 20px !important;
}

.avisoiconimage:hover{
  
height: 22px !important;
width: 22px !important;
}


.avisoicon:hover .avisotext{
    visibility: visible !important;

}
.avisotext{ 

  position: fixed;
  display: flex;
 left: 5%;
bottom: 10em;
gap: 5px;
padding: 10px;
    height: auto;
width: auto;
    max-width: 20em;
  background-color: rgb(0, 0, 0);
      border: 1px solid white;
    border-radius: 30px;
  z-index: 1998;
  align-items: center;
    justify-content: center;
  visibility: hidden;
}
.avisotext p{

  align-items: center;
padding: 5px ;
font-size: 10px;
line-height: 12px;
align-items: center;
color: rgb(255, 255, 255);
}
.avisotext .avisotextimage{
 
  position: relative;
height: 20px !important;
width: 20px !important;
}


.shuffle-button{
  bottom: 5em;
    right: 5%;
    float: right;

    padding: 10px;
    line-height: 80%;
    text-align: center;
    justify-content: center;
    z-index: 999;
    font-size: 14px; 
    width: auto;
    text-decoration: none;
    position: fixed;
  
    color: white;
  
    font-family: "ocr-aregular";
backdrop-filter: blur(15px);
    background-color: #0000004d;
    border: 1px solid rgb(255, 255, 255);
    border-radius: 30px;
    box-sizing: border-box;

}

.shuffle-button:hover{

  color: #ffffff;
 cursor: pointer;

}




.freguesias{
 list-style: none;
}

.freguesias button{
  list-style: none;
 /*padding: 1%;*/
}
.titletag{
  margin-bottom: 0%;
  color: rgba(255, 255, 255, 0.432);
  background: rgba(0, 0, 0, 0);
  text-align: left;
  font-family: "ocr-aregular";
  white-space:nowrap;
  font-size: 0.8vw;
  height: 3.1vh;
 margin-left: 2vw; 
    /*   padding: 2% 2% 2% 2%; */
  border: 1px solid rgba(255, 255, 255, 0.432);
  transition: 0.2s ease-out;
  width: 108.4%;
}

button.freguesiatag {

    margin-bottom: 0%;
    white-space: inherit;
    color: rgba(255, 255, 255, 0.432);
    backdrop-filter: blur(15px);
    background: rgba(0, 0, 0, 0);
    text-align: left;
    font-family: "ocr-aregular";
    white-space:nowrap;
    font-size: 14px;
    height: auto;
    border-radius: 30px;
      /*  margin-left: 2.5vw; */
     padding: 2px 5px; 
    border: 1px solid rgba(255, 255, 255, 0.432);
    transition: 0.2s ease-out;
    width: auto;
    z-index: 9;
    box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  
}

button.freguesiatag:hover{
    color: white;
    
    font-style: italic;
    transition: 0.2s ease-in;
    border-left: 2px solid rgb(255, 255, 255);
    border-top: 2px solid rgb(255, 255, 255);
    border-bottom: 2px solid rgb(255, 255, 255);
    border-right: 2px solid rgb(255, 255, 255);;
    z-index: 9;

    box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

button.freguesiatag.active{
  color: white;
  border-left: 2px solid rgb(255, 255, 255);
  border-top: 2px solid rgb(255, 255, 255);
  border-bottom: 2px solid rgb(255, 255, 255);
  border-right: 2px solid rgb(255, 255, 255);;
  z-index: 9;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}


.filterDiv {

    float: left;
    background-color: #000000;
    color: #ffffff;
    line-height: 10px;
    width: calc(25% - 10px); /* 4 per row */
  margin: 5px;
    display: none;
    border: 1px dashed rgb(255, 255, 255);
    border-radius: 10px;
    transition: box-shadow .25s;
    font-weight: 300;
    font-size: 0.8vw;
    padding: 10px;
 
    text-align: left;
   
  }


body {
  font-family: Arial, sans-serif;
  background: #f7f7f7;
  margin: 0;
  padding: 0;
}




.avisoppi{

  position: relative;
  z-index: 50;
  padding: 1% 0%;
  font-size: 12px;
background-color: #000000;
line-height: 14px;
  border: 1px solid white;
  text-decoration: none;
  z-index: 9999;
}
.avisoppi{

  position: relative;
  z-index: 50;
  padding: 1% 0%;
  font-size: 12px;
background-color: #000000;
line-height: 14px;
  border: 1px solid white;
  text-decoration: none;
  z-index: 9999;
}
.avisoppi img{

  height: auto;
max-width: 30px;
  position: absolute;
height: 20px !important;
width: 20px !important;
left: -11px;
bottom: 28px;
}

.avisoiconppi{
  position: absolute;
height: 20px !important;
width: 20px !important;
left: -11px;
bottom: 28px;
}



.container {
  display: flex;
  justify-content: center; /* centers the grid horizontally */
  width: 100%;
}

.grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; /* centers grid items in each row */
  align-content: flex-start;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto; /* centers the grid container */
  box-sizing: border-box;
}
.grid-sizer {
  width: 33.333%;
}



  .filterDiv:hover {
    cursor: move;
    border: 1px solid rgb(255, 255, 255);
    animation: changeBg 0.5s infinite !important;
    background: url(R1.jpeg);
    border-radius: 15px;
  }
  
 
  .filterDiv:hover .avisoiconimage{
  
    border-radius: 0px;
  }
  .filterDiv:hover .avisoiconppi{
  
    border-radius: 0px;
  }
  .filterDiv:hover .imagensprojeto2 {
   
    border-radius: 0px;
  }
  .show {
    display: block;
 
  
    
  }
  



.containerpreloader {
  position: fixed;
  left: 0;
	background: #000000;
	color: #fff;
	width: 100%;
	min-height: 100vh;
	display: flex;
  z-index: 90;
}

.preloader {
	margin: auto;
	width: 10%;
	
	background: rgba(0, 0, 0, 0.1);
	
	position: relative;
}

.preloader:before {
	content: "";
	position: absolute;
	background: rgb(255, 255, 255);
	width: 0;
	height: 2px;
	
	animation: preloader 15s;
}


.cerrar {
	opacity: 0;
	transition: all 10s;
}

@keyframes preloader {
	90% {
		width: 100%;
		opacity: 1;
	}
	100% {
		width: 100%;
		opacity: 0;
	}
}



  .freguesiascontainer{
  width: 80%;
    /* height: 75%; */
    display: flex
;
  
    z-index: 998;
    overflow-x: scroll;
    overflow-y: hidden;
    justify-content: center;
  }

  .filterDiv img{
    width:100%;
    height:100%;
    align-content: center;
    padding: 0%;
    border: 0px solid rgb(255, 255, 255);
    cursor: pointer;

  }

 

 
  .imagensprojeto{
    max-width: 100%;
    max-height:100%;

    align-content: center;
    padding: 0%;
    border: 0px solid rgb(255, 255, 255);
    cursor: pointer;

  }

  .imagensprojeto2{
    max-width: 30%;


    align-content: center;
    padding: 0%;
    border: 0px solid rgb(255, 255, 255);
    cursor: pointer;

  }
  
  
  .imagensprojeto img{
  border: 1px solid white;
  border-radius: 10px;
  line-height: none;

    max-width: 100%;
  }

  .imagensprojeto2 img{
    border: 1px solid white;
      border-radius: 10px;
    line-height: none;
    }
  


  .tagscontainer{

    margin-top: 2vw;
    cursor: pointer;
    display: inline;
    list-style: square;
    text-decoration: none;
    transition: text-decoration 0.25s;
  }

  .filterDiv ul {
    padding-inline-start: 0;
  }
  
  .filterDiv ul li {
    cursor: pointer;
    display: inline;
    list-style: none;
  
    transition: text-decoration 0.25s;
  }
  
  li {
    height: auto;
  }
  
  .container {
      display: flex;
    position: absolute;
top: 25%;
    width: 100%;

    height: auto;
    overflow: visible;
  
  margin: 0 auto;     /* centra */
    justify-content: center;
  }

  
  /* Style the buttons */
  .tagbtn {
    color: rgb(192, 192, 192);
    border: none;
    outline: none;
    padding: 1% 1%;
    background-color: #f1f1f100;
    cursor: pointer;
    line-height: 12px;
    font-weight: 300;
    font-size:10px;
    text-decoration: none;
    text-align: left;
    border: 1px solid rgba(255, 255, 255, 0);
  }
  
  .tagbtn:hover {
    color: rgb(255, 255, 255);
   border: 1px solid white;
   border-radius: 10px;
  font-style: italic;
    
  }
  

  .tagbtn.active {
 
    background-color: #66666600;
    background-color: #f1f1f100;
   
  }
  
  /* Style the buttons */
  .btn {
    border: none;
    outline: none;
    background-color: #f1f1f1;
    cursor: pointer;
  }
  
  .btn:hover {
    background-color: #dddddd00;
   
    transition: 1s ease-out;
  }
  
  .btn.active {
 
    background-color: #66666600;
    color: white;
 
  }
  .btn:active {
 
    background-color: #66666600;
    color: white;
   
  }


.ppicontainer{
       margin: auto;
    padding: 0.5rem;
     width: auto;
    max-width:500px;
    height: 100%;
    display: flex;
    border: 1px solid white;
    flex-direction: column;
    height: auto;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
}

.ppi{
    display: flex
;
    align-items: stretch;
    flex-wrap: nowrap;
    flex-direction: column;
    justify-content: space-between;
}

.informaçaoobra{
width: auto;
    min-width: 50%;
    padding-top: 10px;
    /* height: 100%; */
    display: flex
;
    flex-direction: column;
    justify-content: space-between;
}


.local{
color: rgb(0, 0, 0);

line-height: 100%;
padding: 10px;
margin-bottom: 10px;
border-radius: 10px;
background-color: #ffffff;
}

.freguesiatitle{
  color: rgb(0, 0, 0);
font-size: 14px;
line-height: 16px;


}

.autor{
  color: white;
  font-size: 14px;
  line-height: 16px;
padding-left: 10px;
  padding-bottom: 2%;
  padding-top: 10px;
}
.sub-local{
  color: white;
  font-size: 14px;
  line-height: 16px;
  padding-bottom: 2%;
padding-left: 10px;
}

.data{
  color: white;
  font-size: 14px;
  line-height: 16px;
  padding-bottom: 2%;
padding-left: 10px;
}

.categoria{
  color: white;
  font-size: 14px;
  line-height: 16px;
  padding-bottom: 2%;
padding-left: 10px;
}


.tags{
  color: white;
  font-size: 14px;
  line-height: 16px;
  padding-bottom:5px;
padding-left: 10px;
  padding-right: 2%;
}

.tags ul{
  display: flex !important;
  /* width: 10%; */
  /* cursor: pointer; */
  display: inline;
  list-style: none;
  text-decoration: none;
  padding-top: 5px;
  flex-wrap: wrap;

}
.tags ul li{
height: 2vh !important;
 
 }
/*
.noiseppi{

    position: relative;
    z-index: 50;
    font-size: 2vw;
    background: url(R1.jpeg);
    animation: changeBg 0.5s infinite;
    height: 2.5vw;
    border: 1px solid white;
    text-decoration: none;
}*/


@keyframes changeBg{
   50%  {background: url(R.jpeg);}



}
.localizaçao {
  display: block;
  width: 100%;

}
.localizaçao .textlocalizaçao{
 
  position: relative;
    color: white;
    font-size: 14px;
    line-height: 16px;
    
    padding: 15px 10px 10px;
  
  }


.coment-section{

  display: block;
  color: white;   
  font-size: 10px;
  line-height: 12px;
  padding: 2%;
  border: 1px solid white;
  overflow-y: scroll;
 
  font-weight: lighter;
}
.coment-section2{
  position: relative;
  display: flex;
  color: white;
  font-size: 0.6vw;
  line-height: 100%;
  padding: 2%;
  border: 1px solid white;
}
.comentario{

  color: white;
  font-size: 0.6vw;
  line-height: 100%;
  background-color: #000000;
  border: 1px dashed white;
  width: 95%;
  padding-left: 2%;
}


.sendit{
  color: #000000;
  background-color: white;
  font-size: 0.6vw;
  border: 1px solid white;
  line-height: 100%;
  padding: 1%;
}







.leaflet-container{
  height: 5vw;
}



 #map {

    height: 200px;
    padding: 4%;
    display: block;
    margin-left: auto;
  margin-right:auto;
  border: 1px solid white;
  background-color: #000000;
  border-radius: 20px;
  margin-bottom: 10px;
  
  }

 .sidebar  {
 
    cursor: pointer;
    z-index: 1;
    background: inherit;
    border: none;
    display: block;
    outline: none;
       margin-bottom: 10px;
   color: #000000;
  }
/* Highlight active filter */
.freguesiatag.active {
  background: #222;
  color: #fff;
  border: 1px solid #555;
}

/* Control what’s visible */
.filterDiv {
  display: none;
  opacity: 0;
  transition: opacity 0.3s;
}

.filterDiv.show {
  display: block;
  opacity: 1;
}
.mapbox {
  width: 100%;
  height: 130px;
  border-radius: 12px;

  overflow: visible; /* ✅ allow dragging cursor to move freely */
  position: relative;
  z-index: 10;
}

.leaflet-container {
  cursor: grab !important; /* ✅ show drag hand */
}

.leaflet-container:active {
  cursor: grabbing !important;
}

  .nav-links {
    display: none;
  }
  .nav-links.active {
    display: block;
    animation: fadeIn 0.4s ease-in-out;
  }
  @keyframes fadeIn {
    from { opacity: 0; transform: scale(0.95); }
    to { opacity: 1; transform: scale(1); }
  }

.nav-links {
      transition: ease-in-out 0.5s;
   backdrop-filter: blur(55px);
  display: none;
  opacity: 0;
  transition: opacity 0.3s ease;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  overflow-y: auto;
  background: rgba(0,0,0,0.85);
  z-index: 9999;
}

.nav-links.active {
display: flex;
    opacity: 1;
    align-items: center;
    justify-content: center;
}

  .CloseBTN{
    position: relative;
    color: rgb(0, 0, 0);
    float: right;
    /* right: 5%; */
    font-size: 20px;
    line-height: 14px;
    z-index: 2000;
    cursor: pointer;
    transition: 0.2s ease-in;
  }



.CloseBTN:hover{

  transition: 0.2s ease-in;
font-weight: 900;
}


.tagselected{
  color: white;
  position: fixed;
  margin-left: auto;
  margin-right: auto;
  padding: 1%;
  width: 14%;
  left: 7%;
  bottom: 120px;
  background-color: #000000;
  border: 1px solid white;
  border-radius: 25px;
  text-align: center;
  font-size: 14px;

}


.streetarttag{
  display: none;
}

.artepublicatag{

  display: none;
}
.graffititag{

  display: none;
}

.tagtag{
  display: none;
}

.throw-uptag{
  display: none;
}

.letteringtag{

  display: none;
}

.piecetag{
  display: none;
}
.wildstyletag{
  display: none;
}

.muraltag{

  display: none;
}

.stickertag{
  display: none;
}
.stenciltag{
  display: none;
}

.yarnbombingtag{

  display: none;
}

.postertag{
  display: none;
}

.mosaicotag{

  display: none;
}

.muraltag{
  display: none;

}

.esculturatag{
  display: none;
}

.instalaçõestag{

  display: none;
}

.sociopoliticatag{
  display: none;
}
.espacialtag{
  display: none;
}

.comercialtag{
  display: none;
}
.coletivatag{
  display: none;
}

.individualtag{

  display: none;
}



@media screen and (max-width: 1200px) {



}

@media screen and (max-width: 768px) {

.sub-local, .data, .categoria, .tags, .autor,.localizaçao .textlocalizaçao  {
    padding-left: 0px;
}


.filterDiv {

 width: calc(50% - 10px);

   
  }
.shuffle-button{


  bottom: 8em;
}

.avisotext {
    position: fixed;
    display: flex
;
    left: 5%;
    bottom: 15em;
    gap: 5px;
    padding: 10px;
    height: auto;
 width: auto;
    max-width: 70em;
    background-color: rgb(0, 0, 0);
    border: 1px solid white;
    border-radius: 30px;
    z-index: 1998;
    align-items: center;
    justify-content: center;
 
}
.ppicontainer {
    margin: auto;
    padding: 0.5rem;
    width: auto;
    max-width: 70%;
}
.ppi {
  display: flex
;
    align-items: stretch;
    flex-wrap: nowrap;
    flex-direction: column;
    justify-content: space-between;
}

.imagensprojeto {
    max-width: 100%;
    max-height: 100%;
    align-content: center;
    padding: 0%;
    border: 0px solid rgb(255, 255, 255);
    cursor: pointer;
}
.informaçaoobra{
  width: 100%;
  padding-left: 0px;
  padding-top: 0px;
}
}