/*
    General
*/

* {
    color: #555555;
    box-sizing: border-box;
}

/*Added by Cory to fix nearly invisible grey text in SQL highlighting*/
*.n {
  color: #adff2f
}

/*Additional colors that comes up as unreadable light gray*/
*.nv{
  color: #3399FF
}

*.nb{
  color: #3399FF
}

*.nx{
  color: #adff2f
}

*.gp{
  color: #859c53
}

body {
    position: relative;
    min-height: 800px;
}

/*
    Header Area
*/
.navbar {
    border-bottom: 3px solid #f8972b;
}

.navbar-brand > img {
    width: 240px;
    height: 26px;
}

/*
    Main Area
*/
.main {
    position: absolute;
    top: 50px;
    bottom: 100px;
    padding: 30px 150px;
}

.main > div {
    margin: 50px 0;
}

.main > div:first-child {
    margin-top: 0;
}

.main h1 {
    font-size: 42px;
    font-weight: bold;
}

.main h2 {
    font-size: 24px;
    line-height: 1.3;
}

.main h3 {
    font-size: 16px;
    line-height: 1.3;
}

.main > .row {
    width: 100%;
}

/*
    The first child needs a border
*/
.main .row > .col-md-4:first-child {
    border-right: 1px solid #dfdfdf;
    padding-left: 0;
}

/*
    The middle children need a border
*/
.main .row > .col-md-4 {
    border-right: 1px solid #dfdfdf;
    padding-left: 5%;
}

/*
    The last child never wants a border
*/
.main .row > .col-md-4:last-child {
    border-right: none !important;
    padding-left: 5%;
}

.main .sub-menu-title {
    font-size: 24px;
    line-height: 1.3;
    padding: 0 10px;
}

.button {
    width:  175px;
    height: 50px;
    border: 1px solid #dfdfdf;
    border-radius: 2px;
    background-color: #ffffff;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    color: #f8972b;
    padding: 14px 0;
    cursor: pointer;
}

.button:hover {
    border: none;
    background-color: #f8972b;
    color: #ffffff;
}

a.button {
    display: block;
    color: #f8972b;
}

a.button:hover {
    text-decoration: none;
}
a.button:visited {
    text-decoration: none;
}

.white-space {
    height: 10px;
}

/*
    Footer Area
*/
.footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 100px;
    background-color: #f5f5f5;
    border-top: 3px solid #f8972b;
}

.footer > hr {
    margin: 0;
    border-top: 3px solid #f8972b;
}

.footer > div {
    padding: 0 20px;
    padding-top: 10px;
 }

.veeva-logo-container {
    width: 150px;
}

.copyright > div {
    font-size: 11px;
}

.copyright a {
    padding-left: 20px;
    color: #3a97c4;
}

/*
    Responsive Styling
*/
@media only screen and (max-width: 992px) {
    body {
        min-height: 1100px;
    }

    .main {
        padding: 10px 50px;
    }
    /*
    The middle children need padding on top
    Remove the right-side border when screen size is this small
    */
    .main .row > .col-md-4 {
        margin-top: 50px;
        border-right: none;
    }
    /*
    The last child needs padding on top
    */
    .main .row > .col-md-4:last-child {
        margin-top: 50px;
    }
    /*
    The first child does not need padding on top,
    Remove the right-side border when screen size is this small
    Now that we are all in a row, we want that left padding
    */
    .main .row > .col-md-4:first-child {
        margin-top: 0px;
        border-right: none;
        padding-left: 5% !important;
    }

    .veeva-logo-container {
        width: 120px;
    }
}

@media only screen and (max-width: 767px) {
    body {
        min-height: 1300px;
    }

    .main {
        padding: 0 20px;
    }

    .footer > div {
        padding: 0 10px;
        padding-top: 8px;
    }
}
