/*
=========================================================
FCClub Cinematic PRO
=========================================================
*/

:root{

    --bg:#050505;
    --bg2:#0D1117;

    --green:#C8FF00;

    --white:#F5F5F5;

    --glass:
    rgba(255,255,255,.05);

    --border:
    rgba(255,255,255,.08);
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{

    font-family:'Inter',sans-serif;

    background:#000;

    color:white;

    overflow-x:hidden;
}

/* ===================================================== */
/* NAVBAR */
/* ===================================================== */

.navbar{

    position:fixed;

    top:0;
    left:0;

    width:100%;

    height:90px;

    padding:0 40px;

    display:flex;

    align-items:center;

    justify-content:space-between;

    z-index:99999;

    background:
    rgba(0,0,0,.45);

    backdrop-filter:blur(20px);

    border-bottom:
    1px solid rgba(255,255,255,.06);
}

/* LOGO */

.nav-logo{

    display:flex;

    align-items:center;

    justify-content:center;
}

.nav-logo img{

    height:58px;

    width:auto;

    display:block;

    filter:
    drop-shadow(
        0 0 12px
        rgba(200,255,0,.35)
    );
}

/* MENU */

.navbar ul{

    list-style:none;

    display:flex;

    align-items:center;

    gap:45px;
}

.navbar ul li{

    display:flex;
}

.navbar ul li a{

    color:white;

    text-decoration:none;

    font-size:.95rem;

    font-weight:700;

    letter-spacing:.5px;

    position:relative;

    transition:.3s;
}

/* LINE EFFECT */

.navbar ul li a::after{

    content:'';

    position:absolute;

    left:0;
    bottom:-8px;

    width:0%;

    height:2px;

    background:var(--green);

    transition:.3s;
}

.navbar ul li a:hover{

    color:var(--green);
}

.navbar ul li a:hover::after{

    width:100%;
}

/* THEME BUTTON */

#themeToggle{

    width:48px;
    height:48px;

    border-radius:50%;

    border:
    1px solid rgba(255,255,255,.1);

    background:
    rgba(255,255,255,.05);

    color:white;

    cursor:pointer;

    font-size:1rem;

    transition:.3s;

    display:flex;

    align-items:center;
    justify-content:center;
}

#themeToggle:hover{

    background:var(--green);

    color:black;

    transform:rotate(180deg);
}

/* MOBILE */

@media(max-width:768px){

    .navbar{

        height:75px;

        padding:0 15px;
    }

    .nav-logo img{

        height:42px;
    }

    .navbar ul{

        gap:15px;
    }

    .navbar ul li a{

        font-size:.75rem;
    }

    #themeToggle{

        width:38px;
        height:38px;

        font-size:.85rem;
    }
}

/* ===================================================== */
/* GLOBAL */
/* ===================================================== */

.section-container{

    width:100%;

    max-width:1300px;

    margin:auto;

    padding:0 20px;
}

/* ===================================================== */
/* HERO */
/* ===================================================== */

.hero{

    position:relative;

    min-height:100vh;

    display:flex;

    align-items:center;
    justify-content:center;

    overflow:hidden;

    padding:
    140px 20px
    100px;
}

.hero-video{

    position:absolute;

    inset:0;

    width:100%;
    height:100%;

    object-fit:cover;

    opacity:.18;

    z-index:0;
}

.overlay{

    position:absolute;

    inset:0;

    background:
    linear-gradient(
        to bottom,
        rgba(0,0,0,.75),
        rgba(0,0,0,.92)
    );

    z-index:1;
}

#particles-js{

    position:absolute;

    inset:0;

    z-index:2;

    opacity:.35;

    pointer-events:none;
}

.hero-content{

    position:relative;

    z-index:10;

    width:100%;

    max-width:1000px;

    text-align:center;
}

.logo{

    width:min(420px,80vw);

    margin-bottom:40px;

    filter:
    drop-shadow(
        0 0 35px
        rgba(200,255,0,.35)
    );
}

.hero h1 {
    font-family: 'Anton', sans-serif;
    font-size: clamp(4rem, 10vw, 6rem);
    line-height: 1.1;
    margin-bottom: 30px;
    text-transform: uppercase;
}

.hero p{

    max-width:800px;

    margin:auto auto 40px;

    color:#ddd;

    line-height:1.9;

    font-size:
    clamp(1rem,2vw,1.2rem);
}

/* ===================================================== */
/* BUTTONS */
/* ===================================================== */

