.body {
    width: 100vw;
    /* height: 100vh; */
    display: flex;
    flex-direction: column;
    justify-content: center;
    /* padding: 1em; */
}

.title{
    text-align: center;
    font-weight: bold;
    font-size: 200%;
    color: rgba(20, 94, 144, 0.541);
    text-shadow: 1px 1px #94c8df;
}

.logo{
    width: 100%;
    display: flex;
    align-items: center;
}
.logo img {
    width: 20%;
    margin: auto;
}
.intro{
    color: aliceblue;
    padding: 1em;
    text-align: center;
}
.items{
    width: 100vw;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.case{
    margin-top: 1.5em;
    margin-bottom: 1.5em;
    width: 64%;
    height: 36vw;
}

.footer{
    position: fixed;
    bottom: 0;
    width: 100%;
    color: white;
    font-size: 1.2em;
    text-align: center;
}

body {
    /* 背景渐变色 - 原理2 */
    background: linear-gradient(-45deg, #c3c94a, #e73cc5, #23a6d5, #23c59f);
    /* 背景尺寸 - 原理3 */
    background-size: 600% 600%;
    /* 循环动画 - 原理4 */
    animation: gradientBG 8s ease infinite;

}
    @keyframes gradientBG {
        0% {
            background-position: 0% 50%;
        }
        50% {
            background-position: 100% 50%;
        }
        100% {
            background-position: 0% 50%;
        }
    }