:root {
  /* common */
  --color-green: #D9FF00;
  --color-blue: #1843D7;
  --color-light-blue: #91AAFF;
  --color-red: #FF4800;
  --color-beige: #E1DBC5;
  --color-beige-dark: #CABCAE;
  --color-black: #1A1D1F;
  --color-grey: #2D2D2D;
  --color-white: #FFFFFF;
  --color-text-main: #2D2D2D;
  --color-text-secondary: #FFBA9F;
  --color-text-light: #FFFCFB;
  --color-hover-light: #F4F6FF;
  --color-hover-dark: #FAFCFF;
  /* BG */
  --bg-green: var(--color-green);
  --bg-blue: var(--color-blue);
  --bg-red: var(--color-red);
  --bg-beige: var(--color-beige);
  --bg-beige-dark: var(--color-beige-dark);
  --bg-black: var(--color-black);
  --bg-dark: #1A1D1F;
  --bg-grey: var(--color-grey);
  --bg-light-grey: #F9F9F9;
  --bg-white: #FBFBFB;
  --bg-white-secondary: var(--color-white);
  --bg-overlay: rgba(0, 0, 0, 0.6);
  /* Text Green BG */
  --text-green-secondary: #798B15;
  --text-green-captions: #76861C;
  /* Text Red BG */
  --text-red-dark-secondary: #481400;
  --text-red-dark-captions: #982B00;
  /* Text Beige_light BG */
  --text-beige-light-secondary: #9B9685;
  --text-beige-light-captions: #8A8679;
  /* Text Beige_dark BG */
  --text-beige-dark-secondary: #8D847B;
  --text-beige-dark-captions: #84796D;
  /* Buttons White_Blue */
  --button-white-blue-bg-default: #F7F9FF;
  --button-white-blue-text: #113CCE;
  /* Buttons Blue_White */
  --button-blue-white-bg-hover: #1945DE;
  /* Buttons White_Red */
  --button-white-red-bg-hover: #FFF9F8;
  --button-white-red-text: #EB4200;
  /* Text Button */
  --text-button-black-on-red: #27120A;
  /* Buttons Black_Grey */
  --button-black-grey-bg-default: #27120A;
  --button-black-grey-bg-hover: #321E17;
  --button-black-grey-text: #F5F5F5;
  --button-black-grey-element: #F5F5F5;
  /* Buttons Black */
  --button-black-bg-hover: #343434;
  /* Buttons Red */
  --button-red-bg-hover: #FF5100;
  /* Buttons Green */
  --button-green-bg-hover: #DAFF33;
  /* Icons */
  --icon-white: #C6CEEA;
  /* Lines */
  --line-black-on-red: #27120A;
  --line-on-green: #B2CD18;
  --line-on-beige-light: #8A8A8A;
  --line-on-grey: #898282;
  --line-inputs: #E4E8F;
  /* Text on Black & Grey BG */
  --text-black-grey-secondary: #9F9A9A;
  /* Text on White BG */
  --text-white-secondary: #97A1C3;
  /* Text on Overlay BG */
  --font-base-vw: calc(14 / 1920 * 100vw);
  --font-size-xs: 1.2rem;
  /* 12px */
  --font-size-sm: 1.3rem;
  /* 13px */
  --font-size-md: 1.4rem;
  /* 14px */
  --font-size-lg: 1.8rem;
  /* 18px */
  --font-size-xl: 2.7rem;
  /* 27px */
  --line-height-xs: 1.6rem;
  /* 16px */
  --line-height-sm: 1.8rem;
  /* 18px */
  --line-height-md: 2.1rem;
  /* 21px */
  --line-height-lg: 2.7rem;
  /* 27px */
  --line-height-xl: 3.2rem;
  /* 32px */
  --font-size-h1: 6rem;
  /* 70px */
  --font-size-h2: 4.8rem;
  /* 48px */
  --font-size-h3: 3.8rem;
  /* 38px */
  --font-size-h4: 3.2rem;
  /* 32px */
  --font-size-h5: 1.8rem;
  /* 18px */
  --line-height-h1: 1;
  /* 80px */
  --line-height-h2: 4.8rem;
  /* 48px */
  --line-height-h3: 4.8rem;
  /* 48px */
  --line-height-h4: 3.6rem;
  /* 32px */
  --line-height-h5: 2.1rem;
  /* 21px */
}


