/* Базовые цвета и типографика для хедера */
:root {
  --bg-page: #ffffff;
  --bg-header: #ffffff;
  --text-main: #1d1535;
  --text-accent: #7c5cdb;
  --text-muted: #827f8b;
  --border-soft: #f2eeff;
  --border-accent: #7c5cdb;
  --grey: #a7a5ae;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  font-family: "Wix Madefor Text", "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background-color: var(--bg-page);
  color: var(--text-main);
}

a {
  text-decoration: none;
  color: inherit !important;
}

/*.button-secondary-large {*/
/*  color: var(--text-accent) !important;*/
/*}*/

.link-block.button-nav .text,
.link-block.button-primary-large .text {
  color: inherit !important;
}

.link-block.button-nav .text *,
.link-block.button-primary-large .text * {
  color: inherit !important;
}

.navbar_dropdown-toggle .text {
    color: inherit !important;
}

.text {
  font-size: 1rem;
  line-height: 1.45em;
  color: var(--text-main) !important;
}

.text-paragraph-small {
  font-size: 0.875rem;
  line-height: 1.45em;
}

.text-paragraph-medium {
  font-size: 1rem;
  line-height: 1.36em;
}

.text-paragraph-medium.text-weight-semibold {
  font-weight: 600;
}

.text-weight-normal {
  font-weight: 400;
}

.text-weight-medium {
  font-weight: 500;
}

.text-weight-semibold {
  font-weight: 600;
}

.heading-style-h5 {
  font-size: 1.5rem;
  line-height: 1.2;
  letter-spacing: -0.48px;
  font-weight: 600;
}

.text-color-grey {
  color: var(--text-muted);
}

.text-block-wrap-div {
  display: inline;
}

.padding-global {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
  width: 100%;
}

.main-container {
  display: block;
  width: 100%;
  max-width: 1280px;
  min-width: auto;
  margin: 0 auto;
  padding-left: 0;
  padding-right: 0;
  position: relative;
}

.navbar {
  display: block;
  width: 100%;
  background-color: var(--bg-header);
}

.navbar-desktop,
.navbar-tablet,
.navbar-mobile {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: sticky;
  top: 0;
  z-index: 9999;
  background-color: var(--bg-header);
}

.navbar-tablet,
.navbar-mobile {
  display: none;
}

.navbar_content-wrap,
.navbar_wrap-tablet,
.navbar_wrap-mobile {
  display: flex;
  position: static;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  align-items: center;
  width: 100%;
}

.navbar_wrap-tablet {
  position: relative;
  justify-content: space-between;
}

.navbar_left-content {
  display: flex;
  align-items: center;
  column-gap: 1.5rem;
  width: auto;
}

.navbar_brand {
  display: flex;
  align-items: center;
  justify-content: center;
}

.navbar_brand-logo {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: auto;
}

.dropdown {
  position: static;
  white-space: nowrap;
}

.navbar_dropdown-toggle,
.navbar_dropdown-toggle-tablet,
.navbar_dropdown-toggle-mobile {
  display: flex;
  align-items: center;
  column-gap: 0.5rem;
  padding: 1rem;
  font-family: "Wix Madefor Text", "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.45em;
  color: rgba(124, 92, 219, 1);
  border: 1px solid rgba(124, 92, 219, 1);
  border-radius: 1rem;
  transition: border-color 0.2s ease, color 0.2s ease;
  cursor: pointer;
  background: #fff;
  width: auto;
}

.navbar_dropdown-toggle .text,
.navbar_dropdown-toggle-tablet .text,
.navbar_dropdown-toggle-mobile .text {
  color: inherit;
}

.navbar_dropdown-toggle-tablet,
.navbar_dropdown-toggle-mobile {
  color: var(--text-main);
  border: 0;
}

.navbar_dropdown-toggle-small {
  display: flex;
  align-items: center;
  column-gap: 0.25rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  padding-left: 0;
  padding-right: 0;
  font-family: "Wix Madefor Text", "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: rgba(29, 21, 53, 1);
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.45em;
  border-radius: 0;
  transition: color 200ms ease;
  width: auto;
  height: 100%;
  cursor: pointer;
}

.embed-icon-chevron,
.embed-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  transition: transform 200ms ease;
}

.embed-icon-burger {
  width: 24px;
  height: 24px;
  display: none;
}

.embed-icon-chevron.rotated {
  transform: rotate(180deg);
}

.navbar_nav-menu,
.navbar_nav-menu-tablet,
.navbar_nav-menu-mobile {
  display: flex;
  margin-left: 2.5rem;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.navbar_nav-menu-tablet {
  position: static;
  width: auto;
}

.navbar_link-list {
  display: flex;
  align-items: center;
  column-gap: 1rem;
}

.list__item,
.navbar_link-item {
  display: flex;
  align-items: center;
  justify-content: center;
}

.navbar_link,
.navbar_link-bold {
  padding: 1rem 0;
  font-size: 1rem;
  line-height: 1.45em;
  color: var(--text-main) !important;
  text-decoration: none;
  transition: color 0.2s ease;
}

.navbar_link-bold {
  font-weight: 600;
}

.navbar_link:hover,
.navbar_link-bold:hover {
  color: var(--text-accent) !important;
}

.navbar_dropdown {
  display: block;
  height: 100%;
  position: relative;
}

.navbar_dropdown-list {
  position: absolute;
  top: 100%;
  padding-top: 1.75rem;
  opacity: 0;
  transform: translate3d(0, 20px, 0);
  transition: opacity 0.2s ease, transform 0.2s ease;
  pointer-events: none;
  z-index: -1;
  width: max-content;
  left: 0;
  right: auto;
  display: block;
}

.navbar_dropdown-list-big,
.navbar_dropdown-list-tablet,
.navbar_dropdown-list-mobile {
  position: absolute;
  top: auto;
  padding-top: 1.75rem;
  opacity: 0;
  transform: translate3d(0, 20px, 0);
  transition: opacity 0.2s ease, transform 0.2s ease;
  pointer-events: none;
  z-index: -1;
  width: 100% !important;
  left: 0;
  right: 0;
  display: flex;
  justify-content: center;
}

.navbar_dropdown-list-tablet {
  width: 100vw !important;
}

.navbar_dropdown-list-mobile.dropdown-list-mobile-active {
  opacity: 1;
  pointer-events: auto;
  z-index: 100;
  transform: translate3d(0, 0, 0);
}

.navbar_dropdown-container,
.navbar_dropdown-container-tablet,
.navbar_dropdown-container-mobile {
  display: flex;
  flex-direction: column;
  row-gap: 0.75rem;
  padding: 1rem;
  background: #fff;
  border-radius: 1rem;
}

.navbar_dropdown-container-large {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 0.5fr);
  grid-template-rows: auto;
  row-gap: 0.75rem;
  column-gap: 32px;
  max-width: 1280px;
  margin: 0 auto;
  background: #fff;
  border-radius: 1rem;
  overflow-x: hidden;
  overflow-y: hidden;
  padding: 0;
  align-items: start;
  min-height: 0;
  width: 100% !important;
}

