/* Landing page styles. */

:root {
      --text-main: rgba(242,246,255,0.96);
      --text-soft: rgba(165,185,225,0.74);
      --line: rgba(120,170,255,0.48);
      --line-soft: rgba(120,170,255,0.20);
      --button-bg: rgba(2,10,26,0.32);
      --button-hover: rgba(7,18,42,0.52);
    }

    * {
      box-sizing: border-box;
    }

    html,
    body {
      margin: 0;
      padding: 0;
      width: 100%;
      min-height: 100%;
      font-family: Georgia, "Times New Roman", serif;
      background: #000;
      color: var(--text-main);
    }

    body {
      min-height: 100vh;
      min-height: 100svh;
      position: relative;
      overflow: hidden;
      background-image:
        linear-gradient(to bottom, rgba(0,0,0,0.02), rgba(0,0,0,0.28)),
        url('/static/landing-bg.png?v=1777904968');
      background-size: cover;
      background-position: center top;
      background-repeat: no-repeat;
    }

    .page {
      width: 100%;
      min-height: 100vh;
      min-height: 100svh;
      position: relative;
    }

    .hero {
      position: absolute;
      left: 50%;
      top: clamp(530px, 61vh, 590px);
      transform: translateX(-50%);
      width: min(90vw, 760px);
      text-align: center;
    }

    h1 {
      margin: 0;
      font-size: clamp(3.8rem, 6vw, 6.4rem);
      font-weight: 400;
      line-height: 0.95;
      letter-spacing: 0.03em;
      color: var(--text-main);
      text-shadow:
        0 0 10px rgba(255,255,255,0.10),
        0 0 24px rgba(120,170,255,0.16);
    }

    .subtitle {
      margin-top: 24px;
      font-family: Arial, Helvetica, sans-serif;
      font-size: clamp(0.95rem, 1.25vw, 1.35rem);
      letter-spacing: 0.45em;
      text-transform: uppercase;
      color: var(--text-soft);
    }

    .cta-wrap {
      margin: 32px auto 0;
      width: min(100%, 520px);
    }

    .cta {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      min-height: 82px;
      padding: 18px 28px;
      border-radius: 8px;
      text-decoration: none;
      color: var(--text-main);
      font-size: clamp(1.55rem, 2.05vw, 2.35rem);
      line-height: 1.15;
      background: var(--button-bg);
      border: 1px solid var(--line);
      box-shadow:
        0 0 0 1px var(--line-soft) inset,
        0 0 20px rgba(60,120,255,0.18),
        0 -2px 18px rgba(120,180,255,0.12) inset;
      text-shadow: 0 0 12px rgba(255,255,255,0.08);
      transition: all .2s ease;
      position: relative;
    }

    .cta::before {
      content: "";
      position: absolute;
      top: -1px;
      left: 12%;
      width: 76%;
      height: 2px;
      background: linear-gradient(90deg,
        rgba(120,170,255,0),
        rgba(185,225,255,0.95),
        rgba(120,170,255,0));
      filter: blur(0.4px);
    }

    .cta:hover {
      background: var(--button-hover);
      box-shadow:
        0 0 0 1px var(--line-soft) inset,
        0 0 28px rgba(60,120,255,0.28),
        0 -2px 18px rgba(120,180,255,0.14) inset;
      transform: translateY(-1px);
    }

    .admin-link {
      position: fixed;
      right: 34px;
      top: calc(24px + env(safe-area-inset-top));
      bottom: auto;
      z-index: 20;
      font-family: Arial, Helvetica, sans-serif;
      font-size: 0.95rem;
      color: rgba(150,170,215,0.78);
      text-decoration: underline;
      text-underline-offset: 2px;
      transition: color .2s ease;
    }

    .admin-link:hover {
      color: rgba(190,210,245,0.94);
    }

    @media (max-width: 1100px) {
      .hero {
        top: clamp(500px, 60vh, 560px);
      }

      .subtitle {
        letter-spacing: 0.36em;
      }
    }

    @media (max-width: 640px) {
      body {
        overflow-x: hidden;
        overflow-y: auto;
        background-size: auto 100%;
        background-position: center top;
      }

      .page {
        min-height: 100vh;
        min-height: 100svh;
        padding-bottom: 96px;
      }

      .hero {
        position: relative;
        left: auto;
        top: auto;
        transform: none;
        width: 100%;
        max-width: 100%;
        padding: 465px 24px 0;
      }

      h1 {
        font-size: clamp(4.2rem, 17vw, 6rem);
        line-height: 0.95;
      }

      .subtitle {
        margin-top: 28px;
        font-size: clamp(0.92rem, 4vw, 1.2rem);
        line-height: 1.45;
        letter-spacing: 0.34em;
      }

      .cta-wrap {
        margin-top: 38px;
        width: 100%;
      }

      .cta {
        min-height: 72px;
        padding: 16px 20px;
        font-size: clamp(1.35rem, 5.2vw, 2rem);
      }

      .admin-link {
        left: auto;
        right: 16px;
        top: calc(14px + env(safe-area-inset-top));
        bottom: auto;
        transform: none;
        font-size: 0.82rem;
        color: rgba(175,195,235,0.84);
        padding: 7px 10px;
        border-radius: 999px;
        background: rgba(0,0,0,0.24);
        backdrop-filter: blur(4px);
      }
    }
  
.kamerton-version-footer {
  margin: 32px auto 18px;
  padding: 14px 18px;
  max-width: 1280px;
  text-align: center;
  font-size: 12px;
  line-height: 1.5;
  color: rgba(90, 70, 55, .72);
}
