/*
 * Страница «Интеллиада 2025» — анонс второй Интеллиады (1–2 ноября 2025, Лужники).
 * Общие компоненты — в site.css, устройство Zero-полос — см. pages/index.css.
 */

/* ---------- Обложка: название, описание, иллюстрация ---------- */

.hero { --h: 1170; background-color: #24a5de; --curtain-shift: -400px; --curtain-shift-sm: -90px; }
.hero__curtain { top: 0; left: 0; width: 100%; height: 689px; background-color: #fafafa; }
.hero__title {
  top: 164px;
  left: calc(50% - 600px + 16px);
  width: 658px;
  color: #24a5de;
  font-size: 91px;
  line-height: 100px;
  font-weight: 600;
}
.hero__lead {
  top: 170px;
  left: calc(50% - 600px + 709px);
  width: 349px;
  color: #1e1e1e;
  font-size: 15px;
  line-height: 20px;
  font-weight: 400;
  letter-spacing: -0.2px;
}
.hero__art { top: 387px; left: calc(50% - 600px + 20px); width: 1160px; }

@media (max-width: 1199px) {
  .hero { --h: 880; }
  .hero__title { left: calc(50% - 480px + 16px); width: 496px; font-size: 50px; line-height: 55px; }
  .hero__lead { left: calc(50% - 480px + 569px); }
  .hero__art { top: 374px; left: calc(50% - 480px + 10px); width: 942px; }
}

@media (max-width: 959px) {
  .hero { --h: 886; }
  .hero__curtain { top: -1px; height: 543px; }
  .hero__title { top: 187px; left: calc(50% - 320px + 20px); width: 534px; }
  .hero__lead { top: 316px; left: calc(50% - 320px + 20px); width: 398px; }
  .hero__art { left: calc(50% - 320px + 13px); width: 614px; }
}

@media (max-width: 639px) {
  .hero { --h: 770; }
  .hero__curtain { top: 0; left: 0; width: 100%; height: 504px; }
  .hero__title { top: 207px; left: 20px; width: 369px; font-size: 36px; line-height: 40px; }
  .hero__lead { top: 302px; left: 20px; width: 324px; font-size: 14px; line-height: 18px; }
  .hero__art { top: 374px; left: 11px; width: 458px; }
}

@media (max-width: 479px) {
  .hero { --h: 686; }
  .hero__curtain { top: -28px; height: 487px; }
  .hero__title { top: 167px; width: 293px; }
  .hero__lead { width: 280px; font-size: 13px; line-height: 17px; }
  .hero__art { width: 298px; }
}

/* ---------- О фестивале ---------- */

.about { --h: 372; padding-bottom: 120px; background-color: #fafafa; --board-overflow: visible; }
.about__text {
  top: 28px;
  left: calc(50% - 600px + 713px);
  width: 418px;
  color: #1e1e1e;
  font-size: 15px;
  line-height: 20px;
  font-weight: 400;
  letter-spacing: -0.2px;
}
.about__pic {
  top: 22px;
  left: calc(50% - 600px + 20px);
  width: 650px;
  height: 329px;
  border-radius: 50px;
  background-image: url('/assets/img/common/about.svg');
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}

@media (max-width: 1199px) {
  .about { --h: 299; }
  .about__text { top: 46px; left: calc(50% - 480px + 490px); }
  .about__pic { top: 41px; left: calc(50% - 480px + 20px); width: 450px; height: 225px; border-radius: 20px; }
}

@media (max-width: 959px) {
  .about { --h: 692; }
  .about__text { top: 389px; left: calc(50% - 320px + 20px); width: 502px; }
  .about__pic { top: 47px; left: calc(50% - 320px + 20px); width: 530px; height: 264px; }
}

@media (max-width: 639px) {
  .about { --h: 533; }
  .about__text { top: 299px; left: 20px; width: 442px; }
  .about__pic { top: 48px; left: 20px; width: 440px; height: 220px; }
}

@media (max-width: 480px) {
  .about { padding-bottom: 90px; }
}

@media (max-width: 479px) {
  .about { --h: 491; }
  .about__text { top: 220px; width: 279px; font-size: 13px; line-height: 17px; }
  .about__pic { width: 280px; height: 139px; }
}

/* ---------- Вход свободный ---------- */

.entry { --h: 290; padding-top: 120px; padding-bottom: 75px; background-color: #24a5de; --board-overflow: visible; }
.entry__text {
  top: 33px;
  left: calc(50% - 600px + 220px);
  width: 730px;
  color: #fafafa;
  font-size: 36px;
  line-height: 40px;
  font-weight: 600;
  text-transform: uppercase;
}

@media (max-width: 1199px) {
  .entry { --h: 135; }
  .entry__text { top: 3px; left: calc(50% - 480px + 250px); width: 593px; font-size: 30px; line-height: 33px; }
}

@media (max-width: 959px) {
  .entry { --h: 204; }
  .entry__text { top: 72px; left: calc(50% - 320px + 20px); width: 609px; }
}

@media (max-width: 639px) {
  .entry { --h: 162; }
  .entry__text { top: 66px; left: 20px; width: 440px; font-size: 20px; line-height: 24px; }
}

@media (max-width: 480px) {
  .entry { padding-top: 90px; padding-bottom: 45px; }
}

@media (max-width: 479px) {
  .entry { --h: 210; }
  .entry__text { width: 280px; }
}