.navbar_dropdown-content {
  display: grid;
  grid-template-columns: minmax(0, 0.7fr) minmax(0, 1.3fr);
  align-items: start;
  min-height: 420px;
}

.navbar_dropdown-content-tablet {
  display: grid;
  grid-template-columns: minmax(0, 0.7fr) minmax(0, 1.3fr);
  column-gap: 32px;
  row-gap: 0.75rem;
  align-items: start;
  z-index: 10;
  width: 100%;
}

.navbar_dropdown-fixed-content {
  height: 100%;
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
  padding: 1.5rem;
  background: #f2eefe;
  min-width: 0;
}

.dropdown_cards-wrapper {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
  width: 100%;
}

.dropdown_card {
  display: flex;
  flex-direction: column;
  row-gap: 0.5rem;
  padding: 16px;
  font-size: 1.05rem;
  line-height: 1.3;
  color: var(--text-main);
  background: #fff;
  border: 1px solid #fff;
  border-radius: 12px;
  transition: border-color 0.2s ease;
  max-width: 100%;
  white-space: normal;
  word-break: break-word;
}

.dropdown_card:hover {
  border-color: var(--border-accent);
}

.dropdown-card_image-wrapper {
  overflow: hidden;
  max-height: 100px;
  border-radius: 0.25rem;
}

.dropdown-card_image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.dropdown-card_info-wrapper {
  display: flex;
  flex-direction: column;
  row-gap: 0.25rem;
}

.card-info_tags-wrapper {
  display: flex;
  align-items: center;
  column-gap: 1rem;
}

.dropdown_switch-tab-wrapper,
.dropdown_switch-tab-wrapper-tablet,
.dropdown_switch-tab-wrapper-mobile {
  display: flex;
  flex-direction: column;
  row-gap: 0.5rem;
  padding: 1rem;
}

.dropdown_switch-tab-wrapper-tablet {
  padding-top: 0.5rem;
  padding-bottom: 1rem;
}

.cms_topics-list {
  display: flex;
  flex-direction: column;
  row-gap: 0.5rem;
}

.dropdown_switch-link {
  padding: 1rem;
  font-size: 1rem;
  background: #fff;
  border: 1px solid #fff;
  border-radius: 0.5rem;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
  display: block;
  color: var(--text-main);
}

.dropdown_switch-link:hover {
  background-color: var(--border-soft);
  border-color: var(--border-soft);
}

.active-link {
  background: #f2eefe;
  border-color: #f2eefe;
}

.tab-link_items-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  line-height: 1.2;
}

.dropdown_switch-link .embed-icon {
  opacity: 0;
  transition: opacity 200ms ease;
}

.dropdown_switch-link:hover .embed-icon,
.dropdown_switch-link.active-link .embed-icon {
  opacity: 1;
}

.card-button-wrap {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 0.5rem;
  padding-top: 1rem;
  padding-bottom: 0.5rem;
}

.card-button-wrap .button-primary-large,
.card-button-wrap .button-secondary-large {
  width: 100%;
}

.dropdown_content-wrapper,
.dropdown_content-mobile {
  position: relative;
  height: 100%;
  overflow: hidden;
  background: #fff;
  border-radius: 16px;
  padding: 16px;
}

.dropdown_collection_wrapper {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
  z-index: 0;
  overflow: auto;
  display: none;
}

.active-collection {
  opacity: 1;
  pointer-events: auto;
  z-index: 100;
  display: block;
}

.cms_courses-wrapper {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

.cms_courses-list {
  width: 100%;
  height: 100%;
  column-count: 2;
}

.cms_courses-item {
  margin-bottom: 0.125rem;
  break-inside: avoid;
}

.dropdown-link,
.dropdown-link-large {
  display: flex;
  align-items: center;
  column-gap: 0.5rem;
  padding: 0.5rem;
  font-size: 1rem;
  color: var(--text-main);
  text-decoration: none;
  border-radius: 0.5rem;
  background: #fff;
  transition: color 0.2s ease, background-color 0.2s ease;
  white-space: normal;
}

.dropdown-link-large {
  padding: 0.35rem 0.5rem;
  font-size: 1.05rem;
  line-height: 1.4;
}

.dropdown-link:hover,
.dropdown-link-large:hover {
  background: var(--border-soft);
}

.tag {
  padding: 0.125rem 0.5rem;
  font-size: 0.75rem;
  color: rgba(167, 165, 174, 1);
  line-height: 1.45;
  border: 1px solid rgba(167, 165, 174, 1);
  border-radius: 0.75rem;
  width: auto;
}

.tag .text {
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
}

.navbar_buttons-wrap {
  display: flex;
  align-items: center;
  column-gap: 0.5rem;
}

.button-primary-large,
.button-secondary-large,
.button-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 0.5rem;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 600;
  text-decoration: none;
  border-radius: 16px;
  padding: 16px 24px;
  border: 1px solid transparent;
  color: inherit !important;
}

.button-primary-large {
  color: #fff !important;
  background: var(--text-accent);
  border-color: var(--text-accent);
  transition: background-color 0.2s ease, color 0.2s ease;
}

.button-primary-large:hover {
  background: #6542cc;
  border-color: #6542cc;
}

.button-primary-large .text {
  color: inherit;
}

.button-secondary-large {
  color: var(--text-accent) !important;
  background: #fff;
  border-color: var(--text-accent);
  transition: border-color 0.2s ease, color 0.2s ease;
}

