﻿/* stylelint-disable order/properties-alphabetical-order */
/* stylelint-enable */
@font-face {
    font-family: 'FontAwesome';
    src: url("src/fonts/fontawesome-webfont.eot?v=4.7.0");
    src: url("src/fonts/fontawesome-webfont.eot?#iefix&v=4.7.0") format("embedded-opentype"), url("src/fonts/fontawesome-webfont.woff2?v=4.7.0") format("woff2"), url("src/fonts/fontawesome-webfont.woff?v=4.7.0") format("woff"), url("src/fonts/fontawesome-webfont.ttf?v=4.7.0") format("truetype"), url("src/fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular") format("svg");
    font-weight: normal;
    font-style: normal; }

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

.error-404 {
    font-size: 100px; }

.dnnEditState {
    position: relative; }

.dnnEditState .actionMenu {
    display: block !important; }

.home .wave-bg {
    background: url(/Portals/_default/Skins/STLFinancial/Images/stl-financial-wave-bg.jpg) top left no-repeat, url(/Portals/_default/Skins/STLFinancial/Images/stl-financial-wave-bg.jpg) bottom left no-repeat;
    background-size: contain; }

.sustaining .wave-bg {
    background: url(/Portals/_default/Skins/STLFinancial/Images/stl-financial-wave-bg.jpg) top left no-repeat, url(/Portals/_default/Skins/STLFinancial/Images/stl-financial-wave-bg.jpg) bottom left no-repeat;
    background-size: contain; }

.divider-line-left {
    border-left: 1px solid #58595B;
    padding-left: 1.875rem !important; }

.divider-line-right {
    border-right: 1px solid #58595B;
    padding-right: 1.875rem !important; }

h1, h2, h3, h4, h5 {
    font-family: Barlow, sans-serif !important;
    color: #1E2326;
    font-weight: 800 !important; }

h1 {
    font-size: clamp(100%, calc(2rem + 3vw), 3.5rem); }
    @media (min-width: 1367px) {
        h1 {
            font-size: 5.5rem; } }

