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

html {
    scroll-behavior: smooth;
}

body {
    background:
        radial-gradient(circle at top, #32165D 0%, #1D2033 45%, #12131F 100%);
    color: #FFFFFF;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}

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

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

/* ==========================================================================
   VARIÁVEIS DE TEMA (REETBOOST)
   ========================================================================== */
:root {
    --rb-bg: #1D2033;                 /* BackColorBottom */
    --rb-bg-elevated: #26263D;        /* ItemBackColor   */
    --rb-bg-elevated-soft: #2E2750;   /* ItemBackHover   */
    --rb-border-subtle: rgba(59, 30, 102, 0.45); /* ItemBorder com alpha */

    --rb-primary: #8E2BFF;            /* Acento roxo principal */
    --rb-primary-soft: rgba(142, 43, 255, 0.16);
    --rb-primary-strong: #3B1E66;     /* Roxo profundo / bordas */
    --rb-primary-hover: #9E4BFF;

    --rb-accent-blue: #32165D;        /* topo gradiente */
    --rb-accent-green: #27C79A;
    --rb-accent-red: #FF4D6A;

    --rb-text-main: #FFFFFF;
    --rb-text-soft: #BEBEC3;          /* TextSecondary */
    --rb-text-muted: #B0B0B0;
    --rb-text-strong: #FFFFFF;

    --rb-radius-xs: 4px;
    --rb-radius-sm: 8px;
    --rb-radius-md: 12px;
    --rb-radius-lg: 18px;
    --rb-radius-xl: 24px;

    --rb-shadow-soft: 0 18px 50px rgba(0, 0, 0, 0.75);
    --rb-shadow-subtle: 0 12px 34px rgba(0, 0, 0, 0.65);

    --rb-transition-fast: 0.16s ease-out;
    --rb-transition: 0.22s ease-out;

    --rb-header-height: 64px;
}

/* ==========================================================================
   LAYOUT BASE
   ========================================================================== */
.rb-shell {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 24px;
}

.rb-main {
    padding-top: var(--rb-header-height);
}

/* ==========================================================================
   HEADER ESTILO COD
   ========================================================================== */
.rb-header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: linear-gradient(to bottom,
        rgba(10, 8, 22, 0.96),
        rgba(10, 8, 22, 0.92));
    border-bottom: 1px solid rgba(255, 255, 255, 0.04);
    backdrop-filter: blur(16px);
}

.rb-header {
    position: sticky;
    top: 0;
    z-index: 50;
    backdrop-filter: blur(18px);
    background: linear-gradient(to bottom, rgba(5, 2, 16, 0.96), rgba(5, 2, 16, 0.85), transparent);
}
      
.rb-header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: var(--rb-header-height);
    gap: 24px;
}

.rb-header-left {
    display: flex;
    align-items: center;
    gap: 20px;
}

/* Brand */
.rb-brand {
    display: flex;
    align-items: center;
    gap: 10px;
}

.rb-brand-logo {
    height: 28px;
    object-fit: contain;
}

.rb-brand-name {
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 0.18em;
    color: #FFFFFF;
    text-transform: uppercase;
}

/* Nav desktop */
.rb-nav {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-left: 28px;
}

.rb-nav-link {
    position: relative;
    font-size: 13px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--rb-text-muted);
    padding: 4px 0;
    transition: color var(--rb-transition-fast);
}

.rb-nav-link::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--rb-primary), var(--rb-accent-blue));
    border-radius: 999px;
    transition: width var(--rb-transition-fast);
}

.rb-nav-link:hover {
    color: var(--rb-text-main);
}

.rb-nav-link:hover::after {
    width: 100%;
}

/* Header right */
.rb-header-right {
    display: flex;
    align-items: center;
    gap: 12px;
}

.rb-header-login {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--rb-text-soft);
    padding: 6px 10px;
    border-radius: 999px;
    transition: background var(--rb-transition-fast), color var(--rb-transition-fast);
}

.rb-header-login i {
    font-size: 13px;
}

.rb-header-login:hover {
    background: rgba(255, 255, 255, 0.06);
    color: var(--rb-text-main);
}

