html,
body {
    font-family: 'Roboto', sans-serif;
    overflow-x: hidden;
}

body {
    /* Required by Bootstrap's ScrollSpy plugin. */
    position: relative;

    /* This value is replicated in several style rules. */
    margin-top: 149px;
}

a {
    color: #6db33f;
}
a:hover {
    color: rgb(46, 200, 102);
}

#resume-footer {
    padding: 10px 0 0 0;
    border-top: solid #ddd 1px;
}

.resume-primary-section {
}

.resume-secondary-section {
    padding: 0 20px 0;
    margin-top: 20px;
}
.resume-secondary-section:first-child {
    margin-top: 0;
}

.resume-tertiary-section {
    margin: 10px 0;
}
.resume-tertiary-section > ul {
    padding-left: 0;
}
.resume-tertiary-section > ul li {
    margin-left: 20px;
}

.resume-institution,
.resume-employer {
    font-size: 18px;
    font-weight: 700;
}

/*
 * Resume masthead
 */
#resume-masthead {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
    /* Height should match top margin on body. */
    height: 149px;
    background: rgba(57, 66, 78, 0.95);
    color: #fafafa;
    overflow: hidden;
    font-size: 32px;
    font-style: normal;
    font-weight: 400;
    line-height: 40px;
}
#resume-masthead a:hover {
    color: rgb(46, 200, 102);
}

#resume-masthead-header {
    font-size: 32px;
    font-weight: 700;
    line-height: 70px;
}

#resume-masthead-info {
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
}

#resume-masthead-bottom {
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    padding-top: 4px;
}

/*
 * Resume sidebar
 */
#resume-sidebar {
    position: fixed;
    /* Top should match top margin on body. */
    top: 149px;
    bottom: 0;
    margin: 20px 0;
    border-right: solid #ddd 1px;
}

#resume-sidebar > .nav {
    margin-right: 10px;
}

#resume-sidebar .nav > li > a {
    display: block;
    padding: 5px 20px;
}

#resume-sidebar .nav > li {
    display: block;
    width: 100%;
}

#resume-sidebar .nav > li > a:focus,
#resume-sidebar .nav > li > a:hover {
    text-decoration: none;
}
#resume-sidebar .nav > li > a:focus {
    background-color: inherit;
    color: #6db33f;
}
#resume-sidebar .nav > li > a:hover {
    color: rgb(248, 249, 250);
    background-color: #6db33f;
}

#resume-sidebar .nav > .active > a,
#resume-sidebar .nav > .active:hover > a,
#resume-sidebar .nav > .active:focus > a {
    font-weight: 700;
    border-left: 2px solid #563d7c;
}

#resume-sidebar .nav .nav > li > a {
    padding-top: 3px;
    padding-bottom: 3px;
    padding-left: 40px;
    font-size: 90%;
}

#resume-sidebar .nav .nav .nav > li > a {
    padding-top: 3px;
    padding-bottom: 3px;
    padding-left: 60px;
    font-size: 80%;
}

@media (min-width: 768px) {
    #resume-sidebar {
        width: 180px;
    }
}

@media (min-width: 992px) {
    #resume-sidebar {
        width: 220px;
    }
}

@media (min-width: 1200px) {
    #resume-sidebar {
        width: 260px;
    }
}

/*
 * Custom replacement for Bootstrap 3's .page-header which was removed in Bootstrap 5.
 */
.section-header {
    padding-bottom: 0;
    border-bottom: 1px solid #ddd;
    margin-bottom: 20px;
}
.section-header:first-child {
    /* Align the first section with the sidebar. */
    margin-top: 20px;
}
.section-header > h3 {
    font-weight: 700;
}
