/*------------------------------------------ 

            THE ENTIRE PAGE

---------------------------------------------*/

body {
    width: 100%;
    height: auto;
    overflow-x: hidden;
    background-color: var(--white);
}

::selection {
    background: var(--lighterpink); /* WebKit/Blink Browsers */
}

::-moz-selection {
    background: var(--lighterpink); /* Gecko Browsers */
}

html {
    width: 100%;
    height: auto;
    overflow-x: hidden;
    scroll-behavior: smooth;
    scroll-padding-top: 114px;
}

/*------------------------------------------ 

            FONT AND STYLES FORMATTING

---------------------------------------------*/

a {
    color: var(--darkblue);
}

a:hover {
    color: var(--blue);
}

.clearFormatting {
    all: revert;
}

h1 {
    margin: 25px 25px;
    font-size: 40px;
}

h2 {
    margin: 15px 15px;
    font-size: 25px;
}

h1, h2, h3, h4, h5, h6 {
    color: var(--black)
}

p {
    color: var(--black)
}

.subText {
    font-style: italic;
    margin: 15px;
    text-align: center;
}

.innerHeader, .applicationsHeader
{
    width: 100%;
    display: block;
    float: left;
    text-align: center;
}

.iconInHeader {
    padding-right: 20px;
}

.docLinks {
    padding: 15px;
    display: block;
    font-size: 22px;
}

.downloadLinks {
    text-align: center;
}

.downloadLinks .btn {
    color: var(--black);
    border: 1.5px solid var(--verydarkblue);
    text-transform: none;
    font-size: 22px;
    margin: 15px;
}

.downloadLinks .btn:hover {
    background-color: var(--darkblue);
    border: 1.5px solid var(--darkblue);
    color: white;
}

@media (min-width: 768px){
    .col-md-6 {
        max-width: 100%;
    }
}

@media (min-width: 576px){
    .col-sm-6 {
        max-width: 100%;
    }
}

/*------------------------------------------ 

            HEADER

---------------------------------------------*/

.topLeftLogo {
    height: 55px;
    top: 10px;
    left: 10px;
    position: fixed;
    z-index: 10;
}

.header {
    z-index: 20;
    position: fixed;
    height: 75px;
    width: 100%;
    background-color: var(--black);
}

.headerLogoContainer {
    float: left;
    height: 100%;
}

.headerLogoImage {
    height: 90%;
}

@media only screen and (max-width: 300px) {
    .headerLogoImage {
        padding-top: 5px;
        height: 45px;
    }  
}

/*------------------------------------------ 

            NAVIGATION BAR

---------------------------------------------*/

#logo {
    cursor: pointer;
}

.skipToTopSection {
    position: fixed;
    bottom: 15px;
    right: 15px;
    height: 68px;
    width: 68px;
    background-color: var(--verydarkblue);
    border-radius: 50px;
    text-align: center;
    cursor: pointer;
    opacity: 0.5;
}

.skipToTopSection:hover {
    opacity: 1;
}

#skipToTop {
    padding: 5px;
    margin: auto;
    font-size: 38px;
    color: white;
}

.hero_title {
    font-size: 5vw;
    width: fit-content;
    text-align: left;
    margin: auto;
}

.firstHeader {
    display: block;
    float: left;
    /* height: 25%;
    min-height: 150px; */
    width: 100%;
    padding-top: 12%;
    padding-bottom: 12%;
    background-image: url(../img/hero_image.png);
    box-shadow: inset 0 0 0 1000px rgb(0 0 0 / 20%);
}

@media only screen and (min-width: 1300px) {
    .firstHeader {
        padding-top: 10%;
        padding-bottom: 10%;
    }  
}

@media only screen and (max-width: 576px){
    .firstHeader {
        padding-top: 25%;
        padding-bottom: 25%;
    }

    .hero_title {
        font-size: 8vw;
    }
}

.introDescription {
    float: center;
    margin: auto;
    width: 65%;
    /* min-width: 350px; */
}

.introDescription p, .introDescription h1 {
    color: white;
    opacity: 1;
}

.introDescription a {
    color: var(--lightbluegrey);
}

.introDescription a:hover {
    color: white;
}

.navigationSection {
    top: 0px;
    right: 0px;
    position: fixed;
    z-index: 10;
}

.rowFormat:after {
    content: "";
    display: table;
    clear: both;
}

table {
    z-index: 20;
    top: 75px;
    display: block;
    overflow: auto;
    margin-bottom: 65px;
    position: fixed;
    right: 0px;
    height: 75%;
    width: 225px;
}
.tbody {
    width: 100%;
    display: block;
    cursor: pointer;
}

th {
    margin: auto;
    width: 9999px;
    float: center;
}

