/*
  Josh's Custom CSS Reset
  https://www.joshwcomeau.com/css/custom-css-reset/
*/
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

* {
  margin: 0;
}

body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

input,
button,
textarea,
select {
  font: inherit;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

#root,
#__next {
  isolation: isolate;
}

@font-face {
  font-display: swap;
  font-family: "Rajdhani";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/rajdhani-v15-latin-700.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/jetbrains-mono-v18-latin-regular.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/jetbrains-mono-v18-latin-700.woff2") format("woff2");
}
:root {
  --background-page: #f8f9f9;
  --background-dark: #000B17;
  --text-base: #303940;
  --text-strong: #212c39;
  --text-weak: #C1D3E4;
  --accent-blue: #3691fd;
  --accent-red: #d23749;
  --accent-yellow: #fcba13;
}

html {
  overflow-x: hidden;
}

body {
  font-family: "JetBrains Mono", sans-serif;
  font-size: 16px;
  background: var(--background-page);
  color: var(--text-base);
  overflow-x: hidden;
}

a {
  text-decoration: none;
  color: inherit;
}

button {
  all: unset;
}

hr {
  border: none;
  height: 0.75rem;
  background: url(../img/hr.png) repeat-x;
}

.b-venue__title, .b-general__title, .b-sight__title, .section__title, .hero__title {
  font-family: "Rajdhani", sans-serif;
  font-size: 3rem;
  font-weight: 700;
  line-height: 3.5rem;
  color: var(--text-strong);
}
@media (max-width: 77.5rem) {
  .b-venue__title, .b-general__title, .b-sight__title, .section__title, .hero__title {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}

.b-sight__main, .b-organizer__main, .s-typeset__block, .s-country__text, .s-host__item {
  font-size: 0.875rem;
  line-height: 150%;
}

.footer__slogan, .s-quote__text, .play-button {
  border: 1px solid rgba(255, 255, 255, 0.05);
  background: rgba(255, 255, 255, 0.05);
  -webkit-backdrop-filter: blur(20px);
          backdrop-filter: blur(20px);
}

.b-map, .b-venue__item img, .b-sight__image, .s-hotels-item__photo, .s-stats-item, .s-city-item, .s-country__photos img, .s-quote__photo > img:not(.s-quote__photo-blur), .s-quote, .mainmenu__toggle {
  -webkit-box-shadow: 0px 20px 40px 0px rgba(1, 54, 116, 0.2);
          box-shadow: 0px 20px 40px 0px rgba(1, 54, 116, 0.2);
}

.footer__slogan-content, .s-country__text {
  position: relative;
  padding-left: 2em;
  overflow: hidden;
}
.footer__slogan-content:before, .s-country__text:before {
  content: "01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50";
  width: 1.2em;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  color: var(--text-weak);
}

.link, .b-organizer__links a, .s-typeset__block a {
  color: var(--accent-blue);
  text-decoration: underline;
}
.link:hover, .b-organizer__links a:hover, .s-typeset__block a:hover {
  color: var(--accent-yellow);
  text-decoration: none;
}

.icon path {
  fill: currentColor;
}

.wrap, .footer__wrap, .content {
  max-width: 77.5rem;
  margin: 0 auto;
}
@media (max-width: 77.5rem) {
  .wrap, .footer__wrap, .content {
    max-width: 30rem;
    padding: 0 1rem;
  }
}

.content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5rem;
  padding-top: 5rem;
  padding-bottom: 5rem;
}
.content.placeholder {
  text-align: center;
  font-size: 1.25rem;
  line-height: 1.75rem;
}
@media (max-width: 77.5rem) {
  .content {
    gap: 2.5rem;
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
    overflow-x: hidden;
  }
}

