/*
 * Substrate
 */

#substrate-container {
    max-width: 1300px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.substrate-subcontainer {
    width: 900px;
    margin: 2em auto;
    padding: 1.5em 1.5em 0.5em;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    background-color: #aad2f8;
    border-radius: 20px;
}

.substrate-subcontainer:nth-child(1) {
    margin-bottom: 3em;
}

.substrate-subcontainer:last-of-type {
    background-color: #fcd284;
}

.substrate-item {
    width: 4em;
    height: 4em;
    position: relative;
    padding: 0.8em;
    margin: 1em 0.5em;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 10px;
    background-color: #f3f3f380;
    font-size: 1.2em;
    line-height: 140%;
    text-align: center;
    font-weight: bold;
    color: #363636;
}

.substrate-item i {
    position: absolute;
    top: -0.4em;
    right: 0.5em;
    font-size: 0.6em;
    color: gray;
}

.substrate-description {
    width: 100%;
    margin-top: 1em;
    margin-left: 1em;
    text-align: left;
    font-size: 0.9em;
    color: gray;
}

@media only screen and (max-width: 992px) {
    .substrate-subcontainer {
        max-width: 700px;
    }
    .substrate-item {
        margin: 1em 0.3em;
        font-size: 1.1em;
    }
    .substrate-description {
        font-size: 0.8em;
    }
}

@media only screen and (max-width: 768px) {
    .substrate-subcontainer {
        max-width: 550px;
        width: 100%;
        padding: 0.5em 1em;
    }
    .substrate-item {
        width: 3.7em;
        height: 3.7em;
        padding: 0.4em;
        font-size: 1em;
    }
}

@media only screen and (max-width: 576px) {
    .substrate-subcontainer {
        max-width: 290px;
        width: 100%;
        padding: 0.5em 1em;
    }
    .substrate-item {
        width: 3.7em;
        height: 3.7em;
        padding: 0.4em;
        font-size: 1em;
    }
    .substrate-description {
        font-size: 0.7em;
    }
    .substrate-subcontainer:last-of-type .last-item {
        margin-right: calc(4.6em + (100% - 4.3em * 3) / 2);
    }
}

/*
 * Usage
 */

#usage-container {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-items: center;
}

.usage-section {
    width: 350px;
    margin: 2em 0;
    padding: 0.5em;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    background-color: #aad2f8;
    border-radius: 20px;
    font-size: 1.2em;
}

.usage-section:nth-of-type(2) {
    background-color: #fcd284;
}

.usage-subtitle {
    width: 100%;
    padding: 0.75em 0 1em;
    text-align: center;
    font-size: 1.6em;
    font-weight: bold;
}

.usage-item {
    width: 3.5em;
    height: 3.5em;
    position: relative;
    margin: 0.75em 0.25em;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 10px;
    background-color: #f3f3f380;
    line-height: 140%;
    font-weight: bold;
    color: #363636;
}

@media only screen and (max-width: 576px) {
    .usage-section {
        width: 100%;
    }
}

/*
 * Application
 */

#application-container {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-items: center;
}

#application-container li {
    text-align: left;
    margin-bottom: 0.5em;
    font-size: 1.2em;
}
