/***************************************************************************
* Basics
****************************************************************************/
body {
    font-family: 'Inter',sans-serif;
    font-weight: 400;
    color: var(--typo-color-text);
}
p { 
    line-height: 1.2; 
    font-weight:  500;
    margin-bottom: var(--typo-gap);
}

.em_is_small em {
    font-style: normal;
    font-size: var(--typo-font-size-very-small);
}

.font_weight_medium {
    font-weight: 500;
}
.font_weight_semibold {
    font-weight: 600;
}

/***************************************************************************
* Headlines
****************************************************************************/
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat',sans-serif;
    font-weight: 700; font-style: normal; line-height: 1.2;
    color: inherit; margin-bottom: var(--typo-gap);
}

/*
.h1, .h2, h1, h2, .h3, h3 {
    margin-bottom: var(--typo-double-gap);
}*/

.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: calc(var(--typo-gap) * 2);
}
h1:not(:first-child), .h2:not(:first-child), h1:not(:first-child), h2:not(:first-child) {
    margin-top: calc(var(--typo-gap) * 4);
}

/***************************************************************************
* Font Sizes
****************************************************************************/
.primary_title > *:not(p), .h1, h1 {font-size: var(--typo-font-size-h1);}
.secondary_title > *:not(p), .h2, h2 {font-size: var(--typo-font-size-h2);}
.font_size_quote {font-size: var(--typo-font-size-quote);}
.tertiary_title > *:not(p), .h3, h3 {font-size: var(--typo-font-size-h3);}
.h3_small {font-size: var(--typo-font-size-h3-small);}
.quaternary_title > *:not(p), .h4, h4 {font-size: var(--typo-font-size-h4);}
.h5, h5 {font-size:1.125em;}
.h6, h6 {font-size:1em;}


.content_section {
    font-size: var(--typo-font-size-default);
}


/***************************************************************************
* Content Title
****************************************************************************/
.wrapper .content_title > *:not(p) {
    margin-top: 0;
}


/***************************************************************************
* Blockquote
****************************************************************************/
blockquote p {
    font-size: var(--typo-font-size-quote);
    font-weight: 700;
    color: var(--typo-color-blue);
    line-height: 1.2;
}