/*
Theme Name:   onSedi
Theme URI:    https://www.kadencewp.com/
Description:  Kadence Child Theme
Author:       Rogermogu
Author URI:   https://rogermogu.com/
Template:     kadence
Version:      1.0.27
Text Domain:  kadencechild
*/


/*----------------------------------------------------------------------------------
## @section 1.0 / General
----------------------------------------------------------------------------------*/
/*--------------------------------------------------------------
## @section 1.0 / General / Root
--------------------------------------------------------------*/
:root {
    --font-title: 'Inter';
    --font-text: 'GeneralSans';
    --color-prim: var(--global-palette1);
    --color-sec: var(--global-palette2);
    --color-red: #D51317;
    --color-black: var(--global-palette3);
    --color-back: var(--global-palette7);
    --color-back-grey: var(--global-palette8);
    --color-border: #B4B4B4;
    --max-width: 1200px;
}
body {
    --global-md-spacing: 20px;
}
@media (min-width: 1450px) {
    body {
        --max-width: 1400px;
        --global-content-width: 1440px;
    }
}

/*--------------------------------------------------------------
## @section 1.0 / General / Fonts
--------------------------------------------------------------*/
@font-face {
    font-family: 'NewBlack';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('./assets/fonts/NewBlackTypeface-Bold.woff2') format('woff2'),
         url('./assets/fonts/NewBlackTypeface-Bold.woff') format('woff'),
         url('./assets/fonts/NewBlackTypeface-Bold.ttf') format('truetype'),
         url('./assets/fonts/NewBlackTypeface-Bold.eot'),
         url('./assets/fonts/NewBlackTypeface-Bold.svg') format('svg');
}
@font-face {
    font-family: 'NewBlack';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('./assets/fonts/NewBlackTypeface-ExtraBold.woff2') format('woff2'),
         url('./assets/fonts/NewBlackTypeface-ExtraBold.woff') format('woff'),
         url('./assets/fonts/NewBlackTypeface-ExtraBold.ttf') format('truetype'),
         url('./assets/fonts/NewBlackTypeface-ExtraBold.eot'),
         url('./assets/fonts/NewBlackTypeface-ExtraBold.svg') format('svg');
}
@font-face {
    font-family: 'GeneralSans';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('./assets/fonts/GeneralSans-Regular.woff2') format('woff2'),
         url('./assets/fonts/GeneralSans-Regular.woff') format('woff'),
         url('./assets/fonts/GeneralSans-Regular.ttf') format('truetype'),
         url('./assets/fonts/GeneralSans-Regular.eot');
}
@font-face {
    font-family: 'GeneralSans';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('./assets/fonts/GeneralSans-Italic.woff2') format('woff2'),
         url('./assets/fonts/GeneralSans-Italic.woff') format('woff'),
         url('./assets/fonts/GeneralSans-Italic.ttf') format('truetype'),
         url('./assets/fonts/GeneralSans-Italic.eot');
}
@font-face {
    font-family: 'GeneralSans';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('./assets/fonts/GeneralSans-Semibold.woff2') format('woff2'),
         url('./assets/fonts/GeneralSans-Semibold.woff') format('woff'),
         url('./assets/fonts/GeneralSans-Semibold.ttf') format('truetype'),
         url('./assets/fonts/GeneralSans-Semibold.eot');
}
@font-face {
    font-family: 'GeneralSans';
    font-style: italic;
    font-weight: 600;
    font-display: swap;
    src: url('./assets/fonts/GeneralSans-SemiboldItalic.woff2') format('woff2'),
         url('./assets/fonts/GeneralSans-SemiboldItalic.woff') format('woff'),
         url('./assets/fonts/GeneralSans-SemiboldItalic.ttf') format('truetype'),
         url('./assets/fonts/GeneralSans-SemiboldItalic.eot');
}


/*--------------------------------------------------------------
## @section 1.0 / General / Buttons
--------------------------------------------------------------*/
.elementor-kit-6 .elementor-element.btn-white a.elementor-button {
    color: var(--color-prim);
    background: white;
    border-color: white;
}
.elementor-kit-6 .elementor-element.btn-white a.elementor-button:hover {
    color: white;
    background: transparent;
}
.btn-big .elementor-button {
    min-width: 250px;
}

/*--------------------------------------------------------------
## @section 1.0 / 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;
    margin-bottom: 0;
}
.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: linear-gradient(180deg, var(--color-prim) 0%, var( --color-sec ) 100%);
    padding: 43px 10px 10px 10px;
    width: 100%;
    height: 85px;
    display: flex;
    border-radius: 10px;
    line-height: 1;
    text-align: center;
    justify-content: center;
    text-decoration: none;
}
.floating-btns .floating-btns-wrap > .widget .wp-block-group__inner-container p a:hover {
    background: linear-gradient(180deg, var(--color-prim) 0%, var(--color-prim) 100%);
}
@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: 55px 20px 15px;
		width: 80px;
		height: 80px;
        font-size: 11px;
    }
    .floating-btns .floating-btns-wrap > .widget .wp-block-group__inner-container svg {
        top: 15px;
    }
}

/*--------------------------------------------------------------
## @section 1.0 / General / Elements
--------------------------------------------------------------*/
table {
    border-collapse: collapse;
}
table td,
table th {
    border: 1px solid #c1c1c1;
    padding: 10px;
}
.elementor-element.icon-back-top > .elementor-widget-container:before,
.elementor-element.icon-back-left > .elementor-widget-container:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: calc(100% + 10px);
    height: calc(100% + 10px);
    background: linear-gradient(275deg, var(--color-green), var(--color-red));
    transform: translate(-50%, -50%);
    border-radius: 50px;
    clip-path: polygon(0 0, 100% 0, 100% calc(50% - 3px), 0% calc(50% - 3px));
}
.elementor-element.icon-back-left > .elementor-widget-container:before {
    clip-path: polygon(0 0, calc(50% - 3px) 0, calc(50% - 3px) 100%, 0% 100%);
    background: linear-gradient(180deg, var(--color-green), var(--color-red));
}
.elementor-element.icon-back-top > .elementor-widget-container .elementor-icon-wrapper,
.elementor-element.icon-back-left > .elementor-widget-container .elementor-icon-wrapper {
    display: flex;
    position: relative;
}
.elementor-widget-html.icon-back-top,
.elementor-widget-html.icon-back-left {
    width: 60px;
    height: 60px;
}
.grid-counter {
    counter-reset: grid-counter;
}
.elementor-widget-html.icon-back-top .counter-icon,
.elementor-widget-html.icon-back-left .counter-icon {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: var(--color-prim);
    border-radius: 50px;
    counter-increment: grid-counter;
}
.elementor-widget-html.icon-back-top .counter-icon:before,
.elementor-widget-html.icon-back-left .counter-icon:before {
    content: counter(grid-counter);
    color: white;
    font-family: var(--font-title);
    font-size: 32px;
}
.img-cover-100 .elementor-widget-image {
    width: 100%;
    padding-top: 100%;
    position: relative;
}
.img-cover-100 .elementor-widget-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.img-cover-16-9 .elementor-widget-image {
    width: 100%;
    padding-top: 56.25%;
    position: relative;
}
.img-cover-16-9 .elementor-widget-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.dialog-message .elementor-slideshow__footer {
    display: none;
}
.elementor-slideshow__header > svg.e-eicon-share-arrow {
    display: none;
}
.list-style-logo > ul {
    list-style: none;
}
.list-style-logo > ul > li {
    position: relative;
}
.list-style-logo > ul > li:before {
    content: "";
    position: absolute;
    width: 15px;
    height: 15px;
    left: -20px;
    top: 4px;
    display: block;
    font-size: 10px;
    background-image: url(./assets/img/list-style-logo.svg);
    background-size: contain;
    background-repeat: no-repeat;
}

/*--------------------------------------------------------------
## @section 1.0 / General / Icons
--------------------------------------------------------------*/
i.icon-incluido:before {
    content: "\f058";
}
table i.icon-incluido:before {
    margin-right: 5px;
    color: var(--color-green);
}