.button-secondary-large:active {
  color: #6542cc;
  border-color: #6542cc;
}

.button-secondary-large .text {
  color: var(--text-accent) !important;
}

.button-nav {
  padding: 0.5rem;
  color: var(--text-accent);
  background: transparent;
}

.button-nav .text {
  color: inherit;
}

.button-nav:hover {
  color: #6542cc;
}

.icon-button {
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.icon-large {
  width: 24px;
  height: 24px;
}

.dropdown-overlay {
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.15);
  z-index: 99;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
}

.active-overlay {
  opacity: 1;
}

.active-dropdown {
  opacity: 1;
  z-index: 1;
  pointer-events: auto;
}

.active-dropdown-tablet {
  opacity: 1;
  z-index: 100;
  pointer-events: auto;
}

/* Hamburger icon */
.hamburger_5_wrap {
  position: relative;
  width: 24px;
  height: 24px;
  cursor: pointer;
  display: inline-block;
  color: inherit;
}

.hamburger_5_line {
  position: absolute;
  left: 0;
  width: 24px;
  height: 2px;
  background: currentColor;
  border-radius: 2px;
  transform-origin: center;
  transition: top 0.25s ease, transform 0.25s ease, opacity 0.2s ease;
}

.hamburger_5_line:nth-child(1) {
  top: 4px;
}

.hamburger_5_line:nth-child(2) {
  top: 11px;
}

.hamburger_5_line:nth-child(3) {
  top: 18px;
}

.hamburger_5_wrap.w--open .hamburger_5_line:nth-child(2) {
  opacity: 0;
}

.hamburger_5_wrap.w--open .hamburger_5_line:nth-child(1) {
  top: 11px;
  transform: rotate(45deg);
}

.hamburger_5_wrap.w--open .hamburger_5_line:nth-child(3) {
  top: 11px;
  transform: rotate(-45deg);
}

/* Desktop dropdown */
.navbar_dropdown-list {
  z-index: -1;
}

.navbar_dropdown-list-big {
  z-index: -1;
}

/* Tablet */
.navbar-tablet {
  background-color: #fff;
}

.navbar-burger-wrap {
  display: flex;
  align-items: center;
  column-gap: 0.5rem;
}

.dropdown-burger-tablet {
  position: static;
}

.navbar_dropdown-list-tablet {
  z-index: 100;
  left: 0;
  right: 0;
  width: 100%;
  display: flex;
  justify-content: center;
}

.navbar_dropdown-container-tablet {
  background: #fff;
  border-radius: 1rem;
  display: grid;
  grid-template-columns: minmax(0, 0.7fr) minmax(0, 1.3fr);
  grid-template-rows: auto;
  column-gap: 32px;
  row-gap: 0.75rem;
  max-width: 1280px;
  margin: 0 auto;
  overflow: hidden;
  align-items: start;
  padding: 0;
}

/* Mobile */
.navbar-mobile {
  background: #fff;
  border-bottom: 1px solid var(--border-soft);
}

.navbar_nav-menu-mobile {
  display: flex;
  margin-left: 2.5rem;
  justify-content: space-between;
  align-items: center;
  width: auto;
}

.navbar_dropdown-list-mobile {
  display: flex;
  flex-direction: column;
  top: 0;
  bottom: 0;
  margin-top: 80px;
  transform: translate3d(0, 0, 0);
  overflow: clip;
  height: calc(100dvh - 80px);
}

.navbar_dropdown-container-mobile {
  position: relative;
  height: 100%;
  background: #fff;
  grid-template-columns: 1fr;
}

.navbar_dropdown-content-mobile {
  width: 100vw;
  display: block;
  position: absolute;
  inset: 0;
  height: 100%;
  background: #fff;
}

.dropdown_switch-tab-wrapper-mobile {
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  overflow: auto;
  height: 100%;
}

.dropdown_content-mobile {
  position: absolute;
  inset: 0;
  width: 100vw;
  background: #fff;
  display: block;
}

.navbar-back-button {
  display: flex;
  align-items: center;
  column-gap: 4px;
  color: #a7a5ae;
  font-size: 1rem;
  line-height: 1.45em;
  padding: 22px 8px;
  position: sticky;
  top: 0;
  background: #fff;
  z-index: 9999;
  cursor: pointer;
}

.divider-menu {
  height: 1px;
  background: var(--border-soft);
}

.visibility-mobile-none {
  display: none;
}

.dropdown-list-mobile-active {
  opacity: 1;
  pointer-events: auto;
}

