/* ==========================================================================
   Trainings pages (listing and training detail) — page CSS.
   Shared sections live in css/common.css. Breakpoints: 19200 / 1399 / 1199 / 991 / 767 / 576px.
   ========================================================================== */

.hrc .hrc-approach {
    padding: 20px 0 76px; background: linear-gradient(180deg, color-mix(in srgb, var(--ax-blue-100) 40%, var(--ax-white)) 0%, var(--ax-white) 100%);
}

.training-top-block.hrc-train {
    --trn-teal: #0a9a9c; --trn-teal-d: #0a7d8f; --trn-ink: #0a1b3d;
    position: relative; overflow: hidden; padding: 72px 0 84px !important;
    background:
    linear-gradient(180deg, var(--ax-white) 0%, #eef8fb 100%) !important;
}

.training-top-block.hrc-train::before { content: none; }

.training-top-block.hrc-train > .container {
    position: relative; z-index: 1;
}

.training-top-block.hrc-train h3 {
    margin: 0 0 14px !important; padding: 0 !important; text-align: center;
    font-family: var(--ax-font-display) !important; font-size: var(--ax-t-display) !important; font-weight: 800 !important;
    line-height: var(--ax-lh-tight) !important; letter-spacing: -.035em !important; color: var(--trn-ink) !important;
}

.training-top-block.hrc-train h3 span {
    background: linear-gradient(90deg, #0aa6a4, #0a86ab); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent;
}

.training-top-block.hrc-train h3::after {
    content: ""; display: block; width: 110px; height: 5px; margin: 14px auto 0; border-radius: 5px; background: linear-gradient(90deg, var(--trn-ink) 0%, var(--ax-navy-700) 45%, #5fd6d6 100%);
}

.training-top-block.hrc-train .top-nav-block {
    margin: 36px 0 0;
}

.training-top-block.hrc-train .top-nav-block .nav-tabs {
    display: flex; justify-content: center; align-items: flex-end; gap: 10px; border: 0 !important; background: transparent !important; flex-wrap: wrap; margin: 0;
}

.training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link {
    position: relative; display: flex; align-items: center; justify-content: center; gap: 14px;
    min-width: 0; margin: 0; padding: 22px 44px !important;
    border: 0 !important; border-radius: 18px 18px 0 0 !important;
    background: var(--ax-white) !important; color: var(--trn-ink) !important;
    box-shadow: 0 -4px 20px color-mix(in srgb, var(--ax-navy-900) 7%, transparent) !important;
    transform: none !important; clip-path: none !important;
    transition: background var(--ax-dur-sm) var(--ax-ease), color var(--ax-dur-sm) var(--ax-ease);
}

.training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link::before {
    display: none !important; content: none !important;
}

.training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link::after {
    content: none !important;
}

.training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link h5 {
    margin: 0 !important; padding: 0 !important; font-family: var(--ax-font-display) !important; font-size: 1.15rem !important; font-weight: 700 !important; color: inherit !important; white-space: nowrap;
}

.hrc-train__ico {
    display: inline-grid; place-items: center; font-size: 1.5rem; color: var(--trn-ink);
}

.hrc-train__ico svg {
    width: 1.5rem; height: 1.5rem;
}

.training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link.active {
    background: linear-gradient(100deg, #0a6f8c 0%, #0a9a9c 100%) !important; color: var(--ax-white) !important;
}

.training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link.active .hrc-train__ico {
    color: var(--ax-white);
}

.training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link.active::after {
    content: "" !important; display: block !important; position: absolute; left: 50%; bottom: -11px; width: 24px; height: 12px; margin: 0; border: 0;
    transform: translateX(-50%); background: #0a8896; clip-path: polygon(0 0, 100% 0, 50% 100%);
}

.training-top-block.hrc-train .tab-text-details {
    margin: 0; padding: 0; position: relative;
}

.training-top-block.hrc-train .tab-text-details .text-tab-bd {
    position: relative; display: grid !important; grid-template-columns: minmax(0, 1.28fr) minmax(0, 1fr); gap: 28px; align-items: center;
    flex-direction: row; margin: 0; padding: 46px 52px 50px !important; border-radius: 24px;
    animation: none !important; opacity: 1 !important; visibility: visible !important;
    background: linear-gradient(135deg, #f7fcfd 0%, #eaf6f9 100%) !important;
    border: 1px solid color-mix(in srgb, var(--ax-white) 80%, transparent);
    box-shadow: 0 1px 2px color-mix(in srgb, var(--ax-navy-900) 5%, transparent), 0 22px 54px color-mix(in srgb, var(--ax-navy-900) 9%, transparent);
}

.training-top-block.hrc-train .tab-text-details .text-tab-bd::after {
    content: ""; position: absolute; right: 22px; top: 44%; width: 80px; height: 120px; pointer-events: none;
    background: radial-gradient(circle, color-mix(in srgb, var(--ax-navy-700) 22%, transparent) 1.5px, transparent 2px) 0 0 / 16px 16px;
}

.training-top-block.hrc-train .text-tab-bd .item-rt {
    grid-column: 1; grid-row: 1; width: auto; margin: 0; padding: 0; position: relative; z-index: 1;
}

.training-top-block.hrc-train .text-tab-bd .item-lt {
    grid-column: 2; grid-row: 1; width: 100%; margin: 0; padding: 0; position: relative; z-index: 1;
}

.training-top-block.hrc-train .item-rt h4 {
    margin: 0 0 30px !important; padding: 0 !important; text-align: left;
    font-family: var(--ax-font-display) !important; font-size: clamp(2.3rem, 3.6vw, 3.4rem) !important; font-weight: 800 !important;
    letter-spacing: -.035em !important; line-height: 1.05 !important; color: var(--trn-ink) !important;
}

.training-top-block.hrc-train .item-rt h4 span {
    margin-left: .18em; background: linear-gradient(90deg, #0aa6a4, #0a86ab); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent;
}

.training-top-block.hrc-train .item-rt p {
    --trn-gap: 24px; position: relative; margin: 0 0 var(--trn-gap) !important; padding: 0 0 0 118px !important;
    font-family: var(--ax-font-sans) !important; font-size: 1rem !important; line-height: 1.6 !important; color: #243556 !important;
}

.training-top-block.hrc-train .item-rt p:last-of-type {
    margin-bottom: 0 !important;
}

.training-top-block.hrc-train .item-rt p strong {
    color: var(--trn-teal-d) !important; font-weight: 800; margin-right: .3em;
}

.training-top-block.hrc-train .item-rt p::before {
    content: "\f15c"; font-family: "Font Awesome 6 Free", "FontAwesome"; font-weight: 400;
    position: absolute; left: 0; top: 50%; transform: translateY(-50%); z-index: 1;
    display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%;
    font-size: 1.35rem; color: var(--ax-white); background: linear-gradient(135deg, #12b3a8, #0a8f95);
    box-shadow: 0 8px 18px color-mix(in srgb, var(--trn-teal-d) 25%, transparent);
}

.training-top-block.hrc-train .item-rt p:nth-of-type(2)::before {
    content: "\f0c0"; font-weight: 900; background: linear-gradient(135deg, #0a8f95, #0a6f86);
}

.training-top-block.hrc-train .item-rt p:nth-of-type(3)::before {
    content: "\f1ad"; font-weight: 400; background: linear-gradient(135deg, #0a8a94, #0a6a82);
}

.training-top-block.hrc-train .item-rt p::after {
    content: ""; position: absolute; left: 80px; top: 0; bottom: calc(var(--trn-gap) * -1); width: 14px; pointer-events: none;
    background:
    radial-gradient(circle at 50% calc(50% - var(--trn-gap) / 2), #f1f9fb 0 3px, var(--trn-teal-d) 3.5px 5.5px, transparent 6px),
    linear-gradient(var(--trn-teal-d), var(--trn-teal-d)) 50% 0 / 2px 100% no-repeat;
}

.training-top-block.hrc-train .item-rt p:first-of-type::after {
    background:
    radial-gradient(circle at 50% calc(50% - var(--trn-gap) / 2), #f1f9fb 0 3px, var(--trn-teal-d) 3.5px 5.5px, transparent 6px),
    linear-gradient(var(--trn-teal-d), var(--trn-teal-d)) 50% 100% / 2px calc(50% + var(--trn-gap) / 2) no-repeat;
}

.training-top-block.hrc-train .item-rt p:last-of-type::after {
    bottom: 0;
    background:
    radial-gradient(circle at 50% 50%, #f1f9fb 0 3px, var(--trn-teal-d) 3.5px 5.5px, transparent 6px),
    linear-gradient(var(--trn-teal-d), var(--trn-teal-d)) 50% 0 / 2px 50% no-repeat;
}

.training-top-block.hrc-train .tab-text-details .text-tab-bd .item-lt .figure {
    display: block; position: relative; margin: 0; padding: 30px 6% 46px 9%;
}

.training-top-block.hrc-train .tab-text-details .text-tab-bd .item-lt .figure::before {
    content: ""; position: absolute; z-index: 0; top: 0; right: 0; width: 42%; bottom: 46px; border-radius: 26px;
    background: linear-gradient(160deg, #12b3a8 0%, #0a8a94 100%);
}

.training-top-block.hrc-train .tab-text-details .text-tab-bd .item-lt .figure::after {
    content: ""; position: absolute; z-index: 0; left: 36%; bottom: 10px; width: 24%; height: 40px; border-radius: 0 0 20px 20px;
    background: linear-gradient(90deg, #0a8a94, #12b3a8);
}

.training-top-block.hrc-train .tab-text-details .text-tab-bd .item-lt .figure img {
    display: block; max-width: none;
}

.training-top-block.hrc-train .tab-text-details .text-tab-bd .item-lt .figure img.hrc-train__main {
    position: relative; z-index: 1; width: 100%; height: auto; aspect-ratio: 584 / 344; object-fit: cover;
    border: 5px solid var(--ax-white); border-radius: 20px; background: var(--ax-white);
    box-shadow: 0 18px 40px color-mix(in srgb, var(--ax-navy-900) 18%, transparent);
}

.training-top-block.hrc-train .tab-text-details .text-tab-bd .item-lt .figure img.hrc-train__inset {
    position: absolute; z-index: 2; left: 0; bottom: 0; width: 38%; height: auto; aspect-ratio: 258 / 212; object-fit: cover;
    border: 5px solid var(--ax-white); border-radius: 16px; background: var(--ax-white);
    box-shadow: 0 14px 30px color-mix(in srgb, var(--ax-navy-900) 22%, transparent);
}

.training-top-block.hrc-train .item-lt::before {
    content: ""; position: absolute; z-index: 1; left: 1%; top: 108px; width: 62px; height: 120px; pointer-events: none;
    background:
    linear-gradient(#0a1b3d, #0a1b3d) 6px 0 / 48px 46px no-repeat,
    linear-gradient(#12a7a3, #12a7a3) 0 54px / 62px 62px no-repeat;
    border-radius: 12px;
}

.training-top-block.hrc-train .item-lt::after {
    content: ""; position: absolute; z-index: 2; right: 0; bottom: 10px; width: 9%; aspect-ratio: 1; border-radius: 12px; background: #dde8f3; pointer-events: none;
}

@media screen and (max-width: 991px) {
  .training-top-block.hrc-train .tab-text-details .text-tab-bd {
      grid-template-columns: 1fr; padding: 28px 22px 32px !important; gap: 30px;
  }
  .training-top-block.hrc-train .text-tab-bd .item-rt, .training-top-block.hrc-train .text-tab-bd .item-lt {
      grid-column: 1; grid-row: auto;
  }
  .training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link {
      flex: 1 1 100%; padding: 16px 22px !important; border-radius: 14px !important;
  }
  .training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link h5 {
      white-space: normal;
  }
  .training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link.active::after {
      display: none !important;
  }
  .training-top-block.hrc-train .item-rt p {
      padding-left: 84px !important;
  }
  .training-top-block.hrc-train .item-rt p::before {
      width: 54px; height: 54px; font-size: 1.15rem;
  }
  .training-top-block.hrc-train .item-rt p::after {
      left: 62px;
  }
  .training-top-block.hrc-train .tab-text-details .text-tab-bd::after {
      display: none;
  }
}

.training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link h5 {
    transform: none !important; font-style: normal !important;
}

.training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link,
.training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link:hover,
.training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link:focus,
.training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link:focus-visible,
.training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link:active {
    outline: 0 !important; border: 0 !important; font-style: normal;
}

.training-top-block.hrc-train .top-nav-block {
    position: relative; z-index: 3;
}

.training-top-block.hrc-train .tab-text-details {
    z-index: 1;
}

.training-top-block.hrc-train .item-rt h4 {
    font-size: clamp(1.7rem, 2.4vw, 2.2rem) !important; color: #000 !important;
}

.training-top-block.hrc-train .item-rt h4 span {
    background: none; -webkit-background-clip: border-box; background-clip: border-box; -webkit-text-fill-color: #000; color: #000;
}

.hrc-strat {
    --st-teal: #0a7d8f; --st-ink: #0a1b3d; padding: 76px 0 40px; background: var(--ax-white);
}

.hrc-strat h3 {
    margin: 0 0 64px !important; padding: 0 !important; text-align: center;
    font-family: var(--ax-font-display) !important; font-size: var(--ax-t-display) !important; font-weight: 800 !important;
    line-height: var(--ax-lh-tight) !important; letter-spacing: -.035em !important; color: var(--st-ink) !important;
}

.hrc-strat h3 span {
    background: linear-gradient(90deg, #0aa6a4, #0a86ab); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent;
}

.hrc-strat h3::after {
    content: ""; display: block; width: 110px; height: 5px; margin: 14px auto 0; border-radius: 5px; background: linear-gradient(90deg, var(--st-ink) 0 46%, transparent 46% 54%, #12b3b8 54% 100%);
}

.hrc-strat__card {
    display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 36px; align-items: center; margin: 0 0 84px;
}

.hrc-strat__card--rev {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr);
}

.hrc-strat__card--rev .hrc-strat__body {
    order: 2;
}

.hrc-strat__card--rev .hrc-strat__fig {
    order: 1;
}

.hrc-strat__body {
    position: relative; padding: 64px 40px 34px 30px; border-radius: 26px;
    background: linear-gradient(135deg, #f6fcfd 0%, #e7f5f9 100%);
    box-shadow: 0 1px 2px color-mix(in srgb, var(--ax-navy-900) 5%, transparent), 0 20px 48px color-mix(in srgb, var(--ax-navy-900) 7%, transparent);
}

.hrc-strat .hrc-strat__pill {
    position: absolute; left: 0; top: -22px; margin: 0 !important; padding: 12px 40px 12px 30px !important;
    border-radius: 24px 24px 24px 0; background: linear-gradient(100deg, #0a6f8c, #0a9a9c);
    font-family: var(--ax-font-display) !important; font-size: 1.6rem !important; font-weight: 800 !important; line-height: 1.2 !important;
    letter-spacing: -.01em !important; color: var(--ax-white) !important; box-shadow: 0 10px 22px color-mix(in srgb, var(--st-teal) 28%, transparent);
}

.hrc-strat .hrc-strat__list {
    position: relative; display: grid; gap: 22px; margin: 0 !important; padding: 0 !important; list-style: none !important;
}

.hrc-strat .hrc-strat__list::before {
    content: ""; position: absolute; left: 75px; top: 26px; bottom: 26px; width: 2px; background: var(--st-teal);
}

.hrc-strat .hrc-strat__list li {
    position: relative; display: grid; grid-template-columns: 52px minmax(0, 1fr); column-gap: 48px; align-items: center; margin: 0 !important; padding: 0 !important; list-style: none !important;
}

.hrc-strat .hrc-strat__list li::before, .hrc-strat .hrc-strat__list li::after {
    content: none !important;
}

.hrc-strat .hrc-strat__list li::after {
    content: "" !important; position: absolute; left: 70px; top: 50%; width: 12px; height: 12px; margin-top: -6px; box-sizing: border-box;
    border: 2px solid var(--st-teal); border-radius: 50%; background: #eef8fb;
}

.hrc-strat__ico {
    display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: #d3f0f5; color: var(--st-teal); font-size: 1.15rem; box-shadow: 0 6px 14px color-mix(in srgb, var(--st-teal) 14%, transparent);
}

.hrc-strat .hrc-strat__list p {
    margin: 0 !important; padding: 0 !important; font-family: var(--ax-font-sans) !important; font-size: .95rem !important; line-height: 1.6 !important; color: #243556 !important;
}

.hrc-strat .hrc-strat__list p strong {
    color: var(--st-teal) !important; font-weight: 800;
}

.hrc-strat .hrc-strat__sub {
    font-style: normal; font-weight: 700; color: var(--st-ink);
}

.hrc-strat__fig {
    position: relative; margin: 0; padding: 30px 30px 30px 0;
}

.hrc-strat__fig img {
    position: relative; z-index: 1; display: block; width: 100%; height: auto; border: 5px solid var(--ax-white); border-radius: 22px; box-shadow: 0 20px 44px color-mix(in srgb, var(--ax-navy-900) 20%, transparent);
}

.hrc-strat__fig::before {
    content: ""; position: absolute; z-index: 0; top: 0; right: 0; width: 46%; height: 62%; border-radius: 28px; background: linear-gradient(160deg, #0a9a9c, #0a6f8c);
}

.hrc-strat__fig::after {
    content: ""; position: absolute; z-index: 2; right: 2px; top: 58%; width: 38px; height: 38px; border-radius: 10px; background: var(--st-ink);
}

.hrc-strat__card--rev .hrc-strat__fig {
    padding: 30px 0 30px 30px;
}

.hrc-strat__card--rev .hrc-strat__fig::before {
    right: auto; left: 0; width: 44%; height: 58%; background: linear-gradient(160deg, #0a2f68, var(--st-ink));
}

.hrc-strat__card--rev .hrc-strat__fig::after {
    right: auto; left: 0; top: auto; bottom: 36%; width: 34px; height: 34px; background: #12c3c3;
}

@media screen and (max-width: 991px) {
  .hrc-strat {
      padding: 56px 0 24px;
  }
  .hrc-strat h3 {
      margin-bottom: 48px !important;
  }
  .hrc-strat__card, .hrc-strat__card--rev {
      grid-template-columns: 1fr; gap: 28px; margin-bottom: 64px;
  }
  .hrc-strat__card--rev .hrc-strat__body, .hrc-strat__card--rev .hrc-strat__fig {
      order: 0;
  }
  .hrc-strat__body {
      padding: 70px 20px 28px 18px;
  }
  .hrc-strat .hrc-strat__list::before {
      left: 54px;
  }
  .hrc-strat .hrc-strat__list li {
      grid-template-columns: 40px minmax(0, 1fr); column-gap: 30px;
  }
  .hrc-strat .hrc-strat__list li::after {
      left: 49px;
  }
  .hrc-strat__ico {
      width: 40px; height: 40px; font-size: .95rem;
  }
  .hrc-strat__fig, .hrc-strat__card--rev .hrc-strat__fig {
      padding: 24px 16px 24px 16px;
  }
}

.hrc-spec {
    --sp-teal: #12b3b8; --sp-ink: #0a1b3d; padding: 56px 0 72px; background: var(--ax-white);
}

.hrc-spec h3 {
    position: relative; margin: 0 0 56px !important; padding: 26px 0 0 !important; text-align: center;
    font-family: var(--ax-font-display) !important; font-size: var(--ax-t-display) !important; font-weight: 800 !important;
    line-height: var(--ax-lh-tight) !important; letter-spacing: -.035em !important; color: var(--sp-ink) !important;
}

.hrc-spec h3::before {
    content: ""; position: absolute; top: 0; left: 50%; width: 56px; height: 3px; margin-left: -28px; border-radius: 3px; background: var(--sp-teal);
}

.hrc-spec__item {
    display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 32px; align-items: center; margin: 0 0 40px;
}

.hrc-spec__item--rev {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr);
}

.hrc-spec__item--rev .hrc-spec__text {
    order: 2;
}

.hrc-spec__item--rev .hrc-spec__fig {
    order: 1;
}

.hrc-spec__text {
    position: relative; padding: 0 0 0 clamp(0px, 9.5vw, 150px);
}

.hrc-spec__item--rev .hrc-spec__text {
    padding-left: clamp(0px, 9.5vw, 150px);
}

.hrc-spec__num {
    position: absolute; left: 0; top: 14px; font-family: var(--ax-font-display); font-size: clamp(3rem, 5.6vw, 5.2rem); font-weight: 800; line-height: 1;
    color: #e4f4f6; letter-spacing: -.04em; user-select: none; pointer-events: none;
}

.hrc-spec__ico {
    display: grid; place-items: center; width: 58px; height: 58px; margin: 0 0 8px; border-radius: 50%; background: #d3f0f3; color: var(--sp-teal); font-size: 1.4rem;
}

.hrc-spec .hrc-spec__text h4 {
    position: relative; margin: 0 0 22px !important; padding: 0 0 18px !important; text-align: left;
    font-family: var(--ax-font-display) !important; font-size: clamp(1.6rem, 2.3vw, 2.1rem) !important; font-weight: 800 !important;
    line-height: 1.2 !important; letter-spacing: -.02em !important; color: #0a2250 !important;
}

.hrc-spec .hrc-spec__text h4::after {
    content: ""; position: absolute; left: 0; bottom: 0; width: 52px; height: 3px; border-radius: 3px; background: var(--sp-teal);
}

.hrc-spec .hrc-spec__text p, .hrc-spec .hrc-spec__text li {
    font-family: var(--ax-font-sans) !important; font-size: .9rem !important; line-height: 1.65 !important; color: #2b3a57 !important; margin: 0;
}

.hrc-spec .hrc-spec__text strong {
    color: var(--sp-ink); font-weight: 800;
}

.hrc-spec .hrc-spec__desc {
    margin: 0 0 26px !important;
}

.hrc-spec__cols {
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 0;
}

.hrc-spec__focus {
    padding-right: 28px; border-right: 1px solid #d5e3ea;
}

.hrc-spec .hrc-spec__focus h5 {
    margin: 0 0 10px !important; padding: 0 !important; font-family: var(--ax-font-display) !important; font-size: 1.05rem !important; font-weight: 800 !important; color: var(--sp-ink) !important; text-align: left;
}

.hrc-spec .hrc-spec__focus ul {
    margin: 0 !important; padding: 0 !important; list-style: none !important;
}

.hrc-spec .hrc-spec__focus li {
    position: relative; margin: 0 0 6px !important; padding: 0 0 0 22px !important; list-style: none !important;
}

.hrc-spec .hrc-spec__focus li::before {
    content: "" !important; position: absolute; left: 2px; top: .7em; width: 7px; height: 7px; border-radius: 50%; background: var(--sp-teal);
}

.hrc-spec .hrc-spec__ben {
    padding-left: 28px !important;
}

.hrc-spec__fig {
    margin: 0;
}

.hrc-spec__fig img {
    display: block; width: 100%; max-width: 560px; height: auto; margin: 0 auto;
}

@media screen and (max-width: 991px) {
  .hrc-spec {
      padding: 40px 0 48px;
  }
  .hrc-spec h3 {
      margin-bottom: 40px !important;
  }
  .hrc-spec__item, .hrc-spec__item--rev {
      grid-template-columns: 1fr; gap: 20px; margin-bottom: 48px;
  }
  .hrc-spec__item--rev .hrc-spec__text, .hrc-spec__item--rev .hrc-spec__fig {
      order: 0;
  }
  .hrc-spec__text, .hrc-spec__item--rev .hrc-spec__text {
      padding-left: 0;
  }
  .hrc-spec__num {
      right: 0; left: auto; top: 0;
  }
  .hrc-spec__cols {
      grid-template-columns: 1fr; gap: 18px;
  }
  .hrc-spec__focus {
      padding-right: 0; border-right: 0;
  }
  .hrc-spec .hrc-spec__ben {
      padding-left: 0 !important;
  }
}

.hrc-spec > .container {
    max-width: 1130px;
}

.hrc-spec__item {
    grid-template-columns: minmax(0, 2.5fr) minmax(0, 1fr); gap: 20px; margin-bottom: 56px;
}

.hrc-spec__item--rev {
    grid-template-columns: minmax(0, 1fr) minmax(0, 2.5fr);
}

.hrc-spec__text, .hrc-spec__item--rev .hrc-spec__text {
    padding-left: clamp(0px, 8vw, 130px);
}

.hrc-spec__cols {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr);
}

.hrc-spec__desc {
    max-width: 880px;
}

.hrc-spec__fig img {
    max-width: 380px;
}

.hrc-spec__item .hrc-spec__fig {
    justify-self: end;
}

.hrc-spec__item--rev .hrc-spec__fig {
    justify-self: start;
}

@media screen and (max-width: 991px) {
  .hrc-spec__item, .hrc-spec__item--rev {
      grid-template-columns: 1fr;
  }
  .hrc-spec__item .hrc-spec__fig, .hrc-spec__item--rev .hrc-spec__fig {
      justify-self: center;
  }
  .hrc-spec__fig img {
      max-width: 320px;
  }
}

.hrc-spec__text, .hrc-spec__item--rev .hrc-spec__text {
    padding-left: 0;
}

.hrc-spec__num {
    left: 74px; top: 0; height: 58px; display: flex; align-items: center; font-size: clamp(2.6rem, 4vw, 3.6rem); line-height: 1; color: #d5eef1;
}

@media screen and (max-width: 991px) {
  .hrc-spec__num {
      left: 74px; right: auto; top: 0;
  }
}

.hrc-spec {
    background: radial-gradient(700px 340px at 88% -8%, var(--ax-blue-100) 0%, transparent 58%), var(--ax-paper) !important;
}

.hrc-spec__fig img {
    mix-blend-mode: multiply; background: transparent;
}

.hrc-meth {
    --me-accent: #0a9a9c; --me-ink: #0a1b3d; padding: 72px 0 84px; background: var(--ax-white);
}

.hrc-meth h2 {
    position: relative; margin: 0 0 56px !important; padding: 26px 0 0 !important; text-align: center;
    font-family: var(--ax-font-display) !important; font-size: var(--ax-t-display) !important; font-weight: 800 !important;
    line-height: var(--ax-lh-tight) !important; letter-spacing: -.035em !important; color: var(--me-ink) !important;
}

.hrc-meth h2::before {
    content: ""; position: absolute; top: 0; left: 50%; width: 56px; height: 3px; margin-left: -28px; border-radius: 3px; background: var(--me-accent);
}

.hrc-meth h2 span {
    color: var(--me-accent);
}

.hrc-meth .row {
    row-gap: 24px;
}

.hrc-meth__col {
    display: flex;
}

.hrc-meth__card {
    display: flex; flex-direction: column; align-items: center; width: 100%; padding: 26px 22px 30px; text-align: center;
    border-radius: 20px; background: var(--ax-white); border: 1px solid color-mix(in srgb, var(--ax-navy-900) 6%, transparent);
    box-shadow: 0 1px 2px color-mix(in srgb, var(--ax-navy-900) 4%, transparent), 0 16px 38px color-mix(in srgb, var(--ax-navy-900) 7%, transparent);
    transition: transform var(--ax-dur-sm) var(--ax-ease), box-shadow var(--ax-dur-sm) var(--ax-ease);
}

.hrc-meth__card:hover {
    transform: translateY(-4px); box-shadow: 0 2px 4px color-mix(in srgb, var(--ax-navy-900) 5%, transparent), 0 24px 50px color-mix(in srgb, var(--ax-navy-900) 12%, transparent);
}

.hrc-meth__photo {
    position: relative; width: 190px; height: 190px; margin: 0 0 40px;
}

.hrc-meth__photo img {
    display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 50%; border: 6px solid var(--ax-white); box-shadow: 0 0 0 1px color-mix(in srgb, var(--ax-navy-900) 8%, transparent), 0 14px 30px color-mix(in srgb, var(--ax-navy-900) 16%, transparent);
}

.hrc-meth__num {
    position: absolute; left: 50%; bottom: -26px; display: grid; place-items: center; width: 52px; height: 52px; transform: translateX(-50%);
    border-radius: 50%; background: var(--ax-white); color: var(--me-accent); font-family: var(--ax-font-display); font-size: 1.15rem; font-weight: 800;
    box-shadow: 0 8px 18px color-mix(in srgb, var(--ax-navy-900) 14%, transparent);
}

.hrc-meth .hrc-meth__card h4 {
    margin: 0 0 12px !important; padding: 0 !important; font-family: var(--ax-font-display) !important; font-size: 1.2rem !important; font-weight: 800 !important; line-height: 1.3 !important; color: var(--me-ink) !important;
}

.hrc-meth__bar {
    display: block; width: 42px; height: 3px; margin: 0 0 16px; border-radius: 3px; background: var(--me-accent);
}

.hrc-meth .hrc-meth__card p {
    margin: 0 !important; font-family: var(--ax-font-sans) !important; font-size: .95rem !important; line-height: 1.65 !important; color: #5b6478 !important;
}

@media screen and (max-width: 767px) {
  .hrc-meth {
      padding: 48px 0 56px;
  }
  .hrc-meth h2 {
      margin-bottom: 40px !important;
  }
}

@media screen and (max-width: 576px) {
  .hrc-meth .row {
      row-gap: 18px; --bs-gutter-x: 14px;
  }
  .hrc-meth__card {
      padding: 18px 12px 22px; border-radius: 16px;
  }
  .hrc-meth__photo {
      width: 120px; height: 120px; margin-bottom: 34px;
  }
  .hrc-meth__photo img {
      border-width: 4px;
  }
  .hrc-meth__num {
      width: 40px; height: 40px; bottom: -20px; font-size: .95rem;
  }
  .hrc-meth .hrc-meth__card h4 {
      font-size: 1rem !important;
  }
  .hrc-meth .hrc-meth__card p {
      font-size: .85rem !important; line-height: 1.55 !important;
  }
}

.hrc--training-detail .sub-services-tab-block {
    padding: 72px 0 64px !important;
}

.hrc--training-detail .tab-button {
    position: sticky; top: 100px;
}

.hrc--training-detail .nav-tabs a.nav-link {
    text-decoration: none;
}

.hrc--training-detail .nav-tabs a.nav-link h5 {
    color: var(--ax-navy-900) !important;
}

.hrc--training-detail .sub-services-tab-block .short-banner {
    overflow: hidden; border-radius: 22px; box-shadow: 0 18px 44px color-mix(in srgb, var(--ax-navy-900) 14%, transparent);
}

.hrc--training-detail .sub-services-tab-block .short-banner img {
    width: 100%; height: 260px; object-fit: cover; border-radius: 0;
}

.hrc--training-detail .sub-services-tab-block .tab-content .tab-pane {
    opacity: 1;
}

.hrc--training-detail .sub-services-tab-block .tab-content .item-text p {
    margin: 0 0 14px !important;
}

.hrc--training-detail .sub-services-tab-block .tab-content .item-text ul {
    margin: 0 0 14px; padding-left: 1.2rem; color: var(--ax-ink-soft); line-height: 1.7;
}

@media screen and (max-width: 991px) {
  .hrc--training-detail .tab-button {
      position: static;
  }
  .hrc--training-detail .sub-services-tab-block .short-banner img {
      height: 200px;
  }
}

.hrc--training-detail .sub-services-tab-block .tab-content .item-text {
    padding-top: 34px;
}

.target-group-block.hrc-lvl {
    --lv-teal: #0a8f90; --lv-teal-d: #0a6f78; --lv-ink: #0a1b3d;
    padding: 56px 0 72px !important;
    background:
    radial-gradient(560px 440px at -6% -6%, #e3f4f2 0%, transparent 70%),
    radial-gradient(520px 420px at 106% 104%, #e3f4f2 0%, transparent 70%),
    var(--ax-white) !important;
}

.target-group-block.hrc-lvl .container.mt-5 {
    margin-top: 0 !important; padding-bottom: 28px;
}

.target-group-block.hrc-lvl .container.mt-5 + .container.mt-5 {
    margin-top: 48px !important; padding-top: 48px; border-top: 1px solid color-mix(in srgb, var(--lv-ink) 8%, transparent);
}

.target-group-block.hrc-lvl .title-top {
    padding: 0 0 38px !important; text-align: center;
}

.target-group-block.hrc-lvl .title-top h3 {
    margin: 0 0 14px !important; padding: 0 !important;
    font-family: var(--ax-font-display) !important; font-size: clamp(1.9rem, 3.4vw, 2.9rem) !important; font-weight: 800 !important;
    line-height: 1.12 !important; letter-spacing: -.035em !important; color: var(--lv-ink) !important;
}

.target-group-block.hrc-lvl .title-top h3 span {
    color: var(--lv-teal);
}

.target-group-block.hrc-lvl .title-top p {
    max-width: 980px; margin: 0 auto !important; font-family: var(--ax-font-sans) !important; font-size: .98rem !important; line-height: 1.75 !important; color: #34425e !important;
}

.target-group-block.hrc-lvl .bd .top-nav-block {
    display: flex; align-items: center; justify-content: center; gap: 20px; margin: 0 0 34px;
}

.target-group-block.hrc-lvl .bd .top-nav-block::before,
.target-group-block.hrc-lvl .bd .top-nav-block::after {
    content: ""; flex: 1 1 0; height: 1px; max-width: 320px;
}

.target-group-block.hrc-lvl .bd .top-nav-block::before {
    background: linear-gradient(90deg, transparent, var(--lv-teal));
}

.target-group-block.hrc-lvl .bd .top-nav-block::after {
    background: linear-gradient(270deg, transparent, var(--lv-teal));
}

.target-group-block.hrc-lvl .bd .top-nav-block .nav-tabs {
    display: inline-flex; flex: 0 0 auto; flex-wrap: nowrap; gap: 0; margin: 0 !important; padding: 0 !important;
    border: 0 !important; border-radius: 999px; background: #eaeff4 !important; box-shadow: 0 10px 26px color-mix(in srgb, var(--lv-ink) 9%, transparent);
}

.target-group-block.hrc-lvl .bd .top-nav-block .nav-tabs button.nav-link {
    position: relative; margin: 0 !important; padding: 15px 36px !important; border: 0 !important; border-radius: 999px !important;
    background: transparent !important; color: var(--lv-ink) !important; transform: none !important; clip-path: none !important; box-shadow: none !important;
    transition: background var(--ax-dur-sm) var(--ax-ease), color var(--ax-dur-sm) var(--ax-ease);
}

.target-group-block.hrc-lvl .bd .top-nav-block .nav-tabs button.nav-link h5 {
    margin: 0 !important; padding: 0 !important; transform: none !important; font-style: normal !important; font-family: var(--ax-font-display) !important; font-size: 1.02rem !important; font-weight: 700 !important; color: inherit !important; white-space: nowrap;
}

.target-group-block.hrc-lvl .bd .top-nav-block .nav-tabs button.nav-link::before {
    content: none !important; display: none !important;
}

.target-group-block.hrc-lvl .bd .top-nav-block .nav-tabs button.nav-link:hover {
    background: color-mix(in srgb, var(--lv-teal) 10%, transparent) !important;
}

.target-group-block.hrc-lvl .bd .top-nav-block .nav-tabs button.nav-link:focus,
.target-group-block.hrc-lvl .bd .top-nav-block .nav-tabs button.nav-link:focus-visible {
    outline: 0 !important;
}

.target-group-block.hrc-lvl .bd .top-nav-block .nav-tabs button.nav-link.active {
    background: linear-gradient(100deg, var(--lv-teal-d), #0a9a96) !important; color: var(--ax-white) !important; box-shadow: 0 10px 22px color-mix(in srgb, var(--lv-teal-d) 32%, transparent) !important;
}

.target-group-block.hrc-lvl .bd .top-nav-block .nav-tabs button.nav-link.active::after {
    content: "" !important; display: block !important; position: absolute; left: 50%; bottom: -9px; width: 20px; height: 10px; margin: 0; border: 0;
    transform: translateX(-50%); background: #0a8a93; clip-path: polygon(0 0, 100% 0, 50% 100%);
}

.target-group-block.hrc-lvl .bd .top-nav-block .nav-tabs button.nav-link:not(.active)::after {
    content: none !important; display: none !important;
}

.target-group-block.hrc-lvl .bd .tab-text-details {
    margin: 0; padding: 0; background: transparent !important; box-shadow: none !important;
}

.target-group-block.hrc-lvl .bd .tab-text-details .text-tab-bd,
.target-group-block.hrc-lvl .bd .tab-text-details .text-tab-bd .item-rt {
    display: block !important; margin: 0 !important; padding: 0 !important; width: 100% !important; background: transparent !important; border: 0 !important; border-radius: 0 !important;
    animation: none !important; opacity: 1 !important; visibility: visible !important; box-shadow: none !important;
}

.target-group-block.hrc-lvl .bd .tab-text-details .text-tab-bd .item-rt p strong {
    color: inherit !important;
}

.target-group-block.hrc-lvl .bd .title {
    margin: 0 0 30px !important; padding: 0 !important; text-align: center;
}

.target-group-block.hrc-lvl .bd .title h4 {
    margin: 0 0 22px !important; padding: 0 !important; font-family: var(--ax-font-display) !important; font-size: clamp(2rem, 3.6vw, 3rem) !important; font-weight: 800 !important;
    line-height: 1.1 !important; letter-spacing: -.035em !important; color: var(--lv-ink) !important; text-align: center;
}

.target-group-block.hrc-lvl .bd .title h4::after {
    content: ""; display: block; width: 150px; height: 10px; margin: 16px auto 0;
    background:
    radial-gradient(circle, var(--lv-teal) 0 4.5px, transparent 5px) center / 10px 10px no-repeat,
    linear-gradient(var(--lv-ink), var(--lv-ink)) left center / 62px 3px no-repeat,
    linear-gradient(#12b3b8, #12b3b8) right center / 62px 3px no-repeat;
}

.target-group-block.hrc-lvl .bd .title p {
    max-width: 760px; margin: 0 auto !important; font-family: var(--ax-font-sans) !important; font-size: 1rem !important; line-height: 1.7 !important; color: #44526d !important;
}

.target-group-block.hrc-lvl .bd .row {
    margin-bottom: 0 !important; row-gap: 24px;
}

.target-group-block.hrc-lvl .bd .col-sec {
    display: flex;
}

.target-group-block.hrc-lvl .bd .col-sec .col-item {
    position: relative; display: flex; align-items: flex-start; gap: 20px; width: 100%; margin: 0 !important; padding: 26px 26px 26px 24px !important;
    background: var(--ax-white) !important; border: 0 !important; border-left: 3px solid var(--lv-teal) !important; border-radius: 14px !important; min-height: 0;
    box-shadow: 0 1px 2px color-mix(in srgb, var(--lv-ink) 5%, transparent), 0 16px 38px color-mix(in srgb, var(--lv-ink) 8%, transparent) !important;
    transition: transform var(--ax-dur-sm) var(--ax-ease), box-shadow var(--ax-dur-sm) var(--ax-ease);
}

.target-group-block.hrc-lvl .bd .col-sec .col-item:hover {
    transform: translateY(-3px); box-shadow: 0 2px 4px color-mix(in srgb, var(--lv-ink) 6%, transparent), 0 24px 48px color-mix(in srgb, var(--lv-ink) 12%, transparent) !important;
}

.hrc-lvl__ico {
    flex: 0 0 auto; display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%; background: #e1f4f2; color: var(--lv-teal-d); font-size: 1.5rem;
}

.target-group-block.hrc-lvl .bd .col-sec .item-text {
    flex: 1 1 auto; min-width: 0; margin: 0 !important; padding: 0 !important;
}

.target-group-block.hrc-lvl .bd .item-text h5 {
    margin: 0 0 12px !important; padding: 0 !important; font-family: var(--ax-font-display) !important; font-size: 1.08rem !important; font-weight: 800 !important; line-height: 1.35 !important; letter-spacing: -.01em !important; color: var(--lv-ink) !important; text-align: left;
}

.target-group-block.hrc-lvl .bd .item-text ul {
    margin: 0 !important; padding: 0 !important; list-style: none !important;
}

.target-group-block.hrc-lvl .bd .item-text li {
    position: relative; margin: 0 0 8px !important; padding: 0 0 0 20px !important; list-style: none !important; font-family: var(--ax-font-sans) !important; font-size: .92rem !important; line-height: 1.6 !important; color: #46536c !important;
}

.target-group-block.hrc-lvl .bd .item-text li:last-child {
    margin-bottom: 0 !important;
}

.target-group-block.hrc-lvl .bd .item-text li::before {
    content: "" !important; position: absolute; left: 2px; top: .62em; width: 7px; height: 7px; border-radius: 50%; background: var(--lv-teal);
}

.target-group-block.hrc-lvl .bd .col-sec .col-item > .text {
    position: absolute; top: -12px; left: 22px; padding: 4px 14px; border-radius: 999px; background: linear-gradient(100deg, var(--lv-teal-d), #0a9a96);
    font-family: var(--ax-font-display); font-size: .78rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: var(--ax-white);
}

.target-group-block.hrc-lvl .bd .training-module-button .col-item {
    padding-top: 32px !important;
}

.target-group-block.hrc-lvl .bd .training_midlevelmanagers-button {
    max-width: 920px; margin: 0 auto;
}

.target-group-block.hrc-lvl .bd .training_midlevelmanagers-button .row {
    display: flex; flex-wrap: nowrap; align-items: center; gap: 22px; margin: 0 0 18px !important; padding: 22px 26px;
    background: var(--ax-white); border-left: 3px solid var(--lv-teal); border-radius: 14px;
    box-shadow: 0 1px 2px color-mix(in srgb, var(--lv-ink) 5%, transparent), 0 14px 32px color-mix(in srgb, var(--lv-ink) 7%, transparent);
}

.target-group-block.hrc-lvl .bd .training_midlevelmanagers-button .row > [class*="col-"] {
    width: auto; max-width: none; padding: 0;
}

.target-group-block.hrc-lvl .bd .training_midlevelmanagers-button .row > .col-lg-2 {
    flex: 0 0 auto;
}

.target-group-block.hrc-lvl .bd .training_midlevelmanagers-button .row > .col-lg-8 {
    flex: 1 1 auto;
}

.target-group-block.hrc-lvl .bd .item-number {
    margin: 0 !important; padding: 0 !important; clip-path: none !important; background: none !important; height: auto !important; width: auto !important;
}

.target-group-block.hrc-lvl .bd .item-number span {
    display: grid; place-items: center; width: 54px; height: 54px; margin: 0 !important; padding: 0 !important; border-radius: 50%; clip-path: none !important;
    background: linear-gradient(135deg, #12b3a8, var(--lv-teal-d)) !important; font-family: var(--ax-font-display); font-size: 1.3rem; font-weight: 800; line-height: 1; color: var(--ax-white) !important;
    box-shadow: 0 8px 18px color-mix(in srgb, var(--lv-teal-d) 28%, transparent);
}

.target-group-block.hrc-lvl .bd .training_midlevelmanagers-button .item-text {
    padding: 0 !important;
}

.target-group-block.hrc-lvl .bd .training_midlevelmanagers-button .item-text p {
    margin: 0 0 6px !important; font-family: var(--ax-font-sans) !important; font-size: .95rem !important; line-height: 1.65 !important; color: #46536c !important;
}

.target-group-block.hrc-lvl .bd .tab-text-details .button_block {
    margin: 38px 0 0 !important; padding: 0 !important; text-align: center; background: transparent !important;
}

.target-group-block.hrc-lvl .bd .tab-text-details .button_block a {
    display: inline-flex; align-items: center; gap: 12px; margin: 0 !important; padding: 16px 42px !important; border: 0 !important; border-radius: 999px !important;
    background: linear-gradient(100deg, var(--lv-teal-d), #0a9a96) !important; box-shadow: 0 14px 28px color-mix(in srgb, var(--lv-teal-d) 32%, transparent);
    font-family: var(--ax-font-display) !important; font-size: 1.02rem !important; font-weight: 700 !important; color: var(--ax-white) !important; text-decoration: none;
    transition: transform var(--ax-dur-sm) var(--ax-ease), box-shadow var(--ax-dur-sm) var(--ax-ease);
}

.target-group-block.hrc-lvl .bd .tab-text-details .button_block a:hover {
    transform: translateY(-2px); box-shadow: 0 18px 34px color-mix(in srgb, var(--lv-teal-d) 40%, transparent);
}

@media screen and (max-width: 767px) {
  .target-group-block.hrc-lvl {
      padding: 40px 0 52px !important;
  }
  .target-group-block.hrc-lvl .bd .top-nav-block::before, .target-group-block.hrc-lvl .bd .top-nav-block::after {
      display: none;
  }
  .target-group-block.hrc-lvl .bd .top-nav-block .nav-tabs {
      max-width: 100%;
  }
  .target-group-block.hrc-lvl .bd .top-nav-block .nav-tabs button.nav-link {
      padding: 12px 16px !important;
  }
  .target-group-block.hrc-lvl .bd .top-nav-block .nav-tabs button.nav-link h5 {
      font-size: .88rem !important;
  }
  .target-group-block.hrc-lvl .bd .col-sec .col-item {
      gap: 14px; padding: 20px 18px !important;
  }
  .hrc-lvl__ico {
      width: 50px; height: 50px; font-size: 1.2rem;
  }
  .target-group-block.hrc-lvl .bd .training_midlevelmanagers-button .row {
      gap: 14px; padding: 16px;
  }
  .target-group-block.hrc-lvl .bd .item-number span {
      width: 42px; height: 42px; font-size: 1.05rem;
  }
}

/* ##########################################################################
   Trainings — responsive layer (training list and every training detail page).
   Breakpoints (max-width, desktop-first cascade):
     19200 all screens | 1399 desktop/laptop | 1199 tablet landscape
      991 tablet and smaller | 767 mobile landscape | 576 phones
   ########################################################################## */

/* ---- 19200px: all screens --------------------------------------------- */
@media screen and (max-width: 19200px) {
    .hrc img { max-width: 100%; }
}

/* ---- 1399px: desktop and laptop --------------------------------------- */
@media screen and (max-width: 1399px) {
    :root {
        --ax-t-display: clamp(2.3rem, 3.9vw, 3.4rem);
        --ax-t-sub:     clamp(1.6rem, 2.4vw, 2.1rem);
        --ax-sp-section: 76px;
        --ax-sp-head:    40px;
    }
    body .hrc-hero h1, body .hrc-hero .hrc-hero__title { font-size: clamp(2.2rem, 4.2vw, 3.2rem) !important; }
}

/* ---- 1199px: tablet landscape and small desktop ----------------------- */
@media screen and (max-width: 1199px) {
    :root {
        --ax-t-display: clamp(2.1rem, 3.6vw, 3rem);
        --ax-t-sub:     clamp(1.5rem, 2.3vw, 1.9rem);
        --ax-sp-section: 68px;
        --ax-sp-head:    36px;
    }
    body .hrc-hero h1, body .hrc-hero .hrc-hero__title { font-size: clamp(2rem, 4vw, 2.8rem) !important; }
}

/* ---- 991px: tablet and smaller ---------------------------------------- */
@media screen and (max-width: 991px) {
    :root {
        --ax-t-display: clamp(1.75rem, 1.2rem + 2.4vw, 2.6rem);
        --ax-t-sub:     clamp(1.3rem, 1.05rem + 1.4vw, 1.8rem);
        --ax-sp-section: 56px;
        --ax-sp-head:    32px;
    }
    /* the fixed mobile header (80px) overlays the top of the page */
    .hrc-hero { padding-top: 80px; }
    body .hrc-hero h1, body .hrc-hero .hrc-hero__title { font-size: clamp(1.9rem, 1.4rem + 2.4vw, 2.5rem) !important; }
    /* detail pages: keep the heading hierarchy (section > level > sub-heading) instead of sub-headings out-sizing the section title */
    html body .target-group-block.hrc-lvl .title-top h3 { font-size: var(--ax-t-sub) !important; line-height: 1.2 !important; }
    html body .target-group-block.hrc-lvl .bd .title h4 { font-size: calc(var(--ax-t-sub) * .85) !important; line-height: 1.2 !important; }
}

/* ---- 767px: mobile landscape and small tablets ------------------------ */
@media screen and (max-width: 767px) {
    :root { --ax-sp-section: 48px; --ax-sp-head: 28px; }
}

/* ---- 576px: mobile phones --------------------------------------------- */
@media screen and (max-width: 576px) {
    :root { --ax-sp-section: 40px; --ax-sp-head: 24px; }
    body .hrc-hero h1, body .hrc-hero .hrc-hero__title { font-size: 1.9rem !important; }
    /* detail-page tabs (Objectives / Target Group / Modules): fit the screen on the narrowest phones */
    html body .top-nav-block .nav.nav-tabs { flex-wrap: wrap !important; justify-content: center !important; gap: 6px !important; }
    html body .top-nav-block .nav.nav-tabs .nav-link { padding: 10px clamp(10px, 3.4vw, 18px) !important; font-size: clamp(.78rem, 3.6vw, .95rem) !important; white-space: nowrap; margin: 0 !important; }
}

/* ---- Training option tabs: segmented control on tablet / mobile ------- */
@media screen and (max-width: 991px) {
    html body .training-top-block.hrc-train .top-nav-block .nav-tabs {
        display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; padding: 6px; max-width: 720px; margin: 0 auto;
        background: var(--ax-white) !important; border-radius: 20px; align-items: stretch;
        box-shadow: 0 10px 30px color-mix(in srgb, var(--ax-navy-900) 10%, transparent);
    }
    html body .training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link {
        flex-direction: column; gap: 8px; padding: 16px 10px !important; border-radius: 14px !important;
        background: transparent !important; box-shadow: none !important; text-align: center; width: 100%;
    }
    html body .training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link.active {
        background: linear-gradient(100deg, #0a6f8c 0%, #0a9a9c 100%) !important; box-shadow: 0 8px 18px rgba(10,125,143,.28) !important;
    }
    html body .training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link h5 { font-size: 1rem !important; line-height: 1.25; white-space: normal; }
    html body .training-top-block.hrc-train .hrc-train__ico { font-size: 1.4rem; }
}
@media screen and (max-width: 576px) {
    html body .training-top-block.hrc-train .top-nav-block .nav-tabs { gap: 4px; padding: 5px; border-radius: 16px; }
    html body .training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link { padding: 12px 4px !important; gap: 6px; }
    html body .training-top-block.hrc-train .top-nav-block .nav-tabs button.nav-link h5 { font-size: .74rem !important; }
    html body .training-top-block.hrc-train .hrc-train__ico { font-size: 1.15rem; }
}

/* Timeline marker: keep the ring and the vertical line locked to the same 14px column (no tile repeat / sub-pixel drift) */
html body .training-top-block.hrc-train .item-rt p::after { background-repeat: no-repeat; background-origin: border-box; width: 14px; box-sizing: border-box; }
html body .training-top-block.hrc-train .item-rt p:not(:first-of-type):not(:last-of-type)::after { background-size: 100% 100%, 2px 100%; background-position: 0 0, 50% 0; }

/* ---- 490px: methodology cards, one per row ---------------------------- */
@media screen and (max-width: 490px) {
    html body .hrc-meth .hrc-meth__col { flex: 0 0 100%; width: 100%; max-width: 100%; }
    .hrc-meth__card { padding: 24px 20px 28px; }
    .hrc-meth__photo { width: 150px; height: 150px; }
    .hrc-meth .hrc-meth__card p { font-size: .92rem !important; }
}
