/*!
Theme Name: Dota2
Author: RedCorner
Author URI: https://redcorner.spb.ru/
Description: Dota2Okko WP Theme
Version: 1.0.0
Text Domain: dota
*/

/* @font-face{
    font-family: Circe;
    src: url('fonts/circe-thin.ttf') format('opentype');
    font-display: swap;
    font-weight: 100;
}
@font-face {
    font-family: Circe;
    src: url('fonts/circe-extralight.ttf') format('opentype');
    font-display: swap;
    font-weight: 200;
} */
@font-face {
  font-family: TT;
  src: url("fonts/TT-Travels-Next-Trial-Thin.ttf") format("opentype");
  font-display: swap;
  font-weight: 300;
}
@font-face {
  font-family: TT;
  src: url("fonts/TT-Travels-Next-Trial-Regular.ttf") format("opentype");
  font-display: swap;
  font-weight: 400;
}
@font-face {
  font-family: TT;
  src: url("fonts/TT-Travels-Next-Trial-Medium.ttf") format("opentype");
  font-display: swap;
  font-weight: 500;
}
@font-face {
  font-family: TT;
  src: url("fonts/TT-Travels-Next-Trial-DemiBold.ttf") format("opentype");
  font-display: swap;
  font-weight: 600;
}
@font-face {
  font-family: TT;
  src: url("fonts/TT-Travels-Next-Trial-Bold.ttf") format("opentype");
  font-display: swap;
  font-weight: 700;
}
@font-face {
  font-family: TT;
  src: url("fonts/TT-Travels-Next-Trial-ExtraBold.ttf") format("opentype");
  font-display: swap;
  font-weight: 800;
}
@font-face {
  font-family: TT;
  src: url("fonts/TT-Travels-Next-Trial-ExtraBold.ttf") format("opentype");
  font-display: swap;
  font-weight: 900;
}
@font-face {
  font-family: Montserrat;
  src: url("fonts/Montserrat-Regular.ttf") format("opentype");
  font-display: swap;
  font-weight: 400;
}
@font-face {
  font-family: Montserrat;
  src: url("fonts/Montserrat-Medium.ttf") format("opentype");
  font-display: swap;
  font-weight: 500;
}
@font-face {
  font-family: Unbounded;
  src: url("fonts/Unbounded-Regular.woff2") format("woff2");
  font-display: swap;
  font-weight: 300;
}
@font-face {
  font-family: Unbounded;
  src: url("fonts/Unbounded-Bold.woff2") format("woff2");
  font-display: swap;
  font-weight: 600;
}
/* @font-face{
    font-family: Circe;
    src: url('fonts/circe.ttf') format('opentype');
    font-display: swap;
    font-weight: 500;
}
@font-face {
    font-family: Circe;
    src: url('fonts/circe-bold.ttf') format('opentype');
    font-display: swap;
    font-weight: 700;
}
@font-face {
    font-family: Circe;
    src: url('fonts/circe-extrabold.ttf') format('opentype');
    font-display: swap;
    font-weight: 900;
}

@font-face {
    font-family: Lighthaus;
    src: url('fonts/Lighthaus.otf') format('opentype');
    font-display: swap;
    font-weight: 300;
} */

html,
body {
  font-family: TT, Arial, sans-serif;
  font-weight: 300;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  background: #19191f;
  color: #fff;
  /* width: 1920px;
    margin: 0 auto; */
  min-height: 100vh;
}

body {
  /* max-width: 1400px;
    margin: 0 auto; */
  background: #19191f;
  position: relative;
}

* {
  outline: none;
  box-shadow: none;
  font-family: TT, Arial, sans-serif;
  font-weight: 300;
}

.hidden {
  display: none !important;
}

::-webkit-scrollbar-track {
  background-color: rgba(123, 123, 123, 0.15);
  border-radius: 50px;
}

::-webkit-scrollbar {
  width: 0px;
  height: 4px;
  background-color: rgba(123, 123, 123, 0.15);
  pointer-events: none;
  border-radius: 50px;
}

::-webkit-scrollbar-thumb {
  background-color: rgba(255, 255, 255, 0.6);
  border-radius: 50px;
}

img {
  max-width: 100%;
  max-height: 100%;
}

strong {
  font-weight: 700;
}

.hidden {
  display: none !important;
}

.container {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
}

a {
  color: #fff;
  text-decoration: none;
  transition: 0.3s all;
}

header {
  box-sizing: border-box;
  max-width: 1280px;
  max-height: 72px;
  background: #00000066;
  position: fixed;
  top: 25px;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 30px);
  padding: 5px 20px 7px 7px;
  border-radius: 10px;
  z-index: 10;
  backdrop-filter: blur(80px);
  transition: 0.3s all;
}

header.hasBlur,
header.hasMenu {
  backdrop-filter: blur(10px);
}

header .container {
  max-width: 1340px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.headerMain {
  display: flex;
  align-items: center;
}

header .headerMain > ul {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: max-content;
  justify-content: center;
}

header .headerMain > ul > li:last-child {
  margin-right: 0;
}

.logo {
  width: 285px;
  margin-right: 0px;
}

header ul {
  display: flex;
  margin: 0;
  padding: 0;
  width: 200px;
}

header ul li {
  display: block;
  margin-right: 22px;
  font-size: 12px;
  font-weight: 800;
  padding: 0;
}

header ul li a {
  font-weight: 800;
  text-transform: uppercase;
}

header .headerMain > ul > li.current-menu-item > a {
  position: relative;
    color: #56FF5F;

}

header ul li.menu-item-has-children > a::after {
  margin-left: 4px !important;
}

header ul li.menu-item-has-children {
  position: relative;
  background: hsl(0deg 0% 0% / 0%);
  transition: 0.3s all;
}

header .headerMain > ul > li.menu-item-has-children:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 24px;
}

header ul li.menu-item-has-children:hover {
  /* background: hsl(0deg 0% 0% / 50%); */
}

header ul li.menu-item-has-children > a {
  display: flex;
  align-items: center;
}

header ul li.menu-item-has-children > a:after {
  content: "▼";
  flex-shrink: 0;
  font-size: 12px;
  margin-left: 7px;
  margin-top: 1px;
}

header .button {
  font-size: 14.3px;
  text-transform: uppercase;
  aspect-ratio: 5/1;
  height: 34px;
}

header .button text {
  font-size: 14.3px;
  text-transform: uppercase;
}

header ul ul {
  position: absolute;
  top: calc(100% + 24px);
  left: 0;
  z-index: 20;

  display: block;
  width: 240px;
  max-height: calc(100vh - 130px);
  margin: 0;
  padding: 0;

  background: -moz-linear-gradient(
    180deg,
    rgba(0, 0, 0, 0.7) 0%,
    rgba(0, 0, 0, 0.3) 100%
  );
  background: -webkit-linear-gradient(
    180deg,
    rgba(0, 0, 0, 0.7) 0%,
    rgba(0, 0, 0, 0.3) 100%
  );
  background: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0.7) 0%,
    rgba(0, 0, 0, 0.3) 100%
  );

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);

  overflow-y: auto;

  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-5px);

  transition:
    opacity 0.3s,
    visibility 0.3s,
    transform 0.3s;
}

