/* =========================
   VARIÁVEIS GLOBAIS
========================= */
:root {
    --bg-main: #0b0d10;
    --bg-soft: #12141a;

    --glass-bg: rgba(255, 255, 255, 0.06);

    --text-main: #f2f2f2;
    --text-muted: #b5b5b5;

    --accent: #635bff; /* Stripe vibe */
}

/* =========================
   RESET BÁSICO
========================= */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* =========================
   BODY
========================= */
body {
    font-family: 'Inter', system-ui, sans-serif;
    background: var(--bg-main);
    color: var(--text-main);
}

/* =========================
   VÍDEO DE FUNDO
========================= */
.video-bg {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100vh;
    object-fit: cover;
    z-index: -2;
}

/* Overlay para dar clima premium */
.video-bg::after {
    content: "";
    position: fixed;
    inset: 0;
    background: linear-gradient(
        to bottom,
        rgba(11,13,16,0.4),
        rgba(11,13,16,0.85)
    );
    z-index: -1;
}

/* =========================
   HEADER (GLASSMORPHISM)
========================= */
.glass-header {
    position: fixed;
    top: 0;
    width: 100%;
    height: 72px;

    background: linear-gradient(
        to bottom,
        rgba(255,255,255,0.08),
        rgba(255,255,255,0.02)
    );

    backdrop-filter: blur(16px) saturate(160%);
    -webkit-backdrop-filter: blur(16px) saturate(160%);

    border-bottom: 1px solid rgba(255,255,255,0.1);
    z-index: 10;
}

/* Container do header */
.header-container {
    max-width: 1200px;
    height: 100%;
    margin: auto;

    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 0 24px;
}

/* Logo */
.logo img {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    object-fit: cover;
}

/* =========================
   MENU
========================= */
.menu a {
    color: var(--text-main);
    text-decoration: none;

    margin-left: 24px;
    font-size: 0.9rem;
    font-weight: 500;

    opacity: 0.85;
    transition: opacity 0.3s ease, color 0.3s ease;
}

.menu a:hover {
    opacity: 1;
    color: var(--accent);
}

/* =========================
   HERO SECTION
========================= */
.hero {
    min-height: 100vh;

    padding-top: 140px;
    padding-left: 24px;
    padding-right: 24px;

    max-width: 1200px;
    margin: auto;
}

/* Título principal */
.hero h1 {
    font-size: clamp(2.6rem, 6vw, 4rem);
    font-weight: 600;
    letter-spacing: -0.03em;
    line-height: 1.1;
}

/* Texto de apoio */
.hero p {
    margin-top: 24px;
    max-width: 600px;

    font-size: 1.05rem;
    line-height: 1.6;
    color: var(--text-muted);
}

/* =========================
   SCROLLBAR - WEBKIT
========================= */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: transparent;
}

::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.15);
    border-radius: 10px;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--accent);
}

/* =========================
   SCROLLBAR - FIREFOX
========================= */
* {
    scrollbar-width: thin;
    scrollbar-color: rgba(255,255,255,0.25) transparent;
}
