body {
    font-family: Roboto;
}

header, footer,
h1, h2, h3, h4, h5, h6 {
    font-family: Montserrat;
}

h1 {
    font-size: 1.45rem;
}

h2, h3, h4, h5, h6 {
    font-size: 1.4rem;
}

section {
    padding: 3rem 0;
}

hr.hr-primary-secondary, hr.hr-primary-white,
hr.hr-secondary-primary, hr.hr-secondary-white,
hr.hr-white-primary, hr.hr-white-secondary {
    max-width: 15rem;
    border: none;
    border-top: solid .25rem;
    padding: 0;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
    text-align: center;
    font-weight: 900;
}

hr.hr-primary-secondary:after, hr.hr-primary-white:after,
hr.hr-secondary-primary:after, hr.hr-secondary-white:after,
hr.hr-white-primary:after, hr.hr-white-secondary:after {
    position: relative;
    display: inline-block;
    top: -.8em;
    padding: 0 .25em;
    content: '\f005';
    font-family: 'Font Awesome 5 Free';
    font-size: 2em;
}

hr.hr-primary-secondary, hr.hr-primary-white {
    border-color: #18bc9c;
}

hr.hr-secondary-primary, hr.hr-secondary-white {
    border-color: #2c3e50;
}

hr.hr-white-primary, hr.hr-white-secondary {
    border-color: #fefefe;
}

hr.hr-primary-secondary:after, hr.hr-primary-white:after {
    color: #18bc9c;
}

hr.hr-secondary-primary:after, hr.hr-secondary-white:after {
    color: #2c3e50;
}

hr.hr-white-primary:after, hr.hr-white-secondary:after {
    color: #fefefe;
}

hr.hr-secondary-primary:after, hr.hr-white-primary:after {
    background-color: #18bc9c;
}

hr.hr-primary-secondary:after, hr.hr-white-secondary:after {
    background-color: #2c3e50;
}

hr.hr-primary-white:after, hr.hr-secondary-white:after {
    background-color: #fefefe;
}

a.bg-primary:hover, button.bg-primary:focus, button.bg-primary:hover {
    background-color: #18bc9c!important;
}

a.bg-secondary:hover, button.bg-secondary:focus, button.bg-secondary:hover {
    background-color: #2c3e50!important;
}

a.bg-white:hover, button.bg-white:focus, button.bg-white:hover {
    background-color: #fefefe!important;
}

.bg-primary {
    background-color: #18bc9c!important;
}

.bg-secondary {
    background-color: #2c3e50!important;
}

.bg-white {
    background-color: #fefefe!important;
}

.text-primary,
.text-primary-secondary, .text-primary-white,
.text-primary-secondary:focus, .text-primary-white:focus {
    color: #18bc9c!important;
}

.text-secondary,
.text-secondary-primary, .text-secondary-white,
.text-secondary-primary:focus, .text-secondary-white:focus {
    color: #2c3e50!important;
}

.text-white,
.text-white-primary, .text-white-secondary,
.text-white-primary:focus, .text-white-secondary:focus {
    color: #fefefe!important;
}

.text-secondary-primary:hover, .text-white-primary:hover {
    color: #18bc9c!important;
}

.text-primary-secondary:hover, .text-white-secondary:hover {
    color: #2c3e50!important;
}

.text-primary-white:hover, .text-secondary-white:hover {
    color: #fefefe!important;
}

.border-primary {
    border-color: #18bc9c!important;
}

.border-secondary {
    border-color: #2c3e50!important;
}

.border-white {
    border-color: #fff!important;
}

.opacity-primary, .opacity-secondary, .opacity-white {
    transition: all ease .3s;
    opacity: 0;
}

.opacity-primary:hover, .opacity-secondary:hover, .opacity-white:hover {
    opacity: 1;
}

.opacity-primary {
    background-color: rgba(24, 188, 156, .9);
}

.opacity-secondary {
    background-color: rgba(44, 62, 80, .9);
}

.opacity-white {
    background-color: rgba(254, 254, 254, .9);
}

#title {
    font-size: 1rem;
}

#about {
    padding-top: 6rem;
}

#logo {
    height: 150px;
}

@media (min-width: 768px) {
    h1 {
        font-size: 3.5em;
    }

    h2, h3, h4, h5, h6 {
        font-size: 2em;
    }

    #about {
        padding-top: 8rem;
    }

    #logo {
        height: 300px;
    }

    #download {
        font-size: 1.5em;
    }
}