header ul li:hover > ul,
header ul li:focus-within > ul {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

header ul ul li {
  margin: 0;
  padding: 8px 20px;
  display: block;
}

.button,
.button span,
.button text {
  font-family: TT, Arial, sans-serif;
  font-weight: 800;
}

.button {
  padding: 3px;
  /* border-radius: 16px; */
  /* background: -webkit-linear-gradient(166deg, rgba(255, 255, 255, 1) 10%, rgba(49, 9, 191, 1) 30%, rgba(25, 5, 84, 1) 45%, rgba(31, 24, 88, 1) 60%); */
  /* background: linear-gradient(166deg, rgba(255, 255, 255, 1) 10%, rgba(49, 9, 191, 1) 30%, rgba(25, 5, 84, 1) 45%, rgba(31, 24, 88, 1) 60%); */
  display: flex;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-color: #421fcb;
  aspect-ratio: 5.575 / 1;
  width: auto;
  height: 40px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  border-radius: 200px;
  overflow: hidden;
}

.button text {
  position: relative;
  z-index: 3;
  font-size: 19px;
  margin-top: -2px;
}

.bannerMain {
  position: relative;

  width: 100%;
  max-width: 1440px;
  height: 640px;
  margin: 0 auto;
}

.bannerMain.bannerTour {
  isolation: isolate;
  overflow: hidden;

  width: 100%;
  height: 830px;
  min-height: 830px;

  background: #19191f;
  border-radius: 0 0 40px 40px;
}

.bannerMain.realMain {
  width: 100%;
  height: 830px;
  min-height: 830px;

  overflow: hidden;
  background: #19191f;
  border-radius: 0 0 30px 30px;
}

.bannerMain.realMain .bannerBacks {
  position: absolute;
  inset: 0;

  width: 100%;
  height: 100%;

  overflow: hidden;
}

.bannerMain.realMain .bannerBacks > div {
  position: absolute;
  inset: 0;

  width: 100%;
  height: 100%;

  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: cover !important;
}

.mainBannerGraphic {
  position: absolute;
  z-index: 3;

  width: 865px;
  height: auto;

  left: -10px;
  top: -20px;

  display: block;
  pointer-events: none;
}

.bannerBacks {
  position: absolute;
  inset: 0;

  width: 100%;
  height: 100%;

  overflow: hidden;
}

/* Обычная картинка из ACF */
.bannerBacks > div {
  position: absolute;
  inset: 0;

  width: 100%;
  height: 100%;

  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;

  opacity: 0;
  transition: opacity 0.5s ease;
}

.bannerBacks > div.active {
  opacity: 1;
}

/* Видео ведёт себя точно так же, как background-size: cover */
.bannerBacks video {
  position: absolute;
  inset: 0;

  display: block;
  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: center center;

  pointer-events: none;
}

.bannerBacks video::-webkit-media-controls {
  display: none !important;
}

/* .bannerBacks:before{
    content: '';
    position: absolute;
    background: url(images/fadeB.svg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
} */

/* .bannerBacks:after{
    content: '';
    position: absolute;
    width: 100%;
    height: 270px;
    left: 0;
    bottom: -1px;
    background: url(images/fadeA.svg);
    background-position: bottom center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 2;
} */

.bannerContent {
  padding-top: 140px;
  position: relative;
  z-index: 5;
}

.bannerContent h1 {
  margin: 0 0 17px;
  font-family: Unbounded, Arial, sans-serif;
  font-size: 94px;
  line-height: 100%;
  font-weight: 700;
  overflow: hidden;
  text-overflow: ellipsis;
  /* display: -moz-box; */
  -moz-box-orient: vertical;
  /* display: -webkit-box; */
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  line-clamp: 3;
  box-orient: vertical;
}

/* Заголовок главного баннера */

.realMain .bannerContent {
  padding-top: 289px;
}

.realMain .bannerContent .container {
  width: calc(100% - 30px);
  max-width: 1280px;
}

.realMain .mainBannerTitle {
  box-sizing: border-box;

  width: 502.17px;
  height: 251.33px;
  margin: 0;
  padding: 26.7496px 44.5826px;

  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 17.83px;

  overflow: visible;
  text-overflow: clip;

background:
  linear-gradient(
    rgba(31, 31, 49, 0.88),
    rgba(31, 31, 49, 0.88)
  ) padding-box,
  linear-gradient(
    45deg,
    #56ff5f 0%,
    rgba(86, 255, 95, 0.08) 50%,
    #56ff5f 100%
  ) border-box;

border: 2px solid transparent;
border-radius: 35.6661px;

-webkit-backdrop-filter: blur(12px);
backdrop-filter: blur(12px);

  -webkit-line-clamp: unset;
  line-clamp: unset;
}

.realMain .mainBannerTitleText {
  width: 413px;
  height: 139px;
  margin: 0;
  flex: 0 0 139px;

  display: flex;
  align-items: center;

  color: #f8f8f8;

  font-family: TT, Arial, sans-serif;
  font-size: 87.0348px;
  font-weight: 800;
  line-height: 69px;
  letter-spacing: -2.39588px;
  text-transform: uppercase;
  white-space: normal;
}

.realMain .mainBannerTitleAccent {
  width: 410.42px;
  height: 41px;
  margin: 0;
  flex: 0 0 41px;

  display: flex;
  align-items: center;

  color: #56ff5f;

  font-family: TT, Arial, sans-serif;
  font-size: 51.2948px;
  font-weight: 800;
  line-height: 41px;
  letter-spacing: -1.41203px;
  text-transform: uppercase;
}

/* Нижний ряд главного баннера */

.mainBannerActions {
  width: 100%;
  height: 40px;
  margin-top: 168.67px;

  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
}

.mainBannerButton {
  box-sizing: border-box;

  width: 289px;
  height: 40px;
  padding: 6px 14px;
  flex: 0 0 289px;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;

  color: #19191f;
  background: #56ff5f;
  border-radius: 73.0877px;

  transition:
    transform 0.2s ease,
    background-color 0.2s ease;
}

.mainBannerButton span {
  width: auto;
  margin: 0;
  flex: 1 1 auto;

  color: #19191f;

  font-family: TT, Arial, sans-serif;
  font-size: 22.6333px;
  font-weight: 800;
  line-height: 27px;
  letter-spacing: -0.07em;
  text-align: center;
  text-transform: uppercase;
  white-space: nowrap;
}

.mainBannerButton svg {
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  display: block;
}

.mainBannerButton:hover {
  background: #77ff7e;
}

.mainBannerMarker {
  width: 12px;
  height: 12px;
  min-width: 12px;
  margin: 0;
  flex: 0 0 12px;
  display: block;
  overflow: visible;
}
/* Фоновая картинка общей страницы новостей */

.bannerMain.bannerNews {
  height: 366px;
  isolation: isolate;
  position: relative;
  overflow: visible;

  background: transparent;
}

.newsPagePattern {
    position: absolute;
    z-index: 1;

    width: 733px;
    height: 680px;

    right: 0;
    top: 104px;

    background-image: url("images/main-banner-graphic.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;

    opacity: 0.7;
    pointer-events: none;
}

.newsPageBackground {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 0;

  width: 100vw;
  height: 1100px;

  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;

  overflow: hidden;
  transform: translateX(-50%);
  pointer-events: none;
}

/* Контент hero и следующий блок находятся над картинкой */

.bannerNews .bannerContent {
    position: relative;
    z-index: 5;
}

.bannerNews .bannerContent .container {
    position: relative;
    z-index: 5;
}

.bannerNews .bannerContent h1 {
    position: relative;
    z-index: 5;
}

.bannerNews + .container {
    position: relative;
    z-index: 5;
}

/* Заголовок hero */

.bannerNews .bannerContent {
    padding-top: 167px;
}

.bannerNews .bannerContent .container {
    box-sizing: border-box;
    width: min(1280px, calc(100% - 30px));
    max-width: none;
    margin: 0 auto;
    padding: 0;
}

.bannerNews .bannerContent h1 {

    position: relative;
    z-index: 2;

    display: block;
    width: min(814px, 100%);
    min-height: 100px;
    margin: 0;
    padding: 0;

    overflow: visible;
    text-overflow: clip;

    color: #F8F8F8;
    font-family: TT, 'TT Travels Next', Arial, sans-serif;
    font-size: 110px;
    font-weight: 800;
    line-height: 100px;
    letter-spacing: -0.02em;
    text-transform: uppercase;

    -webkit-line-clamp: unset;
    line-clamp: unset;
    -webkit-box-orient: initial;
}

.blockTitle,
.wp-block-heading {
  margin: 0 0 32px;
  font-family: Unbounded, Arial, sans-serif;
  font-weight: 300;
  font-size: 36px;
}

.blockTitleWrap {
  margin: 0 0 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.blockTitleWrap .blockTitle {
  margin: 0;
}

.blockTitleWrap a {
  font-size: 19px;
  opacity: 0.6;
  transition: 0.3s all;
}

.blockTitleWrap a:hover {
  opacity: 1;
}

.blockTitleWrap > span:not(.notSelect):not(.isSelect) {
  display: flex;
  align-items: center;
  color: rgb(248 248 248 / 60%);
  cursor: pointer;
}

.blockTitleWrap > span:not(.notSelect):not(.isSelect)::after {
  content: "▼";
  margin-left: 5px;
  color: #f8f8f8;
  font-size: 14px;
}

.roadmapWrap .isSelect {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 228px;
}

.roadmapWrap .isSelect::before {
  content: "";
  flex: 0 0 12px;
  width: 12px;
  height: 12px;
  background: rgb(248 248 248 / 40%);

  /* Стрелка влево, как в макете */
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
}

.roadmapWrap .isSelect text {
  display: none;
}

.roadmapWrap .isSelect ul {
  position: static;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  background: transparent;
  opacity: 1;
  pointer-events: auto;
  list-style: none;
}

.roadmapWrap .isSelect li {
  display: block;
  min-width: 64px;
  padding: 0;
  color: rgb(248 248 248 / 40%);
  font-family: TT, Arial, sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 100%;
  cursor: pointer;
}

.roadmapWrap .isSelect li:hover {
  color: #f8f8f8;
}

.roadmapWrap .isSelect li.selected {
  color: #56ff5f;
  font-weight: 800;
  opacity: 1;
  pointer-events: none;
}

/* =========================
   Роадмап
   ========================= */

.roadmapWrap {
  position: relative;
  left: 50%;
  z-index: 2;

  width: min(1280px, calc(100vw - 30px));
  margin-top: 80px;

  transform: translateX(-50%);
}

.roadmapWrap .blockTitleWrap {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;

  width: 100%;
  margin: 0 0 20px;
}

.roadmapWrap .blockTitle {
  margin: 0;

  color: #f8f8f8;

  font-family: TT, Arial, sans-serif;
  font-size: 32px;
  font-weight: 800;
  line-height: 36px;
  text-transform: uppercase;
}

.roadmapBlock {
  width: 100%;
  overflow: visible;
}

.roadmapList {
  position: relative;

  display: flex;
  align-items: stretch;

  width: 100%;
  margin: 0;

  aspect-ratio: 1280 / 419.8;
  background: transparent;

  container-type: inline-size;
}

/* Горизонтальная линия */

.roadmapList::before {
  content: "";

  position: absolute;
  top: 17.46cqw;
  right: 0;
  left: 0;
  z-index: 0;

  height: max(1px, 0.08475cqw);

  background: #f8f8f8;
}

/* Месяц */

.roadmapItem {
  position: relative;
  z-index: 1;

  width: 8.333333%;
  height: 100%;
  flex: 0 0 8.333333%;
}

/* Точка месяца */

.roadmapItem::before {
  content: "";

  position: absolute;
  top: 17.05cqw;
  left: 0;
  z-index: 2;

  box-sizing: border-box;

  width: 0.84766cqw;
  height: 0.84766cqw;

  border: max(1px, 0.08475cqw) solid #f8f8f8;
  border-radius: 50%;

  background: #19191f;

  transform: translateX(-50%);
}

.roadmapItem.hasGame::before {
  background: #f8f8f8;
}

.roadmapItem.active::before {
  border-color: #56ff5f;
  background: #56ff5f;
}

/* Название месяца */

.roadmapItem > span {
  position: absolute;
  top: 15.42cqw;
  left: 0;

  display: block;

  width: 100%;
  padding: 0;

  border-radius: 0;
  background: transparent;

  color: rgb(248 248 248 / 60%);

  font-family: TT, Arial, sans-serif;
  font-size: 1.09375cqw;
  font-weight: 800;
  line-height: 100%;
  letter-spacing: 0.02em;
  text-align: left;
  text-transform: uppercase;

  cursor: default;
}

.roadmapItem.active > span {
  color: #56ff5f;
  background: transparent;
}

/* Карточка турнира */

.rmItemInner {
  --rm-shift: 0px;
  --rm-line-rgb: 248 248 248;

  --rm-shift: 0px;

  position: absolute;
  left: 0;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.625cqw;

  box-sizing: border-box;

  width: 10.9375cqw;
  min-height: 5.132cqw;
  padding: 0.84746cqw 0.42373cqw;

  border: max(1px, 0.08475cqw) solid #421fcb;
  border-radius: 0.50847cqw;

  background: rgb(31 31 31 / 30%);

  color: #f8f8f8;
  text-align: center;
  text-decoration: none;

  transform: translateX(calc(-50% + var(--rm-shift)));

  transition:
    opacity 0.2s ease,
    background-color 0.2s ease,
    border-color 0.2s ease;
}

.rmItemInner p {
  order: 1;

  display: -webkit-box;

  width: 100%;
  margin: 0;
  overflow: hidden;

  color: #56ff5f;

  font-family: TT, Arial, sans-serif;
  font-size: 1.09375cqw;
  font-weight: 500;
  line-height: 1.2075cqw;
  text-align: center;

  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.rmItemInner strong {
  order: 2;

  display: block;

  width: 100%;
  margin: 0;

  color: #f8f8f8;

  font-family: TT, Arial, sans-serif;
  font-size: 0.9375cqw;
  font-weight: 500;
  line-height: 0.78125cqw;
  text-align: center;
  text-transform: uppercase;
}

/* Вертикальная линия карточки */

.rmItemInner::after {
  content: "";

  position: absolute;
  left: 50%;

  width: max(1px, 0.08475cqw);

  transform: translateX(-50%);
  pointer-events: none;
}

/* Верхняя карточка */

.rmItemInner.rmTop {
  top: 2.734375cqw;
}

.rmItemInner.rmTop::after {
  top: calc(100% + 0.390625cqw);
  bottom: calc(100% - 13.925625cqw);

  background: linear-gradient(
    to bottom,
    rgb(var(--rm-line-rgb) / 0.9) 0%,
    rgb(var(--rm-line-rgb) / 0.55) 55%,
    rgb(var(--rm-line-rgb) / 0) 100%
  );
}

/* Нижняя карточка */

.rmItemInner.rmBottom {
  top: 24.779cqw;
  min-height: 6.226cqw;
}

.rmItemInner.rmBottom::after {
  bottom: calc(100% + 0.390625cqw);

  height: 6.128375cqw;

  background: linear-gradient(
    to bottom,
    rgb(var(--rm-line-rgb) / 0) 0%,
    rgb(var(--rm-line-rgb) / 0.55) 45%,
    rgb(var(--rm-line-rgb) / 0.9) 100%
  );
}

/* Прошедшие турниры */

.rmItemInner.rmPast {
  opacity: 0.4;
}

/* Обычные турниры — зелёное оформление */

.roadmapItem.active .rmItemInner:not(.rmInternational),
.rmItemInner:not(.rmInternational):hover {
  --rm-line-rgb: 248 248 248;

  border-color: #56ff5f;
  background: #421fcb;
  opacity: 1;
}

.rmItemInner.rmInternational,
.roadmapItem.active .rmItemInner.rmInternational,
.rmItemInner.rmInternational:hover {
  --rm-line-rgb: 248 248 248;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.625cqw;

  width: 16.40625cqw;
  min-height: 5.151cqw;
  padding: 0.84746cqw 0.42373cqw;

  border: 0.0390625cqw solid #ffc96f;
  border-radius: 0.50847cqw;

  background: rgb(0 0 0 / 60%);
  opacity: 1;

  -webkit-backdrop-filter: blur(0.9375cqw);
  backdrop-filter: blur(0.9375cqw);
}

.rmInternational .rmItemLogo {
  display: none;
}

.rmInternational p {
  order: 1;

  display: block;

  width: 100%;
  margin: 0;

  color: #ffc96f;

  font-size: 1.09375cqw;
  line-height: 1.2075cqw;
  text-align: center;

  opacity: 0.6;

  overflow: hidden;
  -webkit-line-clamp: unset;
}

.rmInternational strong {
  order: 2;

  display: block;

  width: 100%;
  margin: 0;

  text-align: center;
}
.newsList {
  display: flex;
  flex-wrap: wrap;
}

.postItem {
  background: -moz-linear-gradient(
    145deg,
    rgba(255, 255, 255, 1) 0%,
    rgba(25, 5, 84, 1) 35%,
    rgba(49, 9, 191, 1) 100%
  );
  background: -webkit-linear-gradient(
    145deg,
    rgba(255, 255, 255, 1) 0%,
    rgba(25, 5, 84, 1) 35%,
    rgba(49, 9, 191, 1) 100%
  );
  background: linear-gradient(
    145deg,
    rgba(255, 255, 255, 1) 0%,
    rgba(25, 5, 84, 1) 35%,
    rgba(49, 9, 191, 1) 100%
  );
  width: calc(25% - 9px);
  margin-right: 12px;
  height: 215px;
  position: relative;
  -moz-box-shadow: 0px 0px 44px rgba(85, 0, 255, 0);
  -webkit-box-shadow: 0px 0px 44px rgba(85, 0, 255, 0);
  box-shadow: 0px 0px 44px rgba(85, 0, 255, 0);
  transition: 0.3s all;
}

.postItem:nth-child(4n) {
  margin-right: 0;
}

.postItem:hover{
  -moz-box-shadow: 0px 0px 44px rgba(85, 0, 255, 0.7);
  -webkit-box-shadow: 0px 0px 44px rgba(85, 0, 255, 0.7);
  box-shadow: 0px 0px 44px rgba(85, 0, 255, 0.7);
}

.postItem img {
  position: absolute;
  top: 1px;
  left: 1px;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  object-fit: cover;
  object-position: center;
}

.postItem:before {
  content: "";
  position: absolute;
  top: 1px;
  left: 1px;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  background: -moz-linear-gradient(
    180deg,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.0086472) 6.67%,
    rgba(0, 0, 0, 0.03551) 13.33%,
    rgba(0, 0, 0, 0.0816599) 20%,
    rgba(0, 0, 0, 0.147411) 26.67%,
    rgba(0, 0, 0, 0.231775) 33.33%,
    rgba(0, 0, 0, 0.331884) 40%,
    rgba(0, 0, 0, 0.442691) 46.67%,
    rgba(0, 0, 0, 0.557309) 53.33%,
    rgba(0, 0, 0, 0.668116) 60%,
    rgba(0, 0, 0, 0.768225) 66.67%,
    rgba(0, 0, 0, 0.852589) 73.33%,
    rgba(0, 0, 0, 0.91834) 80%,
    rgba(0, 0, 0, 0.96449) 86.67%,
    rgba(0, 0, 0, 0.991353) 93.33%,
    #000000 100%
  );
  background: -webkit-linear-gradient(
    180deg,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.0086472) 6.67%,
    rgba(0, 0, 0, 0.03551) 13.33%,
    rgba(0, 0, 0, 0.0816599) 20%,
    rgba(0, 0, 0, 0.147411) 26.67%,
    rgba(0, 0, 0, 0.231775) 33.33%,
    rgba(0, 0, 0, 0.331884) 40%,
    rgba(0, 0, 0, 0.442691) 46.67%,
    rgba(0, 0, 0, 0.557309) 53.33%,
    rgba(0, 0, 0, 0.668116) 60%,
    rgba(0, 0, 0, 0.768225) 66.67%,
    rgba(0, 0, 0, 0.852589) 73.33%,
    rgba(0, 0, 0, 0.91834) 80%,
    rgba(0, 0, 0, 0.96449) 86.67%,
    rgba(0, 0, 0, 0.991353) 93.33%,
    #000000 100%
  );
  background: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.0086472) 6.67%,
    rgba(0, 0, 0, 0.03551) 13.33%,
    rgba(0, 0, 0, 0.0816599) 20%,
    rgba(0, 0, 0, 0.147411) 26.67%,
    rgba(0, 0, 0, 0.231775) 33.33%,
    rgba(0, 0, 0, 0.331884) 40%,
    rgba(0, 0, 0, 0.442691) 46.67%,
    rgba(0, 0, 0, 0.557309) 53.33%,
    rgba(0, 0, 0, 0.668116) 60%,
    rgba(0, 0, 0, 0.768225) 66.67%,
    rgba(0, 0, 0, 0.852589) 73.33%,
    rgba(0, 0, 0, 0.91834) 80%,
    rgba(0, 0, 0, 0.96449) 86.67%,
    rgba(0, 0, 0, 0.991353) 93.33%,
    #000000 100%
  );
  z-index: 2;
}

.postBottom {
  position: absolute;
  left: 13px;
  bottom: 13px;
  width: calc(100% - 26px);
  z-index: 3;
  opacity: 0.6;
}

.postBottom span {
  display: flex;
  align-items: center;
}

