/* reset */
* {
  margin: 0;
  padding: 0;
}

#wrapper {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

label {
  cursor: pointer;
}
label:focus {
  outline: none;
}

.menu {
  position: absolute;
  top: 0;
  left: 0;
  background: #fff;
  width: 240px;
  height: 100%;
  transform: translate3d(-240px, 0, 0);
  transition: transform 0.35s;
}
.menu ul {
  height: 100%;
  overflow-y: auto;   /* ativa a rolagem */
  overflow-x: hidden; /* evita barra horizontal */
}
.menu label.menu-toggle {
  position: absolute;
  right: -60px;
  width: 60px;
  height: 60px;
  line-height: 0px;
  display: block;
  padding: 0;
  text-indent: -9999px;
  background: url(https://cdn-icons-png.freepik.com/128/3917/3917024.png) 50% 50%/25px 25px no-repeat;
}
.menu ul li > label {
  background: url(https://cdn4.iconfinder.com/data/icons/ionicons/512/icon-arrow-right-b-128.png) 95% 50%/16px 16px no-repeat;
}
.menu ul li a, .menu ul li label {
  display: block;
  text-align: center;
  padding: 0 20px;
  line-height: 60px;
  text-decoration: none;
  color: #000;
}
.menu ul li a:hover, .menu ul li label:hover {
  color: #666;
}

/* hide inputs */          
.menu-checkbox {
  display: none;
}

/* hide navigation icon for sublabels */    
.menu .menu label.menu-toggle {
  background: none;
}

/* fade in checked menu */    
.menu-checkbox:checked + .menu {
  transform: translate3d(0, 0, 0);
}

/* hover azul com texto branco no menu */
.menu ul li a:hover,
.menu ul li label:hover {
  color: #6ca0dc !important;       /* texto branco */
}

/* botão de fechar vira seta esquerda */
.menu-checkbox:checked + .menu > label.menu-toggle {
  background: #fff url(https://cdn-icons-png.flaticon.com/512/271/271220.png)
    50% 50% / 25px 25px no-repeat;
}

/* for show */
html, body {
  height: 100%;
}

body {
  background: url(wallpaper.png) 100% 100%/cover;
}

p {
  margin-bottom: 15px;
}

#info {
  display: table;
  background: rgba(0, 0, 0, 0.4);
  height: 100%;
  width: 100%;
}
#info #info-content {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  text-transform: uppercase;
  color: #fff;
  font-size: 12px;
}
#info #info-content h1 {
  color: #fff;
  border: 3px solid #fff;
  text-align: center;
  background: rgba(0, 0, 0, 0.1);
  font-size: 22px;
  font-weight: normal;
  padding: 20px;
  margin: 10px;
  display: inline-block;
}
#info #info-content h1 strong {
  display: block;
  font-size: 26px;
}
    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    body {
      font-family: 'Arial', sans-serif;
      color: white;
      text-align: center;
      background: url(assets/img/background.jpg) no-repeat center center fixed;
      background-size: cover;
      backdrop-filter: blur(5px);
    }

    .container {
      display: flex;
      flex-direction: column;
      justify-content: center;
      height: 100vh;
      background-color: rgba(0, 0, 0, 0.5);
    }

    h1 {
      font-size: 60px;
      font-weight: bold;
      letter-spacing: 3px;
    }

    h2 {
      font-size: 30px;
      margin-top: 10px;
      letter-spacing: 5px;
    }

    .progress-container {
      margin: 30px auto;
      width: 300px;
    }

    .progress-bar {
      width: 100%;
      background-color: #ccc;
      border-radius: 5px;
      overflow: hidden;
    }

    .progress-bar-fill {
      width: 0%;
      height: 20px;
      background-color: #6ca0dc;
      transition: width 0.3s ease;
    }

    .progress-labels {
      display: flex;
      justify-content: space-between;
      font-size: 14px;
      margin-top: 5px;
    }

	.logo-em {
	width: 100%;
	max-width: 480px; /* Tamanho máximo desejado */
	height: auto;
	margin: 0 auto;
	display: block;
	}

    .social-icons {
      margin-top: 30px;
    }

    .social-icons a {
	color: white;
	text-decoration: none;
	margin: 0 10px;
	font-size: 20px;
	border: 1px solid white;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	border-radius: 50%;
	display: inline-block;
	transition: background 0.3s;
	}

    .social-icons a:hover {
      background-color: #6ca0dc;
    }

    footer {
      margin-top: 40px;
      font-size: 12px;
      color: #ccc;
    }

    .nav {
      position: absolute;
      top: 20px;
      right: 30px;
      font-size: 14px;
    }

    .nav a {
      color: #aac7f2;
      text-decoration: none;
    }
	
	.top-button {
	background-color: #6ca0dc;
	color: #ffffff;
	padding: 8px 16px;
	border-radius: 5px;
	text-decoration: none;
	font-weight: bold;
	transition: background 0.3s;
	}

	.top-button:hover {
	background-color: #351c75;
	}
	
	/* animação de tremida */
@keyframes shake {
  0% { transform: translate(0, 0); }
  20% { transform: translate(-1px, 1px); }
  40% { transform: translate(1px, -1px); }
  60% { transform: translate(-1px, 1px); }
  80% { transform: translate(1px, -1px); }
  100% { transform: translate(0, 0); }
}

/* quando passar o mouse */
.whatsapp-float:hover {
  animation: shake 0.5s linear infinite;
}