/* Responsive switches */
@media (max-width: 991px) {
  .padding-global {
    padding-left: 16px;
    padding-right: 16px;
  }

  .navbar-desktop {
    display: none;
  }

  .navbar-tablet {
    display: flex;
    background: #fff;
  }

  .navbar_wrap-tablet,
  .navbar-tablet .padding-global,
  .navbar-tablet .main-container {
    background: #fff;
  }

  .navbar_dropdown-list-tablet {
    padding-top: 0;
    margin-left: -16px;
    margin-right: -16px;
    width: 100vw;
    min-height: auto;
    z-index: -1;
    pointer-events: none;
    background: #fff;
  }

  .navbar_dropdown-container-tablet {
    grid-template-columns: 1fr;
    border-radius: 0;
    z-index: 10;
    max-width: 100vw;
    width: 100vw;
    margin: 0;
    column-gap: 24px;
    row-gap: 0.75rem;
    overflow: hidden;
    background: #fff;
  }

  /* Чуть компактнее отступы в колонке табов */
  .dropdown_switch-tab-wrapper-tablet {
    padding-top: 0.5rem;
    padding-bottom: 1rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .navbar_dropdown-content-tablet {
    grid-template-columns: minmax(0, 0.7fr) minmax(0, 1.3fr);
    gap: 0;
    grid-template-rows: auto;
  }

  .active-dropdown-tablet {
    opacity: 1;
    pointer-events: auto;
    z-index: 100;
  }

  .cms_courses-wrapper {
    margin: 0.5rem;
  }
}

@media (max-width: 767px) {
  /* Убедимся, что правая панель видна на мобилке */
  .navbar_dropdown-content-mobile {
    position: absolute;
    inset: 0;
    width: 100vw;
    height: 100%;
    background: #fff;
    z-index: 100;
    overflow: hidden;
  }

  .dropdown_content-mobile {
    position: absolute;
    inset: 0;
    width: 100vw;
    height: 100%;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    background: #fff;
    padding: 16px;
    display: none;
  }

  .dropdown_content-mobile.content-visible {
    display: block;
  }

  .dropdown_collection_wrapper {
    position: absolute;
    inset: 0;
    opacity: 0;
    pointer-events: none;
    display: none;
  }

  .dropdown_collection_wrapper.active-collection {
    display: block;
    opacity: 1;
    pointer-events: auto;
    z-index: 101;
  }

  .dropdown_switch-tab-wrapper-mobile {
    height: auto;
    justify-content: space-between;
  }
  
  .navbar-tablet {
    display: none;
  }

  .navbar-mobile {
    display: flex;
    height: 80px;
  }

  .navbar_wrap-mobile {
    width: 100%;
    justify-content: space-between;
    align-items: center;
    column-gap: 1rem;
  }

  .navbar_dropdown-list-mobile {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin-top: 80px;
    margin-left: 0;
    margin-right: 0;
    display: flex;
    flex-direction: column;
    height: calc(100dvh - 80px);
    min-height: auto;
    opacity: 0;
    pointer-events: none;
    z-index: 100;
    transform: translate3d(0, 0, 0);
    overflow-x: clip;
    overflow-y: clip;
  }

  .navbar_dropdown-container-mobile {
    border-radius: 0;
  }

  /* На мобильных убираем overlay, чтобы не перекрывал шапку */
  .dropdown-overlay {
    display: none;
    pointer-events: none;
    opacity: 0 !important;
  }

  .cms_courses-list {
    column-count: 1;
    padding-bottom: 10px;
  }

  .card-button-wrap {
    padding: 1rem;
  }

  .active-dropdown {
    z-index: 900;
    display: flex;
    position: relative;
    opacity: 1;
    pointer-events: auto;
    width: 100vw;
  }

  /* Финальные параметры открытия мобильного меню */
  .navbar_dropdown-list-mobile {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin-top: 80px;
    margin-left: 0;
    margin-right: 0;
    height: calc(100dvh - 80px);
    display: flex;
    flex-direction: column;
    padding: 0;
    opacity: 0;
    pointer-events: none;
    z-index: 100;
    transform: translate3d(0, 0, 0);
    overflow: clip;
    background: transparent;
  }

  .navbar_dropdown-list-mobile.dropdown-list-mobile-active {
    opacity: 1;
    pointer-events: auto;
  }
}

@media (max-width: 767px) {
  :root {
    /* реальная safe-area без добавки */
    --safe-bottom: env(safe-area-inset-bottom, 0px);
    --safe-top: env(safe-area-inset-top, 0px);
    --safe-left: env(safe-area-inset-left, 0px);
    --safe-right: env(safe-area-inset-right, 0px);

    /* твои управляемые добавки */
    --menu-gap: 16px;        /* воздух под последним пунктом меню */
    --actions-gap: 12px;     /* воздух под нижними кнопками */
    --collection-gap: 20px;  /* воздух/приподнятие коллекций */
  }

  [data-navbar="mobile"] [dropdown-element="list"][dropdown-type="mobile"] {
    position: fixed;
    inset: 0;
    height: 100dvh;
    height: 100svh;
    min-height: -webkit-fill-available;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;

    /* safe-area + небольшой запас */
    padding-bottom: calc(var(--safe-bottom) + var(--menu-gap)) !important;
  }

  [data-navbar="mobile"] .mobile-sticky-actions {
    /* safe-area + ещё меньший запас */
    padding-bottom: calc(var(--safe-bottom) + var(--actions-gap)) !important;
  }

  /* Приподнимаем контент коллекций, чтобы не залезал под нижние кнопки */
  .dropdown_collection_wrapper {
    padding-bottom: calc(var(--safe-bottom) + var(--collection-gap)) !important;
  }
}



  [data-navbar="mobile"] .dropdown-overlay {
    position: fixed;
    inset: 0;
  }

  .navbar_dropdown-list-mobile {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin-top: 80px;
    margin-left: 0;
    margin-right: 0;
    height: calc(100dvh - 80px);
    z-index: 100;
    display: flex;
    flex-direction: column;
    transform: translate3d(0, 0, 0);
    overflow-x: clip;
    overflow-y: clip;
    padding-top: 0;
    opacity: 0;
    pointer-events: none;
  }

  .navbar_dropdown-list-mobile.dropdown-list-mobile-active {
    opacity: 1;
    pointer-events: auto;
    z-index: 100;
    transform: translate3d(0, 0, 0);
  }

  .navbar_dropdown-container-mobile {
    position: relative;
    height: 100%;
    width: 100%;
  }

  .navbar_dropdown-content-mobile {
    position: absolute;
    inset: 0;
    height: 100%;
    overflow: hidden;
    background-color: #fff;
    z-index: 100;
    transition: z-index 0.25s ease;
  }

  .navbar_dropdown-content-mobile:has(.active-dropdown) {
    z-index: 200;
  }

  .dropdown_switch-tab-wrapper-mobile {
    height: 100%;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    padding-bottom: max(48px, var(--safe-bottom));
    box-sizing: border-box;
  }

  .dropdown_content-mobile {
    height: 100%;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    padding-bottom: max(32px, var(--safe-bottom));
    box-sizing: border-box;
  }

  /* Финальная правка порядка: перекрываем все предыдущее для списка меню */
  .navbar_dropdown-list-mobile {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    margin: 80px 0 0 0 !important;
    width: 100vw !important;
    height: calc(100dvh - 80px) !important;
    display: flex !important;
    flex-direction: column !important;
    opacity: 0 !important;
    pointer-events: none !important;
    z-index: 1000 !important;
    transform: translate3d(0, 0, 0) !important;
    overflow: clip !important;
    padding: 0 !important;
    background: #fff;
  }

  .navbar_dropdown-list-mobile.dropdown-list-mobile-active {
    opacity: 1 !important;
    pointer-events: auto !important;
    z-index: 1001 !important;
  }
  
  /* ==== ANTI-TILDA RESET: links/buttons inherit ==== */

/* Снимаем тильдовский цвет ссылок и кнопок */
/*#allrecords a,*/
/*#allrecords a:link,*/
/*#allrecords a:visited,*/
/*#allrecords a:hover,*/
/*#allrecords a:active,*/
/*#allrecords button {*/
/*  color: inherit !important;*/
/*  text-decoration: inherit !important;*/
/*}*/

/* Если Tilda красит вложенные элементы внутри ссылок */
/*#allrecords a *,*/
/*#allrecords button * {*/
/*  color: inherit !important;*/
/*}*/
/*#allrecords a .text,*/
/*#allrecords a .text * {*/
/*  color: inherit !important;*/
/*}*/
/* Текст в primary/secondary кнопках наследует цвет кнопки */
.link-block.button-primary-large .text,
.link-block.button-secondary-large .text {
  color: inherit !important;
}

.link-block.button-primary-large .text *,
.link-block.button-secondary-large .text * {
  color: inherit !important;
}
}
/* Липкий хедер */
#t-header {
  position: sticky !important;
  position: -webkit-sticky !important;
  top: 0;
  z-index: 999;
  background: #fff;
}

