@font-face {
font-family: 'Droid';
src: url('../fonts/DroidSerif-Regular.woff') format('woff');
font-weight: 400;
font-style: normal;
}
@font-face {
font-family: 'Droid';
src: url('../fonts/DroidSerif-Italic.woff') format('woff');
font-weight: 400;
font-style: italic;
}
@font-face {
font-family: 'Droid';
src: url('../fonts/DroidSerif-Bold.woff') format('woff');
font-weight: 700;
font-style: normal;
}
@font-face {
font-family: 'Droid';
src: url('../fonts/DroidSerif-BoldItalic.woff') format('woff');
font-weight: 700;
font-style: italic;
}


@font-face {
font-family: 'Roboto';
src: url('../fonts/Roboto-Thin.woff') format('woff');
font-weight: 200;
font-style: normal;
}
@font-face {
font-family: 'Roboto';
src: url('../fonts/Roboto-Light.woff') format('woff');
font-weight: 300;
font-style: normal;
}
@font-face {
font-family: 'Roboto';
src: url('../fonts/Roboto-Regular.woff') format('woff');
font-weight: 400;
font-style: normal;
}
@font-face {
font-family: 'Roboto';
src: url('../fonts/Roboto-Italic.woff') format('woff');
font-weight: 400;
font-style: italic;
}
@font-face {
font-family: 'Roboto';
src: url('../fonts/Roboto-Medium.woff') format('woff');
font-weight: 500;
font-style: normal;
}
@font-face {
font-family: 'Roboto';
src: url('../fonts/Roboto-MediumItalic.woff') format('woff');
font-weight: 500;
font-style: italic;
}
@font-face {
font-family: 'Roboto';
src: url('../fonts/Roboto-Bold.woff') format('woff');
font-weight: 700;
font-style: normal;
}
@font-face {
font-family: 'Roboto';
src: url('../fonts/Roboto-BoldItalic.woff') format('woff');
font-weight: 700;
font-style: italic;
}




@font-face {
font-family: 'RobotoCondensed';
src: url('../fonts/RobotoCondensed-Regular.woff') format('woff');
font-weight: 400;
font-style: normal;
}
@font-face {
font-family: 'RobotoCondensed';
src: url('../fonts/RobotoCondensed-Italic.woff') format('woff');
font-weight: 400;
font-style: italic;
}
@font-face {
font-family: 'RobotoCondensed';
src: url('../fonts/RobotoCondensed-Bold.woff') format('woff');
font-weight: 700;
font-style: normal;
}
@font-face {
font-family: 'RobotoCondensed';
src: url('../fonts/RobotoCondensed-BoldItalic.woff') format('woff');
font-weight: 700;
font-style: italic;
}



@font-face {
font-family: 'Icomoon';
src: url('../fonts/icomoon2.woff') format('woff');
font-weight: normal;
font-style: normal;
}


[class*="icon"],
a#navmaintrigger::after,
.pagenav_article a.prev::before,
.pagenav_article a.next::after,
#navmainswitch a::before,
#navmain .active a::before,
.text_framed::before,
.category_link a::before,
.next_category a::before {
font-family: 'icomoon' !important;
speak: none;
font-style: normal;
font-weight: normal !important;
font-variant: normal;
text-transform: none;
/*line-height: 1;*/
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}


html {
height: 100%;
box-sizing: border-box;
}

*, *::before, *::after {
box-sizing: inherit;
}


body {
min-height: 100vh;
margin: 0;
padding: 0;
font-family: 'Droid', serif;
font-size: 16px;
font-weight: 400;
line-height: 1.6;
color: #000;
hyphens: manual;
-ms-hyphens: manual;
-webkit-hyphens: manual;
background-color: #fff;
-moz-osx-font-smoothing: grayscale;
}

/* main containers */

.wrapper {
max-width: 1920px;
margin: 0 auto;
}

.top_flex {
min-height: 100vh;
display: flex;
flex-direction: column;
}