.mainmenu {
  position: fixed;
  z-index: 99;
  top: 1rem;
  left: 0;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5rem;
}
@media (max-width: 77.5rem) {
  .mainmenu {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
    top: auto;
    bottom: 0;
    padding: 1rem;
  }
}
.mainmenu__toggle {
  padding: 1rem 1.5rem;
  font-size: 1.25rem;
  gap: 0.25rem;
  border-radius: 999px;
  color: #FFF;
  white-space: nowrap;
  background: var(--accent-blue);
  z-index: 2;
  pointer-events: auto;
}
@media (min-width: 77.5rem) {
  .mainmenu__toggle {
    display: none;
  }
}
.mainmenu__overlay {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  -webkit-backdrop-filter: blur(0.5rem);
          backdrop-filter: blur(0.5rem);
  z-index: 1;
}
@media (min-width: 77.5rem) {
  .mainmenu__overlay {
    display: none;
  }
}
.mainmenu__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0.25rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25rem;
  border-radius: 999px;
  border: 1px solid rgba(75, 130, 195, 0.1);
  background: rgba(0, 11, 23, 0.4);
  -webkit-backdrop-filter: blur(3rem);
          backdrop-filter: blur(3rem);
  z-index: 999;
}
@media (max-width: 77.5rem) {
  .mainmenu__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    border-radius: 1.25rem;
    -webkit-box-pack: stretch;
        -ms-flex-pack: stretch;
            justify-content: stretch;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
@media (max-width: 77.5rem) {
  .mainmenu:not(.mainmenu--visible) {
    pointer-events: none;
  }
  .mainmenu:not(.mainmenu--visible) .mainmenu__overlay {
    visibility: hidden;
    opacity: 0;
  }
  .mainmenu:not(.mainmenu--visible) .mainmenu__list {
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translateY(1rem);
            transform: translateY(1rem);
  }
  .mainmenu__overlay, .mainmenu__list {
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
  }
}
.mainmenu__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0.75rem 1rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25rem;
  border-radius: 999px;
  color: #FFF;
  white-space: nowrap;
  text-decoration: none;
  -webkit-transition: all 0.1s ease-out;
  transition: all 0.1s ease-out;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media (max-width: 77.5rem) {
  .mainmenu__item {
    border-radius: 1rem;
  }
}
.mainmenu__item svg {
  width: 1.5rem;
  height: 1.5rem;
  fill: currentColor;
}
.mainmenu__item--current {
  background: #FFF;
  color: #000;
}
.mainmenu__item:not(.mainmenu__item--current):hover {
  background: rgba(255, 255, 255, 0.2);
}

.teaser {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  padding: 1rem;
  -webkit-transition: all 0.1s ease-in;
  transition: all 0.1s ease-in;
}
.teaser__overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  -webkit-backdrop-filter: blur(0.5rem);
          backdrop-filter: blur(0.5rem);
}
.teaser:not(.teaser--visible) {
  visibility: hidden;
  opacity: 0;
}
.teaser__video {
  width: 100%;
  max-width: 77.5rem;
  aspect-ratio: 16/9;
  height: auto;
  border-radius: 1.25rem;
  z-index: 1;
  -webkit-transition: all 0.1s ease-in;
  transition: all 0.1s ease-in;
}
.teaser:not(.teaser--visible) .teaser__video {
  -webkit-transform: translateY(1rem);
          transform: translateY(1rem);
}
.teaser__close {
  color: #fff;
  padding: 1rem 1.5rem;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 999px;
  -webkit-transition: all 0.1s ease-in;
  transition: all 0.1s ease-in;
  z-index: 1;
}
.teaser__close:hover {
  cursor: pointer;
  background: rgba(255, 255, 255, 0.2);
}
.teaser:not(.teaser--visible) .teaser__close {
  -webkit-transform: translateY(1rem);
          transform: translateY(1rem);
}

