@charset "utf-8";
.fastscroll {
	-webkit-transform: translateZ(0);
	-webkit-overflow-scrolling: touch;
	scroll-behavior: smooth;
}
.fitnes_0 {
	margin: 0px;
	padding: 0px;
}
.float_100 {
	float: left;
	width: 100%;
}
.float_0 {
	float: left;
}
.float_ght {
	float: right;
}
.flexcnt {
	width: 100%;
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	justify-content: center;
	-webkit-justify-content: center;
}
.flexcenter {
  width: 100%;
  display: -webkit-flex; /* для очень старых Safari */
  display: flex;

  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;

  -webkit-justify-content: center;
  justify-content: center;
}
.bodnotscroll {
	overflow: hidden;
	height: 100%;
	margin: 0;
	padding: 0;
}
.rel_100 {
	position: relative;
}
.real_100 {
	float: left;
	width: 100%;
	position: relative;
}
.point {
	white-space: nowrap; /* Отменяем перенос текста */
	overflow: hidden; /* Обрезаем содержимое */
	text-overflow: ellipsis; /* Многоточие */
}
.real_0 {
	float: left;
	position: relative;
}
.abs_100 {
	float: left;
	width: 100%;
	position: absolute;
	z-index: 1000;
}
.abs_0 {
	float: left;
	position: absolute;
}
.block_100 {
	display: block;
}
.topbt {
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}
.rgt {
	text-align: right;
}
.pointer {
	cursor: pointer;
}
.inline_100 {
	display: inline-block;
	width: 100%;
}
.inline_0 {
	display: inline-block;
}
.inline_95 {
	display: inline-block;
	margin: 0.5em;
	padding: 0.5em;
	width: 95%;
}
.inline_955 {
	display: inline-block;
	margin: 0.2em;
	padding: 0.2em;
	width: 95%;
}
.underline {
	text-decoration: underline;
}

.cnt {
	text-align: center;
}
.border_5 {
	border-radius: 5px;
}
.border_2 {
	border-radius: 2px;
}
.border_0 {
	border-radius: 0px;
}
.lft {
	text-align: left;
}
.rgh {
	text-align: right;
}


/* Кнопки */
.control_flow {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  border-radius: 2px;
  font-size: clamp(12px, 4vw, 20px);
  text-decoration: none !important;
  margin: 5px;
  position: relative;
  display: inline-block;
  padding: 10px 20px;
  cursor: pointer;
  overflow: hidden;
  flex: 0 0 auto;
  background: transparent; /* фон задаётся псевдоэлементами */
  z-index: 1;
  transition: background 0.8s ease;
}

/* Чтобы содержимое (например, текст) всегда было поверх псевдоэлементов */
.control_flow > * {
  position: relative;
  z-index: 2;
}

.control_flow:visited {
  text-decoration: none !important;
}

.control_flow:active {
  text-decoration: none !important;
}

/* Псевдоэлемент для базового (исходного) фона */
.control_flow::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -2;
}

/* Псевдоэлемент для hover-эффекта (нового фона) */
.control_flow::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  opacity: 0;
  transition: opacity 0.8s ease;
}

.control_flow:hover::after {
  opacity: 1;
}

/* ——— WhiteGrey ——— */
.contr_whitegrey {
  color: #444 !important;
  text-shadow: 0 1px 0 #fff !important;
  box-shadow: 0px 5px 0px 0px #7A6F7D;
}
.contr_whitegrey::before {
  background: linear-gradient(to bottom, #ffffff, #9E9E9E);
}
.contr_whitegrey::after {
  background: linear-gradient(to bottom, #ffffff, #B5B5B5);
}

/* ——— Grey ——— */
.contr_grey {
  color: #fff !important;
  text-shadow: 1px 1px 1px #000 !important;
  box-shadow: 0px 5px 0px 0px #2C2C2C;
}
.contr_grey::before {
  background: linear-gradient(to bottom, #4a444d, #39343b);
}
.contr_grey::after {
  background: linear-gradient(to bottom, #6d6571, #504a53);
}

/* ——— Blue ——— */
.contr_blue {
  color: #fff !important;
  text-shadow: 1px 1px 1px #000 !important;
  box-shadow: 0px 5px 0px 0px #0F2546;
}
.contr_blue::before {
  background: linear-gradient(to bottom, #476daf, #11315e);
}
.contr_blue::after {
  background: linear-gradient(to bottom, #698BC2, #153D73);
}

/* ——— Green ——— */
.contr_green {
  color: #fff !important;
  text-shadow: 1px 1px 1px #000 !important;
  box-shadow: 0px 5px 0px 0px #0B592C;
}
.contr_green::before {
  background: linear-gradient(to bottom, #46C538, #228D16);
}
.contr_green::after {
  background: linear-gradient(to bottom, #62cf57, #29b11b);
}

/* ——— Red ——— */
.contr_red {
  color: #fff !important;
  text-shadow: 1px 1px 1px #000 !important;
  box-shadow: 0px 5px 0px 0px #611810;
}
.contr_red::before {
  background: linear-gradient(to bottom, #f00002, #ba0013, #ad0017);
}
.contr_red::after {
  background: linear-gradient(to bottom, #FF3E3E, #ba0013, #FF3E3E);
}

/* ——— Purple ——— */
.contr_purple {
  color: #fff !important;
  text-shadow: 1px 1px 1px #000 !important;
  box-shadow: 0px 5px 0px 0px #462255;
}
.contr_purple::before {
  background: linear-gradient(to bottom, #a966c2, #8e46a0);
}
.contr_purple::after {
  background: linear-gradient(to bottom, #b573d0, #9b59b6);
}

/* ——— Orange ——— */
.contr_orange {
  color: #fff !important;
  text-shadow: 1px 1px 1px #000 !important;
  box-shadow: 0px 5px 0px 0px #5E2F04;
}
.contr_orange::before {
  background: linear-gradient(to bottom, #ed8c31, #cf6a15);
}
.contr_orange::after {
  background: linear-gradient(to bottom, #ff983c, #e57b1e);
}

/* ——— Yellow ——— */
.contr_yellow {
  color: #000 !important;
  text-shadow: 0 1px 0 #ffffffbf !important;
  box-shadow: 0px 5px 0px 0px #665200;
}
.contr_yellow::before {
  background: linear-gradient(to bottom, #f9cf20, #daab05);
}
.contr_yellow::after {
  background: linear-gradient(to bottom, #ffde29, #ecc61d);
}

/* ——— Black ——— */
.contr_black {
  color: #fff !important;
  text-shadow: 1px 1px 1px #000 !important;
  box-shadow: rgba(235, 200, 150, 0.08) 0px 5px 0px 0px;
}
.contr_black::before {
  background: linear-gradient(to bottom, #161616, #161616, #242424);
}
.contr_black::after {
  background: linear-gradient(to bottom, #1F1F1F, #1F1F1F, #2A2A2A);
}

/* ——— Dark Blue ——— */
.contr_dark_blue {
  color: #fff !important;
  text-shadow: 1px 1px 1px #000 !important;
  box-shadow: 0px 5px 0px 0px #1D2245;
}
.contr_dark_blue::before {
  background: radial-gradient(circle, #1a2049 0%, #13162f 100%);
}
.contr_dark_blue::after {
  background: radial-gradient(ellipse closest-corner at 50% 40%, #2E3881 0%, #13162f 100%);
}

/*Кнопки*/
.line_grey {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
	height: 2px;
}
@media screen and (max-width:2800px) {
.hide2800 {
	display: none;
}
}
@media screen and (max-width:500px) {
.hide2000 {
	display: none;
}
}
