/* Alegreya Sans is licensed under the SIL Open Font License */
/* A copy of the license can be found at /fonts/Alegreya_Sans/OFL.txt */
@font-face {
    font-family: "Alegreya Sans";
    src: url("/fonts/Alegreya_Sans/AlegreyaSans-Black.ttf");
    font-weight: 900;
    font-style: normal;
}
@font-face {
    font-family: "Alegreya Sans";
    src: url("/fonts/Alegreya_Sans/AlegreyaSans-BlacItalic.ttf");
    font-weight: 900;
    font-style: italic;
}
@font-face {
    font-family: "Alegreya Sans";
    src: url("/fonts/Alegreya_Sans/AlegreyaSans-Bold.ttf");
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: "Alegreya Sans";
    src: url("/fonts/Alegreya_Sans/AlegreyaSans-BoldItalic.ttf");
    font-weight: 700;
    font-style: italic;
}
@font-face {
    font-family: "Alegreya Sans";
    src: url("/fonts/Alegreya_Sans/AlegreyaSans-ExtraBold.ttf");
    font-weight: 800;
    font-style: normal;
}
@font-face {
    font-family: "Alegreya Sans";
    src: url("/fonts/Alegreya_Sans/AlegreyaSans-ExtraBoldItalic.ttf");
    font-weight: 800;
    font-style: italic;
}
@font-face {
    font-family: "Alegreya Sans";
    src: url("/fonts/Alegreya_Sans/AlegreyaSans-Italic.ttf");
    font-weight: 400;
    font-style: italic;
}
@font-face {
    font-family: "Alegreya Sans";
    src: url("/fonts/Alegreya_Sans/AlegreyaSans-Light.ttf");
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: "Alegreya Sans";
    src: url("/fonts/Alegreya_Sans/AlegreyaSans-LightItalic.ttf");
    font-weight: 300;
    font-style: italic;
}
@font-face {
    font-family: "Alegreya Sans";
    src: url("/fonts/Alegreya_Sans/AlegreyaSans-Medium.ttf");
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: "Alegreya Sans";
    src: url("/fonts/Alegreya_Sans/AlegreyaSans-MediumItalic.ttf");
    font-weight: 500;
    font-style: italic;
}
@font-face {
    font-family: "Alegreya Sans";
    src: url("/fonts/Alegreya_Sans/AlegreyaSans-Regular.ttf");
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: "Alegreya Sans";
    src: url("/fonts/Alegreya_Sans/AlegreyaSans-Thin.ttf");
    font-weight: 100;
    font-style: normal;
}
@font-face {
    font-family: "Alegreya Sans";
    src: url("/fonts/Alegreya_Sans/AlegreyaSans-ThinItalic.ttf");
    font-weight: 100;
    font-style: italic;
}

/* Andada Pro is licensed under the SIL Open Font License */
/* A copy of the license can be found at /fonts/Andada_Pro/OFL.txt */
@font-face {
  font-family: 'Andada Pro';
  src: url('/fonts/Andada_Pro/AndadaPro-VariableFont_wght.ttf');
  
  font-weight: 400 840; 
  font-style: normal;
}
@font-face {
  font-family: 'Andada Pro';
  src: url('/fonts/Andada_Pro/AndadaPro-Italic-VariableFont_wght.ttf');
  
  font-weight: 400 840; 
  font-style: italic;
}

:root{
    --red: #ce1222;
    --orange: #ef7d35;
    --orange-yellow: #ef9835;
    --yellow: #efb035;
}

html{
    scroll-behavior: smooth;
}

body{
    font-family:'Alegreya Sans',system-ui;
    margin:0;
    padding:0;
    background-color: var(--red);
}

main{
    background-color: white;
    margin:0;
    padding-bottom:2rem;
}

h1, h2{
    font-family: "Andada Pro",serif;
    font-style:italic;
}

h1 i, h2 i{
    font-style:normal;
}

a{
    color:var(--red)
}

.articleLink{
    color: inherit;
    text-decoration: inherit;
}

header, footer{
    width:100vw;
    background-color: var(--red);
    height:fit-content;
    display: flex;
}

header{
    top:0;
    position:sticky;
    flex-direction: row-reverse;
    align-items: end;
    z-index: 99;
}

header a{
    height:fit-content;
    width:fit-content;
    display: inline-block;
    max-width: 90%;
}

footer{
    flex-direction: row;
    align-items: start;
    justify-content: center;
}

footer ul{
    list-style: none;
    display:flex;
    padding:0;
    margin: 0 0 1rem 2vw;
}

footer ul a{
    font-size:1rem;
    font-style:normal;
}

#footerMotto{
    font-family: "Andanda Pro",serif;
    font-style: italic;
    color:white;
    font-size:2.5rem;
    margin-top: 1rem;
    margin-bottom: 0.25rem;
    margin-left: 2vw;
}

#footerAbout{
    color:white;
    margin-top: 0;
    margin-bottom: 1rem;
    margin-left: 2vw;
}