.hero {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 7.5rem 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  text-align: center;
  background-color: var(--background-dark);
  background-size: cover;
  background-position: center;
  color: #fff;
  position: relative;
}
@media (max-width: 77.5rem) {
  .hero {
    padding: 1.5rem;
  }
}
.hero--home {
  padding: 7.5rem 0rem 20rem 0rem;
}
@media (max-width: 77.5rem) {
  .hero--home {
    padding: 1.5rem 0rem 15rem 0rem;
  }
}
.hero--about {
  background-image: url(../img/about-bg.png);
}
.hero--participants {
  background-image: url(../img/participants-bg.png);
}
.hero--astana {
  background-image: url(../img/astana-bg.png);
}
.hero--venue {
  background-image: url(../img/venue-bg.png);
}
.hero--challenge {
  background-image: url(../img/challenge-bg.png);
}
.hero__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0.2;
  -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), color-stop(20%, #000), color-stop(80%, #000), to(rgba(0, 0, 0, 0)));
  -webkit-mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, #000 20%, #000 80%, rgba(0, 0, 0, 0) 100%);
          mask-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), color-stop(20%, #000), color-stop(80%, #000), to(rgba(0, 0, 0, 0)));
          mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, #000 20%, #000 80%, rgba(0, 0, 0, 0) 100%);
  background: url(../img/video-placeholder.png) center;
  background-size: cover;
}
.hero__overlay {
  position: absolute;
  inset: 0;
  background: url(../img/gradient-bars.png) center center repeat-y, radial-gradient(32.03% 64.06% at 50% 0%, rgba(75, 130, 195, 0.2) 0%, rgba(75, 130, 195, 0) 100%);
  -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), color-stop(20%, #000), color-stop(80%, #000), to(rgba(0, 0, 0, 0)));
  -webkit-mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, #000 20%, #000 80%, rgba(0, 0, 0, 0) 100%);
          mask-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), color-stop(20%, #000), color-stop(80%, #000), to(rgba(0, 0, 0, 0)));
          mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, #000 20%, #000 80%, rgba(0, 0, 0, 0) 100%);
}
.hero--home .hero__overlay {
  background: url(../img/gradient-bars.png) center center repeat-y, url(../img/pattern-1.png) center bottom repeat-x, radial-gradient(32.03% 64.06% at 50% 0%, rgba(75, 130, 195, 0.2) 0%, rgba(75, 130, 195, 0) 100%);
}
.hero__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0.5rem 1rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
  border-radius: 1.25rem;
  background: #FCFDFD;
  -webkit-box-shadow: 0px 4px 40px 0px rgba(255, 255, 255, 0.4), 0px 20px 40px 0px rgba(1, 54, 116, 0.2);
          box-shadow: 0px 4px 40px 0px rgba(255, 255, 255, 0.4), 0px 20px 40px 0px rgba(1, 54, 116, 0.2);
}
.hero__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 50rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4rem;
  position: relative;
}
@media (max-width: 77.5rem) {
  .hero__wrap {
    gap: 2rem;
    padding: 0 1rem;
  }
}
.hero__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
}
.hero__details {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media (max-width: 77.5rem) {
  .hero__details {
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
}
.hero__details span {
  opacity: 0.7;
}
.hero__details span:nth-child(odd) {
  opacity: 0.4;
}
.hero__title {
  font-size: 4rem;
  line-height: 100%;
  color: #fff;
  background: linear-gradient(106deg, rgba(255, 255, 255, 0.7) 28.13%, #FFF 36.88%, #FFF 63.13%, rgba(255, 255, 255, 0.7) 71.88%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media (max-width: 77.5rem) {
  .hero__title {
    font-size: 2rem;
  }
}

.play-button {
  border-radius: 999px;
  color: inherit;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1.5rem 2rem 1.5rem 1.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  text-align: left;
  cursor: pointer;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
@media (max-width: 77.5rem) {
  .play-button {
    padding: 1rem 1.5rem 1rem 1rem;
  }
}
.play-button:hover {
  background: rgba(255, 255, 255, 0.07);
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.play-button__icon {
  width: 2.5rem;
  height: 2.5rem;
  color: var(--accent-yellow);
}
.play-button__title {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.75rem;
}
@media (max-width: 77.5rem) {
  .play-button__title {
    font-size: 1rem;
    line-height: 1.5rem;
  }
}
.play-button__subtitle {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.25rem;
  opacity: 0.5;
}
@media (max-width: 77.5rem) {
  .play-button__subtitle {
    font-size: 0.75rem;
    line-height: 1rem;
  }
}

.section__heading {
  margin-bottom: 2.5rem;
}
@media (max-width: 77.5rem) {
  .section__heading {
    margin-bottom: 1.5rem;
  }
}
.section__title--center {
  text-align: center;
}

.s-host {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 2.5rem;
}
@media (max-width: 77.5rem) {
  .s-host {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.5rem;
  }
}
.s-host__title {
  max-width: 17.5rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media (max-width: 77.5rem) {
  .s-host__title {
    max-width: none;
  }
}
.s-host__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-line-pack: start;
      align-content: flex-start;
  gap: 2.5rem;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media (max-width: 77.5rem) {
  .s-host__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    gap: 1.5rem;
  }
}
.s-host__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  width: 45%;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
}
@media (max-width: 77.5rem) {
  .s-host__item {
    width: 100%;
  }
}
.s-host__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 5rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.5rem;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
}

.s-quote {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 4.5rem 0rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  border-radius: 2.5rem;
  background: radial-gradient(32.03% 64.06% at 50% 0%, rgba(75, 130, 195, 0.2) 0%, rgba(75, 130, 195, 0) 100%), url(../img/quote-bg.png) 50%/cover no-repeat, var(--background-dark, #000B17);
  color: #fff;
}
@media (max-width: 77.5rem) {
  .s-quote {
    padding: 1rem;
    border-radius: 1.5rem;
  }
}
.s-quote__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 37.5rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1rem;
}
.s-quote__photo {
  position: relative;
}
.s-quote__photo-blur {
  position: absolute;
  inset: 0;
  border-radius: 1.25rem;
  opacity: 0.7;
  -webkit-filter: blur(80px);
          filter: blur(80px);
}
.s-quote__photo > img:not(.s-quote__photo-blur) {
  position: relative;
  z-index: 1;
  border-radius: 1.25rem;
}
.s-quote__text {
  border-radius: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1rem 1.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
}
@media (max-width: 77.5rem) {
  .s-quote__text {
    padding: 1rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
}

.s-country {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  gap: 2.5rem;
}
@media (max-width: 77.5rem) {
  .s-country {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem;
  }
}
.s-country__main, .s-country__pattern {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
}
.s-country__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 2rem;
}
.s-country__photos {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
}
.s-country__photos img {
  border-radius: 1.25rem;
  border: 4px solid var(--background-page);
}
.s-country__photos img:nth-child(2) {
  -webkit-animation: country-image-1 ease-out both;
          animation: country-image-1 ease-out both;
  animation-timeline: view();
  animation-range: 0vh 75vh;
}
.s-country__photos img:nth-child(3) {
  -webkit-animation: country-image-2 ease-out both;
          animation: country-image-2 ease-out both;
  animation-timeline: view();
  animation-range: 0vh 75vh;
}
@-webkit-keyframes country-image-1 {
  0% {
    -webkit-transform: translateX(-85%);
            transform: translateX(-85%);
  }
}
@keyframes country-image-1 {
  0% {
    -webkit-transform: translateX(-85%);
            transform: translateX(-85%);
  }
}
@-webkit-keyframes country-image-2 {
  0% {
    -webkit-transform: translateX(-170%);
            transform: translateX(-170%);
  }
}
@keyframes country-image-2 {
  0% {
    -webkit-transform: translateX(-170%);
            transform: translateX(-170%);
  }
}
.s-country__photos img + img {
  margin-left: -100%;
}
.s-country__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1rem;
}
.s-country__pattern {
  background: url(../img/pattern-2.png) no-repeat center/contain;
  -webkit-animation: country-pattern ease-in-out both;
          animation: country-pattern ease-in-out both;
  animation-timeline: view();
  animation-range: 25vh 75vh;
}
@-webkit-keyframes country-pattern {
  0% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
@keyframes country-pattern {
  0% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
@media (max-width: 77.5rem) {
  .s-country__pattern {
    min-height: 50vh;
    background-size: contain;
  }
}

.s-slider__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.5rem;
}
.s-slider__title {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
}
.s-slider__controls {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1rem;
}
@media (max-width: 77.5rem) {
  .s-slider__controls {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0.5rem;
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
  }
}
.s-slider__controls-item {
  color: #B8CCE0;
  font-size: 2.5rem;
  line-height: 120%;
  cursor: pointer;
  -webkit-transition: all 0.1s ease-in;
  transition: all 0.1s ease-in;
}
@media (max-width: 77.5rem) {
  .s-slider__controls-item {
    font-size: 1.5rem;
  }
}
.s-slider__controls-item[aria-disabled=true] {
  pointer-events: none;
  opacity: 0.3;
}
.s-slider__controls-item:hover {
  color: var(--accent-yellow);
}

.s-city-item {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  position: relative;
  max-width: 37.5rem;
  aspect-ratio: 4/3;
  border-radius: 1.25rem;
  overflow: hidden;
}
.s-city-item__photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.s-city-item__text {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 2rem 1.5rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.5rem;
  color: #fff;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(#000));
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 100%);
}
.s-city-item__title {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.75rem;
}
.s-city-item__desc {
  opacity: 0.9;
  font-size: 0.875rem;
  line-height: 1.25rem;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  max-height: 5rem;
}
.s-city-item:not(:hover) .s-city-item__desc {
  opacity: 0.1;
  max-height: 0;
}

.s-partners__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.5rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media (max-width: 77.5rem) {
  .s-partners__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.s-stats__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.5rem;
}
@media (max-width: 77.5rem) {
  .s-stats__list {
    gap: 0.5rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.s-stats-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 2.5rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25rem;
  border-radius: 1.25rem;
  background: var(--accent-blue);
  color: #fff;
  text-align: center;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
}
@media (max-width: 77.5rem) {
  .s-stats-item {
    padding: 1rem;
    -ms-flex-preferred-size: calc(50% - 0.25rem);
        flex-basis: calc(50% - 0.25rem);
  }
}
.s-stats-item__value {
  font-size: 2.5rem;
  line-height: 3rem;
}
@media (max-width: 77.5rem) {
  .s-stats-item__value {
    font-size: 2rem;
    line-height: 2.5rem;
  }
}
.s-stats-item__value:after {
  content: "+";
}
.s-stats-item__key {
  color: rgba(255, 255, 255, 0.7);
}

.s-typeset {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.s-typeset::before, .s-typeset::after {
  content: "";
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  background: -webkit-gradient(linear, right top, left top, from(#F8F9F9), color-stop(10%, rgba(248, 249, 249, 0)), color-stop(90%, rgba(248, 249, 249, 0)), to(#F8F9F9)), -webkit-gradient(linear, left top, left bottom, from(#F8F9F9), color-stop(10%, rgba(248, 249, 249, 0)), color-stop(90%, rgba(248, 249, 249, 0)), to(#F8F9F9)), url(../img/pattern-3.png) repeat-y;
  background: linear-gradient(270deg, #F8F9F9 0%, rgba(248, 249, 249, 0) 10%, rgba(248, 249, 249, 0) 90%, #F8F9F9 100%), linear-gradient(180deg, #F8F9F9 0%, rgba(248, 249, 249, 0) 10%, rgba(248, 249, 249, 0) 90%, #F8F9F9 100%), url(../img/pattern-3.png) repeat-y;
  background-size: 100%;
}
.s-typeset::after {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.s-typeset__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 50rem;
  max-width: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.s-typeset__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 2.5rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.25rem;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  border-radius: 1.25rem;
  border: 1px solid #E6E8EB;
  background: #FFF;
}
@media (max-width: 77.5rem) {
  .s-typeset__block {
    padding: 1rem;
  }
}
.s-typeset__block .align-center {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}
.s-typeset__block h1 {
  color: var(--text-strong, #212C39);
  font-family: Rajdhani;
  font-size: 3rem;
  font-style: normal;
  font-weight: 700;
  line-height: 120%;
}
@media (max-width: 77.5rem) {
  .s-typeset__block h1 {
    font-size: 2.25rem;
  }
}

.s-hotels-item {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  max-width: 17.5rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.s-hotels-item__photo {
  aspect-ratio: 4/3;
  border-radius: 1.25rem;
  margin-bottom: 1rem;
}
.s-hotels-item__address {
  font-size: 0.875rem;
  line-height: 1.25rem;
  color: #98ACBE;
}

.s-press {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #EFF2F6;
  padding: 2.5rem;
  gap: 2.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  border-radius: 1.25rem;
}
@media (max-width: 77.5rem) {
  .s-press {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 2rem 1rem;
    gap: 1.5rem;
  }
}
.s-press__col {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 50%;
          flex: 1 1 50%;
}
.s-press__text p + p {
  margin-top: 1rem;
}
.s-press__text b {
  font-weight: bold;
}

.b-organizer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 2.5rem;
}
@media (max-width: 77.5rem) {
  .b-organizer {
    gap: 1.5rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.b-organizer__logo, .b-organizer__links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 17.5rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1rem;
}
@media (max-width: 77.5rem) {
  .b-organizer__logo, .b-organizer__links {
    width: 100%;
  }
}
.b-organizer__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1.25rem;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
}
.b-organizer__title {
  font-weight: bold;
  color: var(--text-strong);
}
.b-organizer__links {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media (max-width: 77.5rem) {
  .b-organizer__links {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.b-city {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.5rem;
}
@media (max-width: 77.5rem) {
  .b-city {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.5rem;
  }
}
.b-city__pattern, .b-city__text {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 50%;
          flex: 1 1 50%;
}
.b-city__pattern {
  background: url(../img/pattern-4.png) no-repeat center/contain;
}
@media (max-width: 77.5rem) {
  .b-city__pattern {
    aspect-ratio: 1/1;
  }
}
.b-city__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}

.b-sight {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.5rem;
}
@media (max-width: 77.5rem) {
  .b-sight {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.5rem;
  }
}
.b-sight__image {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 50%;
          flex: 1 1 50%;
  aspect-ratio: 4/3;
  border-radius: 1.25rem;
}
@media (max-width: 77.5rem) {
  .b-sight__image {
    -webkit-box-flex: 1;
        -ms-flex: auto;
            flex: auto;
  }
}
.b-sight__title {
  font-size: 1.75rem;
  line-height: 2.25rem;
}
@media (max-width: 77.5rem) {
  .b-sight__title {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}
.b-sight__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}

.b-general {
  max-width: 37.5rem;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  text-align: center;
}
@media (max-width: 77.5rem) {
  .b-general {
    text-align: left;
  }
}
.b-general__title {
  margin-bottom: 1.5rem;
}
@media (max-width: 77.5rem) {
  .b-general__title {
    margin-bottom: 1rem;
  }
}
.b-general__text p + p {
  margin-top: 1em;
}

.b-venue {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2.5rem;
}
@media (max-width: 77.5rem) {
  .b-venue {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.5rem;
  }
}
.b-venue__item {
  -ms-flex-preferred-size: calc(50% - 1.25rem);
      flex-basis: calc(50% - 1.25rem);
}
.b-venue__item img {
  border-radius: 1.25rem;
  margin-bottom: 1.5rem;
}
.b-venue__title {
  font-size: 1.75rem;
  line-height: 2.25rem;
  margin-bottom: 1rem;
}

.b-map {
  background: var(--accent-blue);
  aspect-ratio: 1/0.6;
  border-radius: 1.25rem;
}

.b-prizes {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
}
@media (max-width: 77.5rem) {
  .b-prizes {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem;
  }
}
.b-prizes__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.25rem;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
}
.b-prizes__image {
  margin: 0.75rem 0;
  max-width: 14rem;
}
.b-prizes__title {
  color: var(--text-strong);
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5rem;
}
.b-prizes__description {
  color: #98ACBE;
}

.b-resources {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: stretch;
      -ms-flex-pack: stretch;
          justify-content: stretch;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1rem;
}
@media (max-width: 77.5rem) {
  .b-resources {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
.b-resources .resource {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 2.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.25rem;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
  border-radius: 1.25rem;
  background: #EFF2F6;
}
.b-resources .resource:hover {
  background: #eceff4;
}

.footer {
  height: 35rem;
  padding: 3rem 0rem;
  background: radial-gradient(32.03% 64.06% at 50% 0%, rgba(75, 130, 195, 0.2) 0%, rgba(75, 130, 195, 0) 100%), url(../img/footer-bg.png) center/cover no-repeat, var(--background-dark);
  color: #fff;
}
@media (max-width: 77.5rem) {
  .footer {
    height: auto;
    padding: 2.5rem 0 6rem;
  }
}
.footer__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 100%;
}
@media (max-width: 77.5rem) {
  .footer__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 2.5rem;
  }
}
.footer__col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 77.5rem) {
  .footer__col {
    text-align: center;
    gap: 2rem;
  }
}
.footer__external a {
  opacity: 0.5;
}
.footer__external a:hover {
  opacity: 1;
}
.footer__slogan {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  font-size: 1.5rem;
  padding: 1.25rem;
  border-radius: 1.25rem;
}
@media (max-width: 77.5rem) {
  .footer__slogan {
    font-size: 1rem;
  }
}
.footer__slogan-content:before {
  opacity: 0.3;
}
.footer__slogan .color-b {
  color: var(--accent-blue);
}
.footer__slogan .color-r {
  color: var(--accent-red);
}
.footer__slogan .color-y {
  color: var(--accent-yellow);
}
.footer__slogan-carret {
  opacity: 1;
  -webkit-animation: carret 0.5s linear infinite;
          animation: carret 0.5s linear infinite;
}
@-webkit-keyframes carret {
  0% {
    opacity: 1;
  }
  10% {
    opacity: 0;
  }
}
@keyframes carret {
  0% {
    opacity: 1;
  }
  10% {
    opacity: 0;
  }
}
.footer__socials {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-line-pack: start;
      align-content: flex-start;
  gap: 1rem;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media (max-width: 77.5rem) {
  .footer__socials {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.footer__socials svg {
  width: 1.25rem;
  height: 1.25rem;
}
.footer__resources {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}
.footer a {
  -webkit-transition: all 0.1s ease-out;
  transition: all 0.1s ease-out;
}
.footer a:hover {
  color: var(--accent-yellow);
}

.spoiler {
  overflow: hidden;
}
.spoiler__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1.25rem;
  gap: 0.75rem;
  border-radius: 1.25rem;
  background: #EFF2F6;
  color: var(--text-strong, #212C39);
  font-size: 1.25rem;
  font-weight: 700;
  cursor: pointer;
  -webkit-transition: all 0.1s ease-in;
  transition: all 0.1s ease-in;
}
@media (max-width: 77.5rem) {
  .spoiler__header {
    font-size: 1rem;
  }
}
.spoiler__header:hover {
  background: #dfe5ed;
}
.spoiler__header::before {
  content: "-> ";
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-transition: all 0.1s ease-in;
  transition: all 0.1s ease-in;
}
.spoiler--expanded .spoiler__header::before {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.spoiler__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1.25rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  -webkit-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
}
.spoiler:not(.spoiler--expanded) .spoiler__body {
  visibility: hidden;
  opacity: 0;
  max-height: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.resource {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.resource__image {
  width: 5rem;
  border-radius: 0.25rem;
  -webkit-box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.02), 0px 0px 0px 1px rgba(27, 31, 35, 0.15);
          box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.02), 0px 0px 0px 1px rgba(27, 31, 35, 0.15);
}
.resource__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
  text-align: left;
}
.resource__title {
  font-size: 1.25rem;
  font-weight: 700;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.resource__subtitle {
  font-size: 0.875rem;
  line-height: 1.25rem;
  opacity: 0.7;
}
.resource:hover .resource__title {
  color: var(--accent-yellow) !important;
}

/**
 * Swiper 11.1.3
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2024 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: May 13, 2024
 */
/* FONT_START */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal;
}
/* FONT_END */
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
          transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
          transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  -ms-touch-action: pan-y;
      touch-action: pan-y;
}

.swiper-vertical {
  -ms-touch-action: pan-x;
      touch-action: pan-x;
}

.swiper-slide {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform;
}

.swiper-backface-hidden .swiper-slide {
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  -webkit-perspective: 1200px;
          perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}

.swiper-3d {
  -webkit-perspective: 1200px;
          perspective: 1200px;
}

.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
}

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
      scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  -ms-scroll-snap-type: none;
      scroll-snap-type: none;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-ordinal-group: 10000;
      -ms-flex-order: 9999;
          order: 9999;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-start: var(--swiper-centered-offset-before);
          margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-before: var(--swiper-centered-offset-before);
          margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
          transform-origin: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  -webkit-animation: swiper-preloader-spin 1s infinite linear;
          animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@-webkit-keyframes swiper-preloader-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes swiper-preloader-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
/* Slide styles end */