* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: #111; font-family: DINPro, Arial, sans-serif; }
main { padding-top: 70px; }
button, input { font: inherit; }

.course-hero, .course-intro, .course-bonus, .course-request { --course-background: #fff; background: var(--course-background); }
.course-hero { --course-background: #eef2f5; }
.course-hero__inner { display: grid; grid-template-columns: 1fr 0.78fr; min-height: 700px; }
.course-hero__copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; min-width: 0; padding: 90px 5vw 90px 10vw; }
.course-hero h1, .course-intro h2, .course-request h2 { margin: 0; font-size: var(--iridi-title-font-size); font-weight: var(--iridi-title-font-weight); line-height: 1.1; color: var(--iridi-title-color); }
.course-hero p, .course-intro p, .course-request__lead { margin: var(--iridi-desc-margin-top) 0 0; font-size: var(--iridi-desc-font-size); line-height: 1.45; color: var(--iridi-desc-color); }
.course-hero__tags { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.course-hero__tags span { padding: 10px 14px; background: #fff; font-size: 18px; line-height: 1.2; }
.course-hero__image, .course-intro__image, .course-bonus__image { min-height: 240px; background: #dfe7ed; }
.course-hero__image { display: grid; place-items: center; padding: 5vw; background: var(--course-background); }
.course-hero__image img { display: block; width: min(100%, 622px); height: auto; }
.course-button { display: inline-flex; align-items: center; justify-content: center; min-width: 230px; min-height: 60px; padding: 12px 24px; border: 0; background: #0079ff; color: #fff; text-align: center; text-decoration: none; font-size: 21px; cursor: pointer; }
.course-button:hover { background: #0057b7; }
.course-button:disabled { background: #8fa8bf; cursor: not-allowed; }
.course-hero__button { margin-top: 40px; }
:focus-visible { outline: 3px solid #0057b7; outline-offset: 3px; }

.course-intro { display: flex; flex-direction: row; min-height: var(--iridi-block-min-height); }
.course-intro__image, .course-intro__copy { width: 50%; min-width: 0; }
.course-intro__image { background: url('./assets/image_1_cool.png') center / cover no-repeat; }
.course-intro__image img { display: none; visibility: hidden; width: 100%; }
.course-intro__copy { display: flex; flex-direction: column; padding: 100px 10vw 100px 5vw; background: #f5f8fa; }
.course-intro p + p { margin-top: 1em; }

.course-program { --block-columns-background: #fff; }
.course-program__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.course-program .block_columns_item_title, .course-bonus .block_columns_item_title { overflow-wrap: anywhere; }
.course-bonus { --course-background: #eef2f5; --block-columns-background: #eef2f5; --block-columns-card-background: #fff; }
.course-bonus .block_columns_grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.course-bonus .block_columns_item_title { margin-top: 0; }
.course-bonus__image { height: 220px; min-height: 0; margin-bottom: 24px; overflow: hidden; }
.course-bonus__image img { display: block; width: 100%; height: 100%; object-fit: cover; }

.course-demo { --block-standard-background: #fff; display: flex; flex-direction: row; min-height: var(--iridi-block-min-height); background: var(--block-standard-background); }
.course-demo__copy, .course-demo__image { width: 50%; min-width: 0; }
.course-demo__copy { display: flex; flex-direction: column; padding: 100px 5vw 100px 10vw; background: #fff; }
.course-demo__copy h2 { margin: 0; font-size: var(--iridi-title-font-size); font-weight: var(--iridi-title-font-weight); line-height: 1.1; color: var(--iridi-title-color); }
.course-demo__copy p { margin: var(--iridi-desc-margin-top) 0 0; font-size: var(--iridi-desc-font-size); line-height: 1.45; color: var(--iridi-desc-color); }
.course-demo__copy p + p { margin-top: 1em; }
.course-demo__image { position: relative; overflow: hidden; background: url('./assets/demo-kits-dsc06274.png') center / cover no-repeat; }
.course-demo__image img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; opacity: 0; }

.course-request { --course-background: #eef2f5; padding: 100px 0; scroll-margin-top: 70px; }
.course-request__panel { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 64px; width: 80%; max-width: 1600px; margin-inline: auto; }
.course-request__copy { min-width: 0; }
.course-request h2 { font-size: clamp(32px, 3vw, 50px); line-height: 1.15; }
.course-request__lead { max-width: 70ch; margin-top: 24px; }
.course-request .course-hero__tags { margin-bottom: 32px; }
.course-request__form { display: grid; gap: 20px; min-width: 0; }
.course-request__form label { display: grid; gap: 8px; min-width: 0; font-size: 18px; }
.course-request__form input { width: 100%; min-width: 0; min-height: 60px; padding: 16px; border: 1px solid #929292; border-radius: 0; background: #fff; color: #000; font-size: 18px; }
.course-request__row { display: grid; grid-template-columns: 1fr; gap: 20px; }
.course-request__form .course-button { justify-self: start; background: #0057b7; }
.course-request__form .course-button:disabled { background: #8fa8bf; }
.course-request__privacy { margin: 0; font-size: 15px; line-height: 1.4; color: #626973; }
.course-request__privacy a { color: #0057b7; }
.course-request__status { margin: 0; font-size: 15px; line-height: 1.4; color: #626973; }

@media (min-width: 2251px) {
  .course-hero__inner { min-height: 930px; }
  .course-hero__copy { padding-top: 120px; padding-bottom: 120px; }
  .course-hero__tags span { font-size: 24px; }
  .course-intro__copy { padding-top: 120px; padding-bottom: 120px; }
  .course-demo__copy { padding-top: 120px; padding-bottom: 120px; }
}
@media (max-width: 1600px) {
  .course-hero__inner { min-height: 670px; }
}
@media (max-width: 1300px) {
  .course-hero__inner { min-height: 560px; }
  .course-hero__tags span { font-size: 16px; }
  .course-intro__copy { padding-top: 60px; padding-bottom: 60px; }
  .course-demo__copy { padding-top: 60px; padding-bottom: 60px; }
}
@media (max-width: 1100px) {
  .course-request__panel { width: 88%; gap: 32px; }
}
@media (max-width: 1000px) {
  .course-hero__inner { grid-template-columns: 1fr; }
  .course-hero__copy { padding: 50px 10vw; }
  .course-hero__image { min-height: 300px; }
  .course-intro { flex-direction: column-reverse; }
  .course-intro__image, .course-intro__copy { width: 100%; }
  .course-intro__image { min-height: 0; background: none; }
  .course-intro__image img { display: block; visibility: visible; height: auto; object-fit: cover; }
  .course-intro__copy { padding: 50px 10vw 30px; }
  .course-demo { flex-direction: column; }
  .course-demo__copy, .course-demo__image { width: 100%; }
  .course-demo__copy { padding: 50px 10vw 30px; }
  .course-demo__image { background: none; }
  .course-demo__image img { position: static; height: auto; opacity: 1; }
  .course-program__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .course-request__panel { grid-template-columns: 1fr; gap: 36px; }
}
@media (max-width: 700px) {
  .course-hero__image { min-height: 230px; }
  .course-program__grid, .course-bonus .block_columns_grid { grid-template-columns: 1fr; }
  .course-request { padding-block: 56px; }
  .course-request__form { gap: 16px; }
  .course-button { width: 100%; }
}
@media (max-width: 500px) {
  .course-hero__copy { padding: 50px 10vw; }
  .course-intro__copy { padding: 30px 10vw; }
  .course-demo__copy { padding: 30px 10vw; }
  .course-hero__tags { width: 100%; }
  .course-hero__tags span { width: 100%; }
}