header {
flex-grow: 0;
background: #ccc url(../img/loader1.gif) no-repeat center center;
}
main {
flex: 1;
padding: 40px 0;
display: flex;
flex-flow: row nowrap;
position: relative;
}
.blog main {
background-color: #ECECEC;
}
.article main {
padding: 40px 0 20px;
}

footer {
flex-grow: 0;
font-family: 'RobotoCondensed', sans-serif;
font-size: 1em;
font-weight: 500;
background-color: #fff;
border-top: 1px solid #ccc;
}

.home footer,
.blog footer {
border: none;
}


.column_width {
width: 100%;
height: 100%;
max-width: 1600px;
margin: 0 auto;
padding: 0 30px;
}

/* end main containers */



/** header **/

.header_top {
display: flex;
flex-flow: row nowrap;
/*padding: 30px 0 0;*/
font-family: 'Roboto', sans-serif;
background-color: #fff;
}

.header_top .column_width {
display: flex;
flex-flow: row nowrap;
width: 100%;
max-width: 1600px;
margin: 0 auto;
padding: 0 30px;
}


header .left {
flex: 0 1 auto;
/*max-width: 340px;
min-width: 340px;*/
}
header .right {
flex: 1 1 auto;
text-align: right;
padding: 20px 0 0;
display: flex;
flex-flow: row nowrap;
justify-content: flex-end;
}

#site_title {
font-size: 2.5em;
font-weight: 300;
line-height: 1;
padding: 20px 0 24px;
}
#site_title span {
display: inline-block;
}
#site_title a .name {
color: #e21b22;
}
#site_title a .domain {
color: #0E3769;
}

.squares {
display: inline-block;
width: 20px;
height: 20px;
vertical-align: middle;
color: #e21b22;
}

.column_width.info {
position: relative;
width: 100%;
height: auto;
margin: 0 auto;
padding: 20px 30px 30px;
text-align: right;
display: flex;
justify-content: flex-end;
}
#imageinfo {
width: 28px;
height: 28px;
z-index: 101;
}
a#infoswitch {
width: 28px;
height: 28px;
padding: 6px;
line-height: 28px;
font-size: 16px;
background-color: #fff;
color: #000;
border-radius: 18px;
filter: drop-shadow(0px 0px 5px rgba(0,0,0,.5));
transition: all 0.33s ease;
}
a#infoswitch:hover,
a#infoswitch:focus {
color: #fff;
background-color: #E21B22;
}
#mast_caption {
display: none;
position: absolute;
right: 44px;
top: 34px;
width: 470px;
padding: 20px;
font-family: "Roboto", sans-serif;
font-size: 0.875em;
text-align: left;
background: #fff;
z-index: 100;
}
#mast_caption.open {
display: block;
}



.mast {
display: flex;
flex-direction: column;
justify-content: space-between;
min-height: 30vw;
background-color: #ececec;
}





header a {
color: #000;
}
header a:hover,
header a:focus {
color: #0E3769;
}





/*** search ***/

.search_container {
margin: 0 auto;
/*padding: 20px 0 0;*/
}
.form_container {
padding: 30px;
background-color: #ececec;
}

#searchbox {
position: relative;
background-color: #fff;
border: 1px solid #C9C9C7;
}

.inputfield {
width: 100%;
padding: 0 50px 0 10px;
color: #000;
background-color: transparent;
border: none;
font: 400 1em/50px 'Roboto', sans-serif;
color: #999;
}
.inputfield:focus {
color: #000;
}
.searchbutton {
position: absolute;
top: 0;
right: 0;
width: 44px;
height: 50px;
font-size: 22px;
line-height: 50px;
padding: 0 10px;
border: none;
text-align: right;
color: #0E3769;
background: transparent;
cursor: pointer;
}
.searchbutton:hover {
color: #E21B22;
}

.search_results {
margin-top: 40px;
}

.search_results ol {
margin: 0;
}