.navBarRow {
    display: block;
}

.colContainsContent {
    /* float: left; */
    padding-top: 125px;
}
.containsTable {
    height: 100%;
    width: 100%;
}

#iconForSkip {
    padding-top: 0;
    margin-top: 15px;
    margin-right: 15px;

    font-size: 50px;
    color: var(--blue);
    float: right;
    cursor: pointer;
}

#iconForSkip:hover {
    color: var(--white);
}
#contentOfSkip {
    display: none;
    position: fixed;
}
#contentOfSkip.visible {
    display: block;
}

.skipItem {
    font-size: 19px;
    color: var(--white);
    margin: 0px;
}

th:hover .skipItem, .skipItem:hover {
    color: var(--black);
}

tr {
    cursor: pointer;
}

th {
    text-align: right;
    padding: 10px;
    background-color: var(--black);
}

th:hover {
    background-color: white;
}

#naviconholder {
    height: 75px;
    width: 75px;
    float: right;
}

@media only screen and (max-width: 767px){
    .navigationSection.menuOn {
        left: 0px;
        width: 100%;
        height: 100%;
    }
    nav.menuOn {
        padding: 70px 20px;
        width: 100%;
        height: 9999px;
        color: white;
        background-color: var(--black);
    }
    .colContainsContent {
        padding-top: 0px;
    }
    
    #iconForSkip.menuOn {
        margin-top: 15px;
        margin-right: 15px;
    }
    th {
        text-align: center!important;
    }
    table {
        height: calc(100% - 75px);
        width: 100%;
    }
    .skipItem {
        font-size: 22px;
    }
    th {
        padding: 15px;
    }
  }

/*------------------------------------------ 

            BODY OF WEBSITE

---------------------------------------------*/

.body {
    padding-top: 75px;
}

/*------------------------------------------ 

            HERO IMAGE

---------------------------------------------*/

.homeLogoContainingDiv {
    width: 75%;
    /* width: 100%; */
    height: 100%;
    max-height: 500px;
    margin: auto;
    display: block;
    float: left;
}

.homeLogo {
    display: block;
    width: 100%;
    height: 100%;
    max-height: 500px;
    padding-top: 30px;
    padding-bottom: 30px;
    object-fit: contain;
}

@media only screen and (max-width: 576px) {
    .homeLogoContainingDiv, .homeLogo {
        display: none;
    }
}

/*------------------------------------------ 

        SECTION AND LOGOS/CREDITS

---------------------------------------------*/

