html,
body {
  width: 100dvw;
  height: 100dvh;
  margin: 0;
  padding: 0;
}

.background {
  height: 100%;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-attachment: fixed;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 0px;
  letter-spacing: 2px;
  overflow-x: hidden;
  overflow-y: auto;
}

@font-face {
  font-family: "AlbertProExtraBold";
  src: url("../fonts/FSAlbertProNarrow-ExtraBold.ttf") format("truetype");
}
@font-face {
  font-family: "AlbertRegular";
  src: url("../fonts/FSAlbertPro-Regular.otf") format("truetype");
}
@font-face {
  font-family: "AlbertLight";
  src: url("../fonts/FSAlbertPro-Light.otf") format("truetype");
}

.contenedor {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  background-color: #fff;
  padding: 50px 20px 50px 20px;
}

.centered-imageBtn {
  position: absolute;
  background-size: contain;
  background-position: center center;
  height: auto;
  margin-left: 0.4vw;
  width: 80vw;
  top: 40px;
}

.imgBtn {
  width: 7%;
  height: 100%;
  cursor: pointer;
}

.btnHome {
  position: absolute;
  top: 5%;
  right: 2%;
  height: auto;
  cursor: pointer;
}

p {
  color: #1b1464;
}

ul {
  font: 22pt sans-serif;
  font-size: 15px;
  color: #fff;
  text-align: start;
  font-family: "Kaleko";
  list-style: none;
}

ul li {
  position: relative; /* Posición relativa para el pseudo-elemento */
}

ul li::before {
  content: "•"; /* Punto personalizado */
  color: darkorange; /* Color naranja */
  font-size: 1.5em; /* Tamaño del punto */
  position: absolute; /* Posición absoluta para el punto */
  left: -20px; /* Ajusta la posición del punto */
}

.no-scroll {
  overflow: hidden;
}

.preguntas {
  width: 40%;
  display: flex;
  margin-top: 80px;
  justify-content: center;
}

.preguntas ul {
  gap: 30px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/**
  * Styles for the puzzle
*/

.container-juego {
  padding: 20px;
  background-color: #ffffff;
  border: 5px solid #82a7eb;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  z-index: 2;
  width: auto;
  max-width: 90dvw;
}

#juego {
  border: 1px solid black;
  margin-top: 0px;
  float: left;
  background-color: #82a7eb;
  align-items: center;
  z-index: 2;
  width: auto;
}

/* style for each square in the puzzle */
#juego .puzzleSquare {
  height: 50px;
  width: 50px;
  text-transform: uppercase;
  background-color: #82a7eb;
  border-color: transparent;
  font-size: 1.4em;
  font-family: "AlbertRegular";
  z-index: 2;
}

button::-moz-focus-inner {
  border: 0;
}

.puzzleSquare {
  color: white; /* Cambia el color de las letras a blanco */
  background-color: #000000; /* Si quieres que el fondo sea oscuro para que se vea la letra blanca */
}

/* indicates when a square has been selected */
#juego .selected {
  background-color: orange;
  z-index: 2;
}

/* indicates that the square is part of a word that has been found */
#juego .found {
  background-color: #82a7eb;
  color: white;
  z-index: 2;
}

#juego .solved {
  background-color: purple;
  color: white;
  z-index: 2;
}

/* indicates that all words have been found */
#juego .complete {
  background-color: green;
  z-index: 2;
}

.puzzleSquare.tempSelected {
  background-color: lightgray; /* Color temporal mientras se selecciona */
}

.puzzleSquare.found {
  background-color: initial; /* Color permanente cuando la palabra es encontrada, el color se establecerá en el JS */
}

/**
  * Styles for the word list
  */
#Palabras {
  padding-top: 20px;
  -moz-column-count: 2;
  -moz-column-gap: 20px;
  -webkit-column-count: 2;
  -webkit-column-gap: 20px;
  column-count: 2;
  column-gap: 20px;
  width: 300px;
}

#Palabras ul {
  list-style-type: none;
}

#Palabras li {
  padding: 3px 0;
  font: 1em sans-serif;
}

#Palabras .wordFound {
  text-decoration: line-through;
  color: gray;
}

/**
  * Styles for the button
  */
#solve {
  margin: 180px 30px;
}

.sopa {
  display: flex;
  justify-content: center;
  align-items: start;
  flex-direction: column;
  border-radius: 20px;
  margin-top: 45px;
  height: 30%;
  z-index: 2;
}

.footer {
  position: fixed;
  bottom: 30px;
  left: 0;
  width: 100%;
  background-color: #fff;
  color: #044ed7;
  padding: 10px;
  text-align: center;
  font-size: 1.5rem;
}

.content-footer {
  max-width: 70%;
  margin: 0 auto;
}

.second-footer span {
  display: block;
  margin: 0 auto;
  line-height: 1.5;
  font-family: "AlbertRegular";
}

.title {
  position: absolute;
  top: 15%;
  background-color: #fff;
  width: 120% !important;
  margin-left: -20px;
  padding: 20px 0px 20px 0px;
  z-index: 9999;
}
.title h1 {
  font-family: "AlbertProExtraBold";
  text-align: center;
  margin-right: 200px;
  font-size: 40px;
  line-height: 1.5;
  color: #1d4093;
}

.title2 {
  position: absolute;
  top: 14%;
  background-color: #fff;
  width: 120% !important;
  margin-left: -20px;
  padding: 20px 0px 20px 0px;
}

.title2 h1 {
  font-family: "AlbertProExtraBold";
  text-align: center;
  margin-right: 200px;
  font-size: 50px;
  color: #1d4093;
}

.title2,
.punto1,
.punto2,
.punto3,
.punto4,
.punto5 {
  margin-top: 60px;
  font-family: "AlbertLight";
  font-size: 26px;
  color: #1d4093;
}

.punto1,
.punto2 {
  width: 80%;
  margin-left: -30px;
  border: 2px #1d4093 solid;
  border-radius: 300px;
  padding: 20px 0px 20px 60px;
  text-align: balance;
  line-height: 1.5;
}

.punto3 {
  width: 80%;
  margin-left: -30px;
  border: 2px #8990c7 solid;
  border-radius: 300px;
  padding: 20px 0px 20px 60px;
  text-align: balance;
  line-height: 1.5;
}

.punto4 {
  width: 80%;
  margin-left: -30px;
  border: 2px #db3c46 solid;
  border-radius: 300px;
  padding: 20px 0px 20px 60px;
  text-align: balance;
  line-height: 1.5;
}
.punto5 {
  width: 80%;
  margin-left: -30px;
  border: 2px #f8ab16 solid;
  border-radius: 300px;
  padding: 20px 0px 20px 60px;
  text-align: balance;
  line-height: 1.5;
  margin-bottom: 80px;
}

.popup {
  display: none;
  position: fixed;
  z-index: 9999999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.8);
}

.popup-content {
  width: 100%;
  background-color: white;
}

.bg-transparent {
  background-color: transparent;
}

.blank {
  background-color: #1d4093;
  width: 100%;
  height: 90px;
}

.arrows {
  position: absolute;
  top: 80%;
  margin: 0 auto;
  left: 40%;
}

.arrows2 {
  position: absolute;
  top: 80%;
  margin: 0 auto;
  left: 85%;
}


.rightarrow {
  margin-left: 40px;
}