.search_results li {
margin: 0 0 .5em 0;
}
.search .columns {
columns: 300px 5;
}
.imprint .columns {
columns: 300px 3;
column-gap: 4em;
padding-bottom: 20px;
}
.imprint .columns p {
margin: 0 0 1em;
-webkit-column-break-inside: avoid;
page-break-inside: avoid;
break-inside: avoid;
}

/*** end search ***/



#langnav {
position: relative;
font: 400 16px/40px 'RobotoCondensed', sans-serif;
text-transform: uppercase;
padding-left: 20px;
height: 42px;
background-color: #fff;
}

#lang_options {
display: block;
float: left;
}


#langnav a {
display: inline-block;
width: 42px;
height: 42px;
margin-left: 8px;
text-align: center;
color: #0E3769;
border: 1px solid #C9C9C7;
transition: all 0.5s ease;
}
#langnav a#search_link {
margin-left: 30px;
}

.icon.languages {
display: none;
}
#langnav a:hover, #langnav a.active {
color: #fff;
background-color: #e21b22;
border-color: #e21b22
}
#langnav a.active {
color: #e21b22;
background-color: #fff;
}



/** end header **/



/** navmain **/

.nav.column_width {
height: 100%;
position: relative;
}

#navmainswitch {
display: none;
}
#navmainswitch a {
display: block;
padding: 12px 20px;
color: #fff;
font-family: "Roboto", sans-serif;
font-size: 1em;
font-weight: 700;
line-height: 30px;
text-transform: uppercase;
background-color: #E21B22;
transition: background-color 0.5s ease;
}
#navmainswitch a::before {
content: "\e918";
font-size: 20px;
vertical-align: bottom;
padding-right: 5px;
}



#navmainswitch a:hover,
#navmainswitch a:active {
background-color: #0E3769;
}

a#navmainswitch::after {
display: block;
float: left;
margin-right: 10px;
width: 30px;
text-align: center;
content: "\e617";
font-size: 30px;
}
a#navmainswitch.close::after {
content: "\e209";
font-size: 28px;
}

#navmain {
display: block;
font-family: 'Roboto', sans-serif;
/*font-size: 1.125em;*/
font-weight: 500;
}
#navmain ul {
margin: 0;
padding: 0;
list-style: none;
display: flex;
flex-flow: row wrap;
}
#navmain li {
flex: 1 1 12.5%;
/*max-width: 12.5%;*/
min-width: 160px;
margin: 0;
padding: 1px 1px 0 1px;
list-style: none;
display: flex;
flex-direction: column;
}
/*#navmain li:first-child {
padding-left: 0;
}*/

#navmain a {
height: 100%;
padding: 10px 10px 15px;
color: #fff;
transition: background-color 0.5s ease;
background-color: #e21b22;
}
#navmain a:hover {
background-color: #0E3769;
}
#navmain .active a {
color: #000;
background-color: #ececec;
}
#navmain .active a:hover {
color: #fff;
background-color: #0E3769;
}



/** end navmain **/









/** main **/



/*** article ***/

.article_container {
/*margin: 0 -30px;
padding: 0 10px;*/
display: flex;
flex-flow: row nowrap;
}

.left_col,
.right_col {
flex: 1 1 18%;
max-width: 18%;
/*padding: 10px 20px;*/
font-family: "Roboto", sans-serif;
}

.center_col {
flex: 1 1 74%;
max-width: 64%;
padding: 10px 3vw 0;
}

.left_col h3,
.right_col h3,
.right_col h4 {
margin: 0 0 1em;
font-family: "RobotoCondensed", sans-serif;
font-weight: 400;
font-size: 1.250em;
}
.right_col h4 {
margin: 1em 0;
font-size: 1.125em;
}
.related, .external {
padding-bottom: 10px;
}

.left_col a,
.right_col a {
display: block;
padding-bottom: 10px;
margin-bottom: 10px;
border-bottom: 1px dotted #CAC7BF;
}
.left_col a:last-child,
.right_col a:last-child {
border-bottom: none;
}
.left_col a.active {
color: #E21B22;
}