/*--------------------------------------------------------------
## @section 1.0 / General / Tipografia
--------------------------------------------------------------*/
p {
    margin-block-start: 0;
    margin-block-end: 20px;
}
.no-margin-bot,
.no-margin-bot p:last-child {
    margin-bottom: 0;
}
.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,
.title-no-margin-bot p.elementor-heading-title,
.single-content .title-no-margin-bot h1,
.single-content .title-no-margin-bot h2,
.single-content .title-no-margin-bot h3,
.single-content .title-no-margin-bot h4,
.single-content .title-no-margin-bot h5,
.single-content .title-no-margin-bot h6,
.single-content .title-no-margin-bot p.elementor-heading-title {
    margin-bottom: 0;
}
.font-title,
.font-title h1,
.font-title h2,
.font-title h3,
.font-title h4,
.font-title h5,
.font-title h6,
.font-title p,
.font-title a {
    font-family: var(--font-title);
}
.color-prim,
.color-prim h1,
.color-prim h2,
.color-prim h3,
.color-prim h4,
.color-prim h5,
.color-prim h6,
.color-prim p,
.color-prim a {
    color: var(--color-prim);
}
.color-black,
.color-black h1,
.color-black h2,
.color-black h3,
.color-black h4,
.color-black h5,
.color-black h6,
.color-black p,
.color-black a {
    color: var(--color-black);
}
.color-white,
.color-white h1,
.color-white h2,
.color-white h3,
.color-white h4,
.color-white h5,
.color-white h6,
.color-white p,
.color-white a {
    color: white;
}
.elementor-editor-active .single-content h1,
.elementor-editor-active .single-content h2,
.elementor-editor-active .single-content h3,
.elementor-editor-active .single-content h4,
.elementor-editor-active .single-content h5,
.elementor-editor-active .single-content h6 {
    margin-top: 0;
}
.para-quien-single:hover .para-quien-single-text.elementor-element {
    background-image: linear-gradient(180deg, var( --color-prim ) 0%, var( --color-prim ) 100%);
}
.para-quien-single .para-quien-single-img.elementor-element {
    overflow: hidden;
    border-radius: 150px;
    transform: scale(1);
}
.para-quien-single .para-quien-single-img.elementor-element img {
    transition: .4s ease;
}
.para-quien-single:hover .para-quien-single-img.elementor-element img {
    transform: scale(1.1);
}

/*--------------------------------------------------------------
## @section 1.0 / General / Sections
--------------------------------------------------------------*/
/*-------------------------
## @section 1.0 / General / Sections / Section Cifras
-------------------------*/
/* .section-cifras-grid .section-cifras-single {
    border-bottom: 1px solid var(--color-prim);
}
@media (min-width: 768px) {
    .section-cifras .section-cifras-grid {
        grid-template-columns: repeat(6, 1fr);
    }
    .section-cifras .section-cifras-grid .section-cifras-single {
        grid-column: span 2;
    }
    .section-cifras .section-cifras-grid .section-cifras-single:nth-last-child(2):nth-child(3n+1) {
        grid-column-end: 4;
    }
    .section-cifras .section-cifras-grid .section-cifras-single:nth-child(3n+1) {
        border-right: 1px solid var(--color-prim);
    }
    .section-cifras .section-cifras-grid .section-cifras-single:nth-child(3n+2) {
        border-right: 1px solid var(--color-prim);
    }
    .section-cifras .section-cifras-grid .section-cifras-single:last-child {
        border-right: 0;
    }
}
@media (min-width: 768px) and (max-width: 1023px) {
    .section-cifras .section-cifras-grid {
        grid-template-columns: repeat(6, 1fr);
    }
    .section-cifras .section-cifras-grid .section-cifras-single {
        grid-column: span 2;
    }
    .section-cifras .section-cifras-grid .section-cifras-single:nth-last-child(1):nth-child(3n+1) {
        grid-column-end: 5;
        border-bottom: 0;
    }
    .section-cifras .section-cifras-grid .section-cifras-single:nth-last-child(2):nth-child(3n+1) {
        grid-column-end: 4;
        border-bottom: 0;
    }
    .section-cifras .section-cifras-grid .section-cifras-single:nth-last-child(1):nth-child(3n+2) {
        border-bottom: 0;
    }
    .section-cifras .section-cifras-grid .section-cifras-single:nth-child(3n+1) {
        border-right: 1px solid var(--color-prim);
    }
    .section-cifras .section-cifras-grid .section-cifras-single:nth-child(3n+2) {
        border-right: 1px solid var(--color-prim);
    }
    .section-cifras .section-cifras-grid .section-cifras-single:last-child {
        border-right: 0;
    }
    .section-cifras .section-cifras-grid .section-cifras-single:nth-last-child(1):nth-child(3n+3), .section-cifras .section-cifras-grid .section-cifras-single:nth-last-child(2):nth-child(3n+2), .section-cifras .section-cifras-grid .section-cifras-single:nth-last-child(3):nth-child(3n+1) {
        border-bottom: 0;
    }
}
@media (min-width: 1024px) {
    .section-cifras .section-cifras-grid {
        grid-template-columns: repeat(8, 1fr);
    }
    .section-cifras .section-cifras-grid .section-cifras-single {
        grid-column: span 2;
    }
    .section-cifras .section-cifras-grid .section-cifras-single:nth-last-child(1):nth-child(4n+1) {
        grid-column-end: 5;
        border-bottom: 0;
    }
    .section-cifras .section-cifras-grid .section-cifras-single:nth-last-child(2):nth-child(4n+1) {
        grid-column-end: 4;
        border-bottom: 0;
    }
    .section-cifras .section-cifras-grid .section-cifras-single:nth-last-child(1):nth-child(4n+2) {
        border-bottom: 0;
    }
    .section-cifras .section-cifras-grid .section-cifras-single:nth-child(3n+1) {
        border-right: 1px solid var(--color-prim);
    }
    .section-cifras .section-cifras-grid .section-cifras-single:nth-child(3n+2) {
        border-right: 1px solid var(--color-prim);
    }
    .section-cifras .section-cifras-grid .section-cifras-single:last-child {
        border-right: 0;
    }
    .section-cifras .section-cifras-grid .section-cifras-single:nth-last-child(1):nth-child(3n+3), .section-cifras .section-cifras-grid .section-cifras-single:nth-last-child(2):nth-child(3n+2), .section-cifras .section-cifras-grid .section-cifras-single:nth-last-child(3):nth-child(3n+1) {
        border-bottom: 0;
    }
} */



