@font-face {
  font-family: Oxygen;
  src: url(/esbigowin-assets/esbigowin-fonts/esbigowin-oxygen-bold.woff2);
  display: swap;
  font-weight: 700;
}

@font-face {
  font-family: Oxygen;
  src: url(/esbigowin-assets/esbigowin-fonts/esbigowin-oxygen-regular.woff2);
  display: swap;
  font-weight: 400;
}

@font-face {
  font-family: Poppins;
  src: url(/esbigowin-assets/esbigowin-fonts/esbigowin-poppins-bold.woff2);
  display: swap;
  font-weight: 700;
}

@font-face {
  font-family: Poppins;
  src: url(/esbigowin-assets/esbigowin-fonts/esbigowin-poppins-regular.woff2);
  display: swap;
  font-weight: 400;
}

/* ===== Переменные ===== */
:root {
  --container-width: 1240px;
  --container-step: 20px;
  --container-step-tablet: 18px;
  --container-step-mobile: 16px;
  --container: calc(var(--container-width) + (var(--container-step) * 2));
  --font-family: "Poppins", sans-serif;
  --second-family: "Oxygen", sans-serif;
}

/* ===== Базовые ===== */
.esbigowin-body {
  margin: 0;
  background: #131a21;
}

.esbigowin-container {
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 var(--container-step);
  display: flex;
  flex-direction: column;
  gap: 30px;
  flex-wrap: wrap;
  box-sizing: border-box;
}

@media (max-width: 991px) {
  .esbigowin-container {
    padding: 0 var(--container-step-tablet);
  }
}

@media (max-width: 600px) {
  .esbigowin-container {
    padding: 0 var(--container-step-mobile);
  }
}

h1 {
  font-family: var(--font-family);
  font-weight: 700;
  font-size: 50px;
  line-height: 100%;
  text-transform: uppercase;
  color: #fff;
  margin: 0px;
}

@media (max-width: 991px) {
  h1 {
    font-size: 34px;
  }
}

@media (max-width: 600px) {
  h1 {
    font-size: 18px;
  }
}

h2 {
  font-family: var(--font-family);
  font-weight: 700;
  font-size: 30px;
  line-height: 100%;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
  margin: 0px;
}

@media (max-width: 991px) {
  h2 {
    font-size: 23;
  }
}

@media (max-width: 600px) {
  h2 {
    font-size: 16px;
  }
}

h3 {
  font-family: var(--font-family);
  font-weight: 700;
  font-size: 20px;
  line-height: 100%;
  text-transform: uppercase;
  color: #e94b07;
  margin: 0px;
}

@media (max-width: 991px) {
  h3 {
    font-size: 18px;
  }
}

@media (max-width: 600px) {
  h3 {
    font-size: 16px;
  }
}

p {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 14px;
  line-height: 120%;
  color: #fff;
  margin: 0px;
}

@media (max-width: 991px) {
  p {
    font-size: 13px;
  }
}

@media (max-width: 600px) {
  p {
    font-size: 12px;
  }
}

ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  margin: 0px;
  padding: 0px;
}

a {
  text-decoration: none;
}

section {
  padding: 80px 0px;
}

@media (max-width: 600px) {
  section {
    padding: 20px 0px;
  }
}

.esbigowin-btn {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 14px;
  line-height: 100%;
  color: #fff;
  border: 1px solid #e94b07;
  border-radius: 20px;
  padding: 10px 20px;
}

.esbigowin-header {
  padding: 20px 0px;
  background: #0b1c24;
}

.esbigowin-auth-buttons {
  display: flex;
  gap: 40px;
}

.esbigowin-header-container {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}

.esbigowin-login-button {
  background: #e94b07;
}

.esbigowin-register-button {
  background: transparent;
}

.esbigowin-hero-section {
  background: url("../esbigowin-assets/esbigowin-img/esbigowin-hero_bg.webp");
  padding: 100px 0px;
  background-size: cover;
  background-position: center;
}

.esbigowin-hero-content {
  display: flex;
  flex-direction: column;
  gap: 50px;
  max-width: 610px;
}

.esbigowin-hero-badge {
  font-family: var(--second-family);
  font-weight: 700;
  font-size: 20px;
  line-height: 120%;
  color: #e94b07;
}

