:root {
    font-size: 62.5%;
}
html {
    --black: #0d0d0d;
    --white: #fff;
    --TNW-Blue: #0055a5;
    --TNW-Yellow: #ffc526;
    --DarkGray: #333;
    --MediumGray: #878787;
    --LightGray: #e5e6e6;
    --LightBlue: #ccdded;
    --MaterialSymbols: 'Material Symbols Outlined';
    --PTSansBold: 'PT Sans Bold', sans-serif;
    --PTSansBoldItalic: 'PT Sans Bold Italic', sans-serif;
    --PTSansItalic: 'PT Sans Italic', sans-serif;
    --PTSansRegular: 'PT Sans Regular', sans-serif;
    --Arial: Arial, Helvetica, sans-serif;
    --stickyHeaderTransition: all .3s ease-in-out;
    box-sizing: border-box;
}
*, *:before, *:after {
	box-sizing: inherit;
}
body {
    font-size: 1.6rem;
    line-height: 1.5rem;
}

a:link, a:visited {
    color: var(--TNW-Blue);
}
a:hover, a:active {
    background-color: var(--LightBlue);
}

h1 {
    font-family: var(--PTSansRegular);
    font-size: 3rem;
    color: var(--TNW-Blue);
    line-height: 1.3;
    margin-bottom: 2rem;
}
h2 {
    font-family: var(--PTSansRegular);
    font-size: 2.3rem;
    color: var(--black);
    line-height: 1.3;
    margin: 3.25rem 0 .6rem;
}
h3 {
    font-family: var(--PTSansRegular);
    font-size: 1.8rem;
    color: var(--TNW-Blue);
    text-transform: uppercase;
    line-height: 1.3;
    margin: 2rem 0 .6rem;
}

@media screen and (min-width: 992px) {
    h1 {
        font-size: 4.5rem;
        margin-bottom: 2.4rem;
    }
    h2 {
        font-size: 2.8rem;
    }
    h3 {
        font-size: 2.2rem;
    }
}

.material-symbols-outlined {
    font-family: var(--MaterialSymbols);
    font-size: 2rem;
    line-height: 1;
}
.Normal img {
    width: 100%;
	max-width: 100%;
}

.banner-section {
    background-image: url('../images/dark-spiral-pattern.jpg');
}
.banner-section.home {
    background-color: transparent;
}

#main_content {
    padding: 0;
}
#main_content.home {
    padding: 0;
}
#main_content .Normal {
    font-family: var(--Arial);
    font-size: 1.6rem;
    line-height: 1.5;
    color: #333;
}
#section1 {
    /*padding-bottom: 3.5rem;*/
}
@media screen and (min-width: 992px) {
    #main_content {
        /*padding: 6rem 0 0;*/
    }
}

#section3 {
    background-color: rgba(126,128,131, .2);
}
@media screen and (min-width: 992px) {
    #section3 .row .col {
        display: flex;
        flex-direction: column;
        justify-content: center;
    }
}

/* Login module */
.LoginPanel {
    padding: 50px 0;
    float: none;
    margin: 0 auto;
}
.LoginPanel a.dnnPrimaryAction {
    color: var(--white);
}