/*
Theme Name: Fundacion Child Theme
Theme URI: https://oceanwp.org/
Description: Fundacion Child theme.
Author: OceanWP
Author URI: https://oceanwp.org/
Template: oceanwp
Version: 2.8
*/

/* Parent stylesheet should be loaded from functions.php not using @import */


/*----------------------------------------------------------------------------------
## @section 1.0 / General      
----------------------------------------------------------------------------------*/
/*--------------------------------------------------------------
## @section 1.1 / General / Root
--------------------------------------------------------------*/
:root {
    
    --color-prim: #DACBBC;
    --color-sec: #706860;
    --color-alt: #883534;
    --color-black: #1B1B1B;
    --color-back: #F5F5F5;
    --color-border: #BBBBBB;
    --max-content: 1440px;
}

/*--------------------------------------------------------------
## @section 1.1 / General / General
--------------------------------------------------------------*/
a:focus {
    outline: none !important;
}
.title-no-margin-bot h1,
.title-no-margin-bot h2,
.title-no-margin-bot h3,
.title-no-margin-bot h4,
.title-no-margin-bot h5,
.title-no-margin-bot h6 {
    margin-bottom: 0;
}
.no-margin-bot p:last-child {
    margin-bottom: 0;
}
body.body-fixed {
    max-height: 100vh;
    overflow: hidden;
  }
svg text {
    font-family: inherit;
}
.img-cover {
    width: 100%;
}
.img-cover > .elementor-widget-container img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: cover;
}
@media (max-width: 767px) {
    .img-cover > .elementor-widget-container {
        padding-top: 56%;
    }
}

@keyframes alertIcon {
    50% {
        transform: scale(1.2);
    }
}


/*--------------------------------------------------------------
## @section 1.1 / General / Formularios
--------------------------------------------------------------*/
.wpcf7-not-valid-tip {
    display: none;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
    border-color: var(--color-sec);
    border-width: 1px;
    color: var(--color-black);
    font-size: 12px;
    line-height: 1.2;
    text-align: center;
    font-weight: 600;
    margin-left: 0;
    margin-right: 0;
    padding: 5px 20px;
    margin-top: 15px;
}
.wpcf7 .wpcf7-submit {
    white-space: normal;
}
form .aceptacion {
    margin-bottom: 10px;
}
form .aceptacion label {
    font-size: 16px;
}
form .aceptacion input[type="checkbox"] {
	display: none;
}
form .aceptacion .wpcf7-list-item {
    margin-left: 30px;
}
form .aceptacion .wpcf7-list-item:has(.no-check) {
    margin-left: 0;
}
form .aceptacion .custom-aceptacion-label a,
form .aceptacion .wpcf7-list-item-label a,
form .aceptacion .contact-info-popup a {
    position: relative;
}
form .aceptacion .wpcf7-list-item-label a:after,
form .aceptacion .custom-aceptacion-label a:after,
form .aceptacion .contact-info-popup a:after {
    /*content: "";*/
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 1px;
    background: var(--color-black);
    transition: all .4s ease;
}
form .aceptacion .wpcf7-list-item-label a:hover:after,
form .aceptacion .custom-aceptacion-label a:hover:after,
form .aceptacion .contact-info-popup a:hover:after {
    width: 0%;
}
form .aceptacion .custom-aceptacion-label {
    margin-left: 30px;
}
form .aceptacion .custom-aceptacion-label.no-check {
    margin-left: 0;
}
form .aceptacion .no-check {
    position: relative;
}
form .aceptacion .check {
	background: transparent;
	width: 20px;
	height: 20px;
	position: relative;
	display: inline-block;
	margin-right: 10px;
    margin-left: -30px;
	transform: translateY(5px);
	border: 1px solid var(--color-black);
	border-radius: 100px;
}
form .aceptacion .custom-aceptacion-label .check {
    margin-right: 6px;
}

form .aceptacion .check:after {
	content: "";
	position: absolute;
	top: -2px;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 9px;
	height: 4px;
	transform: rotate(-45deg);
	border-top: none;
	border-right: none;
}
form .aceptacion input:checked + .wpcf7-list-item-label .check:after,
form .aceptacion input:checked + .aceptacion-label-text .check:after {
    border: 1px solid var(--color-black);
	border-top: none;
	border-right: none;
}

/*--------------------------------------------------------------
## @section 1.1 / General / Formulario Selector
--------------------------------------------------------------*/
.wpcf7 .selector {
    display: block;
    width: 100%;
    position: relative;
    min-height: 45px;
    border: 1px solid var(--color-sec);
    margin-bottom: 10px;
    padding: .75em;
    padding-bottom: 5px;
    cursor: pointer;    
}
.wpcf7 .form-white .selector {
    border-color: white;
    background: white;
}
.wpcf7 .selector .selector-placeholder {
    position: absolute;
    top: 50%;
    left: 12px;
    transform: translateY(-50%);
    max-width: calc(100% - 50px);
    font-size: 16px;
}
.wpcf7 .selector .icon-down {
    position: absolute;
    top: calc(50% - 5px);
    right: 10px;
    width: 20px;
    height: 20px;
    transform: translateY(-50%) rotate(45deg);
    transform-origin: center;
    pointer-events: none;
    transition: all .4s ease;
}
.wpcf7 .selector.open .icon-down {
    transform: translateY(-0%) rotate(225deg);
}
.wpcf7 .selector .icon-down:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-bottom: 1px solid var(--color-sec);
    border-right: 1px solid var(--color-sec);
    height: 15px;
    width: 15px;
}
.wpcf7 .selector .selector-wrap {
    position: absolute;
    top: 100%;
    left: -1px;
    background: white;
    z-index: 0;
    border: 1px solid var(--color-sec);
    border-top: 0;
    padding: 0px;
    width: calc(100% + 2px);
    height: 0;
    display: block;
    overflow: scroll;
    transition: all .4s ease, z-index 0s .4s;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
}
.wpcf7 .form-white .selector .selector-wrap {
    border: 0;
    max-height: 165px;
    overflow: scroll;
}
.wpcf7 .selector .selector-wrap::-webkit-scrollbar {
    display: none;
}
.wpcf7 .selector.open .selector-wrap {
    z-index: 2;
    transition: all .4s ease;
}
.wpcf7 .selector .selector-wrap .wpcf7-form-control-wrap .wpcf7-form-control {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
}
.wpcf7 .selector .selector-wrap .wpcf7-form-control-wrap .wpcf7-form-control .wpcf7-list-item {
    margin-left: 0;
}
.wpcf7 .selector .wpcf7-form-control-wrap .wpcf7-form-control label {
    position: relative;
    display: block;
    padding: 5px 0;
    width: 100%;
    margin-top: 0;
    margin-bottom: 0;
    padding: 0;
}
.wpcf7 .selector .wpcf7-form-control-wrap .wpcf7-form-control .wpcf7-list-item-label {
    font-size: 16px;
    padding: 10px 12px;
    display: block;
    cursor: pointer;
    border-top: 1px solid var(--color-sec);
    border-bottom: 0;
}
.wpcf7 .selector .wpcf7-form-control-wrap .wpcf7-form-control .last .wpcf7-list-item-label {
    border-bottom: 1px solid var(--color-sec);
}
.wpcf7 .selector .wpcf7-form-control-wrap .wpcf7-form-control input:checked + .wpcf7-list-item-label {
    font-weight: 700;
    background-color: var(--color-back);

}
.wpcf7 .selector .wpcf7-form-control-wrap input[type="radio"] {
    display: none;
}

/*--------------------------------------------------------------
## @section 1.1 / General / Formulario Attachment file
--------------------------------------------------------------*/
.wpcf7 .attach-text {
    padding-left: 13px;
    font-size: 16px;
}
.wpcf7 .form-white .attach-text {
    color: white;
}
.wpcf7 .attach-file {
    position: relative;
    display: flex;
}
.wpcf7 .attach-file .attach-label {
    display: flex;
	width: auto;
	max-width: 100%;
}
.wpcf7 .attach-file .attach-btn {
    padding: 12px 24px;
    border-radius: 2px;
    display: inline-block;
    text-align: center;
    min-width: 240px;
    position: relative;
    font-weight: 600;
    font-size: 16px;
    text-transform: uppercase;
    border: 1px solid var(--color-prim);
    background-color: var(--color-prim);
    color: var(--color-black);
    cursor: pointer;
    transition: all .4s ease;
}
.wpcf7 .attach-file .attach-btn:hover {
    background: white;
    color: var(--color-sec);
    border-color: var(--color-sec);
}
.wpcf7 .attach-file .attach-btn:active {
    background: white;
    color: var(--color-prim);
}
.wpcf7 .form-white .attach-file .attach-btn {
    background-color: white;
    border-color: white;
    color: var(--color-prim);
}
.wpcf7 .attach-file .name-file {
    margin-left: 15px;
    display: inline;
    align-self: center;
    font-size: 16px;
}
.wpcf7 .form-white .attach-file .name-file {
    color: white;
}
.wpcf7 .attach-file .delete-file-wrap {
    display: inline-block;
    align-self: center;
    margin-left: 15px;
	margin-bottom: 10px;
    position: relative;
    height: 15px;
    width: 15px;
    z-index: -1;
    opacity: 0;
    visibility: hidden;
}
.wpcf7 .attach-file .delete-file-wrap.visible {
    opacity: 1;
    z-index: 101;
    visibility: visible;
}
.wpcf7 .attach-file .delete-file-wrap .delete-file-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 15px;
    height: 15px;
    transform: translate(-50%, -50%) rotate(45deg);
    display: block;
    cursor: pointer;
}
.wpcf7 .attach-file .delete-file-wrap .delete-file-btn:before,
.wpcf7 .attach-file .delete-file-wrap .delete-file-btn:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 1px;
    background: var(--color-black);
    transition: all .5s ease;
}
.wpcf7 .form-white .attach-file .delete-file-wrap .delete-file-btn:before,
.wpcf7 .form-white .attach-file .delete-file-wrap .delete-file-btn:after {
    background-color: white;
}
.wpcf7 .attach-file .delete-file-wrap .delete-file-btn:after {
    width: 1px;
    height: 100%;
}
.wpcf7 .attach-file input {
    display: none;
}

/*--------------------------------------------------------------
## @section 1.1 / General / Formulario popup
--------------------------------------------------------------*/
.contact-info-opener {
    cursor: pointer;
}
.contact-info-popup {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    padding: 20px 0;
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
    z-index: 1;
    transition: opacity .4s linear .4s, visibility .4s linear .4s;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.contact-info-popup.visible {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
    transition: opacity .4s linear .4s, visibility .4s linear;
}
.contact-info-popup .contact-info-popup-wrap {
    position: relative;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
    background: var(--color-back);
    border-radius: 10px;
    padding: 20px;
    font-size: 15px;
    box-shadow: 0 0 25px rgba(15,15,15,.1);
    border: 1px solid var(--color-sec);
}
.contact-info-popup .contact-info-popup-wrap .popup-close {
    width: 32px;
    height: 32px;
    position: absolute;
    top: 0px;
    right: 10px;
    background: white;
    border: 1px solid var(--color-sec);
    border-radius: 100%;
    box-shadow: 0 1.2rem 2rem -0.8rem rgb(0 0 0 / 40%);
    cursor: pointer;
    transform: translateY(-50%);
    transition: all .5s ease;
    z-index: 1;
}
.contact-info-popup .contact-info-popup-wrap .popup-close:hover {
    background: var(--color-sec);
}
.contact-info-popup .contact-info-popup-wrap .popup-close .popup-close-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 15px;
    height: 15px;
    transform: translate(-50%, -50%) rotate(45deg);
}
.contact-info-popup .contact-info-popup-wrap .popup-close .popup-close-icon:before,
.contact-info-popup .contact-info-popup-wrap .popup-close .popup-close-icon:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 1px;
    background: var(--color-sec);
    transition: all .5s ease;
}
.contact-info-popup .contact-info-popup-wrap .popup-close .popup-close-icon:after {
    height: 100%;
    width: 1px;
}
.contact-info-popup .contact-info-popup-wrap .popup-close:hover .popup-close-icon:before,
.contact-info-popup .contact-info-popup-wrap .popup-close:hover .popup-close-icon:after {
    background-color: white;
}


