/* ============================
   RESET
============================ */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

:root{

    --red:#d90429;
    --black:#050505;
    --white:#ffffff;
    --gray:#bfbfbf;

}

html{

    scroll-behavior:smooth;

}

body{

    background:var(--black);

    color:white;

    font-family:'Poppins',sans-serif;

    overflow-x:hidden;

}


/* ============================
   NAVBAR
============================ */

#navbar{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    z-index:9999;

    padding:28px 80px;

    transition:all .4s ease;

}

#navbar.scrolled{

    background:rgba(5,5,5,.78);

    backdrop-filter:blur(18px);

    -webkit-backdrop-filter:blur(18px);

    box-shadow:0 15px 35px rgba(0,0,0,.35);

    padding:18px 80px;

}

.nav-container{

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.logo{

    font-size:44px;

    font-family:'Bebas Neue';

    letter-spacing:2px;

}

.logo span{

    color:var(--red);

}

.nav-menu{

    display:flex;

    gap:45px;

    list-style:none;

}

.nav-menu a{

    text-decoration:none;

    color:white;

    font-weight:500;

    position:relative;

}

.nav-menu a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-8px;

    width:0;

    height:2px;

    background:var(--red);

    transition:.35s;

}

.nav-menu a:hover::after{

    width:100%;

}

.join-btn{

    background:var(--red);

    color:white;

    text-decoration:none;

    padding:14px 28px;

    border-radius:40px;

    transition:.35s;

}

.join-btn:hover{

    transform:translateY(-3px);

    background:white;

    color:black;

}


/* ============================
   HERO
============================ */

#hero{

    position:relative;

    min-height:100vh;

    display:flex;

    align-items:center;

    overflow:hidden;

    padding-top:120px;

}
.hero-bg{

    position:absolute;

    inset:0;

    background:
    radial-gradient(circle at right,
    rgba(217,4,41,.35),
    transparent 45%),

    linear-gradient(#050505,#111);

}

.hero-wrapper{

    position:relative;

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:60px;

    width:100%;

}

.hero-left{

    text-align:right;

}

.hero-tag{

    display:inline-block;

    padding:8px 18px;

    border:1px solid rgba(255,255,255,.15);

    border-radius:30px;

    margin-bottom:30px;

    color:#ddd;

}
.hero-buttons{

    justify-content:flex-start;

}

.hero-left h1{

    line-height:1.1;

}

.hero-left span{

    color:var(--red);

    text-shadow:

        0 0 15px rgba(217,4,41,.45),

        0 0 35px rgba(217,4,41,.25);

}

.hero-left p{

    max-width:650px;

    color:#d2d2d2;

    line-height:34px;

    font-size:20px;

}

.hero-buttons{

    margin-top:45px;

    display:flex;

    gap:20px;

}

.btn-primary-custom{

    background:var(--red);

    color:white;

    text-decoration:none;

    padding:18px 40px;

    border-radius:40px;

    transition:.35s;
    animation:pulse 2.5s infinite;

}

.btn-primary-custom:hover{

    transform:translateY(-4px);

    box-shadow:0 15px 40px rgba(217,4,41,.45);

}

.btn-secondary-custom{

    border:2px solid white;

    color:white;

    text-decoration:none;

    padding:18px 40px;

    border-radius:40px;

    transition:.35s;

}

.btn-secondary-custom:hover{

    background:white;

    color:black;

}

.hero-right{

    position:relative;

    width:45%;

    display:flex;

    justify-content:center;

    align-items:center;

}

.player-circle{

    position:absolute;

    width:600px;

    height:600px;

    border-radius:50%;

    background:rgba(217,4,41,.18);

    filter:blur(20px);

}

.hero-player{

    position:relative;

    width:650px;

    z-index:5;

    animation:floatPlayer 4s ease-in-out infinite;

}

.hero-video{

    position:absolute;

    inset:0;

    width:100%;

    height:100%;

    object-fit:cover;

}

.hero-overlay{

    position:absolute;

    inset:0;

    background:

    linear-gradient(

        rgba(0,0,0,.75),

        rgba(0,0,0,.65)

    );

}
/* ============================
   ANIMATION
============================ */

@keyframes floatPlayer{

    0%{

        transform:translateY(0px);

    }

    50%{

        transform:translateY(-18px);

    }

    100%{

        transform:translateY(0px);

    }

}

/*==============================
    SCROLL INDICATOR
==============================*/
@keyframes scrollLine{

    0%{

        top:-30px;

    }

    100%{

        top:100%;

    }

}



@keyframes pulse{

    0%{

        box-shadow:0 0 0 0 rgba(217,4,41,.6);

    }

    70%{

        box-shadow:0 0 0 20px rgba(217,4,41,0);

    }

    100%{

        box-shadow:0 0 0 0 rgba(217,4,41,0);

    }

}