.as-bonus-page {
  float:none !important;
  width:auto !important;
  max-width:1160px;
  margin:0 auto !important;
  padding:26px 10px 46px;
  font-family:Arial,Helvetica,sans-serif;
  color:#1f2933;
  line-height:1.55;
  background:#ffffff;
}

.as-bonus-mobile-page .as-bonus-page-mobile {
  padding-top: calc(var(--as-mobile-page-header-height, 134px) + 14px) !important;
}
.as-bonus-page * { box-sizing:border-box; }
.as-bonus-page h1,
.as-bonus-page h2,
.as-bonus-page strong { color:#153f73; }
.as-bonus-page h1 { margin:0; }
.as-bonus-page h2 {
  margin:0 0 10px;
  font-size:22px;
  line-height:1.25;
}
.as-bonus-page p { margin:0; font-size:15px; }
.as-bonus-hero {
  position:relative;
  margin:0 0 18px;
  border:1px solid #cfe0f2;
  border-radius:8px;
  background:#ffffff;
  overflow:hidden;
}
.as-bonus-hero-image {
  display:block;
  width:100%;
  height:auto;
}
.as-bonus-hero-note {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:16px 22px;
  border-top:1px solid #d9e2ec;
  background:#f8fbfd;
}
.as-bonus-hero-note strong {
  font-size:20px;
  white-space:nowrap;
}
.as-bonus-hero-note span {
  color:#394b59;
  font-size:15px;
}
.as-bonus-visually-hidden {
  position:absolute;
  width:1px;
  height:1px;
  margin:-1px;
  padding:0;
  overflow:hidden;
  clip:rect(0 0 0 0);
  border:0;
}
.as-bonus-account,
.as-bonus-rules,
.as-bonus-steps,
.as-bonus-benefits,
.as-bonus-reserved {
  margin:18px 0 0;
  padding:24px;
  border:1px solid #d9e2ec;
  border-radius:8px;
  background:#ffffff;
}
.as-bonus-image-panel {
  margin:18px 0 0;
  padding:0;
  border:1px solid #d9e2ec;
  border-radius:8px;
  background:#ffffff;
  overflow:hidden;
}
.as-bonus-image-panel img {
  display:block;
  width:100%;
  height:auto;
}
.as-bonus-account {
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:22px;
  align-items:center;
}
.as-bonus-points-card {
  padding:20px;
  border:1px solid #cfe0f2;
  border-radius:8px;
  background:#f5fbff;
}
.as-bonus-points-card span {
  display:block;
  margin:0 0 6px;
  color:#52606d;
  font-size:14px;
}
.as-bonus-points-card strong {
  display:block;
  font-size:44px;
  line-height:1;
}
.as-bonus-points-card a {
  display:inline-block;
  margin-top:10px;
  color:#0f6b7c;
  font-weight:bold;
}
.as-bonus-account-copy p {
  max-width:680px;
  color:#394b59;
}
.as-bonus-rules {
  background:#f8fbfd;
}
.as-bonus-rule-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.as-bonus-rule-grid article {
  min-height:118px;
  padding:18px;
  border:1px solid #d9e2ec;
  border-radius:8px;
  background:#ffffff;
}
.as-bonus-rule-grid strong {
  display:block;
  margin:0 0 7px;
  font-size:18px;
}
.as-bonus-rule-grid span {
  display:block;
  color:#394b59;
  font-size:14px;
}
.as-bonus-steps {
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:24px;
  align-items:start;
  background:#f8fbfd;
}
.as-bonus-steps ol {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:0;
  padding:0;
  list-style:none;
  counter-reset:bonusSteps;
}
.as-bonus-steps li {
  position:relative;
  min-height:126px;
  padding:18px 16px 16px;
  border:1px solid #d9e2ec;
  border-radius:8px;
  background:#ffffff;
  counter-increment:bonusSteps;
}
.as-bonus-steps li::before {
  content:counter(bonusSteps) ".";
  display:block;
  margin:0 0 8px;
  color:#1763b5;
  font-size:28px;
  font-weight:bold;
  line-height:1;
}
.as-bonus-steps li strong {
  display:block;
  margin:0 0 4px;
  font-size:16px;
}
.as-bonus-steps li span {
  display:block;
  color:#394b59;
  font-size:14px;
}
.as-bonus-benefit-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.as-bonus-benefit-grid article {
  padding:22px 24px;
  border:1px solid #d9e2ec;
  border-radius:8px;
  background:#f8fbfd;
}
.as-bonus-benefit-grid strong {
  display:block;
  margin:0 0 8px;
  font-size:17px;
  line-height:1.25;
}
.as-bonus-benefit-grid span {
  display:block;
  color:#394b59;
  font-size:14px;
  line-height:1.5;
}
.as-bonus-table-wrap {
  max-height:32rem;
  overflow:auto;
  border:1px solid #d9e2ec;
  border-radius:8px;
}
.as-bonus-table {
  width:100%;
  border-collapse:collapse;
  font-size:14px;
}
.as-bonus-table th,
.as-bonus-table td {
  padding:11px 12px;
  border-bottom:1px solid #e6edf5;
  text-align:left;
}
.as-bonus-table th {
  position:sticky;
  top:0;
  z-index:1;
  color:#153f73;
  background:#f5f8fb;
}
.as-bonus-table td:nth-child(3),
.as-bonus-table td:nth-child(4) {
  text-align:right;
  white-space:nowrap;
}
.as-bonus-table tr:last-child td { border-bottom:0; }
.as-bonus-page-mobile .as-bonus-account,
.as-bonus-page-mobile .as-bonus-steps {
  grid-template-columns:1fr;
  padding:18px;
}
.as-bonus-page-mobile .as-bonus-steps ol,
.as-bonus-page-mobile .as-bonus-rule-grid,
.as-bonus-page-mobile .as-bonus-benefit-grid {
  grid-template-columns:1fr;
}
.as-bonus-page-mobile .as-bonus-rule-grid article,
.as-bonus-page-mobile .as-bonus-benefit-grid article {
  min-height:0;
  padding:16px 18px;
}
.as-bonus-page-mobile .as-bonus-benefit-grid strong,
.as-bonus-page-mobile .as-bonus-rule-grid strong {
  font-size:17px;
}
.as-bonus-page-mobile .as-bonus-table-wrap {
  max-width:100%;
  overflow-x:auto;
}
@media (max-width:560px) {
  .as-bonus-page-mobile .as-bonus-table-wrap {
    max-height:36rem;
    overflow-y:auto;
    overscroll-behavior:contain;
    border:0;
    border-radius:0;
  }
  .as-bonus-page-mobile .as-bonus-table,
  .as-bonus-page-mobile .as-bonus-table tbody,
  .as-bonus-page-mobile .as-bonus-table tr,
  .as-bonus-page-mobile .as-bonus-table td {
    display:block;
    width:100%;
    box-sizing:border-box;
  }
  .as-bonus-page-mobile .as-bonus-table thead {
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    white-space:nowrap;
  }
  .as-bonus-page-mobile .as-bonus-table tr {
    margin:0 0 12px;
    padding:9px 13px;
    border:1px solid #d9e2ec;
    border-radius:8px;
    background:#fff;
  }
  .as-bonus-page-mobile .as-bonus-table td,
  .as-bonus-page-mobile .as-bonus-table td:nth-child(3),
  .as-bonus-page-mobile .as-bonus-table td:nth-child(4) {
    display:grid;
    grid-template-columns:minmax(112px,42%) 1fr;
    gap:10px;
    padding:7px 0;
    border-bottom:1px solid #e6edf5;
    text-align:left;
    white-space:normal;
  }
  .as-bonus-page-mobile .as-bonus-table td::before {
    content:attr(data-label);
    color:#153f73;
    font-weight:700;
  }
  .as-bonus-page-mobile .as-bonus-table td:last-child {
    border-bottom:0;
  }
}
@media (max-width:860px) {
  .as-bonus-page { padding:14px 7px 28px; }
  .as-bonus-page-mobile {
    max-width:none;
    margin:0 !important;
    padding:10px 0 26px;
  }
  .as-bonus-page-mobile h2 {
    font-size:19px;
  }
  .as-bonus-page-mobile p,
  .as-bonus-page-mobile span {
    font-size:14px;
  }
  .as-bonus-account,
  .as-bonus-steps {
    grid-template-columns:1fr;
    padding:18px;
  }
  .as-bonus-account,
  .as-bonus-rules,
  .as-bonus-steps,
  .as-bonus-benefits,
  .as-bonus-reserved,
  .as-bonus-image-panel {
    margin-top:12px;
    border-radius:8px;
  }
  .as-bonus-rules,
  .as-bonus-benefits,
  .as-bonus-reserved {
    padding:16px;
  }
  .as-bonus-hero-note {
    display:block;
    padding:14px 16px;
  }
  .as-bonus-hero-note strong {
    display:block;
    margin:0 0 5px;
    white-space:normal;
  }
  .as-bonus-steps ol,
  .as-bonus-rule-grid,
  .as-bonus-benefit-grid { grid-template-columns:1fr; }
  .as-bonus-rule-grid article,
  .as-bonus-benefit-grid article {
    min-height:0;
    padding:16px 18px;
  }
  .as-bonus-points-card strong {
    font-size:36px;
  }
}
