/*
Theme Name: Twenty Twenty Child
Theme URL: /
Description: Twenty Twenty Child Theme
Author: WPAmaNuke
Author URL: /
Template: twentytwenty
Version: 1.0.0
Text Domain: twentytwenty-child
*/ 
/* Custom CSS goes after this line */

/*h2.entry-title {
	background-color:#ff0000;
}
h1.entry-title {
	background-color:#ff0000;	
}*/
.cm-espacios .cm-filtro{
    display: flex;
    gap: 30px;
    padding-bottom: 30px;
    justify-content: center;
}
.cm-espacios .cm-filtro .cm-col select{
    display: block;
    color: #b5b5b5;
    font-weight: 500;
    font-size: 24px;
    text-align: center;
    outline: none;
    padding: 6px 10px;
    max-width: 240px;
    border: 1px solid #b5b5b5;
    appearance: none;
    -webkit-appearance: none;
}
.cm-espacios .cm-lista{
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(4, 1fr);
}
.cm-espacios .cm-lista .item{
    background-color: #E6F2EB;
}
.cm-espacios .cm-lista .item h4{
    margin: 0;
    color: #007636;
    font-size: 20px;
    font-weight: 700;
}
.cm-espacios .cm-lista .item .cover{
    position: relative;
    min-height: 180px;
}
.cm-espacios .cm-lista .item .image{
    background-position: center;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
.cm-espacios .cm-lista .item .content{
    padding: 18px;
}
.cm-espacios .cm-lista .item .content .details{
    display: grid;
    gap: 10px;
    padding: 15px 0;
    grid-template-columns: 100%;
}
.cm-espacios .cm-lista .item .content .details p{
    margin: 0;
    font-size: 16px;
}
.cm-espacios .cm-lista .item .content a{
    color: #007636;
    font-size: 14px;
    font-weight: 700;
    text-decoration: underline;
}
.cm-espacios .cm-lista .item .content a i::before{
    font-size: 12px;
}
.cm-espacios .cm-lista .empty{
    background-color: #f8f8f8;
    grid-column: 1/5;
    text-align: center;
    font-size: 14px;
    color: #4a4a4a;
    padding: 10px;
    font-weight: 500;
}

/* POP UP */

.cm-detail{
    background-color: rgb(0 0 0 / 50%);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    animation-duration: .4s;
    animation-name: fadeIn;
    animation-fill-mode: forwards;
}
.cm-detail.close{
    animation-name: fadeOut;
}
@keyframes fadeIn{
    0%{
        opacity: 0;
        visibility: hidden;
    }
    100%{
        opacity: 1;
        visibility: visible;
    }
}
@keyframes fadeOut{
    0%{
        opacity: 1;
        visibility: visible;
    }
    100%{
        opacity: 0;
        visibility: hidden;
    }
}
.cm-detail .box{
    background-color: #fff;
    width: 100%;
    max-width: 1024px;
}
.cm-detail .box .detail-cover{
    position: relative;
    display: flex;
    z-index: 1;
    min-height: 150px;
    align-items: center;
    justify-content: center;
}
.cm-detail .box .detail-cover::before{
    background-color: rgb(0 0 0 / 50%);
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.cm-detail .box .detail-cover .image{
    background-size: cover;
    background-position: center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
.cm-detail .box .detail-cover h2{
    position: relative;
    color: #fff;
    margin: 0;
    z-index: 1;
    font-size: 28px;
}
.cm-detail .box .detail-cover button{
    background-color: transparent;
    position: absolute;
    padding: 0;
    top: 15px;
    right: 15px;
    z-index: 1;
    font-size: 22px;
}
.cm-detail .box .detail-content{
    display: flex;
    gap: 50px;
    padding: 30px;
    justify-content: center;
}
.cm-detail .box .detail-content .col{

}
.cm-detail .box .detail-content h4{
    font-size: 22px;
    margin: 0;
    margin-bottom: 15px;
}
.cm-detail .box .detail-content ul{
    margin: 0;
    padding: 0;
}
.cm-detail .box .detail-content ul li{
    list-style: none;
    display: block;
    margin: 0;
    font-size: 16px;
    padding: 8px 0;
    border-bottom: 1px solid #ddd;
}
@media (max-width: 1180px){
    .cm-espacios .cm-lista{
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (max-width: 1024px){
    .cm-detail{
        padding: 0 20px;
    }
    .cm-detail .box .detail-cover{
        min-height: 120px;
    }
    .cm-detail .box .detail-cover h2{
        font-size: 22px;
    }
    .cm-detail .box .detail-content h4{
        font-size: 18px;
    }
    .cm-detail .box .detail-content ul li{
        font-size: 14px;
    }
}
@media (max-width: 900px){
    .cm-espacios .cm-filtro{
        gap: 20px;
    }
    .cm-espacios .cm-filtro .cm-col select{
        font-size: 18px;
    }
    .cm-espacios .cm-lista{
        gap: 20px;
        /* grid-template-columns: repeat(2, 1fr); */
    }
    .cm-espacios .cm-lista .item h4{
        font-size: 16px;
    }
    .cm-espacios .cm-lista .item .content .details p{
        font-size: 14px;
    }
    .cm-espacios .cm-lista .item .content a{
        font-size: 12px;
    }
}
@media (max-width: 768px){
    .cm-detail{
        padding: 15px;
    }
    .cm-detail .box{
        height: 100%;
    }
    .cm-espacios .cm-filtro .cm-col select{
        font-size: 16px;
    }
    .cm-espacios .cm-lista{
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 580px){
    .cm-espacios .cm-filtro{
        gap: 10px;
        flex-direction: column;
    }
    .cm-espacios .cm-filtro .cm-col select{
        width: 100%;
        max-width: 100%;
    }
    .cm-detail .box .detail-content{
        display: block;
        max-height: calc(100vh - 150px);
        overflow-y: scroll;
    }
}
@media (max-width: 520px){
    .cm-espacios .cm-lista{
        grid-template-columns: repeat(1, 1fr);
    }
}