.postBottom span:before,
.toComments:before {
  content: "";
  width: 20px;
  height: 19px;
  background: url(images/comm.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  margin-right: 5px;
}

.postPreview {
  position: absolute;
  left: 13px;
  bottom: 34px;
  bottom: 10px;
  z-index: 3;
  width: calc(100% - 26px);
}

.postPreview h3 {
  margin: 5px 0 7px;
  font-family: Unbounded, Arial, sans-serif;
  font-size: 20px;
  line-height: 110%;
}

.postPreview span {
  font-size: 15px;
  opacity: 0.6;
}

.postPreview p {
  margin: 0 0 0;
  text-overflow: ellipsis;
  display: -webkit-box;
  overflow: hidden;
  height: 90px;
  height: 0;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  /* white-space: nowrap; */
  font-size: 13px;
  opacity: 0.6;
  line-height: 135%;
  transition: 0.3s all;
}

.postPreview:hover p {
  margin: 0 0 8px;
}

/* Главный блок новостей */

.bannerMain.realMain {
  margin-bottom: 0;
}

.realMain + .container {
  padding-top: 100px;
}

.newsListWrapMain {
  position: relative;
  z-index: 2;
  width: 100vw;
  min-height: 431px;
  margin-left: 50%;
  transform: translateX(-50%);

  display: flex;
  flex-direction: column;
  align-items: center;
}

.newsListWrapMain .blockTitleWrap,
.newsListWrapMain .newsList {
  width: calc(100% - 30px);
  max-width: 1280px;
}

.newsListWrapMain .blockTitleWrap {
  height: 36px;
  margin: 0 auto 40px;

  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 40px;
}

.newsListWrapMain .blockTitle {
  margin: 0;

  color: #f8f8f8;

  font-family: TT, Arial, sans-serif;
  font-size: 32px;
  font-weight: 800;
  line-height: 36px;
  text-transform: uppercase;
}

.newsListWrapMain .blockTitleWrap > a {
  display: flex;
  align-items: center;
  gap: 6px;

  color: #f8f8f8;
  opacity: 0.6;

  font-family: TT, Arial, sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 120%;
  letter-spacing: 0.02em;
  white-space: nowrap;
}

.newsListWrapMain .blockTitleWrap > a::after {
  content: "";

  width: 12px;
  height: 12px;
  flex: 0 0 12px;

  background: url(images/arrow-new.svg) center / contain no-repeat;
}

.newsListWrapMain .blockTitleWrap > a:hover {
  opacity: 1;
}

/* Общий компонент карточек новостей */

.newsCardList {
    margin: 0;
    padding: 0;

    display: grid;
    align-items: start;
}

.newsCardListLarge {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.newsListWrapMain .newsCardListLarge {
    gap: 25px;
}

.newsCardList .postItem {
    box-sizing: border-box;
    position: relative;

    width: 100%;
    height: auto;
    margin: 0;
    overflow: hidden;

    display: grid;

    background: transparent;
    border-radius: 6px;
    box-shadow: none;

    transition: none;
}

.newsCardListLarge .postItem {
    grid-template-rows: minmax(0, 1fr) 108px;
    aspect-ratio: 410 / 355;
}

.newsCardList .postItem::before {
    display: none;
}

.newsCardList .postItem > img {
    position: static;

    width: 100%;
    height: 100%;
    max-height: none;

    display: block;
    object-fit: cover;
    object-position: center;

    border-radius: 6px 6px 0 0;
}

.newsCardList .postPreviewContent {
    box-sizing: border-box;
    position: static;

    width: 100%;
    margin: 0;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    background: #19191F;
    border-width: 0 1px 1px;
    border-style: solid;
    border-color: #421FCB;
    border-radius: 0 0 6px 6px;

    -webkit-backdrop-filter: blur(40px);
    backdrop-filter: blur(40px);

    transition:
        background-color 0.2s ease,
        border-color 0.2s ease;
}

.newsCardListLarge .postPreviewContent {
    height: 108px;
    min-height: 108px;
    padding: 20px 20px 24px;
}

.newsCardList .postPreview {
    position: static;

    width: 100%;
    margin: 0;
    padding: 0;

    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.newsCardListLarge .postPreview {
    gap: 16px;
}

.newsCardList .postPreview h3 {
    order: 0;

    width: 100%;
    height: 2em;
    min-height: 2em;
    margin: 0;
    overflow: hidden;

    display: -webkit-box;

    color: #F8F8F8;
    font-family: TT, 'TT Travels Next', Arial, sans-serif;
    font-weight: 800;
    line-height: 100%;

    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.newsCardListLarge .postPreview h3 {
    font-size: 16px;
}

.newsCardList .postPreview > span {
    order: 1;

    width: 100%;
    margin: 0;

    color: #F8F8F8;
    opacity: 0.6;

    font-family: TT, 'TT Travels Next', Arial, sans-serif;
    font-weight: 600;
    line-height: 100%;
}

.newsCardListLarge .postPreview > span {
    font-size: 16px;
}

.newsCardList .postPreview p {
    display: none !important;
}

.newsCardList .postItem:hover {
    box-shadow: none;
    transform: none;
}

.newsCardListHighlighted .postPreviewContent {
    background: #421FCB;
    border-color: rgb(53 30 203 / 40%);
}

@media (hover: hover) {
    .newsCardList:not(.newsCardListHighlighted)
    .postItem:hover
    .postPreviewContent {
        background: rgb(53 30 203 / 40%);
        border-color: rgb(53  30 203 / 40%);
    }
}


/* Общая страница новостей */

.newsPageFeed {
    width: 100%;

    display: flex;
    flex-direction: column;
    gap: 30px;
}

.newsPageFeatured {
    width: 100%;

    display: flex;
    flex-direction: column;
    gap: 20px;
}

.newsPageFeaturedTitle {
    margin: 0;

    display: flex;
    align-items: center;
    gap: 10px;

    color: #56FF5F;
    font-family: TT, 'TT Travels Next', Arial, sans-serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 20px;
    letter-spacing: -0.02em;
}

.newsPageFeaturedTitle svg {
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
}

.newsPageFeatured .postPreview h3 {
    font-size: 18px;
}

.newsPageDivider {
    width: 100%;
    height: 0;

    border-top: 1px solid #421FCB;
}

.newsCardListCompact {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    column-gap: 24px;
    row-gap: 30px;
}

.newsCardListCompact .postItem {
    display: flex;
    flex-direction: column;

    min-width: 0;
    border-radius: 4.47188px;
}

.newsCardListCompact .postItem > img {
    width: 100%;
    height: auto;
    aspect-ratio: 302 / 182;

    border-radius: 4.47188px 4.47188px 0 0;
}

.newsCardListCompact .postPreviewContent {
    height: 88px;
    min-height: 88px;
    padding: 14.9062px 14.9062px 20px;

    border-width: 0 0.745313px 0.745313px;
    border-radius: 0 0 4.47188px 4.47188px;
}

.newsCardListCompact .postPreview {
    gap: 11.93px;
}

.newsCardListCompact .postPreview h3 {
    font-size: 13.4156px;
}

.newsCardListCompact .postPreview > span {
    font-size: 11.925px;
}


/* Мобильная ссылка главной */

.newsListWrapMain .mobileMore {
    display: none;
}

.backImage {
  position: relative;
  isolation: isolate;

  height: 800px;
  margin: -65px 0 -210px;
  overflow: hidden;

  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

.backImage::before {
  content: "";

  position: absolute;
  top: 0;
  left: 50%;
  z-index: 1;

  width: max(100%, 1595.11px);
  height: 26.19%;

  background: linear-gradient(
    180deg,
    #19191f 0%,
    rgba(25, 25, 31, 0) 88.29%
  );

  transform: translateX(-50%);
  pointer-events: none;
}

.backImage::after {
  content: "";

  position: absolute;
  right: auto;
  bottom: 0;
  left: 50%;
  z-index: 1;

  width: max(100%, 1595.11px);
  height: 44.15%;

  background: linear-gradient(
    180deg,
    rgba(25, 25, 31, 0) 0%,
    #19191f 88.29%
  );

  transform: translateX(-50%);
  pointer-events: none;
}



/* =========================
   Почему смотреть Dota 2
   ========================= */

.whyWrap {
  position: relative;
  left: 50%;
  z-index: 2;

  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 40px;

  width: min(1280px, calc(100vw - 30px));
  margin: 0;

  transform: translateX(-50%);
}

.whyWrap .whyTitle {
  box-sizing: border-box;

  display: flex;
  align-items: flex-end;

  width: 100%;
  max-width: 620px;
  min-height: 72px;
  margin: 0;
  padding: 0;

  color: #f8f8f8;

  font-family: TT, Arial, sans-serif;
  font-size: 32px;
  font-weight: 800;
  line-height: 36px;
  text-transform: uppercase;
}

.whyList {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
  gap: 25px;

  width: 100%;
  margin: 0;
}

.whyItem {
  box-sizing: border-box;

  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;

  width: 100%;
  min-height: 185px;
  margin: 0;
  padding: 20px 20px 40px;

  border: 1px solid #421fcb;
  border-radius: 10px;

  background: linear-gradient(180deg, #421fcb 0%, rgb(66 31 203 / 10%) 100%);
}

.whyItem:first-child {
  min-height: 251px;
}

.whyNumber {
  display: flex;
  align-items: flex-end;

  width: auto;
  height: 25px;
  margin: 0;

  color: #56ff5f;

  font-family: TT, Arial, sans-serif;
  font-size: 36px;
  font-weight: 800;
  line-height: 25px;
}

.whyItem .whyItemTitle {
  display: flex;
  align-items: flex-end;

  width: 100%;
  min-height: 13px;
  margin: 0;

  color: #56ff5f;

  font-family: TT, Arial, sans-serif;
  font-size: 18px;
  font-weight: 800;
  line-height: 18px;
}

.whyItem .whyItemText {
  width: 100%;
  white-space: normal;
  overflow-wrap: break-word;
  margin: 0;

  color: #f8f8f8;
  opacity: 1;

  font-family: Montserrat, Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 140%;
  letter-spacing: 0.02em;
}

/* Финальная секция: расписание + EPT Leaderboard */

.homeFinal {
    position: relative;
    left: 50%;
    isolation: isolate;

    width: min(1440px, 100vw);
    margin-top: 110px;
    padding: 60px 0;

    display: flex;
    flex-direction: column;
    gap: 100px;

    overflow: hidden;
    box-sizing: border-box;
    border-radius: 40px;
    background: #260460;
    transform: translateX(-50%);
}

.homeFinalGraphic {
    position: absolute;
    top: calc(50% - 448.06px - 53.94px);
    left: 758px;
    z-index: 0;

    display: block;
    width: 754.11px;
    height: 896.12px;
    max-width: none;
    overflow: visible;

    pointer-events: none;
}

.finalSchedule,
.eptRating {
  position: relative;
  z-index: 1;

  width: min(1280px, calc(100% - 40px));
  margin: 0 auto;
}

.finalSchedule {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.finalBlockTitle {
  width: 100%;
  max-width: 1280px;
  margin: 0;

  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 32px;
  font-weight: 800;
  line-height: 36px;
  text-transform: uppercase;
}

.finalScheduleHeading {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 20px;

  width: 100%;
}

.finalScheduleHeading .finalBlockTitle {
  width: auto;
  flex: 1 1 auto;
}

.finalScheduleMore {
  flex: 0 0 auto;

  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.02em;

  opacity: 0.6;
  text-decoration: none;

  transition: opacity 0.2s ease;
}

.finalScheduleMore:hover {
  opacity: 1;
}

.finalScheduleContent {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.finalTournamentTitle {
  margin: 0;

  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 18px;
  font-weight: 800;
  line-height: 100%;
}

.finalScheduleGroup {
  width: 100%;
}

.finalScheduleGroupHead {
  box-sizing: border-box;
  width: 100%;
  height: 43px;
  padding: 16px 12px;

  display: flex;
  align-items: center;
  justify-content: space-between;
}

.finalScheduleGroupHead > div {
  display: flex;
  align-items: center;
  gap: 10px;
}

.finalScheduleGroupHead time,
.finalScheduleGroupHead span {
  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: 0.02em;
  opacity: 0.6;
}

.finalScheduleGroupHead time {
  font-weight: 700;
  line-height: 120%;
}

.finalScheduleLiveLabel {
  opacity: 1 !important;
}

.finalScheduleMatches {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.finalMatch {
  position: relative;
  width: 100%;
}

.finalMatch.hasLink {
  cursor: pointer;
}

.finalMatchCardLink {
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: 10px;
}

.finalMatchMain {
  box-sizing: border-box;
  width: 100%;
  height: 84px;
  padding: 12px 20px;

  display: grid;
  grid-template-columns: minmax(180px, 292px) minmax(480px, 656px) minmax(
      140px,
      292px
    );
  align-items: center;
  justify-content: space-between;
  gap: 15px;

  border: 1px solid transparent;
  border-radius: 10px;
  background: rgb(0 0 0 / 60%);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  transition: border-color 0.2s ease;
}

@media (hover: hover) {
  .finalMatch.hasLink:hover .finalMatchMain {
    border-color: #56ff5f;
  }
}

.finalMatch.isLive .finalMatchMain {
  border-color: #56ff5f;
  background: #421fcb;
}

.finalMatchMeta {
  display: flex;
  align-items: center;
  gap: 8px;
}

.finalMatchMeta time {
  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 18px;
  font-weight: 800;
  line-height: 100%;
  letter-spacing: -0.02em;
}

.finalMatchMeta span {
  color: #fff;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  line-height: 100%;
  opacity: 0.6;
}

.finalMatchTeams {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}

.finalTeam {
  min-width: 0;
  flex: 1 1 0;

  display: flex;
  align-items: center;
  gap: 24px;
}

.finalTeamA {
  justify-content: flex-end;
}

.finalTeamB {
  justify-content: flex-start;
}

.finalTeamName {
  width: 200px;
  overflow: hidden;

  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.02em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.finalTeamA .finalTeamName {
  text-align: right;
}

.finalTeamLogo {
  width: 60px;
  height: 60px;
  flex: 0 0 60px;

  display: flex;
  align-items: center;
  justify-content: center;
}

.finalTeamLogo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.finalTeam strong,
.finalScoreDivider {
  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 24px;
  font-weight: 800;
  line-height: 100%;
}

.finalScoreDivider {
  opacity: 0.6;
}

.finalMatchAction {
  display: flex;
  justify-content: flex-end;
}

.finalMatchAction a {
  position: relative;
z-index: 2;

  min-width: 93px;
  height: 32px;
  padding: 0 13px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  box-sizing: border-box;

  border-radius: 30px;
  background: #56ff5f;
  color: #19191f;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
  text-decoration: none;
}

.finalMatchAction a::before {
  content: "";
  width: 0;
  height: 0;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 8px solid #19191f;
}

.finalMatchBottom {
  display: none;
}

.finalMatchBottom > a {
  position: relative;
  z-index: 2;
}

.finalScheduleEmpty {
  margin: 0;
  color: rgb(248 248 248 / 60%);
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 16px;
}

/* EPT Leaderboard */

.eptRating {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
}

.eptRating .finalBlockTitle {
  width: 846px;
  max-width: 100%;
  text-align: left;
}

.eptTable {
  width: 846px;
  max-width: 100%;

  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 40px;
}

.eptTableList {
  width: 100%;

  display: flex;
  flex-direction: column;
  gap: 16px;
}

.eptTableHead {
  box-sizing: border-box;
  width: 100%;
  height: 35px;
  padding: 12px 0;

  display: flex;
  align-items: center;
  justify-content: space-between;
}

.eptTableHead > div {
  width: 400px;
  display: flex;
  align-items: center;
  gap: 20px;
}

.eptTableHead span {
  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 120%;
  letter-spacing: 0.02em;
  opacity: 0.6;
}

.eptRow {
  width: 100%;
  height: 60px;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
}

.eptTeam {
  width: 400px;
  min-width: 0;

  display: flex;
  align-items: center;
  gap: 12px;
}

.eptRank {
  width: fit-content;
  flex: 0 0 30px;

  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 30px;
  font-weight: 800;
  line-height: 100%;
}

.eptLogo {
  width: 60px;
  height: 60px;
  flex: 0 0 60px;

  display: flex;
  align-items: center;
  justify-content: center;
}

.eptLogo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.eptTeam h3 {
  min-width: 0;
  margin: 0;
  overflow: hidden;

  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.02em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.eptPoints {
  width: 116px;
  flex: 0 0 116px;

  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 30px;
  font-weight: 800;
  line-height: 100%;
  text-align: left;
}

.eptDivider {
  display: block;
  width: 100%;
  height: 1px;
  flex: 0 0 1px;
  background: #56ff5f;
}

.eptExtra {
  display: none;
}

.eptTable.isExpanded .eptRow.eptExtra {
  display: flex;
}

.eptTable.isExpanded .eptDivider.eptExtra {
  display: block;
}

#teamsAll {
  width: auto;
  height: 12px;
  padding: 0;

  display: inline-flex;
  align-items: center;
  gap: 6px;

  border: 0;
  background: transparent;
  color: rgb(248 248 248 / 60%);
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 120%;
  letter-spacing: 0.02em;
  cursor: pointer;
}

#teamsAll span {
  font-weight: 600;
}

#teamsAll::after {
  content: "";

  width: 12px;
  height: 12px;
  flex: 0 0 12px;

  background: url(images/arrow-new.svg) center / contain no-repeat;
  transition: transform 0.2s ease;
}

#teamsAll.isOpen::after {
  transform: rotate(180deg);
}

/* Прошедшие трансляции турнира */

.highlightsWrap {
  position: relative;
  left: 50%;
  isolation: isolate;

  box-sizing: border-box;

  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;

  width: min(1440px, 100vw);
  min-height: 398px;
  margin-top: 110px;

  transform: translateX(-50%);
}

.highlightsTitleWrap {
  box-sizing: border-box;

  display: flex;
  align-items: flex-start;

  width: 100%;
  height: 36px;
  padding: 0 80px;
}

.highlightsTitle {
  width: min(587px, 100%);
  margin: 0;

  color: #f8f8f8;

  font-family: TT, Arial, sans-serif;
  font-size: 32px;
  font-weight: 800;
  line-height: 36px;
  text-transform: uppercase;
}

/* Список */

.highlightsList {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 25px;

    width: 1280px;
    height: auto;

    overflow: hidden;
}

.highlightsList.slick-initialized {
  display: block;
  overflow: visible;
}

.highlightsList .slick-list {
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

.highlightsList .slick-track {
    display: flex;
    align-items: stretch;

    height: auto;
    margin: 0;
}

.highlightsList.slick-initialized .hlItem {
    display: flex;
    height: auto;
    margin-right: 25px;
}


/* Карточка */

.hlItem {
    box-sizing: border-box;

    display: flex;
    flex-direction: column;
    align-items: stretch;

    width: 410px;
    height: auto;
    flex: 0 0 410px;

    overflow: hidden;

    color: #f8f8f8;
    background: #19191f;
    border-radius: 10px;
}


.hlItem:hover {
    transform: none;
}

.hlItem > img {
  position: static;

  display: block;
  width: 410px;
  height: 231px;
  flex: 0 0 231px;

  object-fit: cover;
  object-position: center;

  border-radius: 10px 10px 0 0;
}

.hlContent {
    box-sizing: border-box;

    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;

    width: 100%;
    height: auto;
    min-height: 91px;
    padding: 20px 20px 30px;
    flex: 1 1 auto;

    background: #19191f;
    border-width: 0 1px 1px;
    border-style: solid;
    border-color: #421fcb;
    border-radius: 0 0 10px 10px;

    transition:
        background-color 0.2s ease,
        border-color 0.2s ease;
}

/* Первая/активная карточка и hover */
.hlItem:hover .hlContent {
  background: rgba(53, 30, 203, 0.4);
  border-color: rgba(53, 30, 203, 0.4);
}

.hlContent h3 {
    display: block;

    width: 100%;
    margin: 0;
    overflow: visible;

    color: #f8f8f8;

    font-family: TT, Arial, sans-serif;
    font-size: 20px;
    font-weight: 800;
    line-height: 24px;
}

.hlContent span {
    display: block;

    width: 100%;
    margin: auto 0 0;

    color: #f8f8f8;
    opacity: 0.6;

    font-family: TT, Arial, sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 16px;
}

/* Стрелки Slick */

.highlightsList .slick-next,
.highlightsList .slick-prev {
  position: absolute;
  top: 50%;
  z-index: 5;

  box-sizing: border-box;

  width: 34px;
  height: 76px;
  padding: 30px 12px;

  font-size: 0;

  background: transparent;
  border: 1px solid #421fcb;
  border-radius: 24px;

  cursor: pointer;
  transform: translateY(-50%);
}

.highlightsList .slick-next {
  right: -57px;
}

.highlightsList .slick-prev {
  left: -57px;
  transform: translateY(-50%) rotate(180deg);
}

.highlightsList .slick-next::before,
.highlightsList .slick-prev::before {
  content: "";

  position: absolute;
  top: 50%;
  left: 50%;

  width: 10px;
  height: 16px;

  background: url(images/arrow.svg) center / contain no-repeat;
  transform: translate(-50%, -50%);
}

.highlightsList .slick-disabled {
  opacity: 0;
  pointer-events: none;
}

/* На десктопе ссылка не нужна */

.highlightsMore {
  display: none;
}


.siBottom {
  display: flex;
  flex-wrap: wrap;
}

.siBottom span {
  width: 100%;
  font-size: 18px;
  color: #ffcd13;
  margin-bottom: 10px;
}

.siBottom a {
  background: -moz-linear-gradient(26.57deg, #3c1a70 0%, #5d0ef5 83.33%);
  background: -webkit-linear-gradient(26.57deg, #3c1a70 0%, #5d0ef5 83.33%);
  background: linear-gradient(26.57deg, #3c1a70 0%, #5d0ef5 83.33%);
  border-radius: 9px;
  font-size: 20px;
  padding: 9px 17px 10px;
  margin-right: 5px;
  opacity: 1;
  transition: 0.3s all;
}

.siBottom a + a {
  background: rgba(139, 136, 146, 0.32);
  backdrop-filter: blur(6px);
  margin-right: 0;
}

.siBottom a:hover {
  opacity: 0.9;
}


/* Футер и оффер */

.footerWrap,
.footerWrap * {
  box-sizing: border-box;
}

.footerWrap {
  position: relative;
  z-index: 8;
  isolation: isolate;

  width: 100%;
  max-width: none;
  margin-top: 140px;
  padding-top: 60px;
  overflow: hidden;

  color: #F8F8F8;
  background: #1E1E24;
  border-radius: 40px 40px 0 0;
}

.footerWrap a {
  color: inherit;
  text-decoration: none;
}

/* Оффер */

.footerOffer {
  width: calc(100% - 30px);
  max-width: 1280px;
  min-height: 390px;
  margin: 0 auto;

  display: grid;
  grid-template-columns: minmax(400px, 519px) minmax(0, 641px);
  align-items: flex-start;
  gap: clamp(40px, calc(33.333vw - 360px), 120px);
}

.footerOfferInfo {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 44px;
}

.footerOfferIntro {
  width: 100%;
  max-width: 490px;

  display: flex;
  flex-direction: column;
  gap: 20px;
}

.footerOfferPrime {
  width: 231px;
  height: 40px;

  display: flex;
  align-items: center;
  gap: 10px;
}

.footerOfferPrime span {
  font-family: Montserrat, Arial, sans-serif;
  font-size: 19px;
  font-weight: 500;
  line-height: 90%;
  letter-spacing: -0.01em;
  white-space: nowrap;
}

.footerOfferPrime strong {
  min-width: 108px;
  height: 40px;
  padding: 0 16px;

  display: flex;
  align-items: center;
  justify-content: center;

  color: #19191f;
  background: #f8f8f8;
  border-radius: 40px;

  font-family: TT, Arial, sans-serif;
  font-size: 17px;
  font-weight: 800;
  line-height: 100%;
  letter-spacing: -0.03em;
}

.footerOfferIntro p {
  margin: 0;

  color: #f8f8f8;
  opacity: 0.6;

  font-family: Montserrat, Arial, sans-serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 120%;
  letter-spacing: 0.02em;
}

.footerOfferBuy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 44px;
}

.footerOfferPrice {
  height: 80px;

  display: flex;
  align-items: flex-end;
  gap: 20px;

  color: #f8f8f8;
  font-family: TT, Arial, sans-serif;
  font-weight: 800;
  text-transform: uppercase;
  white-space: nowrap;
}

.footerOfferPrice strong {
  font-size: 100px;
  font-weight: 800;
  line-height: 80%;
}

.footerOfferPrice span {
  padding-bottom: 2px;
  font-weight: 800;
  font-size: 45px;
  line-height: 100%;
  letter-spacing: -0.07em;
}

.footerOfferActions {
  width: 424px;
  height: 44px;

  display: grid;
  grid-template-columns: 200px 212px;
  gap: 12px;
}

.footerOfferButton {
  height: 44px;
  padding: 8px 14px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 74px;

  font-family: TT, Arial, sans-serif;
  font-size: 22.65px;
  font-weight: 800;
  line-height: 120%;
  letter-spacing: -0.03em;
  text-transform: uppercase;

  transition:
    color 0.2s ease,
    background-color 0.2s ease,
    border-color 0.2s ease,
    transform 0.2s ease;
}

.footerOfferButtonPrimary {
  color: #ffffff;
  background: #421fcb;
  border: 1px solid #421fcb;
}

.footerOfferButtonSecondary {
  color: rgba(248, 248, 248, 0.6);
  background: transparent;
  border: 1px solid rgba(248, 248, 248, 0.3);
}

.footerOfferButton:hover {
}

.footerOfferButtonPrimary:hover {
  background: #5530e3;
  border-color: #5530e3;
}

.footerOfferButtonSecondary:hover {
  color: #f8f8f8;
  border-color: rgba(248, 248, 248, 0.8);
}

.footerOfferMedia {
  width: 100%;
  min-width: 0;

  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.footerOfferCard {
  position: relative;
  height: 390px;
  overflow: hidden;
  border-radius: 6px;
}

.footerOfferCard span {
  position: absolute;
  right: 10px;
  bottom: 18px;
  left: 10px;
  z-index: 2;

  color: rgba(248, 248, 248, 0.65);

  font-family: TT, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  line-height: 120%;
  text-align: center;
  text-transform: uppercase;
}

/* Нижняя часть футера */

footer {
  width: 100%;
  margin: 60px 0 0;
  padding: 30px 0 40px;

  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;

  position: relative;
}

footer::before {
  display: none;
}

.footerMarkers,
.footerTop,
.footerBottom {
  width: calc(100% - 30px);
  max-width: 1280px;
}

.footerMarkers {
  height: 12px;

  display: flex;
  align-items: center;
  justify-content: space-between;
}

.footerMarkers span {
  width: 12px;
  height: 12px;
  flex: 0 0 12px;
  display: block;

  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.2 4.2C7.2 4.53137 7.46863 4.8 7.8 4.8H11.4C11.7314 4.8 12 5.06863 12 5.4V6.6C12 6.93137 11.7314 7.2 11.4 7.2H7.8C7.46863 7.2 7.2 7.46863 7.2 7.8V11.4C7.2 11.7314 6.93137 12 6.6 12H5.4C5.06863 12 4.8 11.7314 4.8 11.4V7.8C4.8 7.46863 4.53137 7.2 4.2 7.2H0.6C0.268629 7.2 0 6.93137 0 6.6V5.4C0 5.06863 0.268629 4.8 0.6 4.8H4.2C4.53137 4.8 4.8 4.53137 4.8 4.2V0.6C4.8 0.268629 5.06863 0 5.4 0H6.6C6.93137 0 7.2 0.268629 7.2 0.6V4.2Z' fill='%2356FF5F'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 12px 12px;

  clip-path: none;
}

.footerTop {
  min-height: 69px;

  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
}

.fcOne {
  width: 182px;
  flex: 0 0 182px;
}

.logoOnly {
  width: 182px;
  height: 59px;
  display: block;
}

.logoOnly img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: left center;
}

.fcTwo {
  width: 420px;
  margin-left: clamp(60px, 16.8vw, 242px);

  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 34px;
}

.fcTwo ul {
  width: auto;
  margin: 0;
  padding: 0;

  display: flex;
  flex-direction: column;
  gap: 12px;
}

.fcTwo li {
  display: block;
  margin: 0;
  padding: 0;
}

.fcTwo a {
  display: block;

  color: rgba(248, 248, 248, 0.6);

  font-family: TT, Arial, sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 100%;

  transition: color 0.2s ease;
}

.fcTwo a:hover {
  color: #f8f8f8;
}

.footerTelegram {
  width: 34px;
  height: 34px;
  margin-left: auto;
  flex: 0 0 34px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid #421fcb;
  border-radius: 50%;

  transition:
    background-color 0.2s ease,
    transform 0.2s ease;
}

.footerTelegram span {
  width: 20px;
  height: 17px;

  display: block;

  background-image: url(images/tg.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;

  margin-left: -4px;
}

.footerTelegram:hover {
  background-color: #421fcb;
}

.footerBottom {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: flex-start;
  gap: 24px;
}

.footerMiddle p {
  margin: 0;

  color: rgba(248, 248, 248, 0.4);

  font-family: Montserrat, Arial, sans-serif;
  font-size: 10px;
  font-weight: 500;
  line-height: 110%;
  letter-spacing: 0.01em;
}

.footerLinks {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
}

.footerLinks a {
  color: rgba(248, 248, 248, 0.4);

  font-family: Montserrat, Arial, sans-serif;
  font-size: 10px;
  font-weight: 500;
  line-height: 110%;
  letter-spacing: 0.01em;

  transition: color 0.2s ease;
}

.footerLinks a:hover {
  color: rgba(248, 248, 248, 0.8);
}


/* Теги на странице одной новости */


.tagsSingle > span {
    margin-right: 30px;

    color: #80FF00;
    font-family: Unbounded, Arial, sans-serif;
    font-size: 20px;
}

.tagsSingle .tagsList {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.tagsSingle .tagsList a {
    padding: 4px 23px;

    border-radius: 50px;
    background: rgba(123, 123, 123, 0.15);
    color: rgb(255 255 255 / 60%);

    font-size: 16px;

    transition:
        color 0.2s ease,
        background-color 0.2s ease;
}

.tagsSingle .tagsList a:hover,
.tagsSingle .tagsList a.active {
    background: #80FF00;
    color: #000000;
}


/* Заголовок и теги общей страницы новостей */

.bannerNews + .container {
    box-sizing: border-box;
    width: min(1280px, calc(100% - 28px));
    max-width: none;
}

.newsListWrap > .blockTitle {
    width: 100%;
    margin: 0 0 50px;

    color: #F8F8F8;
    font-family: TT, 'TT Travels Next', Arial, sans-serif;
    font-size: 32px;
    font-weight: 800;
    line-height: 36px;
    text-transform: uppercase;
}

.newsListWrap .tagsWrap {
    display: flex;
    align-items: flex-start;

    width: 100%;
    min-height: 54px;
    margin: 0 0 40px;
}

.newsListWrap .tagsList {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    gap: 8px;

    width: min(1063px, 100%);
    min-height: 54px;
}

.newsListWrap .tagsList a {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;

    height: 23px;
    padding: 0 24px;

    border-radius: 60px;
    background: rgb(53 30 203 / 40%);
    color: #F8F8F8;

    font-family: TT, 'TT Travels Next', Arial, sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 100%;
    white-space: nowrap;

    transition:
        color 0.2s ease,
        background-color 0.2s ease;
}

.newsListWrap .tagsList a:hover,
.newsListWrap .tagsList a.active {
    background: #56FF5F;
    color: #19191F;
}


/* Пагинация общей страницы новостей */

.pagination {
    width: fit-content;
    min-height: 18px;
    margin: 30px auto 0;
    padding: 0;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;

    background: transparent;
    border-radius: 0;
    list-style: none;
}

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

.pagination .page-numbers {
    min-width: 0;
    margin: 0;
    padding: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    background: transparent;
    border-radius: 0;
    color: #F8F8F8;
    opacity: 0.4;

    font-family: TT, 'TT Travels Next', Arial, sans-serif;
    font-size: 18px;
    font-weight: 600;
    line-height: 100%;

    transition:
        color 0.2s ease,
        opacity 0.2s ease;
}

.pagination a.page-numbers:hover {
    color: #F8F8F8;
    opacity: 1;
}

.pagination .page-numbers.current {
    background: transparent;
    color: #56FF5F;
    opacity: 1;

    font-weight: 800;
}

.pagination .prev,
.pagination .next {
    width: 12px;
    height: 12px;
    min-width: 12px;

    color: #F8F8F8;
    opacity: 0.4;
}

.paginationArrow {
    width: 12px;
    height: 12px;
    display: block;

    background: currentColor;
}

.paginationArrowNext {
    clip-path: polygon(20% 0, 80% 50%, 20% 100%);
}

.paginationArrowPrev {
    clip-path: polygon(80% 0, 20% 50%, 80% 100%);
}


/* Мобильная кнопка */

.newsPageShowAll {
    display: none;
}

.breadCrumbs {
  margin: 15px 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  opacity: 0.6;
}

.breadCrumbs li {
  display: flex;
  align-items: center;
  font-size: 17px;
}

.breadCrumbs li:after {
  content: "/";
  flex-shrink: 0;
  margin: 0 8px;
}

.breadCrumbs li:last-child:after {
  display: none;
}


.bannerContent .container > p,
.bannerContent .container > a:not(.button) {
  margin: 30px 0 5px;
  font-size: 31px;
  opacity: 0.6;
  display: inline-block;
}

.bannerContent .container > a:not(.button) {
  margin: -5px 0 0;
  transition: 0.3s all;
}

.bannerContent .container > a:not(.button):hover {
  opacity: 1;
}



.authorWrap {
  display: flex;
  align-items: center;
  margin: 20px 0 40px;
}

.authorImage {
  width: 51px;
  height: 51px;
  border: 2px solid #5500ff;
  border-radius: 50%;
  overflow: hidden;
  margin-right: 12px;
  flex-shrink: 0;
}

.authorWrap > span {
  font-size: 19px;
}


/* Текст одиночной новости */

.postPage {
  width: 100%;
  max-width: 1280px;
  margin: 60px auto 0;

  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 40px;
}

.postPageContent {
  width: 100%;

  color: rgba(255, 255, 255, 0.9);
  font-family: Montserrat, Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 140%;
}


/* Абзацы */

.postPageContent p {
  width: 100%;
  margin: 0 0 20px;

  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  opacity: 1;
}

.postPageContent b {
  font-weight: 500;
}

.postPageContent p:last-child {
  margin-bottom: 0;
}


/* Ссылки внутри статьи */

.postPageContent a {
  color: #56FF5F;

  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  text-decoration: none;

  transition: opacity 0.2s ease;
}

.postPageContent a:hover {
  opacity: 0.7;
}


/* Списки */

.postPageContent ul,
.postPageContent ol {
  width: 100%;
  margin: 0 0 20px;
  padding-left: 24px;

  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  opacity: 1;
}

.postPageContent li + li {
  margin-top: 8px;
}


/* Заголовки, добавленные через редактор WordPress */

.postPageContent h2,
.postPageContent h3,
.postPageContent h4 {
  width: 100%;
  margin: 32px 0 20px;

  color: #FFFFFF;
  font-family: TT, Arial, sans-serif;
  font-weight: 800;
  line-height: 110%;
}

.postPageContent h2 {
  font-size: 32px;
}

.postPageContent h3 {
  font-size: 26px;
}

.postPageContent h4 {
  font-size: 22px;
}


/* Медиафайлы из редактора */

.postPageContent img,
.postPageContent video,
.postPageContent iframe {
  max-width: 100%;
}

.postPageContent img,
.postPageContent video {
  height: auto;
}


/* Нижняя дата статьи */

.singleNewsArticleDate {
  width: 100%;
  margin: 0;

  display: block;

  color: rgba(255, 255, 255, 0.6);
  font-family: Montserrat, Arial, sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 140%;
}

.morePostsWrap {
  margin: 55px 0 0;
  padding: 50px 0 0;
  position: relative;
}

.morePosts .postItem {
  border-radius: 1px;
  overflow: hidden;
}

.morePosts .postItem img {
  border-radius: 1px;
}
/* Читайте также */

.singleRelatedSection {
  width: 100%;
  max-width: 1280px;
  margin: 110px auto 0;

  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 40px;
}

.singleRelatedTitle {
  width: 100%;
  margin: 0;

  color: #FFFFFF;
  font-family: TT, Arial, sans-serif;
  font-size: 32px;
  font-weight: 800;
  line-height: 36px;
  text-transform: uppercase;
}

.singleRelatedBody {
  width: 100%;
}

.singleRelatedAll {
  display: none;
}


/* Сетка карточек */

.singleRelatedList {
  width: 100%;

  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: start;
  gap: 24px;
}


/* Карточка */

.singleRelatedCard {
  width: 100%;
  min-width: 0;

  display: flex;
  flex-direction: column;

  overflow: hidden;
  color: #F8F8F8;
  background: transparent;
  border-radius: 4.47px;
  text-decoration: none;

  transform: none;
}

.singleRelatedCard:hover {
  transform: none;
}

.singleRelatedCard > img {
  width: 100%;
  aspect-ratio: 302 / 182;

  display: block;
  object-fit: cover;
  object-position: center;

  border-radius: 4.47px 4.47px 0 0;
}

.singleRelatedCardContent {
  box-sizing: border-box;
  width: 100%;
  min-height: 79.19px;
  padding: 14.91px 14.91px 22.36px;

  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 11.93px;

  background: #19191F;
  border: 0.75px solid #421FCB;
  border-top: 0;
  border-radius: 0 0 4.47px 4.47px;
  backdrop-filter: blur(29.81px);

  transition:
    background-color 0.2s ease,
    border-color 0.2s ease;
}

.singleRelatedCard:hover .singleRelatedCardContent {
  background: rgba(53, 30, 203, 0.4);
}

.singleRelatedCardContent h3 {
  width: 100%;
  margin: 0;

  display: -webkit-box;
  overflow: hidden;

  color: #F8F8F8;
  font-family: TT, Arial, sans-serif;
  font-size: 13.42px;
  font-weight: 800;
  line-height: 100%;

  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.singleRelatedCardContent time {
  width: 100%;
  margin: 0;

  color: rgba(248, 248, 248, 0.6);
  font-family: TT, Arial, sans-serif;
  font-size: 11.93px;
  font-weight: 600;
  line-height: 100%;
}


/* Предыдущая и следующая статьи */

.singlePagination {
  width: 100%;
  margin: 0;

  display: flex;
  align-items: center;
  justify-content: space-between;
}

.singlePagination a {
  display: flex;
  align-items: center;
  gap: 6px;

  color: rgba(255, 255, 255, 0.6);
  font-family: TT, Arial, sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.02em;
  text-decoration: none;

  transition: color 0.2s ease;
}

.singlePagination a:hover {
  color: #FFFFFF;
}

.singlePaginationPrev::before,
.singlePaginationNext::after {
  content: "";

  width: 12px;
  height: 12px;
  flex: 0 0 12px;

  background: currentColor;
}

.singlePaginationPrev::before {
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
}

.singlePaginationNext {
  margin-left: auto;
}

.singlePaginationNext::after {
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}

.commentsWrap {
  margin: 75px 0 0;
}

.newComment {
  padding: 20px 24px;
  background: rgba(123, 123, 123, 0.15);
  border-radius: 8px;
}

.newComment textarea {
  width: 100%;
  resize: none;
  background: none;
  border: none;
  font-size: 18px;
  color: hsl(0deg 0% 100% / 90%);
  margin-bottom: 20px;
}

.newComment textarea::placeholder {
  color: hsl(0deg 0% 100% / 60%);
}

.newComment .siBottom {
  margin-top: -8px;
}

.commentItem {
  margin-top: 12px;
  padding: 20px 24px;
  background: rgba(123, 123, 123, 0.15);
  border-radius: 8px;
}

.commentItem .authorWrap {
  margin: 0;
}

.authorWrap div + div {
  display: flex;
  flex-direction: column;
}

.authorWrap div + div span {
  font-size: 19px;
}

.authorWrap div + div text {
  opacity: 0.6;
  font-size: 13px;
  margin-top: 5px;
}

.commentItem p {
  font-size: 18px;
  line-height: 140%;
  margin: 20px 0 15px;
}

.commentButtons {
  display: flex;
  align-items: center;
  font-size: 19px;
}

.commentButtons > * {
  margin-right: 24px;
}

.commentButtons a {
  opacity: 0.6;
  transition: 0.3s all;
}

.commentButtons a:hover {
  opacity: 1;
}

.commentButtons span {
  color: #80ff00;
  cursor: pointer;
}

.commentItem .commentItem {
  background: none;
  margin: 0 0 -20px;
  padding-bottom: 0;
  position: relative;
}

.commentItem .commentItem:before {
  content: "";
  position: absolute;
  top: 20px;
  left: 0;
  width: 20px;
  height: 30px;
  border-left: 1px solid #a0a0a0;
  border-bottom: 1px solid #a0a0a0;
  border-bottom-left-radius: 8px;
}

.commentItem .commentItem .commentItem {
  padding-top: 0;
  padding-bottom: 20px;
}

.commentItem .commentItem .commentItem + .commentItem {
  padding-bottom: 0;
}

.commentItem .commentItem .commentItem:before {
  top: 0;
}

.commentItem .commentItem .commentItem:after {
  content: "";
  background: #a0a0a0;
  width: 1px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.commentItem .commentItem .commentItem:last-child:after {
  display: none;
}

.menuToggle,
.bbMob,
.whyBackMobile {
    display: none;
}

.backImage div {
  position: absolute;
  width: 1260.84px;
  height: 507.04px;
  right: -580px;
  top: -100px;
  background: -moz-linear-gradient(
    245.53deg,
    #5500ff -14.33%,
    rgba(85, 0, 255, 0) 93.72%
  );
  background: -webkit-linear-gradient(
    245.53deg,
    #5500ff -14.33%,
    rgba(85, 0, 255, 0) 93.72%
  );
  background: linear-gradient(
    245.53deg,
    #5500ff -14.33%,
    rgba(85, 0, 255, 0) 93.72%
  );
  opacity: 0.8;
  filter: blur(100px);
  transform: rotate(-16.4deg);
  pointer-events: none;
}

/* Текст в hero турнира */

.bannerTour .bannerContent {
  position: relative;
  z-index: 5;

  box-sizing: border-box;
  padding-top: 193px;
}

.bannerTour .bannerContent .container {
  box-sizing: border-box;

  width: calc(100% - 160px);
  max-width: 1280px;
  margin: 0 auto;
}

.bannerTourIntro {
  box-sizing: border-box;

  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 30px;

  width: min(797px, 100%);
  min-height: 386px;
  margin: 0;
  padding: 0;
}

.bannerTour .bannerTourIntro h1 {
  display: block;

  width: 100%;
  margin: 0;
  padding: 0;

  overflow: visible;
  text-overflow: clip;

  color: #f8f8f8;

  font-family: TT, Arial, sans-serif;
  /* font-size: 110px; */
  font-size: clamp(2.5rem, 5vw + 0.5rem, 110px);
  
  font-weight: 800;
  line-height: 100px;
  letter-spacing: -0.05em;
  text-transform: uppercase;

  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;

  -webkit-line-clamp: unset;
  line-clamp: unset;
  -webkit-box-orient: initial;
}

.bannerTour .bannerTourIntro p {
  width: min(597px, 100%);
  margin: 0;
  padding: 0;

  color: #f8f8f8;

  font-family: TT, Arial, sans-serif;
  font-size: 28px;
  font-weight: 600;
  line-height: 28px;
}

/* Нижняя часть hero турнира */

.bannerTourMeta {
  box-sizing: border-box;

  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 40px;

  width: 100%;
  height: 57.42px;
  /* margin-top: 130px; */
	margin-top: clamp(40px, 6vw, 130px);
}

/* Кнопка и мобильные маркеры */

.tourWatchRow {
  display: flex;
  flex-direction: row;
  align-items: center;

  width: 313.2px;
  height: 57.42px;
  flex: 0 0 313.2px;
}

.tourWatchButton {
  box-sizing: border-box;

  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 7.21px;

  width: 313.2px;
  height: 57.42px;
  padding: 15.21px 21.41px;
  flex: 0 0 313.2px;

  color: #f8f8f8;
  background: #421fcb;
  border-radius: 72.0669px;

  transition:
    transform 0.2s ease,
    background-color 0.2s ease;
}

.tourWatchButton span {
  width: 237px;
  margin: 0;

  color: #f8f8f8;

  font-family: TT, Arial, sans-serif;
  font-size: 22.3172px;
  font-weight: 800;
  line-height: 27px;
  letter-spacing: -0.02em;
  text-align: center;
  text-transform: uppercase;
  white-space: nowrap;
}

.montserrat-dash {
  font-family: "Montserrat" !important;
}

.tournamentFinal .montserrat-dash {
  font-weight: 900 !important;
}

.tourWatchButton svg {
  display: block;

  width: 26.17px;
  height: 26.17px;
  flex: 0 0 26.17px;
}

.tourWatchButton:hover {
  background: #5530e3;
}

/* Маркеры нужны только на мобильном */
.tourWatchMarker {
  display: none;
}

/* Статистика */

.bannerTour .bcList {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 9.43px;

  width: 912px;
  height: 55.69px;
  margin: 0 0 0 auto;
  flex: 0 0 912px;
}

.bannerTour .bcItem {
  box-sizing: border-box;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;

  width: 297.97px;
  height: 55.69px;
  padding: 10.8475px 5.42373px;
  flex: 1 1 0;

  background: rgba(0, 0, 0, 0.6);
  border: 0.5px solid #56ff5f;
  border-radius: 6.50847px;
}

.bannerTour .bcItem span {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 100%;
  height: 8px;
  margin: 0;

  color: #56ff5f;
  opacity: 0.6;

  font-family: TT, Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  line-height: 100%;
  text-align: center;
}

.bannerTour .bcItem strong {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 100%;
  height: 14px;
  margin: 0;

  color: #56ff5f;

  font-family: TT, Arial, sans-serif;
  font-size: 20px;
  font-weight: 800;
  line-height: 100%;
  text-align: center;
}

.hlTabs {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}

.hlTabs span,
.hlTabs a {
  width: 50%;
  padding: 5px 0 14px;

  border-bottom: 2px solid transparent;
  opacity: 0.6;

  font-family: Unbounded, Arial, sans-serif;
  font-size: 27px;
  text-align: center;
  cursor: pointer;
  transition: opacity 0.3s ease, border-color 0.3s ease;
}

.hlTabs span:hover,
.hlTabs a:hover {
  opacity: 1;
}

.hlTabs span.active,
.hlTabs a.active {
  border-bottom-color: #80ff00;
  opacity: 1;
}

.scheduleWrap.scheduleMain {
  margin: 90px 0 0;
  position: relative;
}

.scheduleWrap.scheduleMain:after {
  content: "";
  position: absolute;
  width: 1260.84px;
  height: 507.04px;
  right: -650px;
  bottom: -280px;
  background: -moz-linear-gradient(
    245.53deg,
    #5500ff -14.33%,
    rgba(85, 0, 255, 0) 93.72%
  );
  background: -webkit-linear-gradient(
    245.53deg,
    #5500ff -14.33%,
    rgba(85, 0, 255, 0) 93.72%
  );
  background: linear-gradient(
    245.53deg,
    #5500ff -14.33%,
    rgba(85, 0, 255, 0) 93.72%
  );
  opacity: 0.8;
  filter: blur(100px);
  transform: rotate(-16.4deg);
  pointer-events: none;
  z-index: 1;
}

.scheduleWrap.scheduleMain.scheduleWrapSecondary:after {
  right: auto;
  left: -1050px;
}

.scheduleWrap.scheduleMain > * {
  position: relative;
  z-index: 3;
}

.scheduleWrap.scheduleMain .today {
  font-size: 28px;
  font-weight: 500;
  margin: -5px 0 15px;
}

.scheduleWrap.scheduleMain .slRow {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 12px;
  background: rgba(123, 123, 123, 0.15);
  backdrop-filter: blur(20px);
  border-radius: 1px;
  margin-bottom: 5px;
  flex-wrap: wrap;
}

.scheduleWrap.scheduleMain .slTitle {
  width: 220px;
  flex-shrink: 0;
}

.scheduleWrap.scheduleMain .slTitle span {
  font-size: 30px;
  font-weight: 700;
}

.scheduleWrap.scheduleMain .slTitle p {
  margin: 4px 0 0;
  font-size: 19px;
  opacity: 0.6;
}

.scheduleWrap.scheduleMain .slScore {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(100% - 390px);
}

.scheduleWrap.scheduleMain .slPlay {
  display: flex;
  justify-content: flex-end;
  width: 170px;
  flex-shrink: 0;
}

.scheduleWrap.scheduleMain .slPlay a {
  display: block;
  width: 60px;
  height: 44px;
  background: url(images/play.svg);
  background-position: center !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
}

.scheduleWrap.scheduleMain .live .slPlay a {
  width: 112px;
  background: url(images/live.svg);
}

.scheduleWrap.scheduleMain .live .slTitle .liveM {
  display: none;
  width: 48px;
  height: 18px;
  background: url(images/liveM.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.scheduleWrap.scheduleMain .slBottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  /* background: #1E1E1E; */
  background: hsl(0deg 0% 100% / 5%);
  border-top: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 1px;
  width: 100%;
  padding: 0 12px;
  margin: 12px -12px -8px;
}

.scheduleWrap.scheduleMain .slBottom p,
.scheduleWrap.scheduleMain .slBottom span,
.scheduleWrap.scheduleMain .slBottom .slbText a {
  opacity: 0.6;
  margin: 10px 0 12px;
}

.scheduleWrap.scheduleMain .slScoreItem {
  display: flex;
  align-items: center;
  width: 50%;
}

.scheduleWrap.scheduleMain .slScoreItem:first-child {
  justify-content: end;
  text-align: right;
}

.scheduleWrap.scheduleMain .slScoreItem img {
  max-width: 55px;
  max-height: 55px;
  margin: 0 25px;
}

.scheduleWrap.scheduleMain .slScoreItem p,
.scheduleWrap.scheduleMain .slScoreItem p text {
  margin: 0;
  font-size: 23px;
  font-weight: 500;
}

.scheduleWrap.scheduleMain .slScoreItem p text {
  display: none;
}

.scheduleWrap.scheduleMain .slScoreItem span {
  font-size: 23px;
  font-weight: 700;
}

.scheduleWrap.scheduleMain .slScoreItem:first-child:after {
  content: "/";
  font-size: 23px;
  margin: 0 10px;
}

/* Расписание и групповой этап турнира */

.tournamentFinal {
  position: relative;
  left: 50%;
  isolation: isolate;

  width: min(1440px, 100vw);
  margin-top: 110px;
  padding: 60px 0;

  display: flex;
  flex-direction: column;
  gap: 100px;

  overflow: hidden;
  box-sizing: border-box;
  border-radius: 40px;
  background: #260460;
  transform: translateX(-50%);
}

.tournamentFinalGraphic {
  position: absolute;
  top: calc(50% - 535.995px - 32.74px);
  left: 520px;
  z-index: 0;

  display: block;
  width: 902.11px;
  height: 1071.99px;
  max-width: none;
  overflow: visible;

  pointer-events: none;
}

.tournamentFinal > .finalSchedule,
.tournamentFinal > .groupStageWrap {
  position: relative;
  z-index: 1;

  width: min(1280px, calc(100% - 40px));
  margin: 0 auto;
}


.finalMatch.isLive .finalMatchBottom {
  background:
    linear-gradient(rgb(0 0 0 / 20%), rgb(0 0 0 / 20%)),
    #421fcb;
}

.groupStageWrap {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.groupStageHeading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 30px;
}

.groupStageHeading .finalBlockTitle {
  flex: 1 1 auto;
}

.groupStageWrap .gsTabs {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 24px;
  margin: 0;
}

.groupStageWrap .gsTabs span {
  width: auto;
  padding: 0 0 6px;

  border-bottom: 2px solid transparent;
  color: #f8f8f8;
  opacity: 0.6;

  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 120%;
  text-align: left;
  cursor: pointer;
  transition:
    color 0.2s ease,
    opacity 0.2s ease,
    border-color 0.2s ease;
}

.groupStageWrap .gsTabs span:hover {
  opacity: 1;
}

.groupStageWrap .gsTabs span.active {
  border-color: #56ff5f;
  color: #56ff5f;
  opacity: 1;
}

.groupStageScroll {
  width: 100%;
  overflow: visible;
}

.groupStageBlock {
  display: none;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 40px 24px;
  width: 100%;
}

.groupStageBlock.active {
  display: grid;
}

.groupStageBlock.full {
  grid-template-columns: minmax(0, 1fr);
}

.groupStageItem {
  min-width: 0;

  display: flex;
  flex-direction: column;
  gap: 12.34px;
}

.gsHead,
.gsRow {
  display: grid;
  grid-template-columns:
    minmax(0, 1fr)
    minmax(72px, 21.07%)
    minmax(72px, 21.07%);
  align-items: center;
}

.gsHead {
  min-height: 26.34px;
  padding: 0 0 12.34px;
  box-sizing: border-box;
}

.gsHead span {
  color: #f8f8f8;
  opacity: 0.6;

  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.02em;
}

.gsHead span:nth-child(2),
.gsHead span:nth-child(3) {
  text-align: center;
}

.gsRows {
  display: flex;
  flex-direction: column;
  gap: 12.34px;
}

.gsRow {
  box-sizing: border-box;
  width: 100%;
  min-height: 63.77px;
  padding: 0;

  border-left: 10.29px solid #421fcb;
  border-radius: 10px;
  background: rgb(53 30 203 / 40%);
}

.gsRow:first-child{
  border-left-color: #56ff5f;
}

.gsRow.yellow {
  border-left-color: #ffc96f;
}

.gsRow.red {
  border-left-color: #ff4d00;
}

.gsTitle {
  min-width: 0;
  min-height: 51.43px;
  padding: 0 12px;

  display: flex;
  align-items: center;
  gap: 12.17px;

  box-sizing: border-box;
  border-right: 1px solid rgb(248 248 248 / 18%);
}

.gsTitle span {
  margin: 0;

  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 20px;
  font-weight: 800;
  line-height: 100%;
}

.gsTitle img {
  display: block;
  width: 51.43px;
  height: 51.43px;
  flex: 0 0 51.43px;
  margin: 0;

  object-fit: contain;
  object-position: center;
}

.gsTitle p {
  min-width: 0;
  margin: 0;
  overflow: hidden;

  color: #f8f8f8;
  opacity: 0.6;

  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.02em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.stringWDL,
.stringM {
  min-width: 0;

  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 20px;
  font-weight: 800;
  line-height: 100%;
  text-align: center;
}

.groupStageMore {
  align-self: flex-start;
  padding: 0;

  border: 0;
  background: transparent;
  color: rgb(248 248 248 / 60%);

  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 120%;
  cursor: pointer;
}

.playoffWrap {
  --po-card-width: 351px;
  --po-round-gap: 75px;
  --po-side-padding: 37.5px;
  --po-bracket-height: 568.2px;
  --po-team-height: 60px;
  --po-match-gap: 2px;
  --po-match-height: 122px;
  --po-group-gap: 20px;
  --po-two-padding: 71px;
  --po-two-gap: 182px;
  --po-pair-four: 142px;
  --po-pair-two: 304px;
  --po-logo-size: 51.68px;
  --po-score-width: 60px;
  --po-line-width: 1.5px;

  position: relative;
  left: 50%;
  width: min(1280px, calc(100vw - 30px));
  margin-top: 80px;
  transform: translateX(-50%);
}

.playoffHeading {
  position: relative;
  z-index: 10;

  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  width: 100%;
}

.playoffWrap .blockTitle {
  width: auto;
  margin: 0;
  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 32px;
  font-weight: 800;
  line-height: 36px;
  text-transform: uppercase;
}

.playoffType {
  position: relative;
  z-index: 10;

  display: flex;
  align-items: flex-end;
  gap: 20px;

  color: rgb(248 248 248 / 60%);
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.02em;

  pointer-events: auto;
}

.playoffType button {
  appearance: none;

  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;

  color: inherit;
  font: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  white-space: nowrap;

  cursor: pointer;
  pointer-events: auto;
}

.playoffType button:hover {
  color: #f8f8f8;
}

.playoffType button.active {
  color: #56ff5f;
}

.playoffType button:focus-visible {
  outline: 1px solid #56ff5f;
  outline-offset: 4px;
}

.poPanel {
  display: none;
}

.poPanel.active {
  display: block;
}


.poScroll {
  width: 100%;
  margin-top: 40px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  overscroll-behavior-x: contain;
}

.poScroll::-webkit-scrollbar {
  display: none;
}

.poBlock {
  width: max-content;
  min-width: 100%;
}

.poBracketSection {
  width: max-content;
  min-width: 100%;
}

.poBracketSection + .poBracketSection {
  margin-top: 70px;
}

.poBracketSectionTitle,
.poThirdPlace h3 {
  margin: 0 var(--po-side-padding) 20px;
  color: rgb(248 248 248 / 60%);
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.02em;
  text-transform: uppercase;
}

.poRoundHead,
.poBracketGrid {
  display: grid;
  grid-template-columns: repeat(
    var(--po-round-count),
    var(--po-card-width)
  );
  column-gap: var(--po-round-gap);
  box-sizing: border-box;
  width: max-content;
  min-width: 100%;
  padding-right: var(--po-side-padding);
  padding-left: var(--po-side-padding);
}

.poRoundHead {
  padding-bottom: 20px;
  border-bottom: 1.03px solid rgb(248 248 248 / 30%);
}

.poRoundHead span {
  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.02em;
  text-align: center;
}

.poBracketGrid {
  height: var(--po-bracket-height);
  margin-top: 49px;
}

.poRound {
  position: relative;
  height: var(--po-bracket-height);
}

.poMatches-4 {
  display: grid;
  grid-template-rows: repeat(4, var(--po-match-height));
  row-gap: var(--po-group-gap);
}

.poMatches-4 .poMatch:nth-child(n + 3) {
  transform: translateY(var(--po-group-gap));
}

.poMatches-2 {
  display: grid;
  grid-template-rows: repeat(2, var(--po-match-height));
  row-gap: var(--po-two-gap);
  box-sizing: border-box;
  padding-top: var(--po-two-padding);
  padding-bottom: var(--po-two-padding);
}

.poMatches-1 {
  display: flex;
  align-items: center;
}

.poMatches-many {
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
}

.poMatches-0 {
  pointer-events: none;
}

.poMatch {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-rows: repeat(2, var(--po-team-height));
  gap: var(--po-match-gap);
  width: var(--po-card-width);
  height: var(--po-match-height);
}

.poTeam {
  display: grid;
  grid-template-columns:
    calc(var(--po-logo-size) + 20px)
    minmax(0, 1fr)
    var(--po-score-width);
  align-items: center;
  height: var(--po-team-height);
  overflow: hidden;
  border-radius: 10px;
  color: #f8f8f8;
}

.poTeam.winner {
  background: rgb(0 0 0 / 60%);
}

.poTeam.stand {
  background: rgb(0 0 0 / 30%);
}

.poTeam img {
  grid-column: 1;
  width: var(--po-logo-size);
  height: var(--po-logo-size);
  margin: 0;
  justify-self: center;
  object-fit: contain;
  object-position: center;
}

.poTeam p {
  grid-column: 2;
  width: 100%;
  margin: 0;
  overflow: hidden;
  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 12px;
  font-weight: 800;
  line-height: 12px;
  letter-spacing: 0.05em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.poTeam span {
  grid-column: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--po-score-width);
  height: var(--po-team-height);
  border-radius: 0 10px 10px 0;
  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 20px;
  font-weight: 800;
  line-height: 100%;
  letter-spacing: 0.05em;
}

.poTeam.winner span {
  background: #421fcb;
}

.poTeam.stand img,
.poTeam.stand p {
  opacity: 0.6;
}

.poTeam.stand span {
  background: rgb(53 30 203 / 40%);
}

/* Победитель всей сетки */
.poMatch.isChampionship .poTeam.winner span {
  background: #56ff5f;
  color: #19191f;
}

/* Горизонтальная часть линии, входящая в следующий раунд */
.poRound:not(:first-child) .poMatch::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 100%;
  width: calc(var(--po-round-gap) / 2);
  border-top: var(--po-line-width) solid rgb(248 248 248 / 40%);
  transform: translateY(-50%);
}

/* Горизонтальная часть линии, выходящая из матча */
.poRound:not(:last-child) .poConnector::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  width: calc(var(--po-round-gap) / 2);
  border-top: var(--po-line-width) solid rgb(248 248 248 / 40%);
  transform: translateY(-50%);
}

/* Вертикальное объединение пары матчей */
.poRound:not(:last-child)
  .poMatch:nth-child(odd)
  .poConnector::after {
  content: "";
  position: absolute;
  top: 50%;
  left: calc(100% + var(--po-round-gap) / 2);
  border-left: var(--po-line-width) solid rgb(248 248 248 / 40%);
}

.poMatches-4
  .poMatch:nth-child(odd)
  .poConnector::after {
  height: var(--po-pair-four);
}

.poMatches-2
  .poMatch:nth-child(odd)
  .poConnector::after {
  height: var(--po-pair-two);
}

.poMatches-1 .poConnector::after,
.poMatches-many .poConnector::after,
.poMatches-0 + .poRound .poMatch::before {
  display: none;
}

.poThirdPlace {
  width: var(--po-card-width);
  margin: 40px var(--po-side-padding) 0 auto;
}

.poThirdPlace h3 {
  margin-right: 0;
  margin-left: 0;
  text-align: center;
}

.poThirdPlaceMatches {
  display: grid;
  gap: 20px;
}

.poThirdPlace .poConnector,
.poThirdPlace .poMatch::before {
  display: none;
}




/* Информация о турнире */

.aboutTournamentWrap {
  position: relative;
  left: 50%;

  width: 100vw;
  min-height: 868px;
  margin-top: 80px;
  overflow: hidden;

  background: #000000;
  border-radius: 40px;
  transform: translateX(-50%);
  isolation: isolate;
}

.aboutTournamentBack {
  position: absolute;
  inset: 0;
  z-index: 0;

  overflow: hidden;
  border-radius: 40px;
}

.aboutTournamentBack img {
  display: block;

  width: 100%;
  height: 100%;
  max-width: none;
  margin: 0;

  object-fit: cover;
  object-position: center;
}

.atText {
  position: relative;
  z-index: 1;

  box-sizing: border-box;
  width: min(1280px, calc(100% - 30px));
  min-height: 868px;
  margin: 0 auto;
  padding: 69.2px 0 69px;
}

.atIntro {
  width: 662px;
  max-width: 100%;
}

.aboutTournamentWrap .blockTitle {
  width: 100%;
  margin: 0;

  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 32px;
  font-weight: 800;
  line-height: 36px;
  text-transform: uppercase;
}

.atIntroText {
  width: 100%;
  margin-top: 67px;

  color: #f8f8f8;
  font-family: Montserrat, Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 140%;
  letter-spacing: 0.02em;
}

.atIntroText p {
  margin: 0;
    font-family: Montserrat, Arial, sans-serif;

}

.atIntroText p + p {
  margin-top: 16px;
}

.atList {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 25px;

  width: 100%;
  margin-top: 105px;
}

.atlItem {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 32px;

  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: 340px;
  padding: 30px 20px 40px;

  background:
    linear-gradient(
      149.78deg,
      #421fcb 10.81%,
      rgb(66 31 203 / 10%) 81.6%
    ),
    rgb(0 0 0 / 60%);

  border-radius: 10px;

  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
}

.atlItem h3 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;

  width: 100%;
  min-height: 0;
  margin: 0;
}

.atlPhase {
  color: #56ff5f;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 26px;
  font-weight: 800;
  line-height: 100%;
  text-transform: uppercase;
}

.atlStage {
  color: #56ff5f;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 22px;
  font-weight: 600;
  line-height: 100%;
}

.atlBody {
  width: 100%;
  color: #f8f8f8;

  font-family: Montserrat, Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 140%;
  letter-spacing: 0.02em;
}

.atlBody p {
  margin: 0;
}

.atlBody p + p {
  margin-top: 8px;
}


/* Призовой фонд */

.prizeWrap {
    position: relative;
    left: 50%;
    z-index: 3;

    width: min(1280px, calc(100vw - 30px));
    margin: 90px 0 0;

    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;

    transform: translateX(-50%);
}

.prizeHeading {
    width: 100%;
    height: 36px;
}

.prizeHeading .blockTitle {
    width: 100%;
    margin: 0;

    color: #F8F8F8;

    font-family: TT, Arial, sans-serif;
    font-size: 32px;
    font-weight: 800;
    line-height: 36px;
    text-transform: uppercase;
}


/* Общая сумма */

.prizeTotal {
    position: relative;
    isolation: isolate;

    height: 85px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
}

.prizeTotal > img {
    position: absolute;
    top: -149.94px;
    left: 50%;
    z-index: 0;

    width: 272px;
    height: 215px;
    max-width: none;
    max-height: none;

    object-fit: cover;
    object-position: center 55%;

    transform: translateX(-50%);
    pointer-events: none;
    white-space: nowrap;
}

.prizeTotalMoney {
    position: relative;
    z-index: 1;

    display: block;
    width: 100%;
    margin: 0;

    color: #56FF5F;

    font-family: TT, Arial, sans-serif;
    font-size: 64.164px;
    font-weight: 800;
    line-height: 64px;
    letter-spacing: -0.07em;
    text-align: center;
    text-transform: uppercase;
}

.prizeTotalPoints {
    position: relative;
    z-index: 2;

    display: block;
    width: 100%;
    margin: 0;

    color: #56FF5F;

    font-family: TT, Arial, sans-serif;
    font-size: 20px;
    font-weight: 800;
    line-height: 20px;
    letter-spacing: -0.07em;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
}


/* Карточки */

.prizeList {
    width: 100%;

    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    column-gap: 24px;
    row-gap: 30px;
}

.prizeItem {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    height: 118.14px;
    padding: 20px 16.57px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16.57px;

    overflow: hidden;

    background: rgba(66, 31, 203, 0.5);
    border-radius: 13px;
}

.prizeItem:nth-child(-n + 4) {
    background: #421FCB;
}

.prizePlace {
    display: block;
    width: 100%;
    margin: 0;

    color: rgba(255, 255, 255, 0.2);

    font-family: TT, Arial, sans-serif;
    font-size: 25px;
    font-weight: 800;
    line-height: 16px;
    letter-spacing: -0.07em;
    text-align: center;
    text-transform: uppercase;
}

.prizeMoney {
    display: block;
    width: 100%;
    margin: 0;

    color: #F8F8F8;

    font-family: TT, Arial, sans-serif;
    font-size: 25px;
    font-weight: 800;
    line-height: 18px;
    text-align: center;
}

.prizePoints {
    display: block;
    width: 100%;
    margin: 0;

    color: rgba(248, 248, 248, 0.6);

    font-family: TT, Arial, sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 11px;
    text-align: center;
}

/* Команды */

.teamsWrap {
    position: relative;
    left: 50%;

    width: 100vw;
    margin: 90px 0 0;

    background: none !important;
    transform: translateX(-50%);
}

.teamsWrap::before,
.teamsWrap::after {
    display: none;
}

.teamsWrap > .container {
    width: min(1280px, calc(100vw - 30px));
    max-width: none;
    margin: 0 auto;
    padding: 0;
}

.teamsWrap .blockTitle {
    width: 100%;
    height: 36px;
    margin: 0 0 40px;

    color: #F8F8F8;

    font-family: TT, Arial, sans-serif;
    font-size: 32px;
    font-weight: 800;
    line-height: 36px;
    text-transform: uppercase;
}


/* Сетка */

.teamsList {
    width: 100%;

    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    column-gap: 12.36px;
    row-gap: 13.24px;
}

.teamItem {
    position: relative;

    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    height: 233.93px;
    padding: 26.4828px 13.2414px;

    display: flex;
    flex-direction: column;
    align-items: center;

    overflow: hidden;

    background: rgba(31, 31, 31, 0.3);
    border: 1.10345px solid #421FCB;
    border-radius: 20px;

    text-align: center;
    transition:
        background-color 0.2s ease,
        border-color 0.2s ease;
}

.teamItemHidden {
    display: none;
}


/* Логотип */

.teamItem > img {
    position: relative;
    z-index: 1;

    display: block;
    width: 110.34px;
    height: 110.34px;
    max-width: none;
    max-height: none;
    flex: 0 0 110.34px;

    object-fit: contain;
    transition:
        opacity 0.2s ease,
        visibility 0.2s ease;
}


/* Название команды */

.teamItem h4 {
    position: relative;
    z-index: 1;

    width: 154.48px;
    min-height: 38.62px;
    margin: 10.99px 0 0;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #F8F8F8;

    font-family: TT, Arial, sans-serif;
    font-size: 18px;
    font-weight: 800;
    line-height: 18px;
    letter-spacing: -0.02em;
    text-align: center;

    transition:
        opacity 0.2s ease,
        visibility 0.2s ease;
}


/* Invited / Qualification */

.teamItem > span {
    position: relative;
    z-index: 1;

    display: block;
    width: 100%;
    margin-top: auto;

    color: #F8F8F8;
    opacity: 0.4;

    font-family: TT, Arial, sans-serif;
    font-size: 12px;
    font-weight: 600;
    line-height: 12px;
    letter-spacing: -0.02em;
    text-align: center;

    transition:
        opacity 0.2s ease,
        visibility 0.2s ease;
}


/* Состав */

.teamItem ul {
    position: absolute;
    inset: 0;
    z-index: 2;

    box-sizing: border-box;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 30px 11.0345px 10px;

    overflow: hidden;


    opacity: 0;
    visibility: hidden;

    list-style: none;
    transition:
        opacity 0.2s ease,
        visibility 0.2s ease;
}

.teamItem:hover,
.teamItem.isRosterOpen {
    background: rgba(53, 30, 203, 0.4);
}

.teamItem:hover > img,
.teamItem:hover > h4,
.teamItem:hover > span,
.teamItem.isRosterOpen > img,
.teamItem.isRosterOpen > h4,
.teamItem.isRosterOpen > span {
    opacity: 0;
    visibility: hidden;
}

.teamItem:hover ul,
.teamItem.isRosterOpen ul {
    opacity: 1;
    visibility: visible;
}

.teamItem li {
    width: 100%;
    margin: 0;
    padding: 0;

    display: flex;
    align-items: center;

    color: rgba(248, 248, 248, 0.6);

    font-family: TT, Arial, sans-serif;
    font-size: 17.6552px;
    font-weight: 400;
    line-height: 180%;
    letter-spacing: -0.02em;
}

.teamItem li text {
    width: 14px;
    flex: 0 0 14px;

    font: inherit;
    text-align: left;
}

.teamItem li span {
    width: 15px;
    height: 11px;
    margin: 0 7px;
    flex: 0 0 15px;

    background-position: center !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
}

.teamItem li p {
    min-width: 0;
    margin: 0;
    overflow: hidden;

    color: #FFF;

    font: inherit;
    line-height: inherit;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
}


/* Показать все */

.teamsMore {
    margin: 13.24px 0 0;
    padding: 10px 0 0;

    display: flex;
    align-items: center;
    gap: 6px;

    border: 0;
    background: transparent;
    color: rgba(248, 248, 248, 0.6);

    font-family: TT, Arial, sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 120%;
    letter-spacing: 0.02em;

    cursor: pointer;
    appearance: none;
}

.teamsMore::after {
    content: "";

    width: 12px;
    height: 12px;
    flex: 0 0 12px;

    background: url(images/arrow-new.svg) center / contain no-repeat;
}



.highlightsWrap .blockTitle:not(.inAll),
.scheduleWrap.scheduleMain .slBottom > a {
  display: none;
}

.scheduleWrap.scheduleMain .slbText {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.scheduleWrap.scheduleMain .slBottom > a {
  width: 17px;
  height: 20px;
  background: url(images/playM.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}

/* Hero страницы расписания */

.bannerMain.bannerSchedule {
  width: 100%;
  height: 306px;
  min-height: 306px;

  background: #19191f;
}

.bannerSchedule .bannerContent {
  padding-top: 166px;
}

.bannerSchedule .bannerContent .container {
  width: min(1280px, calc(100% - 30px));
  max-width: none;
  margin: 0 auto;
}

.bannerSchedule .bannerContent h1 {
  display: block;

  width: min(993px, 100%);
  height: 100px;
  margin: 0;

  overflow: visible;
  text-overflow: clip;

  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 110px;
  font-weight: 800;
  line-height: 100px;
  letter-spacing: -0.02em;
  text-transform: uppercase;

  -webkit-line-clamp: unset;
  line-clamp: unset;
  -webkit-box-orient: initial;
}
.hlTabs.hlLinks {
  margin-top: -83px;
  position: relative;
  z-index: 3;
  justify-content: flex-start;
}

.hlTabs.hlLinks a {
  font-size: 20px;
  font-weight: 100;
  width: 200px;
}

.scheduleWrap.scheduleMain {
  margin: 40px 0 0;
}

.scheduleWrap.scheduleMain .scheduleList + .today {
  margin-top: 40px;
}

.scheduleWrap.scheduleMain .siBottom {
  margin: 50px 0 0;
}

.notLikeTabs {
  position: relative;
  z-index: 5;
  margin-top: -35px;
  display: none;
}

.notLikeTabs a {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 6px 10px;
  background: rgba(123, 123, 123, 0.15);
  backdrop-filter: blur(20px);
  border-radius: 2px;
  width: 130px;
  font-size: 14px;
  justify-content: space-between;
}

.notLikeTabs a:after {
  content: "";
  width: 7px;
  height: 10px;
  background: url(images/arrow.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}

.mobileMenuWrap {
  position: fixed;
  top: 86px;
  right: 15px;
  bottom: 15px;
  left: 15px;
  z-index: 9;

  display: none;
  width: auto;
  height: auto;

  border-radius: 10px;
  background: hsl(0deg 0% 6.45% / 92%);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);

  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;

  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-8px);

  transition:
    opacity 0.3s,
    visibility 0.3s,
    transform 0.3s;
}

.mobileMenuWrap.open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.mobileMenuWrap > ul {
  display: flex;
  flex-direction: column;
  align-items: stretch;

  margin: 0;
  padding: 24px;
}

.mobileMenuWrap ul li {
  display: block;
  margin: 0;
  padding: 0;

  font-size: 18px;
  text-align: left;
}

.mobileMenuWrap ul li > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 800;
  padding: 12px 0;
}

.mobileMenuWrap ul .sub-menu {
  display: none;
  flex-direction: column;
  align-items: stretch;

  margin: 0;
  padding: 0 0 10px 15px;
}

.mobileMenuWrap ul li.open > .sub-menu {
  display: flex;
}

.mobileMenuWrap ul li.menu-item-has-children > a {
  opacity: 1;
  pointer-events: auto;
}

.mobileMenuWrap ul li.menu-item-has-children > a:after {
  content: "▼";
  flex: 0 0 auto;

  margin-left: 10px;

  font-size: 10px;
  transition: transform 0.3s;
}

.mobileMenuWrap ul li.menu-item-has-children.open > a:after {
  transform: rotate(180deg);
}

body.mobileMenuOpen {
  overflow: hidden;
}

.mobileMore {
  display: none;
  align-items: center;
  justify-content: space-between;
  margin-top: 15px;
  font-size: 14px;
  color: #fff;
  opacity: 0.6;
  transition: 0.3s all;
}

.mobileMore:hover {
  opacity: 1;
}

.mobileMore:after {
  content: "";
  width: 10px;
  height: 16px;
  background: url(images/arrow.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 5px;
}

.scheduleWrap.scheduleMain .mobileMore {
  display: none;
}

.errorPageWrap {
  height: 100vh;
  background: url(images/404.webp);
  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  position: relative;
}

.errorPageWrap .container {
  height: 100%;
  position: initial;
}

.errorContent {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.errorContent img {
  margin: -125px 0 0 -75px;
  pointer-events: none;
  position: relative;
  z-index: 4;
}

.errorContent h1 {
  font-weight: 400;
  font-size: 32px;
  line-height: 100%;
  letter-spacing: -0.02em;
  color: #fff;
  opacity: 0.6;
  margin: -120px 0 0 0;
  position: relative;
  z-index: 5;
}

#errorPseudoA {
  position: absolute;
  width: 100%;
  height: 270px;
  left: 0;
  bottom: -1px;
  background: -moz-linear-gradient(
    180deg,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.0086472) 6.67%,
    rgba(0, 0, 0, 0.03551) 13.33%,
    rgba(0, 0, 0, 0.0816599) 20%,
    rgba(0, 0, 0, 0.147411) 26.67%,
    rgba(0, 0, 0, 0.231775) 33.33%,
    rgba(0, 0, 0, 0.331884) 40%,
    rgba(0, 0, 0, 0.442691) 46.67%,
    rgba(0, 0, 0, 0.557309) 53.33%,
    rgba(0, 0, 0, 0.668116) 60%,
    rgba(0, 0, 0, 0.768225) 66.67%,
    rgba(0, 0, 0, 0.852589) 73.33%,
    rgba(0, 0, 0, 0.91834) 80%,
    rgba(0, 0, 0, 0.96449) 86.67%,
    rgba(0, 0, 0, 0.991353) 93.33%,
    #000000 100%
  );
  background: -webkit-linear-gradient(
    180deg,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.0086472) 6.67%,
    rgba(0, 0, 0, 0.03551) 13.33%,
    rgba(0, 0, 0, 0.0816599) 20%,
    rgba(0, 0, 0, 0.147411) 26.67%,
    rgba(0, 0, 0, 0.231775) 33.33%,
    rgba(0, 0, 0, 0.331884) 40%,
    rgba(0, 0, 0, 0.442691) 46.67%,
    rgba(0, 0, 0, 0.557309) 53.33%,
    rgba(0, 0, 0, 0.668116) 60%,
    rgba(0, 0, 0, 0.768225) 66.67%,
    rgba(0, 0, 0, 0.852589) 73.33%,
    rgba(0, 0, 0, 0.91834) 80%,
    rgba(0, 0, 0, 0.96449) 86.67%,
    rgba(0, 0, 0, 0.991353) 93.33%,
    #000000 100%
  );
  background: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.0086472) 6.67%,
    rgba(0, 0, 0, 0.03551) 13.33%,
    rgba(0, 0, 0, 0.0816599) 20%,
    rgba(0, 0, 0, 0.147411) 26.67%,
    rgba(0, 0, 0, 0.231775) 33.33%,
    rgba(0, 0, 0, 0.331884) 40%,
    rgba(0, 0, 0, 0.442691) 46.67%,
    rgba(0, 0, 0, 0.557309) 53.33%,
    rgba(0, 0, 0, 0.668116) 60%,
    rgba(0, 0, 0, 0.768225) 66.67%,
    rgba(0, 0, 0, 0.852589) 73.33%,
    rgba(0, 0, 0, 0.91834) 80%,
    rgba(0, 0, 0, 0.96449) 86.67%,
    rgba(0, 0, 0, 0.991353) 93.33%,
    #000000 100%
  );
  z-index: 1;
}

#errorPseudoB {
  position: absolute;
  width: 45.5%;
  height: 100%;
  left: 0;
  top: 0;
  background: -moz-linear-gradient(
    270deg,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.0086472) 6.67%,
    rgba(0, 0, 0, 0.03551) 13.33%,
    rgba(0, 0, 0, 0.0816599) 20%,
    rgba(0, 0, 0, 0.147411) 26.67%,
    rgba(0, 0, 0, 0.231775) 33.33%,
    rgba(0, 0, 0, 0.331884) 40%,
    rgba(0, 0, 0, 0.442691) 46.67%,
    rgba(0, 0, 0, 0.557309) 53.33%,
    rgba(0, 0, 0, 0.668116) 60%,
    rgba(0, 0, 0, 0.768225) 66.67%,
    rgba(0, 0, 0, 0.852589) 73.33%,
    rgba(0, 0, 0, 0.91834) 80%,
    rgba(0, 0, 0, 0.96449) 86.67%,
    rgba(0, 0, 0, 0.991353) 93.33%,
    #000000 100%
  );
  background: -webkit-linear-gradient(
    270deg,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.0086472) 6.67%,
    rgba(0, 0, 0, 0.03551) 13.33%,
    rgba(0, 0, 0, 0.0816599) 20%,
    rgba(0, 0, 0, 0.147411) 26.67%,
    rgba(0, 0, 0, 0.231775) 33.33%,
    rgba(0, 0, 0, 0.331884) 40%,
    rgba(0, 0, 0, 0.442691) 46.67%,
    rgba(0, 0, 0, 0.557309) 53.33%,
    rgba(0, 0, 0, 0.668116) 60%,
    rgba(0, 0, 0, 0.768225) 66.67%,
    rgba(0, 0, 0, 0.852589) 73.33%,
    rgba(0, 0, 0, 0.91834) 80%,
    rgba(0, 0, 0, 0.96449) 86.67%,
    rgba(0, 0, 0, 0.991353) 93.33%,
    #000000 100%
  );
  background: linear-gradient(
    270deg,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.0086472) 6.67%,
    rgba(0, 0, 0, 0.03551) 13.33%,
    rgba(0, 0, 0, 0.0816599) 20%,
    rgba(0, 0, 0, 0.147411) 26.67%,
    rgba(0, 0, 0, 0.231775) 33.33%,
    rgba(0, 0, 0, 0.331884) 40%,
    rgba(0, 0, 0, 0.442691) 46.67%,
    rgba(0, 0, 0, 0.557309) 53.33%,
    rgba(0, 0, 0, 0.668116) 60%,
    rgba(0, 0, 0, 0.768225) 66.67%,
    rgba(0, 0, 0, 0.852589) 73.33%,
    rgba(0, 0, 0, 0.91834) 80%,
    rgba(0, 0, 0, 0.96449) 86.67%,
    rgba(0, 0, 0, 0.991353) 93.33%,
    #000000 100%
  );
  z-index: 2;
}

#errorPseudoC {
  position: absolute;
  width: 1575px;
  height: 675px;
  left: -48%;
  top: 28%;
  background: -moz-linear-gradient(
    119deg,
    #5500ff 17.59%,
    rgba(85, 0, 255, 0) 77.84%
  );
  background: -webkit-linear-gradient(
    119deg,
    #5500ff 17.59%,
    rgba(85, 0, 255, 0) 77.84%
  );
  background: linear-gradient(
    119deg,
    #5500ff 17.59%,
    rgba(85, 0, 255, 0) 77.84%
  );
  opacity: 0.8;
  filter: blur(100px);
  transform: rotate(-16.4deg);
  z-index: 3;
}

.copied {
  position: fixed;
  right: -350px;
  bottom: 10px;
  z-index: 15;
  font-size: 14px;
  background: hsl(0deg 0% 100% / 7%);
  padding: 15px 15px 14px;
  width: 200px;
  border-radius: 10px;
  line-height: 120%;
  transition: 0.3s all;
}

.copied.show {
  right: 10px;
}

#thisURL {
  display: none;
}


.scheduleWrap.scheduleMain .slScoreItem span + p {
  padding-left: 20px;
}

.scheduleWrap.scheduleMain .slScoreItem p + span {
  padding-left: 20px;
}

/* .container.onTop{
    z-index: 5;
} */

/* Full tournament schedule page */

.schedulePageFinal {
  position: relative;
  left: 50%;
  isolation: isolate;

  width: min(1440px, 100vw);
  margin-top: 60px;
  padding: 60px 0;

  overflow: hidden;
  box-sizing: border-box;
  border-radius: 40px;
  background: #260460;
  transform: translateX(-50%);
}

.schedulePageGraphic {
  position: absolute;
  top: calc(50% - 535.995px - 32.44px);
  left: 520px;
  z-index: 0;

  display: block;
  width: 902.11px;
  height: 1071.99px;
  max-width: none;
  overflow: visible;

  pointer-events: none;
}

.schedulePageSchedule {
  position: relative;
  z-index: 1;

  width: min(1280px, calc(100% - 40px));
  margin: 0 auto;
}

.schedulePageTabs {
  width: 100%;

  display: flex;
  align-items: flex-end;
  gap: 30px;
}

.schedulePageTabs a {
  color: #f8f8f8;
  font-family: TT, "TT Travels Next", Arial, sans-serif;
  font-size: 18px;
  font-weight: 800;
  line-height: 100%;
  text-decoration: none;
  text-transform: uppercase;
  opacity: 0.4;

  transition: opacity 0.2s ease;
}

.schedulePageTabs a:hover {
  opacity: 1;
}

.schedulePageTabs a.active {
  font-size: 32px;
  line-height: 36px;
  opacity: 1;
  pointer-events: none;
}

.schedulePageFinal .finalScheduleContent {
  gap: 24px;
}

/* Одиночная новость */

.singleNewsHero {
    position: relative;

    width: 100%;
    padding-top: 148px;

    display: flex;
    flex-direction: column;
    align-items: center;
}



.bannerMain.bannerSingle {
    width: 100%;
    height: auto;
    min-height: 0;
    margin: 0;
    order: 0;

    overflow: visible;
    background: transparent;
    border-radius: 0;
}

.bannerSingle .bannerContent {
    width: 100%;
    height: auto;
    padding: 0;
}

.singleNewsHeader {
    width: min(1280px, calc(100% - 30px));
    margin: 0 auto;
    padding: 0;

    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
}


/* Хлебные крошки */

.singleNewsBreadcrumbs {
    margin: 0;
    padding: 0;

    display: flex;
    align-items: center;
    flex-wrap: wrap;

    color: #FFFFFF;
    font-family: TT, Arial, sans-serif;
    font-size: 18px;
    font-weight: 600;
    line-height: 100%;
    letter-spacing: -0.02em;

    list-style: none;
    opacity: 0.6;
}

.singleNewsBreadcrumbs li {
    display: flex;
    align-items: center;
}

.singleNewsBreadcrumbs li::after {
    content: "/";
    margin: 0 8px;
}

.singleNewsBreadcrumbs li:last-child::after {
    display: none;
}

.singleNewsBreadcrumbs a {
  font-weight: 500;
    color: inherit;
    text-decoration: none;
    transition: opacity 0.2s ease;
}

.singleNewsBreadcrumbs a:hover {
    opacity: 0.7;
}


/* Информация о новости */

.singleNewsMain {
    width: 100%;

    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 28px;
}

.singleNewsMeta {
    display: flex;
    align-items: center;
    gap: 28px;

    color: #FFFFFF;
    font-family: TT, Arial, sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 100%;
    letter-spacing: -0.02em;
}

.singleNewsDate {
    opacity: 0.6;
    font-weight: 500;
}

.singleNewsComments,
.singleNewsShare {
    display: flex;
    align-items: center;
    gap: 6px;

    color: #FFFFFF;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit;
}

.singleNewsComments {
  display: none;
}

.singleNewsComments svg,
.singleNewsShare svg {
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    opacity: 0.5;
    font-weight: 500;
}

.singleNewsComments > span,
.singleNewsShare > span {
    opacity: 0.6;
    font-weight: 500;
}

.singleNewsShare {
    margin: 0;
    padding: 0;

    border: 0;
    background: transparent;
    cursor: pointer;
}

.singleNewsShare:hover > span,
.singleNewsShare:hover svg {
    opacity: 1;
}


/* Заголовок */

.singleNewsMain h1 {
    width: 100%;
    margin: 0;
    padding: 0;

    color: #FFFFFF;
    font-family: TT, Arial, sans-serif;
    font-size: clamp(42px, 4.8612vw, 70px);
    font-weight: 800;
    line-height: 100%;
    letter-spacing: 0;
    text-transform: none;
}


/* Автор */

.singleNewsAuthor {
    width: 100%;

    display: flex;
    align-items: center;
    gap: 12px;

    color: #FFFFFF;
    font-family: TT, Arial, sans-serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 100%;
    letter-spacing: -0.02em;
}

.singleNewsAuthor span {
  font-weight: 600;
}

.singleNewsAuthorImage {
    width: 55px;
    height: 55px;
    flex: 0 0 55px;

    overflow: hidden;
    background: #FFFFFF;
    border-radius: 50%;
}

.singleNewsAuthorImage img {
    width: 100%;
    height: 100%;
    margin: 0;

    display: block;
    object-fit: cover;
    object-position: center top;
}


/* Теги */

.singleNewsTags {
    position: relative;
    z-index: 2;

    width: min(1280px, calc(100% - 30px));
    margin: 40px auto 0;
    padding: 0;
}

.singleNewsTags .tagsList {
    width: 100%;
    max-width: 1063px;

    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.singleNewsTags .tagsList a {
    min-height: 23px;
    padding: 0 24px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    color: #F8F8F8;
    background: rgba(53, 30, 203, 0.4);
    border-radius: 60px;

    font-family: TT, Arial, sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 100%;
    text-decoration: none;

    transition:
        color 0.2s ease,
        background-color 0.2s ease;
}

.singleNewsTags .tagsList a:hover {
    color: #19191F;
    background: #56FF5F;
}

/* Главное изображение новости */

.postPagePreview {
    position: relative;
    z-index: 3;

    width: min(1444px, calc(100vw + 4px));
    aspect-ratio: 1444 / 660;
    margin: 60px auto 0;
    padding: 0;

    overflow: hidden;
    background: #19191F;
    border-radius: 40px;
}

.postPagePreview img {
    width: 100%;
    height: 100%;
    margin: 0;

    display: block;
    object-fit: cover;
    object-position: center;
    border-radius: inherit;
}

.postPagePreview::after {
    display: none;
}