

/* Typography  */
@media all {

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

    body, input:not([type="radio"]):not([type="checkbox"]), button, select, textarea {
        font-family: Calibri, Candara, Segoe, "Segoe UI", Optima, -apple-system,BlinkMacSystemFont,Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;
        font-size: 100%;
        font-weight: 400;
        line-height: 1.5;
        color: rgb(51,51,51);
        background: rgb(255,255,255);
    }

    b, strong, dt { font-weight: 600; }

    a {
        color: rgb(0,76,159);
        text-decoration: none;
    }

    .h1-like,.h2-like,.h3-like,.h4-like,.h5-like,
    h1,h2,h3,h4,h5 {
        margin: 0;
        line-height: 1.25;
        font-weight: normal;
        /* text-transform: uppercase; */
    }
    .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: 150%;
    }
    .h2-like,
    h2 {
        font-size: 125%;
    }

    .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; }

    .ce-header-subheader,
    .ce-header-date {
        margin-top: 0.3125rem;
    }

    .ce-header-subheader {
        margin-top: 0.625rem;
    }
    .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;
    }

    /* text flow */
    h1, h2, h3, h4, h5, h6
    p, li, a, figcaption {
        overflow-wrap: break-word;
        word-wrap: break-word;
        -webkit-hyphens: auto;
        -moz-hyphens: auto;
        -ms-hyphens: auto;
        hyphens: auto;
    }

}


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

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

    .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;
    }

	.page-footer-bottom .ce-grid-75-25 .ce-col .h5-like {
		min-height: 60px;
	}
}

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

    body {
        font-size: 106.25%;
    }

    .h1-like,
    h1 {
        font-size: 225%;
    }

    .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;
    }

	.page-footer-bottom .ce-grid-75-25 .ce-col .h5-like {
		min-height: 46px;
	}
}
