@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,400;0,500;0,700;1,600&display=swap');

/*Nav css goes here*/
*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

header {
    height: 580px;
    background: url(../images/banner_1440-min.jpg) no-repeat center bottom;
}

header.small_nav  {
    height: 100px;
    background-color: #3A6F94;
    background-image: none;
}

.container {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    padding-right: 60px;
    padding-left: 60px;
}

.menu-icons {
    color: #eeeeee;
    font-size: 2em;
    position: absolute;
    top: 40px;
    right: 20px;
    transform: translateY(-50%);
    cursor: pointer;
    z-index: 1500;
    display: none;
}

.icons {
    color: black;
    font-size: 2em;
    cursor: pointer;
    float: left;
 
}

nav {
    display: flex;
    align-items: center;
    width: 100%;
    height: 80px;
}

.logo {
    display: flex;
    border-radius: 100%;
    margin-right: 50px;
}

.nav-list {
    display: flex;
    width: 100%;
    justify-content: flex-end;
    align-items: center;
}

.nav-list li {
    line-height: 40px;
    position: relative;
}

.sub-menu li {
    line-height: 40px;
}

.nav-btn {
    border: 2px solid #FFFFFF;
    box-sizing: border-box;
    display: inline-block;
    border-radius: 46px;
    padding: 8px 20px;
    transition: background-color 650ms;
    text-align: center;
    margin-left: 20px;
   
}

.nav-btn:hover {
    background-color: #0F4C75;
}

.nav-list li.nav-btn a:hover{background-color: transparent;}

.nav-list a {
    display: block;
    padding: 0 1em;
    font-size: 1em;
    color: #eee;
    transition: background-color 400ms;

}

.nav-list ul a:hover {
    background-color: #3282B8;
}

.sub-menu {
    width: 12.5em;
    display: block;
    position: absolute;
    background-color: #0F4C75;
    z-index: 100;
    visibility: hidden;
    
}

.nav-list li:hover > .sub-menu {
    visibility: visible;
}

li.nav-btn {
    
    line-height: initial;

}

.current {
    border-bottom: solid 1px white;
}

/*End nav css*/

body {
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    font-weight: 300;
    color: #000000;
    margin: 0;
    padding: 0;
    overflow-x: hidden;

}
#page {
    max-width: 1440px; margin: 0 auto; position: relative; height: 100%;;
}
/* text */

h1 {
    margin: 0 0 1em 0;
    font-size: 2.8em;
    font-weight: 700;
}

h2 {
    margin: 0 0 1em 0;
    font-size: 2em;
    font-weight: 500;
}

h3 {
    font-weight: 600;
    font-size: 1em;
    line-height: 1.5em;
    letter-spacing: 0.1em;
}

h4 {
    margin: 0 0 1em 0;
    font-size: 1.125em;
    font-weight: 500;
    line-height: 1.8em;
}

h5 {
    margin: 0;
    font-size: 1em;
    font-weight: 400;
    line-height: 1.8em;
}

p {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 163.15%;
}

a {
    color: #007eff;
    text-decoration: none;
}

/* a:visited {
    color: #eee;
} */

p a:hover { 
    text-decoration: underline;

}
li a {
    transition: background-color 1000ms;
}

li a:hover {
   
    background-color:rgba(15, 76, 117, 0.3);
}

ul { list-style: none;}



/*Hero*/

header div.hero_content {
    height: auto;
    min-height: 20vh;
    padding: 87px 0px 20vh 0px;
    max-width: 500px;
}

header div.hero_content h1 {
    color: white;
    line-height: 110%;
    margin: 0px 30px 0px 0;
}

header div.hero_content h4 {
    margin: 20px 0px 0px 0px;
    color: white;
    line-height: 163.2%;
}

/* main content area*/

.main {padding-left: 60px; padding-right: 60px;}

.content { margin-left: auto; margin-right: auto; margin-top: 60px;
    display: flex;
    justify-content: space-between;
}

.column_right { max-width: 800px;}
.column_left {width: 750px; margin-right: 20px;}

.left_heading { display: flex; margin-top: 10px;}

.left_heading h3 { margin-top: 5px; margin-bottom: 5px; padding: 0px 0 10px 8px;}

.column_left ul { 
    margin: 0;
    padding-left: 8px;
    list-style: none;
} 

.column_left li { 
    padding-left: 28px; 
    margin-bottom: 5px;
    
    background-position: 0px 9px;
    background-size: 8px;
    background-repeat: no-repeat;
}

.column_left li::before {
    content: url(../images/bulletpointBlue.svg) ; /* Insert content that looks like bullets */
    padding-right: 16px;
    color: #0F4C75; /* Or a color you prefer */
}