.external a {
color: #4a6f00;
}
.external a:hover,
.external a:focus {
color: #E21B22;
}
/*.related a {
color: #E21B22;
}
.external a:hover,
.external a:focus {
color: #4a6f00;
}*/


.section {
margin-bottom: 1.5em;
font-family: "Roboto", sans-serif;
font-size: 0.750em;
font-weight: 500;
text-transform: uppercase;
color: #666;
}

h1 {
margin: 0 0 .75em;
font-family: "RobotoCondensed", sans-serif;
font-size: 2.5em;
font-weight: 400;
}
h1.page_title {
margin: 0 0 1em;
font-family: "RobotoCondensed", sans-serif;
font-size: 2em;
font-weight: 400;
}
.h1_subtitle {
margin: -1em 0 .75em;
font-family: "RobotoCondensed", sans-serif;
font-size: 1.375em;
font-weight: 400;
}

h2 {
margin: 1em 0 1em;
font-family: "RobotoCondensed", sans-serif;
line-height: 1.3;
font-size: 1.750em;
font-weight: 400;
}
h2.section_title {
margin: 0 0 1em;
}

h3 {
margin: 0 0 1.5em;
font-family: "RobotoCondensed", sans-serif;
font-weight: 400;
font-size: 1.250em;
}

p.lead {
margin: 0 0 1.5em;
padding: 15px 0;
font-size: 1.125em;
border-top: 1px dotted #999;
border-bottom: 1px dotted #999;
}

.imagerow {
display: flex;
flex-flow: row wrap;
margin: 2em 0;
padding: 4px;
background: #ececec url(../img/pattern3.png) repeat top left;
}
.imagerow.plain {
text-align: center;
background: #ECECEC url(none);
}


.imagerow figure {
flex: 1 1 25%;
max-width: 50%;
margin: 0;
border: 4px solid transparent;
background-clip: padding-box;
background-color: #fff;
}
.imagerow.three figure {
flex: 1 1 33.33%;
max-width: 100%;
margin: 0;
border: 4px solid transparent;
background-clip: padding-box;
background-color: #fff;
}

.imagerow.two figure {
flex: 1 1 50%;
max-width: 50%;
margin: 0;
border: 4px solid transparent;
background-clip: padding-box;
background-color: #fff;
}

.imagerow img {
width: 100%;
}

.imagerow figcaption {
padding: 15px;
font-family: "Roboto", sans-serif;
font-size: 0.875em;
line-height: 1.4;
}


.social {
margin-top: 30px;
font-size: 24px;
}
.social a {
margin-right: 20px;
}



/*** end article ***/





/*** blog ***/

.blog_container {
margin: 0 -20px;
padding: 0 10px;
display: flex;
flex-flow: row wrap;
}

.blog_top {
margin-bottom: 2em;
}

.blog_intro {
columns: 300px 4;
}
.blog_intro.twocols {
columns: 300px 2;
column-gap: 20px;
}

.blog_intro p {
margin: 0 0 .5em;;
}


.blog_container article {
flex: 1 1 25%;
max-width: 25%;
padding: 10px;
font-family: 'Roboto';
font-weight: 400;
/*line-height: 1.5;*/
}
.blog_container article .lining {
display: flex;
flex-direction: column;
height: 100%;
background-color: #fff;
}

.image_container {
position: relative;
}
article .image_container img {
width: 100%;
}
article .category_link {
position: absolute;
left: 0;
bottom: 0;
padding: 15px 20px 10px;
background-color: #fff;
/*font-family: 'RobotoCondensed';*/
font-weight: 500;
font-size: 0.688em;
line-height: 1;
text-transform: uppercase;
}

.category_link a {
color: #0E3769;
}
.category_link a:hover, .category_link a:focus {
color: #E21B22;
}