/*--------------------------------------------------------------
## @section 1.0 / General / Header & Footer
--------------------------------------------------------------*/
/*-------------------------
## @section 1.0 / General / Header & Footer / Header
-------------------------*/
#masthead.site-header {
    z-index: 100;
}
.site-header-row {
    position: relative;
}
.site-branding {
    z-index: 10;
}
.header-navigation .menu {
    z-index: 9;
}
.site-main-header-wrap:Before {
    content: "";
    position: absolute;
    top: auto;
    bottom: 14px;
    left: 0;
    width: 100%;
    height: 52px;
    background: white;
    border-radius: 0 50px 50px 0;
    /* pointer-events: none; */
    max-width: 200px;
}
.site-header-wrap .site-header-row-container-inner,
.site-mobile-header-wrap .site-header-row-container-inner {
    position: relative;
    z-index: 1;
}
.site-header-wrap .site-container {
    /* max-width: 100%; */
}
.header-html .header-html-inner,
.mobile-html .mobile-html-inner {
    display: flex;
    align-items: center;
    gap: 30px;
    margin-left: 10px;
}
.header-html .header-html-inner p,
.mobile-html .mobile-html-inner p {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 0;
    position: relative;
}
.header-html .header-html-inner p:before,
.mobile-html .mobile-html-inner p:before {
    content: "";
    position: absolute;
    top: 50%;
    left: -15px;
    width: 1px;
    height: 100%;
    transform: translateY(-50%);
    background: var(--color-black);
}
.mobile-html .mobile-html-inner p:first-child:before {
    content: none;
}
.site-header-item .header-html a,
.mobile-html .mobile-html-inner a {
    display: flex;
    align-items: center;
    text-decoration: none;
    gap: 10px;
}
.header-icon {
    display: flex;
    align-items: center;
    justify-content: center;
}
.header-icon:before {
    width: 20px;
    height: 20px;
    display: inline-block;
    vertical-align: top;
}
.header-icon.icon-white {
    -webkit-filter: invert(100%) brightness(10);
    filter: invert(100%) brightness(10);
}
.header-icon.icon-phone:before {
    content: url(./assets/img/icon-phone.svg);
}
.header-icon.icon-mail:before {
    content: url(./assets/img/icon-mail.svg);
}
.site-top-header-wrap {
    position: relative;
    z-index: 2;
}
.site-top-header-inner-wrap .site-header-section {
    flex-wrap: wrap;
    gap: 10px 20px;
}
.site-top-header-inner-wrap .site-header-section .site-header-item {
    margin: 0;
}
.site-top-header-inner-wrap .site-header-section .site-header-item .mobile-html-inner {
    display: flex;
    flex-wrap: wrap;
    gap: 5px 30px;
    justify-content: center;
}
.site-top-header-inner-wrap .site-header-section .site-header-item .mobile-html-inner .top-header-element a {
    display: flex;
    gap: 10px;
    align-items: center;
    white-space: nowrap;
}

.header-social-wrap .header-social-inner-wrap .social-button {
    width: auto;
    height: auto;
}
.main-navigation .primary-menu-container > ul > li.menu-item:last-child > a {
    padding-right: 0;
}
.header-navigation .header-menu-container #secondary-menu.menu .sub-menu li.menu-item > a {
    width: 55px;
}
.mobile-toggle-open-container .menu-toggle-open, .mobile-toggle-open-container .menu-toggle-open:hover,
.mobile-toggle-open-container .menu-toggle-open, .mobile-toggle-open-container .menu-toggle-open:focus {
    background: none;
}
#site-navigation #primary-menu .menu-item.wpml-ls-item {
    /* display: none; */
}
.header-navigation .header-menu-container ul ul li.menu-item.wpml-ls-item > a {
    width: auto;
}
.mobile-navigation .menu-item-has-children button,
.mobile-navigation .menu-item-has-children button:hover,
.mobile-navigation .menu-item-has-children button:focus {
    background-color: transparent;
}
.mobile-navigation .menu-item-has-children button .kadence-svg-iconset,
.mobile-navigation .menu-item-has-children button:hover .kadence-svg-iconset,
.mobile-navigation .menu-item-has-children button:focus .kadence-svg-iconset {
    color: white;
}
.site-branding {
    height: 100%;
}
.site-branding a.brand {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 165px;
    height: 100%;
    text-align: center;
    border-top: 1px solid var(--color-black);
}
.site-branding a.brand .logo-back-shape {
    position: absolute;
    top: 0;
    left: 0;
    width: 165px;
    height: auto;
    z-index: -1;
    max-height: 125px;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    filter: drop-shadow(0 0 5px rgba(0,0,0,0.15));
}
.site-branding a.brand .logo-back-shape svg {
    width: 100%;
    height: auto;
}
.site-branding a.brand img {
    max-width: 115px;
}
.mobile-navigation ul {
    display: flex;
    flex-direction: column;
}
.mobile-navigation ul li.current-menu-ancestor > .drawer-nav-drop-wrap > a {
    font-weight: 700;
}
.mobile-navigation ul .menu-item.wpml-ls-item {
    order: 10;
}
.mobile-navigation ul ul.mobile-menu-top-bar {
    padding-left: 0;
}
.menu .menu-item.menu-bold a {
    font-weight: 700;
}
@media (min-width: 1240px) {
    .site-main-header-wrap:Before {
        bottom: 14px;
        height: 57px;
        max-width: calc(((100% - var(--global-content-width)) / 2) + 200px);
    }
}
.secondary-navigation .secondary-menu-container > ul li.menu-item > a .menu-tooltip {
    right: 0;
    position: absolute;
    top: calc(100% - 5px);
    left: auto;
    width: 180px;
    background: var(--color-back-grey);
    border: 1px solid var(--color-prim);
    border-radius: 10px;
    padding: 5px;
    font-size: 13px;
    text-align: center;
    pointer-events: none;
    opacity: 0;
    transition: all .4s ease;
    color: var(--color-black);
}
.secondary-navigation .secondary-menu-container > ul li.menu-item > a:hover .menu-tooltip {
    pointer-events: all;
    opacity: 1;
}
.mobile-navigation .menu-tooltip {
    display: block;
    font-size: 15px;
    font-weight: 400;
    margin-top: 5px;
}
.site-main-header-wrap .main-navigation,
.site-main-header-wrap .main-navigation .menu > .menu-item {
    height: 100%;
}
.site-main-header-wrap .main-navigation .menu > .menu-item > a {
    height: 100%;
    display: flex;
    align-items: center;
}
.site-header .header-navigation .menu > .menu-item-has-children > .sub-menu {
    border-radius: 0 0 20px 20px;
}
.site-header .header-navigation .menu > .menu-item-has-children > .sub-menu .menu-item:last-child a {
    padding-bottom: 20px;
}
.site-header .header-navigation .menu > .menu-item.menu-arquitectura {
    position: unset;
}
.site-header .header-navigation .menu > .menu-item.menu-arquitectura > .sub-menu {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(13, 1fr);
    gap: 0px;
    grid-template-rows: repeat(4, 1fr);
    left: auto;
    right: 0;
    padding: 40px 30px 40px 60px;
    max-width: calc(100% - 80px);
}
.site-header .header-navigation .menu > .menu-item.menu-arquitectura .submenu-section.menu-item:nth-of-type(1) {
    grid-column: 1 / span 4;
    grid-row: 1 / 4;
}
.site-header .header-navigation .menu > .menu-item.menu-arquitectura .submenu-section.menu-item:nth-of-type(2) {
    grid-column: 5 / span 4;
    grid-row: 1;
}
.site-header .header-navigation .menu > .menu-item.menu-arquitectura .submenu-section.menu-item:nth-of-type(3) {
    grid-column: 5 / span 4;
    grid-row: 3;
}
.site-header .header-navigation .menu > .menu-item.menu-arquitectura .submenu-section.menu-item:nth-of-type(4) {
    grid-column: 9 / span 5;
    grid-row: span 4;
}
.site-header .header-navigation .menu > .menu-item.menu-arquitectura > .sub-menu .submenu-section .nav-drop-title-wrap {
    padding: 0;
}
.site-header .header-navigation .menu > .menu-item.menu-arquitectura > .sub-menu .submenu-section .nav-drop-title-wrap .dropdown-nav-toggle {
    display: none
}
.site-header .header-navigation .menu > .menu-item.menu-arquitectura > .sub-menu .submenu-section > .sub-menu {
    opacity: 1;
    visibility: visible;
    height: auto;
    position: relative;
    left: 0;
    min-height: 0;
    box-shadow: none;
}
.site-header .header-navigation .menu > .menu-item.menu-arquitectura .submenu-section.menu-item > a {
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 8px;
    margin-bottom: 10px;
    padding: 0 30px 0 0;
}
.site-header .header-navigation .menu > .menu-item.menu-arquitectura .submenu-section .menu-item a {
    padding: 5px 30px 5px 0;
}
.site-header .header-navigation .menu > .menu-item.menu-arquitectura .menu-item > a {
    width: 100%;
}

@media (max-width: 650px) {
    .site-main-header-inner-wrap {
        min-height: 60px;
    }
    .site-branding a.brand .logo-back-shape {
        width: 135px;
        max-height: 85px;
    }
    .site-branding a.brand {
        max-width: 135px;
    }
    .site-branding a.brand img {
        max-width: 85px;
    }
}



