*{

margin:0;
padding:0;
box-sizing:border-box;

}

body{

background:#07070A;

font-family:'Poppins',sans-serif;

color:white;

display:flex;

overflow-x:hidden;

}

.background{

position:fixed;

width:100%;
height:100%;

background:

radial-gradient(circle at top,#6d28d988,transparent 45%),

radial-gradient(circle at bottom,#3b82f688,transparent 35%),

#07070A;

z-index:-1;

}

/* SIDEBAR */

.sidebar{

width:250px;

height:100vh;

background:#111117;

border-right:1px solid rgba(255,255,255,.08);

padding:35px;

position:fixed;

}

.logo h1{

color:#9b5cff;

font-size:30px;

}

.logo p{

color:#888;

margin-bottom:40px;

}

.sidebar nav{

display:flex;

flex-direction:column;

gap:12px;

}

.sidebar a{

text-decoration:none;

color:#aaa;

padding:14px;

border-radius:10px;

transition:.35s;

}

.sidebar a:hover{

background:#7c3aed;

color:white;

box-shadow:0 0 18px #7c3aed;

}

.active{

background:#7c3aed;

color:white;

}

/* CONTENIDO */

.container{

margin-left:250px;

padding:40px;

width:100%;

}

/* HEADER */

header{

display:flex;

justify-content:space-between;

align-items:center;

margin-bottom:40px;

}

header input{

width:320px;

padding:14px;

background:#1b1b22;

border:none;

outline:none;

color:white;

border-radius:10px;

}

header input:focus{

box-shadow:0 0 15px #8b5cf6;

}

/* HERO */

.hero{

height:320px;

border-radius:20px;

background:

linear-gradient(

90deg,

rgba(0,0,0,.9),

rgba(0,0,0,.3)

),

url("../img/banner.jpg");

background-size:cover;

background-position:center;

display:flex;

align-items:center;

padding:50px;

margin-bottom:40px;

}

.hero h1{

font-size:45px;

margin-bottom:15px;

}

.hero p{

color:#d4d4d4;

max-width:500px;

margin-bottom:25px;

}

.hero button{

padding:15px 35px;

background:#7c3aed;

color:white;

border:none;

border-radius:10px;

cursor:pointer;

transition:.3s;

font-size:16px;

}

.hero button:hover{

transform:scale(1.05);

box-shadow:0 0 30px #7c3aed;

}

/* TITULO */

.section-title{

margin-bottom:25px;

font-size:28px;

}

/* TARJETAS */

.cards{

display:grid;

grid-template-columns:repeat(auto-fill,minmax(240px,1fr));

gap:25px;

}

.card{

background:#17171f;

border-radius:18px;

overflow:hidden;

transition:.35s;

cursor:pointer;

}

.card:hover{

transform:translateY(-10px);

box-shadow:0 0 30px #7c3aed;

}

.card img{

width:100%;

height:330px;

object-fit:cover;

}

.card-info{

padding:20px;

}

.card h3{

margin-bottom:10px;

}

.card p{

color:#999;

margin-bottom:18px;

}

.card a{

text-decoration:none;

display:inline-block;

padding:12px 25px;

background:#7c3aed;

color:white;

border-radius:8px;

transition:.3s;

}

.card a:hover{

background:#9f67ff;

}