/*
Theme Name: WET Center
Description:
Version: 1.0.0
Template: Divi
*/

/* ********
1. navigation
********** */
#main-header {
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1000;
  background: #002a1b;
  background: linear-gradient(0deg, #002a1b 0%, #0c3f2e 80%);
  &.is-hidden {
    opacity: 0;
    -webkit-transform: translate(0, -100px);
    -webkit-transition: -webkit-transform 0.2s, background 0.3s, color 0.3s,
      opacity 0 0.3s;
  }

  &.is-visible {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    -webkit-transition: -webkit-transform 0.2s, background 0.3s, color 0.3s;
  }
  &.et-fixed-header {
    background: #01150e;
    background: linear-gradient(0deg, #012619 0%, #024d32 80%);
  }
  #top-menu {
    a {
      font-size: 18px;
      font-weight: 300;
      padding-bottom: 8px !important;
      &:hover {
        opacity: 1 !important;
        color: #16c64f !important;
      }
    }

    li {
      padding-bottom: 25px;
      &.current_page_item {
        a {
          font-weight: bold;
          border-bottom: 1px solid #fff;
        }
      }
      &.menu-button {
        a {
          background: #54c0e8;
          color: #002a1b;
          border-radius: 100px;
          padding: 8px 14px 4px 14px;
          font-size: 16px;
          font-weight: 400;
          display: inline-block;
          &:hover {
            color: #fff !important;
            background: #2199c6;
          }
        }
      }
    }
  }
}
.mobile_menu_bar.mobile_menu_bar_toggle.a11y-mobile-menu-open {
  &:before {
    content: "\4d";
  }
}
.et_mobile_menu {
  border-color: rgb(22, 198, 79) !important;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.95);
  z-index: 9999;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
  li {
    width: 100%;
    text-align: center;
    padding: 0 !important;
    &.menu-button {
      padding-top: 12px !important;
    }
    a {
      transition: 0.3s;
    }
    &.current_page_item {
      a {
        color: rgb(22, 198, 79);
        border: none !important;
      }
    }
  }
}
.mobile_nav.opened {
  .mobile_menu_bar_toggle {
    z-index: 10001;
  }
  .et_mobile_menu {
    opacity: 1;
    visibility: visible;
  }
}
body.mobile-menu-open {
  overflow: hidden;
}
#mobile_menu {
  overflow: auto;
}

/* ********
2. ajax load more
********** */

/* courses page */
.alm-load-more-btn {
  padding: 8px 20px !important;
  &.done {
    display: none !important;
  }
}
.alm-listing {
  padding: 0 !important;
  margin: 0 !important;
  /* course listing */
  .alm-item.course-listing {
    padding: 14px 22px 14px 14px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.05);
    display: flex;
    gap: 20px;
    @media (max-width: 580px) {
      flex-direction: column;
    }
    h3 {
      color: #fff !important;
      font-size: 20px;
      margin: 0 0 10px;
    }
    img {
      transition: 0.3s;
      position: relative;
      max-width: 280px;
      width: 280px;
      height: 280px;
      border-radius: 8px;
      background: rgba(255, 255, 255, 0.1);
      @media (max-width: 800px) {
        width: 180px;
        height: 180px;
      }
      @media (max-width: 580px) {
        width: 100%;
        max-width: 100%;
        height: auto;
      }
    }
    .content {
      padding: 20px 0 0 0;
      @media (max-width: 800px) {
        padding: 0;
      }
      P {
        padding: 0;
        margin: 0 0 14px;
      }
      .meta {
        color: #16c64f;
        text-transform: uppercase;
        font-weight: 600;
        margin-bottom: 18px;
        p {
          margin: 0 0 2px;
          font-size: 14px;
        }
      }
      .course-button {
        padding: 8px 0;
        .et_pb_button {
          &:after {
          }
        }
      }
    }
  }
  /* campus area */
  .alm-item.campus-area {
    padding: 14px 22px 14px 14px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.05);
    display: flex;
    gap: 20px;
    @media (max-width: 580px) {
      flex-direction: column;
    }
    h3 {
      color: #fff !important;
      font-size: 20px;
      margin: 0 0 10px;

      a {
        color: #fff;
        text-shadow: none !important;
        text-decoration: none !important;
        transition: 0.3s !important;
        &:hover {
          color: #54c0e8 !important;
        }
      }
      &:after {
        display: inline-block;
        content: "&";
        font-family: ETmodules !important;
        font-size: 15px;
        padding: 0 0 0 6px;
        transition: 0.3s;
        position: relative;
      }
      &:hover {
        &:after {
          transform: translateX(2px) translateY(-2px);
          color: #fff !important;
        }
      }
    }
    img {
      transition: 0.3s;
      position: relative;
      max-width: 180px;
      width: 180px;
      aspect-ratio: 16/9;
      border-radius: 8px;
      background: rgba(255, 255, 255, 0.1);
      @media (max-width: 580px) {
        width: 100%;
        max-width: 100%;
        height: auto;
      }
    }
    .content {
      padding: 0;
    }
    P {
      padding: 0;
      margin: 0 0 14px;
    }
    .meta {
      color: #16c64f;
      text-transform: uppercase;
      font-weight: 600;
      margin-bottom: 18px;
      p {
        margin: 0 0 2px;
        font-size: 14px;
      }
    }
    .course-button {
      padding: 8px 0;
      .et_pb_button {
        &:after {
        }
      }
    }
  }
}

