/* Bloques */

.block{
    display: flex;
    flex-direction: column;
}

.block > .container{
    margin: 3rem auto 3rem auto;
}

/* Titulo de los bloques */

.block-title {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 1.5rem;
}
.block-title h2 {
    margin: 0;
}

.block-title .ico a,
.block-title .ico button{
    font-size: 1.625rem;
    color: var(--vsf-primary-color);
    background: transparent;
    border: 0;
    padding: 0;
}
.block-title .ico a:not(:last-child),
.block-title .ico button:not(:last-child){
    margin-right: 1.5625rem;
}
.block-title .ico a .far,
.block-title .ico button .far,
.block-title .ico a svg,
.block-title .ico button svg{
    font-weight: 500;
}
.block-title .ico a:hover,
.block-title .ico button:hover {
    text-decoration: none;
}
.block-title .ico a.active .far,
.block-title .ico button.active .far,
.block-title .ico a:hover .far,
.block-title .ico button:hover .far,
.block-title .ico a.active svg,
.block-title .ico button.active svg,
.block-title .ico a:hover svg,
.block-title .ico button:hover svg{
    font-weight: 700;
}

.block-title .view-all {
    border-radius: 6.25rem;
    padding: 0.53125rem 1.25rem;
    color: #000;
    display: flex;
    align-items: center;
    transition: 0.3s all ease;
}
.block-title .view-all .far,
.block-title .view-all svg {
    font-size: 1rem;
    margin-right: 0.875rem;
    transition: 0.3s all ease;
}
.block-title .view-all:hover {
    text-decoration: underline;
}


/*Bloque Te ayudamos a...*/
.single-cpt-container .content-section.content-help {
    padding: 1.875rem 1.875rem 0.875rem;
}
.single-cpt-container .content-section.content-help .agency-img {
    display: flex;
    justify-content: center;
    margin-bottom: 1rem;
    border: 1px solid #ededed;
}

.single-cpt-container .content-section.content-help .offer-right {
    display: flex;
    flex-wrap: wrap;
}

.single-cpt-container .content-section.content-help .offer-right .offer-desc .desc {
    /*height: 125px;
    overflow: hidden;*/
}

.single-cpt-container .content-section.content-help .links {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-top: 0.75rem;
    border-top: 2px solid #F1F1F1;
    padding-top: 2.125rem;
}
.single-cpt-container .content-section.content-help .links.no-border{
    margin-top: 0;
    border-top: 0;
    padding-top: 0;
}
.single-cpt-container .content-section.content-help .links .elem {
    display: flex;
    align-items: center;
    padding: 0.46875rem 1.25rem;
    margin: 0 0.7rem 1rem 0;
    border: 2px solid #F1F1F1;
    background-color: white;
    border-radius: 100px;
}

.single-cpt-container .content-section.content-help .links .elem:hover {
    border: 2px solid var(--vsf-primary-color);
    background-color: var(--vsf-primary-color);
    text-decoration: none;
}

.single-cpt-container .content-section.content-help .links .elem .text {
    color: black;
    font-weight: 500;
}

.single-cpt-container .content-section.content-help .links .elem:hover .text {
    color: white;
}

.single-cpt-container .content-section.content-help .links .elem span:before,
.single-cpt-container .content-section.content-help .links .elem svg {
    margin-right: 10px;
}

.single-cpt-container .content-section.content-help .links .elem:hover span:before,
.single-cpt-container .content-section.content-help .links .elem:hover svg {
    color: white;
}

/* Informacion */
.info .menu {
    display: flex;
    margin-bottom: 1.5rem;
}

.info .menu button {
    font-size: 1rem;
    font-weight: 600;
    background-color: #EDEDED;
    color: #666;
    border: 1px solid #E7E7E7;
    padding: 0.875rem 1.5rem;
    margin-right: 1.25rem;
    border-radius: var(--image-border-radius);
    cursor: pointer;
    transition: 0.3s all ease;
}

.info .menu button.active,
.info .menu button:hover {
    background-color: #FEF2E8;
    color: #A75702;
    border: 1px solid #FEF2E8;
    display: flex;
    align-items: center;
}

