

/* RESET */
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:Arial, Helvetica, sans-serif;
    background:#f5f5f5;
    color:#333;
}

/* HEADER */
.header{
    background:#551A8B;
    color:#fff;
    padding:20px;
    text-align:center;
}

.header h1{
    font-size:2.5rem;
}

.header p{
    margin-top:10px;
}

/* MENU */
.menu{
    background:#3e1266;
}

.menu ul{
    list-style:none;
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
}

.menu ul li{
    margin:0;
}

.menu ul li a{
    display:block;
    padding:15px 20px;
    color:#fff;
    text-decoration:none;
    transition:.3s;
}

.menu ul li a:hover{
    background:#6d28a8;
}

/* HERO */
.hero{
    background:linear-gradient(135deg,#551A8B,#7B2CBF);
    color:white;
    text-align:center;
    padding:80px 20px;
}

.hero h2{
    font-size:2.8rem;
    margin-bottom:15px;
}

.hero p{
    max-width:700px;
    margin:auto;
    line-height:1.7;
}

.btn{
    display:inline-block;
    margin-top:25px;
    background:#fff;
    color:#551A8B;
    padding:12px 25px;
    text-decoration:none;
    border-radius:50px;
    font-weight:bold;
}

/* CATEGORIAS */
.container{
    width:90%;
    max-width:1200px;
    margin:50px auto;
}

.section-title{
    text-align:center;
    margin-bottom:40px;
    color:#551A8B;
    font-size:2rem;
}

.grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:25px;
}

.card{
    background:white;
    border-radius:15px;
    padding:25px;
    box-shadow:0 5px 15px rgba(0,0,0,.1);
    transition:.3s;
}

.card:hover{
    transform:translateY(-8px);
}

.card h3{
    color:#551A8B;
    margin-bottom:15px;
}

.card h3 a {
    color: #551A8B;
    text-decoration: none;
}

.card ul{
    list-style:none;
}

.card ul li{
    padding:6px 0;
    border-bottom:1px solid #eee;
}

.card ul li a {
    text-decoration: none;
    color: #333;
}

/* DESTAQUES */
.destaques{
    background:white;
    padding:60px 20px;
    margin-top:50px;
}

.lista-destaques{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:20px;
}

.item{
    background:#fafafa;
    border-left:5px solid #551A8B;
    padding:20px;
    border-radius:10px;
}

.item2{
    background:#fafafa;
    border-left:5px solid #551A8B;
    padding:20px;
    border-radius:10px;
}

.item2 a {
    text-decoration: none;
    color: #333;
}

/* FOOTER */
.footer{
    background:#551A8B;
    color:white;
    text-align:center;
    padding:30px;
    margin-top:50px;
}

@media(max-width:768px){

.hero h2{
    font-size:2rem;
}

.header h1{
    font-size:2rem;
}

}