/* ********
3. river timeline
********** */
#topography-about {
  right: 0;
  position: absolute;
  top: 0;
}
#page-container {
  overflow: hidden;
}
#river-wrap {
  position: relative;
  z-index: 3;
  #river-timeline {
    position: relative;
    height: 100%;
    min-height: 500px;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    gap: 100px;
    margin-top: -50px;
    z-index: 3;
  }

  /* river */
  .line-left {
    position: absolute;
    bottom: -16vh;
    right: -100px;
    width: 4504px;
    flex: 0 0 4504px;
    height: auto;
    z-index: 3;
    transform: scaleX(-1);
  }
  .line {
    position: absolute;
    bottom: -210px;
    left: 0;
    width: 4504px;
    flex: 0 0 4504px;
    height: auto;
    z-index: 3;
  }
  .line-path {
    width: 4504px;
    flex: 0 0 4504px;
    fill: none;
    stroke: url(#line-stroke);
    stroke-width: 10px;
  }

  /* blurbs */
  .et_pb_code_inner {
    height: 100%;
  }
  .et_pb_blurb {
    flex: 0 0 320px;
    padding: 0;
    position: relative;
    margin-top: 120px;
    /*min-height: 100vh;*/
    opacity: 0;
    &.et_pb_code {
      opacity: 1 !important;
      margin-top: 0 !important;
    }
    &.show {
      opacity: 1;
      &.pointer {
        &.down {
          .et_pb_image_wrap {
            &:before {
              height: 60px;
            }
            &:after {
              top: calc(100% + 58px);
              opacity: 1;
              transition: opacity 0.5s ease;
              transition-delay: 0.75s;
            }
          }
        }
      }
    }
  }
  .et_pb_blurb_content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    width: 84%;
  }

  .et_pb_main_blurb_image {
    order: 2; /* Places the image after the text */
  }

  .et_pb_blurb_container {
    order: 1; /* Places the text before the image */
  }
}

/* ********
4. forms
********** */
.wpcf7-form {
  overflow: hidden;
  .wpcf7-not-valid-tip {
    margin-bottom: 10px;
    line-height: 1;
  }
  fieldset {
    display: flex;
    gap: 10px;
    @media (max-width: 580px) {
      display: block;
      input {
        width: 100%;
      }
    }
  }
  label {
    display: block;
    span.label-text {
      font-size: 0px;
      position: absolute;
      left: -9999px;
    }
  }
  input,
  textarea {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    color: #fff !important;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 4px;
    margin: 0 0 10px;
    padding: 8px;
    transition: 0.3s;
    width: 100%;
    &:hover,
    &:focus {
      background: rgba(255, 255, 255, 0.3);
    }
  }
  input[type="submit"] {
    width: auto;
    border: none;
    border-radius: 100px;
    background: #f05a28;
    color: #fff;
    text-transform: uppercase;
    font-family: "laca-text", arial, sans-serif !important;
    font-weight: 200;
    font-size: 18px;
    padding: 8px 30px 8px 30px;
    transition: 0.3s;
    cursor: pointer;
    &:hover {
      background: #d23400;
    }
  }
  ::placeholder {
    color: rgba(230, 230, 230, 0.8);
  }
}