/*--------------------------------------------------------------
## @section 1.1 / General / Floating Buttons
--------------------------------------------------------------*/
.floating-btns {
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 99;
}
.floating-btns .floating-btns-wrap {
    display: flex;
    justify-content: center;
}
.floating-btns .floating-btns-wrap > .widget {
    display: none;
    flex-direction: column;
}
.floating-btns .floating-btns-wrap > .widget.active{
    display: flex;
}
.floating-btns .floating-btns-wrap > .widget .wp-block-group__inner-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
}
.floating-btns .floating-btns-wrap > .widget .wp-block-group__inner-container svg {
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translateX(-50%);
    pointer-events: none;
}
.floating-btns .floating-btns-wrap > .widget .wp-block-group__inner-container p {
    margin-bottom: 0;
}
.floating-btns .floating-btns-wrap > .widget .wp-block-group__inner-container p a {
    color: white;
    font-size: 15px;
    background: var(--color-alt);
    padding: 43px 10px 10px 10px;
    width: 100%;
    height: 85px;
    display: flex;
    border-radius: 10px;
    line-height: 1;
    text-align: center;
    justify-content: center;
}
@media (max-width: 767px) {
    .floating-btns {
        width: 100%;
    }
    .floating-btns .floating-btns-wrap > .widget {
        flex: 1;
    }
    .floating-btns .floating-btns-wrap > .widget .wp-block-group__inner-container p {
        width: 100%;
    }
    .floating-btns .floating-btns-wrap > .widget .wp-block-group__inner-container p a {
        border-radius: 0;
        width: 100%;
    }
} 
@media (min-width: 768px) {
    .floating-btns {
        top: 155px;
        right: 20px;
        left: auto;
        bottom: auto;
    }
    .floating-btns .floating-btns-wrap {
        flex-direction: column;
        gap: 20px;
    }
    .floating-btns .floating-btns-wrap > .widget .wp-block-group__inner-container p a {
		padding: 45px 20px 20px;
		width: 80px;
		height: 80px;
        font-size: 11px;
    }
    .floating-btns .floating-btns-wrap > .widget .wp-block-group__inner-container svg {
        top: 15px;
    }
}

/*--------------------------------------------------------------
## @section 1.1 / General / Single CPT
--------------------------------------------------------------*/
.single-convocatorias aside#right-sidebar,
.single-eventos aside#right-sidebar {
    display: none;
}
.single-convocatorias #main #content-wrap,
.single-eventos #main #content-wrap {
    padding: 0;
    width: 100%;
    max-width: 100%;
}
.single-convocatorias #main #content-wrap .content-area,
.single-eventos #main #content-wrap .content-area {
    padding-right: 0;
}
.single-eventos #main #content-wrap .content-area .cpt-article {
    padding: 50px 20px;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

/*--------------------------------------------------------------
## @section 1.1 / General / Video 16:9
--------------------------------------------------------------*/
.image-wrap-16-9.elementor-element {
    width: 100%;
}
.video-wrap-16-9 > .elementor-widget-container,
.image-wrap-16-9 > .elementor-widget-container {
    padding-top: 56%;
    position: relative;
}
.video-wrap-16-9 > .elementor-widget-container div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
}
.video-wrap-16-9 > .elementor-widget-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.image-wrap-16-9 > .elementor-widget-container img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/*--------------------------------------------------------------
## @section 1.1 / General / Page intro - page-intro-section
--------------------------------------------------------------*/
.page-intro-section {
    border-bottom: 1px solid var(--color-prim);
}
.page-intro-section > .page-intro-content {
    border-radius: 10px;
    z-index: 1;
}
.page-intro-section .page-intro-image > .e-con-inner {
    max-width: 100%;
}
.page-intro-section .page-intro-image .elementor-widget-image {
    height: 100%;
}
.page-intro-section .page-intro-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.page-intro-section .page-intro-image.img-rampas img,
.page-intro-section .page-intro-image.img-obras img {
    object-fit: contain;
    padding: 20px 10px;
}
@media (max-width: 767px) {
    .page-intro-section > .page-intro-content {
        margin-top: -20px;
        margin-left: 10px;
        margin-right: 10px;
        max-width: calc(100% - 20px);
        padding: 10px 20px;
    }
    .page-intro-section .page-intro-image .elementor-widget-image {
        padding-top: 56%;
    }
}
@media (min-width: 768px) {
    .page-intro-section > .page-intro-content {
        max-width: 700px;
        margin-left: auto;
        margin-right: 50%;
        margin-top: 30px;
        margin-bottom: 30px;
        padding: 50px;
    }
    .page-intro-section .page-intro-image {
        position: absolute;
        top: 0;
        left: 40%;
        width: 60%;
        height: 100%;
        z-index: 0;
    }
    .page-intro-section .page-intro-image.img-rampas {
        width: 50%;
        left: 50%;
    }
    .page-intro-section .page-intro-image.img-rampas img {
        object-position: left;
    }
    .page-intro-section .page-intro-image.img-obras img {
        padding-left: calc(var(--max-content) / 12 );
    }
}
@media (min-width: 1025px) {
    .page-intro-section .page-intro-image.img-rampas img {
        padding-right: 110px;
    }
}
@media (min-width: 1300px) {
    .page-intro-section > .page-intro-content {
        padding-left: calc(var(--max-content) / 12);
        padding-right: calc( var(--max-content) / 24 * 2);
        margin-right: calc(50% + (var(--max-content) / 12) );
    }
    .page-intro-section .page-intro-image {
        left: calc(50% - ( (var(--max-content) / 12) * 2 ) );
        width: 100%;
        max-width: calc(50% + ( (var(--max-content) / 12) * 2 ) );
    }
    .page-intro-section .page-intro-image.img-rampas {
        width: calc(50% + (var(--max-content) / 12) );
        left: calc(50% - (var(--max-content) / 12) );
    }
}
@media (min-width: 1800px) {
    .page-intro-section .page-intro-image.img-obras img {
        object-position: left;
    }
}


/*--------------------------------------------------------------
## @section 1.1 / General / Page template / page-template
--------------------------------------------------------------*/
.page-template .page-intro-section {
    padding: 0;
    display: flex;
}
.page-template .page-intro-section > .page-intro-content {
    background-color: white;
}
.page-template .page-intro-section > .page-intro-content > .e-con-inner {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 10px 0px;
}
.page-template .page-intro-section .page-intro-image {
    padding: 0;
}
.page-template .page-intro-section .page-intro-image > .e-con-inner {
    padding: 0;
    max-width: 100%;
}
.page-template .page-intro-section > .page-intro-content .elementor-widget-divider .elementor-divider-separator {
    width: 100%;
    border-top: 1px solid var(--color-alt);
    display: block;
}
@media (max-width: 767px) {
    .page-template .page-intro-section {
        flex-direction: column-reverse;
        gap: 0;
    }
}
@media (min-width: 768px) {
    .page-template .page-intro-section {
        flex-direction: row;
    }
}

/*--------------------------------------------------------------
## @section 1.1 / General / General Grid Section - general-grid-section
--------------------------------------------------------------*/
.general-grid-section .general-grid-section-wrap > .e-con-inner > .elementor-element {
    box-shadow: 0 3px 15px rgba(15,15,15,.1);
    border-radius: 10px;
    overflow: hidden;
    background: white;
}
.general-grid-section .general-grid-section-wrap > .e-con-inner > .elementor-element .elementor-widget-image {
    padding-top: 56%;
}
.general-grid-section .general-grid-section-wrap > .e-con-inner > .elementor-element .elementor-widget-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.general-grid-section .general-grid-section-wrap .general-grid-content-wrap {
    padding: 40px 15px 20px 15px;
}
.general-grid-section .general-grid-section-wrap .general-grid-icon {
    background: var(--color-alt);
    width: 55px;
    height: 55px;
    padding: 10px;
    border-radius: 100px;
    border: 1px solid white;
    box-shadow: 0 0 15px rgba(15,15,15,.1);
    position: absolute;
    top: -30px;
}
.general-grid-section .general-grid-section-wrap .general-grid-icon svg {
    fill: white;
}
.general-grid-section .general-grid-section-wrap .general-grid-icon > .elementor-widget-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.general-grid-section .general-grid-section-wrap .general-grid-content-wrap h3 {
    color: var(--color-black);
}
.general-grid-section .general-grid-section-wrap .general-grid-content-wrap p:last-child {
    margin-bottom: 0;
}
@media (min-width: 768px) {
    .general-grid-section .general-grid-section-wrap > .e-con-inner > .elementor-element {
        width: calc(33.33% - 20px);
    }
    .general-grid-section .general-grid-section-wrap.grid-2-cols > .e-con-inner > .elementor-element:nth-of-type(odd) {
        margin-left: calc(100% / 12 * 2);
    }
    .general-grid-section .general-grid-section-wrap.grid-2-cols > .e-con-inner > .elementor-element:nth-of-type(even) {
        margin-right: calc(100% / 12 * 2);
    }
    .general-grid-section .general-grid-section-wrap .general-grid-content-wrap {
        padding: 40px 20px 20px 20px;
    }
}
@media (min-width: 768px) {
    .general-grid-section .general-grid-section-wrap .general-grid-content-wrap {
        padding: 40px 8% 20px 8%;
    }
}

/*--------------------------------------------------------------
## @section 1.1 / General / Seccion text img 1 - seccion-text-img-1
--------------------------------------------------------------*/
.elementor-element.seccion-text-img-1-wrap:before {
    content: "";
    position: absolute;
    top: 60px;
    left: 0;
    width: 100%;
    height: calc(100% - 60px);
    background-color: var(--color-back);
    border-bottom: 1px solid var(--color-sec);
    max-width: calc(50% + (var(--content-width) / 2) + 40px);
}
.seccion-text-img-1-rampas .elementor-element.seccion-text-img-1-wrap:before {
    top: 0;
    height: 100%;
}
.seccion-text-img-1-mision .elementor-element.seccion-text-img-1-wrap:before {
    top: 0;
    height: 100%;
}

/*--------------------------------------------------------------
## @section 1.1 / General / Seccion text img 2 - seccion-text-img-2
--------------------------------------------------------------*/
.elementor-element.seccion-text-img-2:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    padding-top: 46%;
    background: var(--color-prim);
    border-radius: 0px;
}
@media (min-width:768px) {
    .elementor-element.seccion-text-img-2:before {
        width: 100%;
        max-width: 25%;
        height: 100%;
        border-radius: 10px 0px 0px 10px;
        padding-top: 0;
        left: auto;
        right: 0;
    }
}
@media (min-width: 1440px) {
    .elementor-element.seccion-text-img-2:before {
        max-width: calc( 50% - (var(--max-content) / 4));
    }
}

/*--------------------------------------------------------------
## @section 1.1 / General / Seccion texto bloques y / seccion-texto-bloques-y
--------------------------------------------------------------*/
.elementor-element.seccion-texto-bloques-y-wrap {
    max-width: var(--content-width);
    margin-left: auto;
    margin-right: auto;
}
.elementor-element.seccion-texto-bloques-y-wrap > .e-con-inner:before {
    content: "";
    position: absolute;
    top: 0px;
    left: 0;
    width: 100%;
    height: calc( 100% - 80px);
    background-color: var(--color-back);
    border-radius: 10px;
}
.seccion-texto-bloques-y .bloques-y:before {
    content: "";
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: 1px;
    height: calc(100% + 20px + 15px);
    background-color: var(--color-sec);
}
.seccion-texto-bloques-y .bloques-y:after {
    content: "";
    position: absolute;
    top: auto;
    bottom: -30px;
    left: 50%;
    transform: translateX(-50%);
    width: 20px;
    height: 20px;
    background-color: var(--color-sec);
    border-radius: 50px;
}
.seccion-texto-bloques-y .bloque-y .elementor-widget-heading span {
    display: block;
}
.seccion-texto-bloques-y .bloque-y .elementor-widget-heading span + span {
    margin-bottom: 20px;
    margin-top: 5px;
}
.seccion-texto-bloques-y .bloque-y .elementor-widget-heading span strong {
    font-size: 22px;
}
.seccion-texto-bloques-y .bloque-y .elementor-widget-heading p {
    /*font-size: 22px;*/
}
.seccion-texto-bloques-y .bloque-y .elementor-widget-heading big {
    font-size: 35px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--color-sec);
}
.seccion-texto-bloques-y .bloque-y .elementor-widget-heading big small {
    font-size: 25px;
}
@media (min-width: 768px) {
    .seccion-texto-bloques-y .bloques-y:before {
        top: -80px;
        height: calc(100% + 80px + 15px);
    }
    .seccion-texto-bloques-y .bloque-y .elementor-widget-heading big {
        font-size: 40px;
    }
    .seccion-texto-bloques-y .bloque-y .elementor-widget-heading big small {
        font-size: 25px;
    }
}



/*--------------------------------------------------------------
## @section 1.1 / General / Seccion testimonio Video / seccion-testimonio-video
--------------------------------------------------------------*/
@media (max-width: 767px) {
    .elementor-element.seccion-testimonios-videos .seccion-testimonio-video {
        border-top: 1px solid var(--color-alt);
    }
    .elementor-element.seccion-testimonios-videos .seccion-testimonio-video:first-child {
        border-top: 0px;
    }
}
@media (min-width: 768px) {
    .elementor-element.seccion-testimonios-videos .seccion-testimonio-video > .e-con-inner {
        border-top: 1px solid var(--color-alt);
    }
    .elementor-element.seccion-testimonios-videos .seccion-testimonio-video:first-child > .e-con-inner {
        border-top: 0px;
    }
}
.elementor-element.seccion-testimonios-videos .seccion-testimonio-video p:last-child {
    margin-bottom: 0;
}

/*--------------------------------------------------------------
## @section 1.1 / General / Seccion Descargar App  / .seccion-descargar-app
--------------------------------------------------------------*/
.seccion-descargar-app a.elementor-element {
    width: max-content;
    max-width: 100%;
}


