    html, body {
      margin: 0;
      padding: 0;
      min-height: 100%;
      background: #21b571;
      color: #ff1f8b;
      font-family: Arial, Helvetica, sans-serif;
      cursor: url("../cursor.ico"), default;
    }
	
	@font-face {
  font-family: "BlackBoton";
  src: url("../fonts/bb.otf") format("opentype");
  font-weight: normal;
  font-style: normal;
}

    a {
      color: #ff1f8b;
      cursor: url("../cursora.ico"), pointer;
    }

    * {
      box-sizing: border-box;
    }

    .page {
      width: 100%;
      min-height: 100vh;
      padding: 28px;
      background: #21b571;
    }

    .wrap {
      max-width: 1100px;
      margin: 0 auto;
    }

    .hero,
    .section,
    .rules,
    .contact {
      background: #ffd600;
      border-radius: 0 26px 26px 26px;
      padding: 24px;
      margin-bottom: 24px;
      box-shadow: 8px 8px 0 rgba(255, 31, 139, 0.95);
    }

    .hero {
      display: grid;
      grid-template-columns: 1.5fr 1fr;
      gap: 24px;
      align-items: center;
    }

    .hero-logo img,
    .hero-art img,
    .card img {
      max-width: 100%;
      height: auto;
      display: block;
    }

.hero h1,
.section-title,
.rules h2,
.contact h2 {
  font-family: "BlackBoton", Arial, Helvetica, sans-serif;
  margin: 0 0 14px 0;
  color: #ff1f8b;
  font-size: clamp(28px, 4vw, 48px);
  line-height: 0.95;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  text-shadow: 3px 3px 0 rgba(255, 214, 0, 0.95);
}

    .hero p,
    .card p,
    .contact p,
    .rules li {
      margin: 0 0 14px 0;
      font-size: 17px;
      line-height: 1.45;
      color: #ff1f8b;
    }

    .email-chip {
      display: inline-block;
      padding: 10px 14px;
      background: #21b571;
      color: #ffd600;
      font-weight: 700;
      text-decoration: none;
      border-radius: 0 14px 14px 14px;
      box-shadow: 4px 4px 0 rgba(255, 31, 139, 0.95);
    }

    .section-title {
      font-size: clamp(24px, 3vw, 40px);
      margin-bottom: 20px;
    }

    .card-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 20px;
    }

    .card {
      background: #21b571;
      border-radius: 0 22px 22px 22px;
      padding: 18px;
      min-height: 100%;
      box-shadow: 6px 6px 0 rgba(255, 31, 139, 0.95);
    }

    .card-media {
      margin-bottom: 14px;
      background: #ffd600;
      border-radius: 0 16px 16px 16px;
      padding: 12px;
    }

    .card h3 {
      margin: 0 0 8px 0;
      font-size: 28px;
      line-height: 1;
      color: #ffd600;
      text-transform: uppercase;
    }

    .price {
      display: inline-block;
      margin-bottom: 14px;
      padding: 8px 12px;
      background: #ff1f8b;
      color: #ffd600;
      font-weight: 700;
      border-radius: 0 12px 12px 12px;
    }

    .card p {
      color: #ffd600;
    }

    .rules ul {
      margin: 0;
      padding-left: 20px;
    }

    .contact {
      text-align: center;
    }

    .contact-email {
      display: inline-block;
      margin: 10px 0 18px 0;
      padding: 14px 18px;
      background: #21b571;
      color: #ffd600;
      text-decoration: none;
      font-weight: 700;
      font-size: clamp(18px, 2.5vw, 30px);
      border-radius: 0 16px 16px 16px;
      box-shadow: 4px 4px 0 rgba(255, 31, 139, 0.95);
    }

    .back-wrap {
      text-align: center;
      padding-bottom: 20px;
    }

    .back-wrap a {
      display: inline-block;
      padding: 12px 16px;
      background: #ffd600;
      border-radius: 0 16px 16px 16px;
      box-shadow: 4px 4px 0 rgba(255, 31, 139, 0.95);
      text-decoration: none;
      font-weight: 700;
    }

    @media (max-width: 860px) {
      .hero {
        grid-template-columns: 1fr;
      }

      .card-grid {
        grid-template-columns: 1fr;
      }

      .page {
        padding: 16px;
      }
    }