h2 {
    color: #1E2326;
    font-size: clamp(100%, calc(1rem + 3vw), 2.5rem); }
    h2 span {
        font-weight: 400;
        color: #939598; }

h3.job-title {
    font-size: 1.125rem;
    letter-spacing: .5px;
    color: #939598; }

span.title {
    font-family: Barlow;
    font-size: 1rem;
    font-weight: bold;
    letter-spacing: 2.4px;
    color: #BCBEC0;
    text-transform: uppercase; }

.gray-subtitle {
    font-family: Barlow, sans-serif;
    font-weight: 700;
    font-size: 1rem;
    letter-spacing: 0.16px;
    color: #939598; }

span.blue-uppercase-title {
    font-family: Barlow, sans-serif;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 2.4px;
    color: #3687FF;
    text-transform: uppercase; }

p {
    font-family: Roboto, sans-serif;
    font-size: 1rem;
    line-height: 1.5; }

.social-media-icon {
    width: 30px;
    margin-right: .5rem; }

.DNNEmptyPane {
    display: none; }

.d-mobile {
    display: none; }
    @media (max-width: 767px) {
        .d-mobile {
            display: block; } }

.mobile-break {
    flex-basis: 100%;
    height: 0; }

.bottom-banner {
    background: url("/portals/_default/Skins/STLFinancial/Images/stl-financial-skyline-bg.jpg");
    background-size: cover; }
    .bottom-banner p {
        color: #fff; }
    .bottom-banner .LiveForm {
        margin-bottom: 2.5rem; }
        .bottom-banner .LiveForm .thank-you p {
            text-align: center; }
        @media (min-width: 1600px) {
            .bottom-banner .LiveForm {
                margin-bottom: 7.5rem; } }

.questions-form {
    margin-top: 2.5rem;
    color: #fff;
    text-align: center; }
    @media (min-width: 1600px) {
        .questions-form {
            margin-top: 7.5rem; } }
    .questions-form h2 {
        font-family: Barlow, sans-serif;
        font-weight: 700;
        font-size: 4.375rem;
        letter-spacing: 0.6px;
        margin-bottom: 1.875rem; }
    .questions-form p {
        padding-bottom: 1.875rem; }
    .questions-form input {
        width: 100%;
        border-radius: 5px;
        background: #fff;
        padding: 1.25rem;
        font-size: 1rem;
        color: #231F20;
        margin-bottom: 0.9375rem; }
    .questions-form textarea {
        width: 100%;
        border-radius: 5px;
        padding: 1.25rem;
        font-size: 1rem;
        color: #231F20;
        height: 138px; }
    .questions-form button {
        margin: auto; }

*,
*::before,
*::after {
    box-sizing: border-box; }

html {
    font-family: sans-serif;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(30, 35, 38, 0); }

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
    display: block; }

body {
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #414042;
    text-align: left;
    background-color: #fff; }

[tabindex="-1"]:focus {
    outline: 0 !important; }

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible; }

h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    margin-bottom: 0.5rem; }

p {
    margin-top: 0;
    margin-bottom: 1rem; }

abbr[title],
abbr[data-original-title] {
    text-decoration: underline;
    text-decoration: underline dotted;
    cursor: help;
    border-bottom: 0;
    text-decoration-skip-ink: none; }

address {
    margin-bottom: 1rem;
    font-style: normal;
    line-height: inherit; }

ol,
ul,
dl {
    margin-top: 0;
    margin-bottom: 1rem; }

ol ol,
ul ul,
ol ul,
ul ol {
    margin-bottom: 0; }

dt {
    font-weight: 700; }

dd {
    margin-bottom: .5rem;
    margin-left: 0; }

blockquote {
    margin: 0 0 1rem; }

b,
strong {
    font-weight: bolder; }

small {
    font-size: 80%; }

sub,
sup {
    position: relative;
    font-size: 75%;
    line-height: 0;
    vertical-align: baseline; }

sub {
    bottom: -.25em; }

sup {
    top: -.5em; }

a {
    color: #3687FF;
    text-decoration: none;
    background-color: transparent; }
    a:hover {
        color: #005ee9;
        text-decoration: underline; }

a:not([href]):not([tabindex]) {
    color: inherit;
    text-decoration: none; }
    a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
        color: inherit;
        text-decoration: none; }
    a:not([href]):not([tabindex]):focus {
        outline: 0; }

pre,
code,
kbd,
samp {
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 1em; }

pre {
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto; }

figure {
    margin: 0 0 1rem; }

img {
    vertical-align: middle;
    border-style: none; }

svg {
    overflow: hidden;
    vertical-align: middle; }

table {
    border-collapse: collapse; }

caption {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    color: #808285;
    text-align: left;
    caption-side: bottom; }

th {
    text-align: inherit; }

label {
    display: inline-block;
    margin-bottom: 0.5rem; }

button {
    border-radius: 0; }

button:focus {
    outline: 1px dotted;
    outline: 5px auto -webkit-focus-ring-color; }

input,
button,
select,
optgroup,
textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit; }

button,
input {
    overflow: visible; }

button,
select {
    text-transform: none; }

select {
    word-wrap: normal; }

button,
[type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button; }

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
    cursor: pointer; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    padding: 0;
    border-style: none; }

input[type="radio"],
input[type="checkbox"] {
    box-sizing: border-box;
    padding: 0; }

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
    -webkit-appearance: listbox; }

textarea {
    overflow: auto;
    resize: vertical; }

fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0; }

legend {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin-bottom: .5rem;
    font-size: 1.5rem;
    line-height: inherit;
    color: inherit;
    white-space: normal; }

progress {
    vertical-align: baseline; }

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto; }