.info .content-section p{
    word-break: break-word;
}
.info .content-section p:last-child {
    margin-bottom: 0;
}

.info .content-section.has-more .block-content {
    height: auto;
}
.info .content-section.has-more.less .block-content {
    height: 12.5rem;
    overflow: hidden;
}

/*Widgets incluidos*/
.block > .container.include{
    margin: 0 auto 0 auto;
}

.block.widget-include{
    margin-bottom: 2.5rem;
}

.block.widget-include .article-list.single-list article.mode-list:nth-child(2) h2,
.block.widget-include .article-list.single-list article.mode-list:nth-child(3) h2,
.block.widget-include .article-list.single-list article.mode-list:nth-child(4) h2 {
    min-height: 0;
}


/* Galeria */

.swiper-gallery {
    width: 100%;
    overflow: hidden;
    position: relative;
}
.swiper-gallery .swiper-wrapper{
    margin-bottom: 1.5rem;
}
.swiper-gallery .swiper-slide {
    background-position: center;
    background-size: cover;
}

.swiper-gallery .swiper-slide > div{
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-bottom: 56.25%;
}
.swiper-gallery .swiper-slide > div > div,
.swiper-gallery .swiper-slide > div > iframe {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;

    border-radius: var(--image-border-radius);
    overflow: hidden;
}
.swiper-gallery .swiper-slide img{
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}

.swiper-gallery .swiper-footer{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}
.swiper-gallery .swiper-button-prev,
.swiper-gallery .swiper-button-next{
    position: relative;
    left: unset;
    right: unset;
    top: unset;
    margin-top: unset;
    width: 38px;
    height: 38px;
    border: 1px solid #E4E4E4;
    border-radius: 50%;
    background: #fff;
}
.swiper-gallery .swiper-button-next:after,
.swiper-gallery .swiper-button-prev:after{
    font-size: 1rem;
    color: #000;
}
.swiper-gallery .swiper-pagination{
    position: relative;
}
.swiper-gallery .swiper-pagination-bullet{
    background: #B2B2B2;
    margin: 0 0.5rem;
    width: 14px;
    height: 14px;
    opacity: 1;
}
.swiper-gallery .swiper-pagination-bullet-active{
    background: #000;
}

/* Galeria2 */
.single-cpt-container .galery {
    margin-bottom: 2.8125rem;
}

.single-cpt-container .galery2 {
    margin-bottom: 2.8125rem;
}

.single-cpt-container .gallery2{
    margin-bottom: 3.5rem;
}

.gallery2 .slide1{
    margin-bottom: 0.9375rem;
    position: relative;
    padding-bottom: 56.25%;
}
.gallery2 .slide1 > div,
.gallery2 .slide1 iframe,
.gallery2 .slide1 video{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    
    border-radius: var(--image-border-radius);
    overflow: hidden;
}
.gallery2 .slide1 > div > div{
    display: block;
    height: 100%;
    width: 100%;
}
.gallery2 .slide1 img{
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}

.gallery2 .slides{
    display: flex;
    position: relative;
}
.gallery2 .slide2{
    flex: 0 0 calc(33.33% - 0.625rem);
    margin-right: 0.9375rem;
}
.gallery2 .slide3{
    flex: 0 0 calc(33.33% - 0.625rem);
    margin-right: 0.9375rem;
}
.gallery2 .slide4{
    flex: 0 0 calc(33.33% - 0.625rem);
}

.gallery2 .slide2 > div,
.gallery2 .slide3 > div,
.gallery2 .slide4 > div{
    position: relative;
    padding-bottom: 100%;
}
.gallery2 .slide2 > div > div,
.gallery2 .slide3 > div > div,
.gallery2 .slide4 > div > div{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;

    border-radius: var(--image-border-radius);
    overflow: hidden;
}
.gallery2 .slide2 > div > div > div,
.gallery2 .slide3 > div > div > div,
.gallery2 .slide4 > div > div > div{
    display: block;
    height: 100%;
    width: 100%;
}
.gallery2 .slide2 img,
.gallery2 .slide3 img,
.gallery2 .slide4 img{
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}

