.teacher-subscription-page .teacher-constructor--pricing {
    padding: 12px 0 48px;
    background: radial-gradient(ellipse at 50% 70%, var(--home_tint_blue), transparent 72%);
}

.teacher-constructor--pricing .teacher-constructor__header {
    margin-bottom: 32px;
    overflow: hidden;
}

.teacher-constructor--pricing .teacher-constructor__section,
.teacher-constructor--pricing .teacher-constructor__summary-inner {
    padding: 24px;
    border: 2px solid var(--home_card_border);
    border-radius: 24px;
    background: var(--subscription-surface);
}

.teacher-constructor--pricing .teacher-constructor__summary-inner {
    border-color: var(--accent);
    background: linear-gradient(150deg, color-mix(in srgb, var(--accent) 6%, var(--subscription-surface)), var(--subscription-surface) 55%);
    box-shadow: 0 8px 28px color-mix(in srgb, var(--accent) 9%, transparent);
}

.teacher-constructor--pricing .teacher-constructor__summary-title {
    margin: 0 0 20px;
    font-size: 22px;
}

.teacher-constructor--pricing .teacher-constructor__included {
    color: var(--secondary);
    font-size: 14px;
    line-height: 1.6;
    margin: 20px 0 0;
    padding-top: 18px;
    border-top: 1px solid var(--home_card_border);
}

.teacher-constructor--pricing .teacher-constructor__price-line > .price {
    font-size: 40px;
}

.teacher-subscription-page .teacher-subscription-features {
    margin-top: clamp(24px, 4vw, 48px);
    padding-bottom: 48px;
}

.teacher-subscription-features__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.teacher-subscription-feature {
    padding: 24px;
    border: 2px solid var(--home_card_border);
    border-radius: 24px;
    background: var(--subscription-surface);
}

.teacher-subscription-feature > img {
    display: block;
    width: 40px;
    height: 40px;
    object-fit: contain;
    margin-bottom: 20px;
}

.teacher-subscription-feature h3 {
    font-size: 20px;
    line-height: 1.4;
}

.teacher-subscription-feature p {
    margin: 12px 0 0;
    color: var(--secondary);
    font-size: 16px;
    line-height: 1.65;
}

@media (max-width: 900px) {
    .teacher-subscription-features__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .teacher-constructor--pricing .teacher-constructor__section,
    .teacher-constructor--pricing .teacher-constructor__summary-inner,
    .teacher-subscription-feature {
        padding: 20px;
    }

    .teacher-subscription-features__grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 16px;
    }
}
