/* Reset some default styles */
body, html {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    overflow: hidden;
}

.background {
    position: relative;
    width: 100%;
    height: 100%;
    background: url('void.png') no-repeat center center;
    background-size: cover;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}

header {
    display: flex;
    flex-direction: column; /* Stack elements vertically */
    align-items: center; /* Center items horizontally */
    text-align: center; /* Center text within the container */
    position: relative; /* Keep positioning relative for child elements */
}

.title-image {
	margin-top: 20px;
    margin-bottom: 10px; /* Add spacing below the logo */
	max-width : 398px;
	max-height : 101px;
}

footer {
    margin-bottom: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.center-image {
    max-width: 403.5px;
    width: 100%;
    height: auto;
    max-height: 267px;
}

* {box-sizing: border-box}

/* Slideshow container */
.slideshow-container {
    position: absolute; /* Position relative to the parent container */
    top: 50%; /* Move to 50% of the parent’s height */
    transform: translateY(-50%); /* Adjust back by 50% of the element’s height to center perfectly */
    max-width: 460px;
    width: 100%;
    margin: auto;
}

/* Hide the images by default */
.mySlides {
  display: none;
}

/* Add round thick black border around slideshow images */
.mySlides img {
  border: 10px solid black; /* Thick black border */
  border-radius: 15px; /* Rounded corners */
  box-sizing: border-box; /* Include the border in the element's dimensions */
}

/* Next & previous buttons */
.prev, .next {
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  margin-top: -22px;
  padding: 16px;
  color: white;
  font-weight: bold;
  font-size: 24px;
  transition: 0.6s ease;
    text-shadow: 
        -2px -2px 2px black, /* Top-left shadow */
         2px -2px 2px black, /* Top-right shadow */
        -2px  2px 2px black, /* Bottom-left shadow */
         2px  2px 2px black; /* Bottom-right shadow */
    background: none; /* No background color */
    border: none; /* No border */
  user-select: none;
}

/* Position the "next button" to the right */
.next {
  right: 0;
  border-radius: 3px 0 0 3px;
}

/* Caption text */
.text {
  color: #f2f2f2;
  font-size: 15px;
  padding: 8px 12px;
  position: absolute;
  bottom: 8px;
  width: 100%;
  text-align: center;
}

/* Number text (1/3 etc) */
.numbertext {
  color: #f2f2f2;
  font-size: 12px;
  padding: 8px 12px;
  position: absolute;
  top: 0;
}

/* The dots/bullets/indicators */
.dot {
  cursor: pointer;
  height: 15px;
  width: 15px;
  margin: 0 2px;
  background-color: #bbb;
  border-radius: 50%;
  display: inline-block;
  transition: background-color 0.6s ease;
}

.active, .dot:hover {
  background-color: #717171;
}

/* Fading animation */
.fade {
  animation-name: fade;
  animation-duration: 1.5s;
}

@keyframes fade {
  from {opacity: .4}
  to {opacity: 1}
}

.social-icons {
    display: flex;
    justify-content: center; /* Center icons horizontally */
    gap: 15px; /* Space between icons */
}


/* Icons Styling */
.social-icons img {
    width: 32px;
    height: 32px;
    transition: transform 0.3s ease, filter 0.3s ease;
}

.social-icons a:hover img {
    transform: scale(1.2); /* Slight zoom effect */
    filter: drop-shadow(-2px 0 red) drop-shadow(2px 0 blue);
}

@keyframes chromaticAberration {
    0% {
        filter: drop-shadow(-2px -2px red) drop-shadow(2px 2px blue);
        transform: scale(1.2);
    }
    25% {
        filter: drop-shadow(2px -2px green) drop-shadow(-2px 2px magenta);
        transform: scale(1.25);
    }
    50% {
        filter: drop-shadow(2px 2px red) drop-shadow(-2px -2px blue);
        transform: scale(1.2);
    }
    75% {
        filter: drop-shadow(-2px 2px green) drop-shadow(2px -2px magenta);
        transform: scale(1.25);
    }
    100% {
        filter: drop-shadow(-2px -2px red) drop-shadow(2px 2px blue);
        transform: scale(1.2);
    }
}

.social-icons a:hover img {
    animation: chromaticAberration 1.5s infinite ease-in-out;
}

.prev:hover, .next:hover {
    animation: chromaticAberration 1s infinite ease-in-out;
}

.email-link {
	font-family: 'Roboto', sans-serif; /* Use Roboto */
	font-weight : bold;
    margin-top: -90px; /* Space between social icons and email link */
    text-align: center; /* Center the email below the icons */
}

.email-link a {
    font-size: 16px;
    color: white; /* Default text color */
    text-decoration: none; /* Remove underline */
    transition: transform 0.3s ease, filter 0.3s ease; /* Smooth hover animation */
}

.email-link a:hover {
    animation: chromaticAberration 1s infinite ease-in-out;
}