/* Burger (mobile) */
.rb-burger {
    display: none;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background: rgba(12, 11, 24, 0.9);
    padding: 6px;
    flex-direction: column;
    justify-content: space-between;
    cursor: pointer;
    transition: background var(--rb-transition-fast), border-color var(--rb-transition-fast);
}

.rb-burger span {
    display: block;
    height: 2px;
    width: 100%;
    border-radius: 999px;
    background: #FFFFFF;
    transition: transform var(--rb-transition-fast), opacity var(--rb-transition-fast);
}

.rb-burger:hover {
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.18);
}

.rb-burger.is-open span:nth-child(1) {
    transform: translateY(6px) rotate(45deg);
}
.rb-burger.is-open span:nth-child(2) {
    opacity: 0;
}
.rb-burger.is-open span:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg);
}

/* ==========================================================================
   BOTÕES
   ========================================================================== */
.rb-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-radius: 999px;
    font-weight: 600;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.10em;
    padding: 10px 20px;
    border: 1px solid transparent;
    cursor: pointer;
    white-space: nowrap;
    transition:
        background var(--rb-transition),
        color var(--rb-transition),
        transform var(--rb-transition-fast),
        box-shadow var(--rb-transition-fast),
        border-color var(--rb-transition-fast);
}

.rb-btn i {
    font-size: 14px;
}

.rb-btn-lg {
    padding: 12px 28px;
    font-size: 14px;
}

.rb-btn-sm {
    padding: 7px 16px;
    font-size: 12px;
}

.rb-btn-block {
    width: 100%;
}

.rb-btn-primary {
    background: linear-gradient(135deg, var(--rb-primary), var(--rb-primary-strong));
    color: #FFFFFF;
    box-shadow: 0 14px 36px rgba(0, 0, 0, 0.9),
                0 0 26px rgba(142, 43, 255, 0.9);
}

.rb-btn-primary:hover {
    background: linear-gradient(135deg, var(--rb-primary-hover), var(--rb-primary-strong));
    transform: translateY(-1px);
    box-shadow: 0 18px 44px rgba(0, 0, 0, 1),
                0 0 32px rgba(142, 43, 255, 1);
}

.rb-btn-ghost {
    background: transparent;
    color: var(--rb-text-soft);
    border-color: rgba(255, 255, 255, 0.16);
}

.rb-btn-ghost:hover {
    color: var(--rb-text-main);
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.32);
}

.rb-btn-discord {
    background: linear-gradient(135deg, #5865F2, #7F8CFF);
    color: #FFFFFF;
    box-shadow: 0 12px 32px rgba(88, 101, 242, 0.6);
}

.rb-btn-discord:hover {
    background: linear-gradient(135deg, #6E7BFF, #9AA4FF);
    transform: translateY(-1px);
    box-shadow: 0 16px 40px rgba(88, 101, 242, 0.75);
}

.rb-btn-header {
    padding-inline: 22px;
    font-size: 13px;
}

/* ==========================================================================
   SEÇÕES BASE
   ========================================================================== */
.rb-section {
    padding: 80px 0;
    background: transparent;
}

.rb-section-alt {
    background:
        radial-gradient(circle at top left, rgba(142, 43, 255, 0.20), transparent 55%),
        radial-gradient(circle at bottom right, rgba(50, 22, 93, 0.30), transparent 55%);
}

/* Cabeçalho de seção */
.rb-section-header {
    text-align: left;
    max-width: 640px;
    margin-bottom: 40px;
}

.rb-section-header h2 {
    font-size: 28px;
    margin-bottom: 10px;
    letter-spacing: 0.04em;
}

.rb-section-header p {
    font-size: 15px;
    color: var(--rb-text-soft);
}

.rb-section-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(10, 8, 22, 0.9);
    border: 1px solid rgba(255, 255, 255, 0.06);
    color: var(--rb-text-muted);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.rb-section-kicker i {
    font-size: 13px;
}

/* ==========================================================================
   HERO
   ========================================================================== */
.rb-hero {
    background:
        radial-gradient(circle at 10% 0%, rgba(142, 43, 255, 0.38), transparent 60%),
        radial-gradient(circle at 80% 0%, rgba(50, 22, 93, 0.45), transparent 65%),
        linear-gradient(120deg, #1D2033 0%, #1D2033 40%, #12131F 60%, #12131F 100%);
    padding: 72px 0 72px;
}

.rb-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
    gap: 40px;
    align-items: center;
}

/* Left */
.rb-hero-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 4px 10px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(10, 8, 22, 0.9);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--rb-text-soft);
    margin-bottom: 16px;
}

