/* Cabecera con imagen de fondo y título superpuesto */
.card {
    position: relative;
    display: block;
    width: 100%;
    height: 400px;
    border-radius: 20px;
    overflow: hidden;
    text-decoration: none;
    margin-bottom: 30px;
    box-shadow: 0 20px 30px rgba(0, 0, 0, 0.5);
    transition: transform 0.3s ease;
}
.card:hover {
    transform: scale(1.01);
}
/* Overlay oscuro sobre la imagen */
.card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    transition: background 0.3s ease;
    z-index: 2;
}

.card:hover::before {
    background: rgba(0, 0, 0, 0.6);
}

.img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

/* Título superpuesto (ahora dentro de .card) */
.texto-titulo {
    position: absolute;
    bottom: 30px;
    left: 30px;
    right: 30px;
    z-index: 3;
    color: white;
    font-size: 2.5rem;
    font-weight: 700;
    text-shadow: 3px 3px 6px rgba(0,0,0,0.7);
    background: linear-gradient(to right, rgba(0,0,0,0.7), transparent);
    padding: 20px 30px;
    border-radius: 10px;
    transition: all 0.3s ease;
}
.card:hover .texto-titulo {
    transform: translateY(-10px);
    text-shadow: 0 0 20px rgba(255, 170, 0, 0.5);
}

h1{
    font-size:3.0rem;
    margin-bottom:30px;
    color:#b30000;
    font-weight:600;
    border-left:6px solid #b30000;
    padding-left:15px;
}

h2{
    margin-top:50px;
    margin-bottom:20px;
    font-size:1.5rem;
    color:#003366;
    border-bottom:2px solid #003366;
    padding-bottom:8px;
}

.highlight{
    background:#ffe5e5;
    padding:20px;
    border-left:5px solid #b30000;
    margin:30px 0;
    font-weight:500;
}

.warning{
    background:black;
    padding:20px;
    border-left:5px solid #003366;
    margin:30px 0;
}

table{
    width:100%;
    border-collapse:collapse;
    margin-top:20px;
    font-size:1.95rem;
    background:white;
    box-shadow:0 5px 20px rgba(0,0,0,0.05);
}
th{
    background:#003366;
    color:white;
    padding:15px;
    text-align:left;
    font-weight:600;
}
td{
    padding:15px;
    border-bottom:1px solid #ddd;
}
tr:hover{
    background:#f1f7ff;
}

.conclusion{
    margin-top:50px;
    padding:25px;
    background:#fff;
    border-left:6px solid #b30000;
    box-shadow:0 5px 20px rgba(0,0,0,0.05);
    font-weight:500;
}

@media(max-width:768px){
    h1{font-size:2rem;}
    .container{padding:40px 20px;}
}

p{
    margin-bottom:20px;
	font-size:2.05rem;
	color: white;
}