.certificate-banner-home {
    position: relative;
    width: 100%;
    background: var(--linear-gradient-primary);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding: 64px 40px 0;
}

.certificate-banner-home a {
    max-width: 400px;
    margin: 0 auto;
}

.certificate-banner-home h2 {
    font-weight: 500;
    font-size: 40px;
    line-height: 130%;
    letter-spacing: -1.9%;
    text-align: center;
    color: var(--text-color-white);
    margin-bottom: 24px;
}
.certificate-banner-home .upper-title {
    color: var(--text-color-white);
    margin-bottom: 16px;
}

.certificate-banner-home p:not(.upper-title) {
    font-weight: 400;
    font-size: 18px;
    line-height: 150%;
    letter-spacing: 0px;
    text-align: center;
    color: var(--text-color-white);
    margin-bottom: 56px;
}

.certificate-banner-home div.certificate-banner-home-img {
    position: relative;
    width: 100%;
    height: 100%;
    max-width: 814px;
    max-height: 568px;
    width: 100%;
    height: 100%;
    padding: 24px 21px 0;
    margin: 62px 40px 0;
    border-radius: 24px 24px 0 0;
    background-color: var(--background-color-tertiary-light);
    transform: translateY(100px);
    opacity: 0;
    transition: transform 1.2s ease-out, opacity 1.2s ease-out;
}

.certificate-banner-home div.certificate-banner-home-img.animated {
    transform: translateY(0);
    opacity: 1;
}

.certificate-banner-home div.certificate-banner-home-img img {
    width: 100%;
    height: 100%;
    border-radius: 24px 24px 0 0;
    opacity: 0;
    transition: opacity 1.5s ease-in-out;
    transition-delay: 0.5s;
}

.certificate-banner-home div.certificate-banner-home-img.animated img {
    opacity: 1;
}
.certificate-banner-home div.certificate-banner-home-img svg,
.certificate-banner-home > svg {
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 1;
    transition: transform 1.2s cubic-bezier(0.34, 1.56, 0.64, 1),
        opacity 1.2s ease-in-out;
}

.certificate-banner-home div.certificate-banner-home-img svg {
    top: -59px;
    right: -65px;
    max-width: 226px;
    max-height: 231px;
    transform: scale(0) rotate(-50deg);
    transition-delay: 1s;
}

.certificate-banner-home > svg {
    max-width: 151px;
    max-height: 154px;
    top: -77px;
    right: 50%;
    transform: translateX(50%) scale(0) rotate(-50deg);
    transition-delay: 0s;
}

.certificate-banner-home div.certificate-banner-home-img.animated svg {
    transform: scale(1) rotate(0);
    opacity: 1;
}

.certificate-banner-home > svg.animated {
    transform: translateX(50%) scale(1) rotate(0);
    opacity: 1;
}

.certificate-banner-home div:first-of-type {
    max-width: 688px;
}

@media (max-width: 992px) {
    .certificate-banner-home {
        padding: 64px 36px 0;
    }
    .certificate-banner-home div.certificate-banner-home-img {
        margin: 64px 0 0;
        padding: 24px 24px 0;
    }
    .certificate-banner-home div.certificate-banner-home-img svg {
        top: -98px;
        right: -46px;
    }
    .certificate-banner-home .upper-title {
        margin-bottom: 20px;
    }
}

@media (max-width: 908px) {
    .certificate-banner-home div.certificate-banner-home-img svg {
        right: -36px;
        pointer-events: none;
    }
}

@media (max-width: 576px) {
    .certificate-banner-home {
        padding: 110px 16px 0;
    }
    .certificate-banner-home div:first-of-type {
        padding: 0 calc(24px - 16px);
    }

    .certificate-banner-home div.certificate-banner-home-img {
        position: unset;
        margin: 24px 0 0;
        padding: 8px 8px 0;
    }
    .certificate-banner-home div.certificate-banner-home-img svg {
        display: none;
    }
    .certificate-banner-home > svg {
        display: block;
    }

    .certificate-banner-home h2 {
        font-size: 32px;
        text-align: left;
        margin-bottom: 16px;
    }

    .certificate-banner-home p:not(.upper-title) {
        font-size: 16px;
        text-align: left;
        margin-bottom: 16px;
    }
    .certificate-banner-home a {
        max-width: 100%;
    }
    .certificate-banner-home .upper-title {
        margin-bottom: 24px;
    }
}
