/* /assets/templates/css/libs/normalize.css */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}details,main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}[hidden],template{display:none}
/* /assets/templates/css/style.min.css */
/* Собрано _материалы/scripts/purge_legacy_css.py из _материалы/css-ishodniki/style.min.css:
   только правила, которые нужны страницам сайта. Править в исходнике. */
@font-face{font-family:EuclidCircular;src:url(/assets/home/assets/onest-variable.woff2) format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:Gordita;src:url(/assets/home/assets/onest-variable.woff2) format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:CeraPro;src:url(/assets/home/assets/onest-variable.woff2) format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:NunitoSans;src:url(/assets/home/assets/onest-variable.woff2) format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:SFProDisplay;src:url(/assets/home/assets/onest-variable.woff2) format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:SFProText;src:url(/assets/home/assets/onest-variable.woff2) format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:Inter;src:url(/assets/home/assets/onest-variable.woff2) format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:Montserrat;src:url(/assets/home/assets/onest-variable.woff2) format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:OpenSans;src:url(/assets/home/assets/onest-variable.woff2) format('woff2');font-weight:100 900;font-display:swap}
:root{--white: #fff;
  --dark: #000;
  --black: #202229;
  --blue: #0075ff;
  --gray: #767e8f;
  --gray-light: #f3f4f7;
  --sky-blue: #00c3ee;}
*,::after,::before{box-sizing: border-box;}
html{height: 100%;
  scroll-behavior: smooth;}
body{margin: 0;
  padding: 0;
  font-size: 16px;
  line-height: 120%;
  font-weight: 400;
  font-family: EuclidCircular, Arial, sans-serif;
  color: var(--black);
  background-color: var(--white);
  display: flex;
  flex-direction: column;
  position: relative;
  height: 100%;}
body.overflow-hidden{overflow: hidden;}
h1,h2,h3,h4,h5,h6{line-height: 120%;}
a{text-decoration: none;
  color: var(--black);
  transition: 0.5s;}
a:hover{color: var(--blue);}
img{max-width: 100%;
  height: auto;}
.btn{background: 0 0;
  border: none;
  cursor: pointer;
  font-family: inherit;
  padding: 0;
  color: inherit;
  transition: 0.3s;}
.terra-btn{border-radius: 12px;
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 10px;
  column-gap: 10px;
  font-family: Gordita;
  font-size: 14px;
  font-weight: 500;}
.terra-btn--blue{background-color: var(--blue);
  color: var(--white);
  border: 1px solid transparent;}
.terra-btn--blue svg{fill: transparent;
  stroke: var(--white);
  position: relative;}
.terra-btn--blue[disabled]{background-color: #75b5ff;
  pointer-events: none;}
.terra-btn--blue:not([disabled]):focus,.terra-btn--blue:not([disabled]):hover{background-color: var(--white);
  color: var(--blue);
  border-color: var(--blue);}
.terra-btn--blue:not([disabled]):focus svg,.terra-btn--blue:not([disabled]):hover svg{stroke: var(--blue);}
.terra-btn--blue-outline{border-color: var(--blue);
  background-color: var(--white);
  background-color: var(--white);
  color: var(--blue);}
.terra-btn--blue-outline svg{stroke: var(--blue);}
.terra-btn--blue-outline:not([disabled]):focus,.terra-btn--blue-outline:not([disabled]):hover{background-color: var(--blue);
  color: var(--white);}
.terra-btn--blue-outline:not([disabled]):focus svg,.terra-btn--blue-outline:not([disabled]):hover svg{fill: transparent;
  stroke: var(--white);}
.terra-btn--outline{background-color: var(--white);
  color: var(--black);
  padding: 0 16px;
  border: 1px solid var(--black);
  border-radius: 62px;}
.terra-btn--outline svg{fill: transparent;
  stroke: var(--black);}
.terra-btn--outline:focus,.terra-btn--outline:hover{background-color: var(--blue);
  color: var(--white);
  border-color: var(--blue);}
.terra-btn--outline:focus svg,.terra-btn--outline:hover svg{stroke: var(--white);}
.terra-btn--52{height: 52px;}
.terra-btn--58{height: 58px;}
.container{width: 100%;
  max-width: 1412px;
  padding: 0 20px;
  margin: 0 auto;}
#footer,#header{flex: 0 0 auto;}
#content{flex: 1 0 auto;}
.section--gray{background-color: #f3f5ff;}
.section--radius{border-radius: 40px 40px 0 0;}
.section-gap{padding: 70px 0;}
.section-gap-bottom{padding-bottom: 70px;}
.section__header{display: flex;
  flex-direction: column;
  row-gap: 16px;
  position: relative;
  margin-bottom: clamp(1.875rem, 1.411rem + 1.9vw, 3.125rem);}
.section__header-heading{display: flex;
  flex-direction: column;
  flex-grow: 1;
  row-gap: 16px;
  position: relative;}
.section__header-line{top: -25px;
  left: -40px;
  position: absolute;}
.section__header--half{display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: row;}
.section__header-right{display: flex;
  align-items: center;
  -moz-column-gap: 60px;
  column-gap: 60px;}
.section__title{font-size: 36px;
  font-weight: 500;
  margin: 0;
  position: relative;}
.section__title span{color: var(--blue);}
.section__title span.skyblue{color: #44c2ea;}
.section__description{color: var(--gray);
  position: relative;}
.section__half{display: grid;
  grid-template-columns: 395px 1fr;
  -moz-column-gap: 40px;
  column-gap: 40px;}
.section__footer{position: relative;
  z-index: 2;
  margin-top: 22px;
  justify-content: space-between;}
.section__join{margin-top: auto;
  width: 100%;
  max-width: 262px;}
.form__date{position: relative;}
.form__date-toggle{display: flex;
  align-items: center;
  gap: 8px;}
.form__date-toggle:hover{color: var(--blue);}
.form__date-toggle:hover svg path{fill: var(--blue);}
.form__date-toggle svg path{transition: 0.3s;}
.form__date-calendar{position: absolute;
  z-index: 22;
  opacity: 0;
  visibility: hidden;
  margin-top: 20px;
  box-shadow: 0 10px 48px 0 rgba(85, 85, 85, 0.1);
  background: var(--white);
  border-radius: 13px;}
.form__date-calendar.active{opacity: 1;
  visibility: visible;}
.form__date-calendar .vanilla-calendar-month,.form__date-calendar .vanilla-calendar-year{font-size: 20px;
  font-weight: 400;}
.form__date-calendar .vanilla-calendar-arrow{width: 18px;
  height: 18px;}
.form__date-calendar .vanilla-calendar-week__day{font-size: 13px;
  font-weight: 400;
  color: rgba(60, 60, 67, 0.3);}
.form__date-calendar .vanilla-calendar-day__btn{font-weight: 300;
  color: var(--black);
  border-radius: 50%;
  width: 32px;
  height: 32px;}
.form__date-calendar
  .vanilla-calendar-day__btn.vanilla-calendar-day__btn_selected:not(
    .vanilla-calendar-day__btn_weekend
  ){background-color: var(--blue);
  color: var(--white);}
.form__date-calendar
  .vanilla-calendar-day__btn.vanilla-calendar-day__btn_weekend:not(
    .vanilla-calendar-day__btn_selected
  ){color: #f43f5e;}
.form__date-calendar .vanilla-calendar-months__month{font-weight: 300;
  color: var(--black);}
.form__date-calendar
  .vanilla-calendar-months__month.vanilla-calendar-months__month_selected{background-color: var(--blue);}
.form__date-calendar .vanilla-calendar-years__year{font-weight: 300;
  color: var(--black);}
.form__date-calendar
  .vanilla-calendar-years__year.vanilla-calendar-years__year_selected{background-color: var(--blue);}
.logo{display: flex;}
.tags{margin: 0;
  padding: 0;
  list-style: none;}
.tag{background-color: var(--bg-color, #fff);
  padding: 8px 14px;
  display: inline-block;
  border-radius: 50px;
  font-size: 14px;
  font-weight: 300;
  color: var(--color, #202229);}
.tag--outline{background-color: transparent;
  border: 1px solid var(--black);}
.tag--outline:hover{border-color: var(--blue);}
.tag:not(.tag--no-hover):focus,.tag:not(.tag--no-hover):hover{background-color: var(--blue);
  color: var(--white);}
.social{margin: 0;
  padding: 0;
  list-style: none;}
.social__link{width: 30px;
  height: 30px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #121212;}
.social__link--telegram{background-color: #08c;}
.social__link--vk{background-color: #07f;}
.social__link--youtube{background-color: red;}
.social__link svg{width: 16px;
  height: 16px;
  fill: var(--white);}
.social__link:focus,.social__link:hover{background-color: var(--white);}
.social__link:focus svg,.social__link:hover svg{fill: var(--blue);}
.tab__content--active{display: block;}
.card{background-color: var(--bgcolor, #ffe6d8);
  padding: 36px 26px;
  border-radius: 30px;
  position: relative;
  overflow: hidden;
  min-height: 284px;}
.card__bg{position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;}
.card__inner{width: 100%;
  display: flex;
  align-items: flex-start;
  position: relative;
  height: 100%;
  z-index: 2;}
.card__info{display: flex;
  flex-direction: column;
  row-gap: 16px;
  width: 100%;
  height: 100%;}
.card__info-heading{display: flex;
  flex-direction: column;
  row-gap: 16px;}
.card__title{font-size: 22px;
  font-weight: 600;
  line-height: 120%;}
.card__title--big{font-size: 32px;
  max-width: 502px;}
.card__tags{display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 16px;
  max-width: 314px;}
.card__tag{padding: 14px 16px;
  font-size: 17px;
  font-weight: 500;
  background-color: var(--bg-color, #d2ecff);
  color: var(--black);}
.card--has-tags .card__info-inner{display: flex;
  justify-content: space-between;}
.card--white{color: var(--white);}
.slider-nav{display: flex;
  align-items: center;
  -moz-column-gap: 50px;
  column-gap: 50px;}
.slider-nav svg{fill: transparent;
  stroke: var(--black);
  stroke-width: 1px;}
.slider-nav__button{width: 46px;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;}
.slider-nav__button--prev{transform: rotate(-180deg);}
.slider-nav__button.swiper-button-disabled{cursor: inherit;
  pointer-events: none;}
.slider-nav__button.swiper-button-disabled svg{stroke: #a6acb9;}
.slider-nav__button:focus svg,.slider-nav__button:hover svg{stroke: var(--blue);}
.quote{background-color: var(--white);
  border-radius: 10px;
  margin: 0;
  padding: 10px;
  display: flex;
  flex-direction: column;
  row-gap: 10px;}
.quote__text{font-size: 18px;
  line-height: 30px;}
.quote__author{text-align: right;
  color: var(--blue);
  font-size: 14px;
  font-weight: 500;
  font-style: italic;}
.video{position: relative;
  overflow: hidden;
  display: flex;}
.video::before{content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  background-color: rgba(32, 34, 41, 0.3);
  transition: 0.3s;
  opacity: 0;}
.video__preview{width: 100%;
  transition: 0.3s;}
.video__preview-img{width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;}
.video__play{position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80px;
  height: 80px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(32, 34, 41, 0.3);
  z-index: 3;
  transition: 0.3s;}
.video__play svg{width: 22px;
  height: 22px;
  fill: var(--white);
  position: relative;
  left: 1px;
  top: 1px;}
.video:focus .video__play,.video:hover .video__play{background-color: var(--blue);}
.video:focus .video__play svg,.video:hover .video__play svg{fill: var(--white);}
.video:focus::before,.video:hover::before{opacity: 1;}
.feature{-webkit-backdrop-filter: blur(24px);
  backdrop-filter: blur(24px);
  box-shadow: 0 24px 32px 0 rgba(50, 50, 71, 0.08);
  background: rgba(255, 255, 255, 0.8);
  padding: 20px;
  display: flex;
  flex-direction: column;
  row-gap: clamp(0.5rem, 0.401rem + 0.41vw, 0.75rem);
  border-radius: 16px;}
.feature__icon{display: inline-block;
  width: clamp(1.5rem, 1.252rem + 1.02vw, 2.125rem);
  height: clamp(1.5rem, 1.252rem + 1.02vw, 2.125rem);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;}
.feature__title{font-size: clamp(1rem, 0.901rem + 0.41vw, 1.25rem);
  font-weight: 600;}
.feature__description{font-size: 14px;
  color: var(--gray);}
.result{display: flex;
  flex-direction: column;
  padding: 36px 26px 26px;
  background-color: #bbf7d0;
  border-radius: 30px;
  position: relative;
  overflow: hidden;}
.result svg{position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;}
.result__inner{position: relative;}
.result__number{display: block;
  margin-bottom: 22px;
  font-size: 52px;
  font-weight: 700;}
.result__descr{margin-top: 10px;
  max-width: 180px;}
.result--blue-sky{background-color: #b9f6ff;}
.result--blue{background-color: #cddeff;}
.course-card{border-radius: 30px;
  padding: 30px 20px 20px;
  color: var(--white);
  height: 400px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  overflow: hidden;
  position: relative;
  transition: 0.3s;}
.course-card::before{content: "";
  position: absolute;
  background-color: #4f3dc5;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  mix-blend-mode: screen;}
.course-card__inner{position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  height: 100%;}
.course-card__header{padding-bottom: 50px;
  position: relative;}
.course-card__header::after{content: "";
  position: absolute;
  width: 49px;
  height: 1px;
  background-color: var(--white);
  left: 0;
  bottom: 28px;}
.course-card__title{font-size: 22px;
  font-weight: 600;
  position: relative;}
.course-card__title::before{content: "";
  position: absolute;
  background: linear-gradient(90deg, #fff 0, rgba(255, 255, 255, 0) 100%);
  opacity: 0.36;
  width: 100%;
  height: 150%;
  top: 50%;
  left: 0;
  transform: translate(-20px, -50%);}
.course-card__description{font-size: 14px;
  font-weight: 500;
  max-width: 200px;}
.course-card__link{border-radius: 50px;
  background-color: var(--white);
  color: var(--black);
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: auto;
  width: 100%;
  max-width: 40px;
  padding: 0 13px;
  height: 40px;
  font-size: 0;
  display: inline-flex;
  position: relative;
  white-space: nowrap;
  overflow: hidden;
  margin-left: auto;}
.course-card__link span{font-size: 15px;
  font-weight: 500;
  display: inline-block;
  margin-right: 10px;
  opacity: 0;}
.course-card__link svg{position: absolute;
  right: 0;
  top: 50%;
  transform: translate(-50%, -50%);}
.course-card__link:hover{color: var(--black);
  max-width: 220px;}
.course-card__link:hover span{opacity: 1;}
.course-card--green::before{background-color: #0094a8;}
.course-card--blue::before{background-color: #0075ff;}
.course-card--black::before{background-color: #202229;}
.course-card:hover{box-shadow: 0 32px 40px 0 rgba(50, 50, 71, 0.1),
    0 20px 20px 0 rgba(50, 50, 71, 0.1);}
.case-card{position: relative;}
.case-card::before{content: "";
  position: absolute;
  width: 101px;
  height: 48px;
  background-color: #e3e8ff;
  top: 21px;
  right: 30px;
  border-radius: 30px;
  transition: 0.3s;}
.case-card__inner{height: 100%;
  padding: 18px 13px 51px;
  border-radius: 30px;
  background-color: #f3f5ff;
  -webkit-clip-path: polygon(
    100% 91.477%,
    100% 91.477%,
    99.875% 92.86%,
    99.511% 94.171%,
    98.93% 95.394%,
    98.151% 96.511%,
    97.193% 97.504%,
    96.076% 98.356%,
    94.82% 99.049%,
    93.445% 99.566%,
    91.97% 99.888%,
    90.415% 100%,
    9.585% 100%,
    9.585% 100%,
    8.03% 99.888%,
    6.555% 99.566%,
    5.18% 99.049%,
    3.924% 98.356%,
    2.807% 97.504%,
    1.849% 96.511%,
    1.07% 95.394%,
    0.489% 94.171%,
    0.125% 92.86%,
    0 91.477%,
    0 8.523%,
    0 8.523%,
    0.125% 7.14%,
    0.489% 5.829%,
    1.07% 4.606%,
    1.849% 3.489%,
    2.807% 2.496%,
    3.924% 1.644%,
    5.18% 0.951%,
    6.555% 0.434%,
    8.03% 0.112%,
    9.585% 0,
    52.513% 0,
    52.513% 0,
    53.255% 0.026%,
    53.989% 0.102%,
    54.711% 0.227%,
    55.418% 0.401%,
    56.107% 0.622%,
    56.775% 0.889%,
    57.419% 1.201%,
    58.036% 1.557%,
    58.623% 1.956%,
    59.176% 2.397%,
    65.824% 8.114%,
    65.824% 8.114%,
    66.377% 8.555%,
    66.964% 8.954%,
    67.581% 9.31%,
    68.225% 9.622%,
    68.893% 9.889%,
    69.582% 10.11%,
    70.289% 10.284%,
    71.011% 10.41%,
    71.745% 10.486%,
    72.488% 10.511%,
    90.415% 10.511%,
    90.415% 10.511%,
    91.97% 10.623%,
    93.445% 10.946%,
    94.82% 11.463%,
    96.076% 12.156%,
    97.193% 13.008%,
    98.151% 14.001%,
    98.93% 15.117%,
    99.511% 16.34%,
    99.875% 17.652%,
    100% 19.034%,
    100% 91.477%
  );
  clip-path: polygon(
    100% 91.477%,
    100% 91.477%,
    99.875% 92.86%,
    99.511% 94.171%,
    98.93% 95.394%,
    98.151% 96.511%,
    97.193% 97.504%,
    96.076% 98.356%,
    94.82% 99.049%,
    93.445% 99.566%,
    91.97% 99.888%,
    90.415% 100%,
    9.585% 100%,
    9.585% 100%,
    8.03% 99.888%,
    6.555% 99.566%,
    5.18% 99.049%,
    3.924% 98.356%,
    2.807% 97.504%,
    1.849% 96.511%,
    1.07% 95.394%,
    0.489% 94.171%,
    0.125% 92.86%,
    0 91.477%,
    0 8.523%,
    0 8.523%,
    0.125% 7.14%,
    0.489% 5.829%,
    1.07% 4.606%,
    1.849% 3.489%,
    2.807% 2.496%,
    3.924% 1.644%,
    5.18% 0.951%,
    6.555% 0.434%,
    8.03% 0.112%,
    9.585% 0,
    52.513% 0,
    52.513% 0,
    53.255% 0.026%,
    53.989% 0.102%,
    54.711% 0.227%,
    55.418% 0.401%,
    56.107% 0.622%,
    56.775% 0.889%,
    57.419% 1.201%,
    58.036% 1.557%,
    58.623% 1.956%,
    59.176% 2.397%,
    65.824% 8.114%,
    65.824% 8.114%,
    66.377% 8.555%,
    66.964% 8.954%,
    67.581% 9.31%,
    68.225% 9.622%,
    68.893% 9.889%,
    69.582% 10.11%,
    70.289% 10.284%,
    71.011% 10.41%,
    71.745% 10.486%,
    72.488% 10.511%,
    90.415% 10.511%,
    90.415% 10.511%,
    91.97% 10.623%,
    93.445% 10.946%,
    94.82% 11.463%,
    96.076% 12.156%,
    97.193% 13.008%,
    98.151% 14.001%,
    98.93% 15.117%,
    99.511% 16.34%,
    99.875% 17.652%,
    100% 19.034%,
    100% 91.477%
  );
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  row-gap: 12px;
  transition: 0.3s;}
.case-card__number{font-size: 18px;
  color: var(--white);
  font-weight: 600;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;}
.case-card__img{border-radius: 20px;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 165px;}
.case-card__info{display: flex;
  flex-direction: column;
  row-gap: 6px;}
.case-card__title{font-size: 18px;
  font-weight: 600;}
.case-card__description{font-size: 14px;
  color: var(--gray);
  max-width: 250px;}
.case-card__arrow{position: absolute;
  background-color: var(--white);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  width: 50px;
  height: 50px;
  bottom: -20px;
  right: -10px;
  opacity: 0;
  z-index: 3;
  visibility: hidden;
  transition: 0.3s;}
.case-card:hover::before{background-color: #004ba4;}
.case-card:hover .case-card__inner{box-shadow: 0 16px 24px 0 rgba(50, 50, 71, 0.08),
    0 12px 12px 0 rgba(50, 50, 71, 0.08);
  background-color: var(--blue);
  color: var(--white);}
.case-card:hover .case-card__number{opacity: 1;
  visibility: visible;}
.case-card:hover .case-card__description{color: inherit;}
.case-card:hover .case-card__arrow{opacity: 1;
  visibility: visible;}
.load-more{display: flex;
  justify-content: center;}
.section-wrap{position: relative;
  overflow: hidden;}
.section-wrap__inner{position: relative;}
.decoration{position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: contain;}
.decoration--circle{background-image: url(/assets/templates/img/bg/circle.png);}
.decoration--circle-biggest{width: clamp(29.75rem, -25.607rem + 89.29vw, 54.75rem);
  height: clamp(29.75rem, -25.607rem + 89.29vw, 54.75rem);
  top: 10%;
  left: -22vw;}
.view-button{width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  border: 1px solid transparent;}
.view-button--active{background-color: var(--white);}
.view-button--active svg{fill: var(--blue);}
.view-button:focus{border-color: var(--blue);}
.view-button:focus svg,.view-button:hover svg{fill: var(--blue);}
.info-block{display: flex;
  flex-direction: column;
  row-gap: 12px;
  background-color: #f3f4f7;
  border-radius: 8px;
  padding: 16px;}
.info-block__icon{display: inline-block;
  width: 24px;
  height: 24px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  flex-shrink: 0;}
.info-block__title{display: flex;
  align-items: center;
  -moz-column-gap: 8px;
  column-gap: 8px;
  font-size: 20px;
  font-weight: 300;}
.info-block__title svg{fill: var(--blue);}
.info-block__bottom{display: flex;
  align-items: center;
  justify-content: space-between;
  -moz-column-gap: 10px;
  column-gap: 10px;}
.info-block__subtitle{font-size: clamp(1.125rem, 0.962rem + 0.67vw, 1.563rem);
  line-height: 130%;}
.info-block__link{width: 100%;
  max-width: clamp(8.625rem, 7.975rem + 2.67vw, 10.375rem);
  height: 38px;
  background-color: transparent;}
.filter-toggle{width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  border: 1px solid transparent;
  background-color: var(--gray-light);
  flex-shrink: 0;}
.filter-toggle:hover{background-color: var(--blue);}
.filter-toggle:hover svg{fill: var(--white);}
.filter-form{display: flex;
  flex-direction: column;
  row-gap: 26px;}
.filter-form__action{display: flex;
  align-items: center;
  justify-content: center;
  flex-grow: 1;
  height: 44px;}
.filter-form__close{color: #a6acb9;
  font-size: 16px;
  position: absolute;
  right: 0;
  top: 79%;
  transform: translate(0, -50%);}
.filter-form__item{display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  row-gap: 16px;}
.filter-form__field--hidden:not(.filter-form__field--show){display: none;}
.filter-form__toggle-items{text-align: left;
  color: var(--blue);
  font-size: 14px;
  display: flex;
  align-items: center;
  -moz-column-gap: 8px;
  column-gap: 8px;}
.filter-form__toggle-items svg{width: 10px;
  height: 10px;}
.filter-form__toggle-items:hover{text-decoration: underline;}
.search-form{position: relative;
  width: 100%;
  max-width: 424px;}
.range{position: relative;
  width: 100%;
  max-width: 240px;}
.range__track{width: 100%;
  height: 1px;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  border-radius: 5px;
  background: linear-gradient(
    to right,
    #dadae5 30%,
    #3264fe 30%,
    #3264fe 70%,
    #dadae5 70%
  );}
.select{position: relative;}
.select select{display: none;}
.select__current{display: flex;
  align-items: center;
  cursor: pointer;
  border: 1px solid #d6d6d6;
  border-radius: 50px;
  padding: 8px 15px;
  font-size: 14px;
  white-space: nowrap;
  transition: 0.3s;}
.select__list{padding: 20px;
  margin: 0;
  list-style: none;
  position: absolute;
  z-index: 3;
  top: 105%;
  right: 0;
  background-color: var(--white);
  display: flex;
  flex-direction: column;
  row-gap: 15px;
  box-shadow: 1px 5px 20px -5px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  min-width: 220px;
  visibility: hidden;
  opacity: 0;
  transition: 0.3s;}
.select__item{cursor: pointer;}
.select__item--current,.select__item:hover{color: var(--blue);}
.select--active .select__current{background-color: var(--blue);
  color: var(--white);
  border-color: var(--white);}
.select--active .select__current::after{filter: invert(1);}
.select--active .select__list{opacity: 1;
  visibility: visible;}
.header{padding: 26px 0;
  margin-bottom: clamp(1.875rem, 1.55rem + 1.33vw, 2.75rem);}
.header__nav-item--has-children svg{fill: transparent;
  stroke: var(--black);
  transform: rotate(90deg);
  margin-left: 8px;
  position: relative;
  top: 1px;}
.header__nav-item--has-children:hover .header__nav-item-toggle svg{stroke: var(--blue);}
.intro{position: relative;
  padding-top: 160px;
  min-height: 830px;
  background-image: url(/assets/templates/img/bg/intro-bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
  background-color: #f3f5ff;}
.intro__inner{display: flex;
  -moz-column-gap: 100px;
  column-gap: 100px;}
.intro__info{display: flex;
  flex-direction: column;
  row-gap: 30px;
  max-width: clamp(35rem, 27.116rem + 12.72vw, 42.375rem);
  flex-shrink: 0;
  width: 100%;}
.intro__title{margin: 0;
  font-weight: 500;
  font-size: clamp(2.375rem, 1.573rem + 1.29vw, 3.125rem);
  line-height: 104%;}
.intro__title span{color: var(--sky-blue);}
.intro__title span.blue{color: var(--blue);}
.intro__subtitle{font-size: clamp(1.25rem, 1.002rem + 1.02vw, 1.875rem);
  line-height: 130%;
  color: var(--gray);}
.intro__features{display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: 26px;
  column-gap: 26px;
  row-gap: 10px;}
.intro__link{flex-shrink: 0;
  padding: 0 16px;
  justify-content: center;
  width: 100%;
  max-width: 360px;}
.intro__link--262{max-width: 262px;}
.intro__slider{margin-left: 10px;
  overflow: visible;}
.intro__slide{max-width: clamp(18.75rem, 12.002rem + 10.88vw, 25.063rem);
  height: clamp(25rem, 17.784rem + 11.64vw, 31.75rem);
  border-radius: 20px;
  overflow: hidden;
  transition: 0.3s;}
.intro__slide.swiper-slide-active{height: clamp(28.313rem, 18.291rem + 16.16vw, 37.688rem);}
.intro--inner .intro__inner{-moz-column-gap: clamp(1.875rem, -7.813rem + 15.63vw, 6.25rem);
  column-gap: clamp(1.875rem, -7.813rem + 15.63vw, 6.25rem);}
.intro--inner .intro__info{margin-left: unset;
  max-width: 61%;
  position: relative;
  z-index: 2;}
.intro.intro-slider .intro__right{margin-left: -20px;
  padding-left: 20px;
  -webkit-clip-path: inset(-100vw -100vw -100vw 0);
  clip-path: inset(-100vw -100vw -100vw 0);}
.intro.v2 .intro__inner{display: grid;
  grid-template-columns: 1fr 445px;
  -moz-column-gap: 35px;
  column-gap: 35px;}
.intro.v2 .intro__info{max-width: unset;}
.intro__img{position: absolute;
  right: 0;
  max-width: 783px;}
.cases__blocks{display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;}
.cases__card--colspan{grid-column: span 2;}
.cases__more{margin-top: 28px;}
.cases__more-link{border-radius: 10px;
  text-align: center;
  padding: 18px 15px;
  font-size: 20px;
  font-weight: 500;
  background-color: #e1f8ff;
  display: block;
  width: 100%;}
.cases__item .case-card__inner{padding-bottom: 32px;}
.navigation{background-color: var(--gray-light);
  padding: 40px 0;}
.navigation__inner{display: flex;
  -moz-column-gap: 48px;
  column-gap: 48px;}
.navigation__item-title{margin-bottom: 32px;
  font-size: 18px;
  font-weight: 500;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--black);}
.navigation__item:first-child{margin-right: auto;}
.navigation__list{margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  row-gap: 16px;}
.navigation__list-link{display: inline-block;}
.events{background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDkyIiBoZWlnaHQ9Ijc2NSIgdmlld0JveD0iMCAwIDQ5MiA3NjUiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGZpbHRlcj0idXJsKCNmaWx0ZXIwX2ZfMzgwXzEzNjQpIj4KPHBhdGggZD0iTS0yOTYuMjg1IDYyMS44MjVDLTMzNS40ODUgNDk3LjU4IC0xMjguMzM0IDMyMS42NiAtMTkuODU3NyAyNDkuMjMxQzU1LjMyMDggMTQyLjE3OCAyOTYuMzE3IDc3Ljk0NSAyNzYuNzUzIDE1MC4xMzJDMjU3LjE5IDIyMi4zMTkgMzY1Ljk2NSAyNzYuODE3IDMzMC45OSA0MTQuMjI3QzI5Ni4wMTUgNTUxLjYzNyAyMjguNTQ2IDU5Ni41ODkgNjUuNDM3NSA2NDEuNTc1Qy05Ny42NzA1IDY4Ni41NjIgLTI0Ny4yODQgNzc3LjEzMiAtMjk2LjI4NSA2MjEuODI1WiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyXzM4MF8xMzY0KSIgZmlsbC1vcGFjaXR5PSIwLjI4Ii8+CjwvZz4KPGRlZnM+CjxmaWx0ZXIgaWQ9ImZpbHRlcjBfZl8zODBfMTM2NCIgeD0iLTQ1NC43NTMiIHk9Ii0zNC4xNDA1IiB3aWR0aD0iOTQ2LjMyNiIgaGVpZ2h0PSI4OTYuNzI4IiBmaWx0ZXJVbml0cz0idXNlclNwYWNlT25Vc2UiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiI+CjxmZUZsb29kIGZsb29kLW9wYWNpdHk9IjAiIHJlc3VsdD0iQmFja2dyb3VuZEltYWdlRml4Ii8+CjxmZUJsZW5kIG1vZGU9Im5vcm1hbCIgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0iQmFja2dyb3VuZEltYWdlRml4IiByZXN1bHQ9InNoYXBlIi8+CjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249Ijc2LjgiIHJlc3VsdD0iZWZmZWN0MV9mb3JlZ3JvdW5kQmx1cl8zODBfMTM2NCIvPgo8L2ZpbHRlcj4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyXzM4MF8xMzY0IiB4MT0iMzQyLjQxMiIgeTE9IjI5Ny41NzciIHgyPSItMzE5LjY3NSIgeTI9IjU2NS45MzgiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iIzk1RjJGRiIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNEMDgzRjQiLz4KPC9saW5lYXJHcmFkaWVudD4KPC9kZWZzPgo8L3N2Zz4K);
  background-repeat: no-repeat;
  background-position: center left;
  overflow: hidden;}
.events__view-button{width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  border: 1px solid transparent;}
.events__slider{overflow: visible;}
.events__slider--vertical{overflow: clip;
  padding-right: 14px;}
.events__slider--vertical .swiper-wrapper{display: flex;
  flex-direction: column;
  row-gap: 8px;
  max-height: 437px;
  overflow: auto;
  padding-right: 14px;}
.events__slider--vertical .swiper-wrapper::-webkit-scrollbar{width: 7px;}
.events__slider--vertical .swiper-wrapper::-webkit-scrollbar-thumb{background: var(--blue);
  border-radius: 36px;}
.events__slider--vertical .swiper-wrapper::-webkit-scrollbar-thumb:hover{background: var(--gray);}
.events__slider--vertical .swiper-slide{max-width: 100%;}
.reports__card-slider{position: relative;}
.reports__card-slider-pagination{position: absolute;
  margin-bottom: 12px;
  z-index: 2;}
.terra{overflow: hidden;
  position: relative;}
.mission{background-image: url(/assets/templates/img/bg/mission-bg.png);
  background-repeat: no-repeat;
  background-position: center right;}
.mission__inner{display: grid;
  grid-template-columns: 1fr minmax(200px, 729px);
  gap: 44px;}
.mission__info{display: flex;
  flex-direction: column;
  row-gap: 30px;}
.mission__content{color: var(--gray);
  font-size: 18px;
  line-height: 30px;}
.mission__content p:first-child{margin-top: 0;}
.mission__link{padding: 0 16px;}
.mission__video{width: 100%;
  height: 452px;
  border-radius: 30px;}
.stories__youtube{display: flex;
  align-items: center;
  -moz-column-gap: 10px;
  column-gap: 10px;
  color: var(--gray);
  font-weight: 500;
  font-size: 14px;}
.stories .swiper-wrapper{padding: 50px;
  margin: -50px;}
.stories__slide{height: auto;}
.faq__items{display: flex;
  flex-direction: column;
  row-gap: 16px;}
.faq__item-title{display: flex;
  position: relative;
  width: 100%;
  padding: 16px 30px 16px 0;
  font-size: 22px;
  font-weight: 500;
  text-align: left;}
.faq__item-title:hover{color: var(--blue);}
.faq__item-icon{display: flex;
  align-items: center;
  justify-content: center;
  width: 13px;
  height: 24px;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(-50%, -50%);}
.faq__item-icon::after,.faq__item-icon::before{content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  border-radius: 5px;
  background-color: var(--gray);
  transition: 0.3s;}
.faq__item-icon::after{transform: rotate(90deg);}
.faq__item-content{display: none;
  flex-direction: column;
  border-top: 1px solid #d6d6d6;
  color: var(--gray);
  padding-top: 24px;
  padding-bottom: 16px;
  line-height: 140%;}
.faq__item-content p:first-child{margin-top: 0;}
.faq__item--active .faq__item-icon::after{transform: rotate(0);}
.quiz__form{background-color: #e1f8ff;
  background-image: url(/assets/templates/img/bg/quiz-bg.png);
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: contain;
  border-radius: 30px;
  min-height: 394px;
  padding: 40px;
  position: relative;
  overflow: hidden;}
.quiz__form::before{content: "";
  position: absolute;
  width: 474px;
  height: 371px;
  background-image: url(/assets/templates/img/bg/quiz-shape.png);
  background-repeat: no-repeat;
  background-size: contain;
  left: 0;
  mix-blend-mode: color-burn;}
.quiz__dots{display: flex;
  align-items: center;
  -moz-column-gap: 14px;
  column-gap: 14px;
  position: absolute;
  right: 0;
  top: 0;}
.quiz__dot{width: 8px;
  height: 8px;
  border-radius: 50%;
  border: 1px solid var(--blue);}
.quiz__dot--active{background-color: var(--blue);}
.quiz__step{flex-direction: column;
  row-gap: 36px;
  transition: transform 0.3s;
  display: none;}
.quiz__step-button{padding-left: 16px;
  padding-right: 20px;}
.quiz__step--current{display: flex;}
.gallery__slider{max-width: 917px;
  height: 413px;
  overflow: visible;}
.gallery .swiper-wrapper{align-items: center;}
.gallery__caption{font-size: 22px;
  font-weight: 500;}
.abroad__address-item{display: flex;}
.abroad__address-tag{display: flex;
  align-items: center;}
.abroad__address-tag svg{width: 10px;
  height: 12px;
  fill: transparent;
  stroke: var(--white);
  margin-left: 10px;}
.abroad__address-tag--active{background-color: var(--blue);
  color: var(--white);}
.abroad__address-box{position: fixed;
  top: 50%;
  left: 50%;
  box-shadow: 0 16px 24px 0 rgba(50, 50, 71, 0.08),
    0 12px 12px 0 rgba(50, 50, 71, 0.08);
  background: var(--white);
  border-radius: 30px;
  padding: 26px;
  max-width: 361px;
  width: 100%;
  display: flex;
  flex-direction: column;
  row-gap: 31px;
  opacity: 0;
  visibility: hidden;
  z-index: 334;
  transform: translate(-50%, -50%) scale(0.5);
  transition: 0.3s ease-in;}
.abroad__address-box--active{opacity: 1;
  visibility: visible;
  transform: translate(-50%, -50%) scale(1);}
.abroad__address-box-close{width: 24px;
  height: 24px;}
.abroad__address-box-close svg{stroke: var(--black);
  transition: 0.3s;}
.abroad__address-box-close svg:hover{stroke: var(--blue);}
.abroad-address-overlay{position: fixed;
  left: 0;
  bottom: 0;
  top: 0;
  right: 0;
  background: rgba(18, 18, 18, 0.3);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  z-index: 333;
  transition: 0.3s;}
.terra-today__inner{grid-template-columns: 317px 1fr;}
.terra-today__header{margin-bottom: 0;}
.terra-today__grid{display: grid;
  grid-template-columns: repeat(4, 1fr);
  -moz-column-gap: clamp(1.25rem, 1.101rem + 0.61vw, 1.625rem);
  column-gap: clamp(1.25rem, 1.101rem + 0.61vw, 1.625rem);
  row-gap: clamp(1.25rem, 0.828rem + 1.73vw, 2.313rem);}
.terra-today__item{background-color: var(--gray-light);
  padding: 20px 16px;
  border-radius: 30px;
  display: flex;
  flex-direction: column;
  row-gap: 4px;}
.terra-today__item-number{font-size: clamp(2.5rem, 1.755rem + 3.05vw, 4.375rem);
  line-height: 120%;}
.terra-today__item-desc{font-size: 16px;
  line-height: 125%;
  color: var(--gray);
  opacity: 0.6;}
.terra-today__item--rowspan{grid-row: span 2;}
.terra-today__item--stretch{width: 306px;}
.terra-today__join-mobile{display: none;}
.team__scrollbar{height: 4.3px;
  width: 100%;
  background-color: #d6d6d6;
  border-radius: 34px;
  margin-top: 24px;}
.team__scrollbar .swiper-scrollbar-drag{background-color: var(--blue);}
.ecosystem__slider{padding: 80px 0;
  margin: -80px 0;}
.case-cats__list{display: flex;
  flex-wrap: wrap;
  gap: 12px;
  position: relative;
  max-height: 126px;
  overflow: hidden;}
.case-cats__list::before{content: "";
  position: absolute;
  width: 100%;
  height: 60px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0, #fff 100%);
  bottom: -5px;}
.case-cats__list-expand{font-weight: 500;
  color: var(--blue);}
.case-cats__list-expand svg{fill: transparent;
  stroke: var(--blue);
  transform: rotate(90deg);
  position: relative;
  top: 1px;
  margin-left: 4px;
  width: 10px;
  height: 10px;}
.case-cats__list-expand:focus svg,.case-cats__list-expand:hover svg{stroke: var(--white);}
.case-cats__list--expanded{max-height: 100% !important;}
.case-cats__list--expanded::before{visibility: hidden;}
.join{padding-top: 150px;}
.page__header{display: flex;
  flex-direction: column;
  margin-bottom: clamp(1.875rem, 1.411rem + 1.9vw, 3.125rem);}
.page__header--center{text-align: center;
  align-items: center;}
.page__title{margin: 0;
  font-size: clamp(1.688rem, 1.154rem + 2.19vw, 3.125rem);
  font-weight: 500;}
.article{display: flex;
  flex-direction: column;
  -moz-column-gap: 30px;
  column-gap: 30px;
  row-gap: 20px;}
.telegram{margin-top: clamp(1.5rem, 0.943rem + 2.29vw, 3rem);}
.contacts__inner{display: grid;
  grid-template-columns: 1fr 545px;
  -moz-column-gap: 40px;
  column-gap: 40px;
  row-gap: 32px;
  padding-top: 10px;}
.contacts__left{display: flex;
  flex-direction: column;
  row-gap: 32px;}
.contacts__items{display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;}
.contacts__features{display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;}
.contacts__feature{min-height: 211px;}
.contacts__feature .result__number{font-size: 32px;
  margin-bottom: 16px;}
.contacts__slider{height: clamp(22.188rem, 17.754rem + 18.19vw, 34.125rem);}
.contacts__slider-pagination{position: absolute;
  top: unset !important;
  bottom: 24px !important;
  left: 50% !important;
  transform: translate(-50%, -50%);
  z-index: 22;}
.contacts__map-inner{display: grid;
  grid-template-columns: 545px 1fr;
  -moz-column-gap: 40px;
  column-gap: 40px;
  row-gap: 20px;
  align-items: center;}
.contacts__map-info{display: flex;
  flex-direction: column;}
.contacts__map-address{display: flex;
  flex-direction: column;
  font-style: normal;
  row-gap: 16px;
  color: var(--dark);
  margin-bottom: 24px;}
.contacts__map-address-title{display: flex;
  align-items: center;
  -moz-column-gap: 8px;
  column-gap: 8px;
  font-size: 20px;
  font-weight: 500;}
.contacts__map-description{color: var(--dark);
  line-height: 140%;}
.contacts__map-description p:first-of-type{margin-top: 0;}
.contacts__map-iframe iframe{border-radius: 24px;
  border: 0;
  width: 100%;
  height: 245px;}
.contacts__join-decoration--left{left: 3vw;
  top: unset;
  bottom: -46%;
  width: clamp(24.313rem, -10.376rem + 72.36vw, 54.75rem);
  height: clamp(24.313rem, -10.376rem + 72.36vw, 54.75rem);}
.contacts__join-decoration--right{left: unset;
  right: -22vw;
  top: 0;}
.contacts__join-inner{display: grid;
  grid-template-columns: 1fr 407px;
  gap: 40px;}
.contacts__social{display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: clamp(1.625rem, -0.313rem + 3.13vw, 2.5rem);}
.contacts__social-link{width: 100px;
  height: 100px;
  border: 1px solid transparent;}
.contacts__social-link svg{width: 50%;
  height: 50%;}
.contacts__social-link:focus,.contacts__social-link:hover{border-color: var(--blue);}
.steps{overflow: hidden;}
.params{margin: 0;
  padding: 0;
  list-style: none;}
.course__program-items{display: flex;
  flex-direction: column;
  row-gap: clamp(1.25rem, 0.786rem + 1.9vw, 2.5rem);}
.course__program-item-header{display: flex;
  justify-content: space-between;
  text-align: left;
  width: 100%;
  align-items: center;
  -moz-column-gap: 10px;
  column-gap: 10px;}
.course__program-item-content{padding-top: 32px;
  display: none;}
.mentor-card{display: flex;
  flex-direction: column;
  row-gap: 24px;}
.mentor-card__image{width: 100%;
  height: clamp(13.688rem, 10.646rem + 12.48vw, 21.875rem);
  -o-object-fit: cover;
  object-fit: cover;}
.mentor-card__info{display: flex;
  flex-direction: column;
  row-gap: 16px;}
.mentor-card__name{font-size: 20px;
  font-weight: 500;}
.mentor-card__params{display: flex;
  flex-direction: column;
  row-gap: 8px;}
.mentor-card__habits{display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: clamp(0.313rem, 0.15rem + 0.67vw, 0.75rem);}
.mentor-card__specs-list{display: flex;
  flex-direction: column;
  row-gap: 16px;}
.mentor-card__description{display: flex;
  flex-direction: column;
  row-gap: 10px;
  font-size: 16px;
  font-weight: 300;}
.mentor-card__description p{margin: 0;}
.mentor-card__links{display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;}
.mentor-card--on-modal{display: none;}
.list{overflow: hidden;}
.list__term{position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  -moz-column-gap: 10px;
  column-gap: 10px;
  white-space: nowrap;}
.list__term:not(.list__term--reset)::after{content: "";
  width: 10px;
  height: 10px;
  display: inline-block;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAiIGhlaWdodD0iMTAiIHZpZXdCb3g9IjAgMCAxMCAxMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEgOUw5IDFNMSAxTDkgOSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  position: relative;
  top: 1px;
  transition: 0.3s;}
.list__term:not(.list__term--reset):hover::after{filter: invert(1);}
.list__load-more{max-width: 262px;
  width: 100%;}
.footer{background-color: var(--black);
  padding-top: 37px;
  color: var(--white);
  border-radius: 32px 32px 0 0;}
.footer__top{margin-bottom: 40px;}
.footer__logo{max-width: 146px;
  width: 100%;}
.footer__social{display: flex;
  align-items: center;
  -moz-column-gap: 40px;
  column-gap: 40px;
  margin-top: 57px;}
.footer__bottom{display: flex;
  -moz-column-gap: 20px;
  column-gap: 20px;
  justify-content: space-between;
  padding-bottom: 50px;}
.footer__item{width: 100%;}
.footer__item--description{max-width: 374px;}
.footer__item--contacts{max-width: 330px;
  display: flex;
  flex-direction: column;
  row-gap: 21px;}
.footer__item--subscribe{max-width: 360px;}
.footer__description{opacity: 0.6;}
.footer__contacts{display: flex;
  flex-direction: column;
  row-gap: 21px;
  font-size: 14px;}
.footer a.footer__contact{color: var(--white);}
.footer a.footer__contact:hover{color: var(--blue);}
.footer__contact{display: flex;
  align-items: center;
  -moz-column-gap: 12px;
  column-gap: 12px;}
.footer__contact svg{flex-shrink: 0;
  fill: var(--white);}
.footer__contact--address{align-items: flex-start;}
.footer__app,.footer__apps{display: flex;
  align-items: center;
  -moz-column-gap: 21px;
  column-gap: 21px;}
.footer__app-item{width: 30px;
  height: 30px;
  display: inline-block;
  border-radius: 8px;
  background-color: var(--white);
  display: flex;
  align-items: center;
  justify-content: center;}
.footer__app-item--appstore{background-color: #1ca5f9;}
.footer__app-item:hover{opacity: 0.7;}
.footer__app-link{color: var(--white);}
.footer__app-link:hover{color: var(--blue);}
.footer__bot-link{font-family: EuclidCircular, sans-serif;
  font-weight: 400;
  height: 40px;
  padding: 0 24px;}
.footer__bot-link svg{stroke: none;}
.footer__bot-link:hover{color: var(--white);}
.footer__subscribe-title{opacity: 0.6;
  max-width: 300px;
  margin-bottom: 29px;}
.footer__subscribe-form{display: flex;
  flex-direction: column;
  row-gap: 20px;}
.footer__subscribe-field{height: 62px;
  background-color: var(--white);
  padding: 0 16px;
  width: 100%;
  border: none;
  border-radius: 12px;
  outline: 0;}
.footer__subscribe-submit{justify-content: center;
  width: 100%;
  height: 54px;}
.footer__copyright{padding: 22px 0;
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  border-top: 1px solid rgba(255, 255, 255, 0.2);}
.footer__copyright-link{text-transform: uppercase;
  color: var(--white);
  opacity: 0.6;}
.footer__copyright-link:hover{opacity: 1;}
.modal{position: fixed;
  left: 0;
  bottom: 0;
  top: 0;
  right: 0;
  background: rgba(18, 18, 18, 0.3);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 15px;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;}
.modal__close{top: 15px;
  right: 15px;
  position: absolute;
  font-size: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  z-index: 2;}
.modal__close::after,.modal__close::before{content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  border-radius: 10px;
  background-color: var(--black);}
.modal__close::before{transform: rotate(-45deg);}
.modal__close::after{transform: rotate(45deg);}
.modal__close:focus::after,.modal__close:focus::before,.modal__close:hover::after,.modal__close:hover::before{background-color: var(--blue);}
.modal--active{opacity: 1;
  visibility: visible;}
.mentor-preview__header{display: flex;
  align-items: center;
  gap: 16px;}
.mentor-preview__body{display: flex;
  flex-direction: column;
  gap: 16px;
  height: 100%;}
.mentor-preview__info{padding: 24px;
  display: flex;
  flex-direction: column;
  height: 100%;
  gap: 16px;}
.mentor-preview .mentor-card__name{flex-shrink: 0;}
.mentor-preview .modal__close{top: 10px;
  right: 10px;
  background-color: var(--white);
  border-radius: 50%;}
.mentor-preview .modal__close::after,.mentor-preview .modal__close::before{width: 70%;}
.mentor-preview__slider{height: 100%;}
.mentor-preview .swiper-slide{display: flex;
  height: auto;}
.mentor-preview .swiper-slide img{width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;}
.mentor-preview__slider-pagination{position: absolute;
  z-index: 2;
  margin-bottom: 15px;}
@media (max-width: 1366px){
.intro--inner:not(.v2) .intro__info{max-width: 70%;}
.intro__img:not(.small){right: -13%;}
.mission__inner{grid-template-columns: 1fr minmax(200px, 600px);}
.quiz__form{background-size: cover;
    background-position: -100% bottom;}
.terra-today__grid{grid-template-columns: repeat(3, 1fr);}
.terra-today__item--stretch{width: auto;}
.terra-today__item--rowspan{grid-area: 3/1/3/4;}
.contacts__inner{display: flex;
    flex-direction: column;}
.contacts__social{grid-template-columns: repeat(4, 1fr);}
.contacts__join-inner{grid-template-columns: repeat(2, 1fr);}
}
@media (max-width: 1170px){
.section__half{grid-template-columns: 310px 1fr;}
.cases__card--colspan,.cases__heading{grid-column: span 3;}
.mission__inner{grid-template-columns: 1fr 1fr;}
}
@media (max-width: 992px){
.hide-md{display: none;}
.terra-btn--58{height: clamp(2.75rem, 2.218rem + 2.27vw, 3.625rem);}
.section__header{margin-bottom: clamp(1.875rem, 1.115rem + 3.24vw, 3.125rem);}
.section__header-line{width: 205px;
    left: 0;}
.section__title{font-size: clamp(1.688rem, 1.346rem + 1.46vw, 2.25rem);}
.section__half{grid-template-columns: 1fr;}
.header__bottom--active{transform: translateX(0);}
.header__nav-item{width: 100%;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;}
.header__nav-item-toggle{display: flex;
    justify-content: center;
    align-items: center;
    width: 32px;
    height: 32px;
    position: absolute;
    right: 10px;
    top: -8px;
    z-index: 222;}
.header__nav-item-toggle svg{position: relative;
    right: 5px;}
.header__nav-item.nav__item--active .header__nav-item-toggle svg{transform: rotate(-90deg);}
.video__play{width: 60px;
    height: 60px;}
.quote__text{font-size: 16px;}
.intro{padding-top: 130px;
    padding-bottom: 50px;
    min-height: unset;
    height: auto;}
.intro__info{max-width: 100%;}
.intro--inner:not(.v2) .intro__info{max-width: 100%;}
.intro.v2 .intro__inner{grid-template-columns: 1fr;}
.intro.v2 .intro__info{display: grid;
    grid-template-columns: 1fr 1fr;
    max-width: 100%;
    gap: 30px;}
.intro.v2 .intro__title{grid-column: 1/-1;}
.intro.v2 .intro__features{grid-template-columns: repeat(1, 1fr);}
.intro.v2 .intro__link{max-width: 100%;}
.intro.intro-slider .intro__right{-webkit-clip-path: unset;
    clip-path: unset;
    margin: 0;
    padding: 0;}
.cases__blocks{gap: 15px;}
.mission{background-position: bottom right;
    background-size: 200px;}
.mission__inner{grid-template-columns: 1fr;
    row-gap: 20px;}
.mission__content{font-size: 16px;}
.mission__video{order: -1;
    height: clamp(18.75rem, 12.976rem + 24.64vw, 28.25rem);}
.faq__items{row-gap: 10px;}
.faq__item-title{font-size: clamp(1.125rem, 0.973rem + 0.65vw, 1.375rem);}
.navigation__inner{display: grid;
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: 20px;
    column-gap: 20px;
    row-gap: 32px;}
.navigation__item-title{margin-bottom: 16px;}
.footer__bottom{display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 40px;}
.footer__item--subscribe{max-width: 100%;
    grid-column: span 2;}
.contacts__map-inner{grid-template-columns: repeat(2, 1fr);}
.filter-form{position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    background: var(--white);
    z-index: 222;
    padding: 15px;
    transform: translateX(-100%);
    opacity: 0;
    visibility: visible;
    overflow: auto;
    transition: 0.3s;}
.filter-form--active{opacity: 1;
    visibility: visible;
    transform: translateX(0);}
.mentor-preview .swiper-slide{height: 330px;}
.mentor-preview__header{flex-direction: column;
    align-items: flex-start;}
}
@media (max-width: 850px){
.section__header{row-gap: 12px;}
.section-gap{padding: 40px 0;}
.section-gap-bottom{padding-bottom: 40px;}
.hide-sm{display: none;}
.show-sm-flex{display: flex;}
.container{padding: 0 15px;}
.intro__subtitle{max-width: 500px;}
.intro__features{grid-template-columns: 1fr;}
.cases__card{grid-column: span 3;
    padding: 24px 20px;}
.cases__card.card--has-tags .card__tags{justify-content: flex-start;}
.cases__card.card--has-tags .card__tag{font-size: 16px;}
.cases__card.card--has-tags .card__info-inner{flex-direction: column;
    row-gap: 16px;}
.projects__slider{padding-right: 30px;}
.projects .swiper-wrapper{padding-left: 15px;}
.quiz__form{background-image: unset;
    min-height: 530px;
    padding: 30px;}
.quiz__dots{top: -5px;
    left: 0;
    -moz-column-gap: 10px;
    column-gap: 10px;}
.mission__link{margin-left: auto;
    margin-right: auto;}
.gallery__slider{height: clamp(15.625rem, 9.927rem + 24.31vw, 25rem);}
.gallery__caption{font-size: clamp(1rem, 0.772rem + 0.97vw, 1.375rem);
    max-width: 70%;}
.terra-today__join:not(.terra-today__join-mobile){display: none;}
.terra-today__join-mobile{display: flex;
    margin-top: 20px;
    margin-left: auto;
    margin-right: auto;}
.team__slider{padding-right: 30px;}
.team .swiper-wrapper{padding-left: 15px;}
.ecosystem__slide{max-width: 260px;}
.ecosystem__slider{padding-right: 30px;}
.ecosystem__slider-container{padding: 0;}
.ecosystem .swiper-wrapper{padding-left: 15px;}
.case-cats__list{max-height: 264px;}
.contacts__map-inner{grid-template-columns: 1fr;}
.contacts__social{max-width: 352px;
    grid-template-columns: repeat(3, 1fr);}
.contacts__social-item:last-child{grid-area: 3/2;}
.contacts__join-inner{grid-template-columns: 1fr;}
.contacts__join-decoration--left{left: -63vw;
    bottom: 2%;}
.testimonials__slider{padding-left: 15px;}
}
@media (max-width: 753px){
.intro.v2 .intro__info{grid-template-columns: 1fr;}
.navigation__item{width: 100%;}
.navigation__item:first-child,.navigation__item:last-child{grid-column: span 2;}
.contacts__features,.contacts__items{grid-template-columns: 1fr;}
.course__program-item-header{position: relative;}
.footer__top{margin-bottom: 20px;}
.footer__social{margin-top: 24px;
    -moz-column-gap: 40px;
    column-gap: 40px;
    justify-content: center;}
.footer__bottom{grid-template-columns: repeat(1, 1fr);
    row-gap: 20px;
    padding-bottom: 30px;}
.footer__item--contacts{border-top: 1px solid rgba(255, 255, 255, 0.2);
    max-width: 100%;
    padding-top: 32px;}
.footer__item--description{max-width: 100%;}
.footer__item--subscribe{grid-area: auto;}
.footer__copyright{border-top: 0;
    flex-wrap: wrap;
    row-gap: 30px;}
}
@media (max-width: 576px){
.section__header-right{-moz-column-gap: 30px;
    column-gap: 30px;}
.xs-stretch{max-width: 100%;
    width: 100%;
    justify-content: center;}
.slider-nav{-moz-column-gap: 30px;
    column-gap: 30px;}
.cases__card--colspan{min-height: 404px;}
.quiz__step-button{flex-grow: 1;
    justify-content: center;}
.stories__inner{padding: 0;}
.stories__slider{padding-right: 30px;}
.stories .swiper-wrapper{padding: 50px 0 50px 15px;
    margin: -50px 0;}
.stories__slide{max-width: 280px;}
.terra-today__grid{grid-template-columns: repeat(2, 1fr);}
.terra-today__item--rowspan{grid-area: unset;
    order: 1;
    grid-column: 1/-1;}
}
@media (max-width: 400px){
.intro{padding-top: 160px;}
}
@media (min-width: 851px){
.show-sm-flex{display: none;}
}
@media (min-width: 993px){
#nav-toggle{display: none;}
}
@media (min-width: 1920px){
.intro{max-height: 900px;}
}
.cases-card__link{color: #fff;}
.partners{display: flex;
  align-items: center;
  gap: 20px;

  overflow-x: auto;}

/* /assets/templates/css/new.css?v=30 */
/* Собрано _материалы/scripts/purge_legacy_css.py из _материалы/css-ishodniki/new.css:
   только правила, которые нужны страницам сайта. Править в исходнике. */
@font-face{font-family:"CeraPro";src:url(/assets/home/assets/onest-variable.woff2) format('woff2');font-weight:100 900;font-display:swap}
.input--blank{display: none;}
@media (max-width: 992px){
.filter-form{width: 100vw;}
}
@media (max-width: 850px){
.contacts__social-item:last-child{grid-area: auto;}
}
.popups{position: fixed;
  z-index: 999;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.45);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  top: 0;
  left: 0;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.5s ease 0s;
  -o-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
  overflow-y: hidden;}
.popups._active{opacity: 1;
  visibility: visible;}
.popups__body{min-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  overflow-y: auto;
  max-height: 800px;}
.popups__content{width: auto;
  background: #fff;
  -webkit-box-shadow: 0.4rem 0.4rem 1.4rem 0 rgba(0, 0, 0, 0.25);
  box-shadow: 0.4rem 0.4rem 1.4rem 0 rgba(0, 0, 0, 0.25);
  position: relative;
  margin: 20px 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;}
.popups__close{cursor: pointer;
  position: absolute;
  top: 10px;
  right: 25px;
  z-index: 100;}
.offers{background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
    url("/assets/templates/img/bg/modal.webp");
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
  max-width: 1200px;
  font-family: "CeraPro";
  margin: 0 auto;
  position: relative;}
.offers__content{display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  padding: 35px;}
.offers__column{-webkit-box-flex: 1;
  -ms-flex: 1 1 33.333%;
  flex: 1 1 33.333%;
  position: relative;}
.offers__column:nth-child(2){display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;}
.offers__column:nth-child(3){display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;}
.offers__title{font-family: "CeraPro";
  font-size: 40px;
  font-weight: 500;
  line-height: 100%;
  margin-bottom: 20px;
  color: #fff;}
.offers__title span{font-weight: 300;
  font-size: 26px;
  line-height: 100%;
  display: block;
  margin-top: 10px;}
.offers__list{padding-left: 20px;
  font-size: 14px;}
.offers__column ol{list-style: decimal;}
.offers__list li{margin-bottom: 10px;}
.offers__text{margin-top: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: flex-start;
  -ms-flex-align: flex-start;
  align-items: flex-start;
  font-size: 22px;
  line-height: 110%;
  gap: 30px;
  max-width: 380px;}
.offers__text svg{-webkit-box-flex: 0;
  -ms-flex: 0 0 40px;
  flex: 0 0 40px;}
.offers__column img{width: 100%;
  height: auto;}
.offers__subtitle{font-size: 32px;
  font-weight: 500;
  line-height: 110%;
  margin-bottom: 15px;}
.offers__text-bold{font-weight: 600;
  margin-bottom: 10px;}
.offers__button{margin-top: 35px;
  margin-bottom: 15px;
  background: #d8b56d;
  color: #fff;
  position: relative;
  overflow: hidden;
  font-size: 16px;
  padding: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 15px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;}
.offers .checkbox{display: flex;
  align-items: center;
  margin-bottom: 10px;
  cursor: pointer;
  position: relative;}
.offers .checkbox__input{display: none;
  position: absolute;
  opacity: 0;
  top: 50%;
  height: 0;
  margin: 0;}
.offers .checkbox__label{cursor: pointer;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;}
.offers .checkbox__label::before{-webkit-box-sizing: border-box;
  box-sizing: border-box;
  content: "";
  -ms-flex-item-align: start;
  align-self: flex-start;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 14px;
  flex: 0 0 14px;
  height: 14px;
  background-color: #f3f3f3;
  border: 1px solid #d8b56d;
  margin: 0 1rem 0 0;}
.offers .checkbox__input:checked + .checkbox__label::before{background: #d8b56d;}
.offers .checkbox__label::after{content: "";
  -webkit-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  -ms-flex-item-align: start;
  align-self: flex-start;
  position: absolute;
  top: 3px;
  left: 2px;
  background-image: url("/assets/templates/img/checks.svg");
  background-repeat: no-repeat;
  background-size: contain;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 1rem;
  flex: 0 0 1rem;
  width: 10px;
  height: 10px;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  z-index: 11;}
.offers .checkbox__input:checked + .checkbox__label::after{-webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);}
.offers .checkbox__label span{color: #fff;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 120%;}
.offers .checkbox__label a{color: #d8b56d;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 120%;
  -webkit-text-decoration-line: underline;
  text-decoration-line: underline;}
@media (max-width: 1200px){
.popups__body{margin-bottom: 120px;}
.popups__content{margin: 40px 0;
    max-height: 700px;}
.offers{max-width: 700px;
    background-position: center;}
.offers__content{-webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;}
.offers__column{-webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    width: 100%;}
.offers__column:nth-child(1){padding: 30px 0;}
.offers__column:nth-child(2){-webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
    max-width: 400px;
    margin-left: auto;
    margin-top: -200px;}
.offers__column:nth-child(3){-webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;}
.offers__title{font-size: 28px;}
.offers__text{font-size: 20px;
    gap: 10px;}
.offers__column img{width: 300px;}
.offers__subtitle{font-size: 22px;}
}
@media (max-width: 992px){
.popups__content{width: auto;}
}
@media (max-width: 768px){
.popups__body{padding: 0;
    overflow-x: hidden;}
.popups__content{max-height: 100vh;
    overflow-y: auto;
    overflow-x: hidden !important;}
.offers__column:nth-child(2){max-width: 320px;
    margin-right: -50px;}
.offers__column:nth-child(3){position: relative;
    z-index: 10;}
.offers__column img{width: 250px;}
.offers .checkbox__label span{font-size: 14px;}
}
@media (max-width: 500px){
.popups__content{margin: 0 0 40px;}
.offers__content{padding-bottom: 30px;}
.offers__column{padding-top: 50px;}
.offers__column:nth-child(2){display: none;}
.offers__column:nth-child(3){padding-top: 0;}
.offers__title{font-size: 22px;}
.offers__title span{font-size: 18px;}
.offers__text{font-size: 16px;
    max-width: 280px;}
.offers__subtitle{font-size: 20px;}
}
@media (max-width: 450px){
#popupsOffer .popups__body{align-items: center;}
#popupsOffer .popups__content{margin: 0;}
.offers__content{padding: 0 20px;
    padding-bottom: 10px;}
.offers__column:nth-child(1){padding: 30px 0 15px;}
.offers__title{font-size: 22px;
    margin-top: 15px;
    margin-bottom: 0px;}
.offers__title span{font-size: 15px;
    line-height: 130%;}
.offers__list li{font-weight: 300;
    font-size: 14px;}
.offers__text{margin-top: 0;
    font-size: 16px;
    max-width: 270px;}
.offers__text svg{-webkit-box-flex: 0;
    -ms-flex: 0 0 30px;
    flex: 0 0 30px;
    height: 30px;}
.offers__subtitle{font-size: 22px;}
.offers__text-bold{font-weight: 500;
    margin-bottom: 0;
    font-size: 14px;}
.offers__button{margin-top: 0;
    padding: 15px 10px;
    width: 100%;}
.offers .checkbox__label span{font-size: 12px;}
.offers .checkbox__label a{font-size: 12px;}
}
@media (max-width: 420px){
.offers__button{width: 100%;
    max-width: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;}
}
@media (max-width: 400px){
.offers__content{padding: 0 20px;
    padding-bottom: 10px;}
.offers__column:nth-child(1){padding: 30px 0 15px;}
.offers__title{font-size: 18px;}
.offers__title span{font-size: 14px;
    line-height: 130%;}
.offers__list li{font-weight: 300;
    font-size: 12px;}
.offers__text{margin-top: 0;
    font-size: 14px;
    max-width: 240px;}
.offers__text svg{-webkit-box-flex: 0;
    -ms-flex: 0 0 30px;
    flex: 0 0 30px;
    height: 30px;}
.offers__subtitle{font-size: 18px;}
.offers__text-bold{font-weight: 500;
    margin-bottom: 0;
    font-size: 14px;}
.offers__button{margin-top: 0;
    padding: 15px 10px;}
.offers .checkbox__label span{font-size: 12px;}
.offers .checkbox__label a{font-size: 12px;}
}
@media (max-width: 390px){
.offers__button{font-size: 14px;
    width: 100%;
    max-width: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 25px 10px;}
}
@media (max-width: 350px){
.offers__content{padding: 0 15px;}
}
.author-thumbs-swiper-wrapper > .swiper-slide{margin: 0 5px;
  width: 84px;
  height: 100px;
  cursor: pointer;}
.author-thumbs-swiper-wrapper > .swiper-slide > img{border: 2px solid #fff;
  transition-duration: 400ms;}
.author-thumbs-swiper-wrapper > .swiper-slide.swiper-slide-thumb-active > img{border: 2px solid var(--blue);}
.gallery{display: flex;
  flex-wrap: wrap;
  gap: 20px;}
.rutube-frame{display: none;
  width: 100%;
  height: 400px;
  border: none;
  border-radius: 16px;
  overflow: hidden;}
@media (min-width: 1920px){
.intro{max-height: unset;}
}
.intro{padding-bottom: 50px;}
.breadcrumb{padding: 8px 15px;
  margin-bottom: 20px;
  list-style: none;
  background-color: #ffffff;
  border-radius: 4px;}
.breadcrumb > li{display: inline-block;}
.breadcrumb > li + li:before{content: "/\00a0";
  padding: 0 5px;
  color: #cccccc;}
.breadcrumb > .active{color: #777777;}
.policy{display: flex;
  align-items: center;
  gap: 8px;}
.policy__text{font-size: 12px;
  color: #fff;}
.policy a{color: inherit;
  text-decoration: underline;}
.online{display: flex;
  align-items: flex-start;
  gap: 12px;}
.mentor-card__links{justify-content: space-between;}
.card{min-height: unset;
  height: 284px;}
@media (max-width: 768px){
.card{height: auto;}
}
.mission__video{cursor: pointer;}
.cookies-block{display: none;
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 1000;}
.cookies-block .content{background: #fff;
  position: relative;
  border-radius: 4px 4px 0 0;
  box-shadow: 0px 3.83466px 43.1399px #f1f1f1;
  padding: 25px 160px 25px 38px;}
.cookies-block .content p{font-size: 14px;
  line-height: 27px;
  margin: 0;
  color: #202229 !important;}
.cookies-block .content p a{color: #202229 !important;}
.cookies-block .content button{position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 80px;
  background: #626262;
  color: #fff;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  width: 70px;
  height: 45px;
  font-weight: 500;
  text-transform: uppercase;
  font-size: 15;
  cursor: pointer;}
@media (max-width: 767px){
.cookies-block .content{padding: 15px;}
.cookies-block .content button{margin-top: 15px;
    position: static;
    transform: none;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;}
}
.hidden{display: none !important;}
.infobanner{position: relative;
  padding: 60px;
  background-color: #9181ff;
  border-radius: 30px;
  overflow: hidden;}
.infobanner__svg{position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;}
.infobanner__inner{position: relative;
  margin: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;}
.infobanner__title{position: relative;
  padding: 8px 12px;
  background-color: #bcff6e;
  font-weight: 600;
  font-size: 32px;
  line-height: 120%;
  color: #4a4a4a;}
.infobanner__float{position: absolute;
  top: -20px;
  right: -34px;
  padding: 6px 10px;
  background-color: #ff6ea6;
  border-radius: 10000px;
  font-weight: 500;
  font-size: 14px;
  line-height: 140%;
  color: #fff;
  transform: rotate(15deg);}
.infobanner__wrapper{display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;}
.infobanner__subtitle{font-weight: 600;
  font-size: 36px;
  line-height: 120%;
  text-align: center;
  color: #fff;}
.infobanner__text{max-width: 490px;
  font-weight: 400;
  font-size: 16px;
  line-height: 140%;
  text-align: center;
  color: #fff;}
.infobanner__button{display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  max-width: 285px;
  height: 60px;
  background-color: #ffdb00;
  border-radius: 12px;
  font-weight: 500;
  font-size: 16px;
  line-height: 130%;
  text-align: center;
  color: #202229;}
@media (max-width: 640px){
.infobanner{padding: 32px 20px;}
.infobanner__title{font-size: 28px;}
.infobanner__float{right: -15px;}
.infobanner__subtitle{font-size: 30px;}
}
.mail-wrapper{display: flex;
  align-items: center;
  flex-direction: row !important;
  gap: 5px;}
.email-copy__wrapper{width: 10px;
  height: 10px;
  cursor: pointer;
  display: flex;
  position: relative;}
.intro.intro-slider .intro__right{margin-left: -20px;
  padding-left: 20px;
  clip-path: inset(-100vw -100vw -100vw 0);}
.intro__slider{margin-left: 10px;
    overflow: visible;}
.intro__slide{max-width: clamp(18.75rem, 12.002rem + 10.88vw, 25.063rem);
    height: clamp(25rem, 17.784rem + 11.64vw, 31.75rem);
    border-radius: 20px;
    overflow: hidden;
    transition: 0.3s;}
.intro__slide.swiper-slide-active{height: clamp(28.313rem, 18.291rem + 16.16vw, 37.688rem);}
.intro__slide-img{border-radius: 30px;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  -ms-border-radius: 30px;
  -o-border-radius: 30px;}

/* /assets/home/terra-site-nav.css?v=128-foto */
@font-face{font-family:TerraNav;src:url('/assets/home/assets/onest-variable.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--tsn-h:84px;--tsn-shell:min(100% - 64px,1840px);--tsn-bg:rgba(6,17,31,.95);--tsn-panel:#06131f;--tsn-line:rgba(164,199,228,.16);--tsn-text:#edf5fb;--tsn-muted:#91a7ba;--tsn-accent:#8ac7f3;--tsn-gold:#d6ae63}
body.tsn-lock{overflow:hidden}
/* Страницы без первого экрана: раньше шапка стояла в потоке и раздвигала
   содержимое, новое меню закреплено сверху. Без этого отступа хлебные крошки
   и заголовок уезжают под меню. Признак ставит build_site_nav.py. */
body[data-tsn-offset]{padding-top:var(--tsn-h)}
/* Фильтр афиши на телефоне закреплён у верхнего края экрана и уезжал под меню */
main .list__filter{top:var(--tsn-h)}
[data-terra-site-nav]{min-height:0}
.tsn,.tsn *{box-sizing:border-box}
.tsn{position:fixed!important;z-index:10000;inset:0 0 auto!important;height:var(--tsn-h);margin:0!important;color:var(--tsn-text);font-family:TerraNav,Arial,sans-serif;background:var(--tsn-bg);border:0!important;border-bottom:1px solid var(--tsn-line)!important;box-shadow:0 12px 45px rgba(0,8,17,.13);backdrop-filter:blur(26px) saturate(125%);-webkit-backdrop-filter:blur(26px) saturate(125%)}
.tsn a{color:inherit!important;text-decoration:none!important}
.tsn button,.tsn input{font:inherit}
.tsn-bar{position:relative;z-index:4;width:var(--tsn-shell);height:100%;margin:0 auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(25px,2.4vw,52px)}
.tsn-brand{display:flex;align-items:center;min-width:max-content}
.tsn-brand__image{display:block;width:auto;height:64px;object-fit:contain}
.tsn-primary{height:100%;display:flex;justify-content:center;align-items:stretch;gap:clamp(24px,2.1vw,44px)}
.tsn-item{position:relative;display:flex;align-items:stretch}
.tsn-trigger-row{display:flex;align-items:center}
.tsn-link{position:relative;display:flex;align-items:center;height:100%;white-space:nowrap;color:#b9c9d8!important;font-size:14px;font-weight:400;letter-spacing:0;transition:color .2s}
.tsn-link:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--tsn-gold);transform:scaleX(0);transform-origin:center;transition:transform .25s ease}
.tsn-item:hover .tsn-link,.tsn-item.is-open .tsn-link,.tsn-item.is-current .tsn-link,.tsn-link:focus-visible{color:#fff!important}
.tsn-item.is-open .tsn-link:after,.tsn-item.is-current .tsn-link:after{transform:scaleX(1)}
.tsn-trigger{width:26px;height:44px;margin-left:2px;padding:0;border:0;background:transparent;color:#718ba1;display:grid;place-items:center;cursor:pointer}
.tsn-trigger svg{width:12px;height:12px;transition:transform .25s ease,color .2s}
.tsn-item.is-open .tsn-trigger svg{transform:rotate(180deg);color:#dceaf5}
.tsn-tools{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:max-content}
.tsn-tool{height:43px;padding:0 11px;border:0;background:transparent;color:#a8bac9;display:flex;align-items:center;gap:7px;cursor:pointer;transition:color .2s,background .2s}
.tsn-tool:hover,.tsn-tool:focus-visible,.tsn-tool[aria-expanded="true"]{color:#fff;background:rgba(173,207,235,.08)}
.tsn-tool svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}
.tsn-tool span{font-size:13px}
/* Главная кнопка меню. Была контурной и терялась на тёмной шапке: рядом
   с обычными пунктами её не читали как действие. Теперь залита светлым,
   как основные кнопки на страницах. */
.tsn a.tsn-cta,
.tsn-cta{height:44px;padding:0 20px;border:1px solid #fff;border-radius:4px;display:flex;align-items:center;justify-content:center;background:#fff;color:#0b1f36!important;font-size:14px;font-weight:500;letter-spacing:0;white-space:nowrap;transition:background .2s,color .2s,border-color .2s,transform .2s}
.tsn a.tsn-cta:hover,.tsn a.tsn-cta:focus-visible,
.tsn-cta:hover,.tsn-cta:focus-visible{background:#dfe9f3;color:#0b1f36!important;border-color:#dfe9f3}
.tsn-menu-toggle{display:none;width:46px;height:46px;border:1px solid rgba(183,215,241,.25);background:transparent;color:#fff;position:relative;cursor:pointer}
.tsn-menu-toggle i{position:absolute;left:13px;right:13px;height:1px;background:currentColor;transition:transform .25s,top .25s}.tsn-menu-toggle i:first-child{top:18px}.tsn-menu-toggle i:last-child{top:27px}.tsn-menu-toggle[aria-expanded="true"] i:first-child{top:22px;transform:rotate(45deg)}.tsn-menu-toggle[aria-expanded="true"] i:last-child{top:22px;transform:rotate(-45deg)}
.tsn-scrim{position:fixed;z-index:1;inset:var(--tsn-h) 0 0;background:rgba(0,8,16,.48);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s,visibility .25s}
.tsn.has-layer .tsn-scrim{opacity:1;visibility:visible;pointer-events:auto}
.tsn-mega,.tsn-overlay{position:fixed;z-index:3;left:0;right:0;top:var(--tsn-h);max-height:calc(100svh - var(--tsn-h));overflow:auto;background:var(--tsn-panel);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border-bottom:1px solid rgba(160,197,228,.2);box-shadow:0 35px 80px rgba(0,7,16,.42);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);transition:opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s}
.tsn-item.is-open .tsn-mega,.tsn-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.tsn-mega__inner{width:var(--tsn-shell);margin:0 auto;padding:43px 0 37px;display:grid;grid-template-columns:minmax(260px,.9fr) minmax(220px,.65fr) minmax(300px,1fr);gap:clamp(44px,6vw,110px)}
.tsn-mega__intro{display:flex;flex-direction:column;align-items:flex-start}
.tsn-kicker{margin-bottom:16px;color:#8fa5bb;font-size:14px;font-weight:500;letter-spacing:0}
.tsn-kicker:has(+strong){display:none}
.tsn-mega__intro strong{max-width:510px;font-size:clamp(26px,1.9vw,34px);font-weight:400;line-height:1.15;letter-spacing:-.02em;color:#fff}
.tsn-mega__intro p{max-width:490px;margin:16px 0 24px;color:#b9c9d8;font-size:15px;line-height:1.65}
.tsn-arrow-link{display:inline-flex;align-items:center;gap:12px;padding-bottom:6px;border-bottom:1px solid rgba(166,204,233,.27);color:#e7f1f8!important;font-size:14px}.tsn-arrow-link span{color:var(--tsn-gold)}
.tsn-link-list{display:flex;flex-direction:column;align-items:flex-start;gap:0}
.tsn-link-list small{margin-bottom:10px;color:#8fa5bb;font-size:14px;font-weight:500;letter-spacing:0}
.tsn-link-list a{position:relative;width:100%;padding:8px 0;color:#d6e2ee!important;font-size:16px;transition:color .2s,padding-left .25s ease}.tsn-link-list a:before{content:"";position:absolute;left:0;top:50%;width:0;height:2px;background:var(--tsn-gold);transition:width .25s ease}
.tsn-link-list a:hover:before,.tsn-link-list a:focus-visible:before{width:12px}
.tsn-link-list a:hover,.tsn-link-list a:focus-visible{padding-left:22px;color:#fff!important}
.tsn-feature{position:relative;min-height:190px;padding:26px 28px;border:1px solid rgba(155,196,230,.18);background:linear-gradient(130deg,rgba(25,67,99,.5),rgba(7,24,39,.2));overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}
.tsn-feature:after{content:"";position:absolute;width:210px;height:210px;border:1px solid rgba(132,195,240,.2);border-radius:50%;right:-82px;top:-112px;box-shadow:0 0 0 42px rgba(132,195,240,.025)}
.tsn-feature>*{position:relative;z-index:1}.tsn-feature small{color:#8fa5bb;font-size:14px;font-weight:500}.tsn-feature strong{max-width:430px;font-size:21px;font-weight:480;line-height:1.25}.tsn-feature p{max-width:430px;margin:7px 0 0;color:#8fa6b8;font-size:14px;line-height:1.55}.tsn-feature a{font-size:13px;color:#e5f1f9!important}.tsn-feature--gold{background:linear-gradient(130deg,rgba(105,73,34,.36),rgba(7,24,39,.15))}.tsn-feature--gold:after{border-color:rgba(216,175,98,.28)}
/* Четыре уровня квадратом 2 × 2: «Опора» с доходом от 1 млн (Михаил, 18.10.2026) */
.tsn-levels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid rgba(155,190,220,.14);border-left:1px solid rgba(155,190,220,.14)}
.tsn-levels a{min-height:82px;padding:17px;border-right:1px solid rgba(155,190,220,.14);border-bottom:1px solid rgba(155,190,220,.14);display:flex;flex-direction:column;justify-content:space-between}.tsn-levels small{color:#8fa5bb;font-size:14px}.tsn-levels strong{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:500}
.tsn-levels strong:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--tsn-gold)}.tsn-levels a:hover{background:rgba(137,193,234,.06)}
.tsn-overlay__inner{width:var(--tsn-shell);margin:0 auto;padding:42px 0 38px;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.45fr);gap:70px;align-items:start}
.tsn-search-form{position:relative;border-bottom:1px solid rgba(181,213,239,.35)}
.tsn-search-form input{width:100%;padding:4px 56px 18px 0;border:0;outline:0;background:transparent;color:#fff;font-size:clamp(28px,3vw,48px);font-weight:380;letter-spacing:-.04em}.tsn-search-form input::placeholder{color:#698196}.tsn-search-form button{position:absolute;right:0;bottom:15px;width:40px;height:40px;border:0;background:transparent;color:#a9c6dd;cursor:pointer}.tsn-search-form svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5}
.tsn-suggestions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 35px;margin-top:25px}.tsn-suggestions a{padding:13px 0;border-bottom:1px solid rgba(155,190,220,.1);display:flex;justify-content:space-between;gap:14px;color:#b8c8d5!important;font-size:15px}.tsn-suggestions small{color:#8fa5bb;font-size:14px}.tsn-suggestions a[hidden]{display:none}
.tsn-app-card{padding:25px;border:1px solid rgba(155,196,230,.17)}.tsn-app-card strong{display:block;font-size:24px;font-weight:400;line-height:1.15;letter-spacing:-.02em}.tsn-app-card p{margin:10px 0 20px;color:#8fa5b8;font-size:14px;line-height:1.55}.tsn-store-links{display:flex;gap:8px}.tsn-store-links a{padding:11px 13px;border:1px solid rgba(178,210,235,.22);font-size:12px;color:#e7f1f8!important}
.tsn-layer-close{position:absolute;right:32px;top:22px;width:38px;height:38px;border:0;background:transparent;color:#91a9bc;font-size:22px;cursor:pointer}
/* Фон мобильного меню сплошной: полупрозрачный под шапкой с размытием (backdrop-filter)
   пропускал текст страницы, он просвечивал между пунктами. */
.tsn-mobile{display:none}
.tsn :focus-visible{outline:2px solid #d4aa61!important;outline-offset:3px!important}

@media(max-width:1380px){
  :root{--tsn-shell:min(100% - 44px,1840px)}
  .tsn-primary{gap:15px}.tsn-link{font-size:13px}.tsn-tool span{display:none}.tsn-tool{padding-inline:8px}.tsn-cta{padding-inline:14px}.tsn-bar{gap:22px}
}
@media(max-width:1120px){
  :root{--tsn-h:72px;--tsn-shell:calc(100% - 32px)}
  .tsn-bar{display:flex;gap:18px}.tsn-brand__image{height:55px}.tsn-primary,.tsn-tool,.tsn-cta{display:none}.tsn-tools{margin-left:auto}.tsn-menu-toggle{display:block}
  .tsn-scrim{top:var(--tsn-h)}
  .tsn-mobile{position:fixed;z-index:3;left:0;right:0;top:var(--tsn-h);height:calc(100svh - var(--tsn-h));padding:0 16px 24px;background:#06111f;overflow:auto;opacity:0;visibility:hidden;pointer-events:none;transform:translateX(100%);transition:opacity .25s,transform .35s cubic-bezier(.22,1,.36,1),visibility .25s}
  .tsn-mobile.is-open{display:block;opacity:1;visibility:visible;pointer-events:auto;transform:none}
  .tsn-mobile__search{position:sticky;top:0;z-index:2;padding:18px 0 12px;background:rgba(4,14,24,.97)}
  .tsn-mobile__search form{display:flex;border:1px solid rgba(163,200,230,.18)}.tsn-mobile__search input{width:100%;min-width:0;padding:14px;border:0;outline:0;background:transparent;color:#fff;font-size:14px}.tsn-mobile__search button{width:50px;border:0;background:transparent;color:#9bb9ce}.tsn-mobile__search svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5}
  .tsn-mobile__direct,.tsn-mobile summary{min-height:61px;padding:0 3px;border-bottom:1px solid rgba(155,190,220,.13);display:flex;align-items:center;justify-content:space-between;color:#e8f1f8!important;font-size:20px;list-style:none;cursor:pointer}.tsn-mobile summary::-webkit-details-marker{display:none}.tsn-mobile summary:after{content:"+";color:#7896ad;font-size:24px;font-weight:300}.tsn-mobile details[open] summary:after{content:"−"}
  .tsn-mobile__sub{padding:7px 0 15px}.tsn-mobile__sub a{display:flex;align-items:center;min-height:43px;padding:0 12px;color:#9fb2c1!important;font-size:16px}
  .tsn-mobile__foot{margin-top:20px;padding-top:20px;border-top:1px solid rgba(155,190,220,.13);display:grid;gap:10px}.tsn a.tsn-mobile__cta{min-height:58px;border-radius:4px;background:#fff;color:#0b1f36!important;display:flex;align-items:center;justify-content:center;font-size:15px}.tsn-mobile__apps{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tsn-mobile__apps a{min-height:46px;border:1px solid rgba(155,190,220,.18);display:grid;place-items:center;color:#b9cad6!important;font-size:12px}.tsn-mobile__meta{padding:14px 0 8px;display:flex;justify-content:space-between;gap:18px;color:#647f94;font-size:11px}
  .tsn-mega,.tsn-overlay{display:none!important}
}
@media(max-width:420px){.tsn-brand__image{height:51px}.tsn-mobile__meta{flex-direction:column;gap:6px}.tsn-mobile__apps{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.tsn *{scroll-behavior:auto!important;transition:none!important}}
.tsn-item>.tsn-link{margin-right:28px}

/* Одна ширина на весь сайт. Шапка и подвал шли на 1840 px с полями 32,
   содержимое страниц — на 1760 с полями 48, блоки прежней вёрстки — на
   1412. На широком мониторе левый край логотипа, заголовка и текста
   стоял в трёх разных местах, и страница «прыгала». Теперь шапка,
   подвал и старые блоки берут ту же ширину, что и содержимое
   (--shell в стилях страниц берёт эту же переменную).
   Этот файл подключён на всех страницах, поэтому правило здесь.
   16.10.2026, Михаил: на широком мониторе поля 48 px смотрелись как
   «на весь экран, глаза разбегаются». Теперь поле растёт с экраном:
   до 1280 px оно 48, на 1440 около 70, на 1728 около 116, а контент
   не шире 1600 px и на мониторах от 1920 стоит по центру. */
:root{--tsn-shell:min(100% - 2 * clamp(48px, 16vw - 160px, 160px), 1600px)}
@media(max-width:1180px){:root{--tsn-shell:min(100% - 56px,1760px)}}
@media(max-width:820px){:root{--tsn-shell:min(100% - 36px,1760px)}}
@media(max-width:560px){:root{--tsn-shell:calc(100% - 28px)}}

.rd-megafooter>.container,
.page-legacy .container,
.mentor-legacy .container,
.school-legacy .container{
  width:var(--tsn-shell);
  max-width:none;
  margin-inline:auto;
  padding-inline:0;
}

/* «Санкт-Петербург» в заголовках не рвётся по дефису («Санкт-» в конце
   строки, «Петербурге» на следующей). Обёртку ставит fix_city_nobr.py;
   правило здесь, потому что этот файл подключён на каждой странице.
   На телефоне слово может не влезть в строку крупного заголовка —
   там перенос по дефису снова разрешён. */
.nobr{white-space:nowrap}
@media(max-width:560px){.nobr{white-space:normal}}

/* Сайт только светлый. В Chrome на Android есть «тёмная тема для сайтов»:
   он сам перекрашивает светлые страницы в серые, и у посетителя сайт
   выглядел серым с белым текстом (Михаил, 02.10.2026). «only light»
   запрещает такое перекрашивание; метку в <head> ставит build_site_nav.py. */
:root{color-scheme:only light}

/* Телефон: кнопка записи одной высоты с кнопкой меню, 46px. Было 48 и 46,
   и в шапке они стояли ступенькой. Селектор как у основного правила
   (.tsn a.tsn-cta): иначе оно перебивает. */
@media(max-width:1120px){.tsn a.tsn-cta{height:46px}}

/* Подпись разработчика оформлена в site-footer.css вместе со всем подвалом. */
/* Под подписью оставался пустой блок от старого сайта (превью наставника):
   из-за него подпись висела посередине, а не у нижнего края. */
.rd-megafooter .mentor-preview__right{display:none}
/* У подвала главной свой отступ снизу — подпись стоит на том же расстоянии от края. */
body.theme-scale .footer__credit{padding-bottom:0}

/* Хлебные крошки на одной высоте на всех первых экранах (Михаил, 04.10.2026):
   40px под шапкой сайта, на телефоне 24px. У одних страниц отступ под шапку
   задан телу (body[data-tsn-offset]), у других первому экрану — правило
   учитывает оба случая. «html body» в начале — чтобы перебить стили страниц,
   которые подключаются позже. Первый экран больше не тянется на всю высоту
   окна с прижатым к низу текстом: из-за этого крошки «плавали» посередине. */
:root{--crumbs-top:40px;--crumbs-gap:40px}
@media(max-width:560px){:root{--crumbs-top:24px;--crumbs-gap:28px}}
html body :is(.service-page .svc-hero,.calendar-page .calendar-hero,.event-page .event-hero,.blog-page .blog-hero,.article-page .article-hero,.search-page .search-hero,.legal-hero,.mentor-catalog .hero){padding-top:calc(var(--tsn-h,84px) + var(--crumbs-top))}
html body[data-tsn-offset] :is(.service-page .svc-hero,.calendar-page .calendar-hero,.event-page .event-hero,.blog-page .blog-hero,.article-page .article-hero,.search-page .search-hero,.legal-hero,.mentor-catalog .hero){padding-top:var(--crumbs-top)}
/* Кроме /zapis/: там карточка формы заходит на нижний отступ первого экрана, без него она наезжает на подводку (04.10.2026). */
html body .service-page .svc-hero:not(.signup-hero){min-height:0;display:block;padding-bottom:clamp(64px,6vw,104px)}
html body .event-page .event-hero{min-height:0}
/* Каталог школ и страница наставника: отступ сверху у внутреннего блока. */
html body .catalog-hero{min-height:0;padding-top:var(--tsn-h,84px)}
html body .catalog-hero .hero-layout{padding-top:var(--crumbs-top);align-items:start}
html body .mentor-hero{padding-top:var(--tsn-h,84px)}
html body .mentor-hero .hero-layout{padding-top:var(--crumbs-top);align-items:start}
html body[data-tsn-offset] :is(.catalog-hero,.mentor-hero){padding-top:0}
/* Страница школы и курса: вместо крошек верхняя строка «Курс TERRA — …». */
html body .school-hero__copy{justify-content:flex-start;padding-top:calc(var(--tsn-h,84px) + var(--crumbs-top))}
html body .school-hero__meta{margin-top:0}
/* Расстояние от крошек до следующей строки — одно на всех страницах. */
html body :is(.svc-hero .breadcrumbs,.catalog-hero .breadcrumbs,.mentor-hero .breadcrumbs,.calendar-hero .breadcrumbs,.search-hero .breadcrumbs,.mentor-catalog .hero__crumbs,.event-hero .crumbs,.blog-hero .crumbs,.article-hero .crumbs,.legal-hero .crumbs){margin-bottom:var(--crumbs-gap)}
html body .service-page .signup-hero .breadcrumbs{margin-bottom:var(--crumbs-gap)}
/* Страница внутри окна брендбука (#bb-frame=…): без плашки cookie и кнопки Орбиты */
html.bb-frame .terra-cookie,html.bb-frame .tf-open,html.bb-frame [class^="tf-"]{display:none!important}
/* в окне с подвалом шапка не нужна: показываем только подвал */
html.bb-frame-footer .tsn{display:none!important}

/* Поиск в меню (Михаил, 18.10.2026): подпись над полем с воздухом, поле с рамкой
   и скруглением 4, без крупного серого крестика браузера; под полем живые подсказки. */
.tsn-search .tsn-kicker{display:block;margin:0 0 16px}
.tsn-search-form{display:flex;align-items:center;border:0;border-radius:4px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(185,201,216,.35)}
.tsn-search-form:focus-within{box-shadow:inset 0 0 0 2px #d4aa61}
.tsn-search-form input{flex:1;min-width:0;height:72px;padding:0 64px 0 24px;font:400 clamp(22px,2.2vw,32px)/1.2 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.02em}
.tsn-search-form input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}
.tsn-search-form button{top:50%;right:12px;bottom:auto;width:44px;height:44px;transform:translateY(-50%)}
.tsn-live{display:grid;gap:0;margin-top:16px;border-radius:12px;background:rgba(255,255,255,.03);box-shadow:inset 0 0 0 1px rgba(155,190,220,.14);overflow:hidden}
.tsn-live a{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:14px 20px;color:#eef4fa!important;font-size:16px;text-decoration:none}
.tsn-live a+a{box-shadow:inset 0 1px 0 rgba(155,190,220,.1)}
.tsn-live a:hover,.tsn-live a:focus-visible{background:rgba(212,170,97,.08);outline:0}
.tsn-live small{flex:none;color:#8fa5bb;font-size:14px}
.tsn-live__all span{color:#d4aa61}
.tsn-live__empty{margin:0;padding:16px 20px;color:#b9c9d8;font-size:15px}
.tsn-live:not([hidden])+.tsn-suggestions{display:none}
@media(max-width:820px){.tsn-search-form input{height:60px;padding-left:16px;font-size:20px}}
/* Одна рамка фокуса: золотая у поля, обводку браузера снаружи убираем */
.tsn-search-form input:focus,.tsn-search-form input:focus-visible,.tsn-search-form:focus-within{outline:none}
/* У поля поиска фокус показывает своя золотая рамка, общую обводку меню снимаем */
.tsn .tsn-search-form input:focus-visible{outline:none!important}

/* /assets/home/content-page.css?v=3-content */
/* Служебные страницы клуба в общей визуальной системе TERRA: о клубе,
   контакты, вопросы-ответы, партнёрство, кейсы, политики, запись.
   Новый здесь только первый экран, всё остальное содержимое страницы
   остаётся как было. Токены те же, что у блога и каталогов. */

@font-face{font-family:Onest;src:url('/assets/home/assets/onest-variable.woff2') format('woff2');font-weight:100 900;font-display:swap}

.page-hero{
  --sky:#9cc9f5;--white:#f7f9fc;--muted:#8fa4b7;--line:rgba(151,188,219,.22);
  position:relative;overflow:hidden;
  padding:clamp(94px,9.5vw,146px) 0 clamp(40px,4.6vw,66px);
  background:radial-gradient(120% 140% at 82% 0%,#14314c 0%,#0a1c2c 46%,#06121d 100%);
  color:var(--white);font-family:Onest,Arial,sans-serif;
}
.page-hero *{box-sizing:border-box}
.page-hero:before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),
                   linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:96px 96px;opacity:.35;
  mask-image:radial-gradient(70% 70% at 70% 0%,#000,transparent 72%);
}
.page-hero__inner{
  position:relative;display:flex;flex-direction:column;gap:20px;
  /* Первый экран по ширине совпадает с содержимым ниже: раньше он был
     уже, и заголовок переносился на три строки при свободном месте справа. */
  width:min(1740px,calc(100vw - 8vw));max-width:calc(100vw - 32px);margin-inline:auto;
}
.page-hero__crumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.page-hero__crumbs a{color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .18s}
.page-hero__crumbs a:hover{border-color:var(--sky)}
/* Крошки перенесены со страницы вместе со своей разметкой: гасим прежнее
   оформление списка, чтобы они читались как строка на тёмном фоне. */
.page-hero__crumbs ol{display:flex!important;flex-wrap:wrap;gap:10px;margin:0!important;
  padding:0!important;list-style:none;background:none!important;border:0;box-shadow:none}
.page-hero__crumbs li{display:flex;align-items:center;gap:10px}
.page-hero__crumbs li+li:before{content:"/";color:var(--muted)}
.page-hero__crumbs li:last-child{color:var(--sky)}
.page-hero__crumbs li,.page-hero__crumbs span,.page-hero__crumbs a{
  background:none!important;border-radius:0;padding:0;margin:0;color:inherit}
.page-hero h1{
  margin:0;max-width:none;font-weight:400;letter-spacing:-.035em;line-height:1.05;
  font-size:clamp(32px,3.6vw,56px);text-wrap:balance;color:var(--white);
}
.page-hero__lead{margin:0;max-width:min(100%,92ch);color:#c2d5e5;font-size:clamp(15px,1.3vw,18px);line-height:1.65}
.page-hero__meta{display:flex;flex-wrap:wrap;gap:8px 22px;color:var(--muted);font-size:12.5px}

/* Остальное содержимое страницы живёт своим слоем: внутри старой вёрстки
   есть декоративные круги на position:absolute, которые иначе всплывают
   поверх первого экрана. */
.page-legacy{position:relative;overflow:hidden;isolation:isolate}

@media(max-width:600px){
  .page-hero__inner{width:calc(100vw - 32px)}
}

/* Анкета записи. Оставалась в прежнем оформлении: поля со скруглением
   в двадцать точек, красная звёздочка, синяя подсказка. Приводим к тому же
   виду, что остальной сайт, оставляя светлый фон. */
.page-legacy .signup__grid{gap:20px;width:min(720px,100%);margin-inline:auto}
.page-legacy .signup__row{gap:20px}
.page-legacy .signup__field{gap:9px}
.page-legacy .signup__field label{
  font:500 12px/1.4 Onest,Arial,sans-serif;letter-spacing:.04em;
  text-transform:uppercase;color:#6b7c8b;
}
.page-legacy .signup__field input,
.page-legacy .signup__field textarea,
.page-legacy .signup__field select{
  width:100%;box-sizing:border-box;padding:16px 18px;
  border:1px solid #d5dfeb;border-radius:8px;background:#fff;
  font:400 16px/1.4 Onest,Arial,sans-serif;color:#15212f;
  transition:border-color .16s,box-shadow .16s;
}
.page-legacy .signup__field input:focus,
.page-legacy .signup__field textarea:focus,
.page-legacy .signup__field select:focus{
  outline:none;border-color:#294771;box-shadow:0 0 0 3px rgba(41,71,113,.12);
}
.page-legacy .signup__field input::placeholder{color:#9aa9b6}
.page-legacy .signup__req{color:#b4471f}
.page-legacy .signup__opt,.page-legacy .signup__hint{
  font:400 12px/1.4 Onest,Arial,sans-serif;color:#8b9aa2;text-transform:none;letter-spacing:0;
}
.page-legacy .signup__note{
  color:#294771;font:400 14px/1.6 Onest,Arial,sans-serif;
  padding:14px 16px;border-left:2px solid #4dc9e8;background:#f2f6fa;margin:0 0 22px;
}
.page-legacy .signup__lead{font:400 17px/1.65 Onest,Arial,sans-serif;color:#41535f}
.page-legacy .signup__check{display:flex;gap:11px;align-items:flex-start;font-size:13.5px;color:#5a6b78}
.page-legacy .signup__check input{margin-top:3px;accent-color:#294771}
.page-legacy .ajax_form button[type="submit"],
.page-legacy .ajax_form .btn{
  display:inline-flex;align-items:center;gap:14px;
  padding:17px 28px;border:0;border-radius:8px;
  background:#15212f;color:#f7f9fc;cursor:pointer;
  font:500 15px/1 Onest,Arial,sans-serif;
  transition:transform .18s,background .18s;
}
.page-legacy .ajax_form button[type="submit"]:hover,
.page-legacy .ajax_form .btn:hover{transform:translateY(-2px);background:#0d1926}


/* Текст идёт во всю ширину колонки. Узкие пределы на лидах и подводках
   оставляли справа пустоту в треть экрана: заголовок во всю ширину, а
   текст под ним обрывался на середине и переносился без причины.
   Предел ширины держит сам контейнер страницы (--shell), отдельным
   абзацам он не нужен. Узкая колонка остаётся только в статьях блога,
   где длинный текст читают подряд. */
.page-hero__lead{max-width:none}

/* Лента историй успеха на обычных страницах. Раскладка для неё была
   написана только под главную, а разметка одна и та же: без правил
   карточки растягивались во всю ширину и на экран попадала одна.
   Слайдер старого сайта тут не заводится, поэтому лента просто
   прокручивается вбок — кнопки «вперёд/назад» уже работают. */
body:not(.theme-scale) .stories__slider{
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}
body:not(.theme-scale) .stories__slider::-webkit-scrollbar{display:none}
body:not(.theme-scale) .stories__slider .swiper-wrapper{
  display:flex;
  gap:24px;
  transform:none!important;
}
body:not(.theme-scale) .stories__slide{
  flex:0 0 calc((100% - 48px)/3);
  width:calc((100% - 48px)/3);
  scroll-snap-align:start;
}
body:not(.theme-scale) .stories__slide .case-card__img{
  width:100%;
  height:auto;
  aspect-ratio:16/10;
  object-fit:cover;
}
@media(max-width:1000px){
  body:not(.theme-scale) .stories__slide{flex-basis:calc((100% - 24px)/2);width:calc((100% - 24px)/2)}
}
@media(max-width:640px){
  body:not(.theme-scale) .stories__slider .swiper-wrapper{gap:16px}
  body:not(.theme-scale) .stories__slide{flex-basis:86%;width:86%}
}

/* /assets/home/site-footer.css?v=9-bez-instagrama */
/* Подвал сайта по брендбуку (/o-klube/brendbuk/), 16.10.2026. Один файл на все
   страницы, включая главную, а разметку собирает build_site_footer.py.

   Правила привязаны к #footer: подвал раньше оформляли ещё terra-v2.css,
   premium.css и redesign.css (на главной), их селекторы длиннее. Идентификатор
   перебивает любой из них, поэтому подвал выглядит одинаково везде.

   По брендбуку: шрифт Onest, фон подвала: градиент #020712 → #061523 → #032C37,
   скругление сверху 54 px (на телефоне 28 px), кольца светлой линией в углу,
   главная кнопка белая, остальные с обводкой, без капса, текст не мельче 12 px,
   без линий между пунктами. */

@font-face{font-family:TerraOnest;src:url('/assets/home/assets/onest-variable.woff2') format('woff2');font-weight:100 900;font-display:swap}

#footer.rd-megafooter{position:relative;isolation:isolate;overflow:hidden;margin:-1px 0 0!important;padding:0!important;border:0!important;border-radius:54px 54px 0 0!important;
  background:radial-gradient(circle at 94% 100%,#0b4a5a8c,transparent 42%),linear-gradient(112deg,#020712 0%,#061523 48%,#032c37 100%)!important;
  color:#b9c9d8;font-family:TerraOnest,Arial,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased}
#footer.rd-megafooter *{font-family:inherit}
/* Подложка под скруглёнными углами: занимает высоту скругления и уходит под подвал.
   Цвет ей ставит site-footer.js (цвет блока над подвалом). */
.rd-footer-under{flex:none;height:54px;margin:0 0 -54px;background:transparent}
#footer.rd-megafooter a{color:inherit;text-decoration:none}
/* Кольца в правом нижнем углу: оттуда светлеет градиент подвала, свет и кольца
   идут из одной точки. Светлая линия 1 px, две точки и одна золотая. Точки стоят
   в пустых местах: под нижней строкой и в правом поле, на текст не ложатся. */
#footer.rd-megafooter:before{content:""!important;display:block!important;position:absolute;z-index:0;top:auto;bottom:-330px;right:-330px;width:660px;height:660px;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 600' fill='none' stroke='%23eef4fa'%3E%3Ccircle cx='300' cy='300' r='296' stroke-opacity='.09'/%3E%3Ccircle cx='300' cy='300' r='210' stroke-opacity='.14'/%3E%3Ccircle cx='300' cy='300' r='124' stroke-opacity='.24'/%3E%3Cg fill='%23eef4fa' stroke='none' fill-opacity='.6'%3E%3Ccircle cx='93' cy='263.5' r='4'/%3E%3Ccircle cx='274' cy='5' r='4'/%3E%3C/g%3E%3Ccircle cx='178' cy='278.5' r='5' fill='%23d4aa61' stroke='none'/%3E%3C/svg%3E") center/contain no-repeat}
#footer.rd-megafooter:after{display:none!important}
/* сеть, которую дорисовывает скрипт главной, в подвале не нужна, декор подвала здесь кольца */
#footer .rd-footer-constellation{display:none!important}
#footer.rd-megafooter>.container{position:relative;z-index:1;width:var(--tsn-shell,min(100% - 96px,1760px));max-width:none;margin:0 auto;padding:0}

/* призыв: заголовок блока и белая кнопка */
/* display без #footer: блог, правовые и служебные страницы прячут призыв своими стилями */
.rd-footer-cta{display:grid}
#footer .rd-footer-cta{grid-template-columns:minmax(0,1fr);gap:24px 48px;align-items:center;margin:0;padding:80px 0 0;border:0}
#footer .rd-footer-cta>span{display:none}
#footer .rd-footer-cta h2{margin:0;color:#fff;font-size:clamp(30px,3.6vw,52px);font-weight:400;line-height:1.06;letter-spacing:-.03em}
#footer .rd-footer-cta h2 br{display:none}

/* логотип */
#footer .footer__inner{padding:56px 0 0}
#footer .footer__top{display:block;margin:0 0 40px;padding:0;border:0}
#footer .footer__logo{display:inline-block}
#footer .footer__logo-img{display:block!important;width:auto;height:64px;opacity:1!important;filter:none!important}
#footer .footer__logo .rd-logo{display:none!important}

/* три колонки: о клубе, разделы, подписка */
#footer .footer__bottom{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.4fr) minmax(0,1fr);grid-template-areas:"desc nav sub" "desc nav contacts";align-content:start;gap:40px clamp(40px,4vw,86px);align-items:start;margin:0;padding:0;border:0}
/* Блок «о клубе» раскладываем по колонкам без правки разметки: описание слева,
   контакты под подпиской справа. Так первая колонка больше не самая длинная. */
#footer .rd-footer-profile{display:contents}
#footer .footer__item--description{grid-area:desc}
#footer .footer__bottom>.navigation{grid-area:nav}
#footer .footer__item--subscribe{grid-area:sub}
#footer .footer__item--contacts{grid-area:contacts;display:flex;flex-direction:column;align-items:flex-start;gap:16px}
#footer .footer__item{width:100%;max-width:none;margin:0;padding:0}
/* Абзацы разной важности различаем размером и цветом: курсива в брендбуке нет,
   жирность 500 занята подзаголовками. Главное 17 px белым, пояснение 15 px,
   реквизиты 14 px приглушённым цветом и отдельно. */
#footer .footer__description p{margin:0 0 12px;color:#b9c9d8!important;font-size:15px;line-height:1.55}
#footer .footer__description p:first-child{color:#eef4fa!important;font-size:17px}
#footer .footer__description p:nth-child(3){margin:20px 0 0;color:#8fa5bb!important;font-size:14px;line-height:1.5}
/* администратор сайта: подпись, имя и ссылка на правовые документы, каждое с новой строки */
#footer .footer__admin{display:grid;gap:4px;margin:20px 0 0!important;font-size:14px;line-height:1.45}
#footer .footer__admin span:first-child{color:#8fa5bb}
#footer .footer__admin span+span{color:#d6e2ee}
#footer .footer__admin a{justify-self:start;color:#d6e2ee;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
#footer .footer__admin a:hover{color:#fff}

/* соцсети и приложения: одноцветные значки в квадратах с обводкой */
#footer .footer__social{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 0;padding:0;list-style:none}
#footer .footer__social-item{margin:0;padding:0}
#footer :is(.footer__social-link,.footer__app-item){position:relative;display:grid!important;place-items:center;width:44px!important;height:44px!important;margin:0;padding:0;border:0!important;border-radius:12px!important;background:transparent!important;box-shadow:inset 0 0 0 1px #ffffff33;color:#eef4fa;transition:box-shadow .2s,background .2s}
#footer :is(.footer__social-link,.footer__app-item):hover,#footer :is(.footer__social-link,.footer__app-item):focus-visible{background:#ffffff12!important;box-shadow:inset 0 0 0 1px #fff}
#footer :is(.footer__social-link,.footer__app-item) svg{display:block!important;width:20px;height:20px}
/* у Rutube под буквой белая подложка: в одноцветном значке она не нужна */
#footer .footer__social-link svg rect{display:none}
#footer :is(.footer__social-link,.footer__app-item) svg,#footer :is(.footer__social-link,.footer__app-item) svg *{fill:currentColor!important;stroke:none!important}
/* на главной у соцсетей подписи и стрелка: подпись оставляем для экранного диктора */
#footer .rd-social-name{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
#footer .footer__social-link .rd-social-name+svg{display:none!important}

/* контакты */
#footer .footer__contacts{display:grid;gap:10px;margin:0}
#footer .mail-wrapper{display:flex;align-items:center;gap:10px}
#footer .footer__contact{display:inline-flex;align-items:center;gap:10px;margin:0;color:#eef4fa!important;font-size:15px;line-height:1.4}
#footer .footer__contact svg{width:18px;height:18px;flex:none}
#footer .footer__contact--address{color:#b9c9d8!important;font-size:14px}
#footer .email-copy__wrapper{display:grid;place-items:center;cursor:pointer;color:#8fa5bb}
#footer .email-copy__wrapper svg,#footer .email-copy__wrapper svg *{width:12px;height:12px;fill:currentColor}
#footer .footer__apps{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0;color:#b9c9d8;font-size:14px}
#footer .footer__app{display:flex;gap:10px}
#footer .footer__app-link{position:absolute;width:1px;height:1px;overflow:hidden}

/* «Подписаться» в Telegram: кнопка с обводкой */
#footer :is(.footer__bot-link,.footer__subscribe-submit){display:inline-flex;align-items:center;justify-content:center;gap:12px;width:max-content;min-height:52px;height:auto;margin:0;padding:0 24px;border:0!important;border-radius:4px!important;background:transparent!important;box-shadow:inset 0 0 0 1px #ffffff73;color:#fff!important;font-size:15px;font-weight:500;line-height:1.1;cursor:pointer;transition:box-shadow .2s,background .2s}
#footer :is(.footer__bot-link,.footer__subscribe-submit):hover,#footer :is(.footer__bot-link,.footer__subscribe-submit):focus-visible{background:#ffffff12!important;box-shadow:inset 0 0 0 1px #fff}
#footer .footer__bot-link svg{width:20px;height:20px}
/* Под контактами две кнопки с обводкой: «Подписаться на канал» (Telegram) и
   «Попасть на ближайший поток» (страница запуска). Главная белая кнопка у подвала
   одна, в призыве сверху (Михаил, 16.10.2026). */
#footer .footer__potok-link{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:4px;box-shadow:inset 0 0 0 1px #ffffff73;color:#fff!important;font-size:15px;font-weight:500;line-height:1.1;transition:box-shadow .2s,background .2s}
#footer .footer__potok-link:hover,#footer .footer__potok-link:focus-visible{background:#ffffff12;box-shadow:inset 0 0 0 1px #fff}
#footer :is(.footer__bot-link,.footer__potok-link){width:100%;max-width:340px}
#footer .footer__bot-link svg *{fill:currentColor!important}

/* разделы сайта: подписи групп без капса, пункты без линий, при наведении золотая черта */
#footer .navigation{position:static;margin:0;padding:0!important;border:0!important;background:none!important}
#footer .navigation>.container{width:100%;max-width:none;margin:0;padding:0}
#footer .navigation__inner{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(24px,2.4vw,44px);margin:0;padding:0}
#footer .navigation__item{width:auto;max-width:none;flex:none;margin:0;padding:0;border:0!important}
#footer .navigation__item-title{margin:0 0 16px;padding:0;border:0!important;color:#8fa5bb;font-size:14px;font-weight:500;line-height:1.4;letter-spacing:0;text-transform:none}
#footer .navigation__item-title:after,#footer .navigation__item-title:before{display:none!important}
#footer .navigation__list{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}
#footer .navigation__list--two-col{display:flex}
/* школы в две колонки только там, где названия помещаются в строку */
@media(min-width:1600px){#footer .navigation__list--two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}}
#footer .navigation__list-item{margin:0;padding:0}
#footer .navigation__list-link{position:relative;display:inline-block;padding:0;color:#d6e2ee!important;font-size:15px;line-height:1.4;transform:none!important;transition:color .2s,padding-left .25s ease}
#footer .navigation__list-link:before{content:"";position:absolute;left:0;top:50%;width:0;height:2px;background:#d4aa61;transition:width .25s ease}
#footer .navigation__list-link:hover,#footer .navigation__list-link:focus-visible{padding-left:22px;color:#fff!important}
#footer .navigation__list-link:hover:before,#footer .navigation__list-link:focus-visible:before{width:12px}

/* подписка на почту */
#footer .footer__item--subscribe{max-width:none}
#footer .footer__subscribe-title{margin:0 0 20px;color:#eef4fa;font-size:17px;font-weight:500;line-height:1.45}
#footer .footer__subscribe-form{display:flex;flex-wrap:wrap;gap:12px;margin:0}
#footer .footer__subscribe-field{flex:1 1 180px;min-width:0;height:52px!important;min-height:0!important;max-height:52px;margin:0;padding:0 16px!important;line-height:normal;border:0!important;border-radius:4px!important;background:#ffffff0d!important;box-shadow:inset 0 0 0 1px #ffffff33;color:#fff!important;font-size:15px;outline:0}
#footer .footer__subscribe-field::placeholder{color:#8fa5bb}
#footer .footer__subscribe-field:focus{box-shadow:inset 0 0 0 1px #fff}
#footer .policy{display:flex;flex-basis:100%;align-items:flex-start;gap:10px;margin:4px 0 0}
#footer .policy input{flex:none;width:16px;height:16px;margin:2px 0 0;accent-color:#d4aa61}
#footer .policy__text{color:#8fa5bb!important;font-size:14px;line-height:1.45}
#footer .policy__text a{color:#d6e2ee;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}

/* нижняя строка и подпись разработчика */
#footer .footer__copyright{display:flex;flex-wrap:wrap;align-items:center;gap:12px 32px;margin:64px 0 0;padding:0;border:0!important}
#footer .footer__copyright-text{margin-right:auto;color:#8fa5bb!important;font-size:14px}
#footer .footer__copyright-link{color:#b9c9d8!important;font-size:14px;letter-spacing:0;text-transform:none;transition:color .2s}
#footer .footer__copyright-link:hover{color:#fff!important;text-decoration:underline;text-underline-offset:4px}
/* Подпись разработчика: тихая строка у нижнего края (Михаил, 04.10.2026:
   «пониже, минималистичнее»). По брендбуку без капса и не мельче 12 px. */
#footer .footer__credit{margin:28px 0 0;padding:0 0 28px;color:#8fa5bb99;font-size:12px;line-height:1;letter-spacing:0;text-transform:none;text-align:center}
#footer .footer__credit a{color:#b9c9d8;letter-spacing:0;border:0;transition:color .2s}
#footer .footer__credit a:hover{color:#fff}

/* На главной скрипт делает разделы раскрывающимися на телефоне */
.rd-footer-nav-toggle{display:block;width:100%;padding:0;border:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;text-align:left;text-transform:inherit}
.rd-footer-nav-toggle i{display:none;font-size:18px;font-style:normal;font-weight:300;transition:transform .25s}

@media(max-width:1100px){
  #footer.rd-megafooter>.container{width:var(--tsn-shell,calc(100% - 28px))}
  #footer .rd-footer-cta{grid-template-columns:minmax(0,1fr);align-items:start;padding-top:64px}
  #footer .footer__bottom{display:flex;flex-direction:column;align-items:stretch;gap:48px}
  #footer .footer__item--description{order:1}
  #footer .footer__bottom>.navigation{order:2}
  #footer .footer__item--subscribe{order:3}
  #footer .footer__item--contacts{order:4}
}
@media(max-width:760px){
  #footer.rd-megafooter{border-radius:28px 28px 0 0!important}
  .rd-footer-under{height:28px;margin-bottom:-28px}
  #footer.rd-megafooter:before{top:auto;bottom:-210px;right:-210px;width:420px;height:420px}
  #footer .rd-footer-cta{padding-top:56px}
  #footer .rd-footer-cta a{width:100%;justify-content:space-between}
  #footer .footer__inner{padding-top:48px}
  #footer .footer__top{margin-bottom:32px}
  #footer .navigation__list--two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}
  #footer .footer__logo-img{height:51px}
  #footer .navigation__inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 24px}
  #footer .navigation__item{grid-column:auto!important}
  #footer .footer__copyright{margin-top:48px;gap:12px 24px}
  #footer .footer__copyright-text{flex-basis:100%}
  /* раскрывающиеся разделы только там, где скрипт поставил кнопки */
  #footer .navigation__inner:has(.rd-footer-nav-toggle){display:block!important}
  #footer .navigation__item:has(.rd-footer-nav-toggle){border-top:1px solid #ffffff1f!important}
  #footer .navigation__item:has(.rd-footer-nav-toggle):last-child{border-bottom:1px solid #ffffff1f!important}
  #footer .navigation__item:has(.rd-footer-nav-toggle) .navigation__item-title{margin:0}
  .rd-footer-nav-toggle{display:flex;align-items:center;justify-content:space-between;padding:19px 0;color:#eef4fa}
  .rd-footer-nav-toggle i{display:block}
  .navigation__item.is-open .rd-footer-nav-toggle i{transform:rotate(45deg)}
  #footer .navigation__item:has(.rd-footer-nav-toggle) .navigation__list{max-height:0;overflow:hidden;opacity:0;transition:max-height .38s ease,opacity .25s ease,padding .38s ease}
  #footer .navigation__item.is-open:has(.rd-footer-nav-toggle) .navigation__list{max-height:560px;padding:1px 0 23px;opacity:1}
}
@media(prefers-reduced-motion:reduce){
  #footer *{transition:none!important}
}

/* /assets/home/infobanner.css?v=1-banner */
/* Баннер записи на поток. Разметку и тексты подставляет админка, поэтому
   здесь только оформление: ни один класс не переименован, ни одна ссылка
   не тронута — меняются цвета, шрифты и отступы.

   Было: фиолетовая плашка с кислотно-зелёной датой, розовым бейджем и
   жёлтой кнопкой — со страницами клуба это не сочеталось никак. Стало:
   светлый блок в тех же тонах, что остальной сайт, с тёмной датой как
   единственным сильным акцентом.

   Селектор начинается с body:not(.theme-scale): на главной баннер уже
   оформлен своим блоком, и его трогать нельзя. */

body:not(.theme-scale) .infobanner{
  position:relative;overflow:hidden;
  padding:clamp(34px,4vw,56px) clamp(22px,3.4vw,54px);
  border:1px solid #d7e2ec;border-radius:6px;
  background:
    radial-gradient(120% 130% at 88% 0%,#dbe9f7 0%,transparent 58%),
    linear-gradient(180deg,#f2f6fa,#eaf1f7);
}
/* Декоративные волны нарисованы под фиолетовый фон: на светлом они
   выглядят пятном. Вместо них — своя сетка, та же, что в первом экране. */
body:not(.theme-scale) .infobanner__svg{display:none}
body:not(.theme-scale) .infobanner:before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:linear-gradient(#b9cee133 1px,transparent 1px),
                   linear-gradient(90deg,#b9cee133 1px,transparent 1px);
  background-size:78px 78px;
  -webkit-mask-image:radial-gradient(75% 85% at 78% 0%,#000,transparent 70%);
  mask-image:radial-gradient(75% 85% at 78% 0%,#000,transparent 70%);
}
body:not(.theme-scale) .infobanner__inner{position:relative;z-index:1;gap:26px}

/* Дата и площадка — главный акцент блока. */
body:not(.theme-scale) .infobanner__title{
  padding:13px 20px;border-radius:5px;
  background-color:#0d2338;color:#f2f7fc;
  font-size:clamp(21px,2.1vw,30px);font-weight:500;letter-spacing:-.015em;
}
body:not(.theme-scale) .infobanner__float{
  top:-13px;right:-26px;padding:5px 11px;
  background-color:#4dc9e8;color:#06131f;
  font-size:10px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;
}
body:not(.theme-scale) .infobanner__subtitle{
  font:400 clamp(25px,2.6vw,38px)/1.15 Georgia,'Times New Roman',serif;
  letter-spacing:-.025em;color:#0d2338;
}
body:not(.theme-scale) .infobanner__text{
  max-width:560px;color:#5d7285;font-size:14px;line-height:1.75;
}

body:not(.theme-scale) .infobanner__button{
  max-width:none;width:auto;height:auto;min-height:58px;
  padding:0 30px;border-radius:5px;
  background-color:#15293f;color:#f2f7fc;
  font-size:14px;font-weight:500;
  transition:background-color .2s,transform .2s;
}
body:not(.theme-scale) .infobanner__button:hover{background-color:#0a1a2a;transform:translateY(-2px)}
/* Стрелка рисовалась тёмной под жёлтую кнопку — на тёмной её не видно. */
body:not(.theme-scale) .infobanner__arrow,
body:not(.theme-scale) .infobanner__button:hover .infobanner__arrow{stroke:#f2f7fc}

@media(max-width:700px){
  body:not(.theme-scale) .infobanner__float{right:-8px}
  body:not(.theme-scale) .infobanner__button{width:100%;padding:0 20px}
}

/* /assets/home/app-promo.css?v=3-app-promo */
/* Приложение клуба в блоке «Присоединяйтесь к нам».
   Раньше App Store и Google Play стояли пунктами в списке соцсетей и
   читались как «ещё две ссылки». Теперь это отдельный блок с призывом
   и двумя кнопками магазинов. */

.app-promo{
  display:flex;
  flex-direction:column;
  align-items:center;
  margin-top:30px;
  padding-top:26px;
  border-top:1px solid rgba(12,31,49,.14);
  text-align:center;
}
.app-promo__text{
  margin:0 0 20px;
  max-width:52ch;
  color:#40576c;
  font-size:16px;
  line-height:1.5;
  text-wrap:balance;
}
.app-promo__stores{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  justify-content:center;
}
/* Стеклянная подложка: полупрозрачная, с размытием того, что за ней,
   и светлой каймой по краю — так же сделаны круглые иконки соцсетей. */
.app-promo__store{
  display:inline-flex;
  align-items:center;
  gap:12px;
  min-height:60px;
  padding:0 24px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:14px;
  background:rgba(255,255,255,.42);
  box-shadow:0 8px 24px rgba(12,31,49,.08), inset 0 1px 0 rgba(255,255,255,.7);
  backdrop-filter:blur(10px) saturate(1.15);
  -webkit-backdrop-filter:blur(10px) saturate(1.15);
  color:#0c1f31;
  text-decoration:none;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.app-promo__store:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.62);
  box-shadow:0 12px 30px rgba(12,31,49,.12), inset 0 1px 0 rgba(255,255,255,.8);
}
.app-promo__store:focus-visible{outline:2px solid #4dc9e8;outline-offset:3px}
.app-promo__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  flex:0 0 28px;
}
.app-promo__icon svg{width:100%;height:100%}
.app-promo__label{display:flex;flex-direction:column;line-height:1.2;text-align:left}
.app-promo__label small{
  color:#6a8095;
  font-size:10px;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.app-promo__label strong{
  margin-top:3px;
  font-size:16px;
  font-weight:600;
}

/* Тёмный фон блока «Присоединяйтесь» встречается на части страниц:
   там рамка и подпись по светлому не читаются. */
.contacts__join--dark .app-promo__store,
.section--dark .app-promo__store{
  border-color:rgba(156,201,245,.24);
  background:rgba(255,255,255,.06);
  color:#edf5fb;
}

@media(max-width:560px){
  .app-promo__stores{width:100%;flex-direction:column;align-items:stretch}
  .app-promo__store{justify-content:center}
}

/* Иконка App Store нарисована белой — она задумана для тёмной плашки
   и на светлой кнопке сливалась с фоном. Перекрашиваем в цвет текста. */
.app-promo__store--appstore .app-promo__icon svg [fill="white"],
.app-promo__store--appstore .app-promo__icon svg [fill="#FAFAFA"],
.app-promo__store--appstore .app-promo__icon svg [fill="#fafafa"]{
  fill:currentColor;
}

/* /assets/home/cookie-notice.css?v=3-cookie-helper */
/* Плашка про cookie: узкая полоса по центру нижнего края.
   Раньше это было белое полотно во весь экран, потом — квадратная
   карточка в углу. Здесь середина: широкая, невысокая, по центру.
   z-index намеренно выше всех слоёв сайта: плашку перекрывали блоки
   главной, и человек не мог её закрыть. */
.terra-cookie{
  position:fixed;
  z-index:2147483000;
  left:50%;
  bottom:22px;
  display:flex;
  gap:20px;
  align-items:center;
  width:min(calc(100% - 32px),620px);
  padding:16px 20px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:16px;
  background:rgba(11,29,45,.94);
  color:#dce7f1;
  font-size:13.5px;
  line-height:1.5;
  text-align:center;
  transform:translateX(-50%);
  box-shadow:0 20px 50px rgba(4,14,24,.38);
  backdrop-filter:blur(14px) saturate(1.1);
}
.cookie-ok .terra-cookie{display:none}

.terra-cookie__text{
  flex:1 1 auto;
  margin:0;
  text-align:center;
}
/* Каждая мысль своей строкой: где-то это одна фраза, где-то две,
   и перенос по смыслу читается лучше, чем по краю плашки. */
.terra-cookie__text span{display:block}
.terra-cookie__text a{
  display:inline-block;
  margin-top:4px;
  color:#8fd2f0;
  text-decoration:underline;
  text-underline-offset:3px;
}
.terra-cookie__text a:hover{color:#bfe6f8}

.terra-cookie__ok{
  flex:0 0 auto;
  min-height:38px;
  padding:0 22px;
  border:0;
  border-radius:10px;
  background:#9cc9f5;
  color:#07131f;
  font:inherit;
  font-size:13.5px;
  font-weight:600;
  cursor:pointer;
  transition:background .2s ease;
}
.terra-cookie__ok:hover{background:#c3e0fb}
.terra-cookie__ok:focus-visible{outline:2px solid #4dc9e8;outline-offset:2px}

@media(max-width:620px){
  .terra-cookie{
    flex-direction:column;
    gap:12px;
    bottom:12px;
    width:calc(100% - 24px);
    padding:14px 16px;
    font-size:13px;
  }
  .terra-cookie__ok{width:100%}
}

/* На телефоне плашка занимает весь низ экрана, а кнопка помощника
   висит в правом нижнем углу поверх неё и закрывает кнопку «Хорошо».
   Пока согласие не дано, помощник на узком экране прячется; после
   нажатия он появляется на своём месте. */
@media(max-width:620px){
  html:not(.cookie-ok) .tf-open{
    opacity:0;
    pointer-events:none;
    transform:translateY(16px);
  }
  .tf-open{transition:opacity .25s ease,transform .25s ease}
}

/* /assets/home/school-catalog.css?v=15-foto-niz */
@font-face{font-family:Onest;src:url('/assets/home/assets/onest-variable.woff2') format('woff2');font-weight:300 500;font-display:swap}
:root{--ink:#06111f;--ink2:#0b1f36;--paper:#f2f5f8;--paper2:#f2f5f8;--text:#0b1f36;--muted:#5b6d89;--line:#b9c9d8;--blue:#b9c9d8;--gold:#d4aa61;--shell:var(--tsn-shell,min(100% - 96px,1760px))}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;background:var(--ink)}body{margin:0;background:var(--paper);color:var(--text);font-family:Onest,Arial,sans-serif;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.shell{width:var(--shell);margin-inline:auto}.skip-link{position:fixed;z-index:20000;left:15px;top:10px;padding:12px 16px;background:#ffffff;color:#0b1f36;transform:translateY(-150%)}.skip-link:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.section-index{color:#8fa5bb;font-size:13px;font-weight:500;letter-spacing:0;text-transform:none}

.catalog-hero{position:relative;height:100svh;min-height:760px;padding-top:84px;background:var(--ink);color:#eef4fa;overflow:hidden;display:grid;grid-template-rows:minmax(0,1fr) auto}.hero-grid{position:absolute;inset:84px 0 0;background-image:linear-gradient(rgba(143,165,187,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(143,165,187,.045) 1px,transparent 1px);background-size:18vw 18vw;mask-image:linear-gradient(to right,#000000,transparent 92%)}.hero-orbits{position:absolute;width:min(68vw,1100px);aspect-ratio:1;right:-25vw;top:-24vw;border:1px solid rgba(185,201,216,.2);border-radius:50%;box-shadow:0 0 0 9vw rgba(185,201,216,.016),0 0 0 18vw rgba(185,201,216,.012)}.hero-orbits:before,.hero-orbits:after{content:"";position:absolute;border:1px solid rgba(185,201,216,.12);border-radius:50%}.hero-orbits:before{inset:13%}.hero-orbits:after{inset:31%}.hero-orbits i{position:absolute;width:7px;height:7px;border-radius:50%;background:#b9c9d8;box-shadow:0 0 18px #b9c9d8}.hero-orbits i:nth-child(1){left:3%;top:43%}.hero-orbits i:nth-child(2){left:29%;bottom:3%;background:#d4aa61;box-shadow:0 0 18px #d4aa61}.hero-orbits i:nth-child(3){right:5%;top:39%}.hero-layout{position:relative;z-index:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.55fr);gap:8vw;align-items:center;padding:42px 0 28px}.breadcrumbs{margin-bottom:26px;display:flex;gap:13px;color:#5b6d89;font-size:13px;letter-spacing:0;text-transform:none}.breadcrumbs a:hover{color:#ffffff}.eyebrow{color:#8fa5bb;font-size:13px;font-weight:500;letter-spacing:0;text-transform:none}.hero-copy h1{max-width:1150px;margin:23px 0 22px;font-family:TerraOnest,Onest,Arial,sans-serif;font-size:clamp(67px,6.7vw,126px);font-weight:400;line-height:.84;letter-spacing:-.065em}.hero-copy>p{max-width:780px;margin:0;color:#8fa5bb;font-size:clamp(15px,1.2vw,21px);line-height:1.55}.hero-link{margin-top:30px;padding-bottom:8px;border-bottom:1px solid rgba(185,201,216,.32);display:inline-flex;gap:42px;color:#d6e2ee;font-size:12px}.hero-numbers{justify-self:end;width:min(31vw,500px);border-top:1px solid rgba(184,195,212,.22);display:grid;grid-template-columns:1fr 1fr}.hero-numbers>div{min-height:210px;padding:24px 0;border-bottom:1px solid rgba(184,195,212,.18);display:flex;align-items:flex-end;gap:15px}.hero-numbers>div+div{padding-left:25px;border-left:1px solid rgba(184,195,212,.18)}.hero-numbers strong{font:400 clamp(80px,8vw,140px)/.75 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.08em}.hero-numbers span{padding-bottom:5px;color:#8fa5bb;font-size:13px;line-height:1.4;text-transform:none;letter-spacing:0}.hero-numbers p{grid-column:1/-1;margin:20px 0 0;color:#5b6d89;font-size:13px;line-height:1.6;letter-spacing:0;text-transform:none}.hero-bottom{position:relative;z-index:1;min-height:80px;border-top:1px solid rgba(184,195,212,.17);display:flex;align-items:center;justify-content:space-between;color:#8fa5bb;font-size:13px;letter-spacing:0;text-transform:none}.hero-bottom span+span:before{content:"·";margin-right:7vw;color:#5b6d89}

.catalog{padding:100px 0 130px;background:var(--paper)}.section-head{padding-bottom:48px;border-bottom:1px solid var(--line)}.section-head .section-index{margin-bottom:20px}.section-head h2{max-width:1500px;margin:0;font-size:clamp(53px,5.9vw,112px);font-weight:400;line-height:.94;letter-spacing:-.06em}.section-head p{max-width:760px;margin:26px 0 0;color:var(--muted);font-size:16px;line-height:1.55}.catalog-tools{position:sticky;z-index:20;top:84px;margin-top:34px;padding:15px 0;display:grid;grid-template-columns:auto minmax(300px,1fr) auto;gap:28px;align-items:center;background:rgba(242,245,248,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.type-switch{height:52px;display:flex}.type-switch button{padding:0 16px;border:1px solid #b8c3d4;border-right:0;background:transparent;color:#5b6d89;font-size:13px;cursor:pointer}.type-switch button:last-child{border-right:1px solid #b8c3d4}.type-switch small{margin-left:8px;color:#8fa5bb;font-size:13px}.type-switch button.is-active{background:#0b1f36;border-color:#0b1f36;color:#ffffff}.type-switch button.is-active+button{border-left-color:#0b1f36}.search-field{min-width:0;height:52px;display:flex;align-items:center;border-bottom:1px solid #b8c3d4}.search-field svg{width:20px;height:20px;margin-right:15px;fill:none;stroke:#173566;stroke-width:1.5}.search-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-size:14px}.search-field input::placeholder{color:#8fa5bb}.search-field kbd{padding:5px 8px;border:1px solid #b8c3d4;color:#5b6d89;font:500 13px Onest,sans-serif}.mobile-filter-button{height:52px;padding:0 16px;border:1px solid #173566;background:#0b1f36;color:#ffffff;display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}.mobile-filter-button span{width:18px;height:18px;border-radius:50%;background:#d4aa61;color:#0b1f36;display:grid;place-items:center;font-size:13px}.filter-panel{padding:25px 0 24px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) 180px 180px;gap:26px;align-items:end}.filter-panel__head,.apply-filter,.filter-scrim{display:none}.filter-block>span,.select-field>span{display:block;margin-bottom:11px;color:#5b6d89;font-size:13px;font-weight:500;letter-spacing:0;text-transform:none}.filter-block>div{display:flex;flex-wrap:wrap;gap:6px}.filter-block button{min-height:36px;padding:0 12px;border:1px solid #b9c9d8;background:transparent;color:#5b6d89;font-size:13px;cursor:pointer}.filter-block button.is-active{border-color:#173566;background:#0b1f36;color:#ffffff}.select-field select{width:100%;height:38px;padding:0 30px 0 11px;border:0;border-bottom:1px solid #b8c3d4;border-radius:0;background:transparent;color:#173566;font-size:13px}.catalog-meta{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.catalog-meta p{margin:0;color:#5b6d89;font-size:13px;text-transform:none;letter-spacing:0}.catalog-meta strong{color:#0b1f36;font-size:18px;font-weight:500}.catalog-meta button,.empty-state button{padding:0 0 6px;border:0;border-bottom:1px solid #b8c3d4;background:transparent;color:#5b6d89;font-size:13px;cursor:pointer}.subsection-head{padding:55px 0 30px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr .6fr;gap:7vw;align-items:end}.subsection-head span{color:#5b6d89;font-size:13px;font-weight:500;letter-spacing:0;text-transform:none}.subsection-head h3{margin:12px 0 0;font:400 clamp(42px,4vw,72px)/1 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.045em}.subsection-head p{margin:0;color:#5b6d89;font-size:13px;line-height:1.55}.course-list{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.sc-card{position:relative;min-height:420px;padding:42px;background:#0b1f36;color:#eef4fa;border-right:1px solid rgba(185,201,216,.18);overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.sc-card:nth-child(2){background:#0b1f36;border-right:0}.sc-card:before{content:"";position:absolute;width:430px;height:430px;border:1px solid rgba(185,201,216,.22);border-radius:50%;right:-190px;top:-230px;box-shadow:0 0 0 55px rgba(185,201,216,.025)}.sc-card:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#b9c9d8;right:25%;top:18%;box-shadow:0 0 16px #b9c9d8}.sc-card>*{position:relative;z-index:1}.sc-card__top{display:flex;justify-content:space-between;color:#8fa5bb;font-size:13px;letter-spacing:0;text-transform:none}.sc-card h4{max-width:680px;margin:44px 0 18px;font:400 clamp(43px,4vw,70px)/.96 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.045em}.sc-card p{max-width:570px;margin:0;color:#8fa5bb;font-size:14px;line-height:1.55}.sc-card__bottom{margin-top:50px;padding-top:20px;border-top:1px solid rgba(185,201,216,.18);display:flex;justify-content:space-between;align-items:center}.sc-card__bottom span{font-size:13px;letter-spacing:0;text-transform:none}.sc-card__bottom i{font-style:normal;font-size:22px;transition:transform .25s}.sc-card:hover .sc-card__bottom i{transform:translate(5px,-5px)}
.schools-block{padding-top:15px}.school-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line)}.school-card{position:relative;min-width:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;background:#f2f5f8;transition:background .25s,color .25s}.school-cover{position:relative;aspect-ratio:1.33;overflow:hidden;background:#0b1f36}.school-cover img{width:100%;height:100%;object-fit:cover;filter:saturate(.78) contrast(.97);transition:transform .5s cubic-bezier(.22,1,.36,1),filter .3s}.school-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(6,17,31,.42))}.school-cover--type{padding:25px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(135deg,#0b1f36,#173566)}.school-cover--type:before{content:"";position:absolute;width:280px;height:280px;border:1px solid rgba(185,201,216,.25);border-radius:50%;right:-130px;top:-150px;box-shadow:0 0 0 36px rgba(185,201,216,.035)}.school-cover--type span{position:relative;z-index:1;color:#8fa5bb;font-size:13px;letter-spacing:0;text-transform:none}.school-cover--type strong{position:relative;z-index:1;max-width:90%;font:400 clamp(26px,2.3vw,40px)/1 TerraOnest,Onest,Arial,sans-serif;color:#eef4fa}.school-card__body{min-height:230px;padding:25px;display:flex;flex-direction:column}.school-card__index{color:#8fa5bb;font-size:13px;letter-spacing:0}.school-card h4{margin:22px 0 16px;font:400 clamp(25px,2vw,36px)/1.04 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.035em}.school-card__leader{margin:0;color:#5b6d89;font-size:13px}.school-card__meta{margin-top:auto;padding-top:22px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr auto;gap:12px;color:#5b6d89;font-size:13px;letter-spacing:0;text-transform:none}.school-card__meta i{font-style:normal;font-size:18px;transition:transform .25s}.school-card:hover{background:#d3dbe4}.school-card:hover .school-cover img{transform:scale(1.035);filter:saturate(.95)}.school-card:hover .school-card__meta i{transform:translate(4px,-4px)}.empty-state{min-height:380px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(170px,.35fr) 1fr;align-items:center}.empty-state>span{font:400 170px/.8 TerraOnest,Onest,Arial,sans-serif;color:#b9c9d8}.empty-state h3{margin:0 0 10px;font-size:31px;font-weight:500}.empty-state p{max-width:540px;margin:0 0 24px;color:#5b6d89;line-height:1.6}

.how-it-works{padding:110px 0;background:#0b1f36;color:#eef4fa}.how-layout{display:grid;grid-template-columns:minmax(380px,.85fr) minmax(520px,1.15fr);gap:8vw}.how-layout h2{margin:25px 0 0;font:400 clamp(49px,5vw,88px)/.96 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.055em}.how-layout ol{margin:0;padding:0;border-top:1px solid rgba(185,201,216,.2);list-style:none}.how-layout li{min-height:123px;border-bottom:1px solid rgba(185,201,216,.2);display:grid;grid-template-columns:55px 1fr;gap:28px;align-items:center}.how-layout li>span{color:#8fa5bb;font-size:13px;letter-spacing:0}.how-layout p{margin:0;color:#8fa5bb;font-size:13px;line-height:1.5}.how-layout strong{display:block;margin-bottom:6px;color:#eef4fa;font-size:20px;font-weight:500}.catalog-cta{padding:105px 0;background:#d4aa61;color:#0b1f36}.cta-layout{display:grid;grid-template-columns:1fr .85fr;gap:10vw;align-items:end}.cta-layout h2{margin:24px 0 0;font:400 clamp(58px,6vw,104px)/.9 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.06em}.cta-layout p{max-width:680px;margin:0 0 32px;font-size:16px;line-height:1.6}.cta-layout a{min-height:60px;padding:0 24px;background:#0b1f36;color:#ffffff;display:flex;align-items:center;justify-content:space-between;font-size:12px}.site-footer{padding:80px 0 30px;background:#06111f;color:#eef4fa}.footer-top{padding-bottom:42px;border-bottom:1px solid rgba(184,195,212,.17);display:grid;grid-template-columns:1fr 1fr auto;gap:50px;align-items:end}.footer-brand img{width:150px;height:auto}.footer-top p{margin:0;color:#8fa5bb;font-size:13px;line-height:1.55}.footer-top>a:last-child{color:#b9c9d8;font-size:12px}.footer-nav{padding:45px 0 55px;display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.footer-nav>div{display:flex;flex-direction:column}.footer-nav small{margin-bottom:14px;color:#5b6d89;font-size:13px;letter-spacing:0;text-transform:none}.footer-nav a{padding:7px 0;color:#8fa5bb;font-size:12px}.footer-nav a:hover{color:#ffffff}.footer-bottom{padding-top:24px;border-top:1px solid rgba(184,195,212,.14);display:flex;justify-content:space-between;color:#5b6d89;font-size:13px}

@media(max-width:1180px){:root{--shell:min(100% - 56px,1760px)}.catalog-hero{padding-top:72px}.hero-grid{inset:72px 0 0}.hero-copy h1{font-size:clamp(58px,7.5vw,90px)}.hero-layout{gap:5vw}.catalog-tools{top:72px;grid-template-columns:auto minmax(240px,1fr) auto}.school-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){:root{--shell:calc(100% - 36px)}.catalog-hero{height:auto;min-height:730px;padding-top:72px}.hero-layout{grid-template-columns:1fr;padding:54px 0 34px}.hero-copy h1{font-size:clamp(53px,11.5vw,78px)}.hero-numbers{display:none}.hero-bottom{min-height:76px;gap:26px;justify-content:flex-start;overflow:hidden;contain:layout paint}.hero-bottom span{white-space:nowrap}.hero-bottom span+span:before{margin-right:26px}.catalog{padding:72px 0 90px}.section-head h2{font-size:clamp(49px,9vw,72px)}.catalog-tools{grid-template-columns:1fr auto;gap:10px;background:#f2f5f8;backdrop-filter:none;-webkit-backdrop-filter:none}.type-switch{grid-column:1/-1}.type-switch button{flex:1}.search-field kbd{display:none}.filter-panel{position:fixed;z-index:10020;left:0;right:0;bottom:0;max-height:84svh;padding:25px 18px calc(20px + env(safe-area-inset-bottom));background:#f2f5f8;color:#0b1f36;display:block;overflow:auto;transform:translateY(105%);transition:transform .35s cubic-bezier(.22,1,.36,1);box-shadow:0 -30px 70px rgba(6,17,31,.25)}.filter-panel.is-open{transform:none}.filter-panel__head{margin-bottom:23px;display:flex;align-items:center;justify-content:space-between}.filter-panel__head small{display:block;margin-bottom:6px;color:#8fa5bb;font-size:13px;text-transform:none;letter-spacing:0}.filter-panel__head strong{font:400 27px TerraOnest,Onest,Arial,sans-serif}.filter-panel__head button{width:42px;height:42px;border:1px solid #b9c9d8;background:transparent;font-size:23px}.filter-block{margin-bottom:21px}.filter-block>div{display:grid;grid-template-columns:1fr 1fr}.filter-block button{min-height:48px;text-align:left}.select-field{display:block;margin:18px 0}.select-field select{height:48px;border:1px solid #b9c9d8;padding-left:14px}.apply-filter{width:100%;min-height:58px;margin-top:19px;border:0;background:#0b1f36;color:#ffffff;display:block;font-size:13px}.filter-scrim{position:fixed;z-index:10010;inset:0;background:rgba(6,17,31,.55);opacity:0;visibility:hidden;display:block;transition:opacity .25s,visibility .25s}.filter-scrim.is-open{opacity:1;visibility:visible}.course-list{grid-template-columns:1fr}.sc-card{min-height:360px;border-right:0;border-bottom:1px solid rgba(185,201,216,.18)}.school-grid{grid-template-columns:1fr 1fr}.school-card__body{min-height:220px}.subsection-head{grid-template-columns:1fr;gap:16px}.how-layout,.cta-layout{grid-template-columns:minmax(0,1fr);gap:52px}}
@media(max-width:560px){:root{--shell:calc(100% - 28px)}.catalog-hero{min-height:670px}.hero-copy h1{font-size:49px;line-height:.9}.hero-copy>p{font-size:14px}.hero-orbits{width:130vw;right:-78vw;top:5vh}.hero-bottom{min-height:64px}.catalog{padding-top:60px}.section-head{padding-bottom:34px}.section-head h2{font-size:44px}.section-head p{font-size:14px}.catalog-tools{top:72px;margin-top:22px;padding:10px 0}.type-switch{height:45px}.type-switch button{padding-inline:9px}.search-field input{font-size:13px}.search-field svg{width:17px;margin-right:9px}.mobile-filter-button{padding-inline:11px}.catalog-meta{height:62px}.subsection-head{padding-top:42px}.subsection-head h3{font-size:38px}.sc-card{min-height:330px;padding:28px 22px}.sc-card h4{font-size:42px}.school-grid{grid-template-columns:1fr}.school-cover{aspect-ratio:1.42}.school-card__body{min-height:205px;padding:22px}.school-card h4{font-size:31px}.empty-state{grid-template-columns:1fr;gap:30px;padding:60px 0}.empty-state>span{font-size:110px}.how-it-works,.catalog-cta{padding:75px 0}.how-layout{gap:40px}.how-layout h2{font-size:46px}.how-layout li{grid-template-columns:40px 1fr;gap:14px}.how-layout strong{font-size:17px}.footer-top{grid-template-columns:1fr;gap:28px}.footer-nav{grid-template-columns:1fr 1fr}.footer-bottom{gap:20px;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.filter-panel,.school-cover img,.school-card,.sc-card__bottom i{transition:none}}
@media(min-width:821px){.mobile-filter-button{display:none}}
/* Current production footer copy and internal-link graph. */
.footer-source-copy{display:grid;grid-template-columns:1fr 1fr 1fr;gap:45px;padding:0 0 46px;color:#8fa5bb;border-bottom:1px solid rgba(184,195,212,.16)}
.footer-source-copy p{margin:0;font-size:12px;line-height:1.6}
@media(min-width:961px){.footer-nav{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:960px){.footer-source-copy{grid-template-columns:1fr 1fr}.footer-source-copy p:last-child{grid-column:1/-1}}
@media(max-width:640px){.footer-source-copy{grid-template-columns:1fr}.footer-source-copy p:last-child{grid-column:auto}}

/* Ведущий на карточке курса: раньше курс показывался без имени,
   хотя у школ оно на карточке есть. */
.sc-card__leader{margin:14px 0 0;color:#8fa5bb;font-size:12px;letter-spacing:.01em}

/* Призыв «Не уверены, кого выбрать?» — светлым блоком, в цвет каталога:
   золотая заливка выбивалась из остального сайта, а подпись раздела
   («03 / Следующий поток») на ней почти не читалась (29.09.2026). */
.catalog-cta{background:var(--paper)}
.catalog-cta .section-index{color:#5b6d89}
/* Курсов три (03.10.2026). На широком экране в ряд; в две колонки третий
   растягивается на всю ширину, чтобы не висел один под двумя. */
@media(min-width:1181px){.course-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:821px) and (max-width:1180px){.course-list>:nth-child(3):last-child{grid-column:1/-1}}

/* Правило Михаила (04.10.2026): заголовок и подзаголовок — столбиком,
   оба на всю ширину страницы, до края контейнера. Заголовок слева и подзаголовок
   справа, а также заголовки «на полстраницы» не делаем: это выдаёт шаблон. */
.hero-layout,.subsection-head,.how-layout,.cta-layout{grid-template-columns:minmax(0,1fr)}
.hero-layout{gap:40px}
.subsection-head{gap:16px;align-items:start}
.how-layout,.cta-layout{gap:44px}
.hero-copy h1,.hero-copy>p,.section-head :is(h2,p),.subsection-head :is(h2,h3,p),.how-layout h2,.cta-layout :is(h2,p){max-width:none}
.hero-numbers{justify-self:stretch;width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}
.hero-numbers>div{min-height:150px}
.hero-numbers{grid-template-columns:repeat(2,minmax(0,1fr))}

/* Четыре курса — сеткой 2×2: в три колонки четвёртый оставался один
   в ряду (13.10.2026, курс «Формула продаж»). */
@media(min-width:821px){.course-list[data-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.course-list[data-count="4"]>:nth-child(3):last-child{grid-column:auto}}
/* Четыре курса сеткой 2×2 (15.10.2026, «страница курсов поехала»): в ряду
   названия начинаются на одной высоте, ссылка прижата к низу, фон
   шахматкой. Раньше карточки центровались по высоте, и короткая висела
   посреди пустоты рядом с длинной, а светлой была только вторая. */
@media(min-width:821px){
.course-list[data-count="4"] .sc-card{justify-content:flex-start}
.course-list[data-count="4"] .sc-card__bottom{margin-top:auto}
.course-list[data-count="4"] .sc-card>div:nth-child(2){padding-bottom:40px}
.course-list[data-count="4"] .sc-card h4{font-size:clamp(38px,3.3vw,58px)}
.course-list[data-count="4"] .sc-card:nth-child(1),.course-list[data-count="4"] .sc-card:nth-child(4){background:#0b1f36}
.course-list[data-count="4"] .sc-card:nth-child(2),.course-list[data-count="4"] .sc-card:nth-child(3){background:#0b1f36}
.course-list[data-count="4"] .sc-card:nth-child(odd){border-right:1px solid rgba(185,201,216,.18)}
.course-list[data-count="4"] .sc-card:nth-child(even){border-right:0}
.course-list[data-count="4"] .sc-card:nth-child(-n+2){border-bottom:1px solid rgba(185,201,216,.18)}}
.sc-card__sub{display:block;margin:-8px 0 16px;color:#ffffff;font-size:15px;font-weight:500;line-height:1.35}
@media(max-width:820px){.course-list[data-count="4"] .sc-card:nth-child(odd){background:#0b1f36}
.course-list[data-count="4"] .sc-card:nth-child(even){background:#0b1f36}}

/* ── По брендбуку, 16.10.2026 ────────────────────────────────────────────
   Каталог школ приведён к брендбуку (/o-klube/brendbuk/): Onest, жирность
   300/400/500, заголовки блоков одного размера, воздух 128/36/56, без
   подписей над заголовками, линий под ними и между пунктами, без клетки и
   свечений на первом экране. Школы и курсы стоят карточками со скруглением
   12. Голубого нет (Михаил, 16.10.2026: школы по брендбуку). */

:root{--shell:var(--tsn-shell,calc(100% - 28px))}
body{background:#f2f5f8}
/* У body высота в экран (общие стили сайта), ниже него виден фон html: был тёмный,
   и промежутки между блоками ниже первого экрана выходили тёмными полосами. */
html{background:#f2f5f8}
/* Строки без одного слова в конце: короткие тексты выравниваем по длине. */
#content :is(h1,h2,h3,h4,li,strong){text-wrap:balance}
#content p{text-wrap:pretty}
#content :is(.sc-card p,.subsection-head p,.how-layout p){text-wrap:balance}

/* Первый экран: свет в правом верхнем углу, кольца без свечения, без клетки. */
.catalog-hero{height:auto;min-height:clamp(620px,80svh,820px);background:radial-gradient(circle at 88% 0%,rgba(23,53,102,.62),transparent 52%),linear-gradient(160deg,#0b1f36,#06111f 72%)}
.hero-grid{display:none}
.hero-orbits{box-shadow:none}
.hero-orbits i,.hero-orbits i:nth-child(2){box-shadow:none}
.hero-copy h1{margin:0 0 36px;font:400 clamp(40px,5.6vw,104px)/1 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.035em}
.hero-copy>p{color:#b9c9d8;font-size:clamp(17px,1.2vw,21px);line-height:1.5}
.hero-link{font-size:15px}
.breadcrumbs{margin-bottom:36px;font-size:13px}
.hero-numbers strong{font-weight:300;font-size:clamp(64px,6vw,104px);letter-spacing:-.04em}
.hero-numbers span,.hero-numbers p{font-size:14px;line-height:1.4}
.hero-bottom{font-size:14px}

/* Заголовки блоков: один размер; подзаголовки разделов каталога того же
   размера, они тоже открывают блок. Под заголовком 36 px до подводки. */
.section-head h2,.subsection-head h3,.how-layout h2,.cta-layout h2{margin:0;font:400 clamp(30px,3.6vw,52px)/1.06 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.03em}
.section-head{padding-bottom:0;border-bottom:0}
.section-head p{margin:36px 0 0;color:#5b6d89;font-size:17px;line-height:1.6}
.subsection-head{gap:36px;padding:clamp(72px,8vw,104px) 0 56px;border-bottom:0}
.subsection-head p{color:#5b6d89;font-size:17px;line-height:1.6}

/* Между блоками 128 px, на телефоне 72. */
.catalog,.how-it-works,.catalog-cta{padding:clamp(72px,10vw,128px) 0}
.catalog-tools{margin-top:56px}

/* Фильтры и поиск: интерфейсный текст 14-15 px, кнопки 4 px. */
.type-switch button,.filter-block button{font-size:14px;border-radius:0}
.type-switch button:first-child{border-radius:4px 0 0 4px}
.type-switch button:last-child{border-radius:0 4px 4px 0}
.filter-block button{border-radius:4px}
.type-switch small{font-size:12px}
.filter-block>span,.select-field>span{color:#5b6d89;font-size:13px}
.select-field select,.search-field input{font-size:15px}
.type-switch button.is-active,.filter-block button.is-active,.mobile-filter-button{border-color:#173566;background:#173566}
.filter-panel,.catalog-meta,.empty-state{border-bottom:0}
.catalog-meta p{font-size:14px}
.catalog-meta strong{font-size:19px;font-weight:500}
.catalog-meta button,.empty-state button{font-size:14px}
.empty-state>span{font-weight:300}

/* Курсы: тёмные карточки с промежутком, без колец и светящихся точек на каждой. */
.course-list,.course-list[data-count="4"]{gap:16px;border-bottom:0}
.sc-card,.course-list[data-count="4"] .sc-card:nth-child(n){border:0;border-radius:12px;background:#0b1f36}
.sc-card:before,.sc-card:after{content:none}
.sc-card h4,.course-list[data-count="4"] .sc-card h4{font:400 clamp(30px,2.4vw,36px)/1.1 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.02em}
.sc-card p{color:#b9c9d8;font-size:15px}
.sc-card__leader{font-size:14px}
.sc-card__top,.sc-card__bottom span{font-size:14px}
.sc-card__bottom{border-top:0;padding-top:0}

/* Школы: белые карточки с обводкой, скругление 12, промежуток 16. */
.school-grid{gap:16px;border-left:0}
.school-card{overflow:hidden;border:1px solid #d3dbe4;border-radius:12px;background:#fff}
.school-card:hover{border-color:#b8c3d4;background:#fff}
.school-cover--type strong{font:400 clamp(26px,2.2vw,32px)/1.1 TerraOnest,Onest,Arial,sans-serif}
.school-cover--type span,.school-card__index{font-size:13px}
.school-card h4{margin:16px 0 8px;font:500 22px/1.25 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.01em}
.school-card__leader{font-size:14px}
.school-card__meta{padding-top:16px;border-top:0;font-size:13px}

/* Как это устроено: шаги без линий, номера золотом на тёмном. */
.how-layout{gap:56px}
.how-layout ol{border-top:0;display:grid;gap:16px}
.how-layout li{min-height:0;border-bottom:0}
.how-layout li>span{color:#d4aa61;font-size:14px}
.how-layout strong{font-size:19px;font-weight:500}
.how-layout p{color:#b9c9d8;font-size:15px}

/* Призыв: мягкий градиент с кольцами, кнопка глубоким синим. */
.catalog-cta{position:relative;overflow:hidden;background-color:#dfe8ef;background-image:radial-gradient(circle at 86% 14%,rgba(127,181,218,.17),transparent 30%),linear-gradient(170deg,#e8eef3 0%,#fff 52%,#dfe8ef 100%);color:#0b1f36}
.catalog-cta:before,.catalog-cta:after{content:"";position:absolute;left:86%;top:14%;aspect-ratio:1;border:1px solid rgba(11,31,54,.1);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}
.catalog-cta:before{width:min(36vw,560px)}
.catalog-cta:after{width:min(62vw,980px);border-color:rgba(11,31,54,.06)}
.catalog-cta>.shell{position:relative;z-index:1}
.cta-layout{gap:36px}
.cta-layout p{margin:0 0 36px;color:#5b6d89;font-size:17px}
.cta-layout a{justify-self:start;gap:24px;min-height:52px;border-radius:4px;background:#173566;font-size:15px;font-weight:500}
.cta-layout a:hover{background:#0b1f36}

@media(max-width:560px){
  .hero-copy h1{margin-bottom:20px}
  .section-head p{margin-top:20px;font-size:16px}
  .subsection-head{gap:20px;padding:56px 0 32px}
  .subsection-head p,.cta-layout p{font-size:16px}
  .catalog-tools{margin-top:32px}
  .how-layout{gap:32px}
  .cta-layout{gap:20px}
  .school-cover--type strong,.filter-panel__head strong{font-size:22px}
  .cta-layout p{margin-bottom:24px}
  .school-card h4{font-size:19px}
  .sc-card h4,.course-list[data-count="4"] .sc-card h4{font-size:22px}
}

/* ── Каталог «как у наставников» (Михаил, 18.10.2026) ──────────────────
   Поиск, фильтры слева и карточки справа берут стили каталога наставников
   (mentor-catalog.css, обёртка .mentor-catalog). Здесь только то, что своё
   у школ: два раздела выдачи и сетки карточек без старых линий. */
[data-school-catalog] .catalog{background:#f2f5f8}
[data-school-catalog] .programs+.programs{margin-top:56px}
[data-school-catalog] .programs__head{margin:0 0 24px}
[data-school-catalog] .programs__head h3{margin:0;color:#0b1f36;font:400 clamp(26px,2.4vw,36px)/1.1 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.025em;text-wrap:balance}
[data-school-catalog] .programs__head p{max-width:none;margin:24px 0 0;color:#5b6d89;font-size:15px;line-height:1.55;text-wrap:pretty}
[data-school-catalog] .course-list,[data-school-catalog] .course-list[data-count]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;border:0}
[data-school-catalog] .course-list[data-count] .sc-card h4{font-size:clamp(28px,2.4vw,40px)}
[data-school-catalog] .school-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;border:0}
[data-school-catalog] .school-card,[data-school-catalog] .sc-card{border-radius:12px;overflow:hidden}
[data-school-catalog] [data-card][hidden],[data-school-catalog] [data-group][hidden]{display:none!important}
@media(max-width:1180px){[data-school-catalog] .school-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){[data-school-catalog] .course-list,[data-school-catalog] .course-list[data-count]{grid-template-columns:1fr}}
@media(max-width:560px){[data-school-catalog] .school-grid{grid-template-columns:1fr;gap:12px}[data-school-catalog] .programs+.programs{margin-top:40px}}
/* Стили каталога наставников красят заголовки тёмным: на тёмной карточке курса возвращаем белый */
[data-school-catalog] .sc-card h4,[data-school-catalog] .sc-card__bottom,[data-school-catalog] .sc-card__bottom span{color:#fff}

/* Обложки школ квадратом (Михаил, 18.10.2026: лица не помещались в кадр).
   Фото почти все квадратные или вертикальные, полоса 1,42 к 1 резала лоб и подбородок. */
[data-school-catalog] .school-cover{aspect-ratio:1}
/* Курсы с фото: снимок слева, текст справа на тёмном */
[data-school-catalog] .sc-card--photo{display:grid;grid-template-columns:minmax(150px,38%) minmax(0,1fr);grid-template-rows:auto 1fr auto;column-gap:32px;padding:0}
[data-school-catalog] .sc-card--photo::before,[data-school-catalog] .sc-card--photo::after{display:none}
[data-school-catalog] .sc-card__photo{grid-row:1/-1;position:relative;min-height:100%;overflow:hidden;background:#06111f}
[data-school-catalog] .sc-card__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.78)}
[data-school-catalog] .sc-card--photo>:not(.sc-card__photo){padding-right:32px}
/* Квадратное фото по низу колонки, выше продолжается стена снимка (photo_bg) */
[data-school-catalog] .sc-card__photo--niz img{top:auto;height:72%;object-position:42% bottom!important;
  -webkit-mask-image:linear-gradient(to bottom,transparent,#000 16%);mask-image:linear-gradient(to bottom,transparent,#000 16%)}
[data-school-catalog] .sc-card--photo .sc-card__top{padding-top:32px}
[data-school-catalog] .sc-card--photo .sc-card__bottom{margin-bottom:32px}
[data-school-catalog] .sc-card--photo h4{margin-top:28px}
@media(max-width:560px){
  [data-school-catalog] .sc-card--photo{grid-template-columns:1fr;grid-template-rows:auto}
  [data-school-catalog] .sc-card__photo{grid-row:auto;aspect-ratio:1;min-height:0}
  [data-school-catalog] .sc-card__photo--niz img{top:0;height:100%;-webkit-mask-image:none;mask-image:none}
  [data-school-catalog] .sc-card--photo>:not(.sc-card__photo){padding-left:22px;padding-right:22px}
  [data-school-catalog] .sc-card--photo .sc-card__top{padding-top:24px}
  [data-school-catalog] .sc-card--photo .sc-card__bottom{margin-bottom:24px}
}
[data-school-catalog] .course-list .sc-card--photo .sc-card__bottom{margin-top:24px}
[data-school-catalog] .course-list .sc-card--photo h4{font-size:clamp(28px,2.2vw,36px);line-height:1.06}

/* Куратор в карточке отдельной строкой (18.10.2026): общее правило .sc-card p
   обнуляло отступ, и имя куратора сливалось с описанием. */
.sc-card .sc-card__leader{margin-top:16px}

/* Точки на своих орбитах (18.10.2026). Раньше стояли процентами от квадрата и висели
   между кольцами. Центр точки = центр колец + радиус кольца под углом:
   внешнее кольцо 50%, среднее (inset 13%) 37%, малое (inset 31%) 19%. */
.hero-orbits i,.hero-orbits i:nth-child(n){right:auto;bottom:auto;transform:translate(-50%,-50%)}
.hero-orbits i:nth-child(1){left:6.70%;top:75%}       /* внешнее, 150° */
.hero-orbits i:nth-child(2){left:31.50%;top:82.04%}   /* среднее, 120°, золотая */
.hero-orbits i:nth-child(3){left:46.70%;top:68.71%}   /* малое, 100° */
@media(max-width:560px){
  /* На телефоне внешнее кольцо внизу слева почти не видно, точка на нём казалась висящей: прячем.
     Золотую ставим на среднее кольцо слева (180°), где кольцо видно и рядом нет текста. */
  .hero-orbits i:nth-child(1){display:none}
  .hero-orbits i:nth-child(2){left:13%;top:50%}
}

/* /assets/home/mentor-catalog.css?v=12-kvadrat */
/* Каталог наставников /nastavniki/ «как в интернет-магазине».
   Эталон: _материалы/эталон-katalog-nastavnikov/ (Codex, 29.09.2026).
   Всё заключено в .mentor-catalog: у эталона общие имена классов (.hero,
   .catalog, .button, .filters, .search, .cta) и глобальные правила на body,
   html и *, а на странице живут общие шапка и подвал сайта. */
@font-face{font-family:Onest;src:url('/assets/home/assets/onest-variable.woff2') format('woff2');font-weight:300 500;font-display:swap}
.mentor-catalog{background:var(--paper);color:var(--text);font-family:Onest,Arial,sans-serif}
.mentor-catalog *{box-sizing:border-box}
/* Открытая панель фильтров на телефоне не даёт листать страницу под собой. */
body.filters-open{overflow:hidden}
.mentor-catalog{--ink:#0b1f36;--ink2:#0b1f36;--paper:#f2f5f8;--paper2:#f2f5f8;--blue:#b9c9d8;--blue2:#d6e2ee;--gold:#d4aa61;--text:#0b1f36;--muted:#5b6d89;--line:#d6e2ee;--shell:var(--tsn-shell,min(100% - 96px,1760px))}.mentor-catalog body.filters-open{overflow:hidden}.mentor-catalog button,.mentor-catalog input,.mentor-catalog select,.mentor-catalog a{font:inherit}.mentor-catalog button{color:inherit}.mentor-catalog a{color:inherit;text-decoration:none}.mentor-catalog .shell{width:var(--shell);margin-inline:auto}.mentor-catalog .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mentor-catalog .catalog-page{min-height:100vh;background:var(--paper)}.mentor-catalog .hero{position:relative;overflow:hidden;padding:42px 0 48px;background:var(--ink);color:#eef4fa}.mentor-catalog .hero::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(185,201,216,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(185,201,216,.045) 1px,transparent 1px);background-size:160px 160px}.mentor-catalog .hero__crumbs{position:relative;display:flex;gap:12px;align-items:center;margin-bottom:62px;color:#8fa5bb;font-size:12px}.mentor-catalog .hero__layout{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:70px;align-items:end}.mentor-catalog .hero__eyebrow{margin:0 0 20px;color:var(--blue);font-size:13px;font-weight:500;letter-spacing:0;text-transform:none}.mentor-catalog .hero h1{max-width:900px;margin:0;font-size:clamp(62px,6.4vw,108px);font-weight:400;line-height:.9;letter-spacing:-.065em}.mentor-catalog .hero__lead{max-width:800px;margin:25px 0 0;color:#b9c9d8;font-size:18px;line-height:1.52}.mentor-catalog .hero__aside{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(185,201,216,.28);border-bottom:1px solid rgba(185,201,216,.28)}.mentor-catalog .hero__stat{padding:24px 0}.mentor-catalog .hero__stat+ .hero__stat{padding-left:28px;border-left:1px solid rgba(185,201,216,.28)}.mentor-catalog .hero__stat strong{display:block;font-size:48px;font-weight:400;line-height:1}.mentor-catalog .hero__stat span{display:block;margin-top:10px;color:#8fa5bb;font-size:12px;line-height:1.4}.mentor-catalog .catalog{padding:56px 0 88px}.mentor-catalog .catalog__top{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:30px}.mentor-catalog .catalog__top h2{margin:0;font-size:clamp(38px,4.2vw,66px);font-weight:500;line-height:.98;letter-spacing:-.052em}.mentor-catalog .catalog__top p{max-width:620px;margin:0;color:var(--muted);font-size:15px;line-height:1.55}.mentor-catalog .catalog-toolbar{position:relative;z-index:8;display:grid;grid-template-columns:minmax(280px,1fr) auto auto;gap:10px;margin-bottom:24px}.mentor-catalog .search{position:relative}.mentor-catalog .search svg{position:absolute;left:18px;top:50%;width:20px;fill:none;stroke:#173566;stroke-width:1.7;transform:translateY(-50%)}.mentor-catalog .search input,.mentor-catalog .sort select{width:100%;height:54px;border:1px solid #d3dbe4;border-radius:4px;background:#ffffff;color:var(--text);outline:0}.mentor-catalog .search input{padding:0 18px 0 52px}.mentor-catalog .search input:focus,.mentor-catalog .sort select:focus{border-color:#b8c3d4;box-shadow:0 0 0 3px rgba(185,201,216,.16)}.mentor-catalog .sort select{padding:0 46px 0 16px;appearance:none;background:#ffffff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%235d7285' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 16px center}.mentor-catalog .sort{min-width:220px}.mentor-catalog .mobile-filters{display:none;height:54px;padding:0 18px;border:1px solid #d3dbe4;border-radius:4px;background:#ffffff}.mentor-catalog .mobile-filters b{display:inline-grid;place-items:center;min-width:22px;height:22px;margin-left:9px;padding:0 6px;border-radius:99px;background:var(--ink);color:white;font-size:13px}.mentor-catalog .catalog-layout{display:grid;grid-template-columns:286px minmax(0,1fr);gap:30px;align-items:start}.mentor-catalog .filters{position:sticky;top:18px;border-top:2px solid var(--ink);background:#d3dbe4}.mentor-catalog .filters__mobile-head{display:none}.mentor-catalog .filter-group{padding:23px 22px;border-bottom:1px solid #d3dbe4}.mentor-catalog .filter-group__title{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:12px;font-weight:500;letter-spacing:0;text-transform:none}.mentor-catalog .filter-option{display:flex;align-items:center;gap:11px;min-height:37px;color:#173566;font-size:14px;cursor:pointer}.mentor-catalog .filter-option input{position:absolute;opacity:0}.mentor-catalog .filter-option__box{display:grid;place-items:center;flex:0 0 18px;width:18px;height:18px;border:1px solid #b8c3d4;border-radius:2px;background:#ffffff}.mentor-catalog .filter-option__box::after{content:"";width:8px;height:5px;border-left:2px solid white;border-bottom:2px solid white;transform:translateY(-1px) rotate(-45deg);opacity:0}.mentor-catalog .filter-option input:checked+.filter-option__box{border-color:var(--ink);background:var(--ink)}.mentor-catalog .filter-option input:checked+.filter-option__box::after{opacity:1}.mentor-catalog .filter-option small{margin-left:auto;color:#8fa5bb;font-size:13px}.mentor-catalog .filters__reset{width:100%;padding:17px 20px;border:0;background:transparent;color:#5b6d89;text-align:left;cursor:pointer}.mentor-catalog .filters__reset:disabled{opacity:.38;cursor:default}.mentor-catalog .filters__apply{display:none}.mentor-catalog .filter-scrim{display:none}.mentor-catalog .results{min-width:0}.mentor-catalog .results-head{display:flex;justify-content:space-between;gap:20px;align-items:center;min-height:38px;margin-bottom:18px}.mentor-catalog .results-head p{margin:0;color:#5b6d89;font-size:14px}.mentor-catalog .results-head strong{color:var(--text);font-size:18px}.mentor-catalog .active-filters{display:flex;flex-wrap:wrap;gap:7px}.mentor-catalog .filter-chip{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #b9c9d8;border-radius:3px;background:#eef4fa;color:#173566;font-size:12px;cursor:pointer}.mentor-catalog .filter-chip span{font-size:15px;line-height:1}.mentor-catalog .mentor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.mentor-catalog .product-card{min-width:0;display:flex;flex-direction:column;border:1px solid #d3dbe4;border-radius:5px;background:#ffffff;overflow:hidden;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.mentor-catalog .product-card:hover{transform:translateY(-3px);border-color:#b8c3d4;box-shadow:0 16px 40px rgba(11,31,54,.09)}.mentor-catalog .product-card[hidden]{display:none}.mentor-catalog .product-card__media{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;background:#d3dbe4}.mentor-catalog .product-card__media::after{content:"";position:absolute;inset:auto 0 0;height:35%;background:linear-gradient(transparent,rgba(6,17,31,.54));pointer-events:none}.mentor-catalog .product-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.22,.76,.2,1)}.mentor-catalog .product-card:hover .product-card__media img{transform:scale(1.025)}.mentor-catalog .product-card__level,.mentor-catalog .product-card__new{position:absolute;z-index:2;top:13px;padding:7px 9px;border-radius:3px;font-size:13px;font-weight:500;letter-spacing:0;text-transform:none}.mentor-catalog .product-card__level{left:13px;background:rgba(6,17,31,.88);color:white;backdrop-filter:blur(8px)}.mentor-catalog .product-card__new{right:13px;background:var(--blue);color:var(--ink)}.mentor-catalog .product-card__body{display:flex;flex:1;flex-direction:column;padding:20px}.mentor-catalog .product-card__sphere{margin:0 0 8px;color:#5b6d89;font-size:13px;font-weight:500;letter-spacing:0;text-transform:none}.mentor-catalog .product-card h3{min-height:54px;margin:0;font-size:22px;font-weight:500;line-height:1.12;letter-spacing:-.025em}.mentor-catalog .product-card__niche{min-height:45px;margin:10px 0 18px;color:#5b6d89;font-size:13px;line-height:1.45}.mentor-catalog .product-card__facts{display:grid;grid-template-columns:1fr 1fr;margin:auto 0 18px;padding-top:15px;border-top:1px solid #d3dbe4}.mentor-catalog .product-card__facts div+div{padding-left:12px;border-left:1px solid #d3dbe4}.mentor-catalog .product-card__facts dt{color:#8fa5bb;font-size:13px;line-height:1.3;text-transform:none}.mentor-catalog .product-card__facts dd{margin:6px 0 0;color:#173566;font-size:12px;font-weight:500}.mentor-catalog .product-card__actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.mentor-catalog .button{min-height:42px;display:grid;place-items:center;padding:10px;border:1px solid var(--ink);border-radius:3px;font-size:12px;font-weight:500;text-align:center}.mentor-catalog .button--ink{background:var(--ink);color:white}.mentor-catalog .button--ink:hover{background:#173566}.mentor-catalog .button--ghost:hover{background:#eef4fa}.mentor-catalog .empty{display:grid;grid-template-columns:auto 1fr;gap:30px;align-items:start;padding:54px 0;border-top:1px solid #b9c9d8;border-bottom:1px solid #b9c9d8}.mentor-catalog .empty[hidden]{display:none}.mentor-catalog .empty strong{color:#8fa5bb;font-size:70px;font-weight:400;line-height:1}.mentor-catalog .empty h3{margin:0;font-size:28px}.mentor-catalog .empty p{margin:10px 0 18px;color:var(--muted)}.mentor-catalog .empty button{padding:0;border:0;border-bottom:1px solid;background:transparent;cursor:pointer}.mentor-catalog .choice{padding:72px 0;background:#eef4fa}.mentor-catalog .choice__layout{display:grid;grid-template-columns:minmax(260px,.62fr) minmax(0,1.38fr);gap:70px}.mentor-catalog .choice__index,.mentor-catalog .cta__index{margin-bottom:18px;color:#5b6d89;font-size:13px;font-weight:500;letter-spacing:0;text-transform:none}.mentor-catalog .choice h2,.mentor-catalog .cta h2{margin:0;font-size:clamp(40px,4.3vw,72px);font-weight:500;line-height:.95;letter-spacing:-.055em}.mentor-catalog .choice ol{display:grid;grid-template-columns:repeat(3,1fr);margin:0;padding:0;list-style:none;border-top:1px solid #b9c9d8}.mentor-catalog .choice li{padding:22px 24px 0 0}.mentor-catalog .choice li+li{padding-left:24px;border-left:1px solid #b9c9d8}.mentor-catalog .choice li span{display:block;margin-bottom:22px;color:#5b6d89;font-size:13px}.mentor-catalog .choice li strong{display:block;margin-bottom:8px;font-size:16px}.mentor-catalog .choice li p{margin:0;color:#5b6d89;font-size:13px;line-height:1.5}.mentor-catalog .cta{padding:72px 0 86px;background:var(--paper)}.mentor-catalog .cta__layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;padding-top:28px;border-top:1px solid #b8c3d4}.mentor-catalog .cta__copy{justify-self:end;max-width:620px}.mentor-catalog .cta__copy p{margin:0 0 24px;color:#5b6d89;font-size:15px;line-height:1.55}.mentor-catalog .cta__button{display:inline-flex;justify-content:space-between;align-items:center;min-width:290px;padding:18px 20px;border-radius:4px;background:var(--ink);color:#ffffff;font-size:14px;font-weight:500}.mentor-catalog .cta__button:hover{background:#173566}
@media(min-width:1700px){.mentor-catalog .mentor-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1180px){.mentor-catalog{--shell:min(100% - 112px,1760px)}.mentor-catalog .hero__layout{gap:40px}.mentor-catalog .catalog-layout{grid-template-columns:250px minmax(0,1fr)}.mentor-catalog .mentor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mentor-catalog .product-card h3{min-height:auto}.mentor-catalog .choice__layout{grid-template-columns:1fr}.mentor-catalog .choice ol{margin-top:10px}}
@media(max-width:820px){.mentor-catalog{--shell:calc(100% - 72px)}.mentor-catalog .hero__crumbs{margin-bottom:42px}.mentor-catalog .hero__layout{grid-template-columns:1fr}.mentor-catalog .hero__aside{max-width:520px}.mentor-catalog .catalog__top{display:block}.mentor-catalog .catalog__top p{margin-top:18px}.mentor-catalog .catalog-toolbar{grid-template-columns:minmax(0,1fr) auto}.mentor-catalog .sort{grid-column:1/-1}.mentor-catalog .mobile-filters{display:block}.mentor-catalog .catalog-layout{display:block}.mentor-catalog .filters{position:fixed;z-index:30;inset:0 0 0 auto;width:min(90vw,380px);overflow:auto;transform:translateX(105%);transition:transform .28s cubic-bezier(.22,.76,.2,1);box-shadow:-20px 0 60px rgba(6,17,31,.22)}.mentor-catalog .filters.is-open{transform:none}.mentor-catalog .filters__mobile-head{position:sticky;z-index:2;top:0;display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid #d3dbe4;background:#d3dbe4}.mentor-catalog .filters__mobile-head strong{font-size:18px}.mentor-catalog .filters__mobile-head button{width:38px;height:38px;border:1px solid #b8c3d4;border-radius:50%;background:transparent;font-size:23px}.mentor-catalog .filters__apply{position:sticky;bottom:0;display:block;width:calc(100% - 32px);margin:16px;padding:17px;border:0;border-radius:3px;background:var(--ink);color:white}.mentor-catalog .filter-scrim{position:fixed;z-index:29;inset:0;display:block;background:rgba(6,17,31,.48);opacity:0;pointer-events:none;transition:opacity .22s}.mentor-catalog .filter-scrim.is-open{opacity:1;pointer-events:auto}.mentor-catalog .choice ol{grid-template-columns:1fr}.mentor-catalog .choice li{padding:20px 0}.mentor-catalog .choice li+li{padding-left:0;border-left:0;border-top:1px solid #b9c9d8}.mentor-catalog .cta__layout{grid-template-columns:1fr}.mentor-catalog .cta__copy{justify-self:start}}
@media(max-width:560px){.mentor-catalog{--shell:calc(100% - 28px)}.mentor-catalog .hero{padding-top:24px}.mentor-catalog .hero__crumbs{margin-bottom:38px}.mentor-catalog .hero h1{font-size:52px}.mentor-catalog .hero__lead{font-size:15px}.mentor-catalog .hero__aside{grid-template-columns:1fr 1fr;margin-top:8px}.mentor-catalog .hero__stat strong{font-size:38px}.mentor-catalog .catalog{padding-top:38px}.mentor-catalog .catalog__top h2{font-size:42px}.mentor-catalog .catalog-toolbar{grid-template-columns:1fr auto}.mentor-catalog .search input{padding-left:45px;font-size:13px}.mentor-catalog .mobile-filters{padding:0 13px}.mentor-catalog .sort{min-width:0}.mentor-catalog .results-head{display:block}.mentor-catalog .active-filters{margin-top:12px}.mentor-catalog .mentor-grid{grid-template-columns:1fr;gap:14px}.mentor-catalog .product-card{display:grid;grid-template-columns:43% 57%;min-height:244px}.mentor-catalog .product-card__media{height:100%;aspect-ratio:auto}.mentor-catalog .product-card__body{padding:15px}.mentor-catalog .product-card__sphere{font-size:13px}.mentor-catalog .product-card h3{font-size:18px}.mentor-catalog .product-card__niche{min-height:0;margin:7px 0 12px;font-size:13px}.mentor-catalog .product-card__facts{display:block;margin-bottom:12px;padding-top:10px}.mentor-catalog .product-card__facts div{display:flex;justify-content:space-between;gap:8px}.mentor-catalog .product-card__facts div+div{margin-top:5px;padding:0;border:0}.mentor-catalog .product-card__facts dt{font-size:13px}.mentor-catalog .product-card__facts dd{margin:0;font-size:13px;text-align:right}.mentor-catalog .product-card__actions{grid-template-columns:1fr}.mentor-catalog .button{min-height:34px;padding:7px;font-size:13px}.mentor-catalog .button--ghost{display:none}.mentor-catalog .product-card__level,.mentor-catalog .product-card__new{top:9px;padding:5px 6px;font-size:13px}.mentor-catalog .product-card__level{left:9px}.mentor-catalog .product-card__new{right:9px}.mentor-catalog .choice,.mentor-catalog .cta{padding:52px 0}.mentor-catalog .choice h2,.mentor-catalog .cta h2{font-size:44px}.mentor-catalog .cta__button{width:100%;min-width:0}.mentor-catalog .filters{width:calc(100vw - 28px)}}
@media(prefers-reduced-motion:reduce){.mentor-catalog .product-card,.mentor-catalog .product-card__media img,.mentor-catalog .filters,.mentor-catalog .filter-scrim{transition:none}}

/* ── Под живой сайт ────────────────────────────────────────────────── */

/* Шапка сайта фиксированная, в эталоне её нет: первый экран отступает
   от её высоты, иначе крошки уходят под неё. Колонка фильтров «прилипает»
   ниже шапки. */
.mentor-catalog .hero{padding-top:calc(var(--tsn-h,84px) + 42px)}
.mentor-catalog .filters{top:calc(var(--tsn-h,84px) + 18px)}
@media(max-width:560px){.mentor-catalog .hero{padding-top:calc(var(--tsn-h,72px) + 24px)}}
/* Панель фильтров на телефоне — поверх шапки сайта (у неё слой 10000)
   и плашки cookie: это окно выбора, под шапкой терялась кнопка «Закрыть». */
@media(max-width:820px){
  .mentor-catalog .filters{z-index:2147483100;top:0}
  .mentor-catalog .filter-scrim{z-index:2147483090}
}
/* Наставник без фото — инициалы вместо картинки. */
.mentor-catalog .product-card__initials{display:grid;place-items:center;width:100%;height:100%;background:radial-gradient(circle at 32% 28%,#173566 0%,#173566 55%,#0b1f36 100%);color:#eef4fa;font:400 72px/1 TerraOnest,Onest,Arial,sans-serif}

/* Правило Михаила (04.10.2026): заголовок и подзаголовок — столбиком,
   оба на всю ширину страницы, до края контейнера. Заголовок слева и подзаголовок
   справа, а также заголовки «на полстраницы» не делаем: это выдаёт шаблон. */
.mentor-catalog .hero__layout,.mentor-catalog .choice__layout,.mentor-catalog .cta__layout{grid-template-columns:minmax(0,1fr)}
.mentor-catalog .hero__layout{gap:36px;align-items:start}
.mentor-catalog .choice__layout{gap:36px}
.mentor-catalog .cta__layout{gap:24px;align-items:start}
.mentor-catalog .catalog__top{flex-direction:column;align-items:flex-start;gap:14px}
.mentor-catalog .hero__layout :is(h1,p),.mentor-catalog .catalog__top :is(h2,p),.mentor-catalog .choice__layout>*:first-child :is(h2,p),.mentor-catalog .cta__layout :is(h2,p){max-width:none}
.mentor-catalog .hero__aside{max-width:none}
/* Факты карточки строками «подпись — значение»: их стало три (доход
   наставника, для каких учеников, стоимость), в две колонки третий
   съезжал под первый (06.10.2026). */
.mentor-catalog .product-card__facts{display:grid;grid-template-columns:1fr;gap:7px}
.mentor-catalog .product-card__facts div{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.mentor-catalog .product-card__facts div+div{margin-top:0;padding-left:0;border-left:0}
.mentor-catalog .product-card__facts dd{margin:0;text-align:right;white-space:nowrap}

/* ── По брендбуку, 16.10.2026 ────────────────────────────────────────────
   Каталог наставников приведён к брендбуку (/o-klube/brendbuk/): Onest,
   жирность 300/400/500, заголовки блоков одного размера, заголовок и текст
   столбиком, воздух 128/36/56, без подписей над заголовками, линий под ними
   и между пунктами, без клетки на первом экране. Карточки скруглены на 12,
   кнопки в карточках малые (44 px, 14 px), главная глубоким синим. */

.mentor-catalog{--shell:var(--tsn-shell,calc(100% - 28px));--paper:#f2f5f8}
.mentor-catalog p{text-wrap:pretty}
.mentor-catalog b{font-weight:500}
.mentor-catalog :is(h1,h2,h3,li,strong){text-wrap:balance}

/* Первый экран. */
.mentor-catalog .hero{padding-bottom:calc(48px + 44px);background:radial-gradient(circle at 88% 0%,rgba(23,53,102,.62),transparent 52%),linear-gradient(160deg,#0b1f36,#06111f 72%)}
.mentor-catalog .hero::before{content:none}
.mentor-catalog .hero__crumbs{margin-bottom:36px;font-size:13px}
.mentor-catalog .hero__layout{grid-template-columns:minmax(0,1fr);gap:56px;align-items:start}
.mentor-catalog .hero h1{font:400 clamp(40px,5.6vw,104px)/1 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.035em}
.mentor-catalog .hero__lead{margin-top:36px;color:#b9c9d8;font-size:clamp(17px,1.2vw,21px);line-height:1.5}
.mentor-catalog .hero__aside{max-width:640px;border:0}
.mentor-catalog .hero__stat+.hero__stat{border-left:0}
.mentor-catalog .hero__stat strong{font-weight:300}
.mentor-catalog .hero__stat span{color:#b9c9d8;font-size:14px}

/* Второй блок заходит на первый экран на 44 px со скруглением 54. */
.mentor-catalog .hero+.catalog{position:relative;z-index:1;margin-top:-44px;border-radius:54px 54px 0 0;box-shadow:0 -18px 40px rgba(6,17,31,.2);background:#f2f5f8}

/* Каталог: заголовок над подводкой, фильтры и карточки. */
.mentor-catalog .catalog{padding:clamp(72px,10vw,128px) 0}
.mentor-catalog .catalog__top{display:block;margin-bottom:56px}
.mentor-catalog .catalog__top h2,.mentor-catalog .choice h2,.mentor-catalog .cta h2{margin:0;font:400 clamp(30px,3.6vw,52px)/1.06 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.03em}
.mentor-catalog .catalog__top p{max-width:none;margin:36px 0 0;color:#5b6d89;font-size:17px;line-height:1.6}
.mentor-catalog .filters{overflow:hidden;border:1px solid #d3dbe4;border-radius:12px;background:#fff}
.mentor-catalog .filter-group{border-bottom-color:#d3dbe4}
.mentor-catalog .filter-group__title{font-size:14px;font-weight:500}
.mentor-catalog .filter-option small{font-size:13px}
.mentor-catalog .filter-option__box{border-radius:4px}
.mentor-catalog .filter-option input:checked+.filter-option__box{border-color:#173566;background:#173566}
.mentor-catalog .filters__reset{color:#173566;font-size:14px}
.mentor-catalog .results-head strong{font-size:19px;font-weight:500}
.mentor-catalog .filter-chip{border-radius:4px}

/* Карточка наставника. */
.mentor-catalog .mentor-grid{gap:16px}
.mentor-catalog .product-card{border-color:#d3dbe4;border-radius:12px}
.mentor-catalog .product-card:hover{border-color:#b8c3d4;box-shadow:0 16px 40px rgba(6,17,31,.08)}
.mentor-catalog :is(.product-card__level,.product-card__new){border-radius:4px;font-size:12px;font-weight:500;letter-spacing:0}
.mentor-catalog .product-card__new{background:#fff;color:#0b1f36}
.mentor-catalog .product-card__sphere{color:#5b6d89;font-size:13px;font-weight:500}
.mentor-catalog .product-card h3{font-weight:500}
.mentor-catalog .product-card__niche{font-size:14px}
.mentor-catalog .product-card__facts dt{color:#5b6d89;font-size:12px}
.mentor-catalog .product-card__facts dd{color:#0b1f36;font-size:13px;font-weight:500}
.mentor-catalog .button{min-height:44px;border-color:#173566;border-radius:4px;font-size:14px;font-weight:500}
.mentor-catalog .button--ink{background:#173566;color:#fff}
.mentor-catalog .button--ink:hover{border-color:#0b1f36;background:#0b1f36}
.mentor-catalog .button--ghost{border-color:#b8c3d4;color:#0b1f36}
.mentor-catalog .button--ghost:hover{border-color:#173566;background:#fff}

/* Как выбрать: заголовок над шагами, шаги без линий. */
.mentor-catalog .choice{padding:clamp(72px,10vw,128px) 0;background:#fff}
.mentor-catalog .choice__layout{grid-template-columns:minmax(0,1fr);gap:56px}
.mentor-catalog .choice ol{gap:16px;border-top:0}
.mentor-catalog .choice li,.mentor-catalog .choice li+li{padding:0;border:0}
.mentor-catalog .choice li span{margin-bottom:12px;color:#173566;font-size:14px;font-weight:500}
.mentor-catalog .choice li strong{font-size:19px;font-weight:500}
.mentor-catalog .choice li p{color:#5b6d89;font-size:15px}

/* Призыв перед подвалом: мягкий градиент с кольцами. */
.mentor-catalog .cta{position:relative;overflow:hidden;padding:clamp(72px,10vw,128px) 0;background-color:#dfe8ef;background-image:radial-gradient(circle at 86% 14%,rgba(127,181,218,.17),transparent 30%),linear-gradient(170deg,#e8eef3 0%,#fff 52%,#dfe8ef 100%)}
.mentor-catalog .cta::before,.mentor-catalog .cta::after{content:"";position:absolute;left:86%;top:14%;aspect-ratio:1;border:1px solid rgba(11,31,54,.1);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}
.mentor-catalog .cta::before{width:min(36vw,560px)}
.mentor-catalog .cta::after{width:min(62vw,980px);border-color:rgba(11,31,54,.06)}
.mentor-catalog .cta>.shell{position:relative;z-index:1}
.mentor-catalog .cta__layout{grid-template-columns:minmax(0,1fr);gap:36px;align-items:start;padding-top:0;border-top:0}
.mentor-catalog .cta__copy{justify-self:start;max-width:none}
.mentor-catalog .cta__copy p{margin:0 0 36px;color:#5b6d89;font-size:17px;line-height:1.6}
.mentor-catalog .cta__button{min-width:0;min-height:52px;gap:24px;padding:0 24px;background:#173566;font-size:15px;font-weight:500}
.mentor-catalog .cta__button:hover{background:#0b1f36}

@media(max-width:560px){
  .mentor-catalog .hero{padding-bottom:calc(32px + 28px)}
  .mentor-catalog .hero__layout{gap:32px}
  .mentor-catalog .hero__lead{margin-top:20px}
  .mentor-catalog .hero h1{font-size:40px}
  .mentor-catalog .hero+.catalog{border-radius:28px 28px 0 0}
  .mentor-catalog .catalog__top{margin-bottom:32px}
  .mentor-catalog .catalog__top p{margin-top:20px;font-size:16px}
  .mentor-catalog .choice__layout{gap:32px}
  .mentor-catalog .cta__layout{gap:20px}
  .mentor-catalog .cta__copy p{margin-bottom:24px;font-size:16px}
}

/* Колонка фильтров целиком в экране вместе с «Сбросить всё» (Михаил, 18.10.2026):
   строки и отступы групп плотнее. На совсем низком экране колонка
   прокручивается внутри себя, а не уходит под край. */
@media(min-width:821px){
  .mentor-catalog .filters{max-height:calc(100vh - var(--tsn-h,84px) - 36px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
  .mentor-catalog .filter-group{padding-top:18px;padding-bottom:18px}
  .mentor-catalog .filter-group__title{margin-bottom:8px}
  .mentor-catalog .filter-option{min-height:30px}
  .mentor-catalog .filters__reset{padding:14px 22px}
}

/* Нижний блок «Не уверены, кого выбрать?» (18.10.2026): был отдельным
   блоком «Начните с задачи», теперь три шага стоят белыми карточками
   внутри призыва, между подводкой и кнопкой. */
.mentor-catalog .cta__steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 36px;padding:0;list-style:none}
.mentor-catalog .cta__steps li{padding:clamp(22px,2vw,32px);border:1px solid #d3dbe4;border-radius:12px;background:#fff}
.mentor-catalog .cta__steps li span{display:block;margin-bottom:12px;color:#173566;font-size:14px;font-weight:500}
.mentor-catalog .cta__steps li p{margin:0;color:#5b6d89;font-size:15px;line-height:1.5}
.mentor-catalog .cta__steps li strong{display:block;margin-bottom:8px;color:#0b1f36;font-size:19px;font-weight:500;line-height:1.25}
@media(max-width:820px){.mentor-catalog .cta__steps{grid-template-columns:1fr;gap:12px;margin-bottom:24px}.mentor-catalog .cta__steps li strong{font-size:17px}}
/* Заголовок выезжающей панели фильтров на телефоне: жирность 500 по брендбуку (была 700 от браузера) */
.mentor-catalog .filters__mobile-head strong{font-weight:500}
/* Телефон (Михаил, 18.10.2026): фото квадратом сверху во всю ширину, как в каталоге
   школ. Горизонтальная карточка резала квадратный снимок по бокам: у Григорьевой
   и Бланкет пропадало пол-лица. Снимки наставников квадратные, квадрат их не режет. */
@media(max-width:560px){
 .mentor-catalog .product-card{display:flex;flex-direction:column;min-height:0}
 .mentor-catalog .product-card__media{height:auto;aspect-ratio:1/1}
 .mentor-catalog .product-card__body{padding:18px 16px 16px}
 .mentor-catalog .product-card h3{font-size:19px}
 .mentor-catalog .product-card__niche{margin:8px 0 14px;font-size:14px}
 .mentor-catalog .product-card__facts dt,.mentor-catalog .product-card__facts dd{font-size:14px}
 .mentor-catalog .product-card__actions{grid-template-columns:1fr 1fr;gap:8px}
 .mentor-catalog .product-card .button--ghost{display:grid}
 .mentor-catalog .product-card .button{min-height:44px;font-size:14px}
 .mentor-catalog .product-card__level{top:12px;left:12px}
}