.rb-hero-tag .dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: radial-gradient(circle, #3AFD8C 0, #27C79A 60%, #158763 100%);
    box-shadow: 0 0 16px rgba(39, 199, 154, 0.9);
}

.rb-hero-title {
    font-size: 34px;
    line-height: 1.15;
    margin-bottom: 14px;
    letter-spacing: 0.02em;
}

.rb-hero-title span {
    color: var(--rb-primary);
}

.rb-hero-sub {
    font-size: 15px;
    color: var(--rb-text-soft);
    margin-bottom: 20px;
}

.rb-hero-bullets {
    list-style: none;
    margin-bottom: 24px;
}

.rb-hero-bullets li {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: var(--rb-text-soft);
    margin-bottom: 6px;
}

.rb-hero-bullets i {
    color: var(--rb-primary);
    font-size: 14px;
}

.rb-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 18px;
}

.rb-hero-safe {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: var(--rb-text-muted);
}

.rb-hero-safe i {
    color: var(--rb-accent-green);
}

/* Right – painel presets */
.rb-hero-right {
    display: flex;
    justify-content: flex-end;
}

.rb-preset-panel {
    width: 100%;
    max-width: 420px;
    border-radius: var(--rb-radius-xl);
    background:
        radial-gradient(circle at top left, rgba(142, 43, 255, 0.42), transparent 65%),
        radial-gradient(circle at bottom, rgba(50, 22, 93, 0.45), transparent 65%),
        #1B1C2B;
    border: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow: var(--rb-shadow-soft);
    padding: 18px 18px 16px;
}

/* Cabeçalho painel */
.rb-preset-panel-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 14px;
}

.rb-preset-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(12, 11, 24, 0.9);
    border: 1px solid rgba(255, 255, 255, 0.10);
    font-size: 12px;
    color: var(--rb-text-soft);
    text-transform: uppercase;
    letter-spacing: 0.10em;
}

.rb-preset-label .status-dot {
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: #27C79A;
    box-shadow: 0 0 14px rgba(39, 199, 154, 0.9);
}

.rb-preset-plan {
    font-size: 12px;
    color: var(--rb-text-soft);
}

/* Resumo principal */
.rb-preset-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px;
    border-radius: var(--rb-radius-lg);
    background: rgba(10, 8, 22, 0.95);
    border: 1px solid rgba(255, 255, 255, 0.10);
    margin-bottom: 12px;
}

.rb-preset-summary-main {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.rb-preset-title {
    font-size: 14px;
    font-weight: 600;
}

.rb-preset-sub {
    font-size: 12px;
    color: var(--rb-text-soft);
}

/* Switch visual */
.rb-switch {
    width: 50px;
    height: 26px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    display: flex;
    align-items: center;
    padding: 3px;
    background: rgba(12, 11, 24, 0.9);
}

.rb-switch-knob {
    width: 18px;
    height: 18px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.90);
    transform: translateX(0);
    transition: transform var(--rb-transition-fast), background var(--rb-transition-fast);
}

.rb-switch-on {
    background: linear-gradient(135deg, #27C79A, var(--rb-primary));
    border-color: transparent;
}

.rb-switch-on .rb-switch-knob {
    transform: translateX(18px);
}

/* Lista de presets */
.rb-preset-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-bottom: 10px;
}

.rb-preset-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 9px 10px;
    border-radius: var(--rb-radius-md);
    background: rgba(11, 10, 24, 0.96);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.rb-preset-info {
    display: flex;
    align-items: center;
    gap: 10px;
}

.rb-game-icon {
    width: 30px;
    height: 30px;
    border-radius: 10px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    box-shadow: 0 0 18px rgba(0, 0, 0, 0.85);
}