/* Снимаем overflow, который ломает sticky у тильдовских записей */
.t-records {
  overflow: unset !important;
}

/*.t-quiz__col.t-col.t-col_12 {*/
/*  margin: 0 !important;*/
/*}*/


/* Активное состояние — делаем базовый цвет фона фиолетовым */
#rec1356974601 .tn-elem.nlm113-btn .tn-atom {
  --t396-bgcolor-color: transparent;
}

#rec1356974601 .tn-elem.nlm113-btn.tn-elem_active .tn-atom,
#rec1356974601 .tn-elem.nlm113-btn.t-active .tn-atom {
  --t396-bgcolor-color: #7766c6 !important;
  background-color: #7766c6 !important;
}

/* ===== общие стили лендингов · начало =====


/* ---------- 1. Шрифт ----------
   Wix Madefor Text, один вариативный файл 29 КБ: насыщенность 400–800,
   кириллица, латиница и знаки набора. Как собран — fonts/README.md.
   Своё имя семейства, чтобы не смешиваться с Google Fonts на старых страницах.
   Адрес файла в Тильде подставляет сборщик. НЕ МЕНЯТЬ имя семейства. */
@font-face {
  font-family: "Academy Wix Madefor";
  src: url("https://static.tildacdn.com/tild3036-3463-4533-b066-643263323666/wix-madefor-text-aca.woff2") format("woff2");
  font-weight: 400 800;
  font-style: normal;
  font-display: swap;
}
/* Пока шрифт грузится, текст показан Arial, подогнанным под размеры Wix Madefor:
   при подмене строки не прыгают. Цифры посчитаны по файлу шрифта и русскому
   тексту лендингов 24.10.2026. НЕ МЕНЯТЬ руками: пересчитывать при смене файла. */
@font-face {
  font-family: "Academy Wix Madefor Fallback";
  src: local("Arial"), local("ArialMT");
  size-adjust: 102.96%;
  ascent-override: 97.9%;
  descent-override: 24.47%;
  line-gap-override: 0%;
}


/* ---------- 2. Цвета, шрифт, ширины ----------
   Значения из web-academy. МОЖНО добавлять новые токены,
   НЕЛЬЗЯ менять существующие в этой версии: на них держатся страницы. */
[data-academy="1"] {
  --color-page-background: #f5f5f5;
  --color-surface-primary: #ffffff;
  --color-surface-dark: #2b2334;
  --color-text-primary: #332f41;
  --color-text-secondary: #747476;
  --color-text-secondary-large: #7b7b7c;
  --color-text-secondary-on-accent: #5e5a6a;
  --color-text-on-dark: #ffffff;
  --color-text-on-dark-muted: #e6e5eb;
  --color-accent-primary: #7c5cdb;
  --color-accent-text: #644ab2;
  --color-accent-soft: #dad6ff;
  --color-focus: #7c5cdb;
  --color-cta-grid-muted: #32293c;
  --color-cta-grid-medium: #3b2e49;
  --color-cta-grid-bright: #38254e;
  --border-gradient-accent: linear-gradient(
    to top right,
    rgba(124, 92, 219, 0.8) 0%,
    rgba(124, 92, 219, 0.3) 50%,
    rgba(124, 92, 219, 0.8) 100%
  );

  --font-family-body: "Academy Wix Madefor", "Academy Wix Madefor Fallback", Arial, sans-serif;
  --font-family-emphasis: var(--font-family-body);

  /* Ширина контента 1520 px и поля страницы: от 16 px на телефоне до 80 px */
  --container-xlarge: 95rem;
  --page-padding: clamp(1rem, 4.7619vw, 5rem);
  --transition-site: 180ms ease;

  /* Карточки: поля от 16 px на всех ширинах (правило Академии от 12.10.2026) */
  --card-padding: 1rem;
  --radius-card: 0.75rem;
  --card-grid-gap: 0.75rem;

  /* Расстояние между секциями и поля тёмных секций */
  --section-space: 3.75rem;
  --section-inset-space: 2.5rem;

  /* Заголовки секций и их окружение */
  --section-heading-gap: clamp(1.25rem, 3.63vw, 1.75rem);
  --section-heading-description-size: clamp(1.125rem, 2.149vw, 1.375rem);
  --content-heading-gap: 0.5rem;
  --space-heading-copy: 1.25rem;
  --space-subtitle-pair: 0.25rem;
  --space-mark-heading: 0.75rem;
  --space-section-content: 2rem;
  --space-cta-action: 2rem;
  --text-body-size: clamp(1.125rem, 2.016vw, 1.25rem);
  --text-body-line-height: 1.4;

  /* H1 первого экрана: 28 px на 375 → 48 px на 1440 и шире.
     Меньше, чем в web-academy, потому что названия курсов длинные (решение 24.10.2026). */
  --hero-heading-size: clamp(1.75rem, calc(1.8779vw + 1.3099rem), 3rem);

  /* Отступ сверху при переходе по якорю */
  --anchor-scroll-offset: 50px;
}
@media (min-width: 32.5625rem) {
  [data-academy="1"] { --section-space: 5rem; --space-subtitle-pair: 0.5rem; --space-section-content: 2.25rem; }
}
@media (min-width: 48rem) {
  [data-academy="1"] {
    --card-grid-gap: 1rem;
    --radius-card: 1rem;
    --section-space: 6.25rem;
    --section-inset-space: 3.125rem;
    --space-heading-copy: 1.5rem;
    --space-subtitle-pair: 0.75rem;
    --space-mark-heading: 1rem;
    --space-section-content: 2.625rem;
    --anchor-scroll-offset: 100px;
  }
}
@media (min-width: 64.0625rem) {
  [data-academy="1"] {
    --section-space: 9.375rem;
    --section-inset-space: 4.375rem;
    --space-heading-copy: 1.75rem;
    --space-subtitle-pair: 1rem;
    --space-section-content: 4.375rem;
    --space-cta-action: 2.25rem;
  }
}