.buttons{

    display:flex;

    justify-content:center;

    gap:20px;

    margin-bottom:50px;
}

.btn{

    padding:18px 38px;

    border-radius:100px;

    border:2px solid var(--green);

    text-decoration:none;

    color:white;

    font-weight:700;

    transition:.3s;
}

.btn:hover{

    background:var(--green);

    color:black;

    box-shadow:
    0 0 30px
    rgba(200,255,0,.5);
}

/* ===================================================== */
/* NEWSLETTER */
/* ===================================================== */

.subscribe-box{

    width:min(700px,95%);

    margin:auto;

    padding:35px;

    border-radius:24px;

    background:
    rgba(255,255,255,.04);

    border:
    1px solid rgba(255,255,255,.08);

    backdrop-filter:blur(16px);

    display:grid;

    gap:18px;
}

.subscribe-box input{

    width:100%;

    padding:20px;

    border:none;

    border-radius:14px;

    background:#0E1218;

    color:white;

    font-size:1rem;
}

.subscribe-box button{

    padding:20px;

    border:none;

    border-radius:14px;

    background:var(--green);

    color:black;

    font-weight:800;

    cursor:pointer;

    transition:.3s;
}

.subscribe-box button:hover{

    transform:translateY(-3px);

    box-shadow:
    0 0 30px
    rgba(200,255,0,.5);
}

/* ===================================================== */
/* COUNTDOWN */
/* ===================================================== */

.countdown-section{

    padding:120px 0;
}

.countdown-section h2{

    text-align:center;

    font-family:'Anton';

    font-size:
    clamp(3rem,7vw,5rem);

    margin-bottom:60px;
}

.countdown-grid{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(220px,1fr));

    gap:30px;
}

.count-card{

    padding:45px 20px;

    border-radius:24px;

    text-align:center;

    background:var(--glass);

    border:1px solid var(--border);

    backdrop-filter:blur(16px);
}

.count-card span{

    display:block;

    font-size:4rem;

    font-weight:900;

    color:var(--green);

    margin-bottom:10px;
}

/* ===================================================== */
/* STATS */
/* ===================================================== */

.stats-section{

    padding:40px 0 120px;
}

.stats-grid{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(250px,1fr));

    gap:30px;
}

.stat-card{

    padding:45px 25px;

    border-radius:24px;

    background:var(--glass);

    border:1px solid var(--border);

    text-align:center;

    transition:.4s;
}

.stat-card:hover{

    transform:translateY(-10px);

    border-color:var(--green);

    box-shadow:
    0 0 40px
    rgba(200,255,0,.15);
}

.counter{

    font-size:4rem;

    color:var(--green);

    margin-bottom:15px;
}

/* ===================================================== */
/* BRAND */
/* ===================================================== */

.medellin-section{

    padding:140px 0;

    text-align:center;
}

.medellin-section h2{

    font-family:'Anton';

    font-size:
    clamp(3rem,9vw,7rem);

    line-height:.9;

    margin-bottom:30px;
}

.medellin-section p{

    max-width:850px;

    margin:auto;

    color:#ccc;

    font-size:1.2rem;

    line-height:2;
}

/* ===================================================== */
/* FOOTER */
/* ===================================================== */

.footer{

    padding:100px 20px 60px;

    text-align:center;

    background:
    linear-gradient(
        to top,
        #020202,
        transparent
    );
}

.footer-logo{

    width:120px;

    margin-bottom:20px;
}

/* ===================================================== */
/* WHATSAPP */
/* ===================================================== */

.whatsapp-float{

    position:fixed;

    right:20px;
    bottom:20px;

    width:70px;
    height:70px;

    border-radius:50%;

    background:#25D366;

    display:flex;

    align-items:center;
    justify-content:center;

    text-decoration:none;

    font-size:2rem;

    z-index:99999;

    box-shadow:
    0 0 30px
    rgba(37,211,102,.5);
}

/* ===================================================== */
/* RESPONSIVE */
/* ===================================================== */

@media(max-width:768px){

    .hero{

        padding-top:120px;
    }

    .hero h1{

        font-size:4rem;
    }

    .logo{

        width:240px;
    }

    .buttons{

        flex-direction:column;
    }

    .btn{

        width:100%;
    }

    .count-card span{

        font-size:3rem;
    }

    .counter{

        font-size:3rem;
    }

    .medellin-section h2{

        font-size:4rem;
    }
}

/* ===================================================== */
/* NAVBAR FIX */
/* ===================================================== */