/* Placeholders de jogos – você pode trocar as imagens se quiser */
.rb-game-cod {
    background-image: linear-gradient(135deg, #FF9A5A, #FF6B3D);
}
.rb-game-bf6 {
    background-image: linear-gradient(135deg, #27C79A, #41E0BD);
}
.rb-game-cs2 {
    background-image: linear-gradient(135deg, #4F7DFF, #8B9FFF);
}
.rb-game-fivem {
    background-image: linear-gradient(135deg, #A06BFF, #E063FF);
}

.rb-preset-item-title {
    font-size: 13px;
    font-weight: 600;
}

.rb-preset-item-sub {
    font-size: 11px;
    color: var(--rb-text-soft);
}

/* Pills ativo/opcional */
.rb-pill-on,
.rb-pill-off {
    font-size: 11px;
    padding: 3px 9px;
    border-radius: 999px;
    text-transform: uppercase;
    letter-spacing: 0.10em;
}

.rb-pill-on {
    background: rgba(39, 199, 154, 0.12);
    color: #B6FFE3;
    border: 1px solid rgba(39, 199, 154, 0.7);
}

.rb-pill-off {
    background: rgba(255, 255, 255, 0.04);
    color: var(--rb-text-soft);
    border: 1px solid rgba(255, 255, 255, 0.18);
}

/* FPS footer */
.rb-preset-footer {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-top: 6px;
    padding-top: 9px;
    border-top: 1px solid rgba(255, 255, 255, 0.10);
}

.rb-preset-fps {
    flex: 1;
    border-radius: var(--rb-radius-md);
    padding: 8px;
    background: rgba(10, 8, 22, 0.96);
    border: 1px solid rgba(255, 255, 255, 0.08);
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.rb-fps-label {
    font-size: 11px;
    color: var(--rb-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.10em;
}

.rb-fps-value {
    font-size: 18px;
    font-weight: 700;
}

.rb-fps-unit {
    font-size: 11px;
    color: var(--rb-text-soft);
}

.rb-fps-after {
    background: radial-gradient(circle at right, rgba(142, 43, 255, 0.55), rgba(10, 8, 22, 0.98));
    border-color: rgba(142, 43, 255, 0.8);
}

/* ==========================================================================
   JOGOS – CARDS
   ========================================================================== */
.rb-games-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.rb-game-card {
    border-radius: var(--rb-radius-lg);
    background:
        radial-gradient(circle at top, rgba(142, 43, 255, 0.30), transparent 60%),
        #1B1C2B;
    border: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow: var(--rb-shadow-subtle);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform var(--rb-transition), box-shadow var(--rb-transition),
                border-color var(--rb-transition), background-position var(--rb-transition);
    background-size: 220% 220%;
    background-position: 50% 30%;
}

.rb-game-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.9);
    border-color: rgba(142, 43, 255, 0.7);
    background-position: 50% 0%;
}

/* Thumb do jogo – imagem + overlay */
.rb-game-thumb {
    position: relative;
    height: 190px;                    /* aumenta a área visível da imagem */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* overlay escurecendo a parte de baixo para o texto ficar legível */
.rb-game-thumb::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to bottom,
        rgba(10, 8, 22, 0.05),
        rgba(10, 8, 22, 0.78)
    );
}


/* Aqui você já está usando imagens reais */
.rb-game-thumb-cod {
    background-image: url("../assets/img/games/COD.webp");
}
.rb-game-thumb-bf6 {
    background-image: url("../assets/img/games/bf.png");
}
.rb-game-thumb-cs2 {
    background-image: url("../assets/img/games/cs.png");
}
.rb-game-thumb-fivem {
    background-image: url("../assets/img/games/FIVEM.png");
}
.rb-game-thumb-fortnite {
    background-image: url("../assets/img/games/fortnite.png");
}
.rb-game-thumb-pubg {
    background-image: url("../assets/img/games/pubg.png");
}

/* Badge "Em breve" na thumb */
.rb-game-badge {
    position: absolute;
    top: 14px;
    left: 14px;
    padding: 4px 11px;
    border-radius: 999px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    background: rgba(10, 8, 22, 0.85);
    border: 1px solid rgba(255, 255, 255, 0.18);
    color: #ffffff;
}

/* Estado "Em breve" para jogos ainda em desenvolvimento */
.rb-pill-soon {
    font-size: 11px;
    padding: 3px 9px;
    border-radius: 999px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    background: rgba(255, 153, 51, 0.08);
    color: #ffb347;
    border: 1px solid rgba(255, 153, 51, 0.65);
}

/* TOGGLE SWITCH – ReetBoost Style */
.rb-switch {
    position: relative;
    width: 46px;
    height: 24px;
    cursor: pointer;
    transition: 0.25s ease;
    display: flex;
    align-items: center;
}

.rb-switch-track {
    position: absolute;
    inset: 0;
    background: #3A2B55;  /* trilho "desligado" */
    border-radius: 999px;
    transition: 0.25s ease;
    box-shadow: inset 0 0 6px rgba(0,0,0,0.35);
}

.rb-switch[data-state="on"] .rb-switch-track {
    background: linear-gradient(135deg, #7B2FFF, #9E4DFF);
    box-shadow: 0 0 10px rgba(140, 70, 255, 0.55);
}

.rb-switch-knob {
    position: absolute;
    width: 20px;
    height: 20px;
    left: 3px;
    border-radius: 50%;
    background: #ffffff;
    box-shadow: 0 2px 6px rgba(0,0,0,0.30);
    transition: 0.25s cubic-bezier(.4,0,.2,1);
}

/* Ícone redondo do jogo dentro da lista de presets */
.rb-game-icon {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    flex-shrink: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}


.rb-switch[data-state="on"] .rb-switch-knob {
    transform: translateX(22px);
}

.rb-game-cod {
    background-image: url("../assets/img/icons/cod.png");
}

.rb-game-cs2 {
    background-image: url("../assets/img/icons/cs.png");
}

.rb-game-bf6 {
    background-image: url("../assets/img/icons/bf6.png");
}

.rb-game-fivem {
    background-image: url("../assets/img/icons/fivem.png");
}

.rb-game-pubg {
    background-image: url("../assets/img/icons/pubg.png");
}

.rb-game-fortnite {
    background-image: url("../assets/img/icons/fortnite.png");
}

.rb-game-body {
    padding: 14px 14px 16px;
}

.rb-game-body h3 {
    font-size: 16px;
    margin-bottom: 6px;
}

.rb-game-body p {
    font-size: 13px;
    color: var(--rb-text-soft);
    margin-bottom: 10px;
}

.rb-game-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.rb-game-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 9px;
    border-radius: 999px;
    background: rgba(11, 10, 24, 0.95);
    border: 1px solid rgba(255, 255, 255, 0.14);
    font-size: 11px;
    color: var(--rb-text-soft);
}

.rb-game-pill i {
    font-size: 11px;
    color: var(--rb-primary);
}

/* ==========================================================================
   FEATURES / OTIMIZAÇÕES
   ========================================================================== */
.rb-features-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.rb-feature-card {
    border-radius: var(--rb-radius-lg);
    background: #1B1C2B;
    border: 1px solid rgba(255, 255, 255, 0.07);
    padding: 16px 16px 18px;
    box-shadow: var(--rb-shadow-subtle);
    transition: transform var(--rb-transition), box-shadow var(--rb-transition),
                border-color var(--rb-transition);
}

.rb-feature-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.9);
    border-color: rgba(142, 43, 255, 0.75);
}

.rb-feature-icon {
    width: 34px;
    height: 34px;
    border-radius: 12px;
    background: radial-gradient(circle at top left, var(--rb-primary), var(--rb-accent-blue));
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
}

.rb-feature-icon i {
    font-size: 18px;
}

.rb-feature-card h3 {
    font-size: 15px;
    margin-bottom: 6px;
}

.rb-feature-card p {
    font-size: 13px;
    color: var(--rb-text-soft);
}

/* ==========================================================================
   WINDOWS – PERSONALIZAÇÃO
   ========================================================================== */
.rb-windows-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.rb-win-card {
    border-radius: var(--rb-radius-lg);
    background: linear-gradient(135deg,
        rgba(142, 43, 255, 0.26),
        rgba(27, 28, 43, 0.98));
    border: 1px solid rgba(255, 255, 255, 0.08);
    padding: 16px 16px 18px;
    box-shadow: var(--rb-shadow-subtle);
    position: relative;
    overflow: hidden;
}

.rb-win-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg,
        rgba(255, 255, 255, 0.12) 0,
        transparent 30%,
        transparent 70%,
        rgba(255, 255, 255, 0.12) 100%);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--rb-transition);
}

