/*
 * Page styles of /termekek/onkiszolgalo-online-oktatasi-es-vizsgaztatasi-rendszer/ (PKG-XEY92X). Every selector starts
 * with the page-online-training body class (plan §8.3); the building blocks follow the other product pages
 * (quality-management.css: overview figure with the caption beside it, numbered steps of the dark band, chips;
 * positioning.css: tile grid without an empty cell).
 */

/* --- Overview figure: a square illustration, never wider than 36rem (the image is 1024 px; at the full container
   width it would be taller than the screen). From 60em the caption sits beside it, below that under it. --- */
.page-online-training .ot__overview {
  margin: 0;
  display: grid;
  gap: var(--space-4);
}

@media (min-width: 60em) {
  .page-online-training .ot__overview {
    grid-template-columns: minmax(0, 36rem) minmax(0, 1fr);
    gap: clamp(2rem, 5vw, 4rem);
    align-items: center;
  }
}

.page-online-training .ot__overview-frame {
  max-width: 36rem;
  background: var(--c-paper);
  border: 1px solid var(--c-line);
}

.page-online-training .ot__overview-frame img {
  height: auto;
}

.page-online-training .ot__overview-caption {
  max-width: 44ch;
  color: var(--c-text-2);
  font-size: var(--fs-1);
}

/* --- Seven functions: no empty (hairline coloured) cell in the tile grid. Two columns: the seventh tile takes the
   whole last row; from 64em a twelve column grid, the first row has four tiles, the second row three wider ones. --- */
@media (min-width: 40em) {
  .page-online-training .ot__tiles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-online-training .ot__tiles > :last-child:nth-child(odd) {
    grid-column: 1 / -1;
  }
}

@media (min-width: 64em) {
  .page-online-training .ot__tiles {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }

  .page-online-training .ot__tiles > * {
    grid-column: span 3;
  }

  .page-online-training .ot__tiles > :nth-child(n + 5) {
    grid-column: span 4;
  }

  .page-online-training .ot__tiles > :last-child:nth-child(odd) {
    grid-column: span 4;
  }
}

/* --- Text columns --- */
.page-online-training .ot__text .lead {
  margin-bottom: var(--space-5);
}

.page-online-training .ot__nobr {
  white-space: nowrap;
}

/* --- Numbered steps: a real sequence (identify, language, training, exam, result), joined by a hairline --- */
.page-online-training .ot__steps {
  list-style: none;
  margin: 0;
  padding: 0;
  counter-reset: ot-step;
}

.page-online-training .ot__step {
  counter-increment: ot-step;
  position: relative;
  display: grid;
  grid-template-columns: 2.75rem minmax(0, 1fr);
  column-gap: var(--space-4);
  align-items: center;
  min-height: 2.75rem;
  padding-bottom: var(--space-5);
  font: 500 var(--fs-2) / var(--lh-snug) var(--ff-display);
  color: var(--c-text);
}

@media (min-width: 40em) {
  .page-online-training .ot__step {
    column-gap: var(--space-5);
  }
}

.page-online-training .ot__step:last-child {
  padding-bottom: 0;
}

.page-online-training .ot__step::before {
  content: counter(ot-step);
  grid-column: 1;
  align-self: start;
  display: grid;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  border: 1px solid var(--c-line);
  border-radius: 50%;
  background: var(--c-paper);
  font: 300 var(--fs-3) / 1 var(--ff-display);
  font-variant-numeric: tabular-nums;
  color: var(--c-turq-700);
}

.page-online-training .ot__step::after {
  content: '';
  position: absolute;
  left: calc(1.375rem - 0.5px);
  top: 3.25rem;
  bottom: 0.5rem;
  width: 1px;
  background: var(--c-line);
}

.page-online-training .ot__step:last-child::after {
  display: none;
}

/* --- How it works is the dark dotted band: the paragraphs are muted (like .lead), the steps stay light, the
   circles and the joining line use the dark hairline. --- */
.page-online-training .section--ink .ot__text p {
  color: var(--c-on-dark-2);
}

.page-online-training .section--ink .ot__step {
  color: var(--c-on-dark);
}

.page-online-training .section--ink .ot__step::before {
  border-color: var(--c-ink-line);
  background: var(--c-ink-2);
  color: var(--c-turq);
}

.page-online-training .section--ink .ot__step::after {
  background: var(--c-ink-line);
}

@media (min-width: 60em) {
  .page-online-training .ot__steps {
    margin-top: 0.35rem;
  }
}

/* --- Who it is for: the two lists beside the paragraph, each under a small heading, separated by a hairline --- */
.page-online-training .ot__groups {
  display: grid;
  gap: var(--space-6);
}

@media (min-width: 40em) {
  .page-online-training .ot__groups {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 60em) {
  .page-online-training .ot__groups {
    padding-top: 0.35rem;
  }
}

.page-online-training .ot__group {
  padding-top: var(--space-4);
  border-top: 1px solid var(--c-line);
}

.page-online-training .ot__group h3 {
  margin: 0 0 var(--space-4);
  font-size: var(--fs-3);
}

/* --- Business benefits: limited to a readable width --- */
.page-online-training .ot__benefits {
  max-width: 60rem;
}

/* --- Building blocks: hairline chips --- */
.page-online-training .ot__chips {
  list-style: none;
  margin: 0;
  padding: 0;
  gap: var(--space-2);
}

.page-online-training .ot__chip {
  display: inline-block;
  padding: 0.45rem 0.95rem;
  border: 1px solid var(--c-line);
  border-radius: 999px;
  background: var(--c-paper);
  color: var(--c-text);
  font-size: var(--fs-1);
  line-height: 1.3;
  white-space: nowrap;
}

@media (min-width: 60em) {
  .page-online-training .ot__chips {
    padding-top: 0.35rem;
  }
}