/* ---------- 3. Основа страницы ---------- */
[data-academy="1"] {
  overflow: clip;
  color: var(--color-text-primary);
  background: var(--color-page-background);
  font-family: var(--font-family-body);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
/* iPhone не раздувает текст при повороте. Увеличение пальцами НЕ запрещаем. */
html:has([data-academy="1"]) {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
body:has([data-academy="1"]) {
  margin: 0;
  background: #f5f5f5;
}
[data-academy="1"],
[data-academy="1"] *,
[data-academy="1"] *::before,
[data-academy="1"] *::after {
  box-sizing: border-box;
}
[data-academy="1"] :where(h1, h2, h3, h4, h5, h6, p, ul, li) {
  margin: 0;
  padding: 0;
}
[data-academy="1"] ul { list-style: none; }
[data-academy="1"] a { color: inherit; text-decoration: none; }
[data-academy="1"] img { -webkit-user-drag: none; user-select: none; }

/* Каркас: main-wrapper → padding-global (боковые поля) → container-xlarge (1520 px) */
[data-academy="1"].main-wrapper,
[data-academy="1"] .main-wrapper { display: block; }
[data-academy="1"] .padding-global {
  width: 100%;
  padding-right: var(--page-padding);
  padding-left: var(--page-padding);
}
[data-academy="1"] .container-xlarge {
  width: 100%;
  max-width: var(--container-xlarge);
  margin-right: auto;
  margin-left: auto;
}

/* Отступы секций: снизу у каждой секции, у тёмных — внутренние поля */
[data-academy="1"] .section-spacing_component { padding-block: 0 var(--section-space); }
[data-academy="1"] .section-spacing_component.is-inset { padding-block: var(--section-inset-space); }
[data-academy="1"] .section-spacing_component.is-after-inset { padding-block-start: var(--section-space); }

/* Якоря: блок не прилипает к верху экрана и не прячется под шапкой сайта */
[data-academy="1"] [id] { scroll-margin-top: var(--anchor-scroll-offset); }

/* Поля формы на телефоне не мельче 16 px: иначе iPhone приближает страницу,
   когда нажимаешь на поле. До 767 px — чтобы закрыть и телефон, повёрнутый боком.
   !important — чтобы не перебил стиль формы на странице. */
@media (max-width: 47.9375rem) {
  [data-academy="1"] :is(input:not([type="checkbox"], [type="radio"], [type="range"]), select, textarea) {
    font-size: 1rem !important;
  }
}


/* ---------- 4. H1 первого экрана ----------
   Размер задаёт токен --hero-heading-size (раздел 2).
   Стили первого экрана на странице НЕ должны переопределять этот токен. */
[data-academy="1"] .hero_heading {
  font-family: var(--font-family-body);
  font-size: var(--hero-heading-size);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.02em;
  text-wrap: balance;
  overflow-wrap: anywhere;
}


/* ---------- 5. Заголовок секции, описание, заголовок карточки ---------- */
[data-academy="1"] .section-title_component {
  width: 100%;
  min-width: 0;
  margin: 0;
  color: inherit;
  font-family: var(--font-family-body);
  font-size: var(--section-title-size, clamp(2.25rem, 3.1vw, 3.25rem));
  font-weight: var(--section-title-weight, 500);
  line-height: var(--section-title-line-height, 1.1);
  letter-spacing: var(--section-title-tracking, -0.06em);
  text-align: inherit;
  text-wrap: var(--section-title-wrap, balance);
}
[data-academy="1"] .section-title_component.is-left { text-align: left; }
[data-academy="1"] .section-title_component.is-center { text-align: center; }
[data-academy="1"] .section-title_component.is-right { text-align: right; }
[data-academy="1"] .section-title_accent { display: inline; color: var(--color-accent-text, var(--color-accent-primary)); }

/* Адаптивный заголовок секции: 32 · 36 · 44 · 52 px.
   Межстрочный 1.1 на телефоне (решение 24.10.2026), 1.0 от 521 px как в web-academy. */
[data-academy="1"] :is(.section-title_component.is-responsive, .section-layout_component.is-responsive) {
  --section-title-size: 2rem;
  --section-title-line-height: 1.1;
}
[data-academy="1"] .section-title_component.is-responsive { overflow-wrap: anywhere; }
@media (min-width: 32.5625rem) {
  [data-academy="1"] :is(.section-title_component.is-responsive, .section-layout_component.is-responsive) {
    --section-title-size: 2.25rem;
    --section-title-line-height: 1;
  }
}
@media (min-width: 48rem) {
  [data-academy="1"] :is(.section-title_component.is-responsive, .section-layout_component.is-responsive) { --section-title-size: 2.75rem; }
}
@media (min-width: 64.0625rem) {
  [data-academy="1"] :is(.section-title_component.is-responsive, .section-layout_component.is-responsive) { --section-title-size: 3.25rem; }
}

/* Описание под заголовком секции: 18 · 18 · 20 · 22 px (18 на телефоне — решение 24.10.2026) */
[data-academy="1"] .section-subtitle_component {
  width: 100%;
  min-width: 0;
  margin: 0;
  color: var(--section-subtitle-color, var(--color-text-secondary-large));
  font-family: var(--font-family-body);
  font-size: var(--section-heading-description-size);
  font-weight: 400;
  line-height: var(--section-subtitle-line-height, 1.2);
  letter-spacing: var(--section-subtitle-tracking, -0.01em);
  text-wrap: pretty;
}

/* Заголовок карточки и вопроса: 22 · 22 · 24 · 24 px (22 на телефоне — решение 24.10.2026) */
[data-academy="1"] .content-heading_component {
  min-width: 0;
  margin: 0;
  color: inherit;
  font-family: var(--font-family-body);
  font-size: var(--content-heading-size, clamp(1.375rem, 2.419vw, 1.5rem));
  font-weight: 500;
  line-height: var(--content-heading-line-height, 1.1);
  letter-spacing: 0;
  font-feature-settings: "lnum" 1, "pnum" 1;
}
[data-academy="1"] .content-heading_component.is-prominent {
  font-size: var(--content-prominent-size, clamp(1.75rem, 2.4vw, 2.25rem));
  font-weight: 444;
  letter-spacing: -0.03em;
}
[data-academy="1"] .content-heading_component.is-card { --content-heading-size: 1.375rem; }
/* Имя в карточке преподавателя: 22 · 24 · 28 · 32 px */
[data-academy="1"] .content-heading_component.is-profile { --content-heading-size: 1.375rem; font-weight: 400; }
/* Плотные списки (расписание): 18 px на телефоне, 20 px от 521 px */
[data-academy="1"] .content-heading_component.is-compact { --content-heading-size: 1.125rem; }
@media (min-width: 32.5625rem) {
  [data-academy="1"] .content-heading_component.is-profile { --content-heading-size: 1.5rem; }
  [data-academy="1"] .content-heading_component.is-compact { --content-heading-size: 1.25rem; }
}
@media (min-width: 48rem) {
  [data-academy="1"] .content-heading_component.is-card { --content-heading-size: 1.5rem; }
  [data-academy="1"] .content-heading_component.is-profile { --content-heading-size: 1.75rem; }
}
@media (min-width: 64.0625rem) {
  [data-academy="1"] .content-heading_component.is-profile { --content-heading-size: 2rem; }
}

/* Группы: заголовок + описание, метка + заголовок, шапка секции + содержимое */
[data-academy="1"] .content-header_component {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--content-heading-gap);
}
[data-academy="1"] .section-header_component {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--section-heading-gap);
}
[data-academy="1"] .section-subtitles_component {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--section-subtitles-gap, 1rem);
}
[data-academy="1"] .section-header_title {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  align-items: inherit;
  gap: var(--section-heading-mark-gap, 1rem);
}
[data-academy="1"] .section-header_component.is-responsive {
  --section-heading-gap: var(--space-heading-copy);
  --section-heading-description-size: 1.125rem;
  --section-subtitles-gap: var(--space-subtitle-pair);
  --section-heading-mark-gap: var(--space-mark-heading);
}
@media (min-width: 48rem) {
  [data-academy="1"] .section-header_component.is-responsive { --section-heading-description-size: 1.25rem; }
}
@media (min-width: 64.0625rem) {
  [data-academy="1"] .section-header_component.is-responsive { --section-heading-description-size: 1.375rem; }
}
[data-academy="1"] .section-header_component.is-left { align-items: flex-start; text-align: left; }
[data-academy="1"] .section-header_component.is-center { align-items: center; text-align: center; }
[data-academy="1"] .section-header_component.is-right { align-items: flex-end; text-align: right; }