.column_left ul li a { text-decoration: none; color: black;}
.column_left ul li a:hover { text-decoration: underline; color:#0F4C75;}

.column_right h2 {margin: 0 0 10px 0;}

.column_right ul { list-style: none; padding: 0;}

.column_right li {
    margin-top: 0;
    margin-bottom: 15px;
    padding-left: 28px;
    background-image: url(../images/bulletpointBlue.svg);
    background-position: 0px 9px;
    background-size: 8px;
    background-repeat: no-repeat;
}

/*about page */


div .center {
    text-align: center;
    margin-top: 10px;
    margin-bottom: 20px;
}

.CV_button {
    margin-top: 20px;
    text-align: center;
}
.CV_button a {
    border: 2px solid #0F4C75;
    box-sizing: border-box;
    border-radius: 46px;
    width: auto;
    height: 30px;
    padding: 5px 30px;
    text-decoration: none;
    background-color: #0F4C75;
    color: white;
}

.CV_button a:hover {
    background-color: #3282B8;
    border: 2px solid #3282B8;
}

.about_content { margin-left: auto; margin-right: auto; margin-top: 30px;
    display: block;
  
}

.about_content h2 {
    margin: 0;
}
.about_content p {
    margin: 1em 0;
}

.about_column_right {
    max-width: 300px; 
    margin-left: 60px;
    margin-bottom: 60px;
    float: right;
}
.container_about {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    padding-right: 60px;
    padding-left: 60px;
    display: inline-block;
}

.about_content li {
    margin-top: 0;
    margin-bottom: 15px;
    padding-left: 28px;
    background-image: url(../images/bulletpointBlue.svg);
    background-position: 0px 9px;
    background-size: 8px;
    background-repeat: no-repeat;
    font-weight: 400;
}

.about_column_right h3 {
    margin-bottom: 10px;
}
.about_column_right h4 {
    text-align: center;
}

.about_column_right p {
    margin-top: 0;
}

/* Links Page */

.content_links {
    margin-top: 30px;
}
.content_links h2 {
    margin-bottom: 16px;
}
.links h3 {
    margin: 16px 0 10px 0;
}


/*Contact us*/
.contact_us {
    margin-top: 30px;
}

.contact_us h3, h2 {
    margin-bottom: 10px;
}

.contact_info p {
   
    padding-top: 8px;
}

.contact_info{
    display: flex;
    margin: 16px 0;
    
}

.contact_icons {
    margin-right: 10px;
}

/*software pages*/

.software_column_right {
    min-width: 300px; 
    margin-left: 60px;
    margin-bottom: 60px;
    float: right;
}


.software_content { margin-left: auto; margin-right: auto; margin-top: 30px;
    display: flex;
  
}

.software_content h2 {
    margin: 0;
}
.software_content p {
    margin: 1em 0;
}

.software_content li {
    margin-top: 0;
    margin-bottom: 15px;
    padding-left: 28px;
    background-image: url(../images/bulletpointBlue.svg);
    background-position: 0px 9px;
    background-size: 8px;
    background-repeat: no-repeat;
    font-weight: 400;
}

.software_column_right h3 {
    margin-bottom: 10px;
}
.software_column_right h4 {
    text-align: center;
}

.software_column_right p {
    margin-top: 0;
}

.bigbox {
    border-bottom: solid 1px #0F4C75;
    margin-bottom: 15px;
}

.bigbox a {
    margin-right: 10px;
}

.column_width {
    width: 13%;
}

/*algorithm page */

.column {
    float: left;
    width: 33.33%;
    padding: 0 10px;
    text-align: center;
  }

.column p {
    text-align: left;
}
  
  /* Clear floats after the columns */
  .row:after {
    content: "";
    display: table;
    clear: both;
  }

.button {
    margin-top: 20px;
    text-align: center;
}

.button a {
    box-sizing: border-box;
    border-radius: 46px;
    width: auto;
    height: 30px;
    padding: 5px 30px;
    text-decoration: none;
    background-color: #0F4C75;
    color: white;

}


.button a:hover {
    background-color: #3282B8;
    border: 2px solid #3282B8;
}

/*Table styles*/



.table_overflow {
      overflow-x: auto;
      margin-top: 10px;
  }
/* Footer */

footer { background-color: #0F4C75; height: auto; margin-top: 30px; max-width: 1440px; margin-left: auto; margin-right: auto;}

footer .footer_content {
    padding: 10px;
    text-align: center;
 }

footer p { color: white; margin: 0; font-size: 0.8em; font-weight: 400;}

footer a { float: right; margin-right: 0; text-decoration: none; color: white;}


@media screen and (max-width: 1010px){
    nav {
        display: block;
    }

    .nav-list {
        justify-content: flex-start;
        margin-left: -1em;
        margin-top: 1em;
    }
    
    .logo {
        padding-top: 10px;
    }
    header.small_nav {
        height: 150px;
    }
}

@media screen and (max-width: 980px){
    nav {
        display: block;
    }
    
    .column_width {
        width: 110px;
    }
}

@media screen and (max-width: 915px){
    
    .column {
        width: 100%;
        margin-bottom: 20px;
        border-bottom: solid 2px rgba(15, 76, 117, 0.5); 
        height: 100%;
      }
    .button {
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 800px){
    .nav-list {
        position: fixed;
        top: 0;
        left: 0;
        height: 480px;
        flex-direction: column;
        display: none;
        align-items: center;
        background-color: #0F4C75;
        z-index: 1000;
        overflow-y: scroll;
        padding-bottom: 20px;
        margin-left: 0;
        margin-top: 0;
    }

    .logo { padding-top: 20px;}

    .nav-list > li {
        line-height: 80px;
        text-align: center;
    }

    .sub-menu li {
        line-height: 60px;
    }

    .sub-menu {
        position: initial;
        max-height: 0;
    }

    .nav-list li:hover > .sub-menu {
        opacity: 1;
        visibility: visible;
        max-height: initial;
    }

    li.nav-btn {
        margin: 0 auto;
        line-height: initial;
    }

    .menu-icons {
        display: block;
    }

    .ion-md-close {
        display: none;
    }

    nav.active .ion-md-close {
        display: block;
    }
    nav.active .ion-md-menu {
        display: none;
    }

    nav.active .nav-list {
        display: flex;

    }

    header.small_nav {
        height: 100px;
    }
    .about_column_right {
        max-width: 300px; 
        margin-right: 30px;
        float: none;
        margin-left: 0;
        margin-right: 0;
        max-width: none;
    }

    .about_content {
        margin-top: 30px;
    }

    .about_content h2 {
        font-size: 1.6em;
        margin: 0;
    }
    .about_content p {
        margin: 1em 0;
    }
    .container_about {
        padding-right: 30px;
        padding-left: 30px;
    }

    .about_column_right {
        max-width: 300px; 
        margin-right: 30px;
        float: none;
        margin-left: 0;
        margin-right: 0;
        max-width: none;
    }

    .software_content {
        display: inline-block
    }

    .software_column_right {
        margin-left: 0;
    }
    
    
}

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

    .content {
        margin-top: 30px;
        flex-direction: column-reverse;
    }

    
    .main {
        padding-left: 16px;
        padding-right: 16px;
    }
    header div.hero_content h1 {
        font-size: 2em;
        color: white;
        line-height: 110%;
        margin: 0px 30px 0px 0;
    }
    
    header div.hero_content h4 {
        font-size: 0.8em;
        margin: 20px 0px 0px 0px;
        color: white;
        line-height: 163.2%;
    }

    h2 {
        font-size: 1.2em;
    }

    .left_heading {
        margin-top: 0px;
        margin-left: auto;
        margin-right: auto;
    }

    a {
        font-size: 16px;
    }

    .column_left li {
        padding-left: 0;
    }

    .column_left {
        width: 100%;
        text-align: center;
    }

    .left_heading {
        justify-content: center;
    }

    .column_right h2 {
        text-align: center;
        margin: 10px 0;
    }
    .column_right li {
        padding-bottom: 10px;
        border-bottom: 1px solid rgba(15, 76, 117, 0.5);
        background-image: none;
        padding-left: 0;
        
    }
    .about_content h2{
        text-align: center;
    }
    .column p {
        text-align: center;
    }

    .contact_us {
        text-align: center;
    }

    .contact_us h3 {
        font-size: 0.8em;
        font-weight: 400;
    }

    .contact_us h2 {
        margin-bottom: 5px;
    }
    .contact_info {
        display: block;
        margin: 16px 0;
        text-align: center;
        border-bottom: solid 1px rgba(15, 76, 117, 0.5);;
    }
    .contact_info p {
        margin-bottom: 5px;
    }

}

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


    header {
        height: 100%;
        background: url(../images/banner_780-min.jpg) no-repeat center top;
        padding-bottom: 20px;
    }

    header div.hero_content h1 {
        font-size: 1.6em;
        
    }
    
    header div.hero_content h4 {
        font-size: 0.6em;
    }
    
    header div.hero_content {
        padding-bottom: 0;
        padding-top: 20px;
    }       
    
    .container {
        padding: 0 30px;
    }

    .content {
        margin-top: 10px;
    }

  
}