.format > *:first-child {
    margin-top: 0;
    margin-top: 0;
}

.format {
    font-size: 1rem;
}

@media only screen and (min-width: 37.5em) {
    .format {
        font-size: 1rem;
    }
}

.format h1 {
    margin-top: 3rem;
    font-size: 2rem;
    line-height: 1.2;
}

@media only screen and (min-width: 37.5em) {
    .format h1 {
        font-size: 2.1rem;
    }
}
@media only screen and (min-width: 74em) {
    .format h1 {
        font-size: 2.2rem;
    }
}

@media only screen and (min-width: 37.5em) {
    .format h1 small {
        font-size: 1.8rem;
    }
}
.format h2, .format h3, .format h4, .format h5, .format h6 {
    line-height: 1.2;
}

.format h2 {
    margin-top: 2.8rem;
    font-size: 1.9rem;
}

.format h3 {
    margin-top: 2.4rem;
    font-size: 1.6rem;
}

.format h4 {
    margin-top: 2rem;
    font-weight: 700;
    font-size: 1.5rem;
}

.format h5 {
    margin-top: 1.8rem;
    font-weight: 700;
    font-size: 1.4rem;
}

.format h6 {
    margin-top: 0.8rem;
    font-weight: 700;
    font-size: 1.3rem;
}

.format small {
    font-size: 12px;
}

.format a:not(.btn) {
    text-decoration: underline;
    text-underline-position: under;
    text-decoration-color: rgba(0,0,0,.12);
}

.format a:not(.btn):hover {
    text-decoration-color: #ffaf04;
}

.format iframe {
    width: 100%;
}

.format table {
    border-collapse: collapse;
    overflow: auto;
    margin: 0.5rem 0 1rem;
    width: 100%;
}

.table-wrapper {
    overflow-x: auto;
}

.format table:not([border="0"]) td, .format table:not([border="0"]) th {
    padding: 6px 12px;
    text-align: center;
}

.format table tr:hover td {
    background-color: #f7f7f7;
    color: #000;
}

.block-table.is-style-stripes td {
    border-bottom: 1px solid #ebebeb;
}

.format .block-table.is-style-stripes tr:nth-child(odd) {
    background-color: #f7f7f7;
}

.format .block-table.is-style-stripes thead th {
    color: #0a8fd2;
}