/*----------------------------------------------------------------------------------
## @section 2.0 / Header
----------------------------------------------------------------------------------*/
#site-navigation .main-menu {
    display: flex;
    align-items: center;
}
.phone-icon a .icon:before {
    content: "";
    display: inline-block;
    margin-right: 7px;
    width: 12px;
    height: 12px;
    background: url(../fundacionmdp/assets/icons/phone.svg);
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: baseline;
}
#site-navigation .menu-item.menu-btn {
    margin-left: 15px;
}
#site-navigation .menu-item.menu-btn a {
    background: var(--color-prim);
    line-height: 1;
    padding: 15px 20px;
    border: 1px solid var(--color-prim);
    border-radius: 2px;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
}
#site-navigation .menu-item.menu-btn a:hover {
    background: white;
    color: var(--color-sec);
    border-color: var(--color-sec);
}
#site-navigation .main-menu > .menu-item > .menu-link {
    letter-spacing: 0;
}
#site-navigation .main-menu > .menu-item > .menu-link:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 1px;
    height: 25px;
    background: var(--color-border);
    transform: translateY(-50%);
}
#site-navigation .main-menu > .menu-item > .menu-link:before {
    content: "";
    width: calc(100% - 10px);
    height: 45px;
    position: absolute;
    top: auto;
    bottom: 20px;
    left: 5px;
    background: var(--color-alt);
    border-radius: 2px;
    opacity: 0;
    transition: all .4s ease;
}
#site-navigation .main-menu > .menu-item.menu-btn > .menu-link:before {
    content: none;
}
#site-navigation .main-menu > .menu-item:hover > .menu-link:before,
#site-navigation .main-menu > .menu-item.menu-item.current-menu-item > .menu-link:before,
#site-navigation .main-menu > .menu-item.current_page_parent > .menu-link:before  {
    /*animation: hoverMenu .8s ease forwards;*/
    opacity: 1;
}
@keyframes hoverMenu {
    0% {
        width: 0;
        height: 1px;
    }
    50% {
        height: 1px;
        width: calc(100% - 10px);
    }
    100% {
        height: 45px;
        width: calc(100% - 10px);
    }
}
#site-navigation .main-menu > .menu-item:first-child > .menu-link:after,
#site-navigation .main-menu > .menu-item.menu-btn > .menu-link:after {
    content: none;
}
#site-navigation .main-menu > .menu-item > .menu-link > span {
    display: flex;
    align-items: center;
    flex-direction: row-reverse;
}
#site-navigation .main-menu > .menu-item:hover > .menu-link > span,
#site-navigation .main-menu > .menu-item.current-menu-item > .menu-link > span,
#site-navigation .main-menu > .menu-item.current_page_parent > .menu-link > span  {
    color: white;
    z-index: 1;
    transition: all .4s ease;
}
#site-navigation .main-menu > .menu-item.menu-btn.current_page_parent > .menu-link > span {
    color: inherit;
}
#site-navigation .main-menu > .menu-item.menu-btn:hover > .menu-link > span,
#site-navigation .main-menu > .menu-item.menu-btn.current-menu-item > .menu-link > span {
    color: inherit;
}
#site-navigation .main-menu > .menu-item > .menu-link > span::before {
    content: "";
    position: relative;
    display: inline-block;
    width: 7px;
    height: 7px;
    border-right: 1px solid var(--color-black);
    border-bottom: 1px solid var(--color-black);
    margin-left: 10px;
    margin-bottom: 3px;
    transform: rotate(45deg);
}
#site-navigation .main-menu > .menu-item:hover > .menu-link > span::before,
#site-navigation .main-menu > .menu-item.current-menu-item > .menu-link > span::before,
#site-navigation .main-menu > .menu-item.current_page_parent > .menu-link > span::before {
    border-color: white;
    transition: all .4s ease;
}
#site-navigation .main-menu > .menu-item > .menu-link > span::after {
    content: none !important;
    height: 1px !important;
    left: -5px !important;
    width: calc(100% + 10px) !important;
    background-color: var(--color-alt) !important;
    z-index: -1;
    bottom: 20px !important;
}
#site-navigation .main-menu > .menu-item:hover > .menu-link > span::after {
    /*animation: hoverMenu 1s ease forwards;*/
}


#site-navigation .menu-item.menu-btn a span:after,
#site-navigation .menu-item.menu-btn a span:before {
    content: none !important;
}
#site-navigation .main-menu > .menu-item.menu-btn.dropdown > .menu-link > span:before {
    content: "" !important;
    color: inherit;
    border-color: 1px solid var(--color-black);
}
#site-navigation .main-menu > .menu-item.menu-btn > .menu-link > span::before {
    border-color: inherit;
}
#site-navigation .main-menu > .menu-item > .menu-link > span::after {
    height: 1px !important;
}
#site-navigation .menu-item-has-children .sub-menu {
    border: 1px solid var(--color-border);
    box-shadow: none;
    width: max-content;
    max-width: 300px;
}
#top-bar-social.top-bar-left li .fa-twitter::before {
    content: url(./iconos/twitter-x-icon.svg);
    display: block;
    width: 19px;
    height: 19px;
}
#top-bar .menu-item {
    border-right: 1px solid var(--color-border);
    padding-right: 15px;
}
#top-bar .menu-item.current-menu-item .menu-link {
    /*font-weight: 700;*/
}
#top-bar .menu-item .menu-link {
    z-index: 1;
    transition: all .4s ease;
}
#top-bar .top-bar-menu > .menu-item:hover > .menu-link,
#top-bar .menu-item.current-menu-item .menu-link {
    color: white;
}
#top-bar .menu-item.menu-tel:hover .menu-link {
    color: inherit;
}
#top-bar .top-bar-menu > .menu-item > .menu-link:before {
    content: "";
    position: absolute;
    top: auto;
    bottom: 5px;
    left: -10px;
    width: calc(100% + 20px);
    height: calc(100% - 10px);
    background: var(--color-alt);
    border-radius: 2px;
    z-index: -1;
    opacity: 0;
    transition: all .4s ease;
}
#top-bar .menu-item.menu-tel .menu-link:before {
    width: 100%;
    height: 1px;
    left: 0;
}
#top-bar .menu-item:hover > .menu-link:before,
#top-bar .menu-item.current-menu-item .menu-link:before {
    opacity: 1;
}
#top-bar .menu-item.menu-tel:hover .menu-link:before {
    animation: none;
    height: 1px;
    opacity: 1;
}
#top-bar .menu-item.current_page_item:hover .menu-link:before {
    animation: none;
}
@keyframes hoverTopBar {
    0% {
        width: 0;
        height: 1px;
    }
    50% {
        height: 1px;
        width: calc(100% + 20px);
    }
    100% {
        height: calc(100% + 10px);
        width: calc(100% + 20px);
    }
}
#top-bar .menu-item.phone-icon {
    border-right: 0;
    padding-right: 0;
    margin-right: 4px;
}
#top-bar .menu-item.phone-icon + .menu-item.phone-icon {
    margin-right: 15px;
    border-right: 1px solid var(--color-border);
    padding-right: 15px;
}
.home #top-bar .menu-item.current-menu-item .menu-link {
    font-weight: inherit;
    color: inherit
}
.home #top-bar .menu-item.current-menu-item .menu-link:before {
    content: none;
}
.home #top-bar .menu-item.current-menu-item:hover .menu-link {
    color: white
}
.home #top-bar .menu-item.current-menu-item:hover .menu-link:before {
    content: "";
}
#top-bar .menu-item:last-child {
    padding-right: 0;
    border-right: 0;
}
#mobile-dropdown ul li a .dropdown-toggle:focus {
    outline: none;
}
.dropdown-menu ul li a.menu-link {
	text-transform: none;
	letter-spacing: 0;
}
.dropdown-menu > .wpml-ls-item > .menu-link > .wpml-ls-native:after {
    content: "";
    position: relative;
    display: inline-block;
    width: 7px;
    height: 7px;
    border-right: 1px solid var(--color-black);
    border-bottom: 1px solid var(--color-black);
    margin-left: 10px;
    margin-bottom: 3px;
    transform: rotate(45deg);
    transition: all .4s ease;
}
.dropdown-menu > .wpml-ls-item:hover > .menu-link > .wpml-ls-native:after {
    border-color: white;
}
.dropdown-menu .wpml-ls-item .sub-menu {
    min-width: 0;
    left: 50%;
    transform: translateX(-50%);
    top: 100%;
}
#mobile-dropdown .menu {
    display: flex;
    flex-direction: column;
}
#mobile-dropdown .menu .wpml-ls-item {
    order: 10;
}
#mobile-dropdown .menu .menu-tel {
    order: 1;
}
@media (min-width: 1200px) {
    #top-bar {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
    #top-bar .top-bar-menu .menu-item .menu-link {
        padding-top: 12px;
        padding-bottom: 12px;
    }
    .phone-icon + .phone-icon a .icon:before {
        content: none;
    }
    #top-bar .top-bar-menu > .menu-item.menu-tel > .menu-link:after {
        content: " · ";
    }
    #top-bar .top-bar-menu > .menu-item.menu-tel + .menu-item > .menu-link:after {
        content: none;
    }
}

/*----------------------------------------------------------------------------------
## @section 2.0 / Footer
----------------------------------------------------------------------------------*/
.site-footer .footer-widgets-inner {
    display: flex;
    flex-wrap: wrap;
    column-gap: 30px;
    row-gap: 40px;
    justify-content: space-between;
}
.site-footer .footer-widgets-inner .footer-box {
    max-width: max-content;
    width: 100%;
    padding-right: 50px !important;
}
.site-footer .footer-widgets-inner .footer-box > .footer-widget {
    width: calc(100% + 40px);
}
.site-footer .fa-twitter:before {
    content: url(./iconos/twitter-x-icon.svg);
    display: block;
    width: 15px;
    height: 15px;
}
.site-footer .footer-contact-text-wrap {
    column-gap: 50px;
}
.site-footer .wp-block-heading {
    position: relative;
    font-size: 22px;
    color: var(--color-black);
    margin-bottom: 30px;
}
.site-footer .wp-block-heading:after {
    content: "";
    position: absolute;
    bottom: -10px;
    left: 0;
    width: calc(100% + 20px);
    height: 1px;
    background: black;
}
.site-footer .widget_nav_menu .menu .menu-item {
    border: 0;
}
.site-footer .widget_nav_menu .menu .menu-item a {
    font-weight: 600;
}
#footer-bottom a,
#footer-bottom #footer-bottom-menu a {
    line-height: 1.3;
    cursor: pointer;
}
.site-footer #footer-bottom #copyright {
    line-height: 1.3;
}
@media (max-width: 767px) {
    .site-footer {
        padding-bottom: 85px;
    }
}
@media (min-width: 960px) {
    .site-footer #footer-bottom #copyright {
        width: 100%;
        max-width: 340px;
    }
    footer #footer-bottom #footer-bottom-inner {
        display: flex;
        flex-direction: row-reverse;
    }
    #footer-bottom #footer-bottom-menu {
        width: 100%;
        max-width: calc(100% - 340px);
        text-align: right;
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }
    
    #footer-bottom #footer-bottom-menu .menu {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
    }
}


/*----------------------------------------------------------------------------------
## @section 2.0 / Forms
----------------------------------------------------------------------------------*/
form label {
    position: relative;
    display: block;
    margin-bottom: 15px;
}
form .placeholder-animation .placeholder {
    font-size: 16px;
    max-width: calc(100% - 24px);
    position: absolute;
    top: 13px;
    left: 16px;
    transition: all .4s ease;
}
form .placeholder-animation .placeholder.focus {
    font-size: 12px;
    top: 7px;
    z-index: 1;
}

