body.mainpage, body.about-page, body.subpage{
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    background-color:#F9F5E8;
    overflow: hidden;
  }

  .background-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('./images/paper.gif'); /* Adjust path */
    background-size: cover;
    background-repeat: repeat;
    background-attachment: fixed;
    z-index: -1; /* Place it behind all other content */
    opacity: 0.1; /* Reduce intensity */
    pointer-events: none; /* Ensure it doesn't block interactions */  
  }
  
  
  /* Canvas Styling */
  canvas {
    display: block;
    width: 100vw;
    height: 100vh;
    position: absolute;
    top: -3%;
    z-index: 0;
  }

 
  /* Fade-In */
  @keyframes fadeIn {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  
  /* Fade-Out */
  @keyframes fadeOut {
    from {
      opacity: 1;
    }
    to {
      opacity: 0;
    }
  }
  
  /* Brand Logo */
  #brand-logo {
    position: absolute;
    top: 5%;
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    animation: fadeIn 2s ease 0.5s forwards;
    z-index: 100; 
  }
  
  #brand-logo img {
    width: 120px;
    cursor: pointer;
  }
  
  /* General Styling for Bubbles */
  .bubble {
    position: absolute;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 10px; /* Add padding to provide space around the text */
    color: #000000;
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 0.9rem;
    font-weight: bold;
    cursor: pointer;
    z-index: 10;
    animation: float 4s infinite ease-in-out;
  
    /* Glassmorphism Style */
    background: rgba(0, 0, 0, 0.1); 
    backdrop-filter: blur(8px); /* Blur effect */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); /* Subtle shadow */
    border: 1px solid rgba(255, 255, 255, 0.3); /* Soft border */
  
    /* Smooth Hover Effect */
    transition: background-color 0.3s ease, transform 0.3s ease;
  }
  
  /* Keep bubbles circular with consistent padding */
  .bubble::before {
    content: '';
    display: block;
    padding-bottom: 100%; /* Ensures the width-to-height ratio remains 1:1 */
  }
  
  
  /* Hover Colors for Each Bubble */
  #bubble1:hover {
    background-color:#B3C6DB; /* Fox */
    color: #3e2c25; /* Deep brown text */
  }
  
  #bubble2:hover {
    background-color: #B4D7BC; /* Julep */
    color: #2d3b2e; /* Dark green text */
  }
  
  #bubble3:hover {
    background-color: #E1515B; /* In Love */
    color: #3b3245; /* Deep purple text */
  }
  
  #bubble4:hover {
    background-color: #0A230F; /* Cape */
    color: #7caeda; /* Chocolate brown text */
  }
  
  #bubble5:hover {
    background-color: #6C5A72; /* MEMOIRS */
    color: #dfb6ed; /* Deep red-brown text */
  }
  
  #bubble6:hover {
    background-color:#F8D699; /* Waffle */
    color: #3c3c52; /* Deep slate text */
  }
  
  #bubble7:hover {
    background-color:#C7BE83; /* EXPLOSION */
    color: #4f3e2c; /* Coffee brown text */
  }
  
  /* Example Bubble Sizes and Positions */
  #bubble1 {
    top: 20%;
    left: 10%;
    width: 140px;
  }
  
  #bubble2 {
    top: 45%;
    left: 5%;
    width: 100px;
  }
  
  #bubble3 {
    top: 20%;
    left: 70%;
    width: 160px;
  }
  
  #bubble4 {
    top: 50%;
    left: 20%;
    width: 170px;
  }
  
  #bubble5 {
    top: 47%;
    left: 80%;
    width: 150px;
  }
  
  #bubble6 {
    top: 80%;
    left: 10%;
    width: 120px;
  }
  
  #bubble7 {
    top: 70%;
    left: 70%;
    width: 200px;
  }
  
  
  /* Initial State for Fade-In */
  #canvas, .bubble {
    opacity: 0; /* Initially hidden */
  }
  
  /* Fade-In Animation Keyframes */
  @keyframes fadeIn {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  
  /* Canvas Fade-In */
  #canvas {
    animation: fadeIn 2s ease 0.5s forwards; /* Fade in after 5 seconds */
  }
  
  /* Bubble Fade-In */
  .bubble {
    animation: fadeIn 2s ease 7s forwards; /* Fade in after 10 seconds */
  }
  
  
  /* Responsive Design for Medium Screens (Tablets) */
  @media screen and (max-width: 768px) {
    .bubble {
      font-size: 0.7rem;
    }
  
    #bubble1, #bubble2, #bubble3, #bubble4, #bubble5, #bubble6, #bubble7 {
      width: 70px;
      height: 70px; /* Ensures circles maintain shape */
    }
  
    body.about-page .container h1 {
      font-size: 2.5rem;
      text-align: center;
    }
  
    body.about-page .content {
      padding: 20px;
    }
  
    body.about-page .content p {
      font-size: 1rem;
      line-height: 1.5;
    }
  }
  
  @media screen and (max-width: 480px) {
    .bubble {
      font-size: 0.6rem;
    }
  
    /* Bubbles Avoiding the Center */
    #bubble1 {
      top: 15%; /* Near the top-left corner */
      left: 5%;
      width: 80px;
      height: 80px;
    }
  
    #bubble2 {
      top: 40%; /* Lower-left corner */
      left: 10%;
      width: 80px;
      height: 80px;
    }
  
    #bubble3 {
      top: 20%; /* Near the top-right corner */
      left: 65%;
      width: 80px;
      height: 80px;
    }
  
    #bubble4 {
      top: 75%; /* Lower middle-right corner */
      left: 65%;
      width: 80px;
      height: 80px;
    }
  
    #bubble5 {
      top: 40%; /* Upper middle-right */
      left: 75%;
      width: 80px;
      height: 80px;
    }
  
    #bubble6 {
      top: 70%; /* Lower middle-left corner */
      left: 5%;
      width: 80px;
      height: 80px;
    }
  
    #bubble7 {
      top: 85%; /* Top-middle right */
      left: 40%;
      width: 80px;
      height: 80px;
    }
  
  
    body.about-page .container h1 {
      font-size: 2rem;
      text-align: center;
      margin-bottom: 10px;
    }
  
    body.about-page .content {
      padding: 15px;
    }
  
    body.about-page .content p {
      font-size: 0.9rem;
      line-height: 1.4;
    }
  
  }


