/* _cvdy8m9be */
:root {--color-surface-alt: #111736;--color-text: #dde2ff;--shadow-card: 0 12px 24px rgba(10, 21, 64, 0.35);--color-surface: #0c1026;--radius-md: 16px;--color-accent: #3d7bff;--gradient-hero: radial-gradient(circle at top right, rgba(62, 107, 255, 0.45), transparent 55%),
                    radial-gradient(circle at 20% 20%, rgba(92, 255, 218, 0.32), transparent 45%),
                    linear-gradient(145deg, #050614 0%, #0c1026 55%, #10173a 100%);--color-muted: #9aa3d6;--font-base: 'Poppins', 'Helvetica Neue', Arial, sans-serif;--shadow-soft: 0 20px 45px rgba(15, 26, 75, 0.45);--color-border: rgba(255, 255, 255, 0.08);--color-accent-2: #5cffda;--radius-sm: 12px;--color-primary: #ffb43d;--radius-lg: 24px;--color-bg: #050614}

* {box-sizing: border-box;margin: 0;padding: 0}

html {scroll-behavior: smooth}

body {color: var(--color-text);background: var(--color-bg);line-height: 1.6;font-family: var(--font-base)}

a {text-decoration: none;color: inherit}

a:hover,
a:focus-visible {color: var(--color-accent-2)}

img {max-width: 100%;display: block}

.container {margin: 0 auto;width: min(1180px, 92%)}

.flex-between {align-items: center;display: flex;gap: 24px;justify-content: space-between}

.top-bar {border-bottom: 1px solid var(--color-border);z-index: 100;top: 0;background: rgba(5, 6, 20, 0.88);position: sticky;backdrop-filter: blur(18px)}

.top-bar .container {padding: 14px 0}

.logo {display: inline-flex;align-items: center;font-weight: 600;gap: 12px;font-size: 1.1rem}

.logo-mark {border-radius: 50%;color: #050614;background: linear-gradient(135deg, var(--color-accent), var(--color-accent-2));width: 44px;align-items: center;display: inline-flex;font-weight: 700;height: 44px;justify-content: center}

.logo-text {text-transform: uppercase;letter-spacing: 0.04em}

.logo-img {object-fit: contain;height: 50px;width: 189px;display: block}

.main-nav ul {list-style: none;gap: 28px;display: flex}

.main-nav a {font-size: 0.95rem;position: relative;transition: color 0.25s ease;color: var(--color-muted)}

.main-nav a::after {transition: opacity 0.25s ease, transform 0.25s ease;height: 2px;bottom: -10px;transform: translateY(6px);width: 100%;background: linear-gradient(90deg, var(--color-accent), var(--color-accent-2));content: '';opacity: 0;left: 0;position: absolute}

.main-nav a:hover::after,
.main-nav a:focus-visible::after {transform: translateY(0);opacity: 1}

.nav-actions {gap: 12px;align-items: center;display: flex}

.btn {padding: 12px 26px;transition: transform 0.2s ease, box-shadow 0.2s ease;font-weight: 600;align-items: center;border-radius: 999px;justify-content: center;display: inline-flex;font-size: 0.95rem}

.btn-primary {background: linear-gradient(135deg, var(--color-primary), #ff6b3d);color: #050614;box-shadow: 0 12px 22px rgba(255, 123, 61, 0.28)}

.btn-primary:hover,
.btn-primary:focus-visible {transform: translateY(-2px);box-shadow: 0 16px 26px rgba(255, 123, 61, 0.36)}

.btn-outline {border: 1px solid rgba(255, 255, 255, 0.35);background: transparent;color: var(--color-text)}

.btn-outline:hover,
.btn-outline:focus-visible {border-color: rgba(255, 255, 255, 0.65);transform: translateY(-2px);background: rgba(255, 255, 255, 0.05)}

.btn-dark {background: var(--color-surface);color: var(--color-text);border: 1px solid rgba(255, 255, 255, 0.15)}

.btn-dark:hover,
.btn-dark:focus-visible {border-color: rgba(255, 255, 255, 0.35);transform: translateY(-2px)}

.nav-toggle {border: none;display: none;cursor: pointer;gap: 6px;flex-direction: column;padding: 8px;background: none}

.nav-toggle span {display: block;background: #fff;height: 2px;border-radius: 1px;width: 24px;transition: transform 0.25s ease, opacity 0.25s ease}

.nav-toggle.active span:nth-child(1) {transform: translateY(8px) rotate(45deg)}

.nav-toggle.active span:nth-child(2) {opacity: 0}

.nav-toggle.active span:nth-child(3) {transform: translateY(-8px) rotate(-45deg)}

body.nav-open {overflow: hidden}
.hero {padding: 140px 0 120px;background: var(--gradient-hero);overflow: hidden;position: relative}

.hero-bg {background: radial-gradient(circle at 10% 90%, rgba(93, 255, 232, 0.28), transparent 50%),
              radial-gradient(circle at 80% 10%, rgba(61, 123, 255, 0.45), transparent 50%);pointer-events: none;opacity: 0.45;filter: blur(18px);position: absolute;inset: 0}

.hero-content {grid-template-columns: repeat(2, minmax(0, 1fr));display: grid;position: relative;align-items: center;gap: 72px}

.hero-copy h1 {line-height: 1.15;margin-bottom: 22px;font-size: clamp(2.4rem, 3vw + 1.2rem, 3.6rem)}

.hero-copy p {font-size: 1.05rem;color: var(--color-muted);margin-bottom: 32px}

.badge {background: rgba(61, 123, 255, 0.14);border: 1px solid rgba(92, 255, 218, 0.32);padding: 8px 16px;color: var(--color-accent-2);border-radius: 999px;display: inline-flex;margin-bottom: 18px;align-items: center;font-size: 0.78rem;text-transform: uppercase;text-align: center;justify-content: center;letter-spacing: 0.12em;gap: 8px}

.badge-logo {display: block;height: 18px;width: auto}

.hero-cta {flex-direction: column;display: flex;gap: 18px}

.hero-buttons {display: flex;gap: 18px;flex-direction: column}

@media (min-width: 961px) {.hero-buttons {
    flex-direction: row;align-items: center}
}

.hero-cta .btn {width: fit-content;min-width: 180px}

.hero-meta {margin-top: 10px;gap: 18px;display: grid;grid-template-columns: repeat(3, minmax(0, 1fr))}

.hero-meta .stat {background: rgba(255, 255, 255, 0.06);border-radius: var(--radius-md);padding: 16px;text-align: center;border: 1px solid rgba(255, 255, 255, 0.08)}

.hero-meta strong {font-size: 1.2rem;color: #fff;display: block}

.hero-visual {gap: 24px;display: grid}

.hero-app-preview {max-width: 560px;width: 100%;margin: 0 auto}

.hero-card {padding: 28px;border-radius: var(--radius-lg);background: rgba(12, 16, 38, 0.75);border: 1px solid rgba(92, 255, 218, 0.2);box-shadow: var(--shadow-soft);backdrop-filter: blur(24px)}

.hero-card-main ul,
.hero-card-side ul,
.tournament-card ul {color: var(--color-muted);display: grid;gap: 10px;list-style: none;margin-top: 16px}

.hero-card-main .prize {color: var(--color-primary);font-weight: 600;margin: 8px 0 18px;font-size: 2rem}

.hero-card .label {font-size: 0.8rem;background: rgba(61, 123, 255, 0.18);color: var(--color-accent-2);padding: 6px 12px;border-radius: 999px;display: inline-block;margin-bottom: 18px}

.hero-card-side {gap: 12px;display: grid}

.section {padding: 110px 0}

.section-alt {background: linear-gradient(180deg, rgba(12, 16, 38, 0.85), rgba(5, 6, 20, 0.95))}

.team-horizontal {overflow-x: auto;-webkit-overflow-scrolling: touch;padding-right: 6px;padding-left: 6px;padding-bottom: 8px}

.team-horizontal::-webkit-scrollbar {height: 10px}

.team-horizontal::-webkit-scrollbar-thumb {background: rgba(255, 255, 255, 0.18);border-radius: 999px}

.team-track {grid-auto-flow: column;grid-auto-columns: calc((100% - (2 * 20px)) / 3);display: grid;gap: 20px;align-items: stretch}

.team-card {display: grid}

.team-card img {height: auto;border: 0;background: transparent;object-fit: contain;aspect-ratio: 1 / 1;box-shadow: none;width: 100%;display: block;border-radius: var(--radius-lg)}

@media (max-width: 960px) {gap: 14px;.team-track {
    grid-auto-columns: 100%}
}

.gallery-horizontal {overflow-x: auto;padding-bottom: 8px;padding-left: 6px;-webkit-overflow-scrolling: touch;padding-right: 6px}

.gallery-horizontal::-webkit-scrollbar {height: 10px}

.gallery-horizontal::-webkit-scrollbar-thumb {border-radius: 999px;background: rgba(255, 255, 255, 0.18)}

.gallery-track {min-height: 0;/* 3 个可见，含 2 个间隔 */
  gap: 20px;grid-auto-flow: column;grid-auto-columns: calc((100% - (2 * 20px)) / 3);align-items: stretch;display: grid}

.shot {display: grid;align-content: start}

.shot img {background: transparent;border-radius: var(--radius-lg);box-shadow: none;object-fit: contain;aspect-ratio: 9 / 16;display: block;border: 0;height: auto;width: 100%}

/* 统一尺寸显示，去除错落与特殊尺寸 */

@media (max-width: 960px) {.gallery-track {
    grid-auto-columns: 100%;/* 移动端一次显示 1 张 */
    gap: 14px}
}

.section-heading {text-align: center;max-width: 720px;margin: 0 auto 60px;display: grid;gap: 18px}

.section-heading p {color: var(--color-muted)}

.article-content {color: var(--color-muted);margin: 0 auto;gap: 16px;max-width: 820px;display: grid}

.article-content h3 {color: #fff;margin-top: 8px}

.article-content ul,
.article-content ol {padding-left: 18px;gap: 8px;display: grid}

.tag-list {flex-wrap: wrap;display: flex;margin-top: 18px;gap: 10px}

.tag {border: 1px solid rgba(61, 123, 255, 0.22);transition: transform 0.15s ease, border-color 0.15s ease, color 0.15s ease;align-items: center;color: var(--color-muted);font-size: 0.9rem;display: inline-flex;border-radius: 999px;padding: 8px 14px;background: rgba(12, 16, 38, 0.7)}

.tag:hover,
.tag:focus-visible {color: var(--color-accent-2);border-color: rgba(92, 255, 218, 0.5);transform: translateY(-1px)}

.feature-grid {grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));display: grid;gap: 28px}

.feature-card {background: rgba(12, 16, 38, 0.75);box-shadow: var(--shadow-card);gap: 18px;border-radius: var(--radius-lg);padding: 32px;border: 1px solid rgba(61, 123, 255, 0.25);display: grid}

.icon-ring {width: 60px;height: 60px;border: 1px solid rgba(92, 255, 218, 0.35);border-radius: 50%;background: rgba(61, 123, 255, 0.15);place-items: center;font-size: 1.6rem;display: grid}

.feature-card .link {color: var(--color-accent-2);font-weight: 500}

.section.section-alt .copy {max-width: 520px}

.copy p {color: var(--color-muted);margin-bottom: 24px}

.checklist {margin: 24px 0;display: grid;gap: 14px;color: var(--color-muted)}

.tournament-cards {width: min(440px, 100%);gap: 18px;display: grid}

.tournament-card {background: rgba(12, 16, 38, 0.82);padding: 26px;border-radius: var(--radius-md);border: 1px solid rgba(61, 123, 255, 0.18)}

.tournament-card.highlight {border-color: rgba(92, 255, 218, 0.4);background: linear-gradient(145deg, rgba(61, 123, 255, 0.35), rgba(12, 16, 38, 0.95))}

.training {display: grid;gap: 48px;align-items: center;grid-template-columns: repeat(2, minmax(0, 1fr))}

.training-visual {position: relative}

.training-visual::before,
.training-visual::after {border-radius: 50%;filter: blur(10px);z-index: 0;width: 180px;background: radial-gradient(circle, rgba(92, 255, 218, 0.25), transparent 70%);position: absolute;content: '';height: 180px}

.training-visual::before {left: -40px;top: -40px}

.training-visual::after {bottom: -30px;right: -10px}

.screen {border-radius: 26px;padding: 32px;position: relative;background: rgba(12, 16, 38, 0.8);z-index: 1;border: 1px solid rgba(61, 123, 255, 0.3);display: grid;box-shadow: 0 24px 50px rgba(8, 13, 35, 0.65);gap: 18px}

.status {color: var(--color-accent-2);display: flex;font-size: 0.87rem;align-items: center;justify-content: space-between}

.status .dot {height: 10px;width: 10px;background: var(--color-accent-2);box-shadow: 0 0 12px rgba(92, 255, 218, 0.85);border-radius: 50%}

.screen button {justify-self: flex-start}

.pill-grid {display: flex;margin: 24px 0;gap: 12px;flex-wrap: wrap}

.pill {border-radius: 999px;background: rgba(12, 16, 38, 0.6);letter-spacing: 0.03em;font-size: 0.88rem;padding: 10px 20px;color: var(--color-muted);border: 1px solid rgba(255, 255, 255, 0.15)}

.download-grid {gap: 24px;display: grid;grid-template-columns: repeat(auto-fit, minmax(260px, 1fr))}

.download-card {padding: 32px;border: 1px solid rgba(61, 123, 255, 0.2);gap: 18px;border-radius: var(--radius-lg);background: rgba(12, 16, 38, 0.82);display: grid}

.download-card ul {display: grid;color: var(--color-muted);list-style: none;gap: 8px}

.qr-placeholder {width: 120px;background: repeating-linear-gradient(45deg, rgba(92, 255, 218, 0.08), rgba(92, 255, 218, 0.08) 12px, rgba(61, 123, 255, 0.08) 12px, rgba(61, 123, 255, 0.08) 24px);border: 1px dashed rgba(92, 255, 218, 0.55);margin-top: 4px;border-radius: var(--radius-sm);height: 120px}

.security {align-items: center;display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 48px}

.security-grid {grid-template-columns: repeat(2, minmax(0, 1fr));gap: 18px;display: grid;margin-top: 28px}

.security-grid .item {border-radius: var(--radius-md);background: rgba(12, 16, 38, 0.7);padding: 22px;border: 1px solid rgba(61, 123, 255, 0.2)}

.security-visual {display: grid;gap: 20px;justify-items: center}

.shield {border: 1px solid rgba(92, 255, 218, 0.45);place-items: center;aspect-ratio: 1 / 1.2;font-weight: 600;display: grid;background: linear-gradient(180deg, rgba(61, 123, 255, 0.85), rgba(12, 16, 38, 0.9));letter-spacing: 0.1em;position: relative;width: 220px;clip-path: polygon(50% 0%, 100% 18%, 85% 90%, 50% 100%, 15% 90%, 0% 18%)}

.shield .glow {filter: blur(10px);z-index: 0;background: radial-gradient(circle, rgba(92, 255, 218, 0.45), transparent 70%);inset: 10%;position: absolute}

.shield span,
.shield small {position: relative;z-index: 1}

.shield small {font-size: 0.7rem;color: var(--color-muted)}

.cert-list {gap: 10px;display: grid;color: var(--color-muted);list-style: none}

.testimonial-grid {grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));display: grid;gap: 24px}

.testimonial {padding: 28px;background: rgba(12, 16, 38, 0.75);box-shadow: var(--shadow-card);border: 1px solid rgba(61, 123, 255, 0.22);border-radius: var(--radius-lg);gap: 18px;display: grid}

.testimonial p {color: var(--color-muted);font-style: italic}

.author {gap: 4px;display: grid}

.author .name {font-weight: 600}

.faq {display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 48px}

.faq-list details {border-radius: var(--radius-md);padding: 20px 24px;border: 1px solid rgba(61, 123, 255, 0.18);background: rgba(12, 16, 38, 0.78)}

.faq-list summary {cursor: pointer;list-style: none;font-weight: 600}

.faq-list summary::-webkit-details-marker {display: none}

.faq-list p {margin-top: 12px;color: var(--color-muted)}

.contact {grid-template-columns: repeat(2, minmax(0, 1fr));display: grid;gap: 32px}

.contact-card {border-radius: var(--radius-lg);background: rgba(12, 16, 38, 0.82);gap: 18px;padding: 36px;display: grid;border: 1px solid rgba(61, 123, 255, 0.2)}

.contact-card ul {gap: 8px;list-style: none;display: grid;color: var(--color-muted)}

.socials {gap: 12px;display: flex}

.socials a {transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease, color 0.2s ease;font-size: 0.85rem;line-height: 1;position: relative;border-radius: 50%;height: 40px;align-items: center;width: 40px;gap: 0;justify-content: center;padding: 0;display: inline-flex;background: rgba(92, 255, 218, 0.12);border: 1px solid rgba(92, 255, 218, 0.28)}

.socials a svg {opacity: 0.9;width: 18px;height: 18px;transition: opacity 0.2s ease, transform 0.2s ease}

.socials a::after {opacity: 0;position: absolute;white-space: nowrap;font-size: 12px;pointer-events: none;border-radius: 6px;border: 1px solid rgba(61, 123, 255, 0.3);background: rgba(12, 16, 38, 0.92);left: 50%;transform: translateX(-50%) translateY(0);color: var(--color-text);padding: 6px 10px;content: attr(aria-label);bottom: calc(100% + 8px);transition: opacity 0.18s ease, transform 0.18s ease}

.socials a:hover::after,
.socials a:focus-visible::after {transform: translateX(-50%) translateY(-2px);opacity: 1}

.socials a:hover,
.socials a:focus-visible {color: var(--color-accent-2);border-color: rgba(92, 255, 218, 0.45);transform: translateY(-1px);background: rgba(92, 255, 218, 0.18)}

.socials a:hover svg,
.socials a:focus-visible svg {opacity: 1;transform: scale(1.06)}

.contact-form {border-radius: var(--radius-lg);background: rgba(12, 16, 38, 0.7);gap: 18px;border: 1px solid rgba(61, 123, 255, 0.18);padding: 36px;display: grid}

.form-group {gap: 10px;display: grid}

label {font-weight: 500}

input,
textarea {padding: 14px 16px;border-radius: var(--radius-sm);font-size: 0.95rem;color: var(--color-text);transition: border 0.2s ease, box-shadow 0.2s ease;border: 1px solid rgba(255, 255, 255, 0.15);background: rgba(5, 6, 20, 0.8)}

input:focus,
textarea:focus {border-color: rgba(92, 255, 218, 0.6);box-shadow: 0 0 0 3px rgba(92, 255, 218, 0.1);outline: none}

textarea {resize: vertical}

.footer {border-top: 1px solid rgba(255, 255, 255, 0.06);background: rgba(5, 6, 20, 0.95);padding: 60px 0 40px}

.footer-grid {margin-bottom: 36px;display: grid;grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));gap: 32px}

.footer-grid p,
.footer-grid ul {color: var(--color-muted)}

.footer-grid ul {display: grid;gap: 10px;list-style: none}

.subscribe-form {display: flex;gap: 12px;align-items: center}

.subscribe-form input {flex: 1}

.footer-bottom {font-size: 0.88rem;justify-content: space-between;flex-wrap: wrap;gap: 16px;display: flex;color: var(--color-muted);align-items: center}

.footer-links {gap: 18px;display: flex}

.back-to-top {background: rgba(61, 123, 255, 0.8);opacity: 0;place-items: center;border-radius: 50%;color: #050614;width: 48px;height: 48px;bottom: 32px;transition: transform 0.2s ease, opacity 0.2s ease;position: fixed;display: grid;cursor: pointer;right: 24px;pointer-events: none;box-shadow: 0 12px 30px rgba(61, 123, 255, 0.35)}

.back-to-top.visible {opacity: 1;transform: translateY(0);pointer-events: auto}

.back-to-top:hover,
.back-to-top:focus-visible {transform: translateY(-4px)}

.sr-only {border: 0;width: 1px;position: absolute;height: 1px;padding: 0;overflow: hidden;clip: rect(0, 0, 0, 0);margin: -1px}

/* Responsive */
@media (max-width: 1100px) {.hero-content {
    gap: 48px}

  .training {grid-template-columns: 1fr}

  .security {grid-template-columns: 1fr}

  .security-grid {grid-template-columns: repeat(auto-fit, minmax(180px, 1fr))}
}

@media (max-width: 960px) {.flex-between {
    align-items: center}

  .main-nav {padding: 100px 24px 40px;inset: 0;background: rgba(5, 6, 20, 0.96);display: none;position: fixed}

  .main-nav.open {display: block}

  .main-nav ul {gap: 24px;font-size: 1.1rem;flex-direction: column}

  .nav-actions {display: none}

  .nav-toggle {display: flex}

  .hero-content {grid-template-columns: 1fr;text-align: center}

  .hero-cta {align-items: center}

  .hero-meta {grid-template-columns: repeat(auto-fit, minmax(140px, 1fr))}

  .hero-visual {order: -1}

  .tournament-cards {width: 100%}

  .training,
  .security,
  .faq,
  .contact {grid-template-columns: 1fr}
}

@media (max-width: 720px) {.section {
    padding: 80px 0}

  .hero-buttons .btn {width: 100%}

  .feature-card,
  .download-card,
  .testimonial,
  .contact-card,
  .contact-form {padding: 24px}

  .hero {padding: 120px 0 90px}

  .badge {justify-content: center}

  .hero-copy h1 {font-size: clamp(2rem, 8vw, 2.8rem)}

  .hero-meta {gap: 12px;display: flex;justify-content: space-between;align-items: stretch;flex-wrap: nowrap}
  .hero-meta .stat {flex: 1 1 0}

  .main-nav {padding-top: 80px}

  .subscribe-form {flex-direction: column}
}

@media (max-width: 540px) {padding: 10px 0;.top-bar .container {
    gap: 16px}

  .logo-img {height: 40px;width: auto}

  .logo-mark {width: 38px;height: 38px}

  .hero-cta .btn {width: 100%}

  .hero-meta {grid-template-columns: repeat(auto-fit, minmax(120px, 1fr))}

  .download-grid {grid-template-columns: 1fr}

  .back-to-top {bottom: 24px;right: 18px}
}

._ccyxnxp2a{}

._ciwkxwbmb{}

._c1b2paq43{}
