/* Fonts - https://google-webfonts-helper.herokuapp.com/fonts */

/* roboto-regular - latin-ext */
/*@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
src: local('Roboto'), local('Roboto-Regular'),
url('../Fonts/roboto-v18-latin-ext-regular.woff2') format('woff2'),  Chrome 26+, Opera 23+, Firefox 39+ 
url('../Fonts/roboto-v18-latin-ext-regular.woff') format('woff');  Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ 
}*/

/* Typography  */
@media all {

    /* html { font-size: 1rem; height: 100%; background: rgb(51,51,51); } */

    body, input:not([type="radio"]):not([type="checkbox"]), button, select, textarea {
        font-family: nerislight, -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;
        /* uncomment with other font stacks: font-display: fallback */
        font-size: 112.5%;
        font-weight: 400;
        line-height: 1.5;
        color: rgb(110,110,110);
        background: rgb(255,255,255);
    }

    b, strong, dt {
        font-weight: 600;
        color:rgb(95,167,54);
    }

    a {
        color: rgb(110,110,110);
        text-decoration: underline; 
        text-decoration-skip: ink;
    }
    footer a {
        color:rgb(255,255,255);
    }
    footer a:not(.btn):hover,
    footer a:not(.btn):focus{
        text-decoration: underline;
        color:rgb(255,255,255);
    }
    .h1-like,.h2-like,.h3-like,.h4-like,.h5-like,
    h1,h2,h3,h4,h5 {
        margin: 0;
        line-height: 1.25;
        font-weight: normal;
    }
    .h1-like a,.h2-like a,.h3-like a,.h4-like a,.h5-like a,
    h1 a, h2 a, h3 a, h4 a,h5 a {
        /* color: rgb(70,70,70); FIXME */
        text-decoration: none;
    }

    .h1-like,
    h1 {
        font-size: 2.5rem;
        text-transform: uppercase;
    }
    .h2-like,
    h2 {
        font-size: 125%;
        text-transform: uppercase;
    }

    .h3-like,
    h3 {
        font-size: 112.5%;
    }
    .h4-like,
    h4 {
        font-weight: 600;
    }

    blockquote {
        margin-left: 1.25rem;
        border-left: 4px solid rgb(204,204,204);
        padding: 0.9375rem 0 0 1.25rem;
        font-style: italic;
    }

    blockquote::after {
        content: "";
        display: table;
    }

    /* margins */

    .ce-news,
    .ce-header,
    .ce-teaserlink-outer,
    table,
    p, ul, ol, dl {
        margin: 0 0 0.9375rem;
    }
    .banner p:last-child{
        margin:0;
    }
    .ce-header-date {
        margin-top: 0.3125rem;
    }

    .ce-header-date {
        margin: 0.625rem 0 0;
    }
    ul ul,
    ul ol,
    ol ul,
    ol ol { margin:0; }

    .ce-menu .ce-menu {
        margin-left: 1.25rem;
    }

    hr,
    .ce-div {
        border: none;
        border-top: 1px solid rgb(51,51,51);
        margin: 0;
        height:0.9375rem;
    }

    /* text flow */
    p, li, a, figcaption {
        overflow-wrap: break-word;
        word-wrap: break-word;
        -webkit-hyphens: auto;
        -moz-hyphens: auto;
        -ms-hyphens: auto;
        hyphens: auto;
    }
    .topnav a{
        color:rgb(255,255,255);
        text-decoration: none;
    }
    .logo-subline-text{
        color:rgb(255,255,255);
        font-size:1rem;
    }
    .page-header a{
        font-size:1rem;
    }
    .banner .ce-header > *{
        text-transform: uppercase;
        font-size:1.25rem;
        letter-spacing:2px;
    }
    .banner a{
        text-decoration: none;
    }
    .banner .ce-header > .ce-header-subheader{
        font-weight:600;
        color:rgb(95,167,54);
    }
    .content .ce-header-center{
        display:flex;
        justify-content: center;
        flex-direction: column-reverse;
        max-width:45rem;
        margin:0 auto;
        margin-bottom: 0.9375rem;
    }
    .ce-layout-quoteimage .ce-header{
        max-width: 30rem;
    }
    .content .ce-header > *:not(.ce-header-subheader){
        color:rgb(95,167,54);
    }
    .content .ce-header .ce-header-subheader{
        color:rgb(176,177,177);
    }
    .ce-frame-containerGreyText .ce-header > *:not(.ce-header-subheader){
        text-transform:none;
        color:rgb(176,177,177);
    }
    .ce-layout-quoteimage .ce-header > *:not(.ce-header-subheader){
        text-transform: none;
        color:rgb(178,178,178);
    }
    footer p{
        -webkit-hyphens: auto;
        -ms-hyphens: auto;
        hyphens: auto;
    }
}
@media all and (min-width: 47.5em), print {
    .logo-subline-text{
        font-size:1.25rem;
    }
}

/* large */
@media all and (min-width: 62.5em) {
    /* typography */

    .h1-like,
    h1 {
        font-size: 3.75rem;
    }
    .h2-like,
    h2 {
        font-size: 150%;
    }

    .h2-like.ce-header-subheader,
    h2.ce-header-subheader {
        font-size: 1.25rem;
        margin-bottom:1.25rem;
    }
    .content .ce-header > *:not(.ce-header-subheader){
        margin-bottom:1.25rem;
    }
    .ce-layout-quoteimage .ce-header > *:not(.ce-header-subheader){
        margin-bottom:0;
    }
    .page-sidebar h2,
    .page-footer h2 {
        font-size: 125%;
    }

    .h3-like,
    h3 {
        font-size: 125%;
    }

    .page-sidebar h3,
    .page-footer h3 {
        font-size: 112.5%;
    }

    .h4-like,
    h4 {
        font-size: 112.5%;
        font-weight: inherit;
    }

    .h5-like,
    h5 {
        font-weight: 600;
    }
    .sf-sub li .item{
        -moz-hyphens: none;
        hyphens: none;
    }
}

/* xlarge */
@media all and (min-width: 82.5em) {
    /* typography */

    .h1-like,
    h1 {
        font-size: 200%;
        font-size: 3.75rem;
    }

    .h2-like,
    h2 {
        font-size: 175%;
    }

    .page-sidebar h2,
    .page-footer h2 {
        font-size: 150%;
    }

    .h3-like,
    h3 {
        font-size: 150%;
    }

    .page-sidebar h3,
    .page-footer h3 {
        font-size: 125%;
    }

    .h4-like,
    h4 {
        font-size: 125%;
    }

    .h5-like,
    h5 {
        font-size: 112.5%;      
        font-weight: inherit;
    }

}
