/****************************************************************************
 * Basics
 ****************************************************************************/
body{
    font-family: 'IBM Plex Sans',Roboto,Arial,sans-serif;
    font-weight: 400;
    color: #0a0a0a;
}

.body_font {
    font-family: 'IBM Plex Sans';
    font-weight: 400;
}

@media screen and (min-width:64em){
    .two_col {
        column-count: 2;
    }
}

p { line-height: 1.4; font-size: 1.125rem; }

@media screen and (min-width:40em){
	p { line-height: 1.6; font-size: 1.25rem; }
}

ul li,
ol li {
    font-size: 1.125rem;
}

table tr {
	vertical-align: top;
}

/****************************************************************************
 * Headlines
 ****************************************************************************/
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    font-family: 'Abril Fatface',Roboto,Arial,sans-serif;
    font-weight: 400; font-style: normal; line-height: 1.2;
    color: inherit; margin-bottom: 2rem;
}

.h3:not(:first-child), .h4:not(:first-child), .h5:not(:first-child), .h6:not(:first-child), 
h3:not(:first-child), h4:not(:first-child), h5:not(:first-child), h6:not(:first-child) {
    margin-top: 3rem;
}

@media screen and (min-width:64em){
    .h1, .h2, h1, h2 {
        margin-bottom: 3rem;
    }
    
    h1:not(:first-child), .h2:not(:first-child), 
    h1:not(:first-child), h2:not(:first-child) {
        margin-top: 4rem;
    }
}

.no_margin_bottom {
	margin-bottom:0;
}

/****************************************************************************
 * Blockquote
 ****************************************************************************/
blockquote {
    position: relative;
}
blockquote:after {
    content: '“';
    position: absolute;
    right: 100%;
    top: -0.5em;
    font-size: 4em;
}

.slick_slider blockquote:after {
	left: 0;
}

@media screen and (min-width:40em){
    .teaser_quote blockquote >*{
        font-size: 1.25rem;
    }
	.slick_slider blockquote:after {
		left: 1.5rem;
	}
}

@media screen and (min-width:64em){
    .teaser_quote blockquote >*{
        font-size: 1.5rem;
    }
}

/****************************************************************************
 * Font Sizes
 ****************************************************************************/
.h1, h1 {font-size:1.75em;}
.h2, h2 {font-size:1.5em;}
.h3, h3 {font-size:1.375em;}
.h4, h4 {font-size:1.25em;}
.h5, h5 {font-size:1.125em;}
.h6, h6 {font-size:1rem;}

.highlight_title > * {font-size: 2.5em;}
.highlight_title span {font-size: 0.75em;}

@media screen and (min-width:40em){
    .h1, h1 {font-size:2.25em;}
    .h2, h2 {font-size:1.875em;}
    .h3, h3 {font-size:1.5em;}
    .h4, h4 {font-size:1.375em;}

    .highlight_title > * {font-size: 3.5em;}
    .highlight_title span {font-size: 0.5em;}
}

@media screen and (min-width:64em){
    .h1, h1 {font-size:2.75em;}
    .h2, h2 {font-size:2.125em;}
    .h3, h3 {font-size:1.75em;}
    .h4, h4 {font-size:1.5em;}

    .highlight_title > * {font-size: 4.5em;}
    /*.highlight_title span {font-size: 2.75em;}*/
}

@media screen and (min-width:100em){
    .content_section {
        font-size: 1.0625rem;
    }
}

/****************************************************************************
 * Caption
 ****************************************************************************/
.wp-caption .wp-caption-text,
.wp-caption-text.gallery-caption,
.wp-caption-text {
    text-align: left;
    font-size: 0.875rem;
    padding-top: 0;
}