.category_link a::before {
content: "\e5c8";
margin-right: 3px;
font-size: 1.2em;
vertical-align: middle;
}


.blog_container article h2 {
font-family: 'RobotoCondensed';
font-size: 1.5em;
line-height: 1.25;
font-weight: 500;
margin: 0;
padding: 20px 20px 0;
}
.blog_container article h2 a {
color: #0E3769;
}
.blog_container article h2 a:hover,
.blog_container article h2 a:focus {
color: #E21B22;
background-color: transparent;
}



.blog_container article .lining p {
font-family: 'Droid';
font-size: 0.938em;
margin: 0;
padding: 15px 20px 30px;
}

/**** video ****/

.video {
box-sizing: border-box;
text-align: center;
margin-bottom: 1em;
background-color: #eee;
}
.video iframe, .video object {
display: block;
margin: auto;
}
.videoWrapper {
position: relative;
padding-bottom: 56.25%; /* 16:9 */
padding-top: 25px;
height: 0;
overflow: hidden;
}
.video .videoWrapper iframe,
.video .videoWrapper object {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.readmore {
font-family: 'Roboto';
font-weight: 600;
font-size: .765em;
line-height: 30px;
text-transform: uppercase;
margin-top: 1em;
}
.readmore a {
padding: 5px 8px 5px 4px;
margin-left: -4px;
}

.readmore a::before {
content: "\e205";
font-size: 20px;
line-height: 30px;
vertical-align: middle;
padding-right: 3px;
}
/**** end video ****/


/*** end blog ***/





/*** blog pagination ***/

.pagenav {
margin: 30px 0 0;
}
.pagenav a {
display: inline-block;
margin-right: 10px;
width: 42px;
height: 42px;
text-align: center;
font-size: 1.750em;
line-height: 40px;
color: #000;
background-color: #fff;
border: 1px solid #C9C9C7;
transition: all .25s ease-out;
}
.pagenav a:hover {
color: #fff;
background-color: #e21b22;
border-color: #e21b22
}
.pagenav a.disabled {
color: #C0C0C0;
}
.pagenav a.disabled:hover {
color: #C0C0C0;
background-color: #fff;
border-color: #C9C9C7
}
.pagenav a.prev::before {
content: "\e90d";
}
.pagenav a.next::before {
content: "\e90e";
}


/*** end blog pagination ***/







/*** article pagination ***/


.pagenav_article {
font-family: "Roboto", sans-serif;
line-height: 1;
margin: 30px 0 0;
padding-top: 20px;
border-top: 1px dotted #ccc;
display: flex;
flex-flow: row nowrap;
justify-content: space-between ;
}
.pagenav_article div {
flex: 1 1 50%;
}

.pagenav_article a {
display: inline-block;
transition: all .25s ease-out;
}
.pagenav_article div:last-child {
text-align: right;
}
.pagenav_article a span {
vertical-align: middle;
}

.pagenav_article a.prev::before {
content: "\e5c4";
font-size: 22px;
margin-right: 5px;
vertical-align: -30%;
}
.pagenav_article a.next::after {
content: "\e5c8";
font-size: 22px;
margin-left: 5px;
vertical-align: -30%;
}
.pagenav_article a.disabled {
color: #999;
}
.next_category {
position: absolute;
bottom: -1px;
right: 0;
min-width: 180px;
}
.next_category a {
display: block;
padding: 8px 25px 8px 10px;
font-family: 'Roboto', sans-serif;
font-size: 1em;
font-weight: 500;
color: #fff;
background-color: #E21B22;
}
.next_category a:hover,
.next_category a:focus {
color: #fff;
background-color: #0E3769;
}
.next_category a::before {
content: "\e906";
font-size: 30px;
margin-right: 5px;
vertical-align: middle;
}


/*** end article pagination ***/







/** end main **/






/** footer **/
footer .column_width {
display: flex;
flex-flow: row nowrap;
align-items: baseline;
padding-top: 40px;
padding-bottom: 60px;
}

footer .left {
flex: 1 1 55%;
padding-right: 40px;
}
footer .right {
flex: 1 1 45%;
text-align: right;
}
#footer_right a {
position: relative;
display: inline-block;
line-height: 40px;
margin-left: 10px;
margin-bottom: 10px;
color: #000;
padding: 0 18px;
border: 1px solid #C9C9C7;
transition: background-color 0.5s ease;
}
#footer_right a:hover {
color: #fff;
background-color: #E21B22;
border: 1px solid #E21B22;
}

