@import url(https://db.onlinewebfonts.com/c/cd078846ff982a2def39c37325afb4f0?family=NeueFrutigerVietnameseW00-Md); 

html {
    font-family: Raleway, 'NeueFrutigerVietnameseW00-Md', Helvetica, Arial, sans-serif;
    font-weight: light;
    font-size: 16px;
    color: #140205;
}
body {
    margin: 0;
}

.post > div {
    display: flex;
    flex-direction: column;
    align-content: center;
    align-items: center;
}
.post {
    min-height: 100vh;
    padding: 2em 0;
}
.goji {
    background: #f7f6f6;
    background: #f2f2f2;
}
.dharma {
    background: #fefafb;
    background: #fffae6;
    background: #ffffff;
}
.hero {
    min-height: 100vh;
}
.hero > .img-container {
    width: 100%;
    height: 40vh;
    padding: 20vh 0 0;
    overflow: hidden;
}
.hero > .img-container > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.footer {
    height: 100vh;
}
.footer > .footer-text-container {
    height: 20vh;
    max-width: 100vw;
    display: flex;
    align-content: center;
    align-items: center;
}
.footer > .footer-text-container > h1 {
    padding: 0;
    margin: 0;
}
.footer a {
    color: #997b00;
    text-decoration: none;
    transition: color 0.3s ease;
}
.footer a:hover {
    color: #FFCD00;
    text-decoration: none;
}
.footer a:active {
    color: #fff0b3;
    text-decoration: none;

}
.footer > .img-container {
    width: 100%;
    height: 80vh;
    padding: 0 0 0 0;
    overflow: hidden;
}
.footer > .img-container > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    overflow: hidden;
}
.sidebyside {
    padding: 2em 0 0 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1em;
    justify-content: center;
    align-content: center;
    align-items: center;
}

.caption {
    color: #433537;
    font-style: italic;
    font-size: .9em;
    width: auto;
    text-align: center;
}
h1 {
    font-size: 300%;
    padding: .8em 0 0 0;
}
h2 {
    padding: .8em 0 0 0;
}
h3 {
    padding: .8em 0 0 0;
}
p {
    padding: .8em 0 0 0;  
}
ul, ol {
    padding: .8em 0 0 0;
}
@media only screen and (min-width: 0px) and (max-width: 800px) {
    .post > div > * {
        width: 90%;
        margin: 0px 15px;
    }
    .hero-header,
    .post > div > img,
    .post > div > .caption,
    .post > div > video,
    .sidebyside,
    .post > div > h2,
    .footer-text-container {
        width: auto;
        margin: 0px 15px;
    }
    .post > div > .caption,
    .post > div > .sidebyside {
        width: auto;
        margin: 0px 15px;
    }
    .sidebyside > img {
        max-width: 90%;
        width: auto;
        margin: 0px 15px;
        max-height: 80vh;   
    }
    .post > div > img,
    .post > div > video {
        padding: 2em 0 0 0;
        max-height: 80vh;
        width: auto;
        max-width: 90%;
        margin: 0px 15px;
    }
    h1 {
        font-size: 200%;
    }
}
@media only screen and (min-width: 800px) {
    .post > div > * {
        width: 620px;
        margin: auto;
    }
    .hero-header,
    .post > div > img,
    .post > div > .caption,
    .post > div > video,
    .sidebyside,
    .post > div > h2,
    .footer-text-container {
        max-width: 800px;
        margin: auto;
    }
    .post > div > .caption,
    .post > div > .sidebyside {
        width: 800px;
    }
    .sidebyside > img {
        max-width: 380px;
    }
    .post > div > img,
    .post > div > video {
        padding: 2em 0 0 0;
        max-height: 80vh;
        width: auto;
    }
}