:root { font-family: Arial, Helvetica, sans-serif; color: #233548; background: #fbfcfe; }
* { box-sizing: border-box; }
body { margin: 0; }
a { color: inherit; }
.cabecera { background: #fff; border-bottom: 1px solid #e4e9f0; }
.cabecera-interior { max-width: 1240px; margin: auto; padding: 16px 30px; display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.marca { display: flex; align-items: center; gap: 11px; }
.marca strong { display: block; font-size: 17px; color: #153c5c; }
.marca span:not(.emblema) { display: block; font-size: 12px; color: #5a6b7c; margin-top: 3px; }
.emblema { width: 44px; height: 44px; border-radius: 50%; background: #1e668b; color: white; font-size: 27px; display: grid; place-items: center; }
nav a { font-size: 14px; text-decoration: none; color: #174968; }
.contenido { max-width: 1240px; margin: auto; padding: 47px 30px 65px; }
h1 { text-align: center; font-size: clamp(26px, 3.6vw, 38px); margin: 0 0 8px; color: #123d5d; }
.subtitulo { text-align: center; margin: 0; font-size: 18px; color: #596b7c; }
.instrucciones { text-align: center; margin: 19px 0 42px; font-size: 14px; color: #6d7c8a; }
.biblioteca { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 39px 25px; justify-items: center; }
.libro { min-width: 0; width: 100%; max-width: 200px; text-align: center; }
.portada-enlace { display: block; width: 100%; aspect-ratio: 2 / 3; box-shadow: 0 5px 13px rgba(15,37,58,.14); border-radius: 3px; overflow: hidden; background: #e9eef2; transition: transform .15s,box-shadow .15s; }
.portada-enlace:hover { transform: translateY(-3px); box-shadow: 0 8px 18px rgba(15,37,58,.23); }
.portada-enlace img { width: 100%; height: 100%; object-fit: contain; display: block; }
.libro h2 { font-size: 15px; margin: 13px 0 7px; }
.abrir { display: inline-block; color: #166780; font-size: 14px; text-decoration: none; padding: 4px; }
.abrir:hover { text-decoration: underline; }
footer { text-align: center; border-top: 1px solid #e4e9f0; background: white; padding: 24px; font-size: 12px; color: #617183; }
@media(max-width: 930px) { .biblioteca { grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media(max-width: 570px) { .contenido { padding: 32px 18px 45px; } .biblioteca { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 28px 15px; } .cabecera-interior { padding: 12px 18px; } .marca strong { font-size: 14px; } .marca span:not(.emblema) { font-size: 10px; } .emblema { width: 36px; height: 36px; font-size: 22px; } .instrucciones { margin-bottom: 30px; } }
/* Encabezado de la biblioteca */
.cabecera .marca strong {
    font-size: 24px !important;
}

.cabecera .marca span {
    font-size: 15px !important;
}

.cabecera nav a {
    font-size: 20px !important;
    font-weight: 500 !important;
}
/* Separación de las pestañas del menú superior */
.cabecera nav {
    display: flex;
    align-items: center;
    gap: 25px;
    flex-wrap: wrap;
}