/* Course four only. Keep this file separate for an isolated production release. */
html .course-detail--estate { padding: 0; }
html .course-detail--estate > .course-detail__wrap { margin: 0 auto; width: 100%; max-width: 1440px; }
html .course-detail--estate + .course-detail__wrap { padding-top: 72px; }
html .course-detail__hero--estate {
    display: flex; gap: 32px; padding: 64px max(32px, 8.2%) 64px;
    background: #fff; color: #173840; border-radius: 0;
}
html .course-detail__hero--estate .course-detail__copy { flex: 1 1 55%; min-width: 0; gap: 40px; container-type: inline-size; }
html .course-detail__hero--estate .course-detail__hero-breadcrumbs { margin: 0 0 16px; font-size: 14px; }
html .course-detail__hero--estate .course-detail__tag { border: 0; background: #eed195; color: #173840; }
html .course-detail__hero--estate .course-detail__title { color: #173840; font-size: clamp(32px, 14cqw, 64px); line-height: .9; }
html .course-detail__hero--estate .course-detail__title em { font-size: .85em; font-weight: 600; }
html .course-detail__hero--estate .course-detail__lead { color: #173840; font-size: 16px; line-height: 1.3; max-width: 606px; }
html .course-detail__hero--estate .course-detail__visual {
    flex: 1 1 45%; min-width: 0; min-height: 0; aspect-ratio: 566 / 569; align-self: center;
    background: url('img/course-detail-estate-art.webp') center / contain no-repeat;
}
html .course-landing__card--estate { background: #173840 url('img/course-card-estate-bg.webp') center / cover no-repeat; }
html .course-landing__card--estate .course-landing__card-shell { position: static; height: auto; min-height: 452px; box-sizing: border-box; padding-bottom: 112px; }
html .course-landing__card--estate .course-landing__card-copy { gap: 20px; }
html .course-landing__card--estate .course-landing__card-title { font-size: clamp(36px, 3.5vw, 54px); max-width: 80%; }
html .course-landing__card--estate .course-landing__card-text { max-width: 54%; font-size: 16px; }
html .course-landing__card--estate .course-landing__card-text-mobile { display: none; }
html .course-landing__card--estate:not(.course-landing__card--soon) .course-landing__card-action { bottom: 32px; }
@media (max-width: 960px) {
    html .course-detail__hero--estate { padding: 40px 32px; gap: 24px; }
    html .course-landing__card--estate .course-landing__card-title { max-width: 100%; }
}
@media (max-width: 650px) {
    html .course-detail--estate + .course-detail__wrap { padding-top: 32px; }
    html .course-detail__hero--estate { flex-direction: column; padding: 40px 32px 24px; gap: 32px; }
    html .course-detail__hero--estate .course-detail__copy { flex: auto; width: 100%; align-items: center; gap: 24px; text-align: center; }
    html .course-detail__hero--estate .course-detail__hero-breadcrumbs { display: none; }
    html .course-detail__hero--estate .course-detail__title { font-size: clamp(32px, 14cqw, 44px); }
    html .course-detail__hero--estate .course-detail__lead { font-size: 16px; line-height: 1.3; }
    html .course-detail__hero--estate .course-detail__visual { flex: auto; width: 100%; min-height: 0; aspect-ratio: 566 / 569; }
}
@media (max-width: 550px) {
    html .course-landing__card--estate:not(.course-landing__card--soon) .course-landing__card-shell { min-height: 0; padding-bottom: 7.36cqw; }
    html .course-landing__card--estate { background: #173840 url('img/course-card-estate-mobile-bg.webp') center / 100% 100% no-repeat; }
    html .course-landing__card--estate:not(.course-landing__card--soon) .course-landing__card-title span,
    html .course-landing__card--estate:not(.course-landing__card--soon) .course-landing__card-title em { white-space: normal; }
    html .course-landing__card--estate:not(.course-landing__card--soon) .course-landing__card-tag { min-height: 11.96cqw; }
    html .course-landing__card--estate:not(.course-landing__card--soon) .course-landing__card-title { font-size: 11.04cqw; line-height: .9; }
    html .course-landing__card--estate:not(.course-landing__card--soon) .course-landing__card-text { max-width: 100%; font-size: 4.29cqw; margin-top: 4.91cqw; }
    html .course-landing__card--estate .course-landing__card-text-desktop { display: none; }
    html .course-landing__card--estate .course-landing__card-text-mobile { display: inline; white-space: pre-line; }
}

html .course-detail__hero--estate .course-detail__visual {
    position: relative; isolation: isolate;
    background: none;
}
html .course-detail__hero--estate .course-detail__visual::before {
    content: ''; position: absolute; z-index: 0;
    width: 80%; aspect-ratio: 1; left: 10%; top: 4%;
    border-radius: 15px; background: #f8f8fc;
}
html .course-detail__hero--estate .course-detail__visual::after {
    content: ''; position: absolute; inset: 0; z-index: 1;
    background: url('img/course-detail-estate-art.webp') center / contain no-repeat;
}
html .course-detail__experts-slider--estate .course-detail__expert-portrait-image { object-position: center top; }
html .course-detail__experts-slider--estate { overflow: hidden; }
html .course-detail__experts-slider--estate .course-detail__experts-grid {
    display: flex; gap: 0; overflow: visible; grid-template-columns: none;
}
html .course-detail__experts-slider--estate .course-detail__expert-card { flex-shrink: 0; }
html .course-detail__experts-slider--estate .course-detail__expert-portrait-image { user-select: none; -webkit-user-drag: none; }

/* Program list: the «ТЕСТИРОВАНИЕ» badge is wider than the 120px pill used by courses 1–3 (desktop grid only). */
@media (min-width: 961px) {
    html .course-detail--estate + .course-detail__wrap + .ab5_prgsw .ab5_it_head { grid-template-columns: 25px 160px minmax(0, 1fr) 40px; }
    html .course-detail--estate + .course-detail__wrap + .ab5_prgsw .ab5_it_num { width: 160px; }
    html .course-detail--estate + .course-detail__wrap + .ab5_prgsw .ab5_it_cntw { margin-left: 240px; }
}