.creditContainer {
    margin: auto;
    height: 120px;
    width: auto;
    padding: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.creditsRow {
    padding: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.creditImage {
    max-height: 100px;
    max-width: 250px;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
}

@media only screen and (max-width: 576px) {
    .creditImage {
        padding-top: 15px;
        padding-bottom: 15px;
    }
}

.gatewayText {
    padding-right: 15px;
    padding-left: 15px;
    text-align: justify;
}

/*------------------------------------------ 

            HEADERS AND SECTIONS

---------------------------------------------*/
.section, .everyOtherSection {
    height: fit-content;
    width: 100%;
    display: block;
    float: left;
    padding-top: 15px;
    padding-bottom: 15px; 
}

.everyOtherSection {
    background-color: var(--lightbluegrey);
}

.newSectionHeader {
    display: block;
    float: left;
    width: 100%;
    text-align: center;
    color: var(--black);
}

.newSectionContent {
    display: block;
    float: left;
    width: 100%;
    padding-left: 45px;
    padding-right: 45px;
}

@media only screen and (max-width: 767px) {
    .newSectionContent {
        padding-left: 25px;
        padding-right: 25px; 
    }
}


.removePadding {
    padding-left: 0;
    padding-right: 0;
}

/*------------------------------------------ 

                GALLERY

---------------------------------------------*/

.headerForGalleryContainer {
    display: block;
    width: 100%;
    float:left;
    /* float: left; */
    margin-top: 15px;
    /* width: fit-content; */
    height: 100%;
    text-align: center;
    color: var(--black);
}

.img_Gallery, .aniHolder {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.img_GalleryContainer {
    padding: 15px;
}

.animationContainer {
    display: block;
    float: left;
}

.show {
    display: block;
}

.media-body {
    width: 50%;
    display: block;
    margin: auto;
}

#licenseTerms {
    cursor: pointer;
    color: var(--black)
}

.BioPar p {
    font-size: small;
}

/*------------------------------------------ 

            CAROUSEL

---------------------------------------------*/

.slideshow-container {
    display: block;
    float: left;
    padding-bottom: 15px;
    width: 65%;
    margin-right: 17.5%;
    margin-left: 17.5%;
    position: relative;
  }

  @media only screen and (max-width: 767px) {
    .slideshow-container {
        width: 75%;
        margin-right: 12.5%;
        margin-left: 12.5%;
    }
  }
  
  /* Make the images invisible by default */
  .slides {
    display: none;
  }
  
  /* forward & Back buttons */
  .back, .forward {
    cursor: pointer;
    position: absolute;
    top: 48%;
    width: auto;
    margin-top: -23px;
    padding: 17px;
    font-weight: bold;
    font-size: 19px;
    transition: 0.4s ease;
    border-radius: 0 5px 5px 0;
    user-select: none;
  }
  
  /* Place the "forward button" to the right */
  .forward {
    right: 0;
    border-radius: 4px 0 0 4px;
  }
  
  /*when the user hovers,add a black background with some little opacity */
  .back:hover, .forward:hover {
    background-color: var(--verydarkblue);
  }
  
  /* Caption Info */
  .caption {
    color: var(--white);
    font-size: 16px;
    padding: 10px 14px;
    position: absolute;
    bottom: 10px;
    width: 100%;
    text-align: center;
    text-transform: uppercase;
    font-family: "Montserrat","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-weight: 700;
    letter-spacing: 1px;
  }

  .dotsContainer {
    text-align: center;
    display: block;
    float: left;
    width: 100%;
    position: relative;
    bottom: 0;
  }

  /* The circles or bullets and indicators */
  .dots {
    cursor: pointer;
    height: 16px;
    width: 16px;
    margin: 0 3px;
    background-color: var(--darkblue);
    border-radius: 50%;
    display: inline-block;
    transition: background-color 0.5s ease;
  }
  
  .enable, .dots:hover {
    background-color: var(--verydarkblue);
  }
  
  /* Faint animation */
  .fade {
    -webkit-animation-name: fade;
    -webkit-animation-duration: 1s;
    animation-name: fade;
    animation-duration: 1s;
  }
  
  @-webkit-keyframes fade {
    from {opacity: .5}
    to {opacity: 2}
  }
  
  @keyframes fade {
    from {opacity: .5}
    to {opacity: 2}
  }

/*------------------------------------------ 

                CAPABILITIES

---------------------------------------------*/
.checklist ul {
    list-style-type: none;
    color: var(--black);
    padding: 0;
}

.checklist .row {
    width: fit-content;
    margin: auto;
}

.checklist li {
    text-align: left;
    line-height: 1.75em;
    font-size: 20px;
    padding-left: 15px;
    padding-bottom: 12px;
}

.checklist .indented {
    padding-left: 45px;
}

.checklist li.capabilitiesHeader {
    font-weight: bold;
    font-size: 22px;
    padding-left: 0px;
    line-height: 1.25em;
    padding-bottom: 5px;
}

.fa-check {
    padding-right: 15px;
    color: green;
}

/*------------------------------------------ 

                APPLICATIONS

---------------------------------------------*/
.applicationsHeader h2 {
    text-transform: none !important;
}

.applicationsText {
    text-align: center;
    /* width: 75%; */
    padding-left: 5%;
    padding-right: 5%;
    letter-spacing: 0.5px;
    display: block;
    float: left;
}

/*------------------------------------------ 

                DOCUMENTATION

---------------------------------------------*/

.columnForGuides {
    padding: 15px;
}

.columnImg {
    float: left;
    width: 20%;
}

.columnDesc {
    float: right;
    width: 80%;
}

.containingDocsSection {
    /* padding: 15px; */
    text-align: center;
}

/* .docLinks {
    display: block;
    margin-top: 0;
    margin-bottom: 13px;
    font-size: 17px;
    letter-spacing: 0.75px;
} */

.docHeader, .docSection {
    padding: 15px;
}

/*------------------------------------------ 

            SUPPORT SECTION

---------------------------------------------*/
.supportContainer {
    padding-left: 25px;
    padding-right: 25px;
}

.supportDescription {
    font-size: 25px;
    
}

/*------------------------------------------ 

            TUTORIAL SECTION

---------------------------------------------*/

.embedYTVideo {
    height: 450px;
    width: 50%;
    margin: auto;
    display: block;
    /* border: 7px solid var(--verydarkblue); */
    border-radius: 25px;
    padding: 25px;
    padding-lefT: 0;
}

.paddingTutor {
    padding: 15px;
    /* padding-right: 6%;
    padding-left: 6%; */
}

/*------------------------------------------ 

            REPOSITORY SECTION

---------------------------------------------*/

.subHeader {
    margin-top: 15px;
}

#embedVMR {
  border: 7px solid #172229;
  border-style: ridge;
}

.embedVMRcontainer {
    float: right;
    display: block;
    padding-left: 35px;
}

.describeVMR {
    display: block;
}

@media (min-width: 768px){
    .col-md-6 {
        max-width: 100%;
    }
}

@media (max-width: 992px){
    .embedVMRcontainer {
        padding-left: 15px;
        height: 550px;
    }
    .describeVMR {
        padding-bottom: 30px;
    }
}

/*------------------------------------------ 

            RECENT NEWS

---------------------------------------------*/

.newNews {
    width: 75%;
    margin: auto;
    margin-top: 15px;
    margin-bottom: 30px;
    padding: 25px;
    border: 5px solid #033651ba;
    background-color: #dde4ef6b;
    /* border-radius: 50px; */
}
.news_date, .news_name, .news_place, .news_label {
    letter-spacing: 0.75px;
    word-wrap: break-word;
}

.news_date, .news_label {
    display: inline-block;
    position: relative;
}

.news_date{
    text-align: right;
    font-size: 18px;
    color: #033651;
}

.news_label {
    text-align: left;
    font-size: 22px;
    color: #033651;
}

.news_name {
    text-align: left;
    font-size: 35px;
}

.news_place {
    color: #033651;
    font-style: italic;
    margin-top: 15px;
    font-size: 24px;
}

@media only screen and (max-width : 576px) {
    .news_name {
        font-size: 25px;
    }

    .news_place {
        font-size: 20px;
    }

    .news_date{
        text-align: left;
    }
}

/*------------------------------------------ 

                TEAM

---------------------------------------------*/

.team-section {
    padding-top: 50px;
    text-align: center;
    background-color: var(--dark2);
    /* color: var(--white); */
    padding: 50px 0 50px;
    color: var(--white);
  }
  
  .team-item {
    height: 200px;
  }
  .team-item .team-triangle {
    width: 200px;
    height: 200px;
    background: transparent;
    margin: 0 auto;
    position: relative;
    margin-top:20px;
    margin-bottom:20px;
  }
  .team-item img {
    max-width: 100%;
    max-height: 100%;
    border-radius: 50% !important;
  }
  
  .team-triangle .team-content {
    height: 100%;
    border-radius: 50%;
  }
  
  .team-hover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--white);
    opacity: 0;
    -webkit-transition: opacity 0.4s ease-in;
      transition: opacity 0.4s ease-in;
    border-radius: 50% !important;
  }

  .team-item .team-triangle:hover .team-hover {
    opacity: 0.6;
  }
  
  .team-hover p {
    color: var(--black);
    font-size: 16px;
    position: relative;
    margin-top: 90px;
    font-weight: 500;
    opacity: 1;
  }
  
  .row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}