.format .block-table.is-style-stripes thead tr {
    background: -webkit-gradient(linear, left top, right top, from(#f0f0f0), to(#e1e1e1));
    background: -webkit-linear-gradient(left, #f0f0f0 0%, #e1e1e1 100%);
    background: -moz-linear-gradient(left, #f0f0f0 0%, #e1e1e1 100%);
    background: -o-linear-gradient(left, #f0f0f0 0%, #e1e1e1 100%);
    background: linear-gradient(to right, #f0f0f0 0%, #e1e1e1 100%);
}
.format table:not([border="0"]):not(.is-style-stripes) td,
.format table:not([border="0"]):not(.is-style-stripes) th {
    border: 1px solid #cecece;
}

.format figure.is-style-stripes table:not([border="0"]) td,
.format figure.is-style-stripes table:not([border="0"]) th {
    border-color: transparent;
}

.format table th, .format table td, .format table tr {
    padding: 0.5rem;
    border: 1px solid #dedede;
}

.format code {
    padding: 0 2px;
    -webkit-border-radius: 4px;
       -moz-border-radius: 4px;
            border-radius: 4px;
    background: #f5f7fc;
    font-family: "Source Code Pro", monaco, menlo, consolas, monospace;
}
.format blockquote {
    margin: 2rem 0;
    padding: 0 4rem;
    border-left: 3px solid silver;
    color: #a0a0a0;
}

.format ul {
    margin: 0.75em 0;
    padding: 0 1em;
    list-style: none;
}

.format li > ul {
    margin-top: 0;
}

.format ul > li {
    position: relative;
}

.format ul > li:before {
    content: "";
    position: absolute;
    top: 0.5em;
    left: -1em;
    display: inline-block;
    float: left;
    width: 0;
    height: 0;
    border-width: .35em 0 .35em .45em;
    border-style: solid;
    border-color: transparent #312783;
}

.format ol {
    margin: 0;
    padding: 1.2em 1em 0 2em;
    list-style: none;
    counter-reset: format-counter;
    counter-reset: format-counter calc(var(--format-counter) - 1);
}

.format ol > li {
    position: relative;
    margin-bottom: 0.45rem;
    counter-increment: format-counter;
}

.format ol > li:before {
    content: counter(format-counter);
    position: absolute;
    top: 0.1em;
    left: -2.2em;
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    background: #009ad1;
    color: white;
    text-align: center;
    font-size: 0.9em;
    line-height: 1.5;
}

.format ol ol > li::before {
    background: #0086b6;
}

.format ol ol ol > li::before {
    background: #006f96;
}

.format a:not([class]):not([class=""]):not([style]):not([style=""]):before {
    position: relative;
    display: inline-block;
    width: 1.5em;
    height: 0.9em;
    margin: -0.1em 0;
    font-family: 'saof';
    text-align: center;
    /* top: 0.1em; */
    text-align: left;
    text-decoration: underline;
}
/* fix for IE11 */
.format a:not([class]):not([class=""]):not([style]):not([style=""]):before {
    text-decoration: none;
}

.format a[target="_blank"]:not([class]):not([class=""]):not([style]):not([style=""]):before {
    content: "\e900";
}

.format .block-image a[target="_blank"]:not([class]):not([class=""]):not([style]):not([style=""]):before {
    display: none;
}

.format a {
    overflow-wrap: break-word;
    word-wrap: break-word;
    -ms-word-break: break-all;
    word-break: break-all;
    word-break: break-word;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
    color: #312783;
}
.format a.favicon {
    padding-left: 1.5em;
    transition: all .3s ease-in-out, padding 0s, background-position 0s;
    background-position: 0.1em center;
    background-repeat: no-repeat;
    background-size: 1em auto;
}

[class^="icon-"]:before, [class*=" icon-"]:before,
.format a:not([class]):not([class=""]):not([style]):not([style=""]):before {
    opacity: 0;
    -webkit-transition: opacity .3s ease-in-out 0.2s;
    -moz-transition: opacity .3s ease-in-out 0.2s;
    -o-transition: opacity .3s ease-in-out 0.2s;
    transition: opacity .3s ease-in-out 0.2s;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    [class^="icon-"]:before, [class*=" icon-"]:before,
    .format a:not([class]):not([class=""]):not([style]):not([style=""]):before {
        opacity: 1;
    }
}

html.wf-saof-active [class^="icon-"]:before,
html.wf-saof-active [class*=" icon-"]:before,
html.wf-saof-active .format a:not([class]):not([class=""]):not([style]):not([style=""]):before {
    opacity: 1;
}

.format a[href^="mailto:"]:not([class]):not([class=""]):not([style]):not([style=""]):before {
    content: "\e903";
    top: 0.1em;
}
.format a[href^="tel:"]:not([class]):not([class=""]):not([style]):not([style=""]):before {
    content: "\e90a";
}
.format a[href*=".xls"]:not([class]):not([class=""]):not([style]):not([style=""]):before {
    content: "\e90d";
}
.format a[href*=".pdf"]:not([class]):not([class=""]):not([style]):not([style=""]):before {
    content: "\e90f";
}
.format a[href*=".mp4"]:not([class]):not([class=""]):not([style]):not([style=""]):before {
    content: "\e902";
}
.format a[href*=".ppt"]:not([class]):not([class=""]):not([style]):not([style=""]):before {
    content: "\e910";
}
.format a[href*=".doc"]:not([class]):not([class=""]):not([style]):not([style=""]):before {
    content: "\e90e";
}
.format a[href*=".zip"]:not([class]):not([class=""]):not([style]):not([style=""]):before {
    content: "\e90c";
}

.format ul[class*='blocks'] {
    margin: inherit;
    padding: inherit;
}

.format ul[class*='blocks'] li:before {
    display: none;
}

@media only screen and (min-width: 70em) {
    .format .block-image.alignright {
        float: right;
        margin: 0 0 1rem 1rem;
    }
}