/*-------------------------
## @section 1.0 / General / Header & Footer / Footer
-------------------------*/
.site-bottom-footer-wrap .menu {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    list-style: none;
    margin: 0;
    padding: 0;
    justify-content: flex-end;
}
.site-bottom-footer-wrap .menu li {
    white-space: nowrap;
    display: flex;
    align-items: center;
}
.site-bottom-footer-wrap .menu li:after {
    content: "|";
    margin-left: 5px;
    margin-right: 5px;
}
.site-bottom-footer-wrap .menu li:last-child:after {
    content: none;
}
.menu .menu-item.cookiebot-opener a {
    cursor: pointer;
}
@media (max-width: 719px) {
    .site-bottom-footer-wrap .menu {
        justify-content: flex-start;
    }
}
@media (min-width: 720px) {
    .site-footer .site-footer-row-container-inner .site-footer-row.site-footer-row-columns-2 {
        grid-template-columns: 240px 1fr;
    }
}



/*--------------------------------------------------------------
## @section 1.1 / General / Formularios
--------------------------------------------------------------*/
form .form-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 0 20px;
}
form textarea {
    resize: none;
}
form label {
    position: relative;
    display: block;
    margin-bottom: 15px;
    width: 100%;
}
form label input {
    width: 100%;
}
form .placeholder-animation .placeholder {
    font-size: 16px;
    max-width: calc(100% - 24px);
    position: absolute;
    top: 13px;
    left: 16px;
    z-index: 1;
    transition: all .4s ease;
}
form .placeholder-animation .placeholder.focus {
    font-size: 12px;
    top: 7px;
    z-index: 1;
}
.wpcf7-not-valid-tip {
    font-size: 15px;
    padding-left: 15px;
    margin-top: 5px;
    font-weight: 700;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
    border-color: var(--color-black);
    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;
    font-size: 12px;
}
form .aceptacion label {
    cursor: pointer;
}
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;
}
@media (min-width: 650px) and (max-width: 767px) {
    form .w-50 {
        width: calc(50% - 10px);
    }
}
@media (min-width: 1025px) {
    form .w-50 {
        width: calc(50% - 10px);
    }
}

/*--------------------------------------------------------------
## @section 1.1 / General / Formulario Selector
--------------------------------------------------------------*/
.wpcf7 .selector {
    display: block;
    width: 100%;
    position: relative;
    min-height: 45px;
    background-color: white;
    border: 1px solid var(--color-black);
    margin-bottom: 10px;
    padding: .75em;
    padding-bottom: 5px;
    cursor: pointer;
    border-radius: 25px;
    transition: border-radius .4s ease .3s;
}
.wpcf7 .selector.open {
    border-radius: 25px 25px 0 0;
    transition: border-radius 0s ease;
}
.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-black);
    border-right: 1px solid var(--color-black);
    height: 15px;
    width: 15px;
}
.wpcf7 .selector .selector-wrap {
    position: absolute;
    top: 100%;
    left: -1px;
    background: white;
    z-index: 0;
    border: 1px solid var(--color-border);
    border-top: 0;
    border-bottom: 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 */
    border-radius: 0 0 25px 25px;
}
.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-border);
    border-bottom: 0;
}
.wpcf7 .selector .wpcf7-form-control-wrap .wpcf7-form-control .wpcf7-list-item-label:hover {
    background: var(--color-border);
}
.wpcf7 .selector .wpcf7-form-control-wrap .wpcf7-form-control .last .wpcf7-list-item-label {
    border-bottom: 1px solid var(--color-border);
}
.wpcf7 .selector .wpcf7-form-control-wrap .wpcf7-form-control input:checked + .wpcf7-list-item-label {
    font-weight: 700;
    background-color: var(--color-prim);
    color: white;
}
.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;
    flex-wrap: wrap;
	width: 100%;
	max-width: 100%;
    gap: 15px 0;
}
.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 {
    display: inline;
    align-self: center;
    font-size: 16px;
    width: 100%;
    padding-left: 25px;
}
.wpcf7 .form-white .attach-file .name-file {
    color: white;
}
.wpcf7 .attach-file .delete-file-wrap {
    display: inline-block;
    align-self: center;
    position: relative;
    height: 15px;
    width: 15px;
    z-index: -1;
    opacity: 0;
    visibility: hidden;

    position: absolute;
    top: 67px;
    left: 0;
    margin: 0;
    padding: 0;
}
.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-border);
}
.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-border);
    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-border);
}
.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-black);
    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 / Archive grid
--------------------------------------------------------------*/
.archive-grid-img > .elementor-widget-image {
    padding-top: 56.25%;
    position: relative;
    width: 100%;
    border-radius: 10px;
    overflow: hidden;
}
.archive-grid-img > .elementor-widget-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.archive-grid .archive-grid-content {
    flex-grow: 1;
}
.archive-grid .archive-grid-content .elementor-widget-button {
    margin-top: auto;
}



/*--------------------------------------------------------------
## @section 1.0 / Paginas / Homepage
--------------------------------------------------------------*/
/*--------------------
## @section 1.0 / Paginas / Homepage / Intro
--------------------*/
.intro .intro-img {
    position: absolute;
    top: 0;
    left: 50%;
    height: 100%;
}
.intro .intro-img .intro-img-wrap {
    height: 100%;
}
.intro .intro-img .intro-img-wrap > .elementor-widget-image {
    height: 100%;
}
.intro .intro-img .intro-img-wrap > .elementor-widget-image img {
    position: relative;
}
/* .intro .intro-img .intro-img-wrap .img-intro-back {
    position: absolute;
    width: 100%;
    height: 100%;
    background: yellow;
    top: 50%;
    left: -20px;
    transform: translateY(-50%);
    overflow: hidden;
}
.back-shape-wrap {
    width: 100%;
    padding-top: 100%;
    position: relative;
}
.back-shape {
    position: absolute;
    width: 100%;
    height: 100%;
    background: green;
    top: 50%;
    left: -20px;
    transform: translateY(-50%);
    overflow: hidden;
} */
.intro .intro-persona.elementor-element {
    pointer-events: none;
}
.intro .intro-persona.elementor-element,
.intro .intro-persona.elementor-element div {
    height: 100%;
}
.intro .intro-persona.elementor-element .elementor-widget-image .elementor-widget-container {
    display: flex;
}
.intro .intro-persona.elementor-element .elementor-widget-image .elementor-widget-container img {
    margin-top: auto;
}
.elementor-element.intro-icon-back > .elementor-widget-container:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: calc(100% + 10px);
    height: calc(100% + 10px);
    background: linear-gradient(180deg, var(--color-green), var(--color-red));
    transform: translate(-50%, -50%);
    border-radius: 50px;
    clip-path: polygon(0 0, calc(50% - 3px) 0, calc(50% - 3px) 100%, 0% 100%);
}
.elementor-element.intro-icon-back > .elementor-widget-container .elementor-icon-wrapper {
    display: flex;
    position: relative;
}
.intro-content .intro-content-wrap .e-con-inner {
    margin-left: 0;
}
.intro-separador svg {
    display: flex;
    width: 100%;
}
.intro-separador svg rect {
    width: 100%
}
@media (min-width: 1025px) {
    .intro-content .intro-content-wrap {
        max-width: calc(var(--max-width) / 2 - 20px);
        margin-left: auto;
        margin-right: 0;
    }
    .intro-contact.intro .intro-img {
        position: sticky;
        top: 127px;
        left: 0;
        height: calc(100vh - 127px);
        max-height: calc(100vh - 127px);
        overflow: hidden;
    }
}
@media (min-width: 768px) {
    .intro-contact.intro .intro-img {
        position: sticky;
        top: 127px;
        left: 0;
        height: calc(100vh - 127px);
        max-height: calc(100vh - 127px);
        overflow: hidden;
    }
}
@media (max-width: 767px) {
    .intro .intro-img {
        top: auto;
        bottom: 0;
        left: 0;
        min-height: 0;
        height: 70vw;
    }
    .intro .intro-persona.elementor-element {
        /* width: 40vw; */
    }
    .intro .intro-persona.elementor-element div {
        /* height: 60vw; */
        min-height: 0;
    }
}


