:root {
      --void: #050608;
      --night: #0b1118;
      --steel: #111b24;
      --red: #ff3046;
      --red-hot: #ff0f2f;
      --cream: #f6efe4;
      --muted: #9aa7ad;
      --blue: #10a7ff;
      --yellow: #ffd100;
      --line: rgba(255, 255, 255, 0.14);
      --card: rgba(11, 17, 24, 0.78);
      --shadow-red: 0 0 34px rgba(255, 48, 70, 0.34);
      --shadow-blue: 0 0 32px rgba(16, 167, 255, 0.24);
    }

    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      min-height: 100vh;
      overflow-x: hidden;
      color: var(--cream);
      background:
        linear-gradient(90deg, rgba(3, 4, 5, 0.9) 0%, rgba(3, 4, 5, 0.58) 45%, rgba(3, 4, 5, 0.86) 100%),
        url("загруженное.png") center center / cover fixed no-repeat,
        url("file:///C:/Users/metrx/.cursor/projects/f-lend-skill-cursor-design-web/assets/f__lend__skill_cursor_design_web__valik____________.png") center center / cover fixed no-repeat,
        #030405;
      font-family: "Rajdhani", sans-serif;
      line-height: 1.45;
      background-attachment: fixed;
    }

    a {
      color: inherit;
      text-decoration: none;
    }

    img {
      display: block;
      max-width: 100%;
    }

    .container {
      width: min(1180px, calc(100% - 36px));
      margin: 0 auto;
      position: relative;
      z-index: 2;
    }

    .topbar {
      position: sticky;
      top: 14px;
      z-index: 10;
      width: min(1180px, calc(100% - 36px));
      margin: 14px auto 0;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      padding: 12px 14px 12px 18px;
      border: 1px solid var(--line);
      background: rgba(5, 6, 8, 0.72);
      backdrop-filter: blur(18px);
      box-shadow: 0 16px 60px rgba(0, 0, 0, 0.35);
      clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 18px, 100% 100%, 18px 100%, 0 calc(100% - 18px));
      animation: nav-drop 0.9s cubic-bezier(0.16, 1, 0.3, 1) both;
    }

    .brand {
      display: flex;
      align-items: center;
      font-family: "Archivo Black", sans-serif;
      letter-spacing: -0.04em;
      text-transform: uppercase;
      font-size: clamp(24px, 3vw, 38px);
      line-height: 0.88;
      text-shadow: 3px 0 0 rgba(255, 48, 70, 0.82), -2px 0 0 rgba(16, 167, 255, 0.42);
    }

    .brand span {
      color: #fff;
    }

    .brand em {
      color: var(--red);
      font-style: normal;
      animation: brand-pulse 2.8s ease-in-out infinite;
    }

    .nav {
      display: flex;
      align-items: center;
      gap: clamp(14px, 3vw, 34px);
      color: rgba(246, 239, 228, 0.78);
      font-size: 15px;
      font-weight: 700;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    .nav a {
      position: relative;
      transition: color 0.25s ease;
    }

    .nav a::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: -8px;
      width: 100%;
      height: 2px;
      transform: scaleX(0);
      transform-origin: left;
      background: var(--red);
      transition: transform 0.25s ease;
    }

    .nav a:hover {
      color: #fff;
    }

    .nav a:hover::after {
      transform: scaleX(1);
    }

    .nav a.nav-events {
      color: var(--red);
      animation: nav-events-glow 3.6s ease-in-out infinite;
    }

    .nav a.nav-events::after {
      background: var(--red);
      box-shadow: 0 0 10px rgba(255, 48, 70, 0.85);
    }

    .nav a.nav-events:hover {
      animation: none;
      color: var(--red-hot);
      text-shadow:
        0 0 14px rgba(255, 15, 47, 0.95),
        0 0 28px rgba(255, 48, 70, 0.75),
        0 0 42px rgba(255, 48, 70, 0.45);
    }

    .nav a.nav-events:hover::after {
      background: var(--red-hot);
      box-shadow: 0 0 14px rgba(255, 48, 70, 0.95);
    }

    .header-actions {
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .lang-dropdown {
      position: fixed;
      right: 20px;
      bottom: 24px;
      z-index: 1000;
    }

    .lang-trigger {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      min-height: 48px;
      padding: 0 16px 0 14px;
      border: 1px solid rgba(255, 255, 255, 0.14);
      background: linear-gradient(180deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.03) 100%);
      color: #fff;
      font-family: "Rajdhani", sans-serif;
      font-size: 14px;
      font-weight: 900;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      cursor: pointer;
      clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px));
      box-shadow: 0 12px 32px rgba(0, 0, 0, 0.42);
      transition: border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
    }

    .lang-trigger:hover,
    .lang-dropdown.is-open .lang-trigger {
      border-color: rgba(255, 48, 70, 0.55);
      background: linear-gradient(180deg, rgba(255, 48, 70, 0.22) 0%, rgba(255, 48, 70, 0.08) 100%);
      box-shadow: 0 12px 36px rgba(255, 48, 70, 0.28);
      transform: translateY(-2px);
    }

    .lang-trigger-icon {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 22px;
      height: 22px;
      color: rgba(255, 255, 255, 0.88);
      font-size: 18px;
      line-height: 1;
    }

    .lang-trigger-code {
      min-width: 1.6em;
      text-align: center;
    }

    .lang-trigger-caret {
      width: 8px;
      height: 8px;
      border-right: 2px solid rgba(255, 255, 255, 0.75);
      border-bottom: 2px solid rgba(255, 255, 255, 0.75);
      transform: rotate(45deg) translateY(-2px);
      transition: transform 0.32s cubic-bezier(0.22, 1, 0.36, 1);
    }

    .lang-dropdown.is-open .lang-trigger-caret {
      transform: rotate(-135deg) translateY(2px);
    }

    .lang-menu {
      position: absolute;
      right: 0;
      bottom: calc(100% + 12px);
      min-width: 220px;
      max-height: min(70vh, 420px);
      margin: 0;
      padding: 8px;
      list-style: none;
      border: 1px solid rgba(255, 255, 255, 0.12);
      background: rgba(12, 10, 14, 0.97);
      backdrop-filter: blur(14px);
      clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 12px 100%, 0 calc(100% - 12px));
      box-shadow: 0 18px 40px rgba(0, 0, 0, 0.45);
      overflow-y: auto;
      overscroll-behavior: contain;
      scrollbar-width: thin;
      scrollbar-color: rgba(255, 48, 70, 0.5) transparent;
      opacity: 0;
      visibility: hidden;
      transform: translateY(12px) scale(0.97);
      transform-origin: bottom right;
      pointer-events: none;
      transition:
        opacity 0.28s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.32s cubic-bezier(0.22, 1, 0.36, 1),
        visibility 0.28s;
    }

    .lang-dropdown.is-open .lang-menu {
      opacity: 1;
      visibility: visible;
      transform: translateY(0) scale(1);
      pointer-events: auto;
    }

    .lang-option {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      width: 100%;
      padding: 10px 12px;
      border: 0;
      background: transparent;
      color: rgba(246, 239, 228, 0.78);
      font-family: "Rajdhani", sans-serif;
      font-size: 15px;
      font-weight: 700;
      letter-spacing: 0.04em;
      text-align: left;
      cursor: pointer;
      border-radius: 2px;
      transition: color 0.2s ease, background 0.2s ease, transform 0.2s ease;
    }

    .lang-option:hover {
      color: #fff;
      background: rgba(255, 48, 70, 0.2);
      transform: translateX(2px);
    }

    .lang-option.active {
      color: #fff;
      background: rgba(255, 48, 70, 0.32);
    }

    .lang-option-code {
      font-size: 12px;
      font-weight: 900;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: rgba(255, 255, 255, 0.45);
    }

    .lang-option.active .lang-option-code {
      color: rgba(255, 200, 205, 0.9);
    }

    .login-link,
    .primary-btn,
    .ghost-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 46px;
      padding: 0 22px;
      border: 1px solid rgba(255, 48, 70, 0.72);
      color: #fff;
      background: linear-gradient(135deg, var(--red), #9f101d);
      font-weight: 800;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      box-shadow: var(--shadow-red);
      clip-path: polygon(0 0, calc(100% - 14px) 0, 100% 14px, 100% 100%, 14px 100%, 0 calc(100% - 14px));
      transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease;
      position: relative;
      overflow: hidden;
      isolation: isolate;
    }

    .login-link::before,
    .primary-btn::before,
    .ghost-btn::before {
      content: "";
      position: absolute;
      inset: -30% auto -30% -55%;
      z-index: -1;
      width: 46%;
      background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.52), transparent);
      transform: skewX(-18deg);
      animation: button-shine 4.2s ease-in-out infinite;
    }

    .login-link:hover,
    .primary-btn:hover,
    .ghost-btn:hover {
      transform: translateY(-2px);
      filter: brightness(1.15);
      box-shadow: 0 0 46px rgba(255, 48, 70, 0.46);
    }

    .hero {
      min-height: 720px;
      padding: 74px 0 88px;
      position: relative;
    }

    .hero::before {
      content: "";
      position: absolute;
      inset: -82px 0 auto auto;
      width: min(920px, 72vw);
      height: 690px;
      background:
        linear-gradient(90deg, rgba(5, 6, 8, 0.92), rgba(5, 6, 8, 0.15) 42%, rgba(5, 6, 8, 0.96)),
        url("yoru.jpg") center / cover no-repeat;
      opacity: 0.58;
      clip-path: polygon(18% 0, 100% 0, 100% 92%, 76% 100%, 0 68%);
      filter: saturate(1.1) contrast(1.05);
    }

    .hero-grid {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(320px, 430px);
      gap: 38px;
      align-items: end;
    }

    .eyebrow {
      display: inline-flex;
      gap: 12px;
      align-items: center;
      margin-bottom: 20px;
      color: var(--red);
      font-size: 16px;
      font-weight: 800;
      letter-spacing: 0.22em;
      text-transform: uppercase;
    }

    .eyebrow::before {
      content: "";
      width: 44px;
      height: 2px;
      background: currentColor;
      box-shadow: 0 0 18px currentColor;
    }

    h1,
    h2,
    h3 {
      font-family: "Archivo Black", sans-serif;
      line-height: 0.9;
      text-transform: uppercase;
    }

    h1 {
      max-width: 780px;
      font-size: clamp(58px, 10vw, 148px);
      letter-spacing: -0.08em;
      text-shadow: 7px 0 0 rgba(255, 48, 70, 0.7), -4px 0 0 rgba(16, 167, 255, 0.32);
    }

    .glitch {
      position: relative;
      display: inline-block;
    }

    .glitch::before,
    .glitch::after {
      content: attr(data-text);
      position: absolute;
      inset: 0;
      opacity: 0.75;
      pointer-events: none;
    }

    .glitch::before {
      color: var(--red);
      transform: translate(5px, 0);
      clip-path: polygon(0 10%, 100% 10%, 100% 35%, 0 35%);
      animation: glitch-red 2.3s infinite steps(2);
    }

    .glitch::after {
      color: var(--blue);
      transform: translate(-4px, 0);
      clip-path: polygon(0 58%, 100% 58%, 100% 82%, 0 82%);
      animation: glitch-blue 2.7s infinite steps(2);
    }

    .hero-copy {
      max-width: 640px;
      margin-top: 24px;
      color: rgba(246, 239, 228, 0.78);
      font-size: clamp(19px, 2vw, 24px);
      font-weight: 500;
    }

    .hero-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 14px;
      margin-top: 34px;
    }

    .ghost-btn {
      background: rgba(246, 239, 228, 0.03);
      border-color: rgba(246, 239, 228, 0.4);
      box-shadow: none;
    }

    .stats-strip {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 1px;
      width: min(680px, 100%);
      margin-top: 46px;
      border: 1px solid var(--line);
      background: var(--line);
      clip-path: polygon(0 0, calc(100% - 16px) 0, 100% 16px, 100% 100%, 16px 100%, 0 calc(100% - 16px));
    }

    .stat {
      padding: 18px;
      background: rgba(5, 6, 8, 0.78);
    }

    .stat strong {
      display: block;
      color: #fff;
      font-family: "Archivo Black", sans-serif;
      font-size: clamp(26px, 4vw, 42px);
      line-height: 1;
      transition: color 0.2s ease, text-shadow 0.2s ease, transform 0.2s ease;
    }

    .stat strong.counter-pop {
      color: var(--red);
      text-shadow: 0 0 28px rgba(255, 48, 70, 0.72);
      transform: translateY(-2px) scale(1.08);
    }

    .stat span {
      color: var(--muted);
      font-size: 13px;
      font-weight: 800;
      letter-spacing: 0.18em;
      text-transform: uppercase;
    }

    .login-panel {
      position: relative;
      padding: 24px;
      overflow: hidden;
      border: 1px solid rgba(255, 48, 70, 0.34);
      background:
        linear-gradient(145deg, rgba(255, 48, 70, 0.14), transparent 44%),
        rgba(5, 6, 8, 0.82);
      box-shadow: 0 28px 100px rgba(0, 0, 0, 0.45);
      clip-path: polygon(0 0, calc(100% - 34px) 0, 100% 34px, 100% 100%, 34px 100%, 0 calc(100% - 34px));
    }

    .login-panel::before {
      content: "";
      position: absolute;
      inset: 10px;
      border: 1px solid rgba(255, 255, 255, 0.12);
      pointer-events: none;
      clip-path: polygon(0 0, calc(100% - 24px) 0, 100% 24px, 100% 100%, 24px 100%, 0 calc(100% - 24px));
    }

    .login-panel h2 {
      font-size: clamp(34px, 4vw, 52px);
      letter-spacing: -0.04em;
    }

    .login-panel p {
      margin: 18px 0 22px;
      color: rgba(246, 239, 228, 0.76);
      font-size: 18px;
      font-weight: 500;
    }

    .login-panel .login-link {
      width: 100%;
    }

    .riot-note {
      margin-top: 16px;
      padding: 14px;
      border: 1px solid rgba(255, 255, 255, 0.12);
      background: rgba(255, 255, 255, 0.04);
      color: rgba(246, 239, 228, 0.66);
      font-size: 15px;
      font-weight: 600;
    }

    .section {
      padding: 86px 0;
      position: relative;
    }

    .section-head {
      display: flex;
      align-items: end;
      justify-content: space-between;
      gap: 24px;
      margin-bottom: 34px;
    }

    .section-head h2 {
      max-width: 760px;
      font-size: clamp(44px, 7vw, 92px);
      letter-spacing: -0.06em;
    }

    .section-head p {
      max-width: 390px;
      color: rgba(246, 239, 228, 0.68);
      font-size: 18px;
      font-weight: 600;
    }

    .mode-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 22px;
    }

    .mode-card {
      min-height: 520px;
      position: relative;
      overflow: hidden;
      isolation: isolate;
      border: 1px solid rgba(255, 255, 255, 0.12);
      background: var(--card);
      box-shadow: 0 24px 80px rgba(0, 0, 0, 0.42);
      clip-path: polygon(0 0, calc(100% - 26px) 0, 100% 26px, 100% 100%, 26px 100%, 0 calc(100% - 26px));
      transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
    }

    .mode-card:hover {
      z-index: 5;
      border-color: rgba(255, 48, 70, 0.62);
      box-shadow: 0 28px 110px rgba(255, 48, 70, 0.24);
      transform: translateY(-8px);
    }

    .mode-card img {
      width: 100%;
      height: 100%;
      min-height: 520px;
      object-fit: cover;
      filter: saturate(1.06) contrast(1.06);
      transition: transform 0.65s ease, filter 0.65s ease;
    }

    .mode-card:hover img {
      transform: scale(1.08);
      filter: saturate(1.22) contrast(1.1);
    }

    .mode-card::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 1;
      background:
        linear-gradient(180deg, rgba(5, 6, 8, 0.1), rgba(5, 6, 8, 0.82) 72%),
        linear-gradient(120deg, rgba(255, 48, 70, 0.46), transparent 38%);
    }

    .mode-card::after {
      content: "";
      position: absolute;
      z-index: 2;
      inset: 18px;
      border: 1px solid rgba(255, 255, 255, 0.16);
      pointer-events: none;
      clip-path: polygon(0 0, 52% 0, 52% 3px, 100% 3px, 100% 100%, 0 100%);
    }

    .mode-content {
      position: absolute;
      left: 22px;
      right: 22px;
      bottom: 22px;
      z-index: 3;
    }

    .mode-kicker {
      display: inline-flex;
      margin-bottom: 12px;
      padding: 7px 10px;
      color: #050608;
      background: var(--cream);
      font-size: 13px;
      font-weight: 900;
      letter-spacing: 0.16em;
      text-transform: uppercase;
    }

    .mode-content h3 {
      margin-bottom: 10px;
      font-size: clamp(42px, 5vw, 64px);
      letter-spacing: -0.05em;
      text-shadow: 4px 0 0 rgba(255, 48, 70, 0.75);
    }

    .mode-content p {
      color: rgba(246, 239, 228, 0.78);
      font-size: 18px;
      font-weight: 600;
    }

    .mode-meta {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 16px;
    }

    .mode-meta span {
      padding: 8px 10px;
      border: 1px solid rgba(255, 255, 255, 0.18);
      background: rgba(5, 6, 8, 0.56);
      color: rgba(246, 239, 228, 0.84);
      font-size: 12px;
      font-weight: 900;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    .feature-band {
      display: grid;
      grid-template-columns: minmax(0, 0.9fr) minmax(320px, 1.1fr);
      gap: 26px;
      align-items: stretch;
      padding: 24px;
      border: 1px solid rgba(255, 255, 255, 0.12);
      background:
        linear-gradient(135deg, rgba(255, 209, 0, 0.11), transparent 38%),
        rgba(5, 6, 8, 0.7);
      clip-path: polygon(0 0, calc(100% - 42px) 0, 100% 42px, 100% 100%, 42px 100%, 0 calc(100% - 42px));
    }

    .feature-copy {
      padding: clamp(20px, 4vw, 42px);
    }

    .feature-copy h2 {
      margin-bottom: 24px;
      font-size: clamp(40px, 7vw, 92px);
      letter-spacing: -0.06em;
    }

    .feature-copy p {
      color: rgba(246, 239, 228, 0.74);
      font-size: 20px;
      font-weight: 600;
    }

    .feature-list {
      display: grid;
      gap: 12px;
      margin-top: 30px;
    }

    .feature-list li {
      list-style: none;
      display: flex;
      gap: 12px;
      align-items: center;
      padding: 13px 14px;
      border: 1px solid rgba(255, 255, 255, 0.12);
      background: rgba(255, 255, 255, 0.04);
      font-size: 17px;
      font-weight: 800;
    }

    .feature-list li::before {
      content: "";
      width: 10px;
      height: 10px;
      flex: 0 0 auto;
      background: var(--yellow);
      box-shadow: 0 0 18px rgba(255, 209, 0, 0.62);
      transform: rotate(45deg);
    }

    .feature-art {
      min-height: 480px;
      position: relative;
      overflow: hidden;
      clip-path: polygon(9% 0, 100% 0, 100% 88%, 88% 100%, 0 100%, 0 12%);
    }

    .feature-art img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      filter: grayscale(0.18) saturate(1.1) contrast(1.08);
    }

    .feature-art::after {
      content: "";
      position: absolute;
      inset: 0;
      background:
        radial-gradient(circle at 12% 16%, rgba(255, 209, 0, 0.32), transparent 34%),
        linear-gradient(90deg, rgba(5, 6, 8, 0.62), transparent 54%);
    }

    .rules-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 14px;
    }

    .rule {
      min-height: 190px;
      padding: 22px;
      border: 1px solid rgba(255, 255, 255, 0.12);
      background: linear-gradient(150deg, rgba(255, 48, 70, 0.12), rgba(255, 255, 255, 0.035));
      clip-path: polygon(0 0, calc(100% - 20px) 0, 100% 20px, 100% 100%, 20px 100%, 0 calc(100% - 20px));
    }

    .rule strong {
      display: block;
      margin-bottom: 20px;
      color: var(--red);
      font-family: "Archivo Black", sans-serif;
      font-size: 42px;
      line-height: 1;
    }

    .rule h3 {
      margin-bottom: 10px;
      font-size: 22px;
      letter-spacing: -0.03em;
    }

    .rule p {
      color: rgba(246, 239, 228, 0.66);
      font-weight: 600;
    }

    .info-grid {
      display: grid;
      grid-template-columns: 1fr;
      gap: 18px;
      align-items: stretch;
    }

    .panel {
      padding: clamp(22px, 4vw, 38px);
      border: 1px solid rgba(255, 255, 255, 0.12);
      background:
        linear-gradient(145deg, rgba(255, 48, 70, 0.12), transparent 42%),
        rgba(5, 6, 8, 0.72);
      clip-path: polygon(0 0, calc(100% - 28px) 0, 100% 28px, 100% 100%, 28px 100%, 0 calc(100% - 28px));
    }

    .panel h3 {
      margin-bottom: 16px;
      font-size: clamp(28px, 4vw, 46px);
      letter-spacing: -0.05em;
    }

    .panel p {
      color: rgba(246, 239, 228, 0.72);
      font-size: 18px;
      font-weight: 600;
    }

    .prize-list {
      display: grid;
      gap: 14px;
      margin-top: 24px;
    }

    .prize {
      --prize-accent: var(--red);
      position: relative;
      display: grid;
      grid-template-columns: 92px 1fr auto;
      align-items: center;
      gap: 18px;
      overflow: hidden;
      min-height: 128px;
      padding: 18px 20px;
      border: 1px solid color-mix(in srgb, var(--prize-accent) 54%, rgba(255, 255, 255, 0.16));
      background:
        linear-gradient(90deg, color-mix(in srgb, var(--prize-accent) 20%, transparent), transparent 34%),
        linear-gradient(145deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02)),
        rgba(5, 6, 8, 0.78);
      box-shadow: 0 22px 80px color-mix(in srgb, var(--prize-accent) 18%, transparent);
      clip-path: polygon(0 0, calc(100% - 24px) 0, 100% 24px, 100% 100%, 24px 100%, 0 calc(100% - 24px));
      isolation: isolate;
      transform: translateY(0);
      transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
    }

    .prize:hover {
      transform: translateX(8px);
      border-color: color-mix(in srgb, var(--prize-accent) 78%, #fff);
      box-shadow: 0 30px 110px color-mix(in srgb, var(--prize-accent) 26%, transparent);
    }

    .prize::before {
      content: "";
      position: absolute;
      inset: -30% -20% auto auto;
      z-index: -1;
      width: 220px;
      height: 220px;
      background: radial-gradient(circle, color-mix(in srgb, var(--prize-accent) 76%, transparent), transparent 68%);
      filter: blur(18px);
      opacity: 0.42;
      animation: prize-glow 5s ease-in-out infinite;
    }

    .prize::after {
      content: "";
      position: absolute;
      inset: 14px;
      z-index: -1;
      border: 1px solid rgba(255, 255, 255, 0.12);
      clip-path: polygon(0 0, 58% 0, 58% 3px, 100% 3px, 100% 100%, 0 100%);
    }

    .prize.gold {
      --prize-accent: #ffd100;
    }

    .prize.silver {
      --prize-accent: #d7e5f0;
    }

    .prize.bronze {
      --prize-accent: #ff7a30;
    }

    .prize strong {
      color: var(--prize-accent);
      font-family: "Archivo Black", sans-serif;
      font-size: clamp(34px, 5vw, 58px);
      line-height: 0.8;
      text-shadow: 0 0 24px color-mix(in srgb, var(--prize-accent) 46%, transparent);
    }

    .prize h4 {
      margin-bottom: 8px;
      color: #fff;
      font-family: "Archivo Black", sans-serif;
      font-size: clamp(22px, 3vw, 34px);
      line-height: 0.95;
      text-transform: uppercase;
    }

    .prize p {
      color: rgba(246, 239, 228, 0.72);
      font-size: 17px;
      font-weight: 700;
    }

    .prize-reward {
      display: inline-flex;
      width: fit-content;
      padding: 10px 12px;
      color: #050608;
      background: var(--prize-accent);
      font-weight: 900;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      box-shadow: 0 0 22px color-mix(in srgb, var(--prize-accent) 36%, transparent);
    }

    .faq-list {
      display: grid;
      gap: 10px;
    }

    details {
      border: 1px solid rgba(255, 255, 255, 0.12);
      background: rgba(255, 255, 255, 0.035);
    }

    summary {
      padding: 16px 18px;
      color: #fff;
      font-size: 18px;
      font-weight: 900;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      cursor: pointer;
    }

    details p {
      padding: 0 18px 18px;
      color: rgba(246, 239, 228, 0.68);
      font-size: 17px;
      font-weight: 600;
    }

    .cta {
      padding-bottom: 100px;
    }

    .cta-box {
      position: relative;
      overflow: hidden;
      min-height: 440px;
      display: grid;
      align-items: center;
      padding: clamp(28px, 7vw, 78px);
      border: 1px solid rgba(16, 167, 255, 0.26);
      background:
        linear-gradient(90deg, rgba(5, 6, 8, 0.94) 0%, rgba(5, 6, 8, 0.68) 48%, rgba(5, 6, 8, 0.16) 100%),
        url("yoru.jpg") center right / cover no-repeat;
      box-shadow: var(--shadow-blue);
      clip-path: polygon(0 0, calc(100% - 46px) 0, 100% 46px, 100% 100%, 46px 100%, 0 calc(100% - 46px));
    }

    .cta-box::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        linear-gradient(90deg, rgba(16, 167, 255, 0.45) 1px, transparent 1px),
        linear-gradient(0deg, rgba(16, 167, 255, 0.28) 1px, transparent 1px);
      background-size: 58px 58px;
      mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0.65), transparent 72%);
    }

    .cta-inner {
      position: relative;
      z-index: 2;
      max-width: 620px;
    }

    .cta-inner h2 {
      margin-bottom: 20px;
      font-size: clamp(42px, 8vw, 98px);
      letter-spacing: -0.07em;
    }

    .cta-inner p {
      margin-bottom: 28px;
      color: rgba(246, 239, 228, 0.76);
      font-size: 21px;
      font-weight: 600;
    }

    .footer {
      padding: 24px 0 42px;
      color: rgba(246, 239, 228, 0.5);
      font-size: 14px;
      font-weight: 700;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }

    .reveal {
      opacity: 1;
      filter: none;
      transform: none;
    }

    .reveal.reveal-init {
      opacity: 0;
      filter: blur(10px);
      transform: translateY(42px) scale(0.985);
      transition: opacity 0.85s cubic-bezier(0.16, 1, 0.3, 1), transform 0.85s cubic-bezier(0.16, 1, 0.3, 1), filter 0.85s ease;
    }

    .reveal.reveal-init.visible {
      opacity: 1;
      filter: blur(0);
      transform: translateY(0);
    }

    @keyframes prize-glow {
      0%, 100% { transform: translate3d(0, 0, 0) scale(1); opacity: 0.34; }
      50% { transform: translate3d(-22px, 28px, 0) scale(1.16); opacity: 0.58; }
    }

    @keyframes nav-drop {
      from { opacity: 0; transform: translateY(-18px); }
      to { opacity: 1; transform: translateY(0); }
    }

    @keyframes brand-pulse {
      0%, 100% { text-shadow: 0 0 0 rgba(255, 48, 70, 0); }
      50% { text-shadow: 0 0 26px rgba(255, 48, 70, 0.8); }
    }

    @keyframes nav-events-glow {
      0%, 100% {
        text-shadow:
          0 0 4px rgba(255, 48, 70, 0.12),
          0 0 10px rgba(255, 48, 70, 0.06);
      }
      50% {
        text-shadow:
          0 0 12px rgba(255, 48, 70, 0.92),
          0 0 26px rgba(255, 48, 70, 0.58),
          0 0 40px rgba(255, 48, 70, 0.28);
      }
    }

    @keyframes button-shine {
      0%, 62% { left: -55%; }
      78%, 100% { left: 120%; }
    }

    @keyframes glitch-red {
      0%, 82%, 100% { transform: translate(5px, 0); }
      84% { transform: translate(12px, -4px); }
      88% { transform: translate(-8px, 3px); }
    }

    @keyframes glitch-blue {
      0%, 74%, 100% { transform: translate(-4px, 0); }
      77% { transform: translate(-12px, 4px); }
      80% { transform: translate(9px, -3px); }
    }

    @media (max-width: 980px) {
      .nav {
        display: none;
      }

      .hero-grid,
      .feature-band {
        grid-template-columns: 1fr;
      }

      .login-panel {
        max-width: 560px;
      }


      .mode-grid {
        grid-template-columns: 1fr;
      }

      .prize-list {
        grid-template-columns: 1fr;
      }

      .mode-card,
      .mode-card img {
        min-height: 460px;
      }

      .rules-grid {
        grid-template-columns: repeat(2, 1fr);
      }

      .header-actions {
        margin-left: auto;
      }

      .info-grid {
        grid-template-columns: 1fr;
      }
    }

    @media (max-width: 640px) {
      .topbar {
        top: 8px;
        width: min(100% - 20px, 1180px);
        flex-wrap: wrap;
      }

      .brand {
        font-size: 14px;
      }

      .login-link {
        min-height: 42px;
        padding: 0 14px;
        font-size: 13px;
      }

      .header-actions {
        width: 100%;
        justify-content: space-between;
        gap: 6px;
      }

      .lang-dropdown {
        right: 12px;
        bottom: 16px;
      }

      .lang-menu {
        min-width: min(220px, calc(100vw - 28px));
        max-height: min(62vh, 360px);
      }

      .lang-trigger {
        min-height: 44px;
        padding: 0 12px 0 10px;
        font-size: 13px;
      }

      .hero {
        padding-top: 52px;
        min-height: auto;
      }

      .hero::before {
        width: 100%;
        opacity: 0.34;
      }

      .stats-strip,
      .rules-grid,
      .prize {
        grid-template-columns: 1fr;
      }

      .section-head {
        display: block;
      }

      .section-head p {
        margin-top: 16px;
      }

      .mode-card,
      .mode-card img {
        min-height: 410px;
      }

      .feature-art {
        min-height: 320px;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      *,
      *::before,
      *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
      }
    }
