/* ===================================================
   LUPUS TRADING PLC
   style.css
=================================================== */

/* Google Font */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

:root{
    --primary:#0056b3;
    --secondary:#00b4ff;
    --dark:#0f172a;
    --light:#f8fafc;
    --white:#ffffff;
    --gray:#6c757d;
    --success:#22c55e;
    --shadow:0 10px 30px rgba(0,0,0,.15);
    --transition:.35s ease;
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Poppins',sans-serif;
    background:#fff;
    color:#333;
    line-height:1.7;
    overflow-x:hidden;
}

/* ================= NAVBAR ================= */

.navbar{
    background:rgba(0,35,75,.90);
    backdrop-filter:blur(10px);
    transition:.4s;
}

.navbar-brand{
    font-size:1.4rem;
    font-weight:700;
    letter-spacing:1px;
}

.nav-link{
    color:#fff !important;
    margin-left:15px;
    transition:var(--transition);
}

.nav-link:hover{
    color:#00d4ff !important;
}

/* ================= HERO ================= */

.hero{

    position:relative;

    height:100vh;

    background:

    linear-gradient(rgba(0,20,60,.75),
    rgba(0,20,60,.75)),

    url("../images/hero.jpg");

    background-size:cover;

    background-position:center;

    display:flex;

    align-items:center;

}

.overlay{
    position:absolute;
    width:100%;
    height:100%;
    background:linear-gradient(120deg,
    rgba(0,0,0,.3),
    rgba(0,90,255,.2));
}

.hero h1{

    font-size:65px;

    font-weight:800;

}

.hero h5{

    color:#00d4ff;

    letter-spacing:5px;

}

.hero p{

    font-size:20px;

    max-width:650px;

}

.btn{

    border-radius:40px;

    padding:14px 35px;

    transition:.4s;

}

.btn-primary{

    background:#0077ff;

    border:none;

}

.btn-primary:hover{

    background:#004cbf;

    transform:translateY(-3px);

}

.btn-outline-light:hover{

    color:#000;

}

/* ================= SECTION ================= */

section{

    padding:80px 0;

}

h2{

    font-weight:700;

    margin-bottom:20px;

    color:#003366;

}

/* ================= ABOUT ================= */

.about-image{

    border-radius:20px;

    overflow:hidden;

    box-shadow:var(--shadow);

}

/* ================= SERVICES ================= */

.services{

    background:#f4f8fc;

}

.service-card{

    background:#fff;

    border-radius:15px;

    padding:35px;

    text-align:center;

    transition:.4s;

    box-shadow:0 8px 25px rgba(0,0,0,.08);

    height:100%;

}

.service-card:hover{

    transform:translateY(-10px);

    box-shadow:0 20px 40px rgba(0,0,0,.18);

}

.service-card i{

    color:#0077ff;

    margin-bottom:20px;

    transition:.4s;

}

.service-card:hover i{

    transform:rotate(10deg) scale(1.2);

    color:#00b4ff;

}

.service-card h4{

    font-weight:600;

    margin-bottom:15px;

}

.service-card p{

    color:#666;

}

/* ================= COUNTER ================= */

.counter{

    background:linear-gradient(135deg,#003366,#0077ff);

    color:#fff;

}

.counter-number{

    font-size:55px;

    font-weight:700;

}

.counter p{

    font-size:18px;

}

/* ================= PARTNERS ================= */

.partner-logo{

    max-height:90px;

    transition:.4s;

    filter:grayscale(100%);

}

.partner-logo:hover{

    filter:none;

    transform:scale(1.15);

}

/* ================= ADS ================= */

.google-ad{

    border:2px dashed #bbb;

    background:#fafafa;

    padding:35px;

    border-radius:10px;

    color:#666;

}

/* ================= CONTACT ================= */

.contact-box{

    background:#fff;

    padding:35px;

    border-radius:15px;

    box-shadow:var(--shadow);

}

.contact-box i{

    color:#0077ff;

    margin-right:10px;

}

form input,

form textarea{

    border-radius:10px !important;

    padding:14px !important;

}

form input:focus,

form textarea:focus{

    border-color:#0077ff !important;

    box-shadow:0 0 10px rgba(0,119,255,.2);

}

/* ================= FOOTER ================= */

footer{

    background:#061529;

}

footer h4{

    color:#fff;

}

footer p{

    color:#ddd;

}

footer a{

    transition:.4s;

}

footer a:hover{

    color:#00b4ff !important;

    transform:translateY(-4px);

}

/* ================= ANIMATION ================= */

.fade-up{

    animation:fadeUp 1s ease;

}

@keyframes fadeUp{

    from{

        transform:translateY(40px);

        opacity:0;

    }

    to{

        transform:translateY(0);

        opacity:1;

    }

}

.float{

    animation:float 4s ease-in-out infinite;

}

@keyframes float{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-15px);

    }

    100%{

        transform:translateY(0);

    }

}

/* ================= SCROLLBAR ================= */

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#ddd;

}

::-webkit-scrollbar-thumb{

    background:#0077ff;

}

::-webkit-scrollbar-thumb:hover{

    background:#003366;

}

/* ================= RESPONSIVE ================= */

@media(max-width:991px){

.hero h1{

font-size:45px;

}

.hero p{

font-size:18px;

}

.navbar{

background:#00264d;

}

}

@media(max-width:768px){

.hero{

text-align:center;

}

.hero h1{

font-size:36px;

}

.hero p{

font-size:16px;

}

.counter-number{

font-size:40px;

}

.partner-logo{

margin-bottom:30px;

}

}

@media(max-width:576px){

.hero h1{

font-size:30px;

}
/* ===============================
   HERO SECTION
================================ */

.hero{

position:relative;

min-height:100vh;

display:flex;

align-items:center;

background-size:cover;

background-position:center;

overflow:hidden;

}


/* Dark Overlay */

.hero::before{

content:"";

position:absolute;

top:0;
left:0;

width:100%;
height:100%;

background:rgba(0,0,0,0.45);

z-index:1;

}


/* Hero Content */

.hero .container{

position:relative;

z-index:5;

}


/* Buttons */

.hero .btn{

position:relative;

z-index:10;

pointer-events:auto;

}


/* Particles */

#particles-canvas{

position:absolute;

top:0;
left:0;

z-index:0;

pointer-events:none;

}






.btn{

width:100%;

margin-bottom:10px;

}

.service-card{

padding:25px;

}

}

/* ================= PRELOADER ================= */

#preloader{

position:fixed;

width:100%;

height:100%;

background:#fff;

display:flex;

justify-content:center;

align-items:center;

z-index:99999;

}

.loader{

width:60px;

height:60px;

border:6px solid #ddd;

border-top:6px solid #0077ff;

border-radius:50%;

animation:spin 1s linear infinite;

}

@keyframes spin{

100%{

transform:rotate(360deg);

}

}

/* ================= BACK TO TOP ================= */

#topBtn{

position:fixed;

bottom:30px;

right:30px;

background:#0077ff;

color:#fff;

width:50px;

height:50px;

border:none;

border-radius:50%;

display:none;

cursor:pointer;

box-shadow:0 8px 20px rgba(0,0,0,.3);

transition:.4s;

}

#topBtn:hover{

background:#003366;

transform:scale(1.1);

}