.rb-win-card:hover::before {
    opacity: 0.14;
}

.rb-win-card h3 {
    font-size: 15px;
    margin-bottom: 6px;
}

.rb-win-card p {
    font-size: 13px;
    color: var(--rb-text-soft);
    margin-bottom: 10px;
}

.rb-win-tag {
    display: inline-flex;
    padding: 4px 9px;
    border-radius: 999px;
    background: rgba(11, 10, 24, 0.9);
    font-size: 11px;
    color: var(--rb-text-soft);
}

/* ==========================================================================
   COMO FUNCIONA – PASSOS
   ========================================================================== */
.rb-steps-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.rb-step-card {
    border-radius: var(--rb-radius-lg);
    background: #1B1C2B;
    border: 1px solid rgba(255, 255, 255, 0.07);
    padding: 18px 16px 18px;
    position: relative;
    overflow: hidden;
    box-shadow: var(--rb-shadow-subtle);
}

.rb-step-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(142, 43, 255, 0.45), transparent 60%);
    opacity: 0;
    transition: opacity var(--rb-transition);
}

.rb-step-card:hover::after {
    opacity: 1;
}

.rb-step-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 999px;
    background: rgba(142, 43, 255, 0.16);
    border: 1px solid rgba(142, 43, 255, 0.80);
    font-size: 13px;
    margin-bottom: 8px;
}