.gallery2 .slides > button{
    display: flex;
    align-items: center;
    padding: 0.46875rem 1.25rem;
    margin: 0 0.7rem 0 0;
    border: 2px solid #F1F1F1;
    background-color: white;
    border-radius: 100px;
    transition: all 300ms ease;

    position: absolute;
    bottom: 0.9375rem;
    right: 0.9375rem;
}
.gallery2 .slides button .fas,
.gallery2 .slides button svg{
    margin-right: 0.625rem;
}
.gallery2 .slides button .text{
    color: #000;
    font-weight: 500;
}
.gallery2 .slides button:hover {
    border: 2px solid var(--vsf-primary-color);
    background-color: var(--vsf-primary-color);
    text-decoration: none;
}
.gallery2 .slides button:hover .fas,
.gallery2 .slides button:hover svg,
.gallery2 .slides button:hover .text{
    color: #fff;
}

/* Galeria2 - over */

.gallery2over{
    position: fixed;
    top: 105vh;
    height: 100vh;
    left: 0;
    right: 0;
    background: #fff;
    z-index: 32;
    visibility: hidden;
    transition: 0.3s all ease;
}
.gallery2over.show{
    top: 0;
    visibility: visible;
}
.gallery2over .inner{
    height: calc(100vh - 60px);
    overflow-y: auto;
}
.gallery2over .slide {
    margin-bottom: 30px;
}
.gallery2over .back{
    background: transparent;
    border: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
}

.gallery2over .slide img{
    max-width: 100%;
}

.gallery2over .slide iframe{
    width: 100%;
    aspect-ratio: 16/9;
}

/* Bloque Formulario */
.single-cpt-container .content-section.form {
    background: transparent;
    overflow: hidden;
}
.single-cpt-container .content-section.form > form{
    display: flex;
    flex-direction: column;
}
.single-cpt-container .content-section.form .form-content {
    padding: 1.875rem 1.875rem 0;
    background: #fff;
}

.single-cpt-container .content-section.form h3 {
    color: var(--vsf-primary-color2);
    font-size: 1.375rem;
    font-weight: 400;
    margin-bottom: 0.75rem;
}

.single-cpt-container .content-section.form p.intro {
    color: #757575;
    font-size: 0.75rem;
}

.single-cpt-container .content-section.form button {
    border-radius: 0 0 var(--image-border-radius) var(--image-border-radius);
    padding: 1.25rem 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    font-weight: 500;
}

.single-cpt-container .content-section.form button .far,
.single-cpt-container .content-section.form button svg {
    color: white;
    margin-right: 1rem;
    font-size: 1.25rem;
}

.single-cpt-container .content-section.form button:hover .far,
.single-cpt-container .content-section.form button:hover svg{
    color: var(--vsf-primary-color);
}
.single-cpt-container .content-section.form.form .form-group:not(:last-child){
    margin-bottom: 0.75rem;
}

.single-cpt-container .content-section.form.form .form-group label{
    font-size: 0.75rem;
}

/*Formulario success*/
.form-content.form-success{
    text-align: center;
}
.form-content.form-success .form-group div:nth-child(1){
    color: var(--vsf-primary-color);
    font-size: 1.375rem;
    font-weight: 500;
    margin-bottom: 1.625rem;
}

.form-content.form-success .form-group div:nth-child(2){
    font-size: 1.125rem;
    font-weight: 500;
    color: black;
    margin-bottom: 1.0625rem;
}
.form-content.form-success .form-group div:nth-child(3){
    margin-bottom: 1.9375rem;
}
.form-content.form-success .form-group img{
    margin-bottom: 2.0625rem;
}

.form-content.form-success .form-group button{
    display: block;
    width: 100%;
}
.form-content.form-success .form-group .close{
    position: absolute;
    top: -0.5rem;
    right: 0;
    padding: 0;
    width: auto;
}
.form-content.form-success .form-group .close span{
    font-size: 1.5rem;
    color: #707070;
}
/* Bloque Awards */
.single-cpt-container .awards .award {
    display: flex;
    align-items: center;
    margin-bottom: 1.5625rem;
}

