/* === RESET & BASE === */
:root {
    --cyan: #00d2ff;
    --cyan-glow: rgba(0,210,255,0.4);
    --orange: #F37021;
    --dark: #050507;
    --card-bg: #0c0c11;
    --border: rgba(255,255,255,0.08);
    --red: #ff4444;
    --yellow: #ffaa00;
}

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

body {
    font-family: 'Outfit', sans-serif;
    background: var(--dark);
    color: #fff;
    line-height: 1.6;
    overflow-x: hidden;
}

h1,h2,h3,h4,.gamer-tag,.stat-num,.badge-pop,.boost-label,.game-label {
    font-family: 'Orbitron', sans-serif;
}

.container { max-width:1200px; margin:0 auto; padding:0 24px; }

.text-cyan { color: var(--cyan); }
.text-red { color: var(--red); }
.text-yellow { color: var(--yellow); }
.text-glow {
    background: linear-gradient(90deg, var(--cyan), #fff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* === BUTTONS === */
.btn-cta {
    display:inline-block; padding:18px 40px; border-radius:10px;
    background: var(--cyan); color: var(--dark);
    font-weight:800; text-decoration:none; text-transform:uppercase;
    letter-spacing:1px; border:none; cursor:pointer;
    box-shadow: 0 0 25px var(--cyan-glow);
    transition: all .3s ease;
}
.btn-cta:hover { transform:translateY(-3px); box-shadow: 0 0 40px var(--cyan-glow); background:#fff; }

.btn-outline {
    display:inline-block; padding:16px 35px; border-radius:10px;
    border:2px solid var(--border); color:#fff;
    font-weight:700; text-decoration:none; text-transform:uppercase;
    letter-spacing:1px; transition:all .3s ease;
}
.btn-outline:hover { border-color:var(--cyan); color:var(--cyan); background:rgba(0,210,255,.05); }

/* === HERO === */
.hero {
    position:relative; height:100vh;
    overflow:hidden;
    display:flex; align-items:center;
}
#hero-video-container {
    position:absolute; top:0; left:0; width:100%; height:100%;
    pointer-events:none; z-index:0;
}
#hero-video {
    width:100%; height:100%;
    object-fit:cover;
}
.hero-overlay {
    position:absolute; inset:0;
    background: linear-gradient(90deg, rgba(5,5,7,0.9) 30%, rgba(5,5,7,0.4) 100%);
    z-index:1;
}
.hero-content { position:relative; z-index:2; }
.hero-logo { height:50px; margin-bottom:40px; filter:drop-shadow(0 0 10px rgba(0,210,255,.3)); }
.gamer-tag { color:var(--cyan); letter-spacing:5px; font-size:.85rem; margin-bottom:16px; }
.hero-text h1 { 
    font-size:clamp(2.4rem,5vw,4.5rem); font-weight:900; line-height:1.1; margin-bottom:20px; max-width:800px;
    text-shadow: 0 4px 10px rgba(0,0,0,0.5);
}
.hero-text p { 
    font-size:1.2rem; color:#ccc; margin-bottom:40px; max-width:600px;
    text-shadow: 0 2px 5px rgba(0,0,0,0.5);
}

@media(max-width:1024px) {
    #player {
        width: 300vw; height: 168.75vw; /* Make it even larger on tablets to ensure cover */
    }
}
@media(max-width:768px) {
    .hero { height: 70vh; } /* Shorter hero on mobile to save space */
    #player {
        width: 500vw; height: 281.25vw; /* Extreme crop on mobile to keep focus on center */
    }
    .hero-text h1 { font-size: 1.8rem; }
}

