@font-face {
    font-family: "Libre Baskerville";
    src: url("fonts/Libre_Baskerville/LibreBaskerville-Italic.ttf") format("truetype");
    font-style: italic;
    font-weight: normal;
}

@font-face {
    font-family: "Noto Sans";
    src: url("fonts/Noto_Sans/NotoSans-Bold.ttf") format("truetype");
    font-style: normal;
    font-weight: bold;
}

@font-face {
    font-family: "Source Sans Pro";
    src: url("fonts/Source_Sans_Pro/SourceSansPro-Regular.ttf") format("truetype");
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: "Source Sans Pro";
    src: url("fonts/Source_Sans_Pro/SourceSansPro-Light.ttf") format("truetype");
    font-style: normal;
    font-weight: 300;
}

@font-face {
    font-family: "Source Sans Pro";
    src: url("fonts/Source_Sans_Pro/SourceSansPro-Bold.ttf") format("truetype");
    font-style: normal;
    font-weight: bold;
}

html {
    font-size: 0.625em;
}

body, input, textarea, keygen, select, button{
    font-family: 'Source Sans Pro',Arial,Helvetica,sans-serif;
    color:#333;
}

/** animations **/
@-moz-keyframes spin { 100% { -moz-transform: rotate(360deg); } }
@-webkit-keyframes spin { 100% { -webkit-transform: rotate(360deg); } }
@keyframes spin { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } }
/** /animations **/

/** img lazy loading **/
[src=""]{
    visibility: hidden;
}

/*.imgLoad{
    position: relative;
}

.imgLoad.loading:before{
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    left: 0;
    font-size: 32px;
    color: #c4352e;
    content: "\f110";
    text-align: center;
    -webkit-animation: spin 1250ms linear infinite;
    -moz-animation: spin 1250ms linear infinite;
    animation: spin 1250ms linear infinite;
}*/

/** /img lazy loading **/

textarea{
    resize: none;
}

p{
    font-size: 1.6em;
    margin: 0 0 1em;
    color: #333;
    line-height: 1.6em;
}

a{
    text-decoration: none;
    color: #c4352e;
}

h1, h2, h3, h4, h5, h6{
    font-weight: normal;
    margin: 0 0 1em;
}

/*h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child{
     margin-top: 0; 
}*/

h1{
    font-family: Baskerville, "Libre Baskerville";
    font-weight: normal;
    color: #132649;
    font-size: 3em;
    line-height: 1.4em;
    margin: 0 0 0.5em;
    font-style: italic;
    /* word-spacing: 0; */
}

h2{
    font-size: 2.8em;
}

h3{
    font-size: 2.6em;
}

h4{
    font-size: 2.4em;
}

h5{
    font-size: 2.2em;
}

h6{
    font-size: 2em;
}

ul{
    font-size: 1.6em;
    color: #333;
}

ul ul{
    font-size: inherit;
}

label{
    font-size: 1.6em;
}

#frame label *{
    font-size: inherit;
}

legend{
    font-size: 1.6em;
}

input[type="text"],
input[type="password"],
select, textarea{
    border: 1px solid #e0e0e0;
    padding: 7px 20px;
    font-size: 1.6em;
    margin: 0;
    -webkit-border-radius: 1px 1px 1px 1px;
    border-radius: 1px 1px 1px 1px;
    vertical-align: middle;
    background: #fff;
    width: 100%;
}

input[type="checkbox"].error,
input[type="radio"].error,
input[type="text"].error,
input[type="password"].error,
select.error, textarea.error{
    border: 2px solid red;
}

.button,
button,
input[type="submit"],
input[type="button"],
input[type="reset"]{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;

    display: inline-block;
    padding: 0.75em 1.5em;
    background: #c4352e;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    color: #fff;
    border: none;
    font-size: 1.6em;
    cursor: pointer;
}

.button.continue,
button.continue,
input[type="submit"].continue,
input[type="button"].continue,
input[type="reset"].continue{
    float:right;
}

.button.back,
button.back,
input[type="submit"].back,
input[type="button"].back,
input[type="reset"].back,
.button.cancel,
button.cancel,
input[type="submit"].cancel,
input[type="button"].cancel,
input[type="reset"].cancel{
    background: #132649;
}

button.back.asLink,
button.cancel.asLink,
a.back,
a.cancel{
    display: inline-block;
    font-size: 1.6em;

    cursor: pointer;

    background: transparent;
    color: #132649;
    padding: 0.75em 1.5em 0.75em 0;
}

button.back.asLink:before,
button.cancel.asLink:before,
a.back:before,
a.cancel:before{
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-weight: normal;
    content: "\f053";
    padding-right: 15px;
    font-size: 0.8em;
}

.button[disabled="disabled"],
button[disabled="disabled"],
input[type="submit"][disabled="disabled"],
input[type="button"][disabled="disabled"]{
    background: #999;
}

.button.loading:after,
button.loading:after,
input[type="submit"].loading:after,
input[type="button"].loading:after{
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #fff;
    content: "\f110";
    -webkit-animation:spin 1250ms linear infinite;
    -moz-animation:spin 1250ms linear infinite;
    animation:spin 1250ms linear infinite;
    margin: 0 0 0 0.25em;
}

table{
    font-size: 1.4em;
    margin-bottom: 1em;
}

th,td{
    text-align: left;
}

a.highlighted{
    font-size: 1.6em;
    color: #132648;
    border: 1px solid #2d3e5c;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    padding: 0.75em 1.5em;
    display: inline-block;
    margin-bottom: 1em;
}

/* prevent upscaling of font-size */
table *{
    font-size: inherit;
}

/* work around for font size */
body .main table input{
    font-size: inherit;
}

.backlink{
    font-size: 1.4em;
    color: #132648;
    display: inline-block;
    margin-bottom: 1em;
}

.backlink:before{
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-weight: normal;    

    content: "\f053";
    padding-right: 15px;
    font-size: 0.8em;
}

.warning h2,
.message-warning h2{
    color: red;
}

/* html snippets used as templates */
.tpl{
    display: none;
}

/* generally render all images responsively according to their container on small devices */
.content-view-embed img{
    width: 100%;
    height: auto;
    /* float: none; */
}

.content-view-embed .class-image{
    margin-bottom: 1em;
}


@media (min-width: 768px){
    .content-view-embed img{
        width: auto;
        height: auto;
        /* float: none; */
    }

    div.object-left, table.object-left 
    {
        float: left;
        clear: left;
        margin-right: 1em;
    }

    div.object-right, table.object-right
    {
        margin-left: 1em;
        float: right;
        clear: right;
    }

    div.object-center, table.object-center
    {
        margin: 1em auto 1em auto;
    }
}