.rb-step-card h3 {
    font-size: 15px;
    margin-bottom: 6px;
}

.rb-step-card p {
    font-size: 13px;
    color: var(--rb-text-soft);
}

/* ==========================================================================
   PLANOS
   ========================================================================== */
.rb-plans-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.rb-plan-card {
    border-radius: 22px;
    background:
        radial-gradient(circle at top, rgba(142, 43, 255, 0.32), transparent 55%),
        #1B1C2B;
    border: 1px solid rgba(255, 255, 255, 0.08);
    padding: 20px 18px 18px;
    box-shadow: var(--rb-shadow-soft);
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.rb-plan-featured {
    background:
        radial-gradient(circle at top, rgba(50, 22, 93, 0.45), transparent 55%),
        #1B1C2B;
    border-color: rgba(142, 43, 255, 0.85);
}

.rb-plan-ribbon {
    position: absolute;
    top: 16px;
    right: -40px;
    transform: rotate(35deg);
    background: linear-gradient(135deg, #FFC566, #FF8F3A);
    color: #1B1C2B;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    padding: 4px 40px;
    font-weight: 700;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.85);
}

.rb-plan-header h3 {
    font-size: 18px;
    margin-bottom: 4px;
}

.rb-plan-tag {
    font-size: 12px;
    color: var(--rb-text-soft);
}

.rb-plan-price {
    display: flex;
    align-items: baseline;
    gap: 6px;
}

.rb-plan-value {
    font-size: 24px;
    font-weight: 700;
}

.rb-plan-period {
    font-size: 13px;
    color: var(--rb-text-soft);
}

.rb-plan-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin: 4px 0 10px;
}

.rb-plan-list li {
    font-size: 13px;
    color: var(--rb-text-soft);
    display: flex;
    gap: 6px;
    align-items: flex-start;
}

.rb-plan-list i {
    color: var(--rb-accent-green);
    margin-top: 2px;
}

/* ==========================================================================
   DISCORD
   ========================================================================== */
.rb-discord-section {
    background:
        radial-gradient(circle at top left, rgba(88, 101, 242, 0.35), transparent 55%),
        #1D2033;
}

.rb-discord-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.9fr);
    gap: 28px;
    align-items: center;
}

.rb-discord-list {
    list-style: none;
    margin: 16px 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 14px;
    color: var(--rb-text-soft);
}

.rb-discord-card {
    border-radius: 22px;
    background: #1B1C2B;
    border: 1px solid rgba(255, 255, 255, 0.10);
    padding: 16px 16px 18px;
    box-shadow: var(--rb-shadow-soft);
}

.rb-discord-card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
    font-size: 12px;
    color: var(--rb-text-soft);
}