/** end footer **/



/* to top */
.fixed {
display: none;
height: 40px;
position: fixed;
bottom: 0;
right: 0;
z-index: 100;
}

.fixed a {
display: block;
width: 40px;
height: 40px;
line-height: 40px;
font-size: 24px;
text-align: center;
color: #fff;
background-color: #0E3769;
box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.4);
}
.fixed a:hover,
.fixed a:focus,
.fixed a:active {
color: #fff;
background-color: #E21B22;
}
/* end to top */




/* standard tags */

img {
display: block;
border: none;
}
a {
color: #0E3769;
text-decoration: none;
outline: none;
}
a:hover, a:focus {
color: #e21b22;
text-decoration: none;
outline: none;
}

p {
margin: 1em 0;
}
/* end standard tags */



sup {
font-size: .5em;
}
.scaps {
font-variant: small-caps;
}

.clearfloats::after {
content: " ";
display: block;
height: 0;
visibility: hidden;
clear: both;
}

.squeeze img {
width: 100%;
margin: 2em 0;
}
.text_framed.squeeze img {
margin: 1em 0;
}
img.squeeze {
width: 100%;
}
.squeeze.loose {
background-color: #f4f4f4;
}
.squeeze.loose img {
max-width: 500px; 
margin: 0 auto;
}
.download img {
padding-bottom: 10px;
}

.audio_container {
margin: 2em 0;
}
.audio_container figcaption {
margin: 0 0 .5em;
font-family: 'Roboto', sans-serif;
font-size: 0.875em;
font-weight: 500;
}


table {
width: 100%;
border-collapse: collapse;
font-family: 'Roboto', sans-serif;
}
th, td {
padding: 6px 10px;
text-align: left;
vertical-align: top;
border: 1px solid #CAC7BF;
}
th {
font-weight: 500;
/*color: #960;*/
}


.spaced_vert {
margin-top: 2em;
margin-bottom: 2em;
}

.floated {
float: left;
width: 260px;
padding: 20px;
background-color: #ececec;
margin-right: 30px;
}
.floated.eng {
min-width: 300px;
}


ul li {
margin: 0 20px .5em 0;
}

.text_framed {
position: relative;
margin: 1.5em 0;
padding: 20px;
background-color: #F4F4F4;
border: 1px solid #F1B11D;
border-radius: 5px;
}
.text_framed::before {
content: "\e9d2";
font-size: 20px;
line-height: 18px;
color: #FF9900;
position: absolute;
left: 20px;
top: -3px;
}
.imprint .columns p.image_framed {
background-color: #F4F4F4;
margin-bottom: 2em;
}
.image_framed img {
width: 50%;
margin: 0 auto;
}


.columns_flex {
display: flex;
flex-flow: row wrap;
margin: 0 -20px;
}
.columns_flex div {
flex: 1 1 auto;
padding: 0 20px;
}

.columns_flex div:first-child {
flex: 1 0 20%;
max-width: 20%;
}
.columns_flex div:last-child {
flex: 1 1 80%;
max-width: 80%;
}


















@media screen and (max-width: 1600px) {

#site_title {
padding: 30px 0;
}
header .right {
padding: 28px 0 0;
}
.nav.column_width {
padding: 0;
}
.blog main .column_width {
margin: 0 auto;
padding: 0 10px;
}
.blog_container {
margin: 0;
padding: 0;
}
.blog_top {
margin: 0 20px 2em;
}
.pagenav {
margin: 30px 20px 0;
}





