.courses-page {
    --course-accent: #a3ff00;
    --course-bg: #0b0c0d;
    --course-panel: #191b1c;
    --course-line: rgba(255, 255, 255, .13);
    --course-muted: #b9bbbd;
    overflow: hidden;
    background: var(--course-bg);
    color: #fff;
    font-family: "Gilroy", sans-serif;
    font-weight: 300;
}
.courses-page * { box-sizing: border-box; }
.courses-page h1, .courses-page h2, .courses-page h3 { color: #fff; font-family: "RF Dewi", sans-serif; font-weight: 800; line-height: 1.02; text-transform: uppercase; }
.courses-page p { margin: 0; line-height: 1.45; }
.courses-page button, .courses-page a { -webkit-tap-highlight-color: transparent; }
.courses-container { width: min(100% - 40px, 1320px); margin-inline: auto; }
.course-sprite { background-repeat: no-repeat; background-color: #17191a; }
.course-sprite--sheet1 { background-image: url('../img/courses/assets.png'); }
.course-sprite--sheet2 { background-image: url('../img/courses/assets2.png'); }
.courses-art--custom { background-repeat: no-repeat; background-position: center; background-size: cover; }
.courses-eyebrow { display: inline-flex; align-items: center; gap: 10px; font-size: 12px; line-height: 1.3; font-weight: 800; letter-spacing: .055em; text-transform: uppercase; color: #c7c9ca; }
.courses-eyebrow::before { content: ""; width: 25px; height: 2px; background: var(--course-accent); }
.courses-page h1 span, .courses-page h2 span { color: var(--course-accent); }

.courses-hero { position: relative; min-height: 430px; isolation: isolate; background: #090a0b; }
.courses-hero::before { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, #080909 5%, rgba(8, 9, 9, .9) 24%, rgba(8, 9, 9, .12) 72%, rgba(8, 9, 9, .58)), linear-gradient(0deg, #0b0c0d, transparent 22%); }
.courses-hero__art { position: absolute; z-index: -2; right: 0; top: 0; height: 100%; aspect-ratio: 615 / 196; max-width: none; }
.courses-hero__inner { position: relative; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; min-height: 430px; padding-top: 42px; padding-bottom: 36px; }
.courses-hero h1 { margin: 16px 0 10px; font-size: clamp(52px, 6.3vw, 100px); letter-spacing: -.035em; max-width: 680px; }
.courses-hero h1 span { display: block; }
.courses-hero__lead { font-size: clamp(13px, 1.25vw, 18px); font-weight: 800; line-height: 1.3 !important; text-transform: uppercase; }
.courses-hero__benefits { display: flex; flex-wrap: wrap; gap: 18px 28px; margin-top: 34px; }
.courses-hero__benefits span { display: flex; align-items: center; gap: 9px; font-size: 11px; line-height: 1.3; font-weight: 800; text-transform: uppercase; }
.courses-hero__benefits b { color: var(--course-accent); font-family: Arial, sans-serif; font-size: 28px; font-weight: 300; }
.courses-hero__year { position: absolute; right: 0; bottom: 42px; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.courses-hero__year em, .courses-result__inner em { color: var(--course-accent); font-style: normal; }

.courses-selection { padding-top: 34px; padding-bottom: 38px; }
.courses-section-head--center { text-align: center; }
.courses-section-head h2 { margin: 9px 0 5px; font-size: clamp(29px, 3vw, 46px); }
.courses-section-head p { color: #d2d3d3; font-size: 14px; }
.courses-filters { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); margin: 24px 0 18px; }
.courses-filter { display: flex; align-items: center; justify-content: center; gap: 8px; min-width: 0; min-height: 52px; padding: 9px 8px; border: 1px solid var(--course-line); background: transparent; color: #fff; font-family: inherit; font-size: 11px; font-weight: 800; text-transform: uppercase; overflow-wrap: anywhere; cursor: pointer; transition: color .2s, background .2s, box-shadow .2s; }
.courses-filter span { font-family: Arial, sans-serif; font-size: 24px; line-height: 1; font-weight: 300; }
.courses-filter:hover, .courses-filter.is-active { color: var(--course-accent); background: rgba(163, 255, 0, .05); box-shadow: inset 0 0 0 1px var(--course-accent); }
.courses-carousel { display: grid; grid-template-columns: 40px minmax(0, 1fr) 40px; align-items: center; gap: 10px; margin-inline: -50px; }
.courses-carousel__arrow { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid var(--course-accent); border-radius: 50%; background: transparent; color: var(--course-accent); font: 36px/1 Arial, sans-serif; cursor: pointer; transition: background .2s, color .2s; }
.courses-carousel__arrow:hover { background: var(--course-accent); color: #0b0c0d; }
.courses-carousel__arrow:disabled { opacity: .32; cursor: default; }
.courses-carousel__track { display: flex; gap: 14px; min-width: 0; overflow-x: auto; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-width: none; }
.courses-carousel__track::-webkit-scrollbar { display: none; }
.courses-card { position: relative; display: flex; flex: 0 0 calc((100% - 56px) / 5); flex-direction: column; justify-content: flex-end; min-width: 0; min-height: 365px; isolation: isolate; overflow: hidden; border: 1px solid var(--course-line); background: #101112; scroll-snap-align: start; }
.courses-card[hidden] { display: none; }
.courses-card::before { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(0deg, #0a0b0b 0, rgba(10, 11, 11, .98) 19%, rgba(10, 11, 11, .3) 68%, transparent 100%); }
.courses-card__image { position: absolute; z-index: -2; top: 0; left: 0; width: 100%; aspect-ratio: 153 / 209; background-size: cover; background-position: center top; }
.courses-card__number { position: absolute; top: 12px; left: 14px; font: 800 28px/1 "RF Dewi", sans-serif; color: #d4d4d4; text-shadow: 0 2px 8px #000; }
.courses-card__content { display: flex; flex-direction: column; align-items: flex-start; min-height: 160px; padding: 12px 13px 9px; }
.courses-card__price { margin: 6px 0 4px; color: var(--course-accent); font-size: 15px; font-weight: 800; line-height: 1.2; }
.courses-card__price .woocommerce-Price-currencySymbol { margin-left: 2px; }
.courses-card__badge { color: var(--course-accent); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.courses-card h3 { min-height: 46px; margin: 3px 0 5px; font-size: clamp(13px, 1.1vw, 16px); line-height: 1.15; overflow-wrap: anywhere; }
.courses-card p { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; min-height: 55px; color: #d1d2d2; font-size: 11px; }
.courses-card__more { display: flex; align-items: center; justify-content: space-between; width: 100%; margin-top: 10px; padding: 8px 0 0; border: 0; border-top: 1px solid var(--course-line); background: none; color: #fff; font-family: inherit; font-size: 10px; font-weight: 800; text-align: left; text-transform: uppercase; cursor: pointer; }
.courses-card__more span { display: grid; place-items: center; width: 23px; height: 23px; border: 1px solid var(--course-accent); border-radius: 50%; color: var(--course-accent); font: 18px/1 Arial, sans-serif; }
.courses-card__more:hover { color: var(--course-accent); }
.courses-carousel__dots { display: flex; justify-content: center; gap: 9px; min-height: 10px; margin-top: 20px; }
.courses-carousel__dots button { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 50%; background: #747678; cursor: pointer; }
.courses-carousel__dots button.is-active { background: var(--course-accent); }
.courses-selection__empty { padding: 30px; text-align: center; }

.courses-why { padding-top: 10px; padding-bottom: 42px; }
.courses-why__intro, .courses-faq__head { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: end; }
.courses-why h2, .courses-faq h2, .courses-guide h2, .courses-contact h2 { margin: 10px 0 0; font-size: clamp(28px, 3vw, 43px); }
.courses-why__intro > p, .courses-faq__head > p { max-width: 460px; padding-bottom: 3px; color: #c5c6c7; font-size: 16px; }
.courses-why__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; margin-top: 30px; }
.courses-why__grid > div { display: flex; align-items: center; gap: 14px; min-width: 0; font-size: 12px; font-weight: 800; line-height: 1.4; text-transform: uppercase; }
.courses-why__grid > div > span { overflow-wrap: anywhere; }
.courses-why__icon { display: block; flex: none; width: 44px; height: 44px; color: var(--course-accent); fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }

.courses-guide { position: relative; min-height: clamp(295px, 20.5vw, 400px); isolation: isolate; border-top: 1px solid var(--course-line); border-bottom: 1px solid var(--course-line); background: #111; }
.courses-guide::before { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(11, 12, 13, .42), transparent 35%, transparent 65%, rgba(11, 12, 13, .3)); }
.courses-guide__art { position: absolute; z-index: -2; inset: 0; background-position: center; background-size: cover; background-repeat: no-repeat; }
.courses-guide__inner { display: flex; justify-content: space-between; align-items: center; min-height: clamp(295px, 20.5vw, 400px); padding-block: 24px; }
.courses-guide__inner > div { max-width: 445px; }
.courses-guide h2 { margin-bottom: 8px; }
.courses-guide p { max-width: 420px; color: #d0d0d1; font-size: 14px; }
.courses-button { display: inline-flex; align-items: center; justify-content: center; gap: 15px; min-height: 45px; padding: 10px 20px; border: 1px solid var(--course-accent); border-radius: 2px; font-family: "Gilroy", sans-serif; font-size: 12px; font-weight: 800; text-decoration: none; text-transform: uppercase; transition: background .2s, color .2s, transform .2s; }
.courses-button:hover { transform: translateY(-2px); }
.courses-button--outline { color: var(--course-accent); background: rgba(0, 0, 0, .18); }
.courses-button--outline:hover { color: #0b0c0d; background: var(--course-accent); }
.courses-button--solid { color: #090b0b; background: var(--course-accent); }
.courses-button--solid:hover { color: #090b0b; background: #c5ff5c; }
.courses-guide .courses-button { margin-top: 15px; }
.courses-guide ol { display: grid; gap: 10px; max-width: 300px; margin: 0; padding: 0; list-style: none; counter-reset: course-step; }
.courses-guide li { display: flex; align-items: center; gap: 18px; color: #e5e5e5; font-size: 12px; text-transform: uppercase; counter-increment: course-step; }
.courses-guide li::before { content: counter(course-step, decimal-leading-zero); color: #c1c3c3; font: 24px/1 "RF Dewi", sans-serif; }

.courses-faq { padding-top: 34px; padding-bottom: 40px; }
.courses-faq__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; margin-top: 24px; }
.courses-faq__column { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.courses-faq details { align-self: stretch; border: 1px solid var(--course-line); background: #191a1a; }
.courses-faq summary { position: relative; padding: 10px 37px 10px 15px; color: #e6e6e6; font-size: 13px; cursor: pointer; list-style: none; }
.courses-faq summary::-webkit-details-marker { display: none; }
.courses-faq summary::after { content: "+"; position: absolute; right: 13px; top: 50%; transform: translateY(-50%); font: 23px/1 Arial, sans-serif; }
.courses-faq details[open] summary::after { content: "−"; color: var(--course-accent); }
.courses-faq details p { padding: 0 15px 14px; color: #c4c4c4; font-size: 13px; }

.courses-result { position: relative; min-height: 245px; isolation: isolate; border-top: 1px solid var(--course-line); border-bottom: 1px solid var(--course-line); background: #0b0c0d; }
.courses-result::before { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, #0b0c0d 0, rgba(11, 12, 13, .88) 26%, rgba(11, 12, 13, .05) 73%, #0b0c0d 100%); }
.courses-result__art { position: absolute; z-index: -2; top: 0; right: 9%; height: 100%; aspect-ratio: 497 / 196; }
.courses-result__inner { display: flex; justify-content: space-between; align-items: flex-start; min-height: 245px; padding-top: 25px; }
.courses-result h2 { margin: 0; font-size: clamp(29px, 3.2vw, 48px); }
.courses-result__inner > span { font-size: 11px; font-weight: 800; text-align: right; text-transform: uppercase; }
.courses-contact { display: grid; grid-template-columns: 1fr 1.3fr auto; gap: 30px; align-items: center; padding-top: 27px; padding-bottom: 32px; }
.courses-contact h2 { font-size: clamp(25px, 2.5vw, 36px); }
.courses-contact p { max-width: 445px; color: #d0d1d1; font-size: 15px; }

.courses-modal { position: fixed; width: min(100% - 32px, 970px); max-width: none; max-height: min(92vh, 1080px); margin: auto; padding: 26px; overflow-x: hidden; overflow-y: auto; border: 1px solid #606362; border-radius: 4px; background: #1b1d1d; color: #fff; box-shadow: 0 30px 90px #000; font-family: "Gilroy", sans-serif; font-weight: 300; scrollbar-color: #7caa2b #151717; scrollbar-width: thin; }
.courses-modal::-webkit-scrollbar { width: 10px; }
.courses-modal::-webkit-scrollbar-track { background: #151717; }
.courses-modal::-webkit-scrollbar-thumb { border: 2px solid #151717; border-radius: 10px; background: #7caa2b; }
.courses-modal::-webkit-scrollbar-thumb:hover { background: #a3ff00; }
body.courses-dialog-open { overflow: hidden; }
.courses-modal::backdrop { background: rgba(0, 0, 0, .78); backdrop-filter: blur(5px); }
.courses-modal__close { position: sticky; z-index: 3; display: grid; place-items: center; float: right; top: 0; width: 35px; height: 35px; margin: -8px -8px 0 0; border: 0; background: #242626; color: #fff; font: 32px/1 Arial, sans-serif; cursor: pointer; }
.courses-modal__close:hover { color: var(--course-accent, #a3ff00); }
.courses-modal__layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 14px 24px; clear: both; }
.courses-modal__media { min-width: 0; }
.courses-modal__main-art { display: flex; align-items: center; justify-content: center; height: 320px; overflow: hidden; background: #101111; }
.courses-modal__main-art > img { width: 100%; height: 100%; object-fit: contain; }
.courses-modal__main-art > .course-sprite { display: block; flex: none; aspect-ratio: var(--sprite-ratio); }
.courses-modal__main-art > .course-sprite--portrait { width: auto; height: 100%; }
.courses-modal__main-art > .course-sprite--landscape { width: 100%; height: auto; }
.courses-modal__thumbs { display: flex; gap: 6px; margin-top: 8px; }
.courses-modal__thumbs button { position: relative; flex: 0 0 75px; width: 75px; height: 64px; overflow: hidden; padding: 0; border: 1px solid #595d5d; background: #111; cursor: pointer; }
.courses-modal__thumbs button.is-active { border-color: #a3ff00; }
.courses-modal__thumbs img { display: block; width: 100%; height: 100%; object-fit: cover; }
.courses-modal__thumbs .course-sprite { position: absolute; top: 50%; left: 50%; display: block; aspect-ratio: var(--sprite-ratio); transform: translate(-50%, -50%); }
.courses-modal__thumbs .course-sprite--portrait { width: 100%; height: auto; }
.courses-modal__thumbs .course-sprite--landscape { width: auto; height: 100%; }
.courses-modal__crumb { color: #c9caca; font-size: 12px; }
.courses-modal__badge { display: inline-block; margin-top: 16px; padding: 5px 8px; background: rgba(163, 255, 0, .12); color: #a3ff00; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.courses-modal__summary h2 { margin: 8px 0 4px; color: #fff; font: 800 clamp(22px, 2vw, 31px)/1.1 "RF Dewi", sans-serif; text-transform: none; }
.courses-modal__subtitle { margin: 0 0 12px; color: #d8d9d9; font-size: 18px; }
.courses-modal__price { margin: 0 0 12px; color: #a3ff00; font: 800 22px/1.2 "RF Dewi", sans-serif; }
.courses-modal__price .woocommerce-Price-currencySymbol { margin-left: 3px; }
.courses-modal__copy { grid-column: 1; min-width: 0; margin-top: -6px; color: #d8d8d8; font-size: 13px; line-height: 1.45; }
.courses-modal__copy p { margin: 0 0 8px; }
.courses-modal .courses-modal__copy h3 { margin: 16px 0 8px; font-size: 15px; line-height: 1.35; }
.courses-modal__copy ul, .courses-modal__copy ol { margin: 0 0 14px; padding-left: 24px; }
.courses-modal__copy ul { list-style: disc; }
.courses-modal__copy ol { list-style: decimal; }
.courses-modal__copy li { margin-bottom: 8px; padding-left: 4px; list-style: inherit; }
.courses-modal__copy li:last-child { margin-bottom: 0; }
.courses-modal__copy li::marker { color: #a3ff00; font-weight: 800; }
.courses-modal__copy li > p { margin: 0; }
.courses-modal__copy ul ul, .courses-modal__copy ul ol, .courses-modal__copy ol ul, .courses-modal__copy ol ol { margin-top: 8px; margin-bottom: 0; }
.courses-modal__stats { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 18px; border: 1px solid #3d4141; }
.courses-modal__stats > div { display: flex; flex-direction: column; align-items: center; gap: 5px; min-height: 89px; padding: 7px 3px; border-right: 1px solid #3d4141; text-align: center; }
.courses-modal__stats > div:last-child { border-right: 0; }
.courses-modal__stat-icon { display: block; flex: none; width: 28px; height: 28px; margin: 2px 0 3px; color: #a3ff00; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.courses-modal__stats span { color: #bbb; font-size: 9px; text-transform: uppercase; }
.courses-modal__stats strong { color: #fff; font-size: 11px; font-weight: 800; }
.courses-modal__table-block, .courses-modal__results { align-self: start; min-width: 0; padding: 14px; background: #222424; }
.courses-modal h3 { margin: 0 0 10px; color: #fff; font: 800 17px/1.2 "Gilroy", sans-serif; text-transform: none; }
.courses-modal__table-block > p, .courses-modal__results > p { color: #cacbcb; font-size: 13px; line-height: 1.4; }
.courses-modal__table-wrap { overflow-x: auto; }
.courses-modal table { width: 100%; border-collapse: collapse; color: #eee; font-size: 12px; }
.courses-modal th, .courses-modal td { padding: 10px 7px; border: 1px solid #3d4141; text-align: left; vertical-align: top; }
.courses-modal th { font-weight: 300; }
.courses-modal__results ul { display: grid; gap: 9px; margin: 0; padding: 0; list-style: none; }
.courses-modal__results li { display: flex; gap: 9px; color: #e2e2e2; font-size: 12px; line-height: 1.35; }
.courses-modal__results li::before { content: "✓"; color: #a3ff00; }
.courses-modal__characteristics, .courses-modal__faq { grid-column: 1 / -1; min-width: 0; }
.courses-modal__characteristics table { table-layout: fixed; }
.courses-modal__characteristics th { width: 40%; color: #bfc2c2; }
.courses-modal__characteristics th, .courses-modal__characteristics td { overflow-wrap: anywhere; line-height: 1.5; }
.courses-modal__faq { padding: 14px; background: #222424; }
.courses-modal__faq details { margin-top: 8px; border: 1px solid #3d4141; background: #1b1d1d; }
.courses-modal__faq summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px; color: #eee; font-size: 13px; line-height: 1.5; list-style: none; cursor: pointer; overflow-wrap: anywhere; }
.courses-modal__faq summary::-webkit-details-marker { display: none; }
.courses-modal__faq summary::after { content: "+"; flex: none; color: #a3ff00; font: 24px/1 Arial, sans-serif; }
.courses-modal__faq details[open] summary::after { content: "−"; }
.courses-modal__faq-answer { padding: 0 12px 12px; color: #caccce; font-size: 13px; line-height: 1.6; overflow-wrap: anywhere; }
.courses-modal__note { align-self: start; padding: 13px; border: 1px solid #a3ff00; color: #d6d7d7; font-size: 12px; line-height: 1.4; }
.courses-modal__actions { display: flex; grid-column: 1 / -1; justify-content: center; gap: 14px; }
.courses-modal__actions .courses-button { flex: 0 1 420px; }
.courses-page :focus-visible, .courses-modal :focus-visible { outline: 2px solid #a3ff00; outline-offset: 3px; }

@media (max-width: 1200px) {
    .courses-carousel { margin-inline: 0; grid-template-columns: minmax(0, 1fr); gap: 0; }
    .courses-carousel__arrow { display: none; }
    .courses-card { flex-basis: calc((100% - 42px) / 4); }
    .courses-filters { overflow-x: auto; display: flex; }
    .courses-filter { flex: 0 0 auto; min-width: 145px; }
}
@media (max-width: 850px) {
    .courses-why__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .courses-hero, .courses-hero__inner { min-height: 450px; }
    .courses-hero__art { right: -200px; opacity: .75; }
    .courses-hero__benefits { max-width: 440px; gap: 12px 18px; }
    .courses-hero__benefits span { width: calc(50% - 10px); }
    .courses-hero__year { display: none; }
    .courses-card { flex-basis: calc((100% - 28px) / 3); }
    .courses-contact { grid-template-columns: 1fr 1fr; }
    .courses-contact .courses-button { grid-column: 1 / -1; justify-self: start; }
}
@media (max-width: 600px) {
    .courses-container { width: min(100% - 28px, 1320px); }
    .courses-hero, .courses-hero__inner { min-height: 500px; }
    .courses-hero__art { right: -370px; opacity: .65; }
    .courses-hero::before { background: linear-gradient(90deg, rgba(8, 9, 9, .96), rgba(8, 9, 9, .22)), linear-gradient(0deg, #0b0c0d, transparent 35%); }
    .courses-hero__inner { justify-content: flex-end; padding-bottom: 30px; }
    .courses-hero h1 { font-size: clamp(42px, 11vw, 65px); }
    .courses-hero__lead { font-size: 12px; }
    .courses-hero__benefits { margin-top: 24px; }
    .courses-hero__benefits span { font-size: 10px; }
    .courses-selection { padding-top: 30px; }
    .courses-section-head h2 { font-size: 30px; }
    .courses-section-head p { font-size: 12px; }
    .courses-filters { margin-inline: -14px; padding-inline: 14px; border: 0; scrollbar-width: none; }
    .courses-filter { min-height: 46px; min-width: 130px; border: 1px solid var(--course-line); }
    .courses-card { flex-basis: min(72vw, 270px); min-height: 380px; }
    .courses-carousel__dots { margin-top: 15px; }
    .courses-why__intro, .courses-faq__head { grid-template-columns: 1fr; gap: 12px; }
    .courses-why__intro > p, .courses-faq__head > p { font-size: 14px; }
    .courses-why__grid { gap: 22px 16px; margin-top: 26px; }
    .courses-why__grid > div { gap: 10px; font-size: 10px; }
    .courses-why__icon { width: 36px; height: 36px; }
    .courses-guide__inner { display: block; padding-block: 32px; }
    .courses-guide__art { background-position: 54% center; opacity: .45; }
    .courses-guide::before { background: linear-gradient(90deg, rgba(11, 12, 13, .9), rgba(11, 12, 13, .5)); }
    .courses-guide ol { margin-top: 28px; }
    .courses-faq__grid { grid-template-columns: 1fr; }
    .courses-result__art { right: -60%; opacity: .6; }
    .courses-result__inner { min-height: 220px; }
    .courses-result__inner > span { display: none; }
    .courses-contact { display: block; }
    .courses-contact p { margin: 15px 0; font-size: 14px; }
    .courses-modal { width: calc(100% - 16px); max-height: 94vh; padding: 16px; }
    .courses-modal__layout { grid-template-columns: 1fr; gap: 12px; }
    .courses-modal__copy { grid-column: auto; margin-top: 0; }
    .courses-modal__main-art { height: 290px; }
    .courses-modal__actions { flex-direction: column; }
    .courses-modal__actions .courses-button { flex: none; width: 100%; }
}
