@font-face {
    font-family: "Geometria";
    src: url("./fonts/Geometria.ttf") format("truetype");
    font-weight: normal;
    font-style: normal;
}

body {
    font-family: "Geometria", sans-serif;
    margin: 0;
    padding: 0;
    background-image: url('./img/fondo2.jpg');
    background-repeat: repeat;
}

header {
    background-image: url('./img/portal4.jpg');
    background-repeat: no-repeat; 
    background-size: cover;
    background-position: center;
    color: #fff;
    padding: 5%;
    width: 100%;
    max-width: 100%;
    height: 300px;
}

.negrita {
    letter-spacing: 0.1em;
    font-weight: 800;
}
.mingob {
    letter-spacing: 0.1em;
    margin-top: 0.5em !important;
}

.accion {
    text-align: center;
    font-size: 1.8em;
    margin-top: 2%;
    color: #000000;
    font-weight: bold;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.4);
}
@media (max-width: 600px) {
    .accion {
        line-height: 2;
        text-align: center;
        font-size: 1.3em;
    }
}

.container {
    display: flex;
    flex-wrap: wrap;
    justify-content:space-evenly;
    align-items: center;
    padding: 4%;
    perspective: 1000px;
    align-items:stretch;
    margin-top: 0em;
    max-width: 100%;
    overflow-x: hidden;
    color: #0e0d0d;
}

.container a video {
    display: none;
}

.container figure {
    flex: 0 0 calc(33.333% - 2%);
    margin-bottom: 3em;
}

.imgtran {
    width: 100%;
    height: auto;
    border-radius: 5%;
    transition: transform 0.3s ease;
    transform: rotateY(90deg);    
}
.imgtran:hover {
    transform: scale(1.1);
}
@media screen and (min-width:769px) {
    .imgtran{
        padding-left: 0.8em;
        padding-right: 0.8em;
    }
}

.description {
    font-size: 14px;
    margin-top: 1.5em;
    margin-bottom: 2em;
    text-align: justify;
}
@media screen and (min-width:769px) {
    .description{
        padding-left: 0.8em;
        padding-right: 0.8em;
    }
}

.subtitles {
    text-align: center;
    font-size: 15px;
    margin-top: 1.5em;
    font-weight:600;
}

/* Estilos para pantallas pequeñas */
@media (max-width: 768px) {
    .container figure {
        flex: 0 0 calc(100% - 2%);
    }
}

@media (max-width: 576px) {
    .container figure {
        flex: 0 0 calc(100% - 2%);
    }
}

/* Estilos para pantallas grandes */
@media screen and (max-width: 768px) {
    figure {
        margin-bottom: 2rem !important; 
    }
    .container {
        padding: 2.4em;
    }
}

.portalED {
    background-color: #ffffff;
    color:  #14293f;
    padding: 5em;
}

.portalED h1 {
    margin: 0;
    font: size 100%;
    font-family: Century Gothic;
    text-align: center;
}
.portalED h2 {
    margin: 0;
    font: size 100%;
    font-family: Century Gothic;
    text-align: center;
}

.floating-menu {
    position:fixed;
    bottom: 45%;
    right: 0.5em;
    z-index: 1000;
}
@media screen and (max-width: 992px) {
    .floating-menu {
        opacity: 0.6;
    }
}

.floating-menu ul {
    list-style:none;
    padding: 0;
    margin: 0;
}

.floating-menu ul li {
    margin-bottom: 3px;
}

.floating-menu ul li a {
    display:block;
    padding: 0.8rem;
    text-align: center;
    background-color: #ffffff;
    color: #003d66;
    text-decoration: none;
    border-radius: 50px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.8);
}

.floating-menu ul li a:hover {
    background-color: #7d93a1e3;
}

footer {
    background-color: #14293f;
    padding: 1%;
    text-align: center;
}

footer p {
    margin: 0;
}

.mingobf {
    color: white;
    text-align: center;
    font-size: 0.6em
}