@media screen and (max-width: 768px) {
  :root {
    --font-size-h1: 3.8rem;
    --font-size-h2: 2.4rem;
    --font-size-h3: 1.9rem;
    --font-size-h4: 1.6rem;
    --font-size-h5: 1.4rem;
    --line-height-h1: 1;
    --line-height-h2: normal;
    --line-height-h3: normal;
    --line-height-h4: normal;
    --line-height-h5: normal;
  }
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  font-size: var(--font-base-vw);
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
  -ms-scroll-chaining: none;
  overscroll-behavior: none; 
}

body {
  font-family: "HalvarBreit";
  font-size: var(--font-size-md);
  line-height: normal;
  color: var(--color-grey);
  font-style: normal;
  font-weight: 400;
  overflow-x: hidden;
  margin: 0;
  cursor: default;
  height: 100%;
}


main {
  display: block;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  /* 2 */
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

picture,
img {
  border-style: none;
  display: block;
  width: 100%;
  height: 100%;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: inherit;
  margin: 0;
}

button,
input {
  overflow: visible;
  font-family: inherit;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
  resize: none;
}

[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

@font-face {
  font-family: "HalvarBreit";
  src: url("../fonts/HalvarBreit-Light.woff2") format("woff");
  font-weight: 300;
  font-display: swap;
}

@font-face {
  font-family: "HalvarBreit";
  src: url("../fonts/HalvarBreit-Regular.woff2") format("woff");
  font-weight: normal;
  font-display: swap;
}

@font-face {
  font-family: "HalvarBreit";
  src: url("../fonts/HalvarBreit-Medium.woff2") format("woff");
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: "HalvarBreit";
  src: url("../fonts/HalvarBreit-Bold.woff2") format("woff");
  font-weight: 600;
  font-display: swap;
}

@font-face {
  font-family: "HalvarBreit";
  src: url("../fonts/HalvarBreit-Light.woff2") format("woff");
  font-weight: 300;
  font-display: swap;
}

@font-face {
  font-family: "Organetto";
  src: url("../fonts/Organetto-Bold.woff2") format("woff");
  font-weight: bold;
  font-display: swap;
}

.text-xs {
  font-size: var(--font-size-xs);
  line-height: var(--line-height-xs);
}

.text-sm {
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

.text-md {
  font-size: var(--font-size-md);
  line-height: var(--line-height-md);
}

.text-lg {
  font-size: var(--font-size-lg);
  line-height: var(--line-height-lg);
}

.text-xl {
  font-size: var(--font-size-xl);
  line-height: var(--line-height-xl);
}

.title-xs,
h5 {
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
}

.title-sm,
h4 {
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
}

.title-md,
h3 {
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
}

.title-lg,
h2 {
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
}

.title-xl,
h1 {
  font-size: var(--font-size-h1);
  line-height: var(--line-height-h1);
}

.title-xs,
.title-sm,
.title-md,
.title-lg,
.title-xl,
h1,
h2,
h3,
h4,
h5 {
  font-family: "Organetto";
  font-weight: bold;
}

[lang="kk"] .title-xs,
[lang="kk"] .title-sm,
[lang="kk"] .title-md,
[lang="kk"] .title-lg,
[lang="kk"] .title-xl,
[lang="kk"] h1,
[lang="kk"] h2,
[lang="kk"] h3,
[lang="kk"] h4,
[lang="kk"] h5,
[lang="kk"] .accordion-header.container,
[lang="kk"] .page-posts .card-title h1
{
  font-family: "HalvarBreit";
  font-weight: bold;
  text-transform: uppercase;
}

[lang="kk"] .event-title {
  font-family: "Organetto";
  font-weight: bold;
}

.text-left {
  text-align: left;
}

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

.text-uppercase {
  text-transform: uppercase;
}
ol, ul {
  list-style-position: inside;
}
.object-fit-contain {object-fit: contain;}
.object-fit-cover {object-fit: cover;}
.text-line-through {
  text-decoration: line-through;
}
.list {
  list-style: none;
  margin-top: -8px;
}

.list.bordered li {
  border-bottom: 1px solid;
}

.text-opacity {
  opacity: 0.65;
}

.container {
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  padding-left: 2rem;
  padding-right: 2rem;
  position: relative;
}

.container-md {
  max-width: 1366px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.container-sm {
  max-width: 1024px;
  position: relative;
  margin-right: auto;
  margin-left: auto;
}

.container-xs {
  max-width: 680px;
  position: relative;
  margin-right: auto;
  margin-left: auto;
}

.sidebar-container {
  display: grid;
  grid-template-columns: 1fr 43rem;
  gap: 2rem;
  align-items: flex-start;
}
sup {
  font-size: 1.4rem;
  line-height: normal;
  top: -2rem;
}
.sticky {
  position: sticky;
}

aside {
  padding: 3.8rem 1.6rem;
}

.section__header {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 5rem;
  z-index: 10;
}

section {
  position: relative;
  overflow: hidden;
  z-index: 1;
}

.section {
  padding-top: 6rem;
  padding-bottom: 6rem;
}

.section-md {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.section-sm {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.full-height {
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
}

.full-width {
  width: 100%;
}

.fullscreen {
  width: 100%;
  height: 100vh;
}

.image {
  display: block;
}

.bg {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.flex {
  display: flex;
  flex-flow: row wrap;
}
.flex-column {
  flex-direction: column;
  justify-content: flex-start;
}
.grid {
  display: grid;
}

.grid-2 {
  grid-template-columns: repeat(2, 1fr);
}

.grid-3 {
  grid-template-columns: repeat(3, 1fr);
}

.grid-4 {
  grid-template-columns: repeat(4, 1fr);
}

.grid-5 {
  grid-template-columns: repeat(5, 1fr);
}

.grid-6 {
  grid-template-columns: repeat(6, 1fr);
}

.row-reverse {
  flex-flow: row-reverse wrap;
}

.grid.row-reverse .text {
  order: 2;
}

.grid.row-reverse .image {
  order: 1;
}
.align-start {
  align-items: start;
}
.align-center {
  align-items: center;
}

.space-between {
  justify-content: space-between;
}

.justify-center {
  justify-content: center;
}
.gap-0 {
  gap: 0;
}
.gap-1 {
  gap: 1rem;
}

.gap-2 {
  gap: 2rem;
}

.gap-3 {
  gap: 3rem;
}

.gap-4 {
  gap: 4rem;
}

.gap-vw {
  gap: 3vw;
}
.text a {
  text-decoration: underline;
}
.pc {
  display: block !important;
}

.mobile {
  display: none !important;
}

.none {
  display: none;
}

.cursor-none {
  cursor: none;
}

.banner {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 1;
  top: 0;
  left: 0;
}
.banner img ,
.banner video {
  object-fit: cover;
  object-position: center top;
}
.video {
  position: relative;
  z-index: 1;
  overflow: hidden;
}
picture img {
  object-fit: cover;
}
.video video {
  -webkit-filter: brightness(0.65);
  filter: brightness(0.65);
  -o-object-fit: cover;
  object-fit: cover;
}

.video,
video {
  width: 100%;
  height: 100%;
  display: block;
}

#news, #other-news{
  background-color: #fff;
}

.posts .section__header {

  margin-bottom: 6.4rem;
}
.posts .section__header .section__title {
  line-height: .75;
}
.posts .grid {
  margin: 0 -1rem;
  width: calc(100% + 2rem);
  gap: 8rem 0;
}
.posts .pagination {
  width: 100%;
  margin-top: 8rem;
}
.news .post__img {
  height: 28.7rem;
}

.post {
  position: relative;
  padding: 0 1rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.post__text {
  padding-top: 8px;
  padding-bottom: 0.8rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.post__text .post__title {
  min-height: 5rem;
  overflow: hidden;
}

.post__text .post__date {
  margin-top: 4rem;
}
#news .posts { padding-top: 11.6rem;padding-bottom: 8.4rem;}
#other-news .posts {padding-top: 5rem; padding-bottom: 15rem;}
#other-news .posts .section__header {margin-bottom: 5rem;}
.page-posts .post__text .post__date {margin-top: 2.8rem;}
.event__status .text-md {
  max-width: 24rem;
}
.page-posts .filters-container {
  justify-content: flex-end;
  margin-top: 7rem;
  margin-bottom: 0;
}
#rubric-posts hr {
  background-color: #E4E8F6;
  width: 100%;
  height: 1px;
  margin: 6rem auto;
  border: none
}
.post__category {
  margin: 2rem 0 1.6rem;
  color: var(--color-red);
  font-weight: 500;
}
.post__img {
  height: 100%;
}

.text__content table {
  width: 100%;
  border-color: #E4E8F6;
  margin-bottom: 2.4rem;
}
.text__content ul, .text__content ol,
.text__content li:not(:last-child) {
  margin-bottom: 2.4rem;
}
.text__content li {
  list-style-position: inside;
}
.text__content table th, 
.text__content table td {

  padding: 2rem 1rem;
  font-size: 1.2rem;
  border-bottom: 1px solid #E4E8F6;
}
.text__content table th:first-child, 
.text__content table td:first-child {
  padding-left: 0;
}
.text__content table th:last-child, 
.text__content table td:last-child {
  padding-right: 0;
}
.text__content table p {
  margin-bottom: 0;
}
.text__content p, .text__content h5 {
  margin-bottom: 2.4rem;
}
.error-text {
  display: flex;
  justify-content: space-between;
  margin-top: 5rem;
  text-wrap: balance;
}
.error-text p:first-child {margin-bottom: 2.4rem;}
#page-404 .cursor__button {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
#page-404 {
  padding-bottom: 2rem;
}

#single-post .text__content {
  padding-left: 5.6rem;
}
.text__content .place-text {
  width: 100vw;
  margin-left: calc(-50vw + 50% - 2.6rem);
  padding: 2rem;
  display: grid;
  grid-template-columns: 28rem 1fr;
  gap: 5.6rem;
  background-color: var(--bg-blue);
  color: #fff;
  font-size: 1.6rem;
  padding-right: 30rem;
  text-wrap: balance;
}
.text__content .place-text img {max-width: 28rem;width: 100%;height: auto;}
.text__content .h5 {
  background: linear-gradient(var(--bg-red), var(--bg-red)) no-repeat left/100% 100%;
  background-position: left top;
  background-size: 100% 1.5em; 
  line-height: 1.5em; 
  display: inline;
  padding: 0 .5rem; 
  color: #fff;
}

[disabled] {
  opacity: .65;
  pointer-events: none;
}

.sidebar {
  display: flex;
  flex-direction: column;
  padding: 0;
  position: sticky;
  top: 4rem;
}
.sidebar .link {
  padding: 6px 0;
  border-bottom: 1px solid;
}
.sidebar .link:first-child {
  border-top: 1px solid;
}

.sidebar .link:hover,
.sidebar .link.active {
  color: var(--color-red);
  border-color: var(--bg-red);
}


@media screen and (max-width: 768px) {
  html {
    font-size: 2.75vw;
    overflow-x: hidden;
  }

  .pc {
    display: none !important;
  }

  .mobile {
    display: block !important;
  }

  .menu.mobile {
    cursor: pointer;
    width: 6rem;
    z-index: 1000;
  }

  .grid-2,
  .grid-3,
  .grid-4,
  .grid-5,
  .grid-6 {
    grid-template-columns: repeat(1, 100%);
  }

  .container {
    padding-left: 1.2rem;
    padding-right: 1.2rem;
  }

  .section {
    padding-top: 9rem;
  }

  .list.bordered li {
    line-height: 21px;
    padding-bottom: 3px;
    padding-top: 3px;
  }

  .sidebar-container {
    grid-template-columns: repeat(1, 100%);
  }

  .section__header {
    margin-bottom: 3.2rem;
  }
  
  #news {
    background-color: var(--bg-black);
    color: var(--color-white);
  }

  #news .btn-mobile {border:1px solid #fff;}
  #news .container {
    padding-top: 5rem;
    padding-bottom: 4rem;
  }
  .posts .section__header {
    margin-bottom: 3.2rem;
  }
  .post__text .post__title {
    height: auto;
  }

  .posts .grid {
    margin: 0;
    width: 100%;
    gap: 5.4rem 0;
  }

  .post {
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }

  .post__img {
    order: 1;
    height: 24rem;
  }

  .post__img img {
    object-fit: cover;
  }

  .post__text {
    order: 2;
    padding-bottom: 0;
  }

  .post__text .post__title {
    order: 2;
    font-size: 1.6rem;
  }

  .post__text .post__date {
    margin-top: 0;
    order: 1;
    font-size: 1.4rem;
    justify-content: flex-start;
    padding-bottom: 8px;
    margin-bottom: 8px;
    border-bottom: 1px solid #fff;
  }

  .post__text .post__date span:first-child::after {
    content: '/';
    display: inline-flex;
    margin: 0 .5rem;
  }
  .posts .section__header .section__title {
    line-height: normal;
  }
  .page-posts #news .container {
    padding-top: 11.2rem;
    padding-bottom: 17.6rem;
  }
  .page-posts #news {
    background-color: inherit;
    color: inherit;
  }
  .event__status .text-md {
    max-width: 100%;
  }
  #rubric-posts hr {
    margin: 3rem auto;
  }
  .page-posts .filters-container {
    margin-top: 5rem;
  }
  .post__category {
    order: 2;
    margin: 2.4rem 0 0;
  }
  .post__text .post__date {
    order: 1;
  }
  .page-posts .post__text .post__date {
    order: 2;
  }
  .page-posts .post__text .post__date {
    margin: 1.2rem 0 0;
    border-bottom: none;
    padding: 0;
  }
  .page-posts .posts .grid {
    gap: 3.2rem;

  }
  .page-posts .posts .post {
    border-bottom: 1px solid #E4E8F6;
    padding-bottom: 2.4rem;
  }
  .posts .pagination {
    margin-top: 5rem;
  }
  #other-news .posts {padding-top: 4.4rem;padding-bottom: 4.4rem;}
  #other-news .posts .section__header {margin-bottom: 3.2rem;}
  .page-posts .posts .post:last-child {border-bottom: none;}
  .text__content .place-text {
    width: calc(100% + 2.4rem);
    margin-left: -1.2rem;
    margin-right: -1.2rem;
    padding: 1.2rem 1.2rem 3.2rem 1.2rem;
    display: grid;
    grid-template-columns: repeat(1,100%);
    gap: 1.6rem;
    font-size: inherit;
    padding-right: 1.2rem;
  }
  .text__content .place-text img {max-width:100%}
  .text__content table th, 
  .text__content table td {
    padding: 1.2rem 1rem;

  }
  #single-post .text__content {padding-left: 0;}
  .page-404 {
    height: calc(100vh - 11rem);
  } 
}