/* Hero */
    .heroSection {
      background: linear-gradient(135deg, var(--color-1) 0%, var(--color-2) 40%, var(--color-3) 100%);
      overflow: hidden;
      padding-bottom: var(--space-7);
      padding-top: var(--space-7);
      position: relative;
    }

    .heroSection::before {
      background: radial-gradient(ellipse at 70% 50%, rgba(255,45,120,0.18) 0%, transparent 65%);
      content: "";
      inset: 0;
      pointer-events: none;
      position: absolute;
    }

    .heroSection::after {
      background: radial-gradient(ellipse at 20% 80%, rgba(123,47,255,0.22) 0%, transparent 60%);
      content: "";
      inset: 0;
      pointer-events: none;
      position: absolute;
    }

    .heroInner {
      align-items: flex-start;
      display: flex;
      flex-direction: column;
      gap: var(--space-4);
      position: relative;
      z-index: 1;
    }

    .heroTitle {
      color: var(--color-8);
      font-size: clamp(2rem, 5vw, 4.25rem);
      font-weight: 900;
      letter-spacing: -0.02em;
      line-height: 1.1;
      margin-bottom: var(--space-3);
      max-width: 820px;
    }

    .heroTitle span {
      background: linear-gradient(135deg, var(--color-4) 0%, var(--color-7) 100%);
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
    }

    .heroDesc {
      color: var(--color-9);
      font-size: 1.15rem;
      line-height: 1.8;
      margin-bottom: var(--space-4);
      max-width: 680px;
    }

    .heroActions {
      align-items: center;
      display: flex;
      flex-wrap: wrap;
      gap: var(--space-2);
      margin-bottom: var(--space-4);
    }

    .heroBonusBadge {
      align-items: center;
      background: rgba(255,45,120,0.12);
      border: 1px solid rgba(255,45,120,0.4);
      border-radius: var(--radius-5);
      color: var(--color-10);
      display: flex;
      font-size: 0.9rem;
      font-weight: 700;
      gap: 6px;
      padding: 0.5rem 1.2rem;
    }

    .heroBonusDot {
      animation: pulse 1.5s ease-in-out infinite;
      background: var(--color-4);
      border-radius: 50%;
      display: inline-block;
      height: 8px;
      width: 8px;
    }

    @keyframes pulse {
      0%, 100% { box-shadow: 0 0 0 0 rgba(255,45,120,0.5); }
      50% { box-shadow: 0 0 0 6px rgba(255,45,120,0); }
    }

    .heroStatsRow {
      align-items: center;
      display: flex;
      flex-wrap: wrap;
      gap: var(--space-4);
      margin-top: var(--space-2);
    }

    .heroStat { text-align: left; }
    .heroStatNum {
      background: linear-gradient(135deg, var(--color-4), var(--color-7));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
      display: block;
      font-size: 1.8rem;
      font-weight: 900;
    }
    .heroStatLabel { color: rgba(224,208,255,0.6); font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.08em; }

    /* Registration */
    .registrationSection { overflow: hidden; }

    .registrationSection .contentImage img {
      width: auto;
      max-width: 100%;
      margin: 0 auto;
    }

    /* Licensing */
    .licensingSection { overflow: hidden; }

    /* Bonuses */
    .bonusesSection { overflow: hidden; }

    /* Games */
    .gamesSection { overflow: hidden; }

    /* Payments */
    .paymentsSection { overflow: hidden; }

    /* Security */
    .securitySection { overflow: hidden; }

    /* Mobile */
    .mobileSection { overflow: hidden; }

    /* Support */
    .supportSection { overflow: hidden; }

    /* Responsible Gambling */
    .rgSection { overflow: hidden; }

    /* FAQ */
    .faqSection { overflow: hidden; }

    /* Section headers */
    .sectionLabel {
      color: var(--color-4);
      display: block;
      font-size: 0.8rem;
      font-weight: 700;
      letter-spacing: 0.15em;
      margin-bottom: var(--space-2);
      text-transform: uppercase;
    }

    .sectionTitle {
      margin-bottom: var(--space-4);
      position: relative;
    }

    .sectionTitle::after {
      background: linear-gradient(90deg, var(--color-4), var(--color-6), transparent);
      border-radius: 2px;
      bottom: -10px;
      content: "";
      height: 3px;
      left: 0;
      position: absolute;
      width: 60px;
    }

    @media (min-width: 768px) {
      .heroSection { padding-bottom: 7rem; padding-top: 7rem; }
    }

    @media (max-width: 767px) {
      .heroSection {
        padding-top: var(--space-5);
        padding-bottom: var(--space-5);
      }
      .heroInner { gap: var(--space-2); }
      .heroBonusBadge { order: 1; }
      .heroTitle    { order: 2; margin-bottom: 0; }
      .heroActions  { order: 3; margin-bottom: 0; }
      .heroStatsRow { order: 4; margin-top: 0; }
      .heroDesc     { order: 5; margin-bottom: 0; }
      .trustRow     { order: 6; }
    }