/***************************************************************************
* Basics
****************************************************************************/
body {
    font-family: "Roboto";
    font-weight: 400;
    color: #ffffff;
}
p { line-height: 1.6; }

figcaption {margin-top: 0.5rem;}

/***************************************************************************
* Headlines
****************************************************************************/
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    font-family: "Archivo Narrow";
    font-weight: 500; font-style: normal; line-height: 1.2;
    color: inherit; margin-bottom: 1rem;
}

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

.h1, .h2, .h3, 
h1, h2, h3 {
    letter-spacing: 0.125em;
    margin-right: -0.125em;
}

/***************************************************************************
* Has Line
****************************************************************************/
.content_title.has_line > *:last-child{
    margin-bottom: 5rem;
}
.content_title.has_line > *:first-child{
    position: relative; padding: 0 0 1rem; 
}
.content_title.has_line > *:first-child:last-child{
    margin-bottom: 1rem;
}
/***** AFTER Element ****/
.content_title.has_line > *:first-child:after{
    position: absolute;  content: ''; margin: 0;
    left: 0;bottom: 0; width: 1.75rem; border-bottom: .125rem solid #E8CCA8;
    transform: translateY(50%);
}
.text-right .content_title.has_line > *:first-child:after,
.text-right.content_title.has_line > *:first-child:after{
    left: auto;
    right: 0.125em;
}
.text-center .content_title.has_line > *:first-child:after,
.text-center.content_title.has_line > *:first-child:after{
    left: 50%;
    transform: translate(-50%,50%);
}

/***************************************************************************
* Font Sizes
****************************************************************************/
.primary_title > *:not(p), .h1, h1 {font-size:1.75em; text-transform: uppercase;}
.secondary_title > *:not(p), .h2, h2 {font-size:1.5em; text-transform: uppercase;}
.h3, h3, .content_title > h1+p, .content_title > .h1+p,.content_title > h2+p, .content_title > .h2+p,
.content_title.primary_title > p, .content_title.secondary_title > p {
    font-size:1.1875em; text-transform: uppercase;
    font-family: "Roboto Condensed";
 }
.h4, h4 {font-size:1.0625em;}
.h5, h5 {font-size:1em;}
.h6, h6 {font-size:1em;}

.textsize_small {font-size: 0.875em;}
.textsize_large {font-size: 1.125em;}
.content_section {font-size: 0.875rem;}

@media screen and (min-width:40em){
    .primary_title > *:not(p), .h1, h1 {font-size:2.5em;}
    .secondary_title > *:not(p), .h2, h2 {font-size:2.25em;}
    .h3, h3, .content_title > h1+p, .content_title > .h1+p,.content_title > h2+p, .content_title > .h2+p,
.content_title.primary_title > p, .content_title.secondary_title > p {font-size:1.4375em;}
    .h4, h4 {font-size:1.25em;}
}

@media screen and (min-width:64em){
    .primary_title > *:not(p), .h1, h1 {font-size:3.75em;}
    .secondary_title > *:not(p), .h2, h2 {font-size:3em;}
    .h3, h3, .content_title > h1+p, .content_title > .h1+p,.content_title > h2+p, .content_title > .h2+p,
.content_title.primary_title > p, .content_title.secondary_title > p {font-size:1.75em;}
    .h4, h4 {font-size:1.25em;}
}

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

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