.rb-discord-pill {
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(88, 101, 242, 0.20);
    border: 1px solid rgba(88, 101, 242, 0.70);
}

.rb-discord-status {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.rb-discord-status .dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: #3AFD8C;
    box-shadow: 0 0 18px rgba(58, 253, 140, 0.95);
}

.rb-discord-card-main {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-bottom: 12px;
}

.rb-discord-avatar {
    width: 38px;
    height: 38px;
    border-radius: 16px;
    background: linear-gradient(135deg, #5865F2, #8EA1FF);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
}

.rb-discord-card-main h3 {
    font-size: 15px;
    margin-bottom: 4px;
}

.rb-discord-card-main p {
    font-size: 13px;
    color: var(--rb-text-soft);
}

.rb-discord-stats {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
    font-size: 12px;
}

.rb-discord-stats .label {
    color: var(--rb-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 11px;
}

.rb-discord-stats .value {
    font-weight: 600;
}

.rb-discord-footnote {
    font-size: 12px;
    color: var(--rb-text-muted);
}

/* ==========================================================================
   FEEDBACKS
   ========================================================================== */
.rb-feedback-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.rb-feedback-card {
    border-radius: var(--rb-radius-lg);
    background: #1B1C2B;
    border: 1px solid rgba(255, 255, 255, 0.09);
    padding: 16px 16px 18px;
    box-shadow: var(--rb-shadow-subtle);
    display: flex;
    flex-direction: column;
    gap: 10px;
    position: relative;
}

.rb-feedback-card::before {
    content: "";
    position: absolute;
    top: -32px;
    right: -32px;
    width: 90px;
    height: 90px;
    background: radial-gradient(circle, rgba(142, 43, 255, 0.65), transparent 60%);
    opacity: 0.4;
    pointer-events: none;
}

.rb-feedback-header {
    display: flex;
    align-items: center;
    gap: 10px;
}

.rb-feedback-avatar {
    width: 34px;
    height: 34px;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--rb-primary), var(--rb-accent-blue));
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 14px;
}

.rb-feedback-header h3 {
    font-size: 14px;
}

.rb-feedback-header span {
    font-size: 12px;
    color: var(--rb-text-soft);
}

.rb-feedback-rating {
    margin-left: auto;
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 4px;
    color: #FFD56A;
}

.rb-feedback-card p {
    font-size: 13px;
    color: var(--rb-text-soft);
}

.rb-feedback-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 4px 9px;
    border-radius: 999px;
    background: rgba(142, 43, 255, 0.16);
    border: 1px solid rgba(142, 43, 255, 0.75);
    font-size: 11px;
    color: var(--rb-text-soft);
}

/* ==========================================================================
   FAQ
   ========================================================================== */
.rb-faq-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.rb-faq-card {
    border-radius: var(--rb-radius-lg);
    background: #1B1C2B;
    border: 1px solid rgba(255, 255, 255, 0.08);
    padding: 16px 16px 18px;
    box-shadow: var(--rb-shadow-subtle);
}

.rb-faq-card h3 {
    font-size: 15px;
    margin-bottom: 6px;
}

.rb-faq-card p {
    font-size: 13px;
    color: var(--rb-text-soft);
}

/* ==========================================================================
   FLOAT CTA
   ========================================================================== */
.rb-float-cta {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 40;
    transform: translateY(120%);
    opacity: 0;
    pointer-events: none;
    transition: transform var(--rb-transition), opacity var(--rb-transition);
}

.rb-float-cta.is-visible {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
}

.rb-float-cta-inner {
    display: flex;
    align-items: center;
    gap: 10px;
    border-radius: 18px;
    padding: 8px 10px 8px 8px;
    background: #1B1C2B;
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow: var(--rb-shadow-soft);
}

.rb-float-icon {
    width: 30px;
    height: 30px;
    border-radius: 999px;
    background: radial-gradient(circle at top, var(--rb-primary), var(--rb-accent-blue));
    display: flex;
    align-items: center;
    justify-content: center;
}

.rb-float-text {
    font-size: 12px;
    color: var(--rb-text-soft);
    max-width: 220px;
}

.rb-float-text span {
    display: block;
    font-weight: 600;
    color: var(--rb-text-main);
}

