html {
    margin:    0 auto;
    max-width: 1300px;
}

body {
  margin: 0;
  padding: 0;
  font-family: 'Rubik';font-size: 22px;
  background-color: #fbf7f8;
}

.welcome {
  align-items: center;
  justify-content: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-color: #fbf7f8;
  margin: 0;
  margin-bottom: -10px;
  padding: 0;
}

.welcome h1 {
  text-align: center;
  color: #31304d;
  line-height: 1.5;
  font-weight: bold;
}

.welcome h2 {
  text-align: center;
  color: #31304d;
  font-size: 2rem;
  line-height: 1.0;
}

.welcome h3 {
  text-align: center;
  color: #31304d;
  font-size: 1.5rem;
  line-height: 1.0;
}

.welcome p {
  font-size: 3rem;
  font-weight: normal;
  margin-top: 0.5rem;
  font-weight: bold;
}

.section {
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  background-color: #ef4849;
  color: #fbf7f8;
}

.section h1 {
  text-align: center;
  line-height: 1.0;
  color: #ef4849;
}

.section:nth-child(even) {
  background-color: #31304d;
  color: #fbf7f8;
}

.text-container {
  text-align: center;
}

.text-container-left {
  text-align: left;
  line-height: 1.0;  
  margin-left: 10%;
  margin-right: 10%;
}

.text-container-left ul {
  line-height: 1.2;  
  margin-left: 5%;
  margin-right: 5%;
}

.image-container-logo {
  display: block;
}

.image-container-logo img {
  width: 90%;
  margin: auto;
}

.image-container {
  text-align: center;
  align-items: center;
  justify-content: center;
}

.image-container img {
  width: 80%;
  height: auto;
  vertical-align: bottom
 }

 .image-container video {
  width: 80%;
  height: auto;
}

.footer {
  align-items: center;
  justify-content: center;
  background-color: #fbf7f8;
  color:  #31304d;
  font-size: 2rem;
}

.footer p {
  text-align: center;
  font-size: 1.5rem;
  font-weight: normal;
  margin-top: 0.5rem;
  font-weight: bold;
}

.btn {
  background-color: #993f51;
  color:  #fbf7f8;
  border: none;
  padding: 12px 30px;
  cursor: pointer;
  font-size: 20px;
}

.btn:hover {
  background-color: #ef4849;
}


.image-container-grid {
  display: flex;
  text-align: center;
  align-items: center;
  justify-content: center;  
  margin-left: 5%;
  margin-right: 5%;
}

.image-container-grid img {
  flex: 100%;
  width: 50%;
  margin: 4%;
  height: auto;
  border-radius: 4px;
  outline: 5px solid #31304d;
 }

.inline-img {
    height: 2em; /* Matches the height of the current text font */
    vertical-align: middle; /* Keeps it centered with the text line */
    margin: 0 4px; /* Optional: adds a little space like a real word */
  }


  /* Unvisited link */
a:link {
  color: #993f51;
  text-decoration: none; /* Removes the default underline */
}

/* Visited link */
a:visited {
  color: #993f51;
}

/* Focused link (accessibility) */
a:focus {
  outline: 2px solid #ef4849;
}

/* Mouse over link */
a:hover {
  color: #ef4849;
  text-decoration: underline;
}

/* Selected/clicked link */
a:active {
  color: #ef4849; /* Red highlight when clicked */
}

.full-width-video {
  width: 100%;
  height: auto;
  display: block; /* Removes unwanted bottom whitespace */
  object-fit: cover; /* Optional: ensures it fills the area if height is fixed */
}

.video-container {
  position: relative;
  display: inline-block;
}

.overlay-btn {
  position: absolute;
  top: 20px;
  left: 20px;  
  background: #31304d;
  color: white;
  border: none;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  cursor: pointer;
  font-size: 20px;
  z-index: 10; /* Ensures the button stays on top of the video */
}


.slider-container {
  width: 100%;
  position: relative;
  overflow: hidden; /* Hides images that are not active */
}
.slides {
  display: flex;
  transition: transform 0.5s ease-in-out; /* Smooth transition animation */
}
.slides img {
  width: 100%; /* Each image takes 100% of the horizontal space */
  height: auto;
  flex-shrink: 0; /* Prevents images from squishing */
}
/* Basic Button Styles */
.prev, .next {
  position: absolute; top: 50%; transform: translateY(-50%);
  background: #31304d; color: white; border: none; padding: 10px; cursor: pointer;
}
.next { right: 0; }


.dots-container {
  position: absolute;
  bottom: 15px;
  width: 100%;
  text-align: center;
}

.dot {
  cursor: pointer;
  height: 12px;
  width: 12px;
  margin: 0 5px;
  background-color: #31304d;
  border-radius: 50%;
  display: inline-block;
  transition: background-color 0.3s ease;
}

.dot.active, .dot:hover {
  background-color: #ef4849;
}