footer a{
    color:white;
    margin: auto 2vw auto auto;
    font-size:1.5rem;
    font-style:italic;
}

#headerLogo {
    width:100%;
    max-height:7rem;
    display:block;
}

.frontPageArticle{
    padding-top:1rem;
    margin-left:2vw;
    margin-right:2vw;
    min-height: 50vh;
    height:fit-content;
    display:flex;
}

.frontPageArticle img{
    object-fit: cover;
    aspect-ratio: 4/3;
    max-height:100%;
    width:40vw;
    border-radius: 1rem;
}

.article img{
    object-fit: cover;
    aspect-ratio: 4/3;
    max-height:100%;
    width:100%;
    border-radius: 1rem;
}

.frontPageText{
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-left:1rem;
}

.frontPageText h2{
    font-size:3rem;
    margin:0;
}

.frontPageText h3{
    font-size:2rem;
    margin:0;
    margin-top: 1rem;
    font-weight: normal;
}

.articleList{
    display: flex;
    flex-direction: column;
    width:100vw;
    height:fit-content;
    justify-content: center;
    align-items: center;
    margin-top:1rem;
}

.articleListContainer{
    display: flex;
    flex-direction:row;
}

.article{
    width:30vw;
    margin-right:2vw;
}

.articleLinkText h3{
    font-size:2.5rem;
    margin:0;
    font-family: "Andada Pro",serif;
    font-style:italic;
}



.articleLinkText h4{
    font-size:1.5rem;
    margin:0;
    margin-top: 1rem;
    font-weight: normal;
}

.articleLinkText h3, .articleLinkText h4, .frontPageText h2, .frontPageText h3{
    text-decoration-line:underline;
    text-decoration-thickness: 4px;
    text-decoration-color: transparent;
    transition: text-decoration-color 0.2s ease;
}

.articleLinkText h3:hover, .articleLinkText h4:hover, .frontPageText h2:hover, .frontPageText h3:hover{
    text-decoration-color: inherit;
}

.frontPageArticle img, .article img{
    transition: filter 0.2s ease;
}

.frontPageArticle img:hover, .article img:hover{
    filter:brightness(0.8);
}

.articleListLabel{
    font-size:3rem;
    margin:1rem 0 1rem 2vw;
    
}

.articleListHead{
    align-self:flex-start;
    margin:0 0 1rem 0;
    display:flex;
    flex-direction:row;
}

.headlineBlock{
    padding-top:2rem;
    display: flex;
    flex-direction: column;
    width:100%;
}

.headlineBlock h1{
    margin-top:0;
    margin-left:2vw;
    font-size: 3.5rem;
    margin-bottom:0;
}

.headlineBlock p{
    margin-top:1rem;
    font-size:2rem;
    margin-left:2vw;
    margin-bottom:0;
    max-width:100%;
}

.headlineBlock img{
    aspect-ratio: 4/3;
    object-fit: cover;
    max-width:96vw;
    max-height:60vh;
    border-radius: 1rem;
    margin-left:auto;
    margin-right:auto;
}

.headlineWrapper{
    display:flex;
    margin-bottom:2rem;
}

.headlineAccent{
    display:flex;
    width:10px;
    margin-left:10px;
    flex-direction: column;
    flex-shrink:0;
}

.headlineTop, .headlineMiddleTop, .headlineMiddleBottom, .headlineBottom{
    height:25%;
}

.headlineTop{
    background: var(--red);
}

.headlineMiddleTop{
    background: var(--orange);
}

.headlineMiddleBottom{
    background: var(--orange-yellow);
}

.headlineBottom{
    background: var(--yellow);
}

.articleBody{
    display:flex;
    flex-direction: column;
    align-items: center;
}

.articleBody p:not(.headlineBlock p){
    font-size:1.75rem;
    margin-left:2vw;
    margin-right: 2vw;
    max-width:calc(4*60vh/3);
    line-height:1.618;
}

@media (max-width: 960px){
    .frontPageArticle{
        flex-direction: column;
        padding-top:1rem;
        margin-left:5vw;
        margin-right:5vw;
    }
    .frontPageArticle img{
        width:100%;
        margin-left:auto;
        margin-right:auto;
    }
    .frontPageText h2{
        font-size:2.5rem;
    }

    .frontPageText h3{
        font-size:1.5rem;
    }
    .frontPageText{
        margin:0;
    }
    .articleList{
        flex-direction: column;
    }
    .article{
        width:90vw;
        margin-top:1rem;
    }
    .articleListContainer{
        display: flex;
        flex-direction:column;
    }
    .articleListLabel{
        width:90vw;
        font-size:2.5rem;
    }
    #footerMotto{
        font-size:2rem;
    }
    .headlineBlock h1{
        font-size:3rem;
    }
    .headlineBlock p{
        font-size:1.5rem;
    }
    .articleBody p:not(.headlineBlock p){
        font-size:1.25rem;
    }
}