.slide>.text {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 0 3vw 3vw 3vw;
}

.slide>.text>h1 {
    font-family: "Noto Serif", serif;
    font-weight: 400;
    font-size: 5.5vw;
    line-height: 1;
    margin: 0;

    color: #005092;
    text-shadow: 0 0 3vw rgba(0, 0, 0, 1);

    opacity: 0;
    transform: translate3d(0, 20px, 0);
    transition-property: opacity, transform;
    transition-duration: 1s;
    transition-delay: 0s;
}

.slide>.text>p {
    font-size: 2.5vw;
    margin: 0 0 1vw 0;

    color: #51c519;
    text-shadow: 0 0 3vw rgba(0, 0, 0, .6);

    opacity: 0;
    transform: translate3d(0, 20px, 0);
    transition-property: opacity, transform;
    transition-duration: 1s;
    transition-delay: .1s;
}

.slide.active>.text>h1 {
    opacity: 1;
    transform: translate3d(0, 0px, 0);
    transition-delay: .8s;
}

.slide.active>.text>p {
    opacity: 1;
    transform: translate3d(0, 0px, 0);
    transition-delay: .7s;
}

.slide>.text--gradient:after {
    content: '';
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    background-image: linear-gradient(to top, rgba(0, 0, 0, .7), transparent 50%);
}

@media only screen and (orientation: portrait) {
    .slide>.text {
        padding: 0 4vw 10vw 4vw;
    }

    .text>h1 {
        font-size: 11vw;
        text-align: center;
    }

    .text>p {
        font-size: 5vw;
        text-align: center;
    }
}