[type="search"] {
    outline-offset: -2px;
    -webkit-appearance: none; }

[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none; }

::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button; }

output {
    display: inline-block; }

summary {
    display: list-item;
    cursor: pointer; }

template {
    display: none; }

[hidden] {
    display: none !important; }

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    margin-bottom: 0.5rem;
    font-family: inherit;
    font-weight: 500;
    line-height: 1.2;
    color: inherit; }

h1, .h1 {
    font-size: 2.5rem; }

h3, .h3 {
    font-size: 1.75rem; }

h4, .h4 {
    font-size: 1.5rem; }

h5, .h5 {
    font-size: 1.25rem; }

h6, .h6 {
    font-size: 1rem; }

.lead {
    font-size: 1.25rem;
    font-weight: 300; }

.display-1 {
    font-size: 6rem;
    font-weight: 300;
    line-height: 1.2; }

.display-2 {
    font-size: 5.5rem;
    font-weight: 300;
    line-height: 1.2; }

.display-3 {
    font-size: 4.5rem;
    font-weight: 300;
    line-height: 1.2; }

.display-4 {
    font-size: 3.5rem;
    font-weight: 300;
    line-height: 1.2; }

hr {
    margin-top: 1rem;
    margin-bottom: 1rem;
    border: 0;
    border-top: 1px solid rgba(30, 35, 38, 0.1); }

small,
.small {
    font-size: 80%;
    font-weight: 400; }

