:root{

    --primary:#0D6EFD;

    --secondary:#198754;

    --warning:#FFC107;

    --dark:#1A1A1A;

    --light:#F8F9FA;

    --white:#FFFFFF;

    --shadow:0 15px 35px rgba(0,0,0,.08);

    --radius:15px;

}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{

    font-family:Arial, Helvetica, sans-serif;

    background:#fff;

}

/* NAVBAR */

.navbar{

    background:rgba(13,110,253,.95)!important;

    backdrop-filter:blur(12px);

    padding:15px 0;

    box-shadow:var(--shadow);

}

.navbar-brand{

    font-size:28px;

    font-weight:bold;

}

/* HERO */

.hero{

    min-height:100vh;

    display:flex;

    align-items:center;

    background:linear-gradient(135deg,#0D6EFD,#198754);

    color:white;

}

.hero h1{

    font-size:65px;

    font-weight:bold;

}

.hero p{

    font-size:22px;

}

.hero .btn{

    padding:15px 35px;

    border-radius:50px;

}

/* ESTATÍSTICAS */

.stats{

    margin-top:-70px;

    position:relative;

    z-index:100;

}

.stat-card{

    background:white;

    border-radius:15px;

    padding:35px;

    box-shadow:var(--shadow);

    transition:.3s;

}

.stat-card:hover{

    transform:translateY(-10px);

}

.stat-card h2{

    color:var(--primary);

    font-size:42px;

}

/* TÍTULOS */

.section-title{

    font-size:45px;

    font-weight:bold;

    margin-bottom:20px;

}

.service-card{

    background:white;

    border-radius:20px;

    padding:35px;

    box-shadow:var(--shadow);

    transition:.4s;

    height:100%;

}

.service-card:hover{

    transform:translateY(-12px);

}

.service-card i{

    font-size:55px;

    color:var(--primary);

    margin-bottom:20px;

}

.service-card h4{

    font-weight:bold;

    margin-bottom:15px;

}

/* EVENTOS */

.event-card{

    background:white;

    border-radius:20px;

    overflow:hidden;

    box-shadow:var(--shadow);

    transition:.4s;

    height:100%;

}

.event-card:hover{

    transform:translateY(-12px);

}

.event-card img{

    width:100%;

    height:230px;

    object-fit:cover;

}

/* NEWS */

.news-card{

    background:white;

    border-radius:20px;

    overflow:hidden;

    box-shadow:var(--shadow);

    transition:.4s;

    height:100%;

}

.news-card:hover{

    transform:translateY(-10px);

}

.news-card img{

    width:100%;

    height:220px;

    object-fit:cover;

}

.partner-logo{

    max-height:90px;

    opacity:.7;

    transition:.4s;

}

.partner-logo:hover{

    opacity:1;

    transform:scale(1.08);

}

footer{

    background:#111;

    color:white;

}
