body {
  overflow-x: hidden; /* Prevent the whole page from scrolling */
}
#viewport{
  width: 100vw; /* Viewport width */
  overflow: hidden;
}
#container {
  --button-width: 20vw;
  --page-width: calc(100vw - var(--button-width) - 6vw);
  /* display: grid; */
  /* grid-template-columns: calc(var(--page-width) + 6vw) var(--button-width) var(--button-width) calc(var(--page-width) + 6vw); */
  width: calc(2 * 6vw + 2 * var(--page-width) + 2 * var(--button-width));
  display: flex;
  align-self: flex-start;
  transition: transform 1s ease;
}
.slide {
  transform: translateX(-100vw);
}
.subcontainer{
  --button-width: 20vw;
  --page-width: calc(100vw - var(--button-width) - 6vw);
  width: calc(6vw + var(--page-width) + var(--button-width));
  /* float: left; */
  display: flex;
  align-self: flex-start;
  padding-bottom: 10vh;
}
.page {
  --button-width: 20vw;
  width: calc(100vw - var(--button-width) - 6vw);
  /* padding-right: 20vw; */
  /* margin-right: 384px; */
  display: flex;
  align-self: flex-start;
  /* overflow: auto; */
  min-height: 100vh;
  align-items: flex-start;
  flex-direction: column;
  /* border: 1px solid black; */
  padding-top: 3vh;
}
#homepage {
  margin-left: 6vw;
  padding-right: 5vw;
}
.section {
  margin-top: 50px;
}
.title {
  font-size: 2.5rem;
}
.subtitle {
  font-size: 1.5rem;
  align-self: flex-start;
  margin-top: 22px;
}
.heading {
  font-size: 1.25rem;
  margin-top: 50px;
}
.body-text {
  margin-top: 22px;
  color: var(--dl-color-gray-black);
  font-size: 1rem;
  line-height: 2rem;
}
.subheading {
  margin-top: 22px;
}
#pricing {
  top: 0px;
  right: 0px;
  height: calc(10vh + 100%);
  /* position: fixed; */
  width: 20vw;
  opacity: 0.5;
  background-image: linear-gradient(to right, white ,#B4DCE4);
  /* border: 1px solid black; */
  /* bottom: 0px; */
  /* margin: auto; */
  /* align-self: flex-end; */
  cursor:pointer;
}
#pricing:hover {
  background-image: linear-gradient(to right, white ,#358597); /* A more intense pink */
  /* transform: translateY(-5px); "Raise" the button */
}
#back {
  top: 0px;
  right: 0px;
  height: calc(10vh + 100%);
  /* position: fixed; */
  width: 20vw;
  /*  */
  /* opacity: 0.5; */
  background-image: linear-gradient(to left, white ,#B4DCE4);
  /* border: 1px solid black; */
  /* bottom: 0px; */
  /* margin: auto; */
  /* align-self: flex-end; */
  cursor:pointer;
}
#back:hover {
  background-image: linear-gradient(to left, white ,#358597); /* A more intense pink */
  /* transform: translateY(-5px); "Raise" the button */
}
.button-text {
  position: fixed;
  top: 50%;
  pointer-events: none;
}
#pricing-text{
  right: 8vw;
  opacity: 0.5;
  transition: transform 1s ease;
}
#back-text{
  left: 8vw;
  opacity: 0.5;
  margin-left: 100vw;
  transition: transform 1s ease;
}
table {
  border-collapse: collapse;
  width: 100%;
  margin-top: 2vw;
}
td, th {
  border: 1px solid #dddddd;
  text-align: left;
  padding: 8px;
}
tr:nth-child(even) {
  background-color: #dddddd;
}
.section2 {
  margin-top: 6vh;
}
#contact {
  height: 50px;
  width: 50px;
  border-radius: 50%;
  bottom: 3vw;
  right: 3vw;
  position: fixed;
  padding: 8px;
  /* border: 1px solid black; */
}
img{
  max-height: 100%;
}
#contact-button {
  height: 50px;
  width: 50px;
  border-radius: 50%;
  bottom: 3vw;
  right: 3vw;
  position: fixed;
  box-sizing: border-box;
  /* border: 1px solid black; */
  background-repeat: no-repeat;
  background-size: 0% 100%;
  background-image: linear-gradient(black, black);
  /* transition: all 0.5s linear; */
  cursor:pointer;
}
#contact-button:hover {
  opacity: 0;
  background-size: 100% 100%;
  /* filter: invert(100%); */
  transition: all 0.8s cubic-bezier(0.000, 0.000, 0.230, 1);
}
#contactInfo {
  display: none;
  position: fixed;
  bottom: 80px;
  right: 80px;
  width: fit-content;
  background-color: #f9f9f9;
  color:black;
  padding: 20px;
  /* border: 1px solid #ccc; */
  border-radius: 20px;
  box-shadow: 0 0 50px #ccc;
}
b {
  font-size: 10px;
}
.media-type {
  position: relative;
  /* margin-top: 1vw; */
  width: 100%;
  height: 16rem;
  /* border: 1px solid gray; */
  overflow: hidden;
  margin-top: 0.5rem;
}
/* #shorter{
  width: 100%;
  margin-top: 2vh;
} */
.media-type.show {
  height: auto;
}
.readmore {
  position: absolute;
  height: 1rem;
  width: 100%;
  bottom: 0;
  left: 0;
  margin-top: 10px;
  background-image: linear-gradient(rgba(255, 255, 255, 1), rgba(255, 255, 255, 1));
  color: #2B6B78;
  cursor: pointer;
  /* border: 1px solid gray; */
}
.readmore-gradient {
  position: absolute;
  width: 100%;
  height: 30%;
  bottom: 1rem;
  left: 0;
  background-image: linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
  /* border: 1px solid gray; */
}
.readmore::before {
  content: attr(data-more)
}
.media-type.show .readmore {
  position: relative;
  top: auto;
  display: block;
}
.media-type.show .readmore-gradient {
  display: none;
}
.media-type.show .readmore::before {
  content: attr(data-less)
}
.jobs{
  margin-top: 1vh;
}