[data-academy="1"] .section-layout_component {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--section-layout-gap, clamp(2.5rem, 6.835vw, 4.375rem));
}
[data-academy="1"] .section-layout_component.is-responsive { --section-layout-gap: var(--space-section-content); }
@media (min-width: 64.0625rem) {
  [data-academy="1"] .section-layout_component.is-split {
    display: grid;
    grid-template-columns: var(--section-layout-columns, minmax(0, 0.75fr) minmax(0, 1fr));
    align-items: start;
  }
}


/* ---------- 6. Текст ----------
   Основной текст и длинное чтение: 16 · 16 · 18 · 20 px (16 на телефоне — решение 24.10.2026).
   Межстрочный: 1.3 на телефоне, 1.2 от 521 px; у длинного чтения 1.4 везде.
   Отрицательный трекинг только у текста от 16 px. */
[data-academy="1"] .body-text_component {
  margin: 0;
  color: var(--body-text-color, var(--color-text-secondary-large));
  font-family: var(--font-family-body);
  font-size: min(var(--body-text-max, 1.25rem), 1rem);
  font-weight: 444;
  line-height: 1.3;
  letter-spacing: -0.01em;
  font-feature-settings: "lnum" 1, "pnum" 1;
  text-wrap: pretty;
}
[data-academy="1"] .body-text_component.is-regular { font-weight: 400; }
[data-academy="1"] .body-text_component.is-statement { letter-spacing: normal; }
/* Подводка: 18 · 18 · 20 · 22 px */
[data-academy="1"] .body-text_component.is-summary { font-size: var(--body-summary-size, min(var(--body-summary-max, 1.375rem), 1.125rem)); }
/* Длинное чтение: программа, отзывы, описание преподавателя */
[data-academy="1"] .body-text_component:is(.is-reading, .is-detailed) { line-height: 1.4; letter-spacing: normal; }
[data-academy="1"] .body-text_component.is-showcase { font-size: 1rem; font-weight: 400; line-height: 1.1; }
[data-academy="1"] .body-text_lead { color: var(--color-text-primary); }
/* Подпись, рассрочка: 15 · 16 · 16 · 18 px */
[data-academy="1"] .body-text_component.is-caption { font-size: 0.9375rem; line-height: 1.35; letter-spacing: 0; }
/* Выделение, врезка, сноска */
[data-academy="1"] .body-text_component.is-emphasis { font-weight: 600; }
[data-academy="1"] .body-text_component.is-callout { font-weight: 500; line-height: 1.3; }
/* Сноска, согласие: 14 px на всех ширинах */
[data-academy="1"] .body-text_component.is-fine-print { font-size: 0.875rem; font-weight: 400; line-height: 1.4; letter-spacing: 0; }
/* Компактные подписи в списках: 16 px на всех ширинах */
[data-academy="1"] .body-text_component.is-compact { font-size: 1rem; }