.esbigowin-hero-text {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.esbigowin-hero-cta {
  display: flex;
  flex-direction: column;
  gap: 20px;
  align-items: start;
}

.esbigowin-cta-button {
  font-family: var(--font-family);
  font-weight: 700;
  font-size: 20px;
  line-height: 100%;
  text-transform: uppercase;
  color: #fff;
  border-radius: 20px;
  padding: 20px 40px;
  background: #e94b07;
  border: 0px;
}

.esbigowin-steps-section {
  background: linear-gradient(270deg, #0a2025 0%, #004b4c 100%);
  padding-top: 40px;
  padding-bottom: 0px;
}

.esbigowin-steps-container {
  flex-direction: row;
  align-items: center;
  flex-wrap: nowrap;
}

.esbigowin-steps-image {
  min-width: 0px;
}

.esbigowin-steps-list {
  gap: 20px;
}

.esbigowin-step-item {
  display: flex;
  align-items: center;
  gap: 20px;
}

.esbigowin-step-text {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.esbigowin-terms-section {
  background: url("../esbigowin-assets/esbigowin-img/esbigowin-terms_section_bg.webp");
  padding: 80px 0px;
  background-size: cover;
  background-position: center;
}

.esbigowin-terms-content {
  background: rgba(11, 28, 36, 0.75);
  border-radius: 20px;
  padding: 20px;
  box-sizing: border-box;
  width: 100%;
}

.esbigowin-terms-subtitle {
  margin-bottom: 10px;
  margin-top: 20px;
}

.esbigowin-white {
  font-weight: 700;
}

.esbigowin-terms-note {
  margin-top: 10px;
  margin-bottom: 20px;
}

.esbigowin-footer {
  padding: 50px 0px;
  background: #0b1c24;
}

.esbigowin-footer-container {
  gap: 40px;
}

.esbigowin-footer-logos {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  row-gap: 20px;
  column-gap: 10px;
}

.esbigowin-footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}

.esbigowin-copyright {
  font-family: var(--font-family);
  font-weight: 700;
  font-size: 20px;
  line-height: 100%;
  text-transform: uppercase;
  text-align: center;
  color: #e94b07;
}

@media screen and (max-width: 816px) {
  .esbigowin-steps-container {
    flex-wrap: wrap-reverse;
    justify-content: center;
  }
}

@media screen and (max-width: 600px) {
  .esbigowin-auth-buttons {
    gap: 10px;
  }

  .esbigowin-btn {
    padding: 5px 15px;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 12px;
    line-height: 100%;
    color: #fff;
  }

  .esbigowin-logo-link {
    max-width: 117px;
  }

  .esbigowin-logo-link img {
    width: 100%;
  }

  .esbigowin-hero-section {
    padding: 50px 0px;
    background: url("../esbigowin-assets/esbigowin-img/esbigowin-hero_bg-mobile.webp");
    background-size: cover;
    background-position: center;
  }

  .esbigowin-hero-content {
    max-width: 226px;
    gap: 20px;
  }

  .esbigowin-hero-badge {
    font-size: 12px;
  }

  .esbigowin-cta-description {
    font-size: 10px;
  }

  .esbigowin-cta-button {
    padding: 10px 20px;
    font-size: 12px;
  }

  .esbigowin-footer-logos {
    justify-content: center;
  }

  .esbigowin-footer-bottom {
    justify-content: center;
    gap: 40px;
  }

  .esbigowin-copyright {
    font-size: 16px;
  }
}

.esbigowin-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 999;
  display: flex;
  align-items: center;
  justify-content: center;
}

.esbigowin-overlay .esbigowin-container {
  width: 100%;
  align-items: center;
  max-width: 580px;
}

.esbigowin-popup {
  padding: 20px;
  max-width: 540px;
  width: 100%;
  box-sizing: border-box;
  background: linear-gradient(180deg, #0a2025 0%, #004b4c 100%);
  border-radius: 20px;
}

.esbigowin-popup_content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}

.esbigowin-popup_content h2 {
  font-family: var(--font-family);
  font-weight: 700;
  font-size: 20px;
  line-height: 100%;
  text-transform: uppercase;
  text-align: center;
  color: #e94b07;
}

.esbigowin-popup_content form {
  display: flex;
  flex-direction: column;
  gap: 40px;
  width: 100%;
  align-items: center;
}

.esbigowin-popup_content input {
  border: 1px solid #fff;
  border-radius: 20px;
  padding: 10px 20px;
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 14px;
  color: #656565;
  width: 100%;
  box-sizing: border-box;
}

.esbigowin-submit {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 14px;
  line-height: 100%;
  color: #fff;
  border-radius: 20px;
  padding: 10px 20px;
  background: #e94b07;
  border: 0px;
}

.esbigowin-link {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 14px;
  line-height: 120%;
  text-align: center;
  color: #fff;
  background: transparent;
  border: 0px;
}

/* по умолчанию оверлей скрыт */
.esbigowin-overlay { display: none; }
.esbigowin-overlay.active { display: flex; }

/* показываем/прячем конкретный контент попапа */
.esbigowin-popup_content { display: none; }
.esbigowin-popup_content.active { display: flex; }

/* состояние ошибки */
.esbigowin-field-invalid { outline: 2px solid #e53935; }

/* сообщение об успешной регистрации */
.esbigowin-register_message { display: none; margin: 8px 0; }
.esbigowin-register_message.show { display: block; }


.visually_hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  border: 0;
  clip: rect(0 0 0 0);
}