* {
  box-sizing: border-box;
}
body {
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  background: #073b70;
  color: #fff;
  line-height: 1.58;
}
a {
  color: inherit;
  text-decoration: none;
}
button {
  font-family: inherit;
}
.wrapper {
  max-width: 1260px;
  margin: 0 auto;
  padding: 0 18px;
}
header {
  background: #063462;
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
  position: sticky;
  top: 0;
  z-index: 50;
}
.headerInner {
  min-height: 78px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 22px;
  align-items: center;
}
.logo img {
  height: 52px;
  width: auto;
}
.menu {
  display: flex;
  justify-content: center;
  gap: 22px;
  font-size: 14px;
  font-weight: 900;
  text-transform: uppercase;
}
.menu a {
  color: #e6f3ff;
}
.menu a:hover {
  color: #ffbe36;
}
.headerButtons {
  display: flex;
  gap: 10px;
}
.btn {
  display: inline-block;
  border: 0;
  border-radius: 12px;
  background: linear-gradient(180deg, #ff9f28, #ff6b00);
  color: #fff;
  padding: 13px 22px;
  font-size: 15px;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 8px 18px rgba(255, 106, 0, 0.34);
}
.btn.blue {
  background: #0d5ca5;
  box-shadow: none;
}
.hero {
  background: radial-gradient(
    circle at 50% 35%,
    #0d61a8 0%,
    #073b70 48%,
    #06284c 100%
  );
  padding: 34px 0 28px;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin: 0;
}
.heroGrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
}
.heroOffer {
  border-radius: 28px;
  padding: 36px;
  min-height: 260px;
  background: linear-gradient(135deg, #9b38e6, #6231c5);
}
.heroOffer.sport {
  background: linear-gradient(135deg, #04874e, #08a65e);
}
.heroOffer h1,
.heroOffer h2 {
  margin: 0 0 16px;
  font-size: 42px;
  line-height: 1.12;
}
.heroOffer p {
  margin: 0 0 22px;
  font-size: 18px;
}
.statsGrid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-top: 20px;
}
.statCard {
  background: #0c5598;
  border: 1px solid #2f8dd5;
  border-radius: 18px;
  padding: 18px;
  min-height: 100px;
}
.statCard strong {
  display: block;
  font-size: 30px;
  line-height: 1;
  margin-bottom: 8px;
}
.statCard span {
  display: block;
  color: #c4def6;
  font-size: 15px;
}
.anchorMenu {
  background: #0b4b86;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
  border-left: 0;
  border-right: 0;
  position: sticky;
  top: 78px;
  z-index: 40;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
  margin: 0;
}
.anchorInner {
  max-width: 1260px;
  margin: 0 auto;
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding: 12px 18px;
}
.anchorInner span {
  font-weight: 900;
  white-space: nowrap;
  color: #ffbe36;
}
.anchorInner a {
  background: #105b9c;
  border: 1px solid #2e8ed5;
  border-radius: 999px;
  padding: 8px 13px;
  font-size: 14px;
  font-weight: 800;
  white-space: nowrap;
}
.section {
  margin: 22px 0;
  border-radius: 28px;
  padding: 34px;
  background: #0d5598;
  border: 1px solid #2e8ed5;
  box-shadow: 0 18px 36px rgba(0, 0, 0, 0.14);
}
section.purple,
.section.purple {
  background: linear-gradient(135deg, #2636a0, #6730c7);
}
section.green,
.section.green {
  background: linear-gradient(135deg, #0a7f54, #11965f);
}
section.dark,
.section.dark {
  background: #082f5b;
}
h1,
h2,
h3,
h4,
p {
  margin-top: 0;
}
.general-h1 {
  font-size: 42px;
  line-height: 1.12;
  margin-bottom: 18px;
}
.general-h2 {
  font-size: 32px;
  line-height: 1.18;
  margin-bottom: 16px;
}
.general-h3 {
  font-size: 23px;
  line-height: 1.25;
  margin: 26px 0 10px;
  color: #ffcc42;
}
.general-p {
  font-size: 17px;
  margin-bottom: 15px;
}
.tableWrap {
  overflow-x: auto;
  margin: 18px 0;
  border-radius: 18px;
}
table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  color: #12315a;
  border-radius: 18px;
  overflow: hidden;
}
tr:nth-child(odd) {
  background: #eef4fb;
}
td {
  border: 1px solid #d6e4f2;
  padding: 14px;
  vertical-align: top;
  font-size: 16px;
}
td:first-child {
  font-weight: 900;
  color: #073b70;
}
ul,
ol {
  margin: 14px 0 18px;
  padding-left: 24px;
}
li {
  margin: 8px 0;
  font-size: 16px;
}
.cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin: 20px 0;
}
.card {
  background: #0b4b86;
  border: 1px solid #2e8ed5;
  border-radius: 20px;
  padding: 20px;
}
.card h3 {
  margin: 0 0 8px;
  color: #ffcc42;
  font-size: 20px;
}
.card p {
  margin: 0;
  color: #d8ebff;
}
.promoGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin: 20px 0;
}
.promoCard {
  background: linear-gradient(135deg, #7b28e6, #0c5da2);
  border: 1px solid #3c9eed;
  border-radius: 22px;
  padding: 22px;
  min-height: 205px;
}
.promoCard.orange {
  background: linear-gradient(135deg, #ff7a00, #ffb22c);
}
.promoCard.greenCard {
  background: linear-gradient(135deg, #159340, #7bd531);
}
.promoCard h3 {
  margin: 0 0 10px;
  font-size: 23px;
}
.promoCard p {
  margin: 0 0 16px;
}
.appSteps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin: 20px 0;
}
.appStep {
  background: #0b4b86;
  border: 1px solid #2e8ed5;
  border-radius: 20px;
  padding: 20px;
}
.appStep b {
  display: inline-flex;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  align-items: center;
  justify-content: center;
  background: #ff8a00;
  margin-bottom: 10px;
}
.contactGrid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;
  margin: 20px 0;
}
.contactItem {
  background: #0b4b86;
  border: 1px solid #2e8ed5;
  border-radius: 20px;
  padding: 20px;
}
.contactItem strong {
  display: block;
  font-size: 20px;
  color: #ffcc42;
  margin-bottom: 6px;
}
.note {
  background: rgba(255, 204, 66, 0.14);
  border: 1px solid #ffcc42;
  border-radius: 20px;
  padding: 18px;
  margin: 18px 0;
}
.note p {
  margin: 0;
}
.faq-container {
  display: grid;
  gap: 14px;
}
.faq-item {
  background: #0b4b86;
  border: 1px solid #2e8ed5;
  border-radius: 18px;
  padding: 20px;
  position: relative;
  cursor: pointer;
}
.faq-item .toggle {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  z-index: 2;
  margin: 0;
}
.faq-question {
  margin: 0;
  color: #ffcc42;
  font-size: 20px;
  padding-right: 36px;
}
.faq-answer {
  margin: 0;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease, margin 0.35s ease;
}
.faq-item .toggle:checked ~ .faq-answer {
  max-height: 800px;
  margin-top: 12px;
}
.icon {
  position: absolute;
  top: 22px;
  right: 20px;
  width: 20px;
  height: 20px;
  pointer-events: none;
  z-index: 1;
}
.icon::before,
.icon::after {
  content: '';
  position: absolute;
  background: #ffcc42;
  border-radius: 2px;
  transition: transform 0.35s ease, opacity 0.35s ease;
}
.icon::before {
  width: 20px;
  height: 3px;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.icon::after {
  width: 3px;
  height: 20px;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
}
.faq-item .toggle:checked ~ .icon::after {
  transform: translateX(-50%) scaleY(0);
  opacity: 0;
}
footer {
  background: #082f5b;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
  padding: 34px 0;
}
.footer-inner {
  max-width: 1260px;
  margin: 0 auto;
  padding: 0 18px;
}
.footer-brand {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
}
.footer-brand p {
  margin: 0 0 8px;
  color: #d8ebff;
}
.fixedButtons {
  display: none;
  position: fixed;
  left: 10px;
  right: 10px;
  bottom: 10px;
  gap: 10px;
  z-index: 70;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
  margin: 0;
}
.fixedButtons button {
  flex: 1;
}
@media (max-width: 980px) {
  .heroGrid,
  .statsGrid,
  .cards,
  .promoGrid,
  .appSteps,
  .contactGrid {
    grid-template-columns: 1fr;
  }
  .headerInner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 0;
  }
  .headerButtons {
    gap: 8px;
  }
  .headerButtons .btn {
    padding: 10px 14px;
    font-size: 13px;
  }
  .menu {
    display: none;
  }
  .heroOffer h1,
  .heroOffer h2,
  .general-h1 {
    font-size: 32px;
  }
  section,
  .section {
    padding: 22px;
  }
  td {
    display: block;
    width: 100%;
  }
  .fixedButtons {
    display: none;
  }
}
