
body {
  font-family: 'Noto Sans', sans-serif;
}

.figure-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  width: 100%; /* Ensures figures take full width */
  max-width: 1000px; /* Allow larger display */
}

.figure-img {
  width: 100%;
  max-width: 900px; /* Increased from 600px to 900px */
  height: auto;
  border-radius: 8px;
  box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.2);
}

.caption {
  font-size: 1rem; /* Reduce slightly if too large */
  max-width: 900px; /* Matches image size */
  text-align: center;
  padding: 5px;
}



/* Responsive Design: Stacks images on smaller screens */
@media (max-width: 1024px) {
  .figure-img {
    max-width: 100%; /* Adjust to screen size */
  }

  .caption {
    font-size: 0.9rem; /* Slightly smaller captions on mobile */
  }
}



.blue { color: blue; font-style: italic; }
.green { color: forestgreen; font-style: italic; }
.red { color: red; font-style: italic; }

.footer .icon-link {
    font-size: 25px;
    color: #000;
}

.link-block a {
    margin-top: 5px;
    margin-bottom: 5px;
}

.dnerf {
  font-variant: small-caps;
}


.teaser .hero-body {
  padding-top: 0;
  padding-bottom: 3rem;
}

.teaser {
  font-family: 'Google Sans', sans-serif;
}


.publication-title {
}

.publication-banner {
  max-height: parent;

}

.publication-banner video {
  position: relative;
  left: auto;
  top: auto;
  transform: none;
  object-fit: fit;
}

.publication-header .hero-body {
}

.publication-title {
    font-family: 'Google Sans', sans-serif;
}

.publication-authors {
    font-family: 'Google Sans', sans-serif;
}

.publication-venue {
    color: #555;
    width: fit-content;
    font-weight: bold;
}

.publication-awards {
    color: #ff3860;
    width: fit-content;
    font-weight: bolder;
}

.publication-authors {
}

.publication-authors a {
   color: hsl(204, 86%, 53%) !important;
}

.publication-authors a:hover {
    text-decoration: underline;
}

.author-block {
  display: inline-block;
}

.publication-banner img {
}

.publication-authors {
  /*color: #4286f4;*/
}

.publication-video {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;

    overflow: hidden;
    border-radius: 10px !important;
}

.publication-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.publication-body img {
}

.results-carousel {
  overflow: hidden;
}

.results-carousel .item {
  margin: 5px;
  overflow: hidden;
  padding: 20px;
  font-size: 0;
}

.results-carousel video {
  margin: 0;
}

.slider-pagination .slider-page {
  background: #000000;
}

.eql-cntrb { 
  font-size: smaller;
}
.videos video {
  display: none;
  width: 100%; /* Makes the video take up the full width of its container */
  height: auto; /* Maintains the aspect ratio of the video */
  margin: auto; /* Centers the video horizontally */
}

.videos video:first-child {
  display: block;
}

.video-carousel {
  width: 80%; /* Carousel takes 80% of the container's width */
  max-width: none; /* No maximum width constraint */
  text-align: center; /* Centers the navigation buttons */
  margin: auto; /* Centers the carousel in the available space */
}

.video-carousel video {
  width: 100%; /* Each video takes 100% of the carousel's width */
  height: auto; /* Adjust height automatically to maintain aspect ratio */
  max-width: 1500px; /* Increased maximum width for each video */
}

.video-carousel button {
  background-color: #000203; /* Blue background */
  color: white; /* White text */
  border: none; /* No border */
  padding: 10px 20px; /* Top/bottom and left/right padding */
  margin: 5px; /* Margin around buttons */
  border-radius: 5px; /* Rounded corners */
  font-size: 16px; /* Text size */
  cursor: pointer; /* Cursor changes to pointer on hover */
  transition: background-color 0.3s; /* Smooth transition for hover effect */
}

.video-carousel button:hover {
  background-color: #878789; /* Darker blue on hover */
}

.video-carousel i {
  margin-right: 5px; /* Space between icon and text */
}
.videos video {
  margin-bottom: 10px; /* Adjust the value as needed */
}
.video-item {
  position: relative;
}

.video-container {
  display: flex;
  flex-direction: column;
}

.videos {
  margin-bottom: 10px; /* Space between videos and caption */
}

.caption {
  text-align: center;
  background-color: whitesmoke; /* White background for the textbox */
  color: black; /* Black text color */
  padding: 10px;
  margin-bottom: 10px; /* Space between caption and navigation buttons */
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.2); /* Optional: adds a subtle shadow for depth */
  border-radius: 5px; /* Optional: rounds the corners of the textbox */
  max-width: 80%; /* Limits the width of the caption box */
  margin-left: auto; /* These two lines center the box */
  margin-right: auto;
  box-sizing: border-box; /* Ensures padding doesn't affect overall width */
}
/* Hover Effects for Images */
img:hover {
  opacity: 0.8;
  transition: opacity 0.3s;
}
.results-carousel .item {
  display: flex;
  justify-content: center;
  align-items: center;
}

.results-carousel .item video {
  width: 100%; /* Ensures video takes the full width of its container */
  height: auto; /* Maintains the aspect ratio of the video */
}
button, .button, a.button {
  background-color:rgb(10, 10, 10);
  color: #ffffff;
  border: none;
  padding: 10px 20px;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
  border-radius: 5px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}
.img-zoom {
  transition: transform 0.25s ease;
}

.img-zoom:hover {
  transform: scale(3.0);
}

.img-zoom:active {
  transform: scale(1.5);
}
table {
  margin-left: auto;
  margin-right: auto;
}
.number {
  display: block;
  border-radius: 0;
  font-size: 3.5em;
  color: #100f0f; 
}

.text {
  /* display: block; */
  border-radius: 0;
  font-size: 1.5em;
  color: #100f0f; 
}
.video-navigation {
  display: flex;
  justify-content: center;
  gap: 20px; /* Adjust the value as needed */
}
.videos {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
}

.video-wrapper {
  position: relative;
  width: 300px; /* Adjust as needed */
  height: 200px; /* Adjust as needed */
}

.videos {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
}

video {
  width: 100%;
  height: auto;
}

.video-navigation {
  margin-top: 20px;
}