@media screen and (max-width: 1336px) {


.imagerow figure,
.imagerow.three figure {
flex: 1 1 50%;
/*max-width: 50%;*/
}
.mast {
min-height: 38vw;
}

}







@media screen and (max-width: 1279px) {

body {
font-size: 15px;
}
.column_width,
.column_width.info,
.header_top .column_width,
footer .column_width {
padding-left: 20px;
padding-right: 20px;
}
#mast_caption {
right: 34px;
}

#navmain li {
flex: 0 1 25%;
}

.blog_top {
margin: 0 10px 2em;
}

.blog_container article {
flex: 1 1 33.33%;
max-width: 33.33%;
}

.pagenav {
margin: 30px 10px 0;
}

.article_container {
flex-flow: row wrap;
}

h1 {
font-size: 2.333em;
}

.section {
font-size: 0.800em;
}

.left_col h3,
.right_col h3 {
font-size: 1.267em;
}


}



@media screen and (max-width: 1044px) {

.blog main .column_width {
padding: 0 4px;
}
.blog_top {
margin-left: 15px;
margin-right: 15px;
}
h1 {
font-size: 2.133em;
}
.blog_container {
margin: 0;
padding: 0;
}
.blog_container article {
padding: 4px;
}

.pagenav {
margin: 30px 15px 0;
}

}



@media screen and (max-width: 1023px) {

#site_title {
padding: 20px 0;
}
.squares {
width: 16px;
height: 16px;
}
.header_top .column_width {
flex-direction: column;
}

header .left {
order: 1;
}
header .right {
text-align: left;
margin: 0 -20px;
background-color: #ececec;
padding: 0;
justify-content: flex-start;
}
#langnav {
width: 100%;
padding: 0;
background-color: transparent;
}
#langnav a {
display: block;
float: left;
width: 42px;
height: 42px;
margin-left: 0;
text-align: center;
color: #0E3769;
border: none;
border-right: 1px solid #fff;
transition: all 0.5s ease;
}
#langnav a:hover, #langnav a#search_link:hover {
color: #fff;
background-color: #e21b22;
border-right: 1px solid #fff;
}
#langnav a.active {
color: #000;
border-right: 1px solid #fff;
}
#langnav a.active:hover {
color: #e21b22;
background-color: #fff;
border-right: 1px solid #fff;
}

#langnav a#search_link {
float: right;
font-size: 16px;
width: 42px;
border-left: 1px solid #fff;
transition: all 0.5s ease;
}

.blog_intro {
column-gap: 20px;
}

.blog_container article {
flex: 1 1 50%;
max-width: 50%;
}







.article_container {
padding: 0;
}
.left_col {
display: none;
}

.center_col {
flex: 1 1 70%;
max-width: none;
padding: 0 20px 0 0;
}
.right_col {
flex: 1 1 30%;
max-width: none;
padding: 0 20px;
}

#navmainswitch {
display: block;
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 54px;
z-index: 20;
}
#navmain {
display: none;
width: 100%;
margin: 0;
position: absolute;
top: 0;
left: 0;
font-size: 1.067em;
background-color: #fff;
box-shadow: 0 0 20px 0 rgba(0,0,0,.5);
z-index: 10;
}
#navmain li {
flex: 1 1 50%;
}
#navmain a, 
#navmain .active a {
height: 100%;
padding: 15px 36px 15px 20px;
color: #000;
transition: background-color 0.5s ease;
background-color: #ECECEC;
}
#navmain a:hover {
color: #fff;
background-color: #0E3769;
}
#navmain .active a::before {
content: "\e948";
display: block;
float: right;
margin: -2px -25px -2px 0;
font-size: 18px;

}
#navmain .active a:hover {
color: #fff;
background-color: #0E3769;
}


.article_container {
margin: 0;
padding: 0;
display: flex;
flex-flow: row nowrap;
}


