*,
*::before,
*::after {
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

:root{
    --amarillo: #ffd103;
    --gris: #3c3c3b;
    --verde: #009539;
}

html {
	min-height: 100%;
}

body{
    font-family: Tahoma, Arial, sans-serif;
    color: var(--gris);
}

a{
    transition: all .3s ease-in;
}

p{
    margin: 0 0 1rem;
    font-size: .92rem;
    line-height: 1.3em;
    text-align: justify;
}

img{
    margin: 0 0 1rem 0;
    height: auto;
    max-width: 100%;
    width: 100%;
}

blockquote {
    position: relative;
    margin: 2rem 0;
    padding: 2rem 1.875rem;
    font-size: 30px;
    line-height: 1.2em;
    color: var(--verde);
    text-align: center;
}

blockquote::before, blockquote::after {
    position: absolute;
    width: 45px;
    line-height: 0;
}

blockquote::before {
    top: 0px;
    left: 0;
    content: url('../img/comillas-1.svg');
}

blockquote::after {
    bottom: 0px;
    right: 0;
    content: url('../img/comillas-2.svg');
}

fieldset{
    border: 3px solid var(--amarillo);
}

legend{
    padding: .5rem;
    font-weight: 600;
    color: var(--verde);
}

figure{
    display: flex;
    flex-direction: column;
    margin: 0;
}

figure img{
    margin-bottom: 0;
}

figcaption{
    display: inline-flex;
    align-items: center;
    background-color: var(--amarillo);
    min-height: 56px;
    padding: .4rem .8rem;
    vertical-align: center;
    font-size: .82rem;
    line-height: 1.4em;
}

.container-principal{
    display: grid;
    grid-template-columns: 1fr;
    grid-template-areas: "categoria" "menu" "contenido" ;
    grid-gap: 1.5rem;
    border: 1px solid #f4f4f4;
    margin: 1rem auto;
    max-width: 1199px;
    width: 100%;
    padding: 0 1.5rem 1.5rem;
}

.categorie{
    margin: auto 0 auto auto;
    grid-area: categoria;
}

.categorie__title {
    display: inline-block;
    border-radius: 0 0 15px 15px;
    -webkit-border-radius: 0 0 15px 15px;
    -moz-border-radius: 0 0 15px 15px;
    -ms-border-radius: 0 0 15px 15px;
    -o-border-radius: 0 0 15px 15px;
    background: var(--amarillo);
    padding: 1rem 2rem;
    font-size: 1.3rem;
    font-weight: 600;
    color: var(--gris);
    text-align: center;
}

.menu{
    padding-right: 1.5rem;
    grid-area: menu;
}

.contenido{
    grid-area: contenido;
}

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

.menu-principal > li{
    margin-bottom: 1rem;    
    margin-left: -1.5rem;
}

.menu-principal__link{
    display: inline-block;
    border-radius: 0 25px 25px 0;
    background-color: var(--amarillo);
    width: 100%;
    padding: .5rem 1rem;
    text-decoration: none;
    line-height: 1.2em;
    color: var(--gris);
}

.active .menu-principal__link,
.menu-principal__link:hover{
    background-color: var(--verde);
    color: #fff;
}

.submenu{
    margin: 0 0 1rem;
    padding: 0;
    list-style: none;
}

.submenu li{
    border-bottom: 1px dotted #787878;
    padding: .5rem 1rem;    
}

.submenu li:last-child{
    border-bottom: 0;
}

.submenu li a{
    text-decoration: none;
    font-size: 14px;
    color: var(--gris);
}

.submenu li a.active{
    color: var(--verde);
}

.submenu li a:hover{
    color: var(--verde);
}

.article__title{
    margin-top: 0;
    text-transform: uppercase;
    letter-spacing: 0;
    font-size: 24px;
    line-height: 1.2em;
    font-weight: 400;
    color: var(--verde);
    text-wrap: balance;
}

.article__content{
    margin-bottom: 1rem;
}

.article__content2{
    display: flex; 
    align-items: center; 
    justify-content: center; 
    flex-wrap: wrap; 
    gap: 2rem;
}

.article__content2 > *{
    flex: 0 1 400px;
}

.image-nota1,
.image-nota2,
.image-nota3{
    position: relative;
    display: flex;
    width: 100%;   
}

.image-nota1{
    height: 250px;
}

.image-nota2,
.image-nota3{
    height: 300px;
}

.image-nota1 img,
.image-nota2 img,
.image-nota3 img{
    object-fit: cover;   
}

.image-nota1 img{
    object-position: center 20%;
}

.image-nota2 img{
    object-position: center top;
}

.image-nota3 img{
    object-position: center 10%;
}

.ceo-leyenda{
    display: flex;
    flex-direction: column;
    flex-wrap: no-wrap;
}

.ceo-leyenda__image-2{
    margin: auto;
    max-height: 369px;
    max-width: 453px;
    width: 100%;
}

.ceo-leyenda__leyenda{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin: auto;
    background-color: var(--verde);
    max-width: 380px;
    width: 100%;
    padding: 10px 30px;
    color: #fff;
}

.ceo-leyenda__leyenda-nombre{
    margin: 0;
    font-size: 20px;
    flex: 1 1 120px;
    text-align: center;
}

.ceo-leyenda__leyenda-cargo{
    margin: 0;
    font-size: 13px;
    line-height: 1.4em;
    flex: 1 1 120px;
    text-align: center;
}

.fieldset__ul{
    padding-left: 1.5rem;
}

.fieldset__ul li::marker{
    color: var(--verde);
}

.alert--block{
    background: var(--verde);
    border-radius: 10px;
    padding: .8rem 1rem;
    text-align: center;
    margin-top: 1.6rem;
}

.alert--block p{
    margin: 0;
    text-align: center;
    color: #fff
}

.alert--block a{
    color: #fff;
    text-align: center;
}

@media screen and (min-width: 481px){
    .ceo-leyenda__leyenda-nombre{
        padding-right: 1rem;
        text-align: right;
    }

    .ceo-leyenda__leyenda-cargo{
        border-left: 1px solid #fff;
        padding-left: 1rem;
        text-align: left;
    }
}

@media screen and (min-width: 800px){
    .container-principal{
        grid-template-columns: 1fr 3fr;
        grid-template-areas: "categoria categoria" "menu contenido" ;
    }

    .article__title{
        font-size: 2.24rem;
    }

    .article__content{
        columns: 1;
    }

    .menu{
        border-right: 1px solid #f4f4f4;
    }
}

@media screen and (min-width: 1000px){
    .container-principal{
        grid-template-columns: 1fr 4fr;
        grid-template-areas: "categoria categoria" "menu contenido" ;
    }

    .article__content{
        letter-spacing: .05rem;
        columns: 2;
    }

    .article__content--full{
        columns: 1;
    }

    .image-nota1,
    .image-nota2,
    .image-nota3{
        height: auto;
    }

    .image-nota1 img,
    .image-nota2 img,
    .image-nota3 img{
        object-position: center;
    }

}