html, body {
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  font-family: "Poppins", sans-serif;
  background-color: #fde0dc; /* Light pinkish-red background */
  color: #000000; /* Black text */
}

header {
  background-color: #d32f2f; /* Chinese Red background */
  color: #ffffff; /* White text */
  padding: 20px 0;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

header .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  text-align: center;
}

header h1 {
  margin: 0;
  font-family: "Jost", sans-serif;
  font-weight: 500;
  font-size: 3rem;
  color: #ffffff; /* White title */
}

header h2 {
  margin: 0;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-size: 1.5rem;
  color: #f8bbd0; /* Light pink for subtitle */
}

main {
  max-width: 1200px;
  margin: 20px auto;
  padding: 0 20px;
}

.timeline {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  padding: 25px 0;
}

.timeline::after {
  content: '';
  position: absolute;
  width: 8px;
  background-color: #d32f2f; /* Chinese Red line */
  top: 0;
  bottom: 0;
  left: 50%;
  margin-left: -4px;
}

.timeline-container {
  position: relative;
  width: 50%;
  padding: 20px; /* Increased padding */
  box-sizing: border-box;
}

.timeline-container::after {
  content: '';
  position: absolute;
  width: 20px;
  height: 20px;
  background-color: #ffffff; /* White dot */
  border: 3px solid #d32f2f; /* Chinese Red border */
  border-radius: 50%;
  top: 70px;
  z-index: 1;
}

.left {
  left: 0;
  text-align: left; /* Align text to the left */
}

.right {
  left: 50%;
  text-align: right; /* Align text to the right */
}

.left::after {
  right: -13px;
}

.right::after {
  left: -13px;
}

.content {
  padding: 20px;
  background-color: #ffffff; /* White background for content */
  border-radius: 6px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Default shadow */
  position: relative;
  margin-bottom: 40px; /* Added margin for spacing between entries */
  margin-left: 20px; /* Margin on the left side */
  margin-right: 20px; /* Margin on the right side */
  padding-top: 20px; /* Adjust padding for entries without ribbons */
  transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth animation */
}

.content.has-ribbon {
  padding-top: 40px; /* Add space for ribbon */
}

.content:hover {
  transform: translateY(-5px); /* Move slightly up on hover */
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1); /* Larger shadow on hover */
}

.content h2 {
  margin: 0;
  padding-top: 10px;
  font-family: "Jost", sans-serif;
  font-weight: 500;
  font-size: 2rem;
  color: #d32f2f; /* Chinese Red for section headings */
  margin-bottom: 20px; /* Added margin below headings */
}

.content p {
  font-size: 1.2rem;
  margin: 0; /* Remove default margin */
}

.content a {
  text-decoration: none;
  color: #c62828; /* Dark Chinese Red for links */
}

.content a:hover {
  color: #b71c1c; /* Darker Chinese Red for links on hover */
  transform: translateY(-3px); /* Move the link slightly up */
  text-decoration: none; /* No underline */
}

.back-home {
  text-align: center;
  padding: 20px;
  margin-top: 40px;
}

.back-home a {
  font-family: "Poppins", sans-serif;
  font-size: 1.5rem;
  color: #c62828; /* Dark Chinese Red for link */
  text-decoration: none;
}

.back-home a:hover {
  color: #b71c1c; /* Darker Chinese Red for 'Back to Home' link on hover */
  transform: translateY(-3px); /* Move the link slightly up */
  text-decoration: none; /* No underline */
}

.ribbon {
  position: absolute;
  width: 160px; /* Width of the box */
  height: 40px; /* Height of the box */
  background-color: #d32f2f; /* Chinese Red background */
  color: white; /* White text */
  text-align: center;
  line-height: 40px; /* Center the text vertically */
  font-weight: bold;
  top: 0; /* Align to the top */
  left: 0px; /* Move closer to the left edge */
  z-index: 2;
  border-radius: 4px; /* Optional: rounded corners */
}

.right .ribbon {
  left: auto;
  right: 0; /* Move closer to the right edge */
}

.warning-label {
  background-color: #d32f2f; /* Chinese Red background */
  color: #ffffff; /* White text */
  padding: 1vh; /* Vertical padding */
  border-radius: 8px; /* Rounded corners */
  text-align: center; /* Center text */
  position: fixed; /* Fixed position */
  top: 10px; /* Adjust top position */
  left: 50%; /* Center horizontally */
  transform: translateX(-50%); /* Center adjustment */
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); /* Shadow for better visibility */
  z-index: 1000; /* Ensure it stays on top */
}