mark,
.mark {
    padding: 0.2em;
    background-color: #fcf8e3; }

.list-unstyled {
    padding-left: 0;
    list-style: none; }

.list-inline {
    padding-left: 0;
    list-style: none; }

.list-inline-item {
    display: inline-block; }
    .list-inline-item:not(:last-child) {
        margin-right: 0.5rem; }

.initialism {
    font-size: 90%;
    text-transform: uppercase; }

.blockquote {
    margin-bottom: 1rem;
    font-size: 1.25rem; }

.blockquote-footer {
    display: block;
    font-size: 80%;
    color: #808285; }
    .blockquote-footer::before {
        content: "\2014\00A0"; }

.btn {
    border-radius: 24px;
    font-family: Barlow, sans-serif;
    font-weight: 500;
    text-transform: uppercase; }

.btn-primary, .btn-blue {
    background: #3687FF;
    color: #fff !important; }
    .btn-primary:hover, .btn-primary:target, .btn-blue:hover, .btn-blue:target {
        background: #396FBF;
        color: #fff; }

.btn-primary-ghost {
    border: 2px solid #3687FF;
    color: #3687FF; }
    .btn-primary-ghost:hover, .btn-primary-ghost:target {
        background: #396FBF;
        border: 2px solid #396FBF;
        color: #1E2326; }

.btn-secondary-ghost {
    border: 2px solid #1E2326;
    color: #1E2326; }
    .btn-secondary-ghost:hover, .btn-secondary-ghost:target {
        border: 2px solid #396FBF;
        color: #1E2326; }

.top-bar {
    background-color: #1E2326;
    color: #fff;
    height: 37px; }
    @media (max-width: 1150px) {
        .top-bar {
            display: none; } }
    @media (min-width: 1400px) {
        .top-bar .client-login {
            display: none; } }
    .top-bar li {
        height: 37px;
        overflow: hidden;
        position: relative;
        line-height: 34px;
        padding-left: 0.9375rem;
        font-size: 0.875rem;
        font-family: Roboto, sans-serif; }
        .top-bar li a:link, .top-bar li a:visited {
            color: #fff; }

.sr-main-header {
    padding-top: 0.9375rem;
    padding-bottom: 0.9375rem;
    display: none; }
    @media (min-width: 1310px) {
        .sr-main-header {
            display: block; } }
    .sr-main-header-mobile {
        display: block;
        width: 100%; }
        @media (min-width: 1310px) {
            .sr-main-header-mobile {
                display: none; } }
        .sr-main-header-mobile .logo {
            padding-left: 15px;
            display: inline-block; }
        .sr-main-header-mobile .navbar-toggler-right {
            float: right;
            padding-right: 15px; }
    .sr-main-header .container-fluid {
        display: flex; }
    @media (min-width: 1200px) {
        .sr-main-header {
            align-items: center;
            justify-content: center; } }
    .sr-main-header .logo img {
        width: 200px; }
    .sr-main-header nav .navbar-nav {
        flex-direction: row; }
        .sr-main-header nav .navbar-nav .nav-link {
            font-family: Barlow, sans-serif;
            font-weight: 600;
            letter-spacing: 0.4px;
            color: #3B4148;
            text-transform: uppercase; }
            @media (min-width: 1310px) {
                .sr-main-header nav .navbar-nav .nav-link {
                    padding: 0 0.625rem; } }
            @media (min-width: 1600px) {
                .sr-main-header nav .navbar-nav .nav-link {
                    padding: 0 0.9375rem; } }
    .sr-main-header .top-bar-buttons {
        margin: .6rem 0; }
    .sr-main-header .client-login {
        display: none; }
        @media (min-width: 1400px) {
            .sr-main-header .client-login {
                display: block; } }
    .sr-main-header .navbar-toggler .icon-bar {
        display: block;
        width: 22px;
        height: 2px;
        border-radius: 1px;
        margin: 4px 0 4px 0;
        transition: all 0.2s;
        background: #fff; }
    @media (max-width: 1309px) {
        .sr-main-header .mobile-nav-button {
            float: right;
            margin-left: auto;
            padding-right: 1rem; }
            .sr-main-header .mobile-nav-button button {
                background: #3687FF;
                color: #fff;
                margin-top: .5rem; }
                .sr-main-header .mobile-nav-button button .navbar-toggler-icon {
                    color: #fff; } }
    @media (min-width: 1310px) {
        .sr-main-header .mobile-nav-button {
            display: none; } }
    .sr-main-header .mobile-nav {
        z-index: 10000;
        position: relative;
        background: #1E2326;
        color: #fff !important;
        width: 100%;
        text-align: left; }
        .sr-main-header .mobile-nav .navbar-nav {
            flex-direction: column;
            margin-left: 0; }
            .sr-main-header .mobile-nav .navbar-nav .dropdown:hover > .dropdown-menu {
                display: block;
                margin: 0; }
        .sr-main-header .mobile-nav .nav-item {
            display: flex;
            flex-wrap: wrap;
            text-align: left;
            padding: 1rem;
            border-bottom: 1px solid #fff;
            list-style: none;
            align-items: center;
            color: #fff; }
            .sr-main-header .mobile-nav .nav-item:last-child {
                border-bottom: 0; }
            .sr-main-header .mobile-nav .nav-item .icn {
                margin-left: auto; }
            .sr-main-header .mobile-nav .nav-item:hover, .sr-main-header .mobile-nav .nav-item:target {
                background: transparent; }
            .sr-main-header .mobile-nav .nav-item .nav-link {
                color: #fff !important; }
            .sr-main-header .mobile-nav .nav-item .dropdown-toggle::after {
                display: none; }
            @media (max-width: 1199px) {
                .sr-main-header .mobile-nav .nav-item .dropdown-menu {
                    position: relative !important;
                    top: -50px !important;
                    width: 100%;
                    border: 0;
                    background: transparent;
                    padding: 0 !important; } }
            .sr-main-header .mobile-nav .nav-item .dropdown-menu a:link, .sr-main-header .mobile-nav .nav-item .dropdown-menu a:visited {
                color: #fff !important; }
            .sr-main-header .mobile-nav .nav-item .dropdown-menu .dropdown-item {
                padding: 0 !important; }
                .sr-main-header .mobile-nav .nav-item .dropdown-menu .dropdown-item.active {
                    background: transparent; }

.sustaining .header-banner-pane {
    margin-bottom: 2rem; }

.footer-nav {
    padding-top: 1rem; }
    .footer-nav a:link, .footer-nav a:visited {
        font-family: Barlow, sans-serif;
        color: #1E2326;
        font-weight: 700;
        text-transform: uppercase;
        white-space: nowrap; }
        @media (min-width: 1366px) {
            .footer-nav a:link, .footer-nav a:visited {
                white-space: normal; } }
    .footer-nav .client-login {
        margin-left: -35px;
        margin-top: 32px; }
        @media (min-width: 992px) {
            .footer-nav .client-login {
                margin-left: 0; } }
    .footer-nav .nav-link {
        padding-bottom: 0; }
    .footer-nav .top-footer-nav {
        font-size: 1.125rem;
        padding: 0; }
        .footer-nav .top-footer-nav > ul {
            margin-left: 25px; }
            @media (min-width: 1200px) {
                .footer-nav .top-footer-nav > ul {
                    margin: 0; } }
        @media (min-width: 992px) {
            .footer-nav .top-footer-nav {
                padding: .5rem 1rem; } }
    .footer-nav .bottom-footer-nav {
        font-size: 1rem;
        padding: 0 0 2rem; }
        @media (min-width: 992px) {
            .footer-nav .bottom-footer-nav {
                padding: .5rem 1rem; } }
    .footer-nav .contact-bar {
        padding-bottom: 6.25rem; }
        .footer-nav .contact-bar a:link, .footer-nav .contact-bar a:visited {
            text-transform: none;
            font-family: Roboto, sans-serif;
            color: #3687FF;
            font-weight: 400; }
            .footer-nav .contact-bar a:link a:hover, .footer-nav .contact-bar a:link a:target, .footer-nav .contact-bar a:visited a:hover, .footer-nav .contact-bar a:visited a:target {
                font-weight: 700; }
            .footer-nav .contact-bar a:link .social-media-icon, .footer-nav .contact-bar a:visited .social-media-icon {
                width: 30px;
                margin-top: .5rem;
                margin-right: .5rem; }
        .footer-nav .contact-bar .footer-logo img {
            width: 285px; }
        @media (max-width: 767px) {
            .footer-nav .contact-bar .footer-logo {
                padding-bottom: 1rem; } }
        .footer-nav .contact-bar h2 {
            font-size: 1.125rem;
            color: #1E2326;
            line-height: 1;
            font-weight: 600; }
        @media (min-width: 768px) {
            .footer-nav .contact-bar {
                border-top: 1px solid #BCBEC0;
                padding-top: 2rem;
                margin-top: 2rem; } }
    .footer-nav .btn-blue {
        font-weight: 500 !important; }
    .footer-nav .far {
        margin-right: 0.5rem; }
    @media (max-width: 767px) {
        .footer-nav {
            text-align: center;
            line-height: 1.2; } }
    @media (min-width: 992px) {
        .footer-nav .navbar-expand-lg .navbar-nav .nav-link {
            padding-right: .75rem;
            padding-left: .75rem; } }

.copyright-footer {
    background: #1E2326;
    color: #fff;
    padding-top: .75rem;
    padding-bottom: .75rem; }
    .copyright-footer ul {
        margin-bottom: 0;
        margin-left: 0; }
    .copyright-footer a:link, .copyright-footer a:visited {
        color: #fff; }
    .copyright-footer .list-inline-item:not(:last-child) {
        margin-right: 0.75rem; }
    @media (max-width: 767px) {
        .copyright-footer .text-right {
            text-align: center !important;
            margin-top: .5rem; } }
    @media (max-width: 767px) {
        .copyright-footer {
            text-align: center;
            font-size: .75rem; } }
    @media (min-width: 1200px) {
        .copyright-footer {
            padding-left: 1rem;
            padding-right: 1rem; } }