.single-cpt-container .awards .award .award-img {
    min-width: 3.125rem;
    height: 3.125rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--vsf-primary-color);
    border-radius: 50%;
    margin-right: 1.5625rem;
}

.single-cpt-container .awards .award .far.fa-trophy,
.single-cpt-container .awards .award svg {
    color: white;
    font-size: 1.5rem;
}

.single-cpt-container .awards .award .award-text h3 {
    font-size: 1rem;
    margin-bottom: 0.1rem;
}

.single-cpt-container .awards .award .award-text p {
    font-size: 0.859375rem;
    margin-bottom: 0;
}

/* Bloque clientes */
.swiper-clientes{
    width: 100%;
    overflow: hidden;
    position: relative;
}
.swiper-clientes .swiper-wrapper{
    margin-bottom: 1rem;
}
.swiper-clientes .swiper-slide {
    background-position: center;
    background-size: cover;
}

.swiper-clientes .swiper-slide > div{
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-bottom: 56.25%;
}
.swiper-clientes .swiper-slide > div > div {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
.swiper-clientes .swiper-slide img{
    width: 100%;
    object-fit: cover;
    object-position: center;
    margin-bottom: 0.625rem;
}

.swiper-clientes .swiper-footer{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.swiper-clientes .swiper-pagination{
    position: relative;
}
.swiper-clientes .swiper-pagination-bullet{
    background: #B2B2B2;
    margin: 0 0.5rem;
    width: 0.875rem;
    height: 0.875rem;
    opacity: 1;
}
.swiper-clientes .swiper-pagination-bullet-active{
    background: #000;
}



/* Bloque Associations */
.associations{
    margin-bottom: 3.48rem;
}

.swiper-associations {
    width: 100%;
    overflow: hidden;
    position: relative;
}
.swiper-associations .swiper-wrapper{
    margin-bottom: 1rem;
}
.swiper-associations .swiper-slide {
    background-position: center;
    background-size: cover;
}

.swiper-associations .swiper-slide > div{
    overflow: hidden;
    width: 100%;
    padding-bottom: 56.25%;
}
.swiper-associations .swiper-slide > div > div {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
.swiper-associations .swiper-slide img{
    width: 100%;
    object-fit: cover;
    object-position: center;
    margin-bottom: 0.625rem;
}

.swiper-associations .swiper-footer{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.swiper-associations .swiper-pagination{
    position: relative;
}
.swiper-associations .swiper-pagination-bullet{
    background: #B2B2B2;
    margin: 0 0.5rem;
    width: 0.875rem;
    height: 0.875rem;
    opacity: 1;
}
.swiper-associations .swiper-pagination-bullet-active{
    background: #000;
}


/* Bloque Redes sociales */
.single-cpt-container .share .content-section h3 {
    margin: 0;
}

.single-cpt-container .share .content-section .social-networks {
    display: flex;
    flex-wrap: wrap;
}

.single-cpt-container .share .content-section .social-networks .elem {
    background-color: #F7F7F7;
    color: black;
    width: 3.125rem;
    height: 3.125rem;
    border-radius: 1.5625rem;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.5625rem;
    margin: 1.8125rem 1.25rem 0 0;
}
.single-cpt-container .share .content-section .social-networks .elem svg{
    color: black;
}
.single-cpt-container .share .content-section .social-networks .elem:hover {
    color: white;
    background-color: black;
    text-decoration: none;
}
.single-cpt-container .share .content-section .social-networks .elem:hover svg{
    color: white;
}


/* Bloque Documentación adicional */
.single-cpt-container .additional-documentation .documents {
    display: flex;
    flex-wrap: wrap;
}

.single-cpt-container .additional-documentation .documents a {
    background-color: var(--vsf-primary-color);
    border-radius: 1.25rem;
    color: white;
    text-align: center;
    padding: 0.625rem 1.875rem;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 1.5625rem 0.75rem 0;
}

.single-cpt-container .additional-documentation .documents a:hover {
    text-decoration: none;
}

.single-cpt-container .additional-documentation .documents a span {
    margin-right: 0.625rem;
    color: white;
}


/* Bloque Categoría */
.single-cpt-container .category p {
    color: #757575;
    font-size: 0.75rem;
}
.single-cpt-container .category .categories {
    display: flex;
    flex-wrap: wrap;
}

.single-cpt-container .category .categories a {
    background-color: #F0F0F0;
    border-radius: 1.25rem;
    text-align: center;
    padding: 0.3125rem 1.25rem;
    font-size: 0.75rem;
    color: #000;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 1.25rem 0.75rem 0;
}

.single-cpt-container .category .categories a:hover {
    text-decoration: none;
}
body.app_mode .single-cpt-container .category .categories a {
    pointer-events: none;
}

/*Modal te llamamos*/
.modal.modal-call .step1-div .modal-header{
    border: 0;
    font-size: 1.375rem;
    padding: 1.75rem;
}

.modal.modal-call .step1-div .modal-header h5{
    font-size: 1.375rem;
    color: black;
    font-weight: 500;
}
.modal.modal-call .step1-div .modal-header .close span{
    font-size: 1.75rem;
}
.modal.modal-call .step1-div .modal-body{
    padding: 0 1.75rem;
}

.modal.modal-call .step1-div .modal-footer{
    border: 0;
    padding: 0 1.75rem 0.75rem 1.75rem;
}

/*Organizado por y Logos*/
.single-cpt-container .organization p{
    margin-bottom: 0.9375rem;
    color: var(--vsf-primary-color);
    text-transform: uppercase;
}
.single-cpt-container .organization .logos{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.single-cpt-container .organization .logos img{
    max-width: 80px;
    max-height: 80px;
    margin: 0 1.375rem 1rem 0;
}

/* SDP*/
.modal-fade {
    position: absolute;
    display:none;
    height: 100%;
    color: white;
    align-items: center;
    justify-content: center;
    z-index: 100;
    background-color: rgba(0, 0, 0, 0.5);
}

/*Media querys*/
@media (max-width: 1199px) {
    .single-cpt-container .content-section.content-help .offer-left .agency-img {
        width: 32%;
    }

    .single-cpt-container .content-section.content-help .offer-left .offer-desc {
        width: 60%;
    }

    .single-cpt-container .content-section.form button .text {
        width: min-content;
    }
}

@media (max-width: 991px) {
    .wp-block-eventoplus-dce-page-title-inner .content-section {
        margin-top: 65px;
    }

    .single-cpt-container .ico {
        text-align: right;
    }

    .single-cpt-container .content-section.content-help .offer-left {
        border-right: none;
        border-bottom: 2px solid #F1F1F1;
        padding-right: 0;
        padding-bottom: 1.5625rem;
    }

    .single-cpt-container .content-section.content-help .offer-right {
        padding: 1.5625rem 0 0;
    }

    .single-cpt-container .content-section.content-help .offer-right .elem {
        justify-content: center;
    }

    .single-cpt-container .content-section.form {
        margin-bottom: 2.8125rem;
    }

    .single-cpt-container .content-section.form button .text {
        width: auto;
    }
}

@media (max-width: 767px) {
    .block-title h2  {
        margin-bottom: 0.75rem;
    }

    .single-cpt-container .content-section.content-help .block-title h2 {
        width: 100%;
    }

    .single-cpt-container .content-section.content-help .offer-left .agency-img {
        width: 100%;
        text-align: center;
    }

    .single-cpt-container .content-section.content-help .offer-left .offer-desc {
        width: 100%;
        margin: 5% 0;
        padding: 0;
    }

    /*Info menú*/
    .single-cpt-container .content-section.section-salas{
        padding: 1rem;
    }

}

@media (max-width: 575px) {
    .single-cpt-container .content-section{
        padding: 1.5rem 1.375rem 1.1875rem 1.375rem;
    }

    .single-cpt-container .content-section.content-help .offer-right .elem {
        width: 100%;
        margin-bottom: 1rem;
    }
    /*Menu fichas*/
    .info .menu{
        display: block;
        margin-bottom: 0.5rem;
    }
    .info .menu button{
        margin-bottom: 1rem;
    }

}

