*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:Arial,Helvetica,sans-serif;
}

body{
    background:#f4f4f4;
}

header{

    background:#1B5E20;
    color:white;

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:18px 40px;

}

.logo{

    display:flex;

    align-items:center;

}

.logo img{

    height:60px;

    width:auto;

}

.logo h2{

    color:white;

    font-size:22px;

}

nav a{

    color:white;
    text-decoration:none;
    margin-left:25px;

}

.banner{

    position:relative;

    height:500px;

    background:white;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    overflow:hidden;

    text-align:center;

}

.banner::before{

    content:"";

    position:absolute;

    width:500px;

    height:500px;

    background:url("../img/logos/logo.png") no-repeat center;

    background-size:contain;

    opacity:.08;

    z-index:0;

}

.banner h1,
.banner p,
.banner button{

    position:relative;

    z-index:2;

}

.banner h1{

    font-size:50px;

}

.banner p{

    margin:20px;

    font-size:22px;

}

.banner button{

    padding:15px 40px;

    border:none;

    background:#FFC107;

    border-radius:8px;

    cursor:pointer;

    font-size:18px;

}

.destacadas{

    padding:50px;

}

.destacadas h2{

    text-align:center;

    margin-bottom:40px;

}

.contenedor{

    display:flex;

    justify-content:center;

    gap:30px;

}

.card{

    width:300px;

    background:white;

    border-radius:12px;

    overflow:hidden;

    box-shadow:0 4px 10px rgba(0,0,0,.15);

}

.foto{

    height:180px;

    background:#c8e6c9;

}

.card h3{

    padding:15px;

}

.card p{

    padding:0 15px 15px;

}

.card button{

    margin:15px;

    padding:12px;

    width:90%;

    border:none;

    background:#1B5E20;

    color:white;

    border-radius:6px;

}

footer{

    margin-top:50px;

    background:#1B5E20;

    color:white;

    text-align:center;

    padding:20px;

}

.logo{

    text-align:center;

    margin-bottom:25px;

}

.logo img{

    width:180px;
    max-width:100%;
    height:auto;
    display:block;
    margin:0 auto 20px auto;

}

.logo h1{

    color:#1B5E20;

    margin-bottom:8px;

}

.logo p{

    color:#666;

}

.progreso{

    display:flex;

    align-items:center;

    justify-content:center;

    margin:30px 0 40px;

}

.paso{

    width:45px;

    height:45px;

    border-radius:50%;

    background:#CCC;

    color:white;

    display:flex;

    justify-content:center;

    align-items:center;

    position:relative;

    font-weight:bold;

}

.paso span{

    position:absolute;

    top:55px;

    width:120px;

    text-align:center;

    left:50%;

    transform:translateX(-50%);

    color:#666;

    font-size:14px;

}

.paso.activo{

    background:#1B5E20;

}

.linea{

    width:90px;

    height:4px;

    background:#CCC;

}

.contenedor-admin{

    width:90%;
    max-width:900px;

    margin:40px auto;

    background:white;

    padding:30px;

    border-radius:15px;

    box-shadow:0 10px 25px rgba(0,0,0,.15);

}