.rb-float-close {
    border: none;
    background: transparent;
    color: var(--rb-text-muted);
    cursor: pointer;
    padding: 4px;
    border-radius: 999px;
    transition: background var(--rb-transition-fast), color var(--rb-transition-fast);
}

.rb-float-close:hover {
    background: rgba(255, 255, 255, 0.06);
    color: #FFFFFF;
}

/* ==========================================================================
   BOTTOM CTA
   ========================================================================== */
.rb-bottom-cta {
    padding: 64px 0 52px;
    background:
        radial-gradient(circle at top, rgba(142, 43, 255, 0.52), transparent 60%),
        #1D2033;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.rb-bottom-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.rb-bottom-text h2 {
    font-size: 24px;
    margin-bottom: 6px;
}

.rb-bottom-text p {
    font-size: 14px;
    color: var(--rb-text-soft);
}

/* ==========================================================================
   FOOTER
   ========================================================================== */
.rb-footer {
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    background: #151626;
    padding: 16px 0 18px;
    font-size: 13px;
    color: var(--rb-text-muted);
}

.rb-footer-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

.rb-footer-links {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.rb-footer-links a {
    color: var(--rb-text-muted);
    font-size: 13px;
}

.rb-footer-links a:hover {
    color: var(--rb-text-main);
}

/* ==========================================================================
   REVEAL ANIMAÇÃO
   ========================================================================== */
.rb-reveal {
    opacity: 0;
    transform: translateY(16px);
    transition: opacity 0.45s ease-out, transform 0.45s ease-out;
}

.rb-reveal.rb-delay-1 { transition-delay: 0.08s; }
.rb-reveal.rb-delay-2 { transition-delay: 0.16s; }
.rb-reveal.rb-delay-3 { transition-delay: 0.24s; }

.rb-reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* ==========================================================================
   RESPONSIVIDADE
   ========================================================================== */

/* <= 1024px */
@media (max-width: 1024px) {
    .rb-hero-grid {
        grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
        gap: 28px;
    }

    .rb-games-grid,
    .rb-features-grid,
    .rb-windows-grid,
    .rb-steps-grid,
    .rb-feedback-grid,
    .rb-faq-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rb-discord-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .rb-plans-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .rb-bottom-cta-inner {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* <= 768px */
@media (max-width: 768px) {
    :root {
        --rb-header-height: 60px;
    }

    .rb-header-inner {
        gap: 12px;
    }

    .rb-burger {
        display: inline-flex;
    }

    .rb-nav {
        position: fixed;
        inset: var(--rb-header-height) 0 auto 0;
        background: rgba(10, 8, 22, 0.98);
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        flex-direction: column;
        padding: 10px 18px 14px;
        gap: 10px;
        transform: translateY(-110%);
        opacity: 0;
        pointer-events: none;
        transition: transform var(--rb-transition), opacity var(--rb-transition);
    }

    .rb-nav.is-open {
        transform: translateY(0);
        opacity: 1;
        pointer-events: auto;
    }

    .rb-nav-link {
        padding: 6px 0;
    }

    .rb-header-right {
        gap: 8px;
    }

    .rb-btn-header {
        padding-inline: 16px;
    }

    .rb-hero {
        padding: 58px 0 64px;
    }

    .rb-hero-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .rb-hero-right {
        justify-content: flex-start;
    }

    .rb-section {
        padding: 64px 0;
    }

    .rb-section-header {
        margin-bottom: 28px;
    }

    .rb-games-grid,
    .rb-features-grid,
    .rb-windows-grid,
    .rb-steps-grid,
    .rb-feedback-grid,
    .rb-faq-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .rb-bottom-cta {
        padding: 52px 0 42px;
    }

    .rb-float-cta-inner {
        border-radius: 16px;
    }
}

/* <= 480px */
@media (max-width: 480px) {
    .rb-shell {
        padding: 0 18px;
    }

    .rb-hero-title {
        font-size: 28px;
    }

    .rb-brand-name {
        display: none;
    }

    .rb-header-right .rb-header-login span {
        display: none;
    }

    .rb-bottom-text h2 {
        font-size: 20px;
    }

    .rb-footer-inner {
        flex-direction: column;
        align-items: flex-start;
    }

    .rb-float-text {
        max-width: 180px;
    }
}