/* === STATS === */
.stats-bar { border-bottom:1px solid var(--border); padding:60px 0; }
.stats-grid { display:flex; justify-content:space-around; text-align:center; flex-wrap:nowrap; gap:10px; }
.stat-num { font-size:clamp(2rem,5vw,3.5rem); font-weight:700; color:var(--cyan); }
.stat-suffix { font-size:clamp(.9rem,2vw,1.4rem); color:#999; }
.stat p { color:#999; text-transform:uppercase; font-size:clamp(.55rem,1.5vw,.75rem); letter-spacing:2px; margin-top:8px; }

/* === PRICING === */
.pricing { padding:100px 0; }
.section-head { text-align:center; margin-bottom:60px; }
.section-head h2 { font-size:clamp(2rem,4vw,3rem); font-weight:900; }
.section-head p { color:#888; margin-top:10px; }

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

.card {
    position:relative; background:var(--card-bg); border:1px solid var(--border);
    border-radius:20px; padding:40px 30px; overflow:hidden;
    transition:all .4s ease;
}
.card:hover { border-color:var(--cyan); transform:translateY(-8px); box-shadow:0 20px 40px rgba(0,0,0,.5); }

.card-featured {
    border-color:var(--cyan);
    background:linear-gradient(180deg, rgba(0,210,255,.06), transparent 60%);
}

.badge-pop {
    position:absolute; top:16px; right:16px;
    background:var(--orange); color:#fff;
    font-size:.65rem; padding:4px 10px; border-radius:4px;
}

.card-top h3 { font-size:.9rem; color:#999; letter-spacing:2px; margin-bottom:8px; }
.boost-label {
    display:inline-block; font-size:.55rem; background:var(--cyan); color:var(--dark);
    padding:2px 8px; border-radius:3px; font-weight:900; margin-bottom:8px;
}
.card-speed { font-size:3rem; font-weight:800; margin-bottom:4px; }
.card-speed small { font-size:1.1rem; color:#999; }
.card-price { font-size:2rem; font-weight:800; color:var(--cyan); margin-bottom:24px; }
.card-price span { font-size:.9rem; color:#999; font-weight:400; }

.card ul { list-style:none; margin-bottom:30px; }
.card li { margin-bottom:12px; color:#ddd; font-size:.95rem; }
.card li i { margin-right:10px; color:var(--cyan); }
.card li.muted { color:#555; }
.card li.muted i { color:var(--red); }

/* Data Stream Animation */
.data-stream {
    position:absolute; inset:0; pointer-events:none; overflow:hidden; z-index:0;
}
.data-stream::after {
    content:''; position:absolute;
    top:-100%; left:-100%; width:300%; height:300%;
    background:linear-gradient(
        135deg,
        transparent 42%, rgba(0,210,255,.04) 46%,
        rgba(0,210,255,.1) 50%,
        rgba(0,210,255,.04) 54%, transparent 58%
    );
    animation: stream 2.5s linear infinite;
}
@keyframes stream {
    from { transform:translate(-33%,-33%); }
    to { transform:translate(33%,33%); }
}

.card > *:not(.data-stream):not(.badge-pop) { position:relative; z-index:1; }

/* === PROMO === */
.promo { padding-bottom:100px; }
.promo-box {
    background:rgba(255,255,255,.03); backdrop-filter:blur(20px);
    border:1px solid var(--border); border-radius:30px;
    padding:50px; text-align:center;
}
.promo-box h3 { font-size:1.8rem; margin-bottom:30px; }
.promo-box h3 i { color:var(--cyan); margin-right:10px; }
.promo-options { display:flex; justify-content:center; gap:30px; flex-wrap:wrap; }
.promo-opt {
    flex:1; min-width:260px; padding:25px; border-radius:16px;
    border:1px solid var(--border); background:rgba(255,255,255,.02);
}
.promo-hot { border-color:var(--orange); }
.promo-opt h4 { font-size:1.4rem; color:var(--cyan); margin-bottom:8px; }
.promo-note { margin-top:20px; font-size:.8rem; color:#555; font-style:italic; }

/* === ECOSYSTEM === */
.ecosystem { padding:100px 0; }
.eco-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:24px; }
.eco-card {
    background:var(--card-bg); border:1px solid var(--border);
    border-radius:20px; padding:35px 25px;
    transition:all .4s ease;
}
.eco-card:hover { border-color:var(--cyan); transform:translateY(-6px); }
.eco-icon { font-size:2rem; color:var(--cyan); margin-bottom:16px; }
.eco-card h4 { font-size:1.1rem; margin-bottom:10px; }
.eco-card p { color:#bbb; font-size:.9rem; margin-bottom:16px; }
.eco-bonus {
    display:block; font-size:.8rem; color:var(--cyan);
    padding:10px 14px; border-radius:10px;
    background:rgba(0,210,255,.05); border:1px solid rgba(0,210,255,.15);
}
.eco-bonus i { margin-right:6px; }

/* === VISUAL COMPARISON === */
.visual-comp { padding:100px 0; }
.comp-slider {
    position:relative; max-width:900px; margin:0 auto;
    aspect-ratio:16/9; border-radius:20px; overflow:hidden;
    border:2px solid var(--border); cursor:ew-resize;
    user-select:none;
}
.comp-bg, .comp-fg { position:absolute; inset:0; }
.comp-bg img, .comp-fg img { width:100%; height:100%; object-fit:cover; }
.comp-fg { width:50%; overflow:hidden; border-right:3px solid var(--cyan); z-index:2; }
.comp-fg img { width:900px; max-width:none; }
.comp-label {
    position:absolute; top:16px; z-index:3;
    padding:6px 14px; background:rgba(0,0,0,.8);
    font-family:'Orbitron',sans-serif; font-size:.7rem; border-radius:6px;
}
.comp-label-left { left:16px; color:var(--cyan); }
.comp-label-right { right:16px; color:var(--red); }
.comp-range {
    position:absolute; inset:0; width:100%; height:100%;
    -webkit-appearance:none; appearance:none;
    background:transparent; z-index:4; cursor:ew-resize; margin:0;
}
.comp-range::-webkit-slider-thumb { -webkit-appearance:none; width:4px; height:9999px; background:var(--cyan); }
.comp-handle {
    position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
    width:40px; height:40px; border-radius:50%;
    background:var(--cyan); z-index:5; pointer-events:none;
    display:flex; align-items:center; justify-content:center;
    box-shadow:0 0 20px var(--cyan-glow);
}
.comp-handle::before { content:'⟷'; color:var(--dark); font-size:1rem; font-weight:900; }

/* === VERSUS TABLE === */
.versus { padding:100px 0; }
.table-wrap {
    background:var(--card-bg); border-radius:24px; padding:30px;
    border:1px solid var(--border); overflow-x:auto;
}
table { width:100%; border-collapse:collapse; }
th, td { padding:20px; text-align:left; border-bottom:1px solid var(--border); }
th { font-family:'Orbitron',sans-serif; font-size:.8rem; color:#888; letter-spacing:2px; }
.col-cbn { color:var(--cyan); background:rgba(0,210,255,.03); }
td i { margin-right:8px; }
.term-row td {
    font-family:'Orbitron',sans-serif; font-size:.85rem; font-weight:700;
    color:#fff; letter-spacing:1px;
    border-bottom:none; padding-bottom:8px;
    background:rgba(255,255,255,.02);
}

/* Ping Spike Warning */
.spike-warn {
    margin-top:40px; display:flex; align-items:center; gap:24px;
    background:linear-gradient(135deg, rgba(255,68,68,.08), transparent);
    border:2px solid rgba(255,68,68,.25); border-radius:20px; padding:30px;
}
.warn-icon { font-size:3rem; color:var(--red); animation: blink 1.5s ease infinite alternate; }
@keyframes blink { from{opacity:.4; filter:drop-shadow(0 0 5px var(--red));} to{opacity:1; filter:drop-shadow(0 0 20px var(--red));} }
.warn-text h4 { font-family:'Orbitron',sans-serif; color:var(--red); letter-spacing:2px; margin-bottom:8px; font-size:.9rem; }
.warn-text p { color:#bbb; }
.warn-text strong { color:#fff; }

/* === TESTIMONIAL === */
.testi { padding:100px 0; }
.testi-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:24px; }
.testi-card {
    background:var(--card-bg); border:1px solid var(--border);
    border-radius:20px; padding:35px;
    transition:all .4s ease;
}
.testi-card:hover { border-color:var(--cyan); transform:translateY(-4px); }
.testi-stars { color:#f2a900; font-size:1.2rem; margin-bottom:16px; letter-spacing:4px; }
.testi-quote {
    font-size:1rem; color:#ddd; line-height:1.7;
    margin-bottom:24px; font-style:italic;
}
.testi-author {
    display:flex; align-items:center; gap:14px;
    padding-top:16px; border-top:1px solid var(--border);
}
.testi-author i { font-size:1.5rem; color:var(--cyan); }
.testi-author strong { display:block; font-size:.9rem; color:#fff; }
.testi-author small { color:#888; font-size:.8rem; }

/* === GAME LOGOS === */
.game-titles { padding:60px 0; border-top:1px solid var(--border); text-align:center; }
.game-label { font-size:.7rem; letter-spacing:4px; color:#666; margin-bottom:30px; font-weight: 700; }
.game-row { 
    display: flex; 
    justify-content: center; 
    align-items: center; 
    gap: 30px; 
    flex-wrap: nowrap; 
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 20px;
}

.game-logo-wrapper {
    width: 140px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.4s ease;
}

.game-logo-img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    opacity: 0.6;
    filter: grayscale(100%) brightness(1.5);
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    cursor: default;
}
.game-logo-wrapper:hover .game-logo-img { 
    opacity: 1; 
    filter: grayscale(0%) brightness(1) drop-shadow(0 0 8px rgba(0, 210, 255, 0.3)); 
    transform: scale(1.08); 
}

.game-name {
    font-family:'Orbitron',sans-serif; font-size:.75rem; font-weight:700;
    letter-spacing:3px; padding:10px 20px;
    border:1px solid rgba(255,255,255,.08); border-radius:8px;
    transition:all .4s ease; cursor:default;
}
.game-name:hover { transform:scale(1.05); border-color:currentColor; background:rgba(255,255,255,.03); }

/* Tech Note (Educational Tooltip) */
.tech-note {
    display:block; margin-top:8px;
    font-family:'Outfit',sans-serif; font-size:.78rem; font-weight:400;
    color:#9ab; line-height:1.5;
    padding:6px 10px; margin-top:10px;
    background:rgba(0,210,255,.04); border-left:2px solid rgba(0,210,255,.3);
    border-radius:0 6px 6px 0;
}

/* === ADVANTAGES === */
.advantages { padding:80px 0; }
.adv-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:30px; }
.adv { text-align:center; padding:40px 20px; }
.adv i { font-size:2.5rem; color:var(--cyan); margin-bottom:20px; }
.adv h4 { font-size:1rem; margin-bottom:12px; letter-spacing:1px; }
.adv p { color:#aaa; font-size:.9rem; }

/* === FOOTER === */
/* === FOOTER === */
.footer { padding:60px 0; border-top:1px solid var(--border); text-align:center; }
.footer-logo-img { height:36px; margin-bottom:16px; opacity:.5; }
.footer p { color:#555; font-size:.85rem; }

/* === FLOATING WHATSAPP === */
.floating-wa {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 60px;
    height: 60px;
    background-color: #25d366;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 32px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.4);
    z-index: 1000;
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    text-decoration: none;
}
.floating-wa:hover {
    transform: scale(1.1);
    background-color: #20ba5a;
    box-shadow: 0 0 20px rgba(37, 211, 102, 0.6);
}
.wa-tooltip {
    position: absolute;
    right: 75px;
    background: #0c0c11;
    border: 1px solid rgba(255,255,255,0.08);
    color: #fff;
    padding: 8px 16px;
    border-radius: 8px;
    font-size: 14px;
    font-family: 'Outfit', sans-serif;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    pointer-events: none;
    box-shadow: 0 4px 15px rgba(0,0,0,0.5);
}
.floating-wa:hover .wa-tooltip {
    opacity: 1;
    visibility: visible;
}

@keyframes pulse {
    0%   { transform:scale(1);    box-shadow:0 0 20px var(--cyan-glow); }
    50%  { transform:scale(1.04); box-shadow:0 0 40px var(--cyan-glow); }
    100% { transform:scale(1);    box-shadow:0 0 20px var(--cyan-glow); }
}
.pulse { animation:pulse 2s infinite ease-in-out; }

/* === RESPONSIVE === */
@media(max-width:768px){
    .hero-text h1 { font-size:1.8rem; }
    .card-featured { transform:none; }
    .floating-wa {
        bottom: 20px;
        right: 20px;
        width: 50px;
        height: 50px;
        font-size: 26px;
    }
    .wa-tooltip { display: none; }
    .spike-warn { flex-direction:column; text-align:center; }
    .comp-fg img { width:100vw; }
    
    .game-row {
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        align-items: center;
        gap: 10px;
        padding: 0 10px;
    }
    .game-logo-wrapper {
        width: calc(100% / 6);
        height: 25px;
    }
}

/* === SCROLL REVEAL === */
.scroll-reveal { opacity:0; transform:translateY(30px); transition:all .8s ease; }
.scroll-reveal.active { opacity:1; transform:translateY(0); }