.team-content{
    display: block;
    float: left;
}

.team-container {
    display: block;
    float: left;
    width: 100%;
    padding-right: 25px;
    padding-left: 25px;
    margin-right: auto;
    margin-left: auto;
}

@media only screen and (max-width : 576px) {

    .team-item {
      height: 150px;
    }
    .team-item .team-triangle {
      width: 150px;
      height: 150px;
    }
  
    .team-hover p {
      color: var(--white);
      font-size: 16px;
      position: relative;
      margin-top: 65px;
      font-weight: 400;
    }
}

/*------------------------------------------ 

            CONTACT SECTION

---------------------------------------------*/

.contactHeaders {
    text-transform: none; 
    text-align: center;
}

.contactLinks, .contactDescription{
    margin: 0px;
    padding: 5px;
    text-align: center;
    text-transform: none;
    font-weight: normal;
}

.contactLinks {
    margin-bottom: 15px;
}

.contactDescription {
    font-style: italic;
}

@media only screen and (max-width: 768px) {
    h1 {
        font-size: 6vw;
    }
    .contactLinks, .contactDescription{
        text-align: left;
        font-size: 20px;
        padding: 15px;
    }
}

@media (max-width: 350px){
    h1 {
        font-size: 7vw;
    }
    .iconInHeader {
        padding-right: 5px;
    }
    .downloadLinks .btn {
        font-size: 6vw;
        padding: 4px 8px;
    }
}

/*------------------------------------------ 

            COPYRIGHT

---------------------------------------------*/

.copyright {
    display:block; 
    float: left; 
    width:100%; 
    margin-top: 50px;
    height:fit-content;
    text-align: center;
}

.innerCopyright {
    margin: 0;
    padding: 8px;
    color: var(--black)
}

/*------------------------------------------ 

           SUITE OF APPLICATIONS LINKS

---------------------------------------------*/

.application-link {
    color: inherit;
    text-decoration: none;
    transition: all 0.3s ease;

}

.application-link:hover {
    color: #0056b3;
    text-decoration: underline;  /* underline  */
}