/*----------------------------------------------------------------------------------
## @section 2.0 / Single Pages
----------------------------------------------------------------------------------*/
/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Homepage - Inicio
--------------------------------------------------------------*/
.home-intro-section {
    overflow: hidden;
}
.home-intro-slider-wrap .home-intro-bullets-back {
    overflow: hidden;
}
.home-intro-slider-wrap .home-intro-bullets-back {
    z-index: -1;
    pointer-events: none;
}
.home-intro-slider-wrap .home-intro-bullets-back:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    max-width: 100%;
    padding-top: 100%;
    height: auto;
    border: 1px solid var(--color-prim);
    border-radius: 500px;
    transform: translateX(-50%);
}
.home-intro-slider-wrap .home-intro-bullets-back:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 100%;
    height: auto;
    background: linear-gradient(0, white, white 35%, transparent);
}
.home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single .intro-bullet-icon {
    background: var(--color-alt);
    padding: 10px;
    border-radius: 100px;
    border: 1px solid white;
    width: 55px;
    height: 55px;
    box-shadow: 0 0 15px rgba(15,15,15,.1);
    transform: scale(1);
    transition: all .4s ease;
    animation: alertIcon 1s ease-in-out 1s;
}
.home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single .intro-bullet-icon .elementor-widget-container svg {
    fill: white;
}
.home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single:hover .intro-bullet-icon,
.home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single.visible .intro-bullet-icon {
    transform: scale(1.2);
    background: var(--color-sec);
}
.home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single .intro-bullet-icon .elementor-widget-container {
    display: flex;
    align-items: center;
    justify-content: center;
}
.home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single p {
    display: inline;
    font-weight: 700;
    background: linear-gradient(to right, var(--color-black), var(--color-black));
    background-size: 0% 1px;
    background-position: left bottom;
    background-repeat: no-repeat;
    transition: background-size .4s;
}
.home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single:hover p,
.home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single.visible p {
    background-size: 100% 1px;
}
.home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single p:last-child {
    margin-bottom: 0;
}
.home-intro-slider-wrap .home-intro-main-image-wrap {
    margin-top: auto;
    transition: all .4s ease;
}
.home-intro-slider-wrap .home-intro-main-image-wrap.invisible {
    opacity: 0;
    visibility: hidden;
}
.home-intro-slider-wrap .home-intro-text-bullets-wrap {
    z-index: 0;
}
.home-intro-slider-wrap .home-intro-text-bullets-wrap:before {
    content: "";
    position: absolute;
    width: 630px;
    height: 630px;
    top: 50px;
    left: 50px;
    background: var(--color-prim);
    border-radius: 50%;
    z-index: -1;
}
.home-intro-slider-wrap .home-intro-text-bullets-wrap:after {
    content: "";
    background: linear-gradient(180deg, transparent, white 50%, white);
    position: absolute;
    width: 730px;
    height: 730px;
    top: 0;
    left: 0;
    z-index: -1;
}
.home-intro-slider-wrap .home-intro-text-bullets-wrap,
.home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-single {
    opacity: 0;
    visibility: hidden;
    transition: all .4s ease;
}
.home-intro-slider-wrap .home-intro-text-bullets-wrap.visible,
.home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-single.visible {
    opacity: 1;
    visibility: visible;
}
.home-intro-slider-wrap .home-intro-text-bullets-wrap > .e-con-inner {
    position: relative;
    max-width: 100%;
    margin-bottom: 50px;
}
.home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-single {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    max-width: 450px;
}
.home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-single .home-intro-text-bullets-icon {
    background: var(--color-sec);
    width: 70px;
    height: 70px;
    border-radius: 50%;
}
.home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-single .home-intro-text-bullets-icon .elementor-widget-container {
    display: flex;
    justify-content: center;
    align-items: center;
} 
.home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-single .home-intro-text-bullets-icon .elementor-widget-container svg {
    fill: white;
    transform: scale(1.5);
}
.home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-close {
    position: absolute;
    top: 20px;
    left: 50%;
    max-width: max-content;
    transform: translate(-50%, -50%);
}
.home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-close .close-btn {
    display: block;
    position: relative;
    width: 40px;
    height: 40px;
    background: white;
    border: 1px solid white;
    border-radius: 100%;
    cursor: pointer;
    transition: all .5s ease;
    box-shadow: 0 0 15px rgba(15,15,15,.1);
}
.home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-close .close-btn .close-btn-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 15px;
    height: 15px;
    transform: translate(-50%, -50%) rotate(45deg);
}
.home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-close .close-btn .close-btn-icon:before,
.home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-close .close-btn .close-btn-icon:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 1px;
    background: var(--color-black);
    transition: all .5s ease;
}
.home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-close .close-btn .close-btn-icon:after {
    height: 100%;
    width: 1px;
}
.home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-single h2 {
    font-size: 30px;
    margin-bottom: 0;
}
.home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-single .elementor-widget-button,
.home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-single .elementor-widget-button a {
    width: 100%;
}
.home-intro-title-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}
.home-intro-floating-btn .home-intro-floating-btn-text p:last-child {
    margin-bottom: 0;
}
.home-intro-floating-btn .home-intro-floating-btn-wrap > .e-con-inner {
    position: relative;
    padding: 8px 15px 8px 0;
}
.home-intro-floating-btn .home-intro-floating-btn-wrap > .e-con-inner:before {
    content: "";
    position: absolute;
    top: 0;
    left: calc( 45px / 2);
    width: calc(100% - 45px / 2);
    height: 100%;
    border: 1px solid var(--color-prim);
    border-radius: 5px;
    box-shadow: 0 0 15px rgba(15,15,15,.1);
}
.home-intro-floating-btn .home-intro-floating-btn-icon {
    background: var(--color-alt);
    padding: 10px;
    border-radius: 100px;
    border: 1px solid white;
    width: 45px;
    height: 45px;
    box-shadow: 0 0 15px rgba(15,15,15,.1);
    transform: scale(1);
    transition: all .4s ease;
}
.home-intro-floating-btn .home-intro-floating-btn-wrap:hover .home-intro-floating-btn-icon {
    transform: scale(1.2);
}
.home-intro-floating-btn .home-intro-floating-btn-icon svg {
    fill:white;
}
.home-intro-floating-btn .home-intro-floating-btn-icon .elementor-widget-container {
    display: flex;
    align-items: center;
    justify-content: center;
}
@media ( max-width: 450px ) {
    .home-intro-floating-btn .home-intro-floating-btn-wrap > .e-con-inner .home-intro-floating-btn-text.elementor-element {
        text-align: left;
        max-width: calc(100% - 55px);
    }
}
@media ( max-width: 767px ) {
    .home-intro-slider-wrap .home-intro-bullets-back {
        display: none;
    }
    .home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single > .e-con-inner > .intro-bullet-text {
        width: 100%;
        max-width: calc(100% - 75px);
    }
    
    .home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single:before {
        content: "";
        position: absolute;
        width: 100%;
        height: 1px;
        background: var(--color-prim);
        top: -10px;
    }
    .home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single:last-child:after {
        content: "";
        position: absolute;
        width: 100%;
        height: 1px;
        background: var(--color-prim);
        bottom: -10px;
    }
    .home-intro-slider-wrap .home-intro-text-bullets-wrap {
        height: 0;
    }
    .home-intro-slider-wrap .home-intro-main-image-wrap {
        max-height: 100%;
        overflow: hidden;
    }
    .home-intro-slider-wrap .home-intro-main-image-wrap.invisible {
        max-height: 0;
    }
    .home-intro-slider-wrap .home-intro-text-bullets-wrap:before,
    .home-intro-slider-wrap .home-intro-text-bullets-wrap:after {
        content: none;
    }
    .home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-single {
        padding-top: 50px;
    }
    .home-intro-floating-btn .home-intro-floating-btn-wrap > .e-con-inner {
        max-width: 400px;
    }
}
@media ( min-width: 768px ) {
    .home-intro-slider-wrap .home-intro-floating-btn .home-intro-floating-btn-wrap {
        width: max-content;
        max-width: 100%;
    }
    .home-intro-floating-btn .home-intro-floating-btn-wrap > .e-con-inner {
        max-width: max-content;
    }
    .elementor-element.home-intro-section {
        /*min-height: calc(100vh - 89px - 46px);*/
    }
    .home-intro-slider-wrap .home-intro-bullets-back,
    .home-intro-slider-wrap .home-intro-bullets-wrap,
    .home-intro-slider-wrap .home-intro-text-bullets-wrap {
        width: 100%;
        max-width: 60%;
        height: auto;
        padding-top: 46vw;
        position: absolute;
        bottom: 70px;
        left: 50%;
        transform: translateX(-50%);
    }
    .home-intro-slider-wrap .home-intro-bullets-back {
        z-index: -1;
    }
    .home-intro-slider-wrap .home-intro-bullets-wrap {
        z-index: 1;
        pointer-events: none;
    }
    .home-intro-slider-wrap .home-intro-bullets-wrap > .e-con-inner {
        position: none;
    }
    .home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single {
        position: absolute;
        max-width: max-content;
        pointer-events: all;
        cursor: pointer;
    }
    .home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single:nth-of-type(1) {
        left: calc(5px + 45px / 2);
        top: 50%;
        text-align: right;
        transform: translateX(-100%);
    }
    .home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single:nth-of-type(2) {
        left: calc(110px + (45px / 2));
        top: 15%;
        text-align: right;
        transform: translateX(-100%);
    }
    .home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single:nth-of-type(3) {
        left: calc(50% - (45px / 2));
        top: -25px;
    }
    .home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single:nth-of-type(4) {
        left: calc(100% - 110px - (45px / 2));
        top: 15%;
    }
    .home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single:nth-of-type(5) {
        left: calc(100% - 5px - (45px / 2));
        top: 50%;
    }
    .home-intro-slider-wrap .home-intro-floating-btn {
        position: absolute;
        z-index: 1;
        left: 0;
    }
    .home-intro-slider-wrap .home-intro-floating-btn-up {
        bottom: 640px;
    }
    .home-intro-slider-wrap .home-intro-floating-btn-down {
        bottom: 10px;
    }
    .home-intro-slider-wrap .home-intro-text-bullets-wrap {
        max-width: 60%;
        padding-top: 46vw;
    }
    .home-intro-slider-wrap .home-intro-text-bullets-wrap > .e-con-inner {
        max-width: 80%;
    }
    .home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-single {
        max-width: 400px;
        top: auto;
        bottom: 0;
    }
    .home-intro-slider-wrap .home-intro-main-image-wrap {
        margin-bottom: 70px;
    }
}
@media ( min-width: 768px ) and ( max-width: 1200px ) {
    .elementor-element.home-intro-section {
        /*min-height: calc(100vh - 89px - 46px);*/
    }
    .home-intro-slider-wrap .home-intro-text-bullets-wrap:before,
    .home-intro-slider-wrap .home-intro-text-bullets-wrap:after {
        width: 100%;
        max-width: 100%;
        height: auto;
        padding-top: 100%;
        top: 50px;
        left: 50%;
        transform: scale(0.9) translateX(-50%);
        transform-origin: left;
    }
    .home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single:nth-of-type(2) {
        left: calc(7.5vw + (45px / 2));
    }
    .home-intro-bullets-wrap > .e-con-inner .home-intro-bullets-single:nth-of-type(4) {
        left: calc(51vw - (45px / 2));
    }
    .home-intro-slider-wrap .home-intro-floating-btn-up {
        bottom: calc(46vw + 280px);
        top: auto;
    }
    .home-intro-slider-wrap .home-intro-bullets-back,
    .home-intro-slider-wrap .home-intro-bullets-wrap,
    .home-intro-slider-wrap .home-intro-text-bullets-wrap { 
        bottom: 220px;
    }
    .home-intro-slider-wrap .home-intro-text-bullets-wrap > .e-con-inner {
        position: unset;
    }
    .home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-single {
        top: 130px;
        bottom: auto;
        max-width: 70%;
    }
    .home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-close {
        top: 105px;
    }
    .home-intro-slider-wrap .home-intro-main-image-wrap {
        margin-bottom: 220px;
    }
    .home-intro-slider-wrap .home-intro-main-image-wrap .e-con-inner .elementor-element {
        max-width: 60% !important;
    }
}
@media (min-width: 1000px) and (max-width: 1200px) {
    .home-intro-slider-wrap .home-intro-bullets-back,
    .home-intro-slider-wrap .home-intro-bullets-wrap,
    .home-intro-slider-wrap .home-intro-text-bullets-wrap {
        bottom: 120px;
    }
    .home-intro-slider-wrap .home-intro-main-image-wrap {
        margin-bottom: 120px;
    }
    .home-intro-slider-wrap .home-intro-floating-btn-up {
        bottom: calc(46vw + 180px);
    }
}
@media (min-width: 1024px) {
    .home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-close {
        top: 110px;
    }
}
@media (min-width: 1201px) {
    .elementor-element.home-intro-slider-wrap > .e-con-inner {
        padding-top: 200px;
    } 
    .home-intro-slider-wrap .home-intro-bullets-back,
    .home-intro-slider-wrap .home-intro-bullets-wrap,
    .home-intro-slider-wrap .home-intro-text-bullets-wrap {
        max-width: 730px;
        max-height: 550px;
        padding-top: 0;
        width: 100%;
        height: 100%;
    }
    .home-intro-slider-wrap .home-intro-text-bullets-wrap:before {
        width: 630px;
        height: 630px;
        top: 50px;
        left: 50px;
    }
    .home-intro-slider-wrap .home-intro-text-bullets-wrap:after {
        width: 730px;
        height: 730px;
        top: 0;
        left: 0;
    }
    .home-intro-slider-wrap .home-intro-text-bullets-wrap > .e-con-inner {
        max-width: 80%;
        margin-bottom: 60px;
    }
    .home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-single {
        bottom: -40px;
    }
    .home-intro-slider-wrap .home-intro-floating-btn-up {
        bottom: 670px;
    }
    .home-intro-slider-wrap .home-intro-text-bullets-wrap .home-intro-text-bullets-close {
        top: 90px;
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Homepage - Destacados
--------------------------------------------------------------*/
.home-destacados-section.elementor-element:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 180px;
    background: var(--color-prim);
}
.home-destacados-section .home-destacados-wrap .home-destacados-col:before {
    content: "" !important;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 40px);
    background: white;
    box-shadow: 0 5px 15px rgba(15,15,15,.1);
    border-top: 1px solid var(--color-sec);
}
.home-destacados-section .home-destacados-wrap .home-destacados-col .home-destacado-icon {
    margin-top: -55px;
    width: 55px;
    height: 55px;
    padding: 10px;
    background: var(--color-alt);
    border-radius: 50%;
    margin-bottom: 15px;
    border: 1px solid white;
    box-shadow: 0 0 15px rgba(15,15,15,.1);
}
.home-destacados-section .home-destacados-wrap .home-destacados-col .home-destacado-icon svg {
    fill: white;
}
.home-destacados-section .home-destacados-wrap .home-destacados-col .home-destacado-icon .elementor-widget-container {
    display: flex;
    justify-content: center;
    align-items: center;
}
.home-destacados-section .home-destacados-wrap .home-destacados-col h3 {
    margin-bottom: 10px;
}
.home-destacados-section .home-destacados-wrap .home-destacados-col .elementor-widget-button {
    margin-top: auto;
}
.home-destacados-section .home-destacados-wrap .home-destacados-col .elementor-widget-button .elementor-button {
    min-width: 80%;
    max-width: 100%;
}
@media ( min-width: 768px ) {
    .home-destacados-section.elementor-element:before {
        height: calc(100% - 100px);
    }
} 
/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Homepage - Historias
--------------------------------------------------------------*/
.elementor-element.home-historias-section:before {
    content: "";
    position: absolute;
    top: 0;
    width: 100%;
    max-width: 50%;
    background: var(--color-prim);
    height: calc(56vw + 25px);
    left: 0;
    border-radius: 0 20px 20px 0;
}
.home-historias-content > .e-con-inner {
    margin-left: 0;
}
.home-historias-content .home-historias-content-text > .e-con-inner {
    margin-left: 0  ;
}
.home-historias-content .home-historias-content-text .elementor-widget-button,
.home-historias-content .home-historias-content-text .elementor-widget-button a {
    width: 100%;
}
@media (min-width: 768px) {
    .elementor-element.home-historias-section:before {
        left: 0;
        right: auto;
        height: 100%;
        max-width: calc(25% + 40px);
        border-radius: 0 20px 0 0;
    }
    .home-historias-wrap > .e-con-inner:before {
        /*content: "";*/
        position: absolute;
        top: 50%;
        right: 45%;
        width: calc(55% / 2 );
        height: calc(100% + 30px);
        background: white;
        left: auto;
        transform: translateY(-50%);
    }
}
@media (min-width: 1440px) {
    .elementor-element.home-historias-section:before {
        max-width: calc( 50% - (var(--max-content) / 5));
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Homepage - Impacto social
--------------------------------------------------------------*/
.home-impacto-title.elementor-element {
    max-width: 340px;
}
.home-impacto-title-datos.elementor-element {
    max-width: 760px;
}
.home-impacto-back.elementor-element {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.home-impacto-back .elementor-widget-container {
    display: flex;
    justify-content: center;
    align-items: center;
}
.home-impacto-single-back.elementor-element {
    width: 100%;
    height: 100%;
}
.home-impacto-single-back div {
    height: 100%;
}
.home-impacto-single-back .hexagon {
    position: absolute;
    display: inline-block;
    width: 100%;
    height: 100%;
    color: var(--color-sec);
    filter: url(#round);
}
.home-impacto-single-back .hexagon:before{
    content:"";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    background: var(--color-sec);
    clip-path: polygon(50% 0, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0 25%);
}
.home-impacto-single-back .hexagon-inner:before {
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    top: 1px;
    left: 1px;
    background: white;
}
.home-impacto-single-content {
    max-width: 80%;
}
.home-impacto-single-content > .e-con-inner {
    padding-top: 70px;
    padding-bottom: 70px;
    position: relative;
}
.home-impacto-single-content > .e-con-inner:before,
.home-impacto-single-content > .e-con-inner:after {
    /*content: "";*/
    position: absolute;
    left: 50%;
    width: 50px;
    height: 25px;
    background: var(--color-prim);
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}
.home-impacto-single-content > .e-con-inner:before {
    top: 20px;
    transform: translateX(-50%);
}
.home-impacto-single-content > .e-con-inner:after {
    bottom: 20px;
    transform: translateX(-50%) rotate(180deg);
}
.home-impacto-single-content .text-big span {
    font-size: 30px;
}
.home-impacto-single-content p:last-child {
    margin-bottom: 0;
}
.home-impacto-icono.elementor-element {
    position: absolute;
    top: 0;
    transform: translateY(-50%);
    z-index: 1;
}
.home-impacto-icono .elementor-icon {
    border: 1px solid var(--color-sec);
}
@media (max-width: 649px) {
    .home-impacto-wrap-datos .home-impacto-wrap-single {
        max-width: 400px;
    }
}    
@media (min-width: 650px) and (max-width: 1023px) {
    .elementor-element.home-impacto-wrap-datos > .e-con-inner {
        flex-wrap: wrap;
        width: 100%;
        justify-content: center;
    }
    .home-impacto-wrap-datos .home-impacto-wrap-single {
        width: 50%;
        max-width: 400px;
    }
    .home-impacto-wrap-datos .home-impacto-wrap-single:nth-of-type(4) {
        /*margin-top: -12%;*/
    }
}
@media (min-width: 768px) {
    .home-impacto-single-content .text-big span {
        font-size: 33px;
    }
}
@media (min-width: 1024px) {
    .home-impacto-single-content .text-big span {
        font-size: 35px;
    }
}


/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Homepage - Agenda
--------------------------------------------------------------*/
.home-agenda-section .home-agenda-posts-single-content {
    height: 100%;
}
.home-agenda-section .home-agenda-posts-single-content .elementor-widget-button {
    margin-top: auto;
}
@media (min-width: 1024px) {
    .home-agenda-section .home-agenda-title-wrap {
        width: 100%;
        max-width: 300px;
    }
    .home-agenda-section .home-agenda-posts-wrap {
        width: 100%;
        max-width: calc(100% - 300px);
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Homepage - Blog
--------------------------------------------------------------*/
.home-blog-wrap .ekit-wid-con .col-lg-4 {
    padding-top: 15px;
    padding-bottom: 15px;
}
.home-blog-wrap .ekit-wid-con .elementskit-post-image-card {
    height: 100%;
    display: flex !important;
    flex-direction: column;
}
.home-blog-wrap .ekit-wid-con .elementskit-post-image-card .elementskit-post-body {
    height: 100%;
    display: flex !important;
    flex-direction: column;
}
.home-blog-wrap .ekit-wid-con .elementskit-post-image-card .elementskit-post-body .btn-wraper {
    margin-top: auto;
}
.home-blog-wrap .ekit-wid-con .elementskit-post-image-card .elementskit-post-body .entry-title a {
    text-transform: uppercase;
}
.home-blog-section .elementor-widget-elementskit-blog-posts .btn-wraper a:hover {
    border-color: var(--color-sec);
}
.home-blog-wrap .ekit-wid-con .elementskit-post-image-card .elementskit-entry-header a.elementskit-entry-thumb {
    padding-top: 75%;
    overflow: hidden;
    position: relative;
}
.home-blog-wrap .ekit-wid-con .elementskit-post-image-card .elementskit-entry-header .elementskit-entry-thumb img {
    transition: all .8s ease;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.home-blog-section .ekit-wid-con .elementskit-post-image-card:hover .elementskit-entry-thumb > img {
    opacity: 1;
    transform: scale(1.1);
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Homepage - Respaldo
--------------------------------------------------------------*/
.home-respaldo-slider-wrap .elementor-swiper-button.elementor-swiper-button-next,
.home-respaldo-slider-wrap .elementor-swiper-button.elementor-swiper-button-prev {
    background: var(--color-prim);
    padding: 5px;
    border-radius: 2px;
}
.home-respaldo-slider-title> .elementor-widget-container {
    display: flex;
    align-items: center;
}
.home-respaldo-slider-title > .elementor-widget-container:before,
.home-respaldo-slider-title > .elementor-widget-container:after {
    content: "";
    position: relative;
    border-top: 5px dotted var(--color-alt);
    flex-grow: 1;
}
.home-respaldo-slider-title .elementor-heading-title {
    width: max-content;
    padding-left: 30px;
    padding-right: 30px;
    display: inline-block;
}
@media (min-width: 768px) {
    .home-respaldo-section .home-respaldo-title-wrap {
        max-width: 320px;
    }
    .home-respaldo-section .home-respaldo-slider-section {
        max-width: 840px;
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Homepage - Contacto
--------------------------------------------------------------*/
.home-contacto-section .elementor-element.col-content .home-contacto-form-wrap:after {
    content: "";
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background: white;
    border-radius: 5px;
    z-index: 0;
}
.home-contacto-section .elementor-element.col-content .home-contacto-form-wrap:before {
    content: "";
    position: absolute;
    top: 20px;
    left: 20px;
    width: 100%;
    height: 100%;
    background: var(--color-prim);
    border-radius: 5px;
}
.home-contacto-section .elementor-element.col-content .home-contacto-form-wrap > .e-con-inner {
    z-index: 1;
}
.home-contacto-section .img-col .elementor-widget-image {
    width: 100%;
    height: 100%;
}
.home-contacto-section .img-col img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media (max-width: 767px) { 
    .home-contacto-section .img-col {
        padding-top: 56%;
        position: relative;
        width: 100%;
    }
    .home-contacto-section .img-col .elementor-widget-image {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
}
@media (min-width: 768px) { 
    .home-contacto-title-wrap.elementor-element {
        max-width: 400px;
    }
    .home-contacto-section .elementor-element.col-content > .e-con-inner {
        max-width: 500px;
        margin-left: 0;
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Observatorio
--------------------------------------------------------------*/
.elementor-element.observatorio-img-text:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    padding-top: 46%;
    background: var(--color-prim);
    border-radius: 0px;
}
@media (min-width:768px) {
    .elementor-element.observatorio-img-text:before {
        width: 100%;
        max-width: 25%;
        height: 100%;
        border-radius: 0 10px 10px 0;
        padding-top: 0;
    }
}
@media (min-width: 1440px) {
    .elementor-element.observatorio-img-text:before {
        max-width: calc( 50% - (var(--max-content) / 4));
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / SEcciuon Estudios realizados
--------------------------------------------------------------*/
.elementor-element.seccion-estudios-realizados-grid > .e-con-inner{
    /*display: grid;*/
}
.seccion-estudios-realizados-grid .single-estudio {
    background: white;
    border: 1px solid var(--color-sec);
    border-radius: 5px;
    padding: 20px;
}
.seccion-estudios-realizados-grid .single-estudio .elementor-widget-button {
    margin-top: auto;
}
@media ( min-width: 600px ) {
    .seccion-estudios-realizados-grid > .e-con-inner {
        grid-template-columns: repeat(2, 1fr);
    }
    .seccion-estudios-realizados-grid .single-estudio {
        max-width: calc(50% - 10px);
    }
}
@media ( min-width: 900px ) {
    .seccion-estudios-realizados-grid > .e-con-inner {
        grid-template-columns: repeat(3, 1fr);
    }
    .seccion-estudios-realizados-grid .single-estudio {
        max-width: calc(33% - 10px);
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / App
--------------------------------------------------------------*/
.seccion-app-1 .col-text .col-text-wrap:before,
.seccion-app-2 .col-text .col-text-wrap:before {
    content: "";
    position: absolute;
    top: 0px;
    left: -20px;
    height: 100%;
    width: 1px;
    background: var(--color-alt);
}
.seccion-app-2 .col-text .col-text-wrap:before {
    left: auto;
    right: -20px;
}
.seccion-app-2 .col-img .elementor-widget-html:Before,
.seccion-app-1 .col-img .elementor-widget-html:Before,
.seccion-app-2 .col-img .elementor-widget-image:Before,
.seccion-app-1 .col-img .elementor-widget-image:Before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: var(--color-back);
    width: 100%;
    height: auto;
    padding-top: 100%;
    border-radius: 100%;
}
.seccion-app-2 .col-img .elementor-widget-html > .elementor-widget-container,
.seccion-app-1 .col-img .elementor-widget-html > .elementor-widget-container,
.seccion-app-2 .col-img .elementor-widget-image > .elementor-widget-container,
.seccion-app-1 .col-img .elementor-widget-image > .elementor-widget-container {
    padding-top: 100%;
}
.seccion-app-2 .col-img svg,
.seccion-app-1 .col-img svg {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
@media (min-width: 768px) {
    .seccion-app-1 .col-text .col-text-wrap:before {
        top: -40px;
    }
    .seccion-app-2 .col-text .col-text-wrap:before {
        top: auto;
        bottom: 0px;
    }
}
@media (min-width: 1025px) {
    .seccion-app-2 .col-text .col-text-wrap:before {
        bottom: 20px;
        height: calc(100% - 40px);
    }
}


/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Quienes somos
--------------------------------------------------------------*/
.elementor-element.quienes-somos-grid-single:before {
    /*content: "";*/
    position: absolute;
    top: 32px;
    left: 50%;
    width: calc(100% + 20px);
    height: 1px;
    background: var(--color-sec);
    transform: translate(-50%, -50%);
}
.elementor-element.quienes-somos-grid-single > .e-con-inner:before,
.elementor-element.quienes-somos-grid-single > .e-con-inner:after {
    /*content: "";*/
    position: absolute;
    top: 32px;
    left: -15px;
    width: 10px;
    height: 10px;
    background: var(--color-sec);
    border-radius: 50px;
    transform: translateY(-50%);
}
.elementor-element.quienes-somos-grid-single > .e-con-inner:after {
    left: auto;
    right: -15px;
}
@media (min-width: 768px) {
    .elementor-element.quienes-somos-grid-single:before {
        width: calc(100% + 40px);
    }
    .elementor-element.quienes-somos-grid-single:first-child:before,
    .elementor-element.quienes-somos-grid-single:last-child:before {
        width: calc(100% + 20px);
    }
    .elementor-element.quienes-somos-grid-single > .e-con-inner:before,
    .elementor-element.quienes-somos-grid-single > .e-con-inner:after {
        content:  none;
    }
    .elementor-element.quienes-somos-grid-single:first-child > .e-con-inner:before {
        /*content: "";*/
    }
    .elementor-element.quienes-somos-grid-single:last-child > .e-con-inner:after {
        /*content: "";*/
    }
}
@media (min-width: 1200px) {
    .elementor-element.quienes-somos-grid-single:first-child:before {
        width: 110%;
        left: -10%;
        transform: translateY(-50%);
    }
    .elementor-element.quienes-somos-grid-single:last-child:before {
        width: 110%;
        right: -10%;
        left: auto;
        transform: translateY(-50%);
    }
    .elementor-element.quienes-somos-grid-single:first-child > .e-con-inner:before {
        left: -10%;
        width: 15px;
        height: 15px;
    }
    .elementor-element.quienes-somos-grid-single:last-child > .e-con-inner:after {
        left: auto;
        right: -10%;
        width: 15px;
        height: 15px;
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Mision
--------------------------------------------------------------*/
.seccion-mision-vision .col-img:before {
    /*content: "";*/
    position: absolute;
    top: 0;
    left: auto;
    right: -30px;
    width: 85%;
    height: 100%;
    background: var(--color-prim);
    border-radius: 20px 0px 0px 20px;
}
@media (min-width: 768px ) {
    .seccion-mision-vision .col-img:before {
        right: 0;
        border-radius: 20px 20px 20px 100px;
    }
}
.mision-valores-grid .valor-single {
    background-color: white;
    box-shadow: 0 5px 15px rgba(0,0,0,.1);
    border-radius: 10px;
}
.mision-valores-grid .valor-single .elementor-widget-html .elementor-widget-container {
    width: 55px;
    height: 55px;
    padding: 12px;
    background: var(--color-alt);
    border: 1px solid white;
    border-radius: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.mision-valores-grid .valor-single .elementor-widget-html .elementor-widget-container svg {
    width: 100%;
}
@media (min-width: 768px) {
    .seccion-mision-valores .seccion-mision-valores-content .mision-valores-grid,
    .seccion-mision-valores .seccion-mision-valores-content .mision-valores-grid > .e-con-inner {
        display: grid;
        grid-gap: 40px;
        grid-template-columns: repeat(2 ,1fr);
    }
    .mision-valores-grid .valor-single:first-child:after,
    .mision-valores-grid .valor-single:last-child:after {
        /*content: "";*/
        position: absolute;
        top: 55px;
        left: -40px;
        width: 15px;
        height: 15px;
        background: var(--color-sec);
        z-index: -1;
        border-radius: 50px;
        transform: translateY(-50%);
    }
    .mision-valores-grid .valor-single:before {
        /*content: "";*/
        position: absolute;
        top: 55px;
        left: -25px;
        width: calc(100% + 25px + 40px);
        height: 1px;
        background: var(--color-sec);
        z-index: -1;
    }
    .mision-valores-grid .valor-single:nth-of-type(4n+2):before {
        left: auto;
        right: -25px;
        height: calc(100% + 41px);
        border: 1px solid var(--color-sec);
        background: transparent;
        border-left: 0;
        border-top-right-radius: 15px;
        border-bottom-right-radius: 15px;
    }
    .mision-valores-grid .valor-single:nth-of-type(4n+3):before {
        left: -25px;
        height: calc(100% + 41px);
        border: 1px solid var(--color-sec);
        background: transparent;
        border-right: 0;
        border-top-left-radius: 15px;
        border-bottom-left-radius: 15px;
    }
    .mision-valores-grid .valor-single:nth-of-type(4n+4):before,
    .mision-valores-grid .valor-single:nth-of-type(4n+5):before {
        content: none;
    }
    .mision-valores-grid .valor-single:nth-of-type(4n+3):nth-last-child(1) {
        grid-column-end: 3;
    }
    .mision-valores-grid .valor-single:nth-of-type(4n+3):nth-last-child(1):before {
        content: none;
    }
    .mision-valores-grid .valor-single:nth-of-type(4n+3):nth-last-child(2):before,
    .mision-valores-grid .valor-single:nth-of-type(4n+2):nth-last-child(1):before {
        height: 1px;
        border-radius: 0;
        border: 0;
        background: var(--color-sec);
    }
    .mision-valores-grid .valor-single:nth-of-type(4n+2):nth-last-child(1):after,
    .mision-valores-grid .valor-single:nth-of-type(4n+5):after {
        left: auto;
        right: -40px;
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Organos gobierno
--------------------------------------------------------------*/
.grid-organos-single .grid-organos-header .img {
    width: 110px;
    height: 110px;
}
.grid-organos-single .grid-organos-header .img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    border-radius: 500px;
}
.grid-organos-single .grid-organos-header .title-wrap {
    width: 100%;
    max-width: 100%;
    padding-top: 20px;
}
.grid-organos-single .grid-organos-header .title-wrap p {
    margin-bottom: 5px;
}
.grid-organos-single .grid-organos-header .title-wrap h3 {
    color: var(--color-alt);
}
.grid-organos-gobierno .grid-organos-single {
    border: 1px solid var(--color-border);
    border-radius: 20px;
    padding: 20px;
}
.grid-organos-gobierno .grid-organos-single .grid-organos-content p:last-child {
    margin-bottom: 0;
}
@media (min-width: 768px) {
    .grid-organos-gobierno .grid-organos-single {
        width: calc(50% - 20px);
    }
    .grid-organos-single .grid-organos-header .title-wrap {
        width: 100%;
        max-width: calc(100% - 110px);
        padding-left: 20px;
        padding-top: 0;
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Obras realizadas
--------------------------------------------------------------*/
.obra-single .col-title {
    border: 1px solid var(--color-sec);
    border-radius: 10px;
    padding: 20px;
}
.obra-single .col-imgs .imgs-antes,
.obra-single .col-imgs .imgs-separador,
.obra-single .col-imgs .imgs-despues {
    padding: 0;
}
.obra-single .col-imgs .imgs-antes:before {
    content: "Antes";
}
html[lang="ca"] .obra-single .col-imgs .imgs-antes:before {
    content: "Abans";
}
.obra-single .col-imgs .imgs-despues:before {
    content: "Después";
}
html[lang="ca"] .obra-single .col-imgs .imgs-despues:before {
    content: "Després";
}
.obra-single .col-imgs .imgs-antes:before,
.obra-single .col-imgs .imgs-despues:before {
    display: block;
    font-weight: 700;
    text-align: center;
    position: relative;
    width: 100%;
    display: block;
    margin-bottom: 0px;
    line-height: 1;
    height: auto;
}
.obra-single .col-imgs .imgs-separador:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0px;
    width: 100%;
    height: 1px;
    background: var(--color-sec);
    transform: translateY(-50%);
}
.obra-single .col-imgs .imgs-separador .elementor-icon-wrapper {
    display: flex;
    align-items: center;
}
@media (max-width: 768px) {
    .obra-single .col-imgs .imgs-separador .elementor-icon-wrapper {
        transform: rotate(90deg);
    }
    .obra-single .col-imgs .imgs-separador {
        padding-top: 0;
    }
}
@media (min-width: 768px) {
    .obra-single .col-title {
        max-width: 200px;
    }
    .obra-single .col-imgs {
        max-width: calc(100% - 200px);
    }
    .obra-single .col-imgs .imgs-separador {
        width: 40px;
        flex-shrink: 0;
    }
    .obra-single .col-imgs .imgs-separador:before {
        width: 1px;
        height: 100%;
        top: auto;
        bottom: 0;
        height: calc(100% - 38px);
        left: 50%;
        transform: translateX(-50%);
    }
    .obra-single .col-imgs .imgs-antes:before,
    .obra-single .col-imgs .imgs-despues:before {
        text-align: left;
    }
    .obra-single .col-imgs .imgs-antes > .elementor-element,
    .obra-single .col-imgs .imgs-antes > .elementor-element img,
    .obra-single .col-imgs .imgs-despues > .elementor-element,
    .obra-single .col-imgs .imgs-despues > .elementor-element img {
        width: 100%;
        height: auto;
    }
}
@media (min-width: 1025px) {
    .obra-single .col-title {
        max-width: 320px;
    }
    .obra-single .col-imgs {
        max-width: calc(100% - 320px - 100px);
    }
}
@media (min-width: 1450px) {
    .obra-single .col-imgs {
        max-width: calc(100% - 320px);
    }
}


/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Historias Sin Barreras
--------------------------------------------------------------*/
.elementor-element.seccion-testimonios-fotos .elementor-widget-image {
    width: 100%;
}
.elementor-element.seccion-testimonios-fotos .elementor-widget-image > .elementor-widget-container {
    padding-top: 56%;
    position: relative;
    width: 100%;
}
.elementor-element.seccion-testimonios-fotos .elementor-widget-image > .elementor-widget-container img {
    border-radius: 20px 20px 20px 20px;
    width: max-content;
    height: auto;
    position: absolute;
    object-fit: contain;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 100%;
    max-height: 100%;
}
.seccion-testimonios-fotos-title .elementor-widget-heading:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
    background: var(--color-sec);
    z-index: -1;
}
.seccion-testimonios-fotos-title .elementor-widget-heading .elementor-heading-title {
    width: max-content;
    max-width: 100%;
    background: white;
    margin: 0 auto;
    padding: 0 30px;
}
@media ( min-width: 768px) {
    .elementor-element.seccion-testimonios-fotos > .e-con-inner {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Convocatorias page
--------------------------------------------------------------*/
.convocatorias-grid-wrap {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.convocatorias-grid .convocatorias-single {
    background: white;
    border: 1px solid var(--color-prim);
    border-radius: 10px;
}
.convocatorias-grid .convocatorias-single > .e-con-inner {
    flex-direction: column;
}
.convocatorias-grid .convocatorias-btn {
    max-width: 170px;
}
@media(max-width: 767px) {
    .convocatorias-grid .convocatorias-img > .e-con-inner {
        display: flex;
        flex-wrap: nowrap;
        flex-direction: row;
    }
    .elementor-element.convocatorias-grid .elementor-element.convocatorias-img .elementor-widget-image {
        max-width: 50%;
    }
}
@media (min-width: 768px) {
    .convocatorias-grid .convocatorias-single > .e-con-inner {
        flex-direction: row;
        align-items: center;
    }
    .convocatorias-grid .convocatorias-img {
        max-width: 185px;
    }
    .convocatorias-grid .convocatorias-img > .e-con-inner {
        flex-direction: column;
    }
    .convocatorias-grid .convocatorias-btn .elementor-button-wrapper {
        text-align: right;
    }
}
/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Convocatorias single
--------------------------------------------------------------*/
.solicitar-convo a.elementor-button {
    min-width: 100%;
    padding: 15px 40px;
}
@media (min-width: 768px) {
    .convocatoria-descargable .convocatoria-descargable-title {
        max-width: 400px;
    }
    .convocatoria-descargable .convocatoria-descargable-img {
        max-width: calc(100% - 400px);
    }
    .elementor-element.convocatoria-descargable .e-con-inner .convocatoria-descargable-img >.elementor-element {
        max-width: 400px;
        margin-left: auto;
    }
    .solicitar-convo a.elementor-button {
        min-width: 320px;
    }
}


/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Transparencia
--------------------------------------------------------------*/
.transparencia-single .elementor-widget-html .elementor-widget-container,
.transparencia-grid-title .elementor-widget-html .elementor-widget-container {
    width: 55px;
    height: 55px;
}
.transparencia-single .elementor-widget-html .elementor-widget-container svg,
.transparencia-grid-title .elementor-widget-html .elementor-widget-container svg {
    width: 100%;
    height: 100%;
    fill: white;
}
.seccion-transparencia .transparencia-single .elementor-widget-button {
    margin-top: auto;
}
.elementor-element.transparencia-grid > .e-con-inner {
    display: grid;
    grid-gap: 20px;
}
.elementor-element.transparencia-grid-title > .e-con-inner {
    max-width: 320px;
    margin-left: 6%;
}
@media (min-width: 768px) {
    .elementor-element.transparencia-grid-title {
        max-width: 33.33%;
    }
    .elementor-element.transparencia-grid {
        width: calc(66.66%);
        padding-left: 7px;
    }
    .elementor-element.transparencia-grid > .e-con-inner {
        grid-template-columns: repeat(2, 1fr);
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Programa
--------------------------------------------------------------*/
.programa-ayuda-seccion .img-col .programa-ayuda-slide-1-opener,
.programa-ayuda-seccion .img-col .programa-ayuda-slide-2-opener {
    max-width: max-content;
}
.programa-ayuda-seccion .img-col .programa-ayuda-slide-1-opener svg,
.programa-ayuda-seccion .img-col .programa-ayuda-slide-2-opener svg {
    transition: all .4s ease;
}
.programa-ayuda-seccion .img-col:hover .programa-ayuda-slide-1-opener svg,
.programa-ayuda-seccion .img-col:hover .programa-ayuda-slide-2-opener svg {
    transform: scale(1.2);
}
.programa-ayuda-seccion .img-col .programa-ayuda-slide-1-opener.open svg,
.programa-ayuda-seccion .img-col .programa-ayuda-slide-2-opener.open svg {
    transform: scale(1.2);
}
.elementor-element.programa-ayuda-slide-1-opener > .elementor-widget-container,
.elementor-element.programa-ayuda-slide-2-opener > .elementor-widget-container {
    display: flex;
}
.elementor-element.programa-ayuda-slide-1-opener .icon-closer,
.elementor-element.programa-ayuda-slide-2-opener .icon-closer {
    opacity: 0;
    transition: all .8s ease;
}
.elementor-element.programa-ayuda-slide-1-opener .icon-opener,
.elementor-element.programa-ayuda-slide-2-opener .icon-opener {
    opacity: 1;
    transition: all .8s ease;
}
.elementor-element.programa-ayuda-slide-1-opener.open .icon-opener,
.elementor-element.programa-ayuda-slide-2-opener.open .icon-opener {
    opacity: 0;
}
.elementor-element.programa-ayuda-slide-1-opener.open .icon-closer,
.elementor-element.programa-ayuda-slide-2-opener.open .icon-closer {
    opacity: 1;
}
.elementor-element.programa-ayuda-slide-1-opener.open .icon-closer,
.elementor-element.programa-ayuda-slide-2-opener.open .icon-closer {
    opacity: 1;
}
.elementor-element.programa-ayuda-slide-1-opener.open svg .back-icon,
.elementor-element.programa-ayuda-slide-1-opener:hover svg .back-icon,
.elementor-element.programa-ayuda-slide-2-opener.open svg .back-icon,
.elementor-element.programa-ayuda-slide-2-opener:hover svg .back-icon {
    fill: var(--color-sec);
}
.elementor-element.programa-ayuda-slide-1,
.elementor-element.programa-ayuda-slide-2 {
    padding-top: 0px;
    padding-bottom: 0px;
    border-top: 1px solid var(--color-alt);
    border-bottom: 1px solid var(--color-alt);
}
.elementor-element.programa-ayuda-slide-2 {
    margin-top: -1px;
}
.elementor-element.programa-ayuda-slide-1 .title,
.elementor-element.programa-ayuda-slide-2 .title {
    position: relative;
    padding-left: 35px;
    padding-top: 10px;
    padding-bottom: 10px;
    cursor: pointer;
}
.elementor-element.programa-ayuda-slide-1 .title:before,
.elementor-element.programa-ayuda-slide-2 .title:before {
    content: "";
    position: absolute;
    display: inline-block;
    top: 15px;
    left: 0px;
    width: 7px;
    height: 7px;
    border-right: 1px solid var(--color-black);
    border-bottom: 1px solid var(--color-black);
    margin-left: 10px;
    margin-bottom: 3px;
    transform: rotate(45deg);
    transition: all .6s ease;
}
.elementor-element.programa-ayuda-slide-1.visible .title:before,
.elementor-element.programa-ayuda-slide-2.visible .title:before {
    transform: rotate(-135deg) translate(-50%, -50%);
}
.elementor-element.programa-ayuda-slide-1 .content-wrap,
.elementor-element.programa-ayuda-slide-2 .content-wrap {
    height: 0;
    overflow: hidden;
    transition: all .8s ease;
    padding-left: 30px;
}
.elementor-element.programa-ayuda-slide-1 .content-wrap ul,
.elementor-element.programa-ayuda-slide-2 .content-wrap ul {
    margin-top: 0;
}
.programa-ayuda-seccion .elementor-element.back-shape {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 100%;
}
.programa-ayuda-seccion .elementor-element.back-shape  svg {
    width: 100%;
}
.programa-ayuda-seccion .img-col .elementor-widget-image:after {
    /*content: "";*/
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    padding-top: 100%;
    height: 100%;
    border-radius: 1000px;
    background: white;
    transform: translate(-50%, -40%);
    z-index: -1;
}
.programa-ayuda-seccion .img-col .elementor-widget-image:before {
    /*content: "";*/
    position: absolute;
    top: calc(50% - 0px);
    left: calc(50% - 0px);
    width: calc(100% + 2px);
    padding-top: calc(100% + 2px);
    height: calc(100% + 2px);
    border-radius: 1000px;
    background: linear-gradient(0deg, white, white 30%, var(--color-prim));
    transform: translate(-50%, -40%);
    z-index: -1;
}
.programa-ayuda-seccion .img-col .programa-ayuda-slide-1-opener .text,
.programa-ayuda-seccion .img-col .programa-ayuda-slide-2-opener .text {
    position: absolute;
    bottom: calc(100% + 10px);
    left: 0;
    margin-bottom: 0;
    width: 110px;
    text-align: left;
    transform: translateX(0%);
    font-size: 15px;
}
@media (max-width: 767px) {
    .programa-ayuda-seccion .img-col {
        flex-direction: row;
    }
    .elementor-element.programa-ayuda-slide-1-opener,
    .elementor-element.programa-ayuda-slide-2-opener {
        position: relative;
        width: max-content;
        margin-top: -5px;
    }
    .programa-ayuda-seccion .img-col .programa-ayuda-slide-1-opener .text {
        text-align: right;
        left: 100%;
        transform: translateX(-100%);
    }
}
@media (min-width: 768px) {
    .elementor-element.programa-ayuda-slide-1-opener,
    .elementor-element.programa-ayuda-slide-2-opener {
        position: absolute;
        top: -15%;
        left: 35%;
        transform: translate(-50%, -50%);
        cursor: pointer;
        z-index: 1;
        width: max-content;
    }
    .elementor-element.programa-ayuda-slide-2-opener {
        left: 65%; 
    }
    .programa-ayuda-seccion .elementor-element.back-shape {
        transform: translate(-50%, -55%);
    }
    .programa-ayuda-seccion .img-col .programa-ayuda-slide-1-opener .text,
    .programa-ayuda-seccion .img-col .programa-ayuda-slide-2-opener .text {
        left: 50%;
        text-align: center;
        transform: translateX(-50%);
    }
}
@media (min-width: 1025px) {
    .elementor-element.programa-ayuda-slide-1-opener,
    .elementor-element.programa-ayuda-slide-2-opener {
        top: -1vw;
    }
}
@media (min-width: 1300px) {
    .elementor-element.programa-ayuda-slide-1-opener,
    .elementor-element.programa-ayuda-slide-2-opener {
        top: -20px;
    }
    .programa-ayuda-seccion .elementor-element.elementor-widget-image {
        max-width: 610px !important;
    }
}



/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Hazte socio
--------------------------------------------------------------*/
.hazte-socio-gracias-section .hazte-socio-videos-wrap:before {
    content: "";
    position: absolute;
    top: 10%;
    left: 0;
    width: 100%;
    height: 77%;
    background: var(--color-back);
}
.hazte-socio-ventajas-section:before {
    content: "" !important;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 0px) !important;
    background: var(--color-back);
}
.hazte-socio-ventajas-section .hazte-socio-ventajas-icon {
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translate(-50%, -50%);
}
.hazte-socio-ventajas-section .grid-ventajas > .e-con-inner > .elementor-element {
    border: 1px solid var(--color-prim);
    border-radius: 20px;
    padding: 20px 10px 10px 10px;
    /*counter-increment: grid-ventajas;*/
    background-color: white;
    overflow: hidden;
}
.hazte-socio-ventajas-section .grid-ventajas > .e-con-inner > .elementor-element:nth-of-type(1) .elementor-widget-image {
    /*background: var(--color-prim);*/
}
.hazte-socio-ventajas-section .grid-ventajas > .e-con-inner > .elementor-element:nth-of-type(1) .elementor-widget-image img {
    max-width: 80%;
    left: 50%;
    transform: translateX(-50%);
}
.hazte-socio-ventajas-section .grid-ventajas > .e-con-inner > .elementor-element:nth-of-type(4) .elementor-widget-image img {
    object-fit: cover;
}
.hazte-socio-ventajas-section .grid-ventajas > .e-con-inner > .elementor-element:nth-of-type(3) .elementor-widget-image img {
    max-height: 90%;
    bottom: 0;
    top: auto;
}
.hazte-socio-ventajas-section .grid-ventajas > .e-con-inner > .elementor-element .elementor-widget-image {
    padding-top: 56%;
}
.hazte-socio-ventajas-section .grid-ventajas > .e-con-inner > .elementor-element .elementor-widget-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.hazte-socio-ventajas-section .grid-ventajas > .e-con-inner > .elementor-element .elementor-widget-text-editor {
    display: flex;
    align-items: stretch;
    align-content: center;
    height: 100%;
    text-align: center;
}
.hazte-socio-ventajas-section .grid-ventajas > .e-con-inner > .elementor-element .elementor-widget-text-editor:before {
    /*content: counter(grid-ventajas);*/
    background: var(--color-sec);
    color: white;
    font-size: 52px;
    font-weight: 700;
    padding: 10px 15px;
    vertical-align: middle;
    display: flex;
    align-items: center;
}
.hazte-socio-ventajas-section .grid-ventajas > .e-con-inner > .elementor-element .elementor-widget-text-editor > .elementor-widget-container {
    padding: 10px;
    /*display: flex;*/
}
.hazte-socio-ventajas-section .grid-ventajas > .e-con-inner > .elementor-element .elementor-widget-text-editor p:last-child {
    margin-bottom: 0;
}
.hazte-socio-ventajas-section .listado-especial ul {
    margin-left: 0;
}
.hazte-socio-ventajas-section .listado-especial li {
    list-style: none;
    counter-increment: listado-especial;
    padding-left: 50px;
    margin-bottom: 30px;
    position: relative;
}
.hazte-socio-ventajas-section .listado-especial li:last-child {
    margin-bottom: 10px;
}
.hazte-socio-ventajas-section .listado-especial li:before {
    content: "";
    background: var(--color-alt);
    border-radius: 50px;
    width: 40px;
    height: 40px;
    position: absolute;
    left: 0;
    transform: translateY(-50%);
    top: 50%;
}
.hazte-socio-ventajas-section .listado-especial li:after {
    content: counter(listado-especial);
    color: white;
    position: absolute;
    top: 50%;
    left: 0;
    width: 40px;
    height: 25px;
    text-align: center;
    transform: translateY(-50%);
}
@media (min-width: 550px) and (max-width: 767px) {
    .hazte-socio-ventajas-section .grid-ventajas > .e-con-inner > .elementor-element {
        width: calc(50% - 10px);
    }
}
@media (min-width: 768px) {
    .hazte-socio-ventajas-section .grid-ventajas > .e-con-inner > .elementor-element {
        width: calc(50% - 15px);
    }
}
@media (min-width: 1000px) {
    .hazte-socio-ventajas-section .grid-ventajas > .e-con-inner > .elementor-element {
        width: calc(25% - 15px);
    }
}
@media (min-width: 1025px) {
    .intro-sellos.elementor-element {
        position: absolute;
        top: 50%;
        left: calc(50% + 350px);
        width: max-content;
        height: max-content;
        transform: translate(-50%, -50%);
        z-index: 1;
    }
    .intro-sellos.elementor-element > .e-con-inner {
        flex-direction: column;
        max-width: 170px;
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Eventos relacionados
--------------------------------------------------------------*/
.eventos-relacionados {
    background: var(--color-back);
    padding-top: 30px;
    padding-bottom: 50px;
}
.eventos-relacionados-wrap {
    padding: 20px;
    max-width: 1000px;
    margin: 0 auto;
}
.eventos-relacionados-grid {
    display: grid;
    grid-gap: 20px;
    margin: 0 auto;
    overflow: hidden;
    margin-bottom: 40px;
}
.eventos-relacionados .eventos-relacionados-title {
    text-align: center;
}
.eventos-relacionados .btn-wrap {
    text-align: center;
}
.eventos-relacionados .btn-wrap a {
    padding: 8px 20px;
    width: max-content;
    max-width: 100%;
    background: var(--color-prim);
    font-weight: 700;
    border: 1px solid var(--color-prim);
    display: inline-block;
    text-transform: uppercase;
}
.eventos-relacionados .btn-wrap a:hover {
    background: white;
    border-color: var(--color-sec);
    color: var(--color-sec);
}
@media ( min-width: 700px) {
    .eventos-relacionados-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media ( min-width: 1024px) {
    .eventos-relacionados-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Agenda
--------------------------------------------------------------*/
.seccion-agenda-eventos {
    padding: 50px 20px;
}
.seccion-agenda-eventos .seccion-agenda-eventos-wrap {
    max-width: var(--max-content);
    margin: 0 auto;
    overflow: hidden;
}
.filtros-agenda {
    margin-bottom: 20px;
}
.filtros-agenda .btn {
    border-radius: 2px;
}
.filtros-agenda .input-group {
    display: flex;
    flex-wrap: wrap;
    max-width: 100%;
    gap: 15px 30px;
}
.filtros-agenda .input-group-wrap {
    display: flex;
    position: relative;
}
.filtros-agenda .input-group-wrap .input-selected-wrap {
    display: flex;
    position: relative;
    width: max-content;
    max-width: 100%;
    align-items: flex-end;
    padding-bottom: 8px;
    gap: 50px;
    cursor: pointer;
}
.filtros-agenda .input-group-wrap .input-selected-wrap:Before {
    content: "";
    position: absolute;
    top: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: var(--color-black);
}
.filtros-agenda .input-group-wrap .placeholder {
    text-transform: uppercase;
}
.filtros-agenda .input-selected {
    display: block;
    min-width: 100px;
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    align-items: center;
}
.input-selected .icon-down {
    display: flex;
}
.filtros-agenda .input-group-wrap .input-selector {
    height: 0;
    overflow: hidden;
    transition: all .4s ease;
    position: absolute;
    top: calc(100% - 1px);
    right: 0;
    background: white;
}
.filtros-agenda .input-group-wrap .input-selector .input-selector-wrap {
    border: 1px solid var(--color-border);
}
.filtros-agenda .input-group-wrap .input-selector .input-selector-wrap label {
    margin-bottom: 0;
    padding: 10px;
    border-bottom: 1px solid var(--color-border);
    cursor: pointer;
}
.filtros-agenda .input-group-wrap .input-selector .input-selector-wrap label.checked,
.filtros-agenda .input-group-wrap .input-selector .input-selector-wrap label:hover {
    font-weight: 700;
    background: var(--color-back);
}
.filtros-agenda .input-group-wrap .input-selector .input-selector-wrap label input[type="radio"] {
    display: none;
}

.agenda-grid-wrap {
    display: grid;
    grid-gap: 20px;
}
.archive-single-evento {
    background: white;
    border: 1px solid var(--color-prim);
    border-radius: 10px;
    overflow: hidden;
}
.archive-single-evento-wrap {
    display: flex;
    flex-direction: column;
    height: 100%;
}
.archive-single-evento-wrap .date-wrap {
    padding: 10px 20px;
    background: var(--color-prim);
    display: flex;
    align-items: center;
    gap: 20px;
}
.archive-single-evento-wrap .date-wrap .dia {
    font-size: 50px;
    line-height: 1;
}
.archive-single-evento-wrap .date-wrap .date-wrap-sm {
    display: flex;
    flex-direction: column;
    gap: 3px;
}
.archive-single-evento-wrap .date-wrap .mes {
    text-transform: uppercase;
    font-weight: 600;
}
.archive-single-evento-wrap .date-wrap .mes,
.archive-single-evento-wrap .date-wrap .ano {
    line-height: 1;
}
.archive-single-evento-wrap .archive-single-evento-content {
    display: flex;
    flex-direction: column;
    padding: 20px;
    height: 100%;
}
.archive-single-evento-wrap .archive-single-evento-content .title {
    font-weight: 700;
    margin-bottom: 5px;
}
.archive-single-evento-wrap .archive-single-evento-content .btn {
    margin-top: auto;
}
.archive-single-evento-wrap .archive-single-evento-content .btn a {
    padding: 8px 20px;
    width: max-content;
    max-width: 100%;
    background: var(--color-prim);
    font-weight: 700;
    border: 1px solid var(--color-prim);
    display: inline-block;
    text-transform: uppercase;
    font-size: 14px;
    border-radius: 2px;
}
.archive-single-evento-wrap .archive-single-evento-content .btn a:hover {
    background: white;
    border-color: var(--color-sec);
    color: var(--color-sec);
}
@media ( min-width: 700px) {
    .agenda-grid-wrap {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media ( min-width: 1024px) {
    .agenda-grid-wrap {
        grid-template-columns: repeat(3, 1fr);
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Evento
--------------------------------------------------------------*/
.single-eventos .evento-info {
    display: inline-block;
    margin-top: 30px;
    padding: 10px;
    background: var(--color-back);
    border-top: 1px solid var(--color-sec);
    border-bottom: 1px solid var(--color-sec);
    width: 100%;
}
.single-eventos .evento-info .evento-info-wrap {
    display: flex;
    flex-wrap: wrap;
}
.single-eventos .evento-info .evento-info-wrap .evento-info-col {
    width: 100%;
    max-width: 50%;
    padding: 10px;
}
.single-eventos .evento-info .evento-info-wrap .evento-info-col:last-child {
    max-width: 100%;
}
.single-eventos .evento-info .evento-info-wrap .evento-info-col p:first-child {
    font-weight: 700;
    margin-bottom: 0px;
}
@media (min-width: 768px) {
.single-eventos .evento-info .evento-info-wrap .evento-info-col {
        max-width: 25%;
    }
}


/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Blog
--------------------------------------------------------------*/
.blog #content-wrap {
    padding-top: 0;
}
.blog #blog-entries {
    max-width: 1000px;
    margin: 40px auto;
    padding: 0 20px;
}
.blog-entry.grid-entry .blog-entry-inner {
    height: 100%;
    display: flex;
    flex-direction: column;
    border-radius: 10px;
    overflow: hidden;
}
.blog-entry.grid-entry .blog-entry-readmore {
    margin-top: auto;
}
.blog-entry.grid-entry .thumbnail,
figure.related-post-media {
    padding-top: 75%;
    overflow: hidden;
    position: relative;
}
.blog-entry.post .thumbnail a,
.blog-entry.post .thumbnail a:not(.mejs-volume-slider),
figure.related-post-media a {
    display: inline-block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
.blog-entry.post .thumbnail img,
figure.related-post-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.blog-entry.post .blog-entry-header .entry-title a {
    text-transform: uppercase;
    letter-spacing: 0;
}
.blog-entry.grid-entry .blog-entry-readmore a {
    padding: 8px 20px;
    background: var(--color-prim);
    border: 1px solid var(--color-prim);
    font-size: 16px;
    font-weight: 600;
}
.blog-entry.grid-entry .blog-entry-readmore a:hover {
    background: white;
    border-color: var(--color-sec);
    color: var(--color-sec);
}
.blog .page-intro-section {
    padding: 0;
    display: flex;
    position: relative;
}
.blog .page-intro-section > .page-intro-content {
    background-color: white;
    width: 100%;
}
.blog .page-intro-section > .page-intro-content > .e-con-inner {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 10px 0px;
}
.page-intro-section > .page-intro-content h1 {
    margin-bottom: 0;
}
.blog .page-intro-section .page-intro-image {
    padding: 0;
}
.blog .page-intro-section .page-intro-image > .e-con-inner {
    padding: 0;
}
.blog .page-intro-section .page-intro-image .elementor-widget-image {
    position: relative;
}

.blog .page-intro-section > .page-intro-content .elementor-widget-divider .elementor-divider-separator {
    width: 100%;
    border-top: 1px solid var(--color-alt);
    display: block;
}
.page-intro-section > .page-intro-content .elementor-widget-divider .elementor-divider-separator {
    border-color: var(--color-alt);
}
@media (min-width: 550px) and (max-width: 767px) {
    .blog .blog-entry {
        width: 50% !important;
    }
}
@media (max-width: 767px) {
    .blog .page-intro-section {
        flex-direction: column-reverse;
        gap: 0;
    }
}
@media (min-width: 768px) {
    .blog .page-intro-section {
        flex-direction: row;
    }
    .blog .page-intro-section .page-intro-image,
    .blog .page-intro-section .page-intro-image div {
        display: flex;
        height: 100%;
    }
    .blog .page-intro-section .page-intro-image div {
        width: 100%;
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Single Post
--------------------------------------------------------------*/
.single.single-post .entry-header {
    margin-top: 10px;
}
.single .entry-title {
    text-align: left;
    border-color: var(--color-sec);
}
.single.single-post ul.meta.ospm-default {
    border-bottom: 0;
    padding-bottom: 0;
    margin-bottom: 0;
    justify-content: flex-start;
    padding-left: 20px;
    padding-right: 20px;
}

/*--------------------------------------------------------------
## @section 2.0 / Single Pages / Patrocinadores
--------------------------------------------------------------*/
.pagina-logos .seccion-logos > .e-con-inner > .elementor-element {
    width: 25%;
    box-shadow: 0 0 15px rgba(15, 15, 15, .1);
    border-radius: 5px;
}

/*--------------------------------------------------------------
## @section 2.0 / Login Page
--------------------------------------------------------------*/
.login-page {
    padding: 50px 20px;
}
.login-page .login-content-wrap {
    max-width: 1000px;
    margin: 0 auto;
}
.login-page .login-title {
    text-align: center;
    max-width: 420px;
    margin: 0 auto;
}
.login-page .login-title .separador {
    width: 100%;
    height: 1px;
    display: block;
    margin-bottom: 20px;
    border-top: 1px solid var(--color-sec);
}
.login-page .login-form {
    max-width: 400px;
    margin: 0 auto;
}
.login-page .login-form #ur-frontend-form {
    border: 0;
}
.login-page .login-form div#ur-frontend-form {
    border: 0;
    padding: 0;
}
.login-page .login-form #user-registration {
    box-shadow: none;
}
.login-page .login-form div#ur-frontend-form .ur-form-grid {
    padding: 0;
}
.login-page .ur-frontend-form .ur-form-row .ur-form-grid label {
    font-size: 16px;
}
.login-form .user-registration-Button {
    width: 100%;
}
.login-form .lost_password {
    margin-top: 30px;
    display: inline-block;
    text-align: center;
    width: 100%;
    font-style: italic;
}
.login-form .lost_password a {
    color: var(--color-sec);
    transition: all .4s ease;
}
.login-form .lost_password a:hover {
    color: var(--color-black);
}


/*--------------------------------------------------------------
## @section 2.0 / Área socio
--------------------------------------------------------------*/
.area-socio-menu .menu {
    margin-left: 0;
    list-style: none;
    max-width: 400px;
}
.area-socio-menu .menu .menu-item {
    border-bottom: 1px solid var(--color-sec);
}
.area-socio-menu .menu .menu-item:first-child {
    border-top: 1px solid var(--color-sec);
}
.area-socio-menu .menu .menu-item a {
    display: inline-block;
    position: relative;
    width: 100%;
    padding: 10px 0px;
    transition: all .4s ease;
}
.area-socio-menu .menu .menu-item.current-menu-item a {
    font-weight: 700;
}
.area-socio-menu .menu .menu-item a:before {
    content: "";
    width: 0px;
    height: 2px;
    background: var(--color-sec);
    position: absolute;
    top: 50%;
    left: 0;
    transition: all .4s ease;
    transform: translateY(-50%);
}
.area-socio-menu .menu .menu-item.current-menu-item a:before,
.area-socio-menu .menu .menu-item a:hover:before {
    width: 15px;
}
.area-socio-menu .menu .menu-item.cerrar-sesion-btn a:before {
    content: none;   
}
.area-socio-menu .menu .menu-item.current-menu-item a,
.area-socio-menu .menu .menu-item a:hover {
    padding-left: 20px;
}
.elementor-element.socio-descargable {
    background: white;
    border: 1px solid var(--color-sec);
    padding: 20px 30px;
    max-width: 900px;
    border-radius: 5px;
}
.socio-descargable h3 {
    color: var(--color-black);
}
.area-socio-menu .menu .menu-item.cerrar-sesion-btn {
    margin-top: 40px;
    border: 0;
}
.area-socio-menu .menu .menu-item.cerrar-sesion-btn a {
    padding: 12px 24px;
    background: var(--color-prim);
    border: 1px solid var(--color-prim);
    border-radius: 2px;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 16px;
    width: auto;
    max-width: 100%;
}
.area-socio-menu .menu .menu-item.cerrar-sesion-btn a:hover {
    background: white;
    border-color: var(--color-sec);
    color: var(--color-sec);
}
.cerrar-sesion-btn {
    padding: 12px 24px;
    background: var(--color-prim);
    border: 1px solid var(--color-prim);
    border-radius: 2px;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 16px;
    width: auto;
    max-width: 100%;
}
.cerrar-sesion-btn:hover {
    background: white;
    border-color: var(--color-sec);
    color: var(--color-sec);
}
@media (min-width: 768px) {
    .elementor-element.area-socio-menu {
        max-width: 350px;
    }
    .elementor-element.area-socio-menu .menu {
        max-width: 300px;
    }
    .elementor-element.area-socio-content-wrap {
        max-width: calc(100% - 350px - 20px);
    }
}

/*--------------------------------------------------------------
## @section 2.0 / Img positions
--------------------------------------------------------------*/
.general-grid-section .grid-img-mision img,
.page-intro-mision img {
    object-position: 50% 19%;
}
@media (min-width: 1500px) {
    .general-grid-section .grid-img-mision img,
    .page-intro-mision img {
        object-position: 50% 15%;
    }
}
.page-intro-que-hacemos img {
    object-position: 50% 20%;
}
.general-grid-section .grid-img-programa img,
.page-intro-programa img {
    object-position: top;
}

/*--------------------------------------------------------------
## @section 2.0 / One trust cookie
--------------------------------------------------------------*/
#onetrust-banner-sdk .ot-sdk-row,
#onetrust-pc-sdk .ot-sdk-row,
#ot-sdk-cookie-policy .ot-sdk-row {
    margin-left: 0 !important;
}

/*--------------------------------------------------------------
## @section 8.0 / Cookies
--------------------------------------------------------------*/
.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-deny {
	order: 1;
}
.cmplz-cookiebanner .cmplz-categories {
    width: 100%; 
    max-width: 100%;
}
@media (min-width: 769px) {
	.cmplz-cookiebanner .cmplz-buttons .cmplz-btn {
		min-width: 190px;
	}
	.cmplz-cookiebanner .cmplz-body {
		width: 100%;
		max-width: 590px;
	}
	.cmplz-cookiebanner .cmplz-message {
		width: 100%;
	}
}