body{
    font-family: "Segoe UI", Arial, sans-serif;
    background:#f4f6f8;
}

.navbar{
    transition:.3s;
}

.navbar-brand{
    font-weight:bold;
    font-size:1.4rem;
}

.dropdown-menu{
    border-radius:12px;
}

footer{
    font-size:.9rem;
}
.hero .carousel-item img{
    height:650px;
    object-fit:cover;
}


.carousel-caption{
    background:rgba(0,0,0,.45);
    padding:25px;
    border-radius:15px;
}


.carousel-caption h1{
    font-size:3rem;
    font-weight:700;
}
.noticias{
    background:#fff;
}


.noticia-card{

    border:none;
    border-radius:15px;
    overflow:hidden;
    transition:.3s;

}


.noticia-card:hover{

    transform:translateY(-8px);

}


.noticia-card .card-title{

    color:#1b4d89;
    font-weight:700;

}


.fecha-noticia{

    color:#777;
    font-size:.9rem;

}


.noticia-card .btn{

    border-radius:20px;

}

.obras{
    background:#f5f7fa;
}


#mapa-obras{

    width:100%;
    height:550px;
    border-radius:20px;
    box-shadow:0 5px 20px rgba(0,0,0,.15);

}


.popup-obra h5{

    color:#1b4d89;
    font-weight:bold;

}
.obra-detalle{
    border-radius:20px;
    overflow:hidden;
}


.info-obra{
    background:#f4f6f8;
    padding:20px;
    border-radius:15px;
}


#mapa-detalle{
    height:400px;
    border-radius:15px;
}
.popup-obra{
    width:240px;
}

.popup-obra h5{
    font-weight:700;
}

.popup-obra p{
    font-size:14px;
    color:#555;
}

.popup-obra .btn{
    margin-top:10px;
}
.popup-obra .btn-detalle {
    background-color:#003b73;
    border-color:#003b73;
    color:white;
    font-weight:bold;
}
.obra-detalle{
    border-radius:15px;
}

#mapa-detalle{
    width:100%;
    height:400px;
    border-radius:12px;
    overflow:hidden;
}


.info-obra p{
    margin-bottom:15px;
}
.noticia-detalle{
    border-radius:15px;
}


.fecha-noticia{
    color:#666;
    font-size:0.95rem;
}


.noticia-detalle img{
    border-radius:12px;
}
.noticia-card{
    border-radius:15px;
    overflow:hidden;
    transition:0.3s;
}


.noticia-card:hover{
    transform:translateY(-5px);
    box-shadow:0 10px 25px rgba(0,0,0,.15)!important;
}


.noticia-card img{
    width:100%;
}


.fecha-noticia{
    color:#777;
    font-size:.9rem;
}
