@media all and (max-width: 768px) {
    #header {
        text-align: center;
    }

    #header .links {
        width: 100%;
    }

    #header .logo {
        position: relative;
        margin-top: 20px;
        margin-bottom: -20px;
    }

    #header .links a {
        margin-right: 0;
    }

    #header .links a:not(:last-of-type) {
        border-right: 1px solid #FFF;
        padding-right: 10px;
    }

    #header .links br {
        display: none;
    }

    .hero-image {
        width: 100%;
        display: inline-block;
        position: relative;
    }
    .hero-image:after {
        padding-top: 56.25%;
        display: block;
        content: '';
    }
    .hero-image > div {
        position: absolute;
        top: 0; bottom: 0; right: 0; left: 0;
        height: auto !important;
    }

    #family h1 {
        font-size: 30px;
        letter-spacing: 0;
        line-height: 50px;
    }
    #family h2 {
        margin-top: 0;
        font-size: 32px;
        line-height: 30px;
    }

    #events #timeline-h {
        padding: 0;
    }

    #timeline-h > span {
        position: relative !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100%;
        margin-bottom: 30px;
        display: inline-block;
    }

    #timeline-h img { display: none; }

    #contact h2, #contact h3 {
        font-size: 22px;
    }
    
    .footer > div > div {
        display: block;
        width: 100%;
        text-align: center;
    }

    #email-us, #email-us b {
        font-size: 22px;
    }

    .footer a {
        margin-right: 0;
    }

    .footer a:not(:last-of-type) {
        border-right: 1px solid #FFF;
        padding-right: 10px;
    }

    #features br { display: none; }

    #features .row {
        background-position: 0 0 !important;
    }

    #features .row:nth-child(even) {
        background-position: center 100% !important;
    }

    #features .row > div {
        text-align: justify !important;
    }

    .hero-image > div h1 {
        font-size: 32px;
        letter-spacing: 0;
    }

    .hero-image > div.history h1, .hero-image > div.mission-field h1 {
        bottom: 0;
    }

    #history img {
        max-width: 100%;
    }

    .our-beliefs .section {
        margin-top: 0;
    }

    #beliefs, #beliefs span {
        font-size: 30px;
    }

    #beliefs_description h3, #beliefs_description h3 span {
        font-size: 34px;
    }

    .our-mission-board .section h1 {
        font-size: 22px;
    }

    .our-mission-board .section {
        margin-top: 0;
    }

    .hero-image > div.mission-board {
        background-position: center;
    }

    .our-mission-field > div:nth-child(11) .section {
        padding-bottom: 200px;
    }

    .hero-image > div.recommendations-img h1 {
        bottom: 0;
        font-size: 26px;
    }

    .hero-image > div.timeline h1 { 
        bottom: 0;
        font-size: 24px;
    }

    #events_timeline {
        margin-top: 50px;
    }

    #events_timeline .timeline-bar { display: none; }

    #events_timeline .dates {
        position: relative !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        margin-bottom: 30px;
        width: 100%;
        text-align: center;
        display: inline-block;
    }

    .timeline-updates div.foot {
        padding-bottom: 200px;
    }

    .hero-image > div.support h1 {
        font-size: 28px;
    }

    .section p {
        word-break: break-word;
    }

    .support-donate > div:nth-child(8) .section {
        padding-bottom: 200px;
    }

    .contact-us #contact h3 {
        font-size: 32px;
    }

    .contact-us #contact > div > div:nth-child(1) {
        margin-bottom: 50px;
    }

    #form {
        padding: 0 20px;
    }

    #form button {
        width: 100%;
        text-align: center;
    }

    .contact-us #contact {
        padding-bottom: 200px;
    }
}