/* ===================================================== */
/* PARTICLES FIX */
/* ===================================================== */

#particles-js{

    position:absolute;

    inset:0;

    width:100%;
    height:100%;

    z-index:2;

    pointer-events:none;
}

/* ===================================================== */
/* FOOTER FIX */
/* ===================================================== */

.footer-content{

    max-width:900px;

    margin:auto;
}

/* ===================================================== */
/* SCROLL TOP */
/* ===================================================== */

#scrollTopBtn{

    position:fixed;

    right:20px;
    bottom:110px;

    width:55px;
    height:55px;

    border:none;

    border-radius:50%;

    background:var(--green);

    color:black;

    font-size:1.4rem;

    cursor:pointer;

    z-index:99999;

    box-shadow:
    0 0 20px
    rgba(200,255,0,.45);

    transition:.3s;
}

#scrollTopBtn:hover{

    transform:translateY(-5px);
}

/* ===================================================== */
/* LOADER */
/* ===================================================== */

#loader{

    position:fixed;

    inset:0;

    background:#000;

    z-index:999999;

    display:flex;

    flex-direction:column;

    align-items:center;
    justify-content:center;

    gap:30px;

    transition:1s;
}

.loader-logo{

    width:180px;

    animation:
    pulse 2s infinite;
}

.loader-bar{

    width:220px;
    height:6px;

    background:#111;

    border-radius:100px;

    overflow:hidden;
}

.loader-bar span{

    display:block;

    width:0%;
    height:100%;

    background:var(--green);

    animation:
    loading 3s ease forwards;
}

@keyframes loading{

    to{
        width:100%;
    }
}

@keyframes pulse{

    0%{
        transform:scale(1);
    }

    50%{
        transform:scale(1.05);
    }

    100%{
        transform:scale(1);
    }
}

/* ===================================================== */
/* LIGHT THEME */
/* ===================================================== */

body.light-theme{

    background:#F4F6F8;

    color:#111;
}

/* HERO */

body.light-theme .overlay{

    background:
    linear-gradient(
        to bottom,
        rgba(255,255,255,.82),
        rgba(255,255,255,.92)
    );
}

body.light-theme .hero p,
body.light-theme .medellin-section p{

    color:#333;
}

/* NAVBAR */

body.light-theme .navbar{

    background:
    rgba(255,255,255,.72);

    border-bottom:
    1px solid rgba(0,0,0,.06);
}

body.light-theme .navbar ul li a{

    color:#111;
}

body.light-theme .navbar ul li a:hover{

    color:#7AB800;
}

/* CARDS */

body.light-theme .count-card,
body.light-theme .stat-card,
body.light-theme .subscribe-box{

    background:
    rgba(255,255,255,.72);

    border:
    1px solid rgba(0,0,0,.08);

    box-shadow:
    0 10px 30px
    rgba(0,0,0,.06);
}

/* INPUTS */

body.light-theme .subscribe-box input{

    background:#FFF;

    color:#111;

    border:
    1px solid rgba(0,0,0,.08);
}

/* FOOTER */

body.light-theme .footer{

    background:
    linear-gradient(
        to top,
        #EDEDED,
        transparent
    );
}

body.light-theme .footer a{

    color:#222;
}

/* BUTTON */

body.light-theme .btn{

    color:#111;
}

body.light-theme #themeToggle{

    background:
    rgba(0,0,0,.06);

    color:#111;
}


.stats-section h2 {
    text-align: center;
    font-family: 'Anton';
    font-size: clamp(3rem, 7vw, 5rem);
    margin-bottom: 60px;
}

/* ===================================================== */
/* MESSAGE */
/* ===================================================== */

.message{

    margin-top:10px;

    font-size:.95rem;

    font-weight:600;

    text-align:center;
}
/* ===================================================== */
/* FORM MESSAGE */
/* ===================================================== */

.message{

    margin-top:15px;

    font-size:.95rem;

    font-weight:700;

    text-align:center;

    min-height:24px;
}

/* ===================================================== */
/* BUTTON FIX */
/* ===================================================== */

.subscribe-box button{

    position:relative;

    z-index:50;

    pointer-events:auto;
}

/* ===================================================== */
/* HERO FIX */
/* ===================================================== */

.hero-content{

    position:relative;

    z-index:20;
}

.overlay{

    z-index:1;
}

.hero-video{

    z-index:0;
}

#particles-js{

    z-index:2;

    pointer-events:none;
}