.pagenav_article {
margin: 30px 0 0;
padding: 20px 0 0;
}

footer .column_width {
padding: 30px 20px 40px;
}

}



@media screen and (max-width: 840px) {

.mast {
min-height: 44vw;
}
.article_container {
flex-flow: row wrap;
}

.center_col {
flex: 1 0 100%;
padding: 0;
}
.right_col {
flex: 1 1 100%;
padding: 0;
margin-top: 30px;
}

}







@media screen and (max-width: 820px) {




footer .column_width {
flex-direction: column;
}
footer .left {
flex: 1 0 100%;
padding-right: 0;
padding-top: 20px;
}
footer .right {
flex: 1 0 auto;
order: -1;
text-align: left;
}
#footer_right a {
margin: 0 10px 0 0;
}
/*#footer_right a:last-child {
margin: 0;
}*/



}



@media screen and (max-width: 739px) {



.mast {
min-height: 50vw;
}
#navmainswitch {
height: 48px;
}
#navmainswitch a {
padding: 9px 20px;
}


}



@media screen and (max-width: 630px) {

#site_title {
font-size: 2em;
}

#site_title a .domain {
padding-right: 0;
}

.mast {
min-height: 60vw;
}
.column_width.info {
padding-top: 10px;
}
#mast_caption {
top: 24px;
}


.form_container {
padding: 20px;
}
.search_container {
padding: 0 0 20px 0;
}


.blog_container {
margin: 0;
}


.form_container {
margin: 0 -10px;
}

.floated, .floated.eng {
float: none;
width: auto;
min-width: none;
margin: 1em auto;
}
.audio_container {
text-align: center;
}

}




@media screen and (max-width: 540px) {

#navmain li {
flex: 1 1 100%;
}
#navmain a, 
#navmain .active a {
padding: 13px 36px 13px 20px;
}

.blog_container article {
flex: 1 1 100%;
max-width: none;
}
#footer_right a {
margin: 0 5px 0 0;
line-height: 34px;
padding: 0 10px;
}
.columns_flex {
display: block;
}
.columns_flex div:first-child,
.columns_flex div:last-child {
max-width: 100%;
}
.columns_flex div:last-child {
padding-top: 40px;
}


}




@media screen and (max-width: 480px) {

#mast_caption {
width: 270px;
padding: 15px;
}
.blog main .column_width {
padding: 0;
}
.blog_container article {
padding: 5px 0;
}
.imagerow figure,
.imagerow.three figure,
.imagerow.two figure {
flex: 1 0 100%;
max-width: none;
border: none;
}
.imagerow.plain figure {
border-top: 1px solid #ECECEC;
border-bottom: 1px solid #ECECEC;
}

#site_title {
line-height: 1.2;
}

.imagerow {
padding: 0;
border: none;
}


}










@media screen and (max-width: 390px) {

header .right {
margin: 0 -10px;
}
.column_width,
.column_width.info,
.header_top .column_width,
footer .column_width {
padding-left: 10px;
padding-right: 10px;
}
.mast {
min-height: 70vw;
}

#mast_caption {
right: 24px;
padding: 10px;
}

#navmainswitch a {
padding: 9px 10px;
}
#navmain a, 
#navmain .active a {
padding: 13px 36px 13px 10px;
}
main {
padding: 30px 0;
}
.blog_top {
margin: 0 10px 20px ;
}
h1.page_title {
margin: 0 0 .75em;
}
h2.section_title {
margin: 0 0 .75em;
}
.blog_container article h2 {
padding: 20px 10px 0;
}
.blog_container article .lining p {
padding: 15px 10px 30px;
}
.pagenav {
margin: 20px 10px 0;
}

#footer_left a {
display: block;
}
.blog_container article {
padding: 10px 0;
}
.table_scroller {
max-width: 360px;
margin: 0 -10px;
}
th, td {
padding: 4px 5px;
}

audio {
display: block;
max-width: 340px;
margin: 0 auto;
}

}