/*--------------------
## @section 1.0 / Paginas / Homepage / Soluciones
--------------------*/
.home-soluciones-grid .img-wrap {
    padding-top: 56.25%;
}
.home-soluciones-grid .img-wrap > .elementor-widget-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.home-soluciones-grid .img-wrap > .elementor-widget-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}


/*--------------------
## @section 1.0 / Paginas / Homepage / Productos
--------------------*/
@media (min-width: 768px) {
    .home-clientes-single .e-con-inner {
        margin-left: 0;
        margin-right: auto;
    }
    .home-clientes-single.home-clientes-single-particulares .e-con-inner {
        margin-left: auto;
        margin-right: 0;
    }
}
@media (max-width: 767px) {
    .home-clientes-section-wrap .home-clientes-title.elementor-element .elementor-heading-title {
        color: var(--color-black);
    }
    .home-clientes-section.elementor-element .home-clientes-section-wrap.elementor-element .home-clientes-single.elementor-element {
        position: relative;
        top: 0;
        left: 0;
        transform: none;
    }
} 

/*--------------------
## @section 1.0 / Paginas / Homepage / Productos
--------------------*/
.home-productos-content-center .wrap {
    position: sticky;
    top: calc((100vh - 110px) / 2);
}
.home-productos .home-productos-grid.elementor-element {
    margin-top: 50px;
    gap: 90px 20px;
}
.home-productos-grid .home-producto {
    padding-left: 0px;
}
.home-productos-grid .home-producto:before {
    content: "";
    position: absolute;
    top: 0%;
    left: 10px;
    width: 130px;
    height: 130px;
    border-radius: 100px;
    background: linear-gradient(to top, var(--color-green) 20%, var(--color-red));
    transform: translateY(-50%);
}
.home-productos-grid .home-producto > .elementor-element:not(.elementor-widget-image) {
    padding-top: 90px;
    padding-left: 20px;
    background: var(--color-back-green);
    border: 3px solid var(--color-green);
    border-radius: 10px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, .2);
    justify-content: center;
    min-height: 100%;
}
.home-productos-grid .home-producto .elementor-widget-image {
    position: absolute;
    top: 0%;
    left: 10px;
    border-radius: 80px;
    overflow: hidden;
    width: 130px;
    height: 130px;
    padding: 5px;
    transform: translate(0%, -50%);
    z-index: 3;
}
.home-productos-grid .home-producto .elementor-widget-image .elementor-widget-container {
    display: block;
    position: relative;
    width: 120px;
    height: 120px;
}
.home-productos-grid .home-producto .elementor-widget-image img {
    width: 100%;
    height: 100%;
    border-radius: 80px;
    object-fit: cover;
}
.home-productos-grid .home-producto a img {
    transition: all .6s ease;
}
.home-productos-grid .home-producto a:hover img {
    /* transform: scale(1.1); */
}
.home-productos-grid .home-producto-shape {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}
.home-productos-grid .home-producto-shape .border-shape {
    display: flex;
}
/* .home-productos-grid .home-producto-shape .border-shape {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 100px;
    border-image: linear-gradient(180deg, var(--color-green), var(--color-red)) 2;
    border-radius: 285px;
    border-width: 14px;
    border-style: solid;
    padding: 105px;
} */
@media (min-width: 550px) and (max-width: 767px) { 
    .home-productos .home-productos-grid.elementor-element {
        grid-template-columns: repeat(2, 1fr);
        grid-auto-rows: 1fr;
    }
}
@media (min-width: 1024px) {
    .home-productos-grid .home-producto {
        padding-left: 65px;
    }
    .home-productos-grid .home-producto:before {
        top: 50%;
        left: 0;
    }
    .home-productos-grid .home-producto .elementor-widget-image {
        top: 50%;
        left: 0;
        width: 130px;
        height: 130px;
    }
    .home-productos-grid .home-producto > .elementor-element:not(.elementor-widget-image) {
        padding-left: 75px;
        padding-bottom: 0;
        padding-top: 0;
        border-left: 0;
        border-radius: 0 10px 10px 0;
        min-height: 130px;
    }
}
@media (min-width: 1024px) and (max-width: 1200px) {
    .home-productos .home-productos-grid.elementor-element {
        width: 40%;
    }
    .home-productos .home-productos-content-center.elementor-element {
        width: 32%;
    }
}



/*--------------------
## @section 1.0 / Paginas / Homepage / servicios
--------------------*/
.home-servicios .home-servicios-img-wrap .elementor-widget-image {
    height: 100%;
}
.home-servicios .home-servicios-img-wrap img {
    height: 100%;
    object-fit: contain;
}
@media (min-width: 768px) and (max-width: 1023px) {
    .elementor-element.home-grid-servicios > .elementor-element.e-child {
        padding-left: 0;
        padding-right: 0;
    }
    .elementor-element.home-grid-servicios > .elementor-element.e-child > .elementor-element.e-child {
        padding-top: 50px;
        padding-left: 20px;
    }
    .elementor-element.home-grid-servicios > .elementor-element.e-child > .elementor-element.e-child .intro-icon-back {
        top: 0;
        left: 30px;
    }
    .elementor-element.home-grid-servicios > .elementor-element.e-child > .elementor-element.e-child .intro-icon-back > .elementor-widget-container {
        transform: translate(0, -50%);
    }
    .elementor-element.intro-icon-back > .elementor-widget-container:before {
        transform: translate(-50%, -50%) rotate(90deg);
    }
}
@media (max-width: 500px) {
    .elementor-element.home-grid-servicios > .elementor-element.e-child {
        padding-left: 0;
        padding-right: 0;
    }
    .elementor-element.home-grid-servicios > .elementor-element.e-child > .elementor-element.e-child {
        padding-top: 50px;
        padding-left: 20px;
    }
    .elementor-element.home-grid-servicios > .elementor-element.e-child > .elementor-element.e-child .intro-icon-back {
        top: 0;
        left: 30px;
    }
    .elementor-element.home-grid-servicios > .elementor-element.e-child > .elementor-element.e-child .intro-icon-back > .elementor-widget-container {
        transform: translate(0, -50%);
    }
    .elementor-element.intro-icon-back > .elementor-widget-container:before {
        transform: translate(-50%, -50%) rotate(90deg);
    }
}

