body {
  background-color: #eee;
 
  font-weight: 700;
}
* {
  box-sizing: border-box;
}
button {
  background-color: #04AA6D;
  color: white;
  padding: 14px 20px;
  margin: 0px 0;
  border: none;
  cursor: pointer;
  width: 100%;
}

button:hover {
  opacity: 0.8;
}
.datacontac
{
	 float: center;
  width: 100%;
  padding: 0 20px;
	text-align: center;
	color: black;
}
.datacontac img
{
  margin: 5px;
}
.menu {
  float: left;
  width: 20%;
  text-align: center;
}

.menu a {
  background-color: #e5e5e5;
  padding: 8px;
  margin-top: 7px;
  display: block;
  width: 100%;
  color: black;
}

.main {
  float: center;
  width: 100%;
  padding: 0 5px;
	text-align: center;
}

.right {
  background-color: #e5e5e5;
  float: left;
  width: 20%;
  padding: 15px;
  margin-top: 7px;
  text-align: center;
}

@media only screen and (max-width: 620px) {
  /* For mobile phones: */
  .menu, .main, .right {
    width: 100%;
  }
}
	input[type=text], input[type=password] {
  width: 100%;
  padding: 12px 20px;
  margin: 8px 0;
  display: inline-block;
  border: 1px solid #ccc;
  box-sizing: border-box;
}

/* Set a style for all buttons */
button {
  background-color: #04AA6D;
  color: white;
  padding: 14px 20px;
  margin: 8px 0;
  border: none;
  cursor: pointer;
  width: 100%;
}

button:hover {
  opacity: 0.8;
}

/* Extra styles for the cancel button */
.cancelbtn {
  width: auto;
  padding: 10px 18px;
  background-color: #f44336;
}

/* Center the image and position the close button */
.imgcontainer {
  text-align: center;
  margin: 24px 0 12px 0;
  position: relative;
}

img.avatar {
  width: 40%;
  border-radius: 50%;
}

.container {
  padding: 16px;
}

span.psw {
  float: right;
  padding-top: 16px;
}

/* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 2; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: hidden; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
  padding-top: 60px;
}

/* Modal Content/Box */
.modal-content {
  background-color: #fefefe;
  margin: 5% auto 15% auto; /* 5% from the top, 15% from the bottom and centered */
  border: 1px solid #888;
  width: 80%; /* Could be more or less, depending on screen size */
}

/* The Close Button (x) */
.close {
  position: absolute;
  right: 25px;
  top: 0;
  color: #000;
  font-size: 35px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: red;
  cursor: pointer;
}

/* Add Zoom Animation */
.animate {
  -webkit-animation: animatezoom 0.6s;
  animation: animatezoom 0.6s
}

@-webkit-keyframes animatezoom {
  from {-webkit-transform: scale(0)} 
  to {-webkit-transform: scale(1)}
}
  
@keyframes animatezoom {
  from {transform: scale(0)} 
  to {transform: scale(1)}
}

/* Change styles for span and cancel button on extra small screens */
@media screen and (max-width: 300px) {
  span.psw {
     display: block;
     float: none;
  }
  .cancelbtn {
     width: 100%;
  }
}
#gallery {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  width: 90vw;
  margin: 1px auto;
}

figure {
  margin: 2px;
  padding: 0px;
  position: relative;
cursor:pointer;
}

figure img {
  width: 100%;
}

#gallery img {
  filter: hue-rotate(10);
  padding: 0px;
  border: 3px solid #fff;
  box-shadow: 0px 0px 3px #ccc;
  z-index: -1;
  position: relative;
  width: 100%;
  box-sizing: border-box;
}

.colorturn {
  filter: hue-rotate(330deg) saturate(0.8);
}

figcaption {
  background-color: rgba(255, 255, 255, 0.8);
  width: 100%;
  text-align: center;
  color: #5e423f;
  z-index: 1;
  padding: 9px 0px 11px 0px;
  font-size: 2vw;
  /*position: absolute;*/
  bottom: 6px;
}
@media screen and (max-width: 750px) {
  figcaption {
    font-size: 3vw;
  }
  #gallery {
    grid-template-columns: repeat(3, 1fr);
    width: 90vw;
  }
}
@media screen and (max-width: 600px) {
  figcaption {
    font-size: 3vw;
  }
  #gallery {
    grid-template-columns: repeat(2, 1fr);;
    width: 100%;
  }
}

.heart::before {
  font-family: "FontAwesome";
  content: "\f004";
  top: 0.4em;
  left: 0.5em;
  color: #fff;
  z-index: 1000;
  font-size: 2vw;
  position: absolute;
  opacity: 0;
  transform: scale(0);
  animation: animat 4.5s ease-in-out forwards;
}

.dark::before {
  color: #5e423f;
}

@keyframes animat {
  0% {
    opacity: 0;
    transform: scale(0);
  }

  10% {
    opacity: 1;
    transform: scale(1.2);
  }

  20% {
    opacity: 1;
    transform: scale(1);
  }
  
  90% {
    opacity: 1;
    transform: scale(1);
  }
  100% {
    opacity: 0;
    transform: scale(0);
  }
}