@media (min-width: 32.5625rem) {
  [data-academy="1"] .body-text_component { line-height: 1.2; }
  [data-academy="1"] .body-text_component.is-showcase { font-size: 1.125rem; }
  [data-academy="1"] .body-text_component.is-caption { font-size: 1rem; line-height: 1.2; letter-spacing: -0.01em; }
}
@media (min-width: 48rem) {
  [data-academy="1"] .body-text_component { font-size: min(var(--body-text-max, 1.25rem), 1.125rem); }
  [data-academy="1"] .body-text_component.is-summary { font-size: var(--body-summary-size, min(var(--body-summary-max, 1.375rem), 1.25rem)); }
  [data-academy="1"] .body-text_component.is-showcase { font-size: 1.25rem; }
}
@media (min-width: 64.0625rem) {
  [data-academy="1"] .body-text_component { font-size: min(var(--body-text-max, 1.25rem), 1.25rem); }
  [data-academy="1"] .body-text_component.is-summary { font-size: var(--body-summary-size, min(var(--body-summary-max, 1.375rem), 1.375rem)); }
  [data-academy="1"] .body-text_component.is-showcase { font-size: 1.5rem; }
  [data-academy="1"] .body-text_component.is-caption { font-size: 1.125rem; }
}


/* ---------- 7. Кнопка ----------
   Один размер, растёт с шириной: 18 px на телефоне → 22 px на большом экране.
   Варианты: is-accent (фиолетовая), is-light (белая), is-outline (на фото и тёмном).
   Ширину кнопки задаёт секция. */
[data-academy="1"] { --button-light-padding-inline: 0.75rem; }
@media (min-width: 48rem) {
  [data-academy="1"] { --button-light-padding-inline: 1.5rem; }
}
[data-academy="1"] .button_component {
  --button-font-size: max(1.125rem, calc(1rem + clamp(0rem, 1.02301790vw - 0.38363171rem, 0.25rem) + clamp(0rem, 0.29027576vw - 0.17978955rem, 0.125rem)));
  --button-min-height: calc(3.125rem + clamp(0rem, 2.91560102vw - 1.09335038rem, 0.7125rem) + clamp(0rem, 0.31059507vw - 0.19237482rem, 0.13375rem));
  display: inline-flex;
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
  min-height: var(--button-min-height);
  align-items: center;
  justify-content: center;
  padding: 0.75rem;
  border: 1px solid transparent;
  border-radius: 0.5rem;
  font-family: inherit;
  font-size: var(--button-font-size);
  font-weight: 500;
  line-height: 1.07;
  letter-spacing: -0.04em;
  text-align: center;
  text-decoration: none;
  white-space: normal;
  overflow-wrap: anywhere;
  cursor: pointer;
  transition: background-color var(--transition-site, 150ms ease-in-out),
    box-shadow var(--transition-site, 150ms ease-in-out);
}
/* Цвет текста с !important: custom.css сайта красит все ссылки правилом
   «a { color: inherit !important }», и без этого текст кнопки-ссылки пропадает. */
[data-academy="1"] .button_component.is-light {
  padding-inline: var(--button-light-padding-inline, 0.75rem);
  background: var(--color-surface-primary);
  color: var(--color-text-primary) !important;
}
[data-academy="1"] .button_component.is-accent {
  background: var(--color-accent-primary);
  color: var(--color-text-on-dark) !important;
}
[data-academy="1"] .button_component.is-outline {
  border-color: var(--color-text-on-dark);
  background: rgb(255 255 255 / 15%);
  color: var(--color-text-on-dark) !important;
  backdrop-filter: blur(4px);
}
/* Наведение только мышью: на телефоне эффект залипал бы после нажатия */
@media (hover: hover) and (pointer: fine) {
  [data-academy="1"] .button_component.is-light:where(:not(:disabled)):hover { background: var(--color-text-on-dark-muted); }
  [data-academy="1"] .button_component.is-accent:where(:not(:disabled)):hover { background: var(--color-accent-text); }
  [data-academy="1"] .button_component.is-outline:where(:not(:disabled)):hover { background: rgb(255 255 255 / 25%); }
}
[data-academy="1"] .button_component:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 4px;
  box-shadow: 0 0 0 4px rgb(255 255 255 / 85%);
}
@media (prefers-reduced-motion: reduce) {
  [data-academy="1"] .button_component { transition: none; }
}


/* ---------- 8. Плашка ----------
   Короткий факт: «Онлайн», «Старт 16 ноября». 14 → 16 px. Трекинг 0: текст мельче 16 px. */
[data-academy="1"] .meta-pill_component {
  display: inline-flex;
  min-height: 2rem;
  align-items: center;
  gap: 0.25rem;
  padding: 0.375rem 0.75rem;
  border-radius: 999px;
  background: var(--color-page-background);
  color: var(--color-text-primary);
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0;
  white-space: nowrap;
}
[data-academy="1"] .meta-pill_component.is-accent {
  background: var(--color-accent-primary);
  color: var(--color-text-on-dark);
}
[data-academy="1"] .meta-pill_component img {
  display: block;
  width: 1.25rem;
  height: 1.25rem;
  flex: none;
}
[data-academy="1"] .meta-pill_component.is-responsive {
  --meta-pill-padding-y: calc(0.3125rem + clamp(0rem, 0.25575448vw - 0.09590793rem, 0.0625rem));
  --meta-pill-padding-start: calc(0.375rem + clamp(0rem, 0.76726343vw - 0.28772379rem, 0.1875rem));
  --meta-pill-padding-end: calc(0.5625rem + clamp(0rem, 0.76726343vw - 0.28772379rem, 0.1875rem));
  --meta-pill-size: calc(0.875rem + clamp(0rem, 0.51150895vw - 0.19181586rem, 0.125rem));
  --meta-pill-icon-size: calc(1.125rem + clamp(0rem, 0.51150895vw - 0.19181586rem, 0.125rem));
  min-width: 0;
  min-height: 0;
  max-width: 100%;
  padding: var(--meta-pill-padding-y) var(--meta-pill-padding-end) var(--meta-pill-padding-y) var(--meta-pill-padding-start);
  font-size: var(--meta-pill-size);
  white-space: normal;
}
[data-academy="1"] .meta-pill_icon {
  display: block;
  width: var(--meta-pill-icon-size, 1.25rem);
  height: var(--meta-pill-icon-size, 1.25rem);
  flex: none;
}
@media (min-width: 48rem) {
  [data-academy="1"] .meta-pill_component { font-size: 1rem; }
}

/* ===== общие стили лендингов · конец ===== */


