
    html, body {
    margin: 0;
    height: 100%;
  	}
  	
  body {
	height: 100vh;
    overflow-y: hidden;
	overflow-x:hidden;	
	 font-family:"Montserrat", sans-serif;
    padding: 0;
	background-image: url("images/fundo2.png");
	background-repeat: repeat;
	justify-content: center;	
  }

:root {
    --cell-size: 100px;
    --gap: 17px;
    --pad-top: 35px;
}

/* Base gallery styling */
.gallery {
    display: grid;
    gap: var(--gap);
    padding: var(--pad-top) 10px 10px 10px;
    margin: 30px auto 0;
    overflow-x: auto;
    width: max-content;
    max-width: 1180px;
    box-sizing: border-box;
    align-items: start;
	box-shadow: 0 4px 10px rgba(0,0,0,0.3);
}

.gallery img {
    width: var(--cell-size);
    height: var(--cell-size);
    object-fit: cover;
    display: block;
}

/* One row */
.gallery.one-row {
    grid-auto-flow: column;
    grid-auto-columns: var(--cell-size);
    grid-auto-rows: var(--cell-size);
    grid-template-rows: var(--cell-size);
    grid-template-columns: none;
}

.gallery.two-rows {
    grid-auto-flow: initial;
    grid-template-rows: repeat(2, var(--cell-size));
    grid-template-columns: repeat(10, var(--cell-size)); /* fixed size columns */
    gap: var(--gap);

    width: max-content;       /* allow horizontal scroll if needed */
    overflow-x: auto;         /* scroll when container too narrow */
}

/* media queries remain mostly the same */
@media (max-width: 600px) {
    :root { --cell-size: 100px; --gap: 15px; }
    .gallery { width: 100%; max-width: 100%; }
}

@media (min-width: 601px) and (max-width: 768px) {
    :root { --cell-size: 100px; --gap: 16px; }
    .gallery { max-width: 700px; }
}

@media (min-width: 769px) and (max-width: 1024px) {
    .gallery { max-width: 900px; }
}

/*    .gallery {
	display: grid;
	grid-template-columns: repeat(10, 100px);
	grid-template-rows:100px; 
	grid-gap: 17px;
	padding: 35px 10px 10px 10px;
	overflow-x: auto;
	margin-left:auto;
	margin-right: auto;
	margin-top: 30px;
	width:1160px;
	box-shadow: 0 4px 10px rgba(0,0,0,0.3);
	
	@media all and (max-width: 1100px) 
	{
    grid-template-columns: repeat(20, 100px);
	width:390px;
	}
}*/
   .gallery a {
    display: block;
    overflow: hidden;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.3);
    transition: transform 0.3s, box-shadow 0.3s;
}

  .gallery a:hover {
    transform: scale(1.03);
    box-shadow: 0 4px 10px rgba(0,0,0,0.5);
  }

  .gallery img {
     width: 100px;
    height: 100px;       
	min-height: 80px; 
    object-fit: cover;
    display: block;
  } 
  
  .nbMapa {
	display: flex;  
	position: relative;
	justify-self: center;
	margin-left:auto;
	margin-right: auto;
	/* overflow-y: auto; 
	overflow-x: hidden; */
	 width: 410px;
	height:auto;
	padding-top: 10px;
	padding-bottom: 5px;
 }

	.back {
	position: relative;
	 overflow-y: scroll; 
	overflow-x: hidden; 
	box-shadow: 5px 5px 10px 2px rgba(0, 0, 0, 0.5);
	height: 500px;
	}
	/* Hide scrollbar for Chrome, Safari and Opera */
	.back::-webkit-scrollbar {
    display: none;
	} 
	/* Hide scrollbar for IE, Edge and Firefox */
 	.back {
		-ms-overflow-style: none;  /* IE and Edge */
		scrollbar-width: none;  /* Firefox */
	} 
 
   .amapa {
	position:relative; /* <— makes imgPointer’s coordinates relative to this box  */
	width: 410px;
	height:678px; 
	background-image: url('images/sydney and nb tracks.jpg');
	background-position: top;
	background-repeat: no-repeat;
	box-shadow: 5px 5px 10px 2px rgba(0, 0, 0, 0.5);
 }

    /*background: url('https://picsum.photos/id/1074/800/800') center/cover no-repeat;*/
 
    #imgHiker {
    position: absolute;
    width: 50px;
    height: auto;
    opacity: 0;
    pointer-events: none;
    transition:
      top 0.5s ease,
      left 0.5s ease,
      transform 0.5s ease,
      opacity 0.3s ease;
  }
