header {
    background: var(--main-bg);
    .wrapper {
        box-shadow: 0px 2px 12px 0px #0000001A;
    }
}
main {
    padding-top: 120px;
    padding-bottom: 120px;
}
.promo {
    display: flex;
    justify-content: space-between;
    gap: 64px;
    margin-bottom: 120px;
    .info {
        h1 {
            font-size: 60px;
            line-height: 64px;
            font-weight: 600;
            margin-bottom: 24px;
            color: var(--title);
        }
        p {
            max-width: 740px;
            margin-bottom: 40px;
            font-size: 24px;
            line-height: 32px;
        }
        .btn {
            display: flex;
            width: max-content;
        }
    }
    .list {
        display: flex;
        flex-direction: column;
        gap: 16px;
        margin-top: auto;
        margin-bottom: 24px;
        margin-right: 25px;
        p {
            display: flex;
            align-items: center;
            gap: 12px;
            font-size: 20px;
            line-height: 28px;
            span {
                font-size: 24px;
                line-height: 28px;
                font-weight: 500;
                color: var(--green-text);
            }
        }
    }
}
.projects {
    margin-bottom: 120px;
    h2 {
        margin-bottom: 16px;
        font-size: 36px;
        font-weight: 600;
        line-height: 40px;
        color: var(--title);
    }
    & > p {
        margin-bottom: 64px;
        max-width: 720px;
        font-size: 20px;
        line-height: 28px;
    }
    .list {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
        div {
            display: flex;
            flex-direction: column;
            gap: 12px;
            padding: 39px;
            border-radius: 24px;
            border: 1px solid var(--border);
            img {
                max-width: 60px;
            }
            p {
                font-size: 16px;
                line-height: 20px;
            }
        }
    }
}
.contest {
    padding: 120px 0px;
    background: var(--bg-2);
    position: relative;
    margin-bottom: 120px;
    .wrapper {
        display: flex;
        flex-direction: column;
        gap: 16px;
        h2 {
            font-size: 36px;
            font-weight: 600;
            line-height: 40px;
            color: var(--title);
        }
        p {
            max-width: 740px;
            font-size: 20px;
            line-height: 28px;
        }
        img {
            position: absolute;
            right: 152px;
            top: 56px;
            width: 172px;
        }
    }
}
.conditions {
    margin-bottom: 240px;
    h2 {
        margin-bottom: 16px;
        font-size: 36px;
        font-weight: 600;
        line-height: 40px;
        color: var(--title);
    }
    & > p {
        margin-bottom: 64px;
        max-width: 720px;
        font-size: 20px;
        line-height: 28px;
    }
    .items {
        display: flex;
        flex-direction: column;
        .item {
            display: grid;
            grid-template-columns: 384px 1fr;
            gap: 32px;
            padding: 32px 0;
            &:not(:last-child) {
                border-bottom: 1px solid var(--border);
            }
            .info {
                display: flex;
                flex-direction: column;
                gap: 8px;
                p {
                    font-size: 20px;
                    font-weight: 500;
                    line-height: 24px;
                    color: var(--title);
                }
                span {
                    font-size: 14px;
                    font-weight: 500;
                    line-height: 20px;
                    color: var(--green-text);
                }
            }
            .text {
                display: flex;
                flex-direction: column;
                gap: 30px;
                ol, ul {
                    margin-left: 23px;
                }
                p, li {
                    font-size: 16px;
                    line-height: 20px;
                }
            }
        }
    }
}
.grant {
   margin-bottom: 240px;
    h2 {
        margin-bottom: 16px;
        font-size: 36px;
        font-weight: 600;
        line-height: 40px;
        color: var(--title);
    }
    & > p {
        margin-bottom: 64px;
        max-width: 720px;
        font-size: 20px;
        line-height: 28px;
    }
    .items {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
        .item {
            display: flex;
            flex-direction: column;
            gap: 16px;
            padding: 39px;
            border-radius: 24px;
            border: 1px solid var(--border);
            h3 {
                font-size: 24px;
                line-height: 28px;
                font-weight: 500;
                color: var(--green-text);
            }
            p {
                font-size: 16px;
                line-height: 20px;
            }
        }
    }
}
.how-work {
    margin-bottom: 120px;
    h2 {
        margin-bottom: 16px;
        font-size: 36px;
        font-weight: 600;
        line-height: 40px;
        color: var(--title);
    }
    & > p {
        margin-bottom: 64px;
        max-width: 720px;
        font-size: 20px;
        line-height: 28px;
    }
    .items {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 24px;
        margin-bottom: 64px;
        .item {
            display: flex;
            flex-direction: column;
            padding: 39px;
            border: 1px solid var(--border);
            border-radius: 24px;
            span {
                display: flex;
                justify-content: center;
                align-items: center;
                width: 60px;
                height: 60px;
                margin-bottom: 12px;
                background: var(--green-bg-3);
                border-radius: 50%;
                font-size: 24px;
                line-height: 28px;
                font-weight: 500;
                color: var(--green-text);
            }
            h3 {
                font-size: 24px;
                line-height: 28px;
                font-weight: 500;
                color: var(--title);
                margin-bottom: 16px;
            }
            p {
                font-size: 16px;
                line-height: 20px;
            }
        }
    }
    .docs {
        display: grid;
        grid-template-columns: 56px 1fr 229px;
        gap: 24px;
        align-items: center;
        padding: 30px;
        border: 2px solid var(--green-bg);
        border-radius: 24px;
        img {
            width: 56px;
            height: 56px;
        }
        p {
            font-size: 20px;
            line-height: 28px;
            color: var(--title);
        }
        .btn {
            display: flex;
        }
    }
}
@media screen and (max-width: 1640px) {
    main {
        padding-top: 96px;
        padding-bottom: 96px;
    }
    .promo,
    .projects {
        margin-bottom: 96px;
    }
    .contest {
        padding: 96px 0px;
        margin-bottom: 96px;
        .wrapper {
            img {
                right: 152px;
                top: 56px;
            }
        }
    }
    .conditions {
        margin-bottom: 152px;
        & > p {
            margin-bottom: 24px;
        }
        .items {
            .item {
                padding: 40px 0;
            }
        }
    }
    .grant {
        margin-bottom: 192px;
    }
    .how-work {
        margin-bottom: 96px;
    }
}
@media screen and (max-width: 1239px) {
    main {
        padding-top: 64px;
        padding-bottom: 64px;
    }
    .promo {
        flex-direction: column;
        gap: 40px;
        margin-bottom: 64px;
        .info {
            h1 {
                font-size: 40px;
                line-height: 48px;
                margin-bottom: 20px;
            }
            p {
                max-width: 100%;
                margin-bottom: 32px;
                font-size: 20px;
                line-height: 28px;
            }
        }
        .list {
            margin-bottom: 20px;
            margin-right: 0px;
            p {
                font-size: 18px;
                span {
                    font-size: 20px;
                    line-height: 24px;
                }
            }
        }
    }
    .projects {
        margin-bottom: 64px;
        h2 {
            margin-bottom: 16px;
            font-size: 28px;
            line-height: 32px;
        }
        & > p {
            margin-bottom: 40px;
            font-size: 18px;
            line-height: 28px;
        }
        .list {
            grid-template-columns: repeat(2, 1fr);
            gap: 20px;
            div {
                padding: 31px;
                p {
                    font-size: 14px;
                    line-height: 16px;
                }
            }
        }
    }
    .contest {
        padding: 64px 0px;
        margin-bottom: 64px;
        .wrapper {
            h2 {
                font-size: 28px;
                line-height: 32px;
            }
            p {
                font-size: 18px;
                line-height: 28px;
            }
            img {
                display: none;
            }
        }
    }
    .conditions {
        margin-bottom: 96px;
        h2 {
            font-size: 28px;
            line-height: 32px;
        }
        & > p {
            margin-bottom: 8px;
            font-size: 18px;
            line-height: 28px;
        }
        .items {
            .item {
                gap: 24px;
                padding: 32px 0;
                .info {
                    gap: 8px;
                    p {
                        font-size: 18px;
                        line-height: 24px;
                    }
                    span {
                        font-size: 12px;
                        line-height: 16px;
                    }
                }
                .text {
                    gap: 28px;
                    ol, ul {
                        margin-left: 23px;
                    }
                    p, li {
                        font-size: 14px;
                        line-height: 16px;
                    }
                }
            }
        }
    }
    .grant {
        margin-bottom: 128px;
        h2 {
            font-size: 28px;
            line-height: 32px;
        }
        & > p {
            margin-bottom: 40px;
            font-size: 18px;
        }
        .items {
            grid-template-columns: repeat(2, 1fr);
            gap: 20px;
            .item {
                padding: 31px;
                &:nth-child(3n) {
                    grid-column: 1/-1;
                }
                h3 {
                    font-size: 20px;
                    line-height: 24px;
                }
                p {
                    font-size: 14px;
                    line-height: 16px;
                }
            }
        }
    }
    .how-work {
        margin-bottom: 64px;
        h2 {
            font-size: 28px;
            line-height: 32px;
        }
        & > p {
            margin-bottom: 40px;
            max-width: 720px;
            font-size: 18px;
        }
        .items {
            grid-template-columns: repeat(2, 1fr);
            gap: 20px;
            margin-bottom: 40px;
            .item {
                padding: 31px;
                span {
                    font-size: 20px;
                    line-height: 24px;
                }
                h3 {
                    font-size: 20px;
                    line-height: 24px;
                }
                p {
                    font-size: 14px;
                    line-height: 16px;
                }
            }
        }
        .docs {
            grid-template-columns: 56px 1fr 221px;
            gap: 20px;
            padding: 24px;
            p {
                font-size: 18px;
            }
        }
    }
}
@media screen and (max-width: 599px) {
    main {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .promo {
        gap: 28px;
        margin-bottom: 40px;
        .info {
            h1 {
                font-size: 36px;
                line-height: 40px;
                margin-bottom: 16px;
            }
            p {
                margin-bottom: 24px;
                font-size: 18px;
                line-height: 24px;
            }
            .btn {
                justify-content: center;
                align-items: center;
                width: 100%;
            }
        }
        .list {
            gap: 12px;
            margin-bottom: 16px;
            p {
                display: grid;
                grid-template-columns: 1fr 1fr;
                align-items: flex-start;
                gap: 12px;
                font-size: 16px;
                line-height: 24px;
            }
        }
    }
    .projects {
        margin-bottom: 40px;
        h2 {
            font-size: 28px;
            line-height: 32px;
        }
        & > p {
            margin-bottom: 28px;
            font-size: 16px;
            line-height: 24px;
        }
        .list {
            grid-template-columns: 1fr;
            gap: 16px;
            div {
                padding: 23px;
            }
        }
    }
    .contest {
        padding: 40px 0px;
        margin-bottom: 40px;
        .wrapper {
            p {
                font-size: 16px;
                line-height: 24px;
            }
        }
    }
    .conditions {
        margin-bottom: 56px;
        h2 {
            font-size: 28px;
            line-height: 32px;
        }
        & > p {
            margin-bottom: 4px;
            font-size: 16px;
            line-height: 24px;
        }
        .items {
            .item {
                grid-template-columns: 1fr;
                gap: 16px;
                padding: 24px 0;
                .info {
                    gap: 8px;
                }
                .text {
                    gap: 25px;
                    ol, ul {
                        margin-left: 23px;
                    }
                    p, li {
                        font-size: 14px;
                        line-height: 16px;
                    }
                }
            }
        }
    }
    .grant {
        margin-bottom: 80px;
        & > p {
            margin-bottom: 28px;
            font-size: 16px;
            line-height: 24px;
        }
        .items {
            grid-template-columns: 1fr;
            gap: 16px;
            .item {
                gap: 12px;
                padding: 23px;
            }
        }
    }
    .how-work {
        margin-bottom: 40px;
        & > p {
            margin-bottom: 28px;
            font-size: 16px;
            line-height: 24px;
        }
        .items {
            grid-template-columns: 1fr;
            gap: 16px;
            margin-bottom: 28px;
            .item {
                padding: 23px;
            }
        }
        .docs {
            display: flex;
            flex-direction: column;
            gap: 16px;
            align-items: start;
            padding: 14px;
            p {
                font-size: 16px;
                line-height: 24px;
            }
            .btn {
                display: flex;
                justify-content: center;
                width: 100%;
            }
        }
    }
}