/*--------------------
## @section 1.0 / Paginas / Homepage / Testimonios
--------------------*/
.home-testimonios .premium-testimonial-container .premium-testimonial-heading {
    order: 0;
}
.home-testimonios .premium-testimonial-container .premium-testimonial-author-info {
    order: 1;
    width: 100%;
    margin-bottom: 10px;
}
.home-testimonios .premium-testimonial-container .premium-testimonial-author-info .premium-testimonial-person-name,
.home-testimonios .premium-testimonial-container .premium-testimonial-author-info .premium-testimonial-job {
    width: 100%;
    text-align: left;
    margin-bottom: 0;
}
.home-testimonios .premium-testimonial-container .premium-testimonial-text-wrapper {
    order: 2;
}
.home-testimonios a.carousel-arrow.carousel-prev {
    background-image: url(./assets/img/btn-left.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}
.home-testimonios a.carousel-arrow.carousel-next {
    background-image:url(./assets/img/btn-right.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}


/*--------------------
## @section 1.0 / Paginas / Homepage / Blog
--------------------*/
.home-blog-grid.elementor-element .ekit-wid-con .row {
    gap: 15px;
    margin: 0;
}
.home-blog-grid.elementor-element .ekit-wid-con .row:before,
.home-blog-grid.elementor-element .ekit-wid-con .row:After {
    content: none;
}
.home-blog-grid.elementor-element .ekit-wid-con .row > div {
    padding: 0;
}
.home-blog-grid.elementor-element .ekit-wid-con .elementskit-post-card {
    margin: 0;
    height: 100%;
    display: flex;
    flex-direction: column;
}
.home-blog-grid.elementor-element .ekit-wid-con .elementskit-post-card .elementskit-post-body {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    margin-top: 20px;
}
.home-blog-grid.elementor-element .ekit-wid-con .elementskit-post-card .elementskit-post-body .btn-wraper {
    margin-top: auto;
}
@media (min-width: 768px) {
    .home-blog-grid.elementor-element .ekit-wid-con .row > div {
        padding: 0;
        flex: 0 0 calc(50% - (15px / 2));
    }
}
@media (min-width: 1024px) {
    .home-blog-grid.elementor-element .ekit-wid-con .row > div {
        padding: 0;
        flex: 0 0 calc(33.33% - (15px * 2 / 3));
    }
}
.home-blog-head .slider-arrows-wrap .slider-arrows {
    display: flex;
    align-items: center;
    gap: 30px;
}
.home-blog-head .slider-arrows-wrap .slider-arrow {
    position: relative;
    width: 40px;
    display: flex;
    align-items: center;
    transition: all .4s ease;
    cursor: pointer;
}
.home-blog-head .slider-arrows-wrap .slider-arrow.invisible {
    pointer-events: none;
    opacity: .2;
}
.home-blog-head .slider-arrows-wrap .slider-arrow svg {
    width: 100%;
}
.home-blog-head .slider-arrows-wrap .slider-arrow svg path {
    fill: var(--color-prim);
}
.home-blog-grid .ekit-wid-con .elementskit-post-image-card:hover .elementskit-entry-thumb > img {
    transform: scale(1.1);
}
.home-blog-row .home-blog-grid .post-items {
    /*max-width: calc(100% - ((100% - var(--max-width)) / 2));*/
    /*max-width: calc(100% - var(--max-width) / 2 );*/
}
.home-blog-row .home-blog-grid .post-items {
    overflow: scroll;
    flex-wrap: nowrap;
    margin-left: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    padding-bottom: 40px;
    padding-left: 10px;
    padding-right: 10px;
}
.home-blog-row .home-blog-grid .post-items > div {
    padding: 0 15px;
    /* scroll-snap-stop: always;
    scroll-snap-align: start; */
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: calc(100% - 60px);
    max-width: none;
}
.home-blog-row .home-blog-grid .post-items > div::before {
    content: "";
    display: flex;
    background: green;
    width: 20px;
    height: 0px;
    margin-left: -20px;
    scroll-snap-stop: always;
    scroll-snap-align: start;
}
.home-blog-row .home-blog-grid .post-items > div:nth-of-type(odd):before {
    background-color: blue;
}
.home-blog-row .home-blog-grid .post-items > div .elementskit-post-card::before {
    /* content: ""; */
    display: flex;
    width: 100px;
    height: 100px;
    position: relative;
    background: red;
    position: absolute;
}
.home-blog .home-blog-head .elementor-widget-button {
    margin-left: auto;
}
.home-blog-row .home-blog-grid .ekit-wid-con .elementskit-post-image-card,
.home-blog-row .home-blog-grid .ekit-wid-con .elementskit-post-card {
    display: flex;
    flex-direction: column;
    height: 100%;
}
.home-blog-row .home-blog-grid .ekit-wid-con .elementskit-post-image-card .elementskit-post-body,
.home-blog-row .home-blog-grid .ekit-wid-con .elementskit-post-card .elementskit-post-body {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}
.home-blog-row .home-blog-grid .ekit-wid-con .elementskit-post-image-card .elementskit-post-body .btn-wraper,
.home-blog-row .home-blog-grid .ekit-wid-con .elementskit-post-card .elementskit-post-body .btn-wraper {
    margin-top: auto;
}
.home-blog-row.elementor-element .home-blog-grid .post-items > div a.elementskit-entry-thumb {
    padding-top: 56.25%;
    position: relative;
    width: 100%;
}
.home-blog-row.elementor-element .home-blog-grid .post-items > div a.elementskit-entry-thumb img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.home-blog-row .home-blog-grid .ekit-wid-con .row::after {
    content: "";
    position: relative;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    flex-shrink: 0;
    flex-grow: 0;
    flex-basis: 65px;
}
.home-blog .home-blog-grid-v2 .post-items .elementskit-post-card {
    background: var(--color-back-green);
    border: 3px solid var(--color-green);
}
.home-blog .home-blog-grid-v2 .post-items .elementskit-post-card .post-meta-list {
    position: relative;
    margin-bottom: 25px;
}
.home-blog .home-blog-grid-v2 .post-items .elementskit-post-card .post-meta-list:before {
    content: "";
    position: absolute;
    top: -20px;
    left: -20px;
    width: calc(100% + 40px);
    height: calc(100% + 30px);
    background: var(--color-prim);
    border-radius: 17px 17px 0 0;
}
.home-blog .home-blog-grid-v2 .post-items .elementskit-post-card .post-meta-list span.meta-date {
    position: relative;
}
.home-blog .home-blog-grid-v2 .post-items .elementskit-post-card .entry-title {
    position: relative;
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.home-blog .home-blog-grid-v2 .post-items .elementskit-post-card .entry-title:After {
    content: "";
    position: absolute;
    top: auto;
    left: 0;
    bottom: 0px;
    width: 50px;
    height: 2px;
    background: var(--color-prim);
}
@media (min-width: 650px) {
    .home-blog-row .home-blog-grid .post-items > div {
        flex-basis: calc(50% - 40px);
    }
    .home-blog-row .home-blog-grid .ekit-wid-con .row::after {
        flex-basis: 85px;
    }
}
@media (min-width: 1025px) {
    .home-blog-row .home-blog-grid .post-items > div {
        flex-basis: calc(33.33% - 20px);
    }
    .home-blog-row .home-blog-grid .ekit-wid-con .row::after {
        flex-basis: 65px;
    }
}
/* @media (max-width: 1239px) {
    .home-blog-row .home-blog-grid .post-items > div {
        scroll-snap-stop: always;
        scroll-snap-align: start;
    }
} */
@media (min-width: 1240px) {
    .home-blog-row .home-blog-grid .ekit-wid-con .row::before {
        content: "";
        position: relative;
        flex-shrink: 0;
        flex-grow: 0;
        flex-basis: calc( (100% - var(--max-width)) / 2 - 30px);
        flex-basis: calc( (100% - var(--max-width)) / 2 - 15px);
    }
    .home-blog-row .home-blog-grid .ekit-wid-con .row::after {
        flex-basis: calc((100vw - var(--max-width)) / 2 - 2px);
    }
    .home-blog-row .home-blog-grid .post-items > div::before {
        width: 100vw;
        margin-left: calc(-1*((100vw - var(--max-width)) / 2) + 8px);
        max-width: calc((100vw - var(--max-width)) / 2 + 8px);
    }
    .home-blog-row .home-blog-grid .post-items > div {
        flex-basis: calc(33.33% - 20px);
        max-width: calc((var(--max-width) + 30px) / 3);
    }
}
@media (min-width: 1450px) {
    .home-blog-row .home-blog-grid .ekit-wid-con .row::before {
        /* flex-basis: calc( (100% - var(--max-width)) / 2 - 15px); */
    }
    .home-blog-row .home-blog-grid .ekit-wid-con .row::after {
        flex-basis: calc((100vw - var(--max-width)) / 2 - 16px);
        min-width: 53px;
    }
    .home-blog-row .home-blog-grid .post-items > div::before {
        width: 100vw;
        margin-left: calc(-1*((100vw - var(--max-width)) / 2) - 6px);
        max-width: calc((100vw - var(--max-width)) / 2 + 6px);
    }
}



/*--------------------
## @section 1.0 / Paginas / Homepage / Contact
--------------------*/
.home-contact .contact-content > .e-con-inner {
    margin-left: 0;
}

/*--------------------
## @section 1.0 / Paginas / Seguro
--------------------*/
.seguro-title-soluciones .elementor-heading-title {
    font-size: 22px;
    font-family: var(--font-text);
    font-weight: 400;
    line-height: 1.4;
}
.seguro-title-soluciones .elementor-heading-title big {
    display: block;
    margin-top: 10px;
    margin-bottom: 10px;
    font-family: var(--font-title);
    font-size: 30px;
    line-height: 1.2;
}
.seguro-title-soluciones .elementor-heading-title strong {
    padding-bottom: 2px;
    display: inline;
    position: relative;
    background: linear-gradient(to right, var(--color-prim), var(--color-prim));
    background-size: 100% 1px;
    background-position: left bottom;
    background-repeat: no-repeat;
    transition: background-size .4s;
}
.soluciones-logo-icon .elementor-icon {
    box-shadow: 0 3px 15px rgba(0, 0, 0, .1);
    border: 1px solid var(--color-prim);
}

.eael-data-table tbody tr td:nth-of-type(2),
.eael-data-table tbody tr td:nth-of-type(3) {
    word-break: keep-all;
    white-space: nowrap;
}

/*--------------------
## @section 1.0 / Paginas / About
--------------------*/
/* .about-text-section .elementor-element.col-img,
.about-text-section .elementor-element.col-img div {
    height: 100%;
}
.about-text-section .elementor-element.col-img .elementor-widget-image {
    max-height: 80%;
}
.about-text-section .elementor-element.col-img .elementor-widget-image .elementor-widget-container {
    width: 100%;
    height: 100%;
    position: relative;
}
.about-text-section .elementor-element.col-img .elementor-widget-image .elementor-widget-container img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
} */

/*--------------------
## @section 1.0 / Paginas / Archive blog
--------------------*/
.blog .custom-archive-blog-grid {
    max-width: var(--global-content-width);
    margin: 40px auto;
    padding: 20px;
}
.entry.loop-entry {
    height: 100%;
    border: 1px solid var(--color-prim);
    border-radius: 20px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.entry.loop-entry .entry-content-wrap {
    display: flex;
    flex-direction: column;
    height: 100%;
    gap: 30px;
    padding: 20px;
    min-height: 250px;
}
.entry.loop-entry .entry-header {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin: 0;
}
.entry.loop-entry .entry-header .entry-meta {
    order: -1;
    margin: 0;
}
.entry.loop-entry .entry-header .entry-meta time {
    font-weight: 700;
}
.entry.loop-entry .entry-header .entry-title {
    position: relative;
}
.entry.loop-entry .entry-summary {
    padding: 20px;
    margin: 0;
}
.entry.loop-entry .entry-summary p {
    margin: 0;
}
.entry.loop-entry .entry-footer {
    margin-top: auto;
}
.entry.loop-entry .entry-footer .more-link-wrap {
    margin: 0;
}
.entry.loop-entry .entry-footer .more-link-wrap .post-more-link {
    background-image: linear-gradient(180deg, var( --color-prim ) 0%, var( --color-sec ) 100%);
    padding: 15px 45px;
    border-radius: 50px;
    color: white;
    font-size: 16px;
    display: inline-block;
    line-height: 1;
}
.entry.loop-entry .entry-footer .more-link-wrap .post-more-link:hover {
    background-image: linear-gradient(180deg, var( --color-prim ) 0%, var( --color-prim ) 100%);
}
.entry.loop-entry .entry-footer .more-link-wrap .post-more-link .kadence-svg-iconset {
    display: none;
}
.pagination .nav-links {
    display: flex;
}
@media (min-width: 600px) {
    .entry.loop-entry {
        flex-direction: row-reverse;
    }
    .wp-site-blocks .entry .post-thumbnail {
        padding-bottom: 0 !important;
        height: 100%;
        width: 40%;
    }
    .entry.loop-entry .entry-content-wrap {
        width: 60%;
    }
}


/*--------------------
## @section 1.0 / Paginas / Sidebar
--------------------*/
.wp-block-group.sidebar-search {
    background: var(--color-back);
    border: 1px solid var(--color-prim);
    padding: 20px;
    border-radius: 20px;
}
.wp-block-group.sidebar-search .wp-block-search__label {
    font-weight: 700;
}
.wp-block-group.sidebar-search .wp-block-search__inside-wrapper {
    flex-wrap: wrap;
    gap: 10px;
}
.wp-block-group.sidebar-search .wp-block-search__inside-wrapper input {
    border-radius: 25px;
    padding: 10px 20px;
    border-color: var(--color-black);
}
.wp-block-group.sidebar-search .wp-block-search__inside-wrapper input:focus {
    border-color: var(--color-prim);
}
.wp-block-group.sidebar-search .wp-block-search__inside-wrapper button {
    background: linear-gradient(180deg, var(--color-prim) 0%, var(--color-sec) 100%);
    color: white;
    border-radius: 25px;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 700;
    margin: 0;
    padding: 8px 25px;
}
.wp-block-group.sidebar-search .wp-block-search__inside-wrapper button:hover {
    background: linear-gradient(180deg, var(--color-prim) 0%, var(--color-prim) 100%);
}
.wp-block-group.sidebar-categorias {
    background: var(--color-back);
    padding: 20px;
    border: 1px solid var(--color-prim);
    border-radius: 20px;
}
.wp-block-group.sidebar-categorias .wp-block-categories-list {
    margin-left: 20px;
    padding-left: 10px;
    margin-bottom: 0;
}


/*--------------------
## @section 1.0 / Paginas / Search no results
--------------------*/
.search-no-results .search-form input {
    border-radius: 50px;
    padding: 10px 50px 10px 20px;
    border-color: var(--color-black);
}
.search-no-results .search-form input:focus {
    border-color: var(--color-prim);
}

/*--------------------
## @section 1.0 / Paginas / Single blog post
--------------------*/
.single .content-area {
    margin-bottom: 0;
}
.single .post-thumbnail-inner img {
    border-radius: 20px;
}
.single .entry-header {
    display: flex;
    flex-direction: column;
}
.single .entry-header .entry-meta time {
    font-weight: 700;
    color: var(--color-prim);
}
.single .navigation.post-navigation {
    border-top: 1px solid var(--color-border);
    padding-top: 20px;
}

/*--------------------
## @section 1.0 / Paginas / Single blog post / addtoany share
--------------------*/
.addtoany_content {
    background: var(--color-back-grey);
    border-radius: 10px;
    margin-top: 40px;
    padding: 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}
.addtoany_content .addtoany_header {
    margin-bottom: 0;
    font-weight: 700;
    font-size: 25px;
}
@media (max-width: 450px) {
    .addtoany_content {
        flex-direction: column;
        justify-content: center;
    }
}

/*--------------------
## @section 1.0 / Paginas / Single blog post / Related posts
--------------------*/
.single .entry-related {
    border-top: 1px solid var(--color-prim);
}
.entry-related .entry.loop-entry .post-thumbnail {
    display: none;
}
.entry-related .entry.loop-entry .entry-content-wrap {
    width: 100%;
    background-color: var(--color-back);
}
.single .entry-related-carousel .entry-summary,
.single .entry-related-carousel .entry-footer,
.single .entry-related-carousel .entry-taxonomies {
    display: block;
}
.single .entry-related-carousel {
    padding-left: 50px;
    padding-right: 50px;
    padding-bottom: 30px;
}
.single .entry-related-carousel.splide .splide__arrow {
    height: 40px;
    width: 40px;
    border-radius: 50px;
    background: var(--color-prim);
    border: 1px solid var(--color-prim);
    opacity: 1;
    box-shadow: none;
    transition: all .4s ease;
}
.single .entry-related-carousel.splide .splide__arrow:hover {
    background: white;
}
.single .entry-related-carousel.splide .splide__arrow svg {
    transition: all .4s ease;
}
.single .entry-related-carousel.splide .splide__arrow:hover svg {
    fill: var(--color-prim);
}
.single .entry-related-carousel.splide .splide__arrow--prev {
    left: 0;
}
.single .entry-related-carousel.splide .splide__arrow--next {
    right: 0;
}
.single .entry-related-carousel .entry-list-item {
    padding-top: 20px;
    padding-bottom: 20px;
}
.single .entry-related .entry-related-title {
    padding-left: 50px;
    padding-right: 50px;
    text-align: center;
}
@media (max-width: 450px) {
    .single .entry-related-inner-content {
        padding-left: 10px;
        padding-right: 10px;
    }
    .single .entry-related .entry-related-title {
        padding-left: 25px;
        padding-right: 25px;
    }
    .single .entry-related-carousel {
        padding-left: 25px;
        padding-right: 25px;
    }
}

/*--------------------
## @section 1.0 / Paginas / Quienes somos
--------------------*/
.about-timeline::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0%;
    transform: translateX(-50%);
    width: 1px;
    background: var(--color-prim); 
}
.about-timeline > .timeline-single {
    padding-left: 30px;
}
.about-timeline .timeline-year::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -30px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--color-prim);
    transform: translate(-50%, -50%);
}
.about-timeline .timeline-year::after {
    content: "";
    position: absolute;
    top: 50%;
    left: auto;
    right: 100%;
    width: 30px;
    height: 1px;
    background: var(--color-prim);
    transform: translateY(-50%);
}
.about-timeline .timeline-year .elementor-heading-title {
    display: inline-block;
    padding: 6px 18px;
    border-radius: 50px;
    background: var(--color-prim);
    color: white;
    font-weight: 700;
}
@media (max-width: 767px) {
    .about-timeline > .timeline-single {
        margin-bottom: 0;
        padding: 10px 0px 10px 30px;
    }
}
@media (min-width: 768px) {
    .about-timeline::before {
        left: 50%;
    }
    .about-timeline > .timeline-single:nth-child(odd) {
        width: 50%;
        margin-left: 50%;
        padding-left: 80px;
    }
    .about-timeline > .timeline-single:nth-child(even) {
        width: 50%;
        margin-right: 50%;
        padding-right: 80px;
        text-align: right;
    }
    .about-timeline .timeline-year::before {
        left: -80px;
    }
    .about-timeline .timeline-year::after {
        width: 80px;
    }
    .about-timeline .timeline-single:nth-of-type(even) .timeline-year::before {
        left: calc(100% + 80px);
    }
    .about-timeline .timeline-single:nth-of-type(even) .timeline-year::after {
        left: 100%;
    }
}

/*--------------------
## @section 1.0 / Paginas / Grandes Siniestros
--------------------*/
.siniestros-single .elementor-widget-image-carousel .swiper-slide .swiper-slide-inner {
    width: 100%;
    padding-top: 60%;
}
.siniestros-single .elementor-widget-image-carousel .swiper-slide .swiper-slide-inner img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.siniestros-single .elementor-element .swiper-horizontal .swiper-pagination {
    bottom: -10px;
}
@media (min-width: 768px) {
    .siniestros-single .elementor-widget-image-carousel .swiper-slide .swiper-slide-inner {
        padding-top: 75%;
    }
}

/*--------------------
## @section 1.0 / Paginas / Proyectos
--------------------*/
@media (max-width: 767px) {
    .proyectos-single .proyectos-single-img .elementor-widget-image {
        padding-top: 56.25%;
        position: relative;
        width: 100%;
    }
    .proyectos-single .proyectos-single-img .elementor-widget-image img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

/*--------------------
## @section 1.0 / Paginas / Proyecto
--------------------*/
.intro-proyecto .intro-proyecto-datos .intro-proyecto-datos-wrap > .e-con-inner {
    margin-left: 0;
}
.galeria-proyecto .gallery-item a {
    padding-top: 75%;
    position: relative;
    width: 100%;
}
.galeria-proyecto .gallery-item img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/*--------------------
## @section 1.0 / Paginas / Trabaja con nosotros
--------------------*/
.trabaja-section .trabaja-section-block:before {
    content: "";
    position: absolute;
    top: 30px;
    left: -3px;
    width: calc(50% - 30px);
    height: calc(100% - 70px);
    border-left: 1px solid var(--color-prim);
    border-bottom: 1px solid var(--color-prim);
    border-bottom-left-radius: 30px;
}
.trabaja-section .trabaja-section-block:after {
    content: "";
    position: absolute;
    top: calc(100% - 41px);
    left: auto;
    right: calc(50% - 1px);
    width: 100px;
    height: 60px;
    border-right: 1px solid var(--color-prim);
    border-top: 1px solid var(--color-prim);
    border-top-right-radius: 30px;
}
body .trabaja-section.elementor-element .elementor-element.trabaja-title-section-floating .elementor-heading-title {
    margin-bottom: 0;
}
.trabaja-section .title-bullet-left .elementor-heading-title:Before {
    content: "";
    position: absolute;
    top: 16px;
    left: auto;
    right: calc(100% - 0px);
    width: 22px;
    height: 22px;
    background: var(--color-prim);
    border-radius: 50px;
    transform: translate(-50%, -50%);
}
.trabaja-section .title-line-left .elementor-heading-title:before {
    content: "";
    position: absolute;
    top: 16px;
    left: auto;
    right: calc(100% - 10px);
    width: 33px;
    height: 1px;
    background: var(--color-prim);
    transform: translate(0%, -50%);
}
.trabaja-videoperitajes-grid-img.img-cover-100 .elementor-widget-image img {
    object-position: 74% 50%;
}
.trabaja-title-section-floating.elementor-element {
    position: absolute;
    top: 100px;
    left: 2px;
    width: 0px;
    transform: rotate(-90deg) translate(-100%, -100%);
}
.trabaja-title-section-floating.elementor-element > .elementor-widget-heading {
    background: var(--color-prim);
    padding: 5px 10px;
    width: max-content;
    transform: translateX(-100%);
    max-width: none !important;
    border-radius: 50px;
}
.section-title-number:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 33px;
    height: 1px;
    background: var(--color-prim);
    transform: translate(-100%, -50%);
}
.tecno-block .tecno-block > .e-con-inner,
.tecno-block .text-wrap > .e-con-inner {
    margin-left: 0;
}
.tecno-block.tecno-block-right .text-wrap > .e-con-inner {
    margin-left: 0;
}
@media (min-width: 768px) {
    .trabaja-section .trabaja-section-block:before {
        left: 0px;
    }
    .trabaja-section .title-bullet-left .elementor-heading-title:Before {
        right: calc(100% - 3px);
    }
    .trabaja-section .title-line-left .elementor-heading-title:before {
        right: calc(100% - 35px);
        width: 55px;
    }
    .trabaja-videoperitajes-grid-img.elementor-element {
        position: sticky;
        top: 135px;
        height: 100%;
    }
    .trabaja-title-section-floating.elementor-element {
        left: 5px;
    }
    .section-title-number:before {
        width: 35px;
    }
}
@media (max-width: 767px) {
    /*
    body .trabaja-section .elementor-element.trabaja-title-section-floating {
        position: relative;
        transform: none;
        left: 0;
        top: 0;
        } 
    */
}

/*------------------------------
## @section 1.0 / Paginas / Legal
------------------------------*/
.legal-content-page.elementor-element h3 {
    color: var(--color-prim);
}

/*------------------------------
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%;
    }
}


/*------------------------------
Breadcrumbs
------------------------------*/
.yoast-breadcrumbs span,
.yoast-breadcrumbs a,
.kadence-breadcrumbs span,
.kadence-breadcrumbs a {
    color: white;
    font-size: 15px;
}
.yoast-breadcrumbs a,
.kadence-breadcrumbs a {
    text-decoration: underline;
}
.yoast-breadcrumbs a:hover,
.kadence-breadcrumbs a:hover {
    color: var(--color-prim);
}
.single-post .kadence-breadcrumbs span, .single-post .kadence-breadcrumbs span a {
    color: inherit;
}