/* Navigation Container */
.dog-ear-nav {
  position: fixed;
  top: 0;
  width: 100%;
  height: 120px; /* Matches the height of the buttons */
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 100;
}

/* Dog-Ear Buttons */
.dog-ear-button {
  position: absolute;
  top: 0;
  width: 120px; /* Width of the dog-ear */
  height: 120px; /* Height of the dog-ear */
  background: linear-gradient(135deg, #000000, #484848); /* Bookmark gradient */
  clip-path: polygon(0 0, 100% 0, 0 100%); /* Triangle shape */
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden; /* Prevent text overflow */
  opacity: 0; /* Initially hidden */ 
}

body.mainpage .dog-ear-button {
  animation: fadeInDogEar 2s ease 2s forwards; /* Delay for main page */
}

body.subpage .dog-ear-button {
  opacity: 1; /* Immediately visible for subpage */
}

.dog-ear-button.right {
  right: 0;
  clip-path: polygon(100% 0, 0 0, 100% 100%); /* Flip triangle for the right side */
}

/* Text Inside Dog-Ear Buttons */
.dog-ear-text-left {
  position: absolute;
  transform: rotate(-45deg); /* Align with the diagonal */
  top: 25%;
  left: 10%;
  font-family: Georgia, 'Times New Roman', Times, serif;
  font-size: 14px;
  font-weight: bold;
  color: #ffffff; /* Visible text */
}
.dog-ear-text-right {
  position: absolute;
  transform: rotate(45deg); /* Align with the diagonal */
  top: 25%;
  left: 50%;
  font-family: Georgia, 'Times New Roman', Times, serif;
  font-size: 14px;
  font-weight: bold;
  color: white; /* Visible text */
}



/* Hover Effects */
.dog-ear-button:hover {
  background: linear-gradient(135deg, #E1515B, #3D566C); /* Reverse gradient on hover */
}

@keyframes fadeInDogEar {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* Center Logo */
.dog-ear-logo {
  position: absolute;
  top: 55%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0; /* Initially hidden */
  animation: fadeInDogEar 2s ease 2s forwards; 
}

.dog-ear-logo-sub {
  position: absolute;
  top: 55%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0; /* Initially hidden */
}

@keyframes fadeInDogEar {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.dog-ear-logo img {
  height: 150px; /* Adjust logo size */
  width: auto;
  filter: grayscale(100%); /* Apply black-and-white filter */
  transition: transform 0.3s ease-in-out, filter 0.3s ease-in-out;
}
.dog-ear-logo-sub img {
  height: 150px; /* Adjust logo size */
  width: auto;
  filter: grayscale(100%); /* Apply black-and-white filter */
  transition: transform 0.3s ease-in-out, filter 0.3s ease-in-out;
}
body.subpage .dog-ear-logo-sub {
  opacity: 1; /* Immediately visible for subpage */
}


.dog-ear-logo img:hover {
  transform: scale(1.1); /* Slight zoom effect on hover */
  filter: grayscale(0%); /* Remove black-and-white filter */
}
.dog-ear-logo-sub img:hover {
  transform: scale(1.1); /* Slight zoom effect on hover */
  filter: grayscale(0%); /* Remove black-and-white filter */
}

/* Subpage Specific Styling */

.rive-container {
  position: relative;
  margin: 20px auto;
  max-width: 400px;
  height: 400px;
  z-index: 10;
}

.button-container {
  text-align: center;
  margin: 20px auto;
  display: flex;
  flex-direction: row; /* Stack buttons vertically */
  gap: 10px; /* Space between buttons */
  justify-content: center;
  z-index:10;
  position:relative;
}


@keyframes fadeInbtn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.download-btn, .submit-btn {
  padding: 10px 10px;
  font-size: 16px;
  font-family: Georgia, 'Times New Roman', Times, serif;
  color: #fff;
  background-color: #000000;
  border: none;
  cursor: pointer;
  transition: background-color 0.3s ease;
  margin: 0 auto; /* Center horizontally */
  text-decoration: none;
  opacity: 0;
  animation: fadeInbtn 2s ease 9s forwards; 
}

.download-btn:hover {
  background-color: #EE7180;
  text-decoration: none;
}
.submit-btn:hover {
  background-color: #EE7180;
  text-decoration: none;
}

.description {
  text-align: left; /* Keep text aligned to the left */
  max-width: 800px;
  margin: 20px auto; /* Center the container horizontally */
  font-family: Georgia, 'Times New Roman', Times, serif;
  font-size: 1rem;
  line-height: 1.6;
  color: #333;
  z-index:10;
  position:relative;
}



.rive-container {
  position: relative;
  margin: 0 auto;
  width: 50vw; /* 50% of the viewport width */
  height: 50vh; /* 50% of the viewport height */
  display: flex;
  justify-content: center;
  align-items: flex-start; /* Align to the top center */
  margin-top: 20px; /* Spacing from top of the page */
}

.rive-container-sub {
  position: relative;
  margin: 0 auto;
  width: 40vw; /* 50% of the viewport width */
  height: 70vh; /* 50% of the viewport height */
  display: flex;
  justify-content: center;
  align-items: flex-start; /* Align to the top center */
  margin-top: 20px; /* Spacing from top of the page */
}

#riveCanvas {
  display: block;
  width: 100%;
  height: 100%;
}

#riveCanvas1 {
  display: block;
  width: 100%;
  height: 100%;
}

/* Submission Form */
.submission-form-container {
  width: 800px;
  margin: auto;
  padding: 20px;
  background-color: #000000;
  color: white;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  font-family: Georgia, 'Times New Roman', Times, serif;
  animation: float 4s ease-in-out infinite; 
  position: absolute;
  top: 15%;
  left: 25%;
}

@keyframes float {
  0% {
    transform: translateY(0); /* Start at initial position */
  }
  50% {
    transform: translateY(-10px); /* Move up slightly */
  }
  100% {
    transform: translateY(0); /* Return to initial position */
  }
}



.form-group {
  margin-bottom: 15px;
  font-family: Georgia, 'Times New Roman', Times, serif;

}

.form-group label {
  display: block;
  font-size: 14px;
  font-family: Georgia, 'Times New Roman', Times, serif;
  color: #ffffff;
  margin-bottom: 5px;
}

/* Input fields alignment */
.form-group input, .form-group textarea {
  width: calc(100% - 20px); /* Ensure consistent width with padding */
  box-sizing: border-box; /* Include padding and border in width */
  padding: 10px;
  border: 1px solid #CCCCCC;
  font-size: 14px;
  color: #333333;
  font-family: Georgia, 'Times New Roman', Times, serif;

}

.form-group textarea {
  resize: none;
  font-family: Georgia, 'Times New Roman', Times, serif;

}

.submit-btn-sub {
  display: block;
  width: 10%;
  padding: 10px;
  font-size: 16px;
  color: black;
  border: none;
  cursor: pointer;
  background: white;
  background-size: 200% 200%; /* For smoother animation */
  transition: transform 0.3s ease;
  animation: gradientAnimation 3s ease infinite; /* Infinite gradient animation */
  text-decoration: none;
  font-family: Georgia, 'Times New Roman', Times, serif;

}

.submit-btn-sub:hover {
  transform: scale(1.05); /* Slight enlarge on hover */
}

/* Gradient Animation Keyframes */
@keyframes gradientAnimation {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

/* Dropdown Styling */
select {
  width: calc(100% - 20px);
  padding: 10px;
  border: 1px solid #CCCCCC;
  font-size: 14px;
  color: #333333;
  box-sizing: border-box;
  font-family: Georgia, 'Times New Roman', Times, serif;
}


/* Header Section */
header {
  width: 100%;
  text-align: center;
  margin-bottom: 20px;
  position: relative;
}


/* Main Section */
.about-container {
  background: black;
  background-size: 400% 400%;
  padding: 20px 20px 20px; /* Extra padding for buttons */
  text-align: center;
  max-width: 800px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
  margin: 0 auto;
  position: relative;
  transition: background-position 0.3s ease-in-out; /* Smooth hover animation */
  margin: 150px auto 0;
  animation: floating-animation 4s infinite ease-in-out; /* Always floating */
}

/* Floating Animation Keyframes */
@keyframes floating-animation {
  0% {
    transform: translateY(0); /* Default position */
  }
  50% {
    transform: translateY(-10px); /* Move up */
  }
  100% {
    transform: translateY(0); /* Return to original position */
  }
}


.about-text {
  font-size: 1.0rem;
  color: #fff;
  line-height: 1.6;
}

/* Button Container */
.button-container-about {
  margin-top: 20px;
  display: flex;
  gap: 15px;
  justify-content: center;
  animation: floating-animation 4s infinite ease-in-out; /* Always floating */
}

/* Buttons */
.btn-about {
  padding: 10px 20px;
  font-size: 1rem;
  color: #fff;
  background-color: #000000;
  text-decoration: none;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  transition: background-color 0.3s, box-shadow 0.3s;
}

.btn-about:hover {
  background-color: #EE7180;
  box-shadow: 0 6px 8px rgba(0, 0, 0, 0.2);
}

.title-h1 {
  text-align: center;
  font-size: 56px;
  font-weight: bold;
  margin: 20px auto;
  font-family: "Palatino Linotype", "Palatino LT STD", "Book Antiqua", Georgia, serif;
  background: linear-gradient(90deg, #EE7180, #3D566C, #EE7180);
  background-size: 200% 200%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: gradientMove 3s ease infinite;
}

@keyframes gradientMove {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}


/* Container for Rive Animation and Button */
.rive-container-intro {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 100vh; /* Full viewport height */
}

/* Memories Button */
.memories-button {
  font-family: Georgia, 'Times New Roman', Times, serif;
  font-size: 1.2rem;
  color: #fff;
  background: #000; /* Solid black background */
  border: none;
  padding: 15px 30px;
  cursor: pointer;
  transition: background 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2); /* Subtle shadow */
  margin-top: 190px; /* Space between canvas and button */
  text-transform: uppercase; /* Optional: Uppercase text */
  letter-spacing: 2px; /* Optional: Spaced-out text */
  opacity: 0; /* Initially hidden */
  animation: fadeIn 1s ease 3.8s forwards; /* Fade in after 5 seconds */
  text-decoration: none;
}

/* Button Hover Effect */
.memories-button:hover {
  background: linear-gradient(90deg, #EE7180, #3D566C); /* Gradient background on hover */
  transform: scale(1.05); /* Slight zoom effect */
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.3); /* Enhanced shadow on hover */
}
