/* /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/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/blog-article.css?v=7-bez-kursiva */
/* Статья блога. Эталон: _материалы/эталон-blog/article.html. Текст статьи
   переносится как есть — меняется только обрамление. Всё внутри .article-page. */
@font-face{font-family:Onest;src:url('/assets/home/assets/onest-variable.woff2') format('woff2');font-weight:300 500;font-display:swap}
.article-page{background:var(--paper);color:var(--ink);font-family:Onest,Arial,sans-serif}
.article-page *{box-sizing:border-box}
.article-page{--ink:#0b1f36;--ink2:#0b1f36;--paper:#f2f5f8;--white:#f2f5f8;--blue:#b9c9d8;--gold:#d4aa61;--muted:#5b6d89;--line:#d3dbe4;--shell:var(--tsn-shell,min(100% - 96px,1760px))}.article-page .shell{width:var(--shell);margin:auto}.article-page .article-hero{position:relative;overflow:hidden;padding:62px 0 74px;background:var(--ink);color:white}.article-page .article-hero:after{content:"";position:absolute;right:-21vw;bottom:-49vw;width:78vw;aspect-ratio:1;border:1px solid rgba(185,201,216,.22);border-radius:50%;box-shadow:0 0 0 12vw rgba(185,201,216,.025),0 0 0 24vw rgba(185,201,216,.018)}.article-page .crumbs{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 72px;padding:0;list-style:none;color:#8fa5bb;font-size:13px;text-transform:none;letter-spacing:0}.article-page .crumbs a{color:inherit;text-decoration:none}.article-page .article-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.52fr);gap:8vw;align-items:end}.article-page .article-hero .tag{margin:0 0 24px;color:var(--blue);font-size:13px;letter-spacing:0;text-transform:none}.article-page .article-hero h1{max-width:1220px;margin:0;font-family:TerraOnest,Onest,Arial,sans-serif;font-size:clamp(49px,6.3vw,108px);font-weight:400;line-height:.93;letter-spacing:-.05em}.article-page .article-hero__meta{border-left:1px solid rgba(184,195,212,.3);padding:8px 0 8px 30px}.article-page .article-hero__meta dl{margin:0}.article-page .article-hero__meta div{padding:13px 0;border-bottom:1px solid rgba(184,195,212,.18)}.article-page .article-hero__meta dt{font-size:13px;text-transform:none;letter-spacing:0;color:#8fa5bb}.article-page .article-hero__meta dd{margin:6px 0 0;font-size:14px;color:#b9c9d8}.article-page .article-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:clamp(55px,8vw,140px);padding:clamp(58px,8vw,124px) 0}.article-page .toc{align-self:start;position:sticky;top:30px}.article-page .toc__label{margin:0 0 18px;color:#5b6d89;font-size:13px;text-transform:none;letter-spacing:0}.article-page .toc ol{margin:0;padding:0;list-style:none;border-top:1px solid #b9c9d8}.article-page .toc a{display:grid;grid-template-columns:32px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid #b9c9d8;color:#5b6d89;text-decoration:none;font-size:12px;line-height:1.4}.article-page .toc a:hover,.article-page .toc a:focus-visible{color:var(--ink);outline:0}.article-page .toc a span{font-variant-numeric:tabular-nums;color:#8fa5bb}.article-page .article-body{min-width:0;max-width:1180px}.article-page .article-deck{margin:0 0 56px;font-size:clamp(22px,2.1vw,32px);line-height:1.45;color:#173566}.article-page .article-body h2{margin:80px 0 24px;font-family:TerraOnest,Onest,Arial,sans-serif;font-size:clamp(36px,4vw,62px);font-weight:400;line-height:1.03;letter-spacing:-.035em}.article-page .article-body h2:first-of-type{margin-top:0}.article-page .article-body h3{margin:45px 0 16px;font-size:24px;line-height:1.2}.article-page .article-body p,.article-page .article-body li{font-size:18px;line-height:1.75;color:#173566}.article-page .article-body p{margin:0 0 24px}.article-page .article-body ul,.article-page .article-body ol{margin:0 0 28px;padding-left:24px}.article-page .article-body li+li{margin-top:12px}.article-page .article-body a{color:#5b6d89;text-decoration-thickness:1px;text-underline-offset:3px}.article-page .pullquote{margin:58px 0;padding:34px 40px;border-left:4px solid var(--blue);background:#eef4fa;font-family:TerraOnest,Onest,Arial,sans-serif;font-size:clamp(26px,3vw,44px);line-height:1.25}.article-page .keypoints{display:grid;grid-template-columns:repeat(3,1fr);margin:48px 0;border-left:1px solid #b9c9d8;border-top:1px solid #b9c9d8}.article-page .keypoints div{min-height:190px;padding:24px;border-right:1px solid #b9c9d8;border-bottom:1px solid #b9c9d8}.article-page .keypoints span{display:block;color:#8fa5bb;font-size:13px;letter-spacing:0;text-transform:none}.article-page .keypoints strong{display:block;margin-top:40px;font-size:18px;line-height:1.35}.article-page .table-wrap{max-width:100%;overflow-x:auto;margin:34px 0 48px;border:1px solid #b9c9d8;background:#f2f5f8}.article-page table{width:100%;min-width:720px;border-collapse:collapse}.article-page th,.article-page td{padding:18px 20px;text-align:left;border-bottom:1px solid #d3dbe4;border-right:1px solid #d3dbe4;vertical-align:top}.article-page th:last-child,.article-page td:last-child{border-right:0}.article-page tr:last-child td{border-bottom:0}.article-page th{background:#d3dbe4;font-size:13px;letter-spacing:0;text-transform:none}.article-page td{font-size:15px;line-height:1.55;color:#5b6d89}.article-page .faq{margin-top:70px;border-top:1px solid #b9c9d8}.article-page .faq details{border-bottom:1px solid #b9c9d8}.article-page .faq summary{cursor:pointer;padding:23px 44px 23px 0;font-size:18px;font-weight:500;list-style:none;position:relative}.article-page .faq summary:after{content:"+";position:absolute;right:4px;font-size:24px;color:#5b6d89}.article-page .faq details[open] summary:after{content:"−"}.article-page .faq details p{padding:0 50px 22px 0;font-size:16px}.article-page .article-end{margin-top:84px;padding:40px;background:var(--ink);color:white;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}.article-page .article-end h2{margin:0;font:400 clamp(32px,3.3vw,50px)/1 TerraOnest,Onest,Arial,sans-serif}.article-page .article-end p{margin:12px 0 0;color:#b9c9d8;font-size:15px}.article-page .article-end a{padding:18px 22px;background:var(--paper);color:var(--ink);text-decoration:none;font-weight:500;white-space:nowrap}.article-page .more{padding:0 0 clamp(70px,9vw,135px)}.article-page .more__head{display:flex;justify-content:space-between;align-items:end;gap:30px;padding-bottom:24px;border-bottom:1px solid #b9c9d8}.article-page .more__head h2{margin:0;font-family:TerraOnest,Onest,Arial,sans-serif;font-size:clamp(42px,5vw,76px);font-weight:400}.article-page .more__grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid #b9c9d8}.article-page .more a{min-height:220px;padding:26px;border-right:1px solid #b9c9d8;border-bottom:1px solid #b9c9d8;color:inherit;text-decoration:none}.article-page .more a:hover,.article-page .more a:focus-visible{background:#eef4fa;outline:0}.article-page .more span{font-size:13px;text-transform:none;letter-spacing:0;color:#5b6d89}.article-page .more h3{margin:42px 0 0;font-size:21px;line-height:1.25}
@media(max-width:1180px){.article-page{--shell:calc(100% - 112px)}.article-page .article-layout{grid-template-columns:230px minmax(0,1fr);gap:55px}.article-page .keypoints{grid-template-columns:1fr 1fr}.article-page .more__grid{grid-template-columns:1fr 1fr}.article-page .more a:last-child{grid-column:1/-1}}
@media(max-width:820px){.article-page{--shell:calc(100% - 72px)}.article-page .article-hero{padding:48px 0 60px}.article-page .crumbs{margin-bottom:50px}.article-page .article-hero__grid,.article-page .article-layout{grid-template-columns:1fr}.article-page .article-hero__meta{padding:22px 0 0;border-left:0;border-top:1px solid rgba(184,195,212,.3)}.article-page .article-layout{gap:45px}.article-page .toc{position:static}.article-page .toc ol{display:grid;grid-template-columns:1fr 1fr}.article-page .toc a:nth-child(odd){padding-right:16px}.article-page .article-end{grid-template-columns:1fr}.article-page .article-end a{justify-self:start}.article-page .more__grid{grid-template-columns:1fr}}
@media(max-width:560px){.article-page{--shell:calc(100% - 28px)}.article-page .article-hero{padding:34px 0 44px}.article-page .crumbs{margin-bottom:38px}.article-page .article-hero h1{font-size:48px}.article-page .article-layout{padding:48px 0 70px}.article-page .toc ol{grid-template-columns:1fr}.article-page .article-deck{font-size:21px}.article-page .article-body h2{margin-top:60px;font-size:38px}.article-page .article-body p,.article-page .article-body li{font-size:16px;line-height:1.7}.article-page .pullquote{margin-inline:-14px;padding:28px 22px;font-size:29px}.article-page .keypoints{grid-template-columns:1fr;margin-inline:-14px;border-left:0}.article-page .keypoints div{min-height:0}.article-page .article-end{margin-inline:-14px;padding:30px 20px}.article-page .more__grid{margin-inline:-14px;border-left:0}.article-page .more a{min-height:180px;padding:24px 14px}}
@media print{.article-page .article-hero{background:white;color:black;padding:20px 0}.article-page .article-hero:after,.article-page .toc,.article-page .article-end,.article-page .more{display:none}.article-page .article-hero__meta dd,.article-page .article-hero__meta dt{color:#0b1f36}.article-page .article-layout{display:block;padding:20px 0}.article-page .article-body{max-width:none}.article-page .pullquote{background:#f2f5f8}}

/* ── Дополнения к эталону ────────────────────────────────────────── */
/* Переходы по оглавлению не должны уходить под фиксированную шапку. */
html:has(.article-page){scroll-behavior:smooth;scroll-padding-top:calc(var(--tsn-h,84px) + 24px)}
.article-page .article-hero{padding-top:calc(var(--tsn-h,84px) + 44px)}
@media(max-width:560px){.article-page .article-hero{padding-top:calc(var(--tsn-h,72px) + 28px)}}
.article-page .toc{top:calc(var(--tsn-h,84px) + 24px)}
.article-page .crumbs a:hover{color:#ffffff}
/* Статья без оглавления (меньше двух разделов) — текст во всю колонку. */
.article-page .article-layout--solo{grid-template-columns:minmax(0,1fr)}
/* Текст статей пришёл со старого сайта: картинки, подписи, цитаты. */
.article-page .article-cover{margin:0 0 44px}
.article-page .article-cover img{display:block;width:100%;height:auto;max-height:560px;object-fit:cover}
.article-page .article-body img{max-width:100%;height:auto}
.article-page .article-body figure{margin:36px 0}
.article-page .article-body blockquote:not(.pullquote){margin:36px 0;padding:24px 30px;border-left:4px solid var(--blue);background:#eef4fa}
.article-page .article-body h4{margin:32px 0 12px;font-size:19px}
.article-page .article-body strong{color:#173566}
.article-page .article-body table{min-width:560px}
/* Финал статьи: запись на поток и канал клуба. */
.article-page .article-end__tg{grid-column:1/-1;margin:0;font-size:14px;color:#b9c9d8}
.article-page .article-end__tg a{color:var(--blue)}
/* «По теме» и статьи рубрики: ссылок бывает больше трёх. */
.article-page .more__grid{grid-auto-rows:minmax(180px,auto)}
body:has(.article-page) .rd-footer-cta{display:none}

/* Правило Михаила (04.10.2026): заголовок и подзаголовок — столбиком,
   оба на всю ширину страницы, до края контейнера. Заголовок слева и подзаголовок
   справа, а также заголовки «на полстраницы» не делаем: это выдаёт шаблон. */
.article-page .article-hero__grid{grid-template-columns:minmax(0,1fr);gap:32px;align-items:start}
.article-page .article-hero__grid :is(h1,p){max-width:none}
/* Длинные слова в заголовках статьи («предпринимательское») на телефоне не влезали
   в экран при 38px и давали прокрутку вбок. Меньше кегль и перенос по слогам. */
.article-page :is(.article-hero h1,.article-body h2,.article-end h2,.more__head h2){overflow-wrap:break-word;hyphens:auto}
@media(max-width:560px){.article-page .article-body h2{font-size:clamp(28px,8vw,34px)}.article-page .article-hero h1{font-size:clamp(36px,11vw,48px)}}

/* ── По брендбуку, 17.10.2026 ────────────────────────────────────────────
   Статья блога приведена к брендбуку (/o-klube/brendbuk/): Onest, жирность
   300/400/500, текст 17/16 px строкой 1,7, заголовки разделов в пределах
   размера H2, без подписей над заголовками, без линий в оглавлении и между
   пунктами, цитаты с тонкой золотой чертой, «По теме» карточками. Текст
   статей не трогаем: он переносится со старого сайта как есть. */

.article-page{--shell:var(--tsn-shell,calc(100% - 28px));--paper:#f2f5f8;background:#f2f5f8}
.article-page p{text-wrap:pretty}
.article-page :is(h1,h2,h3,h4){text-wrap:balance}

/* Первый экран: свет в правом верхнем углу, кольцо без свечения. Снизу на
   экран заходит светлый край со скруглением 54, как второй блок на других
   страницах (тело статьи узкое и само зайти на экран не может). */
.article-page .article-hero{padding-bottom:calc(clamp(56px,6vw,96px) + 54px);background:radial-gradient(circle at 88% 0%,rgba(23,53,102,.62),transparent 52%),linear-gradient(160deg,#0b1f36,#06111f 72%)}
.article-page .article-hero:after{box-shadow:none;border-color:rgba(185,201,216,.16)}
.article-page .article-hero:before{content:"";position:absolute;z-index:1;left:0;right:0;bottom:-1px;height:54px;border-radius:54px 54px 0 0;background:#f2f5f8;box-shadow:0 -18px 40px rgba(6,17,31,.2)}
.article-page .crumbs{margin-bottom:36px;font-size:13px}
.article-page .article-hero h1{font:400 clamp(40px,5vw,88px)/1.04 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.035em}
.article-page .article-hero__grid{gap:36px}
.article-page .article-hero__meta{padding:0;border:0}
.article-page .article-hero__meta dl{display:flex;flex-wrap:wrap;gap:16px 48px}
.article-page .article-hero__meta div{padding:0;border:0}
.article-page .article-hero__meta dt{color:#8fa5bb;font-size:13px}
.article-page .article-hero__meta dd{color:#d6e2ee;font-size:15px}

/* Оглавление: пункты без линий. */
.article-page .article-layout{padding:clamp(48px,6vw,96px) 0 clamp(72px,10vw,128px)}
.article-page .toc__label{color:#5b6d89;font-size:14px}
.article-page .toc ol{border-top:0}
.article-page .toc a{padding:8px 0;border-bottom:0;color:#5b6d89;font-size:14px}
.article-page .toc a span{color:#173566}

/* Текст статьи. */
.article-page .article-body h2{margin:72px 0 24px;font:400 clamp(30px,2.8vw,40px)/1.15 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.02em}
.article-page .article-body h3{margin:48px 0 16px;font-size:22px;font-weight:500;line-height:1.25}
.article-page .article-body h4{font-size:19px;font-weight:500}
.article-page .article-body :is(p,li){color:#0b1f36;font-size:17px;line-height:1.7}
.article-page .article-body :is(strong,b){color:#0b1f36;font-weight:500}
.article-page .article-body a{color:#173566}
.article-page .article-deck{color:#5b6d89;font-size:clamp(19px,1.6vw,22px)}
.article-page .article-cover img,.article-page .article-body img{border-radius:12px}
.article-page :is(.pullquote,.article-body blockquote:not(.pullquote)){border-left:2px solid #d4aa61;border-radius:0 12px 12px 0;background:#fff}
.article-page .pullquote{font:400 clamp(22px,2vw,30px)/1.35 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.01em}
.article-page .keypoints span{font-size:13px}
.article-page .table-wrap{border-color:#d3dbe4;border-radius:12px;background:#fff}
.article-page th{background:#eef4fa;color:#0b1f36;font-size:14px;font-weight:500}
.article-page td{color:#0b1f36}
.article-page .faq summary{font-size:19px;font-weight:500}
.article-page .faq details p{color:#5b6d89}

/* Финал статьи: тёмная панель 22, кнопка белая. */
.article-page .article-end{border-radius:22px}
.article-page .article-end h2{font:400 clamp(30px,2.8vw,40px)/1.1 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.02em}
.article-page .article-end p{color:#b9c9d8}
.article-page .article-end a{min-height:52px;display:inline-flex;align-items:center;padding:0 24px;border-radius:4px;background:#fff;color:#0b1f36;font-size:15px;font-weight:500}
.article-page .article-end a:hover{background:#eef4fa}
.article-page .article-end__tg{color:#b9c9d8}
.article-page .article-end__tg a{min-height:0;display:inline;padding:0;background:none;color:#fff;font-size:inherit;text-decoration:underline;text-underline-offset:3px}

/* «По теме»: заголовок без линии, статьи карточками. */
.article-page .more{padding-bottom:clamp(72px,10vw,128px)}
.article-page .more__head{margin-bottom:56px;padding-bottom:0;border-bottom:0}
.article-page .more__head h2{font:400 clamp(30px,3.6vw,52px)/1.06 TerraOnest,Onest,Arial,sans-serif;letter-spacing:-.03em}
.article-page .more__grid{gap:16px;border-left:0}
.article-page .more a{border:1px solid #d3dbe4;border-radius:12px;background:#fff}
.article-page .more a:hover,.article-page .more a:focus-visible{border-color:#b8c3d4;background:#fff}
.article-page .more span{color:#5b6d89;font-size:13px}
.article-page .more h3{font-size:19px;font-weight:500}

@media(max-width:560px){
  .article-page .article-hero{padding-bottom:calc(40px + 28px)}
  .article-page .article-hero:before{height:28px;border-radius:28px 28px 0 0}
  .article-page .article-hero h1{font-size:clamp(32px,9vw,40px)}
  .article-page .article-body h2{margin-top:56px;font-size:30px}
  .article-page .article-body :is(p,li){font-size:16px}
  .article-page .more__head{margin-bottom:32px}
  .article-page .more__head h2{font-size:30px}
  .article-page .more__grid{margin-inline:0;gap:12px}
  .article-page .more a{padding:24px 18px}
}

/* Красивый перенос и в списках, пояснениях, подписях к фото (17.10.2026):
   по брендбуку одно слово на последней строке не оставляем. */
.article-page :is(li,dd,figcaption,blockquote){text-wrap:pretty}

/* Курсив брендбук не использует (17.10.2026): выделения в старых статьях (em, i)
   остаются в разметке, но набраны прямым шрифтом. */
.article-page :is(em,i,cite,dfn,var){font-style:normal}

/* /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/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}
}
